import { createRequire as _cr } from 'module';const require = _cr(import.meta.url); const __filename = import.meta.filename; const __dirname = import.meta.dirname;var _ew=process.emitWarning;process.emitWarning=function(w,...a){if(String(w).includes('SQLite')&&(a[0]==='ExperimentalWarning'||(a[0]&&a[0].type==='ExperimentalWarning')))return;return _ew.call(process,w,...a)};
var __create = Object.create;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getProtoOf = Object.getPrototypeOf;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require : typeof Proxy !== "undefined" ? new Proxy(x, {
  get: (a2, b) => (typeof require !== "undefined" ? require : a2)[b]
}) : x)(function(x) {
  if (typeof require !== "undefined") return require.apply(this, arguments);
  throw Error('Dynamic require of "' + x + '" is not supported');
});
var __esm = (fn, res) => function __init() {
  return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
};
var __commonJS = (cb, mod) => function __require3() {
  return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
};
var __export = (target2, all) => {
  for (var name in all)
    __defProp(target2, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from5, except, desc) => {
  if (from5 && typeof from5 === "object" || typeof from5 === "function") {
    for (let key of __getOwnPropNames(from5))
      if (!__hasOwnProp.call(to, key) && key !== except)
        __defProp(to, key, { get: () => from5[key], enumerable: !(desc = __getOwnPropDesc(from5, key)) || desc.enumerable });
  }
  return to;
};
var __toESM = (mod, isNodeMode, target2) => (target2 = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
  // If the importer is in node compatibility mode or this is not an ESM
  // file that has been converted to a CommonJS file using a Babel-
  // compatible transform (i.e. "__esModule" has not been set), then set
  // "default" to the CommonJS "module.exports" for node compatibility.
  isNodeMode || !mod || !mod.__esModule ? __defProp(target2, "default", { value: mod, enumerable: true }) : target2,
  mod
));
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);

// ../core/constants/lib/index.js
var WANTED_LOCKFILE, LOCKFILE_MAJOR_VERSION, LOCKFILE_VERSION, MANIFEST_BASE_NAMES, ENGINE_NAME, LAYOUT_VERSION, STORE_VERSION, GLOBAL_LAYOUT_VERSION, GLOBAL_CONFIG_YAML_FILENAME, WORKSPACE_MANIFEST_FILENAME, ABBREVIATED_META_DIR, FULL_META_DIR, FULL_FILTERED_META_DIR;
var init_lib = __esm({
  "../core/constants/lib/index.js"() {
    "use strict";
    WANTED_LOCKFILE = "pnpm-lock.yaml";
    LOCKFILE_MAJOR_VERSION = "9";
    LOCKFILE_VERSION = `${LOCKFILE_MAJOR_VERSION}.0`;
    MANIFEST_BASE_NAMES = ["package.json", "package.json5", "package.yaml"];
    ENGINE_NAME = `${process.platform};${process.arch};node${process.version.split(".")[0].substring(1)}`;
    LAYOUT_VERSION = 5;
    STORE_VERSION = "v11";
    GLOBAL_LAYOUT_VERSION = "v11";
    GLOBAL_CONFIG_YAML_FILENAME = "config.yaml";
    WORKSPACE_MANIFEST_FILENAME = "pnpm-workspace.yaml";
    ABBREVIATED_META_DIR = "v11/metadata";
    FULL_META_DIR = "v11/metadata-full";
    FULL_FILTERED_META_DIR = "v11/metadata-full-filtered";
  }
});

// ../core/error/lib/index.js
function hideAuthInformation(authHeaderValue) {
  const [authType, token] = authHeaderValue.split(" ");
  if (token == null)
    return "[hidden]";
  if (token.length < 20) {
    return `${authType} [hidden]`;
  }
  return `${authType} ${token.substring(0, 4)}[hidden]`;
}
var PnpmError, FetchError, LockfileMissingDependencyError;
var init_lib2 = __esm({
  "../core/error/lib/index.js"() {
    "use strict";
    init_lib();
    PnpmError = class extends Error {
      code;
      hint;
      attempts;
      prefix;
      pkgsStack;
      constructor(code, message, opts2) {
        super(message, { cause: opts2?.cause });
        this.code = code.startsWith("ERR_PNPM_") ? code : `ERR_PNPM_${code}`;
        this.hint = opts2?.hint;
        this.attempts = opts2?.attempts;
      }
    };
    FetchError = class extends PnpmError {
      response;
      request;
      constructor(request, response, hint) {
        const _request = {
          url: request.url
        };
        if (request.authHeaderValue) {
          _request.authHeaderValue = hideAuthInformation(request.authHeaderValue);
        }
        const message = `GET ${request.url}: ${response.statusText} - ${response.status}`;
        if (response.status === 401 || response.status === 403 || response.status === 404) {
          hint = hint ? `${hint}

` : "";
          if (_request.authHeaderValue) {
            hint += `An authorization header was used: ${_request.authHeaderValue}`;
          } else {
            hint += "No authorization header was set for the request.";
          }
        }
        super(`FETCH_${response.status}`, message, { hint });
        this.request = _request;
        this.response = response;
      }
    };
    LockfileMissingDependencyError = class extends PnpmError {
      constructor(depPath) {
        const message = `Broken lockfile: no entry for '${depPath}' in ${WANTED_LOCKFILE}`;
        super("LOCKFILE_MISSING_DEPENDENCY", message, {
          hint: "This issue is probably caused by a badly resolved merge conflict.\nTo fix the lockfile, run 'pnpm install --no-frozen-lockfile'."
        });
      }
    };
  }
});

// ../core/logger/lib/LogBase.js
var init_LogBase = __esm({
  "../core/logger/lib/LogBase.js"() {
    "use strict";
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fast-safe-stringify/2.1.1/71177aa317bf9c10d6ba54feb1e03d154d670845bac275960b4cc587a01d5783/node_modules/fast-safe-stringify/index.js
var require_fast_safe_stringify = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fast-safe-stringify/2.1.1/71177aa317bf9c10d6ba54feb1e03d154d670845bac275960b4cc587a01d5783/node_modules/fast-safe-stringify/index.js"(exports2, module2) {
    module2.exports = stringify;
    stringify.default = stringify;
    stringify.stable = deterministicStringify;
    stringify.stableStringify = deterministicStringify;
    var LIMIT_REPLACE_NODE = "[...]";
    var CIRCULAR_REPLACE_NODE = "[Circular]";
    var arr = [];
    var replacerStack = [];
    function defaultOptions4() {
      return {
        depthLimit: Number.MAX_SAFE_INTEGER,
        edgesLimit: Number.MAX_SAFE_INTEGER
      };
    }
    function stringify(obj, replacer2, spacer, options) {
      if (typeof options === "undefined") {
        options = defaultOptions4();
      }
      decirc(obj, "", 0, [], void 0, 0, options);
      var res;
      try {
        if (replacerStack.length === 0) {
          res = JSON.stringify(obj, replacer2, spacer);
        } else {
          res = JSON.stringify(obj, replaceGetterValues(replacer2), spacer);
        }
      } catch (_) {
        return JSON.stringify("[unable to serialize, circular reference is too complex to analyze]");
      } finally {
        while (arr.length !== 0) {
          var part = arr.pop();
          if (part.length === 4) {
            Object.defineProperty(part[0], part[1], part[3]);
          } else {
            part[0][part[1]] = part[2];
          }
        }
      }
      return res;
    }
    function setReplace(replace, val, k2, parent) {
      var propertyDescriptor = Object.getOwnPropertyDescriptor(parent, k2);
      if (propertyDescriptor.get !== void 0) {
        if (propertyDescriptor.configurable) {
          Object.defineProperty(parent, k2, { value: replace });
          arr.push([parent, k2, val, propertyDescriptor]);
        } else {
          replacerStack.push([val, k2, replace]);
        }
      } else {
        parent[k2] = replace;
        arr.push([parent, k2, val]);
      }
    }
    function decirc(val, k2, edgeIndex, stack, parent, depth, options) {
      depth += 1;
      var i2;
      if (typeof val === "object" && val !== null) {
        for (i2 = 0; i2 < stack.length; i2++) {
          if (stack[i2] === val) {
            setReplace(CIRCULAR_REPLACE_NODE, val, k2, parent);
            return;
          }
        }
        if (typeof options.depthLimit !== "undefined" && depth > options.depthLimit) {
          setReplace(LIMIT_REPLACE_NODE, val, k2, parent);
          return;
        }
        if (typeof options.edgesLimit !== "undefined" && edgeIndex + 1 > options.edgesLimit) {
          setReplace(LIMIT_REPLACE_NODE, val, k2, parent);
          return;
        }
        stack.push(val);
        if (Array.isArray(val)) {
          for (i2 = 0; i2 < val.length; i2++) {
            decirc(val[i2], i2, i2, stack, val, depth, options);
          }
        } else {
          var keys4 = Object.keys(val);
          for (i2 = 0; i2 < keys4.length; i2++) {
            var key = keys4[i2];
            decirc(val[key], key, i2, stack, val, depth, options);
          }
        }
        stack.pop();
      }
    }
    function compareFunction(a2, b) {
      if (a2 < b) {
        return -1;
      }
      if (a2 > b) {
        return 1;
      }
      return 0;
    }
    function deterministicStringify(obj, replacer2, spacer, options) {
      if (typeof options === "undefined") {
        options = defaultOptions4();
      }
      var tmp = deterministicDecirc(obj, "", 0, [], void 0, 0, options) || obj;
      var res;
      try {
        if (replacerStack.length === 0) {
          res = JSON.stringify(tmp, replacer2, spacer);
        } else {
          res = JSON.stringify(tmp, replaceGetterValues(replacer2), spacer);
        }
      } catch (_) {
        return JSON.stringify("[unable to serialize, circular reference is too complex to analyze]");
      } finally {
        while (arr.length !== 0) {
          var part = arr.pop();
          if (part.length === 4) {
            Object.defineProperty(part[0], part[1], part[3]);
          } else {
            part[0][part[1]] = part[2];
          }
        }
      }
      return res;
    }
    function deterministicDecirc(val, k2, edgeIndex, stack, parent, depth, options) {
      depth += 1;
      var i2;
      if (typeof val === "object" && val !== null) {
        for (i2 = 0; i2 < stack.length; i2++) {
          if (stack[i2] === val) {
            setReplace(CIRCULAR_REPLACE_NODE, val, k2, parent);
            return;
          }
        }
        try {
          if (typeof val.toJSON === "function") {
            return;
          }
        } catch (_) {
          return;
        }
        if (typeof options.depthLimit !== "undefined" && depth > options.depthLimit) {
          setReplace(LIMIT_REPLACE_NODE, val, k2, parent);
          return;
        }
        if (typeof options.edgesLimit !== "undefined" && edgeIndex + 1 > options.edgesLimit) {
          setReplace(LIMIT_REPLACE_NODE, val, k2, parent);
          return;
        }
        stack.push(val);
        if (Array.isArray(val)) {
          for (i2 = 0; i2 < val.length; i2++) {
            deterministicDecirc(val[i2], i2, i2, stack, val, depth, options);
          }
        } else {
          var tmp = {};
          var keys4 = Object.keys(val).sort(compareFunction);
          for (i2 = 0; i2 < keys4.length; i2++) {
            var key = keys4[i2];
            deterministicDecirc(val[key], key, i2, stack, val, depth, options);
            tmp[key] = val[key];
          }
          if (typeof parent !== "undefined") {
            arr.push([parent, k2, val]);
            parent[k2] = tmp;
          } else {
            return tmp;
          }
        }
        stack.pop();
      }
    }
    function replaceGetterValues(replacer2) {
      replacer2 = typeof replacer2 !== "undefined" ? replacer2 : function(k2, v) {
        return v;
      };
      return function(key, val) {
        if (replacerStack.length > 0) {
          for (var i2 = 0; i2 < replacerStack.length; i2++) {
            var part = replacerStack[i2];
            if (part[1] === key && part[0] === val) {
              val = part[2];
              replacerStack.splice(i2, 1);
              break;
            }
          }
        }
        return replacer2.call(this, key, val);
      };
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/individual/3.0.0/82ec8ef054bfaf915092db8496dd7cdf5d8a529ff6202ce432d93772b51b5045/node_modules/individual/index.js
var require_individual = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/individual/3.0.0/82ec8ef054bfaf915092db8496dd7cdf5d8a529ff6202ce432d93772b51b5045/node_modules/individual/index.js"(exports2, module2) {
    "use strict";
    var root = typeof window !== "undefined" ? window : typeof global !== "undefined" ? global : {};
    module2.exports = Individual;
    function Individual(key, value) {
      if (key in root) {
        return root[key];
      }
      root[key] = value;
      return value;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/bole/5.0.29/6922e0a3a11b46fb67db71b821bacb20a87db33d8d1fb079a84a148dc6373834/node_modules/bole/format.js
var require_format = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/bole/5.0.29/6922e0a3a11b46fb67db71b821bacb20a87db33d8d1fb079a84a148dc6373834/node_modules/bole/format.js"(exports2, module2) {
    var utilformat = __require("util").format;
    function format2(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16) {
      if (a16 !== void 0) {
        return utilformat(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16);
      }
      if (a15 !== void 0) {
        return utilformat(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15);
      }
      if (a14 !== void 0) {
        return utilformat(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14);
      }
      if (a13 !== void 0) {
        return utilformat(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13);
      }
      if (a12 !== void 0) {
        return utilformat(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12);
      }
      if (a11 !== void 0) {
        return utilformat(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11);
      }
      if (a10 !== void 0) {
        return utilformat(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);
      }
      if (a9 !== void 0) {
        return utilformat(a1, a2, a3, a4, a5, a6, a7, a8, a9);
      }
      if (a8 !== void 0) {
        return utilformat(a1, a2, a3, a4, a5, a6, a7, a8);
      }
      if (a7 !== void 0) {
        return utilformat(a1, a2, a3, a4, a5, a6, a7);
      }
      if (a6 !== void 0) {
        return utilformat(a1, a2, a3, a4, a5, a6);
      }
      if (a5 !== void 0) {
        return utilformat(a1, a2, a3, a4, a5);
      }
      if (a4 !== void 0) {
        return utilformat(a1, a2, a3, a4);
      }
      if (a3 !== void 0) {
        return utilformat(a1, a2, a3);
      }
      if (a2 !== void 0) {
        return utilformat(a1, a2);
      }
      return a1;
    }
    module2.exports = format2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/bole/5.0.29/6922e0a3a11b46fb67db71b821bacb20a87db33d8d1fb079a84a148dc6373834/node_modules/bole/bole.js
var require_bole = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/bole/5.0.29/6922e0a3a11b46fb67db71b821bacb20a87db33d8d1fb079a84a148dc6373834/node_modules/bole/bole.js"(exports2, module2) {
    "use strict";
    var _stringify = require_fast_safe_stringify();
    var individual = require_individual()("$$bole", { fastTime: false });
    var format2 = require_format();
    var levels = "debug info warn error".split(" ");
    var os15 = __require("os");
    var pid = process.pid;
    var hasObjMode = false;
    var scache = [];
    var hostname;
    try {
      hostname = os15.hostname();
    } catch (e) {
      hostname = os15.version().indexOf("Windows 7 ") === 0 ? "windows7" : "hostname-unknown";
    }
    var hostnameSt = _stringify(hostname);
    for (const level of levels) {
      scache[level] = ',"hostname":' + hostnameSt + ',"pid":' + pid + ',"level":"' + level;
      Number(scache[level]);
      if (!Array.isArray(individual[level])) {
        individual[level] = [];
      }
    }
    function stackToString(e) {
      let s = e.stack;
      let ce;
      if (typeof e.cause === "function" && (ce = e.cause())) {
        s += "\nCaused by: " + stackToString(ce);
      }
      return s;
    }
    function errorToOut(err, out) {
      out.err = {
        name: err.name,
        message: err.message,
        code: err.code,
        // perhaps
        stack: stackToString(err)
      };
    }
    function requestToOut(req2, out) {
      out.req = {
        method: req2.method,
        url: req2.url,
        headers: req2.headers,
        remoteAddress: req2.connection.remoteAddress,
        remotePort: req2.connection.remotePort
      };
    }
    function objectToOut(obj, out) {
      for (const k2 in obj) {
        if (Object.prototype.hasOwnProperty.call(obj, k2) && obj[k2] !== void 0) {
          out[k2] = obj[k2];
        }
      }
    }
    function objectMode(stream2) {
      return stream2._writableState && stream2._writableState.objectMode === true;
    }
    function stringify(level, name, message, obj) {
      let s = '{"time":' + (individual.fastTime ? Date.now() : '"' + (/* @__PURE__ */ new Date()).toISOString() + '"') + scache[level] + '","name":' + name + (message !== void 0 ? ',"message":' + _stringify(message) : "");
      for (const k2 in obj) {
        s += "," + _stringify(k2) + ":" + _stringify(obj[k2]);
      }
      s += "}";
      Number(s);
      return s;
    }
    function extend3(level, name, message, obj) {
      const newObj = {
        time: individual.fastTime ? Date.now() : (/* @__PURE__ */ new Date()).toISOString(),
        hostname,
        pid,
        level,
        name
      };
      if (message !== void 0) {
        obj.message = message;
      }
      for (const k2 in obj) {
        newObj[k2] = obj[k2];
      }
      return newObj;
    }
    function levelLogger(level, name) {
      const outputs = individual[level];
      const nameSt = _stringify(name);
      return function namedLevelLogger(inp, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16) {
        if (outputs.length === 0) {
          return;
        }
        const out = {};
        let objectOut;
        let i2 = 0;
        const l = outputs.length;
        let stringified;
        let message;
        if (typeof inp === "string" || inp == null) {
          if (!(message = format2(inp, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16))) {
            message = void 0;
          }
        } else {
          if (inp instanceof Error) {
            if (typeof a2 === "object") {
              objectToOut(a2, out);
              errorToOut(inp, out);
              if (!(message = format2(a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16))) {
                message = void 0;
              }
            } else {
              errorToOut(inp, out);
              if (!(message = format2(a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16))) {
                message = void 0;
              }
            }
          } else {
            if (!(message = format2(a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16))) {
              message = void 0;
            }
          }
          if (typeof inp === "boolean") {
            message = String(inp);
          } else if (typeof inp === "object" && !(inp instanceof Error)) {
            if (inp.method && inp.url && inp.headers && inp.socket) {
              requestToOut(inp, out);
            } else {
              objectToOut(inp, out);
            }
          }
        }
        if (l === 1 && !hasObjMode) {
          outputs[0].write(Buffer.from(stringify(level, nameSt, message, out) + "\n"));
          return;
        }
        for (; i2 < l; i2++) {
          if (objectMode(outputs[i2])) {
            if (objectOut === void 0) {
              objectOut = extend3(level, name, message, out);
            }
            outputs[i2].write(objectOut);
          } else {
            if (stringified === void 0) {
              stringified = Buffer.from(stringify(level, nameSt, message, out) + "\n");
            }
            outputs[i2].write(stringified);
          }
        }
      };
    }
    function bole4(name) {
      function boleLogger(subname) {
        return bole4(name + ":" + subname);
      }
      function makeLogger(p, level) {
        p[level] = levelLogger(level, name);
        return p;
      }
      return levels.reduce(makeLogger, boleLogger);
    }
    bole4.output = function output(opt) {
      let b = false;
      if (Array.isArray(opt)) {
        opt.forEach(bole4.output);
        return bole4;
      }
      if (typeof opt.level !== "string") {
        throw new TypeError('Must provide a "level" option');
      }
      for (const level of levels) {
        if (!b && level === opt.level) {
          b = true;
        }
        if (b) {
          if (opt.stream && objectMode(opt.stream)) {
            hasObjMode = true;
          }
          individual[level].push(opt.stream);
        }
      }
      return bole4;
    };
    bole4.reset = function reset2() {
      for (const level of levels) {
        individual[level].splice(0, individual[level].length);
      }
      individual.fastTime = false;
      return bole4;
    };
    bole4.setFastTime = function setFastTime(b) {
      if (!arguments.length) {
        individual.fastTime = true;
      } else {
        individual.fastTime = b;
      }
      return bole4;
    };
    module2.exports = bole4;
  }
});

// ../core/logger/lib/logger.js
function globalWarn(message) {
  globalLogger.warn(message);
}
function globalInfo(message) {
  globalLogger.info(message);
}
var import_bole, logger, globalLogger;
var init_logger = __esm({
  "../core/logger/lib/logger.js"() {
    "use strict";
    import_bole = __toESM(require_bole(), 1);
    import_bole.default.setFastTime();
    logger = (0, import_bole.default)("pnpm");
    globalLogger = (0, import_bole.default)("pnpm:global");
  }
});

// ../core/logger/lib/LogLevel.js
var init_LogLevel = __esm({
  "../core/logger/lib/LogLevel.js"() {
    "use strict";
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/split2/4.2.0/40e414c630ab7f443818aa50ee06a670a46fe60cf81f7f81a46733d76a4ce6ba/node_modules/split2/index.js
var require_split2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/split2/4.2.0/40e414c630ab7f443818aa50ee06a670a46fe60cf81f7f81a46733d76a4ce6ba/node_modules/split2/index.js"(exports2, module2) {
    "use strict";
    var { Transform: Transform2 } = __require("stream");
    var { StringDecoder: StringDecoder3 } = __require("string_decoder");
    var kLast = /* @__PURE__ */ Symbol("last");
    var kDecoder = /* @__PURE__ */ Symbol("decoder");
    function transform2(chunk, enc, cb) {
      let list2;
      if (this.overflow) {
        const buf = this[kDecoder].write(chunk);
        list2 = buf.split(this.matcher);
        if (list2.length === 1) return cb();
        list2.shift();
        this.overflow = false;
      } else {
        this[kLast] += this[kDecoder].write(chunk);
        list2 = this[kLast].split(this.matcher);
      }
      this[kLast] = list2.pop();
      for (let i2 = 0; i2 < list2.length; i2++) {
        try {
          push(this, this.mapper(list2[i2]));
        } catch (error) {
          return cb(error);
        }
      }
      this.overflow = this[kLast].length > this.maxLength;
      if (this.overflow && !this.skipOverflow) {
        cb(new Error("maximum buffer reached"));
        return;
      }
      cb();
    }
    function flush(cb) {
      this[kLast] += this[kDecoder].end();
      if (this[kLast]) {
        try {
          push(this, this.mapper(this[kLast]));
        } catch (error) {
          return cb(error);
        }
      }
      cb();
    }
    function push(self2, val) {
      if (val !== void 0) {
        self2.push(val);
      }
    }
    function noop5(incoming) {
      return incoming;
    }
    function split2(matcher, mapper, options) {
      matcher = matcher || /\r?\n/;
      mapper = mapper || noop5;
      options = options || {};
      switch (arguments.length) {
        case 1:
          if (typeof matcher === "function") {
            mapper = matcher;
            matcher = /\r?\n/;
          } else if (typeof matcher === "object" && !(matcher instanceof RegExp) && !matcher[Symbol.split]) {
            options = matcher;
            matcher = /\r?\n/;
          }
          break;
        case 2:
          if (typeof matcher === "function") {
            options = mapper;
            mapper = matcher;
            matcher = /\r?\n/;
          } else if (typeof mapper === "object") {
            options = mapper;
            mapper = noop5;
          }
      }
      options = Object.assign({}, options);
      options.autoDestroy = true;
      options.transform = transform2;
      options.flush = flush;
      options.readableObjectMode = true;
      const stream2 = new Transform2(options);
      stream2[kLast] = "";
      stream2[kDecoder] = new StringDecoder3("utf8");
      stream2.matcher = matcher;
      stream2.mapper = mapper;
      stream2.maxLength = options.maxLength;
      stream2.skipOverflow = options.skipOverflow || false;
      stream2.overflow = false;
      stream2._destroy = function(err, cb) {
        this._writableState.errorEmitted = false;
        cb(err);
      };
      return stream2;
    }
    module2.exports = split2;
  }
});

// ../core/logger/lib/ndjsonParse.js
function parse() {
  function parseRow(row) {
    try {
      if (row)
        return JSON.parse(row);
    } catch (_e) {
      if (opts.strict) {
        this.emit("error", new Error(`Could not parse row "${row.length > 50 ? `${row.slice(0, 50)}...` : row}"`));
      }
    }
  }
  return (0, import_split2.default)(parseRow, opts);
}
var import_split2, opts;
var init_ndjsonParse = __esm({
  "../core/logger/lib/ndjsonParse.js"() {
    "use strict";
    import_split2 = __toESM(require_split2(), 1);
    opts = { strict: true };
  }
});

// ../core/logger/lib/streamParser.js
function createStreamParser() {
  const sp = parse();
  import_bole2.default.output([
    {
      level: "debug",
      stream: sp
    }
  ]);
  return sp;
}
var import_bole2, streamParser;
var init_streamParser = __esm({
  "../core/logger/lib/streamParser.js"() {
    "use strict";
    import_bole2 = __toESM(require_bole(), 1);
    init_ndjsonParse();
    streamParser = createStreamParser();
  }
});

// ../core/logger/lib/writeToConsole.js
function writeToConsole() {
  import_bole3.default.output([
    {
      level: "debug",
      stream: process.stdout
    }
  ]);
}
var import_bole3;
var init_writeToConsole = __esm({
  "../core/logger/lib/writeToConsole.js"() {
    "use strict";
    import_bole3 = __toESM(require_bole(), 1);
  }
});

// ../core/logger/lib/index.js
var init_lib3 = __esm({
  "../core/logger/lib/index.js"() {
    "use strict";
    init_LogBase();
    init_logger();
    init_LogLevel();
    init_streamParser();
    init_writeToConsole();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@rushstack/worker-pool/0.7.7/793c6b1829f7d16b674d00122ccd824b16752579cede9dbf153d58d394c20499/node_modules/@rushstack/worker-pool/lib-commonjs/WorkerPool.js
var require_WorkerPool = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@rushstack/worker-pool/0.7.7/793c6b1829f7d16b674d00122ccd824b16752579cede9dbf153d58d394c20499/node_modules/@rushstack/worker-pool/lib-commonjs/WorkerPool.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.WorkerPool = exports2.WORKER_ID_SYMBOL = void 0;
    var node_worker_threads_1 = __require("node:worker_threads");
    exports2.WORKER_ID_SYMBOL = /* @__PURE__ */ Symbol("workerId");
    var WorkerPool2 = class {
      constructor(options) {
        const { id, maxWorkers, onWorkerDestroyed, prepareWorker, workerData, workerScriptPath, workerResourceLimits } = options;
        this.id = id;
        this.maxWorkers = maxWorkers;
        this._alive = [];
        this._error = void 0;
        this._finishing = false;
        this._idle = [];
        this._nextId = 0;
        this._onComplete = [];
        this._onWorkerDestroyed = onWorkerDestroyed;
        this._pending = [];
        this._prepare = prepareWorker;
        this._workerData = workerData;
        this._workerScript = workerScriptPath;
        this._workerResourceLimits = workerResourceLimits;
      }
      /**
       * Gets the count of active workers.
       */
      getActiveCount() {
        return this._alive.length - this._idle.length;
      }
      /**
       * Gets the count of idle workers.
       */
      getIdleCount() {
        return this._idle.length;
      }
      /**
       * Gets the count of live workers.
       */
      getLiveCount() {
        return this._alive.length;
      }
      /**
       * Tells the pool to shut down when all workers are done.
       * Returns a promise that will be fulfilled if all workers finish successfully, or reject with the first error.
       */
      async finishAsync() {
        this._finishing = true;
        if (this._error) {
          throw this._error;
        }
        if (!this._alive.length) {
          return;
        }
        for (const worker of this._idle.splice(0)) {
          worker.postMessage(false);
        }
        await new Promise((resolve3, reject3) => this._onComplete.push([resolve3, reject3]));
      }
      /**
       * Resets the pool and allows more work
       */
      reset() {
        this._finishing = false;
        this._error = void 0;
      }
      /**
       * Returns a worker to the pool. If the pool is finishing, deallocates the worker.
       * @param worker - The worker to free
       */
      checkinWorker(worker) {
        if (this._error) {
          worker.postMessage(false);
          return;
        }
        const next2 = this._pending.shift();
        if (next2) {
          next2[0](worker);
        } else if (this._finishing) {
          worker.postMessage(false);
        } else {
          this._idle.push(worker);
        }
      }
      /**
       * Checks out a currently available worker or waits for the next free worker.
       * @param allowCreate - If creating new workers is allowed (subject to maxSize)
       */
      async checkoutWorkerAsync(allowCreate) {
        if (this._error) {
          throw this._error;
        }
        let worker = this._idle.shift();
        if (!worker && allowCreate) {
          worker = this._createWorker();
        }
        if (worker) {
          return worker;
        }
        return await new Promise((resolve3, reject3) => {
          this._pending.push([resolve3, reject3]);
        });
      }
      /**
       * Creates a new worker if allowed by maxSize.
       */
      _createWorker() {
        if (this._alive.length >= this.maxWorkers) {
          return;
        }
        const worker = new node_worker_threads_1.Worker(this._workerScript, {
          eval: false,
          workerData: this._workerData,
          resourceLimits: this._workerResourceLimits
        });
        const id = `${this.id}#${++this._nextId}`;
        worker[exports2.WORKER_ID_SYMBOL] = id;
        this._alive.push(worker);
        worker.on("error", (err) => {
          this._onError(err);
          this._destroyWorker(worker);
        });
        worker.once("exit", (exitCode) => {
          if (exitCode !== 0) {
            this._onError(new Error(`Worker ${id} exited with code ${exitCode}`));
          }
          this._destroyWorker(worker);
        });
        if (this._prepare) {
          this._prepare(worker);
        }
        return worker;
      }
      /**
       * Cleans up a worker
       */
      _destroyWorker(worker) {
        const aliveIndex = this._alive.indexOf(worker);
        if (aliveIndex >= 0) {
          this._alive.splice(aliveIndex, 1);
        }
        const freeIndex = this._idle.indexOf(worker);
        if (freeIndex >= 0) {
          this._idle.splice(freeIndex, 1);
        }
        worker.unref();
        if (this._onWorkerDestroyed) {
          this._onWorkerDestroyed();
        }
        if (!this._alive.length && !this._error) {
          for (const [resolve3] of this._onComplete.splice(0)) {
            resolve3();
          }
        }
      }
      /**
       * Notifies all pending callbacks that an error has occurred and switches this pool into error state.
       */
      _onError(error) {
        this._error = error;
        for (const [, reject3] of this._pending.splice(0)) {
          reject3(this._error);
        }
        for (const [, reject3] of this._onComplete.splice(0)) {
          reject3(this._error);
        }
      }
    };
    exports2.WorkerPool = WorkerPool2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@rushstack/worker-pool/0.7.7/793c6b1829f7d16b674d00122ccd824b16752579cede9dbf153d58d394c20499/node_modules/@rushstack/worker-pool/lib-commonjs/index.js
var require_lib_commonjs = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@rushstack/worker-pool/0.7.7/793c6b1829f7d16b674d00122ccd824b16752579cede9dbf153d58d394c20499/node_modules/@rushstack/worker-pool/lib-commonjs/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.WorkerPool = exports2.WORKER_ID_SYMBOL = void 0;
    var WorkerPool_1 = require_WorkerPool();
    Object.defineProperty(exports2, "WORKER_ID_SYMBOL", { enumerable: true, get: function() {
      return WorkerPool_1.WORKER_ID_SYMBOL;
    } });
    Object.defineProperty(exports2, "WorkerPool", { enumerable: true, get: function() {
      return WorkerPool_1.WorkerPool;
    } });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/is-windows/1.0.2/8de297753f5a2f0d3154b27e41b774686b53f5e3c186cf9f734f0a5ce4054b2e/node_modules/is-windows/index.js
var require_is_windows = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/is-windows/1.0.2/8de297753f5a2f0d3154b27e41b774686b53f5e3c186cf9f734f0a5ce4054b2e/node_modules/is-windows/index.js"(exports2, module2) {
    (function(factory) {
      if (exports2 && typeof exports2 === "object" && typeof module2 !== "undefined") {
        module2.exports = factory();
      } else if (typeof define === "function" && define.amd) {
        define([], factory);
      } else if (typeof window !== "undefined") {
        window.isWindows = factory();
      } else if (typeof global !== "undefined") {
        global.isWindows = factory();
      } else if (typeof self !== "undefined") {
        self.isWindows = factory();
      } else {
        this.isWindows = factory();
      }
    })(function() {
      "use strict";
      return function isWindows15() {
        return process && (process.platform === "win32" || /^(msys|cygwin)$/.test(process.env.OSTYPE));
      };
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yocto-queue/1.2.2/348d8ba76aa8900ea8a2afbfce3cd78b8cda7172621258f8b7f12b7e257691be/node_modules/yocto-queue/index.js
var Node, Queue;
var init_yocto_queue = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/yocto-queue/1.2.2/348d8ba76aa8900ea8a2afbfce3cd78b8cda7172621258f8b7f12b7e257691be/node_modules/yocto-queue/index.js"() {
    Node = class {
      value;
      next;
      constructor(value) {
        this.value = value;
      }
    };
    Queue = class {
      #head;
      #tail;
      #size;
      constructor() {
        this.clear();
      }
      enqueue(value) {
        const node = new Node(value);
        if (this.#head) {
          this.#tail.next = node;
          this.#tail = node;
        } else {
          this.#head = node;
          this.#tail = node;
        }
        this.#size++;
      }
      dequeue() {
        const current = this.#head;
        if (!current) {
          return;
        }
        this.#head = this.#head.next;
        this.#size--;
        if (!this.#head) {
          this.#tail = void 0;
        }
        return current.value;
      }
      peek() {
        if (!this.#head) {
          return;
        }
        return this.#head.value;
      }
      clear() {
        this.#head = void 0;
        this.#tail = void 0;
        this.#size = 0;
      }
      get size() {
        return this.#size;
      }
      *[Symbol.iterator]() {
        let current = this.#head;
        while (current) {
          yield current.value;
          current = current.next;
        }
      }
      *drain() {
        while (this.#head) {
          yield this.dequeue();
        }
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/p-limit/7.3.0/6ec9feb7819f6cb4bdfcfd8eda73a8272adb6fab475fd25c071d310cdb20840b/node_modules/p-limit/index.js
function pLimit(concurrency) {
  let rejectOnClear = false;
  if (typeof concurrency === "object") {
    ({ concurrency, rejectOnClear = false } = concurrency);
  }
  validateConcurrency(concurrency);
  if (typeof rejectOnClear !== "boolean") {
    throw new TypeError("Expected `rejectOnClear` to be a boolean");
  }
  const queue2 = new Queue();
  let activeCount = 0;
  const resumeNext = () => {
    if (activeCount < concurrency && queue2.size > 0) {
      activeCount++;
      queue2.dequeue().run();
    }
  };
  const next2 = () => {
    activeCount--;
    resumeNext();
  };
  const run = async (function_, resolve3, arguments_) => {
    const result2 = (async () => function_(...arguments_))();
    resolve3(result2);
    try {
      await result2;
    } catch {
    }
    next2();
  };
  const enqueue = (function_, resolve3, reject3, arguments_) => {
    const queueItem = { reject: reject3 };
    new Promise((internalResolve) => {
      queueItem.run = internalResolve;
      queue2.enqueue(queueItem);
    }).then(run.bind(void 0, function_, resolve3, arguments_));
    if (activeCount < concurrency) {
      resumeNext();
    }
  };
  const generator = (function_, ...arguments_) => new Promise((resolve3, reject3) => {
    enqueue(function_, resolve3, reject3, arguments_);
  });
  Object.defineProperties(generator, {
    activeCount: {
      get: () => activeCount
    },
    pendingCount: {
      get: () => queue2.size
    },
    clearQueue: {
      value() {
        if (!rejectOnClear) {
          queue2.clear();
          return;
        }
        const abortError = AbortSignal.abort().reason;
        while (queue2.size > 0) {
          queue2.dequeue().reject(abortError);
        }
      }
    },
    concurrency: {
      get: () => concurrency,
      set(newConcurrency) {
        validateConcurrency(newConcurrency);
        concurrency = newConcurrency;
        queueMicrotask(() => {
          while (activeCount < concurrency && queue2.size > 0) {
            resumeNext();
          }
        });
      }
    },
    map: {
      async value(iterable, function_) {
        const promises = Array.from(iterable, (value, index) => this(function_, value, index));
        return Promise.all(promises);
      }
    }
  });
  return generator;
}
function validateConcurrency(concurrency) {
  if (!((Number.isInteger(concurrency) || concurrency === Number.POSITIVE_INFINITY) && concurrency > 0)) {
    throw new TypeError("Expected `concurrency` to be a number from 1 and up");
  }
}
var init_p_limit = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/p-limit/7.3.0/6ec9feb7819f6cb4bdfcfd8eda73a8272adb6fab475fd25c071d310cdb20840b/node_modules/p-limit/index.js"() {
    init_yocto_queue();
  }
});

// ../worker/lib/index.js
var lib_exports = {};
__export(lib_exports, {
  TarballIntegrityError: () => TarballIntegrityError,
  addFilesFromDir: () => addFilesFromDir,
  addFilesFromTarball: () => addFilesFromTarball,
  calcMaxWorkers: () => calcMaxWorkers,
  fetchAndWriteCafsFiles: () => fetchAndWriteCafsFiles,
  finishWorkers: () => finishWorkers,
  hardLinkDir: () => hardLinkDir,
  importPackage: () => importPackage,
  initStoreDir: () => initStoreDir,
  readPkgFromCafs: () => readPkgFromCafs,
  restartWorkerPool: () => restartWorkerPool,
  setImportConcurrency: () => setImportConcurrency,
  symlinkAllModules: () => symlinkAllModules
});
import { execSync } from "node:child_process";
import os from "node:os";
import path2 from "node:path";
async function restartWorkerPool() {
  await finishWorkers();
  workerPool = createTarballWorkerPool();
}
async function finishWorkers() {
  const finish = global.finishWorkers;
  global.finishWorkers = void 0;
  await finish?.();
  workerPool = void 0;
}
function createTarballWorkerPool() {
  const maxWorkers = calcMaxWorkers();
  const workerPool2 = new import_worker_pool.WorkerPool({
    id: "pnpm",
    maxWorkers,
    workerScriptPath: path2.join(import.meta.dirname, "worker.js")
  });
  if (global.finishWorkers) {
    const previous = global.finishWorkers;
    global.finishWorkers = async () => {
      await previous();
      await workerPool2.finishAsync();
    };
  } else {
    global.finishWorkers = () => workerPool2.finishAsync();
  }
  return workerPool2;
}
function calcMaxWorkers() {
  if (process.env.PNPM_MAX_WORKERS) {
    return parseInt(process.env.PNPM_MAX_WORKERS);
  }
  if (process.env.PNPM_WORKERS) {
    const idleCPUs = Math.abs(parseInt(process.env.PNPM_WORKERS));
    return Math.max(2, availableParallelism() - idleCPUs) - 1;
  }
  return Math.max(1, availableParallelism() - 1);
}
function availableParallelism() {
  return os.availableParallelism?.() ?? os.cpus().length;
}
async function addFilesFromDir(opts2) {
  if (!workerPool) {
    workerPool = createTarballWorkerPool();
  }
  const localWorker = await workerPool.checkoutWorkerAsync(true);
  return new Promise((resolve3, reject3) => {
    localWorker.once("message", ({ status, error, value, indexWrites }) => {
      workerPool.checkinWorker(localWorker);
      if (status === "error") {
        reject3(new PnpmError(error.code ?? "GIT_FETCH_FAILED", error.message));
        return;
      }
      if (indexWrites) {
        opts2.storeIndex.setRawMany(indexWrites);
      }
      resolve3(value);
    });
    localWorker.postMessage({
      type: "add-dir",
      storeDir: opts2.storeDir,
      dir: opts2.dir,
      filesIndexFile: opts2.filesIndexFile,
      sideEffectsCacheKey: opts2.sideEffectsCacheKey,
      readManifest: opts2.readManifest,
      pkg: opts2.pkg,
      appendManifest: opts2.appendManifest,
      files: opts2.files,
      includeNodeModules: opts2.includeNodeModules
    });
  });
}
async function addFilesFromTarball(opts2) {
  if (!workerPool) {
    workerPool = createTarballWorkerPool();
  }
  const localWorker = await workerPool.checkoutWorkerAsync(true);
  return new Promise((resolve3, reject3) => {
    localWorker.once("message", ({ status, error, value, indexWrites }) => {
      workerPool.checkinWorker(localWorker);
      if (status === "error") {
        if (error.type === "integrity_validation_failed") {
          reject3(new TarballIntegrityError({
            ...error,
            url: opts2.url
          }));
          return;
        }
        reject3(new PnpmError(error.code ?? "TARBALL_EXTRACT", `Failed to add tarball from "${opts2.url}" to store: ${error.message}`));
        return;
      }
      if (indexWrites) {
        opts2.storeIndex.queueWrites(indexWrites);
      }
      resolve3(value);
    });
    localWorker.postMessage({
      type: "extract",
      buffer: opts2.buffer,
      storeDir: opts2.storeDir,
      integrity: opts2.integrity,
      filesIndexFile: opts2.filesIndexFile,
      readManifest: opts2.readManifest,
      pkg: opts2.pkg,
      appendManifest: opts2.appendManifest,
      ignoreFilePattern: opts2.ignoreFilePattern
    });
  });
}
async function fetchAndWriteCafsFiles(opts2) {
  if (!workerPool) {
    workerPool = createTarballWorkerPool();
  }
  const localWorker = await workerPool.checkoutWorkerAsync(true);
  return new Promise((resolve3, reject3) => {
    localWorker.once("message", ({ status, error, filesWritten }) => {
      workerPool.checkinWorker(localWorker);
      if (status === "error") {
        reject3(new PnpmError("CAFS_FETCH_WRITE", error.message));
        return;
      }
      resolve3(filesWritten);
    });
    localWorker.postMessage({
      type: "fetch-and-write-cafs",
      registryUrl: opts2.registryUrl,
      storeDir: opts2.storeDir,
      digests: opts2.digests
    });
  });
}
async function readPkgFromCafs(ctx, filesIndexFile, opts2) {
  if (!workerPool) {
    workerPool = createTarballWorkerPool();
  }
  const localWorker = await workerPool.checkoutWorkerAsync(true);
  return new Promise((resolve3, reject3) => {
    localWorker.once("message", ({ status, error, value, warnings }) => {
      workerPool.checkinWorker(localWorker);
      if (status === "error") {
        reject3(new PnpmError(error.code ?? "READ_FROM_STORE", error.message, { hint: error.hint }));
        return;
      }
      if (warnings) {
        for (const warning of warnings) {
          globalWarn(warning);
        }
      }
      resolve3(value);
    });
    localWorker.postMessage({
      type: "readPkgFromCafs",
      filesIndexFile,
      ...ctx,
      ...opts2
    });
  });
}
function setImportConcurrency(concurrency) {
  if (!Number.isInteger(concurrency) || concurrency < 1) {
    throw new Error(`setImportConcurrency: expected a positive integer, got ${concurrency}`);
  }
  const previous = limitImportingPackage;
  const installed = pLimit(concurrency);
  limitImportingPackage = installed;
  return () => {
    if (limitImportingPackage === installed) {
      limitImportingPackage = previous;
    }
  };
}
async function importPackage(opts2) {
  return limitImportingPackage(async () => {
    if (!workerPool) {
      workerPool = createTarballWorkerPool();
    }
    const localWorker = await workerPool.checkoutWorkerAsync(true);
    return new Promise((resolve3, reject3) => {
      localWorker.once("message", ({ status, error, value }) => {
        workerPool.checkinWorker(localWorker);
        if (status === "error") {
          reject3(new PnpmError(error.code ?? "LINKING_FAILED", `[importPackage ${opts2.targetDir}] ${error.message}`));
          return;
        }
        resolve3(value);
      });
      localWorker.postMessage({
        type: "link",
        ...opts2
      });
    });
  });
}
async function symlinkAllModules(opts2) {
  if (!workerPool) {
    workerPool = createTarballWorkerPool();
  }
  const localWorker = await workerPool.checkoutWorkerAsync(true);
  return new Promise((resolve3, reject3) => {
    localWorker.once("message", ({ status, error, value }) => {
      workerPool.checkinWorker(localWorker);
      if (status === "error") {
        const hint = opts2.deps?.[0]?.modules != null ? createErrorHint(error, opts2.deps[0].modules) : void 0;
        reject3(new PnpmError(error.code ?? "SYMLINK_FAILED", `[symlinkAllModules] ${error.message}`, { hint }));
        return;
      }
      resolve3(value);
    });
    localWorker.postMessage({
      type: "symlinkAllModules",
      ...opts2
    });
  });
}
function createErrorHint(err, checkedDir) {
  if ("code" in err && err.code === "EISDIR" && (0, import_is_windows.default)()) {
    const checkedDrive = `${checkedDir.split(":")[0]}:`;
    if (isDriveExFat(checkedDrive)) {
      return `The "${checkedDrive}" drive is exFAT, which does not support symlinks. This will cause installation to fail. You can set the node-linker to "hoisted" to avoid this issue.`;
    }
  }
  return void 0;
}
function isDriveExFat(drive) {
  if (!/^[a-z]:$/i.test(drive)) {
    throw new Error(`${drive} is not a valid disk on Windows`);
  }
  try {
    const output = execSync(`powershell -Command "Get-Volume -DriveLetter ${drive.replace(":", "")} | Select-Object -ExpandProperty FileSystem"`).toString();
    const lines = output.trim().split("\n");
    const name = lines[0].trim();
    return name === "exFAT";
  } catch {
    return false;
  }
}
async function hardLinkDir(src2, destDirs) {
  if (!workerPool) {
    workerPool = createTarballWorkerPool();
  }
  const localWorker = await workerPool.checkoutWorkerAsync(true);
  await new Promise((resolve3, reject3) => {
    localWorker.once("message", ({ status, error }) => {
      workerPool.checkinWorker(localWorker);
      if (status === "error") {
        reject3(new PnpmError(error.code ?? "HARDLINK_FAILED", error.message));
        return;
      }
      resolve3();
    });
    localWorker.postMessage({
      type: "hardLinkDir",
      src: src2,
      destDirs
    });
  });
}
async function initStoreDir(storeDir) {
  if (!workerPool) {
    workerPool = createTarballWorkerPool();
  }
  const localWorker = await workerPool.checkoutWorkerAsync(true);
  return new Promise((resolve3, reject3) => {
    localWorker.once("message", ({ status, error }) => {
      workerPool.checkinWorker(localWorker);
      if (status === "error") {
        reject3(new PnpmError(error.code ?? "INIT_CAFS_FAILED", error.message));
        return;
      }
      resolve3();
    });
    localWorker.postMessage({
      type: "init-store",
      storeDir
    });
  });
}
var import_worker_pool, import_is_windows, workerPool, TarballIntegrityError, limitImportingPackage;
var init_lib4 = __esm({
  "../worker/lib/index.js"() {
    "use strict";
    init_lib2();
    init_lib3();
    import_worker_pool = __toESM(require_lib_commonjs(), 1);
    import_is_windows = __toESM(require_is_windows(), 1);
    init_p_limit();
    TarballIntegrityError = class extends PnpmError {
      found;
      expected;
      algorithm;
      sri;
      url;
      constructor(opts2) {
        super("TARBALL_INTEGRITY", `Got unexpected checksum for "${opts2.url}". Wanted "${opts2.expected}". Got "${opts2.found}".`, {
          attempts: opts2.attempts,
          hint: `This error may happen when a package is republished to the registry with the same version.
In this case, the metadata in the local pnpm cache will contain the old integrity checksum.

If you think that this is the case, then run "pnpm store prune" and rerun the command that failed.
"pnpm store prune" will remove your local metadata cache.`
        });
        this.found = opts2.found;
        this.expected = opts2.expected;
        this.algorithm = opts2.algorithm;
        this.sri = opts2.sri;
        this.url = opts2.url;
      }
    };
    limitImportingPackage = pLimit(4);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/pidtree/0.6.0/e042714de86658c6c03c4c10b9f19878394e5d2f505f7c5d16cd90c1cb79049e/node_modules/pidtree/lib/bin.js
var require_bin = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/pidtree/0.6.0/e042714de86658c6c03c4c10b9f19878394e5d2f505f7c5d16cd90c1cb79049e/node_modules/pidtree/lib/bin.js"(exports2, module2) {
    "use strict";
    var spawn5 = __require("child_process").spawn;
    function stripStderr(stderr) {
      if (!stderr) return;
      stderr = stderr.trim();
      var regex2 = /your \d+x\d+ screen size is bogus\. expect trouble/gi;
      stderr = stderr.replace(regex2, "");
      return stderr.trim();
    }
    function run(cmd, args, options, done) {
      if (typeof options === "function") {
        done = options;
        options = void 0;
      }
      var executed = false;
      var ch = spawn5(cmd, args, options);
      var stdout = "";
      var stderr = "";
      ch.stdout.on("data", function(d) {
        stdout += d.toString();
      });
      ch.stderr.on("data", function(d) {
        stderr += d.toString();
      });
      ch.on("error", function(err) {
        if (executed) return;
        executed = true;
        done(new Error(err));
      });
      ch.on("close", function(code) {
        if (executed) return;
        executed = true;
        stderr = stripStderr(stderr);
        if (stderr) {
          return done(new Error(stderr));
        }
        done(null, stdout, code);
      });
    }
    module2.exports = run;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/pidtree/0.6.0/e042714de86658c6c03c4c10b9f19878394e5d2f505f7c5d16cd90c1cb79049e/node_modules/pidtree/lib/ps.js
var require_ps = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/pidtree/0.6.0/e042714de86658c6c03c4c10b9f19878394e5d2f505f7c5d16cd90c1cb79049e/node_modules/pidtree/lib/ps.js"(exports2, module2) {
    "use strict";
    var os15 = __require("os");
    var bin = require_bin();
    function ps(callback2) {
      var args = ["-A", "-o", "ppid,pid"];
      bin("ps", args, function(err, stdout, code) {
        if (err) return callback2(err);
        if (code !== 0) {
          return callback2(new Error("pidtree ps command exited with code " + code));
        }
        try {
          stdout = stdout.split(os15.EOL);
          var list2 = [];
          for (var i2 = 1; i2 < stdout.length; i2++) {
            stdout[i2] = stdout[i2].trim();
            if (!stdout[i2]) continue;
            stdout[i2] = stdout[i2].split(/\s+/);
            stdout[i2][0] = parseInt(stdout[i2][0], 10);
            stdout[i2][1] = parseInt(stdout[i2][1], 10);
            list2.push(stdout[i2]);
          }
          callback2(null, list2);
        } catch (error) {
          callback2(error);
        }
      });
    }
    module2.exports = ps;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/pidtree/0.6.0/e042714de86658c6c03c4c10b9f19878394e5d2f505f7c5d16cd90c1cb79049e/node_modules/pidtree/lib/wmic.js
var require_wmic = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/pidtree/0.6.0/e042714de86658c6c03c4c10b9f19878394e5d2f505f7c5d16cd90c1cb79049e/node_modules/pidtree/lib/wmic.js"(exports2, module2) {
    "use strict";
    var os15 = __require("os");
    var bin = require_bin();
    function wmic(callback2) {
      var args = ["PROCESS", "get", "ParentProcessId,ProcessId"];
      var options = { windowsHide: true, windowsVerbatimArguments: true };
      bin("wmic", args, options, function(err, stdout, code) {
        if (err) {
          callback2(err);
          return;
        }
        if (code !== 0) {
          callback2(new Error("pidtree wmic command exited with code " + code));
          return;
        }
        try {
          stdout = stdout.split(os15.EOL);
          var list2 = [];
          for (var i2 = 1; i2 < stdout.length; i2++) {
            stdout[i2] = stdout[i2].trim();
            if (!stdout[i2]) continue;
            stdout[i2] = stdout[i2].split(/\s+/);
            stdout[i2][0] = parseInt(stdout[i2][0], 10);
            stdout[i2][1] = parseInt(stdout[i2][1], 10);
            list2.push(stdout[i2]);
          }
          callback2(null, list2);
        } catch (error) {
          callback2(error);
        }
      });
    }
    module2.exports = wmic;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/pidtree/0.6.0/e042714de86658c6c03c4c10b9f19878394e5d2f505f7c5d16cd90c1cb79049e/node_modules/pidtree/lib/get.js
var require_get = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/pidtree/0.6.0/e042714de86658c6c03c4c10b9f19878394e5d2f505f7c5d16cd90c1cb79049e/node_modules/pidtree/lib/get.js"(exports2, module2) {
    "use strict";
    var os15 = __require("os");
    var platformToMethod = {
      darwin: "ps",
      sunos: "ps",
      freebsd: "ps",
      netbsd: "ps",
      win: "wmic",
      linux: "ps",
      aix: "ps"
    };
    var methodToRequireFn = {
      ps: () => require_ps(),
      wmic: () => require_wmic()
    };
    var platform3 = os15.platform();
    if (platform3.startsWith("win")) {
      platform3 = "win";
    }
    var method = platformToMethod[platform3];
    function get(callback2) {
      if (method === void 0) {
        callback2(
          new Error(
            os15.platform() + " is not supported yet, please open an issue (https://github.com/simonepri/pidtree)"
          )
        );
      }
      var list2 = methodToRequireFn[method]();
      list2(callback2);
    }
    module2.exports = get;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/pidtree/0.6.0/e042714de86658c6c03c4c10b9f19878394e5d2f505f7c5d16cd90c1cb79049e/node_modules/pidtree/lib/pidtree.js
var require_pidtree = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/pidtree/0.6.0/e042714de86658c6c03c4c10b9f19878394e5d2f505f7c5d16cd90c1cb79049e/node_modules/pidtree/lib/pidtree.js"(exports2, module2) {
    "use strict";
    var getAll = require_get();
    function list2(PID, options, callback2) {
      if (typeof options === "function") {
        callback2 = options;
        options = {};
      }
      if (typeof options !== "object") {
        options = {};
      }
      PID = parseInt(PID, 10);
      if (isNaN(PID) || PID < -1) {
        callback2(new TypeError("The pid provided is invalid"));
        return;
      }
      getAll(function(err, list3) {
        if (err) {
          callback2(err);
          return;
        }
        if (PID === -1) {
          for (var i2 = 0; i2 < list3.length; i2++) {
            list3[i2] = options.advanced ? { ppid: list3[i2][0], pid: list3[i2][1] } : list3[i2] = list3[i2][1];
          }
          callback2(null, list3);
          return;
        }
        var root;
        for (var l = 0; l < list3.length; l++) {
          if (list3[l][1] === PID) {
            root = options.advanced ? { ppid: list3[l][0], pid: PID } : PID;
            break;
          }
          if (list3[l][0] === PID) {
            root = options.advanced ? { pid: PID } : PID;
          }
        }
        if (!root) {
          callback2(new Error("No matching pid found"));
          return;
        }
        var tree = {};
        while (list3.length > 0) {
          var element = list3.pop();
          if (tree[element[0]]) {
            tree[element[0]].push(element[1]);
          } else {
            tree[element[0]] = [element[1]];
          }
        }
        var idx = 0;
        var pids = [root];
        while (idx < pids.length) {
          var curpid = options.advanced ? pids[idx++].pid : pids[idx++];
          if (!tree[curpid]) continue;
          var length = tree[curpid].length;
          for (var j2 = 0; j2 < length; j2++) {
            pids.push(
              options.advanced ? { ppid: curpid, pid: tree[curpid][j2] } : tree[curpid][j2]
            );
          }
          delete tree[curpid];
        }
        if (!options.root) {
          pids.shift();
        }
        callback2(null, pids);
      });
    }
    module2.exports = list2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/pidtree/0.6.0/e042714de86658c6c03c4c10b9f19878394e5d2f505f7c5d16cd90c1cb79049e/node_modules/pidtree/index.js
var require_pidtree2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/pidtree/0.6.0/e042714de86658c6c03c4c10b9f19878394e5d2f505f7c5d16cd90c1cb79049e/node_modules/pidtree/index.js"(exports2, module2) {
    "use strict";
    function pify(fn, arg1, arg2) {
      return new Promise(function(resolve3, reject3) {
        fn(arg1, arg2, function(err, data) {
          if (err) return reject3(err);
          resolve3(data);
        });
      });
    }
    if (!String.prototype.startsWith) {
      String.prototype.startsWith = function(suffix) {
        return this.substring(0, suffix.length) === suffix;
      };
    }
    var pidtree = require_pidtree();
    function list2(pid, options, callback2) {
      if (typeof options === "function") {
        callback2 = options;
        options = void 0;
      }
      if (typeof callback2 === "function") {
        pidtree(pid, options, callback2);
        return;
      }
      return pify(pidtree, pid, options);
    }
    module2.exports = list2;
  }
});

// ../cli/meta/lib/index.js
function detectIfCurrentPkgIsExecutable(_proc) {
  try {
    return __require("node:sea").isSea();
  } catch {
    return false;
  }
}
function isExecutedByCorepack(env3 = process.env) {
  return env3.COREPACK_ROOT != null;
}
function getCurrentPackageName() {
  return detectIfCurrentPkgIsExecutable() ? "@pnpm/exe" : "pnpm";
}
var defaultManifest, pkgJson, packageManager;
var init_lib5 = __esm({
  "../cli/meta/lib/index.js"() {
    "use strict";
    defaultManifest = {
      name: true ? "pnpm" : "pnpm",
      version: true ? "11.3.0" : "0.0.0"
    };
    pkgJson = defaultManifest;
    packageManager = {
      name: pkgJson.name,
      // Never a prerelease version
      stableVersion: pkgJson.version.includes("-") ? pkgJson.version.slice(0, pkgJson.version.indexOf("-")) : pkgJson.version,
      // This may be a 3.0.0-beta.2
      version: pkgJson.version
    };
  }
});

// ../core/core-loggers/lib/contextLogger.js
var contextLogger;
var init_contextLogger = __esm({
  "../core/core-loggers/lib/contextLogger.js"() {
    "use strict";
    init_lib3();
    contextLogger = logger("context");
  }
});

// ../core/core-loggers/lib/deprecationLogger.js
var deprecationLogger;
var init_deprecationLogger = __esm({
  "../core/core-loggers/lib/deprecationLogger.js"() {
    "use strict";
    init_lib3();
    deprecationLogger = logger("deprecation");
  }
});

// ../core/core-loggers/lib/executionTimeLogger.js
var executionTimeLogger;
var init_executionTimeLogger = __esm({
  "../core/core-loggers/lib/executionTimeLogger.js"() {
    "use strict";
    init_lib3();
    executionTimeLogger = logger("execution-time");
  }
});

// ../core/core-loggers/lib/fetchingProgressLogger.js
var fetchingProgressLogger;
var init_fetchingProgressLogger = __esm({
  "../core/core-loggers/lib/fetchingProgressLogger.js"() {
    "use strict";
    init_lib3();
    fetchingProgressLogger = logger("fetching-progress");
  }
});

// ../core/core-loggers/lib/hookLogger.js
var hookLogger;
var init_hookLogger = __esm({
  "../core/core-loggers/lib/hookLogger.js"() {
    "use strict";
    init_lib3();
    hookLogger = logger("hook");
  }
});

// ../core/core-loggers/lib/ignoredScriptsLogger.js
var ignoredScriptsLogger;
var init_ignoredScriptsLogger = __esm({
  "../core/core-loggers/lib/ignoredScriptsLogger.js"() {
    "use strict";
    init_lib3();
    ignoredScriptsLogger = logger("ignored-scripts");
  }
});

// ../core/core-loggers/lib/installCheckLogger.js
var installCheckLogger;
var init_installCheckLogger = __esm({
  "../core/core-loggers/lib/installCheckLogger.js"() {
    "use strict";
    init_lib3();
    installCheckLogger = logger("install-check");
  }
});

// ../core/core-loggers/lib/installingConfigDeps.js
var installingConfigDepsLogger;
var init_installingConfigDeps = __esm({
  "../core/core-loggers/lib/installingConfigDeps.js"() {
    "use strict";
    init_lib3();
    installingConfigDepsLogger = logger("installing-config-deps");
  }
});

// ../core/core-loggers/lib/lifecycleLogger.js
var lifecycleLogger;
var init_lifecycleLogger = __esm({
  "../core/core-loggers/lib/lifecycleLogger.js"() {
    "use strict";
    init_lib3();
    lifecycleLogger = logger("lifecycle");
  }
});

// ../core/core-loggers/lib/linkLogger.js
var linkLogger;
var init_linkLogger = __esm({
  "../core/core-loggers/lib/linkLogger.js"() {
    "use strict";
    init_lib3();
    linkLogger = logger("link");
  }
});

// ../core/core-loggers/lib/lockfileVerificationLogger.js
var lockfileVerificationLogger;
var init_lockfileVerificationLogger = __esm({
  "../core/core-loggers/lib/lockfileVerificationLogger.js"() {
    "use strict";
    init_lib3();
    lockfileVerificationLogger = logger("lockfile-verification");
  }
});

// ../core/core-loggers/lib/packageImportMethodLogger.js
var packageImportMethodLogger;
var init_packageImportMethodLogger = __esm({
  "../core/core-loggers/lib/packageImportMethodLogger.js"() {
    "use strict";
    init_lib3();
    packageImportMethodLogger = logger("package-import-method");
  }
});

// ../core/core-loggers/lib/packageManifestLogger.js
var packageManifestLogger;
var init_packageManifestLogger = __esm({
  "../core/core-loggers/lib/packageManifestLogger.js"() {
    "use strict";
    init_lib3();
    packageManifestLogger = logger("package-manifest");
  }
});

// ../core/core-loggers/lib/peerDependencyIssues.js
var peerDependencyIssuesLogger;
var init_peerDependencyIssues = __esm({
  "../core/core-loggers/lib/peerDependencyIssues.js"() {
    "use strict";
    init_lib3();
    peerDependencyIssuesLogger = logger("peer-dependency-issues");
  }
});

// ../core/core-loggers/lib/progressLogger.js
var progressLogger;
var init_progressLogger = __esm({
  "../core/core-loggers/lib/progressLogger.js"() {
    "use strict";
    init_lib3();
    progressLogger = logger("progress");
  }
});

// ../core/core-loggers/lib/registryLogger.js
var init_registryLogger = __esm({
  "../core/core-loggers/lib/registryLogger.js"() {
    "use strict";
  }
});

// ../core/core-loggers/lib/removalLogger.js
var removalLogger;
var init_removalLogger = __esm({
  "../core/core-loggers/lib/removalLogger.js"() {
    "use strict";
    init_lib3();
    removalLogger = logger("removal");
  }
});

// ../core/core-loggers/lib/requestRetryLogger.js
var requestRetryLogger;
var init_requestRetryLogger = __esm({
  "../core/core-loggers/lib/requestRetryLogger.js"() {
    "use strict";
    init_lib3();
    requestRetryLogger = logger("request-retry");
  }
});

// ../core/core-loggers/lib/rootLogger.js
var rootLogger;
var init_rootLogger = __esm({
  "../core/core-loggers/lib/rootLogger.js"() {
    "use strict";
    init_lib3();
    rootLogger = logger("root");
  }
});

// ../core/core-loggers/lib/scopeLogger.js
var scopeLogger;
var init_scopeLogger = __esm({
  "../core/core-loggers/lib/scopeLogger.js"() {
    "use strict";
    init_lib3();
    scopeLogger = logger("scope");
  }
});

// ../core/core-loggers/lib/skippedOptionalDependencyLogger.js
var skippedOptionalDependencyLogger;
var init_skippedOptionalDependencyLogger = __esm({
  "../core/core-loggers/lib/skippedOptionalDependencyLogger.js"() {
    "use strict";
    init_lib3();
    skippedOptionalDependencyLogger = logger("skipped-optional-dependency");
  }
});

// ../core/core-loggers/lib/stageLogger.js
var stageLogger;
var init_stageLogger = __esm({
  "../core/core-loggers/lib/stageLogger.js"() {
    "use strict";
    init_lib3();
    stageLogger = logger("stage");
  }
});

// ../core/core-loggers/lib/statsLogger.js
var statsLogger;
var init_statsLogger = __esm({
  "../core/core-loggers/lib/statsLogger.js"() {
    "use strict";
    init_lib3();
    statsLogger = logger("stats");
  }
});

// ../core/core-loggers/lib/summaryLogger.js
var summaryLogger;
var init_summaryLogger = __esm({
  "../core/core-loggers/lib/summaryLogger.js"() {
    "use strict";
    init_lib3();
    summaryLogger = logger("summary");
  }
});

// ../core/core-loggers/lib/updateCheckLogger.js
var updateCheckLogger;
var init_updateCheckLogger = __esm({
  "../core/core-loggers/lib/updateCheckLogger.js"() {
    "use strict";
    init_lib3();
    updateCheckLogger = logger("update-check");
  }
});

// ../core/core-loggers/lib/all.js
var init_all = __esm({
  "../core/core-loggers/lib/all.js"() {
    "use strict";
    init_contextLogger();
    init_deprecationLogger();
    init_executionTimeLogger();
    init_fetchingProgressLogger();
    init_hookLogger();
    init_ignoredScriptsLogger();
    init_installCheckLogger();
    init_installingConfigDeps();
    init_lifecycleLogger();
    init_linkLogger();
    init_lockfileVerificationLogger();
    init_packageImportMethodLogger();
    init_packageManifestLogger();
    init_peerDependencyIssues();
    init_progressLogger();
    init_registryLogger();
    init_removalLogger();
    init_requestRetryLogger();
    init_rootLogger();
    init_scopeLogger();
    init_skippedOptionalDependencyLogger();
    init_stageLogger();
    init_statsLogger();
    init_summaryLogger();
    init_updateCheckLogger();
  }
});

// ../core/core-loggers/lib/index.js
var init_lib6 = __esm({
  "../core/core-loggers/lib/index.js"() {
    "use strict";
    init_all();
  }
});

// ../pkg-manifest/utils/lib/getAllDependenciesFromManifest.js
function getAllDependenciesFromManifest(pkg, opts2) {
  return {
    ...pkg.devDependencies,
    ...pkg.dependencies,
    ...pkg.optionalDependencies,
    ...opts2?.autoInstallPeers ? pkg.peerDependencies : {}
  };
}
var init_getAllDependenciesFromManifest = __esm({
  "../pkg-manifest/utils/lib/getAllDependenciesFromManifest.js"() {
    "use strict";
  }
});

// ../pkg-manifest/utils/lib/getAllUniqueSpecs.js
function getAllUniqueSpecs(manifests) {
  const allSpecs = {};
  const ignored = /* @__PURE__ */ new Set();
  for (const manifest of manifests) {
    const specs = getAllDependenciesFromManifest(manifest);
    for (const [name, spec] of Object.entries(specs)) {
      if (ignored.has(name))
        continue;
      if (allSpecs[name] != null && allSpecs[name] !== spec || spec.includes(":")) {
        ignored.add(name);
        delete allSpecs[name];
        continue;
      }
      allSpecs[name] = spec;
    }
  }
  return allSpecs;
}
var init_getAllUniqueSpecs = __esm({
  "../pkg-manifest/utils/lib/getAllUniqueSpecs.js"() {
    "use strict";
    init_getAllDependenciesFromManifest();
  }
});

// ../pkg-manifest/utils/lib/getSpecFromPackageManifest.js
function getSpecFromPackageManifest(manifest, depName) {
  return manifest.optionalDependencies?.[depName] ?? manifest.dependencies?.[depName] ?? manifest.devDependencies?.[depName] ?? manifest.peerDependencies?.[depName] ?? "";
}
var init_getSpecFromPackageManifest = __esm({
  "../pkg-manifest/utils/lib/getSpecFromPackageManifest.js"() {
    "use strict";
  }
});

// ../pkg-manifest/utils/lib/convertEnginesRuntimeToDependencies.js
function convertEnginesRuntimeToDependencies(manifest, enginesFieldName, dependenciesFieldName) {
  for (const runtimeName of RUNTIME_NAMES) {
    const enginesFieldRuntime = manifest[enginesFieldName]?.runtime;
    if (enginesFieldRuntime == null || manifest[dependenciesFieldName]?.[runtimeName]) {
      continue;
    }
    const runtimes = Array.isArray(enginesFieldRuntime) ? enginesFieldRuntime : [enginesFieldRuntime];
    const runtime = runtimes.find((runtime2) => runtime2.name === runtimeName);
    if (runtime?.onFail !== "download") {
      continue;
    }
    if (!runtime.version) {
      globalWarn(`Cannot download ${runtimeName} because no version is specified in ${enginesFieldName}.runtime`);
      continue;
    }
    if ("webcontainer" in process.versions) {
      globalWarn(`Installation of ${runtimeName} versions is not supported in WebContainer`);
    } else {
      const deps = manifest[dependenciesFieldName] ??= {};
      Object.defineProperty(deps, runtimeName, {
        value: `runtime:${runtime.version}`,
        enumerable: true,
        writable: true,
        configurable: true
      });
    }
  }
}
function applyRuntimeOnFailOverride(manifest, onFailOverride) {
  for (const [enginesFieldName, dependenciesFieldName] of [
    ["devEngines", "devDependencies"],
    ["engines", "dependencies"]
  ]) {
    const enginesFieldRuntime = manifest[enginesFieldName]?.runtime;
    if (enginesFieldRuntime == null)
      continue;
    const runtimes = Array.isArray(enginesFieldRuntime) ? enginesFieldRuntime : [enginesFieldRuntime];
    for (const runtime of runtimes) {
      runtime.onFail = onFailOverride;
    }
    if (onFailOverride !== "download") {
      const deps = manifest[dependenciesFieldName];
      if (deps) {
        for (const runtimeName of RUNTIME_NAMES) {
          if (typeof deps[runtimeName] === "string" && deps[runtimeName].startsWith("runtime:")) {
            delete deps[runtimeName];
          }
        }
      }
    } else {
      convertEnginesRuntimeToDependencies(manifest, enginesFieldName, dependenciesFieldName);
    }
  }
}
var RUNTIME_NAMES;
var init_convertEnginesRuntimeToDependencies = __esm({
  "../pkg-manifest/utils/lib/convertEnginesRuntimeToDependencies.js"() {
    "use strict";
    init_lib3();
    RUNTIME_NAMES = ["node", "deno", "bun"];
  }
});

// ../pkg-manifest/utils/lib/getDependencyTypeFromManifest.js
var init_getDependencyTypeFromManifest = __esm({
  "../pkg-manifest/utils/lib/getDependencyTypeFromManifest.js"() {
    "use strict";
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/internal/constants.js
var require_constants = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/internal/constants.js"(exports2, module2) {
    "use strict";
    var SEMVER_SPEC_VERSION = "2.0.0";
    var MAX_LENGTH = 256;
    var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || /* istanbul ignore next */
    9007199254740991;
    var MAX_SAFE_COMPONENT_LENGTH = 16;
    var MAX_SAFE_BUILD_LENGTH = MAX_LENGTH - 6;
    var RELEASE_TYPES = [
      "major",
      "premajor",
      "minor",
      "preminor",
      "patch",
      "prepatch",
      "prerelease"
    ];
    module2.exports = {
      MAX_LENGTH,
      MAX_SAFE_COMPONENT_LENGTH,
      MAX_SAFE_BUILD_LENGTH,
      MAX_SAFE_INTEGER,
      RELEASE_TYPES,
      SEMVER_SPEC_VERSION,
      FLAG_INCLUDE_PRERELEASE: 1,
      FLAG_LOOSE: 2
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/internal/debug.js
var require_debug = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/internal/debug.js"(exports2, module2) {
    "use strict";
    var debug = typeof process === "object" && process.env && process.env.NODE_DEBUG && /\bsemver\b/i.test(process.env.NODE_DEBUG) ? (...args) => console.error("SEMVER", ...args) : () => {
    };
    module2.exports = debug;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/internal/re.js
var require_re = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/internal/re.js"(exports2, module2) {
    "use strict";
    var {
      MAX_SAFE_COMPONENT_LENGTH,
      MAX_SAFE_BUILD_LENGTH,
      MAX_LENGTH
    } = require_constants();
    var debug = require_debug();
    exports2 = module2.exports = {};
    var re = exports2.re = [];
    var safeRe = exports2.safeRe = [];
    var src2 = exports2.src = [];
    var safeSrc = exports2.safeSrc = [];
    var t2 = exports2.t = {};
    var R2 = 0;
    var LETTERDASHNUMBER = "[a-zA-Z0-9-]";
    var safeRegexReplacements = [
      ["\\s", 1],
      ["\\d", MAX_LENGTH],
      [LETTERDASHNUMBER, MAX_SAFE_BUILD_LENGTH]
    ];
    var makeSafeRegex = (value) => {
      for (const [token, max3] of safeRegexReplacements) {
        value = value.split(`${token}*`).join(`${token}{0,${max3}}`).split(`${token}+`).join(`${token}{1,${max3}}`);
      }
      return value;
    };
    var createToken = (name, value, isGlobal) => {
      const safe = makeSafeRegex(value);
      const index = R2++;
      debug(name, index, value);
      t2[name] = index;
      src2[index] = value;
      safeSrc[index] = safe;
      re[index] = new RegExp(value, isGlobal ? "g" : void 0);
      safeRe[index] = new RegExp(safe, isGlobal ? "g" : void 0);
    };
    createToken("NUMERICIDENTIFIER", "0|[1-9]\\d*");
    createToken("NUMERICIDENTIFIERLOOSE", "\\d+");
    createToken("NONNUMERICIDENTIFIER", `\\d*[a-zA-Z-]${LETTERDASHNUMBER}*`);
    createToken("MAINVERSION", `(${src2[t2.NUMERICIDENTIFIER]})\\.(${src2[t2.NUMERICIDENTIFIER]})\\.(${src2[t2.NUMERICIDENTIFIER]})`);
    createToken("MAINVERSIONLOOSE", `(${src2[t2.NUMERICIDENTIFIERLOOSE]})\\.(${src2[t2.NUMERICIDENTIFIERLOOSE]})\\.(${src2[t2.NUMERICIDENTIFIERLOOSE]})`);
    createToken("PRERELEASEIDENTIFIER", `(?:${src2[t2.NONNUMERICIDENTIFIER]}|${src2[t2.NUMERICIDENTIFIER]})`);
    createToken("PRERELEASEIDENTIFIERLOOSE", `(?:${src2[t2.NONNUMERICIDENTIFIER]}|${src2[t2.NUMERICIDENTIFIERLOOSE]})`);
    createToken("PRERELEASE", `(?:-(${src2[t2.PRERELEASEIDENTIFIER]}(?:\\.${src2[t2.PRERELEASEIDENTIFIER]})*))`);
    createToken("PRERELEASELOOSE", `(?:-?(${src2[t2.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${src2[t2.PRERELEASEIDENTIFIERLOOSE]})*))`);
    createToken("BUILDIDENTIFIER", `${LETTERDASHNUMBER}+`);
    createToken("BUILD", `(?:\\+(${src2[t2.BUILDIDENTIFIER]}(?:\\.${src2[t2.BUILDIDENTIFIER]})*))`);
    createToken("FULLPLAIN", `v?${src2[t2.MAINVERSION]}${src2[t2.PRERELEASE]}?${src2[t2.BUILD]}?`);
    createToken("FULL", `^${src2[t2.FULLPLAIN]}$`);
    createToken("LOOSEPLAIN", `[v=\\s]*${src2[t2.MAINVERSIONLOOSE]}${src2[t2.PRERELEASELOOSE]}?${src2[t2.BUILD]}?`);
    createToken("LOOSE", `^${src2[t2.LOOSEPLAIN]}$`);
    createToken("GTLT", "((?:<|>)?=?)");
    createToken("XRANGEIDENTIFIERLOOSE", `${src2[t2.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);
    createToken("XRANGEIDENTIFIER", `${src2[t2.NUMERICIDENTIFIER]}|x|X|\\*`);
    createToken("XRANGEPLAIN", `[v=\\s]*(${src2[t2.XRANGEIDENTIFIER]})(?:\\.(${src2[t2.XRANGEIDENTIFIER]})(?:\\.(${src2[t2.XRANGEIDENTIFIER]})(?:${src2[t2.PRERELEASE]})?${src2[t2.BUILD]}?)?)?`);
    createToken("XRANGEPLAINLOOSE", `[v=\\s]*(${src2[t2.XRANGEIDENTIFIERLOOSE]})(?:\\.(${src2[t2.XRANGEIDENTIFIERLOOSE]})(?:\\.(${src2[t2.XRANGEIDENTIFIERLOOSE]})(?:${src2[t2.PRERELEASELOOSE]})?${src2[t2.BUILD]}?)?)?`);
    createToken("XRANGE", `^${src2[t2.GTLT]}\\s*${src2[t2.XRANGEPLAIN]}$`);
    createToken("XRANGELOOSE", `^${src2[t2.GTLT]}\\s*${src2[t2.XRANGEPLAINLOOSE]}$`);
    createToken("COERCEPLAIN", `${"(^|[^\\d])(\\d{1,"}${MAX_SAFE_COMPONENT_LENGTH}})(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?(?:\\.(\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?`);
    createToken("COERCE", `${src2[t2.COERCEPLAIN]}(?:$|[^\\d])`);
    createToken("COERCEFULL", src2[t2.COERCEPLAIN] + `(?:${src2[t2.PRERELEASE]})?(?:${src2[t2.BUILD]})?(?:$|[^\\d])`);
    createToken("COERCERTL", src2[t2.COERCE], true);
    createToken("COERCERTLFULL", src2[t2.COERCEFULL], true);
    createToken("LONETILDE", "(?:~>?)");
    createToken("TILDETRIM", `(\\s*)${src2[t2.LONETILDE]}\\s+`, true);
    exports2.tildeTrimReplace = "$1~";
    createToken("TILDE", `^${src2[t2.LONETILDE]}${src2[t2.XRANGEPLAIN]}$`);
    createToken("TILDELOOSE", `^${src2[t2.LONETILDE]}${src2[t2.XRANGEPLAINLOOSE]}$`);
    createToken("LONECARET", "(?:\\^)");
    createToken("CARETTRIM", `(\\s*)${src2[t2.LONECARET]}\\s+`, true);
    exports2.caretTrimReplace = "$1^";
    createToken("CARET", `^${src2[t2.LONECARET]}${src2[t2.XRANGEPLAIN]}$`);
    createToken("CARETLOOSE", `^${src2[t2.LONECARET]}${src2[t2.XRANGEPLAINLOOSE]}$`);
    createToken("COMPARATORLOOSE", `^${src2[t2.GTLT]}\\s*(${src2[t2.LOOSEPLAIN]})$|^$`);
    createToken("COMPARATOR", `^${src2[t2.GTLT]}\\s*(${src2[t2.FULLPLAIN]})$|^$`);
    createToken("COMPARATORTRIM", `(\\s*)${src2[t2.GTLT]}\\s*(${src2[t2.LOOSEPLAIN]}|${src2[t2.XRANGEPLAIN]})`, true);
    exports2.comparatorTrimReplace = "$1$2$3";
    createToken("HYPHENRANGE", `^\\s*(${src2[t2.XRANGEPLAIN]})\\s+-\\s+(${src2[t2.XRANGEPLAIN]})\\s*$`);
    createToken("HYPHENRANGELOOSE", `^\\s*(${src2[t2.XRANGEPLAINLOOSE]})\\s+-\\s+(${src2[t2.XRANGEPLAINLOOSE]})\\s*$`);
    createToken("STAR", "(<|>)?=?\\s*\\*");
    createToken("GTE0", "^\\s*>=\\s*0\\.0\\.0\\s*$");
    createToken("GTE0PRE", "^\\s*>=\\s*0\\.0\\.0-0\\s*$");
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/internal/parse-options.js
var require_parse_options = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/internal/parse-options.js"(exports2, module2) {
    "use strict";
    var looseOption = Object.freeze({ loose: true });
    var emptyOpts = Object.freeze({});
    var parseOptions = (options) => {
      if (!options) {
        return emptyOpts;
      }
      if (typeof options !== "object") {
        return looseOption;
      }
      return options;
    };
    module2.exports = parseOptions;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/internal/identifiers.js
var require_identifiers = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/internal/identifiers.js"(exports2, module2) {
    "use strict";
    var numeric = /^[0-9]+$/;
    var compareIdentifiers = (a2, b) => {
      if (typeof a2 === "number" && typeof b === "number") {
        return a2 === b ? 0 : a2 < b ? -1 : 1;
      }
      const anum = numeric.test(a2);
      const bnum = numeric.test(b);
      if (anum && bnum) {
        a2 = +a2;
        b = +b;
      }
      return a2 === b ? 0 : anum && !bnum ? -1 : bnum && !anum ? 1 : a2 < b ? -1 : 1;
    };
    var rcompareIdentifiers = (a2, b) => compareIdentifiers(b, a2);
    module2.exports = {
      compareIdentifiers,
      rcompareIdentifiers
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/classes/semver.js
var require_semver = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/classes/semver.js"(exports2, module2) {
    "use strict";
    var debug = require_debug();
    var { MAX_LENGTH, MAX_SAFE_INTEGER } = require_constants();
    var { safeRe: re, t: t2 } = require_re();
    var parseOptions = require_parse_options();
    var { compareIdentifiers } = require_identifiers();
    var SemVer = class _SemVer {
      constructor(version2, options) {
        options = parseOptions(options);
        if (version2 instanceof _SemVer) {
          if (version2.loose === !!options.loose && version2.includePrerelease === !!options.includePrerelease) {
            return version2;
          } else {
            version2 = version2.version;
          }
        } else if (typeof version2 !== "string") {
          throw new TypeError(`Invalid version. Must be a string. Got type "${typeof version2}".`);
        }
        if (version2.length > MAX_LENGTH) {
          throw new TypeError(
            `version is longer than ${MAX_LENGTH} characters`
          );
        }
        debug("SemVer", version2, options);
        this.options = options;
        this.loose = !!options.loose;
        this.includePrerelease = !!options.includePrerelease;
        const m = version2.trim().match(options.loose ? re[t2.LOOSE] : re[t2.FULL]);
        if (!m) {
          throw new TypeError(`Invalid Version: ${version2}`);
        }
        this.raw = version2;
        this.major = +m[1];
        this.minor = +m[2];
        this.patch = +m[3];
        if (this.major > MAX_SAFE_INTEGER || this.major < 0) {
          throw new TypeError("Invalid major version");
        }
        if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) {
          throw new TypeError("Invalid minor version");
        }
        if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) {
          throw new TypeError("Invalid patch version");
        }
        if (!m[4]) {
          this.prerelease = [];
        } else {
          this.prerelease = m[4].split(".").map((id) => {
            if (/^[0-9]+$/.test(id)) {
              const num = +id;
              if (num >= 0 && num < MAX_SAFE_INTEGER) {
                return num;
              }
            }
            return id;
          });
        }
        this.build = m[5] ? m[5].split(".") : [];
        this.format();
      }
      format() {
        this.version = `${this.major}.${this.minor}.${this.patch}`;
        if (this.prerelease.length) {
          this.version += `-${this.prerelease.join(".")}`;
        }
        return this.version;
      }
      toString() {
        return this.version;
      }
      compare(other) {
        debug("SemVer.compare", this.version, this.options, other);
        if (!(other instanceof _SemVer)) {
          if (typeof other === "string" && other === this.version) {
            return 0;
          }
          other = new _SemVer(other, this.options);
        }
        if (other.version === this.version) {
          return 0;
        }
        return this.compareMain(other) || this.comparePre(other);
      }
      compareMain(other) {
        if (!(other instanceof _SemVer)) {
          other = new _SemVer(other, this.options);
        }
        if (this.major < other.major) {
          return -1;
        }
        if (this.major > other.major) {
          return 1;
        }
        if (this.minor < other.minor) {
          return -1;
        }
        if (this.minor > other.minor) {
          return 1;
        }
        if (this.patch < other.patch) {
          return -1;
        }
        if (this.patch > other.patch) {
          return 1;
        }
        return 0;
      }
      comparePre(other) {
        if (!(other instanceof _SemVer)) {
          other = new _SemVer(other, this.options);
        }
        if (this.prerelease.length && !other.prerelease.length) {
          return -1;
        } else if (!this.prerelease.length && other.prerelease.length) {
          return 1;
        } else if (!this.prerelease.length && !other.prerelease.length) {
          return 0;
        }
        let i2 = 0;
        do {
          const a2 = this.prerelease[i2];
          const b = other.prerelease[i2];
          debug("prerelease compare", i2, a2, b);
          if (a2 === void 0 && b === void 0) {
            return 0;
          } else if (b === void 0) {
            return 1;
          } else if (a2 === void 0) {
            return -1;
          } else if (a2 === b) {
            continue;
          } else {
            return compareIdentifiers(a2, b);
          }
        } while (++i2);
      }
      compareBuild(other) {
        if (!(other instanceof _SemVer)) {
          other = new _SemVer(other, this.options);
        }
        let i2 = 0;
        do {
          const a2 = this.build[i2];
          const b = other.build[i2];
          debug("build compare", i2, a2, b);
          if (a2 === void 0 && b === void 0) {
            return 0;
          } else if (b === void 0) {
            return 1;
          } else if (a2 === void 0) {
            return -1;
          } else if (a2 === b) {
            continue;
          } else {
            return compareIdentifiers(a2, b);
          }
        } while (++i2);
      }
      // preminor will bump the version up to the next minor release, and immediately
      // down to pre-release. premajor and prepatch work the same way.
      inc(release, identifier, identifierBase) {
        if (release.startsWith("pre")) {
          if (!identifier && identifierBase === false) {
            throw new Error("invalid increment argument: identifier is empty");
          }
          if (identifier) {
            const match = `-${identifier}`.match(this.options.loose ? re[t2.PRERELEASELOOSE] : re[t2.PRERELEASE]);
            if (!match || match[1] !== identifier) {
              throw new Error(`invalid identifier: ${identifier}`);
            }
          }
        }
        switch (release) {
          case "premajor":
            this.prerelease.length = 0;
            this.patch = 0;
            this.minor = 0;
            this.major++;
            this.inc("pre", identifier, identifierBase);
            break;
          case "preminor":
            this.prerelease.length = 0;
            this.patch = 0;
            this.minor++;
            this.inc("pre", identifier, identifierBase);
            break;
          case "prepatch":
            this.prerelease.length = 0;
            this.inc("patch", identifier, identifierBase);
            this.inc("pre", identifier, identifierBase);
            break;
          // If the input is a non-prerelease version, this acts the same as
          // prepatch.
          case "prerelease":
            if (this.prerelease.length === 0) {
              this.inc("patch", identifier, identifierBase);
            }
            this.inc("pre", identifier, identifierBase);
            break;
          case "release":
            if (this.prerelease.length === 0) {
              throw new Error(`version ${this.raw} is not a prerelease`);
            }
            this.prerelease.length = 0;
            break;
          case "major":
            if (this.minor !== 0 || this.patch !== 0 || this.prerelease.length === 0) {
              this.major++;
            }
            this.minor = 0;
            this.patch = 0;
            this.prerelease = [];
            break;
          case "minor":
            if (this.patch !== 0 || this.prerelease.length === 0) {
              this.minor++;
            }
            this.patch = 0;
            this.prerelease = [];
            break;
          case "patch":
            if (this.prerelease.length === 0) {
              this.patch++;
            }
            this.prerelease = [];
            break;
          // This probably shouldn't be used publicly.
          // 1.0.0 'pre' would become 1.0.0-0 which is the wrong direction.
          case "pre": {
            const base = Number(identifierBase) ? 1 : 0;
            if (this.prerelease.length === 0) {
              this.prerelease = [base];
            } else {
              let i2 = this.prerelease.length;
              while (--i2 >= 0) {
                if (typeof this.prerelease[i2] === "number") {
                  this.prerelease[i2]++;
                  i2 = -2;
                }
              }
              if (i2 === -1) {
                if (identifier === this.prerelease.join(".") && identifierBase === false) {
                  throw new Error("invalid increment argument: identifier already exists");
                }
                this.prerelease.push(base);
              }
            }
            if (identifier) {
              let prerelease = [identifier, base];
              if (identifierBase === false) {
                prerelease = [identifier];
              }
              if (compareIdentifiers(this.prerelease[0], identifier) === 0) {
                if (isNaN(this.prerelease[1])) {
                  this.prerelease = prerelease;
                }
              } else {
                this.prerelease = prerelease;
              }
            }
            break;
          }
          default:
            throw new Error(`invalid increment argument: ${release}`);
        }
        this.raw = this.format();
        if (this.build.length) {
          this.raw += `+${this.build.join(".")}`;
        }
        return this;
      }
    };
    module2.exports = SemVer;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/parse.js
var require_parse = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/parse.js"(exports2, module2) {
    "use strict";
    var SemVer = require_semver();
    var parse7 = (version2, options, throwErrors = false) => {
      if (version2 instanceof SemVer) {
        return version2;
      }
      try {
        return new SemVer(version2, options);
      } catch (er) {
        if (!throwErrors) {
          return null;
        }
        throw er;
      }
    };
    module2.exports = parse7;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/valid.js
var require_valid = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/valid.js"(exports2, module2) {
    "use strict";
    var parse7 = require_parse();
    var valid2 = (version2, options) => {
      const v = parse7(version2, options);
      return v ? v.version : null;
    };
    module2.exports = valid2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/clean.js
var require_clean = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/clean.js"(exports2, module2) {
    "use strict";
    var parse7 = require_parse();
    var clean = (version2, options) => {
      const s = parse7(version2.trim().replace(/^[=v]+/, ""), options);
      return s ? s.version : null;
    };
    module2.exports = clean;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/inc.js
var require_inc = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/inc.js"(exports2, module2) {
    "use strict";
    var SemVer = require_semver();
    var inc2 = (version2, release, options, identifier, identifierBase) => {
      if (typeof options === "string") {
        identifierBase = identifier;
        identifier = options;
        options = void 0;
      }
      try {
        return new SemVer(
          version2 instanceof SemVer ? version2.version : version2,
          options
        ).inc(release, identifier, identifierBase).version;
      } catch (er) {
        return null;
      }
    };
    module2.exports = inc2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/diff.js
var require_diff = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/diff.js"(exports2, module2) {
    "use strict";
    var parse7 = require_parse();
    var diff = (version1, version2) => {
      const v1 = parse7(version1, null, true);
      const v2 = parse7(version2, null, true);
      const comparison = v1.compare(v2);
      if (comparison === 0) {
        return null;
      }
      const v1Higher = comparison > 0;
      const highVersion = v1Higher ? v1 : v2;
      const lowVersion = v1Higher ? v2 : v1;
      const highHasPre = !!highVersion.prerelease.length;
      const lowHasPre = !!lowVersion.prerelease.length;
      if (lowHasPre && !highHasPre) {
        if (!lowVersion.patch && !lowVersion.minor) {
          return "major";
        }
        if (lowVersion.compareMain(highVersion) === 0) {
          if (lowVersion.minor && !lowVersion.patch) {
            return "minor";
          }
          return "patch";
        }
      }
      const prefix = highHasPre ? "pre" : "";
      if (v1.major !== v2.major) {
        return prefix + "major";
      }
      if (v1.minor !== v2.minor) {
        return prefix + "minor";
      }
      if (v1.patch !== v2.patch) {
        return prefix + "patch";
      }
      return "prerelease";
    };
    module2.exports = diff;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/major.js
var require_major = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/major.js"(exports2, module2) {
    "use strict";
    var SemVer = require_semver();
    var major = (a2, loose) => new SemVer(a2, loose).major;
    module2.exports = major;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/minor.js
var require_minor = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/minor.js"(exports2, module2) {
    "use strict";
    var SemVer = require_semver();
    var minor = (a2, loose) => new SemVer(a2, loose).minor;
    module2.exports = minor;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/patch.js
var require_patch = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/patch.js"(exports2, module2) {
    "use strict";
    var SemVer = require_semver();
    var patch = (a2, loose) => new SemVer(a2, loose).patch;
    module2.exports = patch;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/prerelease.js
var require_prerelease = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/prerelease.js"(exports2, module2) {
    "use strict";
    var parse7 = require_parse();
    var prerelease = (version2, options) => {
      const parsed = parse7(version2, options);
      return parsed && parsed.prerelease.length ? parsed.prerelease : null;
    };
    module2.exports = prerelease;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/compare.js
var require_compare = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/compare.js"(exports2, module2) {
    "use strict";
    var SemVer = require_semver();
    var compare2 = (a2, b, loose) => new SemVer(a2, loose).compare(new SemVer(b, loose));
    module2.exports = compare2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/rcompare.js
var require_rcompare = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/rcompare.js"(exports2, module2) {
    "use strict";
    var compare2 = require_compare();
    var rcompare = (a2, b, loose) => compare2(b, a2, loose);
    module2.exports = rcompare;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/compare-loose.js
var require_compare_loose = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/compare-loose.js"(exports2, module2) {
    "use strict";
    var compare2 = require_compare();
    var compareLoose = (a2, b) => compare2(a2, b, true);
    module2.exports = compareLoose;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/compare-build.js
var require_compare_build = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/compare-build.js"(exports2, module2) {
    "use strict";
    var SemVer = require_semver();
    var compareBuild = (a2, b, loose) => {
      const versionA = new SemVer(a2, loose);
      const versionB = new SemVer(b, loose);
      return versionA.compare(versionB) || versionA.compareBuild(versionB);
    };
    module2.exports = compareBuild;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/sort.js
var require_sort = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/sort.js"(exports2, module2) {
    "use strict";
    var compareBuild = require_compare_build();
    var sort = (list2, loose) => list2.sort((a2, b) => compareBuild(a2, b, loose));
    module2.exports = sort;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/rsort.js
var require_rsort = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/rsort.js"(exports2, module2) {
    "use strict";
    var compareBuild = require_compare_build();
    var rsort = (list2, loose) => list2.sort((a2, b) => compareBuild(b, a2, loose));
    module2.exports = rsort;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/gt.js
var require_gt = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/gt.js"(exports2, module2) {
    "use strict";
    var compare2 = require_compare();
    var gt = (a2, b, loose) => compare2(a2, b, loose) > 0;
    module2.exports = gt;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/lt.js
var require_lt = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/lt.js"(exports2, module2) {
    "use strict";
    var compare2 = require_compare();
    var lt = (a2, b, loose) => compare2(a2, b, loose) < 0;
    module2.exports = lt;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/eq.js
var require_eq = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/eq.js"(exports2, module2) {
    "use strict";
    var compare2 = require_compare();
    var eq = (a2, b, loose) => compare2(a2, b, loose) === 0;
    module2.exports = eq;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/neq.js
var require_neq = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/neq.js"(exports2, module2) {
    "use strict";
    var compare2 = require_compare();
    var neq = (a2, b, loose) => compare2(a2, b, loose) !== 0;
    module2.exports = neq;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/gte.js
var require_gte = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/gte.js"(exports2, module2) {
    "use strict";
    var compare2 = require_compare();
    var gte = (a2, b, loose) => compare2(a2, b, loose) >= 0;
    module2.exports = gte;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/lte.js
var require_lte = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/lte.js"(exports2, module2) {
    "use strict";
    var compare2 = require_compare();
    var lte = (a2, b, loose) => compare2(a2, b, loose) <= 0;
    module2.exports = lte;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/cmp.js
var require_cmp = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/cmp.js"(exports2, module2) {
    "use strict";
    var eq = require_eq();
    var neq = require_neq();
    var gt = require_gt();
    var gte = require_gte();
    var lt = require_lt();
    var lte = require_lte();
    var cmp = (a2, op, b, loose) => {
      switch (op) {
        case "===":
          if (typeof a2 === "object") {
            a2 = a2.version;
          }
          if (typeof b === "object") {
            b = b.version;
          }
          return a2 === b;
        case "!==":
          if (typeof a2 === "object") {
            a2 = a2.version;
          }
          if (typeof b === "object") {
            b = b.version;
          }
          return a2 !== b;
        case "":
        case "=":
        case "==":
          return eq(a2, b, loose);
        case "!=":
          return neq(a2, b, loose);
        case ">":
          return gt(a2, b, loose);
        case ">=":
          return gte(a2, b, loose);
        case "<":
          return lt(a2, b, loose);
        case "<=":
          return lte(a2, b, loose);
        default:
          throw new TypeError(`Invalid operator: ${op}`);
      }
    };
    module2.exports = cmp;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/coerce.js
var require_coerce = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/coerce.js"(exports2, module2) {
    "use strict";
    var SemVer = require_semver();
    var parse7 = require_parse();
    var { safeRe: re, t: t2 } = require_re();
    var coerce = (version2, options) => {
      if (version2 instanceof SemVer) {
        return version2;
      }
      if (typeof version2 === "number") {
        version2 = String(version2);
      }
      if (typeof version2 !== "string") {
        return null;
      }
      options = options || {};
      let match = null;
      if (!options.rtl) {
        match = version2.match(options.includePrerelease ? re[t2.COERCEFULL] : re[t2.COERCE]);
      } else {
        const coerceRtlRegex = options.includePrerelease ? re[t2.COERCERTLFULL] : re[t2.COERCERTL];
        let next2;
        while ((next2 = coerceRtlRegex.exec(version2)) && (!match || match.index + match[0].length !== version2.length)) {
          if (!match || next2.index + next2[0].length !== match.index + match[0].length) {
            match = next2;
          }
          coerceRtlRegex.lastIndex = next2.index + next2[1].length + next2[2].length;
        }
        coerceRtlRegex.lastIndex = -1;
      }
      if (match === null) {
        return null;
      }
      const major = match[2];
      const minor = match[3] || "0";
      const patch = match[4] || "0";
      const prerelease = options.includePrerelease && match[5] ? `-${match[5]}` : "";
      const build2 = options.includePrerelease && match[6] ? `+${match[6]}` : "";
      return parse7(`${major}.${minor}.${patch}${prerelease}${build2}`, options);
    };
    module2.exports = coerce;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/truncate.js
var require_truncate = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/truncate.js"(exports2, module2) {
    "use strict";
    var parse7 = require_parse();
    var constants5 = require_constants();
    var SemVer = require_semver();
    var truncate = (version2, truncation, options) => {
      if (!constants5.RELEASE_TYPES.includes(truncation)) {
        return null;
      }
      const clonedVersion = cloneInputVersion(version2, options);
      return clonedVersion && doTruncation(clonedVersion, truncation);
    };
    var cloneInputVersion = (version2, options) => {
      const versionStringToParse = version2 instanceof SemVer ? version2.version : version2;
      return parse7(versionStringToParse, options);
    };
    var doTruncation = (version2, truncation) => {
      if (isPrerelease(truncation)) {
        return version2.version;
      }
      version2.prerelease = [];
      switch (truncation) {
        case "major":
          version2.minor = 0;
          version2.patch = 0;
          break;
        case "minor":
          version2.patch = 0;
          break;
      }
      return version2.format();
    };
    var isPrerelease = (type4) => {
      return type4.startsWith("pre");
    };
    module2.exports = truncate;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/internal/lrucache.js
var require_lrucache = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/internal/lrucache.js"(exports2, module2) {
    "use strict";
    var LRUCache = class {
      constructor() {
        this.max = 1e3;
        this.map = /* @__PURE__ */ new Map();
      }
      get(key) {
        const value = this.map.get(key);
        if (value === void 0) {
          return void 0;
        } else {
          this.map.delete(key);
          this.map.set(key, value);
          return value;
        }
      }
      delete(key) {
        return this.map.delete(key);
      }
      set(key, value) {
        const deleted = this.delete(key);
        if (!deleted && value !== void 0) {
          if (this.map.size >= this.max) {
            const firstKey = this.map.keys().next().value;
            this.delete(firstKey);
          }
          this.map.set(key, value);
        }
        return this;
      }
    };
    module2.exports = LRUCache;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/classes/range.js
var require_range = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/classes/range.js"(exports2, module2) {
    "use strict";
    var SPACE_CHARACTERS = /\s+/g;
    var Range = class _Range {
      constructor(range, options) {
        options = parseOptions(options);
        if (range instanceof _Range) {
          if (range.loose === !!options.loose && range.includePrerelease === !!options.includePrerelease) {
            return range;
          } else {
            return new _Range(range.raw, options);
          }
        }
        if (range instanceof Comparator) {
          this.raw = range.value;
          this.set = [[range]];
          this.formatted = void 0;
          return this;
        }
        this.options = options;
        this.loose = !!options.loose;
        this.includePrerelease = !!options.includePrerelease;
        this.raw = range.trim().replace(SPACE_CHARACTERS, " ");
        this.set = this.raw.split("||").map((r) => this.parseRange(r.trim())).filter((c3) => c3.length);
        if (!this.set.length) {
          throw new TypeError(`Invalid SemVer Range: ${this.raw}`);
        }
        if (this.set.length > 1) {
          const first = this.set[0];
          this.set = this.set.filter((c3) => !isNullSet(c3[0]));
          if (this.set.length === 0) {
            this.set = [first];
          } else if (this.set.length > 1) {
            for (const c3 of this.set) {
              if (c3.length === 1 && isAny(c3[0])) {
                this.set = [c3];
                break;
              }
            }
          }
        }
        this.formatted = void 0;
      }
      get range() {
        if (this.formatted === void 0) {
          this.formatted = "";
          for (let i2 = 0; i2 < this.set.length; i2++) {
            if (i2 > 0) {
              this.formatted += "||";
            }
            const comps = this.set[i2];
            for (let k2 = 0; k2 < comps.length; k2++) {
              if (k2 > 0) {
                this.formatted += " ";
              }
              this.formatted += comps[k2].toString().trim();
            }
          }
        }
        return this.formatted;
      }
      format() {
        return this.range;
      }
      toString() {
        return this.range;
      }
      parseRange(range) {
        range = range.replace(BUILDSTRIPRE, "");
        const memoOpts = (this.options.includePrerelease && FLAG_INCLUDE_PRERELEASE) | (this.options.loose && FLAG_LOOSE);
        const memoKey = memoOpts + ":" + range;
        const cached = cache.get(memoKey);
        if (cached) {
          return cached;
        }
        const loose = this.options.loose;
        const hr = loose ? re[t2.HYPHENRANGELOOSE] : re[t2.HYPHENRANGE];
        range = range.replace(hr, hyphenReplace(this.options.includePrerelease));
        debug("hyphen replace", range);
        range = range.replace(re[t2.COMPARATORTRIM], comparatorTrimReplace);
        debug("comparator trim", range);
        range = range.replace(re[t2.TILDETRIM], tildeTrimReplace);
        debug("tilde trim", range);
        range = range.replace(re[t2.CARETTRIM], caretTrimReplace);
        debug("caret trim", range);
        let rangeList = range.split(" ").map((comp) => parseComparator(comp, this.options)).join(" ").split(/\s+/).map((comp) => replaceGTE0(comp, this.options));
        if (loose) {
          rangeList = rangeList.filter((comp) => {
            debug("loose invalid filter", comp, this.options);
            return !!comp.match(re[t2.COMPARATORLOOSE]);
          });
        }
        debug("range list", rangeList);
        const rangeMap = /* @__PURE__ */ new Map();
        const comparators = rangeList.map((comp) => new Comparator(comp, this.options));
        for (const comp of comparators) {
          if (isNullSet(comp)) {
            return [comp];
          }
          rangeMap.set(comp.value, comp);
        }
        if (rangeMap.size > 1 && rangeMap.has("")) {
          rangeMap.delete("");
        }
        const result2 = [...rangeMap.values()];
        cache.set(memoKey, result2);
        return result2;
      }
      intersects(range, options) {
        if (!(range instanceof _Range)) {
          throw new TypeError("a Range is required");
        }
        return this.set.some((thisComparators) => {
          return isSatisfiable(thisComparators, options) && range.set.some((rangeComparators) => {
            return isSatisfiable(rangeComparators, options) && thisComparators.every((thisComparator) => {
              return rangeComparators.every((rangeComparator) => {
                return thisComparator.intersects(rangeComparator, options);
              });
            });
          });
        });
      }
      // if ANY of the sets match ALL of its comparators, then pass
      test(version2) {
        if (!version2) {
          return false;
        }
        if (typeof version2 === "string") {
          try {
            version2 = new SemVer(version2, this.options);
          } catch (er) {
            return false;
          }
        }
        for (let i2 = 0; i2 < this.set.length; i2++) {
          if (testSet(this.set[i2], version2, this.options)) {
            return true;
          }
        }
        return false;
      }
    };
    module2.exports = Range;
    var LRU = require_lrucache();
    var cache = new LRU();
    var parseOptions = require_parse_options();
    var Comparator = require_comparator();
    var debug = require_debug();
    var SemVer = require_semver();
    var {
      safeRe: re,
      src: src2,
      t: t2,
      comparatorTrimReplace,
      tildeTrimReplace,
      caretTrimReplace
    } = require_re();
    var { FLAG_INCLUDE_PRERELEASE, FLAG_LOOSE } = require_constants();
    var BUILDSTRIPRE = new RegExp(src2[t2.BUILD], "g");
    var isNullSet = (c3) => c3.value === "<0.0.0-0";
    var isAny = (c3) => c3.value === "";
    var isSatisfiable = (comparators, options) => {
      let result2 = true;
      const remainingComparators = comparators.slice();
      let testComparator = remainingComparators.pop();
      while (result2 && remainingComparators.length) {
        result2 = remainingComparators.every((otherComparator) => {
          return testComparator.intersects(otherComparator, options);
        });
        testComparator = remainingComparators.pop();
      }
      return result2;
    };
    var parseComparator = (comp, options) => {
      comp = comp.replace(re[t2.BUILD], "");
      debug("comp", comp, options);
      comp = replaceCarets(comp, options);
      debug("caret", comp);
      comp = replaceTildes(comp, options);
      debug("tildes", comp);
      comp = replaceXRanges(comp, options);
      debug("xrange", comp);
      comp = replaceStars(comp, options);
      debug("stars", comp);
      return comp;
    };
    var isX = (id) => !id || id.toLowerCase() === "x" || id === "*";
    var replaceTildes = (comp, options) => {
      return comp.trim().split(/\s+/).map((c3) => replaceTilde(c3, options)).join(" ");
    };
    var replaceTilde = (comp, options) => {
      const r = options.loose ? re[t2.TILDELOOSE] : re[t2.TILDE];
      return comp.replace(r, (_, M2, m, p, pr) => {
        debug("tilde", comp, _, M2, m, p, pr);
        let ret2;
        if (isX(M2)) {
          ret2 = "";
        } else if (isX(m)) {
          ret2 = `>=${M2}.0.0 <${+M2 + 1}.0.0-0`;
        } else if (isX(p)) {
          ret2 = `>=${M2}.${m}.0 <${M2}.${+m + 1}.0-0`;
        } else if (pr) {
          debug("replaceTilde pr", pr);
          ret2 = `>=${M2}.${m}.${p}-${pr} <${M2}.${+m + 1}.0-0`;
        } else {
          ret2 = `>=${M2}.${m}.${p} <${M2}.${+m + 1}.0-0`;
        }
        debug("tilde return", ret2);
        return ret2;
      });
    };
    var replaceCarets = (comp, options) => {
      return comp.trim().split(/\s+/).map((c3) => replaceCaret(c3, options)).join(" ");
    };
    var replaceCaret = (comp, options) => {
      debug("caret", comp, options);
      const r = options.loose ? re[t2.CARETLOOSE] : re[t2.CARET];
      const z = options.includePrerelease ? "-0" : "";
      return comp.replace(r, (_, M2, m, p, pr) => {
        debug("caret", comp, _, M2, m, p, pr);
        let ret2;
        if (isX(M2)) {
          ret2 = "";
        } else if (isX(m)) {
          ret2 = `>=${M2}.0.0${z} <${+M2 + 1}.0.0-0`;
        } else if (isX(p)) {
          if (M2 === "0") {
            ret2 = `>=${M2}.${m}.0${z} <${M2}.${+m + 1}.0-0`;
          } else {
            ret2 = `>=${M2}.${m}.0${z} <${+M2 + 1}.0.0-0`;
          }
        } else if (pr) {
          debug("replaceCaret pr", pr);
          if (M2 === "0") {
            if (m === "0") {
              ret2 = `>=${M2}.${m}.${p}-${pr} <${M2}.${m}.${+p + 1}-0`;
            } else {
              ret2 = `>=${M2}.${m}.${p}-${pr} <${M2}.${+m + 1}.0-0`;
            }
          } else {
            ret2 = `>=${M2}.${m}.${p}-${pr} <${+M2 + 1}.0.0-0`;
          }
        } else {
          debug("no pr");
          if (M2 === "0") {
            if (m === "0") {
              ret2 = `>=${M2}.${m}.${p}${z} <${M2}.${m}.${+p + 1}-0`;
            } else {
              ret2 = `>=${M2}.${m}.${p}${z} <${M2}.${+m + 1}.0-0`;
            }
          } else {
            ret2 = `>=${M2}.${m}.${p} <${+M2 + 1}.0.0-0`;
          }
        }
        debug("caret return", ret2);
        return ret2;
      });
    };
    var replaceXRanges = (comp, options) => {
      debug("replaceXRanges", comp, options);
      return comp.split(/\s+/).map((c3) => replaceXRange(c3, options)).join(" ");
    };
    var replaceXRange = (comp, options) => {
      comp = comp.trim();
      const r = options.loose ? re[t2.XRANGELOOSE] : re[t2.XRANGE];
      return comp.replace(r, (ret2, gtlt, M2, m, p, pr) => {
        debug("xRange", comp, ret2, gtlt, M2, m, p, pr);
        const xM = isX(M2);
        const xm = xM || isX(m);
        const xp = xm || isX(p);
        const anyX = xp;
        if (gtlt === "=" && anyX) {
          gtlt = "";
        }
        pr = options.includePrerelease ? "-0" : "";
        if (xM) {
          if (gtlt === ">" || gtlt === "<") {
            ret2 = "<0.0.0-0";
          } else {
            ret2 = "*";
          }
        } else if (gtlt && anyX) {
          if (xm) {
            m = 0;
          }
          p = 0;
          if (gtlt === ">") {
            gtlt = ">=";
            if (xm) {
              M2 = +M2 + 1;
              m = 0;
              p = 0;
            } else {
              m = +m + 1;
              p = 0;
            }
          } else if (gtlt === "<=") {
            gtlt = "<";
            if (xm) {
              M2 = +M2 + 1;
            } else {
              m = +m + 1;
            }
          }
          if (gtlt === "<") {
            pr = "-0";
          }
          ret2 = `${gtlt + M2}.${m}.${p}${pr}`;
        } else if (xm) {
          ret2 = `>=${M2}.0.0${pr} <${+M2 + 1}.0.0-0`;
        } else if (xp) {
          ret2 = `>=${M2}.${m}.0${pr} <${M2}.${+m + 1}.0-0`;
        }
        debug("xRange return", ret2);
        return ret2;
      });
    };
    var replaceStars = (comp, options) => {
      debug("replaceStars", comp, options);
      return comp.trim().replace(re[t2.STAR], "");
    };
    var replaceGTE0 = (comp, options) => {
      debug("replaceGTE0", comp, options);
      return comp.trim().replace(re[options.includePrerelease ? t2.GTE0PRE : t2.GTE0], "");
    };
    var hyphenReplace = (incPr) => ($0, from5, fM, fm, fp, fpr, fb, to, tM, tm, tp, tpr) => {
      if (isX(fM)) {
        from5 = "";
      } else if (isX(fm)) {
        from5 = `>=${fM}.0.0${incPr ? "-0" : ""}`;
      } else if (isX(fp)) {
        from5 = `>=${fM}.${fm}.0${incPr ? "-0" : ""}`;
      } else if (fpr) {
        from5 = `>=${from5}`;
      } else {
        from5 = `>=${from5}${incPr ? "-0" : ""}`;
      }
      if (isX(tM)) {
        to = "";
      } else if (isX(tm)) {
        to = `<${+tM + 1}.0.0-0`;
      } else if (isX(tp)) {
        to = `<${tM}.${+tm + 1}.0-0`;
      } else if (tpr) {
        to = `<=${tM}.${tm}.${tp}-${tpr}`;
      } else if (incPr) {
        to = `<${tM}.${tm}.${+tp + 1}-0`;
      } else {
        to = `<=${to}`;
      }
      return `${from5} ${to}`.trim();
    };
    var testSet = (set2, version2, options) => {
      for (let i2 = 0; i2 < set2.length; i2++) {
        if (!set2[i2].test(version2)) {
          return false;
        }
      }
      if (version2.prerelease.length && !options.includePrerelease) {
        for (let i2 = 0; i2 < set2.length; i2++) {
          debug(set2[i2].semver);
          if (set2[i2].semver === Comparator.ANY) {
            continue;
          }
          if (set2[i2].semver.prerelease.length > 0) {
            const allowed = set2[i2].semver;
            if (allowed.major === version2.major && allowed.minor === version2.minor && allowed.patch === version2.patch) {
              return true;
            }
          }
        }
        return false;
      }
      return true;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/classes/comparator.js
var require_comparator = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/classes/comparator.js"(exports2, module2) {
    "use strict";
    var ANY = /* @__PURE__ */ Symbol("SemVer ANY");
    var Comparator = class _Comparator {
      static get ANY() {
        return ANY;
      }
      constructor(comp, options) {
        options = parseOptions(options);
        if (comp instanceof _Comparator) {
          if (comp.loose === !!options.loose) {
            return comp;
          } else {
            comp = comp.value;
          }
        }
        comp = comp.trim().split(/\s+/).join(" ");
        debug("comparator", comp, options);
        this.options = options;
        this.loose = !!options.loose;
        this.parse(comp);
        if (this.semver === ANY) {
          this.value = "";
        } else {
          this.value = this.operator + this.semver.version;
        }
        debug("comp", this);
      }
      parse(comp) {
        const r = this.options.loose ? re[t2.COMPARATORLOOSE] : re[t2.COMPARATOR];
        const m = comp.match(r);
        if (!m) {
          throw new TypeError(`Invalid comparator: ${comp}`);
        }
        this.operator = m[1] !== void 0 ? m[1] : "";
        if (this.operator === "=") {
          this.operator = "";
        }
        if (!m[2]) {
          this.semver = ANY;
        } else {
          this.semver = new SemVer(m[2], this.options.loose);
        }
      }
      toString() {
        return this.value;
      }
      test(version2) {
        debug("Comparator.test", version2, this.options.loose);
        if (this.semver === ANY || version2 === ANY) {
          return true;
        }
        if (typeof version2 === "string") {
          try {
            version2 = new SemVer(version2, this.options);
          } catch (er) {
            return false;
          }
        }
        return cmp(version2, this.operator, this.semver, this.options);
      }
      intersects(comp, options) {
        if (!(comp instanceof _Comparator)) {
          throw new TypeError("a Comparator is required");
        }
        if (this.operator === "") {
          if (this.value === "") {
            return true;
          }
          return new Range(comp.value, options).test(this.value);
        } else if (comp.operator === "") {
          if (comp.value === "") {
            return true;
          }
          return new Range(this.value, options).test(comp.semver);
        }
        options = parseOptions(options);
        if (options.includePrerelease && (this.value === "<0.0.0-0" || comp.value === "<0.0.0-0")) {
          return false;
        }
        if (!options.includePrerelease && (this.value.startsWith("<0.0.0") || comp.value.startsWith("<0.0.0"))) {
          return false;
        }
        if (this.operator.startsWith(">") && comp.operator.startsWith(">")) {
          return true;
        }
        if (this.operator.startsWith("<") && comp.operator.startsWith("<")) {
          return true;
        }
        if (this.semver.version === comp.semver.version && this.operator.includes("=") && comp.operator.includes("=")) {
          return true;
        }
        if (cmp(this.semver, "<", comp.semver, options) && this.operator.startsWith(">") && comp.operator.startsWith("<")) {
          return true;
        }
        if (cmp(this.semver, ">", comp.semver, options) && this.operator.startsWith("<") && comp.operator.startsWith(">")) {
          return true;
        }
        return false;
      }
    };
    module2.exports = Comparator;
    var parseOptions = require_parse_options();
    var { safeRe: re, t: t2 } = require_re();
    var cmp = require_cmp();
    var debug = require_debug();
    var SemVer = require_semver();
    var Range = require_range();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/satisfies.js
var require_satisfies = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/functions/satisfies.js"(exports2, module2) {
    "use strict";
    var Range = require_range();
    var satisfies3 = (version2, range, options) => {
      try {
        range = new Range(range, options);
      } catch (er) {
        return false;
      }
      return range.test(version2);
    };
    module2.exports = satisfies3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/ranges/to-comparators.js
var require_to_comparators = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/ranges/to-comparators.js"(exports2, module2) {
    "use strict";
    var Range = require_range();
    var toComparators = (range, options) => new Range(range, options).set.map((comp) => comp.map((c3) => c3.value).join(" ").trim().split(" "));
    module2.exports = toComparators;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/ranges/max-satisfying.js
var require_max_satisfying = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/ranges/max-satisfying.js"(exports2, module2) {
    "use strict";
    var SemVer = require_semver();
    var Range = require_range();
    var maxSatisfying = (versions, range, options) => {
      let max3 = null;
      let maxSV = null;
      let rangeObj = null;
      try {
        rangeObj = new Range(range, options);
      } catch (er) {
        return null;
      }
      versions.forEach((v) => {
        if (rangeObj.test(v)) {
          if (!max3 || maxSV.compare(v) === -1) {
            max3 = v;
            maxSV = new SemVer(max3, options);
          }
        }
      });
      return max3;
    };
    module2.exports = maxSatisfying;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/ranges/min-satisfying.js
var require_min_satisfying = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/ranges/min-satisfying.js"(exports2, module2) {
    "use strict";
    var SemVer = require_semver();
    var Range = require_range();
    var minSatisfying = (versions, range, options) => {
      let min = null;
      let minSV = null;
      let rangeObj = null;
      try {
        rangeObj = new Range(range, options);
      } catch (er) {
        return null;
      }
      versions.forEach((v) => {
        if (rangeObj.test(v)) {
          if (!min || minSV.compare(v) === 1) {
            min = v;
            minSV = new SemVer(min, options);
          }
        }
      });
      return min;
    };
    module2.exports = minSatisfying;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/ranges/min-version.js
var require_min_version = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/ranges/min-version.js"(exports2, module2) {
    "use strict";
    var SemVer = require_semver();
    var Range = require_range();
    var gt = require_gt();
    var minVersion = (range, loose) => {
      range = new Range(range, loose);
      let minver = new SemVer("0.0.0");
      if (range.test(minver)) {
        return minver;
      }
      minver = new SemVer("0.0.0-0");
      if (range.test(minver)) {
        return minver;
      }
      minver = null;
      for (let i2 = 0; i2 < range.set.length; ++i2) {
        const comparators = range.set[i2];
        let setMin = null;
        comparators.forEach((comparator) => {
          const compver = new SemVer(comparator.semver.version);
          switch (comparator.operator) {
            case ">":
              if (compver.prerelease.length === 0) {
                compver.patch++;
              } else {
                compver.prerelease.push(0);
              }
              compver.raw = compver.format();
            /* fallthrough */
            case "":
            case ">=":
              if (!setMin || gt(compver, setMin)) {
                setMin = compver;
              }
              break;
            case "<":
            case "<=":
              break;
            /* istanbul ignore next */
            default:
              throw new Error(`Unexpected operation: ${comparator.operator}`);
          }
        });
        if (setMin && (!minver || gt(minver, setMin))) {
          minver = setMin;
        }
      }
      if (minver && range.test(minver)) {
        return minver;
      }
      return null;
    };
    module2.exports = minVersion;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/ranges/valid.js
var require_valid2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/ranges/valid.js"(exports2, module2) {
    "use strict";
    var Range = require_range();
    var validRange3 = (range, options) => {
      try {
        return new Range(range, options).range || "*";
      } catch (er) {
        return null;
      }
    };
    module2.exports = validRange3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/ranges/outside.js
var require_outside = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/ranges/outside.js"(exports2, module2) {
    "use strict";
    var SemVer = require_semver();
    var Comparator = require_comparator();
    var { ANY } = Comparator;
    var Range = require_range();
    var satisfies3 = require_satisfies();
    var gt = require_gt();
    var lt = require_lt();
    var lte = require_lte();
    var gte = require_gte();
    var outside = (version2, range, hilo, options) => {
      version2 = new SemVer(version2, options);
      range = new Range(range, options);
      let gtfn, ltefn, ltfn, comp, ecomp;
      switch (hilo) {
        case ">":
          gtfn = gt;
          ltefn = lte;
          ltfn = lt;
          comp = ">";
          ecomp = ">=";
          break;
        case "<":
          gtfn = lt;
          ltefn = gte;
          ltfn = gt;
          comp = "<";
          ecomp = "<=";
          break;
        default:
          throw new TypeError('Must provide a hilo val of "<" or ">"');
      }
      if (satisfies3(version2, range, options)) {
        return false;
      }
      for (let i2 = 0; i2 < range.set.length; ++i2) {
        const comparators = range.set[i2];
        let high = null;
        let low = null;
        comparators.forEach((comparator) => {
          if (comparator.semver === ANY) {
            comparator = new Comparator(">=0.0.0");
          }
          high = high || comparator;
          low = low || comparator;
          if (gtfn(comparator.semver, high.semver, options)) {
            high = comparator;
          } else if (ltfn(comparator.semver, low.semver, options)) {
            low = comparator;
          }
        });
        if (high.operator === comp || high.operator === ecomp) {
          return false;
        }
        if ((!low.operator || low.operator === comp) && ltefn(version2, low.semver)) {
          return false;
        } else if (low.operator === ecomp && ltfn(version2, low.semver)) {
          return false;
        }
      }
      return true;
    };
    module2.exports = outside;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/ranges/gtr.js
var require_gtr = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/ranges/gtr.js"(exports2, module2) {
    "use strict";
    var outside = require_outside();
    var gtr = (version2, range, options) => outside(version2, range, ">", options);
    module2.exports = gtr;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/ranges/ltr.js
var require_ltr = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/ranges/ltr.js"(exports2, module2) {
    "use strict";
    var outside = require_outside();
    var ltr = (version2, range, options) => outside(version2, range, "<", options);
    module2.exports = ltr;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/ranges/intersects.js
var require_intersects = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/ranges/intersects.js"(exports2, module2) {
    "use strict";
    var Range = require_range();
    var intersects = (r1, r2, options) => {
      r1 = new Range(r1, options);
      r2 = new Range(r2, options);
      return r1.intersects(r2, options);
    };
    module2.exports = intersects;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/ranges/simplify.js
var require_simplify = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/ranges/simplify.js"(exports2, module2) {
    "use strict";
    var satisfies3 = require_satisfies();
    var compare2 = require_compare();
    module2.exports = (versions, range, options) => {
      const set2 = [];
      let first = null;
      let prev = null;
      const v = versions.sort((a2, b) => compare2(a2, b, options));
      for (const version2 of v) {
        const included = satisfies3(version2, range, options);
        if (included) {
          prev = version2;
          if (!first) {
            first = version2;
          }
        } else {
          if (prev) {
            set2.push([first, prev]);
          }
          prev = null;
          first = null;
        }
      }
      if (first) {
        set2.push([first, null]);
      }
      const ranges = [];
      for (const [min, max3] of set2) {
        if (min === max3) {
          ranges.push(min);
        } else if (!max3 && min === v[0]) {
          ranges.push("*");
        } else if (!max3) {
          ranges.push(`>=${min}`);
        } else if (min === v[0]) {
          ranges.push(`<=${max3}`);
        } else {
          ranges.push(`${min} - ${max3}`);
        }
      }
      const simplified = ranges.join(" || ");
      const original = typeof range.raw === "string" ? range.raw : String(range);
      return simplified.length < original.length ? simplified : range;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/ranges/subset.js
var require_subset = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/ranges/subset.js"(exports2, module2) {
    "use strict";
    var Range = require_range();
    var Comparator = require_comparator();
    var { ANY } = Comparator;
    var satisfies3 = require_satisfies();
    var compare2 = require_compare();
    var subset = (sub, dom, options = {}) => {
      if (sub === dom) {
        return true;
      }
      sub = new Range(sub, options);
      dom = new Range(dom, options);
      let sawNonNull = false;
      OUTER: for (const simpleSub of sub.set) {
        for (const simpleDom of dom.set) {
          const isSub = simpleSubset(simpleSub, simpleDom, options);
          sawNonNull = sawNonNull || isSub !== null;
          if (isSub) {
            continue OUTER;
          }
        }
        if (sawNonNull) {
          return false;
        }
      }
      return true;
    };
    var minimumVersionWithPreRelease = [new Comparator(">=0.0.0-0")];
    var minimumVersion = [new Comparator(">=0.0.0")];
    var simpleSubset = (sub, dom, options) => {
      if (sub === dom) {
        return true;
      }
      if (sub.length === 1 && sub[0].semver === ANY) {
        if (dom.length === 1 && dom[0].semver === ANY) {
          return true;
        } else if (options.includePrerelease) {
          sub = minimumVersionWithPreRelease;
        } else {
          sub = minimumVersion;
        }
      }
      if (dom.length === 1 && dom[0].semver === ANY) {
        if (options.includePrerelease) {
          return true;
        } else {
          dom = minimumVersion;
        }
      }
      const eqSet = /* @__PURE__ */ new Set();
      let gt, lt;
      for (const c3 of sub) {
        if (c3.operator === ">" || c3.operator === ">=") {
          gt = higherGT(gt, c3, options);
        } else if (c3.operator === "<" || c3.operator === "<=") {
          lt = lowerLT(lt, c3, options);
        } else {
          eqSet.add(c3.semver);
        }
      }
      if (eqSet.size > 1) {
        return null;
      }
      let gtltComp;
      if (gt && lt) {
        gtltComp = compare2(gt.semver, lt.semver, options);
        if (gtltComp > 0) {
          return null;
        } else if (gtltComp === 0 && (gt.operator !== ">=" || lt.operator !== "<=")) {
          return null;
        }
      }
      for (const eq of eqSet) {
        if (gt && !satisfies3(eq, String(gt), options)) {
          return null;
        }
        if (lt && !satisfies3(eq, String(lt), options)) {
          return null;
        }
        for (const c3 of dom) {
          if (!satisfies3(eq, String(c3), options)) {
            return false;
          }
        }
        return true;
      }
      let higher, lower;
      let hasDomLT, hasDomGT;
      let needDomLTPre = lt && !options.includePrerelease && lt.semver.prerelease.length ? lt.semver : false;
      let needDomGTPre = gt && !options.includePrerelease && gt.semver.prerelease.length ? gt.semver : false;
      if (needDomLTPre && needDomLTPre.prerelease.length === 1 && lt.operator === "<" && needDomLTPre.prerelease[0] === 0) {
        needDomLTPre = false;
      }
      for (const c3 of dom) {
        hasDomGT = hasDomGT || c3.operator === ">" || c3.operator === ">=";
        hasDomLT = hasDomLT || c3.operator === "<" || c3.operator === "<=";
        if (gt) {
          if (needDomGTPre) {
            if (c3.semver.prerelease && c3.semver.prerelease.length && c3.semver.major === needDomGTPre.major && c3.semver.minor === needDomGTPre.minor && c3.semver.patch === needDomGTPre.patch) {
              needDomGTPre = false;
            }
          }
          if (c3.operator === ">" || c3.operator === ">=") {
            higher = higherGT(gt, c3, options);
            if (higher === c3 && higher !== gt) {
              return false;
            }
          } else if (gt.operator === ">=" && !c3.test(gt.semver)) {
            return false;
          }
        }
        if (lt) {
          if (needDomLTPre) {
            if (c3.semver.prerelease && c3.semver.prerelease.length && c3.semver.major === needDomLTPre.major && c3.semver.minor === needDomLTPre.minor && c3.semver.patch === needDomLTPre.patch) {
              needDomLTPre = false;
            }
          }
          if (c3.operator === "<" || c3.operator === "<=") {
            lower = lowerLT(lt, c3, options);
            if (lower === c3 && lower !== lt) {
              return false;
            }
          } else if (lt.operator === "<=" && !c3.test(lt.semver)) {
            return false;
          }
        }
        if (!c3.operator && (lt || gt) && gtltComp !== 0) {
          return false;
        }
      }
      if (gt && hasDomLT && !lt && gtltComp !== 0) {
        return false;
      }
      if (lt && hasDomGT && !gt && gtltComp !== 0) {
        return false;
      }
      if (needDomGTPre || needDomLTPre) {
        return false;
      }
      return true;
    };
    var higherGT = (a2, b, options) => {
      if (!a2) {
        return b;
      }
      const comp = compare2(a2.semver, b.semver, options);
      return comp > 0 ? a2 : comp < 0 ? b : b.operator === ">" && a2.operator === ">=" ? b : a2;
    };
    var lowerLT = (a2, b, options) => {
      if (!a2) {
        return b;
      }
      const comp = compare2(a2.semver, b.semver, options);
      return comp < 0 ? a2 : comp > 0 ? b : b.operator === "<" && a2.operator === "<=" ? b : a2;
    };
    module2.exports = subset;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/index.js
var require_semver2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver/7.8.1/cd4d7f2ee0d950105ae4a406fca576c2a6e1b4e9abe00f6bfb7c21e76a6215bc/node_modules/semver/index.js"(exports2, module2) {
    "use strict";
    var internalRe = require_re();
    var constants5 = require_constants();
    var SemVer = require_semver();
    var identifiers = require_identifiers();
    var parse7 = require_parse();
    var valid2 = require_valid();
    var clean = require_clean();
    var inc2 = require_inc();
    var diff = require_diff();
    var major = require_major();
    var minor = require_minor();
    var patch = require_patch();
    var prerelease = require_prerelease();
    var compare2 = require_compare();
    var rcompare = require_rcompare();
    var compareLoose = require_compare_loose();
    var compareBuild = require_compare_build();
    var sort = require_sort();
    var rsort = require_rsort();
    var gt = require_gt();
    var lt = require_lt();
    var eq = require_eq();
    var neq = require_neq();
    var gte = require_gte();
    var lte = require_lte();
    var cmp = require_cmp();
    var coerce = require_coerce();
    var truncate = require_truncate();
    var Comparator = require_comparator();
    var Range = require_range();
    var satisfies3 = require_satisfies();
    var toComparators = require_to_comparators();
    var maxSatisfying = require_max_satisfying();
    var minSatisfying = require_min_satisfying();
    var minVersion = require_min_version();
    var validRange3 = require_valid2();
    var outside = require_outside();
    var gtr = require_gtr();
    var ltr = require_ltr();
    var intersects = require_intersects();
    var simplifyRange = require_simplify();
    var subset = require_subset();
    module2.exports = {
      parse: parse7,
      valid: valid2,
      clean,
      inc: inc2,
      diff,
      major,
      minor,
      patch,
      prerelease,
      compare: compare2,
      rcompare,
      compareLoose,
      compareBuild,
      sort,
      rsort,
      gt,
      lt,
      eq,
      neq,
      gte,
      lte,
      cmp,
      coerce,
      truncate,
      Comparator,
      Range,
      satisfies: satisfies3,
      toComparators,
      maxSatisfying,
      minSatisfying,
      minVersion,
      validRange: validRange3,
      outside,
      gtr,
      ltr,
      intersects,
      simplifyRange,
      subset,
      SemVer,
      re: internalRe.re,
      src: internalRe.src,
      tokens: internalRe.t,
      SEMVER_SPEC_VERSION: constants5.SEMVER_SPEC_VERSION,
      RELEASE_TYPES: constants5.RELEASE_TYPES,
      compareIdentifiers: identifiers.compareIdentifiers,
      rcompareIdentifiers: identifiers.rcompareIdentifiers
    };
  }
});

// ../deps/peer-range/lib/index.js
function isValidPeerRange(version2) {
  return typeof (0, import_semver.validRange)(version2) === "string" || version2.includes("workspace:") || version2.includes("catalog:");
}
var import_semver;
var init_lib7 = __esm({
  "../deps/peer-range/lib/index.js"() {
    "use strict";
    import_semver = __toESM(require_semver2(), 1);
  }
});

// ../core/types/lib/config.js
var init_config = __esm({
  "../core/types/lib/config.js"() {
    "use strict";
  }
});

// ../core/types/lib/misc.js
var DEPENDENCIES_FIELDS, DEPENDENCIES_OR_PEER_FIELDS;
var init_misc = __esm({
  "../core/types/lib/misc.js"() {
    "use strict";
    DEPENDENCIES_FIELDS = [
      "optionalDependencies",
      "dependencies",
      "devDependencies"
    ];
    DEPENDENCIES_OR_PEER_FIELDS = [
      ...DEPENDENCIES_FIELDS,
      "peerDependencies"
    ];
  }
});

// ../core/types/lib/options.js
var init_options = __esm({
  "../core/types/lib/options.js"() {
    "use strict";
  }
});

// ../core/types/lib/package.js
var init_package = __esm({
  "../core/types/lib/package.js"() {
    "use strict";
  }
});

// ../core/types/lib/peerDependencyIssues.js
var init_peerDependencyIssues2 = __esm({
  "../core/types/lib/peerDependencyIssues.js"() {
    "use strict";
  }
});

// ../core/types/lib/project.js
var init_project = __esm({
  "../core/types/lib/project.js"() {
    "use strict";
  }
});

// ../core/types/lib/index.js
var init_lib8 = __esm({
  "../core/types/lib/index.js"() {
    "use strict";
    init_config();
    init_misc();
    init_options();
    init_package();
    init_peerDependencyIssues2();
    init_project();
  }
});

// ../pkg-manifest/utils/lib/updateProjectManifestObject.js
function getPeerSpecifier(spec, resolvedVersion, pinnedVersion) {
  if (isValidPeerRange(spec))
    return spec;
  const rangeFromResolved = resolvedVersion ? createVersionSpecFromResolvedVersion(resolvedVersion, pinnedVersion) : null;
  return rangeFromResolved ?? "*";
}
function createVersionSpecFromResolvedVersion(resolvedVersion, pinnedVersion) {
  const parsed = import_semver2.default.parse(resolvedVersion);
  if (!parsed)
    return null;
  if (parsed.prerelease.length)
    return resolvedVersion;
  switch (pinnedVersion ?? "major") {
    case "none":
    case "major":
      return `^${resolvedVersion}`;
    case "minor":
      return `~${resolvedVersion}`;
    case "patch":
      return resolvedVersion;
    default:
      return `^${resolvedVersion}`;
  }
}
async function updateProjectManifestObject(prefix, packageManifest, packageSpecs) {
  for (const packageSpec of packageSpecs) {
    if (packageSpec.saveType) {
      const spec = packageSpec.bareSpecifier ?? findSpec(packageSpec.alias, packageManifest);
      if (spec) {
        packageManifest[packageSpec.saveType] = packageManifest[packageSpec.saveType] ?? {};
        defineDepEntry(packageManifest[packageSpec.saveType], packageSpec.alias, spec);
        for (const deptype of DEPENDENCIES_FIELDS) {
          if (deptype !== packageSpec.saveType) {
            deleteDepEntry(packageManifest[deptype], packageSpec.alias);
          }
        }
        if (packageSpec.peer === true) {
          packageManifest.peerDependencies = packageManifest.peerDependencies ?? {};
          defineDepEntry(packageManifest.peerDependencies, packageSpec.alias, getPeerSpecifier(spec, packageSpec.resolvedVersion, packageSpec.pinnedVersion));
        }
      }
    } else if (packageSpec.bareSpecifier) {
      const usedDepType = guessDependencyType(packageSpec.alias, packageManifest) ?? "dependencies";
      if (usedDepType !== "peerDependencies") {
        packageManifest[usedDepType] = packageManifest[usedDepType] ?? {};
        defineDepEntry(packageManifest[usedDepType], packageSpec.alias, packageSpec.bareSpecifier);
      }
    }
  }
  packageManifestLogger.debug({
    prefix,
    updated: packageManifest
  });
  return packageManifest;
}
function findSpec(alias, manifest) {
  const foundDepType = guessDependencyType(alias, manifest);
  if (foundDepType == null)
    return void 0;
  const deps = manifest[foundDepType];
  return Object.hasOwn(deps, alias) ? deps[alias] : void 0;
}
function guessDependencyType(alias, manifest) {
  return DEPENDENCIES_OR_PEER_FIELDS.find((depField) => {
    const deps = manifest[depField];
    if (deps == null || !Object.hasOwn(deps, alias))
      return false;
    return deps[alias] === "" || Boolean(deps[alias]);
  });
}
function defineDepEntry(target2, alias, value) {
  Object.defineProperty(target2, alias, {
    value,
    enumerable: true,
    writable: true,
    configurable: true
  });
}
function deleteDepEntry(target2, alias) {
  if (target2 != null && Object.hasOwn(target2, alias)) {
    delete target2[alias];
  }
}
var import_semver2;
var init_updateProjectManifestObject = __esm({
  "../pkg-manifest/utils/lib/updateProjectManifestObject.js"() {
    "use strict";
    init_lib6();
    init_lib7();
    init_lib8();
    import_semver2 = __toESM(require_semver2(), 1);
  }
});

// ../pkg-manifest/utils/lib/index.js
function filterDependenciesByType(manifest, include) {
  return {
    ...include.devDependencies ? manifest.devDependencies : {},
    ...include.dependencies ? manifest.dependencies : {},
    ...include.optionalDependencies ? manifest.optionalDependencies : {}
  };
}
function getAllDependenciesFromManifest2(manifest, opts2) {
  return {
    ...manifest.devDependencies,
    ...manifest.dependencies,
    ...manifest.optionalDependencies,
    ...opts2?.autoInstallPeers ? manifest.peerDependencies : {}
  };
}
var init_lib9 = __esm({
  "../pkg-manifest/utils/lib/index.js"() {
    "use strict";
    init_getAllUniqueSpecs();
    init_getSpecFromPackageManifest();
    init_convertEnginesRuntimeToDependencies();
    init_getDependencyTypeFromManifest();
    init_updateProjectManifestObject();
  }
});

// ../text/comments-parser/lib/CommentSpecifier.js
var init_CommentSpecifier = __esm({
  "../text/comments-parser/lib/CommentSpecifier.js"() {
    "use strict";
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/strip-comments-strings/1.2.0/36467a0524c5f1f6650027e0e1716346b8fe10bfd5e3ea90ee17f0af89c6b273/node_modules/strip-comments-strings/index.mjs
function replaceOccurences(strings2, str2, replacer2, { includeDelimiter = true }) {
  const isCallable = typeof replacer2 === "function";
  const n2 = strings2.length;
  for (let i2 = n2 - 1; i2 >= 0; --i2) {
    const info = strings2[i2];
    const replacement = isCallable ? replacer2(info, str2) : replacer2;
    if (includeDelimiter) {
      str2 = str2.substring(0, info.index - 1) + replacement + str2.substring(info.indexEnd + 1);
    } else {
      str2 = str2.substring(0, info.index) + replacement + str2.substring(info.indexEnd);
    }
  }
  return str2;
}
var COMMENT_TYPE, REGEX_TYPE, firstFound, getNextClosingElement, movePointerIndex, parseString, stripComments;
var init_strip_comments_strings = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/strip-comments-strings/1.2.0/36467a0524c5f1f6650027e0e1716346b8fe10bfd5e3ea90ee17f0af89c6b273/node_modules/strip-comments-strings/index.mjs"() {
    COMMENT_TYPE = {
      COMMENT_BLOCK: "commentBlock",
      COMMENT_LINE: "commentLine"
    };
    REGEX_TYPE = "regex";
    firstFound = (str2, stringStarters = null) => {
      stringStarters = stringStarters || [
        { name: "quote", char: "'" },
        { name: "literal", char: "`" },
        { name: "doubleQuote", char: '"' },
        { name: COMMENT_TYPE.COMMENT_BLOCK, char: "/*" },
        { name: COMMENT_TYPE.COMMENT_LINE, char: "//" },
        { name: REGEX_TYPE, char: "/" }
      ];
      let lastIndex = -1;
      let winner = -1;
      let item = {};
      for (let i2 = 0; i2 < stringStarters.length; ++i2) {
        item = stringStarters[i2];
        const index = str2.indexOf(item.char);
        if (index > -1 && lastIndex < 0) {
          lastIndex = index;
          winner = i2;
        }
        if (index > -1 && index < lastIndex) {
          lastIndex = index;
          winner = i2;
        }
        item.index = index;
      }
      if (winner === -1) {
        return {
          index: -1
        };
      }
      return {
        char: stringStarters[winner].char,
        name: stringStarters[winner].name,
        index: lastIndex
      };
    };
    getNextClosingElement = (str2, chars, { specialCharStart = null, specialCharEnd = null } = {}) => {
      if (!Array.isArray(chars)) {
        chars = [chars];
      }
      const n2 = str2.length;
      for (let i2 = 0; i2 < n2; ++i2) {
        const currentChar = str2[i2];
        if (currentChar === "\\") {
          ++i2;
          continue;
        }
        if (specialCharStart && currentChar === specialCharStart) {
          const newStr = str2.substring(i2);
          const stp = getNextClosingElement(newStr, specialCharEnd);
          i2 += stp.index;
        }
        if (chars.includes(currentChar)) {
          return {
            index: i2
          };
        }
      }
      return {
        index: -1
      };
    };
    movePointerIndex = (str2, index) => {
      str2 = str2.substring(index);
      return str2;
    };
    parseString = (str2) => {
      const originalString = str2;
      const originalStringLength = originalString.length;
      const detectedString = [];
      const detectedComments = [];
      const detectedRegex = [];
      do {
        let item = firstFound(str2);
        if (item.index === -1) {
          break;
        }
        const enter = {
          item
        };
        if (item.name === COMMENT_TYPE.COMMENT_BLOCK) {
          enter.type = item.name;
          str2 = movePointerIndex(str2, item.index);
          enter.index = originalStringLength - str2.length;
          const nextIndex = str2.indexOf("*/");
          if (nextIndex === -1) {
            throw new Error("Comment Block opened at position ... not enclosed");
          }
          str2 = movePointerIndex(str2, nextIndex + 2);
          enter.indexEnd = originalStringLength - str2.length;
          enter.content = originalString.substring(enter.index, enter.indexEnd);
          detectedComments.push(enter);
          continue;
        } else if (item.name === COMMENT_TYPE.COMMENT_LINE) {
          enter.type = item.name;
          str2 = movePointerIndex(str2, item.index);
          enter.index = originalStringLength - str2.length;
          let newLinePos = str2.indexOf("\n");
          if (newLinePos === -1) {
            enter.indexEnd = originalStringLength;
            enter.content = originalString.substring(enter.index, enter.indexEnd - 1);
            detectedComments.push(enter);
            break;
          }
          str2 = movePointerIndex(str2, newLinePos + 1);
          enter.indexEnd = originalStringLength - str2.length - 1;
          enter.content = originalString.substring(enter.index, enter.indexEnd);
          detectedComments.push(enter);
          continue;
        } else if (item.name === REGEX_TYPE) {
          enter.type = item.name;
          str2 = movePointerIndex(str2, item.index + 1);
          enter.index = originalStringLength - str2.length - 1;
          const nextItem2 = getNextClosingElement(str2, ["/", "\n"], { specialCharStart: "[", specialCharEnd: "]" });
          if (nextItem2.index === -1) {
            throw new Error(`SCT: (1005) Regex opened at position ${enter.index} not enclosed`);
          }
          str2 = movePointerIndex(str2, nextItem2.index + 1);
          enter.indexEnd = originalStringLength - str2.length;
          enter.content = originalString.substring(enter.index, enter.indexEnd);
          detectedRegex.push(enter);
          continue;
        }
        str2 = str2.substring(item.index + 1);
        enter.index = originalStringLength - str2.length;
        const nextItem = getNextClosingElement(str2, item.char);
        if (nextItem.index === -1) {
          throw new Error(`SCT: (1001) String opened at position ${enter.index} with a ${item.name} not enclosed`);
        }
        str2 = movePointerIndex(str2, nextItem.index + 1);
        enter.indexEnd = originalStringLength - str2.length - 1;
        enter.content = originalString.substring(enter.index, enter.indexEnd);
        detectedString.push(enter);
      } while (true);
      return {
        text: str2,
        strings: detectedString,
        comments: detectedComments,
        regexes: detectedRegex
      };
    };
    stripComments = (str2, replacer2 = "") => {
      const comments = parseString(str2).comments;
      str2 = replaceOccurences(comments, str2, replacer2, { includeDelimiter: false });
      return str2;
    };
  }
});

// ../text/comments-parser/lib/extractComments.js
function extractComments(text) {
  const hasFinalNewline = text.endsWith("\n");
  if (!hasFinalNewline) {
    text += "\n";
  }
  const { comments: rawComments } = parseString(text);
  const comments = [];
  let stripped = stripComments(text);
  if (!hasFinalNewline) {
    stripped = stripped.slice(0, -1);
  }
  let offset = 0;
  for (const comment of rawComments) {
    const preamble = stripped.slice(0, comment.index - offset);
    const lineStart = Math.max(preamble.lastIndexOf("\n"), 0);
    const priorLines = preamble.split("\n");
    let lineNumber = priorLines.length;
    let after = "";
    let hasAfter = false;
    if (lineNumber === 1) {
      if (preamble.trim().length === 0) {
        lineNumber = 0;
      }
    } else {
      after = priorLines[lineNumber - 2];
      hasAfter = true;
      if (priorLines[0].trim().length === 0) {
        lineNumber -= 1;
      }
    }
    let lineEnd = stripped.indexOf("\n", lineStart === 0 ? 0 : lineStart + 1);
    if (lineEnd < 0) {
      lineEnd = stripped.length;
    }
    const whitespaceMatch = stripped.slice(lineStart, comment.index - offset).match(/^\s*/);
    const newComment = {
      type: comment.type,
      content: comment.content,
      lineNumber,
      on: stripped.slice(lineStart, lineEnd),
      whitespace: whitespaceMatch ? whitespaceMatch[0] : ""
    };
    if (hasAfter) {
      newComment.after = after;
    }
    const nextLineEnd = stripped.indexOf("\n", lineEnd + 1);
    if (nextLineEnd >= 0) {
      newComment.before = stripped.slice(lineEnd, nextLineEnd);
    }
    comments.push(newComment);
    offset += comment.indexEnd - comment.index;
  }
  return {
    text: stripped,
    comments: comments.length ? comments : void 0,
    hasFinalNewline
  };
}
var init_extractComments = __esm({
  "../text/comments-parser/lib/extractComments.js"() {
    "use strict";
    init_strip_comments_strings();
  }
});

// ../text/comments-parser/lib/insertComments.js
function insertComments(json2, comments) {
  const jsonLines = json2.split("\n");
  const index = {};
  const canonicalizer = /[\s'"]/g;
  for (let i2 = 0; i2 < jsonLines.length; ++i2) {
    const key = jsonLines[i2].replace(canonicalizer, "");
    if (key in index) {
      index[key] = -1;
    } else {
      index[key] = i2;
    }
  }
  const jsonPrefix = {};
  for (const comment of comments) {
    let key = comment.on.replace(canonicalizer, "");
    if (key && index[key] !== void 0 && index[key] >= 0) {
      jsonLines[index[key]] += " " + comment.content;
      continue;
    }
    if (comment.before === void 0) {
      jsonLines[jsonLines.length - 1] += comment.whitespace + comment.content;
      continue;
    }
    let location = comment.lineNumber === 0 ? 0 : -1;
    if (location < 0) {
      key = comment.before.replace(canonicalizer, "");
      if (key && index[key] !== void 0) {
        location = index[key];
      }
    }
    if (location >= 0) {
      if (jsonPrefix[location]) {
        jsonPrefix[location] += " " + comment.content;
      } else {
        const inlineWhitespace = comment.whitespace[0] === "\n" ? comment.whitespace.slice(1) : comment.whitespace;
        jsonPrefix[location] = inlineWhitespace + comment.content;
      }
      continue;
    }
    if (comment.after) {
      key = comment.after.replace(canonicalizer, "");
      if (key && index[key] !== void 0 && index[key] >= 0) {
        jsonLines[index[key]] += comment.whitespace + comment.content;
        continue;
      }
    }
    location = comment.lineNumber - 1;
    let separator = " ";
    if (location >= jsonLines.length) {
      location = jsonLines.length - 1;
      separator = "\n";
    }
    jsonLines[location] += separator + comment.content + " /* [comment possibly relocated by pnpm] */";
  }
  for (let i2 = 0; i2 < jsonLines.length; ++i2) {
    if (jsonPrefix[i2]) {
      jsonLines[i2] = jsonPrefix[i2] + "\n" + jsonLines[i2];
    }
  }
  return jsonLines.join("\n");
}
var init_insertComments = __esm({
  "../text/comments-parser/lib/insertComments.js"() {
    "use strict";
  }
});

// ../text/comments-parser/lib/index.js
var init_lib10 = __esm({
  "../text/comments-parser/lib/index.js"() {
    "use strict";
    init_CommentSpecifier();
    init_extractComments();
    init_insertComments();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/json5/2.2.3/f162a9b4613e6c0b6bda605606cba5f1d6fe32bf2ae34c6f3248b8ba7db73c93/node_modules/json5/lib/unicode.js
var require_unicode = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/json5/2.2.3/f162a9b4613e6c0b6bda605606cba5f1d6fe32bf2ae34c6f3248b8ba7db73c93/node_modules/json5/lib/unicode.js"(exports2, module2) {
    module2.exports.Space_Separator = /[\u1680\u2000-\u200A\u202F\u205F\u3000]/;
    module2.exports.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]/;
    module2.exports.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]/;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/json5/2.2.3/f162a9b4613e6c0b6bda605606cba5f1d6fe32bf2ae34c6f3248b8ba7db73c93/node_modules/json5/lib/util.js
var require_util = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/json5/2.2.3/f162a9b4613e6c0b6bda605606cba5f1d6fe32bf2ae34c6f3248b8ba7db73c93/node_modules/json5/lib/util.js"(exports2, module2) {
    var unicode = require_unicode();
    module2.exports = {
      isSpaceSeparator(c3) {
        return typeof c3 === "string" && unicode.Space_Separator.test(c3);
      },
      isIdStartChar(c3) {
        return typeof c3 === "string" && (c3 >= "a" && c3 <= "z" || c3 >= "A" && c3 <= "Z" || c3 === "$" || c3 === "_" || unicode.ID_Start.test(c3));
      },
      isIdContinueChar(c3) {
        return typeof c3 === "string" && (c3 >= "a" && c3 <= "z" || c3 >= "A" && c3 <= "Z" || c3 >= "0" && c3 <= "9" || c3 === "$" || c3 === "_" || c3 === "\u200C" || c3 === "\u200D" || unicode.ID_Continue.test(c3));
      },
      isDigit(c3) {
        return typeof c3 === "string" && /[0-9]/.test(c3);
      },
      isHexDigit(c3) {
        return typeof c3 === "string" && /[0-9A-Fa-f]/.test(c3);
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/json5/2.2.3/f162a9b4613e6c0b6bda605606cba5f1d6fe32bf2ae34c6f3248b8ba7db73c93/node_modules/json5/lib/parse.js
var require_parse2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/json5/2.2.3/f162a9b4613e6c0b6bda605606cba5f1d6fe32bf2ae34c6f3248b8ba7db73c93/node_modules/json5/lib/parse.js"(exports2, module2) {
    var util56 = require_util();
    var source;
    var parseState;
    var stack;
    var pos;
    var line;
    var column;
    var token;
    var key;
    var root;
    module2.exports = function parse7(text, reviver) {
      source = String(text);
      parseState = "start";
      stack = [];
      pos = 0;
      line = 1;
      column = 0;
      token = void 0;
      key = void 0;
      root = void 0;
      do {
        token = lex();
        parseStates[parseState]();
      } while (token.type !== "eof");
      if (typeof reviver === "function") {
        return internalize({ "": root }, "", reviver);
      }
      return root;
    };
    function internalize(holder, name, reviver) {
      const value = holder[name];
      if (value != null && typeof value === "object") {
        if (Array.isArray(value)) {
          for (let i2 = 0; i2 < value.length; i2++) {
            const key2 = String(i2);
            const replacement = internalize(value, key2, reviver);
            if (replacement === void 0) {
              delete value[key2];
            } else {
              Object.defineProperty(value, key2, {
                value: replacement,
                writable: true,
                enumerable: true,
                configurable: true
              });
            }
          }
        } else {
          for (const key2 in value) {
            const replacement = internalize(value, key2, reviver);
            if (replacement === void 0) {
              delete value[key2];
            } else {
              Object.defineProperty(value, key2, {
                value: replacement,
                writable: true,
                enumerable: true,
                configurable: true
              });
            }
          }
        }
      }
      return reviver.call(holder, name, value);
    }
    var lexState;
    var buffer3;
    var doubleQuote;
    var sign;
    var c3;
    function lex() {
      lexState = "default";
      buffer3 = "";
      doubleQuote = false;
      sign = 1;
      for (; ; ) {
        c3 = peek();
        const token2 = lexStates[lexState]();
        if (token2) {
          return token2;
        }
      }
    }
    function peek() {
      if (source[pos]) {
        return String.fromCodePoint(source.codePointAt(pos));
      }
    }
    function read2() {
      const c4 = peek();
      if (c4 === "\n") {
        line++;
        column = 0;
      } else if (c4) {
        column += c4.length;
      } else {
        column++;
      }
      if (c4) {
        pos += c4.length;
      }
      return c4;
    }
    var lexStates = {
      default() {
        switch (c3) {
          case "	":
          case "\v":
          case "\f":
          case " ":
          case "\xA0":
          case "\uFEFF":
          case "\n":
          case "\r":
          case "\u2028":
          case "\u2029":
            read2();
            return;
          case "/":
            read2();
            lexState = "comment";
            return;
          case void 0:
            read2();
            return newToken("eof");
        }
        if (util56.isSpaceSeparator(c3)) {
          read2();
          return;
        }
        return lexStates[parseState]();
      },
      comment() {
        switch (c3) {
          case "*":
            read2();
            lexState = "multiLineComment";
            return;
          case "/":
            read2();
            lexState = "singleLineComment";
            return;
        }
        throw invalidChar(read2());
      },
      multiLineComment() {
        switch (c3) {
          case "*":
            read2();
            lexState = "multiLineCommentAsterisk";
            return;
          case void 0:
            throw invalidChar(read2());
        }
        read2();
      },
      multiLineCommentAsterisk() {
        switch (c3) {
          case "*":
            read2();
            return;
          case "/":
            read2();
            lexState = "default";
            return;
          case void 0:
            throw invalidChar(read2());
        }
        read2();
        lexState = "multiLineComment";
      },
      singleLineComment() {
        switch (c3) {
          case "\n":
          case "\r":
          case "\u2028":
          case "\u2029":
            read2();
            lexState = "default";
            return;
          case void 0:
            read2();
            return newToken("eof");
        }
        read2();
      },
      value() {
        switch (c3) {
          case "{":
          case "[":
            return newToken("punctuator", read2());
          case "n":
            read2();
            literal("ull");
            return newToken("null", null);
          case "t":
            read2();
            literal("rue");
            return newToken("boolean", true);
          case "f":
            read2();
            literal("alse");
            return newToken("boolean", false);
          case "-":
          case "+":
            if (read2() === "-") {
              sign = -1;
            }
            lexState = "sign";
            return;
          case ".":
            buffer3 = read2();
            lexState = "decimalPointLeading";
            return;
          case "0":
            buffer3 = read2();
            lexState = "zero";
            return;
          case "1":
          case "2":
          case "3":
          case "4":
          case "5":
          case "6":
          case "7":
          case "8":
          case "9":
            buffer3 = read2();
            lexState = "decimalInteger";
            return;
          case "I":
            read2();
            literal("nfinity");
            return newToken("numeric", Infinity);
          case "N":
            read2();
            literal("aN");
            return newToken("numeric", NaN);
          case '"':
          case "'":
            doubleQuote = read2() === '"';
            buffer3 = "";
            lexState = "string";
            return;
        }
        throw invalidChar(read2());
      },
      identifierNameStartEscape() {
        if (c3 !== "u") {
          throw invalidChar(read2());
        }
        read2();
        const u4 = unicodeEscape();
        switch (u4) {
          case "$":
          case "_":
            break;
          default:
            if (!util56.isIdStartChar(u4)) {
              throw invalidIdentifier();
            }
            break;
        }
        buffer3 += u4;
        lexState = "identifierName";
      },
      identifierName() {
        switch (c3) {
          case "$":
          case "_":
          case "\u200C":
          case "\u200D":
            buffer3 += read2();
            return;
          case "\\":
            read2();
            lexState = "identifierNameEscape";
            return;
        }
        if (util56.isIdContinueChar(c3)) {
          buffer3 += read2();
          return;
        }
        return newToken("identifier", buffer3);
      },
      identifierNameEscape() {
        if (c3 !== "u") {
          throw invalidChar(read2());
        }
        read2();
        const u4 = unicodeEscape();
        switch (u4) {
          case "$":
          case "_":
          case "\u200C":
          case "\u200D":
            break;
          default:
            if (!util56.isIdContinueChar(u4)) {
              throw invalidIdentifier();
            }
            break;
        }
        buffer3 += u4;
        lexState = "identifierName";
      },
      sign() {
        switch (c3) {
          case ".":
            buffer3 = read2();
            lexState = "decimalPointLeading";
            return;
          case "0":
            buffer3 = read2();
            lexState = "zero";
            return;
          case "1":
          case "2":
          case "3":
          case "4":
          case "5":
          case "6":
          case "7":
          case "8":
          case "9":
            buffer3 = read2();
            lexState = "decimalInteger";
            return;
          case "I":
            read2();
            literal("nfinity");
            return newToken("numeric", sign * Infinity);
          case "N":
            read2();
            literal("aN");
            return newToken("numeric", NaN);
        }
        throw invalidChar(read2());
      },
      zero() {
        switch (c3) {
          case ".":
            buffer3 += read2();
            lexState = "decimalPoint";
            return;
          case "e":
          case "E":
            buffer3 += read2();
            lexState = "decimalExponent";
            return;
          case "x":
          case "X":
            buffer3 += read2();
            lexState = "hexadecimal";
            return;
        }
        return newToken("numeric", sign * 0);
      },
      decimalInteger() {
        switch (c3) {
          case ".":
            buffer3 += read2();
            lexState = "decimalPoint";
            return;
          case "e":
          case "E":
            buffer3 += read2();
            lexState = "decimalExponent";
            return;
        }
        if (util56.isDigit(c3)) {
          buffer3 += read2();
          return;
        }
        return newToken("numeric", sign * Number(buffer3));
      },
      decimalPointLeading() {
        if (util56.isDigit(c3)) {
          buffer3 += read2();
          lexState = "decimalFraction";
          return;
        }
        throw invalidChar(read2());
      },
      decimalPoint() {
        switch (c3) {
          case "e":
          case "E":
            buffer3 += read2();
            lexState = "decimalExponent";
            return;
        }
        if (util56.isDigit(c3)) {
          buffer3 += read2();
          lexState = "decimalFraction";
          return;
        }
        return newToken("numeric", sign * Number(buffer3));
      },
      decimalFraction() {
        switch (c3) {
          case "e":
          case "E":
            buffer3 += read2();
            lexState = "decimalExponent";
            return;
        }
        if (util56.isDigit(c3)) {
          buffer3 += read2();
          return;
        }
        return newToken("numeric", sign * Number(buffer3));
      },
      decimalExponent() {
        switch (c3) {
          case "+":
          case "-":
            buffer3 += read2();
            lexState = "decimalExponentSign";
            return;
        }
        if (util56.isDigit(c3)) {
          buffer3 += read2();
          lexState = "decimalExponentInteger";
          return;
        }
        throw invalidChar(read2());
      },
      decimalExponentSign() {
        if (util56.isDigit(c3)) {
          buffer3 += read2();
          lexState = "decimalExponentInteger";
          return;
        }
        throw invalidChar(read2());
      },
      decimalExponentInteger() {
        if (util56.isDigit(c3)) {
          buffer3 += read2();
          return;
        }
        return newToken("numeric", sign * Number(buffer3));
      },
      hexadecimal() {
        if (util56.isHexDigit(c3)) {
          buffer3 += read2();
          lexState = "hexadecimalInteger";
          return;
        }
        throw invalidChar(read2());
      },
      hexadecimalInteger() {
        if (util56.isHexDigit(c3)) {
          buffer3 += read2();
          return;
        }
        return newToken("numeric", sign * Number(buffer3));
      },
      string() {
        switch (c3) {
          case "\\":
            read2();
            buffer3 += escape();
            return;
          case '"':
            if (doubleQuote) {
              read2();
              return newToken("string", buffer3);
            }
            buffer3 += read2();
            return;
          case "'":
            if (!doubleQuote) {
              read2();
              return newToken("string", buffer3);
            }
            buffer3 += read2();
            return;
          case "\n":
          case "\r":
            throw invalidChar(read2());
          case "\u2028":
          case "\u2029":
            separatorChar(c3);
            break;
          case void 0:
            throw invalidChar(read2());
        }
        buffer3 += read2();
      },
      start() {
        switch (c3) {
          case "{":
          case "[":
            return newToken("punctuator", read2());
        }
        lexState = "value";
      },
      beforePropertyName() {
        switch (c3) {
          case "$":
          case "_":
            buffer3 = read2();
            lexState = "identifierName";
            return;
          case "\\":
            read2();
            lexState = "identifierNameStartEscape";
            return;
          case "}":
            return newToken("punctuator", read2());
          case '"':
          case "'":
            doubleQuote = read2() === '"';
            lexState = "string";
            return;
        }
        if (util56.isIdStartChar(c3)) {
          buffer3 += read2();
          lexState = "identifierName";
          return;
        }
        throw invalidChar(read2());
      },
      afterPropertyName() {
        if (c3 === ":") {
          return newToken("punctuator", read2());
        }
        throw invalidChar(read2());
      },
      beforePropertyValue() {
        lexState = "value";
      },
      afterPropertyValue() {
        switch (c3) {
          case ",":
          case "}":
            return newToken("punctuator", read2());
        }
        throw invalidChar(read2());
      },
      beforeArrayValue() {
        if (c3 === "]") {
          return newToken("punctuator", read2());
        }
        lexState = "value";
      },
      afterArrayValue() {
        switch (c3) {
          case ",":
          case "]":
            return newToken("punctuator", read2());
        }
        throw invalidChar(read2());
      },
      end() {
        throw invalidChar(read2());
      }
    };
    function newToken(type4, value) {
      return {
        type: type4,
        value,
        line,
        column
      };
    }
    function literal(s) {
      for (const c4 of s) {
        const p = peek();
        if (p !== c4) {
          throw invalidChar(read2());
        }
        read2();
      }
    }
    function escape() {
      const c4 = peek();
      switch (c4) {
        case "b":
          read2();
          return "\b";
        case "f":
          read2();
          return "\f";
        case "n":
          read2();
          return "\n";
        case "r":
          read2();
          return "\r";
        case "t":
          read2();
          return "	";
        case "v":
          read2();
          return "\v";
        case "0":
          read2();
          if (util56.isDigit(peek())) {
            throw invalidChar(read2());
          }
          return "\0";
        case "x":
          read2();
          return hexEscape();
        case "u":
          read2();
          return unicodeEscape();
        case "\n":
        case "\u2028":
        case "\u2029":
          read2();
          return "";
        case "\r":
          read2();
          if (peek() === "\n") {
            read2();
          }
          return "";
        case "1":
        case "2":
        case "3":
        case "4":
        case "5":
        case "6":
        case "7":
        case "8":
        case "9":
          throw invalidChar(read2());
        case void 0:
          throw invalidChar(read2());
      }
      return read2();
    }
    function hexEscape() {
      let buffer4 = "";
      let c4 = peek();
      if (!util56.isHexDigit(c4)) {
        throw invalidChar(read2());
      }
      buffer4 += read2();
      c4 = peek();
      if (!util56.isHexDigit(c4)) {
        throw invalidChar(read2());
      }
      buffer4 += read2();
      return String.fromCodePoint(parseInt(buffer4, 16));
    }
    function unicodeEscape() {
      let buffer4 = "";
      let count2 = 4;
      while (count2-- > 0) {
        const c4 = peek();
        if (!util56.isHexDigit(c4)) {
          throw invalidChar(read2());
        }
        buffer4 += read2();
      }
      return String.fromCodePoint(parseInt(buffer4, 16));
    }
    var parseStates = {
      start() {
        if (token.type === "eof") {
          throw invalidEOF();
        }
        push();
      },
      beforePropertyName() {
        switch (token.type) {
          case "identifier":
          case "string":
            key = token.value;
            parseState = "afterPropertyName";
            return;
          case "punctuator":
            pop();
            return;
          case "eof":
            throw invalidEOF();
        }
      },
      afterPropertyName() {
        if (token.type === "eof") {
          throw invalidEOF();
        }
        parseState = "beforePropertyValue";
      },
      beforePropertyValue() {
        if (token.type === "eof") {
          throw invalidEOF();
        }
        push();
      },
      beforeArrayValue() {
        if (token.type === "eof") {
          throw invalidEOF();
        }
        if (token.type === "punctuator" && token.value === "]") {
          pop();
          return;
        }
        push();
      },
      afterPropertyValue() {
        if (token.type === "eof") {
          throw invalidEOF();
        }
        switch (token.value) {
          case ",":
            parseState = "beforePropertyName";
            return;
          case "}":
            pop();
        }
      },
      afterArrayValue() {
        if (token.type === "eof") {
          throw invalidEOF();
        }
        switch (token.value) {
          case ",":
            parseState = "beforeArrayValue";
            return;
          case "]":
            pop();
        }
      },
      end() {
      }
    };
    function push() {
      let value;
      switch (token.type) {
        case "punctuator":
          switch (token.value) {
            case "{":
              value = {};
              break;
            case "[":
              value = [];
              break;
          }
          break;
        case "null":
        case "boolean":
        case "numeric":
        case "string":
          value = token.value;
          break;
      }
      if (root === void 0) {
        root = value;
      } else {
        const parent = stack[stack.length - 1];
        if (Array.isArray(parent)) {
          parent.push(value);
        } else {
          Object.defineProperty(parent, key, {
            value,
            writable: true,
            enumerable: true,
            configurable: true
          });
        }
      }
      if (value !== null && typeof value === "object") {
        stack.push(value);
        if (Array.isArray(value)) {
          parseState = "beforeArrayValue";
        } else {
          parseState = "beforePropertyName";
        }
      } else {
        const current = stack[stack.length - 1];
        if (current == null) {
          parseState = "end";
        } else if (Array.isArray(current)) {
          parseState = "afterArrayValue";
        } else {
          parseState = "afterPropertyValue";
        }
      }
    }
    function pop() {
      stack.pop();
      const current = stack[stack.length - 1];
      if (current == null) {
        parseState = "end";
      } else if (Array.isArray(current)) {
        parseState = "afterArrayValue";
      } else {
        parseState = "afterPropertyValue";
      }
    }
    function invalidChar(c4) {
      if (c4 === void 0) {
        return syntaxError(`JSON5: invalid end of input at ${line}:${column}`);
      }
      return syntaxError(`JSON5: invalid character '${formatChar(c4)}' at ${line}:${column}`);
    }
    function invalidEOF() {
      return syntaxError(`JSON5: invalid end of input at ${line}:${column}`);
    }
    function invalidIdentifier() {
      column -= 5;
      return syntaxError(`JSON5: invalid identifier character at ${line}:${column}`);
    }
    function separatorChar(c4) {
      console.warn(`JSON5: '${formatChar(c4)}' in strings is not valid ECMAScript; consider escaping`);
    }
    function formatChar(c4) {
      const replacements2 = {
        "'": "\\'",
        '"': '\\"',
        "\\": "\\\\",
        "\b": "\\b",
        "\f": "\\f",
        "\n": "\\n",
        "\r": "\\r",
        "	": "\\t",
        "\v": "\\v",
        "\0": "\\0",
        "\u2028": "\\u2028",
        "\u2029": "\\u2029"
      };
      if (replacements2[c4]) {
        return replacements2[c4];
      }
      if (c4 < " ") {
        const hexString = c4.charCodeAt(0).toString(16);
        return "\\x" + ("00" + hexString).substring(hexString.length);
      }
      return c4;
    }
    function syntaxError(message) {
      const err = new SyntaxError(message);
      err.lineNumber = line;
      err.columnNumber = column;
      return err;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/json5/2.2.3/f162a9b4613e6c0b6bda605606cba5f1d6fe32bf2ae34c6f3248b8ba7db73c93/node_modules/json5/lib/stringify.js
var require_stringify = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/json5/2.2.3/f162a9b4613e6c0b6bda605606cba5f1d6fe32bf2ae34c6f3248b8ba7db73c93/node_modules/json5/lib/stringify.js"(exports2, module2) {
    var util56 = require_util();
    module2.exports = function stringify(value, replacer2, space) {
      const stack = [];
      let indent = "";
      let propertyList;
      let replacerFunc;
      let gap = "";
      let quote2;
      if (replacer2 != null && typeof replacer2 === "object" && !Array.isArray(replacer2)) {
        space = replacer2.space;
        quote2 = replacer2.quote;
        replacer2 = replacer2.replacer;
      }
      if (typeof replacer2 === "function") {
        replacerFunc = replacer2;
      } else if (Array.isArray(replacer2)) {
        propertyList = [];
        for (const v of replacer2) {
          let item;
          if (typeof v === "string") {
            item = v;
          } else if (typeof v === "number" || v instanceof String || v instanceof Number) {
            item = String(v);
          }
          if (item !== void 0 && propertyList.indexOf(item) < 0) {
            propertyList.push(item);
          }
        }
      }
      if (space instanceof Number) {
        space = Number(space);
      } else if (space instanceof String) {
        space = String(space);
      }
      if (typeof space === "number") {
        if (space > 0) {
          space = Math.min(10, Math.floor(space));
          gap = "          ".substr(0, space);
        }
      } else if (typeof space === "string") {
        gap = space.substr(0, 10);
      }
      return serializeProperty("", { "": value });
      function serializeProperty(key, holder) {
        let value2 = holder[key];
        if (value2 != null) {
          if (typeof value2.toJSON5 === "function") {
            value2 = value2.toJSON5(key);
          } else if (typeof value2.toJSON === "function") {
            value2 = value2.toJSON(key);
          }
        }
        if (replacerFunc) {
          value2 = replacerFunc.call(holder, key, value2);
        }
        if (value2 instanceof Number) {
          value2 = Number(value2);
        } else if (value2 instanceof String) {
          value2 = String(value2);
        } else if (value2 instanceof Boolean) {
          value2 = value2.valueOf();
        }
        switch (value2) {
          case null:
            return "null";
          case true:
            return "true";
          case false:
            return "false";
        }
        if (typeof value2 === "string") {
          return quoteString2(value2, false);
        }
        if (typeof value2 === "number") {
          return String(value2);
        }
        if (typeof value2 === "object") {
          return Array.isArray(value2) ? serializeArray(value2) : serializeObject(value2);
        }
        return void 0;
      }
      function quoteString2(value2) {
        const quotes = {
          "'": 0.1,
          '"': 0.2
        };
        const replacements2 = {
          "'": "\\'",
          '"': '\\"',
          "\\": "\\\\",
          "\b": "\\b",
          "\f": "\\f",
          "\n": "\\n",
          "\r": "\\r",
          "	": "\\t",
          "\v": "\\v",
          "\0": "\\0",
          "\u2028": "\\u2028",
          "\u2029": "\\u2029"
        };
        let product = "";
        for (let i2 = 0; i2 < value2.length; i2++) {
          const c3 = value2[i2];
          switch (c3) {
            case "'":
            case '"':
              quotes[c3]++;
              product += c3;
              continue;
            case "\0":
              if (util56.isDigit(value2[i2 + 1])) {
                product += "\\x00";
                continue;
              }
          }
          if (replacements2[c3]) {
            product += replacements2[c3];
            continue;
          }
          if (c3 < " ") {
            let hexString = c3.charCodeAt(0).toString(16);
            product += "\\x" + ("00" + hexString).substring(hexString.length);
            continue;
          }
          product += c3;
        }
        const quoteChar = quote2 || Object.keys(quotes).reduce((a2, b) => quotes[a2] < quotes[b] ? a2 : b);
        product = product.replace(new RegExp(quoteChar, "g"), replacements2[quoteChar]);
        return quoteChar + product + quoteChar;
      }
      function serializeObject(value2) {
        if (stack.indexOf(value2) >= 0) {
          throw TypeError("Converting circular structure to JSON5");
        }
        stack.push(value2);
        let stepback = indent;
        indent = indent + gap;
        let keys4 = propertyList || Object.keys(value2);
        let partial = [];
        for (const key of keys4) {
          const propertyString = serializeProperty(key, value2);
          if (propertyString !== void 0) {
            let member = serializeKey(key) + ":";
            if (gap !== "") {
              member += " ";
            }
            member += propertyString;
            partial.push(member);
          }
        }
        let final;
        if (partial.length === 0) {
          final = "{}";
        } else {
          let properties;
          if (gap === "") {
            properties = partial.join(",");
            final = "{" + properties + "}";
          } else {
            let separator = ",\n" + indent;
            properties = partial.join(separator);
            final = "{\n" + indent + properties + ",\n" + stepback + "}";
          }
        }
        stack.pop();
        indent = stepback;
        return final;
      }
      function serializeKey(key) {
        if (key.length === 0) {
          return quoteString2(key, true);
        }
        const firstChar = String.fromCodePoint(key.codePointAt(0));
        if (!util56.isIdStartChar(firstChar)) {
          return quoteString2(key, true);
        }
        for (let i2 = firstChar.length; i2 < key.length; i2++) {
          if (!util56.isIdContinueChar(String.fromCodePoint(key.codePointAt(i2)))) {
            return quoteString2(key, true);
          }
        }
        return key;
      }
      function serializeArray(value2) {
        if (stack.indexOf(value2) >= 0) {
          throw TypeError("Converting circular structure to JSON5");
        }
        stack.push(value2);
        let stepback = indent;
        indent = indent + gap;
        let partial = [];
        for (let i2 = 0; i2 < value2.length; i2++) {
          const propertyString = serializeProperty(String(i2), value2);
          partial.push(propertyString !== void 0 ? propertyString : "null");
        }
        let final;
        if (partial.length === 0) {
          final = "[]";
        } else {
          if (gap === "") {
            let properties = partial.join(",");
            final = "[" + properties + "]";
          } else {
            let separator = ",\n" + indent;
            let properties = partial.join(separator);
            final = "[\n" + indent + properties + ",\n" + stepback + "]";
          }
        }
        stack.pop();
        indent = stepback;
        return final;
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/json5/2.2.3/f162a9b4613e6c0b6bda605606cba5f1d6fe32bf2ae34c6f3248b8ba7db73c93/node_modules/json5/lib/index.js
var require_lib = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/json5/2.2.3/f162a9b4613e6c0b6bda605606cba5f1d6fe32bf2ae34c6f3248b8ba7db73c93/node_modules/json5/lib/index.js"(exports2, module2) {
    var parse7 = require_parse2();
    var stringify = require_stringify();
    var JSON53 = {
      parse: parse7,
      stringify
    };
    module2.exports = JSON53;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/signal-exit/4.1.0/03c01b974932dd7697f8480d6655f349321edaf97b16deb799df3fcd267f2475/node_modules/signal-exit/dist/cjs/signals.js
var require_signals = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/signal-exit/4.1.0/03c01b974932dd7697f8480d6655f349321edaf97b16deb799df3fcd267f2475/node_modules/signal-exit/dist/cjs/signals.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.signals = void 0;
    exports2.signals = [];
    exports2.signals.push("SIGHUP", "SIGINT", "SIGTERM");
    if (process.platform !== "win32") {
      exports2.signals.push(
        "SIGALRM",
        "SIGABRT",
        "SIGVTALRM",
        "SIGXCPU",
        "SIGXFSZ",
        "SIGUSR2",
        "SIGTRAP",
        "SIGSYS",
        "SIGQUIT",
        "SIGIOT"
        // should detect profiler and enable/disable accordingly.
        // see #21
        // 'SIGPROF'
      );
    }
    if (process.platform === "linux") {
      exports2.signals.push("SIGIO", "SIGPOLL", "SIGPWR", "SIGSTKFLT");
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/signal-exit/4.1.0/03c01b974932dd7697f8480d6655f349321edaf97b16deb799df3fcd267f2475/node_modules/signal-exit/dist/cjs/index.js
var require_cjs = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/signal-exit/4.1.0/03c01b974932dd7697f8480d6655f349321edaf97b16deb799df3fcd267f2475/node_modules/signal-exit/dist/cjs/index.js"(exports2) {
    "use strict";
    var _a;
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.unload = exports2.load = exports2.onExit = exports2.signals = void 0;
    var signals_js_1 = require_signals();
    Object.defineProperty(exports2, "signals", { enumerable: true, get: function() {
      return signals_js_1.signals;
    } });
    var processOk2 = (process18) => !!process18 && typeof process18 === "object" && typeof process18.removeListener === "function" && typeof process18.emit === "function" && typeof process18.reallyExit === "function" && typeof process18.listeners === "function" && typeof process18.kill === "function" && typeof process18.pid === "number" && typeof process18.on === "function";
    var kExitEmitter2 = /* @__PURE__ */ Symbol.for("signal-exit emitter");
    var global3 = globalThis;
    var ObjectDefineProperty2 = Object.defineProperty.bind(Object);
    var Emitter2 = class {
      emitted = {
        afterExit: false,
        exit: false
      };
      listeners = {
        afterExit: [],
        exit: []
      };
      count = 0;
      id = Math.random();
      constructor() {
        if (global3[kExitEmitter2]) {
          return global3[kExitEmitter2];
        }
        ObjectDefineProperty2(global3, kExitEmitter2, {
          value: this,
          writable: false,
          enumerable: false,
          configurable: false
        });
      }
      on(ev, fn) {
        this.listeners[ev].push(fn);
      }
      removeListener(ev, fn) {
        const list2 = this.listeners[ev];
        const i2 = list2.indexOf(fn);
        if (i2 === -1) {
          return;
        }
        if (i2 === 0 && list2.length === 1) {
          list2.length = 0;
        } else {
          list2.splice(i2, 1);
        }
      }
      emit(ev, code, signal) {
        if (this.emitted[ev]) {
          return false;
        }
        this.emitted[ev] = true;
        let ret2 = false;
        for (const fn of this.listeners[ev]) {
          ret2 = fn(code, signal) === true || ret2;
        }
        if (ev === "exit") {
          ret2 = this.emit("afterExit", code, signal) || ret2;
        }
        return ret2;
      }
    };
    var SignalExitBase2 = class {
    };
    var signalExitWrap2 = (handler77) => {
      return {
        onExit(cb, opts2) {
          return handler77.onExit(cb, opts2);
        },
        load() {
          return handler77.load();
        },
        unload() {
          return handler77.unload();
        }
      };
    };
    var SignalExitFallback2 = class extends SignalExitBase2 {
      onExit() {
        return () => {
        };
      }
      load() {
      }
      unload() {
      }
    };
    var SignalExit2 = class extends SignalExitBase2 {
      // "SIGHUP" throws an `ENOSYS` error on Windows,
      // so use a supported signal instead
      /* c8 ignore start */
      #hupSig = process17.platform === "win32" ? "SIGINT" : "SIGHUP";
      /* c8 ignore stop */
      #emitter = new Emitter2();
      #process;
      #originalProcessEmit;
      #originalProcessReallyExit;
      #sigListeners = {};
      #loaded = false;
      constructor(process18) {
        super();
        this.#process = process18;
        this.#sigListeners = {};
        for (const sig of signals_js_1.signals) {
          this.#sigListeners[sig] = () => {
            const listeners = this.#process.listeners(sig);
            let { count: count2 } = this.#emitter;
            const p = process18;
            if (typeof p.__signal_exit_emitter__ === "object" && typeof p.__signal_exit_emitter__.count === "number") {
              count2 += p.__signal_exit_emitter__.count;
            }
            if (listeners.length === count2) {
              this.unload();
              const ret2 = this.#emitter.emit("exit", null, sig);
              const s = sig === "SIGHUP" ? this.#hupSig : sig;
              if (!ret2)
                process18.kill(process18.pid, s);
            }
          };
        }
        this.#originalProcessReallyExit = process18.reallyExit;
        this.#originalProcessEmit = process18.emit;
      }
      onExit(cb, opts2) {
        if (!processOk2(this.#process)) {
          return () => {
          };
        }
        if (this.#loaded === false) {
          this.load();
        }
        const ev = opts2?.alwaysLast ? "afterExit" : "exit";
        this.#emitter.on(ev, cb);
        return () => {
          this.#emitter.removeListener(ev, cb);
          if (this.#emitter.listeners["exit"].length === 0 && this.#emitter.listeners["afterExit"].length === 0) {
            this.unload();
          }
        };
      }
      load() {
        if (this.#loaded) {
          return;
        }
        this.#loaded = true;
        this.#emitter.count += 1;
        for (const sig of signals_js_1.signals) {
          try {
            const fn = this.#sigListeners[sig];
            if (fn)
              this.#process.on(sig, fn);
          } catch (_) {
          }
        }
        this.#process.emit = (ev, ...a2) => {
          return this.#processEmit(ev, ...a2);
        };
        this.#process.reallyExit = (code) => {
          return this.#processReallyExit(code);
        };
      }
      unload() {
        if (!this.#loaded) {
          return;
        }
        this.#loaded = false;
        signals_js_1.signals.forEach((sig) => {
          const listener = this.#sigListeners[sig];
          if (!listener) {
            throw new Error("Listener not defined for signal: " + sig);
          }
          try {
            this.#process.removeListener(sig, listener);
          } catch (_) {
          }
        });
        this.#process.emit = this.#originalProcessEmit;
        this.#process.reallyExit = this.#originalProcessReallyExit;
        this.#emitter.count -= 1;
      }
      #processReallyExit(code) {
        if (!processOk2(this.#process)) {
          return 0;
        }
        this.#process.exitCode = code || 0;
        this.#emitter.emit("exit", this.#process.exitCode, null);
        return this.#originalProcessReallyExit.call(this.#process, this.#process.exitCode);
      }
      #processEmit(ev, ...args) {
        const og = this.#originalProcessEmit;
        if (ev === "exit" && processOk2(this.#process)) {
          if (typeof args[0] === "number") {
            this.#process.exitCode = args[0];
          }
          const ret2 = og.call(this.#process, ev, ...args);
          this.#emitter.emit("exit", this.#process.exitCode, null);
          return ret2;
        } else {
          return og.call(this.#process, ev, ...args);
        }
      }
    };
    var process17 = globalThis.process;
    _a = signalExitWrap2(processOk2(process17) ? new SignalExit2(process17) : new SignalExitFallback2()), /**
     * Called when the process is exiting, whether via signal, explicit
     * exit, or running out of stuff to do.
     *
     * If the global process object is not suitable for instrumentation,
     * then this will be a no-op.
     *
     * Returns a function that may be used to unload signal-exit.
     */
    exports2.onExit = _a.onExit, /**
     * Load the listeners.  Likely you never need to call this, unless
     * doing a rather deep integration with signal-exit functionality.
     * Mostly exposed for the benefit of testing.
     *
     * @internal
     */
    exports2.load = _a.load, /**
     * Unload the listeners.  Likely you never need to call this, unless
     * doing a rather deep integration with signal-exit functionality.
     * Mostly exposed for the benefit of testing.
     *
     * @internal
     */
    exports2.unload = _a.unload;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/write-file-atomic/7.0.1/3f58e6a24a6082d2cd35ba9cf64ab163d8e567e01caa4bf20e304366e65c2727/node_modules/write-file-atomic/lib/index.js
var require_lib2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/write-file-atomic/7.0.1/3f58e6a24a6082d2cd35ba9cf64ab163d8e567e01caa4bf20e304366e65c2727/node_modules/write-file-atomic/lib/index.js"(exports2, module2) {
    "use strict";
    module2.exports = writeFile3;
    module2.exports.sync = writeFileSync2;
    module2.exports._getTmpname = getTmpname;
    module2.exports._cleanupOnExit = cleanupOnExit2;
    var fs111 = __require("fs");
    var crypto11 = __require("node:crypto");
    var { onExit: onExit2 } = require_cjs();
    var path218 = __require("path");
    var { promisify: promisify8 } = __require("util");
    var activeFiles = {};
    var threadId2 = (function getId2() {
      try {
        const workerThreads2 = __require("worker_threads");
        return workerThreads2.threadId;
      } catch (e) {
        return 0;
      }
    })();
    var invocations = 0;
    function getTmpname(filename) {
      return filename + "." + crypto11.createHash("sha1").update(__filename).update(String(process.pid)).update(String(threadId2)).update(String(++invocations)).digest().readUInt32BE(0);
    }
    function cleanupOnExit2(tmpfile) {
      return () => {
        try {
          fs111.unlinkSync(typeof tmpfile === "function" ? tmpfile() : tmpfile);
        } catch {
        }
      };
    }
    function serializeActiveFile(absoluteName) {
      return new Promise((resolve3) => {
        if (!activeFiles[absoluteName]) {
          activeFiles[absoluteName] = [];
        }
        activeFiles[absoluteName].push(resolve3);
        if (activeFiles[absoluteName].length === 1) {
          resolve3();
        }
      });
    }
    function isChownErrOk(err) {
      if (err.code === "ENOSYS") {
        return true;
      }
      const nonroot = !process.getuid || process.getuid() !== 0;
      if (nonroot) {
        if (err.code === "EINVAL" || err.code === "EPERM") {
          return true;
        }
      }
      return false;
    }
    async function writeFileAsync(filename, data, options = {}) {
      if (typeof options === "string") {
        options = { encoding: options };
      }
      let fd;
      let tmpfile;
      const removeOnExitHandler = onExit2(cleanupOnExit2(() => tmpfile));
      const absoluteName = path218.resolve(filename);
      try {
        await serializeActiveFile(absoluteName);
        const truename = await promisify8(fs111.realpath)(filename).catch(() => filename);
        tmpfile = getTmpname(truename);
        if (!options.mode || !options.chown) {
          const stats = await promisify8(fs111.stat)(truename).catch(() => {
          });
          if (stats) {
            if (options.mode == null) {
              options.mode = stats.mode;
            }
            if (options.chown == null && process.getuid) {
              options.chown = { uid: stats.uid, gid: stats.gid };
            }
          }
        }
        fd = await promisify8(fs111.open)(tmpfile, "w", options.mode);
        if (options.tmpfileCreated) {
          await options.tmpfileCreated(tmpfile);
        }
        if (ArrayBuffer.isView(data)) {
          await promisify8(fs111.write)(fd, data, 0, data.length, 0);
        } else if (data != null) {
          await promisify8(fs111.write)(fd, String(data), 0, String(options.encoding || "utf8"));
        }
        if (options.fsync !== false) {
          await promisify8(fs111.fsync)(fd);
        }
        await promisify8(fs111.close)(fd);
        fd = null;
        if (options.chown) {
          await promisify8(fs111.chown)(tmpfile, options.chown.uid, options.chown.gid).catch((err) => {
            if (!isChownErrOk(err)) {
              throw err;
            }
          });
        }
        if (options.mode) {
          await promisify8(fs111.chmod)(tmpfile, options.mode).catch((err) => {
            if (!isChownErrOk(err)) {
              throw err;
            }
          });
        }
        await promisify8(fs111.rename)(tmpfile, truename);
      } finally {
        if (fd) {
          await promisify8(fs111.close)(fd).catch(
            /* istanbul ignore next */
            () => {
            }
          );
        }
        removeOnExitHandler();
        await promisify8(fs111.unlink)(tmpfile).catch(() => {
        });
        activeFiles[absoluteName].shift();
        if (activeFiles[absoluteName].length > 0) {
          activeFiles[absoluteName][0]();
        } else {
          delete activeFiles[absoluteName];
        }
      }
    }
    async function writeFile3(filename, data, options, callback2) {
      if (options instanceof Function) {
        callback2 = options;
        options = {};
      }
      const promise2 = writeFileAsync(filename, data, options);
      if (callback2) {
        try {
          const result2 = await promise2;
          return callback2(result2);
        } catch (err) {
          return callback2(err);
        }
      }
      return promise2;
    }
    function writeFileSync2(filename, data, options) {
      if (typeof options === "string") {
        options = { encoding: options };
      } else if (!options) {
        options = {};
      }
      try {
        filename = fs111.realpathSync(filename);
      } catch (ex) {
      }
      const tmpfile = getTmpname(filename);
      if (!options.mode || !options.chown) {
        try {
          const stats = fs111.statSync(filename);
          options = Object.assign({}, options);
          if (!options.mode) {
            options.mode = stats.mode;
          }
          if (!options.chown && process.getuid) {
            options.chown = { uid: stats.uid, gid: stats.gid };
          }
        } catch (ex) {
        }
      }
      let fd;
      const cleanup = cleanupOnExit2(tmpfile);
      const removeOnExitHandler = onExit2(cleanup);
      let threw = true;
      try {
        fd = fs111.openSync(tmpfile, "w", options.mode || 438);
        if (options.tmpfileCreated) {
          options.tmpfileCreated(tmpfile);
        }
        if (ArrayBuffer.isView(data)) {
          fs111.writeSync(fd, data, 0, data.length, 0);
        } else if (data != null) {
          fs111.writeSync(fd, String(data), 0, String(options.encoding || "utf8"));
        }
        if (options.fsync !== false) {
          fs111.fsyncSync(fd);
        }
        fs111.closeSync(fd);
        fd = null;
        if (options.chown) {
          try {
            fs111.chownSync(tmpfile, options.chown.uid, options.chown.gid);
          } catch (err) {
            if (!isChownErrOk(err)) {
              throw err;
            }
          }
        }
        if (options.mode) {
          try {
            fs111.chmodSync(tmpfile, options.mode);
          } catch (err) {
            if (!isChownErrOk(err)) {
              throw err;
            }
          }
        }
        fs111.renameSync(tmpfile, filename);
        threw = false;
      } finally {
        if (fd) {
          try {
            fs111.closeSync(fd);
          } catch (ex) {
          }
        }
        removeOnExitHandler();
        if (threw) {
          cleanup();
        }
      }
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/js-yaml/0.0.11/7b2ef9ecac61472c03f3323b540887208e9b2699f699b43ede700d7823812a93/node_modules/@zkochan/js-yaml/dist/js-yaml.mjs
function isNothing(subject) {
  return typeof subject === "undefined" || subject === null;
}
function isObject(subject) {
  return typeof subject === "object" && subject !== null;
}
function toArray(sequence) {
  if (Array.isArray(sequence)) return sequence;
  else if (isNothing(sequence)) return [];
  return [sequence];
}
function extend(target2, source) {
  var index, length, key, sourceKeys;
  if (source) {
    sourceKeys = Object.keys(source);
    for (index = 0, length = sourceKeys.length; index < length; index += 1) {
      key = sourceKeys[index];
      target2[key] = source[key];
    }
  }
  return target2;
}
function repeat(string, count2) {
  var result2 = "", cycle;
  for (cycle = 0; cycle < count2; cycle += 1) {
    result2 += string;
  }
  return result2;
}
function isNegativeZero(number) {
  return number === 0 && Number.NEGATIVE_INFINITY === 1 / number;
}
function formatError(exception2, compact) {
  var where = "", message = exception2.reason || "(unknown reason)";
  if (!exception2.mark) return message;
  if (exception2.mark.name) {
    where += 'in "' + exception2.mark.name + '" ';
  }
  where += "(" + (exception2.mark.line + 1) + ":" + (exception2.mark.column + 1) + ")";
  if (!compact && exception2.mark.snippet) {
    where += "\n\n" + exception2.mark.snippet;
  }
  return message + " " + where;
}
function YAMLException$1(reason, mark) {
  Error.call(this);
  this.name = "YAMLException";
  this.reason = reason;
  this.mark = mark;
  this.message = formatError(this, false);
  if (Error.captureStackTrace) {
    Error.captureStackTrace(this, this.constructor);
  } else {
    this.stack = new Error().stack || "";
  }
}
function getLine(buffer3, lineStart, lineEnd, position3, maxLineLength) {
  var head2 = "";
  var tail2 = "";
  var maxHalfLength = Math.floor(maxLineLength / 2) - 1;
  if (position3 - lineStart > maxHalfLength) {
    head2 = " ... ";
    lineStart = position3 - maxHalfLength + head2.length;
  }
  if (lineEnd - position3 > maxHalfLength) {
    tail2 = " ...";
    lineEnd = position3 + maxHalfLength - tail2.length;
  }
  return {
    str: head2 + buffer3.slice(lineStart, lineEnd).replace(/\t/g, "\u2192") + tail2,
    pos: position3 - lineStart + head2.length
    // relative position
  };
}
function padStart(string, max3) {
  return common.repeat(" ", max3 - string.length) + string;
}
function makeSnippet(mark, options) {
  options = Object.create(options || null);
  if (!mark.buffer) return null;
  if (!options.maxLength) options.maxLength = 79;
  if (typeof options.indent !== "number") options.indent = 1;
  if (typeof options.linesBefore !== "number") options.linesBefore = 3;
  if (typeof options.linesAfter !== "number") options.linesAfter = 2;
  var re = /\r?\n|\r|\0/g;
  var lineStarts = [0];
  var lineEnds = [];
  var match;
  var foundLineNo = -1;
  while (match = re.exec(mark.buffer)) {
    lineEnds.push(match.index);
    lineStarts.push(match.index + match[0].length);
    if (mark.position <= match.index && foundLineNo < 0) {
      foundLineNo = lineStarts.length - 2;
    }
  }
  if (foundLineNo < 0) foundLineNo = lineStarts.length - 1;
  var result2 = "", i2, line;
  var lineNoLength = Math.min(mark.line + options.linesAfter, lineEnds.length).toString().length;
  var maxLineLength = options.maxLength - (options.indent + lineNoLength + 3);
  for (i2 = 1; i2 <= options.linesBefore; i2++) {
    if (foundLineNo - i2 < 0) break;
    line = getLine(
      mark.buffer,
      lineStarts[foundLineNo - i2],
      lineEnds[foundLineNo - i2],
      mark.position - (lineStarts[foundLineNo] - lineStarts[foundLineNo - i2]),
      maxLineLength
    );
    result2 = common.repeat(" ", options.indent) + padStart((mark.line - i2 + 1).toString(), lineNoLength) + " | " + line.str + "\n" + result2;
  }
  line = getLine(mark.buffer, lineStarts[foundLineNo], lineEnds[foundLineNo], mark.position, maxLineLength);
  result2 += common.repeat(" ", options.indent) + padStart((mark.line + 1).toString(), lineNoLength) + " | " + line.str + "\n";
  result2 += common.repeat("-", options.indent + lineNoLength + 3 + line.pos) + "^\n";
  for (i2 = 1; i2 <= options.linesAfter; i2++) {
    if (foundLineNo + i2 >= lineEnds.length) break;
    line = getLine(
      mark.buffer,
      lineStarts[foundLineNo + i2],
      lineEnds[foundLineNo + i2],
      mark.position - (lineStarts[foundLineNo] - lineStarts[foundLineNo + i2]),
      maxLineLength
    );
    result2 += common.repeat(" ", options.indent) + padStart((mark.line + i2 + 1).toString(), lineNoLength) + " | " + line.str + "\n";
  }
  return result2.replace(/\n$/, "");
}
function compileStyleAliases(map26) {
  var result2 = {};
  if (map26 !== null) {
    Object.keys(map26).forEach(function(style) {
      map26[style].forEach(function(alias) {
        result2[String(alias)] = style;
      });
    });
  }
  return result2;
}
function Type$1(tag, options) {
  options = options || {};
  Object.keys(options).forEach(function(name) {
    if (TYPE_CONSTRUCTOR_OPTIONS.indexOf(name) === -1) {
      throw new exception('Unknown option "' + name + '" is met in definition of "' + tag + '" YAML type.');
    }
  });
  this.tag = tag;
  this.kind = options["kind"] || null;
  this.resolve = options["resolve"] || function() {
    return true;
  };
  this.construct = options["construct"] || function(data) {
    return data;
  };
  this.instanceOf = options["instanceOf"] || null;
  this.predicate = options["predicate"] || null;
  this.represent = options["represent"] || null;
  this.representName = options["representName"] || null;
  this.defaultStyle = options["defaultStyle"] || null;
  this.multi = options["multi"] || false;
  this.styleAliases = compileStyleAliases(options["styleAliases"] || null);
  if (YAML_NODE_KINDS.indexOf(this.kind) === -1) {
    throw new exception('Unknown kind "' + this.kind + '" is specified for "' + tag + '" YAML type.');
  }
}
function compileList(schema2, name, result2) {
  var exclude = [];
  schema2[name].forEach(function(currentType) {
    result2.forEach(function(previousType, previousIndex) {
      if (previousType.tag === currentType.tag && previousType.kind === currentType.kind && previousType.multi === currentType.multi) {
        exclude.push(previousIndex);
      }
    });
    result2.push(currentType);
  });
  return result2.filter(function(type4, index) {
    return exclude.indexOf(index) === -1;
  });
}
function compileMap() {
  var result2 = {
    scalar: {},
    sequence: {},
    mapping: {},
    fallback: {},
    multi: {
      scalar: [],
      sequence: [],
      mapping: [],
      fallback: []
    }
  }, index, length;
  function collectType(type4) {
    if (type4.multi) {
      result2.multi[type4.kind].push(type4);
      result2.multi["fallback"].push(type4);
    } else {
      result2[type4.kind][type4.tag] = result2["fallback"][type4.tag] = type4;
    }
  }
  for (index = 0, length = arguments.length; index < length; index += 1) {
    arguments[index].forEach(collectType);
  }
  return result2;
}
function Schema$1(definition) {
  return this.extend(definition);
}
function resolveYamlNull(data) {
  if (data === null) return true;
  var max3 = data.length;
  return max3 === 1 && data === "~" || max3 === 4 && (data === "null" || data === "Null" || data === "NULL");
}
function constructYamlNull() {
  return null;
}
function isNull(object) {
  return object === null;
}
function resolveYamlBoolean(data) {
  if (data === null) return false;
  var max3 = data.length;
  return max3 === 4 && (data === "true" || data === "True" || data === "TRUE") || max3 === 5 && (data === "false" || data === "False" || data === "FALSE");
}
function constructYamlBoolean(data) {
  return data === "true" || data === "True" || data === "TRUE";
}
function isBoolean(object) {
  return Object.prototype.toString.call(object) === "[object Boolean]";
}
function isHexCode(c3) {
  return 48 <= c3 && c3 <= 57 || 65 <= c3 && c3 <= 70 || 97 <= c3 && c3 <= 102;
}
function isOctCode(c3) {
  return 48 <= c3 && c3 <= 55;
}
function isDecCode(c3) {
  return 48 <= c3 && c3 <= 57;
}
function resolveYamlInteger(data) {
  if (data === null) return false;
  var max3 = data.length, index = 0, hasDigits = false, ch;
  if (!max3) return false;
  ch = data[index];
  if (ch === "-" || ch === "+") {
    ch = data[++index];
  }
  if (ch === "0") {
    if (index + 1 === max3) return true;
    ch = data[++index];
    if (ch === "b") {
      index++;
      for (; index < max3; index++) {
        ch = data[index];
        if (ch === "_") continue;
        if (ch !== "0" && ch !== "1") return false;
        hasDigits = true;
      }
      return hasDigits && ch !== "_";
    }
    if (ch === "x") {
      index++;
      for (; index < max3; index++) {
        ch = data[index];
        if (ch === "_") continue;
        if (!isHexCode(data.charCodeAt(index))) return false;
        hasDigits = true;
      }
      return hasDigits && ch !== "_";
    }
    if (ch === "o") {
      index++;
      for (; index < max3; index++) {
        ch = data[index];
        if (ch === "_") continue;
        if (!isOctCode(data.charCodeAt(index))) return false;
        hasDigits = true;
      }
      return hasDigits && ch !== "_";
    }
  }
  if (ch === "_") return false;
  for (; index < max3; index++) {
    ch = data[index];
    if (ch === "_") continue;
    if (!isDecCode(data.charCodeAt(index))) {
      return false;
    }
    hasDigits = true;
  }
  if (!hasDigits || ch === "_") return false;
  return true;
}
function constructYamlInteger(data) {
  var value = data, sign = 1, ch;
  if (value.indexOf("_") !== -1) {
    value = value.replace(/_/g, "");
  }
  ch = value[0];
  if (ch === "-" || ch === "+") {
    if (ch === "-") sign = -1;
    value = value.slice(1);
    ch = value[0];
  }
  if (value === "0") return 0;
  if (ch === "0") {
    if (value[1] === "b") return sign * parseInt(value.slice(2), 2);
    if (value[1] === "x") return sign * parseInt(value.slice(2), 16);
    if (value[1] === "o") return sign * parseInt(value.slice(2), 8);
  }
  return sign * parseInt(value, 10);
}
function isInteger(object) {
  return Object.prototype.toString.call(object) === "[object Number]" && (object % 1 === 0 && !common.isNegativeZero(object));
}
function resolveYamlFloat(data) {
  if (data === null) return false;
  if (!YAML_FLOAT_PATTERN.test(data) || // Quick hack to not allow integers end with `_`
  // Probably should update regexp & check speed
  data[data.length - 1] === "_") {
    return false;
  }
  return true;
}
function constructYamlFloat(data) {
  var value, sign;
  value = data.replace(/_/g, "").toLowerCase();
  sign = value[0] === "-" ? -1 : 1;
  if ("+-".indexOf(value[0]) >= 0) {
    value = value.slice(1);
  }
  if (value === ".inf") {
    return sign === 1 ? Number.POSITIVE_INFINITY : Number.NEGATIVE_INFINITY;
  } else if (value === ".nan") {
    return NaN;
  }
  return sign * parseFloat(value, 10);
}
function representYamlFloat(object, style) {
  var res;
  if (isNaN(object)) {
    switch (style) {
      case "lowercase":
        return ".nan";
      case "uppercase":
        return ".NAN";
      case "camelcase":
        return ".NaN";
    }
  } else if (Number.POSITIVE_INFINITY === object) {
    switch (style) {
      case "lowercase":
        return ".inf";
      case "uppercase":
        return ".INF";
      case "camelcase":
        return ".Inf";
    }
  } else if (Number.NEGATIVE_INFINITY === object) {
    switch (style) {
      case "lowercase":
        return "-.inf";
      case "uppercase":
        return "-.INF";
      case "camelcase":
        return "-.Inf";
    }
  } else if (common.isNegativeZero(object)) {
    return "-0.0";
  }
  res = object.toString(10);
  return SCIENTIFIC_WITHOUT_DOT.test(res) ? res.replace("e", ".e") : res;
}
function isFloat(object) {
  return Object.prototype.toString.call(object) === "[object Number]" && (object % 1 !== 0 || common.isNegativeZero(object));
}
function resolveYamlTimestamp(data) {
  if (data === null) return false;
  if (YAML_DATE_REGEXP.exec(data) !== null) return true;
  if (YAML_TIMESTAMP_REGEXP.exec(data) !== null) return true;
  return false;
}
function constructYamlTimestamp(data) {
  var match, year, month, day, hour, minute, second, fraction = 0, delta = null, tz_hour, tz_minute, date;
  match = YAML_DATE_REGEXP.exec(data);
  if (match === null) match = YAML_TIMESTAMP_REGEXP.exec(data);
  if (match === null) throw new Error("Date resolve error");
  year = +match[1];
  month = +match[2] - 1;
  day = +match[3];
  if (!match[4]) {
    return new Date(Date.UTC(year, month, day));
  }
  hour = +match[4];
  minute = +match[5];
  second = +match[6];
  if (match[7]) {
    fraction = match[7].slice(0, 3);
    while (fraction.length < 3) {
      fraction += "0";
    }
    fraction = +fraction;
  }
  if (match[9]) {
    tz_hour = +match[10];
    tz_minute = +(match[11] || 0);
    delta = (tz_hour * 60 + tz_minute) * 6e4;
    if (match[9] === "-") delta = -delta;
  }
  date = new Date(Date.UTC(year, month, day, hour, minute, second, fraction));
  if (delta) date.setTime(date.getTime() - delta);
  return date;
}
function representYamlTimestamp(object) {
  return object.toISOString();
}
function resolveYamlMerge(data) {
  return data === "<<" || data === null;
}
function resolveYamlBinary(data) {
  if (data === null) return false;
  var code, idx, bitlen = 0, max3 = data.length, map26 = BASE64_MAP;
  for (idx = 0; idx < max3; idx++) {
    code = map26.indexOf(data.charAt(idx));
    if (code > 64) continue;
    if (code < 0) return false;
    bitlen += 6;
  }
  return bitlen % 8 === 0;
}
function constructYamlBinary(data) {
  var idx, tailbits, input = data.replace(/[\r\n=]/g, ""), max3 = input.length, map26 = BASE64_MAP, bits = 0, result2 = [];
  for (idx = 0; idx < max3; idx++) {
    if (idx % 4 === 0 && idx) {
      result2.push(bits >> 16 & 255);
      result2.push(bits >> 8 & 255);
      result2.push(bits & 255);
    }
    bits = bits << 6 | map26.indexOf(input.charAt(idx));
  }
  tailbits = max3 % 4 * 6;
  if (tailbits === 0) {
    result2.push(bits >> 16 & 255);
    result2.push(bits >> 8 & 255);
    result2.push(bits & 255);
  } else if (tailbits === 18) {
    result2.push(bits >> 10 & 255);
    result2.push(bits >> 2 & 255);
  } else if (tailbits === 12) {
    result2.push(bits >> 4 & 255);
  }
  return new Uint8Array(result2);
}
function representYamlBinary(object) {
  var result2 = "", bits = 0, idx, tail2, max3 = object.length, map26 = BASE64_MAP;
  for (idx = 0; idx < max3; idx++) {
    if (idx % 3 === 0 && idx) {
      result2 += map26[bits >> 18 & 63];
      result2 += map26[bits >> 12 & 63];
      result2 += map26[bits >> 6 & 63];
      result2 += map26[bits & 63];
    }
    bits = (bits << 8) + object[idx];
  }
  tail2 = max3 % 3;
  if (tail2 === 0) {
    result2 += map26[bits >> 18 & 63];
    result2 += map26[bits >> 12 & 63];
    result2 += map26[bits >> 6 & 63];
    result2 += map26[bits & 63];
  } else if (tail2 === 2) {
    result2 += map26[bits >> 10 & 63];
    result2 += map26[bits >> 4 & 63];
    result2 += map26[bits << 2 & 63];
    result2 += map26[64];
  } else if (tail2 === 1) {
    result2 += map26[bits >> 2 & 63];
    result2 += map26[bits << 4 & 63];
    result2 += map26[64];
    result2 += map26[64];
  }
  return result2;
}
function isBinary(obj) {
  return Object.prototype.toString.call(obj) === "[object Uint8Array]";
}
function resolveYamlOmap(data) {
  if (data === null) return true;
  var objectKeys = [], index, length, pair, pairKey, pairHasKey, object = data;
  for (index = 0, length = object.length; index < length; index += 1) {
    pair = object[index];
    pairHasKey = false;
    if (_toString$2.call(pair) !== "[object Object]") return false;
    for (pairKey in pair) {
      if (_hasOwnProperty$3.call(pair, pairKey)) {
        if (!pairHasKey) pairHasKey = true;
        else return false;
      }
    }
    if (!pairHasKey) return false;
    if (objectKeys.indexOf(pairKey) === -1) objectKeys.push(pairKey);
    else return false;
  }
  return true;
}
function constructYamlOmap(data) {
  return data !== null ? data : [];
}
function resolveYamlPairs(data) {
  if (data === null) return true;
  var index, length, pair, keys4, result2, object = data;
  result2 = new Array(object.length);
  for (index = 0, length = object.length; index < length; index += 1) {
    pair = object[index];
    if (_toString$1.call(pair) !== "[object Object]") return false;
    keys4 = Object.keys(pair);
    if (keys4.length !== 1) return false;
    result2[index] = [keys4[0], pair[keys4[0]]];
  }
  return true;
}
function constructYamlPairs(data) {
  if (data === null) return [];
  var index, length, pair, keys4, result2, object = data;
  result2 = new Array(object.length);
  for (index = 0, length = object.length; index < length; index += 1) {
    pair = object[index];
    keys4 = Object.keys(pair);
    result2[index] = [keys4[0], pair[keys4[0]]];
  }
  return result2;
}
function resolveYamlSet(data) {
  if (data === null) return true;
  var key, object = data;
  for (key in object) {
    if (_hasOwnProperty$2.call(object, key)) {
      if (object[key] !== null) return false;
    }
  }
  return true;
}
function constructYamlSet(data) {
  return data !== null ? data : {};
}
function _class(obj) {
  return Object.prototype.toString.call(obj);
}
function is_EOL(c3) {
  return c3 === 10 || c3 === 13;
}
function is_WHITE_SPACE(c3) {
  return c3 === 9 || c3 === 32;
}
function is_WS_OR_EOL(c3) {
  return c3 === 9 || c3 === 32 || c3 === 10 || c3 === 13;
}
function is_FLOW_INDICATOR(c3) {
  return c3 === 44 || c3 === 91 || c3 === 93 || c3 === 123 || c3 === 125;
}
function fromHexCode(c3) {
  var lc;
  if (48 <= c3 && c3 <= 57) {
    return c3 - 48;
  }
  lc = c3 | 32;
  if (97 <= lc && lc <= 102) {
    return lc - 97 + 10;
  }
  return -1;
}
function escapedHexLen(c3) {
  if (c3 === 120) {
    return 2;
  }
  if (c3 === 117) {
    return 4;
  }
  if (c3 === 85) {
    return 8;
  }
  return 0;
}
function fromDecimalCode(c3) {
  if (48 <= c3 && c3 <= 57) {
    return c3 - 48;
  }
  return -1;
}
function simpleEscapeSequence(c3) {
  return c3 === 48 ? "\0" : c3 === 97 ? "\x07" : c3 === 98 ? "\b" : c3 === 116 ? "	" : c3 === 9 ? "	" : c3 === 110 ? "\n" : c3 === 118 ? "\v" : c3 === 102 ? "\f" : c3 === 114 ? "\r" : c3 === 101 ? "\x1B" : c3 === 32 ? " " : c3 === 34 ? '"' : c3 === 47 ? "/" : c3 === 92 ? "\\" : c3 === 78 ? "\x85" : c3 === 95 ? "\xA0" : c3 === 76 ? "\u2028" : c3 === 80 ? "\u2029" : "";
}
function charFromCodepoint(c3) {
  if (c3 <= 65535) {
    return String.fromCharCode(c3);
  }
  return String.fromCharCode(
    (c3 - 65536 >> 10) + 55296,
    (c3 - 65536 & 1023) + 56320
  );
}
function setProperty(object, key, value) {
  if (key === "__proto__") {
    Object.defineProperty(object, key, {
      configurable: true,
      enumerable: true,
      writable: true,
      value
    });
  } else {
    object[key] = value;
  }
}
function State$1(input, options) {
  this.input = input;
  this.filename = options["filename"] || null;
  this.schema = options["schema"] || _default;
  this.onWarning = options["onWarning"] || null;
  this.legacy = options["legacy"] || false;
  this.json = options["json"] || false;
  this.listener = options["listener"] || null;
  this.implicitTypes = this.schema.compiledImplicit;
  this.typeMap = this.schema.compiledTypeMap;
  this.length = input.length;
  this.position = 0;
  this.line = 0;
  this.lineStart = 0;
  this.lineIndent = 0;
  this.firstTabInLine = -1;
  this.documents = [];
}
function generateError(state, message) {
  var mark = {
    name: state.filename,
    buffer: state.input.slice(0, -1),
    // omit trailing \0
    position: state.position,
    line: state.line,
    column: state.position - state.lineStart
  };
  mark.snippet = snippet(mark);
  return new exception(message, mark);
}
function throwError(state, message) {
  throw generateError(state, message);
}
function throwWarning(state, message) {
  if (state.onWarning) {
    state.onWarning.call(null, generateError(state, message));
  }
}
function captureSegment(state, start, end, checkJson) {
  var _position, _length, _character, _result;
  if (start < end) {
    _result = state.input.slice(start, end);
    if (checkJson) {
      for (_position = 0, _length = _result.length; _position < _length; _position += 1) {
        _character = _result.charCodeAt(_position);
        if (!(_character === 9 || 32 <= _character && _character <= 1114111)) {
          throwError(state, "expected valid JSON character");
        }
      }
    } else if (PATTERN_NON_PRINTABLE.test(_result)) {
      throwError(state, "the stream contains non-printable characters");
    }
    state.result += _result;
  }
}
function mergeMappings(state, destination, source, overridableKeys) {
  var sourceKeys, key, index, quantity;
  if (!common.isObject(source)) {
    throwError(state, "cannot merge mappings; the provided source object is unacceptable");
  }
  sourceKeys = Object.keys(source);
  for (index = 0, quantity = sourceKeys.length; index < quantity; index += 1) {
    key = sourceKeys[index];
    if (!_hasOwnProperty$1.call(destination, key)) {
      setProperty(destination, key, source[key]);
      overridableKeys[key] = true;
    }
  }
}
function storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, startLine, startLineStart, startPos) {
  var index, quantity;
  if (Array.isArray(keyNode)) {
    keyNode = Array.prototype.slice.call(keyNode);
    for (index = 0, quantity = keyNode.length; index < quantity; index += 1) {
      if (Array.isArray(keyNode[index])) {
        throwError(state, "nested arrays are not supported inside keys");
      }
      if (typeof keyNode === "object" && _class(keyNode[index]) === "[object Object]") {
        keyNode[index] = "[object Object]";
      }
    }
  }
  if (typeof keyNode === "object" && _class(keyNode) === "[object Object]") {
    keyNode = "[object Object]";
  }
  keyNode = String(keyNode);
  if (_result === null) {
    _result = {};
  }
  if (keyTag === "tag:yaml.org,2002:merge") {
    if (Array.isArray(valueNode)) {
      for (index = 0, quantity = valueNode.length; index < quantity; index += 1) {
        mergeMappings(state, _result, valueNode[index], overridableKeys);
      }
    } else {
      mergeMappings(state, _result, valueNode, overridableKeys);
    }
  } else {
    if (!state.json && !_hasOwnProperty$1.call(overridableKeys, keyNode) && _hasOwnProperty$1.call(_result, keyNode)) {
      state.line = startLine || state.line;
      state.lineStart = startLineStart || state.lineStart;
      state.position = startPos || state.position;
      throwError(state, "duplicated mapping key");
    }
    setProperty(_result, keyNode, valueNode);
    delete overridableKeys[keyNode];
  }
  return _result;
}
function readLineBreak(state) {
  var ch;
  ch = state.input.charCodeAt(state.position);
  if (ch === 10) {
    state.position++;
  } else if (ch === 13) {
    state.position++;
    if (state.input.charCodeAt(state.position) === 10) {
      state.position++;
    }
  } else {
    throwError(state, "a line break is expected");
  }
  state.line += 1;
  state.lineStart = state.position;
  state.firstTabInLine = -1;
}
function skipSeparationSpace(state, allowComments, checkIndent) {
  var lineBreaks = 0, ch = state.input.charCodeAt(state.position);
  while (ch !== 0) {
    while (is_WHITE_SPACE(ch)) {
      if (ch === 9 && state.firstTabInLine === -1) {
        state.firstTabInLine = state.position;
      }
      ch = state.input.charCodeAt(++state.position);
    }
    if (allowComments && ch === 35) {
      do {
        ch = state.input.charCodeAt(++state.position);
      } while (ch !== 10 && ch !== 13 && ch !== 0);
    }
    if (is_EOL(ch)) {
      readLineBreak(state);
      ch = state.input.charCodeAt(state.position);
      lineBreaks++;
      state.lineIndent = 0;
      while (ch === 32) {
        state.lineIndent++;
        ch = state.input.charCodeAt(++state.position);
      }
    } else {
      break;
    }
  }
  if (checkIndent !== -1 && lineBreaks !== 0 && state.lineIndent < checkIndent) {
    throwWarning(state, "deficient indentation");
  }
  return lineBreaks;
}
function testDocumentSeparator(state) {
  var _position = state.position, ch;
  ch = state.input.charCodeAt(_position);
  if ((ch === 45 || ch === 46) && ch === state.input.charCodeAt(_position + 1) && ch === state.input.charCodeAt(_position + 2)) {
    _position += 3;
    ch = state.input.charCodeAt(_position);
    if (ch === 0 || is_WS_OR_EOL(ch)) {
      return true;
    }
  }
  return false;
}
function writeFoldedLines(state, count2) {
  if (count2 === 1) {
    state.result += " ";
  } else if (count2 > 1) {
    state.result += common.repeat("\n", count2 - 1);
  }
}
function readPlainScalar(state, nodeIndent, withinFlowCollection) {
  var preceding, following, captureStart, captureEnd, hasPendingContent, _line, _lineStart, _lineIndent, _kind = state.kind, _result = state.result, ch;
  ch = state.input.charCodeAt(state.position);
  if (is_WS_OR_EOL(ch) || is_FLOW_INDICATOR(ch) || ch === 35 || ch === 38 || ch === 42 || ch === 33 || ch === 124 || ch === 62 || ch === 39 || ch === 34 || ch === 37 || ch === 64 || ch === 96) {
    return false;
  }
  if (ch === 63 || ch === 45) {
    following = state.input.charCodeAt(state.position + 1);
    if (is_WS_OR_EOL(following) || withinFlowCollection && is_FLOW_INDICATOR(following)) {
      return false;
    }
  }
  state.kind = "scalar";
  state.result = "";
  captureStart = captureEnd = state.position;
  hasPendingContent = false;
  while (ch !== 0) {
    if (ch === 58) {
      following = state.input.charCodeAt(state.position + 1);
      if (is_WS_OR_EOL(following) || withinFlowCollection && is_FLOW_INDICATOR(following)) {
        break;
      }
    } else if (ch === 35) {
      preceding = state.input.charCodeAt(state.position - 1);
      if (is_WS_OR_EOL(preceding)) {
        break;
      }
    } else if (state.position === state.lineStart && testDocumentSeparator(state) || withinFlowCollection && is_FLOW_INDICATOR(ch)) {
      break;
    } else if (is_EOL(ch)) {
      _line = state.line;
      _lineStart = state.lineStart;
      _lineIndent = state.lineIndent;
      skipSeparationSpace(state, false, -1);
      if (state.lineIndent >= nodeIndent) {
        hasPendingContent = true;
        ch = state.input.charCodeAt(state.position);
        continue;
      } else {
        state.position = captureEnd;
        state.line = _line;
        state.lineStart = _lineStart;
        state.lineIndent = _lineIndent;
        break;
      }
    }
    if (hasPendingContent) {
      captureSegment(state, captureStart, captureEnd, false);
      writeFoldedLines(state, state.line - _line);
      captureStart = captureEnd = state.position;
      hasPendingContent = false;
    }
    if (!is_WHITE_SPACE(ch)) {
      captureEnd = state.position + 1;
    }
    ch = state.input.charCodeAt(++state.position);
  }
  captureSegment(state, captureStart, captureEnd, false);
  if (state.result) {
    return true;
  }
  state.kind = _kind;
  state.result = _result;
  return false;
}
function readSingleQuotedScalar(state, nodeIndent) {
  var ch, captureStart, captureEnd;
  ch = state.input.charCodeAt(state.position);
  if (ch !== 39) {
    return false;
  }
  state.kind = "scalar";
  state.result = "";
  state.position++;
  captureStart = captureEnd = state.position;
  while ((ch = state.input.charCodeAt(state.position)) !== 0) {
    if (ch === 39) {
      captureSegment(state, captureStart, state.position, true);
      ch = state.input.charCodeAt(++state.position);
      if (ch === 39) {
        captureStart = state.position;
        state.position++;
        captureEnd = state.position;
      } else {
        return true;
      }
    } else if (is_EOL(ch)) {
      captureSegment(state, captureStart, captureEnd, true);
      writeFoldedLines(state, skipSeparationSpace(state, false, nodeIndent));
      captureStart = captureEnd = state.position;
    } else if (state.position === state.lineStart && testDocumentSeparator(state)) {
      throwError(state, "unexpected end of the document within a single quoted scalar");
    } else {
      state.position++;
      captureEnd = state.position;
    }
  }
  throwError(state, "unexpected end of the stream within a single quoted scalar");
}
function readDoubleQuotedScalar(state, nodeIndent) {
  var captureStart, captureEnd, hexLength, hexResult, tmp, ch;
  ch = state.input.charCodeAt(state.position);
  if (ch !== 34) {
    return false;
  }
  state.kind = "scalar";
  state.result = "";
  state.position++;
  captureStart = captureEnd = state.position;
  while ((ch = state.input.charCodeAt(state.position)) !== 0) {
    if (ch === 34) {
      captureSegment(state, captureStart, state.position, true);
      state.position++;
      return true;
    } else if (ch === 92) {
      captureSegment(state, captureStart, state.position, true);
      ch = state.input.charCodeAt(++state.position);
      if (is_EOL(ch)) {
        skipSeparationSpace(state, false, nodeIndent);
      } else if (ch < 256 && simpleEscapeCheck[ch]) {
        state.result += simpleEscapeMap[ch];
        state.position++;
      } else if ((tmp = escapedHexLen(ch)) > 0) {
        hexLength = tmp;
        hexResult = 0;
        for (; hexLength > 0; hexLength--) {
          ch = state.input.charCodeAt(++state.position);
          if ((tmp = fromHexCode(ch)) >= 0) {
            hexResult = (hexResult << 4) + tmp;
          } else {
            throwError(state, "expected hexadecimal character");
          }
        }
        state.result += charFromCodepoint(hexResult);
        state.position++;
      } else {
        throwError(state, "unknown escape sequence");
      }
      captureStart = captureEnd = state.position;
    } else if (is_EOL(ch)) {
      captureSegment(state, captureStart, captureEnd, true);
      writeFoldedLines(state, skipSeparationSpace(state, false, nodeIndent));
      captureStart = captureEnd = state.position;
    } else if (state.position === state.lineStart && testDocumentSeparator(state)) {
      throwError(state, "unexpected end of the document within a double quoted scalar");
    } else {
      state.position++;
      captureEnd = state.position;
    }
  }
  throwError(state, "unexpected end of the stream within a double quoted scalar");
}
function readFlowCollection(state, nodeIndent) {
  var readNext = true, _line, _lineStart, _pos, _tag = state.tag, _result, _anchor = state.anchor, following, terminator, isPair, isExplicitPair, isMapping, overridableKeys = /* @__PURE__ */ Object.create(null), keyNode, keyTag, valueNode, ch;
  ch = state.input.charCodeAt(state.position);
  if (ch === 91) {
    terminator = 93;
    isMapping = false;
    _result = [];
  } else if (ch === 123) {
    terminator = 125;
    isMapping = true;
    _result = {};
  } else {
    return false;
  }
  if (state.anchor !== null) {
    state.anchorMap[state.anchor] = _result;
  }
  ch = state.input.charCodeAt(++state.position);
  while (ch !== 0) {
    skipSeparationSpace(state, true, nodeIndent);
    ch = state.input.charCodeAt(state.position);
    if (ch === terminator) {
      state.position++;
      state.tag = _tag;
      state.anchor = _anchor;
      state.kind = isMapping ? "mapping" : "sequence";
      state.result = _result;
      return true;
    } else if (!readNext) {
      throwError(state, "missed comma between flow collection entries");
    } else if (ch === 44) {
      throwError(state, "expected the node content, but found ','");
    }
    keyTag = keyNode = valueNode = null;
    isPair = isExplicitPair = false;
    if (ch === 63) {
      following = state.input.charCodeAt(state.position + 1);
      if (is_WS_OR_EOL(following)) {
        isPair = isExplicitPair = true;
        state.position++;
        skipSeparationSpace(state, true, nodeIndent);
      }
    }
    _line = state.line;
    _lineStart = state.lineStart;
    _pos = state.position;
    composeNode(state, nodeIndent, CONTEXT_FLOW_IN, false, true);
    keyTag = state.tag;
    keyNode = state.result;
    skipSeparationSpace(state, true, nodeIndent);
    ch = state.input.charCodeAt(state.position);
    if ((isExplicitPair || state.line === _line) && ch === 58) {
      isPair = true;
      ch = state.input.charCodeAt(++state.position);
      skipSeparationSpace(state, true, nodeIndent);
      composeNode(state, nodeIndent, CONTEXT_FLOW_IN, false, true);
      valueNode = state.result;
    }
    if (isMapping) {
      storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, _line, _lineStart, _pos);
    } else if (isPair) {
      _result.push(storeMappingPair(state, null, overridableKeys, keyTag, keyNode, valueNode, _line, _lineStart, _pos));
    } else {
      _result.push(keyNode);
    }
    skipSeparationSpace(state, true, nodeIndent);
    ch = state.input.charCodeAt(state.position);
    if (ch === 44) {
      readNext = true;
      ch = state.input.charCodeAt(++state.position);
    } else {
      readNext = false;
    }
  }
  throwError(state, "unexpected end of the stream within a flow collection");
}
function readBlockScalar(state, nodeIndent) {
  var captureStart, folding, chomping = CHOMPING_CLIP, didReadContent = false, detectedIndent = false, textIndent = nodeIndent, emptyLines = 0, atMoreIndented = false, tmp, ch;
  ch = state.input.charCodeAt(state.position);
  if (ch === 124) {
    folding = false;
  } else if (ch === 62) {
    folding = true;
  } else {
    return false;
  }
  state.kind = "scalar";
  state.result = "";
  while (ch !== 0) {
    ch = state.input.charCodeAt(++state.position);
    if (ch === 43 || ch === 45) {
      if (CHOMPING_CLIP === chomping) {
        chomping = ch === 43 ? CHOMPING_KEEP : CHOMPING_STRIP;
      } else {
        throwError(state, "repeat of a chomping mode identifier");
      }
    } else if ((tmp = fromDecimalCode(ch)) >= 0) {
      if (tmp === 0) {
        throwError(state, "bad explicit indentation width of a block scalar; it cannot be less than one");
      } else if (!detectedIndent) {
        textIndent = nodeIndent + tmp - 1;
        detectedIndent = true;
      } else {
        throwError(state, "repeat of an indentation width identifier");
      }
    } else {
      break;
    }
  }
  if (is_WHITE_SPACE(ch)) {
    do {
      ch = state.input.charCodeAt(++state.position);
    } while (is_WHITE_SPACE(ch));
    if (ch === 35) {
      do {
        ch = state.input.charCodeAt(++state.position);
      } while (!is_EOL(ch) && ch !== 0);
    }
  }
  while (ch !== 0) {
    readLineBreak(state);
    state.lineIndent = 0;
    ch = state.input.charCodeAt(state.position);
    while ((!detectedIndent || state.lineIndent < textIndent) && ch === 32) {
      state.lineIndent++;
      ch = state.input.charCodeAt(++state.position);
    }
    if (!detectedIndent && state.lineIndent > textIndent) {
      textIndent = state.lineIndent;
    }
    if (is_EOL(ch)) {
      emptyLines++;
      continue;
    }
    if (state.lineIndent < textIndent) {
      if (chomping === CHOMPING_KEEP) {
        state.result += common.repeat("\n", didReadContent ? 1 + emptyLines : emptyLines);
      } else if (chomping === CHOMPING_CLIP) {
        if (didReadContent) {
          state.result += "\n";
        }
      }
      break;
    }
    if (folding) {
      if (is_WHITE_SPACE(ch)) {
        atMoreIndented = true;
        state.result += common.repeat("\n", didReadContent ? 1 + emptyLines : emptyLines);
      } else if (atMoreIndented) {
        atMoreIndented = false;
        state.result += common.repeat("\n", emptyLines + 1);
      } else if (emptyLines === 0) {
        if (didReadContent) {
          state.result += " ";
        }
      } else {
        state.result += common.repeat("\n", emptyLines);
      }
    } else {
      state.result += common.repeat("\n", didReadContent ? 1 + emptyLines : emptyLines);
    }
    didReadContent = true;
    detectedIndent = true;
    emptyLines = 0;
    captureStart = state.position;
    while (!is_EOL(ch) && ch !== 0) {
      ch = state.input.charCodeAt(++state.position);
    }
    captureSegment(state, captureStart, state.position, false);
  }
  return true;
}
function readBlockSequence(state, nodeIndent) {
  var _line, _tag = state.tag, _anchor = state.anchor, _result = [], following, detected = false, ch;
  if (state.firstTabInLine !== -1) return false;
  if (state.anchor !== null) {
    state.anchorMap[state.anchor] = _result;
  }
  ch = state.input.charCodeAt(state.position);
  while (ch !== 0) {
    if (state.firstTabInLine !== -1) {
      state.position = state.firstTabInLine;
      throwError(state, "tab characters must not be used in indentation");
    }
    if (ch !== 45) {
      break;
    }
    following = state.input.charCodeAt(state.position + 1);
    if (!is_WS_OR_EOL(following)) {
      break;
    }
    detected = true;
    state.position++;
    if (skipSeparationSpace(state, true, -1)) {
      if (state.lineIndent <= nodeIndent) {
        _result.push(null);
        ch = state.input.charCodeAt(state.position);
        continue;
      }
    }
    _line = state.line;
    composeNode(state, nodeIndent, CONTEXT_BLOCK_IN, false, true);
    _result.push(state.result);
    skipSeparationSpace(state, true, -1);
    ch = state.input.charCodeAt(state.position);
    if ((state.line === _line || state.lineIndent > nodeIndent) && ch !== 0) {
      throwError(state, "bad indentation of a sequence entry");
    } else if (state.lineIndent < nodeIndent) {
      break;
    }
  }
  if (detected) {
    state.tag = _tag;
    state.anchor = _anchor;
    state.kind = "sequence";
    state.result = _result;
    return true;
  }
  return false;
}
function readBlockMapping(state, nodeIndent, flowIndent) {
  var following, allowCompact, _line, _keyLine, _keyLineStart, _keyPos, _tag = state.tag, _anchor = state.anchor, _result = {}, overridableKeys = /* @__PURE__ */ Object.create(null), keyTag = null, keyNode = null, valueNode = null, atExplicitKey = false, detected = false, ch;
  if (state.firstTabInLine !== -1) return false;
  if (state.anchor !== null) {
    state.anchorMap[state.anchor] = _result;
  }
  ch = state.input.charCodeAt(state.position);
  while (ch !== 0) {
    if (!atExplicitKey && state.firstTabInLine !== -1) {
      state.position = state.firstTabInLine;
      throwError(state, "tab characters must not be used in indentation");
    }
    following = state.input.charCodeAt(state.position + 1);
    _line = state.line;
    if ((ch === 63 || ch === 58) && is_WS_OR_EOL(following)) {
      if (ch === 63) {
        if (atExplicitKey) {
          storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null, _keyLine, _keyLineStart, _keyPos);
          keyTag = keyNode = valueNode = null;
        }
        detected = true;
        atExplicitKey = true;
        allowCompact = true;
      } else if (atExplicitKey) {
        atExplicitKey = false;
        allowCompact = true;
      } else {
        throwError(state, "incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line");
      }
      state.position += 1;
      ch = following;
    } else {
      _keyLine = state.line;
      _keyLineStart = state.lineStart;
      _keyPos = state.position;
      if (!composeNode(state, flowIndent, CONTEXT_FLOW_OUT, false, true)) {
        break;
      }
      if (state.line === _line) {
        ch = state.input.charCodeAt(state.position);
        while (is_WHITE_SPACE(ch)) {
          ch = state.input.charCodeAt(++state.position);
        }
        if (ch === 58) {
          ch = state.input.charCodeAt(++state.position);
          if (!is_WS_OR_EOL(ch)) {
            throwError(state, "a whitespace character is expected after the key-value separator within a block mapping");
          }
          if (atExplicitKey) {
            storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null, _keyLine, _keyLineStart, _keyPos);
            keyTag = keyNode = valueNode = null;
          }
          detected = true;
          atExplicitKey = false;
          allowCompact = false;
          keyTag = state.tag;
          keyNode = state.result;
        } else if (detected) {
          throwError(state, "can not read an implicit mapping pair; a colon is missed");
        } else {
          state.tag = _tag;
          state.anchor = _anchor;
          return true;
        }
      } else if (detected) {
        throwError(state, "can not read a block mapping entry; a multiline key may not be an implicit key");
      } else {
        state.tag = _tag;
        state.anchor = _anchor;
        return true;
      }
    }
    if (state.line === _line || state.lineIndent > nodeIndent) {
      if (atExplicitKey) {
        _keyLine = state.line;
        _keyLineStart = state.lineStart;
        _keyPos = state.position;
      }
      if (composeNode(state, nodeIndent, CONTEXT_BLOCK_OUT, true, allowCompact)) {
        if (atExplicitKey) {
          keyNode = state.result;
        } else {
          valueNode = state.result;
        }
      }
      if (!atExplicitKey) {
        storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, valueNode, _keyLine, _keyLineStart, _keyPos);
        keyTag = keyNode = valueNode = null;
      }
      skipSeparationSpace(state, true, -1);
      ch = state.input.charCodeAt(state.position);
    }
    if ((state.line === _line || state.lineIndent > nodeIndent) && ch !== 0) {
      throwError(state, "bad indentation of a mapping entry");
    } else if (state.lineIndent < nodeIndent) {
      break;
    }
  }
  if (atExplicitKey) {
    storeMappingPair(state, _result, overridableKeys, keyTag, keyNode, null, _keyLine, _keyLineStart, _keyPos);
  }
  if (detected) {
    state.tag = _tag;
    state.anchor = _anchor;
    state.kind = "mapping";
    state.result = _result;
  }
  return detected;
}
function readTagProperty(state) {
  var _position, isVerbatim = false, isNamed = false, tagHandle, tagName, ch;
  ch = state.input.charCodeAt(state.position);
  if (ch !== 33) return false;
  if (state.tag !== null) {
    throwError(state, "duplication of a tag property");
  }
  ch = state.input.charCodeAt(++state.position);
  if (ch === 60) {
    isVerbatim = true;
    ch = state.input.charCodeAt(++state.position);
  } else if (ch === 33) {
    isNamed = true;
    tagHandle = "!!";
    ch = state.input.charCodeAt(++state.position);
  } else {
    tagHandle = "!";
  }
  _position = state.position;
  if (isVerbatim) {
    do {
      ch = state.input.charCodeAt(++state.position);
    } while (ch !== 0 && ch !== 62);
    if (state.position < state.length) {
      tagName = state.input.slice(_position, state.position);
      ch = state.input.charCodeAt(++state.position);
    } else {
      throwError(state, "unexpected end of the stream within a verbatim tag");
    }
  } else {
    while (ch !== 0 && !is_WS_OR_EOL(ch)) {
      if (ch === 33) {
        if (!isNamed) {
          tagHandle = state.input.slice(_position - 1, state.position + 1);
          if (!PATTERN_TAG_HANDLE.test(tagHandle)) {
            throwError(state, "named tag handle cannot contain such characters");
          }
          isNamed = true;
          _position = state.position + 1;
        } else {
          throwError(state, "tag suffix cannot contain exclamation marks");
        }
      }
      ch = state.input.charCodeAt(++state.position);
    }
    tagName = state.input.slice(_position, state.position);
    if (PATTERN_FLOW_INDICATORS.test(tagName)) {
      throwError(state, "tag suffix cannot contain flow indicator characters");
    }
  }
  if (tagName && !PATTERN_TAG_URI.test(tagName)) {
    throwError(state, "tag name cannot contain such characters: " + tagName);
  }
  try {
    tagName = decodeURIComponent(tagName);
  } catch (err) {
    throwError(state, "tag name is malformed: " + tagName);
  }
  if (isVerbatim) {
    state.tag = tagName;
  } else if (_hasOwnProperty$1.call(state.tagMap, tagHandle)) {
    state.tag = state.tagMap[tagHandle] + tagName;
  } else if (tagHandle === "!") {
    state.tag = "!" + tagName;
  } else if (tagHandle === "!!") {
    state.tag = "tag:yaml.org,2002:" + tagName;
  } else {
    throwError(state, 'undeclared tag handle "' + tagHandle + '"');
  }
  return true;
}
function readAnchorProperty(state) {
  var _position, ch;
  ch = state.input.charCodeAt(state.position);
  if (ch !== 38) return false;
  if (state.anchor !== null) {
    throwError(state, "duplication of an anchor property");
  }
  ch = state.input.charCodeAt(++state.position);
  _position = state.position;
  while (ch !== 0 && !is_WS_OR_EOL(ch) && !is_FLOW_INDICATOR(ch)) {
    ch = state.input.charCodeAt(++state.position);
  }
  if (state.position === _position) {
    throwError(state, "name of an anchor node must contain at least one character");
  }
  state.anchor = state.input.slice(_position, state.position);
  return true;
}
function readAlias(state) {
  var _position, alias, ch;
  ch = state.input.charCodeAt(state.position);
  if (ch !== 42) return false;
  ch = state.input.charCodeAt(++state.position);
  _position = state.position;
  while (ch !== 0 && !is_WS_OR_EOL(ch) && !is_FLOW_INDICATOR(ch)) {
    ch = state.input.charCodeAt(++state.position);
  }
  if (state.position === _position) {
    throwError(state, "name of an alias node must contain at least one character");
  }
  alias = state.input.slice(_position, state.position);
  if (!_hasOwnProperty$1.call(state.anchorMap, alias)) {
    throwError(state, 'unidentified alias "' + alias + '"');
  }
  state.result = state.anchorMap[alias];
  skipSeparationSpace(state, true, -1);
  return true;
}
function composeNode(state, parentIndent, nodeContext, allowToSeek, allowCompact) {
  var allowBlockStyles, allowBlockScalars, allowBlockCollections, indentStatus = 1, atNewLine = false, hasContent = false, typeIndex, typeQuantity, typeList, type4, flowIndent, blockIndent;
  if (state.listener !== null) {
    state.listener("open", state);
  }
  state.tag = null;
  state.anchor = null;
  state.kind = null;
  state.result = null;
  allowBlockStyles = allowBlockScalars = allowBlockCollections = CONTEXT_BLOCK_OUT === nodeContext || CONTEXT_BLOCK_IN === nodeContext;
  if (allowToSeek) {
    if (skipSeparationSpace(state, true, -1)) {
      atNewLine = true;
      if (state.lineIndent > parentIndent) {
        indentStatus = 1;
      } else if (state.lineIndent === parentIndent) {
        indentStatus = 0;
      } else if (state.lineIndent < parentIndent) {
        indentStatus = -1;
      }
    }
  }
  if (indentStatus === 1) {
    while (readTagProperty(state) || readAnchorProperty(state)) {
      if (skipSeparationSpace(state, true, -1)) {
        atNewLine = true;
        allowBlockCollections = allowBlockStyles;
        if (state.lineIndent > parentIndent) {
          indentStatus = 1;
        } else if (state.lineIndent === parentIndent) {
          indentStatus = 0;
        } else if (state.lineIndent < parentIndent) {
          indentStatus = -1;
        }
      } else {
        allowBlockCollections = false;
      }
    }
  }
  if (allowBlockCollections) {
    allowBlockCollections = atNewLine || allowCompact;
  }
  if (indentStatus === 1 || CONTEXT_BLOCK_OUT === nodeContext) {
    if (CONTEXT_FLOW_IN === nodeContext || CONTEXT_FLOW_OUT === nodeContext) {
      flowIndent = parentIndent;
    } else {
      flowIndent = parentIndent + 1;
    }
    blockIndent = state.position - state.lineStart;
    if (indentStatus === 1) {
      if (allowBlockCollections && (readBlockSequence(state, blockIndent) || readBlockMapping(state, blockIndent, flowIndent)) || readFlowCollection(state, flowIndent)) {
        hasContent = true;
      } else {
        if (allowBlockScalars && readBlockScalar(state, flowIndent) || readSingleQuotedScalar(state, flowIndent) || readDoubleQuotedScalar(state, flowIndent)) {
          hasContent = true;
        } else if (readAlias(state)) {
          hasContent = true;
          if (state.tag !== null || state.anchor !== null) {
            throwError(state, "alias node should not have any properties");
          }
        } else if (readPlainScalar(state, flowIndent, CONTEXT_FLOW_IN === nodeContext)) {
          hasContent = true;
          if (state.tag === null) {
            state.tag = "?";
          }
        }
        if (state.anchor !== null) {
          state.anchorMap[state.anchor] = state.result;
        }
      }
    } else if (indentStatus === 0) {
      hasContent = allowBlockCollections && readBlockSequence(state, blockIndent);
    }
  }
  if (state.tag === null) {
    if (state.anchor !== null) {
      state.anchorMap[state.anchor] = state.result;
    }
  } else if (state.tag === "?") {
    if (state.result !== null && state.kind !== "scalar") {
      throwError(state, 'unacceptable node kind for !<?> tag; it should be "scalar", not "' + state.kind + '"');
    }
    for (typeIndex = 0, typeQuantity = state.implicitTypes.length; typeIndex < typeQuantity; typeIndex += 1) {
      type4 = state.implicitTypes[typeIndex];
      if (type4.resolve(state.result)) {
        state.result = type4.construct(state.result);
        state.tag = type4.tag;
        if (state.anchor !== null) {
          state.anchorMap[state.anchor] = state.result;
        }
        break;
      }
    }
  } else if (state.tag !== "!") {
    if (_hasOwnProperty$1.call(state.typeMap[state.kind || "fallback"], state.tag)) {
      type4 = state.typeMap[state.kind || "fallback"][state.tag];
    } else {
      type4 = null;
      typeList = state.typeMap.multi[state.kind || "fallback"];
      for (typeIndex = 0, typeQuantity = typeList.length; typeIndex < typeQuantity; typeIndex += 1) {
        if (state.tag.slice(0, typeList[typeIndex].tag.length) === typeList[typeIndex].tag) {
          type4 = typeList[typeIndex];
          break;
        }
      }
    }
    if (!type4) {
      throwError(state, "unknown tag !<" + state.tag + ">");
    }
    if (state.result !== null && type4.kind !== state.kind) {
      throwError(state, "unacceptable node kind for !<" + state.tag + '> tag; it should be "' + type4.kind + '", not "' + state.kind + '"');
    }
    if (!type4.resolve(state.result, state.tag)) {
      throwError(state, "cannot resolve a node with !<" + state.tag + "> explicit tag");
    } else {
      state.result = type4.construct(state.result, state.tag);
      if (state.anchor !== null) {
        state.anchorMap[state.anchor] = state.result;
      }
    }
  }
  if (state.listener !== null) {
    state.listener("close", state);
  }
  return state.tag !== null || state.anchor !== null || hasContent;
}
function readDocument(state) {
  var documentStart = state.position, _position, directiveName, directiveArgs, hasDirectives = false, ch;
  state.version = null;
  state.checkLineBreaks = state.legacy;
  state.tagMap = /* @__PURE__ */ Object.create(null);
  state.anchorMap = /* @__PURE__ */ Object.create(null);
  while ((ch = state.input.charCodeAt(state.position)) !== 0) {
    skipSeparationSpace(state, true, -1);
    ch = state.input.charCodeAt(state.position);
    if (state.lineIndent > 0 || ch !== 37) {
      break;
    }
    hasDirectives = true;
    ch = state.input.charCodeAt(++state.position);
    _position = state.position;
    while (ch !== 0 && !is_WS_OR_EOL(ch)) {
      ch = state.input.charCodeAt(++state.position);
    }
    directiveName = state.input.slice(_position, state.position);
    directiveArgs = [];
    if (directiveName.length < 1) {
      throwError(state, "directive name must not be less than one character in length");
    }
    while (ch !== 0) {
      while (is_WHITE_SPACE(ch)) {
        ch = state.input.charCodeAt(++state.position);
      }
      if (ch === 35) {
        do {
          ch = state.input.charCodeAt(++state.position);
        } while (ch !== 0 && !is_EOL(ch));
        break;
      }
      if (is_EOL(ch)) break;
      _position = state.position;
      while (ch !== 0 && !is_WS_OR_EOL(ch)) {
        ch = state.input.charCodeAt(++state.position);
      }
      directiveArgs.push(state.input.slice(_position, state.position));
    }
    if (ch !== 0) readLineBreak(state);
    if (_hasOwnProperty$1.call(directiveHandlers, directiveName)) {
      directiveHandlers[directiveName](state, directiveName, directiveArgs);
    } else {
      throwWarning(state, 'unknown document directive "' + directiveName + '"');
    }
  }
  skipSeparationSpace(state, true, -1);
  if (state.lineIndent === 0 && state.input.charCodeAt(state.position) === 45 && state.input.charCodeAt(state.position + 1) === 45 && state.input.charCodeAt(state.position + 2) === 45) {
    state.position += 3;
    skipSeparationSpace(state, true, -1);
  } else if (hasDirectives) {
    throwError(state, "directives end mark is expected");
  }
  composeNode(state, state.lineIndent - 1, CONTEXT_BLOCK_OUT, false, true);
  skipSeparationSpace(state, true, -1);
  if (state.checkLineBreaks && PATTERN_NON_ASCII_LINE_BREAKS.test(state.input.slice(documentStart, state.position))) {
    throwWarning(state, "non-ASCII line breaks are interpreted as content");
  }
  state.documents.push(state.result);
  if (state.position === state.lineStart && testDocumentSeparator(state)) {
    if (state.input.charCodeAt(state.position) === 46) {
      state.position += 3;
      skipSeparationSpace(state, true, -1);
    }
    return;
  }
  if (state.position < state.length - 1) {
    throwError(state, "end of the stream or a document separator is expected");
  } else {
    return;
  }
}
function loadDocuments(input, options) {
  input = String(input);
  options = options || {};
  if (input.length !== 0) {
    if (input.charCodeAt(input.length - 1) !== 10 && input.charCodeAt(input.length - 1) !== 13) {
      input += "\n";
    }
    if (input.charCodeAt(0) === 65279) {
      input = input.slice(1);
    }
  }
  var state = new State$1(input, options);
  var nullpos = input.indexOf("\0");
  if (nullpos !== -1) {
    state.position = nullpos;
    throwError(state, "null byte is not allowed in input");
  }
  state.input += "\0";
  while (state.input.charCodeAt(state.position) === 32) {
    state.lineIndent += 1;
    state.position += 1;
  }
  while (state.position < state.length - 1) {
    readDocument(state);
  }
  return state.documents;
}
function loadAll$1(input, iterator, options) {
  if (iterator !== null && typeof iterator === "object" && typeof options === "undefined") {
    options = iterator;
    iterator = null;
  }
  var documents = loadDocuments(input, options);
  if (typeof iterator !== "function") {
    return documents;
  }
  for (var index = 0, length = documents.length; index < length; index += 1) {
    iterator(documents[index]);
  }
}
function load$1(input, options) {
  var documents = loadDocuments(input, options);
  if (documents.length === 0) {
    return void 0;
  } else if (documents.length === 1) {
    return documents[0];
  }
  throw new exception("expected a single document in the stream, but found more");
}
function compileStyleMap(schema2, map26) {
  var result2, keys4, index, length, tag, style, type4;
  if (map26 === null) return {};
  result2 = {};
  keys4 = Object.keys(map26);
  for (index = 0, length = keys4.length; index < length; index += 1) {
    tag = keys4[index];
    style = String(map26[tag]);
    if (tag.slice(0, 2) === "!!") {
      tag = "tag:yaml.org,2002:" + tag.slice(2);
    }
    type4 = schema2.compiledTypeMap["fallback"][tag];
    if (type4 && _hasOwnProperty.call(type4.styleAliases, style)) {
      style = type4.styleAliases[style];
    }
    result2[tag] = style;
  }
  return result2;
}
function encodeHex(character) {
  var string, handle, length;
  string = character.toString(16).toUpperCase();
  if (character <= 255) {
    handle = "x";
    length = 2;
  } else if (character <= 65535) {
    handle = "u";
    length = 4;
  } else if (character <= 4294967295) {
    handle = "U";
    length = 8;
  } else {
    throw new exception("code point within a string may not be greater than 0xFFFFFFFF");
  }
  return "\\" + handle + common.repeat("0", length - string.length) + string;
}
function State(options) {
  this.blankLines = options["blankLines"] || false;
  this.schema = options["schema"] || _default;
  this.indent = Math.max(1, options["indent"] || 2);
  this.noArrayIndent = options["noArrayIndent"] || false;
  this.skipInvalid = options["skipInvalid"] || false;
  this.flowLevel = common.isNothing(options["flowLevel"]) ? -1 : options["flowLevel"];
  this.styleMap = compileStyleMap(this.schema, options["styles"] || null);
  this.sortKeys = options["sortKeys"] || false;
  this.lineWidth = options["lineWidth"] || 80;
  this.noRefs = options["noRefs"] || false;
  this.noCompatMode = options["noCompatMode"] || false;
  this.condenseFlow = options["condenseFlow"] || false;
  this.quotingType = options["quotingType"] === '"' ? QUOTING_TYPE_DOUBLE : QUOTING_TYPE_SINGLE;
  this.forceQuotes = options["forceQuotes"] || false;
  this.replacer = typeof options["replacer"] === "function" ? options["replacer"] : null;
  this.implicitTypes = this.schema.compiledImplicit;
  this.explicitTypes = this.schema.compiledExplicit;
  this.tag = null;
  this.result = "";
  this.duplicates = [];
  this.usedDuplicates = null;
}
function indentString(string, spaces) {
  var ind = common.repeat(" ", spaces), position3 = 0, next2 = -1, result2 = "", line, length = string.length;
  while (position3 < length) {
    next2 = string.indexOf("\n", position3);
    if (next2 === -1) {
      line = string.slice(position3);
      position3 = length;
    } else {
      line = string.slice(position3, next2 + 1);
      position3 = next2 + 1;
    }
    if (line.length && line !== "\n") result2 += ind;
    result2 += line;
  }
  return result2;
}
function generateNextLine(state, level, doubleLine) {
  return "\n" + (doubleLine ? "\n" : "") + common.repeat(" ", state.indent * level);
}
function testImplicitResolving(state, str2) {
  var index, length, type4;
  for (index = 0, length = state.implicitTypes.length; index < length; index += 1) {
    type4 = state.implicitTypes[index];
    if (type4.resolve(str2)) {
      return true;
    }
  }
  return false;
}
function isWhitespace(c3) {
  return c3 === CHAR_SPACE || c3 === CHAR_TAB;
}
function isPrintable(c3) {
  return 32 <= c3 && c3 <= 126 || 161 <= c3 && c3 <= 55295 && c3 !== 8232 && c3 !== 8233 || 57344 <= c3 && c3 <= 65533 && c3 !== CHAR_BOM || 65536 <= c3 && c3 <= 1114111;
}
function isNsCharOrWhitespace(c3) {
  return isPrintable(c3) && c3 !== CHAR_BOM && c3 !== CHAR_CARRIAGE_RETURN && c3 !== CHAR_LINE_FEED;
}
function isPlainSafe(c3, prev, inblock) {
  var cIsNsCharOrWhitespace = isNsCharOrWhitespace(c3);
  var cIsNsChar = cIsNsCharOrWhitespace && !isWhitespace(c3);
  return (
    // ns-plain-safe
    (inblock ? (
      // c = flow-in
      cIsNsCharOrWhitespace
    ) : cIsNsCharOrWhitespace && c3 !== CHAR_COMMA && c3 !== CHAR_LEFT_SQUARE_BRACKET && c3 !== CHAR_RIGHT_SQUARE_BRACKET && c3 !== CHAR_LEFT_CURLY_BRACKET && c3 !== CHAR_RIGHT_CURLY_BRACKET) && c3 !== CHAR_SHARP && !(prev === CHAR_COLON && !cIsNsChar) || isNsCharOrWhitespace(prev) && !isWhitespace(prev) && c3 === CHAR_SHARP || prev === CHAR_COLON && cIsNsChar
  );
}
function isPlainSafeFirst(c3) {
  return isPrintable(c3) && c3 !== CHAR_BOM && !isWhitespace(c3) && c3 !== CHAR_MINUS && c3 !== CHAR_QUESTION && c3 !== CHAR_COLON && c3 !== CHAR_COMMA && c3 !== CHAR_LEFT_SQUARE_BRACKET && c3 !== CHAR_RIGHT_SQUARE_BRACKET && c3 !== CHAR_LEFT_CURLY_BRACKET && c3 !== CHAR_RIGHT_CURLY_BRACKET && c3 !== CHAR_SHARP && c3 !== CHAR_AMPERSAND && c3 !== CHAR_ASTERISK && c3 !== CHAR_EXCLAMATION && c3 !== CHAR_VERTICAL_LINE && c3 !== CHAR_EQUALS && c3 !== CHAR_GREATER_THAN && c3 !== CHAR_SINGLE_QUOTE && c3 !== CHAR_DOUBLE_QUOTE && c3 !== CHAR_PERCENT && c3 !== CHAR_COMMERCIAL_AT && c3 !== CHAR_GRAVE_ACCENT;
}
function isPlainSafeLast(c3) {
  return !isWhitespace(c3) && c3 !== CHAR_COLON;
}
function codePointAt(string, pos) {
  var first = string.charCodeAt(pos), second;
  if (first >= 55296 && first <= 56319 && pos + 1 < string.length) {
    second = string.charCodeAt(pos + 1);
    if (second >= 56320 && second <= 57343) {
      return (first - 55296) * 1024 + second - 56320 + 65536;
    }
  }
  return first;
}
function needIndentIndicator(string) {
  var leadingSpaceRe = /^\n* /;
  return leadingSpaceRe.test(string);
}
function chooseScalarStyle(string, singleLineOnly, indentPerLevel, lineWidth, testAmbiguousType, quotingType, forceQuotes, inblock) {
  var i2;
  var char = 0;
  var prevChar = null;
  var hasLineBreak = false;
  var hasFoldableLine = false;
  var shouldTrackWidth = lineWidth !== -1;
  var previousLineBreak = -1;
  var plain = isPlainSafeFirst(codePointAt(string, 0)) && isPlainSafeLast(codePointAt(string, string.length - 1));
  if (singleLineOnly || forceQuotes) {
    for (i2 = 0; i2 < string.length; char >= 65536 ? i2 += 2 : i2++) {
      char = codePointAt(string, i2);
      if (!isPrintable(char)) {
        return STYLE_DOUBLE;
      }
      plain = plain && isPlainSafe(char, prevChar, inblock);
      prevChar = char;
    }
  } else {
    for (i2 = 0; i2 < string.length; char >= 65536 ? i2 += 2 : i2++) {
      char = codePointAt(string, i2);
      if (char === CHAR_LINE_FEED) {
        hasLineBreak = true;
        if (shouldTrackWidth) {
          hasFoldableLine = hasFoldableLine || // Foldable line = too long, and not more-indented.
          i2 - previousLineBreak - 1 > lineWidth && string[previousLineBreak + 1] !== " ";
          previousLineBreak = i2;
        }
      } else if (!isPrintable(char)) {
        return STYLE_DOUBLE;
      }
      plain = plain && isPlainSafe(char, prevChar, inblock);
      prevChar = char;
    }
    hasFoldableLine = hasFoldableLine || shouldTrackWidth && (i2 - previousLineBreak - 1 > lineWidth && string[previousLineBreak + 1] !== " ");
  }
  if (!hasLineBreak && !hasFoldableLine) {
    if (plain && !forceQuotes && !testAmbiguousType(string)) {
      return STYLE_PLAIN;
    }
    return quotingType === QUOTING_TYPE_DOUBLE ? STYLE_DOUBLE : STYLE_SINGLE;
  }
  if (indentPerLevel > 9 && needIndentIndicator(string)) {
    return STYLE_DOUBLE;
  }
  if (!forceQuotes) {
    return hasFoldableLine ? STYLE_FOLDED : STYLE_LITERAL;
  }
  return quotingType === QUOTING_TYPE_DOUBLE ? STYLE_DOUBLE : STYLE_SINGLE;
}
function writeScalar(state, string, level, iskey, inblock, singleLO) {
  state.dump = (function() {
    if (string.length === 0) {
      return state.quotingType === QUOTING_TYPE_DOUBLE ? '""' : "''";
    }
    if (!state.noCompatMode) {
      if (DEPRECATED_BOOLEANS_SYNTAX.indexOf(string) !== -1 || DEPRECATED_BASE60_SYNTAX.test(string)) {
        return state.quotingType === QUOTING_TYPE_DOUBLE ? '"' + string + '"' : "'" + string + "'";
      }
    }
    var indent = state.indent * Math.max(1, level);
    var lineWidth = state.lineWidth === -1 ? -1 : Math.max(Math.min(state.lineWidth, 40), state.lineWidth - indent);
    var singleLineOnly = iskey || singleLO || state.flowLevel > -1 && level >= state.flowLevel;
    function testAmbiguity(string2) {
      return testImplicitResolving(state, string2);
    }
    switch (chooseScalarStyle(
      string,
      singleLineOnly,
      state.indent,
      lineWidth,
      testAmbiguity,
      state.quotingType,
      state.forceQuotes && !iskey,
      inblock
    )) {
      case STYLE_PLAIN:
        return string;
      case STYLE_SINGLE:
        return "'" + string.replace(/'/g, "''") + "'";
      case STYLE_LITERAL:
        return "|" + blockHeader(string, state.indent) + dropEndingNewline(indentString(string, indent));
      case STYLE_FOLDED:
        return ">" + blockHeader(string, state.indent) + dropEndingNewline(indentString(foldString(string, lineWidth), indent));
      case STYLE_DOUBLE:
        return '"' + escapeString(string) + '"';
      default:
        throw new exception("impossible error: invalid scalar style");
    }
  })();
}
function blockHeader(string, indentPerLevel) {
  var indentIndicator = needIndentIndicator(string) ? String(indentPerLevel) : "";
  var clip = string[string.length - 1] === "\n";
  var keep = clip && (string[string.length - 2] === "\n" || string === "\n");
  var chomp = keep ? "+" : clip ? "" : "-";
  return indentIndicator + chomp + "\n";
}
function dropEndingNewline(string) {
  return string[string.length - 1] === "\n" ? string.slice(0, -1) : string;
}
function foldString(string, width) {
  var lineRe = /(\n+)([^\n]*)/g;
  var result2 = (function() {
    var nextLF = string.indexOf("\n");
    nextLF = nextLF !== -1 ? nextLF : string.length;
    lineRe.lastIndex = nextLF;
    return foldLine(string.slice(0, nextLF), width);
  })();
  var prevMoreIndented = string[0] === "\n" || string[0] === " ";
  var moreIndented;
  var match;
  while (match = lineRe.exec(string)) {
    var prefix = match[1], line = match[2];
    moreIndented = line[0] === " ";
    result2 += prefix + (!prevMoreIndented && !moreIndented && line !== "" ? "\n" : "") + foldLine(line, width);
    prevMoreIndented = moreIndented;
  }
  return result2;
}
function foldLine(line, width) {
  if (line === "" || line[0] === " ") return line;
  var breakRe = / [^ ]/g;
  var match;
  var start = 0, end, curr = 0, next2 = 0;
  var result2 = "";
  while (match = breakRe.exec(line)) {
    next2 = match.index;
    if (next2 - start > width) {
      end = curr > start ? curr : next2;
      result2 += "\n" + line.slice(start, end);
      start = end + 1;
    }
    curr = next2;
  }
  result2 += "\n";
  if (line.length - start > width && curr > start) {
    result2 += line.slice(start, curr) + "\n" + line.slice(curr + 1);
  } else {
    result2 += line.slice(start);
  }
  return result2.slice(1);
}
function escapeString(string) {
  var result2 = "";
  var char = 0;
  var escapeSeq;
  for (var i2 = 0; i2 < string.length; char >= 65536 ? i2 += 2 : i2++) {
    char = codePointAt(string, i2);
    escapeSeq = ESCAPE_SEQUENCES[char];
    if (!escapeSeq && isPrintable(char)) {
      result2 += string[i2];
      if (char >= 65536) result2 += string[i2 + 1];
    } else {
      result2 += escapeSeq || encodeHex(char);
    }
  }
  return result2;
}
function writeFlowSequence(state, level, object) {
  var _result = "", _tag = state.tag, index, length, value;
  for (index = 0, length = object.length; index < length; index += 1) {
    value = object[index];
    if (state.replacer) {
      value = state.replacer.call(object, String(index), value);
    }
    if (writeNode(state, level, value, false, false) || typeof value === "undefined" && writeNode(state, level, null, false, false)) {
      if (_result !== "") _result += "," + (!state.condenseFlow ? " " : "");
      _result += state.dump;
    }
  }
  state.tag = _tag;
  state.dump = "[" + _result + "]";
}
function writeBlockSequence(state, level, object, compact) {
  var _result = "", _tag = state.tag, index, length, value;
  for (index = 0, length = object.length; index < length; index += 1) {
    value = object[index];
    if (state.replacer) {
      value = state.replacer.call(object, String(index), value);
    }
    if (writeNode(state, level + 1, value, true, true, false, true) || typeof value === "undefined" && writeNode(state, level + 1, null, true, true, false, true)) {
      if (!compact || _result !== "") {
        _result += generateNextLine(state, level);
      }
      if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) {
        _result += "-";
      } else {
        _result += "- ";
      }
      _result += state.dump;
    }
  }
  state.tag = _tag;
  state.dump = _result || "[]";
}
function writeFlowMapping(state, level, object, singleLineOnly) {
  var _result = "", _tag = state.tag, objectKeyList = Object.keys(object), index, length, objectKey, objectValue, pairBuffer;
  for (index = 0, length = objectKeyList.length; index < length; index += 1) {
    pairBuffer = "";
    if (_result !== "") pairBuffer += ", ";
    if (state.condenseFlow) pairBuffer += '"';
    objectKey = objectKeyList[index];
    objectValue = object[objectKey];
    if (state.replacer) {
      objectValue = state.replacer.call(object, objectKey, objectValue);
    }
    if (!writeNode(state, level, objectKey, false, false, singleLineOnly)) {
      continue;
    }
    if (state.dump.length > 1024) pairBuffer += "? ";
    pairBuffer += state.dump + (state.condenseFlow ? '"' : "") + ":" + (state.condenseFlow ? "" : " ");
    if (!writeNode(state, level, objectValue, false, false, singleLineOnly)) {
      continue;
    }
    pairBuffer += state.dump;
    _result += pairBuffer;
  }
  state.tag = _tag;
  state.dump = "{" + _result + "}";
}
function writeBlockMapping(state, level, object, compact, doubleLine) {
  var _result = "", _tag = state.tag, objectKeyList = Object.keys(object), index, length, objectKey, objectValue, explicitPair, pairBuffer;
  if (state.sortKeys === true) {
    objectKeyList.sort();
  } else if (typeof state.sortKeys === "function") {
    objectKeyList.sort(state.sortKeys);
  } else if (state.sortKeys) {
    throw new exception("sortKeys must be a boolean or a function");
  }
  for (index = 0, length = objectKeyList.length; index < length; index += 1) {
    pairBuffer = "";
    if (!compact || _result !== "") {
      pairBuffer += generateNextLine(state, level, doubleLine);
    }
    objectKey = objectKeyList[index];
    objectValue = object[objectKey];
    if (state.replacer) {
      objectValue = state.replacer.call(object, objectKey, objectValue);
    }
    if (!writeNode(state, level + 1, objectKey, true, true, true)) {
      continue;
    }
    explicitPair = state.tag !== null && state.tag !== "?" || state.dump && state.dump.length > 1024;
    if (explicitPair) {
      if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) {
        pairBuffer += "?";
      } else {
        pairBuffer += "? ";
      }
    }
    pairBuffer += state.dump;
    if (explicitPair) {
      pairBuffer += generateNextLine(state, level);
    }
    if (!writeNode(state, level + 1, objectValue, true, explicitPair, null, null, objectKey)) {
      continue;
    }
    if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) {
      pairBuffer += ":";
    } else {
      pairBuffer += ": ";
    }
    pairBuffer += state.dump;
    _result += pairBuffer;
  }
  state.tag = _tag;
  state.dump = _result || "{}";
}
function detectType(state, object, explicit) {
  var _result, typeList, index, length, type4, style;
  typeList = explicit ? state.explicitTypes : state.implicitTypes;
  for (index = 0, length = typeList.length; index < length; index += 1) {
    type4 = typeList[index];
    if ((type4.instanceOf || type4.predicate) && (!type4.instanceOf || typeof object === "object" && object instanceof type4.instanceOf) && (!type4.predicate || type4.predicate(object))) {
      if (explicit) {
        if (type4.multi && type4.representName) {
          state.tag = type4.representName(object);
        } else {
          state.tag = type4.tag;
        }
      } else {
        state.tag = "?";
      }
      if (type4.represent) {
        style = state.styleMap[type4.tag] || type4.defaultStyle;
        if (_toString.call(type4.represent) === "[object Function]") {
          _result = type4.represent(object, style);
        } else if (_hasOwnProperty.call(type4.represent, style)) {
          _result = type4.represent[style](object, style);
        } else {
          throw new exception("!<" + type4.tag + '> tag resolver accepts not "' + style + '" style');
        }
        state.dump = _result;
      }
      return true;
    }
  }
  return false;
}
function writeNode(state, level, object, block, compact, iskey, isblockseq, objectKey, singleLineOnly) {
  state.tag = null;
  state.dump = object;
  if (!detectType(state, object, false)) {
    detectType(state, object, true);
  }
  var type4 = _toString.call(state.dump);
  var inblock = block;
  var tagStr;
  if (block) {
    block = state.flowLevel < 0 || state.flowLevel > level;
  }
  var objectOrArray = type4 === "[object Object]" || type4 === "[object Array]", duplicateIndex, duplicate;
  if (objectOrArray) {
    duplicateIndex = state.duplicates.indexOf(object);
    duplicate = duplicateIndex !== -1;
  }
  if (state.tag !== null && state.tag !== "?" || duplicate || state.indent !== 2 && level > 0) {
    compact = false;
  }
  if (duplicate && state.usedDuplicates[duplicateIndex]) {
    state.dump = "*ref_" + duplicateIndex;
  } else {
    if (objectOrArray && duplicate && !state.usedDuplicates[duplicateIndex]) {
      state.usedDuplicates[duplicateIndex] = true;
    }
    if (type4 === "[object Object]") {
      singleLineOnly = SINGLE_LINE_KEYS[objectKey] || objectKey === "resolution" && state.dump.type !== "variations" && state.dump.type !== "binary";
      if (block && Object.keys(state.dump).length !== 0 && !singleLineOnly) {
        var doubleLine = state.blankLines ? objectKey === "packages" || objectKey === "importers" || objectKey === "snapshots" || level === 0 : false;
        writeBlockMapping(state, level, state.dump, compact, doubleLine);
        if (duplicate) {
          state.dump = "&ref_" + duplicateIndex + state.dump;
        }
      } else {
        writeFlowMapping(state, level, state.dump, singleLineOnly);
        if (duplicate) {
          state.dump = "&ref_" + duplicateIndex + " " + state.dump;
        }
      }
    } else if (type4 === "[object Array]") {
      singleLineOnly = SINGLE_LINE_KEYS[objectKey];
      if (block && state.dump.length !== 0 && !singleLineOnly) {
        if (state.noArrayIndent && !isblockseq && level > 0) {
          writeBlockSequence(state, level - 1, state.dump, compact);
        } else {
          writeBlockSequence(state, level, state.dump, compact);
        }
        if (duplicate) {
          state.dump = "&ref_" + duplicateIndex + state.dump;
        }
      } else {
        writeFlowSequence(state, level, state.dump);
        if (duplicate) {
          state.dump = "&ref_" + duplicateIndex + " " + state.dump;
        }
      }
    } else if (type4 === "[object String]") {
      if (state.tag !== "?") {
        writeScalar(state, state.dump, level, iskey, inblock, singleLineOnly);
      }
    } else if (type4 === "[object Undefined]") {
      return false;
    } else {
      if (state.skipInvalid) return false;
      throw new exception("unacceptable kind of an object to dump " + type4);
    }
    if (state.tag !== null && state.tag !== "?") {
      tagStr = encodeURI(
        state.tag[0] === "!" ? state.tag.slice(1) : state.tag
      ).replace(/!/g, "%21");
      if (state.tag[0] === "!") {
        tagStr = "!" + tagStr;
      } else if (tagStr.slice(0, 18) === "tag:yaml.org,2002:") {
        tagStr = "!!" + tagStr.slice(18);
      } else {
        tagStr = "!<" + tagStr + ">";
      }
      state.dump = tagStr + " " + state.dump;
    }
  }
  return true;
}
function getDuplicateReferences(object, state) {
  var objects = [], duplicatesIndexes = [], index, length;
  inspectNode(object, objects, duplicatesIndexes);
  for (index = 0, length = duplicatesIndexes.length; index < length; index += 1) {
    state.duplicates.push(objects[duplicatesIndexes[index]]);
  }
  state.usedDuplicates = new Array(length);
}
function inspectNode(object, objects, duplicatesIndexes) {
  var objectKeyList, index, length;
  if (object !== null && typeof object === "object") {
    index = objects.indexOf(object);
    if (index !== -1) {
      if (duplicatesIndexes.indexOf(index) === -1) {
        duplicatesIndexes.push(index);
      }
    } else {
      objects.push(object);
      if (Array.isArray(object)) {
        for (index = 0, length = object.length; index < length; index += 1) {
          inspectNode(object[index], objects, duplicatesIndexes);
        }
      } else {
        objectKeyList = Object.keys(object);
        for (index = 0, length = objectKeyList.length; index < length; index += 1) {
          inspectNode(object[objectKeyList[index]], objects, duplicatesIndexes);
        }
      }
    }
  }
}
function dump$1(input, options) {
  options = options || {};
  var state = new State(options);
  if (!state.noRefs) getDuplicateReferences(input, state);
  var value = input;
  if (state.replacer) {
    value = state.replacer.call({ "": value }, "", value);
  }
  if (writeNode(state, 0, value, true, true)) return state.dump + "\n";
  return "";
}
function renamed(from5, to) {
  return function() {
    throw new Error("Function yaml." + from5 + " is removed in js-yaml 4. Use yaml." + to + " instead, which is now safe by default.");
  };
}
var isNothing_1, isObject_1, toArray_1, repeat_1, isNegativeZero_1, extend_1, common, exception, snippet, TYPE_CONSTRUCTOR_OPTIONS, YAML_NODE_KINDS, type, schema, str, seq, map, failsafe, _null, bool, int, YAML_FLOAT_PATTERN, SCIENTIFIC_WITHOUT_DOT, float, json, core, YAML_DATE_REGEXP, YAML_TIMESTAMP_REGEXP, timestamp, merge, BASE64_MAP, binary, _hasOwnProperty$3, _toString$2, omap, _toString$1, pairs, _hasOwnProperty$2, set, _default, _hasOwnProperty$1, CONTEXT_FLOW_IN, CONTEXT_FLOW_OUT, CONTEXT_BLOCK_IN, CONTEXT_BLOCK_OUT, CHOMPING_CLIP, CHOMPING_STRIP, CHOMPING_KEEP, PATTERN_NON_PRINTABLE, PATTERN_NON_ASCII_LINE_BREAKS, PATTERN_FLOW_INDICATORS, PATTERN_TAG_HANDLE, PATTERN_TAG_URI, simpleEscapeCheck, simpleEscapeMap, i2, directiveHandlers, loadAll_1, load_1, loader, _toString, _hasOwnProperty, CHAR_BOM, CHAR_TAB, CHAR_LINE_FEED, CHAR_CARRIAGE_RETURN, CHAR_SPACE, CHAR_EXCLAMATION, CHAR_DOUBLE_QUOTE, CHAR_SHARP, CHAR_PERCENT, CHAR_AMPERSAND, CHAR_SINGLE_QUOTE, CHAR_ASTERISK, CHAR_COMMA, CHAR_MINUS, CHAR_COLON, CHAR_EQUALS, CHAR_GREATER_THAN, CHAR_QUESTION, CHAR_COMMERCIAL_AT, CHAR_LEFT_SQUARE_BRACKET, CHAR_RIGHT_SQUARE_BRACKET, CHAR_GRAVE_ACCENT, CHAR_LEFT_CURLY_BRACKET, CHAR_VERTICAL_LINE, CHAR_RIGHT_CURLY_BRACKET, ESCAPE_SEQUENCES, DEPRECATED_BOOLEANS_SYNTAX, DEPRECATED_BASE60_SYNTAX, SINGLE_LINE_KEYS, QUOTING_TYPE_SINGLE, QUOTING_TYPE_DOUBLE, STYLE_PLAIN, STYLE_SINGLE, STYLE_LITERAL, STYLE_FOLDED, STYLE_DOUBLE, dump_1, dumper, Type, Schema, FAILSAFE_SCHEMA, JSON_SCHEMA, CORE_SCHEMA, DEFAULT_SCHEMA, load, loadAll, dump, YAMLException, safeLoad, safeLoadAll, safeDump, jsYaml;
var init_js_yaml = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/js-yaml/0.0.11/7b2ef9ecac61472c03f3323b540887208e9b2699f699b43ede700d7823812a93/node_modules/@zkochan/js-yaml/dist/js-yaml.mjs"() {
    isNothing_1 = isNothing;
    isObject_1 = isObject;
    toArray_1 = toArray;
    repeat_1 = repeat;
    isNegativeZero_1 = isNegativeZero;
    extend_1 = extend;
    common = {
      isNothing: isNothing_1,
      isObject: isObject_1,
      toArray: toArray_1,
      repeat: repeat_1,
      isNegativeZero: isNegativeZero_1,
      extend: extend_1
    };
    YAMLException$1.prototype = Object.create(Error.prototype);
    YAMLException$1.prototype.constructor = YAMLException$1;
    YAMLException$1.prototype.toString = function toString(compact) {
      return this.name + ": " + formatError(this, compact);
    };
    exception = YAMLException$1;
    snippet = makeSnippet;
    TYPE_CONSTRUCTOR_OPTIONS = [
      "kind",
      "multi",
      "resolve",
      "construct",
      "instanceOf",
      "predicate",
      "represent",
      "representName",
      "defaultStyle",
      "styleAliases"
    ];
    YAML_NODE_KINDS = [
      "scalar",
      "sequence",
      "mapping"
    ];
    type = Type$1;
    Schema$1.prototype.extend = function extend2(definition) {
      var implicit = [];
      var explicit = [];
      if (definition instanceof type) {
        explicit.push(definition);
      } else if (Array.isArray(definition)) {
        explicit = explicit.concat(definition);
      } else if (definition && (Array.isArray(definition.implicit) || Array.isArray(definition.explicit))) {
        if (definition.implicit) implicit = implicit.concat(definition.implicit);
        if (definition.explicit) explicit = explicit.concat(definition.explicit);
      } else {
        throw new exception("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");
      }
      implicit.forEach(function(type$1) {
        if (!(type$1 instanceof type)) {
          throw new exception("Specified list of YAML types (or a single Type object) contains a non-Type object.");
        }
        if (type$1.loadKind && type$1.loadKind !== "scalar") {
          throw new exception("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.");
        }
        if (type$1.multi) {
          throw new exception("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.");
        }
      });
      explicit.forEach(function(type$1) {
        if (!(type$1 instanceof type)) {
          throw new exception("Specified list of YAML types (or a single Type object) contains a non-Type object.");
        }
      });
      var result2 = Object.create(Schema$1.prototype);
      result2.implicit = (this.implicit || []).concat(implicit);
      result2.explicit = (this.explicit || []).concat(explicit);
      result2.compiledImplicit = compileList(result2, "implicit", []);
      result2.compiledExplicit = compileList(result2, "explicit", []);
      result2.compiledTypeMap = compileMap(result2.compiledImplicit, result2.compiledExplicit);
      return result2;
    };
    schema = Schema$1;
    str = new type("tag:yaml.org,2002:str", {
      kind: "scalar",
      construct: function(data) {
        return data !== null ? data : "";
      }
    });
    seq = new type("tag:yaml.org,2002:seq", {
      kind: "sequence",
      construct: function(data) {
        return data !== null ? data : [];
      }
    });
    map = new type("tag:yaml.org,2002:map", {
      kind: "mapping",
      construct: function(data) {
        return data !== null ? data : {};
      }
    });
    failsafe = new schema({
      explicit: [
        str,
        seq,
        map
      ]
    });
    _null = new type("tag:yaml.org,2002:null", {
      kind: "scalar",
      resolve: resolveYamlNull,
      construct: constructYamlNull,
      predicate: isNull,
      represent: {
        canonical: function() {
          return "~";
        },
        lowercase: function() {
          return "null";
        },
        uppercase: function() {
          return "NULL";
        },
        camelcase: function() {
          return "Null";
        },
        empty: function() {
          return "";
        }
      },
      defaultStyle: "lowercase"
    });
    bool = new type("tag:yaml.org,2002:bool", {
      kind: "scalar",
      resolve: resolveYamlBoolean,
      construct: constructYamlBoolean,
      predicate: isBoolean,
      represent: {
        lowercase: function(object) {
          return object ? "true" : "false";
        },
        uppercase: function(object) {
          return object ? "TRUE" : "FALSE";
        },
        camelcase: function(object) {
          return object ? "True" : "False";
        }
      },
      defaultStyle: "lowercase"
    });
    int = new type("tag:yaml.org,2002:int", {
      kind: "scalar",
      resolve: resolveYamlInteger,
      construct: constructYamlInteger,
      predicate: isInteger,
      represent: {
        binary: function(obj) {
          return obj >= 0 ? "0b" + obj.toString(2) : "-0b" + obj.toString(2).slice(1);
        },
        octal: function(obj) {
          return obj >= 0 ? "0o" + obj.toString(8) : "-0o" + obj.toString(8).slice(1);
        },
        decimal: function(obj) {
          return obj.toString(10);
        },
        /* eslint-disable max-len */
        hexadecimal: function(obj) {
          return obj >= 0 ? "0x" + obj.toString(16).toUpperCase() : "-0x" + obj.toString(16).toUpperCase().slice(1);
        }
      },
      defaultStyle: "decimal",
      styleAliases: {
        binary: [2, "bin"],
        octal: [8, "oct"],
        decimal: [10, "dec"],
        hexadecimal: [16, "hex"]
      }
    });
    YAML_FLOAT_PATTERN = new RegExp(
      // 2.5e4, 2.5 and integers
      "^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$"
    );
    SCIENTIFIC_WITHOUT_DOT = /^[-+]?[0-9]+e/;
    float = new type("tag:yaml.org,2002:float", {
      kind: "scalar",
      resolve: resolveYamlFloat,
      construct: constructYamlFloat,
      predicate: isFloat,
      represent: representYamlFloat,
      defaultStyle: "lowercase"
    });
    json = failsafe.extend({
      implicit: [
        _null,
        bool,
        int,
        float
      ]
    });
    core = json;
    YAML_DATE_REGEXP = new RegExp(
      "^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"
    );
    YAML_TIMESTAMP_REGEXP = new RegExp(
      "^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$"
    );
    timestamp = new type("tag:yaml.org,2002:timestamp", {
      kind: "scalar",
      resolve: resolveYamlTimestamp,
      construct: constructYamlTimestamp,
      instanceOf: Date,
      represent: representYamlTimestamp
    });
    merge = new type("tag:yaml.org,2002:merge", {
      kind: "scalar",
      resolve: resolveYamlMerge
    });
    BASE64_MAP = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r";
    binary = new type("tag:yaml.org,2002:binary", {
      kind: "scalar",
      resolve: resolveYamlBinary,
      construct: constructYamlBinary,
      predicate: isBinary,
      represent: representYamlBinary
    });
    _hasOwnProperty$3 = Object.prototype.hasOwnProperty;
    _toString$2 = Object.prototype.toString;
    omap = new type("tag:yaml.org,2002:omap", {
      kind: "sequence",
      resolve: resolveYamlOmap,
      construct: constructYamlOmap
    });
    _toString$1 = Object.prototype.toString;
    pairs = new type("tag:yaml.org,2002:pairs", {
      kind: "sequence",
      resolve: resolveYamlPairs,
      construct: constructYamlPairs
    });
    _hasOwnProperty$2 = Object.prototype.hasOwnProperty;
    set = new type("tag:yaml.org,2002:set", {
      kind: "mapping",
      resolve: resolveYamlSet,
      construct: constructYamlSet
    });
    _default = core.extend({
      implicit: [
        timestamp,
        merge
      ],
      explicit: [
        binary,
        omap,
        pairs,
        set
      ]
    });
    _hasOwnProperty$1 = Object.prototype.hasOwnProperty;
    CONTEXT_FLOW_IN = 1;
    CONTEXT_FLOW_OUT = 2;
    CONTEXT_BLOCK_IN = 3;
    CONTEXT_BLOCK_OUT = 4;
    CHOMPING_CLIP = 1;
    CHOMPING_STRIP = 2;
    CHOMPING_KEEP = 3;
    PATTERN_NON_PRINTABLE = /[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/;
    PATTERN_NON_ASCII_LINE_BREAKS = /[\x85\u2028\u2029]/;
    PATTERN_FLOW_INDICATORS = /[,\[\]\{\}]/;
    PATTERN_TAG_HANDLE = /^(?:!|!!|![a-z\-]+!)$/i;
    PATTERN_TAG_URI = /^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;
    simpleEscapeCheck = new Array(256);
    simpleEscapeMap = new Array(256);
    for (i2 = 0; i2 < 256; i2++) {
      simpleEscapeCheck[i2] = simpleEscapeSequence(i2) ? 1 : 0;
      simpleEscapeMap[i2] = simpleEscapeSequence(i2);
    }
    directiveHandlers = {
      YAML: function handleYamlDirective(state, name, args) {
        var match, major, minor;
        if (state.version !== null) {
          throwError(state, "duplication of %YAML directive");
        }
        if (args.length !== 1) {
          throwError(state, "YAML directive accepts exactly one argument");
        }
        match = /^([0-9]+)\.([0-9]+)$/.exec(args[0]);
        if (match === null) {
          throwError(state, "ill-formed argument of the YAML directive");
        }
        major = parseInt(match[1], 10);
        minor = parseInt(match[2], 10);
        if (major !== 1) {
          throwError(state, "unacceptable YAML version of the document");
        }
        state.version = args[0];
        state.checkLineBreaks = minor < 2;
        if (minor !== 1 && minor !== 2) {
          throwWarning(state, "unsupported YAML version of the document");
        }
      },
      TAG: function handleTagDirective(state, name, args) {
        var handle, prefix;
        if (args.length !== 2) {
          throwError(state, "TAG directive accepts exactly two arguments");
        }
        handle = args[0];
        prefix = args[1];
        if (!PATTERN_TAG_HANDLE.test(handle)) {
          throwError(state, "ill-formed tag handle (first argument) of the TAG directive");
        }
        if (_hasOwnProperty$1.call(state.tagMap, handle)) {
          throwError(state, 'there is a previously declared suffix for "' + handle + '" tag handle');
        }
        if (!PATTERN_TAG_URI.test(prefix)) {
          throwError(state, "ill-formed tag prefix (second argument) of the TAG directive");
        }
        try {
          prefix = decodeURIComponent(prefix);
        } catch (err) {
          throwError(state, "tag prefix is malformed: " + prefix);
        }
        state.tagMap[handle] = prefix;
      }
    };
    loadAll_1 = loadAll$1;
    load_1 = load$1;
    loader = {
      loadAll: loadAll_1,
      load: load_1
    };
    _toString = Object.prototype.toString;
    _hasOwnProperty = Object.prototype.hasOwnProperty;
    CHAR_BOM = 65279;
    CHAR_TAB = 9;
    CHAR_LINE_FEED = 10;
    CHAR_CARRIAGE_RETURN = 13;
    CHAR_SPACE = 32;
    CHAR_EXCLAMATION = 33;
    CHAR_DOUBLE_QUOTE = 34;
    CHAR_SHARP = 35;
    CHAR_PERCENT = 37;
    CHAR_AMPERSAND = 38;
    CHAR_SINGLE_QUOTE = 39;
    CHAR_ASTERISK = 42;
    CHAR_COMMA = 44;
    CHAR_MINUS = 45;
    CHAR_COLON = 58;
    CHAR_EQUALS = 61;
    CHAR_GREATER_THAN = 62;
    CHAR_QUESTION = 63;
    CHAR_COMMERCIAL_AT = 64;
    CHAR_LEFT_SQUARE_BRACKET = 91;
    CHAR_RIGHT_SQUARE_BRACKET = 93;
    CHAR_GRAVE_ACCENT = 96;
    CHAR_LEFT_CURLY_BRACKET = 123;
    CHAR_VERTICAL_LINE = 124;
    CHAR_RIGHT_CURLY_BRACKET = 125;
    ESCAPE_SEQUENCES = {};
    ESCAPE_SEQUENCES[0] = "\\0";
    ESCAPE_SEQUENCES[7] = "\\a";
    ESCAPE_SEQUENCES[8] = "\\b";
    ESCAPE_SEQUENCES[9] = "\\t";
    ESCAPE_SEQUENCES[10] = "\\n";
    ESCAPE_SEQUENCES[11] = "\\v";
    ESCAPE_SEQUENCES[12] = "\\f";
    ESCAPE_SEQUENCES[13] = "\\r";
    ESCAPE_SEQUENCES[27] = "\\e";
    ESCAPE_SEQUENCES[34] = '\\"';
    ESCAPE_SEQUENCES[92] = "\\\\";
    ESCAPE_SEQUENCES[133] = "\\N";
    ESCAPE_SEQUENCES[160] = "\\_";
    ESCAPE_SEQUENCES[8232] = "\\L";
    ESCAPE_SEQUENCES[8233] = "\\P";
    DEPRECATED_BOOLEANS_SYNTAX = [
      "y",
      "Y",
      "yes",
      "Yes",
      "YES",
      "on",
      "On",
      "ON",
      "n",
      "N",
      "no",
      "No",
      "NO",
      "off",
      "Off",
      "OFF"
    ];
    DEPRECATED_BASE60_SYNTAX = /^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;
    SINGLE_LINE_KEYS = {
      cpu: true,
      engines: true,
      os: true,
      libc: true
    };
    QUOTING_TYPE_SINGLE = 1;
    QUOTING_TYPE_DOUBLE = 2;
    STYLE_PLAIN = 1;
    STYLE_SINGLE = 2;
    STYLE_LITERAL = 3;
    STYLE_FOLDED = 4;
    STYLE_DOUBLE = 5;
    dump_1 = dump$1;
    dumper = {
      dump: dump_1
    };
    Type = type;
    Schema = schema;
    FAILSAFE_SCHEMA = failsafe;
    JSON_SCHEMA = json;
    CORE_SCHEMA = core;
    DEFAULT_SCHEMA = _default;
    load = loader.load;
    loadAll = loader.loadAll;
    dump = dumper.dump;
    YAMLException = exception;
    safeLoad = renamed("safeLoad", "load");
    safeLoadAll = renamed("safeLoadAll", "loadAll");
    safeDump = renamed("safeDump", "dump");
    jsYaml = {
      Type,
      Schema,
      FAILSAFE_SCHEMA,
      JSON_SCHEMA,
      CORE_SCHEMA,
      DEFAULT_SCHEMA,
      load,
      loadAll,
      dump,
      YAMLException,
      safeLoad,
      safeLoadAll,
      safeDump
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/write-yaml-file/6.0.0/8bb240e96b79fa3e541e2914e1e5053ef89c5aec3cc2e4a89fcaa134630d1a8b/node_modules/write-yaml-file/index.js
import path3 from "node:path";
import fs from "node:fs";
async function writeYamlFile(fp, data, opts2) {
  if (opts2?.makeDir ?? true) {
    await fs.promises.mkdir(path3.dirname(fp), { recursive: true });
  }
  return main(import_write_file_atomic.default, fp, data, opts2);
}
var import_write_file_atomic, main;
var init_write_yaml_file = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/write-yaml-file/6.0.0/8bb240e96b79fa3e541e2914e1e5053ef89c5aec3cc2e4a89fcaa134630d1a8b/node_modules/write-yaml-file/index.js"() {
    import_write_file_atomic = __toESM(require_lib2(), 1);
    init_js_yaml();
    main = (fn, fp, data, opts2) => {
      if (!fp) {
        throw new TypeError("Expected a filepath");
      }
      if (data === void 0) {
        throw new TypeError("Expected data to stringify");
      }
      opts2 = opts2 || {};
      const yaml3 = jsYaml.dump(data, opts2);
      return fn(fp, yaml3, { mode: opts2.mode });
    };
  }
});

// ../workspace/project-manifest-writer/lib/index.js
import { promises as fs2 } from "node:fs";
import path4 from "node:path";
async function writeProjectManifest(filePath, manifest, opts2) {
  const fileType = filePath.slice(filePath.lastIndexOf(".") + 1).toLowerCase();
  if (fileType === "yaml") {
    return writeYamlFile(filePath, manifest, YAML_FORMAT);
  }
  await fs2.mkdir(path4.dirname(filePath), { recursive: true });
  const trailingNewline = opts2?.insertFinalNewline === false ? "" : "\n";
  const indent = opts2?.indent ?? "	";
  const json2 = fileType === "json5" ? stringifyJson5(manifest, indent, opts2?.comments) : JSON.stringify(manifest, void 0, indent);
  return (0, import_write_file_atomic2.default)(filePath, `${json2}${trailingNewline}`);
}
function stringifyJson5(obj, indent, comments) {
  const json5 = import_json5.default.stringify(obj, void 0, indent);
  if (comments) {
    return insertComments(json5, comments);
  }
  return json5;
}
var import_json5, import_write_file_atomic2, YAML_FORMAT;
var init_lib11 = __esm({
  "../workspace/project-manifest-writer/lib/index.js"() {
    "use strict";
    init_lib10();
    import_json5 = __toESM(require_lib(), 1);
    import_write_file_atomic2 = __toESM(require_lib2(), 1);
    init_write_yaml_file();
    YAML_FORMAT = {
      noCompatMode: true,
      noRefs: true
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/detect-indent/7.0.2/e42fa014dec7f69788573030166cbe50bb0e5a72667eeedf31fb585ad36a547e/node_modules/detect-indent/index.js
function shouldIgnoreSingleSpace(ignoreSingleSpaces, indentType, value) {
  return ignoreSingleSpaces && indentType === INDENT_TYPE_SPACE && value === 1;
}
function makeIndentsMap(string, ignoreSingleSpaces) {
  const indents = /* @__PURE__ */ new Map();
  let previousSize = 0;
  let previousIndentType;
  let key;
  for (const line of string.split(/\n/g)) {
    if (!line) {
      continue;
    }
    const matches2 = line.match(INDENT_REGEX);
    if (matches2 === null) {
      previousSize = 0;
      previousIndentType = "";
    } else {
      const indent = matches2[0].length;
      const indentType = matches2[1] ? INDENT_TYPE_SPACE : INDENT_TYPE_TAB;
      if (shouldIgnoreSingleSpace(ignoreSingleSpaces, indentType, indent)) {
        continue;
      }
      if (indentType !== previousIndentType) {
        previousSize = 0;
      }
      previousIndentType = indentType;
      let use = 1;
      let weight = 0;
      const indentDifference = indent - previousSize;
      previousSize = indent;
      if (indentDifference === 0) {
        use = 0;
        weight = 1;
      } else {
        const absoluteIndentDifference = Math.abs(indentDifference);
        if (shouldIgnoreSingleSpace(ignoreSingleSpaces, indentType, absoluteIndentDifference)) {
          continue;
        }
        key = encodeIndentsKey(indentType, absoluteIndentDifference);
      }
      const entry = indents.get(key);
      indents.set(key, entry === void 0 ? [1, 0] : [entry[0] + use, entry[1] + weight]);
    }
  }
  return indents;
}
function encodeIndentsKey(indentType, indentAmount) {
  const typeCharacter = indentType === INDENT_TYPE_SPACE ? "s" : "t";
  return typeCharacter + String(indentAmount);
}
function decodeIndentsKey(indentsKey) {
  const keyHasTypeSpace = indentsKey[0] === "s";
  const type4 = keyHasTypeSpace ? INDENT_TYPE_SPACE : INDENT_TYPE_TAB;
  const amount = Number(indentsKey.slice(1));
  return { type: type4, amount };
}
function getMostUsedKey(indents) {
  let result2;
  let maxUsed = 0;
  let maxWeight = 0;
  for (const [key, [usedCount, weight]] of indents) {
    if (usedCount > maxUsed || usedCount === maxUsed && weight > maxWeight) {
      maxUsed = usedCount;
      maxWeight = weight;
      result2 = key;
    }
  }
  return result2;
}
function makeIndentString(type4, amount) {
  const indentCharacter = type4 === INDENT_TYPE_SPACE ? " " : "	";
  return indentCharacter.repeat(amount);
}
function detectIndent(string) {
  if (typeof string !== "string") {
    throw new TypeError("Expected a string");
  }
  let indents = makeIndentsMap(string, true);
  if (indents.size === 0) {
    indents = makeIndentsMap(string, false);
  }
  const keyOfMostUsedIndent = getMostUsedKey(indents);
  let type4;
  let amount = 0;
  let indent = "";
  if (keyOfMostUsedIndent !== void 0) {
    ({ type: type4, amount } = decodeIndentsKey(keyOfMostUsedIndent));
    indent = makeIndentString(type4, amount);
  }
  return {
    amount,
    type: type4,
    indent
  };
}
var INDENT_REGEX, INDENT_TYPE_SPACE, INDENT_TYPE_TAB;
var init_detect_indent = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/detect-indent/7.0.2/e42fa014dec7f69788573030166cbe50bb0e5a72667eeedf31fb585ad36a547e/node_modules/detect-indent/index.js"() {
    INDENT_REGEX = /^(?:( )+|\t+)/;
    INDENT_TYPE_SPACE = "space";
    INDENT_TYPE_TAB = "tab";
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fast-deep-equal/3.1.3/57fbe5fd6f7d3bd61519466ad102884cc9e5511fabd9777317b6582805433878/node_modules/fast-deep-equal/index.js
var require_fast_deep_equal = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fast-deep-equal/3.1.3/57fbe5fd6f7d3bd61519466ad102884cc9e5511fabd9777317b6582805433878/node_modules/fast-deep-equal/index.js"(exports2, module2) {
    "use strict";
    module2.exports = function equal2(a2, b) {
      if (a2 === b) return true;
      if (a2 && b && typeof a2 == "object" && typeof b == "object") {
        if (a2.constructor !== b.constructor) return false;
        var length, i2, keys4;
        if (Array.isArray(a2)) {
          length = a2.length;
          if (length != b.length) return false;
          for (i2 = length; i2-- !== 0; )
            if (!equal2(a2[i2], b[i2])) return false;
          return true;
        }
        if (a2.constructor === RegExp) return a2.source === b.source && a2.flags === b.flags;
        if (a2.valueOf !== Object.prototype.valueOf) return a2.valueOf() === b.valueOf();
        if (a2.toString !== Object.prototype.toString) return a2.toString() === b.toString();
        keys4 = Object.keys(a2);
        length = keys4.length;
        if (length !== Object.keys(b).length) return false;
        for (i2 = length; i2-- !== 0; )
          if (!Object.prototype.hasOwnProperty.call(b, keys4[i2])) return false;
        for (i2 = length; i2-- !== 0; ) {
          var key = keys4[i2];
          if (!equal2(a2[key], b[key])) return false;
        }
        return true;
      }
      return a2 !== a2 && b !== b;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/strip-bom/5.0.0/c5abc9f591760d7581de2026bc6da7f255db82a0b75d02fcc6cebf460005b3e6/node_modules/strip-bom/index.js
function stripBom(string) {
  if (typeof string !== "string") {
    throw new TypeError(`Expected a string, got ${typeof string}`);
  }
  if (string.charCodeAt(0) === 65279) {
    return string.slice(1);
  }
  return string;
}
var init_strip_bom = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/strip-bom/5.0.0/c5abc9f591760d7581de2026bc6da7f255db82a0b75d02fcc6cebf460005b3e6/node_modules/strip-bom/index.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/read-yaml-file/3.0.0/e251ae834053d2767c2479b6c533dfca41ff11419afef74707e86228c258529a/node_modules/read-yaml-file/index.js
import fs3 from "node:fs";
async function readYamlFile(fp) {
  const data = await fs3.promises.readFile(fp, "utf8");
  return parse2(data);
}
var parse2;
var init_read_yaml_file = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/read-yaml-file/3.0.0/e251ae834053d2767c2479b6c533dfca41ff11419afef74707e86228c258529a/node_modules/read-yaml-file/index.js"() {
    init_strip_bom();
    init_js_yaml();
    parse2 = (data) => jsYaml.load(stripBom(data));
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/graceful-fs/4.2.11/e60a23841f60609f733db41b2b1eced16c30ec8fe2e67c2a9b80e2dab0755700/node_modules/graceful-fs/polyfills.js
var require_polyfills = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/graceful-fs/4.2.11/e60a23841f60609f733db41b2b1eced16c30ec8fe2e67c2a9b80e2dab0755700/node_modules/graceful-fs/polyfills.js"(exports2, module2) {
    var constants5 = __require("constants");
    var origCwd = process.cwd;
    var cwd = null;
    var platform3 = process.env.GRACEFUL_FS_PLATFORM || process.platform;
    process.cwd = function() {
      if (!cwd)
        cwd = origCwd.call(process);
      return cwd;
    };
    try {
      process.cwd();
    } catch (er) {
    }
    if (typeof process.chdir === "function") {
      chdir = process.chdir;
      process.chdir = function(d) {
        cwd = null;
        chdir.call(process, d);
      };
      if (Object.setPrototypeOf) Object.setPrototypeOf(process.chdir, chdir);
    }
    var chdir;
    module2.exports = patch;
    function patch(fs111) {
      if (constants5.hasOwnProperty("O_SYMLINK") && process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)) {
        patchLchmod(fs111);
      }
      if (!fs111.lutimes) {
        patchLutimes(fs111);
      }
      fs111.chown = chownFix(fs111.chown);
      fs111.fchown = chownFix(fs111.fchown);
      fs111.lchown = chownFix(fs111.lchown);
      fs111.chmod = chmodFix(fs111.chmod);
      fs111.fchmod = chmodFix(fs111.fchmod);
      fs111.lchmod = chmodFix(fs111.lchmod);
      fs111.chownSync = chownFixSync(fs111.chownSync);
      fs111.fchownSync = chownFixSync(fs111.fchownSync);
      fs111.lchownSync = chownFixSync(fs111.lchownSync);
      fs111.chmodSync = chmodFixSync(fs111.chmodSync);
      fs111.fchmodSync = chmodFixSync(fs111.fchmodSync);
      fs111.lchmodSync = chmodFixSync(fs111.lchmodSync);
      fs111.stat = statFix(fs111.stat);
      fs111.fstat = statFix(fs111.fstat);
      fs111.lstat = statFix(fs111.lstat);
      fs111.statSync = statFixSync(fs111.statSync);
      fs111.fstatSync = statFixSync(fs111.fstatSync);
      fs111.lstatSync = statFixSync(fs111.lstatSync);
      if (fs111.chmod && !fs111.lchmod) {
        fs111.lchmod = function(path218, mode, cb) {
          if (cb) process.nextTick(cb);
        };
        fs111.lchmodSync = function() {
        };
      }
      if (fs111.chown && !fs111.lchown) {
        fs111.lchown = function(path218, uid, gid, cb) {
          if (cb) process.nextTick(cb);
        };
        fs111.lchownSync = function() {
        };
      }
      if (platform3 === "win32") {
        fs111.rename = typeof fs111.rename !== "function" ? fs111.rename : (function(fs$rename) {
          function rename(from5, to, cb) {
            var start = Date.now();
            var backoff = 0;
            fs$rename(from5, to, function CB(er) {
              if (er && (er.code === "EACCES" || er.code === "EPERM" || er.code === "EBUSY") && Date.now() - start < 6e4) {
                setTimeout(function() {
                  fs111.stat(to, function(stater, st) {
                    if (stater && stater.code === "ENOENT")
                      fs$rename(from5, to, CB);
                    else
                      cb(er);
                  });
                }, backoff);
                if (backoff < 100)
                  backoff += 10;
                return;
              }
              if (cb) cb(er);
            });
          }
          if (Object.setPrototypeOf) Object.setPrototypeOf(rename, fs$rename);
          return rename;
        })(fs111.rename);
      }
      fs111.read = typeof fs111.read !== "function" ? fs111.read : (function(fs$read) {
        function read2(fd, buffer3, offset, length, position3, callback_) {
          var callback2;
          if (callback_ && typeof callback_ === "function") {
            var eagCounter = 0;
            callback2 = function(er, _, __) {
              if (er && er.code === "EAGAIN" && eagCounter < 10) {
                eagCounter++;
                return fs$read.call(fs111, fd, buffer3, offset, length, position3, callback2);
              }
              callback_.apply(this, arguments);
            };
          }
          return fs$read.call(fs111, fd, buffer3, offset, length, position3, callback2);
        }
        if (Object.setPrototypeOf) Object.setPrototypeOf(read2, fs$read);
        return read2;
      })(fs111.read);
      fs111.readSync = typeof fs111.readSync !== "function" ? fs111.readSync : /* @__PURE__ */ (function(fs$readSync) {
        return function(fd, buffer3, offset, length, position3) {
          var eagCounter = 0;
          while (true) {
            try {
              return fs$readSync.call(fs111, fd, buffer3, offset, length, position3);
            } catch (er) {
              if (er.code === "EAGAIN" && eagCounter < 10) {
                eagCounter++;
                continue;
              }
              throw er;
            }
          }
        };
      })(fs111.readSync);
      function patchLchmod(fs112) {
        fs112.lchmod = function(path218, mode, callback2) {
          fs112.open(
            path218,
            constants5.O_WRONLY | constants5.O_SYMLINK,
            mode,
            function(err, fd) {
              if (err) {
                if (callback2) callback2(err);
                return;
              }
              fs112.fchmod(fd, mode, function(err2) {
                fs112.close(fd, function(err22) {
                  if (callback2) callback2(err2 || err22);
                });
              });
            }
          );
        };
        fs112.lchmodSync = function(path218, mode) {
          var fd = fs112.openSync(path218, constants5.O_WRONLY | constants5.O_SYMLINK, mode);
          var threw = true;
          var ret2;
          try {
            ret2 = fs112.fchmodSync(fd, mode);
            threw = false;
          } finally {
            if (threw) {
              try {
                fs112.closeSync(fd);
              } catch (er) {
              }
            } else {
              fs112.closeSync(fd);
            }
          }
          return ret2;
        };
      }
      function patchLutimes(fs112) {
        if (constants5.hasOwnProperty("O_SYMLINK") && fs112.futimes) {
          fs112.lutimes = function(path218, at, mt, cb) {
            fs112.open(path218, constants5.O_SYMLINK, function(er, fd) {
              if (er) {
                if (cb) cb(er);
                return;
              }
              fs112.futimes(fd, at, mt, function(er2) {
                fs112.close(fd, function(er22) {
                  if (cb) cb(er2 || er22);
                });
              });
            });
          };
          fs112.lutimesSync = function(path218, at, mt) {
            var fd = fs112.openSync(path218, constants5.O_SYMLINK);
            var ret2;
            var threw = true;
            try {
              ret2 = fs112.futimesSync(fd, at, mt);
              threw = false;
            } finally {
              if (threw) {
                try {
                  fs112.closeSync(fd);
                } catch (er) {
                }
              } else {
                fs112.closeSync(fd);
              }
            }
            return ret2;
          };
        } else if (fs112.futimes) {
          fs112.lutimes = function(_a, _b, _c, cb) {
            if (cb) process.nextTick(cb);
          };
          fs112.lutimesSync = function() {
          };
        }
      }
      function chmodFix(orig) {
        if (!orig) return orig;
        return function(target2, mode, cb) {
          return orig.call(fs111, target2, mode, function(er) {
            if (chownErOk(er)) er = null;
            if (cb) cb.apply(this, arguments);
          });
        };
      }
      function chmodFixSync(orig) {
        if (!orig) return orig;
        return function(target2, mode) {
          try {
            return orig.call(fs111, target2, mode);
          } catch (er) {
            if (!chownErOk(er)) throw er;
          }
        };
      }
      function chownFix(orig) {
        if (!orig) return orig;
        return function(target2, uid, gid, cb) {
          return orig.call(fs111, target2, uid, gid, function(er) {
            if (chownErOk(er)) er = null;
            if (cb) cb.apply(this, arguments);
          });
        };
      }
      function chownFixSync(orig) {
        if (!orig) return orig;
        return function(target2, uid, gid) {
          try {
            return orig.call(fs111, target2, uid, gid);
          } catch (er) {
            if (!chownErOk(er)) throw er;
          }
        };
      }
      function statFix(orig) {
        if (!orig) return orig;
        return function(target2, options, cb) {
          if (typeof options === "function") {
            cb = options;
            options = null;
          }
          function callback2(er, stats) {
            if (stats) {
              if (stats.uid < 0) stats.uid += 4294967296;
              if (stats.gid < 0) stats.gid += 4294967296;
            }
            if (cb) cb.apply(this, arguments);
          }
          return options ? orig.call(fs111, target2, options, callback2) : orig.call(fs111, target2, callback2);
        };
      }
      function statFixSync(orig) {
        if (!orig) return orig;
        return function(target2, options) {
          var stats = options ? orig.call(fs111, target2, options) : orig.call(fs111, target2);
          if (stats) {
            if (stats.uid < 0) stats.uid += 4294967296;
            if (stats.gid < 0) stats.gid += 4294967296;
          }
          return stats;
        };
      }
      function chownErOk(er) {
        if (!er)
          return true;
        if (er.code === "ENOSYS")
          return true;
        var nonroot = !process.getuid || process.getuid() !== 0;
        if (nonroot) {
          if (er.code === "EINVAL" || er.code === "EPERM")
            return true;
        }
        return false;
      }
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/graceful-fs/4.2.11/e60a23841f60609f733db41b2b1eced16c30ec8fe2e67c2a9b80e2dab0755700/node_modules/graceful-fs/legacy-streams.js
var require_legacy_streams = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/graceful-fs/4.2.11/e60a23841f60609f733db41b2b1eced16c30ec8fe2e67c2a9b80e2dab0755700/node_modules/graceful-fs/legacy-streams.js"(exports2, module2) {
    var Stream = __require("stream").Stream;
    module2.exports = legacy;
    function legacy(fs111) {
      return {
        ReadStream,
        WriteStream
      };
      function ReadStream(path218, options) {
        if (!(this instanceof ReadStream)) return new ReadStream(path218, options);
        Stream.call(this);
        var self2 = this;
        this.path = path218;
        this.fd = null;
        this.readable = true;
        this.paused = false;
        this.flags = "r";
        this.mode = 438;
        this.bufferSize = 64 * 1024;
        options = options || {};
        var keys4 = Object.keys(options);
        for (var index = 0, length = keys4.length; index < length; index++) {
          var key = keys4[index];
          this[key] = options[key];
        }
        if (this.encoding) this.setEncoding(this.encoding);
        if (this.start !== void 0) {
          if ("number" !== typeof this.start) {
            throw TypeError("start must be a Number");
          }
          if (this.end === void 0) {
            this.end = Infinity;
          } else if ("number" !== typeof this.end) {
            throw TypeError("end must be a Number");
          }
          if (this.start > this.end) {
            throw new Error("start must be <= end");
          }
          this.pos = this.start;
        }
        if (this.fd !== null) {
          process.nextTick(function() {
            self2._read();
          });
          return;
        }
        fs111.open(this.path, this.flags, this.mode, function(err, fd) {
          if (err) {
            self2.emit("error", err);
            self2.readable = false;
            return;
          }
          self2.fd = fd;
          self2.emit("open", fd);
          self2._read();
        });
      }
      function WriteStream(path218, options) {
        if (!(this instanceof WriteStream)) return new WriteStream(path218, options);
        Stream.call(this);
        this.path = path218;
        this.fd = null;
        this.writable = true;
        this.flags = "w";
        this.encoding = "binary";
        this.mode = 438;
        this.bytesWritten = 0;
        options = options || {};
        var keys4 = Object.keys(options);
        for (var index = 0, length = keys4.length; index < length; index++) {
          var key = keys4[index];
          this[key] = options[key];
        }
        if (this.start !== void 0) {
          if ("number" !== typeof this.start) {
            throw TypeError("start must be a Number");
          }
          if (this.start < 0) {
            throw new Error("start must be >= zero");
          }
          this.pos = this.start;
        }
        this.busy = false;
        this._queue = [];
        if (this.fd === null) {
          this._open = fs111.open;
          this._queue.push([this._open, this.path, this.flags, this.mode, void 0]);
          this.flush();
        }
      }
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/graceful-fs/4.2.11/e60a23841f60609f733db41b2b1eced16c30ec8fe2e67c2a9b80e2dab0755700/node_modules/graceful-fs/clone.js
var require_clone = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/graceful-fs/4.2.11/e60a23841f60609f733db41b2b1eced16c30ec8fe2e67c2a9b80e2dab0755700/node_modules/graceful-fs/clone.js"(exports2, module2) {
    "use strict";
    module2.exports = clone3;
    var getPrototypeOf = Object.getPrototypeOf || function(obj) {
      return obj.__proto__;
    };
    function clone3(obj) {
      if (obj === null || typeof obj !== "object")
        return obj;
      if (obj instanceof Object)
        var copy2 = { __proto__: getPrototypeOf(obj) };
      else
        var copy2 = /* @__PURE__ */ Object.create(null);
      Object.getOwnPropertyNames(obj).forEach(function(key) {
        Object.defineProperty(copy2, key, Object.getOwnPropertyDescriptor(obj, key));
      });
      return copy2;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/graceful-fs/4.2.11/e60a23841f60609f733db41b2b1eced16c30ec8fe2e67c2a9b80e2dab0755700/node_modules/graceful-fs/graceful-fs.js
var require_graceful_fs = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/graceful-fs/4.2.11/e60a23841f60609f733db41b2b1eced16c30ec8fe2e67c2a9b80e2dab0755700/node_modules/graceful-fs/graceful-fs.js"(exports2, module2) {
    var fs111 = __require("fs");
    var polyfills = require_polyfills();
    var legacy = require_legacy_streams();
    var clone3 = require_clone();
    var util56 = __require("util");
    var gracefulQueue;
    var previousSymbol;
    if (typeof Symbol === "function" && typeof Symbol.for === "function") {
      gracefulQueue = /* @__PURE__ */ Symbol.for("graceful-fs.queue");
      previousSymbol = /* @__PURE__ */ Symbol.for("graceful-fs.previous");
    } else {
      gracefulQueue = "___graceful-fs.queue";
      previousSymbol = "___graceful-fs.previous";
    }
    function noop5() {
    }
    function publishQueue(context, queue3) {
      Object.defineProperty(context, gracefulQueue, {
        get: function() {
          return queue3;
        }
      });
    }
    var debug = noop5;
    if (util56.debuglog)
      debug = util56.debuglog("gfs4");
    else if (/\bgfs4\b/i.test(process.env.NODE_DEBUG || ""))
      debug = function() {
        var m = util56.format.apply(util56, arguments);
        m = "GFS4: " + m.split(/\n/).join("\nGFS4: ");
        console.error(m);
      };
    if (!fs111[gracefulQueue]) {
      queue2 = global[gracefulQueue] || [];
      publishQueue(fs111, queue2);
      fs111.close = (function(fs$close) {
        function close(fd, cb) {
          return fs$close.call(fs111, fd, function(err) {
            if (!err) {
              resetQueue();
            }
            if (typeof cb === "function")
              cb.apply(this, arguments);
          });
        }
        Object.defineProperty(close, previousSymbol, {
          value: fs$close
        });
        return close;
      })(fs111.close);
      fs111.closeSync = (function(fs$closeSync) {
        function closeSync(fd) {
          fs$closeSync.apply(fs111, arguments);
          resetQueue();
        }
        Object.defineProperty(closeSync, previousSymbol, {
          value: fs$closeSync
        });
        return closeSync;
      })(fs111.closeSync);
      if (/\bgfs4\b/i.test(process.env.NODE_DEBUG || "")) {
        process.on("exit", function() {
          debug(fs111[gracefulQueue]);
          __require("assert").equal(fs111[gracefulQueue].length, 0);
        });
      }
    }
    var queue2;
    if (!global[gracefulQueue]) {
      publishQueue(global, fs111[gracefulQueue]);
    }
    module2.exports = patch(clone3(fs111));
    if (process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH && !fs111.__patched) {
      module2.exports = patch(fs111);
      fs111.__patched = true;
    }
    function patch(fs112) {
      polyfills(fs112);
      fs112.gracefulify = patch;
      fs112.createReadStream = createReadStream4;
      fs112.createWriteStream = createWriteStream2;
      var fs$readFile = fs112.readFile;
      fs112.readFile = readFile4;
      function readFile4(path218, options, cb) {
        if (typeof options === "function")
          cb = options, options = null;
        return go$readFile(path218, options, cb);
        function go$readFile(path219, options2, cb2, startTime) {
          return fs$readFile(path219, options2, function(err) {
            if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
              enqueue([go$readFile, [path219, options2, cb2], err, startTime || Date.now(), Date.now()]);
            else {
              if (typeof cb2 === "function")
                cb2.apply(this, arguments);
            }
          });
        }
      }
      var fs$writeFile = fs112.writeFile;
      fs112.writeFile = writeFile3;
      function writeFile3(path218, data, options, cb) {
        if (typeof options === "function")
          cb = options, options = null;
        return go$writeFile(path218, data, options, cb);
        function go$writeFile(path219, data2, options2, cb2, startTime) {
          return fs$writeFile(path219, data2, options2, function(err) {
            if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
              enqueue([go$writeFile, [path219, data2, options2, cb2], err, startTime || Date.now(), Date.now()]);
            else {
              if (typeof cb2 === "function")
                cb2.apply(this, arguments);
            }
          });
        }
      }
      var fs$appendFile = fs112.appendFile;
      if (fs$appendFile)
        fs112.appendFile = appendFile;
      function appendFile(path218, data, options, cb) {
        if (typeof options === "function")
          cb = options, options = null;
        return go$appendFile(path218, data, options, cb);
        function go$appendFile(path219, data2, options2, cb2, startTime) {
          return fs$appendFile(path219, data2, options2, function(err) {
            if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
              enqueue([go$appendFile, [path219, data2, options2, cb2], err, startTime || Date.now(), Date.now()]);
            else {
              if (typeof cb2 === "function")
                cb2.apply(this, arguments);
            }
          });
        }
      }
      var fs$copyFile = fs112.copyFile;
      if (fs$copyFile)
        fs112.copyFile = copyFile;
      function copyFile(src2, dest, flags, cb) {
        if (typeof flags === "function") {
          cb = flags;
          flags = 0;
        }
        return go$copyFile(src2, dest, flags, cb);
        function go$copyFile(src3, dest2, flags2, cb2, startTime) {
          return fs$copyFile(src3, dest2, flags2, function(err) {
            if (err && (err.code === "EMFILE" || err.code === "ENFILE" || err.code === "EBUSY"))
              enqueue([go$copyFile, [src3, dest2, flags2, cb2], err, startTime || Date.now(), Date.now()]);
            else {
              if (typeof cb2 === "function")
                cb2.apply(this, arguments);
            }
          });
        }
      }
      var fs$readdir = fs112.readdir;
      fs112.readdir = readdir3;
      var noReaddirOptionVersions = /^v[0-5]\./;
      function readdir3(path218, options, cb) {
        if (typeof options === "function")
          cb = options, options = null;
        var go$readdir = noReaddirOptionVersions.test(process.version) ? function go$readdir2(path219, options2, cb2, startTime) {
          return fs$readdir(path219, fs$readdirCallback(
            path219,
            options2,
            cb2,
            startTime
          ));
        } : function go$readdir2(path219, options2, cb2, startTime) {
          return fs$readdir(path219, options2, fs$readdirCallback(
            path219,
            options2,
            cb2,
            startTime
          ));
        };
        return go$readdir(path218, options, cb);
        function fs$readdirCallback(path219, options2, cb2, startTime) {
          return function(err, files) {
            if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
              enqueue([
                go$readdir,
                [path219, options2, cb2],
                err,
                startTime || Date.now(),
                Date.now()
              ]);
            else {
              if (files && files.sort)
                files.sort();
              if (typeof cb2 === "function")
                cb2.call(this, err, files);
            }
          };
        }
      }
      if (process.version.substr(0, 4) === "v0.8") {
        var legStreams = legacy(fs112);
        ReadStream = legStreams.ReadStream;
        WriteStream = legStreams.WriteStream;
      }
      var fs$ReadStream = fs112.ReadStream;
      if (fs$ReadStream) {
        ReadStream.prototype = Object.create(fs$ReadStream.prototype);
        ReadStream.prototype.open = ReadStream$open;
      }
      var fs$WriteStream = fs112.WriteStream;
      if (fs$WriteStream) {
        WriteStream.prototype = Object.create(fs$WriteStream.prototype);
        WriteStream.prototype.open = WriteStream$open;
      }
      Object.defineProperty(fs112, "ReadStream", {
        get: function() {
          return ReadStream;
        },
        set: function(val) {
          ReadStream = val;
        },
        enumerable: true,
        configurable: true
      });
      Object.defineProperty(fs112, "WriteStream", {
        get: function() {
          return WriteStream;
        },
        set: function(val) {
          WriteStream = val;
        },
        enumerable: true,
        configurable: true
      });
      var FileReadStream = ReadStream;
      Object.defineProperty(fs112, "FileReadStream", {
        get: function() {
          return FileReadStream;
        },
        set: function(val) {
          FileReadStream = val;
        },
        enumerable: true,
        configurable: true
      });
      var FileWriteStream = WriteStream;
      Object.defineProperty(fs112, "FileWriteStream", {
        get: function() {
          return FileWriteStream;
        },
        set: function(val) {
          FileWriteStream = val;
        },
        enumerable: true,
        configurable: true
      });
      function ReadStream(path218, options) {
        if (this instanceof ReadStream)
          return fs$ReadStream.apply(this, arguments), this;
        else
          return ReadStream.apply(Object.create(ReadStream.prototype), arguments);
      }
      function ReadStream$open() {
        var that = this;
        open5(that.path, that.flags, that.mode, function(err, fd) {
          if (err) {
            if (that.autoClose)
              that.destroy();
            that.emit("error", err);
          } else {
            that.fd = fd;
            that.emit("open", fd);
            that.read();
          }
        });
      }
      function WriteStream(path218, options) {
        if (this instanceof WriteStream)
          return fs$WriteStream.apply(this, arguments), this;
        else
          return WriteStream.apply(Object.create(WriteStream.prototype), arguments);
      }
      function WriteStream$open() {
        var that = this;
        open5(that.path, that.flags, that.mode, function(err, fd) {
          if (err) {
            that.destroy();
            that.emit("error", err);
          } else {
            that.fd = fd;
            that.emit("open", fd);
          }
        });
      }
      function createReadStream4(path218, options) {
        return new fs112.ReadStream(path218, options);
      }
      function createWriteStream2(path218, options) {
        return new fs112.WriteStream(path218, options);
      }
      var fs$open = fs112.open;
      fs112.open = open5;
      function open5(path218, flags, mode, cb) {
        if (typeof mode === "function")
          cb = mode, mode = null;
        return go$open(path218, flags, mode, cb);
        function go$open(path219, flags2, mode2, cb2, startTime) {
          return fs$open(path219, flags2, mode2, function(err, fd) {
            if (err && (err.code === "EMFILE" || err.code === "ENFILE"))
              enqueue([go$open, [path219, flags2, mode2, cb2], err, startTime || Date.now(), Date.now()]);
            else {
              if (typeof cb2 === "function")
                cb2.apply(this, arguments);
            }
          });
        }
      }
      return fs112;
    }
    function enqueue(elem) {
      debug("ENQUEUE", elem[0].name, elem[1]);
      fs111[gracefulQueue].push(elem);
      retry5();
    }
    var retryTimer;
    function resetQueue() {
      var now = Date.now();
      for (var i2 = 0; i2 < fs111[gracefulQueue].length; ++i2) {
        if (fs111[gracefulQueue][i2].length > 2) {
          fs111[gracefulQueue][i2][3] = now;
          fs111[gracefulQueue][i2][4] = now;
        }
      }
      retry5();
    }
    function retry5() {
      clearTimeout(retryTimer);
      retryTimer = void 0;
      if (fs111[gracefulQueue].length === 0)
        return;
      var elem = fs111[gracefulQueue].shift();
      var fn = elem[0];
      var args = elem[1];
      var err = elem[2];
      var startTime = elem[3];
      var lastTime = elem[4];
      if (startTime === void 0) {
        debug("RETRY", fn.name, args);
        fn.apply(null, args);
      } else if (Date.now() - startTime >= 6e4) {
        debug("TIMEOUT", fn.name, args);
        var cb = args.pop();
        if (typeof cb === "function")
          cb.call(null, err);
      } else {
        var sinceAttempt = Date.now() - lastTime;
        var sinceStart = Math.max(lastTime - startTime, 1);
        var desiredDelay = Math.min(sinceStart * 1.2, 100);
        if (sinceAttempt >= desiredDelay) {
          debug("RETRY", fn.name, args);
          fn.apply(null, args.concat([startTime]));
        } else {
          fs111[gracefulQueue].push(elem);
        }
      }
      if (retryTimer === void 0) {
        retryTimer = setTimeout(retry5, 0);
      }
    }
  }
});

// ../fs/graceful-fs/lib/index.js
import util, { promisify } from "node:util";
function withEagainRetry(fn, maxRetries = 15) {
  return (...args) => {
    let attempts = 0;
    while (attempts <= maxRetries) {
      try {
        return fn(...args);
      } catch (err) {
        if (util.types.isNativeError(err) && "code" in err && err.code === "EAGAIN" && attempts < maxRetries) {
          attempts++;
          const delay = Math.min(Math.pow(2, attempts), 300);
          Atomics.wait(new Int32Array(new SharedArrayBuffer(4)), 0, 0, delay);
          continue;
        }
        throw err;
      }
    }
    throw new Error("Unreachable");
  };
}
var import_graceful_fs, lib_default;
var init_lib12 = __esm({
  "../fs/graceful-fs/lib/index.js"() {
    "use strict";
    import_graceful_fs = __toESM(require_graceful_fs(), 1);
    lib_default = {
      chmod: promisify(import_graceful_fs.default.chmod),
      copyFile: promisify(import_graceful_fs.default.copyFile),
      copyFileSync: withEagainRetry(import_graceful_fs.default.copyFileSync),
      createReadStream: import_graceful_fs.default.createReadStream,
      link: promisify(import_graceful_fs.default.link),
      linkSync: withEagainRetry(import_graceful_fs.default.linkSync),
      mkdir: promisify(import_graceful_fs.default.mkdir),
      mkdirSync: withEagainRetry(import_graceful_fs.default.mkdirSync),
      renameSync: withEagainRetry(import_graceful_fs.default.renameSync),
      readFile: promisify(import_graceful_fs.default.readFile),
      readFileSync: import_graceful_fs.default.readFileSync,
      readdirSync: import_graceful_fs.default.readdirSync,
      stat: promisify(import_graceful_fs.default.stat),
      statSync: import_graceful_fs.default.statSync,
      unlink: promisify(import_graceful_fs.default.unlink),
      unlinkSync: import_graceful_fs.default.unlinkSync,
      writeFile: promisify(import_graceful_fs.default.writeFile),
      writeFileSync: withEagainRetry(import_graceful_fs.default.writeFileSync)
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/picocolors/1.1.1/a2cca8821324d9b53ce284317d33c07b8ca7ab5b808164538a24d91cf6e92abb/node_modules/picocolors/picocolors.js
var require_picocolors = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/picocolors/1.1.1/a2cca8821324d9b53ce284317d33c07b8ca7ab5b808164538a24d91cf6e92abb/node_modules/picocolors/picocolors.js"(exports2, module2) {
    var p = process || {};
    var argv2 = p.argv || [];
    var env3 = p.env || {};
    var isColorSupported = !(!!env3.NO_COLOR || argv2.includes("--no-color")) && (!!env3.FORCE_COLOR || argv2.includes("--color") || p.platform === "win32" || (p.stdout || {}).isTTY && env3.TERM !== "dumb" || !!env3.CI);
    var formatter = (open5, close, replace = open5) => (input) => {
      let string = "" + input, index = string.indexOf(close, open5.length);
      return ~index ? open5 + replaceClose(string, close, replace, index) + close : open5 + string + close;
    };
    var replaceClose = (string, close, replace, index) => {
      let result2 = "", cursor = 0;
      do {
        result2 += string.substring(cursor, index) + replace;
        cursor = index + close.length;
        index = string.indexOf(close, cursor);
      } while (~index);
      return result2 + string.substring(cursor);
    };
    var createColors = (enabled = isColorSupported) => {
      let f = enabled ? formatter : () => String;
      return {
        isColorSupported: enabled,
        reset: f("\x1B[0m", "\x1B[0m"),
        bold: f("\x1B[1m", "\x1B[22m", "\x1B[22m\x1B[1m"),
        dim: f("\x1B[2m", "\x1B[22m", "\x1B[22m\x1B[2m"),
        italic: f("\x1B[3m", "\x1B[23m"),
        underline: f("\x1B[4m", "\x1B[24m"),
        inverse: f("\x1B[7m", "\x1B[27m"),
        hidden: f("\x1B[8m", "\x1B[28m"),
        strikethrough: f("\x1B[9m", "\x1B[29m"),
        black: f("\x1B[30m", "\x1B[39m"),
        red: f("\x1B[31m", "\x1B[39m"),
        green: f("\x1B[32m", "\x1B[39m"),
        yellow: f("\x1B[33m", "\x1B[39m"),
        blue: f("\x1B[34m", "\x1B[39m"),
        magenta: f("\x1B[35m", "\x1B[39m"),
        cyan: f("\x1B[36m", "\x1B[39m"),
        white: f("\x1B[37m", "\x1B[39m"),
        gray: f("\x1B[90m", "\x1B[39m"),
        bgBlack: f("\x1B[40m", "\x1B[49m"),
        bgRed: f("\x1B[41m", "\x1B[49m"),
        bgGreen: f("\x1B[42m", "\x1B[49m"),
        bgYellow: f("\x1B[43m", "\x1B[49m"),
        bgBlue: f("\x1B[44m", "\x1B[49m"),
        bgMagenta: f("\x1B[45m", "\x1B[49m"),
        bgCyan: f("\x1B[46m", "\x1B[49m"),
        bgWhite: f("\x1B[47m", "\x1B[49m"),
        blackBright: f("\x1B[90m", "\x1B[39m"),
        redBright: f("\x1B[91m", "\x1B[39m"),
        greenBright: f("\x1B[92m", "\x1B[39m"),
        yellowBright: f("\x1B[93m", "\x1B[39m"),
        blueBright: f("\x1B[94m", "\x1B[39m"),
        magentaBright: f("\x1B[95m", "\x1B[39m"),
        cyanBright: f("\x1B[96m", "\x1B[39m"),
        whiteBright: f("\x1B[97m", "\x1B[39m"),
        bgBlackBright: f("\x1B[100m", "\x1B[49m"),
        bgRedBright: f("\x1B[101m", "\x1B[49m"),
        bgGreenBright: f("\x1B[102m", "\x1B[49m"),
        bgYellowBright: f("\x1B[103m", "\x1B[49m"),
        bgBlueBright: f("\x1B[104m", "\x1B[49m"),
        bgMagentaBright: f("\x1B[105m", "\x1B[49m"),
        bgCyanBright: f("\x1B[106m", "\x1B[49m"),
        bgWhiteBright: f("\x1B[107m", "\x1B[49m")
      };
    };
    module2.exports = createColors();
    module2.exports.createColors = createColors;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/js-tokens/4.0.0/038d358beec99e899526453c19c712efb8d8c5672151a59f81b2da0b0ce1913e/node_modules/js-tokens/index.js
var require_js_tokens = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/js-tokens/4.0.0/038d358beec99e899526453c19c712efb8d8c5672151a59f81b2da0b0ce1913e/node_modules/js-tokens/index.js"(exports2) {
    Object.defineProperty(exports2, "__esModule", {
      value: true
    });
    exports2.default = /((['"])(?:(?!\2|\\).|\\(?:\r\n|[\s\S]))*(\2)?|`(?:[^`\\$]|\\[\s\S]|\$(?!\{)|\$\{(?:[^{}]|\{[^}]*\}?)*\}?)*(`)?)|(\/\/.*)|(\/\*(?:[^*]|\*(?!\/))*(\*\/)?)|(\/(?!\*)(?:\[(?:(?![\]\\]).|\\.)*\]|(?![\/\]\\]).|\\.)+\/(?:(?!\s*(?:\b|[\u0080-\uFFFF$\\'"~({]|[+\-!](?!=)|\.?\d))|[gmiyus]{1,6}\b(?![\u0080-\uFFFF$\\]|\s*(?:[+\-*%&|^<>!=?({]|\/(?![\/*])))))|(0[xX][\da-fA-F]+|0[oO][0-7]+|0[bB][01]+|(?:\d*\.\d+|\d+\.?)(?:[eE][+-]?\d+)?)|((?!\d)(?:(?!\s)[$\w\u0080-\uFFFF]|\\u[\da-fA-F]{4}|\\u\{[\da-fA-F]+\})+)|(--|\+\+|&&|\|\||=>|\.{3}|(?:[+\-\/%&|^]|\*{1,2}|<{1,2}|>{1,3}|!=?|={1,2})=?|[?~.,:;[\](){}])|(\s+)|(^$|[\s\S])/g;
    exports2.matchToToken = function(match) {
      var token = { type: "invalid", value: match[0], closed: void 0 };
      if (match[1]) token.type = "string", token.closed = !!(match[3] || match[4]);
      else if (match[5]) token.type = "comment";
      else if (match[6]) token.type = "comment", token.closed = !!match[7];
      else if (match[8]) token.type = "regex";
      else if (match[9]) token.type = "number";
      else if (match[10]) token.type = "name";
      else if (match[11]) token.type = "punctuator";
      else if (match[12]) token.type = "whitespace";
      return token;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@babel/helper-validator-identifier/7.28.5/3798685cf7a4c8c11f318394d2b81204c4ad6dfe31c871dee5898770b29343c9/node_modules/@babel/helper-validator-identifier/lib/identifier.js
var require_identifier = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@babel/helper-validator-identifier/7.28.5/3798685cf7a4c8c11f318394d2b81204c4ad6dfe31c871dee5898770b29343c9/node_modules/@babel/helper-validator-identifier/lib/identifier.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", {
      value: true
    });
    exports2.isIdentifierChar = isIdentifierChar;
    exports2.isIdentifierName = isIdentifierName;
    exports2.isIdentifierStart = isIdentifierStart;
    var nonASCIIidentifierStartChars = "\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\u0560-\u0588\u05D0-\u05EA\u05EF-\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\u0870-\u0887\u0889-\u088F\u08A0-\u08C9\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\u0C5C\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDC-\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\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\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\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-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C8A\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\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\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\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\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7DC\uA7F1-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\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-\uAB69\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";
    var nonASCIIidentifierChars = "\xB7\u0300-\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0897-\u089F\u08CA-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\u0AEF\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C04\u0C3C\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0CF3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1ABF-\u1ADD\u1AE0-\u1AEB\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DFF\u200C\u200D\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\u30FB\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F1\uA8FF-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F\uFF65";
    var nonASCIIidentifierStart = new RegExp("[" + nonASCIIidentifierStartChars + "]");
    var nonASCIIidentifier = new RegExp("[" + nonASCIIidentifierStartChars + nonASCIIidentifierChars + "]");
    nonASCIIidentifierStartChars = nonASCIIidentifierChars = null;
    var astralIdentifierStartCodes = [0, 11, 2, 25, 2, 18, 2, 1, 2, 14, 3, 13, 35, 122, 70, 52, 268, 28, 4, 48, 48, 31, 14, 29, 6, 37, 11, 29, 3, 35, 5, 7, 2, 4, 43, 157, 19, 35, 5, 35, 5, 39, 9, 51, 13, 10, 2, 14, 2, 6, 2, 1, 2, 10, 2, 14, 2, 6, 2, 1, 4, 51, 13, 310, 10, 21, 11, 7, 25, 5, 2, 41, 2, 8, 70, 5, 3, 0, 2, 43, 2, 1, 4, 0, 3, 22, 11, 22, 10, 30, 66, 18, 2, 1, 11, 21, 11, 25, 7, 25, 39, 55, 7, 1, 65, 0, 16, 3, 2, 2, 2, 28, 43, 28, 4, 28, 36, 7, 2, 27, 28, 53, 11, 21, 11, 18, 14, 17, 111, 72, 56, 50, 14, 50, 14, 35, 39, 27, 10, 22, 251, 41, 7, 1, 17, 5, 57, 28, 11, 0, 9, 21, 43, 17, 47, 20, 28, 22, 13, 52, 58, 1, 3, 0, 14, 44, 33, 24, 27, 35, 30, 0, 3, 0, 9, 34, 4, 0, 13, 47, 15, 3, 22, 0, 2, 0, 36, 17, 2, 24, 20, 1, 64, 6, 2, 0, 2, 3, 2, 14, 2, 9, 8, 46, 39, 7, 3, 1, 3, 21, 2, 6, 2, 1, 2, 4, 4, 0, 19, 0, 13, 4, 31, 9, 2, 0, 3, 0, 2, 37, 2, 0, 26, 0, 2, 0, 45, 52, 19, 3, 21, 2, 31, 47, 21, 1, 2, 0, 185, 46, 42, 3, 37, 47, 21, 0, 60, 42, 14, 0, 72, 26, 38, 6, 186, 43, 117, 63, 32, 7, 3, 0, 3, 7, 2, 1, 2, 23, 16, 0, 2, 0, 95, 7, 3, 38, 17, 0, 2, 0, 29, 0, 11, 39, 8, 0, 22, 0, 12, 45, 20, 0, 19, 72, 200, 32, 32, 8, 2, 36, 18, 0, 50, 29, 113, 6, 2, 1, 2, 37, 22, 0, 26, 5, 2, 1, 2, 31, 15, 0, 24, 43, 261, 18, 16, 0, 2, 12, 2, 33, 125, 0, 80, 921, 103, 110, 18, 195, 2637, 96, 16, 1071, 18, 5, 26, 3994, 6, 582, 6842, 29, 1763, 568, 8, 30, 18, 78, 18, 29, 19, 47, 17, 3, 32, 20, 6, 18, 433, 44, 212, 63, 33, 24, 3, 24, 45, 74, 6, 0, 67, 12, 65, 1, 2, 0, 15, 4, 10, 7381, 42, 31, 98, 114, 8702, 3, 2, 6, 2, 1, 2, 290, 16, 0, 30, 2, 3, 0, 15, 3, 9, 395, 2309, 106, 6, 12, 4, 8, 8, 9, 5991, 84, 2, 70, 2, 1, 3, 0, 3, 1, 3, 3, 2, 11, 2, 0, 2, 6, 2, 64, 2, 3, 3, 7, 2, 6, 2, 27, 2, 3, 2, 4, 2, 0, 4, 6, 2, 339, 3, 24, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 7, 1845, 30, 7, 5, 262, 61, 147, 44, 11, 6, 17, 0, 322, 29, 19, 43, 485, 27, 229, 29, 3, 0, 208, 30, 2, 2, 2, 1, 2, 6, 3, 4, 10, 1, 225, 6, 2, 3, 2, 1, 2, 14, 2, 196, 60, 67, 8, 0, 1205, 3, 2, 26, 2, 1, 2, 0, 3, 0, 2, 9, 2, 3, 2, 0, 2, 0, 7, 0, 5, 0, 2, 0, 2, 0, 2, 2, 2, 1, 2, 0, 3, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 1, 2, 0, 3, 3, 2, 6, 2, 3, 2, 3, 2, 0, 2, 9, 2, 16, 6, 2, 2, 4, 2, 16, 4421, 42719, 33, 4381, 3, 5773, 3, 7472, 16, 621, 2467, 541, 1507, 4938, 6, 8489];
    var astralIdentifierCodes = [509, 0, 227, 0, 150, 4, 294, 9, 1368, 2, 2, 1, 6, 3, 41, 2, 5, 0, 166, 1, 574, 3, 9, 9, 7, 9, 32, 4, 318, 1, 78, 5, 71, 10, 50, 3, 123, 2, 54, 14, 32, 10, 3, 1, 11, 3, 46, 10, 8, 0, 46, 9, 7, 2, 37, 13, 2, 9, 6, 1, 45, 0, 13, 2, 49, 13, 9, 3, 2, 11, 83, 11, 7, 0, 3, 0, 158, 11, 6, 9, 7, 3, 56, 1, 2, 6, 3, 1, 3, 2, 10, 0, 11, 1, 3, 6, 4, 4, 68, 8, 2, 0, 3, 0, 2, 3, 2, 4, 2, 0, 15, 1, 83, 17, 10, 9, 5, 0, 82, 19, 13, 9, 214, 6, 3, 8, 28, 1, 83, 16, 16, 9, 82, 12, 9, 9, 7, 19, 58, 14, 5, 9, 243, 14, 166, 9, 71, 5, 2, 1, 3, 3, 2, 0, 2, 1, 13, 9, 120, 6, 3, 6, 4, 0, 29, 9, 41, 6, 2, 3, 9, 0, 10, 10, 47, 15, 199, 7, 137, 9, 54, 7, 2, 7, 17, 9, 57, 21, 2, 13, 123, 5, 4, 0, 2, 1, 2, 6, 2, 0, 9, 9, 49, 4, 2, 1, 2, 4, 9, 9, 55, 9, 266, 3, 10, 1, 2, 0, 49, 6, 4, 4, 14, 10, 5350, 0, 7, 14, 11465, 27, 2343, 9, 87, 9, 39, 4, 60, 6, 26, 9, 535, 9, 470, 0, 2, 54, 8, 3, 82, 0, 12, 1, 19628, 1, 4178, 9, 519, 45, 3, 22, 543, 4, 4, 5, 9, 7, 3, 6, 31, 3, 149, 2, 1418, 49, 513, 54, 5, 49, 9, 0, 15, 0, 23, 4, 2, 14, 1361, 6, 2, 16, 3, 6, 2, 1, 2, 4, 101, 0, 161, 6, 10, 9, 357, 0, 62, 13, 499, 13, 245, 1, 2, 9, 233, 0, 3, 0, 8, 1, 6, 0, 475, 6, 110, 6, 6, 9, 4759, 9, 787719, 239];
    function isInAstralSet(code, set2) {
      let pos = 65536;
      for (let i2 = 0, length = set2.length; i2 < length; i2 += 2) {
        pos += set2[i2];
        if (pos > code) return false;
        pos += set2[i2 + 1];
        if (pos >= code) return true;
      }
      return false;
    }
    function isIdentifierStart(code) {
      if (code < 65) return code === 36;
      if (code <= 90) return true;
      if (code < 97) return code === 95;
      if (code <= 122) return true;
      if (code <= 65535) {
        return code >= 170 && nonASCIIidentifierStart.test(String.fromCharCode(code));
      }
      return isInAstralSet(code, astralIdentifierStartCodes);
    }
    function isIdentifierChar(code) {
      if (code < 48) return code === 36;
      if (code < 58) return true;
      if (code < 65) return false;
      if (code <= 90) return true;
      if (code < 97) return code === 95;
      if (code <= 122) return true;
      if (code <= 65535) {
        return code >= 170 && nonASCIIidentifier.test(String.fromCharCode(code));
      }
      return isInAstralSet(code, astralIdentifierStartCodes) || isInAstralSet(code, astralIdentifierCodes);
    }
    function isIdentifierName(name) {
      let isFirst = true;
      for (let i2 = 0; i2 < name.length; i2++) {
        let cp = name.charCodeAt(i2);
        if ((cp & 64512) === 55296 && i2 + 1 < name.length) {
          const trail = name.charCodeAt(++i2);
          if ((trail & 64512) === 56320) {
            cp = 65536 + ((cp & 1023) << 10) + (trail & 1023);
          }
        }
        if (isFirst) {
          isFirst = false;
          if (!isIdentifierStart(cp)) {
            return false;
          }
        } else if (!isIdentifierChar(cp)) {
          return false;
        }
      }
      return !isFirst;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@babel/helper-validator-identifier/7.28.5/3798685cf7a4c8c11f318394d2b81204c4ad6dfe31c871dee5898770b29343c9/node_modules/@babel/helper-validator-identifier/lib/keyword.js
var require_keyword = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@babel/helper-validator-identifier/7.28.5/3798685cf7a4c8c11f318394d2b81204c4ad6dfe31c871dee5898770b29343c9/node_modules/@babel/helper-validator-identifier/lib/keyword.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", {
      value: true
    });
    exports2.isKeyword = isKeyword;
    exports2.isReservedWord = isReservedWord;
    exports2.isStrictBindOnlyReservedWord = isStrictBindOnlyReservedWord;
    exports2.isStrictBindReservedWord = isStrictBindReservedWord;
    exports2.isStrictReservedWord = isStrictReservedWord;
    var reservedWords = {
      keyword: ["break", "case", "catch", "continue", "debugger", "default", "do", "else", "finally", "for", "function", "if", "return", "switch", "throw", "try", "var", "const", "while", "with", "new", "this", "super", "class", "extends", "export", "import", "null", "true", "false", "in", "instanceof", "typeof", "void", "delete"],
      strict: ["implements", "interface", "let", "package", "private", "protected", "public", "static", "yield"],
      strictBind: ["eval", "arguments"]
    };
    var keywords = new Set(reservedWords.keyword);
    var reservedWordsStrictSet = new Set(reservedWords.strict);
    var reservedWordsStrictBindSet = new Set(reservedWords.strictBind);
    function isReservedWord(word, inModule) {
      return inModule && word === "await" || word === "enum";
    }
    function isStrictReservedWord(word, inModule) {
      return isReservedWord(word, inModule) || reservedWordsStrictSet.has(word);
    }
    function isStrictBindOnlyReservedWord(word) {
      return reservedWordsStrictBindSet.has(word);
    }
    function isStrictBindReservedWord(word, inModule) {
      return isStrictReservedWord(word, inModule) || isStrictBindOnlyReservedWord(word);
    }
    function isKeyword(word) {
      return keywords.has(word);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@babel/helper-validator-identifier/7.28.5/3798685cf7a4c8c11f318394d2b81204c4ad6dfe31c871dee5898770b29343c9/node_modules/@babel/helper-validator-identifier/lib/index.js
var require_lib3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@babel/helper-validator-identifier/7.28.5/3798685cf7a4c8c11f318394d2b81204c4ad6dfe31c871dee5898770b29343c9/node_modules/@babel/helper-validator-identifier/lib/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", {
      value: true
    });
    Object.defineProperty(exports2, "isIdentifierChar", {
      enumerable: true,
      get: function() {
        return _identifier.isIdentifierChar;
      }
    });
    Object.defineProperty(exports2, "isIdentifierName", {
      enumerable: true,
      get: function() {
        return _identifier.isIdentifierName;
      }
    });
    Object.defineProperty(exports2, "isIdentifierStart", {
      enumerable: true,
      get: function() {
        return _identifier.isIdentifierStart;
      }
    });
    Object.defineProperty(exports2, "isKeyword", {
      enumerable: true,
      get: function() {
        return _keyword.isKeyword;
      }
    });
    Object.defineProperty(exports2, "isReservedWord", {
      enumerable: true,
      get: function() {
        return _keyword.isReservedWord;
      }
    });
    Object.defineProperty(exports2, "isStrictBindOnlyReservedWord", {
      enumerable: true,
      get: function() {
        return _keyword.isStrictBindOnlyReservedWord;
      }
    });
    Object.defineProperty(exports2, "isStrictBindReservedWord", {
      enumerable: true,
      get: function() {
        return _keyword.isStrictBindReservedWord;
      }
    });
    Object.defineProperty(exports2, "isStrictReservedWord", {
      enumerable: true,
      get: function() {
        return _keyword.isStrictReservedWord;
      }
    });
    var _identifier = require_identifier();
    var _keyword = require_keyword();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@babel/code-frame/7.29.0/00d2eecaec984e4ced580841c415dcb4c362805ae195dbb6a20172ac47fb11ce/node_modules/@babel/code-frame/lib/index.js
var require_lib4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@babel/code-frame/7.29.0/00d2eecaec984e4ced580841c415dcb4c362805ae195dbb6a20172ac47fb11ce/node_modules/@babel/code-frame/lib/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var picocolors = require_picocolors();
    var jsTokens = require_js_tokens();
    var helperValidatorIdentifier = require_lib3();
    function isColorSupported() {
      return typeof process === "object" && (process.env.FORCE_COLOR === "0" || process.env.FORCE_COLOR === "false") ? false : picocolors.isColorSupported;
    }
    var compose2 = (f, g) => (v) => f(g(v));
    function buildDefs(colors) {
      return {
        keyword: colors.cyan,
        capitalized: colors.yellow,
        jsxIdentifier: colors.yellow,
        punctuator: colors.yellow,
        number: colors.magenta,
        string: colors.green,
        regex: colors.magenta,
        comment: colors.gray,
        invalid: compose2(compose2(colors.white, colors.bgRed), colors.bold),
        gutter: colors.gray,
        marker: compose2(colors.red, colors.bold),
        message: compose2(colors.red, colors.bold),
        reset: colors.reset
      };
    }
    var defsOn = buildDefs(picocolors.createColors(true));
    var defsOff = buildDefs(picocolors.createColors(false));
    function getDefs(enabled) {
      return enabled ? defsOn : defsOff;
    }
    var sometimesKeywords = /* @__PURE__ */ new Set(["as", "async", "from", "get", "of", "set"]);
    var NEWLINE$1 = /\r\n|[\n\r\u2028\u2029]/;
    var BRACKET = /^[()[\]{}]$/;
    var tokenize2;
    var JSX_TAG = /^[a-z][\w-]*$/i;
    var getTokenType = function(token, offset, text) {
      if (token.type === "name") {
        const tokenValue = token.value;
        if (helperValidatorIdentifier.isKeyword(tokenValue) || helperValidatorIdentifier.isStrictReservedWord(tokenValue, true) || sometimesKeywords.has(tokenValue)) {
          return "keyword";
        }
        if (JSX_TAG.test(tokenValue) && (text[offset - 1] === "<" || text.slice(offset - 2, offset) === "</")) {
          return "jsxIdentifier";
        }
        const firstChar = String.fromCodePoint(tokenValue.codePointAt(0));
        if (firstChar !== firstChar.toLowerCase()) {
          return "capitalized";
        }
      }
      if (token.type === "punctuator" && BRACKET.test(token.value)) {
        return "bracket";
      }
      if (token.type === "invalid" && (token.value === "@" || token.value === "#")) {
        return "punctuator";
      }
      return token.type;
    };
    tokenize2 = function* (text) {
      let match;
      while (match = jsTokens.default.exec(text)) {
        const token = jsTokens.matchToToken(match);
        yield {
          type: getTokenType(token, match.index, text),
          value: token.value
        };
      }
    };
    function highlight2(text) {
      if (text === "") return "";
      const defs = getDefs(true);
      let highlighted = "";
      for (const {
        type: type4,
        value
      } of tokenize2(text)) {
        if (type4 in defs) {
          highlighted += value.split(NEWLINE$1).map((str2) => defs[type4](str2)).join("\n");
        } else {
          highlighted += value;
        }
      }
      return highlighted;
    }
    var deprecationWarningShown = false;
    var NEWLINE = /\r\n|[\n\r\u2028\u2029]/;
    function getMarkerLines(loc, source, opts2, startLineBaseZero) {
      const startLoc = Object.assign({
        column: 0,
        line: -1
      }, loc.start);
      const endLoc = Object.assign({}, startLoc, loc.end);
      const {
        linesAbove = 2,
        linesBelow = 3
      } = opts2 || {};
      const startLine = startLoc.line - startLineBaseZero;
      const startColumn = startLoc.column;
      const endLine = endLoc.line - startLineBaseZero;
      const endColumn = endLoc.column;
      let start = Math.max(startLine - (linesAbove + 1), 0);
      let end = Math.min(source.length, endLine + linesBelow);
      if (startLine === -1) {
        start = 0;
      }
      if (endLine === -1) {
        end = source.length;
      }
      const lineDiff = endLine - startLine;
      const markerLines = {};
      if (lineDiff) {
        for (let i2 = 0; i2 <= lineDiff; i2++) {
          const lineNumber = i2 + startLine;
          if (!startColumn) {
            markerLines[lineNumber] = true;
          } else if (i2 === 0) {
            const sourceLength = source[lineNumber - 1].length;
            markerLines[lineNumber] = [startColumn, sourceLength - startColumn + 1];
          } else if (i2 === lineDiff) {
            markerLines[lineNumber] = [0, endColumn];
          } else {
            const sourceLength = source[lineNumber - i2].length;
            markerLines[lineNumber] = [0, sourceLength];
          }
        }
      } else {
        if (startColumn === endColumn) {
          if (startColumn) {
            markerLines[startLine] = [startColumn, 0];
          } else {
            markerLines[startLine] = true;
          }
        } else {
          markerLines[startLine] = [startColumn, endColumn - startColumn];
        }
      }
      return {
        start,
        end,
        markerLines
      };
    }
    function codeFrameColumns2(rawLines, loc, opts2 = {}) {
      const shouldHighlight = opts2.forceColor || isColorSupported() && opts2.highlightCode;
      const startLineBaseZero = (opts2.startLine || 1) - 1;
      const defs = getDefs(shouldHighlight);
      const lines = rawLines.split(NEWLINE);
      const {
        start,
        end,
        markerLines
      } = getMarkerLines(loc, lines, opts2, startLineBaseZero);
      const hasColumns = loc.start && typeof loc.start.column === "number";
      const numberMaxWidth = String(end + startLineBaseZero).length;
      const highlightedLines = shouldHighlight ? highlight2(rawLines) : rawLines;
      let frame = highlightedLines.split(NEWLINE, end).slice(start, end).map((line, index2) => {
        const number = start + 1 + index2;
        const paddedNumber = ` ${number + startLineBaseZero}`.slice(-numberMaxWidth);
        const gutter = ` ${paddedNumber} |`;
        const hasMarker = markerLines[number];
        const lastMarkerLine = !markerLines[number + 1];
        if (hasMarker) {
          let markerLine = "";
          if (Array.isArray(hasMarker)) {
            const markerSpacing = line.slice(0, Math.max(hasMarker[0] - 1, 0)).replace(/[^\t]/g, " ");
            const numberOfMarkers = hasMarker[1] || 1;
            markerLine = ["\n ", defs.gutter(gutter.replace(/\d/g, " ")), " ", markerSpacing, defs.marker("^").repeat(numberOfMarkers)].join("");
            if (lastMarkerLine && opts2.message) {
              markerLine += " " + defs.message(opts2.message);
            }
          }
          return [defs.marker(">"), defs.gutter(gutter), line.length > 0 ? ` ${line}` : "", markerLine].join("");
        } else {
          return ` ${defs.gutter(gutter)}${line.length > 0 ? ` ${line}` : ""}`;
        }
      }).join("\n");
      if (opts2.message && !hasColumns) {
        frame = `${" ".repeat(numberMaxWidth + 1)}${opts2.message}
${frame}`;
      }
      if (shouldHighlight) {
        return defs.reset(frame);
      } else {
        return frame;
      }
    }
    function index(rawLines, lineNumber, colNumber, opts2 = {}) {
      if (!deprecationWarningShown) {
        deprecationWarningShown = true;
        const message = "Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`.";
        if (process.emitWarning) {
          process.emitWarning(message, "DeprecationWarning");
        } else {
          const deprecationError = new Error(message);
          deprecationError.name = "DeprecationWarning";
          console.warn(new Error(message));
        }
      }
      colNumber = Math.max(colNumber, 0);
      const location = {
        start: {
          column: colNumber,
          line: lineNumber
        }
      };
      return codeFrameColumns2(rawLines, location, opts2);
    }
    exports2.codeFrameColumns = codeFrameColumns2;
    exports2.default = index;
    exports2.highlight = highlight2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/index-to-position/1.2.0/c5dd84ab9ac19a3271490cba3a89462ecf752d60fbd1fc507dd34b9940da911c/node_modules/index-to-position/index.js
function getPosition(text, textIndex, options) {
  const lineBreakBefore = textIndex === 0 ? -1 : text.lastIndexOf("\n", textIndex - 1);
  const [lineOffset, columnOffset] = getOffsets(options);
  return {
    line: lineBreakBefore === -1 ? lineOffset : text.slice(0, lineBreakBefore + 1).match(/\n/g).length + lineOffset,
    column: textIndex - lineBreakBefore - 1 + columnOffset
  };
}
function indexToPosition(text, textIndex, options) {
  if (typeof text !== "string") {
    throw new TypeError("Text parameter should be a string");
  }
  if (!Number.isInteger(textIndex)) {
    throw new TypeError("Index parameter should be an integer");
  }
  if (textIndex < 0 || textIndex > text.length) {
    throw new RangeError("Index out of bounds");
  }
  return getPosition(text, textIndex, options);
}
var getOffsets;
var init_index_to_position = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/index-to-position/1.2.0/c5dd84ab9ac19a3271490cba3a89462ecf752d60fbd1fc507dd34b9940da911c/node_modules/index-to-position/index.js"() {
    getOffsets = ({
      oneBased,
      oneBasedLine = oneBased,
      oneBasedColumn = oneBased
    } = {}) => [oneBasedLine ? 1 : 0, oneBasedColumn ? 1 : 0];
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/parse-json/8.3.0/fb8f03458e42c23454fe981e1761a9a80a9fa259679fe5fc80143b571895759f/node_modules/parse-json/index.js
function parseJson(string, reviver, fileName) {
  if (typeof reviver === "string") {
    fileName = reviver;
    reviver = void 0;
  }
  try {
    return JSON.parse(string, reviver);
  } catch (error) {
    throw new JSONError({
      jsonParseError: error,
      fileName,
      input: string
    });
  }
}
var import_code_frame, getCodePoint, JSONError, getErrorLocation, addCodePointToUnexpectedToken;
var init_parse_json = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/parse-json/8.3.0/fb8f03458e42c23454fe981e1761a9a80a9fa259679fe5fc80143b571895759f/node_modules/parse-json/index.js"() {
    import_code_frame = __toESM(require_lib4(), 1);
    init_index_to_position();
    getCodePoint = (character) => `\\u{${character.codePointAt(0).toString(16)}}`;
    JSONError = class _JSONError extends Error {
      name = "JSONError";
      fileName;
      #input;
      #jsonParseError;
      #message;
      #codeFrame;
      #rawCodeFrame;
      constructor(messageOrOptions) {
        if (typeof messageOrOptions === "string") {
          super();
          this.#message = messageOrOptions;
        } else {
          const { jsonParseError, fileName, input } = messageOrOptions;
          super(void 0, { cause: jsonParseError });
          this.#input = input;
          this.#jsonParseError = jsonParseError;
          this.fileName = fileName;
        }
        Error.captureStackTrace?.(this, _JSONError);
      }
      get message() {
        this.#message ??= `${addCodePointToUnexpectedToken(this.#jsonParseError.message)}${this.#input === "" ? " while parsing empty string" : ""}`;
        const { codeFrame } = this;
        return `${this.#message}${this.fileName ? ` in ${this.fileName}` : ""}${codeFrame ? `

${codeFrame}
` : ""}`;
      }
      set message(message) {
        this.#message = message;
      }
      #getCodeFrame(highlightCode) {
        if (!this.#jsonParseError) {
          return;
        }
        const input = this.#input;
        const location = getErrorLocation(input, this.#jsonParseError.message);
        if (!location) {
          return;
        }
        return (0, import_code_frame.codeFrameColumns)(input, { start: location }, { highlightCode });
      }
      get codeFrame() {
        this.#codeFrame ??= this.#getCodeFrame(
          /* highlightCode */
          true
        );
        return this.#codeFrame;
      }
      get rawCodeFrame() {
        this.#rawCodeFrame ??= this.#getCodeFrame(
          /* highlightCode */
          false
        );
        return this.#rawCodeFrame;
      }
    };
    getErrorLocation = (string, message) => {
      const match = message.match(/in JSON at position (?<index>\d+)(?: \(line (?<line>\d+) column (?<column>\d+)\))?$/);
      if (!match) {
        return;
      }
      const { index, line, column } = match.groups;
      if (line && column) {
        return { line: Number(line), column: Number(column) };
      }
      return indexToPosition(string, Number(index), { oneBased: true });
    };
    addCodePointToUnexpectedToken = (message) => message.replace(
      // TODO[engine:node@>=20]: The token always quoted after Node.js 20
      /(?<=^Unexpected token )(?<quote>')?(.)\k<quote>/,
      (_, _quote2, token) => `"${token}"(${getCodePoint(token)})`
    );
  }
});

// ../workspace/project-manifest-reader/lib/readFile.js
async function readJson5File(filePath) {
  const text = await readFileWithoutBom(filePath);
  try {
    return {
      data: import_json52.default.parse(text),
      text
    };
  } catch (err) {
    err.message = `${err.message} in ${filePath}`;
    err["code"] = "ERR_PNPM_JSON5_PARSE";
    throw err;
  }
}
async function readJsonFile(filePath) {
  const text = await readFileWithoutBom(filePath);
  try {
    return {
      data: parseJson(text, filePath),
      text
    };
  } catch (err) {
    err["code"] = "ERR_PNPM_JSON_PARSE";
    throw err;
  }
}
async function readFileWithoutBom(path218) {
  return stripBom(await lib_default.readFile(path218, "utf8"));
}
var import_json52;
var init_readFile = __esm({
  "../workspace/project-manifest-reader/lib/readFile.js"() {
    "use strict";
    init_lib12();
    import_json52 = __toESM(require_lib(), 1);
    init_parse_json();
    init_strip_bom();
  }
});

// ../workspace/project-manifest-reader/lib/index.js
import { promises as fs4 } from "node:fs";
import path5 from "node:path";
async function safeReadProjectManifestOnly(projectDir) {
  try {
    return await readProjectManifestOnly(projectDir);
  } catch (err) {
    if (err.code === "ERR_PNPM_NO_IMPORTER_MANIFEST_FOUND") {
      return null;
    }
    throw err;
  }
}
async function readProjectManifest(projectDir) {
  const result2 = await tryReadProjectManifest(projectDir);
  if (result2.manifest !== null) {
    return result2;
  }
  throw new PnpmError("NO_IMPORTER_MANIFEST_FOUND", `No package.json (or package.yaml, or package.json5) was found in "${projectDir}".`);
}
async function readProjectManifestOnly(projectDir) {
  const { manifest } = await readProjectManifest(projectDir);
  return manifest;
}
async function tryReadProjectManifest(projectDir) {
  try {
    const manifestPath = path5.join(projectDir, "package.json");
    const { data, text } = await readJsonFile(manifestPath);
    return {
      fileName: "package.json",
      manifest: convertManifestAfterRead(data),
      writeProjectManifest: createManifestWriter({
        ...detectFileFormatting(text),
        initialManifest: data,
        manifestPath
      })
    };
  } catch (err) {
    if (err.code !== "ENOENT")
      throw err;
  }
  try {
    const manifestPath = path5.join(projectDir, "package.json5");
    const { data, text } = await readJson5File(manifestPath);
    return {
      fileName: "package.json5",
      manifest: convertManifestAfterRead(data),
      writeProjectManifest: createManifestWriter({
        ...detectFileFormattingAndComments(text),
        initialManifest: data,
        manifestPath
      })
    };
  } catch (err) {
    if (err.code !== "ENOENT")
      throw err;
  }
  try {
    const manifestPath = path5.join(projectDir, "package.yaml");
    const manifest = await readPackageYaml(manifestPath);
    return {
      fileName: "package.yaml",
      manifest: convertManifestAfterRead(manifest),
      writeProjectManifest: createManifestWriter({ initialManifest: manifest, manifestPath })
    };
  } catch (err) {
    if (err.code !== "ENOENT")
      throw err;
  }
  if ((0, import_is_windows2.default)()) {
    let s;
    try {
      s = await fs4.stat(projectDir);
    } catch (err) {
    }
    if (s != null && !s.isDirectory()) {
      const err = new Error(`"${projectDir}" is not a directory`);
      err["code"] = "ENOTDIR";
      throw err;
    }
  }
  const filePath = path5.join(projectDir, "package.json");
  return {
    fileName: "package.json",
    manifest: null,
    writeProjectManifest: async (manifest) => writeProjectManifest(filePath, manifest)
  };
}
function detectFileFormattingAndComments(text) {
  const { comments, text: newText, hasFinalNewline } = extractComments(text);
  return {
    comments,
    indent: detectIndent(newText).indent,
    insertFinalNewline: hasFinalNewline
  };
}
function detectFileFormatting(text) {
  return {
    indent: detectIndent(text).indent,
    insertFinalNewline: text.endsWith("\n")
  };
}
async function readExactProjectManifest(manifestPath) {
  const base = path5.basename(manifestPath).toLowerCase();
  switch (base) {
    case "package.json": {
      const { data, text } = await readJsonFile(manifestPath);
      return {
        manifest: convertManifestAfterRead(data),
        writeProjectManifest: createManifestWriter({
          ...detectFileFormatting(text),
          initialManifest: data,
          manifestPath
        })
      };
    }
    case "package.json5": {
      const { data, text } = await readJson5File(manifestPath);
      return {
        manifest: convertManifestAfterRead(data),
        writeProjectManifest: createManifestWriter({
          ...detectFileFormattingAndComments(text),
          initialManifest: data,
          manifestPath
        })
      };
    }
    case "package.yaml": {
      const manifest = await readPackageYaml(manifestPath);
      return {
        manifest: convertManifestAfterRead(manifest),
        writeProjectManifest: createManifestWriter({ initialManifest: manifest, manifestPath })
      };
    }
  }
  throw new Error(`Not supported manifest name "${base}"`);
}
async function readPackageYaml(filePath) {
  try {
    return await readYamlFile(filePath);
  } catch (err) {
    if (err.name !== "YAMLException")
      throw err;
    err.message = `${err.message}
in ${filePath}`;
    err.code = "ERR_PNPM_YAML_PARSE";
    throw err;
  }
}
function createManifestWriter(opts2) {
  let initialManifest = normalize(opts2.initialManifest);
  return async (updatedManifest, force) => {
    updatedManifest = convertManifestBeforeWrite(normalize(updatedManifest));
    if (force === true || !(0, import_fast_deep_equal.default)(initialManifest, updatedManifest)) {
      await writeProjectManifest(opts2.manifestPath, updatedManifest, {
        comments: opts2.comments,
        indent: opts2.indent,
        insertFinalNewline: opts2.insertFinalNewline
      });
      initialManifest = normalize(updatedManifest);
      return Promise.resolve(void 0);
    }
    return Promise.resolve(void 0);
  };
}
function convertManifestAfterRead(manifest) {
  convertEnginesRuntimeToDependencies(manifest, "devEngines", "devDependencies");
  convertEnginesRuntimeToDependencies(manifest, "engines", "dependencies");
  return manifest;
}
function convertManifestBeforeWrite(manifest) {
  convertDependenciesToEnginesRuntime(manifest, "devDependencies", "devEngines");
  convertDependenciesToEnginesRuntime(manifest, "dependencies", "engines");
  return manifest;
}
function convertDependenciesToEnginesRuntime(manifest, dependenciesFieldName, enginesFieldName) {
  for (const runtimeName of ["node", "deno", "bun"]) {
    const dep = manifest[dependenciesFieldName]?.[runtimeName];
    if (typeof dep === "string" && dep.startsWith("runtime:")) {
      const version2 = dep.replace(/^runtime:/, "");
      manifest[enginesFieldName] ??= {};
      const runtimeEntry = {
        name: runtimeName,
        version: version2,
        onFail: "download"
      };
      const enginesField = manifest[enginesFieldName];
      if (!enginesField.runtime) {
        enginesField.runtime = runtimeEntry;
      } else if (Array.isArray(enginesField.runtime)) {
        const existing = enginesField.runtime.find(({ name }) => name === runtimeName);
        if (existing) {
          Object.assign(existing, runtimeEntry);
        } else {
          enginesField.runtime.push(runtimeEntry);
        }
      } else if (enginesField.runtime.name === runtimeName) {
        Object.assign(enginesField.runtime, runtimeEntry);
      } else {
        enginesField.runtime = [
          enginesField.runtime,
          runtimeEntry
        ];
      }
      if (manifest[dependenciesFieldName]) {
        delete manifest[dependenciesFieldName][runtimeName];
      }
    }
  }
}
function normalize(manifest) {
  const result2 = {};
  for (const key in manifest) {
    if (Object.hasOwn(manifest, key)) {
      const value = manifest[key];
      if (typeof value !== "object" || value === null || !dependencyKeys.has(key)) {
        result2[key] = structuredClone(value);
      } else {
        const keys4 = Object.keys(value);
        if (keys4.length !== 0) {
          keys4.sort();
          const sortedValue = {};
          for (const k2 of keys4) {
            sortedValue[k2] = value[k2];
          }
          result2[key] = sortedValue;
        }
      }
    }
  }
  return result2;
}
var import_fast_deep_equal, import_is_windows2, dependencyKeys;
var init_lib13 = __esm({
  "../workspace/project-manifest-reader/lib/index.js"() {
    "use strict";
    init_lib2();
    init_lib9();
    init_lib10();
    init_lib11();
    init_detect_indent();
    import_fast_deep_equal = __toESM(require_fast_deep_equal(), 1);
    import_is_windows2 = __toESM(require_is_windows(), 1);
    init_read_yaml_file();
    init_readFile();
    dependencyKeys = /* @__PURE__ */ new Set([
      "dependencies",
      "devDependencies",
      "optionalDependencies",
      "peerDependencies"
    ]);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/escape-string-regexp/5.0.0/975308e2f12ad393ccebb3882840c3c1e975368995bfe20e83579ff1c006e7af/node_modules/escape-string-regexp/index.js
function escapeStringRegexp(string) {
  if (typeof string !== "string") {
    throw new TypeError("Expected a string");
  }
  return string.replace(/[|\\{}()[\]^$+*?.]/g, "\\$&").replace(/-/g, "\\x2d");
}
var init_escape_string_regexp = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/escape-string-regexp/5.0.0/975308e2f12ad393ccebb3882840c3c1e975368995bfe20e83579ff1c006e7af/node_modules/escape-string-regexp/index.js"() {
  }
});

// ../config/matcher/lib/index.js
function createMatcher(patterns) {
  const m = createMatcherWithIndex(Array.isArray(patterns) ? patterns : [patterns]);
  return (input) => m(input) !== -1;
}
function createMatcherWithIndex(patterns) {
  switch (patterns.length) {
    case 0:
      return () => -1;
    case 1:
      return matcherWhenOnlyOnePatternWithIndex(patterns[0]);
  }
  const matchArr = [];
  let hasIgnore = false;
  let hasInclude = false;
  for (const pattern of patterns) {
    if (isIgnorePattern(pattern)) {
      hasIgnore = true;
      matchArr.push({ ignore: true, match: matcherFromPattern(pattern.substring(1)) });
    } else {
      hasInclude = true;
      matchArr.push({ ignore: false, match: matcherFromPattern(pattern) });
    }
  }
  if (!hasIgnore) {
    return matchInputWithNonIgnoreMatchers.bind(null, matchArr);
  }
  if (!hasInclude) {
    return matchInputWithoutIgnoreMatchers.bind(null, matchArr);
  }
  return matchInputWithMatchersArray.bind(null, matchArr);
}
function matchInputWithNonIgnoreMatchers(matchArr, input) {
  for (let i2 = 0; i2 < matchArr.length; i2++) {
    if (matchArr[i2].match(input))
      return i2;
  }
  return -1;
}
function matchInputWithoutIgnoreMatchers(matchArr, input) {
  return matchArr.some(({ match }) => match(input)) ? -1 : 0;
}
function matchInputWithMatchersArray(matchArr, input) {
  let matchedPatternIndex = -1;
  for (let i2 = 0; i2 < matchArr.length; i2++) {
    const { ignore: ignore2, match } = matchArr[i2];
    if (ignore2) {
      if (match(input)) {
        matchedPatternIndex = -1;
      }
    } else if (matchedPatternIndex === -1 && match(input)) {
      matchedPatternIndex = i2;
    }
  }
  return matchedPatternIndex;
}
function matcherFromPattern(pattern) {
  if (pattern === "*") {
    return () => true;
  }
  const escapedPattern = escapeStringRegexp(pattern).replace(/\\\*/g, ".*");
  if (escapedPattern === pattern) {
    return (input) => input === pattern;
  }
  const regexp = new RegExp(`^${escapedPattern}$`);
  return (input) => regexp.test(input);
}
function isIgnorePattern(pattern) {
  return pattern[0] === "!";
}
function matcherWhenOnlyOnePatternWithIndex(pattern) {
  const m = matcherWhenOnlyOnePattern(pattern);
  return (input) => m(input) ? 0 : -1;
}
function matcherWhenOnlyOnePattern(pattern) {
  if (!isIgnorePattern(pattern)) {
    return matcherFromPattern(pattern);
  }
  const ignorePattern = pattern.substring(1);
  const m = matcherFromPattern(ignorePattern);
  return (input) => !m(input);
}
var init_lib14 = __esm({
  "../config/matcher/lib/index.js"() {
    "use strict";
    init_escape_string_regexp();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/builtins/5.1.0/9c4872f5b8699fda6b3f9a16acf955132498de3b463a86f4d37a8b18afe59bd7/node_modules/builtins/index.js
var require_builtins = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/builtins/5.1.0/9c4872f5b8699fda6b3f9a16acf955132498de3b463a86f4d37a8b18afe59bd7/node_modules/builtins/index.js"(exports2, module2) {
    "use strict";
    var satisfies3 = require_satisfies();
    var permanentModules = [
      "assert",
      "buffer",
      "child_process",
      "cluster",
      "console",
      "constants",
      "crypto",
      "dgram",
      "dns",
      "domain",
      "events",
      "fs",
      "http",
      "https",
      "module",
      "net",
      "os",
      "path",
      "punycode",
      "querystring",
      "readline",
      "repl",
      "stream",
      "string_decoder",
      "sys",
      "timers",
      "tls",
      "tty",
      "url",
      "util",
      "vm",
      "zlib"
    ];
    var versionLockedModules = {
      freelist: "<6.0.0",
      v8: ">=1.0.0",
      process: ">=1.1.0",
      inspector: ">=8.0.0",
      async_hooks: ">=8.1.0",
      http2: ">=8.4.0",
      perf_hooks: ">=8.5.0",
      trace_events: ">=10.0.0",
      worker_threads: ">=12.0.0",
      "node:test": ">=18.0.0"
    };
    var experimentalModules = {
      worker_threads: ">=10.5.0",
      wasi: ">=12.16.0",
      diagnostics_channel: "^14.17.0 || >=15.1.0"
    };
    module2.exports = ({ version: version2 = process.version, experimental = false } = {}) => {
      const builtins = [...permanentModules];
      for (const [name, semverRange] of Object.entries(versionLockedModules)) {
        if (version2 === "*" || satisfies3(version2, semverRange)) {
          builtins.push(name);
        }
      }
      if (experimental) {
        for (const [name, semverRange] of Object.entries(experimentalModules)) {
          if (!builtins.includes(name) && (version2 === "*" || satisfies3(version2, semverRange))) {
            builtins.push(name);
          }
        }
      }
      return builtins;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/validate-npm-package-name/4.0.0/13abf2acd8c9261f1242672a45b7b7132f7928058ea95c55aa76f30893bb0435/node_modules/validate-npm-package-name/lib/index.js
var require_lib5 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/validate-npm-package-name/4.0.0/13abf2acd8c9261f1242672a45b7b7132f7928058ea95c55aa76f30893bb0435/node_modules/validate-npm-package-name/lib/index.js"(exports2, module2) {
    "use strict";
    var scopedPackagePattern = new RegExp("^(?:@([^/]+?)[/])?([^/]+?)$");
    var builtins = require_builtins();
    var blacklist = [
      "node_modules",
      "favicon.ico"
    ];
    function validate2(name) {
      var warnings = [];
      var errors2 = [];
      if (name === null) {
        errors2.push("name cannot be null");
        return done(warnings, errors2);
      }
      if (name === void 0) {
        errors2.push("name cannot be undefined");
        return done(warnings, errors2);
      }
      if (typeof name !== "string") {
        errors2.push("name must be a string");
        return done(warnings, errors2);
      }
      if (!name.length) {
        errors2.push("name length must be greater than zero");
      }
      if (name.match(/^\./)) {
        errors2.push("name cannot start with a period");
      }
      if (name.match(/^_/)) {
        errors2.push("name cannot start with an underscore");
      }
      if (name.trim() !== name) {
        errors2.push("name cannot contain leading or trailing spaces");
      }
      blacklist.forEach(function(blacklistedName) {
        if (name.toLowerCase() === blacklistedName) {
          errors2.push(blacklistedName + " is a blacklisted name");
        }
      });
      builtins({ version: "*" }).forEach(function(builtin) {
        if (name.toLowerCase() === builtin) {
          warnings.push(builtin + " is a core module name");
        }
      });
      if (name.length > 214) {
        warnings.push("name can no longer contain more than 214 characters");
      }
      if (name.toLowerCase() !== name) {
        warnings.push("name can no longer contain capital letters");
      }
      if (/[~'!()*]/.test(name.split("/").slice(-1)[0])) {
        warnings.push(`name can no longer contain special characters ("~'!()*")`);
      }
      if (encodeURIComponent(name) !== name) {
        var nameMatch = name.match(scopedPackagePattern);
        if (nameMatch) {
          var user = nameMatch[1];
          var pkg = nameMatch[2];
          if (encodeURIComponent(user) === user && encodeURIComponent(pkg) === pkg) {
            return done(warnings, errors2);
          }
        }
        errors2.push("name can only contain URL-friendly characters");
      }
      return done(warnings, errors2);
    }
    var done = function(warnings, errors2) {
      var result2 = {
        validForNewPackages: errors2.length === 0 && warnings.length === 0,
        validForOldPackages: errors2.length === 0,
        warnings,
        errors: errors2
      };
      if (!result2.warnings.length) {
        delete result2.warnings;
      }
      if (!result2.errors.length) {
        delete result2.errors;
      }
      return result2;
    };
    module2.exports = validate2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/hosted-git-info/4.1.0/d75ff6f715126d6125e4a0d691d9cf9fe3463d2fcdb09dafe6a9cea50729a022/node_modules/hosted-git-info/git-host-info.js
var require_git_host_info = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/hosted-git-info/4.1.0/d75ff6f715126d6125e4a0d691d9cf9fe3463d2fcdb09dafe6a9cea50729a022/node_modules/hosted-git-info/git-host-info.js"(exports2, module2) {
    "use strict";
    var maybeJoin = (...args) => args.every((arg) => arg) ? args.join("") : "";
    var maybeEncode = (arg) => arg ? encodeURIComponent(arg) : "";
    var defaults4 = {
      sshtemplate: ({ domain, user, project, committish }) => `git@${domain}:${user}/${project}.git${maybeJoin("#", committish)}`,
      sshurltemplate: ({ domain, user, project, committish }) => `git+ssh://git@${domain}/${user}/${project}.git${maybeJoin("#", committish)}`,
      browsetemplate: ({ domain, user, project, committish, treepath }) => `https://${domain}/${user}/${project}${maybeJoin("/", treepath, "/", maybeEncode(committish))}`,
      browsefiletemplate: ({ domain, user, project, committish, treepath, path: path218, fragment, hashformat }) => `https://${domain}/${user}/${project}/${treepath}/${maybeEncode(committish || "master")}/${path218}${maybeJoin("#", hashformat(fragment || ""))}`,
      docstemplate: ({ domain, user, project, treepath, committish }) => `https://${domain}/${user}/${project}${maybeJoin("/", treepath, "/", maybeEncode(committish))}#readme`,
      httpstemplate: ({ auth, domain, user, project, committish }) => `git+https://${maybeJoin(auth, "@")}${domain}/${user}/${project}.git${maybeJoin("#", committish)}`,
      filetemplate: ({ domain, user, project, committish, path: path218 }) => `https://${domain}/${user}/${project}/raw/${maybeEncode(committish) || "master"}/${path218}`,
      shortcuttemplate: ({ type: type4, user, project, committish }) => `${type4}:${user}/${project}${maybeJoin("#", committish)}`,
      pathtemplate: ({ user, project, committish }) => `${user}/${project}${maybeJoin("#", committish)}`,
      bugstemplate: ({ domain, user, project }) => `https://${domain}/${user}/${project}/issues`,
      hashformat: formatHashFragment
    };
    var gitHosts = {};
    gitHosts.github = Object.assign({}, defaults4, {
      // First two are insecure and generally shouldn't be used any more, but
      // they are still supported.
      protocols: ["git:", "http:", "git+ssh:", "git+https:", "ssh:", "https:"],
      domain: "github.com",
      treepath: "tree",
      filetemplate: ({ auth, user, project, committish, path: path218 }) => `https://${maybeJoin(auth, "@")}raw.githubusercontent.com/${user}/${project}/${maybeEncode(committish) || "master"}/${path218}`,
      gittemplate: ({ auth, domain, user, project, committish }) => `git://${maybeJoin(auth, "@")}${domain}/${user}/${project}.git${maybeJoin("#", committish)}`,
      tarballtemplate: ({ domain, user, project, committish }) => `https://codeload.${domain}/${user}/${project}/tar.gz/${maybeEncode(committish) || "master"}`,
      extract: (url7) => {
        let [, user, project, type4, committish] = url7.pathname.split("/", 5);
        if (type4 && type4 !== "tree") {
          return;
        }
        if (!type4) {
          committish = url7.hash.slice(1);
        }
        if (project && project.endsWith(".git")) {
          project = project.slice(0, -4);
        }
        if (!user || !project) {
          return;
        }
        return { user, project, committish };
      }
    });
    gitHosts.bitbucket = Object.assign({}, defaults4, {
      protocols: ["git+ssh:", "git+https:", "ssh:", "https:"],
      domain: "bitbucket.org",
      treepath: "src",
      tarballtemplate: ({ domain, user, project, committish }) => `https://${domain}/${user}/${project}/get/${maybeEncode(committish) || "master"}.tar.gz`,
      extract: (url7) => {
        let [, user, project, aux] = url7.pathname.split("/", 4);
        if (["get"].includes(aux)) {
          return;
        }
        if (project && project.endsWith(".git")) {
          project = project.slice(0, -4);
        }
        if (!user || !project) {
          return;
        }
        return { user, project, committish: url7.hash.slice(1) };
      }
    });
    gitHosts.gitlab = Object.assign({}, defaults4, {
      protocols: ["git+ssh:", "git+https:", "ssh:", "https:"],
      domain: "gitlab.com",
      treepath: "tree",
      httpstemplate: ({ auth, domain, user, project, committish }) => `git+https://${maybeJoin(auth, "@")}${domain}/${user}/${project}.git${maybeJoin("#", committish)}`,
      tarballtemplate: ({ domain, user, project, committish }) => `https://${domain}/${user}/${project}/repository/archive.tar.gz?ref=${maybeEncode(committish) || "master"}`,
      extract: (url7) => {
        const path218 = url7.pathname.slice(1);
        if (path218.includes("/-/") || path218.includes("/archive.tar.gz")) {
          return;
        }
        const segments = path218.split("/");
        let project = segments.pop();
        if (project.endsWith(".git")) {
          project = project.slice(0, -4);
        }
        const user = segments.join("/");
        if (!user || !project) {
          return;
        }
        return { user, project, committish: url7.hash.slice(1) };
      }
    });
    gitHosts.gist = Object.assign({}, defaults4, {
      protocols: ["git:", "git+ssh:", "git+https:", "ssh:", "https:"],
      domain: "gist.github.com",
      sshtemplate: ({ domain, project, committish }) => `git@${domain}:${project}.git${maybeJoin("#", committish)}`,
      sshurltemplate: ({ domain, project, committish }) => `git+ssh://git@${domain}/${project}.git${maybeJoin("#", committish)}`,
      browsetemplate: ({ domain, project, committish }) => `https://${domain}/${project}${maybeJoin("/", maybeEncode(committish))}`,
      browsefiletemplate: ({ domain, project, committish, path: path218, hashformat }) => `https://${domain}/${project}${maybeJoin("/", maybeEncode(committish))}${maybeJoin("#", hashformat(path218))}`,
      docstemplate: ({ domain, project, committish }) => `https://${domain}/${project}${maybeJoin("/", maybeEncode(committish))}`,
      httpstemplate: ({ domain, project, committish }) => `git+https://${domain}/${project}.git${maybeJoin("#", committish)}`,
      filetemplate: ({ user, project, committish, path: path218 }) => `https://gist.githubusercontent.com/${user}/${project}/raw${maybeJoin("/", maybeEncode(committish))}/${path218}`,
      shortcuttemplate: ({ type: type4, project, committish }) => `${type4}:${project}${maybeJoin("#", committish)}`,
      pathtemplate: ({ project, committish }) => `${project}${maybeJoin("#", committish)}`,
      bugstemplate: ({ domain, project }) => `https://${domain}/${project}`,
      gittemplate: ({ domain, project, committish }) => `git://${domain}/${project}.git${maybeJoin("#", committish)}`,
      tarballtemplate: ({ project, committish }) => `https://codeload.github.com/gist/${project}/tar.gz/${maybeEncode(committish) || "master"}`,
      extract: (url7) => {
        let [, user, project, aux] = url7.pathname.split("/", 4);
        if (aux === "raw") {
          return;
        }
        if (!project) {
          if (!user) {
            return;
          }
          project = user;
          user = null;
        }
        if (project.endsWith(".git")) {
          project = project.slice(0, -4);
        }
        return { user, project, committish: url7.hash.slice(1) };
      },
      hashformat: function(fragment) {
        return fragment && "file-" + formatHashFragment(fragment);
      }
    });
    gitHosts.sourcehut = Object.assign({}, defaults4, {
      protocols: ["git+ssh:", "https:"],
      domain: "git.sr.ht",
      treepath: "tree",
      browsefiletemplate: ({ domain, user, project, committish, treepath, path: path218, fragment, hashformat }) => `https://${domain}/${user}/${project}/${treepath}/${maybeEncode(committish || "main")}/${path218}${maybeJoin("#", hashformat(fragment || ""))}`,
      filetemplate: ({ domain, user, project, committish, path: path218 }) => `https://${domain}/${user}/${project}/blob/${maybeEncode(committish) || "main"}/${path218}`,
      httpstemplate: ({ domain, user, project, committish }) => `https://${domain}/${user}/${project}.git${maybeJoin("#", committish)}`,
      tarballtemplate: ({ domain, user, project, committish }) => `https://${domain}/${user}/${project}/archive/${maybeEncode(committish) || "main"}.tar.gz`,
      bugstemplate: ({ domain, user, project }) => `https://todo.sr.ht/${user}/${project}`,
      docstemplate: ({ domain, user, project, treepath, committish }) => `https://${domain}/${user}/${project}${maybeJoin("/", treepath, "/", maybeEncode(committish))}#readme`,
      extract: (url7) => {
        let [, user, project, aux] = url7.pathname.split("/", 4);
        if (["archive"].includes(aux)) {
          return;
        }
        if (project && project.endsWith(".git")) {
          project = project.slice(0, -4);
        }
        if (!user || !project) {
          return;
        }
        return { user, project, committish: url7.hash.slice(1) };
      }
    });
    var names = Object.keys(gitHosts);
    gitHosts.byShortcut = {};
    gitHosts.byDomain = {};
    for (const name of names) {
      gitHosts.byShortcut[`${name}:`] = name;
      gitHosts.byDomain[gitHosts[name].domain] = name;
    }
    function formatHashFragment(fragment) {
      return fragment.toLowerCase().replace(/^\W+|\/|\W+$/g, "").replace(/\W+/g, "-");
    }
    module2.exports = gitHosts;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/hosted-git-info/4.1.0/d75ff6f715126d6125e4a0d691d9cf9fe3463d2fcdb09dafe6a9cea50729a022/node_modules/hosted-git-info/git-host.js
var require_git_host = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/hosted-git-info/4.1.0/d75ff6f715126d6125e4a0d691d9cf9fe3463d2fcdb09dafe6a9cea50729a022/node_modules/hosted-git-info/git-host.js"(exports2, module2) {
    "use strict";
    var gitHosts = require_git_host_info();
    var GitHost = class {
      constructor(type4, user, auth, project, committish, defaultRepresentation, opts2 = {}) {
        Object.assign(this, gitHosts[type4]);
        this.type = type4;
        this.user = user;
        this.auth = auth;
        this.project = project;
        this.committish = committish;
        this.default = defaultRepresentation;
        this.opts = opts2;
      }
      hash() {
        return this.committish ? `#${this.committish}` : "";
      }
      ssh(opts2) {
        return this._fill(this.sshtemplate, opts2);
      }
      _fill(template, opts2) {
        if (typeof template === "function") {
          const options = { ...this, ...this.opts, ...opts2 };
          if (!options.path) {
            options.path = "";
          }
          if (options.path.startsWith("/")) {
            options.path = options.path.slice(1);
          }
          if (options.noCommittish) {
            options.committish = null;
          }
          const result2 = template(options);
          return options.noGitPlus && result2.startsWith("git+") ? result2.slice(4) : result2;
        }
        return null;
      }
      sshurl(opts2) {
        return this._fill(this.sshurltemplate, opts2);
      }
      browse(path218, fragment, opts2) {
        if (typeof path218 !== "string") {
          return this._fill(this.browsetemplate, path218);
        }
        if (typeof fragment !== "string") {
          opts2 = fragment;
          fragment = null;
        }
        return this._fill(this.browsefiletemplate, { ...opts2, fragment, path: path218 });
      }
      docs(opts2) {
        return this._fill(this.docstemplate, opts2);
      }
      bugs(opts2) {
        return this._fill(this.bugstemplate, opts2);
      }
      https(opts2) {
        return this._fill(this.httpstemplate, opts2);
      }
      git(opts2) {
        return this._fill(this.gittemplate, opts2);
      }
      shortcut(opts2) {
        return this._fill(this.shortcuttemplate, opts2);
      }
      path(opts2) {
        return this._fill(this.pathtemplate, opts2);
      }
      tarball(opts2) {
        return this._fill(this.tarballtemplate, { ...opts2, noCommittish: false });
      }
      file(path218, opts2) {
        return this._fill(this.filetemplate, { ...opts2, path: path218 });
      }
      getDefaultRepresentation() {
        return this.default;
      }
      toString(opts2) {
        if (this.default && typeof this[this.default] === "function") {
          return this[this.default](opts2);
        }
        return this.sshurl(opts2);
      }
    };
    module2.exports = GitHost;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yallist/4.0.0/2925a1deaaee7314c617d3720c6c4c168635530837cce30cdfbb63c68c9edb56/node_modules/yallist/iterator.js
var require_iterator = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yallist/4.0.0/2925a1deaaee7314c617d3720c6c4c168635530837cce30cdfbb63c68c9edb56/node_modules/yallist/iterator.js"(exports2, module2) {
    "use strict";
    module2.exports = function(Yallist) {
      Yallist.prototype[Symbol.iterator] = function* () {
        for (let walker = this.head; walker; walker = walker.next) {
          yield walker.value;
        }
      };
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yallist/4.0.0/2925a1deaaee7314c617d3720c6c4c168635530837cce30cdfbb63c68c9edb56/node_modules/yallist/yallist.js
var require_yallist = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yallist/4.0.0/2925a1deaaee7314c617d3720c6c4c168635530837cce30cdfbb63c68c9edb56/node_modules/yallist/yallist.js"(exports2, module2) {
    "use strict";
    module2.exports = Yallist;
    Yallist.Node = Node2;
    Yallist.create = Yallist;
    function Yallist(list2) {
      var self2 = this;
      if (!(self2 instanceof Yallist)) {
        self2 = new Yallist();
      }
      self2.tail = null;
      self2.head = null;
      self2.length = 0;
      if (list2 && typeof list2.forEach === "function") {
        list2.forEach(function(item) {
          self2.push(item);
        });
      } else if (arguments.length > 0) {
        for (var i2 = 0, l = arguments.length; i2 < l; i2++) {
          self2.push(arguments[i2]);
        }
      }
      return self2;
    }
    Yallist.prototype.removeNode = function(node) {
      if (node.list !== this) {
        throw new Error("removing node which does not belong to this list");
      }
      var next2 = node.next;
      var prev = node.prev;
      if (next2) {
        next2.prev = prev;
      }
      if (prev) {
        prev.next = next2;
      }
      if (node === this.head) {
        this.head = next2;
      }
      if (node === this.tail) {
        this.tail = prev;
      }
      node.list.length--;
      node.next = null;
      node.prev = null;
      node.list = null;
      return next2;
    };
    Yallist.prototype.unshiftNode = function(node) {
      if (node === this.head) {
        return;
      }
      if (node.list) {
        node.list.removeNode(node);
      }
      var head2 = this.head;
      node.list = this;
      node.next = head2;
      if (head2) {
        head2.prev = node;
      }
      this.head = node;
      if (!this.tail) {
        this.tail = node;
      }
      this.length++;
    };
    Yallist.prototype.pushNode = function(node) {
      if (node === this.tail) {
        return;
      }
      if (node.list) {
        node.list.removeNode(node);
      }
      var tail2 = this.tail;
      node.list = this;
      node.prev = tail2;
      if (tail2) {
        tail2.next = node;
      }
      this.tail = node;
      if (!this.head) {
        this.head = node;
      }
      this.length++;
    };
    Yallist.prototype.push = function() {
      for (var i2 = 0, l = arguments.length; i2 < l; i2++) {
        push(this, arguments[i2]);
      }
      return this.length;
    };
    Yallist.prototype.unshift = function() {
      for (var i2 = 0, l = arguments.length; i2 < l; i2++) {
        unshift(this, arguments[i2]);
      }
      return this.length;
    };
    Yallist.prototype.pop = function() {
      if (!this.tail) {
        return void 0;
      }
      var res = this.tail.value;
      this.tail = this.tail.prev;
      if (this.tail) {
        this.tail.next = null;
      } else {
        this.head = null;
      }
      this.length--;
      return res;
    };
    Yallist.prototype.shift = function() {
      if (!this.head) {
        return void 0;
      }
      var res = this.head.value;
      this.head = this.head.next;
      if (this.head) {
        this.head.prev = null;
      } else {
        this.tail = null;
      }
      this.length--;
      return res;
    };
    Yallist.prototype.forEach = function(fn, thisp) {
      thisp = thisp || this;
      for (var walker = this.head, i2 = 0; walker !== null; i2++) {
        fn.call(thisp, walker.value, i2, this);
        walker = walker.next;
      }
    };
    Yallist.prototype.forEachReverse = function(fn, thisp) {
      thisp = thisp || this;
      for (var walker = this.tail, i2 = this.length - 1; walker !== null; i2--) {
        fn.call(thisp, walker.value, i2, this);
        walker = walker.prev;
      }
    };
    Yallist.prototype.get = function(n2) {
      for (var i2 = 0, walker = this.head; walker !== null && i2 < n2; i2++) {
        walker = walker.next;
      }
      if (i2 === n2 && walker !== null) {
        return walker.value;
      }
    };
    Yallist.prototype.getReverse = function(n2) {
      for (var i2 = 0, walker = this.tail; walker !== null && i2 < n2; i2++) {
        walker = walker.prev;
      }
      if (i2 === n2 && walker !== null) {
        return walker.value;
      }
    };
    Yallist.prototype.map = function(fn, thisp) {
      thisp = thisp || this;
      var res = new Yallist();
      for (var walker = this.head; walker !== null; ) {
        res.push(fn.call(thisp, walker.value, this));
        walker = walker.next;
      }
      return res;
    };
    Yallist.prototype.mapReverse = function(fn, thisp) {
      thisp = thisp || this;
      var res = new Yallist();
      for (var walker = this.tail; walker !== null; ) {
        res.push(fn.call(thisp, walker.value, this));
        walker = walker.prev;
      }
      return res;
    };
    Yallist.prototype.reduce = function(fn, initial) {
      var acc;
      var walker = this.head;
      if (arguments.length > 1) {
        acc = initial;
      } else if (this.head) {
        walker = this.head.next;
        acc = this.head.value;
      } else {
        throw new TypeError("Reduce of empty list with no initial value");
      }
      for (var i2 = 0; walker !== null; i2++) {
        acc = fn(acc, walker.value, i2);
        walker = walker.next;
      }
      return acc;
    };
    Yallist.prototype.reduceReverse = function(fn, initial) {
      var acc;
      var walker = this.tail;
      if (arguments.length > 1) {
        acc = initial;
      } else if (this.tail) {
        walker = this.tail.prev;
        acc = this.tail.value;
      } else {
        throw new TypeError("Reduce of empty list with no initial value");
      }
      for (var i2 = this.length - 1; walker !== null; i2--) {
        acc = fn(acc, walker.value, i2);
        walker = walker.prev;
      }
      return acc;
    };
    Yallist.prototype.toArray = function() {
      var arr = new Array(this.length);
      for (var i2 = 0, walker = this.head; walker !== null; i2++) {
        arr[i2] = walker.value;
        walker = walker.next;
      }
      return arr;
    };
    Yallist.prototype.toArrayReverse = function() {
      var arr = new Array(this.length);
      for (var i2 = 0, walker = this.tail; walker !== null; i2++) {
        arr[i2] = walker.value;
        walker = walker.prev;
      }
      return arr;
    };
    Yallist.prototype.slice = function(from5, to) {
      to = to || this.length;
      if (to < 0) {
        to += this.length;
      }
      from5 = from5 || 0;
      if (from5 < 0) {
        from5 += this.length;
      }
      var ret2 = new Yallist();
      if (to < from5 || to < 0) {
        return ret2;
      }
      if (from5 < 0) {
        from5 = 0;
      }
      if (to > this.length) {
        to = this.length;
      }
      for (var i2 = 0, walker = this.head; walker !== null && i2 < from5; i2++) {
        walker = walker.next;
      }
      for (; walker !== null && i2 < to; i2++, walker = walker.next) {
        ret2.push(walker.value);
      }
      return ret2;
    };
    Yallist.prototype.sliceReverse = function(from5, to) {
      to = to || this.length;
      if (to < 0) {
        to += this.length;
      }
      from5 = from5 || 0;
      if (from5 < 0) {
        from5 += this.length;
      }
      var ret2 = new Yallist();
      if (to < from5 || to < 0) {
        return ret2;
      }
      if (from5 < 0) {
        from5 = 0;
      }
      if (to > this.length) {
        to = this.length;
      }
      for (var i2 = this.length, walker = this.tail; walker !== null && i2 > to; i2--) {
        walker = walker.prev;
      }
      for (; walker !== null && i2 > from5; i2--, walker = walker.prev) {
        ret2.push(walker.value);
      }
      return ret2;
    };
    Yallist.prototype.splice = function(start, deleteCount, ...nodes) {
      if (start > this.length) {
        start = this.length - 1;
      }
      if (start < 0) {
        start = this.length + start;
      }
      for (var i2 = 0, walker = this.head; walker !== null && i2 < start; i2++) {
        walker = walker.next;
      }
      var ret2 = [];
      for (var i2 = 0; walker && i2 < deleteCount; i2++) {
        ret2.push(walker.value);
        walker = this.removeNode(walker);
      }
      if (walker === null) {
        walker = this.tail;
      }
      if (walker !== this.head && walker !== this.tail) {
        walker = walker.prev;
      }
      for (var i2 = 0; i2 < nodes.length; i2++) {
        walker = insert(this, walker, nodes[i2]);
      }
      return ret2;
    };
    Yallist.prototype.reverse = function() {
      var head2 = this.head;
      var tail2 = this.tail;
      for (var walker = head2; walker !== null; walker = walker.prev) {
        var p = walker.prev;
        walker.prev = walker.next;
        walker.next = p;
      }
      this.head = tail2;
      this.tail = head2;
      return this;
    };
    function insert(self2, node, value) {
      var inserted = node === self2.head ? new Node2(value, null, node, self2) : new Node2(value, node, node.next, self2);
      if (inserted.next === null) {
        self2.tail = inserted;
      }
      if (inserted.prev === null) {
        self2.head = inserted;
      }
      self2.length++;
      return inserted;
    }
    function push(self2, item) {
      self2.tail = new Node2(item, self2.tail, null, self2);
      if (!self2.head) {
        self2.head = self2.tail;
      }
      self2.length++;
    }
    function unshift(self2, item) {
      self2.head = new Node2(item, null, self2.head, self2);
      if (!self2.tail) {
        self2.tail = self2.head;
      }
      self2.length++;
    }
    function Node2(value, prev, next2, list2) {
      if (!(this instanceof Node2)) {
        return new Node2(value, prev, next2, list2);
      }
      this.list = list2;
      this.value = value;
      if (prev) {
        prev.next = this;
        this.prev = prev;
      } else {
        this.prev = null;
      }
      if (next2) {
        next2.prev = this;
        this.next = next2;
      } else {
        this.next = null;
      }
    }
    try {
      require_iterator()(Yallist);
    } catch (er) {
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/lru-cache/6.0.0/7f013971a30022832f3b45094d44d1b3fc42f43ca4df0af4baba7b9f18378928/node_modules/lru-cache/index.js
var require_lru_cache = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/lru-cache/6.0.0/7f013971a30022832f3b45094d44d1b3fc42f43ca4df0af4baba7b9f18378928/node_modules/lru-cache/index.js"(exports2, module2) {
    "use strict";
    var Yallist = require_yallist();
    var MAX = /* @__PURE__ */ Symbol("max");
    var LENGTH = /* @__PURE__ */ Symbol("length");
    var LENGTH_CALCULATOR = /* @__PURE__ */ Symbol("lengthCalculator");
    var ALLOW_STALE = /* @__PURE__ */ Symbol("allowStale");
    var MAX_AGE = /* @__PURE__ */ Symbol("maxAge");
    var DISPOSE = /* @__PURE__ */ Symbol("dispose");
    var NO_DISPOSE_ON_SET = /* @__PURE__ */ Symbol("noDisposeOnSet");
    var LRU_LIST = /* @__PURE__ */ Symbol("lruList");
    var CACHE = /* @__PURE__ */ Symbol("cache");
    var UPDATE_AGE_ON_GET = /* @__PURE__ */ Symbol("updateAgeOnGet");
    var naiveLength = () => 1;
    var LRUCache = class {
      constructor(options) {
        if (typeof options === "number")
          options = { max: options };
        if (!options)
          options = {};
        if (options.max && (typeof options.max !== "number" || options.max < 0))
          throw new TypeError("max must be a non-negative number");
        const max3 = this[MAX] = options.max || Infinity;
        const lc = options.length || naiveLength;
        this[LENGTH_CALCULATOR] = typeof lc !== "function" ? naiveLength : lc;
        this[ALLOW_STALE] = options.stale || false;
        if (options.maxAge && typeof options.maxAge !== "number")
          throw new TypeError("maxAge must be a number");
        this[MAX_AGE] = options.maxAge || 0;
        this[DISPOSE] = options.dispose;
        this[NO_DISPOSE_ON_SET] = options.noDisposeOnSet || false;
        this[UPDATE_AGE_ON_GET] = options.updateAgeOnGet || false;
        this.reset();
      }
      // resize the cache when the max changes.
      set max(mL) {
        if (typeof mL !== "number" || mL < 0)
          throw new TypeError("max must be a non-negative number");
        this[MAX] = mL || Infinity;
        trim(this);
      }
      get max() {
        return this[MAX];
      }
      set allowStale(allowStale) {
        this[ALLOW_STALE] = !!allowStale;
      }
      get allowStale() {
        return this[ALLOW_STALE];
      }
      set maxAge(mA) {
        if (typeof mA !== "number")
          throw new TypeError("maxAge must be a non-negative number");
        this[MAX_AGE] = mA;
        trim(this);
      }
      get maxAge() {
        return this[MAX_AGE];
      }
      // resize the cache when the lengthCalculator changes.
      set lengthCalculator(lC) {
        if (typeof lC !== "function")
          lC = naiveLength;
        if (lC !== this[LENGTH_CALCULATOR]) {
          this[LENGTH_CALCULATOR] = lC;
          this[LENGTH] = 0;
          this[LRU_LIST].forEach((hit) => {
            hit.length = this[LENGTH_CALCULATOR](hit.value, hit.key);
            this[LENGTH] += hit.length;
          });
        }
        trim(this);
      }
      get lengthCalculator() {
        return this[LENGTH_CALCULATOR];
      }
      get length() {
        return this[LENGTH];
      }
      get itemCount() {
        return this[LRU_LIST].length;
      }
      rforEach(fn, thisp) {
        thisp = thisp || this;
        for (let walker = this[LRU_LIST].tail; walker !== null; ) {
          const prev = walker.prev;
          forEachStep(this, fn, walker, thisp);
          walker = prev;
        }
      }
      forEach(fn, thisp) {
        thisp = thisp || this;
        for (let walker = this[LRU_LIST].head; walker !== null; ) {
          const next2 = walker.next;
          forEachStep(this, fn, walker, thisp);
          walker = next2;
        }
      }
      keys() {
        return this[LRU_LIST].toArray().map((k2) => k2.key);
      }
      values() {
        return this[LRU_LIST].toArray().map((k2) => k2.value);
      }
      reset() {
        if (this[DISPOSE] && this[LRU_LIST] && this[LRU_LIST].length) {
          this[LRU_LIST].forEach((hit) => this[DISPOSE](hit.key, hit.value));
        }
        this[CACHE] = /* @__PURE__ */ new Map();
        this[LRU_LIST] = new Yallist();
        this[LENGTH] = 0;
      }
      dump() {
        return this[LRU_LIST].map((hit) => isStale(this, hit) ? false : {
          k: hit.key,
          v: hit.value,
          e: hit.now + (hit.maxAge || 0)
        }).toArray().filter((h2) => h2);
      }
      dumpLru() {
        return this[LRU_LIST];
      }
      set(key, value, maxAge) {
        maxAge = maxAge || this[MAX_AGE];
        if (maxAge && typeof maxAge !== "number")
          throw new TypeError("maxAge must be a number");
        const now = maxAge ? Date.now() : 0;
        const len = this[LENGTH_CALCULATOR](value, key);
        if (this[CACHE].has(key)) {
          if (len > this[MAX]) {
            del(this, this[CACHE].get(key));
            return false;
          }
          const node = this[CACHE].get(key);
          const item = node.value;
          if (this[DISPOSE]) {
            if (!this[NO_DISPOSE_ON_SET])
              this[DISPOSE](key, item.value);
          }
          item.now = now;
          item.maxAge = maxAge;
          item.value = value;
          this[LENGTH] += len - item.length;
          item.length = len;
          this.get(key);
          trim(this);
          return true;
        }
        const hit = new Entry(key, value, len, now, maxAge);
        if (hit.length > this[MAX]) {
          if (this[DISPOSE])
            this[DISPOSE](key, value);
          return false;
        }
        this[LENGTH] += hit.length;
        this[LRU_LIST].unshift(hit);
        this[CACHE].set(key, this[LRU_LIST].head);
        trim(this);
        return true;
      }
      has(key) {
        if (!this[CACHE].has(key)) return false;
        const hit = this[CACHE].get(key).value;
        return !isStale(this, hit);
      }
      get(key) {
        return get(this, key, true);
      }
      peek(key) {
        return get(this, key, false);
      }
      pop() {
        const node = this[LRU_LIST].tail;
        if (!node)
          return null;
        del(this, node);
        return node.value;
      }
      del(key) {
        del(this, this[CACHE].get(key));
      }
      load(arr) {
        this.reset();
        const now = Date.now();
        for (let l = arr.length - 1; l >= 0; l--) {
          const hit = arr[l];
          const expiresAt = hit.e || 0;
          if (expiresAt === 0)
            this.set(hit.k, hit.v);
          else {
            const maxAge = expiresAt - now;
            if (maxAge > 0) {
              this.set(hit.k, hit.v, maxAge);
            }
          }
        }
      }
      prune() {
        this[CACHE].forEach((value, key) => get(this, key, false));
      }
    };
    var get = (self2, key, doUse) => {
      const node = self2[CACHE].get(key);
      if (node) {
        const hit = node.value;
        if (isStale(self2, hit)) {
          del(self2, node);
          if (!self2[ALLOW_STALE])
            return void 0;
        } else {
          if (doUse) {
            if (self2[UPDATE_AGE_ON_GET])
              node.value.now = Date.now();
            self2[LRU_LIST].unshiftNode(node);
          }
        }
        return hit.value;
      }
    };
    var isStale = (self2, hit) => {
      if (!hit || !hit.maxAge && !self2[MAX_AGE])
        return false;
      const diff = Date.now() - hit.now;
      return hit.maxAge ? diff > hit.maxAge : self2[MAX_AGE] && diff > self2[MAX_AGE];
    };
    var trim = (self2) => {
      if (self2[LENGTH] > self2[MAX]) {
        for (let walker = self2[LRU_LIST].tail; self2[LENGTH] > self2[MAX] && walker !== null; ) {
          const prev = walker.prev;
          del(self2, walker);
          walker = prev;
        }
      }
    };
    var del = (self2, node) => {
      if (node) {
        const hit = node.value;
        if (self2[DISPOSE])
          self2[DISPOSE](hit.key, hit.value);
        self2[LENGTH] -= hit.length;
        self2[CACHE].delete(hit.key);
        self2[LRU_LIST].removeNode(node);
      }
    };
    var Entry = class {
      constructor(key, value, length, now, maxAge) {
        this.key = key;
        this.value = value;
        this.length = length;
        this.now = now;
        this.maxAge = maxAge || 0;
      }
    };
    var forEachStep = (self2, fn, node, thisp) => {
      let hit = node.value;
      if (isStale(self2, hit)) {
        del(self2, node);
        if (!self2[ALLOW_STALE])
          hit = void 0;
      }
      if (hit)
        fn.call(thisp, hit.value, hit.key, self2);
    };
    module2.exports = LRUCache;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/hosted-git-info/4.1.0/d75ff6f715126d6125e4a0d691d9cf9fe3463d2fcdb09dafe6a9cea50729a022/node_modules/hosted-git-info/index.js
var require_hosted_git_info = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/hosted-git-info/4.1.0/d75ff6f715126d6125e4a0d691d9cf9fe3463d2fcdb09dafe6a9cea50729a022/node_modules/hosted-git-info/index.js"(exports2, module2) {
    "use strict";
    var url7 = __require("url");
    var gitHosts = require_git_host_info();
    var GitHost = module2.exports = require_git_host();
    var LRU = require_lru_cache();
    var cache = new LRU({ max: 1e3 });
    var protocolToRepresentationMap = {
      "git+ssh:": "sshurl",
      "git+https:": "https",
      "ssh:": "sshurl",
      "git:": "git"
    };
    function protocolToRepresentation(protocol) {
      return protocolToRepresentationMap[protocol] || protocol.slice(0, -1);
    }
    var authProtocols = {
      "git:": true,
      "https:": true,
      "git+https:": true,
      "http:": true,
      "git+http:": true
    };
    var knownProtocols = Object.keys(gitHosts.byShortcut).concat(["http:", "https:", "git:", "git+ssh:", "git+https:", "ssh:"]);
    module2.exports.fromUrl = function(giturl, opts2) {
      if (typeof giturl !== "string") {
        return;
      }
      const key = giturl + JSON.stringify(opts2 || {});
      if (!cache.has(key)) {
        cache.set(key, fromUrl(giturl, opts2));
      }
      return cache.get(key);
    };
    function fromUrl(giturl, opts2) {
      if (!giturl) {
        return;
      }
      const url8 = isGitHubShorthand(giturl) ? "github:" + giturl : correctProtocol(giturl);
      const parsed = parseGitUrl(url8);
      if (!parsed) {
        return parsed;
      }
      const gitHostShortcut = gitHosts.byShortcut[parsed.protocol];
      const gitHostDomain = gitHosts.byDomain[parsed.hostname.startsWith("www.") ? parsed.hostname.slice(4) : parsed.hostname];
      const gitHostName = gitHostShortcut || gitHostDomain;
      if (!gitHostName) {
        return;
      }
      const gitHostInfo = gitHosts[gitHostShortcut || gitHostDomain];
      let auth = null;
      if (authProtocols[parsed.protocol] && (parsed.username || parsed.password)) {
        auth = `${parsed.username}${parsed.password ? ":" + parsed.password : ""}`;
      }
      let committish = null;
      let user = null;
      let project = null;
      let defaultRepresentation = null;
      try {
        if (gitHostShortcut) {
          let pathname = parsed.pathname.startsWith("/") ? parsed.pathname.slice(1) : parsed.pathname;
          const firstAt = pathname.indexOf("@");
          if (firstAt > -1) {
            pathname = pathname.slice(firstAt + 1);
          }
          const lastSlash = pathname.lastIndexOf("/");
          if (lastSlash > -1) {
            user = decodeURIComponent(pathname.slice(0, lastSlash));
            if (!user) {
              user = null;
            }
            project = decodeURIComponent(pathname.slice(lastSlash + 1));
          } else {
            project = decodeURIComponent(pathname);
          }
          if (project.endsWith(".git")) {
            project = project.slice(0, -4);
          }
          if (parsed.hash) {
            committish = decodeURIComponent(parsed.hash.slice(1));
          }
          defaultRepresentation = "shortcut";
        } else {
          if (!gitHostInfo.protocols.includes(parsed.protocol)) {
            return;
          }
          const segments = gitHostInfo.extract(parsed);
          if (!segments) {
            return;
          }
          user = segments.user && decodeURIComponent(segments.user);
          project = decodeURIComponent(segments.project);
          committish = decodeURIComponent(segments.committish);
          defaultRepresentation = protocolToRepresentation(parsed.protocol);
        }
      } catch (err) {
        if (err instanceof URIError) {
          return;
        } else {
          throw err;
        }
      }
      return new GitHost(gitHostName, user, auth, project, committish, defaultRepresentation, opts2);
    }
    var correctProtocol = (arg) => {
      const firstColon = arg.indexOf(":");
      const proto2 = arg.slice(0, firstColon + 1);
      if (knownProtocols.includes(proto2)) {
        return arg;
      }
      const firstAt = arg.indexOf("@");
      if (firstAt > -1) {
        if (firstAt > firstColon) {
          return `git+ssh://${arg}`;
        } else {
          return arg;
        }
      }
      const doubleSlash = arg.indexOf("//");
      if (doubleSlash === firstColon + 1) {
        return arg;
      }
      return arg.slice(0, firstColon + 1) + "//" + arg.slice(firstColon + 1);
    };
    var isGitHubShorthand = (arg) => {
      const firstHash = arg.indexOf("#");
      const firstSlash = arg.indexOf("/");
      const secondSlash = arg.indexOf("/", firstSlash + 1);
      const firstColon = arg.indexOf(":");
      const firstSpace = /\s/.exec(arg);
      const firstAt = arg.indexOf("@");
      const spaceOnlyAfterHash = !firstSpace || firstHash > -1 && firstSpace.index > firstHash;
      const atOnlyAfterHash = firstAt === -1 || firstHash > -1 && firstAt > firstHash;
      const colonOnlyAfterHash = firstColon === -1 || firstHash > -1 && firstColon > firstHash;
      const secondSlashOnlyAfterHash = secondSlash === -1 || firstHash > -1 && secondSlash > firstHash;
      const hasSlash = firstSlash > 0;
      const doesNotEndWithSlash = firstHash > -1 ? arg[firstHash - 1] !== "/" : !arg.endsWith("/");
      const doesNotStartWithDot = !arg.startsWith(".");
      return spaceOnlyAfterHash && hasSlash && doesNotEndWithSlash && doesNotStartWithDot && atOnlyAfterHash && colonOnlyAfterHash && secondSlashOnlyAfterHash;
    };
    var correctUrl2 = (giturl) => {
      const firstAt = giturl.indexOf("@");
      const lastHash = giturl.lastIndexOf("#");
      let firstColon = giturl.indexOf(":");
      let lastColon = giturl.lastIndexOf(":", lastHash > -1 ? lastHash : Infinity);
      let corrected;
      if (lastColon > firstAt) {
        corrected = giturl.slice(0, lastColon) + "/" + giturl.slice(lastColon + 1);
        firstColon = corrected.indexOf(":");
        lastColon = corrected.lastIndexOf(":");
      }
      if (firstColon === -1 && giturl.indexOf("//") === -1) {
        corrected = `git+ssh://${corrected}`;
      }
      return corrected;
    };
    var parseGitUrl = (giturl) => {
      let result2;
      try {
        result2 = new url7.URL(giturl);
      } catch (err) {
      }
      if (result2) {
        return result2;
      }
      const correctedUrl = correctUrl2(giturl);
      try {
        result2 = new url7.URL(correctedUrl);
      } catch (err) {
      }
      return result2;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/npm-package-arg/2.0.0/806bd7a4ba7447aa894e0bb6162dd4d40ea6430c6ee53dcb7557a2b766275e44/node_modules/@pnpm/npm-package-arg/npa.js
var require_npa = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/npm-package-arg/2.0.0/806bd7a4ba7447aa894e0bb6162dd4d40ea6430c6ee53dcb7557a2b766275e44/node_modules/@pnpm/npm-package-arg/npa.js"(exports2, module2) {
    "use strict";
    module2.exports = npa12;
    module2.exports.resolve = resolve3;
    module2.exports.Result = Result;
    var HostedGit4;
    var semver56;
    var path218;
    var validatePackageName2;
    var os15;
    var isWindows15 = process.platform === "win32" || global.FAKE_WINDOWS;
    var hasSlashes = isWindows15 ? /\\|[/]/ : /[/]/;
    var isURL = /^(?:git[+])?[a-z]+:/i;
    var isFilename2 = /[.](?:tgz|tar.gz|tar)$/i;
    function npa12(arg, where) {
      let name;
      let spec;
      if (typeof arg === "object") {
        if (arg instanceof Result && (!where || where === arg.where)) {
          return arg;
        } else if (arg.name && arg.rawSpec) {
          return npa12.resolve(arg.name, arg.rawSpec, where || arg.where);
        } else {
          return npa12(arg.raw, where || arg.where);
        }
      }
      const nameEndsAt = arg[0] === "@" ? arg.slice(1).indexOf("@") + 1 : arg.indexOf("@");
      const namePart = nameEndsAt > 0 ? arg.slice(0, nameEndsAt) : arg;
      if (isURL.test(arg)) {
        spec = arg;
      } else if (namePart[0] !== "@" && (hasSlashes.test(namePart) || isFilename2.test(namePart))) {
        spec = arg;
      } else if (nameEndsAt > 0) {
        name = namePart;
        spec = arg.slice(nameEndsAt + 1);
      } else {
        if (!validatePackageName2) validatePackageName2 = require_lib5();
        const valid2 = validatePackageName2(arg);
        if (valid2.validForOldPackages) {
          name = arg;
        } else {
          spec = arg;
        }
      }
      return resolve3(name, spec, where, arg);
    }
    var isFilespec3 = isWindows15 ? /^(?:[.]|~[/]|[/\\]|[a-zA-Z]:)/ : /^(?:[.]|~[/]|[/]|[a-zA-Z]:)/;
    function resolve3(name, spec, where, arg) {
      const res = new Result({
        raw: arg,
        name,
        rawSpec: spec,
        fromArgument: arg != null
      });
      if (name) res.setName(name);
      if (spec && (isFilespec3.test(spec) || /^file:/i.test(spec))) {
        return fromFile(res, where);
      }
      if (spec && spec.startsWith("npm:")) {
        return Object.assign(npa12(spec.substr(4), where), {
          alias: name,
          raw: res.raw,
          rawSpec: res.rawSpec
        });
      }
      if (!HostedGit4) HostedGit4 = require_hosted_git_info();
      const hosted = HostedGit4.fromUrl(spec, { noGitPlus: true, noCommittish: true });
      if (hosted) {
        return fromHostedGit2(res, hosted);
      } else if (spec && isURL.test(spec)) {
        return fromURL(res);
      } else if (spec && (hasSlashes.test(spec) || isFilename2.test(spec))) {
        return fromFile(res, where);
      } else {
        return fromRegistry(res);
      }
    }
    function invalidPackageName(name, valid2) {
      const err = new Error(`Invalid package name "${name}": ${valid2.errors.join("; ")}`);
      err.code = "EINVALIDPACKAGENAME";
      return err;
    }
    function invalidTagName(name) {
      const err = new Error(`Invalid tag name "${name}": Tags may not have any characters that encodeURIComponent encodes.`);
      err.code = "EINVALIDTAGNAME";
      return err;
    }
    function Result(opts2) {
      this.type = opts2.type;
      this.registry = opts2.registry;
      this.where = opts2.where;
      if (opts2.raw == null) {
        this.raw = opts2.name ? opts2.name + "@" + opts2.rawSpec : opts2.rawSpec;
      } else {
        this.raw = opts2.raw;
      }
      this.name = void 0;
      this.escapedName = void 0;
      this.scope = void 0;
      this.rawSpec = opts2.rawSpec == null ? "" : opts2.rawSpec;
      this.saveSpec = opts2.saveSpec;
      this.fetchSpec = opts2.fetchSpec;
      if (opts2.name) this.setName(opts2.name);
      this.gitRange = opts2.gitRange;
      this.gitCommittish = opts2.gitCommittish;
      this.hosted = opts2.hosted;
    }
    Result.prototype = {};
    Result.prototype.setName = function(name) {
      if (!validatePackageName2) validatePackageName2 = require_lib5();
      const valid2 = validatePackageName2(name);
      if (!valid2.validForOldPackages) {
        throw invalidPackageName(name, valid2);
      }
      this.name = name;
      this.scope = name[0] === "@" ? name.slice(0, name.indexOf("/")) : void 0;
      this.escapedName = name.replace("/", "%2f");
      return this;
    };
    Result.prototype.toString = function() {
      const full = [];
      if (this.name != null && this.name !== "") full.push(this.name);
      const spec = this.saveSpec || this.fetchSpec || this.rawSpec;
      if (spec != null && spec !== "") full.push(spec);
      return full.length ? full.join("@") : this.raw;
    };
    Result.prototype.toJSON = function() {
      const result2 = Object.assign({}, this);
      delete result2.hosted;
      return result2;
    };
    function setGitAttrs(res, committish) {
      if (!committish) {
        res.gitCommittish = null;
        return;
      }
      for (const part of committish.split("::")) {
        if (!part.includes(":")) {
          if (res.gitRange) {
            throw new Error("cannot override existing semver range with a committish");
          }
          if (res.gitCommittish) {
            throw new Error("cannot override existing committish with a second committish");
          }
          res.gitCommittish = part;
          continue;
        }
        const [name, value] = part.split(":");
        if (name === "semver") {
          if (res.gitCommittish) {
            throw new Error("cannot override existing committish with a semver range");
          }
          if (res.gitRange) {
            throw new Error("cannot override existing semver range with a second semver range");
          }
          res.gitRange = decodeURIComponent(value);
          continue;
        }
        if (name === "path") {
          if (res.gitSubdir) {
            throw new Error("cannot override existing path with a second path");
          }
          res.gitSubdir = `/${value}`;
          continue;
        }
      }
    }
    var isAbsolutePath4 = /^[/]|^[A-Za-z]:/;
    function resolvePath4(where, spec) {
      if (isAbsolutePath4.test(spec)) return spec;
      if (!path218) path218 = __require("path");
      return path218.resolve(where, spec);
    }
    function isAbsolute3(dir) {
      if (dir[0] === "/") return true;
      if (/^[A-Za-z]:/.test(dir)) return true;
      return false;
    }
    function fromFile(res, where) {
      if (!where) where = process.cwd();
      res.type = isFilename2.test(res.rawSpec) ? "file" : "directory";
      res.where = where;
      const spec = res.rawSpec.replace(/\\/g, "/").replace(/^file:[/]*([A-Za-z]:)/, "$1").replace(/^file:(?:[/]*([~./]))?/, "$1");
      if (/^~[/]/.test(spec)) {
        if (!os15) os15 = __require("os");
        res.fetchSpec = resolvePath4(os15.homedir(), spec.slice(2));
        res.saveSpec = "file:" + spec;
      } else {
        res.fetchSpec = resolvePath4(where, spec);
        if (isAbsolute3(spec)) {
          res.saveSpec = "file:" + spec;
        } else {
          if (!path218) path218 = __require("path");
          res.saveSpec = "file:" + path218.relative(where, res.fetchSpec);
        }
      }
      return res;
    }
    function fromHostedGit2(res, hosted) {
      res.type = "git";
      res.hosted = hosted;
      res.saveSpec = hosted.toString({ noGitPlus: false, noCommittish: false });
      res.fetchSpec = hosted.getDefaultRepresentation() === "shortcut" ? null : hosted.toString();
      setGitAttrs(res, hosted.committish);
      return res;
    }
    function unsupportedURLType(protocol, spec) {
      const err = new Error(`Unsupported URL Type "${protocol}": ${spec}`);
      err.code = "EUNSUPPORTEDPROTOCOL";
      return err;
    }
    function fromURL(res) {
      let rawSpec = res.rawSpec;
      res.saveSpec = rawSpec;
      if (rawSpec.startsWith("git+ssh:")) {
        const matched = rawSpec.match(/^git\+ssh:\/\/([^:#]+:[^#]+(?:\.git)?)(?:#(.*))?$/i);
        if (matched && !matched[1].match(/:[0-9]+\/?.*$/i)) {
          res.type = "git";
          setGitAttrs(res, matched[2]);
          res.fetchSpec = matched[1];
          return res;
        }
      } else if (rawSpec.startsWith("git+file://")) {
        rawSpec = rawSpec.replace(/\\/g, "/");
      }
      const parsedUrl = new URL(rawSpec);
      switch (parsedUrl.protocol) {
        case "git:":
        case "git+http:":
        case "git+https:":
        case "git+rsync:":
        case "git+ftp:":
        case "git+file:":
        case "git+ssh:":
          res.type = "git";
          setGitAttrs(res, parsedUrl.hash.slice(1));
          if (parsedUrl.protocol === "git+file:" && /^git\+file:\/\/[a-z]:/i.test(rawSpec)) {
            res.fetchSpec = `git+file://${parsedUrl.host.toLowerCase()}:${parsedUrl.pathname}`;
          } else {
            parsedUrl.hash = "";
            res.fetchSpec = parsedUrl.toString();
          }
          if (res.fetchSpec.startsWith("git+")) {
            res.fetchSpec = res.fetchSpec.slice(4);
          }
          break;
        case "http:":
        case "https:":
          res.type = "remote";
          res.fetchSpec = res.saveSpec;
          break;
        default:
          throw unsupportedURLType(parsedUrl.protocol, rawSpec);
      }
      return res;
    }
    function fromRegistry(res) {
      res.registry = true;
      const spec = res.rawSpec === "" ? "latest" : res.rawSpec;
      res.saveSpec = null;
      res.fetchSpec = spec;
      if (!semver56) semver56 = require_semver2();
      const version2 = semver56.valid(spec, true);
      const range = semver56.validRange(spec, true);
      if (version2) {
        res.type = "version";
      } else if (range) {
        res.type = "range";
      } else {
        if (encodeURIComponent(spec) !== spec) {
          throw invalidTagName(spec);
        }
        res.type = "tag";
      }
      return res;
    }
  }
});

// ../config/pick-registry-for-package/lib/index.js
function pickRegistryForPackage(registries, packageName, bareSpecifier) {
  const scope = getScope(packageName, bareSpecifier);
  return (scope && registries[scope]) ?? registries.default;
}
function getScope(pkgName, bareSpecifier) {
  if (bareSpecifier?.startsWith("npm:")) {
    const target2 = bareSpecifier.slice(4);
    if (target2[0] === "@") {
      return target2.substring(0, target2.indexOf("/"));
    }
    return null;
  }
  if (pkgName[0] === "@") {
    return pkgName.substring(0, pkgName.indexOf("/"));
  }
  return null;
}
var init_lib15 = __esm({
  "../config/pick-registry-for-package/lib/index.js"() {
    "use strict";
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/msgpackr/1.11.8/8643dc0f73f17361f7ff0e051a29ae504ef0c06b3c6d07c31984f50d7f160d42/node_modules/msgpackr/unpack.js
function checkedRead(options) {
  try {
    if (!currentUnpackr.trusted && !sequentialMode) {
      let sharedLength = currentStructures.sharedLength || 0;
      if (sharedLength < currentStructures.length)
        currentStructures.length = sharedLength;
    }
    let result2;
    if (currentUnpackr.randomAccessStructure && src[position] < 64 && src[position] >= 32 && readStruct) {
      result2 = readStruct(src, position, srcEnd, currentUnpackr);
      src = null;
      if (!(options && options.lazy) && result2)
        result2 = result2.toJSON();
      position = srcEnd;
    } else
      result2 = read();
    if (bundledStrings) {
      position = bundledStrings.postBundlePosition;
      bundledStrings = null;
    }
    if (sequentialMode)
      currentStructures.restoreStructures = null;
    if (position == srcEnd) {
      if (currentStructures && currentStructures.restoreStructures)
        restoreStructures();
      currentStructures = null;
      src = null;
      if (referenceMap)
        referenceMap = null;
    } else if (position > srcEnd) {
      throw new Error("Unexpected end of MessagePack data");
    } else if (!sequentialMode) {
      let jsonView;
      try {
        jsonView = JSON.stringify(result2, (_, value) => typeof value === "bigint" ? `${value}n` : value).slice(0, 100);
      } catch (error) {
        jsonView = "(JSON view not available " + error + ")";
      }
      throw new Error("Data read, but end of buffer not reached " + jsonView);
    }
    return result2;
  } catch (error) {
    if (currentStructures && currentStructures.restoreStructures)
      restoreStructures();
    clearSource();
    if (error instanceof RangeError || error.message.startsWith("Unexpected end of buffer") || position > srcEnd) {
      error.incomplete = true;
    }
    throw error;
  }
}
function restoreStructures() {
  for (let id in currentStructures.restoreStructures) {
    currentStructures[id] = currentStructures.restoreStructures[id];
  }
  currentStructures.restoreStructures = null;
}
function read() {
  let token = src[position++];
  if (token < 160) {
    if (token < 128) {
      if (token < 64)
        return token;
      else {
        let structure = currentStructures[token & 63] || currentUnpackr.getStructures && loadStructures()[token & 63];
        if (structure) {
          if (!structure.read) {
            structure.read = createStructureReader(structure, token & 63);
          }
          return structure.read();
        } else
          return token;
      }
    } else if (token < 144) {
      token -= 128;
      if (currentUnpackr.mapsAsObjects) {
        let object = {};
        for (let i2 = 0; i2 < token; i2++) {
          let key = readKey();
          if (key === "__proto__")
            key = "__proto_";
          object[key] = read();
        }
        return object;
      } else {
        let map26 = /* @__PURE__ */ new Map();
        for (let i2 = 0; i2 < token; i2++) {
          map26.set(read(), read());
        }
        return map26;
      }
    } else {
      token -= 144;
      let array = new Array(token);
      for (let i2 = 0; i2 < token; i2++) {
        array[i2] = read();
      }
      if (currentUnpackr.freezeData)
        return Object.freeze(array);
      return array;
    }
  } else if (token < 192) {
    let length = token - 160;
    if (srcStringEnd >= position) {
      return srcString.slice(position - srcStringStart, (position += length) - srcStringStart);
    }
    if (srcStringEnd == 0 && srcEnd < 140) {
      let string = length < 16 ? shortStringInJS(length) : longStringInJS(length);
      if (string != null)
        return string;
    }
    return readFixedString(length);
  } else {
    let value;
    switch (token) {
      case 192:
        return null;
      case 193:
        if (bundledStrings) {
          value = read();
          if (value > 0)
            return bundledStrings[1].slice(bundledStrings.position1, bundledStrings.position1 += value);
          else
            return bundledStrings[0].slice(bundledStrings.position0, bundledStrings.position0 -= value);
        }
        return C1;
      // "never-used", return special object to denote that
      case 194:
        return false;
      case 195:
        return true;
      case 196:
        value = src[position++];
        if (value === void 0)
          throw new Error("Unexpected end of buffer");
        return readBin(value);
      case 197:
        value = dataView.getUint16(position);
        position += 2;
        return readBin(value);
      case 198:
        value = dataView.getUint32(position);
        position += 4;
        return readBin(value);
      case 199:
        return readExt(src[position++]);
      case 200:
        value = dataView.getUint16(position);
        position += 2;
        return readExt(value);
      case 201:
        value = dataView.getUint32(position);
        position += 4;
        return readExt(value);
      case 202:
        value = dataView.getFloat32(position);
        if (currentUnpackr.useFloat32 > 2) {
          let multiplier = mult10[(src[position] & 127) << 1 | src[position + 1] >> 7];
          position += 4;
          return (multiplier * value + (value > 0 ? 0.5 : -0.5) >> 0) / multiplier;
        }
        position += 4;
        return value;
      case 203:
        value = dataView.getFloat64(position);
        position += 8;
        return value;
      // uint handlers
      case 204:
        return src[position++];
      case 205:
        value = dataView.getUint16(position);
        position += 2;
        return value;
      case 206:
        value = dataView.getUint32(position);
        position += 4;
        return value;
      case 207:
        if (currentUnpackr.int64AsType === "number") {
          value = dataView.getUint32(position) * 4294967296;
          value += dataView.getUint32(position + 4);
        } else if (currentUnpackr.int64AsType === "string") {
          value = dataView.getBigUint64(position).toString();
        } else if (currentUnpackr.int64AsType === "auto") {
          value = dataView.getBigUint64(position);
          if (value <= BigInt(2) << BigInt(52)) value = Number(value);
        } else
          value = dataView.getBigUint64(position);
        position += 8;
        return value;
      // int handlers
      case 208:
        return dataView.getInt8(position++);
      case 209:
        value = dataView.getInt16(position);
        position += 2;
        return value;
      case 210:
        value = dataView.getInt32(position);
        position += 4;
        return value;
      case 211:
        if (currentUnpackr.int64AsType === "number") {
          value = dataView.getInt32(position) * 4294967296;
          value += dataView.getUint32(position + 4);
        } else if (currentUnpackr.int64AsType === "string") {
          value = dataView.getBigInt64(position).toString();
        } else if (currentUnpackr.int64AsType === "auto") {
          value = dataView.getBigInt64(position);
          if (value >= BigInt(-2) << BigInt(52) && value <= BigInt(2) << BigInt(52)) value = Number(value);
        } else
          value = dataView.getBigInt64(position);
        position += 8;
        return value;
      case 212:
        value = src[position++];
        if (value == 114) {
          return recordDefinition(src[position++] & 63);
        } else {
          let extension = currentExtensions[value];
          if (extension) {
            if (extension.read) {
              position++;
              return extension.read(read());
            } else if (extension.noBuffer) {
              position++;
              return extension();
            } else
              return extension(src.subarray(position, ++position));
          } else
            throw new Error("Unknown extension " + value);
        }
      case 213:
        value = src[position];
        if (value == 114) {
          position++;
          return recordDefinition(src[position++] & 63, src[position++]);
        } else
          return readExt(2);
      case 214:
        return readExt(4);
      case 215:
        return readExt(8);
      case 216:
        return readExt(16);
      case 217:
        value = src[position++];
        if (srcStringEnd >= position) {
          return srcString.slice(position - srcStringStart, (position += value) - srcStringStart);
        }
        return readString8(value);
      case 218:
        value = dataView.getUint16(position);
        position += 2;
        if (srcStringEnd >= position) {
          return srcString.slice(position - srcStringStart, (position += value) - srcStringStart);
        }
        return readString16(value);
      case 219:
        value = dataView.getUint32(position);
        position += 4;
        if (srcStringEnd >= position) {
          return srcString.slice(position - srcStringStart, (position += value) - srcStringStart);
        }
        return readString32(value);
      case 220:
        value = dataView.getUint16(position);
        position += 2;
        return readArray(value);
      case 221:
        value = dataView.getUint32(position);
        position += 4;
        return readArray(value);
      case 222:
        value = dataView.getUint16(position);
        position += 2;
        return readMap(value);
      case 223:
        value = dataView.getUint32(position);
        position += 4;
        return readMap(value);
      default:
        if (token >= 224)
          return token - 256;
        if (token === void 0) {
          let error = new Error("Unexpected end of MessagePack data");
          error.incomplete = true;
          throw error;
        }
        throw new Error("Unknown MessagePack token " + token);
    }
  }
}
function createStructureReader(structure, firstId) {
  function readObject() {
    if (readObject.count++ > inlineObjectReadThreshold) {
      let readObject2 = structure.read = new Function("r", "return function(){return " + (currentUnpackr.freezeData ? "Object.freeze" : "") + "({" + structure.map((key) => key === "__proto__" ? "__proto_:r()" : validName.test(key) ? key + ":r()" : "[" + JSON.stringify(key) + "]:r()").join(",") + "})}")(read);
      if (structure.highByte === 0)
        structure.read = createSecondByteReader(firstId, structure.read);
      return readObject2();
    }
    let object = {};
    for (let i2 = 0, l = structure.length; i2 < l; i2++) {
      let key = structure[i2];
      if (key === "__proto__")
        key = "__proto_";
      object[key] = read();
    }
    if (currentUnpackr.freezeData)
      return Object.freeze(object);
    return object;
  }
  readObject.count = 0;
  if (structure.highByte === 0) {
    return createSecondByteReader(firstId, readObject);
  }
  return readObject;
}
function loadStructures() {
  let loadedStructures = saveState(() => {
    src = null;
    return currentUnpackr.getStructures();
  });
  return currentStructures = currentUnpackr._mergeStructures(loadedStructures, currentStructures);
}
function setExtractor(extractStrings) {
  isNativeAccelerationEnabled = true;
  readFixedString = readString2(1);
  readString8 = readString2(2);
  readString16 = readString2(3);
  readString32 = readString2(5);
  function readString2(headerLength) {
    return function readString3(length) {
      let string = strings[stringPosition++];
      if (string == null) {
        if (bundledStrings)
          return readStringJS(length);
        let byteOffset = src.byteOffset;
        let extraction = extractStrings(position - headerLength + byteOffset, srcEnd + byteOffset, src.buffer);
        if (typeof extraction == "string") {
          string = extraction;
          strings = EMPTY_ARRAY;
        } else {
          strings = extraction;
          stringPosition = 1;
          srcStringEnd = 1;
          string = strings[0];
          if (string === void 0)
            throw new Error("Unexpected end of buffer");
        }
      }
      let srcStringLength = string.length;
      if (srcStringLength <= length) {
        position += length;
        return string;
      }
      srcString = string;
      srcStringStart = position;
      srcStringEnd = position + srcStringLength;
      position += length;
      return string.slice(0, length);
    };
  }
}
function readStringJS(length) {
  let result2;
  if (length < 16) {
    if (result2 = shortStringInJS(length))
      return result2;
  }
  if (length > 64 && decoder)
    return decoder.decode(src.subarray(position, position += length));
  const end = position + length;
  const units = [];
  result2 = "";
  while (position < end) {
    const byte1 = src[position++];
    if ((byte1 & 128) === 0) {
      units.push(byte1);
    } else if ((byte1 & 224) === 192) {
      const byte2 = src[position++] & 63;
      units.push((byte1 & 31) << 6 | byte2);
    } else if ((byte1 & 240) === 224) {
      const byte2 = src[position++] & 63;
      const byte3 = src[position++] & 63;
      units.push((byte1 & 31) << 12 | byte2 << 6 | byte3);
    } else if ((byte1 & 248) === 240) {
      const byte2 = src[position++] & 63;
      const byte3 = src[position++] & 63;
      const byte4 = src[position++] & 63;
      let unit = (byte1 & 7) << 18 | byte2 << 12 | byte3 << 6 | byte4;
      if (unit > 65535) {
        unit -= 65536;
        units.push(unit >>> 10 & 1023 | 55296);
        unit = 56320 | unit & 1023;
      }
      units.push(unit);
    } else {
      units.push(byte1);
    }
    if (units.length >= 4096) {
      result2 += fromCharCode.apply(String, units);
      units.length = 0;
    }
  }
  if (units.length > 0) {
    result2 += fromCharCode.apply(String, units);
  }
  return result2;
}
function readString(source, start, length) {
  let existingSrc = src;
  src = source;
  position = start;
  try {
    return readStringJS(length);
  } finally {
    src = existingSrc;
  }
}
function readArray(length) {
  let array = new Array(length);
  for (let i2 = 0; i2 < length; i2++) {
    array[i2] = read();
  }
  if (currentUnpackr.freezeData)
    return Object.freeze(array);
  return array;
}
function readMap(length) {
  if (currentUnpackr.mapsAsObjects) {
    let object = {};
    for (let i2 = 0; i2 < length; i2++) {
      let key = readKey();
      if (key === "__proto__")
        key = "__proto_";
      object[key] = read();
    }
    return object;
  } else {
    let map26 = /* @__PURE__ */ new Map();
    for (let i2 = 0; i2 < length; i2++) {
      map26.set(read(), read());
    }
    return map26;
  }
}
function longStringInJS(length) {
  let start = position;
  let bytes = new Array(length);
  for (let i2 = 0; i2 < length; i2++) {
    const byte = src[position++];
    if ((byte & 128) > 0) {
      position = start;
      return;
    }
    bytes[i2] = byte;
  }
  return fromCharCode.apply(String, bytes);
}
function shortStringInJS(length) {
  if (length < 4) {
    if (length < 2) {
      if (length === 0)
        return "";
      else {
        let a2 = src[position++];
        if ((a2 & 128) > 1) {
          position -= 1;
          return;
        }
        return fromCharCode(a2);
      }
    } else {
      let a2 = src[position++];
      let b = src[position++];
      if ((a2 & 128) > 0 || (b & 128) > 0) {
        position -= 2;
        return;
      }
      if (length < 3)
        return fromCharCode(a2, b);
      let c3 = src[position++];
      if ((c3 & 128) > 0) {
        position -= 3;
        return;
      }
      return fromCharCode(a2, b, c3);
    }
  } else {
    let a2 = src[position++];
    let b = src[position++];
    let c3 = src[position++];
    let d = src[position++];
    if ((a2 & 128) > 0 || (b & 128) > 0 || (c3 & 128) > 0 || (d & 128) > 0) {
      position -= 4;
      return;
    }
    if (length < 6) {
      if (length === 4)
        return fromCharCode(a2, b, c3, d);
      else {
        let e = src[position++];
        if ((e & 128) > 0) {
          position -= 5;
          return;
        }
        return fromCharCode(a2, b, c3, d, e);
      }
    } else if (length < 8) {
      let e = src[position++];
      let f = src[position++];
      if ((e & 128) > 0 || (f & 128) > 0) {
        position -= 6;
        return;
      }
      if (length < 7)
        return fromCharCode(a2, b, c3, d, e, f);
      let g = src[position++];
      if ((g & 128) > 0) {
        position -= 7;
        return;
      }
      return fromCharCode(a2, b, c3, d, e, f, g);
    } else {
      let e = src[position++];
      let f = src[position++];
      let g = src[position++];
      let h2 = src[position++];
      if ((e & 128) > 0 || (f & 128) > 0 || (g & 128) > 0 || (h2 & 128) > 0) {
        position -= 8;
        return;
      }
      if (length < 10) {
        if (length === 8)
          return fromCharCode(a2, b, c3, d, e, f, g, h2);
        else {
          let i2 = src[position++];
          if ((i2 & 128) > 0) {
            position -= 9;
            return;
          }
          return fromCharCode(a2, b, c3, d, e, f, g, h2, i2);
        }
      } else if (length < 12) {
        let i2 = src[position++];
        let j2 = src[position++];
        if ((i2 & 128) > 0 || (j2 & 128) > 0) {
          position -= 10;
          return;
        }
        if (length < 11)
          return fromCharCode(a2, b, c3, d, e, f, g, h2, i2, j2);
        let k2 = src[position++];
        if ((k2 & 128) > 0) {
          position -= 11;
          return;
        }
        return fromCharCode(a2, b, c3, d, e, f, g, h2, i2, j2, k2);
      } else {
        let i2 = src[position++];
        let j2 = src[position++];
        let k2 = src[position++];
        let l = src[position++];
        if ((i2 & 128) > 0 || (j2 & 128) > 0 || (k2 & 128) > 0 || (l & 128) > 0) {
          position -= 12;
          return;
        }
        if (length < 14) {
          if (length === 12)
            return fromCharCode(a2, b, c3, d, e, f, g, h2, i2, j2, k2, l);
          else {
            let m = src[position++];
            if ((m & 128) > 0) {
              position -= 13;
              return;
            }
            return fromCharCode(a2, b, c3, d, e, f, g, h2, i2, j2, k2, l, m);
          }
        } else {
          let m = src[position++];
          let n2 = src[position++];
          if ((m & 128) > 0 || (n2 & 128) > 0) {
            position -= 14;
            return;
          }
          if (length < 15)
            return fromCharCode(a2, b, c3, d, e, f, g, h2, i2, j2, k2, l, m, n2);
          let o2 = src[position++];
          if ((o2 & 128) > 0) {
            position -= 15;
            return;
          }
          return fromCharCode(a2, b, c3, d, e, f, g, h2, i2, j2, k2, l, m, n2, o2);
        }
      }
    }
  }
}
function readOnlyJSString() {
  let token = src[position++];
  let length;
  if (token < 192) {
    length = token - 160;
  } else {
    switch (token) {
      case 217:
        length = src[position++];
        break;
      case 218:
        length = dataView.getUint16(position);
        position += 2;
        break;
      case 219:
        length = dataView.getUint32(position);
        position += 4;
        break;
      default:
        throw new Error("Expected string");
    }
  }
  return readStringJS(length);
}
function readBin(length) {
  return currentUnpackr.copyBuffers ? (
    // specifically use the copying slice (not the node one)
    Uint8Array.prototype.slice.call(src, position, position += length)
  ) : src.subarray(position, position += length);
}
function readExt(length) {
  let type4 = src[position++];
  if (currentExtensions[type4]) {
    let end;
    return currentExtensions[type4](src.subarray(position, end = position += length), (readPosition) => {
      position = readPosition;
      try {
        return read();
      } finally {
        position = end;
      }
    });
  } else
    throw new Error("Unknown extension type " + type4);
}
function readKey() {
  let length = src[position++];
  if (length >= 160 && length < 192) {
    length = length - 160;
    if (srcStringEnd >= position)
      return srcString.slice(position - srcStringStart, (position += length) - srcStringStart);
    else if (!(srcStringEnd == 0 && srcEnd < 180))
      return readFixedString(length);
  } else {
    position--;
    return asSafeString(read());
  }
  let key = (length << 5 ^ (length > 1 ? dataView.getUint16(position) : length > 0 ? src[position] : 0)) & 4095;
  let entry = keyCache[key];
  let checkPosition = position;
  let end = position + length - 3;
  let chunk;
  let i2 = 0;
  if (entry && entry.bytes == length) {
    while (checkPosition < end) {
      chunk = dataView.getUint32(checkPosition);
      if (chunk != entry[i2++]) {
        checkPosition = 1879048192;
        break;
      }
      checkPosition += 4;
    }
    end += 3;
    while (checkPosition < end) {
      chunk = src[checkPosition++];
      if (chunk != entry[i2++]) {
        checkPosition = 1879048192;
        break;
      }
    }
    if (checkPosition === end) {
      position = checkPosition;
      return entry.string;
    }
    end -= 3;
    checkPosition = position;
  }
  entry = [];
  keyCache[key] = entry;
  entry.bytes = length;
  while (checkPosition < end) {
    chunk = dataView.getUint32(checkPosition);
    entry.push(chunk);
    checkPosition += 4;
  }
  end += 3;
  while (checkPosition < end) {
    chunk = src[checkPosition++];
    entry.push(chunk);
  }
  let string = length < 16 ? shortStringInJS(length) : longStringInJS(length);
  if (string != null)
    return entry.string = string;
  return entry.string = readFixedString(length);
}
function asSafeString(property) {
  if (typeof property === "string") return property;
  if (typeof property === "number" || typeof property === "boolean" || typeof property === "bigint") return property.toString();
  if (property == null) return property + "";
  if (currentUnpackr.allowArraysInMapKeys && Array.isArray(property) && property.flat().every((item) => ["string", "number", "boolean", "bigint"].includes(typeof item))) {
    return property.flat().toString();
  }
  throw new Error(`Invalid property type for record: ${typeof property}`);
}
function saveState(callback2) {
  if (onSaveState)
    onSaveState();
  let savedSrcEnd = srcEnd;
  let savedPosition = position;
  let savedStringPosition = stringPosition;
  let savedSrcStringStart = srcStringStart;
  let savedSrcStringEnd = srcStringEnd;
  let savedSrcString = srcString;
  let savedStrings = strings;
  let savedReferenceMap = referenceMap;
  let savedBundledStrings = bundledStrings;
  let savedSrc = new Uint8Array(src.slice(0, srcEnd));
  let savedStructures = currentStructures;
  let savedStructuresContents = currentStructures.slice(0, currentStructures.length);
  let savedPackr = currentUnpackr;
  let savedSequentialMode = sequentialMode;
  let value = callback2();
  srcEnd = savedSrcEnd;
  position = savedPosition;
  stringPosition = savedStringPosition;
  srcStringStart = savedSrcStringStart;
  srcStringEnd = savedSrcStringEnd;
  srcString = savedSrcString;
  strings = savedStrings;
  referenceMap = savedReferenceMap;
  bundledStrings = savedBundledStrings;
  src = savedSrc;
  sequentialMode = savedSequentialMode;
  currentStructures = savedStructures;
  currentStructures.splice(0, currentStructures.length, ...savedStructuresContents);
  currentUnpackr = savedPackr;
  dataView = new DataView(src.buffer, src.byteOffset, src.byteLength);
  return value;
}
function clearSource() {
  src = null;
  referenceMap = null;
  currentStructures = null;
}
function setReadStruct(updatedReadStruct, loadedStructs, saveState3) {
  readStruct = updatedReadStruct;
  onLoadedStructures = loadedStructs;
  onSaveState = saveState3;
}
var decoder, src, srcEnd, position, EMPTY_ARRAY, strings, stringPosition, currentUnpackr, currentStructures, srcString, srcStringStart, srcStringEnd, bundledStrings, referenceMap, currentExtensions, dataView, defaultOptions, C1Type, C1, sequentialMode, inlineObjectReadThreshold, readStruct, onLoadedStructures, onSaveState, Unpackr, validName, createSecondByteReader, readFixedString, readString8, readString16, readString32, isNativeAccelerationEnabled, fromCharCode, keyCache, recordDefinition, errors, typedArrays, glbl, TEMP_BUNDLE, mult10, defaultUnpackr, unpack, unpackMultiple, decode, FLOAT32_OPTIONS, f32Array, u8Array;
var init_unpack = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/msgpackr/1.11.8/8643dc0f73f17361f7ff0e051a29ae504ef0c06b3c6d07c31984f50d7f160d42/node_modules/msgpackr/unpack.js"() {
    try {
      decoder = new TextDecoder();
    } catch (error) {
    }
    position = 0;
    EMPTY_ARRAY = [];
    strings = EMPTY_ARRAY;
    stringPosition = 0;
    currentUnpackr = {};
    srcStringStart = 0;
    srcStringEnd = 0;
    currentExtensions = [];
    defaultOptions = {
      useRecords: false,
      mapsAsObjects: true
    };
    C1Type = class {
    };
    C1 = new C1Type();
    C1.name = "MessagePack 0xC1";
    sequentialMode = false;
    inlineObjectReadThreshold = 2;
    try {
      new Function("");
    } catch (error) {
      inlineObjectReadThreshold = Infinity;
    }
    Unpackr = class _Unpackr {
      constructor(options) {
        if (options) {
          if (options.useRecords === false && options.mapsAsObjects === void 0)
            options.mapsAsObjects = true;
          if (options.sequential && options.trusted !== false) {
            options.trusted = true;
            if (!options.structures && options.useRecords != false) {
              options.structures = [];
              if (!options.maxSharedStructures)
                options.maxSharedStructures = 0;
            }
          }
          if (options.structures)
            options.structures.sharedLength = options.structures.length;
          else if (options.getStructures) {
            (options.structures = []).uninitialized = true;
            options.structures.sharedLength = 0;
          }
          if (options.int64AsNumber) {
            options.int64AsType = "number";
          }
        }
        Object.assign(this, options);
      }
      unpack(source, options) {
        if (src) {
          return saveState(() => {
            clearSource();
            return this ? this.unpack(source, options) : _Unpackr.prototype.unpack.call(defaultOptions, source, options);
          });
        }
        if (!source.buffer && source.constructor === ArrayBuffer)
          source = typeof Buffer !== "undefined" ? Buffer.from(source) : new Uint8Array(source);
        if (typeof options === "object") {
          srcEnd = options.end || source.length;
          position = options.start || 0;
        } else {
          position = 0;
          srcEnd = options > -1 ? options : source.length;
        }
        stringPosition = 0;
        srcStringEnd = 0;
        srcString = null;
        strings = EMPTY_ARRAY;
        bundledStrings = null;
        src = source;
        try {
          dataView = source.dataView || (source.dataView = new DataView(source.buffer, source.byteOffset, source.byteLength));
        } catch (error) {
          src = null;
          if (source instanceof Uint8Array)
            throw error;
          throw new Error("Source must be a Uint8Array or Buffer but was a " + (source && typeof source == "object" ? source.constructor.name : typeof source));
        }
        if (this instanceof _Unpackr) {
          currentUnpackr = this;
          if (this.structures) {
            currentStructures = this.structures;
            return checkedRead(options);
          } else if (!currentStructures || currentStructures.length > 0) {
            currentStructures = [];
          }
        } else {
          currentUnpackr = defaultOptions;
          if (!currentStructures || currentStructures.length > 0)
            currentStructures = [];
        }
        return checkedRead(options);
      }
      unpackMultiple(source, forEach) {
        let values, lastPosition = 0;
        try {
          sequentialMode = true;
          let size = source.length;
          let value = this ? this.unpack(source, size) : defaultUnpackr.unpack(source, size);
          if (forEach) {
            if (forEach(value, lastPosition, position) === false) return;
            while (position < size) {
              lastPosition = position;
              if (forEach(checkedRead(), lastPosition, position) === false) {
                return;
              }
            }
          } else {
            values = [value];
            while (position < size) {
              lastPosition = position;
              values.push(checkedRead());
            }
            return values;
          }
        } catch (error) {
          error.lastPosition = lastPosition;
          error.values = values;
          throw error;
        } finally {
          sequentialMode = false;
          clearSource();
        }
      }
      _mergeStructures(loadedStructures, existingStructures) {
        if (onLoadedStructures)
          loadedStructures = onLoadedStructures.call(this, loadedStructures);
        loadedStructures = loadedStructures || [];
        if (Object.isFrozen(loadedStructures))
          loadedStructures = loadedStructures.map((structure) => structure.slice(0));
        for (let i2 = 0, l = loadedStructures.length; i2 < l; i2++) {
          let structure = loadedStructures[i2];
          if (structure) {
            structure.isShared = true;
            if (i2 >= 32)
              structure.highByte = i2 - 32 >> 5;
          }
        }
        loadedStructures.sharedLength = loadedStructures.length;
        for (let id in existingStructures || []) {
          if (id >= 0) {
            let structure = loadedStructures[id];
            let existing = existingStructures[id];
            if (existing) {
              if (structure)
                (loadedStructures.restoreStructures || (loadedStructures.restoreStructures = []))[id] = structure;
              loadedStructures[id] = existing;
            }
          }
        }
        return this.structures = loadedStructures;
      }
      decode(source, options) {
        return this.unpack(source, options);
      }
    };
    validName = /^[a-zA-Z_$][a-zA-Z\d_$]*$/;
    createSecondByteReader = (firstId, read0) => {
      return function() {
        let highByte = src[position++];
        if (highByte === 0)
          return read0();
        let id = firstId < 32 ? -(firstId + (highByte << 5)) : firstId + (highByte << 5);
        let structure = currentStructures[id] || loadStructures()[id];
        if (!structure) {
          throw new Error("Record id is not defined for " + id);
        }
        if (!structure.read)
          structure.read = createStructureReader(structure, firstId);
        return structure.read();
      };
    };
    readFixedString = readStringJS;
    readString8 = readStringJS;
    readString16 = readStringJS;
    readString32 = readStringJS;
    isNativeAccelerationEnabled = false;
    fromCharCode = String.fromCharCode;
    keyCache = new Array(4096);
    recordDefinition = (id, highByte) => {
      let structure = read().map(asSafeString);
      let firstByte = id;
      if (highByte !== void 0) {
        id = id < 32 ? -((highByte << 5) + id) : (highByte << 5) + id;
        structure.highByte = highByte;
      }
      let existingStructure = currentStructures[id];
      if (existingStructure && (existingStructure.isShared || sequentialMode)) {
        (currentStructures.restoreStructures || (currentStructures.restoreStructures = []))[id] = existingStructure;
      }
      currentStructures[id] = structure;
      structure.read = createStructureReader(structure, firstByte);
      return structure.read();
    };
    currentExtensions[0] = () => {
    };
    currentExtensions[0].noBuffer = true;
    currentExtensions[66] = (data) => {
      let headLength = data.byteLength % 8 || 8;
      let head2 = BigInt(data[0] & 128 ? data[0] - 256 : data[0]);
      for (let i2 = 1; i2 < headLength; i2++) {
        head2 <<= BigInt(8);
        head2 += BigInt(data[i2]);
      }
      if (data.byteLength !== headLength) {
        let view = new DataView(data.buffer, data.byteOffset, data.byteLength);
        let decode2 = (start, end) => {
          let length = end - start;
          if (length <= 40) {
            let out = view.getBigUint64(start);
            for (let i2 = start + 8; i2 < end; i2 += 8) {
              out <<= BigInt(64n);
              out |= view.getBigUint64(i2);
            }
            return out;
          }
          let middle = start + (length >> 4 << 3);
          let left = decode2(start, middle);
          let right = decode2(middle, end);
          return left << BigInt((end - middle) * 8) | right;
        };
        head2 = head2 << BigInt((view.byteLength - headLength) * 8) | decode2(headLength, view.byteLength);
      }
      return head2;
    };
    errors = {
      Error,
      EvalError,
      RangeError,
      ReferenceError,
      SyntaxError,
      TypeError,
      URIError,
      AggregateError: typeof AggregateError === "function" ? AggregateError : null
    };
    currentExtensions[101] = () => {
      let data = read();
      if (!errors[data[0]]) {
        let error = Error(data[1], { cause: data[2] });
        error.name = data[0];
        return error;
      }
      return errors[data[0]](data[1], { cause: data[2] });
    };
    currentExtensions[105] = (data) => {
      if (currentUnpackr.structuredClone === false) throw new Error("Structured clone extension is disabled");
      let id = dataView.getUint32(position - 4);
      if (!referenceMap)
        referenceMap = /* @__PURE__ */ new Map();
      let token = src[position];
      let target2;
      if (token >= 144 && token < 160 || token == 220 || token == 221)
        target2 = [];
      else if (token >= 128 && token < 144 || token == 222 || token == 223)
        target2 = /* @__PURE__ */ new Map();
      else if ((token >= 199 && token <= 201 || token >= 212 && token <= 216) && src[position + 1] === 115)
        target2 = /* @__PURE__ */ new Set();
      else
        target2 = {};
      let refEntry = { target: target2 };
      referenceMap.set(id, refEntry);
      let targetProperties = read();
      if (!refEntry.used) {
        return refEntry.target = targetProperties;
      } else {
        Object.assign(target2, targetProperties);
      }
      if (target2 instanceof Map)
        for (let [k2, v] of targetProperties.entries()) target2.set(k2, v);
      if (target2 instanceof Set)
        for (let i2 of Array.from(targetProperties)) target2.add(i2);
      return target2;
    };
    currentExtensions[112] = (data) => {
      if (currentUnpackr.structuredClone === false) throw new Error("Structured clone extension is disabled");
      let id = dataView.getUint32(position - 4);
      let refEntry = referenceMap.get(id);
      refEntry.used = true;
      return refEntry.target;
    };
    currentExtensions[115] = () => new Set(read());
    typedArrays = ["Int8", "Uint8", "Uint8Clamped", "Int16", "Uint16", "Int32", "Uint32", "Float32", "Float64", "BigInt64", "BigUint64"].map((type4) => type4 + "Array");
    glbl = typeof globalThis === "object" ? globalThis : window;
    currentExtensions[116] = (data) => {
      let typeCode = data[0];
      let buffer3 = Uint8Array.prototype.slice.call(data, 1).buffer;
      let typedArrayName = typedArrays[typeCode];
      if (!typedArrayName) {
        if (typeCode === 16) return buffer3;
        if (typeCode === 17) return new DataView(buffer3);
        throw new Error("Could not find typed array for code " + typeCode);
      }
      return new glbl[typedArrayName](buffer3);
    };
    currentExtensions[120] = () => {
      let data = read();
      return new RegExp(data[0], data[1]);
    };
    TEMP_BUNDLE = [];
    currentExtensions[98] = (data) => {
      let dataSize = (data[0] << 24) + (data[1] << 16) + (data[2] << 8) + data[3];
      let dataPosition = position;
      position += dataSize - data.length;
      bundledStrings = TEMP_BUNDLE;
      bundledStrings = [readOnlyJSString(), readOnlyJSString()];
      bundledStrings.position0 = 0;
      bundledStrings.position1 = 0;
      bundledStrings.postBundlePosition = position;
      position = dataPosition;
      return read();
    };
    currentExtensions[255] = (data) => {
      if (data.length == 4)
        return new Date((data[0] * 16777216 + (data[1] << 16) + (data[2] << 8) + data[3]) * 1e3);
      else if (data.length == 8)
        return new Date(
          ((data[0] << 22) + (data[1] << 14) + (data[2] << 6) + (data[3] >> 2)) / 1e6 + ((data[3] & 3) * 4294967296 + data[4] * 16777216 + (data[5] << 16) + (data[6] << 8) + data[7]) * 1e3
        );
      else if (data.length == 12)
        return new Date(
          ((data[0] << 24) + (data[1] << 16) + (data[2] << 8) + data[3]) / 1e6 + ((data[4] & 128 ? -281474976710656 : 0) + data[6] * 1099511627776 + data[7] * 4294967296 + data[8] * 16777216 + (data[9] << 16) + (data[10] << 8) + data[11]) * 1e3
        );
      else
        return /* @__PURE__ */ new Date("invalid");
    };
    mult10 = new Array(147);
    for (let i2 = 0; i2 < 256; i2++) {
      mult10[i2] = +("1e" + Math.floor(45.15 - i2 * 0.30103));
    }
    defaultUnpackr = new Unpackr({ useRecords: false });
    unpack = defaultUnpackr.unpack;
    unpackMultiple = defaultUnpackr.unpackMultiple;
    decode = defaultUnpackr.unpack;
    FLOAT32_OPTIONS = {
      NEVER: 0,
      ALWAYS: 1,
      DECIMAL_ROUND: 3,
      DECIMAL_FIT: 4
    };
    f32Array = new Float32Array(1);
    u8Array = new Uint8Array(f32Array.buffer, 0, 4);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/msgpackr/1.11.8/8643dc0f73f17361f7ff0e051a29ae504ef0c06b3c6d07c31984f50d7f160d42/node_modules/msgpackr/pack.js
function writeExtBuffer(typedArray, type4, allocateForWrite, encode2) {
  let length = typedArray.byteLength;
  if (length + 1 < 256) {
    var { target: target2, position: position3 } = allocateForWrite(4 + length);
    target2[position3++] = 199;
    target2[position3++] = length + 1;
  } else if (length + 1 < 65536) {
    var { target: target2, position: position3 } = allocateForWrite(5 + length);
    target2[position3++] = 200;
    target2[position3++] = length + 1 >> 8;
    target2[position3++] = length + 1 & 255;
  } else {
    var { target: target2, position: position3, targetView: targetView2 } = allocateForWrite(7 + length);
    target2[position3++] = 201;
    targetView2.setUint32(position3, length + 1);
    position3 += 4;
  }
  target2[position3++] = 116;
  target2[position3++] = type4;
  if (!typedArray.buffer) typedArray = new Uint8Array(typedArray);
  target2.set(new Uint8Array(typedArray.buffer, typedArray.byteOffset, typedArray.byteLength), position3);
}
function writeBuffer(buffer3, allocateForWrite) {
  let length = buffer3.byteLength;
  var target2, position3;
  if (length < 256) {
    var { target: target2, position: position3 } = allocateForWrite(length + 2);
    target2[position3++] = 196;
    target2[position3++] = length;
  } else if (length < 65536) {
    var { target: target2, position: position3 } = allocateForWrite(length + 3);
    target2[position3++] = 197;
    target2[position3++] = length >> 8;
    target2[position3++] = length & 255;
  } else {
    var { target: target2, position: position3, targetView: targetView2 } = allocateForWrite(length + 5);
    target2[position3++] = 198;
    targetView2.setUint32(position3, length);
    position3 += 4;
  }
  target2.set(buffer3, position3);
}
function writeExtensionData(result2, target2, position3, type4) {
  let length = result2.length;
  switch (length) {
    case 1:
      target2[position3++] = 212;
      break;
    case 2:
      target2[position3++] = 213;
      break;
    case 4:
      target2[position3++] = 214;
      break;
    case 8:
      target2[position3++] = 215;
      break;
    case 16:
      target2[position3++] = 216;
      break;
    default:
      if (length < 256) {
        target2[position3++] = 199;
        target2[position3++] = length;
      } else if (length < 65536) {
        target2[position3++] = 200;
        target2[position3++] = length >> 8;
        target2[position3++] = length & 255;
      } else {
        target2[position3++] = 201;
        target2[position3++] = length >> 24;
        target2[position3++] = length >> 16 & 255;
        target2[position3++] = length >> 8 & 255;
        target2[position3++] = length & 255;
      }
  }
  target2[position3++] = type4;
  target2.set(result2, position3);
  position3 += length;
  return position3;
}
function insertIds(serialized, idsToInsert) {
  let nextId;
  let distanceToMove = idsToInsert.length * 6;
  let lastEnd = serialized.length - distanceToMove;
  while (nextId = idsToInsert.pop()) {
    let offset = nextId.offset;
    let id = nextId.id;
    serialized.copyWithin(offset + distanceToMove, offset, lastEnd);
    distanceToMove -= 6;
    let position3 = offset + distanceToMove;
    serialized[position3++] = 214;
    serialized[position3++] = 105;
    serialized[position3++] = id >> 24;
    serialized[position3++] = id >> 16 & 255;
    serialized[position3++] = id >> 8 & 255;
    serialized[position3++] = id & 255;
    lastEnd = offset;
  }
  return serialized;
}
function writeBundles(start, pack2, incrementPosition) {
  if (bundledStrings2.length > 0) {
    targetView.setUint32(bundledStrings2.position + start, position2 + incrementPosition - bundledStrings2.position - start);
    bundledStrings2.stringsPosition = position2 - start;
    let writeStrings = bundledStrings2;
    bundledStrings2 = null;
    pack2(writeStrings[0]);
    pack2(writeStrings[1]);
  }
}
function prepareStructures(structures, packr2) {
  structures.isCompatible = (existingStructures) => {
    let compatible = !existingStructures || (packr2.lastNamedStructuresLength || 0) === existingStructures.length;
    if (!compatible)
      packr2._mergeStructures(existingStructures);
    return compatible;
  };
  return structures;
}
function setWriteStructSlots(writeSlots, makeStructures) {
  writeStructSlots = writeSlots;
  prepareStructures = makeStructures;
}
var textEncoder, extensions, extensionClasses, hasNodeBuffer, ByteArrayAllocate, ByteArray, MAX_BUFFER_SIZE, target, keysTarget, targetView, position2, safeEnd, bundledStrings2, writeStructSlots, MAX_BUNDLE_SIZE, hasNonLatin, RECORD_SYMBOL, Packr, defaultPackr, pack, encode, NEVER, ALWAYS, DECIMAL_ROUND, DECIMAL_FIT, REUSE_BUFFER_MODE, RESET_BUFFER_MODE, RESERVE_START_SPACE;
var init_pack = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/msgpackr/1.11.8/8643dc0f73f17361f7ff0e051a29ae504ef0c06b3c6d07c31984f50d7f160d42/node_modules/msgpackr/pack.js"() {
    init_unpack();
    init_unpack();
    init_unpack();
    try {
      textEncoder = new TextEncoder();
    } catch (error) {
    }
    hasNodeBuffer = typeof Buffer !== "undefined";
    ByteArrayAllocate = hasNodeBuffer ? function(length) {
      return Buffer.allocUnsafeSlow(length);
    } : Uint8Array;
    ByteArray = hasNodeBuffer ? Buffer : Uint8Array;
    MAX_BUFFER_SIZE = hasNodeBuffer ? 4294967296 : 2144337920;
    position2 = 0;
    bundledStrings2 = null;
    MAX_BUNDLE_SIZE = 21760;
    hasNonLatin = /[\u0080-\uFFFF]/;
    RECORD_SYMBOL = /* @__PURE__ */ Symbol("record-id");
    Packr = class extends Unpackr {
      constructor(options) {
        super(options);
        this.offset = 0;
        let typeBuffer;
        let start;
        let hasSharedUpdate;
        let structures;
        let referenceMap2;
        let encodeUtf82 = ByteArray.prototype.utf8Write ? function(string, position3) {
          return target.utf8Write(string, position3, target.byteLength - position3);
        } : textEncoder && textEncoder.encodeInto ? function(string, position3) {
          return textEncoder.encodeInto(string, target.subarray(position3)).written;
        } : false;
        let packr2 = this;
        if (!options)
          options = {};
        let isSequential = options && options.sequential;
        let hasSharedStructures = options.structures || options.saveStructures;
        let maxSharedStructures = options.maxSharedStructures;
        if (maxSharedStructures == null)
          maxSharedStructures = hasSharedStructures ? 32 : 0;
        if (maxSharedStructures > 8160)
          throw new Error("Maximum maxSharedStructure is 8160");
        if (options.structuredClone && options.moreTypes == void 0) {
          this.moreTypes = true;
        }
        let maxOwnStructures = options.maxOwnStructures;
        if (maxOwnStructures == null)
          maxOwnStructures = hasSharedStructures ? 32 : 64;
        if (!this.structures && options.useRecords != false)
          this.structures = [];
        let useTwoByteRecords = maxSharedStructures > 32 || maxOwnStructures + maxSharedStructures > 64;
        let sharedLimitId = maxSharedStructures + 64;
        let maxStructureId = maxSharedStructures + maxOwnStructures + 64;
        if (maxStructureId > 8256) {
          throw new Error("Maximum maxSharedStructure + maxOwnStructure is 8192");
        }
        let recordIdsToRemove = [];
        let transitionsCount = 0;
        let serializationsSinceTransitionRebuild = 0;
        this.pack = this.encode = function(value, encodeOptions) {
          if (!target) {
            target = new ByteArrayAllocate(8192);
            targetView = target.dataView || (target.dataView = new DataView(target.buffer, 0, 8192));
            position2 = 0;
          }
          safeEnd = target.length - 10;
          if (safeEnd - position2 < 2048) {
            target = new ByteArrayAllocate(target.length);
            targetView = target.dataView || (target.dataView = new DataView(target.buffer, 0, target.length));
            safeEnd = target.length - 10;
            position2 = 0;
          } else
            position2 = position2 + 7 & 2147483640;
          start = position2;
          if (encodeOptions & RESERVE_START_SPACE) position2 += encodeOptions & 255;
          referenceMap2 = packr2.structuredClone ? /* @__PURE__ */ new Map() : null;
          if (packr2.bundleStrings && typeof value !== "string") {
            bundledStrings2 = [];
            bundledStrings2.size = Infinity;
          } else
            bundledStrings2 = null;
          structures = packr2.structures;
          if (structures) {
            if (structures.uninitialized)
              structures = packr2._mergeStructures(packr2.getStructures());
            let sharedLength = structures.sharedLength || 0;
            if (sharedLength > maxSharedStructures) {
              throw new Error("Shared structures is larger than maximum shared structures, try increasing maxSharedStructures to " + structures.sharedLength);
            }
            if (!structures.transitions) {
              structures.transitions = /* @__PURE__ */ Object.create(null);
              for (let i2 = 0; i2 < sharedLength; i2++) {
                let keys4 = structures[i2];
                if (!keys4)
                  continue;
                let nextTransition, transition = structures.transitions;
                for (let j2 = 0, l = keys4.length; j2 < l; j2++) {
                  let key = keys4[j2];
                  nextTransition = transition[key];
                  if (!nextTransition) {
                    nextTransition = transition[key] = /* @__PURE__ */ Object.create(null);
                  }
                  transition = nextTransition;
                }
                transition[RECORD_SYMBOL] = i2 + 64;
              }
              this.lastNamedStructuresLength = sharedLength;
            }
            if (!isSequential) {
              structures.nextId = sharedLength + 64;
            }
          }
          if (hasSharedUpdate)
            hasSharedUpdate = false;
          let encodingError;
          try {
            if (packr2.randomAccessStructure && value && typeof value === "object") {
              if (value.constructor === Object) writeStruct2(value);
              else if (value.constructor !== Map && !Array.isArray(value) && !extensionClasses.some((extClass) => value instanceof extClass)) {
                writeStruct2(value.toJSON ? value.toJSON() : value);
              } else pack2(value);
            } else
              pack2(value);
            let lastBundle = bundledStrings2;
            if (bundledStrings2)
              writeBundles(start, pack2, 0);
            if (referenceMap2 && referenceMap2.idsToInsert) {
              let idsToInsert = referenceMap2.idsToInsert.sort((a2, b) => a2.offset > b.offset ? 1 : -1);
              let i2 = idsToInsert.length;
              let incrementPosition = -1;
              while (lastBundle && i2 > 0) {
                let insertionPoint = idsToInsert[--i2].offset + start;
                if (insertionPoint < lastBundle.stringsPosition + start && incrementPosition === -1)
                  incrementPosition = 0;
                if (insertionPoint > lastBundle.position + start) {
                  if (incrementPosition >= 0)
                    incrementPosition += 6;
                } else {
                  if (incrementPosition >= 0) {
                    targetView.setUint32(
                      lastBundle.position + start,
                      targetView.getUint32(lastBundle.position + start) + incrementPosition
                    );
                    incrementPosition = -1;
                  }
                  lastBundle = lastBundle.previous;
                  i2++;
                }
              }
              if (incrementPosition >= 0 && lastBundle) {
                targetView.setUint32(
                  lastBundle.position + start,
                  targetView.getUint32(lastBundle.position + start) + incrementPosition
                );
              }
              position2 += idsToInsert.length * 6;
              if (position2 > safeEnd)
                makeRoom(position2);
              packr2.offset = position2;
              let serialized = insertIds(target.subarray(start, position2), idsToInsert);
              referenceMap2 = null;
              return serialized;
            }
            packr2.offset = position2;
            if (encodeOptions & REUSE_BUFFER_MODE) {
              target.start = start;
              target.end = position2;
              return target;
            }
            return target.subarray(start, position2);
          } catch (error) {
            encodingError = error;
            throw error;
          } finally {
            if (structures) {
              resetStructures();
              if (hasSharedUpdate && packr2.saveStructures) {
                let sharedLength = structures.sharedLength || 0;
                let returnBuffer = target.subarray(start, position2);
                let newSharedData = prepareStructures(structures, packr2);
                if (!encodingError) {
                  if (packr2.saveStructures(newSharedData, newSharedData.isCompatible) === false) {
                    return packr2.pack(value, encodeOptions);
                  }
                  packr2.lastNamedStructuresLength = sharedLength;
                  if (target.length > 1073741824) target = null;
                  return returnBuffer;
                }
              }
            }
            if (target.length > 1073741824) target = null;
            if (encodeOptions & RESET_BUFFER_MODE)
              position2 = start;
          }
        };
        const resetStructures = () => {
          if (serializationsSinceTransitionRebuild < 10)
            serializationsSinceTransitionRebuild++;
          let sharedLength = structures.sharedLength || 0;
          if (structures.length > sharedLength && !isSequential)
            structures.length = sharedLength;
          if (transitionsCount > 1e4) {
            structures.transitions = null;
            serializationsSinceTransitionRebuild = 0;
            transitionsCount = 0;
            if (recordIdsToRemove.length > 0)
              recordIdsToRemove = [];
          } else if (recordIdsToRemove.length > 0 && !isSequential) {
            for (let i2 = 0, l = recordIdsToRemove.length; i2 < l; i2++) {
              recordIdsToRemove[i2][RECORD_SYMBOL] = 0;
            }
            recordIdsToRemove = [];
          }
        };
        const packArray = (value) => {
          var length = value.length;
          if (length < 16) {
            target[position2++] = 144 | length;
          } else if (length < 65536) {
            target[position2++] = 220;
            target[position2++] = length >> 8;
            target[position2++] = length & 255;
          } else {
            target[position2++] = 221;
            targetView.setUint32(position2, length);
            position2 += 4;
          }
          for (let i2 = 0; i2 < length; i2++) {
            pack2(value[i2]);
          }
        };
        const pack2 = (value) => {
          if (position2 > safeEnd)
            target = makeRoom(position2);
          var type4 = typeof value;
          var length;
          if (type4 === "string") {
            let strLength = value.length;
            if (bundledStrings2 && strLength >= 4 && strLength < 4096) {
              if ((bundledStrings2.size += strLength) > MAX_BUNDLE_SIZE) {
                let extStart;
                let maxBytes2 = (bundledStrings2[0] ? bundledStrings2[0].length * 3 + bundledStrings2[1].length : 0) + 10;
                if (position2 + maxBytes2 > safeEnd)
                  target = makeRoom(position2 + maxBytes2);
                let lastBundle;
                if (bundledStrings2.position) {
                  lastBundle = bundledStrings2;
                  target[position2] = 200;
                  position2 += 3;
                  target[position2++] = 98;
                  extStart = position2 - start;
                  position2 += 4;
                  writeBundles(start, pack2, 0);
                  targetView.setUint16(extStart + start - 3, position2 - start - extStart);
                } else {
                  target[position2++] = 214;
                  target[position2++] = 98;
                  extStart = position2 - start;
                  position2 += 4;
                }
                bundledStrings2 = ["", ""];
                bundledStrings2.previous = lastBundle;
                bundledStrings2.size = 0;
                bundledStrings2.position = extStart;
              }
              let twoByte = hasNonLatin.test(value);
              bundledStrings2[twoByte ? 0 : 1] += value;
              target[position2++] = 193;
              pack2(twoByte ? -strLength : strLength);
              return;
            }
            let headerSize;
            if (strLength < 32) {
              headerSize = 1;
            } else if (strLength < 256) {
              headerSize = 2;
            } else if (strLength < 65536) {
              headerSize = 3;
            } else {
              headerSize = 5;
            }
            let maxBytes = strLength * 3;
            if (position2 + maxBytes > safeEnd)
              target = makeRoom(position2 + maxBytes);
            if (strLength < 64 || !encodeUtf82) {
              let i2, c1, c22, strPosition = position2 + headerSize;
              for (i2 = 0; i2 < strLength; i2++) {
                c1 = value.charCodeAt(i2);
                if (c1 < 128) {
                  target[strPosition++] = c1;
                } else if (c1 < 2048) {
                  target[strPosition++] = c1 >> 6 | 192;
                  target[strPosition++] = c1 & 63 | 128;
                } else if ((c1 & 64512) === 55296 && ((c22 = value.charCodeAt(i2 + 1)) & 64512) === 56320) {
                  c1 = 65536 + ((c1 & 1023) << 10) + (c22 & 1023);
                  i2++;
                  target[strPosition++] = c1 >> 18 | 240;
                  target[strPosition++] = c1 >> 12 & 63 | 128;
                  target[strPosition++] = c1 >> 6 & 63 | 128;
                  target[strPosition++] = c1 & 63 | 128;
                } else {
                  target[strPosition++] = c1 >> 12 | 224;
                  target[strPosition++] = c1 >> 6 & 63 | 128;
                  target[strPosition++] = c1 & 63 | 128;
                }
              }
              length = strPosition - position2 - headerSize;
            } else {
              length = encodeUtf82(value, position2 + headerSize);
            }
            if (length < 32) {
              target[position2++] = 160 | length;
            } else if (length < 256) {
              if (headerSize < 2) {
                target.copyWithin(position2 + 2, position2 + 1, position2 + 1 + length);
              }
              target[position2++] = 217;
              target[position2++] = length;
            } else if (length < 65536) {
              if (headerSize < 3) {
                target.copyWithin(position2 + 3, position2 + 2, position2 + 2 + length);
              }
              target[position2++] = 218;
              target[position2++] = length >> 8;
              target[position2++] = length & 255;
            } else {
              if (headerSize < 5) {
                target.copyWithin(position2 + 5, position2 + 3, position2 + 3 + length);
              }
              target[position2++] = 219;
              targetView.setUint32(position2, length);
              position2 += 4;
            }
            position2 += length;
          } else if (type4 === "number") {
            if (value >>> 0 === value) {
              if (value < 32 || value < 128 && this.useRecords === false || value < 64 && !this.randomAccessStructure) {
                target[position2++] = value;
              } else if (value < 256) {
                target[position2++] = 204;
                target[position2++] = value;
              } else if (value < 65536) {
                target[position2++] = 205;
                target[position2++] = value >> 8;
                target[position2++] = value & 255;
              } else {
                target[position2++] = 206;
                targetView.setUint32(position2, value);
                position2 += 4;
              }
            } else if (value >> 0 === value) {
              if (value >= -32) {
                target[position2++] = 256 + value;
              } else if (value >= -128) {
                target[position2++] = 208;
                target[position2++] = value + 256;
              } else if (value >= -32768) {
                target[position2++] = 209;
                targetView.setInt16(position2, value);
                position2 += 2;
              } else {
                target[position2++] = 210;
                targetView.setInt32(position2, value);
                position2 += 4;
              }
            } else {
              let useFloat32;
              if ((useFloat32 = this.useFloat32) > 0 && value < 4294967296 && value >= -2147483648) {
                target[position2++] = 202;
                targetView.setFloat32(position2, value);
                let xShifted;
                if (useFloat32 < 4 || // this checks for rounding of numbers that were encoded in 32-bit float to nearest significant decimal digit that could be preserved
                (xShifted = value * mult10[(target[position2] & 127) << 1 | target[position2 + 1] >> 7]) >> 0 === xShifted) {
                  position2 += 4;
                  return;
                } else
                  position2--;
              }
              target[position2++] = 203;
              targetView.setFloat64(position2, value);
              position2 += 8;
            }
          } else if (type4 === "object" || type4 === "function") {
            if (!value)
              target[position2++] = 192;
            else {
              if (referenceMap2) {
                let referee = referenceMap2.get(value);
                if (referee) {
                  if (!referee.id) {
                    let idsToInsert = referenceMap2.idsToInsert || (referenceMap2.idsToInsert = []);
                    referee.id = idsToInsert.push(referee);
                  }
                  target[position2++] = 214;
                  target[position2++] = 112;
                  targetView.setUint32(position2, referee.id);
                  position2 += 4;
                  return;
                } else
                  referenceMap2.set(value, { offset: position2 - start });
              }
              let constructor = value.constructor;
              if (constructor === Object) {
                writeObject(value);
              } else if (constructor === Array) {
                packArray(value);
              } else if (constructor === Map) {
                if (this.mapAsEmptyObject) target[position2++] = 128;
                else {
                  length = value.size;
                  if (length < 16) {
                    target[position2++] = 128 | length;
                  } else if (length < 65536) {
                    target[position2++] = 222;
                    target[position2++] = length >> 8;
                    target[position2++] = length & 255;
                  } else {
                    target[position2++] = 223;
                    targetView.setUint32(position2, length);
                    position2 += 4;
                  }
                  for (let [key, entryValue] of value) {
                    pack2(key);
                    pack2(entryValue);
                  }
                }
              } else {
                for (let i2 = 0, l = extensions.length; i2 < l; i2++) {
                  let extensionClass = extensionClasses[i2];
                  if (value instanceof extensionClass) {
                    let extension = extensions[i2];
                    if (extension.write) {
                      if (extension.type) {
                        target[position2++] = 212;
                        target[position2++] = extension.type;
                        target[position2++] = 0;
                      }
                      let writeResult = extension.write.call(this, value);
                      if (writeResult === value) {
                        if (Array.isArray(value)) {
                          packArray(value);
                        } else {
                          writeObject(value);
                        }
                      } else {
                        pack2(writeResult);
                      }
                      return;
                    }
                    let currentTarget = target;
                    let currentTargetView = targetView;
                    let currentPosition = position2;
                    target = null;
                    let result2;
                    try {
                      result2 = extension.pack.call(this, value, (size) => {
                        target = currentTarget;
                        currentTarget = null;
                        position2 += size;
                        if (position2 > safeEnd)
                          makeRoom(position2);
                        return {
                          target,
                          targetView,
                          position: position2 - size
                        };
                      }, pack2);
                    } finally {
                      if (currentTarget) {
                        target = currentTarget;
                        targetView = currentTargetView;
                        position2 = currentPosition;
                        safeEnd = target.length - 10;
                      }
                    }
                    if (result2) {
                      if (result2.length + position2 > safeEnd)
                        makeRoom(result2.length + position2);
                      position2 = writeExtensionData(result2, target, position2, extension.type);
                    }
                    return;
                  }
                }
                if (Array.isArray(value)) {
                  packArray(value);
                } else {
                  if (value.toJSON) {
                    const json2 = value.toJSON();
                    if (json2 !== value)
                      return pack2(json2);
                  }
                  if (type4 === "function")
                    return pack2(this.writeFunction && this.writeFunction(value));
                  writeObject(value);
                }
              }
            }
          } else if (type4 === "boolean") {
            target[position2++] = value ? 195 : 194;
          } else if (type4 === "bigint") {
            if (value < 9223372036854776e3 && value >= -9223372036854776e3) {
              target[position2++] = 211;
              targetView.setBigInt64(position2, value);
            } else if (value < 18446744073709552e3 && value > 0) {
              target[position2++] = 207;
              targetView.setBigUint64(position2, value);
            } else {
              if (this.largeBigIntToFloat) {
                target[position2++] = 203;
                targetView.setFloat64(position2, Number(value));
              } else if (this.largeBigIntToString) {
                return pack2(value.toString());
              } else if (this.useBigIntExtension || this.moreTypes) {
                let empty4 = value < 0 ? BigInt(-1) : BigInt(0);
                let array;
                if (value >> BigInt(65536) === empty4) {
                  let mask = BigInt(18446744073709552e3) - BigInt(1);
                  let chunks = [];
                  while (true) {
                    chunks.push(value & mask);
                    if (value >> BigInt(63) === empty4) break;
                    value >>= BigInt(64);
                  }
                  array = new Uint8Array(new BigUint64Array(chunks).buffer);
                  array.reverse();
                } else {
                  let invert = value < 0;
                  let string = (invert ? ~value : value).toString(16);
                  if (string.length % 2) {
                    string = "0" + string;
                  } else if (parseInt(string.charAt(0), 16) >= 8) {
                    string = "00" + string;
                  }
                  if (hasNodeBuffer) {
                    array = Buffer.from(string, "hex");
                  } else {
                    array = new Uint8Array(string.length / 2);
                    for (let i2 = 0; i2 < array.length; i2++) {
                      array[i2] = parseInt(string.slice(i2 * 2, i2 * 2 + 2), 16);
                    }
                  }
                  if (invert) {
                    for (let i2 = 0; i2 < array.length; i2++) array[i2] = ~array[i2];
                  }
                }
                if (array.length + position2 > safeEnd)
                  makeRoom(array.length + position2);
                position2 = writeExtensionData(array, target, position2, 66);
                return;
              } else {
                throw new RangeError(value + " was too large to fit in MessagePack 64-bit integer format, use useBigIntExtension, or set largeBigIntToFloat to convert to float-64, or set largeBigIntToString to convert to string");
              }
            }
            position2 += 8;
          } else if (type4 === "undefined") {
            if (this.encodeUndefinedAsNil)
              target[position2++] = 192;
            else {
              target[position2++] = 212;
              target[position2++] = 0;
              target[position2++] = 0;
            }
          } else {
            throw new Error("Unknown type: " + type4);
          }
        };
        const writePlainObject = this.variableMapSize || this.coercibleKeyAsNumber || this.skipValues ? (object) => {
          let keys4;
          if (this.skipValues) {
            keys4 = [];
            for (let key2 in object) {
              if ((typeof object.hasOwnProperty !== "function" || object.hasOwnProperty(key2)) && !this.skipValues.includes(object[key2]))
                keys4.push(key2);
            }
          } else {
            keys4 = Object.keys(object);
          }
          let length = keys4.length;
          if (length < 16) {
            target[position2++] = 128 | length;
          } else if (length < 65536) {
            target[position2++] = 222;
            target[position2++] = length >> 8;
            target[position2++] = length & 255;
          } else {
            target[position2++] = 223;
            targetView.setUint32(position2, length);
            position2 += 4;
          }
          let key;
          if (this.coercibleKeyAsNumber) {
            for (let i2 = 0; i2 < length; i2++) {
              key = keys4[i2];
              let num = Number(key);
              pack2(isNaN(num) ? key : num);
              pack2(object[key]);
            }
          } else {
            for (let i2 = 0; i2 < length; i2++) {
              pack2(key = keys4[i2]);
              pack2(object[key]);
            }
          }
        } : (object) => {
          target[position2++] = 222;
          let objectOffset = position2 - start;
          position2 += 2;
          let size = 0;
          for (let key in object) {
            if (typeof object.hasOwnProperty !== "function" || object.hasOwnProperty(key)) {
              pack2(key);
              pack2(object[key]);
              size++;
            }
          }
          if (size > 65535) {
            throw new Error('Object is too large to serialize with fast 16-bit map size, use the "variableMapSize" option to serialize this object');
          }
          target[objectOffset++ + start] = size >> 8;
          target[objectOffset + start] = size & 255;
        };
        const writeRecord = this.useRecords === false ? writePlainObject : options.progressiveRecords && !useTwoByteRecords ? (
          // this is about 2% faster for highly stable structures, since it only requires one for-in loop (but much more expensive when new structure needs to be written)
          (object) => {
            let nextTransition, transition = structures.transitions || (structures.transitions = /* @__PURE__ */ Object.create(null));
            let objectOffset = position2++ - start;
            let wroteKeys;
            for (let key in object) {
              if (typeof object.hasOwnProperty !== "function" || object.hasOwnProperty(key)) {
                nextTransition = transition[key];
                if (nextTransition)
                  transition = nextTransition;
                else {
                  let keys4 = Object.keys(object);
                  let lastTransition = transition;
                  transition = structures.transitions;
                  let newTransitions = 0;
                  for (let i2 = 0, l = keys4.length; i2 < l; i2++) {
                    let key2 = keys4[i2];
                    nextTransition = transition[key2];
                    if (!nextTransition) {
                      nextTransition = transition[key2] = /* @__PURE__ */ Object.create(null);
                      newTransitions++;
                    }
                    transition = nextTransition;
                  }
                  if (objectOffset + start + 1 == position2) {
                    position2--;
                    newRecord(transition, keys4, newTransitions);
                  } else
                    insertNewRecord(transition, keys4, objectOffset, newTransitions);
                  wroteKeys = true;
                  transition = lastTransition[key];
                }
                pack2(object[key]);
              }
            }
            if (!wroteKeys) {
              let recordId = transition[RECORD_SYMBOL];
              if (recordId)
                target[objectOffset + start] = recordId;
              else
                insertNewRecord(transition, Object.keys(object), objectOffset, 0);
            }
          }
        ) : (object) => {
          let nextTransition, transition = structures.transitions || (structures.transitions = /* @__PURE__ */ Object.create(null));
          let newTransitions = 0;
          for (let key in object) if (typeof object.hasOwnProperty !== "function" || object.hasOwnProperty(key)) {
            nextTransition = transition[key];
            if (!nextTransition) {
              nextTransition = transition[key] = /* @__PURE__ */ Object.create(null);
              newTransitions++;
            }
            transition = nextTransition;
          }
          let recordId = transition[RECORD_SYMBOL];
          if (recordId) {
            if (recordId >= 96 && useTwoByteRecords) {
              target[position2++] = ((recordId -= 96) & 31) + 96;
              target[position2++] = recordId >> 5;
            } else
              target[position2++] = recordId;
          } else {
            newRecord(transition, transition.__keys__ || Object.keys(object), newTransitions);
          }
          for (let key in object)
            if (typeof object.hasOwnProperty !== "function" || object.hasOwnProperty(key)) {
              pack2(object[key]);
            }
        };
        const checkUseRecords = typeof this.useRecords == "function" && this.useRecords;
        const writeObject = checkUseRecords ? (object) => {
          checkUseRecords(object) ? writeRecord(object) : writePlainObject(object);
        } : writeRecord;
        const makeRoom = (end) => {
          let newSize;
          if (end > 16777216) {
            if (end - start > MAX_BUFFER_SIZE)
              throw new Error("Packed buffer would be larger than maximum buffer size");
            newSize = Math.min(
              MAX_BUFFER_SIZE,
              Math.round(Math.max((end - start) * (end > 67108864 ? 1.25 : 2), 4194304) / 4096) * 4096
            );
          } else
            newSize = (Math.max(end - start << 2, target.length - 1) >> 12) + 1 << 12;
          let newBuffer = new ByteArrayAllocate(newSize);
          targetView = newBuffer.dataView || (newBuffer.dataView = new DataView(newBuffer.buffer, 0, newSize));
          end = Math.min(end, target.length);
          if (target.copy)
            target.copy(newBuffer, 0, start, end);
          else
            newBuffer.set(target.slice(start, end));
          position2 -= start;
          start = 0;
          safeEnd = newBuffer.length - 10;
          return target = newBuffer;
        };
        const newRecord = (transition, keys4, newTransitions) => {
          let recordId = structures.nextId;
          if (!recordId)
            recordId = 64;
          if (recordId < sharedLimitId && this.shouldShareStructure && !this.shouldShareStructure(keys4)) {
            recordId = structures.nextOwnId;
            if (!(recordId < maxStructureId))
              recordId = sharedLimitId;
            structures.nextOwnId = recordId + 1;
          } else {
            if (recordId >= maxStructureId)
              recordId = sharedLimitId;
            structures.nextId = recordId + 1;
          }
          let highByte = keys4.highByte = recordId >= 96 && useTwoByteRecords ? recordId - 96 >> 5 : -1;
          transition[RECORD_SYMBOL] = recordId;
          transition.__keys__ = keys4;
          structures[recordId - 64] = keys4;
          if (recordId < sharedLimitId) {
            keys4.isShared = true;
            structures.sharedLength = recordId - 63;
            hasSharedUpdate = true;
            if (highByte >= 0) {
              target[position2++] = (recordId & 31) + 96;
              target[position2++] = highByte;
            } else {
              target[position2++] = recordId;
            }
          } else {
            if (highByte >= 0) {
              target[position2++] = 213;
              target[position2++] = 114;
              target[position2++] = (recordId & 31) + 96;
              target[position2++] = highByte;
            } else {
              target[position2++] = 212;
              target[position2++] = 114;
              target[position2++] = recordId;
            }
            if (newTransitions)
              transitionsCount += serializationsSinceTransitionRebuild * newTransitions;
            if (recordIdsToRemove.length >= maxOwnStructures)
              recordIdsToRemove.shift()[RECORD_SYMBOL] = 0;
            recordIdsToRemove.push(transition);
            pack2(keys4);
          }
        };
        const insertNewRecord = (transition, keys4, insertionOffset, newTransitions) => {
          let mainTarget = target;
          let mainPosition = position2;
          let mainSafeEnd = safeEnd;
          let mainStart = start;
          target = keysTarget;
          position2 = 0;
          start = 0;
          if (!target)
            keysTarget = target = new ByteArrayAllocate(8192);
          safeEnd = target.length - 10;
          newRecord(transition, keys4, newTransitions);
          keysTarget = target;
          let keysPosition = position2;
          target = mainTarget;
          position2 = mainPosition;
          safeEnd = mainSafeEnd;
          start = mainStart;
          if (keysPosition > 1) {
            let newEnd = position2 + keysPosition - 1;
            if (newEnd > safeEnd)
              makeRoom(newEnd);
            let insertionPosition = insertionOffset + start;
            target.copyWithin(insertionPosition + keysPosition, insertionPosition + 1, position2);
            target.set(keysTarget.slice(0, keysPosition), insertionPosition);
            position2 = newEnd;
          } else {
            target[insertionOffset + start] = keysTarget[0];
          }
        };
        const writeStruct2 = (object) => {
          let newPosition = writeStructSlots(object, target, start, position2, structures, makeRoom, (value, newPosition2, notifySharedUpdate) => {
            if (notifySharedUpdate)
              return hasSharedUpdate = true;
            position2 = newPosition2;
            let startTarget = target;
            pack2(value);
            resetStructures();
            if (startTarget !== target) {
              return { position: position2, targetView, target };
            }
            return position2;
          }, this);
          if (newPosition === 0)
            return writeObject(object);
          position2 = newPosition;
        };
      }
      useBuffer(buffer3) {
        target = buffer3;
        target.dataView || (target.dataView = new DataView(target.buffer, target.byteOffset, target.byteLength));
        targetView = target.dataView;
        position2 = 0;
      }
      set position(value) {
        position2 = value;
      }
      get position() {
        return position2;
      }
      clearSharedData() {
        if (this.structures)
          this.structures = [];
        if (this.typedStructs)
          this.typedStructs = [];
      }
    };
    extensionClasses = [Date, Set, Error, RegExp, ArrayBuffer, Object.getPrototypeOf(Uint8Array.prototype).constructor, DataView, C1Type];
    extensions = [{
      pack(date, allocateForWrite, pack2) {
        let seconds = date.getTime() / 1e3;
        if ((this.useTimestamp32 || date.getMilliseconds() === 0) && seconds >= 0 && seconds < 4294967296) {
          let { target: target2, targetView: targetView2, position: position3 } = allocateForWrite(6);
          target2[position3++] = 214;
          target2[position3++] = 255;
          targetView2.setUint32(position3, seconds);
        } else if (seconds > 0 && seconds < 4294967296) {
          let { target: target2, targetView: targetView2, position: position3 } = allocateForWrite(10);
          target2[position3++] = 215;
          target2[position3++] = 255;
          targetView2.setUint32(position3, date.getMilliseconds() * 4e6 + (seconds / 1e3 / 4294967296 >> 0));
          targetView2.setUint32(position3 + 4, seconds);
        } else if (isNaN(seconds)) {
          if (this.onInvalidDate) {
            allocateForWrite(0);
            return pack2(this.onInvalidDate());
          }
          let { target: target2, targetView: targetView2, position: position3 } = allocateForWrite(3);
          target2[position3++] = 212;
          target2[position3++] = 255;
          target2[position3++] = 255;
        } else {
          let { target: target2, targetView: targetView2, position: position3 } = allocateForWrite(15);
          target2[position3++] = 199;
          target2[position3++] = 12;
          target2[position3++] = 255;
          targetView2.setUint32(position3, date.getMilliseconds() * 1e6);
          targetView2.setBigInt64(position3 + 4, BigInt(Math.floor(seconds)));
        }
      }
    }, {
      pack(set2, allocateForWrite, pack2) {
        if (this.setAsEmptyObject) {
          allocateForWrite(0);
          return pack2({});
        }
        let array = Array.from(set2);
        let { target: target2, position: position3 } = allocateForWrite(this.moreTypes ? 3 : 0);
        if (this.moreTypes) {
          target2[position3++] = 212;
          target2[position3++] = 115;
          target2[position3++] = 0;
        }
        pack2(array);
      }
    }, {
      pack(error, allocateForWrite, pack2) {
        let { target: target2, position: position3 } = allocateForWrite(this.moreTypes ? 3 : 0);
        if (this.moreTypes) {
          target2[position3++] = 212;
          target2[position3++] = 101;
          target2[position3++] = 0;
        }
        pack2([error.name, error.message, error.cause]);
      }
    }, {
      pack(regex2, allocateForWrite, pack2) {
        let { target: target2, position: position3 } = allocateForWrite(this.moreTypes ? 3 : 0);
        if (this.moreTypes) {
          target2[position3++] = 212;
          target2[position3++] = 120;
          target2[position3++] = 0;
        }
        pack2([regex2.source, regex2.flags]);
      }
    }, {
      pack(arrayBuffer, allocateForWrite) {
        if (this.moreTypes)
          writeExtBuffer(arrayBuffer, 16, allocateForWrite);
        else
          writeBuffer(hasNodeBuffer ? Buffer.from(arrayBuffer) : new Uint8Array(arrayBuffer), allocateForWrite);
      }
    }, {
      pack(typedArray, allocateForWrite) {
        let constructor = typedArray.constructor;
        if (constructor !== ByteArray && this.moreTypes)
          writeExtBuffer(typedArray, typedArrays.indexOf(constructor.name), allocateForWrite);
        else
          writeBuffer(typedArray, allocateForWrite);
      }
    }, {
      pack(arrayBuffer, allocateForWrite) {
        if (this.moreTypes)
          writeExtBuffer(arrayBuffer, 17, allocateForWrite);
        else
          writeBuffer(hasNodeBuffer ? Buffer.from(arrayBuffer) : new Uint8Array(arrayBuffer), allocateForWrite);
      }
    }, {
      pack(c1, allocateForWrite) {
        let { target: target2, position: position3 } = allocateForWrite(1);
        target2[position3] = 193;
      }
    }];
    defaultPackr = new Packr({ useRecords: false });
    pack = defaultPackr.pack;
    encode = defaultPackr.pack;
    ({ NEVER, ALWAYS, DECIMAL_ROUND, DECIMAL_FIT } = FLOAT32_OPTIONS);
    REUSE_BUFFER_MODE = 512;
    RESET_BUFFER_MODE = 1024;
    RESERVE_START_SPACE = 2048;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/msgpackr/1.11.8/8643dc0f73f17361f7ff0e051a29ae504ef0c06b3c6d07c31984f50d7f160d42/node_modules/msgpackr/struct.js
function writeStruct(object, target2, encodingStart, position3, structures, makeRoom, pack2, packr2) {
  let typedStructs = packr2.typedStructs || (packr2.typedStructs = []);
  let targetView2 = target2.dataView;
  let refsStartPosition = (typedStructs.lastStringStart || 100) + position3;
  let safeEnd2 = target2.length - 10;
  let start = position3;
  if (position3 > safeEnd2) {
    target2 = makeRoom(position3);
    targetView2 = target2.dataView;
    position3 -= encodingStart;
    start -= encodingStart;
    refsStartPosition -= encodingStart;
    encodingStart = 0;
    safeEnd2 = target2.length - 10;
  }
  let refOffset, refPosition = refsStartPosition;
  let transition = typedStructs.transitions || (typedStructs.transitions = /* @__PURE__ */ Object.create(null));
  let nextId = typedStructs.nextId || typedStructs.length;
  let headerSize = nextId < 15 ? 1 : nextId < 240 ? 2 : nextId < 61440 ? 3 : nextId < 15728640 ? 4 : 0;
  if (headerSize === 0)
    return 0;
  position3 += headerSize;
  let queuedReferences = [];
  let usedAscii0;
  let keyIndex = 0;
  for (let key in object) {
    let value = object[key];
    let nextTransition = transition[key];
    if (!nextTransition) {
      transition[key] = nextTransition = {
        key,
        parent: transition,
        enumerationOffset: 0,
        ascii0: null,
        ascii8: null,
        num8: null,
        string16: null,
        object16: null,
        num32: null,
        float64: null,
        date64: null
      };
    }
    if (position3 > safeEnd2) {
      target2 = makeRoom(position3);
      targetView2 = target2.dataView;
      position3 -= encodingStart;
      start -= encodingStart;
      refsStartPosition -= encodingStart;
      refPosition -= encodingStart;
      encodingStart = 0;
      safeEnd2 = target2.length - 10;
    }
    switch (typeof value) {
      case "number":
        let number = value;
        if (nextId < 200 || !nextTransition.num64) {
          if (number >> 0 === number && number < 536870912 && number > -520093696) {
            if (number < 246 && number >= 0 && (nextTransition.num8 && !(nextId > 200 && nextTransition.num32) || number < 32 && !nextTransition.num32)) {
              transition = nextTransition.num8 || createTypeTransition(nextTransition, NUMBER, 1);
              target2[position3++] = number;
            } else {
              transition = nextTransition.num32 || createTypeTransition(nextTransition, NUMBER, 4);
              targetView2.setUint32(position3, number, true);
              position3 += 4;
            }
            break;
          } else if (number < 4294967296 && number >= -2147483648) {
            targetView2.setFloat32(position3, number, true);
            if (float32Headers[target2[position3 + 3] >>> 5]) {
              let xShifted;
              if ((xShifted = number * mult10[(target2[position3 + 3] & 127) << 1 | target2[position3 + 2] >> 7]) >> 0 === xShifted) {
                transition = nextTransition.num32 || createTypeTransition(nextTransition, NUMBER, 4);
                position3 += 4;
                break;
              }
            }
          }
        }
        transition = nextTransition.num64 || createTypeTransition(nextTransition, NUMBER, 8);
        targetView2.setFloat64(position3, number, true);
        position3 += 8;
        break;
      case "string":
        let strLength = value.length;
        refOffset = refPosition - refsStartPosition;
        if ((strLength << 2) + refPosition > safeEnd2) {
          target2 = makeRoom((strLength << 2) + refPosition);
          targetView2 = target2.dataView;
          position3 -= encodingStart;
          start -= encodingStart;
          refsStartPosition -= encodingStart;
          refPosition -= encodingStart;
          encodingStart = 0;
          safeEnd2 = target2.length - 10;
        }
        if (strLength > 65280 + refOffset >> 2) {
          queuedReferences.push(key, value, position3 - start);
          break;
        }
        let isNotAscii;
        let strStart = refPosition;
        if (strLength < 64) {
          let i2, c1, c22;
          for (i2 = 0; i2 < strLength; i2++) {
            c1 = value.charCodeAt(i2);
            if (c1 < 128) {
              target2[refPosition++] = c1;
            } else if (c1 < 2048) {
              isNotAscii = true;
              target2[refPosition++] = c1 >> 6 | 192;
              target2[refPosition++] = c1 & 63 | 128;
            } else if ((c1 & 64512) === 55296 && ((c22 = value.charCodeAt(i2 + 1)) & 64512) === 56320) {
              isNotAscii = true;
              c1 = 65536 + ((c1 & 1023) << 10) + (c22 & 1023);
              i2++;
              target2[refPosition++] = c1 >> 18 | 240;
              target2[refPosition++] = c1 >> 12 & 63 | 128;
              target2[refPosition++] = c1 >> 6 & 63 | 128;
              target2[refPosition++] = c1 & 63 | 128;
            } else {
              isNotAscii = true;
              target2[refPosition++] = c1 >> 12 | 224;
              target2[refPosition++] = c1 >> 6 & 63 | 128;
              target2[refPosition++] = c1 & 63 | 128;
            }
          }
        } else {
          refPosition += encodeUtf8(target2, value, refPosition);
          isNotAscii = refPosition - strStart > strLength;
        }
        if (refOffset < 160 || refOffset < 246 && (nextTransition.ascii8 || nextTransition.string8)) {
          if (isNotAscii) {
            if (!(transition = nextTransition.string8)) {
              if (typedStructs.length > 10 && (transition = nextTransition.ascii8)) {
                transition.__type = UTF8;
                nextTransition.ascii8 = null;
                nextTransition.string8 = transition;
                pack2(null, 0, true);
              } else {
                transition = createTypeTransition(nextTransition, UTF8, 1);
              }
            }
          } else if (refOffset === 0 && !usedAscii0) {
            usedAscii0 = true;
            transition = nextTransition.ascii0 || createTypeTransition(nextTransition, ASCII, 0);
            break;
          } else if (!(transition = nextTransition.ascii8) && !(typedStructs.length > 10 && (transition = nextTransition.string8)))
            transition = createTypeTransition(nextTransition, ASCII, 1);
          target2[position3++] = refOffset;
        } else {
          transition = nextTransition.string16 || createTypeTransition(nextTransition, UTF8, 2);
          targetView2.setUint16(position3, refOffset, true);
          position3 += 2;
        }
        break;
      case "object":
        if (value) {
          if (value.constructor === Date) {
            transition = nextTransition.date64 || createTypeTransition(nextTransition, DATE, 8);
            targetView2.setFloat64(position3, value.getTime(), true);
            position3 += 8;
          } else {
            queuedReferences.push(key, value, keyIndex);
          }
          break;
        } else {
          nextTransition = anyType(nextTransition, position3, targetView2, -10);
          if (nextTransition) {
            transition = nextTransition;
            position3 = updatedPosition;
          } else queuedReferences.push(key, value, keyIndex);
        }
        break;
      case "boolean":
        transition = nextTransition.num8 || nextTransition.ascii8 || createTypeTransition(nextTransition, NUMBER, 1);
        target2[position3++] = value ? 249 : 248;
        break;
      case "undefined":
        nextTransition = anyType(nextTransition, position3, targetView2, -9);
        if (nextTransition) {
          transition = nextTransition;
          position3 = updatedPosition;
        } else queuedReferences.push(key, value, keyIndex);
        break;
      default:
        queuedReferences.push(key, value, keyIndex);
    }
    keyIndex++;
  }
  for (let i2 = 0, l = queuedReferences.length; i2 < l; ) {
    let key = queuedReferences[i2++];
    let value = queuedReferences[i2++];
    let propertyIndex = queuedReferences[i2++];
    let nextTransition = transition[key];
    if (!nextTransition) {
      transition[key] = nextTransition = {
        key,
        parent: transition,
        enumerationOffset: propertyIndex - keyIndex,
        ascii0: null,
        ascii8: null,
        num8: null,
        string16: null,
        object16: null,
        num32: null,
        float64: null
      };
    }
    let newPosition;
    if (value) {
      let size;
      refOffset = refPosition - refsStartPosition;
      if (refOffset < 65280) {
        transition = nextTransition.object16;
        if (transition)
          size = 2;
        else if (transition = nextTransition.object32)
          size = 4;
        else {
          transition = createTypeTransition(nextTransition, OBJECT_DATA, 2);
          size = 2;
        }
      } else {
        transition = nextTransition.object32 || createTypeTransition(nextTransition, OBJECT_DATA, 4);
        size = 4;
      }
      newPosition = pack2(value, refPosition);
      if (typeof newPosition === "object") {
        refPosition = newPosition.position;
        targetView2 = newPosition.targetView;
        target2 = newPosition.target;
        refsStartPosition -= encodingStart;
        position3 -= encodingStart;
        start -= encodingStart;
        encodingStart = 0;
      } else
        refPosition = newPosition;
      if (size === 2) {
        targetView2.setUint16(position3, refOffset, true);
        position3 += 2;
      } else {
        targetView2.setUint32(position3, refOffset, true);
        position3 += 4;
      }
    } else {
      transition = nextTransition.object16 || createTypeTransition(nextTransition, OBJECT_DATA, 2);
      targetView2.setInt16(position3, value === null ? -10 : -9, true);
      position3 += 2;
    }
    keyIndex++;
  }
  let recordId = transition[RECORD_SYMBOL];
  if (recordId == null) {
    recordId = packr2.typedStructs.length;
    let structure = [];
    let nextTransition = transition;
    let key, type4;
    while ((type4 = nextTransition.__type) !== void 0) {
      let size = nextTransition.__size;
      nextTransition = nextTransition.__parent;
      key = nextTransition.key;
      let property = [type4, size, key];
      if (nextTransition.enumerationOffset)
        property.push(nextTransition.enumerationOffset);
      structure.push(property);
      nextTransition = nextTransition.parent;
    }
    structure.reverse();
    transition[RECORD_SYMBOL] = recordId;
    packr2.typedStructs[recordId] = structure;
    pack2(null, 0, true);
  }
  switch (headerSize) {
    case 1:
      if (recordId >= 16) return 0;
      target2[start] = recordId + 32;
      break;
    case 2:
      if (recordId >= 256) return 0;
      target2[start] = 56;
      target2[start + 1] = recordId;
      break;
    case 3:
      if (recordId >= 65536) return 0;
      target2[start] = 57;
      targetView2.setUint16(start + 1, recordId, true);
      break;
    case 4:
      if (recordId >= 16777216) return 0;
      targetView2.setUint32(start, (recordId << 8) + 58, true);
      break;
  }
  if (position3 < refsStartPosition) {
    if (refsStartPosition === refPosition)
      return position3;
    target2.copyWithin(position3, refsStartPosition, refPosition);
    refPosition += position3 - refsStartPosition;
    typedStructs.lastStringStart = position3 - start;
  } else if (position3 > refsStartPosition) {
    if (refsStartPosition === refPosition)
      return position3;
    typedStructs.lastStringStart = position3 - start;
    return writeStruct(object, target2, encodingStart, start, structures, makeRoom, pack2, packr2);
  }
  return refPosition;
}
function anyType(transition, position3, targetView2, value) {
  let nextTransition;
  if (nextTransition = transition.ascii8 || transition.num8) {
    targetView2.setInt8(position3, value, true);
    updatedPosition = position3 + 1;
    return nextTransition;
  }
  if (nextTransition = transition.string16 || transition.object16) {
    targetView2.setInt16(position3, value, true);
    updatedPosition = position3 + 2;
    return nextTransition;
  }
  if (nextTransition = transition.num32) {
    targetView2.setUint32(position3, 3758096640 + value, true);
    updatedPosition = position3 + 4;
    return nextTransition;
  }
  if (nextTransition = transition.num64) {
    targetView2.setFloat64(position3, NaN, true);
    targetView2.setInt8(position3, value);
    updatedPosition = position3 + 8;
    return nextTransition;
  }
  updatedPosition = position3;
  return;
}
function createTypeTransition(transition, type4, size) {
  let typeName = TYPE_NAMES[type4] + (size << 3);
  let newTransition = transition[typeName] || (transition[typeName] = /* @__PURE__ */ Object.create(null));
  newTransition.__type = type4;
  newTransition.__size = size;
  newTransition.__parent = transition;
  return newTransition;
}
function onLoadedStructures2(sharedData) {
  if (!(sharedData instanceof Map))
    return sharedData;
  let typed = sharedData.get("typed") || [];
  if (Object.isFrozen(typed))
    typed = typed.map((structure) => structure.slice(0));
  let named = sharedData.get("named");
  let transitions = /* @__PURE__ */ Object.create(null);
  for (let i2 = 0, l = typed.length; i2 < l; i2++) {
    let structure = typed[i2];
    let transition = transitions;
    for (let [type4, size, key] of structure) {
      let nextTransition = transition[key];
      if (!nextTransition) {
        transition[key] = nextTransition = {
          key,
          parent: transition,
          enumerationOffset: 0,
          ascii0: null,
          ascii8: null,
          num8: null,
          string16: null,
          object16: null,
          num32: null,
          float64: null,
          date64: null
        };
      }
      transition = createTypeTransition(nextTransition, type4, size);
    }
    transition[RECORD_SYMBOL] = i2;
  }
  typed.transitions = transitions;
  this.typedStructs = typed;
  this.lastTypedStructuresLength = typed.length;
  return named;
}
function readStruct2(src2, position3, srcEnd2, unpackr) {
  let recordId = src2[position3++] - 32;
  if (recordId >= 24) {
    switch (recordId) {
      case 24:
        recordId = src2[position3++];
        break;
      // little endian:
      case 25:
        recordId = src2[position3++] + (src2[position3++] << 8);
        break;
      case 26:
        recordId = src2[position3++] + (src2[position3++] << 8) + (src2[position3++] << 16);
        break;
      case 27:
        recordId = src2[position3++] + (src2[position3++] << 8) + (src2[position3++] << 16) + (src2[position3++] << 24);
        break;
    }
  }
  let structure = unpackr.typedStructs && unpackr.typedStructs[recordId];
  if (!structure) {
    src2 = Uint8Array.prototype.slice.call(src2, position3, srcEnd2);
    srcEnd2 -= position3;
    position3 = 0;
    if (!unpackr.getStructures)
      throw new Error(`Reference to shared structure ${recordId} without getStructures method`);
    unpackr._mergeStructures(unpackr.getStructures());
    if (!unpackr.typedStructs)
      throw new Error("Could not find any shared typed structures");
    unpackr.lastTypedStructuresLength = unpackr.typedStructs.length;
    structure = unpackr.typedStructs[recordId];
    if (!structure)
      throw new Error("Could not find typed structure " + recordId);
  }
  var construct = structure.construct;
  var fullConstruct = structure.fullConstruct;
  if (!construct) {
    construct = structure.construct = function LazyObject() {
    };
    fullConstruct = structure.fullConstruct = function LoadedObject() {
    };
    fullConstruct.prototype = unpackr.structPrototype || {};
    var prototype = construct.prototype = unpackr.structPrototype ? Object.create(unpackr.structPrototype) : {};
    let properties = [];
    let currentOffset = 0;
    let lastRefProperty;
    for (let i2 = 0, l = structure.length; i2 < l; i2++) {
      let definition = structure[i2];
      let [type4, size, key, enumerationOffset] = definition;
      if (key === "__proto__")
        key = "__proto_";
      let property = {
        key,
        offset: currentOffset
      };
      if (enumerationOffset)
        properties.splice(i2 + enumerationOffset, 0, property);
      else
        properties.push(property);
      let getRef;
      switch (size) {
        // TODO: Move into a separate function
        case 0:
          getRef = () => 0;
          break;
        case 1:
          getRef = (source, position4) => {
            let ref = source.bytes[position4 + property.offset];
            return ref >= 246 ? toConstant(ref) : ref;
          };
          break;
        case 2:
          getRef = (source, position4) => {
            let src3 = source.bytes;
            let dataView2 = src3.dataView || (src3.dataView = new DataView(src3.buffer, src3.byteOffset, src3.byteLength));
            let ref = dataView2.getUint16(position4 + property.offset, true);
            return ref >= 65280 ? toConstant(ref & 255) : ref;
          };
          break;
        case 4:
          getRef = (source, position4) => {
            let src3 = source.bytes;
            let dataView2 = src3.dataView || (src3.dataView = new DataView(src3.buffer, src3.byteOffset, src3.byteLength));
            let ref = dataView2.getUint32(position4 + property.offset, true);
            return ref >= 4294967040 ? toConstant(ref & 255) : ref;
          };
          break;
      }
      property.getRef = getRef;
      currentOffset += size;
      let get;
      switch (type4) {
        case ASCII:
          if (lastRefProperty && !lastRefProperty.next)
            lastRefProperty.next = property;
          lastRefProperty = property;
          property.multiGetCount = 0;
          get = function(source) {
            let src3 = source.bytes;
            let position4 = source.position;
            let refStart = currentOffset + position4;
            let ref = getRef(source, position4);
            if (typeof ref !== "number") return ref;
            let end, next2 = property.next;
            while (next2) {
              end = next2.getRef(source, position4);
              if (typeof end === "number")
                break;
              else
                end = null;
              next2 = next2.next;
            }
            if (end == null)
              end = source.bytesEnd - refStart;
            if (source.srcString) {
              return source.srcString.slice(ref, end);
            }
            return readString(src3, ref + refStart, end - ref);
          };
          break;
        case UTF8:
        case OBJECT_DATA:
          if (lastRefProperty && !lastRefProperty.next)
            lastRefProperty.next = property;
          lastRefProperty = property;
          get = function(source) {
            let position4 = source.position;
            let refStart = currentOffset + position4;
            let ref = getRef(source, position4);
            if (typeof ref !== "number") return ref;
            let src3 = source.bytes;
            let end, next2 = property.next;
            while (next2) {
              end = next2.getRef(source, position4);
              if (typeof end === "number")
                break;
              else
                end = null;
              next2 = next2.next;
            }
            if (end == null)
              end = source.bytesEnd - refStart;
            if (type4 === UTF8) {
              return src3.toString("utf8", ref + refStart, end + refStart);
            } else {
              currentSource = source;
              try {
                return unpackr.unpack(src3, { start: ref + refStart, end: end + refStart });
              } finally {
                currentSource = null;
              }
            }
          };
          break;
        case NUMBER:
          switch (size) {
            case 4:
              get = function(source) {
                let src3 = source.bytes;
                let dataView2 = src3.dataView || (src3.dataView = new DataView(src3.buffer, src3.byteOffset, src3.byteLength));
                let position4 = source.position + property.offset;
                let value = dataView2.getInt32(position4, true);
                if (value < 536870912) {
                  if (value > -520093696)
                    return value;
                  if (value > -536870912)
                    return toConstant(value & 255);
                }
                let fValue = dataView2.getFloat32(position4, true);
                let multiplier = mult10[(src3[position4 + 3] & 127) << 1 | src3[position4 + 2] >> 7];
                return (multiplier * fValue + (fValue > 0 ? 0.5 : -0.5) >> 0) / multiplier;
              };
              break;
            case 8:
              get = function(source) {
                let src3 = source.bytes;
                let dataView2 = src3.dataView || (src3.dataView = new DataView(src3.buffer, src3.byteOffset, src3.byteLength));
                let value = dataView2.getFloat64(source.position + property.offset, true);
                if (isNaN(value)) {
                  let byte = src3[source.position + property.offset];
                  if (byte >= 246)
                    return toConstant(byte);
                }
                return value;
              };
              break;
            case 1:
              get = function(source) {
                let src3 = source.bytes;
                let value = src3[source.position + property.offset];
                return value < 246 ? value : toConstant(value);
              };
              break;
          }
          break;
        case DATE:
          get = function(source) {
            let src3 = source.bytes;
            let dataView2 = src3.dataView || (src3.dataView = new DataView(src3.buffer, src3.byteOffset, src3.byteLength));
            return new Date(dataView2.getFloat64(source.position + property.offset, true));
          };
          break;
      }
      property.get = get;
    }
    if (evalSupported) {
      let objectLiteralProperties = [];
      let args = [];
      let i2 = 0;
      let hasInheritedProperties;
      for (let property of properties) {
        if (unpackr.alwaysLazyProperty && unpackr.alwaysLazyProperty(property.key)) {
          hasInheritedProperties = true;
          continue;
        }
        Object.defineProperty(prototype, property.key, { get: withSource(property.get), enumerable: true });
        let valueFunction = "v" + i2++;
        args.push(valueFunction);
        objectLiteralProperties.push("o[" + JSON.stringify(property.key) + "]=" + valueFunction + "(s)");
      }
      if (hasInheritedProperties) {
        objectLiteralProperties.push("__proto__:this");
      }
      let toObject = new Function(...args, "var c=this;return function(s){var o=new c();" + objectLiteralProperties.join(";") + ";return o;}").apply(fullConstruct, properties.map((prop3) => prop3.get));
      Object.defineProperty(prototype, "toJSON", {
        value(omitUnderscoredProperties) {
          return toObject.call(this, this[sourceSymbol]);
        }
      });
    } else {
      Object.defineProperty(prototype, "toJSON", {
        value(omitUnderscoredProperties) {
          let resolved = {};
          for (let i2 = 0, l = properties.length; i2 < l; i2++) {
            let key = properties[i2].key;
            resolved[key] = this[key];
          }
          return resolved;
        }
        // not enumerable or anything
      });
    }
  }
  var instance = new construct();
  instance[sourceSymbol] = {
    bytes: src2,
    position: position3,
    srcString: "",
    bytesEnd: srcEnd2
  };
  return instance;
}
function toConstant(code) {
  switch (code) {
    case 246:
      return null;
    case 247:
      return void 0;
    case 248:
      return false;
    case 249:
      return true;
  }
  throw new Error("Unknown constant");
}
function withSource(get) {
  return function() {
    return get(this[sourceSymbol]);
  };
}
function saveState2() {
  if (currentSource) {
    currentSource.bytes = Uint8Array.prototype.slice.call(currentSource.bytes, currentSource.position, currentSource.bytesEnd);
    currentSource.position = 0;
    currentSource.bytesEnd = currentSource.bytes.length;
  }
}
function prepareStructures2(structures, packr2) {
  if (packr2.typedStructs) {
    let structMap = /* @__PURE__ */ new Map();
    structMap.set("named", structures);
    structMap.set("typed", packr2.typedStructs);
    structures = structMap;
  }
  let lastTypedStructuresLength = packr2.lastTypedStructuresLength || 0;
  structures.isCompatible = (existing) => {
    let compatible = true;
    if (existing instanceof Map) {
      let named = existing.get("named") || [];
      if (named.length !== (packr2.lastNamedStructuresLength || 0))
        compatible = false;
      let typed = existing.get("typed") || [];
      if (typed.length !== lastTypedStructuresLength)
        compatible = false;
    } else if (existing instanceof Array || Array.isArray(existing)) {
      if (existing.length !== (packr2.lastNamedStructuresLength || 0))
        compatible = false;
    }
    if (!compatible)
      packr2._mergeStructures(existing);
    return compatible;
  };
  packr2.lastTypedStructuresLength = packr2.typedStructs && packr2.typedStructs.length;
  return structures;
}
var ASCII, NUMBER, UTF8, OBJECT_DATA, DATE, TYPE_NAMES, float32Headers, evalSupported, updatedPosition, hasNodeBuffer2, textEncoder2, currentSource, encodeUtf8, sourceSymbol;
var init_struct = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/msgpackr/1.11.8/8643dc0f73f17361f7ff0e051a29ae504ef0c06b3c6d07c31984f50d7f160d42/node_modules/msgpackr/struct.js"() {
    init_pack();
    init_unpack();
    ASCII = 3;
    NUMBER = 0;
    UTF8 = 2;
    OBJECT_DATA = 1;
    DATE = 16;
    TYPE_NAMES = ["num", "object", "string", "ascii"];
    TYPE_NAMES[DATE] = "date";
    float32Headers = [false, true, true, false, false, true, true, false];
    try {
      new Function("");
      evalSupported = true;
    } catch (error) {
    }
    hasNodeBuffer2 = typeof Buffer !== "undefined";
    try {
      textEncoder2 = new TextEncoder();
    } catch (error) {
    }
    encodeUtf8 = hasNodeBuffer2 ? function(target2, string, position3) {
      return target2.utf8Write(string, position3, target2.byteLength - position3);
    } : textEncoder2 && textEncoder2.encodeInto ? function(target2, string, position3) {
      return textEncoder2.encodeInto(string, target2.subarray(position3)).written;
    } : false;
    setWriteStructSlots(writeStruct, prepareStructures2);
    sourceSymbol = /* @__PURE__ */ Symbol.for("source");
    setReadStruct(readStruct2, onLoadedStructures2, saveState2);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/msgpackr/1.11.8/8643dc0f73f17361f7ff0e051a29ae504ef0c06b3c6d07c31984f50d7f160d42/node_modules/msgpackr/stream.js
var init_stream = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/msgpackr/1.11.8/8643dc0f73f17361f7ff0e051a29ae504ef0c06b3c6d07c31984f50d7f160d42/node_modules/msgpackr/stream.js"() {
    init_pack();
    init_unpack();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/msgpackr/1.11.8/8643dc0f73f17361f7ff0e051a29ae504ef0c06b3c6d07c31984f50d7f160d42/node_modules/msgpackr/iterators.js
var init_iterators = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/msgpackr/1.11.8/8643dc0f73f17361f7ff0e051a29ae504ef0c06b3c6d07c31984f50d7f160d42/node_modules/msgpackr/iterators.js"() {
    init_pack();
    init_unpack();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/detect-libc/2.1.2/a1e36129e998f9971b8906296c04a9314f612077e4f1e2a4342793f735c2fb37/node_modules/detect-libc/lib/process.js
var require_process = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/detect-libc/2.1.2/a1e36129e998f9971b8906296c04a9314f612077e4f1e2a4342793f735c2fb37/node_modules/detect-libc/lib/process.js"(exports2, module2) {
    "use strict";
    var isLinux2 = () => process.platform === "linux";
    var report3 = null;
    var getReport = () => {
      if (!report3) {
        if (isLinux2() && process.report) {
          const orig = process.report.excludeNetwork;
          process.report.excludeNetwork = true;
          report3 = process.report.getReport();
          process.report.excludeNetwork = orig;
        } else {
          report3 = {};
        }
      }
      return report3;
    };
    module2.exports = { isLinux: isLinux2, getReport };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/detect-libc/2.1.2/a1e36129e998f9971b8906296c04a9314f612077e4f1e2a4342793f735c2fb37/node_modules/detect-libc/lib/filesystem.js
var require_filesystem = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/detect-libc/2.1.2/a1e36129e998f9971b8906296c04a9314f612077e4f1e2a4342793f735c2fb37/node_modules/detect-libc/lib/filesystem.js"(exports2, module2) {
    "use strict";
    var fs111 = __require("fs");
    var LDD_PATH = "/usr/bin/ldd";
    var SELF_PATH = "/proc/self/exe";
    var MAX_LENGTH = 2048;
    var readFileSync4 = (path218) => {
      const fd = fs111.openSync(path218, "r");
      const buffer3 = Buffer.alloc(MAX_LENGTH);
      const bytesRead = fs111.readSync(fd, buffer3, 0, MAX_LENGTH, 0);
      fs111.close(fd, () => {
      });
      return buffer3.subarray(0, bytesRead);
    };
    var readFile4 = (path218) => new Promise((resolve3, reject3) => {
      fs111.open(path218, "r", (err, fd) => {
        if (err) {
          reject3(err);
        } else {
          const buffer3 = Buffer.alloc(MAX_LENGTH);
          fs111.read(fd, buffer3, 0, MAX_LENGTH, 0, (_, bytesRead) => {
            resolve3(buffer3.subarray(0, bytesRead));
            fs111.close(fd, () => {
            });
          });
        }
      });
    });
    module2.exports = {
      LDD_PATH,
      SELF_PATH,
      readFileSync: readFileSync4,
      readFile: readFile4
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/detect-libc/2.1.2/a1e36129e998f9971b8906296c04a9314f612077e4f1e2a4342793f735c2fb37/node_modules/detect-libc/lib/elf.js
var require_elf = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/detect-libc/2.1.2/a1e36129e998f9971b8906296c04a9314f612077e4f1e2a4342793f735c2fb37/node_modules/detect-libc/lib/elf.js"(exports2, module2) {
    "use strict";
    var interpreterPath = (elf) => {
      if (elf.length < 64) {
        return null;
      }
      if (elf.readUInt32BE(0) !== 2135247942) {
        return null;
      }
      if (elf.readUInt8(4) !== 2) {
        return null;
      }
      if (elf.readUInt8(5) !== 1) {
        return null;
      }
      const offset = elf.readUInt32LE(32);
      const size = elf.readUInt16LE(54);
      const count2 = elf.readUInt16LE(56);
      for (let i2 = 0; i2 < count2; i2++) {
        const headerOffset = offset + i2 * size;
        const type4 = elf.readUInt32LE(headerOffset);
        if (type4 === 3) {
          const fileOffset = elf.readUInt32LE(headerOffset + 8);
          const fileSize = elf.readUInt32LE(headerOffset + 32);
          return elf.subarray(fileOffset, fileOffset + fileSize).toString().replace(/\0.*$/g, "");
        }
      }
      return null;
    };
    module2.exports = {
      interpreterPath
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/detect-libc/2.1.2/a1e36129e998f9971b8906296c04a9314f612077e4f1e2a4342793f735c2fb37/node_modules/detect-libc/lib/detect-libc.js
var require_detect_libc = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/detect-libc/2.1.2/a1e36129e998f9971b8906296c04a9314f612077e4f1e2a4342793f735c2fb37/node_modules/detect-libc/lib/detect-libc.js"(exports2, module2) {
    "use strict";
    var childProcess = __require("child_process");
    var { isLinux: isLinux2, getReport } = require_process();
    var { LDD_PATH, SELF_PATH, readFile: readFile4, readFileSync: readFileSync4 } = require_filesystem();
    var { interpreterPath } = require_elf();
    var cachedFamilyInterpreter;
    var cachedFamilyFilesystem;
    var cachedVersionFilesystem;
    var command = "getconf GNU_LIBC_VERSION 2>&1 || true; ldd --version 2>&1 || true";
    var commandOut = "";
    var safeCommand = () => {
      if (!commandOut) {
        return new Promise((resolve3) => {
          childProcess.exec(command, (err, out) => {
            commandOut = err ? " " : out;
            resolve3(commandOut);
          });
        });
      }
      return commandOut;
    };
    var safeCommandSync = () => {
      if (!commandOut) {
        try {
          commandOut = childProcess.execSync(command, { encoding: "utf8" });
        } catch (_err) {
          commandOut = " ";
        }
      }
      return commandOut;
    };
    var GLIBC = "glibc";
    var RE_GLIBC_VERSION = /LIBC[a-z0-9 \-).]*?(\d+\.\d+)/i;
    var MUSL = "musl";
    var isFileMusl = (f) => f.includes("libc.musl-") || f.includes("ld-musl-");
    var familyFromReport = () => {
      const report3 = getReport();
      if (report3.header && report3.header.glibcVersionRuntime) {
        return GLIBC;
      }
      if (Array.isArray(report3.sharedObjects)) {
        if (report3.sharedObjects.some(isFileMusl)) {
          return MUSL;
        }
      }
      return null;
    };
    var familyFromCommand = (out) => {
      const [getconf, ldd1] = out.split(/[\r\n]+/);
      if (getconf && getconf.includes(GLIBC)) {
        return GLIBC;
      }
      if (ldd1 && ldd1.includes(MUSL)) {
        return MUSL;
      }
      return null;
    };
    var familyFromInterpreterPath = (path218) => {
      if (path218) {
        if (path218.includes("/ld-musl-")) {
          return MUSL;
        } else if (path218.includes("/ld-linux-")) {
          return GLIBC;
        }
      }
      return null;
    };
    var getFamilyFromLddContent = (content) => {
      content = content.toString();
      if (content.includes("musl")) {
        return MUSL;
      }
      if (content.includes("GNU C Library")) {
        return GLIBC;
      }
      return null;
    };
    var familyFromFilesystem = async () => {
      if (cachedFamilyFilesystem !== void 0) {
        return cachedFamilyFilesystem;
      }
      cachedFamilyFilesystem = null;
      try {
        const lddContent = await readFile4(LDD_PATH);
        cachedFamilyFilesystem = getFamilyFromLddContent(lddContent);
      } catch (e) {
      }
      return cachedFamilyFilesystem;
    };
    var familyFromFilesystemSync = () => {
      if (cachedFamilyFilesystem !== void 0) {
        return cachedFamilyFilesystem;
      }
      cachedFamilyFilesystem = null;
      try {
        const lddContent = readFileSync4(LDD_PATH);
        cachedFamilyFilesystem = getFamilyFromLddContent(lddContent);
      } catch (e) {
      }
      return cachedFamilyFilesystem;
    };
    var familyFromInterpreter = async () => {
      if (cachedFamilyInterpreter !== void 0) {
        return cachedFamilyInterpreter;
      }
      cachedFamilyInterpreter = null;
      try {
        const selfContent = await readFile4(SELF_PATH);
        const path218 = interpreterPath(selfContent);
        cachedFamilyInterpreter = familyFromInterpreterPath(path218);
      } catch (e) {
      }
      return cachedFamilyInterpreter;
    };
    var familyFromInterpreterSync = () => {
      if (cachedFamilyInterpreter !== void 0) {
        return cachedFamilyInterpreter;
      }
      cachedFamilyInterpreter = null;
      try {
        const selfContent = readFileSync4(SELF_PATH);
        const path218 = interpreterPath(selfContent);
        cachedFamilyInterpreter = familyFromInterpreterPath(path218);
      } catch (e) {
      }
      return cachedFamilyInterpreter;
    };
    var family = async () => {
      let family2 = null;
      if (isLinux2()) {
        family2 = await familyFromInterpreter();
        if (!family2) {
          family2 = await familyFromFilesystem();
          if (!family2) {
            family2 = familyFromReport();
          }
          if (!family2) {
            const out = await safeCommand();
            family2 = familyFromCommand(out);
          }
        }
      }
      return family2;
    };
    var familySync5 = () => {
      let family2 = null;
      if (isLinux2()) {
        family2 = familyFromInterpreterSync();
        if (!family2) {
          family2 = familyFromFilesystemSync();
          if (!family2) {
            family2 = familyFromReport();
          }
          if (!family2) {
            const out = safeCommandSync();
            family2 = familyFromCommand(out);
          }
        }
      }
      return family2;
    };
    var isNonGlibcLinux = async () => isLinux2() && await family() !== GLIBC;
    var isNonGlibcLinuxSync = () => isLinux2() && familySync5() !== GLIBC;
    var versionFromFilesystem = async () => {
      if (cachedVersionFilesystem !== void 0) {
        return cachedVersionFilesystem;
      }
      cachedVersionFilesystem = null;
      try {
        const lddContent = await readFile4(LDD_PATH);
        const versionMatch = lddContent.match(RE_GLIBC_VERSION);
        if (versionMatch) {
          cachedVersionFilesystem = versionMatch[1];
        }
      } catch (e) {
      }
      return cachedVersionFilesystem;
    };
    var versionFromFilesystemSync = () => {
      if (cachedVersionFilesystem !== void 0) {
        return cachedVersionFilesystem;
      }
      cachedVersionFilesystem = null;
      try {
        const lddContent = readFileSync4(LDD_PATH);
        const versionMatch = lddContent.match(RE_GLIBC_VERSION);
        if (versionMatch) {
          cachedVersionFilesystem = versionMatch[1];
        }
      } catch (e) {
      }
      return cachedVersionFilesystem;
    };
    var versionFromReport = () => {
      const report3 = getReport();
      if (report3.header && report3.header.glibcVersionRuntime) {
        return report3.header.glibcVersionRuntime;
      }
      return null;
    };
    var versionSuffix = (s) => s.trim().split(/\s+/)[1];
    var versionFromCommand = (out) => {
      const [getconf, ldd1, ldd2] = out.split(/[\r\n]+/);
      if (getconf && getconf.includes(GLIBC)) {
        return versionSuffix(getconf);
      }
      if (ldd1 && ldd2 && ldd1.includes(MUSL)) {
        return versionSuffix(ldd2);
      }
      return null;
    };
    var version2 = async () => {
      let version3 = null;
      if (isLinux2()) {
        version3 = await versionFromFilesystem();
        if (!version3) {
          version3 = versionFromReport();
        }
        if (!version3) {
          const out = await safeCommand();
          version3 = versionFromCommand(out);
        }
      }
      return version3;
    };
    var versionSync = () => {
      let version3 = null;
      if (isLinux2()) {
        version3 = versionFromFilesystemSync();
        if (!version3) {
          version3 = versionFromReport();
        }
        if (!version3) {
          const out = safeCommandSync();
          version3 = versionFromCommand(out);
        }
      }
      return version3;
    };
    module2.exports = {
      GLIBC,
      MUSL,
      family,
      familySync: familySync5,
      isNonGlibcLinux,
      isNonGlibcLinuxSync,
      version: version2,
      versionSync
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/node-gyp-build-optional-packages/5.2.2/e2d2fc28f4d0eaa7fac1904123db86f87839f4cdd1ffc0e2b124adc9c1d9f616/node_modules/node-gyp-build-optional-packages/node-gyp-build.js
var require_node_gyp_build = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/node-gyp-build-optional-packages/5.2.2/e2d2fc28f4d0eaa7fac1904123db86f87839f4cdd1ffc0e2b124adc9c1d9f616/node_modules/node-gyp-build-optional-packages/node-gyp-build.js"(exports2, module2) {
    var fs111 = __require("fs");
    var path218 = __require("path");
    var url7 = __require("url");
    var os15 = __require("os");
    var runtimeRequire = typeof __webpack_require__ === "function" ? __non_webpack_require__ : __require;
    var vars = process.config && process.config.variables || {};
    var prebuildsOnly = !!process.env.PREBUILDS_ONLY;
    var versions = process.versions;
    var abi = versions.modules;
    if (versions.deno || process.isBun) {
      abi = "unsupported";
    }
    var runtime = isElectron2() ? "electron" : isNwjs() ? "node-webkit" : "node";
    var arch = process.env.npm_config_arch || os15.arch();
    var platform3 = process.env.npm_config_platform || os15.platform();
    var libc = process.env.LIBC || (isMusl(platform3) ? "musl" : "glibc");
    var armv = process.env.ARM_VERSION || (arch === "arm64" ? "8" : vars.arm_version) || "";
    var uv = (versions.uv || "").split(".")[0];
    module2.exports = load3;
    function load3(dir) {
      return runtimeRequire(load3.resolve(dir));
    }
    load3.resolve = load3.path = function(dir) {
      dir = path218.resolve(dir || ".");
      var packageName = "";
      var packageNameError;
      try {
        packageName = runtimeRequire(path218.join(dir, "package.json")).name;
        var varName = packageName.toUpperCase().replace(/-/g, "_");
        if (process.env[varName + "_PREBUILD"]) dir = process.env[varName + "_PREBUILD"];
      } catch (err) {
        packageNameError = err;
      }
      if (!prebuildsOnly) {
        var release = getFirst(path218.join(dir, "build/Release"), matchBuild);
        if (release) return release;
        var debug = getFirst(path218.join(dir, "build/Debug"), matchBuild);
        if (debug) return debug;
      }
      var prebuild = resolve3(dir);
      if (prebuild) return prebuild;
      var nearby = resolve3(path218.dirname(process.execPath));
      if (nearby) return nearby;
      var platformPackage = (packageName[0] == "@" ? "" : "@" + packageName + "/") + packageName + "-" + platform3 + "-" + arch;
      var packageResolutionError;
      try {
        var prebuildPackage = path218.dirname(__require("module").createRequire(url7.pathToFileURL(path218.join(dir, "package.json"))).resolve(platformPackage));
        return resolveFile(prebuildPackage);
      } catch (error) {
        packageResolutionError = error;
      }
      var target2 = [
        "platform=" + platform3,
        "arch=" + arch,
        "runtime=" + runtime,
        "abi=" + abi,
        "uv=" + uv,
        armv ? "armv=" + armv : "",
        "libc=" + libc,
        "node=" + process.versions.node,
        process.versions.electron ? "electron=" + process.versions.electron : "",
        typeof __webpack_require__ === "function" ? "webpack=true" : ""
        // eslint-disable-line
      ].filter(Boolean).join(" ");
      let errMessage = "No native build was found for " + target2 + "\n    attempted loading from: " + dir + " and package: " + platformPackage + "\n";
      if (packageNameError) {
        errMessage += "Error finding package.json: " + packageNameError.message + "\n";
      }
      if (packageResolutionError) {
        errMessage += "Error resolving package: " + packageResolutionError.message + "\n";
      }
      throw new Error(errMessage);
      function resolve3(dir2) {
        var tuples = readdirSync4(path218.join(dir2, "prebuilds")).map(parseTuple);
        var tuple = tuples.filter(matchTuple(platform3, arch)).sort(compareTuples)[0];
        if (!tuple) return;
        return resolveFile(path218.join(dir2, "prebuilds", tuple.name));
      }
      function resolveFile(prebuilds) {
        var parsed = readdirSync4(prebuilds).map(parseTags);
        var candidates = parsed.filter(matchTags(runtime, abi));
        var winner = candidates.sort(compareTags(runtime))[0];
        if (winner) return path218.join(prebuilds, winner.file);
      }
    };
    function readdirSync4(dir) {
      try {
        return fs111.readdirSync(dir);
      } catch (err) {
        return [];
      }
    }
    function getFirst(dir, filter14) {
      var files = readdirSync4(dir).filter(filter14);
      return files[0] && path218.join(dir, files[0]);
    }
    function matchBuild(name) {
      return /\.node$/.test(name);
    }
    function parseTuple(name) {
      var arr = name.split("-");
      if (arr.length !== 2) return;
      var platform4 = arr[0];
      var architectures = arr[1].split("+");
      if (!platform4) return;
      if (!architectures.length) return;
      if (!architectures.every(Boolean)) return;
      return { name, platform: platform4, architectures };
    }
    function matchTuple(platform4, arch2) {
      return function(tuple) {
        if (tuple == null) return false;
        if (tuple.platform !== platform4) return false;
        return tuple.architectures.includes(arch2);
      };
    }
    function compareTuples(a2, b) {
      return a2.architectures.length - b.architectures.length;
    }
    function parseTags(file) {
      var arr = file.split(".");
      var extension = arr.pop();
      var tags = { file, specificity: 0 };
      if (extension !== "node") return;
      for (var i2 = 0; i2 < arr.length; i2++) {
        var tag = arr[i2];
        if (tag === "node" || tag === "electron" || tag === "node-webkit") {
          tags.runtime = tag;
        } else if (tag === "napi") {
          tags.napi = true;
        } else if (tag.slice(0, 3) === "abi") {
          tags.abi = tag.slice(3);
        } else if (tag.slice(0, 2) === "uv") {
          tags.uv = tag.slice(2);
        } else if (tag.slice(0, 4) === "armv") {
          tags.armv = tag.slice(4);
        } else if (tag === "glibc" || tag === "musl") {
          tags.libc = tag;
        } else {
          continue;
        }
        tags.specificity++;
      }
      return tags;
    }
    function matchTags(runtime2, abi2) {
      return function(tags) {
        if (tags == null) return false;
        if (tags.runtime !== runtime2 && !runtimeAgnostic(tags)) return false;
        if (tags.abi !== abi2 && !tags.napi) return false;
        if (tags.uv && tags.uv !== uv) return false;
        if (tags.armv && tags.armv !== armv) return false;
        if (tags.libc && tags.libc !== libc) return false;
        return true;
      };
    }
    function runtimeAgnostic(tags) {
      return tags.runtime === "node" && tags.napi;
    }
    function compareTags(runtime2) {
      return function(a2, b) {
        if (a2.runtime !== b.runtime) {
          return a2.runtime === runtime2 ? -1 : 1;
        } else if (a2.abi !== b.abi) {
          return a2.abi ? -1 : 1;
        } else if (a2.specificity !== b.specificity) {
          return a2.specificity > b.specificity ? -1 : 1;
        } else {
          return 0;
        }
      };
    }
    function isNwjs() {
      return !!(process.versions && process.versions.nw);
    }
    function isElectron2() {
      if (process.versions && process.versions.electron) return true;
      if (process.env.ELECTRON_RUN_AS_NODE) return true;
      return typeof window !== "undefined" && window.process && window.process.type === "renderer";
    }
    function isMusl(platform4) {
      if (platform4 !== "linux") return false;
      const { familySync: familySync5, MUSL } = require_detect_libc();
      return familySync5() === MUSL;
    }
    load3.parseTags = parseTags;
    load3.matchTags = matchTags;
    load3.compareTags = compareTags;
    load3.parseTuple = parseTuple;
    load3.matchTuple = matchTuple;
    load3.compareTuples = compareTuples;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/node-gyp-build-optional-packages/5.2.2/e2d2fc28f4d0eaa7fac1904123db86f87839f4cdd1ffc0e2b124adc9c1d9f616/node_modules/node-gyp-build-optional-packages/index.js
var require_node_gyp_build_optional_packages = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/node-gyp-build-optional-packages/5.2.2/e2d2fc28f4d0eaa7fac1904123db86f87839f4cdd1ffc0e2b124adc9c1d9f616/node_modules/node-gyp-build-optional-packages/index.js"(exports2, module2) {
    var runtimeRequire = typeof __webpack_require__ === "function" ? __non_webpack_require__ : __require;
    if (typeof runtimeRequire.addon === "function") {
      module2.exports = runtimeRequire.addon.bind(runtimeRequire);
    } else {
      module2.exports = require_node_gyp_build();
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/msgpackr-extract/3.0.3/0fed7c59d7884d39b66160014ad9496e26ec57e1aa226fc2f7c4ba413fa14bc8/node_modules/msgpackr-extract/index.js
var require_msgpackr_extract = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/msgpackr-extract/3.0.3/0fed7c59d7884d39b66160014ad9496e26ec57e1aa226fc2f7c4ba413fa14bc8/node_modules/msgpackr-extract/index.js"(exports2, module2) {
    module2.exports = require_node_gyp_build_optional_packages()(__dirname);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/msgpackr/1.11.8/8643dc0f73f17361f7ff0e051a29ae504ef0c06b3c6d07c31984f50d7f160d42/node_modules/msgpackr/node-index.js
import { createRequire } from "module";
var nativeAccelerationDisabled;
var init_node_index = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/msgpackr/1.11.8/8643dc0f73f17361f7ff0e051a29ae504ef0c06b3c6d07c31984f50d7f160d42/node_modules/msgpackr/node-index.js"() {
    init_pack();
    init_unpack();
    init_struct();
    init_stream();
    init_iterators();
    init_unpack();
    nativeAccelerationDisabled = process.env.MSGPACKR_NATIVE_ACCELERATION_DISABLED !== void 0 && process.env.MSGPACKR_NATIVE_ACCELERATION_DISABLED.toLowerCase() === "true";
    if (!nativeAccelerationDisabled) {
      let extractor;
      try {
        if (typeof __require == "function")
          extractor = require_msgpackr_extract();
        else
          extractor = createRequire(import.meta.url)("msgpackr-extract");
        if (extractor)
          setExtractor(extractor.extractStrings);
      } catch (error) {
      }
    }
  }
});

// ../store/index/lib/index.js
var lib_exports2 = {};
__export(lib_exports2, {
  StoreIndex: () => StoreIndex,
  closeAllStoreIndexes: () => closeAllStoreIndexes,
  gitHostedStoreIndexKey: () => gitHostedStoreIndexKey,
  packForStorage: () => packForStorage,
  pickStoreIndexKey: () => pickStoreIndexKey,
  storeIndexKey: () => storeIndexKey
});
import fs5 from "node:fs";
import { createRequire as createRequire2 } from "node:module";
function sqliteRetry(fn) {
  for (let attempt = 0; ; attempt++) {
    try {
      return fn();
    } catch (err) {
      if (isSqliteBusy(err) && attempt < MAX_RETRIES) {
        sleepSync(RETRY_DELAY_MS);
        continue;
      }
      throw err;
    }
  }
}
function isSqliteBusy(err) {
  return (err?.errcode & 255) === SQLITE_BUSY;
}
function sleepSync(ms) {
  Atomics.wait(sleepBuffer, 0, 0, ms);
}
function packForStorage(data) {
  return packr.pack(data);
}
function storeIndexKey(integrity, pkgId) {
  return `${integrity}	${pkgId}`;
}
function gitHostedStoreIndexKey(pkgId, opts2) {
  return storeIndexKey(pkgId, opts2.built ? "built" : "not-built");
}
function pickStoreIndexKey(resolution, pkgId, opts2) {
  if (resolution.gitHosted || !resolution.integrity) {
    return gitHostedStoreIndexKey(pkgId, opts2);
  }
  return storeIndexKey(resolution.integrity, pkgId);
}
function closeAllStoreIndexes() {
  for (const si of openInstances) {
    si.close();
  }
}
var req, DatabaseSync, packr, SQLITE_BUSY, RETRY_DELAY_MS, MAX_RETRIES, sleepBuffer, openInstances, StoreIndex;
var init_lib16 = __esm({
  "../store/index/lib/index.js"() {
    "use strict";
    init_node_index();
    req = createRequire2(import.meta.url);
    ({ DatabaseSync } = req("node:sqlite"));
    packr = new Packr({
      useRecords: true,
      moreTypes: true
    });
    SQLITE_BUSY = 5;
    RETRY_DELAY_MS = 50;
    MAX_RETRIES = 100;
    sleepBuffer = new Int32Array(new SharedArrayBuffer(4));
    openInstances = /* @__PURE__ */ new Set();
    StoreIndex = class {
      db;
      closed = false;
      pendingWrites = [];
      flushScheduled = false;
      stmtGet;
      stmtSet;
      stmtDel;
      stmtHas;
      stmtAll;
      stmtKeys;
      exitHandler;
      constructor(storeDir) {
        const dbPath = `${storeDir}/index.db`;
        fs5.mkdirSync(storeDir, { recursive: true });
        this.db = new DatabaseSync(dbPath);
        this.db.exec("PRAGMA busy_timeout=5000");
        sqliteRetry(() => {
          this.db.exec("PRAGMA journal_mode=WAL");
          this.db.exec("PRAGMA synchronous=NORMAL");
          this.db.exec("PRAGMA mmap_size=536870912");
          this.db.exec("PRAGMA cache_size=-32000");
          this.db.exec("PRAGMA temp_store=MEMORY");
          this.db.exec("PRAGMA wal_autocheckpoint=10000");
          this.db.exec(`
        CREATE TABLE IF NOT EXISTS package_index (
          key TEXT PRIMARY KEY,
          data BLOB NOT NULL
        ) WITHOUT ROWID
      `);
        });
        this.stmtGet = this.db.prepare("SELECT data FROM package_index WHERE key = ?");
        this.stmtSet = this.db.prepare("INSERT OR REPLACE INTO package_index (key, data) VALUES (?, ?)");
        this.stmtDel = this.db.prepare("DELETE FROM package_index WHERE key = ?");
        this.stmtHas = this.db.prepare("SELECT 1 FROM package_index WHERE key = ?");
        this.stmtAll = this.db.prepare("SELECT key, data FROM package_index");
        this.stmtKeys = this.db.prepare("SELECT key FROM package_index");
        this.exitHandler = () => this.close();
        const currentMax = process.getMaxListeners();
        if (currentMax !== 0 && currentMax < openInstances.size + 11) {
          process.setMaxListeners(Math.max(currentMax + 10, openInstances.size + 11));
        }
        process.on("exit", this.exitHandler);
        openInstances.add(this);
      }
      get(key) {
        const row = sqliteRetry(() => this.stmtGet.get(key));
        if (row) {
          return packr.unpack(row.data);
        }
        return void 0;
      }
      /**
       * Get the raw msgpack-encoded buffer for a key without decoding.
       */
      getRaw(key) {
        const row = sqliteRetry(() => this.stmtGet.get(key));
        return row?.data;
      }
      set(key, data) {
        const buffer3 = packr.pack(data);
        sqliteRetry(() => {
          this.stmtSet.run(key, buffer3);
        });
      }
      delete(key) {
        let result2;
        sqliteRetry(() => {
          result2 = this.stmtDel.run(key);
        });
        return result2.changes > 0;
      }
      has(key) {
        return sqliteRetry(() => this.stmtHas.get(key)) != null;
      }
      /**
       * Iterate over all index entries.
       * Yields [key, data] pairs where key is `integrity\tpkgId`.
       */
      *entries() {
        for (const row of this.stmtAll.iterate()) {
          yield [row.key, packr.unpack(row.data)];
        }
      }
      /**
       * Iterate over all index keys without decoding values.
       * Much faster than entries() when only keys are needed.
       */
      *keys() {
        for (const row of this.stmtKeys.iterate()) {
          yield row.key;
        }
      }
      /**
       * Queue pre-packed writes to be flushed on the next tick.
       * Used by the fetch phase for throughput.
       */
      queueWrites(writes) {
        for (const w of writes) {
          this.pendingWrites.push(w);
        }
        if (!this.flushScheduled) {
          this.flushScheduled = true;
          process.nextTick(() => this.flush());
        }
      }
      /**
       * Flush all pending queued writes immediately.
       */
      flush() {
        this.flushScheduled = false;
        if (this.pendingWrites.length === 0)
          return;
        this.setRawMany(this.pendingWrites);
        this.pendingWrites = [];
      }
      /**
       * Write multiple pre-packed entries in a single transaction.
       * The buffers must already be msgpack-encoded.
       */
      setRawMany(entries) {
        if (this.closed || entries.length === 0)
          return;
        if (entries.length === 1) {
          sqliteRetry(() => {
            this.stmtSet.run(entries[0].key, entries[0].buffer);
          });
          return;
        }
        sqliteRetry(() => {
          this.db.exec("BEGIN IMMEDIATE");
          let committed = false;
          try {
            for (const { key, buffer: buffer3 } of entries) {
              this.stmtSet.run(key, buffer3);
            }
            this.db.exec("COMMIT");
            committed = true;
          } finally {
            if (!committed) {
              try {
                this.db.exec("ROLLBACK");
              } catch {
              }
            }
          }
        });
      }
      /**
       * Delete multiple index entries in a single transaction,
       * then VACUUM to reclaim disk space.
       */
      deleteMany(keys4) {
        if (keys4.length === 0)
          return;
        if (keys4.length === 1) {
          this.delete(keys4[0]);
          this.db.exec("VACUUM");
          return;
        }
        sqliteRetry(() => {
          this.db.exec("BEGIN IMMEDIATE");
          let committed = false;
          try {
            for (const key of keys4) {
              this.stmtDel.run(key);
            }
            this.db.exec("COMMIT");
            committed = true;
          } finally {
            if (!committed) {
              try {
                this.db.exec("ROLLBACK");
              } catch {
              }
            }
          }
        });
        this.db.exec("VACUUM");
      }
      checkpoint() {
        this.flush();
        sqliteRetry(() => {
          this.db.exec("PRAGMA wal_checkpoint(TRUNCATE)");
        });
      }
      close() {
        if (this.closed)
          return;
        this.flush();
        this.closed = true;
        openInstances.delete(this);
        process.removeListener("exit", this.exitHandler);
        try {
          this.db.exec("PRAGMA optimize");
        } catch {
        }
        try {
          this.db.close();
        } catch {
        }
      }
    };
  }
});

// ../workspace/range-resolver/lib/index.js
function resolveWorkspaceRange(range, versions) {
  if (range === "*" || range === "^" || range === "~" || range === "") {
    return import_semver3.default.maxSatisfying(versions, "*", {
      includePrerelease: true
    });
  }
  return import_semver3.default.maxSatisfying(versions, range, {
    loose: true
  });
}
var import_semver3;
var init_lib17 = __esm({
  "../workspace/range-resolver/lib/index.js"() {
    "use strict";
    import_semver3 = __toESM(require_semver2(), 1);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/lru-cache/11.5.0/723b3a48f3bbb7691037228742735038d3a8879a67eda9501d5033aec3140183/node_modules/lru-cache/dist/esm/node/index.min.js
import { tracingChannel as G, channel as P } from "node:diagnostics_channel";
var S, W, L, D, U, M, k, H, T, j, O, R, I;
var init_index_min = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/lru-cache/11.5.0/723b3a48f3bbb7691037228742735038d3a8879a67eda9501d5033aec3140183/node_modules/lru-cache/dist/esm/node/index.min.js"() {
    S = P("lru-cache:metrics");
    W = G("lru-cache");
    L = typeof performance == "object" && performance && typeof performance.now == "function" ? performance : Date;
    D = () => S.hasSubscribers || W.hasSubscribers;
    U = /* @__PURE__ */ new Set();
    M = typeof process == "object" && process ? process : {};
    k = (u4, e, t2, i2) => {
      typeof M.emitWarning == "function" ? M.emitWarning(u4, e, t2, i2) : console.error(`[${t2}] ${e}: ${u4}`);
    };
    H = (u4) => !U.has(u4);
    T = (u4) => !!u4 && u4 === Math.floor(u4) && u4 > 0 && isFinite(u4);
    j = (u4) => T(u4) ? u4 <= Math.pow(2, 8) ? Uint8Array : u4 <= Math.pow(2, 16) ? Uint16Array : u4 <= Math.pow(2, 32) ? Uint32Array : u4 <= Number.MAX_SAFE_INTEGER ? O : null : null;
    O = class extends Array {
      constructor(e) {
        super(e), this.fill(0);
      }
    };
    R = class u {
      heap;
      length;
      static #o = false;
      static create(e) {
        let t2 = j(e);
        if (!t2) return [];
        u.#o = true;
        let i2 = new u(e, t2);
        return u.#o = false, i2;
      }
      constructor(e, t2) {
        if (!u.#o) throw new TypeError("instantiate Stack using Stack.create(n)");
        this.heap = new t2(e), this.length = 0;
      }
      push(e) {
        this.heap[this.length++] = e;
      }
      pop() {
        return this.heap[--this.length];
      }
    };
    I = class u2 {
      #o;
      #c;
      #S;
      #O;
      #w;
      #M;
      #I;
      #m;
      get perf() {
        return this.#m;
      }
      ttl;
      ttlResolution;
      ttlAutopurge;
      updateAgeOnGet;
      updateAgeOnHas;
      allowStale;
      noDisposeOnSet;
      noUpdateTTL;
      maxEntrySize;
      sizeCalculation;
      noDeleteOnFetchRejection;
      noDeleteOnStaleGet;
      allowStaleOnFetchAbort;
      allowStaleOnFetchRejection;
      ignoreFetchAbort;
      backgroundFetchSize;
      #n;
      #b;
      #s;
      #i;
      #t;
      #l;
      #u;
      #a;
      #h;
      #y;
      #r;
      #_;
      #F;
      #d;
      #g;
      #T;
      #U;
      #f;
      #x;
      static unsafeExposeInternals(e) {
        return { starts: e.#F, ttls: e.#d, autopurgeTimers: e.#g, sizes: e.#_, keyMap: e.#s, keyList: e.#i, valList: e.#t, next: e.#l, prev: e.#u, get head() {
          return e.#a;
        }, get tail() {
          return e.#h;
        }, free: e.#y, isBackgroundFetch: (t2) => e.#e(t2), backgroundFetch: (t2, i2, s, n2) => e.#P(t2, i2, s, n2), moveToTail: (t2) => e.#L(t2), indexes: (t2) => e.#A(t2), rindexes: (t2) => e.#z(t2), isStale: (t2) => e.#p(t2) };
      }
      get max() {
        return this.#o;
      }
      get maxSize() {
        return this.#c;
      }
      get calculatedSize() {
        return this.#b;
      }
      get size() {
        return this.#n;
      }
      get fetchMethod() {
        return this.#M;
      }
      get memoMethod() {
        return this.#I;
      }
      get dispose() {
        return this.#S;
      }
      get onInsert() {
        return this.#O;
      }
      get disposeAfter() {
        return this.#w;
      }
      constructor(e) {
        let { max: t2 = 0, ttl: i2, ttlResolution: s = 1, ttlAutopurge: n2, updateAgeOnGet: r, updateAgeOnHas: h2, allowStale: a2, dispose: o2, onInsert: d, disposeAfter: y, noDisposeOnSet: _, noUpdateTTL: c3, maxSize: g = 0, maxEntrySize: f = 0, sizeCalculation: b, fetchMethod: l, memoMethod: w, noDeleteOnFetchRejection: F, noDeleteOnStaleGet: m, allowStaleOnFetchRejection: p, allowStaleOnFetchAbort: A, ignoreFetchAbort: z, backgroundFetchSize: C = 1, perf: E } = e;
        if (this.backgroundFetchSize = C, E !== void 0 && typeof E?.now != "function") throw new TypeError("perf option must have a now() method if specified");
        if (this.#m = E ?? L, t2 !== 0 && !T(t2)) throw new TypeError("max option must be a nonnegative integer");
        let v = t2 ? j(t2) : Array;
        if (!v) throw new Error("invalid max value: " + t2);
        if (this.#o = t2, this.#c = g, this.maxEntrySize = f || this.#c, this.sizeCalculation = b, this.sizeCalculation) {
          if (!this.#c && !this.maxEntrySize) throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");
          if (typeof this.sizeCalculation != "function") throw new TypeError("sizeCalculation set to non-function");
        }
        if (w !== void 0 && typeof w != "function") throw new TypeError("memoMethod must be a function if defined");
        if (this.#I = w, l !== void 0 && typeof l != "function") throw new TypeError("fetchMethod must be a function if specified");
        if (this.#M = l, this.#U = !!l, this.#s = /* @__PURE__ */ new Map(), this.#i = Array.from({ length: t2 }).fill(void 0), this.#t = Array.from({ length: t2 }).fill(void 0), this.#l = new v(t2), this.#u = new v(t2), this.#a = 0, this.#h = 0, this.#y = R.create(t2), this.#n = 0, this.#b = 0, typeof o2 == "function" && (this.#S = o2), typeof d == "function" && (this.#O = d), typeof y == "function" ? (this.#w = y, this.#r = []) : (this.#w = void 0, this.#r = void 0), this.#T = !!this.#S, this.#x = !!this.#O, this.#f = !!this.#w, this.noDisposeOnSet = !!_, this.noUpdateTTL = !!c3, this.noDeleteOnFetchRejection = !!F, this.allowStaleOnFetchRejection = !!p, this.allowStaleOnFetchAbort = !!A, this.ignoreFetchAbort = !!z, this.maxEntrySize !== 0) {
          if (this.#c !== 0 && !T(this.#c)) throw new TypeError("maxSize must be a positive integer if specified");
          if (!T(this.maxEntrySize)) throw new TypeError("maxEntrySize must be a positive integer if specified");
          this.#X();
        }
        if (this.allowStale = !!a2, this.noDeleteOnStaleGet = !!m, this.updateAgeOnGet = !!r, this.updateAgeOnHas = !!h2, this.ttlResolution = T(s) || s === 0 ? s : 1, this.ttlAutopurge = !!n2, this.ttl = i2 || 0, this.ttl) {
          if (!T(this.ttl)) throw new TypeError("ttl must be a positive integer if specified");
          this.#k();
        }
        if (this.#o === 0 && this.ttl === 0 && this.#c === 0) throw new TypeError("At least one of max, maxSize, or ttl is required");
        if (!this.ttlAutopurge && !this.#o && !this.#c) {
          let x = "LRU_CACHE_UNBOUNDED";
          H(x) && (U.add(x), k("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.", "UnboundedCacheWarning", x, u2));
        }
      }
      getRemainingTTL(e) {
        return this.#s.has(e) ? 1 / 0 : 0;
      }
      #k() {
        let e = new O(this.#o), t2 = new O(this.#o);
        this.#d = e, this.#F = t2;
        let i2 = this.ttlAutopurge ? Array.from({ length: this.#o }) : void 0;
        this.#g = i2, this.#H = (h2, a2, o2 = this.#m.now()) => {
          t2[h2] = a2 !== 0 ? o2 : 0, e[h2] = a2, s(h2, a2);
        }, this.#D = (h2) => {
          t2[h2] = e[h2] !== 0 ? this.#m.now() : 0, s(h2, e[h2]);
        };
        let s = this.ttlAutopurge ? (h2, a2) => {
          if (i2?.[h2] && (clearTimeout(i2[h2]), i2[h2] = void 0), a2 && a2 !== 0 && i2) {
            let o2 = setTimeout(() => {
              this.#p(h2) && this.#E(this.#i[h2], "expire");
            }, a2 + 1);
            o2.unref && o2.unref(), i2[h2] = o2;
          }
        } : () => {
        };
        this.#v = (h2, a2) => {
          if (e[a2]) {
            let o2 = e[a2], d = t2[a2];
            if (!o2 || !d) return;
            h2.ttl = o2, h2.start = d, h2.now = n2 || r();
            let y = h2.now - d;
            h2.remainingTTL = o2 - y;
          }
        };
        let n2 = 0, r = () => {
          let h2 = this.#m.now();
          if (this.ttlResolution > 0) {
            n2 = h2;
            let a2 = setTimeout(() => n2 = 0, this.ttlResolution);
            a2.unref && a2.unref();
          }
          return h2;
        };
        this.getRemainingTTL = (h2) => {
          let a2 = this.#s.get(h2);
          if (a2 === void 0) return 0;
          let o2 = e[a2], d = t2[a2];
          if (!o2 || !d) return 1 / 0;
          let y = (n2 || r()) - d;
          return o2 - y;
        }, this.#p = (h2) => {
          let a2 = t2[h2], o2 = e[h2];
          return !!o2 && !!a2 && (n2 || r()) - a2 > o2;
        };
      }
      #D = () => {
      };
      #v = () => {
      };
      #H = () => {
      };
      #p = () => false;
      #X() {
        let e = new O(this.#o);
        this.#b = 0, this.#_ = e, this.#R = (t2) => {
          this.#b -= e[t2], e[t2] = 0;
        }, this.#N = (t2, i2, s, n2) => {
          if (!T(s)) {
            if (this.#e(i2)) return this.backgroundFetchSize;
            if (n2) {
              if (typeof n2 != "function") throw new TypeError("sizeCalculation must be a function");
              if (s = n2(i2, t2), !T(s)) throw new TypeError("sizeCalculation return invalid (expect positive integer)");
            } else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");
          }
          return s;
        }, this.#j = (t2, i2, s) => {
          if (e[t2] = i2, this.#c) {
            let n2 = this.#c - e[t2];
            for (; this.#b > n2; ) this.#G(true);
          }
          this.#b += e[t2], s && (s.entrySize = i2, s.totalCalculatedSize = this.#b);
        };
      }
      #R = (e) => {
      };
      #j = (e, t2, i2) => {
      };
      #N = (e, t2, i2, s) => {
        if (i2 || s) throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");
        return 0;
      };
      *#A({ allowStale: e = this.allowStale } = {}) {
        if (this.#n) for (let t2 = this.#h; this.#V(t2) && ((e || !this.#p(t2)) && (yield t2), t2 !== this.#a); ) t2 = this.#u[t2];
      }
      *#z({ allowStale: e = this.allowStale } = {}) {
        if (this.#n) for (let t2 = this.#a; this.#V(t2) && ((e || !this.#p(t2)) && (yield t2), t2 !== this.#h); ) t2 = this.#l[t2];
      }
      #V(e) {
        return e !== void 0 && this.#s.get(this.#i[e]) === e;
      }
      *entries() {
        for (let e of this.#A()) this.#t[e] !== void 0 && this.#i[e] !== void 0 && !this.#e(this.#t[e]) && (yield [this.#i[e], this.#t[e]]);
      }
      *rentries() {
        for (let e of this.#z()) this.#t[e] !== void 0 && this.#i[e] !== void 0 && !this.#e(this.#t[e]) && (yield [this.#i[e], this.#t[e]]);
      }
      *keys() {
        for (let e of this.#A()) {
          let t2 = this.#i[e];
          t2 !== void 0 && !this.#e(this.#t[e]) && (yield t2);
        }
      }
      *rkeys() {
        for (let e of this.#z()) {
          let t2 = this.#i[e];
          t2 !== void 0 && !this.#e(this.#t[e]) && (yield t2);
        }
      }
      *values() {
        for (let e of this.#A()) this.#t[e] !== void 0 && !this.#e(this.#t[e]) && (yield this.#t[e]);
      }
      *rvalues() {
        for (let e of this.#z()) this.#t[e] !== void 0 && !this.#e(this.#t[e]) && (yield this.#t[e]);
      }
      [Symbol.iterator]() {
        return this.entries();
      }
      [Symbol.toStringTag] = "LRUCache";
      find(e, t2 = {}) {
        for (let i2 of this.#A()) {
          let s = this.#t[i2], n2 = this.#e(s) ? s.__staleWhileFetching : s;
          if (n2 !== void 0 && e(n2, this.#i[i2], this)) return this.#C(this.#i[i2], t2);
        }
      }
      forEach(e, t2 = this) {
        for (let i2 of this.#A()) {
          let s = this.#t[i2], n2 = this.#e(s) ? s.__staleWhileFetching : s;
          n2 !== void 0 && e.call(t2, n2, this.#i[i2], this);
        }
      }
      rforEach(e, t2 = this) {
        for (let i2 of this.#z()) {
          let s = this.#t[i2], n2 = this.#e(s) ? s.__staleWhileFetching : s;
          n2 !== void 0 && e.call(t2, n2, this.#i[i2], this);
        }
      }
      purgeStale() {
        let e = false;
        for (let t2 of this.#z({ allowStale: true })) this.#p(t2) && (this.#E(this.#i[t2], "expire"), e = true);
        return e;
      }
      info(e) {
        let t2 = this.#s.get(e);
        if (t2 === void 0) return;
        let i2 = this.#t[t2], s = this.#e(i2) ? i2.__staleWhileFetching : i2;
        if (s === void 0) return;
        let n2 = { value: s };
        if (this.#d && this.#F) {
          let r = this.#d[t2], h2 = this.#F[t2];
          if (r && h2) {
            let a2 = r - (this.#m.now() - h2);
            n2.ttl = a2, n2.start = Date.now();
          }
        }
        return this.#_ && (n2.size = this.#_[t2]), n2;
      }
      dump() {
        let e = [];
        for (let t2 of this.#A({ allowStale: true })) {
          let i2 = this.#i[t2], s = this.#t[t2], n2 = this.#e(s) ? s.__staleWhileFetching : s;
          if (n2 === void 0 || i2 === void 0) continue;
          let r = { value: n2 };
          if (this.#d && this.#F) {
            r.ttl = this.#d[t2];
            let h2 = this.#m.now() - this.#F[t2];
            r.start = Math.floor(Date.now() - h2);
          }
          this.#_ && (r.size = this.#_[t2]), e.unshift([i2, r]);
        }
        return e;
      }
      load(e) {
        this.clear();
        for (let [t2, i2] of e) {
          if (i2.start) {
            let s = Date.now() - i2.start;
            i2.start = this.#m.now() - s;
          }
          this.#W(t2, i2.value, i2);
        }
      }
      set(e, t2, i2 = {}) {
        let { status: s = S.hasSubscribers ? {} : void 0 } = i2;
        i2.status = s, s && (s.op = "set", s.key = e, t2 !== void 0 && (s.value = t2), s.cache = this);
        let n2 = this.#W(e, t2, i2);
        return s && S.hasSubscribers && S.publish(s), n2;
      }
      #W(e, t2, i2, s) {
        let { ttl: n2 = this.ttl, start: r, noDisposeOnSet: h2 = this.noDisposeOnSet, sizeCalculation: a2 = this.sizeCalculation, status: o2 } = i2, d = this.#e(t2);
        if (t2 === void 0) return o2 && (o2.set = "deleted"), this.delete(e), this;
        let { noUpdateTTL: y = this.noUpdateTTL } = i2;
        o2 && !d && (o2.value = t2);
        let _ = this.#N(e, t2, i2.size || 0, a2, o2);
        if (this.maxEntrySize && _ > this.maxEntrySize) return this.#E(e, "set"), o2 && (o2.set = "miss", o2.maxEntrySizeExceeded = true), this;
        let c3 = this.#n === 0 ? void 0 : this.#s.get(e);
        if (c3 === void 0) c3 = this.#n === 0 ? this.#h : this.#y.length !== 0 ? this.#y.pop() : this.#n === this.#o ? this.#G(false) : this.#n, this.#i[c3] = e, this.#t[c3] = t2, this.#s.set(e, c3), this.#l[this.#h] = c3, this.#u[c3] = this.#h, this.#h = c3, this.#n++, this.#j(c3, _, o2), o2 && (o2.set = "add"), y = false, this.#x && !d && this.#O?.(t2, e, "add");
        else {
          this.#L(c3);
          let g = this.#t[c3];
          if (t2 !== g) {
            if (!h2) if (this.#e(g)) {
              g !== s && g.__abortController.abort(new Error("replaced"));
              let { __staleWhileFetching: f } = g;
              f !== void 0 && f !== t2 && (this.#T && this.#S?.(f, e, "set"), this.#f && this.#r?.push([f, e, "set"]));
            } else this.#T && this.#S?.(g, e, "set"), this.#f && this.#r?.push([g, e, "set"]);
            if (this.#R(c3), this.#j(c3, _, o2), this.#t[c3] = t2, !d) {
              let f = g && this.#e(g) ? g.__staleWhileFetching : g, b = f === void 0 ? "add" : t2 !== f ? "replace" : "update";
              o2 && (o2.set = b, f !== void 0 && (o2.oldValue = f)), this.#x && this.onInsert?.(t2, e, b);
            }
          } else d || (o2 && (o2.set = "update"), this.#x && this.onInsert?.(t2, e, "update"));
        }
        if (n2 !== 0 && !this.#d && this.#k(), this.#d && (y || this.#H(c3, n2, r), o2 && this.#v(o2, c3)), !h2 && this.#f && this.#r) {
          let g = this.#r, f;
          for (; f = g?.shift(); ) this.#w?.(...f);
        }
        return this;
      }
      pop() {
        try {
          for (; this.#n; ) {
            let e = this.#t[this.#a];
            if (this.#G(true), this.#e(e)) {
              if (e.__staleWhileFetching) return e.__staleWhileFetching;
            } else if (e !== void 0) return e;
          }
        } finally {
          if (this.#f && this.#r) {
            let e = this.#r, t2;
            for (; t2 = e?.shift(); ) this.#w?.(...t2);
          }
        }
      }
      #G(e) {
        let t2 = this.#a, i2 = this.#i[t2], s = this.#t[t2], n2 = this.#e(s);
        n2 && s.__abortController.abort(new Error("evicted"));
        let r = n2 ? s.__staleWhileFetching : s;
        return (this.#T || this.#f) && r !== void 0 && (this.#T && this.#S?.(r, i2, "evict"), this.#f && this.#r?.push([r, i2, "evict"])), this.#R(t2), this.#g?.[t2] && (clearTimeout(this.#g[t2]), this.#g[t2] = void 0), e && (this.#i[t2] = void 0, this.#t[t2] = void 0, this.#y.push(t2)), this.#n === 1 ? (this.#a = this.#h = 0, this.#y.length = 0) : this.#a = this.#l[t2], this.#s.delete(i2), this.#n--, t2;
      }
      has(e, t2 = {}) {
        let { status: i2 = S.hasSubscribers ? {} : void 0 } = t2;
        t2.status = i2, i2 && (i2.op = "has", i2.key = e, i2.cache = this);
        let s = this.#Y(e, t2);
        return S.hasSubscribers && S.publish(i2), s;
      }
      #Y(e, t2 = {}) {
        let { updateAgeOnHas: i2 = this.updateAgeOnHas, status: s } = t2, n2 = this.#s.get(e);
        if (n2 !== void 0) {
          let r = this.#t[n2];
          if (this.#e(r) && r.__staleWhileFetching === void 0) return false;
          if (this.#p(n2)) s && (s.has = "stale", this.#v(s, n2));
          else return i2 && this.#D(n2), s && (s.has = "hit", this.#v(s, n2)), true;
        } else s && (s.has = "miss");
        return false;
      }
      peek(e, t2 = {}) {
        let { status: i2 = D() ? {} : void 0 } = t2;
        i2 && (i2.op = "peek", i2.key = e, i2.cache = this), t2.status = i2;
        let s = this.#J(e, t2);
        return S.hasSubscribers && S.publish(i2), s;
      }
      #J(e, t2) {
        let { status: i2, allowStale: s = this.allowStale } = t2, n2 = this.#s.get(e);
        if (n2 === void 0 || !s && this.#p(n2)) {
          i2 && (i2.peek = n2 === void 0 ? "miss" : "stale");
          return;
        }
        let r = this.#t[n2], h2 = this.#e(r) ? r.__staleWhileFetching : r;
        return i2 && (h2 !== void 0 ? (i2.peek = "hit", i2.value = h2) : i2.peek = "miss"), h2;
      }
      #P(e, t2, i2, s) {
        let n2 = t2 === void 0 ? void 0 : this.#t[t2];
        if (this.#e(n2)) return n2;
        let r = new AbortController(), { signal: h2 } = i2;
        h2?.addEventListener("abort", () => r.abort(h2.reason), { signal: r.signal });
        let a2 = { signal: r.signal, options: i2, context: s }, o2 = (f, b = false) => {
          let { aborted: l } = r.signal, w = i2.ignoreFetchAbort && f !== void 0, F = i2.ignoreFetchAbort || !!(i2.allowStaleOnFetchAbort && f !== void 0);
          if (i2.status && (l && !b ? (i2.status.fetchAborted = true, i2.status.fetchError = r.signal.reason, w && (i2.status.fetchAbortIgnored = true)) : i2.status.fetchResolved = true), l && !w && !b) return y(r.signal.reason, F);
          let m = c3, p = this.#t[t2];
          return (p === c3 || p === void 0 && w && b) && (f === void 0 ? m.__staleWhileFetching !== void 0 ? this.#t[t2] = m.__staleWhileFetching : this.#E(e, "fetch") : (i2.status && (i2.status.fetchUpdated = true), this.#W(e, f, a2.options, m))), f;
        }, d = (f) => (i2.status && (i2.status.fetchRejected = true, i2.status.fetchError = f), y(f, false)), y = (f, b) => {
          let { aborted: l } = r.signal, w = l && i2.allowStaleOnFetchAbort, F = w || i2.allowStaleOnFetchRejection, m = F || i2.noDeleteOnFetchRejection, p = c3;
          if (this.#t[t2] === c3 && (!m || !b && p.__staleWhileFetching === void 0 ? this.#E(e, "fetch") : w || (this.#t[t2] = p.__staleWhileFetching)), F) return i2.status && p.__staleWhileFetching !== void 0 && (i2.status.returnedStale = true), p.__staleWhileFetching;
          if (p.__returned === p) throw f;
        }, _ = (f, b) => {
          let l = this.#M?.(e, n2, a2);
          r.signal.addEventListener("abort", () => {
            (!i2.ignoreFetchAbort || i2.allowStaleOnFetchAbort) && (f(void 0), i2.allowStaleOnFetchAbort && (f = (w) => o2(w, true)));
          }), l && l instanceof Promise ? l.then((w) => f(w === void 0 ? void 0 : w), b) : l !== void 0 && f(l);
        };
        i2.status && (i2.status.fetchDispatched = true);
        let c3 = new Promise(_).then(o2, d), g = Object.assign(c3, { __abortController: r, __staleWhileFetching: n2, __returned: void 0 });
        return t2 === void 0 ? (this.#W(e, g, { ...a2.options, status: void 0 }), t2 = this.#s.get(e)) : this.#t[t2] = g, g;
      }
      #e(e) {
        if (!this.#U) return false;
        let t2 = e;
        return !!t2 && t2 instanceof Promise && t2.hasOwnProperty("__staleWhileFetching") && t2.__abortController instanceof AbortController;
      }
      fetch(e, t2 = {}) {
        let i2 = W.hasSubscribers, { status: s = D() ? {} : void 0 } = t2;
        t2.status = s, s && t2.context && (s.context = t2.context);
        let n2 = this.#B(e, t2);
        return s && i2 && (s.trace = true, W.tracePromise(() => n2, s).catch(() => {
        })), n2;
      }
      async #B(e, t2 = {}) {
        let { allowStale: i2 = this.allowStale, updateAgeOnGet: s = this.updateAgeOnGet, noDeleteOnStaleGet: n2 = this.noDeleteOnStaleGet, ttl: r = this.ttl, noDisposeOnSet: h2 = this.noDisposeOnSet, size: a2 = 0, sizeCalculation: o2 = this.sizeCalculation, noUpdateTTL: d = this.noUpdateTTL, noDeleteOnFetchRejection: y = this.noDeleteOnFetchRejection, allowStaleOnFetchRejection: _ = this.allowStaleOnFetchRejection, ignoreFetchAbort: c3 = this.ignoreFetchAbort, allowStaleOnFetchAbort: g = this.allowStaleOnFetchAbort, context: f, forceRefresh: b = false, status: l, signal: w } = t2;
        if (l && (l.op = "fetch", l.key = e, b && (l.forceRefresh = true), l.cache = this), !this.#U) return l && (l.fetch = "get"), this.#C(e, { allowStale: i2, updateAgeOnGet: s, noDeleteOnStaleGet: n2, status: l });
        let F = { allowStale: i2, updateAgeOnGet: s, noDeleteOnStaleGet: n2, ttl: r, noDisposeOnSet: h2, size: a2, sizeCalculation: o2, noUpdateTTL: d, noDeleteOnFetchRejection: y, allowStaleOnFetchRejection: _, allowStaleOnFetchAbort: g, ignoreFetchAbort: c3, status: l, signal: w }, m = this.#s.get(e);
        if (m === void 0) {
          l && (l.fetch = "miss");
          let p = this.#P(e, m, F, f);
          return p.__returned = p;
        } else {
          let p = this.#t[m];
          if (this.#e(p)) {
            let v = i2 && p.__staleWhileFetching !== void 0;
            return l && (l.fetch = "inflight", v && (l.returnedStale = true)), v ? p.__staleWhileFetching : p.__returned = p;
          }
          let A = this.#p(m);
          if (!b && !A) return l && (l.fetch = "hit"), this.#L(m), s && this.#D(m), l && this.#v(l, m), p;
          let z = this.#P(e, m, F, f), E = z.__staleWhileFetching !== void 0 && i2;
          return l && (l.fetch = A ? "stale" : "refresh", E && A && (l.returnedStale = true)), E ? z.__staleWhileFetching : z.__returned = z;
        }
      }
      forceFetch(e, t2 = {}) {
        let i2 = W.hasSubscribers, { status: s = D() ? {} : void 0 } = t2;
        t2.status = s, s && t2.context && (s.context = t2.context);
        let n2 = this.#K(e, t2);
        return s && i2 && (s.trace = true, W.tracePromise(() => n2, s).catch(() => {
        })), n2;
      }
      async #K(e, t2 = {}) {
        let i2 = await this.#B(e, t2);
        if (i2 === void 0) throw new Error("fetch() returned undefined");
        return i2;
      }
      memo(e, t2 = {}) {
        let { status: i2 = S.hasSubscribers ? {} : void 0 } = t2;
        t2.status = i2, i2 && (i2.op = "memo", i2.key = e, t2.context && (i2.context = t2.context), i2.cache = this);
        let s = this.#Q(e, t2);
        return i2 && (i2.value = s), S.hasSubscribers && S.publish(i2), s;
      }
      #Q(e, t2 = {}) {
        let i2 = this.#I;
        if (!i2) throw new Error("no memoMethod provided to constructor");
        let { context: s, status: n2, forceRefresh: r, ...h2 } = t2;
        n2 && r && (n2.forceRefresh = true);
        let a2 = this.#C(e, h2), o2 = r || a2 === void 0;
        if (n2 && (n2.memo = o2 ? "miss" : "hit", o2 || (n2.value = a2)), !o2) return a2;
        let d = i2(e, a2, { options: h2, context: s });
        return n2 && (n2.value = d), this.#W(e, d, h2), d;
      }
      get(e, t2 = {}) {
        let { status: i2 = S.hasSubscribers ? {} : void 0 } = t2;
        t2.status = i2, i2 && (i2.op = "get", i2.key = e, i2.cache = this);
        let s = this.#C(e, t2);
        return i2 && (s !== void 0 && (i2.value = s), S.hasSubscribers && S.publish(i2)), s;
      }
      #C(e, t2 = {}) {
        let { allowStale: i2 = this.allowStale, updateAgeOnGet: s = this.updateAgeOnGet, noDeleteOnStaleGet: n2 = this.noDeleteOnStaleGet, status: r } = t2, h2 = this.#s.get(e);
        if (h2 === void 0) {
          r && (r.get = "miss");
          return;
        }
        let a2 = this.#t[h2], o2 = this.#e(a2);
        return r && this.#v(r, h2), this.#p(h2) ? o2 ? (r && (r.get = "stale-fetching"), i2 && a2.__staleWhileFetching !== void 0 ? (r && (r.returnedStale = true), a2.__staleWhileFetching) : void 0) : (n2 || this.#E(e, "expire"), r && (r.get = "stale"), i2 ? (r && (r.returnedStale = true), a2) : void 0) : (r && (r.get = o2 ? "fetching" : "hit"), this.#L(h2), s && this.#D(h2), o2 ? a2.__staleWhileFetching : a2);
      }
      #$(e, t2) {
        this.#u[t2] = e, this.#l[e] = t2;
      }
      #L(e) {
        e !== this.#h && (e === this.#a ? this.#a = this.#l[e] : this.#$(this.#u[e], this.#l[e]), this.#$(this.#h, e), this.#h = e);
      }
      delete(e) {
        return this.#E(e, "delete");
      }
      #E(e, t2) {
        S.hasSubscribers && S.publish({ op: "delete", delete: t2, key: e, cache: this });
        let i2 = false;
        if (this.#n !== 0) {
          let s = this.#s.get(e);
          if (s !== void 0) if (this.#g?.[s] && (clearTimeout(this.#g?.[s]), this.#g[s] = void 0), i2 = true, this.#n === 1) this.#q(t2);
          else {
            this.#R(s);
            let n2 = this.#t[s];
            if (this.#e(n2) ? n2.__abortController.abort(new Error("deleted")) : (this.#T || this.#f) && (this.#T && this.#S?.(n2, e, t2), this.#f && this.#r?.push([n2, e, t2])), this.#s.delete(e), this.#i[s] = void 0, this.#t[s] = void 0, s === this.#h) this.#h = this.#u[s];
            else if (s === this.#a) this.#a = this.#l[s];
            else {
              let r = this.#u[s];
              this.#l[r] = this.#l[s];
              let h2 = this.#l[s];
              this.#u[h2] = this.#u[s];
            }
            this.#n--, this.#y.push(s);
          }
        }
        if (this.#f && this.#r?.length) {
          let s = this.#r, n2;
          for (; n2 = s?.shift(); ) this.#w?.(...n2);
        }
        return i2;
      }
      clear() {
        return this.#q("delete");
      }
      #q(e) {
        for (let t2 of this.#z({ allowStale: true })) {
          let i2 = this.#t[t2];
          if (this.#e(i2)) i2.__abortController.abort(new Error("deleted"));
          else {
            let s = this.#i[t2];
            this.#T && this.#S?.(i2, s, e), this.#f && this.#r?.push([i2, s, e]);
          }
        }
        if (this.#s.clear(), this.#t.fill(void 0), this.#i.fill(void 0), this.#d && this.#F) {
          this.#d.fill(0), this.#F.fill(0);
          for (let t2 of this.#g ?? []) t2 !== void 0 && clearTimeout(t2);
          this.#g?.fill(void 0);
        }
        if (this.#_ && this.#_.fill(0), this.#a = 0, this.#h = 0, this.#y.length = 0, this.#b = 0, this.#n = 0, this.#f && this.#r) {
          let t2 = this.#r, i2;
          for (; i2 = t2?.shift(); ) this.#w?.(...i2);
        }
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/normalize-path/3.0.0/8bd6c90af63ae415509b1b410d4c5ab4687532eeedeee5db9400529260362dbf/node_modules/normalize-path/index.js
var require_normalize_path = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/normalize-path/3.0.0/8bd6c90af63ae415509b1b410d4c5ab4687532eeedeee5db9400529260362dbf/node_modules/normalize-path/index.js"(exports2, module2) {
    module2.exports = function(path218, stripTrailing) {
      if (typeof path218 !== "string") {
        throw new TypeError("expected path to be a string");
      }
      if (path218 === "\\" || path218 === "/") return "/";
      var len = path218.length;
      if (len <= 1) return path218;
      var prefix = "";
      if (len > 4 && path218[3] === "\\") {
        var ch = path218[2];
        if ((ch === "?" || ch === ".") && path218.slice(0, 2) === "\\\\") {
          path218 = path218.slice(2);
          prefix = "//";
        }
      }
      var segs = path218.split(/[/\\]+/);
      if (stripTrailing !== false && segs[segs.length - 1] === "") {
        segs.pop();
      }
      return prefix + segs.join("/");
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/mimic-function/5.0.1/42ffd44e2cba19e8e133b2bdc7d5939811fa14bc8061d1a5739a299c53ffa2b6/node_modules/mimic-function/index.js
function mimicFunction(to, from5, { ignoreNonConfigurable = false } = {}) {
  const { name } = to;
  for (const property of Reflect.ownKeys(from5)) {
    copyProperty(to, from5, property, ignoreNonConfigurable);
  }
  changePrototype(to, from5);
  changeToString(to, from5, name);
  return to;
}
var copyProperty, canCopyProperty, changePrototype, wrappedToString, toStringDescriptor, toStringName, changeToString;
var init_mimic_function = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/mimic-function/5.0.1/42ffd44e2cba19e8e133b2bdc7d5939811fa14bc8061d1a5739a299c53ffa2b6/node_modules/mimic-function/index.js"() {
    copyProperty = (to, from5, property, ignoreNonConfigurable) => {
      if (property === "length" || property === "prototype") {
        return;
      }
      if (property === "arguments" || property === "caller") {
        return;
      }
      const toDescriptor = Object.getOwnPropertyDescriptor(to, property);
      const fromDescriptor = Object.getOwnPropertyDescriptor(from5, property);
      if (!canCopyProperty(toDescriptor, fromDescriptor) && ignoreNonConfigurable) {
        return;
      }
      Object.defineProperty(to, property, fromDescriptor);
    };
    canCopyProperty = function(toDescriptor, fromDescriptor) {
      return toDescriptor === void 0 || toDescriptor.configurable || toDescriptor.writable === fromDescriptor.writable && toDescriptor.enumerable === fromDescriptor.enumerable && toDescriptor.configurable === fromDescriptor.configurable && (toDescriptor.writable || toDescriptor.value === fromDescriptor.value);
    };
    changePrototype = (to, from5) => {
      const fromPrototype = Object.getPrototypeOf(from5);
      if (fromPrototype === Object.getPrototypeOf(to)) {
        return;
      }
      Object.setPrototypeOf(to, fromPrototype);
    };
    wrappedToString = (withName, fromBody) => `/* Wrapped ${withName}*/
${fromBody}`;
    toStringDescriptor = Object.getOwnPropertyDescriptor(Function.prototype, "toString");
    toStringName = Object.getOwnPropertyDescriptor(Function.prototype.toString, "name");
    changeToString = (to, from5, name) => {
      const withName = name === "" ? "" : `with ${name.trim()}() `;
      const newToString = wrappedToString.bind(null, withName, from5.toString());
      Object.defineProperty(newToString, "name", toStringName);
      const { writable: writable2, enumerable, configurable } = toStringDescriptor;
      Object.defineProperty(to, "toString", { value: newToString, writable: writable2, enumerable, configurable });
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/p-memoize/8.0.0/5adb6d994fb4aecc14b30402a39518ee0abe25cfa583bc79cca1e4240b7daee1/node_modules/p-memoize/dist/index.js
function pMemoize(fn, options) {
  const defaultCacheKey = ([firstArgument]) => firstArgument;
  const { cacheKey = defaultCacheKey, cache = /* @__PURE__ */ new Map() } = options ?? {};
  const promiseCache = /* @__PURE__ */ new Map();
  const memoized = function(...arguments_) {
    const key = cacheKey(arguments_);
    if (promiseCache.has(key)) {
      return promiseCache.get(key);
    }
    const promise2 = (async () => {
      try {
        if (cache && await cache.has(key)) {
          return await cache.get(key);
        }
        const promise3 = fn.apply(this, arguments_);
        const result2 = await promise3;
        try {
          return result2;
        } finally {
          if (cache) {
            const allow = options?.shouldCache ? await options.shouldCache(result2, { key, argumentsList: arguments_ }) : true;
            if (allow) {
              await cache.set(key, result2);
            }
          }
        }
      } finally {
        promiseCache.delete(key);
      }
    })();
    promiseCache.set(key, promise2);
    return promise2;
  };
  mimicFunction(memoized, fn, {
    ignoreNonConfigurable: true
  });
  cacheStore.set(memoized, cache);
  return memoized;
}
function pMemoizeClear(fn) {
  if (!cacheStore.has(fn)) {
    throw new TypeError("Can't clear a function that was not memoized!");
  }
  const cache = cacheStore.get(fn);
  if (!cache) {
    throw new TypeError("Can't clear a function that doesn't use a cache!");
  }
  if (typeof cache.clear !== "function") {
    throw new TypeError("The cache Map can't be cleared!");
  }
  cache.clear();
}
var cacheStore;
var init_dist = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/p-memoize/8.0.0/5adb6d994fb4aecc14b30402a39518ee0abe25cfa583bc79cca1e4240b7daee1/node_modules/p-memoize/dist/index.js"() {
    init_mimic_function();
    cacheStore = /* @__PURE__ */ new WeakMap();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/F.js
var init_F = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/F.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/T.js
var init_T = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/T.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/__.js
var init__ = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/__.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_isPlaceholder.js
function _isPlaceholder(a2) {
  return a2 != null && typeof a2 === "object" && a2["@@functional/placeholder"] === true;
}
var init_isPlaceholder = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_isPlaceholder.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_curry1.js
function _curry1(fn) {
  return function f1(a2) {
    if (arguments.length === 0 || _isPlaceholder(a2)) {
      return f1;
    } else {
      return fn.apply(this, arguments);
    }
  };
}
var init_curry1 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_curry1.js"() {
    init_isPlaceholder();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_curry2.js
function _curry2(fn) {
  return function f2(a2, b) {
    switch (arguments.length) {
      case 0:
        return f2;
      case 1:
        return _isPlaceholder(a2) ? f2 : _curry1(function(_b) {
          return fn(a2, _b);
        });
      default:
        return _isPlaceholder(a2) && _isPlaceholder(b) ? f2 : _isPlaceholder(a2) ? _curry1(function(_a) {
          return fn(_a, b);
        }) : _isPlaceholder(b) ? _curry1(function(_b) {
          return fn(a2, _b);
        }) : fn(a2, b);
    }
  };
}
var init_curry2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_curry2.js"() {
    init_curry1();
    init_isPlaceholder();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/add.js
var init_add = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/add.js"() {
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_concat.js
function _concat(set1, set2) {
  set1 = set1 || [];
  set2 = set2 || [];
  var idx;
  var len1 = set1.length;
  var len2 = set2.length;
  var result2 = [];
  idx = 0;
  while (idx < len1) {
    result2[result2.length] = set1[idx];
    idx += 1;
  }
  idx = 0;
  while (idx < len2) {
    result2[result2.length] = set2[idx];
    idx += 1;
  }
  return result2;
}
var init_concat = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_concat.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_arity.js
function _arity(n2, fn) {
  switch (n2) {
    case 0:
      return function() {
        return fn.apply(this, arguments);
      };
    case 1:
      return function(a0) {
        return fn.apply(this, arguments);
      };
    case 2:
      return function(a0, a1) {
        return fn.apply(this, arguments);
      };
    case 3:
      return function(a0, a1, a2) {
        return fn.apply(this, arguments);
      };
    case 4:
      return function(a0, a1, a2, a3) {
        return fn.apply(this, arguments);
      };
    case 5:
      return function(a0, a1, a2, a3, a4) {
        return fn.apply(this, arguments);
      };
    case 6:
      return function(a0, a1, a2, a3, a4, a5) {
        return fn.apply(this, arguments);
      };
    case 7:
      return function(a0, a1, a2, a3, a4, a5, a6) {
        return fn.apply(this, arguments);
      };
    case 8:
      return function(a0, a1, a2, a3, a4, a5, a6, a7) {
        return fn.apply(this, arguments);
      };
    case 9:
      return function(a0, a1, a2, a3, a4, a5, a6, a7, a8) {
        return fn.apply(this, arguments);
      };
    case 10:
      return function(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9) {
        return fn.apply(this, arguments);
      };
    default:
      throw new Error("First argument to _arity must be a non-negative integer no greater than ten");
  }
}
var init_arity = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_arity.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_curryN.js
function _curryN(length, received, fn) {
  return function() {
    var combined = [];
    var argsIdx = 0;
    var left = length;
    var combinedIdx = 0;
    while (combinedIdx < received.length || argsIdx < arguments.length) {
      var result2;
      if (combinedIdx < received.length && (!_isPlaceholder(received[combinedIdx]) || argsIdx >= arguments.length)) {
        result2 = received[combinedIdx];
      } else {
        result2 = arguments[argsIdx];
        argsIdx += 1;
      }
      combined[combinedIdx] = result2;
      if (!_isPlaceholder(result2)) {
        left -= 1;
      }
      combinedIdx += 1;
    }
    return left <= 0 ? fn.apply(this, combined) : _arity(left, _curryN(length, combined, fn));
  };
}
var init_curryN = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_curryN.js"() {
    init_arity();
    init_isPlaceholder();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/curryN.js
var curryN, curryN_default;
var init_curryN2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/curryN.js"() {
    init_arity();
    init_curry1();
    init_curry2();
    init_curryN();
    curryN = /* @__PURE__ */ _curry2(function curryN2(length, fn) {
      if (length === 1) {
        return _curry1(fn);
      }
      return _arity(length, _curryN(length, [], fn));
    });
    curryN_default = curryN;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/addIndex.js
var init_addIndex = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/addIndex.js"() {
    init_concat();
    init_curry1();
    init_curryN2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_curry3.js
function _curry3(fn) {
  return function f3(a2, b, c3) {
    switch (arguments.length) {
      case 0:
        return f3;
      case 1:
        return _isPlaceholder(a2) ? f3 : _curry2(function(_b, _c) {
          return fn(a2, _b, _c);
        });
      case 2:
        return _isPlaceholder(a2) && _isPlaceholder(b) ? f3 : _isPlaceholder(a2) ? _curry2(function(_a, _c) {
          return fn(_a, b, _c);
        }) : _isPlaceholder(b) ? _curry2(function(_b, _c) {
          return fn(a2, _b, _c);
        }) : _curry1(function(_c) {
          return fn(a2, b, _c);
        });
      default:
        return _isPlaceholder(a2) && _isPlaceholder(b) && _isPlaceholder(c3) ? f3 : _isPlaceholder(a2) && _isPlaceholder(b) ? _curry2(function(_a, _b) {
          return fn(_a, _b, c3);
        }) : _isPlaceholder(a2) && _isPlaceholder(c3) ? _curry2(function(_a, _c) {
          return fn(_a, b, _c);
        }) : _isPlaceholder(b) && _isPlaceholder(c3) ? _curry2(function(_b, _c) {
          return fn(a2, _b, _c);
        }) : _isPlaceholder(a2) ? _curry1(function(_a) {
          return fn(_a, b, c3);
        }) : _isPlaceholder(b) ? _curry1(function(_b) {
          return fn(a2, _b, c3);
        }) : _isPlaceholder(c3) ? _curry1(function(_c) {
          return fn(a2, b, _c);
        }) : fn(a2, b, c3);
    }
  };
}
var init_curry3 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_curry3.js"() {
    init_curry1();
    init_curry2();
    init_isPlaceholder();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/adjust.js
var init_adjust = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/adjust.js"() {
    init_concat();
    init_curry3();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_isArray.js
var isArray_default;
var init_isArray = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_isArray.js"() {
    isArray_default = Array.isArray || function _isArray(val) {
      return val != null && val.length >= 0 && Object.prototype.toString.call(val) === "[object Array]";
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_isTransformer.js
function _isTransformer(obj) {
  return obj != null && typeof obj["@@transducer/step"] === "function";
}
var init_isTransformer = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_isTransformer.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_dispatchable.js
function _dispatchable(methodNames, transducerCreator, fn) {
  return function() {
    if (arguments.length === 0) {
      return fn();
    }
    var obj = arguments[arguments.length - 1];
    if (!isArray_default(obj)) {
      var idx = 0;
      while (idx < methodNames.length) {
        if (typeof obj[methodNames[idx]] === "function") {
          return obj[methodNames[idx]].apply(obj, Array.prototype.slice.call(arguments, 0, -1));
        }
        idx += 1;
      }
      if (_isTransformer(obj)) {
        var transducer = transducerCreator.apply(null, Array.prototype.slice.call(arguments, 0, -1));
        return transducer(obj);
      }
    }
    return fn.apply(this, arguments);
  };
}
var init_dispatchable = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_dispatchable.js"() {
    init_isArray();
    init_isTransformer();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_reduced.js
function _reduced(x) {
  return x && x["@@transducer/reduced"] ? x : {
    "@@transducer/value": x,
    "@@transducer/reduced": true
  };
}
var init_reduced = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_reduced.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xfBase.js
var xfBase_default;
var init_xfBase = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xfBase.js"() {
    xfBase_default = {
      init: function() {
        return this.xf["@@transducer/init"]();
      },
      result: function(result2) {
        return this.xf["@@transducer/result"](result2);
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xall.js
var init_xall = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xall.js"() {
    init_curry2();
    init_reduced();
    init_xfBase();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/all.js
var init_all2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/all.js"() {
    init_curry2();
    init_dispatchable();
    init_xall();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/max.js
var max, max_default;
var init_max = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/max.js"() {
    init_curry2();
    max = /* @__PURE__ */ _curry2(function max2(a2, b) {
      return b > a2 ? b : a2;
    });
    max_default = max;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_map.js
function _map(fn, functor) {
  var idx = 0;
  var len = functor.length;
  var result2 = Array(len);
  while (idx < len) {
    result2[idx] = fn(functor[idx]);
    idx += 1;
  }
  return result2;
}
var init_map = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_map.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_isString.js
function _isString(x) {
  return Object.prototype.toString.call(x) === "[object String]";
}
var init_isString = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_isString.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_isArrayLike.js
var _isArrayLike, isArrayLike_default;
var init_isArrayLike = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_isArrayLike.js"() {
    init_curry1();
    init_isArray();
    init_isString();
    _isArrayLike = /* @__PURE__ */ _curry1(function isArrayLike(x) {
      if (isArray_default(x)) {
        return true;
      }
      if (!x) {
        return false;
      }
      if (typeof x !== "object") {
        return false;
      }
      if (_isString(x)) {
        return false;
      }
      if (x.length === 0) {
        return true;
      }
      if (x.length > 0) {
        return x.hasOwnProperty(0) && x.hasOwnProperty(x.length - 1);
      }
      return false;
    });
    isArrayLike_default = _isArrayLike;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xwrap.js
function _xwrap(fn) {
  return new XWrap(fn);
}
var XWrap;
var init_xwrap = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xwrap.js"() {
    XWrap = /* @__PURE__ */ (function() {
      function XWrap2(fn) {
        this.f = fn;
      }
      XWrap2.prototype["@@transducer/init"] = function() {
        throw new Error("init not implemented on XWrap");
      };
      XWrap2.prototype["@@transducer/result"] = function(acc) {
        return acc;
      };
      XWrap2.prototype["@@transducer/step"] = function(acc, x) {
        return this.f(acc, x);
      };
      return XWrap2;
    })();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/bind.js
var bind, bind_default;
var init_bind = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/bind.js"() {
    init_arity();
    init_curry2();
    bind = /* @__PURE__ */ _curry2(function bind2(fn, thisObj) {
      return _arity(fn.length, function() {
        return fn.apply(thisObj, arguments);
      });
    });
    bind_default = bind;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_reduce.js
function _arrayReduce(xf, acc, list2) {
  var idx = 0;
  var len = list2.length;
  while (idx < len) {
    acc = xf["@@transducer/step"](acc, list2[idx]);
    if (acc && acc["@@transducer/reduced"]) {
      acc = acc["@@transducer/value"];
      break;
    }
    idx += 1;
  }
  return xf["@@transducer/result"](acc);
}
function _iterableReduce(xf, acc, iter) {
  var step2 = iter.next();
  while (!step2.done) {
    acc = xf["@@transducer/step"](acc, step2.value);
    if (acc && acc["@@transducer/reduced"]) {
      acc = acc["@@transducer/value"];
      break;
    }
    step2 = iter.next();
  }
  return xf["@@transducer/result"](acc);
}
function _methodReduce(xf, acc, obj, methodName) {
  return xf["@@transducer/result"](obj[methodName](bind_default(xf["@@transducer/step"], xf), acc));
}
function _reduce(fn, acc, list2) {
  if (typeof fn === "function") {
    fn = _xwrap(fn);
  }
  if (isArrayLike_default(list2)) {
    return _arrayReduce(fn, acc, list2);
  }
  if (typeof list2["fantasy-land/reduce"] === "function") {
    return _methodReduce(fn, acc, list2, "fantasy-land/reduce");
  }
  if (list2[symIterator] != null) {
    return _iterableReduce(fn, acc, list2[symIterator]());
  }
  if (typeof list2.next === "function") {
    return _iterableReduce(fn, acc, list2);
  }
  if (typeof list2.reduce === "function") {
    return _methodReduce(fn, acc, list2, "reduce");
  }
  throw new TypeError("reduce: list must be array or iterable");
}
var symIterator;
var init_reduce = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_reduce.js"() {
    init_isArrayLike();
    init_xwrap();
    init_bind();
    symIterator = typeof Symbol !== "undefined" ? Symbol.iterator : "@@iterator";
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xmap.js
var XMap, _xmap, xmap_default;
var init_xmap = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xmap.js"() {
    init_curry2();
    init_xfBase();
    XMap = /* @__PURE__ */ (function() {
      function XMap2(f, xf) {
        this.xf = xf;
        this.f = f;
      }
      XMap2.prototype["@@transducer/init"] = xfBase_default.init;
      XMap2.prototype["@@transducer/result"] = xfBase_default.result;
      XMap2.prototype["@@transducer/step"] = function(result2, input) {
        return this.xf["@@transducer/step"](result2, this.f(input));
      };
      return XMap2;
    })();
    _xmap = /* @__PURE__ */ _curry2(function _xmap2(f, xf) {
      return new XMap(f, xf);
    });
    xmap_default = _xmap;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_has.js
function _has(prop3, obj) {
  return Object.prototype.hasOwnProperty.call(obj, prop3);
}
var init_has = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_has.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_isArguments.js
var toString2, _isArguments, isArguments_default;
var init_isArguments = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_isArguments.js"() {
    init_has();
    toString2 = Object.prototype.toString;
    _isArguments = /* @__PURE__ */ (function() {
      return toString2.call(arguments) === "[object Arguments]" ? function _isArguments2(x) {
        return toString2.call(x) === "[object Arguments]";
      } : function _isArguments2(x) {
        return _has("callee", x);
      };
    })();
    isArguments_default = _isArguments;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/keys.js
var hasEnumBug, nonEnumerableProps, hasArgsEnumBug, contains, keys, keys_default;
var init_keys = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/keys.js"() {
    init_curry1();
    init_has();
    init_isArguments();
    hasEnumBug = !/* @__PURE__ */ {
      toString: null
    }.propertyIsEnumerable("toString");
    nonEnumerableProps = ["constructor", "valueOf", "isPrototypeOf", "toString", "propertyIsEnumerable", "hasOwnProperty", "toLocaleString"];
    hasArgsEnumBug = /* @__PURE__ */ (function() {
      "use strict";
      return arguments.propertyIsEnumerable("length");
    })();
    contains = function contains2(list2, item) {
      var idx = 0;
      while (idx < list2.length) {
        if (list2[idx] === item) {
          return true;
        }
        idx += 1;
      }
      return false;
    };
    keys = typeof Object.keys === "function" && !hasArgsEnumBug ? /* @__PURE__ */ _curry1(function keys2(obj) {
      return Object(obj) !== obj ? [] : Object.keys(obj);
    }) : /* @__PURE__ */ _curry1(function keys3(obj) {
      if (Object(obj) !== obj) {
        return [];
      }
      var prop3, nIdx;
      var ks = [];
      var checkArgsLength = hasArgsEnumBug && isArguments_default(obj);
      for (prop3 in obj) {
        if (_has(prop3, obj) && (!checkArgsLength || prop3 !== "length")) {
          ks[ks.length] = prop3;
        }
      }
      if (hasEnumBug) {
        nIdx = nonEnumerableProps.length - 1;
        while (nIdx >= 0) {
          prop3 = nonEnumerableProps[nIdx];
          if (_has(prop3, obj) && !contains(ks, prop3)) {
            ks[ks.length] = prop3;
          }
          nIdx -= 1;
        }
      }
      return ks;
    });
    keys_default = keys;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/map.js
var map2, map_default;
var init_map2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/map.js"() {
    init_curry2();
    init_dispatchable();
    init_map();
    init_reduce();
    init_xmap();
    init_curryN2();
    init_keys();
    map2 = /* @__PURE__ */ _curry2(
      /* @__PURE__ */ _dispatchable(["fantasy-land/map", "map"], xmap_default, function map3(fn, functor) {
        switch (Object.prototype.toString.call(functor)) {
          case "[object Function]":
            return curryN_default(functor.length, function() {
              return fn.call(this, functor.apply(this, arguments));
            });
          case "[object Object]":
            return _reduce(function(acc, key) {
              acc[key] = fn(functor[key]);
              return acc;
            }, {}, keys_default(functor));
          default:
            return _map(fn, functor);
        }
      })
    );
    map_default = map2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_isInteger.js
var isInteger_default;
var init_isInteger = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_isInteger.js"() {
    isInteger_default = Number.isInteger || function _isInteger(n2) {
      return n2 << 0 === n2;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/nth.js
var nth, nth_default;
var init_nth = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/nth.js"() {
    init_curry2();
    init_isString();
    nth = /* @__PURE__ */ _curry2(function nth2(offset, list2) {
      var idx = offset < 0 ? list2.length + offset : offset;
      return _isString(list2) ? list2.charAt(idx) : list2[idx];
    });
    nth_default = nth;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/prop.js
var prop, prop_default;
var init_prop = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/prop.js"() {
    init_curry2();
    init_isInteger();
    init_nth();
    prop = /* @__PURE__ */ _curry2(function prop2(p, obj) {
      if (obj == null) {
        return;
      }
      return isInteger_default(p) ? nth_default(p, obj) : obj[p];
    });
    prop_default = prop;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/pluck.js
var pluck, pluck_default;
var init_pluck = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/pluck.js"() {
    init_curry2();
    init_map2();
    init_prop();
    pluck = /* @__PURE__ */ _curry2(function pluck2(p, list2) {
      return map_default(prop_default(p), list2);
    });
    pluck_default = pluck;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/reduce.js
var reduce, reduce_default;
var init_reduce2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/reduce.js"() {
    init_curry3();
    init_reduce();
    reduce = /* @__PURE__ */ _curry3(_reduce);
    reduce_default = reduce;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/allPass.js
var init_allPass = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/allPass.js"() {
    init_curry1();
    init_curryN2();
    init_max();
    init_pluck();
    init_reduce2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/always.js
var always, always_default;
var init_always = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/always.js"() {
    init_curry1();
    always = /* @__PURE__ */ _curry1(function always2(val) {
      return function() {
        return val;
      };
    });
    always_default = always;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/and.js
var and, and_default;
var init_and = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/and.js"() {
    init_curry2();
    and = /* @__PURE__ */ _curry2(function and2(a2, b) {
      return a2 && b;
    });
    and_default = and;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xany.js
var init_xany = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xany.js"() {
    init_curry2();
    init_reduced();
    init_xfBase();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/any.js
var init_any = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/any.js"() {
    init_curry2();
    init_dispatchable();
    init_xany();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/anyPass.js
var init_anyPass = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/anyPass.js"() {
    init_curry1();
    init_curryN2();
    init_max();
    init_pluck();
    init_reduce2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/ap.js
var init_ap = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/ap.js"() {
    init_concat();
    init_curry2();
    init_reduce();
    init_map2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_aperture.js
var init_aperture = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_aperture.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xaperture.js
var init_xaperture = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xaperture.js"() {
    init_concat();
    init_curry2();
    init_xfBase();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/aperture.js
var init_aperture2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/aperture.js"() {
    init_aperture();
    init_curry2();
    init_dispatchable();
    init_xaperture();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/append.js
var init_append = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/append.js"() {
    init_concat();
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/apply.js
var init_apply = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/apply.js"() {
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/values.js
var init_values = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/values.js"() {
    init_curry1();
    init_keys();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/applySpec.js
var init_applySpec = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/applySpec.js"() {
    init_curry1();
    init_isArray();
    init_apply();
    init_curryN2();
    init_max();
    init_pluck();
    init_reduce2();
    init_keys();
    init_values();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/applyTo.js
var init_applyTo = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/applyTo.js"() {
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/ascend.js
var init_ascend = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/ascend.js"() {
    init_curry3();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_assoc.js
var init_assoc = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_assoc.js"() {
    init_isArray();
    init_isInteger();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/isNil.js
var init_isNil = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/isNil.js"() {
    init_curry1();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/assocPath.js
var init_assocPath = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/assocPath.js"() {
    init_curry3();
    init_has();
    init_isInteger();
    init_assoc();
    init_isNil();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/assoc.js
var init_assoc2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/assoc.js"() {
    init_curry3();
    init_assocPath();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/nAry.js
var init_nAry = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/nAry.js"() {
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/binary.js
var init_binary = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/binary.js"() {
    init_curry1();
    init_nAry();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_isFunction.js
var init_isFunction = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_isFunction.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/liftN.js
var init_liftN = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/liftN.js"() {
    init_curry2();
    init_reduce();
    init_ap();
    init_curryN2();
    init_map2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/lift.js
var init_lift = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/lift.js"() {
    init_curry1();
    init_liftN();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/both.js
var init_both = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/both.js"() {
    init_curry2();
    init_isFunction();
    init_and();
    init_lift();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/call.js
var init_call = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/call.js"() {
    init_curry1();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_makeFlat.js
function _makeFlat(recursive2) {
  return function flatt(list2) {
    var value, jlen, j2;
    var result2 = [];
    var idx = 0;
    var ilen = list2.length;
    while (idx < ilen) {
      if (isArrayLike_default(list2[idx])) {
        value = recursive2 ? flatt(list2[idx]) : list2[idx];
        j2 = 0;
        jlen = value.length;
        while (j2 < jlen) {
          result2[result2.length] = value[j2];
          j2 += 1;
        }
      } else {
        result2[result2.length] = list2[idx];
      }
      idx += 1;
    }
    return result2;
  };
}
var init_makeFlat = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_makeFlat.js"() {
    init_isArrayLike();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_forceReduced.js
function _forceReduced(x) {
  return {
    "@@transducer/value": x,
    "@@transducer/reduced": true
  };
}
var init_forceReduced = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_forceReduced.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_flatCat.js
var preservingReduced, _flatCat, flatCat_default;
var init_flatCat = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_flatCat.js"() {
    init_forceReduced();
    init_isArrayLike();
    init_reduce();
    init_xfBase();
    preservingReduced = function(xf) {
      return {
        "@@transducer/init": xfBase_default.init,
        "@@transducer/result": function(result2) {
          return xf["@@transducer/result"](result2);
        },
        "@@transducer/step": function(result2, input) {
          var ret2 = xf["@@transducer/step"](result2, input);
          return ret2["@@transducer/reduced"] ? _forceReduced(ret2) : ret2;
        }
      };
    };
    _flatCat = function _xcat(xf) {
      var rxf = preservingReduced(xf);
      return {
        "@@transducer/init": xfBase_default.init,
        "@@transducer/result": function(result2) {
          return rxf["@@transducer/result"](result2);
        },
        "@@transducer/step": function(result2, input) {
          return !isArrayLike_default(input) ? _reduce(rxf, result2, [input]) : _reduce(rxf, result2, input);
        }
      };
    };
    flatCat_default = _flatCat;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xchain.js
var _xchain, xchain_default;
var init_xchain = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xchain.js"() {
    init_curry2();
    init_flatCat();
    init_map2();
    _xchain = /* @__PURE__ */ _curry2(function _xchain2(f, xf) {
      return map_default(f, flatCat_default(xf));
    });
    xchain_default = _xchain;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/chain.js
var chain, chain_default;
var init_chain = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/chain.js"() {
    init_curry2();
    init_dispatchable();
    init_makeFlat();
    init_xchain();
    init_map2();
    chain = /* @__PURE__ */ _curry2(
      /* @__PURE__ */ _dispatchable(["fantasy-land/chain", "chain"], xchain_default, function chain2(fn, monad) {
        if (typeof monad === "function") {
          return function(x) {
            return fn(monad(x))(x);
          };
        }
        return _makeFlat(false)(map_default(fn, monad));
      })
    );
    chain_default = chain;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/clamp.js
var init_clamp = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/clamp.js"() {
    init_curry3();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_cloneRegExp.js
function _cloneRegExp(pattern) {
  return new RegExp(pattern.source, (pattern.global ? "g" : "") + (pattern.ignoreCase ? "i" : "") + (pattern.multiline ? "m" : "") + (pattern.sticky ? "y" : "") + (pattern.unicode ? "u" : ""));
}
var init_cloneRegExp = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_cloneRegExp.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/type.js
var type2, type_default;
var init_type = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/type.js"() {
    init_curry1();
    type2 = /* @__PURE__ */ _curry1(function type3(val) {
      return val === null ? "Null" : val === void 0 ? "Undefined" : Object.prototype.toString.call(val).slice(8, -1);
    });
    type_default = type2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_clone.js
function _clone(value, refFrom, refTo, deep) {
  var copy2 = function copy3(copiedValue) {
    var len = refFrom.length;
    var idx = 0;
    while (idx < len) {
      if (value === refFrom[idx]) {
        return refTo[idx];
      }
      idx += 1;
    }
    refFrom[idx] = value;
    refTo[idx] = copiedValue;
    for (var key in value) {
      if (value.hasOwnProperty(key)) {
        copiedValue[key] = deep ? _clone(value[key], refFrom, refTo, true) : value[key];
      }
    }
    return copiedValue;
  };
  switch (type_default(value)) {
    case "Object":
      return copy2(Object.create(Object.getPrototypeOf(value)));
    case "Array":
      return copy2([]);
    case "Date":
      return new Date(value.valueOf());
    case "RegExp":
      return _cloneRegExp(value);
    case "Int8Array":
    case "Uint8Array":
    case "Uint8ClampedArray":
    case "Int16Array":
    case "Uint16Array":
    case "Int32Array":
    case "Uint32Array":
    case "Float32Array":
    case "Float64Array":
    case "BigInt64Array":
    case "BigUint64Array":
      return value.slice();
    default:
      return value;
  }
}
var init_clone = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_clone.js"() {
    init_cloneRegExp();
    init_type();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/clone.js
var clone, clone_default;
var init_clone2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/clone.js"() {
    init_clone();
    init_curry1();
    clone = /* @__PURE__ */ _curry1(function clone2(value) {
      return value != null && typeof value.clone === "function" ? value.clone() : _clone(value, [], [], true);
    });
    clone_default = clone;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/collectBy.js
var init_collectBy = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/collectBy.js"() {
    init_curry2();
    init_reduce();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/comparator.js
var init_comparator = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/comparator.js"() {
    init_curry1();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/not.js
var init_not = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/not.js"() {
    init_curry1();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/complement.js
var init_complement = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/complement.js"() {
    init_lift();
    init_not();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_pipe.js
function _pipe(f, g) {
  return function() {
    return g.call(this, f.apply(this, arguments));
  };
}
var init_pipe = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_pipe.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_checkForMethod.js
function _checkForMethod(methodname, fn) {
  return function() {
    var length = arguments.length;
    if (length === 0) {
      return fn();
    }
    var obj = arguments[length - 1];
    return isArray_default(obj) || typeof obj[methodname] !== "function" ? fn.apply(this, arguments) : obj[methodname].apply(obj, Array.prototype.slice.call(arguments, 0, length - 1));
  };
}
var init_checkForMethod = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_checkForMethod.js"() {
    init_isArray();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/slice.js
var slice, slice_default;
var init_slice = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/slice.js"() {
    init_checkForMethod();
    init_curry3();
    slice = /* @__PURE__ */ _curry3(
      /* @__PURE__ */ _checkForMethod("slice", function slice2(fromIndex, toIndex, list2) {
        return Array.prototype.slice.call(list2, fromIndex, toIndex);
      })
    );
    slice_default = slice;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/tail.js
var tail, tail_default;
var init_tail = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/tail.js"() {
    init_checkForMethod();
    init_curry1();
    init_slice();
    tail = /* @__PURE__ */ _curry1(
      /* @__PURE__ */ _checkForMethod(
        "tail",
        /* @__PURE__ */ slice_default(1, Infinity)
      )
    );
    tail_default = tail;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/pipe.js
function pipe() {
  if (arguments.length === 0) {
    throw new Error("pipe requires at least one argument");
  }
  return _arity(arguments[0].length, reduce_default(_pipe, arguments[0], tail_default(arguments)));
}
var init_pipe2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/pipe.js"() {
    init_arity();
    init_pipe();
    init_reduce2();
    init_tail();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/reverse.js
var reverse, reverse_default;
var init_reverse = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/reverse.js"() {
    init_curry1();
    init_isString();
    reverse = /* @__PURE__ */ _curry1(function reverse2(list2) {
      return _isString(list2) ? list2.split("").reverse().join("") : Array.prototype.slice.call(list2, 0).reverse();
    });
    reverse_default = reverse;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/compose.js
function compose() {
  if (arguments.length === 0) {
    throw new Error("compose requires at least one argument");
  }
  return pipe.apply(this, reverse_default(arguments));
}
var init_compose = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/compose.js"() {
    init_pipe2();
    init_reverse();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/head.js
var head, head_default;
var init_head = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/head.js"() {
    init_nth();
    head = /* @__PURE__ */ nth_default(0);
    head_default = head;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_identity.js
function _identity(x) {
  return x;
}
var init_identity = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_identity.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/identity.js
var identity, identity_default;
var init_identity2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/identity.js"() {
    init_curry1();
    init_identity();
    identity = /* @__PURE__ */ _curry1(_identity);
    identity_default = identity;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/pipeWith.js
var pipeWith, pipeWith_default;
var init_pipeWith = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/pipeWith.js"() {
    init_arity();
    init_curry2();
    init_head();
    init_reduce();
    init_tail();
    init_identity2();
    pipeWith = /* @__PURE__ */ _curry2(function pipeWith2(xf, list2) {
      if (list2.length <= 0) {
        return identity_default;
      }
      var headList = head_default(list2);
      var tailList = tail_default(list2);
      return _arity(headList.length, function() {
        return _reduce(function(result2, f) {
          return xf.call(this, f, result2);
        }, headList.apply(this, arguments), tailList);
      });
    });
    pipeWith_default = pipeWith;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/composeWith.js
var init_composeWith = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/composeWith.js"() {
    init_curry2();
    init_pipeWith();
    init_reverse();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_arrayFromIterator.js
function _arrayFromIterator(iter) {
  var list2 = [];
  var next2;
  while (!(next2 = iter.next()).done) {
    list2.push(next2.value);
  }
  return list2;
}
var init_arrayFromIterator = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_arrayFromIterator.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_includesWith.js
function _includesWith(pred, x, list2) {
  var idx = 0;
  var len = list2.length;
  while (idx < len) {
    if (pred(x, list2[idx])) {
      return true;
    }
    idx += 1;
  }
  return false;
}
var init_includesWith = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_includesWith.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_functionName.js
function _functionName(f) {
  var match = String(f).match(/^function (\w*)/);
  return match == null ? "" : match[1];
}
var init_functionName = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_functionName.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_objectIs.js
function _objectIs(a2, b) {
  if (a2 === b) {
    return a2 !== 0 || 1 / a2 === 1 / b;
  } else {
    return a2 !== a2 && b !== b;
  }
}
var objectIs_default;
var init_objectIs = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_objectIs.js"() {
    objectIs_default = typeof Object.is === "function" ? Object.is : _objectIs;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_equals.js
function _uniqContentEquals(aIterator, bIterator, stackA, stackB) {
  var a2 = _arrayFromIterator(aIterator);
  var b = _arrayFromIterator(bIterator);
  function eq(_a, _b) {
    return _equals(_a, _b, stackA.slice(), stackB.slice());
  }
  return !_includesWith(function(b2, aItem) {
    return !_includesWith(eq, aItem, b2);
  }, b, a2);
}
function _equals(a2, b, stackA, stackB) {
  if (objectIs_default(a2, b)) {
    return true;
  }
  var typeA = type_default(a2);
  if (typeA !== type_default(b)) {
    return false;
  }
  if (typeof a2["fantasy-land/equals"] === "function" || typeof b["fantasy-land/equals"] === "function") {
    return typeof a2["fantasy-land/equals"] === "function" && a2["fantasy-land/equals"](b) && typeof b["fantasy-land/equals"] === "function" && b["fantasy-land/equals"](a2);
  }
  if (typeof a2.equals === "function" || typeof b.equals === "function") {
    return typeof a2.equals === "function" && a2.equals(b) && typeof b.equals === "function" && b.equals(a2);
  }
  switch (typeA) {
    case "Arguments":
    case "Array":
    case "Object":
      if (typeof a2.constructor === "function" && _functionName(a2.constructor) === "Promise") {
        return a2 === b;
      }
      break;
    case "Boolean":
    case "Number":
    case "String":
      if (!(typeof a2 === typeof b && objectIs_default(a2.valueOf(), b.valueOf()))) {
        return false;
      }
      break;
    case "Date":
      if (!objectIs_default(a2.valueOf(), b.valueOf())) {
        return false;
      }
      break;
    case "Error":
      return a2.name === b.name && a2.message === b.message;
    case "RegExp":
      if (!(a2.source === b.source && a2.global === b.global && a2.ignoreCase === b.ignoreCase && a2.multiline === b.multiline && a2.sticky === b.sticky && a2.unicode === b.unicode)) {
        return false;
      }
      break;
  }
  var idx = stackA.length - 1;
  while (idx >= 0) {
    if (stackA[idx] === a2) {
      return stackB[idx] === b;
    }
    idx -= 1;
  }
  switch (typeA) {
    case "Map":
      if (a2.size !== b.size) {
        return false;
      }
      return _uniqContentEquals(a2.entries(), b.entries(), stackA.concat([a2]), stackB.concat([b]));
    case "Set":
      if (a2.size !== b.size) {
        return false;
      }
      return _uniqContentEquals(a2.values(), b.values(), stackA.concat([a2]), stackB.concat([b]));
    case "Arguments":
    case "Array":
    case "Object":
    case "Boolean":
    case "Number":
    case "String":
    case "Date":
    case "Error":
    case "RegExp":
    case "Int8Array":
    case "Uint8Array":
    case "Uint8ClampedArray":
    case "Int16Array":
    case "Uint16Array":
    case "Int32Array":
    case "Uint32Array":
    case "Float32Array":
    case "Float64Array":
    case "ArrayBuffer":
      break;
    default:
      return false;
  }
  var keysA = keys_default(a2);
  if (keysA.length !== keys_default(b).length) {
    return false;
  }
  var extendedStackA = stackA.concat([a2]);
  var extendedStackB = stackB.concat([b]);
  idx = keysA.length - 1;
  while (idx >= 0) {
    var key = keysA[idx];
    if (!(_has(key, b) && _equals(b[key], a2[key], extendedStackA, extendedStackB))) {
      return false;
    }
    idx -= 1;
  }
  return true;
}
var init_equals = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_equals.js"() {
    init_arrayFromIterator();
    init_includesWith();
    init_functionName();
    init_has();
    init_objectIs();
    init_keys();
    init_type();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/equals.js
var equals, equals_default;
var init_equals2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/equals.js"() {
    init_curry2();
    init_equals();
    equals = /* @__PURE__ */ _curry2(function equals2(a2, b) {
      return _equals(a2, b, [], []);
    });
    equals_default = equals;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_indexOf.js
function _indexOf(list2, a2, idx) {
  var inf, item;
  if (typeof list2.indexOf === "function") {
    switch (typeof a2) {
      case "number":
        if (a2 === 0) {
          inf = 1 / a2;
          while (idx < list2.length) {
            item = list2[idx];
            if (item === 0 && 1 / item === inf) {
              return idx;
            }
            idx += 1;
          }
          return -1;
        } else if (a2 !== a2) {
          while (idx < list2.length) {
            item = list2[idx];
            if (typeof item === "number" && item !== item) {
              return idx;
            }
            idx += 1;
          }
          return -1;
        }
        return list2.indexOf(a2, idx);
      // all these types can utilise Set
      case "string":
      case "boolean":
      case "function":
      case "undefined":
        return list2.indexOf(a2, idx);
      case "object":
        if (a2 === null) {
          return list2.indexOf(a2, idx);
        }
    }
  }
  while (idx < list2.length) {
    if (equals_default(list2[idx], a2)) {
      return idx;
    }
    idx += 1;
  }
  return -1;
}
var init_indexOf = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_indexOf.js"() {
    init_equals2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_includes.js
function _includes(a2, list2) {
  return _indexOf(list2, a2, 0) >= 0;
}
var init_includes = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_includes.js"() {
    init_indexOf();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_quote.js
var init_quote = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_quote.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_toISOString.js
var pad, _toISOString;
var init_toISOString = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_toISOString.js"() {
    pad = function pad2(n2) {
      return (n2 < 10 ? "0" : "") + n2;
    };
    _toISOString = typeof Date.prototype.toISOString === "function" ? function _toISOString2(d) {
      return d.toISOString();
    } : function _toISOString3(d) {
      return d.getUTCFullYear() + "-" + pad(d.getUTCMonth() + 1) + "-" + pad(d.getUTCDate()) + "T" + pad(d.getUTCHours()) + ":" + pad(d.getUTCMinutes()) + ":" + pad(d.getUTCSeconds()) + "." + (d.getUTCMilliseconds() / 1e3).toFixed(3).slice(2, 5) + "Z";
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_complement.js
function _complement(f) {
  return function() {
    return !f.apply(this, arguments);
  };
}
var init_complement2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_complement.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_filter.js
function _filter(fn, list2) {
  var idx = 0;
  var len = list2.length;
  var result2 = [];
  while (idx < len) {
    if (fn(list2[idx])) {
      result2[result2.length] = list2[idx];
    }
    idx += 1;
  }
  return result2;
}
var init_filter = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_filter.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_isObject.js
function _isObject(x) {
  return Object.prototype.toString.call(x) === "[object Object]";
}
var init_isObject = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_isObject.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xfilter.js
var XFilter, _xfilter, xfilter_default;
var init_xfilter = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xfilter.js"() {
    init_curry2();
    init_xfBase();
    XFilter = /* @__PURE__ */ (function() {
      function XFilter2(f, xf) {
        this.xf = xf;
        this.f = f;
      }
      XFilter2.prototype["@@transducer/init"] = xfBase_default.init;
      XFilter2.prototype["@@transducer/result"] = xfBase_default.result;
      XFilter2.prototype["@@transducer/step"] = function(result2, input) {
        return this.f(input) ? this.xf["@@transducer/step"](result2, input) : result2;
      };
      return XFilter2;
    })();
    _xfilter = /* @__PURE__ */ _curry2(function _xfilter2(f, xf) {
      return new XFilter(f, xf);
    });
    xfilter_default = _xfilter;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/filter.js
var filter, filter_default;
var init_filter2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/filter.js"() {
    init_curry2();
    init_dispatchable();
    init_filter();
    init_isObject();
    init_reduce();
    init_xfilter();
    init_keys();
    filter = /* @__PURE__ */ _curry2(
      /* @__PURE__ */ _dispatchable(["fantasy-land/filter", "filter"], xfilter_default, function(pred, filterable) {
        return _isObject(filterable) ? _reduce(function(acc, key) {
          if (pred(filterable[key])) {
            acc[key] = filterable[key];
          }
          return acc;
        }, {}, keys_default(filterable)) : (
          // else
          _filter(pred, filterable)
        );
      })
    );
    filter_default = filter;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/reject.js
var reject, reject_default;
var init_reject = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/reject.js"() {
    init_complement2();
    init_curry2();
    init_filter2();
    reject = /* @__PURE__ */ _curry2(function reject2(pred, filterable) {
      return filter_default(_complement(pred), filterable);
    });
    reject_default = reject;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_toString.js
var init_toString = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_toString.js"() {
    init_includes();
    init_map();
    init_quote();
    init_toISOString();
    init_keys();
    init_reject();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/toString.js
var init_toString2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/toString.js"() {
    init_curry1();
    init_toString();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/concat.js
var init_concat2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/concat.js"() {
    init_curry2();
    init_isArray();
    init_isFunction();
    init_isString();
    init_toString2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/cond.js
var init_cond = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/cond.js"() {
    init_arity();
    init_curry1();
    init_map2();
    init_max();
    init_reduce2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/curry.js
var init_curry = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/curry.js"() {
    init_curry1();
    init_curryN2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/constructN.js
var init_constructN = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/constructN.js"() {
    init_curry2();
    init_curry();
    init_nAry();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/construct.js
var init_construct = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/construct.js"() {
    init_curry1();
    init_constructN();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/converge.js
var converge, converge_default;
var init_converge = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/converge.js"() {
    init_curry2();
    init_map();
    init_curryN2();
    init_max();
    init_pluck();
    init_reduce2();
    converge = /* @__PURE__ */ _curry2(function converge2(after, fns) {
      return curryN_default(reduce_default(max_default, 0, pluck_default("length", fns)), function() {
        var args = arguments;
        var context = this;
        return after.apply(context, _map(function(fn) {
          return fn.apply(context, args);
        }, fns));
      });
    });
    converge_default = converge;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/count.js
var init_count = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/count.js"() {
    init_reduce();
    init_curry();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xreduceBy.js
var XReduceBy, _xreduceBy, xreduceBy_default;
var init_xreduceBy = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xreduceBy.js"() {
    init_curryN();
    init_has();
    init_xfBase();
    XReduceBy = /* @__PURE__ */ (function() {
      function XReduceBy2(valueFn, valueAcc, keyFn, xf) {
        this.valueFn = valueFn;
        this.valueAcc = valueAcc;
        this.keyFn = keyFn;
        this.xf = xf;
        this.inputs = {};
      }
      XReduceBy2.prototype["@@transducer/init"] = xfBase_default.init;
      XReduceBy2.prototype["@@transducer/result"] = function(result2) {
        var key;
        for (key in this.inputs) {
          if (_has(key, this.inputs)) {
            result2 = this.xf["@@transducer/step"](result2, this.inputs[key]);
            if (result2["@@transducer/reduced"]) {
              result2 = result2["@@transducer/value"];
              break;
            }
          }
        }
        this.inputs = null;
        return this.xf["@@transducer/result"](result2);
      };
      XReduceBy2.prototype["@@transducer/step"] = function(result2, input) {
        var key = this.keyFn(input);
        this.inputs[key] = this.inputs[key] || [key, this.valueAcc];
        this.inputs[key][1] = this.valueFn(this.inputs[key][1], input);
        return result2;
      };
      return XReduceBy2;
    })();
    _xreduceBy = /* @__PURE__ */ _curryN(4, [], function _xreduceBy2(valueFn, valueAcc, keyFn, xf) {
      return new XReduceBy(valueFn, valueAcc, keyFn, xf);
    });
    xreduceBy_default = _xreduceBy;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/reduceBy.js
var reduceBy, reduceBy_default;
var init_reduceBy = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/reduceBy.js"() {
    init_clone();
    init_curryN();
    init_dispatchable();
    init_has();
    init_reduce();
    init_reduced();
    init_xreduceBy();
    reduceBy = /* @__PURE__ */ _curryN(
      4,
      [],
      /* @__PURE__ */ _dispatchable([], xreduceBy_default, function reduceBy2(valueFn, valueAcc, keyFn, list2) {
        return _reduce(function(acc, elt) {
          var key = keyFn(elt);
          var value = valueFn(_has(key, acc) ? acc[key] : _clone(valueAcc, [], [], false), elt);
          if (value && value["@@transducer/reduced"]) {
            return _reduced(acc);
          }
          acc[key] = value;
          return acc;
        }, {}, list2);
      })
    );
    reduceBy_default = reduceBy;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/countBy.js
var init_countBy = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/countBy.js"() {
    init_reduceBy();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/dec.js
var init_dec = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/dec.js"() {
    init_add();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/defaultTo.js
var init_defaultTo = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/defaultTo.js"() {
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/descend.js
var init_descend = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/descend.js"() {
    init_curry3();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_Set.js
function hasOrAdd(item, shouldAdd, set2) {
  var type4 = typeof item;
  var prevSize, newSize;
  switch (type4) {
    case "string":
    case "number":
      if (item === 0 && 1 / item === -Infinity) {
        if (set2._items["-0"]) {
          return true;
        } else {
          if (shouldAdd) {
            set2._items["-0"] = true;
          }
          return false;
        }
      }
      if (set2._nativeSet !== null) {
        if (shouldAdd) {
          prevSize = set2._nativeSet.size;
          set2._nativeSet.add(item);
          newSize = set2._nativeSet.size;
          return newSize === prevSize;
        } else {
          return set2._nativeSet.has(item);
        }
      } else {
        if (!(type4 in set2._items)) {
          if (shouldAdd) {
            set2._items[type4] = {};
            set2._items[type4][item] = true;
          }
          return false;
        } else if (item in set2._items[type4]) {
          return true;
        } else {
          if (shouldAdd) {
            set2._items[type4][item] = true;
          }
          return false;
        }
      }
    case "boolean":
      if (type4 in set2._items) {
        var bIdx = item ? 1 : 0;
        if (set2._items[type4][bIdx]) {
          return true;
        } else {
          if (shouldAdd) {
            set2._items[type4][bIdx] = true;
          }
          return false;
        }
      } else {
        if (shouldAdd) {
          set2._items[type4] = item ? [false, true] : [true, false];
        }
        return false;
      }
    case "function":
      if (set2._nativeSet !== null) {
        if (shouldAdd) {
          prevSize = set2._nativeSet.size;
          set2._nativeSet.add(item);
          newSize = set2._nativeSet.size;
          return newSize === prevSize;
        } else {
          return set2._nativeSet.has(item);
        }
      } else {
        if (!(type4 in set2._items)) {
          if (shouldAdd) {
            set2._items[type4] = [item];
          }
          return false;
        }
        if (!_includes(item, set2._items[type4])) {
          if (shouldAdd) {
            set2._items[type4].push(item);
          }
          return false;
        }
        return true;
      }
    case "undefined":
      if (set2._items[type4]) {
        return true;
      } else {
        if (shouldAdd) {
          set2._items[type4] = true;
        }
        return false;
      }
    case "object":
      if (item === null) {
        if (!set2._items["null"]) {
          if (shouldAdd) {
            set2._items["null"] = true;
          }
          return false;
        }
        return true;
      }
    /* falls through */
    default:
      type4 = Object.prototype.toString.call(item);
      if (!(type4 in set2._items)) {
        if (shouldAdd) {
          set2._items[type4] = [item];
        }
        return false;
      }
      if (!_includes(item, set2._items[type4])) {
        if (shouldAdd) {
          set2._items[type4].push(item);
        }
        return false;
      }
      return true;
  }
}
var _Set, Set_default;
var init_Set = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_Set.js"() {
    init_includes();
    _Set = /* @__PURE__ */ (function() {
      function _Set2() {
        this._nativeSet = typeof Set === "function" ? /* @__PURE__ */ new Set() : null;
        this._items = {};
      }
      _Set2.prototype.add = function(item) {
        return !hasOrAdd(item, true, this);
      };
      _Set2.prototype.has = function(item) {
        return hasOrAdd(item, false, this);
      };
      return _Set2;
    })();
    Set_default = _Set;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/difference.js
var difference, difference_default;
var init_difference = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/difference.js"() {
    init_curry2();
    init_Set();
    difference = /* @__PURE__ */ _curry2(function difference2(first, second) {
      var out = [];
      var idx = 0;
      var firstLen = first.length;
      var secondLen = second.length;
      var toFilterOut = new Set_default();
      for (var i2 = 0; i2 < secondLen; i2 += 1) {
        toFilterOut.add(second[i2]);
      }
      while (idx < firstLen) {
        if (toFilterOut.add(first[idx])) {
          out[out.length] = first[idx];
        }
        idx += 1;
      }
      return out;
    });
    difference_default = difference;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/differenceWith.js
var init_differenceWith = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/differenceWith.js"() {
    init_includesWith();
    init_curry3();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/remove.js
var init_remove = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/remove.js"() {
    init_curry3();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_dissoc.js
var init_dissoc = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_dissoc.js"() {
    init_isInteger();
    init_isArray();
    init_remove();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/dissocPath.js
var init_dissocPath = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/dissocPath.js"() {
    init_curry2();
    init_dissoc();
    init_isInteger();
    init_isArray();
    init_assoc2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/dissoc.js
var init_dissoc2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/dissoc.js"() {
    init_curry2();
    init_dissocPath();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/divide.js
var init_divide = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/divide.js"() {
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xdrop.js
var init_xdrop = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xdrop.js"() {
    init_curry2();
    init_xfBase();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/drop.js
var init_drop = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/drop.js"() {
    init_curry2();
    init_dispatchable();
    init_xdrop();
    init_slice();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xtake.js
var init_xtake = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xtake.js"() {
    init_curry2();
    init_reduced();
    init_xfBase();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/take.js
var init_take = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/take.js"() {
    init_curry2();
    init_dispatchable();
    init_xtake();
    init_slice();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_dropLast.js
var init_dropLast = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_dropLast.js"() {
    init_take();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xdropLast.js
var init_xdropLast = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xdropLast.js"() {
    init_curry2();
    init_xfBase();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/dropLast.js
var init_dropLast2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/dropLast.js"() {
    init_curry2();
    init_dispatchable();
    init_dropLast();
    init_xdropLast();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_dropLastWhile.js
var init_dropLastWhile = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_dropLastWhile.js"() {
    init_slice();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xdropLastWhile.js
var init_xdropLastWhile = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xdropLastWhile.js"() {
    init_curry2();
    init_reduce();
    init_xfBase();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/dropLastWhile.js
var init_dropLastWhile2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/dropLastWhile.js"() {
    init_curry2();
    init_dispatchable();
    init_dropLastWhile();
    init_xdropLastWhile();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xdropRepeatsWith.js
var init_xdropRepeatsWith = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xdropRepeatsWith.js"() {
    init_curry2();
    init_xfBase();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/last.js
var init_last = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/last.js"() {
    init_nth();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/dropRepeatsWith.js
var init_dropRepeatsWith = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/dropRepeatsWith.js"() {
    init_curry2();
    init_dispatchable();
    init_xdropRepeatsWith();
    init_last();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/dropRepeats.js
var init_dropRepeats = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/dropRepeats.js"() {
    init_curry1();
    init_dispatchable();
    init_xdropRepeatsWith();
    init_dropRepeatsWith();
    init_equals2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xdropWhile.js
var init_xdropWhile = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xdropWhile.js"() {
    init_curry2();
    init_xfBase();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/dropWhile.js
var init_dropWhile = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/dropWhile.js"() {
    init_curry2();
    init_dispatchable();
    init_xdropWhile();
    init_slice();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/or.js
var init_or = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/or.js"() {
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/either.js
var init_either = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/either.js"() {
    init_curry2();
    init_isFunction();
    init_lift();
    init_or();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_isTypedArray.js
function _isTypedArray(val) {
  var type4 = Object.prototype.toString.call(val);
  return type4 === "[object Uint8ClampedArray]" || type4 === "[object Int8Array]" || type4 === "[object Uint8Array]" || type4 === "[object Int16Array]" || type4 === "[object Uint16Array]" || type4 === "[object Int32Array]" || type4 === "[object Uint32Array]" || type4 === "[object Float32Array]" || type4 === "[object Float64Array]" || type4 === "[object BigInt64Array]" || type4 === "[object BigUint64Array]";
}
var init_isTypedArray = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_isTypedArray.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/empty.js
var empty, empty_default;
var init_empty = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/empty.js"() {
    init_curry1();
    init_isArguments();
    init_isArray();
    init_isObject();
    init_isString();
    init_isTypedArray();
    empty = /* @__PURE__ */ _curry1(function empty2(x) {
      return x != null && typeof x["fantasy-land/empty"] === "function" ? x["fantasy-land/empty"]() : x != null && x.constructor != null && typeof x.constructor["fantasy-land/empty"] === "function" ? x.constructor["fantasy-land/empty"]() : x != null && typeof x.empty === "function" ? x.empty() : x != null && x.constructor != null && typeof x.constructor.empty === "function" ? x.constructor.empty() : isArray_default(x) ? [] : _isString(x) ? "" : _isObject(x) ? {} : isArguments_default(x) ? /* @__PURE__ */ (function() {
        return arguments;
      })() : _isTypedArray(x) ? x.constructor.from("") : void 0;
    });
    empty_default = empty;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/takeLast.js
var init_takeLast = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/takeLast.js"() {
    init_curry2();
    init_drop();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/endsWith.js
var init_endsWith = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/endsWith.js"() {
    init_curry2();
    init_equals2();
    init_takeLast();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/eqBy.js
var init_eqBy = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/eqBy.js"() {
    init_curry3();
    init_equals2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/eqProps.js
var init_eqProps = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/eqProps.js"() {
    init_curry3();
    init_equals2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/evolve.js
var init_evolve = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/evolve.js"() {
    init_curry2();
    init_isArray();
    init_isObject();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xfind.js
var init_xfind = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xfind.js"() {
    init_curry2();
    init_reduced();
    init_xfBase();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/find.js
var init_find = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/find.js"() {
    init_curry2();
    init_dispatchable();
    init_xfind();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xfindIndex.js
var init_xfindIndex = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xfindIndex.js"() {
    init_curry2();
    init_reduced();
    init_xfBase();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/findIndex.js
var init_findIndex = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/findIndex.js"() {
    init_curry2();
    init_dispatchable();
    init_xfindIndex();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xfindLast.js
var init_xfindLast = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xfindLast.js"() {
    init_curry2();
    init_xfBase();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/findLast.js
var init_findLast = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/findLast.js"() {
    init_curry2();
    init_dispatchable();
    init_xfindLast();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xfindLastIndex.js
var init_xfindLastIndex = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xfindLastIndex.js"() {
    init_curry2();
    init_xfBase();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/findLastIndex.js
var init_findLastIndex = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/findLastIndex.js"() {
    init_curry2();
    init_dispatchable();
    init_xfindLastIndex();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/flatten.js
var init_flatten = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/flatten.js"() {
    init_curry1();
    init_makeFlat();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/flip.js
var flip, flip_default;
var init_flip = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/flip.js"() {
    init_curry1();
    init_curryN2();
    flip = /* @__PURE__ */ _curry1(function flip2(fn) {
      return curryN_default(fn.length, function(a2, b) {
        var args = Array.prototype.slice.call(arguments, 0);
        args[0] = b;
        args[1] = a2;
        return fn.apply(this, args);
      });
    });
    flip_default = flip;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/forEach.js
var init_forEach = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/forEach.js"() {
    init_checkForMethod();
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/forEachObjIndexed.js
var init_forEachObjIndexed = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/forEachObjIndexed.js"() {
    init_curry2();
    init_keys();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/fromPairs.js
var init_fromPairs = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/fromPairs.js"() {
    init_curry1();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/groupBy.js
var groupBy2, groupBy_default;
var init_groupBy = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/groupBy.js"() {
    init_checkForMethod();
    init_curry2();
    init_reduceBy();
    groupBy2 = /* @__PURE__ */ _curry2(
      /* @__PURE__ */ _checkForMethod(
        "groupBy",
        /* @__PURE__ */ reduceBy_default(function(acc, item) {
          acc.push(item);
          return acc;
        }, [])
      )
    );
    groupBy_default = groupBy2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/groupWith.js
var init_groupWith = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/groupWith.js"() {
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/gt.js
var init_gt = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/gt.js"() {
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/gte.js
var init_gte = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/gte.js"() {
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/hasPath.js
var init_hasPath = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/hasPath.js"() {
    init_curry2();
    init_has();
    init_isNil();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/has.js
var init_has2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/has.js"() {
    init_curry2();
    init_hasPath();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/hasIn.js
var init_hasIn = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/hasIn.js"() {
    init_curry2();
    init_isNil();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/identical.js
var init_identical = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/identical.js"() {
    init_objectIs();
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/ifElse.js
var init_ifElse = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/ifElse.js"() {
    init_curry3();
    init_curryN2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/inc.js
var init_inc = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/inc.js"() {
    init_add();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/includes.js
var init_includes2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/includes.js"() {
    init_includes();
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/indexBy.js
var init_indexBy = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/indexBy.js"() {
    init_reduceBy();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/indexOf.js
var init_indexOf2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/indexOf.js"() {
    init_curry2();
    init_indexOf();
    init_isArray();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/init.js
var init_init = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/init.js"() {
    init_slice();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/innerJoin.js
var init_innerJoin = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/innerJoin.js"() {
    init_includesWith();
    init_curry3();
    init_filter();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/insert.js
var init_insert = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/insert.js"() {
    init_curry3();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/insertAll.js
var init_insertAll = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/insertAll.js"() {
    init_curry3();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xuniqBy.js
var XUniqBy, _xuniqBy, xuniqBy_default;
var init_xuniqBy = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xuniqBy.js"() {
    init_curry2();
    init_Set();
    init_xfBase();
    XUniqBy = /* @__PURE__ */ (function() {
      function XUniqBy2(f, xf) {
        this.xf = xf;
        this.f = f;
        this.set = new Set_default();
      }
      XUniqBy2.prototype["@@transducer/init"] = xfBase_default.init;
      XUniqBy2.prototype["@@transducer/result"] = xfBase_default.result;
      XUniqBy2.prototype["@@transducer/step"] = function(result2, input) {
        return this.set.add(this.f(input)) ? this.xf["@@transducer/step"](result2, input) : result2;
      };
      return XUniqBy2;
    })();
    _xuniqBy = /* @__PURE__ */ _curry2(function _xuniqBy2(f, xf) {
      return new XUniqBy(f, xf);
    });
    xuniqBy_default = _xuniqBy;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/uniqBy.js
var uniqBy, uniqBy_default;
var init_uniqBy = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/uniqBy.js"() {
    init_Set();
    init_curry2();
    init_dispatchable();
    init_xuniqBy();
    uniqBy = /* @__PURE__ */ _curry2(
      /* @__PURE__ */ _dispatchable([], xuniqBy_default, function(fn, list2) {
        var set2 = new Set_default();
        var result2 = [];
        var idx = 0;
        var appliedItem, item;
        while (idx < list2.length) {
          item = list2[idx];
          appliedItem = fn(item);
          if (set2.add(appliedItem)) {
            result2.push(item);
          }
          idx += 1;
        }
        return result2;
      })
    );
    uniqBy_default = uniqBy;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/uniq.js
var uniq, uniq_default;
var init_uniq = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/uniq.js"() {
    init_identity2();
    init_uniqBy();
    uniq = /* @__PURE__ */ uniqBy_default(identity_default);
    uniq_default = uniq;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/intersection.js
var init_intersection = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/intersection.js"() {
    init_includes();
    init_curry2();
    init_filter();
    init_flip();
    init_uniq();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/intersperse.js
var init_intersperse = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/intersperse.js"() {
    init_checkForMethod();
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_objectAssign.js
function _objectAssign(target2) {
  if (target2 == null) {
    throw new TypeError("Cannot convert undefined or null to object");
  }
  var output = Object(target2);
  var idx = 1;
  var length = arguments.length;
  while (idx < length) {
    var source = arguments[idx];
    if (source != null) {
      for (var nextKey in source) {
        if (_has(nextKey, source)) {
          output[nextKey] = source[nextKey];
        }
      }
    }
    idx += 1;
  }
  return output;
}
var objectAssign_default;
var init_objectAssign = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_objectAssign.js"() {
    init_has();
    objectAssign_default = typeof Object.assign === "function" ? Object.assign : _objectAssign;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/objOf.js
var init_objOf = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/objOf.js"() {
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_stepCat.js
var init_stepCat = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_stepCat.js"() {
    init_objectAssign();
    init_identity();
    init_isArrayLike();
    init_isTransformer();
    init_objOf();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/into.js
var init_into = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/into.js"() {
    init_clone();
    init_curry3();
    init_isTransformer();
    init_reduce();
    init_stepCat();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/invert.js
var init_invert = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/invert.js"() {
    init_curry1();
    init_has();
    init_keys();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/invertObj.js
var init_invertObj = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/invertObj.js"() {
    init_curry1();
    init_keys();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/invoker.js
var init_invoker = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/invoker.js"() {
    init_curry2();
    init_isFunction();
    init_curryN2();
    init_toString2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/is.js
var init_is = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/is.js"() {
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/isEmpty.js
var isEmpty, isEmpty_default;
var init_isEmpty = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/isEmpty.js"() {
    init_curry1();
    init_empty();
    init_equals2();
    isEmpty = /* @__PURE__ */ _curry1(function isEmpty2(x) {
      return x != null && equals_default(x, empty_default(x));
    });
    isEmpty_default = isEmpty;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/join.js
var init_join = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/join.js"() {
    init_invoker();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/juxt.js
var juxt, juxt_default;
var init_juxt = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/juxt.js"() {
    init_curry1();
    init_converge();
    juxt = /* @__PURE__ */ _curry1(function juxt2(fns) {
      return converge_default(function() {
        return Array.prototype.slice.call(arguments, 0);
      }, fns);
    });
    juxt_default = juxt;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/keysIn.js
var init_keysIn = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/keysIn.js"() {
    init_curry1();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/lastIndexOf.js
var init_lastIndexOf = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/lastIndexOf.js"() {
    init_curry2();
    init_isArray();
    init_equals2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_isNumber.js
var init_isNumber = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_isNumber.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/length.js
var init_length = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/length.js"() {
    init_curry1();
    init_isNumber();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/lens.js
var init_lens = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/lens.js"() {
    init_curry2();
    init_map2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/update.js
var init_update = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/update.js"() {
    init_curry3();
    init_adjust();
    init_always();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/lensIndex.js
var init_lensIndex = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/lensIndex.js"() {
    init_curry1();
    init_lens();
    init_nth();
    init_update();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/paths.js
var paths, paths_default;
var init_paths = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/paths.js"() {
    init_curry2();
    init_isInteger();
    init_nth();
    paths = /* @__PURE__ */ _curry2(function paths2(pathsArray, obj) {
      return pathsArray.map(function(paths3) {
        var val = obj;
        var idx = 0;
        var p;
        while (idx < paths3.length) {
          if (val == null) {
            return;
          }
          p = paths3[idx];
          val = isInteger_default(p) ? nth_default(p, val) : val[p];
          idx += 1;
        }
        return val;
      });
    });
    paths_default = paths;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/path.js
var path6, path_default;
var init_path = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/path.js"() {
    init_curry2();
    init_paths();
    path6 = /* @__PURE__ */ _curry2(function path7(pathAr, obj) {
      return paths_default([pathAr], obj)[0];
    });
    path_default = path6;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/lensPath.js
var init_lensPath = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/lensPath.js"() {
    init_curry1();
    init_assocPath();
    init_lens();
    init_path();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/lensProp.js
var init_lensProp = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/lensProp.js"() {
    init_curry1();
    init_assoc2();
    init_lens();
    init_prop();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/lt.js
var init_lt = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/lt.js"() {
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/lte.js
var init_lte = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/lte.js"() {
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/mapAccum.js
var init_mapAccum = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/mapAccum.js"() {
    init_curry3();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/mapAccumRight.js
var init_mapAccumRight = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/mapAccumRight.js"() {
    init_curry3();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/mapObjIndexed.js
var init_mapObjIndexed = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/mapObjIndexed.js"() {
    init_curry2();
    init_reduce();
    init_keys();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/match.js
var init_match = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/match.js"() {
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/mathMod.js
var init_mathMod = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/mathMod.js"() {
    init_curry2();
    init_isInteger();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/maxBy.js
var init_maxBy = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/maxBy.js"() {
    init_curry3();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/sum.js
var init_sum = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/sum.js"() {
    init_add();
    init_reduce2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/mean.js
var init_mean = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/mean.js"() {
    init_curry1();
    init_sum();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/median.js
var init_median = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/median.js"() {
    init_curry1();
    init_mean();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/memoizeWith.js
var init_memoizeWith = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/memoizeWith.js"() {
    init_arity();
    init_curry2();
    init_has();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/mergeAll.js
var mergeAll, mergeAll_default;
var init_mergeAll = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/mergeAll.js"() {
    init_objectAssign();
    init_curry1();
    mergeAll = /* @__PURE__ */ _curry1(function mergeAll2(list2) {
      return objectAssign_default.apply(null, [{}].concat(list2));
    });
    mergeAll_default = mergeAll;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/mergeWithKey.js
var init_mergeWithKey = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/mergeWithKey.js"() {
    init_curry3();
    init_has();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/mergeDeepWithKey.js
var init_mergeDeepWithKey = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/mergeDeepWithKey.js"() {
    init_curry3();
    init_isObject();
    init_mergeWithKey();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/mergeDeepLeft.js
var init_mergeDeepLeft = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/mergeDeepLeft.js"() {
    init_curry2();
    init_mergeDeepWithKey();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/mergeDeepRight.js
var init_mergeDeepRight = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/mergeDeepRight.js"() {
    init_curry2();
    init_mergeDeepWithKey();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/mergeDeepWith.js
var init_mergeDeepWith = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/mergeDeepWith.js"() {
    init_curry3();
    init_mergeDeepWithKey();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/mergeLeft.js
var init_mergeLeft = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/mergeLeft.js"() {
    init_objectAssign();
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/mergeRight.js
var mergeRight, mergeRight_default;
var init_mergeRight = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/mergeRight.js"() {
    init_objectAssign();
    init_curry2();
    mergeRight = /* @__PURE__ */ _curry2(function mergeRight2(l, r) {
      return objectAssign_default({}, l, r);
    });
    mergeRight_default = mergeRight;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/mergeWith.js
var init_mergeWith = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/mergeWith.js"() {
    init_curry3();
    init_mergeWithKey();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/min.js
var init_min = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/min.js"() {
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/minBy.js
var init_minBy = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/minBy.js"() {
    init_curry3();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_modify.js
var init_modify = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_modify.js"() {
    init_isArray();
    init_isInteger();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/modifyPath.js
var init_modifyPath = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/modifyPath.js"() {
    init_curry3();
    init_isArray();
    init_isObject();
    init_has();
    init_assoc();
    init_modify();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/modify.js
var init_modify2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/modify.js"() {
    init_curry3();
    init_modifyPath();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/modulo.js
var init_modulo = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/modulo.js"() {
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/move.js
var init_move = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/move.js"() {
    init_curry3();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/multiply.js
var init_multiply = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/multiply.js"() {
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/partialObject.js
var init_partialObject = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/partialObject.js"() {
    init_mergeDeepRight();
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/negate.js
var init_negate = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/negate.js"() {
    init_curry1();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/none.js
var init_none = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/none.js"() {
    init_complement2();
    init_curry2();
    init_all2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/nthArg.js
var init_nthArg = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/nthArg.js"() {
    init_curry1();
    init_curryN2();
    init_nth();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/o.js
var init_o = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/o.js"() {
    init_curry3();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_of.js
var init_of = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_of.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/of.js
var init_of2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/of.js"() {
    init_curry1();
    init_of();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/omit.js
var omit, omit_default;
var init_omit = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/omit.js"() {
    init_curry2();
    omit = /* @__PURE__ */ _curry2(function omit2(names, obj) {
      var result2 = {};
      var index = {};
      var idx = 0;
      var len = names.length;
      while (idx < len) {
        index[names[idx]] = 1;
        idx += 1;
      }
      for (var prop3 in obj) {
        if (!index.hasOwnProperty(prop3)) {
          result2[prop3] = obj[prop3];
        }
      }
      return result2;
    });
    omit_default = omit;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/on.js
var init_on = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/on.js"() {
    init_curryN();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/once.js
var once, once_default;
var init_once = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/once.js"() {
    init_arity();
    init_curry1();
    once = /* @__PURE__ */ _curry1(function once2(fn) {
      var called = false;
      var result2;
      return _arity(fn.length, function() {
        if (called) {
          return result2;
        }
        called = true;
        result2 = fn.apply(this, arguments);
        return result2;
      });
    });
    once_default = once;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_assertPromise.js
var init_assertPromise = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_assertPromise.js"() {
    init_isFunction();
    init_toString();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/otherwise.js
var init_otherwise = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/otherwise.js"() {
    init_curry2();
    init_assertPromise();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/over.js
var init_over = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/over.js"() {
    init_curry3();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/pair.js
var init_pair = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/pair.js"() {
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_createPartialApplicator.js
var init_createPartialApplicator = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_createPartialApplicator.js"() {
    init_arity();
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/partial.js
var init_partial = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/partial.js"() {
    init_concat();
    init_createPartialApplicator();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/partialRight.js
var init_partialRight = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/partialRight.js"() {
    init_concat();
    init_createPartialApplicator();
    init_flip();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/partition.js
var partition, partition_default;
var init_partition = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/partition.js"() {
    init_filter2();
    init_juxt();
    init_reject();
    partition = /* @__PURE__ */ juxt_default([filter_default, reject_default]);
    partition_default = partition;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/pathEq.js
var init_pathEq = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/pathEq.js"() {
    init_curry3();
    init_equals2();
    init_path();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/pathOr.js
var init_pathOr = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/pathOr.js"() {
    init_curry3();
    init_defaultTo();
    init_path();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/pathSatisfies.js
var init_pathSatisfies = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/pathSatisfies.js"() {
    init_curry3();
    init_path();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/pick.js
var pick, pick_default;
var init_pick = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/pick.js"() {
    init_curry2();
    pick = /* @__PURE__ */ _curry2(function pick2(names, obj) {
      var result2 = {};
      var idx = 0;
      while (idx < names.length) {
        if (names[idx] in obj) {
          result2[names[idx]] = obj[names[idx]];
        }
        idx += 1;
      }
      return result2;
    });
    pick_default = pick;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/pickAll.js
var pickAll, pickAll_default;
var init_pickAll = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/pickAll.js"() {
    init_curry2();
    pickAll = /* @__PURE__ */ _curry2(function pickAll2(names, obj) {
      var result2 = {};
      var idx = 0;
      var len = names.length;
      while (idx < len) {
        var name = names[idx];
        result2[name] = obj[name];
        idx += 1;
      }
      return result2;
    });
    pickAll_default = pickAll;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/pickBy.js
var pickBy, pickBy_default;
var init_pickBy = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/pickBy.js"() {
    init_curry2();
    pickBy = /* @__PURE__ */ _curry2(function pickBy2(test, obj) {
      var result2 = {};
      for (var prop3 in obj) {
        if (test(obj[prop3], prop3, obj)) {
          result2[prop3] = obj[prop3];
        }
      }
      return result2;
    });
    pickBy_default = pickBy;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/prepend.js
var init_prepend = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/prepend.js"() {
    init_concat();
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/product.js
var init_product = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/product.js"() {
    init_multiply();
    init_reduce2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/useWith.js
var init_useWith = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/useWith.js"() {
    init_curry2();
    init_curryN2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/project.js
var init_project2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/project.js"() {
    init_map();
    init_identity2();
    init_pickAll();
    init_useWith();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_promap.js
var init_promap = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_promap.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xpromap.js
var init_xpromap = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xpromap.js"() {
    init_curry3();
    init_xfBase();
    init_promap();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/promap.js
var init_promap2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/promap.js"() {
    init_curry3();
    init_dispatchable();
    init_promap();
    init_xpromap();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/propEq.js
var init_propEq = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/propEq.js"() {
    init_curry3();
    init_prop();
    init_equals2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/propIs.js
var init_propIs = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/propIs.js"() {
    init_curry3();
    init_prop();
    init_is();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/propOr.js
var init_propOr = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/propOr.js"() {
    init_curry3();
    init_defaultTo();
    init_prop();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/propSatisfies.js
var init_propSatisfies = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/propSatisfies.js"() {
    init_curry3();
    init_prop();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/props.js
var props, props_default;
var init_props = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/props.js"() {
    init_curry2();
    init_path();
    props = /* @__PURE__ */ _curry2(function props2(ps, obj) {
      return ps.map(function(p) {
        return path_default([p], obj);
      });
    });
    props_default = props;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/range.js
var init_range = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/range.js"() {
    init_curry2();
    init_isNumber();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/reduceRight.js
var init_reduceRight = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/reduceRight.js"() {
    init_curry3();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/reduceWhile.js
var init_reduceWhile = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/reduceWhile.js"() {
    init_curryN();
    init_reduce();
    init_reduced();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/reduced.js
var init_reduced2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/reduced.js"() {
    init_curry1();
    init_reduced();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/times.js
var times, times_default;
var init_times = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/times.js"() {
    init_curry2();
    times = /* @__PURE__ */ _curry2(function times2(fn, n2) {
      var len = Number(n2);
      var idx = 0;
      var list2;
      if (len < 0 || isNaN(len)) {
        throw new RangeError("n must be a non-negative number");
      }
      list2 = new Array(len);
      while (idx < len) {
        list2[idx] = fn(idx);
        idx += 1;
      }
      return list2;
    });
    times_default = times;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/repeat.js
var repeat2, repeat_default;
var init_repeat = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/repeat.js"() {
    init_curry2();
    init_always();
    init_times();
    repeat2 = /* @__PURE__ */ _curry2(function repeat3(value, n2) {
      return times_default(always_default(value), n2);
    });
    repeat_default = repeat2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/replace.js
var init_replace = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/replace.js"() {
    init_curry3();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/scan.js
var init_scan = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/scan.js"() {
    init_curry3();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/sequence.js
var init_sequence = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/sequence.js"() {
    init_curry2();
    init_ap();
    init_map2();
    init_prepend();
    init_reduceRight();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/set.js
var init_set = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/set.js"() {
    init_curry3();
    init_always();
    init_over();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/sort.js
var init_sort = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/sort.js"() {
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/sortBy.js
var sortBy, sortBy_default;
var init_sortBy = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/sortBy.js"() {
    init_curry2();
    sortBy = /* @__PURE__ */ _curry2(function sortBy2(fn, list2) {
      return Array.prototype.slice.call(list2, 0).sort(function(a2, b) {
        var aa = fn(a2);
        var bb = fn(b);
        return aa < bb ? -1 : aa > bb ? 1 : 0;
      });
    });
    sortBy_default = sortBy;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/sortWith.js
var sortWith, sortWith_default;
var init_sortWith = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/sortWith.js"() {
    init_curry2();
    sortWith = /* @__PURE__ */ _curry2(function sortWith2(fns, list2) {
      return Array.prototype.slice.call(list2, 0).sort(function(a2, b) {
        var result2 = 0;
        var i2 = 0;
        while (result2 === 0 && i2 < fns.length) {
          result2 = fns[i2](a2, b);
          i2 += 1;
        }
        return result2;
      });
    });
    sortWith_default = sortWith;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/split.js
var init_split = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/split.js"() {
    init_invoker();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/splitAt.js
var init_splitAt = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/splitAt.js"() {
    init_curry2();
    init_length();
    init_slice();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/splitEvery.js
var init_splitEvery = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/splitEvery.js"() {
    init_curry2();
    init_slice();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/splitWhen.js
var init_splitWhen = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/splitWhen.js"() {
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/splitWhenever.js
var init_splitWhenever = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/splitWhenever.js"() {
    init_curryN();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/startsWith.js
var init_startsWith = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/startsWith.js"() {
    init_curry2();
    init_equals2();
    init_take();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/subtract.js
var init_subtract = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/subtract.js"() {
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/symmetricDifference.js
var init_symmetricDifference = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/symmetricDifference.js"() {
    init_curry2();
    init_concat2();
    init_difference();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/symmetricDifferenceWith.js
var init_symmetricDifferenceWith = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/symmetricDifferenceWith.js"() {
    init_curry3();
    init_concat2();
    init_differenceWith();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/takeLastWhile.js
var init_takeLastWhile = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/takeLastWhile.js"() {
    init_curry2();
    init_slice();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xtakeWhile.js
var init_xtakeWhile = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xtakeWhile.js"() {
    init_curry2();
    init_reduced();
    init_xfBase();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/takeWhile.js
var init_takeWhile = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/takeWhile.js"() {
    init_curry2();
    init_dispatchable();
    init_xtakeWhile();
    init_slice();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xtap.js
var init_xtap = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xtap.js"() {
    init_curry2();
    init_xfBase();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/tap.js
var init_tap = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/tap.js"() {
    init_curry2();
    init_dispatchable();
    init_xtap();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_isRegExp.js
var init_isRegExp = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_isRegExp.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/test.js
var init_test = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/test.js"() {
    init_cloneRegExp();
    init_curry2();
    init_isRegExp();
    init_toString2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/andThen.js
var init_andThen = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/andThen.js"() {
    init_curry2();
    init_assertPromise();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/toLower.js
var init_toLower = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/toLower.js"() {
    init_invoker();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/toPairs.js
var init_toPairs = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/toPairs.js"() {
    init_curry1();
    init_has();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/toPairsIn.js
var init_toPairsIn = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/toPairsIn.js"() {
    init_curry1();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/toUpper.js
var init_toUpper = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/toUpper.js"() {
    init_invoker();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/transduce.js
var init_transduce = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/transduce.js"() {
    init_reduce();
    init_xwrap();
    init_curryN2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/transpose.js
var init_transpose = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/transpose.js"() {
    init_curry1();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/traverse.js
var init_traverse = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/traverse.js"() {
    init_curry3();
    init_map2();
    init_sequence();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/trim.js
var hasProtoTrim;
var init_trim = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/trim.js"() {
    init_curry1();
    hasProtoTrim = typeof String.prototype.trim === "function";
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/tryCatch.js
var init_tryCatch = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/tryCatch.js"() {
    init_arity();
    init_concat();
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/unapply.js
var init_unapply = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/unapply.js"() {
    init_curry1();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/unary.js
var init_unary = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/unary.js"() {
    init_curry1();
    init_nAry();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/uncurryN.js
var init_uncurryN = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/uncurryN.js"() {
    init_curry2();
    init_curryN2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/unfold.js
var init_unfold = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/unfold.js"() {
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/union.js
var union, union_default;
var init_union = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/union.js"() {
    init_concat();
    init_curry2();
    init_compose();
    init_uniq();
    union = /* @__PURE__ */ _curry2(
      /* @__PURE__ */ compose(uniq_default, _concat)
    );
    union_default = union;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xuniqWith.js
var init_xuniqWith = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/internal/_xuniqWith.js"() {
    init_curry2();
    init_includesWith();
    init_xfBase();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/uniqWith.js
var init_uniqWith = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/uniqWith.js"() {
    init_curry2();
    init_dispatchable();
    init_includesWith();
    init_xuniqWith();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/unionWith.js
var init_unionWith = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/unionWith.js"() {
    init_concat();
    init_curry3();
    init_uniqWith();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/unless.js
var init_unless = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/unless.js"() {
    init_curry3();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/unnest.js
var unnest, unnest_default;
var init_unnest = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/unnest.js"() {
    init_identity();
    init_chain();
    unnest = /* @__PURE__ */ chain_default(_identity);
    unnest_default = unnest;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/until.js
var init_until = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/until.js"() {
    init_curry3();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/unwind.js
var init_unwind = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/unwind.js"() {
    init_curry2();
    init_isArray();
    init_map();
    init_assoc();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/valuesIn.js
var init_valuesIn = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/valuesIn.js"() {
    init_curry1();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/view.js
var init_view = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/view.js"() {
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/when.js
var init_when = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/when.js"() {
    init_curry3();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/where.js
var init_where = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/where.js"() {
    init_curry2();
    init_has();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/whereAny.js
var init_whereAny = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/whereAny.js"() {
    init_curry2();
    init_has();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/whereEq.js
var init_whereEq = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/whereEq.js"() {
    init_curry2();
    init_equals2();
    init_map2();
    init_where();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/without.js
var without, without_default;
var init_without = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/without.js"() {
    init_includes();
    init_curry2();
    init_flip();
    init_reject();
    without = /* @__PURE__ */ _curry2(function(xs, list2) {
      return reject_default(flip_default(_includes)(xs), list2);
    });
    without_default = without;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/xor.js
var init_xor = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/xor.js"() {
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/xprod.js
var init_xprod = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/xprod.js"() {
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/zip.js
var init_zip = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/zip.js"() {
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/zipObj.js
var init_zipObj = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/zipObj.js"() {
    init_curry2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/zipWith.js
var zipWith, zipWith_default;
var init_zipWith = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/zipWith.js"() {
    init_curry3();
    zipWith = /* @__PURE__ */ _curry3(function zipWith2(fn, a2, b) {
      var rv = [];
      var idx = 0;
      var len = Math.min(a2.length, b.length);
      while (idx < len) {
        rv[idx] = fn(a2[idx], b[idx]);
        idx += 1;
      }
      return rv;
    });
    zipWith_default = zipWith;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/thunkify.js
var init_thunkify = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/thunkify.js"() {
    init_curryN2();
    init_curry1();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/index.js
var init_es = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/ramda/0.28.1/c4df61b4c283791367d9ccd5a5b0b321606af832cd85ffa81c5891650816710b/node_modules/@pnpm/ramda/es/index.js"() {
    init_F();
    init_T();
    init__();
    init_add();
    init_addIndex();
    init_adjust();
    init_all2();
    init_allPass();
    init_always();
    init_and();
    init_any();
    init_anyPass();
    init_ap();
    init_aperture2();
    init_append();
    init_apply();
    init_applySpec();
    init_applyTo();
    init_ascend();
    init_assoc2();
    init_assocPath();
    init_binary();
    init_bind();
    init_both();
    init_call();
    init_chain();
    init_clamp();
    init_clone2();
    init_collectBy();
    init_comparator();
    init_complement();
    init_compose();
    init_composeWith();
    init_concat2();
    init_cond();
    init_construct();
    init_constructN();
    init_converge();
    init_count();
    init_countBy();
    init_curry();
    init_curryN2();
    init_dec();
    init_defaultTo();
    init_descend();
    init_difference();
    init_differenceWith();
    init_dissoc2();
    init_dissocPath();
    init_divide();
    init_drop();
    init_dropLast2();
    init_dropLastWhile2();
    init_dropRepeats();
    init_dropRepeatsWith();
    init_dropWhile();
    init_either();
    init_empty();
    init_endsWith();
    init_eqBy();
    init_eqProps();
    init_equals2();
    init_evolve();
    init_filter2();
    init_find();
    init_findIndex();
    init_findLast();
    init_findLastIndex();
    init_flatten();
    init_flip();
    init_forEach();
    init_forEachObjIndexed();
    init_fromPairs();
    init_groupBy();
    init_groupWith();
    init_gt();
    init_gte();
    init_has2();
    init_hasIn();
    init_hasPath();
    init_head();
    init_identical();
    init_identity2();
    init_ifElse();
    init_inc();
    init_includes2();
    init_indexBy();
    init_indexOf2();
    init_init();
    init_innerJoin();
    init_insert();
    init_insertAll();
    init_intersection();
    init_intersperse();
    init_into();
    init_invert();
    init_invertObj();
    init_invoker();
    init_is();
    init_isEmpty();
    init_isNil();
    init_join();
    init_juxt();
    init_keys();
    init_keysIn();
    init_last();
    init_lastIndexOf();
    init_length();
    init_lens();
    init_lensIndex();
    init_lensPath();
    init_lensProp();
    init_lift();
    init_liftN();
    init_lt();
    init_lte();
    init_map2();
    init_mapAccum();
    init_mapAccumRight();
    init_mapObjIndexed();
    init_match();
    init_mathMod();
    init_max();
    init_maxBy();
    init_mean();
    init_median();
    init_memoizeWith();
    init_mergeAll();
    init_mergeDeepLeft();
    init_mergeDeepRight();
    init_mergeDeepWith();
    init_mergeDeepWithKey();
    init_mergeLeft();
    init_mergeRight();
    init_mergeWith();
    init_mergeWithKey();
    init_min();
    init_minBy();
    init_modify2();
    init_modifyPath();
    init_modulo();
    init_move();
    init_multiply();
    init_nAry();
    init_partialObject();
    init_negate();
    init_none();
    init_not();
    init_nth();
    init_nthArg();
    init_o();
    init_objOf();
    init_of2();
    init_omit();
    init_on();
    init_once();
    init_or();
    init_otherwise();
    init_over();
    init_pair();
    init_partial();
    init_partialRight();
    init_partition();
    init_path();
    init_paths();
    init_pathEq();
    init_pathOr();
    init_pathSatisfies();
    init_pick();
    init_pickAll();
    init_pickBy();
    init_pipe2();
    init_pipeWith();
    init_pluck();
    init_prepend();
    init_product();
    init_project2();
    init_promap2();
    init_prop();
    init_propEq();
    init_propIs();
    init_propOr();
    init_propSatisfies();
    init_props();
    init_range();
    init_reduce2();
    init_reduceBy();
    init_reduceRight();
    init_reduceWhile();
    init_reduced2();
    init_reject();
    init_remove();
    init_repeat();
    init_replace();
    init_reverse();
    init_scan();
    init_sequence();
    init_set();
    init_slice();
    init_sort();
    init_sortBy();
    init_sortWith();
    init_split();
    init_splitAt();
    init_splitEvery();
    init_splitWhen();
    init_splitWhenever();
    init_startsWith();
    init_subtract();
    init_sum();
    init_symmetricDifference();
    init_symmetricDifferenceWith();
    init_tail();
    init_take();
    init_takeLast();
    init_takeLastWhile();
    init_takeWhile();
    init_tap();
    init_test();
    init_andThen();
    init_times();
    init_toLower();
    init_toPairs();
    init_toPairsIn();
    init_toString2();
    init_toUpper();
    init_transduce();
    init_transpose();
    init_traverse();
    init_trim();
    init_tryCatch();
    init_type();
    init_unapply();
    init_unary();
    init_uncurryN();
    init_unfold();
    init_union();
    init_unionWith();
    init_uniq();
    init_uniqBy();
    init_uniqWith();
    init_unless();
    init_unnest();
    init_until();
    init_unwind();
    init_update();
    init_useWith();
    init_values();
    init_valuesIn();
    init_view();
    init_when();
    init_where();
    init_whereAny();
    init_whereEq();
    init_without();
    init_xor();
    init_xprod();
    init_zip();
    init_zipObj();
    init_zipWith();
    init_thunkify();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/minipass/7.1.3/a7614fb87a3c89f60d8477ebaa7ab06ecdd2299e5cf0ba9963f19ef4d1c338ae/node_modules/minipass/dist/commonjs/index.js
var require_commonjs = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/minipass/7.1.3/a7614fb87a3c89f60d8477ebaa7ab06ecdd2299e5cf0ba9963f19ef4d1c338ae/node_modules/minipass/dist/commonjs/index.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.Minipass = exports2.isWritable = exports2.isReadable = exports2.isStream = void 0;
    var proc = typeof process === "object" && process ? process : {
      stdout: null,
      stderr: null
    };
    var node_events_1 = __require("node:events");
    var node_stream_1 = __importDefault2(__require("node:stream"));
    var node_string_decoder_1 = __require("node:string_decoder");
    var isStream3 = (s) => !!s && typeof s === "object" && (s instanceof Minipass || s instanceof node_stream_1.default || (0, exports2.isReadable)(s) || (0, exports2.isWritable)(s));
    exports2.isStream = isStream3;
    var isReadable = (s) => !!s && typeof s === "object" && s instanceof node_events_1.EventEmitter && typeof s.pipe === "function" && // node core Writable streams have a pipe() method, but it throws
    s.pipe !== node_stream_1.default.Writable.prototype.pipe;
    exports2.isReadable = isReadable;
    var isWritable = (s) => !!s && typeof s === "object" && s instanceof node_events_1.EventEmitter && typeof s.write === "function" && typeof s.end === "function";
    exports2.isWritable = isWritable;
    var EOF = /* @__PURE__ */ Symbol("EOF");
    var MAYBE_EMIT_END = /* @__PURE__ */ Symbol("maybeEmitEnd");
    var EMITTED_END = /* @__PURE__ */ Symbol("emittedEnd");
    var EMITTING_END = /* @__PURE__ */ Symbol("emittingEnd");
    var EMITTED_ERROR = /* @__PURE__ */ Symbol("emittedError");
    var CLOSED = /* @__PURE__ */ Symbol("closed");
    var READ = /* @__PURE__ */ Symbol("read");
    var FLUSH = /* @__PURE__ */ Symbol("flush");
    var FLUSHCHUNK = /* @__PURE__ */ Symbol("flushChunk");
    var ENCODING = /* @__PURE__ */ Symbol("encoding");
    var DECODER = /* @__PURE__ */ Symbol("decoder");
    var FLOWING = /* @__PURE__ */ Symbol("flowing");
    var PAUSED = /* @__PURE__ */ Symbol("paused");
    var RESUME = /* @__PURE__ */ Symbol("resume");
    var BUFFER = /* @__PURE__ */ Symbol("buffer");
    var PIPES = /* @__PURE__ */ Symbol("pipes");
    var BUFFERLENGTH = /* @__PURE__ */ Symbol("bufferLength");
    var BUFFERPUSH = /* @__PURE__ */ Symbol("bufferPush");
    var BUFFERSHIFT = /* @__PURE__ */ Symbol("bufferShift");
    var OBJECTMODE = /* @__PURE__ */ Symbol("objectMode");
    var DESTROYED = /* @__PURE__ */ Symbol("destroyed");
    var ERROR = /* @__PURE__ */ Symbol("error");
    var EMITDATA = /* @__PURE__ */ Symbol("emitData");
    var EMITEND = /* @__PURE__ */ Symbol("emitEnd");
    var EMITEND2 = /* @__PURE__ */ Symbol("emitEnd2");
    var ASYNC = /* @__PURE__ */ Symbol("async");
    var ABORT = /* @__PURE__ */ Symbol("abort");
    var ABORTED = /* @__PURE__ */ Symbol("aborted");
    var SIGNAL = /* @__PURE__ */ Symbol("signal");
    var DATALISTENERS = /* @__PURE__ */ Symbol("dataListeners");
    var DISCARDED = /* @__PURE__ */ Symbol("discarded");
    var defer = (fn) => Promise.resolve().then(fn);
    var nodefer = (fn) => fn();
    var isEndish = (ev) => ev === "end" || ev === "finish" || ev === "prefinish";
    var isArrayBufferLike = (b) => b instanceof ArrayBuffer || !!b && typeof b === "object" && b.constructor && b.constructor.name === "ArrayBuffer" && b.byteLength >= 0;
    var isArrayBufferView = (b) => !Buffer.isBuffer(b) && ArrayBuffer.isView(b);
    var Pipe = class {
      src;
      dest;
      opts;
      ondrain;
      constructor(src2, dest, opts2) {
        this.src = src2;
        this.dest = dest;
        this.opts = opts2;
        this.ondrain = () => src2[RESUME]();
        this.dest.on("drain", this.ondrain);
      }
      unpipe() {
        this.dest.removeListener("drain", this.ondrain);
      }
      // only here for the prototype
      /* c8 ignore start */
      proxyErrors(_er) {
      }
      /* c8 ignore stop */
      end() {
        this.unpipe();
        if (this.opts.end)
          this.dest.end();
      }
    };
    var PipeProxyErrors = class extends Pipe {
      unpipe() {
        this.src.removeListener("error", this.proxyErrors);
        super.unpipe();
      }
      constructor(src2, dest, opts2) {
        super(src2, dest, opts2);
        this.proxyErrors = (er) => this.dest.emit("error", er);
        src2.on("error", this.proxyErrors);
      }
    };
    var isObjectModeOptions = (o2) => !!o2.objectMode;
    var isEncodingOptions = (o2) => !o2.objectMode && !!o2.encoding && o2.encoding !== "buffer";
    var Minipass = class extends node_events_1.EventEmitter {
      [FLOWING] = false;
      [PAUSED] = false;
      [PIPES] = [];
      [BUFFER] = [];
      [OBJECTMODE];
      [ENCODING];
      [ASYNC];
      [DECODER];
      [EOF] = false;
      [EMITTED_END] = false;
      [EMITTING_END] = false;
      [CLOSED] = false;
      [EMITTED_ERROR] = null;
      [BUFFERLENGTH] = 0;
      [DESTROYED] = false;
      [SIGNAL];
      [ABORTED] = false;
      [DATALISTENERS] = 0;
      [DISCARDED] = false;
      /**
       * true if the stream can be written
       */
      writable = true;
      /**
       * true if the stream can be read
       */
      readable = true;
      /**
       * If `RType` is Buffer, then options do not need to be provided.
       * Otherwise, an options object must be provided to specify either
       * {@link Minipass.SharedOptions.objectMode} or
       * {@link Minipass.SharedOptions.encoding}, as appropriate.
       */
      constructor(...args) {
        const options = args[0] || {};
        super();
        if (options.objectMode && typeof options.encoding === "string") {
          throw new TypeError("Encoding and objectMode may not be used together");
        }
        if (isObjectModeOptions(options)) {
          this[OBJECTMODE] = true;
          this[ENCODING] = null;
        } else if (isEncodingOptions(options)) {
          this[ENCODING] = options.encoding;
          this[OBJECTMODE] = false;
        } else {
          this[OBJECTMODE] = false;
          this[ENCODING] = null;
        }
        this[ASYNC] = !!options.async;
        this[DECODER] = this[ENCODING] ? new node_string_decoder_1.StringDecoder(this[ENCODING]) : null;
        if (options && options.debugExposeBuffer === true) {
          Object.defineProperty(this, "buffer", { get: () => this[BUFFER] });
        }
        if (options && options.debugExposePipes === true) {
          Object.defineProperty(this, "pipes", { get: () => this[PIPES] });
        }
        const { signal } = options;
        if (signal) {
          this[SIGNAL] = signal;
          if (signal.aborted) {
            this[ABORT]();
          } else {
            signal.addEventListener("abort", () => this[ABORT]());
          }
        }
      }
      /**
       * The amount of data stored in the buffer waiting to be read.
       *
       * For Buffer strings, this will be the total byte length.
       * For string encoding streams, this will be the string character length,
       * according to JavaScript's `string.length` logic.
       * For objectMode streams, this is a count of the items waiting to be
       * emitted.
       */
      get bufferLength() {
        return this[BUFFERLENGTH];
      }
      /**
       * The `BufferEncoding` currently in use, or `null`
       */
      get encoding() {
        return this[ENCODING];
      }
      /**
       * @deprecated - This is a read only property
       */
      set encoding(_enc) {
        throw new Error("Encoding must be set at instantiation time");
      }
      /**
       * @deprecated - Encoding may only be set at instantiation time
       */
      setEncoding(_enc) {
        throw new Error("Encoding must be set at instantiation time");
      }
      /**
       * True if this is an objectMode stream
       */
      get objectMode() {
        return this[OBJECTMODE];
      }
      /**
       * @deprecated - This is a read-only property
       */
      set objectMode(_om) {
        throw new Error("objectMode must be set at instantiation time");
      }
      /**
       * true if this is an async stream
       */
      get ["async"]() {
        return this[ASYNC];
      }
      /**
       * Set to true to make this stream async.
       *
       * Once set, it cannot be unset, as this would potentially cause incorrect
       * behavior.  Ie, a sync stream can be made async, but an async stream
       * cannot be safely made sync.
       */
      set ["async"](a2) {
        this[ASYNC] = this[ASYNC] || !!a2;
      }
      // drop everything and get out of the flow completely
      [ABORT]() {
        this[ABORTED] = true;
        this.emit("abort", this[SIGNAL]?.reason);
        this.destroy(this[SIGNAL]?.reason);
      }
      /**
       * True if the stream has been aborted.
       */
      get aborted() {
        return this[ABORTED];
      }
      /**
       * No-op setter. Stream aborted status is set via the AbortSignal provided
       * in the constructor options.
       */
      set aborted(_) {
      }
      write(chunk, encoding, cb) {
        if (this[ABORTED])
          return false;
        if (this[EOF])
          throw new Error("write after end");
        if (this[DESTROYED]) {
          this.emit("error", Object.assign(new Error("Cannot call write after a stream was destroyed"), { code: "ERR_STREAM_DESTROYED" }));
          return true;
        }
        if (typeof encoding === "function") {
          cb = encoding;
          encoding = "utf8";
        }
        if (!encoding)
          encoding = "utf8";
        const fn = this[ASYNC] ? defer : nodefer;
        if (!this[OBJECTMODE] && !Buffer.isBuffer(chunk)) {
          if (isArrayBufferView(chunk)) {
            chunk = Buffer.from(chunk.buffer, chunk.byteOffset, chunk.byteLength);
          } else if (isArrayBufferLike(chunk)) {
            chunk = Buffer.from(chunk);
          } else if (typeof chunk !== "string") {
            throw new Error("Non-contiguous data written to non-objectMode stream");
          }
        }
        if (this[OBJECTMODE]) {
          if (this[FLOWING] && this[BUFFERLENGTH] !== 0)
            this[FLUSH](true);
          if (this[FLOWING])
            this.emit("data", chunk);
          else
            this[BUFFERPUSH](chunk);
          if (this[BUFFERLENGTH] !== 0)
            this.emit("readable");
          if (cb)
            fn(cb);
          return this[FLOWING];
        }
        if (!chunk.length) {
          if (this[BUFFERLENGTH] !== 0)
            this.emit("readable");
          if (cb)
            fn(cb);
          return this[FLOWING];
        }
        if (typeof chunk === "string" && // unless it is a string already ready for us to use
        !(encoding === this[ENCODING] && !this[DECODER]?.lastNeed)) {
          chunk = Buffer.from(chunk, encoding);
        }
        if (Buffer.isBuffer(chunk) && this[ENCODING]) {
          chunk = this[DECODER].write(chunk);
        }
        if (this[FLOWING] && this[BUFFERLENGTH] !== 0)
          this[FLUSH](true);
        if (this[FLOWING])
          this.emit("data", chunk);
        else
          this[BUFFERPUSH](chunk);
        if (this[BUFFERLENGTH] !== 0)
          this.emit("readable");
        if (cb)
          fn(cb);
        return this[FLOWING];
      }
      /**
       * Low-level explicit read method.
       *
       * In objectMode, the argument is ignored, and one item is returned if
       * available.
       *
       * `n` is the number of bytes (or in the case of encoding streams,
       * characters) to consume. If `n` is not provided, then the entire buffer
       * is returned, or `null` is returned if no data is available.
       *
       * If `n` is greater that the amount of data in the internal buffer,
       * then `null` is returned.
       */
      read(n2) {
        if (this[DESTROYED])
          return null;
        this[DISCARDED] = false;
        if (this[BUFFERLENGTH] === 0 || n2 === 0 || n2 && n2 > this[BUFFERLENGTH]) {
          this[MAYBE_EMIT_END]();
          return null;
        }
        if (this[OBJECTMODE])
          n2 = null;
        if (this[BUFFER].length > 1 && !this[OBJECTMODE]) {
          this[BUFFER] = [
            this[ENCODING] ? this[BUFFER].join("") : Buffer.concat(this[BUFFER], this[BUFFERLENGTH])
          ];
        }
        const ret2 = this[READ](n2 || null, this[BUFFER][0]);
        this[MAYBE_EMIT_END]();
        return ret2;
      }
      [READ](n2, chunk) {
        if (this[OBJECTMODE])
          this[BUFFERSHIFT]();
        else {
          const c3 = chunk;
          if (n2 === c3.length || n2 === null)
            this[BUFFERSHIFT]();
          else if (typeof c3 === "string") {
            this[BUFFER][0] = c3.slice(n2);
            chunk = c3.slice(0, n2);
            this[BUFFERLENGTH] -= n2;
          } else {
            this[BUFFER][0] = c3.subarray(n2);
            chunk = c3.subarray(0, n2);
            this[BUFFERLENGTH] -= n2;
          }
        }
        this.emit("data", chunk);
        if (!this[BUFFER].length && !this[EOF])
          this.emit("drain");
        return chunk;
      }
      end(chunk, encoding, cb) {
        if (typeof chunk === "function") {
          cb = chunk;
          chunk = void 0;
        }
        if (typeof encoding === "function") {
          cb = encoding;
          encoding = "utf8";
        }
        if (chunk !== void 0)
          this.write(chunk, encoding);
        if (cb)
          this.once("end", cb);
        this[EOF] = true;
        this.writable = false;
        if (this[FLOWING] || !this[PAUSED])
          this[MAYBE_EMIT_END]();
        return this;
      }
      // don't let the internal resume be overwritten
      [RESUME]() {
        if (this[DESTROYED])
          return;
        if (!this[DATALISTENERS] && !this[PIPES].length) {
          this[DISCARDED] = true;
        }
        this[PAUSED] = false;
        this[FLOWING] = true;
        this.emit("resume");
        if (this[BUFFER].length)
          this[FLUSH]();
        else if (this[EOF])
          this[MAYBE_EMIT_END]();
        else
          this.emit("drain");
      }
      /**
       * Resume the stream if it is currently in a paused state
       *
       * If called when there are no pipe destinations or `data` event listeners,
       * this will place the stream in a "discarded" state, where all data will
       * be thrown away. The discarded state is removed if a pipe destination or
       * data handler is added, if pause() is called, or if any synchronous or
       * asynchronous iteration is started.
       */
      resume() {
        return this[RESUME]();
      }
      /**
       * Pause the stream
       */
      pause() {
        this[FLOWING] = false;
        this[PAUSED] = true;
        this[DISCARDED] = false;
      }
      /**
       * true if the stream has been forcibly destroyed
       */
      get destroyed() {
        return this[DESTROYED];
      }
      /**
       * true if the stream is currently in a flowing state, meaning that
       * any writes will be immediately emitted.
       */
      get flowing() {
        return this[FLOWING];
      }
      /**
       * true if the stream is currently in a paused state
       */
      get paused() {
        return this[PAUSED];
      }
      [BUFFERPUSH](chunk) {
        if (this[OBJECTMODE])
          this[BUFFERLENGTH] += 1;
        else
          this[BUFFERLENGTH] += chunk.length;
        this[BUFFER].push(chunk);
      }
      [BUFFERSHIFT]() {
        if (this[OBJECTMODE])
          this[BUFFERLENGTH] -= 1;
        else
          this[BUFFERLENGTH] -= this[BUFFER][0].length;
        return this[BUFFER].shift();
      }
      [FLUSH](noDrain = false) {
        do {
        } while (this[FLUSHCHUNK](this[BUFFERSHIFT]()) && this[BUFFER].length);
        if (!noDrain && !this[BUFFER].length && !this[EOF])
          this.emit("drain");
      }
      [FLUSHCHUNK](chunk) {
        this.emit("data", chunk);
        return this[FLOWING];
      }
      /**
       * Pipe all data emitted by this stream into the destination provided.
       *
       * Triggers the flow of data.
       */
      pipe(dest, opts2) {
        if (this[DESTROYED])
          return dest;
        this[DISCARDED] = false;
        const ended = this[EMITTED_END];
        opts2 = opts2 || {};
        if (dest === proc.stdout || dest === proc.stderr)
          opts2.end = false;
        else
          opts2.end = opts2.end !== false;
        opts2.proxyErrors = !!opts2.proxyErrors;
        if (ended) {
          if (opts2.end)
            dest.end();
        } else {
          this[PIPES].push(!opts2.proxyErrors ? new Pipe(this, dest, opts2) : new PipeProxyErrors(this, dest, opts2));
          if (this[ASYNC])
            defer(() => this[RESUME]());
          else
            this[RESUME]();
        }
        return dest;
      }
      /**
       * Fully unhook a piped destination stream.
       *
       * If the destination stream was the only consumer of this stream (ie,
       * there are no other piped destinations or `'data'` event listeners)
       * then the flow of data will stop until there is another consumer or
       * {@link Minipass#resume} is explicitly called.
       */
      unpipe(dest) {
        const p = this[PIPES].find((p2) => p2.dest === dest);
        if (p) {
          if (this[PIPES].length === 1) {
            if (this[FLOWING] && this[DATALISTENERS] === 0) {
              this[FLOWING] = false;
            }
            this[PIPES] = [];
          } else
            this[PIPES].splice(this[PIPES].indexOf(p), 1);
          p.unpipe();
        }
      }
      /**
       * Alias for {@link Minipass#on}
       */
      addListener(ev, handler77) {
        return this.on(ev, handler77);
      }
      /**
       * Mostly identical to `EventEmitter.on`, with the following
       * behavior differences to prevent data loss and unnecessary hangs:
       *
       * - Adding a 'data' event handler will trigger the flow of data
       *
       * - Adding a 'readable' event handler when there is data waiting to be read
       *   will cause 'readable' to be emitted immediately.
       *
       * - Adding an 'endish' event handler ('end', 'finish', etc.) which has
       *   already passed will cause the event to be emitted immediately and all
       *   handlers removed.
       *
       * - Adding an 'error' event handler after an error has been emitted will
       *   cause the event to be re-emitted immediately with the error previously
       *   raised.
       */
      on(ev, handler77) {
        const ret2 = super.on(ev, handler77);
        if (ev === "data") {
          this[DISCARDED] = false;
          this[DATALISTENERS]++;
          if (!this[PIPES].length && !this[FLOWING]) {
            this[RESUME]();
          }
        } else if (ev === "readable" && this[BUFFERLENGTH] !== 0) {
          super.emit("readable");
        } else if (isEndish(ev) && this[EMITTED_END]) {
          super.emit(ev);
          this.removeAllListeners(ev);
        } else if (ev === "error" && this[EMITTED_ERROR]) {
          const h2 = handler77;
          if (this[ASYNC])
            defer(() => h2.call(this, this[EMITTED_ERROR]));
          else
            h2.call(this, this[EMITTED_ERROR]);
        }
        return ret2;
      }
      /**
       * Alias for {@link Minipass#off}
       */
      removeListener(ev, handler77) {
        return this.off(ev, handler77);
      }
      /**
       * Mostly identical to `EventEmitter.off`
       *
       * If a 'data' event handler is removed, and it was the last consumer
       * (ie, there are no pipe destinations or other 'data' event listeners),
       * then the flow of data will stop until there is another consumer or
       * {@link Minipass#resume} is explicitly called.
       */
      off(ev, handler77) {
        const ret2 = super.off(ev, handler77);
        if (ev === "data") {
          this[DATALISTENERS] = this.listeners("data").length;
          if (this[DATALISTENERS] === 0 && !this[DISCARDED] && !this[PIPES].length) {
            this[FLOWING] = false;
          }
        }
        return ret2;
      }
      /**
       * Mostly identical to `EventEmitter.removeAllListeners`
       *
       * If all 'data' event handlers are removed, and they were the last consumer
       * (ie, there are no pipe destinations), then the flow of data will stop
       * until there is another consumer or {@link Minipass#resume} is explicitly
       * called.
       */
      removeAllListeners(ev) {
        const ret2 = super.removeAllListeners(ev);
        if (ev === "data" || ev === void 0) {
          this[DATALISTENERS] = 0;
          if (!this[DISCARDED] && !this[PIPES].length) {
            this[FLOWING] = false;
          }
        }
        return ret2;
      }
      /**
       * true if the 'end' event has been emitted
       */
      get emittedEnd() {
        return this[EMITTED_END];
      }
      [MAYBE_EMIT_END]() {
        if (!this[EMITTING_END] && !this[EMITTED_END] && !this[DESTROYED] && this[BUFFER].length === 0 && this[EOF]) {
          this[EMITTING_END] = true;
          this.emit("end");
          this.emit("prefinish");
          this.emit("finish");
          if (this[CLOSED])
            this.emit("close");
          this[EMITTING_END] = false;
        }
      }
      /**
       * Mostly identical to `EventEmitter.emit`, with the following
       * behavior differences to prevent data loss and unnecessary hangs:
       *
       * If the stream has been destroyed, and the event is something other
       * than 'close' or 'error', then `false` is returned and no handlers
       * are called.
       *
       * If the event is 'end', and has already been emitted, then the event
       * is ignored. If the stream is in a paused or non-flowing state, then
       * the event will be deferred until data flow resumes. If the stream is
       * async, then handlers will be called on the next tick rather than
       * immediately.
       *
       * If the event is 'close', and 'end' has not yet been emitted, then
       * the event will be deferred until after 'end' is emitted.
       *
       * If the event is 'error', and an AbortSignal was provided for the stream,
       * and there are no listeners, then the event is ignored, matching the
       * behavior of node core streams in the presense of an AbortSignal.
       *
       * If the event is 'finish' or 'prefinish', then all listeners will be
       * removed after emitting the event, to prevent double-firing.
       */
      emit(ev, ...args) {
        const data = args[0];
        if (ev !== "error" && ev !== "close" && ev !== DESTROYED && this[DESTROYED]) {
          return false;
        } else if (ev === "data") {
          return !this[OBJECTMODE] && !data ? false : this[ASYNC] ? (defer(() => this[EMITDATA](data)), true) : this[EMITDATA](data);
        } else if (ev === "end") {
          return this[EMITEND]();
        } else if (ev === "close") {
          this[CLOSED] = true;
          if (!this[EMITTED_END] && !this[DESTROYED])
            return false;
          const ret3 = super.emit("close");
          this.removeAllListeners("close");
          return ret3;
        } else if (ev === "error") {
          this[EMITTED_ERROR] = data;
          super.emit(ERROR, data);
          const ret3 = !this[SIGNAL] || this.listeners("error").length ? super.emit("error", data) : false;
          this[MAYBE_EMIT_END]();
          return ret3;
        } else if (ev === "resume") {
          const ret3 = super.emit("resume");
          this[MAYBE_EMIT_END]();
          return ret3;
        } else if (ev === "finish" || ev === "prefinish") {
          const ret3 = super.emit(ev);
          this.removeAllListeners(ev);
          return ret3;
        }
        const ret2 = super.emit(ev, ...args);
        this[MAYBE_EMIT_END]();
        return ret2;
      }
      [EMITDATA](data) {
        for (const p of this[PIPES]) {
          if (p.dest.write(data) === false)
            this.pause();
        }
        const ret2 = this[DISCARDED] ? false : super.emit("data", data);
        this[MAYBE_EMIT_END]();
        return ret2;
      }
      [EMITEND]() {
        if (this[EMITTED_END])
          return false;
        this[EMITTED_END] = true;
        this.readable = false;
        return this[ASYNC] ? (defer(() => this[EMITEND2]()), true) : this[EMITEND2]();
      }
      [EMITEND2]() {
        if (this[DECODER]) {
          const data = this[DECODER].end();
          if (data) {
            for (const p of this[PIPES]) {
              p.dest.write(data);
            }
            if (!this[DISCARDED])
              super.emit("data", data);
          }
        }
        for (const p of this[PIPES]) {
          p.end();
        }
        const ret2 = super.emit("end");
        this.removeAllListeners("end");
        return ret2;
      }
      /**
       * Return a Promise that resolves to an array of all emitted data once
       * the stream ends.
       */
      async collect() {
        const buf = Object.assign([], {
          dataLength: 0
        });
        if (!this[OBJECTMODE])
          buf.dataLength = 0;
        const p = this.promise();
        this.on("data", (c3) => {
          buf.push(c3);
          if (!this[OBJECTMODE])
            buf.dataLength += c3.length;
        });
        await p;
        return buf;
      }
      /**
       * Return a Promise that resolves to the concatenation of all emitted data
       * once the stream ends.
       *
       * Not allowed on objectMode streams.
       */
      async concat() {
        if (this[OBJECTMODE]) {
          throw new Error("cannot concat in objectMode");
        }
        const buf = await this.collect();
        return this[ENCODING] ? buf.join("") : Buffer.concat(buf, buf.dataLength);
      }
      /**
       * Return a void Promise that resolves once the stream ends.
       */
      async promise() {
        return new Promise((resolve3, reject3) => {
          this.on(DESTROYED, () => reject3(new Error("stream destroyed")));
          this.on("error", (er) => reject3(er));
          this.on("end", () => resolve3());
        });
      }
      /**
       * Asynchronous `for await of` iteration.
       *
       * This will continue emitting all chunks until the stream terminates.
       */
      [Symbol.asyncIterator]() {
        this[DISCARDED] = false;
        let stopped = false;
        const stop = async () => {
          this.pause();
          stopped = true;
          return { value: void 0, done: true };
        };
        const next2 = () => {
          if (stopped)
            return stop();
          const res = this.read();
          if (res !== null)
            return Promise.resolve({ done: false, value: res });
          if (this[EOF])
            return stop();
          let resolve3;
          let reject3;
          const onerr = (er) => {
            this.off("data", ondata);
            this.off("end", onend);
            this.off(DESTROYED, ondestroy);
            stop();
            reject3(er);
          };
          const ondata = (value) => {
            this.off("error", onerr);
            this.off("end", onend);
            this.off(DESTROYED, ondestroy);
            this.pause();
            resolve3({ value, done: !!this[EOF] });
          };
          const onend = () => {
            this.off("error", onerr);
            this.off("data", ondata);
            this.off(DESTROYED, ondestroy);
            stop();
            resolve3({ done: true, value: void 0 });
          };
          const ondestroy = () => onerr(new Error("stream destroyed"));
          return new Promise((res2, rej) => {
            reject3 = rej;
            resolve3 = res2;
            this.once(DESTROYED, ondestroy);
            this.once("error", onerr);
            this.once("end", onend);
            this.once("data", ondata);
          });
        };
        return {
          next: next2,
          throw: stop,
          return: stop,
          [Symbol.asyncIterator]() {
            return this;
          },
          [Symbol.asyncDispose]: async () => {
          }
        };
      }
      /**
       * Synchronous `for of` iteration.
       *
       * The iteration will terminate when the internal buffer runs out, even
       * if the stream has not yet terminated.
       */
      [Symbol.iterator]() {
        this[DISCARDED] = false;
        let stopped = false;
        const stop = () => {
          this.pause();
          this.off(ERROR, stop);
          this.off(DESTROYED, stop);
          this.off("end", stop);
          stopped = true;
          return { done: true, value: void 0 };
        };
        const next2 = () => {
          if (stopped)
            return stop();
          const value = this.read();
          return value === null ? stop() : { done: false, value };
        };
        this.once("end", stop);
        this.once(ERROR, stop);
        this.once(DESTROYED, stop);
        return {
          next: next2,
          throw: stop,
          return: stop,
          [Symbol.iterator]() {
            return this;
          },
          [Symbol.dispose]: () => {
          }
        };
      }
      /**
       * Destroy a stream, preventing it from being used for any further purpose.
       *
       * If the stream has a `close()` method, then it will be called on
       * destruction.
       *
       * After destruction, any attempt to write data, read data, or emit most
       * events will be ignored.
       *
       * If an error argument is provided, then it will be emitted in an
       * 'error' event.
       */
      destroy(er) {
        if (this[DESTROYED]) {
          if (er)
            this.emit("error", er);
          else
            this.emit(DESTROYED);
          return this;
        }
        this[DESTROYED] = true;
        this[DISCARDED] = true;
        this[BUFFER].length = 0;
        this[BUFFERLENGTH] = 0;
        const wc = this;
        if (typeof wc.close === "function" && !this[CLOSED])
          wc.close();
        if (er)
          this.emit("error", er);
        else
          this.emit(DESTROYED);
        return this;
      }
      /**
       * Alias for {@link isStream}
       *
       * Former export location, maintained for backwards compatibility.
       *
       * @deprecated
       */
      static get isStream() {
        return exports2.isStream;
      }
    };
    exports2.Minipass = Minipass;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/ssri/13.0.1/0e3fdd1493e4ec8319aea0525e25c8d014c405d7edc627b0e85e0b7f9ef7edb3/node_modules/ssri/lib/index.js
var require_lib6 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/ssri/13.0.1/0e3fdd1493e4ec8319aea0525e25c8d014c405d7edc627b0e85e0b7f9ef7edb3/node_modules/ssri/lib/index.js"(exports2, module2) {
    "use strict";
    var crypto11 = __require("crypto");
    var { Minipass } = require_commonjs();
    var SPEC_ALGORITHMS = ["sha512", "sha384", "sha256"];
    var DEFAULT_ALGORITHMS = ["sha512"];
    var NODE_HASHES = crypto11.getHashes();
    var BASE64_REGEX = /^[a-z0-9+/]+(?:=?=?)$/i;
    var SRI_REGEX = /^([a-z0-9]+)-([^?]+)(\?[?\S*]*)?$/;
    var STRICT_SRI_REGEX = /^([a-z0-9]+)-([A-Za-z0-9+/=]{44,88})(\?[\x21-\x7E]*)?$/;
    var VCHAR_REGEX = /^[\x21-\x7E]+$/;
    var DEFAULT_PRIORITY = [
      "md5",
      "whirlpool",
      "sha1",
      "sha224",
      "sha256",
      "sha384",
      "sha512",
      // TODO - it's unclear _which_ of these Node will actually use as its name for the algorithm, so we guesswork it based on the OpenSSL names.
      "sha3",
      "sha3-256",
      "sha3-384",
      "sha3-512",
      "sha3_256",
      "sha3_384",
      "sha3_512"
    ].filter((algo) => NODE_HASHES.includes(algo));
    var getOptString = (options) => options?.length ? `?${options.join("?")}` : "";
    var IntegrityStream = class extends Minipass {
      #emittedIntegrity;
      #emittedSize;
      #emittedVerified;
      constructor(opts2) {
        super();
        this.size = 0;
        this.opts = opts2;
        this.#getOptions();
        if (opts2?.algorithms) {
          this.algorithms = [...opts2.algorithms];
        } else {
          this.algorithms = [...DEFAULT_ALGORITHMS];
        }
        if (this.algorithm !== null && !this.algorithms.includes(this.algorithm)) {
          this.algorithms.push(this.algorithm);
        }
        this.hashes = this.algorithms.map(crypto11.createHash);
      }
      #getOptions() {
        this.sri = this.opts?.integrity ? parse7(this.opts?.integrity, this.opts) : null;
        this.expectedSize = this.opts?.size;
        if (!this.sri) {
          this.algorithm = null;
        } else if (this.sri.isHash) {
          this.goodSri = true;
          this.algorithm = this.sri.algorithm;
        } else {
          this.goodSri = !this.sri.isEmpty();
          this.algorithm = this.sri.pickAlgorithm(this.opts);
        }
        this.digests = this.goodSri ? this.sri[this.algorithm] : null;
        this.optString = getOptString(this.opts?.options);
      }
      on(ev, handler77) {
        if (ev === "size" && this.#emittedSize) {
          return handler77(this.#emittedSize);
        }
        if (ev === "integrity" && this.#emittedIntegrity) {
          return handler77(this.#emittedIntegrity);
        }
        if (ev === "verified" && this.#emittedVerified) {
          return handler77(this.#emittedVerified);
        }
        return super.on(ev, handler77);
      }
      emit(ev, data) {
        if (ev === "end") {
          this.#onEnd();
        }
        return super.emit(ev, data);
      }
      write(data) {
        this.size += data.length;
        this.hashes.forEach((h2) => h2.update(data));
        return super.write(data);
      }
      #onEnd() {
        if (!this.goodSri) {
          this.#getOptions();
        }
        const newSri = parse7(this.hashes.map((h2, i2) => {
          return `${this.algorithms[i2]}-${h2.digest("base64")}${this.optString}`;
        }).join(" "), this.opts);
        const match = this.goodSri && newSri.match(this.sri, this.opts);
        if (typeof this.expectedSize === "number" && this.size !== this.expectedSize) {
          const err = new Error(`stream size mismatch when checking ${this.sri}.
  Wanted: ${this.expectedSize}
  Found: ${this.size}`);
          err.code = "EBADSIZE";
          err.found = this.size;
          err.expected = this.expectedSize;
          err.sri = this.sri;
          this.emit("error", err);
        } else if (this.sri && !match) {
          const err = new Error(`${this.sri} integrity checksum failed when using ${this.algorithm}: wanted ${this.digests} but got ${newSri}. (${this.size} bytes)`);
          err.code = "EINTEGRITY";
          err.found = newSri;
          err.expected = this.digests;
          err.algorithm = this.algorithm;
          err.sri = this.sri;
          this.emit("error", err);
        } else {
          this.#emittedSize = this.size;
          this.emit("size", this.size);
          this.#emittedIntegrity = newSri;
          this.emit("integrity", newSri);
          if (match) {
            this.#emittedVerified = match;
            this.emit("verified", match);
          }
        }
      }
    };
    var Hash = class {
      get isHash() {
        return true;
      }
      constructor(hash2, opts2) {
        const strict = opts2?.strict;
        this.source = hash2.trim();
        this.digest = "";
        this.algorithm = "";
        this.options = [];
        const match = this.source.match(
          strict ? STRICT_SRI_REGEX : SRI_REGEX
        );
        if (!match) {
          return;
        }
        if (strict && !SPEC_ALGORITHMS.includes(match[1])) {
          return;
        }
        if (!NODE_HASHES.includes(match[1])) {
          return;
        }
        this.algorithm = match[1];
        this.digest = match[2];
        const rawOpts = match[3];
        if (rawOpts) {
          this.options = rawOpts.slice(1).split("?");
        }
      }
      hexDigest() {
        return this.digest && Buffer.from(this.digest, "base64").toString("hex");
      }
      toJSON() {
        return this.toString();
      }
      match(integrity, opts2) {
        const other = parse7(integrity, opts2);
        if (!other) {
          return false;
        }
        if (other.isIntegrity) {
          const algo = other.pickAlgorithm(opts2, [this.algorithm]);
          if (!algo) {
            return false;
          }
          const foundHash = other[algo].find((hash2) => hash2.digest === this.digest);
          if (foundHash) {
            return foundHash;
          }
          return false;
        }
        return other.digest === this.digest ? other : false;
      }
      toString(opts2) {
        if (opts2?.strict) {
          if (!// The spec has very restricted productions for algorithms.
          // https://www.w3.org/TR/CSP2/#source-list-syntax
          (SPEC_ALGORITHMS.includes(this.algorithm) && // Usually, if someone insists on using a "different" base64, we leave it as-is, since there are multiple standards, and the specified is not a URL-safe variant.
          // https://www.w3.org/TR/CSP2/#base64_value
          this.digest.match(BASE64_REGEX) && // Option syntax is strictly visual chars.
          // https://w3c.github.io/webappsec-subresource-integrity/#grammardef-option-expression
          // https://tools.ietf.org/html/rfc5234#appendix-B.1
          this.options.every((opt) => opt.match(VCHAR_REGEX)))) {
            return "";
          }
        }
        return `${this.algorithm}-${this.digest}${getOptString(this.options)}`;
      }
    };
    function integrityHashToString(toString4, sep2, opts2, hashes) {
      const toStringIsNotEmpty = toString4 !== "";
      let shouldAddFirstSep = false;
      let complement = "";
      const lastIndex = hashes.length - 1;
      for (let i2 = 0; i2 < lastIndex; i2++) {
        const hashString = Hash.prototype.toString.call(hashes[i2], opts2);
        if (hashString) {
          shouldAddFirstSep = true;
          complement += hashString;
          complement += sep2;
        }
      }
      const finalHashString = Hash.prototype.toString.call(hashes[lastIndex], opts2);
      if (finalHashString) {
        shouldAddFirstSep = true;
        complement += finalHashString;
      }
      if (toStringIsNotEmpty && shouldAddFirstSep) {
        return toString4 + sep2 + complement;
      }
      return toString4 + complement;
    }
    var Integrity = class {
      get isIntegrity() {
        return true;
      }
      toJSON() {
        return this.toString();
      }
      isEmpty() {
        return Object.keys(this).length === 0;
      }
      toString(opts2) {
        let sep2 = opts2?.sep || " ";
        let toString4 = "";
        if (opts2?.strict) {
          sep2 = sep2.replace(/\S+/g, " ");
          for (const hash2 of SPEC_ALGORITHMS) {
            if (this[hash2]) {
              toString4 = integrityHashToString(toString4, sep2, opts2, this[hash2]);
            }
          }
        } else {
          for (const hash2 of Object.keys(this)) {
            toString4 = integrityHashToString(toString4, sep2, opts2, this[hash2]);
          }
        }
        return toString4;
      }
      concat(integrity, opts2) {
        const other = typeof integrity === "string" ? integrity : stringify(integrity, opts2);
        return parse7(`${this.toString(opts2)} ${other}`, opts2);
      }
      hexDigest() {
        return parse7(this, { single: true }).hexDigest();
      }
      // add additional hashes to an integrity value, but prevent *changing* an existing integrity hash.
      merge(integrity, opts2) {
        const other = parse7(integrity, opts2);
        for (const algo in other) {
          if (this[algo]) {
            if (!this[algo].find((hash2) => other[algo].find((otherhash) => hash2.digest === otherhash.digest))) {
              throw new Error("hashes do not match, cannot update integrity");
            }
          } else {
            this[algo] = other[algo];
          }
        }
      }
      match(integrity, opts2) {
        const other = parse7(integrity, opts2);
        if (!other) {
          return false;
        }
        const algo = other.pickAlgorithm(opts2, Object.keys(this));
        return !!algo && this[algo].find(
          (hash2) => other[algo].find(
            (otherhash) => hash2.digest === otherhash.digest
          )
        ) || false;
      }
      // Pick the highest priority algorithm present, optionally also limited to a set of hashes found in another integrity.
      // When limiting it may return nothing.
      pickAlgorithm(opts2, hashes) {
        const pickAlgorithm = opts2?.pickAlgorithm || getPrioritizedHash;
        let keys4 = Object.keys(this);
        if (hashes?.length) {
          keys4 = keys4.filter((k2) => hashes.includes(k2));
        }
        if (keys4.length) {
          return keys4.reduce((acc, algo) => pickAlgorithm(acc, algo) || acc);
        }
        return null;
      }
    };
    module2.exports.parse = parse7;
    function parse7(sri, opts2) {
      if (!sri) {
        return null;
      }
      if (typeof sri === "string") {
        return _parse(sri, opts2);
      } else if (sri.algorithm && sri.digest) {
        const fullSri = new Integrity();
        fullSri[sri.algorithm] = [sri];
        return _parse(stringify(fullSri, opts2), opts2);
      } else {
        return _parse(stringify(sri, opts2), opts2);
      }
    }
    function _parse(integrity, opts2) {
      if (opts2?.single) {
        return new Hash(integrity, opts2);
      }
      const hashes = integrity.trim().split(/\s+/).reduce((acc, string) => {
        const hash2 = new Hash(string, opts2);
        if (hash2.algorithm && hash2.digest) {
          const algo = hash2.algorithm;
          if (!Object.keys(acc).includes(algo)) {
            acc[algo] = [];
          }
          acc[algo].push(hash2);
        }
        return acc;
      }, new Integrity());
      return hashes.isEmpty() ? null : hashes;
    }
    module2.exports.stringify = stringify;
    function stringify(obj, opts2) {
      if (obj.algorithm && obj.digest) {
        return Hash.prototype.toString.call(obj, opts2);
      } else if (typeof obj === "string") {
        return stringify(parse7(obj, opts2), opts2);
      } else {
        return Integrity.prototype.toString.call(obj, opts2);
      }
    }
    module2.exports.fromHex = fromHex;
    function fromHex(hexDigest, algorithm, opts2) {
      const optString = getOptString(opts2?.options);
      return parse7(
        `${algorithm}-${Buffer.from(hexDigest, "hex").toString("base64")}${optString}`,
        opts2
      );
    }
    module2.exports.fromData = fromData;
    function fromData(data, opts2) {
      const algorithms = opts2?.algorithms || [...DEFAULT_ALGORITHMS];
      const optString = getOptString(opts2?.options);
      return algorithms.reduce((acc, algo) => {
        const digest = crypto11.createHash(algo).update(data).digest("base64");
        const hash2 = new Hash(
          `${algo}-${digest}${optString}`,
          opts2
        );
        if (hash2.algorithm && hash2.digest) {
          const hashAlgo = hash2.algorithm;
          if (!acc[hashAlgo]) {
            acc[hashAlgo] = [];
          }
          acc[hashAlgo].push(hash2);
        }
        return acc;
      }, new Integrity());
    }
    module2.exports.fromStream = fromStream;
    function fromStream(stream2, opts2) {
      const istream = integrityStream(opts2);
      return new Promise((resolve3, reject3) => {
        stream2.pipe(istream);
        stream2.on("error", reject3);
        istream.on("error", reject3);
        let sri;
        istream.on("integrity", (s) => {
          sri = s;
        });
        istream.on("end", () => resolve3(sri));
        istream.resume();
      });
    }
    module2.exports.checkData = checkData;
    function checkData(data, sri, opts2) {
      sri = parse7(sri, opts2);
      if (!sri || !Object.keys(sri).length) {
        if (opts2?.error) {
          throw Object.assign(
            new Error("No valid integrity hashes to check against"),
            {
              code: "EINTEGRITY"
            }
          );
        } else {
          return false;
        }
      }
      const algorithm = sri.pickAlgorithm(opts2);
      const digest = crypto11.createHash(algorithm).update(data).digest("base64");
      const newSri = parse7({ algorithm, digest });
      const match = newSri.match(sri, opts2);
      opts2 = opts2 || {};
      if (match || !opts2.error) {
        return match;
      } else if (typeof opts2.size === "number" && data.length !== opts2.size) {
        const err = new Error(`data size mismatch when checking ${sri}.
  Wanted: ${opts2.size}
  Found: ${data.length}`);
        err.code = "EBADSIZE";
        err.found = data.length;
        err.expected = opts2.size;
        err.sri = sri;
        throw err;
      } else {
        const err = new Error(`Integrity checksum failed when using ${algorithm}: Wanted ${sri}, but got ${newSri}. (${data.length} bytes)`);
        err.code = "EINTEGRITY";
        err.found = newSri;
        err.expected = sri;
        err.algorithm = algorithm;
        err.sri = sri;
        throw err;
      }
    }
    module2.exports.checkStream = checkStream;
    function checkStream(stream2, sri, opts2) {
      opts2 = opts2 || /* @__PURE__ */ Object.create(null);
      opts2.integrity = sri;
      sri = parse7(sri, opts2);
      if (!sri || !Object.keys(sri).length) {
        return Promise.reject(Object.assign(
          new Error("No valid integrity hashes to check against"),
          {
            code: "EINTEGRITY"
          }
        ));
      }
      const checker = integrityStream(opts2);
      return new Promise((resolve3, reject3) => {
        stream2.pipe(checker);
        stream2.on("error", reject3);
        checker.on("error", reject3);
        let verified;
        checker.on("verified", (s) => {
          verified = s;
        });
        checker.on("end", () => resolve3(verified));
        checker.resume();
      });
    }
    module2.exports.integrityStream = integrityStream;
    function integrityStream(opts2 = /* @__PURE__ */ Object.create(null)) {
      return new IntegrityStream(opts2);
    }
    module2.exports.create = createIntegrity;
    function createIntegrity(opts2) {
      const algorithms = opts2?.algorithms || [...DEFAULT_ALGORITHMS];
      const optString = getOptString(opts2?.options);
      const hashes = algorithms.map(crypto11.createHash);
      return {
        update: function(chunk, enc) {
          hashes.forEach((h2) => h2.update(chunk, enc));
          return this;
        },
        digest: function() {
          const integrity = algorithms.reduce((acc, algo) => {
            const digest = hashes.shift().digest("base64");
            const hash2 = new Hash(`${algo}-${digest}${optString}`, opts2);
            if (!acc[hash2.algorithm]) {
              acc[hash2.algorithm] = [];
            }
            acc[hash2.algorithm].push(hash2);
            return acc;
          }, new Integrity());
          return integrity;
        }
      };
    }
    function getPrioritizedHash(algo1, algo2) {
      return DEFAULT_PRIORITY.indexOf(algo1.toLowerCase()) >= DEFAULT_PRIORITY.indexOf(algo2.toLowerCase()) ? algo1 : algo2;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/version-selector-type/3.0.0/107c6995bb5c3989f99a9b607b28a99b7818f3ba297bc9dd96fe87de9620f6bc/node_modules/version-selector-type/index.js
var require_version_selector_type = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/version-selector-type/3.0.0/107c6995bb5c3989f99a9b607b28a99b7818f3ba297bc9dd96fe87de9620f6bc/node_modules/version-selector-type/index.js"(exports2, module2) {
    "use strict";
    var semver56 = require_semver2();
    module2.exports = (selector) => versionSelectorType3(true, selector);
    module2.exports.strict = (selector) => versionSelectorType3(false, selector);
    function versionSelectorType3(loose, selector) {
      if (typeof selector !== "string") {
        throw new TypeError("`selector` should be a string");
      }
      let normalizedSelector;
      if (normalizedSelector = semver56.valid(selector, loose)) {
        return {
          normalized: normalizedSelector,
          type: "version"
        };
      }
      if (normalizedSelector = semver56.validRange(selector, loose)) {
        return {
          normalized: normalizedSelector,
          type: "range"
        };
      }
      if (encodeURIComponent(selector) === selector) {
        return {
          normalized: selector,
          type: "tag"
        };
      }
      return null;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/retry/0.2.0/52d770fd211440fd3e163bc4423f782e94fa5da8d9fab0b29e08d5abf0fac0fb/node_modules/@zkochan/retry/lib/retry_operation.js
var require_retry_operation = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/retry/0.2.0/52d770fd211440fd3e163bc4423f782e94fa5da8d9fab0b29e08d5abf0fac0fb/node_modules/@zkochan/retry/lib/retry_operation.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var RetryOperation = class {
      constructor(timeouts, options) {
        var _a;
        this._originalTimeouts = [...timeouts];
        this._timeouts = timeouts;
        this._maxRetryTime = (_a = options === null || options === void 0 ? void 0 : options.maxRetryTime) !== null && _a !== void 0 ? _a : Infinity;
        this._fn = null;
        this._errors = [];
        this._attempts = 1;
        this._operationStart = null;
        this._timer = null;
      }
      reset() {
        this._attempts = 1;
        this._timeouts = this._originalTimeouts;
      }
      stop() {
        if (this._timer) {
          clearTimeout(this._timer);
        }
        this._timeouts = [];
      }
      retry(err) {
        if (!err) {
          return false;
        }
        var currentTime = (/* @__PURE__ */ new Date()).getTime();
        if (err && currentTime - this._operationStart >= this._maxRetryTime) {
          this._errors.unshift(new Error("RetryOperation timeout occurred"));
          return false;
        }
        this._errors.push(err);
        var timeout = this._timeouts.shift();
        if (timeout === void 0) {
          return false;
        }
        this._timer = setTimeout(() => this._fn(++this._attempts), timeout);
        return timeout;
      }
      attempt(fn) {
        this._fn = fn;
        this._operationStart = (/* @__PURE__ */ new Date()).getTime();
        this._fn(this._attempts);
      }
      errors() {
        return this._errors;
      }
      attempts() {
        return this._attempts;
      }
      mainError() {
        if (this._errors.length === 0) {
          return null;
        }
        var counts = {};
        var mainError = null;
        var mainErrorCount = 0;
        for (var i2 = 0; i2 < this._errors.length; i2++) {
          var error = this._errors[i2];
          var message = error.message;
          var count2 = (counts[message] || 0) + 1;
          counts[message] = count2;
          if (count2 >= mainErrorCount) {
            mainError = error;
            mainErrorCount = count2;
          }
        }
        return mainError;
      }
    };
    exports2.default = RetryOperation;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/retry/0.2.0/52d770fd211440fd3e163bc4423f782e94fa5da8d9fab0b29e08d5abf0fac0fb/node_modules/@zkochan/retry/lib/retry.js
var require_retry = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/retry/0.2.0/52d770fd211440fd3e163bc4423f782e94fa5da8d9fab0b29e08d5abf0fac0fb/node_modules/@zkochan/retry/lib/retry.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.createTimeout = exports2.createTimeouts = exports2.operation = void 0;
    var retry_operation_1 = require_retry_operation();
    function operation5(options) {
      var timeouts = createTimeouts(options);
      return new retry_operation_1.default(timeouts, {
        maxRetryTime: options && options.maxRetryTime
      });
    }
    exports2.operation = operation5;
    function createTimeouts(options) {
      var opts2 = {
        retries: 10,
        factor: 2,
        minTimeout: 1 * 1e3,
        maxTimeout: Infinity,
        randomize: false,
        ...options
      };
      if (opts2.minTimeout > opts2.maxTimeout) {
        throw new Error("minTimeout is greater than maxTimeout");
      }
      var timeouts = [];
      for (var i2 = 0; i2 < opts2.retries; i2++) {
        timeouts.push(createTimeout(i2, opts2));
      }
      timeouts.sort(function(a2, b) {
        return a2 - b;
      });
      return timeouts;
    }
    exports2.createTimeouts = createTimeouts;
    function createTimeout(attempt, opts2) {
      var random = opts2.randomize ? Math.random() + 1 : 1;
      var timeout = Math.round(random * opts2.minTimeout * Math.pow(opts2.factor, attempt));
      timeout = Math.min(timeout, opts2.maxTimeout);
      return timeout;
    }
    exports2.createTimeout = createTimeout;
  }
});

// ../resolving/npm-resolver/lib/fetch.js
import url from "node:url";
function stripTrailingSemverSuffix(pkgName) {
  const atIdx = pkgName.lastIndexOf("@");
  if (atIdx > 0 && import_semver4.default.valid(pkgName.slice(atIdx + 1)) != null) {
    return pkgName.slice(0, atIdx);
  }
  let i2 = pkgName.length;
  i2 = consumeTrailingDigits(pkgName, i2);
  if (i2 === pkgName.length || i2 === 0 || pkgName.charCodeAt(i2 - 1) !== 46)
    return void 0;
  i2--;
  const beforePatch = i2;
  i2 = consumeTrailingDigits(pkgName, i2);
  if (i2 === beforePatch || i2 === 0 || pkgName.charCodeAt(i2 - 1) !== 46)
    return void 0;
  i2--;
  const beforeMinor = i2;
  i2 = consumeTrailingDigits(pkgName, i2);
  if (i2 === beforeMinor || i2 === 0)
    return void 0;
  if (import_semver4.default.valid(pkgName.slice(i2)) == null)
    return void 0;
  let prefix = pkgName.slice(0, i2);
  if (prefix.endsWith("@"))
    prefix = prefix.slice(0, -1);
  return prefix.length > 0 ? prefix : void 0;
}
function consumeTrailingDigits(s, end) {
  let i2 = end;
  while (i2 > 0) {
    const c3 = s.charCodeAt(i2 - 1);
    if (c3 < 48 || c3 > 57)
      break;
    i2--;
  }
  return i2;
}
async function fetchMetadataFromFromRegistry(fetchOpts, pkgName, { authHeaderValue, etag: cachedEtag, fullMetadata, modified: cachedModified, registry }) {
  const uri = toUri(pkgName, registry);
  const op = retry.operation(fetchOpts.retry);
  return new Promise((resolve3, reject3) => {
    op.attempt(async (attempt) => {
      let response;
      const startTime = Date.now();
      try {
        response = await fetchOpts.fetch(uri, {
          authHeaderValue,
          compress: true,
          fullMetadata,
          ifNoneMatch: cachedEtag,
          ifModifiedSince: cachedModified ? new Date(cachedModified).toUTCString() : void 0,
          retry: fetchOpts.retry,
          timeout: fetchOpts.timeout
        });
      } catch (error) {
        reject3(new PnpmError("META_FETCH_FAIL", `GET ${uri}: ${error.message}`, { attempts: attempt, cause: error }));
        return;
      }
      if (response.status === 304) {
        resolve3({ notModified: true });
        return;
      }
      if (response.status >= 400) {
        const request = {
          authHeaderValue,
          url: uri
        };
        reject3(new RegistryResponseError(request, response, pkgName));
        return;
      }
      try {
        const jsonText = await response.text();
        const meta = JSON.parse(jsonText);
        const elapsedMs = Date.now() - startTime;
        if (elapsedMs > fetchOpts.fetchWarnTimeoutMs) {
          globalWarn(`Request took ${elapsedMs}ms: ${uri}`);
        }
        resolve3({
          meta,
          jsonText,
          etag: response.headers.get("etag") ?? void 0
        });
      } catch (error) {
        const timeout = op.retry(new PnpmError("BROKEN_METADATA_JSON", error.message));
        if (timeout === false) {
          reject3(op.mainError());
          return;
        }
        const errorInfo = {
          name: error.name,
          message: error.message,
          code: error.code,
          errno: error.errno
        };
        requestRetryLogger.debug({
          attempt,
          error: errorInfo,
          maxRetries: fetchOpts.retry.retries,
          method: "GET",
          timeout,
          url: uri
        });
      }
    });
  });
}
function toUri(pkgName, registry) {
  let encodedName;
  if (pkgName[0] === "@") {
    encodedName = `@${encodeURIComponent(pkgName.slice(1))}`;
  } else {
    encodedName = encodeURIComponent(pkgName);
  }
  return new url.URL(encodedName, registry.endsWith("/") ? registry : `${registry}/`).toString();
}
var retry, import_semver4, RegistryResponseError;
var init_fetch = __esm({
  "../resolving/npm-resolver/lib/fetch.js"() {
    "use strict";
    init_lib6();
    init_lib2();
    init_lib3();
    retry = __toESM(require_retry(), 1);
    import_semver4 = __toESM(require_semver2(), 1);
    RegistryResponseError = class extends FetchError {
      pkgName;
      constructor(request, response, pkgName) {
        let hint;
        if (response.status === 404) {
          hint = `${pkgName} is not in the npm registry, or you have no permission to fetch it.`;
          const nameWithoutVersion = stripTrailingSemverSuffix(pkgName);
          if (nameWithoutVersion != null) {
            hint += ` Did you mean ${nameWithoutVersion}?`;
          }
        }
        super(request, response, hint);
        this.pkgName = pkgName;
      }
    };
  }
});

// ../resolving/npm-resolver/lib/normalizeRegistryUrl.js
function normalizeRegistryUrl(urlString) {
  try {
    return new URL(urlString).toString();
  } catch {
    return urlString;
  }
}
var init_normalizeRegistryUrl = __esm({
  "../resolving/npm-resolver/lib/normalizeRegistryUrl.js"() {
    "use strict";
  }
});

// ../resolving/jsr-specifier-parser/lib/index.js
function parseJsrSpecifier(rawSpecifier, alias) {
  if (!rawSpecifier.startsWith("jsr:"))
    return null;
  rawSpecifier = rawSpecifier.substring("jsr:".length);
  if (rawSpecifier[0] === "@") {
    const index = rawSpecifier.lastIndexOf("@");
    if (index === 0) {
      return {
        jsrPkgName: rawSpecifier,
        npmPkgName: jsrToNpmPackageName(rawSpecifier)
      };
    }
    const jsrPkgName = rawSpecifier.substring(0, index);
    return {
      jsrPkgName,
      npmPkgName: jsrToNpmPackageName(jsrPkgName),
      versionSelector: rawSpecifier.substring(index + "@".length)
    };
  }
  if (rawSpecifier.includes("@")) {
    throw new PnpmError("MISSING_JSR_PACKAGE_SCOPE", "Package names from JSR must have a scope");
  }
  if (!alias) {
    throw new PnpmError("INVALID_JSR_SPECIFIER", `JSR specifier '${rawSpecifier}' is missing a package name`);
  }
  return {
    versionSelector: rawSpecifier,
    jsrPkgName: alias,
    npmPkgName: jsrToNpmPackageName(alias)
  };
}
function jsrToNpmPackageName(jsrPkgName) {
  if (jsrPkgName[0] !== "@") {
    throw new PnpmError("MISSING_JSR_PACKAGE_SCOPE", "Package names from JSR must have a scope");
  }
  const sepIndex = jsrPkgName.indexOf("/");
  if (sepIndex === -1) {
    throw new PnpmError("INVALID_JSR_PACKAGE_NAME", `The package name '${jsrPkgName}' is invalid`);
  }
  const scope = jsrPkgName.substring(0, sepIndex);
  const name = jsrPkgName.substring(sepIndex + "/".length);
  return `@jsr/${scope.substring(1)}__${name}`;
}
var init_lib18 = __esm({
  "../resolving/jsr-specifier-parser/lib/index.js"() {
    "use strict";
    init_lib2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/parse-npm-tarball-url/5.0.0/c2bb4b1ebeabe1143ca66ac1975fec6f7da089ba6fcfe0b278f3b910d3d68b2e/node_modules/parse-npm-tarball-url/lib/index.js
import assert from "node:assert";
function parseNpmTarballUrl(url7) {
  assert(url7, "url is required");
  assert(typeof url7 === "string", "url should be a string");
  const { pathname: path218, host } = new URL(url7);
  if (!path218 || !host)
    return null;
  const pkg = parsePath(path218);
  if (!pkg)
    return null;
  return {
    host,
    name: pkg.name,
    version: pkg.version
  };
}
function parsePath(path218) {
  const parts = path218.split("/-/");
  if (parts.length !== 2)
    return null;
  const name = parts[0] && decodeURIComponent(parts[0].slice(1));
  if (!name)
    return null;
  const pathWithNoExtension = parts[1].replace(/\.tgz$/, "");
  const scopelessNameLength = name.length - (name.indexOf("/") + 1);
  const version2 = pathWithNoExtension.slice(scopelessNameLength + 1);
  if (!import_semver5.default.valid(version2, true))
    return null;
  return { name, version: version2 };
}
var import_semver5;
var init_lib19 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/parse-npm-tarball-url/5.0.0/c2bb4b1ebeabe1143ca66ac1975fec6f7da089ba6fcfe0b278f3b910d3d68b2e/node_modules/parse-npm-tarball-url/lib/index.js"() {
    import_semver5 = __toESM(require_semver2(), 1);
  }
});

// ../resolving/npm-resolver/lib/parseBareSpecifier.js
function parseBareSpecifier(bareSpecifier, alias, defaultTag, registry) {
  let name = alias;
  if (bareSpecifier.startsWith("npm:")) {
    bareSpecifier = bareSpecifier.slice(4);
    if (alias && import_semver6.default.validRange(bareSpecifier) != null) {
      name = alias;
    } else {
      const index = bareSpecifier.lastIndexOf("@");
      if (index < 1) {
        name = bareSpecifier;
        bareSpecifier = defaultTag;
      } else {
        name = bareSpecifier.slice(0, index);
        bareSpecifier = bareSpecifier.slice(index + 1);
      }
    }
  }
  if (name) {
    const selector = (0, import_version_selector_type.default)(bareSpecifier);
    if (selector != null) {
      return {
        fetchSpec: selector.normalized,
        name,
        type: selector.type
      };
    }
  }
  if (bareSpecifier.startsWith(registry)) {
    const pkg = parseNpmTarballUrl(bareSpecifier);
    if (pkg != null) {
      return {
        fetchSpec: pkg.version,
        name: pkg.name,
        normalizedBareSpecifier: bareSpecifier,
        type: "version"
      };
    }
  }
  return null;
}
function parseJsrSpecifierToRegistryPackageSpec(rawSpecifier, alias, defaultTag) {
  const spec = parseJsrSpecifier(rawSpecifier, alias);
  if (!spec?.npmPkgName)
    return null;
  const selector = (0, import_version_selector_type.default)(spec.versionSelector ?? defaultTag);
  if (selector == null)
    return null;
  return {
    fetchSpec: selector.normalized,
    name: spec.npmPkgName,
    type: selector.type,
    jsrPkgName: spec.jsrPkgName
  };
}
function parseNamedRegistrySpecifierToRegistryPackageSpec(rawSpecifier, knownRegistryNames, packageAlias, defaultTag) {
  const colon = rawSpecifier.indexOf(":");
  if (colon <= 0)
    return null;
  const registryName = rawSpecifier.substring(0, colon);
  if (!knownRegistryNames.has(registryName))
    return null;
  const body = rawSpecifier.substring(colon + 1);
  let pkgName;
  let versionSelector;
  if (import_semver6.default.validRange(body) != null) {
    if (!packageAlias)
      return null;
    pkgName = packageAlias;
    versionSelector = body;
  } else if (body[0] === "@") {
    const index = body.lastIndexOf("@");
    if (index === 0) {
      pkgName = body;
    } else {
      pkgName = body.substring(0, index);
      versionSelector = body.substring(index + "@".length);
    }
    if (pkgName.indexOf("/") === -1 || pkgName.endsWith("/")) {
      throw new PnpmError("INVALID_NAMED_REGISTRY_PACKAGE_NAME", `The package name '${pkgName}' in named registry '${registryName}:' is invalid`);
    }
  } else if (packageAlias?.startsWith("@")) {
    pkgName = packageAlias;
    versionSelector = body;
  } else {
    const index = body.lastIndexOf("@");
    if (index < 1) {
      pkgName = body;
    } else {
      pkgName = body.substring(0, index);
      versionSelector = body.substring(index + "@".length);
    }
    if (!pkgName)
      return null;
  }
  const selector = (0, import_version_selector_type.default)(versionSelector ?? defaultTag);
  if (selector == null)
    return null;
  return {
    fetchSpec: selector.normalized,
    name: pkgName,
    type: selector.type,
    registryName
  };
}
var import_semver6, import_version_selector_type, BUILTIN_NAMED_REGISTRIES;
var init_parseBareSpecifier = __esm({
  "../resolving/npm-resolver/lib/parseBareSpecifier.js"() {
    "use strict";
    init_lib2();
    init_lib18();
    init_lib19();
    import_semver6 = __toESM(require_semver2(), 1);
    import_version_selector_type = __toESM(require_version_selector_type(), 1);
    BUILTIN_NAMED_REGISTRIES = Object.freeze({
      gh: "https://npm.pkg.github.com/"
    });
  }
});

// ../crypto/hash/lib/index.js
import crypto from "node:crypto";
import fs6 from "node:fs";
function createShortHash(input) {
  return createHexHash(input).substring(0, 32);
}
function createHexHash(input) {
  return crypto.hash("sha256", input, "hex");
}
function createHash(input) {
  return `sha256-${crypto.hash("sha256", input, "base64")}`;
}
async function createHashFromMultipleFiles(files) {
  if (files.length === 1) {
    return createHashFromFile(files[0]);
  }
  const hashes = await Promise.all(files.map(createHashFromFile));
  return createHash(hashes.join(","));
}
async function createHashFromFile(file) {
  return createHash(await readNormalizedFile(file));
}
async function createHexHashFromFile(file) {
  return createHexHash(await readNormalizedFile(file));
}
async function readNormalizedFile(file) {
  const content = await fs6.promises.readFile(file, "utf8");
  return content.split("\r\n").join("\n");
}
async function getTarballIntegrity(filename) {
  return (await import_ssri.default.fromStream(lib_default.createReadStream(filename))).toString();
}
var import_ssri;
var init_lib20 = __esm({
  "../crypto/hash/lib/index.js"() {
    "use strict";
    init_lib12();
    import_ssri = __toESM(require_lib6(), 1);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/mimic-fn/3.1.0/67725f89fa5029d31ee290b3c28e8074d91c74c87a50f77c2bee796ea87e1f20/node_modules/mimic-fn/index.js
var require_mimic_fn = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/mimic-fn/3.1.0/67725f89fa5029d31ee290b3c28e8074d91c74c87a50f77c2bee796ea87e1f20/node_modules/mimic-fn/index.js"(exports2, module2) {
    "use strict";
    var copyProperty2 = (to, from5, property, ignoreNonConfigurable) => {
      if (property === "length" || property === "prototype") {
        return;
      }
      if (property === "arguments" || property === "caller") {
        return;
      }
      const toDescriptor = Object.getOwnPropertyDescriptor(to, property);
      const fromDescriptor = Object.getOwnPropertyDescriptor(from5, property);
      if (!canCopyProperty2(toDescriptor, fromDescriptor) && ignoreNonConfigurable) {
        return;
      }
      Object.defineProperty(to, property, fromDescriptor);
    };
    var canCopyProperty2 = function(toDescriptor, fromDescriptor) {
      return toDescriptor === void 0 || toDescriptor.configurable || toDescriptor.writable === fromDescriptor.writable && toDescriptor.enumerable === fromDescriptor.enumerable && toDescriptor.configurable === fromDescriptor.configurable && (toDescriptor.writable || toDescriptor.value === fromDescriptor.value);
    };
    var changePrototype2 = (to, from5) => {
      const fromPrototype = Object.getPrototypeOf(from5);
      if (fromPrototype === Object.getPrototypeOf(to)) {
        return;
      }
      Object.setPrototypeOf(to, fromPrototype);
    };
    var wrappedToString2 = (withName, fromBody) => `/* Wrapped ${withName}*/
${fromBody}`;
    var toStringDescriptor2 = Object.getOwnPropertyDescriptor(Function.prototype, "toString");
    var toStringName2 = Object.getOwnPropertyDescriptor(Function.prototype.toString, "name");
    var changeToString2 = (to, from5, name) => {
      const withName = name === "" ? "" : `with ${name.trim()}() `;
      const newToString = wrappedToString2.bind(null, withName, from5.toString());
      Object.defineProperty(newToString, "name", toStringName2);
      Object.defineProperty(to, "toString", { ...toStringDescriptor2, value: newToString });
    };
    var mimicFn = (to, from5, { ignoreNonConfigurable = false } = {}) => {
      const { name } = to;
      for (const property of Reflect.ownKeys(from5)) {
        copyProperty2(to, from5, property, ignoreNonConfigurable);
      }
      changePrototype2(to, from5);
      changeToString2(to, from5, name);
      return to;
    };
    module2.exports = mimicFn;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/p-defer/1.0.0/3e126ce50553d4b3b893fef989fcdbc5709234b11a2da7bc8a096832ba88c29b/node_modules/p-defer/index.js
var require_p_defer = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/p-defer/1.0.0/3e126ce50553d4b3b893fef989fcdbc5709234b11a2da7bc8a096832ba88c29b/node_modules/p-defer/index.js"(exports2, module2) {
    "use strict";
    module2.exports = () => {
      const ret2 = {};
      ret2.promise = new Promise((resolve3, reject3) => {
        ret2.resolve = resolve3;
        ret2.reject = reject3;
      });
      return ret2;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/map-age-cleaner/0.1.3/be41cd0fbfd96202f4ead722c1ea45ded378677c7695993beee3114ff63ef4c8/node_modules/map-age-cleaner/dist/index.js
var require_dist = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/map-age-cleaner/0.1.3/be41cd0fbfd96202f4ead722c1ea45ded378677c7695993beee3114ff63ef4c8/node_modules/map-age-cleaner/dist/index.js"(exports2, module2) {
    "use strict";
    var __awaiter2 = exports2 && exports2.__awaiter || function(thisArg, _arguments, P2, generator) {
      return new (P2 || (P2 = Promise))(function(resolve3, reject3) {
        function fulfilled(value) {
          try {
            step2(generator.next(value));
          } catch (e) {
            reject3(e);
          }
        }
        function rejected(value) {
          try {
            step2(generator["throw"](value));
          } catch (e) {
            reject3(e);
          }
        }
        function step2(result2) {
          result2.done ? resolve3(result2.value) : new P2(function(resolve4) {
            resolve4(result2.value);
          }).then(fulfilled, rejected);
        }
        step2((generator = generator.apply(thisArg, _arguments || [])).next());
      });
    };
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    var p_defer_1 = __importDefault2(require_p_defer());
    function mapAgeCleaner(map26, property = "maxAge") {
      let processingKey;
      let processingTimer;
      let processingDeferred;
      const cleanup = () => __awaiter2(this, void 0, void 0, function* () {
        if (processingKey !== void 0) {
          return;
        }
        const setupTimer = (item) => __awaiter2(this, void 0, void 0, function* () {
          processingDeferred = p_defer_1.default();
          const delay = item[1][property] - Date.now();
          if (delay <= 0) {
            map26.delete(item[0]);
            processingDeferred.resolve();
            return;
          }
          processingKey = item[0];
          processingTimer = setTimeout(() => {
            map26.delete(item[0]);
            if (processingDeferred) {
              processingDeferred.resolve();
            }
          }, delay);
          if (typeof processingTimer.unref === "function") {
            processingTimer.unref();
          }
          return processingDeferred.promise;
        });
        try {
          for (const entry of map26) {
            yield setupTimer(entry);
          }
        } catch (_a) {
        }
        processingKey = void 0;
      });
      const reset2 = () => {
        processingKey = void 0;
        if (processingTimer !== void 0) {
          clearTimeout(processingTimer);
          processingTimer = void 0;
        }
        if (processingDeferred !== void 0) {
          processingDeferred.reject(void 0);
          processingDeferred = void 0;
        }
      };
      const originalSet = map26.set.bind(map26);
      map26.set = (key, value) => {
        if (map26.has(key)) {
          map26.delete(key);
        }
        const result2 = originalSet(key, value);
        if (processingKey && processingKey === key) {
          reset2();
        }
        cleanup();
        return result2;
      };
      cleanup();
      return map26;
    }
    exports2.default = mapAgeCleaner;
    module2.exports = mapAgeCleaner;
    module2.exports.default = mapAgeCleaner;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/mem/8.1.1/bd24b7ae63c9701bbf5937e541379deb0da48fe02c2aae4e703a0fede07fced2/node_modules/mem/dist/index.js
var require_dist2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/mem/8.1.1/bd24b7ae63c9701bbf5937e541379deb0da48fe02c2aae4e703a0fede07fced2/node_modules/mem/dist/index.js"(exports2, module2) {
    "use strict";
    var mimicFn = require_mimic_fn();
    var mapAgeCleaner = require_dist();
    var decoratorInstanceMap = /* @__PURE__ */ new WeakMap();
    var cacheStore3 = /* @__PURE__ */ new WeakMap();
    var mem = (fn, { cacheKey, cache = /* @__PURE__ */ new Map(), maxAge } = {}) => {
      if (typeof maxAge === "number") {
        mapAgeCleaner(cache);
      }
      const memoized = function(...arguments_) {
        const key = cacheKey ? cacheKey(arguments_) : arguments_[0];
        const cacheItem = cache.get(key);
        if (cacheItem) {
          return cacheItem.data;
        }
        const result2 = fn.apply(this, arguments_);
        cache.set(key, {
          data: result2,
          maxAge: maxAge ? Date.now() + maxAge : Number.POSITIVE_INFINITY
        });
        return result2;
      };
      mimicFn(memoized, fn, {
        ignoreNonConfigurable: true
      });
      cacheStore3.set(memoized, cache);
      return memoized;
    };
    mem.decorator = (options = {}) => (target2, propertyKey, descriptor) => {
      const input = target2[propertyKey];
      if (typeof input !== "function") {
        throw new TypeError("The decorated value must be a function");
      }
      delete descriptor.value;
      delete descriptor.writable;
      descriptor.get = function() {
        if (!decoratorInstanceMap.has(this)) {
          const value = mem(input, options);
          decoratorInstanceMap.set(this, value);
          return value;
        }
        return decoratorInstanceMap.get(this);
      };
    };
    mem.clear = (fn) => {
      const cache = cacheStore3.get(fn);
      if (!cache) {
        throw new TypeError("Can't clear a function that was not memoized!");
      }
      if (typeof cache.clear !== "function") {
        throw new TypeError("The cache Map can't be cleared!");
      }
      cache.clear();
    };
    module2.exports = mem;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/encode-registry/3.0.1/4c541124f325e20283cba585b872be483c1a90e1d0510ab093720a0706066a2a/node_modules/encode-registry/index.js
var require_encode_registry = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/encode-registry/3.0.1/4c541124f325e20283cba585b872be483c1a90e1d0510ab093720a0706066a2a/node_modules/encode-registry/index.js"(exports2, module2) {
    "use strict";
    var assert13 = __require("assert");
    var { URL: URL7 } = __require("url");
    var mem = require_dist2();
    module2.exports = mem(encodeRegistry);
    function encodeRegistry(registry) {
      assert13(registry, "`registry` is required");
      assert13(typeof registry === "string", "`registry` should be a string");
      const host = getHost(registry);
      return escapeHost(host);
    }
    function escapeHost(host) {
      return host.replace(":", "+");
    }
    function getHost(rawUrl) {
      let urlObj;
      try {
        urlObj = new URL7(rawUrl);
      } catch (err) {
        throw new Error(`Failed to parse registry URL "${rawUrl}": ${err.message}`);
      }
      if (!urlObj || !urlObj.host) {
        throw new Error(`Couldn't get host from ${rawUrl}`);
      }
      return urlObj.host;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/crypto-random-string/4.0.0/62825d7a2c34eedb81d0d583bb2f53f6aba7872f7f7458f24e1bf78c432f86ed/node_modules/crypto-random-string/index.js
import { promisify as promisify2 } from "util";
import crypto2 from "crypto";
var randomBytesAsync, urlSafeCharacters, numericCharacters, distinguishableCharacters, asciiPrintableCharacters, alphanumericCharacters, generateForCustomCharacters, generateForCustomCharactersAsync, generateRandomBytes, generateRandomBytesAsync, allowedTypes, createGenerator, cryptoRandomString, crypto_random_string_default;
var init_crypto_random_string = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/crypto-random-string/4.0.0/62825d7a2c34eedb81d0d583bb2f53f6aba7872f7f7458f24e1bf78c432f86ed/node_modules/crypto-random-string/index.js"() {
    randomBytesAsync = promisify2(crypto2.randomBytes);
    urlSafeCharacters = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-._~".split("");
    numericCharacters = "0123456789".split("");
    distinguishableCharacters = "CDEHKMPRTUWXY012458".split("");
    asciiPrintableCharacters = "!\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~".split("");
    alphanumericCharacters = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split("");
    generateForCustomCharacters = (length, characters) => {
      const characterCount = characters.length;
      const maxValidSelector = Math.floor(65536 / characterCount) * characterCount - 1;
      const entropyLength = 2 * Math.ceil(1.1 * length);
      let string = "";
      let stringLength2 = 0;
      while (stringLength2 < length) {
        const entropy = crypto2.randomBytes(entropyLength);
        let entropyPosition = 0;
        while (entropyPosition < entropyLength && stringLength2 < length) {
          const entropyValue = entropy.readUInt16LE(entropyPosition);
          entropyPosition += 2;
          if (entropyValue > maxValidSelector) {
            continue;
          }
          string += characters[entropyValue % characterCount];
          stringLength2++;
        }
      }
      return string;
    };
    generateForCustomCharactersAsync = async (length, characters) => {
      const characterCount = characters.length;
      const maxValidSelector = Math.floor(65536 / characterCount) * characterCount - 1;
      const entropyLength = 2 * Math.ceil(1.1 * length);
      let string = "";
      let stringLength2 = 0;
      while (stringLength2 < length) {
        const entropy = await randomBytesAsync(entropyLength);
        let entropyPosition = 0;
        while (entropyPosition < entropyLength && stringLength2 < length) {
          const entropyValue = entropy.readUInt16LE(entropyPosition);
          entropyPosition += 2;
          if (entropyValue > maxValidSelector) {
            continue;
          }
          string += characters[entropyValue % characterCount];
          stringLength2++;
        }
      }
      return string;
    };
    generateRandomBytes = (byteLength, type4, length) => crypto2.randomBytes(byteLength).toString(type4).slice(0, length);
    generateRandomBytesAsync = async (byteLength, type4, length) => {
      const buffer3 = await randomBytesAsync(byteLength);
      return buffer3.toString(type4).slice(0, length);
    };
    allowedTypes = /* @__PURE__ */ new Set([
      void 0,
      "hex",
      "base64",
      "url-safe",
      "numeric",
      "distinguishable",
      "ascii-printable",
      "alphanumeric"
    ]);
    createGenerator = (generateForCustomCharacters2, generateRandomBytes2) => ({ length, type: type4, characters }) => {
      if (!(length >= 0 && Number.isFinite(length))) {
        throw new TypeError("Expected a `length` to be a non-negative finite number");
      }
      if (type4 !== void 0 && characters !== void 0) {
        throw new TypeError("Expected either `type` or `characters`");
      }
      if (characters !== void 0 && typeof characters !== "string") {
        throw new TypeError("Expected `characters` to be string");
      }
      if (!allowedTypes.has(type4)) {
        throw new TypeError(`Unknown type: ${type4}`);
      }
      if (type4 === void 0 && characters === void 0) {
        type4 = "hex";
      }
      if (type4 === "hex" || type4 === void 0 && characters === void 0) {
        return generateRandomBytes2(Math.ceil(length * 0.5), "hex", length);
      }
      if (type4 === "base64") {
        return generateRandomBytes2(Math.ceil(length * 0.75), "base64", length);
      }
      if (type4 === "url-safe") {
        return generateForCustomCharacters2(length, urlSafeCharacters);
      }
      if (type4 === "numeric") {
        return generateForCustomCharacters2(length, numericCharacters);
      }
      if (type4 === "distinguishable") {
        return generateForCustomCharacters2(length, distinguishableCharacters);
      }
      if (type4 === "ascii-printable") {
        return generateForCustomCharacters2(length, asciiPrintableCharacters);
      }
      if (type4 === "alphanumeric") {
        return generateForCustomCharacters2(length, alphanumericCharacters);
      }
      if (characters.length === 0) {
        throw new TypeError("Expected `characters` string length to be greater than or equal to 1");
      }
      if (characters.length > 65536) {
        throw new TypeError("Expected `characters` string length to be less or equal to 65536");
      }
      return generateForCustomCharacters2(length, characters.split(""));
    };
    cryptoRandomString = createGenerator(generateForCustomCharacters, generateRandomBytes);
    cryptoRandomString.async = createGenerator(generateForCustomCharactersAsync, generateRandomBytesAsync);
    crypto_random_string_default = cryptoRandomString;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/unique-string/3.0.0/a866cc9b5c54cfdb51fd873a65f819a8cf9cedf7f734bec6917212cc97bd4e56/node_modules/unique-string/index.js
function uniqueString() {
  return crypto_random_string_default({ length: 32 });
}
var init_unique_string = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/unique-string/3.0.0/a866cc9b5c54cfdb51fd873a65f819a8cf9cedf7f734bec6917212cc97bd4e56/node_modules/unique-string/index.js"() {
    init_crypto_random_string();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/path-temp/3.0.0/8b4b1aa7fd55674c92bd1b76de62ec746ab9b416377d8b2ecb6a51c4d56db367/node_modules/path-temp/index.js
import path8 from "node:path";
import { threadId } from "node:worker_threads";
function pathTemp(folder) {
  return path8.join(folder, `_tmp_${process.pid}_${uniqueString()}`);
}
function fastPathTemp(file) {
  return path8.join(path8.dirname(file), `${path8.basename(file)}_tmp_${process.pid}_${threadId}`);
}
var init_path_temp = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/path-temp/3.0.0/8b4b1aa7fd55674c92bd1b76de62ec746ab9b416377d8b2ecb6a51c4d56db367/node_modules/path-temp/index.js"() {
    init_unique_string();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/universalify/2.0.1/3983135594189f71b00fc07b6b17387b476e8a92e19ec2a61c1f0e0d68895f4d/node_modules/universalify/index.js
var require_universalify = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/universalify/2.0.1/3983135594189f71b00fc07b6b17387b476e8a92e19ec2a61c1f0e0d68895f4d/node_modules/universalify/index.js"(exports2) {
    "use strict";
    exports2.fromCallback = function(fn) {
      return Object.defineProperty(function(...args) {
        if (typeof args[args.length - 1] === "function") fn.apply(this, args);
        else {
          return new Promise((resolve3, reject3) => {
            args.push((err, res) => err != null ? reject3(err) : resolve3(res));
            fn.apply(this, args);
          });
        }
      }, "name", { value: fn.name });
    };
    exports2.fromPromise = function(fn) {
      return Object.defineProperty(function(...args) {
        const cb = args[args.length - 1];
        if (typeof cb !== "function") return fn.apply(this, args);
        else {
          args.pop();
          fn.apply(this, args).then((r) => cb(null, r), cb);
        }
      }, "name", { value: fn.name });
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/fs/index.js
var require_fs = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/fs/index.js"(exports2) {
    "use strict";
    var u4 = require_universalify().fromCallback;
    var fs111 = require_graceful_fs();
    var api2 = [
      "access",
      "appendFile",
      "chmod",
      "chown",
      "close",
      "copyFile",
      "cp",
      "fchmod",
      "fchown",
      "fdatasync",
      "fstat",
      "fsync",
      "ftruncate",
      "futimes",
      "glob",
      "lchmod",
      "lchown",
      "lutimes",
      "link",
      "lstat",
      "mkdir",
      "mkdtemp",
      "open",
      "opendir",
      "readdir",
      "readFile",
      "readlink",
      "realpath",
      "rename",
      "rm",
      "rmdir",
      "stat",
      "statfs",
      "symlink",
      "truncate",
      "unlink",
      "utimes",
      "writeFile"
    ].filter((key) => {
      return typeof fs111[key] === "function";
    });
    Object.assign(exports2, fs111);
    api2.forEach((method) => {
      exports2[method] = u4(fs111[method]);
    });
    exports2.exists = function(filename, callback2) {
      if (typeof callback2 === "function") {
        return fs111.exists(filename, callback2);
      }
      return new Promise((resolve3) => {
        return fs111.exists(filename, resolve3);
      });
    };
    exports2.read = function(fd, buffer3, offset, length, position3, callback2) {
      if (typeof callback2 === "function") {
        return fs111.read(fd, buffer3, offset, length, position3, callback2);
      }
      return new Promise((resolve3, reject3) => {
        fs111.read(fd, buffer3, offset, length, position3, (err, bytesRead, buffer4) => {
          if (err) return reject3(err);
          resolve3({ bytesRead, buffer: buffer4 });
        });
      });
    };
    exports2.write = function(fd, buffer3, ...args) {
      if (typeof args[args.length - 1] === "function") {
        return fs111.write(fd, buffer3, ...args);
      }
      return new Promise((resolve3, reject3) => {
        fs111.write(fd, buffer3, ...args, (err, bytesWritten, buffer4) => {
          if (err) return reject3(err);
          resolve3({ bytesWritten, buffer: buffer4 });
        });
      });
    };
    exports2.readv = function(fd, buffers, ...args) {
      if (typeof args[args.length - 1] === "function") {
        return fs111.readv(fd, buffers, ...args);
      }
      return new Promise((resolve3, reject3) => {
        fs111.readv(fd, buffers, ...args, (err, bytesRead, buffers2) => {
          if (err) return reject3(err);
          resolve3({ bytesRead, buffers: buffers2 });
        });
      });
    };
    exports2.writev = function(fd, buffers, ...args) {
      if (typeof args[args.length - 1] === "function") {
        return fs111.writev(fd, buffers, ...args);
      }
      return new Promise((resolve3, reject3) => {
        fs111.writev(fd, buffers, ...args, (err, bytesWritten, buffers2) => {
          if (err) return reject3(err);
          resolve3({ bytesWritten, buffers: buffers2 });
        });
      });
    };
    if (typeof fs111.realpath.native === "function") {
      exports2.realpath.native = u4(fs111.realpath.native);
    } else {
      process.emitWarning(
        "fs.realpath.native is not a function. Is fs being monkey-patched?",
        "Warning",
        "fs-extra-WARN0003"
      );
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/mkdirs/utils.js
var require_utils = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/mkdirs/utils.js"(exports2, module2) {
    "use strict";
    var path218 = __require("path");
    module2.exports.checkPath = function checkPath(pth) {
      if (process.platform === "win32") {
        const pathHasInvalidWinCharacters = /[<>:"|?*]/.test(pth.replace(path218.parse(pth).root, ""));
        if (pathHasInvalidWinCharacters) {
          const error = new Error(`Path contains invalid characters: ${pth}`);
          error.code = "EINVAL";
          throw error;
        }
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/mkdirs/make-dir.js
var require_make_dir = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/mkdirs/make-dir.js"(exports2, module2) {
    "use strict";
    var fs111 = require_fs();
    var { checkPath } = require_utils();
    var getMode = (options) => {
      const defaults4 = { mode: 511 };
      if (typeof options === "number") return options;
      return { ...defaults4, ...options }.mode;
    };
    module2.exports.makeDir = async (dir, options) => {
      checkPath(dir);
      return fs111.mkdir(dir, {
        mode: getMode(options),
        recursive: true
      });
    };
    module2.exports.makeDirSync = (dir, options) => {
      checkPath(dir);
      return fs111.mkdirSync(dir, {
        mode: getMode(options),
        recursive: true
      });
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/mkdirs/index.js
var require_mkdirs = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/mkdirs/index.js"(exports2, module2) {
    "use strict";
    var u4 = require_universalify().fromPromise;
    var { makeDir: _makeDir, makeDirSync } = require_make_dir();
    var makeDir = u4(_makeDir);
    module2.exports = {
      mkdirs: makeDir,
      mkdirsSync: makeDirSync,
      // alias
      mkdirp: makeDir,
      mkdirpSync: makeDirSync,
      ensureDir: makeDir,
      ensureDirSync: makeDirSync
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/path-exists/index.js
var require_path_exists = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/path-exists/index.js"(exports2, module2) {
    "use strict";
    var u4 = require_universalify().fromPromise;
    var fs111 = require_fs();
    function pathExists3(path218) {
      return fs111.access(path218).then(() => true).catch(() => false);
    }
    module2.exports = {
      pathExists: u4(pathExists3),
      pathExistsSync: fs111.existsSync
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/util/utimes.js
var require_utimes = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/util/utimes.js"(exports2, module2) {
    "use strict";
    var fs111 = require_fs();
    var u4 = require_universalify().fromPromise;
    async function utimesMillis(path218, atime, mtime) {
      const fd = await fs111.open(path218, "r+");
      let closeErr = null;
      try {
        await fs111.futimes(fd, atime, mtime);
      } finally {
        try {
          await fs111.close(fd);
        } catch (e) {
          closeErr = e;
        }
      }
      if (closeErr) {
        throw closeErr;
      }
    }
    function utimesMillisSync(path218, atime, mtime) {
      const fd = fs111.openSync(path218, "r+");
      fs111.futimesSync(fd, atime, mtime);
      return fs111.closeSync(fd);
    }
    module2.exports = {
      utimesMillis: u4(utimesMillis),
      utimesMillisSync
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/util/stat.js
var require_stat = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/util/stat.js"(exports2, module2) {
    "use strict";
    var fs111 = require_fs();
    var path218 = __require("path");
    var u4 = require_universalify().fromPromise;
    function getStats2(src2, dest, opts2) {
      const statFunc = opts2.dereference ? (file) => fs111.stat(file, { bigint: true }) : (file) => fs111.lstat(file, { bigint: true });
      return Promise.all([
        statFunc(src2),
        statFunc(dest).catch((err) => {
          if (err.code === "ENOENT") return null;
          throw err;
        })
      ]).then(([srcStat, destStat]) => ({ srcStat, destStat }));
    }
    function getStatsSync(src2, dest, opts2) {
      let destStat;
      const statFunc = opts2.dereference ? (file) => fs111.statSync(file, { bigint: true }) : (file) => fs111.lstatSync(file, { bigint: true });
      const srcStat = statFunc(src2);
      try {
        destStat = statFunc(dest);
      } catch (err) {
        if (err.code === "ENOENT") return { srcStat, destStat: null };
        throw err;
      }
      return { srcStat, destStat };
    }
    async function checkPaths(src2, dest, funcName, opts2) {
      const { srcStat, destStat } = await getStats2(src2, dest, opts2);
      if (destStat) {
        if (areIdentical(srcStat, destStat)) {
          const srcBaseName = path218.basename(src2);
          const destBaseName = path218.basename(dest);
          if (funcName === "move" && srcBaseName !== destBaseName && srcBaseName.toLowerCase() === destBaseName.toLowerCase()) {
            return { srcStat, destStat, isChangingCase: true };
          }
          throw new Error("Source and destination must not be the same.");
        }
        if (srcStat.isDirectory() && !destStat.isDirectory()) {
          throw new Error(`Cannot overwrite non-directory '${dest}' with directory '${src2}'.`);
        }
        if (!srcStat.isDirectory() && destStat.isDirectory()) {
          throw new Error(`Cannot overwrite directory '${dest}' with non-directory '${src2}'.`);
        }
      }
      if (srcStat.isDirectory() && isSrcSubdir(src2, dest)) {
        throw new Error(errMsg(src2, dest, funcName));
      }
      return { srcStat, destStat };
    }
    function checkPathsSync(src2, dest, funcName, opts2) {
      const { srcStat, destStat } = getStatsSync(src2, dest, opts2);
      if (destStat) {
        if (areIdentical(srcStat, destStat)) {
          const srcBaseName = path218.basename(src2);
          const destBaseName = path218.basename(dest);
          if (funcName === "move" && srcBaseName !== destBaseName && srcBaseName.toLowerCase() === destBaseName.toLowerCase()) {
            return { srcStat, destStat, isChangingCase: true };
          }
          throw new Error("Source and destination must not be the same.");
        }
        if (srcStat.isDirectory() && !destStat.isDirectory()) {
          throw new Error(`Cannot overwrite non-directory '${dest}' with directory '${src2}'.`);
        }
        if (!srcStat.isDirectory() && destStat.isDirectory()) {
          throw new Error(`Cannot overwrite directory '${dest}' with non-directory '${src2}'.`);
        }
      }
      if (srcStat.isDirectory() && isSrcSubdir(src2, dest)) {
        throw new Error(errMsg(src2, dest, funcName));
      }
      return { srcStat, destStat };
    }
    async function checkParentPaths(src2, srcStat, dest, funcName) {
      const srcParent = path218.resolve(path218.dirname(src2));
      const destParent = path218.resolve(path218.dirname(dest));
      if (destParent === srcParent || destParent === path218.parse(destParent).root) return;
      let destStat;
      try {
        destStat = await fs111.stat(destParent, { bigint: true });
      } catch (err) {
        if (err.code === "ENOENT") return;
        throw err;
      }
      if (areIdentical(srcStat, destStat)) {
        throw new Error(errMsg(src2, dest, funcName));
      }
      return checkParentPaths(src2, srcStat, destParent, funcName);
    }
    function checkParentPathsSync(src2, srcStat, dest, funcName) {
      const srcParent = path218.resolve(path218.dirname(src2));
      const destParent = path218.resolve(path218.dirname(dest));
      if (destParent === srcParent || destParent === path218.parse(destParent).root) return;
      let destStat;
      try {
        destStat = fs111.statSync(destParent, { bigint: true });
      } catch (err) {
        if (err.code === "ENOENT") return;
        throw err;
      }
      if (areIdentical(srcStat, destStat)) {
        throw new Error(errMsg(src2, dest, funcName));
      }
      return checkParentPathsSync(src2, srcStat, destParent, funcName);
    }
    function areIdentical(srcStat, destStat) {
      return destStat.ino !== void 0 && destStat.dev !== void 0 && destStat.ino === srcStat.ino && destStat.dev === srcStat.dev;
    }
    function isSrcSubdir(src2, dest) {
      const srcArr = path218.resolve(src2).split(path218.sep).filter((i2) => i2);
      const destArr = path218.resolve(dest).split(path218.sep).filter((i2) => i2);
      return srcArr.every((cur, i2) => destArr[i2] === cur);
    }
    function errMsg(src2, dest, funcName) {
      return `Cannot ${funcName} '${src2}' to a subdirectory of itself, '${dest}'.`;
    }
    module2.exports = {
      // checkPaths
      checkPaths: u4(checkPaths),
      checkPathsSync,
      // checkParent
      checkParentPaths: u4(checkParentPaths),
      checkParentPathsSync,
      // Misc
      isSrcSubdir,
      areIdentical
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/util/async.js
var require_async = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/util/async.js"(exports2, module2) {
    "use strict";
    async function asyncIteratorConcurrentProcess(iterator, fn) {
      const promises = [];
      for await (const item of iterator) {
        promises.push(
          fn(item).then(
            () => null,
            (err) => err ?? new Error("unknown error")
          )
        );
      }
      await Promise.all(
        promises.map(
          (promise2) => promise2.then((possibleErr) => {
            if (possibleErr !== null) throw possibleErr;
          })
        )
      );
    }
    module2.exports = {
      asyncIteratorConcurrentProcess
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/copy/copy.js
var require_copy = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/copy/copy.js"(exports2, module2) {
    "use strict";
    var fs111 = require_fs();
    var path218 = __require("path");
    var { mkdirs } = require_mkdirs();
    var { pathExists: pathExists3 } = require_path_exists();
    var { utimesMillis } = require_utimes();
    var stat2 = require_stat();
    var { asyncIteratorConcurrentProcess } = require_async();
    async function copy2(src2, dest, opts2 = {}) {
      if (typeof opts2 === "function") {
        opts2 = { filter: opts2 };
      }
      opts2.clobber = "clobber" in opts2 ? !!opts2.clobber : true;
      opts2.overwrite = "overwrite" in opts2 ? !!opts2.overwrite : opts2.clobber;
      if (opts2.preserveTimestamps && process.arch === "ia32") {
        process.emitWarning(
          "Using the preserveTimestamps option in 32-bit node is not recommended;\n\n	see https://github.com/jprichardson/node-fs-extra/issues/269",
          "Warning",
          "fs-extra-WARN0001"
        );
      }
      const { srcStat, destStat } = await stat2.checkPaths(src2, dest, "copy", opts2);
      await stat2.checkParentPaths(src2, srcStat, dest, "copy");
      const include = await runFilter(src2, dest, opts2);
      if (!include) return;
      const destParent = path218.dirname(dest);
      const dirExists = await pathExists3(destParent);
      if (!dirExists) {
        await mkdirs(destParent);
      }
      await getStatsAndPerformCopy(destStat, src2, dest, opts2);
    }
    async function runFilter(src2, dest, opts2) {
      if (!opts2.filter) return true;
      return opts2.filter(src2, dest);
    }
    async function getStatsAndPerformCopy(destStat, src2, dest, opts2) {
      const statFn = opts2.dereference ? fs111.stat : fs111.lstat;
      const srcStat = await statFn(src2);
      if (srcStat.isDirectory()) return onDir(srcStat, destStat, src2, dest, opts2);
      if (srcStat.isFile() || srcStat.isCharacterDevice() || srcStat.isBlockDevice()) return onFile(srcStat, destStat, src2, dest, opts2);
      if (srcStat.isSymbolicLink()) return onLink(destStat, src2, dest, opts2);
      if (srcStat.isSocket()) throw new Error(`Cannot copy a socket file: ${src2}`);
      if (srcStat.isFIFO()) throw new Error(`Cannot copy a FIFO pipe: ${src2}`);
      throw new Error(`Unknown file: ${src2}`);
    }
    async function onFile(srcStat, destStat, src2, dest, opts2) {
      if (!destStat) return copyFile(srcStat, src2, dest, opts2);
      if (opts2.overwrite) {
        await fs111.unlink(dest);
        return copyFile(srcStat, src2, dest, opts2);
      }
      if (opts2.errorOnExist) {
        throw new Error(`'${dest}' already exists`);
      }
    }
    async function copyFile(srcStat, src2, dest, opts2) {
      await fs111.copyFile(src2, dest);
      if (opts2.preserveTimestamps) {
        if (fileIsNotWritable(srcStat.mode)) {
          await makeFileWritable(dest, srcStat.mode);
        }
        const updatedSrcStat = await fs111.stat(src2);
        await utimesMillis(dest, updatedSrcStat.atime, updatedSrcStat.mtime);
      }
      return fs111.chmod(dest, srcStat.mode);
    }
    function fileIsNotWritable(srcMode) {
      return (srcMode & 128) === 0;
    }
    function makeFileWritable(dest, srcMode) {
      return fs111.chmod(dest, srcMode | 128);
    }
    async function onDir(srcStat, destStat, src2, dest, opts2) {
      if (!destStat) {
        await fs111.mkdir(dest);
      }
      await asyncIteratorConcurrentProcess(await fs111.opendir(src2), async (item) => {
        const srcItem = path218.join(src2, item.name);
        const destItem = path218.join(dest, item.name);
        const include = await runFilter(srcItem, destItem, opts2);
        if (include) {
          const { destStat: destStat2 } = await stat2.checkPaths(srcItem, destItem, "copy", opts2);
          await getStatsAndPerformCopy(destStat2, srcItem, destItem, opts2);
        }
      });
      if (!destStat) {
        await fs111.chmod(dest, srcStat.mode);
      }
    }
    async function onLink(destStat, src2, dest, opts2) {
      let resolvedSrc = await fs111.readlink(src2);
      if (opts2.dereference) {
        resolvedSrc = path218.resolve(process.cwd(), resolvedSrc);
      }
      if (!destStat) {
        return fs111.symlink(resolvedSrc, dest);
      }
      let resolvedDest = null;
      try {
        resolvedDest = await fs111.readlink(dest);
      } catch (e) {
        if (e.code === "EINVAL" || e.code === "UNKNOWN") return fs111.symlink(resolvedSrc, dest);
        throw e;
      }
      if (opts2.dereference) {
        resolvedDest = path218.resolve(process.cwd(), resolvedDest);
      }
      if (resolvedSrc !== resolvedDest) {
        if (stat2.isSrcSubdir(resolvedSrc, resolvedDest)) {
          throw new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`);
        }
        if (stat2.isSrcSubdir(resolvedDest, resolvedSrc)) {
          throw new Error(`Cannot overwrite '${resolvedDest}' with '${resolvedSrc}'.`);
        }
      }
      await fs111.unlink(dest);
      return fs111.symlink(resolvedSrc, dest);
    }
    module2.exports = copy2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/copy/copy-sync.js
var require_copy_sync = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/copy/copy-sync.js"(exports2, module2) {
    "use strict";
    var fs111 = require_graceful_fs();
    var path218 = __require("path");
    var mkdirsSync = require_mkdirs().mkdirsSync;
    var utimesMillisSync = require_utimes().utimesMillisSync;
    var stat2 = require_stat();
    function copySync2(src2, dest, opts2) {
      if (typeof opts2 === "function") {
        opts2 = { filter: opts2 };
      }
      opts2 = opts2 || {};
      opts2.clobber = "clobber" in opts2 ? !!opts2.clobber : true;
      opts2.overwrite = "overwrite" in opts2 ? !!opts2.overwrite : opts2.clobber;
      if (opts2.preserveTimestamps && process.arch === "ia32") {
        process.emitWarning(
          "Using the preserveTimestamps option in 32-bit node is not recommended;\n\n	see https://github.com/jprichardson/node-fs-extra/issues/269",
          "Warning",
          "fs-extra-WARN0002"
        );
      }
      const { srcStat, destStat } = stat2.checkPathsSync(src2, dest, "copy", opts2);
      stat2.checkParentPathsSync(src2, srcStat, dest, "copy");
      if (opts2.filter && !opts2.filter(src2, dest)) return;
      const destParent = path218.dirname(dest);
      if (!fs111.existsSync(destParent)) mkdirsSync(destParent);
      return getStats2(destStat, src2, dest, opts2);
    }
    function getStats2(destStat, src2, dest, opts2) {
      const statSync3 = opts2.dereference ? fs111.statSync : fs111.lstatSync;
      const srcStat = statSync3(src2);
      if (srcStat.isDirectory()) return onDir(srcStat, destStat, src2, dest, opts2);
      else if (srcStat.isFile() || srcStat.isCharacterDevice() || srcStat.isBlockDevice()) return onFile(srcStat, destStat, src2, dest, opts2);
      else if (srcStat.isSymbolicLink()) return onLink(destStat, src2, dest, opts2);
      else if (srcStat.isSocket()) throw new Error(`Cannot copy a socket file: ${src2}`);
      else if (srcStat.isFIFO()) throw new Error(`Cannot copy a FIFO pipe: ${src2}`);
      throw new Error(`Unknown file: ${src2}`);
    }
    function onFile(srcStat, destStat, src2, dest, opts2) {
      if (!destStat) return copyFile(srcStat, src2, dest, opts2);
      return mayCopyFile(srcStat, src2, dest, opts2);
    }
    function mayCopyFile(srcStat, src2, dest, opts2) {
      if (opts2.overwrite) {
        fs111.unlinkSync(dest);
        return copyFile(srcStat, src2, dest, opts2);
      } else if (opts2.errorOnExist) {
        throw new Error(`'${dest}' already exists`);
      }
    }
    function copyFile(srcStat, src2, dest, opts2) {
      fs111.copyFileSync(src2, dest);
      if (opts2.preserveTimestamps) handleTimestamps(srcStat.mode, src2, dest);
      return setDestMode(dest, srcStat.mode);
    }
    function handleTimestamps(srcMode, src2, dest) {
      if (fileIsNotWritable(srcMode)) makeFileWritable(dest, srcMode);
      return setDestTimestamps(src2, dest);
    }
    function fileIsNotWritable(srcMode) {
      return (srcMode & 128) === 0;
    }
    function makeFileWritable(dest, srcMode) {
      return setDestMode(dest, srcMode | 128);
    }
    function setDestMode(dest, srcMode) {
      return fs111.chmodSync(dest, srcMode);
    }
    function setDestTimestamps(src2, dest) {
      const updatedSrcStat = fs111.statSync(src2);
      return utimesMillisSync(dest, updatedSrcStat.atime, updatedSrcStat.mtime);
    }
    function onDir(srcStat, destStat, src2, dest, opts2) {
      if (!destStat) return mkDirAndCopy(srcStat.mode, src2, dest, opts2);
      return copyDir(src2, dest, opts2);
    }
    function mkDirAndCopy(srcMode, src2, dest, opts2) {
      fs111.mkdirSync(dest);
      copyDir(src2, dest, opts2);
      return setDestMode(dest, srcMode);
    }
    function copyDir(src2, dest, opts2) {
      const dir = fs111.opendirSync(src2);
      try {
        let dirent;
        while ((dirent = dir.readSync()) !== null) {
          copyDirItem(dirent.name, src2, dest, opts2);
        }
      } finally {
        dir.closeSync();
      }
    }
    function copyDirItem(item, src2, dest, opts2) {
      const srcItem = path218.join(src2, item);
      const destItem = path218.join(dest, item);
      if (opts2.filter && !opts2.filter(srcItem, destItem)) return;
      const { destStat } = stat2.checkPathsSync(srcItem, destItem, "copy", opts2);
      return getStats2(destStat, srcItem, destItem, opts2);
    }
    function onLink(destStat, src2, dest, opts2) {
      let resolvedSrc = fs111.readlinkSync(src2);
      if (opts2.dereference) {
        resolvedSrc = path218.resolve(process.cwd(), resolvedSrc);
      }
      if (!destStat) {
        return fs111.symlinkSync(resolvedSrc, dest);
      } else {
        let resolvedDest;
        try {
          resolvedDest = fs111.readlinkSync(dest);
        } catch (err) {
          if (err.code === "EINVAL" || err.code === "UNKNOWN") return fs111.symlinkSync(resolvedSrc, dest);
          throw err;
        }
        if (opts2.dereference) {
          resolvedDest = path218.resolve(process.cwd(), resolvedDest);
        }
        if (resolvedSrc !== resolvedDest) {
          if (stat2.isSrcSubdir(resolvedSrc, resolvedDest)) {
            throw new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`);
          }
          if (stat2.isSrcSubdir(resolvedDest, resolvedSrc)) {
            throw new Error(`Cannot overwrite '${resolvedDest}' with '${resolvedSrc}'.`);
          }
        }
        return copyLink(resolvedSrc, dest);
      }
    }
    function copyLink(resolvedSrc, dest) {
      fs111.unlinkSync(dest);
      return fs111.symlinkSync(resolvedSrc, dest);
    }
    module2.exports = copySync2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/copy/index.js
var require_copy2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/copy/index.js"(exports2, module2) {
    "use strict";
    var u4 = require_universalify().fromPromise;
    module2.exports = {
      copy: u4(require_copy()),
      copySync: require_copy_sync()
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/remove/index.js
var require_remove = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/remove/index.js"(exports2, module2) {
    "use strict";
    var fs111 = require_graceful_fs();
    var u4 = require_universalify().fromCallback;
    function remove(path218, callback2) {
      fs111.rm(path218, { recursive: true, force: true }, callback2);
    }
    function removeSync(path218) {
      fs111.rmSync(path218, { recursive: true, force: true });
    }
    module2.exports = {
      remove: u4(remove),
      removeSync
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/empty/index.js
var require_empty = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/empty/index.js"(exports2, module2) {
    "use strict";
    var u4 = require_universalify().fromPromise;
    var fs111 = require_fs();
    var path218 = __require("path");
    var mkdir2 = require_mkdirs();
    var remove = require_remove();
    var emptyDir = u4(async function emptyDir2(dir) {
      let items;
      try {
        items = await fs111.readdir(dir);
      } catch {
        return mkdir2.mkdirs(dir);
      }
      return Promise.all(items.map((item) => remove.remove(path218.join(dir, item))));
    });
    function emptyDirSync(dir) {
      let items;
      try {
        items = fs111.readdirSync(dir);
      } catch {
        return mkdir2.mkdirsSync(dir);
      }
      items.forEach((item) => {
        item = path218.join(dir, item);
        remove.removeSync(item);
      });
    }
    module2.exports = {
      emptyDirSync,
      emptydirSync: emptyDirSync,
      emptyDir,
      emptydir: emptyDir
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/ensure/file.js
var require_file = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/ensure/file.js"(exports2, module2) {
    "use strict";
    var u4 = require_universalify().fromPromise;
    var path218 = __require("path");
    var fs111 = require_fs();
    var mkdir2 = require_mkdirs();
    async function createFile(file) {
      let stats;
      try {
        stats = await fs111.stat(file);
      } catch {
      }
      if (stats && stats.isFile()) return;
      const dir = path218.dirname(file);
      let dirStats = null;
      try {
        dirStats = await fs111.stat(dir);
      } catch (err) {
        if (err.code === "ENOENT") {
          await mkdir2.mkdirs(dir);
          await fs111.writeFile(file, "");
          return;
        } else {
          throw err;
        }
      }
      if (dirStats.isDirectory()) {
        await fs111.writeFile(file, "");
      } else {
        await fs111.readdir(dir);
      }
    }
    function createFileSync(file) {
      let stats;
      try {
        stats = fs111.statSync(file);
      } catch {
      }
      if (stats && stats.isFile()) return;
      const dir = path218.dirname(file);
      try {
        if (!fs111.statSync(dir).isDirectory()) {
          fs111.readdirSync(dir);
        }
      } catch (err) {
        if (err && err.code === "ENOENT") mkdir2.mkdirsSync(dir);
        else throw err;
      }
      fs111.writeFileSync(file, "");
    }
    module2.exports = {
      createFile: u4(createFile),
      createFileSync
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/ensure/link.js
var require_link = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/ensure/link.js"(exports2, module2) {
    "use strict";
    var u4 = require_universalify().fromPromise;
    var path218 = __require("path");
    var fs111 = require_fs();
    var mkdir2 = require_mkdirs();
    var { pathExists: pathExists3 } = require_path_exists();
    var { areIdentical } = require_stat();
    async function createLink(srcpath, dstpath) {
      let dstStat;
      try {
        dstStat = await fs111.lstat(dstpath);
      } catch {
      }
      let srcStat;
      try {
        srcStat = await fs111.lstat(srcpath);
      } catch (err) {
        err.message = err.message.replace("lstat", "ensureLink");
        throw err;
      }
      if (dstStat && areIdentical(srcStat, dstStat)) return;
      const dir = path218.dirname(dstpath);
      const dirExists = await pathExists3(dir);
      if (!dirExists) {
        await mkdir2.mkdirs(dir);
      }
      await fs111.link(srcpath, dstpath);
    }
    function createLinkSync(srcpath, dstpath) {
      let dstStat;
      try {
        dstStat = fs111.lstatSync(dstpath);
      } catch {
      }
      try {
        const srcStat = fs111.lstatSync(srcpath);
        if (dstStat && areIdentical(srcStat, dstStat)) return;
      } catch (err) {
        err.message = err.message.replace("lstat", "ensureLink");
        throw err;
      }
      const dir = path218.dirname(dstpath);
      const dirExists = fs111.existsSync(dir);
      if (dirExists) return fs111.linkSync(srcpath, dstpath);
      mkdir2.mkdirsSync(dir);
      return fs111.linkSync(srcpath, dstpath);
    }
    module2.exports = {
      createLink: u4(createLink),
      createLinkSync
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/ensure/symlink-paths.js
var require_symlink_paths = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/ensure/symlink-paths.js"(exports2, module2) {
    "use strict";
    var path218 = __require("path");
    var fs111 = require_fs();
    var { pathExists: pathExists3 } = require_path_exists();
    var u4 = require_universalify().fromPromise;
    async function symlinkPaths(srcpath, dstpath) {
      if (path218.isAbsolute(srcpath)) {
        try {
          await fs111.lstat(srcpath);
        } catch (err) {
          err.message = err.message.replace("lstat", "ensureSymlink");
          throw err;
        }
        return {
          toCwd: srcpath,
          toDst: srcpath
        };
      }
      const dstdir = path218.dirname(dstpath);
      const relativeToDst = path218.join(dstdir, srcpath);
      const exists = await pathExists3(relativeToDst);
      if (exists) {
        return {
          toCwd: relativeToDst,
          toDst: srcpath
        };
      }
      try {
        await fs111.lstat(srcpath);
      } catch (err) {
        err.message = err.message.replace("lstat", "ensureSymlink");
        throw err;
      }
      return {
        toCwd: srcpath,
        toDst: path218.relative(dstdir, srcpath)
      };
    }
    function symlinkPathsSync(srcpath, dstpath) {
      if (path218.isAbsolute(srcpath)) {
        const exists2 = fs111.existsSync(srcpath);
        if (!exists2) throw new Error("absolute srcpath does not exist");
        return {
          toCwd: srcpath,
          toDst: srcpath
        };
      }
      const dstdir = path218.dirname(dstpath);
      const relativeToDst = path218.join(dstdir, srcpath);
      const exists = fs111.existsSync(relativeToDst);
      if (exists) {
        return {
          toCwd: relativeToDst,
          toDst: srcpath
        };
      }
      const srcExists = fs111.existsSync(srcpath);
      if (!srcExists) throw new Error("relative srcpath does not exist");
      return {
        toCwd: srcpath,
        toDst: path218.relative(dstdir, srcpath)
      };
    }
    module2.exports = {
      symlinkPaths: u4(symlinkPaths),
      symlinkPathsSync
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/ensure/symlink-type.js
var require_symlink_type = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/ensure/symlink-type.js"(exports2, module2) {
    "use strict";
    var fs111 = require_fs();
    var u4 = require_universalify().fromPromise;
    async function symlinkType(srcpath, type4) {
      if (type4) return type4;
      let stats;
      try {
        stats = await fs111.lstat(srcpath);
      } catch {
        return "file";
      }
      return stats && stats.isDirectory() ? "dir" : "file";
    }
    function symlinkTypeSync(srcpath, type4) {
      if (type4) return type4;
      let stats;
      try {
        stats = fs111.lstatSync(srcpath);
      } catch {
        return "file";
      }
      return stats && stats.isDirectory() ? "dir" : "file";
    }
    module2.exports = {
      symlinkType: u4(symlinkType),
      symlinkTypeSync
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/ensure/symlink.js
var require_symlink = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/ensure/symlink.js"(exports2, module2) {
    "use strict";
    var u4 = require_universalify().fromPromise;
    var path218 = __require("path");
    var fs111 = require_fs();
    var { mkdirs, mkdirsSync } = require_mkdirs();
    var { symlinkPaths, symlinkPathsSync } = require_symlink_paths();
    var { symlinkType, symlinkTypeSync } = require_symlink_type();
    var { pathExists: pathExists3 } = require_path_exists();
    var { areIdentical } = require_stat();
    async function createSymlink(srcpath, dstpath, type4) {
      let stats;
      try {
        stats = await fs111.lstat(dstpath);
      } catch {
      }
      if (stats && stats.isSymbolicLink()) {
        let srcStat;
        if (path218.isAbsolute(srcpath)) {
          srcStat = await fs111.stat(srcpath);
        } else {
          const dstdir = path218.dirname(dstpath);
          const relativeToDst = path218.join(dstdir, srcpath);
          try {
            srcStat = await fs111.stat(relativeToDst);
          } catch {
            srcStat = await fs111.stat(srcpath);
          }
        }
        const dstStat = await fs111.stat(dstpath);
        if (areIdentical(srcStat, dstStat)) return;
      }
      const relative2 = await symlinkPaths(srcpath, dstpath);
      srcpath = relative2.toDst;
      const toType = await symlinkType(relative2.toCwd, type4);
      const dir = path218.dirname(dstpath);
      if (!await pathExists3(dir)) {
        await mkdirs(dir);
      }
      return fs111.symlink(srcpath, dstpath, toType);
    }
    function createSymlinkSync2(srcpath, dstpath, type4) {
      let stats;
      try {
        stats = fs111.lstatSync(dstpath);
      } catch {
      }
      if (stats && stats.isSymbolicLink()) {
        let srcStat;
        if (path218.isAbsolute(srcpath)) {
          srcStat = fs111.statSync(srcpath);
        } else {
          const dstdir = path218.dirname(dstpath);
          const relativeToDst = path218.join(dstdir, srcpath);
          try {
            srcStat = fs111.statSync(relativeToDst);
          } catch {
            srcStat = fs111.statSync(srcpath);
          }
        }
        const dstStat = fs111.statSync(dstpath);
        if (areIdentical(srcStat, dstStat)) return;
      }
      const relative2 = symlinkPathsSync(srcpath, dstpath);
      srcpath = relative2.toDst;
      type4 = symlinkTypeSync(relative2.toCwd, type4);
      const dir = path218.dirname(dstpath);
      const exists = fs111.existsSync(dir);
      if (exists) return fs111.symlinkSync(srcpath, dstpath, type4);
      mkdirsSync(dir);
      return fs111.symlinkSync(srcpath, dstpath, type4);
    }
    module2.exports = {
      createSymlink: u4(createSymlink),
      createSymlinkSync: createSymlinkSync2
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/ensure/index.js
var require_ensure = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/ensure/index.js"(exports2, module2) {
    "use strict";
    var { createFile, createFileSync } = require_file();
    var { createLink, createLinkSync } = require_link();
    var { createSymlink, createSymlinkSync: createSymlinkSync2 } = require_symlink();
    module2.exports = {
      // file
      createFile,
      createFileSync,
      ensureFile: createFile,
      ensureFileSync: createFileSync,
      // link
      createLink,
      createLinkSync,
      ensureLink: createLink,
      ensureLinkSync: createLinkSync,
      // symlink
      createSymlink,
      createSymlinkSync: createSymlinkSync2,
      ensureSymlink: createSymlink,
      ensureSymlinkSync: createSymlinkSync2
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/jsonfile/6.2.1/4eef6320b797a6391b2bd057b7f45a61f6df9e0461d95dbbea0e70d498ea3860/node_modules/jsonfile/utils.js
var require_utils2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/jsonfile/6.2.1/4eef6320b797a6391b2bd057b7f45a61f6df9e0461d95dbbea0e70d498ea3860/node_modules/jsonfile/utils.js"(exports2, module2) {
    function stringify(obj, { EOL: EOL2 = "\n", finalEOL = true, replacer: replacer2 = null, spaces } = {}) {
      const EOF = finalEOL ? EOL2 : "";
      const str2 = JSON.stringify(obj, replacer2, spaces);
      if (str2 === void 0) {
        throw new TypeError(`Converting ${typeof obj} value to JSON is not supported`);
      }
      return str2.replace(/\n/g, EOL2) + EOF;
    }
    function stripBom2(content) {
      if (Buffer.isBuffer(content)) content = content.toString("utf8");
      return content.replace(/^\uFEFF/, "");
    }
    module2.exports = { stringify, stripBom: stripBom2 };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/jsonfile/6.2.1/4eef6320b797a6391b2bd057b7f45a61f6df9e0461d95dbbea0e70d498ea3860/node_modules/jsonfile/index.js
var require_jsonfile = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/jsonfile/6.2.1/4eef6320b797a6391b2bd057b7f45a61f6df9e0461d95dbbea0e70d498ea3860/node_modules/jsonfile/index.js"(exports2, module2) {
    var _fs;
    try {
      _fs = require_graceful_fs();
    } catch (_) {
      _fs = __require("fs");
    }
    var universalify = require_universalify();
    var { stringify, stripBom: stripBom2 } = require_utils2();
    async function _readFile(file, options = {}) {
      if (typeof options === "string") {
        options = { encoding: options };
      }
      const fs111 = options.fs || _fs;
      const shouldThrow = "throws" in options ? options.throws : true;
      let data = await universalify.fromCallback(fs111.readFile)(file, options);
      data = stripBom2(data);
      let obj;
      try {
        obj = JSON.parse(data, options ? options.reviver : null);
      } catch (err) {
        if (shouldThrow) {
          err.message = `${file}: ${err.message}`;
          throw err;
        } else {
          return null;
        }
      }
      return obj;
    }
    var readFile4 = universalify.fromPromise(_readFile);
    function readFileSync4(file, options = {}) {
      if (typeof options === "string") {
        options = { encoding: options };
      }
      const fs111 = options.fs || _fs;
      const shouldThrow = "throws" in options ? options.throws : true;
      try {
        let content = fs111.readFileSync(file, options);
        content = stripBom2(content);
        return JSON.parse(content, options.reviver);
      } catch (err) {
        if (shouldThrow) {
          err.message = `${file}: ${err.message}`;
          throw err;
        } else {
          return null;
        }
      }
    }
    async function _writeFile(file, obj, options = {}) {
      const fs111 = options.fs || _fs;
      const str2 = stringify(obj, options);
      await universalify.fromCallback(fs111.writeFile)(file, str2, options);
    }
    var writeFile3 = universalify.fromPromise(_writeFile);
    function writeFileSync2(file, obj, options = {}) {
      const fs111 = options.fs || _fs;
      const str2 = stringify(obj, options);
      return fs111.writeFileSync(file, str2, options);
    }
    module2.exports = {
      readFile: readFile4,
      readFileSync: readFileSync4,
      writeFile: writeFile3,
      writeFileSync: writeFileSync2
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/json/jsonfile.js
var require_jsonfile2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/json/jsonfile.js"(exports2, module2) {
    "use strict";
    var jsonFile = require_jsonfile();
    module2.exports = {
      // jsonfile exports
      readJson: jsonFile.readFile,
      readJsonSync: jsonFile.readFileSync,
      writeJson: jsonFile.writeFile,
      writeJsonSync: jsonFile.writeFileSync
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/output-file/index.js
var require_output_file = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/output-file/index.js"(exports2, module2) {
    "use strict";
    var u4 = require_universalify().fromPromise;
    var fs111 = require_fs();
    var path218 = __require("path");
    var mkdir2 = require_mkdirs();
    var pathExists3 = require_path_exists().pathExists;
    async function outputFile(file, data, encoding = "utf-8") {
      const dir = path218.dirname(file);
      if (!await pathExists3(dir)) {
        await mkdir2.mkdirs(dir);
      }
      return fs111.writeFile(file, data, encoding);
    }
    function outputFileSync(file, ...args) {
      const dir = path218.dirname(file);
      if (!fs111.existsSync(dir)) {
        mkdir2.mkdirsSync(dir);
      }
      fs111.writeFileSync(file, ...args);
    }
    module2.exports = {
      outputFile: u4(outputFile),
      outputFileSync
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/json/output-json.js
var require_output_json = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/json/output-json.js"(exports2, module2) {
    "use strict";
    var { stringify } = require_utils2();
    var { outputFile } = require_output_file();
    async function outputJson(file, data, options = {}) {
      const str2 = stringify(data, options);
      await outputFile(file, str2, options);
    }
    module2.exports = outputJson;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/json/output-json-sync.js
var require_output_json_sync = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/json/output-json-sync.js"(exports2, module2) {
    "use strict";
    var { stringify } = require_utils2();
    var { outputFileSync } = require_output_file();
    function outputJsonSync(file, data, options) {
      const str2 = stringify(data, options);
      outputFileSync(file, str2, options);
    }
    module2.exports = outputJsonSync;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/json/index.js
var require_json = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/json/index.js"(exports2, module2) {
    "use strict";
    var u4 = require_universalify().fromPromise;
    var jsonFile = require_jsonfile2();
    jsonFile.outputJson = u4(require_output_json());
    jsonFile.outputJsonSync = require_output_json_sync();
    jsonFile.outputJSON = jsonFile.outputJson;
    jsonFile.outputJSONSync = jsonFile.outputJsonSync;
    jsonFile.writeJSON = jsonFile.writeJson;
    jsonFile.writeJSONSync = jsonFile.writeJsonSync;
    jsonFile.readJSON = jsonFile.readJson;
    jsonFile.readJSONSync = jsonFile.readJsonSync;
    module2.exports = jsonFile;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/move/move.js
var require_move = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/move/move.js"(exports2, module2) {
    "use strict";
    var fs111 = require_fs();
    var path218 = __require("path");
    var { copy: copy2 } = require_copy2();
    var { remove } = require_remove();
    var { mkdirp } = require_mkdirs();
    var { pathExists: pathExists3 } = require_path_exists();
    var stat2 = require_stat();
    async function move(src2, dest, opts2 = {}) {
      const overwrite = opts2.overwrite || opts2.clobber || false;
      const { srcStat, isChangingCase = false } = await stat2.checkPaths(src2, dest, "move", opts2);
      await stat2.checkParentPaths(src2, srcStat, dest, "move");
      const destParent = path218.dirname(dest);
      const parsedParentPath = path218.parse(destParent);
      if (parsedParentPath.root !== destParent) {
        await mkdirp(destParent);
      }
      return doRename(src2, dest, overwrite, isChangingCase);
    }
    async function doRename(src2, dest, overwrite, isChangingCase) {
      if (!isChangingCase) {
        if (overwrite) {
          await remove(dest);
        } else if (await pathExists3(dest)) {
          throw new Error("dest already exists.");
        }
      }
      try {
        await fs111.rename(src2, dest);
      } catch (err) {
        if (err.code !== "EXDEV") {
          throw err;
        }
        await moveAcrossDevice(src2, dest, overwrite);
      }
    }
    async function moveAcrossDevice(src2, dest, overwrite) {
      const opts2 = {
        overwrite,
        errorOnExist: true,
        preserveTimestamps: true
      };
      await copy2(src2, dest, opts2);
      return remove(src2);
    }
    module2.exports = move;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/move/move-sync.js
var require_move_sync = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/move/move-sync.js"(exports2, module2) {
    "use strict";
    var fs111 = require_graceful_fs();
    var path218 = __require("path");
    var copySync2 = require_copy2().copySync;
    var removeSync = require_remove().removeSync;
    var mkdirpSync = require_mkdirs().mkdirpSync;
    var stat2 = require_stat();
    function moveSync(src2, dest, opts2) {
      opts2 = opts2 || {};
      const overwrite = opts2.overwrite || opts2.clobber || false;
      const { srcStat, isChangingCase = false } = stat2.checkPathsSync(src2, dest, "move", opts2);
      stat2.checkParentPathsSync(src2, srcStat, dest, "move");
      if (!isParentRoot(dest)) mkdirpSync(path218.dirname(dest));
      return doRename(src2, dest, overwrite, isChangingCase);
    }
    function isParentRoot(dest) {
      const parent = path218.dirname(dest);
      const parsedPath = path218.parse(parent);
      return parsedPath.root === parent;
    }
    function doRename(src2, dest, overwrite, isChangingCase) {
      if (isChangingCase) return rename(src2, dest, overwrite);
      if (overwrite) {
        removeSync(dest);
        return rename(src2, dest, overwrite);
      }
      if (fs111.existsSync(dest)) throw new Error("dest already exists.");
      return rename(src2, dest, overwrite);
    }
    function rename(src2, dest, overwrite) {
      try {
        fs111.renameSync(src2, dest);
      } catch (err) {
        if (err.code !== "EXDEV") throw err;
        return moveAcrossDevice(src2, dest, overwrite);
      }
    }
    function moveAcrossDevice(src2, dest, overwrite) {
      const opts2 = {
        overwrite,
        errorOnExist: true,
        preserveTimestamps: true
      };
      copySync2(src2, dest, opts2);
      return removeSync(src2);
    }
    module2.exports = moveSync;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/move/index.js
var require_move2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/move/index.js"(exports2, module2) {
    "use strict";
    var u4 = require_universalify().fromPromise;
    module2.exports = {
      move: u4(require_move()),
      moveSync: require_move_sync()
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/index.js
var require_lib7 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.4/4cb0d718f8660ad2564c0d882d89a7255b59466c803fa7e6007de96d8c5aa18b/node_modules/fs-extra/lib/index.js"(exports2, module2) {
    "use strict";
    module2.exports = {
      // Export promiseified graceful-fs:
      ...require_fs(),
      // Export extra methods:
      ...require_copy2(),
      ...require_empty(),
      ...require_ensure(),
      ...require_json(),
      ...require_mkdirs(),
      ...require_move2(),
      ...require_output_file(),
      ...require_path_exists(),
      ...require_remove()
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/rimraf/4.0.0/e7aeecc18d1d120ecda04415cbe146a0ad1e4d158a9823e79bfdce5ee3173719/node_modules/@zkochan/rimraf/index.js
import fs7 from "node:fs";
async function rimraf(p) {
  try {
    await fs7.promises.rm(p, { recursive: true, force: true, maxRetries: 3 });
  } catch (err) {
    if (err.code === "ENOENT") return;
    throw err;
  }
}
function rimrafSync(p) {
  try {
    fs7.rmSync(p, { recursive: true, force: true, maxRetries: 3 });
  } catch (err) {
    if (err.code === "ENOENT") return;
    throw err;
  }
}
var init_rimraf = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/rimraf/4.0.0/e7aeecc18d1d120ecda04415cbe146a0ad1e4d158a9823e79bfdce5ee3173719/node_modules/@zkochan/rimraf/index.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rename-overwrite/7.0.1/87428b418e43a94bf7c7f463bfc62ae5e0dc2e0a72cb36b94d07cf207fc3347b/node_modules/rename-overwrite/index.js
import crypto3 from "node:crypto";
import fs8 from "node:fs";
import path9 from "node:path";
async function renameOverwrite(oldPath, newPath, retry5 = 0) {
  try {
    await fs8.promises.rename(oldPath, newPath);
  } catch (err) {
    retry5++;
    if (retry5 > 3) throw err;
    switch (err.code) {
      case "ENOTEMPTY":
      case "EEXIST":
      case "ENOTDIR":
        try {
          await swapRename(oldPath, newPath);
        } catch {
          await rimraf(newPath);
          await fs8.promises.rename(oldPath, newPath);
        }
        break;
      // Windows Antivirus issues
      case "EPERM":
      case "EACCESS":
      case "EBUSY": {
        try {
          await rimraf(newPath);
        } catch {
        }
        const start = Date.now();
        let backoff = 0;
        let lastError = err;
        while (Date.now() - start < 6e4 && (lastError.code === "EPERM" || lastError.code === "EACCESS" || lastError.code === "EBUSY")) {
          await new Promise((resolve3) => setTimeout(resolve3, backoff));
          try {
            await fs8.promises.rename(oldPath, newPath);
            return;
          } catch (err2) {
            lastError = err2;
          }
          if (backoff < 100) {
            backoff += 10;
          }
        }
        throw lastError;
      }
      case "ENOENT":
        try {
          await fs8.promises.stat(oldPath);
        } catch (statErr) {
          if (statErr.code === "ENOENT") {
            throw statErr;
          }
        }
        await fs8.promises.mkdir(path9.dirname(newPath), { recursive: true });
        await renameOverwrite(oldPath, newPath, retry5);
        break;
      // Crossing filesystem boundaries so rename is not available
      case "EXDEV":
        try {
          await rimraf(newPath);
        } catch (rimrafErr) {
          if (rimrafErr.code !== "ENOENT") {
            throw rimrafErr;
          }
        }
        await copy(oldPath, newPath);
        await rimraf(oldPath);
        break;
      default:
        throw err;
    }
  }
}
function renameOverwriteSync(oldPath, newPath, retry5 = 0) {
  try {
    fs8.renameSync(oldPath, newPath);
  } catch (err) {
    retry5++;
    if (retry5 > 3) throw err;
    switch (err.code) {
      // Windows Antivirus issues
      case "EPERM":
      case "EACCESS":
      case "EBUSY": {
        try {
          rimrafSync(newPath);
        } catch {
        }
        const start = Date.now();
        let backoff = 0;
        let lastError = err;
        while (Date.now() - start < 6e4 && (lastError.code === "EPERM" || lastError.code === "EACCESS" || lastError.code === "EBUSY")) {
          const waitUntil = Date.now() + backoff;
          while (waitUntil > Date.now()) {
          }
          try {
            fs8.renameSync(oldPath, newPath);
            return;
          } catch (err2) {
            lastError = err2;
          }
          if (backoff < 100) {
            backoff += 10;
          }
        }
        throw lastError;
      }
      case "ENOTEMPTY":
      case "EEXIST":
      case "ENOTDIR":
        try {
          swapRenameSync(oldPath, newPath);
        } catch {
          rimrafSync(newPath);
          fs8.renameSync(oldPath, newPath);
        }
        break;
      case "ENOENT":
        fs8.mkdirSync(path9.dirname(newPath), { recursive: true });
        renameOverwriteSync(oldPath, newPath, retry5);
        return;
      // Crossing filesystem boundaries so rename is not available
      case "EXDEV":
        try {
          rimrafSync(newPath);
        } catch (rimrafErr) {
          if (rimrafErr.code !== "ENOENT") {
            throw rimrafErr;
          }
        }
        copySync(oldPath, newPath);
        rimrafSync(oldPath);
        break;
      default:
        throw err;
    }
  }
}
function tempPath(p) {
  return `${p}_${process.pid.toString(16)}_${crypto3.randomBytes(4).toString("hex")}`;
}
async function swapRename(oldPath, newPath) {
  const temp = tempPath(newPath);
  await fs8.promises.rename(newPath, temp);
  try {
    await fs8.promises.rename(oldPath, newPath);
  } catch (err) {
    try {
      await fs8.promises.rename(temp, newPath);
    } catch {
    }
    throw err;
  }
  rimraf(temp).catch(() => {
  });
}
function swapRenameSync(oldPath, newPath) {
  const temp = tempPath(newPath);
  fs8.renameSync(newPath, temp);
  try {
    fs8.renameSync(oldPath, newPath);
  } catch (err) {
    try {
      fs8.renameSync(temp, newPath);
    } catch {
    }
    throw err;
  }
  try {
    rimrafSync(temp);
  } catch {
  }
}
var import_fs_extra, copySync, copy;
var init_rename_overwrite = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/rename-overwrite/7.0.1/87428b418e43a94bf7c7f463bfc62ae5e0dc2e0a72cb36b94d07cf207fc3347b/node_modules/rename-overwrite/index.js"() {
    import_fs_extra = __toESM(require_lib7(), 1);
    init_rimraf();
    ({ copySync, copy } = import_fs_extra.default);
  }
});

// ../resolving/registry/pkg-metadata-filter/lib/index.js
function filterPkgMetadataByPublishDate(pkgDoc, publishedBy, trustedVersions) {
  const versionsWithinDate = {};
  for (const version2 in pkgDoc.versions) {
    if (!Object.hasOwn(pkgDoc.versions, version2))
      continue;
    const timeStr = pkgDoc.time[version2];
    if (timeStr && new Date(timeStr) <= publishedBy || trustedVersions?.includes(version2)) {
      versionsWithinDate[version2] = pkgDoc.versions[version2];
    }
  }
  const distTagsWithinDate = {};
  const allDistTags = pkgDoc["dist-tags"] ?? {};
  const parsedSemverCache = /* @__PURE__ */ new Map();
  function tryParseSemver(semverStr) {
    let parsedSemver = parsedSemverCache.get(semverStr);
    if (!parsedSemver) {
      try {
        parsedSemver = new import_semver7.default.SemVer(semverStr, true);
      } catch {
        return null;
      }
      parsedSemverCache.set(semverStr, parsedSemver);
    }
    return parsedSemver;
  }
  for (const tag in allDistTags) {
    if (!Object.hasOwn(allDistTags, tag))
      continue;
    const distTagVersion = allDistTags[tag];
    if (versionsWithinDate[distTagVersion]) {
      distTagsWithinDate[tag] = distTagVersion;
      continue;
    }
    const originalSemVer = tryParseSemver(distTagVersion);
    if (!originalSemVer)
      continue;
    const originalIsPrerelease = originalSemVer.prerelease.length > 0;
    let bestVersion;
    for (const candidate in versionsWithinDate) {
      if (!Object.hasOwn(versionsWithinDate, candidate))
        continue;
      const candidateParsed = tryParseSemver(candidate);
      if (!candidateParsed || tag !== "latest" && candidateParsed.major !== originalSemVer.major || candidateParsed.prerelease.length > 0 !== originalIsPrerelease)
        continue;
      if (!bestVersion) {
        bestVersion = candidate;
      } else {
        try {
          const candidateIsDeprecated = pkgDoc.versions[candidate].deprecated != null;
          const bestVersionIsDeprecated = pkgDoc.versions[bestVersion].deprecated != null;
          if (import_semver7.default.gt(candidate, bestVersion, true) && bestVersionIsDeprecated === candidateIsDeprecated || bestVersionIsDeprecated && !candidateIsDeprecated) {
            bestVersion = candidate;
          }
        } catch (_err) {
          globalWarn(`Failed to compare semver versions ${candidate} and ${bestVersion} from packument of ${pkgDoc.name}, skipping candidate version.`);
        }
      }
    }
    if (bestVersion) {
      distTagsWithinDate[tag] = bestVersion;
    }
  }
  return {
    ...pkgDoc,
    versions: versionsWithinDate,
    "dist-tags": distTagsWithinDate
  };
}
var import_semver7;
var init_lib21 = __esm({
  "../resolving/registry/pkg-metadata-filter/lib/index.js"() {
    "use strict";
    init_lib3();
    import_semver7 = __toESM(require_semver2(), 1);
  }
});

// ../resolving/npm-resolver/lib/pickPackageFromMeta.js
import util2 from "node:util";
function pickPackageFromMeta(pickVersionByVersionRangeFn, { preferredVersionSelectors, publishedBy, publishedByExclude }, meta, spec) {
  if (publishedBy) {
    const excludeResult = publishedByExclude?.(meta.name) ?? false;
    if (excludeResult !== true) {
      if (meta.time != null) {
        assertMetaHasTime(meta);
        const trustedVersions = Array.isArray(excludeResult) ? excludeResult : void 0;
        meta = filterPkgMetadataByPublishDate(meta, publishedBy, trustedVersions);
      } else {
        const modifiedDate = parseModifiedDate(meta.modified);
        if (modifiedDate == null || modifiedDate > publishedBy) {
          assertMetaHasTime(meta);
        }
      }
    }
  }
  if ((!meta.versions || Object.keys(meta.versions).length === 0) && !publishedBy) {
    if (meta.time?.unpublished?.versions?.length) {
      throw new PnpmError("UNPUBLISHED_PKG", `No versions available for ${spec.name} because it was unpublished`);
    }
    throw new PnpmError("NO_VERSIONS", `No versions available for ${spec.name}. The package may be unpublished.`);
  }
  try {
    let version2;
    switch (spec.type) {
      case "version":
        version2 = spec.fetchSpec;
        break;
      case "tag":
        version2 = meta["dist-tags"][spec.fetchSpec];
        break;
      case "range":
        version2 = pickVersionByVersionRangeFn({
          meta,
          versionRange: spec.fetchSpec,
          preferredVersionSelectors,
          publishedBy
        });
        break;
    }
    if (!version2)
      return null;
    const manifest = meta.versions[version2];
    if (manifest && meta["name"]) {
      manifest.name = meta["name"];
    }
    return manifest;
  } catch (err) {
    if (util2.types.isNativeError(err) && "code" in err && typeof err.code === "string" && err.code.startsWith("ERR_PNPM_")) {
      throw err;
    }
    throw new PnpmError("MALFORMED_METADATA", `Received malformed metadata for "${spec.name}"`, { hint: "This might mean that the package was unpublished from the registry", cause: err });
  }
}
function assertMetaHasTime(meta) {
  if (meta.time == null) {
    throw new PnpmError("MISSING_TIME", `The metadata of ${meta.name} is missing the "time" field`);
  }
}
function parseModifiedDate(modified) {
  if (!modified)
    return null;
  const date = new Date(modified);
  if (Number.isNaN(date.getTime()))
    return null;
  return date;
}
function semverSatisfiesLoose(version2, range) {
  let semverRange = semverRangeCache.get(range);
  if (semverRange === void 0) {
    try {
      semverRange = new import_semver8.default.Range(range, true);
    } catch {
      semverRange = null;
    }
    semverRangeCache.set(range, semverRange);
  }
  if (semverRange) {
    try {
      return semverRange.test(new import_semver8.default.SemVer(version2, true));
    } catch {
      return false;
    }
  }
  return false;
}
function pickLowestVersionByVersionRange({ meta, versionRange, preferredVersionSelectors }) {
  if (preferredVersionSelectors != null && Object.keys(preferredVersionSelectors).length > 0) {
    const prioritizedPreferredVersions = prioritizePreferredVersions(meta, versionRange, preferredVersionSelectors);
    for (const preferredVersions of prioritizedPreferredVersions) {
      const preferredVersion = import_semver8.default.minSatisfying(preferredVersions, versionRange, true);
      if (preferredVersion) {
        return preferredVersion;
      }
    }
  }
  if (versionRange === "*") {
    return Object.keys(meta.versions).sort(import_semver8.default.compare)[0];
  }
  return import_semver8.default.minSatisfying(Object.keys(meta.versions), versionRange, true);
}
function pickVersionByVersionRange({ meta, versionRange, preferredVersionSelectors }) {
  const latest = meta["dist-tags"].latest;
  if (preferredVersionSelectors != null && Object.keys(preferredVersionSelectors).length > 0) {
    const prioritizedPreferredVersions = prioritizePreferredVersions(meta, versionRange, preferredVersionSelectors);
    for (const preferredVersions of prioritizedPreferredVersions) {
      if (preferredVersions.includes(latest) && semverSatisfiesLoose(latest, versionRange)) {
        return latest;
      }
      const preferredVersion = import_semver8.default.maxSatisfying(preferredVersions, versionRange, true);
      if (preferredVersion) {
        return preferredVersion;
      }
    }
  }
  const versions = Object.keys(meta.versions);
  if (latest && (versionRange === "*" || semverSatisfiesLoose(latest, versionRange))) {
    return latest;
  }
  const maxVersion = import_semver8.default.maxSatisfying(versions, versionRange, true);
  if (maxVersion && meta.versions[maxVersion].deprecated && versions.length > 1) {
    const nonDeprecatedVersions = versions.map((version2) => meta.versions[version2]).filter((versionMeta) => !versionMeta.deprecated).map((versionMeta) => versionMeta.version);
    const maxNonDeprecatedVersion = import_semver8.default.maxSatisfying(nonDeprecatedVersions, versionRange, true);
    if (maxNonDeprecatedVersion)
      return maxNonDeprecatedVersion;
  }
  return maxVersion;
}
function prioritizePreferredVersions(meta, versionRange, preferredVerSelectors) {
  const preferredVerSelectorsArr = Object.entries(preferredVerSelectors ?? {});
  const versionsPrioritizer = new PreferredVersionsPrioritizer();
  for (const version2 of Object.keys(meta.versions)) {
    if (semverSatisfiesLoose(version2, versionRange)) {
      versionsPrioritizer.add(version2, 0);
    }
  }
  for (const [preferredSelector, preferredSelectorType] of preferredVerSelectorsArr) {
    const { selectorType, weight } = typeof preferredSelectorType === "string" ? { selectorType: preferredSelectorType, weight: 1 } : preferredSelectorType;
    if (preferredSelector === versionRange)
      continue;
    switch (selectorType) {
      case "tag": {
        versionsPrioritizer.add(meta["dist-tags"][preferredSelector], weight);
        break;
      }
      case "range": {
        const versions = Object.keys(meta.versions);
        for (const version2 of versions) {
          if (semverSatisfiesLoose(version2, preferredSelector)) {
            versionsPrioritizer.add(version2, weight);
          }
        }
        break;
      }
      case "version": {
        if (meta.versions[preferredSelector]) {
          versionsPrioritizer.add(preferredSelector, weight);
        }
        break;
      }
    }
  }
  return versionsPrioritizer.versionsByPriority();
}
var import_semver8, semverRangeCache, PreferredVersionsPrioritizer;
var init_pickPackageFromMeta = __esm({
  "../resolving/npm-resolver/lib/pickPackageFromMeta.js"() {
    "use strict";
    init_lib2();
    init_lib21();
    import_semver8 = __toESM(require_semver2(), 1);
    semverRangeCache = /* @__PURE__ */ new Map();
    PreferredVersionsPrioritizer = class {
      preferredVersions = {};
      add(version2, weight) {
        if (!this.preferredVersions[version2]) {
          this.preferredVersions[version2] = weight;
        } else {
          this.preferredVersions[version2] += weight;
        }
      }
      versionsByPriority() {
        const versionsByWeight = Object.entries(this.preferredVersions).reduce((acc, [version2, weight]) => {
          acc[weight] = acc[weight] ?? [];
          acc[weight].push(version2);
          return acc;
        }, {});
        return Object.keys(versionsByWeight).sort((a2, b) => parseInt(b, 10) - parseInt(a2, 10)).map((weight) => versionsByWeight[parseInt(weight, 10)]);
      }
    };
  }
});

// ../resolving/npm-resolver/lib/toRaw.js
function toRaw(spec) {
  return `${spec.name}@${spec.fetchSpec}`;
}
var init_toRaw = __esm({
  "../resolving/npm-resolver/lib/toRaw.js"() {
    "use strict";
  }
});

// ../resolving/npm-resolver/lib/pickPackage.js
import { promises as fs9 } from "node:fs";
import path10 from "node:path";
async function runLimited(pkgMirror, fn) {
  let entry;
  try {
    entry = metafileOperationLimits[pkgMirror] ??= { count: 0, limit: pLimit(1) };
    entry.count++;
    return await fn(entry.limit);
  } finally {
    entry.count--;
    if (entry.count === 0) {
      metafileOperationLimits[pkgMirror] = void 0;
    }
  }
}
function runPicker(pickerOpts, spec, pickOne) {
  const currentPkg = pickOne(spec);
  if (!pickerOpts.includeLatestTag)
    return currentPkg;
  const latestPkg = pickOne({ ...spec, type: "tag", fetchSpec: "latest" });
  return pickMax(latestPkg, currentPkg);
}
function pickMax(a2, b) {
  if (!a2)
    return b;
  if (!b)
    return a2;
  return import_semver9.default.lt(a2.version, b.version) ? b : a2;
}
function pickRespectingMinReleaseAge(pickerOpts, spec, meta) {
  return runPicker(pickerOpts, spec, (targetSpec) => {
    const highest = pickHighest(pickerOpts, meta, targetSpec);
    if (highest)
      return highest;
    return pickLowest({
      preferredVersionSelectors: pickerOpts.preferredVersionSelectors
    }, meta, targetSpec);
  });
}
function pickIgnoringReleaseAge(pickerOpts, spec, meta) {
  const pickVersion = pickerOpts.pickLowestVersion ? pickLowest : pickHighest;
  return runPicker(pickerOpts, spec, (targetSpec) => pickVersion(pickerOpts, meta, targetSpec));
}
function pickMatchingVersionFast(pickerOpts, spec, meta) {
  return pickerOpts.publishedBy ? pickRespectingMinReleaseAge(pickerOpts, spec, meta) : pickIgnoringReleaseAge(pickerOpts, spec, meta);
}
function pickMatchingVersionFinal(pickerOpts, spec, meta) {
  try {
    return pickMatchingVersionFast(pickerOpts, spec, meta);
  } catch (err) {
    if (pickerOpts.ignoreMissingTimeField && isMissingTimeError(err)) {
      warnMissingTimeFieldOnce(meta.name);
      return pickMatchingVersionFast({
        ...pickerOpts,
        publishedBy: void 0,
        publishedByExclude: void 0
      }, spec, meta);
    }
    throw err;
  }
}
async function pickPackage(ctx, spec, opts2) {
  opts2 = opts2 || {};
  const pickerOpts = {
    preferredVersionSelectors: opts2.preferredVersionSelectors,
    publishedBy: opts2.publishedBy,
    publishedByExclude: opts2.publishedByExclude,
    pickLowestVersion: opts2.pickLowestVersion,
    includeLatestTag: opts2.includeLatestTag,
    ignoreMissingTimeField: ctx.ignoreMissingTimeField
  };
  validatePackageName(spec.name);
  const fullMetadata = opts2.optional === true || ctx.fullMetadata === true;
  const metaDir = fullMetadata ? ctx.filterMetadata ? FULL_FILTERED_META_DIR : FULL_META_DIR : ABBREVIATED_META_DIR;
  const cacheKey = fullMetadata ? `${spec.name}:full` : spec.name;
  const pkgMirror = getPkgMirrorPath(ctx.cacheDir, metaDir, opts2.registry, spec.name);
  const cachedMeta = ctx.metaCache.get(cacheKey);
  if (cachedMeta != null) {
    const upgrade = await maybeUpgradeAbbreviatedMetaForReleaseAge(ctx, spec, opts2, cachedMeta);
    let metaForCache = upgrade.meta;
    if (upgrade.upgradedFrom != null) {
      metaForCache = opts2.dryRun ? upgrade.meta : persistUpgradedMeta(ctx, pkgMirror, upgrade.upgradedFrom);
      ctx.metaCache.set(cacheKey, metaForCache);
    }
    return {
      meta: metaForCache,
      pickedPackage: pickMatchingVersionFinal(pickerOpts, spec, metaForCache)
    };
  }
  return runLimited(pkgMirror, async (limit) => {
    let metaCachedInStore;
    if (ctx.offline === true || ctx.preferOffline === true || opts2.pickLowestVersion) {
      metaCachedInStore = await limit(async () => loadMeta(pkgMirror));
      if (ctx.offline) {
        if (metaCachedInStore != null)
          return {
            meta: metaCachedInStore,
            pickedPackage: pickMatchingVersionFinal(pickerOpts, spec, metaCachedInStore)
          };
        throw new PnpmError("NO_OFFLINE_META", `Failed to resolve ${toRaw(spec)} in package mirror ${pkgMirror}`);
      }
      if (metaCachedInStore != null) {
        const upgrade = await maybeUpgradeAbbreviatedMetaForReleaseAge(ctx, spec, opts2, metaCachedInStore);
        metaCachedInStore = upgrade.meta;
        if (upgrade.upgradedFrom != null) {
          if (!opts2.dryRun) {
            metaCachedInStore = persistUpgradedMeta(ctx, pkgMirror, upgrade.upgradedFrom);
          }
          ctx.metaCache.set(cacheKey, metaCachedInStore);
        }
        const pickedPackage = pickMatchingVersionFinal(pickerOpts, spec, metaCachedInStore);
        if (pickedPackage) {
          return {
            meta: metaCachedInStore,
            pickedPackage
          };
        }
      }
    }
    if (!opts2.includeLatestTag && spec.type === "version") {
      metaCachedInStore = metaCachedInStore ?? await limit(async () => loadMeta(pkgMirror));
      if (metaCachedInStore?.versions?.[spec.fetchSpec] != null) {
        try {
          const pickedPackage = pickMatchingVersionFast(pickerOpts, spec, metaCachedInStore);
          if (pickedPackage) {
            return {
              meta: metaCachedInStore,
              pickedPackage
            };
          }
        } catch {
        }
      }
    }
    if (opts2.publishedBy) {
      const mtime = await limit(async () => getFileMtime(pkgMirror));
      if (mtime != null && mtime >= opts2.publishedBy) {
        metaCachedInStore = metaCachedInStore ?? await limit(async () => loadMeta(pkgMirror));
        if (metaCachedInStore != null) {
          try {
            const pickedPackage = pickMatchingVersionFast(pickerOpts, spec, metaCachedInStore);
            if (pickedPackage) {
              return {
                meta: metaCachedInStore,
                pickedPackage
              };
            }
          } catch {
          }
        }
      }
    }
    try {
      const cacheHeaders = metaCachedInStore != null ? { etag: metaCachedInStore.etag, modified: metaCachedInStore.modified ?? metaCachedInStore.time?.modified } : await limit(async () => loadMetaHeaders(pkgMirror));
      let fetchResult = await ctx.fetch(spec.name, {
        authHeaderValue: opts2.authHeaderValue,
        fullMetadata,
        etag: cacheHeaders?.etag,
        modified: cacheHeaders?.modified,
        registry: opts2.registry
      });
      if (fetchResult.notModified) {
        metaCachedInStore = metaCachedInStore ?? await limit(async () => loadMeta(pkgMirror));
        if (metaCachedInStore != null) {
          const upgrade = await maybeUpgradeAbbreviatedMetaForReleaseAge(ctx, spec, opts2, metaCachedInStore);
          metaCachedInStore = upgrade.meta;
          if (upgrade.upgradedFrom != null && !opts2.dryRun) {
            metaCachedInStore = persistUpgradedMeta(ctx, pkgMirror, upgrade.upgradedFrom);
          }
          ctx.metaCache.set(cacheKey, metaCachedInStore);
          return {
            meta: metaCachedInStore,
            pickedPackage: pickMatchingVersionFinal(pickerOpts, spec, metaCachedInStore)
          };
        }
        throw new PnpmError("CACHE_MISSING_AFTER_304", `Metadata cache for ${spec.name} is unreadable after receiving 304 Not Modified`);
      }
      let meta = fetchResult.meta;
      let resultToSave = fetchResult;
      if (opts2.publishedBy && !fullMetadata && meta.time == null && opts2.publishedByExclude?.(spec.name) !== true) {
        const modifiedDate = meta.modified ? new Date(meta.modified) : null;
        const isModifiedValid = modifiedDate != null && !Number.isNaN(modifiedDate.getTime());
        if (!isModifiedValid || modifiedDate > opts2.publishedBy) {
          if (!opts2.dryRun) {
            const abbreviatedJson = prepareJsonForDisk(fetchResult.meta, fetchResult.etag, fetchResult.jsonText);
            runLimited(pkgMirror, (limit2) => limit2(async () => {
              try {
                await saveMeta(pkgMirror, abbreviatedJson);
              } catch (err) {
              }
            }));
          }
          const fullFetchResult = await ctx.fetch(spec.name, {
            authHeaderValue: opts2.authHeaderValue,
            fullMetadata: true,
            registry: opts2.registry
          });
          if (!fullFetchResult.notModified) {
            resultToSave = fullFetchResult;
            meta = fullFetchResult.meta;
          }
        }
      }
      if (ctx.filterMetadata) {
        meta = clearMeta(meta);
      }
      if (!opts2.dryRun) {
        const jsonForDisk = ctx.filterMetadata ? prepareJsonForDisk(meta, resultToSave.etag) : prepareJsonForDisk(resultToSave.meta, resultToSave.etag, resultToSave.jsonText);
        runLimited(pkgMirror, (limit2) => limit2(async () => {
          try {
            await saveMeta(pkgMirror, jsonForDisk);
          } catch (err) {
          }
        }));
      }
      meta.etag = resultToSave.etag;
      ctx.metaCache.set(cacheKey, meta);
      return {
        meta,
        pickedPackage: pickMatchingVersionFinal(pickerOpts, spec, meta)
      };
    } catch (err) {
      err.spec = spec;
      const meta = await loadMeta(pkgMirror);
      if (meta == null)
        throw err;
      logger.error(err, err);
      logger.debug({ message: `Using cached meta from ${pkgMirror}` });
      return {
        meta,
        pickedPackage: pickMatchingVersionFinal(pickerOpts, spec, meta)
      };
    }
  });
}
async function maybeUpgradeAbbreviatedMetaForReleaseAge(ctx, spec, opts2, meta) {
  if (ctx.offline === true || !opts2.publishedBy || meta.time != null || opts2.publishedByExclude?.(spec.name) === true) {
    return { meta };
  }
  const modifiedDate = meta.modified ? new Date(meta.modified) : null;
  const isModifiedValid = modifiedDate != null && !Number.isNaN(modifiedDate.getTime());
  if (isModifiedValid && modifiedDate <= opts2.publishedBy) {
    return { meta };
  }
  const fullFetchResult = await ctx.fetch(spec.name, {
    authHeaderValue: opts2.authHeaderValue,
    fullMetadata: true,
    etag: meta.etag,
    modified: meta.modified,
    registry: opts2.registry
  });
  if (fullFetchResult.notModified) {
    return { meta };
  }
  return { meta: fullFetchResult.meta, upgradedFrom: fullFetchResult };
}
function persistUpgradedMeta(ctx, pkgMirror, upgradedFrom) {
  const metaForCache = ctx.filterMetadata ? clearMeta(upgradedFrom.meta) : upgradedFrom.meta;
  const jsonForDisk = ctx.filterMetadata ? prepareJsonForDisk(metaForCache, upgradedFrom.etag) : prepareJsonForDisk(upgradedFrom.meta, upgradedFrom.etag, upgradedFrom.jsonText);
  runLimited(pkgMirror, (l) => l(async () => {
    try {
      await saveMeta(pkgMirror, jsonForDisk);
    } catch (err) {
    }
  }));
  return metaForCache;
}
function clearMeta(pkg) {
  const versions = {};
  for (const [version2, info] of Object.entries(pkg.versions)) {
    versions[version2] = pick_default([
      "name",
      "version",
      "bin",
      "directories",
      "devDependencies",
      "optionalDependencies",
      "dependencies",
      "peerDependencies",
      "dist",
      "engines",
      "peerDependenciesMeta",
      "cpu",
      "os",
      "libc",
      "deprecated",
      "bundleDependencies",
      "bundledDependencies",
      "hasInstallScript",
      "_npmUser"
    ], info);
  }
  return {
    name: pkg.name,
    "dist-tags": pkg["dist-tags"],
    versions,
    time: pkg.time,
    modified: pkg.modified
  };
}
function encodePkgName(pkgName) {
  if (pkgName !== pkgName.toLowerCase()) {
    return `${pkgName}_${createHexHash(pkgName)}`;
  }
  return pkgName;
}
function getPkgMirrorPath(cacheDir, metaDir, registry, pkgName) {
  return path10.join(cacheDir, metaDir, (0, import_encode_registry.default)(registry), `${encodePkgName(pkgName)}.jsonl`);
}
function prepareJsonForDisk(meta, etag, jsonText) {
  const modified = meta.modified ?? meta.time?.modified;
  const headers = JSON.stringify({ etag, modified });
  const body = jsonText ?? JSON.stringify(meta);
  return `${headers}
${body}`;
}
function isMissingTimeError(err) {
  return err != null && typeof err === "object" && "code" in err && err.code === "ERR_PNPM_MISSING_TIME";
}
function warnMissingTimeFieldOnce(pkgName) {
  if (warnedMissingTimeFor.has(pkgName))
    return;
  if (warnedMissingTimeFor.size >= MAX_WARNED_MISSING_TIME) {
    const oldest = warnedMissingTimeFor.values().next().value;
    if (oldest != null)
      warnedMissingTimeFor.delete(oldest);
  }
  warnedMissingTimeFor.add(pkgName);
  globalWarn(`The metadata of ${pkgName} is missing the "time" field; skipping the minimumReleaseAge check for this package.`);
}
async function getFileMtime(filePath) {
  try {
    const stat2 = await fs9.stat(filePath);
    return stat2.mtime;
  } catch {
    return null;
  }
}
async function loadMetaHeaders(pkgMirror) {
  let fh;
  try {
    fh = await fs9.open(pkgMirror, "r");
    const buf = Buffer.alloc(1024);
    const { bytesRead } = await fh.read(buf, 0, 1024, 0);
    if (bytesRead === 0)
      return null;
    const chunk = buf.toString("utf8", 0, bytesRead);
    const newlineIdx = chunk.indexOf("\n");
    if (newlineIdx === -1)
      return null;
    return JSON.parse(chunk.slice(0, newlineIdx));
  } catch {
    return null;
  } finally {
    await fh?.close();
  }
}
async function loadMeta(pkgMirror) {
  try {
    const data = await lib_default.readFile(pkgMirror, "utf8");
    const newlineIdx = data.indexOf("\n");
    if (newlineIdx === -1)
      return null;
    const headers = JSON.parse(data.slice(0, newlineIdx));
    const meta = JSON.parse(data.slice(newlineIdx + 1));
    meta.etag = headers.etag;
    return meta;
  } catch {
    return null;
  }
}
async function saveMeta(pkgMirror, json2) {
  const dir = path10.dirname(pkgMirror);
  if (!createdDirs.has(dir)) {
    await fs9.mkdir(dir, { recursive: true });
    createdDirs.add(dir);
  }
  const temp = fastPathTemp(pkgMirror);
  await lib_default.writeFile(temp, json2, "utf8");
  await renameOverwrite(temp, pkgMirror);
}
function validatePackageName(pkgName) {
  if (pkgName.includes("/") && pkgName[0] !== "@") {
    throw new PnpmError("INVALID_PACKAGE_NAME", `Package name ${pkgName} is invalid, it should have a @scope`);
  }
}
var import_encode_registry, import_semver9, metafileOperationLimits, pickHighest, pickLowest, MAX_WARNED_MISSING_TIME, warnedMissingTimeFor, createdDirs;
var init_pickPackage = __esm({
  "../resolving/npm-resolver/lib/pickPackage.js"() {
    "use strict";
    init_lib();
    init_lib20();
    init_lib2();
    init_lib12();
    init_lib3();
    import_encode_registry = __toESM(require_encode_registry(), 1);
    init_p_limit();
    init_path_temp();
    init_es();
    init_rename_overwrite();
    import_semver9 = __toESM(require_semver2(), 1);
    init_pickPackageFromMeta();
    init_toRaw();
    metafileOperationLimits = {};
    pickHighest = pickPackageFromMeta.bind(null, pickVersionByVersionRange);
    pickLowest = pickPackageFromMeta.bind(null, pickLowestVersionByVersionRange);
    MAX_WARNED_MISSING_TIME = 1024;
    warnedMissingTimeFor = /* @__PURE__ */ new Set();
    createdDirs = /* @__PURE__ */ new Set();
  }
});

// ../resolving/npm-resolver/lib/trustChecks.js
function failIfTrustDowngraded(meta, version2, opts2) {
  if (opts2?.trustPolicyExclude) {
    const excludeResult = opts2.trustPolicyExclude(meta.name);
    if (excludeResult === true) {
      return;
    }
    if (Array.isArray(excludeResult) && excludeResult.includes(version2)) {
      return;
    }
  }
  assertMetaHasTime(meta);
  const versionPublishedAt = meta.time[version2];
  if (!versionPublishedAt) {
    throw new PnpmError("TRUST_CHECK_FAIL", `Missing time for version ${version2} of ${meta.name} in metadata`);
  }
  const versionDate = new Date(versionPublishedAt);
  if (opts2?.trustPolicyIgnoreAfter) {
    const now = /* @__PURE__ */ new Date();
    const minutesSincePublish = (now.getTime() - versionDate.getTime()) / (1e3 * 60);
    if (minutesSincePublish > opts2.trustPolicyIgnoreAfter) {
      return;
    }
  }
  const manifest = meta.versions[version2];
  if (!manifest) {
    throw new PnpmError("TRUST_CHECK_FAIL", `Missing version object for version ${version2} of ${meta.name} in metadata`);
  }
  const strongestEvidencePriorToRequestedVersion = detectStrongestTrustEvidenceBeforeDate(meta, versionDate, {
    excludePrerelease: !import_semver10.default.prerelease(version2, true)
  });
  if (strongestEvidencePriorToRequestedVersion == null) {
    return;
  }
  const currentTrustEvidence = getTrustEvidence(manifest);
  if (currentTrustEvidence == null || TRUST_RANK[strongestEvidencePriorToRequestedVersion] > TRUST_RANK[currentTrustEvidence]) {
    throw new PnpmError("TRUST_DOWNGRADE", `High-risk trust downgrade for "${meta.name}@${version2}" (possible package takeover)`, {
      hint: `Trust checks are based solely on publish date, not semver. A package cannot be installed if any earlier-published version had stronger trust evidence. Earlier versions had ${prettyPrintTrustEvidence(strongestEvidencePriorToRequestedVersion)}, but this version has ${prettyPrintTrustEvidence(currentTrustEvidence)}. A trust downgrade may indicate a supply chain incident.`
    });
  }
}
function prettyPrintTrustEvidence(trustEvidence) {
  switch (trustEvidence) {
    case "trustedPublisher":
      return "trusted publisher";
    case "provenance":
      return "provenance attestation";
    default:
      return "no trust evidence";
  }
}
function detectStrongestTrustEvidenceBeforeDate(meta, beforeDate, options) {
  let best;
  for (const [version2, manifest] of Object.entries(meta.versions)) {
    if (options.excludePrerelease && import_semver10.default.prerelease(version2, true))
      continue;
    const ts = meta.time[version2];
    if (!ts)
      continue;
    const publishedAt = new Date(ts);
    if (!(publishedAt < beforeDate))
      continue;
    const trustEvidence = getTrustEvidence(manifest);
    if (!trustEvidence)
      continue;
    if (trustEvidence === "trustedPublisher") {
      return "trustedPublisher";
    }
    best ||= "provenance";
  }
  return best;
}
function getTrustEvidence(manifest) {
  if (manifest._npmUser?.trustedPublisher) {
    return "trustedPublisher";
  }
  if (manifest.dist?.attestations?.provenance) {
    return "provenance";
  }
  return void 0;
}
var import_semver10, TRUST_RANK;
var init_trustChecks = __esm({
  "../resolving/npm-resolver/lib/trustChecks.js"() {
    "use strict";
    init_lib2();
    import_semver10 = __toESM(require_semver2(), 1);
    init_pickPackageFromMeta();
    TRUST_RANK = {
      trustedPublisher: 2,
      provenance: 1
    };
  }
});

// ../resolving/npm-resolver/lib/violationCodes.js
var MINIMUM_RELEASE_AGE_VIOLATION_CODE, TRUST_DOWNGRADE_VIOLATION_CODE;
var init_violationCodes = __esm({
  "../resolving/npm-resolver/lib/violationCodes.js"() {
    "use strict";
    MINIMUM_RELEASE_AGE_VIOLATION_CODE = "MINIMUM_RELEASE_AGE_VIOLATION";
    TRUST_DOWNGRADE_VIOLATION_CODE = "TRUST_DOWNGRADE";
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver-utils/1.1.4/bbbf6bcd6e2cad096d8c5e4cd94c8815535d76e88f7c54b6d35929d441dd7625/node_modules/semver-utils/semver-utils.js
var require_semver_utils = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver-utils/1.1.4/bbbf6bcd6e2cad096d8c5e4cd94c8815535d76e88f7c54b6d35929d441dd7625/node_modules/semver-utils/semver-utils.js"(exports2, module2) {
    (function() {
      "use strict";
      var reSemver = /^v?((\d+)\.(\d+)\.(\d+))(?:-([\dA-Za-z\-]+(?:\.[\dA-Za-z\-]+)*))?(?:\+([\dA-Za-z\-]+(?:\.[\dA-Za-z\-]+)*))?$/, reSemverRange = /\s*((\|\||\-)|(((?:(?:~?[<>]?)|\^?)=?)\s*(v)?([0-9]+)(\.(x|\*|[0-9]+))?(\.(x|\*|[0-9]+))?(([\-+])([a-zA-Z0-9\.-]+))?))\s*/g;
      function pruned(obj) {
        var o2 = {};
        for (var key in obj) {
          if ("undefined" !== typeof obj[key]) {
            o2[key] = obj[key];
          }
        }
        return o2;
      }
      function stringifySemver(obj) {
        var str2 = "";
        str2 += obj.major || "0";
        str2 += ".";
        str2 += obj.minor || "0";
        str2 += ".";
        str2 += obj.patch || "0";
        if (obj.release) {
          str2 += "-" + obj.release;
        }
        if (obj.build) {
          str2 += "+" + obj.build;
        }
        return str2;
      }
      function stringifySemverRange(arr) {
        var str2 = "";
        function stringify(ver) {
          if (ver.operator) {
            str2 += ver.operator + " ";
          }
          if (ver.major) {
            str2 += ver.toString() + " ";
          }
        }
        arr.forEach(stringify);
        return str2.trim();
      }
      function SemVer(obj) {
        if (!obj) {
          return;
        }
        var me = this;
        Object.keys(obj).forEach(function(key) {
          me[key] = obj[key];
        });
      }
      SemVer.prototype.toString = function() {
        return stringifySemver(this);
      };
      function parseSemver(version2) {
        var m = reSemver.exec(version2) || [], ver = new SemVer(pruned({
          semver: m[0],
          version: m[1],
          major: m[2],
          minor: m[3],
          patch: m[4],
          release: m[5],
          build: m[6]
        }));
        if (0 === m.length) {
          ver = null;
        }
        return ver;
      }
      function parseSemverRange(str2) {
        var m, arr = [], obj;
        while (m = reSemverRange.exec(str2)) {
          obj = {
            semver: m[3],
            operator: m[4] || m[2],
            major: m[6],
            minor: m[8],
            patch: m[10]
          };
          if ("+" === m[12]) {
            obj.build = m[13];
          }
          if ("-" === m[12]) {
            obj.release = m[13];
          }
          arr.push(new SemVer(pruned(obj)));
        }
        return arr;
      }
      module2.exports.parse = parseSemver;
      module2.exports.stringify = stringifySemver;
      module2.exports.parseRange = parseSemverRange;
      module2.exports.stringifyRange = stringifySemverRange;
    })();
  }
});

// ../resolving/npm-resolver/lib/whichVersionIsPinned.js
function whichVersionIsPinned(spec) {
  const colonIndex = spec.indexOf(":");
  if (colonIndex !== -1) {
    spec = spec.substring(colonIndex + 1);
  }
  const index = spec.lastIndexOf("@");
  if (index !== -1) {
    spec = spec.slice(index + 1);
  }
  if (spec === "*")
    return "none";
  const parsedRange = (0, import_semver_utils.parseRange)(spec);
  if (parsedRange.length !== 1)
    return void 0;
  const versionObject = parsedRange[0];
  switch (versionObject.operator) {
    case "~":
      return "minor";
    case "^":
      return "major";
    case void 0:
      if (versionObject.patch)
        return "patch";
      if (versionObject.minor)
        return "minor";
      if (versionObject.major)
        return "major";
  }
  return void 0;
}
var import_semver_utils;
var init_whichVersionIsPinned = __esm({
  "../resolving/npm-resolver/lib/whichVersionIsPinned.js"() {
    "use strict";
    import_semver_utils = __toESM(require_semver_utils(), 1);
  }
});

// ../workspace/spec-parser/lib/index.js
var WORKSPACE_PREF_REGEX, WorkspaceSpec;
var init_lib22 = __esm({
  "../workspace/spec-parser/lib/index.js"() {
    "use strict";
    WORKSPACE_PREF_REGEX = /^workspace:(?:(?<alias>[^._/][^@]*)@)?(?<version>.*)$/;
    WorkspaceSpec = class _WorkspaceSpec {
      alias;
      version;
      constructor(version2, alias) {
        this.version = version2;
        this.alias = alias;
      }
      static parse(bareSpecifier) {
        const parts = WORKSPACE_PREF_REGEX.exec(bareSpecifier);
        if (!parts?.groups)
          return null;
        return new _WorkspaceSpec(parts.groups.version, parts.groups.alias);
      }
      toString() {
        const { alias, version: version2 } = this;
        return alias ? `workspace:${alias}@${version2}` : `workspace:${version2}`;
      }
    };
  }
});

// ../resolving/npm-resolver/lib/workspacePrefToNpm.js
function workspacePrefToNpm(workspaceBareSpecifier) {
  const parseResult = WorkspaceSpec.parse(workspaceBareSpecifier);
  if (parseResult == null) {
    throw new Error(`Invalid workspace spec: ${workspaceBareSpecifier}`);
  }
  const { alias, version: version2 } = parseResult;
  const versionPart = version2 === "^" || version2 === "~" || version2 === "" ? "*" : version2;
  return alias ? `npm:${alias}@${versionPart}` : versionPart;
}
var init_workspacePrefToNpm = __esm({
  "../resolving/npm-resolver/lib/workspacePrefToNpm.js"() {
    "use strict";
    init_lib22();
  }
});

// ../config/version-policy/lib/index.js
function createPackageVersionPolicy(patterns) {
  const rules = [];
  for (const pattern of patterns) {
    const parsed = parseVersionPolicyRule(pattern);
    rules.push({ nameMatcher: createMatcher(parsed.packageName), exactVersions: parsed.exactVersions });
  }
  return evaluateVersionPolicy.bind(null, rules);
}
function createPackageVersionPolicyOrThrow(patterns, key) {
  try {
    return createPackageVersionPolicy(patterns);
  } catch (err) {
    if (!err || typeof err !== "object" || !("message" in err))
      throw err;
    throw new PnpmError(`INVALID_${key.replace(/([A-Z])/g, "_$1").toUpperCase()}`, `Invalid value in ${key}: ${err.message}`);
  }
}
function getPublishedByPolicy(opts2) {
  return {
    publishedBy: opts2.minimumReleaseAge ? new Date(Date.now() - opts2.minimumReleaseAge * 60 * 1e3) : void 0,
    publishedByExclude: opts2.minimumReleaseAgeExclude ? createPackageVersionPolicyOrThrow(opts2.minimumReleaseAgeExclude, "minimumReleaseAgeExclude") : void 0
  };
}
function expandPackageVersionSpecs(specs) {
  const expandedSpecs = /* @__PURE__ */ new Set();
  for (const spec of specs) {
    const parsed = parseVersionPolicyRule(spec);
    if (parsed.exactVersions.length === 0) {
      expandedSpecs.add(parsed.packageName);
    } else {
      for (const version2 of parsed.exactVersions) {
        expandedSpecs.add(`${parsed.packageName}@${version2}`);
      }
    }
  }
  return expandedSpecs;
}
function evaluateVersionPolicy(rules, pkgName) {
  for (const { nameMatcher, exactVersions } of rules) {
    if (!nameMatcher(pkgName)) {
      continue;
    }
    if (exactVersions.length === 0) {
      return true;
    }
    return exactVersions;
  }
  return false;
}
function parseVersionPolicyRule(pattern) {
  const isScoped = pattern.startsWith("@");
  const atIndex = isScoped ? pattern.indexOf("@", 1) : pattern.indexOf("@");
  if (atIndex === -1) {
    return { packageName: pattern, exactVersions: [] };
  }
  const packageName = pattern.slice(0, atIndex);
  const versionsPart = pattern.slice(atIndex + 1);
  const exactVersions = parseExactVersionsUnion(versionsPart);
  if (exactVersions == null) {
    throw new PnpmError("INVALID_VERSION_UNION", `Invalid versions union. Found: "${pattern}". Use exact versions only.`);
  }
  if (packageName.includes("*")) {
    throw new PnpmError("NAME_PATTERN_IN_VERSION_UNION", `Name patterns are not allowed with version unions. Found: "${pattern}"`);
  }
  return {
    packageName,
    exactVersions
  };
}
function parseExactVersionsUnion(versionsStr) {
  const versions = [];
  for (const versionRaw of versionsStr.split("||")) {
    const version2 = import_semver11.default.valid(versionRaw);
    if (version2 == null) {
      return null;
    }
    versions.push(version2);
  }
  return versions;
}
var import_semver11;
var init_lib23 = __esm({
  "../config/version-policy/lib/index.js"() {
    "use strict";
    init_lib14();
    init_lib2();
    import_semver11 = __toESM(require_semver2(), 1);
  }
});

// ../resolving/npm-resolver/lib/fetchAttestationPublishedAt.js
async function fetchAttestationPublishedAt(fetchOpts, pkgName, version2, opts2) {
  const url7 = `${opts2.registry.replace(/\/$/, "")}/-/npm/v1/attestations/${pkgName}@${version2}`;
  const retryOperation = retry2.operation(fetchOpts.retry);
  return new Promise((resolve3) => {
    retryOperation.attempt(async () => {
      let response;
      try {
        response = await fetchOpts.fetch(url7, {
          authHeaderValue: opts2.authHeaderValue,
          retry: fetchOpts.retry,
          timeout: fetchOpts.timeout
        });
      } catch {
        resolve3(void 0);
        return;
      }
      if (response.status >= 400) {
        resolve3(void 0);
        return;
      }
      let body;
      try {
        body = await response.json();
      } catch {
        resolve3(void 0);
        return;
      }
      resolve3(extractPublishedAt(body));
    });
  });
}
function extractPublishedAt(body) {
  if (!body || typeof body !== "object")
    return void 0;
  const attestations = body.attestations;
  if (!Array.isArray(attestations))
    return void 0;
  let earliestSeconds;
  for (const attestation of attestations) {
    const seconds = readEarliestIntegratedTime(attestation);
    if (seconds == null)
      continue;
    if (earliestSeconds == null || seconds < earliestSeconds) {
      earliestSeconds = seconds;
    }
  }
  if (earliestSeconds == null)
    return void 0;
  return new Date(earliestSeconds * 1e3).toISOString();
}
function readEarliestIntegratedTime(attestation) {
  if (!attestation || typeof attestation !== "object")
    return void 0;
  const bundle = attestation.bundle;
  if (!bundle || typeof bundle !== "object")
    return void 0;
  const verificationMaterial = bundle.verificationMaterial;
  if (!verificationMaterial || typeof verificationMaterial !== "object")
    return void 0;
  const tlogEntries = verificationMaterial.tlogEntries;
  if (!Array.isArray(tlogEntries))
    return void 0;
  let earliest;
  for (const entry of tlogEntries) {
    if (!entry || typeof entry !== "object")
      continue;
    const rawIntegratedTime = entry.integratedTime;
    const seconds = parseIntegratedTimeSeconds(rawIntegratedTime);
    if (seconds == null)
      continue;
    if (earliest == null || seconds < earliest)
      earliest = seconds;
  }
  return earliest;
}
function parseIntegratedTimeSeconds(raw) {
  const seconds = typeof raw === "string" ? Number(raw) : typeof raw === "number" ? raw : NaN;
  if (!Number.isFinite(seconds) || seconds <= 0)
    return void 0;
  return seconds;
}
var retry2;
var init_fetchAttestationPublishedAt = __esm({
  "../resolving/npm-resolver/lib/fetchAttestationPublishedAt.js"() {
    "use strict";
    retry2 = __toESM(require_retry(), 1);
  }
});

// ../resolving/npm-resolver/lib/fetchFullMetadataCached.js
async function fetchFullMetadataCached(fetchOpts, pkgName, opts2) {
  return fetchMetadataCached(fetchOpts, pkgName, { ...opts2, fullMetadata: true, metaDir: FULL_META_DIR });
}
async function fetchAbbreviatedMetadataCached(fetchOpts, pkgName, opts2) {
  return fetchMetadataCached(fetchOpts, pkgName, { ...opts2, fullMetadata: false, metaDir: ABBREVIATED_META_DIR });
}
async function fetchMetadataCached(fetchOpts, pkgName, opts2) {
  const pkgMirror = opts2.cacheDir != null ? getPkgMirrorPath(opts2.cacheDir, opts2.metaDir, opts2.registry, pkgName) : null;
  const cacheHeaders = pkgMirror != null ? await loadMetaHeaders(pkgMirror) : null;
  const result2 = await fetchMetadataFromFromRegistry(fetchOpts, pkgName, {
    registry: opts2.registry,
    authHeaderValue: opts2.authHeaderValue,
    fullMetadata: opts2.fullMetadata,
    etag: cacheHeaders?.etag,
    modified: cacheHeaders?.modified
  });
  if ("notModified" in result2 && result2.notModified) {
    if (pkgMirror == null) {
      throw new PnpmError("META_NOT_MODIFIED_WITHOUT_CACHE", `Registry returned 304 for ${pkgName} without an existing cache to refresh.`);
    }
    const meta = await loadMeta(pkgMirror);
    if (meta == null) {
      throw new PnpmError("META_CACHE_MISSING_AFTER_304", `Metadata cache for ${pkgName} disappeared between headers read and full read.`);
    }
    return meta;
  }
  if (pkgMirror != null) {
    const json2 = prepareJsonForDisk(result2.meta, result2.etag, result2.jsonText);
    saveMeta(pkgMirror, json2).catch(() => {
    });
  }
  return result2.meta;
}
var init_fetchFullMetadataCached = __esm({
  "../resolving/npm-resolver/lib/fetchFullMetadataCached.js"() {
    "use strict";
    init_lib();
    init_lib2();
    init_fetch();
    init_pickPackage();
  }
});

// ../resolving/npm-resolver/lib/createNpmResolutionVerifier.js
function createNpmResolutionVerifier(opts2) {
  const ageCheckActive = Boolean(opts2.minimumReleaseAge);
  const trustCheckActive = opts2.trustPolicy === "no-downgrade";
  if (!ageCheckActive && !trustCheckActive)
    return void 0;
  const cutoff = ageCheckActive ? (opts2.now ?? Date.now()) - opts2.minimumReleaseAge * 60 * 1e3 : 0;
  const excludePolicy = opts2.minimumReleaseAgeExclude?.length ? createExcludePolicy(opts2.minimumReleaseAgeExclude, "minimumReleaseAgeExclude") : void 0;
  const trustExcludePolicy = opts2.trustPolicyExclude?.length ? createExcludePolicy(opts2.trustPolicyExclude, "trustPolicyExclude") : void 0;
  const namedRegistryPrefixes = Object.values({
    ...BUILTIN_NAMED_REGISTRIES,
    ...opts2.namedRegistries ?? {}
  }).map((url7) => {
    const parsed = tryParseUrl(url7);
    if (!parsed)
      return null;
    const pathname = parsed.pathname.endsWith("/") ? parsed.pathname : `${parsed.pathname}/`;
    return `${parsed.origin}${pathname}`;
  }).filter((value) => value != null).sort((a2, b) => b.length - a2.length);
  const lookupContext = {
    fetchOpts: opts2.fetchOpts,
    getAuthHeaderValueByURI: opts2.getAuthHeaderValueByURI,
    cacheDir: opts2.cacheDir,
    cutoffMs: cutoff,
    sharedMetaCache: opts2.metaCache,
    abbreviatedMetaCache: /* @__PURE__ */ new Map(),
    publishedAtCache: /* @__PURE__ */ new Map(),
    localMetaCache: /* @__PURE__ */ new Map(),
    fullMetaCache: /* @__PURE__ */ new Map(),
    fullMetaForTrustCache: /* @__PURE__ */ new Map()
  };
  const minimumReleaseAge = opts2.minimumReleaseAge ?? 0;
  const trustPolicy = opts2.trustPolicy;
  const trustPolicyIgnoreAfter = opts2.trustPolicyIgnoreAfter;
  const verify = async (resolution, { name, version: version2 }) => {
    if (!isNpmRegistryResolution(resolution))
      return { ok: true };
    if (!import_semver12.default.valid(version2))
      return { ok: true };
    const ageApplies = ageCheckActive && !isExcluded(excludePolicy, name, version2);
    const trustApplies = trustCheckActive && !isExcluded(trustExcludePolicy, name, version2);
    if (!ageApplies && !trustApplies)
      return { ok: true };
    const tarballUrl = resolution.tarball;
    const registry = pickRegistryForVersion(opts2.registries, namedRegistryPrefixes, name, tarballUrl);
    if (ageApplies) {
      const ageViolation = await runAgeCheck(lookupContext, registry, name, version2, cutoff, opts2.ignoreMissingTimeField === true);
      if (ageViolation)
        return ageViolation;
    }
    if (trustApplies) {
      const trustViolation = await runTrustCheck(lookupContext, registry, name, version2, {
        trustPolicyExclude: trustExcludePolicy,
        trustPolicyIgnoreAfter
      });
      if (trustViolation)
        return trustViolation;
    }
    return { ok: true };
  };
  const sortedMinAgeExcludes = [...new Set(opts2.minimumReleaseAgeExclude ?? [])].sort();
  const sortedTrustExcludes = [...new Set(opts2.trustPolicyExclude ?? [])].sort();
  return {
    verify,
    policy: {
      minimumReleaseAge,
      minimumReleaseAgeExclude: sortedMinAgeExcludes,
      trustPolicy: trustPolicy ?? null,
      trustPolicyExclude: sortedTrustExcludes,
      trustPolicyIgnoreAfter: trustPolicyIgnoreAfter ?? null
    },
    canTrustPastCheck: (cached) => {
      const past = cached.minimumReleaseAge;
      const pastNumber = typeof past === "number" ? past : 0;
      if (pastNumber < minimumReleaseAge)
        return false;
      const pastMinAgeExcludes = Array.isArray(cached.minimumReleaseAgeExclude) ? cached.minimumReleaseAgeExclude : [];
      if (JSON.stringify(pastMinAgeExcludes) !== JSON.stringify(sortedMinAgeExcludes))
        return false;
      const pastTrustPolicy = cached.trustPolicy ?? null;
      const todayTrustPolicy = trustPolicy ?? null;
      if (pastTrustPolicy !== todayTrustPolicy)
        return false;
      const pastTrustExcludes = Array.isArray(cached.trustPolicyExclude) ? cached.trustPolicyExclude : [];
      if (JSON.stringify(pastTrustExcludes) !== JSON.stringify(sortedTrustExcludes))
        return false;
      const pastIgnoreAfter = typeof cached.trustPolicyIgnoreAfter === "number" ? cached.trustPolicyIgnoreAfter : null;
      const todayIgnoreAfter = trustPolicyIgnoreAfter ?? null;
      if (pastIgnoreAfter !== todayIgnoreAfter)
        return false;
      return true;
    }
  };
}
async function runAgeCheck(context, registry, name, version2, cutoff, ignoreMissingTimeField) {
  let published;
  try {
    published = await fetchPublishedAt(context, registry, name, version2);
  } catch (err) {
    return {
      ok: false,
      code: MINIMUM_RELEASE_AGE_VIOLATION_CODE,
      reason: uncheckable("minimumReleaseAge", err instanceof Error ? err.message : String(err))
    };
  }
  if (!published) {
    if (ignoreMissingTimeField) {
      warnMissingTimeFieldOnce(name);
      return void 0;
    }
    return {
      ok: false,
      code: MINIMUM_RELEASE_AGE_VIOLATION_CODE,
      reason: uncheckable("minimumReleaseAge", "version not present in registry manifest")
    };
  }
  const publishedAt = new Date(published);
  const ts = publishedAt.getTime();
  if (Number.isNaN(ts)) {
    return {
      ok: false,
      code: MINIMUM_RELEASE_AGE_VIOLATION_CODE,
      reason: "publish timestamp is not a valid date"
    };
  }
  if (ts > cutoff) {
    return {
      ok: false,
      code: MINIMUM_RELEASE_AGE_VIOLATION_CODE,
      reason: `was published at ${publishedAt.toISOString()}, within the minimumReleaseAge cutoff (${new Date(cutoff).toISOString()})`
    };
  }
  return void 0;
}
async function runTrustCheck(context, registry, name, version2, opts2) {
  let meta;
  try {
    meta = await fetchFullMetaForTrust(context, registry, name);
  } catch (err) {
    return {
      ok: false,
      code: TRUST_DOWNGRADE_VIOLATION_CODE,
      reason: uncheckable("trustPolicy", err instanceof Error ? err.message : String(err))
    };
  }
  try {
    failIfTrustDowngraded(meta, version2, opts2);
  } catch (err) {
    return {
      ok: false,
      code: TRUST_DOWNGRADE_VIOLATION_CODE,
      reason: err instanceof Error ? err.message : String(err)
    };
  }
  return void 0;
}
function fetchFullMetaForTrust(context, registry, name) {
  const cacheKey = `${registry}\0${name}`;
  let cachedPromise = context.fullMetaForTrustCache.get(cacheKey);
  if (cachedPromise == null) {
    const shared = readSharedMetaForTrust(context.sharedMetaCache, name);
    if (shared != null) {
      cachedPromise = Promise.resolve(projectTrustMeta(shared));
    } else {
      cachedPromise = fetchFullMetadataCached(context.fetchOpts, name, {
        registry,
        authHeaderValue: context.getAuthHeaderValueByURI(registry),
        cacheDir: context.cacheDir
      }).then(projectTrustMeta);
    }
    context.fullMetaForTrustCache.set(cacheKey, cachedPromise);
  }
  return cachedPromise;
}
function projectTrustMeta(meta) {
  const versions = {};
  for (const [version2, manifest] of Object.entries(meta.versions ?? {})) {
    versions[version2] = projectTrustManifest(manifest);
  }
  return {
    name: meta.name,
    "dist-tags": {},
    versions,
    time: meta.time,
    modified: meta.modified,
    etag: meta.etag
  };
}
function projectTrustManifest(manifest) {
  const trustedPublisher = manifest._npmUser?.trustedPublisher;
  const provenance = manifest.dist?.attestations?.provenance;
  return {
    _npmUser: trustedPublisher != null ? { trustedPublisher } : void 0,
    dist: provenance != null ? { attestations: { provenance } } : void 0
  };
}
async function fetchPublishedAt(context, registry, name, version2) {
  const cacheKey = `${registry}\0${name}\0${version2}`;
  let cachedPromise = context.publishedAtCache.get(cacheKey);
  if (cachedPromise == null) {
    cachedPromise = resolvePublishedAt(context, registry, name, version2);
    context.publishedAtCache.set(cacheKey, cachedPromise);
  }
  return cachedPromise;
}
async function resolvePublishedAt(context, registry, name, version2) {
  const abbreviatedShortcut = await tryAbbreviatedModifiedShortcut(context, registry, name, version2);
  if (abbreviatedShortcut != null)
    return abbreviatedShortcut;
  const localTime = await readLocalMetaTime(context, registry, name);
  if (localTime?.[version2])
    return localTime[version2];
  const attestationTime = await fetchAttestationPublishedAt(context.fetchOpts, name, version2, {
    registry,
    authHeaderValue: context.getAuthHeaderValueByURI(registry)
  });
  if (attestationTime != null)
    return attestationTime;
  const fullMetaTime = await fetchFullMetaTime(context, registry, name);
  return fullMetaTime?.[version2];
}
async function tryAbbreviatedModifiedShortcut(context, registry, name, version2) {
  const meta = await fetchAbbreviatedMeta(context, registry, name);
  const modified = meta?.modified;
  if (typeof modified !== "string")
    return void 0;
  const modifiedMs = Date.parse(modified);
  if (Number.isNaN(modifiedMs))
    return void 0;
  if (modifiedMs >= context.cutoffMs)
    return void 0;
  if (!meta?.versionNames?.has(version2))
    return void 0;
  return modified;
}
function fetchAbbreviatedMeta(context, registry, name) {
  const cacheKey = `${registry}\0${name}`;
  let cachedPromise = context.abbreviatedMetaCache.get(cacheKey);
  if (cachedPromise == null) {
    const shared = readSharedMeta(context.sharedMetaCache, name);
    if (shared != null) {
      cachedPromise = Promise.resolve(projectAbbreviatedMeta(shared));
    } else {
      cachedPromise = fetchAbbreviatedMetadataCached(context.fetchOpts, name, {
        registry,
        authHeaderValue: context.getAuthHeaderValueByURI(registry),
        cacheDir: context.cacheDir
      }).then(projectAbbreviatedMeta, () => void 0);
    }
    context.abbreviatedMetaCache.set(cacheKey, cachedPromise);
  }
  return cachedPromise;
}
function readSharedMeta(cache, name) {
  if (cache == null)
    return void 0;
  return validateSharedMeta(cache.get(`${name}:full`), name) ?? validateSharedMeta(cache.get(name), name);
}
function readSharedMetaForTrust(cache, name) {
  if (cache == null)
    return void 0;
  return validateSharedMeta(cache.get(`${name}:full`), name);
}
function validateSharedMeta(meta, name) {
  if (meta == null)
    return void 0;
  if (meta.name !== name)
    return void 0;
  return meta;
}
function projectAbbreviatedMeta(meta) {
  return {
    modified: meta.modified,
    versionNames: meta.versions ? new Set(Object.keys(meta.versions)) : void 0
  };
}
function readLocalMetaTime(context, registry, name) {
  if (!context.cacheDir)
    return Promise.resolve(void 0);
  const cacheKey = `${registry}\0${name}`;
  let cachedPromise = context.localMetaCache.get(cacheKey);
  if (cachedPromise == null) {
    cachedPromise = loadLocalMetaTime(context.cacheDir, registry, name);
    context.localMetaCache.set(cacheKey, cachedPromise);
  }
  return cachedPromise;
}
async function loadLocalMetaTime(cacheDir, registry, name) {
  const pkgMirror = getPkgMirrorPath(cacheDir, FULL_META_DIR, registry, name);
  const cached = await loadMeta(pkgMirror);
  return cached?.time;
}
function fetchFullMetaTime(context, registry, name) {
  const cacheKey = `${registry}\0${name}`;
  let cachedPromise = context.fullMetaCache.get(cacheKey);
  if (cachedPromise == null) {
    cachedPromise = fetchFullMetadataCached(context.fetchOpts, name, {
      registry,
      authHeaderValue: context.getAuthHeaderValueByURI(registry),
      cacheDir: context.cacheDir
    }).then((meta) => meta.time);
    context.fullMetaCache.set(cacheKey, cachedPromise);
  }
  return cachedPromise;
}
function pickRegistryForVersion(registries, namedRegistryPrefixes, name, tarballUrl) {
  if (tarballUrl) {
    const normalized = tryParseUrl(tarballUrl)?.toString();
    if (normalized) {
      for (const prefix of namedRegistryPrefixes) {
        if (normalized.startsWith(prefix))
          return prefix;
      }
    }
  }
  return pickRegistryForPackage(registries, name);
}
function tryParseUrl(url7) {
  try {
    return new URL(url7);
  } catch {
    return null;
  }
}
function uncheckable(policy, why) {
  return `could not be checked against ${policy} (${why})`;
}
function createExcludePolicy(patterns, key) {
  try {
    return createPackageVersionPolicy(patterns);
  } catch (err) {
    if (!err || typeof err !== "object" || !("message" in err))
      throw err;
    throw new PnpmError(`INVALID_${key.replace(/([A-Z])/g, "_$1").toUpperCase()}`, `Invalid value in ${key}: ${err.message}`);
  }
}
function isExcluded(policy, name, version2) {
  if (!policy)
    return false;
  const result2 = policy(name);
  if (result2 === true)
    return true;
  if (Array.isArray(result2) && result2.includes(version2))
    return true;
  return false;
}
function isNpmRegistryResolution(resolution) {
  if (resolution == null || typeof resolution !== "object")
    return false;
  if ("type" in resolution && resolution.type != null)
    return false;
  if ("gitHosted" in resolution && resolution.gitHosted)
    return false;
  return "tarball" in resolution || "integrity" in resolution;
}
var import_semver12;
var init_createNpmResolutionVerifier = __esm({
  "../resolving/npm-resolver/lib/createNpmResolutionVerifier.js"() {
    "use strict";
    init_lib15();
    init_lib23();
    init_lib();
    init_lib2();
    import_semver12 = __toESM(require_semver2(), 1);
    init_fetchAttestationPublishedAt();
    init_fetchFullMetadataCached();
    init_parseBareSpecifier();
    init_pickPackage();
    init_trustChecks();
    init_violationCodes();
  }
});

// ../resolving/npm-resolver/lib/index.js
import path11 from "node:path";
function formatTimeAgo(date) {
  const ts = date.getTime();
  if (isNaN(ts)) {
    return null;
  }
  const now = Date.now();
  const diffMs = now - ts;
  if (diffMs < 0) {
    return null;
  }
  const diffSec = Math.floor(diffMs / 1e3);
  const diffMin = Math.floor(diffSec / 60);
  const diffHour = Math.floor(diffMin / 60);
  const diffDay = Math.floor(diffHour / 24);
  const diffMonth = Math.floor(diffDay / 30);
  const diffYear = Math.floor(diffDay / 365);
  if (diffYear > 0)
    return `${diffYear} year${diffYear === 1 ? "" : "s"} ago`;
  if (diffMonth > 0)
    return `${diffMonth} month${diffMonth === 1 ? "" : "s"} ago`;
  if (diffDay > 0)
    return `${diffDay} day${diffDay === 1 ? "" : "s"} ago`;
  if (diffHour > 0)
    return `${diffHour} hour${diffHour === 1 ? "" : "s"} ago`;
  if (diffMin > 0)
    return `${diffMin} minute${diffMin === 1 ? "" : "s"} ago`;
  return "a few seconds ago";
}
function createNpmResolver(fetchFromRegistry, getAuthHeader, opts2) {
  if (typeof opts2.cacheDir !== "string") {
    throw new TypeError("`opts.cacheDir` is required and needs to be a string");
  }
  const fetchOpts = {
    fetch: fetchFromRegistry,
    retry: opts2.retry ?? {},
    timeout: opts2.timeout ?? 6e4,
    fetchWarnTimeoutMs: opts2.fetchWarnTimeoutMs ?? 10 * 1e3
    // 10 sec
  };
  const fetch2 = pMemoize(fetchMetadataFromFromRegistry.bind(null, fetchOpts), {
    cacheKey: (...args) => JSON.stringify(args)
  });
  const ownsMetaCache = opts2.metaCache == null;
  const metaCache = opts2.metaCache ?? createDefaultPackageMetaCache();
  const storeDir = opts2.storeDir;
  const peekLockerForPeek = /* @__PURE__ */ new Map();
  let peekManifestFromStore;
  if (storeDir) {
    peekManifestFromStore = async (peekOpts) => {
      const filesIndexFile = storeIndexKey(peekOpts.integrity, peekOpts.id);
      const existingRequest = peekLockerForPeek.get(filesIndexFile);
      if (existingRequest != null) {
        return existingRequest;
      }
      const request = readPkgFromCafs({
        storeDir,
        verifyStoreIntegrity: false
      }, filesIndexFile, {
        expectedPkg: { name: peekOpts.name, version: peekOpts.version }
      }).then(({ bundledManifest }) => {
        if (!bundledManifest)
          return void 0;
        return bundledManifest;
      }).catch(() => void 0);
      peekLockerForPeek.set(filesIndexFile, request);
      return request;
    };
  }
  const namedRegistries = mergeNamedRegistries(opts2.namedRegistries);
  const namedRegistryNames = new Set(Object.keys(namedRegistries));
  const ctx = {
    getAuthHeaderValueByURI: getAuthHeader,
    pickPackage: pickPackage.bind(null, {
      fetch: fetch2,
      fullMetadata: opts2.fullMetadata,
      filterMetadata: opts2.filterMetadata,
      metaCache,
      offline: opts2.offline,
      preferOffline: opts2.preferOffline,
      cacheDir: opts2.cacheDir,
      ignoreMissingTimeField: opts2.ignoreMissingTimeField
    }),
    registries: opts2.registries,
    namedRegistries,
    namedRegistryNames,
    saveWorkspaceProtocol: opts2.saveWorkspaceProtocol,
    peekManifestFromStore
  };
  const boundResolveFromNpm = resolveNpm.bind(null, ctx);
  const boundResolveFromJsr = resolveJsr.bind(null, ctx);
  const boundResolveFromNamedRegistry = resolveFromNamedRegistry.bind(null, ctx);
  const defaultRegistry = opts2.registries.default;
  return {
    resolveFromNpm: boundResolveFromNpm,
    resolveFromJsr: boundResolveFromJsr,
    resolveFromNamedRegistry: boundResolveFromNamedRegistry,
    resolveLatestFromNpm: createResolveLatest(boundResolveFromNpm, (query) => isNpmSpec(query, defaultRegistry)),
    resolveLatestFromJsr: createResolveLatest(boundResolveFromJsr, isJsrSpec),
    resolveLatestFromNamedRegistry: createResolveLatest(boundResolveFromNamedRegistry, (query) => isNamedRegistrySpec(query, ctx.namedRegistryNames)),
    clearCache: () => {
      if (ownsMetaCache && "clear" in metaCache && typeof metaCache.clear === "function") {
        metaCache.clear();
      }
      pMemoizeClear(fetch2);
    }
  };
}
function isNpmSpec(query, defaultRegistry) {
  const { alias, bareSpecifier } = query.wantedDependency;
  if (!bareSpecifier)
    return alias != null;
  return parseBareSpecifier(bareSpecifier, alias, "latest", defaultRegistry) != null;
}
function isJsrSpec(query) {
  if (!query.wantedDependency.bareSpecifier?.startsWith("jsr:"))
    return false;
  return parseJsrSpecifierToRegistryPackageSpec(query.wantedDependency.bareSpecifier, query.wantedDependency.alias, "latest") != null;
}
function isNamedRegistrySpec(query, knownRegistryNames) {
  if (!query.wantedDependency.bareSpecifier)
    return false;
  try {
    return parseNamedRegistrySpecifierToRegistryPackageSpec(query.wantedDependency.bareSpecifier, knownRegistryNames, query.wantedDependency.alias, "latest") != null;
  } catch {
    return false;
  }
}
function createResolveLatest(resolve3, matches2) {
  return async (query, opts2) => {
    if (!matches2(query))
      return void 0;
    const bareSpecifier = query.wantedDependency.bareSpecifier ?? "latest";
    const resolveOpts = query.compatible ? opts2 : { ...opts2, update: "latest" };
    try {
      const result2 = await resolve3({ alias: query.wantedDependency.alias, bareSpecifier }, resolveOpts);
      if (result2?.policyViolation?.code === MINIMUM_RELEASE_AGE_VIOLATION_CODE) {
        return {};
      }
      return { latestManifest: result2?.manifest };
    } catch (err) {
      if (opts2.publishedBy && err.code === "ERR_PNPM_NO_MATCHING_VERSION") {
        return {};
      }
      throw err;
    }
  };
}
async function resolveNpm(ctx, wantedDependency, opts2) {
  const defaultTag = opts2.defaultTag ?? "latest";
  const registry = wantedDependency.alias ? pickRegistryForPackage(ctx.registries, wantedDependency.alias, wantedDependency.bareSpecifier) : ctx.registries.default;
  if (wantedDependency.bareSpecifier?.startsWith("workspace:")) {
    if (wantedDependency.bareSpecifier.startsWith("workspace:."))
      return null;
    const resolvedFromWorkspace = tryResolveFromWorkspace(wantedDependency, {
      defaultTag,
      lockfileDir: opts2.lockfileDir,
      projectDir: opts2.projectDir,
      registry,
      workspacePackages: opts2.workspacePackages,
      injectWorkspacePackages: opts2.injectWorkspacePackages,
      update: Boolean(opts2.update),
      saveWorkspaceProtocol: ctx.saveWorkspaceProtocol !== false ? ctx.saveWorkspaceProtocol : true,
      calcSpecifier: opts2.calcSpecifier,
      pinnedVersion: opts2.pinnedVersion
    });
    if (resolvedFromWorkspace != null) {
      return resolvedFromWorkspace;
    }
  }
  const workspacePackages = opts2.alwaysTryWorkspacePackages !== false ? opts2.workspacePackages : void 0;
  const spec = wantedDependency.bareSpecifier ? parseBareSpecifier(wantedDependency.bareSpecifier, wantedDependency.alias, defaultTag, registry) : defaultTagForAlias(wantedDependency.alias, defaultTag);
  if (spec == null)
    return null;
  if (ctx.peekManifestFromStore && opts2.currentPkg?.resolution && !opts2.update && (opts2.publishedBy == null || opts2.currentPkg.publishedAt != null)) {
    const currentResolution = opts2.currentPkg.resolution;
    if ("tarball" in currentResolution && currentResolution.integrity) {
      const manifest = await ctx.peekManifestFromStore({
        id: opts2.currentPkg.id,
        integrity: currentResolution.integrity,
        name: opts2.currentPkg.name,
        version: opts2.currentPkg.version
      });
      if (manifest?.name && manifest?.version) {
        const id2 = `${manifest.name}@${manifest.version}`;
        if (id2 === opts2.currentPkg.id) {
          return {
            id: id2,
            manifest,
            resolution: currentResolution,
            resolvedVia: "npm-registry",
            publishedAt: opts2.currentPkg.publishedAt,
            // Loose-mode bypass: a lockfile entry whose publishedAt sits
            // after the maturity cutoff would have been rejected at
            // resolver time, but the peek path skips the maturity check.
            // Report inline so the deps-resolver aggregator surfaces it
            // to the install command.
            policyViolation: detectMinReleaseAgeViolation({
              name: manifest.name,
              version: manifest.version,
              publishedAt: opts2.currentPkg.publishedAt,
              resolution: currentResolution,
              publishedBy: opts2.publishedBy,
              publishedByExclude: opts2.publishedByExclude
            })
          };
        }
      }
    }
  }
  const authHeaderValue = ctx.getAuthHeaderValueByURI(registry);
  let pickResult;
  try {
    pickResult = await ctx.pickPackage(spec, {
      pickLowestVersion: opts2.pickLowestVersion,
      publishedBy: opts2.publishedBy,
      publishedByExclude: opts2.publishedByExclude,
      authHeaderValue,
      dryRun: opts2.dryRun === true,
      preferredVersionSelectors: opts2.preferredVersions?.[spec.name],
      registry,
      includeLatestTag: opts2.update === "latest",
      optional: wantedDependency.optional
    });
  } catch (err) {
    if (workspacePackages != null && opts2.projectDir) {
      try {
        return tryResolveFromWorkspacePackages(workspacePackages, spec, {
          wantedDependency,
          projectDir: opts2.projectDir,
          lockfileDir: opts2.lockfileDir,
          hardLinkLocalPackages: opts2.injectWorkspacePackages === true || wantedDependency.injected,
          update: false,
          saveWorkspaceProtocol: ctx.saveWorkspaceProtocol,
          calcSpecifier: opts2.calcSpecifier,
          pinnedVersion: opts2.pinnedVersion
        });
      } catch {
      }
    }
    throw err;
  }
  const pickedPackage = pickResult.pickedPackage;
  const meta = pickResult.meta;
  if (pickedPackage == null) {
    if (workspacePackages != null && opts2.projectDir) {
      try {
        return tryResolveFromWorkspacePackages(workspacePackages, spec, {
          wantedDependency,
          projectDir: opts2.projectDir,
          lockfileDir: opts2.lockfileDir,
          hardLinkLocalPackages: opts2.injectWorkspacePackages === true || wantedDependency.injected,
          update: false,
          saveWorkspaceProtocol: ctx.saveWorkspaceProtocol,
          calcSpecifier: opts2.calcSpecifier,
          pinnedVersion: opts2.pinnedVersion
        });
      } catch {
      }
    }
    throw new NoMatchingVersionError({ wantedDependency, packageMeta: meta, registry });
  } else if (opts2.trustPolicy === "no-downgrade") {
    failIfTrustDowngraded(meta, pickedPackage.version, opts2);
  }
  const workspacePkgsMatchingName = workspacePackages?.get(pickedPackage.name);
  if (workspacePkgsMatchingName && opts2.projectDir) {
    const matchedPkg = workspacePkgsMatchingName.get(pickedPackage.version);
    if (matchedPkg) {
      return {
        ...resolveFromLocalPackage(matchedPkg, spec, {
          wantedDependency,
          projectDir: opts2.projectDir,
          lockfileDir: opts2.lockfileDir,
          hardLinkLocalPackages: opts2.injectWorkspacePackages === true || wantedDependency.injected,
          saveWorkspaceProtocol: ctx.saveWorkspaceProtocol,
          calcSpecifier: opts2.calcSpecifier,
          pinnedVersion: opts2.pinnedVersion
        }),
        latest: meta["dist-tags"].latest
      };
    }
    const localVersion = pickMatchingLocalVersionOrNull(workspacePkgsMatchingName, spec);
    if (localVersion && (import_semver13.default.gt(localVersion, pickedPackage.version) || opts2.preferWorkspacePackages)) {
      return {
        ...resolveFromLocalPackage(workspacePkgsMatchingName.get(localVersion), spec, {
          wantedDependency,
          projectDir: opts2.projectDir,
          lockfileDir: opts2.lockfileDir,
          hardLinkLocalPackages: opts2.injectWorkspacePackages === true || wantedDependency.injected,
          saveWorkspaceProtocol: ctx.saveWorkspaceProtocol,
          calcSpecifier: opts2.calcSpecifier,
          pinnedVersion: opts2.pinnedVersion
        }),
        latest: meta["dist-tags"].latest
      };
    }
  }
  const id = `${pickedPackage.name}@${pickedPackage.version}`;
  const resolution = {
    integrity: getIntegrity(pickedPackage.dist),
    tarball: normalizeRegistryUrl(pickedPackage.dist.tarball)
  };
  let normalizedBareSpecifier;
  if (opts2.calcSpecifier) {
    normalizedBareSpecifier = spec.normalizedBareSpecifier ?? calcSpecifier({
      wantedDependency,
      spec,
      version: pickedPackage.version,
      defaultPinnedVersion: opts2.pinnedVersion
    });
  }
  const publishedAt = meta.time?.[pickedPackage.version];
  return {
    id,
    latest: meta["dist-tags"].latest,
    manifest: pickedPackage,
    resolution,
    resolvedVia: "npm-registry",
    publishedAt,
    normalizedBareSpecifier,
    policyViolation: detectMinReleaseAgeViolation({
      name: pickedPackage.name,
      version: pickedPackage.version,
      publishedAt,
      resolution,
      publishedBy: opts2.publishedBy,
      publishedByExclude: opts2.publishedByExclude
    })
  };
}
async function resolveJsr(ctx, wantedDependency, opts2) {
  if (!wantedDependency.bareSpecifier)
    return null;
  const spec = parseJsrSpecifierToRegistryPackageSpec(wantedDependency.bareSpecifier, wantedDependency.alias, opts2.defaultTag ?? "latest");
  if (spec == null)
    return null;
  const picked = await pickFromSimpleRegistry(ctx, wantedDependency, opts2, spec, ctx.registries["@jsr"]);
  return {
    ...picked,
    normalizedBareSpecifier: opts2.calcSpecifier ? calcPrefixedSpecifier("jsr:", spec.jsrPkgName, wantedDependency, picked.manifest.version, opts2.pinnedVersion) : void 0,
    resolvedVia: "jsr-registry",
    alias: spec.jsrPkgName
  };
}
function mergeNamedRegistries(userDefined) {
  const merged = { ...BUILTIN_NAMED_REGISTRIES };
  if (!userDefined)
    return merged;
  for (const [alias, url7] of Object.entries(userDefined)) {
    if (typeof url7 !== "string" || !isValidHttpUrl(url7)) {
      throw new PnpmError("INVALID_NAMED_REGISTRY_URL", `The named registry alias '${alias}' is mapped to '${String(url7)}', which is not a valid http(s) URL.`, { hint: "Provide a URL that starts with http:// or https://, e.g. https://npm.pkg.example.com/" });
    }
    merged[alias] = url7;
  }
  return merged;
}
function isValidHttpUrl(url7) {
  try {
    const parsed = new URL(url7);
    return parsed.protocol === "http:" || parsed.protocol === "https:";
  } catch {
    return false;
  }
}
async function resolveFromNamedRegistry(ctx, wantedDependency, opts2) {
  if (!wantedDependency.bareSpecifier)
    return null;
  const spec = parseNamedRegistrySpecifierToRegistryPackageSpec(wantedDependency.bareSpecifier, ctx.namedRegistryNames, wantedDependency.alias, opts2.defaultTag ?? "latest");
  if (spec == null)
    return null;
  const registry = ctx.namedRegistries[spec.registryName];
  if (!registry)
    return null;
  const picked = await pickFromSimpleRegistry(ctx, wantedDependency, opts2, spec, registry);
  return {
    ...picked,
    normalizedBareSpecifier: opts2.calcSpecifier ? calcPrefixedSpecifier(`${spec.registryName}:`, spec.name, wantedDependency, picked.manifest.version, opts2.pinnedVersion) : void 0,
    resolvedVia: "named-registry",
    registryName: spec.registryName,
    // Exposes the scoped package name so callers that omit an explicit alias
    // (e.g. `pnpm add gh:@acme/foo`) record the dependency under `@acme/foo`.
    alias: spec.name
  };
}
async function pickFromSimpleRegistry(ctx, wantedDependency, opts2, spec, registry) {
  const authHeaderValue = ctx.getAuthHeaderValueByURI(registry);
  const { meta, pickedPackage } = await ctx.pickPackage(spec, {
    pickLowestVersion: opts2.pickLowestVersion,
    publishedBy: opts2.publishedBy,
    publishedByExclude: opts2.publishedByExclude,
    authHeaderValue,
    dryRun: opts2.dryRun === true,
    preferredVersionSelectors: opts2.preferredVersions?.[spec.name],
    registry,
    includeLatestTag: opts2.update === "latest",
    optional: wantedDependency.optional
  });
  if (pickedPackage == null) {
    throw new NoMatchingVersionError({ wantedDependency, packageMeta: meta, registry });
  }
  const resolution = {
    integrity: getIntegrity(pickedPackage.dist),
    tarball: normalizeRegistryUrl(pickedPackage.dist.tarball)
  };
  const publishedAt = meta.time?.[pickedPackage.version];
  return {
    id: `${pickedPackage.name}@${pickedPackage.version}`,
    latest: meta["dist-tags"].latest,
    manifest: pickedPackage,
    resolution,
    publishedAt,
    policyViolation: detectMinReleaseAgeViolation({
      name: pickedPackage.name,
      version: pickedPackage.version,
      publishedAt,
      resolution,
      publishedBy: opts2.publishedBy,
      publishedByExclude: opts2.publishedByExclude
    })
  };
}
function calcPrefixedSpecifier(prefix, pkgName, wantedDependency, version2, defaultPinnedVersion) {
  const range = calcRange(version2, wantedDependency, defaultPinnedVersion);
  if (!wantedDependency.alias || pkgName === wantedDependency.alias)
    return `${prefix}${range}`;
  return `${prefix}${pkgName}@${range}`;
}
function calcSpecifier({ wantedDependency, spec, version: version2, defaultPinnedVersion }) {
  if (wantedDependency.prevSpecifier === wantedDependency.bareSpecifier && wantedDependency.prevSpecifier && (0, import_version_selector_type2.default)(wantedDependency.prevSpecifier)?.type === "tag") {
    return wantedDependency.prevSpecifier;
  }
  const range = calcRange(version2, wantedDependency, defaultPinnedVersion);
  if (!wantedDependency.alias || spec.name === wantedDependency.alias)
    return range;
  return `npm:${spec.name}@${range}`;
}
function calcRange(version2, wantedDependency, defaultPinnedVersion) {
  if (import_semver13.default.parse(version2)?.prerelease.length) {
    return version2;
  }
  const pinnedVersion = (wantedDependency.prevSpecifier ? whichVersionIsPinned(wantedDependency.prevSpecifier) : void 0) ?? (wantedDependency.bareSpecifier ? whichVersionIsPinned(wantedDependency.bareSpecifier) : void 0) ?? defaultPinnedVersion;
  return createVersionSpec(version2, pinnedVersion);
}
function tryResolveFromWorkspace(wantedDependency, opts2) {
  if (!wantedDependency.bareSpecifier?.startsWith("workspace:")) {
    return null;
  }
  const bareSpecifier = workspacePrefToNpm(wantedDependency.bareSpecifier);
  const spec = parseBareSpecifier(bareSpecifier, wantedDependency.alias, opts2.defaultTag, opts2.registry);
  if (spec == null)
    throw new Error(`Invalid workspace: spec (${wantedDependency.bareSpecifier})`);
  if (opts2.workspacePackages == null) {
    throw new Error("Cannot resolve package from workspace because opts.workspacePackages is not defined");
  }
  if (!opts2.projectDir) {
    throw new Error("Cannot resolve package from workspace because opts.projectDir is not defined");
  }
  return tryResolveFromWorkspacePackages(opts2.workspacePackages, spec, {
    wantedDependency,
    projectDir: opts2.projectDir,
    hardLinkLocalPackages: opts2.injectWorkspacePackages === true || wantedDependency.injected,
    lockfileDir: opts2.lockfileDir,
    update: opts2.update,
    saveWorkspaceProtocol: opts2.saveWorkspaceProtocol,
    calcSpecifier: opts2.calcSpecifier,
    pinnedVersion: opts2.pinnedVersion
  });
}
function tryResolveFromWorkspacePackages(workspacePackages, spec, opts2) {
  const workspacePkgsMatchingName = workspacePackages.get(spec.name);
  if (!workspacePkgsMatchingName) {
    throw new PnpmError("WORKSPACE_PKG_NOT_FOUND", `In ${path11.relative(process.cwd(), opts2.projectDir)}: "${spec.name}@${opts2.wantedDependency.bareSpecifier ?? ""}" is in the dependencies but no package named "${spec.name}" is present in the workspace`, {
      hint: "Packages found in the workspace: " + Array.from(workspacePackages.keys()).join(", ")
    });
  }
  const localVersion = pickMatchingLocalVersionOrNull(workspacePkgsMatchingName, opts2.update ? { name: spec.name, fetchSpec: "*", type: "range" } : spec);
  if (!localVersion) {
    const availableVersions = Array.from(workspacePkgsMatchingName.keys()).sort((a2, b) => import_semver13.default.rcompare(a2, b));
    throw new PnpmError("NO_MATCHING_VERSION_INSIDE_WORKSPACE", `In ${path11.relative(process.cwd(), opts2.projectDir)}: No matching version found for ${opts2.wantedDependency.alias ?? ""}@${opts2.wantedDependency.bareSpecifier ?? ""} inside the workspace` + (availableVersions.length ? `. Available versions: ${availableVersions.join(", ")}` : ""), availableVersions.length ? {
      hint: `Available workspace versions for "${spec.name}": ${availableVersions.join(", ")}`
    } : void 0);
  }
  return resolveFromLocalPackage(workspacePkgsMatchingName.get(localVersion), spec, opts2);
}
function pickMatchingLocalVersionOrNull(versions, spec) {
  switch (spec.type) {
    case "tag":
      return import_semver13.default.maxSatisfying(Array.from(versions.keys()), "*", {
        includePrerelease: true
      });
    case "version":
      return versions.has(spec.fetchSpec) ? spec.fetchSpec : null;
    case "range":
      return resolveWorkspaceRange(spec.fetchSpec, Array.from(versions.keys()));
    default:
      return null;
  }
}
function resolveFromLocalPackage(localPackage, spec, opts2) {
  let id;
  let directory;
  const localPackageDir = resolveLocalPackageDir(localPackage);
  if (opts2.hardLinkLocalPackages) {
    directory = (0, import_normalize_path.default)(path11.relative(opts2.lockfileDir, localPackageDir));
    id = `file:${directory}`;
  } else {
    directory = localPackageDir;
    id = `link:${(0, import_normalize_path.default)(path11.relative(opts2.projectDir, localPackageDir))}`;
  }
  let normalizedBareSpecifier;
  if (opts2.calcSpecifier) {
    normalizedBareSpecifier = spec.normalizedBareSpecifier ?? calcSpecifierForWorkspaceDep({
      wantedDependency: opts2.wantedDependency,
      spec,
      saveWorkspaceProtocol: opts2.saveWorkspaceProtocol,
      version: localPackage.manifest.version,
      defaultPinnedVersion: opts2.pinnedVersion
    });
  }
  return {
    id,
    manifest: clone_default(localPackage.manifest),
    resolution: {
      directory,
      type: "directory"
    },
    resolvedVia: "workspace",
    normalizedBareSpecifier
  };
}
function calcSpecifierForWorkspaceDep({ wantedDependency, spec, saveWorkspaceProtocol, version: version2, defaultPinnedVersion }) {
  if (!saveWorkspaceProtocol && !wantedDependency.bareSpecifier?.startsWith("workspace:")) {
    return calcSpecifier({ wantedDependency, spec, version: version2, defaultPinnedVersion });
  }
  const prefix = !wantedDependency.alias || spec.name === wantedDependency.alias ? "workspace:" : `workspace:${spec.name}@`;
  if (saveWorkspaceProtocol === "rolling") {
    const specifier = wantedDependency.prevSpecifier ?? wantedDependency.bareSpecifier;
    if (specifier) {
      if ([`${prefix}*`, `${prefix}^`, `${prefix}~`].includes(specifier))
        return specifier;
      const pinnedVersion2 = whichVersionIsPinned(specifier);
      switch (pinnedVersion2) {
        case "major":
          return `${prefix}^`;
        case "minor":
          return `${prefix}~`;
        case "patch":
        case "none":
          return `${prefix}*`;
      }
    }
    return `${prefix}^`;
  }
  if (import_semver13.default.parse(version2)?.prerelease.length) {
    return `${prefix}${version2}`;
  }
  const pinnedVersion = (wantedDependency.prevSpecifier ? whichVersionIsPinned(wantedDependency.prevSpecifier) : void 0) ?? defaultPinnedVersion;
  const range = createVersionSpec(version2, pinnedVersion);
  return `${prefix}${range}`;
}
function resolveLocalPackageDir(localPackage) {
  if (localPackage.manifest.publishConfig?.directory == null || localPackage.manifest.publishConfig?.linkDirectory === false)
    return localPackage.rootDir;
  return path11.join(localPackage.rootDir, localPackage.manifest.publishConfig.directory);
}
function defaultTagForAlias(alias, defaultTag) {
  return {
    fetchSpec: defaultTag,
    name: alias,
    type: "tag"
  };
}
function detectMinReleaseAgeViolation(args) {
  if (!args.publishedBy || !args.publishedAt)
    return void 0;
  const excludeResult = args.publishedByExclude?.(args.name);
  if (excludeResult === true)
    return void 0;
  if (Array.isArray(excludeResult) && excludeResult.includes(args.version))
    return void 0;
  const ts = new Date(args.publishedAt).getTime();
  if (Number.isNaN(ts) || ts <= args.publishedBy.getTime())
    return void 0;
  return {
    name: args.name,
    version: args.version,
    resolution: args.resolution,
    code: MINIMUM_RELEASE_AGE_VIOLATION_CODE,
    reason: `was published at ${new Date(ts).toISOString()}, within the minimumReleaseAge cutoff (${args.publishedBy.toISOString()})`
  };
}
function getIntegrity(dist) {
  if (dist.integrity) {
    return dist.integrity;
  }
  if (!dist.shasum) {
    return void 0;
  }
  const integrity = import_ssri2.default.fromHex(dist.shasum, "sha1");
  if (!integrity) {
    throw new PnpmError("INVALID_TARBALL_INTEGRITY", `Tarball "${dist.tarball}" has invalid shasum specified in its metadata: ${dist.shasum}`);
  }
  return integrity.toString();
}
function createVersionSpec(version2, pinnedVersion) {
  switch (pinnedVersion ?? "major") {
    case "none":
    case "major":
      return `^${version2}`;
    case "minor":
      return `~${version2}`;
    case "patch":
      return version2;
    default:
      throw new PnpmError("BAD_PINNED_VERSION", `Cannot pin '${pinnedVersion ?? "undefined"}'`);
  }
}
function createDefaultPackageMetaCache() {
  return new I({
    max: 1e4,
    ttl: 120 * 1e3
    // 2 minutes
  });
}
var import_normalize_path, import_semver13, import_ssri2, import_version_selector_type2, NoMatchingVersionError;
var init_lib24 = __esm({
  "../resolving/npm-resolver/lib/index.js"() {
    "use strict";
    init_lib15();
    init_lib2();
    init_lib16();
    init_lib4();
    init_lib17();
    init_index_min();
    import_normalize_path = __toESM(require_normalize_path(), 1);
    init_dist();
    init_es();
    import_semver13 = __toESM(require_semver2(), 1);
    import_ssri2 = __toESM(require_lib6(), 1);
    import_version_selector_type2 = __toESM(require_version_selector_type(), 1);
    init_fetch();
    init_normalizeRegistryUrl();
    init_parseBareSpecifier();
    init_pickPackage();
    init_pickPackageFromMeta();
    init_trustChecks();
    init_violationCodes();
    init_whichVersionIsPinned();
    init_workspacePrefToNpm();
    init_createNpmResolutionVerifier();
    init_violationCodes();
    init_whichVersionIsPinned();
    NoMatchingVersionError = class extends PnpmError {
      packageMeta;
      constructor(opts2) {
        const dep = opts2.wantedDependency.alias ? `${opts2.wantedDependency.alias}@${opts2.wantedDependency.bareSpecifier ?? ""}` : opts2.wantedDependency.bareSpecifier;
        super("NO_MATCHING_VERSION", `No matching version found for ${dep} while fetching it from ${opts2.registry}`);
        this.packageMeta = opts2.packageMeta;
      }
    };
  }
});

// ../workspace/projects-graph/lib/index.js
import path12 from "node:path";
function createProjectsGraph(projects, opts2) {
  const projectMap = createProjectMap(projects);
  const projectMapValues = Object.values(projectMap);
  let projectMapByManifestName;
  let projectMapByDir;
  const unmatched = [];
  const graph = map_default((project) => ({
    dependencies: createNode(project),
    package: project
  }), projectMap);
  return { graph, unmatched };
  function createNode(project) {
    const dependencies = {
      ...project.manifest.peerDependencies,
      ...!opts2?.ignoreDevDeps && project.manifest.devDependencies,
      ...project.manifest.optionalDependencies,
      ...project.manifest.dependencies
    };
    return Object.entries(dependencies).map(([depName, rawSpec]) => {
      let spec;
      const isWorkspaceSpec = rawSpec.startsWith("workspace:");
      try {
        if (isWorkspaceSpec) {
          const { fetchSpec, name } = parseBareSpecifier(workspacePrefToNpm(rawSpec), depName, "latest", "");
          rawSpec = fetchSpec;
          depName = name;
        }
        spec = import_npm_package_arg.default.resolve(depName, rawSpec, project.rootDir);
      } catch {
        return "";
      }
      if (spec.type === "directory") {
        projectMapByDir ??= getProjectMapByDir(projectMapValues);
        const resolvedPath = path12.resolve(project.rootDir, spec.fetchSpec);
        const found = projectMapByDir[resolvedPath];
        if (found) {
          return found.rootDir;
        }
        const matchedProject2 = projectMapValues.find((p) => path12.relative(p.rootDir, spec.fetchSpec) === "");
        if (matchedProject2 == null) {
          return "";
        }
        projectMapByDir[resolvedPath] = matchedProject2;
        return matchedProject2.rootDir;
      }
      if (spec.type !== "version" && spec.type !== "range")
        return "";
      projectMapByManifestName ??= getProjectMapByManifestName(projectMapValues);
      const candidates = projectMapByManifestName[depName];
      if (!candidates || candidates.length === 0)
        return "";
      const versions = candidates.filter(({ manifest }) => manifest.version).map((p) => p.manifest.version);
      const strictWorkspaceMatching = opts2?.linkWorkspacePackages === false && !isWorkspaceSpec;
      if (strictWorkspaceMatching) {
        unmatched.push({ pkgName: depName, range: rawSpec });
        return "";
      }
      if (isWorkspaceSpec && versions.length === 0) {
        const matchedProject2 = candidates.find((p) => p.manifest.name === depName);
        return matchedProject2.rootDir;
      }
      if (versions.includes(rawSpec)) {
        const matchedProject2 = candidates.find((p) => p.manifest.name === depName && p.manifest.version === rawSpec);
        return matchedProject2.rootDir;
      }
      const matched = resolveWorkspaceRange(rawSpec, versions);
      if (!matched) {
        unmatched.push({ pkgName: depName, range: rawSpec });
        return "";
      }
      const matchedProject = candidates.find((p) => p.manifest.name === depName && p.manifest.version === matched);
      return matchedProject.rootDir;
    }).filter(Boolean);
  }
}
function createProjectMap(projects) {
  const projectMap = {};
  for (const project of projects) {
    projectMap[project.rootDir] = project;
  }
  return projectMap;
}
function getProjectMapByManifestName(projectMapValues) {
  const projectMapByManifestName = {};
  for (const project of projectMapValues) {
    if (project.manifest.name) {
      (projectMapByManifestName[project.manifest.name] ??= []).push(project);
    }
  }
  return projectMapByManifestName;
}
function getProjectMapByDir(projectMapValues) {
  const projectMapByDir = {};
  for (const project of projectMapValues) {
    projectMapByDir[path12.resolve(project.rootDir)] = project;
  }
  return projectMapByDir;
}
var import_npm_package_arg;
var init_lib25 = __esm({
  "../workspace/projects-graph/lib/index.js"() {
    "use strict";
    import_npm_package_arg = __toESM(require_npa(), 1);
    init_lib24();
    init_lib17();
    init_es();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/isexe/2.0.0/b49cd413d57d8ea430128de708f0af2b808f841b338175c75fae74b70a296b56/node_modules/isexe/windows.js
var require_windows = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/isexe/2.0.0/b49cd413d57d8ea430128de708f0af2b808f841b338175c75fae74b70a296b56/node_modules/isexe/windows.js"(exports2, module2) {
    module2.exports = isexe;
    isexe.sync = sync3;
    var fs111 = __require("fs");
    function checkPathExt(path218, options) {
      var pathext = options.pathExt !== void 0 ? options.pathExt : process.env.PATHEXT;
      if (!pathext) {
        return true;
      }
      pathext = pathext.split(";");
      if (pathext.indexOf("") !== -1) {
        return true;
      }
      for (var i2 = 0; i2 < pathext.length; i2++) {
        var p = pathext[i2].toLowerCase();
        if (p && path218.substr(-p.length).toLowerCase() === p) {
          return true;
        }
      }
      return false;
    }
    function checkStat(stat2, path218, options) {
      if (!stat2.isSymbolicLink() && !stat2.isFile()) {
        return false;
      }
      return checkPathExt(path218, options);
    }
    function isexe(path218, options, cb) {
      fs111.stat(path218, function(er, stat2) {
        cb(er, er ? false : checkStat(stat2, path218, options));
      });
    }
    function sync3(path218, options) {
      return checkStat(fs111.statSync(path218), path218, options);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/isexe/2.0.0/b49cd413d57d8ea430128de708f0af2b808f841b338175c75fae74b70a296b56/node_modules/isexe/mode.js
var require_mode = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/isexe/2.0.0/b49cd413d57d8ea430128de708f0af2b808f841b338175c75fae74b70a296b56/node_modules/isexe/mode.js"(exports2, module2) {
    module2.exports = isexe;
    isexe.sync = sync3;
    var fs111 = __require("fs");
    function isexe(path218, options, cb) {
      fs111.stat(path218, function(er, stat2) {
        cb(er, er ? false : checkStat(stat2, options));
      });
    }
    function sync3(path218, options) {
      return checkStat(fs111.statSync(path218), options);
    }
    function checkStat(stat2, options) {
      return stat2.isFile() && checkMode(stat2, options);
    }
    function checkMode(stat2, options) {
      var mod = stat2.mode;
      var uid = stat2.uid;
      var gid = stat2.gid;
      var myUid = options.uid !== void 0 ? options.uid : process.getuid && process.getuid();
      var myGid = options.gid !== void 0 ? options.gid : process.getgid && process.getgid();
      var u4 = parseInt("100", 8);
      var g = parseInt("010", 8);
      var o2 = parseInt("001", 8);
      var ug = u4 | g;
      var ret2 = mod & o2 || mod & g && gid === myGid || mod & u4 && uid === myUid || mod & ug && myUid === 0;
      return ret2;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/isexe/2.0.0/b49cd413d57d8ea430128de708f0af2b808f841b338175c75fae74b70a296b56/node_modules/isexe/index.js
var require_isexe = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/isexe/2.0.0/b49cd413d57d8ea430128de708f0af2b808f841b338175c75fae74b70a296b56/node_modules/isexe/index.js"(exports2, module2) {
    var fs111 = __require("fs");
    var core2;
    if (process.platform === "win32" || global.TESTING_WINDOWS) {
      core2 = require_windows();
    } else {
      core2 = require_mode();
    }
    module2.exports = isexe;
    isexe.sync = sync3;
    function isexe(path218, options, cb) {
      if (typeof options === "function") {
        cb = options;
        options = {};
      }
      if (!cb) {
        if (typeof Promise !== "function") {
          throw new TypeError("callback not provided");
        }
        return new Promise(function(resolve3, reject3) {
          isexe(path218, options || {}, function(er, is) {
            if (er) {
              reject3(er);
            } else {
              resolve3(is);
            }
          });
        });
      }
      core2(path218, options || {}, function(er, is) {
        if (er) {
          if (er.code === "EACCES" || options && options.ignoreErrors) {
            er = null;
            is = false;
          }
        }
        cb(er, is);
      });
    }
    function sync3(path218, options) {
      try {
        return core2.sync(path218, options || {});
      } catch (er) {
        if (options && options.ignoreErrors || er.code === "EACCES") {
          return false;
        } else {
          throw er;
        }
      }
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/which/2.0.3/b3edc9bb2e615e33207d84ba1cf543486578be60c85e0eb74cbce3db918d6865/node_modules/@zkochan/which/which.js
var require_which = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/which/2.0.3/b3edc9bb2e615e33207d84ba1cf543486578be60c85e0eb74cbce3db918d6865/node_modules/@zkochan/which/which.js"(exports2, module2) {
    var isWindows15 = process.platform === "win32" || process.env.OSTYPE === "cygwin" || process.env.OSTYPE === "msys";
    var path218 = __require("path");
    var COLON = isWindows15 ? ";" : ":";
    var isexe = require_isexe();
    var getNotFoundError = (cmd) => Object.assign(new Error(`not found: ${cmd}`), { code: "ENOENT" });
    var getPathInfo = (cmd, opt) => {
      const colon = opt.colon || COLON;
      const pathEnv = cmd.match(/\//) || isWindows15 && cmd.match(/\\/) ? [""] : (opt.path || process.env.PATH || /* istanbul ignore next: very unusual */
      "").split(colon);
      const pathExtExe = isWindows15 ? opt.pathExt || process.env.PATHEXT || ".EXE;.CMD;.BAT;.COM" : "";
      const pathExt = isWindows15 ? pathExtExe.split(colon) : [""];
      if (isWindows15) {
        if (cmd.indexOf(".") !== -1 && pathExt[0] !== "")
          pathExt.unshift("");
      }
      return {
        pathEnv,
        pathExt,
        pathExtExe
      };
    };
    var which4 = (cmd, opt, cb) => {
      if (typeof opt === "function") {
        cb = opt;
        opt = {};
      }
      if (!opt)
        opt = {};
      const { pathEnv, pathExt, pathExtExe } = getPathInfo(cmd, opt);
      const found = [];
      const step2 = (i2) => new Promise((resolve3, reject3) => {
        if (i2 === pathEnv.length)
          return opt.all && found.length ? resolve3(found) : reject3(getNotFoundError(cmd));
        const ppRaw = pathEnv[i2];
        const pathPart = /^".*"$/.test(ppRaw) ? ppRaw.slice(1, -1) : ppRaw;
        const pCmd = path218.join(pathPart, cmd);
        const p = !pathPart && /^\.[\\\/]/.test(cmd) ? cmd.slice(0, 2) + pCmd : pCmd;
        resolve3(subStep(p, i2, 0));
      });
      const subStep = (p, i2, ii) => new Promise((resolve3, reject3) => {
        if (ii === pathExt.length)
          return resolve3(step2(i2 + 1));
        const ext = pathExt[ii];
        isexe(p + ext, { pathExt: pathExtExe }, (er, is) => {
          if (!er && is) {
            if (opt.all)
              found.push(p + ext);
            else
              return resolve3(p + ext);
          }
          return resolve3(subStep(p, i2, ii + 1));
        });
      });
      return cb ? step2(0).then((res) => cb(null, res), cb) : step2(0);
    };
    var whichSync = (cmd, opt) => {
      opt = opt || {};
      const { pathEnv, pathExt, pathExtExe } = getPathInfo(cmd, opt);
      const found = [];
      for (let i2 = 0; i2 < pathEnv.length; i2++) {
        const ppRaw = pathEnv[i2];
        const pathPart = /^".*"$/.test(ppRaw) ? ppRaw.slice(1, -1) : ppRaw;
        const pCmd = path218.join(pathPart, cmd);
        const p = !pathPart && /^\.[\\\/]/.test(cmd) ? cmd.slice(0, 2) + pCmd : pCmd;
        for (let j2 = 0; j2 < pathExt.length; j2++) {
          const cur = p + pathExt[j2];
          try {
            const is = isexe.sync(cur, { pathExt: pathExtExe });
            if (is) {
              if (opt.all)
                found.push(cur);
              else
                return cur;
            }
          } catch (ex) {
          }
        }
      }
      if (opt.all && found.length)
        return found;
      if (opt.nothrow)
        return null;
      throw getNotFoundError(cmd);
    };
    module2.exports = which4;
    which4.sync = whichSync;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/is-plain-obj/4.1.0/d7fab263ffdd134b8e9e6130a60458baf7017c81e96947d5a2e6383c3d47b281/node_modules/is-plain-obj/index.js
function isPlainObject(value) {
  if (typeof value !== "object" || value === null) {
    return false;
  }
  const prototype = Object.getPrototypeOf(value);
  return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in value) && !(Symbol.iterator in value);
}
var init_is_plain_obj = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/is-plain-obj/4.1.0/d7fab263ffdd134b8e9e6130a60458baf7017c81e96947d5a2e6383c3d47b281/node_modules/is-plain-obj/index.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/arguments/file-url.js
import { fileURLToPath } from "node:url";
var safeNormalizeFileUrl, normalizeDenoExecPath, isDenoExecPath, normalizeFileUrl;
var init_file_url = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/arguments/file-url.js"() {
    safeNormalizeFileUrl = (file, name) => {
      const fileString = normalizeFileUrl(normalizeDenoExecPath(file));
      if (typeof fileString !== "string") {
        throw new TypeError(`${name} must be a string or a file URL: ${fileString}.`);
      }
      return fileString;
    };
    normalizeDenoExecPath = (file) => isDenoExecPath(file) ? file.toString() : file;
    isDenoExecPath = (file) => typeof file !== "string" && file && Object.getPrototypeOf(file) === String.prototype;
    normalizeFileUrl = (file) => file instanceof URL ? fileURLToPath(file) : file;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/methods/parameters.js
var normalizeParameters;
var init_parameters = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/methods/parameters.js"() {
    init_is_plain_obj();
    init_file_url();
    normalizeParameters = (rawFile, rawArguments = [], rawOptions = {}) => {
      const filePath = safeNormalizeFileUrl(rawFile, "First argument");
      const [commandArguments, options] = isPlainObject(rawArguments) ? [[], rawArguments] : [rawArguments, rawOptions];
      if (!Array.isArray(commandArguments)) {
        throw new TypeError(`Second argument must be either an array of arguments or an options object: ${commandArguments}`);
      }
      if (commandArguments.some((commandArgument) => typeof commandArgument === "object" && commandArgument !== null)) {
        throw new TypeError(`Second argument must be an array of strings: ${commandArguments}`);
      }
      const normalizedArguments = commandArguments.map(String);
      const nullByteArgument = normalizedArguments.find((normalizedArgument) => normalizedArgument.includes("\0"));
      if (nullByteArgument !== void 0) {
        throw new TypeError(`Arguments cannot contain null bytes ("\\0"): ${nullByteArgument}`);
      }
      if (!isPlainObject(options)) {
        throw new TypeError(`Last argument must be an options object: ${options}`);
      }
      return [filePath, normalizedArguments, options];
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/utils/uint-array.js
import { StringDecoder } from "node:string_decoder";
var objectToString, isArrayBuffer, isUint8Array, bufferToUint8Array, textEncoder3, stringToUint8Array, textDecoder, uint8ArrayToString, joinToString, uint8ArraysToStrings, joinToUint8Array, stringsToUint8Arrays, concatUint8Arrays, getJoinLength;
var init_uint_array = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/utils/uint-array.js"() {
    ({ toString: objectToString } = Object.prototype);
    isArrayBuffer = (value) => objectToString.call(value) === "[object ArrayBuffer]";
    isUint8Array = (value) => objectToString.call(value) === "[object Uint8Array]";
    bufferToUint8Array = (buffer3) => new Uint8Array(buffer3.buffer, buffer3.byteOffset, buffer3.byteLength);
    textEncoder3 = new TextEncoder();
    stringToUint8Array = (string) => textEncoder3.encode(string);
    textDecoder = new TextDecoder();
    uint8ArrayToString = (uint8Array) => textDecoder.decode(uint8Array);
    joinToString = (uint8ArraysOrStrings, encoding) => {
      const strings2 = uint8ArraysToStrings(uint8ArraysOrStrings, encoding);
      return strings2.join("");
    };
    uint8ArraysToStrings = (uint8ArraysOrStrings, encoding) => {
      if (encoding === "utf8" && uint8ArraysOrStrings.every((uint8ArrayOrString) => typeof uint8ArrayOrString === "string")) {
        return uint8ArraysOrStrings;
      }
      const decoder2 = new StringDecoder(encoding);
      const strings2 = uint8ArraysOrStrings.map((uint8ArrayOrString) => typeof uint8ArrayOrString === "string" ? stringToUint8Array(uint8ArrayOrString) : uint8ArrayOrString).map((uint8Array) => decoder2.write(uint8Array));
      const finalString = decoder2.end();
      return finalString === "" ? strings2 : [...strings2, finalString];
    };
    joinToUint8Array = (uint8ArraysOrStrings) => {
      if (uint8ArraysOrStrings.length === 1 && isUint8Array(uint8ArraysOrStrings[0])) {
        return uint8ArraysOrStrings[0];
      }
      return concatUint8Arrays(stringsToUint8Arrays(uint8ArraysOrStrings));
    };
    stringsToUint8Arrays = (uint8ArraysOrStrings) => uint8ArraysOrStrings.map((uint8ArrayOrString) => typeof uint8ArrayOrString === "string" ? stringToUint8Array(uint8ArrayOrString) : uint8ArrayOrString);
    concatUint8Arrays = (uint8Arrays) => {
      const result2 = new Uint8Array(getJoinLength(uint8Arrays));
      let index = 0;
      for (const uint8Array of uint8Arrays) {
        result2.set(uint8Array, index);
        index += uint8Array.length;
      }
      return result2;
    };
    getJoinLength = (uint8Arrays) => {
      let joinLength = 0;
      for (const uint8Array of uint8Arrays) {
        joinLength += uint8Array.length;
      }
      return joinLength;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/methods/template.js
import { ChildProcess } from "node:child_process";
var isTemplateString, parseTemplates, parseTemplate, splitByWhitespaces, DELIMITERS, ESCAPE_LENGTH, concatTokens, parseExpression, getSubprocessResult;
var init_template = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/methods/template.js"() {
    init_is_plain_obj();
    init_uint_array();
    isTemplateString = (templates) => Array.isArray(templates) && Array.isArray(templates.raw);
    parseTemplates = (templates, expressions) => {
      let tokens = [];
      for (const [index, template] of templates.entries()) {
        tokens = parseTemplate({
          templates,
          expressions,
          tokens,
          index,
          template
        });
      }
      if (tokens.length === 0) {
        throw new TypeError("Template script must not be empty");
      }
      const [file, ...commandArguments] = tokens;
      return [file, commandArguments, {}];
    };
    parseTemplate = ({ templates, expressions, tokens, index, template }) => {
      if (template === void 0) {
        throw new TypeError(`Invalid backslash sequence: ${templates.raw[index]}`);
      }
      const { nextTokens, leadingWhitespaces, trailingWhitespaces } = splitByWhitespaces(template, templates.raw[index]);
      const newTokens = concatTokens(tokens, nextTokens, leadingWhitespaces);
      if (index === expressions.length) {
        return newTokens;
      }
      const expression = expressions[index];
      const expressionTokens = Array.isArray(expression) ? expression.map((expression2) => parseExpression(expression2)) : [parseExpression(expression)];
      return concatTokens(newTokens, expressionTokens, trailingWhitespaces);
    };
    splitByWhitespaces = (template, rawTemplate) => {
      if (rawTemplate.length === 0) {
        return { nextTokens: [], leadingWhitespaces: false, trailingWhitespaces: false };
      }
      const nextTokens = [];
      let templateStart = 0;
      const leadingWhitespaces = DELIMITERS.has(rawTemplate[0]);
      for (let templateIndex = 0, rawIndex = 0; templateIndex < template.length; templateIndex += 1, rawIndex += 1) {
        const rawCharacter = rawTemplate[rawIndex];
        if (DELIMITERS.has(rawCharacter)) {
          if (templateStart !== templateIndex) {
            nextTokens.push(template.slice(templateStart, templateIndex));
          }
          templateStart = templateIndex + 1;
        } else if (rawCharacter === "\\") {
          const nextRawCharacter = rawTemplate[rawIndex + 1];
          if (nextRawCharacter === "\n") {
            templateIndex -= 1;
            rawIndex += 1;
          } else if (nextRawCharacter === "u" && rawTemplate[rawIndex + 2] === "{") {
            rawIndex = rawTemplate.indexOf("}", rawIndex + 3);
          } else {
            rawIndex += ESCAPE_LENGTH[nextRawCharacter] ?? 1;
          }
        }
      }
      const trailingWhitespaces = templateStart === template.length;
      if (!trailingWhitespaces) {
        nextTokens.push(template.slice(templateStart));
      }
      return { nextTokens, leadingWhitespaces, trailingWhitespaces };
    };
    DELIMITERS = /* @__PURE__ */ new Set([" ", "	", "\r", "\n"]);
    ESCAPE_LENGTH = { x: 3, u: 5 };
    concatTokens = (tokens, nextTokens, isSeparated) => isSeparated || tokens.length === 0 || nextTokens.length === 0 ? [...tokens, ...nextTokens] : [
      ...tokens.slice(0, -1),
      `${tokens.at(-1)}${nextTokens[0]}`,
      ...nextTokens.slice(1)
    ];
    parseExpression = (expression) => {
      const typeOfExpression = typeof expression;
      if (typeOfExpression === "string") {
        return expression;
      }
      if (typeOfExpression === "number") {
        return String(expression);
      }
      if (isPlainObject(expression) && ("stdout" in expression || "isMaxBuffer" in expression)) {
        return getSubprocessResult(expression);
      }
      if (expression instanceof ChildProcess || Object.prototype.toString.call(expression) === "[object Promise]") {
        throw new TypeError("Unexpected subprocess in template expression. Please use ${await subprocess} instead of ${subprocess}.");
      }
      throw new TypeError(`Unexpected "${typeOfExpression}" in template expression`);
    };
    getSubprocessResult = ({ stdout }) => {
      if (typeof stdout === "string") {
        return stdout;
      }
      if (isUint8Array(stdout)) {
        return uint8ArrayToString(stdout);
      }
      if (stdout === void 0) {
        throw new TypeError(`Missing result.stdout in template expression. This is probably due to the previous subprocess' "stdout" option.`);
      }
      throw new TypeError(`Unexpected "${typeof stdout}" stdout in template expression`);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/utils/standard-stream.js
import process2 from "node:process";
var isStandardStream, STANDARD_STREAMS, STANDARD_STREAMS_ALIASES, getStreamName;
var init_standard_stream = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/utils/standard-stream.js"() {
    isStandardStream = (stream2) => STANDARD_STREAMS.includes(stream2);
    STANDARD_STREAMS = [process2.stdin, process2.stdout, process2.stderr];
    STANDARD_STREAMS_ALIASES = ["stdin", "stdout", "stderr"];
    getStreamName = (fdNumber) => STANDARD_STREAMS_ALIASES[fdNumber] ?? `stdio[${fdNumber}]`;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/arguments/specific.js
import { debuglog } from "node:util";
var normalizeFdSpecificOptions, normalizeFdSpecificOption, getStdioLength, normalizeFdSpecificValue, normalizeOptionObject, compareFdName, getFdNameOrder, parseFdName, parseFd, FD_REGEXP, addDefaultValue, verboseDefault, DEFAULT_OPTIONS, FD_SPECIFIC_OPTIONS, getFdSpecificValue;
var init_specific = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/arguments/specific.js"() {
    init_is_plain_obj();
    init_standard_stream();
    normalizeFdSpecificOptions = (options) => {
      const optionsCopy = { ...options };
      for (const optionName of FD_SPECIFIC_OPTIONS) {
        optionsCopy[optionName] = normalizeFdSpecificOption(options, optionName);
      }
      return optionsCopy;
    };
    normalizeFdSpecificOption = (options, optionName) => {
      const optionBaseArray = Array.from({ length: getStdioLength(options) + 1 });
      const optionArray = normalizeFdSpecificValue(options[optionName], optionBaseArray, optionName);
      return addDefaultValue(optionArray, optionName);
    };
    getStdioLength = ({ stdio }) => Array.isArray(stdio) ? Math.max(stdio.length, STANDARD_STREAMS_ALIASES.length) : STANDARD_STREAMS_ALIASES.length;
    normalizeFdSpecificValue = (optionValue, optionArray, optionName) => isPlainObject(optionValue) ? normalizeOptionObject(optionValue, optionArray, optionName) : optionArray.fill(optionValue);
    normalizeOptionObject = (optionValue, optionArray, optionName) => {
      for (const fdName of Object.keys(optionValue).sort(compareFdName)) {
        for (const fdNumber of parseFdName(fdName, optionName, optionArray)) {
          optionArray[fdNumber] = optionValue[fdName];
        }
      }
      return optionArray;
    };
    compareFdName = (fdNameA, fdNameB) => getFdNameOrder(fdNameA) < getFdNameOrder(fdNameB) ? 1 : -1;
    getFdNameOrder = (fdName) => {
      if (fdName === "stdout" || fdName === "stderr") {
        return 0;
      }
      return fdName === "all" ? 2 : 1;
    };
    parseFdName = (fdName, optionName, optionArray) => {
      if (fdName === "ipc") {
        return [optionArray.length - 1];
      }
      const fdNumber = parseFd(fdName);
      if (fdNumber === void 0 || fdNumber === 0) {
        throw new TypeError(`"${optionName}.${fdName}" is invalid.
It must be "${optionName}.stdout", "${optionName}.stderr", "${optionName}.all", "${optionName}.ipc", or "${optionName}.fd3", "${optionName}.fd4" (and so on).`);
      }
      if (fdNumber >= optionArray.length) {
        throw new TypeError(`"${optionName}.${fdName}" is invalid: that file descriptor does not exist.
Please set the "stdio" option to ensure that file descriptor exists.`);
      }
      return fdNumber === "all" ? [1, 2] : [fdNumber];
    };
    parseFd = (fdName) => {
      if (fdName === "all") {
        return fdName;
      }
      if (STANDARD_STREAMS_ALIASES.includes(fdName)) {
        return STANDARD_STREAMS_ALIASES.indexOf(fdName);
      }
      const regexpResult = FD_REGEXP.exec(fdName);
      if (regexpResult !== null) {
        return Number(regexpResult[1]);
      }
    };
    FD_REGEXP = /^fd(\d+)$/;
    addDefaultValue = (optionArray, optionName) => optionArray.map((optionValue) => optionValue === void 0 ? DEFAULT_OPTIONS[optionName] : optionValue);
    verboseDefault = debuglog("execa").enabled ? "full" : "none";
    DEFAULT_OPTIONS = {
      lines: false,
      buffer: true,
      maxBuffer: 1e3 * 1e3 * 100,
      verbose: verboseDefault,
      stripFinalNewline: true
    };
    FD_SPECIFIC_OPTIONS = ["lines", "buffer", "maxBuffer", "verbose", "stripFinalNewline"];
    getFdSpecificValue = (optionArray, fdNumber) => fdNumber === "ipc" ? optionArray.at(-1) : optionArray[fdNumber];
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/verbose/values.js
var isVerbose, isFullVerbose, getVerboseFunction, getFdVerbose, getFdGenericVerbose, isVerboseFunction, VERBOSE_VALUES;
var init_values2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/verbose/values.js"() {
    init_specific();
    isVerbose = ({ verbose }, fdNumber) => getFdVerbose(verbose, fdNumber) !== "none";
    isFullVerbose = ({ verbose }, fdNumber) => !["none", "short"].includes(getFdVerbose(verbose, fdNumber));
    getVerboseFunction = ({ verbose }, fdNumber) => {
      const fdVerbose = getFdVerbose(verbose, fdNumber);
      return isVerboseFunction(fdVerbose) ? fdVerbose : void 0;
    };
    getFdVerbose = (verbose, fdNumber) => fdNumber === void 0 ? getFdGenericVerbose(verbose) : getFdSpecificValue(verbose, fdNumber);
    getFdGenericVerbose = (verbose) => verbose.find((fdVerbose) => isVerboseFunction(fdVerbose)) ?? VERBOSE_VALUES.findLast((fdVerbose) => verbose.includes(fdVerbose));
    isVerboseFunction = (fdVerbose) => typeof fdVerbose === "function";
    VERBOSE_VALUES = ["none", "short", "full"];
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/arguments/escape.js
import { platform } from "node:process";
import { stripVTControlCharacters } from "node:util";
var joinCommand, escapeLines, escapeControlCharacters, escapeControlCharacter, getSpecialCharRegExp, SPECIAL_CHAR_REGEXP, COMMON_ESCAPES, ASTRAL_START, quoteString, NO_ESCAPE_REGEXP;
var init_escape = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/arguments/escape.js"() {
    joinCommand = (filePath, rawArguments) => {
      const fileAndArguments = [filePath, ...rawArguments];
      const command = fileAndArguments.join(" ");
      const escapedCommand = fileAndArguments.map((fileAndArgument) => quoteString(escapeControlCharacters(fileAndArgument))).join(" ");
      return { command, escapedCommand };
    };
    escapeLines = (lines) => stripVTControlCharacters(lines).split("\n").map((line) => escapeControlCharacters(line)).join("\n");
    escapeControlCharacters = (line) => line.replaceAll(SPECIAL_CHAR_REGEXP, (character) => escapeControlCharacter(character));
    escapeControlCharacter = (character) => {
      const commonEscape = COMMON_ESCAPES[character];
      if (commonEscape !== void 0) {
        return commonEscape;
      }
      const codepoint = character.codePointAt(0);
      const codepointHex = codepoint.toString(16);
      return codepoint <= ASTRAL_START ? `\\u${codepointHex.padStart(4, "0")}` : `\\U${codepointHex}`;
    };
    getSpecialCharRegExp = () => {
      try {
        return new RegExp("\\p{Separator}|\\p{Other}", "gu");
      } catch {
        return /[\s\u0000-\u001F\u007F-\u009F\u00AD]/g;
      }
    };
    SPECIAL_CHAR_REGEXP = getSpecialCharRegExp();
    COMMON_ESCAPES = {
      " ": " ",
      "\b": "\\b",
      "\f": "\\f",
      "\n": "\\n",
      "\r": "\\r",
      "	": "\\t"
    };
    ASTRAL_START = 65535;
    quoteString = (escapedArgument) => {
      if (NO_ESCAPE_REGEXP.test(escapedArgument)) {
        return escapedArgument;
      }
      return platform === "win32" ? `"${escapedArgument.replaceAll('"', '""')}"` : `'${escapedArgument.replaceAll("'", "'\\''")}'`;
    };
    NO_ESCAPE_REGEXP = /^[\w./-]+$/;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/is-unicode-supported/2.1.0/96c705b4b6f40a3ee50bcf0ab7d304f2637226f60351fe5d31878fc07eaa7353/node_modules/is-unicode-supported/index.js
import process3 from "node:process";
function isUnicodeSupported() {
  const { env: env3 } = process3;
  const { TERM, TERM_PROGRAM } = env3;
  if (process3.platform !== "win32") {
    return TERM !== "linux";
  }
  return Boolean(env3.WT_SESSION) || Boolean(env3.TERMINUS_SUBLIME) || env3.ConEmuTask === "{cmd::Cmder}" || TERM_PROGRAM === "Terminus-Sublime" || TERM_PROGRAM === "vscode" || TERM === "xterm-256color" || TERM === "alacritty" || TERM === "rxvt-unicode" || TERM === "rxvt-unicode-256color" || env3.TERMINAL_EMULATOR === "JetBrains-JediTerm";
}
var init_is_unicode_supported = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/is-unicode-supported/2.1.0/96c705b4b6f40a3ee50bcf0ab7d304f2637226f60351fe5d31878fc07eaa7353/node_modules/is-unicode-supported/index.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/figures/6.1.0/d8dd52fdddaf4d4228ca5a777c9d979f7b2990c249a139eece05433d4cdc529e/node_modules/figures/index.js
var common2, specialMainSymbols, specialFallbackSymbols, mainSymbols, fallbackSymbols, shouldUseMain, figures, figures_default, replacements;
var init_figures = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/figures/6.1.0/d8dd52fdddaf4d4228ca5a777c9d979f7b2990c249a139eece05433d4cdc529e/node_modules/figures/index.js"() {
    init_is_unicode_supported();
    common2 = {
      circleQuestionMark: "(?)",
      questionMarkPrefix: "(?)",
      square: "\u2588",
      squareDarkShade: "\u2593",
      squareMediumShade: "\u2592",
      squareLightShade: "\u2591",
      squareTop: "\u2580",
      squareBottom: "\u2584",
      squareLeft: "\u258C",
      squareRight: "\u2590",
      squareCenter: "\u25A0",
      bullet: "\u25CF",
      dot: "\u2024",
      ellipsis: "\u2026",
      pointerSmall: "\u203A",
      triangleUp: "\u25B2",
      triangleUpSmall: "\u25B4",
      triangleDown: "\u25BC",
      triangleDownSmall: "\u25BE",
      triangleLeftSmall: "\u25C2",
      triangleRightSmall: "\u25B8",
      home: "\u2302",
      heart: "\u2665",
      musicNote: "\u266A",
      musicNoteBeamed: "\u266B",
      arrowUp: "\u2191",
      arrowDown: "\u2193",
      arrowLeft: "\u2190",
      arrowRight: "\u2192",
      arrowLeftRight: "\u2194",
      arrowUpDown: "\u2195",
      almostEqual: "\u2248",
      notEqual: "\u2260",
      lessOrEqual: "\u2264",
      greaterOrEqual: "\u2265",
      identical: "\u2261",
      infinity: "\u221E",
      subscriptZero: "\u2080",
      subscriptOne: "\u2081",
      subscriptTwo: "\u2082",
      subscriptThree: "\u2083",
      subscriptFour: "\u2084",
      subscriptFive: "\u2085",
      subscriptSix: "\u2086",
      subscriptSeven: "\u2087",
      subscriptEight: "\u2088",
      subscriptNine: "\u2089",
      oneHalf: "\xBD",
      oneThird: "\u2153",
      oneQuarter: "\xBC",
      oneFifth: "\u2155",
      oneSixth: "\u2159",
      oneEighth: "\u215B",
      twoThirds: "\u2154",
      twoFifths: "\u2156",
      threeQuarters: "\xBE",
      threeFifths: "\u2157",
      threeEighths: "\u215C",
      fourFifths: "\u2158",
      fiveSixths: "\u215A",
      fiveEighths: "\u215D",
      sevenEighths: "\u215E",
      line: "\u2500",
      lineBold: "\u2501",
      lineDouble: "\u2550",
      lineDashed0: "\u2504",
      lineDashed1: "\u2505",
      lineDashed2: "\u2508",
      lineDashed3: "\u2509",
      lineDashed4: "\u254C",
      lineDashed5: "\u254D",
      lineDashed6: "\u2574",
      lineDashed7: "\u2576",
      lineDashed8: "\u2578",
      lineDashed9: "\u257A",
      lineDashed10: "\u257C",
      lineDashed11: "\u257E",
      lineDashed12: "\u2212",
      lineDashed13: "\u2013",
      lineDashed14: "\u2010",
      lineDashed15: "\u2043",
      lineVertical: "\u2502",
      lineVerticalBold: "\u2503",
      lineVerticalDouble: "\u2551",
      lineVerticalDashed0: "\u2506",
      lineVerticalDashed1: "\u2507",
      lineVerticalDashed2: "\u250A",
      lineVerticalDashed3: "\u250B",
      lineVerticalDashed4: "\u254E",
      lineVerticalDashed5: "\u254F",
      lineVerticalDashed6: "\u2575",
      lineVerticalDashed7: "\u2577",
      lineVerticalDashed8: "\u2579",
      lineVerticalDashed9: "\u257B",
      lineVerticalDashed10: "\u257D",
      lineVerticalDashed11: "\u257F",
      lineDownLeft: "\u2510",
      lineDownLeftArc: "\u256E",
      lineDownBoldLeftBold: "\u2513",
      lineDownBoldLeft: "\u2512",
      lineDownLeftBold: "\u2511",
      lineDownDoubleLeftDouble: "\u2557",
      lineDownDoubleLeft: "\u2556",
      lineDownLeftDouble: "\u2555",
      lineDownRight: "\u250C",
      lineDownRightArc: "\u256D",
      lineDownBoldRightBold: "\u250F",
      lineDownBoldRight: "\u250E",
      lineDownRightBold: "\u250D",
      lineDownDoubleRightDouble: "\u2554",
      lineDownDoubleRight: "\u2553",
      lineDownRightDouble: "\u2552",
      lineUpLeft: "\u2518",
      lineUpLeftArc: "\u256F",
      lineUpBoldLeftBold: "\u251B",
      lineUpBoldLeft: "\u251A",
      lineUpLeftBold: "\u2519",
      lineUpDoubleLeftDouble: "\u255D",
      lineUpDoubleLeft: "\u255C",
      lineUpLeftDouble: "\u255B",
      lineUpRight: "\u2514",
      lineUpRightArc: "\u2570",
      lineUpBoldRightBold: "\u2517",
      lineUpBoldRight: "\u2516",
      lineUpRightBold: "\u2515",
      lineUpDoubleRightDouble: "\u255A",
      lineUpDoubleRight: "\u2559",
      lineUpRightDouble: "\u2558",
      lineUpDownLeft: "\u2524",
      lineUpBoldDownBoldLeftBold: "\u252B",
      lineUpBoldDownBoldLeft: "\u2528",
      lineUpDownLeftBold: "\u2525",
      lineUpBoldDownLeftBold: "\u2529",
      lineUpDownBoldLeftBold: "\u252A",
      lineUpDownBoldLeft: "\u2527",
      lineUpBoldDownLeft: "\u2526",
      lineUpDoubleDownDoubleLeftDouble: "\u2563",
      lineUpDoubleDownDoubleLeft: "\u2562",
      lineUpDownLeftDouble: "\u2561",
      lineUpDownRight: "\u251C",
      lineUpBoldDownBoldRightBold: "\u2523",
      lineUpBoldDownBoldRight: "\u2520",
      lineUpDownRightBold: "\u251D",
      lineUpBoldDownRightBold: "\u2521",
      lineUpDownBoldRightBold: "\u2522",
      lineUpDownBoldRight: "\u251F",
      lineUpBoldDownRight: "\u251E",
      lineUpDoubleDownDoubleRightDouble: "\u2560",
      lineUpDoubleDownDoubleRight: "\u255F",
      lineUpDownRightDouble: "\u255E",
      lineDownLeftRight: "\u252C",
      lineDownBoldLeftBoldRightBold: "\u2533",
      lineDownLeftBoldRightBold: "\u252F",
      lineDownBoldLeftRight: "\u2530",
      lineDownBoldLeftBoldRight: "\u2531",
      lineDownBoldLeftRightBold: "\u2532",
      lineDownLeftRightBold: "\u252E",
      lineDownLeftBoldRight: "\u252D",
      lineDownDoubleLeftDoubleRightDouble: "\u2566",
      lineDownDoubleLeftRight: "\u2565",
      lineDownLeftDoubleRightDouble: "\u2564",
      lineUpLeftRight: "\u2534",
      lineUpBoldLeftBoldRightBold: "\u253B",
      lineUpLeftBoldRightBold: "\u2537",
      lineUpBoldLeftRight: "\u2538",
      lineUpBoldLeftBoldRight: "\u2539",
      lineUpBoldLeftRightBold: "\u253A",
      lineUpLeftRightBold: "\u2536",
      lineUpLeftBoldRight: "\u2535",
      lineUpDoubleLeftDoubleRightDouble: "\u2569",
      lineUpDoubleLeftRight: "\u2568",
      lineUpLeftDoubleRightDouble: "\u2567",
      lineUpDownLeftRight: "\u253C",
      lineUpBoldDownBoldLeftBoldRightBold: "\u254B",
      lineUpDownBoldLeftBoldRightBold: "\u2548",
      lineUpBoldDownLeftBoldRightBold: "\u2547",
      lineUpBoldDownBoldLeftRightBold: "\u254A",
      lineUpBoldDownBoldLeftBoldRight: "\u2549",
      lineUpBoldDownLeftRight: "\u2540",
      lineUpDownBoldLeftRight: "\u2541",
      lineUpDownLeftBoldRight: "\u253D",
      lineUpDownLeftRightBold: "\u253E",
      lineUpBoldDownBoldLeftRight: "\u2542",
      lineUpDownLeftBoldRightBold: "\u253F",
      lineUpBoldDownLeftBoldRight: "\u2543",
      lineUpBoldDownLeftRightBold: "\u2544",
      lineUpDownBoldLeftBoldRight: "\u2545",
      lineUpDownBoldLeftRightBold: "\u2546",
      lineUpDoubleDownDoubleLeftDoubleRightDouble: "\u256C",
      lineUpDoubleDownDoubleLeftRight: "\u256B",
      lineUpDownLeftDoubleRightDouble: "\u256A",
      lineCross: "\u2573",
      lineBackslash: "\u2572",
      lineSlash: "\u2571"
    };
    specialMainSymbols = {
      tick: "\u2714",
      info: "\u2139",
      warning: "\u26A0",
      cross: "\u2718",
      squareSmall: "\u25FB",
      squareSmallFilled: "\u25FC",
      circle: "\u25EF",
      circleFilled: "\u25C9",
      circleDotted: "\u25CC",
      circleDouble: "\u25CE",
      circleCircle: "\u24DE",
      circleCross: "\u24E7",
      circlePipe: "\u24BE",
      radioOn: "\u25C9",
      radioOff: "\u25EF",
      checkboxOn: "\u2612",
      checkboxOff: "\u2610",
      checkboxCircleOn: "\u24E7",
      checkboxCircleOff: "\u24BE",
      pointer: "\u276F",
      triangleUpOutline: "\u25B3",
      triangleLeft: "\u25C0",
      triangleRight: "\u25B6",
      lozenge: "\u25C6",
      lozengeOutline: "\u25C7",
      hamburger: "\u2630",
      smiley: "\u32E1",
      mustache: "\u0DF4",
      star: "\u2605",
      play: "\u25B6",
      nodejs: "\u2B22",
      oneSeventh: "\u2150",
      oneNinth: "\u2151",
      oneTenth: "\u2152"
    };
    specialFallbackSymbols = {
      tick: "\u221A",
      info: "i",
      warning: "\u203C",
      cross: "\xD7",
      squareSmall: "\u25A1",
      squareSmallFilled: "\u25A0",
      circle: "( )",
      circleFilled: "(*)",
      circleDotted: "( )",
      circleDouble: "( )",
      circleCircle: "(\u25CB)",
      circleCross: "(\xD7)",
      circlePipe: "(\u2502)",
      radioOn: "(*)",
      radioOff: "( )",
      checkboxOn: "[\xD7]",
      checkboxOff: "[ ]",
      checkboxCircleOn: "(\xD7)",
      checkboxCircleOff: "( )",
      pointer: ">",
      triangleUpOutline: "\u2206",
      triangleLeft: "\u25C4",
      triangleRight: "\u25BA",
      lozenge: "\u2666",
      lozengeOutline: "\u25CA",
      hamburger: "\u2261",
      smiley: "\u263A",
      mustache: "\u250C\u2500\u2510",
      star: "\u2736",
      play: "\u25BA",
      nodejs: "\u2666",
      oneSeventh: "1/7",
      oneNinth: "1/9",
      oneTenth: "1/10"
    };
    mainSymbols = { ...common2, ...specialMainSymbols };
    fallbackSymbols = { ...common2, ...specialFallbackSymbols };
    shouldUseMain = isUnicodeSupported();
    figures = shouldUseMain ? mainSymbols : fallbackSymbols;
    figures_default = figures;
    replacements = Object.entries(specialMainSymbols);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yoctocolors/2.1.2/ab4a4674bf349f41c4d35529731a767e935d5fe25cfdf262e50eb2ae899daddf/node_modules/yoctocolors/base.js
import tty from "node:tty";
var hasColors, format, reset, bold, dim, italic, underline, overline, inverse, hidden, strikethrough, black, red, green, yellow, blue, magenta, cyan, white, gray, bgBlack, bgRed, bgGreen, bgYellow, bgBlue, bgMagenta, bgCyan, bgWhite, bgGray, redBright, greenBright, yellowBright, blueBright, magentaBright, cyanBright, whiteBright, bgRedBright, bgGreenBright, bgYellowBright, bgBlueBright, bgMagentaBright, bgCyanBright, bgWhiteBright;
var init_base = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/yoctocolors/2.1.2/ab4a4674bf349f41c4d35529731a767e935d5fe25cfdf262e50eb2ae899daddf/node_modules/yoctocolors/base.js"() {
    hasColors = tty?.WriteStream?.prototype?.hasColors?.() ?? false;
    format = (open5, close) => {
      if (!hasColors) {
        return (input) => input;
      }
      const openCode = `\x1B[${open5}m`;
      const closeCode = `\x1B[${close}m`;
      return (input) => {
        const string = input + "";
        let index = string.indexOf(closeCode);
        if (index === -1) {
          return openCode + string + closeCode;
        }
        let result2 = openCode;
        let lastIndex = 0;
        const reopenOnNestedClose = close === 22;
        const replaceCode = (reopenOnNestedClose ? closeCode : "") + openCode;
        while (index !== -1) {
          result2 += string.slice(lastIndex, index) + replaceCode;
          lastIndex = index + closeCode.length;
          index = string.indexOf(closeCode, lastIndex);
        }
        result2 += string.slice(lastIndex) + closeCode;
        return result2;
      };
    };
    reset = format(0, 0);
    bold = format(1, 22);
    dim = format(2, 22);
    italic = format(3, 23);
    underline = format(4, 24);
    overline = format(53, 55);
    inverse = format(7, 27);
    hidden = format(8, 28);
    strikethrough = format(9, 29);
    black = format(30, 39);
    red = format(31, 39);
    green = format(32, 39);
    yellow = format(33, 39);
    blue = format(34, 39);
    magenta = format(35, 39);
    cyan = format(36, 39);
    white = format(37, 39);
    gray = format(90, 39);
    bgBlack = format(40, 49);
    bgRed = format(41, 49);
    bgGreen = format(42, 49);
    bgYellow = format(43, 49);
    bgBlue = format(44, 49);
    bgMagenta = format(45, 49);
    bgCyan = format(46, 49);
    bgWhite = format(47, 49);
    bgGray = format(100, 49);
    redBright = format(91, 39);
    greenBright = format(92, 39);
    yellowBright = format(93, 39);
    blueBright = format(94, 39);
    magentaBright = format(95, 39);
    cyanBright = format(96, 39);
    whiteBright = format(97, 39);
    bgRedBright = format(101, 49);
    bgGreenBright = format(102, 49);
    bgYellowBright = format(103, 49);
    bgBlueBright = format(104, 49);
    bgMagentaBright = format(105, 49);
    bgCyanBright = format(106, 49);
    bgWhiteBright = format(107, 49);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yoctocolors/2.1.2/ab4a4674bf349f41c4d35529731a767e935d5fe25cfdf262e50eb2ae899daddf/node_modules/yoctocolors/index.js
var init_yoctocolors = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/yoctocolors/2.1.2/ab4a4674bf349f41c4d35529731a767e935d5fe25cfdf262e50eb2ae899daddf/node_modules/yoctocolors/index.js"() {
    init_base();
    init_base();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/verbose/default.js
var defaultVerboseFunction, serializeTimestamp, padField, getFinalIcon, ICONS, identity2, COLORS;
var init_default2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/verbose/default.js"() {
    init_figures();
    init_yoctocolors();
    defaultVerboseFunction = ({
      type: type4,
      message,
      timestamp: timestamp2,
      piped,
      commandId,
      result: { failed = false } = {},
      options: { reject: reject3 = true }
    }) => {
      const timestampString = serializeTimestamp(timestamp2);
      const icon = ICONS[type4]({ failed, reject: reject3, piped });
      const color = COLORS[type4]({ reject: reject3 });
      return `${gray(`[${timestampString}]`)} ${gray(`[${commandId}]`)} ${color(icon)} ${color(message)}`;
    };
    serializeTimestamp = (timestamp2) => `${padField(timestamp2.getHours(), 2)}:${padField(timestamp2.getMinutes(), 2)}:${padField(timestamp2.getSeconds(), 2)}.${padField(timestamp2.getMilliseconds(), 3)}`;
    padField = (field, padding) => String(field).padStart(padding, "0");
    getFinalIcon = ({ failed, reject: reject3 }) => {
      if (!failed) {
        return figures_default.tick;
      }
      return reject3 ? figures_default.cross : figures_default.warning;
    };
    ICONS = {
      command: ({ piped }) => piped ? "|" : "$",
      output: () => " ",
      ipc: () => "*",
      error: getFinalIcon,
      duration: getFinalIcon
    };
    identity2 = (string) => string;
    COLORS = {
      command: () => bold,
      output: () => identity2,
      ipc: () => identity2,
      error: ({ reject: reject3 }) => reject3 ? redBright : yellowBright,
      duration: () => gray
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/verbose/custom.js
var applyVerboseOnLines, applyVerboseFunction, appendNewline;
var init_custom = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/verbose/custom.js"() {
    init_values2();
    applyVerboseOnLines = (printedLines, verboseInfo, fdNumber) => {
      const verboseFunction = getVerboseFunction(verboseInfo, fdNumber);
      return printedLines.map(({ verboseLine, verboseObject }) => applyVerboseFunction(verboseLine, verboseObject, verboseFunction)).filter((printedLine) => printedLine !== void 0).map((printedLine) => appendNewline(printedLine)).join("");
    };
    applyVerboseFunction = (verboseLine, verboseObject, verboseFunction) => {
      if (verboseFunction === void 0) {
        return verboseLine;
      }
      const printedLine = verboseFunction(verboseLine, verboseObject);
      if (typeof printedLine === "string") {
        return printedLine;
      }
    };
    appendNewline = (printedLine) => printedLine.endsWith("\n") ? printedLine : `${printedLine}
`;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/verbose/log.js
import { inspect } from "node:util";
var verboseLog, getVerboseObject, getPrintedLines, getPrintedLine, serializeVerboseMessage, TAB_SIZE;
var init_log = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/verbose/log.js"() {
    init_escape();
    init_default2();
    init_custom();
    verboseLog = ({ type: type4, verboseMessage, fdNumber, verboseInfo, result: result2 }) => {
      const verboseObject = getVerboseObject({ type: type4, result: result2, verboseInfo });
      const printedLines = getPrintedLines(verboseMessage, verboseObject);
      const finalLines = applyVerboseOnLines(printedLines, verboseInfo, fdNumber);
      if (finalLines !== "") {
        console.warn(finalLines.slice(0, -1));
      }
    };
    getVerboseObject = ({
      type: type4,
      result: result2,
      verboseInfo: { escapedCommand, commandId, rawOptions: { piped = false, ...options } }
    }) => ({
      type: type4,
      escapedCommand,
      commandId: `${commandId}`,
      timestamp: /* @__PURE__ */ new Date(),
      piped,
      result: result2,
      options
    });
    getPrintedLines = (verboseMessage, verboseObject) => verboseMessage.split("\n").map((message) => getPrintedLine({ ...verboseObject, message }));
    getPrintedLine = (verboseObject) => {
      const verboseLine = defaultVerboseFunction(verboseObject);
      return { verboseLine, verboseObject };
    };
    serializeVerboseMessage = (message) => {
      const messageString = typeof message === "string" ? message : inspect(message);
      const escapedMessage = escapeLines(messageString);
      return escapedMessage.replaceAll("	", " ".repeat(TAB_SIZE));
    };
    TAB_SIZE = 2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/verbose/start.js
var logCommand;
var init_start = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/verbose/start.js"() {
    init_values2();
    init_log();
    logCommand = (escapedCommand, verboseInfo) => {
      if (!isVerbose(verboseInfo)) {
        return;
      }
      verboseLog({
        type: "command",
        verboseMessage: escapedCommand,
        verboseInfo
      });
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/verbose/info.js
var getVerboseInfo, getCommandId, COMMAND_ID, validateVerbose;
var init_info = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/verbose/info.js"() {
    init_values2();
    getVerboseInfo = (verbose, escapedCommand, rawOptions) => {
      validateVerbose(verbose);
      const commandId = getCommandId(verbose);
      return {
        verbose,
        escapedCommand,
        commandId,
        rawOptions
      };
    };
    getCommandId = (verbose) => isVerbose({ verbose }) ? COMMAND_ID++ : void 0;
    COMMAND_ID = 0n;
    validateVerbose = (verbose) => {
      for (const fdVerbose of verbose) {
        if (fdVerbose === false) {
          throw new TypeError(`The "verbose: false" option was renamed to "verbose: 'none'".`);
        }
        if (fdVerbose === true) {
          throw new TypeError(`The "verbose: true" option was renamed to "verbose: 'short'".`);
        }
        if (!VERBOSE_VALUES.includes(fdVerbose) && !isVerboseFunction(fdVerbose)) {
          const allowedValues = VERBOSE_VALUES.map((allowedValue) => `'${allowedValue}'`).join(", ");
          throw new TypeError(`The "verbose" option must not be ${fdVerbose}. Allowed values are: ${allowedValues} or a function.`);
        }
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/return/duration.js
import { hrtime } from "node:process";
var getStartTime, getDurationMs;
var init_duration = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/return/duration.js"() {
    getStartTime = () => hrtime.bigint();
    getDurationMs = (startTime) => Number(hrtime.bigint() - startTime) / 1e6;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/arguments/command.js
var handleCommand;
var init_command = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/arguments/command.js"() {
    init_start();
    init_info();
    init_duration();
    init_escape();
    init_specific();
    handleCommand = (filePath, rawArguments, rawOptions) => {
      const startTime = getStartTime();
      const { command, escapedCommand } = joinCommand(filePath, rawArguments);
      const verbose = normalizeFdSpecificOption(rawOptions, "verbose");
      const verboseInfo = getVerboseInfo(verbose, escapedCommand, { ...rawOptions });
      logCommand(escapedCommand, verboseInfo);
      return {
        command,
        escapedCommand,
        startTime,
        verboseInfo
      };
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/which/2.0.2/552539f3776c3e1eb0a529e767aae6852f3518bf73e532a9552c4d0550928726/node_modules/which/which.js
var require_which2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/which/2.0.2/552539f3776c3e1eb0a529e767aae6852f3518bf73e532a9552c4d0550928726/node_modules/which/which.js"(exports2, module2) {
    var isWindows15 = process.platform === "win32" || process.env.OSTYPE === "cygwin" || process.env.OSTYPE === "msys";
    var path218 = __require("path");
    var COLON = isWindows15 ? ";" : ":";
    var isexe = require_isexe();
    var getNotFoundError = (cmd) => Object.assign(new Error(`not found: ${cmd}`), { code: "ENOENT" });
    var getPathInfo = (cmd, opt) => {
      const colon = opt.colon || COLON;
      const pathEnv = cmd.match(/\//) || isWindows15 && cmd.match(/\\/) ? [""] : [
        // windows always checks the cwd first
        ...isWindows15 ? [process.cwd()] : [],
        ...(opt.path || process.env.PATH || /* istanbul ignore next: very unusual */
        "").split(colon)
      ];
      const pathExtExe = isWindows15 ? opt.pathExt || process.env.PATHEXT || ".EXE;.CMD;.BAT;.COM" : "";
      const pathExt = isWindows15 ? pathExtExe.split(colon) : [""];
      if (isWindows15) {
        if (cmd.indexOf(".") !== -1 && pathExt[0] !== "")
          pathExt.unshift("");
      }
      return {
        pathEnv,
        pathExt,
        pathExtExe
      };
    };
    var which4 = (cmd, opt, cb) => {
      if (typeof opt === "function") {
        cb = opt;
        opt = {};
      }
      if (!opt)
        opt = {};
      const { pathEnv, pathExt, pathExtExe } = getPathInfo(cmd, opt);
      const found = [];
      const step2 = (i2) => new Promise((resolve3, reject3) => {
        if (i2 === pathEnv.length)
          return opt.all && found.length ? resolve3(found) : reject3(getNotFoundError(cmd));
        const ppRaw = pathEnv[i2];
        const pathPart = /^".*"$/.test(ppRaw) ? ppRaw.slice(1, -1) : ppRaw;
        const pCmd = path218.join(pathPart, cmd);
        const p = !pathPart && /^\.[\\\/]/.test(cmd) ? cmd.slice(0, 2) + pCmd : pCmd;
        resolve3(subStep(p, i2, 0));
      });
      const subStep = (p, i2, ii) => new Promise((resolve3, reject3) => {
        if (ii === pathExt.length)
          return resolve3(step2(i2 + 1));
        const ext = pathExt[ii];
        isexe(p + ext, { pathExt: pathExtExe }, (er, is) => {
          if (!er && is) {
            if (opt.all)
              found.push(p + ext);
            else
              return resolve3(p + ext);
          }
          return resolve3(subStep(p, i2, ii + 1));
        });
      });
      return cb ? step2(0).then((res) => cb(null, res), cb) : step2(0);
    };
    var whichSync = (cmd, opt) => {
      opt = opt || {};
      const { pathEnv, pathExt, pathExtExe } = getPathInfo(cmd, opt);
      const found = [];
      for (let i2 = 0; i2 < pathEnv.length; i2++) {
        const ppRaw = pathEnv[i2];
        const pathPart = /^".*"$/.test(ppRaw) ? ppRaw.slice(1, -1) : ppRaw;
        const pCmd = path218.join(pathPart, cmd);
        const p = !pathPart && /^\.[\\\/]/.test(cmd) ? cmd.slice(0, 2) + pCmd : pCmd;
        for (let j2 = 0; j2 < pathExt.length; j2++) {
          const cur = p + pathExt[j2];
          try {
            const is = isexe.sync(cur, { pathExt: pathExtExe });
            if (is) {
              if (opt.all)
                found.push(cur);
              else
                return cur;
            }
          } catch (ex) {
          }
        }
      }
      if (opt.all && found.length)
        return found;
      if (opt.nothrow)
        return null;
      throw getNotFoundError(cmd);
    };
    module2.exports = which4;
    which4.sync = whichSync;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/path-key/3.1.1/4524722710f23d5df14794bb9ac6310753022b2d064db4bf0dc53fac262d1422/node_modules/path-key/index.js
var require_path_key = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/path-key/3.1.1/4524722710f23d5df14794bb9ac6310753022b2d064db4bf0dc53fac262d1422/node_modules/path-key/index.js"(exports2, module2) {
    "use strict";
    var pathKey2 = (options = {}) => {
      const environment = options.env || process.env;
      const platform3 = options.platform || process.platform;
      if (platform3 !== "win32") {
        return "PATH";
      }
      return Object.keys(environment).reverse().find((key) => key.toUpperCase() === "PATH") || "Path";
    };
    module2.exports = pathKey2;
    module2.exports.default = pathKey2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/cross-spawn/7.0.6/a0a7b60251bf98d42302e5b6167c5496ce00c1a1aae367d1dcd3d4eca3396349/node_modules/cross-spawn/lib/util/resolveCommand.js
var require_resolveCommand = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/cross-spawn/7.0.6/a0a7b60251bf98d42302e5b6167c5496ce00c1a1aae367d1dcd3d4eca3396349/node_modules/cross-spawn/lib/util/resolveCommand.js"(exports2, module2) {
    "use strict";
    var path218 = __require("path");
    var which4 = require_which2();
    var getPathKey = require_path_key();
    function resolveCommandAttempt(parsed, withoutPathExt) {
      const env3 = parsed.options.env || process.env;
      const cwd = process.cwd();
      const hasCustomCwd = parsed.options.cwd != null;
      const shouldSwitchCwd = hasCustomCwd && process.chdir !== void 0 && !process.chdir.disabled;
      if (shouldSwitchCwd) {
        try {
          process.chdir(parsed.options.cwd);
        } catch (err) {
        }
      }
      let resolved;
      try {
        resolved = which4.sync(parsed.command, {
          path: env3[getPathKey({ env: env3 })],
          pathExt: withoutPathExt ? path218.delimiter : void 0
        });
      } catch (e) {
      } finally {
        if (shouldSwitchCwd) {
          process.chdir(cwd);
        }
      }
      if (resolved) {
        resolved = path218.resolve(hasCustomCwd ? parsed.options.cwd : "", resolved);
      }
      return resolved;
    }
    function resolveCommand(parsed) {
      return resolveCommandAttempt(parsed) || resolveCommandAttempt(parsed, true);
    }
    module2.exports = resolveCommand;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/cross-spawn/7.0.6/a0a7b60251bf98d42302e5b6167c5496ce00c1a1aae367d1dcd3d4eca3396349/node_modules/cross-spawn/lib/util/escape.js
var require_escape = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/cross-spawn/7.0.6/a0a7b60251bf98d42302e5b6167c5496ce00c1a1aae367d1dcd3d4eca3396349/node_modules/cross-spawn/lib/util/escape.js"(exports2, module2) {
    "use strict";
    var metaCharsRegExp = /([()\][%!^"`<>&|;, *?])/g;
    function escapeCommand(arg) {
      arg = arg.replace(metaCharsRegExp, "^$1");
      return arg;
    }
    function escapeArgument(arg, doubleEscapeMetaChars) {
      arg = `${arg}`;
      arg = arg.replace(/(?=(\\+?)?)\1"/g, '$1$1\\"');
      arg = arg.replace(/(?=(\\+?)?)\1$/, "$1$1");
      arg = `"${arg}"`;
      arg = arg.replace(metaCharsRegExp, "^$1");
      if (doubleEscapeMetaChars) {
        arg = arg.replace(metaCharsRegExp, "^$1");
      }
      return arg;
    }
    module2.exports.command = escapeCommand;
    module2.exports.argument = escapeArgument;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/shebang-regex/3.0.0/82f280adff84cf5ccc1900f1505c7b070891bbab0e1a24f2a47fc5cb4551b008/node_modules/shebang-regex/index.js
var require_shebang_regex = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/shebang-regex/3.0.0/82f280adff84cf5ccc1900f1505c7b070891bbab0e1a24f2a47fc5cb4551b008/node_modules/shebang-regex/index.js"(exports2, module2) {
    "use strict";
    module2.exports = /^#!(.*)/;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/shebang-command/2.0.0/8a593e2b41a0b69672623125edc9ec47df5d5edc811fcc6220217417db76e3ce/node_modules/shebang-command/index.js
var require_shebang_command = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/shebang-command/2.0.0/8a593e2b41a0b69672623125edc9ec47df5d5edc811fcc6220217417db76e3ce/node_modules/shebang-command/index.js"(exports2, module2) {
    "use strict";
    var shebangRegex = require_shebang_regex();
    module2.exports = (string = "") => {
      const match = string.match(shebangRegex);
      if (!match) {
        return null;
      }
      const [path218, argument] = match[0].replace(/#! ?/, "").split(" ");
      const binary2 = path218.split("/").pop();
      if (binary2 === "env") {
        return argument;
      }
      return argument ? `${binary2} ${argument}` : binary2;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/cross-spawn/7.0.6/a0a7b60251bf98d42302e5b6167c5496ce00c1a1aae367d1dcd3d4eca3396349/node_modules/cross-spawn/lib/util/readShebang.js
var require_readShebang = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/cross-spawn/7.0.6/a0a7b60251bf98d42302e5b6167c5496ce00c1a1aae367d1dcd3d4eca3396349/node_modules/cross-spawn/lib/util/readShebang.js"(exports2, module2) {
    "use strict";
    var fs111 = __require("fs");
    var shebangCommand = require_shebang_command();
    function readShebang(command) {
      const size = 150;
      const buffer3 = Buffer.alloc(size);
      let fd;
      try {
        fd = fs111.openSync(command, "r");
        fs111.readSync(fd, buffer3, 0, size, 0);
        fs111.closeSync(fd);
      } catch (e) {
      }
      return shebangCommand(buffer3.toString());
    }
    module2.exports = readShebang;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/cross-spawn/7.0.6/a0a7b60251bf98d42302e5b6167c5496ce00c1a1aae367d1dcd3d4eca3396349/node_modules/cross-spawn/lib/parse.js
var require_parse3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/cross-spawn/7.0.6/a0a7b60251bf98d42302e5b6167c5496ce00c1a1aae367d1dcd3d4eca3396349/node_modules/cross-spawn/lib/parse.js"(exports2, module2) {
    "use strict";
    var path218 = __require("path");
    var resolveCommand = require_resolveCommand();
    var escape = require_escape();
    var readShebang = require_readShebang();
    var isWin2 = process.platform === "win32";
    var isExecutableRegExp = /\.(?:com|exe)$/i;
    var isCmdShimRegExp = /node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;
    function detectShebang(parsed) {
      parsed.file = resolveCommand(parsed);
      const shebang = parsed.file && readShebang(parsed.file);
      if (shebang) {
        parsed.args.unshift(parsed.file);
        parsed.command = shebang;
        return resolveCommand(parsed);
      }
      return parsed.file;
    }
    function parseNonShell(parsed) {
      if (!isWin2) {
        return parsed;
      }
      const commandFile = detectShebang(parsed);
      const needsShell = !isExecutableRegExp.test(commandFile);
      if (parsed.options.forceShell || needsShell) {
        const needsDoubleEscapeMetaChars = isCmdShimRegExp.test(commandFile);
        parsed.command = path218.normalize(parsed.command);
        parsed.command = escape.command(parsed.command);
        parsed.args = parsed.args.map((arg) => escape.argument(arg, needsDoubleEscapeMetaChars));
        const shellCommand = [parsed.command].concat(parsed.args).join(" ");
        parsed.args = ["/d", "/s", "/c", `"${shellCommand}"`];
        parsed.command = process.env.comspec || "cmd.exe";
        parsed.options.windowsVerbatimArguments = true;
      }
      return parsed;
    }
    function parse7(command, args, options) {
      if (args && !Array.isArray(args)) {
        options = args;
        args = null;
      }
      args = args ? args.slice(0) : [];
      options = Object.assign({}, options);
      const parsed = {
        command,
        args,
        options,
        file: void 0,
        original: {
          command,
          args
        }
      };
      return options.shell ? parsed : parseNonShell(parsed);
    }
    module2.exports = parse7;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/cross-spawn/7.0.6/a0a7b60251bf98d42302e5b6167c5496ce00c1a1aae367d1dcd3d4eca3396349/node_modules/cross-spawn/lib/enoent.js
var require_enoent = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/cross-spawn/7.0.6/a0a7b60251bf98d42302e5b6167c5496ce00c1a1aae367d1dcd3d4eca3396349/node_modules/cross-spawn/lib/enoent.js"(exports2, module2) {
    "use strict";
    var isWin2 = process.platform === "win32";
    function notFoundError(original, syscall) {
      return Object.assign(new Error(`${syscall} ${original.command} ENOENT`), {
        code: "ENOENT",
        errno: "ENOENT",
        syscall: `${syscall} ${original.command}`,
        path: original.command,
        spawnargs: original.args
      });
    }
    function hookChildProcess(cp, parsed) {
      if (!isWin2) {
        return;
      }
      const originalEmit = cp.emit;
      cp.emit = function(name, arg1) {
        if (name === "exit") {
          const err = verifyENOENT(arg1, parsed);
          if (err) {
            return originalEmit.call(cp, "error", err);
          }
        }
        return originalEmit.apply(cp, arguments);
      };
    }
    function verifyENOENT(status, parsed) {
      if (isWin2 && status === 1 && !parsed.file) {
        return notFoundError(parsed.original, "spawn");
      }
      return null;
    }
    function verifyENOENTSync(status, parsed) {
      if (isWin2 && status === 1 && !parsed.file) {
        return notFoundError(parsed.original, "spawnSync");
      }
      return null;
    }
    module2.exports = {
      hookChildProcess,
      verifyENOENT,
      verifyENOENTSync,
      notFoundError
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/cross-spawn/7.0.6/a0a7b60251bf98d42302e5b6167c5496ce00c1a1aae367d1dcd3d4eca3396349/node_modules/cross-spawn/index.js
var require_cross_spawn = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/cross-spawn/7.0.6/a0a7b60251bf98d42302e5b6167c5496ce00c1a1aae367d1dcd3d4eca3396349/node_modules/cross-spawn/index.js"(exports2, module2) {
    "use strict";
    var cp = __require("child_process");
    var parse7 = require_parse3();
    var enoent = require_enoent();
    function spawn5(command, args, options) {
      const parsed = parse7(command, args, options);
      const spawned = cp.spawn(parsed.command, parsed.args, parsed.options);
      enoent.hookChildProcess(spawned, parsed);
      return spawned;
    }
    function spawnSync4(command, args, options) {
      const parsed = parse7(command, args, options);
      const result2 = cp.spawnSync(parsed.command, parsed.args, parsed.options);
      result2.error = result2.error || enoent.verifyENOENTSync(result2.status, parsed);
      return result2;
    }
    module2.exports = spawn5;
    module2.exports.spawn = spawn5;
    module2.exports.sync = spawnSync4;
    module2.exports._parse = parse7;
    module2.exports._enoent = enoent;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/path-key/4.0.0/1404f8f0be7be7dbe9df524ce9ad1a5827e91e447b2f4127012f86d7e412f1de/node_modules/path-key/index.js
function pathKey(options = {}) {
  const {
    env: env3 = process.env,
    platform: platform3 = process.platform
  } = options;
  if (platform3 !== "win32") {
    return "PATH";
  }
  return Object.keys(env3).reverse().find((key) => key.toUpperCase() === "PATH") || "Path";
}
var init_path_key = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/path-key/4.0.0/1404f8f0be7be7dbe9df524ce9ad1a5827e91e447b2f4127012f86d7e412f1de/node_modules/path-key/index.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/unicorn-magic/0.3.0/7723e5597aaa56432be35a34343b084f1ca3338f96fd0e6575ae9771c7cf36ff/node_modules/unicorn-magic/default.js
var init_default3 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/unicorn-magic/0.3.0/7723e5597aaa56432be35a34343b084f1ca3338f96fd0e6575ae9771c7cf36ff/node_modules/unicorn-magic/default.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/unicorn-magic/0.3.0/7723e5597aaa56432be35a34343b084f1ca3338f96fd0e6575ae9771c7cf36ff/node_modules/unicorn-magic/node.js
import { promisify as promisify3 } from "node:util";
import { execFile as execFileCallback, execFileSync as execFileSyncOriginal } from "node:child_process";
import path13 from "node:path";
import { fileURLToPath as fileURLToPath2 } from "node:url";
function toPath(urlOrPath) {
  return urlOrPath instanceof URL ? fileURLToPath2(urlOrPath) : urlOrPath;
}
function traversePathUp(startPath) {
  return {
    *[Symbol.iterator]() {
      let currentPath = path13.resolve(toPath(startPath));
      let previousPath;
      while (previousPath !== currentPath) {
        yield currentPath;
        previousPath = currentPath;
        currentPath = path13.resolve(currentPath, "..");
      }
    }
  };
}
var execFileOriginal, TEN_MEGABYTES_IN_BYTES;
var init_node = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/unicorn-magic/0.3.0/7723e5597aaa56432be35a34343b084f1ca3338f96fd0e6575ae9771c7cf36ff/node_modules/unicorn-magic/node.js"() {
    init_default3();
    execFileOriginal = promisify3(execFileCallback);
    TEN_MEGABYTES_IN_BYTES = 10 * 1024 * 1024;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/npm-run-path/6.0.0/d82ed2bd2c1b2d17548e086d4d7bbbbafd0b5ee835a8f76dbc85e653fcfb450b/node_modules/npm-run-path/index.js
import process4 from "node:process";
import path14 from "node:path";
var npmRunPath, applyPreferLocal, applyExecPath, npmRunPathEnv;
var init_npm_run_path = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/npm-run-path/6.0.0/d82ed2bd2c1b2d17548e086d4d7bbbbafd0b5ee835a8f76dbc85e653fcfb450b/node_modules/npm-run-path/index.js"() {
    init_path_key();
    init_node();
    npmRunPath = ({
      cwd = process4.cwd(),
      path: pathOption = process4.env[pathKey()],
      preferLocal = true,
      execPath: execPath2 = process4.execPath,
      addExecPath = true
    } = {}) => {
      const cwdPath = path14.resolve(toPath(cwd));
      const result2 = [];
      const pathParts = pathOption.split(path14.delimiter);
      if (preferLocal) {
        applyPreferLocal(result2, pathParts, cwdPath);
      }
      if (addExecPath) {
        applyExecPath(result2, pathParts, execPath2, cwdPath);
      }
      return pathOption === "" || pathOption === path14.delimiter ? `${result2.join(path14.delimiter)}${pathOption}` : [...result2, pathOption].join(path14.delimiter);
    };
    applyPreferLocal = (result2, pathParts, cwdPath) => {
      for (const directory of traversePathUp(cwdPath)) {
        const pathPart = path14.join(directory, "node_modules/.bin");
        if (!pathParts.includes(pathPart)) {
          result2.push(pathPart);
        }
      }
    };
    applyExecPath = (result2, pathParts, execPath2, cwdPath) => {
      const pathPart = path14.resolve(cwdPath, toPath(execPath2), "..");
      if (!pathParts.includes(pathPart)) {
        result2.push(pathPart);
      }
    };
    npmRunPathEnv = ({ env: env3 = process4.env, ...options } = {}) => {
      env3 = { ...env3 };
      const pathName = pathKey({ env: env3 });
      options.path = env3[pathName];
      env3[pathName] = npmRunPath(options);
      return env3;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/return/final-error.js
var getFinalError, DiscardedError, setErrorName, isExecaError, execaErrorSymbol, isErrorInstance, ExecaError, ExecaSyncError;
var init_final_error = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/return/final-error.js"() {
    getFinalError = (originalError, message, isSync) => {
      const ErrorClass = isSync ? ExecaSyncError : ExecaError;
      const options = originalError instanceof DiscardedError ? {} : { cause: originalError };
      return new ErrorClass(message, options);
    };
    DiscardedError = class extends Error {
    };
    setErrorName = (ErrorClass, value) => {
      Object.defineProperty(ErrorClass.prototype, "name", {
        value,
        writable: true,
        enumerable: false,
        configurable: true
      });
      Object.defineProperty(ErrorClass.prototype, execaErrorSymbol, {
        value: true,
        writable: false,
        enumerable: false,
        configurable: false
      });
    };
    isExecaError = (error) => isErrorInstance(error) && execaErrorSymbol in error;
    execaErrorSymbol = /* @__PURE__ */ Symbol("isExecaError");
    isErrorInstance = (value) => Object.prototype.toString.call(value) === "[object Error]";
    ExecaError = class extends Error {
    };
    setErrorName(ExecaError, ExecaError.name);
    ExecaSyncError = class extends Error {
    };
    setErrorName(ExecaSyncError, ExecaSyncError.name);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/human-signals/8.0.1/8f862e62f3a4ab63fc57d39d6ece7007dbc7f811c35a31e21b62baa706efba89/node_modules/human-signals/build/src/realtime.js
var getRealtimeSignals, getRealtimeSignal, SIGRTMIN, SIGRTMAX;
var init_realtime = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/human-signals/8.0.1/8f862e62f3a4ab63fc57d39d6ece7007dbc7f811c35a31e21b62baa706efba89/node_modules/human-signals/build/src/realtime.js"() {
    getRealtimeSignals = () => {
      const length = SIGRTMAX - SIGRTMIN + 1;
      return Array.from({ length }, getRealtimeSignal);
    };
    getRealtimeSignal = (value, index) => ({
      name: `SIGRT${index + 1}`,
      number: SIGRTMIN + index,
      action: "terminate",
      description: "Application-specific signal (realtime)",
      standard: "posix"
    });
    SIGRTMIN = 34;
    SIGRTMAX = 64;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/human-signals/8.0.1/8f862e62f3a4ab63fc57d39d6ece7007dbc7f811c35a31e21b62baa706efba89/node_modules/human-signals/build/src/core.js
var SIGNALS;
var init_core = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/human-signals/8.0.1/8f862e62f3a4ab63fc57d39d6ece7007dbc7f811c35a31e21b62baa706efba89/node_modules/human-signals/build/src/core.js"() {
    SIGNALS = [
      {
        name: "SIGHUP",
        number: 1,
        action: "terminate",
        description: "Terminal closed",
        standard: "posix"
      },
      {
        name: "SIGINT",
        number: 2,
        action: "terminate",
        description: "User interruption with CTRL-C",
        standard: "ansi"
      },
      {
        name: "SIGQUIT",
        number: 3,
        action: "core",
        description: "User interruption with CTRL-\\",
        standard: "posix"
      },
      {
        name: "SIGILL",
        number: 4,
        action: "core",
        description: "Invalid machine instruction",
        standard: "ansi"
      },
      {
        name: "SIGTRAP",
        number: 5,
        action: "core",
        description: "Debugger breakpoint",
        standard: "posix"
      },
      {
        name: "SIGABRT",
        number: 6,
        action: "core",
        description: "Aborted",
        standard: "ansi"
      },
      {
        name: "SIGIOT",
        number: 6,
        action: "core",
        description: "Aborted",
        standard: "bsd"
      },
      {
        name: "SIGBUS",
        number: 7,
        action: "core",
        description: "Bus error due to misaligned, non-existing address or paging error",
        standard: "bsd"
      },
      {
        name: "SIGEMT",
        number: 7,
        action: "terminate",
        description: "Command should be emulated but is not implemented",
        standard: "other"
      },
      {
        name: "SIGFPE",
        number: 8,
        action: "core",
        description: "Floating point arithmetic error",
        standard: "ansi"
      },
      {
        name: "SIGKILL",
        number: 9,
        action: "terminate",
        description: "Forced termination",
        standard: "posix",
        forced: true
      },
      {
        name: "SIGUSR1",
        number: 10,
        action: "terminate",
        description: "Application-specific signal",
        standard: "posix"
      },
      {
        name: "SIGSEGV",
        number: 11,
        action: "core",
        description: "Segmentation fault",
        standard: "ansi"
      },
      {
        name: "SIGUSR2",
        number: 12,
        action: "terminate",
        description: "Application-specific signal",
        standard: "posix"
      },
      {
        name: "SIGPIPE",
        number: 13,
        action: "terminate",
        description: "Broken pipe or socket",
        standard: "posix"
      },
      {
        name: "SIGALRM",
        number: 14,
        action: "terminate",
        description: "Timeout or timer",
        standard: "posix"
      },
      {
        name: "SIGTERM",
        number: 15,
        action: "terminate",
        description: "Termination",
        standard: "ansi"
      },
      {
        name: "SIGSTKFLT",
        number: 16,
        action: "terminate",
        description: "Stack is empty or overflowed",
        standard: "other"
      },
      {
        name: "SIGCHLD",
        number: 17,
        action: "ignore",
        description: "Child process terminated, paused or unpaused",
        standard: "posix"
      },
      {
        name: "SIGCLD",
        number: 17,
        action: "ignore",
        description: "Child process terminated, paused or unpaused",
        standard: "other"
      },
      {
        name: "SIGCONT",
        number: 18,
        action: "unpause",
        description: "Unpaused",
        standard: "posix",
        forced: true
      },
      {
        name: "SIGSTOP",
        number: 19,
        action: "pause",
        description: "Paused",
        standard: "posix",
        forced: true
      },
      {
        name: "SIGTSTP",
        number: 20,
        action: "pause",
        description: 'Paused using CTRL-Z or "suspend"',
        standard: "posix"
      },
      {
        name: "SIGTTIN",
        number: 21,
        action: "pause",
        description: "Background process cannot read terminal input",
        standard: "posix"
      },
      {
        name: "SIGBREAK",
        number: 21,
        action: "terminate",
        description: "User interruption with CTRL-BREAK",
        standard: "other"
      },
      {
        name: "SIGTTOU",
        number: 22,
        action: "pause",
        description: "Background process cannot write to terminal output",
        standard: "posix"
      },
      {
        name: "SIGURG",
        number: 23,
        action: "ignore",
        description: "Socket received out-of-band data",
        standard: "bsd"
      },
      {
        name: "SIGXCPU",
        number: 24,
        action: "core",
        description: "Process timed out",
        standard: "bsd"
      },
      {
        name: "SIGXFSZ",
        number: 25,
        action: "core",
        description: "File too big",
        standard: "bsd"
      },
      {
        name: "SIGVTALRM",
        number: 26,
        action: "terminate",
        description: "Timeout or timer",
        standard: "bsd"
      },
      {
        name: "SIGPROF",
        number: 27,
        action: "terminate",
        description: "Timeout or timer",
        standard: "bsd"
      },
      {
        name: "SIGWINCH",
        number: 28,
        action: "ignore",
        description: "Terminal window size changed",
        standard: "bsd"
      },
      {
        name: "SIGIO",
        number: 29,
        action: "terminate",
        description: "I/O is available",
        standard: "other"
      },
      {
        name: "SIGPOLL",
        number: 29,
        action: "terminate",
        description: "Watched event",
        standard: "other"
      },
      {
        name: "SIGINFO",
        number: 29,
        action: "ignore",
        description: "Request for process information",
        standard: "other"
      },
      {
        name: "SIGPWR",
        number: 30,
        action: "terminate",
        description: "Device running out of power",
        standard: "systemv"
      },
      {
        name: "SIGSYS",
        number: 31,
        action: "core",
        description: "Invalid system call",
        standard: "other"
      },
      {
        name: "SIGUNUSED",
        number: 31,
        action: "terminate",
        description: "Invalid system call",
        standard: "other"
      }
    ];
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/human-signals/8.0.1/8f862e62f3a4ab63fc57d39d6ece7007dbc7f811c35a31e21b62baa706efba89/node_modules/human-signals/build/src/signals.js
import { constants } from "node:os";
var getSignals, normalizeSignal;
var init_signals = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/human-signals/8.0.1/8f862e62f3a4ab63fc57d39d6ece7007dbc7f811c35a31e21b62baa706efba89/node_modules/human-signals/build/src/signals.js"() {
    init_core();
    init_realtime();
    getSignals = () => {
      const realtimeSignals = getRealtimeSignals();
      const signals2 = [...SIGNALS, ...realtimeSignals].map(normalizeSignal);
      return signals2;
    };
    normalizeSignal = ({
      name,
      number: defaultNumber,
      description,
      action,
      forced = false,
      standard
    }) => {
      const {
        signals: { [name]: constantSignal }
      } = constants;
      const supported = constantSignal !== void 0;
      const number = supported ? constantSignal : defaultNumber;
      return { name, number, description, supported, action, forced, standard };
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/human-signals/8.0.1/8f862e62f3a4ab63fc57d39d6ece7007dbc7f811c35a31e21b62baa706efba89/node_modules/human-signals/build/src/main.js
import { constants as constants2 } from "node:os";
var getSignalsByName, getSignalByName, signalsByName, getSignalsByNumber, getSignalByNumber, findSignalByNumber, signalsByNumber;
var init_main = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/human-signals/8.0.1/8f862e62f3a4ab63fc57d39d6ece7007dbc7f811c35a31e21b62baa706efba89/node_modules/human-signals/build/src/main.js"() {
    init_realtime();
    init_signals();
    getSignalsByName = () => {
      const signals2 = getSignals();
      return Object.fromEntries(signals2.map(getSignalByName));
    };
    getSignalByName = ({
      name,
      number,
      description,
      supported,
      action,
      forced,
      standard
    }) => [name, { name, number, description, supported, action, forced, standard }];
    signalsByName = getSignalsByName();
    getSignalsByNumber = () => {
      const signals2 = getSignals();
      const length = SIGRTMAX + 1;
      const signalsA = Array.from(
        { length },
        (value, number) => getSignalByNumber(number, signals2)
      );
      return Object.assign({}, ...signalsA);
    };
    getSignalByNumber = (number, signals2) => {
      const signal = findSignalByNumber(number, signals2);
      if (signal === void 0) {
        return {};
      }
      const { name, description, supported, action, forced, standard } = signal;
      return {
        [number]: {
          name,
          number,
          description,
          supported,
          action,
          forced,
          standard
        }
      };
    };
    findSignalByNumber = (number, signals2) => {
      const signal = signals2.find(({ name }) => constants2.signals[name] === number);
      if (signal !== void 0) {
        return signal;
      }
      return signals2.find((signalA) => signalA.number === number);
    };
    signalsByNumber = getSignalsByNumber();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/terminate/signal.js
import { constants as constants3 } from "node:os";
var normalizeKillSignal, normalizeSignalArgument, normalizeSignal2, normalizeSignalInteger, getSignalsIntegerToName, signalsIntegerToName, normalizeSignalName, getAvailableSignals, getAvailableSignalNames, getAvailableSignalIntegers, getSignalDescription;
var init_signal = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/terminate/signal.js"() {
    init_main();
    normalizeKillSignal = (killSignal) => {
      const optionName = "option `killSignal`";
      if (killSignal === 0) {
        throw new TypeError(`Invalid ${optionName}: 0 cannot be used.`);
      }
      return normalizeSignal2(killSignal, optionName);
    };
    normalizeSignalArgument = (signal) => signal === 0 ? signal : normalizeSignal2(signal, "`subprocess.kill()`'s argument");
    normalizeSignal2 = (signalNameOrInteger, optionName) => {
      if (Number.isInteger(signalNameOrInteger)) {
        return normalizeSignalInteger(signalNameOrInteger, optionName);
      }
      if (typeof signalNameOrInteger === "string") {
        return normalizeSignalName(signalNameOrInteger, optionName);
      }
      throw new TypeError(`Invalid ${optionName} ${String(signalNameOrInteger)}: it must be a string or an integer.
${getAvailableSignals()}`);
    };
    normalizeSignalInteger = (signalInteger, optionName) => {
      if (signalsIntegerToName.has(signalInteger)) {
        return signalsIntegerToName.get(signalInteger);
      }
      throw new TypeError(`Invalid ${optionName} ${signalInteger}: this signal integer does not exist.
${getAvailableSignals()}`);
    };
    getSignalsIntegerToName = () => new Map(Object.entries(constants3.signals).reverse().map(([signalName, signalInteger]) => [signalInteger, signalName]));
    signalsIntegerToName = getSignalsIntegerToName();
    normalizeSignalName = (signalName, optionName) => {
      if (signalName in constants3.signals) {
        return signalName;
      }
      if (signalName.toUpperCase() in constants3.signals) {
        throw new TypeError(`Invalid ${optionName} '${signalName}': please rename it to '${signalName.toUpperCase()}'.`);
      }
      throw new TypeError(`Invalid ${optionName} '${signalName}': this signal name does not exist.
${getAvailableSignals()}`);
    };
    getAvailableSignals = () => `Available signal names: ${getAvailableSignalNames()}.
Available signal numbers: ${getAvailableSignalIntegers()}.`;
    getAvailableSignalNames = () => Object.keys(constants3.signals).sort().map((signalName) => `'${signalName}'`).join(", ");
    getAvailableSignalIntegers = () => [...new Set(Object.values(constants3.signals).sort((signalInteger, signalIntegerTwo) => signalInteger - signalIntegerTwo))].join(", ");
    getSignalDescription = (signal) => signalsByName[signal].description;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/terminate/kill.js
import { setTimeout as setTimeout2 } from "node:timers/promises";
var normalizeForceKillAfterDelay, DEFAULT_FORCE_KILL_TIMEOUT, subprocessKill, parseKillArguments, emitKillError, setKillTimeout, killOnTimeout;
var init_kill = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/terminate/kill.js"() {
    init_final_error();
    init_signal();
    normalizeForceKillAfterDelay = (forceKillAfterDelay) => {
      if (forceKillAfterDelay === false) {
        return forceKillAfterDelay;
      }
      if (forceKillAfterDelay === true) {
        return DEFAULT_FORCE_KILL_TIMEOUT;
      }
      if (!Number.isFinite(forceKillAfterDelay) || forceKillAfterDelay < 0) {
        throw new TypeError(`Expected the \`forceKillAfterDelay\` option to be a non-negative integer, got \`${forceKillAfterDelay}\` (${typeof forceKillAfterDelay})`);
      }
      return forceKillAfterDelay;
    };
    DEFAULT_FORCE_KILL_TIMEOUT = 1e3 * 5;
    subprocessKill = ({ kill, options: { forceKillAfterDelay, killSignal }, onInternalError, context, controller }, signalOrError, errorArgument) => {
      const { signal, error } = parseKillArguments(signalOrError, errorArgument, killSignal);
      emitKillError(error, onInternalError);
      const killResult = kill(signal);
      setKillTimeout({
        kill,
        signal,
        forceKillAfterDelay,
        killSignal,
        killResult,
        context,
        controller
      });
      return killResult;
    };
    parseKillArguments = (signalOrError, errorArgument, killSignal) => {
      const [signal = killSignal, error] = isErrorInstance(signalOrError) ? [void 0, signalOrError] : [signalOrError, errorArgument];
      if (typeof signal !== "string" && !Number.isInteger(signal)) {
        throw new TypeError(`The first argument must be an error instance or a signal name string/integer: ${String(signal)}`);
      }
      if (error !== void 0 && !isErrorInstance(error)) {
        throw new TypeError(`The second argument is optional. If specified, it must be an error instance: ${error}`);
      }
      return { signal: normalizeSignalArgument(signal), error };
    };
    emitKillError = (error, onInternalError) => {
      if (error !== void 0) {
        onInternalError.reject(error);
      }
    };
    setKillTimeout = async ({ kill, signal, forceKillAfterDelay, killSignal, killResult, context, controller }) => {
      if (signal === killSignal && killResult) {
        killOnTimeout({
          kill,
          forceKillAfterDelay,
          context,
          controllerSignal: controller.signal
        });
      }
    };
    killOnTimeout = async ({ kill, forceKillAfterDelay, context, controllerSignal }) => {
      if (forceKillAfterDelay === false) {
        return;
      }
      try {
        await setTimeout2(forceKillAfterDelay, void 0, { signal: controllerSignal });
        if (kill("SIGKILL")) {
          context.isForcefullyTerminated ??= true;
        }
      } catch {
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/utils/abort-signal.js
import { once as once3 } from "node:events";
var onAbortedSignal;
var init_abort_signal = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/utils/abort-signal.js"() {
    onAbortedSignal = async (mainSignal, stopSignal) => {
      if (!mainSignal.aborted) {
        await once3(mainSignal, "abort", { signal: stopSignal });
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/terminate/cancel.js
var validateCancelSignal, throwOnCancel, terminateOnCancel;
var init_cancel = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/terminate/cancel.js"() {
    init_abort_signal();
    validateCancelSignal = ({ cancelSignal }) => {
      if (cancelSignal !== void 0 && Object.prototype.toString.call(cancelSignal) !== "[object AbortSignal]") {
        throw new Error(`The \`cancelSignal\` option must be an AbortSignal: ${String(cancelSignal)}`);
      }
    };
    throwOnCancel = ({ subprocess, cancelSignal, gracefulCancel, context, controller }) => cancelSignal === void 0 || gracefulCancel ? [] : [terminateOnCancel(subprocess, cancelSignal, context, controller)];
    terminateOnCancel = async (subprocess, cancelSignal, context, { signal }) => {
      await onAbortedSignal(cancelSignal, signal);
      context.terminationReason ??= "cancel";
      subprocess.kill();
      throw cancelSignal.reason;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/ipc/validation.js
var validateIpcMethod, validateIpcOption, validateConnection, throwOnEarlyDisconnect, throwOnStrictDeadlockError, getStrictResponseError, throwOnMissingStrict, throwOnStrictDisconnect, getAbortDisconnectError, throwOnMissingParent, handleEpipeError, handleSerializationError, isSerializationError, SERIALIZATION_ERROR_CODES, SERIALIZATION_ERROR_MESSAGES, getMethodName, getNamespaceName, getOtherProcessName, disconnect;
var init_validation = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/ipc/validation.js"() {
    validateIpcMethod = ({ methodName, isSubprocess, ipc, isConnected: isConnected2 }) => {
      validateIpcOption(methodName, isSubprocess, ipc);
      validateConnection(methodName, isSubprocess, isConnected2);
    };
    validateIpcOption = (methodName, isSubprocess, ipc) => {
      if (!ipc) {
        throw new Error(`${getMethodName(methodName, isSubprocess)} can only be used if the \`ipc\` option is \`true\`.`);
      }
    };
    validateConnection = (methodName, isSubprocess, isConnected2) => {
      if (!isConnected2) {
        throw new Error(`${getMethodName(methodName, isSubprocess)} cannot be used: the ${getOtherProcessName(isSubprocess)} has already exited or disconnected.`);
      }
    };
    throwOnEarlyDisconnect = (isSubprocess) => {
      throw new Error(`${getMethodName("getOneMessage", isSubprocess)} could not complete: the ${getOtherProcessName(isSubprocess)} exited or disconnected.`);
    };
    throwOnStrictDeadlockError = (isSubprocess) => {
      throw new Error(`${getMethodName("sendMessage", isSubprocess)} failed: the ${getOtherProcessName(isSubprocess)} is sending a message too, instead of listening to incoming messages.
This can be fixed by both sending a message and listening to incoming messages at the same time:

const [receivedMessage] = await Promise.all([
	${getMethodName("getOneMessage", isSubprocess)},
	${getMethodName("sendMessage", isSubprocess, "message, {strict: true}")},
]);`);
    };
    getStrictResponseError = (error, isSubprocess) => new Error(`${getMethodName("sendMessage", isSubprocess)} failed when sending an acknowledgment response to the ${getOtherProcessName(isSubprocess)}.`, { cause: error });
    throwOnMissingStrict = (isSubprocess) => {
      throw new Error(`${getMethodName("sendMessage", isSubprocess)} failed: the ${getOtherProcessName(isSubprocess)} is not listening to incoming messages.`);
    };
    throwOnStrictDisconnect = (isSubprocess) => {
      throw new Error(`${getMethodName("sendMessage", isSubprocess)} failed: the ${getOtherProcessName(isSubprocess)} exited without listening to incoming messages.`);
    };
    getAbortDisconnectError = () => new Error(`\`cancelSignal\` aborted: the ${getOtherProcessName(true)} disconnected.`);
    throwOnMissingParent = () => {
      throw new Error("`getCancelSignal()` cannot be used without setting the `cancelSignal` subprocess option.");
    };
    handleEpipeError = ({ error, methodName, isSubprocess }) => {
      if (error.code === "EPIPE") {
        throw new Error(`${getMethodName(methodName, isSubprocess)} cannot be used: the ${getOtherProcessName(isSubprocess)} is disconnecting.`, { cause: error });
      }
    };
    handleSerializationError = ({ error, methodName, isSubprocess, message }) => {
      if (isSerializationError(error)) {
        throw new Error(`${getMethodName(methodName, isSubprocess)}'s argument type is invalid: the message cannot be serialized: ${String(message)}.`, { cause: error });
      }
    };
    isSerializationError = ({ code, message }) => SERIALIZATION_ERROR_CODES.has(code) || SERIALIZATION_ERROR_MESSAGES.some((serializationErrorMessage) => message.includes(serializationErrorMessage));
    SERIALIZATION_ERROR_CODES = /* @__PURE__ */ new Set([
      // Message is `undefined`
      "ERR_MISSING_ARGS",
      // Message is a function, a bigint, a symbol
      "ERR_INVALID_ARG_TYPE"
    ]);
    SERIALIZATION_ERROR_MESSAGES = [
      // Message is a promise or a proxy, with `serialization: 'advanced'`
      "could not be cloned",
      // Message has cycles, with `serialization: 'json'`
      "circular structure",
      // Message has cycles inside toJSON(), with `serialization: 'json'`
      "call stack size exceeded"
    ];
    getMethodName = (methodName, isSubprocess, parameters = "") => methodName === "cancelSignal" ? "`cancelSignal`'s `controller.abort()`" : `${getNamespaceName(isSubprocess)}${methodName}(${parameters})`;
    getNamespaceName = (isSubprocess) => isSubprocess ? "" : "subprocess.";
    getOtherProcessName = (isSubprocess) => isSubprocess ? "parent process" : "subprocess";
    disconnect = (anyProcess) => {
      if (anyProcess.connected) {
        anyProcess.disconnect();
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/utils/deferred.js
var createDeferred;
var init_deferred = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/utils/deferred.js"() {
    createDeferred = () => {
      const methods = {};
      const promise2 = new Promise((resolve3, reject3) => {
        Object.assign(methods, { resolve: resolve3, reject: reject3 });
      });
      return Object.assign(promise2, methods);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/arguments/fd-options.js
var getToStream, getFromStream, SUBPROCESS_OPTIONS, getFdNumber, parseFdNumber, validateFdNumber, getInvalidStdioOptionMessage, getInvalidStdioOption, getUsedDescriptor, getOptionName, serializeOptionValue;
var init_fd_options = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/arguments/fd-options.js"() {
    init_specific();
    getToStream = (destination, to = "stdin") => {
      const isWritable = true;
      const { options, fileDescriptors } = SUBPROCESS_OPTIONS.get(destination);
      const fdNumber = getFdNumber(fileDescriptors, to, isWritable);
      const destinationStream = destination.stdio[fdNumber];
      if (destinationStream === null) {
        throw new TypeError(getInvalidStdioOptionMessage(fdNumber, to, options, isWritable));
      }
      return destinationStream;
    };
    getFromStream = (source, from5 = "stdout") => {
      const isWritable = false;
      const { options, fileDescriptors } = SUBPROCESS_OPTIONS.get(source);
      const fdNumber = getFdNumber(fileDescriptors, from5, isWritable);
      const sourceStream = fdNumber === "all" ? source.all : source.stdio[fdNumber];
      if (sourceStream === null || sourceStream === void 0) {
        throw new TypeError(getInvalidStdioOptionMessage(fdNumber, from5, options, isWritable));
      }
      return sourceStream;
    };
    SUBPROCESS_OPTIONS = /* @__PURE__ */ new WeakMap();
    getFdNumber = (fileDescriptors, fdName, isWritable) => {
      const fdNumber = parseFdNumber(fdName, isWritable);
      validateFdNumber(fdNumber, fdName, isWritable, fileDescriptors);
      return fdNumber;
    };
    parseFdNumber = (fdName, isWritable) => {
      const fdNumber = parseFd(fdName);
      if (fdNumber !== void 0) {
        return fdNumber;
      }
      const { validOptions, defaultValue } = isWritable ? { validOptions: '"stdin"', defaultValue: "stdin" } : { validOptions: '"stdout", "stderr", "all"', defaultValue: "stdout" };
      throw new TypeError(`"${getOptionName(isWritable)}" must not be "${fdName}".
It must be ${validOptions} or "fd3", "fd4" (and so on).
It is optional and defaults to "${defaultValue}".`);
    };
    validateFdNumber = (fdNumber, fdName, isWritable, fileDescriptors) => {
      const fileDescriptor = fileDescriptors[getUsedDescriptor(fdNumber)];
      if (fileDescriptor === void 0) {
        throw new TypeError(`"${getOptionName(isWritable)}" must not be ${fdName}. That file descriptor does not exist.
Please set the "stdio" option to ensure that file descriptor exists.`);
      }
      if (fileDescriptor.direction === "input" && !isWritable) {
        throw new TypeError(`"${getOptionName(isWritable)}" must not be ${fdName}. It must be a readable stream, not writable.`);
      }
      if (fileDescriptor.direction !== "input" && isWritable) {
        throw new TypeError(`"${getOptionName(isWritable)}" must not be ${fdName}. It must be a writable stream, not readable.`);
      }
    };
    getInvalidStdioOptionMessage = (fdNumber, fdName, options, isWritable) => {
      if (fdNumber === "all" && !options.all) {
        return `The "all" option must be true to use "from: 'all'".`;
      }
      const { optionName, optionValue } = getInvalidStdioOption(fdNumber, options);
      return `The "${optionName}: ${serializeOptionValue(optionValue)}" option is incompatible with using "${getOptionName(isWritable)}: ${serializeOptionValue(fdName)}".
Please set this option with "pipe" instead.`;
    };
    getInvalidStdioOption = (fdNumber, { stdin, stdout, stderr, stdio }) => {
      const usedDescriptor = getUsedDescriptor(fdNumber);
      if (usedDescriptor === 0 && stdin !== void 0) {
        return { optionName: "stdin", optionValue: stdin };
      }
      if (usedDescriptor === 1 && stdout !== void 0) {
        return { optionName: "stdout", optionValue: stdout };
      }
      if (usedDescriptor === 2 && stderr !== void 0) {
        return { optionName: "stderr", optionValue: stderr };
      }
      return { optionName: `stdio[${usedDescriptor}]`, optionValue: stdio[usedDescriptor] };
    };
    getUsedDescriptor = (fdNumber) => fdNumber === "all" ? 1 : fdNumber;
    getOptionName = (isWritable) => isWritable ? "to" : "from";
    serializeOptionValue = (value) => {
      if (typeof value === "string") {
        return `'${value}'`;
      }
      return typeof value === "number" ? `${value}` : "Stream";
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/utils/max-listeners.js
import { addAbortListener } from "node:events";
var incrementMaxListeners;
var init_max_listeners = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/utils/max-listeners.js"() {
    incrementMaxListeners = (eventEmitter, maxListenersIncrement, signal) => {
      const maxListeners = eventEmitter.getMaxListeners();
      if (maxListeners === 0 || maxListeners === Number.POSITIVE_INFINITY) {
        return;
      }
      eventEmitter.setMaxListeners(maxListeners + maxListenersIncrement);
      addAbortListener(signal, () => {
        eventEmitter.setMaxListeners(eventEmitter.getMaxListeners() - maxListenersIncrement);
      });
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/ipc/reference.js
var addReference, addReferenceCount, removeReference, removeReferenceCount, undoAddedReferences, redoAddedReferences;
var init_reference = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/ipc/reference.js"() {
    addReference = (channel, reference) => {
      if (reference) {
        addReferenceCount(channel);
      }
    };
    addReferenceCount = (channel) => {
      channel.refCounted();
    };
    removeReference = (channel, reference) => {
      if (reference) {
        removeReferenceCount(channel);
      }
    };
    removeReferenceCount = (channel) => {
      channel.unrefCounted();
    };
    undoAddedReferences = (channel, isSubprocess) => {
      if (isSubprocess) {
        removeReferenceCount(channel);
        removeReferenceCount(channel);
      }
    };
    redoAddedReferences = (channel, isSubprocess) => {
      if (isSubprocess) {
        addReferenceCount(channel);
        addReferenceCount(channel);
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/ipc/incoming.js
import { once as once4 } from "node:events";
import { scheduler } from "node:timers/promises";
var onMessage, onDisconnect, INCOMING_MESSAGES;
var init_incoming = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/ipc/incoming.js"() {
    init_outgoing();
    init_reference();
    init_strict();
    init_graceful();
    onMessage = async ({ anyProcess, channel, isSubprocess, ipcEmitter }, wrappedMessage) => {
      if (handleStrictResponse(wrappedMessage) || handleAbort(wrappedMessage)) {
        return;
      }
      if (!INCOMING_MESSAGES.has(anyProcess)) {
        INCOMING_MESSAGES.set(anyProcess, []);
      }
      const incomingMessages = INCOMING_MESSAGES.get(anyProcess);
      incomingMessages.push(wrappedMessage);
      if (incomingMessages.length > 1) {
        return;
      }
      while (incomingMessages.length > 0) {
        await waitForOutgoingMessages(anyProcess, ipcEmitter, wrappedMessage);
        await scheduler.yield();
        const message = await handleStrictRequest({
          wrappedMessage: incomingMessages[0],
          anyProcess,
          channel,
          isSubprocess,
          ipcEmitter
        });
        incomingMessages.shift();
        ipcEmitter.emit("message", message);
        ipcEmitter.emit("message:done");
      }
    };
    onDisconnect = async ({ anyProcess, channel, isSubprocess, ipcEmitter, boundOnMessage }) => {
      abortOnDisconnect();
      const incomingMessages = INCOMING_MESSAGES.get(anyProcess);
      while (incomingMessages?.length > 0) {
        await once4(ipcEmitter, "message:done");
      }
      anyProcess.removeListener("message", boundOnMessage);
      redoAddedReferences(channel, isSubprocess);
      ipcEmitter.connected = false;
      ipcEmitter.emit("disconnect");
    };
    INCOMING_MESSAGES = /* @__PURE__ */ new WeakMap();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/ipc/forward.js
import { EventEmitter } from "node:events";
var getIpcEmitter, IPC_EMITTERS, forwardEvents, isConnected;
var init_forward = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/ipc/forward.js"() {
    init_incoming();
    init_reference();
    getIpcEmitter = (anyProcess, channel, isSubprocess) => {
      if (IPC_EMITTERS.has(anyProcess)) {
        return IPC_EMITTERS.get(anyProcess);
      }
      const ipcEmitter = new EventEmitter();
      ipcEmitter.connected = true;
      IPC_EMITTERS.set(anyProcess, ipcEmitter);
      forwardEvents({
        ipcEmitter,
        anyProcess,
        channel,
        isSubprocess
      });
      return ipcEmitter;
    };
    IPC_EMITTERS = /* @__PURE__ */ new WeakMap();
    forwardEvents = ({ ipcEmitter, anyProcess, channel, isSubprocess }) => {
      const boundOnMessage = onMessage.bind(void 0, {
        anyProcess,
        channel,
        isSubprocess,
        ipcEmitter
      });
      anyProcess.on("message", boundOnMessage);
      anyProcess.once("disconnect", onDisconnect.bind(void 0, {
        anyProcess,
        channel,
        isSubprocess,
        ipcEmitter,
        boundOnMessage
      }));
      undoAddedReferences(channel, isSubprocess);
    };
    isConnected = (anyProcess) => {
      const ipcEmitter = IPC_EMITTERS.get(anyProcess);
      return ipcEmitter === void 0 ? anyProcess.channel !== null : ipcEmitter.connected;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/ipc/strict.js
import { once as once5 } from "node:events";
var handleSendStrict, count, validateStrictDeadlock, handleStrictRequest, handleStrictResponse, waitForStrictResponse, STRICT_RESPONSES, throwOnDisconnect, REQUEST_TYPE, RESPONSE_TYPE;
var init_strict = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/ipc/strict.js"() {
    init_deferred();
    init_max_listeners();
    init_send();
    init_validation();
    init_forward();
    init_outgoing();
    handleSendStrict = ({ anyProcess, channel, isSubprocess, message, strict }) => {
      if (!strict) {
        return message;
      }
      const ipcEmitter = getIpcEmitter(anyProcess, channel, isSubprocess);
      const hasListeners = hasMessageListeners(anyProcess, ipcEmitter);
      return {
        id: count++,
        type: REQUEST_TYPE,
        message,
        hasListeners
      };
    };
    count = 0n;
    validateStrictDeadlock = (outgoingMessages, wrappedMessage) => {
      if (wrappedMessage?.type !== REQUEST_TYPE || wrappedMessage.hasListeners) {
        return;
      }
      for (const { id } of outgoingMessages) {
        if (id !== void 0) {
          STRICT_RESPONSES[id].resolve({ isDeadlock: true, hasListeners: false });
        }
      }
    };
    handleStrictRequest = async ({ wrappedMessage, anyProcess, channel, isSubprocess, ipcEmitter }) => {
      if (wrappedMessage?.type !== REQUEST_TYPE || !anyProcess.connected) {
        return wrappedMessage;
      }
      const { id, message } = wrappedMessage;
      const response = { id, type: RESPONSE_TYPE, message: hasMessageListeners(anyProcess, ipcEmitter) };
      try {
        await sendMessage({
          anyProcess,
          channel,
          isSubprocess,
          ipc: true
        }, response);
      } catch (error) {
        ipcEmitter.emit("strict:error", error);
      }
      return message;
    };
    handleStrictResponse = (wrappedMessage) => {
      if (wrappedMessage?.type !== RESPONSE_TYPE) {
        return false;
      }
      const { id, message: hasListeners } = wrappedMessage;
      STRICT_RESPONSES[id]?.resolve({ isDeadlock: false, hasListeners });
      return true;
    };
    waitForStrictResponse = async (wrappedMessage, anyProcess, isSubprocess) => {
      if (wrappedMessage?.type !== REQUEST_TYPE) {
        return;
      }
      const deferred = createDeferred();
      STRICT_RESPONSES[wrappedMessage.id] = deferred;
      const controller = new AbortController();
      try {
        const { isDeadlock, hasListeners } = await Promise.race([
          deferred,
          throwOnDisconnect(anyProcess, isSubprocess, controller)
        ]);
        if (isDeadlock) {
          throwOnStrictDeadlockError(isSubprocess);
        }
        if (!hasListeners) {
          throwOnMissingStrict(isSubprocess);
        }
      } finally {
        controller.abort();
        delete STRICT_RESPONSES[wrappedMessage.id];
      }
    };
    STRICT_RESPONSES = {};
    throwOnDisconnect = async (anyProcess, isSubprocess, { signal }) => {
      incrementMaxListeners(anyProcess, 1, signal);
      await once5(anyProcess, "disconnect", { signal });
      throwOnStrictDisconnect(isSubprocess);
    };
    REQUEST_TYPE = "execa:ipc:request";
    RESPONSE_TYPE = "execa:ipc:response";
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/ipc/outgoing.js
var startSendMessage, endSendMessage, waitForOutgoingMessages, OUTGOING_MESSAGES, hasMessageListeners, getMinListenerCount;
var init_outgoing = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/ipc/outgoing.js"() {
    init_deferred();
    init_specific();
    init_fd_options();
    init_strict();
    startSendMessage = (anyProcess, wrappedMessage, strict) => {
      if (!OUTGOING_MESSAGES.has(anyProcess)) {
        OUTGOING_MESSAGES.set(anyProcess, /* @__PURE__ */ new Set());
      }
      const outgoingMessages = OUTGOING_MESSAGES.get(anyProcess);
      const onMessageSent = createDeferred();
      const id = strict ? wrappedMessage.id : void 0;
      const outgoingMessage = { onMessageSent, id };
      outgoingMessages.add(outgoingMessage);
      return { outgoingMessages, outgoingMessage };
    };
    endSendMessage = ({ outgoingMessages, outgoingMessage }) => {
      outgoingMessages.delete(outgoingMessage);
      outgoingMessage.onMessageSent.resolve();
    };
    waitForOutgoingMessages = async (anyProcess, ipcEmitter, wrappedMessage) => {
      while (!hasMessageListeners(anyProcess, ipcEmitter) && OUTGOING_MESSAGES.get(anyProcess)?.size > 0) {
        const outgoingMessages = [...OUTGOING_MESSAGES.get(anyProcess)];
        validateStrictDeadlock(outgoingMessages, wrappedMessage);
        await Promise.all(outgoingMessages.map(({ onMessageSent }) => onMessageSent));
      }
    };
    OUTGOING_MESSAGES = /* @__PURE__ */ new WeakMap();
    hasMessageListeners = (anyProcess, ipcEmitter) => ipcEmitter.listenerCount("message") > getMinListenerCount(anyProcess);
    getMinListenerCount = (anyProcess) => SUBPROCESS_OPTIONS.has(anyProcess) && !getFdSpecificValue(SUBPROCESS_OPTIONS.get(anyProcess).options.buffer, "ipc") ? 1 : 0;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/ipc/send.js
import { promisify as promisify4 } from "node:util";
var sendMessage, sendMessageAsync, sendOneMessage, getSendMethod, PROCESS_SEND_METHODS;
var init_send = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/ipc/send.js"() {
    init_validation();
    init_outgoing();
    init_strict();
    sendMessage = ({ anyProcess, channel, isSubprocess, ipc }, message, { strict = false } = {}) => {
      const methodName = "sendMessage";
      validateIpcMethod({
        methodName,
        isSubprocess,
        ipc,
        isConnected: anyProcess.connected
      });
      return sendMessageAsync({
        anyProcess,
        channel,
        methodName,
        isSubprocess,
        message,
        strict
      });
    };
    sendMessageAsync = async ({ anyProcess, channel, methodName, isSubprocess, message, strict }) => {
      const wrappedMessage = handleSendStrict({
        anyProcess,
        channel,
        isSubprocess,
        message,
        strict
      });
      const outgoingMessagesState = startSendMessage(anyProcess, wrappedMessage, strict);
      try {
        await sendOneMessage({
          anyProcess,
          methodName,
          isSubprocess,
          wrappedMessage,
          message
        });
      } catch (error) {
        disconnect(anyProcess);
        throw error;
      } finally {
        endSendMessage(outgoingMessagesState);
      }
    };
    sendOneMessage = async ({ anyProcess, methodName, isSubprocess, wrappedMessage, message }) => {
      const sendMethod = getSendMethod(anyProcess);
      try {
        await Promise.all([
          waitForStrictResponse(wrappedMessage, anyProcess, isSubprocess),
          sendMethod(wrappedMessage)
        ]);
      } catch (error) {
        handleEpipeError({ error, methodName, isSubprocess });
        handleSerializationError({
          error,
          methodName,
          isSubprocess,
          message
        });
        throw error;
      }
    };
    getSendMethod = (anyProcess) => {
      if (PROCESS_SEND_METHODS.has(anyProcess)) {
        return PROCESS_SEND_METHODS.get(anyProcess);
      }
      const sendMethod = promisify4(anyProcess.send.bind(anyProcess));
      PROCESS_SEND_METHODS.set(anyProcess, sendMethod);
      return sendMethod;
    };
    PROCESS_SEND_METHODS = /* @__PURE__ */ new WeakMap();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/ipc/graceful.js
import { scheduler as scheduler2 } from "node:timers/promises";
var sendAbort, getCancelSignal, startIpc, cancelListening, handleAbort, GRACEFUL_CANCEL_TYPE, abortOnDisconnect, cancelController;
var init_graceful = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/ipc/graceful.js"() {
    init_send();
    init_forward();
    init_validation();
    sendAbort = (subprocess, message) => {
      const methodName = "cancelSignal";
      validateConnection(methodName, false, subprocess.connected);
      return sendOneMessage({
        anyProcess: subprocess,
        methodName,
        isSubprocess: false,
        wrappedMessage: { type: GRACEFUL_CANCEL_TYPE, message },
        message
      });
    };
    getCancelSignal = async ({ anyProcess, channel, isSubprocess, ipc }) => {
      await startIpc({
        anyProcess,
        channel,
        isSubprocess,
        ipc
      });
      return cancelController.signal;
    };
    startIpc = async ({ anyProcess, channel, isSubprocess, ipc }) => {
      if (cancelListening) {
        return;
      }
      cancelListening = true;
      if (!ipc) {
        throwOnMissingParent();
        return;
      }
      if (channel === null) {
        abortOnDisconnect();
        return;
      }
      getIpcEmitter(anyProcess, channel, isSubprocess);
      await scheduler2.yield();
    };
    cancelListening = false;
    handleAbort = (wrappedMessage) => {
      if (wrappedMessage?.type !== GRACEFUL_CANCEL_TYPE) {
        return false;
      }
      cancelController.abort(wrappedMessage.message);
      return true;
    };
    GRACEFUL_CANCEL_TYPE = "execa:ipc:cancel";
    abortOnDisconnect = () => {
      cancelController.abort(getAbortDisconnectError());
    };
    cancelController = new AbortController();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/terminate/graceful.js
var validateGracefulCancel, throwOnGracefulCancel, sendOnAbort, getReason;
var init_graceful2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/terminate/graceful.js"() {
    init_abort_signal();
    init_graceful();
    init_kill();
    validateGracefulCancel = ({ gracefulCancel, cancelSignal, ipc, serialization }) => {
      if (!gracefulCancel) {
        return;
      }
      if (cancelSignal === void 0) {
        throw new Error("The `cancelSignal` option must be defined when setting the `gracefulCancel` option.");
      }
      if (!ipc) {
        throw new Error("The `ipc` option cannot be false when setting the `gracefulCancel` option.");
      }
      if (serialization === "json") {
        throw new Error("The `serialization` option cannot be 'json' when setting the `gracefulCancel` option.");
      }
    };
    throwOnGracefulCancel = ({
      subprocess,
      cancelSignal,
      gracefulCancel,
      forceKillAfterDelay,
      context,
      controller
    }) => gracefulCancel ? [sendOnAbort({
      subprocess,
      cancelSignal,
      forceKillAfterDelay,
      context,
      controller
    })] : [];
    sendOnAbort = async ({ subprocess, cancelSignal, forceKillAfterDelay, context, controller: { signal } }) => {
      await onAbortedSignal(cancelSignal, signal);
      const reason = getReason(cancelSignal);
      await sendAbort(subprocess, reason);
      killOnTimeout({
        kill: subprocess.kill,
        forceKillAfterDelay,
        context,
        controllerSignal: signal
      });
      context.terminationReason ??= "gracefulCancel";
      throw cancelSignal.reason;
    };
    getReason = ({ reason }) => {
      if (!(reason instanceof DOMException)) {
        return reason;
      }
      const error = new Error(reason.message);
      Object.defineProperty(error, "stack", {
        value: reason.stack,
        enumerable: false,
        configurable: true,
        writable: true
      });
      return error;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/terminate/timeout.js
import { setTimeout as setTimeout3 } from "node:timers/promises";
var validateTimeout, throwOnTimeout, killAfterTimeout;
var init_timeout = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/terminate/timeout.js"() {
    init_final_error();
    validateTimeout = ({ timeout }) => {
      if (timeout !== void 0 && (!Number.isFinite(timeout) || timeout < 0)) {
        throw new TypeError(`Expected the \`timeout\` option to be a non-negative integer, got \`${timeout}\` (${typeof timeout})`);
      }
    };
    throwOnTimeout = (subprocess, timeout, context, controller) => timeout === 0 || timeout === void 0 ? [] : [killAfterTimeout(subprocess, timeout, context, controller)];
    killAfterTimeout = async (subprocess, timeout, context, { signal }) => {
      await setTimeout3(timeout, void 0, { signal });
      context.terminationReason ??= "timeout";
      subprocess.kill();
      throw new DiscardedError();
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/methods/node.js
import { execPath, execArgv } from "node:process";
import path15 from "node:path";
var mapNode, handleNodeOption;
var init_node2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/methods/node.js"() {
    init_file_url();
    mapNode = ({ options }) => {
      if (options.node === false) {
        throw new TypeError('The "node" option cannot be false with `execaNode()`.');
      }
      return { options: { ...options, node: true } };
    };
    handleNodeOption = (file, commandArguments, {
      node: shouldHandleNode = false,
      nodePath = execPath,
      nodeOptions = execArgv.filter((nodeOption) => !nodeOption.startsWith("--inspect")),
      cwd,
      execPath: formerNodePath,
      ...options
    }) => {
      if (formerNodePath !== void 0) {
        throw new TypeError('The "execPath" option has been removed. Please use the "nodePath" option instead.');
      }
      const normalizedNodePath = safeNormalizeFileUrl(nodePath, 'The "nodePath" option');
      const resolvedNodePath = path15.resolve(cwd, normalizedNodePath);
      const newOptions = {
        ...options,
        nodePath: resolvedNodePath,
        node: shouldHandleNode,
        cwd
      };
      if (!shouldHandleNode) {
        return [file, commandArguments, newOptions];
      }
      if (path15.basename(file, ".exe") === "node") {
        throw new TypeError('When the "node" option is true, the first argument does not need to be "node".');
      }
      return [
        resolvedNodePath,
        [...nodeOptions, file, ...commandArguments],
        { ipc: true, ...newOptions, shell: false }
      ];
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/ipc/ipc-input.js
import { serialize } from "node:v8";
var validateIpcInputOption, validateAdvancedInput, validateJsonInput, validateIpcInput, sendIpcInput;
var init_ipc_input = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/ipc/ipc-input.js"() {
    validateIpcInputOption = ({ ipcInput, ipc, serialization }) => {
      if (ipcInput === void 0) {
        return;
      }
      if (!ipc) {
        throw new Error("The `ipcInput` option cannot be set unless the `ipc` option is `true`.");
      }
      validateIpcInput[serialization](ipcInput);
    };
    validateAdvancedInput = (ipcInput) => {
      try {
        serialize(ipcInput);
      } catch (error) {
        throw new Error("The `ipcInput` option is not serializable with a structured clone.", { cause: error });
      }
    };
    validateJsonInput = (ipcInput) => {
      try {
        JSON.stringify(ipcInput);
      } catch (error) {
        throw new Error("The `ipcInput` option is not serializable with JSON.", { cause: error });
      }
    };
    validateIpcInput = {
      advanced: validateAdvancedInput,
      json: validateJsonInput
    };
    sendIpcInput = async (subprocess, ipcInput) => {
      if (ipcInput === void 0) {
        return;
      }
      await subprocess.sendMessage(ipcInput);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/arguments/encoding-option.js
var validateEncoding, TEXT_ENCODINGS, BINARY_ENCODINGS, ENCODINGS, getCorrectEncoding, ENCODING_ALIASES, serializeEncoding;
var init_encoding_option = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/arguments/encoding-option.js"() {
    validateEncoding = ({ encoding }) => {
      if (ENCODINGS.has(encoding)) {
        return;
      }
      const correctEncoding = getCorrectEncoding(encoding);
      if (correctEncoding !== void 0) {
        throw new TypeError(`Invalid option \`encoding: ${serializeEncoding(encoding)}\`.
Please rename it to ${serializeEncoding(correctEncoding)}.`);
      }
      const correctEncodings = [...ENCODINGS].map((correctEncoding2) => serializeEncoding(correctEncoding2)).join(", ");
      throw new TypeError(`Invalid option \`encoding: ${serializeEncoding(encoding)}\`.
Please rename it to one of: ${correctEncodings}.`);
    };
    TEXT_ENCODINGS = /* @__PURE__ */ new Set(["utf8", "utf16le"]);
    BINARY_ENCODINGS = /* @__PURE__ */ new Set(["buffer", "hex", "base64", "base64url", "latin1", "ascii"]);
    ENCODINGS = /* @__PURE__ */ new Set([...TEXT_ENCODINGS, ...BINARY_ENCODINGS]);
    getCorrectEncoding = (encoding) => {
      if (encoding === null) {
        return "buffer";
      }
      if (typeof encoding !== "string") {
        return;
      }
      const lowerEncoding = encoding.toLowerCase();
      if (lowerEncoding in ENCODING_ALIASES) {
        return ENCODING_ALIASES[lowerEncoding];
      }
      if (ENCODINGS.has(lowerEncoding)) {
        return lowerEncoding;
      }
    };
    ENCODING_ALIASES = {
      // eslint-disable-next-line unicorn/text-encoding-identifier-case
      "utf-8": "utf8",
      "utf-16le": "utf16le",
      "ucs-2": "utf16le",
      ucs2: "utf16le",
      binary: "latin1"
    };
    serializeEncoding = (encoding) => typeof encoding === "string" ? `"${encoding}"` : String(encoding);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/arguments/cwd.js
import { statSync } from "node:fs";
import path16 from "node:path";
import process5 from "node:process";
var normalizeCwd, getDefaultCwd, fixCwdError;
var init_cwd = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/arguments/cwd.js"() {
    init_file_url();
    normalizeCwd = (cwd = getDefaultCwd()) => {
      const cwdString = safeNormalizeFileUrl(cwd, 'The "cwd" option');
      return path16.resolve(cwdString);
    };
    getDefaultCwd = () => {
      try {
        return process5.cwd();
      } catch (error) {
        error.message = `The current directory does not exist.
${error.message}`;
        throw error;
      }
    };
    fixCwdError = (originalMessage, cwd) => {
      if (cwd === getDefaultCwd()) {
        return originalMessage;
      }
      let cwdStat;
      try {
        cwdStat = statSync(cwd);
      } catch (error) {
        return `The "cwd" option is invalid: ${cwd}.
${error.message}
${originalMessage}`;
      }
      if (!cwdStat.isDirectory()) {
        return `The "cwd" option is not a directory: ${cwd}.
${originalMessage}`;
      }
      return originalMessage;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/arguments/options.js
import path17 from "node:path";
import process6 from "node:process";
var import_cross_spawn, normalizeOptions, addDefaultOptions, getEnv;
var init_options2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/arguments/options.js"() {
    import_cross_spawn = __toESM(require_cross_spawn(), 1);
    init_npm_run_path();
    init_kill();
    init_signal();
    init_cancel();
    init_graceful2();
    init_timeout();
    init_node2();
    init_ipc_input();
    init_encoding_option();
    init_cwd();
    init_file_url();
    init_specific();
    normalizeOptions = (filePath, rawArguments, rawOptions) => {
      rawOptions.cwd = normalizeCwd(rawOptions.cwd);
      const [processedFile, processedArguments, processedOptions] = handleNodeOption(filePath, rawArguments, rawOptions);
      const { command: file, args: commandArguments, options: initialOptions } = import_cross_spawn.default._parse(processedFile, processedArguments, processedOptions);
      const fdOptions = normalizeFdSpecificOptions(initialOptions);
      const options = addDefaultOptions(fdOptions);
      validateTimeout(options);
      validateEncoding(options);
      validateIpcInputOption(options);
      validateCancelSignal(options);
      validateGracefulCancel(options);
      options.shell = normalizeFileUrl(options.shell);
      options.env = getEnv(options);
      options.killSignal = normalizeKillSignal(options.killSignal);
      options.forceKillAfterDelay = normalizeForceKillAfterDelay(options.forceKillAfterDelay);
      options.lines = options.lines.map((lines, fdNumber) => lines && !BINARY_ENCODINGS.has(options.encoding) && options.buffer[fdNumber]);
      if (process6.platform === "win32" && path17.basename(file, ".exe") === "cmd") {
        commandArguments.unshift("/q");
      }
      return { file, commandArguments, options };
    };
    addDefaultOptions = ({
      extendEnv = true,
      preferLocal = false,
      cwd,
      localDir: localDirectory = cwd,
      encoding = "utf8",
      reject: reject3 = true,
      cleanup = true,
      all = false,
      windowsHide = true,
      killSignal = "SIGTERM",
      forceKillAfterDelay = true,
      gracefulCancel = false,
      ipcInput,
      ipc = ipcInput !== void 0 || gracefulCancel,
      serialization = "advanced",
      ...options
    }) => ({
      ...options,
      extendEnv,
      preferLocal,
      cwd,
      localDirectory,
      encoding,
      reject: reject3,
      cleanup,
      all,
      windowsHide,
      killSignal,
      forceKillAfterDelay,
      gracefulCancel,
      ipcInput,
      ipc,
      serialization
    });
    getEnv = ({ env: envOption, extendEnv, preferLocal, node, localDirectory, nodePath }) => {
      const env3 = extendEnv ? { ...process6.env, ...envOption } : envOption;
      if (preferLocal || node) {
        return npmRunPathEnv({
          env: env3,
          cwd: localDirectory,
          execPath: nodePath,
          preferLocal,
          addExecPath: node
        });
      }
      return env3;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/arguments/shell.js
var concatenateShell;
var init_shell = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/arguments/shell.js"() {
    concatenateShell = (file, commandArguments, options) => options.shell && commandArguments.length > 0 ? [[file, ...commandArguments].join(" "), [], options] : [file, commandArguments, options];
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/strip-final-newline/4.0.0/f8b3e34b53e554d3076f7d79143bc8ac53557632eec42fc0bcf80e5bd99d5d57/node_modules/strip-final-newline/index.js
function stripFinalNewline(input) {
  if (typeof input === "string") {
    return stripFinalNewlineString(input);
  }
  if (!(ArrayBuffer.isView(input) && input.BYTES_PER_ELEMENT === 1)) {
    throw new Error("Input must be a string or a Uint8Array");
  }
  return stripFinalNewlineBinary(input);
}
var stripFinalNewlineString, stripFinalNewlineBinary, LF, LF_BINARY, CR, CR_BINARY;
var init_strip_final_newline = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/strip-final-newline/4.0.0/f8b3e34b53e554d3076f7d79143bc8ac53557632eec42fc0bcf80e5bd99d5d57/node_modules/strip-final-newline/index.js"() {
    stripFinalNewlineString = (input) => input.at(-1) === LF ? input.slice(0, input.at(-2) === CR ? -2 : -1) : input;
    stripFinalNewlineBinary = (input) => input.at(-1) === LF_BINARY ? input.subarray(0, input.at(-2) === CR_BINARY ? -2 : -1) : input;
    LF = "\n";
    LF_BINARY = LF.codePointAt(0);
    CR = "\r";
    CR_BINARY = CR.codePointAt(0);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/is-stream/4.0.1/7b8ad7df4fa9bb1fdc63fbf0f97b595d95c1e6d5b7fad348ce34b901ddb9f824/node_modules/is-stream/index.js
function isStream(stream2, { checkOpen = true } = {}) {
  return stream2 !== null && typeof stream2 === "object" && (stream2.writable || stream2.readable || !checkOpen || stream2.writable === void 0 && stream2.readable === void 0) && typeof stream2.pipe === "function";
}
function isWritableStream(stream2, { checkOpen = true } = {}) {
  return isStream(stream2, { checkOpen }) && (stream2.writable || !checkOpen) && typeof stream2.write === "function" && typeof stream2.end === "function" && typeof stream2.writable === "boolean" && typeof stream2.writableObjectMode === "boolean" && typeof stream2.destroy === "function" && typeof stream2.destroyed === "boolean";
}
function isReadableStream(stream2, { checkOpen = true } = {}) {
  return isStream(stream2, { checkOpen }) && (stream2.readable || !checkOpen) && typeof stream2.read === "function" && typeof stream2.readable === "boolean" && typeof stream2.readableObjectMode === "boolean" && typeof stream2.destroy === "function" && typeof stream2.destroyed === "boolean";
}
function isDuplexStream(stream2, options) {
  return isWritableStream(stream2, options) && isReadableStream(stream2, options);
}
var init_is_stream = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/is-stream/4.0.1/7b8ad7df4fa9bb1fdc63fbf0f97b595d95c1e6d5b7fad348ce34b901ddb9f824/node_modules/is-stream/index.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sec-ant/readable-stream/0.4.1/6a695649d2484089969e48b79be0925ba6e16d4558b47eec06fd91d756c6298a/node_modules/@sec-ant/readable-stream/dist/ponyfill/asyncIterator.js
function i() {
  return this[n].next();
}
function o(r) {
  return this[n].return(r);
}
function h({ preventCancel: r = false } = {}) {
  const e = this.getReader(), t2 = new c(
    e,
    r
  ), s = Object.create(u3);
  return s[n] = t2, s;
}
var a, c, n, u3;
var init_asyncIterator = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@sec-ant/readable-stream/0.4.1/6a695649d2484089969e48b79be0925ba6e16d4558b47eec06fd91d756c6298a/node_modules/@sec-ant/readable-stream/dist/ponyfill/asyncIterator.js"() {
    a = Object.getPrototypeOf(
      Object.getPrototypeOf(
        /* istanbul ignore next */
        async function* () {
        }
      ).prototype
    );
    c = class {
      #t;
      #n;
      #r = false;
      #e = void 0;
      constructor(e, t2) {
        this.#t = e, this.#n = t2;
      }
      next() {
        const e = () => this.#s();
        return this.#e = this.#e ? this.#e.then(e, e) : e(), this.#e;
      }
      return(e) {
        const t2 = () => this.#i(e);
        return this.#e ? this.#e.then(t2, t2) : t2();
      }
      async #s() {
        if (this.#r)
          return {
            done: true,
            value: void 0
          };
        let e;
        try {
          e = await this.#t.read();
        } catch (t2) {
          throw this.#e = void 0, this.#r = true, this.#t.releaseLock(), t2;
        }
        return e.done && (this.#e = void 0, this.#r = true, this.#t.releaseLock()), e;
      }
      async #i(e) {
        if (this.#r)
          return {
            done: true,
            value: e
          };
        if (this.#r = true, !this.#n) {
          const t2 = this.#t.cancel(e);
          return this.#t.releaseLock(), await t2, {
            done: true,
            value: e
          };
        }
        return this.#t.releaseLock(), {
          done: true,
          value: e
        };
      }
    };
    n = /* @__PURE__ */ Symbol();
    Object.defineProperty(i, "name", { value: "next" });
    Object.defineProperty(o, "name", { value: "return" });
    u3 = Object.create(a, {
      next: {
        enumerable: true,
        configurable: true,
        writable: true,
        value: i
      },
      return: {
        enumerable: true,
        configurable: true,
        writable: true,
        value: o
      }
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sec-ant/readable-stream/0.4.1/6a695649d2484089969e48b79be0925ba6e16d4558b47eec06fd91d756c6298a/node_modules/@sec-ant/readable-stream/dist/ponyfill/fromAnyIterable.js
var init_fromAnyIterable = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@sec-ant/readable-stream/0.4.1/6a695649d2484089969e48b79be0925ba6e16d4558b47eec06fd91d756c6298a/node_modules/@sec-ant/readable-stream/dist/ponyfill/fromAnyIterable.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sec-ant/readable-stream/0.4.1/6a695649d2484089969e48b79be0925ba6e16d4558b47eec06fd91d756c6298a/node_modules/@sec-ant/readable-stream/dist/ponyfill/index.js
var init_ponyfill = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@sec-ant/readable-stream/0.4.1/6a695649d2484089969e48b79be0925ba6e16d4558b47eec06fd91d756c6298a/node_modules/@sec-ant/readable-stream/dist/ponyfill/index.js"() {
    init_asyncIterator();
    init_fromAnyIterable();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/get-stream/9.0.1/69ae1c618bfef4a14fcafaa4d22c6c0c519e6f1c741c2958f90c677994d53fcf/node_modules/get-stream/source/stream.js
var getAsyncIterable, toString3, getStreamIterable, handleStreamEnd, nodeImports;
var init_stream2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/get-stream/9.0.1/69ae1c618bfef4a14fcafaa4d22c6c0c519e6f1c741c2958f90c677994d53fcf/node_modules/get-stream/source/stream.js"() {
    init_is_stream();
    init_ponyfill();
    getAsyncIterable = (stream2) => {
      if (isReadableStream(stream2, { checkOpen: false }) && nodeImports.on !== void 0) {
        return getStreamIterable(stream2);
      }
      if (typeof stream2?.[Symbol.asyncIterator] === "function") {
        return stream2;
      }
      if (toString3.call(stream2) === "[object ReadableStream]") {
        return h.call(stream2);
      }
      throw new TypeError("The first argument must be a Readable, a ReadableStream, or an async iterable.");
    };
    ({ toString: toString3 } = Object.prototype);
    getStreamIterable = async function* (stream2) {
      const controller = new AbortController();
      const state = {};
      handleStreamEnd(stream2, controller, state);
      try {
        for await (const [chunk] of nodeImports.on(stream2, "data", { signal: controller.signal })) {
          yield chunk;
        }
      } catch (error) {
        if (state.error !== void 0) {
          throw state.error;
        } else if (!controller.signal.aborted) {
          throw error;
        }
      } finally {
        stream2.destroy();
      }
    };
    handleStreamEnd = async (stream2, controller, state) => {
      try {
        await nodeImports.finished(stream2, {
          cleanup: true,
          readable: true,
          writable: false,
          error: false
        });
      } catch (error) {
        state.error = error;
      } finally {
        controller.abort();
      }
    };
    nodeImports = {};
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/get-stream/9.0.1/69ae1c618bfef4a14fcafaa4d22c6c0c519e6f1c741c2958f90c677994d53fcf/node_modules/get-stream/source/contents.js
var getStreamContents, appendFinalChunk, appendChunk, addNewChunk, getChunkType, objectToString2, MaxBufferError;
var init_contents = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/get-stream/9.0.1/69ae1c618bfef4a14fcafaa4d22c6c0c519e6f1c741c2958f90c677994d53fcf/node_modules/get-stream/source/contents.js"() {
    init_stream2();
    getStreamContents = async (stream2, { init: init2, convertChunk, getSize, truncateChunk, addChunk, getFinalChunk, finalize }, { maxBuffer = Number.POSITIVE_INFINITY } = {}) => {
      const asyncIterable = getAsyncIterable(stream2);
      const state = init2();
      state.length = 0;
      try {
        for await (const chunk of asyncIterable) {
          const chunkType = getChunkType(chunk);
          const convertedChunk = convertChunk[chunkType](chunk, state);
          appendChunk({
            convertedChunk,
            state,
            getSize,
            truncateChunk,
            addChunk,
            maxBuffer
          });
        }
        appendFinalChunk({
          state,
          convertChunk,
          getSize,
          truncateChunk,
          addChunk,
          getFinalChunk,
          maxBuffer
        });
        return finalize(state);
      } catch (error) {
        const normalizedError = typeof error === "object" && error !== null ? error : new Error(error);
        normalizedError.bufferedData = finalize(state);
        throw normalizedError;
      }
    };
    appendFinalChunk = ({ state, getSize, truncateChunk, addChunk, getFinalChunk, maxBuffer }) => {
      const convertedChunk = getFinalChunk(state);
      if (convertedChunk !== void 0) {
        appendChunk({
          convertedChunk,
          state,
          getSize,
          truncateChunk,
          addChunk,
          maxBuffer
        });
      }
    };
    appendChunk = ({ convertedChunk, state, getSize, truncateChunk, addChunk, maxBuffer }) => {
      const chunkSize = getSize(convertedChunk);
      const newLength = state.length + chunkSize;
      if (newLength <= maxBuffer) {
        addNewChunk(convertedChunk, state, addChunk, newLength);
        return;
      }
      const truncatedChunk = truncateChunk(convertedChunk, maxBuffer - state.length);
      if (truncatedChunk !== void 0) {
        addNewChunk(truncatedChunk, state, addChunk, maxBuffer);
      }
      throw new MaxBufferError();
    };
    addNewChunk = (convertedChunk, state, addChunk, newLength) => {
      state.contents = addChunk(convertedChunk, state, newLength);
      state.length = newLength;
    };
    getChunkType = (chunk) => {
      const typeOfChunk = typeof chunk;
      if (typeOfChunk === "string") {
        return "string";
      }
      if (typeOfChunk !== "object" || chunk === null) {
        return "others";
      }
      if (globalThis.Buffer?.isBuffer(chunk)) {
        return "buffer";
      }
      const prototypeName = objectToString2.call(chunk);
      if (prototypeName === "[object ArrayBuffer]") {
        return "arrayBuffer";
      }
      if (prototypeName === "[object DataView]") {
        return "dataView";
      }
      if (Number.isInteger(chunk.byteLength) && Number.isInteger(chunk.byteOffset) && objectToString2.call(chunk.buffer) === "[object ArrayBuffer]") {
        return "typedArray";
      }
      return "others";
    };
    ({ toString: objectToString2 } = Object.prototype);
    MaxBufferError = class extends Error {
      name = "MaxBufferError";
      constructor() {
        super("maxBuffer exceeded");
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/get-stream/9.0.1/69ae1c618bfef4a14fcafaa4d22c6c0c519e6f1c741c2958f90c677994d53fcf/node_modules/get-stream/source/utils.js
var identity3, noop, getContentsProperty, throwObjectStream, getLengthProperty;
var init_utils = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/get-stream/9.0.1/69ae1c618bfef4a14fcafaa4d22c6c0c519e6f1c741c2958f90c677994d53fcf/node_modules/get-stream/source/utils.js"() {
    identity3 = (value) => value;
    noop = () => void 0;
    getContentsProperty = ({ contents }) => contents;
    throwObjectStream = (chunk) => {
      throw new Error(`Streams in object mode are not supported: ${String(chunk)}`);
    };
    getLengthProperty = (convertedChunk) => convertedChunk.length;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/get-stream/9.0.1/69ae1c618bfef4a14fcafaa4d22c6c0c519e6f1c741c2958f90c677994d53fcf/node_modules/get-stream/source/array.js
async function getStreamAsArray(stream2, options) {
  return getStreamContents(stream2, arrayMethods, options);
}
var initArray, increment, addArrayChunk, arrayMethods;
var init_array = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/get-stream/9.0.1/69ae1c618bfef4a14fcafaa4d22c6c0c519e6f1c741c2958f90c677994d53fcf/node_modules/get-stream/source/array.js"() {
    init_contents();
    init_utils();
    initArray = () => ({ contents: [] });
    increment = () => 1;
    addArrayChunk = (convertedChunk, { contents }) => {
      contents.push(convertedChunk);
      return contents;
    };
    arrayMethods = {
      init: initArray,
      convertChunk: {
        string: identity3,
        buffer: identity3,
        arrayBuffer: identity3,
        dataView: identity3,
        typedArray: identity3,
        others: identity3
      },
      getSize: increment,
      truncateChunk: noop,
      addChunk: addArrayChunk,
      getFinalChunk: noop,
      finalize: getContentsProperty
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/get-stream/9.0.1/69ae1c618bfef4a14fcafaa4d22c6c0c519e6f1c741c2958f90c677994d53fcf/node_modules/get-stream/source/array-buffer.js
async function getStreamAsArrayBuffer(stream2, options) {
  return getStreamContents(stream2, arrayBufferMethods, options);
}
var initArrayBuffer, useTextEncoder, textEncoder4, useUint8Array, useUint8ArrayWithOffset, truncateArrayBufferChunk, addArrayBufferChunk, resizeArrayBufferSlow, resizeArrayBuffer, getNewContentsLength, SCALE_FACTOR, finalizeArrayBuffer, hasArrayBufferResize, arrayBufferMethods;
var init_array_buffer = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/get-stream/9.0.1/69ae1c618bfef4a14fcafaa4d22c6c0c519e6f1c741c2958f90c677994d53fcf/node_modules/get-stream/source/array-buffer.js"() {
    init_contents();
    init_utils();
    initArrayBuffer = () => ({ contents: new ArrayBuffer(0) });
    useTextEncoder = (chunk) => textEncoder4.encode(chunk);
    textEncoder4 = new TextEncoder();
    useUint8Array = (chunk) => new Uint8Array(chunk);
    useUint8ArrayWithOffset = (chunk) => new Uint8Array(chunk.buffer, chunk.byteOffset, chunk.byteLength);
    truncateArrayBufferChunk = (convertedChunk, chunkSize) => convertedChunk.slice(0, chunkSize);
    addArrayBufferChunk = (convertedChunk, { contents, length: previousLength }, length) => {
      const newContents = hasArrayBufferResize() ? resizeArrayBuffer(contents, length) : resizeArrayBufferSlow(contents, length);
      new Uint8Array(newContents).set(convertedChunk, previousLength);
      return newContents;
    };
    resizeArrayBufferSlow = (contents, length) => {
      if (length <= contents.byteLength) {
        return contents;
      }
      const arrayBuffer = new ArrayBuffer(getNewContentsLength(length));
      new Uint8Array(arrayBuffer).set(new Uint8Array(contents), 0);
      return arrayBuffer;
    };
    resizeArrayBuffer = (contents, length) => {
      if (length <= contents.maxByteLength) {
        contents.resize(length);
        return contents;
      }
      const arrayBuffer = new ArrayBuffer(length, { maxByteLength: getNewContentsLength(length) });
      new Uint8Array(arrayBuffer).set(new Uint8Array(contents), 0);
      return arrayBuffer;
    };
    getNewContentsLength = (length) => SCALE_FACTOR ** Math.ceil(Math.log(length) / Math.log(SCALE_FACTOR));
    SCALE_FACTOR = 2;
    finalizeArrayBuffer = ({ contents, length }) => hasArrayBufferResize() ? contents : contents.slice(0, length);
    hasArrayBufferResize = () => "resize" in ArrayBuffer.prototype;
    arrayBufferMethods = {
      init: initArrayBuffer,
      convertChunk: {
        string: useTextEncoder,
        buffer: useUint8Array,
        arrayBuffer: useUint8Array,
        dataView: useUint8ArrayWithOffset,
        typedArray: useUint8ArrayWithOffset,
        others: throwObjectStream
      },
      getSize: getLengthProperty,
      truncateChunk: truncateArrayBufferChunk,
      addChunk: addArrayBufferChunk,
      getFinalChunk: noop,
      finalize: finalizeArrayBuffer
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/get-stream/9.0.1/69ae1c618bfef4a14fcafaa4d22c6c0c519e6f1c741c2958f90c677994d53fcf/node_modules/get-stream/source/string.js
async function getStreamAsString(stream2, options) {
  return getStreamContents(stream2, stringMethods, options);
}
var initString, useTextDecoder, addStringChunk, truncateStringChunk, getFinalStringChunk, stringMethods;
var init_string = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/get-stream/9.0.1/69ae1c618bfef4a14fcafaa4d22c6c0c519e6f1c741c2958f90c677994d53fcf/node_modules/get-stream/source/string.js"() {
    init_contents();
    init_utils();
    initString = () => ({ contents: "", textDecoder: new TextDecoder() });
    useTextDecoder = (chunk, { textDecoder: textDecoder2 }) => textDecoder2.decode(chunk, { stream: true });
    addStringChunk = (convertedChunk, { contents }) => contents + convertedChunk;
    truncateStringChunk = (convertedChunk, chunkSize) => convertedChunk.slice(0, chunkSize);
    getFinalStringChunk = ({ textDecoder: textDecoder2 }) => {
      const finalChunk = textDecoder2.decode();
      return finalChunk === "" ? void 0 : finalChunk;
    };
    stringMethods = {
      init: initString,
      convertChunk: {
        string: identity3,
        buffer: useTextDecoder,
        arrayBuffer: useTextDecoder,
        dataView: useTextDecoder,
        typedArray: useTextDecoder,
        others: throwObjectStream
      },
      getSize: getLengthProperty,
      truncateChunk: truncateStringChunk,
      addChunk: addStringChunk,
      getFinalChunk: getFinalStringChunk,
      finalize: getContentsProperty
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/get-stream/9.0.1/69ae1c618bfef4a14fcafaa4d22c6c0c519e6f1c741c2958f90c677994d53fcf/node_modules/get-stream/source/exports.js
var init_exports = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/get-stream/9.0.1/69ae1c618bfef4a14fcafaa4d22c6c0c519e6f1c741c2958f90c677994d53fcf/node_modules/get-stream/source/exports.js"() {
    init_array();
    init_array_buffer();
    init_string();
    init_contents();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/get-stream/9.0.1/69ae1c618bfef4a14fcafaa4d22c6c0c519e6f1c741c2958f90c677994d53fcf/node_modules/get-stream/source/index.js
import { on } from "node:events";
import { finished } from "node:stream/promises";
var init_source = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/get-stream/9.0.1/69ae1c618bfef4a14fcafaa4d22c6c0c519e6f1c741c2958f90c677994d53fcf/node_modules/get-stream/source/index.js"() {
    init_stream2();
    init_exports();
    Object.assign(nodeImports, { on, finished });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/io/max-buffer.js
var handleMaxBuffer, getMaxBufferUnit, checkIpcMaxBuffer, getMaxBufferMessage, getMaxBufferInfo, isMaxBufferSync, truncateMaxBufferSync, getMaxBufferSync;
var init_max_buffer = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/io/max-buffer.js"() {
    init_source();
    init_standard_stream();
    init_specific();
    handleMaxBuffer = ({ error, stream: stream2, readableObjectMode, lines, encoding, fdNumber }) => {
      if (!(error instanceof MaxBufferError)) {
        throw error;
      }
      if (fdNumber === "all") {
        return error;
      }
      const unit = getMaxBufferUnit(readableObjectMode, lines, encoding);
      error.maxBufferInfo = { fdNumber, unit };
      stream2.destroy();
      throw error;
    };
    getMaxBufferUnit = (readableObjectMode, lines, encoding) => {
      if (readableObjectMode) {
        return "objects";
      }
      if (lines) {
        return "lines";
      }
      if (encoding === "buffer") {
        return "bytes";
      }
      return "characters";
    };
    checkIpcMaxBuffer = (subprocess, ipcOutput, maxBuffer) => {
      if (ipcOutput.length !== maxBuffer) {
        return;
      }
      const error = new MaxBufferError();
      error.maxBufferInfo = { fdNumber: "ipc" };
      throw error;
    };
    getMaxBufferMessage = (error, maxBuffer) => {
      const { streamName, threshold, unit } = getMaxBufferInfo(error, maxBuffer);
      return `Command's ${streamName} was larger than ${threshold} ${unit}`;
    };
    getMaxBufferInfo = (error, maxBuffer) => {
      if (error?.maxBufferInfo === void 0) {
        return { streamName: "output", threshold: maxBuffer[1], unit: "bytes" };
      }
      const { maxBufferInfo: { fdNumber, unit } } = error;
      delete error.maxBufferInfo;
      const threshold = getFdSpecificValue(maxBuffer, fdNumber);
      if (fdNumber === "ipc") {
        return { streamName: "IPC output", threshold, unit: "messages" };
      }
      return { streamName: getStreamName(fdNumber), threshold, unit };
    };
    isMaxBufferSync = (resultError, output, maxBuffer) => resultError?.code === "ENOBUFS" && output !== null && output.some((result2) => result2 !== null && result2.length > getMaxBufferSync(maxBuffer));
    truncateMaxBufferSync = (result2, isMaxBuffer, maxBuffer) => {
      if (!isMaxBuffer) {
        return result2;
      }
      const maxBufferValue = getMaxBufferSync(maxBuffer);
      return result2.length > maxBufferValue ? result2.slice(0, maxBufferValue) : result2;
    };
    getMaxBufferSync = ([, stdoutMaxBuffer]) => stdoutMaxBuffer;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/return/message.js
import { inspect as inspect2 } from "node:util";
var createMessages, getErrorPrefix, getForcefulSuffix, getOriginalMessage, serializeIpcMessage, serializeMessagePart, serializeMessageItem;
var init_message = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/return/message.js"() {
    init_strip_final_newline();
    init_uint_array();
    init_cwd();
    init_escape();
    init_max_buffer();
    init_signal();
    init_final_error();
    createMessages = ({
      stdio,
      all,
      ipcOutput,
      originalError,
      signal,
      signalDescription,
      exitCode,
      escapedCommand,
      timedOut,
      isCanceled,
      isGracefullyCanceled,
      isMaxBuffer,
      isForcefullyTerminated,
      forceKillAfterDelay,
      killSignal,
      maxBuffer,
      timeout,
      cwd
    }) => {
      const errorCode = originalError?.code;
      const prefix = getErrorPrefix({
        originalError,
        timedOut,
        timeout,
        isMaxBuffer,
        maxBuffer,
        errorCode,
        signal,
        signalDescription,
        exitCode,
        isCanceled,
        isGracefullyCanceled,
        isForcefullyTerminated,
        forceKillAfterDelay,
        killSignal
      });
      const originalMessage = getOriginalMessage(originalError, cwd);
      const suffix = originalMessage === void 0 ? "" : `
${originalMessage}`;
      const shortMessage = `${prefix}: ${escapedCommand}${suffix}`;
      const messageStdio = all === void 0 ? [stdio[2], stdio[1]] : [all];
      const message = [
        shortMessage,
        ...messageStdio,
        ...stdio.slice(3),
        ipcOutput.map((ipcMessage) => serializeIpcMessage(ipcMessage)).join("\n")
      ].map((messagePart) => escapeLines(stripFinalNewline(serializeMessagePart(messagePart)))).filter(Boolean).join("\n\n");
      return { originalMessage, shortMessage, message };
    };
    getErrorPrefix = ({
      originalError,
      timedOut,
      timeout,
      isMaxBuffer,
      maxBuffer,
      errorCode,
      signal,
      signalDescription,
      exitCode,
      isCanceled,
      isGracefullyCanceled,
      isForcefullyTerminated,
      forceKillAfterDelay,
      killSignal
    }) => {
      const forcefulSuffix = getForcefulSuffix(isForcefullyTerminated, forceKillAfterDelay);
      if (timedOut) {
        return `Command timed out after ${timeout} milliseconds${forcefulSuffix}`;
      }
      if (isGracefullyCanceled) {
        if (signal === void 0) {
          return `Command was gracefully canceled with exit code ${exitCode}`;
        }
        return isForcefullyTerminated ? `Command was gracefully canceled${forcefulSuffix}` : `Command was gracefully canceled with ${signal} (${signalDescription})`;
      }
      if (isCanceled) {
        return `Command was canceled${forcefulSuffix}`;
      }
      if (isMaxBuffer) {
        return `${getMaxBufferMessage(originalError, maxBuffer)}${forcefulSuffix}`;
      }
      if (errorCode !== void 0) {
        return `Command failed with ${errorCode}${forcefulSuffix}`;
      }
      if (isForcefullyTerminated) {
        return `Command was killed with ${killSignal} (${getSignalDescription(killSignal)})${forcefulSuffix}`;
      }
      if (signal !== void 0) {
        return `Command was killed with ${signal} (${signalDescription})`;
      }
      if (exitCode !== void 0) {
        return `Command failed with exit code ${exitCode}`;
      }
      return "Command failed";
    };
    getForcefulSuffix = (isForcefullyTerminated, forceKillAfterDelay) => isForcefullyTerminated ? ` and was forcefully terminated after ${forceKillAfterDelay} milliseconds` : "";
    getOriginalMessage = (originalError, cwd) => {
      if (originalError instanceof DiscardedError) {
        return;
      }
      const originalMessage = isExecaError(originalError) ? originalError.originalMessage : String(originalError?.message ?? originalError);
      const escapedOriginalMessage = escapeLines(fixCwdError(originalMessage, cwd));
      return escapedOriginalMessage === "" ? void 0 : escapedOriginalMessage;
    };
    serializeIpcMessage = (ipcMessage) => typeof ipcMessage === "string" ? ipcMessage : inspect2(ipcMessage);
    serializeMessagePart = (messagePart) => Array.isArray(messagePart) ? messagePart.map((messageItem) => stripFinalNewline(serializeMessageItem(messageItem))).filter(Boolean).join("\n") : serializeMessageItem(messagePart);
    serializeMessageItem = (messageItem) => {
      if (typeof messageItem === "string") {
        return messageItem;
      }
      if (isUint8Array(messageItem)) {
        return uint8ArrayToString(messageItem);
      }
      return "";
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/return/result.js
var makeSuccessResult, makeEarlyError, makeError, getErrorProperties, omitUndefinedProperties, normalizeExitPayload;
var init_result = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/return/result.js"() {
    init_signal();
    init_duration();
    init_final_error();
    init_message();
    makeSuccessResult = ({
      command,
      escapedCommand,
      stdio,
      all,
      ipcOutput,
      options: { cwd },
      startTime
    }) => omitUndefinedProperties({
      command,
      escapedCommand,
      cwd,
      durationMs: getDurationMs(startTime),
      failed: false,
      timedOut: false,
      isCanceled: false,
      isGracefullyCanceled: false,
      isTerminated: false,
      isMaxBuffer: false,
      isForcefullyTerminated: false,
      exitCode: 0,
      stdout: stdio[1],
      stderr: stdio[2],
      all,
      stdio,
      ipcOutput,
      pipedFrom: []
    });
    makeEarlyError = ({
      error,
      command,
      escapedCommand,
      fileDescriptors,
      options,
      startTime,
      isSync
    }) => makeError({
      error,
      command,
      escapedCommand,
      startTime,
      timedOut: false,
      isCanceled: false,
      isGracefullyCanceled: false,
      isMaxBuffer: false,
      isForcefullyTerminated: false,
      stdio: Array.from({ length: fileDescriptors.length }),
      ipcOutput: [],
      options,
      isSync
    });
    makeError = ({
      error: originalError,
      command,
      escapedCommand,
      startTime,
      timedOut,
      isCanceled,
      isGracefullyCanceled,
      isMaxBuffer,
      isForcefullyTerminated,
      exitCode: rawExitCode,
      signal: rawSignal,
      stdio,
      all,
      ipcOutput,
      options: {
        timeoutDuration,
        timeout = timeoutDuration,
        forceKillAfterDelay,
        killSignal,
        cwd,
        maxBuffer
      },
      isSync
    }) => {
      const { exitCode, signal, signalDescription } = normalizeExitPayload(rawExitCode, rawSignal);
      const { originalMessage, shortMessage, message } = createMessages({
        stdio,
        all,
        ipcOutput,
        originalError,
        signal,
        signalDescription,
        exitCode,
        escapedCommand,
        timedOut,
        isCanceled,
        isGracefullyCanceled,
        isMaxBuffer,
        isForcefullyTerminated,
        forceKillAfterDelay,
        killSignal,
        maxBuffer,
        timeout,
        cwd
      });
      const error = getFinalError(originalError, message, isSync);
      Object.assign(error, getErrorProperties({
        error,
        command,
        escapedCommand,
        startTime,
        timedOut,
        isCanceled,
        isGracefullyCanceled,
        isMaxBuffer,
        isForcefullyTerminated,
        exitCode,
        signal,
        signalDescription,
        stdio,
        all,
        ipcOutput,
        cwd,
        originalMessage,
        shortMessage
      }));
      return error;
    };
    getErrorProperties = ({
      error,
      command,
      escapedCommand,
      startTime,
      timedOut,
      isCanceled,
      isGracefullyCanceled,
      isMaxBuffer,
      isForcefullyTerminated,
      exitCode,
      signal,
      signalDescription,
      stdio,
      all,
      ipcOutput,
      cwd,
      originalMessage,
      shortMessage
    }) => omitUndefinedProperties({
      shortMessage,
      originalMessage,
      command,
      escapedCommand,
      cwd,
      durationMs: getDurationMs(startTime),
      failed: true,
      timedOut,
      isCanceled,
      isGracefullyCanceled,
      isTerminated: signal !== void 0,
      isMaxBuffer,
      isForcefullyTerminated,
      exitCode,
      signal,
      signalDescription,
      code: error.cause?.code,
      stdout: stdio[1],
      stderr: stdio[2],
      all,
      stdio,
      ipcOutput,
      pipedFrom: []
    });
    omitUndefinedProperties = (result2) => Object.fromEntries(Object.entries(result2).filter(([, value]) => value !== void 0));
    normalizeExitPayload = (rawExitCode, rawSignal) => {
      const exitCode = rawExitCode === null ? void 0 : rawExitCode;
      const signal = rawSignal === null ? void 0 : rawSignal;
      const signalDescription = signal === void 0 ? void 0 : getSignalDescription(rawSignal);
      return { exitCode, signal, signalDescription };
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/parse-ms/4.0.0/edcb0dce1fc1cde6b0b4641cc65f88dba04d2ac5013f8df3cf864a18508e9952/node_modules/parse-ms/index.js
function parseNumber(milliseconds) {
  return {
    days: Math.trunc(milliseconds / 864e5),
    hours: Math.trunc(milliseconds / 36e5 % 24),
    minutes: Math.trunc(milliseconds / 6e4 % 60),
    seconds: Math.trunc(milliseconds / 1e3 % 60),
    milliseconds: Math.trunc(milliseconds % 1e3),
    microseconds: Math.trunc(toZeroIfInfinity(milliseconds * 1e3) % 1e3),
    nanoseconds: Math.trunc(toZeroIfInfinity(milliseconds * 1e6) % 1e3)
  };
}
function parseBigint(milliseconds) {
  return {
    days: milliseconds / 86400000n,
    hours: milliseconds / 3600000n % 24n,
    minutes: milliseconds / 60000n % 60n,
    seconds: milliseconds / 1000n % 60n,
    milliseconds: milliseconds % 1000n,
    microseconds: 0n,
    nanoseconds: 0n
  };
}
function parseMilliseconds(milliseconds) {
  switch (typeof milliseconds) {
    case "number": {
      if (Number.isFinite(milliseconds)) {
        return parseNumber(milliseconds);
      }
      break;
    }
    case "bigint": {
      return parseBigint(milliseconds);
    }
  }
  throw new TypeError("Expected a finite number or bigint");
}
var toZeroIfInfinity;
var init_parse_ms = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/parse-ms/4.0.0/edcb0dce1fc1cde6b0b4641cc65f88dba04d2ac5013f8df3cf864a18508e9952/node_modules/parse-ms/index.js"() {
    toZeroIfInfinity = (value) => Number.isFinite(value) ? value : 0;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/pretty-ms/9.3.0/84ed77c8a81e6c28104a47a00f81e7011aebdb2cb4c3d945391f167007052120/node_modules/pretty-ms/index.js
function prettyMilliseconds(milliseconds, options) {
  const isBigInt = typeof milliseconds === "bigint";
  if (!isBigInt && !Number.isFinite(milliseconds)) {
    throw new TypeError("Expected a finite number or bigint");
  }
  options = { ...options };
  const sign = milliseconds < 0 ? "-" : "";
  milliseconds = milliseconds < 0 ? -milliseconds : milliseconds;
  if (options.colonNotation) {
    options.compact = false;
    options.formatSubMilliseconds = false;
    options.separateMilliseconds = false;
    options.verbose = false;
  }
  if (options.compact) {
    options.unitCount = 1;
    options.secondsDecimalDigits = 0;
    options.millisecondsDecimalDigits = 0;
  }
  let result2 = [];
  const floorDecimals = (value, decimalDigits) => {
    const flooredInterimValue = Math.floor(value * 10 ** decimalDigits + SECOND_ROUNDING_EPSILON);
    const flooredValue = Math.round(flooredInterimValue) / 10 ** decimalDigits;
    return flooredValue.toFixed(decimalDigits);
  };
  const add = (value, long, short, valueString) => {
    if ((result2.length === 0 || !options.colonNotation) && isZero(value) && !(options.colonNotation && short === "m")) {
      return;
    }
    valueString ??= String(value);
    if (options.colonNotation) {
      const wholeDigits = valueString.includes(".") ? valueString.split(".")[0].length : valueString.length;
      const minLength = result2.length > 0 ? 2 : 1;
      valueString = "0".repeat(Math.max(0, minLength - wholeDigits)) + valueString;
    } else {
      valueString += options.verbose ? " " + pluralize(long, value) : short;
    }
    result2.push(valueString);
  };
  const parsed = parseMilliseconds(milliseconds);
  const days = BigInt(parsed.days);
  if (options.hideYearAndDays) {
    add(BigInt(days) * 24n + BigInt(parsed.hours), "hour", "h");
  } else {
    if (options.hideYear) {
      add(days, "day", "d");
    } else {
      add(days / 365n, "year", "y");
      add(days % 365n, "day", "d");
    }
    add(Number(parsed.hours), "hour", "h");
  }
  add(Number(parsed.minutes), "minute", "m");
  if (!options.hideSeconds) {
    if (options.separateMilliseconds || options.formatSubMilliseconds || !options.colonNotation && milliseconds < 1e3 && !options.subSecondsAsDecimals) {
      const seconds = Number(parsed.seconds);
      const milliseconds2 = Number(parsed.milliseconds);
      const microseconds = Number(parsed.microseconds);
      const nanoseconds = Number(parsed.nanoseconds);
      add(seconds, "second", "s");
      if (options.formatSubMilliseconds) {
        add(milliseconds2, "millisecond", "ms");
        add(microseconds, "microsecond", "\xB5s");
        add(nanoseconds, "nanosecond", "ns");
      } else {
        const millisecondsAndBelow = milliseconds2 + microseconds / 1e3 + nanoseconds / 1e6;
        const millisecondsDecimalDigits = typeof options.millisecondsDecimalDigits === "number" ? options.millisecondsDecimalDigits : 0;
        const roundedMilliseconds = millisecondsAndBelow >= 1 ? Math.round(millisecondsAndBelow) : Math.ceil(millisecondsAndBelow);
        const millisecondsString = millisecondsDecimalDigits ? millisecondsAndBelow.toFixed(millisecondsDecimalDigits) : roundedMilliseconds;
        add(
          Number.parseFloat(millisecondsString),
          "millisecond",
          "ms",
          millisecondsString
        );
      }
    } else {
      const seconds = (isBigInt ? Number(milliseconds % ONE_DAY_IN_MILLISECONDS) : milliseconds) / 1e3 % 60;
      const secondsDecimalDigits = typeof options.secondsDecimalDigits === "number" ? options.secondsDecimalDigits : 1;
      const secondsFixed = floorDecimals(seconds, secondsDecimalDigits);
      const secondsString = options.keepDecimalsOnWholeSeconds ? secondsFixed : secondsFixed.replace(/\.0+$/, "");
      add(Number.parseFloat(secondsString), "second", "s", secondsString);
    }
  }
  if (result2.length === 0) {
    return sign + "0" + (options.verbose ? " milliseconds" : "ms");
  }
  const separator = options.colonNotation ? ":" : " ";
  if (typeof options.unitCount === "number") {
    result2 = result2.slice(0, Math.max(options.unitCount, 1));
  }
  return sign + result2.join(separator);
}
var isZero, pluralize, SECOND_ROUNDING_EPSILON, ONE_DAY_IN_MILLISECONDS;
var init_pretty_ms = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/pretty-ms/9.3.0/84ed77c8a81e6c28104a47a00f81e7011aebdb2cb4c3d945391f167007052120/node_modules/pretty-ms/index.js"() {
    init_parse_ms();
    isZero = (value) => value === 0 || value === 0n;
    pluralize = (word, count2) => count2 === 1 || count2 === 1n ? word : `${word}s`;
    SECOND_ROUNDING_EPSILON = 1e-7;
    ONE_DAY_IN_MILLISECONDS = 24n * 60n * 60n * 1000n;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/verbose/error.js
var logError;
var init_error = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/verbose/error.js"() {
    init_log();
    logError = (result2, verboseInfo) => {
      if (result2.failed) {
        verboseLog({
          type: "error",
          verboseMessage: result2.shortMessage,
          verboseInfo,
          result: result2
        });
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/verbose/complete.js
var logResult, logDuration;
var init_complete = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/verbose/complete.js"() {
    init_pretty_ms();
    init_values2();
    init_log();
    init_error();
    logResult = (result2, verboseInfo) => {
      if (!isVerbose(verboseInfo)) {
        return;
      }
      logError(result2, verboseInfo);
      logDuration(result2, verboseInfo);
    };
    logDuration = (result2, verboseInfo) => {
      const verboseMessage = `(done in ${prettyMilliseconds(result2.durationMs)})`;
      verboseLog({
        type: "duration",
        verboseMessage,
        verboseInfo,
        result: result2
      });
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/return/reject.js
var handleResult;
var init_reject2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/return/reject.js"() {
    init_complete();
    handleResult = (result2, verboseInfo, { reject: reject3 }) => {
      logResult(result2, verboseInfo);
      if (result2.failed && reject3) {
        throw result2;
      }
      return result2;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/stdio/type.js
var getStdioItemType, getTransformObjectType, getDuplexType, getTransformStreamType, validateNonGeneratorType, checkUndefinedOption, getGeneratorObjectType, checkBooleanOption, isGenerator, isAsyncGenerator, isSyncGenerator, isTransformOptions, isUrl, isRegularUrl, isFilePathObject, FILE_PATH_KEYS, isFilePathString, isUnknownStdioString, KNOWN_STDIO_STRINGS, isReadableStream2, isWritableStream2, isWebStream, isTransformStream, isAsyncIterableObject, isIterableObject, isObject2, TRANSFORM_TYPES, FILE_TYPES, SPECIAL_DUPLICATE_TYPES_SYNC, SPECIAL_DUPLICATE_TYPES, FORBID_DUPLICATE_TYPES, TYPE_TO_MESSAGE;
var init_type2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/stdio/type.js"() {
    init_is_stream();
    init_is_plain_obj();
    init_uint_array();
    getStdioItemType = (value, optionName) => {
      if (isAsyncGenerator(value)) {
        return "asyncGenerator";
      }
      if (isSyncGenerator(value)) {
        return "generator";
      }
      if (isUrl(value)) {
        return "fileUrl";
      }
      if (isFilePathObject(value)) {
        return "filePath";
      }
      if (isWebStream(value)) {
        return "webStream";
      }
      if (isStream(value, { checkOpen: false })) {
        return "native";
      }
      if (isUint8Array(value)) {
        return "uint8Array";
      }
      if (isAsyncIterableObject(value)) {
        return "asyncIterable";
      }
      if (isIterableObject(value)) {
        return "iterable";
      }
      if (isTransformStream(value)) {
        return getTransformStreamType({ transform: value }, optionName);
      }
      if (isTransformOptions(value)) {
        return getTransformObjectType(value, optionName);
      }
      return "native";
    };
    getTransformObjectType = (value, optionName) => {
      if (isDuplexStream(value.transform, { checkOpen: false })) {
        return getDuplexType(value, optionName);
      }
      if (isTransformStream(value.transform)) {
        return getTransformStreamType(value, optionName);
      }
      return getGeneratorObjectType(value, optionName);
    };
    getDuplexType = (value, optionName) => {
      validateNonGeneratorType(value, optionName, "Duplex stream");
      return "duplex";
    };
    getTransformStreamType = (value, optionName) => {
      validateNonGeneratorType(value, optionName, "web TransformStream");
      return "webTransform";
    };
    validateNonGeneratorType = ({ final, binary: binary2, objectMode }, optionName, typeName) => {
      checkUndefinedOption(final, `${optionName}.final`, typeName);
      checkUndefinedOption(binary2, `${optionName}.binary`, typeName);
      checkBooleanOption(objectMode, `${optionName}.objectMode`);
    };
    checkUndefinedOption = (value, optionName, typeName) => {
      if (value !== void 0) {
        throw new TypeError(`The \`${optionName}\` option can only be defined when using a generator, not a ${typeName}.`);
      }
    };
    getGeneratorObjectType = ({ transform: transform2, final, binary: binary2, objectMode }, optionName) => {
      if (transform2 !== void 0 && !isGenerator(transform2)) {
        throw new TypeError(`The \`${optionName}.transform\` option must be a generator, a Duplex stream or a web TransformStream.`);
      }
      if (isDuplexStream(final, { checkOpen: false })) {
        throw new TypeError(`The \`${optionName}.final\` option must not be a Duplex stream.`);
      }
      if (isTransformStream(final)) {
        throw new TypeError(`The \`${optionName}.final\` option must not be a web TransformStream.`);
      }
      if (final !== void 0 && !isGenerator(final)) {
        throw new TypeError(`The \`${optionName}.final\` option must be a generator.`);
      }
      checkBooleanOption(binary2, `${optionName}.binary`);
      checkBooleanOption(objectMode, `${optionName}.objectMode`);
      return isAsyncGenerator(transform2) || isAsyncGenerator(final) ? "asyncGenerator" : "generator";
    };
    checkBooleanOption = (value, optionName) => {
      if (value !== void 0 && typeof value !== "boolean") {
        throw new TypeError(`The \`${optionName}\` option must use a boolean.`);
      }
    };
    isGenerator = (value) => isAsyncGenerator(value) || isSyncGenerator(value);
    isAsyncGenerator = (value) => Object.prototype.toString.call(value) === "[object AsyncGeneratorFunction]";
    isSyncGenerator = (value) => Object.prototype.toString.call(value) === "[object GeneratorFunction]";
    isTransformOptions = (value) => isPlainObject(value) && (value.transform !== void 0 || value.final !== void 0);
    isUrl = (value) => Object.prototype.toString.call(value) === "[object URL]";
    isRegularUrl = (value) => isUrl(value) && value.protocol !== "file:";
    isFilePathObject = (value) => isPlainObject(value) && Object.keys(value).length > 0 && Object.keys(value).every((key) => FILE_PATH_KEYS.has(key)) && isFilePathString(value.file);
    FILE_PATH_KEYS = /* @__PURE__ */ new Set(["file", "append"]);
    isFilePathString = (file) => typeof file === "string";
    isUnknownStdioString = (type4, value) => type4 === "native" && typeof value === "string" && !KNOWN_STDIO_STRINGS.has(value);
    KNOWN_STDIO_STRINGS = /* @__PURE__ */ new Set(["ipc", "ignore", "inherit", "overlapped", "pipe"]);
    isReadableStream2 = (value) => Object.prototype.toString.call(value) === "[object ReadableStream]";
    isWritableStream2 = (value) => Object.prototype.toString.call(value) === "[object WritableStream]";
    isWebStream = (value) => isReadableStream2(value) || isWritableStream2(value);
    isTransformStream = (value) => isReadableStream2(value?.readable) && isWritableStream2(value?.writable);
    isAsyncIterableObject = (value) => isObject2(value) && typeof value[Symbol.asyncIterator] === "function";
    isIterableObject = (value) => isObject2(value) && typeof value[Symbol.iterator] === "function";
    isObject2 = (value) => typeof value === "object" && value !== null;
    TRANSFORM_TYPES = /* @__PURE__ */ new Set(["generator", "asyncGenerator", "duplex", "webTransform"]);
    FILE_TYPES = /* @__PURE__ */ new Set(["fileUrl", "filePath", "fileNumber"]);
    SPECIAL_DUPLICATE_TYPES_SYNC = /* @__PURE__ */ new Set(["fileUrl", "filePath"]);
    SPECIAL_DUPLICATE_TYPES = /* @__PURE__ */ new Set([...SPECIAL_DUPLICATE_TYPES_SYNC, "webStream", "nodeStream"]);
    FORBID_DUPLICATE_TYPES = /* @__PURE__ */ new Set(["webTransform", "duplex"]);
    TYPE_TO_MESSAGE = {
      generator: "a generator",
      asyncGenerator: "an async generator",
      fileUrl: "a file URL",
      filePath: "a file path string",
      fileNumber: "a file descriptor number",
      webStream: "a web stream",
      nodeStream: "a Node.js stream",
      webTransform: "a web TransformStream",
      duplex: "a Duplex stream",
      native: "any value",
      iterable: "an iterable",
      asyncIterable: "an async iterable",
      string: "a string",
      uint8Array: "a Uint8Array"
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/transform/object-mode.js
var getTransformObjectModes, getOutputObjectModes, getInputObjectModes, getFdObjectMode;
var init_object_mode = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/transform/object-mode.js"() {
    init_type2();
    getTransformObjectModes = (objectMode, index, newTransforms, direction) => direction === "output" ? getOutputObjectModes(objectMode, index, newTransforms) : getInputObjectModes(objectMode, index, newTransforms);
    getOutputObjectModes = (objectMode, index, newTransforms) => {
      const writableObjectMode = index !== 0 && newTransforms[index - 1].value.readableObjectMode;
      const readableObjectMode = objectMode ?? writableObjectMode;
      return { writableObjectMode, readableObjectMode };
    };
    getInputObjectModes = (objectMode, index, newTransforms) => {
      const writableObjectMode = index === 0 ? objectMode === true : newTransforms[index - 1].value.readableObjectMode;
      const readableObjectMode = index !== newTransforms.length - 1 && (objectMode ?? writableObjectMode);
      return { writableObjectMode, readableObjectMode };
    };
    getFdObjectMode = (stdioItems, direction) => {
      const lastTransform = stdioItems.findLast(({ type: type4 }) => TRANSFORM_TYPES.has(type4));
      if (lastTransform === void 0) {
        return false;
      }
      return direction === "input" ? lastTransform.value.writableObjectMode : lastTransform.value.readableObjectMode;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/transform/normalize.js
var normalizeTransforms, getTransforms, normalizeTransform, normalizeDuplex, normalizeTransformStream, normalizeGenerator, sortTransforms;
var init_normalize = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/transform/normalize.js"() {
    init_is_plain_obj();
    init_encoding_option();
    init_type2();
    init_object_mode();
    normalizeTransforms = (stdioItems, optionName, direction, options) => [
      ...stdioItems.filter(({ type: type4 }) => !TRANSFORM_TYPES.has(type4)),
      ...getTransforms(stdioItems, optionName, direction, options)
    ];
    getTransforms = (stdioItems, optionName, direction, { encoding }) => {
      const transforms = stdioItems.filter(({ type: type4 }) => TRANSFORM_TYPES.has(type4));
      const newTransforms = Array.from({ length: transforms.length });
      for (const [index, stdioItem] of Object.entries(transforms)) {
        newTransforms[index] = normalizeTransform({
          stdioItem,
          index: Number(index),
          newTransforms,
          optionName,
          direction,
          encoding
        });
      }
      return sortTransforms(newTransforms, direction);
    };
    normalizeTransform = ({ stdioItem, stdioItem: { type: type4 }, index, newTransforms, optionName, direction, encoding }) => {
      if (type4 === "duplex") {
        return normalizeDuplex({ stdioItem, optionName });
      }
      if (type4 === "webTransform") {
        return normalizeTransformStream({
          stdioItem,
          index,
          newTransforms,
          direction
        });
      }
      return normalizeGenerator({
        stdioItem,
        index,
        newTransforms,
        direction,
        encoding
      });
    };
    normalizeDuplex = ({
      stdioItem,
      stdioItem: {
        value: {
          transform: transform2,
          transform: { writableObjectMode, readableObjectMode },
          objectMode = readableObjectMode
        }
      },
      optionName
    }) => {
      if (objectMode && !readableObjectMode) {
        throw new TypeError(`The \`${optionName}.objectMode\` option can only be \`true\` if \`new Duplex({objectMode: true})\` is used.`);
      }
      if (!objectMode && readableObjectMode) {
        throw new TypeError(`The \`${optionName}.objectMode\` option cannot be \`false\` if \`new Duplex({objectMode: true})\` is used.`);
      }
      return {
        ...stdioItem,
        value: { transform: transform2, writableObjectMode, readableObjectMode }
      };
    };
    normalizeTransformStream = ({ stdioItem, stdioItem: { value }, index, newTransforms, direction }) => {
      const { transform: transform2, objectMode } = isPlainObject(value) ? value : { transform: value };
      const { writableObjectMode, readableObjectMode } = getTransformObjectModes(objectMode, index, newTransforms, direction);
      return {
        ...stdioItem,
        value: { transform: transform2, writableObjectMode, readableObjectMode }
      };
    };
    normalizeGenerator = ({ stdioItem, stdioItem: { value }, index, newTransforms, direction, encoding }) => {
      const {
        transform: transform2,
        final,
        binary: binaryOption = false,
        preserveNewlines = false,
        objectMode
      } = isPlainObject(value) ? value : { transform: value };
      const binary2 = binaryOption || BINARY_ENCODINGS.has(encoding);
      const { writableObjectMode, readableObjectMode } = getTransformObjectModes(objectMode, index, newTransforms, direction);
      return {
        ...stdioItem,
        value: {
          transform: transform2,
          final,
          binary: binary2,
          preserveNewlines,
          writableObjectMode,
          readableObjectMode
        }
      };
    };
    sortTransforms = (newTransforms, direction) => direction === "input" ? newTransforms.reverse() : newTransforms;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/stdio/direction.js
import process7 from "node:process";
var getStreamDirection, getStdioItemDirection, KNOWN_DIRECTIONS, anyDirection, alwaysInput, guessStreamDirection, getStandardStreamDirection, DEFAULT_DIRECTION;
var init_direction = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/stdio/direction.js"() {
    init_is_stream();
    init_type2();
    getStreamDirection = (stdioItems, fdNumber, optionName) => {
      const directions = stdioItems.map((stdioItem) => getStdioItemDirection(stdioItem, fdNumber));
      if (directions.includes("input") && directions.includes("output")) {
        throw new TypeError(`The \`${optionName}\` option must not be an array of both readable and writable values.`);
      }
      return directions.find(Boolean) ?? DEFAULT_DIRECTION;
    };
    getStdioItemDirection = ({ type: type4, value }, fdNumber) => KNOWN_DIRECTIONS[fdNumber] ?? guessStreamDirection[type4](value);
    KNOWN_DIRECTIONS = ["input", "output", "output"];
    anyDirection = () => void 0;
    alwaysInput = () => "input";
    guessStreamDirection = {
      generator: anyDirection,
      asyncGenerator: anyDirection,
      fileUrl: anyDirection,
      filePath: anyDirection,
      iterable: alwaysInput,
      asyncIterable: alwaysInput,
      uint8Array: alwaysInput,
      webStream: (value) => isWritableStream2(value) ? "output" : "input",
      nodeStream(value) {
        if (!isReadableStream(value, { checkOpen: false })) {
          return "output";
        }
        return isWritableStream(value, { checkOpen: false }) ? void 0 : "input";
      },
      webTransform: anyDirection,
      duplex: anyDirection,
      native(value) {
        const standardStreamDirection = getStandardStreamDirection(value);
        if (standardStreamDirection !== void 0) {
          return standardStreamDirection;
        }
        if (isStream(value, { checkOpen: false })) {
          return guessStreamDirection.nodeStream(value);
        }
      }
    };
    getStandardStreamDirection = (value) => {
      if ([0, process7.stdin].includes(value)) {
        return "input";
      }
      if ([1, 2, process7.stdout, process7.stderr].includes(value)) {
        return "output";
      }
    };
    DEFAULT_DIRECTION = "output";
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/ipc/array.js
var normalizeIpcStdioArray;
var init_array2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/ipc/array.js"() {
    normalizeIpcStdioArray = (stdioArray, ipc) => ipc && !stdioArray.includes("ipc") ? [...stdioArray, "ipc"] : stdioArray;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/stdio/stdio-option.js
var normalizeStdioOption, getStdioArray, hasAlias, addDefaultValue2, normalizeStdioSync, isOutputPipeOnly;
var init_stdio_option = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/stdio/stdio-option.js"() {
    init_standard_stream();
    init_array2();
    init_values2();
    normalizeStdioOption = ({ stdio, ipc, buffer: buffer3, ...options }, verboseInfo, isSync) => {
      const stdioArray = getStdioArray(stdio, options).map((stdioOption, fdNumber) => addDefaultValue2(stdioOption, fdNumber));
      return isSync ? normalizeStdioSync(stdioArray, buffer3, verboseInfo) : normalizeIpcStdioArray(stdioArray, ipc);
    };
    getStdioArray = (stdio, options) => {
      if (stdio === void 0) {
        return STANDARD_STREAMS_ALIASES.map((alias) => options[alias]);
      }
      if (hasAlias(options)) {
        throw new Error(`It's not possible to provide \`stdio\` in combination with one of ${STANDARD_STREAMS_ALIASES.map((alias) => `\`${alias}\``).join(", ")}`);
      }
      if (typeof stdio === "string") {
        return [stdio, stdio, stdio];
      }
      if (!Array.isArray(stdio)) {
        throw new TypeError(`Expected \`stdio\` to be of type \`string\` or \`Array\`, got \`${typeof stdio}\``);
      }
      const length = Math.max(stdio.length, STANDARD_STREAMS_ALIASES.length);
      return Array.from({ length }, (_, fdNumber) => stdio[fdNumber]);
    };
    hasAlias = (options) => STANDARD_STREAMS_ALIASES.some((alias) => options[alias] !== void 0);
    addDefaultValue2 = (stdioOption, fdNumber) => {
      if (Array.isArray(stdioOption)) {
        return stdioOption.map((item) => addDefaultValue2(item, fdNumber));
      }
      if (stdioOption === null || stdioOption === void 0) {
        return fdNumber >= STANDARD_STREAMS_ALIASES.length ? "ignore" : "pipe";
      }
      return stdioOption;
    };
    normalizeStdioSync = (stdioArray, buffer3, verboseInfo) => stdioArray.map((stdioOption, fdNumber) => !buffer3[fdNumber] && fdNumber !== 0 && !isFullVerbose(verboseInfo, fdNumber) && isOutputPipeOnly(stdioOption) ? "ignore" : stdioOption);
    isOutputPipeOnly = (stdioOption) => stdioOption === "pipe" || Array.isArray(stdioOption) && stdioOption.every((item) => item === "pipe");
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/stdio/native.js
import { readFileSync } from "node:fs";
import tty2 from "node:tty";
var handleNativeStream, handleNativeStreamSync, getTargetFd, getTargetFdNumber, handleNativeStreamAsync, getStandardStream;
var init_native = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/stdio/native.js"() {
    init_is_stream();
    init_standard_stream();
    init_uint_array();
    init_fd_options();
    handleNativeStream = ({ stdioItem, stdioItem: { type: type4 }, isStdioArray, fdNumber, direction, isSync }) => {
      if (!isStdioArray || type4 !== "native") {
        return stdioItem;
      }
      return isSync ? handleNativeStreamSync({ stdioItem, fdNumber, direction }) : handleNativeStreamAsync({ stdioItem, fdNumber });
    };
    handleNativeStreamSync = ({ stdioItem, stdioItem: { value, optionName }, fdNumber, direction }) => {
      const targetFd = getTargetFd({
        value,
        optionName,
        fdNumber,
        direction
      });
      if (targetFd !== void 0) {
        return targetFd;
      }
      if (isStream(value, { checkOpen: false })) {
        throw new TypeError(`The \`${optionName}: Stream\` option cannot both be an array and include a stream with synchronous methods.`);
      }
      return stdioItem;
    };
    getTargetFd = ({ value, optionName, fdNumber, direction }) => {
      const targetFdNumber = getTargetFdNumber(value, fdNumber);
      if (targetFdNumber === void 0) {
        return;
      }
      if (direction === "output") {
        return { type: "fileNumber", value: targetFdNumber, optionName };
      }
      if (tty2.isatty(targetFdNumber)) {
        throw new TypeError(`The \`${optionName}: ${serializeOptionValue(value)}\` option is invalid: it cannot be a TTY with synchronous methods.`);
      }
      return { type: "uint8Array", value: bufferToUint8Array(readFileSync(targetFdNumber)), optionName };
    };
    getTargetFdNumber = (value, fdNumber) => {
      if (value === "inherit") {
        return fdNumber;
      }
      if (typeof value === "number") {
        return value;
      }
      const standardStreamIndex = STANDARD_STREAMS.indexOf(value);
      if (standardStreamIndex !== -1) {
        return standardStreamIndex;
      }
    };
    handleNativeStreamAsync = ({ stdioItem, stdioItem: { value, optionName }, fdNumber }) => {
      if (value === "inherit") {
        return { type: "nodeStream", value: getStandardStream(fdNumber, value, optionName), optionName };
      }
      if (typeof value === "number") {
        return { type: "nodeStream", value: getStandardStream(value, value, optionName), optionName };
      }
      if (isStream(value, { checkOpen: false })) {
        return { type: "nodeStream", value, optionName };
      }
      return stdioItem;
    };
    getStandardStream = (fdNumber, value, optionName) => {
      const standardStream = STANDARD_STREAMS[fdNumber];
      if (standardStream === void 0) {
        throw new TypeError(`The \`${optionName}: ${value}\` option is invalid: no such standard stream.`);
      }
      return standardStream;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/stdio/input-option.js
var handleInputOptions, handleInputOption, getInputType, handleInputFileOption, getInputFileType;
var init_input_option = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/stdio/input-option.js"() {
    init_is_stream();
    init_uint_array();
    init_type2();
    handleInputOptions = ({ input, inputFile }, fdNumber) => fdNumber === 0 ? [
      ...handleInputOption(input),
      ...handleInputFileOption(inputFile)
    ] : [];
    handleInputOption = (input) => input === void 0 ? [] : [{
      type: getInputType(input),
      value: input,
      optionName: "input"
    }];
    getInputType = (input) => {
      if (isReadableStream(input, { checkOpen: false })) {
        return "nodeStream";
      }
      if (typeof input === "string") {
        return "string";
      }
      if (isUint8Array(input)) {
        return "uint8Array";
      }
      throw new Error("The `input` option must be a string, a Uint8Array or a Node.js Readable stream.");
    };
    handleInputFileOption = (inputFile) => inputFile === void 0 ? [] : [{
      ...getInputFileType(inputFile),
      optionName: "inputFile"
    }];
    getInputFileType = (inputFile) => {
      if (isUrl(inputFile)) {
        return { type: "fileUrl", value: inputFile };
      }
      if (isFilePathString(inputFile)) {
        return { type: "filePath", value: { file: inputFile } };
      }
      throw new Error("The `inputFile` option must be a file path string or a file URL.");
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/stdio/duplicate.js
var filterDuplicates, getDuplicateStream, getOtherStdioItems, validateDuplicateStreamSync, getDuplicateStreamInstance, hasSameValue, validateDuplicateTransform, throwOnDuplicateStream;
var init_duplicate = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/stdio/duplicate.js"() {
    init_type2();
    filterDuplicates = (stdioItems) => stdioItems.filter((stdioItemOne, indexOne) => stdioItems.every((stdioItemTwo, indexTwo) => stdioItemOne.value !== stdioItemTwo.value || indexOne >= indexTwo || stdioItemOne.type === "generator" || stdioItemOne.type === "asyncGenerator"));
    getDuplicateStream = ({ stdioItem: { type: type4, value, optionName }, direction, fileDescriptors, isSync }) => {
      const otherStdioItems = getOtherStdioItems(fileDescriptors, type4);
      if (otherStdioItems.length === 0) {
        return;
      }
      if (isSync) {
        validateDuplicateStreamSync({
          otherStdioItems,
          type: type4,
          value,
          optionName,
          direction
        });
        return;
      }
      if (SPECIAL_DUPLICATE_TYPES.has(type4)) {
        return getDuplicateStreamInstance({
          otherStdioItems,
          type: type4,
          value,
          optionName,
          direction
        });
      }
      if (FORBID_DUPLICATE_TYPES.has(type4)) {
        validateDuplicateTransform({
          otherStdioItems,
          type: type4,
          value,
          optionName
        });
      }
    };
    getOtherStdioItems = (fileDescriptors, type4) => fileDescriptors.flatMap(({ direction, stdioItems }) => stdioItems.filter((stdioItem) => stdioItem.type === type4).map(((stdioItem) => ({ ...stdioItem, direction }))));
    validateDuplicateStreamSync = ({ otherStdioItems, type: type4, value, optionName, direction }) => {
      if (SPECIAL_DUPLICATE_TYPES_SYNC.has(type4)) {
        getDuplicateStreamInstance({
          otherStdioItems,
          type: type4,
          value,
          optionName,
          direction
        });
      }
    };
    getDuplicateStreamInstance = ({ otherStdioItems, type: type4, value, optionName, direction }) => {
      const duplicateStdioItems = otherStdioItems.filter((stdioItem) => hasSameValue(stdioItem, value));
      if (duplicateStdioItems.length === 0) {
        return;
      }
      const differentStdioItem = duplicateStdioItems.find((stdioItem) => stdioItem.direction !== direction);
      throwOnDuplicateStream(differentStdioItem, optionName, type4);
      return direction === "output" ? duplicateStdioItems[0].stream : void 0;
    };
    hasSameValue = ({ type: type4, value }, secondValue) => {
      if (type4 === "filePath") {
        return value.file === secondValue.file;
      }
      if (type4 === "fileUrl") {
        return value.href === secondValue.href;
      }
      return value === secondValue;
    };
    validateDuplicateTransform = ({ otherStdioItems, type: type4, value, optionName }) => {
      const duplicateStdioItem = otherStdioItems.find(({ value: { transform: transform2 } }) => transform2 === value.transform);
      throwOnDuplicateStream(duplicateStdioItem, optionName, type4);
    };
    throwOnDuplicateStream = (stdioItem, optionName, type4) => {
      if (stdioItem !== void 0) {
        throw new TypeError(`The \`${stdioItem.optionName}\` and \`${optionName}\` options must not target ${TYPE_TO_MESSAGE[type4]} that is the same.`);
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/stdio/handle.js
var handleStdio, getFileDescriptor, initializeStdioItems, initializeStdioItem, validateStdioArray, INVALID_STDIO_ARRAY_OPTIONS, validateStreams, validateFileStdio, validateFileObjectMode, getFinalFileDescriptors, getFinalFileDescriptor, addStreamProperties, cleanupCustomStreams, forwardStdio;
var init_handle = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/stdio/handle.js"() {
    init_standard_stream();
    init_normalize();
    init_object_mode();
    init_type2();
    init_direction();
    init_stdio_option();
    init_native();
    init_input_option();
    init_duplicate();
    handleStdio = (addProperties3, options, verboseInfo, isSync) => {
      const stdio = normalizeStdioOption(options, verboseInfo, isSync);
      const initialFileDescriptors = stdio.map((stdioOption, fdNumber) => getFileDescriptor({
        stdioOption,
        fdNumber,
        options,
        isSync
      }));
      const fileDescriptors = getFinalFileDescriptors({
        initialFileDescriptors,
        addProperties: addProperties3,
        options,
        isSync
      });
      options.stdio = fileDescriptors.map(({ stdioItems }) => forwardStdio(stdioItems));
      return fileDescriptors;
    };
    getFileDescriptor = ({ stdioOption, fdNumber, options, isSync }) => {
      const optionName = getStreamName(fdNumber);
      const { stdioItems: initialStdioItems, isStdioArray } = initializeStdioItems({
        stdioOption,
        fdNumber,
        options,
        optionName
      });
      const direction = getStreamDirection(initialStdioItems, fdNumber, optionName);
      const stdioItems = initialStdioItems.map((stdioItem) => handleNativeStream({
        stdioItem,
        isStdioArray,
        fdNumber,
        direction,
        isSync
      }));
      const normalizedStdioItems = normalizeTransforms(stdioItems, optionName, direction, options);
      const objectMode = getFdObjectMode(normalizedStdioItems, direction);
      validateFileObjectMode(normalizedStdioItems, objectMode);
      return { direction, objectMode, stdioItems: normalizedStdioItems };
    };
    initializeStdioItems = ({ stdioOption, fdNumber, options, optionName }) => {
      const values = Array.isArray(stdioOption) ? stdioOption : [stdioOption];
      const initialStdioItems = [
        ...values.map((value) => initializeStdioItem(value, optionName)),
        ...handleInputOptions(options, fdNumber)
      ];
      const stdioItems = filterDuplicates(initialStdioItems);
      const isStdioArray = stdioItems.length > 1;
      validateStdioArray(stdioItems, isStdioArray, optionName);
      validateStreams(stdioItems);
      return { stdioItems, isStdioArray };
    };
    initializeStdioItem = (value, optionName) => ({
      type: getStdioItemType(value, optionName),
      value,
      optionName
    });
    validateStdioArray = (stdioItems, isStdioArray, optionName) => {
      if (stdioItems.length === 0) {
        throw new TypeError(`The \`${optionName}\` option must not be an empty array.`);
      }
      if (!isStdioArray) {
        return;
      }
      for (const { value, optionName: optionName2 } of stdioItems) {
        if (INVALID_STDIO_ARRAY_OPTIONS.has(value)) {
          throw new Error(`The \`${optionName2}\` option must not include \`${value}\`.`);
        }
      }
    };
    INVALID_STDIO_ARRAY_OPTIONS = /* @__PURE__ */ new Set(["ignore", "ipc"]);
    validateStreams = (stdioItems) => {
      for (const stdioItem of stdioItems) {
        validateFileStdio(stdioItem);
      }
    };
    validateFileStdio = ({ type: type4, value, optionName }) => {
      if (isRegularUrl(value)) {
        throw new TypeError(`The \`${optionName}: URL\` option must use the \`file:\` scheme.
For example, you can use the \`pathToFileURL()\` method of the \`url\` core module.`);
      }
      if (isUnknownStdioString(type4, value)) {
        throw new TypeError(`The \`${optionName}: { file: '...' }\` option must be used instead of \`${optionName}: '...'\`.`);
      }
    };
    validateFileObjectMode = (stdioItems, objectMode) => {
      if (!objectMode) {
        return;
      }
      const fileStdioItem = stdioItems.find(({ type: type4 }) => FILE_TYPES.has(type4));
      if (fileStdioItem !== void 0) {
        throw new TypeError(`The \`${fileStdioItem.optionName}\` option cannot use both files and transforms in objectMode.`);
      }
    };
    getFinalFileDescriptors = ({ initialFileDescriptors, addProperties: addProperties3, options, isSync }) => {
      const fileDescriptors = [];
      try {
        for (const fileDescriptor of initialFileDescriptors) {
          fileDescriptors.push(getFinalFileDescriptor({
            fileDescriptor,
            fileDescriptors,
            addProperties: addProperties3,
            options,
            isSync
          }));
        }
        return fileDescriptors;
      } catch (error) {
        cleanupCustomStreams(fileDescriptors);
        throw error;
      }
    };
    getFinalFileDescriptor = ({
      fileDescriptor: { direction, objectMode, stdioItems },
      fileDescriptors,
      addProperties: addProperties3,
      options,
      isSync
    }) => {
      const finalStdioItems = stdioItems.map((stdioItem) => addStreamProperties({
        stdioItem,
        addProperties: addProperties3,
        direction,
        options,
        fileDescriptors,
        isSync
      }));
      return { direction, objectMode, stdioItems: finalStdioItems };
    };
    addStreamProperties = ({ stdioItem, addProperties: addProperties3, direction, options, fileDescriptors, isSync }) => {
      const duplicateStream = getDuplicateStream({
        stdioItem,
        direction,
        fileDescriptors,
        isSync
      });
      if (duplicateStream !== void 0) {
        return { ...stdioItem, stream: duplicateStream };
      }
      return {
        ...stdioItem,
        ...addProperties3[direction][stdioItem.type](stdioItem, options)
      };
    };
    cleanupCustomStreams = (fileDescriptors) => {
      for (const { stdioItems } of fileDescriptors) {
        for (const { stream: stream2 } of stdioItems) {
          if (stream2 !== void 0 && !isStandardStream(stream2)) {
            stream2.destroy();
          }
        }
      }
    };
    forwardStdio = (stdioItems) => {
      if (stdioItems.length > 1) {
        return stdioItems.some(({ value: value2 }) => value2 === "overlapped") ? "overlapped" : "pipe";
      }
      const [{ type: type4, value }] = stdioItems;
      return type4 === "native" ? value : "pipe";
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/stdio/handle-sync.js
import { readFileSync as readFileSync2 } from "node:fs";
var handleStdioSync, forbiddenIfSync, forbiddenNativeIfSync, throwInvalidSyncValue, addProperties, addPropertiesSync;
var init_handle_sync = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/stdio/handle-sync.js"() {
    init_uint_array();
    init_handle();
    init_type2();
    handleStdioSync = (options, verboseInfo) => handleStdio(addPropertiesSync, options, verboseInfo, true);
    forbiddenIfSync = ({ type: type4, optionName }) => {
      throwInvalidSyncValue(optionName, TYPE_TO_MESSAGE[type4]);
    };
    forbiddenNativeIfSync = ({ optionName, value }) => {
      if (value === "ipc" || value === "overlapped") {
        throwInvalidSyncValue(optionName, `"${value}"`);
      }
      return {};
    };
    throwInvalidSyncValue = (optionName, value) => {
      throw new TypeError(`The \`${optionName}\` option cannot be ${value} with synchronous methods.`);
    };
    addProperties = {
      generator() {
      },
      asyncGenerator: forbiddenIfSync,
      webStream: forbiddenIfSync,
      nodeStream: forbiddenIfSync,
      webTransform: forbiddenIfSync,
      duplex: forbiddenIfSync,
      asyncIterable: forbiddenIfSync,
      native: forbiddenNativeIfSync
    };
    addPropertiesSync = {
      input: {
        ...addProperties,
        fileUrl: ({ value }) => ({ contents: [bufferToUint8Array(readFileSync2(value))] }),
        filePath: ({ value: { file } }) => ({ contents: [bufferToUint8Array(readFileSync2(file))] }),
        fileNumber: forbiddenIfSync,
        iterable: ({ value }) => ({ contents: [...value] }),
        string: ({ value }) => ({ contents: [value] }),
        uint8Array: ({ value }) => ({ contents: [value] })
      },
      output: {
        ...addProperties,
        fileUrl: ({ value }) => ({ path: value }),
        filePath: ({ value: { file, append } }) => ({ path: file, append }),
        fileNumber: ({ value }) => ({ path: value }),
        iterable: forbiddenIfSync,
        string: forbiddenIfSync,
        uint8Array: forbiddenIfSync
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/io/strip-newline.js
var stripNewline, getStripFinalNewline;
var init_strip_newline = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/io/strip-newline.js"() {
    init_strip_final_newline();
    stripNewline = (value, { stripFinalNewline: stripFinalNewline2 }, fdNumber) => getStripFinalNewline(stripFinalNewline2, fdNumber) && value !== void 0 && !Array.isArray(value) ? stripFinalNewline(value) : value;
    getStripFinalNewline = (stripFinalNewline2, fdNumber) => fdNumber === "all" ? stripFinalNewline2[1] || stripFinalNewline2[2] : stripFinalNewline2[fdNumber];
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/transform/split.js
var getSplitLinesGenerator, splitLinesSync, splitLinesItemSync, initializeSplitLines, splitGenerator, getNewlineLength, linesFinal, getAppendNewlineGenerator, appendNewlineGenerator, concatString, linesStringInfo, concatUint8Array, linesUint8ArrayInfo;
var init_split2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/transform/split.js"() {
    getSplitLinesGenerator = (binary2, preserveNewlines, skipped, state) => binary2 || skipped ? void 0 : initializeSplitLines(preserveNewlines, state);
    splitLinesSync = (chunk, preserveNewlines, objectMode) => objectMode ? chunk.flatMap((item) => splitLinesItemSync(item, preserveNewlines)) : splitLinesItemSync(chunk, preserveNewlines);
    splitLinesItemSync = (chunk, preserveNewlines) => {
      const { transform: transform2, final } = initializeSplitLines(preserveNewlines, {});
      return [...transform2(chunk), ...final()];
    };
    initializeSplitLines = (preserveNewlines, state) => {
      state.previousChunks = "";
      return {
        transform: splitGenerator.bind(void 0, state, preserveNewlines),
        final: linesFinal.bind(void 0, state)
      };
    };
    splitGenerator = function* (state, preserveNewlines, chunk) {
      if (typeof chunk !== "string") {
        yield chunk;
        return;
      }
      let { previousChunks } = state;
      let start = -1;
      for (let end = 0; end < chunk.length; end += 1) {
        if (chunk[end] === "\n") {
          const newlineLength = getNewlineLength(chunk, end, preserveNewlines, state);
          let line = chunk.slice(start + 1, end + 1 - newlineLength);
          if (previousChunks.length > 0) {
            line = concatString(previousChunks, line);
            previousChunks = "";
          }
          yield line;
          start = end;
        }
      }
      if (start !== chunk.length - 1) {
        previousChunks = concatString(previousChunks, chunk.slice(start + 1));
      }
      state.previousChunks = previousChunks;
    };
    getNewlineLength = (chunk, end, preserveNewlines, state) => {
      if (preserveNewlines) {
        return 0;
      }
      state.isWindowsNewline = end !== 0 && chunk[end - 1] === "\r";
      return state.isWindowsNewline ? 2 : 1;
    };
    linesFinal = function* ({ previousChunks }) {
      if (previousChunks.length > 0) {
        yield previousChunks;
      }
    };
    getAppendNewlineGenerator = ({ binary: binary2, preserveNewlines, readableObjectMode, state }) => binary2 || preserveNewlines || readableObjectMode ? void 0 : { transform: appendNewlineGenerator.bind(void 0, state) };
    appendNewlineGenerator = function* ({ isWindowsNewline = false }, chunk) {
      const { unixNewline, windowsNewline, LF: LF2, concatBytes } = typeof chunk === "string" ? linesStringInfo : linesUint8ArrayInfo;
      if (chunk.at(-1) === LF2) {
        yield chunk;
        return;
      }
      const newline = isWindowsNewline ? windowsNewline : unixNewline;
      yield concatBytes(chunk, newline);
    };
    concatString = (firstChunk, secondChunk) => `${firstChunk}${secondChunk}`;
    linesStringInfo = {
      windowsNewline: "\r\n",
      unixNewline: "\n",
      LF: "\n",
      concatBytes: concatString
    };
    concatUint8Array = (firstChunk, secondChunk) => {
      const chunk = new Uint8Array(firstChunk.length + secondChunk.length);
      chunk.set(firstChunk, 0);
      chunk.set(secondChunk, firstChunk.length);
      return chunk;
    };
    linesUint8ArrayInfo = {
      windowsNewline: new Uint8Array([13, 10]),
      unixNewline: new Uint8Array([10]),
      LF: 10,
      concatBytes: concatUint8Array
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/transform/validate.js
import { Buffer as Buffer2 } from "node:buffer";
var getValidateTransformInput, validateStringTransformInput, getValidateTransformReturn, validateObjectTransformReturn, validateStringTransformReturn, validateEmptyReturn;
var init_validate = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/transform/validate.js"() {
    init_uint_array();
    getValidateTransformInput = (writableObjectMode, optionName) => writableObjectMode ? void 0 : validateStringTransformInput.bind(void 0, optionName);
    validateStringTransformInput = function* (optionName, chunk) {
      if (typeof chunk !== "string" && !isUint8Array(chunk) && !Buffer2.isBuffer(chunk)) {
        throw new TypeError(`The \`${optionName}\` option's transform must use "objectMode: true" to receive as input: ${typeof chunk}.`);
      }
      yield chunk;
    };
    getValidateTransformReturn = (readableObjectMode, optionName) => readableObjectMode ? validateObjectTransformReturn.bind(void 0, optionName) : validateStringTransformReturn.bind(void 0, optionName);
    validateObjectTransformReturn = function* (optionName, chunk) {
      validateEmptyReturn(optionName, chunk);
      yield chunk;
    };
    validateStringTransformReturn = function* (optionName, chunk) {
      validateEmptyReturn(optionName, chunk);
      if (typeof chunk !== "string" && !isUint8Array(chunk)) {
        throw new TypeError(`The \`${optionName}\` option's function must yield a string or an Uint8Array, not ${typeof chunk}.`);
      }
      yield chunk;
    };
    validateEmptyReturn = (optionName, chunk) => {
      if (chunk === null || chunk === void 0) {
        throw new TypeError(`The \`${optionName}\` option's function must not call \`yield ${chunk}\`.
Instead, \`yield\` should either be called with a value, or not be called at all. For example:
  if (condition) { yield value; }`);
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/transform/encoding-transform.js
import { Buffer as Buffer3 } from "node:buffer";
import { StringDecoder as StringDecoder2 } from "node:string_decoder";
var getEncodingTransformGenerator, encodingUint8ArrayGenerator, encodingStringGenerator, encodingStringFinal;
var init_encoding_transform = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/transform/encoding-transform.js"() {
    init_uint_array();
    getEncodingTransformGenerator = (binary2, encoding, skipped) => {
      if (skipped) {
        return;
      }
      if (binary2) {
        return { transform: encodingUint8ArrayGenerator.bind(void 0, new TextEncoder()) };
      }
      const stringDecoder = new StringDecoder2(encoding);
      return {
        transform: encodingStringGenerator.bind(void 0, stringDecoder),
        final: encodingStringFinal.bind(void 0, stringDecoder)
      };
    };
    encodingUint8ArrayGenerator = function* (textEncoder5, chunk) {
      if (Buffer3.isBuffer(chunk)) {
        yield bufferToUint8Array(chunk);
      } else if (typeof chunk === "string") {
        yield textEncoder5.encode(chunk);
      } else {
        yield chunk;
      }
    };
    encodingStringGenerator = function* (stringDecoder, chunk) {
      yield isUint8Array(chunk) ? stringDecoder.write(chunk) : chunk;
    };
    encodingStringFinal = function* (stringDecoder) {
      const lastChunk = stringDecoder.end();
      if (lastChunk !== "") {
        yield lastChunk;
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/transform/run-async.js
import { callbackify } from "node:util";
var pushChunks, transformChunk, finalChunks, generatorFinalChunks, destroyTransform, identityGenerator;
var init_run_async = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/transform/run-async.js"() {
    pushChunks = callbackify(async (getChunks, state, getChunksArguments, transformStream) => {
      state.currentIterable = getChunks(...getChunksArguments);
      try {
        for await (const chunk of state.currentIterable) {
          transformStream.push(chunk);
        }
      } finally {
        delete state.currentIterable;
      }
    });
    transformChunk = async function* (chunk, generators, index) {
      if (index === generators.length) {
        yield chunk;
        return;
      }
      const { transform: transform2 = identityGenerator } = generators[index];
      for await (const transformedChunk of transform2(chunk)) {
        yield* transformChunk(transformedChunk, generators, index + 1);
      }
    };
    finalChunks = async function* (generators) {
      for (const [index, { final }] of Object.entries(generators)) {
        yield* generatorFinalChunks(final, Number(index), generators);
      }
    };
    generatorFinalChunks = async function* (final, index, generators) {
      if (final === void 0) {
        return;
      }
      for await (const finalChunk of final()) {
        yield* transformChunk(finalChunk, generators, index + 1);
      }
    };
    destroyTransform = callbackify(async ({ currentIterable }, error) => {
      if (currentIterable !== void 0) {
        await (error ? currentIterable.throw(error) : currentIterable.return());
        return;
      }
      if (error) {
        throw error;
      }
    });
    identityGenerator = function* (chunk) {
      yield chunk;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/transform/run-sync.js
var pushChunksSync, runTransformSync, transformChunkSync, finalChunksSync, generatorFinalChunksSync, identityGenerator2;
var init_run_sync = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/transform/run-sync.js"() {
    pushChunksSync = (getChunksSync, getChunksArguments, transformStream, done) => {
      try {
        for (const chunk of getChunksSync(...getChunksArguments)) {
          transformStream.push(chunk);
        }
        done();
      } catch (error) {
        done(error);
      }
    };
    runTransformSync = (generators, chunks) => [
      ...chunks.flatMap((chunk) => [...transformChunkSync(chunk, generators, 0)]),
      ...finalChunksSync(generators)
    ];
    transformChunkSync = function* (chunk, generators, index) {
      if (index === generators.length) {
        yield chunk;
        return;
      }
      const { transform: transform2 = identityGenerator2 } = generators[index];
      for (const transformedChunk of transform2(chunk)) {
        yield* transformChunkSync(transformedChunk, generators, index + 1);
      }
    };
    finalChunksSync = function* (generators) {
      for (const [index, { final }] of Object.entries(generators)) {
        yield* generatorFinalChunksSync(final, Number(index), generators);
      }
    };
    generatorFinalChunksSync = function* (final, index, generators) {
      if (final === void 0) {
        return;
      }
      for (const finalChunk of final()) {
        yield* transformChunkSync(finalChunk, generators, index + 1);
      }
    };
    identityGenerator2 = function* (chunk) {
      yield chunk;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/transform/generator.js
import { Transform, getDefaultHighWaterMark } from "node:stream";
var generatorToStream, runGeneratorsSync, addInternalGenerators;
var init_generator = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/transform/generator.js"() {
    init_type2();
    init_split2();
    init_validate();
    init_encoding_transform();
    init_run_async();
    init_run_sync();
    generatorToStream = ({
      value,
      value: { transform: transform2, final, writableObjectMode, readableObjectMode },
      optionName
    }, { encoding }) => {
      const state = {};
      const generators = addInternalGenerators(value, encoding, optionName);
      const transformAsync = isAsyncGenerator(transform2);
      const finalAsync = isAsyncGenerator(final);
      const transformMethod = transformAsync ? pushChunks.bind(void 0, transformChunk, state) : pushChunksSync.bind(void 0, transformChunkSync);
      const finalMethod = transformAsync || finalAsync ? pushChunks.bind(void 0, finalChunks, state) : pushChunksSync.bind(void 0, finalChunksSync);
      const destroyMethod = transformAsync || finalAsync ? destroyTransform.bind(void 0, state) : void 0;
      const stream2 = new Transform({
        writableObjectMode,
        writableHighWaterMark: getDefaultHighWaterMark(writableObjectMode),
        readableObjectMode,
        readableHighWaterMark: getDefaultHighWaterMark(readableObjectMode),
        transform(chunk, encoding2, done) {
          transformMethod([chunk, generators, 0], this, done);
        },
        flush(done) {
          finalMethod([generators], this, done);
        },
        destroy: destroyMethod
      });
      return { stream: stream2 };
    };
    runGeneratorsSync = (chunks, stdioItems, encoding, isInput) => {
      const generators = stdioItems.filter(({ type: type4 }) => type4 === "generator");
      const reversedGenerators = isInput ? generators.reverse() : generators;
      for (const { value, optionName } of reversedGenerators) {
        const generators2 = addInternalGenerators(value, encoding, optionName);
        chunks = runTransformSync(generators2, chunks);
      }
      return chunks;
    };
    addInternalGenerators = ({ transform: transform2, final, binary: binary2, writableObjectMode, readableObjectMode, preserveNewlines }, encoding, optionName) => {
      const state = {};
      return [
        { transform: getValidateTransformInput(writableObjectMode, optionName) },
        getEncodingTransformGenerator(binary2, encoding, writableObjectMode),
        getSplitLinesGenerator(binary2, preserveNewlines, writableObjectMode, state),
        { transform: transform2, final },
        { transform: getValidateTransformReturn(readableObjectMode, optionName) },
        getAppendNewlineGenerator({
          binary: binary2,
          preserveNewlines,
          readableObjectMode,
          state
        })
      ].filter(Boolean);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/io/input-sync.js
var addInputOptionsSync, getInputFdNumbers, addInputOptionSync, applySingleInputGeneratorsSync, validateSerializable;
var init_input_sync = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/io/input-sync.js"() {
    init_generator();
    init_uint_array();
    init_type2();
    addInputOptionsSync = (fileDescriptors, options) => {
      for (const fdNumber of getInputFdNumbers(fileDescriptors)) {
        addInputOptionSync(fileDescriptors, fdNumber, options);
      }
    };
    getInputFdNumbers = (fileDescriptors) => new Set(Object.entries(fileDescriptors).filter(([, { direction }]) => direction === "input").map(([fdNumber]) => Number(fdNumber)));
    addInputOptionSync = (fileDescriptors, fdNumber, options) => {
      const { stdioItems } = fileDescriptors[fdNumber];
      const allStdioItems = stdioItems.filter(({ contents }) => contents !== void 0);
      if (allStdioItems.length === 0) {
        return;
      }
      if (fdNumber !== 0) {
        const [{ type: type4, optionName }] = allStdioItems;
        throw new TypeError(`Only the \`stdin\` option, not \`${optionName}\`, can be ${TYPE_TO_MESSAGE[type4]} with synchronous methods.`);
      }
      const allContents = allStdioItems.map(({ contents }) => contents);
      const transformedContents = allContents.map((contents) => applySingleInputGeneratorsSync(contents, stdioItems));
      options.input = joinToUint8Array(transformedContents);
    };
    applySingleInputGeneratorsSync = (contents, stdioItems) => {
      const newContents = runGeneratorsSync(contents, stdioItems, "utf8", true);
      validateSerializable(newContents);
      return joinToUint8Array(newContents);
    };
    validateSerializable = (newContents) => {
      const invalidItem = newContents.find((item) => typeof item !== "string" && !isUint8Array(item));
      if (invalidItem !== void 0) {
        throw new TypeError(`The \`stdin\` option is invalid: when passing objects as input, a transform must be used to serialize them to strings or Uint8Arrays: ${invalidItem}.`);
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/verbose/output.js
var shouldLogOutput, fdUsesVerbose, PIPED_STDIO_VALUES, logLines, logLinesSync, isPipingStream, logLine;
var init_output = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/verbose/output.js"() {
    init_encoding_option();
    init_type2();
    init_log();
    init_values2();
    shouldLogOutput = ({ stdioItems, encoding, verboseInfo, fdNumber }) => fdNumber !== "all" && isFullVerbose(verboseInfo, fdNumber) && !BINARY_ENCODINGS.has(encoding) && fdUsesVerbose(fdNumber) && (stdioItems.some(({ type: type4, value }) => type4 === "native" && PIPED_STDIO_VALUES.has(value)) || stdioItems.every(({ type: type4 }) => TRANSFORM_TYPES.has(type4)));
    fdUsesVerbose = (fdNumber) => fdNumber === 1 || fdNumber === 2;
    PIPED_STDIO_VALUES = /* @__PURE__ */ new Set(["pipe", "overlapped"]);
    logLines = async (linesIterable, stream2, fdNumber, verboseInfo) => {
      for await (const line of linesIterable) {
        if (!isPipingStream(stream2)) {
          logLine(line, fdNumber, verboseInfo);
        }
      }
    };
    logLinesSync = (linesArray, fdNumber, verboseInfo) => {
      for (const line of linesArray) {
        logLine(line, fdNumber, verboseInfo);
      }
    };
    isPipingStream = (stream2) => stream2._readableState.pipes.length > 0;
    logLine = (line, fdNumber, verboseInfo) => {
      const verboseMessage = serializeVerboseMessage(line);
      verboseLog({
        type: "output",
        verboseMessage,
        fdNumber,
        verboseInfo
      });
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/io/output-sync.js
import { writeFileSync, appendFileSync } from "node:fs";
var transformOutputSync, transformOutputResultSync, runOutputGeneratorsSync, serializeChunks, logOutputSync, writeToFiles;
var init_output_sync = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/io/output-sync.js"() {
    init_output();
    init_generator();
    init_split2();
    init_uint_array();
    init_type2();
    init_max_buffer();
    transformOutputSync = ({ fileDescriptors, syncResult: { output }, options, isMaxBuffer, verboseInfo }) => {
      if (output === null) {
        return { output: Array.from({ length: 3 }) };
      }
      const state = {};
      const outputFiles = /* @__PURE__ */ new Set([]);
      const transformedOutput = output.map((result2, fdNumber) => transformOutputResultSync({
        result: result2,
        fileDescriptors,
        fdNumber,
        state,
        outputFiles,
        isMaxBuffer,
        verboseInfo
      }, options));
      return { output: transformedOutput, ...state };
    };
    transformOutputResultSync = ({ result: result2, fileDescriptors, fdNumber, state, outputFiles, isMaxBuffer, verboseInfo }, { buffer: buffer3, encoding, lines, stripFinalNewline: stripFinalNewline2, maxBuffer }) => {
      if (result2 === null) {
        return;
      }
      const truncatedResult = truncateMaxBufferSync(result2, isMaxBuffer, maxBuffer);
      const uint8ArrayResult = bufferToUint8Array(truncatedResult);
      const { stdioItems, objectMode } = fileDescriptors[fdNumber];
      const chunks = runOutputGeneratorsSync([uint8ArrayResult], stdioItems, encoding, state);
      const { serializedResult, finalResult = serializedResult } = serializeChunks({
        chunks,
        objectMode,
        encoding,
        lines,
        stripFinalNewline: stripFinalNewline2,
        fdNumber
      });
      logOutputSync({
        serializedResult,
        fdNumber,
        state,
        verboseInfo,
        encoding,
        stdioItems,
        objectMode
      });
      const returnedResult = buffer3[fdNumber] ? finalResult : void 0;
      try {
        if (state.error === void 0) {
          writeToFiles(serializedResult, stdioItems, outputFiles);
        }
        return returnedResult;
      } catch (error) {
        state.error = error;
        return returnedResult;
      }
    };
    runOutputGeneratorsSync = (chunks, stdioItems, encoding, state) => {
      try {
        return runGeneratorsSync(chunks, stdioItems, encoding, false);
      } catch (error) {
        state.error = error;
        return chunks;
      }
    };
    serializeChunks = ({ chunks, objectMode, encoding, lines, stripFinalNewline: stripFinalNewline2, fdNumber }) => {
      if (objectMode) {
        return { serializedResult: chunks };
      }
      if (encoding === "buffer") {
        return { serializedResult: joinToUint8Array(chunks) };
      }
      const serializedResult = joinToString(chunks, encoding);
      if (lines[fdNumber]) {
        return { serializedResult, finalResult: splitLinesSync(serializedResult, !stripFinalNewline2[fdNumber], objectMode) };
      }
      return { serializedResult };
    };
    logOutputSync = ({ serializedResult, fdNumber, state, verboseInfo, encoding, stdioItems, objectMode }) => {
      if (!shouldLogOutput({
        stdioItems,
        encoding,
        verboseInfo,
        fdNumber
      })) {
        return;
      }
      const linesArray = splitLinesSync(serializedResult, false, objectMode);
      try {
        logLinesSync(linesArray, fdNumber, verboseInfo);
      } catch (error) {
        state.error ??= error;
      }
    };
    writeToFiles = (serializedResult, stdioItems, outputFiles) => {
      for (const { path: path218, append } of stdioItems.filter(({ type: type4 }) => FILE_TYPES.has(type4))) {
        const pathString = typeof path218 === "string" ? path218 : path218.toString();
        if (append || outputFiles.has(pathString)) {
          appendFileSync(path218, serializedResult);
        } else {
          outputFiles.add(pathString);
          writeFileSync(path218, serializedResult);
        }
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/resolve/all-sync.js
var getAllSync;
var init_all_sync = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/resolve/all-sync.js"() {
    init_uint_array();
    init_strip_newline();
    getAllSync = ([, stdout, stderr], options) => {
      if (!options.all) {
        return;
      }
      if (stdout === void 0) {
        return stderr;
      }
      if (stderr === void 0) {
        return stdout;
      }
      if (Array.isArray(stdout)) {
        return Array.isArray(stderr) ? [...stdout, ...stderr] : [...stdout, stripNewline(stderr, options, "all")];
      }
      if (Array.isArray(stderr)) {
        return [stripNewline(stdout, options, "all"), ...stderr];
      }
      if (isUint8Array(stdout) && isUint8Array(stderr)) {
        return concatUint8Arrays([stdout, stderr]);
      }
      return `${stdout}${stderr}`;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/resolve/exit-async.js
import { once as once6 } from "node:events";
var waitForExit, waitForExitOrError, waitForSubprocessExit, waitForSuccessfulExit, isSubprocessErrorExit, isFailedExit;
var init_exit_async = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/resolve/exit-async.js"() {
    init_final_error();
    waitForExit = async (subprocess, context) => {
      const [exitCode, signal] = await waitForExitOrError(subprocess);
      context.isForcefullyTerminated ??= false;
      return [exitCode, signal];
    };
    waitForExitOrError = async (subprocess) => {
      const [spawnPayload, exitPayload] = await Promise.allSettled([
        once6(subprocess, "spawn"),
        once6(subprocess, "exit")
      ]);
      if (spawnPayload.status === "rejected") {
        return [];
      }
      return exitPayload.status === "rejected" ? waitForSubprocessExit(subprocess) : exitPayload.value;
    };
    waitForSubprocessExit = async (subprocess) => {
      try {
        return await once6(subprocess, "exit");
      } catch {
        return waitForSubprocessExit(subprocess);
      }
    };
    waitForSuccessfulExit = async (exitPromise) => {
      const [exitCode, signal] = await exitPromise;
      if (!isSubprocessErrorExit(exitCode, signal) && isFailedExit(exitCode, signal)) {
        throw new DiscardedError();
      }
      return [exitCode, signal];
    };
    isSubprocessErrorExit = (exitCode, signal) => exitCode === void 0 && signal === void 0;
    isFailedExit = (exitCode, signal) => exitCode !== 0 || signal !== null;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/resolve/exit-sync.js
var getExitResultSync, getResultError;
var init_exit_sync = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/resolve/exit-sync.js"() {
    init_final_error();
    init_max_buffer();
    init_exit_async();
    getExitResultSync = ({ error, status: exitCode, signal, output }, { maxBuffer }) => {
      const resultError = getResultError(error, exitCode, signal);
      const timedOut = resultError?.code === "ETIMEDOUT";
      const isMaxBuffer = isMaxBufferSync(resultError, output, maxBuffer);
      return {
        resultError,
        exitCode,
        signal,
        timedOut,
        isMaxBuffer
      };
    };
    getResultError = (error, exitCode, signal) => {
      if (error !== void 0) {
        return error;
      }
      return isFailedExit(exitCode, signal) ? new DiscardedError() : void 0;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/methods/main-sync.js
import { spawnSync } from "node:child_process";
var execaCoreSync, handleSyncArguments, normalizeSyncOptions, validateSyncOptions, throwInvalidSyncOption, spawnSubprocessSync, runSubprocessSync, normalizeSpawnSyncOptions, getSyncResult;
var init_main_sync = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/methods/main-sync.js"() {
    init_command();
    init_options2();
    init_shell();
    init_result();
    init_reject2();
    init_handle_sync();
    init_strip_newline();
    init_input_sync();
    init_output_sync();
    init_max_buffer();
    init_all_sync();
    init_exit_sync();
    execaCoreSync = (rawFile, rawArguments, rawOptions) => {
      const { file, commandArguments, command, escapedCommand, startTime, verboseInfo, options, fileDescriptors } = handleSyncArguments(rawFile, rawArguments, rawOptions);
      const result2 = spawnSubprocessSync({
        file,
        commandArguments,
        options,
        command,
        escapedCommand,
        verboseInfo,
        fileDescriptors,
        startTime
      });
      return handleResult(result2, verboseInfo, options);
    };
    handleSyncArguments = (rawFile, rawArguments, rawOptions) => {
      const { command, escapedCommand, startTime, verboseInfo } = handleCommand(rawFile, rawArguments, rawOptions);
      const syncOptions = normalizeSyncOptions(rawOptions);
      const { file, commandArguments, options } = normalizeOptions(rawFile, rawArguments, syncOptions);
      validateSyncOptions(options);
      const fileDescriptors = handleStdioSync(options, verboseInfo);
      return {
        file,
        commandArguments,
        command,
        escapedCommand,
        startTime,
        verboseInfo,
        options,
        fileDescriptors
      };
    };
    normalizeSyncOptions = (options) => options.node && !options.ipc ? { ...options, ipc: false } : options;
    validateSyncOptions = ({ ipc, ipcInput, detached, cancelSignal }) => {
      if (ipcInput) {
        throwInvalidSyncOption("ipcInput");
      }
      if (ipc) {
        throwInvalidSyncOption("ipc: true");
      }
      if (detached) {
        throwInvalidSyncOption("detached: true");
      }
      if (cancelSignal) {
        throwInvalidSyncOption("cancelSignal");
      }
    };
    throwInvalidSyncOption = (value) => {
      throw new TypeError(`The "${value}" option cannot be used with synchronous methods.`);
    };
    spawnSubprocessSync = ({ file, commandArguments, options, command, escapedCommand, verboseInfo, fileDescriptors, startTime }) => {
      const syncResult = runSubprocessSync({
        file,
        commandArguments,
        options,
        command,
        escapedCommand,
        fileDescriptors,
        startTime
      });
      if (syncResult.failed) {
        return syncResult;
      }
      const { resultError, exitCode, signal, timedOut, isMaxBuffer } = getExitResultSync(syncResult, options);
      const { output, error = resultError } = transformOutputSync({
        fileDescriptors,
        syncResult,
        options,
        isMaxBuffer,
        verboseInfo
      });
      const stdio = output.map((stdioOutput, fdNumber) => stripNewline(stdioOutput, options, fdNumber));
      const all = stripNewline(getAllSync(output, options), options, "all");
      return getSyncResult({
        error,
        exitCode,
        signal,
        timedOut,
        isMaxBuffer,
        stdio,
        all,
        options,
        command,
        escapedCommand,
        startTime
      });
    };
    runSubprocessSync = ({ file, commandArguments, options, command, escapedCommand, fileDescriptors, startTime }) => {
      try {
        addInputOptionsSync(fileDescriptors, options);
        const normalizedOptions = normalizeSpawnSyncOptions(options);
        return spawnSync(...concatenateShell(file, commandArguments, normalizedOptions));
      } catch (error) {
        return makeEarlyError({
          error,
          command,
          escapedCommand,
          fileDescriptors,
          options,
          startTime,
          isSync: true
        });
      }
    };
    normalizeSpawnSyncOptions = ({ encoding, maxBuffer, ...options }) => ({ ...options, encoding: "buffer", maxBuffer: getMaxBufferSync(maxBuffer) });
    getSyncResult = ({ error, exitCode, signal, timedOut, isMaxBuffer, stdio, all, options, command, escapedCommand, startTime }) => error === void 0 ? makeSuccessResult({
      command,
      escapedCommand,
      stdio,
      all,
      ipcOutput: [],
      options,
      startTime
    }) : makeError({
      error,
      command,
      escapedCommand,
      timedOut,
      isCanceled: false,
      isGracefullyCanceled: false,
      isMaxBuffer,
      isForcefullyTerminated: false,
      exitCode,
      signal,
      stdio,
      all,
      ipcOutput: [],
      options,
      startTime,
      isSync: true
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/ipc/get-one.js
import { once as once7, on as on2 } from "node:events";
var getOneMessage, getOneMessageAsync, getMessage, throwOnDisconnect2, throwOnStrictError;
var init_get_one = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/ipc/get-one.js"() {
    init_validation();
    init_forward();
    init_reference();
    getOneMessage = ({ anyProcess, channel, isSubprocess, ipc }, { reference = true, filter: filter14 } = {}) => {
      validateIpcMethod({
        methodName: "getOneMessage",
        isSubprocess,
        ipc,
        isConnected: isConnected(anyProcess)
      });
      return getOneMessageAsync({
        anyProcess,
        channel,
        isSubprocess,
        filter: filter14,
        reference
      });
    };
    getOneMessageAsync = async ({ anyProcess, channel, isSubprocess, filter: filter14, reference }) => {
      addReference(channel, reference);
      const ipcEmitter = getIpcEmitter(anyProcess, channel, isSubprocess);
      const controller = new AbortController();
      try {
        return await Promise.race([
          getMessage(ipcEmitter, filter14, controller),
          throwOnDisconnect2(ipcEmitter, isSubprocess, controller),
          throwOnStrictError(ipcEmitter, isSubprocess, controller)
        ]);
      } catch (error) {
        disconnect(anyProcess);
        throw error;
      } finally {
        controller.abort();
        removeReference(channel, reference);
      }
    };
    getMessage = async (ipcEmitter, filter14, { signal }) => {
      if (filter14 === void 0) {
        const [message] = await once7(ipcEmitter, "message", { signal });
        return message;
      }
      for await (const [message] of on2(ipcEmitter, "message", { signal })) {
        if (filter14(message)) {
          return message;
        }
      }
    };
    throwOnDisconnect2 = async (ipcEmitter, isSubprocess, { signal }) => {
      await once7(ipcEmitter, "disconnect", { signal });
      throwOnEarlyDisconnect(isSubprocess);
    };
    throwOnStrictError = async (ipcEmitter, isSubprocess, { signal }) => {
      const [error] = await once7(ipcEmitter, "strict:error", { signal });
      throw getStrictResponseError(error, isSubprocess);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/ipc/get-each.js
import { once as once8, on as on3 } from "node:events";
var getEachMessage, loopOnMessages, stopOnDisconnect, abortOnStrictError, iterateOnMessages, throwIfStrictError;
var init_get_each = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/ipc/get-each.js"() {
    init_validation();
    init_forward();
    init_reference();
    getEachMessage = ({ anyProcess, channel, isSubprocess, ipc }, { reference = true } = {}) => loopOnMessages({
      anyProcess,
      channel,
      isSubprocess,
      ipc,
      shouldAwait: !isSubprocess,
      reference
    });
    loopOnMessages = ({ anyProcess, channel, isSubprocess, ipc, shouldAwait, reference }) => {
      validateIpcMethod({
        methodName: "getEachMessage",
        isSubprocess,
        ipc,
        isConnected: isConnected(anyProcess)
      });
      addReference(channel, reference);
      const ipcEmitter = getIpcEmitter(anyProcess, channel, isSubprocess);
      const controller = new AbortController();
      const state = {};
      stopOnDisconnect(anyProcess, ipcEmitter, controller);
      abortOnStrictError({
        ipcEmitter,
        isSubprocess,
        controller,
        state
      });
      return iterateOnMessages({
        anyProcess,
        channel,
        ipcEmitter,
        isSubprocess,
        shouldAwait,
        controller,
        state,
        reference
      });
    };
    stopOnDisconnect = async (anyProcess, ipcEmitter, controller) => {
      try {
        await once8(ipcEmitter, "disconnect", { signal: controller.signal });
        controller.abort();
      } catch {
      }
    };
    abortOnStrictError = async ({ ipcEmitter, isSubprocess, controller, state }) => {
      try {
        const [error] = await once8(ipcEmitter, "strict:error", { signal: controller.signal });
        state.error = getStrictResponseError(error, isSubprocess);
        controller.abort();
      } catch {
      }
    };
    iterateOnMessages = async function* ({ anyProcess, channel, ipcEmitter, isSubprocess, shouldAwait, controller, state, reference }) {
      try {
        for await (const [message] of on3(ipcEmitter, "message", { signal: controller.signal })) {
          throwIfStrictError(state);
          yield message;
        }
      } catch {
        throwIfStrictError(state);
      } finally {
        controller.abort();
        removeReference(channel, reference);
        if (!isSubprocess) {
          disconnect(anyProcess);
        }
        if (shouldAwait) {
          await anyProcess;
        }
      }
    };
    throwIfStrictError = ({ error }) => {
      if (error) {
        throw error;
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/ipc/methods.js
import process8 from "node:process";
var addIpcMethods, getIpcExport, getIpcMethods;
var init_methods = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/ipc/methods.js"() {
    init_send();
    init_get_one();
    init_get_each();
    init_graceful();
    addIpcMethods = (subprocess, { ipc }) => {
      Object.assign(subprocess, getIpcMethods(subprocess, false, ipc));
    };
    getIpcExport = () => {
      const anyProcess = process8;
      const isSubprocess = true;
      const ipc = process8.channel !== void 0;
      return {
        ...getIpcMethods(anyProcess, isSubprocess, ipc),
        getCancelSignal: getCancelSignal.bind(void 0, {
          anyProcess,
          channel: anyProcess.channel,
          isSubprocess,
          ipc
        })
      };
    };
    getIpcMethods = (anyProcess, isSubprocess, ipc) => ({
      sendMessage: sendMessage.bind(void 0, {
        anyProcess,
        channel: anyProcess.channel,
        isSubprocess,
        ipc
      }),
      getOneMessage: getOneMessage.bind(void 0, {
        anyProcess,
        channel: anyProcess.channel,
        isSubprocess,
        ipc
      }),
      getEachMessage: getEachMessage.bind(void 0, {
        anyProcess,
        channel: anyProcess.channel,
        isSubprocess,
        ipc
      })
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/return/early-error.js
import { ChildProcess as ChildProcess2 } from "node:child_process";
import {
  PassThrough,
  Readable,
  Writable,
  Duplex
} from "node:stream";
var handleEarlyError, createDummyStreams, createDummyStream, readable, writable, duplex, handleDummyPromise;
var init_early_error = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/return/early-error.js"() {
    init_handle();
    init_result();
    init_reject2();
    handleEarlyError = ({ error, command, escapedCommand, fileDescriptors, options, startTime, verboseInfo }) => {
      cleanupCustomStreams(fileDescriptors);
      const subprocess = new ChildProcess2();
      createDummyStreams(subprocess, fileDescriptors);
      Object.assign(subprocess, { readable, writable, duplex });
      const earlyError = makeEarlyError({
        error,
        command,
        escapedCommand,
        fileDescriptors,
        options,
        startTime,
        isSync: false
      });
      const promise2 = handleDummyPromise(earlyError, verboseInfo, options);
      return { subprocess, promise: promise2 };
    };
    createDummyStreams = (subprocess, fileDescriptors) => {
      const stdin = createDummyStream();
      const stdout = createDummyStream();
      const stderr = createDummyStream();
      const extraStdio = Array.from({ length: fileDescriptors.length - 3 }, createDummyStream);
      const all = createDummyStream();
      const stdio = [stdin, stdout, stderr, ...extraStdio];
      Object.assign(subprocess, {
        stdin,
        stdout,
        stderr,
        all,
        stdio
      });
    };
    createDummyStream = () => {
      const stream2 = new PassThrough();
      stream2.end();
      return stream2;
    };
    readable = () => new Readable({ read() {
    } });
    writable = () => new Writable({ write() {
    } });
    duplex = () => new Duplex({ read() {
    }, write() {
    } });
    handleDummyPromise = async (error, verboseInfo, options) => handleResult(error, verboseInfo, options);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/stdio/handle-async.js
import { createReadStream, createWriteStream } from "node:fs";
import { Buffer as Buffer4 } from "node:buffer";
import { Readable as Readable2, Writable as Writable2, Duplex as Duplex2 } from "node:stream";
var handleStdioAsync, forbiddenIfAsync, addProperties2, addPropertiesAsync;
var init_handle_async = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/stdio/handle-async.js"() {
    init_generator();
    init_handle();
    init_type2();
    handleStdioAsync = (options, verboseInfo) => handleStdio(addPropertiesAsync, options, verboseInfo, false);
    forbiddenIfAsync = ({ type: type4, optionName }) => {
      throw new TypeError(`The \`${optionName}\` option cannot be ${TYPE_TO_MESSAGE[type4]}.`);
    };
    addProperties2 = {
      fileNumber: forbiddenIfAsync,
      generator: generatorToStream,
      asyncGenerator: generatorToStream,
      nodeStream: ({ value }) => ({ stream: value }),
      webTransform({ value: { transform: transform2, writableObjectMode, readableObjectMode } }) {
        const objectMode = writableObjectMode || readableObjectMode;
        const stream2 = Duplex2.fromWeb(transform2, { objectMode });
        return { stream: stream2 };
      },
      duplex: ({ value: { transform: transform2 } }) => ({ stream: transform2 }),
      native() {
      }
    };
    addPropertiesAsync = {
      input: {
        ...addProperties2,
        fileUrl: ({ value }) => ({ stream: createReadStream(value) }),
        filePath: ({ value: { file } }) => ({ stream: createReadStream(file) }),
        webStream: ({ value }) => ({ stream: Readable2.fromWeb(value) }),
        iterable: ({ value }) => ({ stream: Readable2.from(value) }),
        asyncIterable: ({ value }) => ({ stream: Readable2.from(value) }),
        string: ({ value }) => ({ stream: Readable2.from(value) }),
        uint8Array: ({ value }) => ({ stream: Readable2.from(Buffer4.from(value)) })
      },
      output: {
        ...addProperties2,
        fileUrl: ({ value }) => ({ stream: createWriteStream(value) }),
        filePath: ({ value: { file, append } }) => ({ stream: createWriteStream(file, append ? { flags: "a" } : {}) }),
        webStream: ({ value }) => ({ stream: Writable2.fromWeb(value) }),
        iterable: forbiddenIfAsync,
        asyncIterable: forbiddenIfAsync,
        string: forbiddenIfAsync,
        uint8Array: forbiddenIfAsync
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sindresorhus/merge-streams/4.0.0/0641d857f166ebc3bf33f6e39000d856d38ad6c73ed43a4a36332ce91a0bedc9/node_modules/@sindresorhus/merge-streams/index.js
import { on as on4, once as once9 } from "node:events";
import { PassThrough as PassThroughStream, getDefaultHighWaterMark as getDefaultHighWaterMark2 } from "node:stream";
import { finished as finished2 } from "node:stream/promises";
function mergeStreams(streams) {
  if (!Array.isArray(streams)) {
    throw new TypeError(`Expected an array, got \`${typeof streams}\`.`);
  }
  for (const stream2 of streams) {
    validateStream(stream2);
  }
  const objectMode = streams.some(({ readableObjectMode }) => readableObjectMode);
  const highWaterMark = getHighWaterMark(streams, objectMode);
  const passThroughStream = new MergedStream({
    objectMode,
    writableHighWaterMark: highWaterMark,
    readableHighWaterMark: highWaterMark
  });
  for (const stream2 of streams) {
    passThroughStream.add(stream2);
  }
  return passThroughStream;
}
var getHighWaterMark, MergedStream, onMergedStreamFinished, onMergedStreamEnd, onInputStreamsUnpipe, validateStream, endWhenStreamsDone, afterMergedStreamFinished, onInputStreamEnd, onInputStreamUnpipe, endStream, errorOrAbortStream, isAbortError, abortStream, errorStream, noop2, updateMaxListeners, PASSTHROUGH_LISTENERS_COUNT, PASSTHROUGH_LISTENERS_PER_STREAM;
var init_merge_streams = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@sindresorhus/merge-streams/4.0.0/0641d857f166ebc3bf33f6e39000d856d38ad6c73ed43a4a36332ce91a0bedc9/node_modules/@sindresorhus/merge-streams/index.js"() {
    getHighWaterMark = (streams, objectMode) => {
      if (streams.length === 0) {
        return getDefaultHighWaterMark2(objectMode);
      }
      const highWaterMarks = streams.filter(({ readableObjectMode }) => readableObjectMode === objectMode).map(({ readableHighWaterMark }) => readableHighWaterMark);
      return Math.max(...highWaterMarks);
    };
    MergedStream = class extends PassThroughStream {
      #streams = /* @__PURE__ */ new Set([]);
      #ended = /* @__PURE__ */ new Set([]);
      #aborted = /* @__PURE__ */ new Set([]);
      #onFinished;
      #unpipeEvent = /* @__PURE__ */ Symbol("unpipe");
      #streamPromises = /* @__PURE__ */ new WeakMap();
      add(stream2) {
        validateStream(stream2);
        if (this.#streams.has(stream2)) {
          return;
        }
        this.#streams.add(stream2);
        this.#onFinished ??= onMergedStreamFinished(this, this.#streams, this.#unpipeEvent);
        const streamPromise = endWhenStreamsDone({
          passThroughStream: this,
          stream: stream2,
          streams: this.#streams,
          ended: this.#ended,
          aborted: this.#aborted,
          onFinished: this.#onFinished,
          unpipeEvent: this.#unpipeEvent
        });
        this.#streamPromises.set(stream2, streamPromise);
        stream2.pipe(this, { end: false });
      }
      async remove(stream2) {
        validateStream(stream2);
        if (!this.#streams.has(stream2)) {
          return false;
        }
        const streamPromise = this.#streamPromises.get(stream2);
        if (streamPromise === void 0) {
          return false;
        }
        this.#streamPromises.delete(stream2);
        stream2.unpipe(this);
        await streamPromise;
        return true;
      }
    };
    onMergedStreamFinished = async (passThroughStream, streams, unpipeEvent) => {
      updateMaxListeners(passThroughStream, PASSTHROUGH_LISTENERS_COUNT);
      const controller = new AbortController();
      try {
        await Promise.race([
          onMergedStreamEnd(passThroughStream, controller),
          onInputStreamsUnpipe(passThroughStream, streams, unpipeEvent, controller)
        ]);
      } finally {
        controller.abort();
        updateMaxListeners(passThroughStream, -PASSTHROUGH_LISTENERS_COUNT);
      }
    };
    onMergedStreamEnd = async (passThroughStream, { signal }) => {
      try {
        await finished2(passThroughStream, { signal, cleanup: true });
      } catch (error) {
        errorOrAbortStream(passThroughStream, error);
        throw error;
      }
    };
    onInputStreamsUnpipe = async (passThroughStream, streams, unpipeEvent, { signal }) => {
      for await (const [unpipedStream] of on4(passThroughStream, "unpipe", { signal })) {
        if (streams.has(unpipedStream)) {
          unpipedStream.emit(unpipeEvent);
        }
      }
    };
    validateStream = (stream2) => {
      if (typeof stream2?.pipe !== "function") {
        throw new TypeError(`Expected a readable stream, got: \`${typeof stream2}\`.`);
      }
    };
    endWhenStreamsDone = async ({ passThroughStream, stream: stream2, streams, ended, aborted: aborted2, onFinished, unpipeEvent }) => {
      updateMaxListeners(passThroughStream, PASSTHROUGH_LISTENERS_PER_STREAM);
      const controller = new AbortController();
      try {
        await Promise.race([
          afterMergedStreamFinished(onFinished, stream2, controller),
          onInputStreamEnd({
            passThroughStream,
            stream: stream2,
            streams,
            ended,
            aborted: aborted2,
            controller
          }),
          onInputStreamUnpipe({
            stream: stream2,
            streams,
            ended,
            aborted: aborted2,
            unpipeEvent,
            controller
          })
        ]);
      } finally {
        controller.abort();
        updateMaxListeners(passThroughStream, -PASSTHROUGH_LISTENERS_PER_STREAM);
      }
      if (streams.size > 0 && streams.size === ended.size + aborted2.size) {
        if (ended.size === 0 && aborted2.size > 0) {
          abortStream(passThroughStream);
        } else {
          endStream(passThroughStream);
        }
      }
    };
    afterMergedStreamFinished = async (onFinished, stream2, { signal }) => {
      try {
        await onFinished;
        if (!signal.aborted) {
          abortStream(stream2);
        }
      } catch (error) {
        if (!signal.aborted) {
          errorOrAbortStream(stream2, error);
        }
      }
    };
    onInputStreamEnd = async ({ passThroughStream, stream: stream2, streams, ended, aborted: aborted2, controller: { signal } }) => {
      try {
        await finished2(stream2, {
          signal,
          cleanup: true,
          readable: true,
          writable: false
        });
        if (streams.has(stream2)) {
          ended.add(stream2);
        }
      } catch (error) {
        if (signal.aborted || !streams.has(stream2)) {
          return;
        }
        if (isAbortError(error)) {
          aborted2.add(stream2);
        } else {
          errorStream(passThroughStream, error);
        }
      }
    };
    onInputStreamUnpipe = async ({ stream: stream2, streams, ended, aborted: aborted2, unpipeEvent, controller: { signal } }) => {
      await once9(stream2, unpipeEvent, { signal });
      if (!stream2.readable) {
        return once9(signal, "abort", { signal });
      }
      streams.delete(stream2);
      ended.delete(stream2);
      aborted2.delete(stream2);
    };
    endStream = (stream2) => {
      if (stream2.writable) {
        stream2.end();
      }
    };
    errorOrAbortStream = (stream2, error) => {
      if (isAbortError(error)) {
        abortStream(stream2);
      } else {
        errorStream(stream2, error);
      }
    };
    isAbortError = (error) => error?.code === "ERR_STREAM_PREMATURE_CLOSE";
    abortStream = (stream2) => {
      if (stream2.readable || stream2.writable) {
        stream2.destroy();
      }
    };
    errorStream = (stream2, error) => {
      if (!stream2.destroyed) {
        stream2.once("error", noop2);
        stream2.destroy(error);
      }
    };
    noop2 = () => {
    };
    updateMaxListeners = (passThroughStream, increment2) => {
      const maxListeners = passThroughStream.getMaxListeners();
      if (maxListeners !== 0 && maxListeners !== Number.POSITIVE_INFINITY) {
        passThroughStream.setMaxListeners(maxListeners + increment2);
      }
    };
    PASSTHROUGH_LISTENERS_COUNT = 2;
    PASSTHROUGH_LISTENERS_PER_STREAM = 1;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/io/pipeline.js
import { finished as finished3 } from "node:stream/promises";
var pipeStreams, onSourceFinish, endDestinationStream, onDestinationFinish, abortSourceStream;
var init_pipeline = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/io/pipeline.js"() {
    init_standard_stream();
    pipeStreams = (source, destination) => {
      source.pipe(destination);
      onSourceFinish(source, destination);
      onDestinationFinish(source, destination);
    };
    onSourceFinish = async (source, destination) => {
      if (isStandardStream(source) || isStandardStream(destination)) {
        return;
      }
      try {
        await finished3(source, { cleanup: true, readable: true, writable: false });
      } catch {
      }
      endDestinationStream(destination);
    };
    endDestinationStream = (destination) => {
      if (destination.writable) {
        destination.end();
      }
    };
    onDestinationFinish = async (source, destination) => {
      if (isStandardStream(source) || isStandardStream(destination)) {
        return;
      }
      try {
        await finished3(destination, { cleanup: true, readable: false, writable: true });
      } catch {
      }
      abortSourceStream(source);
    };
    abortSourceStream = (source) => {
      if (source.readable) {
        source.destroy();
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/io/output-async.js
var pipeOutputAsync, pipeTransform, SUBPROCESS_STREAM_PROPERTIES, pipeStdioItem, setStandardStreamMaxListeners, MAX_LISTENERS_INCREMENT;
var init_output_async = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/io/output-async.js"() {
    init_merge_streams();
    init_standard_stream();
    init_max_listeners();
    init_type2();
    init_pipeline();
    pipeOutputAsync = (subprocess, fileDescriptors, controller) => {
      const pipeGroups = /* @__PURE__ */ new Map();
      for (const [fdNumber, { stdioItems, direction }] of Object.entries(fileDescriptors)) {
        for (const { stream: stream2 } of stdioItems.filter(({ type: type4 }) => TRANSFORM_TYPES.has(type4))) {
          pipeTransform(subprocess, stream2, direction, fdNumber);
        }
        for (const { stream: stream2 } of stdioItems.filter(({ type: type4 }) => !TRANSFORM_TYPES.has(type4))) {
          pipeStdioItem({
            subprocess,
            stream: stream2,
            direction,
            fdNumber,
            pipeGroups,
            controller
          });
        }
      }
      for (const [outputStream, inputStreams] of pipeGroups.entries()) {
        const inputStream = inputStreams.length === 1 ? inputStreams[0] : mergeStreams(inputStreams);
        pipeStreams(inputStream, outputStream);
      }
    };
    pipeTransform = (subprocess, stream2, direction, fdNumber) => {
      if (direction === "output") {
        pipeStreams(subprocess.stdio[fdNumber], stream2);
      } else {
        pipeStreams(stream2, subprocess.stdio[fdNumber]);
      }
      const streamProperty = SUBPROCESS_STREAM_PROPERTIES[fdNumber];
      if (streamProperty !== void 0) {
        subprocess[streamProperty] = stream2;
      }
      subprocess.stdio[fdNumber] = stream2;
    };
    SUBPROCESS_STREAM_PROPERTIES = ["stdin", "stdout", "stderr"];
    pipeStdioItem = ({ subprocess, stream: stream2, direction, fdNumber, pipeGroups, controller }) => {
      if (stream2 === void 0) {
        return;
      }
      setStandardStreamMaxListeners(stream2, controller);
      const [inputStream, outputStream] = direction === "output" ? [stream2, subprocess.stdio[fdNumber]] : [subprocess.stdio[fdNumber], stream2];
      const outputStreams = pipeGroups.get(inputStream) ?? [];
      pipeGroups.set(inputStream, [...outputStreams, outputStream]);
    };
    setStandardStreamMaxListeners = (stream2, { signal }) => {
      if (isStandardStream(stream2)) {
        incrementMaxListeners(stream2, MAX_LISTENERS_INCREMENT, signal);
      }
    };
    MAX_LISTENERS_INCREMENT = 2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/signal-exit/4.1.0/03c01b974932dd7697f8480d6655f349321edaf97b16deb799df3fcd267f2475/node_modules/signal-exit/dist/mjs/signals.js
var signals;
var init_signals2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/signal-exit/4.1.0/03c01b974932dd7697f8480d6655f349321edaf97b16deb799df3fcd267f2475/node_modules/signal-exit/dist/mjs/signals.js"() {
    signals = [];
    signals.push("SIGHUP", "SIGINT", "SIGTERM");
    if (process.platform !== "win32") {
      signals.push(
        "SIGALRM",
        "SIGABRT",
        "SIGVTALRM",
        "SIGXCPU",
        "SIGXFSZ",
        "SIGUSR2",
        "SIGTRAP",
        "SIGSYS",
        "SIGQUIT",
        "SIGIOT"
        // should detect profiler and enable/disable accordingly.
        // see #21
        // 'SIGPROF'
      );
    }
    if (process.platform === "linux") {
      signals.push("SIGIO", "SIGPOLL", "SIGPWR", "SIGSTKFLT");
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/signal-exit/4.1.0/03c01b974932dd7697f8480d6655f349321edaf97b16deb799df3fcd267f2475/node_modules/signal-exit/dist/mjs/index.js
var processOk, kExitEmitter, global2, ObjectDefineProperty, Emitter, SignalExitBase, signalExitWrap, SignalExitFallback, SignalExit, process9, onExit, load2, unload;
var init_mjs = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/signal-exit/4.1.0/03c01b974932dd7697f8480d6655f349321edaf97b16deb799df3fcd267f2475/node_modules/signal-exit/dist/mjs/index.js"() {
    init_signals2();
    processOk = (process17) => !!process17 && typeof process17 === "object" && typeof process17.removeListener === "function" && typeof process17.emit === "function" && typeof process17.reallyExit === "function" && typeof process17.listeners === "function" && typeof process17.kill === "function" && typeof process17.pid === "number" && typeof process17.on === "function";
    kExitEmitter = /* @__PURE__ */ Symbol.for("signal-exit emitter");
    global2 = globalThis;
    ObjectDefineProperty = Object.defineProperty.bind(Object);
    Emitter = class {
      emitted = {
        afterExit: false,
        exit: false
      };
      listeners = {
        afterExit: [],
        exit: []
      };
      count = 0;
      id = Math.random();
      constructor() {
        if (global2[kExitEmitter]) {
          return global2[kExitEmitter];
        }
        ObjectDefineProperty(global2, kExitEmitter, {
          value: this,
          writable: false,
          enumerable: false,
          configurable: false
        });
      }
      on(ev, fn) {
        this.listeners[ev].push(fn);
      }
      removeListener(ev, fn) {
        const list2 = this.listeners[ev];
        const i2 = list2.indexOf(fn);
        if (i2 === -1) {
          return;
        }
        if (i2 === 0 && list2.length === 1) {
          list2.length = 0;
        } else {
          list2.splice(i2, 1);
        }
      }
      emit(ev, code, signal) {
        if (this.emitted[ev]) {
          return false;
        }
        this.emitted[ev] = true;
        let ret2 = false;
        for (const fn of this.listeners[ev]) {
          ret2 = fn(code, signal) === true || ret2;
        }
        if (ev === "exit") {
          ret2 = this.emit("afterExit", code, signal) || ret2;
        }
        return ret2;
      }
    };
    SignalExitBase = class {
    };
    signalExitWrap = (handler77) => {
      return {
        onExit(cb, opts2) {
          return handler77.onExit(cb, opts2);
        },
        load() {
          return handler77.load();
        },
        unload() {
          return handler77.unload();
        }
      };
    };
    SignalExitFallback = class extends SignalExitBase {
      onExit() {
        return () => {
        };
      }
      load() {
      }
      unload() {
      }
    };
    SignalExit = class extends SignalExitBase {
      // "SIGHUP" throws an `ENOSYS` error on Windows,
      // so use a supported signal instead
      /* c8 ignore start */
      #hupSig = process9.platform === "win32" ? "SIGINT" : "SIGHUP";
      /* c8 ignore stop */
      #emitter = new Emitter();
      #process;
      #originalProcessEmit;
      #originalProcessReallyExit;
      #sigListeners = {};
      #loaded = false;
      constructor(process17) {
        super();
        this.#process = process17;
        this.#sigListeners = {};
        for (const sig of signals) {
          this.#sigListeners[sig] = () => {
            const listeners = this.#process.listeners(sig);
            let { count: count2 } = this.#emitter;
            const p = process17;
            if (typeof p.__signal_exit_emitter__ === "object" && typeof p.__signal_exit_emitter__.count === "number") {
              count2 += p.__signal_exit_emitter__.count;
            }
            if (listeners.length === count2) {
              this.unload();
              const ret2 = this.#emitter.emit("exit", null, sig);
              const s = sig === "SIGHUP" ? this.#hupSig : sig;
              if (!ret2)
                process17.kill(process17.pid, s);
            }
          };
        }
        this.#originalProcessReallyExit = process17.reallyExit;
        this.#originalProcessEmit = process17.emit;
      }
      onExit(cb, opts2) {
        if (!processOk(this.#process)) {
          return () => {
          };
        }
        if (this.#loaded === false) {
          this.load();
        }
        const ev = opts2?.alwaysLast ? "afterExit" : "exit";
        this.#emitter.on(ev, cb);
        return () => {
          this.#emitter.removeListener(ev, cb);
          if (this.#emitter.listeners["exit"].length === 0 && this.#emitter.listeners["afterExit"].length === 0) {
            this.unload();
          }
        };
      }
      load() {
        if (this.#loaded) {
          return;
        }
        this.#loaded = true;
        this.#emitter.count += 1;
        for (const sig of signals) {
          try {
            const fn = this.#sigListeners[sig];
            if (fn)
              this.#process.on(sig, fn);
          } catch (_) {
          }
        }
        this.#process.emit = (ev, ...a2) => {
          return this.#processEmit(ev, ...a2);
        };
        this.#process.reallyExit = (code) => {
          return this.#processReallyExit(code);
        };
      }
      unload() {
        if (!this.#loaded) {
          return;
        }
        this.#loaded = false;
        signals.forEach((sig) => {
          const listener = this.#sigListeners[sig];
          if (!listener) {
            throw new Error("Listener not defined for signal: " + sig);
          }
          try {
            this.#process.removeListener(sig, listener);
          } catch (_) {
          }
        });
        this.#process.emit = this.#originalProcessEmit;
        this.#process.reallyExit = this.#originalProcessReallyExit;
        this.#emitter.count -= 1;
      }
      #processReallyExit(code) {
        if (!processOk(this.#process)) {
          return 0;
        }
        this.#process.exitCode = code || 0;
        this.#emitter.emit("exit", this.#process.exitCode, null);
        return this.#originalProcessReallyExit.call(this.#process, this.#process.exitCode);
      }
      #processEmit(ev, ...args) {
        const og = this.#originalProcessEmit;
        if (ev === "exit" && processOk(this.#process)) {
          if (typeof args[0] === "number") {
            this.#process.exitCode = args[0];
          }
          const ret2 = og.call(this.#process, ev, ...args);
          this.#emitter.emit("exit", this.#process.exitCode, null);
          return ret2;
        } else {
          return og.call(this.#process, ev, ...args);
        }
      }
    };
    process9 = globalThis.process;
    ({
      onExit: (
        /**
         * Called when the process is exiting, whether via signal, explicit
         * exit, or running out of stuff to do.
         *
         * If the global process object is not suitable for instrumentation,
         * then this will be a no-op.
         *
         * Returns a function that may be used to unload signal-exit.
         */
        onExit
      ),
      load: (
        /**
         * Load the listeners.  Likely you never need to call this, unless
         * doing a rather deep integration with signal-exit functionality.
         * Mostly exposed for the benefit of testing.
         *
         * @internal
         */
        load2
      ),
      unload: (
        /**
         * Unload the listeners.  Likely you never need to call this, unless
         * doing a rather deep integration with signal-exit functionality.
         * Mostly exposed for the benefit of testing.
         *
         * @internal
         */
        unload
      )
    } = signalExitWrap(processOk(process9) ? new SignalExit(process9) : new SignalExitFallback()));
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/terminate/cleanup.js
import { addAbortListener as addAbortListener2 } from "node:events";
var cleanupOnExit;
var init_cleanup = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/terminate/cleanup.js"() {
    init_mjs();
    cleanupOnExit = (subprocess, { cleanup, detached }, { signal }) => {
      if (!cleanup || detached) {
        return;
      }
      const removeExitHandler = onExit(() => {
        subprocess.kill();
      });
      addAbortListener2(signal, () => {
        removeExitHandler();
      });
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/pipe/pipe-arguments.js
var normalizePipeArguments, getDestinationStream, getDestination, mapDestinationArguments, getSourceStream;
var init_pipe_arguments = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/pipe/pipe-arguments.js"() {
    init_parameters();
    init_duration();
    init_fd_options();
    init_file_url();
    normalizePipeArguments = ({ source, sourcePromise, boundOptions, createNested }, ...pipeArguments) => {
      const startTime = getStartTime();
      const {
        destination,
        destinationStream,
        destinationError,
        from: from5,
        unpipeSignal
      } = getDestinationStream(boundOptions, createNested, pipeArguments);
      const { sourceStream, sourceError } = getSourceStream(source, from5);
      const { options: sourceOptions, fileDescriptors } = SUBPROCESS_OPTIONS.get(source);
      return {
        sourcePromise,
        sourceStream,
        sourceOptions,
        sourceError,
        destination,
        destinationStream,
        destinationError,
        unpipeSignal,
        fileDescriptors,
        startTime
      };
    };
    getDestinationStream = (boundOptions, createNested, pipeArguments) => {
      try {
        const {
          destination,
          pipeOptions: { from: from5, to, unpipeSignal } = {}
        } = getDestination(boundOptions, createNested, ...pipeArguments);
        const destinationStream = getToStream(destination, to);
        return {
          destination,
          destinationStream,
          from: from5,
          unpipeSignal
        };
      } catch (error) {
        return { destinationError: error };
      }
    };
    getDestination = (boundOptions, createNested, firstArgument, ...pipeArguments) => {
      if (Array.isArray(firstArgument)) {
        const destination = createNested(mapDestinationArguments, boundOptions)(firstArgument, ...pipeArguments);
        return { destination, pipeOptions: boundOptions };
      }
      if (typeof firstArgument === "string" || firstArgument instanceof URL || isDenoExecPath(firstArgument)) {
        if (Object.keys(boundOptions).length > 0) {
          throw new TypeError('Please use .pipe("file", ..., options) or .pipe(execa("file", ..., options)) instead of .pipe(options)("file", ...).');
        }
        const [rawFile, rawArguments, rawOptions] = normalizeParameters(firstArgument, ...pipeArguments);
        const destination = createNested(mapDestinationArguments)(rawFile, rawArguments, rawOptions);
        return { destination, pipeOptions: rawOptions };
      }
      if (SUBPROCESS_OPTIONS.has(firstArgument)) {
        if (Object.keys(boundOptions).length > 0) {
          throw new TypeError("Please use .pipe(options)`command` or .pipe($(options)`command`) instead of .pipe(options)($`command`).");
        }
        return { destination: firstArgument, pipeOptions: pipeArguments[0] };
      }
      throw new TypeError(`The first argument must be a template string, an options object, or an Execa subprocess: ${firstArgument}`);
    };
    mapDestinationArguments = ({ options }) => ({ options: { ...options, stdin: "pipe", piped: true } });
    getSourceStream = (source, from5) => {
      try {
        const sourceStream = getFromStream(source, from5);
        return { sourceStream };
      } catch (error) {
        return { sourceError: error };
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/pipe/throw.js
var handlePipeArgumentsError, getPipeArgumentsError, createNonCommandError, PIPE_COMMAND_MESSAGE;
var init_throw = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/pipe/throw.js"() {
    init_result();
    init_pipeline();
    handlePipeArgumentsError = ({
      sourceStream,
      sourceError,
      destinationStream,
      destinationError,
      fileDescriptors,
      sourceOptions,
      startTime
    }) => {
      const error = getPipeArgumentsError({
        sourceStream,
        sourceError,
        destinationStream,
        destinationError
      });
      if (error !== void 0) {
        throw createNonCommandError({
          error,
          fileDescriptors,
          sourceOptions,
          startTime
        });
      }
    };
    getPipeArgumentsError = ({ sourceStream, sourceError, destinationStream, destinationError }) => {
      if (sourceError !== void 0 && destinationError !== void 0) {
        return destinationError;
      }
      if (destinationError !== void 0) {
        abortSourceStream(sourceStream);
        return destinationError;
      }
      if (sourceError !== void 0) {
        endDestinationStream(destinationStream);
        return sourceError;
      }
    };
    createNonCommandError = ({ error, fileDescriptors, sourceOptions, startTime }) => makeEarlyError({
      error,
      command: PIPE_COMMAND_MESSAGE,
      escapedCommand: PIPE_COMMAND_MESSAGE,
      fileDescriptors,
      options: sourceOptions,
      startTime,
      isSync: false
    });
    PIPE_COMMAND_MESSAGE = "source.pipe(destination)";
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/pipe/sequence.js
var waitForBothSubprocesses;
var init_sequence2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/pipe/sequence.js"() {
    waitForBothSubprocesses = async (subprocessPromises) => {
      const [
        { status: sourceStatus, reason: sourceReason, value: sourceResult = sourceReason },
        { status: destinationStatus, reason: destinationReason, value: destinationResult = destinationReason }
      ] = await subprocessPromises;
      if (!destinationResult.pipedFrom.includes(sourceResult)) {
        destinationResult.pipedFrom.push(sourceResult);
      }
      if (destinationStatus === "rejected") {
        throw destinationResult;
      }
      if (sourceStatus === "rejected") {
        throw sourceResult;
      }
      return destinationResult;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/pipe/streaming.js
import { finished as finished4 } from "node:stream/promises";
var pipeSubprocessStream, pipeFirstSubprocessStream, pipeMoreSubprocessStream, cleanupMergedStreamsMap, MERGED_STREAMS, SOURCE_LISTENERS_PER_PIPE, DESTINATION_LISTENERS_PER_PIPE;
var init_streaming = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/pipe/streaming.js"() {
    init_merge_streams();
    init_max_listeners();
    init_pipeline();
    pipeSubprocessStream = (sourceStream, destinationStream, maxListenersController) => {
      const mergedStream = MERGED_STREAMS.has(destinationStream) ? pipeMoreSubprocessStream(sourceStream, destinationStream) : pipeFirstSubprocessStream(sourceStream, destinationStream);
      incrementMaxListeners(sourceStream, SOURCE_LISTENERS_PER_PIPE, maxListenersController.signal);
      incrementMaxListeners(destinationStream, DESTINATION_LISTENERS_PER_PIPE, maxListenersController.signal);
      cleanupMergedStreamsMap(destinationStream);
      return mergedStream;
    };
    pipeFirstSubprocessStream = (sourceStream, destinationStream) => {
      const mergedStream = mergeStreams([sourceStream]);
      pipeStreams(mergedStream, destinationStream);
      MERGED_STREAMS.set(destinationStream, mergedStream);
      return mergedStream;
    };
    pipeMoreSubprocessStream = (sourceStream, destinationStream) => {
      const mergedStream = MERGED_STREAMS.get(destinationStream);
      mergedStream.add(sourceStream);
      return mergedStream;
    };
    cleanupMergedStreamsMap = async (destinationStream) => {
      try {
        await finished4(destinationStream, { cleanup: true, readable: false, writable: true });
      } catch {
      }
      MERGED_STREAMS.delete(destinationStream);
    };
    MERGED_STREAMS = /* @__PURE__ */ new WeakMap();
    SOURCE_LISTENERS_PER_PIPE = 2;
    DESTINATION_LISTENERS_PER_PIPE = 1;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/pipe/abort.js
import { aborted } from "node:util";
var unpipeOnAbort, unpipeOnSignalAbort;
var init_abort = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/pipe/abort.js"() {
    init_throw();
    unpipeOnAbort = (unpipeSignal, unpipeContext) => unpipeSignal === void 0 ? [] : [unpipeOnSignalAbort(unpipeSignal, unpipeContext)];
    unpipeOnSignalAbort = async (unpipeSignal, { sourceStream, mergedStream, fileDescriptors, sourceOptions, startTime }) => {
      await aborted(unpipeSignal, sourceStream);
      await mergedStream.remove(sourceStream);
      const error = new Error("Pipe canceled by `unpipeSignal` option.");
      throw createNonCommandError({
        error,
        fileDescriptors,
        sourceOptions,
        startTime
      });
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/pipe/setup.js
var pipeToSubprocess, handlePipePromise, getSubprocessPromises;
var init_setup = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/pipe/setup.js"() {
    init_is_plain_obj();
    init_pipe_arguments();
    init_throw();
    init_sequence2();
    init_streaming();
    init_abort();
    pipeToSubprocess = (sourceInfo, ...pipeArguments) => {
      if (isPlainObject(pipeArguments[0])) {
        return pipeToSubprocess.bind(void 0, {
          ...sourceInfo,
          boundOptions: { ...sourceInfo.boundOptions, ...pipeArguments[0] }
        });
      }
      const { destination, ...normalizedInfo } = normalizePipeArguments(sourceInfo, ...pipeArguments);
      const promise2 = handlePipePromise({ ...normalizedInfo, destination });
      promise2.pipe = pipeToSubprocess.bind(void 0, {
        ...sourceInfo,
        source: destination,
        sourcePromise: promise2,
        boundOptions: {}
      });
      return promise2;
    };
    handlePipePromise = async ({
      sourcePromise,
      sourceStream,
      sourceOptions,
      sourceError,
      destination,
      destinationStream,
      destinationError,
      unpipeSignal,
      fileDescriptors,
      startTime
    }) => {
      const subprocessPromises = getSubprocessPromises(sourcePromise, destination);
      handlePipeArgumentsError({
        sourceStream,
        sourceError,
        destinationStream,
        destinationError,
        fileDescriptors,
        sourceOptions,
        startTime
      });
      const maxListenersController = new AbortController();
      try {
        const mergedStream = pipeSubprocessStream(sourceStream, destinationStream, maxListenersController);
        return await Promise.race([
          waitForBothSubprocesses(subprocessPromises),
          ...unpipeOnAbort(unpipeSignal, {
            sourceStream,
            mergedStream,
            sourceOptions,
            fileDescriptors,
            startTime
          })
        ]);
      } finally {
        maxListenersController.abort();
      }
    };
    getSubprocessPromises = (sourcePromise, destination) => Promise.allSettled([sourcePromise, destination]);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/io/iterate.js
import { on as on5 } from "node:events";
import { getDefaultHighWaterMark as getDefaultHighWaterMark3 } from "node:stream";
var iterateOnSubprocessStream, stopReadingOnExit, iterateForResult, stopReadingOnStreamEnd, iterateOnStream, DEFAULT_OBJECT_HIGH_WATER_MARK, HIGH_WATER_MARK, iterateOnData, getGenerators;
var init_iterate = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/io/iterate.js"() {
    init_encoding_transform();
    init_split2();
    init_run_sync();
    iterateOnSubprocessStream = ({ subprocessStdout, subprocess, binary: binary2, shouldEncode, encoding, preserveNewlines }) => {
      const controller = new AbortController();
      stopReadingOnExit(subprocess, controller);
      return iterateOnStream({
        stream: subprocessStdout,
        controller,
        binary: binary2,
        shouldEncode: !subprocessStdout.readableObjectMode && shouldEncode,
        encoding,
        shouldSplit: !subprocessStdout.readableObjectMode,
        preserveNewlines
      });
    };
    stopReadingOnExit = async (subprocess, controller) => {
      try {
        await subprocess;
      } catch {
      } finally {
        controller.abort();
      }
    };
    iterateForResult = ({ stream: stream2, onStreamEnd, lines, encoding, stripFinalNewline: stripFinalNewline2, allMixed }) => {
      const controller = new AbortController();
      stopReadingOnStreamEnd(onStreamEnd, controller, stream2);
      const objectMode = stream2.readableObjectMode && !allMixed;
      return iterateOnStream({
        stream: stream2,
        controller,
        binary: encoding === "buffer",
        shouldEncode: !objectMode,
        encoding,
        shouldSplit: !objectMode && lines,
        preserveNewlines: !stripFinalNewline2
      });
    };
    stopReadingOnStreamEnd = async (onStreamEnd, controller, stream2) => {
      try {
        await onStreamEnd;
      } catch {
        stream2.destroy();
      } finally {
        controller.abort();
      }
    };
    iterateOnStream = ({ stream: stream2, controller, binary: binary2, shouldEncode, encoding, shouldSplit, preserveNewlines }) => {
      const onStdoutChunk = on5(stream2, "data", {
        signal: controller.signal,
        highWaterMark: HIGH_WATER_MARK,
        // Backward compatibility with older name for this option
        // See https://github.com/nodejs/node/pull/52080#discussion_r1525227861
        // @todo Remove after removing support for Node 21
        highWatermark: HIGH_WATER_MARK
      });
      return iterateOnData({
        onStdoutChunk,
        controller,
        binary: binary2,
        shouldEncode,
        encoding,
        shouldSplit,
        preserveNewlines
      });
    };
    DEFAULT_OBJECT_HIGH_WATER_MARK = getDefaultHighWaterMark3(true);
    HIGH_WATER_MARK = DEFAULT_OBJECT_HIGH_WATER_MARK;
    iterateOnData = async function* ({ onStdoutChunk, controller, binary: binary2, shouldEncode, encoding, shouldSplit, preserveNewlines }) {
      const generators = getGenerators({
        binary: binary2,
        shouldEncode,
        encoding,
        shouldSplit,
        preserveNewlines
      });
      try {
        for await (const [chunk] of onStdoutChunk) {
          yield* transformChunkSync(chunk, generators, 0);
        }
      } catch (error) {
        if (!controller.signal.aborted) {
          throw error;
        }
      } finally {
        yield* finalChunksSync(generators);
      }
    };
    getGenerators = ({ binary: binary2, shouldEncode, encoding, shouldSplit, preserveNewlines }) => [
      getEncodingTransformGenerator(binary2, encoding, !shouldEncode),
      getSplitLinesGenerator(binary2, preserveNewlines, !shouldSplit, {})
    ].filter(Boolean);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/io/contents.js
import { setImmediate as setImmediate2 } from "node:timers/promises";
var getStreamOutput, logOutputAsync, resumeStream, getStreamContents2, getBufferedData, handleBufferedData;
var init_contents2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/io/contents.js"() {
    init_source();
    init_uint_array();
    init_output();
    init_iterate();
    init_max_buffer();
    init_strip_newline();
    getStreamOutput = async ({ stream: stream2, onStreamEnd, fdNumber, encoding, buffer: buffer3, maxBuffer, lines, allMixed, stripFinalNewline: stripFinalNewline2, verboseInfo, streamInfo }) => {
      const logPromise = logOutputAsync({
        stream: stream2,
        onStreamEnd,
        fdNumber,
        encoding,
        allMixed,
        verboseInfo,
        streamInfo
      });
      if (!buffer3) {
        await Promise.all([resumeStream(stream2), logPromise]);
        return;
      }
      const stripFinalNewlineValue = getStripFinalNewline(stripFinalNewline2, fdNumber);
      const iterable = iterateForResult({
        stream: stream2,
        onStreamEnd,
        lines,
        encoding,
        stripFinalNewline: stripFinalNewlineValue,
        allMixed
      });
      const [output] = await Promise.all([
        getStreamContents2({
          stream: stream2,
          iterable,
          fdNumber,
          encoding,
          maxBuffer,
          lines
        }),
        logPromise
      ]);
      return output;
    };
    logOutputAsync = async ({ stream: stream2, onStreamEnd, fdNumber, encoding, allMixed, verboseInfo, streamInfo: { fileDescriptors } }) => {
      if (!shouldLogOutput({
        stdioItems: fileDescriptors[fdNumber]?.stdioItems,
        encoding,
        verboseInfo,
        fdNumber
      })) {
        return;
      }
      const linesIterable = iterateForResult({
        stream: stream2,
        onStreamEnd,
        lines: true,
        encoding,
        stripFinalNewline: true,
        allMixed
      });
      await logLines(linesIterable, stream2, fdNumber, verboseInfo);
    };
    resumeStream = async (stream2) => {
      await setImmediate2();
      if (stream2.readableFlowing === null) {
        stream2.resume();
      }
    };
    getStreamContents2 = async ({ stream: stream2, stream: { readableObjectMode }, iterable, fdNumber, encoding, maxBuffer, lines }) => {
      try {
        if (readableObjectMode || lines) {
          return await getStreamAsArray(iterable, { maxBuffer });
        }
        if (encoding === "buffer") {
          return new Uint8Array(await getStreamAsArrayBuffer(iterable, { maxBuffer }));
        }
        return await getStreamAsString(iterable, { maxBuffer });
      } catch (error) {
        return handleBufferedData(handleMaxBuffer({
          error,
          stream: stream2,
          readableObjectMode,
          lines,
          encoding,
          fdNumber
        }));
      }
    };
    getBufferedData = async (streamPromise) => {
      try {
        return await streamPromise;
      } catch (error) {
        return handleBufferedData(error);
      }
    };
    handleBufferedData = ({ bufferedData }) => isArrayBuffer(bufferedData) ? new Uint8Array(bufferedData) : bufferedData;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/resolve/wait-stream.js
import { finished as finished5 } from "node:stream/promises";
var waitForStream, handleStdinDestroy, spyOnStdinDestroy, setStdinCleanedUp, handleStreamError, shouldIgnoreStreamError, isInputFileDescriptor, isStreamAbort, isStreamEpipe;
var init_wait_stream = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/resolve/wait-stream.js"() {
    waitForStream = async (stream2, fdNumber, streamInfo, { isSameDirection, stopOnExit = false } = {}) => {
      const state = handleStdinDestroy(stream2, streamInfo);
      const abortController = new AbortController();
      try {
        await Promise.race([
          ...stopOnExit ? [streamInfo.exitPromise] : [],
          finished5(stream2, { cleanup: true, signal: abortController.signal })
        ]);
      } catch (error) {
        if (!state.stdinCleanedUp) {
          handleStreamError(error, fdNumber, streamInfo, isSameDirection);
        }
      } finally {
        abortController.abort();
      }
    };
    handleStdinDestroy = (stream2, { originalStreams: [originalStdin], subprocess }) => {
      const state = { stdinCleanedUp: false };
      if (stream2 === originalStdin) {
        spyOnStdinDestroy(stream2, subprocess, state);
      }
      return state;
    };
    spyOnStdinDestroy = (subprocessStdin, subprocess, state) => {
      const { _destroy } = subprocessStdin;
      subprocessStdin._destroy = (...destroyArguments) => {
        setStdinCleanedUp(subprocess, state);
        _destroy.call(subprocessStdin, ...destroyArguments);
      };
    };
    setStdinCleanedUp = ({ exitCode, signalCode }, state) => {
      if (exitCode !== null || signalCode !== null) {
        state.stdinCleanedUp = true;
      }
    };
    handleStreamError = (error, fdNumber, streamInfo, isSameDirection) => {
      if (!shouldIgnoreStreamError(error, fdNumber, streamInfo, isSameDirection)) {
        throw error;
      }
    };
    shouldIgnoreStreamError = (error, fdNumber, streamInfo, isSameDirection = true) => {
      if (streamInfo.propagating) {
        return isStreamEpipe(error) || isStreamAbort(error);
      }
      streamInfo.propagating = true;
      return isInputFileDescriptor(streamInfo, fdNumber) === isSameDirection ? isStreamEpipe(error) : isStreamAbort(error);
    };
    isInputFileDescriptor = ({ fileDescriptors }, fdNumber) => fdNumber !== "all" && fileDescriptors[fdNumber].direction === "input";
    isStreamAbort = (error) => error?.code === "ERR_STREAM_PREMATURE_CLOSE";
    isStreamEpipe = (error) => error?.code === "EPIPE";
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/resolve/stdio.js
var waitForStdioStreams, waitForSubprocessStream;
var init_stdio = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/resolve/stdio.js"() {
    init_contents2();
    init_wait_stream();
    waitForStdioStreams = ({ subprocess, encoding, buffer: buffer3, maxBuffer, lines, stripFinalNewline: stripFinalNewline2, verboseInfo, streamInfo }) => subprocess.stdio.map((stream2, fdNumber) => waitForSubprocessStream({
      stream: stream2,
      fdNumber,
      encoding,
      buffer: buffer3[fdNumber],
      maxBuffer: maxBuffer[fdNumber],
      lines: lines[fdNumber],
      allMixed: false,
      stripFinalNewline: stripFinalNewline2,
      verboseInfo,
      streamInfo
    }));
    waitForSubprocessStream = async ({ stream: stream2, fdNumber, encoding, buffer: buffer3, maxBuffer, lines, allMixed, stripFinalNewline: stripFinalNewline2, verboseInfo, streamInfo }) => {
      if (!stream2) {
        return;
      }
      const onStreamEnd = waitForStream(stream2, fdNumber, streamInfo);
      if (isInputFileDescriptor(streamInfo, fdNumber)) {
        await onStreamEnd;
        return;
      }
      const [output] = await Promise.all([
        getStreamOutput({
          stream: stream2,
          onStreamEnd,
          fdNumber,
          encoding,
          buffer: buffer3,
          maxBuffer,
          lines,
          allMixed,
          stripFinalNewline: stripFinalNewline2,
          verboseInfo,
          streamInfo
        }),
        onStreamEnd
      ]);
      return output;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/resolve/all-async.js
var makeAllStream, waitForAllStream, getAllStream, getAllMixed;
var init_all_async = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/resolve/all-async.js"() {
    init_merge_streams();
    init_stdio();
    makeAllStream = ({ stdout, stderr }, { all }) => all && (stdout || stderr) ? mergeStreams([stdout, stderr].filter(Boolean)) : void 0;
    waitForAllStream = ({ subprocess, encoding, buffer: buffer3, maxBuffer, lines, stripFinalNewline: stripFinalNewline2, verboseInfo, streamInfo }) => waitForSubprocessStream({
      ...getAllStream(subprocess, buffer3),
      fdNumber: "all",
      encoding,
      maxBuffer: maxBuffer[1] + maxBuffer[2],
      lines: lines[1] || lines[2],
      allMixed: getAllMixed(subprocess),
      stripFinalNewline: stripFinalNewline2,
      verboseInfo,
      streamInfo
    });
    getAllStream = ({ stdout, stderr, all }, [, bufferStdout, bufferStderr]) => {
      const buffer3 = bufferStdout || bufferStderr;
      if (!buffer3) {
        return { stream: all, buffer: buffer3 };
      }
      if (!bufferStdout) {
        return { stream: stderr, buffer: buffer3 };
      }
      if (!bufferStderr) {
        return { stream: stdout, buffer: buffer3 };
      }
      return { stream: all, buffer: buffer3 };
    };
    getAllMixed = ({ all, stdout, stderr }) => all && stdout && stderr && stdout.readableObjectMode !== stderr.readableObjectMode;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/verbose/ipc.js
var shouldLogIpc, logIpcOutput;
var init_ipc = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/verbose/ipc.js"() {
    init_log();
    init_values2();
    shouldLogIpc = (verboseInfo) => isFullVerbose(verboseInfo, "ipc");
    logIpcOutput = (message, verboseInfo) => {
      const verboseMessage = serializeVerboseMessage(message);
      verboseLog({
        type: "ipc",
        verboseMessage,
        fdNumber: "ipc",
        verboseInfo
      });
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/ipc/buffer-messages.js
var waitForIpcOutput, getBufferedIpcOutput;
var init_buffer_messages = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/ipc/buffer-messages.js"() {
    init_max_buffer();
    init_ipc();
    init_specific();
    init_get_each();
    waitForIpcOutput = async ({
      subprocess,
      buffer: bufferArray,
      maxBuffer: maxBufferArray,
      ipc,
      ipcOutput,
      verboseInfo
    }) => {
      if (!ipc) {
        return ipcOutput;
      }
      const isVerbose2 = shouldLogIpc(verboseInfo);
      const buffer3 = getFdSpecificValue(bufferArray, "ipc");
      const maxBuffer = getFdSpecificValue(maxBufferArray, "ipc");
      for await (const message of loopOnMessages({
        anyProcess: subprocess,
        channel: subprocess.channel,
        isSubprocess: false,
        ipc,
        shouldAwait: false,
        reference: true
      })) {
        if (buffer3) {
          checkIpcMaxBuffer(subprocess, ipcOutput, maxBuffer);
          ipcOutput.push(message);
        }
        if (isVerbose2) {
          logIpcOutput(message, verboseInfo);
        }
      }
      return ipcOutput;
    };
    getBufferedIpcOutput = async (ipcOutputPromise, ipcOutput) => {
      await Promise.allSettled([ipcOutputPromise]);
      return ipcOutput;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/resolve/wait-subprocess.js
import { once as once10 } from "node:events";
var waitForSubprocessResult, waitForOriginalStreams, waitForCustomStreamsEnd, throwOnSubprocessError;
var init_wait_subprocess = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/resolve/wait-subprocess.js"() {
    init_is_stream();
    init_timeout();
    init_cancel();
    init_graceful2();
    init_standard_stream();
    init_type2();
    init_contents2();
    init_buffer_messages();
    init_ipc_input();
    init_all_async();
    init_stdio();
    init_exit_async();
    init_wait_stream();
    waitForSubprocessResult = async ({
      subprocess,
      options: {
        encoding,
        buffer: buffer3,
        maxBuffer,
        lines,
        timeoutDuration: timeout,
        cancelSignal,
        gracefulCancel,
        forceKillAfterDelay,
        stripFinalNewline: stripFinalNewline2,
        ipc,
        ipcInput
      },
      context,
      verboseInfo,
      fileDescriptors,
      originalStreams,
      onInternalError,
      controller
    }) => {
      const exitPromise = waitForExit(subprocess, context);
      const streamInfo = {
        originalStreams,
        fileDescriptors,
        subprocess,
        exitPromise,
        propagating: false
      };
      const stdioPromises = waitForStdioStreams({
        subprocess,
        encoding,
        buffer: buffer3,
        maxBuffer,
        lines,
        stripFinalNewline: stripFinalNewline2,
        verboseInfo,
        streamInfo
      });
      const allPromise = waitForAllStream({
        subprocess,
        encoding,
        buffer: buffer3,
        maxBuffer,
        lines,
        stripFinalNewline: stripFinalNewline2,
        verboseInfo,
        streamInfo
      });
      const ipcOutput = [];
      const ipcOutputPromise = waitForIpcOutput({
        subprocess,
        buffer: buffer3,
        maxBuffer,
        ipc,
        ipcOutput,
        verboseInfo
      });
      const originalPromises = waitForOriginalStreams(originalStreams, subprocess, streamInfo);
      const customStreamsEndPromises = waitForCustomStreamsEnd(fileDescriptors, streamInfo);
      try {
        return await Promise.race([
          Promise.all([
            {},
            waitForSuccessfulExit(exitPromise),
            Promise.all(stdioPromises),
            allPromise,
            ipcOutputPromise,
            sendIpcInput(subprocess, ipcInput),
            ...originalPromises,
            ...customStreamsEndPromises
          ]),
          onInternalError,
          throwOnSubprocessError(subprocess, controller),
          ...throwOnTimeout(subprocess, timeout, context, controller),
          ...throwOnCancel({
            subprocess,
            cancelSignal,
            gracefulCancel,
            context,
            controller
          }),
          ...throwOnGracefulCancel({
            subprocess,
            cancelSignal,
            gracefulCancel,
            forceKillAfterDelay,
            context,
            controller
          })
        ]);
      } catch (error) {
        context.terminationReason ??= "other";
        return Promise.all([
          { error },
          exitPromise,
          Promise.all(stdioPromises.map((stdioPromise) => getBufferedData(stdioPromise))),
          getBufferedData(allPromise),
          getBufferedIpcOutput(ipcOutputPromise, ipcOutput),
          Promise.allSettled(originalPromises),
          Promise.allSettled(customStreamsEndPromises)
        ]);
      }
    };
    waitForOriginalStreams = (originalStreams, subprocess, streamInfo) => originalStreams.map((stream2, fdNumber) => stream2 === subprocess.stdio[fdNumber] ? void 0 : waitForStream(stream2, fdNumber, streamInfo));
    waitForCustomStreamsEnd = (fileDescriptors, streamInfo) => fileDescriptors.flatMap(({ stdioItems }, fdNumber) => stdioItems.filter(({ value, stream: stream2 = value }) => isStream(stream2, { checkOpen: false }) && !isStandardStream(stream2)).map(({ type: type4, value, stream: stream2 = value }) => waitForStream(stream2, fdNumber, streamInfo, {
      isSameDirection: TRANSFORM_TYPES.has(type4),
      stopOnExit: type4 === "native"
    })));
    throwOnSubprocessError = async (subprocess, { signal }) => {
      const [error] = await once10(subprocess, "error", { signal });
      throw error;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/convert/concurrent.js
var initializeConcurrentStreams, addConcurrentStream, waitForConcurrentStreams;
var init_concurrent = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/convert/concurrent.js"() {
    init_deferred();
    initializeConcurrentStreams = () => ({
      readableDestroy: /* @__PURE__ */ new WeakMap(),
      writableFinal: /* @__PURE__ */ new WeakMap(),
      writableDestroy: /* @__PURE__ */ new WeakMap()
    });
    addConcurrentStream = (concurrentStreams, stream2, waitName) => {
      const weakMap = concurrentStreams[waitName];
      if (!weakMap.has(stream2)) {
        weakMap.set(stream2, []);
      }
      const promises = weakMap.get(stream2);
      const promise2 = createDeferred();
      promises.push(promise2);
      const resolve3 = promise2.resolve.bind(promise2);
      return { resolve: resolve3, promises };
    };
    waitForConcurrentStreams = async ({ resolve: resolve3, promises }, subprocess) => {
      resolve3();
      const [isSubprocessExit] = await Promise.race([
        Promise.allSettled([true, subprocess]),
        Promise.all([false, ...promises])
      ]);
      return !isSubprocessExit;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/convert/shared.js
import { finished as finished6 } from "node:stream/promises";
var safeWaitForSubprocessStdin, safeWaitForSubprocessStdout, waitForSubprocessStdin, waitForSubprocessStdout, waitForSubprocess, destroyOtherStream;
var init_shared = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/convert/shared.js"() {
    init_wait_stream();
    safeWaitForSubprocessStdin = async (subprocessStdin) => {
      if (subprocessStdin === void 0) {
        return;
      }
      try {
        await waitForSubprocessStdin(subprocessStdin);
      } catch {
      }
    };
    safeWaitForSubprocessStdout = async (subprocessStdout) => {
      if (subprocessStdout === void 0) {
        return;
      }
      try {
        await waitForSubprocessStdout(subprocessStdout);
      } catch {
      }
    };
    waitForSubprocessStdin = async (subprocessStdin) => {
      await finished6(subprocessStdin, { cleanup: true, readable: false, writable: true });
    };
    waitForSubprocessStdout = async (subprocessStdout) => {
      await finished6(subprocessStdout, { cleanup: true, readable: true, writable: false });
    };
    waitForSubprocess = async (subprocess, error) => {
      await subprocess;
      if (error) {
        throw error;
      }
    };
    destroyOtherStream = (stream2, isOpen, error) => {
      if (error && !isStreamAbort(error)) {
        stream2.destroy(error);
      } else if (isOpen) {
        stream2.destroy();
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/convert/readable.js
import { Readable as Readable3 } from "node:stream";
import { callbackify as callbackify2 } from "node:util";
var createReadable, getSubprocessStdout, getReadableOptions, getReadableMethods, onRead, onStdoutFinished, onReadableDestroy, destroyOtherReadable;
var init_readable = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/convert/readable.js"() {
    init_encoding_option();
    init_fd_options();
    init_iterate();
    init_deferred();
    init_concurrent();
    init_shared();
    createReadable = ({ subprocess, concurrentStreams, encoding }, { from: from5, binary: binaryOption = true, preserveNewlines = true } = {}) => {
      const binary2 = binaryOption || BINARY_ENCODINGS.has(encoding);
      const { subprocessStdout, waitReadableDestroy } = getSubprocessStdout(subprocess, from5, concurrentStreams);
      const { readableEncoding, readableObjectMode, readableHighWaterMark } = getReadableOptions(subprocessStdout, binary2);
      const { read: read2, onStdoutDataDone } = getReadableMethods({
        subprocessStdout,
        subprocess,
        binary: binary2,
        encoding,
        preserveNewlines
      });
      const readable2 = new Readable3({
        read: read2,
        destroy: callbackify2(onReadableDestroy.bind(void 0, { subprocessStdout, subprocess, waitReadableDestroy })),
        highWaterMark: readableHighWaterMark,
        objectMode: readableObjectMode,
        encoding: readableEncoding
      });
      onStdoutFinished({
        subprocessStdout,
        onStdoutDataDone,
        readable: readable2,
        subprocess
      });
      return readable2;
    };
    getSubprocessStdout = (subprocess, from5, concurrentStreams) => {
      const subprocessStdout = getFromStream(subprocess, from5);
      const waitReadableDestroy = addConcurrentStream(concurrentStreams, subprocessStdout, "readableDestroy");
      return { subprocessStdout, waitReadableDestroy };
    };
    getReadableOptions = ({ readableEncoding, readableObjectMode, readableHighWaterMark }, binary2) => binary2 ? { readableEncoding, readableObjectMode, readableHighWaterMark } : { readableEncoding, readableObjectMode: true, readableHighWaterMark: DEFAULT_OBJECT_HIGH_WATER_MARK };
    getReadableMethods = ({ subprocessStdout, subprocess, binary: binary2, encoding, preserveNewlines }) => {
      const onStdoutDataDone = createDeferred();
      const onStdoutData = iterateOnSubprocessStream({
        subprocessStdout,
        subprocess,
        binary: binary2,
        shouldEncode: !binary2,
        encoding,
        preserveNewlines
      });
      return {
        read() {
          onRead(this, onStdoutData, onStdoutDataDone);
        },
        onStdoutDataDone
      };
    };
    onRead = async (readable2, onStdoutData, onStdoutDataDone) => {
      try {
        const { value, done } = await onStdoutData.next();
        if (done) {
          onStdoutDataDone.resolve();
        } else {
          readable2.push(value);
        }
      } catch {
      }
    };
    onStdoutFinished = async ({ subprocessStdout, onStdoutDataDone, readable: readable2, subprocess, subprocessStdin }) => {
      try {
        await waitForSubprocessStdout(subprocessStdout);
        await subprocess;
        await safeWaitForSubprocessStdin(subprocessStdin);
        await onStdoutDataDone;
        if (readable2.readable) {
          readable2.push(null);
        }
      } catch (error) {
        await safeWaitForSubprocessStdin(subprocessStdin);
        destroyOtherReadable(readable2, error);
      }
    };
    onReadableDestroy = async ({ subprocessStdout, subprocess, waitReadableDestroy }, error) => {
      if (await waitForConcurrentStreams(waitReadableDestroy, subprocess)) {
        destroyOtherReadable(subprocessStdout, error);
        await waitForSubprocess(subprocess, error);
      }
    };
    destroyOtherReadable = (stream2, error) => {
      destroyOtherStream(stream2, stream2.readable, error);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/convert/writable.js
import { Writable as Writable3 } from "node:stream";
import { callbackify as callbackify3 } from "node:util";
var createWritable, getSubprocessStdin, getWritableMethods, onWrite, onWritableFinal, onStdinFinished, onWritableDestroy, destroyOtherWritable;
var init_writable = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/convert/writable.js"() {
    init_fd_options();
    init_concurrent();
    init_shared();
    createWritable = ({ subprocess, concurrentStreams }, { to } = {}) => {
      const { subprocessStdin, waitWritableFinal, waitWritableDestroy } = getSubprocessStdin(subprocess, to, concurrentStreams);
      const writable2 = new Writable3({
        ...getWritableMethods(subprocessStdin, subprocess, waitWritableFinal),
        destroy: callbackify3(onWritableDestroy.bind(void 0, {
          subprocessStdin,
          subprocess,
          waitWritableFinal,
          waitWritableDestroy
        })),
        highWaterMark: subprocessStdin.writableHighWaterMark,
        objectMode: subprocessStdin.writableObjectMode
      });
      onStdinFinished(subprocessStdin, writable2);
      return writable2;
    };
    getSubprocessStdin = (subprocess, to, concurrentStreams) => {
      const subprocessStdin = getToStream(subprocess, to);
      const waitWritableFinal = addConcurrentStream(concurrentStreams, subprocessStdin, "writableFinal");
      const waitWritableDestroy = addConcurrentStream(concurrentStreams, subprocessStdin, "writableDestroy");
      return { subprocessStdin, waitWritableFinal, waitWritableDestroy };
    };
    getWritableMethods = (subprocessStdin, subprocess, waitWritableFinal) => ({
      write: onWrite.bind(void 0, subprocessStdin),
      final: callbackify3(onWritableFinal.bind(void 0, subprocessStdin, subprocess, waitWritableFinal))
    });
    onWrite = (subprocessStdin, chunk, encoding, done) => {
      if (subprocessStdin.write(chunk, encoding)) {
        done();
      } else {
        subprocessStdin.once("drain", done);
      }
    };
    onWritableFinal = async (subprocessStdin, subprocess, waitWritableFinal) => {
      if (await waitForConcurrentStreams(waitWritableFinal, subprocess)) {
        if (subprocessStdin.writable) {
          subprocessStdin.end();
        }
        await subprocess;
      }
    };
    onStdinFinished = async (subprocessStdin, writable2, subprocessStdout) => {
      try {
        await waitForSubprocessStdin(subprocessStdin);
        if (writable2.writable) {
          writable2.end();
        }
      } catch (error) {
        await safeWaitForSubprocessStdout(subprocessStdout);
        destroyOtherWritable(writable2, error);
      }
    };
    onWritableDestroy = async ({ subprocessStdin, subprocess, waitWritableFinal, waitWritableDestroy }, error) => {
      await waitForConcurrentStreams(waitWritableFinal, subprocess);
      if (await waitForConcurrentStreams(waitWritableDestroy, subprocess)) {
        destroyOtherWritable(subprocessStdin, error);
        await waitForSubprocess(subprocess, error);
      }
    };
    destroyOtherWritable = (stream2, error) => {
      destroyOtherStream(stream2, stream2.writable, error);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/convert/duplex.js
import { Duplex as Duplex3 } from "node:stream";
import { callbackify as callbackify4 } from "node:util";
var createDuplex, onDuplexDestroy;
var init_duplex = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/convert/duplex.js"() {
    init_encoding_option();
    init_readable();
    init_writable();
    createDuplex = ({ subprocess, concurrentStreams, encoding }, { from: from5, to, binary: binaryOption = true, preserveNewlines = true } = {}) => {
      const binary2 = binaryOption || BINARY_ENCODINGS.has(encoding);
      const { subprocessStdout, waitReadableDestroy } = getSubprocessStdout(subprocess, from5, concurrentStreams);
      const { subprocessStdin, waitWritableFinal, waitWritableDestroy } = getSubprocessStdin(subprocess, to, concurrentStreams);
      const { readableEncoding, readableObjectMode, readableHighWaterMark } = getReadableOptions(subprocessStdout, binary2);
      const { read: read2, onStdoutDataDone } = getReadableMethods({
        subprocessStdout,
        subprocess,
        binary: binary2,
        encoding,
        preserveNewlines
      });
      const duplex2 = new Duplex3({
        read: read2,
        ...getWritableMethods(subprocessStdin, subprocess, waitWritableFinal),
        destroy: callbackify4(onDuplexDestroy.bind(void 0, {
          subprocessStdout,
          subprocessStdin,
          subprocess,
          waitReadableDestroy,
          waitWritableFinal,
          waitWritableDestroy
        })),
        readableHighWaterMark,
        writableHighWaterMark: subprocessStdin.writableHighWaterMark,
        readableObjectMode,
        writableObjectMode: subprocessStdin.writableObjectMode,
        encoding: readableEncoding
      });
      onStdoutFinished({
        subprocessStdout,
        onStdoutDataDone,
        readable: duplex2,
        subprocess,
        subprocessStdin
      });
      onStdinFinished(subprocessStdin, duplex2, subprocessStdout);
      return duplex2;
    };
    onDuplexDestroy = async ({ subprocessStdout, subprocessStdin, subprocess, waitReadableDestroy, waitWritableFinal, waitWritableDestroy }, error) => {
      await Promise.all([
        onReadableDestroy({ subprocessStdout, subprocess, waitReadableDestroy }, error),
        onWritableDestroy({
          subprocessStdin,
          subprocess,
          waitWritableFinal,
          waitWritableDestroy
        }, error)
      ]);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/convert/iterable.js
var createIterable, iterateOnStdoutData;
var init_iterable = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/convert/iterable.js"() {
    init_encoding_option();
    init_fd_options();
    init_iterate();
    createIterable = (subprocess, encoding, {
      from: from5,
      binary: binaryOption = false,
      preserveNewlines = false
    } = {}) => {
      const binary2 = binaryOption || BINARY_ENCODINGS.has(encoding);
      const subprocessStdout = getFromStream(subprocess, from5);
      const onStdoutData = iterateOnSubprocessStream({
        subprocessStdout,
        subprocess,
        binary: binary2,
        shouldEncode: true,
        encoding,
        preserveNewlines
      });
      return iterateOnStdoutData(onStdoutData, subprocessStdout, subprocess);
    };
    iterateOnStdoutData = async function* (onStdoutData, subprocessStdout, subprocess) {
      try {
        yield* onStdoutData;
      } finally {
        if (subprocessStdout.readable) {
          subprocessStdout.destroy();
        }
        await subprocess;
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/convert/add.js
var addConvertedStreams;
var init_add2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/convert/add.js"() {
    init_concurrent();
    init_readable();
    init_writable();
    init_duplex();
    init_iterable();
    addConvertedStreams = (subprocess, { encoding }) => {
      const concurrentStreams = initializeConcurrentStreams();
      subprocess.readable = createReadable.bind(void 0, { subprocess, concurrentStreams, encoding });
      subprocess.writable = createWritable.bind(void 0, { subprocess, concurrentStreams });
      subprocess.duplex = createDuplex.bind(void 0, { subprocess, concurrentStreams, encoding });
      subprocess.iterable = createIterable.bind(void 0, subprocess, encoding);
      subprocess[Symbol.asyncIterator] = createIterable.bind(void 0, subprocess, encoding, {});
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/methods/promise.js
var mergePromise, nativePromisePrototype, descriptors;
var init_promise = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/methods/promise.js"() {
    mergePromise = (subprocess, promise2) => {
      for (const [property, descriptor] of descriptors) {
        const value = descriptor.value.bind(promise2);
        Reflect.defineProperty(subprocess, property, { ...descriptor, value });
      }
    };
    nativePromisePrototype = (async () => {
    })().constructor.prototype;
    descriptors = ["then", "catch", "finally"].map((property) => [
      property,
      Reflect.getOwnPropertyDescriptor(nativePromisePrototype, property)
    ]);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/methods/main-async.js
import { setMaxListeners } from "node:events";
import { spawn } from "node:child_process";
var execaCoreAsync, handleAsyncArguments, handleAsyncOptions, spawnSubprocessAsync, handlePromise, getAsyncResult;
var init_main_async = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/methods/main-async.js"() {
    init_source();
    init_command();
    init_options2();
    init_fd_options();
    init_shell();
    init_methods();
    init_result();
    init_reject2();
    init_early_error();
    init_handle_async();
    init_strip_newline();
    init_output_async();
    init_kill();
    init_cleanup();
    init_setup();
    init_all_async();
    init_wait_subprocess();
    init_add2();
    init_deferred();
    init_promise();
    execaCoreAsync = (rawFile, rawArguments, rawOptions, createNested) => {
      const { file, commandArguments, command, escapedCommand, startTime, verboseInfo, options, fileDescriptors } = handleAsyncArguments(rawFile, rawArguments, rawOptions);
      const { subprocess, promise: promise2 } = spawnSubprocessAsync({
        file,
        commandArguments,
        options,
        startTime,
        verboseInfo,
        command,
        escapedCommand,
        fileDescriptors
      });
      subprocess.pipe = pipeToSubprocess.bind(void 0, {
        source: subprocess,
        sourcePromise: promise2,
        boundOptions: {},
        createNested
      });
      mergePromise(subprocess, promise2);
      SUBPROCESS_OPTIONS.set(subprocess, { options, fileDescriptors });
      return subprocess;
    };
    handleAsyncArguments = (rawFile, rawArguments, rawOptions) => {
      const { command, escapedCommand, startTime, verboseInfo } = handleCommand(rawFile, rawArguments, rawOptions);
      const { file, commandArguments, options: normalizedOptions } = normalizeOptions(rawFile, rawArguments, rawOptions);
      const options = handleAsyncOptions(normalizedOptions);
      const fileDescriptors = handleStdioAsync(options, verboseInfo);
      return {
        file,
        commandArguments,
        command,
        escapedCommand,
        startTime,
        verboseInfo,
        options,
        fileDescriptors
      };
    };
    handleAsyncOptions = ({ timeout, signal, ...options }) => {
      if (signal !== void 0) {
        throw new TypeError('The "signal" option has been renamed to "cancelSignal" instead.');
      }
      return { ...options, timeoutDuration: timeout };
    };
    spawnSubprocessAsync = ({ file, commandArguments, options, startTime, verboseInfo, command, escapedCommand, fileDescriptors }) => {
      let subprocess;
      try {
        subprocess = spawn(...concatenateShell(file, commandArguments, options));
      } catch (error) {
        return handleEarlyError({
          error,
          command,
          escapedCommand,
          fileDescriptors,
          options,
          startTime,
          verboseInfo
        });
      }
      const controller = new AbortController();
      setMaxListeners(Number.POSITIVE_INFINITY, controller.signal);
      const originalStreams = [...subprocess.stdio];
      pipeOutputAsync(subprocess, fileDescriptors, controller);
      cleanupOnExit(subprocess, options, controller);
      const context = {};
      const onInternalError = createDeferred();
      subprocess.kill = subprocessKill.bind(void 0, {
        kill: subprocess.kill.bind(subprocess),
        options,
        onInternalError,
        context,
        controller
      });
      subprocess.all = makeAllStream(subprocess, options);
      addConvertedStreams(subprocess, options);
      addIpcMethods(subprocess, options);
      const promise2 = handlePromise({
        subprocess,
        options,
        startTime,
        verboseInfo,
        fileDescriptors,
        originalStreams,
        command,
        escapedCommand,
        context,
        onInternalError,
        controller
      });
      return { subprocess, promise: promise2 };
    };
    handlePromise = async ({ subprocess, options, startTime, verboseInfo, fileDescriptors, originalStreams, command, escapedCommand, context, onInternalError, controller }) => {
      const [
        errorInfo,
        [exitCode, signal],
        stdioResults,
        allResult,
        ipcOutput
      ] = await waitForSubprocessResult({
        subprocess,
        options,
        context,
        verboseInfo,
        fileDescriptors,
        originalStreams,
        onInternalError,
        controller
      });
      controller.abort();
      onInternalError.resolve();
      const stdio = stdioResults.map((stdioResult, fdNumber) => stripNewline(stdioResult, options, fdNumber));
      const all = stripNewline(allResult, options, "all");
      const result2 = getAsyncResult({
        errorInfo,
        exitCode,
        signal,
        stdio,
        all,
        ipcOutput,
        context,
        options,
        command,
        escapedCommand,
        startTime
      });
      return handleResult(result2, verboseInfo, options);
    };
    getAsyncResult = ({ errorInfo, exitCode, signal, stdio, all, ipcOutput, context, options, command, escapedCommand, startTime }) => "error" in errorInfo ? makeError({
      error: errorInfo.error,
      command,
      escapedCommand,
      timedOut: context.terminationReason === "timeout",
      isCanceled: context.terminationReason === "cancel" || context.terminationReason === "gracefulCancel",
      isGracefullyCanceled: context.terminationReason === "gracefulCancel",
      isMaxBuffer: errorInfo.error instanceof MaxBufferError,
      isForcefullyTerminated: context.isForcefullyTerminated,
      exitCode,
      signal,
      stdio,
      all,
      ipcOutput,
      options,
      startTime,
      isSync: false
    }) : makeSuccessResult({
      command,
      escapedCommand,
      stdio,
      all,
      ipcOutput,
      options,
      startTime
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/methods/bind.js
var mergeOptions, mergeOption, DEEP_OPTIONS;
var init_bind2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/methods/bind.js"() {
    init_is_plain_obj();
    init_specific();
    mergeOptions = (boundOptions, options) => {
      const newOptions = Object.fromEntries(
        Object.entries(options).map(([optionName, optionValue]) => [
          optionName,
          mergeOption(optionName, boundOptions[optionName], optionValue)
        ])
      );
      return { ...boundOptions, ...newOptions };
    };
    mergeOption = (optionName, boundOptionValue, optionValue) => {
      if (DEEP_OPTIONS.has(optionName) && isPlainObject(boundOptionValue) && isPlainObject(optionValue)) {
        return { ...boundOptionValue, ...optionValue };
      }
      return optionValue;
    };
    DEEP_OPTIONS = /* @__PURE__ */ new Set(["env", ...FD_SPECIFIC_OPTIONS]);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/methods/create.js
var createExeca, callBoundExeca, parseArguments;
var init_create = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/methods/create.js"() {
    init_is_plain_obj();
    init_parameters();
    init_template();
    init_main_sync();
    init_main_async();
    init_bind2();
    createExeca = (mapArguments, boundOptions, deepOptions, setBoundExeca) => {
      const createNested = (mapArguments2, boundOptions2, setBoundExeca2) => createExeca(mapArguments2, boundOptions2, deepOptions, setBoundExeca2);
      const boundExeca = (...execaArguments) => callBoundExeca({
        mapArguments,
        deepOptions,
        boundOptions,
        setBoundExeca,
        createNested
      }, ...execaArguments);
      if (setBoundExeca !== void 0) {
        setBoundExeca(boundExeca, createNested, boundOptions);
      }
      return boundExeca;
    };
    callBoundExeca = ({ mapArguments, deepOptions = {}, boundOptions = {}, setBoundExeca, createNested }, firstArgument, ...nextArguments) => {
      if (isPlainObject(firstArgument)) {
        return createNested(mapArguments, mergeOptions(boundOptions, firstArgument), setBoundExeca);
      }
      const { file, commandArguments, options, isSync } = parseArguments({
        mapArguments,
        firstArgument,
        nextArguments,
        deepOptions,
        boundOptions
      });
      return isSync ? execaCoreSync(file, commandArguments, options) : execaCoreAsync(file, commandArguments, options, createNested);
    };
    parseArguments = ({ mapArguments, firstArgument, nextArguments, deepOptions, boundOptions }) => {
      const callArguments = isTemplateString(firstArgument) ? parseTemplates(firstArgument, nextArguments) : [firstArgument, ...nextArguments];
      const [initialFile, initialArguments, initialOptions] = normalizeParameters(...callArguments);
      const mergedOptions = mergeOptions(mergeOptions(deepOptions, boundOptions), initialOptions);
      const {
        file = initialFile,
        commandArguments = initialArguments,
        options = mergedOptions,
        isSync = false
      } = mapArguments({ file: initialFile, commandArguments: initialArguments, options: mergedOptions });
      return {
        file,
        commandArguments,
        options,
        isSync
      };
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/methods/command.js
var mapCommandAsync, mapCommandSync, parseCommand, parseCommandString, SPACES_REGEXP;
var init_command2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/methods/command.js"() {
    mapCommandAsync = ({ file, commandArguments }) => parseCommand(file, commandArguments);
    mapCommandSync = ({ file, commandArguments }) => ({ ...parseCommand(file, commandArguments), isSync: true });
    parseCommand = (command, unusedArguments) => {
      if (unusedArguments.length > 0) {
        throw new TypeError(`The command and its arguments must be passed as a single string: ${command} ${unusedArguments}.`);
      }
      const [file, ...commandArguments] = parseCommandString(command);
      return { file, commandArguments };
    };
    parseCommandString = (command) => {
      if (typeof command !== "string") {
        throw new TypeError(`The command must be a string: ${String(command)}.`);
      }
      const trimmedCommand = command.trim();
      if (trimmedCommand === "") {
        return [];
      }
      const tokens = [];
      for (const token of trimmedCommand.split(SPACES_REGEXP)) {
        const previousToken = tokens.at(-1);
        if (previousToken && previousToken.endsWith("\\")) {
          tokens[tokens.length - 1] = `${previousToken.slice(0, -1)} ${token}`;
        } else {
          tokens.push(token);
        }
      }
      return tokens;
    };
    SPACES_REGEXP = / +/g;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/methods/script.js
var setScriptSync, mapScriptAsync, mapScriptSync, getScriptOptions, getScriptStdinOption, deepScriptOptions;
var init_script = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/lib/methods/script.js"() {
    setScriptSync = (boundExeca, createNested, boundOptions) => {
      boundExeca.sync = createNested(mapScriptSync, boundOptions);
      boundExeca.s = boundExeca.sync;
    };
    mapScriptAsync = ({ options }) => getScriptOptions(options);
    mapScriptSync = ({ options }) => ({ ...getScriptOptions(options), isSync: true });
    getScriptOptions = (options) => ({ options: { ...getScriptStdinOption(options), ...options } });
    getScriptStdinOption = ({ input, inputFile, stdio }) => input === void 0 && inputFile === void 0 && stdio === void 0 ? { stdin: "inherit" } : {};
    deepScriptOptions = { preferLocal: true };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/index.js
var execa, execaSync, execaCommand, execaCommandSync, execaNode, $, sendMessage2, getOneMessage2, getEachMessage2, getCancelSignal2;
var init_execa = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/9.6.1/5a7f9c77e86db1202a56b65243d0ecf5c024e620e4cf2d3c2859c0f294e091a3/node_modules/execa/index.js"() {
    init_create();
    init_command2();
    init_node2();
    init_script();
    init_methods();
    execa = createExeca(() => ({}));
    execaSync = createExeca(() => ({ isSync: true }));
    execaCommand = createExeca(mapCommandAsync);
    execaCommandSync = createExeca(mapCommandSync);
    execaNode = createExeca(mapNode);
    $ = createExeca(mapScriptAsync, {}, deepScriptOptions, setScriptSync);
    ({
      sendMessage: sendMessage2,
      getOneMessage: getOneMessage2,
      getEachMessage: getEachMessage2,
      getCancelSignal: getCancelSignal2
    } = getIpcExport());
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/path-name/1.0.0/8064eef559e4026b8969ba496c1276b43d2356039af88d81b063131dadece14f/node_modules/path-name/index.js
var require_path_name = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/path-name/1.0.0/8064eef559e4026b8969ba496c1276b43d2356039af88d81b063131dadece14f/node_modules/path-name/index.js"(exports2, module2) {
    "use strict";
    var PATH6;
    if (process.platform === "win32") {
      PATH6 = "Path";
      Object.keys(process.env).forEach((e) => {
        if (e.match(/^PATH$/i)) {
          PATH6 = e;
        }
      });
    } else {
      PATH6 = "PATH";
    }
    module2.exports = PATH6;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/safe-execa/0.3.0/238c73896658bfb67000b4a0218b1ffbc69fbdf60a9c4f405c7f519bdb8555d5/node_modules/safe-execa/lib/index.js
import { fileURLToPath as fileURLToPath3 } from "node:url";
function cwdToString(cwd) {
  if (cwd == null)
    return process.cwd();
  if (cwd instanceof URL)
    return fileURLToPath3(cwd);
  return cwd;
}
function sync(file, args, options) {
  const normalizedArgs = args ? [...args] : [];
  try {
    import_which.default.sync(file, { path: cwdToString(options?.cwd) });
  } catch (err) {
    if (err.code === "ENOENT") {
      return execaSync(file, normalizedArgs, options);
    }
  }
  const fileAbsolutePath = getCommandAbsolutePathSync(file, options);
  return execaSync(fileAbsolutePath, normalizedArgs, options);
}
function getCommandAbsolutePathSync(file, options) {
  if (file.includes("\\") || file.includes("/"))
    return file;
  const path218 = options?.env?.[import_path_name.default] ?? process.env[import_path_name.default];
  const key = JSON.stringify([path218, file]);
  let fileAbsolutePath = pathCache.get(key);
  if (fileAbsolutePath == null) {
    fileAbsolutePath = import_which.default.sync(file, { path: path218 });
    pathCache.set(key, fileAbsolutePath);
  }
  if (fileAbsolutePath == null) {
    throw new Error(`Couldn't find ${file}`);
  }
  return fileAbsolutePath;
}
function safeExeca(file, args, options) {
  const normalizedArgs = args ? [...args] : [];
  try {
    import_which.default.sync(file, { path: cwdToString(options?.cwd) });
  } catch (err) {
    if (err.code === "ENOENT") {
      return execa(file, normalizedArgs, options);
    }
  }
  const fileAbsolutePath = getCommandAbsolutePathSync(file, options);
  return execa(fileAbsolutePath, normalizedArgs, options);
}
var import_which, import_path_name, pathCache;
var init_lib26 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/safe-execa/0.3.0/238c73896658bfb67000b4a0218b1ffbc69fbdf60a9c4f405c7f519bdb8555d5/node_modules/safe-execa/lib/index.js"() {
    import_which = __toESM(require_which(), 1);
    init_execa();
    import_path_name = __toESM(require_path_name(), 1);
    pathCache = /* @__PURE__ */ new Map();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/memoize/10.2.0/323bb1b5af24035419af756a2146ba6504ede83a0757ebeada615ae4ff286517/node_modules/memoize/distribution/index.js
function getValidCacheItem(cache, key) {
  const item = cache.get(key);
  if (!item) {
    return void 0;
  }
  if (item.maxAge <= Date.now()) {
    cache.delete(key);
    return void 0;
  }
  return item;
}
function memoize(function_, { cacheKey, cache = /* @__PURE__ */ new Map(), maxAge } = {}) {
  if (maxAge === 0) {
    return function_;
  }
  if (typeof maxAge === "number" && Number.isFinite(maxAge)) {
    if (maxAge > maxTimeoutValue) {
      throw new TypeError(`The \`maxAge\` option cannot exceed ${maxTimeoutValue}.`);
    }
    if (maxAge < 0) {
      throw new TypeError("The `maxAge` option should not be a negative number.");
    }
  }
  const memoized = function(...arguments_) {
    const key = cacheKey ? cacheKey(arguments_) : arguments_[0];
    const cacheItem = getValidCacheItem(cache, key);
    if (cacheItem) {
      return cacheItem.data;
    }
    const result2 = function_.apply(this, arguments_);
    const computedMaxAge = typeof maxAge === "function" ? maxAge(...arguments_) : maxAge;
    if (computedMaxAge !== void 0 && computedMaxAge !== Number.POSITIVE_INFINITY) {
      if (!Number.isFinite(computedMaxAge)) {
        throw new TypeError("The `maxAge` function must return a finite number, `0`, or `Infinity`.");
      }
      if (computedMaxAge <= 0) {
        return result2;
      }
      if (computedMaxAge > maxTimeoutValue) {
        throw new TypeError(`The \`maxAge\` function result cannot exceed ${maxTimeoutValue}.`);
      }
    }
    cache.set(key, {
      data: result2,
      maxAge: computedMaxAge === void 0 || computedMaxAge === Number.POSITIVE_INFINITY ? Number.POSITIVE_INFINITY : Date.now() + computedMaxAge
    });
    if (computedMaxAge !== void 0 && computedMaxAge !== Number.POSITIVE_INFINITY) {
      const timer = setTimeout(() => {
        cache.delete(key);
        cacheTimerStore.get(memoized)?.delete(timer);
      }, computedMaxAge);
      timer.unref?.();
      const timers = cacheTimerStore.get(memoized) ?? /* @__PURE__ */ new Set();
      timers.add(timer);
      cacheTimerStore.set(memoized, timers);
    }
    return result2;
  };
  mimicFunction(memoized, function_, {
    ignoreNonConfigurable: true
  });
  cacheStore2.set(memoized, cache);
  cacheKeyStore.set(memoized, cacheKey ?? ((arguments_) => arguments_[0]));
  return memoized;
}
var maxTimeoutValue, cacheStore2, cacheTimerStore, cacheKeyStore;
var init_distribution = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/memoize/10.2.0/323bb1b5af24035419af756a2146ba6504ede83a0757ebeada615ae4ff286517/node_modules/memoize/distribution/index.js"() {
    init_mimic_function();
    maxTimeoutValue = 2147483647;
    cacheStore2 = /* @__PURE__ */ new WeakMap();
    cacheTimerStore = /* @__PURE__ */ new WeakMap();
    cacheKeyStore = /* @__PURE__ */ new WeakMap();
  }
});

// ../engine/runtime/system-node-version/lib/index.js
function getSystemNodeVersionNonCached() {
  if (detectIfCurrentPkgIsExecutable()) {
    try {
      return sync("node", ["--version"]).stdout?.toString();
    } catch {
      return void 0;
    }
  }
  return process.version;
}
function engineName(nodeVersion) {
  const version2 = nodeVersion ?? getSystemNodeVersion() ?? process.version;
  const stripped = version2.startsWith("v") ? version2.slice(1) : version2;
  const major = stripped.split(".")[0];
  return `${process.platform};${process.arch};node${major}`;
}
var getSystemNodeVersion;
var init_lib27 = __esm({
  "../engine/runtime/system-node-version/lib/index.js"() {
    "use strict";
    init_lib5();
    init_lib26();
    init_distribution();
    getSystemNodeVersion = memoize(getSystemNodeVersionNonCached);
  }
});

// ../config/package-is-installable/lib/checkEngine.js
function checkEngine(packageId, wantedEngine, currentEngine) {
  if (!wantedEngine)
    return null;
  const unsatisfiedWanted = {};
  if (wantedEngine.node && !import_semver14.default.satisfies(currentEngine.node, wantedEngine.node, { includePrerelease: true })) {
    if (!import_semver14.default.valid(currentEngine.node)) {
      throw new PnpmError("INVALID_NODE_VERSION", `The nodeVersion setting is "${currentEngine.node}", which is not exact semver version`);
    }
    unsatisfiedWanted.node = wantedEngine.node;
  }
  if (currentEngine.pnpm && wantedEngine.pnpm && !import_semver14.default.satisfies(currentEngine.pnpm, wantedEngine.pnpm, { includePrerelease: true })) {
    unsatisfiedWanted.pnpm = wantedEngine.pnpm;
  }
  if (Object.keys(unsatisfiedWanted).length > 0) {
    return new UnsupportedEngineError(packageId, unsatisfiedWanted, currentEngine);
  }
  return null;
}
var import_semver14, UnsupportedEngineError;
var init_checkEngine = __esm({
  "../config/package-is-installable/lib/checkEngine.js"() {
    "use strict";
    init_lib2();
    import_semver14 = __toESM(require_semver2(), 1);
    UnsupportedEngineError = class extends PnpmError {
      wanted;
      current;
      packageId;
      constructor(packageId, wanted, current) {
        super("UNSUPPORTED_ENGINE", `Unsupported engine for ${packageId}: wanted: ${JSON.stringify(wanted)} (current: ${JSON.stringify(current)})`);
        this.packageId = packageId;
        this.wanted = wanted;
        this.current = current;
      }
    };
  }
});

// ../config/package-is-installable/lib/checkPlatform.js
function checkPlatform(packageId, wantedPlatform, supportedArchitectures) {
  const current = {
    os: dedupeCurrent(process.platform, supportedArchitectures?.os ?? ["current"]),
    cpu: dedupeCurrent(process.arch, supportedArchitectures?.cpu ?? ["current"]),
    libc: dedupeCurrent(currentLibc, supportedArchitectures?.libc ?? ["current"])
  };
  const { platform: platform3, arch } = process;
  let osOk = true;
  let cpuOk = true;
  let libcOk = true;
  if (wantedPlatform.os) {
    osOk = checkList(current.os, wantedPlatform.os);
  }
  if (wantedPlatform.cpu) {
    cpuOk = checkList(current.cpu, wantedPlatform.cpu);
  }
  if (wantedPlatform.libc && currentLibc !== "unknown") {
    libcOk = checkList(current.libc, wantedPlatform.libc);
  }
  if (!osOk || !cpuOk || !libcOk) {
    return new UnsupportedPlatformError(packageId, wantedPlatform, { os: platform3, cpu: arch, libc: currentLibc });
  }
  return null;
}
function checkList(value, list2) {
  let tmp;
  let match = false;
  if (typeof list2 === "string") {
    list2 = [list2];
  }
  list2 = list2.filter((value2) => typeof value2 === "string");
  if (list2.length === 1 && list2[0] === "any") {
    return true;
  }
  const values = Array.isArray(value) ? value : [value];
  for (const value2 of values) {
    for (let i2 = 0; i2 < list2.length; ++i2) {
      tmp = list2[i2];
      if (tmp[0] === "!") {
        tmp = tmp.slice(1);
        if (tmp === value2) {
          return false;
        }
      } else {
        match = match || tmp === value2;
      }
    }
  }
  return match || list2.every((entry) => entry[0] === "!");
}
function dedupeCurrent(current, supported) {
  return supported.map((supported2) => supported2 === "current" ? current : supported2);
}
var import_detect_libc, currentLibc, UnsupportedPlatformError;
var init_checkPlatform = __esm({
  "../config/package-is-installable/lib/checkPlatform.js"() {
    "use strict";
    init_lib2();
    import_detect_libc = __toESM(require_detect_libc(), 1);
    currentLibc = (0, import_detect_libc.familySync)() ?? "unknown";
    UnsupportedPlatformError = class extends PnpmError {
      wanted;
      current;
      constructor(packageId, wanted, current) {
        super("UNSUPPORTED_PLATFORM", `Unsupported platform for ${packageId}: wanted ${JSON.stringify(wanted)} (current: ${JSON.stringify(current)})`);
        this.wanted = wanted;
        this.current = current;
      }
    };
  }
});

// ../config/package-is-installable/lib/index.js
function packageIsInstallable(pkgId, pkg, options) {
  const warn = checkPackage(pkgId, pkg, options);
  if (warn == null)
    return true;
  installCheckLogger.warn({
    message: warn.message,
    prefix: options.lockfileDir
  });
  if (options.optional) {
    skippedOptionalDependencyLogger.debug({
      details: warn.toString(),
      package: {
        id: pkgId,
        name: pkg.name,
        version: pkg.version
      },
      prefix: options.lockfileDir,
      reason: warn.code === "ERR_PNPM_UNSUPPORTED_ENGINE" ? "unsupported_engine" : "unsupported_platform"
    });
    return false;
  }
  if (options.engineStrict)
    throw warn;
  return null;
}
function checkPackage(pkgId, manifest, options) {
  return checkPlatform(pkgId, {
    cpu: manifest.cpu ?? ["any"],
    os: manifest.os ?? ["any"],
    libc: manifest.libc ?? ["any"]
  }, options.supportedArchitectures) ?? (manifest.engines == null ? null : checkEngine(pkgId, manifest.engines, {
    node: options.nodeVersion ?? getSystemNodeVersion() ?? process.version,
    pnpm: options.pnpmVersion
  }));
}
var init_lib28 = __esm({
  "../config/package-is-installable/lib/index.js"() {
    "use strict";
    init_lib6();
    init_lib27();
    init_checkEngine();
    init_checkPlatform();
  }
});

// ../cli/utils/lib/packageIsInstallable.js
function packageIsInstallable2(pkgPath, pkg, opts2) {
  const currentPnpmVersion = packageManager.name === "pnpm" ? packageManager.version : void 0;
  const err = checkPackage(pkgPath, pkg, {
    nodeVersion: opts2.nodeVersion,
    pnpmVersion: currentPnpmVersion,
    supportedArchitectures: opts2.supportedArchitectures ?? {
      os: ["current"],
      cpu: ["current"],
      libc: ["current"]
    }
  });
  if (err === null)
    return;
  if ((err instanceof UnsupportedEngineError && err.wanted.pnpm) ?? opts2.engineStrict)
    throw err;
  logger.warn({
    message: `Unsupported ${err instanceof UnsupportedEngineError ? "engine" : "platform"}: wanted: ${JSON.stringify(err.wanted)} (current: ${JSON.stringify(err.current)})`,
    prefix: pkgPath
  });
}
var init_packageIsInstallable = __esm({
  "../cli/utils/lib/packageIsInstallable.js"() {
    "use strict";
    init_lib5();
    init_lib28();
    init_lib3();
  }
});

// ../cli/utils/lib/readDepNameCompletions.js
async function readDepNameCompletions(dir) {
  const { manifest } = await readProjectManifest(dir ?? process.cwd());
  return Object.keys(getAllDependenciesFromManifest2(manifest)).map((name) => ({ name }));
}
var init_readDepNameCompletions = __esm({
  "../cli/utils/lib/readDepNameCompletions.js"() {
    "use strict";
    init_lib9();
    init_lib13();
  }
});

// ../cli/utils/lib/readProjectManifest.js
async function readProjectManifest2(projectDir, opts2 = {}) {
  const { fileName, manifest, writeProjectManifest: writeProjectManifest2 } = await readProjectManifest(projectDir);
  packageIsInstallable2(projectDir, manifest, opts2);
  return { fileName, manifest, writeProjectManifest: writeProjectManifest2 };
}
async function readProjectManifestOnly2(projectDir, opts2 = {}) {
  const manifest = await readProjectManifestOnly(projectDir);
  packageIsInstallable2(projectDir, manifest, opts2);
  return manifest;
}
async function tryReadProjectManifest2(projectDir, opts2) {
  const { fileName, manifest, writeProjectManifest: writeProjectManifest2 } = await tryReadProjectManifest(projectDir);
  if (manifest == null)
    return { fileName, manifest, writeProjectManifest: writeProjectManifest2 };
  packageIsInstallable2(projectDir, manifest, opts2);
  return { fileName, manifest, writeProjectManifest: writeProjectManifest2 };
}
var init_readProjectManifest = __esm({
  "../cli/utils/lib/readProjectManifest.js"() {
    "use strict";
    init_lib13();
    init_packageIsInstallable();
  }
});

// ../cli/utils/lib/recursiveSummary.js
function throwOnCommandFail(command, recursiveSummary) {
  const failures = Object.values(recursiveSummary).filter(({ status }) => status === "failure");
  if (failures.length > 0) {
    throw new RecursiveFailError(command, recursiveSummary, failures);
  }
}
var RecursiveFailError;
var init_recursiveSummary = __esm({
  "../cli/utils/lib/recursiveSummary.js"() {
    "use strict";
    init_lib2();
    RecursiveFailError = class extends PnpmError {
      failures;
      passes;
      constructor(command, recursiveSummary, failures) {
        super("RECURSIVE_FAIL", `"${command}" failed in ${failures.length} packages`);
        this.failures = failures;
        this.passes = Object.values(recursiveSummary).filter(({ status }) => status === "passed").length;
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/chalk/5.6.2/7b61e48ea6529f3478eb79333861d57da6d3107ae3fe1419c07c470318cb5181/node_modules/chalk/source/vendor/ansi-styles/index.js
function assembleStyles() {
  const codes = /* @__PURE__ */ new Map();
  for (const [groupName, group] of Object.entries(styles)) {
    for (const [styleName, style] of Object.entries(group)) {
      styles[styleName] = {
        open: `\x1B[${style[0]}m`,
        close: `\x1B[${style[1]}m`
      };
      group[styleName] = styles[styleName];
      codes.set(style[0], style[1]);
    }
    Object.defineProperty(styles, groupName, {
      value: group,
      enumerable: false
    });
  }
  Object.defineProperty(styles, "codes", {
    value: codes,
    enumerable: false
  });
  styles.color.close = "\x1B[39m";
  styles.bgColor.close = "\x1B[49m";
  styles.color.ansi = wrapAnsi16();
  styles.color.ansi256 = wrapAnsi256();
  styles.color.ansi16m = wrapAnsi16m();
  styles.bgColor.ansi = wrapAnsi16(ANSI_BACKGROUND_OFFSET);
  styles.bgColor.ansi256 = wrapAnsi256(ANSI_BACKGROUND_OFFSET);
  styles.bgColor.ansi16m = wrapAnsi16m(ANSI_BACKGROUND_OFFSET);
  Object.defineProperties(styles, {
    rgbToAnsi256: {
      value(red2, green2, blue2) {
        if (red2 === green2 && green2 === blue2) {
          if (red2 < 8) {
            return 16;
          }
          if (red2 > 248) {
            return 231;
          }
          return Math.round((red2 - 8) / 247 * 24) + 232;
        }
        return 16 + 36 * Math.round(red2 / 255 * 5) + 6 * Math.round(green2 / 255 * 5) + Math.round(blue2 / 255 * 5);
      },
      enumerable: false
    },
    hexToRgb: {
      value(hex) {
        const matches2 = /[a-f\d]{6}|[a-f\d]{3}/i.exec(hex.toString(16));
        if (!matches2) {
          return [0, 0, 0];
        }
        let [colorString] = matches2;
        if (colorString.length === 3) {
          colorString = [...colorString].map((character) => character + character).join("");
        }
        const integer = Number.parseInt(colorString, 16);
        return [
          /* eslint-disable no-bitwise */
          integer >> 16 & 255,
          integer >> 8 & 255,
          integer & 255
          /* eslint-enable no-bitwise */
        ];
      },
      enumerable: false
    },
    hexToAnsi256: {
      value: (hex) => styles.rgbToAnsi256(...styles.hexToRgb(hex)),
      enumerable: false
    },
    ansi256ToAnsi: {
      value(code) {
        if (code < 8) {
          return 30 + code;
        }
        if (code < 16) {
          return 90 + (code - 8);
        }
        let red2;
        let green2;
        let blue2;
        if (code >= 232) {
          red2 = ((code - 232) * 10 + 8) / 255;
          green2 = red2;
          blue2 = red2;
        } else {
          code -= 16;
          const remainder = code % 36;
          red2 = Math.floor(code / 36) / 5;
          green2 = Math.floor(remainder / 6) / 5;
          blue2 = remainder % 6 / 5;
        }
        const value = Math.max(red2, green2, blue2) * 2;
        if (value === 0) {
          return 30;
        }
        let result2 = 30 + (Math.round(blue2) << 2 | Math.round(green2) << 1 | Math.round(red2));
        if (value === 2) {
          result2 += 60;
        }
        return result2;
      },
      enumerable: false
    },
    rgbToAnsi: {
      value: (red2, green2, blue2) => styles.ansi256ToAnsi(styles.rgbToAnsi256(red2, green2, blue2)),
      enumerable: false
    },
    hexToAnsi: {
      value: (hex) => styles.ansi256ToAnsi(styles.hexToAnsi256(hex)),
      enumerable: false
    }
  });
  return styles;
}
var ANSI_BACKGROUND_OFFSET, wrapAnsi16, wrapAnsi256, wrapAnsi16m, styles, modifierNames, foregroundColorNames, backgroundColorNames, colorNames, ansiStyles, ansi_styles_default;
var init_ansi_styles = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/chalk/5.6.2/7b61e48ea6529f3478eb79333861d57da6d3107ae3fe1419c07c470318cb5181/node_modules/chalk/source/vendor/ansi-styles/index.js"() {
    ANSI_BACKGROUND_OFFSET = 10;
    wrapAnsi16 = (offset = 0) => (code) => `\x1B[${code + offset}m`;
    wrapAnsi256 = (offset = 0) => (code) => `\x1B[${38 + offset};5;${code}m`;
    wrapAnsi16m = (offset = 0) => (red2, green2, blue2) => `\x1B[${38 + offset};2;${red2};${green2};${blue2}m`;
    styles = {
      modifier: {
        reset: [0, 0],
        // 21 isn't widely supported and 22 does the same thing
        bold: [1, 22],
        dim: [2, 22],
        italic: [3, 23],
        underline: [4, 24],
        overline: [53, 55],
        inverse: [7, 27],
        hidden: [8, 28],
        strikethrough: [9, 29]
      },
      color: {
        black: [30, 39],
        red: [31, 39],
        green: [32, 39],
        yellow: [33, 39],
        blue: [34, 39],
        magenta: [35, 39],
        cyan: [36, 39],
        white: [37, 39],
        // Bright color
        blackBright: [90, 39],
        gray: [90, 39],
        // Alias of `blackBright`
        grey: [90, 39],
        // Alias of `blackBright`
        redBright: [91, 39],
        greenBright: [92, 39],
        yellowBright: [93, 39],
        blueBright: [94, 39],
        magentaBright: [95, 39],
        cyanBright: [96, 39],
        whiteBright: [97, 39]
      },
      bgColor: {
        bgBlack: [40, 49],
        bgRed: [41, 49],
        bgGreen: [42, 49],
        bgYellow: [43, 49],
        bgBlue: [44, 49],
        bgMagenta: [45, 49],
        bgCyan: [46, 49],
        bgWhite: [47, 49],
        // Bright color
        bgBlackBright: [100, 49],
        bgGray: [100, 49],
        // Alias of `bgBlackBright`
        bgGrey: [100, 49],
        // Alias of `bgBlackBright`
        bgRedBright: [101, 49],
        bgGreenBright: [102, 49],
        bgYellowBright: [103, 49],
        bgBlueBright: [104, 49],
        bgMagentaBright: [105, 49],
        bgCyanBright: [106, 49],
        bgWhiteBright: [107, 49]
      }
    };
    modifierNames = Object.keys(styles.modifier);
    foregroundColorNames = Object.keys(styles.color);
    backgroundColorNames = Object.keys(styles.bgColor);
    colorNames = [...foregroundColorNames, ...backgroundColorNames];
    ansiStyles = assembleStyles();
    ansi_styles_default = ansiStyles;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/chalk/5.6.2/7b61e48ea6529f3478eb79333861d57da6d3107ae3fe1419c07c470318cb5181/node_modules/chalk/source/vendor/supports-color/index.js
import process10 from "node:process";
import os2 from "node:os";
import tty3 from "node:tty";
function hasFlag(flag, argv2 = globalThis.Deno ? globalThis.Deno.args : process10.argv) {
  const prefix = flag.startsWith("-") ? "" : flag.length === 1 ? "-" : "--";
  const position3 = argv2.indexOf(prefix + flag);
  const terminatorPosition = argv2.indexOf("--");
  return position3 !== -1 && (terminatorPosition === -1 || position3 < terminatorPosition);
}
function envForceColor() {
  if ("FORCE_COLOR" in env) {
    if (env.FORCE_COLOR === "true") {
      return 1;
    }
    if (env.FORCE_COLOR === "false") {
      return 0;
    }
    return env.FORCE_COLOR.length === 0 ? 1 : Math.min(Number.parseInt(env.FORCE_COLOR, 10), 3);
  }
}
function translateLevel(level) {
  if (level === 0) {
    return false;
  }
  return {
    level,
    hasBasic: true,
    has256: level >= 2,
    has16m: level >= 3
  };
}
function _supportsColor(haveStream, { streamIsTTY, sniffFlags = true } = {}) {
  const noFlagForceColor = envForceColor();
  if (noFlagForceColor !== void 0) {
    flagForceColor = noFlagForceColor;
  }
  const forceColor = sniffFlags ? flagForceColor : noFlagForceColor;
  if (forceColor === 0) {
    return 0;
  }
  if (sniffFlags) {
    if (hasFlag("color=16m") || hasFlag("color=full") || hasFlag("color=truecolor")) {
      return 3;
    }
    if (hasFlag("color=256")) {
      return 2;
    }
  }
  if ("TF_BUILD" in env && "AGENT_NAME" in env) {
    return 1;
  }
  if (haveStream && !streamIsTTY && forceColor === void 0) {
    return 0;
  }
  const min = forceColor || 0;
  if (env.TERM === "dumb") {
    return min;
  }
  if (process10.platform === "win32") {
    const osRelease = os2.release().split(".");
    if (Number(osRelease[0]) >= 10 && Number(osRelease[2]) >= 10586) {
      return Number(osRelease[2]) >= 14931 ? 3 : 2;
    }
    return 1;
  }
  if ("CI" in env) {
    if (["GITHUB_ACTIONS", "GITEA_ACTIONS", "CIRCLECI"].some((key) => key in env)) {
      return 3;
    }
    if (["TRAVIS", "APPVEYOR", "GITLAB_CI", "BUILDKITE", "DRONE"].some((sign) => sign in env) || env.CI_NAME === "codeship") {
      return 1;
    }
    return min;
  }
  if ("TEAMCITY_VERSION" in env) {
    return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0;
  }
  if (env.COLORTERM === "truecolor") {
    return 3;
  }
  if (env.TERM === "xterm-kitty") {
    return 3;
  }
  if (env.TERM === "xterm-ghostty") {
    return 3;
  }
  if (env.TERM === "wezterm") {
    return 3;
  }
  if ("TERM_PROGRAM" in env) {
    const version2 = Number.parseInt((env.TERM_PROGRAM_VERSION || "").split(".")[0], 10);
    switch (env.TERM_PROGRAM) {
      case "iTerm.app": {
        return version2 >= 3 ? 3 : 2;
      }
      case "Apple_Terminal": {
        return 2;
      }
    }
  }
  if (/-256(color)?$/i.test(env.TERM)) {
    return 2;
  }
  if (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env.TERM)) {
    return 1;
  }
  if ("COLORTERM" in env) {
    return 1;
  }
  return min;
}
function createSupportsColor(stream2, options = {}) {
  const level = _supportsColor(stream2, {
    streamIsTTY: stream2 && stream2.isTTY,
    ...options
  });
  return translateLevel(level);
}
var env, flagForceColor, supportsColor, supports_color_default;
var init_supports_color = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/chalk/5.6.2/7b61e48ea6529f3478eb79333861d57da6d3107ae3fe1419c07c470318cb5181/node_modules/chalk/source/vendor/supports-color/index.js"() {
    ({ env } = process10);
    if (hasFlag("no-color") || hasFlag("no-colors") || hasFlag("color=false") || hasFlag("color=never")) {
      flagForceColor = 0;
    } else if (hasFlag("color") || hasFlag("colors") || hasFlag("color=true") || hasFlag("color=always")) {
      flagForceColor = 1;
    }
    supportsColor = {
      stdout: createSupportsColor({ isTTY: tty3.isatty(1) }),
      stderr: createSupportsColor({ isTTY: tty3.isatty(2) })
    };
    supports_color_default = supportsColor;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/chalk/5.6.2/7b61e48ea6529f3478eb79333861d57da6d3107ae3fe1419c07c470318cb5181/node_modules/chalk/source/utilities.js
function stringReplaceAll(string, substring, replacer2) {
  let index = string.indexOf(substring);
  if (index === -1) {
    return string;
  }
  const substringLength = substring.length;
  let endIndex = 0;
  let returnValue = "";
  do {
    returnValue += string.slice(endIndex, index) + substring + replacer2;
    endIndex = index + substringLength;
    index = string.indexOf(substring, endIndex);
  } while (index !== -1);
  returnValue += string.slice(endIndex);
  return returnValue;
}
function stringEncaseCRLFWithFirstIndex(string, prefix, postfix, index) {
  let endIndex = 0;
  let returnValue = "";
  do {
    const gotCR = string[index - 1] === "\r";
    returnValue += string.slice(endIndex, gotCR ? index - 1 : index) + prefix + (gotCR ? "\r\n" : "\n") + postfix;
    endIndex = index + 1;
    index = string.indexOf("\n", endIndex);
  } while (index !== -1);
  returnValue += string.slice(endIndex);
  return returnValue;
}
var init_utilities = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/chalk/5.6.2/7b61e48ea6529f3478eb79333861d57da6d3107ae3fe1419c07c470318cb5181/node_modules/chalk/source/utilities.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/chalk/5.6.2/7b61e48ea6529f3478eb79333861d57da6d3107ae3fe1419c07c470318cb5181/node_modules/chalk/source/index.js
function createChalk(options) {
  return chalkFactory(options);
}
var stdoutColor, stderrColor, GENERATOR, STYLER, IS_EMPTY, levelMapping, styles2, applyOptions, chalkFactory, getModelAnsi, usedModels, proto, createStyler, createBuilder, applyStyle, chalk, chalkStderr, source_default;
var init_source2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/chalk/5.6.2/7b61e48ea6529f3478eb79333861d57da6d3107ae3fe1419c07c470318cb5181/node_modules/chalk/source/index.js"() {
    init_ansi_styles();
    init_supports_color();
    init_utilities();
    ({ stdout: stdoutColor, stderr: stderrColor } = supports_color_default);
    GENERATOR = /* @__PURE__ */ Symbol("GENERATOR");
    STYLER = /* @__PURE__ */ Symbol("STYLER");
    IS_EMPTY = /* @__PURE__ */ Symbol("IS_EMPTY");
    levelMapping = [
      "ansi",
      "ansi",
      "ansi256",
      "ansi16m"
    ];
    styles2 = /* @__PURE__ */ Object.create(null);
    applyOptions = (object, options = {}) => {
      if (options.level && !(Number.isInteger(options.level) && options.level >= 0 && options.level <= 3)) {
        throw new Error("The `level` option should be an integer from 0 to 3");
      }
      const colorLevel = stdoutColor ? stdoutColor.level : 0;
      object.level = options.level === void 0 ? colorLevel : options.level;
    };
    chalkFactory = (options) => {
      const chalk2 = (...strings2) => strings2.join(" ");
      applyOptions(chalk2, options);
      Object.setPrototypeOf(chalk2, createChalk.prototype);
      return chalk2;
    };
    Object.setPrototypeOf(createChalk.prototype, Function.prototype);
    for (const [styleName, style] of Object.entries(ansi_styles_default)) {
      styles2[styleName] = {
        get() {
          const builder = createBuilder(this, createStyler(style.open, style.close, this[STYLER]), this[IS_EMPTY]);
          Object.defineProperty(this, styleName, { value: builder });
          return builder;
        }
      };
    }
    styles2.visible = {
      get() {
        const builder = createBuilder(this, this[STYLER], true);
        Object.defineProperty(this, "visible", { value: builder });
        return builder;
      }
    };
    getModelAnsi = (model, level, type4, ...arguments_) => {
      if (model === "rgb") {
        if (level === "ansi16m") {
          return ansi_styles_default[type4].ansi16m(...arguments_);
        }
        if (level === "ansi256") {
          return ansi_styles_default[type4].ansi256(ansi_styles_default.rgbToAnsi256(...arguments_));
        }
        return ansi_styles_default[type4].ansi(ansi_styles_default.rgbToAnsi(...arguments_));
      }
      if (model === "hex") {
        return getModelAnsi("rgb", level, type4, ...ansi_styles_default.hexToRgb(...arguments_));
      }
      return ansi_styles_default[type4][model](...arguments_);
    };
    usedModels = ["rgb", "hex", "ansi256"];
    for (const model of usedModels) {
      styles2[model] = {
        get() {
          const { level } = this;
          return function(...arguments_) {
            const styler = createStyler(getModelAnsi(model, levelMapping[level], "color", ...arguments_), ansi_styles_default.color.close, this[STYLER]);
            return createBuilder(this, styler, this[IS_EMPTY]);
          };
        }
      };
      const bgModel = "bg" + model[0].toUpperCase() + model.slice(1);
      styles2[bgModel] = {
        get() {
          const { level } = this;
          return function(...arguments_) {
            const styler = createStyler(getModelAnsi(model, levelMapping[level], "bgColor", ...arguments_), ansi_styles_default.bgColor.close, this[STYLER]);
            return createBuilder(this, styler, this[IS_EMPTY]);
          };
        }
      };
    }
    proto = Object.defineProperties(() => {
    }, {
      ...styles2,
      level: {
        enumerable: true,
        get() {
          return this[GENERATOR].level;
        },
        set(level) {
          this[GENERATOR].level = level;
        }
      }
    });
    createStyler = (open5, close, parent) => {
      let openAll;
      let closeAll;
      if (parent === void 0) {
        openAll = open5;
        closeAll = close;
      } else {
        openAll = parent.openAll + open5;
        closeAll = close + parent.closeAll;
      }
      return {
        open: open5,
        close,
        openAll,
        closeAll,
        parent
      };
    };
    createBuilder = (self2, _styler, _isEmpty) => {
      const builder = (...arguments_) => applyStyle(builder, arguments_.length === 1 ? "" + arguments_[0] : arguments_.join(" "));
      Object.setPrototypeOf(builder, proto);
      builder[GENERATOR] = self2;
      builder[STYLER] = _styler;
      builder[IS_EMPTY] = _isEmpty;
      return builder;
    };
    applyStyle = (self2, string) => {
      if (self2.level <= 0 || !string) {
        return self2[IS_EMPTY] ? "" : string;
      }
      let styler = self2[STYLER];
      if (styler === void 0) {
        return string;
      }
      const { openAll, closeAll } = styler;
      if (string.includes("\x1B")) {
        while (styler !== void 0) {
          string = stringReplaceAll(string, styler.close, styler.open);
          styler = styler.parent;
        }
      }
      const lfIndex = string.indexOf("\n");
      if (lfIndex !== -1) {
        string = stringEncaseCRLFWithFirstIndex(string, closeAll, openAll, lfIndex);
      }
      return openAll + string + closeAll;
    };
    Object.defineProperties(createChalk.prototype, styles2);
    chalk = createChalk();
    chalkStderr = createChalk({ level: stderrColor ? stderrColor.level : 0 });
    source_default = chalk;
  }
});

// ../cli/utils/lib/style.js
var TABLE_OPTIONS;
var init_style = __esm({
  "../cli/utils/lib/style.js"() {
    "use strict";
    init_source2();
    TABLE_OPTIONS = {
      border: {
        topBody: "\u2500",
        topJoin: "\u252C",
        topLeft: "\u250C",
        topRight: "\u2510",
        bottomBody: "\u2500",
        bottomJoin: "\u2534",
        bottomLeft: "\u2514",
        bottomRight: "\u2518",
        bodyJoin: "\u2502",
        bodyLeft: "\u2502",
        bodyRight: "\u2502",
        joinBody: "\u2500",
        joinJoin: "\u253C",
        joinLeft: "\u251C",
        joinRight: "\u2524"
      },
      columns: {}
    };
    for (const [key, value] of Object.entries(TABLE_OPTIONS.border)) {
      TABLE_OPTIONS.border[key] = source_default.grey(value);
    }
  }
});

// ../cli/utils/lib/index.js
function docsUrl(cmd) {
  const [pnpmMajorVersion] = packageManager.version.split(".");
  return `https://pnpm.io/${pnpmMajorVersion}.x/cli/${cmd}`;
}
var init_lib29 = __esm({
  "../cli/utils/lib/index.js"() {
    "use strict";
    init_lib5();
    init_packageIsInstallable();
    init_readDepNameCompletions();
    init_readProjectManifest();
    init_recursiveSummary();
    init_style();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/util.lex-comparator/3.0.2/4b2a769b7af9f6d47e5143e50adae07e0f7eb83acfb0a0f80768663229059933/node_modules/@pnpm/util.lex-comparator/dist/lex-comparator.js
var require_lex_comparator = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/util.lex-comparator/3.0.2/4b2a769b7af9f6d47e5143e50adae07e0f7eb83acfb0a0f80768663229059933/node_modules/@pnpm/util.lex-comparator/dist/lex-comparator.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.lexCompare = void 0;
    function lexCompare21(a2, b) {
      return a2 > b ? 1 : a2 < b ? -1 : 0;
    }
    exports2.lexCompare = lexCompare21;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/util.lex-comparator/3.0.2/4b2a769b7af9f6d47e5143e50adae07e0f7eb83acfb0a0f80768663229059933/node_modules/@pnpm/util.lex-comparator/dist/index.js
var require_dist3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/util.lex-comparator/3.0.2/4b2a769b7af9f6d47e5143e50adae07e0f7eb83acfb0a0f80768663229059933/node_modules/@pnpm/util.lex-comparator/dist/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.lexCompare = void 0;
    var lex_comparator_1 = require_lex_comparator();
    Object.defineProperty(exports2, "lexCompare", { enumerable: true, get: function() {
      return lex_comparator_1.lexCompare;
    } });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/p-map/7.0.4/297bf2545dc882f7f0d00d98948479192d4c35acc4dfbc22ded182f43f56c250/node_modules/p-map/index.js
var p_map_exports = {};
__export(p_map_exports, {
  default: () => pMap,
  pMapIterable: () => pMapIterable,
  pMapSkip: () => pMapSkip
});
async function pMap(iterable, mapper, {
  concurrency = Number.POSITIVE_INFINITY,
  stopOnError = true,
  signal
} = {}) {
  return new Promise((resolve_, reject_) => {
    if (iterable[Symbol.iterator] === void 0 && iterable[Symbol.asyncIterator] === void 0) {
      throw new TypeError(`Expected \`input\` to be either an \`Iterable\` or \`AsyncIterable\`, got (${typeof iterable})`);
    }
    if (typeof mapper !== "function") {
      throw new TypeError("Mapper function is required");
    }
    if (!(Number.isSafeInteger(concurrency) && concurrency >= 1 || concurrency === Number.POSITIVE_INFINITY)) {
      throw new TypeError(`Expected \`concurrency\` to be an integer from 1 and up or \`Infinity\`, got \`${concurrency}\` (${typeof concurrency})`);
    }
    const result2 = [];
    const errors2 = [];
    const skippedIndexesMap = /* @__PURE__ */ new Map();
    let isRejected = false;
    let isResolved = false;
    let isIterableDone = false;
    let resolvingCount = 0;
    let currentIndex = 0;
    const iterator = iterable[Symbol.iterator] === void 0 ? iterable[Symbol.asyncIterator]() : iterable[Symbol.iterator]();
    const signalListener = () => {
      reject3(signal.reason);
    };
    const cleanup = () => {
      signal?.removeEventListener("abort", signalListener);
    };
    const resolve3 = (value) => {
      resolve_(value);
      cleanup();
    };
    const reject3 = (reason) => {
      isRejected = true;
      isResolved = true;
      reject_(reason);
      cleanup();
    };
    if (signal) {
      if (signal.aborted) {
        reject3(signal.reason);
      }
      signal.addEventListener("abort", signalListener, { once: true });
    }
    const next2 = async () => {
      if (isResolved) {
        return;
      }
      const nextItem = await iterator.next();
      const index = currentIndex;
      currentIndex++;
      if (nextItem.done) {
        isIterableDone = true;
        if (resolvingCount === 0 && !isResolved) {
          if (!stopOnError && errors2.length > 0) {
            reject3(new AggregateError(errors2));
            return;
          }
          isResolved = true;
          if (skippedIndexesMap.size === 0) {
            resolve3(result2);
            return;
          }
          const pureResult = [];
          for (const [index2, value] of result2.entries()) {
            if (skippedIndexesMap.get(index2) === pMapSkip) {
              continue;
            }
            pureResult.push(value);
          }
          resolve3(pureResult);
        }
        return;
      }
      resolvingCount++;
      (async () => {
        try {
          const element = await nextItem.value;
          if (isResolved) {
            return;
          }
          const value = await mapper(element, index);
          if (value === pMapSkip) {
            skippedIndexesMap.set(index, value);
          }
          result2[index] = value;
          resolvingCount--;
          await next2();
        } catch (error) {
          if (stopOnError) {
            reject3(error);
          } else {
            errors2.push(error);
            resolvingCount--;
            try {
              await next2();
            } catch (error2) {
              reject3(error2);
            }
          }
        }
      })();
    };
    (async () => {
      for (let index = 0; index < concurrency; index++) {
        try {
          await next2();
        } catch (error) {
          reject3(error);
          break;
        }
        if (isIterableDone || isRejected) {
          break;
        }
      }
    })();
  });
}
function pMapIterable(iterable, mapper, {
  concurrency = Number.POSITIVE_INFINITY,
  backpressure = concurrency
} = {}) {
  if (iterable[Symbol.iterator] === void 0 && iterable[Symbol.asyncIterator] === void 0) {
    throw new TypeError(`Expected \`input\` to be either an \`Iterable\` or \`AsyncIterable\`, got (${typeof iterable})`);
  }
  if (typeof mapper !== "function") {
    throw new TypeError("Mapper function is required");
  }
  if (!(Number.isSafeInteger(concurrency) && concurrency >= 1 || concurrency === Number.POSITIVE_INFINITY)) {
    throw new TypeError(`Expected \`concurrency\` to be an integer from 1 and up or \`Infinity\`, got \`${concurrency}\` (${typeof concurrency})`);
  }
  if (!(Number.isSafeInteger(backpressure) && backpressure >= concurrency || backpressure === Number.POSITIVE_INFINITY)) {
    throw new TypeError(`Expected \`backpressure\` to be an integer from \`concurrency\` (${concurrency}) and up or \`Infinity\`, got \`${backpressure}\` (${typeof backpressure})`);
  }
  return {
    async *[Symbol.asyncIterator]() {
      const iterator = iterable[Symbol.asyncIterator] === void 0 ? iterable[Symbol.iterator]() : iterable[Symbol.asyncIterator]();
      const promises = [];
      let pendingPromisesCount = 0;
      let isDone = false;
      let index = 0;
      function trySpawn() {
        if (isDone || !(pendingPromisesCount < concurrency && promises.length < backpressure)) {
          return;
        }
        pendingPromisesCount++;
        const promise2 = (async () => {
          const { done, value } = await iterator.next();
          if (done) {
            pendingPromisesCount--;
            return { done: true };
          }
          trySpawn();
          try {
            const returnValue = await mapper(await value, index++);
            pendingPromisesCount--;
            if (returnValue === pMapSkip) {
              const index2 = promises.indexOf(promise2);
              if (index2 > 0) {
                promises.splice(index2, 1);
              }
            }
            trySpawn();
            return { done: false, value: returnValue };
          } catch (error) {
            pendingPromisesCount--;
            isDone = true;
            return { error };
          }
        })();
        promises.push(promise2);
      }
      trySpawn();
      while (promises.length > 0) {
        const { error, done, value } = await promises[0];
        promises.shift();
        if (error) {
          throw error;
        }
        if (done) {
          return;
        }
        trySpawn();
        if (value === pMapSkip) {
          continue;
        }
        yield value;
      }
    }
  };
}
var pMapSkip;
var init_p_map = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/p-map/7.0.4/297bf2545dc882f7f0d00d98948479192d4c35acc4dfbc22ded182f43f56c250/node_modules/p-map/index.js"() {
    pMapSkip = /* @__PURE__ */ Symbol("skip");
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/p-filter/4.1.0/f7ca2a5e2f44d323e95091c21db5bbb2c1d7b457eac366a65dae7c920effb325/node_modules/p-filter/index.js
async function pFilter(iterable, filterer, options) {
  const values = await pMap(
    iterable,
    (element, index) => Promise.all([filterer(element, index), element]),
    options
  );
  return values.filter((value) => Boolean(value[0])).map((value) => value[1]);
}
var init_p_filter = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/p-filter/4.1.0/f7ca2a5e2f44d323e95091c21db5bbb2c1d7b457eac366a65dae7c920effb325/node_modules/p-filter/index.js"() {
    init_p_map();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fdir/6.5.0/137a4b80ea36df1f55d1f329ebc28fad34392a7057a00c49924b2ed55ef6cfee/node_modules/fdir/dist/index.mjs
import { createRequire as createRequire3 } from "module";
import { basename, dirname, normalize as normalize3, relative, resolve, sep } from "path";
import * as nativeFs from "fs";
function cleanPath(path218) {
  let normalized = normalize3(path218);
  if (normalized.length > 1 && normalized[normalized.length - 1] === sep) normalized = normalized.substring(0, normalized.length - 1);
  return normalized;
}
function convertSlashes(path218, separator) {
  return path218.replace(SLASHES_REGEX, separator);
}
function isRootDirectory(path218) {
  return path218 === "/" || WINDOWS_ROOT_DIR_REGEX.test(path218);
}
function normalizePath(path218, options) {
  const { resolvePaths, normalizePath: normalizePath$1, pathSeparator } = options;
  const pathNeedsCleaning = process.platform === "win32" && path218.includes("/") || path218.startsWith(".");
  if (resolvePaths) path218 = resolve(path218);
  if (normalizePath$1 || pathNeedsCleaning) path218 = cleanPath(path218);
  if (path218 === ".") return "";
  const needsSeperator = path218[path218.length - 1] !== pathSeparator;
  return convertSlashes(needsSeperator ? path218 + pathSeparator : path218, pathSeparator);
}
function joinPathWithBasePath(filename, directoryPath) {
  return directoryPath + filename;
}
function joinPathWithRelativePath(root, options) {
  return function(filename, directoryPath) {
    const sameRoot = directoryPath.startsWith(root);
    if (sameRoot) return directoryPath.slice(root.length) + filename;
    else return convertSlashes(relative(root, directoryPath), options.pathSeparator) + options.pathSeparator + filename;
  };
}
function joinPath(filename) {
  return filename;
}
function joinDirectoryPath(filename, directoryPath, separator) {
  return directoryPath + filename + separator;
}
function build$7(root, options) {
  const { relativePaths, includeBasePath } = options;
  return relativePaths && root ? joinPathWithRelativePath(root, options) : includeBasePath ? joinPathWithBasePath : joinPath;
}
function pushDirectoryWithRelativePath(root) {
  return function(directoryPath, paths3) {
    paths3.push(directoryPath.substring(root.length) || ".");
  };
}
function pushDirectoryFilterWithRelativePath(root) {
  return function(directoryPath, paths3, filters) {
    const relativePath = directoryPath.substring(root.length) || ".";
    if (filters.every((filter14) => filter14(relativePath, true))) paths3.push(relativePath);
  };
}
function build$6(root, options) {
  const { includeDirs, filters, relativePaths } = options;
  if (!includeDirs) return empty$2;
  if (relativePaths) return filters && filters.length ? pushDirectoryFilterWithRelativePath(root) : pushDirectoryWithRelativePath(root);
  return filters && filters.length ? pushDirectoryFilter : pushDirectory;
}
function build$5(options) {
  const { excludeFiles, filters, onlyCounts } = options;
  if (excludeFiles) return empty$1;
  if (filters && filters.length) return onlyCounts ? pushFileFilterAndCount : pushFileFilter;
  else if (onlyCounts) return pushFileCount;
  else return pushFile;
}
function build$4(options) {
  return options.group ? getArrayGroup : getArray;
}
function build$3(options) {
  return options.group ? groupFiles : empty3;
}
function build$2(options, isSynchronous) {
  if (!options.resolveSymlinks || options.excludeSymlinks) return null;
  return isSynchronous ? resolveSymlinks : resolveSymlinksAsync;
}
function isRecursive(path218, resolved, state) {
  if (state.options.useRealPaths) return isRecursiveUsingRealPaths(resolved, state);
  let parent = dirname(path218);
  let depth = 1;
  while (parent !== state.root && depth < 2) {
    const resolvedPath = state.symlinks.get(parent);
    const isSameRoot = !!resolvedPath && (resolvedPath === resolved || resolvedPath.startsWith(resolved) || resolved.startsWith(resolvedPath));
    if (isSameRoot) depth++;
    else parent = dirname(parent);
  }
  state.symlinks.set(path218, resolved);
  return depth > 1;
}
function isRecursiveUsingRealPaths(resolved, state) {
  return state.visited.includes(resolved + state.options.pathSeparator);
}
function report(error, callback$1, output, suppressErrors) {
  if (error && !suppressErrors) callback$1(error, output);
  else callback$1(null, output);
}
function build$1(options, isSynchronous) {
  const { onlyCounts, group, maxFiles } = options;
  if (onlyCounts) return isSynchronous ? onlyCountsSync : onlyCountsAsync;
  else if (group) return isSynchronous ? groupsSync : groupsAsync;
  else if (maxFiles) return isSynchronous ? limitFilesSync : limitFilesAsync;
  else return isSynchronous ? defaultSync : defaultAsync;
}
function build(isSynchronous) {
  return isSynchronous ? walkSync : walkAsync;
}
function promise(root, options) {
  return new Promise((resolve$1, reject3) => {
    callback(root, options, (err, output) => {
      if (err) return reject3(err);
      resolve$1(output);
    });
  });
}
function callback(root, options, callback$1) {
  let walker = new Walker(root, options, callback$1);
  walker.start();
}
function sync2(root, options) {
  const walker = new Walker(root, options);
  return walker.start();
}
var __require2, SLASHES_REGEX, WINDOWS_ROOT_DIR_REGEX, pushDirectory, pushDirectoryFilter, empty$2, pushFileFilterAndCount, pushFileFilter, pushFileCount, pushFile, empty$1, getArray, getArrayGroup, groupFiles, empty3, resolveSymlinksAsync, resolveSymlinks, onlyCountsSync, groupsSync, defaultSync, limitFilesSync, onlyCountsAsync, defaultAsync, limitFilesAsync, groupsAsync, readdirOpts, walkAsync, walkSync, Queue2, Counter, Aborter, Walker, APIBuilder, pm, Builder;
var init_dist2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/fdir/6.5.0/137a4b80ea36df1f55d1f329ebc28fad34392a7057a00c49924b2ed55ef6cfee/node_modules/fdir/dist/index.mjs"() {
    __require2 = /* @__PURE__ */ createRequire3(import.meta.url);
    SLASHES_REGEX = /[\\/]/g;
    WINDOWS_ROOT_DIR_REGEX = /^[a-z]:[\\/]$/i;
    pushDirectory = (directoryPath, paths3) => {
      paths3.push(directoryPath || ".");
    };
    pushDirectoryFilter = (directoryPath, paths3, filters) => {
      const path218 = directoryPath || ".";
      if (filters.every((filter14) => filter14(path218, true))) paths3.push(path218);
    };
    empty$2 = () => {
    };
    pushFileFilterAndCount = (filename, _paths, counts, filters) => {
      if (filters.every((filter14) => filter14(filename, false))) counts.files++;
    };
    pushFileFilter = (filename, paths3, _counts, filters) => {
      if (filters.every((filter14) => filter14(filename, false))) paths3.push(filename);
    };
    pushFileCount = (_filename, _paths, counts, _filters) => {
      counts.files++;
    };
    pushFile = (filename, paths3) => {
      paths3.push(filename);
    };
    empty$1 = () => {
    };
    getArray = (paths3) => {
      return paths3;
    };
    getArrayGroup = () => {
      return [""].slice(0, 0);
    };
    groupFiles = (groups, directory, files) => {
      groups.push({
        directory,
        files,
        dir: directory
      });
    };
    empty3 = () => {
    };
    resolveSymlinksAsync = function(path218, state, callback$1) {
      const { queue: queue2, fs: fs111, options: { suppressErrors } } = state;
      queue2.enqueue();
      fs111.realpath(path218, (error, resolvedPath) => {
        if (error) return queue2.dequeue(suppressErrors ? null : error, state);
        fs111.stat(resolvedPath, (error$1, stat2) => {
          if (error$1) return queue2.dequeue(suppressErrors ? null : error$1, state);
          if (stat2.isDirectory() && isRecursive(path218, resolvedPath, state)) return queue2.dequeue(null, state);
          callback$1(stat2, resolvedPath);
          queue2.dequeue(null, state);
        });
      });
    };
    resolveSymlinks = function(path218, state, callback$1) {
      const { queue: queue2, fs: fs111, options: { suppressErrors } } = state;
      queue2.enqueue();
      try {
        const resolvedPath = fs111.realpathSync(path218);
        const stat2 = fs111.statSync(resolvedPath);
        if (stat2.isDirectory() && isRecursive(path218, resolvedPath, state)) return;
        callback$1(stat2, resolvedPath);
      } catch (e) {
        if (!suppressErrors) throw e;
      }
    };
    onlyCountsSync = (state) => {
      return state.counts;
    };
    groupsSync = (state) => {
      return state.groups;
    };
    defaultSync = (state) => {
      return state.paths;
    };
    limitFilesSync = (state) => {
      return state.paths.slice(0, state.options.maxFiles);
    };
    onlyCountsAsync = (state, error, callback$1) => {
      report(error, callback$1, state.counts, state.options.suppressErrors);
      return null;
    };
    defaultAsync = (state, error, callback$1) => {
      report(error, callback$1, state.paths, state.options.suppressErrors);
      return null;
    };
    limitFilesAsync = (state, error, callback$1) => {
      report(error, callback$1, state.paths.slice(0, state.options.maxFiles), state.options.suppressErrors);
      return null;
    };
    groupsAsync = (state, error, callback$1) => {
      report(error, callback$1, state.groups, state.options.suppressErrors);
      return null;
    };
    readdirOpts = { withFileTypes: true };
    walkAsync = (state, crawlPath, directoryPath, currentDepth, callback$1) => {
      state.queue.enqueue();
      if (currentDepth < 0) return state.queue.dequeue(null, state);
      const { fs: fs111 } = state;
      state.visited.push(crawlPath);
      state.counts.directories++;
      fs111.readdir(crawlPath || ".", readdirOpts, (error, entries = []) => {
        callback$1(entries, directoryPath, currentDepth);
        state.queue.dequeue(state.options.suppressErrors ? null : error, state);
      });
    };
    walkSync = (state, crawlPath, directoryPath, currentDepth, callback$1) => {
      const { fs: fs111 } = state;
      if (currentDepth < 0) return;
      state.visited.push(crawlPath);
      state.counts.directories++;
      let entries = [];
      try {
        entries = fs111.readdirSync(crawlPath || ".", readdirOpts);
      } catch (e) {
        if (!state.options.suppressErrors) throw e;
      }
      callback$1(entries, directoryPath, currentDepth);
    };
    Queue2 = class {
      count = 0;
      constructor(onQueueEmpty) {
        this.onQueueEmpty = onQueueEmpty;
      }
      enqueue() {
        this.count++;
        return this.count;
      }
      dequeue(error, output) {
        if (this.onQueueEmpty && (--this.count <= 0 || error)) {
          this.onQueueEmpty(error, output);
          if (error) {
            output.controller.abort();
            this.onQueueEmpty = void 0;
          }
        }
      }
    };
    Counter = class {
      _files = 0;
      _directories = 0;
      set files(num) {
        this._files = num;
      }
      get files() {
        return this._files;
      }
      set directories(num) {
        this._directories = num;
      }
      get directories() {
        return this._directories;
      }
      /**
      * @deprecated use `directories` instead
      */
      /* c8 ignore next 3 */
      get dirs() {
        return this._directories;
      }
    };
    Aborter = class {
      aborted = false;
      abort() {
        this.aborted = true;
      }
    };
    Walker = class {
      root;
      isSynchronous;
      state;
      joinPath;
      pushDirectory;
      pushFile;
      getArray;
      groupFiles;
      resolveSymlink;
      walkDirectory;
      callbackInvoker;
      constructor(root, options, callback$1) {
        this.isSynchronous = !callback$1;
        this.callbackInvoker = build$1(options, this.isSynchronous);
        this.root = normalizePath(root, options);
        this.state = {
          root: isRootDirectory(this.root) ? this.root : this.root.slice(0, -1),
          paths: [""].slice(0, 0),
          groups: [],
          counts: new Counter(),
          options,
          queue: new Queue2((error, state) => this.callbackInvoker(state, error, callback$1)),
          symlinks: /* @__PURE__ */ new Map(),
          visited: [""].slice(0, 0),
          controller: new Aborter(),
          fs: options.fs || nativeFs
        };
        this.joinPath = build$7(this.root, options);
        this.pushDirectory = build$6(this.root, options);
        this.pushFile = build$5(options);
        this.getArray = build$4(options);
        this.groupFiles = build$3(options);
        this.resolveSymlink = build$2(options, this.isSynchronous);
        this.walkDirectory = build(this.isSynchronous);
      }
      start() {
        this.pushDirectory(this.root, this.state.paths, this.state.options.filters);
        this.walkDirectory(this.state, this.root, this.root, this.state.options.maxDepth, this.walk);
        return this.isSynchronous ? this.callbackInvoker(this.state, null) : null;
      }
      walk = (entries, directoryPath, depth) => {
        const { paths: paths3, options: { filters, resolveSymlinks: resolveSymlinks$1, excludeSymlinks, exclude, maxFiles, signal, useRealPaths, pathSeparator }, controller } = this.state;
        if (controller.aborted || signal && signal.aborted || maxFiles && paths3.length > maxFiles) return;
        const files = this.getArray(this.state.paths);
        for (let i2 = 0; i2 < entries.length; ++i2) {
          const entry = entries[i2];
          if (entry.isFile() || entry.isSymbolicLink() && !resolveSymlinks$1 && !excludeSymlinks) {
            const filename = this.joinPath(entry.name, directoryPath);
            this.pushFile(filename, files, this.state.counts, filters);
          } else if (entry.isDirectory()) {
            let path218 = joinDirectoryPath(entry.name, directoryPath, this.state.options.pathSeparator);
            if (exclude && exclude(entry.name, path218)) continue;
            this.pushDirectory(path218, paths3, filters);
            this.walkDirectory(this.state, path218, path218, depth - 1, this.walk);
          } else if (this.resolveSymlink && entry.isSymbolicLink()) {
            let path218 = joinPathWithBasePath(entry.name, directoryPath);
            this.resolveSymlink(path218, this.state, (stat2, resolvedPath) => {
              if (stat2.isDirectory()) {
                resolvedPath = normalizePath(resolvedPath, this.state.options);
                if (exclude && exclude(entry.name, useRealPaths ? resolvedPath : path218 + pathSeparator)) return;
                this.walkDirectory(this.state, resolvedPath, useRealPaths ? resolvedPath : path218 + pathSeparator, depth - 1, this.walk);
              } else {
                resolvedPath = useRealPaths ? resolvedPath : path218;
                const filename = basename(resolvedPath);
                const directoryPath$1 = normalizePath(dirname(resolvedPath), this.state.options);
                resolvedPath = this.joinPath(filename, directoryPath$1);
                this.pushFile(resolvedPath, files, this.state.counts, filters);
              }
            });
          }
        }
        this.groupFiles(this.state.groups, directoryPath, files);
      };
    };
    APIBuilder = class {
      constructor(root, options) {
        this.root = root;
        this.options = options;
      }
      withPromise() {
        return promise(this.root, this.options);
      }
      withCallback(cb) {
        callback(this.root, this.options, cb);
      }
      sync() {
        return sync2(this.root, this.options);
      }
    };
    pm = null;
    try {
      __require2.resolve("picomatch");
      pm = __require2("picomatch");
    } catch {
    }
    Builder = class {
      globCache = {};
      options = {
        maxDepth: Infinity,
        suppressErrors: true,
        pathSeparator: sep,
        filters: []
      };
      globFunction;
      constructor(options) {
        this.options = {
          ...this.options,
          ...options
        };
        this.globFunction = this.options.globFunction;
      }
      group() {
        this.options.group = true;
        return this;
      }
      withPathSeparator(separator) {
        this.options.pathSeparator = separator;
        return this;
      }
      withBasePath() {
        this.options.includeBasePath = true;
        return this;
      }
      withRelativePaths() {
        this.options.relativePaths = true;
        return this;
      }
      withDirs() {
        this.options.includeDirs = true;
        return this;
      }
      withMaxDepth(depth) {
        this.options.maxDepth = depth;
        return this;
      }
      withMaxFiles(limit) {
        this.options.maxFiles = limit;
        return this;
      }
      withFullPaths() {
        this.options.resolvePaths = true;
        this.options.includeBasePath = true;
        return this;
      }
      withErrors() {
        this.options.suppressErrors = false;
        return this;
      }
      withSymlinks({ resolvePaths = true } = {}) {
        this.options.resolveSymlinks = true;
        this.options.useRealPaths = resolvePaths;
        return this.withFullPaths();
      }
      withAbortSignal(signal) {
        this.options.signal = signal;
        return this;
      }
      normalize() {
        this.options.normalizePath = true;
        return this;
      }
      filter(predicate) {
        this.options.filters.push(predicate);
        return this;
      }
      onlyDirs() {
        this.options.excludeFiles = true;
        this.options.includeDirs = true;
        return this;
      }
      exclude(predicate) {
        this.options.exclude = predicate;
        return this;
      }
      onlyCounts() {
        this.options.onlyCounts = true;
        return this;
      }
      crawl(root) {
        return new APIBuilder(root || ".", this.options);
      }
      withGlobFunction(fn) {
        this.globFunction = fn;
        return this;
      }
      /**
      * @deprecated Pass options using the constructor instead:
      * ```ts
      * new fdir(options).crawl("/path/to/root");
      * ```
      * This method will be removed in v7.0
      */
      /* c8 ignore next 4 */
      crawlWithOptions(root, options) {
        this.options = {
          ...this.options,
          ...options
        };
        return new APIBuilder(root || ".", this.options);
      }
      glob(...patterns) {
        if (this.globFunction) return this.globWithOptions(patterns);
        return this.globWithOptions(patterns, ...[{ dot: true }]);
      }
      globWithOptions(patterns, ...options) {
        const globFn = this.globFunction || pm;
        if (!globFn) throw new Error("Please specify a glob function to use glob matching.");
        var isMatch = this.globCache[patterns.join("\0")];
        if (!isMatch) {
          isMatch = globFn(patterns, ...options);
          this.globCache[patterns.join("\0")] = isMatch;
        }
        this.options.filters.push((path218) => isMatch(path218));
        return this;
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/picomatch/4.0.4/0546af7cfa9a5912a758e05e0c75d31dec268037998816328e491e436f64c2fd/node_modules/picomatch/lib/constants.js
var require_constants2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/picomatch/4.0.4/0546af7cfa9a5912a758e05e0c75d31dec268037998816328e491e436f64c2fd/node_modules/picomatch/lib/constants.js"(exports2, module2) {
    "use strict";
    var WIN_SLASH = "\\\\/";
    var WIN_NO_SLASH = `[^${WIN_SLASH}]`;
    var DEFAULT_MAX_EXTGLOB_RECURSION = 0;
    var DOT_LITERAL = "\\.";
    var PLUS_LITERAL = "\\+";
    var QMARK_LITERAL = "\\?";
    var SLASH_LITERAL = "\\/";
    var ONE_CHAR = "(?=.)";
    var QMARK = "[^/]";
    var END_ANCHOR = `(?:${SLASH_LITERAL}|$)`;
    var START_ANCHOR = `(?:^|${SLASH_LITERAL})`;
    var DOTS_SLASH = `${DOT_LITERAL}{1,2}${END_ANCHOR}`;
    var NO_DOT = `(?!${DOT_LITERAL})`;
    var NO_DOTS = `(?!${START_ANCHOR}${DOTS_SLASH})`;
    var NO_DOT_SLASH = `(?!${DOT_LITERAL}{0,1}${END_ANCHOR})`;
    var NO_DOTS_SLASH = `(?!${DOTS_SLASH})`;
    var QMARK_NO_DOT = `[^.${SLASH_LITERAL}]`;
    var STAR = `${QMARK}*?`;
    var SEP3 = "/";
    var POSIX_CHARS = {
      DOT_LITERAL,
      PLUS_LITERAL,
      QMARK_LITERAL,
      SLASH_LITERAL,
      ONE_CHAR,
      QMARK,
      END_ANCHOR,
      DOTS_SLASH,
      NO_DOT,
      NO_DOTS,
      NO_DOT_SLASH,
      NO_DOTS_SLASH,
      QMARK_NO_DOT,
      STAR,
      START_ANCHOR,
      SEP: SEP3
    };
    var WINDOWS_CHARS = {
      ...POSIX_CHARS,
      SLASH_LITERAL: `[${WIN_SLASH}]`,
      QMARK: WIN_NO_SLASH,
      STAR: `${WIN_NO_SLASH}*?`,
      DOTS_SLASH: `${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$)`,
      NO_DOT: `(?!${DOT_LITERAL})`,
      NO_DOTS: `(?!(?:^|[${WIN_SLASH}])${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$))`,
      NO_DOT_SLASH: `(?!${DOT_LITERAL}{0,1}(?:[${WIN_SLASH}]|$))`,
      NO_DOTS_SLASH: `(?!${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$))`,
      QMARK_NO_DOT: `[^.${WIN_SLASH}]`,
      START_ANCHOR: `(?:^|[${WIN_SLASH}])`,
      END_ANCHOR: `(?:[${WIN_SLASH}]|$)`,
      SEP: "\\"
    };
    var POSIX_REGEX_SOURCE = {
      __proto__: null,
      alnum: "a-zA-Z0-9",
      alpha: "a-zA-Z",
      ascii: "\\x00-\\x7F",
      blank: " \\t",
      cntrl: "\\x00-\\x1F\\x7F",
      digit: "0-9",
      graph: "\\x21-\\x7E",
      lower: "a-z",
      print: "\\x20-\\x7E ",
      punct: "\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~",
      space: " \\t\\r\\n\\v\\f",
      upper: "A-Z",
      word: "A-Za-z0-9_",
      xdigit: "A-Fa-f0-9"
    };
    module2.exports = {
      DEFAULT_MAX_EXTGLOB_RECURSION,
      MAX_LENGTH: 1024 * 64,
      POSIX_REGEX_SOURCE,
      // regular expressions
      REGEX_BACKSLASH: /\\(?![*+?^${}(|)[\]])/g,
      REGEX_NON_SPECIAL_CHARS: /^[^@![\].,$*+?^{}()|\\/]+/,
      REGEX_SPECIAL_CHARS: /[-*+?.^${}(|)[\]]/,
      REGEX_SPECIAL_CHARS_BACKREF: /(\\?)((\W)(\3*))/g,
      REGEX_SPECIAL_CHARS_GLOBAL: /([-*+?.^${}(|)[\]])/g,
      REGEX_REMOVE_BACKSLASH: /(?:\[.*?[^\\]\]|\\(?=.))/g,
      // Replace globs with equivalent patterns to reduce parsing time.
      REPLACEMENTS: {
        __proto__: null,
        "***": "*",
        "**/**": "**",
        "**/**/**": "**"
      },
      // Digits
      CHAR_0: 48,
      /* 0 */
      CHAR_9: 57,
      /* 9 */
      // Alphabet chars.
      CHAR_UPPERCASE_A: 65,
      /* A */
      CHAR_LOWERCASE_A: 97,
      /* a */
      CHAR_UPPERCASE_Z: 90,
      /* Z */
      CHAR_LOWERCASE_Z: 122,
      /* z */
      CHAR_LEFT_PARENTHESES: 40,
      /* ( */
      CHAR_RIGHT_PARENTHESES: 41,
      /* ) */
      CHAR_ASTERISK: 42,
      /* * */
      // Non-alphabetic chars.
      CHAR_AMPERSAND: 38,
      /* & */
      CHAR_AT: 64,
      /* @ */
      CHAR_BACKWARD_SLASH: 92,
      /* \ */
      CHAR_CARRIAGE_RETURN: 13,
      /* \r */
      CHAR_CIRCUMFLEX_ACCENT: 94,
      /* ^ */
      CHAR_COLON: 58,
      /* : */
      CHAR_COMMA: 44,
      /* , */
      CHAR_DOT: 46,
      /* . */
      CHAR_DOUBLE_QUOTE: 34,
      /* " */
      CHAR_EQUAL: 61,
      /* = */
      CHAR_EXCLAMATION_MARK: 33,
      /* ! */
      CHAR_FORM_FEED: 12,
      /* \f */
      CHAR_FORWARD_SLASH: 47,
      /* / */
      CHAR_GRAVE_ACCENT: 96,
      /* ` */
      CHAR_HASH: 35,
      /* # */
      CHAR_HYPHEN_MINUS: 45,
      /* - */
      CHAR_LEFT_ANGLE_BRACKET: 60,
      /* < */
      CHAR_LEFT_CURLY_BRACE: 123,
      /* { */
      CHAR_LEFT_SQUARE_BRACKET: 91,
      /* [ */
      CHAR_LINE_FEED: 10,
      /* \n */
      CHAR_NO_BREAK_SPACE: 160,
      /* \u00A0 */
      CHAR_PERCENT: 37,
      /* % */
      CHAR_PLUS: 43,
      /* + */
      CHAR_QUESTION_MARK: 63,
      /* ? */
      CHAR_RIGHT_ANGLE_BRACKET: 62,
      /* > */
      CHAR_RIGHT_CURLY_BRACE: 125,
      /* } */
      CHAR_RIGHT_SQUARE_BRACKET: 93,
      /* ] */
      CHAR_SEMICOLON: 59,
      /* ; */
      CHAR_SINGLE_QUOTE: 39,
      /* ' */
      CHAR_SPACE: 32,
      /*   */
      CHAR_TAB: 9,
      /* \t */
      CHAR_UNDERSCORE: 95,
      /* _ */
      CHAR_VERTICAL_LINE: 124,
      /* | */
      CHAR_ZERO_WIDTH_NOBREAK_SPACE: 65279,
      /* \uFEFF */
      /**
       * Create EXTGLOB_CHARS
       */
      extglobChars(chars) {
        return {
          "!": { type: "negate", open: "(?:(?!(?:", close: `))${chars.STAR})` },
          "?": { type: "qmark", open: "(?:", close: ")?" },
          "+": { type: "plus", open: "(?:", close: ")+" },
          "*": { type: "star", open: "(?:", close: ")*" },
          "@": { type: "at", open: "(?:", close: ")" }
        };
      },
      /**
       * Create GLOB_CHARS
       */
      globChars(win32) {
        return win32 === true ? WINDOWS_CHARS : POSIX_CHARS;
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/picomatch/4.0.4/0546af7cfa9a5912a758e05e0c75d31dec268037998816328e491e436f64c2fd/node_modules/picomatch/lib/utils.js
var require_utils3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/picomatch/4.0.4/0546af7cfa9a5912a758e05e0c75d31dec268037998816328e491e436f64c2fd/node_modules/picomatch/lib/utils.js"(exports2) {
    "use strict";
    var {
      REGEX_BACKSLASH,
      REGEX_REMOVE_BACKSLASH,
      REGEX_SPECIAL_CHARS,
      REGEX_SPECIAL_CHARS_GLOBAL
    } = require_constants2();
    exports2.isObject = (val) => val !== null && typeof val === "object" && !Array.isArray(val);
    exports2.hasRegexChars = (str2) => REGEX_SPECIAL_CHARS.test(str2);
    exports2.isRegexChar = (str2) => str2.length === 1 && exports2.hasRegexChars(str2);
    exports2.escapeRegex = (str2) => str2.replace(REGEX_SPECIAL_CHARS_GLOBAL, "\\$1");
    exports2.toPosixSlashes = (str2) => str2.replace(REGEX_BACKSLASH, "/");
    exports2.isWindows = () => {
      if (typeof navigator !== "undefined" && navigator.platform) {
        const platform3 = navigator.platform.toLowerCase();
        return platform3 === "win32" || platform3 === "windows";
      }
      if (typeof process !== "undefined" && process.platform) {
        return process.platform === "win32";
      }
      return false;
    };
    exports2.removeBackslashes = (str2) => {
      return str2.replace(REGEX_REMOVE_BACKSLASH, (match) => {
        return match === "\\" ? "" : match;
      });
    };
    exports2.escapeLast = (input, char, lastIdx) => {
      const idx = input.lastIndexOf(char, lastIdx);
      if (idx === -1) return input;
      if (input[idx - 1] === "\\") return exports2.escapeLast(input, char, idx - 1);
      return `${input.slice(0, idx)}\\${input.slice(idx)}`;
    };
    exports2.removePrefix = (input, state = {}) => {
      let output = input;
      if (output.startsWith("./")) {
        output = output.slice(2);
        state.prefix = "./";
      }
      return output;
    };
    exports2.wrapOutput = (input, state = {}, options = {}) => {
      const prepend = options.contains ? "" : "^";
      const append = options.contains ? "" : "$";
      let output = `${prepend}(?:${input})${append}`;
      if (state.negated === true) {
        output = `(?:^(?!${output}).*$)`;
      }
      return output;
    };
    exports2.basename = (path218, { windows } = {}) => {
      const segs = path218.split(windows ? /[\\/]/ : "/");
      const last = segs[segs.length - 1];
      if (last === "") {
        return segs[segs.length - 2];
      }
      return last;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/picomatch/4.0.4/0546af7cfa9a5912a758e05e0c75d31dec268037998816328e491e436f64c2fd/node_modules/picomatch/lib/scan.js
var require_scan = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/picomatch/4.0.4/0546af7cfa9a5912a758e05e0c75d31dec268037998816328e491e436f64c2fd/node_modules/picomatch/lib/scan.js"(exports2, module2) {
    "use strict";
    var utils = require_utils3();
    var {
      CHAR_ASTERISK: CHAR_ASTERISK2,
      /* * */
      CHAR_AT,
      /* @ */
      CHAR_BACKWARD_SLASH,
      /* \ */
      CHAR_COMMA: CHAR_COMMA2,
      /* , */
      CHAR_DOT,
      /* . */
      CHAR_EXCLAMATION_MARK,
      /* ! */
      CHAR_FORWARD_SLASH,
      /* / */
      CHAR_LEFT_CURLY_BRACE,
      /* { */
      CHAR_LEFT_PARENTHESES,
      /* ( */
      CHAR_LEFT_SQUARE_BRACKET: CHAR_LEFT_SQUARE_BRACKET2,
      /* [ */
      CHAR_PLUS,
      /* + */
      CHAR_QUESTION_MARK,
      /* ? */
      CHAR_RIGHT_CURLY_BRACE,
      /* } */
      CHAR_RIGHT_PARENTHESES,
      /* ) */
      CHAR_RIGHT_SQUARE_BRACKET: CHAR_RIGHT_SQUARE_BRACKET2
      /* ] */
    } = require_constants2();
    var isPathSeparator = (code) => {
      return code === CHAR_FORWARD_SLASH || code === CHAR_BACKWARD_SLASH;
    };
    var depth = (token) => {
      if (token.isPrefix !== true) {
        token.depth = token.isGlobstar ? Infinity : 1;
      }
    };
    var scan3 = (input, options) => {
      const opts2 = options || {};
      const length = input.length - 1;
      const scanToEnd = opts2.parts === true || opts2.scanToEnd === true;
      const slashes = [];
      const tokens = [];
      const parts = [];
      let str2 = input;
      let index = -1;
      let start = 0;
      let lastIndex = 0;
      let isBrace = false;
      let isBracket = false;
      let isGlob = false;
      let isExtglob = false;
      let isGlobstar = false;
      let braceEscaped = false;
      let backslashes = false;
      let negated = false;
      let negatedExtglob = false;
      let finished7 = false;
      let braces = 0;
      let prev;
      let code;
      let token = { value: "", depth: 0, isGlob: false };
      const eos = () => index >= length;
      const peek = () => str2.charCodeAt(index + 1);
      const advance = () => {
        prev = code;
        return str2.charCodeAt(++index);
      };
      while (index < length) {
        code = advance();
        let next2;
        if (code === CHAR_BACKWARD_SLASH) {
          backslashes = token.backslashes = true;
          code = advance();
          if (code === CHAR_LEFT_CURLY_BRACE) {
            braceEscaped = true;
          }
          continue;
        }
        if (braceEscaped === true || code === CHAR_LEFT_CURLY_BRACE) {
          braces++;
          while (eos() !== true && (code = advance())) {
            if (code === CHAR_BACKWARD_SLASH) {
              backslashes = token.backslashes = true;
              advance();
              continue;
            }
            if (code === CHAR_LEFT_CURLY_BRACE) {
              braces++;
              continue;
            }
            if (braceEscaped !== true && code === CHAR_DOT && (code = advance()) === CHAR_DOT) {
              isBrace = token.isBrace = true;
              isGlob = token.isGlob = true;
              finished7 = true;
              if (scanToEnd === true) {
                continue;
              }
              break;
            }
            if (braceEscaped !== true && code === CHAR_COMMA2) {
              isBrace = token.isBrace = true;
              isGlob = token.isGlob = true;
              finished7 = true;
              if (scanToEnd === true) {
                continue;
              }
              break;
            }
            if (code === CHAR_RIGHT_CURLY_BRACE) {
              braces--;
              if (braces === 0) {
                braceEscaped = false;
                isBrace = token.isBrace = true;
                finished7 = true;
                break;
              }
            }
          }
          if (scanToEnd === true) {
            continue;
          }
          break;
        }
        if (code === CHAR_FORWARD_SLASH) {
          slashes.push(index);
          tokens.push(token);
          token = { value: "", depth: 0, isGlob: false };
          if (finished7 === true) continue;
          if (prev === CHAR_DOT && index === start + 1) {
            start += 2;
            continue;
          }
          lastIndex = index + 1;
          continue;
        }
        if (opts2.noext !== true) {
          const isExtglobChar = code === CHAR_PLUS || code === CHAR_AT || code === CHAR_ASTERISK2 || code === CHAR_QUESTION_MARK || code === CHAR_EXCLAMATION_MARK;
          if (isExtglobChar === true && peek() === CHAR_LEFT_PARENTHESES) {
            isGlob = token.isGlob = true;
            isExtglob = token.isExtglob = true;
            finished7 = true;
            if (code === CHAR_EXCLAMATION_MARK && index === start) {
              negatedExtglob = true;
            }
            if (scanToEnd === true) {
              while (eos() !== true && (code = advance())) {
                if (code === CHAR_BACKWARD_SLASH) {
                  backslashes = token.backslashes = true;
                  code = advance();
                  continue;
                }
                if (code === CHAR_RIGHT_PARENTHESES) {
                  isGlob = token.isGlob = true;
                  finished7 = true;
                  break;
                }
              }
              continue;
            }
            break;
          }
        }
        if (code === CHAR_ASTERISK2) {
          if (prev === CHAR_ASTERISK2) isGlobstar = token.isGlobstar = true;
          isGlob = token.isGlob = true;
          finished7 = true;
          if (scanToEnd === true) {
            continue;
          }
          break;
        }
        if (code === CHAR_QUESTION_MARK) {
          isGlob = token.isGlob = true;
          finished7 = true;
          if (scanToEnd === true) {
            continue;
          }
          break;
        }
        if (code === CHAR_LEFT_SQUARE_BRACKET2) {
          while (eos() !== true && (next2 = advance())) {
            if (next2 === CHAR_BACKWARD_SLASH) {
              backslashes = token.backslashes = true;
              advance();
              continue;
            }
            if (next2 === CHAR_RIGHT_SQUARE_BRACKET2) {
              isBracket = token.isBracket = true;
              isGlob = token.isGlob = true;
              finished7 = true;
              break;
            }
          }
          if (scanToEnd === true) {
            continue;
          }
          break;
        }
        if (opts2.nonegate !== true && code === CHAR_EXCLAMATION_MARK && index === start) {
          negated = token.negated = true;
          start++;
          continue;
        }
        if (opts2.noparen !== true && code === CHAR_LEFT_PARENTHESES) {
          isGlob = token.isGlob = true;
          if (scanToEnd === true) {
            while (eos() !== true && (code = advance())) {
              if (code === CHAR_LEFT_PARENTHESES) {
                backslashes = token.backslashes = true;
                code = advance();
                continue;
              }
              if (code === CHAR_RIGHT_PARENTHESES) {
                finished7 = true;
                break;
              }
            }
            continue;
          }
          break;
        }
        if (isGlob === true) {
          finished7 = true;
          if (scanToEnd === true) {
            continue;
          }
          break;
        }
      }
      if (opts2.noext === true) {
        isExtglob = false;
        isGlob = false;
      }
      let base = str2;
      let prefix = "";
      let glob2 = "";
      if (start > 0) {
        prefix = str2.slice(0, start);
        str2 = str2.slice(start);
        lastIndex -= start;
      }
      if (base && isGlob === true && lastIndex > 0) {
        base = str2.slice(0, lastIndex);
        glob2 = str2.slice(lastIndex);
      } else if (isGlob === true) {
        base = "";
        glob2 = str2;
      } else {
        base = str2;
      }
      if (base && base !== "" && base !== "/" && base !== str2) {
        if (isPathSeparator(base.charCodeAt(base.length - 1))) {
          base = base.slice(0, -1);
        }
      }
      if (opts2.unescape === true) {
        if (glob2) glob2 = utils.removeBackslashes(glob2);
        if (base && backslashes === true) {
          base = utils.removeBackslashes(base);
        }
      }
      const state = {
        prefix,
        input,
        start,
        base,
        glob: glob2,
        isBrace,
        isBracket,
        isGlob,
        isExtglob,
        isGlobstar,
        negated,
        negatedExtglob
      };
      if (opts2.tokens === true) {
        state.maxDepth = 0;
        if (!isPathSeparator(code)) {
          tokens.push(token);
        }
        state.tokens = tokens;
      }
      if (opts2.parts === true || opts2.tokens === true) {
        let prevIndex;
        for (let idx = 0; idx < slashes.length; idx++) {
          const n2 = prevIndex ? prevIndex + 1 : start;
          const i2 = slashes[idx];
          const value = input.slice(n2, i2);
          if (opts2.tokens) {
            if (idx === 0 && start !== 0) {
              tokens[idx].isPrefix = true;
              tokens[idx].value = prefix;
            } else {
              tokens[idx].value = value;
            }
            depth(tokens[idx]);
            state.maxDepth += tokens[idx].depth;
          }
          if (idx !== 0 || value !== "") {
            parts.push(value);
          }
          prevIndex = i2;
        }
        if (prevIndex && prevIndex + 1 < input.length) {
          const value = input.slice(prevIndex + 1);
          parts.push(value);
          if (opts2.tokens) {
            tokens[tokens.length - 1].value = value;
            depth(tokens[tokens.length - 1]);
            state.maxDepth += tokens[tokens.length - 1].depth;
          }
        }
        state.slashes = slashes;
        state.parts = parts;
      }
      return state;
    };
    module2.exports = scan3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/picomatch/4.0.4/0546af7cfa9a5912a758e05e0c75d31dec268037998816328e491e436f64c2fd/node_modules/picomatch/lib/parse.js
var require_parse4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/picomatch/4.0.4/0546af7cfa9a5912a758e05e0c75d31dec268037998816328e491e436f64c2fd/node_modules/picomatch/lib/parse.js"(exports2, module2) {
    "use strict";
    var constants5 = require_constants2();
    var utils = require_utils3();
    var {
      MAX_LENGTH,
      POSIX_REGEX_SOURCE,
      REGEX_NON_SPECIAL_CHARS,
      REGEX_SPECIAL_CHARS_BACKREF,
      REPLACEMENTS
    } = constants5;
    var expandRange = (args, options) => {
      if (typeof options.expandRange === "function") {
        return options.expandRange(...args, options);
      }
      args.sort();
      const value = `[${args.join("-")}]`;
      try {
        new RegExp(value);
      } catch (ex) {
        return args.map((v) => utils.escapeRegex(v)).join("..");
      }
      return value;
    };
    var syntaxError = (type4, char) => {
      return `Missing ${type4}: "${char}" - use "\\\\${char}" to match literal characters`;
    };
    var splitTopLevel = (input) => {
      const parts = [];
      let bracket = 0;
      let paren = 0;
      let quote2 = 0;
      let value = "";
      let escaped = false;
      for (const ch of input) {
        if (escaped === true) {
          value += ch;
          escaped = false;
          continue;
        }
        if (ch === "\\") {
          value += ch;
          escaped = true;
          continue;
        }
        if (ch === '"') {
          quote2 = quote2 === 1 ? 0 : 1;
          value += ch;
          continue;
        }
        if (quote2 === 0) {
          if (ch === "[") {
            bracket++;
          } else if (ch === "]" && bracket > 0) {
            bracket--;
          } else if (bracket === 0) {
            if (ch === "(") {
              paren++;
            } else if (ch === ")" && paren > 0) {
              paren--;
            } else if (ch === "|" && paren === 0) {
              parts.push(value);
              value = "";
              continue;
            }
          }
        }
        value += ch;
      }
      parts.push(value);
      return parts;
    };
    var isPlainBranch = (branch) => {
      let escaped = false;
      for (const ch of branch) {
        if (escaped === true) {
          escaped = false;
          continue;
        }
        if (ch === "\\") {
          escaped = true;
          continue;
        }
        if (/[?*+@!()[\]{}]/.test(ch)) {
          return false;
        }
      }
      return true;
    };
    var normalizeSimpleBranch = (branch) => {
      let value = branch.trim();
      let changed = true;
      while (changed === true) {
        changed = false;
        if (/^@\([^\\()[\]{}|]+\)$/.test(value)) {
          value = value.slice(2, -1);
          changed = true;
        }
      }
      if (!isPlainBranch(value)) {
        return;
      }
      return value.replace(/\\(.)/g, "$1");
    };
    var hasRepeatedCharPrefixOverlap = (branches) => {
      const values = branches.map(normalizeSimpleBranch).filter(Boolean);
      for (let i2 = 0; i2 < values.length; i2++) {
        for (let j2 = i2 + 1; j2 < values.length; j2++) {
          const a2 = values[i2];
          const b = values[j2];
          const char = a2[0];
          if (!char || a2 !== char.repeat(a2.length) || b !== char.repeat(b.length)) {
            continue;
          }
          if (a2 === b || a2.startsWith(b) || b.startsWith(a2)) {
            return true;
          }
        }
      }
      return false;
    };
    var parseRepeatedExtglob = (pattern, requireEnd = true) => {
      if (pattern[0] !== "+" && pattern[0] !== "*" || pattern[1] !== "(") {
        return;
      }
      let bracket = 0;
      let paren = 0;
      let quote2 = 0;
      let escaped = false;
      for (let i2 = 1; i2 < pattern.length; i2++) {
        const ch = pattern[i2];
        if (escaped === true) {
          escaped = false;
          continue;
        }
        if (ch === "\\") {
          escaped = true;
          continue;
        }
        if (ch === '"') {
          quote2 = quote2 === 1 ? 0 : 1;
          continue;
        }
        if (quote2 === 1) {
          continue;
        }
        if (ch === "[") {
          bracket++;
          continue;
        }
        if (ch === "]" && bracket > 0) {
          bracket--;
          continue;
        }
        if (bracket > 0) {
          continue;
        }
        if (ch === "(") {
          paren++;
          continue;
        }
        if (ch === ")") {
          paren--;
          if (paren === 0) {
            if (requireEnd === true && i2 !== pattern.length - 1) {
              return;
            }
            return {
              type: pattern[0],
              body: pattern.slice(2, i2),
              end: i2
            };
          }
        }
      }
    };
    var getStarExtglobSequenceOutput = (pattern) => {
      let index = 0;
      const chars = [];
      while (index < pattern.length) {
        const match = parseRepeatedExtglob(pattern.slice(index), false);
        if (!match || match.type !== "*") {
          return;
        }
        const branches = splitTopLevel(match.body).map((branch2) => branch2.trim());
        if (branches.length !== 1) {
          return;
        }
        const branch = normalizeSimpleBranch(branches[0]);
        if (!branch || branch.length !== 1) {
          return;
        }
        chars.push(branch);
        index += match.end + 1;
      }
      if (chars.length < 1) {
        return;
      }
      const source = chars.length === 1 ? utils.escapeRegex(chars[0]) : `[${chars.map((ch) => utils.escapeRegex(ch)).join("")}]`;
      return `${source}*`;
    };
    var repeatedExtglobRecursion = (pattern) => {
      let depth = 0;
      let value = pattern.trim();
      let match = parseRepeatedExtglob(value);
      while (match) {
        depth++;
        value = match.body.trim();
        match = parseRepeatedExtglob(value);
      }
      return depth;
    };
    var analyzeRepeatedExtglob = (body, options) => {
      if (options.maxExtglobRecursion === false) {
        return { risky: false };
      }
      const max3 = typeof options.maxExtglobRecursion === "number" ? options.maxExtglobRecursion : constants5.DEFAULT_MAX_EXTGLOB_RECURSION;
      const branches = splitTopLevel(body).map((branch) => branch.trim());
      if (branches.length > 1) {
        if (branches.some((branch) => branch === "") || branches.some((branch) => /^[*?]+$/.test(branch)) || hasRepeatedCharPrefixOverlap(branches)) {
          return { risky: true };
        }
      }
      for (const branch of branches) {
        const safeOutput = getStarExtglobSequenceOutput(branch);
        if (safeOutput) {
          return { risky: true, safeOutput };
        }
        if (repeatedExtglobRecursion(branch) > max3) {
          return { risky: true };
        }
      }
      return { risky: false };
    };
    var parse7 = (input, options) => {
      if (typeof input !== "string") {
        throw new TypeError("Expected a string");
      }
      input = REPLACEMENTS[input] || input;
      const opts2 = { ...options };
      const max3 = typeof opts2.maxLength === "number" ? Math.min(MAX_LENGTH, opts2.maxLength) : MAX_LENGTH;
      let len = input.length;
      if (len > max3) {
        throw new SyntaxError(`Input length: ${len}, exceeds maximum allowed length: ${max3}`);
      }
      const bos = { type: "bos", value: "", output: opts2.prepend || "" };
      const tokens = [bos];
      const capture = opts2.capture ? "" : "?:";
      const PLATFORM_CHARS = constants5.globChars(opts2.windows);
      const EXTGLOB_CHARS = constants5.extglobChars(PLATFORM_CHARS);
      const {
        DOT_LITERAL,
        PLUS_LITERAL,
        SLASH_LITERAL,
        ONE_CHAR,
        DOTS_SLASH,
        NO_DOT,
        NO_DOT_SLASH,
        NO_DOTS_SLASH,
        QMARK,
        QMARK_NO_DOT,
        STAR,
        START_ANCHOR
      } = PLATFORM_CHARS;
      const globstar = (opts3) => {
        return `(${capture}(?:(?!${START_ANCHOR}${opts3.dot ? DOTS_SLASH : DOT_LITERAL}).)*?)`;
      };
      const nodot = opts2.dot ? "" : NO_DOT;
      const qmarkNoDot = opts2.dot ? QMARK : QMARK_NO_DOT;
      let star = opts2.bash === true ? globstar(opts2) : STAR;
      if (opts2.capture) {
        star = `(${star})`;
      }
      if (typeof opts2.noext === "boolean") {
        opts2.noextglob = opts2.noext;
      }
      const state = {
        input,
        index: -1,
        start: 0,
        dot: opts2.dot === true,
        consumed: "",
        output: "",
        prefix: "",
        backtrack: false,
        negated: false,
        brackets: 0,
        braces: 0,
        parens: 0,
        quotes: 0,
        globstar: false,
        tokens
      };
      input = utils.removePrefix(input, state);
      len = input.length;
      const extglobs = [];
      const braces = [];
      const stack = [];
      let prev = bos;
      let value;
      const eos = () => state.index === len - 1;
      const peek = state.peek = (n2 = 1) => input[state.index + n2];
      const advance = state.advance = () => input[++state.index] || "";
      const remaining = () => input.slice(state.index + 1);
      const consume = (value2 = "", num = 0) => {
        state.consumed += value2;
        state.index += num;
      };
      const append = (token) => {
        state.output += token.output != null ? token.output : token.value;
        consume(token.value);
      };
      const negate = () => {
        let count2 = 1;
        while (peek() === "!" && (peek(2) !== "(" || peek(3) === "?")) {
          advance();
          state.start++;
          count2++;
        }
        if (count2 % 2 === 0) {
          return false;
        }
        state.negated = true;
        state.start++;
        return true;
      };
      const increment2 = (type4) => {
        state[type4]++;
        stack.push(type4);
      };
      const decrement = (type4) => {
        state[type4]--;
        stack.pop();
      };
      const push = (tok) => {
        if (prev.type === "globstar") {
          const isBrace = state.braces > 0 && (tok.type === "comma" || tok.type === "brace");
          const isExtglob = tok.extglob === true || extglobs.length && (tok.type === "pipe" || tok.type === "paren");
          if (tok.type !== "slash" && tok.type !== "paren" && !isBrace && !isExtglob) {
            state.output = state.output.slice(0, -prev.output.length);
            prev.type = "star";
            prev.value = "*";
            prev.output = star;
            state.output += prev.output;
          }
        }
        if (extglobs.length && tok.type !== "paren") {
          extglobs[extglobs.length - 1].inner += tok.value;
        }
        if (tok.value || tok.output) append(tok);
        if (prev && prev.type === "text" && tok.type === "text") {
          prev.output = (prev.output || prev.value) + tok.value;
          prev.value += tok.value;
          return;
        }
        tok.prev = prev;
        tokens.push(tok);
        prev = tok;
      };
      const extglobOpen = (type4, value2) => {
        const token = { ...EXTGLOB_CHARS[value2], conditions: 1, inner: "" };
        token.prev = prev;
        token.parens = state.parens;
        token.output = state.output;
        token.startIndex = state.index;
        token.tokensIndex = tokens.length;
        const output = (opts2.capture ? "(" : "") + token.open;
        increment2("parens");
        push({ type: type4, value: value2, output: state.output ? "" : ONE_CHAR });
        push({ type: "paren", extglob: true, value: advance(), output });
        extglobs.push(token);
      };
      const extglobClose = (token) => {
        const literal = input.slice(token.startIndex, state.index + 1);
        const body = input.slice(token.startIndex + 2, state.index);
        const analysis = analyzeRepeatedExtglob(body, opts2);
        if ((token.type === "plus" || token.type === "star") && analysis.risky) {
          const safeOutput = analysis.safeOutput ? (token.output ? "" : ONE_CHAR) + (opts2.capture ? `(${analysis.safeOutput})` : analysis.safeOutput) : void 0;
          const open5 = tokens[token.tokensIndex];
          open5.type = "text";
          open5.value = literal;
          open5.output = safeOutput || utils.escapeRegex(literal);
          for (let i2 = token.tokensIndex + 1; i2 < tokens.length; i2++) {
            tokens[i2].value = "";
            tokens[i2].output = "";
            delete tokens[i2].suffix;
          }
          state.output = token.output + open5.output;
          state.backtrack = true;
          push({ type: "paren", extglob: true, value, output: "" });
          decrement("parens");
          return;
        }
        let output = token.close + (opts2.capture ? ")" : "");
        let rest;
        if (token.type === "negate") {
          let extglobStar = star;
          if (token.inner && token.inner.length > 1 && token.inner.includes("/")) {
            extglobStar = globstar(opts2);
          }
          if (extglobStar !== star || eos() || /^\)+$/.test(remaining())) {
            output = token.close = `)$))${extglobStar}`;
          }
          if (token.inner.includes("*") && (rest = remaining()) && /^\.[^\\/.]+$/.test(rest)) {
            const expression = parse7(rest, { ...options, fastpaths: false }).output;
            output = token.close = `)${expression})${extglobStar})`;
          }
          if (token.prev.type === "bos") {
            state.negatedExtglob = true;
          }
        }
        push({ type: "paren", extglob: true, value, output });
        decrement("parens");
      };
      if (opts2.fastpaths !== false && !/(^[*!]|[/()[\]{}"])/.test(input)) {
        let backslashes = false;
        let output = input.replace(REGEX_SPECIAL_CHARS_BACKREF, (m, esc, chars, first, rest, index) => {
          if (first === "\\") {
            backslashes = true;
            return m;
          }
          if (first === "?") {
            if (esc) {
              return esc + first + (rest ? QMARK.repeat(rest.length) : "");
            }
            if (index === 0) {
              return qmarkNoDot + (rest ? QMARK.repeat(rest.length) : "");
            }
            return QMARK.repeat(chars.length);
          }
          if (first === ".") {
            return DOT_LITERAL.repeat(chars.length);
          }
          if (first === "*") {
            if (esc) {
              return esc + first + (rest ? star : "");
            }
            return star;
          }
          return esc ? m : `\\${m}`;
        });
        if (backslashes === true) {
          if (opts2.unescape === true) {
            output = output.replace(/\\/g, "");
          } else {
            output = output.replace(/\\+/g, (m) => {
              return m.length % 2 === 0 ? "\\\\" : m ? "\\" : "";
            });
          }
        }
        if (output === input && opts2.contains === true) {
          state.output = input;
          return state;
        }
        state.output = utils.wrapOutput(output, state, options);
        return state;
      }
      while (!eos()) {
        value = advance();
        if (value === "\0") {
          continue;
        }
        if (value === "\\") {
          const next2 = peek();
          if (next2 === "/" && opts2.bash !== true) {
            continue;
          }
          if (next2 === "." || next2 === ";") {
            continue;
          }
          if (!next2) {
            value += "\\";
            push({ type: "text", value });
            continue;
          }
          const match = /^\\+/.exec(remaining());
          let slashes = 0;
          if (match && match[0].length > 2) {
            slashes = match[0].length;
            state.index += slashes;
            if (slashes % 2 !== 0) {
              value += "\\";
            }
          }
          if (opts2.unescape === true) {
            value = advance();
          } else {
            value += advance();
          }
          if (state.brackets === 0) {
            push({ type: "text", value });
            continue;
          }
        }
        if (state.brackets > 0 && (value !== "]" || prev.value === "[" || prev.value === "[^")) {
          if (opts2.posix !== false && value === ":") {
            const inner = prev.value.slice(1);
            if (inner.includes("[")) {
              prev.posix = true;
              if (inner.includes(":")) {
                const idx = prev.value.lastIndexOf("[");
                const pre = prev.value.slice(0, idx);
                const rest2 = prev.value.slice(idx + 2);
                const posix2 = POSIX_REGEX_SOURCE[rest2];
                if (posix2) {
                  prev.value = pre + posix2;
                  state.backtrack = true;
                  advance();
                  if (!bos.output && tokens.indexOf(prev) === 1) {
                    bos.output = ONE_CHAR;
                  }
                  continue;
                }
              }
            }
          }
          if (value === "[" && peek() !== ":" || value === "-" && peek() === "]") {
            value = `\\${value}`;
          }
          if (value === "]" && (prev.value === "[" || prev.value === "[^")) {
            value = `\\${value}`;
          }
          if (opts2.posix === true && value === "!" && prev.value === "[") {
            value = "^";
          }
          prev.value += value;
          append({ value });
          continue;
        }
        if (state.quotes === 1 && value !== '"') {
          value = utils.escapeRegex(value);
          prev.value += value;
          append({ value });
          continue;
        }
        if (value === '"') {
          state.quotes = state.quotes === 1 ? 0 : 1;
          if (opts2.keepQuotes === true) {
            push({ type: "text", value });
          }
          continue;
        }
        if (value === "(") {
          increment2("parens");
          push({ type: "paren", value });
          continue;
        }
        if (value === ")") {
          if (state.parens === 0 && opts2.strictBrackets === true) {
            throw new SyntaxError(syntaxError("opening", "("));
          }
          const extglob = extglobs[extglobs.length - 1];
          if (extglob && state.parens === extglob.parens + 1) {
            extglobClose(extglobs.pop());
            continue;
          }
          push({ type: "paren", value, output: state.parens ? ")" : "\\)" });
          decrement("parens");
          continue;
        }
        if (value === "[") {
          if (opts2.nobracket === true || !remaining().includes("]")) {
            if (opts2.nobracket !== true && opts2.strictBrackets === true) {
              throw new SyntaxError(syntaxError("closing", "]"));
            }
            value = `\\${value}`;
          } else {
            increment2("brackets");
          }
          push({ type: "bracket", value });
          continue;
        }
        if (value === "]") {
          if (opts2.nobracket === true || prev && prev.type === "bracket" && prev.value.length === 1) {
            push({ type: "text", value, output: `\\${value}` });
            continue;
          }
          if (state.brackets === 0) {
            if (opts2.strictBrackets === true) {
              throw new SyntaxError(syntaxError("opening", "["));
            }
            push({ type: "text", value, output: `\\${value}` });
            continue;
          }
          decrement("brackets");
          const prevValue = prev.value.slice(1);
          if (prev.posix !== true && prevValue[0] === "^" && !prevValue.includes("/")) {
            value = `/${value}`;
          }
          prev.value += value;
          append({ value });
          if (opts2.literalBrackets === false || utils.hasRegexChars(prevValue)) {
            continue;
          }
          const escaped = utils.escapeRegex(prev.value);
          state.output = state.output.slice(0, -prev.value.length);
          if (opts2.literalBrackets === true) {
            state.output += escaped;
            prev.value = escaped;
            continue;
          }
          prev.value = `(${capture}${escaped}|${prev.value})`;
          state.output += prev.value;
          continue;
        }
        if (value === "{" && opts2.nobrace !== true) {
          increment2("braces");
          const open5 = {
            type: "brace",
            value,
            output: "(",
            outputIndex: state.output.length,
            tokensIndex: state.tokens.length
          };
          braces.push(open5);
          push(open5);
          continue;
        }
        if (value === "}") {
          const brace = braces[braces.length - 1];
          if (opts2.nobrace === true || !brace) {
            push({ type: "text", value, output: value });
            continue;
          }
          let output = ")";
          if (brace.dots === true) {
            const arr = tokens.slice();
            const range = [];
            for (let i2 = arr.length - 1; i2 >= 0; i2--) {
              tokens.pop();
              if (arr[i2].type === "brace") {
                break;
              }
              if (arr[i2].type !== "dots") {
                range.unshift(arr[i2].value);
              }
            }
            output = expandRange(range, opts2);
            state.backtrack = true;
          }
          if (brace.comma !== true && brace.dots !== true) {
            const out = state.output.slice(0, brace.outputIndex);
            const toks = state.tokens.slice(brace.tokensIndex);
            brace.value = brace.output = "\\{";
            value = output = "\\}";
            state.output = out;
            for (const t2 of toks) {
              state.output += t2.output || t2.value;
            }
          }
          push({ type: "brace", value, output });
          decrement("braces");
          braces.pop();
          continue;
        }
        if (value === "|") {
          if (extglobs.length > 0) {
            extglobs[extglobs.length - 1].conditions++;
          }
          push({ type: "text", value });
          continue;
        }
        if (value === ",") {
          let output = value;
          const brace = braces[braces.length - 1];
          if (brace && stack[stack.length - 1] === "braces") {
            brace.comma = true;
            output = "|";
          }
          push({ type: "comma", value, output });
          continue;
        }
        if (value === "/") {
          if (prev.type === "dot" && state.index === state.start + 1) {
            state.start = state.index + 1;
            state.consumed = "";
            state.output = "";
            tokens.pop();
            prev = bos;
            continue;
          }
          push({ type: "slash", value, output: SLASH_LITERAL });
          continue;
        }
        if (value === ".") {
          if (state.braces > 0 && prev.type === "dot") {
            if (prev.value === ".") prev.output = DOT_LITERAL;
            const brace = braces[braces.length - 1];
            prev.type = "dots";
            prev.output += value;
            prev.value += value;
            brace.dots = true;
            continue;
          }
          if (state.braces + state.parens === 0 && prev.type !== "bos" && prev.type !== "slash") {
            push({ type: "text", value, output: DOT_LITERAL });
            continue;
          }
          push({ type: "dot", value, output: DOT_LITERAL });
          continue;
        }
        if (value === "?") {
          const isGroup2 = prev && prev.value === "(";
          if (!isGroup2 && opts2.noextglob !== true && peek() === "(" && peek(2) !== "?") {
            extglobOpen("qmark", value);
            continue;
          }
          if (prev && prev.type === "paren") {
            const next2 = peek();
            let output = value;
            if (prev.value === "(" && !/[!=<:]/.test(next2) || next2 === "<" && !/<([!=]|\w+>)/.test(remaining())) {
              output = `\\${value}`;
            }
            push({ type: "text", value, output });
            continue;
          }
          if (opts2.dot !== true && (prev.type === "slash" || prev.type === "bos")) {
            push({ type: "qmark", value, output: QMARK_NO_DOT });
            continue;
          }
          push({ type: "qmark", value, output: QMARK });
          continue;
        }
        if (value === "!") {
          if (opts2.noextglob !== true && peek() === "(") {
            if (peek(2) !== "?" || !/[!=<:]/.test(peek(3))) {
              extglobOpen("negate", value);
              continue;
            }
          }
          if (opts2.nonegate !== true && state.index === 0) {
            negate();
            continue;
          }
        }
        if (value === "+") {
          if (opts2.noextglob !== true && peek() === "(" && peek(2) !== "?") {
            extglobOpen("plus", value);
            continue;
          }
          if (prev && prev.value === "(" || opts2.regex === false) {
            push({ type: "plus", value, output: PLUS_LITERAL });
            continue;
          }
          if (prev && (prev.type === "bracket" || prev.type === "paren" || prev.type === "brace") || state.parens > 0) {
            push({ type: "plus", value });
            continue;
          }
          push({ type: "plus", value: PLUS_LITERAL });
          continue;
        }
        if (value === "@") {
          if (opts2.noextglob !== true && peek() === "(" && peek(2) !== "?") {
            push({ type: "at", extglob: true, value, output: "" });
            continue;
          }
          push({ type: "text", value });
          continue;
        }
        if (value !== "*") {
          if (value === "$" || value === "^") {
            value = `\\${value}`;
          }
          const match = REGEX_NON_SPECIAL_CHARS.exec(remaining());
          if (match) {
            value += match[0];
            state.index += match[0].length;
          }
          push({ type: "text", value });
          continue;
        }
        if (prev && (prev.type === "globstar" || prev.star === true)) {
          prev.type = "star";
          prev.star = true;
          prev.value += value;
          prev.output = star;
          state.backtrack = true;
          state.globstar = true;
          consume(value);
          continue;
        }
        let rest = remaining();
        if (opts2.noextglob !== true && /^\([^?]/.test(rest)) {
          extglobOpen("star", value);
          continue;
        }
        if (prev.type === "star") {
          if (opts2.noglobstar === true) {
            consume(value);
            continue;
          }
          const prior = prev.prev;
          const before = prior.prev;
          const isStart = prior.type === "slash" || prior.type === "bos";
          const afterStar = before && (before.type === "star" || before.type === "globstar");
          if (opts2.bash === true && (!isStart || rest[0] && rest[0] !== "/")) {
            push({ type: "star", value, output: "" });
            continue;
          }
          const isBrace = state.braces > 0 && (prior.type === "comma" || prior.type === "brace");
          const isExtglob = extglobs.length && (prior.type === "pipe" || prior.type === "paren");
          if (!isStart && prior.type !== "paren" && !isBrace && !isExtglob) {
            push({ type: "star", value, output: "" });
            continue;
          }
          while (rest.slice(0, 3) === "/**") {
            const after = input[state.index + 4];
            if (after && after !== "/") {
              break;
            }
            rest = rest.slice(3);
            consume("/**", 3);
          }
          if (prior.type === "bos" && eos()) {
            prev.type = "globstar";
            prev.value += value;
            prev.output = globstar(opts2);
            state.output = prev.output;
            state.globstar = true;
            consume(value);
            continue;
          }
          if (prior.type === "slash" && prior.prev.type !== "bos" && !afterStar && eos()) {
            state.output = state.output.slice(0, -(prior.output + prev.output).length);
            prior.output = `(?:${prior.output}`;
            prev.type = "globstar";
            prev.output = globstar(opts2) + (opts2.strictSlashes ? ")" : "|$)");
            prev.value += value;
            state.globstar = true;
            state.output += prior.output + prev.output;
            consume(value);
            continue;
          }
          if (prior.type === "slash" && prior.prev.type !== "bos" && rest[0] === "/") {
            const end = rest[1] !== void 0 ? "|$" : "";
            state.output = state.output.slice(0, -(prior.output + prev.output).length);
            prior.output = `(?:${prior.output}`;
            prev.type = "globstar";
            prev.output = `${globstar(opts2)}${SLASH_LITERAL}|${SLASH_LITERAL}${end})`;
            prev.value += value;
            state.output += prior.output + prev.output;
            state.globstar = true;
            consume(value + advance());
            push({ type: "slash", value: "/", output: "" });
            continue;
          }
          if (prior.type === "bos" && rest[0] === "/") {
            prev.type = "globstar";
            prev.value += value;
            prev.output = `(?:^|${SLASH_LITERAL}|${globstar(opts2)}${SLASH_LITERAL})`;
            state.output = prev.output;
            state.globstar = true;
            consume(value + advance());
            push({ type: "slash", value: "/", output: "" });
            continue;
          }
          state.output = state.output.slice(0, -prev.output.length);
          prev.type = "globstar";
          prev.output = globstar(opts2);
          prev.value += value;
          state.output += prev.output;
          state.globstar = true;
          consume(value);
          continue;
        }
        const token = { type: "star", value, output: star };
        if (opts2.bash === true) {
          token.output = ".*?";
          if (prev.type === "bos" || prev.type === "slash") {
            token.output = nodot + token.output;
          }
          push(token);
          continue;
        }
        if (prev && (prev.type === "bracket" || prev.type === "paren") && opts2.regex === true) {
          token.output = value;
          push(token);
          continue;
        }
        if (state.index === state.start || prev.type === "slash" || prev.type === "dot") {
          if (prev.type === "dot") {
            state.output += NO_DOT_SLASH;
            prev.output += NO_DOT_SLASH;
          } else if (opts2.dot === true) {
            state.output += NO_DOTS_SLASH;
            prev.output += NO_DOTS_SLASH;
          } else {
            state.output += nodot;
            prev.output += nodot;
          }
          if (peek() !== "*") {
            state.output += ONE_CHAR;
            prev.output += ONE_CHAR;
          }
        }
        push(token);
      }
      while (state.brackets > 0) {
        if (opts2.strictBrackets === true) throw new SyntaxError(syntaxError("closing", "]"));
        state.output = utils.escapeLast(state.output, "[");
        decrement("brackets");
      }
      while (state.parens > 0) {
        if (opts2.strictBrackets === true) throw new SyntaxError(syntaxError("closing", ")"));
        state.output = utils.escapeLast(state.output, "(");
        decrement("parens");
      }
      while (state.braces > 0) {
        if (opts2.strictBrackets === true) throw new SyntaxError(syntaxError("closing", "}"));
        state.output = utils.escapeLast(state.output, "{");
        decrement("braces");
      }
      if (opts2.strictSlashes !== true && (prev.type === "star" || prev.type === "bracket")) {
        push({ type: "maybe_slash", value: "", output: `${SLASH_LITERAL}?` });
      }
      if (state.backtrack === true) {
        state.output = "";
        for (const token of state.tokens) {
          state.output += token.output != null ? token.output : token.value;
          if (token.suffix) {
            state.output += token.suffix;
          }
        }
      }
      return state;
    };
    parse7.fastpaths = (input, options) => {
      const opts2 = { ...options };
      const max3 = typeof opts2.maxLength === "number" ? Math.min(MAX_LENGTH, opts2.maxLength) : MAX_LENGTH;
      const len = input.length;
      if (len > max3) {
        throw new SyntaxError(`Input length: ${len}, exceeds maximum allowed length: ${max3}`);
      }
      input = REPLACEMENTS[input] || input;
      const {
        DOT_LITERAL,
        SLASH_LITERAL,
        ONE_CHAR,
        DOTS_SLASH,
        NO_DOT,
        NO_DOTS,
        NO_DOTS_SLASH,
        STAR,
        START_ANCHOR
      } = constants5.globChars(opts2.windows);
      const nodot = opts2.dot ? NO_DOTS : NO_DOT;
      const slashDot = opts2.dot ? NO_DOTS_SLASH : NO_DOT;
      const capture = opts2.capture ? "" : "?:";
      const state = { negated: false, prefix: "" };
      let star = opts2.bash === true ? ".*?" : STAR;
      if (opts2.capture) {
        star = `(${star})`;
      }
      const globstar = (opts3) => {
        if (opts3.noglobstar === true) return star;
        return `(${capture}(?:(?!${START_ANCHOR}${opts3.dot ? DOTS_SLASH : DOT_LITERAL}).)*?)`;
      };
      const create = (str2) => {
        switch (str2) {
          case "*":
            return `${nodot}${ONE_CHAR}${star}`;
          case ".*":
            return `${DOT_LITERAL}${ONE_CHAR}${star}`;
          case "*.*":
            return `${nodot}${star}${DOT_LITERAL}${ONE_CHAR}${star}`;
          case "*/*":
            return `${nodot}${star}${SLASH_LITERAL}${ONE_CHAR}${slashDot}${star}`;
          case "**":
            return nodot + globstar(opts2);
          case "**/*":
            return `(?:${nodot}${globstar(opts2)}${SLASH_LITERAL})?${slashDot}${ONE_CHAR}${star}`;
          case "**/*.*":
            return `(?:${nodot}${globstar(opts2)}${SLASH_LITERAL})?${slashDot}${star}${DOT_LITERAL}${ONE_CHAR}${star}`;
          case "**/.*":
            return `(?:${nodot}${globstar(opts2)}${SLASH_LITERAL})?${DOT_LITERAL}${ONE_CHAR}${star}`;
          default: {
            const match = /^(.*?)\.(\w+)$/.exec(str2);
            if (!match) return;
            const source2 = create(match[1]);
            if (!source2) return;
            return source2 + DOT_LITERAL + match[2];
          }
        }
      };
      const output = utils.removePrefix(input, state);
      let source = create(output);
      if (source && opts2.strictSlashes !== true) {
        source += `${SLASH_LITERAL}?`;
      }
      return source;
    };
    module2.exports = parse7;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/picomatch/4.0.4/0546af7cfa9a5912a758e05e0c75d31dec268037998816328e491e436f64c2fd/node_modules/picomatch/lib/picomatch.js
var require_picomatch = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/picomatch/4.0.4/0546af7cfa9a5912a758e05e0c75d31dec268037998816328e491e436f64c2fd/node_modules/picomatch/lib/picomatch.js"(exports2, module2) {
    "use strict";
    var scan3 = require_scan();
    var parse7 = require_parse4();
    var utils = require_utils3();
    var constants5 = require_constants2();
    var isObject4 = (val) => val && typeof val === "object" && !Array.isArray(val);
    var picomatch2 = (glob2, options, returnState = false) => {
      if (Array.isArray(glob2)) {
        const fns = glob2.map((input) => picomatch2(input, options, returnState));
        const arrayMatcher = (str2) => {
          for (const isMatch of fns) {
            const state2 = isMatch(str2);
            if (state2) return state2;
          }
          return false;
        };
        return arrayMatcher;
      }
      const isState = isObject4(glob2) && glob2.tokens && glob2.input;
      if (glob2 === "" || typeof glob2 !== "string" && !isState) {
        throw new TypeError("Expected pattern to be a non-empty string");
      }
      const opts2 = options || {};
      const posix2 = opts2.windows;
      const regex2 = isState ? picomatch2.compileRe(glob2, options) : picomatch2.makeRe(glob2, options, false, true);
      const state = regex2.state;
      delete regex2.state;
      let isIgnored = () => false;
      if (opts2.ignore) {
        const ignoreOpts = { ...options, ignore: null, onMatch: null, onResult: null };
        isIgnored = picomatch2(opts2.ignore, ignoreOpts, returnState);
      }
      const matcher = (input, returnObject = false) => {
        const { isMatch, match, output } = picomatch2.test(input, regex2, options, { glob: glob2, posix: posix2 });
        const result2 = { glob: glob2, state, regex: regex2, posix: posix2, input, output, match, isMatch };
        if (typeof opts2.onResult === "function") {
          opts2.onResult(result2);
        }
        if (isMatch === false) {
          result2.isMatch = false;
          return returnObject ? result2 : false;
        }
        if (isIgnored(input)) {
          if (typeof opts2.onIgnore === "function") {
            opts2.onIgnore(result2);
          }
          result2.isMatch = false;
          return returnObject ? result2 : false;
        }
        if (typeof opts2.onMatch === "function") {
          opts2.onMatch(result2);
        }
        return returnObject ? result2 : true;
      };
      if (returnState) {
        matcher.state = state;
      }
      return matcher;
    };
    picomatch2.test = (input, regex2, options, { glob: glob2, posix: posix2 } = {}) => {
      if (typeof input !== "string") {
        throw new TypeError("Expected input to be a string");
      }
      if (input === "") {
        return { isMatch: false, output: "" };
      }
      const opts2 = options || {};
      const format2 = opts2.format || (posix2 ? utils.toPosixSlashes : null);
      let match = input === glob2;
      let output = match && format2 ? format2(input) : input;
      if (match === false) {
        output = format2 ? format2(input) : input;
        match = output === glob2;
      }
      if (match === false || opts2.capture === true) {
        if (opts2.matchBase === true || opts2.basename === true) {
          match = picomatch2.matchBase(input, regex2, options, posix2);
        } else {
          match = regex2.exec(output);
        }
      }
      return { isMatch: Boolean(match), match, output };
    };
    picomatch2.matchBase = (input, glob2, options) => {
      const regex2 = glob2 instanceof RegExp ? glob2 : picomatch2.makeRe(glob2, options);
      return regex2.test(utils.basename(input));
    };
    picomatch2.isMatch = (str2, patterns, options) => picomatch2(patterns, options)(str2);
    picomatch2.parse = (pattern, options) => {
      if (Array.isArray(pattern)) return pattern.map((p) => picomatch2.parse(p, options));
      return parse7(pattern, { ...options, fastpaths: false });
    };
    picomatch2.scan = (input, options) => scan3(input, options);
    picomatch2.compileRe = (state, options, returnOutput = false, returnState = false) => {
      if (returnOutput === true) {
        return state.output;
      }
      const opts2 = options || {};
      const prepend = opts2.contains ? "" : "^";
      const append = opts2.contains ? "" : "$";
      let source = `${prepend}(?:${state.output})${append}`;
      if (state && state.negated === true) {
        source = `^(?!${source}).*$`;
      }
      const regex2 = picomatch2.toRegex(source, options);
      if (returnState === true) {
        regex2.state = state;
      }
      return regex2;
    };
    picomatch2.makeRe = (input, options = {}, returnOutput = false, returnState = false) => {
      if (!input || typeof input !== "string") {
        throw new TypeError("Expected a non-empty string");
      }
      let parsed = { negated: false, fastpaths: true };
      if (options.fastpaths !== false && (input[0] === "." || input[0] === "*")) {
        parsed.output = parse7.fastpaths(input, options);
      }
      if (!parsed.output) {
        parsed = parse7(input, options);
      }
      return picomatch2.compileRe(parsed, options, returnOutput, returnState);
    };
    picomatch2.toRegex = (source, options) => {
      try {
        const opts2 = options || {};
        return new RegExp(source, opts2.flags || (opts2.nocase ? "i" : ""));
      } catch (err) {
        if (options && options.debug === true) throw err;
        return /$^/;
      }
    };
    picomatch2.constants = constants5;
    module2.exports = picomatch2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/picomatch/4.0.4/0546af7cfa9a5912a758e05e0c75d31dec268037998816328e491e436f64c2fd/node_modules/picomatch/index.js
var require_picomatch2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/picomatch/4.0.4/0546af7cfa9a5912a758e05e0c75d31dec268037998816328e491e436f64c2fd/node_modules/picomatch/index.js"(exports2, module2) {
    "use strict";
    var pico = require_picomatch();
    var utils = require_utils3();
    function picomatch2(glob2, options, returnState = false) {
      if (options && (options.windows === null || options.windows === void 0)) {
        options = { ...options, windows: utils.isWindows() };
      }
      return pico(glob2, options, returnState);
    }
    Object.assign(picomatch2, pico);
    module2.exports = picomatch2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/tinyglobby/0.2.16/101fcd3abaa07165332c28e50431fd79626ac3d2c66ab0cf36647e4581a2f1e2/node_modules/tinyglobby/dist/index.mjs
import { readdir, readdirSync, realpath, realpathSync, stat, statSync as statSync2 } from "fs";
import { isAbsolute, posix, resolve as resolve2 } from "path";
import { fileURLToPath as fileURLToPath4 } from "url";
function getPartialMatcher(patterns, options = {}) {
  const patternsCount = patterns.length;
  const patternsParts = Array(patternsCount);
  const matchers = Array(patternsCount);
  let i2, j2;
  for (i2 = 0; i2 < patternsCount; i2++) {
    const parts = splitPattern(patterns[i2]);
    patternsParts[i2] = parts;
    const partsCount = parts.length;
    const partMatchers = Array(partsCount);
    for (j2 = 0; j2 < partsCount; j2++) partMatchers[j2] = (0, import_picomatch.default)(parts[j2], options);
    matchers[i2] = partMatchers;
  }
  return (input) => {
    const inputParts = input.split("/");
    if (inputParts[0] === ".." && ONLY_PARENT_DIRECTORIES.test(input)) return true;
    for (i2 = 0; i2 < patternsCount; i2++) {
      const patternParts = patternsParts[i2];
      const matcher = matchers[i2];
      const inputPatternCount = inputParts.length;
      const minParts = Math.min(inputPatternCount, patternParts.length);
      j2 = 0;
      while (j2 < minParts) {
        const part = patternParts[j2];
        if (part.includes("/")) return true;
        if (!matcher[j2](inputParts[j2])) break;
        if (!options.noglobstar && part === "**") return true;
        j2++;
      }
      if (j2 === inputPatternCount) return true;
    }
    return false;
  };
}
function buildFormat(cwd, root, absolute) {
  if (cwd === root || root.startsWith(`${cwd}/`)) {
    if (absolute) {
      const start = cwd.length + +!isRoot(cwd);
      return (p, isDir) => p.slice(start, isDir ? -1 : void 0) || ".";
    }
    const prefix = root.slice(cwd.length + 1);
    if (prefix) return (p, isDir) => {
      if (p === ".") return prefix;
      const result2 = `${prefix}/${p}`;
      return isDir ? result2.slice(0, -1) : result2;
    };
    return (p, isDir) => isDir && p !== "." ? p.slice(0, -1) : p;
  }
  if (absolute) return (p) => posix.relative(cwd, p) || ".";
  return (p) => posix.relative(cwd, `${root}/${p}`) || ".";
}
function buildRelative(cwd, root) {
  if (root.startsWith(`${cwd}/`)) {
    const prefix = root.slice(cwd.length + 1);
    return (p) => `${prefix}/${p}`;
  }
  return (p) => {
    const result2 = posix.relative(cwd, `${root}/${p}`);
    return p[p.length - 1] === "/" && result2 !== "" ? `${result2}/` : result2 || ".";
  };
}
function splitPattern(path218) {
  var _result$parts;
  const result2 = import_picomatch.default.scan(path218, splitPatternOptions);
  return ((_result$parts = result2.parts) === null || _result$parts === void 0 ? void 0 : _result$parts.length) ? result2.parts : [path218];
}
function isDynamicPattern(pattern, options) {
  if ((options === null || options === void 0 ? void 0 : options.caseSensitiveMatch) === false) return true;
  const scan3 = import_picomatch.default.scan(pattern);
  return scan3.isGlob || scan3.negated;
}
function log(...tasks) {
  console.log(`[tinyglobby ${(/* @__PURE__ */ new Date()).toLocaleTimeString("es")}]`, ...tasks);
}
function ensureStringArray(value) {
  return typeof value === "string" ? [value] : value !== null && value !== void 0 ? value : [];
}
function normalizePattern(pattern, opts2, props3, isIgnore) {
  var _PARENT_DIRECTORY$exe;
  const cwd = opts2.cwd;
  let result2 = pattern;
  if (pattern[pattern.length - 1] === "/") result2 = pattern.slice(0, -1);
  if (result2[result2.length - 1] !== "*" && opts2.expandDirectories) result2 += "/**";
  const escapedCwd = escapePath(cwd);
  result2 = isAbsolute(result2.replace(ESCAPING_BACKSLASHES, "")) ? posix.relative(escapedCwd, result2) : posix.normalize(result2);
  const parentDir = (_PARENT_DIRECTORY$exe = PARENT_DIRECTORY.exec(result2)) === null || _PARENT_DIRECTORY$exe === void 0 ? void 0 : _PARENT_DIRECTORY$exe[0];
  const parts = splitPattern(result2);
  if (parentDir) {
    const n2 = (parentDir.length + 1) / 3;
    let i2 = 0;
    const cwdParts = escapedCwd.split("/");
    while (i2 < n2 && parts[i2 + n2] === cwdParts[cwdParts.length + i2 - n2]) {
      result2 = result2.slice(0, (n2 - i2 - 1) * 3) + result2.slice((n2 - i2) * 3 + parts[i2 + n2].length + 1) || ".";
      i2++;
    }
    const potentialRoot = posix.join(cwd, parentDir.slice(i2 * 3));
    if (potentialRoot[0] !== "." && props3.root.length > potentialRoot.length) {
      props3.root = potentialRoot;
      props3.depthOffset = -n2 + i2;
    }
  }
  if (!isIgnore && props3.depthOffset >= 0) {
    var _props$commonPath;
    (_props$commonPath = props3.commonPath) !== null && _props$commonPath !== void 0 || (props3.commonPath = parts);
    const newCommonPath = [];
    const length = Math.min(props3.commonPath.length, parts.length);
    for (let i2 = 0; i2 < length; i2++) {
      const part = parts[i2];
      if (part === "**" && !parts[i2 + 1]) {
        newCommonPath.pop();
        break;
      }
      if (i2 === parts.length - 1 || part !== props3.commonPath[i2] || isDynamicPattern(part)) break;
      newCommonPath.push(part);
    }
    props3.depthOffset = newCommonPath.length;
    props3.commonPath = newCommonPath;
    props3.root = newCommonPath.length > 0 ? posix.join(cwd, ...newCommonPath) : cwd;
  }
  return result2;
}
function processPatterns(options, patterns, props3) {
  const matchPatterns = [];
  const ignorePatterns = [];
  for (const pattern of options.ignore) {
    if (!pattern) continue;
    if (pattern[0] !== "!" || pattern[1] === "(") ignorePatterns.push(normalizePattern(pattern, options, props3, true));
  }
  for (const pattern of patterns) {
    if (!pattern) continue;
    if (pattern[0] !== "!" || pattern[1] === "(") matchPatterns.push(normalizePattern(pattern, options, props3, false));
    else if (pattern[1] !== "!" || pattern[2] === "(") ignorePatterns.push(normalizePattern(pattern.slice(1), options, props3, true));
  }
  return {
    match: matchPatterns,
    ignore: ignorePatterns
  };
}
function buildCrawler(options, patterns) {
  const cwd = options.cwd;
  const props3 = {
    root: cwd,
    depthOffset: 0
  };
  const processed = processPatterns(options, patterns, props3);
  if (options.debug) log("internal processing patterns:", processed);
  const { absolute, caseSensitiveMatch, debug, dot, followSymbolicLinks, onlyDirectories } = options;
  const root = props3.root.replace(BACKSLASHES, "");
  const matchOptions = {
    dot,
    nobrace: options.braceExpansion === false,
    nocase: !caseSensitiveMatch,
    noextglob: options.extglob === false,
    noglobstar: options.globstar === false,
    posix: true
  };
  const matcher = (0, import_picomatch.default)(processed.match, matchOptions);
  const ignore2 = (0, import_picomatch.default)(processed.ignore, matchOptions);
  const partialMatcher = getPartialMatcher(processed.match, matchOptions);
  const format2 = buildFormat(cwd, root, absolute);
  const excludeFormatter = absolute ? format2 : buildFormat(cwd, root, true);
  const excludePredicate = (_, p) => {
    const relativePath = excludeFormatter(p, true);
    return relativePath !== "." && !partialMatcher(relativePath) || ignore2(relativePath);
  };
  let maxDepth;
  if (options.deep !== void 0) maxDepth = Math.round(options.deep - props3.depthOffset);
  const crawler = new Builder({
    filters: [debug ? (p, isDirectory) => {
      const path218 = format2(p, isDirectory);
      const matches2 = matcher(path218) && !ignore2(path218);
      if (matches2) log(`matched ${path218}`);
      return matches2;
    } : (p, isDirectory) => {
      const path218 = format2(p, isDirectory);
      return matcher(path218) && !ignore2(path218);
    }],
    exclude: debug ? (_, p) => {
      const skipped = excludePredicate(_, p);
      log(`${skipped ? "skipped" : "crawling"} ${p}`);
      return skipped;
    } : excludePredicate,
    fs: options.fs,
    pathSeparator: "/",
    relativePaths: !absolute,
    resolvePaths: absolute,
    includeBasePath: absolute,
    resolveSymlinks: followSymbolicLinks,
    excludeSymlinks: !followSymbolicLinks,
    excludeFiles: onlyDirectories,
    includeDirs: onlyDirectories || !options.onlyFiles,
    maxDepth,
    signal: options.signal
  }).crawl(root);
  if (options.debug) log("internal properties:", {
    ...props3,
    root
  });
  return [crawler, cwd !== root && !absolute && buildRelative(cwd, root)];
}
function formatPaths(paths3, mapper) {
  if (mapper) for (let i2 = paths3.length - 1; i2 >= 0; i2--) paths3[i2] = mapper(paths3[i2]);
  return paths3;
}
function getOptions(options) {
  const opts2 = {
    ...defaultOptions2,
    ...options
  };
  opts2.cwd = (opts2.cwd instanceof URL ? fileURLToPath4(opts2.cwd) : resolve2(opts2.cwd)).replace(BACKSLASHES, "/");
  opts2.ignore = ensureStringArray(opts2.ignore);
  opts2.fs && (opts2.fs = {
    readdir: opts2.fs.readdir || readdir,
    readdirSync: opts2.fs.readdirSync || readdirSync,
    realpath: opts2.fs.realpath || realpath,
    realpathSync: opts2.fs.realpathSync || realpathSync,
    stat: opts2.fs.stat || stat,
    statSync: opts2.fs.statSync || statSync2
  });
  if (opts2.debug) log("globbing with options:", opts2);
  return opts2;
}
function getCrawler(globInput, inputOptions = {}) {
  var _ref;
  if (globInput && (inputOptions === null || inputOptions === void 0 ? void 0 : inputOptions.patterns)) throw new Error("Cannot pass patterns as both an argument and an option");
  const isModern = isReadonlyArray(globInput) || typeof globInput === "string";
  const patterns = ensureStringArray((_ref = isModern ? globInput : globInput.patterns) !== null && _ref !== void 0 ? _ref : "**/*");
  const options = getOptions(isModern ? inputOptions : globInput);
  return patterns.length > 0 ? buildCrawler(options, patterns) : [];
}
async function glob(globInput, options) {
  const [crawler, relative2] = getCrawler(globInput, options);
  return crawler ? formatPaths(await crawler.withPromise(), relative2) : [];
}
var import_picomatch, isReadonlyArray, BACKSLASHES, isWin, ONLY_PARENT_DIRECTORIES, WIN32_ROOT_DIR, isRoot, splitPatternOptions, POSIX_UNESCAPED_GLOB_SYMBOLS, WIN32_UNESCAPED_GLOB_SYMBOLS, escapePosixPath, escapeWin32Path, escapePath, PARENT_DIRECTORY, ESCAPING_BACKSLASHES, defaultOptions2;
var init_dist3 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/tinyglobby/0.2.16/101fcd3abaa07165332c28e50431fd79626ac3d2c66ab0cf36647e4581a2f1e2/node_modules/tinyglobby/dist/index.mjs"() {
    init_dist2();
    import_picomatch = __toESM(require_picomatch2(), 1);
    isReadonlyArray = Array.isArray;
    BACKSLASHES = /\\/g;
    isWin = process.platform === "win32";
    ONLY_PARENT_DIRECTORIES = /^(\/?\.\.)+$/;
    WIN32_ROOT_DIR = /^[A-Z]:\/$/i;
    isRoot = isWin ? (p) => WIN32_ROOT_DIR.test(p) : (p) => p === "/";
    splitPatternOptions = { parts: true };
    POSIX_UNESCAPED_GLOB_SYMBOLS = /(?<!\\)([()[\]{}*?|]|^!|[!+@](?=\()|\\(?![()[\]{}!*+?@|]))/g;
    WIN32_UNESCAPED_GLOB_SYMBOLS = /(?<!\\)([()[\]{}]|^!|[!+@](?=\())/g;
    escapePosixPath = (path218) => path218.replace(POSIX_UNESCAPED_GLOB_SYMBOLS, "\\$&");
    escapeWin32Path = (path218) => path218.replace(WIN32_UNESCAPED_GLOB_SYMBOLS, "\\$&");
    escapePath = isWin ? escapeWin32Path : escapePosixPath;
    PARENT_DIRECTORY = /^(\/?\.\.)+/;
    ESCAPING_BACKSLASHES = /\\(?=[()[\]{}!*+?@|])/g;
    defaultOptions2 = {
      caseSensitiveMatch: true,
      cwd: process.cwd(),
      debug: !!process.env.TINYGLOBBY_DEBUG,
      expandDirectories: true,
      followSymbolicLinks: true,
      onlyFiles: true
    };
  }
});

// ../workspace/projects-reader/lib/findPackages.js
import { promises as fs10 } from "node:fs";
import path18 from "node:path";
import util3 from "node:util";
async function findPackages(root, opts2) {
  opts2 = opts2 ?? {};
  const globOpts = { ...opts2, cwd: root, expandDirectories: false };
  globOpts.ignore = opts2.ignore ?? DEFAULT_IGNORE;
  const patterns = normalizePatterns(opts2.patterns ?? [".", "**"]);
  delete globOpts.patterns;
  const paths3 = await glob(patterns, globOpts);
  if (opts2.includeRoot) {
    paths3.push(...await glob(normalizePatterns(["."]), globOpts));
  }
  return pFilter(
    // `Array.from()` doesn't create an intermediate instance,
    // unlike `array.map()`
    Array.from(
      // Remove duplicate paths using `Set`
      new Set(paths3.map((manifestPath) => path18.join(root, manifestPath)).sort((path1, path218) => (0, import_util2.lexCompare)(path18.dirname(path1), path18.dirname(path218)))),
      async (manifestPath) => {
        try {
          const rootDir = path18.dirname(manifestPath);
          return {
            rootDir,
            rootDirRealPath: await fs10.realpath(rootDir),
            ...await readExactProjectManifest(manifestPath)
          };
        } catch (err) {
          if (util3.types.isNativeError(err) && "code" in err && err.code === "ENOENT") {
            return null;
          }
          throw err;
        }
      }
    ),
    Boolean
  );
}
function normalizePatterns(patterns) {
  const normalizedPatterns = [];
  for (const pattern of patterns) {
    normalizedPatterns.push(pattern.replace(/\/?$/, "/package.{json,yaml,json5}"));
  }
  return normalizedPatterns;
}
var import_util2, DEFAULT_IGNORE;
var init_findPackages = __esm({
  "../workspace/projects-reader/lib/findPackages.js"() {
    "use strict";
    import_util2 = __toESM(require_dist3(), 1);
    init_lib13();
    init_p_filter();
    init_dist3();
    DEFAULT_IGNORE = [
      "**/node_modules/**",
      "**/bower_components/**",
      "**/test/**",
      "**/tests/**"
    ];
  }
});

// ../workspace/projects-reader/lib/index.js
async function findWorkspaceProjects(workspaceRoot, opts2) {
  const projects = await findWorkspaceProjectsNoCheck(workspaceRoot, opts2);
  for (const project of projects) {
    packageIsInstallable2(project.rootDir, project.manifest, {
      ...opts2,
      supportedArchitectures: opts2?.supportedArchitectures ?? {
        os: ["current"],
        cpu: ["current"],
        libc: ["current"]
      }
    });
    if (opts2?.sharedWorkspaceLockfile && project.rootDir !== workspaceRoot) {
      checkNonRootProjectManifest(project);
    }
  }
  return projects;
}
async function findWorkspaceProjectsNoCheck(workspaceRoot, opts2) {
  const projects = await findPackages(workspaceRoot, {
    ignore: [
      "**/node_modules/**",
      "**/bower_components/**"
    ],
    includeRoot: true,
    patterns: opts2?.patterns
  });
  projects.sort((project1, project2) => (0, import_util3.lexCompare)(project1.rootDir, project2.rootDir));
  return projects;
}
function checkNonRootProjectManifest({ manifest, rootDir }) {
  const warn = printNonRootFieldWarning.bind(null, rootDir);
  for (const field of uselessNonRootManifestFields) {
    if (field in manifest) {
      warn(field);
    }
  }
}
function printNonRootFieldWarning(prefix, propertyPath) {
  logger.warn({
    message: `The field "${propertyPath}" was found in ${prefix}/package.json. This will not take effect. You should configure "${propertyPath}" at the root of the workspace instead.`,
    prefix
  });
}
var import_util3, uselessNonRootManifestFields;
var init_lib30 = __esm({
  "../workspace/projects-reader/lib/index.js"() {
    "use strict";
    init_lib29();
    init_lib3();
    import_util3 = __toESM(require_dist3(), 1);
    init_findPackages();
    init_findPackages();
    uselessNonRootManifestFields = ["resolutions"];
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/better-path-resolve/2.0.0/e066f8a0a157777f698ec4707dc0026edc830ea8827eeb29a3d32906ea207d48/node_modules/better-path-resolve/index.js
import path19 from "node:path";
function winResolve(p) {
  if (arguments.length === 0) return path19.resolve();
  if (typeof p !== "string") {
    return path19.resolve(p);
  }
  if (p[1] === ":") {
    const cc = p[0].charCodeAt();
    if (cc < 65 || cc > 90) {
      p = `${p[0].toUpperCase()}${p.substr(1)}`;
    }
  }
  if (p.endsWith(":")) {
    return p;
  }
  return path19.resolve(p);
}
var import_is_windows3, betterPathResolve;
var init_better_path_resolve = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/better-path-resolve/2.0.0/e066f8a0a157777f698ec4707dc0026edc830ea8827eeb29a3d32906ea207d48/node_modules/better-path-resolve/index.js"() {
    import_is_windows3 = __toESM(require_is_windows(), 1);
    betterPathResolve = (0, import_is_windows3.default)() ? winResolve : path19.resolve;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/is-subdir/2.0.0/86b3cd44735afb9f459dad7b43ddfc23f1a21495323a3fb38b9ab590c29f23ce/node_modules/is-subdir/index.js
import path20 from "node:path";
function isSubdir(parentDir, subdir) {
  const rParent = `${betterPathResolve(parentDir)}${path20.sep}`;
  const rDir = `${betterPathResolve(subdir)}${path20.sep}`;
  return rDir.startsWith(rParent);
}
var init_is_subdir = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/is-subdir/2.0.0/86b3cd44735afb9f459dad7b43ddfc23f1a21495323a3fb38b9ab590c29f23ce/node_modules/is-subdir/index.js"() {
    init_better_path_resolve();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/braces/3.0.3/d2039003dfed14fc26988ac9171b4dfe6ab58307723d49dad0895a1368a75bcb/node_modules/braces/lib/utils.js
var require_utils4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/braces/3.0.3/d2039003dfed14fc26988ac9171b4dfe6ab58307723d49dad0895a1368a75bcb/node_modules/braces/lib/utils.js"(exports2) {
    "use strict";
    exports2.isInteger = (num) => {
      if (typeof num === "number") {
        return Number.isInteger(num);
      }
      if (typeof num === "string" && num.trim() !== "") {
        return Number.isInteger(Number(num));
      }
      return false;
    };
    exports2.find = (node, type4) => node.nodes.find((node2) => node2.type === type4);
    exports2.exceedsLimit = (min, max3, step2 = 1, limit) => {
      if (limit === false) return false;
      if (!exports2.isInteger(min) || !exports2.isInteger(max3)) return false;
      return (Number(max3) - Number(min)) / Number(step2) >= limit;
    };
    exports2.escapeNode = (block, n2 = 0, type4) => {
      const node = block.nodes[n2];
      if (!node) return;
      if (type4 && node.type === type4 || node.type === "open" || node.type === "close") {
        if (node.escaped !== true) {
          node.value = "\\" + node.value;
          node.escaped = true;
        }
      }
    };
    exports2.encloseBrace = (node) => {
      if (node.type !== "brace") return false;
      if (node.commas >> 0 + node.ranges >> 0 === 0) {
        node.invalid = true;
        return true;
      }
      return false;
    };
    exports2.isInvalidBrace = (block) => {
      if (block.type !== "brace") return false;
      if (block.invalid === true || block.dollar) return true;
      if (block.commas >> 0 + block.ranges >> 0 === 0) {
        block.invalid = true;
        return true;
      }
      if (block.open !== true || block.close !== true) {
        block.invalid = true;
        return true;
      }
      return false;
    };
    exports2.isOpenOrClose = (node) => {
      if (node.type === "open" || node.type === "close") {
        return true;
      }
      return node.open === true || node.close === true;
    };
    exports2.reduce = (nodes) => nodes.reduce((acc, node) => {
      if (node.type === "text") acc.push(node.value);
      if (node.type === "range") node.type = "text";
      return acc;
    }, []);
    exports2.flatten = (...args) => {
      const result2 = [];
      const flat = (arr) => {
        for (let i2 = 0; i2 < arr.length; i2++) {
          const ele = arr[i2];
          if (Array.isArray(ele)) {
            flat(ele);
            continue;
          }
          if (ele !== void 0) {
            result2.push(ele);
          }
        }
        return result2;
      };
      flat(args);
      return result2;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/braces/3.0.3/d2039003dfed14fc26988ac9171b4dfe6ab58307723d49dad0895a1368a75bcb/node_modules/braces/lib/stringify.js
var require_stringify2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/braces/3.0.3/d2039003dfed14fc26988ac9171b4dfe6ab58307723d49dad0895a1368a75bcb/node_modules/braces/lib/stringify.js"(exports2, module2) {
    "use strict";
    var utils = require_utils4();
    module2.exports = (ast, options = {}) => {
      const stringify = (node, parent = {}) => {
        const invalidBlock = options.escapeInvalid && utils.isInvalidBrace(parent);
        const invalidNode = node.invalid === true && options.escapeInvalid === true;
        let output = "";
        if (node.value) {
          if ((invalidBlock || invalidNode) && utils.isOpenOrClose(node)) {
            return "\\" + node.value;
          }
          return node.value;
        }
        if (node.value) {
          return node.value;
        }
        if (node.nodes) {
          for (const child of node.nodes) {
            output += stringify(child);
          }
        }
        return output;
      };
      return stringify(ast);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/is-number/7.0.0/9613abb83deb6b72fdd092fda49730946a626517d4926a9f5c00ca322630c588/node_modules/is-number/index.js
var require_is_number = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/is-number/7.0.0/9613abb83deb6b72fdd092fda49730946a626517d4926a9f5c00ca322630c588/node_modules/is-number/index.js"(exports2, module2) {
    "use strict";
    module2.exports = function(num) {
      if (typeof num === "number") {
        return num - num === 0;
      }
      if (typeof num === "string" && num.trim() !== "") {
        return Number.isFinite ? Number.isFinite(+num) : isFinite(+num);
      }
      return false;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/to-regex-range/5.0.1/e55082e174dc917a955607638a77d8978552a7d78773d047c1263c740e4d7c0f/node_modules/to-regex-range/index.js
var require_to_regex_range = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/to-regex-range/5.0.1/e55082e174dc917a955607638a77d8978552a7d78773d047c1263c740e4d7c0f/node_modules/to-regex-range/index.js"(exports2, module2) {
    "use strict";
    var isNumber = require_is_number();
    var toRegexRange = (min, max3, options) => {
      if (isNumber(min) === false) {
        throw new TypeError("toRegexRange: expected the first argument to be a number");
      }
      if (max3 === void 0 || min === max3) {
        return String(min);
      }
      if (isNumber(max3) === false) {
        throw new TypeError("toRegexRange: expected the second argument to be a number.");
      }
      let opts2 = { relaxZeros: true, ...options };
      if (typeof opts2.strictZeros === "boolean") {
        opts2.relaxZeros = opts2.strictZeros === false;
      }
      let relax = String(opts2.relaxZeros);
      let shorthand = String(opts2.shorthand);
      let capture = String(opts2.capture);
      let wrap = String(opts2.wrap);
      let cacheKey = min + ":" + max3 + "=" + relax + shorthand + capture + wrap;
      if (toRegexRange.cache.hasOwnProperty(cacheKey)) {
        return toRegexRange.cache[cacheKey].result;
      }
      let a2 = Math.min(min, max3);
      let b = Math.max(min, max3);
      if (Math.abs(a2 - b) === 1) {
        let result2 = min + "|" + max3;
        if (opts2.capture) {
          return `(${result2})`;
        }
        if (opts2.wrap === false) {
          return result2;
        }
        return `(?:${result2})`;
      }
      let isPadded = hasPadding(min) || hasPadding(max3);
      let state = { min, max: max3, a: a2, b };
      let positives = [];
      let negatives = [];
      if (isPadded) {
        state.isPadded = isPadded;
        state.maxLen = String(state.max).length;
      }
      if (a2 < 0) {
        let newMin = b < 0 ? Math.abs(b) : 1;
        negatives = splitToPatterns(newMin, Math.abs(a2), state, opts2);
        a2 = state.a = 0;
      }
      if (b >= 0) {
        positives = splitToPatterns(a2, b, state, opts2);
      }
      state.negatives = negatives;
      state.positives = positives;
      state.result = collatePatterns(negatives, positives, opts2);
      if (opts2.capture === true) {
        state.result = `(${state.result})`;
      } else if (opts2.wrap !== false && positives.length + negatives.length > 1) {
        state.result = `(?:${state.result})`;
      }
      toRegexRange.cache[cacheKey] = state;
      return state.result;
    };
    function collatePatterns(neg, pos, options) {
      let onlyNegative = filterPatterns(neg, pos, "-", false, options) || [];
      let onlyPositive = filterPatterns(pos, neg, "", false, options) || [];
      let intersected = filterPatterns(neg, pos, "-?", true, options) || [];
      let subpatterns = onlyNegative.concat(intersected).concat(onlyPositive);
      return subpatterns.join("|");
    }
    function splitToRanges(min, max3) {
      let nines = 1;
      let zeros = 1;
      let stop = countNines(min, nines);
      let stops = /* @__PURE__ */ new Set([max3]);
      while (min <= stop && stop <= max3) {
        stops.add(stop);
        nines += 1;
        stop = countNines(min, nines);
      }
      stop = countZeros(max3 + 1, zeros) - 1;
      while (min < stop && stop <= max3) {
        stops.add(stop);
        zeros += 1;
        stop = countZeros(max3 + 1, zeros) - 1;
      }
      stops = [...stops];
      stops.sort(compare2);
      return stops;
    }
    function rangeToPattern(start, stop, options) {
      if (start === stop) {
        return { pattern: start, count: [], digits: 0 };
      }
      let zipped = zip(start, stop);
      let digits = zipped.length;
      let pattern = "";
      let count2 = 0;
      for (let i2 = 0; i2 < digits; i2++) {
        let [startDigit, stopDigit] = zipped[i2];
        if (startDigit === stopDigit) {
          pattern += startDigit;
        } else if (startDigit !== "0" || stopDigit !== "9") {
          pattern += toCharacterClass(startDigit, stopDigit, options);
        } else {
          count2++;
        }
      }
      if (count2) {
        pattern += options.shorthand === true ? "\\d" : "[0-9]";
      }
      return { pattern, count: [count2], digits };
    }
    function splitToPatterns(min, max3, tok, options) {
      let ranges = splitToRanges(min, max3);
      let tokens = [];
      let start = min;
      let prev;
      for (let i2 = 0; i2 < ranges.length; i2++) {
        let max4 = ranges[i2];
        let obj = rangeToPattern(String(start), String(max4), options);
        let zeros = "";
        if (!tok.isPadded && prev && prev.pattern === obj.pattern) {
          if (prev.count.length > 1) {
            prev.count.pop();
          }
          prev.count.push(obj.count[0]);
          prev.string = prev.pattern + toQuantifier(prev.count);
          start = max4 + 1;
          continue;
        }
        if (tok.isPadded) {
          zeros = padZeros(max4, tok, options);
        }
        obj.string = zeros + obj.pattern + toQuantifier(obj.count);
        tokens.push(obj);
        start = max4 + 1;
        prev = obj;
      }
      return tokens;
    }
    function filterPatterns(arr, comparison, prefix, intersection, options) {
      let result2 = [];
      for (let ele of arr) {
        let { string } = ele;
        if (!intersection && !contains3(comparison, "string", string)) {
          result2.push(prefix + string);
        }
        if (intersection && contains3(comparison, "string", string)) {
          result2.push(prefix + string);
        }
      }
      return result2;
    }
    function zip(a2, b) {
      let arr = [];
      for (let i2 = 0; i2 < a2.length; i2++) arr.push([a2[i2], b[i2]]);
      return arr;
    }
    function compare2(a2, b) {
      return a2 > b ? 1 : b > a2 ? -1 : 0;
    }
    function contains3(arr, key, val) {
      return arr.some((ele) => ele[key] === val);
    }
    function countNines(min, len) {
      return Number(String(min).slice(0, -len) + "9".repeat(len));
    }
    function countZeros(integer, zeros) {
      return integer - integer % Math.pow(10, zeros);
    }
    function toQuantifier(digits) {
      let [start = 0, stop = ""] = digits;
      if (stop || start > 1) {
        return `{${start + (stop ? "," + stop : "")}}`;
      }
      return "";
    }
    function toCharacterClass(a2, b, options) {
      return `[${a2}${b - a2 === 1 ? "" : "-"}${b}]`;
    }
    function hasPadding(str2) {
      return /^-?(0+)\d/.test(str2);
    }
    function padZeros(value, tok, options) {
      if (!tok.isPadded) {
        return value;
      }
      let diff = Math.abs(tok.maxLen - String(value).length);
      let relax = options.relaxZeros !== false;
      switch (diff) {
        case 0:
          return "";
        case 1:
          return relax ? "0?" : "0";
        case 2:
          return relax ? "0{0,2}" : "00";
        default: {
          return relax ? `0{0,${diff}}` : `0{${diff}}`;
        }
      }
    }
    toRegexRange.cache = {};
    toRegexRange.clearCache = () => toRegexRange.cache = {};
    module2.exports = toRegexRange;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fill-range/7.1.1/cdf2fb341eb6146d178e71e3e567948d1810e3947af7ae4c97c575c1cbd80d2a/node_modules/fill-range/index.js
var require_fill_range = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fill-range/7.1.1/cdf2fb341eb6146d178e71e3e567948d1810e3947af7ae4c97c575c1cbd80d2a/node_modules/fill-range/index.js"(exports2, module2) {
    "use strict";
    var util56 = __require("util");
    var toRegexRange = require_to_regex_range();
    var isObject4 = (val) => val !== null && typeof val === "object" && !Array.isArray(val);
    var transform2 = (toNumber) => {
      return (value) => toNumber === true ? Number(value) : String(value);
    };
    var isValidValue = (value) => {
      return typeof value === "number" || typeof value === "string" && value !== "";
    };
    var isNumber = (num) => Number.isInteger(+num);
    var zeros = (input) => {
      let value = `${input}`;
      let index = -1;
      if (value[0] === "-") value = value.slice(1);
      if (value === "0") return false;
      while (value[++index] === "0") ;
      return index > 0;
    };
    var stringify = (start, end, options) => {
      if (typeof start === "string" || typeof end === "string") {
        return true;
      }
      return options.stringify === true;
    };
    var pad3 = (input, maxLength, toNumber) => {
      if (maxLength > 0) {
        let dash = input[0] === "-" ? "-" : "";
        if (dash) input = input.slice(1);
        input = dash + input.padStart(dash ? maxLength - 1 : maxLength, "0");
      }
      if (toNumber === false) {
        return String(input);
      }
      return input;
    };
    var toMaxLen = (input, maxLength) => {
      let negative = input[0] === "-" ? "-" : "";
      if (negative) {
        input = input.slice(1);
        maxLength--;
      }
      while (input.length < maxLength) input = "0" + input;
      return negative ? "-" + input : input;
    };
    var toSequence = (parts, options, maxLen) => {
      parts.negatives.sort((a2, b) => a2 < b ? -1 : a2 > b ? 1 : 0);
      parts.positives.sort((a2, b) => a2 < b ? -1 : a2 > b ? 1 : 0);
      let prefix = options.capture ? "" : "?:";
      let positives = "";
      let negatives = "";
      let result2;
      if (parts.positives.length) {
        positives = parts.positives.map((v) => toMaxLen(String(v), maxLen)).join("|");
      }
      if (parts.negatives.length) {
        negatives = `-(${prefix}${parts.negatives.map((v) => toMaxLen(String(v), maxLen)).join("|")})`;
      }
      if (positives && negatives) {
        result2 = `${positives}|${negatives}`;
      } else {
        result2 = positives || negatives;
      }
      if (options.wrap) {
        return `(${prefix}${result2})`;
      }
      return result2;
    };
    var toRange = (a2, b, isNumbers, options) => {
      if (isNumbers) {
        return toRegexRange(a2, b, { wrap: false, ...options });
      }
      let start = String.fromCharCode(a2);
      if (a2 === b) return start;
      let stop = String.fromCharCode(b);
      return `[${start}-${stop}]`;
    };
    var toRegex = (start, end, options) => {
      if (Array.isArray(start)) {
        let wrap = options.wrap === true;
        let prefix = options.capture ? "" : "?:";
        return wrap ? `(${prefix}${start.join("|")})` : start.join("|");
      }
      return toRegexRange(start, end, options);
    };
    var rangeError = (...args) => {
      return new RangeError("Invalid range arguments: " + util56.inspect(...args));
    };
    var invalidRange = (start, end, options) => {
      if (options.strictRanges === true) throw rangeError([start, end]);
      return [];
    };
    var invalidStep = (step2, options) => {
      if (options.strictRanges === true) {
        throw new TypeError(`Expected step "${step2}" to be a number`);
      }
      return [];
    };
    var fillNumbers = (start, end, step2 = 1, options = {}) => {
      let a2 = Number(start);
      let b = Number(end);
      if (!Number.isInteger(a2) || !Number.isInteger(b)) {
        if (options.strictRanges === true) throw rangeError([start, end]);
        return [];
      }
      if (a2 === 0) a2 = 0;
      if (b === 0) b = 0;
      let descending = a2 > b;
      let startString = String(start);
      let endString = String(end);
      let stepString = String(step2);
      step2 = Math.max(Math.abs(step2), 1);
      let padded = zeros(startString) || zeros(endString) || zeros(stepString);
      let maxLen = padded ? Math.max(startString.length, endString.length, stepString.length) : 0;
      let toNumber = padded === false && stringify(start, end, options) === false;
      let format2 = options.transform || transform2(toNumber);
      if (options.toRegex && step2 === 1) {
        return toRange(toMaxLen(start, maxLen), toMaxLen(end, maxLen), true, options);
      }
      let parts = { negatives: [], positives: [] };
      let push = (num) => parts[num < 0 ? "negatives" : "positives"].push(Math.abs(num));
      let range = [];
      let index = 0;
      while (descending ? a2 >= b : a2 <= b) {
        if (options.toRegex === true && step2 > 1) {
          push(a2);
        } else {
          range.push(pad3(format2(a2, index), maxLen, toNumber));
        }
        a2 = descending ? a2 - step2 : a2 + step2;
        index++;
      }
      if (options.toRegex === true) {
        return step2 > 1 ? toSequence(parts, options, maxLen) : toRegex(range, null, { wrap: false, ...options });
      }
      return range;
    };
    var fillLetters = (start, end, step2 = 1, options = {}) => {
      if (!isNumber(start) && start.length > 1 || !isNumber(end) && end.length > 1) {
        return invalidRange(start, end, options);
      }
      let format2 = options.transform || ((val) => String.fromCharCode(val));
      let a2 = `${start}`.charCodeAt(0);
      let b = `${end}`.charCodeAt(0);
      let descending = a2 > b;
      let min = Math.min(a2, b);
      let max3 = Math.max(a2, b);
      if (options.toRegex && step2 === 1) {
        return toRange(min, max3, false, options);
      }
      let range = [];
      let index = 0;
      while (descending ? a2 >= b : a2 <= b) {
        range.push(format2(a2, index));
        a2 = descending ? a2 - step2 : a2 + step2;
        index++;
      }
      if (options.toRegex === true) {
        return toRegex(range, null, { wrap: false, options });
      }
      return range;
    };
    var fill = (start, end, step2, options = {}) => {
      if (end == null && isValidValue(start)) {
        return [start];
      }
      if (!isValidValue(start) || !isValidValue(end)) {
        return invalidRange(start, end, options);
      }
      if (typeof step2 === "function") {
        return fill(start, end, 1, { transform: step2 });
      }
      if (isObject4(step2)) {
        return fill(start, end, 0, step2);
      }
      let opts2 = { ...options };
      if (opts2.capture === true) opts2.wrap = true;
      step2 = step2 || opts2.step || 1;
      if (!isNumber(step2)) {
        if (step2 != null && !isObject4(step2)) return invalidStep(step2, opts2);
        return fill(start, end, 1, step2);
      }
      if (isNumber(start) && isNumber(end)) {
        return fillNumbers(start, end, step2, opts2);
      }
      return fillLetters(start, end, Math.max(Math.abs(step2), 1), opts2);
    };
    module2.exports = fill;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/braces/3.0.3/d2039003dfed14fc26988ac9171b4dfe6ab58307723d49dad0895a1368a75bcb/node_modules/braces/lib/compile.js
var require_compile = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/braces/3.0.3/d2039003dfed14fc26988ac9171b4dfe6ab58307723d49dad0895a1368a75bcb/node_modules/braces/lib/compile.js"(exports2, module2) {
    "use strict";
    var fill = require_fill_range();
    var utils = require_utils4();
    var compile = (ast, options = {}) => {
      const walk = (node, parent = {}) => {
        const invalidBlock = utils.isInvalidBrace(parent);
        const invalidNode = node.invalid === true && options.escapeInvalid === true;
        const invalid = invalidBlock === true || invalidNode === true;
        const prefix = options.escapeInvalid === true ? "\\" : "";
        let output = "";
        if (node.isOpen === true) {
          return prefix + node.value;
        }
        if (node.isClose === true) {
          console.log("node.isClose", prefix, node.value);
          return prefix + node.value;
        }
        if (node.type === "open") {
          return invalid ? prefix + node.value : "(";
        }
        if (node.type === "close") {
          return invalid ? prefix + node.value : ")";
        }
        if (node.type === "comma") {
          return node.prev.type === "comma" ? "" : invalid ? node.value : "|";
        }
        if (node.value) {
          return node.value;
        }
        if (node.nodes && node.ranges > 0) {
          const args = utils.reduce(node.nodes);
          const range = fill(...args, { ...options, wrap: false, toRegex: true, strictZeros: true });
          if (range.length !== 0) {
            return args.length > 1 && range.length > 1 ? `(${range})` : range;
          }
        }
        if (node.nodes) {
          for (const child of node.nodes) {
            output += walk(child, node);
          }
        }
        return output;
      };
      return walk(ast);
    };
    module2.exports = compile;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/braces/3.0.3/d2039003dfed14fc26988ac9171b4dfe6ab58307723d49dad0895a1368a75bcb/node_modules/braces/lib/expand.js
var require_expand = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/braces/3.0.3/d2039003dfed14fc26988ac9171b4dfe6ab58307723d49dad0895a1368a75bcb/node_modules/braces/lib/expand.js"(exports2, module2) {
    "use strict";
    var fill = require_fill_range();
    var stringify = require_stringify2();
    var utils = require_utils4();
    var append = (queue2 = "", stash = "", enclose = false) => {
      const result2 = [];
      queue2 = [].concat(queue2);
      stash = [].concat(stash);
      if (!stash.length) return queue2;
      if (!queue2.length) {
        return enclose ? utils.flatten(stash).map((ele) => `{${ele}}`) : stash;
      }
      for (const item of queue2) {
        if (Array.isArray(item)) {
          for (const value of item) {
            result2.push(append(value, stash, enclose));
          }
        } else {
          for (let ele of stash) {
            if (enclose === true && typeof ele === "string") ele = `{${ele}}`;
            result2.push(Array.isArray(ele) ? append(item, ele, enclose) : item + ele);
          }
        }
      }
      return utils.flatten(result2);
    };
    var expand = (ast, options = {}) => {
      const rangeLimit = options.rangeLimit === void 0 ? 1e3 : options.rangeLimit;
      const walk = (node, parent = {}) => {
        node.queue = [];
        let p = parent;
        let q = parent.queue;
        while (p.type !== "brace" && p.type !== "root" && p.parent) {
          p = p.parent;
          q = p.queue;
        }
        if (node.invalid || node.dollar) {
          q.push(append(q.pop(), stringify(node, options)));
          return;
        }
        if (node.type === "brace" && node.invalid !== true && node.nodes.length === 2) {
          q.push(append(q.pop(), ["{}"]));
          return;
        }
        if (node.nodes && node.ranges > 0) {
          const args = utils.reduce(node.nodes);
          if (utils.exceedsLimit(...args, options.step, rangeLimit)) {
            throw new RangeError("expanded array length exceeds range limit. Use options.rangeLimit to increase or disable the limit.");
          }
          let range = fill(...args, options);
          if (range.length === 0) {
            range = stringify(node, options);
          }
          q.push(append(q.pop(), range));
          node.nodes = [];
          return;
        }
        const enclose = utils.encloseBrace(node);
        let queue2 = node.queue;
        let block = node;
        while (block.type !== "brace" && block.type !== "root" && block.parent) {
          block = block.parent;
          queue2 = block.queue;
        }
        for (let i2 = 0; i2 < node.nodes.length; i2++) {
          const child = node.nodes[i2];
          if (child.type === "comma" && node.type === "brace") {
            if (i2 === 1) queue2.push("");
            queue2.push("");
            continue;
          }
          if (child.type === "close") {
            q.push(append(q.pop(), queue2, enclose));
            continue;
          }
          if (child.value && child.type !== "open") {
            queue2.push(append(queue2.pop(), child.value));
            continue;
          }
          if (child.nodes) {
            walk(child, node);
          }
        }
        return queue2;
      };
      return utils.flatten(walk(ast));
    };
    module2.exports = expand;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/braces/3.0.3/d2039003dfed14fc26988ac9171b4dfe6ab58307723d49dad0895a1368a75bcb/node_modules/braces/lib/constants.js
var require_constants3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/braces/3.0.3/d2039003dfed14fc26988ac9171b4dfe6ab58307723d49dad0895a1368a75bcb/node_modules/braces/lib/constants.js"(exports2, module2) {
    "use strict";
    module2.exports = {
      MAX_LENGTH: 1e4,
      // Digits
      CHAR_0: "0",
      /* 0 */
      CHAR_9: "9",
      /* 9 */
      // Alphabet chars.
      CHAR_UPPERCASE_A: "A",
      /* A */
      CHAR_LOWERCASE_A: "a",
      /* a */
      CHAR_UPPERCASE_Z: "Z",
      /* Z */
      CHAR_LOWERCASE_Z: "z",
      /* z */
      CHAR_LEFT_PARENTHESES: "(",
      /* ( */
      CHAR_RIGHT_PARENTHESES: ")",
      /* ) */
      CHAR_ASTERISK: "*",
      /* * */
      // Non-alphabetic chars.
      CHAR_AMPERSAND: "&",
      /* & */
      CHAR_AT: "@",
      /* @ */
      CHAR_BACKSLASH: "\\",
      /* \ */
      CHAR_BACKTICK: "`",
      /* ` */
      CHAR_CARRIAGE_RETURN: "\r",
      /* \r */
      CHAR_CIRCUMFLEX_ACCENT: "^",
      /* ^ */
      CHAR_COLON: ":",
      /* : */
      CHAR_COMMA: ",",
      /* , */
      CHAR_DOLLAR: "$",
      /* . */
      CHAR_DOT: ".",
      /* . */
      CHAR_DOUBLE_QUOTE: '"',
      /* " */
      CHAR_EQUAL: "=",
      /* = */
      CHAR_EXCLAMATION_MARK: "!",
      /* ! */
      CHAR_FORM_FEED: "\f",
      /* \f */
      CHAR_FORWARD_SLASH: "/",
      /* / */
      CHAR_HASH: "#",
      /* # */
      CHAR_HYPHEN_MINUS: "-",
      /* - */
      CHAR_LEFT_ANGLE_BRACKET: "<",
      /* < */
      CHAR_LEFT_CURLY_BRACE: "{",
      /* { */
      CHAR_LEFT_SQUARE_BRACKET: "[",
      /* [ */
      CHAR_LINE_FEED: "\n",
      /* \n */
      CHAR_NO_BREAK_SPACE: "\xA0",
      /* \u00A0 */
      CHAR_PERCENT: "%",
      /* % */
      CHAR_PLUS: "+",
      /* + */
      CHAR_QUESTION_MARK: "?",
      /* ? */
      CHAR_RIGHT_ANGLE_BRACKET: ">",
      /* > */
      CHAR_RIGHT_CURLY_BRACE: "}",
      /* } */
      CHAR_RIGHT_SQUARE_BRACKET: "]",
      /* ] */
      CHAR_SEMICOLON: ";",
      /* ; */
      CHAR_SINGLE_QUOTE: "'",
      /* ' */
      CHAR_SPACE: " ",
      /*   */
      CHAR_TAB: "	",
      /* \t */
      CHAR_UNDERSCORE: "_",
      /* _ */
      CHAR_VERTICAL_LINE: "|",
      /* | */
      CHAR_ZERO_WIDTH_NOBREAK_SPACE: "\uFEFF"
      /* \uFEFF */
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/braces/3.0.3/d2039003dfed14fc26988ac9171b4dfe6ab58307723d49dad0895a1368a75bcb/node_modules/braces/lib/parse.js
var require_parse5 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/braces/3.0.3/d2039003dfed14fc26988ac9171b4dfe6ab58307723d49dad0895a1368a75bcb/node_modules/braces/lib/parse.js"(exports2, module2) {
    "use strict";
    var stringify = require_stringify2();
    var {
      MAX_LENGTH,
      CHAR_BACKSLASH,
      /* \ */
      CHAR_BACKTICK,
      /* ` */
      CHAR_COMMA: CHAR_COMMA2,
      /* , */
      CHAR_DOT,
      /* . */
      CHAR_LEFT_PARENTHESES,
      /* ( */
      CHAR_RIGHT_PARENTHESES,
      /* ) */
      CHAR_LEFT_CURLY_BRACE,
      /* { */
      CHAR_RIGHT_CURLY_BRACE,
      /* } */
      CHAR_LEFT_SQUARE_BRACKET: CHAR_LEFT_SQUARE_BRACKET2,
      /* [ */
      CHAR_RIGHT_SQUARE_BRACKET: CHAR_RIGHT_SQUARE_BRACKET2,
      /* ] */
      CHAR_DOUBLE_QUOTE: CHAR_DOUBLE_QUOTE2,
      /* " */
      CHAR_SINGLE_QUOTE: CHAR_SINGLE_QUOTE2,
      /* ' */
      CHAR_NO_BREAK_SPACE,
      CHAR_ZERO_WIDTH_NOBREAK_SPACE
    } = require_constants3();
    var parse7 = (input, options = {}) => {
      if (typeof input !== "string") {
        throw new TypeError("Expected a string");
      }
      const opts2 = options || {};
      const max3 = typeof opts2.maxLength === "number" ? Math.min(MAX_LENGTH, opts2.maxLength) : MAX_LENGTH;
      if (input.length > max3) {
        throw new SyntaxError(`Input length (${input.length}), exceeds max characters (${max3})`);
      }
      const ast = { type: "root", input, nodes: [] };
      const stack = [ast];
      let block = ast;
      let prev = ast;
      let brackets = 0;
      const length = input.length;
      let index = 0;
      let depth = 0;
      let value;
      const advance = () => input[index++];
      const push = (node) => {
        if (node.type === "text" && prev.type === "dot") {
          prev.type = "text";
        }
        if (prev && prev.type === "text" && node.type === "text") {
          prev.value += node.value;
          return;
        }
        block.nodes.push(node);
        node.parent = block;
        node.prev = prev;
        prev = node;
        return node;
      };
      push({ type: "bos" });
      while (index < length) {
        block = stack[stack.length - 1];
        value = advance();
        if (value === CHAR_ZERO_WIDTH_NOBREAK_SPACE || value === CHAR_NO_BREAK_SPACE) {
          continue;
        }
        if (value === CHAR_BACKSLASH) {
          push({ type: "text", value: (options.keepEscaping ? value : "") + advance() });
          continue;
        }
        if (value === CHAR_RIGHT_SQUARE_BRACKET2) {
          push({ type: "text", value: "\\" + value });
          continue;
        }
        if (value === CHAR_LEFT_SQUARE_BRACKET2) {
          brackets++;
          let next2;
          while (index < length && (next2 = advance())) {
            value += next2;
            if (next2 === CHAR_LEFT_SQUARE_BRACKET2) {
              brackets++;
              continue;
            }
            if (next2 === CHAR_BACKSLASH) {
              value += advance();
              continue;
            }
            if (next2 === CHAR_RIGHT_SQUARE_BRACKET2) {
              brackets--;
              if (brackets === 0) {
                break;
              }
            }
          }
          push({ type: "text", value });
          continue;
        }
        if (value === CHAR_LEFT_PARENTHESES) {
          block = push({ type: "paren", nodes: [] });
          stack.push(block);
          push({ type: "text", value });
          continue;
        }
        if (value === CHAR_RIGHT_PARENTHESES) {
          if (block.type !== "paren") {
            push({ type: "text", value });
            continue;
          }
          block = stack.pop();
          push({ type: "text", value });
          block = stack[stack.length - 1];
          continue;
        }
        if (value === CHAR_DOUBLE_QUOTE2 || value === CHAR_SINGLE_QUOTE2 || value === CHAR_BACKTICK) {
          const open5 = value;
          let next2;
          if (options.keepQuotes !== true) {
            value = "";
          }
          while (index < length && (next2 = advance())) {
            if (next2 === CHAR_BACKSLASH) {
              value += next2 + advance();
              continue;
            }
            if (next2 === open5) {
              if (options.keepQuotes === true) value += next2;
              break;
            }
            value += next2;
          }
          push({ type: "text", value });
          continue;
        }
        if (value === CHAR_LEFT_CURLY_BRACE) {
          depth++;
          const dollar = prev.value && prev.value.slice(-1) === "$" || block.dollar === true;
          const brace = {
            type: "brace",
            open: true,
            close: false,
            dollar,
            depth,
            commas: 0,
            ranges: 0,
            nodes: []
          };
          block = push(brace);
          stack.push(block);
          push({ type: "open", value });
          continue;
        }
        if (value === CHAR_RIGHT_CURLY_BRACE) {
          if (block.type !== "brace") {
            push({ type: "text", value });
            continue;
          }
          const type4 = "close";
          block = stack.pop();
          block.close = true;
          push({ type: type4, value });
          depth--;
          block = stack[stack.length - 1];
          continue;
        }
        if (value === CHAR_COMMA2 && depth > 0) {
          if (block.ranges > 0) {
            block.ranges = 0;
            const open5 = block.nodes.shift();
            block.nodes = [open5, { type: "text", value: stringify(block) }];
          }
          push({ type: "comma", value });
          block.commas++;
          continue;
        }
        if (value === CHAR_DOT && depth > 0 && block.commas === 0) {
          const siblings = block.nodes;
          if (depth === 0 || siblings.length === 0) {
            push({ type: "text", value });
            continue;
          }
          if (prev.type === "dot") {
            block.range = [];
            prev.value += value;
            prev.type = "range";
            if (block.nodes.length !== 3 && block.nodes.length !== 5) {
              block.invalid = true;
              block.ranges = 0;
              prev.type = "text";
              continue;
            }
            block.ranges++;
            block.args = [];
            continue;
          }
          if (prev.type === "range") {
            siblings.pop();
            const before = siblings[siblings.length - 1];
            before.value += prev.value + value;
            prev = before;
            block.ranges--;
            continue;
          }
          push({ type: "dot", value });
          continue;
        }
        push({ type: "text", value });
      }
      do {
        block = stack.pop();
        if (block.type !== "root") {
          block.nodes.forEach((node) => {
            if (!node.nodes) {
              if (node.type === "open") node.isOpen = true;
              if (node.type === "close") node.isClose = true;
              if (!node.nodes) node.type = "text";
              node.invalid = true;
            }
          });
          const parent = stack[stack.length - 1];
          const index2 = parent.nodes.indexOf(block);
          parent.nodes.splice(index2, 1, ...block.nodes);
        }
      } while (stack.length > 0);
      push({ type: "eos" });
      return ast;
    };
    module2.exports = parse7;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/braces/3.0.3/d2039003dfed14fc26988ac9171b4dfe6ab58307723d49dad0895a1368a75bcb/node_modules/braces/index.js
var require_braces = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/braces/3.0.3/d2039003dfed14fc26988ac9171b4dfe6ab58307723d49dad0895a1368a75bcb/node_modules/braces/index.js"(exports2, module2) {
    "use strict";
    var stringify = require_stringify2();
    var compile = require_compile();
    var expand = require_expand();
    var parse7 = require_parse5();
    var braces = (input, options = {}) => {
      let output = [];
      if (Array.isArray(input)) {
        for (const pattern of input) {
          const result2 = braces.create(pattern, options);
          if (Array.isArray(result2)) {
            output.push(...result2);
          } else {
            output.push(result2);
          }
        }
      } else {
        output = [].concat(braces.create(input, options));
      }
      if (options && options.expand === true && options.nodupes === true) {
        output = [...new Set(output)];
      }
      return output;
    };
    braces.parse = (input, options = {}) => parse7(input, options);
    braces.stringify = (input, options = {}) => {
      if (typeof input === "string") {
        return stringify(braces.parse(input, options), options);
      }
      return stringify(input, options);
    };
    braces.compile = (input, options = {}) => {
      if (typeof input === "string") {
        input = braces.parse(input, options);
      }
      return compile(input, options);
    };
    braces.expand = (input, options = {}) => {
      if (typeof input === "string") {
        input = braces.parse(input, options);
      }
      let result2 = expand(input, options);
      if (options.noempty === true) {
        result2 = result2.filter(Boolean);
      }
      if (options.nodupes === true) {
        result2 = [...new Set(result2)];
      }
      return result2;
    };
    braces.create = (input, options = {}) => {
      if (input === "" || input.length < 3) {
        return [input];
      }
      return options.expand !== true ? braces.compile(input, options) : braces.expand(input, options);
    };
    module2.exports = braces;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/picomatch/2.3.2/970562b178c2a3cae5d09ba562604a9292f4cc3586bd7d210594148d4f487bd5/node_modules/picomatch/lib/constants.js
var require_constants4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/picomatch/2.3.2/970562b178c2a3cae5d09ba562604a9292f4cc3586bd7d210594148d4f487bd5/node_modules/picomatch/lib/constants.js"(exports2, module2) {
    "use strict";
    var path218 = __require("path");
    var WIN_SLASH = "\\\\/";
    var WIN_NO_SLASH = `[^${WIN_SLASH}]`;
    var DEFAULT_MAX_EXTGLOB_RECURSION = 0;
    var DOT_LITERAL = "\\.";
    var PLUS_LITERAL = "\\+";
    var QMARK_LITERAL = "\\?";
    var SLASH_LITERAL = "\\/";
    var ONE_CHAR = "(?=.)";
    var QMARK = "[^/]";
    var END_ANCHOR = `(?:${SLASH_LITERAL}|$)`;
    var START_ANCHOR = `(?:^|${SLASH_LITERAL})`;
    var DOTS_SLASH = `${DOT_LITERAL}{1,2}${END_ANCHOR}`;
    var NO_DOT = `(?!${DOT_LITERAL})`;
    var NO_DOTS = `(?!${START_ANCHOR}${DOTS_SLASH})`;
    var NO_DOT_SLASH = `(?!${DOT_LITERAL}{0,1}${END_ANCHOR})`;
    var NO_DOTS_SLASH = `(?!${DOTS_SLASH})`;
    var QMARK_NO_DOT = `[^.${SLASH_LITERAL}]`;
    var STAR = `${QMARK}*?`;
    var POSIX_CHARS = {
      DOT_LITERAL,
      PLUS_LITERAL,
      QMARK_LITERAL,
      SLASH_LITERAL,
      ONE_CHAR,
      QMARK,
      END_ANCHOR,
      DOTS_SLASH,
      NO_DOT,
      NO_DOTS,
      NO_DOT_SLASH,
      NO_DOTS_SLASH,
      QMARK_NO_DOT,
      STAR,
      START_ANCHOR
    };
    var WINDOWS_CHARS = {
      ...POSIX_CHARS,
      SLASH_LITERAL: `[${WIN_SLASH}]`,
      QMARK: WIN_NO_SLASH,
      STAR: `${WIN_NO_SLASH}*?`,
      DOTS_SLASH: `${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$)`,
      NO_DOT: `(?!${DOT_LITERAL})`,
      NO_DOTS: `(?!(?:^|[${WIN_SLASH}])${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$))`,
      NO_DOT_SLASH: `(?!${DOT_LITERAL}{0,1}(?:[${WIN_SLASH}]|$))`,
      NO_DOTS_SLASH: `(?!${DOT_LITERAL}{1,2}(?:[${WIN_SLASH}]|$))`,
      QMARK_NO_DOT: `[^.${WIN_SLASH}]`,
      START_ANCHOR: `(?:^|[${WIN_SLASH}])`,
      END_ANCHOR: `(?:[${WIN_SLASH}]|$)`
    };
    var POSIX_REGEX_SOURCE = {
      __proto__: null,
      alnum: "a-zA-Z0-9",
      alpha: "a-zA-Z",
      ascii: "\\x00-\\x7F",
      blank: " \\t",
      cntrl: "\\x00-\\x1F\\x7F",
      digit: "0-9",
      graph: "\\x21-\\x7E",
      lower: "a-z",
      print: "\\x20-\\x7E ",
      punct: "\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~",
      space: " \\t\\r\\n\\v\\f",
      upper: "A-Z",
      word: "A-Za-z0-9_",
      xdigit: "A-Fa-f0-9"
    };
    module2.exports = {
      DEFAULT_MAX_EXTGLOB_RECURSION,
      MAX_LENGTH: 1024 * 64,
      POSIX_REGEX_SOURCE,
      // regular expressions
      REGEX_BACKSLASH: /\\(?![*+?^${}(|)[\]])/g,
      REGEX_NON_SPECIAL_CHARS: /^[^@![\].,$*+?^{}()|\\/]+/,
      REGEX_SPECIAL_CHARS: /[-*+?.^${}(|)[\]]/,
      REGEX_SPECIAL_CHARS_BACKREF: /(\\?)((\W)(\3*))/g,
      REGEX_SPECIAL_CHARS_GLOBAL: /([-*+?.^${}(|)[\]])/g,
      REGEX_REMOVE_BACKSLASH: /(?:\[.*?[^\\]\]|\\(?=.))/g,
      // Replace globs with equivalent patterns to reduce parsing time.
      REPLACEMENTS: {
        __proto__: null,
        "***": "*",
        "**/**": "**",
        "**/**/**": "**"
      },
      // Digits
      CHAR_0: 48,
      /* 0 */
      CHAR_9: 57,
      /* 9 */
      // Alphabet chars.
      CHAR_UPPERCASE_A: 65,
      /* A */
      CHAR_LOWERCASE_A: 97,
      /* a */
      CHAR_UPPERCASE_Z: 90,
      /* Z */
      CHAR_LOWERCASE_Z: 122,
      /* z */
      CHAR_LEFT_PARENTHESES: 40,
      /* ( */
      CHAR_RIGHT_PARENTHESES: 41,
      /* ) */
      CHAR_ASTERISK: 42,
      /* * */
      // Non-alphabetic chars.
      CHAR_AMPERSAND: 38,
      /* & */
      CHAR_AT: 64,
      /* @ */
      CHAR_BACKWARD_SLASH: 92,
      /* \ */
      CHAR_CARRIAGE_RETURN: 13,
      /* \r */
      CHAR_CIRCUMFLEX_ACCENT: 94,
      /* ^ */
      CHAR_COLON: 58,
      /* : */
      CHAR_COMMA: 44,
      /* , */
      CHAR_DOT: 46,
      /* . */
      CHAR_DOUBLE_QUOTE: 34,
      /* " */
      CHAR_EQUAL: 61,
      /* = */
      CHAR_EXCLAMATION_MARK: 33,
      /* ! */
      CHAR_FORM_FEED: 12,
      /* \f */
      CHAR_FORWARD_SLASH: 47,
      /* / */
      CHAR_GRAVE_ACCENT: 96,
      /* ` */
      CHAR_HASH: 35,
      /* # */
      CHAR_HYPHEN_MINUS: 45,
      /* - */
      CHAR_LEFT_ANGLE_BRACKET: 60,
      /* < */
      CHAR_LEFT_CURLY_BRACE: 123,
      /* { */
      CHAR_LEFT_SQUARE_BRACKET: 91,
      /* [ */
      CHAR_LINE_FEED: 10,
      /* \n */
      CHAR_NO_BREAK_SPACE: 160,
      /* \u00A0 */
      CHAR_PERCENT: 37,
      /* % */
      CHAR_PLUS: 43,
      /* + */
      CHAR_QUESTION_MARK: 63,
      /* ? */
      CHAR_RIGHT_ANGLE_BRACKET: 62,
      /* > */
      CHAR_RIGHT_CURLY_BRACE: 125,
      /* } */
      CHAR_RIGHT_SQUARE_BRACKET: 93,
      /* ] */
      CHAR_SEMICOLON: 59,
      /* ; */
      CHAR_SINGLE_QUOTE: 39,
      /* ' */
      CHAR_SPACE: 32,
      /*   */
      CHAR_TAB: 9,
      /* \t */
      CHAR_UNDERSCORE: 95,
      /* _ */
      CHAR_VERTICAL_LINE: 124,
      /* | */
      CHAR_ZERO_WIDTH_NOBREAK_SPACE: 65279,
      /* \uFEFF */
      SEP: path218.sep,
      /**
       * Create EXTGLOB_CHARS
       */
      extglobChars(chars) {
        return {
          "!": { type: "negate", open: "(?:(?!(?:", close: `))${chars.STAR})` },
          "?": { type: "qmark", open: "(?:", close: ")?" },
          "+": { type: "plus", open: "(?:", close: ")+" },
          "*": { type: "star", open: "(?:", close: ")*" },
          "@": { type: "at", open: "(?:", close: ")" }
        };
      },
      /**
       * Create GLOB_CHARS
       */
      globChars(win32) {
        return win32 === true ? WINDOWS_CHARS : POSIX_CHARS;
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/picomatch/2.3.2/970562b178c2a3cae5d09ba562604a9292f4cc3586bd7d210594148d4f487bd5/node_modules/picomatch/lib/utils.js
var require_utils5 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/picomatch/2.3.2/970562b178c2a3cae5d09ba562604a9292f4cc3586bd7d210594148d4f487bd5/node_modules/picomatch/lib/utils.js"(exports2) {
    "use strict";
    var path218 = __require("path");
    var win32 = process.platform === "win32";
    var {
      REGEX_BACKSLASH,
      REGEX_REMOVE_BACKSLASH,
      REGEX_SPECIAL_CHARS,
      REGEX_SPECIAL_CHARS_GLOBAL
    } = require_constants4();
    exports2.isObject = (val) => val !== null && typeof val === "object" && !Array.isArray(val);
    exports2.hasRegexChars = (str2) => REGEX_SPECIAL_CHARS.test(str2);
    exports2.isRegexChar = (str2) => str2.length === 1 && exports2.hasRegexChars(str2);
    exports2.escapeRegex = (str2) => str2.replace(REGEX_SPECIAL_CHARS_GLOBAL, "\\$1");
    exports2.toPosixSlashes = (str2) => str2.replace(REGEX_BACKSLASH, "/");
    exports2.removeBackslashes = (str2) => {
      return str2.replace(REGEX_REMOVE_BACKSLASH, (match) => {
        return match === "\\" ? "" : match;
      });
    };
    exports2.supportsLookbehinds = () => {
      const segs = process.version.slice(1).split(".").map(Number);
      if (segs.length === 3 && segs[0] >= 9 || segs[0] === 8 && segs[1] >= 10) {
        return true;
      }
      return false;
    };
    exports2.isWindows = (options) => {
      if (options && typeof options.windows === "boolean") {
        return options.windows;
      }
      return win32 === true || path218.sep === "\\";
    };
    exports2.escapeLast = (input, char, lastIdx) => {
      const idx = input.lastIndexOf(char, lastIdx);
      if (idx === -1) return input;
      if (input[idx - 1] === "\\") return exports2.escapeLast(input, char, idx - 1);
      return `${input.slice(0, idx)}\\${input.slice(idx)}`;
    };
    exports2.removePrefix = (input, state = {}) => {
      let output = input;
      if (output.startsWith("./")) {
        output = output.slice(2);
        state.prefix = "./";
      }
      return output;
    };
    exports2.wrapOutput = (input, state = {}, options = {}) => {
      const prepend = options.contains ? "" : "^";
      const append = options.contains ? "" : "$";
      let output = `${prepend}(?:${input})${append}`;
      if (state.negated === true) {
        output = `(?:^(?!${output}).*$)`;
      }
      return output;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/picomatch/2.3.2/970562b178c2a3cae5d09ba562604a9292f4cc3586bd7d210594148d4f487bd5/node_modules/picomatch/lib/scan.js
var require_scan2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/picomatch/2.3.2/970562b178c2a3cae5d09ba562604a9292f4cc3586bd7d210594148d4f487bd5/node_modules/picomatch/lib/scan.js"(exports2, module2) {
    "use strict";
    var utils = require_utils5();
    var {
      CHAR_ASTERISK: CHAR_ASTERISK2,
      /* * */
      CHAR_AT,
      /* @ */
      CHAR_BACKWARD_SLASH,
      /* \ */
      CHAR_COMMA: CHAR_COMMA2,
      /* , */
      CHAR_DOT,
      /* . */
      CHAR_EXCLAMATION_MARK,
      /* ! */
      CHAR_FORWARD_SLASH,
      /* / */
      CHAR_LEFT_CURLY_BRACE,
      /* { */
      CHAR_LEFT_PARENTHESES,
      /* ( */
      CHAR_LEFT_SQUARE_BRACKET: CHAR_LEFT_SQUARE_BRACKET2,
      /* [ */
      CHAR_PLUS,
      /* + */
      CHAR_QUESTION_MARK,
      /* ? */
      CHAR_RIGHT_CURLY_BRACE,
      /* } */
      CHAR_RIGHT_PARENTHESES,
      /* ) */
      CHAR_RIGHT_SQUARE_BRACKET: CHAR_RIGHT_SQUARE_BRACKET2
      /* ] */
    } = require_constants4();
    var isPathSeparator = (code) => {
      return code === CHAR_FORWARD_SLASH || code === CHAR_BACKWARD_SLASH;
    };
    var depth = (token) => {
      if (token.isPrefix !== true) {
        token.depth = token.isGlobstar ? Infinity : 1;
      }
    };
    var scan3 = (input, options) => {
      const opts2 = options || {};
      const length = input.length - 1;
      const scanToEnd = opts2.parts === true || opts2.scanToEnd === true;
      const slashes = [];
      const tokens = [];
      const parts = [];
      let str2 = input;
      let index = -1;
      let start = 0;
      let lastIndex = 0;
      let isBrace = false;
      let isBracket = false;
      let isGlob = false;
      let isExtglob = false;
      let isGlobstar = false;
      let braceEscaped = false;
      let backslashes = false;
      let negated = false;
      let negatedExtglob = false;
      let finished7 = false;
      let braces = 0;
      let prev;
      let code;
      let token = { value: "", depth: 0, isGlob: false };
      const eos = () => index >= length;
      const peek = () => str2.charCodeAt(index + 1);
      const advance = () => {
        prev = code;
        return str2.charCodeAt(++index);
      };
      while (index < length) {
        code = advance();
        let next2;
        if (code === CHAR_BACKWARD_SLASH) {
          backslashes = token.backslashes = true;
          code = advance();
          if (code === CHAR_LEFT_CURLY_BRACE) {
            braceEscaped = true;
          }
          continue;
        }
        if (braceEscaped === true || code === CHAR_LEFT_CURLY_BRACE) {
          braces++;
          while (eos() !== true && (code = advance())) {
            if (code === CHAR_BACKWARD_SLASH) {
              backslashes = token.backslashes = true;
              advance();
              continue;
            }
            if (code === CHAR_LEFT_CURLY_BRACE) {
              braces++;
              continue;
            }
            if (braceEscaped !== true && code === CHAR_DOT && (code = advance()) === CHAR_DOT) {
              isBrace = token.isBrace = true;
              isGlob = token.isGlob = true;
              finished7 = true;
              if (scanToEnd === true) {
                continue;
              }
              break;
            }
            if (braceEscaped !== true && code === CHAR_COMMA2) {
              isBrace = token.isBrace = true;
              isGlob = token.isGlob = true;
              finished7 = true;
              if (scanToEnd === true) {
                continue;
              }
              break;
            }
            if (code === CHAR_RIGHT_CURLY_BRACE) {
              braces--;
              if (braces === 0) {
                braceEscaped = false;
                isBrace = token.isBrace = true;
                finished7 = true;
                break;
              }
            }
          }
          if (scanToEnd === true) {
            continue;
          }
          break;
        }
        if (code === CHAR_FORWARD_SLASH) {
          slashes.push(index);
          tokens.push(token);
          token = { value: "", depth: 0, isGlob: false };
          if (finished7 === true) continue;
          if (prev === CHAR_DOT && index === start + 1) {
            start += 2;
            continue;
          }
          lastIndex = index + 1;
          continue;
        }
        if (opts2.noext !== true) {
          const isExtglobChar = code === CHAR_PLUS || code === CHAR_AT || code === CHAR_ASTERISK2 || code === CHAR_QUESTION_MARK || code === CHAR_EXCLAMATION_MARK;
          if (isExtglobChar === true && peek() === CHAR_LEFT_PARENTHESES) {
            isGlob = token.isGlob = true;
            isExtglob = token.isExtglob = true;
            finished7 = true;
            if (code === CHAR_EXCLAMATION_MARK && index === start) {
              negatedExtglob = true;
            }
            if (scanToEnd === true) {
              while (eos() !== true && (code = advance())) {
                if (code === CHAR_BACKWARD_SLASH) {
                  backslashes = token.backslashes = true;
                  code = advance();
                  continue;
                }
                if (code === CHAR_RIGHT_PARENTHESES) {
                  isGlob = token.isGlob = true;
                  finished7 = true;
                  break;
                }
              }
              continue;
            }
            break;
          }
        }
        if (code === CHAR_ASTERISK2) {
          if (prev === CHAR_ASTERISK2) isGlobstar = token.isGlobstar = true;
          isGlob = token.isGlob = true;
          finished7 = true;
          if (scanToEnd === true) {
            continue;
          }
          break;
        }
        if (code === CHAR_QUESTION_MARK) {
          isGlob = token.isGlob = true;
          finished7 = true;
          if (scanToEnd === true) {
            continue;
          }
          break;
        }
        if (code === CHAR_LEFT_SQUARE_BRACKET2) {
          while (eos() !== true && (next2 = advance())) {
            if (next2 === CHAR_BACKWARD_SLASH) {
              backslashes = token.backslashes = true;
              advance();
              continue;
            }
            if (next2 === CHAR_RIGHT_SQUARE_BRACKET2) {
              isBracket = token.isBracket = true;
              isGlob = token.isGlob = true;
              finished7 = true;
              break;
            }
          }
          if (scanToEnd === true) {
            continue;
          }
          break;
        }
        if (opts2.nonegate !== true && code === CHAR_EXCLAMATION_MARK && index === start) {
          negated = token.negated = true;
          start++;
          continue;
        }
        if (opts2.noparen !== true && code === CHAR_LEFT_PARENTHESES) {
          isGlob = token.isGlob = true;
          if (scanToEnd === true) {
            while (eos() !== true && (code = advance())) {
              if (code === CHAR_LEFT_PARENTHESES) {
                backslashes = token.backslashes = true;
                code = advance();
                continue;
              }
              if (code === CHAR_RIGHT_PARENTHESES) {
                finished7 = true;
                break;
              }
            }
            continue;
          }
          break;
        }
        if (isGlob === true) {
          finished7 = true;
          if (scanToEnd === true) {
            continue;
          }
          break;
        }
      }
      if (opts2.noext === true) {
        isExtglob = false;
        isGlob = false;
      }
      let base = str2;
      let prefix = "";
      let glob2 = "";
      if (start > 0) {
        prefix = str2.slice(0, start);
        str2 = str2.slice(start);
        lastIndex -= start;
      }
      if (base && isGlob === true && lastIndex > 0) {
        base = str2.slice(0, lastIndex);
        glob2 = str2.slice(lastIndex);
      } else if (isGlob === true) {
        base = "";
        glob2 = str2;
      } else {
        base = str2;
      }
      if (base && base !== "" && base !== "/" && base !== str2) {
        if (isPathSeparator(base.charCodeAt(base.length - 1))) {
          base = base.slice(0, -1);
        }
      }
      if (opts2.unescape === true) {
        if (glob2) glob2 = utils.removeBackslashes(glob2);
        if (base && backslashes === true) {
          base = utils.removeBackslashes(base);
        }
      }
      const state = {
        prefix,
        input,
        start,
        base,
        glob: glob2,
        isBrace,
        isBracket,
        isGlob,
        isExtglob,
        isGlobstar,
        negated,
        negatedExtglob
      };
      if (opts2.tokens === true) {
        state.maxDepth = 0;
        if (!isPathSeparator(code)) {
          tokens.push(token);
        }
        state.tokens = tokens;
      }
      if (opts2.parts === true || opts2.tokens === true) {
        let prevIndex;
        for (let idx = 0; idx < slashes.length; idx++) {
          const n2 = prevIndex ? prevIndex + 1 : start;
          const i2 = slashes[idx];
          const value = input.slice(n2, i2);
          if (opts2.tokens) {
            if (idx === 0 && start !== 0) {
              tokens[idx].isPrefix = true;
              tokens[idx].value = prefix;
            } else {
              tokens[idx].value = value;
            }
            depth(tokens[idx]);
            state.maxDepth += tokens[idx].depth;
          }
          if (idx !== 0 || value !== "") {
            parts.push(value);
          }
          prevIndex = i2;
        }
        if (prevIndex && prevIndex + 1 < input.length) {
          const value = input.slice(prevIndex + 1);
          parts.push(value);
          if (opts2.tokens) {
            tokens[tokens.length - 1].value = value;
            depth(tokens[tokens.length - 1]);
            state.maxDepth += tokens[tokens.length - 1].depth;
          }
        }
        state.slashes = slashes;
        state.parts = parts;
      }
      return state;
    };
    module2.exports = scan3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/picomatch/2.3.2/970562b178c2a3cae5d09ba562604a9292f4cc3586bd7d210594148d4f487bd5/node_modules/picomatch/lib/parse.js
var require_parse6 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/picomatch/2.3.2/970562b178c2a3cae5d09ba562604a9292f4cc3586bd7d210594148d4f487bd5/node_modules/picomatch/lib/parse.js"(exports2, module2) {
    "use strict";
    var constants5 = require_constants4();
    var utils = require_utils5();
    var {
      MAX_LENGTH,
      POSIX_REGEX_SOURCE,
      REGEX_NON_SPECIAL_CHARS,
      REGEX_SPECIAL_CHARS_BACKREF,
      REPLACEMENTS
    } = constants5;
    var expandRange = (args, options) => {
      if (typeof options.expandRange === "function") {
        return options.expandRange(...args, options);
      }
      args.sort();
      const value = `[${args.join("-")}]`;
      try {
        new RegExp(value);
      } catch (ex) {
        return args.map((v) => utils.escapeRegex(v)).join("..");
      }
      return value;
    };
    var syntaxError = (type4, char) => {
      return `Missing ${type4}: "${char}" - use "\\\\${char}" to match literal characters`;
    };
    var splitTopLevel = (input) => {
      const parts = [];
      let bracket = 0;
      let paren = 0;
      let quote2 = 0;
      let value = "";
      let escaped = false;
      for (const ch of input) {
        if (escaped === true) {
          value += ch;
          escaped = false;
          continue;
        }
        if (ch === "\\") {
          value += ch;
          escaped = true;
          continue;
        }
        if (ch === '"') {
          quote2 = quote2 === 1 ? 0 : 1;
          value += ch;
          continue;
        }
        if (quote2 === 0) {
          if (ch === "[") {
            bracket++;
          } else if (ch === "]" && bracket > 0) {
            bracket--;
          } else if (bracket === 0) {
            if (ch === "(") {
              paren++;
            } else if (ch === ")" && paren > 0) {
              paren--;
            } else if (ch === "|" && paren === 0) {
              parts.push(value);
              value = "";
              continue;
            }
          }
        }
        value += ch;
      }
      parts.push(value);
      return parts;
    };
    var isPlainBranch = (branch) => {
      let escaped = false;
      for (const ch of branch) {
        if (escaped === true) {
          escaped = false;
          continue;
        }
        if (ch === "\\") {
          escaped = true;
          continue;
        }
        if (/[?*+@!()[\]{}]/.test(ch)) {
          return false;
        }
      }
      return true;
    };
    var normalizeSimpleBranch = (branch) => {
      let value = branch.trim();
      let changed = true;
      while (changed === true) {
        changed = false;
        if (/^@\([^\\()[\]{}|]+\)$/.test(value)) {
          value = value.slice(2, -1);
          changed = true;
        }
      }
      if (!isPlainBranch(value)) {
        return;
      }
      return value.replace(/\\(.)/g, "$1");
    };
    var hasRepeatedCharPrefixOverlap = (branches) => {
      const values = branches.map(normalizeSimpleBranch).filter(Boolean);
      for (let i2 = 0; i2 < values.length; i2++) {
        for (let j2 = i2 + 1; j2 < values.length; j2++) {
          const a2 = values[i2];
          const b = values[j2];
          const char = a2[0];
          if (!char || a2 !== char.repeat(a2.length) || b !== char.repeat(b.length)) {
            continue;
          }
          if (a2 === b || a2.startsWith(b) || b.startsWith(a2)) {
            return true;
          }
        }
      }
      return false;
    };
    var parseRepeatedExtglob = (pattern, requireEnd = true) => {
      if (pattern[0] !== "+" && pattern[0] !== "*" || pattern[1] !== "(") {
        return;
      }
      let bracket = 0;
      let paren = 0;
      let quote2 = 0;
      let escaped = false;
      for (let i2 = 1; i2 < pattern.length; i2++) {
        const ch = pattern[i2];
        if (escaped === true) {
          escaped = false;
          continue;
        }
        if (ch === "\\") {
          escaped = true;
          continue;
        }
        if (ch === '"') {
          quote2 = quote2 === 1 ? 0 : 1;
          continue;
        }
        if (quote2 === 1) {
          continue;
        }
        if (ch === "[") {
          bracket++;
          continue;
        }
        if (ch === "]" && bracket > 0) {
          bracket--;
          continue;
        }
        if (bracket > 0) {
          continue;
        }
        if (ch === "(") {
          paren++;
          continue;
        }
        if (ch === ")") {
          paren--;
          if (paren === 0) {
            if (requireEnd === true && i2 !== pattern.length - 1) {
              return;
            }
            return {
              type: pattern[0],
              body: pattern.slice(2, i2),
              end: i2
            };
          }
        }
      }
    };
    var getStarExtglobSequenceOutput = (pattern) => {
      let index = 0;
      const chars = [];
      while (index < pattern.length) {
        const match = parseRepeatedExtglob(pattern.slice(index), false);
        if (!match || match.type !== "*") {
          return;
        }
        const branches = splitTopLevel(match.body).map((branch2) => branch2.trim());
        if (branches.length !== 1) {
          return;
        }
        const branch = normalizeSimpleBranch(branches[0]);
        if (!branch || branch.length !== 1) {
          return;
        }
        chars.push(branch);
        index += match.end + 1;
      }
      if (chars.length < 1) {
        return;
      }
      const source = chars.length === 1 ? utils.escapeRegex(chars[0]) : `[${chars.map((ch) => utils.escapeRegex(ch)).join("")}]`;
      return `${source}*`;
    };
    var repeatedExtglobRecursion = (pattern) => {
      let depth = 0;
      let value = pattern.trim();
      let match = parseRepeatedExtglob(value);
      while (match) {
        depth++;
        value = match.body.trim();
        match = parseRepeatedExtglob(value);
      }
      return depth;
    };
    var analyzeRepeatedExtglob = (body, options) => {
      if (options.maxExtglobRecursion === false) {
        return { risky: false };
      }
      const max3 = typeof options.maxExtglobRecursion === "number" ? options.maxExtglobRecursion : constants5.DEFAULT_MAX_EXTGLOB_RECURSION;
      const branches = splitTopLevel(body).map((branch) => branch.trim());
      if (branches.length > 1) {
        if (branches.some((branch) => branch === "") || branches.some((branch) => /^[*?]+$/.test(branch)) || hasRepeatedCharPrefixOverlap(branches)) {
          return { risky: true };
        }
      }
      for (const branch of branches) {
        const safeOutput = getStarExtglobSequenceOutput(branch);
        if (safeOutput) {
          return { risky: true, safeOutput };
        }
        if (repeatedExtglobRecursion(branch) > max3) {
          return { risky: true };
        }
      }
      return { risky: false };
    };
    var parse7 = (input, options) => {
      if (typeof input !== "string") {
        throw new TypeError("Expected a string");
      }
      input = REPLACEMENTS[input] || input;
      const opts2 = { ...options };
      const max3 = typeof opts2.maxLength === "number" ? Math.min(MAX_LENGTH, opts2.maxLength) : MAX_LENGTH;
      let len = input.length;
      if (len > max3) {
        throw new SyntaxError(`Input length: ${len}, exceeds maximum allowed length: ${max3}`);
      }
      const bos = { type: "bos", value: "", output: opts2.prepend || "" };
      const tokens = [bos];
      const capture = opts2.capture ? "" : "?:";
      const win32 = utils.isWindows(options);
      const PLATFORM_CHARS = constants5.globChars(win32);
      const EXTGLOB_CHARS = constants5.extglobChars(PLATFORM_CHARS);
      const {
        DOT_LITERAL,
        PLUS_LITERAL,
        SLASH_LITERAL,
        ONE_CHAR,
        DOTS_SLASH,
        NO_DOT,
        NO_DOT_SLASH,
        NO_DOTS_SLASH,
        QMARK,
        QMARK_NO_DOT,
        STAR,
        START_ANCHOR
      } = PLATFORM_CHARS;
      const globstar = (opts3) => {
        return `(${capture}(?:(?!${START_ANCHOR}${opts3.dot ? DOTS_SLASH : DOT_LITERAL}).)*?)`;
      };
      const nodot = opts2.dot ? "" : NO_DOT;
      const qmarkNoDot = opts2.dot ? QMARK : QMARK_NO_DOT;
      let star = opts2.bash === true ? globstar(opts2) : STAR;
      if (opts2.capture) {
        star = `(${star})`;
      }
      if (typeof opts2.noext === "boolean") {
        opts2.noextglob = opts2.noext;
      }
      const state = {
        input,
        index: -1,
        start: 0,
        dot: opts2.dot === true,
        consumed: "",
        output: "",
        prefix: "",
        backtrack: false,
        negated: false,
        brackets: 0,
        braces: 0,
        parens: 0,
        quotes: 0,
        globstar: false,
        tokens
      };
      input = utils.removePrefix(input, state);
      len = input.length;
      const extglobs = [];
      const braces = [];
      const stack = [];
      let prev = bos;
      let value;
      const eos = () => state.index === len - 1;
      const peek = state.peek = (n2 = 1) => input[state.index + n2];
      const advance = state.advance = () => input[++state.index] || "";
      const remaining = () => input.slice(state.index + 1);
      const consume = (value2 = "", num = 0) => {
        state.consumed += value2;
        state.index += num;
      };
      const append = (token) => {
        state.output += token.output != null ? token.output : token.value;
        consume(token.value);
      };
      const negate = () => {
        let count2 = 1;
        while (peek() === "!" && (peek(2) !== "(" || peek(3) === "?")) {
          advance();
          state.start++;
          count2++;
        }
        if (count2 % 2 === 0) {
          return false;
        }
        state.negated = true;
        state.start++;
        return true;
      };
      const increment2 = (type4) => {
        state[type4]++;
        stack.push(type4);
      };
      const decrement = (type4) => {
        state[type4]--;
        stack.pop();
      };
      const push = (tok) => {
        if (prev.type === "globstar") {
          const isBrace = state.braces > 0 && (tok.type === "comma" || tok.type === "brace");
          const isExtglob = tok.extglob === true || extglobs.length && (tok.type === "pipe" || tok.type === "paren");
          if (tok.type !== "slash" && tok.type !== "paren" && !isBrace && !isExtglob) {
            state.output = state.output.slice(0, -prev.output.length);
            prev.type = "star";
            prev.value = "*";
            prev.output = star;
            state.output += prev.output;
          }
        }
        if (extglobs.length && tok.type !== "paren") {
          extglobs[extglobs.length - 1].inner += tok.value;
        }
        if (tok.value || tok.output) append(tok);
        if (prev && prev.type === "text" && tok.type === "text") {
          prev.value += tok.value;
          prev.output = (prev.output || "") + tok.value;
          return;
        }
        tok.prev = prev;
        tokens.push(tok);
        prev = tok;
      };
      const extglobOpen = (type4, value2) => {
        const token = { ...EXTGLOB_CHARS[value2], conditions: 1, inner: "" };
        token.prev = prev;
        token.parens = state.parens;
        token.output = state.output;
        token.startIndex = state.index;
        token.tokensIndex = tokens.length;
        const output = (opts2.capture ? "(" : "") + token.open;
        increment2("parens");
        push({ type: type4, value: value2, output: state.output ? "" : ONE_CHAR });
        push({ type: "paren", extglob: true, value: advance(), output });
        extglobs.push(token);
      };
      const extglobClose = (token) => {
        const literal = input.slice(token.startIndex, state.index + 1);
        const body = input.slice(token.startIndex + 2, state.index);
        const analysis = analyzeRepeatedExtglob(body, opts2);
        if ((token.type === "plus" || token.type === "star") && analysis.risky) {
          const safeOutput = analysis.safeOutput ? (token.output ? "" : ONE_CHAR) + (opts2.capture ? `(${analysis.safeOutput})` : analysis.safeOutput) : void 0;
          const open5 = tokens[token.tokensIndex];
          open5.type = "text";
          open5.value = literal;
          open5.output = safeOutput || utils.escapeRegex(literal);
          for (let i2 = token.tokensIndex + 1; i2 < tokens.length; i2++) {
            tokens[i2].value = "";
            tokens[i2].output = "";
            delete tokens[i2].suffix;
          }
          state.output = token.output + open5.output;
          state.backtrack = true;
          push({ type: "paren", extglob: true, value, output: "" });
          decrement("parens");
          return;
        }
        let output = token.close + (opts2.capture ? ")" : "");
        let rest;
        if (token.type === "negate") {
          let extglobStar = star;
          if (token.inner && token.inner.length > 1 && token.inner.includes("/")) {
            extglobStar = globstar(opts2);
          }
          if (extglobStar !== star || eos() || /^\)+$/.test(remaining())) {
            output = token.close = `)$))${extglobStar}`;
          }
          if (token.inner.includes("*") && (rest = remaining()) && /^\.[^\\/.]+$/.test(rest)) {
            const expression = parse7(rest, { ...options, fastpaths: false }).output;
            output = token.close = `)${expression})${extglobStar})`;
          }
          if (token.prev.type === "bos") {
            state.negatedExtglob = true;
          }
        }
        push({ type: "paren", extglob: true, value, output });
        decrement("parens");
      };
      if (opts2.fastpaths !== false && !/(^[*!]|[/()[\]{}"])/.test(input)) {
        let backslashes = false;
        let output = input.replace(REGEX_SPECIAL_CHARS_BACKREF, (m, esc, chars, first, rest, index) => {
          if (first === "\\") {
            backslashes = true;
            return m;
          }
          if (first === "?") {
            if (esc) {
              return esc + first + (rest ? QMARK.repeat(rest.length) : "");
            }
            if (index === 0) {
              return qmarkNoDot + (rest ? QMARK.repeat(rest.length) : "");
            }
            return QMARK.repeat(chars.length);
          }
          if (first === ".") {
            return DOT_LITERAL.repeat(chars.length);
          }
          if (first === "*") {
            if (esc) {
              return esc + first + (rest ? star : "");
            }
            return star;
          }
          return esc ? m : `\\${m}`;
        });
        if (backslashes === true) {
          if (opts2.unescape === true) {
            output = output.replace(/\\/g, "");
          } else {
            output = output.replace(/\\+/g, (m) => {
              return m.length % 2 === 0 ? "\\\\" : m ? "\\" : "";
            });
          }
        }
        if (output === input && opts2.contains === true) {
          state.output = input;
          return state;
        }
        state.output = utils.wrapOutput(output, state, options);
        return state;
      }
      while (!eos()) {
        value = advance();
        if (value === "\0") {
          continue;
        }
        if (value === "\\") {
          const next2 = peek();
          if (next2 === "/" && opts2.bash !== true) {
            continue;
          }
          if (next2 === "." || next2 === ";") {
            continue;
          }
          if (!next2) {
            value += "\\";
            push({ type: "text", value });
            continue;
          }
          const match = /^\\+/.exec(remaining());
          let slashes = 0;
          if (match && match[0].length > 2) {
            slashes = match[0].length;
            state.index += slashes;
            if (slashes % 2 !== 0) {
              value += "\\";
            }
          }
          if (opts2.unescape === true) {
            value = advance();
          } else {
            value += advance();
          }
          if (state.brackets === 0) {
            push({ type: "text", value });
            continue;
          }
        }
        if (state.brackets > 0 && (value !== "]" || prev.value === "[" || prev.value === "[^")) {
          if (opts2.posix !== false && value === ":") {
            const inner = prev.value.slice(1);
            if (inner.includes("[")) {
              prev.posix = true;
              if (inner.includes(":")) {
                const idx = prev.value.lastIndexOf("[");
                const pre = prev.value.slice(0, idx);
                const rest2 = prev.value.slice(idx + 2);
                const posix2 = POSIX_REGEX_SOURCE[rest2];
                if (posix2) {
                  prev.value = pre + posix2;
                  state.backtrack = true;
                  advance();
                  if (!bos.output && tokens.indexOf(prev) === 1) {
                    bos.output = ONE_CHAR;
                  }
                  continue;
                }
              }
            }
          }
          if (value === "[" && peek() !== ":" || value === "-" && peek() === "]") {
            value = `\\${value}`;
          }
          if (value === "]" && (prev.value === "[" || prev.value === "[^")) {
            value = `\\${value}`;
          }
          if (opts2.posix === true && value === "!" && prev.value === "[") {
            value = "^";
          }
          prev.value += value;
          append({ value });
          continue;
        }
        if (state.quotes === 1 && value !== '"') {
          value = utils.escapeRegex(value);
          prev.value += value;
          append({ value });
          continue;
        }
        if (value === '"') {
          state.quotes = state.quotes === 1 ? 0 : 1;
          if (opts2.keepQuotes === true) {
            push({ type: "text", value });
          }
          continue;
        }
        if (value === "(") {
          increment2("parens");
          push({ type: "paren", value });
          continue;
        }
        if (value === ")") {
          if (state.parens === 0 && opts2.strictBrackets === true) {
            throw new SyntaxError(syntaxError("opening", "("));
          }
          const extglob = extglobs[extglobs.length - 1];
          if (extglob && state.parens === extglob.parens + 1) {
            extglobClose(extglobs.pop());
            continue;
          }
          push({ type: "paren", value, output: state.parens ? ")" : "\\)" });
          decrement("parens");
          continue;
        }
        if (value === "[") {
          if (opts2.nobracket === true || !remaining().includes("]")) {
            if (opts2.nobracket !== true && opts2.strictBrackets === true) {
              throw new SyntaxError(syntaxError("closing", "]"));
            }
            value = `\\${value}`;
          } else {
            increment2("brackets");
          }
          push({ type: "bracket", value });
          continue;
        }
        if (value === "]") {
          if (opts2.nobracket === true || prev && prev.type === "bracket" && prev.value.length === 1) {
            push({ type: "text", value, output: `\\${value}` });
            continue;
          }
          if (state.brackets === 0) {
            if (opts2.strictBrackets === true) {
              throw new SyntaxError(syntaxError("opening", "["));
            }
            push({ type: "text", value, output: `\\${value}` });
            continue;
          }
          decrement("brackets");
          const prevValue = prev.value.slice(1);
          if (prev.posix !== true && prevValue[0] === "^" && !prevValue.includes("/")) {
            value = `/${value}`;
          }
          prev.value += value;
          append({ value });
          if (opts2.literalBrackets === false || utils.hasRegexChars(prevValue)) {
            continue;
          }
          const escaped = utils.escapeRegex(prev.value);
          state.output = state.output.slice(0, -prev.value.length);
          if (opts2.literalBrackets === true) {
            state.output += escaped;
            prev.value = escaped;
            continue;
          }
          prev.value = `(${capture}${escaped}|${prev.value})`;
          state.output += prev.value;
          continue;
        }
        if (value === "{" && opts2.nobrace !== true) {
          increment2("braces");
          const open5 = {
            type: "brace",
            value,
            output: "(",
            outputIndex: state.output.length,
            tokensIndex: state.tokens.length
          };
          braces.push(open5);
          push(open5);
          continue;
        }
        if (value === "}") {
          const brace = braces[braces.length - 1];
          if (opts2.nobrace === true || !brace) {
            push({ type: "text", value, output: value });
            continue;
          }
          let output = ")";
          if (brace.dots === true) {
            const arr = tokens.slice();
            const range = [];
            for (let i2 = arr.length - 1; i2 >= 0; i2--) {
              tokens.pop();
              if (arr[i2].type === "brace") {
                break;
              }
              if (arr[i2].type !== "dots") {
                range.unshift(arr[i2].value);
              }
            }
            output = expandRange(range, opts2);
            state.backtrack = true;
          }
          if (brace.comma !== true && brace.dots !== true) {
            const out = state.output.slice(0, brace.outputIndex);
            const toks = state.tokens.slice(brace.tokensIndex);
            brace.value = brace.output = "\\{";
            value = output = "\\}";
            state.output = out;
            for (const t2 of toks) {
              state.output += t2.output || t2.value;
            }
          }
          push({ type: "brace", value, output });
          decrement("braces");
          braces.pop();
          continue;
        }
        if (value === "|") {
          if (extglobs.length > 0) {
            extglobs[extglobs.length - 1].conditions++;
          }
          push({ type: "text", value });
          continue;
        }
        if (value === ",") {
          let output = value;
          const brace = braces[braces.length - 1];
          if (brace && stack[stack.length - 1] === "braces") {
            brace.comma = true;
            output = "|";
          }
          push({ type: "comma", value, output });
          continue;
        }
        if (value === "/") {
          if (prev.type === "dot" && state.index === state.start + 1) {
            state.start = state.index + 1;
            state.consumed = "";
            state.output = "";
            tokens.pop();
            prev = bos;
            continue;
          }
          push({ type: "slash", value, output: SLASH_LITERAL });
          continue;
        }
        if (value === ".") {
          if (state.braces > 0 && prev.type === "dot") {
            if (prev.value === ".") prev.output = DOT_LITERAL;
            const brace = braces[braces.length - 1];
            prev.type = "dots";
            prev.output += value;
            prev.value += value;
            brace.dots = true;
            continue;
          }
          if (state.braces + state.parens === 0 && prev.type !== "bos" && prev.type !== "slash") {
            push({ type: "text", value, output: DOT_LITERAL });
            continue;
          }
          push({ type: "dot", value, output: DOT_LITERAL });
          continue;
        }
        if (value === "?") {
          const isGroup2 = prev && prev.value === "(";
          if (!isGroup2 && opts2.noextglob !== true && peek() === "(" && peek(2) !== "?") {
            extglobOpen("qmark", value);
            continue;
          }
          if (prev && prev.type === "paren") {
            const next2 = peek();
            let output = value;
            if (next2 === "<" && !utils.supportsLookbehinds()) {
              throw new Error("Node.js v10 or higher is required for regex lookbehinds");
            }
            if (prev.value === "(" && !/[!=<:]/.test(next2) || next2 === "<" && !/<([!=]|\w+>)/.test(remaining())) {
              output = `\\${value}`;
            }
            push({ type: "text", value, output });
            continue;
          }
          if (opts2.dot !== true && (prev.type === "slash" || prev.type === "bos")) {
            push({ type: "qmark", value, output: QMARK_NO_DOT });
            continue;
          }
          push({ type: "qmark", value, output: QMARK });
          continue;
        }
        if (value === "!") {
          if (opts2.noextglob !== true && peek() === "(") {
            if (peek(2) !== "?" || !/[!=<:]/.test(peek(3))) {
              extglobOpen("negate", value);
              continue;
            }
          }
          if (opts2.nonegate !== true && state.index === 0) {
            negate();
            continue;
          }
        }
        if (value === "+") {
          if (opts2.noextglob !== true && peek() === "(" && peek(2) !== "?") {
            extglobOpen("plus", value);
            continue;
          }
          if (prev && prev.value === "(" || opts2.regex === false) {
            push({ type: "plus", value, output: PLUS_LITERAL });
            continue;
          }
          if (prev && (prev.type === "bracket" || prev.type === "paren" || prev.type === "brace") || state.parens > 0) {
            push({ type: "plus", value });
            continue;
          }
          push({ type: "plus", value: PLUS_LITERAL });
          continue;
        }
        if (value === "@") {
          if (opts2.noextglob !== true && peek() === "(" && peek(2) !== "?") {
            push({ type: "at", extglob: true, value, output: "" });
            continue;
          }
          push({ type: "text", value });
          continue;
        }
        if (value !== "*") {
          if (value === "$" || value === "^") {
            value = `\\${value}`;
          }
          const match = REGEX_NON_SPECIAL_CHARS.exec(remaining());
          if (match) {
            value += match[0];
            state.index += match[0].length;
          }
          push({ type: "text", value });
          continue;
        }
        if (prev && (prev.type === "globstar" || prev.star === true)) {
          prev.type = "star";
          prev.star = true;
          prev.value += value;
          prev.output = star;
          state.backtrack = true;
          state.globstar = true;
          consume(value);
          continue;
        }
        let rest = remaining();
        if (opts2.noextglob !== true && /^\([^?]/.test(rest)) {
          extglobOpen("star", value);
          continue;
        }
        if (prev.type === "star") {
          if (opts2.noglobstar === true) {
            consume(value);
            continue;
          }
          const prior = prev.prev;
          const before = prior.prev;
          const isStart = prior.type === "slash" || prior.type === "bos";
          const afterStar = before && (before.type === "star" || before.type === "globstar");
          if (opts2.bash === true && (!isStart || rest[0] && rest[0] !== "/")) {
            push({ type: "star", value, output: "" });
            continue;
          }
          const isBrace = state.braces > 0 && (prior.type === "comma" || prior.type === "brace");
          const isExtglob = extglobs.length && (prior.type === "pipe" || prior.type === "paren");
          if (!isStart && prior.type !== "paren" && !isBrace && !isExtglob) {
            push({ type: "star", value, output: "" });
            continue;
          }
          while (rest.slice(0, 3) === "/**") {
            const after = input[state.index + 4];
            if (after && after !== "/") {
              break;
            }
            rest = rest.slice(3);
            consume("/**", 3);
          }
          if (prior.type === "bos" && eos()) {
            prev.type = "globstar";
            prev.value += value;
            prev.output = globstar(opts2);
            state.output = prev.output;
            state.globstar = true;
            consume(value);
            continue;
          }
          if (prior.type === "slash" && prior.prev.type !== "bos" && !afterStar && eos()) {
            state.output = state.output.slice(0, -(prior.output + prev.output).length);
            prior.output = `(?:${prior.output}`;
            prev.type = "globstar";
            prev.output = globstar(opts2) + (opts2.strictSlashes ? ")" : "|$)");
            prev.value += value;
            state.globstar = true;
            state.output += prior.output + prev.output;
            consume(value);
            continue;
          }
          if (prior.type === "slash" && prior.prev.type !== "bos" && rest[0] === "/") {
            const end = rest[1] !== void 0 ? "|$" : "";
            state.output = state.output.slice(0, -(prior.output + prev.output).length);
            prior.output = `(?:${prior.output}`;
            prev.type = "globstar";
            prev.output = `${globstar(opts2)}${SLASH_LITERAL}|${SLASH_LITERAL}${end})`;
            prev.value += value;
            state.output += prior.output + prev.output;
            state.globstar = true;
            consume(value + advance());
            push({ type: "slash", value: "/", output: "" });
            continue;
          }
          if (prior.type === "bos" && rest[0] === "/") {
            prev.type = "globstar";
            prev.value += value;
            prev.output = `(?:^|${SLASH_LITERAL}|${globstar(opts2)}${SLASH_LITERAL})`;
            state.output = prev.output;
            state.globstar = true;
            consume(value + advance());
            push({ type: "slash", value: "/", output: "" });
            continue;
          }
          state.output = state.output.slice(0, -prev.output.length);
          prev.type = "globstar";
          prev.output = globstar(opts2);
          prev.value += value;
          state.output += prev.output;
          state.globstar = true;
          consume(value);
          continue;
        }
        const token = { type: "star", value, output: star };
        if (opts2.bash === true) {
          token.output = ".*?";
          if (prev.type === "bos" || prev.type === "slash") {
            token.output = nodot + token.output;
          }
          push(token);
          continue;
        }
        if (prev && (prev.type === "bracket" || prev.type === "paren") && opts2.regex === true) {
          token.output = value;
          push(token);
          continue;
        }
        if (state.index === state.start || prev.type === "slash" || prev.type === "dot") {
          if (prev.type === "dot") {
            state.output += NO_DOT_SLASH;
            prev.output += NO_DOT_SLASH;
          } else if (opts2.dot === true) {
            state.output += NO_DOTS_SLASH;
            prev.output += NO_DOTS_SLASH;
          } else {
            state.output += nodot;
            prev.output += nodot;
          }
          if (peek() !== "*") {
            state.output += ONE_CHAR;
            prev.output += ONE_CHAR;
          }
        }
        push(token);
      }
      while (state.brackets > 0) {
        if (opts2.strictBrackets === true) throw new SyntaxError(syntaxError("closing", "]"));
        state.output = utils.escapeLast(state.output, "[");
        decrement("brackets");
      }
      while (state.parens > 0) {
        if (opts2.strictBrackets === true) throw new SyntaxError(syntaxError("closing", ")"));
        state.output = utils.escapeLast(state.output, "(");
        decrement("parens");
      }
      while (state.braces > 0) {
        if (opts2.strictBrackets === true) throw new SyntaxError(syntaxError("closing", "}"));
        state.output = utils.escapeLast(state.output, "{");
        decrement("braces");
      }
      if (opts2.strictSlashes !== true && (prev.type === "star" || prev.type === "bracket")) {
        push({ type: "maybe_slash", value: "", output: `${SLASH_LITERAL}?` });
      }
      if (state.backtrack === true) {
        state.output = "";
        for (const token of state.tokens) {
          state.output += token.output != null ? token.output : token.value;
          if (token.suffix) {
            state.output += token.suffix;
          }
        }
      }
      return state;
    };
    parse7.fastpaths = (input, options) => {
      const opts2 = { ...options };
      const max3 = typeof opts2.maxLength === "number" ? Math.min(MAX_LENGTH, opts2.maxLength) : MAX_LENGTH;
      const len = input.length;
      if (len > max3) {
        throw new SyntaxError(`Input length: ${len}, exceeds maximum allowed length: ${max3}`);
      }
      input = REPLACEMENTS[input] || input;
      const win32 = utils.isWindows(options);
      const {
        DOT_LITERAL,
        SLASH_LITERAL,
        ONE_CHAR,
        DOTS_SLASH,
        NO_DOT,
        NO_DOTS,
        NO_DOTS_SLASH,
        STAR,
        START_ANCHOR
      } = constants5.globChars(win32);
      const nodot = opts2.dot ? NO_DOTS : NO_DOT;
      const slashDot = opts2.dot ? NO_DOTS_SLASH : NO_DOT;
      const capture = opts2.capture ? "" : "?:";
      const state = { negated: false, prefix: "" };
      let star = opts2.bash === true ? ".*?" : STAR;
      if (opts2.capture) {
        star = `(${star})`;
      }
      const globstar = (opts3) => {
        if (opts3.noglobstar === true) return star;
        return `(${capture}(?:(?!${START_ANCHOR}${opts3.dot ? DOTS_SLASH : DOT_LITERAL}).)*?)`;
      };
      const create = (str2) => {
        switch (str2) {
          case "*":
            return `${nodot}${ONE_CHAR}${star}`;
          case ".*":
            return `${DOT_LITERAL}${ONE_CHAR}${star}`;
          case "*.*":
            return `${nodot}${star}${DOT_LITERAL}${ONE_CHAR}${star}`;
          case "*/*":
            return `${nodot}${star}${SLASH_LITERAL}${ONE_CHAR}${slashDot}${star}`;
          case "**":
            return nodot + globstar(opts2);
          case "**/*":
            return `(?:${nodot}${globstar(opts2)}${SLASH_LITERAL})?${slashDot}${ONE_CHAR}${star}`;
          case "**/*.*":
            return `(?:${nodot}${globstar(opts2)}${SLASH_LITERAL})?${slashDot}${star}${DOT_LITERAL}${ONE_CHAR}${star}`;
          case "**/.*":
            return `(?:${nodot}${globstar(opts2)}${SLASH_LITERAL})?${DOT_LITERAL}${ONE_CHAR}${star}`;
          default: {
            const match = /^(.*?)\.(\w+)$/.exec(str2);
            if (!match) return;
            const source2 = create(match[1]);
            if (!source2) return;
            return source2 + DOT_LITERAL + match[2];
          }
        }
      };
      const output = utils.removePrefix(input, state);
      let source = create(output);
      if (source && opts2.strictSlashes !== true) {
        source += `${SLASH_LITERAL}?`;
      }
      return source;
    };
    module2.exports = parse7;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/picomatch/2.3.2/970562b178c2a3cae5d09ba562604a9292f4cc3586bd7d210594148d4f487bd5/node_modules/picomatch/lib/picomatch.js
var require_picomatch3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/picomatch/2.3.2/970562b178c2a3cae5d09ba562604a9292f4cc3586bd7d210594148d4f487bd5/node_modules/picomatch/lib/picomatch.js"(exports2, module2) {
    "use strict";
    var path218 = __require("path");
    var scan3 = require_scan2();
    var parse7 = require_parse6();
    var utils = require_utils5();
    var constants5 = require_constants4();
    var isObject4 = (val) => val && typeof val === "object" && !Array.isArray(val);
    var picomatch2 = (glob2, options, returnState = false) => {
      if (Array.isArray(glob2)) {
        const fns = glob2.map((input) => picomatch2(input, options, returnState));
        const arrayMatcher = (str2) => {
          for (const isMatch of fns) {
            const state2 = isMatch(str2);
            if (state2) return state2;
          }
          return false;
        };
        return arrayMatcher;
      }
      const isState = isObject4(glob2) && glob2.tokens && glob2.input;
      if (glob2 === "" || typeof glob2 !== "string" && !isState) {
        throw new TypeError("Expected pattern to be a non-empty string");
      }
      const opts2 = options || {};
      const posix2 = utils.isWindows(options);
      const regex2 = isState ? picomatch2.compileRe(glob2, options) : picomatch2.makeRe(glob2, options, false, true);
      const state = regex2.state;
      delete regex2.state;
      let isIgnored = () => false;
      if (opts2.ignore) {
        const ignoreOpts = { ...options, ignore: null, onMatch: null, onResult: null };
        isIgnored = picomatch2(opts2.ignore, ignoreOpts, returnState);
      }
      const matcher = (input, returnObject = false) => {
        const { isMatch, match, output } = picomatch2.test(input, regex2, options, { glob: glob2, posix: posix2 });
        const result2 = { glob: glob2, state, regex: regex2, posix: posix2, input, output, match, isMatch };
        if (typeof opts2.onResult === "function") {
          opts2.onResult(result2);
        }
        if (isMatch === false) {
          result2.isMatch = false;
          return returnObject ? result2 : false;
        }
        if (isIgnored(input)) {
          if (typeof opts2.onIgnore === "function") {
            opts2.onIgnore(result2);
          }
          result2.isMatch = false;
          return returnObject ? result2 : false;
        }
        if (typeof opts2.onMatch === "function") {
          opts2.onMatch(result2);
        }
        return returnObject ? result2 : true;
      };
      if (returnState) {
        matcher.state = state;
      }
      return matcher;
    };
    picomatch2.test = (input, regex2, options, { glob: glob2, posix: posix2 } = {}) => {
      if (typeof input !== "string") {
        throw new TypeError("Expected input to be a string");
      }
      if (input === "") {
        return { isMatch: false, output: "" };
      }
      const opts2 = options || {};
      const format2 = opts2.format || (posix2 ? utils.toPosixSlashes : null);
      let match = input === glob2;
      let output = match && format2 ? format2(input) : input;
      if (match === false) {
        output = format2 ? format2(input) : input;
        match = output === glob2;
      }
      if (match === false || opts2.capture === true) {
        if (opts2.matchBase === true || opts2.basename === true) {
          match = picomatch2.matchBase(input, regex2, options, posix2);
        } else {
          match = regex2.exec(output);
        }
      }
      return { isMatch: Boolean(match), match, output };
    };
    picomatch2.matchBase = (input, glob2, options, posix2 = utils.isWindows(options)) => {
      const regex2 = glob2 instanceof RegExp ? glob2 : picomatch2.makeRe(glob2, options);
      return regex2.test(path218.basename(input));
    };
    picomatch2.isMatch = (str2, patterns, options) => picomatch2(patterns, options)(str2);
    picomatch2.parse = (pattern, options) => {
      if (Array.isArray(pattern)) return pattern.map((p) => picomatch2.parse(p, options));
      return parse7(pattern, { ...options, fastpaths: false });
    };
    picomatch2.scan = (input, options) => scan3(input, options);
    picomatch2.compileRe = (state, options, returnOutput = false, returnState = false) => {
      if (returnOutput === true) {
        return state.output;
      }
      const opts2 = options || {};
      const prepend = opts2.contains ? "" : "^";
      const append = opts2.contains ? "" : "$";
      let source = `${prepend}(?:${state.output})${append}`;
      if (state && state.negated === true) {
        source = `^(?!${source}).*$`;
      }
      const regex2 = picomatch2.toRegex(source, options);
      if (returnState === true) {
        regex2.state = state;
      }
      return regex2;
    };
    picomatch2.makeRe = (input, options = {}, returnOutput = false, returnState = false) => {
      if (!input || typeof input !== "string") {
        throw new TypeError("Expected a non-empty string");
      }
      let parsed = { negated: false, fastpaths: true };
      if (options.fastpaths !== false && (input[0] === "." || input[0] === "*")) {
        parsed.output = parse7.fastpaths(input, options);
      }
      if (!parsed.output) {
        parsed = parse7(input, options);
      }
      return picomatch2.compileRe(parsed, options, returnOutput, returnState);
    };
    picomatch2.toRegex = (source, options) => {
      try {
        const opts2 = options || {};
        return new RegExp(source, opts2.flags || (opts2.nocase ? "i" : ""));
      } catch (err) {
        if (options && options.debug === true) throw err;
        return /$^/;
      }
    };
    picomatch2.constants = constants5;
    module2.exports = picomatch2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/picomatch/2.3.2/970562b178c2a3cae5d09ba562604a9292f4cc3586bd7d210594148d4f487bd5/node_modules/picomatch/index.js
var require_picomatch4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/picomatch/2.3.2/970562b178c2a3cae5d09ba562604a9292f4cc3586bd7d210594148d4f487bd5/node_modules/picomatch/index.js"(exports2, module2) {
    "use strict";
    module2.exports = require_picomatch3();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/micromatch/4.0.8/e3e5f26f16f8b95548bbbd14ad679e23348853c21837502922840101deaebdcd/node_modules/micromatch/index.js
var require_micromatch = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/micromatch/4.0.8/e3e5f26f16f8b95548bbbd14ad679e23348853c21837502922840101deaebdcd/node_modules/micromatch/index.js"(exports2, module2) {
    "use strict";
    var util56 = __require("util");
    var braces = require_braces();
    var picomatch2 = require_picomatch4();
    var utils = require_utils5();
    var isEmptyString = (v) => v === "" || v === "./";
    var hasBraces = (v) => {
      const index = v.indexOf("{");
      return index > -1 && v.indexOf("}", index) > -1;
    };
    var micromatch3 = (list2, patterns, options) => {
      patterns = [].concat(patterns);
      list2 = [].concat(list2);
      let omit3 = /* @__PURE__ */ new Set();
      let keep = /* @__PURE__ */ new Set();
      let items = /* @__PURE__ */ new Set();
      let negatives = 0;
      let onResult = (state) => {
        items.add(state.output);
        if (options && options.onResult) {
          options.onResult(state);
        }
      };
      for (let i2 = 0; i2 < patterns.length; i2++) {
        let isMatch = picomatch2(String(patterns[i2]), { ...options, onResult }, true);
        let negated = isMatch.state.negated || isMatch.state.negatedExtglob;
        if (negated) negatives++;
        for (let item of list2) {
          let matched = isMatch(item, true);
          let match = negated ? !matched.isMatch : matched.isMatch;
          if (!match) continue;
          if (negated) {
            omit3.add(matched.output);
          } else {
            omit3.delete(matched.output);
            keep.add(matched.output);
          }
        }
      }
      let result2 = negatives === patterns.length ? [...items] : [...keep];
      let matches2 = result2.filter((item) => !omit3.has(item));
      if (options && matches2.length === 0) {
        if (options.failglob === true) {
          throw new Error(`No matches found for "${patterns.join(", ")}"`);
        }
        if (options.nonull === true || options.nullglob === true) {
          return options.unescape ? patterns.map((p) => p.replace(/\\/g, "")) : patterns;
        }
      }
      return matches2;
    };
    micromatch3.match = micromatch3;
    micromatch3.matcher = (pattern, options) => picomatch2(pattern, options);
    micromatch3.isMatch = (str2, patterns, options) => picomatch2(patterns, options)(str2);
    micromatch3.any = micromatch3.isMatch;
    micromatch3.not = (list2, patterns, options = {}) => {
      patterns = [].concat(patterns).map(String);
      let result2 = /* @__PURE__ */ new Set();
      let items = [];
      let onResult = (state) => {
        if (options.onResult) options.onResult(state);
        items.push(state.output);
      };
      let matches2 = new Set(micromatch3(list2, patterns, { ...options, onResult }));
      for (let item of items) {
        if (!matches2.has(item)) {
          result2.add(item);
        }
      }
      return [...result2];
    };
    micromatch3.contains = (str2, pattern, options) => {
      if (typeof str2 !== "string") {
        throw new TypeError(`Expected a string: "${util56.inspect(str2)}"`);
      }
      if (Array.isArray(pattern)) {
        return pattern.some((p) => micromatch3.contains(str2, p, options));
      }
      if (typeof pattern === "string") {
        if (isEmptyString(str2) || isEmptyString(pattern)) {
          return false;
        }
        if (str2.includes(pattern) || str2.startsWith("./") && str2.slice(2).includes(pattern)) {
          return true;
        }
      }
      return micromatch3.isMatch(str2, pattern, { ...options, contains: true });
    };
    micromatch3.matchKeys = (obj, patterns, options) => {
      if (!utils.isObject(obj)) {
        throw new TypeError("Expected the first argument to be an object");
      }
      let keys4 = micromatch3(Object.keys(obj), patterns, options);
      let res = {};
      for (let key of keys4) res[key] = obj[key];
      return res;
    };
    micromatch3.some = (list2, patterns, options) => {
      let items = [].concat(list2);
      for (let pattern of [].concat(patterns)) {
        let isMatch = picomatch2(String(pattern), options);
        if (items.some((item) => isMatch(item))) {
          return true;
        }
      }
      return false;
    };
    micromatch3.every = (list2, patterns, options) => {
      let items = [].concat(list2);
      for (let pattern of [].concat(patterns)) {
        let isMatch = picomatch2(String(pattern), options);
        if (!items.every((item) => isMatch(item))) {
          return false;
        }
      }
      return true;
    };
    micromatch3.all = (str2, patterns, options) => {
      if (typeof str2 !== "string") {
        throw new TypeError(`Expected a string: "${util56.inspect(str2)}"`);
      }
      return [].concat(patterns).every((p) => picomatch2(p, options)(str2));
    };
    micromatch3.capture = (glob2, input, options) => {
      let posix2 = utils.isWindows(options);
      let regex2 = picomatch2.makeRe(String(glob2), { ...options, capture: true });
      let match = regex2.exec(posix2 ? utils.toPosixSlashes(input) : input);
      if (match) {
        return match.slice(1).map((v) => v === void 0 ? "" : v);
      }
    };
    micromatch3.makeRe = (...args) => picomatch2.makeRe(...args);
    micromatch3.scan = (...args) => picomatch2.scan(...args);
    micromatch3.parse = (patterns, options) => {
      let res = [];
      for (let pattern of [].concat(patterns || [])) {
        for (let str2 of braces(String(pattern), options)) {
          res.push(picomatch2.parse(str2, options));
        }
      }
      return res;
    };
    micromatch3.braces = (pattern, options) => {
      if (typeof pattern !== "string") throw new TypeError("Expected a string");
      if (options && options.nobrace === true || !hasBraces(pattern)) {
        return [pattern];
      }
      return braces(pattern, options);
    };
    micromatch3.braceExpand = (pattern, options) => {
      if (typeof pattern !== "string") throw new TypeError("Expected a string");
      return micromatch3.braces(pattern, { ...options, expand: true });
    };
    micromatch3.hasBraces = hasBraces;
    module2.exports = micromatch3;
  }
});

// ../workspace/workspace-manifest-reader/lib/errors/InvalidWorkspaceManifestError.js
var InvalidWorkspaceManifestError;
var init_InvalidWorkspaceManifestError = __esm({
  "../workspace/workspace-manifest-reader/lib/errors/InvalidWorkspaceManifestError.js"() {
    "use strict";
    init_lib2();
    InvalidWorkspaceManifestError = class extends PnpmError {
      constructor(message) {
        super("INVALID_WORKSPACE_CONFIGURATION", message);
      }
    };
  }
});

// ../workspace/workspace-manifest-reader/lib/catalogs.js
function assertValidWorkspaceManifestCatalog(manifest) {
  if (manifest.catalog == null) {
    return;
  }
  if (Array.isArray(manifest.catalog)) {
    throw new InvalidWorkspaceManifestError("Expected catalog field to be an object, but found - array");
  }
  if (typeof manifest.catalog !== "object") {
    throw new InvalidWorkspaceManifestError(`Expected catalog field to be an object, but found - ${typeof manifest.catalog}`);
  }
  for (const [alias, specifier] of Object.entries(manifest.catalog)) {
    if (typeof specifier !== "string") {
      throw new InvalidWorkspaceManifestError(`Invalid catalog entry for ${alias}. Expected string, but found: ${typeof specifier}`);
    }
  }
}
function assertValidWorkspaceManifestCatalogs(manifest) {
  if (manifest.catalogs == null) {
    return;
  }
  if (Array.isArray(manifest.catalogs)) {
    throw new InvalidWorkspaceManifestError("Expected catalogs field to be an object, but found - array");
  }
  if (typeof manifest.catalogs !== "object") {
    throw new InvalidWorkspaceManifestError(`Expected catalogs field to be an object, but found - ${typeof manifest.catalogs}`);
  }
  for (const [catalogName, catalog] of Object.entries(manifest.catalogs)) {
    if (Array.isArray(catalog)) {
      throw new InvalidWorkspaceManifestError(`Expected named catalog ${catalogName} to be an object, but found - array`);
    }
    if (catalog === null) {
      throw new InvalidWorkspaceManifestError(`Expected named catalog ${catalogName} to be an object, but found - null`);
    }
    if (typeof catalog !== "object") {
      throw new InvalidWorkspaceManifestError(`Expected named catalog ${catalogName} to be an object, but found - ${typeof catalog}`);
    }
    for (const [alias, specifier] of Object.entries(catalog)) {
      if (typeof specifier !== "string") {
        throw new InvalidWorkspaceManifestError(`Catalog '${catalogName}' has invalid entry '${alias}'. Expected string specifier, but found: ${typeof specifier}`);
      }
    }
  }
}
var init_catalogs = __esm({
  "../workspace/workspace-manifest-reader/lib/catalogs.js"() {
    "use strict";
    init_InvalidWorkspaceManifestError();
  }
});

// ../workspace/workspace-manifest-reader/lib/index.js
import path21 from "node:path";
import util4 from "node:util";
async function readWorkspaceManifest(dir, cfgFileName = WORKSPACE_MANIFEST_FILENAME) {
  const manifest = await readManifestRaw(dir, cfgFileName);
  validateWorkspaceManifest(manifest);
  return manifest;
}
async function readManifestRaw(dir, cfgFileName) {
  try {
    return await readYamlFile(path21.join(dir, cfgFileName));
  } catch (err) {
    if (util4.types.isNativeError(err) && "code" in err && err.code === "ENOENT") {
      return void 0;
    }
    throw err;
  }
}
function validateWorkspaceManifest(manifest) {
  if (manifest === void 0 || manifest === null) {
    return;
  }
  if (typeof manifest !== "object") {
    throw new InvalidWorkspaceManifestError(`Expected object but found - ${typeof manifest}`);
  }
  if (Array.isArray(manifest)) {
    throw new InvalidWorkspaceManifestError("Expected object but found - array");
  }
  if (Object.keys(manifest).length === 0) {
    return;
  }
  assertValidWorkspaceManifestPackages(manifest);
  assertValidWorkspaceManifestCatalog(manifest);
  assertValidWorkspaceManifestCatalogs(manifest);
  checkWorkspaceManifestAssignability(manifest);
}
function assertValidWorkspaceManifestPackages(manifest) {
  if (!manifest.packages) {
    return;
  }
  if (!Array.isArray(manifest.packages)) {
    throw new InvalidWorkspaceManifestError("packages field is not an array");
  }
  for (const pkg of manifest.packages) {
    if (!pkg) {
      throw new InvalidWorkspaceManifestError("Missing or empty package");
    }
    const type4 = typeof pkg;
    if (type4 !== "string") {
      throw new InvalidWorkspaceManifestError(`Invalid package type - ${type4}`);
    }
  }
}
function checkWorkspaceManifestAssignability(_manifest) {
}
var init_lib31 = __esm({
  "../workspace/workspace-manifest-reader/lib/index.js"() {
    "use strict";
    init_lib();
    init_read_yaml_file();
    init_catalogs();
    init_InvalidWorkspaceManifestError();
  }
});

// ../workspace/projects-filter/lib/filterProjectsFromDir.js
var init_filterProjectsFromDir = __esm({
  "../workspace/projects-filter/lib/filterProjectsFromDir.js"() {
    "use strict";
    init_lib30();
    init_lib31();
    init_lib32();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/p-limit/4.0.0/a8ea089d6eedabb97f179cd2f18abbf049892f2985b5c0c0627a5cb3dbed01b7/node_modules/p-limit/index.js
function pLimit2(concurrency) {
  if (!((Number.isInteger(concurrency) || concurrency === Number.POSITIVE_INFINITY) && concurrency > 0)) {
    throw new TypeError("Expected `concurrency` to be a number from 1 and up");
  }
  const queue2 = new Queue();
  let activeCount = 0;
  const next2 = () => {
    activeCount--;
    if (queue2.size > 0) {
      queue2.dequeue()();
    }
  };
  const run = async (fn, resolve3, args) => {
    activeCount++;
    const result2 = (async () => fn(...args))();
    resolve3(result2);
    try {
      await result2;
    } catch {
    }
    next2();
  };
  const enqueue = (fn, resolve3, args) => {
    queue2.enqueue(run.bind(void 0, fn, resolve3, args));
    (async () => {
      await Promise.resolve();
      if (activeCount < concurrency && queue2.size > 0) {
        queue2.dequeue()();
      }
    })();
  };
  const generator = (fn, ...args) => new Promise((resolve3) => {
    enqueue(fn, resolve3, args);
  });
  Object.defineProperties(generator, {
    activeCount: {
      get: () => activeCount
    },
    pendingCount: {
      get: () => queue2.size
    },
    clearQueue: {
      value: () => {
        queue2.clear();
      }
    }
  });
  return generator;
}
var init_p_limit2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/p-limit/4.0.0/a8ea089d6eedabb97f179cd2f18abbf049892f2985b5c0c0627a5cb3dbed01b7/node_modules/p-limit/index.js"() {
    init_yocto_queue();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/p-locate/6.0.0/1ceca22a7ed409c6fd9a0b62b88c1a67c652320a5c05cef568868e98b90c4071/node_modules/p-locate/index.js
async function pLocate(iterable, tester, {
  concurrency = Number.POSITIVE_INFINITY,
  preserveOrder = true
} = {}) {
  const limit = pLimit2(concurrency);
  const items = [...iterable].map((element) => [element, limit(testElement, element, tester)]);
  const checkLimit = pLimit2(preserveOrder ? 1 : Number.POSITIVE_INFINITY);
  try {
    await Promise.all(items.map((element) => checkLimit(finder, element)));
  } catch (error) {
    if (error instanceof EndError) {
      return error.value;
    }
    throw error;
  }
}
var EndError, testElement, finder;
var init_p_locate = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/p-locate/6.0.0/1ceca22a7ed409c6fd9a0b62b88c1a67c652320a5c05cef568868e98b90c4071/node_modules/p-locate/index.js"() {
    init_p_limit2();
    EndError = class extends Error {
      constructor(value) {
        super();
        this.value = value;
      }
    };
    testElement = async (element, tester) => tester(await element);
    finder = async (element) => {
      const values = await Promise.all(element);
      if (values[1] === true) {
        throw new EndError(values[0]);
      }
      return false;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/locate-path/8.0.0/23cb8ca7bc9be18c57db03379fc93f36d6b3b1dbe67279ef5d093da860e12c03/node_modules/locate-path/index.js
import process11 from "node:process";
import path22 from "node:path";
import fs11, { promises as fsPromises } from "node:fs";
import { fileURLToPath as fileURLToPath5 } from "node:url";
function checkType(type4) {
  if (type4 === "both" || Object.hasOwn(typeMappings, type4)) {
    return;
  }
  throw new Error(`Invalid type specified: ${type4}`);
}
async function locatePath(paths3, {
  cwd = process11.cwd(),
  type: type4 = "file",
  allowSymlinks = true,
  concurrency,
  preserveOrder
} = {}) {
  checkType(type4);
  cwd = toPath2(cwd);
  const statFunction = allowSymlinks ? fsPromises.stat : fsPromises.lstat;
  return pLocate(paths3, async (path_) => {
    try {
      const stat2 = await statFunction(path22.resolve(cwd, path_));
      return matchType(type4, stat2);
    } catch {
      return false;
    }
  }, { concurrency, preserveOrder });
}
var typeMappings, matchType, toPath2;
var init_locate_path = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/locate-path/8.0.0/23cb8ca7bc9be18c57db03379fc93f36d6b3b1dbe67279ef5d093da860e12c03/node_modules/locate-path/index.js"() {
    init_p_locate();
    typeMappings = {
      directory: "isDirectory",
      file: "isFile"
    };
    matchType = (type4, stat2) => type4 === "both" ? stat2.isFile() || stat2.isDirectory() : stat2[typeMappings[type4]]();
    toPath2 = (urlOrPath) => urlOrPath instanceof URL ? fileURLToPath5(urlOrPath) : urlOrPath;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/find-up/8.0.0/59f0d4fb4bc432edc218c56979ca66bf9113aade2910b64f6fd8094798784cae/node_modules/find-up/index.js
import path23 from "node:path";
async function findUpMultiple(name, options = {}) {
  let directory = path23.resolve(toPath(options.cwd) ?? "");
  const { root } = path23.parse(directory);
  const stopAt = path23.resolve(directory, toPath(options.stopAt) ?? root);
  const limit = options.limit ?? Number.POSITIVE_INFINITY;
  const paths3 = [name].flat();
  const runMatcher = async (locateOptions) => {
    if (typeof name !== "function") {
      return locatePath(paths3, locateOptions);
    }
    const foundPath = await name(locateOptions.cwd);
    if (typeof foundPath === "string") {
      return locatePath([foundPath], locateOptions);
    }
    return foundPath;
  };
  const matches2 = [];
  while (true) {
    const foundPath = await runMatcher({ ...options, cwd: directory });
    if (foundPath === findUpStop) {
      break;
    }
    if (foundPath) {
      matches2.push(path23.resolve(directory, foundPath));
    }
    if (directory === stopAt || matches2.length >= limit) {
      break;
    }
    directory = path23.dirname(directory);
  }
  return matches2;
}
async function findUp(name, options = {}) {
  const matches2 = await findUpMultiple(name, { ...options, limit: 1 });
  return matches2[0];
}
var findUpStop;
var init_find_up = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/find-up/8.0.0/59f0d4fb4bc432edc218c56979ca66bf9113aade2910b64f6fd8094798784cae/node_modules/find-up/index.js"() {
    init_locate_path();
    init_node();
    findUpStop = /* @__PURE__ */ Symbol("findUpStop");
  }
});

// ../workspace/projects-filter/lib/getChangedProjects.js
import assert2 from "node:assert";
import path24 from "node:path";
import util5 from "node:util";
async function getChangedProjects(projectDirs, commit, opts2) {
  const gitPath = await findUp(".git", { cwd: opts2.workspaceDir, type: "directory" }) ?? await findUp(".git", { cwd: opts2.workspaceDir, type: "file" });
  const repoRoot = path24.resolve(gitPath ?? opts2.workspaceDir, "..");
  const changedDirs = (await getChangedDirsSinceCommit(commit, opts2.workspaceDir, opts2.testPattern ?? [], opts2.changedFilesIgnorePattern ?? [])).map((changedDir) => ({ ...changedDir, dir: path24.join(repoRoot, changedDir.dir) }));
  const projectChangeTypes = /* @__PURE__ */ new Map();
  for (const projectDir of projectDirs) {
    projectChangeTypes.set(projectDir, void 0);
  }
  for (const changedDir of changedDirs) {
    let currentDir = changedDir.dir;
    while (!projectChangeTypes.has(currentDir)) {
      const nextDir = path24.dirname(currentDir);
      if (nextDir === currentDir)
        break;
      currentDir = nextDir;
    }
    if (projectChangeTypes.get(currentDir) === "source")
      continue;
    projectChangeTypes.set(currentDir, changedDir.changeType);
  }
  const changedProjects = [];
  const ignoreDependentForPkgs = [];
  for (const [changedDir, changeType] of projectChangeTypes.entries()) {
    switch (changeType) {
      case "source":
        changedProjects.push(changedDir);
        break;
      case "test":
        ignoreDependentForPkgs.push(changedDir);
        break;
    }
  }
  return [changedProjects, ignoreDependentForPkgs];
}
async function getChangedDirsSinceCommit(commit, workingDir, testPattern, changedFilesIgnorePattern) {
  let diff;
  try {
    diff = (await safeExeca("git", [
      "diff",
      "--name-only",
      commit,
      "--",
      workingDir
    ], { cwd: workingDir })).stdout;
  } catch (err) {
    assert2(util5.types.isNativeError(err));
    throw new PnpmError("FILTER_CHANGED", `Filtering by changed packages failed. ${"stderr" in err ? err.stderr : ""}`);
  }
  const changedDirs = /* @__PURE__ */ new Map();
  if (!diff) {
    return [];
  }
  const allChangedFiles = diff.split("\n").map((line) => line.replace(/^"/, "").replace(/"$/, ""));
  const patterns = changedFilesIgnorePattern.filter((pattern) => pattern.length);
  const changedFiles = patterns.length > 0 ? micromatch.default.not(allChangedFiles, patterns, {
    dot: true
  }) : allChangedFiles;
  for (const changedFile of changedFiles) {
    const dir = path24.dirname(changedFile);
    if (changedDirs.get(dir) === "source")
      continue;
    const changeType = testPattern.some((pattern) => micromatch.default.isMatch(changedFile, pattern)) ? "test" : "source";
    changedDirs.set(dir, changeType);
  }
  return Array.from(changedDirs.entries()).map(([dir, changeType]) => ({ dir, changeType }));
}
var micromatch;
var init_getChangedProjects = __esm({
  "../workspace/projects-filter/lib/getChangedProjects.js"() {
    "use strict";
    init_lib2();
    init_lib26();
    init_find_up();
    micromatch = __toESM(require_micromatch(), 1);
  }
});

// ../workspace/projects-filter/lib/parseProjectSelector.js
import path25 from "node:path";
function parseProjectSelector(rawSelector, prefix) {
  let exclude = false;
  if (rawSelector[0] === "!") {
    exclude = true;
    rawSelector = rawSelector.substring(1);
  }
  let excludeSelf = false;
  const includeDependencies = rawSelector.endsWith("...");
  if (includeDependencies) {
    rawSelector = rawSelector.slice(0, -3);
    if (rawSelector.endsWith("^")) {
      excludeSelf = true;
      rawSelector = rawSelector.slice(0, -1);
    }
  }
  const includeDependents = rawSelector.startsWith("...");
  if (includeDependents) {
    rawSelector = rawSelector.substring(3);
    if (rawSelector[0] === "^") {
      excludeSelf = true;
      rawSelector = rawSelector.slice(1);
    }
  }
  const matches2 = rawSelector.match(/^([^.][^{}[\]]*)?(\{[^}]+\})?(\[[^\]]+\])?$/);
  if (matches2 === null) {
    if (isSelectorByLocation(rawSelector)) {
      return {
        exclude,
        excludeSelf: false,
        parentDir: path25.join(prefix, rawSelector)
      };
    }
    return {
      excludeSelf: false,
      namePattern: rawSelector
    };
  }
  return {
    diff: matches2[3]?.slice(1, -1),
    exclude,
    excludeSelf,
    includeDependencies,
    includeDependents,
    namePattern: matches2[1],
    parentDir: matches2[2] && path25.join(prefix, matches2[2].slice(1, -1))
  };
}
function isSelectorByLocation(rawSelector) {
  if (rawSelector[0] !== ".")
    return false;
  if (rawSelector.length === 1 || rawSelector[1] === "/" || rawSelector[1] === "\\")
    return true;
  if (rawSelector[1] !== ".")
    return false;
  return rawSelector.length === 2 || rawSelector[2] === "/" || rawSelector[2] === "\\";
}
var init_parseProjectSelector = __esm({
  "../workspace/projects-filter/lib/parseProjectSelector.js"() {
    "use strict";
  }
});

// ../workspace/projects-filter/lib/index.js
async function filterProjectsFromDir(workspaceDir, filter14, opts2) {
  const allProjects = await findWorkspaceProjects(workspaceDir, {
    engineStrict: opts2?.engineStrict,
    patterns: opts2.patterns,
    sharedWorkspaceLockfile: opts2.sharedWorkspaceLockfile,
    nodeVersion: opts2.nodeVersion,
    supportedArchitectures: opts2.supportedArchitectures
  });
  return {
    allProjects,
    ...await filterProjects(allProjects, filter14, opts2)
  };
}
async function filterProjects(projects, filter14, opts2) {
  const projectSelectors = filter14.map(({ filter: f, followProdDepsOnly }) => ({ ...parseProjectSelector(f, opts2.prefix), followProdDepsOnly }));
  return filterProjectsBySelectorObjects(projects, projectSelectors, opts2);
}
async function filterProjectsBySelectorObjects(projects, projectSelectors, opts2) {
  const [prodProjectSelectors, allProjectSelectors] = partition_default(({ followProdDepsOnly }) => !!followProdDepsOnly, projectSelectors);
  if (allProjectSelectors.length > 0 || prodProjectSelectors.length > 0) {
    let filteredGraph;
    const { graph } = createProjectsGraph(projects, { linkWorkspacePackages: opts2.linkWorkspacePackages });
    if (allProjectSelectors.length > 0) {
      filteredGraph = await filterWorkspaceProjects(graph, allProjectSelectors, {
        workspaceDir: opts2.workspaceDir,
        testPattern: opts2.testPattern,
        changedFilesIgnorePattern: opts2.changedFilesIgnorePattern,
        useGlobDirFiltering: opts2.useGlobDirFiltering
      });
    }
    let prodFilteredGraph;
    if (prodProjectSelectors.length > 0) {
      const { graph: graph2 } = createProjectsGraph(projects, { ignoreDevDeps: true, linkWorkspacePackages: opts2.linkWorkspacePackages });
      prodFilteredGraph = await filterWorkspaceProjects(graph2, prodProjectSelectors, {
        workspaceDir: opts2.workspaceDir,
        testPattern: opts2.testPattern,
        changedFilesIgnorePattern: opts2.changedFilesIgnorePattern,
        useGlobDirFiltering: opts2.useGlobDirFiltering
      });
    }
    return {
      allProjectsGraph: graph,
      selectedProjectsGraph: {
        ...prodFilteredGraph?.selectedProjectsGraph,
        ...filteredGraph?.selectedProjectsGraph
      },
      unmatchedFilters: [
        ...prodFilteredGraph !== void 0 ? prodFilteredGraph.unmatchedFilters : [],
        ...filteredGraph !== void 0 ? filteredGraph.unmatchedFilters : []
      ]
    };
  } else {
    const { graph } = createProjectsGraph(projects, { linkWorkspacePackages: opts2.linkWorkspacePackages });
    return { allProjectsGraph: graph, selectedProjectsGraph: graph, unmatchedFilters: [] };
  }
}
async function filterWorkspaceProjects(projectsGraph, projectSelectors, opts2) {
  const [excludeSelectors, includeSelectors] = partition_default((selector) => selector.exclude === true, projectSelectors);
  const fg = _filterGraph.bind(null, projectsGraph, opts2);
  const include = includeSelectors.length === 0 ? { selected: Object.keys(projectsGraph), unmatchedFilters: [] } : await fg(includeSelectors);
  const exclude = await fg(excludeSelectors);
  return {
    selectedProjectsGraph: pick_default(difference_default(include.selected, exclude.selected), projectsGraph),
    unmatchedFilters: [...include.unmatchedFilters, ...exclude.unmatchedFilters]
  };
}
async function _filterGraph(projectsGraph, opts2, projectSelectors) {
  const cherryPickedProjects = [];
  const walkedDependencies = /* @__PURE__ */ new Set();
  const walkedDependents = /* @__PURE__ */ new Set();
  const walkedDependentsDependencies = /* @__PURE__ */ new Set();
  const graph = projectsGraphToGraph(projectsGraph);
  const unmatchedFilters = [];
  let reversedGraph;
  const matchProjectsByPath = opts2.useGlobDirFiltering === true ? matchProjectsByGlob : matchProjectsByExactPath;
  for (const selector of projectSelectors) {
    let entryProjects = null;
    if (selector.diff) {
      let ignoreDependentForProjects = [];
      [entryProjects, ignoreDependentForProjects] = await getChangedProjects(Object.keys(projectsGraph), selector.diff, {
        changedFilesIgnorePattern: opts2.changedFilesIgnorePattern,
        testPattern: opts2.testPattern,
        workspaceDir: selector.parentDir ?? opts2.workspaceDir
      });
      selectEntries({
        ...selector,
        includeDependents: false
      }, ignoreDependentForProjects);
    } else if (selector.parentDir) {
      entryProjects = matchProjectsByPath(projectsGraph, selector.parentDir);
    }
    if (selector.namePattern) {
      if (entryProjects == null) {
        entryProjects = matchProjects(projectsGraph, selector.namePattern);
      } else {
        entryProjects = matchProjects(pick_default(entryProjects, projectsGraph), selector.namePattern);
      }
    }
    if (entryProjects == null) {
      throw new Error(`Unsupported project selector: ${JSON.stringify(selector)}`);
    }
    if (entryProjects.length === 0) {
      if (selector.namePattern) {
        unmatchedFilters.push(selector.namePattern);
      }
      if (selector.parentDir) {
        unmatchedFilters.push(selector.parentDir);
      }
    }
    selectEntries(selector, entryProjects);
  }
  const walked = /* @__PURE__ */ new Set([...walkedDependencies, ...walkedDependents, ...walkedDependentsDependencies]);
  cherryPickedProjects.forEach((cherryPickedProject) => walked.add(cherryPickedProject));
  return {
    selected: Array.from(walked),
    unmatchedFilters
  };
  function selectEntries(selector, entryProjects) {
    if (selector.includeDependencies) {
      pickSubgraph(graph, entryProjects, walkedDependencies, { includeRoot: !selector.excludeSelf });
    }
    if (selector.includeDependents) {
      if (reversedGraph == null) {
        reversedGraph = reverseGraph(graph);
      }
      pickSubgraph(reversedGraph, entryProjects, walkedDependents, { includeRoot: !selector.excludeSelf });
    }
    if (selector.includeDependencies && selector.includeDependents) {
      pickSubgraph(graph, Array.from(walkedDependents), walkedDependentsDependencies, { includeRoot: false });
    }
    if (!selector.includeDependencies && !selector.includeDependents) {
      cherryPickedProjects.push(...entryProjects);
    }
  }
}
function projectsGraphToGraph(projectsGraph) {
  const graph = {};
  for (const nodeId of Object.keys(projectsGraph)) {
    graph[nodeId] = projectsGraph[nodeId].dependencies;
  }
  return graph;
}
function reverseGraph(graph) {
  const reversedGraph = {};
  for (const dependentNodeId of Object.keys(graph)) {
    for (const dependencyNodeId of graph[dependentNodeId]) {
      if (!reversedGraph[dependencyNodeId]) {
        reversedGraph[dependencyNodeId] = [dependentNodeId];
      } else {
        reversedGraph[dependencyNodeId].push(dependentNodeId);
      }
    }
  }
  return reversedGraph;
}
function matchProjects(graph, pattern) {
  const match = createMatcher(pattern);
  const matches2 = Object.keys(graph).filter((id) => graph[id].package.manifest.name && match(graph[id].package.manifest.name));
  if (matches2.length === 0 && !(pattern[0] === "@") && !pattern.includes("/")) {
    const scopedMatches = matchProjects(graph, `@*/${pattern}`);
    return scopedMatches.length !== 1 ? [] : scopedMatches;
  }
  return matches2;
}
function matchProjectsByExactPath(graph, pathStartsWith) {
  return Object.keys(graph).filter((parentDir) => isSubdir(pathStartsWith, parentDir));
}
function matchProjectsByGlob(graph, pathStartsWith) {
  const format2 = (str2) => str2.replace(/\/$/, "");
  const formattedFilter = pathStartsWith.replace(/\\/g, "/").replace(/\/$/, "");
  return Object.keys(graph).filter((parentDir) => micromatch2.default.isMatch(parentDir, formattedFilter, { format: format2 }));
}
function pickSubgraph(graph, nextNodeIds, walked, opts2) {
  for (const nextNodeId2 of nextNodeIds) {
    if (!walked.has(nextNodeId2)) {
      if (opts2.includeRoot) {
        walked.add(nextNodeId2);
      }
      if (graph[nextNodeId2])
        pickSubgraph(graph, graph[nextNodeId2], walked, { includeRoot: true });
    }
  }
}
var micromatch2;
var init_lib32 = __esm({
  "../workspace/projects-filter/lib/index.js"() {
    "use strict";
    init_lib14();
    init_lib25();
    init_lib30();
    init_is_subdir();
    micromatch2 = __toESM(require_micromatch(), 1);
    init_es();
    init_filterProjectsFromDir();
    init_getChangedProjects();
    init_parseProjectSelector();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/signal-exit/3.0.7/17684ddc6565dcb0656eebf5baa466fb9508591bfb94e71b7cceef0c0d3afced/node_modules/signal-exit/signals.js
var require_signals2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/signal-exit/3.0.7/17684ddc6565dcb0656eebf5baa466fb9508591bfb94e71b7cceef0c0d3afced/node_modules/signal-exit/signals.js"(exports2, module2) {
    module2.exports = [
      "SIGABRT",
      "SIGALRM",
      "SIGHUP",
      "SIGINT",
      "SIGTERM"
    ];
    if (process.platform !== "win32") {
      module2.exports.push(
        "SIGVTALRM",
        "SIGXCPU",
        "SIGXFSZ",
        "SIGUSR2",
        "SIGTRAP",
        "SIGSYS",
        "SIGQUIT",
        "SIGIOT"
        // should detect profiler and enable/disable accordingly.
        // see #21
        // 'SIGPROF'
      );
    }
    if (process.platform === "linux") {
      module2.exports.push(
        "SIGIO",
        "SIGPOLL",
        "SIGPWR",
        "SIGSTKFLT",
        "SIGUNUSED"
      );
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/signal-exit/3.0.7/17684ddc6565dcb0656eebf5baa466fb9508591bfb94e71b7cceef0c0d3afced/node_modules/signal-exit/index.js
var require_signal_exit = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/signal-exit/3.0.7/17684ddc6565dcb0656eebf5baa466fb9508591bfb94e71b7cceef0c0d3afced/node_modules/signal-exit/index.js"(exports2, module2) {
    var process17 = global.process;
    var processOk2 = function(process18) {
      return process18 && typeof process18 === "object" && typeof process18.removeListener === "function" && typeof process18.emit === "function" && typeof process18.reallyExit === "function" && typeof process18.listeners === "function" && typeof process18.kill === "function" && typeof process18.pid === "number" && typeof process18.on === "function";
    };
    if (!processOk2(process17)) {
      module2.exports = function() {
        return function() {
        };
      };
    } else {
      assert13 = __require("assert");
      signals2 = require_signals2();
      isWin2 = /^win/i.test(process17.platform);
      EE = __require("events");
      if (typeof EE !== "function") {
        EE = EE.EventEmitter;
      }
      if (process17.__signal_exit_emitter__) {
        emitter = process17.__signal_exit_emitter__;
      } else {
        emitter = process17.__signal_exit_emitter__ = new EE();
        emitter.count = 0;
        emitter.emitted = {};
      }
      if (!emitter.infinite) {
        emitter.setMaxListeners(Infinity);
        emitter.infinite = true;
      }
      module2.exports = function(cb, opts2) {
        if (!processOk2(global.process)) {
          return function() {
          };
        }
        assert13.equal(typeof cb, "function", "a callback must be provided for exit handler");
        if (loaded === false) {
          load3();
        }
        var ev = "exit";
        if (opts2 && opts2.alwaysLast) {
          ev = "afterexit";
        }
        var remove = function() {
          emitter.removeListener(ev, cb);
          if (emitter.listeners("exit").length === 0 && emitter.listeners("afterexit").length === 0) {
            unload2();
          }
        };
        emitter.on(ev, cb);
        return remove;
      };
      unload2 = function unload3() {
        if (!loaded || !processOk2(global.process)) {
          return;
        }
        loaded = false;
        signals2.forEach(function(sig) {
          try {
            process17.removeListener(sig, sigListeners[sig]);
          } catch (er) {
          }
        });
        process17.emit = originalProcessEmit;
        process17.reallyExit = originalProcessReallyExit;
        emitter.count -= 1;
      };
      module2.exports.unload = unload2;
      emit = function emit2(event, code, signal) {
        if (emitter.emitted[event]) {
          return;
        }
        emitter.emitted[event] = true;
        emitter.emit(event, code, signal);
      };
      sigListeners = {};
      signals2.forEach(function(sig) {
        sigListeners[sig] = function listener() {
          if (!processOk2(global.process)) {
            return;
          }
          var listeners = process17.listeners(sig);
          if (listeners.length === emitter.count) {
            unload2();
            emit("exit", null, sig);
            emit("afterexit", null, sig);
            if (isWin2 && sig === "SIGHUP") {
              sig = "SIGINT";
            }
            process17.kill(process17.pid, sig);
          }
        };
      });
      module2.exports.signals = function() {
        return signals2;
      };
      loaded = false;
      load3 = function load4() {
        if (loaded || !processOk2(global.process)) {
          return;
        }
        loaded = true;
        emitter.count += 1;
        signals2 = signals2.filter(function(sig) {
          try {
            process17.on(sig, sigListeners[sig]);
            return true;
          } catch (er) {
            return false;
          }
        });
        process17.emit = processEmit;
        process17.reallyExit = processReallyExit;
      };
      module2.exports.load = load3;
      originalProcessReallyExit = process17.reallyExit;
      processReallyExit = function processReallyExit2(code) {
        if (!processOk2(global.process)) {
          return;
        }
        process17.exitCode = code || /* istanbul ignore next */
        0;
        emit("exit", process17.exitCode, null);
        emit("afterexit", process17.exitCode, null);
        originalProcessReallyExit.call(process17, process17.exitCode);
      };
      originalProcessEmit = process17.emit;
      processEmit = function processEmit2(ev, arg) {
        if (ev === "exit" && processOk2(global.process)) {
          if (arg !== void 0) {
            process17.exitCode = arg;
          }
          var ret2 = originalProcessEmit.apply(this, arguments);
          emit("exit", process17.exitCode, null);
          emit("afterexit", process17.exitCode, null);
          return ret2;
        } else {
          return originalProcessEmit.apply(this, arguments);
        }
      };
    }
    var assert13;
    var signals2;
    var isWin2;
    var EE;
    var emitter;
    var unload2;
    var emit;
    var sigListeners;
    var loaded;
    var load3;
    var originalProcessReallyExit;
    var processReallyExit;
    var originalProcessEmit;
    var processEmit;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/array-find-index/1.0.2/ba2f8abe802fb0ce7969694cfd5a70dc7c270ff16475db02f462e482b2531e6c/node_modules/array-find-index/index.js
var require_array_find_index = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/array-find-index/1.0.2/ba2f8abe802fb0ce7969694cfd5a70dc7c270ff16475db02f462e482b2531e6c/node_modules/array-find-index/index.js"(exports2, module2) {
    "use strict";
    module2.exports = function(arr, predicate, ctx) {
      if (typeof Array.prototype.findIndex === "function") {
        return arr.findIndex(predicate, ctx);
      }
      if (typeof predicate !== "function") {
        throw new TypeError("predicate must be a function");
      }
      var list2 = Object(arr);
      var len = list2.length;
      if (len === 0) {
        return -1;
      }
      for (var i2 = 0; i2 < len; i2++) {
        if (predicate.call(ctx, list2[i2], i2, list2)) {
          return i2;
        }
      }
      return -1;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/currently-unhandled/0.4.1/1b7833252fe91dba33cffce977676c4444bcec386b656990ce03ee7db0173619/node_modules/currently-unhandled/core.js
var require_core = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/currently-unhandled/0.4.1/1b7833252fe91dba33cffce977676c4444bcec386b656990ce03ee7db0173619/node_modules/currently-unhandled/core.js"(exports2, module2) {
    "use strict";
    var arrayFindIndex = require_array_find_index();
    module2.exports = function() {
      var unhandledRejections = [];
      function onUnhandledRejection(reason, promise2) {
        unhandledRejections.push({ reason, promise: promise2 });
      }
      function onRejectionHandled(promise2) {
        var index = arrayFindIndex(unhandledRejections, function(x) {
          return x.promise === promise2;
        });
        unhandledRejections.splice(index, 1);
      }
      function currentlyUnhandled() {
        return unhandledRejections.map(function(entry) {
          return {
            reason: entry.reason,
            promise: entry.promise
          };
        });
      }
      return {
        onUnhandledRejection,
        onRejectionHandled,
        currentlyUnhandled
      };
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/currently-unhandled/0.4.1/1b7833252fe91dba33cffce977676c4444bcec386b656990ce03ee7db0173619/node_modules/currently-unhandled/index.js
var require_currently_unhandled = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/currently-unhandled/0.4.1/1b7833252fe91dba33cffce977676c4444bcec386b656990ce03ee7db0173619/node_modules/currently-unhandled/index.js"(exports2, module2) {
    "use strict";
    var core2 = require_core();
    module2.exports = function(p) {
      p = p || process;
      var c3 = core2();
      p.on("unhandledRejection", c3.onUnhandledRejection);
      p.on("rejectionHandled", c3.onRejectionHandled);
      return c3.currentlyUnhandled;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/loud-rejection/2.2.0/f71f4e4b9b3de6aef07afb910307b5a0b1f927b32eaa381d5bacd112a7c39bc4/node_modules/loud-rejection/index.js
var require_loud_rejection = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/loud-rejection/2.2.0/f71f4e4b9b3de6aef07afb910307b5a0b1f927b32eaa381d5bacd112a7c39bc4/node_modules/loud-rejection/index.js"(exports2, module2) {
    "use strict";
    var util56 = __require("util");
    var onExit2 = require_signal_exit();
    var currentlyUnhandled = require_currently_unhandled();
    var installed = false;
    var loudRejection2 = (log3 = console.error) => {
      if (installed) {
        return;
      }
      installed = true;
      const listUnhandled = currentlyUnhandled();
      onExit2(() => {
        const unhandledRejections = listUnhandled();
        if (unhandledRejections.length > 0) {
          for (const unhandledRejection of unhandledRejections) {
            let error = unhandledRejection.reason;
            if (!(error instanceof Error)) {
              error = new Error(`Promise rejected with value: ${util56.inspect(error)}`);
            }
            log3(error.stack);
          }
          process.exitCode = 1;
        }
      });
    };
    module2.exports = loudRejection2;
    module2.exports.default = loudRejection2;
  }
});

// ../crypto/shasums-file/lib/index.js
async function fetchShasumsFile(fetch2, shasumsUrl) {
  const shasumsFileContent = await fetchShasumsFileRaw(fetch2, shasumsUrl);
  const lines = shasumsFileContent.split("\n");
  const items = [];
  for (const line of lines) {
    if (!line)
      continue;
    const [sha256, fileName] = line.trim().split(/\s+/);
    items.push({
      integrity: `sha256-${Buffer.from(sha256, "hex").toString("base64")}`,
      fileName
    });
  }
  return items;
}
async function fetchShasumsFileRaw(fetch2, shasumsUrl) {
  const res = await fetch2(shasumsUrl);
  if (!res.ok) {
    throw new PnpmError("FAILED_DOWNLOAD_SHASUM_FILE", `Failed to fetch integrity file: ${shasumsUrl} (status: ${res.status})`);
  }
  const body = await res.text();
  return body;
}
var init_lib33 = __esm({
  "../crypto/shasums-file/lib/index.js"() {
    "use strict";
    init_lib2();
  }
});

// ../engine/runtime/node-resolver/lib/normalizeArch.js
function getNormalizedArch(platform3, arch, nodeVersion) {
  if (nodeVersion) {
    const nodeMajorVersion = +nodeVersion.split(".")[0];
    if (platform3 === "darwin" && arch === "arm64" && nodeMajorVersion < 16) {
      return "x64";
    }
  }
  if (platform3 === "win32" && arch === "ia32") {
    return "x86";
  }
  if (arch === "arm") {
    return "armv7l";
  }
  return arch;
}
var init_normalizeArch = __esm({
  "../engine/runtime/node-resolver/lib/normalizeArch.js"() {
    "use strict";
  }
});

// ../engine/runtime/node-resolver/lib/getNodeArtifactAddress.js
function getNodeArtifactAddress({ version: version2, baseUrl, platform: platform3, arch, libc }) {
  const isWindowsPlatform = platform3 === "win32";
  const normalizedPlatform = isWindowsPlatform ? "win" : platform3;
  const normalizedArch = getNormalizedArch(platform3, arch, version2);
  const archSuffix = libc === "musl" ? "-musl" : "";
  return {
    dirname: `${baseUrl}v${version2}`,
    basename: `node-v${version2}-${normalizedPlatform}-${normalizedArch}${archSuffix}`,
    extname: isWindowsPlatform ? ".zip" : ".tar.gz"
  };
}
var init_getNodeArtifactAddress = __esm({
  "../engine/runtime/node-resolver/lib/getNodeArtifactAddress.js"() {
    "use strict";
    init_normalizeArch();
  }
});

// ../engine/runtime/node-resolver/lib/getNodeMirror.js
function getNodeMirror(nodeDownloadMirrors, releaseChannel) {
  const nodeMirror = nodeDownloadMirrors?.[releaseChannel] ?? `https://nodejs.org/download/${releaseChannel}/`;
  return normalizeNodeMirror(nodeMirror);
}
function normalizeNodeMirror(nodeMirror) {
  return nodeMirror.endsWith("/") ? nodeMirror : `${nodeMirror}/`;
}
var init_getNodeMirror = __esm({
  "../engine/runtime/node-resolver/lib/getNodeMirror.js"() {
    "use strict";
  }
});

// ../engine/runtime/node-resolver/lib/parseNodeSpecifier.js
function parseNodeSpecifier(specifier) {
  if (specifier.includes("/")) {
    const [releaseChannel, versionSpecifier] = specifier.split("/", 2);
    if (!RELEASE_CHANNELS.includes(releaseChannel)) {
      throw new PnpmError("INVALID_NODE_RELEASE_CHANNEL", `"${releaseChannel}" is not a valid Node.js release channel`, {
        hint: `Valid release channels are: ${RELEASE_CHANNELS.join(", ")}`
      });
    }
    return { releaseChannel, versionSpecifier };
  }
  const prereleaseChannelMatch = specifier.match(/^\d+\.\d+\.\d+-(nightly|rc|test|v8-canary)/);
  if (prereleaseChannelMatch != null) {
    return { releaseChannel: prereleaseChannelMatch[1], versionSpecifier: specifier };
  }
  if (isStableVersion(specifier)) {
    return { releaseChannel: "release", versionSpecifier: specifier };
  }
  if (RELEASE_CHANNELS.includes(specifier)) {
    return { releaseChannel: specifier, versionSpecifier: "latest" };
  }
  if (specifier === "lts" || specifier === "latest") {
    return { releaseChannel: "release", versionSpecifier: specifier };
  }
  return { releaseChannel: "release", versionSpecifier: specifier };
}
var RELEASE_CHANNELS, isStableVersion;
var init_parseNodeSpecifier = __esm({
  "../engine/runtime/node-resolver/lib/parseNodeSpecifier.js"() {
    "use strict";
    init_lib2();
    RELEASE_CHANNELS = ["nightly", "rc", "test", "v8-canary", "release"];
    isStableVersion = (version2) => /^\d+\.\d+\.\d+$/.test(version2);
  }
});

// ../engine/runtime/node-resolver/lib/index.js
async function resolveNodeRuntime(ctx, wantedDependency, opts2) {
  if (wantedDependency.alias !== "node" || !wantedDependency.bareSpecifier?.startsWith("runtime:"))
    return null;
  if (opts2?.currentPkg && !opts2.update) {
    return {
      id: opts2.currentPkg.id,
      resolution: opts2.currentPkg.resolution,
      resolvedVia: "nodejs.org"
    };
  }
  if (ctx.offline)
    throw new PnpmError("NO_OFFLINE_NODEJS_RESOLUTION", "Offline Node.js resolution is not supported");
  const versionSpec = wantedDependency.bareSpecifier.substring("runtime:".length);
  const { releaseChannel, versionSpecifier } = parseNodeSpecifier(versionSpec);
  const nodeMirrorBaseUrl = getNodeMirror(ctx.nodeDownloadMirrors, releaseChannel);
  const version2 = await resolveNodeVersion(ctx.fetchFromRegistry, versionSpecifier, nodeMirrorBaseUrl);
  if (!version2) {
    throw new PnpmError("NODEJS_VERSION_NOT_FOUND", `Could not find a Node.js version that satisfies ${versionSpec}`);
  }
  const variants = await readNodeAssets(ctx.fetchFromRegistry, nodeMirrorBaseUrl, version2);
  const range = version2 === versionSpec ? version2 : `^${version2}`;
  return {
    id: `node@runtime:${version2}`,
    normalizedBareSpecifier: `runtime:${range}`,
    resolvedVia: "nodejs.org",
    manifest: {
      name: "node",
      version: version2,
      bin: getNodeBinsForCurrentOS()
    },
    resolution: {
      type: "variations",
      variants
    }
  };
}
async function resolveLatestNodeRuntime(ctx, query, _opts) {
  const manifestSpec = query.wantedDependency.bareSpecifier;
  if (query.wantedDependency.alias !== "node" || !manifestSpec?.startsWith("runtime:"))
    return void 0;
  const versionSpec = query.compatible ? manifestSpec.substring("runtime:".length) : "latest";
  const { releaseChannel, versionSpecifier } = parseNodeSpecifier(versionSpec);
  const nodeMirrorBaseUrl = getNodeMirror(ctx.nodeDownloadMirrors, releaseChannel);
  const version2 = await resolveNodeVersion(ctx.fetchFromRegistry, versionSpecifier, nodeMirrorBaseUrl);
  if (!version2)
    return {};
  return { latestManifest: { name: "node", version: version2 } };
}
async function readNodeAssets(fetch2, nodeMirrorBaseUrl, version2) {
  const assets = await readNodeAssetsFromMirror(fetch2, { nodeMirrorBaseUrl, version: version2, muslOnly: false });
  if (nodeMirrorBaseUrl === DEFAULT_NODE_MIRROR_BASE_URL) {
    try {
      const muslAssets = await readNodeAssetsFromMirror(fetch2, { nodeMirrorBaseUrl: UNOFFICIAL_NODE_MIRROR_BASE_URL, version: version2, muslOnly: true });
      assets.push(...muslAssets);
    } catch {
    }
  }
  return assets;
}
async function readNodeAssetsFromMirror(fetch2, opts2) {
  const { nodeMirrorBaseUrl, version: version2, muslOnly } = opts2;
  const integritiesFileUrl = `${nodeMirrorBaseUrl}v${version2}/SHASUMS256.txt`;
  const shasumsFileItems = await fetchShasumsFile(fetch2, integritiesFileUrl);
  const escaped = version2.replace(/\\/g, "\\\\").replace(/\./g, "\\.");
  const pattern = new RegExp(`^node-v${escaped}-([^-.]+)-([^.-]+)(-musl)?\\.(?:tar\\.gz|zip)$`);
  const assets = [];
  for (const { integrity, fileName } of shasumsFileItems) {
    const match = pattern.exec(fileName);
    if (!match)
      continue;
    let [, platform3, arch, muslSuffix] = match;
    if (platform3 === "win") {
      platform3 = "win32";
    }
    const isMusl = muslSuffix != null;
    if (muslOnly && !isMusl)
      continue;
    const libc = isMusl ? "musl" : void 0;
    const address = getNodeArtifactAddress({
      version: version2,
      baseUrl: nodeMirrorBaseUrl,
      platform: platform3,
      arch,
      libc
    });
    const url7 = `${address.dirname}/${address.basename}${address.extname}`;
    const resolution = {
      type: "binary",
      archive: address.extname === ".zip" ? "zip" : "tarball",
      bin: getNodeBinsForCurrentOS(platform3),
      integrity,
      url: url7
    };
    if (resolution.archive === "zip") {
      resolution.prefix = address.basename;
    }
    const target2 = {
      os: platform3,
      cpu: arch,
      ...libc != null && { libc }
    };
    assets.push({
      targets: [target2],
      resolution
    });
  }
  return assets;
}
async function resolveNodeVersion(fetch2, versionSpec, nodeMirrorBaseUrl) {
  const allVersions = await fetchAllVersions(fetch2, nodeMirrorBaseUrl);
  if (versionSpec === "latest") {
    return allVersions[0].version;
  }
  const { versions, versionRange } = filterVersions(allVersions, versionSpec);
  return import_semver15.default.maxSatisfying(versions, versionRange, SEMVER_OPTS) ?? null;
}
async function resolveNodeVersions(fetch2, versionSpec, nodeMirrorBaseUrl) {
  const allVersions = await fetchAllVersions(fetch2, nodeMirrorBaseUrl);
  if (!versionSpec) {
    return allVersions.map(({ version: version2 }) => version2);
  }
  if (versionSpec === "latest") {
    return [allVersions[0].version];
  }
  const { versions, versionRange } = filterVersions(allVersions, versionSpec);
  return versions.filter((version2) => import_semver15.default.satisfies(version2, versionRange, SEMVER_OPTS));
}
async function fetchAllVersions(fetch2, nodeMirrorBaseUrl) {
  const response = await fetch2(`${nodeMirrorBaseUrl ?? "https://nodejs.org/download/release/"}index.json`);
  return (await response.json()).map(({ version: version2, lts }) => ({
    version: version2.substring(1),
    lts
  }));
}
function getNodeBinsForCurrentOS(platform3 = process.platform) {
  if (platform3 === "win32") {
    return { node: "node.exe" };
  }
  return { node: "bin/node" };
}
function filterVersions(versions, versionSelector) {
  if (versionSelector === "lts") {
    return {
      versions: versions.filter(({ lts }) => lts !== false).map(({ version: version2 }) => version2),
      versionRange: "*"
    };
  }
  const vst = (0, import_version_selector_type3.default)(versionSelector);
  if (vst?.type === "tag") {
    const wantedLtsVersion = vst.normalized.toLowerCase();
    return {
      versions: versions.filter(({ lts }) => typeof lts === "string" && lts.toLowerCase() === wantedLtsVersion).map(({ version: version2 }) => version2),
      versionRange: "*"
    };
  }
  return {
    versions: versions.map(({ version: version2 }) => version2),
    versionRange: versionSelector
  };
}
var import_semver15, import_version_selector_type3, DEFAULT_NODE_MIRROR_BASE_URL, UNOFFICIAL_NODE_MIRROR_BASE_URL, NODE_EXTRAS_IGNORE_PATTERN, SEMVER_OPTS;
var init_lib34 = __esm({
  "../engine/runtime/node-resolver/lib/index.js"() {
    "use strict";
    init_lib33();
    init_lib2();
    import_semver15 = __toESM(require_semver2(), 1);
    import_version_selector_type3 = __toESM(require_version_selector_type(), 1);
    init_getNodeArtifactAddress();
    init_getNodeMirror();
    init_parseNodeSpecifier();
    DEFAULT_NODE_MIRROR_BASE_URL = "https://nodejs.org/download/release/";
    UNOFFICIAL_NODE_MIRROR_BASE_URL = "https://unofficial-builds.nodejs.org/download/release/";
    NODE_EXTRAS_IGNORE_PATTERN = "^(?:(?:lib/)?node_modules/(?:npm|corepack)(?:/|$)|bin/(?:npm|npx|corepack)$|(?:npm|npx|corepack)(?:\\.(?:cmd|ps1))?$)";
    SEMVER_OPTS = {
      includePrerelease: true,
      loose: true
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/adm-zip/0.5.17/ec16aefa4bc95920c5011662cca049a325d17aae4801cb2d0cfadcb328b4bba5/node_modules/adm-zip/util/constants.js
var require_constants5 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/adm-zip/0.5.17/ec16aefa4bc95920c5011662cca049a325d17aae4801cb2d0cfadcb328b4bba5/node_modules/adm-zip/util/constants.js"(exports2, module2) {
    module2.exports = {
      /* The local file header */
      LOCHDR: 30,
      // LOC header size
      LOCSIG: 67324752,
      // "PK\003\004"
      LOCVER: 4,
      // version needed to extract
      LOCFLG: 6,
      // general purpose bit flag
      LOCHOW: 8,
      // compression method
      LOCTIM: 10,
      // modification time (2 bytes time, 2 bytes date)
      LOCCRC: 14,
      // uncompressed file crc-32 value
      LOCSIZ: 18,
      // compressed size
      LOCLEN: 22,
      // uncompressed size
      LOCNAM: 26,
      // filename length
      LOCEXT: 28,
      // extra field length
      /* The Data descriptor */
      EXTSIG: 134695760,
      // "PK\007\008"
      EXTHDR: 16,
      // EXT header size
      EXTCRC: 4,
      // uncompressed file crc-32 value
      EXTSIZ: 8,
      // compressed size
      EXTLEN: 12,
      // uncompressed size
      /* The central directory file header */
      CENHDR: 46,
      // CEN header size
      CENSIG: 33639248,
      // "PK\001\002"
      CENVEM: 4,
      // version made by
      CENVER: 6,
      // version needed to extract
      CENFLG: 8,
      // encrypt, decrypt flags
      CENHOW: 10,
      // compression method
      CENTIM: 12,
      // modification time (2 bytes time, 2 bytes date)
      CENCRC: 16,
      // uncompressed file crc-32 value
      CENSIZ: 20,
      // compressed size
      CENLEN: 24,
      // uncompressed size
      CENNAM: 28,
      // filename length
      CENEXT: 30,
      // extra field length
      CENCOM: 32,
      // file comment length
      CENDSK: 34,
      // volume number start
      CENATT: 36,
      // internal file attributes
      CENATX: 38,
      // external file attributes (host system dependent)
      CENOFF: 42,
      // LOC header offset
      /* The entries in the end of central directory */
      ENDHDR: 22,
      // END header size
      ENDSIG: 101010256,
      // "PK\005\006"
      ENDSUB: 8,
      // number of entries on this disk
      ENDTOT: 10,
      // total number of entries
      ENDSIZ: 12,
      // central directory size in bytes
      ENDOFF: 16,
      // offset of first CEN header
      ENDCOM: 20,
      // zip file comment length
      END64HDR: 20,
      // zip64 END header size
      END64SIG: 117853008,
      // zip64 Locator signature, "PK\006\007"
      END64START: 4,
      // number of the disk with the start of the zip64
      END64OFF: 8,
      // relative offset of the zip64 end of central directory
      END64NUMDISKS: 16,
      // total number of disks
      ZIP64SIG: 101075792,
      // zip64 signature, "PK\006\006"
      ZIP64HDR: 56,
      // zip64 record minimum size
      ZIP64LEAD: 12,
      // leading bytes at the start of the record, not counted by the value stored in ZIP64SIZE
      ZIP64SIZE: 4,
      // zip64 size of the central directory record
      ZIP64VEM: 12,
      // zip64 version made by
      ZIP64VER: 14,
      // zip64 version needed to extract
      ZIP64DSK: 16,
      // zip64 number of this disk
      ZIP64DSKDIR: 20,
      // number of the disk with the start of the record directory
      ZIP64SUB: 24,
      // number of entries on this disk
      ZIP64TOT: 32,
      // total number of entries
      ZIP64SIZB: 40,
      // zip64 central directory size in bytes
      ZIP64OFF: 48,
      // offset of start of central directory with respect to the starting disk number
      ZIP64EXTRA: 56,
      // extensible data sector
      /* Compression methods */
      STORED: 0,
      // no compression
      SHRUNK: 1,
      // shrunk
      REDUCED1: 2,
      // reduced with compression factor 1
      REDUCED2: 3,
      // reduced with compression factor 2
      REDUCED3: 4,
      // reduced with compression factor 3
      REDUCED4: 5,
      // reduced with compression factor 4
      IMPLODED: 6,
      // imploded
      // 7 reserved for Tokenizing compression algorithm
      DEFLATED: 8,
      // deflated
      ENHANCED_DEFLATED: 9,
      // enhanced deflated
      PKWARE: 10,
      // PKWare DCL imploded
      // 11 reserved by PKWARE
      BZIP2: 12,
      //  compressed using BZIP2
      // 13 reserved by PKWARE
      LZMA: 14,
      // LZMA
      // 15-17 reserved by PKWARE
      IBM_TERSE: 18,
      // compressed using IBM TERSE
      IBM_LZ77: 19,
      // IBM LZ77 z
      AES_ENCRYPT: 99,
      // WinZIP AES encryption method
      /* General purpose bit flag */
      // values can obtained with expression 2**bitnr
      FLG_ENC: 1,
      // Bit 0: encrypted file
      FLG_COMP1: 2,
      // Bit 1, compression option
      FLG_COMP2: 4,
      // Bit 2, compression option
      FLG_DESC: 8,
      // Bit 3, data descriptor
      FLG_ENH: 16,
      // Bit 4, enhanced deflating
      FLG_PATCH: 32,
      // Bit 5, indicates that the file is compressed patched data.
      FLG_STR: 64,
      // Bit 6, strong encryption (patented)
      // Bits 7-10: Currently unused.
      FLG_EFS: 2048,
      // Bit 11: Language encoding flag (EFS)
      // Bit 12: Reserved by PKWARE for enhanced compression.
      // Bit 13: encrypted the Central Directory (patented).
      // Bits 14-15: Reserved by PKWARE.
      FLG_MSK: 4096,
      // mask header values
      /* Load type */
      FILE: 2,
      BUFFER: 1,
      NONE: 0,
      /* 4.5 Extensible data fields */
      EF_ID: 0,
      EF_SIZE: 2,
      /* Header IDs */
      ID_ZIP64: 1,
      ID_AVINFO: 7,
      ID_PFS: 8,
      ID_OS2: 9,
      ID_NTFS: 10,
      ID_OPENVMS: 12,
      ID_UNIX: 13,
      ID_FORK: 14,
      ID_PATCH: 15,
      ID_X509_PKCS7: 20,
      ID_X509_CERTID_F: 21,
      ID_X509_CERTID_C: 22,
      ID_STRONGENC: 23,
      ID_RECORD_MGT: 24,
      ID_X509_PKCS7_RL: 25,
      ID_IBM1: 101,
      ID_IBM2: 102,
      ID_POSZIP: 18064,
      EF_ZIP64_OR_32: 4294967295,
      EF_ZIP64_OR_16: 65535,
      EF_ZIP64_SUNCOMP: 0,
      EF_ZIP64_SCOMP: 8,
      EF_ZIP64_RHO: 16,
      EF_ZIP64_DSN: 24
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/adm-zip/0.5.17/ec16aefa4bc95920c5011662cca049a325d17aae4801cb2d0cfadcb328b4bba5/node_modules/adm-zip/util/errors.js
var require_errors = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/adm-zip/0.5.17/ec16aefa4bc95920c5011662cca049a325d17aae4801cb2d0cfadcb328b4bba5/node_modules/adm-zip/util/errors.js"(exports2) {
    var errors2 = {
      /* Header error messages */
      INVALID_LOC: "Invalid LOC header (bad signature)",
      INVALID_CEN: "Invalid CEN header (bad signature)",
      INVALID_END: "Invalid END header (bad signature)",
      /* Descriptor */
      DESCRIPTOR_NOT_EXIST: "No descriptor present",
      DESCRIPTOR_UNKNOWN: "Unknown descriptor format",
      DESCRIPTOR_FAULTY: "Descriptor data is malformed",
      /* ZipEntry error messages*/
      NO_DATA: "Nothing to decompress",
      BAD_CRC: "CRC32 checksum failed {0}",
      FILE_IN_THE_WAY: "There is a file in the way: {0}",
      UNKNOWN_METHOD: "Invalid/unsupported compression method",
      /* Inflater error messages */
      AVAIL_DATA: "inflate::Available inflate data did not terminate",
      INVALID_DISTANCE: "inflate::Invalid literal/length or distance code in fixed or dynamic block",
      TO_MANY_CODES: "inflate::Dynamic block code description: too many length or distance codes",
      INVALID_REPEAT_LEN: "inflate::Dynamic block code description: repeat more than specified lengths",
      INVALID_REPEAT_FIRST: "inflate::Dynamic block code description: repeat lengths with no first length",
      INCOMPLETE_CODES: "inflate::Dynamic block code description: code lengths codes incomplete",
      INVALID_DYN_DISTANCE: "inflate::Dynamic block code description: invalid distance code lengths",
      INVALID_CODES_LEN: "inflate::Dynamic block code description: invalid literal/length code lengths",
      INVALID_STORE_BLOCK: "inflate::Stored block length did not match one's complement",
      INVALID_BLOCK_TYPE: "inflate::Invalid block type (type == 3)",
      /* ADM-ZIP error messages */
      CANT_EXTRACT_FILE: "Could not extract the file",
      CANT_OVERRIDE: "Target file already exists",
      DISK_ENTRY_TOO_LARGE: "Number of disk entries is too large",
      NO_ZIP: "No zip file was loaded",
      NO_ENTRY: "Entry doesn't exist",
      DIRECTORY_CONTENT_ERROR: "A directory cannot have content",
      FILE_NOT_FOUND: 'File not found: "{0}"',
      NOT_IMPLEMENTED: "Not implemented",
      INVALID_FILENAME: "Invalid filename",
      INVALID_FORMAT: "Invalid or unsupported zip format. No END header found",
      INVALID_PASS_PARAM: "Incompatible password parameter",
      WRONG_PASSWORD: "Wrong Password",
      /* ADM-ZIP */
      COMMENT_TOO_LONG: "Comment is too long",
      // Comment can be max 65535 bytes long (NOTE: some non-US characters may take more space)
      EXTRA_FIELD_PARSE_ERROR: "Extra field parsing error"
    };
    function E(message) {
      return function(...args) {
        if (args.length) {
          message = message.replace(/\{(\d)\}/g, (_, n2) => args[n2] || "");
        }
        return new Error("ADM-ZIP: " + message);
      };
    }
    for (const msg of Object.keys(errors2)) {
      exports2[msg] = E(errors2[msg]);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/adm-zip/0.5.17/ec16aefa4bc95920c5011662cca049a325d17aae4801cb2d0cfadcb328b4bba5/node_modules/adm-zip/util/utils.js
var require_utils6 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/adm-zip/0.5.17/ec16aefa4bc95920c5011662cca049a325d17aae4801cb2d0cfadcb328b4bba5/node_modules/adm-zip/util/utils.js"(exports2, module2) {
    var fsystem = __require("fs");
    var pth = __require("path");
    var Constants = require_constants5();
    var Errors = require_errors();
    var isWin2 = typeof process === "object" && "win32" === process.platform;
    var is_Obj = (obj) => typeof obj === "object" && obj !== null;
    var crcTable = new Uint32Array(256).map((t2, c3) => {
      for (let k2 = 0; k2 < 8; k2++) {
        if ((c3 & 1) !== 0) {
          c3 = 3988292384 ^ c3 >>> 1;
        } else {
          c3 >>>= 1;
        }
      }
      return c3 >>> 0;
    });
    function Utils(opts2) {
      this.sep = pth.sep;
      this.fs = fsystem;
      if (is_Obj(opts2)) {
        if (is_Obj(opts2.fs) && typeof opts2.fs.statSync === "function") {
          this.fs = opts2.fs;
        }
      }
    }
    module2.exports = Utils;
    Utils.prototype.makeDir = function(folder) {
      const self2 = this;
      function mkdirSync2(fpath) {
        let resolvedPath = fpath.split(self2.sep)[0];
        fpath.split(self2.sep).forEach(function(name) {
          if (!name || name.substr(-1, 1) === ":") return;
          resolvedPath += self2.sep + name;
          var stat2;
          try {
            stat2 = self2.fs.statSync(resolvedPath);
          } catch (e) {
            if (e.message && e.message.startsWith("ENOENT")) {
              self2.fs.mkdirSync(resolvedPath);
            } else {
              throw e;
            }
          }
          if (stat2 && stat2.isFile()) throw Errors.FILE_IN_THE_WAY(`"${resolvedPath}"`);
        });
      }
      mkdirSync2(folder);
    };
    Utils.prototype.writeFileTo = function(path218, content, overwrite, attr) {
      const self2 = this;
      if (self2.fs.existsSync(path218)) {
        if (!overwrite) return false;
        var stat2 = self2.fs.statSync(path218);
        if (stat2.isDirectory()) {
          return false;
        }
      }
      var folder = pth.dirname(path218);
      if (!self2.fs.existsSync(folder)) {
        self2.makeDir(folder);
      }
      var fd;
      try {
        fd = self2.fs.openSync(path218, "w", 438);
      } catch (e) {
        self2.fs.chmodSync(path218, 438);
        fd = self2.fs.openSync(path218, "w", 438);
      }
      if (fd) {
        try {
          self2.fs.writeSync(fd, content, 0, content.length, 0);
        } finally {
          self2.fs.closeSync(fd);
        }
      }
      self2.fs.chmodSync(path218, attr || 438);
      return true;
    };
    Utils.prototype.writeFileToAsync = function(path218, content, overwrite, attr, callback2) {
      if (typeof attr === "function") {
        callback2 = attr;
        attr = void 0;
      }
      const self2 = this;
      self2.fs.exists(path218, function(exist) {
        if (exist && !overwrite) return callback2(false);
        self2.fs.stat(path218, function(err, stat2) {
          if (exist && stat2.isDirectory()) {
            return callback2(false);
          }
          var folder = pth.dirname(path218);
          self2.fs.exists(folder, function(exists) {
            if (!exists) self2.makeDir(folder);
            self2.fs.open(path218, "w", 438, function(err2, fd) {
              if (err2) {
                self2.fs.chmod(path218, 438, function() {
                  self2.fs.open(path218, "w", 438, function(err3, fd2) {
                    self2.fs.write(fd2, content, 0, content.length, 0, function() {
                      self2.fs.close(fd2, function() {
                        self2.fs.chmod(path218, attr || 438, function() {
                          callback2(true);
                        });
                      });
                    });
                  });
                });
              } else if (fd) {
                self2.fs.write(fd, content, 0, content.length, 0, function() {
                  self2.fs.close(fd, function() {
                    self2.fs.chmod(path218, attr || 438, function() {
                      callback2(true);
                    });
                  });
                });
              } else {
                self2.fs.chmod(path218, attr || 438, function() {
                  callback2(true);
                });
              }
            });
          });
        });
      });
    };
    Utils.prototype.findFiles = function(path218) {
      const self2 = this;
      function findSync(dir, pattern, recursive2) {
        if (typeof pattern === "boolean") {
          recursive2 = pattern;
          pattern = void 0;
        }
        let files = [];
        self2.fs.readdirSync(dir).forEach(function(file) {
          const path219 = pth.join(dir, file);
          const stat2 = self2.fs.statSync(path219);
          if (!pattern || pattern.test(path219)) {
            files.push(pth.normalize(path219) + (stat2.isDirectory() ? self2.sep : ""));
          }
          if (stat2.isDirectory() && recursive2) files = files.concat(findSync(path219, pattern, recursive2));
        });
        return files;
      }
      return findSync(path218, void 0, true);
    };
    Utils.prototype.findFilesAsync = function(dir, cb) {
      const self2 = this;
      let results = [];
      self2.fs.readdir(dir, function(err, list2) {
        if (err) return cb(err);
        let list_length = list2.length;
        if (!list_length) return cb(null, results);
        list2.forEach(function(file) {
          file = pth.join(dir, file);
          self2.fs.stat(file, function(err2, stat2) {
            if (err2) return cb(err2);
            if (stat2) {
              results.push(pth.normalize(file) + (stat2.isDirectory() ? self2.sep : ""));
              if (stat2.isDirectory()) {
                self2.findFilesAsync(file, function(err3, res) {
                  if (err3) return cb(err3);
                  results = results.concat(res);
                  if (!--list_length) cb(null, results);
                });
              } else {
                if (!--list_length) cb(null, results);
              }
            }
          });
        });
      });
    };
    Utils.prototype.getAttributes = function() {
    };
    Utils.prototype.setAttributes = function() {
    };
    Utils.crc32update = function(crc, byte) {
      return crcTable[(crc ^ byte) & 255] ^ crc >>> 8;
    };
    Utils.crc32 = function(buf) {
      if (typeof buf === "string") {
        buf = Buffer.from(buf, "utf8");
      }
      let len = buf.length;
      let crc = ~0;
      for (let off = 0; off < len; ) crc = Utils.crc32update(crc, buf[off++]);
      return ~crc >>> 0;
    };
    Utils.methodToString = function(method) {
      switch (method) {
        case Constants.STORED:
          return "STORED (" + method + ")";
        case Constants.DEFLATED:
          return "DEFLATED (" + method + ")";
        default:
          return "UNSUPPORTED (" + method + ")";
      }
    };
    Utils.canonical = function(path218) {
      if (!path218) return "";
      const safeSuffix = pth.posix.normalize("/" + path218.split("\\").join("/"));
      return pth.join(".", safeSuffix);
    };
    Utils.zipnamefix = function(path218) {
      if (!path218) return "";
      const safeSuffix = pth.posix.normalize("/" + path218.split("\\").join("/"));
      return pth.posix.join(".", safeSuffix);
    };
    Utils.findLast = function(arr, callback2) {
      if (!Array.isArray(arr)) throw new TypeError("arr is not array");
      const len = arr.length >>> 0;
      for (let i2 = len - 1; i2 >= 0; i2--) {
        if (callback2(arr[i2], i2, arr)) {
          return arr[i2];
        }
      }
      return void 0;
    };
    Utils.sanitize = function(prefix, name) {
      prefix = pth.resolve(pth.normalize(prefix));
      var parts = name.split("/");
      for (var i2 = 0, l = parts.length; i2 < l; i2++) {
        var path218 = pth.normalize(pth.join(prefix, parts.slice(i2, l).join(pth.sep)));
        if (path218.indexOf(prefix) === 0) {
          return path218;
        }
      }
      return pth.normalize(pth.join(prefix, pth.basename(name)));
    };
    Utils.toBuffer = function toBuffer(input, encoder) {
      if (Buffer.isBuffer(input)) {
        return input;
      } else if (input instanceof Uint8Array) {
        return Buffer.from(input);
      } else {
        return typeof input === "string" ? encoder(input) : Buffer.alloc(0);
      }
    };
    Utils.readBigUInt64LE = function(buffer3, index) {
      const lo = buffer3.readUInt32LE(index);
      const hi = buffer3.readUInt32LE(index + 4);
      return hi * 4294967296 + lo;
    };
    Utils.fromDOS2Date = function(val) {
      return new Date((val >> 25 & 127) + 1980, Math.max((val >> 21 & 15) - 1, 0), Math.max(val >> 16 & 31, 1), val >> 11 & 31, val >> 5 & 63, (val & 31) << 1);
    };
    Utils.fromDate2DOS = function(val) {
      let date = 0;
      let time = 0;
      if (val.getFullYear() > 1979) {
        date = (val.getFullYear() - 1980 & 127) << 9 | val.getMonth() + 1 << 5 | val.getDate();
        time = val.getHours() << 11 | val.getMinutes() << 5 | val.getSeconds() >> 1;
      }
      return date << 16 | time;
    };
    Utils.isWin = isWin2;
    Utils.crcTable = crcTable;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/adm-zip/0.5.17/ec16aefa4bc95920c5011662cca049a325d17aae4801cb2d0cfadcb328b4bba5/node_modules/adm-zip/util/fattr.js
var require_fattr = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/adm-zip/0.5.17/ec16aefa4bc95920c5011662cca049a325d17aae4801cb2d0cfadcb328b4bba5/node_modules/adm-zip/util/fattr.js"(exports2, module2) {
    var pth = __require("path");
    module2.exports = function(path218, { fs: fs111 }) {
      var _path = path218 || "", _obj = newAttr(), _stat = null;
      function newAttr() {
        return {
          directory: false,
          readonly: false,
          hidden: false,
          executable: false,
          mtime: 0,
          atime: 0
        };
      }
      if (_path && fs111.existsSync(_path)) {
        _stat = fs111.statSync(_path);
        _obj.directory = _stat.isDirectory();
        _obj.mtime = _stat.mtime;
        _obj.atime = _stat.atime;
        _obj.executable = (73 & _stat.mode) !== 0;
        _obj.readonly = (128 & _stat.mode) === 0;
        _obj.hidden = pth.basename(_path)[0] === ".";
      } else {
        console.warn("Invalid path: " + _path);
      }
      return {
        get directory() {
          return _obj.directory;
        },
        get readOnly() {
          return _obj.readonly;
        },
        get hidden() {
          return _obj.hidden;
        },
        get mtime() {
          return _obj.mtime;
        },
        get atime() {
          return _obj.atime;
        },
        get executable() {
          return _obj.executable;
        },
        decodeAttributes: function() {
        },
        encodeAttributes: function() {
        },
        toJSON: function() {
          return {
            path: _path,
            isDirectory: _obj.directory,
            isReadOnly: _obj.readonly,
            isHidden: _obj.hidden,
            isExecutable: _obj.executable,
            mTime: _obj.mtime,
            aTime: _obj.atime
          };
        },
        toString: function() {
          return JSON.stringify(this.toJSON(), null, "	");
        }
      };
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/adm-zip/0.5.17/ec16aefa4bc95920c5011662cca049a325d17aae4801cb2d0cfadcb328b4bba5/node_modules/adm-zip/util/decoder.js
var require_decoder = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/adm-zip/0.5.17/ec16aefa4bc95920c5011662cca049a325d17aae4801cb2d0cfadcb328b4bba5/node_modules/adm-zip/util/decoder.js"(exports2, module2) {
    module2.exports = {
      efs: true,
      encode: (data) => Buffer.from(data, "utf8"),
      decode: (data) => data.toString("utf8")
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/adm-zip/0.5.17/ec16aefa4bc95920c5011662cca049a325d17aae4801cb2d0cfadcb328b4bba5/node_modules/adm-zip/util/index.js
var require_util2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/adm-zip/0.5.17/ec16aefa4bc95920c5011662cca049a325d17aae4801cb2d0cfadcb328b4bba5/node_modules/adm-zip/util/index.js"(exports2, module2) {
    module2.exports = require_utils6();
    module2.exports.Constants = require_constants5();
    module2.exports.Errors = require_errors();
    module2.exports.FileAttr = require_fattr();
    module2.exports.decoder = require_decoder();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/adm-zip/0.5.17/ec16aefa4bc95920c5011662cca049a325d17aae4801cb2d0cfadcb328b4bba5/node_modules/adm-zip/headers/entryHeader.js
var require_entryHeader = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/adm-zip/0.5.17/ec16aefa4bc95920c5011662cca049a325d17aae4801cb2d0cfadcb328b4bba5/node_modules/adm-zip/headers/entryHeader.js"(exports2, module2) {
    var Utils = require_util2();
    var Constants = Utils.Constants;
    module2.exports = function() {
      var _verMade = 20, _version = 10, _flags = 0, _method = 0, _time = 0, _crc = 0, _compressedSize = 0, _size = 0, _fnameLen = 0, _extraLen = 0, _comLen = 0, _diskStart = 0, _inattr = 0, _attr = 0, _offset = 0;
      _verMade |= Utils.isWin ? 2560 : 768;
      _flags |= Constants.FLG_EFS;
      const _localHeader = {
        extraLen: 0
      };
      const uint32 = (val) => Math.max(0, val) >>> 0;
      const uint16 = (val) => Math.max(0, val) & 65535;
      const uint8 = (val) => Math.max(0, val) & 255;
      _time = Utils.fromDate2DOS(/* @__PURE__ */ new Date());
      return {
        get made() {
          return _verMade;
        },
        set made(val) {
          _verMade = val;
        },
        get version() {
          return _version;
        },
        set version(val) {
          _version = val;
        },
        get flags() {
          return _flags;
        },
        set flags(val) {
          _flags = val;
        },
        get flags_efs() {
          return (_flags & Constants.FLG_EFS) > 0;
        },
        set flags_efs(val) {
          if (val) {
            _flags |= Constants.FLG_EFS;
          } else {
            _flags &= ~Constants.FLG_EFS;
          }
        },
        get flags_desc() {
          return (_flags & Constants.FLG_DESC) > 0;
        },
        set flags_desc(val) {
          if (val) {
            _flags |= Constants.FLG_DESC;
          } else {
            _flags &= ~Constants.FLG_DESC;
          }
        },
        get method() {
          return _method;
        },
        set method(val) {
          switch (val) {
            case Constants.STORED:
              this.version = 10;
            case Constants.DEFLATED:
            default:
              this.version = 20;
          }
          _method = val;
        },
        get time() {
          return Utils.fromDOS2Date(this.timeval);
        },
        set time(val) {
          val = new Date(val);
          this.timeval = Utils.fromDate2DOS(val);
        },
        get timeval() {
          return _time;
        },
        set timeval(val) {
          _time = uint32(val);
        },
        get timeHighByte() {
          return uint8(_time >>> 8);
        },
        get crc() {
          return _crc;
        },
        set crc(val) {
          _crc = uint32(val);
        },
        get compressedSize() {
          return _compressedSize;
        },
        set compressedSize(val) {
          _compressedSize = uint32(val);
        },
        get size() {
          return _size;
        },
        set size(val) {
          _size = uint32(val);
        },
        get fileNameLength() {
          return _fnameLen;
        },
        set fileNameLength(val) {
          _fnameLen = val;
        },
        get extraLength() {
          return _extraLen;
        },
        set extraLength(val) {
          _extraLen = val;
        },
        get extraLocalLength() {
          return _localHeader.extraLen;
        },
        set extraLocalLength(val) {
          _localHeader.extraLen = val;
        },
        get commentLength() {
          return _comLen;
        },
        set commentLength(val) {
          _comLen = val;
        },
        get diskNumStart() {
          return _diskStart;
        },
        set diskNumStart(val) {
          _diskStart = uint32(val);
        },
        get inAttr() {
          return _inattr;
        },
        set inAttr(val) {
          _inattr = uint32(val);
        },
        get attr() {
          return _attr;
        },
        set attr(val) {
          _attr = uint32(val);
        },
        // get Unix file permissions
        get fileAttr() {
          return (_attr || 0) >> 16 & 4095;
        },
        get offset() {
          return _offset;
        },
        set offset(val) {
          _offset = uint32(val);
        },
        get encrypted() {
          return (_flags & Constants.FLG_ENC) === Constants.FLG_ENC;
        },
        get centralHeaderSize() {
          return Constants.CENHDR + _fnameLen + _extraLen + _comLen;
        },
        get realDataOffset() {
          return _offset + Constants.LOCHDR + _localHeader.fnameLen + _localHeader.extraLen;
        },
        get localHeader() {
          return _localHeader;
        },
        loadLocalHeaderFromBinary: function(input) {
          var data = input.slice(_offset, _offset + Constants.LOCHDR);
          if (data.readUInt32LE(0) !== Constants.LOCSIG) {
            throw Utils.Errors.INVALID_LOC();
          }
          _localHeader.version = data.readUInt16LE(Constants.LOCVER);
          _localHeader.flags = data.readUInt16LE(Constants.LOCFLG);
          _localHeader.flags_desc = (_localHeader.flags & Constants.FLG_DESC) > 0;
          _localHeader.method = data.readUInt16LE(Constants.LOCHOW);
          _localHeader.time = data.readUInt32LE(Constants.LOCTIM);
          _localHeader.crc = data.readUInt32LE(Constants.LOCCRC);
          _localHeader.compressedSize = data.readUInt32LE(Constants.LOCSIZ);
          _localHeader.size = data.readUInt32LE(Constants.LOCLEN);
          _localHeader.fnameLen = data.readUInt16LE(Constants.LOCNAM);
          _localHeader.extraLen = data.readUInt16LE(Constants.LOCEXT);
          const extraStart = _offset + Constants.LOCHDR + _localHeader.fnameLen;
          const extraEnd = extraStart + _localHeader.extraLen;
          return input.slice(extraStart, extraEnd);
        },
        loadFromBinary: function(data) {
          if (data.length !== Constants.CENHDR || data.readUInt32LE(0) !== Constants.CENSIG) {
            throw Utils.Errors.INVALID_CEN();
          }
          _verMade = data.readUInt16LE(Constants.CENVEM);
          _version = data.readUInt16LE(Constants.CENVER);
          _flags = data.readUInt16LE(Constants.CENFLG);
          _method = data.readUInt16LE(Constants.CENHOW);
          _time = data.readUInt32LE(Constants.CENTIM);
          _crc = data.readUInt32LE(Constants.CENCRC);
          _compressedSize = data.readUInt32LE(Constants.CENSIZ);
          _size = data.readUInt32LE(Constants.CENLEN);
          _fnameLen = data.readUInt16LE(Constants.CENNAM);
          _extraLen = data.readUInt16LE(Constants.CENEXT);
          _comLen = data.readUInt16LE(Constants.CENCOM);
          _diskStart = data.readUInt16LE(Constants.CENDSK);
          _inattr = data.readUInt16LE(Constants.CENATT);
          _attr = data.readUInt32LE(Constants.CENATX);
          _offset = data.readUInt32LE(Constants.CENOFF);
        },
        localHeaderToBinary: function() {
          var data = Buffer.alloc(Constants.LOCHDR);
          data.writeUInt32LE(Constants.LOCSIG, 0);
          data.writeUInt16LE(_version, Constants.LOCVER);
          data.writeUInt16LE(_flags, Constants.LOCFLG);
          data.writeUInt16LE(_method, Constants.LOCHOW);
          data.writeUInt32LE(_time, Constants.LOCTIM);
          data.writeUInt32LE(_crc, Constants.LOCCRC);
          data.writeUInt32LE(_compressedSize, Constants.LOCSIZ);
          data.writeUInt32LE(_size, Constants.LOCLEN);
          data.writeUInt16LE(_fnameLen, Constants.LOCNAM);
          data.writeUInt16LE(_localHeader.extraLen, Constants.LOCEXT);
          return data;
        },
        centralHeaderToBinary: function() {
          var data = Buffer.alloc(Constants.CENHDR + _fnameLen + _extraLen + _comLen);
          data.writeUInt32LE(Constants.CENSIG, 0);
          data.writeUInt16LE(_verMade, Constants.CENVEM);
          data.writeUInt16LE(_version, Constants.CENVER);
          data.writeUInt16LE(_flags, Constants.CENFLG);
          data.writeUInt16LE(_method, Constants.CENHOW);
          data.writeUInt32LE(_time, Constants.CENTIM);
          data.writeUInt32LE(_crc, Constants.CENCRC);
          data.writeUInt32LE(_compressedSize, Constants.CENSIZ);
          data.writeUInt32LE(_size, Constants.CENLEN);
          data.writeUInt16LE(_fnameLen, Constants.CENNAM);
          data.writeUInt16LE(_extraLen, Constants.CENEXT);
          data.writeUInt16LE(_comLen, Constants.CENCOM);
          data.writeUInt16LE(_diskStart, Constants.CENDSK);
          data.writeUInt16LE(_inattr, Constants.CENATT);
          data.writeUInt32LE(_attr, Constants.CENATX);
          data.writeUInt32LE(_offset, Constants.CENOFF);
          return data;
        },
        toJSON: function() {
          const bytes = function(nr) {
            return nr + " bytes";
          };
          return {
            made: _verMade,
            version: _version,
            flags: _flags,
            method: Utils.methodToString(_method),
            time: this.time,
            crc: "0x" + _crc.toString(16).toUpperCase(),
            compressedSize: bytes(_compressedSize),
            size: bytes(_size),
            fileNameLength: bytes(_fnameLen),
            extraLength: bytes(_extraLen),
            commentLength: bytes(_comLen),
            diskNumStart: _diskStart,
            inAttr: _inattr,
            attr: _attr,
            offset: _offset,
            centralHeaderSize: bytes(Constants.CENHDR + _fnameLen + _extraLen + _comLen)
          };
        },
        toString: function() {
          return JSON.stringify(this.toJSON(), null, "	");
        }
      };
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/adm-zip/0.5.17/ec16aefa4bc95920c5011662cca049a325d17aae4801cb2d0cfadcb328b4bba5/node_modules/adm-zip/headers/mainHeader.js
var require_mainHeader = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/adm-zip/0.5.17/ec16aefa4bc95920c5011662cca049a325d17aae4801cb2d0cfadcb328b4bba5/node_modules/adm-zip/headers/mainHeader.js"(exports2, module2) {
    var Utils = require_util2();
    var Constants = Utils.Constants;
    module2.exports = function() {
      var _volumeEntries = 0, _totalEntries = 0, _size = 0, _offset = 0, _commentLength = 0;
      return {
        get diskEntries() {
          return _volumeEntries;
        },
        set diskEntries(val) {
          _volumeEntries = _totalEntries = val;
        },
        get totalEntries() {
          return _totalEntries;
        },
        set totalEntries(val) {
          _totalEntries = _volumeEntries = val;
        },
        get size() {
          return _size;
        },
        set size(val) {
          _size = val;
        },
        get offset() {
          return _offset;
        },
        set offset(val) {
          _offset = val;
        },
        get commentLength() {
          return _commentLength;
        },
        set commentLength(val) {
          _commentLength = val;
        },
        get mainHeaderSize() {
          return Constants.ENDHDR + _commentLength;
        },
        loadFromBinary: function(data) {
          if ((data.length !== Constants.ENDHDR || data.readUInt32LE(0) !== Constants.ENDSIG) && (data.length < Constants.ZIP64HDR || data.readUInt32LE(0) !== Constants.ZIP64SIG)) {
            throw Utils.Errors.INVALID_END();
          }
          if (data.readUInt32LE(0) === Constants.ENDSIG) {
            _volumeEntries = data.readUInt16LE(Constants.ENDSUB);
            _totalEntries = data.readUInt16LE(Constants.ENDTOT);
            _size = data.readUInt32LE(Constants.ENDSIZ);
            _offset = data.readUInt32LE(Constants.ENDOFF);
            _commentLength = data.readUInt16LE(Constants.ENDCOM);
          } else {
            _volumeEntries = Utils.readBigUInt64LE(data, Constants.ZIP64SUB);
            _totalEntries = Utils.readBigUInt64LE(data, Constants.ZIP64TOT);
            _size = Utils.readBigUInt64LE(data, Constants.ZIP64SIZE);
            _offset = Utils.readBigUInt64LE(data, Constants.ZIP64OFF);
            _commentLength = 0;
          }
        },
        toBinary: function() {
          var b = Buffer.alloc(Constants.ENDHDR + _commentLength);
          b.writeUInt32LE(Constants.ENDSIG, 0);
          b.writeUInt32LE(0, 4);
          b.writeUInt16LE(_volumeEntries, Constants.ENDSUB);
          b.writeUInt16LE(_totalEntries, Constants.ENDTOT);
          b.writeUInt32LE(_size, Constants.ENDSIZ);
          b.writeUInt32LE(_offset, Constants.ENDOFF);
          b.writeUInt16LE(_commentLength, Constants.ENDCOM);
          b.fill(" ", Constants.ENDHDR);
          return b;
        },
        toJSON: function() {
          const offset = function(nr, len) {
            let offs = nr.toString(16).toUpperCase();
            while (offs.length < len) offs = "0" + offs;
            return "0x" + offs;
          };
          return {
            diskEntries: _volumeEntries,
            totalEntries: _totalEntries,
            size: _size + " bytes",
            offset: offset(_offset, 4),
            commentLength: _commentLength
          };
        },
        toString: function() {
          return JSON.stringify(this.toJSON(), null, "	");
        }
      };
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/adm-zip/0.5.17/ec16aefa4bc95920c5011662cca049a325d17aae4801cb2d0cfadcb328b4bba5/node_modules/adm-zip/headers/index.js
var require_headers = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/adm-zip/0.5.17/ec16aefa4bc95920c5011662cca049a325d17aae4801cb2d0cfadcb328b4bba5/node_modules/adm-zip/headers/index.js"(exports2) {
    exports2.EntryHeader = require_entryHeader();
    exports2.MainHeader = require_mainHeader();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/adm-zip/0.5.17/ec16aefa4bc95920c5011662cca049a325d17aae4801cb2d0cfadcb328b4bba5/node_modules/adm-zip/methods/deflater.js
var require_deflater = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/adm-zip/0.5.17/ec16aefa4bc95920c5011662cca049a325d17aae4801cb2d0cfadcb328b4bba5/node_modules/adm-zip/methods/deflater.js"(exports2, module2) {
    module2.exports = function(inbuf) {
      var zlib = __require("zlib");
      var opts2 = { chunkSize: (parseInt(inbuf.length / 1024) + 1) * 1024 };
      return {
        deflate: function() {
          return zlib.deflateRawSync(inbuf, opts2);
        },
        deflateAsync: function(callback2) {
          var tmp = zlib.createDeflateRaw(opts2), parts = [], total = 0;
          tmp.on("data", function(data) {
            parts.push(data);
            total += data.length;
          });
          tmp.on("end", function() {
            var buf = Buffer.alloc(total), written = 0;
            buf.fill(0);
            for (var i2 = 0; i2 < parts.length; i2++) {
              var part = parts[i2];
              part.copy(buf, written);
              written += part.length;
            }
            callback2 && callback2(buf);
          });
          tmp.end(inbuf);
        }
      };
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/adm-zip/0.5.17/ec16aefa4bc95920c5011662cca049a325d17aae4801cb2d0cfadcb328b4bba5/node_modules/adm-zip/methods/inflater.js
var require_inflater = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/adm-zip/0.5.17/ec16aefa4bc95920c5011662cca049a325d17aae4801cb2d0cfadcb328b4bba5/node_modules/adm-zip/methods/inflater.js"(exports2, module2) {
    var version2 = +(process.versions ? process.versions.node : "").split(".")[0] || 0;
    module2.exports = function(inbuf, expectedLength) {
      var zlib = __require("zlib");
      const option = version2 >= 15 && expectedLength > 0 ? { maxOutputLength: expectedLength } : {};
      return {
        inflate: function() {
          return zlib.inflateRawSync(inbuf, option);
        },
        inflateAsync: function(callback2) {
          var tmp = zlib.createInflateRaw(option), parts = [], total = 0;
          tmp.on("data", function(data) {
            parts.push(data);
            total += data.length;
          });
          tmp.on("end", function() {
            var buf = Buffer.alloc(total), written = 0;
            buf.fill(0);
            for (var i2 = 0; i2 < parts.length; i2++) {
              var part = parts[i2];
              part.copy(buf, written);
              written += part.length;
            }
            callback2 && callback2(buf);
          });
          tmp.end(inbuf);
        }
      };
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/adm-zip/0.5.17/ec16aefa4bc95920c5011662cca049a325d17aae4801cb2d0cfadcb328b4bba5/node_modules/adm-zip/methods/zipcrypto.js
var require_zipcrypto = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/adm-zip/0.5.17/ec16aefa4bc95920c5011662cca049a325d17aae4801cb2d0cfadcb328b4bba5/node_modules/adm-zip/methods/zipcrypto.js"(exports2, module2) {
    "use strict";
    var { randomFillSync } = __require("crypto");
    var Errors = require_errors();
    var crctable = new Uint32Array(256).map((t2, crc) => {
      for (let j2 = 0; j2 < 8; j2++) {
        if (0 !== (crc & 1)) {
          crc = crc >>> 1 ^ 3988292384;
        } else {
          crc >>>= 1;
        }
      }
      return crc >>> 0;
    });
    var uMul = (a2, b) => Math.imul(a2, b) >>> 0;
    var crc32update = (pCrc32, bval) => {
      return crctable[(pCrc32 ^ bval) & 255] ^ pCrc32 >>> 8;
    };
    var genSalt = () => {
      if ("function" === typeof randomFillSync) {
        return randomFillSync(Buffer.alloc(12));
      } else {
        return genSalt.node();
      }
    };
    genSalt.node = () => {
      const salt = Buffer.alloc(12);
      const len = salt.length;
      for (let i2 = 0; i2 < len; i2++) salt[i2] = Math.random() * 256 & 255;
      return salt;
    };
    var config = {
      genSalt
    };
    function Initkeys(pw) {
      const pass = Buffer.isBuffer(pw) ? pw : Buffer.from(pw);
      this.keys = new Uint32Array([305419896, 591751049, 878082192]);
      for (let i2 = 0; i2 < pass.length; i2++) {
        this.updateKeys(pass[i2]);
      }
    }
    Initkeys.prototype.updateKeys = function(byteValue) {
      const keys4 = this.keys;
      keys4[0] = crc32update(keys4[0], byteValue);
      keys4[1] += keys4[0] & 255;
      keys4[1] = uMul(keys4[1], 134775813) + 1;
      keys4[2] = crc32update(keys4[2], keys4[1] >>> 24);
      return byteValue;
    };
    Initkeys.prototype.next = function() {
      const k2 = (this.keys[2] | 2) >>> 0;
      return uMul(k2, k2 ^ 1) >> 8 & 255;
    };
    function make_decrypter(pwd) {
      const keys4 = new Initkeys(pwd);
      return function(data) {
        const result2 = Buffer.alloc(data.length);
        let pos = 0;
        for (let c3 of data) {
          result2[pos++] = keys4.updateKeys(c3 ^ keys4.next());
        }
        return result2;
      };
    }
    function make_encrypter(pwd) {
      const keys4 = new Initkeys(pwd);
      return function(data, result2, pos = 0) {
        if (!result2) result2 = Buffer.alloc(data.length);
        for (let c3 of data) {
          const k2 = keys4.next();
          result2[pos++] = c3 ^ k2;
          keys4.updateKeys(c3);
        }
        return result2;
      };
    }
    function decrypt(data, header, pwd) {
      if (!data || !Buffer.isBuffer(data) || data.length < 12) {
        return Buffer.alloc(0);
      }
      const decrypter = make_decrypter(pwd);
      const salt = decrypter(data.slice(0, 12));
      const verifyByte = (header.flags & 8) === 8 ? header.timeHighByte : header.crc >>> 24;
      if (salt[11] !== verifyByte) {
        throw Errors.WRONG_PASSWORD();
      }
      return decrypter(data.slice(12));
    }
    function _salter(data) {
      if (Buffer.isBuffer(data) && data.length >= 12) {
        config.genSalt = function() {
          return data.slice(0, 12);
        };
      } else if (data === "node") {
        config.genSalt = genSalt.node;
      } else {
        config.genSalt = genSalt;
      }
    }
    function encrypt(data, header, pwd, oldlike = false) {
      if (data == null) data = Buffer.alloc(0);
      if (!Buffer.isBuffer(data)) data = Buffer.from(data.toString());
      const encrypter = make_encrypter(pwd);
      const salt = config.genSalt();
      salt[11] = header.crc >>> 24 & 255;
      if (oldlike) salt[10] = header.crc >>> 16 & 255;
      const result2 = Buffer.alloc(data.length + 12);
      encrypter(salt, result2);
      return encrypter(data, result2, 12);
    }
    module2.exports = { decrypt, encrypt, _salter };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/adm-zip/0.5.17/ec16aefa4bc95920c5011662cca049a325d17aae4801cb2d0cfadcb328b4bba5/node_modules/adm-zip/methods/index.js
var require_methods = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/adm-zip/0.5.17/ec16aefa4bc95920c5011662cca049a325d17aae4801cb2d0cfadcb328b4bba5/node_modules/adm-zip/methods/index.js"(exports2) {
    exports2.Deflater = require_deflater();
    exports2.Inflater = require_inflater();
    exports2.ZipCrypto = require_zipcrypto();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/adm-zip/0.5.17/ec16aefa4bc95920c5011662cca049a325d17aae4801cb2d0cfadcb328b4bba5/node_modules/adm-zip/zipEntry.js
var require_zipEntry = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/adm-zip/0.5.17/ec16aefa4bc95920c5011662cca049a325d17aae4801cb2d0cfadcb328b4bba5/node_modules/adm-zip/zipEntry.js"(exports2, module2) {
    var Utils = require_util2();
    var Headers2 = require_headers();
    var Constants = Utils.Constants;
    var Methods = require_methods();
    module2.exports = function(options, input) {
      var _centralHeader = new Headers2.EntryHeader(), _entryName = Buffer.alloc(0), _comment = Buffer.alloc(0), _isDirectory = false, uncompressedData = null, _extra = Buffer.alloc(0), _extralocal = Buffer.alloc(0), _efs = true;
      const opts2 = options;
      const decoder2 = typeof opts2.decoder === "object" ? opts2.decoder : Utils.decoder;
      _efs = decoder2.hasOwnProperty("efs") ? decoder2.efs : false;
      function getCompressedDataFromZip() {
        if (!input || !(input instanceof Uint8Array)) {
          return Buffer.alloc(0);
        }
        _extralocal = _centralHeader.loadLocalHeaderFromBinary(input);
        return input.slice(_centralHeader.realDataOffset, _centralHeader.realDataOffset + _centralHeader.compressedSize);
      }
      function crc32OK(data) {
        if (!_centralHeader.flags_desc && !_centralHeader.localHeader.flags_desc) {
          if (Utils.crc32(data) !== _centralHeader.localHeader.crc) {
            return false;
          }
        } else {
          const descriptor = {};
          const dataEndOffset = _centralHeader.realDataOffset + _centralHeader.compressedSize;
          if (input.readUInt32LE(dataEndOffset) == Constants.LOCSIG || input.readUInt32LE(dataEndOffset) == Constants.CENSIG) {
            throw Utils.Errors.DESCRIPTOR_NOT_EXIST();
          }
          if (input.readUInt32LE(dataEndOffset) == Constants.EXTSIG) {
            descriptor.crc = input.readUInt32LE(dataEndOffset + Constants.EXTCRC);
            descriptor.compressedSize = input.readUInt32LE(dataEndOffset + Constants.EXTSIZ);
            descriptor.size = input.readUInt32LE(dataEndOffset + Constants.EXTLEN);
          } else if (input.readUInt16LE(dataEndOffset + 12) === 19280) {
            descriptor.crc = input.readUInt32LE(dataEndOffset + Constants.EXTCRC - 4);
            descriptor.compressedSize = input.readUInt32LE(dataEndOffset + Constants.EXTSIZ - 4);
            descriptor.size = input.readUInt32LE(dataEndOffset + Constants.EXTLEN - 4);
          } else {
            throw Utils.Errors.DESCRIPTOR_UNKNOWN();
          }
          if (descriptor.compressedSize !== _centralHeader.compressedSize || descriptor.size !== _centralHeader.size || descriptor.crc !== _centralHeader.crc) {
            throw Utils.Errors.DESCRIPTOR_FAULTY();
          }
          if (Utils.crc32(data) !== descriptor.crc) {
            return false;
          }
        }
        return true;
      }
      function decompress(async, callback2, pass) {
        if (typeof callback2 === "undefined" && typeof async === "string") {
          pass = async;
          async = void 0;
        }
        if (_isDirectory) {
          if (async && callback2) {
            callback2(Buffer.alloc(0), Utils.Errors.DIRECTORY_CONTENT_ERROR());
          }
          return Buffer.alloc(0);
        }
        var compressedData = getCompressedDataFromZip();
        if (compressedData.length === 0) {
          if (async && callback2) callback2(compressedData);
          return compressedData;
        }
        if (_centralHeader.encrypted) {
          if ("string" !== typeof pass && !Buffer.isBuffer(pass)) {
            throw Utils.Errors.INVALID_PASS_PARAM();
          }
          compressedData = Methods.ZipCrypto.decrypt(compressedData, _centralHeader, pass);
        }
        var data = Buffer.alloc(_centralHeader.size);
        switch (_centralHeader.method) {
          case Utils.Constants.STORED:
            compressedData.copy(data);
            if (!crc32OK(data)) {
              if (async && callback2) callback2(data, Utils.Errors.BAD_CRC());
              throw Utils.Errors.BAD_CRC();
            } else {
              if (async && callback2) callback2(data);
              return data;
            }
          case Utils.Constants.DEFLATED:
            var inflater = new Methods.Inflater(compressedData, _centralHeader.size);
            if (!async) {
              const result2 = inflater.inflate(data);
              result2.copy(data, 0);
              if (!crc32OK(data)) {
                throw Utils.Errors.BAD_CRC(`"${decoder2.decode(_entryName)}"`);
              }
              return data;
            } else {
              inflater.inflateAsync(function(result2) {
                result2.copy(result2, 0);
                if (callback2) {
                  if (!crc32OK(result2)) {
                    callback2(result2, Utils.Errors.BAD_CRC());
                  } else {
                    callback2(result2);
                  }
                }
              });
            }
            break;
          default:
            if (async && callback2) callback2(Buffer.alloc(0), Utils.Errors.UNKNOWN_METHOD());
            throw Utils.Errors.UNKNOWN_METHOD();
        }
      }
      function compress(async, callback2) {
        if ((!uncompressedData || !uncompressedData.length) && Buffer.isBuffer(input)) {
          if (async && callback2) callback2(getCompressedDataFromZip());
          return getCompressedDataFromZip();
        }
        if (uncompressedData.length && !_isDirectory) {
          var compressedData;
          switch (_centralHeader.method) {
            case Utils.Constants.STORED:
              _centralHeader.compressedSize = _centralHeader.size;
              compressedData = Buffer.alloc(uncompressedData.length);
              uncompressedData.copy(compressedData);
              if (async && callback2) callback2(compressedData);
              return compressedData;
            default:
            case Utils.Constants.DEFLATED:
              var deflater = new Methods.Deflater(uncompressedData);
              if (!async) {
                var deflated = deflater.deflate();
                _centralHeader.compressedSize = deflated.length;
                return deflated;
              } else {
                deflater.deflateAsync(function(data) {
                  compressedData = Buffer.alloc(data.length);
                  _centralHeader.compressedSize = data.length;
                  data.copy(compressedData);
                  callback2 && callback2(compressedData);
                });
              }
              deflater = null;
              break;
          }
        } else if (async && callback2) {
          callback2(Buffer.alloc(0));
        } else {
          return Buffer.alloc(0);
        }
      }
      function readUInt64LE(buffer3, offset) {
        return Utils.readBigUInt64LE(buffer3, offset);
      }
      function parseExtra(data) {
        try {
          var offset = 0;
          var signature, size, part;
          while (offset + 4 < data.length) {
            signature = data.readUInt16LE(offset);
            offset += 2;
            size = data.readUInt16LE(offset);
            offset += 2;
            part = data.slice(offset, offset + size);
            offset += size;
            if (Constants.ID_ZIP64 === signature) {
              parseZip64ExtendedInformation(part);
            }
          }
        } catch (error) {
          throw Utils.Errors.EXTRA_FIELD_PARSE_ERROR();
        }
      }
      function parseZip64ExtendedInformation(data) {
        var size, compressedSize, offset, diskNumStart;
        if (data.length >= Constants.EF_ZIP64_SCOMP) {
          size = readUInt64LE(data, Constants.EF_ZIP64_SUNCOMP);
          if (_centralHeader.size === Constants.EF_ZIP64_OR_32) {
            _centralHeader.size = size;
          }
        }
        if (data.length >= Constants.EF_ZIP64_RHO) {
          compressedSize = readUInt64LE(data, Constants.EF_ZIP64_SCOMP);
          if (_centralHeader.compressedSize === Constants.EF_ZIP64_OR_32) {
            _centralHeader.compressedSize = compressedSize;
          }
        }
        if (data.length >= Constants.EF_ZIP64_DSN) {
          offset = readUInt64LE(data, Constants.EF_ZIP64_RHO);
          if (_centralHeader.offset === Constants.EF_ZIP64_OR_32) {
            _centralHeader.offset = offset;
          }
        }
        if (data.length >= Constants.EF_ZIP64_DSN + 4) {
          diskNumStart = data.readUInt32LE(Constants.EF_ZIP64_DSN);
          if (_centralHeader.diskNumStart === Constants.EF_ZIP64_OR_16) {
            _centralHeader.diskNumStart = diskNumStart;
          }
        }
      }
      return {
        get entryName() {
          return decoder2.decode(_entryName);
        },
        get rawEntryName() {
          return _entryName;
        },
        set entryName(val) {
          _entryName = Utils.toBuffer(val, decoder2.encode);
          var lastChar = _entryName[_entryName.length - 1];
          _isDirectory = lastChar === 47 || lastChar === 92;
          _centralHeader.fileNameLength = _entryName.length;
        },
        get efs() {
          if (typeof _efs === "function") {
            return _efs(this.entryName);
          } else {
            return _efs;
          }
        },
        get extra() {
          return _extra;
        },
        set extra(val) {
          _extra = val;
          _centralHeader.extraLength = val.length;
          parseExtra(val);
        },
        get comment() {
          return decoder2.decode(_comment);
        },
        set comment(val) {
          _comment = Utils.toBuffer(val, decoder2.encode);
          _centralHeader.commentLength = _comment.length;
          if (_comment.length > 65535) throw Utils.Errors.COMMENT_TOO_LONG();
        },
        get name() {
          var n2 = decoder2.decode(_entryName);
          return _isDirectory ? n2.substr(n2.length - 1).split("/").pop() : n2.split("/").pop();
        },
        get isDirectory() {
          return _isDirectory;
        },
        getCompressedData: function() {
          return compress(false, null);
        },
        getCompressedDataAsync: function(callback2) {
          compress(true, callback2);
        },
        setData: function(value) {
          uncompressedData = Utils.toBuffer(value, Utils.decoder.encode);
          if (!_isDirectory && uncompressedData.length) {
            _centralHeader.size = uncompressedData.length;
            _centralHeader.method = Utils.Constants.DEFLATED;
            _centralHeader.crc = Utils.crc32(value);
            _centralHeader.changed = true;
          } else {
            _centralHeader.method = Utils.Constants.STORED;
          }
        },
        getData: function(pass) {
          if (_centralHeader.changed) {
            return uncompressedData;
          } else {
            return decompress(false, null, pass);
          }
        },
        getDataAsync: function(callback2, pass) {
          if (_centralHeader.changed) {
            callback2(uncompressedData);
          } else {
            decompress(true, callback2, pass);
          }
        },
        set attr(attr) {
          _centralHeader.attr = attr;
        },
        get attr() {
          return _centralHeader.attr;
        },
        set header(data) {
          _centralHeader.loadFromBinary(data);
        },
        get header() {
          return _centralHeader;
        },
        packCentralHeader: function() {
          _centralHeader.flags_efs = this.efs;
          _centralHeader.extraLength = _extra.length;
          var header = _centralHeader.centralHeaderToBinary();
          var addpos = Utils.Constants.CENHDR;
          _entryName.copy(header, addpos);
          addpos += _entryName.length;
          _extra.copy(header, addpos);
          addpos += _centralHeader.extraLength;
          _comment.copy(header, addpos);
          return header;
        },
        packLocalHeader: function() {
          let addpos = 0;
          _centralHeader.flags_efs = this.efs;
          _centralHeader.extraLocalLength = _extralocal.length;
          const localHeaderBuf = _centralHeader.localHeaderToBinary();
          const localHeader = Buffer.alloc(localHeaderBuf.length + _entryName.length + _centralHeader.extraLocalLength);
          localHeaderBuf.copy(localHeader, addpos);
          addpos += localHeaderBuf.length;
          _entryName.copy(localHeader, addpos);
          addpos += _entryName.length;
          _extralocal.copy(localHeader, addpos);
          addpos += _extralocal.length;
          return localHeader;
        },
        toJSON: function() {
          const bytes = function(nr) {
            return "<" + (nr && nr.length + " bytes buffer" || "null") + ">";
          };
          return {
            entryName: this.entryName,
            name: this.name,
            comment: this.comment,
            isDirectory: this.isDirectory,
            header: _centralHeader.toJSON(),
            compressedData: bytes(input),
            data: bytes(uncompressedData)
          };
        },
        toString: function() {
          return JSON.stringify(this.toJSON(), null, "	");
        }
      };
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/adm-zip/0.5.17/ec16aefa4bc95920c5011662cca049a325d17aae4801cb2d0cfadcb328b4bba5/node_modules/adm-zip/zipFile.js
var require_zipFile = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/adm-zip/0.5.17/ec16aefa4bc95920c5011662cca049a325d17aae4801cb2d0cfadcb328b4bba5/node_modules/adm-zip/zipFile.js"(exports2, module2) {
    var ZipEntry = require_zipEntry();
    var Headers2 = require_headers();
    var Utils = require_util2();
    module2.exports = function(inBuffer, options) {
      var entryList = [], entryTable = {}, _comment = Buffer.alloc(0), mainHeader = new Headers2.MainHeader(), loadedEntries = false;
      var password = null;
      const temporary = /* @__PURE__ */ new Set();
      const opts2 = options;
      const { noSort, decoder: decoder2 } = opts2;
      if (inBuffer) {
        readMainHeader(opts2.readEntries);
      } else {
        loadedEntries = true;
      }
      function makeTemporaryFolders() {
        const foldersList = /* @__PURE__ */ new Set();
        for (const elem of Object.keys(entryTable)) {
          const elements = elem.split("/");
          elements.pop();
          if (!elements.length) continue;
          for (let i2 = 0; i2 < elements.length; i2++) {
            const sub = elements.slice(0, i2 + 1).join("/") + "/";
            foldersList.add(sub);
          }
        }
        for (const elem of foldersList) {
          if (!(elem in entryTable)) {
            const tempfolder = new ZipEntry(opts2);
            tempfolder.entryName = elem;
            tempfolder.attr = 16;
            tempfolder.temporary = true;
            entryList.push(tempfolder);
            entryTable[tempfolder.entryName] = tempfolder;
            temporary.add(tempfolder);
          }
        }
      }
      function readEntries() {
        loadedEntries = true;
        entryTable = {};
        if (mainHeader.diskEntries > (inBuffer.length - mainHeader.offset) / Utils.Constants.CENHDR) {
          throw Utils.Errors.DISK_ENTRY_TOO_LARGE();
        }
        entryList = new Array(mainHeader.diskEntries);
        var index = mainHeader.offset;
        for (var i2 = 0; i2 < entryList.length; i2++) {
          var tmp = index, entry = new ZipEntry(opts2, inBuffer);
          entry.header = inBuffer.slice(tmp, tmp += Utils.Constants.CENHDR);
          entry.entryName = inBuffer.slice(tmp, tmp += entry.header.fileNameLength);
          if (entry.header.extraLength) {
            entry.extra = inBuffer.slice(tmp, tmp += entry.header.extraLength);
          }
          if (entry.header.commentLength) entry.comment = inBuffer.slice(tmp, tmp + entry.header.commentLength);
          index += entry.header.centralHeaderSize;
          entryList[i2] = entry;
          entryTable[entry.entryName] = entry;
        }
        temporary.clear();
        makeTemporaryFolders();
      }
      function readMainHeader(readNow) {
        var i2 = inBuffer.length - Utils.Constants.ENDHDR, max3 = Math.max(0, i2 - 65535), n2 = max3, endStart = inBuffer.length, endOffset = -1, commentEnd = 0;
        const trailingSpace = typeof opts2.trailingSpace === "boolean" ? opts2.trailingSpace : false;
        if (trailingSpace) max3 = 0;
        for (i2; i2 >= n2; i2--) {
          if (inBuffer[i2] !== 80) continue;
          if (inBuffer.readUInt32LE(i2) === Utils.Constants.ENDSIG) {
            endOffset = i2;
            commentEnd = i2;
            endStart = i2 + Utils.Constants.ENDHDR;
            n2 = i2 - Utils.Constants.END64HDR;
            continue;
          }
          if (inBuffer.readUInt32LE(i2) === Utils.Constants.END64SIG) {
            n2 = max3;
            continue;
          }
          if (inBuffer.readUInt32LE(i2) === Utils.Constants.ZIP64SIG) {
            endOffset = i2;
            endStart = i2 + Utils.readBigUInt64LE(inBuffer, i2 + Utils.Constants.ZIP64SIZE) + Utils.Constants.ZIP64LEAD;
            break;
          }
        }
        if (endOffset == -1) throw Utils.Errors.INVALID_FORMAT();
        mainHeader.loadFromBinary(inBuffer.slice(endOffset, endStart));
        if (mainHeader.commentLength) {
          _comment = inBuffer.slice(commentEnd + Utils.Constants.ENDHDR);
        }
        if (readNow) readEntries();
      }
      function sortEntries() {
        if (entryList.length > 1 && !noSort) {
          entryList.sort((a2, b) => a2.entryName.toLowerCase().localeCompare(b.entryName.toLowerCase()));
        }
      }
      return {
        /**
         * Returns an array of ZipEntry objects existent in the current opened archive
         * @return Array
         */
        get entries() {
          if (!loadedEntries) {
            readEntries();
          }
          return entryList.filter((e) => !temporary.has(e));
        },
        /**
         * Archive comment
         * @return {String}
         */
        get comment() {
          return decoder2.decode(_comment);
        },
        set comment(val) {
          _comment = Utils.toBuffer(val, decoder2.encode);
          mainHeader.commentLength = _comment.length;
        },
        getEntryCount: function() {
          if (!loadedEntries) {
            return mainHeader.diskEntries;
          }
          return entryList.length;
        },
        forEach: function(callback2) {
          this.entries.forEach(callback2);
        },
        /**
         * Returns a reference to the entry with the given name or null if entry is inexistent
         *
         * @param entryName
         * @return ZipEntry
         */
        getEntry: function(entryName) {
          if (!loadedEntries) {
            readEntries();
          }
          return entryTable[entryName] || null;
        },
        /**
         * Adds the given entry to the entry list
         *
         * @param entry
         */
        setEntry: function(entry) {
          if (!loadedEntries) {
            readEntries();
          }
          entryList.push(entry);
          entryTable[entry.entryName] = entry;
          mainHeader.totalEntries = entryList.length;
        },
        /**
         * Removes the file with the given name from the entry list.
         *
         * If the entry is a directory, then all nested files and directories will be removed
         * @param entryName
         * @returns {void}
         */
        deleteFile: function(entryName, withsubfolders = true) {
          if (!loadedEntries) {
            readEntries();
          }
          const entry = entryTable[entryName];
          const list2 = this.getEntryChildren(entry, withsubfolders).map((child) => child.entryName);
          list2.forEach(this.deleteEntry);
        },
        /**
         * Removes the entry with the given name from the entry list.
         *
         * @param {string} entryName
         * @returns {void}
         */
        deleteEntry: function(entryName) {
          if (!loadedEntries) {
            readEntries();
          }
          const entry = entryTable[entryName];
          const index = entryList.indexOf(entry);
          if (index >= 0) {
            entryList.splice(index, 1);
            delete entryTable[entryName];
            mainHeader.totalEntries = entryList.length;
          }
        },
        /**
         *  Iterates and returns all nested files and directories of the given entry
         *
         * @param entry
         * @return Array
         */
        getEntryChildren: function(entry, subfolders = true) {
          if (!loadedEntries) {
            readEntries();
          }
          if (typeof entry === "object") {
            if (entry.isDirectory && subfolders) {
              const list2 = [];
              const name = entry.entryName;
              for (const zipEntry of entryList) {
                if (zipEntry.entryName.startsWith(name)) {
                  list2.push(zipEntry);
                }
              }
              return list2;
            } else {
              return [entry];
            }
          }
          return [];
        },
        /**
         *  How many child elements entry has
         *
         * @param {ZipEntry} entry
         * @return {integer}
         */
        getChildCount: function(entry) {
          if (entry && entry.isDirectory) {
            const list2 = this.getEntryChildren(entry);
            return list2.includes(entry) ? list2.length - 1 : list2.length;
          }
          return 0;
        },
        /**
         * Returns the zip file
         *
         * @return Buffer
         */
        compressToBuffer: function() {
          if (!loadedEntries) {
            readEntries();
          }
          sortEntries();
          const dataBlock = [];
          const headerBlocks = [];
          let totalSize = 0;
          let dindex = 0;
          mainHeader.size = 0;
          mainHeader.offset = 0;
          let totalEntries = 0;
          for (const entry of this.entries) {
            const compressedData = entry.getCompressedData();
            entry.header.offset = dindex;
            const localHeader = entry.packLocalHeader();
            const dataLength = localHeader.length + compressedData.length;
            dindex += dataLength;
            dataBlock.push(localHeader);
            dataBlock.push(compressedData);
            const centralHeader = entry.packCentralHeader();
            headerBlocks.push(centralHeader);
            mainHeader.size += centralHeader.length;
            totalSize += dataLength + centralHeader.length;
            totalEntries++;
          }
          totalSize += mainHeader.mainHeaderSize;
          mainHeader.offset = dindex;
          mainHeader.totalEntries = totalEntries;
          dindex = 0;
          const outBuffer = Buffer.alloc(totalSize);
          for (const content of dataBlock) {
            content.copy(outBuffer, dindex);
            dindex += content.length;
          }
          for (const content of headerBlocks) {
            content.copy(outBuffer, dindex);
            dindex += content.length;
          }
          const mh = mainHeader.toBinary();
          if (_comment) {
            _comment.copy(mh, Utils.Constants.ENDHDR);
          }
          mh.copy(outBuffer, dindex);
          inBuffer = outBuffer;
          loadedEntries = false;
          return outBuffer;
        },
        toAsyncBuffer: function(onSuccess, onFail, onItemStart, onItemEnd) {
          try {
            if (!loadedEntries) {
              readEntries();
            }
            sortEntries();
            const dataBlock = [];
            const centralHeaders = [];
            let totalSize = 0;
            let dindex = 0;
            let totalEntries = 0;
            mainHeader.size = 0;
            mainHeader.offset = 0;
            const compress2Buffer = function(entryLists) {
              if (entryLists.length > 0) {
                const entry = entryLists.shift();
                const name = entry.entryName + entry.extra.toString();
                if (onItemStart) onItemStart(name);
                entry.getCompressedDataAsync(function(compressedData) {
                  if (onItemEnd) onItemEnd(name);
                  entry.header.offset = dindex;
                  const localHeader = entry.packLocalHeader();
                  const dataLength = localHeader.length + compressedData.length;
                  dindex += dataLength;
                  dataBlock.push(localHeader);
                  dataBlock.push(compressedData);
                  const centalHeader = entry.packCentralHeader();
                  centralHeaders.push(centalHeader);
                  mainHeader.size += centalHeader.length;
                  totalSize += dataLength + centalHeader.length;
                  totalEntries++;
                  compress2Buffer(entryLists);
                });
              } else {
                totalSize += mainHeader.mainHeaderSize;
                mainHeader.offset = dindex;
                mainHeader.totalEntries = totalEntries;
                dindex = 0;
                const outBuffer = Buffer.alloc(totalSize);
                dataBlock.forEach(function(content) {
                  content.copy(outBuffer, dindex);
                  dindex += content.length;
                });
                centralHeaders.forEach(function(content) {
                  content.copy(outBuffer, dindex);
                  dindex += content.length;
                });
                const mh = mainHeader.toBinary();
                if (_comment) {
                  _comment.copy(mh, Utils.Constants.ENDHDR);
                }
                mh.copy(outBuffer, dindex);
                inBuffer = outBuffer;
                loadedEntries = false;
                onSuccess(outBuffer);
              }
            };
            compress2Buffer(Array.from(this.entries));
          } catch (e) {
            onFail(e);
          }
        }
      };
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/adm-zip/0.5.17/ec16aefa4bc95920c5011662cca049a325d17aae4801cb2d0cfadcb328b4bba5/node_modules/adm-zip/adm-zip.js
var require_adm_zip = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/adm-zip/0.5.17/ec16aefa4bc95920c5011662cca049a325d17aae4801cb2d0cfadcb328b4bba5/node_modules/adm-zip/adm-zip.js"(exports2, module2) {
    var Utils = require_util2();
    var pth = __require("path");
    var ZipEntry = require_zipEntry();
    var ZipFile = require_zipFile();
    var get_Bool = (...val) => Utils.findLast(val, (c3) => typeof c3 === "boolean");
    var get_Str = (...val) => Utils.findLast(val, (c3) => typeof c3 === "string");
    var get_Fun = (...val) => Utils.findLast(val, (c3) => typeof c3 === "function");
    var defaultOptions4 = {
      // option "noSort" : if true it disables files sorting
      noSort: false,
      // read entries during load (initial loading may be slower)
      readEntries: false,
      // default method is none
      method: Utils.Constants.NONE,
      // file system
      fs: null
    };
    module2.exports = function(input, options) {
      let inBuffer = null;
      const opts2 = Object.assign(/* @__PURE__ */ Object.create(null), defaultOptions4);
      if (input && "object" === typeof input) {
        if (!(input instanceof Uint8Array)) {
          Object.assign(opts2, input);
          input = opts2.input ? opts2.input : void 0;
          if (opts2.input) delete opts2.input;
        }
        if (Buffer.isBuffer(input)) {
          inBuffer = input;
          opts2.method = Utils.Constants.BUFFER;
          input = void 0;
        }
      }
      Object.assign(opts2, options);
      const filetools = new Utils(opts2);
      if (typeof opts2.decoder !== "object" || typeof opts2.decoder.encode !== "function" || typeof opts2.decoder.decode !== "function") {
        opts2.decoder = Utils.decoder;
      }
      if (input && "string" === typeof input) {
        if (filetools.fs.existsSync(input)) {
          opts2.method = Utils.Constants.FILE;
          opts2.filename = input;
          inBuffer = filetools.fs.readFileSync(input);
        } else {
          throw Utils.Errors.INVALID_FILENAME();
        }
      }
      const _zip = new ZipFile(inBuffer, opts2);
      const { canonical, sanitize, zipnamefix } = Utils;
      function getEntry(entry) {
        if (entry && _zip) {
          var item;
          if (typeof entry === "string") item = _zip.getEntry(pth.posix.normalize(entry));
          if (typeof entry === "object" && typeof entry.entryName !== "undefined" && typeof entry.header !== "undefined") item = _zip.getEntry(entry.entryName);
          if (item) {
            return item;
          }
        }
        return null;
      }
      function fixPath(zipPath) {
        const { join: join3, normalize: normalize11, sep: sep2 } = pth.posix;
        return join3(pth.isAbsolute(zipPath) ? "/" : ".", normalize11(sep2 + zipPath.split("\\").join(sep2) + sep2));
      }
      function filenameFilter(filterfn) {
        if (filterfn instanceof RegExp) {
          return /* @__PURE__ */ (function(rx) {
            return function(filename) {
              return rx.test(filename);
            };
          })(filterfn);
        } else if ("function" !== typeof filterfn) {
          return () => true;
        }
        return filterfn;
      }
      const relativePath = (local, entry) => {
        let lastChar = entry.slice(-1);
        lastChar = lastChar === filetools.sep ? filetools.sep : "";
        return pth.relative(local, entry) + lastChar;
      };
      return {
        /**
         * Extracts the given entry from the archive and returns the content as a Buffer object
         * @param {ZipEntry|string} entry ZipEntry object or String with the full path of the entry
         * @param {Buffer|string} [pass] - password
         * @return Buffer or Null in case of error
         */
        readFile: function(entry, pass) {
          var item = getEntry(entry);
          return item && item.getData(pass) || null;
        },
        /**
         * Returns how many child elements has on entry (directories) on files it is always 0
         * @param {ZipEntry|string} entry ZipEntry object or String with the full path of the entry
         * @returns {integer}
         */
        childCount: function(entry) {
          const item = getEntry(entry);
          if (item) {
            return _zip.getChildCount(item);
          }
        },
        /**
         * Asynchronous readFile
         * @param {ZipEntry|string} entry ZipEntry object or String with the full path of the entry
         * @param {callback} callback
         *
         * @return Buffer or Null in case of error
         */
        readFileAsync: function(entry, callback2) {
          var item = getEntry(entry);
          if (item) {
            item.getDataAsync(callback2);
          } else {
            callback2(null, "getEntry failed for:" + entry);
          }
        },
        /**
         * Extracts the given entry from the archive and returns the content as plain text in the given encoding
         * @param {ZipEntry|string} entry - ZipEntry object or String with the full path of the entry
         * @param {string} encoding - Optional. If no encoding is specified utf8 is used
         *
         * @return String
         */
        readAsText: function(entry, encoding) {
          var item = getEntry(entry);
          if (item) {
            var data = item.getData();
            if (data && data.length) {
              return data.toString(encoding || "utf8");
            }
          }
          return "";
        },
        /**
         * Asynchronous readAsText
         * @param {ZipEntry|string} entry ZipEntry object or String with the full path of the entry
         * @param {callback} callback
         * @param {string} [encoding] - Optional. If no encoding is specified utf8 is used
         *
         * @return String
         */
        readAsTextAsync: function(entry, callback2, encoding) {
          var item = getEntry(entry);
          if (item) {
            item.getDataAsync(function(data, err) {
              if (err) {
                callback2(data, err);
                return;
              }
              if (data && data.length) {
                callback2(data.toString(encoding || "utf8"));
              } else {
                callback2("");
              }
            });
          } else {
            callback2("");
          }
        },
        /**
         * Remove the entry from the file or the entry and all it's nested directories and files if the given entry is a directory
         *
         * @param {ZipEntry|string} entry
         * @returns {void}
         */
        deleteFile: function(entry, withsubfolders = true) {
          var item = getEntry(entry);
          if (item) {
            _zip.deleteFile(item.entryName, withsubfolders);
          }
        },
        /**
         * Remove the entry from the file or directory without affecting any nested entries
         *
         * @param {ZipEntry|string} entry
         * @returns {void}
         */
        deleteEntry: function(entry) {
          var item = getEntry(entry);
          if (item) {
            _zip.deleteEntry(item.entryName);
          }
        },
        /**
         * Adds a comment to the zip. The zip must be rewritten after adding the comment.
         *
         * @param {string} comment
         */
        addZipComment: function(comment) {
          _zip.comment = comment;
        },
        /**
         * Returns the zip comment
         *
         * @return String
         */
        getZipComment: function() {
          return _zip.comment || "";
        },
        /**
         * Adds a comment to a specified zipEntry. The zip must be rewritten after adding the comment
         * The comment cannot exceed 65535 characters in length
         *
         * @param {ZipEntry} entry
         * @param {string} comment
         */
        addZipEntryComment: function(entry, comment) {
          var item = getEntry(entry);
          if (item) {
            item.comment = comment;
          }
        },
        /**
         * Returns the comment of the specified entry
         *
         * @param {ZipEntry} entry
         * @return String
         */
        getZipEntryComment: function(entry) {
          var item = getEntry(entry);
          if (item) {
            return item.comment || "";
          }
          return "";
        },
        /**
         * Updates the content of an existing entry inside the archive. The zip must be rewritten after updating the content
         *
         * @param {ZipEntry} entry
         * @param {Buffer} content
         */
        updateFile: function(entry, content) {
          var item = getEntry(entry);
          if (item) {
            item.setData(content);
          }
        },
        /**
         * Adds a file from the disk to the archive
         *
         * @param {string} localPath File to add to zip
         * @param {string} [zipPath] Optional path inside the zip
         * @param {string} [zipName] Optional name for the file
         * @param {string} [comment] Optional file comment
         */
        addLocalFile: function(localPath2, zipPath, zipName, comment) {
          if (filetools.fs.existsSync(localPath2)) {
            zipPath = zipPath ? fixPath(zipPath) : "";
            const p = pth.win32.basename(pth.win32.normalize(localPath2));
            zipPath += zipName ? zipName : p;
            const _attr = filetools.fs.statSync(localPath2);
            const data = _attr.isFile() ? filetools.fs.readFileSync(localPath2) : Buffer.alloc(0);
            if (_attr.isDirectory()) zipPath += filetools.sep;
            this.addFile(zipPath, data, comment, _attr);
          } else {
            throw Utils.Errors.FILE_NOT_FOUND(localPath2);
          }
        },
        /**
         * Callback for showing if everything was done.
         *
         * @callback doneCallback
         * @param {Error} err - Error object
         * @param {boolean} done - was request fully completed
         */
        /**
         * Adds a file from the disk to the archive
         *
         * @param {(object|string)} options - options object, if it is string it us used as localPath.
         * @param {string} options.localPath - Local path to the file.
         * @param {string} [options.comment] - Optional file comment.
         * @param {string} [options.zipPath] - Optional path inside the zip
         * @param {string} [options.zipName] - Optional name for the file
         * @param {doneCallback} callback - The callback that handles the response.
         */
        addLocalFileAsync: function(options2, callback2) {
          options2 = typeof options2 === "object" ? options2 : { localPath: options2 };
          const localPath2 = pth.resolve(options2.localPath);
          const { comment } = options2;
          let { zipPath, zipName } = options2;
          const self2 = this;
          filetools.fs.stat(localPath2, function(err, stats) {
            if (err) return callback2(err, false);
            zipPath = zipPath ? fixPath(zipPath) : "";
            const p = pth.win32.basename(pth.win32.normalize(localPath2));
            zipPath += zipName ? zipName : p;
            if (stats.isFile()) {
              filetools.fs.readFile(localPath2, function(err2, data) {
                if (err2) return callback2(err2, false);
                self2.addFile(zipPath, data, comment, stats);
                return setImmediate(callback2, void 0, true);
              });
            } else if (stats.isDirectory()) {
              zipPath += filetools.sep;
              self2.addFile(zipPath, Buffer.alloc(0), comment, stats);
              return setImmediate(callback2, void 0, true);
            }
          });
        },
        /**
         * Adds a local directory and all its nested files and directories to the archive
         *
         * @param {string} localPath - local path to the folder
         * @param {string} [zipPath] - optional path inside zip
         * @param {(RegExp|function)} [filter] - optional RegExp or Function if files match will be included.
         */
        addLocalFolder: function(localPath2, zipPath, filter14) {
          filter14 = filenameFilter(filter14);
          zipPath = zipPath ? fixPath(zipPath) : "";
          localPath2 = pth.normalize(localPath2);
          if (filetools.fs.existsSync(localPath2)) {
            const items = filetools.findFiles(localPath2);
            const self2 = this;
            if (items.length) {
              for (const filepath of items) {
                const p = pth.join(zipPath, relativePath(localPath2, filepath));
                if (filter14(p)) {
                  self2.addLocalFile(filepath, pth.dirname(p));
                }
              }
            }
          } else {
            throw Utils.Errors.FILE_NOT_FOUND(localPath2);
          }
        },
        /**
         * Asynchronous addLocalFolder
         * @param {string} localPath
         * @param {callback} callback
         * @param {string} [zipPath] optional path inside zip
         * @param {RegExp|function} [filter] optional RegExp or Function if files match will
         *               be included.
         */
        addLocalFolderAsync: function(localPath2, callback2, zipPath, filter14) {
          filter14 = filenameFilter(filter14);
          zipPath = zipPath ? fixPath(zipPath) : "";
          localPath2 = pth.normalize(localPath2);
          var self2 = this;
          filetools.fs.open(localPath2, "r", function(err) {
            if (err && err.code === "ENOENT") {
              callback2(void 0, Utils.Errors.FILE_NOT_FOUND(localPath2));
            } else if (err) {
              callback2(void 0, err);
            } else {
              var items = filetools.findFiles(localPath2);
              var i2 = -1;
              var next2 = function() {
                i2 += 1;
                if (i2 < items.length) {
                  var filepath = items[i2];
                  var p = relativePath(localPath2, filepath).split("\\").join("/");
                  p = p.normalize("NFD").replace(/[\u0300-\u036f]/g, "").replace(/[^\x20-\x7E]/g, "");
                  if (filter14(p)) {
                    filetools.fs.stat(filepath, function(er0, stats) {
                      if (er0) callback2(void 0, er0);
                      if (stats.isFile()) {
                        filetools.fs.readFile(filepath, function(er1, data) {
                          if (er1) {
                            callback2(void 0, er1);
                          } else {
                            self2.addFile(zipPath + p, data, "", stats);
                            next2();
                          }
                        });
                      } else {
                        self2.addFile(zipPath + p + "/", Buffer.alloc(0), "", stats);
                        next2();
                      }
                    });
                  } else {
                    process.nextTick(() => {
                      next2();
                    });
                  }
                } else {
                  callback2(true, void 0);
                }
              };
              next2();
            }
          });
        },
        /**
         * Adds a local directory and all its nested files and directories to the archive
         *
         * @param {object | string} options - options object, if it is string it us used as localPath.
         * @param {string} options.localPath - Local path to the folder.
         * @param {string} [options.zipPath] - optional path inside zip.
         * @param {RegExp|function} [options.filter] - optional RegExp or Function if files match will be included.
         * @param {function|string} [options.namefix] - optional function to help fix filename
         * @param {doneCallback} callback - The callback that handles the response.
         *
         */
        addLocalFolderAsync2: function(options2, callback2) {
          const self2 = this;
          options2 = typeof options2 === "object" ? options2 : { localPath: options2 };
          localPath = pth.resolve(fixPath(options2.localPath));
          let { zipPath, filter: filter14, namefix } = options2;
          if (filter14 instanceof RegExp) {
            filter14 = /* @__PURE__ */ (function(rx) {
              return function(filename) {
                return rx.test(filename);
              };
            })(filter14);
          } else if ("function" !== typeof filter14) {
            filter14 = function() {
              return true;
            };
          }
          zipPath = zipPath ? fixPath(zipPath) : "";
          if (namefix == "latin1") {
            namefix = (str2) => str2.normalize("NFD").replace(/[\u0300-\u036f]/g, "").replace(/[^\x20-\x7E]/g, "");
          }
          if (typeof namefix !== "function") namefix = (str2) => str2;
          const relPathFix = (entry) => pth.join(zipPath, namefix(relativePath(localPath, entry)));
          const fileNameFix = (entry) => pth.win32.basename(pth.win32.normalize(namefix(entry)));
          filetools.fs.open(localPath, "r", function(err) {
            if (err && err.code === "ENOENT") {
              callback2(void 0, Utils.Errors.FILE_NOT_FOUND(localPath));
            } else if (err) {
              callback2(void 0, err);
            } else {
              filetools.findFilesAsync(localPath, function(err2, fileEntries) {
                if (err2) return callback2(err2);
                fileEntries = fileEntries.filter((dir) => filter14(relPathFix(dir)));
                if (!fileEntries.length) callback2(void 0, false);
                setImmediate(
                  fileEntries.reverse().reduce(function(next2, entry) {
                    return function(err3, done) {
                      if (err3 || done === false) return setImmediate(next2, err3, false);
                      self2.addLocalFileAsync(
                        {
                          localPath: entry,
                          zipPath: pth.dirname(relPathFix(entry)),
                          zipName: fileNameFix(entry)
                        },
                        next2
                      );
                    };
                  }, callback2)
                );
              });
            }
          });
        },
        /**
         * Adds a local directory and all its nested files and directories to the archive
         *
         * @param {string} localPath - path where files will be extracted
         * @param {object} props - optional properties
         * @param {string} [props.zipPath] - optional path inside zip
         * @param {RegExp|function} [props.filter] - optional RegExp or Function if files match will be included.
         * @param {function|string} [props.namefix] - optional function to help fix filename
         */
        addLocalFolderPromise: function(localPath2, props3) {
          return new Promise((resolve3, reject3) => {
            this.addLocalFolderAsync2(Object.assign({ localPath: localPath2 }, props3), (err, done) => {
              if (err) reject3(err);
              if (done) resolve3(this);
            });
          });
        },
        /**
         * Allows you to create a entry (file or directory) in the zip file.
         * If you want to create a directory the entryName must end in / and a null buffer should be provided.
         * Comment and attributes are optional
         *
         * @param {string} entryName
         * @param {Buffer | string} content - file content as buffer or utf8 coded string
         * @param {string} [comment] - file comment
         * @param {number | object} [attr] - number as unix file permissions, object as filesystem Stats object
         */
        addFile: function(entryName, content, comment, attr) {
          entryName = zipnamefix(entryName);
          let entry = getEntry(entryName);
          const update2 = entry != null;
          if (!update2) {
            entry = new ZipEntry(opts2);
            entry.entryName = entryName;
          }
          entry.comment = comment || "";
          const isStat = "object" === typeof attr && attr instanceof filetools.fs.Stats;
          if (isStat) {
            entry.header.time = attr.mtime;
          }
          var fileattr = entry.isDirectory ? 16 : 0;
          let unix = entry.isDirectory ? 16384 : 32768;
          if (isStat) {
            unix |= 4095 & attr.mode;
          } else if ("number" === typeof attr) {
            unix |= 4095 & attr;
          } else {
            unix |= entry.isDirectory ? 493 : 420;
          }
          fileattr = (fileattr | unix << 16) >>> 0;
          entry.attr = fileattr;
          entry.setData(content);
          if (!update2) _zip.setEntry(entry);
          return entry;
        },
        /**
         * Returns an array of ZipEntry objects representing the files and folders inside the archive
         *
         * @param {string} [password]
         * @returns Array
         */
        getEntries: function(password) {
          _zip.password = password;
          return _zip ? _zip.entries : [];
        },
        /**
         * Returns a ZipEntry object representing the file or folder specified by ``name``.
         *
         * @param {string} name
         * @return ZipEntry
         */
        getEntry: function(name) {
          return getEntry(name);
        },
        getEntryCount: function() {
          return _zip.getEntryCount();
        },
        forEach: function(callback2) {
          return _zip.forEach(callback2);
        },
        /**
         * Extracts the given entry to the given targetPath
         * If the entry is a directory inside the archive, the entire directory and it's subdirectories will be extracted
         *
         * @param {string|ZipEntry} entry - ZipEntry object or String with the full path of the entry
         * @param {string} targetPath - Target folder where to write the file
         * @param {boolean} [maintainEntryPath=true] - If maintainEntryPath is true and the entry is inside a folder, the entry folder will be created in targetPath as well. Default is TRUE
         * @param {boolean} [overwrite=false] - If the file already exists at the target path, the file will be overwriten if this is true.
         * @param {boolean} [keepOriginalPermission=false] - The file will be set as the permission from the entry if this is true.
         * @param {string} [outFileName] - String If set will override the filename of the extracted file (Only works if the entry is a file)
         *
         * @return Boolean
         */
        extractEntryTo: function(entry, targetPath, maintainEntryPath, overwrite, keepOriginalPermission, outFileName) {
          overwrite = get_Bool(false, overwrite);
          keepOriginalPermission = get_Bool(false, keepOriginalPermission);
          maintainEntryPath = get_Bool(true, maintainEntryPath);
          outFileName = get_Str(keepOriginalPermission, outFileName);
          var item = getEntry(entry);
          if (!item) {
            throw Utils.Errors.NO_ENTRY();
          }
          var entryName = canonical(item.entryName);
          var target2 = sanitize(targetPath, outFileName && !item.isDirectory ? outFileName : maintainEntryPath ? entryName : pth.basename(entryName));
          if (item.isDirectory) {
            var children = _zip.getEntryChildren(item);
            children.forEach(function(child) {
              if (child.isDirectory) return;
              var content2 = child.getData();
              if (!content2) {
                throw Utils.Errors.CANT_EXTRACT_FILE();
              }
              var name = canonical(child.entryName);
              var childName = sanitize(targetPath, maintainEntryPath ? name : pth.basename(name));
              const fileAttr2 = keepOriginalPermission ? child.header.fileAttr : void 0;
              filetools.writeFileTo(childName, content2, overwrite, fileAttr2);
            });
            return true;
          }
          var content = item.getData(_zip.password);
          if (!content) throw Utils.Errors.CANT_EXTRACT_FILE();
          if (filetools.fs.existsSync(target2) && !overwrite) {
            throw Utils.Errors.CANT_OVERRIDE();
          }
          const fileAttr = keepOriginalPermission ? entry.header.fileAttr : void 0;
          filetools.writeFileTo(target2, content, overwrite, fileAttr);
          return true;
        },
        /**
         * Test the archive
         * @param {string} [pass]
         */
        test: function(pass) {
          if (!_zip) {
            return false;
          }
          for (var entry in _zip.entries) {
            try {
              if (entry.isDirectory) {
                continue;
              }
              var content = _zip.entries[entry].getData(pass);
              if (!content) {
                return false;
              }
            } catch (err) {
              return false;
            }
          }
          return true;
        },
        /**
         * Extracts the entire archive to the given location
         *
         * @param {string} targetPath Target location
         * @param {boolean} [overwrite=false] If the file already exists at the target path, the file will be overwriten if this is true.
         *                  Default is FALSE
         * @param {boolean} [keepOriginalPermission=false] The file will be set as the permission from the entry if this is true.
         *                  Default is FALSE
         * @param {string|Buffer} [pass] password
         */
        extractAllTo: function(targetPath, overwrite, keepOriginalPermission, pass) {
          keepOriginalPermission = get_Bool(false, keepOriginalPermission);
          pass = get_Str(keepOriginalPermission, pass);
          overwrite = get_Bool(false, overwrite);
          if (!_zip) throw Utils.Errors.NO_ZIP();
          _zip.entries.forEach(function(entry) {
            var entryName = sanitize(targetPath, canonical(entry.entryName));
            if (entry.isDirectory) {
              filetools.makeDir(entryName);
              return;
            }
            var content = entry.getData(pass);
            if (!content) {
              throw Utils.Errors.CANT_EXTRACT_FILE();
            }
            const fileAttr = keepOriginalPermission ? entry.header.fileAttr : void 0;
            filetools.writeFileTo(entryName, content, overwrite, fileAttr);
            try {
              filetools.fs.utimesSync(entryName, entry.header.time, entry.header.time);
            } catch (err) {
              throw Utils.Errors.CANT_EXTRACT_FILE();
            }
          });
        },
        /**
         * Asynchronous extractAllTo
         *
         * @param {string} targetPath Target location
         * @param {boolean} [overwrite=false] If the file already exists at the target path, the file will be overwriten if this is true.
         *                  Default is FALSE
         * @param {boolean} [keepOriginalPermission=false] The file will be set as the permission from the entry if this is true.
         *                  Default is FALSE
         * @param {function} callback The callback will be executed when all entries are extracted successfully or any error is thrown.
         */
        extractAllToAsync: function(targetPath, overwrite, keepOriginalPermission, callback2) {
          callback2 = get_Fun(overwrite, keepOriginalPermission, callback2);
          keepOriginalPermission = get_Bool(false, keepOriginalPermission);
          overwrite = get_Bool(false, overwrite);
          if (!callback2) {
            return new Promise((resolve3, reject3) => {
              this.extractAllToAsync(targetPath, overwrite, keepOriginalPermission, function(err) {
                if (err) {
                  reject3(err);
                } else {
                  resolve3(this);
                }
              });
            });
          }
          if (!_zip) {
            callback2(Utils.Errors.NO_ZIP());
            return;
          }
          targetPath = pth.resolve(targetPath);
          const getPath2 = (entry) => sanitize(targetPath, pth.normalize(canonical(entry.entryName)));
          const getError = (msg, file) => new Error(msg + ': "' + file + '"');
          const dirEntries = [];
          const fileEntries = [];
          _zip.entries.forEach((e) => {
            if (e.isDirectory) {
              dirEntries.push(e);
            } else {
              fileEntries.push(e);
            }
          });
          for (const entry of dirEntries) {
            const dirPath = getPath2(entry);
            const dirAttr = keepOriginalPermission ? entry.header.fileAttr : void 0;
            try {
              filetools.makeDir(dirPath);
              if (dirAttr) filetools.fs.chmodSync(dirPath, dirAttr);
              filetools.fs.utimesSync(dirPath, entry.header.time, entry.header.time);
            } catch (er) {
              callback2(getError("Unable to create folder", dirPath));
            }
          }
          fileEntries.reverse().reduce(function(next2, entry) {
            return function(err) {
              if (err) {
                next2(err);
              } else {
                const entryName = pth.normalize(canonical(entry.entryName));
                const filePath = sanitize(targetPath, entryName);
                entry.getDataAsync(function(content, err_1) {
                  if (err_1) {
                    next2(err_1);
                  } else if (!content) {
                    next2(Utils.Errors.CANT_EXTRACT_FILE());
                  } else {
                    const fileAttr = keepOriginalPermission ? entry.header.fileAttr : void 0;
                    filetools.writeFileToAsync(filePath, content, overwrite, fileAttr, function(succ) {
                      if (!succ) {
                        next2(getError("Unable to write file", filePath));
                      }
                      filetools.fs.utimes(filePath, entry.header.time, entry.header.time, function(err_2) {
                        if (err_2) {
                          next2(getError("Unable to set times", filePath));
                        } else {
                          next2();
                        }
                      });
                    });
                  }
                });
              }
            };
          }, callback2)();
        },
        /**
         * Writes the newly created zip file to disk at the specified location or if a zip was opened and no ``targetFileName`` is provided, it will overwrite the opened zip
         *
         * @param {string} targetFileName
         * @param {function} callback
         */
        writeZip: function(targetFileName, callback2) {
          if (arguments.length === 1) {
            if (typeof targetFileName === "function") {
              callback2 = targetFileName;
              targetFileName = "";
            }
          }
          if (!targetFileName && opts2.filename) {
            targetFileName = opts2.filename;
          }
          if (!targetFileName) return;
          var zipData = _zip.compressToBuffer();
          if (zipData) {
            var ok = filetools.writeFileTo(targetFileName, zipData, true);
            if (typeof callback2 === "function") callback2(!ok ? new Error("failed") : null, "");
          }
        },
        /**
                 *
                 * @param {string} targetFileName
                 * @param {object} [props]
                 * @param {boolean} [props.overwrite=true] If the file already exists at the target path, the file will be overwriten if this is true.
                 * @param {boolean} [props.perm] The file will be set as the permission from the entry if this is true.
        
                 * @returns {Promise<void>}
                 */
        writeZipPromise: function(targetFileName, props3) {
          const { overwrite, perm } = Object.assign({ overwrite: true }, props3);
          return new Promise((resolve3, reject3) => {
            if (!targetFileName && opts2.filename) targetFileName = opts2.filename;
            if (!targetFileName) reject3("ADM-ZIP: ZIP File Name Missing");
            this.toBufferPromise().then((zipData) => {
              const ret2 = (done) => done ? resolve3(done) : reject3("ADM-ZIP: Wasn't able to write zip file");
              filetools.writeFileToAsync(targetFileName, zipData, overwrite, perm, ret2);
            }, reject3);
          });
        },
        /**
         * @returns {Promise<Buffer>} A promise to the Buffer.
         */
        toBufferPromise: function() {
          return new Promise((resolve3, reject3) => {
            _zip.toAsyncBuffer(resolve3, reject3);
          });
        },
        /**
         * Returns the content of the entire zip file as a Buffer object
         *
         * @prop {function} [onSuccess]
         * @prop {function} [onFail]
         * @prop {function} [onItemStart]
         * @prop {function} [onItemEnd]
         * @returns {Buffer}
         */
        toBuffer: function(onSuccess, onFail, onItemStart, onItemEnd) {
          if (typeof onSuccess === "function") {
            _zip.toAsyncBuffer(onSuccess, onFail, onItemStart, onItemEnd);
            return null;
          }
          return _zip.compressToBuffer();
        }
      };
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/temp-dir/2.0.0/4198b35b752c049d4a3d393f440171b7cd6505e7cfe07700ea9fdea5db17538a/node_modules/temp-dir/index.js
var require_temp_dir = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/temp-dir/2.0.0/4198b35b752c049d4a3d393f440171b7cd6505e7cfe07700ea9fdea5db17538a/node_modules/temp-dir/index.js"(exports2, module2) {
    "use strict";
    var fs111 = __require("fs");
    var os15 = __require("os");
    var tempDirectorySymbol = /* @__PURE__ */ Symbol.for("__RESOLVED_TEMP_DIRECTORY__");
    if (!global[tempDirectorySymbol]) {
      Object.defineProperty(global, tempDirectorySymbol, {
        value: fs111.realpathSync(os15.tmpdir())
      });
    }
    module2.exports = global[tempDirectorySymbol];
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/is-stream/3.0.0/1172e239beab4f8075b8ee098e2c3ecfe5a0818d863da9dc4268b6563cc63496/node_modules/is-stream/index.js
var init_is_stream2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/is-stream/3.0.0/1172e239beab4f8075b8ee098e2c3ecfe5a0818d863da9dc4268b6563cc63496/node_modules/is-stream/index.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/tempy/3.0.0/3d67cef696bf4252940e546ecc39f835e45f7d4463663a59cd65519fd5d12c64/node_modules/tempy/index.js
import fs12 from "node:fs";
import path26 from "node:path";
import stream from "node:stream";
import { promisify as promisify5 } from "node:util";
function temporaryDirectory({ prefix = "" } = {}) {
  const directory = getPath(prefix);
  fs12.mkdirSync(directory);
  return directory;
}
var import_temp_dir, import_temp_dir2, pipeline, getPath;
var init_tempy = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/tempy/3.0.0/3d67cef696bf4252940e546ecc39f835e45f7d4463663a59cd65519fd5d12c64/node_modules/tempy/index.js"() {
    init_unique_string();
    import_temp_dir = __toESM(require_temp_dir(), 1);
    init_is_stream2();
    import_temp_dir2 = __toESM(require_temp_dir(), 1);
    pipeline = promisify5(stream.pipeline);
    getPath = (prefix = "") => path26.join(import_temp_dir.default, prefix + uniqueString());
  }
});

// ../fetching/binary-fetcher/lib/index.js
import fsPromises2 from "node:fs/promises";
import path27 from "node:path";
import util6 from "node:util";
function createBinaryFetcher(ctx) {
  const archiveFilters = /* @__PURE__ */ new Map();
  for (const [name, pattern] of Object.entries(ctx.archiveFilters ?? {})) {
    try {
      archiveFilters.set(name, { pattern, regex: new RegExp(pattern) });
    } catch (err) {
      const detail = util6.types.isNativeError(err) ? `: ${err.message}` : "";
      throw new PnpmError("INVALID_ARCHIVE_FILTER", `Invalid archive filter regex for "${name}"${detail}: ${pattern}`);
    }
  }
  const fetchBinary = async (cafs, resolution, opts2) => {
    if (ctx.offline) {
      throw new PnpmError("CANNOT_DOWNLOAD_BINARY_OFFLINE", `Cannot download binary "${resolution.url}" because offline mode is enabled.`);
    }
    const manifest = {
      name: opts2.pkg.name,
      version: opts2.pkg.version,
      bin: resolution.bin
    };
    const archiveFilter = opts2.pkg.name != null ? archiveFilters.get(opts2.pkg.name) : void 0;
    let fetchResult;
    switch (resolution.archive) {
      case "tarball": {
        fetchResult = await ctx.fetchFromRemoteTarball(cafs, {
          tarball: resolution.url,
          integrity: resolution.integrity
        }, {
          ...opts2,
          appendManifest: manifest,
          ignoreFilePattern: archiveFilter?.pattern ?? opts2.ignoreFilePattern
        });
        break;
      }
      case "zip": {
        const tempLocation = await cafs.tempDir();
        await downloadAndUnpackZip(ctx.fetch, {
          url: resolution.url,
          integrity: resolution.integrity,
          basename: resolution.prefix ?? "",
          ignoreEntry: archiveFilter?.regex
        }, tempLocation);
        fetchResult = await addFilesFromDir({
          storeDir: cafs.storeDir,
          storeIndex: ctx.storeIndex,
          dir: tempLocation,
          filesIndexFile: opts2.filesIndexFile,
          readManifest: false,
          appendManifest: manifest,
          includeNodeModules: true
        });
        break;
      }
      default: {
        throw new PnpmError("NOT_SUPPORTED_ARCHIVE", `The binary fetcher doesn't support archive type ${resolution.archive}`);
      }
    }
    return {
      ...fetchResult,
      manifest
    };
  };
  return {
    binary: fetchBinary
  };
}
async function downloadAndUnpackZip(fetchFromRegistry, assetInfo, targetDir) {
  const tmp = path27.join(temporaryDirectory(), "pnpm.zip");
  try {
    await downloadWithIntegrityCheck(fetchFromRegistry, assetInfo, tmp);
    await extractZipToTarget(tmp, assetInfo.basename, targetDir, assetInfo.ignoreEntry);
  } finally {
    try {
      await fsPromises2.unlink(tmp);
    } catch {
    }
  }
}
async function downloadWithIntegrityCheck(fetchFromRegistry, { url: url7, integrity }, tmpPath) {
  const response = await fetchFromRegistry(url7);
  const chunks = [];
  for await (const chunk of response.body) {
    chunks.push(chunk);
  }
  const data = Buffer.concat(chunks);
  try {
    import_ssri3.default.checkData(data, integrity, { error: true });
  } catch (err) {
    if (!(err instanceof Error) || !("expected" in err) || !("found" in err)) {
      throw err;
    }
    throw new PnpmError("TARBALL_INTEGRITY", `Got unexpected checksum for "${url7}". Wanted "${err.expected}". Got "${err.found}".`);
  }
  await fsPromises2.writeFile(tmpPath, data);
}
async function extractZipToTarget(zipPath, basename2, targetDir, ignoreEntry) {
  const zip = new import_adm_zip.default(zipPath);
  const nodeDir = basename2 === "" ? targetDir : path27.dirname(targetDir);
  if (basename2 !== "") {
    validatePathSecurity(nodeDir, basename2);
  }
  const basenamePrefix = basename2 === "" ? "" : `${basename2}/`;
  const testEntry = toStatelessTester(ignoreEntry);
  for (const entry of zip.getEntries()) {
    if (entry.isDirectory)
      continue;
    const entryPath = entry.entryName;
    validatePathSecurity(nodeDir, entryPath);
    if (testEntry) {
      const relative2 = basenamePrefix && entryPath.startsWith(basenamePrefix) ? entryPath.slice(basenamePrefix.length) : entryPath;
      if (testEntry(relative2))
        continue;
    }
    zip.extractEntryTo(entry, nodeDir, true, true);
  }
  const extractedDir = path27.join(nodeDir, basename2);
  await renameOverwrite(extractedDir, targetDir);
}
function toStatelessTester(regex2) {
  if (!regex2)
    return void 0;
  if (!regex2.global && !regex2.sticky) {
    return (input) => regex2.test(input);
  }
  const safeFlags = regex2.flags.replace(/[gy]/g, "");
  const clone3 = new RegExp(regex2.source, safeFlags);
  return (input) => clone3.test(input);
}
function validatePathSecurity(basePath, targetPath) {
  if (path27.isAbsolute(targetPath)) {
    throw new PnpmError("PATH_TRAVERSAL", `Refusing to extract path "${targetPath}" - absolute paths are not allowed`);
  }
  const normalizedTarget = path27.resolve(basePath, targetPath);
  if (!isSubdir(basePath, normalizedTarget) && normalizedTarget !== basePath) {
    throw new PnpmError("PATH_TRAVERSAL", `Refusing to extract path "${targetPath}" outside of target directory`);
  }
}
var import_adm_zip, import_ssri3;
var init_lib35 = __esm({
  "../fetching/binary-fetcher/lib/index.js"() {
    "use strict";
    init_lib2();
    init_lib4();
    import_adm_zip = __toESM(require_adm_zip(), 1);
    init_is_subdir();
    init_rename_overwrite();
    import_ssri3 = __toESM(require_lib6(), 1);
    init_tempy();
  }
});

// ../building/pkg-requires-build/lib/index.js
function pkgRequiresBuild(manifest, filesIndex) {
  return Boolean(manifest?.scripts != null && (Boolean(manifest.scripts.preinstall) || Boolean(manifest.scripts.install) || Boolean(manifest.scripts.postinstall)) || filesIncludeInstallScripts(filesIndex));
}
function filesIncludeInstallScripts(filesIndex) {
  const keys4 = filesIndex instanceof Map ? filesIndex.keys() : Object.keys(filesIndex);
  for (const filename of keys4) {
    if (filename === "binding.gyp") {
      return true;
    }
    if (filename.match(/^\.hooks[\\/]/) != null) {
      return true;
    }
  }
  return false;
}
var init_lib36 = __esm({
  "../building/pkg-requires-build/lib/index.js"() {
    "use strict";
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/balanced-match/4.0.4/20ce58b2b100ca858b16cc41734471d4d3b319709eb185a5c2c65823a18382f2/node_modules/balanced-match/dist/commonjs/index.js
var require_commonjs2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/balanced-match/4.0.4/20ce58b2b100ca858b16cc41734471d4d3b319709eb185a5c2c65823a18382f2/node_modules/balanced-match/dist/commonjs/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.range = exports2.balanced = void 0;
    var balanced = (a2, b, str2) => {
      const ma = a2 instanceof RegExp ? maybeMatch(a2, str2) : a2;
      const mb = b instanceof RegExp ? maybeMatch(b, str2) : b;
      const r = ma !== null && mb != null && (0, exports2.range)(ma, mb, str2);
      return r && {
        start: r[0],
        end: r[1],
        pre: str2.slice(0, r[0]),
        body: str2.slice(r[0] + ma.length, r[1]),
        post: str2.slice(r[1] + mb.length)
      };
    };
    exports2.balanced = balanced;
    var maybeMatch = (reg, str2) => {
      const m = str2.match(reg);
      return m ? m[0] : null;
    };
    var range = (a2, b, str2) => {
      let begs, beg, left, right = void 0, result2;
      let ai = str2.indexOf(a2);
      let bi = str2.indexOf(b, ai + 1);
      let i2 = ai;
      if (ai >= 0 && bi > 0) {
        if (a2 === b) {
          return [ai, bi];
        }
        begs = [];
        left = str2.length;
        while (i2 >= 0 && !result2) {
          if (i2 === ai) {
            begs.push(i2);
            ai = str2.indexOf(a2, i2 + 1);
          } else if (begs.length === 1) {
            const r = begs.pop();
            if (r !== void 0)
              result2 = [r, bi];
          } else {
            beg = begs.pop();
            if (beg !== void 0 && beg < left) {
              left = beg;
              right = bi;
            }
            bi = str2.indexOf(b, i2 + 1);
          }
          i2 = ai < bi && ai >= 0 ? ai : bi;
        }
        if (begs.length && right !== void 0) {
          result2 = [left, right];
        }
      }
      return result2;
    };
    exports2.range = range;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/brace-expansion/5.0.6/acd0cc5984b30810a24c5b8148c526ef9c8820f7ed1903cabb0e3e8ad6609793/node_modules/brace-expansion/dist/commonjs/index.js
var require_commonjs3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/brace-expansion/5.0.6/acd0cc5984b30810a24c5b8148c526ef9c8820f7ed1903cabb0e3e8ad6609793/node_modules/brace-expansion/dist/commonjs/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.EXPANSION_MAX = void 0;
    exports2.expand = expand;
    var balanced_match_1 = require_commonjs2();
    var escSlash = "\0SLASH" + Math.random() + "\0";
    var escOpen = "\0OPEN" + Math.random() + "\0";
    var escClose = "\0CLOSE" + Math.random() + "\0";
    var escComma = "\0COMMA" + Math.random() + "\0";
    var escPeriod = "\0PERIOD" + Math.random() + "\0";
    var escSlashPattern = new RegExp(escSlash, "g");
    var escOpenPattern = new RegExp(escOpen, "g");
    var escClosePattern = new RegExp(escClose, "g");
    var escCommaPattern = new RegExp(escComma, "g");
    var escPeriodPattern = new RegExp(escPeriod, "g");
    var slashPattern = /\\\\/g;
    var openPattern = /\\{/g;
    var closePattern = /\\}/g;
    var commaPattern = /\\,/g;
    var periodPattern = /\\\./g;
    exports2.EXPANSION_MAX = 1e5;
    function numeric(str2) {
      return !isNaN(str2) ? parseInt(str2, 10) : str2.charCodeAt(0);
    }
    function escapeBraces(str2) {
      return str2.replace(slashPattern, escSlash).replace(openPattern, escOpen).replace(closePattern, escClose).replace(commaPattern, escComma).replace(periodPattern, escPeriod);
    }
    function unescapeBraces(str2) {
      return str2.replace(escSlashPattern, "\\").replace(escOpenPattern, "{").replace(escClosePattern, "}").replace(escCommaPattern, ",").replace(escPeriodPattern, ".");
    }
    function parseCommaParts(str2) {
      if (!str2) {
        return [""];
      }
      const parts = [];
      const m = (0, balanced_match_1.balanced)("{", "}", str2);
      if (!m) {
        return str2.split(",");
      }
      const { pre, body, post } = m;
      const p = pre.split(",");
      p[p.length - 1] += "{" + body + "}";
      const postParts = parseCommaParts(post);
      if (post.length) {
        ;
        p[p.length - 1] += postParts.shift();
        p.push.apply(p, postParts);
      }
      parts.push.apply(parts, p);
      return parts;
    }
    function expand(str2, options = {}) {
      if (!str2) {
        return [];
      }
      const { max: max3 = exports2.EXPANSION_MAX } = options;
      if (str2.slice(0, 2) === "{}") {
        str2 = "\\{\\}" + str2.slice(2);
      }
      return expand_(escapeBraces(str2), max3, true).map(unescapeBraces);
    }
    function embrace(str2) {
      return "{" + str2 + "}";
    }
    function isPadded(el) {
      return /^-?0\d/.test(el);
    }
    function lte(i2, y) {
      return i2 <= y;
    }
    function gte(i2, y) {
      return i2 >= y;
    }
    function expand_(str2, max3, isTop) {
      const expansions = [];
      const m = (0, balanced_match_1.balanced)("{", "}", str2);
      if (!m)
        return [str2];
      const pre = m.pre;
      const post = m.post.length ? expand_(m.post, max3, false) : [""];
      if (/\$$/.test(m.pre)) {
        for (let k2 = 0; k2 < post.length && k2 < max3; k2++) {
          const expansion = pre + "{" + m.body + "}" + post[k2];
          expansions.push(expansion);
        }
      } else {
        const isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body);
        const isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body);
        const isSequence = isNumericSequence || isAlphaSequence;
        const isOptions = m.body.indexOf(",") >= 0;
        if (!isSequence && !isOptions) {
          if (m.post.match(/,(?!,).*\}/)) {
            str2 = m.pre + "{" + m.body + escClose + m.post;
            return expand_(str2, max3, true);
          }
          return [str2];
        }
        let n2;
        if (isSequence) {
          n2 = m.body.split(/\.\./);
        } else {
          n2 = parseCommaParts(m.body);
          if (n2.length === 1 && n2[0] !== void 0) {
            n2 = expand_(n2[0], max3, false).map(embrace);
            if (n2.length === 1) {
              return post.map((p) => m.pre + n2[0] + p);
            }
          }
        }
        let N;
        if (isSequence && n2[0] !== void 0 && n2[1] !== void 0) {
          const x = numeric(n2[0]);
          const y = numeric(n2[1]);
          const width = Math.max(n2[0].length, n2[1].length);
          let incr = n2.length === 3 && n2[2] !== void 0 ? Math.max(Math.abs(numeric(n2[2])), 1) : 1;
          let test = lte;
          const reverse3 = y < x;
          if (reverse3) {
            incr *= -1;
            test = gte;
          }
          const pad3 = n2.some(isPadded);
          N = [];
          for (let i2 = x; test(i2, y) && N.length < max3; i2 += incr) {
            let c3;
            if (isAlphaSequence) {
              c3 = String.fromCharCode(i2);
              if (c3 === "\\") {
                c3 = "";
              }
            } else {
              c3 = String(i2);
              if (pad3) {
                const need = width - c3.length;
                if (need > 0) {
                  const z = new Array(need + 1).join("0");
                  if (i2 < 0) {
                    c3 = "-" + z + c3.slice(1);
                  } else {
                    c3 = z + c3;
                  }
                }
              }
            }
            N.push(c3);
          }
        } else {
          N = [];
          for (let j2 = 0; j2 < n2.length; j2++) {
            N.push.apply(N, expand_(n2[j2], max3, false));
          }
        }
        for (let j2 = 0; j2 < N.length; j2++) {
          for (let k2 = 0; k2 < post.length && expansions.length < max3; k2++) {
            const expansion = pre + N[j2] + post[k2];
            if (!isTop || isSequence || expansion) {
              expansions.push(expansion);
            }
          }
        }
      }
      return expansions;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/minimatch/10.2.5/f03adfecfd90830634562b19e6cdeddb44da31ac3330189056e108744a6067fa/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js
var require_assert_valid_pattern = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/minimatch/10.2.5/f03adfecfd90830634562b19e6cdeddb44da31ac3330189056e108744a6067fa/node_modules/minimatch/dist/commonjs/assert-valid-pattern.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.assertValidPattern = void 0;
    var MAX_PATTERN_LENGTH = 1024 * 64;
    var assertValidPattern = (pattern) => {
      if (typeof pattern !== "string") {
        throw new TypeError("invalid pattern");
      }
      if (pattern.length > MAX_PATTERN_LENGTH) {
        throw new TypeError("pattern is too long");
      }
    };
    exports2.assertValidPattern = assertValidPattern;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/minimatch/10.2.5/f03adfecfd90830634562b19e6cdeddb44da31ac3330189056e108744a6067fa/node_modules/minimatch/dist/commonjs/brace-expressions.js
var require_brace_expressions = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/minimatch/10.2.5/f03adfecfd90830634562b19e6cdeddb44da31ac3330189056e108744a6067fa/node_modules/minimatch/dist/commonjs/brace-expressions.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.parseClass = void 0;
    var posixClasses = {
      "[:alnum:]": ["\\p{L}\\p{Nl}\\p{Nd}", true],
      "[:alpha:]": ["\\p{L}\\p{Nl}", true],
      "[:ascii:]": ["\\x00-\\x7f", false],
      "[:blank:]": ["\\p{Zs}\\t", true],
      "[:cntrl:]": ["\\p{Cc}", true],
      "[:digit:]": ["\\p{Nd}", true],
      "[:graph:]": ["\\p{Z}\\p{C}", true, true],
      "[:lower:]": ["\\p{Ll}", true],
      "[:print:]": ["\\p{C}", true],
      "[:punct:]": ["\\p{P}", true],
      "[:space:]": ["\\p{Z}\\t\\r\\n\\v\\f", true],
      "[:upper:]": ["\\p{Lu}", true],
      "[:word:]": ["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}", true],
      "[:xdigit:]": ["A-Fa-f0-9", false]
    };
    var braceEscape = (s) => s.replace(/[[\]\\-]/g, "\\$&");
    var regexpEscape = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
    var rangesToString = (ranges) => ranges.join("");
    var parseClass = (glob2, position3) => {
      const pos = position3;
      if (glob2.charAt(pos) !== "[") {
        throw new Error("not in a brace expression");
      }
      const ranges = [];
      const negs = [];
      let i2 = pos + 1;
      let sawStart = false;
      let uflag = false;
      let escaping = false;
      let negate = false;
      let endPos = pos;
      let rangeStart = "";
      WHILE: while (i2 < glob2.length) {
        const c3 = glob2.charAt(i2);
        if ((c3 === "!" || c3 === "^") && i2 === pos + 1) {
          negate = true;
          i2++;
          continue;
        }
        if (c3 === "]" && sawStart && !escaping) {
          endPos = i2 + 1;
          break;
        }
        sawStart = true;
        if (c3 === "\\") {
          if (!escaping) {
            escaping = true;
            i2++;
            continue;
          }
        }
        if (c3 === "[" && !escaping) {
          for (const [cls, [unip, u4, neg]] of Object.entries(posixClasses)) {
            if (glob2.startsWith(cls, i2)) {
              if (rangeStart) {
                return ["$.", false, glob2.length - pos, true];
              }
              i2 += cls.length;
              if (neg)
                negs.push(unip);
              else
                ranges.push(unip);
              uflag = uflag || u4;
              continue WHILE;
            }
          }
        }
        escaping = false;
        if (rangeStart) {
          if (c3 > rangeStart) {
            ranges.push(braceEscape(rangeStart) + "-" + braceEscape(c3));
          } else if (c3 === rangeStart) {
            ranges.push(braceEscape(c3));
          }
          rangeStart = "";
          i2++;
          continue;
        }
        if (glob2.startsWith("-]", i2 + 1)) {
          ranges.push(braceEscape(c3 + "-"));
          i2 += 2;
          continue;
        }
        if (glob2.startsWith("-", i2 + 1)) {
          rangeStart = c3;
          i2 += 2;
          continue;
        }
        ranges.push(braceEscape(c3));
        i2++;
      }
      if (endPos < i2) {
        return ["", false, 0, false];
      }
      if (!ranges.length && !negs.length) {
        return ["$.", false, glob2.length - pos, true];
      }
      if (negs.length === 0 && ranges.length === 1 && /^\\?.$/.test(ranges[0]) && !negate) {
        const r = ranges[0].length === 2 ? ranges[0].slice(-1) : ranges[0];
        return [regexpEscape(r), false, endPos - pos, false];
      }
      const sranges = "[" + (negate ? "^" : "") + rangesToString(ranges) + "]";
      const snegs = "[" + (negate ? "" : "^") + rangesToString(negs) + "]";
      const comb = ranges.length && negs.length ? "(" + sranges + "|" + snegs + ")" : ranges.length ? sranges : snegs;
      return [comb, uflag, endPos - pos, true];
    };
    exports2.parseClass = parseClass;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/minimatch/10.2.5/f03adfecfd90830634562b19e6cdeddb44da31ac3330189056e108744a6067fa/node_modules/minimatch/dist/commonjs/unescape.js
var require_unescape = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/minimatch/10.2.5/f03adfecfd90830634562b19e6cdeddb44da31ac3330189056e108744a6067fa/node_modules/minimatch/dist/commonjs/unescape.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.unescape = void 0;
    var unescape2 = (s, { windowsPathsNoEscape = false, magicalBraces = true } = {}) => {
      if (magicalBraces) {
        return windowsPathsNoEscape ? s.replace(/\[([^/\\])\]/g, "$1") : s.replace(/((?!\\).|^)\[([^/\\])\]/g, "$1$2").replace(/\\([^/])/g, "$1");
      }
      return windowsPathsNoEscape ? s.replace(/\[([^/\\{}])\]/g, "$1") : s.replace(/((?!\\).|^)\[([^/\\{}])\]/g, "$1$2").replace(/\\([^/{}])/g, "$1");
    };
    exports2.unescape = unescape2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/minimatch/10.2.5/f03adfecfd90830634562b19e6cdeddb44da31ac3330189056e108744a6067fa/node_modules/minimatch/dist/commonjs/ast.js
var require_ast = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/minimatch/10.2.5/f03adfecfd90830634562b19e6cdeddb44da31ac3330189056e108744a6067fa/node_modules/minimatch/dist/commonjs/ast.js"(exports2) {
    "use strict";
    var _a;
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.AST = void 0;
    var brace_expressions_js_1 = require_brace_expressions();
    var unescape_js_1 = require_unescape();
    var types3 = /* @__PURE__ */ new Set(["!", "?", "+", "*", "@"]);
    var isExtglobType = (c3) => types3.has(c3);
    var isExtglobAST = (c3) => isExtglobType(c3.type);
    var adoptionMap = /* @__PURE__ */ new Map([
      ["!", ["@"]],
      ["?", ["?", "@"]],
      ["@", ["@"]],
      ["*", ["*", "+", "?", "@"]],
      ["+", ["+", "@"]]
    ]);
    var adoptionWithSpaceMap = /* @__PURE__ */ new Map([
      ["!", ["?"]],
      ["@", ["?"]],
      ["+", ["?", "*"]]
    ]);
    var adoptionAnyMap = /* @__PURE__ */ new Map([
      ["!", ["?", "@"]],
      ["?", ["?", "@"]],
      ["@", ["?", "@"]],
      ["*", ["*", "+", "?", "@"]],
      ["+", ["+", "@", "?", "*"]]
    ]);
    var usurpMap = /* @__PURE__ */ new Map([
      ["!", /* @__PURE__ */ new Map([["!", "@"]])],
      [
        "?",
        /* @__PURE__ */ new Map([
          ["*", "*"],
          ["+", "*"]
        ])
      ],
      [
        "@",
        /* @__PURE__ */ new Map([
          ["!", "!"],
          ["?", "?"],
          ["@", "@"],
          ["*", "*"],
          ["+", "+"]
        ])
      ],
      [
        "+",
        /* @__PURE__ */ new Map([
          ["?", "*"],
          ["*", "*"]
        ])
      ]
    ]);
    var startNoTraversal = "(?!(?:^|/)\\.\\.?(?:$|/))";
    var startNoDot = "(?!\\.)";
    var addPatternStart = /* @__PURE__ */ new Set(["[", "."]);
    var justDots = /* @__PURE__ */ new Set(["..", "."]);
    var reSpecials = new Set("().*{}+?[]^$\\!");
    var regExpEscape = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
    var qmark = "[^/]";
    var star = qmark + "*?";
    var starNoEmpty = qmark + "+?";
    var ID = 0;
    var AST = class {
      type;
      #root;
      #hasMagic;
      #uflag = false;
      #parts = [];
      #parent;
      #parentIndex;
      #negs;
      #filledNegs = false;
      #options;
      #toString;
      // set to true if it's an extglob with no children
      // (which really means one child of '')
      #emptyExt = false;
      id = ++ID;
      get depth() {
        return (this.#parent?.depth ?? -1) + 1;
      }
      [/* @__PURE__ */ Symbol.for("nodejs.util.inspect.custom")]() {
        return {
          "@@type": "AST",
          id: this.id,
          type: this.type,
          root: this.#root.id,
          parent: this.#parent?.id,
          depth: this.depth,
          partsLength: this.#parts.length,
          parts: this.#parts
        };
      }
      constructor(type4, parent, options = {}) {
        this.type = type4;
        if (type4)
          this.#hasMagic = true;
        this.#parent = parent;
        this.#root = this.#parent ? this.#parent.#root : this;
        this.#options = this.#root === this ? options : this.#root.#options;
        this.#negs = this.#root === this ? [] : this.#root.#negs;
        if (type4 === "!" && !this.#root.#filledNegs)
          this.#negs.push(this);
        this.#parentIndex = this.#parent ? this.#parent.#parts.length : 0;
      }
      get hasMagic() {
        if (this.#hasMagic !== void 0)
          return this.#hasMagic;
        for (const p of this.#parts) {
          if (typeof p === "string")
            continue;
          if (p.type || p.hasMagic)
            return this.#hasMagic = true;
        }
        return this.#hasMagic;
      }
      // reconstructs the pattern
      toString() {
        return this.#toString !== void 0 ? this.#toString : !this.type ? this.#toString = this.#parts.map((p) => String(p)).join("") : this.#toString = this.type + "(" + this.#parts.map((p) => String(p)).join("|") + ")";
      }
      #fillNegs() {
        if (this !== this.#root)
          throw new Error("should only call on root");
        if (this.#filledNegs)
          return this;
        this.toString();
        this.#filledNegs = true;
        let n2;
        while (n2 = this.#negs.pop()) {
          if (n2.type !== "!")
            continue;
          let p = n2;
          let pp = p.#parent;
          while (pp) {
            for (let i2 = p.#parentIndex + 1; !pp.type && i2 < pp.#parts.length; i2++) {
              for (const part of n2.#parts) {
                if (typeof part === "string") {
                  throw new Error("string part in extglob AST??");
                }
                part.copyIn(pp.#parts[i2]);
              }
            }
            p = pp;
            pp = p.#parent;
          }
        }
        return this;
      }
      push(...parts) {
        for (const p of parts) {
          if (p === "")
            continue;
          if (typeof p !== "string" && !(p instanceof _a && p.#parent === this)) {
            throw new Error("invalid part: " + p);
          }
          this.#parts.push(p);
        }
      }
      toJSON() {
        const ret2 = this.type === null ? this.#parts.slice().map((p) => typeof p === "string" ? p : p.toJSON()) : [this.type, ...this.#parts.map((p) => p.toJSON())];
        if (this.isStart() && !this.type)
          ret2.unshift([]);
        if (this.isEnd() && (this === this.#root || this.#root.#filledNegs && this.#parent?.type === "!")) {
          ret2.push({});
        }
        return ret2;
      }
      isStart() {
        if (this.#root === this)
          return true;
        if (!this.#parent?.isStart())
          return false;
        if (this.#parentIndex === 0)
          return true;
        const p = this.#parent;
        for (let i2 = 0; i2 < this.#parentIndex; i2++) {
          const pp = p.#parts[i2];
          if (!(pp instanceof _a && pp.type === "!")) {
            return false;
          }
        }
        return true;
      }
      isEnd() {
        if (this.#root === this)
          return true;
        if (this.#parent?.type === "!")
          return true;
        if (!this.#parent?.isEnd())
          return false;
        if (!this.type)
          return this.#parent?.isEnd();
        const pl = this.#parent ? this.#parent.#parts.length : 0;
        return this.#parentIndex === pl - 1;
      }
      copyIn(part) {
        if (typeof part === "string")
          this.push(part);
        else
          this.push(part.clone(this));
      }
      clone(parent) {
        const c3 = new _a(this.type, parent);
        for (const p of this.#parts) {
          c3.copyIn(p);
        }
        return c3;
      }
      static #parseAST(str2, ast, pos, opt, extDepth) {
        const maxDepth = opt.maxExtglobRecursion ?? 2;
        let escaping = false;
        let inBrace = false;
        let braceStart = -1;
        let braceNeg = false;
        if (ast.type === null) {
          let i3 = pos;
          let acc2 = "";
          while (i3 < str2.length) {
            const c3 = str2.charAt(i3++);
            if (escaping || c3 === "\\") {
              escaping = !escaping;
              acc2 += c3;
              continue;
            }
            if (inBrace) {
              if (i3 === braceStart + 1) {
                if (c3 === "^" || c3 === "!") {
                  braceNeg = true;
                }
              } else if (c3 === "]" && !(i3 === braceStart + 2 && braceNeg)) {
                inBrace = false;
              }
              acc2 += c3;
              continue;
            } else if (c3 === "[") {
              inBrace = true;
              braceStart = i3;
              braceNeg = false;
              acc2 += c3;
              continue;
            }
            const doRecurse = !opt.noext && isExtglobType(c3) && str2.charAt(i3) === "(" && extDepth <= maxDepth;
            if (doRecurse) {
              ast.push(acc2);
              acc2 = "";
              const ext = new _a(c3, ast);
              i3 = _a.#parseAST(str2, ext, i3, opt, extDepth + 1);
              ast.push(ext);
              continue;
            }
            acc2 += c3;
          }
          ast.push(acc2);
          return i3;
        }
        let i2 = pos + 1;
        let part = new _a(null, ast);
        const parts = [];
        let acc = "";
        while (i2 < str2.length) {
          const c3 = str2.charAt(i2++);
          if (escaping || c3 === "\\") {
            escaping = !escaping;
            acc += c3;
            continue;
          }
          if (inBrace) {
            if (i2 === braceStart + 1) {
              if (c3 === "^" || c3 === "!") {
                braceNeg = true;
              }
            } else if (c3 === "]" && !(i2 === braceStart + 2 && braceNeg)) {
              inBrace = false;
            }
            acc += c3;
            continue;
          } else if (c3 === "[") {
            inBrace = true;
            braceStart = i2;
            braceNeg = false;
            acc += c3;
            continue;
          }
          const doRecurse = !opt.noext && isExtglobType(c3) && str2.charAt(i2) === "(" && /* c8 ignore start - the maxDepth is sufficient here */
          (extDepth <= maxDepth || ast && ast.#canAdoptType(c3));
          if (doRecurse) {
            const depthAdd = ast && ast.#canAdoptType(c3) ? 0 : 1;
            part.push(acc);
            acc = "";
            const ext = new _a(c3, part);
            part.push(ext);
            i2 = _a.#parseAST(str2, ext, i2, opt, extDepth + depthAdd);
            continue;
          }
          if (c3 === "|") {
            part.push(acc);
            acc = "";
            parts.push(part);
            part = new _a(null, ast);
            continue;
          }
          if (c3 === ")") {
            if (acc === "" && ast.#parts.length === 0) {
              ast.#emptyExt = true;
            }
            part.push(acc);
            acc = "";
            ast.push(...parts, part);
            return i2;
          }
          acc += c3;
        }
        ast.type = null;
        ast.#hasMagic = void 0;
        ast.#parts = [str2.substring(pos - 1)];
        return i2;
      }
      #canAdoptWithSpace(child) {
        return this.#canAdopt(child, adoptionWithSpaceMap);
      }
      #canAdopt(child, map26 = adoptionMap) {
        if (!child || typeof child !== "object" || child.type !== null || child.#parts.length !== 1 || this.type === null) {
          return false;
        }
        const gc = child.#parts[0];
        if (!gc || typeof gc !== "object" || gc.type === null) {
          return false;
        }
        return this.#canAdoptType(gc.type, map26);
      }
      #canAdoptType(c3, map26 = adoptionAnyMap) {
        return !!map26.get(this.type)?.includes(c3);
      }
      #adoptWithSpace(child, index) {
        const gc = child.#parts[0];
        const blank = new _a(null, gc, this.options);
        blank.#parts.push("");
        gc.push(blank);
        this.#adopt(child, index);
      }
      #adopt(child, index) {
        const gc = child.#parts[0];
        this.#parts.splice(index, 1, ...gc.#parts);
        for (const p of gc.#parts) {
          if (typeof p === "object")
            p.#parent = this;
        }
        this.#toString = void 0;
      }
      #canUsurpType(c3) {
        const m = usurpMap.get(this.type);
        return !!m?.has(c3);
      }
      #canUsurp(child) {
        if (!child || typeof child !== "object" || child.type !== null || child.#parts.length !== 1 || this.type === null || this.#parts.length !== 1) {
          return false;
        }
        const gc = child.#parts[0];
        if (!gc || typeof gc !== "object" || gc.type === null) {
          return false;
        }
        return this.#canUsurpType(gc.type);
      }
      #usurp(child) {
        const m = usurpMap.get(this.type);
        const gc = child.#parts[0];
        const nt = m?.get(gc.type);
        if (!nt)
          return false;
        this.#parts = gc.#parts;
        for (const p of this.#parts) {
          if (typeof p === "object") {
            p.#parent = this;
          }
        }
        this.type = nt;
        this.#toString = void 0;
        this.#emptyExt = false;
      }
      static fromGlob(pattern, options = {}) {
        const ast = new _a(null, void 0, options);
        _a.#parseAST(pattern, ast, 0, options, 0);
        return ast;
      }
      // returns the regular expression if there's magic, or the unescaped
      // string if not.
      toMMPattern() {
        if (this !== this.#root)
          return this.#root.toMMPattern();
        const glob2 = this.toString();
        const [re, body, hasMagic, uflag] = this.toRegExpSource();
        const anyMagic = hasMagic || this.#hasMagic || this.#options.nocase && !this.#options.nocaseMagicOnly && glob2.toUpperCase() !== glob2.toLowerCase();
        if (!anyMagic) {
          return body;
        }
        const flags = (this.#options.nocase ? "i" : "") + (uflag ? "u" : "");
        return Object.assign(new RegExp(`^${re}$`, flags), {
          _src: re,
          _glob: glob2
        });
      }
      get options() {
        return this.#options;
      }
      // returns the string match, the regexp source, whether there's magic
      // in the regexp (so a regular expression is required) and whether or
      // not the uflag is needed for the regular expression (for posix classes)
      // TODO: instead of injecting the start/end at this point, just return
      // the BODY of the regexp, along with the start/end portions suitable
      // for binding the start/end in either a joined full-path makeRe context
      // (where we bind to (^|/), or a standalone matchPart context (where
      // we bind to ^, and not /).  Otherwise slashes get duped!
      //
      // In part-matching mode, the start is:
      // - if not isStart: nothing
      // - if traversal possible, but not allowed: ^(?!\.\.?$)
      // - if dots allowed or not possible: ^
      // - if dots possible and not allowed: ^(?!\.)
      // end is:
      // - if not isEnd(): nothing
      // - else: $
      //
      // In full-path matching mode, we put the slash at the START of the
      // pattern, so start is:
      // - if first pattern: same as part-matching mode
      // - if not isStart(): nothing
      // - if traversal possible, but not allowed: /(?!\.\.?(?:$|/))
      // - if dots allowed or not possible: /
      // - if dots possible and not allowed: /(?!\.)
      // end is:
      // - if last pattern, same as part-matching mode
      // - else nothing
      //
      // Always put the (?:$|/) on negated tails, though, because that has to be
      // there to bind the end of the negated pattern portion, and it's easier to
      // just stick it in now rather than try to inject it later in the middle of
      // the pattern.
      //
      // We can just always return the same end, and leave it up to the caller
      // to know whether it's going to be used joined or in parts.
      // And, if the start is adjusted slightly, can do the same there:
      // - if not isStart: nothing
      // - if traversal possible, but not allowed: (?:/|^)(?!\.\.?$)
      // - if dots allowed or not possible: (?:/|^)
      // - if dots possible and not allowed: (?:/|^)(?!\.)
      //
      // But it's better to have a simpler binding without a conditional, for
      // performance, so probably better to return both start options.
      //
      // Then the caller just ignores the end if it's not the first pattern,
      // and the start always gets applied.
      //
      // But that's always going to be $ if it's the ending pattern, or nothing,
      // so the caller can just attach $ at the end of the pattern when building.
      //
      // So the todo is:
      // - better detect what kind of start is needed
      // - return both flavors of starting pattern
      // - attach $ at the end of the pattern when creating the actual RegExp
      //
      // Ah, but wait, no, that all only applies to the root when the first pattern
      // is not an extglob. If the first pattern IS an extglob, then we need all
      // that dot prevention biz to live in the extglob portions, because eg
      // +(*|.x*) can match .xy but not .yx.
      //
      // So, return the two flavors if it's #root and the first child is not an
      // AST, otherwise leave it to the child AST to handle it, and there,
      // use the (?:^|/) style of start binding.
      //
      // Even simplified further:
      // - Since the start for a join is eg /(?!\.) and the start for a part
      // is ^(?!\.), we can just prepend (?!\.) to the pattern (either root
      // or start or whatever) and prepend ^ or / at the Regexp construction.
      toRegExpSource(allowDot) {
        const dot = allowDot ?? !!this.#options.dot;
        if (this.#root === this) {
          this.#flatten();
          this.#fillNegs();
        }
        if (!isExtglobAST(this)) {
          const noEmpty = this.isStart() && this.isEnd() && !this.#parts.some((s) => typeof s !== "string");
          const src2 = this.#parts.map((p) => {
            const [re, _, hasMagic, uflag] = typeof p === "string" ? _a.#parseGlob(p, this.#hasMagic, noEmpty) : p.toRegExpSource(allowDot);
            this.#hasMagic = this.#hasMagic || hasMagic;
            this.#uflag = this.#uflag || uflag;
            return re;
          }).join("");
          let start2 = "";
          if (this.isStart()) {
            if (typeof this.#parts[0] === "string") {
              const dotTravAllowed = this.#parts.length === 1 && justDots.has(this.#parts[0]);
              if (!dotTravAllowed) {
                const aps = addPatternStart;
                const needNoTrav = (
                  // dots are allowed, and the pattern starts with [ or .
                  dot && aps.has(src2.charAt(0)) || // the pattern starts with \., and then [ or .
                  src2.startsWith("\\.") && aps.has(src2.charAt(2)) || // the pattern starts with \.\., and then [ or .
                  src2.startsWith("\\.\\.") && aps.has(src2.charAt(4))
                );
                const needNoDot = !dot && !allowDot && aps.has(src2.charAt(0));
                start2 = needNoTrav ? startNoTraversal : needNoDot ? startNoDot : "";
              }
            }
          }
          let end = "";
          if (this.isEnd() && this.#root.#filledNegs && this.#parent?.type === "!") {
            end = "(?:$|\\/)";
          }
          const final2 = start2 + src2 + end;
          return [
            final2,
            (0, unescape_js_1.unescape)(src2),
            this.#hasMagic = !!this.#hasMagic,
            this.#uflag
          ];
        }
        const repeated = this.type === "*" || this.type === "+";
        const start = this.type === "!" ? "(?:(?!(?:" : "(?:";
        let body = this.#partsToRegExp(dot);
        if (this.isStart() && this.isEnd() && !body && this.type !== "!") {
          const s = this.toString();
          const me = this;
          me.#parts = [s];
          me.type = null;
          me.#hasMagic = void 0;
          return [s, (0, unescape_js_1.unescape)(this.toString()), false, false];
        }
        let bodyDotAllowed = !repeated || allowDot || dot || !startNoDot ? "" : this.#partsToRegExp(true);
        if (bodyDotAllowed === body) {
          bodyDotAllowed = "";
        }
        if (bodyDotAllowed) {
          body = `(?:${body})(?:${bodyDotAllowed})*?`;
        }
        let final = "";
        if (this.type === "!" && this.#emptyExt) {
          final = (this.isStart() && !dot ? startNoDot : "") + starNoEmpty;
        } else {
          const close = this.type === "!" ? (
            // !() must match something,but !(x) can match ''
            "))" + (this.isStart() && !dot && !allowDot ? startNoDot : "") + star + ")"
          ) : this.type === "@" ? ")" : this.type === "?" ? ")?" : this.type === "+" && bodyDotAllowed ? ")" : this.type === "*" && bodyDotAllowed ? `)?` : `)${this.type}`;
          final = start + body + close;
        }
        return [
          final,
          (0, unescape_js_1.unescape)(body),
          this.#hasMagic = !!this.#hasMagic,
          this.#uflag
        ];
      }
      #flatten() {
        if (!isExtglobAST(this)) {
          for (const p of this.#parts) {
            if (typeof p === "object") {
              p.#flatten();
            }
          }
        } else {
          let iterations = 0;
          let done = false;
          do {
            done = true;
            for (let i2 = 0; i2 < this.#parts.length; i2++) {
              const c3 = this.#parts[i2];
              if (typeof c3 === "object") {
                c3.#flatten();
                if (this.#canAdopt(c3)) {
                  done = false;
                  this.#adopt(c3, i2);
                } else if (this.#canAdoptWithSpace(c3)) {
                  done = false;
                  this.#adoptWithSpace(c3, i2);
                } else if (this.#canUsurp(c3)) {
                  done = false;
                  this.#usurp(c3);
                }
              }
            }
          } while (!done && ++iterations < 10);
        }
        this.#toString = void 0;
      }
      #partsToRegExp(dot) {
        return this.#parts.map((p) => {
          if (typeof p === "string") {
            throw new Error("string type in extglob ast??");
          }
          const [re, _, _hasMagic, uflag] = p.toRegExpSource(dot);
          this.#uflag = this.#uflag || uflag;
          return re;
        }).filter((p) => !(this.isStart() && this.isEnd()) || !!p).join("|");
      }
      static #parseGlob(glob2, hasMagic, noEmpty = false) {
        let escaping = false;
        let re = "";
        let uflag = false;
        let inStar = false;
        for (let i2 = 0; i2 < glob2.length; i2++) {
          const c3 = glob2.charAt(i2);
          if (escaping) {
            escaping = false;
            re += (reSpecials.has(c3) ? "\\" : "") + c3;
            continue;
          }
          if (c3 === "*") {
            if (inStar)
              continue;
            inStar = true;
            re += noEmpty && /^[*]+$/.test(glob2) ? starNoEmpty : star;
            hasMagic = true;
            continue;
          } else {
            inStar = false;
          }
          if (c3 === "\\") {
            if (i2 === glob2.length - 1) {
              re += "\\\\";
            } else {
              escaping = true;
            }
            continue;
          }
          if (c3 === "[") {
            const [src2, needUflag, consumed, magic] = (0, brace_expressions_js_1.parseClass)(glob2, i2);
            if (consumed) {
              re += src2;
              uflag = uflag || needUflag;
              i2 += consumed - 1;
              hasMagic = hasMagic || magic;
              continue;
            }
          }
          if (c3 === "?") {
            re += qmark;
            hasMagic = true;
            continue;
          }
          re += regExpEscape(c3);
        }
        return [re, (0, unescape_js_1.unescape)(glob2), !!hasMagic, uflag];
      }
    };
    exports2.AST = AST;
    _a = AST;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/minimatch/10.2.5/f03adfecfd90830634562b19e6cdeddb44da31ac3330189056e108744a6067fa/node_modules/minimatch/dist/commonjs/escape.js
var require_escape2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/minimatch/10.2.5/f03adfecfd90830634562b19e6cdeddb44da31ac3330189056e108744a6067fa/node_modules/minimatch/dist/commonjs/escape.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.escape = void 0;
    var escape = (s, { windowsPathsNoEscape = false, magicalBraces = false } = {}) => {
      if (magicalBraces) {
        return windowsPathsNoEscape ? s.replace(/[?*()[\]{}]/g, "[$&]") : s.replace(/[?*()[\]\\{}]/g, "\\$&");
      }
      return windowsPathsNoEscape ? s.replace(/[?*()[\]]/g, "[$&]") : s.replace(/[?*()[\]\\]/g, "\\$&");
    };
    exports2.escape = escape;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/minimatch/10.2.5/f03adfecfd90830634562b19e6cdeddb44da31ac3330189056e108744a6067fa/node_modules/minimatch/dist/commonjs/index.js
var require_commonjs4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/minimatch/10.2.5/f03adfecfd90830634562b19e6cdeddb44da31ac3330189056e108744a6067fa/node_modules/minimatch/dist/commonjs/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.unescape = exports2.escape = exports2.AST = exports2.Minimatch = exports2.match = exports2.makeRe = exports2.braceExpand = exports2.defaults = exports2.filter = exports2.GLOBSTAR = exports2.sep = exports2.minimatch = void 0;
    var brace_expansion_1 = require_commonjs3();
    var assert_valid_pattern_js_1 = require_assert_valid_pattern();
    var ast_js_1 = require_ast();
    var escape_js_1 = require_escape2();
    var unescape_js_1 = require_unescape();
    var minimatch = (p, pattern, options = {}) => {
      (0, assert_valid_pattern_js_1.assertValidPattern)(pattern);
      if (!options.nocomment && pattern.charAt(0) === "#") {
        return false;
      }
      return new Minimatch(pattern, options).match(p);
    };
    exports2.minimatch = minimatch;
    var starDotExtRE = /^\*+([^+@!?*[(]*)$/;
    var starDotExtTest = (ext2) => (f) => !f.startsWith(".") && f.endsWith(ext2);
    var starDotExtTestDot = (ext2) => (f) => f.endsWith(ext2);
    var starDotExtTestNocase = (ext2) => {
      ext2 = ext2.toLowerCase();
      return (f) => !f.startsWith(".") && f.toLowerCase().endsWith(ext2);
    };
    var starDotExtTestNocaseDot = (ext2) => {
      ext2 = ext2.toLowerCase();
      return (f) => f.toLowerCase().endsWith(ext2);
    };
    var starDotStarRE = /^\*+\.\*+$/;
    var starDotStarTest = (f) => !f.startsWith(".") && f.includes(".");
    var starDotStarTestDot = (f) => f !== "." && f !== ".." && f.includes(".");
    var dotStarRE = /^\.\*+$/;
    var dotStarTest = (f) => f !== "." && f !== ".." && f.startsWith(".");
    var starRE = /^\*+$/;
    var starTest = (f) => f.length !== 0 && !f.startsWith(".");
    var starTestDot = (f) => f.length !== 0 && f !== "." && f !== "..";
    var qmarksRE = /^\?+([^+@!?*[(]*)?$/;
    var qmarksTestNocase = ([$0, ext2 = ""]) => {
      const noext = qmarksTestNoExt([$0]);
      if (!ext2)
        return noext;
      ext2 = ext2.toLowerCase();
      return (f) => noext(f) && f.toLowerCase().endsWith(ext2);
    };
    var qmarksTestNocaseDot = ([$0, ext2 = ""]) => {
      const noext = qmarksTestNoExtDot([$0]);
      if (!ext2)
        return noext;
      ext2 = ext2.toLowerCase();
      return (f) => noext(f) && f.toLowerCase().endsWith(ext2);
    };
    var qmarksTestDot = ([$0, ext2 = ""]) => {
      const noext = qmarksTestNoExtDot([$0]);
      return !ext2 ? noext : (f) => noext(f) && f.endsWith(ext2);
    };
    var qmarksTest = ([$0, ext2 = ""]) => {
      const noext = qmarksTestNoExt([$0]);
      return !ext2 ? noext : (f) => noext(f) && f.endsWith(ext2);
    };
    var qmarksTestNoExt = ([$0]) => {
      const len = $0.length;
      return (f) => f.length === len && !f.startsWith(".");
    };
    var qmarksTestNoExtDot = ([$0]) => {
      const len = $0.length;
      return (f) => f.length === len && f !== "." && f !== "..";
    };
    var defaultPlatform = typeof process === "object" && process ? typeof process.env === "object" && process.env && process.env.__MINIMATCH_TESTING_PLATFORM__ || process.platform : "posix";
    var path218 = {
      win32: { sep: "\\" },
      posix: { sep: "/" }
    };
    exports2.sep = defaultPlatform === "win32" ? path218.win32.sep : path218.posix.sep;
    exports2.minimatch.sep = exports2.sep;
    exports2.GLOBSTAR = /* @__PURE__ */ Symbol("globstar **");
    exports2.minimatch.GLOBSTAR = exports2.GLOBSTAR;
    var qmark = "[^/]";
    var star = qmark + "*?";
    var twoStarDot = "(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?";
    var twoStarNoDot = "(?:(?!(?:\\/|^)\\.).)*?";
    var filter14 = (pattern, options = {}) => (p) => (0, exports2.minimatch)(p, pattern, options);
    exports2.filter = filter14;
    exports2.minimatch.filter = exports2.filter;
    var ext = (a2, b = {}) => Object.assign({}, a2, b);
    var defaults4 = (def) => {
      if (!def || typeof def !== "object" || !Object.keys(def).length) {
        return exports2.minimatch;
      }
      const orig = exports2.minimatch;
      const m = (p, pattern, options = {}) => orig(p, pattern, ext(def, options));
      return Object.assign(m, {
        Minimatch: class Minimatch extends orig.Minimatch {
          constructor(pattern, options = {}) {
            super(pattern, ext(def, options));
          }
          static defaults(options) {
            return orig.defaults(ext(def, options)).Minimatch;
          }
        },
        AST: class AST extends orig.AST {
          /* c8 ignore start */
          constructor(type4, parent, options = {}) {
            super(type4, parent, ext(def, options));
          }
          /* c8 ignore stop */
          static fromGlob(pattern, options = {}) {
            return orig.AST.fromGlob(pattern, ext(def, options));
          }
        },
        unescape: (s, options = {}) => orig.unescape(s, ext(def, options)),
        escape: (s, options = {}) => orig.escape(s, ext(def, options)),
        filter: (pattern, options = {}) => orig.filter(pattern, ext(def, options)),
        defaults: (options) => orig.defaults(ext(def, options)),
        makeRe: (pattern, options = {}) => orig.makeRe(pattern, ext(def, options)),
        braceExpand: (pattern, options = {}) => orig.braceExpand(pattern, ext(def, options)),
        match: (list2, pattern, options = {}) => orig.match(list2, pattern, ext(def, options)),
        sep: orig.sep,
        GLOBSTAR: exports2.GLOBSTAR
      });
    };
    exports2.defaults = defaults4;
    exports2.minimatch.defaults = exports2.defaults;
    var braceExpand = (pattern, options = {}) => {
      (0, assert_valid_pattern_js_1.assertValidPattern)(pattern);
      if (options.nobrace || !/\{(?:(?!\{).)*\}/.test(pattern)) {
        return [pattern];
      }
      return (0, brace_expansion_1.expand)(pattern, { max: options.braceExpandMax });
    };
    exports2.braceExpand = braceExpand;
    exports2.minimatch.braceExpand = exports2.braceExpand;
    var makeRe = (pattern, options = {}) => new Minimatch(pattern, options).makeRe();
    exports2.makeRe = makeRe;
    exports2.minimatch.makeRe = exports2.makeRe;
    var match = (list2, pattern, options = {}) => {
      const mm = new Minimatch(pattern, options);
      list2 = list2.filter((f) => mm.match(f));
      if (mm.options.nonull && !list2.length) {
        list2.push(pattern);
      }
      return list2;
    };
    exports2.match = match;
    exports2.minimatch.match = exports2.match;
    var globMagic = /[?*]|[+@!]\(.*?\)|\[|\]/;
    var regExpEscape = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
    var Minimatch = class {
      options;
      set;
      pattern;
      windowsPathsNoEscape;
      nonegate;
      negate;
      comment;
      empty;
      preserveMultipleSlashes;
      partial;
      globSet;
      globParts;
      nocase;
      isWindows;
      platform;
      windowsNoMagicRoot;
      maxGlobstarRecursion;
      regexp;
      constructor(pattern, options = {}) {
        (0, assert_valid_pattern_js_1.assertValidPattern)(pattern);
        options = options || {};
        this.options = options;
        this.maxGlobstarRecursion = options.maxGlobstarRecursion ?? 200;
        this.pattern = pattern;
        this.platform = options.platform || defaultPlatform;
        this.isWindows = this.platform === "win32";
        const awe = "allowWindowsEscape";
        this.windowsPathsNoEscape = !!options.windowsPathsNoEscape || options[awe] === false;
        if (this.windowsPathsNoEscape) {
          this.pattern = this.pattern.replace(/\\/g, "/");
        }
        this.preserveMultipleSlashes = !!options.preserveMultipleSlashes;
        this.regexp = null;
        this.negate = false;
        this.nonegate = !!options.nonegate;
        this.comment = false;
        this.empty = false;
        this.partial = !!options.partial;
        this.nocase = !!this.options.nocase;
        this.windowsNoMagicRoot = options.windowsNoMagicRoot !== void 0 ? options.windowsNoMagicRoot : !!(this.isWindows && this.nocase);
        this.globSet = [];
        this.globParts = [];
        this.set = [];
        this.make();
      }
      hasMagic() {
        if (this.options.magicalBraces && this.set.length > 1) {
          return true;
        }
        for (const pattern of this.set) {
          for (const part of pattern) {
            if (typeof part !== "string")
              return true;
          }
        }
        return false;
      }
      debug(..._) {
      }
      make() {
        const pattern = this.pattern;
        const options = this.options;
        if (!options.nocomment && pattern.charAt(0) === "#") {
          this.comment = true;
          return;
        }
        if (!pattern) {
          this.empty = true;
          return;
        }
        this.parseNegate();
        this.globSet = [...new Set(this.braceExpand())];
        if (options.debug) {
          this.debug = (...args) => console.error(...args);
        }
        this.debug(this.pattern, this.globSet);
        const rawGlobParts = this.globSet.map((s) => this.slashSplit(s));
        this.globParts = this.preprocess(rawGlobParts);
        this.debug(this.pattern, this.globParts);
        let set2 = this.globParts.map((s, _, __) => {
          if (this.isWindows && this.windowsNoMagicRoot) {
            const isUNC = s[0] === "" && s[1] === "" && (s[2] === "?" || !globMagic.test(s[2])) && !globMagic.test(s[3]);
            const isDrive = /^[a-z]:/i.test(s[0]);
            if (isUNC) {
              return [
                ...s.slice(0, 4),
                ...s.slice(4).map((ss) => this.parse(ss))
              ];
            } else if (isDrive) {
              return [s[0], ...s.slice(1).map((ss) => this.parse(ss))];
            }
          }
          return s.map((ss) => this.parse(ss));
        });
        this.debug(this.pattern, set2);
        this.set = set2.filter((s) => s.indexOf(false) === -1);
        if (this.isWindows) {
          for (let i2 = 0; i2 < this.set.length; i2++) {
            const p = this.set[i2];
            if (p[0] === "" && p[1] === "" && this.globParts[i2][2] === "?" && typeof p[3] === "string" && /^[a-z]:$/i.test(p[3])) {
              p[2] = "?";
            }
          }
        }
        this.debug(this.pattern, this.set);
      }
      // various transforms to equivalent pattern sets that are
      // faster to process in a filesystem walk.  The goal is to
      // eliminate what we can, and push all ** patterns as far
      // to the right as possible, even if it increases the number
      // of patterns that we have to process.
      preprocess(globParts) {
        if (this.options.noglobstar) {
          for (const partset of globParts) {
            for (let j2 = 0; j2 < partset.length; j2++) {
              if (partset[j2] === "**") {
                partset[j2] = "*";
              }
            }
          }
        }
        const { optimizationLevel = 1 } = this.options;
        if (optimizationLevel >= 2) {
          globParts = this.firstPhasePreProcess(globParts);
          globParts = this.secondPhasePreProcess(globParts);
        } else if (optimizationLevel >= 1) {
          globParts = this.levelOneOptimize(globParts);
        } else {
          globParts = this.adjascentGlobstarOptimize(globParts);
        }
        return globParts;
      }
      // just get rid of adjascent ** portions
      adjascentGlobstarOptimize(globParts) {
        return globParts.map((parts) => {
          let gs = -1;
          while (-1 !== (gs = parts.indexOf("**", gs + 1))) {
            let i2 = gs;
            while (parts[i2 + 1] === "**") {
              i2++;
            }
            if (i2 !== gs) {
              parts.splice(gs, i2 - gs);
            }
          }
          return parts;
        });
      }
      // get rid of adjascent ** and resolve .. portions
      levelOneOptimize(globParts) {
        return globParts.map((parts) => {
          parts = parts.reduce((set2, part) => {
            const prev = set2[set2.length - 1];
            if (part === "**" && prev === "**") {
              return set2;
            }
            if (part === "..") {
              if (prev && prev !== ".." && prev !== "." && prev !== "**") {
                set2.pop();
                return set2;
              }
            }
            set2.push(part);
            return set2;
          }, []);
          return parts.length === 0 ? [""] : parts;
        });
      }
      levelTwoFileOptimize(parts) {
        if (!Array.isArray(parts)) {
          parts = this.slashSplit(parts);
        }
        let didSomething = false;
        do {
          didSomething = false;
          if (!this.preserveMultipleSlashes) {
            for (let i2 = 1; i2 < parts.length - 1; i2++) {
              const p = parts[i2];
              if (i2 === 1 && p === "" && parts[0] === "")
                continue;
              if (p === "." || p === "") {
                didSomething = true;
                parts.splice(i2, 1);
                i2--;
              }
            }
            if (parts[0] === "." && parts.length === 2 && (parts[1] === "." || parts[1] === "")) {
              didSomething = true;
              parts.pop();
            }
          }
          let dd = 0;
          while (-1 !== (dd = parts.indexOf("..", dd + 1))) {
            const p = parts[dd - 1];
            if (p && p !== "." && p !== ".." && p !== "**" && !(this.isWindows && /^[a-z]:$/i.test(p))) {
              didSomething = true;
              parts.splice(dd - 1, 2);
              dd -= 2;
            }
          }
        } while (didSomething);
        return parts.length === 0 ? [""] : parts;
      }
      // First phase: single-pattern processing
      // <pre> is 1 or more portions
      // <rest> is 1 or more portions
      // <p> is any portion other than ., .., '', or **
      // <e> is . or ''
      //
      // **/.. is *brutal* for filesystem walking performance, because
      // it effectively resets the recursive walk each time it occurs,
      // and ** cannot be reduced out by a .. pattern part like a regexp
      // or most strings (other than .., ., and '') can be.
      //
      // <pre>/**/../<p>/<p>/<rest> -> {<pre>/../<p>/<p>/<rest>,<pre>/**/<p>/<p>/<rest>}
      // <pre>/<e>/<rest> -> <pre>/<rest>
      // <pre>/<p>/../<rest> -> <pre>/<rest>
      // **/**/<rest> -> **/<rest>
      //
      // **/*/<rest> -> */**/<rest> <== not valid because ** doesn't follow
      // this WOULD be allowed if ** did follow symlinks, or * didn't
      firstPhasePreProcess(globParts) {
        let didSomething = false;
        do {
          didSomething = false;
          for (let parts of globParts) {
            let gs = -1;
            while (-1 !== (gs = parts.indexOf("**", gs + 1))) {
              let gss = gs;
              while (parts[gss + 1] === "**") {
                gss++;
              }
              if (gss > gs) {
                parts.splice(gs + 1, gss - gs);
              }
              let next2 = parts[gs + 1];
              const p = parts[gs + 2];
              const p2 = parts[gs + 3];
              if (next2 !== "..")
                continue;
              if (!p || p === "." || p === ".." || !p2 || p2 === "." || p2 === "..") {
                continue;
              }
              didSomething = true;
              parts.splice(gs, 1);
              const other = parts.slice(0);
              other[gs] = "**";
              globParts.push(other);
              gs--;
            }
            if (!this.preserveMultipleSlashes) {
              for (let i2 = 1; i2 < parts.length - 1; i2++) {
                const p = parts[i2];
                if (i2 === 1 && p === "" && parts[0] === "")
                  continue;
                if (p === "." || p === "") {
                  didSomething = true;
                  parts.splice(i2, 1);
                  i2--;
                }
              }
              if (parts[0] === "." && parts.length === 2 && (parts[1] === "." || parts[1] === "")) {
                didSomething = true;
                parts.pop();
              }
            }
            let dd = 0;
            while (-1 !== (dd = parts.indexOf("..", dd + 1))) {
              const p = parts[dd - 1];
              if (p && p !== "." && p !== ".." && p !== "**") {
                didSomething = true;
                const needDot = dd === 1 && parts[dd + 1] === "**";
                const splin = needDot ? ["."] : [];
                parts.splice(dd - 1, 2, ...splin);
                if (parts.length === 0)
                  parts.push("");
                dd -= 2;
              }
            }
          }
        } while (didSomething);
        return globParts;
      }
      // second phase: multi-pattern dedupes
      // {<pre>/*/<rest>,<pre>/<p>/<rest>} -> <pre>/*/<rest>
      // {<pre>/<rest>,<pre>/<rest>} -> <pre>/<rest>
      // {<pre>/**/<rest>,<pre>/<rest>} -> <pre>/**/<rest>
      //
      // {<pre>/**/<rest>,<pre>/**/<p>/<rest>} -> <pre>/**/<rest>
      // ^-- not valid because ** doens't follow symlinks
      secondPhasePreProcess(globParts) {
        for (let i2 = 0; i2 < globParts.length - 1; i2++) {
          for (let j2 = i2 + 1; j2 < globParts.length; j2++) {
            const matched = this.partsMatch(globParts[i2], globParts[j2], !this.preserveMultipleSlashes);
            if (matched) {
              globParts[i2] = [];
              globParts[j2] = matched;
              break;
            }
          }
        }
        return globParts.filter((gs) => gs.length);
      }
      partsMatch(a2, b, emptyGSMatch = false) {
        let ai = 0;
        let bi = 0;
        let result2 = [];
        let which4 = "";
        while (ai < a2.length && bi < b.length) {
          if (a2[ai] === b[bi]) {
            result2.push(which4 === "b" ? b[bi] : a2[ai]);
            ai++;
            bi++;
          } else if (emptyGSMatch && a2[ai] === "**" && b[bi] === a2[ai + 1]) {
            result2.push(a2[ai]);
            ai++;
          } else if (emptyGSMatch && b[bi] === "**" && a2[ai] === b[bi + 1]) {
            result2.push(b[bi]);
            bi++;
          } else if (a2[ai] === "*" && b[bi] && (this.options.dot || !b[bi].startsWith(".")) && b[bi] !== "**") {
            if (which4 === "b")
              return false;
            which4 = "a";
            result2.push(a2[ai]);
            ai++;
            bi++;
          } else if (b[bi] === "*" && a2[ai] && (this.options.dot || !a2[ai].startsWith(".")) && a2[ai] !== "**") {
            if (which4 === "a")
              return false;
            which4 = "b";
            result2.push(b[bi]);
            ai++;
            bi++;
          } else {
            return false;
          }
        }
        return a2.length === b.length && result2;
      }
      parseNegate() {
        if (this.nonegate)
          return;
        const pattern = this.pattern;
        let negate = false;
        let negateOffset = 0;
        for (let i2 = 0; i2 < pattern.length && pattern.charAt(i2) === "!"; i2++) {
          negate = !negate;
          negateOffset++;
        }
        if (negateOffset)
          this.pattern = pattern.slice(negateOffset);
        this.negate = negate;
      }
      // set partial to true to test if, for example,
      // "/a/b" matches the start of "/*/b/*/d"
      // Partial means, if you run out of file before you run
      // out of pattern, then that's fine, as long as all
      // the parts match.
      matchOne(file, pattern, partial = false) {
        let fileStartIndex = 0;
        let patternStartIndex = 0;
        if (this.isWindows) {
          const fileDrive = typeof file[0] === "string" && /^[a-z]:$/i.test(file[0]);
          const fileUNC = !fileDrive && file[0] === "" && file[1] === "" && file[2] === "?" && /^[a-z]:$/i.test(file[3]);
          const patternDrive = typeof pattern[0] === "string" && /^[a-z]:$/i.test(pattern[0]);
          const patternUNC = !patternDrive && pattern[0] === "" && pattern[1] === "" && pattern[2] === "?" && typeof pattern[3] === "string" && /^[a-z]:$/i.test(pattern[3]);
          const fdi = fileUNC ? 3 : fileDrive ? 0 : void 0;
          const pdi = patternUNC ? 3 : patternDrive ? 0 : void 0;
          if (typeof fdi === "number" && typeof pdi === "number") {
            const [fd, pd] = [
              file[fdi],
              pattern[pdi]
            ];
            if (fd.toLowerCase() === pd.toLowerCase()) {
              pattern[pdi] = fd;
              patternStartIndex = pdi;
              fileStartIndex = fdi;
            }
          }
        }
        const { optimizationLevel = 1 } = this.options;
        if (optimizationLevel >= 2) {
          file = this.levelTwoFileOptimize(file);
        }
        if (pattern.includes(exports2.GLOBSTAR)) {
          return this.#matchGlobstar(file, pattern, partial, fileStartIndex, patternStartIndex);
        }
        return this.#matchOne(file, pattern, partial, fileStartIndex, patternStartIndex);
      }
      #matchGlobstar(file, pattern, partial, fileIndex, patternIndex) {
        const firstgs = pattern.indexOf(exports2.GLOBSTAR, patternIndex);
        const lastgs = pattern.lastIndexOf(exports2.GLOBSTAR);
        const [head2, body, tail2] = partial ? [
          pattern.slice(patternIndex, firstgs),
          pattern.slice(firstgs + 1),
          []
        ] : [
          pattern.slice(patternIndex, firstgs),
          pattern.slice(firstgs + 1, lastgs),
          pattern.slice(lastgs + 1)
        ];
        if (head2.length) {
          const fileHead = file.slice(fileIndex, fileIndex + head2.length);
          if (!this.#matchOne(fileHead, head2, partial, 0, 0)) {
            return false;
          }
          fileIndex += head2.length;
          patternIndex += head2.length;
        }
        let fileTailMatch = 0;
        if (tail2.length) {
          if (tail2.length + fileIndex > file.length)
            return false;
          let tailStart = file.length - tail2.length;
          if (this.#matchOne(file, tail2, partial, tailStart, 0)) {
            fileTailMatch = tail2.length;
          } else {
            if (file[file.length - 1] !== "" || fileIndex + tail2.length === file.length) {
              return false;
            }
            tailStart--;
            if (!this.#matchOne(file, tail2, partial, tailStart, 0)) {
              return false;
            }
            fileTailMatch = tail2.length + 1;
          }
        }
        if (!body.length) {
          let sawSome = !!fileTailMatch;
          for (let i3 = fileIndex; i3 < file.length - fileTailMatch; i3++) {
            const f = String(file[i3]);
            sawSome = true;
            if (f === "." || f === ".." || !this.options.dot && f.startsWith(".")) {
              return false;
            }
          }
          return partial || sawSome;
        }
        const bodySegments = [[[], 0]];
        let currentBody = bodySegments[0];
        let nonGsParts = 0;
        const nonGsPartsSums = [0];
        for (const b of body) {
          if (b === exports2.GLOBSTAR) {
            nonGsPartsSums.push(nonGsParts);
            currentBody = [[], 0];
            bodySegments.push(currentBody);
          } else {
            currentBody[0].push(b);
            nonGsParts++;
          }
        }
        let i2 = bodySegments.length - 1;
        const fileLength = file.length - fileTailMatch;
        for (const b of bodySegments) {
          b[1] = fileLength - (nonGsPartsSums[i2--] + b[0].length);
        }
        return !!this.#matchGlobStarBodySections(file, bodySegments, fileIndex, 0, partial, 0, !!fileTailMatch);
      }
      // return false for "nope, not matching"
      // return null for "not matching, cannot keep trying"
      #matchGlobStarBodySections(file, bodySegments, fileIndex, bodyIndex, partial, globStarDepth, sawTail) {
        const bs = bodySegments[bodyIndex];
        if (!bs) {
          for (let i2 = fileIndex; i2 < file.length; i2++) {
            sawTail = true;
            const f = file[i2];
            if (f === "." || f === ".." || !this.options.dot && f.startsWith(".")) {
              return false;
            }
          }
          return sawTail;
        }
        const [body, after] = bs;
        while (fileIndex <= after) {
          const m = this.#matchOne(file.slice(0, fileIndex + body.length), body, partial, fileIndex, 0);
          if (m && globStarDepth < this.maxGlobstarRecursion) {
            const sub = this.#matchGlobStarBodySections(file, bodySegments, fileIndex + body.length, bodyIndex + 1, partial, globStarDepth + 1, sawTail);
            if (sub !== false) {
              return sub;
            }
          }
          const f = file[fileIndex];
          if (f === "." || f === ".." || !this.options.dot && f.startsWith(".")) {
            return false;
          }
          fileIndex++;
        }
        return partial || null;
      }
      #matchOne(file, pattern, partial, fileIndex, patternIndex) {
        let fi;
        let pi;
        let pl;
        let fl;
        for (fi = fileIndex, pi = patternIndex, fl = file.length, pl = pattern.length; fi < fl && pi < pl; fi++, pi++) {
          this.debug("matchOne loop");
          let p = pattern[pi];
          let f = file[fi];
          this.debug(pattern, p, f);
          if (p === false || p === exports2.GLOBSTAR) {
            return false;
          }
          let hit;
          if (typeof p === "string") {
            hit = f === p;
            this.debug("string match", p, f, hit);
          } else {
            hit = p.test(f);
            this.debug("pattern match", p, f, hit);
          }
          if (!hit)
            return false;
        }
        if (fi === fl && pi === pl) {
          return true;
        } else if (fi === fl) {
          return partial;
        } else if (pi === pl) {
          return fi === fl - 1 && file[fi] === "";
        } else {
          throw new Error("wtf?");
        }
      }
      braceExpand() {
        return (0, exports2.braceExpand)(this.pattern, this.options);
      }
      parse(pattern) {
        (0, assert_valid_pattern_js_1.assertValidPattern)(pattern);
        const options = this.options;
        if (pattern === "**")
          return exports2.GLOBSTAR;
        if (pattern === "")
          return "";
        let m;
        let fastTest = null;
        if (m = pattern.match(starRE)) {
          fastTest = options.dot ? starTestDot : starTest;
        } else if (m = pattern.match(starDotExtRE)) {
          fastTest = (options.nocase ? options.dot ? starDotExtTestNocaseDot : starDotExtTestNocase : options.dot ? starDotExtTestDot : starDotExtTest)(m[1]);
        } else if (m = pattern.match(qmarksRE)) {
          fastTest = (options.nocase ? options.dot ? qmarksTestNocaseDot : qmarksTestNocase : options.dot ? qmarksTestDot : qmarksTest)(m);
        } else if (m = pattern.match(starDotStarRE)) {
          fastTest = options.dot ? starDotStarTestDot : starDotStarTest;
        } else if (m = pattern.match(dotStarRE)) {
          fastTest = dotStarTest;
        }
        const re = ast_js_1.AST.fromGlob(pattern, this.options).toMMPattern();
        if (fastTest && typeof re === "object") {
          Reflect.defineProperty(re, "test", { value: fastTest });
        }
        return re;
      }
      makeRe() {
        if (this.regexp || this.regexp === false)
          return this.regexp;
        const set2 = this.set;
        if (!set2.length) {
          this.regexp = false;
          return this.regexp;
        }
        const options = this.options;
        const twoStar = options.noglobstar ? star : options.dot ? twoStarDot : twoStarNoDot;
        const flags = new Set(options.nocase ? ["i"] : []);
        let re = set2.map((pattern) => {
          const pp = pattern.map((p) => {
            if (p instanceof RegExp) {
              for (const f of p.flags.split(""))
                flags.add(f);
            }
            return typeof p === "string" ? regExpEscape(p) : p === exports2.GLOBSTAR ? exports2.GLOBSTAR : p._src;
          });
          pp.forEach((p, i2) => {
            const next2 = pp[i2 + 1];
            const prev = pp[i2 - 1];
            if (p !== exports2.GLOBSTAR || prev === exports2.GLOBSTAR) {
              return;
            }
            if (prev === void 0) {
              if (next2 !== void 0 && next2 !== exports2.GLOBSTAR) {
                pp[i2 + 1] = "(?:\\/|" + twoStar + "\\/)?" + next2;
              } else {
                pp[i2] = twoStar;
              }
            } else if (next2 === void 0) {
              pp[i2 - 1] = prev + "(?:\\/|\\/" + twoStar + ")?";
            } else if (next2 !== exports2.GLOBSTAR) {
              pp[i2 - 1] = prev + "(?:\\/|\\/" + twoStar + "\\/)" + next2;
              pp[i2 + 1] = exports2.GLOBSTAR;
            }
          });
          const filtered = pp.filter((p) => p !== exports2.GLOBSTAR);
          if (this.partial && filtered.length >= 1) {
            const prefixes = [];
            for (let i2 = 1; i2 <= filtered.length; i2++) {
              prefixes.push(filtered.slice(0, i2).join("/"));
            }
            return "(?:" + prefixes.join("|") + ")";
          }
          return filtered.join("/");
        }).join("|");
        const [open5, close] = set2.length > 1 ? ["(?:", ")"] : ["", ""];
        re = "^" + open5 + re + close + "$";
        if (this.partial) {
          re = "^(?:\\/|" + open5 + re.slice(1, -1) + close + ")$";
        }
        if (this.negate)
          re = "^(?!" + re + ").+$";
        try {
          this.regexp = new RegExp(re, [...flags].join(""));
        } catch {
          this.regexp = false;
        }
        return this.regexp;
      }
      slashSplit(p) {
        if (this.preserveMultipleSlashes) {
          return p.split("/");
        } else if (this.isWindows && /^\/\/[^/]+/.test(p)) {
          return ["", ...p.split(/\/+/)];
        } else {
          return p.split(/\/+/);
        }
      }
      match(f, partial = this.partial) {
        this.debug("match", f, this.pattern);
        if (this.comment) {
          return false;
        }
        if (this.empty) {
          return f === "";
        }
        if (f === "/" && partial) {
          return true;
        }
        const options = this.options;
        if (this.isWindows) {
          f = f.split("\\").join("/");
        }
        const ff = this.slashSplit(f);
        this.debug(this.pattern, "split", ff);
        const set2 = this.set;
        this.debug(this.pattern, "set", set2);
        let filename = ff[ff.length - 1];
        if (!filename) {
          for (let i2 = ff.length - 2; !filename && i2 >= 0; i2--) {
            filename = ff[i2];
          }
        }
        for (const pattern of set2) {
          let file = ff;
          if (options.matchBase && pattern.length === 1) {
            file = [filename];
          }
          const hit = this.matchOne(file, pattern, partial);
          if (hit) {
            if (options.flipNegate) {
              return true;
            }
            return !this.negate;
          }
        }
        if (options.flipNegate) {
          return false;
        }
        return this.negate;
      }
      static defaults(def) {
        return exports2.minimatch.defaults(def).Minimatch;
      }
    };
    exports2.Minimatch = Minimatch;
    var ast_js_2 = require_ast();
    Object.defineProperty(exports2, "AST", { enumerable: true, get: function() {
      return ast_js_2.AST;
    } });
    var escape_js_2 = require_escape2();
    Object.defineProperty(exports2, "escape", { enumerable: true, get: function() {
      return escape_js_2.escape;
    } });
    var unescape_js_2 = require_unescape();
    Object.defineProperty(exports2, "unescape", { enumerable: true, get: function() {
      return unescape_js_2.unescape;
    } });
    exports2.minimatch.AST = ast_js_1.AST;
    exports2.minimatch.Minimatch = Minimatch;
    exports2.minimatch.escape = escape_js_1.escape;
    exports2.minimatch.unescape = unescape_js_1.unescape;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/ignore-walk/8.0.0/82013599698d97f5dd38c9e29857741c5868013bccbac500ef4c94073f77ca7f/node_modules/ignore-walk/lib/index.js
var require_lib8 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/ignore-walk/8.0.0/82013599698d97f5dd38c9e29857741c5868013bccbac500ef4c94073f77ca7f/node_modules/ignore-walk/lib/index.js"(exports2, module2) {
    "use strict";
    var fs111 = __require("fs");
    var path218 = __require("path");
    var EE = __require("events").EventEmitter;
    var Minimatch = require_commonjs4().Minimatch;
    var Walker2 = class _Walker extends EE {
      constructor(opts2) {
        opts2 = opts2 || {};
        super(opts2);
        this.isSymbolicLink = opts2.isSymbolicLink;
        this.path = opts2.path || process.cwd();
        this.basename = path218.basename(this.path);
        this.ignoreFiles = opts2.ignoreFiles || [".ignore"];
        this.ignoreRules = {};
        this.parent = opts2.parent || null;
        this.includeEmpty = !!opts2.includeEmpty;
        this.root = this.parent ? this.parent.root : this.path;
        this.follow = !!opts2.follow;
        this.result = this.parent ? this.parent.result : /* @__PURE__ */ new Set();
        this.entries = null;
        this.sawError = false;
        this.exact = opts2.exact;
      }
      sort(a2, b) {
        return a2.localeCompare(b, "en");
      }
      emit(ev, data) {
        let ret2 = false;
        if (!(this.sawError && ev === "error")) {
          if (ev === "error") {
            this.sawError = true;
          } else if (ev === "done" && !this.parent) {
            data = Array.from(data).map((e) => /^@/.test(e) ? `./${e}` : e).sort(this.sort);
            this.result = data;
          }
          if (ev === "error" && this.parent) {
            ret2 = this.parent.emit("error", data);
          } else {
            ret2 = super.emit(ev, data);
          }
        }
        return ret2;
      }
      start() {
        fs111.readdir(this.path, (er, entries) => er ? this.emit("error", er) : this.onReaddir(entries));
        return this;
      }
      isIgnoreFile(e) {
        return e !== "." && e !== ".." && this.ignoreFiles.indexOf(e) !== -1;
      }
      onReaddir(entries) {
        this.entries = entries;
        if (entries.length === 0) {
          if (this.includeEmpty) {
            this.result.add(this.path.slice(this.root.length + 1));
          }
          this.emit("done", this.result);
        } else {
          const hasIg = this.entries.some((e) => this.isIgnoreFile(e));
          if (hasIg) {
            this.addIgnoreFiles();
          } else {
            this.filterEntries();
          }
        }
      }
      addIgnoreFiles() {
        const newIg = this.entries.filter((e) => this.isIgnoreFile(e));
        let igCount = newIg.length;
        const then = () => {
          if (--igCount === 0) {
            this.filterEntries();
          }
        };
        newIg.forEach((e) => this.addIgnoreFile(e, then));
      }
      addIgnoreFile(file, then) {
        const ig = path218.resolve(this.path, file);
        fs111.readFile(ig, "utf8", (er, data) => er ? this.emit("error", er) : this.onReadIgnoreFile(file, data, then));
      }
      onReadIgnoreFile(file, data, then) {
        const mmopt = {
          matchBase: true,
          dot: true,
          flipNegate: true,
          nocase: true
        };
        const rules = data.split(/\r?\n/).filter((line) => !/^#|^$/.test(line.trim())).map((rule) => {
          return new Minimatch(rule.trim(), mmopt);
        });
        this.ignoreRules[file] = rules;
        then();
      }
      filterEntries() {
        const filtered = this.entries.map((entry) => {
          const passFile = this.filterEntry(entry);
          const passDir = this.filterEntry(entry, true);
          return passFile || passDir ? [entry, passFile, passDir] : false;
        }).filter((e) => e);
        let entryCount = filtered.length;
        if (entryCount === 0) {
          this.emit("done", this.result);
        } else {
          const then = () => {
            if (--entryCount === 0) {
              this.emit("done", this.result);
            }
          };
          filtered.forEach((filt) => {
            const entry = filt[0];
            const file = filt[1];
            const dir = filt[2];
            this.stat({ entry, file, dir }, then);
          });
        }
      }
      onstat({ st, entry, file, dir, isSymbolicLink }, then) {
        const abs = this.path + "/" + entry;
        if (!st.isDirectory()) {
          if (file) {
            this.result.add(abs.slice(this.root.length + 1));
          }
          then();
        } else {
          if (dir) {
            this.walker(entry, { isSymbolicLink, exact: file || this.filterEntry(entry + "/") }, then);
          } else {
            then();
          }
        }
      }
      stat({ entry, file, dir }, then) {
        const abs = this.path + "/" + entry;
        fs111.lstat(abs, (lstatErr, lstatResult) => {
          if (lstatErr) {
            this.emit("error", lstatErr);
          } else {
            const isSymbolicLink = lstatResult.isSymbolicLink();
            if (this.follow && isSymbolicLink) {
              fs111.stat(abs, (statErr, statResult) => {
                if (statErr) {
                  this.emit("error", statErr);
                } else {
                  this.onstat({ st: statResult, entry, file, dir, isSymbolicLink }, then);
                }
              });
            } else {
              this.onstat({ st: lstatResult, entry, file, dir, isSymbolicLink }, then);
            }
          }
        });
      }
      walkerOpt(entry, opts2) {
        return {
          path: this.path + "/" + entry,
          parent: this,
          ignoreFiles: this.ignoreFiles,
          follow: this.follow,
          includeEmpty: this.includeEmpty,
          ...opts2
        };
      }
      walker(entry, opts2, then) {
        new _Walker(this.walkerOpt(entry, opts2)).on("done", then).start();
      }
      filterEntry(entry, partial, entryBasename) {
        let included = true;
        if (this.parent && this.parent.filterEntry) {
          const parentEntry = this.basename + "/" + entry;
          const parentBasename = entryBasename || entry;
          included = this.parent.filterEntry(parentEntry, partial, parentBasename);
          if (!included && !this.exact) {
            return false;
          }
        }
        this.ignoreFiles.forEach((f) => {
          if (this.ignoreRules[f]) {
            this.ignoreRules[f].forEach((rule) => {
              if (rule.negate !== included) {
                const isRelativeRule = entryBasename && rule.globParts.some(
                  (part) => part.length <= (part.slice(-1)[0] ? 1 : 2)
                );
                const match = rule.match("/" + entry) || rule.match(entry) || !!partial && (rule.match("/" + entry + "/") || rule.match(entry + "/") || rule.negate && (rule.match("/" + entry, true) || rule.match(entry, true)) || isRelativeRule && (rule.match("/" + entryBasename + "/") || rule.match(entryBasename + "/") || rule.negate && (rule.match("/" + entryBasename, true) || rule.match(entryBasename, true))));
                if (match) {
                  included = rule.negate;
                }
              }
            });
          }
        });
        return included;
      }
    };
    var WalkerSync = class _WalkerSync extends Walker2 {
      start() {
        this.onReaddir(fs111.readdirSync(this.path));
        return this;
      }
      addIgnoreFile(file, then) {
        const ig = path218.resolve(this.path, file);
        this.onReadIgnoreFile(file, fs111.readFileSync(ig, "utf8"), then);
      }
      stat({ entry, file, dir }, then) {
        const abs = this.path + "/" + entry;
        let st = fs111.lstatSync(abs);
        const isSymbolicLink = st.isSymbolicLink();
        if (this.follow && isSymbolicLink) {
          st = fs111.statSync(abs);
        }
        this.onstat({ st, entry, file, dir, isSymbolicLink }, then);
      }
      walker(entry, opts2, then) {
        new _WalkerSync(this.walkerOpt(entry, opts2)).start();
        then();
      }
    };
    var walk = (opts2, callback2) => {
      const p = new Promise((resolve3, reject3) => {
        new Walker2(opts2).on("done", resolve3).on("error", reject3).start();
      });
      return callback2 ? p.then((res) => callback2(null, res), callback2) : p;
    };
    var walkSync2 = (opts2) => new WalkerSync(opts2).start().result;
    module2.exports = walk;
    walk.sync = walkSync2;
    walk.Walker = Walker2;
    walk.WalkerSync = WalkerSync;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/proc-log/6.1.0/a5811b9c790c15356212fe66986b06edbec5544fea94d867061e6aea968f7549/node_modules/proc-log/lib/index.js
var require_lib9 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/proc-log/6.1.0/a5811b9c790c15356212fe66986b06edbec5544fea94d867061e6aea968f7549/node_modules/proc-log/lib/index.js"(exports2, module2) {
    var META = /* @__PURE__ */ Symbol("proc-log.meta");
    module2.exports = {
      META,
      output: {
        LEVELS: [
          "standard",
          "error",
          "buffer",
          "flush"
        ],
        KEYS: {
          standard: "standard",
          error: "error",
          buffer: "buffer",
          flush: "flush"
        },
        standard: function(...args) {
          return process.emit("output", "standard", ...args);
        },
        error: function(...args) {
          return process.emit("output", "error", ...args);
        },
        buffer: function(...args) {
          return process.emit("output", "buffer", ...args);
        },
        flush: function(...args) {
          return process.emit("output", "flush", ...args);
        }
      },
      log: {
        LEVELS: [
          "notice",
          "error",
          "warn",
          "info",
          "verbose",
          "http",
          "silly",
          "timing",
          "pause",
          "resume"
        ],
        KEYS: {
          notice: "notice",
          error: "error",
          warn: "warn",
          info: "info",
          verbose: "verbose",
          http: "http",
          silly: "silly",
          timing: "timing",
          pause: "pause",
          resume: "resume"
        },
        error: function(...args) {
          return process.emit("log", "error", ...args);
        },
        notice: function(...args) {
          return process.emit("log", "notice", ...args);
        },
        warn: function(...args) {
          return process.emit("log", "warn", ...args);
        },
        info: function(...args) {
          return process.emit("log", "info", ...args);
        },
        verbose: function(...args) {
          return process.emit("log", "verbose", ...args);
        },
        http: function(...args) {
          return process.emit("log", "http", ...args);
        },
        silly: function(...args) {
          return process.emit("log", "silly", ...args);
        },
        timing: function(...args) {
          return process.emit("log", "timing", ...args);
        },
        pause: function() {
          return process.emit("log", "pause");
        },
        resume: function() {
          return process.emit("log", "resume");
        }
      },
      time: {
        LEVELS: [
          "start",
          "end"
        ],
        KEYS: {
          start: "start",
          end: "end"
        },
        start: function(name, fn) {
          process.emit("time", "start", name);
          function end() {
            return process.emit("time", "end", name);
          }
          if (typeof fn === "function") {
            const res = fn();
            if (res && res.finally) {
              return res.finally(end);
            }
            end();
            return res;
          }
          return end;
        },
        end: function(name) {
          return process.emit("time", "end", name);
        }
      },
      input: {
        LEVELS: [
          "start",
          "end",
          "read"
        ],
        KEYS: {
          start: "start",
          end: "end",
          read: "read"
        },
        start: function(...args) {
          let fn;
          if (typeof args[0] === "function") {
            fn = args.shift();
          }
          process.emit("input", "start", ...args);
          function end() {
            return process.emit("input", "end", ...args);
          }
          if (typeof fn === "function") {
            const res = fn();
            if (res && res.finally) {
              return res.finally(end);
            }
            end();
            return res;
          }
          return end;
        },
        end: function(...args) {
          return process.emit("input", "end", ...args);
        },
        read: function(...args) {
          let resolve3, reject3;
          const promise2 = new Promise((_resolve, _reject) => {
            resolve3 = _resolve;
            reject3 = _reject;
          });
          process.emit("input", "read", resolve3, reject3, ...args);
          return promise2;
        }
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/npm-packlist/10.0.4/763d3f163dd3982c49e779090860b01a22a3a33689f8aedd0e71bb9b5fd08964/node_modules/npm-packlist/lib/index.js
var require_lib10 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/npm-packlist/10.0.4/763d3f163dd3982c49e779090860b01a22a3a33689f8aedd0e71bb9b5fd08964/node_modules/npm-packlist/lib/index.js"(exports2, module2) {
    "use strict";
    var { Walker: IgnoreWalker } = require_lib8();
    var { lstatSync: lstat, readFileSync: readFile4 } = __require("fs");
    var { basename: basename2, dirname: dirname2, extname, join: join3, relative: relative2, resolve: resolve3, sep: sep2 } = __require("path");
    var { log: log3 } = require_lib9();
    var defaultRules = /* @__PURE__ */ Symbol("npm-packlist.rules.default");
    var strictRules = /* @__PURE__ */ Symbol("npm-packlist.rules.strict");
    var nameIsBadForWindows = (file) => /\*/.test(file);
    var defaults4 = [
      ".npmignore",
      ".gitignore",
      "**/.git",
      "**/.svn",
      "**/.hg",
      "**/CVS",
      "**/.git/**",
      "**/.svn/**",
      "**/.hg/**",
      "**/CVS/**",
      "/.lock-wscript",
      "/.wafpickle-*",
      "/build/config.gypi",
      "npm-debug.log",
      "**/.npmrc",
      ".*.swp",
      ".DS_Store",
      "**/.DS_Store/**",
      "._*",
      "**/._*/**",
      "*.orig",
      "/archived-packages/**"
    ];
    var strictDefaults = [
      // these are forcibly excluded
      "/.git"
    ];
    var normalizePath13 = (path218) => path218.split("\\").join("/");
    var readOutOfTreeIgnoreFiles = (root, rel, result2 = []) => {
      for (const file of [".npmignore", ".gitignore"]) {
        try {
          const ignoreContent = readFile4(join3(root, file), { encoding: "utf8" });
          result2.push(ignoreContent);
          break;
        } catch (err) {
          if (err.code !== "ENOENT") {
            throw err;
          }
        }
      }
      if (!rel) {
        return result2;
      }
      const firstRel = rel.split(sep2, 1)[0];
      const newRoot = join3(root, firstRel);
      const newRel = relative2(newRoot, join3(root, rel));
      return readOutOfTreeIgnoreFiles(newRoot, newRel, result2);
    };
    var PackWalker = class _PackWalker extends IgnoreWalker {
      constructor(tree, opts2) {
        const options = {
          ...opts2,
          includeEmpty: false,
          follow: false,
          // we path.resolve() here because ignore-walk doesn't do it and we want full paths
          path: resolve3(opts2?.path || tree.path).replace(/\\/g, "/"),
          ignoreFiles: opts2?.ignoreFiles || [
            defaultRules,
            "package.json",
            ".npmignore",
            ".gitignore",
            strictRules
          ]
        };
        super(options);
        this.isPackage = options.isPackage;
        this.seen = options.seen || /* @__PURE__ */ new Set();
        this.tree = tree;
        this.requiredFiles = options.requiredFiles || [];
        const additionalDefaults = [];
        if (options.prefix && options.workspaces) {
          const path218 = normalizePath13(options.path);
          const prefix = normalizePath13(options.prefix);
          const workspaces = options.workspaces.map((ws) => normalizePath13(ws));
          if (path218 !== prefix && workspaces.includes(path218)) {
            const relpath = relative2(options.prefix, dirname2(options.path));
            additionalDefaults.push(...readOutOfTreeIgnoreFiles(options.prefix, relpath));
          } else if (path218 === prefix) {
            additionalDefaults.push(...workspaces.map((w) => normalizePath13(relative2(options.path, w))));
          }
        }
        this.injectRules(defaultRules, [...defaults4, ...additionalDefaults]);
        if (!this.isPackage) {
          this.injectRules(strictRules, [
            ...strictDefaults,
            ...this.requiredFiles.map((file) => `!${file}`)
          ]);
        }
      }
      // overridden method: we intercept the reading of the package.json file here so that we can
      // process it into both the package.json file rules as well as the strictRules synthetic rule set
      addIgnoreFile(file, callback2) {
        if (file !== "package.json" || !this.isPackage) {
          return super.addIgnoreFile(file, callback2);
        }
        return this.processPackage(callback2);
      }
      // overridden method: if we're done, but we're a package, then we also need to evaluate bundles
      // before we actually emit our done event
      emit(ev, data) {
        if (ev !== "done" || !this.isPackage) {
          return super.emit(ev, data);
        }
        this.gatherBundles().then(() => {
          super.emit("done", this.result);
        });
        return true;
      }
      // overridden method: before actually filtering, we make sure that we've removed the rules for
      // files that should no longer take effect due to our order of precedence
      filterEntries() {
        if (this.ignoreRules["package.json"]) {
          this.ignoreRules[".npmignore"] = null;
          this.ignoreRules[".gitignore"] = null;
        } else if (this.ignoreRules[".npmignore"]) {
          this.ignoreRules[".gitignore"] = null;
        } else if (this.ignoreRules[".gitignore"] && !this.ignoreRules[".npmignore"] && !this.parent) {
          log3.warn(
            "gitignore-fallback",
            "No .npmignore file found, using .gitignore for file exclusion. Consider creating a .npmignore file to explicitly control published files."
          );
        }
        return super.filterEntries();
      }
      // overridden method: we never want to include anything that isn't a file or directory
      onstat(opts2, callback2) {
        if (!opts2.st.isFile() && !opts2.st.isDirectory()) {
          return callback2();
        }
        return super.onstat(opts2, callback2);
      }
      // overridden method: we want to refuse to pack files that are invalid, node-tar protects us from
      // a lot of them but not all
      stat(opts2, callback2) {
        if (nameIsBadForWindows(opts2.entry)) {
          return callback2();
        }
        return super.stat(opts2, callback2);
      }
      // overridden method: this is called to create options for a child walker when we step
      // in to a normal child directory (this will never be a bundle). the default method here
      // copies the root's `ignoreFiles` value, but we don't want to respect package.json for
      // subdirectories, so we override it with a list that intentionally omits package.json
      walkerOpt(entry, opts2) {
        let ignoreFiles = null;
        if (this.tree.workspaces) {
          const workspaceDirs = [...this.tree.workspaces.values()].map((dir) => dir.replace(/\\/g, "/"));
          const entryPath = join3(this.path, entry).replace(/\\/g, "/");
          if (workspaceDirs.includes(entryPath)) {
            ignoreFiles = [
              defaultRules,
              "package.json",
              ".npmignore",
              ".gitignore",
              strictRules
            ];
          }
        } else {
          ignoreFiles = [
            defaultRules,
            ".npmignore",
            ".gitignore",
            strictRules
          ];
        }
        return {
          ...super.walkerOpt(entry, opts2),
          ignoreFiles,
          // we map over our own requiredFiles and pass ones that are within this entry
          requiredFiles: this.requiredFiles.map((file) => {
            if (relative2(file, entry) === "..") {
              return relative2(entry, file).replace(/\\/g, "/");
            }
            return false;
          }).filter(Boolean)
        };
      }
      // overridden method: we want child walkers to be instances of this class, not ignore-walk
      walker(entry, opts2, callback2) {
        new _PackWalker(this.tree, this.walkerOpt(entry, opts2)).on("done", callback2).start();
      }
      // overridden method: we use a custom sort method to help compressibility
      sort(a2, b) {
        const exta = extname(a2).toLowerCase();
        const extb = extname(b).toLowerCase();
        const basea = basename2(a2).toLowerCase();
        const baseb = basename2(b).toLowerCase();
        return exta.localeCompare(extb, "en") || basea.localeCompare(baseb, "en") || a2.localeCompare(b, "en");
      }
      // convenience method: this joins the given rules with newlines, appends a trailing newline,
      // and calls the internal onReadIgnoreFile method
      injectRules(filename, rules, callback2 = () => {
      }) {
        this.onReadIgnoreFile(filename, `${rules.join("\n")}
`, callback2);
      }
      // custom method: this is called by addIgnoreFile when we find a package.json, it uses the
      // arborist tree to pull both default rules and strict rules for the package
      processPackage(callback2) {
        const {
          bin,
          browser,
          files,
          main: main5
        } = this.tree.package;
        const ignores = [];
        const strict = [
          ...strictDefaults,
          "!/package.json",
          "!/readme{,.*[^~$]}",
          "!/copying{,.*[^~$]}",
          "!/license{,.*[^~$]}",
          "!/licence{,.*[^~$]}",
          "/.git",
          "/node_modules",
          ".npmrc",
          "/package-lock.json",
          "/yarn.lock",
          "/pnpm-lock.yaml",
          "/bun.lockb"
        ];
        if (files) {
          for (let file of files) {
            if (file.startsWith("./")) {
              file = file.slice(1);
            }
            if (file.endsWith("/*")) {
              file += "*";
            }
            const inverse2 = `!${file}`;
            try {
              const stat2 = lstat(join3(this.path, file.replace(/^!+/, "")).replace(/\\/g, "/"));
              if (stat2.isFile()) {
                strict.unshift(inverse2);
                this.requiredFiles.push(file.startsWith("/") ? file.slice(1) : file);
              } else if (stat2.isDirectory()) {
                ignores.push(inverse2);
                ignores.push(`${inverse2}/**`);
              }
            } catch (err) {
              ignores.push(inverse2);
            }
          }
          this.injectRules("package.json", ["*", ...ignores]);
        }
        if (browser) {
          strict.push(`!/${browser}`);
        }
        if (main5) {
          strict.push(`!/${main5}`);
        }
        if (bin) {
          for (const key in bin) {
            strict.push(`!/${bin[key]}`);
          }
        }
        this.injectRules(strictRules, strict, callback2);
      }
      // custom method: after we've finished gathering the files for the root package, we call this
      // before emitting the 'done' event in order to gather all of the files for bundled deps
      async gatherBundles() {
        if (this.seen.has(this.tree)) {
          return;
        }
        this.seen.add(this.tree);
        let toBundle;
        if (this.tree.isProjectRoot) {
          const { bundleDependencies } = this.tree.package;
          toBundle = bundleDependencies || [];
        } else {
          const { dependencies, optionalDependencies } = this.tree.package;
          toBundle = Object.keys(dependencies || {}).concat(Object.keys(optionalDependencies || {}));
        }
        for (const dep of toBundle) {
          const edge = this.tree.edgesOut.get(dep);
          if (!edge || edge.peer || edge.dev) {
            continue;
          }
          const node = this.tree.edgesOut.get(dep).to;
          if (!node) {
            continue;
          }
          const path218 = node.path;
          const tree = node.target;
          const walkerOpts = {
            path: path218,
            isPackage: true,
            ignoreFiles: [],
            seen: this.seen
            // pass through seen so we can prevent infinite circular loops
          };
          if (node.isLink) {
            walkerOpts.ignoreFiles.push(defaultRules);
          }
          walkerOpts.ignoreFiles.push("package.json");
          if (node.isLink) {
            walkerOpts.ignoreFiles.push(".npmignore");
            walkerOpts.ignoreFiles.push(".gitignore");
          }
          walkerOpts.ignoreFiles.push(strictRules);
          const walker = new _PackWalker(tree, walkerOpts);
          const bundled = await new Promise((pResolve, pReject) => {
            walker.on("error", pReject);
            walker.on("done", pResolve);
            walker.start();
          });
          const relativeFrom = relative2(this.root, walker.path);
          for (const file of bundled) {
            this.result.add(join3(relativeFrom, file).replace(/\\/g, "/"));
          }
        }
      }
    };
    var walk = (tree, options, callback2) => {
      if (typeof options === "function") {
        callback2 = options;
        options = {};
      }
      const p = new Promise((pResolve, pReject) => {
        new PackWalker(tree, { ...options, isPackage: true }).on("done", pResolve).on("error", pReject).start();
      });
      return callback2 ? p.then((res) => callback2(null, res), callback2) : p;
    };
    module2.exports = walk;
    walk.Walker = PackWalker;
  }
});

// ../fs/packlist/lib/index.js
import fs13 from "node:fs";
import path28 from "node:path";
import util7 from "node:util";
async function packlist(pkgDir, opts2) {
  const pkg = opts2?.manifest ?? readPackageJson(pkgDir);
  const tree = buildRootTree(pkgDir, pkg);
  const files = await (0, import_npm_packlist.default)(tree);
  return files.map((file) => file.replace(/^\.[/\\]/, ""));
}
function buildRootTree(pkgDir, pkg) {
  const bundledDeps = getRootBundledDeps(pkg);
  const normalizedPkg = normalizePackage(pkg);
  normalizedPkg.bundleDependencies = bundledDeps;
  delete normalizedPkg.bundledDependencies;
  const root = makeNode(pkgDir, normalizedPkg, true);
  const seen = /* @__PURE__ */ new Map([[pkgDir, root]]);
  populateEdges(root, bundledDeps, seen);
  return root;
}
function buildBundledTree(pkgDir, seen) {
  const cached = seen.get(pkgDir);
  if (cached)
    return cached;
  const pkg = readPackageJson(pkgDir);
  const node = makeNode(pkgDir, normalizePackage(pkg), false);
  seen.set(pkgDir, node);
  populateEdges(node, getNestedBundledDeps(pkg), seen);
  return node;
}
function populateEdges(node, deps, seen) {
  for (const dep of deps) {
    const depDir = resolveDependency(dep, node.path);
    if (!depDir)
      continue;
    const depNode = buildBundledTree(depDir, seen);
    node.edgesOut.set(dep, { to: depNode, peer: false, dev: false });
  }
}
function makeNode(pkgDir, pkg, isProjectRoot) {
  const node = {
    path: pkgDir,
    package: pkg,
    isProjectRoot,
    isLink: false,
    edgesOut: /* @__PURE__ */ new Map()
  };
  node.target = node;
  return node;
}
function getRootBundledDeps(pkg) {
  const bundle = pkg.bundleDependencies ?? pkg.bundledDependencies;
  if (Array.isArray(bundle))
    return bundle;
  if (bundle === true) {
    return Object.keys(pkg.dependencies ?? {});
  }
  return [];
}
function getNestedBundledDeps(pkg) {
  const dependencies = pkg.dependencies ?? {};
  const optionalDependencies = pkg.optionalDependencies ?? {};
  return [...Object.keys(dependencies), ...Object.keys(optionalDependencies)];
}
function resolveDependency(depName, fromDir) {
  let currentDir = fromDir;
  while (true) {
    const candidate = path28.join(currentDir, "node_modules", depName);
    try {
      const stat2 = fs13.statSync(path28.join(candidate, "package.json"));
      if (stat2.isFile())
        return candidate;
    } catch (err) {
      if (!util7.types.isNativeError(err) || !("code" in err) || err.code !== "ENOENT") {
        throw err;
      }
    }
    const parent = path28.dirname(currentDir);
    if (parent === currentDir)
      return void 0;
    currentDir = parent;
  }
}
function readPackageJson(dir) {
  try {
    return JSON.parse(fs13.readFileSync(path28.join(dir, "package.json"), "utf8"));
  } catch (err) {
    if (util7.types.isNativeError(err) && "code" in err && err.code === "ENOENT") {
      return {};
    }
    throw err;
  }
}
function stripDotSlash(p) {
  return p.replace(/^\.[/\\]/, "");
}
function normalizePackage(pkg) {
  const normalized = { ...pkg };
  if (typeof normalized.main === "string") {
    normalized.main = stripDotSlash(normalized.main);
  }
  if (typeof normalized.browser === "string") {
    normalized.browser = stripDotSlash(normalized.browser);
  }
  if (typeof normalized.bin === "string") {
    normalized.bin = stripDotSlash(normalized.bin);
  } else if (normalized.bin != null && typeof normalized.bin === "object") {
    const bin = {};
    for (const [key, value] of Object.entries(normalized.bin)) {
      bin[key] = stripDotSlash(value);
    }
    normalized.bin = bin;
  }
  return normalized;
}
var import_npm_packlist;
var init_lib37 = __esm({
  "../fs/packlist/lib/index.js"() {
    "use strict";
    import_npm_packlist = __toESM(require_lib10(), 1);
  }
});

// ../fetching/directory-fetcher/lib/index.js
import { promises as fs14 } from "node:fs";
import path29 from "node:path";
import util8 from "node:util";
function createDirectoryFetcher(opts2) {
  const readFileStat = opts2?.resolveSymlinks === true ? realFileStat : fileStat;
  const fetchFromDir2 = opts2?.includeOnlyPackageFiles ? fetchPackageFilesFromDir : fetchAllFilesFromDir.bind(null, readFileStat);
  const directoryFetcher = (cafs, resolution, opts3) => {
    const dir = path29.resolve(opts3.lockfileDir, resolution.directory);
    return fetchFromDir2(dir);
  };
  return {
    directory: directoryFetcher
  };
}
async function fetchFromDir(dir, opts2) {
  if (opts2.includeOnlyPackageFiles) {
    return fetchPackageFilesFromDir(dir);
  }
  const readFileStat = opts2?.resolveSymlinks === true ? realFileStat : fileStat;
  return fetchAllFilesFromDir(readFileStat, dir);
}
async function fetchAllFilesFromDir(readFileStat, dir) {
  const { filesMap, filesStats } = await _fetchAllFilesFromDir(readFileStat, dir);
  const manifest = await safeReadProjectManifestOnly(dir) ?? void 0;
  const requiresBuild = pkgRequiresBuild(manifest, filesMap);
  return {
    local: true,
    filesMap,
    filesStats,
    packageImportMethod: "hardlink",
    manifest,
    requiresBuild
  };
}
async function _fetchAllFilesFromDir(readFileStat, dir, relativeDir = "") {
  const filesMap = /* @__PURE__ */ new Map();
  const filesStats = {};
  const files = await fs14.readdir(dir);
  await Promise.all(files.filter((file) => file !== "node_modules").map(async (file) => {
    const fileStatResult = await readFileStat(path29.join(dir, file));
    if (!fileStatResult)
      return;
    const { filePath, stat: stat2 } = fileStatResult;
    const relativeSubdir = `${relativeDir}${relativeDir ? "/" : ""}${file}`;
    if (stat2.isDirectory()) {
      const subFetchResult = await _fetchAllFilesFromDir(readFileStat, filePath, relativeSubdir);
      for (const [key, value] of subFetchResult.filesMap) {
        filesMap.set(key, value);
      }
      Object.assign(filesStats, subFetchResult.filesStats);
    } else {
      filesMap.set(relativeSubdir, filePath);
      filesStats[relativeSubdir] = fileStatResult.stat;
    }
  }));
  return { filesMap, filesStats };
}
async function realFileStat(filePath) {
  let stat2 = await fs14.lstat(filePath);
  if (!stat2.isSymbolicLink()) {
    return { filePath, stat: stat2 };
  }
  try {
    filePath = await fs14.realpath(filePath);
    stat2 = await fs14.stat(filePath);
    return { filePath, stat: stat2 };
  } catch (err) {
    if (util8.types.isNativeError(err) && "code" in err && err.code === "ENOENT") {
      directoryFetcherLogger.debug({ brokenSymlink: filePath });
      return null;
    }
    throw err;
  }
}
async function fileStat(filePath) {
  try {
    return {
      filePath,
      stat: await fs14.stat(filePath)
    };
  } catch (err) {
    if (util8.types.isNativeError(err) && "code" in err && err.code === "ENOENT") {
      directoryFetcherLogger.debug({ brokenSymlink: filePath });
      return null;
    }
    throw err;
  }
}
async function fetchPackageFilesFromDir(dir) {
  const files = await packlist(dir);
  const filesMap = new Map(files.map((file) => [file, path29.join(dir, file)]));
  const manifest = await safeReadProjectManifestOnly(dir) ?? void 0;
  const requiresBuild = pkgRequiresBuild(manifest, filesMap);
  return {
    local: true,
    filesMap,
    packageImportMethod: "hardlink",
    manifest,
    requiresBuild
  };
}
var directoryFetcherLogger;
var init_lib38 = __esm({
  "../fetching/directory-fetcher/lib/index.js"() {
    "use strict";
    init_lib36();
    init_lib37();
    init_lib3();
    init_lib13();
    directoryFetcherLogger = logger("directory-fetcher");
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/load-json-file/7.0.1/dbd04cc64095fbd5cd55a7af38baeafcf5d82cb8d99f88d07cf0902ad6b5e65b/node_modules/load-json-file/index.js
import { readFileSync as readFileSync3, promises as fs15 } from "node:fs";
async function loadJsonFile(filePath, options) {
  const buffer3 = await readFile(filePath);
  return parse3(buffer3, options);
}
function loadJsonFileSync(filePath, options) {
  const buffer3 = readFileSync3(filePath);
  return parse3(buffer3, options);
}
var readFile, parse3;
var init_load_json_file = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/load-json-file/7.0.1/dbd04cc64095fbd5cd55a7af38baeafcf5d82cb8d99f88d07cf0902ad6b5e65b/node_modules/load-json-file/index.js"() {
    ({ readFile } = fs15);
    parse3 = (buffer3, { beforeParse, reviver } = {}) => {
      let data = new TextDecoder().decode(buffer3);
      if (typeof beforeParse === "function") {
        data = beforeParse(data);
      }
      return JSON.parse(data, reviver);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/spdx-license-ids/3.0.23/b9ecf04b031822f0b7bd6fefb53e3d9a430d9952a8f772c345694537448bf8d5/node_modules/spdx-license-ids/index.json
var require_spdx_license_ids = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/spdx-license-ids/3.0.23/b9ecf04b031822f0b7bd6fefb53e3d9a430d9952a8f772c345694537448bf8d5/node_modules/spdx-license-ids/index.json"(exports2, module2) {
    module2.exports = [
      "0BSD",
      "3D-Slicer-1.0",
      "AAL",
      "ADSL",
      "AFL-1.1",
      "AFL-1.2",
      "AFL-2.0",
      "AFL-2.1",
      "AFL-3.0",
      "AGPL-1.0-only",
      "AGPL-1.0-or-later",
      "AGPL-3.0-only",
      "AGPL-3.0-or-later",
      "ALGLIB-Documentation",
      "AMD-newlib",
      "AMDPLPA",
      "AML",
      "AML-glslang",
      "AMPAS",
      "ANTLR-PD",
      "ANTLR-PD-fallback",
      "APAFML",
      "APL-1.0",
      "APSL-1.0",
      "APSL-1.1",
      "APSL-1.2",
      "APSL-2.0",
      "ASWF-Digital-Assets-1.0",
      "ASWF-Digital-Assets-1.1",
      "Abstyles",
      "AdaCore-doc",
      "Adobe-2006",
      "Adobe-Display-PostScript",
      "Adobe-Glyph",
      "Adobe-Utopia",
      "Advanced-Cryptics-Dictionary",
      "Afmparse",
      "Aladdin",
      "Apache-1.0",
      "Apache-1.1",
      "Apache-2.0",
      "App-s2p",
      "Arphic-1999",
      "Artistic-1.0",
      "Artistic-1.0-Perl",
      "Artistic-1.0-cl8",
      "Artistic-2.0",
      "Artistic-dist",
      "Aspell-RU",
      "BOLA-1.1",
      "BSD-1-Clause",
      "BSD-2-Clause",
      "BSD-2-Clause-Darwin",
      "BSD-2-Clause-Patent",
      "BSD-2-Clause-Views",
      "BSD-2-Clause-first-lines",
      "BSD-2-Clause-pkgconf-disclaimer",
      "BSD-3-Clause",
      "BSD-3-Clause-Attribution",
      "BSD-3-Clause-Clear",
      "BSD-3-Clause-HP",
      "BSD-3-Clause-LBNL",
      "BSD-3-Clause-Modification",
      "BSD-3-Clause-No-Military-License",
      "BSD-3-Clause-No-Nuclear-License",
      "BSD-3-Clause-No-Nuclear-License-2014",
      "BSD-3-Clause-No-Nuclear-Warranty",
      "BSD-3-Clause-Open-MPI",
      "BSD-3-Clause-Sun",
      "BSD-3-Clause-Tso",
      "BSD-3-Clause-acpica",
      "BSD-3-Clause-flex",
      "BSD-4-Clause",
      "BSD-4-Clause-Shortened",
      "BSD-4-Clause-UC",
      "BSD-4.3RENO",
      "BSD-4.3TAHOE",
      "BSD-Advertising-Acknowledgement",
      "BSD-Attribution-HPND-disclaimer",
      "BSD-Inferno-Nettverk",
      "BSD-Mark-Modifications",
      "BSD-Protection",
      "BSD-Source-Code",
      "BSD-Source-beginning-file",
      "BSD-Systemics",
      "BSD-Systemics-W3Works",
      "BSL-1.0",
      "BUSL-1.1",
      "Baekmuk",
      "Bahyph",
      "Barr",
      "Beerware",
      "BitTorrent-1.0",
      "BitTorrent-1.1",
      "Bitstream-Charter",
      "Bitstream-Vera",
      "BlueOak-1.0.0",
      "Boehm-GC",
      "Boehm-GC-without-fee",
      "Borceux",
      "Brian-Gladman-2-Clause",
      "Brian-Gladman-3-Clause",
      "Buddy",
      "C-UDA-1.0",
      "CAL-1.0",
      "CAL-1.0-Combined-Work-Exception",
      "CAPEC-tou",
      "CATOSL-1.1",
      "CC-BY-1.0",
      "CC-BY-2.0",
      "CC-BY-2.5",
      "CC-BY-2.5-AU",
      "CC-BY-3.0",
      "CC-BY-3.0-AT",
      "CC-BY-3.0-AU",
      "CC-BY-3.0-DE",
      "CC-BY-3.0-IGO",
      "CC-BY-3.0-NL",
      "CC-BY-3.0-US",
      "CC-BY-4.0",
      "CC-BY-NC-1.0",
      "CC-BY-NC-2.0",
      "CC-BY-NC-2.5",
      "CC-BY-NC-3.0",
      "CC-BY-NC-3.0-DE",
      "CC-BY-NC-4.0",
      "CC-BY-NC-ND-1.0",
      "CC-BY-NC-ND-2.0",
      "CC-BY-NC-ND-2.5",
      "CC-BY-NC-ND-3.0",
      "CC-BY-NC-ND-3.0-DE",
      "CC-BY-NC-ND-3.0-IGO",
      "CC-BY-NC-ND-4.0",
      "CC-BY-NC-SA-1.0",
      "CC-BY-NC-SA-2.0",
      "CC-BY-NC-SA-2.0-DE",
      "CC-BY-NC-SA-2.0-FR",
      "CC-BY-NC-SA-2.0-UK",
      "CC-BY-NC-SA-2.5",
      "CC-BY-NC-SA-3.0",
      "CC-BY-NC-SA-3.0-DE",
      "CC-BY-NC-SA-3.0-IGO",
      "CC-BY-NC-SA-4.0",
      "CC-BY-ND-1.0",
      "CC-BY-ND-2.0",
      "CC-BY-ND-2.5",
      "CC-BY-ND-3.0",
      "CC-BY-ND-3.0-DE",
      "CC-BY-ND-4.0",
      "CC-BY-SA-1.0",
      "CC-BY-SA-2.0",
      "CC-BY-SA-2.0-UK",
      "CC-BY-SA-2.1-JP",
      "CC-BY-SA-2.5",
      "CC-BY-SA-3.0",
      "CC-BY-SA-3.0-AT",
      "CC-BY-SA-3.0-DE",
      "CC-BY-SA-3.0-IGO",
      "CC-BY-SA-4.0",
      "CC-PDDC",
      "CC-PDM-1.0",
      "CC-SA-1.0",
      "CC0-1.0",
      "CDDL-1.0",
      "CDDL-1.1",
      "CDL-1.0",
      "CDLA-Permissive-1.0",
      "CDLA-Permissive-2.0",
      "CDLA-Sharing-1.0",
      "CECILL-1.0",
      "CECILL-1.1",
      "CECILL-2.0",
      "CECILL-2.1",
      "CECILL-B",
      "CECILL-C",
      "CERN-OHL-1.1",
      "CERN-OHL-1.2",
      "CERN-OHL-P-2.0",
      "CERN-OHL-S-2.0",
      "CERN-OHL-W-2.0",
      "CFITSIO",
      "CMU-Mach",
      "CMU-Mach-nodoc",
      "CNRI-Jython",
      "CNRI-Python",
      "CNRI-Python-GPL-Compatible",
      "COIL-1.0",
      "CPAL-1.0",
      "CPL-1.0",
      "CPOL-1.02",
      "CUA-OPL-1.0",
      "Caldera",
      "Caldera-no-preamble",
      "Catharon",
      "ClArtistic",
      "Clips",
      "Community-Spec-1.0",
      "Condor-1.1",
      "Cornell-Lossless-JPEG",
      "Cronyx",
      "Crossword",
      "CryptoSwift",
      "CrystalStacker",
      "Cube",
      "D-FSL-1.0",
      "DEC-3-Clause",
      "DL-DE-BY-2.0",
      "DL-DE-ZERO-2.0",
      "DOC",
      "DRL-1.0",
      "DRL-1.1",
      "DSDP",
      "DocBook-DTD",
      "DocBook-Schema",
      "DocBook-Stylesheet",
      "DocBook-XML",
      "Dotseqn",
      "ECL-1.0",
      "ECL-2.0",
      "EFL-1.0",
      "EFL-2.0",
      "EPICS",
      "EPL-1.0",
      "EPL-2.0",
      "ESA-PL-permissive-2.4",
      "ESA-PL-strong-copyleft-2.4",
      "ESA-PL-weak-copyleft-2.4",
      "EUDatagrid",
      "EUPL-1.0",
      "EUPL-1.1",
      "EUPL-1.2",
      "Elastic-2.0",
      "Entessa",
      "ErlPL-1.1",
      "Eurosym",
      "FBM",
      "FDK-AAC",
      "FSFAP",
      "FSFAP-no-warranty-disclaimer",
      "FSFUL",
      "FSFULLR",
      "FSFULLRSD",
      "FSFULLRWD",
      "FSL-1.1-ALv2",
      "FSL-1.1-MIT",
      "FTL",
      "Fair",
      "Ferguson-Twofish",
      "Frameworx-1.0",
      "FreeBSD-DOC",
      "FreeImage",
      "Furuseth",
      "GCR-docs",
      "GD",
      "GFDL-1.1-invariants-only",
      "GFDL-1.1-invariants-or-later",
      "GFDL-1.1-no-invariants-only",
      "GFDL-1.1-no-invariants-or-later",
      "GFDL-1.1-only",
      "GFDL-1.1-or-later",
      "GFDL-1.2-invariants-only",
      "GFDL-1.2-invariants-or-later",
      "GFDL-1.2-no-invariants-only",
      "GFDL-1.2-no-invariants-or-later",
      "GFDL-1.2-only",
      "GFDL-1.2-or-later",
      "GFDL-1.3-invariants-only",
      "GFDL-1.3-invariants-or-later",
      "GFDL-1.3-no-invariants-only",
      "GFDL-1.3-no-invariants-or-later",
      "GFDL-1.3-only",
      "GFDL-1.3-or-later",
      "GL2PS",
      "GLWTPL",
      "GPL-1.0-only",
      "GPL-1.0-or-later",
      "GPL-2.0-only",
      "GPL-2.0-or-later",
      "GPL-3.0-only",
      "GPL-3.0-or-later",
      "Game-Programming-Gems",
      "Giftware",
      "Glide",
      "Glulxe",
      "Graphics-Gems",
      "Gutmann",
      "HDF5",
      "HIDAPI",
      "HP-1986",
      "HP-1989",
      "HPND",
      "HPND-DEC",
      "HPND-Fenneberg-Livingston",
      "HPND-INRIA-IMAG",
      "HPND-Intel",
      "HPND-Kevlin-Henney",
      "HPND-MIT-disclaimer",
      "HPND-Markus-Kuhn",
      "HPND-Netrek",
      "HPND-Pbmplus",
      "HPND-SMC",
      "HPND-UC",
      "HPND-UC-export-US",
      "HPND-doc",
      "HPND-doc-sell",
      "HPND-export-US",
      "HPND-export-US-acknowledgement",
      "HPND-export-US-modify",
      "HPND-export2-US",
      "HPND-merchantability-variant",
      "HPND-sell-MIT-disclaimer-xserver",
      "HPND-sell-regexpr",
      "HPND-sell-variant",
      "HPND-sell-variant-MIT-disclaimer",
      "HPND-sell-variant-MIT-disclaimer-rev",
      "HPND-sell-variant-critical-systems",
      "HTMLTIDY",
      "HaskellReport",
      "Hippocratic-2.1",
      "IBM-pibs",
      "ICU",
      "IEC-Code-Components-EULA",
      "IJG",
      "IJG-short",
      "IPA",
      "IPL-1.0",
      "ISC",
      "ISC-Veillard",
      "ISO-permission",
      "ImageMagick",
      "Imlib2",
      "Info-ZIP",
      "Inner-Net-2.0",
      "InnoSetup",
      "Intel",
      "Intel-ACPI",
      "Interbase-1.0",
      "JPL-image",
      "JPNIC",
      "JSON",
      "Jam",
      "JasPer-2.0",
      "Kastrup",
      "Kazlib",
      "Knuth-CTAN",
      "LAL-1.2",
      "LAL-1.3",
      "LGPL-2.0-only",
      "LGPL-2.0-or-later",
      "LGPL-2.1-only",
      "LGPL-2.1-or-later",
      "LGPL-3.0-only",
      "LGPL-3.0-or-later",
      "LGPLLR",
      "LOOP",
      "LPD-document",
      "LPL-1.0",
      "LPL-1.02",
      "LPPL-1.0",
      "LPPL-1.1",
      "LPPL-1.2",
      "LPPL-1.3a",
      "LPPL-1.3c",
      "LZMA-SDK-9.11-to-9.20",
      "LZMA-SDK-9.22",
      "Latex2e",
      "Latex2e-translated-notice",
      "Leptonica",
      "LiLiQ-P-1.1",
      "LiLiQ-R-1.1",
      "LiLiQ-Rplus-1.1",
      "Libpng",
      "Linux-OpenIB",
      "Linux-man-pages-1-para",
      "Linux-man-pages-copyleft",
      "Linux-man-pages-copyleft-2-para",
      "Linux-man-pages-copyleft-var",
      "Lucida-Bitmap-Fonts",
      "MIPS",
      "MIT",
      "MIT-0",
      "MIT-CMU",
      "MIT-Click",
      "MIT-Festival",
      "MIT-Khronos-old",
      "MIT-Modern-Variant",
      "MIT-STK",
      "MIT-Wu",
      "MIT-advertising",
      "MIT-enna",
      "MIT-feh",
      "MIT-open-group",
      "MIT-testregex",
      "MITNFA",
      "MMIXware",
      "MMPL-1.0.1",
      "MPEG-SSG",
      "MPL-1.0",
      "MPL-1.1",
      "MPL-2.0",
      "MPL-2.0-no-copyleft-exception",
      "MS-LPL",
      "MS-PL",
      "MS-RL",
      "MTLL",
      "Mackerras-3-Clause",
      "Mackerras-3-Clause-acknowledgment",
      "MakeIndex",
      "Martin-Birgmeier",
      "McPhee-slideshow",
      "Minpack",
      "MirOS",
      "Motosoto",
      "MulanPSL-1.0",
      "MulanPSL-2.0",
      "Multics",
      "Mup",
      "NAIST-2003",
      "NASA-1.3",
      "NBPL-1.0",
      "NCBI-PD",
      "NCGL-UK-2.0",
      "NCL",
      "NCSA",
      "NGPL",
      "NICTA-1.0",
      "NIST-PD",
      "NIST-PD-TNT",
      "NIST-PD-fallback",
      "NIST-Software",
      "NLOD-1.0",
      "NLOD-2.0",
      "NLPL",
      "NOSL",
      "NPL-1.0",
      "NPL-1.1",
      "NPOSL-3.0",
      "NRL",
      "NTIA-PD",
      "NTP",
      "NTP-0",
      "Naumen",
      "NetCDF",
      "Newsletr",
      "Nokia",
      "Noweb",
      "O-UDA-1.0",
      "OAR",
      "OCCT-PL",
      "OCLC-2.0",
      "ODC-By-1.0",
      "ODbL-1.0",
      "OFFIS",
      "OFL-1.0",
      "OFL-1.0-RFN",
      "OFL-1.0-no-RFN",
      "OFL-1.1",
      "OFL-1.1-RFN",
      "OFL-1.1-no-RFN",
      "OGC-1.0",
      "OGDL-Taiwan-1.0",
      "OGL-Canada-2.0",
      "OGL-UK-1.0",
      "OGL-UK-2.0",
      "OGL-UK-3.0",
      "OGTSL",
      "OLDAP-1.1",
      "OLDAP-1.2",
      "OLDAP-1.3",
      "OLDAP-1.4",
      "OLDAP-2.0",
      "OLDAP-2.0.1",
      "OLDAP-2.1",
      "OLDAP-2.2",
      "OLDAP-2.2.1",
      "OLDAP-2.2.2",
      "OLDAP-2.3",
      "OLDAP-2.4",
      "OLDAP-2.5",
      "OLDAP-2.6",
      "OLDAP-2.7",
      "OLDAP-2.8",
      "OLFL-1.3",
      "OML",
      "OPL-1.0",
      "OPL-UK-3.0",
      "OPUBL-1.0",
      "OSC-1.0",
      "OSET-PL-2.1",
      "OSL-1.0",
      "OSL-1.1",
      "OSL-2.0",
      "OSL-2.1",
      "OSL-3.0",
      "OSSP",
      "OpenMDW-1.0",
      "OpenPBS-2.3",
      "OpenSSL",
      "OpenSSL-standalone",
      "OpenVision",
      "PADL",
      "PDDL-1.0",
      "PHP-3.0",
      "PHP-3.01",
      "PPL",
      "PSF-2.0",
      "ParaType-Free-Font-1.3",
      "Parity-6.0.0",
      "Parity-7.0.0",
      "Pixar",
      "Plexus",
      "PolyForm-Noncommercial-1.0.0",
      "PolyForm-Small-Business-1.0.0",
      "PostgreSQL",
      "Python-2.0",
      "Python-2.0.1",
      "QPL-1.0",
      "QPL-1.0-INRIA-2004",
      "Qhull",
      "RHeCos-1.1",
      "RPL-1.1",
      "RPL-1.5",
      "RPSL-1.0",
      "RSA-MD",
      "RSCPL",
      "Rdisc",
      "Ruby",
      "Ruby-pty",
      "SAX-PD",
      "SAX-PD-2.0",
      "SCEA",
      "SGI-B-1.0",
      "SGI-B-1.1",
      "SGI-B-2.0",
      "SGI-OpenGL",
      "SGMLUG-PM",
      "SGP4",
      "SHL-0.5",
      "SHL-0.51",
      "SISSL",
      "SISSL-1.2",
      "SL",
      "SMAIL-GPL",
      "SMLNJ",
      "SMPPL",
      "SNIA",
      "SOFA",
      "SPL-1.0",
      "SSH-OpenSSH",
      "SSH-short",
      "SSLeay-standalone",
      "SSPL-1.0",
      "SUL-1.0",
      "SWL",
      "Saxpath",
      "SchemeReport",
      "Sendmail",
      "Sendmail-8.23",
      "Sendmail-Open-Source-1.1",
      "SimPL-2.0",
      "Sleepycat",
      "Soundex",
      "Spencer-86",
      "Spencer-94",
      "Spencer-99",
      "SugarCRM-1.1.3",
      "Sun-PPP",
      "Sun-PPP-2000",
      "SunPro",
      "Symlinks",
      "TAPR-OHL-1.0",
      "TCL",
      "TCP-wrappers",
      "TGPPL-1.0",
      "TMate",
      "TORQUE-1.1",
      "TOSL",
      "TPDL",
      "TPL-1.0",
      "TTWL",
      "TTYP0",
      "TU-Berlin-1.0",
      "TU-Berlin-2.0",
      "TekHVC",
      "TermReadKey",
      "ThirdEye",
      "TrustedQSL",
      "UCAR",
      "UCL-1.0",
      "UMich-Merit",
      "UPL-1.0",
      "URT-RLE",
      "Ubuntu-font-1.0",
      "UnRAR",
      "Unicode-3.0",
      "Unicode-DFS-2015",
      "Unicode-DFS-2016",
      "Unicode-TOU",
      "UnixCrypt",
      "Unlicense",
      "Unlicense-libtelnet",
      "Unlicense-libwhirlpool",
      "VOSTROM",
      "VSL-1.0",
      "Vim",
      "Vixie-Cron",
      "W3C",
      "W3C-19980720",
      "W3C-20150513",
      "WTFNMFPL",
      "WTFPL",
      "Watcom-1.0",
      "Widget-Workshop",
      "WordNet",
      "Wsuipa",
      "X11",
      "X11-distribute-modifications-variant",
      "X11-no-permit-persons",
      "X11-swapped",
      "XFree86-1.1",
      "XSkat",
      "Xdebug-1.03",
      "Xerox",
      "Xfig",
      "Xnet",
      "YPL-1.0",
      "YPL-1.1",
      "ZPL-1.1",
      "ZPL-2.0",
      "ZPL-2.1",
      "Zed",
      "Zeeff",
      "Zend-2.0",
      "Zimbra-1.3",
      "Zimbra-1.4",
      "Zlib",
      "any-OSI",
      "any-OSI-perl-modules",
      "bcrypt-Solar-Designer",
      "blessing",
      "bzip2-1.0.6",
      "check-cvs",
      "checkmk",
      "copyleft-next-0.3.0",
      "copyleft-next-0.3.1",
      "curl",
      "cve-tou",
      "diffmark",
      "dtoa",
      "dvipdfm",
      "eGenix",
      "etalab-2.0",
      "fwlw",
      "gSOAP-1.3b",
      "generic-xts",
      "gnuplot",
      "gtkbook",
      "hdparm",
      "hyphen-bulgarian",
      "iMatix",
      "jove",
      "libpng-1.6.35",
      "libpng-2.0",
      "libselinux-1.0",
      "libtiff",
      "libutil-David-Nugent",
      "lsof",
      "magaz",
      "mailprio",
      "man2html",
      "metamail",
      "mpi-permissive",
      "mpich2",
      "mplus",
      "ngrep",
      "pkgconf",
      "pnmstitch",
      "psfrag",
      "psutils",
      "python-ldap",
      "radvd",
      "snprintf",
      "softSurfer",
      "ssh-keyscan",
      "swrule",
      "threeparttable",
      "ulem",
      "w3m",
      "wwl",
      "xinetd",
      "xkeyboard-config-Zinoviev",
      "xlock",
      "xpp",
      "xzoom",
      "zlib-acknowledgement"
    ];
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/spdx-license-ids/3.0.23/b9ecf04b031822f0b7bd6fefb53e3d9a430d9952a8f772c345694537448bf8d5/node_modules/spdx-license-ids/deprecated.json
var require_deprecated = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/spdx-license-ids/3.0.23/b9ecf04b031822f0b7bd6fefb53e3d9a430d9952a8f772c345694537448bf8d5/node_modules/spdx-license-ids/deprecated.json"(exports2, module2) {
    module2.exports = [
      "AGPL-1.0",
      "AGPL-3.0",
      "BSD-2-Clause-FreeBSD",
      "BSD-2-Clause-NetBSD",
      "GFDL-1.1",
      "GFDL-1.2",
      "GFDL-1.3",
      "GPL-1.0",
      "GPL-2.0",
      "GPL-2.0-with-GCC-exception",
      "GPL-2.0-with-autoconf-exception",
      "GPL-2.0-with-bison-exception",
      "GPL-2.0-with-classpath-exception",
      "GPL-2.0-with-font-exception",
      "GPL-3.0",
      "GPL-3.0-with-GCC-exception",
      "GPL-3.0-with-autoconf-exception",
      "LGPL-2.0",
      "LGPL-2.1",
      "LGPL-3.0",
      "Net-SNMP",
      "Nunit",
      "StandardML-NJ",
      "bzip2-1.0.5",
      "eCos-2.0",
      "wxWindows"
    ];
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/spdx-exceptions/2.5.0/84a4d711f292f8700460e10d3de3b6ded5409912124ca2833bd0aa92a90002ea/node_modules/spdx-exceptions/index.json
var require_spdx_exceptions = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/spdx-exceptions/2.5.0/84a4d711f292f8700460e10d3de3b6ded5409912124ca2833bd0aa92a90002ea/node_modules/spdx-exceptions/index.json"(exports2, module2) {
    module2.exports = [
      "389-exception",
      "Asterisk-exception",
      "Autoconf-exception-2.0",
      "Autoconf-exception-3.0",
      "Autoconf-exception-generic",
      "Autoconf-exception-generic-3.0",
      "Autoconf-exception-macro",
      "Bison-exception-1.24",
      "Bison-exception-2.2",
      "Bootloader-exception",
      "Classpath-exception-2.0",
      "CLISP-exception-2.0",
      "cryptsetup-OpenSSL-exception",
      "DigiRule-FOSS-exception",
      "eCos-exception-2.0",
      "Fawkes-Runtime-exception",
      "FLTK-exception",
      "fmt-exception",
      "Font-exception-2.0",
      "freertos-exception-2.0",
      "GCC-exception-2.0",
      "GCC-exception-2.0-note",
      "GCC-exception-3.1",
      "Gmsh-exception",
      "GNAT-exception",
      "GNOME-examples-exception",
      "GNU-compiler-exception",
      "gnu-javamail-exception",
      "GPL-3.0-interface-exception",
      "GPL-3.0-linking-exception",
      "GPL-3.0-linking-source-exception",
      "GPL-CC-1.0",
      "GStreamer-exception-2005",
      "GStreamer-exception-2008",
      "i2p-gpl-java-exception",
      "KiCad-libraries-exception",
      "LGPL-3.0-linking-exception",
      "libpri-OpenH323-exception",
      "Libtool-exception",
      "Linux-syscall-note",
      "LLGPL",
      "LLVM-exception",
      "LZMA-exception",
      "mif-exception",
      "OCaml-LGPL-linking-exception",
      "OCCT-exception-1.0",
      "OpenJDK-assembly-exception-1.0",
      "openvpn-openssl-exception",
      "PS-or-PDF-font-exception-20170817",
      "QPL-1.0-INRIA-2004-exception",
      "Qt-GPL-exception-1.0",
      "Qt-LGPL-exception-1.1",
      "Qwt-exception-1.0",
      "SANE-exception",
      "SHL-2.0",
      "SHL-2.1",
      "stunnel-exception",
      "SWI-exception",
      "Swift-exception",
      "Texinfo-exception",
      "u-boot-exception-2.0",
      "UBDL-exception",
      "Universal-FOSS-exception-1.0",
      "vsftpd-openssl-exception",
      "WxWindows-exception-3.1",
      "x11vnc-openssl-exception"
    ];
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/spdx-expression-parse/3.0.1/1f87c1cf2c95978a41fb5c72a6fa92fffa604dfb27db2b4cd1e6f5bffacb4f72/node_modules/spdx-expression-parse/scan.js
var require_scan3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/spdx-expression-parse/3.0.1/1f87c1cf2c95978a41fb5c72a6fa92fffa604dfb27db2b4cd1e6f5bffacb4f72/node_modules/spdx-expression-parse/scan.js"(exports2, module2) {
    "use strict";
    var licenses = [].concat(require_spdx_license_ids()).concat(require_deprecated());
    var exceptions = require_spdx_exceptions();
    module2.exports = function(source) {
      var index = 0;
      function hasMore() {
        return index < source.length;
      }
      function read2(value) {
        if (value instanceof RegExp) {
          var chars = source.slice(index);
          var match = chars.match(value);
          if (match) {
            index += match[0].length;
            return match[0];
          }
        } else {
          if (source.indexOf(value, index) === index) {
            index += value.length;
            return value;
          }
        }
      }
      function skipWhitespace() {
        read2(/[ ]*/);
      }
      function operator() {
        var string;
        var possibilities = ["WITH", "AND", "OR", "(", ")", ":", "+"];
        for (var i2 = 0; i2 < possibilities.length; i2++) {
          string = read2(possibilities[i2]);
          if (string) {
            break;
          }
        }
        if (string === "+" && index > 1 && source[index - 2] === " ") {
          throw new Error("Space before `+`");
        }
        return string && {
          type: "OPERATOR",
          string
        };
      }
      function idstring() {
        return read2(/[A-Za-z0-9-.]+/);
      }
      function expectIdstring() {
        var string = idstring();
        if (!string) {
          throw new Error("Expected idstring at offset " + index);
        }
        return string;
      }
      function documentRef() {
        if (read2("DocumentRef-")) {
          var string = expectIdstring();
          return { type: "DOCUMENTREF", string };
        }
      }
      function licenseRef() {
        if (read2("LicenseRef-")) {
          var string = expectIdstring();
          return { type: "LICENSEREF", string };
        }
      }
      function identifier() {
        var begin = index;
        var string = idstring();
        if (licenses.indexOf(string) !== -1) {
          return {
            type: "LICENSE",
            string
          };
        } else if (exceptions.indexOf(string) !== -1) {
          return {
            type: "EXCEPTION",
            string
          };
        }
        index = begin;
      }
      function parseToken2() {
        return operator() || documentRef() || licenseRef() || identifier();
      }
      var tokens = [];
      while (hasMore()) {
        skipWhitespace();
        if (!hasMore()) {
          break;
        }
        var token = parseToken2();
        if (!token) {
          throw new Error("Unexpected `" + source[index] + "` at offset " + index);
        }
        tokens.push(token);
      }
      return tokens;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/spdx-expression-parse/3.0.1/1f87c1cf2c95978a41fb5c72a6fa92fffa604dfb27db2b4cd1e6f5bffacb4f72/node_modules/spdx-expression-parse/parse.js
var require_parse7 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/spdx-expression-parse/3.0.1/1f87c1cf2c95978a41fb5c72a6fa92fffa604dfb27db2b4cd1e6f5bffacb4f72/node_modules/spdx-expression-parse/parse.js"(exports2, module2) {
    "use strict";
    module2.exports = function(tokens) {
      var index = 0;
      function hasMore() {
        return index < tokens.length;
      }
      function token() {
        return hasMore() ? tokens[index] : null;
      }
      function next2() {
        if (!hasMore()) {
          throw new Error();
        }
        index++;
      }
      function parseOperator(operator) {
        var t2 = token();
        if (t2 && t2.type === "OPERATOR" && operator === t2.string) {
          next2();
          return t2.string;
        }
      }
      function parseWith() {
        if (parseOperator("WITH")) {
          var t2 = token();
          if (t2 && t2.type === "EXCEPTION") {
            next2();
            return t2.string;
          }
          throw new Error("Expected exception after `WITH`");
        }
      }
      function parseLicenseRef() {
        var begin = index;
        var string = "";
        var t2 = token();
        if (t2.type === "DOCUMENTREF") {
          next2();
          string += "DocumentRef-" + t2.string + ":";
          if (!parseOperator(":")) {
            throw new Error("Expected `:` after `DocumentRef-...`");
          }
        }
        t2 = token();
        if (t2.type === "LICENSEREF") {
          next2();
          string += "LicenseRef-" + t2.string;
          return { license: string };
        }
        index = begin;
      }
      function parseLicense() {
        var t2 = token();
        if (t2 && t2.type === "LICENSE") {
          next2();
          var node2 = { license: t2.string };
          if (parseOperator("+")) {
            node2.plus = true;
          }
          var exception2 = parseWith();
          if (exception2) {
            node2.exception = exception2;
          }
          return node2;
        }
      }
      function parseParenthesizedExpression() {
        var left = parseOperator("(");
        if (!left) {
          return;
        }
        var expr = parseExpression2();
        if (!parseOperator(")")) {
          throw new Error("Expected `)`");
        }
        return expr;
      }
      function parseAtom() {
        return parseParenthesizedExpression() || parseLicenseRef() || parseLicense();
      }
      function makeBinaryOpParser(operator, nextParser) {
        return function parseBinaryOp() {
          var left = nextParser();
          if (!left) {
            return;
          }
          if (!parseOperator(operator)) {
            return left;
          }
          var right = parseBinaryOp();
          if (!right) {
            throw new Error("Expected expression");
          }
          return {
            left,
            conjunction: operator.toLowerCase(),
            right
          };
        };
      }
      var parseAnd = makeBinaryOpParser("AND", parseAtom);
      var parseExpression2 = makeBinaryOpParser("OR", parseAnd);
      var node = parseExpression2();
      if (!node || hasMore()) {
        throw new Error("Syntax error");
      }
      return node;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/spdx-expression-parse/3.0.1/1f87c1cf2c95978a41fb5c72a6fa92fffa604dfb27db2b4cd1e6f5bffacb4f72/node_modules/spdx-expression-parse/index.js
var require_spdx_expression_parse = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/spdx-expression-parse/3.0.1/1f87c1cf2c95978a41fb5c72a6fa92fffa604dfb27db2b4cd1e6f5bffacb4f72/node_modules/spdx-expression-parse/index.js"(exports2, module2) {
    "use strict";
    var scan3 = require_scan3();
    var parse7 = require_parse7();
    module2.exports = function(source) {
      return parse7(scan3(source));
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/spdx-correct/3.2.0/953412edf6e0c76ab49ddea31c6828d8790e9b871d0b73d8ee97bc8e4ed559e5/node_modules/spdx-correct/index.js
var require_spdx_correct = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/spdx-correct/3.2.0/953412edf6e0c76ab49ddea31c6828d8790e9b871d0b73d8ee97bc8e4ed559e5/node_modules/spdx-correct/index.js"(exports2, module2) {
    var parse7 = require_spdx_expression_parse();
    var spdxLicenseIds = require_spdx_license_ids();
    function valid2(string) {
      try {
        parse7(string);
        return true;
      } catch (error) {
        return false;
      }
    }
    function sortTranspositions(a2, b) {
      var length = b[0].length - a2[0].length;
      if (length !== 0) return length;
      return a2[0].toUpperCase().localeCompare(b[0].toUpperCase());
    }
    var transpositions = [
      ["APGL", "AGPL"],
      ["Gpl", "GPL"],
      ["GLP", "GPL"],
      ["APL", "Apache"],
      ["ISD", "ISC"],
      ["GLP", "GPL"],
      ["IST", "ISC"],
      ["Claude", "Clause"],
      [" or later", "+"],
      [" International", ""],
      ["GNU", "GPL"],
      ["GUN", "GPL"],
      ["+", ""],
      ["GNU GPL", "GPL"],
      ["GNU LGPL", "LGPL"],
      ["GNU/GPL", "GPL"],
      ["GNU GLP", "GPL"],
      ["GNU LESSER GENERAL PUBLIC LICENSE", "LGPL"],
      ["GNU Lesser General Public License", "LGPL"],
      ["GNU LESSER GENERAL PUBLIC LICENSE", "LGPL-2.1"],
      ["GNU Lesser General Public License", "LGPL-2.1"],
      ["LESSER GENERAL PUBLIC LICENSE", "LGPL"],
      ["Lesser General Public License", "LGPL"],
      ["LESSER GENERAL PUBLIC LICENSE", "LGPL-2.1"],
      ["Lesser General Public License", "LGPL-2.1"],
      ["GNU General Public License", "GPL"],
      ["Gnu public license", "GPL"],
      ["GNU Public License", "GPL"],
      ["GNU GENERAL PUBLIC LICENSE", "GPL"],
      ["MTI", "MIT"],
      ["Mozilla Public License", "MPL"],
      ["Universal Permissive License", "UPL"],
      ["WTH", "WTF"],
      ["WTFGPL", "WTFPL"],
      ["-License", ""]
    ].sort(sortTranspositions);
    var TRANSPOSED = 0;
    var CORRECT = 1;
    var transforms = [
      // e.g. 'mit'
      function(argument) {
        return argument.toUpperCase();
      },
      // e.g. 'MIT '
      function(argument) {
        return argument.trim();
      },
      // e.g. 'M.I.T.'
      function(argument) {
        return argument.replace(/\./g, "");
      },
      // e.g. 'Apache- 2.0'
      function(argument) {
        return argument.replace(/\s+/g, "");
      },
      // e.g. 'CC BY 4.0''
      function(argument) {
        return argument.replace(/\s+/g, "-");
      },
      // e.g. 'LGPLv2.1'
      function(argument) {
        return argument.replace("v", "-");
      },
      // e.g. 'Apache 2.0'
      function(argument) {
        return argument.replace(/,?\s*(\d)/, "-$1");
      },
      // e.g. 'GPL 2'
      function(argument) {
        return argument.replace(/,?\s*(\d)/, "-$1.0");
      },
      // e.g. 'Apache Version 2.0'
      function(argument) {
        return argument.replace(/,?\s*(V\.|v\.|V|v|Version|version)\s*(\d)/, "-$2");
      },
      // e.g. 'Apache Version 2'
      function(argument) {
        return argument.replace(/,?\s*(V\.|v\.|V|v|Version|version)\s*(\d)/, "-$2.0");
      },
      // e.g. 'ZLIB'
      function(argument) {
        return argument[0].toUpperCase() + argument.slice(1);
      },
      // e.g. 'MPL/2.0'
      function(argument) {
        return argument.replace("/", "-");
      },
      // e.g. 'Apache 2'
      function(argument) {
        return argument.replace(/\s*V\s*(\d)/, "-$1").replace(/(\d)$/, "$1.0");
      },
      // e.g. 'GPL-2.0', 'GPL-3.0'
      function(argument) {
        if (argument.indexOf("3.0") !== -1) {
          return argument + "-or-later";
        } else {
          return argument + "-only";
        }
      },
      // e.g. 'GPL-2.0-'
      function(argument) {
        return argument + "only";
      },
      // e.g. 'GPL2'
      function(argument) {
        return argument.replace(/(\d)$/, "-$1.0");
      },
      // e.g. 'BSD 3'
      function(argument) {
        return argument.replace(/(-| )?(\d)$/, "-$2-Clause");
      },
      // e.g. 'BSD clause 3'
      function(argument) {
        return argument.replace(/(-| )clause(-| )(\d)/, "-$3-Clause");
      },
      // e.g. 'New BSD license'
      function(argument) {
        return argument.replace(/\b(Modified|New|Revised)(-| )?BSD((-| )License)?/i, "BSD-3-Clause");
      },
      // e.g. 'Simplified BSD license'
      function(argument) {
        return argument.replace(/\bSimplified(-| )?BSD((-| )License)?/i, "BSD-2-Clause");
      },
      // e.g. 'Free BSD license'
      function(argument) {
        return argument.replace(/\b(Free|Net)(-| )?BSD((-| )License)?/i, "BSD-2-Clause-$1BSD");
      },
      // e.g. 'Clear BSD license'
      function(argument) {
        return argument.replace(/\bClear(-| )?BSD((-| )License)?/i, "BSD-3-Clause-Clear");
      },
      // e.g. 'Old BSD License'
      function(argument) {
        return argument.replace(/\b(Old|Original)(-| )?BSD((-| )License)?/i, "BSD-4-Clause");
      },
      // e.g. 'BY-NC-4.0'
      function(argument) {
        return "CC-" + argument;
      },
      // e.g. 'BY-NC'
      function(argument) {
        return "CC-" + argument + "-4.0";
      },
      // e.g. 'Attribution-NonCommercial'
      function(argument) {
        return argument.replace("Attribution", "BY").replace("NonCommercial", "NC").replace("NoDerivatives", "ND").replace(/ (\d)/, "-$1").replace(/ ?International/, "");
      },
      // e.g. 'Attribution-NonCommercial'
      function(argument) {
        return "CC-" + argument.replace("Attribution", "BY").replace("NonCommercial", "NC").replace("NoDerivatives", "ND").replace(/ (\d)/, "-$1").replace(/ ?International/, "") + "-4.0";
      }
    ];
    var licensesWithVersions = spdxLicenseIds.map(function(id) {
      var match = /^(.*)-\d+\.\d+$/.exec(id);
      return match ? [match[0], match[1]] : [id, null];
    }).reduce(function(objectMap, item) {
      var key = item[1];
      objectMap[key] = objectMap[key] || [];
      objectMap[key].push(item[0]);
      return objectMap;
    }, {});
    var licensesWithOneVersion = Object.keys(licensesWithVersions).map(function makeEntries(key) {
      return [key, licensesWithVersions[key]];
    }).filter(function identifySoleVersions(item) {
      return (
        // Licenses has just one valid version suffix.
        item[1].length === 1 && item[0] !== null && // APL will be considered Apache, rather than APL-1.0
        item[0] !== "APL"
      );
    }).map(function createLastResorts(item) {
      return [item[0], item[1][0]];
    });
    licensesWithVersions = void 0;
    var lastResorts = [
      ["UNLI", "Unlicense"],
      ["WTF", "WTFPL"],
      ["2 CLAUSE", "BSD-2-Clause"],
      ["2-CLAUSE", "BSD-2-Clause"],
      ["3 CLAUSE", "BSD-3-Clause"],
      ["3-CLAUSE", "BSD-3-Clause"],
      ["AFFERO", "AGPL-3.0-or-later"],
      ["AGPL", "AGPL-3.0-or-later"],
      ["APACHE", "Apache-2.0"],
      ["ARTISTIC", "Artistic-2.0"],
      ["Affero", "AGPL-3.0-or-later"],
      ["BEER", "Beerware"],
      ["BOOST", "BSL-1.0"],
      ["BSD", "BSD-2-Clause"],
      ["CDDL", "CDDL-1.1"],
      ["ECLIPSE", "EPL-1.0"],
      ["FUCK", "WTFPL"],
      ["GNU", "GPL-3.0-or-later"],
      ["LGPL", "LGPL-3.0-or-later"],
      ["GPLV1", "GPL-1.0-only"],
      ["GPL-1", "GPL-1.0-only"],
      ["GPLV2", "GPL-2.0-only"],
      ["GPL-2", "GPL-2.0-only"],
      ["GPL", "GPL-3.0-or-later"],
      ["MIT +NO-FALSE-ATTRIBS", "MITNFA"],
      ["MIT", "MIT"],
      ["MPL", "MPL-2.0"],
      ["X11", "X11"],
      ["ZLIB", "Zlib"]
    ].concat(licensesWithOneVersion).sort(sortTranspositions);
    var SUBSTRING = 0;
    var IDENTIFIER2 = 1;
    var validTransformation = function(identifier) {
      for (var i2 = 0; i2 < transforms.length; i2++) {
        var transformed = transforms[i2](identifier).trim();
        if (transformed !== identifier && valid2(transformed)) {
          return transformed;
        }
      }
      return null;
    };
    var validLastResort = function(identifier) {
      var upperCased = identifier.toUpperCase();
      for (var i2 = 0; i2 < lastResorts.length; i2++) {
        var lastResort = lastResorts[i2];
        if (upperCased.indexOf(lastResort[SUBSTRING]) > -1) {
          return lastResort[IDENTIFIER2];
        }
      }
      return null;
    };
    var anyCorrection = function(identifier, check) {
      for (var i2 = 0; i2 < transpositions.length; i2++) {
        var transposition = transpositions[i2];
        var transposed = transposition[TRANSPOSED];
        if (identifier.indexOf(transposed) > -1) {
          var corrected = identifier.replace(
            transposed,
            transposition[CORRECT]
          );
          var checked = check(corrected);
          if (checked !== null) {
            return checked;
          }
        }
      }
      return null;
    };
    module2.exports = function(identifier, options) {
      options = options || {};
      var upgrade = options.upgrade === void 0 ? true : !!options.upgrade;
      function postprocess(value) {
        return upgrade ? upgradeGPLs(value) : value;
      }
      var validArugment = typeof identifier === "string" && identifier.trim().length !== 0;
      if (!validArugment) {
        throw Error("Invalid argument. Expected non-empty string.");
      }
      identifier = identifier.trim();
      if (valid2(identifier)) {
        return postprocess(identifier);
      }
      var noPlus = identifier.replace(/\+$/, "").trim();
      if (valid2(noPlus)) {
        return postprocess(noPlus);
      }
      var transformed = validTransformation(identifier);
      if (transformed !== null) {
        return postprocess(transformed);
      }
      transformed = anyCorrection(identifier, function(argument) {
        if (valid2(argument)) {
          return argument;
        }
        return validTransformation(argument);
      });
      if (transformed !== null) {
        return postprocess(transformed);
      }
      transformed = validLastResort(identifier);
      if (transformed !== null) {
        return postprocess(transformed);
      }
      transformed = anyCorrection(identifier, validLastResort);
      if (transformed !== null) {
        return postprocess(transformed);
      }
      return null;
    };
    function upgradeGPLs(value) {
      if ([
        "GPL-1.0",
        "LGPL-1.0",
        "AGPL-1.0",
        "GPL-2.0",
        "LGPL-2.0",
        "AGPL-2.0",
        "LGPL-2.1"
      ].indexOf(value) !== -1) {
        return value + "-only";
      } else if ([
        "GPL-1.0+",
        "GPL-2.0+",
        "GPL-3.0+",
        "LGPL-2.0+",
        "LGPL-2.1+",
        "LGPL-3.0+",
        "AGPL-1.0+",
        "AGPL-3.0+"
      ].indexOf(value) !== -1) {
        return value.replace(/\+$/, "-or-later");
      } else if (["GPL-3.0", "LGPL-3.0", "AGPL-3.0"].indexOf(value) !== -1) {
        return value + "-or-later";
      } else {
        return value;
      }
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/validate-npm-package-license/3.0.4/93832b02e3fcfbb94dc370baef4142df8479d246565fa3a21e63843fedcea255/node_modules/validate-npm-package-license/index.js
var require_validate_npm_package_license = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/validate-npm-package-license/3.0.4/93832b02e3fcfbb94dc370baef4142df8479d246565fa3a21e63843fedcea255/node_modules/validate-npm-package-license/index.js"(exports2, module2) {
    var parse7 = require_spdx_expression_parse();
    var correct = require_spdx_correct();
    var genericWarning = 'license should be a valid SPDX license expression (without "LicenseRef"), "UNLICENSED", or "SEE LICENSE IN <filename>"';
    var fileReferenceRE = /^SEE LICEN[CS]E IN (.+)$/;
    function startsWith(prefix, string) {
      return string.slice(0, prefix.length) === prefix;
    }
    function usesLicenseRef(ast) {
      if (ast.hasOwnProperty("license")) {
        var license = ast.license;
        return startsWith("LicenseRef", license) || startsWith("DocumentRef", license);
      } else {
        return usesLicenseRef(ast.left) || usesLicenseRef(ast.right);
      }
    }
    module2.exports = function(argument) {
      var ast;
      try {
        ast = parse7(argument);
      } catch (e) {
        var match;
        if (argument === "UNLICENSED" || argument === "UNLICENCED") {
          return {
            validForOldPackages: true,
            validForNewPackages: true,
            unlicensed: true
          };
        } else if (match = fileReferenceRE.exec(argument)) {
          return {
            validForOldPackages: true,
            validForNewPackages: true,
            inFile: match[1]
          };
        } else {
          var result2 = {
            validForOldPackages: false,
            validForNewPackages: false,
            warnings: [genericWarning]
          };
          if (argument.trim().length !== 0) {
            var corrected = correct(argument);
            if (corrected) {
              result2.warnings.push(
                'license is similar to the valid expression "' + corrected + '"'
              );
            }
          }
          return result2;
        }
      }
      if (usesLicenseRef(ast)) {
        return {
          validForNewPackages: false,
          validForOldPackages: false,
          spdx: true,
          warnings: [genericWarning]
        };
      } else {
        return {
          validForNewPackages: true,
          validForOldPackages: true,
          spdx: true
        };
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/lru-cache/11.5.0/723b3a48f3bbb7691037228742735038d3a8879a67eda9501d5033aec3140183/node_modules/lru-cache/dist/commonjs/node/index.min.js
var require_index_min = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/lru-cache/11.5.0/723b3a48f3bbb7691037228742735038d3a8879a67eda9501d5033aec3140183/node_modules/lru-cache/dist/commonjs/node/index.min.js"(exports2) {
    "use strict";
    var j2 = (c3, t2) => () => (t2 || c3((t2 = { exports: {} }).exports, t2), t2.exports);
    var I2 = j2((O2) => {
      "use strict";
      Object.defineProperty(O2, "__esModule", { value: true });
      O2.tracing = O2.metrics = void 0;
      var U2 = __require("node:diagnostics_channel");
      O2.metrics = (0, U2.channel)("lru-cache:metrics");
      O2.tracing = (0, U2.tracingChannel)("lru-cache");
    });
    var P2 = j2((D2) => {
      "use strict";
      Object.defineProperty(D2, "__esModule", { value: true });
      D2.defaultPerf = void 0;
      D2.defaultPerf = typeof performance == "object" && performance && typeof performance.now == "function" ? performance : Date;
    });
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.LRUCache = void 0;
    var g = I2();
    var N = P2();
    var C = () => g.metrics.hasSubscribers || g.tracing.hasSubscribers;
    var k2 = /* @__PURE__ */ new Set();
    var G2 = typeof process == "object" && process ? process : {};
    var V = (c3, t2, e, i2) => {
      typeof G2.emitWarning == "function" ? G2.emitWarning(c3, t2, e, i2) : console.error(`[${e}] ${t2}: ${c3}`);
    };
    var q = (c3) => !k2.has(c3);
    var T2 = (c3) => !!c3 && c3 === Math.floor(c3) && c3 > 0 && isFinite(c3);
    var H2 = (c3) => T2(c3) ? c3 <= Math.pow(2, 8) ? Uint8Array : c3 <= Math.pow(2, 16) ? Uint16Array : c3 <= Math.pow(2, 32) ? Uint32Array : c3 <= Number.MAX_SAFE_INTEGER ? W2 : null : null;
    var W2 = class extends Array {
      constructor(t2) {
        super(t2), this.fill(0);
      }
    };
    var x = class c3 {
      heap;
      length;
      static #o = false;
      static create(t2) {
        let e = H2(t2);
        if (!e) return [];
        c3.#o = true;
        let i2 = new c3(t2, e);
        return c3.#o = false, i2;
      }
      constructor(t2, e) {
        if (!c3.#o) throw new TypeError("instantiate Stack using Stack.create(n)");
        this.heap = new e(t2), this.length = 0;
      }
      push(t2) {
        this.heap[this.length++] = t2;
      }
      pop() {
        return this.heap[--this.length];
      }
    };
    var L2 = class c3 {
      #o;
      #c;
      #m;
      #W;
      #S;
      #M;
      #j;
      #w;
      get perf() {
        return this.#w;
      }
      ttl;
      ttlResolution;
      ttlAutopurge;
      updateAgeOnGet;
      updateAgeOnHas;
      allowStale;
      noDisposeOnSet;
      noUpdateTTL;
      maxEntrySize;
      sizeCalculation;
      noDeleteOnFetchRejection;
      noDeleteOnStaleGet;
      allowStaleOnFetchAbort;
      allowStaleOnFetchRejection;
      ignoreFetchAbort;
      backgroundFetchSize;
      #n;
      #b;
      #s;
      #i;
      #t;
      #l;
      #u;
      #a;
      #h;
      #_;
      #r;
      #y;
      #F;
      #d;
      #g;
      #T;
      #U;
      #f;
      #D;
      static unsafeExposeInternals(t2) {
        return { starts: t2.#F, ttls: t2.#d, autopurgeTimers: t2.#g, sizes: t2.#y, keyMap: t2.#s, keyList: t2.#i, valList: t2.#t, next: t2.#l, prev: t2.#u, get head() {
          return t2.#a;
        }, get tail() {
          return t2.#h;
        }, free: t2.#_, isBackgroundFetch: (e) => t2.#e(e), backgroundFetch: (e, i2, s, n2) => t2.#G(e, i2, s, n2), moveToTail: (e) => t2.#L(e), indexes: (e) => t2.#A(e), rindexes: (e) => t2.#z(e), isStale: (e) => t2.#p(e) };
      }
      get max() {
        return this.#o;
      }
      get maxSize() {
        return this.#c;
      }
      get calculatedSize() {
        return this.#b;
      }
      get size() {
        return this.#n;
      }
      get fetchMethod() {
        return this.#M;
      }
      get memoMethod() {
        return this.#j;
      }
      get dispose() {
        return this.#m;
      }
      get onInsert() {
        return this.#W;
      }
      get disposeAfter() {
        return this.#S;
      }
      constructor(t2) {
        let { max: e = 0, ttl: i2, ttlResolution: s = 1, ttlAutopurge: n2, updateAgeOnGet: r, updateAgeOnHas: h2, allowStale: a2, dispose: o2, onInsert: d, disposeAfter: _, noDisposeOnSet: y, noUpdateTTL: u4, maxSize: p = 0, maxEntrySize: f = 0, sizeCalculation: b, fetchMethod: l, memoMethod: S2, noDeleteOnFetchRejection: F, noDeleteOnStaleGet: w, allowStaleOnFetchRejection: m, allowStaleOnFetchAbort: A, ignoreFetchAbort: z, backgroundFetchSize: M2 = 1, perf: v } = t2;
        if (this.backgroundFetchSize = M2, v !== void 0 && typeof v?.now != "function") throw new TypeError("perf option must have a now() method if specified");
        if (this.#w = v ?? N.defaultPerf, e !== 0 && !T2(e)) throw new TypeError("max option must be a nonnegative integer");
        let E = e ? H2(e) : Array;
        if (!E) throw new Error("invalid max value: " + e);
        if (this.#o = e, this.#c = p, this.maxEntrySize = f || this.#c, this.sizeCalculation = b, this.sizeCalculation) {
          if (!this.#c && !this.maxEntrySize) throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");
          if (typeof this.sizeCalculation != "function") throw new TypeError("sizeCalculation set to non-function");
        }
        if (S2 !== void 0 && typeof S2 != "function") throw new TypeError("memoMethod must be a function if defined");
        if (this.#j = S2, l !== void 0 && typeof l != "function") throw new TypeError("fetchMethod must be a function if specified");
        if (this.#M = l, this.#U = !!l, this.#s = /* @__PURE__ */ new Map(), this.#i = Array.from({ length: e }).fill(void 0), this.#t = Array.from({ length: e }).fill(void 0), this.#l = new E(e), this.#u = new E(e), this.#a = 0, this.#h = 0, this.#_ = x.create(e), this.#n = 0, this.#b = 0, typeof o2 == "function" && (this.#m = o2), typeof d == "function" && (this.#W = d), typeof _ == "function" ? (this.#S = _, this.#r = []) : (this.#S = void 0, this.#r = void 0), this.#T = !!this.#m, this.#D = !!this.#W, this.#f = !!this.#S, this.noDisposeOnSet = !!y, this.noUpdateTTL = !!u4, this.noDeleteOnFetchRejection = !!F, this.allowStaleOnFetchRejection = !!m, this.allowStaleOnFetchAbort = !!A, this.ignoreFetchAbort = !!z, this.maxEntrySize !== 0) {
          if (this.#c !== 0 && !T2(this.#c)) throw new TypeError("maxSize must be a positive integer if specified");
          if (!T2(this.maxEntrySize)) throw new TypeError("maxEntrySize must be a positive integer if specified");
          this.#X();
        }
        if (this.allowStale = !!a2, this.noDeleteOnStaleGet = !!w, this.updateAgeOnGet = !!r, this.updateAgeOnHas = !!h2, this.ttlResolution = T2(s) || s === 0 ? s : 1, this.ttlAutopurge = !!n2, this.ttl = i2 || 0, this.ttl) {
          if (!T2(this.ttl)) throw new TypeError("ttl must be a positive integer if specified");
          this.#k();
        }
        if (this.#o === 0 && this.ttl === 0 && this.#c === 0) throw new TypeError("At least one of max, maxSize, or ttl is required");
        if (!this.ttlAutopurge && !this.#o && !this.#c) {
          let R2 = "LRU_CACHE_UNBOUNDED";
          q(R2) && (k2.add(R2), V("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.", "UnboundedCacheWarning", R2, c3));
        }
      }
      getRemainingTTL(t2) {
        return this.#s.has(t2) ? 1 / 0 : 0;
      }
      #k() {
        let t2 = new W2(this.#o), e = new W2(this.#o);
        this.#d = t2, this.#F = e;
        let i2 = this.ttlAutopurge ? Array.from({ length: this.#o }) : void 0;
        this.#g = i2, this.#H = (h2, a2, o2 = this.#w.now()) => {
          e[h2] = a2 !== 0 ? o2 : 0, t2[h2] = a2, s(h2, a2);
        }, this.#R = (h2) => {
          e[h2] = t2[h2] !== 0 ? this.#w.now() : 0, s(h2, t2[h2]);
        };
        let s = this.ttlAutopurge ? (h2, a2) => {
          if (i2?.[h2] && (clearTimeout(i2[h2]), i2[h2] = void 0), a2 && a2 !== 0 && i2) {
            let o2 = setTimeout(() => {
              this.#p(h2) && this.#v(this.#i[h2], "expire");
            }, a2 + 1);
            o2.unref && o2.unref(), i2[h2] = o2;
          }
        } : () => {
        };
        this.#E = (h2, a2) => {
          if (t2[a2]) {
            let o2 = t2[a2], d = e[a2];
            if (!o2 || !d) return;
            h2.ttl = o2, h2.start = d, h2.now = n2 || r();
            let _ = h2.now - d;
            h2.remainingTTL = o2 - _;
          }
        };
        let n2 = 0, r = () => {
          let h2 = this.#w.now();
          if (this.ttlResolution > 0) {
            n2 = h2;
            let a2 = setTimeout(() => n2 = 0, this.ttlResolution);
            a2.unref && a2.unref();
          }
          return h2;
        };
        this.getRemainingTTL = (h2) => {
          let a2 = this.#s.get(h2);
          if (a2 === void 0) return 0;
          let o2 = t2[a2], d = e[a2];
          if (!o2 || !d) return 1 / 0;
          let _ = (n2 || r()) - d;
          return o2 - _;
        }, this.#p = (h2) => {
          let a2 = e[h2], o2 = t2[h2];
          return !!o2 && !!a2 && (n2 || r()) - a2 > o2;
        };
      }
      #R = () => {
      };
      #E = () => {
      };
      #H = () => {
      };
      #p = () => false;
      #X() {
        let t2 = new W2(this.#o);
        this.#b = 0, this.#y = t2, this.#C = (e) => {
          this.#b -= t2[e], t2[e] = 0;
        }, this.#N = (e, i2, s, n2) => {
          if (!T2(s)) {
            if (this.#e(i2)) return this.backgroundFetchSize;
            if (n2) {
              if (typeof n2 != "function") throw new TypeError("sizeCalculation must be a function");
              if (s = n2(i2, e), !T2(s)) throw new TypeError("sizeCalculation return invalid (expect positive integer)");
            } else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");
          }
          return s;
        }, this.#I = (e, i2, s) => {
          if (t2[e] = i2, this.#c) {
            let n2 = this.#c - t2[e];
            for (; this.#b > n2; ) this.#P(true);
          }
          this.#b += t2[e], s && (s.entrySize = i2, s.totalCalculatedSize = this.#b);
        };
      }
      #C = (t2) => {
      };
      #I = (t2, e, i2) => {
      };
      #N = (t2, e, i2, s) => {
        if (i2 || s) throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");
        return 0;
      };
      *#A({ allowStale: t2 = this.allowStale } = {}) {
        if (this.#n) for (let e = this.#h; this.#V(e) && ((t2 || !this.#p(e)) && (yield e), e !== this.#a); ) e = this.#u[e];
      }
      *#z({ allowStale: t2 = this.allowStale } = {}) {
        if (this.#n) for (let e = this.#a; this.#V(e) && ((t2 || !this.#p(e)) && (yield e), e !== this.#h); ) e = this.#l[e];
      }
      #V(t2) {
        return t2 !== void 0 && this.#s.get(this.#i[t2]) === t2;
      }
      *entries() {
        for (let t2 of this.#A()) this.#t[t2] !== void 0 && this.#i[t2] !== void 0 && !this.#e(this.#t[t2]) && (yield [this.#i[t2], this.#t[t2]]);
      }
      *rentries() {
        for (let t2 of this.#z()) this.#t[t2] !== void 0 && this.#i[t2] !== void 0 && !this.#e(this.#t[t2]) && (yield [this.#i[t2], this.#t[t2]]);
      }
      *keys() {
        for (let t2 of this.#A()) {
          let e = this.#i[t2];
          e !== void 0 && !this.#e(this.#t[t2]) && (yield e);
        }
      }
      *rkeys() {
        for (let t2 of this.#z()) {
          let e = this.#i[t2];
          e !== void 0 && !this.#e(this.#t[t2]) && (yield e);
        }
      }
      *values() {
        for (let t2 of this.#A()) this.#t[t2] !== void 0 && !this.#e(this.#t[t2]) && (yield this.#t[t2]);
      }
      *rvalues() {
        for (let t2 of this.#z()) this.#t[t2] !== void 0 && !this.#e(this.#t[t2]) && (yield this.#t[t2]);
      }
      [Symbol.iterator]() {
        return this.entries();
      }
      [Symbol.toStringTag] = "LRUCache";
      find(t2, e = {}) {
        for (let i2 of this.#A()) {
          let s = this.#t[i2], n2 = this.#e(s) ? s.__staleWhileFetching : s;
          if (n2 !== void 0 && t2(n2, this.#i[i2], this)) return this.#x(this.#i[i2], e);
        }
      }
      forEach(t2, e = this) {
        for (let i2 of this.#A()) {
          let s = this.#t[i2], n2 = this.#e(s) ? s.__staleWhileFetching : s;
          n2 !== void 0 && t2.call(e, n2, this.#i[i2], this);
        }
      }
      rforEach(t2, e = this) {
        for (let i2 of this.#z()) {
          let s = this.#t[i2], n2 = this.#e(s) ? s.__staleWhileFetching : s;
          n2 !== void 0 && t2.call(e, n2, this.#i[i2], this);
        }
      }
      purgeStale() {
        let t2 = false;
        for (let e of this.#z({ allowStale: true })) this.#p(e) && (this.#v(this.#i[e], "expire"), t2 = true);
        return t2;
      }
      info(t2) {
        let e = this.#s.get(t2);
        if (e === void 0) return;
        let i2 = this.#t[e], s = this.#e(i2) ? i2.__staleWhileFetching : i2;
        if (s === void 0) return;
        let n2 = { value: s };
        if (this.#d && this.#F) {
          let r = this.#d[e], h2 = this.#F[e];
          if (r && h2) {
            let a2 = r - (this.#w.now() - h2);
            n2.ttl = a2, n2.start = Date.now();
          }
        }
        return this.#y && (n2.size = this.#y[e]), n2;
      }
      dump() {
        let t2 = [];
        for (let e of this.#A({ allowStale: true })) {
          let i2 = this.#i[e], s = this.#t[e], n2 = this.#e(s) ? s.__staleWhileFetching : s;
          if (n2 === void 0 || i2 === void 0) continue;
          let r = { value: n2 };
          if (this.#d && this.#F) {
            r.ttl = this.#d[e];
            let h2 = this.#w.now() - this.#F[e];
            r.start = Math.floor(Date.now() - h2);
          }
          this.#y && (r.size = this.#y[e]), t2.unshift([i2, r]);
        }
        return t2;
      }
      load(t2) {
        this.clear();
        for (let [e, i2] of t2) {
          if (i2.start) {
            let s = Date.now() - i2.start;
            i2.start = this.#w.now() - s;
          }
          this.#O(e, i2.value, i2);
        }
      }
      set(t2, e, i2 = {}) {
        let { status: s = g.metrics.hasSubscribers ? {} : void 0 } = i2;
        i2.status = s, s && (s.op = "set", s.key = t2, e !== void 0 && (s.value = e), s.cache = this);
        let n2 = this.#O(t2, e, i2);
        return s && g.metrics.hasSubscribers && g.metrics.publish(s), n2;
      }
      #O(t2, e, i2, s) {
        let { ttl: n2 = this.ttl, start: r, noDisposeOnSet: h2 = this.noDisposeOnSet, sizeCalculation: a2 = this.sizeCalculation, status: o2 } = i2, d = this.#e(e);
        if (e === void 0) return o2 && (o2.set = "deleted"), this.delete(t2), this;
        let { noUpdateTTL: _ = this.noUpdateTTL } = i2;
        o2 && !d && (o2.value = e);
        let y = this.#N(t2, e, i2.size || 0, a2, o2);
        if (this.maxEntrySize && y > this.maxEntrySize) return this.#v(t2, "set"), o2 && (o2.set = "miss", o2.maxEntrySizeExceeded = true), this;
        let u4 = this.#n === 0 ? void 0 : this.#s.get(t2);
        if (u4 === void 0) u4 = this.#n === 0 ? this.#h : this.#_.length !== 0 ? this.#_.pop() : this.#n === this.#o ? this.#P(false) : this.#n, this.#i[u4] = t2, this.#t[u4] = e, this.#s.set(t2, u4), this.#l[this.#h] = u4, this.#u[u4] = this.#h, this.#h = u4, this.#n++, this.#I(u4, y, o2), o2 && (o2.set = "add"), _ = false, this.#D && !d && this.#W?.(e, t2, "add");
        else {
          this.#L(u4);
          let p = this.#t[u4];
          if (e !== p) {
            if (!h2) if (this.#e(p)) {
              p !== s && p.__abortController.abort(new Error("replaced"));
              let { __staleWhileFetching: f } = p;
              f !== void 0 && f !== e && (this.#T && this.#m?.(f, t2, "set"), this.#f && this.#r?.push([f, t2, "set"]));
            } else this.#T && this.#m?.(p, t2, "set"), this.#f && this.#r?.push([p, t2, "set"]);
            if (this.#C(u4), this.#I(u4, y, o2), this.#t[u4] = e, !d) {
              let f = p && this.#e(p) ? p.__staleWhileFetching : p, b = f === void 0 ? "add" : e !== f ? "replace" : "update";
              o2 && (o2.set = b, f !== void 0 && (o2.oldValue = f)), this.#D && this.onInsert?.(e, t2, b);
            }
          } else d || (o2 && (o2.set = "update"), this.#D && this.onInsert?.(e, t2, "update"));
        }
        if (n2 !== 0 && !this.#d && this.#k(), this.#d && (_ || this.#H(u4, n2, r), o2 && this.#E(o2, u4)), !h2 && this.#f && this.#r) {
          let p = this.#r, f;
          for (; f = p?.shift(); ) this.#S?.(...f);
        }
        return this;
      }
      pop() {
        try {
          for (; this.#n; ) {
            let t2 = this.#t[this.#a];
            if (this.#P(true), this.#e(t2)) {
              if (t2.__staleWhileFetching) return t2.__staleWhileFetching;
            } else if (t2 !== void 0) return t2;
          }
        } finally {
          if (this.#f && this.#r) {
            let t2 = this.#r, e;
            for (; e = t2?.shift(); ) this.#S?.(...e);
          }
        }
      }
      #P(t2) {
        let e = this.#a, i2 = this.#i[e], s = this.#t[e], n2 = this.#e(s);
        n2 && s.__abortController.abort(new Error("evicted"));
        let r = n2 ? s.__staleWhileFetching : s;
        return (this.#T || this.#f) && r !== void 0 && (this.#T && this.#m?.(r, i2, "evict"), this.#f && this.#r?.push([r, i2, "evict"])), this.#C(e), this.#g?.[e] && (clearTimeout(this.#g[e]), this.#g[e] = void 0), t2 && (this.#i[e] = void 0, this.#t[e] = void 0, this.#_.push(e)), this.#n === 1 ? (this.#a = this.#h = 0, this.#_.length = 0) : this.#a = this.#l[e], this.#s.delete(i2), this.#n--, e;
      }
      has(t2, e = {}) {
        let { status: i2 = g.metrics.hasSubscribers ? {} : void 0 } = e;
        e.status = i2, i2 && (i2.op = "has", i2.key = t2, i2.cache = this);
        let s = this.#Y(t2, e);
        return g.metrics.hasSubscribers && g.metrics.publish(i2), s;
      }
      #Y(t2, e = {}) {
        let { updateAgeOnHas: i2 = this.updateAgeOnHas, status: s } = e, n2 = this.#s.get(t2);
        if (n2 !== void 0) {
          let r = this.#t[n2];
          if (this.#e(r) && r.__staleWhileFetching === void 0) return false;
          if (this.#p(n2)) s && (s.has = "stale", this.#E(s, n2));
          else return i2 && this.#R(n2), s && (s.has = "hit", this.#E(s, n2)), true;
        } else s && (s.has = "miss");
        return false;
      }
      peek(t2, e = {}) {
        let { status: i2 = C() ? {} : void 0 } = e;
        i2 && (i2.op = "peek", i2.key = t2, i2.cache = this), e.status = i2;
        let s = this.#J(t2, e);
        return g.metrics.hasSubscribers && g.metrics.publish(i2), s;
      }
      #J(t2, e) {
        let { status: i2, allowStale: s = this.allowStale } = e, n2 = this.#s.get(t2);
        if (n2 === void 0 || !s && this.#p(n2)) {
          i2 && (i2.peek = n2 === void 0 ? "miss" : "stale");
          return;
        }
        let r = this.#t[n2], h2 = this.#e(r) ? r.__staleWhileFetching : r;
        return i2 && (h2 !== void 0 ? (i2.peek = "hit", i2.value = h2) : i2.peek = "miss"), h2;
      }
      #G(t2, e, i2, s) {
        let n2 = e === void 0 ? void 0 : this.#t[e];
        if (this.#e(n2)) return n2;
        let r = new AbortController(), { signal: h2 } = i2;
        h2?.addEventListener("abort", () => r.abort(h2.reason), { signal: r.signal });
        let a2 = { signal: r.signal, options: i2, context: s }, o2 = (f, b = false) => {
          let { aborted: l } = r.signal, S2 = i2.ignoreFetchAbort && f !== void 0, F = i2.ignoreFetchAbort || !!(i2.allowStaleOnFetchAbort && f !== void 0);
          if (i2.status && (l && !b ? (i2.status.fetchAborted = true, i2.status.fetchError = r.signal.reason, S2 && (i2.status.fetchAbortIgnored = true)) : i2.status.fetchResolved = true), l && !S2 && !b) return _(r.signal.reason, F);
          let w = u4, m = this.#t[e];
          return (m === u4 || m === void 0 && S2 && b) && (f === void 0 ? w.__staleWhileFetching !== void 0 ? this.#t[e] = w.__staleWhileFetching : this.#v(t2, "fetch") : (i2.status && (i2.status.fetchUpdated = true), this.#O(t2, f, a2.options, w))), f;
        }, d = (f) => (i2.status && (i2.status.fetchRejected = true, i2.status.fetchError = f), _(f, false)), _ = (f, b) => {
          let { aborted: l } = r.signal, S2 = l && i2.allowStaleOnFetchAbort, F = S2 || i2.allowStaleOnFetchRejection, w = F || i2.noDeleteOnFetchRejection, m = u4;
          if (this.#t[e] === u4 && (!w || !b && m.__staleWhileFetching === void 0 ? this.#v(t2, "fetch") : S2 || (this.#t[e] = m.__staleWhileFetching)), F) return i2.status && m.__staleWhileFetching !== void 0 && (i2.status.returnedStale = true), m.__staleWhileFetching;
          if (m.__returned === m) throw f;
        }, y = (f, b) => {
          let l = this.#M?.(t2, n2, a2);
          r.signal.addEventListener("abort", () => {
            (!i2.ignoreFetchAbort || i2.allowStaleOnFetchAbort) && (f(void 0), i2.allowStaleOnFetchAbort && (f = (S2) => o2(S2, true)));
          }), l && l instanceof Promise ? l.then((S2) => f(S2 === void 0 ? void 0 : S2), b) : l !== void 0 && f(l);
        };
        i2.status && (i2.status.fetchDispatched = true);
        let u4 = new Promise(y).then(o2, d), p = Object.assign(u4, { __abortController: r, __staleWhileFetching: n2, __returned: void 0 });
        return e === void 0 ? (this.#O(t2, p, { ...a2.options, status: void 0 }), e = this.#s.get(t2)) : this.#t[e] = p, p;
      }
      #e(t2) {
        if (!this.#U) return false;
        let e = t2;
        return !!e && e instanceof Promise && e.hasOwnProperty("__staleWhileFetching") && e.__abortController instanceof AbortController;
      }
      fetch(t2, e = {}) {
        let i2 = g.tracing.hasSubscribers, { status: s = C() ? {} : void 0 } = e;
        e.status = s, s && e.context && (s.context = e.context);
        let n2 = this.#q(t2, e);
        return s && i2 && (s.trace = true, g.tracing.tracePromise(() => n2, s).catch(() => {
        })), n2;
      }
      async #q(t2, e = {}) {
        let { allowStale: i2 = this.allowStale, updateAgeOnGet: s = this.updateAgeOnGet, noDeleteOnStaleGet: n2 = this.noDeleteOnStaleGet, ttl: r = this.ttl, noDisposeOnSet: h2 = this.noDisposeOnSet, size: a2 = 0, sizeCalculation: o2 = this.sizeCalculation, noUpdateTTL: d = this.noUpdateTTL, noDeleteOnFetchRejection: _ = this.noDeleteOnFetchRejection, allowStaleOnFetchRejection: y = this.allowStaleOnFetchRejection, ignoreFetchAbort: u4 = this.ignoreFetchAbort, allowStaleOnFetchAbort: p = this.allowStaleOnFetchAbort, context: f, forceRefresh: b = false, status: l, signal: S2 } = e;
        if (l && (l.op = "fetch", l.key = t2, b && (l.forceRefresh = true), l.cache = this), !this.#U) return l && (l.fetch = "get"), this.#x(t2, { allowStale: i2, updateAgeOnGet: s, noDeleteOnStaleGet: n2, status: l });
        let F = { allowStale: i2, updateAgeOnGet: s, noDeleteOnStaleGet: n2, ttl: r, noDisposeOnSet: h2, size: a2, sizeCalculation: o2, noUpdateTTL: d, noDeleteOnFetchRejection: _, allowStaleOnFetchRejection: y, allowStaleOnFetchAbort: p, ignoreFetchAbort: u4, status: l, signal: S2 }, w = this.#s.get(t2);
        if (w === void 0) {
          l && (l.fetch = "miss");
          let m = this.#G(t2, w, F, f);
          return m.__returned = m;
        } else {
          let m = this.#t[w];
          if (this.#e(m)) {
            let E = i2 && m.__staleWhileFetching !== void 0;
            return l && (l.fetch = "inflight", E && (l.returnedStale = true)), E ? m.__staleWhileFetching : m.__returned = m;
          }
          let A = this.#p(w);
          if (!b && !A) return l && (l.fetch = "hit"), this.#L(w), s && this.#R(w), l && this.#E(l, w), m;
          let z = this.#G(t2, w, F, f), v = z.__staleWhileFetching !== void 0 && i2;
          return l && (l.fetch = A ? "stale" : "refresh", v && A && (l.returnedStale = true)), v ? z.__staleWhileFetching : z.__returned = z;
        }
      }
      forceFetch(t2, e = {}) {
        let i2 = g.tracing.hasSubscribers, { status: s = C() ? {} : void 0 } = e;
        e.status = s, s && e.context && (s.context = e.context);
        let n2 = this.#K(t2, e);
        return s && i2 && (s.trace = true, g.tracing.tracePromise(() => n2, s).catch(() => {
        })), n2;
      }
      async #K(t2, e = {}) {
        let i2 = await this.#q(t2, e);
        if (i2 === void 0) throw new Error("fetch() returned undefined");
        return i2;
      }
      memo(t2, e = {}) {
        let { status: i2 = g.metrics.hasSubscribers ? {} : void 0 } = e;
        e.status = i2, i2 && (i2.op = "memo", i2.key = t2, e.context && (i2.context = e.context), i2.cache = this);
        let s = this.#Q(t2, e);
        return i2 && (i2.value = s), g.metrics.hasSubscribers && g.metrics.publish(i2), s;
      }
      #Q(t2, e = {}) {
        let i2 = this.#j;
        if (!i2) throw new Error("no memoMethod provided to constructor");
        let { context: s, status: n2, forceRefresh: r, ...h2 } = e;
        n2 && r && (n2.forceRefresh = true);
        let a2 = this.#x(t2, h2), o2 = r || a2 === void 0;
        if (n2 && (n2.memo = o2 ? "miss" : "hit", o2 || (n2.value = a2)), !o2) return a2;
        let d = i2(t2, a2, { options: h2, context: s });
        return n2 && (n2.value = d), this.#O(t2, d, h2), d;
      }
      get(t2, e = {}) {
        let { status: i2 = g.metrics.hasSubscribers ? {} : void 0 } = e;
        e.status = i2, i2 && (i2.op = "get", i2.key = t2, i2.cache = this);
        let s = this.#x(t2, e);
        return i2 && (s !== void 0 && (i2.value = s), g.metrics.hasSubscribers && g.metrics.publish(i2)), s;
      }
      #x(t2, e = {}) {
        let { allowStale: i2 = this.allowStale, updateAgeOnGet: s = this.updateAgeOnGet, noDeleteOnStaleGet: n2 = this.noDeleteOnStaleGet, status: r } = e, h2 = this.#s.get(t2);
        if (h2 === void 0) {
          r && (r.get = "miss");
          return;
        }
        let a2 = this.#t[h2], o2 = this.#e(a2);
        return r && this.#E(r, h2), this.#p(h2) ? o2 ? (r && (r.get = "stale-fetching"), i2 && a2.__staleWhileFetching !== void 0 ? (r && (r.returnedStale = true), a2.__staleWhileFetching) : void 0) : (n2 || this.#v(t2, "expire"), r && (r.get = "stale"), i2 ? (r && (r.returnedStale = true), a2) : void 0) : (r && (r.get = o2 ? "fetching" : "hit"), this.#L(h2), s && this.#R(h2), o2 ? a2.__staleWhileFetching : a2);
      }
      #B(t2, e) {
        this.#u[e] = t2, this.#l[t2] = e;
      }
      #L(t2) {
        t2 !== this.#h && (t2 === this.#a ? this.#a = this.#l[t2] : this.#B(this.#u[t2], this.#l[t2]), this.#B(this.#h, t2), this.#h = t2);
      }
      delete(t2) {
        return this.#v(t2, "delete");
      }
      #v(t2, e) {
        g.metrics.hasSubscribers && g.metrics.publish({ op: "delete", delete: e, key: t2, cache: this });
        let i2 = false;
        if (this.#n !== 0) {
          let s = this.#s.get(t2);
          if (s !== void 0) if (this.#g?.[s] && (clearTimeout(this.#g?.[s]), this.#g[s] = void 0), i2 = true, this.#n === 1) this.#$(e);
          else {
            this.#C(s);
            let n2 = this.#t[s];
            if (this.#e(n2) ? n2.__abortController.abort(new Error("deleted")) : (this.#T || this.#f) && (this.#T && this.#m?.(n2, t2, e), this.#f && this.#r?.push([n2, t2, e])), this.#s.delete(t2), this.#i[s] = void 0, this.#t[s] = void 0, s === this.#h) this.#h = this.#u[s];
            else if (s === this.#a) this.#a = this.#l[s];
            else {
              let r = this.#u[s];
              this.#l[r] = this.#l[s];
              let h2 = this.#l[s];
              this.#u[h2] = this.#u[s];
            }
            this.#n--, this.#_.push(s);
          }
        }
        if (this.#f && this.#r?.length) {
          let s = this.#r, n2;
          for (; n2 = s?.shift(); ) this.#S?.(...n2);
        }
        return i2;
      }
      clear() {
        return this.#$("delete");
      }
      #$(t2) {
        for (let e of this.#z({ allowStale: true })) {
          let i2 = this.#t[e];
          if (this.#e(i2)) i2.__abortController.abort(new Error("deleted"));
          else {
            let s = this.#i[e];
            this.#T && this.#m?.(i2, s, t2), this.#f && this.#r?.push([i2, s, t2]);
          }
        }
        if (this.#s.clear(), this.#t.fill(void 0), this.#i.fill(void 0), this.#d && this.#F) {
          this.#d.fill(0), this.#F.fill(0);
          for (let e of this.#g ?? []) e !== void 0 && clearTimeout(e);
          this.#g?.fill(void 0);
        }
        if (this.#y && this.#y.fill(0), this.#a = 0, this.#h = 0, this.#_.length = 0, this.#b = 0, this.#n = 0, this.#f && this.#r) {
          let e = this.#r, i2;
          for (; i2 = e?.shift(); ) this.#S?.(...i2);
        }
      }
    };
    exports2.LRUCache = L2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/hosted-git-info/9.0.3/2109584dc60275857b0bb7a452df75d1bbec343646448857992c1b9004dd6387/node_modules/hosted-git-info/lib/hosts.js
var require_hosts = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/hosted-git-info/9.0.3/2109584dc60275857b0bb7a452df75d1bbec343646448857992c1b9004dd6387/node_modules/hosted-git-info/lib/hosts.js"(exports2, module2) {
    "use strict";
    var maybeJoin = (...args) => args.every((arg) => arg) ? args.join("") : "";
    var maybeEncode = (arg) => arg ? encodeURIComponent(arg) : "";
    var formatHashFragment = (f) => f.toLowerCase().replace(/^\W+/g, "").replace(/(?<!\W)\W+$/, "").replace(/\//g, "").replace(/\W+/g, "-");
    var defaults4 = {
      sshtemplate: ({ domain, user, project, committish }) => `git@${domain}:${user}/${project}.git${maybeJoin("#", committish)}`,
      sshurltemplate: ({ domain, user, project, committish }) => `git+ssh://git@${domain}/${user}/${project}.git${maybeJoin("#", committish)}`,
      edittemplate: ({ domain, user, project, committish, editpath, path: path218 }) => `https://${domain}/${user}/${project}${maybeJoin("/", editpath, "/", maybeEncode(committish || "HEAD"), "/", path218)}`,
      browsetemplate: ({ domain, user, project, committish, treepath }) => `https://${domain}/${user}/${project}${maybeJoin("/", treepath, "/", maybeEncode(committish))}`,
      browsetreetemplate: ({ domain, user, project, committish, treepath, path: path218, fragment, hashformat }) => `https://${domain}/${user}/${project}/${treepath}/${maybeEncode(committish || "HEAD")}/${path218}${maybeJoin("#", hashformat(fragment || ""))}`,
      browseblobtemplate: ({ domain, user, project, committish, blobpath, path: path218, fragment, hashformat }) => `https://${domain}/${user}/${project}/${blobpath}/${maybeEncode(committish || "HEAD")}/${path218}${maybeJoin("#", hashformat(fragment || ""))}`,
      docstemplate: ({ domain, user, project, treepath, committish }) => `https://${domain}/${user}/${project}${maybeJoin("/", treepath, "/", maybeEncode(committish))}#readme`,
      httpstemplate: ({ auth, domain, user, project, committish }) => `git+https://${maybeJoin(auth, "@")}${domain}/${user}/${project}.git${maybeJoin("#", committish)}`,
      filetemplate: ({ domain, user, project, committish, path: path218 }) => `https://${domain}/${user}/${project}/raw/${maybeEncode(committish || "HEAD")}/${path218}`,
      shortcuttemplate: ({ type: type4, user, project, committish }) => `${type4}:${user}/${project}${maybeJoin("#", committish)}`,
      pathtemplate: ({ user, project, committish }) => `${user}/${project}${maybeJoin("#", committish)}`,
      bugstemplate: ({ domain, user, project }) => `https://${domain}/${user}/${project}/issues`,
      hashformat: formatHashFragment
    };
    var hosts = {};
    hosts.github = {
      // First two are insecure and generally shouldn't be used any more, but
      // they are still supported.
      protocols: ["git:", "http:", "git+ssh:", "git+https:", "ssh:", "https:"],
      domain: "github.com",
      treepath: "tree",
      blobpath: "blob",
      editpath: "edit",
      filetemplate: ({ auth, user, project, committish, path: path218 }) => `https://${maybeJoin(auth, "@")}raw.githubusercontent.com/${user}/${project}/${maybeEncode(committish || "HEAD")}/${path218}`,
      gittemplate: ({ auth, domain, user, project, committish }) => `git://${maybeJoin(auth, "@")}${domain}/${user}/${project}.git${maybeJoin("#", committish)}`,
      tarballtemplate: ({ domain, user, project, committish }) => `https://codeload.${domain}/${user}/${project}/tar.gz/${maybeEncode(committish || "HEAD")}`,
      extract: (url7) => {
        let [, user, project, type4, committish] = url7.pathname.split("/", 5);
        if (type4 && type4 !== "tree") {
          return;
        }
        if (!type4) {
          committish = url7.hash.slice(1);
        }
        if (project && project.endsWith(".git")) {
          project = project.slice(0, -4);
        }
        if (!user || !project) {
          return;
        }
        return { user, project, committish };
      }
    };
    hosts.bitbucket = {
      protocols: ["git+ssh:", "git+https:", "ssh:", "https:"],
      domain: "bitbucket.org",
      treepath: "src",
      blobpath: "src",
      editpath: "?mode=edit",
      edittemplate: ({ domain, user, project, committish, treepath, path: path218, editpath }) => `https://${domain}/${user}/${project}${maybeJoin("/", treepath, "/", maybeEncode(committish || "HEAD"), "/", path218, editpath)}`,
      tarballtemplate: ({ domain, user, project, committish }) => `https://${domain}/${user}/${project}/get/${maybeEncode(committish || "HEAD")}.tar.gz`,
      extract: (url7) => {
        let [, user, project, aux] = url7.pathname.split("/", 4);
        if (["get"].includes(aux)) {
          return;
        }
        if (project && project.endsWith(".git")) {
          project = project.slice(0, -4);
        }
        if (!user || !project) {
          return;
        }
        return { user, project, committish: url7.hash.slice(1) };
      }
    };
    hosts.gitlab = {
      protocols: ["git+ssh:", "git+https:", "ssh:", "https:"],
      domain: "gitlab.com",
      treepath: "tree",
      blobpath: "tree",
      editpath: "-/edit",
      tarballtemplate: ({ domain, user, project, committish }) => `https://${domain}/api/v4/projects/${maybeEncode(user + "/" + project)}/repository/archive.tar.gz?sha=${maybeEncode(committish || "HEAD")}`,
      extract: (url7) => {
        const path218 = url7.pathname.slice(1);
        if (path218.includes("/-/") || path218.includes("/archive.tar.gz")) {
          return;
        }
        const segments = path218.split("/");
        let project = segments.pop();
        if (project.endsWith(".git")) {
          project = project.slice(0, -4);
        }
        const user = segments.join("/");
        if (!user || !project) {
          return;
        }
        return { user, project, committish: url7.hash.slice(1) };
      }
    };
    hosts.gist = {
      protocols: ["git:", "git+ssh:", "git+https:", "ssh:", "https:"],
      domain: "gist.github.com",
      editpath: "edit",
      sshtemplate: ({ domain, project, committish }) => `git@${domain}:${project}.git${maybeJoin("#", committish)}`,
      sshurltemplate: ({ domain, project, committish }) => `git+ssh://git@${domain}/${project}.git${maybeJoin("#", committish)}`,
      edittemplate: ({ domain, user, project, committish, editpath }) => `https://${domain}/${user}/${project}${maybeJoin("/", maybeEncode(committish))}/${editpath}`,
      browsetemplate: ({ domain, project, committish }) => `https://${domain}/${project}${maybeJoin("/", maybeEncode(committish))}`,
      browsetreetemplate: ({ domain, project, committish, path: path218, hashformat }) => `https://${domain}/${project}${maybeJoin("/", maybeEncode(committish))}${maybeJoin("#", hashformat(path218))}`,
      browseblobtemplate: ({ domain, project, committish, path: path218, hashformat }) => `https://${domain}/${project}${maybeJoin("/", maybeEncode(committish))}${maybeJoin("#", hashformat(path218))}`,
      docstemplate: ({ domain, project, committish }) => `https://${domain}/${project}${maybeJoin("/", maybeEncode(committish))}`,
      httpstemplate: ({ domain, project, committish }) => `git+https://${domain}/${project}.git${maybeJoin("#", committish)}`,
      filetemplate: ({ user, project, committish, path: path218 }) => `https://gist.githubusercontent.com/${user}/${project}/raw${maybeJoin("/", maybeEncode(committish))}/${path218}`,
      shortcuttemplate: ({ type: type4, project, committish }) => `${type4}:${project}${maybeJoin("#", committish)}`,
      pathtemplate: ({ project, committish }) => `${project}${maybeJoin("#", committish)}`,
      bugstemplate: ({ domain, project }) => `https://${domain}/${project}`,
      gittemplate: ({ domain, project, committish }) => `git://${domain}/${project}.git${maybeJoin("#", committish)}`,
      tarballtemplate: ({ project, committish }) => `https://codeload.github.com/gist/${project}/tar.gz/${maybeEncode(committish || "HEAD")}`,
      extract: (url7) => {
        let [, user, project, aux] = url7.pathname.split("/", 4);
        if (aux === "raw") {
          return;
        }
        if (!project) {
          if (!user) {
            return;
          }
          project = user;
          user = null;
        }
        if (project.endsWith(".git")) {
          project = project.slice(0, -4);
        }
        return { user, project, committish: url7.hash.slice(1) };
      },
      hashformat: function(fragment) {
        return fragment && "file-" + formatHashFragment(fragment);
      }
    };
    hosts.sourcehut = {
      protocols: ["git+ssh:", "https:"],
      domain: "git.sr.ht",
      treepath: "tree",
      blobpath: "tree",
      filetemplate: ({ domain, user, project, committish, path: path218 }) => `https://${domain}/${user}/${project}/blob/${maybeEncode(committish) || "HEAD"}/${path218}`,
      httpstemplate: ({ domain, user, project, committish }) => `https://${domain}/${user}/${project}${maybeJoin("#", committish)}`,
      tarballtemplate: ({ domain, user, project, committish }) => `https://${domain}/${user}/${project}/archive/${maybeEncode(committish) || "HEAD"}.tar.gz`,
      bugstemplate: () => null,
      extract: (url7) => {
        let [, user, project, aux] = url7.pathname.split("/", 4);
        if (["archive"].includes(aux)) {
          return;
        }
        if (project && project.endsWith(".git")) {
          project = project.slice(0, -4);
        }
        if (!user || !project) {
          return;
        }
        return { user, project, committish: url7.hash.slice(1) };
      }
    };
    for (const [name, host] of Object.entries(hosts)) {
      hosts[name] = Object.assign({}, defaults4, host);
    }
    module2.exports = hosts;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/hosted-git-info/9.0.3/2109584dc60275857b0bb7a452df75d1bbec343646448857992c1b9004dd6387/node_modules/hosted-git-info/lib/parse-url.js
var require_parse_url = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/hosted-git-info/9.0.3/2109584dc60275857b0bb7a452df75d1bbec343646448857992c1b9004dd6387/node_modules/hosted-git-info/lib/parse-url.js"(exports2, module2) {
    var url7 = __require("url");
    var lastIndexOfBefore = (str2, char, beforeChar) => {
      const startPosition = str2.indexOf(beforeChar);
      return str2.lastIndexOf(char, startPosition > -1 ? startPosition : Infinity);
    };
    var safeUrl = (u4) => {
      try {
        return new url7.URL(u4);
      } catch {
      }
    };
    var correctProtocol = (arg, protocols) => {
      const firstColon = arg.indexOf(":");
      const proto2 = arg.slice(0, firstColon + 1);
      if (Object.prototype.hasOwnProperty.call(protocols, proto2)) {
        return arg;
      }
      if (arg.substr(firstColon, 3) === "://") {
        return arg;
      }
      const firstAt = arg.indexOf("@");
      if (firstAt > -1) {
        if (firstAt > firstColon) {
          return `git+ssh://${arg}`;
        } else {
          return arg;
        }
      }
      return `${arg.slice(0, firstColon + 1)}//${arg.slice(firstColon + 1)}`;
    };
    var correctUrl2 = (giturl) => {
      const firstAt = lastIndexOfBefore(giturl, "@", "#");
      const lastColonBeforeHash = lastIndexOfBefore(giturl, ":", "#");
      if (lastColonBeforeHash > firstAt) {
        giturl = giturl.slice(0, lastColonBeforeHash) + "/" + giturl.slice(lastColonBeforeHash + 1);
      }
      if (lastIndexOfBefore(giturl, ":", "#") === -1 && giturl.indexOf("//") === -1) {
        giturl = `git+ssh://${giturl}`;
      }
      return giturl;
    };
    module2.exports = (giturl, protocols) => {
      const withProtocol = protocols ? correctProtocol(giturl, protocols) : giturl;
      return safeUrl(withProtocol) || safeUrl(correctUrl2(withProtocol));
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/hosted-git-info/9.0.3/2109584dc60275857b0bb7a452df75d1bbec343646448857992c1b9004dd6387/node_modules/hosted-git-info/lib/from-url.js
var require_from_url = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/hosted-git-info/9.0.3/2109584dc60275857b0bb7a452df75d1bbec343646448857992c1b9004dd6387/node_modules/hosted-git-info/lib/from-url.js"(exports2, module2) {
    "use strict";
    var parseUrl = require_parse_url();
    var isGitHubShorthand = (arg) => {
      const firstHash = arg.indexOf("#");
      const firstSlash = arg.indexOf("/");
      const secondSlash = arg.indexOf("/", firstSlash + 1);
      const firstColon = arg.indexOf(":");
      const firstSpace = /\s/.exec(arg);
      const firstAt = arg.indexOf("@");
      const spaceOnlyAfterHash = !firstSpace || firstHash > -1 && firstSpace.index > firstHash;
      const atOnlyAfterHash = firstAt === -1 || firstHash > -1 && firstAt > firstHash;
      const colonOnlyAfterHash = firstColon === -1 || firstHash > -1 && firstColon > firstHash;
      const secondSlashOnlyAfterHash = secondSlash === -1 || firstHash > -1 && secondSlash > firstHash;
      const hasSlash = firstSlash > 0;
      const doesNotEndWithSlash = firstHash > -1 ? arg[firstHash - 1] !== "/" : !arg.endsWith("/");
      const doesNotStartWithDot = !arg.startsWith(".");
      return spaceOnlyAfterHash && hasSlash && doesNotEndWithSlash && doesNotStartWithDot && atOnlyAfterHash && colonOnlyAfterHash && secondSlashOnlyAfterHash;
    };
    module2.exports = (giturl, opts2, { gitHosts, protocols }) => {
      if (!giturl) {
        return;
      }
      const correctedUrl = isGitHubShorthand(giturl) ? `github:${giturl}` : giturl;
      const parsed = parseUrl(correctedUrl, protocols);
      if (!parsed) {
        return;
      }
      const gitHostShortcut = gitHosts.byShortcut[parsed.protocol];
      const gitHostDomain = gitHosts.byDomain[parsed.hostname.startsWith("www.") ? parsed.hostname.slice(4) : parsed.hostname];
      const gitHostName = gitHostShortcut || gitHostDomain;
      if (!gitHostName) {
        return;
      }
      const gitHostInfo = gitHosts[gitHostShortcut || gitHostDomain];
      let auth = null;
      if (protocols[parsed.protocol]?.auth && (parsed.username || parsed.password)) {
        auth = `${parsed.username}${parsed.password ? ":" + parsed.password : ""}`;
      }
      let committish = null;
      let user = null;
      let project = null;
      let defaultRepresentation = null;
      try {
        if (gitHostShortcut) {
          let pathname = parsed.pathname.startsWith("/") ? parsed.pathname.slice(1) : parsed.pathname;
          const firstAt = pathname.indexOf("@");
          if (firstAt > -1) {
            pathname = pathname.slice(firstAt + 1);
          }
          const lastSlash = pathname.lastIndexOf("/");
          if (lastSlash > -1) {
            user = decodeURIComponent(pathname.slice(0, lastSlash));
            if (!user) {
              user = null;
            }
            project = decodeURIComponent(pathname.slice(lastSlash + 1));
          } else {
            project = decodeURIComponent(pathname);
          }
          if (project.endsWith(".git")) {
            project = project.slice(0, -4);
          }
          if (parsed.hash) {
            committish = decodeURIComponent(parsed.hash.slice(1));
          }
          defaultRepresentation = "shortcut";
        } else {
          if (!gitHostInfo.protocols.includes(parsed.protocol)) {
            return;
          }
          const segments = gitHostInfo.extract(parsed);
          if (!segments) {
            return;
          }
          user = segments.user && decodeURIComponent(segments.user);
          project = decodeURIComponent(segments.project);
          committish = decodeURIComponent(segments.committish);
          defaultRepresentation = protocols[parsed.protocol]?.name || parsed.protocol.slice(0, -1);
        }
      } catch (err) {
        if (err instanceof URIError) {
          return;
        } else {
          throw err;
        }
      }
      return [gitHostName, user, auth, project, committish, defaultRepresentation, opts2];
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/hosted-git-info/9.0.3/2109584dc60275857b0bb7a452df75d1bbec343646448857992c1b9004dd6387/node_modules/hosted-git-info/lib/index.js
var require_lib11 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/hosted-git-info/9.0.3/2109584dc60275857b0bb7a452df75d1bbec343646448857992c1b9004dd6387/node_modules/hosted-git-info/lib/index.js"(exports2, module2) {
    "use strict";
    var { LRUCache } = require_index_min();
    var hosts = require_hosts();
    var fromUrl = require_from_url();
    var parseUrl = require_parse_url();
    var cache = new LRUCache({ max: 1e3 });
    function unknownHostedUrl(url7) {
      try {
        const {
          protocol,
          hostname,
          pathname
        } = new URL(url7);
        if (!hostname) {
          return null;
        }
        const proto2 = /(?:git\+)http:$/.test(protocol) ? "http:" : "https:";
        const path218 = pathname.replace(/\.git$/, "");
        return `${proto2}//${hostname}${path218}`;
      } catch {
        return null;
      }
    }
    var GitHost = class _GitHost {
      constructor(type4, user, auth, project, committish, defaultRepresentation, opts2 = {}) {
        Object.assign(this, _GitHost.#gitHosts[type4], {
          type: type4,
          user,
          auth,
          project,
          committish,
          default: defaultRepresentation,
          opts: opts2
        });
      }
      static #gitHosts = { byShortcut: {}, byDomain: {} };
      static #protocols = {
        "git+ssh:": { name: "sshurl" },
        "ssh:": { name: "sshurl" },
        "git+https:": { name: "https", auth: true },
        "git:": { auth: true },
        "http:": { auth: true },
        "https:": { auth: true },
        "git+http:": { auth: true }
      };
      static addHost(name, host) {
        _GitHost.#gitHosts[name] = host;
        _GitHost.#gitHosts.byDomain[host.domain] = name;
        _GitHost.#gitHosts.byShortcut[`${name}:`] = name;
        _GitHost.#protocols[`${name}:`] = { name };
      }
      static fromUrl(giturl, opts2) {
        if (typeof giturl !== "string") {
          return;
        }
        const key = giturl + JSON.stringify(opts2 || {});
        if (!cache.has(key)) {
          const hostArgs = fromUrl(giturl, opts2, {
            gitHosts: _GitHost.#gitHosts,
            protocols: _GitHost.#protocols
          });
          cache.set(key, hostArgs ? new _GitHost(...hostArgs) : void 0);
        }
        return cache.get(key);
      }
      static fromManifest(manifest, opts2 = {}) {
        if (!manifest || typeof manifest !== "object") {
          return;
        }
        const r = manifest.repository;
        const rurl = r && (typeof r === "string" ? r : typeof r === "object" && typeof r.url === "string" ? r.url : null);
        if (!rurl) {
          throw new Error("no repository");
        }
        const info = rurl && _GitHost.fromUrl(rurl.replace(/^git\+/, ""), opts2) || null;
        if (info) {
          return info;
        }
        const unk = unknownHostedUrl(rurl);
        return _GitHost.fromUrl(unk, opts2) || unk;
      }
      static parseUrl(url7) {
        return parseUrl(url7);
      }
      #fill(template, opts2) {
        if (typeof template !== "function") {
          return null;
        }
        const options = { ...this, ...this.opts, ...opts2 };
        if (!options.path) {
          options.path = "";
        }
        if (options.path.startsWith("/")) {
          options.path = options.path.slice(1);
        }
        if (options.noCommittish) {
          options.committish = null;
        }
        const result2 = template(options);
        return options.noGitPlus && result2.startsWith("git+") ? result2.slice(4) : result2;
      }
      hash() {
        return this.committish ? `#${this.committish}` : "";
      }
      ssh(opts2) {
        return this.#fill(this.sshtemplate, opts2);
      }
      sshurl(opts2) {
        return this.#fill(this.sshurltemplate, opts2);
      }
      browse(path218, ...args) {
        if (typeof path218 !== "string") {
          return this.#fill(this.browsetemplate, path218);
        }
        if (typeof args[0] !== "string") {
          return this.#fill(this.browsetreetemplate, { ...args[0], path: path218 });
        }
        return this.#fill(this.browsetreetemplate, { ...args[1], fragment: args[0], path: path218 });
      }
      // If the path is known to be a file, then browseFile should be used. For some hosts
      // the url is the same as browse, but for others like GitHub a file can use both `/tree/`
      // and `/blob/` in the path. When using a default committish of `HEAD` then the `/tree/`
      // path will redirect to a specific commit. Using the `/blob/` path avoids this and
      // does not redirect to a different commit.
      browseFile(path218, ...args) {
        if (typeof args[0] !== "string") {
          return this.#fill(this.browseblobtemplate, { ...args[0], path: path218 });
        }
        return this.#fill(this.browseblobtemplate, { ...args[1], fragment: args[0], path: path218 });
      }
      docs(opts2) {
        return this.#fill(this.docstemplate, opts2);
      }
      bugs(opts2) {
        return this.#fill(this.bugstemplate, opts2);
      }
      https(opts2) {
        return this.#fill(this.httpstemplate, opts2);
      }
      git(opts2) {
        return this.#fill(this.gittemplate, opts2);
      }
      shortcut(opts2) {
        return this.#fill(this.shortcuttemplate, opts2);
      }
      path(opts2) {
        return this.#fill(this.pathtemplate, opts2);
      }
      tarball(opts2) {
        return this.#fill(this.tarballtemplate, { ...opts2, noCommittish: false });
      }
      file(path218, opts2) {
        return this.#fill(this.filetemplate, { ...opts2, path: path218 });
      }
      edit(path218, opts2) {
        return this.#fill(this.edittemplate, { ...opts2, path: path218 });
      }
      getDefaultRepresentation() {
        return this.default;
      }
      toString(opts2) {
        if (this.default && typeof this[this.default] === "function") {
          return this[this.default](opts2);
        }
        return this.sshurl(opts2);
      }
    };
    for (const [name, host] of Object.entries(hosts)) {
      GitHost.addHost(name, host);
    }
    module2.exports = GitHost;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/normalize-package-data/8.0.0/2d3fe23f5056f3e6a46d8746fc89c1b0171fe3ffadb3bf7835a3d897cae47213/node_modules/normalize-package-data/lib/extract_description.js
var require_extract_description = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/normalize-package-data/8.0.0/2d3fe23f5056f3e6a46d8746fc89c1b0171fe3ffadb3bf7835a3d897cae47213/node_modules/normalize-package-data/lib/extract_description.js"(exports2, module2) {
    module2.exports = extractDescription;
    function extractDescription(d) {
      if (!d) {
        return;
      }
      if (d === "ERROR: No README data found!") {
        return;
      }
      d = d.trim().split("\n");
      let s = 0;
      while (d[s] && d[s].trim().match(/^(#|$)/)) {
        s++;
      }
      const l = d.length;
      let e = s + 1;
      while (e < l && d[e].trim()) {
        e++;
      }
      return d.slice(s, e).join(" ").trim();
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/normalize-package-data/8.0.0/2d3fe23f5056f3e6a46d8746fc89c1b0171fe3ffadb3bf7835a3d897cae47213/node_modules/normalize-package-data/lib/typos.json
var require_typos = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/normalize-package-data/8.0.0/2d3fe23f5056f3e6a46d8746fc89c1b0171fe3ffadb3bf7835a3d897cae47213/node_modules/normalize-package-data/lib/typos.json"(exports2, module2) {
    module2.exports = {
      topLevel: {
        dependancies: "dependencies",
        dependecies: "dependencies",
        depdenencies: "dependencies",
        devEependencies: "devDependencies",
        depends: "dependencies",
        "dev-dependencies": "devDependencies",
        devDependences: "devDependencies",
        devDepenencies: "devDependencies",
        devdependencies: "devDependencies",
        repostitory: "repository",
        repo: "repository",
        prefereGlobal: "preferGlobal",
        hompage: "homepage",
        hampage: "homepage",
        autohr: "author",
        autor: "author",
        contributers: "contributors",
        publicationConfig: "publishConfig",
        script: "scripts"
      },
      bugs: { web: "url", name: "url" },
      script: { server: "start", tests: "test" }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/normalize-package-data/8.0.0/2d3fe23f5056f3e6a46d8746fc89c1b0171fe3ffadb3bf7835a3d897cae47213/node_modules/normalize-package-data/lib/fixer.js
var require_fixer = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/normalize-package-data/8.0.0/2d3fe23f5056f3e6a46d8746fc89c1b0171fe3ffadb3bf7835a3d897cae47213/node_modules/normalize-package-data/lib/fixer.js"(exports2, module2) {
    var { URL: URL7 } = __require("node:url");
    var isValidSemver = require_valid();
    var cleanSemver = require_clean();
    var validateLicense = require_validate_npm_package_license();
    var hostedGitInfo = require_lib11();
    var { isBuiltin } = __require("node:module");
    var depTypes = ["dependencies", "devDependencies", "optionalDependencies"];
    var extractDescription = require_extract_description();
    var typos = require_typos();
    var isEmail = (str2) => str2.includes("@") && str2.indexOf("@") < str2.lastIndexOf(".");
    module2.exports = {
      // default warning function
      warn: function() {
      },
      fixRepositoryField: function(data) {
        if (data.repositories) {
          this.warn("repositories");
          data.repository = data.repositories[0];
        }
        if (!data.repository) {
          return this.warn("missingRepository");
        }
        if (typeof data.repository === "string") {
          data.repository = {
            type: "git",
            url: data.repository
          };
        }
        var r = data.repository.url || "";
        if (r) {
          var hosted = hostedGitInfo.fromUrl(r);
          if (hosted) {
            r = data.repository.url = hosted.getDefaultRepresentation() === "shortcut" ? hosted.https() : hosted.toString();
          }
        }
        if (r.match(/github.com\/[^/]+\/[^/]+\.git\.git$/)) {
          this.warn("brokenGitUrl", r);
        }
      },
      fixTypos: function(data) {
        Object.keys(typos.topLevel).forEach(function(d) {
          if (Object.prototype.hasOwnProperty.call(data, d)) {
            this.warn("typo", d, typos.topLevel[d]);
          }
        }, this);
      },
      fixScriptsField: function(data) {
        if (!data.scripts) {
          return;
        }
        if (typeof data.scripts !== "object") {
          this.warn("nonObjectScripts");
          delete data.scripts;
          return;
        }
        Object.keys(data.scripts).forEach(function(k2) {
          if (typeof data.scripts[k2] !== "string") {
            this.warn("nonStringScript");
            delete data.scripts[k2];
          } else if (typos.script[k2] && !data.scripts[typos.script[k2]]) {
            this.warn("typo", k2, typos.script[k2], "scripts");
          }
        }, this);
      },
      fixFilesField: function(data) {
        var files = data.files;
        if (files && !Array.isArray(files)) {
          this.warn("nonArrayFiles");
          delete data.files;
        } else if (data.files) {
          data.files = data.files.filter(function(file) {
            if (!file || typeof file !== "string") {
              this.warn("invalidFilename", file);
              return false;
            } else {
              return true;
            }
          }, this);
        }
      },
      fixBinField: function(data) {
        if (!data.bin) {
          return;
        }
        if (typeof data.bin === "string") {
          var b = {};
          var match;
          if (match = data.name.match(/^@[^/]+[/](.*)$/)) {
            b[match[1]] = data.bin;
          } else {
            b[data.name] = data.bin;
          }
          data.bin = b;
        }
      },
      fixManField: function(data) {
        if (!data.man) {
          return;
        }
        if (typeof data.man === "string") {
          data.man = [data.man];
        }
      },
      fixBundleDependenciesField: function(data) {
        var bdd = "bundledDependencies";
        var bd = "bundleDependencies";
        if (data[bdd] && !data[bd]) {
          data[bd] = data[bdd];
          delete data[bdd];
        }
        if (data[bd] && !Array.isArray(data[bd])) {
          this.warn("nonArrayBundleDependencies");
          delete data[bd];
        } else if (data[bd]) {
          data[bd] = data[bd].filter(function(filtered) {
            if (!filtered || typeof filtered !== "string") {
              this.warn("nonStringBundleDependency", filtered);
              return false;
            } else {
              if (!data.dependencies) {
                data.dependencies = {};
              }
              if (!Object.prototype.hasOwnProperty.call(data.dependencies, filtered)) {
                this.warn("nonDependencyBundleDependency", filtered);
                data.dependencies[filtered] = "*";
              }
              return true;
            }
          }, this);
        }
      },
      fixDependencies: function(data) {
        objectifyDeps(data, this.warn);
        addOptionalDepsToDeps(data, this.warn);
        this.fixBundleDependenciesField(data);
        ["dependencies", "devDependencies"].forEach(function(deps) {
          if (!(deps in data)) {
            return;
          }
          if (!data[deps] || typeof data[deps] !== "object") {
            this.warn("nonObjectDependencies", deps);
            delete data[deps];
            return;
          }
          Object.keys(data[deps]).forEach(function(d) {
            var r = data[deps][d];
            if (typeof r !== "string") {
              this.warn("nonStringDependency", d, JSON.stringify(r));
              delete data[deps][d];
            }
            var hosted = hostedGitInfo.fromUrl(data[deps][d]);
            if (hosted) {
              data[deps][d] = hosted.toString();
            }
          }, this);
        }, this);
      },
      fixModulesField: function(data) {
        if (data.modules) {
          this.warn("deprecatedModules");
          delete data.modules;
        }
      },
      fixKeywordsField: function(data) {
        if (typeof data.keywords === "string") {
          data.keywords = data.keywords.split(/,\s+/);
        }
        if (data.keywords && !Array.isArray(data.keywords)) {
          delete data.keywords;
          this.warn("nonArrayKeywords");
        } else if (data.keywords) {
          data.keywords = data.keywords.filter(function(kw) {
            if (typeof kw !== "string" || !kw) {
              this.warn("nonStringKeyword");
              return false;
            } else {
              return true;
            }
          }, this);
        }
      },
      fixVersionField: function(data, strict) {
        var loose = !strict;
        if (!data.version) {
          data.version = "";
          return true;
        }
        if (!isValidSemver(data.version, loose)) {
          throw new Error('Invalid version: "' + data.version + '"');
        }
        data.version = cleanSemver(data.version, loose);
        return true;
      },
      fixPeople: function(data) {
        modifyPeople(data, unParsePerson);
        modifyPeople(data, parsePerson);
      },
      fixNameField: function(data, options) {
        if (typeof options === "boolean") {
          options = { strict: options };
        } else if (typeof options === "undefined") {
          options = {};
        }
        var strict = options.strict;
        if (!data.name && !strict) {
          data.name = "";
          return;
        }
        if (typeof data.name !== "string") {
          throw new Error("name field must be a string.");
        }
        if (!strict) {
          data.name = data.name.trim();
        }
        ensureValidName(data.name, strict, options.allowLegacyCase);
        if (isBuiltin(data.name)) {
          this.warn("conflictingName", data.name);
        }
      },
      fixDescriptionField: function(data) {
        if (data.description && typeof data.description !== "string") {
          this.warn("nonStringDescription");
          delete data.description;
        }
        if (data.readme && !data.description) {
          data.description = extractDescription(data.readme);
        }
        if (data.description === void 0) {
          delete data.description;
        }
        if (!data.description) {
          this.warn("missingDescription");
        }
      },
      fixReadmeField: function(data) {
        if (!data.readme) {
          this.warn("missingReadme");
          data.readme = "ERROR: No README data found!";
        }
      },
      fixBugsField: function(data) {
        if (!data.bugs && data.repository && data.repository.url) {
          var hosted = hostedGitInfo.fromUrl(data.repository.url);
          if (hosted && hosted.bugs()) {
            data.bugs = { url: hosted.bugs() };
          }
        } else if (data.bugs) {
          if (typeof data.bugs === "string") {
            if (isEmail(data.bugs)) {
              data.bugs = { email: data.bugs };
            } else if (URL7.canParse(data.bugs)) {
              data.bugs = { url: data.bugs };
            } else {
              this.warn("nonEmailUrlBugsString");
            }
          } else {
            bugsTypos(data.bugs, this.warn);
            var oldBugs = data.bugs;
            data.bugs = {};
            if (oldBugs.url) {
              if (URL7.canParse(oldBugs.url)) {
                data.bugs.url = oldBugs.url;
              } else {
                this.warn("nonUrlBugsUrlField");
              }
            }
            if (oldBugs.email) {
              if (typeof oldBugs.email === "string" && isEmail(oldBugs.email)) {
                data.bugs.email = oldBugs.email;
              } else {
                this.warn("nonEmailBugsEmailField");
              }
            }
          }
          if (!data.bugs.email && !data.bugs.url) {
            delete data.bugs;
            this.warn("emptyNormalizedBugs");
          }
        }
      },
      fixHomepageField: function(data) {
        if (!data.homepage && data.repository && data.repository.url) {
          var hosted = hostedGitInfo.fromUrl(data.repository.url);
          if (hosted && hosted.docs()) {
            data.homepage = hosted.docs();
          }
        }
        if (!data.homepage) {
          return;
        }
        if (typeof data.homepage !== "string") {
          this.warn("nonUrlHomepage");
          return delete data.homepage;
        }
        if (!URL7.canParse(data.homepage)) {
          data.homepage = "http://" + data.homepage;
        }
      },
      fixLicenseField: function(data) {
        const license = data.license || data.licence;
        if (!license) {
          return this.warn("missingLicense");
        }
        if (typeof license !== "string" || license.length < 1 || license.trim() === "") {
          return this.warn("invalidLicense");
        }
        if (!validateLicense(license).validForNewPackages) {
          return this.warn("invalidLicense");
        }
      }
    };
    function isValidScopedPackageName(spec) {
      if (spec.charAt(0) !== "@") {
        return false;
      }
      var rest = spec.slice(1).split("/");
      if (rest.length !== 2) {
        return false;
      }
      return rest[0] && rest[1] && rest[0] === encodeURIComponent(rest[0]) && rest[1] === encodeURIComponent(rest[1]);
    }
    function isCorrectlyEncodedName(spec) {
      return !spec.match(/[/@\s+%:]/) && spec === encodeURIComponent(spec);
    }
    function ensureValidName(name, strict, allowLegacyCase) {
      if (name.charAt(0) === "." || !(isValidScopedPackageName(name) || isCorrectlyEncodedName(name)) || strict && !allowLegacyCase && name !== name.toLowerCase() || name.toLowerCase() === "node_modules" || name.toLowerCase() === "favicon.ico") {
        throw new Error("Invalid name: " + JSON.stringify(name));
      }
    }
    function modifyPeople(data, fn) {
      if (data.author) {
        data.author = fn(data.author);
      }
      ["maintainers", "contributors"].forEach(function(set2) {
        if (!Array.isArray(data[set2])) {
          return;
        }
        data[set2] = data[set2].map(fn);
      });
      return data;
    }
    function unParsePerson(person) {
      if (typeof person === "string") {
        return person;
      }
      var name = person.name || "";
      var u4 = person.url || person.web;
      var wrappedUrl = u4 ? " (" + u4 + ")" : "";
      var e = person.email || person.mail;
      var wrappedEmail = e ? " <" + e + ">" : "";
      return name + wrappedEmail + wrappedUrl;
    }
    function parsePerson(person) {
      if (typeof person !== "string") {
        return person;
      }
      var matchedName = person.match(/^([^(<]+)/);
      var matchedUrl = person.match(/\(([^()]+)\)/);
      var matchedEmail = person.match(/<([^<>]+)>/);
      var obj = {};
      if (matchedName && matchedName[0].trim()) {
        obj.name = matchedName[0].trim();
      }
      if (matchedEmail) {
        obj.email = matchedEmail[1];
      }
      if (matchedUrl) {
        obj.url = matchedUrl[1];
      }
      return obj;
    }
    function addOptionalDepsToDeps(data) {
      var o2 = data.optionalDependencies;
      if (!o2) {
        return;
      }
      var d = data.dependencies || {};
      Object.keys(o2).forEach(function(k2) {
        d[k2] = o2[k2];
      });
      data.dependencies = d;
    }
    function depObjectify(deps, type4, warn) {
      if (!deps) {
        return {};
      }
      if (typeof deps === "string") {
        deps = deps.trim().split(/[\n\r\s\t ,]+/);
      }
      if (!Array.isArray(deps)) {
        return deps;
      }
      warn("deprecatedArrayDependencies", type4);
      var o2 = {};
      deps.filter(function(d) {
        return typeof d === "string";
      }).forEach(function(d) {
        d = d.trim().split(/(:?[@\s><=])/);
        var dn = d.shift();
        var dv = d.join("");
        dv = dv.trim();
        dv = dv.replace(/^@/, "");
        o2[dn] = dv;
      });
      return o2;
    }
    function objectifyDeps(data, warn) {
      depTypes.forEach(function(type4) {
        if (!data[type4]) {
          return;
        }
        data[type4] = depObjectify(data[type4], type4, warn);
      });
    }
    function bugsTypos(bugs, warn) {
      if (!bugs) {
        return;
      }
      Object.keys(bugs).forEach(function(k2) {
        if (typos.bugs[k2]) {
          warn("typo", k2, typos.bugs[k2], "bugs");
          bugs[typos.bugs[k2]] = bugs[k2];
          delete bugs[k2];
        }
      });
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/normalize-package-data/8.0.0/2d3fe23f5056f3e6a46d8746fc89c1b0171fe3ffadb3bf7835a3d897cae47213/node_modules/normalize-package-data/lib/warning_messages.json
var require_warning_messages = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/normalize-package-data/8.0.0/2d3fe23f5056f3e6a46d8746fc89c1b0171fe3ffadb3bf7835a3d897cae47213/node_modules/normalize-package-data/lib/warning_messages.json"(exports2, module2) {
    module2.exports = {
      repositories: "'repositories' (plural) Not supported. Please pick one as the 'repository' field",
      missingRepository: "No repository field.",
      brokenGitUrl: "Probably broken git url: %s",
      nonObjectScripts: "scripts must be an object",
      nonStringScript: "script values must be string commands",
      nonArrayFiles: "Invalid 'files' member",
      invalidFilename: "Invalid filename in 'files' list: %s",
      nonArrayBundleDependencies: "Invalid 'bundleDependencies' list. Must be array of package names",
      nonStringBundleDependency: "Invalid bundleDependencies member: %s",
      nonDependencyBundleDependency: "Non-dependency in bundleDependencies: %s",
      nonObjectDependencies: "%s field must be an object",
      nonStringDependency: "Invalid dependency: %s %s",
      deprecatedArrayDependencies: "specifying %s as array is deprecated",
      deprecatedModules: "modules field is deprecated",
      nonArrayKeywords: "keywords should be an array of strings",
      nonStringKeyword: "keywords should be an array of strings",
      conflictingName: "%s is also the name of a node core module.",
      nonStringDescription: "'description' field should be a string",
      missingDescription: "No description",
      missingReadme: "No README data",
      missingLicense: "No license field.",
      nonEmailUrlBugsString: "Bug string field must be url, email, or {email,url}",
      nonUrlBugsUrlField: "bugs.url field must be a string url. Deleted.",
      nonEmailBugsEmailField: "bugs.email field must be a string email. Deleted.",
      emptyNormalizedBugs: "Normalized value of bugs field is an empty object. Deleted.",
      nonUrlHomepage: "homepage field must be a string url. Deleted.",
      invalidLicense: "license should be a valid SPDX license expression",
      typo: "%s should probably be %s."
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/normalize-package-data/8.0.0/2d3fe23f5056f3e6a46d8746fc89c1b0171fe3ffadb3bf7835a3d897cae47213/node_modules/normalize-package-data/lib/make_warning.js
var require_make_warning = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/normalize-package-data/8.0.0/2d3fe23f5056f3e6a46d8746fc89c1b0171fe3ffadb3bf7835a3d897cae47213/node_modules/normalize-package-data/lib/make_warning.js"(exports2, module2) {
    var util56 = __require("util");
    var messages = require_warning_messages();
    module2.exports = function() {
      var args = Array.prototype.slice.call(arguments, 0);
      var warningName = args.shift();
      if (warningName === "typo") {
        return makeTypoWarning.apply(null, args);
      } else {
        var msgTemplate = messages[warningName] ? messages[warningName] : warningName + ": '%s'";
        args.unshift(msgTemplate);
        return util56.format.apply(null, args);
      }
    };
    function makeTypoWarning(providedName, probableName, field) {
      if (field) {
        providedName = field + "['" + providedName + "']";
        probableName = field + "['" + probableName + "']";
      }
      return util56.format(messages.typo, providedName, probableName);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/normalize-package-data/8.0.0/2d3fe23f5056f3e6a46d8746fc89c1b0171fe3ffadb3bf7835a3d897cae47213/node_modules/normalize-package-data/lib/normalize.js
var require_normalize = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/normalize-package-data/8.0.0/2d3fe23f5056f3e6a46d8746fc89c1b0171fe3ffadb3bf7835a3d897cae47213/node_modules/normalize-package-data/lib/normalize.js"(exports2, module2) {
    module2.exports = normalize11;
    var fixer = require_fixer();
    normalize11.fixer = fixer;
    var makeWarning = require_make_warning();
    var fieldsToFix = [
      "name",
      "version",
      "description",
      "repository",
      "modules",
      "scripts",
      "files",
      "bin",
      "man",
      "bugs",
      "keywords",
      "readme",
      "homepage",
      "license"
    ];
    var otherThingsToFix = ["dependencies", "people", "typos"];
    var thingsToFix = fieldsToFix.map(function(fieldName) {
      return ucFirst(fieldName) + "Field";
    });
    thingsToFix = thingsToFix.concat(otherThingsToFix);
    function normalize11(data, warn, strict) {
      if (warn === true) {
        warn = null;
        strict = true;
      }
      if (!strict) {
        strict = false;
      }
      if (!warn || data.private) {
        warn = function() {
        };
      }
      if (data.scripts && data.scripts.install === "node-gyp rebuild" && !data.scripts.preinstall) {
        data.gypfile = true;
      }
      fixer.warn = function() {
        warn(makeWarning.apply(null, arguments));
      };
      thingsToFix.forEach(function(thingName) {
        fixer["fix" + ucFirst(thingName)](data, strict);
      });
      data._id = data.name + "@" + data.version;
    }
    function ucFirst(string) {
      return string.charAt(0).toUpperCase() + string.slice(1);
    }
  }
});

// ../pkg-manifest/reader/lib/index.js
import path30 from "node:path";
import util9 from "node:util";
function readPackageJsonSync(pkgPath) {
  try {
    const manifest = loadJsonFileSync(pkgPath);
    (0, import_normalize_package_data.default)(manifest);
    return manifest;
  } catch (err) {
    if (err.code)
      throw err;
    throw new PnpmError("BAD_PACKAGE_JSON", `${pkgPath}: ${err.message}`);
  }
}
async function readPackageJson2(pkgPath) {
  try {
    const manifest = await loadJsonFile(pkgPath);
    (0, import_normalize_package_data.default)(manifest);
    return manifest;
  } catch (err) {
    if (err.code)
      throw err;
    throw new PnpmError("BAD_PACKAGE_JSON", `${pkgPath}: ${err.message}`);
  }
}
function readPackageJsonFromDirSync(pkgPath) {
  return readPackageJsonSync(path30.join(pkgPath, "package.json"));
}
async function readPackageJsonFromDir(pkgPath) {
  return readPackageJson2(path30.join(pkgPath, "package.json"));
}
async function safeReadPackageJson(pkgPath) {
  try {
    return await readPackageJson2(pkgPath);
  } catch (err) {
    if (err.code !== "ENOENT")
      throw err;
    return null;
  }
}
async function safeReadPackageJsonFromDir(pkgPath) {
  return safeReadPackageJson(path30.join(pkgPath, "package.json"));
}
function readPackageJsonFromDirRawSync(pkgPath) {
  try {
    return loadJsonFileSync(path30.join(pkgPath, "package.json"));
  } catch (err) {
    if (util9.types.isNativeError(err) && "code" in err)
      throw err;
    throw new PnpmError("BAD_PACKAGE_JSON", `${pkgPath}: ${err instanceof Error ? err.message : String(err)}`);
  }
}
var import_normalize_package_data;
var init_lib39 = __esm({
  "../pkg-manifest/reader/lib/index.js"() {
    "use strict";
    init_lib2();
    init_load_json_file();
    import_normalize_package_data = __toESM(require_normalize(), 1);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/npm-lifecycle/1100.0.0-1/12af32ded1ba80b8eb874c4120db44968a573346dc1c1fb484a14ac7ceac0cd9/node_modules/@pnpm/npm-lifecycle/lib/spawn.js
import { spawn as _spawn } from "child_process";
import { EventEmitter as EventEmitter2 } from "events";
function startRunning(log3) {
  if (progressEnabled == null) progressEnabled = log3.progressEnabled;
  if (progressEnabled) log3.disableProgress();
  ++running;
}
function stopRunning(log3) {
  --running;
  if (progressEnabled && running === 0) log3.enableProgress();
}
function willCmdOutput(stdio) {
  if (stdio === "inherit") return true;
  if (!Array.isArray(stdio)) return false;
  for (let fh = 1; fh <= 2; ++fh) {
    if (stdio[fh] === "inherit") return true;
    if (stdio[fh] === 1 || stdio[fh] === 2) return true;
  }
  return false;
}
function spawn2(cmd, args, options, log3) {
  const cmdWillOutput = willCmdOutput(options && options.stdio);
  if (cmdWillOutput) startRunning(log3);
  const raw = _spawn(cmd, args, options);
  const cooked = new EventEmitter2();
  raw.on("error", function(er) {
    if (cmdWillOutput) stopRunning(log3);
    er.file = cmd;
    cooked.emit("error", er);
  }).on("close", function(code, signal) {
    if (cmdWillOutput) stopRunning(log3);
    if (code === 127) {
      const er = new Error("spawn ENOENT");
      er.code = "ENOENT";
      er.errno = "ENOENT";
      er.syscall = "spawn";
      er.file = cmd;
      cooked.emit("error", er);
    } else {
      cooked.emit("close", code, signal);
    }
  });
  cooked.stdin = raw.stdin;
  cooked.stdout = raw.stdout;
  cooked.stderr = raw.stderr;
  cooked.kill = function(sig) {
    return raw.kill(sig);
  };
  return cooked;
}
var progressEnabled, running;
var init_spawn = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/npm-lifecycle/1100.0.0-1/12af32ded1ba80b8eb874c4120db44968a573346dc1c1fb484a14ac7ceac0cd9/node_modules/@pnpm/npm-lifecycle/lib/spawn.js"() {
    running = 0;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/tslib/2.8.1/ef04cb918080dbc449e2ce3d21f749e314adbcd20f189125968547b4240d49ef/node_modules/tslib/tslib.es6.mjs
var tslib_es6_exports = {};
__export(tslib_es6_exports, {
  __addDisposableResource: () => __addDisposableResource,
  __assign: () => __assign,
  __asyncDelegator: () => __asyncDelegator,
  __asyncGenerator: () => __asyncGenerator,
  __asyncValues: () => __asyncValues,
  __await: () => __await,
  __awaiter: () => __awaiter,
  __classPrivateFieldGet: () => __classPrivateFieldGet,
  __classPrivateFieldIn: () => __classPrivateFieldIn,
  __classPrivateFieldSet: () => __classPrivateFieldSet,
  __createBinding: () => __createBinding,
  __decorate: () => __decorate,
  __disposeResources: () => __disposeResources,
  __esDecorate: () => __esDecorate,
  __exportStar: () => __exportStar,
  __extends: () => __extends,
  __generator: () => __generator,
  __importDefault: () => __importDefault,
  __importStar: () => __importStar,
  __makeTemplateObject: () => __makeTemplateObject,
  __metadata: () => __metadata,
  __param: () => __param,
  __propKey: () => __propKey,
  __read: () => __read,
  __rest: () => __rest,
  __rewriteRelativeImportExtension: () => __rewriteRelativeImportExtension,
  __runInitializers: () => __runInitializers,
  __setFunctionName: () => __setFunctionName,
  __spread: () => __spread,
  __spreadArray: () => __spreadArray,
  __spreadArrays: () => __spreadArrays,
  __values: () => __values,
  default: () => tslib_es6_default
});
function __extends(d, b) {
  if (typeof b !== "function" && b !== null)
    throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
  extendStatics(d, b);
  function __() {
    this.constructor = d;
  }
  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
}
function __rest(s, e) {
  var t2 = {};
  for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
    t2[p] = s[p];
  if (s != null && typeof Object.getOwnPropertySymbols === "function")
    for (var i2 = 0, p = Object.getOwnPropertySymbols(s); i2 < p.length; i2++) {
      if (e.indexOf(p[i2]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i2]))
        t2[p[i2]] = s[p[i2]];
    }
  return t2;
}
function __decorate(decorators, target2, key, desc) {
  var c3 = arguments.length, r = c3 < 3 ? target2 : desc === null ? desc = Object.getOwnPropertyDescriptor(target2, key) : desc, d;
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target2, key, desc);
  else for (var i2 = decorators.length - 1; i2 >= 0; i2--) if (d = decorators[i2]) r = (c3 < 3 ? d(r) : c3 > 3 ? d(target2, key, r) : d(target2, key)) || r;
  return c3 > 3 && r && Object.defineProperty(target2, key, r), r;
}
function __param(paramIndex, decorator) {
  return function(target2, key) {
    decorator(target2, key, paramIndex);
  };
}
function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
  function accept(f) {
    if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected");
    return f;
  }
  var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
  var target2 = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
  var descriptor = descriptorIn || (target2 ? Object.getOwnPropertyDescriptor(target2, contextIn.name) : {});
  var _, done = false;
  for (var i2 = decorators.length - 1; i2 >= 0; i2--) {
    var context = {};
    for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
    for (var p in contextIn.access) context.access[p] = contextIn.access[p];
    context.addInitializer = function(f) {
      if (done) throw new TypeError("Cannot add initializers after decoration has completed");
      extraInitializers.push(accept(f || null));
    };
    var result2 = (0, decorators[i2])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
    if (kind === "accessor") {
      if (result2 === void 0) continue;
      if (result2 === null || typeof result2 !== "object") throw new TypeError("Object expected");
      if (_ = accept(result2.get)) descriptor.get = _;
      if (_ = accept(result2.set)) descriptor.set = _;
      if (_ = accept(result2.init)) initializers.unshift(_);
    } else if (_ = accept(result2)) {
      if (kind === "field") initializers.unshift(_);
      else descriptor[key] = _;
    }
  }
  if (target2) Object.defineProperty(target2, contextIn.name, descriptor);
  done = true;
}
function __runInitializers(thisArg, initializers, value) {
  var useValue = arguments.length > 2;
  for (var i2 = 0; i2 < initializers.length; i2++) {
    value = useValue ? initializers[i2].call(thisArg, value) : initializers[i2].call(thisArg);
  }
  return useValue ? value : void 0;
}
function __propKey(x) {
  return typeof x === "symbol" ? x : "".concat(x);
}
function __setFunctionName(f, name, prefix) {
  if (typeof name === "symbol") name = name.description ? "[".concat(name.description, "]") : "";
  return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name });
}
function __metadata(metadataKey, metadataValue) {
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue);
}
function __awaiter(thisArg, _arguments, P2, generator) {
  function adopt(value) {
    return value instanceof P2 ? value : new P2(function(resolve3) {
      resolve3(value);
    });
  }
  return new (P2 || (P2 = Promise))(function(resolve3, reject3) {
    function fulfilled(value) {
      try {
        step2(generator.next(value));
      } catch (e) {
        reject3(e);
      }
    }
    function rejected(value) {
      try {
        step2(generator["throw"](value));
      } catch (e) {
        reject3(e);
      }
    }
    function step2(result2) {
      result2.done ? resolve3(result2.value) : adopt(result2.value).then(fulfilled, rejected);
    }
    step2((generator = generator.apply(thisArg, _arguments || [])).next());
  });
}
function __generator(thisArg, body) {
  var _ = { label: 0, sent: function() {
    if (t2[0] & 1) throw t2[1];
    return t2[1];
  }, trys: [], ops: [] }, f, y, t2, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
  return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() {
    return this;
  }), g;
  function verb(n2) {
    return function(v) {
      return step2([n2, v]);
    };
  }
  function step2(op) {
    if (f) throw new TypeError("Generator is already executing.");
    while (g && (g = 0, op[0] && (_ = 0)), _) try {
      if (f = 1, y && (t2 = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t2 = y["return"]) && t2.call(y), 0) : y.next) && !(t2 = t2.call(y, op[1])).done) return t2;
      if (y = 0, t2) op = [op[0] & 2, t2.value];
      switch (op[0]) {
        case 0:
        case 1:
          t2 = op;
          break;
        case 4:
          _.label++;
          return { value: op[1], done: false };
        case 5:
          _.label++;
          y = op[1];
          op = [0];
          continue;
        case 7:
          op = _.ops.pop();
          _.trys.pop();
          continue;
        default:
          if (!(t2 = _.trys, t2 = t2.length > 0 && t2[t2.length - 1]) && (op[0] === 6 || op[0] === 2)) {
            _ = 0;
            continue;
          }
          if (op[0] === 3 && (!t2 || op[1] > t2[0] && op[1] < t2[3])) {
            _.label = op[1];
            break;
          }
          if (op[0] === 6 && _.label < t2[1]) {
            _.label = t2[1];
            t2 = op;
            break;
          }
          if (t2 && _.label < t2[2]) {
            _.label = t2[2];
            _.ops.push(op);
            break;
          }
          if (t2[2]) _.ops.pop();
          _.trys.pop();
          continue;
      }
      op = body.call(thisArg, _);
    } catch (e) {
      op = [6, e];
      y = 0;
    } finally {
      f = t2 = 0;
    }
    if (op[0] & 5) throw op[1];
    return { value: op[0] ? op[1] : void 0, done: true };
  }
}
function __exportStar(m, o2) {
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(o2, p)) __createBinding(o2, m, p);
}
function __values(o2) {
  var s = typeof Symbol === "function" && Symbol.iterator, m = s && o2[s], i2 = 0;
  if (m) return m.call(o2);
  if (o2 && typeof o2.length === "number") return {
    next: function() {
      if (o2 && i2 >= o2.length) o2 = void 0;
      return { value: o2 && o2[i2++], done: !o2 };
    }
  };
  throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
}
function __read(o2, n2) {
  var m = typeof Symbol === "function" && o2[Symbol.iterator];
  if (!m) return o2;
  var i2 = m.call(o2), r, ar = [], e;
  try {
    while ((n2 === void 0 || n2-- > 0) && !(r = i2.next()).done) ar.push(r.value);
  } catch (error) {
    e = { error };
  } finally {
    try {
      if (r && !r.done && (m = i2["return"])) m.call(i2);
    } finally {
      if (e) throw e.error;
    }
  }
  return ar;
}
function __spread() {
  for (var ar = [], i2 = 0; i2 < arguments.length; i2++)
    ar = ar.concat(__read(arguments[i2]));
  return ar;
}
function __spreadArrays() {
  for (var s = 0, i2 = 0, il = arguments.length; i2 < il; i2++) s += arguments[i2].length;
  for (var r = Array(s), k2 = 0, i2 = 0; i2 < il; i2++)
    for (var a2 = arguments[i2], j2 = 0, jl = a2.length; j2 < jl; j2++, k2++)
      r[k2] = a2[j2];
  return r;
}
function __spreadArray(to, from5, pack2) {
  if (pack2 || arguments.length === 2) for (var i2 = 0, l = from5.length, ar; i2 < l; i2++) {
    if (ar || !(i2 in from5)) {
      if (!ar) ar = Array.prototype.slice.call(from5, 0, i2);
      ar[i2] = from5[i2];
    }
  }
  return to.concat(ar || Array.prototype.slice.call(from5));
}
function __await(v) {
  return this instanceof __await ? (this.v = v, this) : new __await(v);
}
function __asyncGenerator(thisArg, _arguments, generator) {
  if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
  var g = generator.apply(thisArg, _arguments || []), i2, q = [];
  return i2 = Object.create((typeof AsyncIterator === "function" ? AsyncIterator : Object).prototype), verb("next"), verb("throw"), verb("return", awaitReturn), i2[Symbol.asyncIterator] = function() {
    return this;
  }, i2;
  function awaitReturn(f) {
    return function(v) {
      return Promise.resolve(v).then(f, reject3);
    };
  }
  function verb(n2, f) {
    if (g[n2]) {
      i2[n2] = function(v) {
        return new Promise(function(a2, b) {
          q.push([n2, v, a2, b]) > 1 || resume(n2, v);
        });
      };
      if (f) i2[n2] = f(i2[n2]);
    }
  }
  function resume(n2, v) {
    try {
      step2(g[n2](v));
    } catch (e) {
      settle(q[0][3], e);
    }
  }
  function step2(r) {
    r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject3) : settle(q[0][2], r);
  }
  function fulfill(value) {
    resume("next", value);
  }
  function reject3(value) {
    resume("throw", value);
  }
  function settle(f, v) {
    if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]);
  }
}
function __asyncDelegator(o2) {
  var i2, p;
  return i2 = {}, verb("next"), verb("throw", function(e) {
    throw e;
  }), verb("return"), i2[Symbol.iterator] = function() {
    return this;
  }, i2;
  function verb(n2, f) {
    i2[n2] = o2[n2] ? function(v) {
      return (p = !p) ? { value: __await(o2[n2](v)), done: false } : f ? f(v) : v;
    } : f;
  }
}
function __asyncValues(o2) {
  if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
  var m = o2[Symbol.asyncIterator], i2;
  return m ? m.call(o2) : (o2 = typeof __values === "function" ? __values(o2) : o2[Symbol.iterator](), i2 = {}, verb("next"), verb("throw"), verb("return"), i2[Symbol.asyncIterator] = function() {
    return this;
  }, i2);
  function verb(n2) {
    i2[n2] = o2[n2] && function(v) {
      return new Promise(function(resolve3, reject3) {
        v = o2[n2](v), settle(resolve3, reject3, v.done, v.value);
      });
    };
  }
  function settle(resolve3, reject3, d, v) {
    Promise.resolve(v).then(function(v2) {
      resolve3({ value: v2, done: d });
    }, reject3);
  }
}
function __makeTemplateObject(cooked, raw) {
  if (Object.defineProperty) {
    Object.defineProperty(cooked, "raw", { value: raw });
  } else {
    cooked.raw = raw;
  }
  return cooked;
}
function __importStar(mod) {
  if (mod && mod.__esModule) return mod;
  var result2 = {};
  if (mod != null) {
    for (var k2 = ownKeys(mod), i2 = 0; i2 < k2.length; i2++) if (k2[i2] !== "default") __createBinding(result2, mod, k2[i2]);
  }
  __setModuleDefault(result2, mod);
  return result2;
}
function __importDefault(mod) {
  return mod && mod.__esModule ? mod : { default: mod };
}
function __classPrivateFieldGet(receiver, state, kind, f) {
  if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
}
function __classPrivateFieldSet(receiver, state, value, kind, f) {
  if (kind === "m") throw new TypeError("Private method is not writable");
  if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
  return kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value), value;
}
function __classPrivateFieldIn(state, receiver) {
  if (receiver === null || typeof receiver !== "object" && typeof receiver !== "function") throw new TypeError("Cannot use 'in' operator on non-object");
  return typeof state === "function" ? receiver === state : state.has(receiver);
}
function __addDisposableResource(env3, value, async) {
  if (value !== null && value !== void 0) {
    if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
    var dispose, inner;
    if (async) {
      if (!Symbol.asyncDispose) throw new TypeError("Symbol.asyncDispose is not defined.");
      dispose = value[Symbol.asyncDispose];
    }
    if (dispose === void 0) {
      if (!Symbol.dispose) throw new TypeError("Symbol.dispose is not defined.");
      dispose = value[Symbol.dispose];
      if (async) inner = dispose;
    }
    if (typeof dispose !== "function") throw new TypeError("Object not disposable.");
    if (inner) dispose = function() {
      try {
        inner.call(this);
      } catch (e) {
        return Promise.reject(e);
      }
    };
    env3.stack.push({ value, dispose, async });
  } else if (async) {
    env3.stack.push({ async: true });
  }
  return value;
}
function __disposeResources(env3) {
  function fail(e) {
    env3.error = env3.hasError ? new _SuppressedError(e, env3.error, "An error was suppressed during disposal.") : e;
    env3.hasError = true;
  }
  var r, s = 0;
  function next2() {
    while (r = env3.stack.pop()) {
      try {
        if (!r.async && s === 1) return s = 0, env3.stack.push(r), Promise.resolve().then(next2);
        if (r.dispose) {
          var result2 = r.dispose.call(r.value);
          if (r.async) return s |= 2, Promise.resolve(result2).then(next2, function(e) {
            fail(e);
            return next2();
          });
        } else s |= 1;
      } catch (e) {
        fail(e);
      }
    }
    if (s === 1) return env3.hasError ? Promise.reject(env3.error) : Promise.resolve();
    if (env3.hasError) throw env3.error;
  }
  return next2();
}
function __rewriteRelativeImportExtension(path218, preserveJsx) {
  if (typeof path218 === "string" && /^\.\.?\//.test(path218)) {
    return path218.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i, function(m, tsx, d, ext, cm) {
      return tsx ? preserveJsx ? ".jsx" : ".js" : d && (!ext || !cm) ? m : d + ext + "." + cm.toLowerCase() + "js";
    });
  }
  return path218;
}
var extendStatics, __assign, __createBinding, __setModuleDefault, ownKeys, _SuppressedError, tslib_es6_default;
var init_tslib_es6 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/tslib/2.8.1/ef04cb918080dbc449e2ce3d21f749e314adbcd20f189125968547b4240d49ef/node_modules/tslib/tslib.es6.mjs"() {
    extendStatics = function(d, b) {
      extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) {
        d2.__proto__ = b2;
      } || function(d2, b2) {
        for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p];
      };
      return extendStatics(d, b);
    };
    __assign = function() {
      __assign = Object.assign || function __assign2(t2) {
        for (var s, i2 = 1, n2 = arguments.length; i2 < n2; i2++) {
          s = arguments[i2];
          for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t2[p] = s[p];
        }
        return t2;
      };
      return __assign.apply(this, arguments);
    };
    __createBinding = Object.create ? (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      var desc = Object.getOwnPropertyDescriptor(m, k2);
      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
        desc = { enumerable: true, get: function() {
          return m[k2];
        } };
      }
      Object.defineProperty(o2, k22, desc);
    }) : (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      o2[k22] = m[k2];
    });
    __setModuleDefault = Object.create ? (function(o2, v) {
      Object.defineProperty(o2, "default", { enumerable: true, value: v });
    }) : function(o2, v) {
      o2["default"] = v;
    };
    ownKeys = function(o2) {
      ownKeys = Object.getOwnPropertyNames || function(o3) {
        var ar = [];
        for (var k2 in o3) if (Object.prototype.hasOwnProperty.call(o3, k2)) ar[ar.length] = k2;
        return ar;
      };
      return ownKeys(o2);
    };
    _SuppressedError = typeof SuppressedError === "function" ? SuppressedError : function(error, suppressed, message) {
      var e = new Error(message);
      return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
    };
    tslib_es6_default = {
      __extends,
      __assign,
      __rest,
      __decorate,
      __param,
      __esDecorate,
      __runInitializers,
      __propKey,
      __setFunctionName,
      __metadata,
      __awaiter,
      __generator,
      __createBinding,
      __exportStar,
      __values,
      __read,
      __spread,
      __spreadArrays,
      __spreadArray,
      __await,
      __asyncGenerator,
      __asyncDelegator,
      __asyncValues,
      __makeTemplateObject,
      __importStar,
      __importDefault,
      __classPrivateFieldGet,
      __classPrivateFieldSet,
      __classPrivateFieldIn,
      __addDisposableResource,
      __disposeResources,
      __rewriteRelativeImportExtension
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/constants.js
var require_constants6 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/constants.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.SAFE_TIME = exports2.S_IFLNK = exports2.S_IFREG = exports2.S_IFDIR = exports2.S_IFMT = void 0;
    exports2.S_IFMT = 61440;
    exports2.S_IFDIR = 16384;
    exports2.S_IFREG = 32768;
    exports2.S_IFLNK = 40960;
    exports2.SAFE_TIME = 456789e3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/errors.js
var require_errors2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/errors.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.EBUSY = EBUSY;
    exports2.ENOSYS = ENOSYS;
    exports2.EINVAL = EINVAL;
    exports2.EBADF = EBADF;
    exports2.ENOENT = ENOENT;
    exports2.ENOTDIR = ENOTDIR;
    exports2.EISDIR = EISDIR;
    exports2.EEXIST = EEXIST;
    exports2.EROFS = EROFS;
    exports2.ENOTEMPTY = ENOTEMPTY;
    exports2.EOPNOTSUPP = EOPNOTSUPP;
    exports2.ERR_DIR_CLOSED = ERR_DIR_CLOSED;
    function makeError2(code, message) {
      return Object.assign(new Error(`${code}: ${message}`), { code });
    }
    function EBUSY(message) {
      return makeError2(`EBUSY`, message);
    }
    function ENOSYS(message, reason) {
      return makeError2(`ENOSYS`, `${message}, ${reason}`);
    }
    function EINVAL(reason) {
      return makeError2(`EINVAL`, `invalid argument, ${reason}`);
    }
    function EBADF(reason) {
      return makeError2(`EBADF`, `bad file descriptor, ${reason}`);
    }
    function ENOENT(reason) {
      return makeError2(`ENOENT`, `no such file or directory, ${reason}`);
    }
    function ENOTDIR(reason) {
      return makeError2(`ENOTDIR`, `not a directory, ${reason}`);
    }
    function EISDIR(reason) {
      return makeError2(`EISDIR`, `illegal operation on a directory, ${reason}`);
    }
    function EEXIST(reason) {
      return makeError2(`EEXIST`, `file already exists, ${reason}`);
    }
    function EROFS(reason) {
      return makeError2(`EROFS`, `read-only filesystem, ${reason}`);
    }
    function ENOTEMPTY(reason) {
      return makeError2(`ENOTEMPTY`, `directory not empty, ${reason}`);
    }
    function EOPNOTSUPP(reason) {
      return makeError2(`EOPNOTSUPP`, `operation not supported, ${reason}`);
    }
    function ERR_DIR_CLOSED() {
      return makeError2(`ERR_DIR_CLOSED`, `Directory handle was closed`);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/statUtils.js
var require_statUtils = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/statUtils.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.BigIntStatsEntry = exports2.StatEntry = exports2.DirEntry = exports2.DEFAULT_MODE = void 0;
    exports2.makeDefaultStats = makeDefaultStats;
    exports2.makeEmptyStats = makeEmptyStats;
    exports2.clearStats = clearStats;
    exports2.convertToBigIntStats = convertToBigIntStats;
    exports2.areStatsEqual = areStatsEqual;
    var tslib_12 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
    var nodeUtils = tslib_12.__importStar(__require("util"));
    var constants_1 = require_constants6();
    exports2.DEFAULT_MODE = constants_1.S_IFREG | 420;
    var DirEntry = class {
      constructor() {
        this.name = ``;
        this.path = ``;
        this.mode = 0;
      }
      isBlockDevice() {
        return false;
      }
      isCharacterDevice() {
        return false;
      }
      isDirectory() {
        return (this.mode & constants_1.S_IFMT) === constants_1.S_IFDIR;
      }
      isFIFO() {
        return false;
      }
      isFile() {
        return (this.mode & constants_1.S_IFMT) === constants_1.S_IFREG;
      }
      isSocket() {
        return false;
      }
      isSymbolicLink() {
        return (this.mode & constants_1.S_IFMT) === constants_1.S_IFLNK;
      }
    };
    exports2.DirEntry = DirEntry;
    var StatEntry = class {
      constructor() {
        this.uid = 0;
        this.gid = 0;
        this.size = 0;
        this.blksize = 0;
        this.atimeMs = 0;
        this.mtimeMs = 0;
        this.ctimeMs = 0;
        this.birthtimeMs = 0;
        this.atime = /* @__PURE__ */ new Date(0);
        this.mtime = /* @__PURE__ */ new Date(0);
        this.ctime = /* @__PURE__ */ new Date(0);
        this.birthtime = /* @__PURE__ */ new Date(0);
        this.dev = 0;
        this.ino = 0;
        this.mode = exports2.DEFAULT_MODE;
        this.nlink = 1;
        this.rdev = 0;
        this.blocks = 1;
      }
      isBlockDevice() {
        return false;
      }
      isCharacterDevice() {
        return false;
      }
      isDirectory() {
        return (this.mode & constants_1.S_IFMT) === constants_1.S_IFDIR;
      }
      isFIFO() {
        return false;
      }
      isFile() {
        return (this.mode & constants_1.S_IFMT) === constants_1.S_IFREG;
      }
      isSocket() {
        return false;
      }
      isSymbolicLink() {
        return (this.mode & constants_1.S_IFMT) === constants_1.S_IFLNK;
      }
    };
    exports2.StatEntry = StatEntry;
    var BigIntStatsEntry = class {
      constructor() {
        this.uid = BigInt(0);
        this.gid = BigInt(0);
        this.size = BigInt(0);
        this.blksize = BigInt(0);
        this.atimeMs = BigInt(0);
        this.mtimeMs = BigInt(0);
        this.ctimeMs = BigInt(0);
        this.birthtimeMs = BigInt(0);
        this.atimeNs = BigInt(0);
        this.mtimeNs = BigInt(0);
        this.ctimeNs = BigInt(0);
        this.birthtimeNs = BigInt(0);
        this.atime = /* @__PURE__ */ new Date(0);
        this.mtime = /* @__PURE__ */ new Date(0);
        this.ctime = /* @__PURE__ */ new Date(0);
        this.birthtime = /* @__PURE__ */ new Date(0);
        this.dev = BigInt(0);
        this.ino = BigInt(0);
        this.mode = BigInt(exports2.DEFAULT_MODE);
        this.nlink = BigInt(1);
        this.rdev = BigInt(0);
        this.blocks = BigInt(1);
      }
      isBlockDevice() {
        return false;
      }
      isCharacterDevice() {
        return false;
      }
      isDirectory() {
        return (this.mode & BigInt(constants_1.S_IFMT)) === BigInt(constants_1.S_IFDIR);
      }
      isFIFO() {
        return false;
      }
      isFile() {
        return (this.mode & BigInt(constants_1.S_IFMT)) === BigInt(constants_1.S_IFREG);
      }
      isSocket() {
        return false;
      }
      isSymbolicLink() {
        return (this.mode & BigInt(constants_1.S_IFMT)) === BigInt(constants_1.S_IFLNK);
      }
    };
    exports2.BigIntStatsEntry = BigIntStatsEntry;
    function makeDefaultStats() {
      return new StatEntry();
    }
    function makeEmptyStats() {
      return clearStats(makeDefaultStats());
    }
    function clearStats(stats) {
      for (const key in stats) {
        if (Object.hasOwn(stats, key)) {
          const element = stats[key];
          if (typeof element === `number`) {
            stats[key] = 0;
          } else if (typeof element === `bigint`) {
            stats[key] = BigInt(0);
          } else if (nodeUtils.types.isDate(element)) {
            stats[key] = /* @__PURE__ */ new Date(0);
          }
        }
      }
      return stats;
    }
    function convertToBigIntStats(stats) {
      const bigintStats = new BigIntStatsEntry();
      for (const key in stats) {
        if (Object.hasOwn(stats, key)) {
          const element = stats[key];
          if (typeof element === `number`) {
            bigintStats[key] = BigInt(Math.floor(element));
          } else if (nodeUtils.types.isDate(element)) {
            bigintStats[key] = new Date(element);
          }
        }
      }
      bigintStats.atimeNs = bigintStats.atimeMs * BigInt(1e6) + BigInt(Math.floor(stats.atimeMs % 1 * 1e3)) * BigInt(1e3);
      bigintStats.mtimeNs = bigintStats.mtimeMs * BigInt(1e6) + BigInt(Math.floor(stats.mtimeMs % 1 * 1e3)) * BigInt(1e3);
      bigintStats.ctimeNs = bigintStats.ctimeMs * BigInt(1e6) + BigInt(Math.floor(stats.ctimeMs % 1 * 1e3)) * BigInt(1e3);
      bigintStats.birthtimeNs = bigintStats.birthtimeMs * BigInt(1e6) + BigInt(Math.floor(stats.birthtimeMs % 1 * 1e3)) * BigInt(1e3);
      return bigintStats;
    }
    function areStatsEqual(a2, b) {
      if (a2.atimeMs !== b.atimeMs)
        return false;
      if (a2.birthtimeMs !== b.birthtimeMs)
        return false;
      if (a2.blksize !== b.blksize)
        return false;
      if (a2.blocks !== b.blocks)
        return false;
      if (a2.ctimeMs !== b.ctimeMs)
        return false;
      if (a2.dev !== b.dev)
        return false;
      if (a2.gid !== b.gid)
        return false;
      if (a2.ino !== b.ino)
        return false;
      if (a2.isBlockDevice() !== b.isBlockDevice())
        return false;
      if (a2.isCharacterDevice() !== b.isCharacterDevice())
        return false;
      if (a2.isDirectory() !== b.isDirectory())
        return false;
      if (a2.isFIFO() !== b.isFIFO())
        return false;
      if (a2.isFile() !== b.isFile())
        return false;
      if (a2.isSocket() !== b.isSocket())
        return false;
      if (a2.isSymbolicLink() !== b.isSymbolicLink())
        return false;
      if (a2.mode !== b.mode)
        return false;
      if (a2.mtimeMs !== b.mtimeMs)
        return false;
      if (a2.nlink !== b.nlink)
        return false;
      if (a2.rdev !== b.rdev)
        return false;
      if (a2.size !== b.size)
        return false;
      if (a2.uid !== b.uid)
        return false;
      const aN = a2;
      const bN = b;
      if (aN.atimeNs !== bN.atimeNs)
        return false;
      if (aN.mtimeNs !== bN.mtimeNs)
        return false;
      if (aN.ctimeNs !== bN.ctimeNs)
        return false;
      if (aN.birthtimeNs !== bN.birthtimeNs)
        return false;
      return true;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/path.js
var require_path = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/path.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.ppath = exports2.npath = exports2.Filename = exports2.PortablePath = void 0;
    exports2.convertPath = convertPath;
    var tslib_12 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
    var path_1 = tslib_12.__importDefault(__require("path"));
    var PathType;
    (function(PathType2) {
      PathType2[PathType2["File"] = 0] = "File";
      PathType2[PathType2["Portable"] = 1] = "Portable";
      PathType2[PathType2["Native"] = 2] = "Native";
    })(PathType || (PathType = {}));
    exports2.PortablePath = {
      root: `/`,
      dot: `.`,
      parent: `..`
    };
    exports2.Filename = {
      home: `~`,
      nodeModules: `node_modules`,
      manifest: `package.json`,
      lockfile: `yarn.lock`,
      virtual: `__virtual__`,
      /**
       * @deprecated
       */
      pnpJs: `.pnp.js`,
      pnpCjs: `.pnp.cjs`,
      pnpData: `.pnp.data.json`,
      pnpEsmLoader: `.pnp.loader.mjs`,
      rc: `.yarnrc.yml`,
      env: `.env`
    };
    exports2.npath = Object.create(path_1.default);
    exports2.ppath = Object.create(path_1.default.posix);
    exports2.npath.cwd = () => process.cwd();
    exports2.ppath.cwd = process.platform === `win32` ? () => toPortablePath(process.cwd()) : process.cwd;
    if (process.platform === `win32`) {
      exports2.ppath.resolve = (...segments) => {
        if (segments.length > 0 && exports2.ppath.isAbsolute(segments[0])) {
          return path_1.default.posix.resolve(...segments);
        } else {
          return path_1.default.posix.resolve(exports2.ppath.cwd(), ...segments);
        }
      };
    }
    var contains3 = function(pathUtils, from5, to) {
      from5 = pathUtils.normalize(from5);
      to = pathUtils.normalize(to);
      if (from5 === to)
        return `.`;
      if (!from5.endsWith(pathUtils.sep))
        from5 = from5 + pathUtils.sep;
      if (to.startsWith(from5)) {
        return to.slice(from5.length);
      } else {
        return null;
      }
    };
    exports2.npath.contains = (from5, to) => contains3(exports2.npath, from5, to);
    exports2.ppath.contains = (from5, to) => contains3(exports2.ppath, from5, to);
    var WINDOWS_PATH_REGEXP = /^([a-zA-Z]:.*)$/;
    var UNC_WINDOWS_PATH_REGEXP = /^\/\/(\.\/)?(.*)$/;
    var PORTABLE_PATH_REGEXP = /^\/([a-zA-Z]:.*)$/;
    var UNC_PORTABLE_PATH_REGEXP = /^\/unc\/(\.dot\/)?(.*)$/;
    function fromPortablePathWin32(p) {
      let portablePathMatch, uncPortablePathMatch;
      if (portablePathMatch = p.match(PORTABLE_PATH_REGEXP))
        p = portablePathMatch[1];
      else if (uncPortablePathMatch = p.match(UNC_PORTABLE_PATH_REGEXP))
        p = `\\\\${uncPortablePathMatch[1] ? `.\\` : ``}${uncPortablePathMatch[2]}`;
      else
        return p;
      return p.replace(/\//g, `\\`);
    }
    function toPortablePathWin32(p) {
      p = p.replace(/\\/g, `/`);
      let windowsPathMatch, uncWindowsPathMatch;
      if (windowsPathMatch = p.match(WINDOWS_PATH_REGEXP))
        p = `/${windowsPathMatch[1]}`;
      else if (uncWindowsPathMatch = p.match(UNC_WINDOWS_PATH_REGEXP))
        p = `/unc/${uncWindowsPathMatch[1] ? `.dot/` : ``}${uncWindowsPathMatch[2]}`;
      return p;
    }
    var toPortablePath = process.platform === `win32` ? toPortablePathWin32 : (p) => p;
    var fromPortablePath = process.platform === `win32` ? fromPortablePathWin32 : (p) => p;
    exports2.npath.fromPortablePath = fromPortablePath;
    exports2.npath.toPortablePath = toPortablePath;
    function convertPath(targetPathUtils, sourcePath) {
      return targetPathUtils === exports2.npath ? fromPortablePath(sourcePath) : toPortablePath(sourcePath);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/algorithms/copyPromise.js
var require_copyPromise = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/algorithms/copyPromise.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.setupCopyIndex = setupCopyIndex;
    exports2.copyPromise = copyPromise;
    var tslib_12 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
    var constants5 = tslib_12.__importStar(require_constants6());
    var path_1 = require_path();
    var defaultTime = new Date(constants5.SAFE_TIME * 1e3);
    var defaultTimeMs = defaultTime.getTime();
    async function setupCopyIndex(destinationFs, linkStrategy) {
      const hexCharacters = `0123456789abcdef`;
      await destinationFs.mkdirPromise(linkStrategy.indexPath, { recursive: true });
      const promises = [];
      for (const l1 of hexCharacters)
        for (const l2 of hexCharacters)
          promises.push(destinationFs.mkdirPromise(destinationFs.pathUtils.join(linkStrategy.indexPath, `${l1}${l2}`), { recursive: true }));
      await Promise.all(promises);
      return linkStrategy.indexPath;
    }
    async function copyPromise(destinationFs, destination, sourceFs, source, opts2) {
      const normalizedDestination = destinationFs.pathUtils.normalize(destination);
      const normalizedSource = sourceFs.pathUtils.normalize(source);
      const prelayout = [];
      const postlayout = [];
      const { atime, mtime } = opts2.stableTime ? { atime: defaultTime, mtime: defaultTime } : await sourceFs.lstatPromise(normalizedSource);
      await destinationFs.mkdirpPromise(destinationFs.pathUtils.dirname(destination), { utimes: [atime, mtime] });
      await copyImpl(prelayout, postlayout, destinationFs, normalizedDestination, sourceFs, normalizedSource, { ...opts2, didParentExist: true });
      for (const operation5 of prelayout)
        await operation5();
      await Promise.all(postlayout.map((operation5) => {
        return operation5();
      }));
    }
    async function copyImpl(prelayout, postlayout, destinationFs, destination, sourceFs, source, opts2) {
      const destinationStat = opts2.didParentExist ? await maybeLStat(destinationFs, destination) : null;
      const sourceStat = await sourceFs.lstatPromise(source);
      const { atime, mtime } = opts2.stableTime ? { atime: defaultTime, mtime: defaultTime } : sourceStat;
      let updated;
      switch (true) {
        case sourceStat.isDirectory():
          {
            updated = await copyFolder(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts2);
          }
          break;
        case sourceStat.isFile():
          {
            updated = await copyFile(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts2);
          }
          break;
        case sourceStat.isSymbolicLink():
          {
            updated = await copySymlink(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts2);
          }
          break;
        default: {
          throw new Error(`Unsupported file type (${sourceStat.mode})`);
        }
      }
      if (opts2.linkStrategy?.type !== `HardlinkFromIndex` || !sourceStat.isFile()) {
        if (updated || destinationStat?.mtime?.getTime() !== mtime.getTime() || destinationStat?.atime?.getTime() !== atime.getTime()) {
          postlayout.push(() => destinationFs.lutimesPromise(destination, atime, mtime));
          updated = true;
        }
        if (destinationStat === null || (destinationStat.mode & 511) !== (sourceStat.mode & 511)) {
          postlayout.push(() => destinationFs.chmodPromise(destination, sourceStat.mode & 511));
          updated = true;
        }
      }
      return updated;
    }
    async function maybeLStat(baseFs, p) {
      try {
        return await baseFs.lstatPromise(p);
      } catch {
        return null;
      }
    }
    async function copyFolder(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts2) {
      if (destinationStat !== null && !destinationStat.isDirectory()) {
        if (opts2.overwrite) {
          prelayout.push(async () => destinationFs.removePromise(destination));
          destinationStat = null;
        } else {
          return false;
        }
      }
      let updated = false;
      if (destinationStat === null) {
        prelayout.push(async () => {
          try {
            await destinationFs.mkdirPromise(destination, { mode: sourceStat.mode });
          } catch (err) {
            if (err.code !== `EEXIST`) {
              throw err;
            }
          }
        });
        updated = true;
      }
      const entries = await sourceFs.readdirPromise(source);
      const nextOpts = opts2.didParentExist && !destinationStat ? { ...opts2, didParentExist: false } : opts2;
      if (opts2.stableSort) {
        for (const entry of entries.sort()) {
          if (await copyImpl(prelayout, postlayout, destinationFs, destinationFs.pathUtils.join(destination, entry), sourceFs, sourceFs.pathUtils.join(source, entry), nextOpts)) {
            updated = true;
          }
        }
      } else {
        const entriesUpdateStatus = await Promise.all(entries.map(async (entry) => {
          await copyImpl(prelayout, postlayout, destinationFs, destinationFs.pathUtils.join(destination, entry), sourceFs, sourceFs.pathUtils.join(source, entry), nextOpts);
        }));
        if (entriesUpdateStatus.some((status) => status)) {
          updated = true;
        }
      }
      return updated;
    }
    async function copyFileViaIndex(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts2, linkStrategy) {
      const sourceHash = await sourceFs.checksumFilePromise(source, { algorithm: `sha1` });
      const defaultMode = 420;
      const sourceMode = sourceStat.mode & 511;
      const indexFileName = `${sourceHash}${sourceMode !== defaultMode ? sourceMode.toString(8) : ``}`;
      const indexPath = destinationFs.pathUtils.join(linkStrategy.indexPath, sourceHash.slice(0, 2), `${indexFileName}.dat`);
      let AtomicBehavior;
      (function(AtomicBehavior2) {
        AtomicBehavior2[AtomicBehavior2["Lock"] = 0] = "Lock";
        AtomicBehavior2[AtomicBehavior2["Rename"] = 1] = "Rename";
      })(AtomicBehavior || (AtomicBehavior = {}));
      let atomicBehavior = AtomicBehavior.Rename;
      let indexStat = await maybeLStat(destinationFs, indexPath);
      if (destinationStat) {
        const isDestinationHardlinkedFromIndex = indexStat && destinationStat.dev === indexStat.dev && destinationStat.ino === indexStat.ino;
        const isIndexModified = indexStat?.mtimeMs !== defaultTimeMs;
        if (isDestinationHardlinkedFromIndex) {
          if (isIndexModified && linkStrategy.autoRepair) {
            atomicBehavior = AtomicBehavior.Lock;
            indexStat = null;
          }
        }
        if (!isDestinationHardlinkedFromIndex) {
          if (opts2.overwrite) {
            prelayout.push(async () => destinationFs.removePromise(destination));
            destinationStat = null;
          } else {
            return false;
          }
        }
      }
      const tempPath2 = !indexStat && atomicBehavior === AtomicBehavior.Rename ? `${indexPath}.${Math.floor(Math.random() * 4294967296).toString(16).padStart(8, `0`)}` : null;
      let tempPathCleaned = false;
      prelayout.push(async () => {
        if (!indexStat) {
          if (atomicBehavior === AtomicBehavior.Lock) {
            await destinationFs.lockPromise(indexPath, async () => {
              const content = await sourceFs.readFilePromise(source);
              await destinationFs.writeFilePromise(indexPath, content);
            });
          }
          if (atomicBehavior === AtomicBehavior.Rename && tempPath2) {
            const content = await sourceFs.readFilePromise(source);
            await destinationFs.writeFilePromise(tempPath2, content);
            try {
              await destinationFs.linkPromise(tempPath2, indexPath);
            } catch (err) {
              if (err.code === `EEXIST`) {
                tempPathCleaned = true;
                await destinationFs.unlinkPromise(tempPath2);
              } else {
                throw err;
              }
            }
          }
        }
        if (!destinationStat) {
          await destinationFs.linkPromise(indexPath, destination);
        }
      });
      postlayout.push(async () => {
        if (!indexStat) {
          await destinationFs.lutimesPromise(indexPath, defaultTime, defaultTime);
          if (sourceMode !== defaultMode) {
            await destinationFs.chmodPromise(indexPath, sourceMode);
          }
        }
        if (tempPath2 && !tempPathCleaned) {
          await destinationFs.unlinkPromise(tempPath2);
        }
      });
      return false;
    }
    async function copyFileDirect(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts2) {
      if (destinationStat !== null) {
        if (opts2.overwrite) {
          prelayout.push(async () => destinationFs.removePromise(destination));
          destinationStat = null;
        } else {
          return false;
        }
      }
      prelayout.push(async () => {
        const content = await sourceFs.readFilePromise(source);
        await destinationFs.writeFilePromise(destination, content);
      });
      return true;
    }
    async function copyFile(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts2) {
      if (opts2.linkStrategy?.type === `HardlinkFromIndex`) {
        return copyFileViaIndex(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts2, opts2.linkStrategy);
      } else {
        return copyFileDirect(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts2);
      }
    }
    async function copySymlink(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts2) {
      if (destinationStat !== null) {
        if (opts2.overwrite) {
          prelayout.push(async () => destinationFs.removePromise(destination));
          destinationStat = null;
        } else {
          return false;
        }
      }
      prelayout.push(async () => {
        await destinationFs.symlinkPromise((0, path_1.convertPath)(destinationFs.pathUtils, await sourceFs.readlinkPromise(source)), destination);
      });
      return true;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/algorithms/opendir.js
var require_opendir = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/algorithms/opendir.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.CustomDir = void 0;
    exports2.opendir = opendir;
    var tslib_12 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
    var errors2 = tslib_12.__importStar(require_errors2());
    var CustomDir = class {
      constructor(path218, nextDirent, opts2 = {}) {
        this.path = path218;
        this.nextDirent = nextDirent;
        this.opts = opts2;
        this.closed = false;
      }
      throwIfClosed() {
        if (this.closed) {
          throw errors2.ERR_DIR_CLOSED();
        }
      }
      async *[Symbol.asyncIterator]() {
        try {
          let dirent;
          while ((dirent = await this.read()) !== null) {
            yield dirent;
          }
        } finally {
          await this.close();
        }
      }
      read(cb) {
        const dirent = this.readSync();
        if (typeof cb !== `undefined`)
          return cb(null, dirent);
        return Promise.resolve(dirent);
      }
      readSync() {
        this.throwIfClosed();
        return this.nextDirent();
      }
      close(cb) {
        this.closeSync();
        if (typeof cb !== `undefined`)
          return cb(null);
        return Promise.resolve();
      }
      closeSync() {
        this.throwIfClosed();
        this.opts.onClose?.();
        this.closed = true;
      }
    };
    exports2.CustomDir = CustomDir;
    function opendir(fakeFs, path218, entries, opts2) {
      const nextDirent = () => {
        const filename = entries.shift();
        if (typeof filename === `undefined`)
          return null;
        const entryPath = fakeFs.pathUtils.join(path218, filename);
        return Object.assign(fakeFs.statSync(entryPath), {
          name: filename,
          path: void 0
        });
      };
      return new CustomDir(path218, nextDirent, opts2);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/algorithms/watchFile/CustomStatWatcher.js
var require_CustomStatWatcher = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/algorithms/watchFile/CustomStatWatcher.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.CustomStatWatcher = exports2.Status = exports2.Event = void 0;
    exports2.assertStatus = assertStatus;
    var tslib_12 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
    var events_1 = __require("events");
    var statUtils = tslib_12.__importStar(require_statUtils());
    var Event2;
    (function(Event3) {
      Event3["Change"] = "change";
      Event3["Stop"] = "stop";
    })(Event2 || (exports2.Event = Event2 = {}));
    var Status;
    (function(Status2) {
      Status2["Ready"] = "ready";
      Status2["Running"] = "running";
      Status2["Stopped"] = "stopped";
    })(Status || (exports2.Status = Status = {}));
    function assertStatus(current, expected) {
      if (current !== expected) {
        throw new Error(`Invalid StatWatcher status: expected '${expected}', got '${current}'`);
      }
    }
    var CustomStatWatcher = class _CustomStatWatcher extends events_1.EventEmitter {
      static create(fakeFs, path218, opts2) {
        const statWatcher = new _CustomStatWatcher(fakeFs, path218, opts2);
        statWatcher.start();
        return statWatcher;
      }
      constructor(fakeFs, path218, { bigint = false } = {}) {
        super();
        this.status = Status.Ready;
        this.changeListeners = /* @__PURE__ */ new Map();
        this.startTimeout = null;
        this.fakeFs = fakeFs;
        this.path = path218;
        this.bigint = bigint;
        this.lastStats = this.stat();
      }
      start() {
        assertStatus(this.status, Status.Ready);
        this.status = Status.Running;
        this.startTimeout = setTimeout(() => {
          this.startTimeout = null;
          if (!this.fakeFs.existsSync(this.path)) {
            this.emit(Event2.Change, this.lastStats, this.lastStats);
          }
        }, 3);
      }
      stop() {
        assertStatus(this.status, Status.Running);
        this.status = Status.Stopped;
        if (this.startTimeout !== null) {
          clearTimeout(this.startTimeout);
          this.startTimeout = null;
        }
        this.emit(Event2.Stop);
      }
      stat() {
        try {
          return this.fakeFs.statSync(this.path, { bigint: this.bigint });
        } catch {
          const statInstance = this.bigint ? new statUtils.BigIntStatsEntry() : new statUtils.StatEntry();
          return statUtils.clearStats(statInstance);
        }
      }
      /**
       * Creates an interval whose callback compares the current stats with the previous stats and notifies all listeners in case of changes.
       *
       * @param opts.persistent Decides whether the interval should be immediately unref-ed.
       */
      makeInterval(opts2) {
        const interval = setInterval(() => {
          const currentStats = this.stat();
          const previousStats = this.lastStats;
          if (statUtils.areStatsEqual(currentStats, previousStats))
            return;
          this.lastStats = currentStats;
          this.emit(Event2.Change, currentStats, previousStats);
        }, opts2.interval);
        return opts2.persistent ? interval : interval.unref();
      }
      /**
       * Registers a listener and assigns it an interval.
       */
      registerChangeListener(listener, opts2) {
        this.addListener(Event2.Change, listener);
        this.changeListeners.set(listener, this.makeInterval(opts2));
      }
      /**
       * Unregisters the listener and clears the assigned interval.
       */
      unregisterChangeListener(listener) {
        this.removeListener(Event2.Change, listener);
        const interval = this.changeListeners.get(listener);
        if (typeof interval !== `undefined`)
          clearInterval(interval);
        this.changeListeners.delete(listener);
      }
      /**
       * Unregisters all listeners and clears all assigned intervals.
       */
      unregisterAllChangeListeners() {
        for (const listener of this.changeListeners.keys()) {
          this.unregisterChangeListener(listener);
        }
      }
      hasChangeListeners() {
        return this.changeListeners.size > 0;
      }
      /**
       * Refs all stored intervals.
       */
      ref() {
        for (const interval of this.changeListeners.values())
          interval.ref();
        return this;
      }
      /**
       * Unrefs all stored intervals.
       */
      unref() {
        for (const interval of this.changeListeners.values())
          interval.unref();
        return this;
      }
    };
    exports2.CustomStatWatcher = CustomStatWatcher;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/algorithms/watchFile.js
var require_watchFile = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/algorithms/watchFile.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.watchFile = watchFile;
    exports2.unwatchFile = unwatchFile;
    exports2.unwatchAllFiles = unwatchAllFiles;
    var CustomStatWatcher_1 = require_CustomStatWatcher();
    var statWatchersByFakeFS = /* @__PURE__ */ new WeakMap();
    function watchFile(fakeFs, path218, a2, b) {
      let bigint;
      let persistent;
      let interval;
      let listener;
      switch (typeof a2) {
        case `function`:
          {
            bigint = false;
            persistent = true;
            interval = 5007;
            listener = a2;
          }
          break;
        default:
          {
            ({
              bigint = false,
              persistent = true,
              interval = 5007
            } = a2);
            listener = b;
          }
          break;
      }
      let statWatchers = statWatchersByFakeFS.get(fakeFs);
      if (typeof statWatchers === `undefined`)
        statWatchersByFakeFS.set(fakeFs, statWatchers = /* @__PURE__ */ new Map());
      let statWatcher = statWatchers.get(path218);
      if (typeof statWatcher === `undefined`) {
        statWatcher = CustomStatWatcher_1.CustomStatWatcher.create(fakeFs, path218, { bigint });
        statWatchers.set(path218, statWatcher);
      }
      statWatcher.registerChangeListener(listener, { persistent, interval });
      return statWatcher;
    }
    function unwatchFile(fakeFs, path218, cb) {
      const statWatchers = statWatchersByFakeFS.get(fakeFs);
      if (typeof statWatchers === `undefined`)
        return;
      const statWatcher = statWatchers.get(path218);
      if (typeof statWatcher === `undefined`)
        return;
      if (typeof cb === `undefined`)
        statWatcher.unregisterAllChangeListeners();
      else
        statWatcher.unregisterChangeListener(cb);
      if (!statWatcher.hasChangeListeners()) {
        statWatcher.stop();
        statWatchers.delete(path218);
      }
    }
    function unwatchAllFiles(fakeFs) {
      const statWatchers = statWatchersByFakeFS.get(fakeFs);
      if (typeof statWatchers === `undefined`)
        return;
      for (const path218 of statWatchers.keys()) {
        unwatchFile(fakeFs, path218);
      }
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/FakeFS.js
var require_FakeFS = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/FakeFS.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.BasePortableFakeFS = exports2.FakeFS = void 0;
    exports2.normalizeLineEndings = normalizeLineEndings;
    var crypto_1 = __require("crypto");
    var os_1 = __require("os");
    var copyPromise_1 = require_copyPromise();
    var path_1 = require_path();
    var FakeFS = class {
      constructor(pathUtils) {
        this.pathUtils = pathUtils;
      }
      async *genTraversePromise(init2, { stableSort = false } = {}) {
        const stack = [init2];
        while (stack.length > 0) {
          const p = stack.shift();
          const entry = await this.lstatPromise(p);
          if (entry.isDirectory()) {
            const entries = await this.readdirPromise(p);
            if (stableSort) {
              for (const entry2 of entries.sort()) {
                stack.push(this.pathUtils.join(p, entry2));
              }
            } else {
              throw new Error(`Not supported`);
            }
          } else {
            yield p;
          }
        }
      }
      async checksumFilePromise(path218, { algorithm = `sha512` } = {}) {
        const fd = await this.openPromise(path218, `r`);
        try {
          const CHUNK_SIZE = 65536;
          const chunk = Buffer.allocUnsafeSlow(CHUNK_SIZE);
          const hash2 = (0, crypto_1.createHash)(algorithm);
          let bytesRead = 0;
          while ((bytesRead = await this.readPromise(fd, chunk, 0, CHUNK_SIZE)) !== 0)
            hash2.update(bytesRead === CHUNK_SIZE ? chunk : chunk.slice(0, bytesRead));
          return hash2.digest(`hex`);
        } finally {
          await this.closePromise(fd);
        }
      }
      async removePromise(p, { recursive: recursive2 = true, maxRetries = 5 } = {}) {
        let stat2;
        try {
          stat2 = await this.lstatPromise(p);
        } catch (error) {
          if (error.code === `ENOENT`) {
            return;
          } else {
            throw error;
          }
        }
        if (stat2.isDirectory()) {
          if (recursive2) {
            const entries = await this.readdirPromise(p);
            await Promise.all(entries.map((entry) => {
              return this.removePromise(this.pathUtils.resolve(p, entry));
            }));
          }
          for (let t2 = 0; t2 <= maxRetries; t2++) {
            try {
              await this.rmdirPromise(p);
              break;
            } catch (error) {
              if (error.code !== `EBUSY` && error.code !== `ENOTEMPTY`) {
                throw error;
              } else if (t2 < maxRetries) {
                await new Promise((resolve3) => setTimeout(resolve3, t2 * 100));
              }
            }
          }
        } else {
          await this.unlinkPromise(p);
        }
      }
      removeSync(p, { recursive: recursive2 = true } = {}) {
        let stat2;
        try {
          stat2 = this.lstatSync(p);
        } catch (error) {
          if (error.code === `ENOENT`) {
            return;
          } else {
            throw error;
          }
        }
        if (stat2.isDirectory()) {
          if (recursive2)
            for (const entry of this.readdirSync(p))
              this.removeSync(this.pathUtils.resolve(p, entry));
          this.rmdirSync(p);
        } else {
          this.unlinkSync(p);
        }
      }
      async mkdirpPromise(p, { chmod, utimes } = {}) {
        p = this.resolve(p);
        if (p === this.pathUtils.dirname(p))
          return void 0;
        const parts = p.split(this.pathUtils.sep);
        let createdDirectory;
        for (let u4 = 2; u4 <= parts.length; ++u4) {
          const subPath = parts.slice(0, u4).join(this.pathUtils.sep);
          if (!this.existsSync(subPath)) {
            try {
              await this.mkdirPromise(subPath);
            } catch (error) {
              if (error.code === `EEXIST`) {
                continue;
              } else {
                throw error;
              }
            }
            createdDirectory ??= subPath;
            if (chmod != null)
              await this.chmodPromise(subPath, chmod);
            if (utimes != null) {
              await this.utimesPromise(subPath, utimes[0], utimes[1]);
            } else {
              const parentStat = await this.statPromise(this.pathUtils.dirname(subPath));
              await this.utimesPromise(subPath, parentStat.atime, parentStat.mtime);
            }
          }
        }
        return createdDirectory;
      }
      mkdirpSync(p, { chmod, utimes } = {}) {
        p = this.resolve(p);
        if (p === this.pathUtils.dirname(p))
          return void 0;
        const parts = p.split(this.pathUtils.sep);
        let createdDirectory;
        for (let u4 = 2; u4 <= parts.length; ++u4) {
          const subPath = parts.slice(0, u4).join(this.pathUtils.sep);
          if (!this.existsSync(subPath)) {
            try {
              this.mkdirSync(subPath);
            } catch (error) {
              if (error.code === `EEXIST`) {
                continue;
              } else {
                throw error;
              }
            }
            createdDirectory ??= subPath;
            if (chmod != null)
              this.chmodSync(subPath, chmod);
            if (utimes != null) {
              this.utimesSync(subPath, utimes[0], utimes[1]);
            } else {
              const parentStat = this.statSync(this.pathUtils.dirname(subPath));
              this.utimesSync(subPath, parentStat.atime, parentStat.mtime);
            }
          }
        }
        return createdDirectory;
      }
      async copyPromise(destination, source, { baseFs = this, overwrite = true, stableSort = false, stableTime = false, linkStrategy = null } = {}) {
        return await (0, copyPromise_1.copyPromise)(this, destination, baseFs, source, { overwrite, stableSort, stableTime, linkStrategy });
      }
      copySync(destination, source, { baseFs = this, overwrite = true } = {}) {
        const stat2 = baseFs.lstatSync(source);
        const exists = this.existsSync(destination);
        if (stat2.isDirectory()) {
          this.mkdirpSync(destination);
          const directoryListing = baseFs.readdirSync(source);
          for (const entry of directoryListing) {
            this.copySync(this.pathUtils.join(destination, entry), baseFs.pathUtils.join(source, entry), { baseFs, overwrite });
          }
        } else if (stat2.isFile()) {
          if (!exists || overwrite) {
            if (exists)
              this.removeSync(destination);
            const content = baseFs.readFileSync(source);
            this.writeFileSync(destination, content);
          }
        } else if (stat2.isSymbolicLink()) {
          if (!exists || overwrite) {
            if (exists)
              this.removeSync(destination);
            const target2 = baseFs.readlinkSync(source);
            this.symlinkSync((0, path_1.convertPath)(this.pathUtils, target2), destination);
          }
        } else {
          throw new Error(`Unsupported file type (file: ${source}, mode: 0o${stat2.mode.toString(8).padStart(6, `0`)})`);
        }
        const mode = stat2.mode & 511;
        this.chmodSync(destination, mode);
      }
      async changeFilePromise(p, content, opts2 = {}) {
        if (Buffer.isBuffer(content)) {
          return this.changeFileBufferPromise(p, content, opts2);
        } else {
          return this.changeFileTextPromise(p, content, opts2);
        }
      }
      async changeFileBufferPromise(p, content, { mode } = {}) {
        let current = Buffer.alloc(0);
        try {
          current = await this.readFilePromise(p);
        } catch {
        }
        if (Buffer.compare(current, content) === 0)
          return;
        await this.writeFilePromise(p, content, { mode });
      }
      async changeFileTextPromise(p, content, { automaticNewlines, mode } = {}) {
        let current = ``;
        try {
          current = await this.readFilePromise(p, `utf8`);
        } catch {
        }
        const normalizedContent = automaticNewlines ? normalizeLineEndings(current, content) : content;
        if (current === normalizedContent)
          return;
        await this.writeFilePromise(p, normalizedContent, { mode });
      }
      changeFileSync(p, content, opts2 = {}) {
        if (Buffer.isBuffer(content)) {
          return this.changeFileBufferSync(p, content, opts2);
        } else {
          return this.changeFileTextSync(p, content, opts2);
        }
      }
      changeFileBufferSync(p, content, { mode } = {}) {
        let current = Buffer.alloc(0);
        try {
          current = this.readFileSync(p);
        } catch {
        }
        if (Buffer.compare(current, content) === 0)
          return;
        this.writeFileSync(p, content, { mode });
      }
      changeFileTextSync(p, content, { automaticNewlines = false, mode } = {}) {
        let current = ``;
        try {
          current = this.readFileSync(p, `utf8`);
        } catch {
        }
        const normalizedContent = automaticNewlines ? normalizeLineEndings(current, content) : content;
        if (current === normalizedContent)
          return;
        this.writeFileSync(p, normalizedContent, { mode });
      }
      async movePromise(fromP, toP) {
        try {
          await this.renamePromise(fromP, toP);
        } catch (error) {
          if (error.code === `EXDEV`) {
            await this.copyPromise(toP, fromP);
            await this.removePromise(fromP);
          } else {
            throw error;
          }
        }
      }
      moveSync(fromP, toP) {
        try {
          this.renameSync(fromP, toP);
        } catch (error) {
          if (error.code === `EXDEV`) {
            this.copySync(toP, fromP);
            this.removeSync(fromP);
          } else {
            throw error;
          }
        }
      }
      async lockPromise(affectedPath, callback2) {
        const lockPath = `${affectedPath}.flock`;
        const interval = 1e3 / 60;
        const startTime = Date.now();
        let fd = null;
        const isAlive = async () => {
          let pid;
          try {
            [pid] = await this.readJsonPromise(lockPath);
          } catch {
            return Date.now() - startTime < 500;
          }
          try {
            process.kill(pid, 0);
            return true;
          } catch {
            return false;
          }
        };
        while (fd === null) {
          try {
            fd = await this.openPromise(lockPath, `wx`);
          } catch (error) {
            if (error.code === `EEXIST`) {
              if (!await isAlive()) {
                try {
                  await this.unlinkPromise(lockPath);
                  continue;
                } catch {
                }
              }
              if (Date.now() - startTime < 60 * 1e3) {
                await new Promise((resolve3) => setTimeout(resolve3, interval));
              } else {
                throw new Error(`Couldn't acquire a lock in a reasonable time (via ${lockPath})`);
              }
            } else {
              throw error;
            }
          }
        }
        await this.writePromise(fd, JSON.stringify([process.pid]));
        try {
          return await callback2();
        } finally {
          try {
            await this.closePromise(fd);
            await this.unlinkPromise(lockPath);
          } catch {
          }
        }
      }
      async readJsonPromise(p) {
        const content = await this.readFilePromise(p, `utf8`);
        try {
          return JSON.parse(content);
        } catch (error) {
          error.message += ` (in ${p})`;
          throw error;
        }
      }
      readJsonSync(p) {
        const content = this.readFileSync(p, `utf8`);
        try {
          return JSON.parse(content);
        } catch (error) {
          error.message += ` (in ${p})`;
          throw error;
        }
      }
      async writeJsonPromise(p, data, { compact = false } = {}) {
        const space = compact ? 0 : 2;
        return await this.writeFilePromise(p, `${JSON.stringify(data, null, space)}
`);
      }
      writeJsonSync(p, data, { compact = false } = {}) {
        const space = compact ? 0 : 2;
        return this.writeFileSync(p, `${JSON.stringify(data, null, space)}
`);
      }
      async preserveTimePromise(p, cb) {
        const stat2 = await this.lstatPromise(p);
        const result2 = await cb();
        if (typeof result2 !== `undefined`)
          p = result2;
        await this.lutimesPromise(p, stat2.atime, stat2.mtime);
      }
      async preserveTimeSync(p, cb) {
        const stat2 = this.lstatSync(p);
        const result2 = cb();
        if (typeof result2 !== `undefined`)
          p = result2;
        this.lutimesSync(p, stat2.atime, stat2.mtime);
      }
    };
    exports2.FakeFS = FakeFS;
    var BasePortableFakeFS = class extends FakeFS {
      constructor() {
        super(path_1.ppath);
      }
    };
    exports2.BasePortableFakeFS = BasePortableFakeFS;
    function getEndOfLine(content) {
      const matches2 = content.match(/\r?\n/g);
      if (matches2 === null)
        return os_1.EOL;
      const crlf = matches2.filter((nl) => nl === `\r
`).length;
      const lf = matches2.length - crlf;
      return crlf > lf ? `\r
` : `
`;
    }
    function normalizeLineEndings(originalContent, newContent) {
      return newContent.replace(/\r?\n/g, getEndOfLine(originalContent));
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/ProxiedFS.js
var require_ProxiedFS = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/ProxiedFS.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.ProxiedFS = void 0;
    var FakeFS_1 = require_FakeFS();
    var ProxiedFS = class extends FakeFS_1.FakeFS {
      getExtractHint(hints) {
        return this.baseFs.getExtractHint(hints);
      }
      resolve(path218) {
        return this.mapFromBase(this.baseFs.resolve(this.mapToBase(path218)));
      }
      getRealPath() {
        return this.mapFromBase(this.baseFs.getRealPath());
      }
      async openPromise(p, flags, mode) {
        return this.baseFs.openPromise(this.mapToBase(p), flags, mode);
      }
      openSync(p, flags, mode) {
        return this.baseFs.openSync(this.mapToBase(p), flags, mode);
      }
      async opendirPromise(p, opts2) {
        return Object.assign(await this.baseFs.opendirPromise(this.mapToBase(p), opts2), { path: p });
      }
      opendirSync(p, opts2) {
        return Object.assign(this.baseFs.opendirSync(this.mapToBase(p), opts2), { path: p });
      }
      async readPromise(fd, buffer3, offset, length, position3) {
        return await this.baseFs.readPromise(fd, buffer3, offset, length, position3);
      }
      readSync(fd, buffer3, offset, length, position3) {
        return this.baseFs.readSync(fd, buffer3, offset, length, position3);
      }
      async writePromise(fd, buffer3, offset, length, position3) {
        if (typeof buffer3 === `string`) {
          return await this.baseFs.writePromise(fd, buffer3, offset);
        } else {
          return await this.baseFs.writePromise(fd, buffer3, offset, length, position3);
        }
      }
      writeSync(fd, buffer3, offset, length, position3) {
        if (typeof buffer3 === `string`) {
          return this.baseFs.writeSync(fd, buffer3, offset);
        } else {
          return this.baseFs.writeSync(fd, buffer3, offset, length, position3);
        }
      }
      async closePromise(fd) {
        return this.baseFs.closePromise(fd);
      }
      closeSync(fd) {
        this.baseFs.closeSync(fd);
      }
      createReadStream(p, opts2) {
        return this.baseFs.createReadStream(p !== null ? this.mapToBase(p) : p, opts2);
      }
      createWriteStream(p, opts2) {
        return this.baseFs.createWriteStream(p !== null ? this.mapToBase(p) : p, opts2);
      }
      async realpathPromise(p) {
        return this.mapFromBase(await this.baseFs.realpathPromise(this.mapToBase(p)));
      }
      realpathSync(p) {
        return this.mapFromBase(this.baseFs.realpathSync(this.mapToBase(p)));
      }
      async existsPromise(p) {
        return this.baseFs.existsPromise(this.mapToBase(p));
      }
      existsSync(p) {
        return this.baseFs.existsSync(this.mapToBase(p));
      }
      accessSync(p, mode) {
        return this.baseFs.accessSync(this.mapToBase(p), mode);
      }
      async accessPromise(p, mode) {
        return this.baseFs.accessPromise(this.mapToBase(p), mode);
      }
      async statPromise(p, opts2) {
        return this.baseFs.statPromise(this.mapToBase(p), opts2);
      }
      statSync(p, opts2) {
        return this.baseFs.statSync(this.mapToBase(p), opts2);
      }
      async fstatPromise(fd, opts2) {
        return this.baseFs.fstatPromise(fd, opts2);
      }
      fstatSync(fd, opts2) {
        return this.baseFs.fstatSync(fd, opts2);
      }
      lstatPromise(p, opts2) {
        return this.baseFs.lstatPromise(this.mapToBase(p), opts2);
      }
      lstatSync(p, opts2) {
        return this.baseFs.lstatSync(this.mapToBase(p), opts2);
      }
      async fchmodPromise(fd, mask) {
        return this.baseFs.fchmodPromise(fd, mask);
      }
      fchmodSync(fd, mask) {
        return this.baseFs.fchmodSync(fd, mask);
      }
      async chmodPromise(p, mask) {
        return this.baseFs.chmodPromise(this.mapToBase(p), mask);
      }
      chmodSync(p, mask) {
        return this.baseFs.chmodSync(this.mapToBase(p), mask);
      }
      async fchownPromise(fd, uid, gid) {
        return this.baseFs.fchownPromise(fd, uid, gid);
      }
      fchownSync(fd, uid, gid) {
        return this.baseFs.fchownSync(fd, uid, gid);
      }
      async chownPromise(p, uid, gid) {
        return this.baseFs.chownPromise(this.mapToBase(p), uid, gid);
      }
      chownSync(p, uid, gid) {
        return this.baseFs.chownSync(this.mapToBase(p), uid, gid);
      }
      async renamePromise(oldP, newP) {
        return this.baseFs.renamePromise(this.mapToBase(oldP), this.mapToBase(newP));
      }
      renameSync(oldP, newP) {
        return this.baseFs.renameSync(this.mapToBase(oldP), this.mapToBase(newP));
      }
      async copyFilePromise(sourceP, destP, flags = 0) {
        return this.baseFs.copyFilePromise(this.mapToBase(sourceP), this.mapToBase(destP), flags);
      }
      copyFileSync(sourceP, destP, flags = 0) {
        return this.baseFs.copyFileSync(this.mapToBase(sourceP), this.mapToBase(destP), flags);
      }
      async appendFilePromise(p, content, opts2) {
        return this.baseFs.appendFilePromise(this.fsMapToBase(p), content, opts2);
      }
      appendFileSync(p, content, opts2) {
        return this.baseFs.appendFileSync(this.fsMapToBase(p), content, opts2);
      }
      async writeFilePromise(p, content, opts2) {
        return this.baseFs.writeFilePromise(this.fsMapToBase(p), content, opts2);
      }
      writeFileSync(p, content, opts2) {
        return this.baseFs.writeFileSync(this.fsMapToBase(p), content, opts2);
      }
      async unlinkPromise(p) {
        return this.baseFs.unlinkPromise(this.mapToBase(p));
      }
      unlinkSync(p) {
        return this.baseFs.unlinkSync(this.mapToBase(p));
      }
      async utimesPromise(p, atime, mtime) {
        return this.baseFs.utimesPromise(this.mapToBase(p), atime, mtime);
      }
      utimesSync(p, atime, mtime) {
        return this.baseFs.utimesSync(this.mapToBase(p), atime, mtime);
      }
      async lutimesPromise(p, atime, mtime) {
        return this.baseFs.lutimesPromise(this.mapToBase(p), atime, mtime);
      }
      lutimesSync(p, atime, mtime) {
        return this.baseFs.lutimesSync(this.mapToBase(p), atime, mtime);
      }
      async mkdirPromise(p, opts2) {
        return this.baseFs.mkdirPromise(this.mapToBase(p), opts2);
      }
      mkdirSync(p, opts2) {
        return this.baseFs.mkdirSync(this.mapToBase(p), opts2);
      }
      async rmdirPromise(p, opts2) {
        return this.baseFs.rmdirPromise(this.mapToBase(p), opts2);
      }
      rmdirSync(p, opts2) {
        return this.baseFs.rmdirSync(this.mapToBase(p), opts2);
      }
      async rmPromise(p, opts2) {
        return this.baseFs.rmPromise(this.mapToBase(p), opts2);
      }
      rmSync(p, opts2) {
        return this.baseFs.rmSync(this.mapToBase(p), opts2);
      }
      async linkPromise(existingP, newP) {
        return this.baseFs.linkPromise(this.mapToBase(existingP), this.mapToBase(newP));
      }
      linkSync(existingP, newP) {
        return this.baseFs.linkSync(this.mapToBase(existingP), this.mapToBase(newP));
      }
      async symlinkPromise(target2, p, type4) {
        const mappedP = this.mapToBase(p);
        if (this.pathUtils.isAbsolute(target2))
          return this.baseFs.symlinkPromise(this.mapToBase(target2), mappedP, type4);
        const mappedAbsoluteTarget = this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(p), target2));
        const mappedTarget = this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(mappedP), mappedAbsoluteTarget);
        return this.baseFs.symlinkPromise(mappedTarget, mappedP, type4);
      }
      symlinkSync(target2, p, type4) {
        const mappedP = this.mapToBase(p);
        if (this.pathUtils.isAbsolute(target2))
          return this.baseFs.symlinkSync(this.mapToBase(target2), mappedP, type4);
        const mappedAbsoluteTarget = this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(p), target2));
        const mappedTarget = this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(mappedP), mappedAbsoluteTarget);
        return this.baseFs.symlinkSync(mappedTarget, mappedP, type4);
      }
      async readFilePromise(p, encoding) {
        return this.baseFs.readFilePromise(this.fsMapToBase(p), encoding);
      }
      readFileSync(p, encoding) {
        return this.baseFs.readFileSync(this.fsMapToBase(p), encoding);
      }
      readdirPromise(p, opts2) {
        return this.baseFs.readdirPromise(this.mapToBase(p), opts2);
      }
      readdirSync(p, opts2) {
        return this.baseFs.readdirSync(this.mapToBase(p), opts2);
      }
      async readlinkPromise(p) {
        return this.mapFromBase(await this.baseFs.readlinkPromise(this.mapToBase(p)));
      }
      readlinkSync(p) {
        return this.mapFromBase(this.baseFs.readlinkSync(this.mapToBase(p)));
      }
      async truncatePromise(p, len) {
        return this.baseFs.truncatePromise(this.mapToBase(p), len);
      }
      truncateSync(p, len) {
        return this.baseFs.truncateSync(this.mapToBase(p), len);
      }
      async ftruncatePromise(fd, len) {
        return this.baseFs.ftruncatePromise(fd, len);
      }
      ftruncateSync(fd, len) {
        return this.baseFs.ftruncateSync(fd, len);
      }
      watch(p, a2, b) {
        return this.baseFs.watch(
          this.mapToBase(p),
          // @ts-expect-error - reason TBS
          a2,
          b
        );
      }
      watchFile(p, a2, b) {
        return this.baseFs.watchFile(
          this.mapToBase(p),
          // @ts-expect-error - reason TBS
          a2,
          b
        );
      }
      unwatchFile(p, cb) {
        return this.baseFs.unwatchFile(this.mapToBase(p), cb);
      }
      fsMapToBase(p) {
        if (typeof p === `number`) {
          return p;
        } else {
          return this.mapToBase(p);
        }
      }
    };
    exports2.ProxiedFS = ProxiedFS;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/AliasFS.js
var require_AliasFS = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/AliasFS.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.AliasFS = void 0;
    var ProxiedFS_1 = require_ProxiedFS();
    var AliasFS = class extends ProxiedFS_1.ProxiedFS {
      constructor(target2, { baseFs, pathUtils }) {
        super(pathUtils);
        this.target = target2;
        this.baseFs = baseFs;
      }
      getRealPath() {
        return this.target;
      }
      getBaseFs() {
        return this.baseFs;
      }
      mapFromBase(p) {
        return p;
      }
      mapToBase(p) {
        return p;
      }
    };
    exports2.AliasFS = AliasFS;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/NodeFS.js
var require_NodeFS = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/NodeFS.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.NodeFS = void 0;
    var tslib_12 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
    var fs_1 = tslib_12.__importDefault(__require("fs"));
    var FakeFS_1 = require_FakeFS();
    var path_1 = require_path();
    function direntToPortable(dirent) {
      const portableDirent = dirent;
      if (typeof dirent.path === `string`)
        portableDirent.path = path_1.npath.toPortablePath(dirent.path);
      return portableDirent;
    }
    var NodeFS = class extends FakeFS_1.BasePortableFakeFS {
      constructor(realFs = fs_1.default) {
        super();
        this.realFs = realFs;
      }
      getExtractHint() {
        return false;
      }
      getRealPath() {
        return path_1.PortablePath.root;
      }
      resolve(p) {
        return path_1.ppath.resolve(p);
      }
      async openPromise(p, flags, mode) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.open(path_1.npath.fromPortablePath(p), flags, mode, this.makeCallback(resolve3, reject3));
        });
      }
      openSync(p, flags, mode) {
        return this.realFs.openSync(path_1.npath.fromPortablePath(p), flags, mode);
      }
      async opendirPromise(p, opts2) {
        return await new Promise((resolve3, reject3) => {
          if (typeof opts2 !== `undefined`) {
            this.realFs.opendir(path_1.npath.fromPortablePath(p), opts2, this.makeCallback(resolve3, reject3));
          } else {
            this.realFs.opendir(path_1.npath.fromPortablePath(p), this.makeCallback(resolve3, reject3));
          }
        }).then((dir) => {
          const dirWithFixedPath = dir;
          Object.defineProperty(dirWithFixedPath, `path`, {
            value: p,
            configurable: true,
            writable: true
          });
          return dirWithFixedPath;
        });
      }
      opendirSync(p, opts2) {
        const dir = typeof opts2 !== `undefined` ? this.realFs.opendirSync(path_1.npath.fromPortablePath(p), opts2) : this.realFs.opendirSync(path_1.npath.fromPortablePath(p));
        const dirWithFixedPath = dir;
        Object.defineProperty(dirWithFixedPath, `path`, {
          value: p,
          configurable: true,
          writable: true
        });
        return dirWithFixedPath;
      }
      async readPromise(fd, buffer3, offset = 0, length = 0, position3 = -1) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.read(fd, buffer3, offset, length, position3, (error, bytesRead) => {
            if (error) {
              reject3(error);
            } else {
              resolve3(bytesRead);
            }
          });
        });
      }
      readSync(fd, buffer3, offset, length, position3) {
        return this.realFs.readSync(fd, buffer3, offset, length, position3);
      }
      async writePromise(fd, buffer3, offset, length, position3) {
        return await new Promise((resolve3, reject3) => {
          if (typeof buffer3 === `string`) {
            return this.realFs.write(fd, buffer3, offset, this.makeCallback(resolve3, reject3));
          } else {
            return this.realFs.write(fd, buffer3, offset, length, position3, this.makeCallback(resolve3, reject3));
          }
        });
      }
      writeSync(fd, buffer3, offset, length, position3) {
        if (typeof buffer3 === `string`) {
          return this.realFs.writeSync(fd, buffer3, offset);
        } else {
          return this.realFs.writeSync(fd, buffer3, offset, length, position3);
        }
      }
      async closePromise(fd) {
        await new Promise((resolve3, reject3) => {
          this.realFs.close(fd, this.makeCallback(resolve3, reject3));
        });
      }
      closeSync(fd) {
        this.realFs.closeSync(fd);
      }
      createReadStream(p, opts2) {
        const realPath = p !== null ? path_1.npath.fromPortablePath(p) : p;
        return this.realFs.createReadStream(realPath, opts2);
      }
      createWriteStream(p, opts2) {
        const realPath = p !== null ? path_1.npath.fromPortablePath(p) : p;
        return this.realFs.createWriteStream(realPath, opts2);
      }
      async realpathPromise(p) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.realpath(path_1.npath.fromPortablePath(p), {}, this.makeCallback(resolve3, reject3));
        }).then((path218) => {
          return path_1.npath.toPortablePath(path218);
        });
      }
      realpathSync(p) {
        return path_1.npath.toPortablePath(this.realFs.realpathSync(path_1.npath.fromPortablePath(p), {}));
      }
      async existsPromise(p) {
        return await new Promise((resolve3) => {
          this.realFs.exists(path_1.npath.fromPortablePath(p), resolve3);
        });
      }
      accessSync(p, mode) {
        return this.realFs.accessSync(path_1.npath.fromPortablePath(p), mode);
      }
      async accessPromise(p, mode) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.access(path_1.npath.fromPortablePath(p), mode, this.makeCallback(resolve3, reject3));
        });
      }
      existsSync(p) {
        return this.realFs.existsSync(path_1.npath.fromPortablePath(p));
      }
      async statPromise(p, opts2) {
        return await new Promise((resolve3, reject3) => {
          if (opts2) {
            this.realFs.stat(path_1.npath.fromPortablePath(p), opts2, this.makeCallback(resolve3, reject3));
          } else {
            this.realFs.stat(path_1.npath.fromPortablePath(p), this.makeCallback(resolve3, reject3));
          }
        });
      }
      statSync(p, opts2) {
        if (opts2) {
          return this.realFs.statSync(path_1.npath.fromPortablePath(p), opts2);
        } else {
          return this.realFs.statSync(path_1.npath.fromPortablePath(p));
        }
      }
      async fstatPromise(fd, opts2) {
        return await new Promise((resolve3, reject3) => {
          if (opts2) {
            this.realFs.fstat(fd, opts2, this.makeCallback(resolve3, reject3));
          } else {
            this.realFs.fstat(fd, this.makeCallback(resolve3, reject3));
          }
        });
      }
      fstatSync(fd, opts2) {
        if (opts2) {
          return this.realFs.fstatSync(fd, opts2);
        } else {
          return this.realFs.fstatSync(fd);
        }
      }
      async lstatPromise(p, opts2) {
        return await new Promise((resolve3, reject3) => {
          if (opts2) {
            this.realFs.lstat(path_1.npath.fromPortablePath(p), opts2, this.makeCallback(resolve3, reject3));
          } else {
            this.realFs.lstat(path_1.npath.fromPortablePath(p), this.makeCallback(resolve3, reject3));
          }
        });
      }
      lstatSync(p, opts2) {
        if (opts2) {
          return this.realFs.lstatSync(path_1.npath.fromPortablePath(p), opts2);
        } else {
          return this.realFs.lstatSync(path_1.npath.fromPortablePath(p));
        }
      }
      async fchmodPromise(fd, mask) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.fchmod(fd, mask, this.makeCallback(resolve3, reject3));
        });
      }
      fchmodSync(fd, mask) {
        return this.realFs.fchmodSync(fd, mask);
      }
      async chmodPromise(p, mask) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.chmod(path_1.npath.fromPortablePath(p), mask, this.makeCallback(resolve3, reject3));
        });
      }
      chmodSync(p, mask) {
        return this.realFs.chmodSync(path_1.npath.fromPortablePath(p), mask);
      }
      async fchownPromise(fd, uid, gid) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.fchown(fd, uid, gid, this.makeCallback(resolve3, reject3));
        });
      }
      fchownSync(fd, uid, gid) {
        return this.realFs.fchownSync(fd, uid, gid);
      }
      async chownPromise(p, uid, gid) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.chown(path_1.npath.fromPortablePath(p), uid, gid, this.makeCallback(resolve3, reject3));
        });
      }
      chownSync(p, uid, gid) {
        return this.realFs.chownSync(path_1.npath.fromPortablePath(p), uid, gid);
      }
      async renamePromise(oldP, newP) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.rename(path_1.npath.fromPortablePath(oldP), path_1.npath.fromPortablePath(newP), this.makeCallback(resolve3, reject3));
        });
      }
      renameSync(oldP, newP) {
        return this.realFs.renameSync(path_1.npath.fromPortablePath(oldP), path_1.npath.fromPortablePath(newP));
      }
      async copyFilePromise(sourceP, destP, flags = 0) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.copyFile(path_1.npath.fromPortablePath(sourceP), path_1.npath.fromPortablePath(destP), flags, this.makeCallback(resolve3, reject3));
        });
      }
      copyFileSync(sourceP, destP, flags = 0) {
        return this.realFs.copyFileSync(path_1.npath.fromPortablePath(sourceP), path_1.npath.fromPortablePath(destP), flags);
      }
      async appendFilePromise(p, content, opts2) {
        return await new Promise((resolve3, reject3) => {
          const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p;
          if (opts2) {
            this.realFs.appendFile(fsNativePath, content, opts2, this.makeCallback(resolve3, reject3));
          } else {
            this.realFs.appendFile(fsNativePath, content, this.makeCallback(resolve3, reject3));
          }
        });
      }
      appendFileSync(p, content, opts2) {
        const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p;
        if (opts2) {
          this.realFs.appendFileSync(fsNativePath, content, opts2);
        } else {
          this.realFs.appendFileSync(fsNativePath, content);
        }
      }
      async writeFilePromise(p, content, opts2) {
        return await new Promise((resolve3, reject3) => {
          const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p;
          if (opts2) {
            this.realFs.writeFile(fsNativePath, content, opts2, this.makeCallback(resolve3, reject3));
          } else {
            this.realFs.writeFile(fsNativePath, content, this.makeCallback(resolve3, reject3));
          }
        });
      }
      writeFileSync(p, content, opts2) {
        const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p;
        if (opts2) {
          this.realFs.writeFileSync(fsNativePath, content, opts2);
        } else {
          this.realFs.writeFileSync(fsNativePath, content);
        }
      }
      async unlinkPromise(p) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.unlink(path_1.npath.fromPortablePath(p), this.makeCallback(resolve3, reject3));
        });
      }
      unlinkSync(p) {
        return this.realFs.unlinkSync(path_1.npath.fromPortablePath(p));
      }
      async utimesPromise(p, atime, mtime) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.utimes(path_1.npath.fromPortablePath(p), atime, mtime, this.makeCallback(resolve3, reject3));
        });
      }
      utimesSync(p, atime, mtime) {
        this.realFs.utimesSync(path_1.npath.fromPortablePath(p), atime, mtime);
      }
      async lutimesPromise(p, atime, mtime) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.lutimes(path_1.npath.fromPortablePath(p), atime, mtime, this.makeCallback(resolve3, reject3));
        });
      }
      lutimesSync(p, atime, mtime) {
        this.realFs.lutimesSync(path_1.npath.fromPortablePath(p), atime, mtime);
      }
      async mkdirPromise(p, opts2) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.mkdir(path_1.npath.fromPortablePath(p), opts2, this.makeCallback(resolve3, reject3));
        });
      }
      mkdirSync(p, opts2) {
        return this.realFs.mkdirSync(path_1.npath.fromPortablePath(p), opts2);
      }
      async rmdirPromise(p, opts2) {
        return await new Promise((resolve3, reject3) => {
          if (opts2) {
            this.realFs.rmdir(path_1.npath.fromPortablePath(p), opts2, this.makeCallback(resolve3, reject3));
          } else {
            this.realFs.rmdir(path_1.npath.fromPortablePath(p), this.makeCallback(resolve3, reject3));
          }
        });
      }
      rmdirSync(p, opts2) {
        return this.realFs.rmdirSync(path_1.npath.fromPortablePath(p), opts2);
      }
      async rmPromise(p, opts2) {
        return await new Promise((resolve3, reject3) => {
          if (opts2) {
            this.realFs.rm(path_1.npath.fromPortablePath(p), opts2, this.makeCallback(resolve3, reject3));
          } else {
            this.realFs.rm(path_1.npath.fromPortablePath(p), this.makeCallback(resolve3, reject3));
          }
        });
      }
      rmSync(p, opts2) {
        return this.realFs.rmSync(path_1.npath.fromPortablePath(p), opts2);
      }
      async linkPromise(existingP, newP) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.link(path_1.npath.fromPortablePath(existingP), path_1.npath.fromPortablePath(newP), this.makeCallback(resolve3, reject3));
        });
      }
      linkSync(existingP, newP) {
        return this.realFs.linkSync(path_1.npath.fromPortablePath(existingP), path_1.npath.fromPortablePath(newP));
      }
      async symlinkPromise(target2, p, type4) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.symlink(path_1.npath.fromPortablePath(target2.replace(/\/+$/, ``)), path_1.npath.fromPortablePath(p), type4, this.makeCallback(resolve3, reject3));
        });
      }
      symlinkSync(target2, p, type4) {
        return this.realFs.symlinkSync(path_1.npath.fromPortablePath(target2.replace(/\/+$/, ``)), path_1.npath.fromPortablePath(p), type4);
      }
      async readFilePromise(p, encoding) {
        return await new Promise((resolve3, reject3) => {
          const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p;
          this.realFs.readFile(fsNativePath, encoding, this.makeCallback(resolve3, reject3));
        });
      }
      readFileSync(p, encoding) {
        const fsNativePath = typeof p === `string` ? path_1.npath.fromPortablePath(p) : p;
        return this.realFs.readFileSync(fsNativePath, encoding);
      }
      async readdirPromise(p, opts2) {
        return await new Promise((resolve3, reject3) => {
          if (opts2) {
            if (opts2.recursive && process.platform === `win32`) {
              if (opts2.withFileTypes) {
                this.realFs.readdir(path_1.npath.fromPortablePath(p), opts2, this.makeCallback((results) => resolve3(results.map(direntToPortable)), reject3));
              } else {
                this.realFs.readdir(path_1.npath.fromPortablePath(p), opts2, this.makeCallback((results) => resolve3(results.map(path_1.npath.toPortablePath)), reject3));
              }
            } else {
              this.realFs.readdir(path_1.npath.fromPortablePath(p), opts2, this.makeCallback(resolve3, reject3));
            }
          } else {
            this.realFs.readdir(path_1.npath.fromPortablePath(p), this.makeCallback(resolve3, reject3));
          }
        });
      }
      readdirSync(p, opts2) {
        if (opts2) {
          if (opts2.recursive && process.platform === `win32`) {
            if (opts2.withFileTypes) {
              return this.realFs.readdirSync(path_1.npath.fromPortablePath(p), opts2).map(direntToPortable);
            } else {
              return this.realFs.readdirSync(path_1.npath.fromPortablePath(p), opts2).map(path_1.npath.toPortablePath);
            }
          } else {
            return this.realFs.readdirSync(path_1.npath.fromPortablePath(p), opts2);
          }
        } else {
          return this.realFs.readdirSync(path_1.npath.fromPortablePath(p));
        }
      }
      async readlinkPromise(p) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.readlink(path_1.npath.fromPortablePath(p), this.makeCallback(resolve3, reject3));
        }).then((path218) => {
          return path_1.npath.toPortablePath(path218);
        });
      }
      readlinkSync(p) {
        return path_1.npath.toPortablePath(this.realFs.readlinkSync(path_1.npath.fromPortablePath(p)));
      }
      async truncatePromise(p, len) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.truncate(path_1.npath.fromPortablePath(p), len, this.makeCallback(resolve3, reject3));
        });
      }
      truncateSync(p, len) {
        return this.realFs.truncateSync(path_1.npath.fromPortablePath(p), len);
      }
      async ftruncatePromise(fd, len) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.ftruncate(fd, len, this.makeCallback(resolve3, reject3));
        });
      }
      ftruncateSync(fd, len) {
        return this.realFs.ftruncateSync(fd, len);
      }
      watch(p, a2, b) {
        return this.realFs.watch(
          path_1.npath.fromPortablePath(p),
          // @ts-expect-error - reason TBS
          a2,
          b
        );
      }
      watchFile(p, a2, b) {
        return this.realFs.watchFile(
          path_1.npath.fromPortablePath(p),
          // @ts-expect-error - reason TBS
          a2,
          b
        );
      }
      unwatchFile(p, cb) {
        return this.realFs.unwatchFile(path_1.npath.fromPortablePath(p), cb);
      }
      makeCallback(resolve3, reject3) {
        return (err, result2) => {
          if (err) {
            reject3(err);
          } else {
            resolve3(result2);
          }
        };
      }
    };
    exports2.NodeFS = NodeFS;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/CwdFS.js
var require_CwdFS = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/CwdFS.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.CwdFS = void 0;
    var NodeFS_1 = require_NodeFS();
    var ProxiedFS_1 = require_ProxiedFS();
    var path_1 = require_path();
    var CwdFS = class extends ProxiedFS_1.ProxiedFS {
      constructor(target2, { baseFs = new NodeFS_1.NodeFS() } = {}) {
        super(path_1.ppath);
        this.target = this.pathUtils.normalize(target2);
        this.baseFs = baseFs;
      }
      getRealPath() {
        return this.pathUtils.resolve(this.baseFs.getRealPath(), this.target);
      }
      resolve(p) {
        if (this.pathUtils.isAbsolute(p)) {
          return path_1.ppath.normalize(p);
        } else {
          return this.baseFs.resolve(path_1.ppath.join(this.target, p));
        }
      }
      mapFromBase(path218) {
        return path218;
      }
      mapToBase(path218) {
        if (this.pathUtils.isAbsolute(path218)) {
          return path218;
        } else {
          return this.pathUtils.join(this.target, path218);
        }
      }
    };
    exports2.CwdFS = CwdFS;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/JailFS.js
var require_JailFS = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/JailFS.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.JailFS = void 0;
    var NodeFS_1 = require_NodeFS();
    var ProxiedFS_1 = require_ProxiedFS();
    var path_1 = require_path();
    var JAIL_ROOT = path_1.PortablePath.root;
    var JailFS = class extends ProxiedFS_1.ProxiedFS {
      constructor(target2, { baseFs = new NodeFS_1.NodeFS() } = {}) {
        super(path_1.ppath);
        this.target = this.pathUtils.resolve(path_1.PortablePath.root, target2);
        this.baseFs = baseFs;
      }
      getRealPath() {
        return this.pathUtils.resolve(this.baseFs.getRealPath(), this.pathUtils.relative(path_1.PortablePath.root, this.target));
      }
      getTarget() {
        return this.target;
      }
      getBaseFs() {
        return this.baseFs;
      }
      mapToBase(p) {
        const normalized = this.pathUtils.normalize(p);
        if (this.pathUtils.isAbsolute(p))
          return this.pathUtils.resolve(this.target, this.pathUtils.relative(JAIL_ROOT, p));
        if (normalized.match(/^\.\.\/?/))
          throw new Error(`Resolving this path (${p}) would escape the jail`);
        return this.pathUtils.resolve(this.target, p);
      }
      mapFromBase(p) {
        return this.pathUtils.resolve(JAIL_ROOT, this.pathUtils.relative(this.target, p));
      }
    };
    exports2.JailFS = JailFS;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/LazyFS.js
var require_LazyFS = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/LazyFS.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.LazyFS = void 0;
    var ProxiedFS_1 = require_ProxiedFS();
    var LazyFS = class extends ProxiedFS_1.ProxiedFS {
      constructor(factory, pathUtils) {
        super(pathUtils);
        this.instance = null;
        this.factory = factory;
      }
      get baseFs() {
        if (!this.instance)
          this.instance = this.factory();
        return this.instance;
      }
      set baseFs(value) {
        this.instance = value;
      }
      mapFromBase(p) {
        return p;
      }
      mapToBase(p) {
        return p;
      }
    };
    exports2.LazyFS = LazyFS;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/MountFS.js
var require_MountFS = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/MountFS.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.MountFS = void 0;
    var tslib_12 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
    var fs_1 = __require("fs");
    var FakeFS_1 = require_FakeFS();
    var NodeFS_1 = require_NodeFS();
    var watchFile_1 = require_watchFile();
    var errors2 = tslib_12.__importStar(require_errors2());
    var path_1 = require_path();
    var MOUNT_MASK = 4278190080;
    var MountFS = class extends FakeFS_1.BasePortableFakeFS {
      constructor({ baseFs = new NodeFS_1.NodeFS(), filter: filter14 = null, magicByte = 42, maxOpenFiles = Infinity, useCache = true, maxAge = 5e3, typeCheck = fs_1.constants.S_IFREG, getMountPoint, factoryPromise, factorySync }) {
        if (Math.floor(magicByte) !== magicByte || !(magicByte > 1 && magicByte <= 127))
          throw new Error(`The magic byte must be set to a round value between 1 and 127 included`);
        super();
        this.fdMap = /* @__PURE__ */ new Map();
        this.nextFd = 3;
        this.isMount = /* @__PURE__ */ new Set();
        this.notMount = /* @__PURE__ */ new Set();
        this.realPaths = /* @__PURE__ */ new Map();
        this.limitOpenFilesTimeout = null;
        this.baseFs = baseFs;
        this.mountInstances = useCache ? /* @__PURE__ */ new Map() : null;
        this.factoryPromise = factoryPromise;
        this.factorySync = factorySync;
        this.filter = filter14;
        this.getMountPoint = getMountPoint;
        this.magic = magicByte << 24;
        this.maxAge = maxAge;
        this.maxOpenFiles = maxOpenFiles;
        this.typeCheck = typeCheck;
      }
      getExtractHint(hints) {
        return this.baseFs.getExtractHint(hints);
      }
      getRealPath() {
        return this.baseFs.getRealPath();
      }
      saveAndClose() {
        (0, watchFile_1.unwatchAllFiles)(this);
        if (this.mountInstances) {
          for (const [path218, { childFs }] of this.mountInstances.entries()) {
            childFs.saveAndClose?.();
            this.mountInstances.delete(path218);
          }
        }
      }
      discardAndClose() {
        (0, watchFile_1.unwatchAllFiles)(this);
        if (this.mountInstances) {
          for (const [path218, { childFs }] of this.mountInstances.entries()) {
            childFs.discardAndClose?.();
            this.mountInstances.delete(path218);
          }
        }
      }
      resolve(p) {
        return this.baseFs.resolve(p);
      }
      remapFd(mountFs, fd) {
        const remappedFd = this.nextFd++ | this.magic;
        this.fdMap.set(remappedFd, [mountFs, fd]);
        return remappedFd;
      }
      async openPromise(p, flags, mode) {
        return await this.makeCallPromise(p, async () => {
          return await this.baseFs.openPromise(p, flags, mode);
        }, async (mountFs, { subPath }) => {
          return this.remapFd(mountFs, await mountFs.openPromise(subPath, flags, mode));
        });
      }
      openSync(p, flags, mode) {
        return this.makeCallSync(p, () => {
          return this.baseFs.openSync(p, flags, mode);
        }, (mountFs, { subPath }) => {
          return this.remapFd(mountFs, mountFs.openSync(subPath, flags, mode));
        });
      }
      async opendirPromise(p, opts2) {
        return await this.makeCallPromise(p, async () => {
          return await this.baseFs.opendirPromise(p, opts2);
        }, async (mountFs, { subPath }) => {
          return await mountFs.opendirPromise(subPath, opts2);
        }, {
          requireSubpath: false
        });
      }
      opendirSync(p, opts2) {
        return this.makeCallSync(p, () => {
          return this.baseFs.opendirSync(p, opts2);
        }, (mountFs, { subPath }) => {
          return mountFs.opendirSync(subPath, opts2);
        }, {
          requireSubpath: false
        });
      }
      async readPromise(fd, buffer3, offset, length, position3) {
        if ((fd & MOUNT_MASK) !== this.magic)
          return await this.baseFs.readPromise(fd, buffer3, offset, length, position3);
        const entry = this.fdMap.get(fd);
        if (typeof entry === `undefined`)
          throw errors2.EBADF(`read`);
        const [mountFs, realFd] = entry;
        return await mountFs.readPromise(realFd, buffer3, offset, length, position3);
      }
      readSync(fd, buffer3, offset, length, position3) {
        if ((fd & MOUNT_MASK) !== this.magic)
          return this.baseFs.readSync(fd, buffer3, offset, length, position3);
        const entry = this.fdMap.get(fd);
        if (typeof entry === `undefined`)
          throw errors2.EBADF(`readSync`);
        const [mountFs, realFd] = entry;
        return mountFs.readSync(realFd, buffer3, offset, length, position3);
      }
      async writePromise(fd, buffer3, offset, length, position3) {
        if ((fd & MOUNT_MASK) !== this.magic) {
          if (typeof buffer3 === `string`) {
            return await this.baseFs.writePromise(fd, buffer3, offset);
          } else {
            return await this.baseFs.writePromise(fd, buffer3, offset, length, position3);
          }
        }
        const entry = this.fdMap.get(fd);
        if (typeof entry === `undefined`)
          throw errors2.EBADF(`write`);
        const [mountFs, realFd] = entry;
        if (typeof buffer3 === `string`) {
          return await mountFs.writePromise(realFd, buffer3, offset);
        } else {
          return await mountFs.writePromise(realFd, buffer3, offset, length, position3);
        }
      }
      writeSync(fd, buffer3, offset, length, position3) {
        if ((fd & MOUNT_MASK) !== this.magic) {
          if (typeof buffer3 === `string`) {
            return this.baseFs.writeSync(fd, buffer3, offset);
          } else {
            return this.baseFs.writeSync(fd, buffer3, offset, length, position3);
          }
        }
        const entry = this.fdMap.get(fd);
        if (typeof entry === `undefined`)
          throw errors2.EBADF(`writeSync`);
        const [mountFs, realFd] = entry;
        if (typeof buffer3 === `string`) {
          return mountFs.writeSync(realFd, buffer3, offset);
        } else {
          return mountFs.writeSync(realFd, buffer3, offset, length, position3);
        }
      }
      async closePromise(fd) {
        if ((fd & MOUNT_MASK) !== this.magic)
          return await this.baseFs.closePromise(fd);
        const entry = this.fdMap.get(fd);
        if (typeof entry === `undefined`)
          throw errors2.EBADF(`close`);
        this.fdMap.delete(fd);
        const [mountFs, realFd] = entry;
        return await mountFs.closePromise(realFd);
      }
      closeSync(fd) {
        if ((fd & MOUNT_MASK) !== this.magic)
          return this.baseFs.closeSync(fd);
        const entry = this.fdMap.get(fd);
        if (typeof entry === `undefined`)
          throw errors2.EBADF(`closeSync`);
        this.fdMap.delete(fd);
        const [mountFs, realFd] = entry;
        return mountFs.closeSync(realFd);
      }
      createReadStream(p, opts2) {
        if (p === null)
          return this.baseFs.createReadStream(p, opts2);
        return this.makeCallSync(p, () => {
          return this.baseFs.createReadStream(p, opts2);
        }, (mountFs, { archivePath, subPath }) => {
          const stream2 = mountFs.createReadStream(subPath, opts2);
          stream2.path = path_1.npath.fromPortablePath(this.pathUtils.join(archivePath, subPath));
          return stream2;
        });
      }
      createWriteStream(p, opts2) {
        if (p === null)
          return this.baseFs.createWriteStream(p, opts2);
        return this.makeCallSync(p, () => {
          return this.baseFs.createWriteStream(p, opts2);
        }, (mountFs, { subPath }) => {
          return mountFs.createWriteStream(subPath, opts2);
        });
      }
      async realpathPromise(p) {
        return await this.makeCallPromise(p, async () => {
          return await this.baseFs.realpathPromise(p);
        }, async (mountFs, { archivePath, subPath }) => {
          let realArchivePath = this.realPaths.get(archivePath);
          if (typeof realArchivePath === `undefined`) {
            realArchivePath = await this.baseFs.realpathPromise(archivePath);
            this.realPaths.set(archivePath, realArchivePath);
          }
          return this.pathUtils.join(realArchivePath, this.pathUtils.relative(path_1.PortablePath.root, await mountFs.realpathPromise(subPath)));
        });
      }
      realpathSync(p) {
        return this.makeCallSync(p, () => {
          return this.baseFs.realpathSync(p);
        }, (mountFs, { archivePath, subPath }) => {
          let realArchivePath = this.realPaths.get(archivePath);
          if (typeof realArchivePath === `undefined`) {
            realArchivePath = this.baseFs.realpathSync(archivePath);
            this.realPaths.set(archivePath, realArchivePath);
          }
          return this.pathUtils.join(realArchivePath, this.pathUtils.relative(path_1.PortablePath.root, mountFs.realpathSync(subPath)));
        });
      }
      async existsPromise(p) {
        return await this.makeCallPromise(p, async () => {
          return await this.baseFs.existsPromise(p);
        }, async (mountFs, { subPath }) => {
          return await mountFs.existsPromise(subPath);
        });
      }
      existsSync(p) {
        return this.makeCallSync(p, () => {
          return this.baseFs.existsSync(p);
        }, (mountFs, { subPath }) => {
          return mountFs.existsSync(subPath);
        });
      }
      async accessPromise(p, mode) {
        return await this.makeCallPromise(p, async () => {
          return await this.baseFs.accessPromise(p, mode);
        }, async (mountFs, { subPath }) => {
          return await mountFs.accessPromise(subPath, mode);
        });
      }
      accessSync(p, mode) {
        return this.makeCallSync(p, () => {
          return this.baseFs.accessSync(p, mode);
        }, (mountFs, { subPath }) => {
          return mountFs.accessSync(subPath, mode);
        });
      }
      async statPromise(p, opts2) {
        return await this.makeCallPromise(p, async () => {
          return await this.baseFs.statPromise(p, opts2);
        }, async (mountFs, { subPath }) => {
          return await mountFs.statPromise(subPath, opts2);
        });
      }
      statSync(p, opts2) {
        return this.makeCallSync(p, () => {
          return this.baseFs.statSync(p, opts2);
        }, (mountFs, { subPath }) => {
          return mountFs.statSync(subPath, opts2);
        });
      }
      async fstatPromise(fd, opts2) {
        if ((fd & MOUNT_MASK) !== this.magic)
          return this.baseFs.fstatPromise(fd, opts2);
        const entry = this.fdMap.get(fd);
        if (typeof entry === `undefined`)
          throw errors2.EBADF(`fstat`);
        const [mountFs, realFd] = entry;
        return mountFs.fstatPromise(realFd, opts2);
      }
      fstatSync(fd, opts2) {
        if ((fd & MOUNT_MASK) !== this.magic)
          return this.baseFs.fstatSync(fd, opts2);
        const entry = this.fdMap.get(fd);
        if (typeof entry === `undefined`)
          throw errors2.EBADF(`fstatSync`);
        const [mountFs, realFd] = entry;
        return mountFs.fstatSync(realFd, opts2);
      }
      async lstatPromise(p, opts2) {
        return await this.makeCallPromise(p, async () => {
          return await this.baseFs.lstatPromise(p, opts2);
        }, async (mountFs, { subPath }) => {
          return await mountFs.lstatPromise(subPath, opts2);
        });
      }
      lstatSync(p, opts2) {
        return this.makeCallSync(p, () => {
          return this.baseFs.lstatSync(p, opts2);
        }, (mountFs, { subPath }) => {
          return mountFs.lstatSync(subPath, opts2);
        });
      }
      async fchmodPromise(fd, mask) {
        if ((fd & MOUNT_MASK) !== this.magic)
          return this.baseFs.fchmodPromise(fd, mask);
        const entry = this.fdMap.get(fd);
        if (typeof entry === `undefined`)
          throw errors2.EBADF(`fchmod`);
        const [mountFs, realFd] = entry;
        return mountFs.fchmodPromise(realFd, mask);
      }
      fchmodSync(fd, mask) {
        if ((fd & MOUNT_MASK) !== this.magic)
          return this.baseFs.fchmodSync(fd, mask);
        const entry = this.fdMap.get(fd);
        if (typeof entry === `undefined`)
          throw errors2.EBADF(`fchmodSync`);
        const [mountFs, realFd] = entry;
        return mountFs.fchmodSync(realFd, mask);
      }
      async chmodPromise(p, mask) {
        return await this.makeCallPromise(p, async () => {
          return await this.baseFs.chmodPromise(p, mask);
        }, async (mountFs, { subPath }) => {
          return await mountFs.chmodPromise(subPath, mask);
        });
      }
      chmodSync(p, mask) {
        return this.makeCallSync(p, () => {
          return this.baseFs.chmodSync(p, mask);
        }, (mountFs, { subPath }) => {
          return mountFs.chmodSync(subPath, mask);
        });
      }
      async fchownPromise(fd, uid, gid) {
        if ((fd & MOUNT_MASK) !== this.magic)
          return this.baseFs.fchownPromise(fd, uid, gid);
        const entry = this.fdMap.get(fd);
        if (typeof entry === `undefined`)
          throw errors2.EBADF(`fchown`);
        const [zipFs, realFd] = entry;
        return zipFs.fchownPromise(realFd, uid, gid);
      }
      fchownSync(fd, uid, gid) {
        if ((fd & MOUNT_MASK) !== this.magic)
          return this.baseFs.fchownSync(fd, uid, gid);
        const entry = this.fdMap.get(fd);
        if (typeof entry === `undefined`)
          throw errors2.EBADF(`fchownSync`);
        const [zipFs, realFd] = entry;
        return zipFs.fchownSync(realFd, uid, gid);
      }
      async chownPromise(p, uid, gid) {
        return await this.makeCallPromise(p, async () => {
          return await this.baseFs.chownPromise(p, uid, gid);
        }, async (mountFs, { subPath }) => {
          return await mountFs.chownPromise(subPath, uid, gid);
        });
      }
      chownSync(p, uid, gid) {
        return this.makeCallSync(p, () => {
          return this.baseFs.chownSync(p, uid, gid);
        }, (mountFs, { subPath }) => {
          return mountFs.chownSync(subPath, uid, gid);
        });
      }
      async renamePromise(oldP, newP) {
        return await this.makeCallPromise(oldP, async () => {
          return await this.makeCallPromise(newP, async () => {
            return await this.baseFs.renamePromise(oldP, newP);
          }, async () => {
            throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` });
          });
        }, async (mountFsO, { subPath: subPathO }) => {
          return await this.makeCallPromise(newP, async () => {
            throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` });
          }, async (mountFsN, { subPath: subPathN }) => {
            if (mountFsO !== mountFsN) {
              throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` });
            } else {
              return await mountFsO.renamePromise(subPathO, subPathN);
            }
          });
        });
      }
      renameSync(oldP, newP) {
        return this.makeCallSync(oldP, () => {
          return this.makeCallSync(newP, () => {
            return this.baseFs.renameSync(oldP, newP);
          }, () => {
            throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` });
          });
        }, (mountFsO, { subPath: subPathO }) => {
          return this.makeCallSync(newP, () => {
            throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` });
          }, (mountFsN, { subPath: subPathN }) => {
            if (mountFsO !== mountFsN) {
              throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { code: `EEXDEV` });
            } else {
              return mountFsO.renameSync(subPathO, subPathN);
            }
          });
        });
      }
      async copyFilePromise(sourceP, destP, flags = 0) {
        const fallback = async (sourceFs, sourceP2, destFs, destP2) => {
          if ((flags & fs_1.constants.COPYFILE_FICLONE_FORCE) !== 0)
            throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${sourceP2}' -> ${destP2}'`), { code: `EXDEV` });
          if (flags & fs_1.constants.COPYFILE_EXCL && await this.existsPromise(sourceP2))
            throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${sourceP2}' -> '${destP2}'`), { code: `EEXIST` });
          let content;
          try {
            content = await sourceFs.readFilePromise(sourceP2);
          } catch {
            throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${sourceP2}' -> '${destP2}'`), { code: `EINVAL` });
          }
          await destFs.writeFilePromise(destP2, content);
        };
        return await this.makeCallPromise(sourceP, async () => {
          return await this.makeCallPromise(destP, async () => {
            return await this.baseFs.copyFilePromise(sourceP, destP, flags);
          }, async (mountFsD, { subPath: subPathD }) => {
            return await fallback(this.baseFs, sourceP, mountFsD, subPathD);
          });
        }, async (mountFsS, { subPath: subPathS }) => {
          return await this.makeCallPromise(destP, async () => {
            return await fallback(mountFsS, subPathS, this.baseFs, destP);
          }, async (mountFsD, { subPath: subPathD }) => {
            if (mountFsS !== mountFsD) {
              return await fallback(mountFsS, subPathS, mountFsD, subPathD);
            } else {
              return await mountFsS.copyFilePromise(subPathS, subPathD, flags);
            }
          });
        });
      }
      copyFileSync(sourceP, destP, flags = 0) {
        const fallback = (sourceFs, sourceP2, destFs, destP2) => {
          if ((flags & fs_1.constants.COPYFILE_FICLONE_FORCE) !== 0)
            throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${sourceP2}' -> ${destP2}'`), { code: `EXDEV` });
          if (flags & fs_1.constants.COPYFILE_EXCL && this.existsSync(sourceP2))
            throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${sourceP2}' -> '${destP2}'`), { code: `EEXIST` });
          let content;
          try {
            content = sourceFs.readFileSync(sourceP2);
          } catch {
            throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${sourceP2}' -> '${destP2}'`), { code: `EINVAL` });
          }
          destFs.writeFileSync(destP2, content);
        };
        return this.makeCallSync(sourceP, () => {
          return this.makeCallSync(destP, () => {
            return this.baseFs.copyFileSync(sourceP, destP, flags);
          }, (mountFsD, { subPath: subPathD }) => {
            return fallback(this.baseFs, sourceP, mountFsD, subPathD);
          });
        }, (mountFsS, { subPath: subPathS }) => {
          return this.makeCallSync(destP, () => {
            return fallback(mountFsS, subPathS, this.baseFs, destP);
          }, (mountFsD, { subPath: subPathD }) => {
            if (mountFsS !== mountFsD) {
              return fallback(mountFsS, subPathS, mountFsD, subPathD);
            } else {
              return mountFsS.copyFileSync(subPathS, subPathD, flags);
            }
          });
        });
      }
      async appendFilePromise(p, content, opts2) {
        return await this.makeCallPromise(p, async () => {
          return await this.baseFs.appendFilePromise(p, content, opts2);
        }, async (mountFs, { subPath }) => {
          return await mountFs.appendFilePromise(subPath, content, opts2);
        });
      }
      appendFileSync(p, content, opts2) {
        return this.makeCallSync(p, () => {
          return this.baseFs.appendFileSync(p, content, opts2);
        }, (mountFs, { subPath }) => {
          return mountFs.appendFileSync(subPath, content, opts2);
        });
      }
      async writeFilePromise(p, content, opts2) {
        return await this.makeCallPromise(p, async () => {
          return await this.baseFs.writeFilePromise(p, content, opts2);
        }, async (mountFs, { subPath }) => {
          return await mountFs.writeFilePromise(subPath, content, opts2);
        });
      }
      writeFileSync(p, content, opts2) {
        return this.makeCallSync(p, () => {
          return this.baseFs.writeFileSync(p, content, opts2);
        }, (mountFs, { subPath }) => {
          return mountFs.writeFileSync(subPath, content, opts2);
        });
      }
      async unlinkPromise(p) {
        return await this.makeCallPromise(p, async () => {
          return await this.baseFs.unlinkPromise(p);
        }, async (mountFs, { subPath }) => {
          return await mountFs.unlinkPromise(subPath);
        });
      }
      unlinkSync(p) {
        return this.makeCallSync(p, () => {
          return this.baseFs.unlinkSync(p);
        }, (mountFs, { subPath }) => {
          return mountFs.unlinkSync(subPath);
        });
      }
      async utimesPromise(p, atime, mtime) {
        return await this.makeCallPromise(p, async () => {
          return await this.baseFs.utimesPromise(p, atime, mtime);
        }, async (mountFs, { subPath }) => {
          return await mountFs.utimesPromise(subPath, atime, mtime);
        });
      }
      utimesSync(p, atime, mtime) {
        return this.makeCallSync(p, () => {
          return this.baseFs.utimesSync(p, atime, mtime);
        }, (mountFs, { subPath }) => {
          return mountFs.utimesSync(subPath, atime, mtime);
        });
      }
      async lutimesPromise(p, atime, mtime) {
        return await this.makeCallPromise(p, async () => {
          return await this.baseFs.lutimesPromise(p, atime, mtime);
        }, async (mountFs, { subPath }) => {
          return await mountFs.lutimesPromise(subPath, atime, mtime);
        });
      }
      lutimesSync(p, atime, mtime) {
        return this.makeCallSync(p, () => {
          return this.baseFs.lutimesSync(p, atime, mtime);
        }, (mountFs, { subPath }) => {
          return mountFs.lutimesSync(subPath, atime, mtime);
        });
      }
      async mkdirPromise(p, opts2) {
        return await this.makeCallPromise(p, async () => {
          return await this.baseFs.mkdirPromise(p, opts2);
        }, async (mountFs, { subPath }) => {
          return await mountFs.mkdirPromise(subPath, opts2);
        });
      }
      mkdirSync(p, opts2) {
        return this.makeCallSync(p, () => {
          return this.baseFs.mkdirSync(p, opts2);
        }, (mountFs, { subPath }) => {
          return mountFs.mkdirSync(subPath, opts2);
        });
      }
      async rmdirPromise(p, opts2) {
        return await this.makeCallPromise(p, async () => {
          return await this.baseFs.rmdirPromise(p, opts2);
        }, async (mountFs, { subPath }) => {
          return await mountFs.rmdirPromise(subPath, opts2);
        });
      }
      rmdirSync(p, opts2) {
        return this.makeCallSync(p, () => {
          return this.baseFs.rmdirSync(p, opts2);
        }, (mountFs, { subPath }) => {
          return mountFs.rmdirSync(subPath, opts2);
        });
      }
      async rmPromise(p, opts2) {
        return await this.makeCallPromise(p, async () => {
          return await this.baseFs.rmPromise(p, opts2);
        }, async (mountFs, { subPath }) => {
          return await mountFs.rmPromise(subPath, opts2);
        });
      }
      rmSync(p, opts2) {
        return this.makeCallSync(p, () => {
          return this.baseFs.rmSync(p, opts2);
        }, (mountFs, { subPath }) => {
          return mountFs.rmSync(subPath, opts2);
        });
      }
      async linkPromise(existingP, newP) {
        return await this.makeCallPromise(newP, async () => {
          return await this.baseFs.linkPromise(existingP, newP);
        }, async (mountFs, { subPath }) => {
          return await mountFs.linkPromise(existingP, subPath);
        });
      }
      linkSync(existingP, newP) {
        return this.makeCallSync(newP, () => {
          return this.baseFs.linkSync(existingP, newP);
        }, (mountFs, { subPath }) => {
          return mountFs.linkSync(existingP, subPath);
        });
      }
      async symlinkPromise(target2, p, type4) {
        return await this.makeCallPromise(p, async () => {
          return await this.baseFs.symlinkPromise(target2, p, type4);
        }, async (mountFs, { subPath }) => {
          return await mountFs.symlinkPromise(target2, subPath);
        });
      }
      symlinkSync(target2, p, type4) {
        return this.makeCallSync(p, () => {
          return this.baseFs.symlinkSync(target2, p, type4);
        }, (mountFs, { subPath }) => {
          return mountFs.symlinkSync(target2, subPath);
        });
      }
      async readFilePromise(p, encoding) {
        return this.makeCallPromise(p, async () => {
          return await this.baseFs.readFilePromise(p, encoding);
        }, async (mountFs, { subPath }) => {
          return await mountFs.readFilePromise(subPath, encoding);
        });
      }
      readFileSync(p, encoding) {
        return this.makeCallSync(p, () => {
          return this.baseFs.readFileSync(p, encoding);
        }, (mountFs, { subPath }) => {
          return mountFs.readFileSync(subPath, encoding);
        });
      }
      async readdirPromise(p, opts2) {
        return await this.makeCallPromise(p, async () => {
          return await this.baseFs.readdirPromise(p, opts2);
        }, async (mountFs, { subPath }) => {
          return await mountFs.readdirPromise(subPath, opts2);
        }, {
          requireSubpath: false
        });
      }
      readdirSync(p, opts2) {
        return this.makeCallSync(p, () => {
          return this.baseFs.readdirSync(p, opts2);
        }, (mountFs, { subPath }) => {
          return mountFs.readdirSync(subPath, opts2);
        }, {
          requireSubpath: false
        });
      }
      async readlinkPromise(p) {
        return await this.makeCallPromise(p, async () => {
          return await this.baseFs.readlinkPromise(p);
        }, async (mountFs, { subPath }) => {
          return await mountFs.readlinkPromise(subPath);
        });
      }
      readlinkSync(p) {
        return this.makeCallSync(p, () => {
          return this.baseFs.readlinkSync(p);
        }, (mountFs, { subPath }) => {
          return mountFs.readlinkSync(subPath);
        });
      }
      async truncatePromise(p, len) {
        return await this.makeCallPromise(p, async () => {
          return await this.baseFs.truncatePromise(p, len);
        }, async (mountFs, { subPath }) => {
          return await mountFs.truncatePromise(subPath, len);
        });
      }
      truncateSync(p, len) {
        return this.makeCallSync(p, () => {
          return this.baseFs.truncateSync(p, len);
        }, (mountFs, { subPath }) => {
          return mountFs.truncateSync(subPath, len);
        });
      }
      async ftruncatePromise(fd, len) {
        if ((fd & MOUNT_MASK) !== this.magic)
          return this.baseFs.ftruncatePromise(fd, len);
        const entry = this.fdMap.get(fd);
        if (typeof entry === `undefined`)
          throw errors2.EBADF(`ftruncate`);
        const [mountFs, realFd] = entry;
        return mountFs.ftruncatePromise(realFd, len);
      }
      ftruncateSync(fd, len) {
        if ((fd & MOUNT_MASK) !== this.magic)
          return this.baseFs.ftruncateSync(fd, len);
        const entry = this.fdMap.get(fd);
        if (typeof entry === `undefined`)
          throw errors2.EBADF(`ftruncateSync`);
        const [mountFs, realFd] = entry;
        return mountFs.ftruncateSync(realFd, len);
      }
      watch(p, a2, b) {
        return this.makeCallSync(p, () => {
          return this.baseFs.watch(
            p,
            // @ts-expect-error - reason TBS
            a2,
            b
          );
        }, (mountFs, { subPath }) => {
          return mountFs.watch(
            subPath,
            // @ts-expect-error - reason TBS
            a2,
            b
          );
        });
      }
      watchFile(p, a2, b) {
        return this.makeCallSync(p, () => {
          return this.baseFs.watchFile(
            p,
            // @ts-expect-error - reason TBS
            a2,
            b
          );
        }, () => {
          return (0, watchFile_1.watchFile)(this, p, a2, b);
        });
      }
      unwatchFile(p, cb) {
        return this.makeCallSync(p, () => {
          return this.baseFs.unwatchFile(p, cb);
        }, () => {
          return (0, watchFile_1.unwatchFile)(this, p, cb);
        });
      }
      async makeCallPromise(p, discard, accept, { requireSubpath = true } = {}) {
        if (typeof p !== `string`)
          return await discard();
        const normalizedP = this.resolve(p);
        const mountInfo = this.findMount(normalizedP);
        if (!mountInfo)
          return await discard();
        if (requireSubpath && mountInfo.subPath === `/`)
          return await discard();
        return await this.getMountPromise(mountInfo.archivePath, async (mountFs) => await accept(mountFs, mountInfo));
      }
      makeCallSync(p, discard, accept, { requireSubpath = true } = {}) {
        if (typeof p !== `string`)
          return discard();
        const normalizedP = this.resolve(p);
        const mountInfo = this.findMount(normalizedP);
        if (!mountInfo)
          return discard();
        if (requireSubpath && mountInfo.subPath === `/`)
          return discard();
        return this.getMountSync(mountInfo.archivePath, (mountFs) => accept(mountFs, mountInfo));
      }
      findMount(p) {
        if (this.filter && !this.filter.test(p))
          return null;
        let filePath = ``;
        while (true) {
          const pathPartWithArchive = p.substring(filePath.length);
          const mountPoint = this.getMountPoint(pathPartWithArchive, filePath);
          if (!mountPoint)
            return null;
          filePath = this.pathUtils.join(filePath, mountPoint);
          if (!this.isMount.has(filePath)) {
            if (this.notMount.has(filePath))
              continue;
            try {
              if (this.typeCheck !== null && (this.baseFs.statSync(filePath).mode & fs_1.constants.S_IFMT) !== this.typeCheck) {
                this.notMount.add(filePath);
                continue;
              }
            } catch {
              return null;
            }
            this.isMount.add(filePath);
          }
          return {
            archivePath: filePath,
            subPath: this.pathUtils.join(path_1.PortablePath.root, p.substring(filePath.length))
          };
        }
      }
      limitOpenFiles(max3) {
        if (this.mountInstances === null)
          return;
        const now = Date.now();
        let nextExpiresAt = now + this.maxAge;
        let closeCount = max3 === null ? 0 : this.mountInstances.size - max3;
        for (const [path218, { childFs, expiresAt, refCount }] of this.mountInstances.entries()) {
          if (refCount !== 0 || childFs.hasOpenFileHandles?.()) {
            continue;
          } else if (now >= expiresAt) {
            childFs.saveAndClose?.();
            this.mountInstances.delete(path218);
            closeCount -= 1;
            continue;
          } else if (max3 === null || closeCount <= 0) {
            nextExpiresAt = expiresAt;
            break;
          }
          childFs.saveAndClose?.();
          this.mountInstances.delete(path218);
          closeCount -= 1;
        }
        if (this.limitOpenFilesTimeout === null && (max3 === null && this.mountInstances.size > 0 || max3 !== null) && isFinite(nextExpiresAt)) {
          this.limitOpenFilesTimeout = setTimeout(() => {
            this.limitOpenFilesTimeout = null;
            this.limitOpenFiles(null);
          }, nextExpiresAt - now).unref();
        }
      }
      async getMountPromise(p, accept) {
        if (this.mountInstances) {
          let cachedMountFs = this.mountInstances.get(p);
          if (!cachedMountFs) {
            const createFsInstance = await this.factoryPromise(this.baseFs, p);
            cachedMountFs = this.mountInstances.get(p);
            if (!cachedMountFs) {
              cachedMountFs = {
                childFs: createFsInstance(),
                expiresAt: 0,
                refCount: 0
              };
            }
          }
          this.mountInstances.delete(p);
          this.limitOpenFiles(this.maxOpenFiles - 1);
          this.mountInstances.set(p, cachedMountFs);
          cachedMountFs.expiresAt = Date.now() + this.maxAge;
          cachedMountFs.refCount += 1;
          try {
            return await accept(cachedMountFs.childFs);
          } finally {
            cachedMountFs.refCount -= 1;
          }
        } else {
          const mountFs = (await this.factoryPromise(this.baseFs, p))();
          try {
            return await accept(mountFs);
          } finally {
            mountFs.saveAndClose?.();
          }
        }
      }
      getMountSync(p, accept) {
        if (this.mountInstances) {
          let cachedMountFs = this.mountInstances.get(p);
          if (!cachedMountFs) {
            cachedMountFs = {
              childFs: this.factorySync(this.baseFs, p),
              expiresAt: 0,
              refCount: 0
            };
          }
          this.mountInstances.delete(p);
          this.limitOpenFiles(this.maxOpenFiles - 1);
          this.mountInstances.set(p, cachedMountFs);
          cachedMountFs.expiresAt = Date.now() + this.maxAge;
          return accept(cachedMountFs.childFs);
        } else {
          const childFs = this.factorySync(this.baseFs, p);
          try {
            return accept(childFs);
          } finally {
            childFs.saveAndClose?.();
          }
        }
      }
    };
    exports2.MountFS = MountFS;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/NoFS.js
var require_NoFS = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/NoFS.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.NoFS = void 0;
    var FakeFS_1 = require_FakeFS();
    var path_1 = require_path();
    var makeError2 = () => Object.assign(new Error(`ENOSYS: unsupported filesystem access`), { code: `ENOSYS` });
    var NoFS = class extends FakeFS_1.FakeFS {
      constructor() {
        super(path_1.ppath);
      }
      getExtractHint() {
        throw makeError2();
      }
      getRealPath() {
        throw makeError2();
      }
      resolve() {
        throw makeError2();
      }
      async openPromise() {
        throw makeError2();
      }
      openSync() {
        throw makeError2();
      }
      async opendirPromise() {
        throw makeError2();
      }
      opendirSync() {
        throw makeError2();
      }
      async readPromise() {
        throw makeError2();
      }
      readSync() {
        throw makeError2();
      }
      async writePromise() {
        throw makeError2();
      }
      writeSync() {
        throw makeError2();
      }
      async closePromise() {
        throw makeError2();
      }
      closeSync() {
        throw makeError2();
      }
      createWriteStream() {
        throw makeError2();
      }
      createReadStream() {
        throw makeError2();
      }
      async realpathPromise() {
        throw makeError2();
      }
      realpathSync() {
        throw makeError2();
      }
      async readdirPromise() {
        throw makeError2();
      }
      readdirSync() {
        throw makeError2();
      }
      async existsPromise(p) {
        throw makeError2();
      }
      existsSync(p) {
        throw makeError2();
      }
      async accessPromise() {
        throw makeError2();
      }
      accessSync() {
        throw makeError2();
      }
      async statPromise() {
        throw makeError2();
      }
      statSync() {
        throw makeError2();
      }
      async fstatPromise(fd) {
        throw makeError2();
      }
      fstatSync(fd) {
        throw makeError2();
      }
      async lstatPromise(p) {
        throw makeError2();
      }
      lstatSync(p) {
        throw makeError2();
      }
      async fchmodPromise() {
        throw makeError2();
      }
      fchmodSync() {
        throw makeError2();
      }
      async chmodPromise() {
        throw makeError2();
      }
      chmodSync() {
        throw makeError2();
      }
      async fchownPromise() {
        throw makeError2();
      }
      fchownSync() {
        throw makeError2();
      }
      async chownPromise() {
        throw makeError2();
      }
      chownSync() {
        throw makeError2();
      }
      async mkdirPromise() {
        throw makeError2();
      }
      mkdirSync() {
        throw makeError2();
      }
      async rmdirPromise() {
        throw makeError2();
      }
      rmdirSync() {
        throw makeError2();
      }
      async rmPromise() {
        throw makeError2();
      }
      rmSync() {
        throw makeError2();
      }
      async linkPromise() {
        throw makeError2();
      }
      linkSync() {
        throw makeError2();
      }
      async symlinkPromise() {
        throw makeError2();
      }
      symlinkSync() {
        throw makeError2();
      }
      async renamePromise() {
        throw makeError2();
      }
      renameSync() {
        throw makeError2();
      }
      async copyFilePromise() {
        throw makeError2();
      }
      copyFileSync() {
        throw makeError2();
      }
      async appendFilePromise() {
        throw makeError2();
      }
      appendFileSync() {
        throw makeError2();
      }
      async writeFilePromise() {
        throw makeError2();
      }
      writeFileSync() {
        throw makeError2();
      }
      async unlinkPromise() {
        throw makeError2();
      }
      unlinkSync() {
        throw makeError2();
      }
      async utimesPromise() {
        throw makeError2();
      }
      utimesSync() {
        throw makeError2();
      }
      async lutimesPromise() {
        throw makeError2();
      }
      lutimesSync() {
        throw makeError2();
      }
      async readFilePromise() {
        throw makeError2();
      }
      readFileSync() {
        throw makeError2();
      }
      async readlinkPromise() {
        throw makeError2();
      }
      readlinkSync() {
        throw makeError2();
      }
      async truncatePromise() {
        throw makeError2();
      }
      truncateSync() {
        throw makeError2();
      }
      async ftruncatePromise(fd, len) {
        throw makeError2();
      }
      ftruncateSync(fd, len) {
        throw makeError2();
      }
      watch() {
        throw makeError2();
      }
      watchFile() {
        throw makeError2();
      }
      unwatchFile() {
        throw makeError2();
      }
    };
    exports2.NoFS = NoFS;
    NoFS.instance = new NoFS();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/PosixFS.js
var require_PosixFS = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/PosixFS.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.PosixFS = void 0;
    var ProxiedFS_1 = require_ProxiedFS();
    var path_1 = require_path();
    var PosixFS = class extends ProxiedFS_1.ProxiedFS {
      constructor(baseFs) {
        super(path_1.npath);
        this.baseFs = baseFs;
      }
      mapFromBase(path218) {
        return path_1.npath.fromPortablePath(path218);
      }
      mapToBase(path218) {
        return path_1.npath.toPortablePath(path218);
      }
    };
    exports2.PosixFS = PosixFS;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/VirtualFS.js
var require_VirtualFS = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/VirtualFS.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.VirtualFS = void 0;
    var NodeFS_1 = require_NodeFS();
    var ProxiedFS_1 = require_ProxiedFS();
    var path_1 = require_path();
    var NUMBER_REGEXP = /^[0-9]+$/;
    var VIRTUAL_REGEXP = /^(\/(?:[^/]+\/)*?(?:\$\$virtual|__virtual__))((?:\/((?:[^/]+-)?[a-f0-9]+)(?:\/([^/]+))?)?((?:\/.*)?))$/;
    var VALID_COMPONENT = /^([^/]+-)?[a-f0-9]+$/;
    var VirtualFS = class _VirtualFS extends ProxiedFS_1.ProxiedFS {
      static makeVirtualPath(base, component, to) {
        if (path_1.ppath.basename(base) !== `__virtual__`)
          throw new Error(`Assertion failed: Virtual folders must be named "__virtual__"`);
        if (!path_1.ppath.basename(component).match(VALID_COMPONENT))
          throw new Error(`Assertion failed: Virtual components must be ended by an hexadecimal hash`);
        const target2 = path_1.ppath.relative(path_1.ppath.dirname(base), to);
        const segments = target2.split(`/`);
        let depth = 0;
        while (depth < segments.length && segments[depth] === `..`)
          depth += 1;
        const finalSegments = segments.slice(depth);
        const fullVirtualPath = path_1.ppath.join(base, component, String(depth), ...finalSegments);
        return fullVirtualPath;
      }
      static resolveVirtual(p) {
        const match = p.match(VIRTUAL_REGEXP);
        if (!match || !match[3] && match[5])
          return p;
        const target2 = path_1.ppath.dirname(match[1]);
        if (!match[3] || !match[4])
          return target2;
        const isnum = NUMBER_REGEXP.test(match[4]);
        if (!isnum)
          return p;
        const depth = Number(match[4]);
        const backstep = `../`.repeat(depth);
        const subpath = match[5] || `.`;
        return _VirtualFS.resolveVirtual(path_1.ppath.join(target2, backstep, subpath));
      }
      constructor({ baseFs = new NodeFS_1.NodeFS() } = {}) {
        super(path_1.ppath);
        this.baseFs = baseFs;
      }
      getExtractHint(hints) {
        return this.baseFs.getExtractHint(hints);
      }
      getRealPath() {
        return this.baseFs.getRealPath();
      }
      realpathSync(p) {
        const match = p.match(VIRTUAL_REGEXP);
        if (!match)
          return this.baseFs.realpathSync(p);
        if (!match[5])
          return p;
        const realpath3 = this.baseFs.realpathSync(this.mapToBase(p));
        return _VirtualFS.makeVirtualPath(match[1], match[3], realpath3);
      }
      async realpathPromise(p) {
        const match = p.match(VIRTUAL_REGEXP);
        if (!match)
          return await this.baseFs.realpathPromise(p);
        if (!match[5])
          return p;
        const realpath3 = await this.baseFs.realpathPromise(this.mapToBase(p));
        return _VirtualFS.makeVirtualPath(match[1], match[3], realpath3);
      }
      mapToBase(p) {
        if (p === ``)
          return p;
        if (this.pathUtils.isAbsolute(p))
          return _VirtualFS.resolveVirtual(p);
        const resolvedRoot = _VirtualFS.resolveVirtual(this.baseFs.resolve(path_1.PortablePath.dot));
        const resolvedP = _VirtualFS.resolveVirtual(this.baseFs.resolve(p));
        return path_1.ppath.relative(resolvedRoot, resolvedP) || path_1.PortablePath.dot;
      }
      mapFromBase(p) {
        return p;
      }
    };
    exports2.VirtualFS = VirtualFS;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/NodePathFS.js
var require_NodePathFS = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/NodePathFS.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.NodePathFS = void 0;
    var tslib_12 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
    var buffer_1 = tslib_12.__importDefault(__require("buffer"));
    var url_1 = __require("url");
    var util_1 = __require("util");
    var ProxiedFS_1 = require_ProxiedFS();
    var path_1 = require_path();
    var NodePathFS = class extends ProxiedFS_1.ProxiedFS {
      constructor(baseFs) {
        super(path_1.npath);
        this.baseFs = baseFs;
      }
      mapFromBase(path218) {
        return path218;
      }
      mapToBase(path218) {
        if (typeof path218 === `string`)
          return path218;
        if (path218 instanceof URL)
          return (0, url_1.fileURLToPath)(path218);
        if (Buffer.isBuffer(path218)) {
          const str2 = path218.toString();
          if (!isUtf8(path218, str2))
            throw new Error(`Non-utf8 buffers are not supported at the moment. Please upvote the following issue if you encounter this error: https://github.com/yarnpkg/berry/issues/4942`);
          return str2;
        }
        throw new Error(`Unsupported path type: ${(0, util_1.inspect)(path218)}`);
      }
    };
    exports2.NodePathFS = NodePathFS;
    function isUtf8(buf, str2) {
      if (typeof buffer_1.default.isUtf8 !== `undefined`)
        return buffer_1.default.isUtf8(buf);
      return Buffer.byteLength(str2) === buf.byteLength;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/patchFs/FileHandle.js
var require_FileHandle = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/patchFs/FileHandle.js"(exports2) {
    "use strict";
    var _a;
    var _b;
    var _c;
    var _d;
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.FileHandle = void 0;
    var readline_1 = __require("readline");
    var kBaseFs = /* @__PURE__ */ Symbol(`kBaseFs`);
    var kFd = /* @__PURE__ */ Symbol(`kFd`);
    var kClosePromise = /* @__PURE__ */ Symbol(`kClosePromise`);
    var kCloseResolve = /* @__PURE__ */ Symbol(`kCloseResolve`);
    var kCloseReject = /* @__PURE__ */ Symbol(`kCloseReject`);
    var kRefs = /* @__PURE__ */ Symbol(`kRefs`);
    var kRef = /* @__PURE__ */ Symbol(`kRef`);
    var kUnref = /* @__PURE__ */ Symbol(`kUnref`);
    var FileHandle = class {
      constructor(fd, baseFs) {
        this[_a] = 1;
        this[_b] = void 0;
        this[_c] = void 0;
        this[_d] = void 0;
        this[kBaseFs] = baseFs;
        this[kFd] = fd;
      }
      get fd() {
        return this[kFd];
      }
      async appendFile(data, options) {
        try {
          this[kRef](this.appendFile);
          const encoding = (typeof options === `string` ? options : options?.encoding) ?? void 0;
          return await this[kBaseFs].appendFilePromise(this.fd, data, encoding ? { encoding } : void 0);
        } finally {
          this[kUnref]();
        }
      }
      async chown(uid, gid) {
        try {
          this[kRef](this.chown);
          return await this[kBaseFs].fchownPromise(this.fd, uid, gid);
        } finally {
          this[kUnref]();
        }
      }
      async chmod(mode) {
        try {
          this[kRef](this.chmod);
          return await this[kBaseFs].fchmodPromise(this.fd, mode);
        } finally {
          this[kUnref]();
        }
      }
      createReadStream(options) {
        return this[kBaseFs].createReadStream(null, { ...options, fd: this.fd });
      }
      createWriteStream(options) {
        return this[kBaseFs].createWriteStream(null, { ...options, fd: this.fd });
      }
      // FIXME: Missing FakeFS version
      datasync() {
        throw new Error(`Method not implemented.`);
      }
      // FIXME: Missing FakeFS version
      sync() {
        throw new Error(`Method not implemented.`);
      }
      async read(bufferOrOptions, offsetOrOptions, length, position3) {
        try {
          this[kRef](this.read);
          let buffer3;
          let offset;
          if (!ArrayBuffer.isView(bufferOrOptions)) {
            buffer3 = bufferOrOptions?.buffer ?? Buffer.alloc(16384);
            offset = bufferOrOptions?.offset ?? 0;
            length = bufferOrOptions?.length ?? buffer3.byteLength - offset;
            position3 = bufferOrOptions?.position ?? null;
          } else if (typeof offsetOrOptions === `object` && offsetOrOptions !== null) {
            buffer3 = bufferOrOptions;
            offset = offsetOrOptions?.offset ?? 0;
            length = offsetOrOptions?.length ?? buffer3.byteLength - offset;
            position3 = offsetOrOptions?.position ?? null;
          } else {
            buffer3 = bufferOrOptions;
            offset = offsetOrOptions ?? 0;
            length ??= 0;
          }
          if (length === 0) {
            return {
              bytesRead: length,
              buffer: buffer3
            };
          }
          const bytesRead = await this[kBaseFs].readPromise(
            this.fd,
            // FIXME: FakeFS should support ArrayBufferViews directly
            Buffer.isBuffer(buffer3) ? buffer3 : Buffer.from(buffer3.buffer, buffer3.byteOffset, buffer3.byteLength),
            offset,
            length,
            position3
          );
          return {
            bytesRead,
            buffer: buffer3
          };
        } finally {
          this[kUnref]();
        }
      }
      async readFile(options) {
        try {
          this[kRef](this.readFile);
          const encoding = (typeof options === `string` ? options : options?.encoding) ?? void 0;
          return await this[kBaseFs].readFilePromise(this.fd, encoding);
        } finally {
          this[kUnref]();
        }
      }
      readLines(options) {
        return (0, readline_1.createInterface)({
          input: this.createReadStream(options),
          crlfDelay: Infinity
        });
      }
      async stat(opts2) {
        try {
          this[kRef](this.stat);
          return await this[kBaseFs].fstatPromise(this.fd, opts2);
        } finally {
          this[kUnref]();
        }
      }
      async truncate(len) {
        try {
          this[kRef](this.truncate);
          return await this[kBaseFs].ftruncatePromise(this.fd, len);
        } finally {
          this[kUnref]();
        }
      }
      // FIXME: Missing FakeFS version
      utimes(atime, mtime) {
        throw new Error(`Method not implemented.`);
      }
      async writeFile(data, options) {
        try {
          this[kRef](this.writeFile);
          const encoding = (typeof options === `string` ? options : options?.encoding) ?? void 0;
          await this[kBaseFs].writeFilePromise(this.fd, data, encoding);
        } finally {
          this[kUnref]();
        }
      }
      async write(...args) {
        try {
          this[kRef](this.write);
          if (ArrayBuffer.isView(args[0])) {
            const [buffer3, offset, length, position3] = args;
            const bytesWritten = await this[kBaseFs].writePromise(this.fd, buffer3, offset ?? void 0, length ?? void 0, position3 ?? void 0);
            return { bytesWritten, buffer: buffer3 };
          } else {
            const [data, position3, encoding] = args;
            const bytesWritten = await this[kBaseFs].writePromise(this.fd, data, position3, encoding);
            return { bytesWritten, buffer: data };
          }
        } finally {
          this[kUnref]();
        }
      }
      // TODO: Use writev from FakeFS when that is implemented
      async writev(buffers, position3) {
        try {
          this[kRef](this.writev);
          let bytesWritten = 0;
          if (typeof position3 !== `undefined`) {
            for (const buffer3 of buffers) {
              const writeResult = await this.write(buffer3, void 0, void 0, position3);
              bytesWritten += writeResult.bytesWritten;
              position3 += writeResult.bytesWritten;
            }
          } else {
            for (const buffer3 of buffers) {
              const writeResult = await this.write(buffer3);
              bytesWritten += writeResult.bytesWritten;
            }
          }
          return {
            buffers,
            bytesWritten
          };
        } finally {
          this[kUnref]();
        }
      }
      // FIXME: Missing FakeFS version
      readv(buffers, position3) {
        throw new Error(`Method not implemented.`);
      }
      close() {
        if (this[kFd] === -1)
          return Promise.resolve();
        if (this[kClosePromise])
          return this[kClosePromise];
        this[kRefs]--;
        if (this[kRefs] === 0) {
          const fd = this[kFd];
          this[kFd] = -1;
          this[kClosePromise] = this[kBaseFs].closePromise(fd).finally(() => {
            this[kClosePromise] = void 0;
          });
        } else {
          this[kClosePromise] = new Promise((resolve3, reject3) => {
            this[kCloseResolve] = resolve3;
            this[kCloseReject] = reject3;
          }).finally(() => {
            this[kClosePromise] = void 0;
            this[kCloseReject] = void 0;
            this[kCloseResolve] = void 0;
          });
        }
        return this[kClosePromise];
      }
      [(_a = kRefs, _b = kClosePromise, _c = kCloseResolve, _d = kCloseReject, kRef)](caller) {
        if (this[kFd] === -1) {
          const err = new Error(`file closed`);
          err.code = `EBADF`;
          err.syscall = caller.name;
          throw err;
        }
        this[kRefs]++;
      }
      [kUnref]() {
        this[kRefs]--;
        if (this[kRefs] === 0) {
          const fd = this[kFd];
          this[kFd] = -1;
          this[kBaseFs].closePromise(fd).then(this[kCloseResolve], this[kCloseReject]);
        }
      }
    };
    exports2.FileHandle = FileHandle;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/patchFs/patchFs.js
var require_patchFs = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/patchFs/patchFs.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.patchFs = patchFs;
    exports2.extendFs = extendFs;
    var util_1 = __require("util");
    var NodePathFS_1 = require_NodePathFS();
    var FileHandle_1 = require_FileHandle();
    var SYNC_IMPLEMENTATIONS = /* @__PURE__ */ new Set([
      `accessSync`,
      `appendFileSync`,
      `createReadStream`,
      `createWriteStream`,
      `chmodSync`,
      `fchmodSync`,
      `chownSync`,
      `fchownSync`,
      `closeSync`,
      `copyFileSync`,
      `linkSync`,
      `lstatSync`,
      `fstatSync`,
      `lutimesSync`,
      `mkdirSync`,
      `openSync`,
      `opendirSync`,
      `readlinkSync`,
      `readFileSync`,
      `readdirSync`,
      `readlinkSync`,
      `realpathSync`,
      `renameSync`,
      `rmdirSync`,
      `rmSync`,
      `statSync`,
      `symlinkSync`,
      `truncateSync`,
      `ftruncateSync`,
      `unlinkSync`,
      `unwatchFile`,
      `utimesSync`,
      `watch`,
      `watchFile`,
      `writeFileSync`,
      `writeSync`
    ]);
    var ASYNC_IMPLEMENTATIONS = /* @__PURE__ */ new Set([
      `accessPromise`,
      `appendFilePromise`,
      `fchmodPromise`,
      `chmodPromise`,
      `fchownPromise`,
      `chownPromise`,
      `closePromise`,
      `copyFilePromise`,
      `linkPromise`,
      `fstatPromise`,
      `lstatPromise`,
      `lutimesPromise`,
      `mkdirPromise`,
      `openPromise`,
      `opendirPromise`,
      `readdirPromise`,
      `realpathPromise`,
      `readFilePromise`,
      `readdirPromise`,
      `readlinkPromise`,
      `renamePromise`,
      `rmdirPromise`,
      `rmPromise`,
      `statPromise`,
      `symlinkPromise`,
      `truncatePromise`,
      `ftruncatePromise`,
      `unlinkPromise`,
      `utimesPromise`,
      `writeFilePromise`,
      `writeSync`
    ]);
    function patchFs(patchedFs, fakeFs) {
      fakeFs = new NodePathFS_1.NodePathFS(fakeFs);
      const setupFn = (target2, name, replacement) => {
        const orig = target2[name];
        target2[name] = replacement;
        if (typeof orig?.[util_1.promisify.custom] !== `undefined`) {
          replacement[util_1.promisify.custom] = orig[util_1.promisify.custom];
        }
      };
      {
        setupFn(patchedFs, `exists`, (p, ...args) => {
          const hasCallback = typeof args[args.length - 1] === `function`;
          const callback2 = hasCallback ? args.pop() : () => {
          };
          process.nextTick(() => {
            fakeFs.existsPromise(p).then((exists) => {
              callback2(exists);
            }, () => {
              callback2(false);
            });
          });
        });
        setupFn(patchedFs, `read`, (...args) => {
          let [fd, buffer3, offset, length, position3, callback2] = args;
          if (args.length <= 3) {
            let options = {};
            if (args.length < 3) {
              callback2 = args[1];
            } else {
              options = args[1];
              callback2 = args[2];
            }
            ({
              buffer: buffer3 = Buffer.alloc(16384),
              offset = 0,
              length = buffer3.byteLength,
              position: position3
            } = options);
          }
          if (offset == null)
            offset = 0;
          length |= 0;
          if (length === 0) {
            process.nextTick(() => {
              callback2(null, 0, buffer3);
            });
            return;
          }
          if (position3 == null)
            position3 = -1;
          process.nextTick(() => {
            fakeFs.readPromise(fd, buffer3, offset, length, position3).then((bytesRead) => {
              callback2(null, bytesRead, buffer3);
            }, (error) => {
              callback2(error, 0, buffer3);
            });
          });
        });
        for (const fnName of ASYNC_IMPLEMENTATIONS) {
          const origName = fnName.replace(/Promise$/, ``);
          if (typeof patchedFs[origName] === `undefined`)
            continue;
          const fakeImpl = fakeFs[fnName];
          if (typeof fakeImpl === `undefined`)
            continue;
          const wrapper = (...args) => {
            const hasCallback = typeof args[args.length - 1] === `function`;
            const callback2 = hasCallback ? args.pop() : () => {
            };
            process.nextTick(() => {
              fakeImpl.apply(fakeFs, args).then((result2) => {
                callback2(null, result2);
              }, (error) => {
                callback2(error);
              });
            });
          };
          setupFn(patchedFs, origName, wrapper);
        }
        patchedFs.realpath.native = patchedFs.realpath;
      }
      {
        setupFn(patchedFs, `existsSync`, (p) => {
          try {
            return fakeFs.existsSync(p);
          } catch {
            return false;
          }
        });
        setupFn(patchedFs, `readSync`, (...args) => {
          let [fd, buffer3, offset, length, position3] = args;
          if (args.length <= 3) {
            const options = args[2] || {};
            ({ offset = 0, length = buffer3.byteLength, position: position3 } = options);
          }
          if (offset == null)
            offset = 0;
          length |= 0;
          if (length === 0)
            return 0;
          if (position3 == null)
            position3 = -1;
          return fakeFs.readSync(fd, buffer3, offset, length, position3);
        });
        for (const fnName of SYNC_IMPLEMENTATIONS) {
          const origName = fnName;
          if (typeof patchedFs[origName] === `undefined`)
            continue;
          const fakeImpl = fakeFs[fnName];
          if (typeof fakeImpl === `undefined`)
            continue;
          setupFn(patchedFs, origName, fakeImpl.bind(fakeFs));
        }
        patchedFs.realpathSync.native = patchedFs.realpathSync;
      }
      {
        const patchedFsPromises = patchedFs.promises;
        for (const fnName of ASYNC_IMPLEMENTATIONS) {
          const origName = fnName.replace(/Promise$/, ``);
          if (typeof patchedFsPromises[origName] === `undefined`)
            continue;
          const fakeImpl = fakeFs[fnName];
          if (typeof fakeImpl === `undefined`)
            continue;
          if (fnName === `open`)
            continue;
          setupFn(patchedFsPromises, origName, (pathLike, ...args) => {
            if (pathLike instanceof FileHandle_1.FileHandle) {
              return pathLike[origName].apply(pathLike, args);
            } else {
              return fakeImpl.call(fakeFs, pathLike, ...args);
            }
          });
        }
        setupFn(patchedFsPromises, `open`, async (...args) => {
          const fd = await fakeFs.openPromise(...args);
          return new FileHandle_1.FileHandle(fd, fakeFs);
        });
      }
      {
        patchedFs.read[util_1.promisify.custom] = async (fd, buffer3, ...args) => {
          const res = fakeFs.readPromise(fd, buffer3, ...args);
          return { bytesRead: await res, buffer: buffer3 };
        };
        patchedFs.write[util_1.promisify.custom] = async (fd, buffer3, ...args) => {
          const res = fakeFs.writePromise(fd, buffer3, ...args);
          return { bytesWritten: await res, buffer: buffer3 };
        };
      }
    }
    function extendFs(realFs, fakeFs) {
      const patchedFs = Object.create(realFs);
      patchFs(patchedFs, fakeFs);
      return patchedFs;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/xfs.js
var require_xfs = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/xfs.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.xfs = void 0;
    var tslib_12 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
    var os_1 = tslib_12.__importDefault(__require("os"));
    var NodeFS_1 = require_NodeFS();
    var path_1 = require_path();
    function getTempName(prefix) {
      const hash2 = Math.ceil(Math.random() * 4294967296).toString(16).padStart(8, `0`);
      return `${prefix}${hash2}`;
    }
    var tmpdirs = /* @__PURE__ */ new Set();
    var tmpEnv = null;
    function initTmpEnv() {
      if (tmpEnv)
        return tmpEnv;
      const tmpdir = path_1.npath.toPortablePath(os_1.default.tmpdir());
      const realTmpdir = exports2.xfs.realpathSync(tmpdir);
      process.once(`exit`, () => {
        exports2.xfs.rmtempSync();
      });
      return tmpEnv = {
        tmpdir,
        realTmpdir
      };
    }
    exports2.xfs = Object.assign(new NodeFS_1.NodeFS(), {
      detachTemp(p) {
        tmpdirs.delete(p);
      },
      mktempSync(cb) {
        const { tmpdir, realTmpdir } = initTmpEnv();
        while (true) {
          const name = getTempName(`xfs-`);
          try {
            this.mkdirSync(path_1.ppath.join(tmpdir, name));
          } catch (error) {
            if (error.code === `EEXIST`) {
              continue;
            } else {
              throw error;
            }
          }
          const realP = path_1.ppath.join(realTmpdir, name);
          tmpdirs.add(realP);
          if (typeof cb === `undefined`)
            return realP;
          try {
            return cb(realP);
          } finally {
            if (tmpdirs.has(realP)) {
              tmpdirs.delete(realP);
              try {
                this.removeSync(realP);
              } catch {
              }
            }
          }
        }
      },
      async mktempPromise(cb) {
        const { tmpdir, realTmpdir } = initTmpEnv();
        while (true) {
          const name = getTempName(`xfs-`);
          try {
            await this.mkdirPromise(path_1.ppath.join(tmpdir, name));
          } catch (error) {
            if (error.code === `EEXIST`) {
              continue;
            } else {
              throw error;
            }
          }
          const realP = path_1.ppath.join(realTmpdir, name);
          tmpdirs.add(realP);
          if (typeof cb === `undefined`)
            return realP;
          try {
            return await cb(realP);
          } finally {
            if (tmpdirs.has(realP)) {
              tmpdirs.delete(realP);
              try {
                await this.removePromise(realP);
              } catch {
              }
            }
          }
        }
      },
      async rmtempPromise() {
        await Promise.all(Array.from(tmpdirs.values()).map(async (p) => {
          try {
            await exports2.xfs.removePromise(p, { maxRetries: 0 });
            tmpdirs.delete(p);
          } catch {
          }
        }));
      },
      rmtempSync() {
        for (const p of tmpdirs) {
          try {
            exports2.xfs.removeSync(p);
            tmpdirs.delete(p);
          } catch {
          }
        }
      }
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/index.js
var require_lib12 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/fslib/3.1.5/0e9904b11de6308a21798242812fdf27d11a2bd1d4eaf78322aa70681bfeb694/node_modules/@yarnpkg/fslib/lib/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.xfs = exports2.extendFs = exports2.patchFs = exports2.VirtualFS = exports2.ProxiedFS = exports2.PosixFS = exports2.NodeFS = exports2.NoFS = exports2.MountFS = exports2.LazyFS = exports2.JailFS = exports2.CwdFS = exports2.BasePortableFakeFS = exports2.FakeFS = exports2.AliasFS = exports2.ppath = exports2.npath = exports2.Filename = exports2.PortablePath = exports2.normalizeLineEndings = exports2.unwatchAllFiles = exports2.unwatchFile = exports2.watchFile = exports2.CustomDir = exports2.opendir = exports2.setupCopyIndex = exports2.statUtils = exports2.errors = exports2.constants = void 0;
    var tslib_12 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
    var constants5 = tslib_12.__importStar(require_constants6());
    exports2.constants = constants5;
    var errors2 = tslib_12.__importStar(require_errors2());
    exports2.errors = errors2;
    var statUtils = tslib_12.__importStar(require_statUtils());
    exports2.statUtils = statUtils;
    var copyPromise_1 = require_copyPromise();
    Object.defineProperty(exports2, "setupCopyIndex", { enumerable: true, get: function() {
      return copyPromise_1.setupCopyIndex;
    } });
    var opendir_1 = require_opendir();
    Object.defineProperty(exports2, "opendir", { enumerable: true, get: function() {
      return opendir_1.opendir;
    } });
    Object.defineProperty(exports2, "CustomDir", { enumerable: true, get: function() {
      return opendir_1.CustomDir;
    } });
    var watchFile_1 = require_watchFile();
    Object.defineProperty(exports2, "watchFile", { enumerable: true, get: function() {
      return watchFile_1.watchFile;
    } });
    Object.defineProperty(exports2, "unwatchFile", { enumerable: true, get: function() {
      return watchFile_1.unwatchFile;
    } });
    Object.defineProperty(exports2, "unwatchAllFiles", { enumerable: true, get: function() {
      return watchFile_1.unwatchAllFiles;
    } });
    var FakeFS_1 = require_FakeFS();
    Object.defineProperty(exports2, "normalizeLineEndings", { enumerable: true, get: function() {
      return FakeFS_1.normalizeLineEndings;
    } });
    var path_1 = require_path();
    Object.defineProperty(exports2, "PortablePath", { enumerable: true, get: function() {
      return path_1.PortablePath;
    } });
    Object.defineProperty(exports2, "Filename", { enumerable: true, get: function() {
      return path_1.Filename;
    } });
    var path_2 = require_path();
    Object.defineProperty(exports2, "npath", { enumerable: true, get: function() {
      return path_2.npath;
    } });
    Object.defineProperty(exports2, "ppath", { enumerable: true, get: function() {
      return path_2.ppath;
    } });
    var AliasFS_1 = require_AliasFS();
    Object.defineProperty(exports2, "AliasFS", { enumerable: true, get: function() {
      return AliasFS_1.AliasFS;
    } });
    var FakeFS_2 = require_FakeFS();
    Object.defineProperty(exports2, "FakeFS", { enumerable: true, get: function() {
      return FakeFS_2.FakeFS;
    } });
    Object.defineProperty(exports2, "BasePortableFakeFS", { enumerable: true, get: function() {
      return FakeFS_2.BasePortableFakeFS;
    } });
    var CwdFS_1 = require_CwdFS();
    Object.defineProperty(exports2, "CwdFS", { enumerable: true, get: function() {
      return CwdFS_1.CwdFS;
    } });
    var JailFS_1 = require_JailFS();
    Object.defineProperty(exports2, "JailFS", { enumerable: true, get: function() {
      return JailFS_1.JailFS;
    } });
    var LazyFS_1 = require_LazyFS();
    Object.defineProperty(exports2, "LazyFS", { enumerable: true, get: function() {
      return LazyFS_1.LazyFS;
    } });
    var MountFS_1 = require_MountFS();
    Object.defineProperty(exports2, "MountFS", { enumerable: true, get: function() {
      return MountFS_1.MountFS;
    } });
    var NoFS_1 = require_NoFS();
    Object.defineProperty(exports2, "NoFS", { enumerable: true, get: function() {
      return NoFS_1.NoFS;
    } });
    var NodeFS_1 = require_NodeFS();
    Object.defineProperty(exports2, "NodeFS", { enumerable: true, get: function() {
      return NodeFS_1.NodeFS;
    } });
    var PosixFS_1 = require_PosixFS();
    Object.defineProperty(exports2, "PosixFS", { enumerable: true, get: function() {
      return PosixFS_1.PosixFS;
    } });
    var ProxiedFS_1 = require_ProxiedFS();
    Object.defineProperty(exports2, "ProxiedFS", { enumerable: true, get: function() {
      return ProxiedFS_1.ProxiedFS;
    } });
    var VirtualFS_1 = require_VirtualFS();
    Object.defineProperty(exports2, "VirtualFS", { enumerable: true, get: function() {
      return VirtualFS_1.VirtualFS;
    } });
    var patchFs_1 = require_patchFs();
    Object.defineProperty(exports2, "patchFs", { enumerable: true, get: function() {
      return patchFs_1.patchFs;
    } });
    Object.defineProperty(exports2, "extendFs", { enumerable: true, get: function() {
      return patchFs_1.extendFs;
    } });
    var xfs_1 = require_xfs();
    Object.defineProperty(exports2, "xfs", { enumerable: true, get: function() {
      return xfs_1.xfs;
    } });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/parsers/3.0.3/256d7e0f058743ef9e1fa29a3e732a48a8e23e7bf0a89171d56f1a19aa7e2f76/node_modules/@yarnpkg/parsers/lib/grammars/shell.js
var require_shell = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/parsers/3.0.3/256d7e0f058743ef9e1fa29a3e732a48a8e23e7bf0a89171d56f1a19aa7e2f76/node_modules/@yarnpkg/parsers/lib/grammars/shell.js"(exports2, module2) {
    "use strict";
    function peg$subclass(child, parent) {
      function ctor() {
        this.constructor = child;
      }
      ctor.prototype = parent.prototype;
      child.prototype = new ctor();
    }
    function peg$SyntaxError(message, expected, found, location) {
      this.message = message;
      this.expected = expected;
      this.found = found;
      this.location = location;
      this.name = "SyntaxError";
      if (typeof Error.captureStackTrace === "function") {
        Error.captureStackTrace(this, peg$SyntaxError);
      }
    }
    peg$subclass(peg$SyntaxError, Error);
    peg$SyntaxError.buildMessage = function(expected, found) {
      var DESCRIBE_EXPECTATION_FNS = {
        literal: function(expectation) {
          return '"' + literalEscape(expectation.text) + '"';
        },
        "class": function(expectation) {
          var escapedParts = "", i2;
          for (i2 = 0; i2 < expectation.parts.length; i2++) {
            escapedParts += expectation.parts[i2] instanceof Array ? classEscape(expectation.parts[i2][0]) + "-" + classEscape(expectation.parts[i2][1]) : classEscape(expectation.parts[i2]);
          }
          return "[" + (expectation.inverted ? "^" : "") + escapedParts + "]";
        },
        any: function(expectation) {
          return "any character";
        },
        end: function(expectation) {
          return "end of input";
        },
        other: function(expectation) {
          return expectation.description;
        }
      };
      function hex(ch) {
        return ch.charCodeAt(0).toString(16).toUpperCase();
      }
      function literalEscape(s) {
        return s.replace(/\\/g, "\\\\").replace(/"/g, '\\"').replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(ch) {
          return "\\x0" + hex(ch);
        }).replace(/[\x10-\x1F\x7F-\x9F]/g, function(ch) {
          return "\\x" + hex(ch);
        });
      }
      function classEscape(s) {
        return s.replace(/\\/g, "\\\\").replace(/\]/g, "\\]").replace(/\^/g, "\\^").replace(/-/g, "\\-").replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(ch) {
          return "\\x0" + hex(ch);
        }).replace(/[\x10-\x1F\x7F-\x9F]/g, function(ch) {
          return "\\x" + hex(ch);
        });
      }
      function describeExpectation(expectation) {
        return DESCRIBE_EXPECTATION_FNS[expectation.type](expectation);
      }
      function describeExpected(expected2) {
        var descriptions = new Array(expected2.length), i2, j2;
        for (i2 = 0; i2 < expected2.length; i2++) {
          descriptions[i2] = describeExpectation(expected2[i2]);
        }
        descriptions.sort();
        if (descriptions.length > 0) {
          for (i2 = 1, j2 = 1; i2 < descriptions.length; i2++) {
            if (descriptions[i2 - 1] !== descriptions[i2]) {
              descriptions[j2] = descriptions[i2];
              j2++;
            }
          }
          descriptions.length = j2;
        }
        switch (descriptions.length) {
          case 1:
            return descriptions[0];
          case 2:
            return descriptions[0] + " or " + descriptions[1];
          default:
            return descriptions.slice(0, -1).join(", ") + ", or " + descriptions[descriptions.length - 1];
        }
      }
      function describeFound(found2) {
        return found2 ? '"' + literalEscape(found2) + '"' : "end of input";
      }
      return "Expected " + describeExpected(expected) + " but " + describeFound(found) + " found.";
    };
    function peg$parse(input, options) {
      options = options !== void 0 ? options : {};
      var peg$FAILED = {}, peg$startRuleFunctions = { Start: peg$parseStart }, peg$startRuleFunction = peg$parseStart, peg$c0 = function(line) {
        return line ? line : [];
      }, peg$c1 = function(command, type4, then) {
        return [{ command, type: type4 }].concat(then || []);
      }, peg$c2 = function(command, type4) {
        return [{ command, type: type4 || ";" }];
      }, peg$c3 = function(then) {
        return then;
      }, peg$c4 = ";", peg$c5 = peg$literalExpectation(";", false), peg$c6 = "&", peg$c7 = peg$literalExpectation("&", false), peg$c8 = function(chain3, then) {
        return then ? { chain: chain3, then } : { chain: chain3 };
      }, peg$c9 = function(type4, then) {
        return { type: type4, line: then };
      }, peg$c10 = "&&", peg$c11 = peg$literalExpectation("&&", false), peg$c12 = "||", peg$c13 = peg$literalExpectation("||", false), peg$c14 = function(main5, then) {
        return then ? { ...main5, then } : main5;
      }, peg$c15 = function(type4, then) {
        return { type: type4, chain: then };
      }, peg$c16 = "|&", peg$c17 = peg$literalExpectation("|&", false), peg$c18 = "|", peg$c19 = peg$literalExpectation("|", false), peg$c20 = "=", peg$c21 = peg$literalExpectation("=", false), peg$c22 = function(name, arg) {
        return { name, args: [arg] };
      }, peg$c23 = function(name) {
        return { name, args: [] };
      }, peg$c24 = "(", peg$c25 = peg$literalExpectation("(", false), peg$c26 = ")", peg$c27 = peg$literalExpectation(")", false), peg$c28 = function(subshell, args) {
        return { type: `subshell`, subshell, args };
      }, peg$c29 = "{", peg$c30 = peg$literalExpectation("{", false), peg$c31 = "}", peg$c32 = peg$literalExpectation("}", false), peg$c33 = function(group, args) {
        return { type: `group`, group, args };
      }, peg$c34 = function(envs, args) {
        return { type: `command`, args, envs };
      }, peg$c35 = function(envs) {
        return { type: `envs`, envs };
      }, peg$c36 = function(args) {
        return args;
      }, peg$c37 = function(arg) {
        return arg;
      }, peg$c38 = /^[0-9]/, peg$c39 = peg$classExpectation([["0", "9"]], false, false), peg$c40 = function(fd, redirect, arg) {
        return { type: `redirection`, subtype: redirect, fd: fd !== null ? parseInt(fd) : null, args: [arg] };
      }, peg$c41 = ">>", peg$c42 = peg$literalExpectation(">>", false), peg$c43 = ">&", peg$c44 = peg$literalExpectation(">&", false), peg$c45 = ">", peg$c46 = peg$literalExpectation(">", false), peg$c47 = "<<<", peg$c48 = peg$literalExpectation("<<<", false), peg$c49 = "<&", peg$c50 = peg$literalExpectation("<&", false), peg$c51 = "<", peg$c52 = peg$literalExpectation("<", false), peg$c53 = function(segments) {
        return { type: `argument`, segments: [].concat(...segments) };
      }, peg$c54 = function(string) {
        return string;
      }, peg$c55 = "$'", peg$c56 = peg$literalExpectation("$'", false), peg$c57 = "'", peg$c58 = peg$literalExpectation("'", false), peg$c59 = function(text2) {
        return [{ type: `text`, text: text2 }];
      }, peg$c60 = '""', peg$c61 = peg$literalExpectation('""', false), peg$c62 = function() {
        return { type: `text`, text: `` };
      }, peg$c63 = '"', peg$c64 = peg$literalExpectation('"', false), peg$c65 = function(segments) {
        return segments;
      }, peg$c66 = function(arithmetic) {
        return { type: `arithmetic`, arithmetic, quoted: true };
      }, peg$c67 = function(shell) {
        return { type: `shell`, shell, quoted: true };
      }, peg$c68 = function(variable) {
        return { type: `variable`, ...variable, quoted: true };
      }, peg$c69 = function(text2) {
        return { type: `text`, text: text2 };
      }, peg$c70 = function(arithmetic) {
        return { type: `arithmetic`, arithmetic, quoted: false };
      }, peg$c71 = function(shell) {
        return { type: `shell`, shell, quoted: false };
      }, peg$c72 = function(variable) {
        return { type: `variable`, ...variable, quoted: false };
      }, peg$c73 = function(pattern) {
        return { type: `glob`, pattern };
      }, peg$c74 = /^[^']/, peg$c75 = peg$classExpectation(["'"], true, false), peg$c76 = function(chars) {
        return chars.join(``);
      }, peg$c77 = /^[^$"]/, peg$c78 = peg$classExpectation(["$", '"'], true, false), peg$c79 = "\\\n", peg$c80 = peg$literalExpectation("\\\n", false), peg$c81 = function() {
        return ``;
      }, peg$c82 = "\\", peg$c83 = peg$literalExpectation("\\", false), peg$c84 = /^[\\$"`]/, peg$c85 = peg$classExpectation(["\\", "$", '"', "`"], false, false), peg$c86 = function(c3) {
        return c3;
      }, peg$c87 = "\\a", peg$c88 = peg$literalExpectation("\\a", false), peg$c89 = function() {
        return "a";
      }, peg$c90 = "\\b", peg$c91 = peg$literalExpectation("\\b", false), peg$c92 = function() {
        return "\b";
      }, peg$c93 = /^[Ee]/, peg$c94 = peg$classExpectation(["E", "e"], false, false), peg$c95 = function() {
        return "\x1B";
      }, peg$c96 = "\\f", peg$c97 = peg$literalExpectation("\\f", false), peg$c98 = function() {
        return "\f";
      }, peg$c99 = "\\n", peg$c100 = peg$literalExpectation("\\n", false), peg$c101 = function() {
        return "\n";
      }, peg$c102 = "\\r", peg$c103 = peg$literalExpectation("\\r", false), peg$c104 = function() {
        return "\r";
      }, peg$c105 = "\\t", peg$c106 = peg$literalExpectation("\\t", false), peg$c107 = function() {
        return "	";
      }, peg$c108 = "\\v", peg$c109 = peg$literalExpectation("\\v", false), peg$c110 = function() {
        return "\v";
      }, peg$c111 = /^[\\'"?]/, peg$c112 = peg$classExpectation(["\\", "'", '"', "?"], false, false), peg$c113 = function(c3) {
        return String.fromCharCode(parseInt(c3, 16));
      }, peg$c114 = "\\x", peg$c115 = peg$literalExpectation("\\x", false), peg$c116 = "\\u", peg$c117 = peg$literalExpectation("\\u", false), peg$c118 = "\\U", peg$c119 = peg$literalExpectation("\\U", false), peg$c120 = function(c3) {
        return String.fromCodePoint(parseInt(c3, 16));
      }, peg$c121 = /^[0-7]/, peg$c122 = peg$classExpectation([["0", "7"]], false, false), peg$c123 = /^[0-9a-fA-f]/, peg$c124 = peg$classExpectation([["0", "9"], ["a", "f"], ["A", "f"]], false, false), peg$c125 = peg$anyExpectation(), peg$c126 = "{}", peg$c127 = peg$literalExpectation("{}", false), peg$c128 = function() {
        return "{}";
      }, peg$c129 = "-", peg$c130 = peg$literalExpectation("-", false), peg$c131 = "+", peg$c132 = peg$literalExpectation("+", false), peg$c133 = ".", peg$c134 = peg$literalExpectation(".", false), peg$c135 = function(sign, left, right) {
        return { type: `number`, value: (sign === "-" ? -1 : 1) * parseFloat(left.join(``) + `.` + right.join(``)) };
      }, peg$c136 = function(sign, value) {
        return { type: `number`, value: (sign === "-" ? -1 : 1) * parseInt(value.join(``)) };
      }, peg$c137 = function(variable) {
        return { type: `variable`, ...variable };
      }, peg$c138 = function(name) {
        return { type: `variable`, name };
      }, peg$c139 = function(value) {
        return value;
      }, peg$c140 = "*", peg$c141 = peg$literalExpectation("*", false), peg$c142 = "/", peg$c143 = peg$literalExpectation("/", false), peg$c144 = function(left, op, right) {
        return { type: op === `*` ? `multiplication` : `division`, right };
      }, peg$c145 = function(left, rest) {
        return rest.reduce((left2, right) => ({ left: left2, ...right }), left);
      }, peg$c146 = function(left, op, right) {
        return { type: op === `+` ? `addition` : `subtraction`, right };
      }, peg$c147 = "$((", peg$c148 = peg$literalExpectation("$((", false), peg$c149 = "))", peg$c150 = peg$literalExpectation("))", false), peg$c151 = function(arithmetic) {
        return arithmetic;
      }, peg$c152 = "$(", peg$c153 = peg$literalExpectation("$(", false), peg$c154 = function(command) {
        return command;
      }, peg$c155 = "${", peg$c156 = peg$literalExpectation("${", false), peg$c157 = ":-", peg$c158 = peg$literalExpectation(":-", false), peg$c159 = function(name, arg) {
        return { name, defaultValue: arg };
      }, peg$c160 = ":-}", peg$c161 = peg$literalExpectation(":-}", false), peg$c162 = function(name) {
        return { name, defaultValue: [] };
      }, peg$c163 = ":+", peg$c164 = peg$literalExpectation(":+", false), peg$c165 = function(name, arg) {
        return { name, alternativeValue: arg };
      }, peg$c166 = ":+}", peg$c167 = peg$literalExpectation(":+}", false), peg$c168 = function(name) {
        return { name, alternativeValue: [] };
      }, peg$c169 = function(name) {
        return { name };
      }, peg$c170 = "$", peg$c171 = peg$literalExpectation("$", false), peg$c172 = function(pattern) {
        return options.isGlobPattern(pattern);
      }, peg$c173 = function(pattern) {
        return pattern;
      }, peg$c174 = /^[a-zA-Z0-9_]/, peg$c175 = peg$classExpectation([["a", "z"], ["A", "Z"], ["0", "9"], "_"], false, false), peg$c176 = function() {
        return text();
      }, peg$c177 = /^[$@*?#a-zA-Z0-9_\-]/, peg$c178 = peg$classExpectation(["$", "@", "*", "?", "#", ["a", "z"], ["A", "Z"], ["0", "9"], "_", "-"], false, false), peg$c179 = /^[()}<>$|&; \t"']/, peg$c180 = peg$classExpectation(["(", ")", "}", "<", ">", "$", "|", "&", ";", " ", "	", '"', "'"], false, false), peg$c181 = /^[<>&; \t"']/, peg$c182 = peg$classExpectation(["<", ">", "&", ";", " ", "	", '"', "'"], false, false), peg$c183 = /^[ \t]/, peg$c184 = peg$classExpectation([" ", "	"], false, false), peg$currPos = 0, peg$savedPos = 0, peg$posDetailsCache = [{ line: 1, column: 1 }], peg$maxFailPos = 0, peg$maxFailExpected = [], peg$silentFails = 0, peg$result;
      if ("startRule" in options) {
        if (!(options.startRule in peg$startRuleFunctions)) {
          throw new Error(`Can't start parsing from rule "` + options.startRule + '".');
        }
        peg$startRuleFunction = peg$startRuleFunctions[options.startRule];
      }
      function text() {
        return input.substring(peg$savedPos, peg$currPos);
      }
      function location() {
        return peg$computeLocation(peg$savedPos, peg$currPos);
      }
      function expected(description, location2) {
        location2 = location2 !== void 0 ? location2 : peg$computeLocation(peg$savedPos, peg$currPos);
        throw peg$buildStructuredError(
          [peg$otherExpectation(description)],
          input.substring(peg$savedPos, peg$currPos),
          location2
        );
      }
      function error(message, location2) {
        location2 = location2 !== void 0 ? location2 : peg$computeLocation(peg$savedPos, peg$currPos);
        throw peg$buildSimpleError(message, location2);
      }
      function peg$literalExpectation(text2, ignoreCase) {
        return { type: "literal", text: text2, ignoreCase };
      }
      function peg$classExpectation(parts, inverted, ignoreCase) {
        return { type: "class", parts, inverted, ignoreCase };
      }
      function peg$anyExpectation() {
        return { type: "any" };
      }
      function peg$endExpectation() {
        return { type: "end" };
      }
      function peg$otherExpectation(description) {
        return { type: "other", description };
      }
      function peg$computePosDetails(pos) {
        var details = peg$posDetailsCache[pos], p;
        if (details) {
          return details;
        } else {
          p = pos - 1;
          while (!peg$posDetailsCache[p]) {
            p--;
          }
          details = peg$posDetailsCache[p];
          details = {
            line: details.line,
            column: details.column
          };
          while (p < pos) {
            if (input.charCodeAt(p) === 10) {
              details.line++;
              details.column = 1;
            } else {
              details.column++;
            }
            p++;
          }
          peg$posDetailsCache[pos] = details;
          return details;
        }
      }
      function peg$computeLocation(startPos, endPos) {
        var startPosDetails = peg$computePosDetails(startPos), endPosDetails = peg$computePosDetails(endPos);
        return {
          start: {
            offset: startPos,
            line: startPosDetails.line,
            column: startPosDetails.column
          },
          end: {
            offset: endPos,
            line: endPosDetails.line,
            column: endPosDetails.column
          }
        };
      }
      function peg$fail(expected2) {
        if (peg$currPos < peg$maxFailPos) {
          return;
        }
        if (peg$currPos > peg$maxFailPos) {
          peg$maxFailPos = peg$currPos;
          peg$maxFailExpected = [];
        }
        peg$maxFailExpected.push(expected2);
      }
      function peg$buildSimpleError(message, location2) {
        return new peg$SyntaxError(message, null, null, location2);
      }
      function peg$buildStructuredError(expected2, found, location2) {
        return new peg$SyntaxError(
          peg$SyntaxError.buildMessage(expected2, found),
          expected2,
          found,
          location2
        );
      }
      function peg$parseStart() {
        var s0, s1, s2;
        s0 = peg$currPos;
        s1 = [];
        s2 = peg$parseS();
        while (s2 !== peg$FAILED) {
          s1.push(s2);
          s2 = peg$parseS();
        }
        if (s1 !== peg$FAILED) {
          s2 = peg$parseShellLine();
          if (s2 === peg$FAILED) {
            s2 = null;
          }
          if (s2 !== peg$FAILED) {
            peg$savedPos = s0;
            s1 = peg$c0(s2);
            s0 = s1;
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        return s0;
      }
      function peg$parseShellLine() {
        var s0, s1, s2, s3, s4;
        s0 = peg$currPos;
        s1 = peg$parseCommandLine();
        if (s1 !== peg$FAILED) {
          s2 = [];
          s3 = peg$parseS();
          while (s3 !== peg$FAILED) {
            s2.push(s3);
            s3 = peg$parseS();
          }
          if (s2 !== peg$FAILED) {
            s3 = peg$parseShellLineType();
            if (s3 !== peg$FAILED) {
              s4 = peg$parseShellLineThen();
              if (s4 === peg$FAILED) {
                s4 = null;
              }
              if (s4 !== peg$FAILED) {
                peg$savedPos = s0;
                s1 = peg$c1(s1, s3, s4);
                s0 = s1;
              } else {
                peg$currPos = s0;
                s0 = peg$FAILED;
              }
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        if (s0 === peg$FAILED) {
          s0 = peg$currPos;
          s1 = peg$parseCommandLine();
          if (s1 !== peg$FAILED) {
            s2 = [];
            s3 = peg$parseS();
            while (s3 !== peg$FAILED) {
              s2.push(s3);
              s3 = peg$parseS();
            }
            if (s2 !== peg$FAILED) {
              s3 = peg$parseShellLineType();
              if (s3 === peg$FAILED) {
                s3 = null;
              }
              if (s3 !== peg$FAILED) {
                peg$savedPos = s0;
                s1 = peg$c2(s1, s3);
                s0 = s1;
              } else {
                peg$currPos = s0;
                s0 = peg$FAILED;
              }
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        }
        return s0;
      }
      function peg$parseShellLineThen() {
        var s0, s1, s2, s3, s4;
        s0 = peg$currPos;
        s1 = [];
        s2 = peg$parseS();
        while (s2 !== peg$FAILED) {
          s1.push(s2);
          s2 = peg$parseS();
        }
        if (s1 !== peg$FAILED) {
          s2 = peg$parseShellLine();
          if (s2 !== peg$FAILED) {
            s3 = [];
            s4 = peg$parseS();
            while (s4 !== peg$FAILED) {
              s3.push(s4);
              s4 = peg$parseS();
            }
            if (s3 !== peg$FAILED) {
              peg$savedPos = s0;
              s1 = peg$c3(s2);
              s0 = s1;
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        return s0;
      }
      function peg$parseShellLineType() {
        var s0;
        if (input.charCodeAt(peg$currPos) === 59) {
          s0 = peg$c4;
          peg$currPos++;
        } else {
          s0 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c5);
          }
        }
        if (s0 === peg$FAILED) {
          if (input.charCodeAt(peg$currPos) === 38) {
            s0 = peg$c6;
            peg$currPos++;
          } else {
            s0 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c7);
            }
          }
        }
        return s0;
      }
      function peg$parseCommandLine() {
        var s0, s1, s2;
        s0 = peg$currPos;
        s1 = peg$parseCommandChain();
        if (s1 !== peg$FAILED) {
          s2 = peg$parseCommandLineThen();
          if (s2 === peg$FAILED) {
            s2 = null;
          }
          if (s2 !== peg$FAILED) {
            peg$savedPos = s0;
            s1 = peg$c8(s1, s2);
            s0 = s1;
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        return s0;
      }
      function peg$parseCommandLineThen() {
        var s0, s1, s2, s3, s4, s5, s6;
        s0 = peg$currPos;
        s1 = [];
        s2 = peg$parseS();
        while (s2 !== peg$FAILED) {
          s1.push(s2);
          s2 = peg$parseS();
        }
        if (s1 !== peg$FAILED) {
          s2 = peg$parseCommandLineType();
          if (s2 !== peg$FAILED) {
            s3 = [];
            s4 = peg$parseS();
            while (s4 !== peg$FAILED) {
              s3.push(s4);
              s4 = peg$parseS();
            }
            if (s3 !== peg$FAILED) {
              s4 = peg$parseCommandLine();
              if (s4 !== peg$FAILED) {
                s5 = [];
                s6 = peg$parseS();
                while (s6 !== peg$FAILED) {
                  s5.push(s6);
                  s6 = peg$parseS();
                }
                if (s5 !== peg$FAILED) {
                  peg$savedPos = s0;
                  s1 = peg$c9(s2, s4);
                  s0 = s1;
                } else {
                  peg$currPos = s0;
                  s0 = peg$FAILED;
                }
              } else {
                peg$currPos = s0;
                s0 = peg$FAILED;
              }
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        return s0;
      }
      function peg$parseCommandLineType() {
        var s0;
        if (input.substr(peg$currPos, 2) === peg$c10) {
          s0 = peg$c10;
          peg$currPos += 2;
        } else {
          s0 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c11);
          }
        }
        if (s0 === peg$FAILED) {
          if (input.substr(peg$currPos, 2) === peg$c12) {
            s0 = peg$c12;
            peg$currPos += 2;
          } else {
            s0 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c13);
            }
          }
        }
        return s0;
      }
      function peg$parseCommandChain() {
        var s0, s1, s2;
        s0 = peg$currPos;
        s1 = peg$parseCommand();
        if (s1 !== peg$FAILED) {
          s2 = peg$parseCommandChainThen();
          if (s2 === peg$FAILED) {
            s2 = null;
          }
          if (s2 !== peg$FAILED) {
            peg$savedPos = s0;
            s1 = peg$c14(s1, s2);
            s0 = s1;
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        return s0;
      }
      function peg$parseCommandChainThen() {
        var s0, s1, s2, s3, s4, s5, s6;
        s0 = peg$currPos;
        s1 = [];
        s2 = peg$parseS();
        while (s2 !== peg$FAILED) {
          s1.push(s2);
          s2 = peg$parseS();
        }
        if (s1 !== peg$FAILED) {
          s2 = peg$parseCommandChainType();
          if (s2 !== peg$FAILED) {
            s3 = [];
            s4 = peg$parseS();
            while (s4 !== peg$FAILED) {
              s3.push(s4);
              s4 = peg$parseS();
            }
            if (s3 !== peg$FAILED) {
              s4 = peg$parseCommandChain();
              if (s4 !== peg$FAILED) {
                s5 = [];
                s6 = peg$parseS();
                while (s6 !== peg$FAILED) {
                  s5.push(s6);
                  s6 = peg$parseS();
                }
                if (s5 !== peg$FAILED) {
                  peg$savedPos = s0;
                  s1 = peg$c15(s2, s4);
                  s0 = s1;
                } else {
                  peg$currPos = s0;
                  s0 = peg$FAILED;
                }
              } else {
                peg$currPos = s0;
                s0 = peg$FAILED;
              }
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        return s0;
      }
      function peg$parseCommandChainType() {
        var s0;
        if (input.substr(peg$currPos, 2) === peg$c16) {
          s0 = peg$c16;
          peg$currPos += 2;
        } else {
          s0 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c17);
          }
        }
        if (s0 === peg$FAILED) {
          if (input.charCodeAt(peg$currPos) === 124) {
            s0 = peg$c18;
            peg$currPos++;
          } else {
            s0 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c19);
            }
          }
        }
        return s0;
      }
      function peg$parseVariableAssignment() {
        var s0, s1, s2, s3, s4, s5;
        s0 = peg$currPos;
        s1 = peg$parseEnvVariable();
        if (s1 !== peg$FAILED) {
          if (input.charCodeAt(peg$currPos) === 61) {
            s2 = peg$c20;
            peg$currPos++;
          } else {
            s2 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c21);
            }
          }
          if (s2 !== peg$FAILED) {
            s3 = peg$parseStrictValueArgument();
            if (s3 !== peg$FAILED) {
              s4 = [];
              s5 = peg$parseS();
              while (s5 !== peg$FAILED) {
                s4.push(s5);
                s5 = peg$parseS();
              }
              if (s4 !== peg$FAILED) {
                peg$savedPos = s0;
                s1 = peg$c22(s1, s3);
                s0 = s1;
              } else {
                peg$currPos = s0;
                s0 = peg$FAILED;
              }
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        if (s0 === peg$FAILED) {
          s0 = peg$currPos;
          s1 = peg$parseEnvVariable();
          if (s1 !== peg$FAILED) {
            if (input.charCodeAt(peg$currPos) === 61) {
              s2 = peg$c20;
              peg$currPos++;
            } else {
              s2 = peg$FAILED;
              if (peg$silentFails === 0) {
                peg$fail(peg$c21);
              }
            }
            if (s2 !== peg$FAILED) {
              s3 = [];
              s4 = peg$parseS();
              while (s4 !== peg$FAILED) {
                s3.push(s4);
                s4 = peg$parseS();
              }
              if (s3 !== peg$FAILED) {
                peg$savedPos = s0;
                s1 = peg$c23(s1);
                s0 = s1;
              } else {
                peg$currPos = s0;
                s0 = peg$FAILED;
              }
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        }
        return s0;
      }
      function peg$parseCommand() {
        var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10;
        s0 = peg$currPos;
        s1 = [];
        s2 = peg$parseS();
        while (s2 !== peg$FAILED) {
          s1.push(s2);
          s2 = peg$parseS();
        }
        if (s1 !== peg$FAILED) {
          if (input.charCodeAt(peg$currPos) === 40) {
            s2 = peg$c24;
            peg$currPos++;
          } else {
            s2 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c25);
            }
          }
          if (s2 !== peg$FAILED) {
            s3 = [];
            s4 = peg$parseS();
            while (s4 !== peg$FAILED) {
              s3.push(s4);
              s4 = peg$parseS();
            }
            if (s3 !== peg$FAILED) {
              s4 = peg$parseShellLine();
              if (s4 !== peg$FAILED) {
                s5 = [];
                s6 = peg$parseS();
                while (s6 !== peg$FAILED) {
                  s5.push(s6);
                  s6 = peg$parseS();
                }
                if (s5 !== peg$FAILED) {
                  if (input.charCodeAt(peg$currPos) === 41) {
                    s6 = peg$c26;
                    peg$currPos++;
                  } else {
                    s6 = peg$FAILED;
                    if (peg$silentFails === 0) {
                      peg$fail(peg$c27);
                    }
                  }
                  if (s6 !== peg$FAILED) {
                    s7 = [];
                    s8 = peg$parseS();
                    while (s8 !== peg$FAILED) {
                      s7.push(s8);
                      s8 = peg$parseS();
                    }
                    if (s7 !== peg$FAILED) {
                      s8 = [];
                      s9 = peg$parseRedirectArgument();
                      while (s9 !== peg$FAILED) {
                        s8.push(s9);
                        s9 = peg$parseRedirectArgument();
                      }
                      if (s8 !== peg$FAILED) {
                        s9 = [];
                        s10 = peg$parseS();
                        while (s10 !== peg$FAILED) {
                          s9.push(s10);
                          s10 = peg$parseS();
                        }
                        if (s9 !== peg$FAILED) {
                          peg$savedPos = s0;
                          s1 = peg$c28(s4, s8);
                          s0 = s1;
                        } else {
                          peg$currPos = s0;
                          s0 = peg$FAILED;
                        }
                      } else {
                        peg$currPos = s0;
                        s0 = peg$FAILED;
                      }
                    } else {
                      peg$currPos = s0;
                      s0 = peg$FAILED;
                    }
                  } else {
                    peg$currPos = s0;
                    s0 = peg$FAILED;
                  }
                } else {
                  peg$currPos = s0;
                  s0 = peg$FAILED;
                }
              } else {
                peg$currPos = s0;
                s0 = peg$FAILED;
              }
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        if (s0 === peg$FAILED) {
          s0 = peg$currPos;
          s1 = [];
          s2 = peg$parseS();
          while (s2 !== peg$FAILED) {
            s1.push(s2);
            s2 = peg$parseS();
          }
          if (s1 !== peg$FAILED) {
            if (input.charCodeAt(peg$currPos) === 123) {
              s2 = peg$c29;
              peg$currPos++;
            } else {
              s2 = peg$FAILED;
              if (peg$silentFails === 0) {
                peg$fail(peg$c30);
              }
            }
            if (s2 !== peg$FAILED) {
              s3 = [];
              s4 = peg$parseS();
              while (s4 !== peg$FAILED) {
                s3.push(s4);
                s4 = peg$parseS();
              }
              if (s3 !== peg$FAILED) {
                s4 = peg$parseShellLine();
                if (s4 !== peg$FAILED) {
                  s5 = [];
                  s6 = peg$parseS();
                  while (s6 !== peg$FAILED) {
                    s5.push(s6);
                    s6 = peg$parseS();
                  }
                  if (s5 !== peg$FAILED) {
                    if (input.charCodeAt(peg$currPos) === 125) {
                      s6 = peg$c31;
                      peg$currPos++;
                    } else {
                      s6 = peg$FAILED;
                      if (peg$silentFails === 0) {
                        peg$fail(peg$c32);
                      }
                    }
                    if (s6 !== peg$FAILED) {
                      s7 = [];
                      s8 = peg$parseS();
                      while (s8 !== peg$FAILED) {
                        s7.push(s8);
                        s8 = peg$parseS();
                      }
                      if (s7 !== peg$FAILED) {
                        s8 = [];
                        s9 = peg$parseRedirectArgument();
                        while (s9 !== peg$FAILED) {
                          s8.push(s9);
                          s9 = peg$parseRedirectArgument();
                        }
                        if (s8 !== peg$FAILED) {
                          s9 = [];
                          s10 = peg$parseS();
                          while (s10 !== peg$FAILED) {
                            s9.push(s10);
                            s10 = peg$parseS();
                          }
                          if (s9 !== peg$FAILED) {
                            peg$savedPos = s0;
                            s1 = peg$c33(s4, s8);
                            s0 = s1;
                          } else {
                            peg$currPos = s0;
                            s0 = peg$FAILED;
                          }
                        } else {
                          peg$currPos = s0;
                          s0 = peg$FAILED;
                        }
                      } else {
                        peg$currPos = s0;
                        s0 = peg$FAILED;
                      }
                    } else {
                      peg$currPos = s0;
                      s0 = peg$FAILED;
                    }
                  } else {
                    peg$currPos = s0;
                    s0 = peg$FAILED;
                  }
                } else {
                  peg$currPos = s0;
                  s0 = peg$FAILED;
                }
              } else {
                peg$currPos = s0;
                s0 = peg$FAILED;
              }
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
          if (s0 === peg$FAILED) {
            s0 = peg$currPos;
            s1 = [];
            s2 = peg$parseS();
            while (s2 !== peg$FAILED) {
              s1.push(s2);
              s2 = peg$parseS();
            }
            if (s1 !== peg$FAILED) {
              s2 = [];
              s3 = peg$parseVariableAssignment();
              while (s3 !== peg$FAILED) {
                s2.push(s3);
                s3 = peg$parseVariableAssignment();
              }
              if (s2 !== peg$FAILED) {
                s3 = [];
                s4 = peg$parseS();
                while (s4 !== peg$FAILED) {
                  s3.push(s4);
                  s4 = peg$parseS();
                }
                if (s3 !== peg$FAILED) {
                  s4 = [];
                  s5 = peg$parseArgument();
                  if (s5 !== peg$FAILED) {
                    while (s5 !== peg$FAILED) {
                      s4.push(s5);
                      s5 = peg$parseArgument();
                    }
                  } else {
                    s4 = peg$FAILED;
                  }
                  if (s4 !== peg$FAILED) {
                    s5 = [];
                    s6 = peg$parseS();
                    while (s6 !== peg$FAILED) {
                      s5.push(s6);
                      s6 = peg$parseS();
                    }
                    if (s5 !== peg$FAILED) {
                      peg$savedPos = s0;
                      s1 = peg$c34(s2, s4);
                      s0 = s1;
                    } else {
                      peg$currPos = s0;
                      s0 = peg$FAILED;
                    }
                  } else {
                    peg$currPos = s0;
                    s0 = peg$FAILED;
                  }
                } else {
                  peg$currPos = s0;
                  s0 = peg$FAILED;
                }
              } else {
                peg$currPos = s0;
                s0 = peg$FAILED;
              }
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
            if (s0 === peg$FAILED) {
              s0 = peg$currPos;
              s1 = [];
              s2 = peg$parseS();
              while (s2 !== peg$FAILED) {
                s1.push(s2);
                s2 = peg$parseS();
              }
              if (s1 !== peg$FAILED) {
                s2 = [];
                s3 = peg$parseVariableAssignment();
                if (s3 !== peg$FAILED) {
                  while (s3 !== peg$FAILED) {
                    s2.push(s3);
                    s3 = peg$parseVariableAssignment();
                  }
                } else {
                  s2 = peg$FAILED;
                }
                if (s2 !== peg$FAILED) {
                  s3 = [];
                  s4 = peg$parseS();
                  while (s4 !== peg$FAILED) {
                    s3.push(s4);
                    s4 = peg$parseS();
                  }
                  if (s3 !== peg$FAILED) {
                    peg$savedPos = s0;
                    s1 = peg$c35(s2);
                    s0 = s1;
                  } else {
                    peg$currPos = s0;
                    s0 = peg$FAILED;
                  }
                } else {
                  peg$currPos = s0;
                  s0 = peg$FAILED;
                }
              } else {
                peg$currPos = s0;
                s0 = peg$FAILED;
              }
            }
          }
        }
        return s0;
      }
      function peg$parseCommandString() {
        var s0, s1, s2, s3, s4;
        s0 = peg$currPos;
        s1 = [];
        s2 = peg$parseS();
        while (s2 !== peg$FAILED) {
          s1.push(s2);
          s2 = peg$parseS();
        }
        if (s1 !== peg$FAILED) {
          s2 = [];
          s3 = peg$parseValueArgument();
          if (s3 !== peg$FAILED) {
            while (s3 !== peg$FAILED) {
              s2.push(s3);
              s3 = peg$parseValueArgument();
            }
          } else {
            s2 = peg$FAILED;
          }
          if (s2 !== peg$FAILED) {
            s3 = [];
            s4 = peg$parseS();
            while (s4 !== peg$FAILED) {
              s3.push(s4);
              s4 = peg$parseS();
            }
            if (s3 !== peg$FAILED) {
              peg$savedPos = s0;
              s1 = peg$c36(s2);
              s0 = s1;
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        return s0;
      }
      function peg$parseArgument() {
        var s0, s1, s2;
        s0 = peg$currPos;
        s1 = [];
        s2 = peg$parseS();
        while (s2 !== peg$FAILED) {
          s1.push(s2);
          s2 = peg$parseS();
        }
        if (s1 !== peg$FAILED) {
          s2 = peg$parseRedirectArgument();
          if (s2 !== peg$FAILED) {
            peg$savedPos = s0;
            s1 = peg$c37(s2);
            s0 = s1;
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        if (s0 === peg$FAILED) {
          s0 = peg$currPos;
          s1 = [];
          s2 = peg$parseS();
          while (s2 !== peg$FAILED) {
            s1.push(s2);
            s2 = peg$parseS();
          }
          if (s1 !== peg$FAILED) {
            s2 = peg$parseValueArgument();
            if (s2 !== peg$FAILED) {
              peg$savedPos = s0;
              s1 = peg$c37(s2);
              s0 = s1;
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        }
        return s0;
      }
      function peg$parseRedirectArgument() {
        var s0, s1, s2, s3, s4;
        s0 = peg$currPos;
        s1 = [];
        s2 = peg$parseS();
        while (s2 !== peg$FAILED) {
          s1.push(s2);
          s2 = peg$parseS();
        }
        if (s1 !== peg$FAILED) {
          if (peg$c38.test(input.charAt(peg$currPos))) {
            s2 = input.charAt(peg$currPos);
            peg$currPos++;
          } else {
            s2 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c39);
            }
          }
          if (s2 === peg$FAILED) {
            s2 = null;
          }
          if (s2 !== peg$FAILED) {
            s3 = peg$parseRedirectType();
            if (s3 !== peg$FAILED) {
              s4 = peg$parseValueArgument();
              if (s4 !== peg$FAILED) {
                peg$savedPos = s0;
                s1 = peg$c40(s2, s3, s4);
                s0 = s1;
              } else {
                peg$currPos = s0;
                s0 = peg$FAILED;
              }
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        return s0;
      }
      function peg$parseRedirectType() {
        var s0;
        if (input.substr(peg$currPos, 2) === peg$c41) {
          s0 = peg$c41;
          peg$currPos += 2;
        } else {
          s0 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c42);
          }
        }
        if (s0 === peg$FAILED) {
          if (input.substr(peg$currPos, 2) === peg$c43) {
            s0 = peg$c43;
            peg$currPos += 2;
          } else {
            s0 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c44);
            }
          }
          if (s0 === peg$FAILED) {
            if (input.charCodeAt(peg$currPos) === 62) {
              s0 = peg$c45;
              peg$currPos++;
            } else {
              s0 = peg$FAILED;
              if (peg$silentFails === 0) {
                peg$fail(peg$c46);
              }
            }
            if (s0 === peg$FAILED) {
              if (input.substr(peg$currPos, 3) === peg$c47) {
                s0 = peg$c47;
                peg$currPos += 3;
              } else {
                s0 = peg$FAILED;
                if (peg$silentFails === 0) {
                  peg$fail(peg$c48);
                }
              }
              if (s0 === peg$FAILED) {
                if (input.substr(peg$currPos, 2) === peg$c49) {
                  s0 = peg$c49;
                  peg$currPos += 2;
                } else {
                  s0 = peg$FAILED;
                  if (peg$silentFails === 0) {
                    peg$fail(peg$c50);
                  }
                }
                if (s0 === peg$FAILED) {
                  if (input.charCodeAt(peg$currPos) === 60) {
                    s0 = peg$c51;
                    peg$currPos++;
                  } else {
                    s0 = peg$FAILED;
                    if (peg$silentFails === 0) {
                      peg$fail(peg$c52);
                    }
                  }
                }
              }
            }
          }
        }
        return s0;
      }
      function peg$parseValueArgument() {
        var s0, s1, s2;
        s0 = peg$currPos;
        s1 = [];
        s2 = peg$parseS();
        while (s2 !== peg$FAILED) {
          s1.push(s2);
          s2 = peg$parseS();
        }
        if (s1 !== peg$FAILED) {
          s2 = peg$parseStrictValueArgument();
          if (s2 !== peg$FAILED) {
            peg$savedPos = s0;
            s1 = peg$c37(s2);
            s0 = s1;
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        return s0;
      }
      function peg$parseStrictValueArgument() {
        var s0, s1, s2;
        s0 = peg$currPos;
        s1 = [];
        s2 = peg$parseArgumentSegment();
        if (s2 !== peg$FAILED) {
          while (s2 !== peg$FAILED) {
            s1.push(s2);
            s2 = peg$parseArgumentSegment();
          }
        } else {
          s1 = peg$FAILED;
        }
        if (s1 !== peg$FAILED) {
          peg$savedPos = s0;
          s1 = peg$c53(s1);
        }
        s0 = s1;
        return s0;
      }
      function peg$parseArgumentSegment() {
        var s0, s1;
        s0 = peg$currPos;
        s1 = peg$parseCQuoteString();
        if (s1 !== peg$FAILED) {
          peg$savedPos = s0;
          s1 = peg$c54(s1);
        }
        s0 = s1;
        if (s0 === peg$FAILED) {
          s0 = peg$currPos;
          s1 = peg$parseSglQuoteString();
          if (s1 !== peg$FAILED) {
            peg$savedPos = s0;
            s1 = peg$c54(s1);
          }
          s0 = s1;
          if (s0 === peg$FAILED) {
            s0 = peg$currPos;
            s1 = peg$parseDblQuoteString();
            if (s1 !== peg$FAILED) {
              peg$savedPos = s0;
              s1 = peg$c54(s1);
            }
            s0 = s1;
            if (s0 === peg$FAILED) {
              s0 = peg$currPos;
              s1 = peg$parsePlainString();
              if (s1 !== peg$FAILED) {
                peg$savedPos = s0;
                s1 = peg$c54(s1);
              }
              s0 = s1;
            }
          }
        }
        return s0;
      }
      function peg$parseCQuoteString() {
        var s0, s1, s2, s3;
        s0 = peg$currPos;
        if (input.substr(peg$currPos, 2) === peg$c55) {
          s1 = peg$c55;
          peg$currPos += 2;
        } else {
          s1 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c56);
          }
        }
        if (s1 !== peg$FAILED) {
          s2 = peg$parseCQuoteStringText();
          if (s2 !== peg$FAILED) {
            if (input.charCodeAt(peg$currPos) === 39) {
              s3 = peg$c57;
              peg$currPos++;
            } else {
              s3 = peg$FAILED;
              if (peg$silentFails === 0) {
                peg$fail(peg$c58);
              }
            }
            if (s3 !== peg$FAILED) {
              peg$savedPos = s0;
              s1 = peg$c59(s2);
              s0 = s1;
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        return s0;
      }
      function peg$parseSglQuoteString() {
        var s0, s1, s2, s3;
        s0 = peg$currPos;
        if (input.charCodeAt(peg$currPos) === 39) {
          s1 = peg$c57;
          peg$currPos++;
        } else {
          s1 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c58);
          }
        }
        if (s1 !== peg$FAILED) {
          s2 = peg$parseSglQuoteStringText();
          if (s2 !== peg$FAILED) {
            if (input.charCodeAt(peg$currPos) === 39) {
              s3 = peg$c57;
              peg$currPos++;
            } else {
              s3 = peg$FAILED;
              if (peg$silentFails === 0) {
                peg$fail(peg$c58);
              }
            }
            if (s3 !== peg$FAILED) {
              peg$savedPos = s0;
              s1 = peg$c59(s2);
              s0 = s1;
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        return s0;
      }
      function peg$parseDblQuoteString() {
        var s0, s1, s2, s3;
        s0 = peg$currPos;
        if (input.substr(peg$currPos, 2) === peg$c60) {
          s1 = peg$c60;
          peg$currPos += 2;
        } else {
          s1 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c61);
          }
        }
        if (s1 !== peg$FAILED) {
          peg$savedPos = s0;
          s1 = peg$c62();
        }
        s0 = s1;
        if (s0 === peg$FAILED) {
          s0 = peg$currPos;
          if (input.charCodeAt(peg$currPos) === 34) {
            s1 = peg$c63;
            peg$currPos++;
          } else {
            s1 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c64);
            }
          }
          if (s1 !== peg$FAILED) {
            s2 = [];
            s3 = peg$parseDblQuoteStringSegment();
            while (s3 !== peg$FAILED) {
              s2.push(s3);
              s3 = peg$parseDblQuoteStringSegment();
            }
            if (s2 !== peg$FAILED) {
              if (input.charCodeAt(peg$currPos) === 34) {
                s3 = peg$c63;
                peg$currPos++;
              } else {
                s3 = peg$FAILED;
                if (peg$silentFails === 0) {
                  peg$fail(peg$c64);
                }
              }
              if (s3 !== peg$FAILED) {
                peg$savedPos = s0;
                s1 = peg$c65(s2);
                s0 = s1;
              } else {
                peg$currPos = s0;
                s0 = peg$FAILED;
              }
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        }
        return s0;
      }
      function peg$parsePlainString() {
        var s0, s1, s2;
        s0 = peg$currPos;
        s1 = [];
        s2 = peg$parsePlainStringSegment();
        if (s2 !== peg$FAILED) {
          while (s2 !== peg$FAILED) {
            s1.push(s2);
            s2 = peg$parsePlainStringSegment();
          }
        } else {
          s1 = peg$FAILED;
        }
        if (s1 !== peg$FAILED) {
          peg$savedPos = s0;
          s1 = peg$c65(s1);
        }
        s0 = s1;
        return s0;
      }
      function peg$parseDblQuoteStringSegment() {
        var s0, s1;
        s0 = peg$currPos;
        s1 = peg$parseArithmetic();
        if (s1 !== peg$FAILED) {
          peg$savedPos = s0;
          s1 = peg$c66(s1);
        }
        s0 = s1;
        if (s0 === peg$FAILED) {
          s0 = peg$currPos;
          s1 = peg$parseSubshell();
          if (s1 !== peg$FAILED) {
            peg$savedPos = s0;
            s1 = peg$c67(s1);
          }
          s0 = s1;
          if (s0 === peg$FAILED) {
            s0 = peg$currPos;
            s1 = peg$parseVariable();
            if (s1 !== peg$FAILED) {
              peg$savedPos = s0;
              s1 = peg$c68(s1);
            }
            s0 = s1;
            if (s0 === peg$FAILED) {
              s0 = peg$currPos;
              s1 = peg$parseDblQuoteStringText();
              if (s1 !== peg$FAILED) {
                peg$savedPos = s0;
                s1 = peg$c69(s1);
              }
              s0 = s1;
            }
          }
        }
        return s0;
      }
      function peg$parsePlainStringSegment() {
        var s0, s1;
        s0 = peg$currPos;
        s1 = peg$parseArithmetic();
        if (s1 !== peg$FAILED) {
          peg$savedPos = s0;
          s1 = peg$c70(s1);
        }
        s0 = s1;
        if (s0 === peg$FAILED) {
          s0 = peg$currPos;
          s1 = peg$parseSubshell();
          if (s1 !== peg$FAILED) {
            peg$savedPos = s0;
            s1 = peg$c71(s1);
          }
          s0 = s1;
          if (s0 === peg$FAILED) {
            s0 = peg$currPos;
            s1 = peg$parseVariable();
            if (s1 !== peg$FAILED) {
              peg$savedPos = s0;
              s1 = peg$c72(s1);
            }
            s0 = s1;
            if (s0 === peg$FAILED) {
              s0 = peg$currPos;
              s1 = peg$parseGlob();
              if (s1 !== peg$FAILED) {
                peg$savedPos = s0;
                s1 = peg$c73(s1);
              }
              s0 = s1;
              if (s0 === peg$FAILED) {
                s0 = peg$currPos;
                s1 = peg$parsePlainStringText();
                if (s1 !== peg$FAILED) {
                  peg$savedPos = s0;
                  s1 = peg$c69(s1);
                }
                s0 = s1;
              }
            }
          }
        }
        return s0;
      }
      function peg$parseSglQuoteStringText() {
        var s0, s1, s2;
        s0 = peg$currPos;
        s1 = [];
        if (peg$c74.test(input.charAt(peg$currPos))) {
          s2 = input.charAt(peg$currPos);
          peg$currPos++;
        } else {
          s2 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c75);
          }
        }
        while (s2 !== peg$FAILED) {
          s1.push(s2);
          if (peg$c74.test(input.charAt(peg$currPos))) {
            s2 = input.charAt(peg$currPos);
            peg$currPos++;
          } else {
            s2 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c75);
            }
          }
        }
        if (s1 !== peg$FAILED) {
          peg$savedPos = s0;
          s1 = peg$c76(s1);
        }
        s0 = s1;
        return s0;
      }
      function peg$parseDblQuoteStringText() {
        var s0, s1, s2;
        s0 = peg$currPos;
        s1 = [];
        s2 = peg$parseDblQuoteEscapedChar();
        if (s2 === peg$FAILED) {
          if (peg$c77.test(input.charAt(peg$currPos))) {
            s2 = input.charAt(peg$currPos);
            peg$currPos++;
          } else {
            s2 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c78);
            }
          }
        }
        if (s2 !== peg$FAILED) {
          while (s2 !== peg$FAILED) {
            s1.push(s2);
            s2 = peg$parseDblQuoteEscapedChar();
            if (s2 === peg$FAILED) {
              if (peg$c77.test(input.charAt(peg$currPos))) {
                s2 = input.charAt(peg$currPos);
                peg$currPos++;
              } else {
                s2 = peg$FAILED;
                if (peg$silentFails === 0) {
                  peg$fail(peg$c78);
                }
              }
            }
          }
        } else {
          s1 = peg$FAILED;
        }
        if (s1 !== peg$FAILED) {
          peg$savedPos = s0;
          s1 = peg$c76(s1);
        }
        s0 = s1;
        return s0;
      }
      function peg$parseDblQuoteEscapedChar() {
        var s0, s1, s2;
        s0 = peg$currPos;
        if (input.substr(peg$currPos, 2) === peg$c79) {
          s1 = peg$c79;
          peg$currPos += 2;
        } else {
          s1 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c80);
          }
        }
        if (s1 !== peg$FAILED) {
          peg$savedPos = s0;
          s1 = peg$c81();
        }
        s0 = s1;
        if (s0 === peg$FAILED) {
          s0 = peg$currPos;
          if (input.charCodeAt(peg$currPos) === 92) {
            s1 = peg$c82;
            peg$currPos++;
          } else {
            s1 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c83);
            }
          }
          if (s1 !== peg$FAILED) {
            if (peg$c84.test(input.charAt(peg$currPos))) {
              s2 = input.charAt(peg$currPos);
              peg$currPos++;
            } else {
              s2 = peg$FAILED;
              if (peg$silentFails === 0) {
                peg$fail(peg$c85);
              }
            }
            if (s2 !== peg$FAILED) {
              peg$savedPos = s0;
              s1 = peg$c86(s2);
              s0 = s1;
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        }
        return s0;
      }
      function peg$parseCQuoteStringText() {
        var s0, s1, s2;
        s0 = peg$currPos;
        s1 = [];
        s2 = peg$parseCQuoteEscapedChar();
        if (s2 === peg$FAILED) {
          if (peg$c74.test(input.charAt(peg$currPos))) {
            s2 = input.charAt(peg$currPos);
            peg$currPos++;
          } else {
            s2 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c75);
            }
          }
        }
        while (s2 !== peg$FAILED) {
          s1.push(s2);
          s2 = peg$parseCQuoteEscapedChar();
          if (s2 === peg$FAILED) {
            if (peg$c74.test(input.charAt(peg$currPos))) {
              s2 = input.charAt(peg$currPos);
              peg$currPos++;
            } else {
              s2 = peg$FAILED;
              if (peg$silentFails === 0) {
                peg$fail(peg$c75);
              }
            }
          }
        }
        if (s1 !== peg$FAILED) {
          peg$savedPos = s0;
          s1 = peg$c76(s1);
        }
        s0 = s1;
        return s0;
      }
      function peg$parseCQuoteEscapedChar() {
        var s0, s1, s2;
        s0 = peg$currPos;
        if (input.substr(peg$currPos, 2) === peg$c87) {
          s1 = peg$c87;
          peg$currPos += 2;
        } else {
          s1 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c88);
          }
        }
        if (s1 !== peg$FAILED) {
          peg$savedPos = s0;
          s1 = peg$c89();
        }
        s0 = s1;
        if (s0 === peg$FAILED) {
          s0 = peg$currPos;
          if (input.substr(peg$currPos, 2) === peg$c90) {
            s1 = peg$c90;
            peg$currPos += 2;
          } else {
            s1 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c91);
            }
          }
          if (s1 !== peg$FAILED) {
            peg$savedPos = s0;
            s1 = peg$c92();
          }
          s0 = s1;
          if (s0 === peg$FAILED) {
            s0 = peg$currPos;
            if (input.charCodeAt(peg$currPos) === 92) {
              s1 = peg$c82;
              peg$currPos++;
            } else {
              s1 = peg$FAILED;
              if (peg$silentFails === 0) {
                peg$fail(peg$c83);
              }
            }
            if (s1 !== peg$FAILED) {
              if (peg$c93.test(input.charAt(peg$currPos))) {
                s2 = input.charAt(peg$currPos);
                peg$currPos++;
              } else {
                s2 = peg$FAILED;
                if (peg$silentFails === 0) {
                  peg$fail(peg$c94);
                }
              }
              if (s2 !== peg$FAILED) {
                peg$savedPos = s0;
                s1 = peg$c95();
                s0 = s1;
              } else {
                peg$currPos = s0;
                s0 = peg$FAILED;
              }
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
            if (s0 === peg$FAILED) {
              s0 = peg$currPos;
              if (input.substr(peg$currPos, 2) === peg$c96) {
                s1 = peg$c96;
                peg$currPos += 2;
              } else {
                s1 = peg$FAILED;
                if (peg$silentFails === 0) {
                  peg$fail(peg$c97);
                }
              }
              if (s1 !== peg$FAILED) {
                peg$savedPos = s0;
                s1 = peg$c98();
              }
              s0 = s1;
              if (s0 === peg$FAILED) {
                s0 = peg$currPos;
                if (input.substr(peg$currPos, 2) === peg$c99) {
                  s1 = peg$c99;
                  peg$currPos += 2;
                } else {
                  s1 = peg$FAILED;
                  if (peg$silentFails === 0) {
                    peg$fail(peg$c100);
                  }
                }
                if (s1 !== peg$FAILED) {
                  peg$savedPos = s0;
                  s1 = peg$c101();
                }
                s0 = s1;
                if (s0 === peg$FAILED) {
                  s0 = peg$currPos;
                  if (input.substr(peg$currPos, 2) === peg$c102) {
                    s1 = peg$c102;
                    peg$currPos += 2;
                  } else {
                    s1 = peg$FAILED;
                    if (peg$silentFails === 0) {
                      peg$fail(peg$c103);
                    }
                  }
                  if (s1 !== peg$FAILED) {
                    peg$savedPos = s0;
                    s1 = peg$c104();
                  }
                  s0 = s1;
                  if (s0 === peg$FAILED) {
                    s0 = peg$currPos;
                    if (input.substr(peg$currPos, 2) === peg$c105) {
                      s1 = peg$c105;
                      peg$currPos += 2;
                    } else {
                      s1 = peg$FAILED;
                      if (peg$silentFails === 0) {
                        peg$fail(peg$c106);
                      }
                    }
                    if (s1 !== peg$FAILED) {
                      peg$savedPos = s0;
                      s1 = peg$c107();
                    }
                    s0 = s1;
                    if (s0 === peg$FAILED) {
                      s0 = peg$currPos;
                      if (input.substr(peg$currPos, 2) === peg$c108) {
                        s1 = peg$c108;
                        peg$currPos += 2;
                      } else {
                        s1 = peg$FAILED;
                        if (peg$silentFails === 0) {
                          peg$fail(peg$c109);
                        }
                      }
                      if (s1 !== peg$FAILED) {
                        peg$savedPos = s0;
                        s1 = peg$c110();
                      }
                      s0 = s1;
                      if (s0 === peg$FAILED) {
                        s0 = peg$currPos;
                        if (input.charCodeAt(peg$currPos) === 92) {
                          s1 = peg$c82;
                          peg$currPos++;
                        } else {
                          s1 = peg$FAILED;
                          if (peg$silentFails === 0) {
                            peg$fail(peg$c83);
                          }
                        }
                        if (s1 !== peg$FAILED) {
                          if (peg$c111.test(input.charAt(peg$currPos))) {
                            s2 = input.charAt(peg$currPos);
                            peg$currPos++;
                          } else {
                            s2 = peg$FAILED;
                            if (peg$silentFails === 0) {
                              peg$fail(peg$c112);
                            }
                          }
                          if (s2 !== peg$FAILED) {
                            peg$savedPos = s0;
                            s1 = peg$c86(s2);
                            s0 = s1;
                          } else {
                            peg$currPos = s0;
                            s0 = peg$FAILED;
                          }
                        } else {
                          peg$currPos = s0;
                          s0 = peg$FAILED;
                        }
                        if (s0 === peg$FAILED) {
                          s0 = peg$parseHexCodeString();
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        }
        return s0;
      }
      function peg$parseHexCodeString() {
        var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11;
        s0 = peg$currPos;
        if (input.charCodeAt(peg$currPos) === 92) {
          s1 = peg$c82;
          peg$currPos++;
        } else {
          s1 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c83);
          }
        }
        if (s1 !== peg$FAILED) {
          s2 = peg$parseHexCodeChar0();
          if (s2 !== peg$FAILED) {
            peg$savedPos = s0;
            s1 = peg$c113(s2);
            s0 = s1;
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        if (s0 === peg$FAILED) {
          s0 = peg$currPos;
          if (input.substr(peg$currPos, 2) === peg$c114) {
            s1 = peg$c114;
            peg$currPos += 2;
          } else {
            s1 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c115);
            }
          }
          if (s1 !== peg$FAILED) {
            s2 = peg$currPos;
            s3 = peg$currPos;
            s4 = peg$parseHexCodeChar0();
            if (s4 !== peg$FAILED) {
              s5 = peg$parseHexCodeChar();
              if (s5 !== peg$FAILED) {
                s4 = [s4, s5];
                s3 = s4;
              } else {
                peg$currPos = s3;
                s3 = peg$FAILED;
              }
            } else {
              peg$currPos = s3;
              s3 = peg$FAILED;
            }
            if (s3 === peg$FAILED) {
              s3 = peg$parseHexCodeChar0();
            }
            if (s3 !== peg$FAILED) {
              s2 = input.substring(s2, peg$currPos);
            } else {
              s2 = s3;
            }
            if (s2 !== peg$FAILED) {
              peg$savedPos = s0;
              s1 = peg$c113(s2);
              s0 = s1;
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
          if (s0 === peg$FAILED) {
            s0 = peg$currPos;
            if (input.substr(peg$currPos, 2) === peg$c116) {
              s1 = peg$c116;
              peg$currPos += 2;
            } else {
              s1 = peg$FAILED;
              if (peg$silentFails === 0) {
                peg$fail(peg$c117);
              }
            }
            if (s1 !== peg$FAILED) {
              s2 = peg$currPos;
              s3 = peg$currPos;
              s4 = peg$parseHexCodeChar();
              if (s4 !== peg$FAILED) {
                s5 = peg$parseHexCodeChar();
                if (s5 !== peg$FAILED) {
                  s6 = peg$parseHexCodeChar();
                  if (s6 !== peg$FAILED) {
                    s7 = peg$parseHexCodeChar();
                    if (s7 !== peg$FAILED) {
                      s4 = [s4, s5, s6, s7];
                      s3 = s4;
                    } else {
                      peg$currPos = s3;
                      s3 = peg$FAILED;
                    }
                  } else {
                    peg$currPos = s3;
                    s3 = peg$FAILED;
                  }
                } else {
                  peg$currPos = s3;
                  s3 = peg$FAILED;
                }
              } else {
                peg$currPos = s3;
                s3 = peg$FAILED;
              }
              if (s3 !== peg$FAILED) {
                s2 = input.substring(s2, peg$currPos);
              } else {
                s2 = s3;
              }
              if (s2 !== peg$FAILED) {
                peg$savedPos = s0;
                s1 = peg$c113(s2);
                s0 = s1;
              } else {
                peg$currPos = s0;
                s0 = peg$FAILED;
              }
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
            if (s0 === peg$FAILED) {
              s0 = peg$currPos;
              if (input.substr(peg$currPos, 2) === peg$c118) {
                s1 = peg$c118;
                peg$currPos += 2;
              } else {
                s1 = peg$FAILED;
                if (peg$silentFails === 0) {
                  peg$fail(peg$c119);
                }
              }
              if (s1 !== peg$FAILED) {
                s2 = peg$currPos;
                s3 = peg$currPos;
                s4 = peg$parseHexCodeChar();
                if (s4 !== peg$FAILED) {
                  s5 = peg$parseHexCodeChar();
                  if (s5 !== peg$FAILED) {
                    s6 = peg$parseHexCodeChar();
                    if (s6 !== peg$FAILED) {
                      s7 = peg$parseHexCodeChar();
                      if (s7 !== peg$FAILED) {
                        s8 = peg$parseHexCodeChar();
                        if (s8 !== peg$FAILED) {
                          s9 = peg$parseHexCodeChar();
                          if (s9 !== peg$FAILED) {
                            s10 = peg$parseHexCodeChar();
                            if (s10 !== peg$FAILED) {
                              s11 = peg$parseHexCodeChar();
                              if (s11 !== peg$FAILED) {
                                s4 = [s4, s5, s6, s7, s8, s9, s10, s11];
                                s3 = s4;
                              } else {
                                peg$currPos = s3;
                                s3 = peg$FAILED;
                              }
                            } else {
                              peg$currPos = s3;
                              s3 = peg$FAILED;
                            }
                          } else {
                            peg$currPos = s3;
                            s3 = peg$FAILED;
                          }
                        } else {
                          peg$currPos = s3;
                          s3 = peg$FAILED;
                        }
                      } else {
                        peg$currPos = s3;
                        s3 = peg$FAILED;
                      }
                    } else {
                      peg$currPos = s3;
                      s3 = peg$FAILED;
                    }
                  } else {
                    peg$currPos = s3;
                    s3 = peg$FAILED;
                  }
                } else {
                  peg$currPos = s3;
                  s3 = peg$FAILED;
                }
                if (s3 !== peg$FAILED) {
                  s2 = input.substring(s2, peg$currPos);
                } else {
                  s2 = s3;
                }
                if (s2 !== peg$FAILED) {
                  peg$savedPos = s0;
                  s1 = peg$c120(s2);
                  s0 = s1;
                } else {
                  peg$currPos = s0;
                  s0 = peg$FAILED;
                }
              } else {
                peg$currPos = s0;
                s0 = peg$FAILED;
              }
            }
          }
        }
        return s0;
      }
      function peg$parseHexCodeChar0() {
        var s0;
        if (peg$c121.test(input.charAt(peg$currPos))) {
          s0 = input.charAt(peg$currPos);
          peg$currPos++;
        } else {
          s0 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c122);
          }
        }
        return s0;
      }
      function peg$parseHexCodeChar() {
        var s0;
        if (peg$c123.test(input.charAt(peg$currPos))) {
          s0 = input.charAt(peg$currPos);
          peg$currPos++;
        } else {
          s0 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c124);
          }
        }
        return s0;
      }
      function peg$parsePlainStringText() {
        var s0, s1, s2, s3, s4;
        s0 = peg$currPos;
        s1 = [];
        s2 = peg$currPos;
        if (input.charCodeAt(peg$currPos) === 92) {
          s3 = peg$c82;
          peg$currPos++;
        } else {
          s3 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c83);
          }
        }
        if (s3 !== peg$FAILED) {
          if (input.length > peg$currPos) {
            s4 = input.charAt(peg$currPos);
            peg$currPos++;
          } else {
            s4 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c125);
            }
          }
          if (s4 !== peg$FAILED) {
            peg$savedPos = s2;
            s3 = peg$c86(s4);
            s2 = s3;
          } else {
            peg$currPos = s2;
            s2 = peg$FAILED;
          }
        } else {
          peg$currPos = s2;
          s2 = peg$FAILED;
        }
        if (s2 === peg$FAILED) {
          s2 = peg$currPos;
          if (input.substr(peg$currPos, 2) === peg$c126) {
            s3 = peg$c126;
            peg$currPos += 2;
          } else {
            s3 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c127);
            }
          }
          if (s3 !== peg$FAILED) {
            peg$savedPos = s2;
            s3 = peg$c128();
          }
          s2 = s3;
          if (s2 === peg$FAILED) {
            s2 = peg$currPos;
            s3 = peg$currPos;
            peg$silentFails++;
            s4 = peg$parseSpecialShellChars();
            peg$silentFails--;
            if (s4 === peg$FAILED) {
              s3 = void 0;
            } else {
              peg$currPos = s3;
              s3 = peg$FAILED;
            }
            if (s3 !== peg$FAILED) {
              if (input.length > peg$currPos) {
                s4 = input.charAt(peg$currPos);
                peg$currPos++;
              } else {
                s4 = peg$FAILED;
                if (peg$silentFails === 0) {
                  peg$fail(peg$c125);
                }
              }
              if (s4 !== peg$FAILED) {
                peg$savedPos = s2;
                s3 = peg$c86(s4);
                s2 = s3;
              } else {
                peg$currPos = s2;
                s2 = peg$FAILED;
              }
            } else {
              peg$currPos = s2;
              s2 = peg$FAILED;
            }
          }
        }
        if (s2 !== peg$FAILED) {
          while (s2 !== peg$FAILED) {
            s1.push(s2);
            s2 = peg$currPos;
            if (input.charCodeAt(peg$currPos) === 92) {
              s3 = peg$c82;
              peg$currPos++;
            } else {
              s3 = peg$FAILED;
              if (peg$silentFails === 0) {
                peg$fail(peg$c83);
              }
            }
            if (s3 !== peg$FAILED) {
              if (input.length > peg$currPos) {
                s4 = input.charAt(peg$currPos);
                peg$currPos++;
              } else {
                s4 = peg$FAILED;
                if (peg$silentFails === 0) {
                  peg$fail(peg$c125);
                }
              }
              if (s4 !== peg$FAILED) {
                peg$savedPos = s2;
                s3 = peg$c86(s4);
                s2 = s3;
              } else {
                peg$currPos = s2;
                s2 = peg$FAILED;
              }
            } else {
              peg$currPos = s2;
              s2 = peg$FAILED;
            }
            if (s2 === peg$FAILED) {
              s2 = peg$currPos;
              if (input.substr(peg$currPos, 2) === peg$c126) {
                s3 = peg$c126;
                peg$currPos += 2;
              } else {
                s3 = peg$FAILED;
                if (peg$silentFails === 0) {
                  peg$fail(peg$c127);
                }
              }
              if (s3 !== peg$FAILED) {
                peg$savedPos = s2;
                s3 = peg$c128();
              }
              s2 = s3;
              if (s2 === peg$FAILED) {
                s2 = peg$currPos;
                s3 = peg$currPos;
                peg$silentFails++;
                s4 = peg$parseSpecialShellChars();
                peg$silentFails--;
                if (s4 === peg$FAILED) {
                  s3 = void 0;
                } else {
                  peg$currPos = s3;
                  s3 = peg$FAILED;
                }
                if (s3 !== peg$FAILED) {
                  if (input.length > peg$currPos) {
                    s4 = input.charAt(peg$currPos);
                    peg$currPos++;
                  } else {
                    s4 = peg$FAILED;
                    if (peg$silentFails === 0) {
                      peg$fail(peg$c125);
                    }
                  }
                  if (s4 !== peg$FAILED) {
                    peg$savedPos = s2;
                    s3 = peg$c86(s4);
                    s2 = s3;
                  } else {
                    peg$currPos = s2;
                    s2 = peg$FAILED;
                  }
                } else {
                  peg$currPos = s2;
                  s2 = peg$FAILED;
                }
              }
            }
          }
        } else {
          s1 = peg$FAILED;
        }
        if (s1 !== peg$FAILED) {
          peg$savedPos = s0;
          s1 = peg$c76(s1);
        }
        s0 = s1;
        return s0;
      }
      function peg$parseArithmeticPrimary() {
        var s0, s1, s2, s3, s4, s5;
        s0 = peg$currPos;
        if (input.charCodeAt(peg$currPos) === 45) {
          s1 = peg$c129;
          peg$currPos++;
        } else {
          s1 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c130);
          }
        }
        if (s1 === peg$FAILED) {
          if (input.charCodeAt(peg$currPos) === 43) {
            s1 = peg$c131;
            peg$currPos++;
          } else {
            s1 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c132);
            }
          }
        }
        if (s1 === peg$FAILED) {
          s1 = null;
        }
        if (s1 !== peg$FAILED) {
          s2 = [];
          if (peg$c38.test(input.charAt(peg$currPos))) {
            s3 = input.charAt(peg$currPos);
            peg$currPos++;
          } else {
            s3 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c39);
            }
          }
          if (s3 !== peg$FAILED) {
            while (s3 !== peg$FAILED) {
              s2.push(s3);
              if (peg$c38.test(input.charAt(peg$currPos))) {
                s3 = input.charAt(peg$currPos);
                peg$currPos++;
              } else {
                s3 = peg$FAILED;
                if (peg$silentFails === 0) {
                  peg$fail(peg$c39);
                }
              }
            }
          } else {
            s2 = peg$FAILED;
          }
          if (s2 !== peg$FAILED) {
            if (input.charCodeAt(peg$currPos) === 46) {
              s3 = peg$c133;
              peg$currPos++;
            } else {
              s3 = peg$FAILED;
              if (peg$silentFails === 0) {
                peg$fail(peg$c134);
              }
            }
            if (s3 !== peg$FAILED) {
              s4 = [];
              if (peg$c38.test(input.charAt(peg$currPos))) {
                s5 = input.charAt(peg$currPos);
                peg$currPos++;
              } else {
                s5 = peg$FAILED;
                if (peg$silentFails === 0) {
                  peg$fail(peg$c39);
                }
              }
              if (s5 !== peg$FAILED) {
                while (s5 !== peg$FAILED) {
                  s4.push(s5);
                  if (peg$c38.test(input.charAt(peg$currPos))) {
                    s5 = input.charAt(peg$currPos);
                    peg$currPos++;
                  } else {
                    s5 = peg$FAILED;
                    if (peg$silentFails === 0) {
                      peg$fail(peg$c39);
                    }
                  }
                }
              } else {
                s4 = peg$FAILED;
              }
              if (s4 !== peg$FAILED) {
                peg$savedPos = s0;
                s1 = peg$c135(s1, s2, s4);
                s0 = s1;
              } else {
                peg$currPos = s0;
                s0 = peg$FAILED;
              }
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        if (s0 === peg$FAILED) {
          s0 = peg$currPos;
          if (input.charCodeAt(peg$currPos) === 45) {
            s1 = peg$c129;
            peg$currPos++;
          } else {
            s1 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c130);
            }
          }
          if (s1 === peg$FAILED) {
            if (input.charCodeAt(peg$currPos) === 43) {
              s1 = peg$c131;
              peg$currPos++;
            } else {
              s1 = peg$FAILED;
              if (peg$silentFails === 0) {
                peg$fail(peg$c132);
              }
            }
          }
          if (s1 === peg$FAILED) {
            s1 = null;
          }
          if (s1 !== peg$FAILED) {
            s2 = [];
            if (peg$c38.test(input.charAt(peg$currPos))) {
              s3 = input.charAt(peg$currPos);
              peg$currPos++;
            } else {
              s3 = peg$FAILED;
              if (peg$silentFails === 0) {
                peg$fail(peg$c39);
              }
            }
            if (s3 !== peg$FAILED) {
              while (s3 !== peg$FAILED) {
                s2.push(s3);
                if (peg$c38.test(input.charAt(peg$currPos))) {
                  s3 = input.charAt(peg$currPos);
                  peg$currPos++;
                } else {
                  s3 = peg$FAILED;
                  if (peg$silentFails === 0) {
                    peg$fail(peg$c39);
                  }
                }
              }
            } else {
              s2 = peg$FAILED;
            }
            if (s2 !== peg$FAILED) {
              peg$savedPos = s0;
              s1 = peg$c136(s1, s2);
              s0 = s1;
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
          if (s0 === peg$FAILED) {
            s0 = peg$currPos;
            s1 = peg$parseVariable();
            if (s1 !== peg$FAILED) {
              peg$savedPos = s0;
              s1 = peg$c137(s1);
            }
            s0 = s1;
            if (s0 === peg$FAILED) {
              s0 = peg$currPos;
              s1 = peg$parseIdentifier();
              if (s1 !== peg$FAILED) {
                peg$savedPos = s0;
                s1 = peg$c138(s1);
              }
              s0 = s1;
              if (s0 === peg$FAILED) {
                s0 = peg$currPos;
                if (input.charCodeAt(peg$currPos) === 40) {
                  s1 = peg$c24;
                  peg$currPos++;
                } else {
                  s1 = peg$FAILED;
                  if (peg$silentFails === 0) {
                    peg$fail(peg$c25);
                  }
                }
                if (s1 !== peg$FAILED) {
                  s2 = [];
                  s3 = peg$parseS();
                  while (s3 !== peg$FAILED) {
                    s2.push(s3);
                    s3 = peg$parseS();
                  }
                  if (s2 !== peg$FAILED) {
                    s3 = peg$parseArithmeticExpression();
                    if (s3 !== peg$FAILED) {
                      s4 = [];
                      s5 = peg$parseS();
                      while (s5 !== peg$FAILED) {
                        s4.push(s5);
                        s5 = peg$parseS();
                      }
                      if (s4 !== peg$FAILED) {
                        if (input.charCodeAt(peg$currPos) === 41) {
                          s5 = peg$c26;
                          peg$currPos++;
                        } else {
                          s5 = peg$FAILED;
                          if (peg$silentFails === 0) {
                            peg$fail(peg$c27);
                          }
                        }
                        if (s5 !== peg$FAILED) {
                          peg$savedPos = s0;
                          s1 = peg$c139(s3);
                          s0 = s1;
                        } else {
                          peg$currPos = s0;
                          s0 = peg$FAILED;
                        }
                      } else {
                        peg$currPos = s0;
                        s0 = peg$FAILED;
                      }
                    } else {
                      peg$currPos = s0;
                      s0 = peg$FAILED;
                    }
                  } else {
                    peg$currPos = s0;
                    s0 = peg$FAILED;
                  }
                } else {
                  peg$currPos = s0;
                  s0 = peg$FAILED;
                }
              }
            }
          }
        }
        return s0;
      }
      function peg$parseArithmeticTimesExpression() {
        var s0, s1, s2, s3, s4, s5, s6, s7;
        s0 = peg$currPos;
        s1 = peg$parseArithmeticPrimary();
        if (s1 !== peg$FAILED) {
          s2 = [];
          s3 = peg$currPos;
          s4 = [];
          s5 = peg$parseS();
          while (s5 !== peg$FAILED) {
            s4.push(s5);
            s5 = peg$parseS();
          }
          if (s4 !== peg$FAILED) {
            if (input.charCodeAt(peg$currPos) === 42) {
              s5 = peg$c140;
              peg$currPos++;
            } else {
              s5 = peg$FAILED;
              if (peg$silentFails === 0) {
                peg$fail(peg$c141);
              }
            }
            if (s5 === peg$FAILED) {
              if (input.charCodeAt(peg$currPos) === 47) {
                s5 = peg$c142;
                peg$currPos++;
              } else {
                s5 = peg$FAILED;
                if (peg$silentFails === 0) {
                  peg$fail(peg$c143);
                }
              }
            }
            if (s5 !== peg$FAILED) {
              s6 = [];
              s7 = peg$parseS();
              while (s7 !== peg$FAILED) {
                s6.push(s7);
                s7 = peg$parseS();
              }
              if (s6 !== peg$FAILED) {
                s7 = peg$parseArithmeticPrimary();
                if (s7 !== peg$FAILED) {
                  peg$savedPos = s3;
                  s4 = peg$c144(s1, s5, s7);
                  s3 = s4;
                } else {
                  peg$currPos = s3;
                  s3 = peg$FAILED;
                }
              } else {
                peg$currPos = s3;
                s3 = peg$FAILED;
              }
            } else {
              peg$currPos = s3;
              s3 = peg$FAILED;
            }
          } else {
            peg$currPos = s3;
            s3 = peg$FAILED;
          }
          while (s3 !== peg$FAILED) {
            s2.push(s3);
            s3 = peg$currPos;
            s4 = [];
            s5 = peg$parseS();
            while (s5 !== peg$FAILED) {
              s4.push(s5);
              s5 = peg$parseS();
            }
            if (s4 !== peg$FAILED) {
              if (input.charCodeAt(peg$currPos) === 42) {
                s5 = peg$c140;
                peg$currPos++;
              } else {
                s5 = peg$FAILED;
                if (peg$silentFails === 0) {
                  peg$fail(peg$c141);
                }
              }
              if (s5 === peg$FAILED) {
                if (input.charCodeAt(peg$currPos) === 47) {
                  s5 = peg$c142;
                  peg$currPos++;
                } else {
                  s5 = peg$FAILED;
                  if (peg$silentFails === 0) {
                    peg$fail(peg$c143);
                  }
                }
              }
              if (s5 !== peg$FAILED) {
                s6 = [];
                s7 = peg$parseS();
                while (s7 !== peg$FAILED) {
                  s6.push(s7);
                  s7 = peg$parseS();
                }
                if (s6 !== peg$FAILED) {
                  s7 = peg$parseArithmeticPrimary();
                  if (s7 !== peg$FAILED) {
                    peg$savedPos = s3;
                    s4 = peg$c144(s1, s5, s7);
                    s3 = s4;
                  } else {
                    peg$currPos = s3;
                    s3 = peg$FAILED;
                  }
                } else {
                  peg$currPos = s3;
                  s3 = peg$FAILED;
                }
              } else {
                peg$currPos = s3;
                s3 = peg$FAILED;
              }
            } else {
              peg$currPos = s3;
              s3 = peg$FAILED;
            }
          }
          if (s2 !== peg$FAILED) {
            peg$savedPos = s0;
            s1 = peg$c145(s1, s2);
            s0 = s1;
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        return s0;
      }
      function peg$parseArithmeticExpression() {
        var s0, s1, s2, s3, s4, s5, s6, s7;
        s0 = peg$currPos;
        s1 = peg$parseArithmeticTimesExpression();
        if (s1 !== peg$FAILED) {
          s2 = [];
          s3 = peg$currPos;
          s4 = [];
          s5 = peg$parseS();
          while (s5 !== peg$FAILED) {
            s4.push(s5);
            s5 = peg$parseS();
          }
          if (s4 !== peg$FAILED) {
            if (input.charCodeAt(peg$currPos) === 43) {
              s5 = peg$c131;
              peg$currPos++;
            } else {
              s5 = peg$FAILED;
              if (peg$silentFails === 0) {
                peg$fail(peg$c132);
              }
            }
            if (s5 === peg$FAILED) {
              if (input.charCodeAt(peg$currPos) === 45) {
                s5 = peg$c129;
                peg$currPos++;
              } else {
                s5 = peg$FAILED;
                if (peg$silentFails === 0) {
                  peg$fail(peg$c130);
                }
              }
            }
            if (s5 !== peg$FAILED) {
              s6 = [];
              s7 = peg$parseS();
              while (s7 !== peg$FAILED) {
                s6.push(s7);
                s7 = peg$parseS();
              }
              if (s6 !== peg$FAILED) {
                s7 = peg$parseArithmeticTimesExpression();
                if (s7 !== peg$FAILED) {
                  peg$savedPos = s3;
                  s4 = peg$c146(s1, s5, s7);
                  s3 = s4;
                } else {
                  peg$currPos = s3;
                  s3 = peg$FAILED;
                }
              } else {
                peg$currPos = s3;
                s3 = peg$FAILED;
              }
            } else {
              peg$currPos = s3;
              s3 = peg$FAILED;
            }
          } else {
            peg$currPos = s3;
            s3 = peg$FAILED;
          }
          while (s3 !== peg$FAILED) {
            s2.push(s3);
            s3 = peg$currPos;
            s4 = [];
            s5 = peg$parseS();
            while (s5 !== peg$FAILED) {
              s4.push(s5);
              s5 = peg$parseS();
            }
            if (s4 !== peg$FAILED) {
              if (input.charCodeAt(peg$currPos) === 43) {
                s5 = peg$c131;
                peg$currPos++;
              } else {
                s5 = peg$FAILED;
                if (peg$silentFails === 0) {
                  peg$fail(peg$c132);
                }
              }
              if (s5 === peg$FAILED) {
                if (input.charCodeAt(peg$currPos) === 45) {
                  s5 = peg$c129;
                  peg$currPos++;
                } else {
                  s5 = peg$FAILED;
                  if (peg$silentFails === 0) {
                    peg$fail(peg$c130);
                  }
                }
              }
              if (s5 !== peg$FAILED) {
                s6 = [];
                s7 = peg$parseS();
                while (s7 !== peg$FAILED) {
                  s6.push(s7);
                  s7 = peg$parseS();
                }
                if (s6 !== peg$FAILED) {
                  s7 = peg$parseArithmeticTimesExpression();
                  if (s7 !== peg$FAILED) {
                    peg$savedPos = s3;
                    s4 = peg$c146(s1, s5, s7);
                    s3 = s4;
                  } else {
                    peg$currPos = s3;
                    s3 = peg$FAILED;
                  }
                } else {
                  peg$currPos = s3;
                  s3 = peg$FAILED;
                }
              } else {
                peg$currPos = s3;
                s3 = peg$FAILED;
              }
            } else {
              peg$currPos = s3;
              s3 = peg$FAILED;
            }
          }
          if (s2 !== peg$FAILED) {
            peg$savedPos = s0;
            s1 = peg$c145(s1, s2);
            s0 = s1;
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        return s0;
      }
      function peg$parseArithmetic() {
        var s0, s1, s2, s3, s4, s5;
        s0 = peg$currPos;
        if (input.substr(peg$currPos, 3) === peg$c147) {
          s1 = peg$c147;
          peg$currPos += 3;
        } else {
          s1 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c148);
          }
        }
        if (s1 !== peg$FAILED) {
          s2 = [];
          s3 = peg$parseS();
          while (s3 !== peg$FAILED) {
            s2.push(s3);
            s3 = peg$parseS();
          }
          if (s2 !== peg$FAILED) {
            s3 = peg$parseArithmeticExpression();
            if (s3 !== peg$FAILED) {
              s4 = [];
              s5 = peg$parseS();
              while (s5 !== peg$FAILED) {
                s4.push(s5);
                s5 = peg$parseS();
              }
              if (s4 !== peg$FAILED) {
                if (input.substr(peg$currPos, 2) === peg$c149) {
                  s5 = peg$c149;
                  peg$currPos += 2;
                } else {
                  s5 = peg$FAILED;
                  if (peg$silentFails === 0) {
                    peg$fail(peg$c150);
                  }
                }
                if (s5 !== peg$FAILED) {
                  peg$savedPos = s0;
                  s1 = peg$c151(s3);
                  s0 = s1;
                } else {
                  peg$currPos = s0;
                  s0 = peg$FAILED;
                }
              } else {
                peg$currPos = s0;
                s0 = peg$FAILED;
              }
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        return s0;
      }
      function peg$parseSubshell() {
        var s0, s1, s2, s3;
        s0 = peg$currPos;
        if (input.substr(peg$currPos, 2) === peg$c152) {
          s1 = peg$c152;
          peg$currPos += 2;
        } else {
          s1 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c153);
          }
        }
        if (s1 !== peg$FAILED) {
          s2 = peg$parseShellLine();
          if (s2 !== peg$FAILED) {
            if (input.charCodeAt(peg$currPos) === 41) {
              s3 = peg$c26;
              peg$currPos++;
            } else {
              s3 = peg$FAILED;
              if (peg$silentFails === 0) {
                peg$fail(peg$c27);
              }
            }
            if (s3 !== peg$FAILED) {
              peg$savedPos = s0;
              s1 = peg$c154(s2);
              s0 = s1;
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        return s0;
      }
      function peg$parseVariable() {
        var s0, s1, s2, s3, s4, s5;
        s0 = peg$currPos;
        if (input.substr(peg$currPos, 2) === peg$c155) {
          s1 = peg$c155;
          peg$currPos += 2;
        } else {
          s1 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c156);
          }
        }
        if (s1 !== peg$FAILED) {
          s2 = peg$parseIdentifier();
          if (s2 !== peg$FAILED) {
            if (input.substr(peg$currPos, 2) === peg$c157) {
              s3 = peg$c157;
              peg$currPos += 2;
            } else {
              s3 = peg$FAILED;
              if (peg$silentFails === 0) {
                peg$fail(peg$c158);
              }
            }
            if (s3 !== peg$FAILED) {
              s4 = peg$parseCommandString();
              if (s4 !== peg$FAILED) {
                if (input.charCodeAt(peg$currPos) === 125) {
                  s5 = peg$c31;
                  peg$currPos++;
                } else {
                  s5 = peg$FAILED;
                  if (peg$silentFails === 0) {
                    peg$fail(peg$c32);
                  }
                }
                if (s5 !== peg$FAILED) {
                  peg$savedPos = s0;
                  s1 = peg$c159(s2, s4);
                  s0 = s1;
                } else {
                  peg$currPos = s0;
                  s0 = peg$FAILED;
                }
              } else {
                peg$currPos = s0;
                s0 = peg$FAILED;
              }
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        if (s0 === peg$FAILED) {
          s0 = peg$currPos;
          if (input.substr(peg$currPos, 2) === peg$c155) {
            s1 = peg$c155;
            peg$currPos += 2;
          } else {
            s1 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c156);
            }
          }
          if (s1 !== peg$FAILED) {
            s2 = peg$parseIdentifier();
            if (s2 !== peg$FAILED) {
              if (input.substr(peg$currPos, 3) === peg$c160) {
                s3 = peg$c160;
                peg$currPos += 3;
              } else {
                s3 = peg$FAILED;
                if (peg$silentFails === 0) {
                  peg$fail(peg$c161);
                }
              }
              if (s3 !== peg$FAILED) {
                peg$savedPos = s0;
                s1 = peg$c162(s2);
                s0 = s1;
              } else {
                peg$currPos = s0;
                s0 = peg$FAILED;
              }
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
          if (s0 === peg$FAILED) {
            s0 = peg$currPos;
            if (input.substr(peg$currPos, 2) === peg$c155) {
              s1 = peg$c155;
              peg$currPos += 2;
            } else {
              s1 = peg$FAILED;
              if (peg$silentFails === 0) {
                peg$fail(peg$c156);
              }
            }
            if (s1 !== peg$FAILED) {
              s2 = peg$parseIdentifier();
              if (s2 !== peg$FAILED) {
                if (input.substr(peg$currPos, 2) === peg$c163) {
                  s3 = peg$c163;
                  peg$currPos += 2;
                } else {
                  s3 = peg$FAILED;
                  if (peg$silentFails === 0) {
                    peg$fail(peg$c164);
                  }
                }
                if (s3 !== peg$FAILED) {
                  s4 = peg$parseCommandString();
                  if (s4 !== peg$FAILED) {
                    if (input.charCodeAt(peg$currPos) === 125) {
                      s5 = peg$c31;
                      peg$currPos++;
                    } else {
                      s5 = peg$FAILED;
                      if (peg$silentFails === 0) {
                        peg$fail(peg$c32);
                      }
                    }
                    if (s5 !== peg$FAILED) {
                      peg$savedPos = s0;
                      s1 = peg$c165(s2, s4);
                      s0 = s1;
                    } else {
                      peg$currPos = s0;
                      s0 = peg$FAILED;
                    }
                  } else {
                    peg$currPos = s0;
                    s0 = peg$FAILED;
                  }
                } else {
                  peg$currPos = s0;
                  s0 = peg$FAILED;
                }
              } else {
                peg$currPos = s0;
                s0 = peg$FAILED;
              }
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
            if (s0 === peg$FAILED) {
              s0 = peg$currPos;
              if (input.substr(peg$currPos, 2) === peg$c155) {
                s1 = peg$c155;
                peg$currPos += 2;
              } else {
                s1 = peg$FAILED;
                if (peg$silentFails === 0) {
                  peg$fail(peg$c156);
                }
              }
              if (s1 !== peg$FAILED) {
                s2 = peg$parseIdentifier();
                if (s2 !== peg$FAILED) {
                  if (input.substr(peg$currPos, 3) === peg$c166) {
                    s3 = peg$c166;
                    peg$currPos += 3;
                  } else {
                    s3 = peg$FAILED;
                    if (peg$silentFails === 0) {
                      peg$fail(peg$c167);
                    }
                  }
                  if (s3 !== peg$FAILED) {
                    peg$savedPos = s0;
                    s1 = peg$c168(s2);
                    s0 = s1;
                  } else {
                    peg$currPos = s0;
                    s0 = peg$FAILED;
                  }
                } else {
                  peg$currPos = s0;
                  s0 = peg$FAILED;
                }
              } else {
                peg$currPos = s0;
                s0 = peg$FAILED;
              }
              if (s0 === peg$FAILED) {
                s0 = peg$currPos;
                if (input.substr(peg$currPos, 2) === peg$c155) {
                  s1 = peg$c155;
                  peg$currPos += 2;
                } else {
                  s1 = peg$FAILED;
                  if (peg$silentFails === 0) {
                    peg$fail(peg$c156);
                  }
                }
                if (s1 !== peg$FAILED) {
                  s2 = peg$parseIdentifier();
                  if (s2 !== peg$FAILED) {
                    if (input.charCodeAt(peg$currPos) === 125) {
                      s3 = peg$c31;
                      peg$currPos++;
                    } else {
                      s3 = peg$FAILED;
                      if (peg$silentFails === 0) {
                        peg$fail(peg$c32);
                      }
                    }
                    if (s3 !== peg$FAILED) {
                      peg$savedPos = s0;
                      s1 = peg$c169(s2);
                      s0 = s1;
                    } else {
                      peg$currPos = s0;
                      s0 = peg$FAILED;
                    }
                  } else {
                    peg$currPos = s0;
                    s0 = peg$FAILED;
                  }
                } else {
                  peg$currPos = s0;
                  s0 = peg$FAILED;
                }
                if (s0 === peg$FAILED) {
                  s0 = peg$currPos;
                  if (input.charCodeAt(peg$currPos) === 36) {
                    s1 = peg$c170;
                    peg$currPos++;
                  } else {
                    s1 = peg$FAILED;
                    if (peg$silentFails === 0) {
                      peg$fail(peg$c171);
                    }
                  }
                  if (s1 !== peg$FAILED) {
                    s2 = peg$parseIdentifier();
                    if (s2 !== peg$FAILED) {
                      peg$savedPos = s0;
                      s1 = peg$c169(s2);
                      s0 = s1;
                    } else {
                      peg$currPos = s0;
                      s0 = peg$FAILED;
                    }
                  } else {
                    peg$currPos = s0;
                    s0 = peg$FAILED;
                  }
                }
              }
            }
          }
        }
        return s0;
      }
      function peg$parseGlob() {
        var s0, s1, s2;
        s0 = peg$currPos;
        s1 = peg$parseGlobText();
        if (s1 !== peg$FAILED) {
          peg$savedPos = peg$currPos;
          s2 = peg$c172(s1);
          if (s2) {
            s2 = void 0;
          } else {
            s2 = peg$FAILED;
          }
          if (s2 !== peg$FAILED) {
            peg$savedPos = s0;
            s1 = peg$c173(s1);
            s0 = s1;
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        return s0;
      }
      function peg$parseGlobText() {
        var s0, s1, s2, s3, s4;
        s0 = peg$currPos;
        s1 = [];
        s2 = peg$currPos;
        s3 = peg$currPos;
        peg$silentFails++;
        s4 = peg$parseGlobSpecialShellChars();
        peg$silentFails--;
        if (s4 === peg$FAILED) {
          s3 = void 0;
        } else {
          peg$currPos = s3;
          s3 = peg$FAILED;
        }
        if (s3 !== peg$FAILED) {
          if (input.length > peg$currPos) {
            s4 = input.charAt(peg$currPos);
            peg$currPos++;
          } else {
            s4 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c125);
            }
          }
          if (s4 !== peg$FAILED) {
            peg$savedPos = s2;
            s3 = peg$c86(s4);
            s2 = s3;
          } else {
            peg$currPos = s2;
            s2 = peg$FAILED;
          }
        } else {
          peg$currPos = s2;
          s2 = peg$FAILED;
        }
        if (s2 !== peg$FAILED) {
          while (s2 !== peg$FAILED) {
            s1.push(s2);
            s2 = peg$currPos;
            s3 = peg$currPos;
            peg$silentFails++;
            s4 = peg$parseGlobSpecialShellChars();
            peg$silentFails--;
            if (s4 === peg$FAILED) {
              s3 = void 0;
            } else {
              peg$currPos = s3;
              s3 = peg$FAILED;
            }
            if (s3 !== peg$FAILED) {
              if (input.length > peg$currPos) {
                s4 = input.charAt(peg$currPos);
                peg$currPos++;
              } else {
                s4 = peg$FAILED;
                if (peg$silentFails === 0) {
                  peg$fail(peg$c125);
                }
              }
              if (s4 !== peg$FAILED) {
                peg$savedPos = s2;
                s3 = peg$c86(s4);
                s2 = s3;
              } else {
                peg$currPos = s2;
                s2 = peg$FAILED;
              }
            } else {
              peg$currPos = s2;
              s2 = peg$FAILED;
            }
          }
        } else {
          s1 = peg$FAILED;
        }
        if (s1 !== peg$FAILED) {
          peg$savedPos = s0;
          s1 = peg$c76(s1);
        }
        s0 = s1;
        return s0;
      }
      function peg$parseEnvVariable() {
        var s0, s1, s2;
        s0 = peg$currPos;
        s1 = [];
        if (peg$c174.test(input.charAt(peg$currPos))) {
          s2 = input.charAt(peg$currPos);
          peg$currPos++;
        } else {
          s2 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c175);
          }
        }
        if (s2 !== peg$FAILED) {
          while (s2 !== peg$FAILED) {
            s1.push(s2);
            if (peg$c174.test(input.charAt(peg$currPos))) {
              s2 = input.charAt(peg$currPos);
              peg$currPos++;
            } else {
              s2 = peg$FAILED;
              if (peg$silentFails === 0) {
                peg$fail(peg$c175);
              }
            }
          }
        } else {
          s1 = peg$FAILED;
        }
        if (s1 !== peg$FAILED) {
          peg$savedPos = s0;
          s1 = peg$c176();
        }
        s0 = s1;
        return s0;
      }
      function peg$parseIdentifier() {
        var s0, s1, s2;
        s0 = peg$currPos;
        s1 = [];
        if (peg$c177.test(input.charAt(peg$currPos))) {
          s2 = input.charAt(peg$currPos);
          peg$currPos++;
        } else {
          s2 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c178);
          }
        }
        if (s2 !== peg$FAILED) {
          while (s2 !== peg$FAILED) {
            s1.push(s2);
            if (peg$c177.test(input.charAt(peg$currPos))) {
              s2 = input.charAt(peg$currPos);
              peg$currPos++;
            } else {
              s2 = peg$FAILED;
              if (peg$silentFails === 0) {
                peg$fail(peg$c178);
              }
            }
          }
        } else {
          s1 = peg$FAILED;
        }
        if (s1 !== peg$FAILED) {
          peg$savedPos = s0;
          s1 = peg$c176();
        }
        s0 = s1;
        return s0;
      }
      function peg$parseSpecialShellChars() {
        var s0;
        if (peg$c179.test(input.charAt(peg$currPos))) {
          s0 = input.charAt(peg$currPos);
          peg$currPos++;
        } else {
          s0 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c180);
          }
        }
        return s0;
      }
      function peg$parseGlobSpecialShellChars() {
        var s0;
        if (peg$c181.test(input.charAt(peg$currPos))) {
          s0 = input.charAt(peg$currPos);
          peg$currPos++;
        } else {
          s0 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c182);
          }
        }
        return s0;
      }
      function peg$parseS() {
        var s0, s1;
        s0 = [];
        if (peg$c183.test(input.charAt(peg$currPos))) {
          s1 = input.charAt(peg$currPos);
          peg$currPos++;
        } else {
          s1 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c184);
          }
        }
        if (s1 !== peg$FAILED) {
          while (s1 !== peg$FAILED) {
            s0.push(s1);
            if (peg$c183.test(input.charAt(peg$currPos))) {
              s1 = input.charAt(peg$currPos);
              peg$currPos++;
            } else {
              s1 = peg$FAILED;
              if (peg$silentFails === 0) {
                peg$fail(peg$c184);
              }
            }
          }
        } else {
          s0 = peg$FAILED;
        }
        return s0;
      }
      peg$result = peg$startRuleFunction();
      if (peg$result !== peg$FAILED && peg$currPos === input.length) {
        return peg$result;
      } else {
        if (peg$result !== peg$FAILED && peg$currPos < input.length) {
          peg$fail(peg$endExpectation());
        }
        throw peg$buildStructuredError(
          peg$maxFailExpected,
          peg$maxFailPos < input.length ? input.charAt(peg$maxFailPos) : null,
          peg$maxFailPos < input.length ? peg$computeLocation(peg$maxFailPos, peg$maxFailPos + 1) : peg$computeLocation(peg$maxFailPos, peg$maxFailPos)
        );
      }
    }
    module2.exports = {
      SyntaxError: peg$SyntaxError,
      parse: peg$parse
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/parsers/3.0.3/256d7e0f058743ef9e1fa29a3e732a48a8e23e7bf0a89171d56f1a19aa7e2f76/node_modules/@yarnpkg/parsers/lib/shell.js
var require_shell2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/parsers/3.0.3/256d7e0f058743ef9e1fa29a3e732a48a8e23e7bf0a89171d56f1a19aa7e2f76/node_modules/@yarnpkg/parsers/lib/shell.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.parseShell = parseShell;
    exports2.stringifyShellLine = stringifyShellLine;
    exports2.stringifyShell = stringifyShellLine;
    exports2.stringifyCommandLine = stringifyCommandLine;
    exports2.stringifyCommandLineThen = stringifyCommandLineThen;
    exports2.stringifyCommandChain = stringifyCommandChain;
    exports2.stringifyCommandChainThen = stringifyCommandChainThen;
    exports2.stringifyCommand = stringifyCommand;
    exports2.stringifyEnvSegment = stringifyEnvSegment;
    exports2.stringifyArgument = stringifyArgument;
    exports2.stringifyRedirectArgument = stringifyRedirectArgument;
    exports2.stringifyValueArgument = stringifyValueArgument;
    exports2.stringifyArgumentSegment = stringifyArgumentSegment;
    exports2.stringifyArithmeticExpression = stringifyArithmeticExpression;
    exports2.stringifyShellLine = stringifyShellLine;
    exports2.stringifyShell = stringifyShellLine;
    var shell_1 = require_shell();
    function parseShell(source, options = { isGlobPattern: () => false }) {
      try {
        return (0, shell_1.parse)(source, options);
      } catch (error) {
        if (error.location)
          error.message = error.message.replace(/(\.)?$/, ` (line ${error.location.start.line}, column ${error.location.start.column})$1`);
        throw error;
      }
    }
    function stringifyShellLine(shellLine, { endSemicolon = false } = {}) {
      return shellLine.map(({ command, type: type4 }, index) => `${stringifyCommandLine(command)}${type4 === `;` ? index !== shellLine.length - 1 || endSemicolon ? `;` : `` : ` &`}`).join(` `);
    }
    function stringifyCommandLine(commandLine) {
      return `${stringifyCommandChain(commandLine.chain)}${commandLine.then ? ` ${stringifyCommandLineThen(commandLine.then)}` : ``}`;
    }
    function stringifyCommandLineThen(commandLineThen) {
      return `${commandLineThen.type} ${stringifyCommandLine(commandLineThen.line)}`;
    }
    function stringifyCommandChain(commandChain) {
      return `${stringifyCommand(commandChain)}${commandChain.then ? ` ${stringifyCommandChainThen(commandChain.then)}` : ``}`;
    }
    function stringifyCommandChainThen(commandChainThen) {
      return `${commandChainThen.type} ${stringifyCommandChain(commandChainThen.chain)}`;
    }
    function stringifyCommand(command) {
      switch (command.type) {
        case `command`:
          return `${command.envs.length > 0 ? `${command.envs.map((env3) => stringifyEnvSegment(env3)).join(` `)} ` : ``}${command.args.map((argument) => stringifyArgument(argument)).join(` `)}`;
        case `subshell`:
          return `(${stringifyShellLine(command.subshell)})${command.args.length > 0 ? ` ${command.args.map((argument) => stringifyRedirectArgument(argument)).join(` `)}` : ``}`;
        case `group`:
          return `{ ${stringifyShellLine(command.group, {
            /* Bash compat */
            endSemicolon: true
          })} }${command.args.length > 0 ? ` ${command.args.map((argument) => stringifyRedirectArgument(argument)).join(` `)}` : ``}`;
        case `envs`:
          return command.envs.map((env3) => stringifyEnvSegment(env3)).join(` `);
        default:
          throw new Error(`Unsupported command type:  "${command.type}"`);
      }
    }
    function stringifyEnvSegment(envSegment) {
      return `${envSegment.name}=${envSegment.args[0] ? stringifyValueArgument(envSegment.args[0]) : ``}`;
    }
    function stringifyArgument(argument) {
      switch (argument.type) {
        case `redirection`:
          return stringifyRedirectArgument(argument);
        case `argument`:
          return stringifyValueArgument(argument);
        default:
          throw new Error(`Unsupported argument type: "${argument.type}"`);
      }
    }
    function stringifyRedirectArgument(argument) {
      return `${argument.subtype} ${argument.args.map((argument2) => stringifyValueArgument(argument2)).join(` `)}`;
    }
    function stringifyValueArgument(argument) {
      return argument.segments.map((segment) => stringifyArgumentSegment(segment)).join(``);
    }
    var ESCAPED_CONTROL_CHARS = /* @__PURE__ */ new Map([
      [`\f`, `\\f`],
      [`
`, `\\n`],
      [`\r`, `\\r`],
      [`	`, `\\t`],
      [`\v`, `\\v`],
      [`\0`, `\\0`]
    ]);
    var ESCAPED_DBL_CHARS = new Map([
      [`\\`, `\\\\`],
      [`$`, `\\$`],
      [`"`, `\\"`],
      ...Array.from(ESCAPED_CONTROL_CHARS, ([c3, replacement]) => {
        return [c3, `"$'${replacement}'"`];
      })
    ]);
    var getEscapedControlChar = (c3) => {
      return ESCAPED_CONTROL_CHARS.get(c3) ?? `\\x${c3.charCodeAt(0).toString(16).padStart(2, `0`)}`;
    };
    var getEscapedDblChar = (match) => {
      return ESCAPED_DBL_CHARS.get(match) ?? `"$'${getEscapedControlChar(match)}'"`;
    };
    function stringifyArgumentSegment(argumentSegment) {
      const doubleQuoteIfRequested = (string, quote2) => quote2 ? `"${string}"` : string;
      const quoteIfNeeded = (text) => {
        if (text === ``)
          return `''`;
        if (!text.match(/[()}<>$|&;"'\n\t ]/))
          return text;
        if (!text.match(/['\t\p{C}]/u))
          return `'${text}'`;
        if (!text.match(/'/)) {
          return `$'${text.replace(/[\t\p{C}]/u, getEscapedControlChar)}'`;
        } else {
          return `"${text.replace(/["$\t\p{C}]/u, getEscapedDblChar)}"`;
        }
      };
      switch (argumentSegment.type) {
        case `text`:
          return quoteIfNeeded(argumentSegment.text);
        case `glob`:
          return argumentSegment.pattern;
        case `shell`:
          return doubleQuoteIfRequested(`$(${stringifyShellLine(argumentSegment.shell)})`, argumentSegment.quoted);
        case `variable`:
          return doubleQuoteIfRequested(typeof argumentSegment.defaultValue === `undefined` ? typeof argumentSegment.alternativeValue === `undefined` ? `\${${argumentSegment.name}}` : argumentSegment.alternativeValue.length === 0 ? `\${${argumentSegment.name}:+}` : `\${${argumentSegment.name}:+${argumentSegment.alternativeValue.map((argument) => stringifyValueArgument(argument)).join(` `)}}` : argumentSegment.defaultValue.length === 0 ? `\${${argumentSegment.name}:-}` : `\${${argumentSegment.name}:-${argumentSegment.defaultValue.map((argument) => stringifyValueArgument(argument)).join(` `)}}`, argumentSegment.quoted);
        case `arithmetic`:
          return `$(( ${stringifyArithmeticExpression(argumentSegment.arithmetic)} ))`;
        default:
          throw new Error(`Unsupported argument segment type: "${argumentSegment.type}"`);
      }
    }
    function stringifyArithmeticExpression(argument) {
      const getOperator = (type4) => {
        switch (type4) {
          case `addition`:
            return `+`;
          case `subtraction`:
            return `-`;
          case `multiplication`:
            return `*`;
          case `division`:
            return `/`;
          default:
            throw new Error(`Can't extract operator from arithmetic expression of type "${type4}"`);
        }
      };
      const parenthesizeIfRequested = (string, parenthesize) => parenthesize ? `( ${string} )` : string;
      const stringifyAndParenthesizeIfNeeded = (expression) => (
        // Right now we parenthesize all arithmetic operator expressions because it's easier
        parenthesizeIfRequested(stringifyArithmeticExpression(expression), ![`number`, `variable`].includes(expression.type))
      );
      switch (argument.type) {
        case `number`:
          return String(argument.value);
        case `variable`:
          return argument.name;
        default:
          return `${stringifyAndParenthesizeIfNeeded(argument.left)} ${getOperator(argument.type)} ${stringifyAndParenthesizeIfNeeded(argument.right)}`;
      }
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/parsers/3.0.3/256d7e0f058743ef9e1fa29a3e732a48a8e23e7bf0a89171d56f1a19aa7e2f76/node_modules/@yarnpkg/parsers/lib/grammars/resolution.js
var require_resolution = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/parsers/3.0.3/256d7e0f058743ef9e1fa29a3e732a48a8e23e7bf0a89171d56f1a19aa7e2f76/node_modules/@yarnpkg/parsers/lib/grammars/resolution.js"(exports2, module2) {
    "use strict";
    function peg$subclass(child, parent) {
      function ctor() {
        this.constructor = child;
      }
      ctor.prototype = parent.prototype;
      child.prototype = new ctor();
    }
    function peg$SyntaxError(message, expected, found, location) {
      this.message = message;
      this.expected = expected;
      this.found = found;
      this.location = location;
      this.name = "SyntaxError";
      if (typeof Error.captureStackTrace === "function") {
        Error.captureStackTrace(this, peg$SyntaxError);
      }
    }
    peg$subclass(peg$SyntaxError, Error);
    peg$SyntaxError.buildMessage = function(expected, found) {
      var DESCRIBE_EXPECTATION_FNS = {
        literal: function(expectation) {
          return '"' + literalEscape(expectation.text) + '"';
        },
        "class": function(expectation) {
          var escapedParts = "", i2;
          for (i2 = 0; i2 < expectation.parts.length; i2++) {
            escapedParts += expectation.parts[i2] instanceof Array ? classEscape(expectation.parts[i2][0]) + "-" + classEscape(expectation.parts[i2][1]) : classEscape(expectation.parts[i2]);
          }
          return "[" + (expectation.inverted ? "^" : "") + escapedParts + "]";
        },
        any: function(expectation) {
          return "any character";
        },
        end: function(expectation) {
          return "end of input";
        },
        other: function(expectation) {
          return expectation.description;
        }
      };
      function hex(ch) {
        return ch.charCodeAt(0).toString(16).toUpperCase();
      }
      function literalEscape(s) {
        return s.replace(/\\/g, "\\\\").replace(/"/g, '\\"').replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(ch) {
          return "\\x0" + hex(ch);
        }).replace(/[\x10-\x1F\x7F-\x9F]/g, function(ch) {
          return "\\x" + hex(ch);
        });
      }
      function classEscape(s) {
        return s.replace(/\\/g, "\\\\").replace(/\]/g, "\\]").replace(/\^/g, "\\^").replace(/-/g, "\\-").replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(ch) {
          return "\\x0" + hex(ch);
        }).replace(/[\x10-\x1F\x7F-\x9F]/g, function(ch) {
          return "\\x" + hex(ch);
        });
      }
      function describeExpectation(expectation) {
        return DESCRIBE_EXPECTATION_FNS[expectation.type](expectation);
      }
      function describeExpected(expected2) {
        var descriptions = new Array(expected2.length), i2, j2;
        for (i2 = 0; i2 < expected2.length; i2++) {
          descriptions[i2] = describeExpectation(expected2[i2]);
        }
        descriptions.sort();
        if (descriptions.length > 0) {
          for (i2 = 1, j2 = 1; i2 < descriptions.length; i2++) {
            if (descriptions[i2 - 1] !== descriptions[i2]) {
              descriptions[j2] = descriptions[i2];
              j2++;
            }
          }
          descriptions.length = j2;
        }
        switch (descriptions.length) {
          case 1:
            return descriptions[0];
          case 2:
            return descriptions[0] + " or " + descriptions[1];
          default:
            return descriptions.slice(0, -1).join(", ") + ", or " + descriptions[descriptions.length - 1];
        }
      }
      function describeFound(found2) {
        return found2 ? '"' + literalEscape(found2) + '"' : "end of input";
      }
      return "Expected " + describeExpected(expected) + " but " + describeFound(found) + " found.";
    };
    function peg$parse(input, options) {
      options = options !== void 0 ? options : {};
      var peg$FAILED = {}, peg$startRuleFunctions = { resolution: peg$parseresolution }, peg$startRuleFunction = peg$parseresolution, peg$c0 = "/", peg$c1 = peg$literalExpectation("/", false), peg$c2 = function(from5, descriptor) {
        return { from: from5, descriptor };
      }, peg$c3 = function(descriptor) {
        return { descriptor };
      }, peg$c4 = "@", peg$c5 = peg$literalExpectation("@", false), peg$c6 = function(fullName, description) {
        return { fullName, description };
      }, peg$c7 = function(fullName) {
        return { fullName };
      }, peg$c8 = function() {
        return text();
      }, peg$c9 = /^[^\/@]/, peg$c10 = peg$classExpectation(["/", "@"], true, false), peg$c11 = /^[^\/]/, peg$c12 = peg$classExpectation(["/"], true, false), peg$currPos = 0, peg$savedPos = 0, peg$posDetailsCache = [{ line: 1, column: 1 }], peg$maxFailPos = 0, peg$maxFailExpected = [], peg$silentFails = 0, peg$result;
      if ("startRule" in options) {
        if (!(options.startRule in peg$startRuleFunctions)) {
          throw new Error(`Can't start parsing from rule "` + options.startRule + '".');
        }
        peg$startRuleFunction = peg$startRuleFunctions[options.startRule];
      }
      function text() {
        return input.substring(peg$savedPos, peg$currPos);
      }
      function location() {
        return peg$computeLocation(peg$savedPos, peg$currPos);
      }
      function expected(description, location2) {
        location2 = location2 !== void 0 ? location2 : peg$computeLocation(peg$savedPos, peg$currPos);
        throw peg$buildStructuredError(
          [peg$otherExpectation(description)],
          input.substring(peg$savedPos, peg$currPos),
          location2
        );
      }
      function error(message, location2) {
        location2 = location2 !== void 0 ? location2 : peg$computeLocation(peg$savedPos, peg$currPos);
        throw peg$buildSimpleError(message, location2);
      }
      function peg$literalExpectation(text2, ignoreCase) {
        return { type: "literal", text: text2, ignoreCase };
      }
      function peg$classExpectation(parts, inverted, ignoreCase) {
        return { type: "class", parts, inverted, ignoreCase };
      }
      function peg$anyExpectation() {
        return { type: "any" };
      }
      function peg$endExpectation() {
        return { type: "end" };
      }
      function peg$otherExpectation(description) {
        return { type: "other", description };
      }
      function peg$computePosDetails(pos) {
        var details = peg$posDetailsCache[pos], p;
        if (details) {
          return details;
        } else {
          p = pos - 1;
          while (!peg$posDetailsCache[p]) {
            p--;
          }
          details = peg$posDetailsCache[p];
          details = {
            line: details.line,
            column: details.column
          };
          while (p < pos) {
            if (input.charCodeAt(p) === 10) {
              details.line++;
              details.column = 1;
            } else {
              details.column++;
            }
            p++;
          }
          peg$posDetailsCache[pos] = details;
          return details;
        }
      }
      function peg$computeLocation(startPos, endPos) {
        var startPosDetails = peg$computePosDetails(startPos), endPosDetails = peg$computePosDetails(endPos);
        return {
          start: {
            offset: startPos,
            line: startPosDetails.line,
            column: startPosDetails.column
          },
          end: {
            offset: endPos,
            line: endPosDetails.line,
            column: endPosDetails.column
          }
        };
      }
      function peg$fail(expected2) {
        if (peg$currPos < peg$maxFailPos) {
          return;
        }
        if (peg$currPos > peg$maxFailPos) {
          peg$maxFailPos = peg$currPos;
          peg$maxFailExpected = [];
        }
        peg$maxFailExpected.push(expected2);
      }
      function peg$buildSimpleError(message, location2) {
        return new peg$SyntaxError(message, null, null, location2);
      }
      function peg$buildStructuredError(expected2, found, location2) {
        return new peg$SyntaxError(
          peg$SyntaxError.buildMessage(expected2, found),
          expected2,
          found,
          location2
        );
      }
      function peg$parseresolution() {
        var s0, s1, s2, s3;
        s0 = peg$currPos;
        s1 = peg$parsespecifier();
        if (s1 !== peg$FAILED) {
          if (input.charCodeAt(peg$currPos) === 47) {
            s2 = peg$c0;
            peg$currPos++;
          } else {
            s2 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c1);
            }
          }
          if (s2 !== peg$FAILED) {
            s3 = peg$parsespecifier();
            if (s3 !== peg$FAILED) {
              peg$savedPos = s0;
              s1 = peg$c2(s1, s3);
              s0 = s1;
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        if (s0 === peg$FAILED) {
          s0 = peg$currPos;
          s1 = peg$parsespecifier();
          if (s1 !== peg$FAILED) {
            peg$savedPos = s0;
            s1 = peg$c3(s1);
          }
          s0 = s1;
        }
        return s0;
      }
      function peg$parsespecifier() {
        var s0, s1, s2, s3;
        s0 = peg$currPos;
        s1 = peg$parsefullName();
        if (s1 !== peg$FAILED) {
          if (input.charCodeAt(peg$currPos) === 64) {
            s2 = peg$c4;
            peg$currPos++;
          } else {
            s2 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c5);
            }
          }
          if (s2 !== peg$FAILED) {
            s3 = peg$parsedescription();
            if (s3 !== peg$FAILED) {
              peg$savedPos = s0;
              s1 = peg$c6(s1, s3);
              s0 = s1;
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        if (s0 === peg$FAILED) {
          s0 = peg$currPos;
          s1 = peg$parsefullName();
          if (s1 !== peg$FAILED) {
            peg$savedPos = s0;
            s1 = peg$c7(s1);
          }
          s0 = s1;
        }
        return s0;
      }
      function peg$parsefullName() {
        var s0, s1, s2, s3, s4;
        s0 = peg$currPos;
        if (input.charCodeAt(peg$currPos) === 64) {
          s1 = peg$c4;
          peg$currPos++;
        } else {
          s1 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c5);
          }
        }
        if (s1 !== peg$FAILED) {
          s2 = peg$parseident();
          if (s2 !== peg$FAILED) {
            if (input.charCodeAt(peg$currPos) === 47) {
              s3 = peg$c0;
              peg$currPos++;
            } else {
              s3 = peg$FAILED;
              if (peg$silentFails === 0) {
                peg$fail(peg$c1);
              }
            }
            if (s3 !== peg$FAILED) {
              s4 = peg$parseident();
              if (s4 !== peg$FAILED) {
                peg$savedPos = s0;
                s1 = peg$c8();
                s0 = s1;
              } else {
                peg$currPos = s0;
                s0 = peg$FAILED;
              }
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        if (s0 === peg$FAILED) {
          s0 = peg$currPos;
          s1 = peg$parseident();
          if (s1 !== peg$FAILED) {
            peg$savedPos = s0;
            s1 = peg$c8();
          }
          s0 = s1;
        }
        return s0;
      }
      function peg$parseident() {
        var s0, s1, s2;
        s0 = peg$currPos;
        s1 = [];
        if (peg$c9.test(input.charAt(peg$currPos))) {
          s2 = input.charAt(peg$currPos);
          peg$currPos++;
        } else {
          s2 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c10);
          }
        }
        if (s2 !== peg$FAILED) {
          while (s2 !== peg$FAILED) {
            s1.push(s2);
            if (peg$c9.test(input.charAt(peg$currPos))) {
              s2 = input.charAt(peg$currPos);
              peg$currPos++;
            } else {
              s2 = peg$FAILED;
              if (peg$silentFails === 0) {
                peg$fail(peg$c10);
              }
            }
          }
        } else {
          s1 = peg$FAILED;
        }
        if (s1 !== peg$FAILED) {
          peg$savedPos = s0;
          s1 = peg$c8();
        }
        s0 = s1;
        return s0;
      }
      function peg$parsedescription() {
        var s0, s1, s2;
        s0 = peg$currPos;
        s1 = [];
        if (peg$c11.test(input.charAt(peg$currPos))) {
          s2 = input.charAt(peg$currPos);
          peg$currPos++;
        } else {
          s2 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c12);
          }
        }
        if (s2 !== peg$FAILED) {
          while (s2 !== peg$FAILED) {
            s1.push(s2);
            if (peg$c11.test(input.charAt(peg$currPos))) {
              s2 = input.charAt(peg$currPos);
              peg$currPos++;
            } else {
              s2 = peg$FAILED;
              if (peg$silentFails === 0) {
                peg$fail(peg$c12);
              }
            }
          }
        } else {
          s1 = peg$FAILED;
        }
        if (s1 !== peg$FAILED) {
          peg$savedPos = s0;
          s1 = peg$c8();
        }
        s0 = s1;
        return s0;
      }
      peg$result = peg$startRuleFunction();
      if (peg$result !== peg$FAILED && peg$currPos === input.length) {
        return peg$result;
      } else {
        if (peg$result !== peg$FAILED && peg$currPos < input.length) {
          peg$fail(peg$endExpectation());
        }
        throw peg$buildStructuredError(
          peg$maxFailExpected,
          peg$maxFailPos < input.length ? input.charAt(peg$maxFailPos) : null,
          peg$maxFailPos < input.length ? peg$computeLocation(peg$maxFailPos, peg$maxFailPos + 1) : peg$computeLocation(peg$maxFailPos, peg$maxFailPos)
        );
      }
    }
    module2.exports = {
      SyntaxError: peg$SyntaxError,
      parse: peg$parse
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/parsers/3.0.3/256d7e0f058743ef9e1fa29a3e732a48a8e23e7bf0a89171d56f1a19aa7e2f76/node_modules/@yarnpkg/parsers/lib/resolution.js
var require_resolution2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/parsers/3.0.3/256d7e0f058743ef9e1fa29a3e732a48a8e23e7bf0a89171d56f1a19aa7e2f76/node_modules/@yarnpkg/parsers/lib/resolution.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.parseResolution = parseResolution;
    exports2.stringifyResolution = stringifyResolution;
    var resolution_1 = require_resolution();
    function parseResolution(source) {
      const legacyResolution = source.match(/^\*{1,2}\/(.*)/);
      if (legacyResolution)
        throw new Error(`The override for '${source}' includes a glob pattern. Glob patterns have been removed since their behaviours don't match what you'd expect. Set the override to '${legacyResolution[1]}' instead.`);
      try {
        return (0, resolution_1.parse)(source);
      } catch (error) {
        if (error.location)
          error.message = error.message.replace(/(\.)?$/, ` (line ${error.location.start.line}, column ${error.location.start.column})$1`);
        throw error;
      }
    }
    function stringifyResolution(resolution) {
      let str2 = ``;
      if (resolution.from) {
        str2 += resolution.from.fullName;
        if (resolution.from.description)
          str2 += `@${resolution.from.description}`;
        str2 += `/`;
      }
      str2 += resolution.descriptor.fullName;
      if (resolution.descriptor.description)
        str2 += `@${resolution.descriptor.description}`;
      return str2;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/common.js
var require_common = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/common.js"(exports2, module2) {
    "use strict";
    function isNothing2(subject) {
      return typeof subject === "undefined" || subject === null;
    }
    function isObject4(subject) {
      return typeof subject === "object" && subject !== null;
    }
    function toArray2(sequence) {
      if (Array.isArray(sequence)) return sequence;
      else if (isNothing2(sequence)) return [];
      return [sequence];
    }
    function extend3(target2, source) {
      var index, length, key, sourceKeys;
      if (source) {
        sourceKeys = Object.keys(source);
        for (index = 0, length = sourceKeys.length; index < length; index += 1) {
          key = sourceKeys[index];
          target2[key] = source[key];
        }
      }
      return target2;
    }
    function repeat4(string, count2) {
      var result2 = "", cycle;
      for (cycle = 0; cycle < count2; cycle += 1) {
        result2 += string;
      }
      return result2;
    }
    function isNegativeZero2(number) {
      return number === 0 && Number.NEGATIVE_INFINITY === 1 / number;
    }
    module2.exports.isNothing = isNothing2;
    module2.exports.isObject = isObject4;
    module2.exports.toArray = toArray2;
    module2.exports.repeat = repeat4;
    module2.exports.isNegativeZero = isNegativeZero2;
    module2.exports.extend = extend3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/exception.js
var require_exception = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/exception.js"(exports2, module2) {
    "use strict";
    function YAMLException2(reason, mark) {
      Error.call(this);
      this.name = "YAMLException";
      this.reason = reason;
      this.mark = mark;
      this.message = (this.reason || "(unknown reason)") + (this.mark ? " " + this.mark.toString() : "");
      if (Error.captureStackTrace) {
        Error.captureStackTrace(this, this.constructor);
      } else {
        this.stack = new Error().stack || "";
      }
    }
    YAMLException2.prototype = Object.create(Error.prototype);
    YAMLException2.prototype.constructor = YAMLException2;
    YAMLException2.prototype.toString = function toString4(compact) {
      var result2 = this.name + ": ";
      result2 += this.reason || "(unknown reason)";
      if (!compact && this.mark) {
        result2 += " " + this.mark.toString();
      }
      return result2;
    };
    module2.exports = YAMLException2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/mark.js
var require_mark = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/mark.js"(exports2, module2) {
    "use strict";
    var common3 = require_common();
    function Mark(name, buffer3, position3, line, column) {
      this.name = name;
      this.buffer = buffer3;
      this.position = position3;
      this.line = line;
      this.column = column;
    }
    Mark.prototype.getSnippet = function getSnippet(indent, maxLength) {
      var head2, start, tail2, end, snippet2;
      if (!this.buffer) return null;
      indent = indent || 4;
      maxLength = maxLength || 75;
      head2 = "";
      start = this.position;
      while (start > 0 && "\0\r\n\x85\u2028\u2029".indexOf(this.buffer.charAt(start - 1)) === -1) {
        start -= 1;
        if (this.position - start > maxLength / 2 - 1) {
          head2 = " ... ";
          start += 5;
          break;
        }
      }
      tail2 = "";
      end = this.position;
      while (end < this.buffer.length && "\0\r\n\x85\u2028\u2029".indexOf(this.buffer.charAt(end)) === -1) {
        end += 1;
        if (end - this.position > maxLength / 2 - 1) {
          tail2 = " ... ";
          end -= 5;
          break;
        }
      }
      snippet2 = this.buffer.slice(start, end);
      return common3.repeat(" ", indent) + head2 + snippet2 + tail2 + "\n" + common3.repeat(" ", indent + this.position - start + head2.length) + "^";
    };
    Mark.prototype.toString = function toString4(compact) {
      var snippet2, where = "";
      if (this.name) {
        where += 'in "' + this.name + '" ';
      }
      where += "at line " + (this.line + 1) + ", column " + (this.column + 1);
      if (!compact) {
        snippet2 = this.getSnippet();
        if (snippet2) {
          where += ":\n" + snippet2;
        }
      }
      return where;
    };
    module2.exports = Mark;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/type.js
var require_type = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/type.js"(exports2, module2) {
    "use strict";
    var YAMLException2 = require_exception();
    var TYPE_CONSTRUCTOR_OPTIONS2 = [
      "kind",
      "resolve",
      "construct",
      "instanceOf",
      "predicate",
      "represent",
      "defaultStyle",
      "styleAliases"
    ];
    var YAML_NODE_KINDS2 = [
      "scalar",
      "sequence",
      "mapping"
    ];
    function compileStyleAliases2(map26) {
      var result2 = {};
      if (map26 !== null) {
        Object.keys(map26).forEach(function(style) {
          map26[style].forEach(function(alias) {
            result2[String(alias)] = style;
          });
        });
      }
      return result2;
    }
    function Type2(tag, options) {
      options = options || {};
      Object.keys(options).forEach(function(name) {
        if (TYPE_CONSTRUCTOR_OPTIONS2.indexOf(name) === -1) {
          throw new YAMLException2('Unknown option "' + name + '" is met in definition of "' + tag + '" YAML type.');
        }
      });
      this.tag = tag;
      this.kind = options["kind"] || null;
      this.resolve = options["resolve"] || function() {
        return true;
      };
      this.construct = options["construct"] || function(data) {
        return data;
      };
      this.instanceOf = options["instanceOf"] || null;
      this.predicate = options["predicate"] || null;
      this.represent = options["represent"] || null;
      this.defaultStyle = options["defaultStyle"] || null;
      this.styleAliases = compileStyleAliases2(options["styleAliases"] || null);
      if (YAML_NODE_KINDS2.indexOf(this.kind) === -1) {
        throw new YAMLException2('Unknown kind "' + this.kind + '" is specified for "' + tag + '" YAML type.');
      }
    }
    module2.exports = Type2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/schema.js
var require_schema = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/schema.js"(exports2, module2) {
    "use strict";
    var common3 = require_common();
    var YAMLException2 = require_exception();
    var Type2 = require_type();
    function compileList2(schema2, name, result2) {
      var exclude = [];
      schema2.include.forEach(function(includedSchema) {
        result2 = compileList2(includedSchema, name, result2);
      });
      schema2[name].forEach(function(currentType) {
        result2.forEach(function(previousType, previousIndex) {
          if (previousType.tag === currentType.tag && previousType.kind === currentType.kind) {
            exclude.push(previousIndex);
          }
        });
        result2.push(currentType);
      });
      return result2.filter(function(type4, index) {
        return exclude.indexOf(index) === -1;
      });
    }
    function compileMap2() {
      var result2 = {
        scalar: {},
        sequence: {},
        mapping: {},
        fallback: {}
      }, index, length;
      function collectType(type4) {
        result2[type4.kind][type4.tag] = result2["fallback"][type4.tag] = type4;
      }
      for (index = 0, length = arguments.length; index < length; index += 1) {
        arguments[index].forEach(collectType);
      }
      return result2;
    }
    function Schema2(definition) {
      this.include = definition.include || [];
      this.implicit = definition.implicit || [];
      this.explicit = definition.explicit || [];
      this.implicit.forEach(function(type4) {
        if (type4.loadKind && type4.loadKind !== "scalar") {
          throw new YAMLException2("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.");
        }
      });
      this.compiledImplicit = compileList2(this, "implicit", []);
      this.compiledExplicit = compileList2(this, "explicit", []);
      this.compiledTypeMap = compileMap2(this.compiledImplicit, this.compiledExplicit);
    }
    Schema2.DEFAULT = null;
    Schema2.create = function createSchema() {
      var schemas, types3;
      switch (arguments.length) {
        case 1:
          schemas = Schema2.DEFAULT;
          types3 = arguments[0];
          break;
        case 2:
          schemas = arguments[0];
          types3 = arguments[1];
          break;
        default:
          throw new YAMLException2("Wrong number of arguments for Schema.create function");
      }
      schemas = common3.toArray(schemas);
      types3 = common3.toArray(types3);
      if (!schemas.every(function(schema2) {
        return schema2 instanceof Schema2;
      })) {
        throw new YAMLException2("Specified list of super schemas (or a single Schema object) contains a non-Schema object.");
      }
      if (!types3.every(function(type4) {
        return type4 instanceof Type2;
      })) {
        throw new YAMLException2("Specified list of YAML types (or a single Type object) contains a non-Type object.");
      }
      return new Schema2({
        include: schemas,
        explicit: types3
      });
    };
    module2.exports = Schema2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/type/str.js
var require_str = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/type/str.js"(exports2, module2) {
    "use strict";
    var Type2 = require_type();
    module2.exports = new Type2("tag:yaml.org,2002:str", {
      kind: "scalar",
      construct: function(data) {
        return data !== null ? data : "";
      }
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/type/seq.js
var require_seq = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/type/seq.js"(exports2, module2) {
    "use strict";
    var Type2 = require_type();
    module2.exports = new Type2("tag:yaml.org,2002:seq", {
      kind: "sequence",
      construct: function(data) {
        return data !== null ? data : [];
      }
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/type/map.js
var require_map = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/type/map.js"(exports2, module2) {
    "use strict";
    var Type2 = require_type();
    module2.exports = new Type2("tag:yaml.org,2002:map", {
      kind: "mapping",
      construct: function(data) {
        return data !== null ? data : {};
      }
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/schema/failsafe.js
var require_failsafe = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/schema/failsafe.js"(exports2, module2) {
    "use strict";
    var Schema2 = require_schema();
    module2.exports = new Schema2({
      explicit: [
        require_str(),
        require_seq(),
        require_map()
      ]
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/type/null.js
var require_null = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/type/null.js"(exports2, module2) {
    "use strict";
    var Type2 = require_type();
    function resolveYamlNull2(data) {
      if (data === null) return true;
      var max3 = data.length;
      return max3 === 1 && data === "~" || max3 === 4 && (data === "null" || data === "Null" || data === "NULL");
    }
    function constructYamlNull2() {
      return null;
    }
    function isNull2(object) {
      return object === null;
    }
    module2.exports = new Type2("tag:yaml.org,2002:null", {
      kind: "scalar",
      resolve: resolveYamlNull2,
      construct: constructYamlNull2,
      predicate: isNull2,
      represent: {
        canonical: function() {
          return "~";
        },
        lowercase: function() {
          return "null";
        },
        uppercase: function() {
          return "NULL";
        },
        camelcase: function() {
          return "Null";
        }
      },
      defaultStyle: "lowercase"
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/type/bool.js
var require_bool = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/type/bool.js"(exports2, module2) {
    "use strict";
    var Type2 = require_type();
    function resolveYamlBoolean2(data) {
      if (data === null) return false;
      var max3 = data.length;
      return max3 === 4 && (data === "true" || data === "True" || data === "TRUE") || max3 === 5 && (data === "false" || data === "False" || data === "FALSE");
    }
    function constructYamlBoolean2(data) {
      return data === "true" || data === "True" || data === "TRUE";
    }
    function isBoolean2(object) {
      return Object.prototype.toString.call(object) === "[object Boolean]";
    }
    module2.exports = new Type2("tag:yaml.org,2002:bool", {
      kind: "scalar",
      resolve: resolveYamlBoolean2,
      construct: constructYamlBoolean2,
      predicate: isBoolean2,
      represent: {
        lowercase: function(object) {
          return object ? "true" : "false";
        },
        uppercase: function(object) {
          return object ? "TRUE" : "FALSE";
        },
        camelcase: function(object) {
          return object ? "True" : "False";
        }
      },
      defaultStyle: "lowercase"
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/type/int.js
var require_int = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/type/int.js"(exports2, module2) {
    "use strict";
    var common3 = require_common();
    var Type2 = require_type();
    function isHexCode2(c3) {
      return 48 <= c3 && c3 <= 57 || 65 <= c3 && c3 <= 70 || 97 <= c3 && c3 <= 102;
    }
    function isOctCode2(c3) {
      return 48 <= c3 && c3 <= 55;
    }
    function isDecCode2(c3) {
      return 48 <= c3 && c3 <= 57;
    }
    function resolveYamlInteger2(data) {
      if (data === null) return false;
      var max3 = data.length, index = 0, hasDigits = false, ch;
      if (!max3) return false;
      ch = data[index];
      if (ch === "-" || ch === "+") {
        ch = data[++index];
      }
      if (ch === "0") {
        if (index + 1 === max3) return true;
        ch = data[++index];
        if (ch === "b") {
          index++;
          for (; index < max3; index++) {
            ch = data[index];
            if (ch === "_") continue;
            if (ch !== "0" && ch !== "1") return false;
            hasDigits = true;
          }
          return hasDigits && ch !== "_";
        }
        if (ch === "x") {
          index++;
          for (; index < max3; index++) {
            ch = data[index];
            if (ch === "_") continue;
            if (!isHexCode2(data.charCodeAt(index))) return false;
            hasDigits = true;
          }
          return hasDigits && ch !== "_";
        }
        for (; index < max3; index++) {
          ch = data[index];
          if (ch === "_") continue;
          if (!isOctCode2(data.charCodeAt(index))) return false;
          hasDigits = true;
        }
        return hasDigits && ch !== "_";
      }
      if (ch === "_") return false;
      for (; index < max3; index++) {
        ch = data[index];
        if (ch === "_") continue;
        if (ch === ":") break;
        if (!isDecCode2(data.charCodeAt(index))) {
          return false;
        }
        hasDigits = true;
      }
      if (!hasDigits || ch === "_") return false;
      if (ch !== ":") return true;
      return /^(:[0-5]?[0-9])+$/.test(data.slice(index));
    }
    function constructYamlInteger2(data) {
      var value = data, sign = 1, ch, base, digits = [];
      if (value.indexOf("_") !== -1) {
        value = value.replace(/_/g, "");
      }
      ch = value[0];
      if (ch === "-" || ch === "+") {
        if (ch === "-") sign = -1;
        value = value.slice(1);
        ch = value[0];
      }
      if (value === "0") return 0;
      if (ch === "0") {
        if (value[1] === "b") return sign * parseInt(value.slice(2), 2);
        if (value[1] === "x") return sign * parseInt(value, 16);
        return sign * parseInt(value, 8);
      }
      if (value.indexOf(":") !== -1) {
        value.split(":").forEach(function(v) {
          digits.unshift(parseInt(v, 10));
        });
        value = 0;
        base = 1;
        digits.forEach(function(d) {
          value += d * base;
          base *= 60;
        });
        return sign * value;
      }
      return sign * parseInt(value, 10);
    }
    function isInteger2(object) {
      return Object.prototype.toString.call(object) === "[object Number]" && (object % 1 === 0 && !common3.isNegativeZero(object));
    }
    module2.exports = new Type2("tag:yaml.org,2002:int", {
      kind: "scalar",
      resolve: resolveYamlInteger2,
      construct: constructYamlInteger2,
      predicate: isInteger2,
      represent: {
        binary: function(obj) {
          return obj >= 0 ? "0b" + obj.toString(2) : "-0b" + obj.toString(2).slice(1);
        },
        octal: function(obj) {
          return obj >= 0 ? "0" + obj.toString(8) : "-0" + obj.toString(8).slice(1);
        },
        decimal: function(obj) {
          return obj.toString(10);
        },
        /* eslint-disable max-len */
        hexadecimal: function(obj) {
          return obj >= 0 ? "0x" + obj.toString(16).toUpperCase() : "-0x" + obj.toString(16).toUpperCase().slice(1);
        }
      },
      defaultStyle: "decimal",
      styleAliases: {
        binary: [2, "bin"],
        octal: [8, "oct"],
        decimal: [10, "dec"],
        hexadecimal: [16, "hex"]
      }
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/type/float.js
var require_float = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/type/float.js"(exports2, module2) {
    "use strict";
    var common3 = require_common();
    var Type2 = require_type();
    var YAML_FLOAT_PATTERN2 = new RegExp(
      // 2.5e4, 2.5 and integers
      "^(?:[-+]?(?:0|[1-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$"
    );
    function resolveYamlFloat2(data) {
      if (data === null) return false;
      if (!YAML_FLOAT_PATTERN2.test(data) || // Quick hack to not allow integers end with `_`
      // Probably should update regexp & check speed
      data[data.length - 1] === "_") {
        return false;
      }
      return true;
    }
    function constructYamlFloat2(data) {
      var value, sign, base, digits;
      value = data.replace(/_/g, "").toLowerCase();
      sign = value[0] === "-" ? -1 : 1;
      digits = [];
      if ("+-".indexOf(value[0]) >= 0) {
        value = value.slice(1);
      }
      if (value === ".inf") {
        return sign === 1 ? Number.POSITIVE_INFINITY : Number.NEGATIVE_INFINITY;
      } else if (value === ".nan") {
        return NaN;
      } else if (value.indexOf(":") >= 0) {
        value.split(":").forEach(function(v) {
          digits.unshift(parseFloat(v, 10));
        });
        value = 0;
        base = 1;
        digits.forEach(function(d) {
          value += d * base;
          base *= 60;
        });
        return sign * value;
      }
      return sign * parseFloat(value, 10);
    }
    var SCIENTIFIC_WITHOUT_DOT2 = /^[-+]?[0-9]+e/;
    function representYamlFloat2(object, style) {
      var res;
      if (isNaN(object)) {
        switch (style) {
          case "lowercase":
            return ".nan";
          case "uppercase":
            return ".NAN";
          case "camelcase":
            return ".NaN";
        }
      } else if (Number.POSITIVE_INFINITY === object) {
        switch (style) {
          case "lowercase":
            return ".inf";
          case "uppercase":
            return ".INF";
          case "camelcase":
            return ".Inf";
        }
      } else if (Number.NEGATIVE_INFINITY === object) {
        switch (style) {
          case "lowercase":
            return "-.inf";
          case "uppercase":
            return "-.INF";
          case "camelcase":
            return "-.Inf";
        }
      } else if (common3.isNegativeZero(object)) {
        return "-0.0";
      }
      res = object.toString(10);
      return SCIENTIFIC_WITHOUT_DOT2.test(res) ? res.replace("e", ".e") : res;
    }
    function isFloat2(object) {
      return Object.prototype.toString.call(object) === "[object Number]" && (object % 1 !== 0 || common3.isNegativeZero(object));
    }
    module2.exports = new Type2("tag:yaml.org,2002:float", {
      kind: "scalar",
      resolve: resolveYamlFloat2,
      construct: constructYamlFloat2,
      predicate: isFloat2,
      represent: representYamlFloat2,
      defaultStyle: "lowercase"
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/schema/json.js
var require_json2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/schema/json.js"(exports2, module2) {
    "use strict";
    var Schema2 = require_schema();
    module2.exports = new Schema2({
      include: [
        require_failsafe()
      ],
      implicit: [
        require_null(),
        require_bool(),
        require_int(),
        require_float()
      ]
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/schema/core.js
var require_core2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/schema/core.js"(exports2, module2) {
    "use strict";
    var Schema2 = require_schema();
    module2.exports = new Schema2({
      include: [
        require_json2()
      ]
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/type/timestamp.js
var require_timestamp = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/type/timestamp.js"(exports2, module2) {
    "use strict";
    var Type2 = require_type();
    var YAML_DATE_REGEXP2 = new RegExp(
      "^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"
    );
    var YAML_TIMESTAMP_REGEXP2 = new RegExp(
      "^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$"
    );
    function resolveYamlTimestamp2(data) {
      if (data === null) return false;
      if (YAML_DATE_REGEXP2.exec(data) !== null) return true;
      if (YAML_TIMESTAMP_REGEXP2.exec(data) !== null) return true;
      return false;
    }
    function constructYamlTimestamp2(data) {
      var match, year, month, day, hour, minute, second, fraction = 0, delta = null, tz_hour, tz_minute, date;
      match = YAML_DATE_REGEXP2.exec(data);
      if (match === null) match = YAML_TIMESTAMP_REGEXP2.exec(data);
      if (match === null) throw new Error("Date resolve error");
      year = +match[1];
      month = +match[2] - 1;
      day = +match[3];
      if (!match[4]) {
        return new Date(Date.UTC(year, month, day));
      }
      hour = +match[4];
      minute = +match[5];
      second = +match[6];
      if (match[7]) {
        fraction = match[7].slice(0, 3);
        while (fraction.length < 3) {
          fraction += "0";
        }
        fraction = +fraction;
      }
      if (match[9]) {
        tz_hour = +match[10];
        tz_minute = +(match[11] || 0);
        delta = (tz_hour * 60 + tz_minute) * 6e4;
        if (match[9] === "-") delta = -delta;
      }
      date = new Date(Date.UTC(year, month, day, hour, minute, second, fraction));
      if (delta) date.setTime(date.getTime() - delta);
      return date;
    }
    function representYamlTimestamp2(object) {
      return object.toISOString();
    }
    module2.exports = new Type2("tag:yaml.org,2002:timestamp", {
      kind: "scalar",
      resolve: resolveYamlTimestamp2,
      construct: constructYamlTimestamp2,
      instanceOf: Date,
      represent: representYamlTimestamp2
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/type/merge.js
var require_merge = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/type/merge.js"(exports2, module2) {
    "use strict";
    var Type2 = require_type();
    function resolveYamlMerge2(data) {
      return data === "<<" || data === null;
    }
    module2.exports = new Type2("tag:yaml.org,2002:merge", {
      kind: "scalar",
      resolve: resolveYamlMerge2
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/type/binary.js
var require_binary = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/type/binary.js"(exports2, module2) {
    "use strict";
    var NodeBuffer;
    try {
      _require = __require;
      NodeBuffer = _require("buffer").Buffer;
    } catch (__) {
    }
    var _require;
    var Type2 = require_type();
    var BASE64_MAP2 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r";
    function resolveYamlBinary2(data) {
      if (data === null) return false;
      var code, idx, bitlen = 0, max3 = data.length, map26 = BASE64_MAP2;
      for (idx = 0; idx < max3; idx++) {
        code = map26.indexOf(data.charAt(idx));
        if (code > 64) continue;
        if (code < 0) return false;
        bitlen += 6;
      }
      return bitlen % 8 === 0;
    }
    function constructYamlBinary2(data) {
      var idx, tailbits, input = data.replace(/[\r\n=]/g, ""), max3 = input.length, map26 = BASE64_MAP2, bits = 0, result2 = [];
      for (idx = 0; idx < max3; idx++) {
        if (idx % 4 === 0 && idx) {
          result2.push(bits >> 16 & 255);
          result2.push(bits >> 8 & 255);
          result2.push(bits & 255);
        }
        bits = bits << 6 | map26.indexOf(input.charAt(idx));
      }
      tailbits = max3 % 4 * 6;
      if (tailbits === 0) {
        result2.push(bits >> 16 & 255);
        result2.push(bits >> 8 & 255);
        result2.push(bits & 255);
      } else if (tailbits === 18) {
        result2.push(bits >> 10 & 255);
        result2.push(bits >> 2 & 255);
      } else if (tailbits === 12) {
        result2.push(bits >> 4 & 255);
      }
      if (NodeBuffer) {
        return NodeBuffer.from ? NodeBuffer.from(result2) : new NodeBuffer(result2);
      }
      return result2;
    }
    function representYamlBinary2(object) {
      var result2 = "", bits = 0, idx, tail2, max3 = object.length, map26 = BASE64_MAP2;
      for (idx = 0; idx < max3; idx++) {
        if (idx % 3 === 0 && idx) {
          result2 += map26[bits >> 18 & 63];
          result2 += map26[bits >> 12 & 63];
          result2 += map26[bits >> 6 & 63];
          result2 += map26[bits & 63];
        }
        bits = (bits << 8) + object[idx];
      }
      tail2 = max3 % 3;
      if (tail2 === 0) {
        result2 += map26[bits >> 18 & 63];
        result2 += map26[bits >> 12 & 63];
        result2 += map26[bits >> 6 & 63];
        result2 += map26[bits & 63];
      } else if (tail2 === 2) {
        result2 += map26[bits >> 10 & 63];
        result2 += map26[bits >> 4 & 63];
        result2 += map26[bits << 2 & 63];
        result2 += map26[64];
      } else if (tail2 === 1) {
        result2 += map26[bits >> 2 & 63];
        result2 += map26[bits << 4 & 63];
        result2 += map26[64];
        result2 += map26[64];
      }
      return result2;
    }
    function isBinary2(object) {
      return NodeBuffer && NodeBuffer.isBuffer(object);
    }
    module2.exports = new Type2("tag:yaml.org,2002:binary", {
      kind: "scalar",
      resolve: resolveYamlBinary2,
      construct: constructYamlBinary2,
      predicate: isBinary2,
      represent: representYamlBinary2
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/type/omap.js
var require_omap = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/type/omap.js"(exports2, module2) {
    "use strict";
    var Type2 = require_type();
    var _hasOwnProperty2 = Object.prototype.hasOwnProperty;
    var _toString3 = Object.prototype.toString;
    function resolveYamlOmap2(data) {
      if (data === null) return true;
      var objectKeys = [], index, length, pair, pairKey, pairHasKey, object = data;
      for (index = 0, length = object.length; index < length; index += 1) {
        pair = object[index];
        pairHasKey = false;
        if (_toString3.call(pair) !== "[object Object]") return false;
        for (pairKey in pair) {
          if (_hasOwnProperty2.call(pair, pairKey)) {
            if (!pairHasKey) pairHasKey = true;
            else return false;
          }
        }
        if (!pairHasKey) return false;
        if (objectKeys.indexOf(pairKey) === -1) objectKeys.push(pairKey);
        else return false;
      }
      return true;
    }
    function constructYamlOmap2(data) {
      return data !== null ? data : [];
    }
    module2.exports = new Type2("tag:yaml.org,2002:omap", {
      kind: "sequence",
      resolve: resolveYamlOmap2,
      construct: constructYamlOmap2
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/type/pairs.js
var require_pairs = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/type/pairs.js"(exports2, module2) {
    "use strict";
    var Type2 = require_type();
    var _toString3 = Object.prototype.toString;
    function resolveYamlPairs2(data) {
      if (data === null) return true;
      var index, length, pair, keys4, result2, object = data;
      result2 = new Array(object.length);
      for (index = 0, length = object.length; index < length; index += 1) {
        pair = object[index];
        if (_toString3.call(pair) !== "[object Object]") return false;
        keys4 = Object.keys(pair);
        if (keys4.length !== 1) return false;
        result2[index] = [keys4[0], pair[keys4[0]]];
      }
      return true;
    }
    function constructYamlPairs2(data) {
      if (data === null) return [];
      var index, length, pair, keys4, result2, object = data;
      result2 = new Array(object.length);
      for (index = 0, length = object.length; index < length; index += 1) {
        pair = object[index];
        keys4 = Object.keys(pair);
        result2[index] = [keys4[0], pair[keys4[0]]];
      }
      return result2;
    }
    module2.exports = new Type2("tag:yaml.org,2002:pairs", {
      kind: "sequence",
      resolve: resolveYamlPairs2,
      construct: constructYamlPairs2
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/type/set.js
var require_set = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/type/set.js"(exports2, module2) {
    "use strict";
    var Type2 = require_type();
    var _hasOwnProperty2 = Object.prototype.hasOwnProperty;
    function resolveYamlSet2(data) {
      if (data === null) return true;
      var key, object = data;
      for (key in object) {
        if (_hasOwnProperty2.call(object, key)) {
          if (object[key] !== null) return false;
        }
      }
      return true;
    }
    function constructYamlSet2(data) {
      return data !== null ? data : {};
    }
    module2.exports = new Type2("tag:yaml.org,2002:set", {
      kind: "mapping",
      resolve: resolveYamlSet2,
      construct: constructYamlSet2
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/schema/default_safe.js
var require_default_safe = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/schema/default_safe.js"(exports2, module2) {
    "use strict";
    var Schema2 = require_schema();
    module2.exports = new Schema2({
      include: [
        require_core2()
      ],
      implicit: [
        require_timestamp(),
        require_merge()
      ],
      explicit: [
        require_binary(),
        require_omap(),
        require_pairs(),
        require_set()
      ]
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/type/js/undefined.js
var require_undefined = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/type/js/undefined.js"(exports2, module2) {
    "use strict";
    var Type2 = require_type();
    function resolveJavascriptUndefined() {
      return true;
    }
    function constructJavascriptUndefined() {
      return void 0;
    }
    function representJavascriptUndefined() {
      return "";
    }
    function isUndefined(object) {
      return typeof object === "undefined";
    }
    module2.exports = new Type2("tag:yaml.org,2002:js/undefined", {
      kind: "scalar",
      resolve: resolveJavascriptUndefined,
      construct: constructJavascriptUndefined,
      predicate: isUndefined,
      represent: representJavascriptUndefined
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/type/js/regexp.js
var require_regexp = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/type/js/regexp.js"(exports2, module2) {
    "use strict";
    var Type2 = require_type();
    function resolveJavascriptRegExp(data) {
      if (data === null) return false;
      if (data.length === 0) return false;
      var regexp = data, tail2 = /\/([gim]*)$/.exec(data), modifiers = "";
      if (regexp[0] === "/") {
        if (tail2) modifiers = tail2[1];
        if (modifiers.length > 3) return false;
        if (regexp[regexp.length - modifiers.length - 1] !== "/") return false;
      }
      return true;
    }
    function constructJavascriptRegExp(data) {
      var regexp = data, tail2 = /\/([gim]*)$/.exec(data), modifiers = "";
      if (regexp[0] === "/") {
        if (tail2) modifiers = tail2[1];
        regexp = regexp.slice(1, regexp.length - modifiers.length - 1);
      }
      return new RegExp(regexp, modifiers);
    }
    function representJavascriptRegExp(object) {
      var result2 = "/" + object.source + "/";
      if (object.global) result2 += "g";
      if (object.multiline) result2 += "m";
      if (object.ignoreCase) result2 += "i";
      return result2;
    }
    function isRegExp(object) {
      return Object.prototype.toString.call(object) === "[object RegExp]";
    }
    module2.exports = new Type2("tag:yaml.org,2002:js/regexp", {
      kind: "scalar",
      resolve: resolveJavascriptRegExp,
      construct: constructJavascriptRegExp,
      predicate: isRegExp,
      represent: representJavascriptRegExp
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/type/js/function.js
var require_function = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/type/js/function.js"(exports2, module2) {
    "use strict";
    var esprima;
    try {
      _require = __require;
      esprima = _require("esprima");
    } catch (_) {
      if (typeof window !== "undefined") esprima = window.esprima;
    }
    var _require;
    var Type2 = require_type();
    function resolveJavascriptFunction(data) {
      if (data === null) return false;
      try {
        var source = "(" + data + ")", ast = esprima.parse(source, { range: true });
        if (ast.type !== "Program" || ast.body.length !== 1 || ast.body[0].type !== "ExpressionStatement" || ast.body[0].expression.type !== "ArrowFunctionExpression" && ast.body[0].expression.type !== "FunctionExpression") {
          return false;
        }
        return true;
      } catch (err) {
        return false;
      }
    }
    function constructJavascriptFunction(data) {
      var source = "(" + data + ")", ast = esprima.parse(source, { range: true }), params = [], body;
      if (ast.type !== "Program" || ast.body.length !== 1 || ast.body[0].type !== "ExpressionStatement" || ast.body[0].expression.type !== "ArrowFunctionExpression" && ast.body[0].expression.type !== "FunctionExpression") {
        throw new Error("Failed to resolve function");
      }
      ast.body[0].expression.params.forEach(function(param) {
        params.push(param.name);
      });
      body = ast.body[0].expression.body.range;
      if (ast.body[0].expression.body.type === "BlockStatement") {
        return new Function(params, source.slice(body[0] + 1, body[1] - 1));
      }
      return new Function(params, "return " + source.slice(body[0], body[1]));
    }
    function representJavascriptFunction(object) {
      return object.toString();
    }
    function isFunction(object) {
      return Object.prototype.toString.call(object) === "[object Function]";
    }
    module2.exports = new Type2("tag:yaml.org,2002:js/function", {
      kind: "scalar",
      resolve: resolveJavascriptFunction,
      construct: constructJavascriptFunction,
      predicate: isFunction,
      represent: representJavascriptFunction
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/schema/default_full.js
var require_default_full = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/schema/default_full.js"(exports2, module2) {
    "use strict";
    var Schema2 = require_schema();
    module2.exports = Schema2.DEFAULT = new Schema2({
      include: [
        require_default_safe()
      ],
      explicit: [
        require_undefined(),
        require_regexp(),
        require_function()
      ]
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/loader.js
var require_loader = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/loader.js"(exports2, module2) {
    "use strict";
    var common3 = require_common();
    var YAMLException2 = require_exception();
    var Mark = require_mark();
    var DEFAULT_SAFE_SCHEMA = require_default_safe();
    var DEFAULT_FULL_SCHEMA = require_default_full();
    var _hasOwnProperty2 = Object.prototype.hasOwnProperty;
    var CONTEXT_FLOW_IN2 = 1;
    var CONTEXT_FLOW_OUT2 = 2;
    var CONTEXT_BLOCK_IN2 = 3;
    var CONTEXT_BLOCK_OUT2 = 4;
    var CHOMPING_CLIP2 = 1;
    var CHOMPING_STRIP2 = 2;
    var CHOMPING_KEEP2 = 3;
    var PATTERN_NON_PRINTABLE2 = /[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/;
    var PATTERN_NON_ASCII_LINE_BREAKS2 = /[\x85\u2028\u2029]/;
    var PATTERN_FLOW_INDICATORS2 = /[,\[\]\{\}]/;
    var PATTERN_TAG_HANDLE2 = /^(?:!|!!|![a-z\-]+!)$/i;
    var PATTERN_TAG_URI2 = /^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;
    function _class2(obj) {
      return Object.prototype.toString.call(obj);
    }
    function is_EOL2(c3) {
      return c3 === 10 || c3 === 13;
    }
    function is_WHITE_SPACE2(c3) {
      return c3 === 9 || c3 === 32;
    }
    function is_WS_OR_EOL2(c3) {
      return c3 === 9 || c3 === 32 || c3 === 10 || c3 === 13;
    }
    function is_FLOW_INDICATOR2(c3) {
      return c3 === 44 || c3 === 91 || c3 === 93 || c3 === 123 || c3 === 125;
    }
    function fromHexCode2(c3) {
      var lc;
      if (48 <= c3 && c3 <= 57) {
        return c3 - 48;
      }
      lc = c3 | 32;
      if (97 <= lc && lc <= 102) {
        return lc - 97 + 10;
      }
      return -1;
    }
    function escapedHexLen2(c3) {
      if (c3 === 120) {
        return 2;
      }
      if (c3 === 117) {
        return 4;
      }
      if (c3 === 85) {
        return 8;
      }
      return 0;
    }
    function fromDecimalCode2(c3) {
      if (48 <= c3 && c3 <= 57) {
        return c3 - 48;
      }
      return -1;
    }
    function simpleEscapeSequence2(c3) {
      return c3 === 48 ? "\0" : c3 === 97 ? "\x07" : c3 === 98 ? "\b" : c3 === 116 ? "	" : c3 === 9 ? "	" : c3 === 110 ? "\n" : c3 === 118 ? "\v" : c3 === 102 ? "\f" : c3 === 114 ? "\r" : c3 === 101 ? "\x1B" : c3 === 32 ? " " : c3 === 34 ? '"' : c3 === 47 ? "/" : c3 === 92 ? "\\" : c3 === 78 ? "\x85" : c3 === 95 ? "\xA0" : c3 === 76 ? "\u2028" : c3 === 80 ? "\u2029" : "";
    }
    function charFromCodepoint2(c3) {
      if (c3 <= 65535) {
        return String.fromCharCode(c3);
      }
      return String.fromCharCode(
        (c3 - 65536 >> 10) + 55296,
        (c3 - 65536 & 1023) + 56320
      );
    }
    function setProperty2(object, key, value) {
      if (key === "__proto__") {
        Object.defineProperty(object, key, {
          configurable: true,
          enumerable: true,
          writable: true,
          value
        });
      } else {
        object[key] = value;
      }
    }
    var simpleEscapeCheck2 = new Array(256);
    var simpleEscapeMap2 = new Array(256);
    for (i2 = 0; i2 < 256; i2++) {
      simpleEscapeCheck2[i2] = simpleEscapeSequence2(i2) ? 1 : 0;
      simpleEscapeMap2[i2] = simpleEscapeSequence2(i2);
    }
    var i2;
    function State2(input, options) {
      this.input = input;
      this.filename = options["filename"] || null;
      this.schema = options["schema"] || DEFAULT_FULL_SCHEMA;
      this.onWarning = options["onWarning"] || null;
      this.legacy = options["legacy"] || false;
      this.json = options["json"] || false;
      this.listener = options["listener"] || null;
      this.implicitTypes = this.schema.compiledImplicit;
      this.typeMap = this.schema.compiledTypeMap;
      this.length = input.length;
      this.position = 0;
      this.line = 0;
      this.lineStart = 0;
      this.lineIndent = 0;
      this.documents = [];
    }
    function generateError2(state, message) {
      return new YAMLException2(
        message,
        new Mark(state.filename, state.input, state.position, state.line, state.position - state.lineStart)
      );
    }
    function throwError2(state, message) {
      throw generateError2(state, message);
    }
    function throwWarning2(state, message) {
      if (state.onWarning) {
        state.onWarning.call(null, generateError2(state, message));
      }
    }
    var directiveHandlers2 = {
      YAML: function handleYamlDirective2(state, name, args) {
        var match, major, minor;
        if (state.version !== null) {
          throwError2(state, "duplication of %YAML directive");
        }
        if (args.length !== 1) {
          throwError2(state, "YAML directive accepts exactly one argument");
        }
        match = /^([0-9]+)\.([0-9]+)$/.exec(args[0]);
        if (match === null) {
          throwError2(state, "ill-formed argument of the YAML directive");
        }
        major = parseInt(match[1], 10);
        minor = parseInt(match[2], 10);
        if (major !== 1) {
          throwError2(state, "unacceptable YAML version of the document");
        }
        state.version = args[0];
        state.checkLineBreaks = minor < 2;
        if (minor !== 1 && minor !== 2) {
          throwWarning2(state, "unsupported YAML version of the document");
        }
      },
      TAG: function handleTagDirective2(state, name, args) {
        var handle, prefix;
        if (args.length !== 2) {
          throwError2(state, "TAG directive accepts exactly two arguments");
        }
        handle = args[0];
        prefix = args[1];
        if (!PATTERN_TAG_HANDLE2.test(handle)) {
          throwError2(state, "ill-formed tag handle (first argument) of the TAG directive");
        }
        if (_hasOwnProperty2.call(state.tagMap, handle)) {
          throwError2(state, 'there is a previously declared suffix for "' + handle + '" tag handle');
        }
        if (!PATTERN_TAG_URI2.test(prefix)) {
          throwError2(state, "ill-formed tag prefix (second argument) of the TAG directive");
        }
        state.tagMap[handle] = prefix;
      }
    };
    function captureSegment2(state, start, end, checkJson) {
      var _position, _length, _character, _result;
      if (start < end) {
        _result = state.input.slice(start, end);
        if (checkJson) {
          for (_position = 0, _length = _result.length; _position < _length; _position += 1) {
            _character = _result.charCodeAt(_position);
            if (!(_character === 9 || 32 <= _character && _character <= 1114111)) {
              throwError2(state, "expected valid JSON character");
            }
          }
        } else if (PATTERN_NON_PRINTABLE2.test(_result)) {
          throwError2(state, "the stream contains non-printable characters");
        }
        state.result += _result;
      }
    }
    function mergeMappings2(state, destination, source, overridableKeys) {
      var sourceKeys, key, index, quantity;
      if (!common3.isObject(source)) {
        throwError2(state, "cannot merge mappings; the provided source object is unacceptable");
      }
      sourceKeys = Object.keys(source);
      for (index = 0, quantity = sourceKeys.length; index < quantity; index += 1) {
        key = sourceKeys[index];
        if (!_hasOwnProperty2.call(destination, key)) {
          setProperty2(destination, key, source[key]);
          overridableKeys[key] = true;
        }
      }
    }
    function storeMappingPair2(state, _result, overridableKeys, keyTag, keyNode, valueNode, startLine, startPos) {
      var index, quantity;
      if (Array.isArray(keyNode)) {
        keyNode = Array.prototype.slice.call(keyNode);
        for (index = 0, quantity = keyNode.length; index < quantity; index += 1) {
          if (Array.isArray(keyNode[index])) {
            throwError2(state, "nested arrays are not supported inside keys");
          }
          if (typeof keyNode === "object" && _class2(keyNode[index]) === "[object Object]") {
            keyNode[index] = "[object Object]";
          }
        }
      }
      if (typeof keyNode === "object" && _class2(keyNode) === "[object Object]") {
        keyNode = "[object Object]";
      }
      keyNode = String(keyNode);
      if (_result === null) {
        _result = {};
      }
      if (keyTag === "tag:yaml.org,2002:merge") {
        if (Array.isArray(valueNode)) {
          for (index = 0, quantity = valueNode.length; index < quantity; index += 1) {
            mergeMappings2(state, _result, valueNode[index], overridableKeys);
          }
        } else {
          mergeMappings2(state, _result, valueNode, overridableKeys);
        }
      } else {
        if (!state.json && !_hasOwnProperty2.call(overridableKeys, keyNode) && _hasOwnProperty2.call(_result, keyNode)) {
          state.line = startLine || state.line;
          state.position = startPos || state.position;
          throwError2(state, "duplicated mapping key");
        }
        setProperty2(_result, keyNode, valueNode);
        delete overridableKeys[keyNode];
      }
      return _result;
    }
    function readLineBreak2(state) {
      var ch;
      ch = state.input.charCodeAt(state.position);
      if (ch === 10) {
        state.position++;
      } else if (ch === 13) {
        state.position++;
        if (state.input.charCodeAt(state.position) === 10) {
          state.position++;
        }
      } else {
        throwError2(state, "a line break is expected");
      }
      state.line += 1;
      state.lineStart = state.position;
    }
    function skipSeparationSpace2(state, allowComments, checkIndent) {
      var lineBreaks = 0, ch = state.input.charCodeAt(state.position);
      while (ch !== 0) {
        while (is_WHITE_SPACE2(ch)) {
          ch = state.input.charCodeAt(++state.position);
        }
        if (allowComments && ch === 35) {
          do {
            ch = state.input.charCodeAt(++state.position);
          } while (ch !== 10 && ch !== 13 && ch !== 0);
        }
        if (is_EOL2(ch)) {
          readLineBreak2(state);
          ch = state.input.charCodeAt(state.position);
          lineBreaks++;
          state.lineIndent = 0;
          while (ch === 32) {
            state.lineIndent++;
            ch = state.input.charCodeAt(++state.position);
          }
        } else {
          break;
        }
      }
      if (checkIndent !== -1 && lineBreaks !== 0 && state.lineIndent < checkIndent) {
        throwWarning2(state, "deficient indentation");
      }
      return lineBreaks;
    }
    function testDocumentSeparator2(state) {
      var _position = state.position, ch;
      ch = state.input.charCodeAt(_position);
      if ((ch === 45 || ch === 46) && ch === state.input.charCodeAt(_position + 1) && ch === state.input.charCodeAt(_position + 2)) {
        _position += 3;
        ch = state.input.charCodeAt(_position);
        if (ch === 0 || is_WS_OR_EOL2(ch)) {
          return true;
        }
      }
      return false;
    }
    function writeFoldedLines2(state, count2) {
      if (count2 === 1) {
        state.result += " ";
      } else if (count2 > 1) {
        state.result += common3.repeat("\n", count2 - 1);
      }
    }
    function readPlainScalar2(state, nodeIndent, withinFlowCollection) {
      var preceding, following, captureStart, captureEnd, hasPendingContent, _line, _lineStart, _lineIndent, _kind = state.kind, _result = state.result, ch;
      ch = state.input.charCodeAt(state.position);
      if (is_WS_OR_EOL2(ch) || is_FLOW_INDICATOR2(ch) || ch === 35 || ch === 38 || ch === 42 || ch === 33 || ch === 124 || ch === 62 || ch === 39 || ch === 34 || ch === 37 || ch === 64 || ch === 96) {
        return false;
      }
      if (ch === 63 || ch === 45) {
        following = state.input.charCodeAt(state.position + 1);
        if (is_WS_OR_EOL2(following) || withinFlowCollection && is_FLOW_INDICATOR2(following)) {
          return false;
        }
      }
      state.kind = "scalar";
      state.result = "";
      captureStart = captureEnd = state.position;
      hasPendingContent = false;
      while (ch !== 0) {
        if (ch === 58) {
          following = state.input.charCodeAt(state.position + 1);
          if (is_WS_OR_EOL2(following) || withinFlowCollection && is_FLOW_INDICATOR2(following)) {
            break;
          }
        } else if (ch === 35) {
          preceding = state.input.charCodeAt(state.position - 1);
          if (is_WS_OR_EOL2(preceding)) {
            break;
          }
        } else if (state.position === state.lineStart && testDocumentSeparator2(state) || withinFlowCollection && is_FLOW_INDICATOR2(ch)) {
          break;
        } else if (is_EOL2(ch)) {
          _line = state.line;
          _lineStart = state.lineStart;
          _lineIndent = state.lineIndent;
          skipSeparationSpace2(state, false, -1);
          if (state.lineIndent >= nodeIndent) {
            hasPendingContent = true;
            ch = state.input.charCodeAt(state.position);
            continue;
          } else {
            state.position = captureEnd;
            state.line = _line;
            state.lineStart = _lineStart;
            state.lineIndent = _lineIndent;
            break;
          }
        }
        if (hasPendingContent) {
          captureSegment2(state, captureStart, captureEnd, false);
          writeFoldedLines2(state, state.line - _line);
          captureStart = captureEnd = state.position;
          hasPendingContent = false;
        }
        if (!is_WHITE_SPACE2(ch)) {
          captureEnd = state.position + 1;
        }
        ch = state.input.charCodeAt(++state.position);
      }
      captureSegment2(state, captureStart, captureEnd, false);
      if (state.result) {
        return true;
      }
      state.kind = _kind;
      state.result = _result;
      return false;
    }
    function readSingleQuotedScalar2(state, nodeIndent) {
      var ch, captureStart, captureEnd;
      ch = state.input.charCodeAt(state.position);
      if (ch !== 39) {
        return false;
      }
      state.kind = "scalar";
      state.result = "";
      state.position++;
      captureStart = captureEnd = state.position;
      while ((ch = state.input.charCodeAt(state.position)) !== 0) {
        if (ch === 39) {
          captureSegment2(state, captureStart, state.position, true);
          ch = state.input.charCodeAt(++state.position);
          if (ch === 39) {
            captureStart = state.position;
            state.position++;
            captureEnd = state.position;
          } else {
            return true;
          }
        } else if (is_EOL2(ch)) {
          captureSegment2(state, captureStart, captureEnd, true);
          writeFoldedLines2(state, skipSeparationSpace2(state, false, nodeIndent));
          captureStart = captureEnd = state.position;
        } else if (state.position === state.lineStart && testDocumentSeparator2(state)) {
          throwError2(state, "unexpected end of the document within a single quoted scalar");
        } else {
          state.position++;
          captureEnd = state.position;
        }
      }
      throwError2(state, "unexpected end of the stream within a single quoted scalar");
    }
    function readDoubleQuotedScalar2(state, nodeIndent) {
      var captureStart, captureEnd, hexLength, hexResult, tmp, ch;
      ch = state.input.charCodeAt(state.position);
      if (ch !== 34) {
        return false;
      }
      state.kind = "scalar";
      state.result = "";
      state.position++;
      captureStart = captureEnd = state.position;
      while ((ch = state.input.charCodeAt(state.position)) !== 0) {
        if (ch === 34) {
          captureSegment2(state, captureStart, state.position, true);
          state.position++;
          return true;
        } else if (ch === 92) {
          captureSegment2(state, captureStart, state.position, true);
          ch = state.input.charCodeAt(++state.position);
          if (is_EOL2(ch)) {
            skipSeparationSpace2(state, false, nodeIndent);
          } else if (ch < 256 && simpleEscapeCheck2[ch]) {
            state.result += simpleEscapeMap2[ch];
            state.position++;
          } else if ((tmp = escapedHexLen2(ch)) > 0) {
            hexLength = tmp;
            hexResult = 0;
            for (; hexLength > 0; hexLength--) {
              ch = state.input.charCodeAt(++state.position);
              if ((tmp = fromHexCode2(ch)) >= 0) {
                hexResult = (hexResult << 4) + tmp;
              } else {
                throwError2(state, "expected hexadecimal character");
              }
            }
            state.result += charFromCodepoint2(hexResult);
            state.position++;
          } else {
            throwError2(state, "unknown escape sequence");
          }
          captureStart = captureEnd = state.position;
        } else if (is_EOL2(ch)) {
          captureSegment2(state, captureStart, captureEnd, true);
          writeFoldedLines2(state, skipSeparationSpace2(state, false, nodeIndent));
          captureStart = captureEnd = state.position;
        } else if (state.position === state.lineStart && testDocumentSeparator2(state)) {
          throwError2(state, "unexpected end of the document within a double quoted scalar");
        } else {
          state.position++;
          captureEnd = state.position;
        }
      }
      throwError2(state, "unexpected end of the stream within a double quoted scalar");
    }
    function readFlowCollection2(state, nodeIndent) {
      var readNext = true, _line, _tag = state.tag, _result, _anchor = state.anchor, following, terminator, isPair, isExplicitPair, isMapping, overridableKeys = {}, keyNode, keyTag, valueNode, ch;
      ch = state.input.charCodeAt(state.position);
      if (ch === 91) {
        terminator = 93;
        isMapping = false;
        _result = [];
      } else if (ch === 123) {
        terminator = 125;
        isMapping = true;
        _result = {};
      } else {
        return false;
      }
      if (state.anchor !== null) {
        state.anchorMap[state.anchor] = _result;
      }
      ch = state.input.charCodeAt(++state.position);
      while (ch !== 0) {
        skipSeparationSpace2(state, true, nodeIndent);
        ch = state.input.charCodeAt(state.position);
        if (ch === terminator) {
          state.position++;
          state.tag = _tag;
          state.anchor = _anchor;
          state.kind = isMapping ? "mapping" : "sequence";
          state.result = _result;
          return true;
        } else if (!readNext) {
          throwError2(state, "missed comma between flow collection entries");
        }
        keyTag = keyNode = valueNode = null;
        isPair = isExplicitPair = false;
        if (ch === 63) {
          following = state.input.charCodeAt(state.position + 1);
          if (is_WS_OR_EOL2(following)) {
            isPair = isExplicitPair = true;
            state.position++;
            skipSeparationSpace2(state, true, nodeIndent);
          }
        }
        _line = state.line;
        composeNode2(state, nodeIndent, CONTEXT_FLOW_IN2, false, true);
        keyTag = state.tag;
        keyNode = state.result;
        skipSeparationSpace2(state, true, nodeIndent);
        ch = state.input.charCodeAt(state.position);
        if ((isExplicitPair || state.line === _line) && ch === 58) {
          isPair = true;
          ch = state.input.charCodeAt(++state.position);
          skipSeparationSpace2(state, true, nodeIndent);
          composeNode2(state, nodeIndent, CONTEXT_FLOW_IN2, false, true);
          valueNode = state.result;
        }
        if (isMapping) {
          storeMappingPair2(state, _result, overridableKeys, keyTag, keyNode, valueNode);
        } else if (isPair) {
          _result.push(storeMappingPair2(state, null, overridableKeys, keyTag, keyNode, valueNode));
        } else {
          _result.push(keyNode);
        }
        skipSeparationSpace2(state, true, nodeIndent);
        ch = state.input.charCodeAt(state.position);
        if (ch === 44) {
          readNext = true;
          ch = state.input.charCodeAt(++state.position);
        } else {
          readNext = false;
        }
      }
      throwError2(state, "unexpected end of the stream within a flow collection");
    }
    function readBlockScalar2(state, nodeIndent) {
      var captureStart, folding, chomping = CHOMPING_CLIP2, didReadContent = false, detectedIndent = false, textIndent = nodeIndent, emptyLines = 0, atMoreIndented = false, tmp, ch;
      ch = state.input.charCodeAt(state.position);
      if (ch === 124) {
        folding = false;
      } else if (ch === 62) {
        folding = true;
      } else {
        return false;
      }
      state.kind = "scalar";
      state.result = "";
      while (ch !== 0) {
        ch = state.input.charCodeAt(++state.position);
        if (ch === 43 || ch === 45) {
          if (CHOMPING_CLIP2 === chomping) {
            chomping = ch === 43 ? CHOMPING_KEEP2 : CHOMPING_STRIP2;
          } else {
            throwError2(state, "repeat of a chomping mode identifier");
          }
        } else if ((tmp = fromDecimalCode2(ch)) >= 0) {
          if (tmp === 0) {
            throwError2(state, "bad explicit indentation width of a block scalar; it cannot be less than one");
          } else if (!detectedIndent) {
            textIndent = nodeIndent + tmp - 1;
            detectedIndent = true;
          } else {
            throwError2(state, "repeat of an indentation width identifier");
          }
        } else {
          break;
        }
      }
      if (is_WHITE_SPACE2(ch)) {
        do {
          ch = state.input.charCodeAt(++state.position);
        } while (is_WHITE_SPACE2(ch));
        if (ch === 35) {
          do {
            ch = state.input.charCodeAt(++state.position);
          } while (!is_EOL2(ch) && ch !== 0);
        }
      }
      while (ch !== 0) {
        readLineBreak2(state);
        state.lineIndent = 0;
        ch = state.input.charCodeAt(state.position);
        while ((!detectedIndent || state.lineIndent < textIndent) && ch === 32) {
          state.lineIndent++;
          ch = state.input.charCodeAt(++state.position);
        }
        if (!detectedIndent && state.lineIndent > textIndent) {
          textIndent = state.lineIndent;
        }
        if (is_EOL2(ch)) {
          emptyLines++;
          continue;
        }
        if (state.lineIndent < textIndent) {
          if (chomping === CHOMPING_KEEP2) {
            state.result += common3.repeat("\n", didReadContent ? 1 + emptyLines : emptyLines);
          } else if (chomping === CHOMPING_CLIP2) {
            if (didReadContent) {
              state.result += "\n";
            }
          }
          break;
        }
        if (folding) {
          if (is_WHITE_SPACE2(ch)) {
            atMoreIndented = true;
            state.result += common3.repeat("\n", didReadContent ? 1 + emptyLines : emptyLines);
          } else if (atMoreIndented) {
            atMoreIndented = false;
            state.result += common3.repeat("\n", emptyLines + 1);
          } else if (emptyLines === 0) {
            if (didReadContent) {
              state.result += " ";
            }
          } else {
            state.result += common3.repeat("\n", emptyLines);
          }
        } else {
          state.result += common3.repeat("\n", didReadContent ? 1 + emptyLines : emptyLines);
        }
        didReadContent = true;
        detectedIndent = true;
        emptyLines = 0;
        captureStart = state.position;
        while (!is_EOL2(ch) && ch !== 0) {
          ch = state.input.charCodeAt(++state.position);
        }
        captureSegment2(state, captureStart, state.position, false);
      }
      return true;
    }
    function readBlockSequence2(state, nodeIndent) {
      var _line, _tag = state.tag, _anchor = state.anchor, _result = [], following, detected = false, ch;
      if (state.anchor !== null) {
        state.anchorMap[state.anchor] = _result;
      }
      ch = state.input.charCodeAt(state.position);
      while (ch !== 0) {
        if (ch !== 45) {
          break;
        }
        following = state.input.charCodeAt(state.position + 1);
        if (!is_WS_OR_EOL2(following)) {
          break;
        }
        detected = true;
        state.position++;
        if (skipSeparationSpace2(state, true, -1)) {
          if (state.lineIndent <= nodeIndent) {
            _result.push(null);
            ch = state.input.charCodeAt(state.position);
            continue;
          }
        }
        _line = state.line;
        composeNode2(state, nodeIndent, CONTEXT_BLOCK_IN2, false, true);
        _result.push(state.result);
        skipSeparationSpace2(state, true, -1);
        ch = state.input.charCodeAt(state.position);
        if ((state.line === _line || state.lineIndent > nodeIndent) && ch !== 0) {
          throwError2(state, "bad indentation of a sequence entry");
        } else if (state.lineIndent < nodeIndent) {
          break;
        }
      }
      if (detected) {
        state.tag = _tag;
        state.anchor = _anchor;
        state.kind = "sequence";
        state.result = _result;
        return true;
      }
      return false;
    }
    function readBlockMapping2(state, nodeIndent, flowIndent) {
      var following, allowCompact, _line, _pos, _tag = state.tag, _anchor = state.anchor, _result = {}, overridableKeys = {}, keyTag = null, keyNode = null, valueNode = null, atExplicitKey = false, detected = false, ch;
      if (state.anchor !== null) {
        state.anchorMap[state.anchor] = _result;
      }
      ch = state.input.charCodeAt(state.position);
      while (ch !== 0) {
        following = state.input.charCodeAt(state.position + 1);
        _line = state.line;
        _pos = state.position;
        if ((ch === 63 || ch === 58) && is_WS_OR_EOL2(following)) {
          if (ch === 63) {
            if (atExplicitKey) {
              storeMappingPair2(state, _result, overridableKeys, keyTag, keyNode, null);
              keyTag = keyNode = valueNode = null;
            }
            detected = true;
            atExplicitKey = true;
            allowCompact = true;
          } else if (atExplicitKey) {
            atExplicitKey = false;
            allowCompact = true;
          } else {
            throwError2(state, "incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line");
          }
          state.position += 1;
          ch = following;
        } else if (composeNode2(state, flowIndent, CONTEXT_FLOW_OUT2, false, true)) {
          if (state.line === _line) {
            ch = state.input.charCodeAt(state.position);
            while (is_WHITE_SPACE2(ch)) {
              ch = state.input.charCodeAt(++state.position);
            }
            if (ch === 58) {
              ch = state.input.charCodeAt(++state.position);
              if (!is_WS_OR_EOL2(ch)) {
                throwError2(state, "a whitespace character is expected after the key-value separator within a block mapping");
              }
              if (atExplicitKey) {
                storeMappingPair2(state, _result, overridableKeys, keyTag, keyNode, null);
                keyTag = keyNode = valueNode = null;
              }
              detected = true;
              atExplicitKey = false;
              allowCompact = false;
              keyTag = state.tag;
              keyNode = state.result;
            } else if (detected) {
              throwError2(state, "can not read an implicit mapping pair; a colon is missed");
            } else {
              state.tag = _tag;
              state.anchor = _anchor;
              return true;
            }
          } else if (detected) {
            throwError2(state, "can not read a block mapping entry; a multiline key may not be an implicit key");
          } else {
            state.tag = _tag;
            state.anchor = _anchor;
            return true;
          }
        } else {
          break;
        }
        if (state.line === _line || state.lineIndent > nodeIndent) {
          if (composeNode2(state, nodeIndent, CONTEXT_BLOCK_OUT2, true, allowCompact)) {
            if (atExplicitKey) {
              keyNode = state.result;
            } else {
              valueNode = state.result;
            }
          }
          if (!atExplicitKey) {
            storeMappingPair2(state, _result, overridableKeys, keyTag, keyNode, valueNode, _line, _pos);
            keyTag = keyNode = valueNode = null;
          }
          skipSeparationSpace2(state, true, -1);
          ch = state.input.charCodeAt(state.position);
        }
        if (state.lineIndent > nodeIndent && ch !== 0) {
          throwError2(state, "bad indentation of a mapping entry");
        } else if (state.lineIndent < nodeIndent) {
          break;
        }
      }
      if (atExplicitKey) {
        storeMappingPair2(state, _result, overridableKeys, keyTag, keyNode, null);
      }
      if (detected) {
        state.tag = _tag;
        state.anchor = _anchor;
        state.kind = "mapping";
        state.result = _result;
      }
      return detected;
    }
    function readTagProperty2(state) {
      var _position, isVerbatim = false, isNamed = false, tagHandle, tagName, ch;
      ch = state.input.charCodeAt(state.position);
      if (ch !== 33) return false;
      if (state.tag !== null) {
        throwError2(state, "duplication of a tag property");
      }
      ch = state.input.charCodeAt(++state.position);
      if (ch === 60) {
        isVerbatim = true;
        ch = state.input.charCodeAt(++state.position);
      } else if (ch === 33) {
        isNamed = true;
        tagHandle = "!!";
        ch = state.input.charCodeAt(++state.position);
      } else {
        tagHandle = "!";
      }
      _position = state.position;
      if (isVerbatim) {
        do {
          ch = state.input.charCodeAt(++state.position);
        } while (ch !== 0 && ch !== 62);
        if (state.position < state.length) {
          tagName = state.input.slice(_position, state.position);
          ch = state.input.charCodeAt(++state.position);
        } else {
          throwError2(state, "unexpected end of the stream within a verbatim tag");
        }
      } else {
        while (ch !== 0 && !is_WS_OR_EOL2(ch)) {
          if (ch === 33) {
            if (!isNamed) {
              tagHandle = state.input.slice(_position - 1, state.position + 1);
              if (!PATTERN_TAG_HANDLE2.test(tagHandle)) {
                throwError2(state, "named tag handle cannot contain such characters");
              }
              isNamed = true;
              _position = state.position + 1;
            } else {
              throwError2(state, "tag suffix cannot contain exclamation marks");
            }
          }
          ch = state.input.charCodeAt(++state.position);
        }
        tagName = state.input.slice(_position, state.position);
        if (PATTERN_FLOW_INDICATORS2.test(tagName)) {
          throwError2(state, "tag suffix cannot contain flow indicator characters");
        }
      }
      if (tagName && !PATTERN_TAG_URI2.test(tagName)) {
        throwError2(state, "tag name cannot contain such characters: " + tagName);
      }
      if (isVerbatim) {
        state.tag = tagName;
      } else if (_hasOwnProperty2.call(state.tagMap, tagHandle)) {
        state.tag = state.tagMap[tagHandle] + tagName;
      } else if (tagHandle === "!") {
        state.tag = "!" + tagName;
      } else if (tagHandle === "!!") {
        state.tag = "tag:yaml.org,2002:" + tagName;
      } else {
        throwError2(state, 'undeclared tag handle "' + tagHandle + '"');
      }
      return true;
    }
    function readAnchorProperty2(state) {
      var _position, ch;
      ch = state.input.charCodeAt(state.position);
      if (ch !== 38) return false;
      if (state.anchor !== null) {
        throwError2(state, "duplication of an anchor property");
      }
      ch = state.input.charCodeAt(++state.position);
      _position = state.position;
      while (ch !== 0 && !is_WS_OR_EOL2(ch) && !is_FLOW_INDICATOR2(ch)) {
        ch = state.input.charCodeAt(++state.position);
      }
      if (state.position === _position) {
        throwError2(state, "name of an anchor node must contain at least one character");
      }
      state.anchor = state.input.slice(_position, state.position);
      return true;
    }
    function readAlias2(state) {
      var _position, alias, ch;
      ch = state.input.charCodeAt(state.position);
      if (ch !== 42) return false;
      ch = state.input.charCodeAt(++state.position);
      _position = state.position;
      while (ch !== 0 && !is_WS_OR_EOL2(ch) && !is_FLOW_INDICATOR2(ch)) {
        ch = state.input.charCodeAt(++state.position);
      }
      if (state.position === _position) {
        throwError2(state, "name of an alias node must contain at least one character");
      }
      alias = state.input.slice(_position, state.position);
      if (!_hasOwnProperty2.call(state.anchorMap, alias)) {
        throwError2(state, 'unidentified alias "' + alias + '"');
      }
      state.result = state.anchorMap[alias];
      skipSeparationSpace2(state, true, -1);
      return true;
    }
    function composeNode2(state, parentIndent, nodeContext, allowToSeek, allowCompact) {
      var allowBlockStyles, allowBlockScalars, allowBlockCollections, indentStatus = 1, atNewLine = false, hasContent = false, typeIndex, typeQuantity, type4, flowIndent, blockIndent;
      if (state.listener !== null) {
        state.listener("open", state);
      }
      state.tag = null;
      state.anchor = null;
      state.kind = null;
      state.result = null;
      allowBlockStyles = allowBlockScalars = allowBlockCollections = CONTEXT_BLOCK_OUT2 === nodeContext || CONTEXT_BLOCK_IN2 === nodeContext;
      if (allowToSeek) {
        if (skipSeparationSpace2(state, true, -1)) {
          atNewLine = true;
          if (state.lineIndent > parentIndent) {
            indentStatus = 1;
          } else if (state.lineIndent === parentIndent) {
            indentStatus = 0;
          } else if (state.lineIndent < parentIndent) {
            indentStatus = -1;
          }
        }
      }
      if (indentStatus === 1) {
        while (readTagProperty2(state) || readAnchorProperty2(state)) {
          if (skipSeparationSpace2(state, true, -1)) {
            atNewLine = true;
            allowBlockCollections = allowBlockStyles;
            if (state.lineIndent > parentIndent) {
              indentStatus = 1;
            } else if (state.lineIndent === parentIndent) {
              indentStatus = 0;
            } else if (state.lineIndent < parentIndent) {
              indentStatus = -1;
            }
          } else {
            allowBlockCollections = false;
          }
        }
      }
      if (allowBlockCollections) {
        allowBlockCollections = atNewLine || allowCompact;
      }
      if (indentStatus === 1 || CONTEXT_BLOCK_OUT2 === nodeContext) {
        if (CONTEXT_FLOW_IN2 === nodeContext || CONTEXT_FLOW_OUT2 === nodeContext) {
          flowIndent = parentIndent;
        } else {
          flowIndent = parentIndent + 1;
        }
        blockIndent = state.position - state.lineStart;
        if (indentStatus === 1) {
          if (allowBlockCollections && (readBlockSequence2(state, blockIndent) || readBlockMapping2(state, blockIndent, flowIndent)) || readFlowCollection2(state, flowIndent)) {
            hasContent = true;
          } else {
            if (allowBlockScalars && readBlockScalar2(state, flowIndent) || readSingleQuotedScalar2(state, flowIndent) || readDoubleQuotedScalar2(state, flowIndent)) {
              hasContent = true;
            } else if (readAlias2(state)) {
              hasContent = true;
              if (state.tag !== null || state.anchor !== null) {
                throwError2(state, "alias node should not have any properties");
              }
            } else if (readPlainScalar2(state, flowIndent, CONTEXT_FLOW_IN2 === nodeContext)) {
              hasContent = true;
              if (state.tag === null) {
                state.tag = "?";
              }
            }
            if (state.anchor !== null) {
              state.anchorMap[state.anchor] = state.result;
            }
          }
        } else if (indentStatus === 0) {
          hasContent = allowBlockCollections && readBlockSequence2(state, blockIndent);
        }
      }
      if (state.tag !== null && state.tag !== "!") {
        if (state.tag === "?") {
          if (state.result !== null && state.kind !== "scalar") {
            throwError2(state, 'unacceptable node kind for !<?> tag; it should be "scalar", not "' + state.kind + '"');
          }
          for (typeIndex = 0, typeQuantity = state.implicitTypes.length; typeIndex < typeQuantity; typeIndex += 1) {
            type4 = state.implicitTypes[typeIndex];
            if (type4.resolve(state.result)) {
              state.result = type4.construct(state.result);
              state.tag = type4.tag;
              if (state.anchor !== null) {
                state.anchorMap[state.anchor] = state.result;
              }
              break;
            }
          }
        } else if (_hasOwnProperty2.call(state.typeMap[state.kind || "fallback"], state.tag)) {
          type4 = state.typeMap[state.kind || "fallback"][state.tag];
          if (state.result !== null && type4.kind !== state.kind) {
            throwError2(state, "unacceptable node kind for !<" + state.tag + '> tag; it should be "' + type4.kind + '", not "' + state.kind + '"');
          }
          if (!type4.resolve(state.result)) {
            throwError2(state, "cannot resolve a node with !<" + state.tag + "> explicit tag");
          } else {
            state.result = type4.construct(state.result);
            if (state.anchor !== null) {
              state.anchorMap[state.anchor] = state.result;
            }
          }
        } else {
          throwError2(state, "unknown tag !<" + state.tag + ">");
        }
      }
      if (state.listener !== null) {
        state.listener("close", state);
      }
      return state.tag !== null || state.anchor !== null || hasContent;
    }
    function readDocument2(state) {
      var documentStart = state.position, _position, directiveName, directiveArgs, hasDirectives = false, ch;
      state.version = null;
      state.checkLineBreaks = state.legacy;
      state.tagMap = {};
      state.anchorMap = {};
      while ((ch = state.input.charCodeAt(state.position)) !== 0) {
        skipSeparationSpace2(state, true, -1);
        ch = state.input.charCodeAt(state.position);
        if (state.lineIndent > 0 || ch !== 37) {
          break;
        }
        hasDirectives = true;
        ch = state.input.charCodeAt(++state.position);
        _position = state.position;
        while (ch !== 0 && !is_WS_OR_EOL2(ch)) {
          ch = state.input.charCodeAt(++state.position);
        }
        directiveName = state.input.slice(_position, state.position);
        directiveArgs = [];
        if (directiveName.length < 1) {
          throwError2(state, "directive name must not be less than one character in length");
        }
        while (ch !== 0) {
          while (is_WHITE_SPACE2(ch)) {
            ch = state.input.charCodeAt(++state.position);
          }
          if (ch === 35) {
            do {
              ch = state.input.charCodeAt(++state.position);
            } while (ch !== 0 && !is_EOL2(ch));
            break;
          }
          if (is_EOL2(ch)) break;
          _position = state.position;
          while (ch !== 0 && !is_WS_OR_EOL2(ch)) {
            ch = state.input.charCodeAt(++state.position);
          }
          directiveArgs.push(state.input.slice(_position, state.position));
        }
        if (ch !== 0) readLineBreak2(state);
        if (_hasOwnProperty2.call(directiveHandlers2, directiveName)) {
          directiveHandlers2[directiveName](state, directiveName, directiveArgs);
        } else {
          throwWarning2(state, 'unknown document directive "' + directiveName + '"');
        }
      }
      skipSeparationSpace2(state, true, -1);
      if (state.lineIndent === 0 && state.input.charCodeAt(state.position) === 45 && state.input.charCodeAt(state.position + 1) === 45 && state.input.charCodeAt(state.position + 2) === 45) {
        state.position += 3;
        skipSeparationSpace2(state, true, -1);
      } else if (hasDirectives) {
        throwError2(state, "directives end mark is expected");
      }
      composeNode2(state, state.lineIndent - 1, CONTEXT_BLOCK_OUT2, false, true);
      skipSeparationSpace2(state, true, -1);
      if (state.checkLineBreaks && PATTERN_NON_ASCII_LINE_BREAKS2.test(state.input.slice(documentStart, state.position))) {
        throwWarning2(state, "non-ASCII line breaks are interpreted as content");
      }
      state.documents.push(state.result);
      if (state.position === state.lineStart && testDocumentSeparator2(state)) {
        if (state.input.charCodeAt(state.position) === 46) {
          state.position += 3;
          skipSeparationSpace2(state, true, -1);
        }
        return;
      }
      if (state.position < state.length - 1) {
        throwError2(state, "end of the stream or a document separator is expected");
      } else {
        return;
      }
    }
    function loadDocuments2(input, options) {
      input = String(input);
      options = options || {};
      if (input.length !== 0) {
        if (input.charCodeAt(input.length - 1) !== 10 && input.charCodeAt(input.length - 1) !== 13) {
          input += "\n";
        }
        if (input.charCodeAt(0) === 65279) {
          input = input.slice(1);
        }
      }
      var state = new State2(input, options);
      var nullpos = input.indexOf("\0");
      if (nullpos !== -1) {
        state.position = nullpos;
        throwError2(state, "null byte is not allowed in input");
      }
      state.input += "\0";
      while (state.input.charCodeAt(state.position) === 32) {
        state.lineIndent += 1;
        state.position += 1;
      }
      while (state.position < state.length - 1) {
        readDocument2(state);
      }
      return state.documents;
    }
    function loadAll2(input, iterator, options) {
      if (iterator !== null && typeof iterator === "object" && typeof options === "undefined") {
        options = iterator;
        iterator = null;
      }
      var documents = loadDocuments2(input, options);
      if (typeof iterator !== "function") {
        return documents;
      }
      for (var index = 0, length = documents.length; index < length; index += 1) {
        iterator(documents[index]);
      }
    }
    function load3(input, options) {
      var documents = loadDocuments2(input, options);
      if (documents.length === 0) {
        return void 0;
      } else if (documents.length === 1) {
        return documents[0];
      }
      throw new YAMLException2("expected a single document in the stream, but found more");
    }
    function safeLoadAll2(input, iterator, options) {
      if (typeof iterator === "object" && iterator !== null && typeof options === "undefined") {
        options = iterator;
        iterator = null;
      }
      return loadAll2(input, iterator, common3.extend({ schema: DEFAULT_SAFE_SCHEMA }, options));
    }
    function safeLoad2(input, options) {
      return load3(input, common3.extend({ schema: DEFAULT_SAFE_SCHEMA }, options));
    }
    module2.exports.loadAll = loadAll2;
    module2.exports.load = load3;
    module2.exports.safeLoadAll = safeLoadAll2;
    module2.exports.safeLoad = safeLoad2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/dumper.js
var require_dumper = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml/dumper.js"(exports2, module2) {
    "use strict";
    var common3 = require_common();
    var YAMLException2 = require_exception();
    var DEFAULT_FULL_SCHEMA = require_default_full();
    var DEFAULT_SAFE_SCHEMA = require_default_safe();
    var _toString3 = Object.prototype.toString;
    var _hasOwnProperty2 = Object.prototype.hasOwnProperty;
    var CHAR_TAB2 = 9;
    var CHAR_LINE_FEED2 = 10;
    var CHAR_CARRIAGE_RETURN2 = 13;
    var CHAR_SPACE2 = 32;
    var CHAR_EXCLAMATION2 = 33;
    var CHAR_DOUBLE_QUOTE2 = 34;
    var CHAR_SHARP2 = 35;
    var CHAR_PERCENT2 = 37;
    var CHAR_AMPERSAND2 = 38;
    var CHAR_SINGLE_QUOTE2 = 39;
    var CHAR_ASTERISK2 = 42;
    var CHAR_COMMA2 = 44;
    var CHAR_MINUS2 = 45;
    var CHAR_COLON2 = 58;
    var CHAR_EQUALS2 = 61;
    var CHAR_GREATER_THAN2 = 62;
    var CHAR_QUESTION2 = 63;
    var CHAR_COMMERCIAL_AT2 = 64;
    var CHAR_LEFT_SQUARE_BRACKET2 = 91;
    var CHAR_RIGHT_SQUARE_BRACKET2 = 93;
    var CHAR_GRAVE_ACCENT2 = 96;
    var CHAR_LEFT_CURLY_BRACKET2 = 123;
    var CHAR_VERTICAL_LINE2 = 124;
    var CHAR_RIGHT_CURLY_BRACKET2 = 125;
    var ESCAPE_SEQUENCES2 = {};
    ESCAPE_SEQUENCES2[0] = "\\0";
    ESCAPE_SEQUENCES2[7] = "\\a";
    ESCAPE_SEQUENCES2[8] = "\\b";
    ESCAPE_SEQUENCES2[9] = "\\t";
    ESCAPE_SEQUENCES2[10] = "\\n";
    ESCAPE_SEQUENCES2[11] = "\\v";
    ESCAPE_SEQUENCES2[12] = "\\f";
    ESCAPE_SEQUENCES2[13] = "\\r";
    ESCAPE_SEQUENCES2[27] = "\\e";
    ESCAPE_SEQUENCES2[34] = '\\"';
    ESCAPE_SEQUENCES2[92] = "\\\\";
    ESCAPE_SEQUENCES2[133] = "\\N";
    ESCAPE_SEQUENCES2[160] = "\\_";
    ESCAPE_SEQUENCES2[8232] = "\\L";
    ESCAPE_SEQUENCES2[8233] = "\\P";
    var DEPRECATED_BOOLEANS_SYNTAX2 = [
      "y",
      "Y",
      "yes",
      "Yes",
      "YES",
      "on",
      "On",
      "ON",
      "n",
      "N",
      "no",
      "No",
      "NO",
      "off",
      "Off",
      "OFF"
    ];
    function compileStyleMap2(schema2, map26) {
      var result2, keys4, index, length, tag, style, type4;
      if (map26 === null) return {};
      result2 = {};
      keys4 = Object.keys(map26);
      for (index = 0, length = keys4.length; index < length; index += 1) {
        tag = keys4[index];
        style = String(map26[tag]);
        if (tag.slice(0, 2) === "!!") {
          tag = "tag:yaml.org,2002:" + tag.slice(2);
        }
        type4 = schema2.compiledTypeMap["fallback"][tag];
        if (type4 && _hasOwnProperty2.call(type4.styleAliases, style)) {
          style = type4.styleAliases[style];
        }
        result2[tag] = style;
      }
      return result2;
    }
    function encodeHex2(character) {
      var string, handle, length;
      string = character.toString(16).toUpperCase();
      if (character <= 255) {
        handle = "x";
        length = 2;
      } else if (character <= 65535) {
        handle = "u";
        length = 4;
      } else if (character <= 4294967295) {
        handle = "U";
        length = 8;
      } else {
        throw new YAMLException2("code point within a string may not be greater than 0xFFFFFFFF");
      }
      return "\\" + handle + common3.repeat("0", length - string.length) + string;
    }
    function State2(options) {
      this.schema = options["schema"] || DEFAULT_FULL_SCHEMA;
      this.indent = Math.max(1, options["indent"] || 2);
      this.noArrayIndent = options["noArrayIndent"] || false;
      this.skipInvalid = options["skipInvalid"] || false;
      this.flowLevel = common3.isNothing(options["flowLevel"]) ? -1 : options["flowLevel"];
      this.styleMap = compileStyleMap2(this.schema, options["styles"] || null);
      this.sortKeys = options["sortKeys"] || false;
      this.lineWidth = options["lineWidth"] || 80;
      this.noRefs = options["noRefs"] || false;
      this.noCompatMode = options["noCompatMode"] || false;
      this.condenseFlow = options["condenseFlow"] || false;
      this.implicitTypes = this.schema.compiledImplicit;
      this.explicitTypes = this.schema.compiledExplicit;
      this.tag = null;
      this.result = "";
      this.duplicates = [];
      this.usedDuplicates = null;
    }
    function indentString2(string, spaces) {
      var ind = common3.repeat(" ", spaces), position3 = 0, next2 = -1, result2 = "", line, length = string.length;
      while (position3 < length) {
        next2 = string.indexOf("\n", position3);
        if (next2 === -1) {
          line = string.slice(position3);
          position3 = length;
        } else {
          line = string.slice(position3, next2 + 1);
          position3 = next2 + 1;
        }
        if (line.length && line !== "\n") result2 += ind;
        result2 += line;
      }
      return result2;
    }
    function generateNextLine2(state, level) {
      return "\n" + common3.repeat(" ", state.indent * level);
    }
    function testImplicitResolving2(state, str2) {
      var index, length, type4;
      for (index = 0, length = state.implicitTypes.length; index < length; index += 1) {
        type4 = state.implicitTypes[index];
        if (type4.resolve(str2)) {
          return true;
        }
      }
      return false;
    }
    function isWhitespace2(c3) {
      return c3 === CHAR_SPACE2 || c3 === CHAR_TAB2;
    }
    function isPrintable2(c3) {
      return 32 <= c3 && c3 <= 126 || 161 <= c3 && c3 <= 55295 && c3 !== 8232 && c3 !== 8233 || 57344 <= c3 && c3 <= 65533 && c3 !== 65279 || 65536 <= c3 && c3 <= 1114111;
    }
    function isNsChar(c3) {
      return isPrintable2(c3) && !isWhitespace2(c3) && c3 !== 65279 && c3 !== CHAR_CARRIAGE_RETURN2 && c3 !== CHAR_LINE_FEED2;
    }
    function isPlainSafe2(c3, prev) {
      return isPrintable2(c3) && c3 !== 65279 && c3 !== CHAR_COMMA2 && c3 !== CHAR_LEFT_SQUARE_BRACKET2 && c3 !== CHAR_RIGHT_SQUARE_BRACKET2 && c3 !== CHAR_LEFT_CURLY_BRACKET2 && c3 !== CHAR_RIGHT_CURLY_BRACKET2 && c3 !== CHAR_COLON2 && (c3 !== CHAR_SHARP2 || prev && isNsChar(prev));
    }
    function isPlainSafeFirst2(c3) {
      return isPrintable2(c3) && c3 !== 65279 && !isWhitespace2(c3) && c3 !== CHAR_MINUS2 && c3 !== CHAR_QUESTION2 && c3 !== CHAR_COLON2 && c3 !== CHAR_COMMA2 && c3 !== CHAR_LEFT_SQUARE_BRACKET2 && c3 !== CHAR_RIGHT_SQUARE_BRACKET2 && c3 !== CHAR_LEFT_CURLY_BRACKET2 && c3 !== CHAR_RIGHT_CURLY_BRACKET2 && c3 !== CHAR_SHARP2 && c3 !== CHAR_AMPERSAND2 && c3 !== CHAR_ASTERISK2 && c3 !== CHAR_EXCLAMATION2 && c3 !== CHAR_VERTICAL_LINE2 && c3 !== CHAR_EQUALS2 && c3 !== CHAR_GREATER_THAN2 && c3 !== CHAR_SINGLE_QUOTE2 && c3 !== CHAR_DOUBLE_QUOTE2 && c3 !== CHAR_PERCENT2 && c3 !== CHAR_COMMERCIAL_AT2 && c3 !== CHAR_GRAVE_ACCENT2;
    }
    function needIndentIndicator2(string) {
      var leadingSpaceRe = /^\n* /;
      return leadingSpaceRe.test(string);
    }
    var STYLE_PLAIN2 = 1;
    var STYLE_SINGLE2 = 2;
    var STYLE_LITERAL2 = 3;
    var STYLE_FOLDED2 = 4;
    var STYLE_DOUBLE2 = 5;
    function chooseScalarStyle2(string, singleLineOnly, indentPerLevel, lineWidth, testAmbiguousType) {
      var i2;
      var char, prev_char;
      var hasLineBreak = false;
      var hasFoldableLine = false;
      var shouldTrackWidth = lineWidth !== -1;
      var previousLineBreak = -1;
      var plain = isPlainSafeFirst2(string.charCodeAt(0)) && !isWhitespace2(string.charCodeAt(string.length - 1));
      if (singleLineOnly) {
        for (i2 = 0; i2 < string.length; i2++) {
          char = string.charCodeAt(i2);
          if (!isPrintable2(char)) {
            return STYLE_DOUBLE2;
          }
          prev_char = i2 > 0 ? string.charCodeAt(i2 - 1) : null;
          plain = plain && isPlainSafe2(char, prev_char);
        }
      } else {
        for (i2 = 0; i2 < string.length; i2++) {
          char = string.charCodeAt(i2);
          if (char === CHAR_LINE_FEED2) {
            hasLineBreak = true;
            if (shouldTrackWidth) {
              hasFoldableLine = hasFoldableLine || // Foldable line = too long, and not more-indented.
              i2 - previousLineBreak - 1 > lineWidth && string[previousLineBreak + 1] !== " ";
              previousLineBreak = i2;
            }
          } else if (!isPrintable2(char)) {
            return STYLE_DOUBLE2;
          }
          prev_char = i2 > 0 ? string.charCodeAt(i2 - 1) : null;
          plain = plain && isPlainSafe2(char, prev_char);
        }
        hasFoldableLine = hasFoldableLine || shouldTrackWidth && (i2 - previousLineBreak - 1 > lineWidth && string[previousLineBreak + 1] !== " ");
      }
      if (!hasLineBreak && !hasFoldableLine) {
        return plain && !testAmbiguousType(string) ? STYLE_PLAIN2 : STYLE_SINGLE2;
      }
      if (indentPerLevel > 9 && needIndentIndicator2(string)) {
        return STYLE_DOUBLE2;
      }
      return hasFoldableLine ? STYLE_FOLDED2 : STYLE_LITERAL2;
    }
    function writeScalar2(state, string, level, iskey) {
      state.dump = (function() {
        if (string.length === 0) {
          return "''";
        }
        if (!state.noCompatMode && DEPRECATED_BOOLEANS_SYNTAX2.indexOf(string) !== -1) {
          return "'" + string + "'";
        }
        var indent = state.indent * Math.max(1, level);
        var lineWidth = state.lineWidth === -1 ? -1 : Math.max(Math.min(state.lineWidth, 40), state.lineWidth - indent);
        var singleLineOnly = iskey || state.flowLevel > -1 && level >= state.flowLevel;
        function testAmbiguity(string2) {
          return testImplicitResolving2(state, string2);
        }
        switch (chooseScalarStyle2(string, singleLineOnly, state.indent, lineWidth, testAmbiguity)) {
          case STYLE_PLAIN2:
            return string;
          case STYLE_SINGLE2:
            return "'" + string.replace(/'/g, "''") + "'";
          case STYLE_LITERAL2:
            return "|" + blockHeader2(string, state.indent) + dropEndingNewline2(indentString2(string, indent));
          case STYLE_FOLDED2:
            return ">" + blockHeader2(string, state.indent) + dropEndingNewline2(indentString2(foldString2(string, lineWidth), indent));
          case STYLE_DOUBLE2:
            return '"' + escapeString2(string, lineWidth) + '"';
          default:
            throw new YAMLException2("impossible error: invalid scalar style");
        }
      })();
    }
    function blockHeader2(string, indentPerLevel) {
      var indentIndicator = needIndentIndicator2(string) ? String(indentPerLevel) : "";
      var clip = string[string.length - 1] === "\n";
      var keep = clip && (string[string.length - 2] === "\n" || string === "\n");
      var chomp = keep ? "+" : clip ? "" : "-";
      return indentIndicator + chomp + "\n";
    }
    function dropEndingNewline2(string) {
      return string[string.length - 1] === "\n" ? string.slice(0, -1) : string;
    }
    function foldString2(string, width) {
      var lineRe = /(\n+)([^\n]*)/g;
      var result2 = (function() {
        var nextLF = string.indexOf("\n");
        nextLF = nextLF !== -1 ? nextLF : string.length;
        lineRe.lastIndex = nextLF;
        return foldLine2(string.slice(0, nextLF), width);
      })();
      var prevMoreIndented = string[0] === "\n" || string[0] === " ";
      var moreIndented;
      var match;
      while (match = lineRe.exec(string)) {
        var prefix = match[1], line = match[2];
        moreIndented = line[0] === " ";
        result2 += prefix + (!prevMoreIndented && !moreIndented && line !== "" ? "\n" : "") + foldLine2(line, width);
        prevMoreIndented = moreIndented;
      }
      return result2;
    }
    function foldLine2(line, width) {
      if (line === "" || line[0] === " ") return line;
      var breakRe = / [^ ]/g;
      var match;
      var start = 0, end, curr = 0, next2 = 0;
      var result2 = "";
      while (match = breakRe.exec(line)) {
        next2 = match.index;
        if (next2 - start > width) {
          end = curr > start ? curr : next2;
          result2 += "\n" + line.slice(start, end);
          start = end + 1;
        }
        curr = next2;
      }
      result2 += "\n";
      if (line.length - start > width && curr > start) {
        result2 += line.slice(start, curr) + "\n" + line.slice(curr + 1);
      } else {
        result2 += line.slice(start);
      }
      return result2.slice(1);
    }
    function escapeString2(string) {
      var result2 = "";
      var char, nextChar;
      var escapeSeq;
      for (var i2 = 0; i2 < string.length; i2++) {
        char = string.charCodeAt(i2);
        if (char >= 55296 && char <= 56319) {
          nextChar = string.charCodeAt(i2 + 1);
          if (nextChar >= 56320 && nextChar <= 57343) {
            result2 += encodeHex2((char - 55296) * 1024 + nextChar - 56320 + 65536);
            i2++;
            continue;
          }
        }
        escapeSeq = ESCAPE_SEQUENCES2[char];
        result2 += !escapeSeq && isPrintable2(char) ? string[i2] : escapeSeq || encodeHex2(char);
      }
      return result2;
    }
    function writeFlowSequence2(state, level, object) {
      var _result = "", _tag = state.tag, index, length;
      for (index = 0, length = object.length; index < length; index += 1) {
        if (writeNode2(state, level, object[index], false, false)) {
          if (index !== 0) _result += "," + (!state.condenseFlow ? " " : "");
          _result += state.dump;
        }
      }
      state.tag = _tag;
      state.dump = "[" + _result + "]";
    }
    function writeBlockSequence2(state, level, object, compact) {
      var _result = "", _tag = state.tag, index, length;
      for (index = 0, length = object.length; index < length; index += 1) {
        if (writeNode2(state, level + 1, object[index], true, true)) {
          if (!compact || index !== 0) {
            _result += generateNextLine2(state, level);
          }
          if (state.dump && CHAR_LINE_FEED2 === state.dump.charCodeAt(0)) {
            _result += "-";
          } else {
            _result += "- ";
          }
          _result += state.dump;
        }
      }
      state.tag = _tag;
      state.dump = _result || "[]";
    }
    function writeFlowMapping2(state, level, object) {
      var _result = "", _tag = state.tag, objectKeyList = Object.keys(object), index, length, objectKey, objectValue, pairBuffer;
      for (index = 0, length = objectKeyList.length; index < length; index += 1) {
        pairBuffer = "";
        if (index !== 0) pairBuffer += ", ";
        if (state.condenseFlow) pairBuffer += '"';
        objectKey = objectKeyList[index];
        objectValue = object[objectKey];
        if (!writeNode2(state, level, objectKey, false, false)) {
          continue;
        }
        if (state.dump.length > 1024) pairBuffer += "? ";
        pairBuffer += state.dump + (state.condenseFlow ? '"' : "") + ":" + (state.condenseFlow ? "" : " ");
        if (!writeNode2(state, level, objectValue, false, false)) {
          continue;
        }
        pairBuffer += state.dump;
        _result += pairBuffer;
      }
      state.tag = _tag;
      state.dump = "{" + _result + "}";
    }
    function writeBlockMapping2(state, level, object, compact) {
      var _result = "", _tag = state.tag, objectKeyList = Object.keys(object), index, length, objectKey, objectValue, explicitPair, pairBuffer;
      if (state.sortKeys === true) {
        objectKeyList.sort();
      } else if (typeof state.sortKeys === "function") {
        objectKeyList.sort(state.sortKeys);
      } else if (state.sortKeys) {
        throw new YAMLException2("sortKeys must be a boolean or a function");
      }
      for (index = 0, length = objectKeyList.length; index < length; index += 1) {
        pairBuffer = "";
        if (!compact || index !== 0) {
          pairBuffer += generateNextLine2(state, level);
        }
        objectKey = objectKeyList[index];
        objectValue = object[objectKey];
        if (!writeNode2(state, level + 1, objectKey, true, true, true)) {
          continue;
        }
        explicitPair = state.tag !== null && state.tag !== "?" || state.dump && state.dump.length > 1024;
        if (explicitPair) {
          if (state.dump && CHAR_LINE_FEED2 === state.dump.charCodeAt(0)) {
            pairBuffer += "?";
          } else {
            pairBuffer += "? ";
          }
        }
        pairBuffer += state.dump;
        if (explicitPair) {
          pairBuffer += generateNextLine2(state, level);
        }
        if (!writeNode2(state, level + 1, objectValue, true, explicitPair)) {
          continue;
        }
        if (state.dump && CHAR_LINE_FEED2 === state.dump.charCodeAt(0)) {
          pairBuffer += ":";
        } else {
          pairBuffer += ": ";
        }
        pairBuffer += state.dump;
        _result += pairBuffer;
      }
      state.tag = _tag;
      state.dump = _result || "{}";
    }
    function detectType2(state, object, explicit) {
      var _result, typeList, index, length, type4, style;
      typeList = explicit ? state.explicitTypes : state.implicitTypes;
      for (index = 0, length = typeList.length; index < length; index += 1) {
        type4 = typeList[index];
        if ((type4.instanceOf || type4.predicate) && (!type4.instanceOf || typeof object === "object" && object instanceof type4.instanceOf) && (!type4.predicate || type4.predicate(object))) {
          state.tag = explicit ? type4.tag : "?";
          if (type4.represent) {
            style = state.styleMap[type4.tag] || type4.defaultStyle;
            if (_toString3.call(type4.represent) === "[object Function]") {
              _result = type4.represent(object, style);
            } else if (_hasOwnProperty2.call(type4.represent, style)) {
              _result = type4.represent[style](object, style);
            } else {
              throw new YAMLException2("!<" + type4.tag + '> tag resolver accepts not "' + style + '" style');
            }
            state.dump = _result;
          }
          return true;
        }
      }
      return false;
    }
    function writeNode2(state, level, object, block, compact, iskey) {
      state.tag = null;
      state.dump = object;
      if (!detectType2(state, object, false)) {
        detectType2(state, object, true);
      }
      var type4 = _toString3.call(state.dump);
      if (block) {
        block = state.flowLevel < 0 || state.flowLevel > level;
      }
      var objectOrArray = type4 === "[object Object]" || type4 === "[object Array]", duplicateIndex, duplicate;
      if (objectOrArray) {
        duplicateIndex = state.duplicates.indexOf(object);
        duplicate = duplicateIndex !== -1;
      }
      if (state.tag !== null && state.tag !== "?" || duplicate || state.indent !== 2 && level > 0) {
        compact = false;
      }
      if (duplicate && state.usedDuplicates[duplicateIndex]) {
        state.dump = "*ref_" + duplicateIndex;
      } else {
        if (objectOrArray && duplicate && !state.usedDuplicates[duplicateIndex]) {
          state.usedDuplicates[duplicateIndex] = true;
        }
        if (type4 === "[object Object]") {
          if (block && Object.keys(state.dump).length !== 0) {
            writeBlockMapping2(state, level, state.dump, compact);
            if (duplicate) {
              state.dump = "&ref_" + duplicateIndex + state.dump;
            }
          } else {
            writeFlowMapping2(state, level, state.dump);
            if (duplicate) {
              state.dump = "&ref_" + duplicateIndex + " " + state.dump;
            }
          }
        } else if (type4 === "[object Array]") {
          var arrayLevel = state.noArrayIndent && level > 0 ? level - 1 : level;
          if (block && state.dump.length !== 0) {
            writeBlockSequence2(state, arrayLevel, state.dump, compact);
            if (duplicate) {
              state.dump = "&ref_" + duplicateIndex + state.dump;
            }
          } else {
            writeFlowSequence2(state, arrayLevel, state.dump);
            if (duplicate) {
              state.dump = "&ref_" + duplicateIndex + " " + state.dump;
            }
          }
        } else if (type4 === "[object String]") {
          if (state.tag !== "?") {
            writeScalar2(state, state.dump, level, iskey);
          }
        } else {
          if (state.skipInvalid) return false;
          throw new YAMLException2("unacceptable kind of an object to dump " + type4);
        }
        if (state.tag !== null && state.tag !== "?") {
          state.dump = "!<" + state.tag + "> " + state.dump;
        }
      }
      return true;
    }
    function getDuplicateReferences2(object, state) {
      var objects = [], duplicatesIndexes = [], index, length;
      inspectNode2(object, objects, duplicatesIndexes);
      for (index = 0, length = duplicatesIndexes.length; index < length; index += 1) {
        state.duplicates.push(objects[duplicatesIndexes[index]]);
      }
      state.usedDuplicates = new Array(length);
    }
    function inspectNode2(object, objects, duplicatesIndexes) {
      var objectKeyList, index, length;
      if (object !== null && typeof object === "object") {
        index = objects.indexOf(object);
        if (index !== -1) {
          if (duplicatesIndexes.indexOf(index) === -1) {
            duplicatesIndexes.push(index);
          }
        } else {
          objects.push(object);
          if (Array.isArray(object)) {
            for (index = 0, length = object.length; index < length; index += 1) {
              inspectNode2(object[index], objects, duplicatesIndexes);
            }
          } else {
            objectKeyList = Object.keys(object);
            for (index = 0, length = objectKeyList.length; index < length; index += 1) {
              inspectNode2(object[objectKeyList[index]], objects, duplicatesIndexes);
            }
          }
        }
      }
    }
    function dump2(input, options) {
      options = options || {};
      var state = new State2(options);
      if (!state.noRefs) getDuplicateReferences2(input, state);
      if (writeNode2(state, 0, input, true, true)) return state.dump + "\n";
      return "";
    }
    function safeDump2(input, options) {
      return dump2(input, common3.extend({ schema: DEFAULT_SAFE_SCHEMA }, options));
    }
    module2.exports.dump = dump2;
    module2.exports.safeDump = safeDump2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml.js
var require_js_yaml = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/lib/js-yaml.js"(exports2, module2) {
    "use strict";
    var loader2 = require_loader();
    var dumper2 = require_dumper();
    function deprecated(name) {
      return function() {
        throw new Error("Function " + name + " is deprecated and cannot be used.");
      };
    }
    module2.exports.Type = require_type();
    module2.exports.Schema = require_schema();
    module2.exports.FAILSAFE_SCHEMA = require_failsafe();
    module2.exports.JSON_SCHEMA = require_json2();
    module2.exports.CORE_SCHEMA = require_core2();
    module2.exports.DEFAULT_SAFE_SCHEMA = require_default_safe();
    module2.exports.DEFAULT_FULL_SCHEMA = require_default_full();
    module2.exports.load = loader2.load;
    module2.exports.loadAll = loader2.loadAll;
    module2.exports.safeLoad = loader2.safeLoad;
    module2.exports.safeLoadAll = loader2.safeLoadAll;
    module2.exports.dump = dumper2.dump;
    module2.exports.safeDump = dumper2.safeDump;
    module2.exports.YAMLException = require_exception();
    module2.exports.MINIMAL_SCHEMA = require_failsafe();
    module2.exports.SAFE_SCHEMA = require_default_safe();
    module2.exports.DEFAULT_SCHEMA = require_default_full();
    module2.exports.scan = deprecated("scan");
    module2.exports.parse = deprecated("parse");
    module2.exports.compose = deprecated("compose");
    module2.exports.addConstructor = deprecated("addConstructor");
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/index.js
var require_js_yaml2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/js-yaml/3.14.2/739754c9b7774f504c167d7b8fc2947edcb6e1369c3ecce1804c8434b69f671e/node_modules/js-yaml/index.js"(exports2, module2) {
    "use strict";
    var yaml3 = require_js_yaml();
    module2.exports = yaml3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/parsers/3.0.3/256d7e0f058743ef9e1fa29a3e732a48a8e23e7bf0a89171d56f1a19aa7e2f76/node_modules/@yarnpkg/parsers/lib/grammars/syml.js
var require_syml = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/parsers/3.0.3/256d7e0f058743ef9e1fa29a3e732a48a8e23e7bf0a89171d56f1a19aa7e2f76/node_modules/@yarnpkg/parsers/lib/grammars/syml.js"(exports2, module2) {
    "use strict";
    function peg$subclass(child, parent) {
      function ctor() {
        this.constructor = child;
      }
      ctor.prototype = parent.prototype;
      child.prototype = new ctor();
    }
    function peg$SyntaxError(message, expected, found, location) {
      this.message = message;
      this.expected = expected;
      this.found = found;
      this.location = location;
      this.name = "SyntaxError";
      if (typeof Error.captureStackTrace === "function") {
        Error.captureStackTrace(this, peg$SyntaxError);
      }
    }
    peg$subclass(peg$SyntaxError, Error);
    peg$SyntaxError.buildMessage = function(expected, found) {
      var DESCRIBE_EXPECTATION_FNS = {
        literal: function(expectation) {
          return '"' + literalEscape(expectation.text) + '"';
        },
        "class": function(expectation) {
          var escapedParts = "", i2;
          for (i2 = 0; i2 < expectation.parts.length; i2++) {
            escapedParts += expectation.parts[i2] instanceof Array ? classEscape(expectation.parts[i2][0]) + "-" + classEscape(expectation.parts[i2][1]) : classEscape(expectation.parts[i2]);
          }
          return "[" + (expectation.inverted ? "^" : "") + escapedParts + "]";
        },
        any: function(expectation) {
          return "any character";
        },
        end: function(expectation) {
          return "end of input";
        },
        other: function(expectation) {
          return expectation.description;
        }
      };
      function hex(ch) {
        return ch.charCodeAt(0).toString(16).toUpperCase();
      }
      function literalEscape(s) {
        return s.replace(/\\/g, "\\\\").replace(/"/g, '\\"').replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(ch) {
          return "\\x0" + hex(ch);
        }).replace(/[\x10-\x1F\x7F-\x9F]/g, function(ch) {
          return "\\x" + hex(ch);
        });
      }
      function classEscape(s) {
        return s.replace(/\\/g, "\\\\").replace(/\]/g, "\\]").replace(/\^/g, "\\^").replace(/-/g, "\\-").replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(ch) {
          return "\\x0" + hex(ch);
        }).replace(/[\x10-\x1F\x7F-\x9F]/g, function(ch) {
          return "\\x" + hex(ch);
        });
      }
      function describeExpectation(expectation) {
        return DESCRIBE_EXPECTATION_FNS[expectation.type](expectation);
      }
      function describeExpected(expected2) {
        var descriptions = new Array(expected2.length), i2, j2;
        for (i2 = 0; i2 < expected2.length; i2++) {
          descriptions[i2] = describeExpectation(expected2[i2]);
        }
        descriptions.sort();
        if (descriptions.length > 0) {
          for (i2 = 1, j2 = 1; i2 < descriptions.length; i2++) {
            if (descriptions[i2 - 1] !== descriptions[i2]) {
              descriptions[j2] = descriptions[i2];
              j2++;
            }
          }
          descriptions.length = j2;
        }
        switch (descriptions.length) {
          case 1:
            return descriptions[0];
          case 2:
            return descriptions[0] + " or " + descriptions[1];
          default:
            return descriptions.slice(0, -1).join(", ") + ", or " + descriptions[descriptions.length - 1];
        }
      }
      function describeFound(found2) {
        return found2 ? '"' + literalEscape(found2) + '"' : "end of input";
      }
      return "Expected " + describeExpected(expected) + " but " + describeFound(found) + " found.";
    };
    function peg$parse(input, options) {
      options = options !== void 0 ? options : {};
      var peg$FAILED = {}, peg$startRuleFunctions = { Start: peg$parseStart }, peg$startRuleFunction = peg$parseStart, peg$c0 = function(statements) {
        return [].concat(...statements);
      }, peg$c1 = "-", peg$c2 = peg$literalExpectation("-", false), peg$c3 = function(value) {
        return value;
      }, peg$c4 = function(statements) {
        return Object.assign({}, ...statements);
      }, peg$c5 = "#", peg$c6 = peg$literalExpectation("#", false), peg$c7 = peg$anyExpectation(), peg$c8 = function() {
        return {};
      }, peg$c9 = ":", peg$c10 = peg$literalExpectation(":", false), peg$c11 = function(property, value) {
        return { [property]: value };
      }, peg$c12 = ",", peg$c13 = peg$literalExpectation(",", false), peg$c14 = function(property, other) {
        return other;
      }, peg$c15 = function(property, others, value) {
        return Object.assign({}, ...[property].concat(others).map((property2) => ({ [property2]: value })));
      }, peg$c16 = function(statements) {
        return statements;
      }, peg$c17 = function(expression) {
        return expression;
      }, peg$c18 = peg$otherExpectation("correct indentation"), peg$c19 = " ", peg$c20 = peg$literalExpectation(" ", false), peg$c21 = function(spaces) {
        return spaces.length === indentLevel * INDENT_STEP;
      }, peg$c22 = function(spaces) {
        return spaces.length === (indentLevel + 1) * INDENT_STEP;
      }, peg$c23 = function() {
        indentLevel++;
        return true;
      }, peg$c24 = function() {
        indentLevel--;
        return true;
      }, peg$c25 = function() {
        return text();
      }, peg$c26 = peg$otherExpectation("pseudostring"), peg$c27 = /^[^\r\n\t ?:,\][{}#&*!|>'"%@`\-]/, peg$c28 = peg$classExpectation(["\r", "\n", "	", " ", "?", ":", ",", "]", "[", "{", "}", "#", "&", "*", "!", "|", ">", "'", '"', "%", "@", "`", "-"], true, false), peg$c29 = /^[^\r\n\t ,\][{}:#"']/, peg$c30 = peg$classExpectation(["\r", "\n", "	", " ", ",", "]", "[", "{", "}", ":", "#", '"', "'"], true, false), peg$c31 = function() {
        return text().replace(/^ *| *$/g, "");
      }, peg$c32 = "--", peg$c33 = peg$literalExpectation("--", false), peg$c34 = /^[a-zA-Z\/0-9]/, peg$c35 = peg$classExpectation([["a", "z"], ["A", "Z"], "/", ["0", "9"]], false, false), peg$c36 = /^[^\r\n\t :,]/, peg$c37 = peg$classExpectation(["\r", "\n", "	", " ", ":", ","], true, false), peg$c38 = "null", peg$c39 = peg$literalExpectation("null", false), peg$c40 = function() {
        return null;
      }, peg$c41 = "true", peg$c42 = peg$literalExpectation("true", false), peg$c43 = function() {
        return true;
      }, peg$c44 = "false", peg$c45 = peg$literalExpectation("false", false), peg$c46 = function() {
        return false;
      }, peg$c47 = peg$otherExpectation("string"), peg$c48 = '"', peg$c49 = peg$literalExpectation('"', false), peg$c50 = function() {
        return "";
      }, peg$c51 = function(chars) {
        return chars;
      }, peg$c52 = function(chars) {
        return chars.join(``);
      }, peg$c53 = /^[^"\\\0-\x1F\x7F]/, peg$c54 = peg$classExpectation(['"', "\\", ["\0", ""], "\x7F"], true, false), peg$c55 = '\\"', peg$c56 = peg$literalExpectation('\\"', false), peg$c57 = function() {
        return `"`;
      }, peg$c58 = "\\\\", peg$c59 = peg$literalExpectation("\\\\", false), peg$c60 = function() {
        return `\\`;
      }, peg$c61 = "\\/", peg$c62 = peg$literalExpectation("\\/", false), peg$c63 = function() {
        return `/`;
      }, peg$c64 = "\\b", peg$c65 = peg$literalExpectation("\\b", false), peg$c66 = function() {
        return `\b`;
      }, peg$c67 = "\\f", peg$c68 = peg$literalExpectation("\\f", false), peg$c69 = function() {
        return `\f`;
      }, peg$c70 = "\\n", peg$c71 = peg$literalExpectation("\\n", false), peg$c72 = function() {
        return `
`;
      }, peg$c73 = "\\r", peg$c74 = peg$literalExpectation("\\r", false), peg$c75 = function() {
        return `\r`;
      }, peg$c76 = "\\t", peg$c77 = peg$literalExpectation("\\t", false), peg$c78 = function() {
        return `	`;
      }, peg$c79 = "\\u", peg$c80 = peg$literalExpectation("\\u", false), peg$c81 = function(h1, h2, h3, h4) {
        return String.fromCharCode(parseInt(`0x${h1}${h2}${h3}${h4}`));
      }, peg$c82 = /^[0-9a-fA-F]/, peg$c83 = peg$classExpectation([["0", "9"], ["a", "f"], ["A", "F"]], false, false), peg$c84 = peg$otherExpectation("blank space"), peg$c85 = /^[ \t]/, peg$c86 = peg$classExpectation([" ", "	"], false, false), peg$c87 = peg$otherExpectation("white space"), peg$c88 = /^[ \t\n\r]/, peg$c89 = peg$classExpectation([" ", "	", "\n", "\r"], false, false), peg$c90 = "\r\n", peg$c91 = peg$literalExpectation("\r\n", false), peg$c92 = "\n", peg$c93 = peg$literalExpectation("\n", false), peg$c94 = "\r", peg$c95 = peg$literalExpectation("\r", false), peg$currPos = 0, peg$savedPos = 0, peg$posDetailsCache = [{ line: 1, column: 1 }], peg$maxFailPos = 0, peg$maxFailExpected = [], peg$silentFails = 0, peg$result;
      if ("startRule" in options) {
        if (!(options.startRule in peg$startRuleFunctions)) {
          throw new Error(`Can't start parsing from rule "` + options.startRule + '".');
        }
        peg$startRuleFunction = peg$startRuleFunctions[options.startRule];
      }
      function text() {
        return input.substring(peg$savedPos, peg$currPos);
      }
      function location() {
        return peg$computeLocation(peg$savedPos, peg$currPos);
      }
      function expected(description, location2) {
        location2 = location2 !== void 0 ? location2 : peg$computeLocation(peg$savedPos, peg$currPos);
        throw peg$buildStructuredError(
          [peg$otherExpectation(description)],
          input.substring(peg$savedPos, peg$currPos),
          location2
        );
      }
      function error(message, location2) {
        location2 = location2 !== void 0 ? location2 : peg$computeLocation(peg$savedPos, peg$currPos);
        throw peg$buildSimpleError(message, location2);
      }
      function peg$literalExpectation(text2, ignoreCase) {
        return { type: "literal", text: text2, ignoreCase };
      }
      function peg$classExpectation(parts, inverted, ignoreCase) {
        return { type: "class", parts, inverted, ignoreCase };
      }
      function peg$anyExpectation() {
        return { type: "any" };
      }
      function peg$endExpectation() {
        return { type: "end" };
      }
      function peg$otherExpectation(description) {
        return { type: "other", description };
      }
      function peg$computePosDetails(pos) {
        var details = peg$posDetailsCache[pos], p;
        if (details) {
          return details;
        } else {
          p = pos - 1;
          while (!peg$posDetailsCache[p]) {
            p--;
          }
          details = peg$posDetailsCache[p];
          details = {
            line: details.line,
            column: details.column
          };
          while (p < pos) {
            if (input.charCodeAt(p) === 10) {
              details.line++;
              details.column = 1;
            } else {
              details.column++;
            }
            p++;
          }
          peg$posDetailsCache[pos] = details;
          return details;
        }
      }
      function peg$computeLocation(startPos, endPos) {
        var startPosDetails = peg$computePosDetails(startPos), endPosDetails = peg$computePosDetails(endPos);
        return {
          start: {
            offset: startPos,
            line: startPosDetails.line,
            column: startPosDetails.column
          },
          end: {
            offset: endPos,
            line: endPosDetails.line,
            column: endPosDetails.column
          }
        };
      }
      function peg$fail(expected2) {
        if (peg$currPos < peg$maxFailPos) {
          return;
        }
        if (peg$currPos > peg$maxFailPos) {
          peg$maxFailPos = peg$currPos;
          peg$maxFailExpected = [];
        }
        peg$maxFailExpected.push(expected2);
      }
      function peg$buildSimpleError(message, location2) {
        return new peg$SyntaxError(message, null, null, location2);
      }
      function peg$buildStructuredError(expected2, found, location2) {
        return new peg$SyntaxError(
          peg$SyntaxError.buildMessage(expected2, found),
          expected2,
          found,
          location2
        );
      }
      function peg$parseStart() {
        var s0;
        s0 = peg$parsePropertyStatements();
        return s0;
      }
      function peg$parseItemStatements() {
        var s0, s1, s2;
        s0 = peg$currPos;
        s1 = [];
        s2 = peg$parseItemStatement();
        while (s2 !== peg$FAILED) {
          s1.push(s2);
          s2 = peg$parseItemStatement();
        }
        if (s1 !== peg$FAILED) {
          peg$savedPos = s0;
          s1 = peg$c0(s1);
        }
        s0 = s1;
        return s0;
      }
      function peg$parseItemStatement() {
        var s0, s1, s2, s3, s4;
        s0 = peg$currPos;
        s1 = peg$parseSamedent();
        if (s1 !== peg$FAILED) {
          if (input.charCodeAt(peg$currPos) === 45) {
            s2 = peg$c1;
            peg$currPos++;
          } else {
            s2 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c2);
            }
          }
          if (s2 !== peg$FAILED) {
            s3 = peg$parseB();
            if (s3 !== peg$FAILED) {
              s4 = peg$parseExpression();
              if (s4 !== peg$FAILED) {
                peg$savedPos = s0;
                s1 = peg$c3(s4);
                s0 = s1;
              } else {
                peg$currPos = s0;
                s0 = peg$FAILED;
              }
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        return s0;
      }
      function peg$parsePropertyStatements() {
        var s0, s1, s2;
        s0 = peg$currPos;
        s1 = [];
        s2 = peg$parsePropertyStatement();
        while (s2 !== peg$FAILED) {
          s1.push(s2);
          s2 = peg$parsePropertyStatement();
        }
        if (s1 !== peg$FAILED) {
          peg$savedPos = s0;
          s1 = peg$c4(s1);
        }
        s0 = s1;
        return s0;
      }
      function peg$parsePropertyStatement() {
        var s0, s1, s2, s3, s4, s5, s6, s7, s8;
        s0 = peg$currPos;
        s1 = peg$parseB();
        if (s1 === peg$FAILED) {
          s1 = null;
        }
        if (s1 !== peg$FAILED) {
          s2 = peg$currPos;
          if (input.charCodeAt(peg$currPos) === 35) {
            s3 = peg$c5;
            peg$currPos++;
          } else {
            s3 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c6);
            }
          }
          if (s3 !== peg$FAILED) {
            s4 = [];
            s5 = peg$currPos;
            s6 = peg$currPos;
            peg$silentFails++;
            s7 = peg$parseEOL();
            peg$silentFails--;
            if (s7 === peg$FAILED) {
              s6 = void 0;
            } else {
              peg$currPos = s6;
              s6 = peg$FAILED;
            }
            if (s6 !== peg$FAILED) {
              if (input.length > peg$currPos) {
                s7 = input.charAt(peg$currPos);
                peg$currPos++;
              } else {
                s7 = peg$FAILED;
                if (peg$silentFails === 0) {
                  peg$fail(peg$c7);
                }
              }
              if (s7 !== peg$FAILED) {
                s6 = [s6, s7];
                s5 = s6;
              } else {
                peg$currPos = s5;
                s5 = peg$FAILED;
              }
            } else {
              peg$currPos = s5;
              s5 = peg$FAILED;
            }
            if (s5 !== peg$FAILED) {
              while (s5 !== peg$FAILED) {
                s4.push(s5);
                s5 = peg$currPos;
                s6 = peg$currPos;
                peg$silentFails++;
                s7 = peg$parseEOL();
                peg$silentFails--;
                if (s7 === peg$FAILED) {
                  s6 = void 0;
                } else {
                  peg$currPos = s6;
                  s6 = peg$FAILED;
                }
                if (s6 !== peg$FAILED) {
                  if (input.length > peg$currPos) {
                    s7 = input.charAt(peg$currPos);
                    peg$currPos++;
                  } else {
                    s7 = peg$FAILED;
                    if (peg$silentFails === 0) {
                      peg$fail(peg$c7);
                    }
                  }
                  if (s7 !== peg$FAILED) {
                    s6 = [s6, s7];
                    s5 = s6;
                  } else {
                    peg$currPos = s5;
                    s5 = peg$FAILED;
                  }
                } else {
                  peg$currPos = s5;
                  s5 = peg$FAILED;
                }
              }
            } else {
              s4 = peg$FAILED;
            }
            if (s4 !== peg$FAILED) {
              s3 = [s3, s4];
              s2 = s3;
            } else {
              peg$currPos = s2;
              s2 = peg$FAILED;
            }
          } else {
            peg$currPos = s2;
            s2 = peg$FAILED;
          }
          if (s2 === peg$FAILED) {
            s2 = null;
          }
          if (s2 !== peg$FAILED) {
            s3 = [];
            s4 = peg$parseEOL_ANY();
            if (s4 !== peg$FAILED) {
              while (s4 !== peg$FAILED) {
                s3.push(s4);
                s4 = peg$parseEOL_ANY();
              }
            } else {
              s3 = peg$FAILED;
            }
            if (s3 !== peg$FAILED) {
              peg$savedPos = s0;
              s1 = peg$c8();
              s0 = s1;
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        if (s0 === peg$FAILED) {
          s0 = peg$currPos;
          s1 = peg$parseSamedent();
          if (s1 !== peg$FAILED) {
            s2 = peg$parseName();
            if (s2 !== peg$FAILED) {
              s3 = peg$parseB();
              if (s3 === peg$FAILED) {
                s3 = null;
              }
              if (s3 !== peg$FAILED) {
                if (input.charCodeAt(peg$currPos) === 58) {
                  s4 = peg$c9;
                  peg$currPos++;
                } else {
                  s4 = peg$FAILED;
                  if (peg$silentFails === 0) {
                    peg$fail(peg$c10);
                  }
                }
                if (s4 !== peg$FAILED) {
                  s5 = peg$parseB();
                  if (s5 === peg$FAILED) {
                    s5 = null;
                  }
                  if (s5 !== peg$FAILED) {
                    s6 = peg$parseExpression();
                    if (s6 !== peg$FAILED) {
                      peg$savedPos = s0;
                      s1 = peg$c11(s2, s6);
                      s0 = s1;
                    } else {
                      peg$currPos = s0;
                      s0 = peg$FAILED;
                    }
                  } else {
                    peg$currPos = s0;
                    s0 = peg$FAILED;
                  }
                } else {
                  peg$currPos = s0;
                  s0 = peg$FAILED;
                }
              } else {
                peg$currPos = s0;
                s0 = peg$FAILED;
              }
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
          if (s0 === peg$FAILED) {
            s0 = peg$currPos;
            s1 = peg$parseSamedent();
            if (s1 !== peg$FAILED) {
              s2 = peg$parseLegacyName();
              if (s2 !== peg$FAILED) {
                s3 = peg$parseB();
                if (s3 === peg$FAILED) {
                  s3 = null;
                }
                if (s3 !== peg$FAILED) {
                  if (input.charCodeAt(peg$currPos) === 58) {
                    s4 = peg$c9;
                    peg$currPos++;
                  } else {
                    s4 = peg$FAILED;
                    if (peg$silentFails === 0) {
                      peg$fail(peg$c10);
                    }
                  }
                  if (s4 !== peg$FAILED) {
                    s5 = peg$parseB();
                    if (s5 === peg$FAILED) {
                      s5 = null;
                    }
                    if (s5 !== peg$FAILED) {
                      s6 = peg$parseExpression();
                      if (s6 !== peg$FAILED) {
                        peg$savedPos = s0;
                        s1 = peg$c11(s2, s6);
                        s0 = s1;
                      } else {
                        peg$currPos = s0;
                        s0 = peg$FAILED;
                      }
                    } else {
                      peg$currPos = s0;
                      s0 = peg$FAILED;
                    }
                  } else {
                    peg$currPos = s0;
                    s0 = peg$FAILED;
                  }
                } else {
                  peg$currPos = s0;
                  s0 = peg$FAILED;
                }
              } else {
                peg$currPos = s0;
                s0 = peg$FAILED;
              }
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
            if (s0 === peg$FAILED) {
              s0 = peg$currPos;
              s1 = peg$parseSamedent();
              if (s1 !== peg$FAILED) {
                s2 = peg$parseLegacyName();
                if (s2 !== peg$FAILED) {
                  s3 = peg$parseB();
                  if (s3 !== peg$FAILED) {
                    s4 = peg$parseLegacyLiteral();
                    if (s4 !== peg$FAILED) {
                      s5 = [];
                      s6 = peg$parseEOL_ANY();
                      if (s6 !== peg$FAILED) {
                        while (s6 !== peg$FAILED) {
                          s5.push(s6);
                          s6 = peg$parseEOL_ANY();
                        }
                      } else {
                        s5 = peg$FAILED;
                      }
                      if (s5 !== peg$FAILED) {
                        peg$savedPos = s0;
                        s1 = peg$c11(s2, s4);
                        s0 = s1;
                      } else {
                        peg$currPos = s0;
                        s0 = peg$FAILED;
                      }
                    } else {
                      peg$currPos = s0;
                      s0 = peg$FAILED;
                    }
                  } else {
                    peg$currPos = s0;
                    s0 = peg$FAILED;
                  }
                } else {
                  peg$currPos = s0;
                  s0 = peg$FAILED;
                }
              } else {
                peg$currPos = s0;
                s0 = peg$FAILED;
              }
              if (s0 === peg$FAILED) {
                s0 = peg$currPos;
                s1 = peg$parseSamedent();
                if (s1 !== peg$FAILED) {
                  s2 = peg$parseLegacyName();
                  if (s2 !== peg$FAILED) {
                    s3 = [];
                    s4 = peg$currPos;
                    s5 = peg$parseB();
                    if (s5 === peg$FAILED) {
                      s5 = null;
                    }
                    if (s5 !== peg$FAILED) {
                      if (input.charCodeAt(peg$currPos) === 44) {
                        s6 = peg$c12;
                        peg$currPos++;
                      } else {
                        s6 = peg$FAILED;
                        if (peg$silentFails === 0) {
                          peg$fail(peg$c13);
                        }
                      }
                      if (s6 !== peg$FAILED) {
                        s7 = peg$parseB();
                        if (s7 === peg$FAILED) {
                          s7 = null;
                        }
                        if (s7 !== peg$FAILED) {
                          s8 = peg$parseLegacyName();
                          if (s8 !== peg$FAILED) {
                            peg$savedPos = s4;
                            s5 = peg$c14(s2, s8);
                            s4 = s5;
                          } else {
                            peg$currPos = s4;
                            s4 = peg$FAILED;
                          }
                        } else {
                          peg$currPos = s4;
                          s4 = peg$FAILED;
                        }
                      } else {
                        peg$currPos = s4;
                        s4 = peg$FAILED;
                      }
                    } else {
                      peg$currPos = s4;
                      s4 = peg$FAILED;
                    }
                    if (s4 !== peg$FAILED) {
                      while (s4 !== peg$FAILED) {
                        s3.push(s4);
                        s4 = peg$currPos;
                        s5 = peg$parseB();
                        if (s5 === peg$FAILED) {
                          s5 = null;
                        }
                        if (s5 !== peg$FAILED) {
                          if (input.charCodeAt(peg$currPos) === 44) {
                            s6 = peg$c12;
                            peg$currPos++;
                          } else {
                            s6 = peg$FAILED;
                            if (peg$silentFails === 0) {
                              peg$fail(peg$c13);
                            }
                          }
                          if (s6 !== peg$FAILED) {
                            s7 = peg$parseB();
                            if (s7 === peg$FAILED) {
                              s7 = null;
                            }
                            if (s7 !== peg$FAILED) {
                              s8 = peg$parseLegacyName();
                              if (s8 !== peg$FAILED) {
                                peg$savedPos = s4;
                                s5 = peg$c14(s2, s8);
                                s4 = s5;
                              } else {
                                peg$currPos = s4;
                                s4 = peg$FAILED;
                              }
                            } else {
                              peg$currPos = s4;
                              s4 = peg$FAILED;
                            }
                          } else {
                            peg$currPos = s4;
                            s4 = peg$FAILED;
                          }
                        } else {
                          peg$currPos = s4;
                          s4 = peg$FAILED;
                        }
                      }
                    } else {
                      s3 = peg$FAILED;
                    }
                    if (s3 !== peg$FAILED) {
                      s4 = peg$parseB();
                      if (s4 === peg$FAILED) {
                        s4 = null;
                      }
                      if (s4 !== peg$FAILED) {
                        if (input.charCodeAt(peg$currPos) === 58) {
                          s5 = peg$c9;
                          peg$currPos++;
                        } else {
                          s5 = peg$FAILED;
                          if (peg$silentFails === 0) {
                            peg$fail(peg$c10);
                          }
                        }
                        if (s5 !== peg$FAILED) {
                          s6 = peg$parseB();
                          if (s6 === peg$FAILED) {
                            s6 = null;
                          }
                          if (s6 !== peg$FAILED) {
                            s7 = peg$parseExpression();
                            if (s7 !== peg$FAILED) {
                              peg$savedPos = s0;
                              s1 = peg$c15(s2, s3, s7);
                              s0 = s1;
                            } else {
                              peg$currPos = s0;
                              s0 = peg$FAILED;
                            }
                          } else {
                            peg$currPos = s0;
                            s0 = peg$FAILED;
                          }
                        } else {
                          peg$currPos = s0;
                          s0 = peg$FAILED;
                        }
                      } else {
                        peg$currPos = s0;
                        s0 = peg$FAILED;
                      }
                    } else {
                      peg$currPos = s0;
                      s0 = peg$FAILED;
                    }
                  } else {
                    peg$currPos = s0;
                    s0 = peg$FAILED;
                  }
                } else {
                  peg$currPos = s0;
                  s0 = peg$FAILED;
                }
              }
            }
          }
        }
        return s0;
      }
      function peg$parseExpression() {
        var s0, s1, s2, s3, s4, s5, s6;
        s0 = peg$currPos;
        s1 = peg$currPos;
        peg$silentFails++;
        s2 = peg$currPos;
        s3 = peg$parseEOL();
        if (s3 !== peg$FAILED) {
          s4 = peg$parseExtradent();
          if (s4 !== peg$FAILED) {
            if (input.charCodeAt(peg$currPos) === 45) {
              s5 = peg$c1;
              peg$currPos++;
            } else {
              s5 = peg$FAILED;
              if (peg$silentFails === 0) {
                peg$fail(peg$c2);
              }
            }
            if (s5 !== peg$FAILED) {
              s6 = peg$parseB();
              if (s6 !== peg$FAILED) {
                s3 = [s3, s4, s5, s6];
                s2 = s3;
              } else {
                peg$currPos = s2;
                s2 = peg$FAILED;
              }
            } else {
              peg$currPos = s2;
              s2 = peg$FAILED;
            }
          } else {
            peg$currPos = s2;
            s2 = peg$FAILED;
          }
        } else {
          peg$currPos = s2;
          s2 = peg$FAILED;
        }
        peg$silentFails--;
        if (s2 !== peg$FAILED) {
          peg$currPos = s1;
          s1 = void 0;
        } else {
          s1 = peg$FAILED;
        }
        if (s1 !== peg$FAILED) {
          s2 = peg$parseEOL_ANY();
          if (s2 !== peg$FAILED) {
            s3 = peg$parseIndent();
            if (s3 !== peg$FAILED) {
              s4 = peg$parseItemStatements();
              if (s4 !== peg$FAILED) {
                s5 = peg$parseDedent();
                if (s5 !== peg$FAILED) {
                  peg$savedPos = s0;
                  s1 = peg$c16(s4);
                  s0 = s1;
                } else {
                  peg$currPos = s0;
                  s0 = peg$FAILED;
                }
              } else {
                peg$currPos = s0;
                s0 = peg$FAILED;
              }
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        if (s0 === peg$FAILED) {
          s0 = peg$currPos;
          s1 = peg$parseEOL();
          if (s1 !== peg$FAILED) {
            s2 = peg$parseIndent();
            if (s2 !== peg$FAILED) {
              s3 = peg$parsePropertyStatements();
              if (s3 !== peg$FAILED) {
                s4 = peg$parseDedent();
                if (s4 !== peg$FAILED) {
                  peg$savedPos = s0;
                  s1 = peg$c16(s3);
                  s0 = s1;
                } else {
                  peg$currPos = s0;
                  s0 = peg$FAILED;
                }
              } else {
                peg$currPos = s0;
                s0 = peg$FAILED;
              }
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
          if (s0 === peg$FAILED) {
            s0 = peg$currPos;
            s1 = peg$parseLiteral();
            if (s1 !== peg$FAILED) {
              s2 = [];
              s3 = peg$parseEOL_ANY();
              if (s3 !== peg$FAILED) {
                while (s3 !== peg$FAILED) {
                  s2.push(s3);
                  s3 = peg$parseEOL_ANY();
                }
              } else {
                s2 = peg$FAILED;
              }
              if (s2 !== peg$FAILED) {
                peg$savedPos = s0;
                s1 = peg$c17(s1);
                s0 = s1;
              } else {
                peg$currPos = s0;
                s0 = peg$FAILED;
              }
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          }
        }
        return s0;
      }
      function peg$parseSamedent() {
        var s0, s1, s2;
        peg$silentFails++;
        s0 = peg$currPos;
        s1 = [];
        if (input.charCodeAt(peg$currPos) === 32) {
          s2 = peg$c19;
          peg$currPos++;
        } else {
          s2 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c20);
          }
        }
        while (s2 !== peg$FAILED) {
          s1.push(s2);
          if (input.charCodeAt(peg$currPos) === 32) {
            s2 = peg$c19;
            peg$currPos++;
          } else {
            s2 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c20);
            }
          }
        }
        if (s1 !== peg$FAILED) {
          peg$savedPos = peg$currPos;
          s2 = peg$c21(s1);
          if (s2) {
            s2 = void 0;
          } else {
            s2 = peg$FAILED;
          }
          if (s2 !== peg$FAILED) {
            s1 = [s1, s2];
            s0 = s1;
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        peg$silentFails--;
        if (s0 === peg$FAILED) {
          s1 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c18);
          }
        }
        return s0;
      }
      function peg$parseExtradent() {
        var s0, s1, s2;
        s0 = peg$currPos;
        s1 = [];
        if (input.charCodeAt(peg$currPos) === 32) {
          s2 = peg$c19;
          peg$currPos++;
        } else {
          s2 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c20);
          }
        }
        while (s2 !== peg$FAILED) {
          s1.push(s2);
          if (input.charCodeAt(peg$currPos) === 32) {
            s2 = peg$c19;
            peg$currPos++;
          } else {
            s2 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c20);
            }
          }
        }
        if (s1 !== peg$FAILED) {
          peg$savedPos = peg$currPos;
          s2 = peg$c22(s1);
          if (s2) {
            s2 = void 0;
          } else {
            s2 = peg$FAILED;
          }
          if (s2 !== peg$FAILED) {
            s1 = [s1, s2];
            s0 = s1;
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        return s0;
      }
      function peg$parseIndent() {
        var s0;
        peg$savedPos = peg$currPos;
        s0 = peg$c23();
        if (s0) {
          s0 = void 0;
        } else {
          s0 = peg$FAILED;
        }
        return s0;
      }
      function peg$parseDedent() {
        var s0;
        peg$savedPos = peg$currPos;
        s0 = peg$c24();
        if (s0) {
          s0 = void 0;
        } else {
          s0 = peg$FAILED;
        }
        return s0;
      }
      function peg$parseName() {
        var s0;
        s0 = peg$parsestring();
        if (s0 === peg$FAILED) {
          s0 = peg$parsepseudostring();
        }
        return s0;
      }
      function peg$parseLegacyName() {
        var s0, s1, s2;
        s0 = peg$parsestring();
        if (s0 === peg$FAILED) {
          s0 = peg$currPos;
          s1 = [];
          s2 = peg$parsepseudostringLegacy();
          if (s2 !== peg$FAILED) {
            while (s2 !== peg$FAILED) {
              s1.push(s2);
              s2 = peg$parsepseudostringLegacy();
            }
          } else {
            s1 = peg$FAILED;
          }
          if (s1 !== peg$FAILED) {
            peg$savedPos = s0;
            s1 = peg$c25();
          }
          s0 = s1;
        }
        return s0;
      }
      function peg$parseLiteral() {
        var s0;
        s0 = peg$parsenull();
        if (s0 === peg$FAILED) {
          s0 = peg$parseboolean();
          if (s0 === peg$FAILED) {
            s0 = peg$parsestring();
            if (s0 === peg$FAILED) {
              s0 = peg$parsepseudostring();
            }
          }
        }
        return s0;
      }
      function peg$parseLegacyLiteral() {
        var s0;
        s0 = peg$parsenull();
        if (s0 === peg$FAILED) {
          s0 = peg$parsestring();
          if (s0 === peg$FAILED) {
            s0 = peg$parsepseudostringLegacy();
          }
        }
        return s0;
      }
      function peg$parsepseudostring() {
        var s0, s1, s2, s3, s4, s5;
        peg$silentFails++;
        s0 = peg$currPos;
        if (peg$c27.test(input.charAt(peg$currPos))) {
          s1 = input.charAt(peg$currPos);
          peg$currPos++;
        } else {
          s1 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c28);
          }
        }
        if (s1 !== peg$FAILED) {
          s2 = [];
          s3 = peg$currPos;
          s4 = peg$parseB();
          if (s4 === peg$FAILED) {
            s4 = null;
          }
          if (s4 !== peg$FAILED) {
            if (peg$c29.test(input.charAt(peg$currPos))) {
              s5 = input.charAt(peg$currPos);
              peg$currPos++;
            } else {
              s5 = peg$FAILED;
              if (peg$silentFails === 0) {
                peg$fail(peg$c30);
              }
            }
            if (s5 !== peg$FAILED) {
              s4 = [s4, s5];
              s3 = s4;
            } else {
              peg$currPos = s3;
              s3 = peg$FAILED;
            }
          } else {
            peg$currPos = s3;
            s3 = peg$FAILED;
          }
          while (s3 !== peg$FAILED) {
            s2.push(s3);
            s3 = peg$currPos;
            s4 = peg$parseB();
            if (s4 === peg$FAILED) {
              s4 = null;
            }
            if (s4 !== peg$FAILED) {
              if (peg$c29.test(input.charAt(peg$currPos))) {
                s5 = input.charAt(peg$currPos);
                peg$currPos++;
              } else {
                s5 = peg$FAILED;
                if (peg$silentFails === 0) {
                  peg$fail(peg$c30);
                }
              }
              if (s5 !== peg$FAILED) {
                s4 = [s4, s5];
                s3 = s4;
              } else {
                peg$currPos = s3;
                s3 = peg$FAILED;
              }
            } else {
              peg$currPos = s3;
              s3 = peg$FAILED;
            }
          }
          if (s2 !== peg$FAILED) {
            peg$savedPos = s0;
            s1 = peg$c31();
            s0 = s1;
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        peg$silentFails--;
        if (s0 === peg$FAILED) {
          s1 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c26);
          }
        }
        return s0;
      }
      function peg$parsepseudostringLegacy() {
        var s0, s1, s2, s3, s4;
        s0 = peg$currPos;
        if (input.substr(peg$currPos, 2) === peg$c32) {
          s1 = peg$c32;
          peg$currPos += 2;
        } else {
          s1 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c33);
          }
        }
        if (s1 === peg$FAILED) {
          s1 = null;
        }
        if (s1 !== peg$FAILED) {
          if (peg$c34.test(input.charAt(peg$currPos))) {
            s2 = input.charAt(peg$currPos);
            peg$currPos++;
          } else {
            s2 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c35);
            }
          }
          if (s2 !== peg$FAILED) {
            s3 = [];
            if (peg$c36.test(input.charAt(peg$currPos))) {
              s4 = input.charAt(peg$currPos);
              peg$currPos++;
            } else {
              s4 = peg$FAILED;
              if (peg$silentFails === 0) {
                peg$fail(peg$c37);
              }
            }
            while (s4 !== peg$FAILED) {
              s3.push(s4);
              if (peg$c36.test(input.charAt(peg$currPos))) {
                s4 = input.charAt(peg$currPos);
                peg$currPos++;
              } else {
                s4 = peg$FAILED;
                if (peg$silentFails === 0) {
                  peg$fail(peg$c37);
                }
              }
            }
            if (s3 !== peg$FAILED) {
              peg$savedPos = s0;
              s1 = peg$c31();
              s0 = s1;
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        return s0;
      }
      function peg$parsenull() {
        var s0, s1;
        s0 = peg$currPos;
        if (input.substr(peg$currPos, 4) === peg$c38) {
          s1 = peg$c38;
          peg$currPos += 4;
        } else {
          s1 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c39);
          }
        }
        if (s1 !== peg$FAILED) {
          peg$savedPos = s0;
          s1 = peg$c40();
        }
        s0 = s1;
        return s0;
      }
      function peg$parseboolean() {
        var s0, s1;
        s0 = peg$currPos;
        if (input.substr(peg$currPos, 4) === peg$c41) {
          s1 = peg$c41;
          peg$currPos += 4;
        } else {
          s1 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c42);
          }
        }
        if (s1 !== peg$FAILED) {
          peg$savedPos = s0;
          s1 = peg$c43();
        }
        s0 = s1;
        if (s0 === peg$FAILED) {
          s0 = peg$currPos;
          if (input.substr(peg$currPos, 5) === peg$c44) {
            s1 = peg$c44;
            peg$currPos += 5;
          } else {
            s1 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c45);
            }
          }
          if (s1 !== peg$FAILED) {
            peg$savedPos = s0;
            s1 = peg$c46();
          }
          s0 = s1;
        }
        return s0;
      }
      function peg$parsestring() {
        var s0, s1, s2, s3;
        peg$silentFails++;
        s0 = peg$currPos;
        if (input.charCodeAt(peg$currPos) === 34) {
          s1 = peg$c48;
          peg$currPos++;
        } else {
          s1 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c49);
          }
        }
        if (s1 !== peg$FAILED) {
          if (input.charCodeAt(peg$currPos) === 34) {
            s2 = peg$c48;
            peg$currPos++;
          } else {
            s2 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c49);
            }
          }
          if (s2 !== peg$FAILED) {
            peg$savedPos = s0;
            s1 = peg$c50();
            s0 = s1;
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        if (s0 === peg$FAILED) {
          s0 = peg$currPos;
          if (input.charCodeAt(peg$currPos) === 34) {
            s1 = peg$c48;
            peg$currPos++;
          } else {
            s1 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c49);
            }
          }
          if (s1 !== peg$FAILED) {
            s2 = peg$parsechars();
            if (s2 !== peg$FAILED) {
              if (input.charCodeAt(peg$currPos) === 34) {
                s3 = peg$c48;
                peg$currPos++;
              } else {
                s3 = peg$FAILED;
                if (peg$silentFails === 0) {
                  peg$fail(peg$c49);
                }
              }
              if (s3 !== peg$FAILED) {
                peg$savedPos = s0;
                s1 = peg$c51(s2);
                s0 = s1;
              } else {
                peg$currPos = s0;
                s0 = peg$FAILED;
              }
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        }
        peg$silentFails--;
        if (s0 === peg$FAILED) {
          s1 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c47);
          }
        }
        return s0;
      }
      function peg$parsechars() {
        var s0, s1, s2;
        s0 = peg$currPos;
        s1 = [];
        s2 = peg$parsechar();
        if (s2 !== peg$FAILED) {
          while (s2 !== peg$FAILED) {
            s1.push(s2);
            s2 = peg$parsechar();
          }
        } else {
          s1 = peg$FAILED;
        }
        if (s1 !== peg$FAILED) {
          peg$savedPos = s0;
          s1 = peg$c52(s1);
        }
        s0 = s1;
        return s0;
      }
      function peg$parsechar() {
        var s0, s1, s2, s3, s4, s5;
        if (peg$c53.test(input.charAt(peg$currPos))) {
          s0 = input.charAt(peg$currPos);
          peg$currPos++;
        } else {
          s0 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c54);
          }
        }
        if (s0 === peg$FAILED) {
          s0 = peg$currPos;
          if (input.substr(peg$currPos, 2) === peg$c55) {
            s1 = peg$c55;
            peg$currPos += 2;
          } else {
            s1 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c56);
            }
          }
          if (s1 !== peg$FAILED) {
            peg$savedPos = s0;
            s1 = peg$c57();
          }
          s0 = s1;
          if (s0 === peg$FAILED) {
            s0 = peg$currPos;
            if (input.substr(peg$currPos, 2) === peg$c58) {
              s1 = peg$c58;
              peg$currPos += 2;
            } else {
              s1 = peg$FAILED;
              if (peg$silentFails === 0) {
                peg$fail(peg$c59);
              }
            }
            if (s1 !== peg$FAILED) {
              peg$savedPos = s0;
              s1 = peg$c60();
            }
            s0 = s1;
            if (s0 === peg$FAILED) {
              s0 = peg$currPos;
              if (input.substr(peg$currPos, 2) === peg$c61) {
                s1 = peg$c61;
                peg$currPos += 2;
              } else {
                s1 = peg$FAILED;
                if (peg$silentFails === 0) {
                  peg$fail(peg$c62);
                }
              }
              if (s1 !== peg$FAILED) {
                peg$savedPos = s0;
                s1 = peg$c63();
              }
              s0 = s1;
              if (s0 === peg$FAILED) {
                s0 = peg$currPos;
                if (input.substr(peg$currPos, 2) === peg$c64) {
                  s1 = peg$c64;
                  peg$currPos += 2;
                } else {
                  s1 = peg$FAILED;
                  if (peg$silentFails === 0) {
                    peg$fail(peg$c65);
                  }
                }
                if (s1 !== peg$FAILED) {
                  peg$savedPos = s0;
                  s1 = peg$c66();
                }
                s0 = s1;
                if (s0 === peg$FAILED) {
                  s0 = peg$currPos;
                  if (input.substr(peg$currPos, 2) === peg$c67) {
                    s1 = peg$c67;
                    peg$currPos += 2;
                  } else {
                    s1 = peg$FAILED;
                    if (peg$silentFails === 0) {
                      peg$fail(peg$c68);
                    }
                  }
                  if (s1 !== peg$FAILED) {
                    peg$savedPos = s0;
                    s1 = peg$c69();
                  }
                  s0 = s1;
                  if (s0 === peg$FAILED) {
                    s0 = peg$currPos;
                    if (input.substr(peg$currPos, 2) === peg$c70) {
                      s1 = peg$c70;
                      peg$currPos += 2;
                    } else {
                      s1 = peg$FAILED;
                      if (peg$silentFails === 0) {
                        peg$fail(peg$c71);
                      }
                    }
                    if (s1 !== peg$FAILED) {
                      peg$savedPos = s0;
                      s1 = peg$c72();
                    }
                    s0 = s1;
                    if (s0 === peg$FAILED) {
                      s0 = peg$currPos;
                      if (input.substr(peg$currPos, 2) === peg$c73) {
                        s1 = peg$c73;
                        peg$currPos += 2;
                      } else {
                        s1 = peg$FAILED;
                        if (peg$silentFails === 0) {
                          peg$fail(peg$c74);
                        }
                      }
                      if (s1 !== peg$FAILED) {
                        peg$savedPos = s0;
                        s1 = peg$c75();
                      }
                      s0 = s1;
                      if (s0 === peg$FAILED) {
                        s0 = peg$currPos;
                        if (input.substr(peg$currPos, 2) === peg$c76) {
                          s1 = peg$c76;
                          peg$currPos += 2;
                        } else {
                          s1 = peg$FAILED;
                          if (peg$silentFails === 0) {
                            peg$fail(peg$c77);
                          }
                        }
                        if (s1 !== peg$FAILED) {
                          peg$savedPos = s0;
                          s1 = peg$c78();
                        }
                        s0 = s1;
                        if (s0 === peg$FAILED) {
                          s0 = peg$currPos;
                          if (input.substr(peg$currPos, 2) === peg$c79) {
                            s1 = peg$c79;
                            peg$currPos += 2;
                          } else {
                            s1 = peg$FAILED;
                            if (peg$silentFails === 0) {
                              peg$fail(peg$c80);
                            }
                          }
                          if (s1 !== peg$FAILED) {
                            s2 = peg$parsehexDigit();
                            if (s2 !== peg$FAILED) {
                              s3 = peg$parsehexDigit();
                              if (s3 !== peg$FAILED) {
                                s4 = peg$parsehexDigit();
                                if (s4 !== peg$FAILED) {
                                  s5 = peg$parsehexDigit();
                                  if (s5 !== peg$FAILED) {
                                    peg$savedPos = s0;
                                    s1 = peg$c81(s2, s3, s4, s5);
                                    s0 = s1;
                                  } else {
                                    peg$currPos = s0;
                                    s0 = peg$FAILED;
                                  }
                                } else {
                                  peg$currPos = s0;
                                  s0 = peg$FAILED;
                                }
                              } else {
                                peg$currPos = s0;
                                s0 = peg$FAILED;
                              }
                            } else {
                              peg$currPos = s0;
                              s0 = peg$FAILED;
                            }
                          } else {
                            peg$currPos = s0;
                            s0 = peg$FAILED;
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        }
        return s0;
      }
      function peg$parsehexDigit() {
        var s0;
        if (peg$c82.test(input.charAt(peg$currPos))) {
          s0 = input.charAt(peg$currPos);
          peg$currPos++;
        } else {
          s0 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c83);
          }
        }
        return s0;
      }
      function peg$parseB() {
        var s0, s1;
        peg$silentFails++;
        s0 = [];
        if (peg$c85.test(input.charAt(peg$currPos))) {
          s1 = input.charAt(peg$currPos);
          peg$currPos++;
        } else {
          s1 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c86);
          }
        }
        if (s1 !== peg$FAILED) {
          while (s1 !== peg$FAILED) {
            s0.push(s1);
            if (peg$c85.test(input.charAt(peg$currPos))) {
              s1 = input.charAt(peg$currPos);
              peg$currPos++;
            } else {
              s1 = peg$FAILED;
              if (peg$silentFails === 0) {
                peg$fail(peg$c86);
              }
            }
          }
        } else {
          s0 = peg$FAILED;
        }
        peg$silentFails--;
        if (s0 === peg$FAILED) {
          s1 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c84);
          }
        }
        return s0;
      }
      function peg$parseS() {
        var s0, s1;
        peg$silentFails++;
        s0 = [];
        if (peg$c88.test(input.charAt(peg$currPos))) {
          s1 = input.charAt(peg$currPos);
          peg$currPos++;
        } else {
          s1 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c89);
          }
        }
        if (s1 !== peg$FAILED) {
          while (s1 !== peg$FAILED) {
            s0.push(s1);
            if (peg$c88.test(input.charAt(peg$currPos))) {
              s1 = input.charAt(peg$currPos);
              peg$currPos++;
            } else {
              s1 = peg$FAILED;
              if (peg$silentFails === 0) {
                peg$fail(peg$c89);
              }
            }
          }
        } else {
          s0 = peg$FAILED;
        }
        peg$silentFails--;
        if (s0 === peg$FAILED) {
          s1 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c87);
          }
        }
        return s0;
      }
      function peg$parseEOL_ANY() {
        var s0, s1, s2, s3, s4, s5;
        s0 = peg$currPos;
        s1 = peg$parseEOL();
        if (s1 !== peg$FAILED) {
          s2 = [];
          s3 = peg$currPos;
          s4 = peg$parseB();
          if (s4 === peg$FAILED) {
            s4 = null;
          }
          if (s4 !== peg$FAILED) {
            s5 = peg$parseEOL();
            if (s5 !== peg$FAILED) {
              s4 = [s4, s5];
              s3 = s4;
            } else {
              peg$currPos = s3;
              s3 = peg$FAILED;
            }
          } else {
            peg$currPos = s3;
            s3 = peg$FAILED;
          }
          while (s3 !== peg$FAILED) {
            s2.push(s3);
            s3 = peg$currPos;
            s4 = peg$parseB();
            if (s4 === peg$FAILED) {
              s4 = null;
            }
            if (s4 !== peg$FAILED) {
              s5 = peg$parseEOL();
              if (s5 !== peg$FAILED) {
                s4 = [s4, s5];
                s3 = s4;
              } else {
                peg$currPos = s3;
                s3 = peg$FAILED;
              }
            } else {
              peg$currPos = s3;
              s3 = peg$FAILED;
            }
          }
          if (s2 !== peg$FAILED) {
            s1 = [s1, s2];
            s0 = s1;
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        return s0;
      }
      function peg$parseEOL() {
        var s0;
        if (input.substr(peg$currPos, 2) === peg$c90) {
          s0 = peg$c90;
          peg$currPos += 2;
        } else {
          s0 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c91);
          }
        }
        if (s0 === peg$FAILED) {
          if (input.charCodeAt(peg$currPos) === 10) {
            s0 = peg$c92;
            peg$currPos++;
          } else {
            s0 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c93);
            }
          }
          if (s0 === peg$FAILED) {
            if (input.charCodeAt(peg$currPos) === 13) {
              s0 = peg$c94;
              peg$currPos++;
            } else {
              s0 = peg$FAILED;
              if (peg$silentFails === 0) {
                peg$fail(peg$c95);
              }
            }
          }
        }
        return s0;
      }
      const INDENT_STEP = 2;
      let indentLevel = 0;
      peg$result = peg$startRuleFunction();
      if (peg$result !== peg$FAILED && peg$currPos === input.length) {
        return peg$result;
      } else {
        if (peg$result !== peg$FAILED && peg$currPos < input.length) {
          peg$fail(peg$endExpectation());
        }
        throw peg$buildStructuredError(
          peg$maxFailExpected,
          peg$maxFailPos < input.length ? input.charAt(peg$maxFailPos) : null,
          peg$maxFailPos < input.length ? peg$computeLocation(peg$maxFailPos, peg$maxFailPos + 1) : peg$computeLocation(peg$maxFailPos, peg$maxFailPos)
        );
      }
    }
    module2.exports = {
      SyntaxError: peg$SyntaxError,
      parse: peg$parse
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/parsers/3.0.3/256d7e0f058743ef9e1fa29a3e732a48a8e23e7bf0a89171d56f1a19aa7e2f76/node_modules/@yarnpkg/parsers/lib/syml.js
var require_syml2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/parsers/3.0.3/256d7e0f058743ef9e1fa29a3e732a48a8e23e7bf0a89171d56f1a19aa7e2f76/node_modules/@yarnpkg/parsers/lib/syml.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.PreserveOrdering = void 0;
    exports2.stringifySyml = stringifySyml;
    exports2.parseSyml = parseSyml2;
    var js_yaml_1 = require_js_yaml2();
    var syml_1 = require_syml();
    var simpleStringPattern = /^(?![-?:,\][{}#&*!|>'"%@` \t\r\n]).([ \t]*(?![,\][{}:# \t\r\n]).)*$/;
    var specialObjectKeys = [`__metadata`, `version`, `resolution`, `dependencies`, `peerDependencies`, `dependenciesMeta`, `peerDependenciesMeta`, `binaries`];
    var PreserveOrdering = class {
      constructor(data) {
        this.data = data;
      }
    };
    exports2.PreserveOrdering = PreserveOrdering;
    function stringifyString(value) {
      if (value.match(simpleStringPattern)) {
        return value;
      } else {
        return JSON.stringify(value);
      }
    }
    function isRemovableField(value) {
      if (typeof value === `undefined`)
        return true;
      if (typeof value === `object` && value !== null && !Array.isArray(value))
        return Object.keys(value).every((key) => isRemovableField(value[key]));
      return false;
    }
    function stringifyValue(value, indentLevel, newLineIfObject) {
      if (value === null)
        return `null
`;
      if (typeof value === `number` || typeof value === `boolean`)
        return `${value.toString()}
`;
      if (typeof value === `string`)
        return `${stringifyString(value)}
`;
      if (Array.isArray(value)) {
        if (value.length === 0)
          return `[]
`;
        const indent = `  `.repeat(indentLevel);
        const serialized = value.map((sub) => {
          return `${indent}- ${stringifyValue(sub, indentLevel + 1, false)}`;
        }).join(``);
        return `
${serialized}`;
      }
      if (typeof value === `object` && value) {
        const [data, sort] = value instanceof PreserveOrdering ? [value.data, false] : [value, true];
        const indent = `  `.repeat(indentLevel);
        const keys4 = Object.keys(data);
        if (sort) {
          keys4.sort((a2, b) => {
            const aIndex = specialObjectKeys.indexOf(a2);
            const bIndex = specialObjectKeys.indexOf(b);
            if (aIndex === -1 && bIndex === -1)
              return a2 < b ? -1 : a2 > b ? 1 : 0;
            if (aIndex !== -1 && bIndex === -1)
              return -1;
            if (aIndex === -1 && bIndex !== -1)
              return 1;
            return aIndex - bIndex;
          });
        }
        const fields = keys4.filter((key) => {
          return !isRemovableField(data[key]);
        }).map((key, index) => {
          const value2 = data[key];
          const stringifiedKey = stringifyString(key);
          const stringifiedValue = stringifyValue(value2, indentLevel + 1, true);
          const recordIndentation = index > 0 || newLineIfObject ? indent : ``;
          const keyPart = stringifiedKey.length > 1024 ? `? ${stringifiedKey}
${recordIndentation}:` : `${stringifiedKey}:`;
          const valuePart = stringifiedValue.startsWith(`
`) ? stringifiedValue : ` ${stringifiedValue}`;
          return `${recordIndentation}${keyPart}${valuePart}`;
        }).join(indentLevel === 0 ? `
` : ``) || `
`;
        if (!newLineIfObject) {
          return `${fields}`;
        } else {
          return `
${fields}`;
        }
      }
      throw new Error(`Unsupported value type (${value})`);
    }
    function stringifySyml(value) {
      try {
        const stringified = stringifyValue(value, 0, false);
        return stringified !== `
` ? stringified : ``;
      } catch (error) {
        if (error.location)
          error.message = error.message.replace(/(\.)?$/, ` (line ${error.location.start.line}, column ${error.location.start.column})$1`);
        throw error;
      }
    }
    stringifySyml.PreserveOrdering = PreserveOrdering;
    function parseViaPeg(source) {
      if (!source.endsWith(`
`))
        source += `
`;
      return (0, syml_1.parse)(source);
    }
    var LEGACY_REGEXP = /^(#.*(\r?\n))*?#\s+yarn\s+lockfile\s+v1\r?\n/i;
    function parseViaJsYaml(source) {
      if (LEGACY_REGEXP.test(source))
        return parseViaPeg(source);
      const value = (0, js_yaml_1.safeLoad)(source, {
        schema: js_yaml_1.FAILSAFE_SCHEMA,
        json: true
      });
      if (value === void 0 || value === null)
        return {};
      if (typeof value !== `object`)
        throw new Error(`Expected an indexed object, got a ${typeof value} instead. Does your file follow Yaml's rules?`);
      if (Array.isArray(value))
        throw new Error(`Expected an indexed object, got an array instead. Does your file follow Yaml's rules?`);
      return value;
    }
    function parseSyml2(source) {
      return parseViaJsYaml(source);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/parsers/3.0.3/256d7e0f058743ef9e1fa29a3e732a48a8e23e7bf0a89171d56f1a19aa7e2f76/node_modules/@yarnpkg/parsers/lib/index.js
var require_lib13 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/parsers/3.0.3/256d7e0f058743ef9e1fa29a3e732a48a8e23e7bf0a89171d56f1a19aa7e2f76/node_modules/@yarnpkg/parsers/lib/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.stringifySyml = exports2.parseSyml = exports2.stringifyResolution = exports2.parseResolution = exports2.stringifyValueArgument = exports2.stringifyShellLine = exports2.stringifyRedirectArgument = exports2.stringifyEnvSegment = exports2.stringifyCommandLineThen = exports2.stringifyCommandLine = exports2.stringifyCommandChainThen = exports2.stringifyCommandChain = exports2.stringifyCommand = exports2.stringifyArithmeticExpression = exports2.stringifyArgumentSegment = exports2.stringifyArgument = exports2.stringifyShell = exports2.parseShell = void 0;
    var shell_1 = require_shell2();
    Object.defineProperty(exports2, "parseShell", { enumerable: true, get: function() {
      return shell_1.parseShell;
    } });
    Object.defineProperty(exports2, "stringifyShell", { enumerable: true, get: function() {
      return shell_1.stringifyShell;
    } });
    Object.defineProperty(exports2, "stringifyArgument", { enumerable: true, get: function() {
      return shell_1.stringifyArgument;
    } });
    Object.defineProperty(exports2, "stringifyArgumentSegment", { enumerable: true, get: function() {
      return shell_1.stringifyArgumentSegment;
    } });
    Object.defineProperty(exports2, "stringifyArithmeticExpression", { enumerable: true, get: function() {
      return shell_1.stringifyArithmeticExpression;
    } });
    Object.defineProperty(exports2, "stringifyCommand", { enumerable: true, get: function() {
      return shell_1.stringifyCommand;
    } });
    Object.defineProperty(exports2, "stringifyCommandChain", { enumerable: true, get: function() {
      return shell_1.stringifyCommandChain;
    } });
    Object.defineProperty(exports2, "stringifyCommandChainThen", { enumerable: true, get: function() {
      return shell_1.stringifyCommandChainThen;
    } });
    Object.defineProperty(exports2, "stringifyCommandLine", { enumerable: true, get: function() {
      return shell_1.stringifyCommandLine;
    } });
    Object.defineProperty(exports2, "stringifyCommandLineThen", { enumerable: true, get: function() {
      return shell_1.stringifyCommandLineThen;
    } });
    Object.defineProperty(exports2, "stringifyEnvSegment", { enumerable: true, get: function() {
      return shell_1.stringifyEnvSegment;
    } });
    Object.defineProperty(exports2, "stringifyRedirectArgument", { enumerable: true, get: function() {
      return shell_1.stringifyRedirectArgument;
    } });
    Object.defineProperty(exports2, "stringifyShellLine", { enumerable: true, get: function() {
      return shell_1.stringifyShellLine;
    } });
    Object.defineProperty(exports2, "stringifyValueArgument", { enumerable: true, get: function() {
      return shell_1.stringifyValueArgument;
    } });
    var resolution_1 = require_resolution2();
    Object.defineProperty(exports2, "parseResolution", { enumerable: true, get: function() {
      return resolution_1.parseResolution;
    } });
    Object.defineProperty(exports2, "stringifyResolution", { enumerable: true, get: function() {
      return resolution_1.stringifyResolution;
    } });
    var syml_1 = require_syml2();
    Object.defineProperty(exports2, "parseSyml", { enumerable: true, get: function() {
      return syml_1.parseSyml;
    } });
    Object.defineProperty(exports2, "stringifySyml", { enumerable: true, get: function() {
      return syml_1.stringifySyml;
    } });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/color-name/1.1.4/db1acd33dd83fced9587bc0d94d0a4a5899ce138b7a3312624091f84f811efb4/node_modules/color-name/index.js
var require_color_name = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/color-name/1.1.4/db1acd33dd83fced9587bc0d94d0a4a5899ce138b7a3312624091f84f811efb4/node_modules/color-name/index.js"(exports2, module2) {
    "use strict";
    module2.exports = {
      "aliceblue": [240, 248, 255],
      "antiquewhite": [250, 235, 215],
      "aqua": [0, 255, 255],
      "aquamarine": [127, 255, 212],
      "azure": [240, 255, 255],
      "beige": [245, 245, 220],
      "bisque": [255, 228, 196],
      "black": [0, 0, 0],
      "blanchedalmond": [255, 235, 205],
      "blue": [0, 0, 255],
      "blueviolet": [138, 43, 226],
      "brown": [165, 42, 42],
      "burlywood": [222, 184, 135],
      "cadetblue": [95, 158, 160],
      "chartreuse": [127, 255, 0],
      "chocolate": [210, 105, 30],
      "coral": [255, 127, 80],
      "cornflowerblue": [100, 149, 237],
      "cornsilk": [255, 248, 220],
      "crimson": [220, 20, 60],
      "cyan": [0, 255, 255],
      "darkblue": [0, 0, 139],
      "darkcyan": [0, 139, 139],
      "darkgoldenrod": [184, 134, 11],
      "darkgray": [169, 169, 169],
      "darkgreen": [0, 100, 0],
      "darkgrey": [169, 169, 169],
      "darkkhaki": [189, 183, 107],
      "darkmagenta": [139, 0, 139],
      "darkolivegreen": [85, 107, 47],
      "darkorange": [255, 140, 0],
      "darkorchid": [153, 50, 204],
      "darkred": [139, 0, 0],
      "darksalmon": [233, 150, 122],
      "darkseagreen": [143, 188, 143],
      "darkslateblue": [72, 61, 139],
      "darkslategray": [47, 79, 79],
      "darkslategrey": [47, 79, 79],
      "darkturquoise": [0, 206, 209],
      "darkviolet": [148, 0, 211],
      "deeppink": [255, 20, 147],
      "deepskyblue": [0, 191, 255],
      "dimgray": [105, 105, 105],
      "dimgrey": [105, 105, 105],
      "dodgerblue": [30, 144, 255],
      "firebrick": [178, 34, 34],
      "floralwhite": [255, 250, 240],
      "forestgreen": [34, 139, 34],
      "fuchsia": [255, 0, 255],
      "gainsboro": [220, 220, 220],
      "ghostwhite": [248, 248, 255],
      "gold": [255, 215, 0],
      "goldenrod": [218, 165, 32],
      "gray": [128, 128, 128],
      "green": [0, 128, 0],
      "greenyellow": [173, 255, 47],
      "grey": [128, 128, 128],
      "honeydew": [240, 255, 240],
      "hotpink": [255, 105, 180],
      "indianred": [205, 92, 92],
      "indigo": [75, 0, 130],
      "ivory": [255, 255, 240],
      "khaki": [240, 230, 140],
      "lavender": [230, 230, 250],
      "lavenderblush": [255, 240, 245],
      "lawngreen": [124, 252, 0],
      "lemonchiffon": [255, 250, 205],
      "lightblue": [173, 216, 230],
      "lightcoral": [240, 128, 128],
      "lightcyan": [224, 255, 255],
      "lightgoldenrodyellow": [250, 250, 210],
      "lightgray": [211, 211, 211],
      "lightgreen": [144, 238, 144],
      "lightgrey": [211, 211, 211],
      "lightpink": [255, 182, 193],
      "lightsalmon": [255, 160, 122],
      "lightseagreen": [32, 178, 170],
      "lightskyblue": [135, 206, 250],
      "lightslategray": [119, 136, 153],
      "lightslategrey": [119, 136, 153],
      "lightsteelblue": [176, 196, 222],
      "lightyellow": [255, 255, 224],
      "lime": [0, 255, 0],
      "limegreen": [50, 205, 50],
      "linen": [250, 240, 230],
      "magenta": [255, 0, 255],
      "maroon": [128, 0, 0],
      "mediumaquamarine": [102, 205, 170],
      "mediumblue": [0, 0, 205],
      "mediumorchid": [186, 85, 211],
      "mediumpurple": [147, 112, 219],
      "mediumseagreen": [60, 179, 113],
      "mediumslateblue": [123, 104, 238],
      "mediumspringgreen": [0, 250, 154],
      "mediumturquoise": [72, 209, 204],
      "mediumvioletred": [199, 21, 133],
      "midnightblue": [25, 25, 112],
      "mintcream": [245, 255, 250],
      "mistyrose": [255, 228, 225],
      "moccasin": [255, 228, 181],
      "navajowhite": [255, 222, 173],
      "navy": [0, 0, 128],
      "oldlace": [253, 245, 230],
      "olive": [128, 128, 0],
      "olivedrab": [107, 142, 35],
      "orange": [255, 165, 0],
      "orangered": [255, 69, 0],
      "orchid": [218, 112, 214],
      "palegoldenrod": [238, 232, 170],
      "palegreen": [152, 251, 152],
      "paleturquoise": [175, 238, 238],
      "palevioletred": [219, 112, 147],
      "papayawhip": [255, 239, 213],
      "peachpuff": [255, 218, 185],
      "peru": [205, 133, 63],
      "pink": [255, 192, 203],
      "plum": [221, 160, 221],
      "powderblue": [176, 224, 230],
      "purple": [128, 0, 128],
      "rebeccapurple": [102, 51, 153],
      "red": [255, 0, 0],
      "rosybrown": [188, 143, 143],
      "royalblue": [65, 105, 225],
      "saddlebrown": [139, 69, 19],
      "salmon": [250, 128, 114],
      "sandybrown": [244, 164, 96],
      "seagreen": [46, 139, 87],
      "seashell": [255, 245, 238],
      "sienna": [160, 82, 45],
      "silver": [192, 192, 192],
      "skyblue": [135, 206, 235],
      "slateblue": [106, 90, 205],
      "slategray": [112, 128, 144],
      "slategrey": [112, 128, 144],
      "snow": [255, 250, 250],
      "springgreen": [0, 255, 127],
      "steelblue": [70, 130, 180],
      "tan": [210, 180, 140],
      "teal": [0, 128, 128],
      "thistle": [216, 191, 216],
      "tomato": [255, 99, 71],
      "turquoise": [64, 224, 208],
      "violet": [238, 130, 238],
      "wheat": [245, 222, 179],
      "white": [255, 255, 255],
      "whitesmoke": [245, 245, 245],
      "yellow": [255, 255, 0],
      "yellowgreen": [154, 205, 50]
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/color-convert/2.0.1/4f6772797e186f77129d8a7c1c86b27315f77c7c395b04cbb5e203e58897407b/node_modules/color-convert/conversions.js
var require_conversions = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/color-convert/2.0.1/4f6772797e186f77129d8a7c1c86b27315f77c7c395b04cbb5e203e58897407b/node_modules/color-convert/conversions.js"(exports2, module2) {
    var cssKeywords = require_color_name();
    var reverseKeywords = {};
    for (const key of Object.keys(cssKeywords)) {
      reverseKeywords[cssKeywords[key]] = key;
    }
    var convert = {
      rgb: { channels: 3, labels: "rgb" },
      hsl: { channels: 3, labels: "hsl" },
      hsv: { channels: 3, labels: "hsv" },
      hwb: { channels: 3, labels: "hwb" },
      cmyk: { channels: 4, labels: "cmyk" },
      xyz: { channels: 3, labels: "xyz" },
      lab: { channels: 3, labels: "lab" },
      lch: { channels: 3, labels: "lch" },
      hex: { channels: 1, labels: ["hex"] },
      keyword: { channels: 1, labels: ["keyword"] },
      ansi16: { channels: 1, labels: ["ansi16"] },
      ansi256: { channels: 1, labels: ["ansi256"] },
      hcg: { channels: 3, labels: ["h", "c", "g"] },
      apple: { channels: 3, labels: ["r16", "g16", "b16"] },
      gray: { channels: 1, labels: ["gray"] }
    };
    module2.exports = convert;
    for (const model of Object.keys(convert)) {
      if (!("channels" in convert[model])) {
        throw new Error("missing channels property: " + model);
      }
      if (!("labels" in convert[model])) {
        throw new Error("missing channel labels property: " + model);
      }
      if (convert[model].labels.length !== convert[model].channels) {
        throw new Error("channel and label counts mismatch: " + model);
      }
      const { channels, labels } = convert[model];
      delete convert[model].channels;
      delete convert[model].labels;
      Object.defineProperty(convert[model], "channels", { value: channels });
      Object.defineProperty(convert[model], "labels", { value: labels });
    }
    convert.rgb.hsl = function(rgb) {
      const r = rgb[0] / 255;
      const g = rgb[1] / 255;
      const b = rgb[2] / 255;
      const min = Math.min(r, g, b);
      const max3 = Math.max(r, g, b);
      const delta = max3 - min;
      let h2;
      let s;
      if (max3 === min) {
        h2 = 0;
      } else if (r === max3) {
        h2 = (g - b) / delta;
      } else if (g === max3) {
        h2 = 2 + (b - r) / delta;
      } else if (b === max3) {
        h2 = 4 + (r - g) / delta;
      }
      h2 = Math.min(h2 * 60, 360);
      if (h2 < 0) {
        h2 += 360;
      }
      const l = (min + max3) / 2;
      if (max3 === min) {
        s = 0;
      } else if (l <= 0.5) {
        s = delta / (max3 + min);
      } else {
        s = delta / (2 - max3 - min);
      }
      return [h2, s * 100, l * 100];
    };
    convert.rgb.hsv = function(rgb) {
      let rdif;
      let gdif;
      let bdif;
      let h2;
      let s;
      const r = rgb[0] / 255;
      const g = rgb[1] / 255;
      const b = rgb[2] / 255;
      const v = Math.max(r, g, b);
      const diff = v - Math.min(r, g, b);
      const diffc = function(c3) {
        return (v - c3) / 6 / diff + 1 / 2;
      };
      if (diff === 0) {
        h2 = 0;
        s = 0;
      } else {
        s = diff / v;
        rdif = diffc(r);
        gdif = diffc(g);
        bdif = diffc(b);
        if (r === v) {
          h2 = bdif - gdif;
        } else if (g === v) {
          h2 = 1 / 3 + rdif - bdif;
        } else if (b === v) {
          h2 = 2 / 3 + gdif - rdif;
        }
        if (h2 < 0) {
          h2 += 1;
        } else if (h2 > 1) {
          h2 -= 1;
        }
      }
      return [
        h2 * 360,
        s * 100,
        v * 100
      ];
    };
    convert.rgb.hwb = function(rgb) {
      const r = rgb[0];
      const g = rgb[1];
      let b = rgb[2];
      const h2 = convert.rgb.hsl(rgb)[0];
      const w = 1 / 255 * Math.min(r, Math.min(g, b));
      b = 1 - 1 / 255 * Math.max(r, Math.max(g, b));
      return [h2, w * 100, b * 100];
    };
    convert.rgb.cmyk = function(rgb) {
      const r = rgb[0] / 255;
      const g = rgb[1] / 255;
      const b = rgb[2] / 255;
      const k2 = Math.min(1 - r, 1 - g, 1 - b);
      const c3 = (1 - r - k2) / (1 - k2) || 0;
      const m = (1 - g - k2) / (1 - k2) || 0;
      const y = (1 - b - k2) / (1 - k2) || 0;
      return [c3 * 100, m * 100, y * 100, k2 * 100];
    };
    function comparativeDistance(x, y) {
      return (x[0] - y[0]) ** 2 + (x[1] - y[1]) ** 2 + (x[2] - y[2]) ** 2;
    }
    convert.rgb.keyword = function(rgb) {
      const reversed = reverseKeywords[rgb];
      if (reversed) {
        return reversed;
      }
      let currentClosestDistance = Infinity;
      let currentClosestKeyword;
      for (const keyword of Object.keys(cssKeywords)) {
        const value = cssKeywords[keyword];
        const distance2 = comparativeDistance(rgb, value);
        if (distance2 < currentClosestDistance) {
          currentClosestDistance = distance2;
          currentClosestKeyword = keyword;
        }
      }
      return currentClosestKeyword;
    };
    convert.keyword.rgb = function(keyword) {
      return cssKeywords[keyword];
    };
    convert.rgb.xyz = function(rgb) {
      let r = rgb[0] / 255;
      let g = rgb[1] / 255;
      let b = rgb[2] / 255;
      r = r > 0.04045 ? ((r + 0.055) / 1.055) ** 2.4 : r / 12.92;
      g = g > 0.04045 ? ((g + 0.055) / 1.055) ** 2.4 : g / 12.92;
      b = b > 0.04045 ? ((b + 0.055) / 1.055) ** 2.4 : b / 12.92;
      const x = r * 0.4124 + g * 0.3576 + b * 0.1805;
      const y = r * 0.2126 + g * 0.7152 + b * 0.0722;
      const z = r * 0.0193 + g * 0.1192 + b * 0.9505;
      return [x * 100, y * 100, z * 100];
    };
    convert.rgb.lab = function(rgb) {
      const xyz = convert.rgb.xyz(rgb);
      let x = xyz[0];
      let y = xyz[1];
      let z = xyz[2];
      x /= 95.047;
      y /= 100;
      z /= 108.883;
      x = x > 8856e-6 ? x ** (1 / 3) : 7.787 * x + 16 / 116;
      y = y > 8856e-6 ? y ** (1 / 3) : 7.787 * y + 16 / 116;
      z = z > 8856e-6 ? z ** (1 / 3) : 7.787 * z + 16 / 116;
      const l = 116 * y - 16;
      const a2 = 500 * (x - y);
      const b = 200 * (y - z);
      return [l, a2, b];
    };
    convert.hsl.rgb = function(hsl) {
      const h2 = hsl[0] / 360;
      const s = hsl[1] / 100;
      const l = hsl[2] / 100;
      let t2;
      let t3;
      let val;
      if (s === 0) {
        val = l * 255;
        return [val, val, val];
      }
      if (l < 0.5) {
        t2 = l * (1 + s);
      } else {
        t2 = l + s - l * s;
      }
      const t1 = 2 * l - t2;
      const rgb = [0, 0, 0];
      for (let i2 = 0; i2 < 3; i2++) {
        t3 = h2 + 1 / 3 * -(i2 - 1);
        if (t3 < 0) {
          t3++;
        }
        if (t3 > 1) {
          t3--;
        }
        if (6 * t3 < 1) {
          val = t1 + (t2 - t1) * 6 * t3;
        } else if (2 * t3 < 1) {
          val = t2;
        } else if (3 * t3 < 2) {
          val = t1 + (t2 - t1) * (2 / 3 - t3) * 6;
        } else {
          val = t1;
        }
        rgb[i2] = val * 255;
      }
      return rgb;
    };
    convert.hsl.hsv = function(hsl) {
      const h2 = hsl[0];
      let s = hsl[1] / 100;
      let l = hsl[2] / 100;
      let smin = s;
      const lmin = Math.max(l, 0.01);
      l *= 2;
      s *= l <= 1 ? l : 2 - l;
      smin *= lmin <= 1 ? lmin : 2 - lmin;
      const v = (l + s) / 2;
      const sv = l === 0 ? 2 * smin / (lmin + smin) : 2 * s / (l + s);
      return [h2, sv * 100, v * 100];
    };
    convert.hsv.rgb = function(hsv) {
      const h2 = hsv[0] / 60;
      const s = hsv[1] / 100;
      let v = hsv[2] / 100;
      const hi = Math.floor(h2) % 6;
      const f = h2 - Math.floor(h2);
      const p = 255 * v * (1 - s);
      const q = 255 * v * (1 - s * f);
      const t2 = 255 * v * (1 - s * (1 - f));
      v *= 255;
      switch (hi) {
        case 0:
          return [v, t2, p];
        case 1:
          return [q, v, p];
        case 2:
          return [p, v, t2];
        case 3:
          return [p, q, v];
        case 4:
          return [t2, p, v];
        case 5:
          return [v, p, q];
      }
    };
    convert.hsv.hsl = function(hsv) {
      const h2 = hsv[0];
      const s = hsv[1] / 100;
      const v = hsv[2] / 100;
      const vmin = Math.max(v, 0.01);
      let sl;
      let l;
      l = (2 - s) * v;
      const lmin = (2 - s) * vmin;
      sl = s * vmin;
      sl /= lmin <= 1 ? lmin : 2 - lmin;
      sl = sl || 0;
      l /= 2;
      return [h2, sl * 100, l * 100];
    };
    convert.hwb.rgb = function(hwb) {
      const h2 = hwb[0] / 360;
      let wh = hwb[1] / 100;
      let bl = hwb[2] / 100;
      const ratio = wh + bl;
      let f;
      if (ratio > 1) {
        wh /= ratio;
        bl /= ratio;
      }
      const i2 = Math.floor(6 * h2);
      const v = 1 - bl;
      f = 6 * h2 - i2;
      if ((i2 & 1) !== 0) {
        f = 1 - f;
      }
      const n2 = wh + f * (v - wh);
      let r;
      let g;
      let b;
      switch (i2) {
        default:
        case 6:
        case 0:
          r = v;
          g = n2;
          b = wh;
          break;
        case 1:
          r = n2;
          g = v;
          b = wh;
          break;
        case 2:
          r = wh;
          g = v;
          b = n2;
          break;
        case 3:
          r = wh;
          g = n2;
          b = v;
          break;
        case 4:
          r = n2;
          g = wh;
          b = v;
          break;
        case 5:
          r = v;
          g = wh;
          b = n2;
          break;
      }
      return [r * 255, g * 255, b * 255];
    };
    convert.cmyk.rgb = function(cmyk) {
      const c3 = cmyk[0] / 100;
      const m = cmyk[1] / 100;
      const y = cmyk[2] / 100;
      const k2 = cmyk[3] / 100;
      const r = 1 - Math.min(1, c3 * (1 - k2) + k2);
      const g = 1 - Math.min(1, m * (1 - k2) + k2);
      const b = 1 - Math.min(1, y * (1 - k2) + k2);
      return [r * 255, g * 255, b * 255];
    };
    convert.xyz.rgb = function(xyz) {
      const x = xyz[0] / 100;
      const y = xyz[1] / 100;
      const z = xyz[2] / 100;
      let r;
      let g;
      let b;
      r = x * 3.2406 + y * -1.5372 + z * -0.4986;
      g = x * -0.9689 + y * 1.8758 + z * 0.0415;
      b = x * 0.0557 + y * -0.204 + z * 1.057;
      r = r > 31308e-7 ? 1.055 * r ** (1 / 2.4) - 0.055 : r * 12.92;
      g = g > 31308e-7 ? 1.055 * g ** (1 / 2.4) - 0.055 : g * 12.92;
      b = b > 31308e-7 ? 1.055 * b ** (1 / 2.4) - 0.055 : b * 12.92;
      r = Math.min(Math.max(0, r), 1);
      g = Math.min(Math.max(0, g), 1);
      b = Math.min(Math.max(0, b), 1);
      return [r * 255, g * 255, b * 255];
    };
    convert.xyz.lab = function(xyz) {
      let x = xyz[0];
      let y = xyz[1];
      let z = xyz[2];
      x /= 95.047;
      y /= 100;
      z /= 108.883;
      x = x > 8856e-6 ? x ** (1 / 3) : 7.787 * x + 16 / 116;
      y = y > 8856e-6 ? y ** (1 / 3) : 7.787 * y + 16 / 116;
      z = z > 8856e-6 ? z ** (1 / 3) : 7.787 * z + 16 / 116;
      const l = 116 * y - 16;
      const a2 = 500 * (x - y);
      const b = 200 * (y - z);
      return [l, a2, b];
    };
    convert.lab.xyz = function(lab) {
      const l = lab[0];
      const a2 = lab[1];
      const b = lab[2];
      let x;
      let y;
      let z;
      y = (l + 16) / 116;
      x = a2 / 500 + y;
      z = y - b / 200;
      const y2 = y ** 3;
      const x2 = x ** 3;
      const z2 = z ** 3;
      y = y2 > 8856e-6 ? y2 : (y - 16 / 116) / 7.787;
      x = x2 > 8856e-6 ? x2 : (x - 16 / 116) / 7.787;
      z = z2 > 8856e-6 ? z2 : (z - 16 / 116) / 7.787;
      x *= 95.047;
      y *= 100;
      z *= 108.883;
      return [x, y, z];
    };
    convert.lab.lch = function(lab) {
      const l = lab[0];
      const a2 = lab[1];
      const b = lab[2];
      let h2;
      const hr = Math.atan2(b, a2);
      h2 = hr * 360 / 2 / Math.PI;
      if (h2 < 0) {
        h2 += 360;
      }
      const c3 = Math.sqrt(a2 * a2 + b * b);
      return [l, c3, h2];
    };
    convert.lch.lab = function(lch) {
      const l = lch[0];
      const c3 = lch[1];
      const h2 = lch[2];
      const hr = h2 / 360 * 2 * Math.PI;
      const a2 = c3 * Math.cos(hr);
      const b = c3 * Math.sin(hr);
      return [l, a2, b];
    };
    convert.rgb.ansi16 = function(args, saturation = null) {
      const [r, g, b] = args;
      let value = saturation === null ? convert.rgb.hsv(args)[2] : saturation;
      value = Math.round(value / 50);
      if (value === 0) {
        return 30;
      }
      let ansi = 30 + (Math.round(b / 255) << 2 | Math.round(g / 255) << 1 | Math.round(r / 255));
      if (value === 2) {
        ansi += 60;
      }
      return ansi;
    };
    convert.hsv.ansi16 = function(args) {
      return convert.rgb.ansi16(convert.hsv.rgb(args), args[2]);
    };
    convert.rgb.ansi256 = function(args) {
      const r = args[0];
      const g = args[1];
      const b = args[2];
      if (r === g && g === b) {
        if (r < 8) {
          return 16;
        }
        if (r > 248) {
          return 231;
        }
        return Math.round((r - 8) / 247 * 24) + 232;
      }
      const ansi = 16 + 36 * Math.round(r / 255 * 5) + 6 * Math.round(g / 255 * 5) + Math.round(b / 255 * 5);
      return ansi;
    };
    convert.ansi16.rgb = function(args) {
      let color = args % 10;
      if (color === 0 || color === 7) {
        if (args > 50) {
          color += 3.5;
        }
        color = color / 10.5 * 255;
        return [color, color, color];
      }
      const mult = (~~(args > 50) + 1) * 0.5;
      const r = (color & 1) * mult * 255;
      const g = (color >> 1 & 1) * mult * 255;
      const b = (color >> 2 & 1) * mult * 255;
      return [r, g, b];
    };
    convert.ansi256.rgb = function(args) {
      if (args >= 232) {
        const c3 = (args - 232) * 10 + 8;
        return [c3, c3, c3];
      }
      args -= 16;
      let rem;
      const r = Math.floor(args / 36) / 5 * 255;
      const g = Math.floor((rem = args % 36) / 6) / 5 * 255;
      const b = rem % 6 / 5 * 255;
      return [r, g, b];
    };
    convert.rgb.hex = function(args) {
      const integer = ((Math.round(args[0]) & 255) << 16) + ((Math.round(args[1]) & 255) << 8) + (Math.round(args[2]) & 255);
      const string = integer.toString(16).toUpperCase();
      return "000000".substring(string.length) + string;
    };
    convert.hex.rgb = function(args) {
      const match = args.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);
      if (!match) {
        return [0, 0, 0];
      }
      let colorString = match[0];
      if (match[0].length === 3) {
        colorString = colorString.split("").map((char) => {
          return char + char;
        }).join("");
      }
      const integer = parseInt(colorString, 16);
      const r = integer >> 16 & 255;
      const g = integer >> 8 & 255;
      const b = integer & 255;
      return [r, g, b];
    };
    convert.rgb.hcg = function(rgb) {
      const r = rgb[0] / 255;
      const g = rgb[1] / 255;
      const b = rgb[2] / 255;
      const max3 = Math.max(Math.max(r, g), b);
      const min = Math.min(Math.min(r, g), b);
      const chroma = max3 - min;
      let grayscale;
      let hue;
      if (chroma < 1) {
        grayscale = min / (1 - chroma);
      } else {
        grayscale = 0;
      }
      if (chroma <= 0) {
        hue = 0;
      } else if (max3 === r) {
        hue = (g - b) / chroma % 6;
      } else if (max3 === g) {
        hue = 2 + (b - r) / chroma;
      } else {
        hue = 4 + (r - g) / chroma;
      }
      hue /= 6;
      hue %= 1;
      return [hue * 360, chroma * 100, grayscale * 100];
    };
    convert.hsl.hcg = function(hsl) {
      const s = hsl[1] / 100;
      const l = hsl[2] / 100;
      const c3 = l < 0.5 ? 2 * s * l : 2 * s * (1 - l);
      let f = 0;
      if (c3 < 1) {
        f = (l - 0.5 * c3) / (1 - c3);
      }
      return [hsl[0], c3 * 100, f * 100];
    };
    convert.hsv.hcg = function(hsv) {
      const s = hsv[1] / 100;
      const v = hsv[2] / 100;
      const c3 = s * v;
      let f = 0;
      if (c3 < 1) {
        f = (v - c3) / (1 - c3);
      }
      return [hsv[0], c3 * 100, f * 100];
    };
    convert.hcg.rgb = function(hcg) {
      const h2 = hcg[0] / 360;
      const c3 = hcg[1] / 100;
      const g = hcg[2] / 100;
      if (c3 === 0) {
        return [g * 255, g * 255, g * 255];
      }
      const pure = [0, 0, 0];
      const hi = h2 % 1 * 6;
      const v = hi % 1;
      const w = 1 - v;
      let mg = 0;
      switch (Math.floor(hi)) {
        case 0:
          pure[0] = 1;
          pure[1] = v;
          pure[2] = 0;
          break;
        case 1:
          pure[0] = w;
          pure[1] = 1;
          pure[2] = 0;
          break;
        case 2:
          pure[0] = 0;
          pure[1] = 1;
          pure[2] = v;
          break;
        case 3:
          pure[0] = 0;
          pure[1] = w;
          pure[2] = 1;
          break;
        case 4:
          pure[0] = v;
          pure[1] = 0;
          pure[2] = 1;
          break;
        default:
          pure[0] = 1;
          pure[1] = 0;
          pure[2] = w;
      }
      mg = (1 - c3) * g;
      return [
        (c3 * pure[0] + mg) * 255,
        (c3 * pure[1] + mg) * 255,
        (c3 * pure[2] + mg) * 255
      ];
    };
    convert.hcg.hsv = function(hcg) {
      const c3 = hcg[1] / 100;
      const g = hcg[2] / 100;
      const v = c3 + g * (1 - c3);
      let f = 0;
      if (v > 0) {
        f = c3 / v;
      }
      return [hcg[0], f * 100, v * 100];
    };
    convert.hcg.hsl = function(hcg) {
      const c3 = hcg[1] / 100;
      const g = hcg[2] / 100;
      const l = g * (1 - c3) + 0.5 * c3;
      let s = 0;
      if (l > 0 && l < 0.5) {
        s = c3 / (2 * l);
      } else if (l >= 0.5 && l < 1) {
        s = c3 / (2 * (1 - l));
      }
      return [hcg[0], s * 100, l * 100];
    };
    convert.hcg.hwb = function(hcg) {
      const c3 = hcg[1] / 100;
      const g = hcg[2] / 100;
      const v = c3 + g * (1 - c3);
      return [hcg[0], (v - c3) * 100, (1 - v) * 100];
    };
    convert.hwb.hcg = function(hwb) {
      const w = hwb[1] / 100;
      const b = hwb[2] / 100;
      const v = 1 - b;
      const c3 = v - w;
      let g = 0;
      if (c3 < 1) {
        g = (v - c3) / (1 - c3);
      }
      return [hwb[0], c3 * 100, g * 100];
    };
    convert.apple.rgb = function(apple) {
      return [apple[0] / 65535 * 255, apple[1] / 65535 * 255, apple[2] / 65535 * 255];
    };
    convert.rgb.apple = function(rgb) {
      return [rgb[0] / 255 * 65535, rgb[1] / 255 * 65535, rgb[2] / 255 * 65535];
    };
    convert.gray.rgb = function(args) {
      return [args[0] / 100 * 255, args[0] / 100 * 255, args[0] / 100 * 255];
    };
    convert.gray.hsl = function(args) {
      return [0, 0, args[0]];
    };
    convert.gray.hsv = convert.gray.hsl;
    convert.gray.hwb = function(gray2) {
      return [0, 100, gray2[0]];
    };
    convert.gray.cmyk = function(gray2) {
      return [0, 0, 0, gray2[0]];
    };
    convert.gray.lab = function(gray2) {
      return [gray2[0], 0, 0];
    };
    convert.gray.hex = function(gray2) {
      const val = Math.round(gray2[0] / 100 * 255) & 255;
      const integer = (val << 16) + (val << 8) + val;
      const string = integer.toString(16).toUpperCase();
      return "000000".substring(string.length) + string;
    };
    convert.rgb.gray = function(rgb) {
      const val = (rgb[0] + rgb[1] + rgb[2]) / 3;
      return [val / 255 * 100];
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/color-convert/2.0.1/4f6772797e186f77129d8a7c1c86b27315f77c7c395b04cbb5e203e58897407b/node_modules/color-convert/route.js
var require_route = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/color-convert/2.0.1/4f6772797e186f77129d8a7c1c86b27315f77c7c395b04cbb5e203e58897407b/node_modules/color-convert/route.js"(exports2, module2) {
    var conversions = require_conversions();
    function buildGraph() {
      const graph = {};
      const models = Object.keys(conversions);
      for (let len = models.length, i2 = 0; i2 < len; i2++) {
        graph[models[i2]] = {
          // http://jsperf.com/1-vs-infinity
          // micro-opt, but this is simple.
          distance: -1,
          parent: null
        };
      }
      return graph;
    }
    function deriveBFS(fromModel) {
      const graph = buildGraph();
      const queue2 = [fromModel];
      graph[fromModel].distance = 0;
      while (queue2.length) {
        const current = queue2.pop();
        const adjacents = Object.keys(conversions[current]);
        for (let len = adjacents.length, i2 = 0; i2 < len; i2++) {
          const adjacent = adjacents[i2];
          const node = graph[adjacent];
          if (node.distance === -1) {
            node.distance = graph[current].distance + 1;
            node.parent = current;
            queue2.unshift(adjacent);
          }
        }
      }
      return graph;
    }
    function link2(from5, to) {
      return function(args) {
        return to(from5(args));
      };
    }
    function wrapConversion(toModel, graph) {
      const path218 = [graph[toModel].parent, toModel];
      let fn = conversions[graph[toModel].parent][toModel];
      let cur = graph[toModel].parent;
      while (graph[cur].parent) {
        path218.unshift(graph[cur].parent);
        fn = link2(conversions[graph[cur].parent][cur], fn);
        cur = graph[cur].parent;
      }
      fn.conversion = path218;
      return fn;
    }
    module2.exports = function(fromModel) {
      const graph = deriveBFS(fromModel);
      const conversion = {};
      const models = Object.keys(graph);
      for (let len = models.length, i2 = 0; i2 < len; i2++) {
        const toModel = models[i2];
        const node = graph[toModel];
        if (node.parent === null) {
          continue;
        }
        conversion[toModel] = wrapConversion(toModel, graph);
      }
      return conversion;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/color-convert/2.0.1/4f6772797e186f77129d8a7c1c86b27315f77c7c395b04cbb5e203e58897407b/node_modules/color-convert/index.js
var require_color_convert = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/color-convert/2.0.1/4f6772797e186f77129d8a7c1c86b27315f77c7c395b04cbb5e203e58897407b/node_modules/color-convert/index.js"(exports2, module2) {
    var conversions = require_conversions();
    var route = require_route();
    var convert = {};
    var models = Object.keys(conversions);
    function wrapRaw(fn) {
      const wrappedFn = function(...args) {
        const arg0 = args[0];
        if (arg0 === void 0 || arg0 === null) {
          return arg0;
        }
        if (arg0.length > 1) {
          args = arg0;
        }
        return fn(args);
      };
      if ("conversion" in fn) {
        wrappedFn.conversion = fn.conversion;
      }
      return wrappedFn;
    }
    function wrapRounded(fn) {
      const wrappedFn = function(...args) {
        const arg0 = args[0];
        if (arg0 === void 0 || arg0 === null) {
          return arg0;
        }
        if (arg0.length > 1) {
          args = arg0;
        }
        const result2 = fn(args);
        if (typeof result2 === "object") {
          for (let len = result2.length, i2 = 0; i2 < len; i2++) {
            result2[i2] = Math.round(result2[i2]);
          }
        }
        return result2;
      };
      if ("conversion" in fn) {
        wrappedFn.conversion = fn.conversion;
      }
      return wrappedFn;
    }
    models.forEach((fromModel) => {
      convert[fromModel] = {};
      Object.defineProperty(convert[fromModel], "channels", { value: conversions[fromModel].channels });
      Object.defineProperty(convert[fromModel], "labels", { value: conversions[fromModel].labels });
      const routes = route(fromModel);
      const routeModels = Object.keys(routes);
      routeModels.forEach((toModel) => {
        const fn = routes[toModel];
        convert[fromModel][toModel] = wrapRounded(fn);
        convert[fromModel][toModel].raw = wrapRaw(fn);
      });
    });
    module2.exports = convert;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/ansi-styles/4.3.0/19cbb9b0298c7c316d1ea9b4f4af113ca1cfb7bece33e1eb982d38ef24b719ab/node_modules/ansi-styles/index.js
var require_ansi_styles = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/ansi-styles/4.3.0/19cbb9b0298c7c316d1ea9b4f4af113ca1cfb7bece33e1eb982d38ef24b719ab/node_modules/ansi-styles/index.js"(exports2, module2) {
    "use strict";
    var wrapAnsi163 = (fn, offset) => (...args) => {
      const code = fn(...args);
      return `\x1B[${code + offset}m`;
    };
    var wrapAnsi2563 = (fn, offset) => (...args) => {
      const code = fn(...args);
      return `\x1B[${38 + offset};5;${code}m`;
    };
    var wrapAnsi16m3 = (fn, offset) => (...args) => {
      const rgb = fn(...args);
      return `\x1B[${38 + offset};2;${rgb[0]};${rgb[1]};${rgb[2]}m`;
    };
    var ansi2ansi = (n2) => n2;
    var rgb2rgb = (r, g, b) => [r, g, b];
    var setLazyProperty = (object, property, get) => {
      Object.defineProperty(object, property, {
        get: () => {
          const value = get();
          Object.defineProperty(object, property, {
            value,
            enumerable: true,
            configurable: true
          });
          return value;
        },
        enumerable: true,
        configurable: true
      });
    };
    var colorConvert;
    var makeDynamicStyles = (wrap, targetSpace, identity5, isBackground) => {
      if (colorConvert === void 0) {
        colorConvert = require_color_convert();
      }
      const offset = isBackground ? 10 : 0;
      const styles4 = {};
      for (const [sourceSpace, suite] of Object.entries(colorConvert)) {
        const name = sourceSpace === "ansi16" ? "ansi" : sourceSpace;
        if (sourceSpace === targetSpace) {
          styles4[name] = wrap(identity5, offset);
        } else if (typeof suite === "object") {
          styles4[name] = wrap(suite[targetSpace], offset);
        }
      }
      return styles4;
    };
    function assembleStyles3() {
      const codes = /* @__PURE__ */ new Map();
      const styles4 = {
        modifier: {
          reset: [0, 0],
          // 21 isn't widely supported and 22 does the same thing
          bold: [1, 22],
          dim: [2, 22],
          italic: [3, 23],
          underline: [4, 24],
          inverse: [7, 27],
          hidden: [8, 28],
          strikethrough: [9, 29]
        },
        color: {
          black: [30, 39],
          red: [31, 39],
          green: [32, 39],
          yellow: [33, 39],
          blue: [34, 39],
          magenta: [35, 39],
          cyan: [36, 39],
          white: [37, 39],
          // Bright color
          blackBright: [90, 39],
          redBright: [91, 39],
          greenBright: [92, 39],
          yellowBright: [93, 39],
          blueBright: [94, 39],
          magentaBright: [95, 39],
          cyanBright: [96, 39],
          whiteBright: [97, 39]
        },
        bgColor: {
          bgBlack: [40, 49],
          bgRed: [41, 49],
          bgGreen: [42, 49],
          bgYellow: [43, 49],
          bgBlue: [44, 49],
          bgMagenta: [45, 49],
          bgCyan: [46, 49],
          bgWhite: [47, 49],
          // Bright color
          bgBlackBright: [100, 49],
          bgRedBright: [101, 49],
          bgGreenBright: [102, 49],
          bgYellowBright: [103, 49],
          bgBlueBright: [104, 49],
          bgMagentaBright: [105, 49],
          bgCyanBright: [106, 49],
          bgWhiteBright: [107, 49]
        }
      };
      styles4.color.gray = styles4.color.blackBright;
      styles4.bgColor.bgGray = styles4.bgColor.bgBlackBright;
      styles4.color.grey = styles4.color.blackBright;
      styles4.bgColor.bgGrey = styles4.bgColor.bgBlackBright;
      for (const [groupName, group] of Object.entries(styles4)) {
        for (const [styleName, style] of Object.entries(group)) {
          styles4[styleName] = {
            open: `\x1B[${style[0]}m`,
            close: `\x1B[${style[1]}m`
          };
          group[styleName] = styles4[styleName];
          codes.set(style[0], style[1]);
        }
        Object.defineProperty(styles4, groupName, {
          value: group,
          enumerable: false
        });
      }
      Object.defineProperty(styles4, "codes", {
        value: codes,
        enumerable: false
      });
      styles4.color.close = "\x1B[39m";
      styles4.bgColor.close = "\x1B[49m";
      setLazyProperty(styles4.color, "ansi", () => makeDynamicStyles(wrapAnsi163, "ansi16", ansi2ansi, false));
      setLazyProperty(styles4.color, "ansi256", () => makeDynamicStyles(wrapAnsi2563, "ansi256", ansi2ansi, false));
      setLazyProperty(styles4.color, "ansi16m", () => makeDynamicStyles(wrapAnsi16m3, "rgb", rgb2rgb, false));
      setLazyProperty(styles4.bgColor, "ansi", () => makeDynamicStyles(wrapAnsi163, "ansi16", ansi2ansi, true));
      setLazyProperty(styles4.bgColor, "ansi256", () => makeDynamicStyles(wrapAnsi2563, "ansi256", ansi2ansi, true));
      setLazyProperty(styles4.bgColor, "ansi16m", () => makeDynamicStyles(wrapAnsi16m3, "rgb", rgb2rgb, true));
      return styles4;
    }
    Object.defineProperty(module2, "exports", {
      enumerable: true,
      get: assembleStyles3
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/has-flag/4.0.0/1fad706e903703154c297a2951628dfd40fbb2e08c338b053c5c129fe3b69d3f/node_modules/has-flag/index.js
var require_has_flag = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/has-flag/4.0.0/1fad706e903703154c297a2951628dfd40fbb2e08c338b053c5c129fe3b69d3f/node_modules/has-flag/index.js"(exports2, module2) {
    "use strict";
    module2.exports = (flag, argv2 = process.argv) => {
      const prefix = flag.startsWith("-") ? "" : flag.length === 1 ? "-" : "--";
      const position3 = argv2.indexOf(prefix + flag);
      const terminatorPosition = argv2.indexOf("--");
      return position3 !== -1 && (terminatorPosition === -1 || position3 < terminatorPosition);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/supports-color/7.2.0/a7e73cdb8490938e8580fddf322eefaa0db2596179188982a430aec866a2c894/node_modules/supports-color/index.js
var require_supports_color = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/supports-color/7.2.0/a7e73cdb8490938e8580fddf322eefaa0db2596179188982a430aec866a2c894/node_modules/supports-color/index.js"(exports2, module2) {
    "use strict";
    var os15 = __require("os");
    var tty5 = __require("tty");
    var hasFlag4 = require_has_flag();
    var { env: env3 } = process;
    var forceColor;
    if (hasFlag4("no-color") || hasFlag4("no-colors") || hasFlag4("color=false") || hasFlag4("color=never")) {
      forceColor = 0;
    } else if (hasFlag4("color") || hasFlag4("colors") || hasFlag4("color=true") || hasFlag4("color=always")) {
      forceColor = 1;
    }
    if ("FORCE_COLOR" in env3) {
      if (env3.FORCE_COLOR === "true") {
        forceColor = 1;
      } else if (env3.FORCE_COLOR === "false") {
        forceColor = 0;
      } else {
        forceColor = env3.FORCE_COLOR.length === 0 ? 1 : Math.min(parseInt(env3.FORCE_COLOR, 10), 3);
      }
    }
    function translateLevel3(level) {
      if (level === 0) {
        return false;
      }
      return {
        level,
        hasBasic: true,
        has256: level >= 2,
        has16m: level >= 3
      };
    }
    function supportsColor3(haveStream, streamIsTTY) {
      if (forceColor === 0) {
        return 0;
      }
      if (hasFlag4("color=16m") || hasFlag4("color=full") || hasFlag4("color=truecolor")) {
        return 3;
      }
      if (hasFlag4("color=256")) {
        return 2;
      }
      if (haveStream && !streamIsTTY && forceColor === void 0) {
        return 0;
      }
      const min = forceColor || 0;
      if (env3.TERM === "dumb") {
        return min;
      }
      if (process.platform === "win32") {
        const osRelease = os15.release().split(".");
        if (Number(osRelease[0]) >= 10 && Number(osRelease[2]) >= 10586) {
          return Number(osRelease[2]) >= 14931 ? 3 : 2;
        }
        return 1;
      }
      if ("CI" in env3) {
        if (["TRAVIS", "CIRCLECI", "APPVEYOR", "GITLAB_CI", "GITHUB_ACTIONS", "BUILDKITE"].some((sign) => sign in env3) || env3.CI_NAME === "codeship") {
          return 1;
        }
        return min;
      }
      if ("TEAMCITY_VERSION" in env3) {
        return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(env3.TEAMCITY_VERSION) ? 1 : 0;
      }
      if (env3.COLORTERM === "truecolor") {
        return 3;
      }
      if ("TERM_PROGRAM" in env3) {
        const version2 = parseInt((env3.TERM_PROGRAM_VERSION || "").split(".")[0], 10);
        switch (env3.TERM_PROGRAM) {
          case "iTerm.app":
            return version2 >= 3 ? 3 : 2;
          case "Apple_Terminal":
            return 2;
        }
      }
      if (/-256(color)?$/i.test(env3.TERM)) {
        return 2;
      }
      if (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env3.TERM)) {
        return 1;
      }
      if ("COLORTERM" in env3) {
        return 1;
      }
      return min;
    }
    function getSupportLevel(stream2) {
      const level = supportsColor3(stream2, stream2 && stream2.isTTY);
      return translateLevel3(level);
    }
    module2.exports = {
      supportsColor: getSupportLevel,
      stdout: translateLevel3(supportsColor3(true, tty5.isatty(1))),
      stderr: translateLevel3(supportsColor3(true, tty5.isatty(2)))
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/chalk/3.0.0/615025f2c08a39e297798d948e1a848bb92c6e5a90143a697b334ec3f26759ab/node_modules/chalk/source/util.js
var require_util3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/chalk/3.0.0/615025f2c08a39e297798d948e1a848bb92c6e5a90143a697b334ec3f26759ab/node_modules/chalk/source/util.js"(exports2, module2) {
    "use strict";
    var stringReplaceAll2 = (string, substring, replacer2) => {
      let index = string.indexOf(substring);
      if (index === -1) {
        return string;
      }
      const substringLength = substring.length;
      let endIndex = 0;
      let returnValue = "";
      do {
        returnValue += string.substr(endIndex, index - endIndex) + substring + replacer2;
        endIndex = index + substringLength;
        index = string.indexOf(substring, endIndex);
      } while (index !== -1);
      returnValue += string.substr(endIndex);
      return returnValue;
    };
    var stringEncaseCRLFWithFirstIndex2 = (string, prefix, postfix, index) => {
      let endIndex = 0;
      let returnValue = "";
      do {
        const gotCR = string[index - 1] === "\r";
        returnValue += string.substr(endIndex, (gotCR ? index - 1 : index) - endIndex) + prefix + (gotCR ? "\r\n" : "\n") + postfix;
        endIndex = index + 1;
        index = string.indexOf("\n", endIndex);
      } while (index !== -1);
      returnValue += string.substr(endIndex);
      return returnValue;
    };
    module2.exports = {
      stringReplaceAll: stringReplaceAll2,
      stringEncaseCRLFWithFirstIndex: stringEncaseCRLFWithFirstIndex2
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/chalk/3.0.0/615025f2c08a39e297798d948e1a848bb92c6e5a90143a697b334ec3f26759ab/node_modules/chalk/source/templates.js
var require_templates = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/chalk/3.0.0/615025f2c08a39e297798d948e1a848bb92c6e5a90143a697b334ec3f26759ab/node_modules/chalk/source/templates.js"(exports2, module2) {
    "use strict";
    var TEMPLATE_REGEX = /(?:\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi;
    var STYLE_REGEX = /(?:^|\.)(\w+)(?:\(([^)]*)\))?/g;
    var STRING_REGEX = /^(['"])((?:\\.|(?!\1)[^\\])*)\1$/;
    var ESCAPE_REGEX = /\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.)|([^\\])/gi;
    var ESCAPES2 = /* @__PURE__ */ new Map([
      ["n", "\n"],
      ["r", "\r"],
      ["t", "	"],
      ["b", "\b"],
      ["f", "\f"],
      ["v", "\v"],
      ["0", "\0"],
      ["\\", "\\"],
      ["e", "\x1B"],
      ["a", "\x07"]
    ]);
    function unescape2(c3) {
      const u4 = c3[0] === "u";
      const bracket = c3[1] === "{";
      if (u4 && !bracket && c3.length === 5 || c3[0] === "x" && c3.length === 3) {
        return String.fromCharCode(parseInt(c3.slice(1), 16));
      }
      if (u4 && bracket) {
        return String.fromCodePoint(parseInt(c3.slice(2, -1), 16));
      }
      return ESCAPES2.get(c3) || c3;
    }
    function parseArguments2(name, arguments_) {
      const results = [];
      const chunks = arguments_.trim().split(/\s*,\s*/g);
      let matches2;
      for (const chunk of chunks) {
        const number = Number(chunk);
        if (!Number.isNaN(number)) {
          results.push(number);
        } else if (matches2 = chunk.match(STRING_REGEX)) {
          results.push(matches2[2].replace(ESCAPE_REGEX, (m, escape, character) => escape ? unescape2(escape) : character));
        } else {
          throw new Error(`Invalid Chalk template style argument: ${chunk} (in style '${name}')`);
        }
      }
      return results;
    }
    function parseStyle(style) {
      STYLE_REGEX.lastIndex = 0;
      const results = [];
      let matches2;
      while ((matches2 = STYLE_REGEX.exec(style)) !== null) {
        const name = matches2[1];
        if (matches2[2]) {
          const args = parseArguments2(name, matches2[2]);
          results.push([name].concat(args));
        } else {
          results.push([name]);
        }
      }
      return results;
    }
    function buildStyle(chalk2, styles4) {
      const enabled = {};
      for (const layer of styles4) {
        for (const style of layer.styles) {
          enabled[style[0]] = layer.inverse ? null : style.slice(1);
        }
      }
      let current = chalk2;
      for (const [styleName, styles5] of Object.entries(enabled)) {
        if (!Array.isArray(styles5)) {
          continue;
        }
        if (!(styleName in current)) {
          throw new Error(`Unknown Chalk style: ${styleName}`);
        }
        current = styles5.length > 0 ? current[styleName](...styles5) : current[styleName];
      }
      return current;
    }
    module2.exports = (chalk2, temporary) => {
      const styles4 = [];
      const chunks = [];
      let chunk = [];
      temporary.replace(TEMPLATE_REGEX, (m, escapeCharacter, inverse2, style, close, character) => {
        if (escapeCharacter) {
          chunk.push(unescape2(escapeCharacter));
        } else if (style) {
          const string = chunk.join("");
          chunk = [];
          chunks.push(styles4.length === 0 ? string : buildStyle(chalk2, styles4)(string));
          styles4.push({ inverse: inverse2, styles: parseStyle(style) });
        } else if (close) {
          if (styles4.length === 0) {
            throw new Error("Found extraneous } in Chalk template literal");
          }
          chunks.push(buildStyle(chalk2, styles4)(chunk.join("")));
          chunk = [];
          styles4.pop();
        } else {
          chunk.push(character);
        }
      });
      chunks.push(chunk.join(""));
      if (styles4.length > 0) {
        const errMsg = `Chalk template literal is missing ${styles4.length} closing bracket${styles4.length === 1 ? "" : "s"} (\`}\`)`;
        throw new Error(errMsg);
      }
      return chunks.join("");
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/chalk/3.0.0/615025f2c08a39e297798d948e1a848bb92c6e5a90143a697b334ec3f26759ab/node_modules/chalk/source/index.js
var require_source = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/chalk/3.0.0/615025f2c08a39e297798d948e1a848bb92c6e5a90143a697b334ec3f26759ab/node_modules/chalk/source/index.js"(exports2, module2) {
    "use strict";
    var ansiStyles3 = require_ansi_styles();
    var { stdout: stdoutColor2, stderr: stderrColor2 } = require_supports_color();
    var {
      stringReplaceAll: stringReplaceAll2,
      stringEncaseCRLFWithFirstIndex: stringEncaseCRLFWithFirstIndex2
    } = require_util3();
    var levelMapping2 = [
      "ansi",
      "ansi",
      "ansi256",
      "ansi16m"
    ];
    var styles4 = /* @__PURE__ */ Object.create(null);
    var applyOptions2 = (object, options = {}) => {
      if (options.level > 3 || options.level < 0) {
        throw new Error("The `level` option should be an integer from 0 to 3");
      }
      const colorLevel = stdoutColor2 ? stdoutColor2.level : 0;
      object.level = options.level === void 0 ? colorLevel : options.level;
    };
    var ChalkClass = class {
      constructor(options) {
        return chalkFactory2(options);
      }
    };
    var chalkFactory2 = (options) => {
      const chalk3 = {};
      applyOptions2(chalk3, options);
      chalk3.template = (...arguments_) => chalkTag(chalk3.template, ...arguments_);
      Object.setPrototypeOf(chalk3, Chalk.prototype);
      Object.setPrototypeOf(chalk3.template, chalk3);
      chalk3.template.constructor = () => {
        throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.");
      };
      chalk3.template.Instance = ChalkClass;
      return chalk3.template;
    };
    function Chalk(options) {
      return chalkFactory2(options);
    }
    for (const [styleName, style] of Object.entries(ansiStyles3)) {
      styles4[styleName] = {
        get() {
          const builder = createBuilder2(this, createStyler2(style.open, style.close, this._styler), this._isEmpty);
          Object.defineProperty(this, styleName, { value: builder });
          return builder;
        }
      };
    }
    styles4.visible = {
      get() {
        const builder = createBuilder2(this, this._styler, true);
        Object.defineProperty(this, "visible", { value: builder });
        return builder;
      }
    };
    var usedModels2 = ["rgb", "hex", "keyword", "hsl", "hsv", "hwb", "ansi", "ansi256"];
    for (const model of usedModels2) {
      styles4[model] = {
        get() {
          const { level } = this;
          return function(...arguments_) {
            const styler = createStyler2(ansiStyles3.color[levelMapping2[level]][model](...arguments_), ansiStyles3.color.close, this._styler);
            return createBuilder2(this, styler, this._isEmpty);
          };
        }
      };
    }
    for (const model of usedModels2) {
      const bgModel = "bg" + model[0].toUpperCase() + model.slice(1);
      styles4[bgModel] = {
        get() {
          const { level } = this;
          return function(...arguments_) {
            const styler = createStyler2(ansiStyles3.bgColor[levelMapping2[level]][model](...arguments_), ansiStyles3.bgColor.close, this._styler);
            return createBuilder2(this, styler, this._isEmpty);
          };
        }
      };
    }
    var proto2 = Object.defineProperties(() => {
    }, {
      ...styles4,
      level: {
        enumerable: true,
        get() {
          return this._generator.level;
        },
        set(level) {
          this._generator.level = level;
        }
      }
    });
    var createStyler2 = (open5, close, parent) => {
      let openAll;
      let closeAll;
      if (parent === void 0) {
        openAll = open5;
        closeAll = close;
      } else {
        openAll = parent.openAll + open5;
        closeAll = close + parent.closeAll;
      }
      return {
        open: open5,
        close,
        openAll,
        closeAll,
        parent
      };
    };
    var createBuilder2 = (self2, _styler, _isEmpty) => {
      const builder = (...arguments_) => {
        return applyStyle2(builder, arguments_.length === 1 ? "" + arguments_[0] : arguments_.join(" "));
      };
      builder.__proto__ = proto2;
      builder._generator = self2;
      builder._styler = _styler;
      builder._isEmpty = _isEmpty;
      return builder;
    };
    var applyStyle2 = (self2, string) => {
      if (self2.level <= 0 || !string) {
        return self2._isEmpty ? "" : string;
      }
      let styler = self2._styler;
      if (styler === void 0) {
        return string;
      }
      const { openAll, closeAll } = styler;
      if (string.indexOf("\x1B") !== -1) {
        while (styler !== void 0) {
          string = stringReplaceAll2(string, styler.close, styler.open);
          styler = styler.parent;
        }
      }
      const lfIndex = string.indexOf("\n");
      if (lfIndex !== -1) {
        string = stringEncaseCRLFWithFirstIndex2(string, closeAll, openAll, lfIndex);
      }
      return openAll + string + closeAll;
    };
    var template;
    var chalkTag = (chalk3, ...strings2) => {
      const [firstString] = strings2;
      if (!Array.isArray(firstString)) {
        return strings2.join(" ");
      }
      const arguments_ = strings2.slice(1);
      const parts = [firstString.raw[0]];
      for (let i2 = 1; i2 < firstString.length; i2++) {
        parts.push(
          String(arguments_[i2 - 1]).replace(/[{}\\]/g, "\\$&"),
          String(firstString.raw[i2])
        );
      }
      if (template === void 0) {
        template = require_templates();
      }
      return template(chalk3, parts.join(""));
    };
    Object.defineProperties(Chalk.prototype, styles4);
    var chalk2 = Chalk();
    chalk2.supportsColor = stdoutColor2;
    chalk2.stderr = Chalk({ level: stderrColor2 ? stderrColor2.level : 0 });
    chalk2.stderr.supportsColor = stderrColor2;
    chalk2.Level = {
      None: 0,
      Basic: 1,
      Ansi256: 2,
      TrueColor: 3,
      0: "None",
      1: "Basic",
      2: "Ansi256",
      3: "TrueColor"
    };
    module2.exports = chalk2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/constants.js
var require_constants7 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/constants.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var NODE_INITIAL = 0;
    var NODE_SUCCESS = 1;
    var NODE_ERRORED = 2;
    var START_OF_INPUT = ``;
    var END_OF_INPUT = `\0`;
    var HELP_COMMAND_INDEX = -1;
    var HELP_REGEX = /^(-h|--help)(?:=([0-9]+))?$/;
    var OPTION_REGEX = /^(--[a-z]+(?:-[a-z]+)*|-[a-zA-Z]+)$/;
    var BATCH_REGEX = /^-[a-zA-Z]{2,}$/;
    var BINDING_REGEX = /^([^=]+)=([\s\S]*)$/;
    var DEBUG = process.env.DEBUG_CLI === `1`;
    exports2.BATCH_REGEX = BATCH_REGEX;
    exports2.BINDING_REGEX = BINDING_REGEX;
    exports2.DEBUG = DEBUG;
    exports2.END_OF_INPUT = END_OF_INPUT;
    exports2.HELP_COMMAND_INDEX = HELP_COMMAND_INDEX;
    exports2.HELP_REGEX = HELP_REGEX;
    exports2.NODE_ERRORED = NODE_ERRORED;
    exports2.NODE_INITIAL = NODE_INITIAL;
    exports2.NODE_SUCCESS = NODE_SUCCESS;
    exports2.OPTION_REGEX = OPTION_REGEX;
    exports2.START_OF_INPUT = START_OF_INPUT;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/errors.js
var require_errors3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/errors.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var constants5 = require_constants7();
    var UsageError = class extends Error {
      constructor(message) {
        super(message);
        this.clipanion = { type: `usage` };
        this.name = `UsageError`;
      }
    };
    var UnknownSyntaxError = class extends Error {
      constructor(input, candidates) {
        super();
        this.input = input;
        this.candidates = candidates;
        this.clipanion = { type: `none` };
        this.name = `UnknownSyntaxError`;
        if (this.candidates.length === 0) {
          this.message = `Command not found, but we're not sure what's the alternative.`;
        } else if (this.candidates.every((candidate) => candidate.reason !== null && candidate.reason === candidates[0].reason)) {
          const [{ reason }] = this.candidates;
          this.message = `${reason}

${this.candidates.map(({ usage }) => `$ ${usage}`).join(`
`)}`;
        } else if (this.candidates.length === 1) {
          const [{ usage }] = this.candidates;
          this.message = `Command not found; did you mean:

$ ${usage}
${whileRunning(input)}`;
        } else {
          this.message = `Command not found; did you mean one of:

${this.candidates.map(({ usage }, index) => {
            return `${`${index}.`.padStart(4)} ${usage}`;
          }).join(`
`)}

${whileRunning(input)}`;
        }
      }
    };
    var AmbiguousSyntaxError = class extends Error {
      constructor(input, usages) {
        super();
        this.input = input;
        this.usages = usages;
        this.clipanion = { type: `none` };
        this.name = `AmbiguousSyntaxError`;
        this.message = `Cannot find which to pick amongst the following alternatives:

${this.usages.map((usage, index) => {
          return `${`${index}.`.padStart(4)} ${usage}`;
        }).join(`
`)}

${whileRunning(input)}`;
      }
    };
    var whileRunning = (input) => `While running ${input.filter((token) => {
      return token !== constants5.END_OF_INPUT;
    }).map((token) => {
      const json2 = JSON.stringify(token);
      if (token.match(/\s/) || token.length === 0 || json2 !== `"${token}"`) {
        return json2;
      } else {
        return token;
      }
    }).join(` `)}`;
    exports2.AmbiguousSyntaxError = AmbiguousSyntaxError;
    exports2.UnknownSyntaxError = UnknownSyntaxError;
    exports2.UsageError = UsageError;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/options/utils.js
var require_utils7 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/options/utils.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var errors2 = require_errors3();
    var isOptionSymbol = /* @__PURE__ */ Symbol(`clipanion/isOption`);
    function makeCommandOption(spec) {
      return { ...spec, [isOptionSymbol]: true };
    }
    function rerouteArguments(a2, b) {
      if (typeof a2 === `undefined`)
        return [a2, b];
      if (typeof a2 === `object` && a2 !== null && !Array.isArray(a2)) {
        return [void 0, a2];
      } else {
        return [a2, b];
      }
    }
    function cleanValidationError(message, lowerCase = false) {
      let cleaned = message.replace(/^\.: /, ``);
      if (lowerCase)
        cleaned = cleaned[0].toLowerCase() + cleaned.slice(1);
      return cleaned;
    }
    function formatError2(message, errors$1) {
      if (errors$1.length === 1) {
        return new errors2.UsageError(`${message}: ${cleanValidationError(errors$1[0], true)}`);
      } else {
        return new errors2.UsageError(`${message}:
${errors$1.map((error) => `
- ${cleanValidationError(error)}`).join(``)}`);
      }
    }
    function applyValidator(name, value, validator) {
      if (typeof validator === `undefined`)
        return value;
      const errors3 = [];
      const coercions = [];
      const coercion = (v) => {
        const orig = value;
        value = v;
        return coercion.bind(null, orig);
      };
      const check = validator(value, { errors: errors3, coercions, coercion });
      if (!check)
        throw formatError2(`Invalid value for ${name}`, errors3);
      for (const [, op] of coercions)
        op();
      return value;
    }
    exports2.applyValidator = applyValidator;
    exports2.cleanValidationError = cleanValidationError;
    exports2.formatError = formatError2;
    exports2.isOptionSymbol = isOptionSymbol;
    exports2.makeCommandOption = makeCommandOption;
    exports2.rerouteArguments = rerouteArguments;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/typanion/3.14.0/01b9bec83b63fffc8af013516fe5341ea9ef2155f032dc3833090560ec1a78ca/node_modules/typanion/lib/index.js
var require_lib14 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/typanion/3.14.0/01b9bec83b63fffc8af013516fe5341ea9ef2155f032dc3833090560ec1a78ca/node_modules/typanion/lib/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var simpleKeyRegExp = /^[a-zA-Z_][a-zA-Z0-9_]*$/;
    function getPrintable(value) {
      if (value === null)
        return `null`;
      if (value === void 0)
        return `undefined`;
      if (value === ``)
        return `an empty string`;
      if (typeof value === "symbol")
        return `<${value.toString()}>`;
      if (Array.isArray(value))
        return `an array`;
      return JSON.stringify(value);
    }
    function getPrintableArray(value, conjunction) {
      if (value.length === 0)
        return `nothing`;
      if (value.length === 1)
        return getPrintable(value[0]);
      const rest = value.slice(0, -1);
      const trailing = value[value.length - 1];
      const separator = value.length > 2 ? `, ${conjunction} ` : ` ${conjunction} `;
      return `${rest.map((value2) => getPrintable(value2)).join(`, `)}${separator}${getPrintable(trailing)}`;
    }
    function computeKey(state, key) {
      var _a, _b, _c;
      if (typeof key === `number`) {
        return `${(_a = state === null || state === void 0 ? void 0 : state.p) !== null && _a !== void 0 ? _a : `.`}[${key}]`;
      } else if (simpleKeyRegExp.test(key)) {
        return `${(_b = state === null || state === void 0 ? void 0 : state.p) !== null && _b !== void 0 ? _b : ``}.${key}`;
      } else {
        return `${(_c = state === null || state === void 0 ? void 0 : state.p) !== null && _c !== void 0 ? _c : `.`}[${JSON.stringify(key)}]`;
      }
    }
    function plural2(n2, singular, plural3) {
      return n2 === 1 ? singular : plural3;
    }
    var colorStringRegExp = /^#[0-9a-f]{6}$/i;
    var colorStringAlphaRegExp = /^#[0-9a-f]{6}([0-9a-f]{2})?$/i;
    var base64RegExp = /^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/;
    var uuid4RegExp = /^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89aAbB][a-f0-9]{3}-[a-f0-9]{12}$/i;
    var iso8601RegExp = /^(?:[1-9]\d{3}(-?)(?:(?:0[1-9]|1[0-2])\1(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])\1(?:29|30)|(?:0[13578]|1[02])(?:\1)31|00[1-9]|0[1-9]\d|[12]\d{2}|3(?:[0-5]\d|6[0-5]))|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)(?:(-?)02(?:\2)29|-?366))T(?:[01]\d|2[0-3])(:?)[0-5]\d(?:\3[0-5]\d)?(?:Z|[+-][01]\d(?:\3[0-5]\d)?)$/;
    function pushError({ errors: errors2, p } = {}, message) {
      errors2 === null || errors2 === void 0 ? void 0 : errors2.push(`${p !== null && p !== void 0 ? p : `.`}: ${message}`);
      return false;
    }
    function makeSetter(target2, key) {
      return (v) => {
        target2[key] = v;
      };
    }
    function makeCoercionFn(target2, key) {
      return (v) => {
        const previous = target2[key];
        target2[key] = v;
        return makeCoercionFn(target2, key).bind(null, previous);
      };
    }
    function makeLazyCoercionFn(fn2, orig, generator) {
      const commit = () => {
        fn2(generator());
        return revert;
      };
      const revert = () => {
        fn2(orig);
        return commit;
      };
      return commit;
    }
    function isUnknown() {
      return makeValidator({
        test: (value, state) => {
          return true;
        }
      });
    }
    function isLiteral(expected) {
      return makeValidator({
        test: (value, state) => {
          if (value !== expected)
            return pushError(state, `Expected ${getPrintable(expected)} (got ${getPrintable(value)})`);
          return true;
        }
      });
    }
    function isString() {
      return makeValidator({
        test: (value, state) => {
          if (typeof value !== `string`)
            return pushError(state, `Expected a string (got ${getPrintable(value)})`);
          return true;
        }
      });
    }
    function isEnum(enumSpec) {
      const valuesArray = Array.isArray(enumSpec) ? enumSpec : Object.values(enumSpec);
      const isAlphaNum = valuesArray.every((item) => typeof item === "string" || typeof item === "number");
      const values = new Set(valuesArray);
      if (values.size === 1)
        return isLiteral([...values][0]);
      return makeValidator({
        test: (value, state) => {
          if (!values.has(value)) {
            if (isAlphaNum) {
              return pushError(state, `Expected one of ${getPrintableArray(valuesArray, `or`)} (got ${getPrintable(value)})`);
            } else {
              return pushError(state, `Expected a valid enumeration value (got ${getPrintable(value)})`);
            }
          }
          return true;
        }
      });
    }
    var BOOLEAN_COERCIONS = /* @__PURE__ */ new Map([
      [`true`, true],
      [`True`, true],
      [`1`, true],
      [1, true],
      [`false`, false],
      [`False`, false],
      [`0`, false],
      [0, false]
    ]);
    function isBoolean2() {
      return makeValidator({
        test: (value, state) => {
          var _a;
          if (typeof value !== `boolean`) {
            if (typeof (state === null || state === void 0 ? void 0 : state.coercions) !== `undefined`) {
              if (typeof (state === null || state === void 0 ? void 0 : state.coercion) === `undefined`)
                return pushError(state, `Unbound coercion result`);
              const coercion = BOOLEAN_COERCIONS.get(value);
              if (typeof coercion !== `undefined`) {
                state.coercions.push([(_a = state.p) !== null && _a !== void 0 ? _a : `.`, state.coercion.bind(null, coercion)]);
                return true;
              }
            }
            return pushError(state, `Expected a boolean (got ${getPrintable(value)})`);
          }
          return true;
        }
      });
    }
    function isNumber() {
      return makeValidator({
        test: (value, state) => {
          var _a;
          if (typeof value !== `number`) {
            if (typeof (state === null || state === void 0 ? void 0 : state.coercions) !== `undefined`) {
              if (typeof (state === null || state === void 0 ? void 0 : state.coercion) === `undefined`)
                return pushError(state, `Unbound coercion result`);
              let coercion;
              if (typeof value === `string`) {
                let val;
                try {
                  val = JSON.parse(value);
                } catch (_b) {
                }
                if (typeof val === `number`) {
                  if (JSON.stringify(val) === value) {
                    coercion = val;
                  } else {
                    return pushError(state, `Received a number that can't be safely represented by the runtime (${value})`);
                  }
                }
              }
              if (typeof coercion !== `undefined`) {
                state.coercions.push([(_a = state.p) !== null && _a !== void 0 ? _a : `.`, state.coercion.bind(null, coercion)]);
                return true;
              }
            }
            return pushError(state, `Expected a number (got ${getPrintable(value)})`);
          }
          return true;
        }
      });
    }
    function isPayload(spec) {
      return makeValidator({
        test: (value, state) => {
          var _a;
          if (typeof (state === null || state === void 0 ? void 0 : state.coercions) === `undefined`)
            return pushError(state, `The isPayload predicate can only be used with coercion enabled`);
          if (typeof state.coercion === `undefined`)
            return pushError(state, `Unbound coercion result`);
          if (typeof value !== `string`)
            return pushError(state, `Expected a string (got ${getPrintable(value)})`);
          let inner;
          try {
            inner = JSON.parse(value);
          } catch (_b) {
            return pushError(state, `Expected a JSON string (got ${getPrintable(value)})`);
          }
          const wrapper = { value: inner };
          if (!spec(inner, Object.assign(Object.assign({}, state), { coercion: makeCoercionFn(wrapper, `value`) })))
            return false;
          state.coercions.push([(_a = state.p) !== null && _a !== void 0 ? _a : `.`, state.coercion.bind(null, wrapper.value)]);
          return true;
        }
      });
    }
    function isDate() {
      return makeValidator({
        test: (value, state) => {
          var _a;
          if (!(value instanceof Date)) {
            if (typeof (state === null || state === void 0 ? void 0 : state.coercions) !== `undefined`) {
              if (typeof (state === null || state === void 0 ? void 0 : state.coercion) === `undefined`)
                return pushError(state, `Unbound coercion result`);
              let coercion;
              if (typeof value === `string` && iso8601RegExp.test(value)) {
                coercion = new Date(value);
              } else {
                let timestamp2;
                if (typeof value === `string`) {
                  let val;
                  try {
                    val = JSON.parse(value);
                  } catch (_b) {
                  }
                  if (typeof val === `number`) {
                    timestamp2 = val;
                  }
                } else if (typeof value === `number`) {
                  timestamp2 = value;
                }
                if (typeof timestamp2 !== `undefined`) {
                  if (Number.isSafeInteger(timestamp2) || !Number.isSafeInteger(timestamp2 * 1e3)) {
                    coercion = new Date(timestamp2 * 1e3);
                  } else {
                    return pushError(state, `Received a timestamp that can't be safely represented by the runtime (${value})`);
                  }
                }
              }
              if (typeof coercion !== `undefined`) {
                state.coercions.push([(_a = state.p) !== null && _a !== void 0 ? _a : `.`, state.coercion.bind(null, coercion)]);
                return true;
              }
            }
            return pushError(state, `Expected a date (got ${getPrintable(value)})`);
          }
          return true;
        }
      });
    }
    function isArray(spec, { delimiter } = {}) {
      return makeValidator({
        test: (value, state) => {
          var _a;
          const originalValue = value;
          if (typeof value === `string` && typeof delimiter !== `undefined`) {
            if (typeof (state === null || state === void 0 ? void 0 : state.coercions) !== `undefined`) {
              if (typeof (state === null || state === void 0 ? void 0 : state.coercion) === `undefined`)
                return pushError(state, `Unbound coercion result`);
              value = value.split(delimiter);
            }
          }
          if (!Array.isArray(value))
            return pushError(state, `Expected an array (got ${getPrintable(value)})`);
          let valid2 = true;
          for (let t2 = 0, T2 = value.length; t2 < T2; ++t2) {
            valid2 = spec(value[t2], Object.assign(Object.assign({}, state), { p: computeKey(state, t2), coercion: makeCoercionFn(value, t2) })) && valid2;
            if (!valid2 && (state === null || state === void 0 ? void 0 : state.errors) == null) {
              break;
            }
          }
          if (value !== originalValue)
            state.coercions.push([(_a = state.p) !== null && _a !== void 0 ? _a : `.`, state.coercion.bind(null, value)]);
          return valid2;
        }
      });
    }
    function isSet(spec, { delimiter } = {}) {
      const isArrayValidator = isArray(spec, { delimiter });
      return makeValidator({
        test: (value, state) => {
          var _a, _b;
          if (Object.getPrototypeOf(value).toString() === `[object Set]`) {
            if (typeof (state === null || state === void 0 ? void 0 : state.coercions) !== `undefined`) {
              if (typeof (state === null || state === void 0 ? void 0 : state.coercion) === `undefined`)
                return pushError(state, `Unbound coercion result`);
              const originalValues = [...value];
              const coercedValues = [...value];
              if (!isArrayValidator(coercedValues, Object.assign(Object.assign({}, state), { coercion: void 0 })))
                return false;
              const updateValue = () => coercedValues.some((val, t2) => val !== originalValues[t2]) ? new Set(coercedValues) : value;
              state.coercions.push([(_a = state.p) !== null && _a !== void 0 ? _a : `.`, makeLazyCoercionFn(state.coercion, value, updateValue)]);
              return true;
            } else {
              let valid2 = true;
              for (const subValue of value) {
                valid2 = spec(subValue, Object.assign({}, state)) && valid2;
                if (!valid2 && (state === null || state === void 0 ? void 0 : state.errors) == null) {
                  break;
                }
              }
              return valid2;
            }
          }
          if (typeof (state === null || state === void 0 ? void 0 : state.coercions) !== `undefined`) {
            if (typeof (state === null || state === void 0 ? void 0 : state.coercion) === `undefined`)
              return pushError(state, `Unbound coercion result`);
            const store = { value };
            if (!isArrayValidator(value, Object.assign(Object.assign({}, state), { coercion: makeCoercionFn(store, `value`) })))
              return false;
            state.coercions.push([(_b = state.p) !== null && _b !== void 0 ? _b : `.`, makeLazyCoercionFn(state.coercion, value, () => new Set(store.value))]);
            return true;
          }
          return pushError(state, `Expected a set (got ${getPrintable(value)})`);
        }
      });
    }
    function isMap(keySpec, valueSpec) {
      const isArrayValidator = isArray(isTuple([keySpec, valueSpec]));
      const isRecordValidator = isRecord2(valueSpec, { keys: keySpec });
      return makeValidator({
        test: (value, state) => {
          var _a, _b, _c;
          if (Object.getPrototypeOf(value).toString() === `[object Map]`) {
            if (typeof (state === null || state === void 0 ? void 0 : state.coercions) !== `undefined`) {
              if (typeof (state === null || state === void 0 ? void 0 : state.coercion) === `undefined`)
                return pushError(state, `Unbound coercion result`);
              const originalValues = [...value];
              const coercedValues = [...value];
              if (!isArrayValidator(coercedValues, Object.assign(Object.assign({}, state), { coercion: void 0 })))
                return false;
              const updateValue = () => coercedValues.some((val, t2) => val[0] !== originalValues[t2][0] || val[1] !== originalValues[t2][1]) ? new Map(coercedValues) : value;
              state.coercions.push([(_a = state.p) !== null && _a !== void 0 ? _a : `.`, makeLazyCoercionFn(state.coercion, value, updateValue)]);
              return true;
            } else {
              let valid2 = true;
              for (const [key, subValue] of value) {
                valid2 = keySpec(key, Object.assign({}, state)) && valid2;
                if (!valid2 && (state === null || state === void 0 ? void 0 : state.errors) == null) {
                  break;
                }
                valid2 = valueSpec(subValue, Object.assign(Object.assign({}, state), { p: computeKey(state, key) })) && valid2;
                if (!valid2 && (state === null || state === void 0 ? void 0 : state.errors) == null) {
                  break;
                }
              }
              return valid2;
            }
          }
          if (typeof (state === null || state === void 0 ? void 0 : state.coercions) !== `undefined`) {
            if (typeof (state === null || state === void 0 ? void 0 : state.coercion) === `undefined`)
              return pushError(state, `Unbound coercion result`);
            const store = { value };
            if (Array.isArray(value)) {
              if (!isArrayValidator(value, Object.assign(Object.assign({}, state), { coercion: void 0 })))
                return false;
              state.coercions.push([(_b = state.p) !== null && _b !== void 0 ? _b : `.`, makeLazyCoercionFn(state.coercion, value, () => new Map(store.value))]);
              return true;
            } else {
              if (!isRecordValidator(value, Object.assign(Object.assign({}, state), { coercion: makeCoercionFn(store, `value`) })))
                return false;
              state.coercions.push([(_c = state.p) !== null && _c !== void 0 ? _c : `.`, makeLazyCoercionFn(state.coercion, value, () => new Map(Object.entries(store.value)))]);
              return true;
            }
          }
          return pushError(state, `Expected a map (got ${getPrintable(value)})`);
        }
      });
    }
    function isTuple(spec, { delimiter } = {}) {
      const lengthValidator = hasExactLength(spec.length);
      return makeValidator({
        test: (value, state) => {
          var _a;
          if (typeof value === `string` && typeof delimiter !== `undefined`) {
            if (typeof (state === null || state === void 0 ? void 0 : state.coercions) !== `undefined`) {
              if (typeof (state === null || state === void 0 ? void 0 : state.coercion) === `undefined`)
                return pushError(state, `Unbound coercion result`);
              value = value.split(delimiter);
              state.coercions.push([(_a = state.p) !== null && _a !== void 0 ? _a : `.`, state.coercion.bind(null, value)]);
            }
          }
          if (!Array.isArray(value))
            return pushError(state, `Expected a tuple (got ${getPrintable(value)})`);
          let valid2 = lengthValidator(value, Object.assign({}, state));
          for (let t2 = 0, T2 = value.length; t2 < T2 && t2 < spec.length; ++t2) {
            valid2 = spec[t2](value[t2], Object.assign(Object.assign({}, state), { p: computeKey(state, t2), coercion: makeCoercionFn(value, t2) })) && valid2;
            if (!valid2 && (state === null || state === void 0 ? void 0 : state.errors) == null) {
              break;
            }
          }
          return valid2;
        }
      });
    }
    function isRecord2(spec, { keys: keySpec = null } = {}) {
      const isArrayValidator = isArray(isTuple([keySpec !== null && keySpec !== void 0 ? keySpec : isString(), spec]));
      return makeValidator({
        test: (value, state) => {
          var _a;
          if (Array.isArray(value)) {
            if (typeof (state === null || state === void 0 ? void 0 : state.coercions) !== `undefined`) {
              if (typeof (state === null || state === void 0 ? void 0 : state.coercion) === `undefined`)
                return pushError(state, `Unbound coercion result`);
              if (!isArrayValidator(value, Object.assign(Object.assign({}, state), { coercion: void 0 })))
                return false;
              value = Object.fromEntries(value);
              state.coercions.push([(_a = state.p) !== null && _a !== void 0 ? _a : `.`, state.coercion.bind(null, value)]);
              return true;
            }
          }
          if (typeof value !== `object` || value === null)
            return pushError(state, `Expected an object (got ${getPrintable(value)})`);
          const keys4 = Object.keys(value);
          let valid2 = true;
          for (let t2 = 0, T2 = keys4.length; t2 < T2 && (valid2 || (state === null || state === void 0 ? void 0 : state.errors) != null); ++t2) {
            const key = keys4[t2];
            const sub = value[key];
            if (key === `__proto__` || key === `constructor`) {
              valid2 = pushError(Object.assign(Object.assign({}, state), { p: computeKey(state, key) }), `Unsafe property name`);
              continue;
            }
            if (keySpec !== null && !keySpec(key, state)) {
              valid2 = false;
              continue;
            }
            if (!spec(sub, Object.assign(Object.assign({}, state), { p: computeKey(state, key), coercion: makeCoercionFn(value, key) }))) {
              valid2 = false;
              continue;
            }
          }
          return valid2;
        }
      });
    }
    function isDict(spec, opts2 = {}) {
      return isRecord2(spec, opts2);
    }
    function isObject4(props3, { extra: extraSpec = null } = {}) {
      const specKeys = Object.keys(props3);
      const validator = makeValidator({
        test: (value, state) => {
          if (typeof value !== `object` || value === null)
            return pushError(state, `Expected an object (got ${getPrintable(value)})`);
          const keys4 = /* @__PURE__ */ new Set([...specKeys, ...Object.keys(value)]);
          const extra = {};
          let valid2 = true;
          for (const key of keys4) {
            if (key === `constructor` || key === `__proto__`) {
              valid2 = pushError(Object.assign(Object.assign({}, state), { p: computeKey(state, key) }), `Unsafe property name`);
            } else {
              const spec = Object.prototype.hasOwnProperty.call(props3, key) ? props3[key] : void 0;
              const sub = Object.prototype.hasOwnProperty.call(value, key) ? value[key] : void 0;
              if (typeof spec !== `undefined`) {
                valid2 = spec(sub, Object.assign(Object.assign({}, state), { p: computeKey(state, key), coercion: makeCoercionFn(value, key) })) && valid2;
              } else if (extraSpec === null) {
                valid2 = pushError(Object.assign(Object.assign({}, state), { p: computeKey(state, key) }), `Extraneous property (got ${getPrintable(sub)})`);
              } else {
                Object.defineProperty(extra, key, {
                  enumerable: true,
                  get: () => sub,
                  set: makeSetter(value, key)
                });
              }
            }
            if (!valid2 && (state === null || state === void 0 ? void 0 : state.errors) == null) {
              break;
            }
          }
          if (extraSpec !== null && (valid2 || (state === null || state === void 0 ? void 0 : state.errors) != null))
            valid2 = extraSpec(extra, state) && valid2;
          return valid2;
        }
      });
      return Object.assign(validator, {
        properties: props3
      });
    }
    function isPartial(props3) {
      return isObject4(props3, { extra: isRecord2(isUnknown()) });
    }
    var isInstanceOf = (constructor) => makeValidator({
      test: (value, state) => {
        if (!(value instanceof constructor))
          return pushError(state, `Expected an instance of ${constructor.name} (got ${getPrintable(value)})`);
        return true;
      }
    });
    var isOneOf = (specs, { exclusive = false } = {}) => makeValidator({
      test: (value, state) => {
        var _a, _b, _c;
        const matches2 = [];
        const errorBuffer = typeof (state === null || state === void 0 ? void 0 : state.errors) !== `undefined` ? [] : void 0;
        for (let t2 = 0, T2 = specs.length; t2 < T2; ++t2) {
          const subErrors = typeof (state === null || state === void 0 ? void 0 : state.errors) !== `undefined` ? [] : void 0;
          const subCoercions = typeof (state === null || state === void 0 ? void 0 : state.coercions) !== `undefined` ? [] : void 0;
          if (specs[t2](value, Object.assign(Object.assign({}, state), { errors: subErrors, coercions: subCoercions, p: `${(_a = state === null || state === void 0 ? void 0 : state.p) !== null && _a !== void 0 ? _a : `.`}#${t2 + 1}` }))) {
            matches2.push([`#${t2 + 1}`, subCoercions]);
            if (!exclusive) {
              break;
            }
          } else {
            errorBuffer === null || errorBuffer === void 0 ? void 0 : errorBuffer.push(subErrors[0]);
          }
        }
        if (matches2.length === 1) {
          const [, subCoercions] = matches2[0];
          if (typeof subCoercions !== `undefined`)
            (_b = state === null || state === void 0 ? void 0 : state.coercions) === null || _b === void 0 ? void 0 : _b.push(...subCoercions);
          return true;
        }
        if (matches2.length > 1)
          pushError(state, `Expected to match exactly a single predicate (matched ${matches2.join(`, `)})`);
        else
          (_c = state === null || state === void 0 ? void 0 : state.errors) === null || _c === void 0 ? void 0 : _c.push(...errorBuffer);
        return false;
      }
    });
    function makeTrait(value) {
      return () => {
        return value;
      };
    }
    function makeValidator({ test }) {
      return makeTrait(test)();
    }
    var TypeAssertionError = class extends Error {
      constructor({ errors: errors2 } = {}) {
        let errorMessage = `Type mismatch`;
        if (errors2 && errors2.length > 0) {
          errorMessage += `
`;
          for (const error of errors2) {
            errorMessage += `
- ${error}`;
          }
        }
        super(errorMessage);
      }
    };
    function assert13(val, validator) {
      if (!validator(val)) {
        throw new TypeAssertionError();
      }
    }
    function assertWithErrors(val, validator) {
      const errors2 = [];
      if (!validator(val, { errors: errors2 })) {
        throw new TypeAssertionError({ errors: errors2 });
      }
    }
    function softAssert(val, validator) {
    }
    function as(value, validator, { coerce = false, errors: storeErrors, throw: throws } = {}) {
      const errors2 = storeErrors ? [] : void 0;
      if (!coerce) {
        if (validator(value, { errors: errors2 })) {
          return throws ? value : { value, errors: void 0 };
        } else if (!throws) {
          return { value: void 0, errors: errors2 !== null && errors2 !== void 0 ? errors2 : true };
        } else {
          throw new TypeAssertionError({ errors: errors2 });
        }
      }
      const state = { value };
      const coercion = makeCoercionFn(state, `value`);
      const coercions = [];
      if (!validator(value, { errors: errors2, coercion, coercions })) {
        if (!throws) {
          return { value: void 0, errors: errors2 !== null && errors2 !== void 0 ? errors2 : true };
        } else {
          throw new TypeAssertionError({ errors: errors2 });
        }
      }
      for (const [, apply] of coercions)
        apply();
      if (throws) {
        return state.value;
      } else {
        return { value: state.value, errors: void 0 };
      }
    }
    function fn(validators, fn2) {
      const isValidArgList = isTuple(validators);
      return ((...args) => {
        const check = isValidArgList(args);
        if (!check)
          throw new TypeAssertionError();
        return fn2(...args);
      });
    }
    function hasMinLength(length) {
      return makeValidator({
        test: (value, state) => {
          if (!(value.length >= length))
            return pushError(state, `Expected to have a length of at least ${length} elements (got ${value.length})`);
          return true;
        }
      });
    }
    function hasMaxLength(length) {
      return makeValidator({
        test: (value, state) => {
          if (!(value.length <= length))
            return pushError(state, `Expected to have a length of at most ${length} elements (got ${value.length})`);
          return true;
        }
      });
    }
    function hasExactLength(length) {
      return makeValidator({
        test: (value, state) => {
          if (!(value.length === length))
            return pushError(state, `Expected to have a length of exactly ${length} elements (got ${value.length})`);
          return true;
        }
      });
    }
    function hasUniqueItems({ map: map26 } = {}) {
      return makeValidator({
        test: (value, state) => {
          const set2 = /* @__PURE__ */ new Set();
          const dup = /* @__PURE__ */ new Set();
          for (let t2 = 0, T2 = value.length; t2 < T2; ++t2) {
            const sub = value[t2];
            const key = typeof map26 !== `undefined` ? map26(sub) : sub;
            if (set2.has(key)) {
              if (dup.has(key))
                continue;
              pushError(state, `Expected to contain unique elements; got a duplicate with ${getPrintable(value)}`);
              dup.add(key);
            } else {
              set2.add(key);
            }
          }
          return dup.size === 0;
        }
      });
    }
    function isNegative() {
      return makeValidator({
        test: (value, state) => {
          if (!(value <= 0))
            return pushError(state, `Expected to be negative (got ${value})`);
          return true;
        }
      });
    }
    function isPositive() {
      return makeValidator({
        test: (value, state) => {
          if (!(value >= 0))
            return pushError(state, `Expected to be positive (got ${value})`);
          return true;
        }
      });
    }
    function isAtLeast(n2) {
      return makeValidator({
        test: (value, state) => {
          if (!(value >= n2))
            return pushError(state, `Expected to be at least ${n2} (got ${value})`);
          return true;
        }
      });
    }
    function isAtMost(n2) {
      return makeValidator({
        test: (value, state) => {
          if (!(value <= n2))
            return pushError(state, `Expected to be at most ${n2} (got ${value})`);
          return true;
        }
      });
    }
    function isInInclusiveRange(a2, b) {
      return makeValidator({
        test: (value, state) => {
          if (!(value >= a2 && value <= b))
            return pushError(state, `Expected to be in the [${a2}; ${b}] range (got ${value})`);
          return true;
        }
      });
    }
    function isInExclusiveRange(a2, b) {
      return makeValidator({
        test: (value, state) => {
          if (!(value >= a2 && value < b))
            return pushError(state, `Expected to be in the [${a2}; ${b}[ range (got ${value})`);
          return true;
        }
      });
    }
    function isInteger2({ unsafe = false } = {}) {
      return makeValidator({
        test: (value, state) => {
          if (value !== Math.round(value))
            return pushError(state, `Expected to be an integer (got ${value})`);
          if (!unsafe && !Number.isSafeInteger(value))
            return pushError(state, `Expected to be a safe integer (got ${value})`);
          return true;
        }
      });
    }
    function matchesRegExp(regExp) {
      return makeValidator({
        test: (value, state) => {
          if (!regExp.test(value))
            return pushError(state, `Expected to match the pattern ${regExp.toString()} (got ${getPrintable(value)})`);
          return true;
        }
      });
    }
    function isLowerCase() {
      return makeValidator({
        test: (value, state) => {
          if (value !== value.toLowerCase())
            return pushError(state, `Expected to be all-lowercase (got ${value})`);
          return true;
        }
      });
    }
    function isUpperCase() {
      return makeValidator({
        test: (value, state) => {
          if (value !== value.toUpperCase())
            return pushError(state, `Expected to be all-uppercase (got ${value})`);
          return true;
        }
      });
    }
    function isUUID4() {
      return makeValidator({
        test: (value, state) => {
          if (!uuid4RegExp.test(value))
            return pushError(state, `Expected to be a valid UUID v4 (got ${getPrintable(value)})`);
          return true;
        }
      });
    }
    function isISO8601() {
      return makeValidator({
        test: (value, state) => {
          if (!iso8601RegExp.test(value))
            return pushError(state, `Expected to be a valid ISO 8601 date string (got ${getPrintable(value)})`);
          return true;
        }
      });
    }
    function isHexColor({ alpha = false }) {
      return makeValidator({
        test: (value, state) => {
          const res = alpha ? colorStringRegExp.test(value) : colorStringAlphaRegExp.test(value);
          if (!res)
            return pushError(state, `Expected to be a valid hexadecimal color string (got ${getPrintable(value)})`);
          return true;
        }
      });
    }
    function isBase64() {
      return makeValidator({
        test: (value, state) => {
          if (!base64RegExp.test(value))
            return pushError(state, `Expected to be a valid base 64 string (got ${getPrintable(value)})`);
          return true;
        }
      });
    }
    function isJSON(spec = isUnknown()) {
      return makeValidator({
        test: (value, state) => {
          let data;
          try {
            data = JSON.parse(value);
          } catch (_a) {
            return pushError(state, `Expected to be a valid JSON string (got ${getPrintable(value)})`);
          }
          return spec(data, state);
        }
      });
    }
    function cascade(spec, ...followups) {
      const resolvedFollowups = Array.isArray(followups[0]) ? followups[0] : followups;
      return makeValidator({
        test: (value, state) => {
          var _a, _b;
          const context = { value };
          const subCoercion = typeof (state === null || state === void 0 ? void 0 : state.coercions) !== `undefined` ? makeCoercionFn(context, `value`) : void 0;
          const subCoercions = typeof (state === null || state === void 0 ? void 0 : state.coercions) !== `undefined` ? [] : void 0;
          if (!spec(value, Object.assign(Object.assign({}, state), { coercion: subCoercion, coercions: subCoercions })))
            return false;
          const reverts = [];
          if (typeof subCoercions !== `undefined`)
            for (const [, coercion] of subCoercions)
              reverts.push(coercion());
          try {
            if (typeof (state === null || state === void 0 ? void 0 : state.coercions) !== `undefined`) {
              if (context.value !== value) {
                if (typeof (state === null || state === void 0 ? void 0 : state.coercion) === `undefined`)
                  return pushError(state, `Unbound coercion result`);
                state.coercions.push([(_a = state.p) !== null && _a !== void 0 ? _a : `.`, state.coercion.bind(null, context.value)]);
              }
              (_b = state === null || state === void 0 ? void 0 : state.coercions) === null || _b === void 0 ? void 0 : _b.push(...subCoercions);
            }
            return resolvedFollowups.every((spec2) => {
              return spec2(context.value, state);
            });
          } finally {
            for (const revert of reverts) {
              revert();
            }
          }
        }
      });
    }
    function applyCascade(spec, ...followups) {
      const resolvedFollowups = Array.isArray(followups[0]) ? followups[0] : followups;
      return cascade(spec, resolvedFollowups);
    }
    function isOptional(spec) {
      return makeValidator({
        test: (value, state) => {
          if (typeof value === `undefined`)
            return true;
          return spec(value, state);
        }
      });
    }
    function isNullable(spec) {
      return makeValidator({
        test: (value, state) => {
          if (value === null)
            return true;
          return spec(value, state);
        }
      });
    }
    var checks = {
      missing: (keys4, key) => keys4.has(key),
      undefined: (keys4, key, value) => keys4.has(key) && typeof value[key] !== `undefined`,
      nil: (keys4, key, value) => keys4.has(key) && value[key] != null,
      falsy: (keys4, key, value) => keys4.has(key) && !!value[key]
    };
    function hasRequiredKeys(requiredKeys, options) {
      var _a;
      const requiredSet = new Set(requiredKeys);
      const check = checks[(_a = options === null || options === void 0 ? void 0 : options.missingIf) !== null && _a !== void 0 ? _a : "missing"];
      return makeValidator({
        test: (value, state) => {
          const keys4 = new Set(Object.keys(value));
          const problems = [];
          for (const key of requiredSet)
            if (!check(keys4, key, value))
              problems.push(key);
          if (problems.length > 0)
            return pushError(state, `Missing required ${plural2(problems.length, `property`, `properties`)} ${getPrintableArray(problems, `and`)}`);
          return true;
        }
      });
    }
    function hasAtLeastOneKey(requiredKeys, options) {
      var _a;
      const requiredSet = new Set(requiredKeys);
      const check = checks[(_a = options === null || options === void 0 ? void 0 : options.missingIf) !== null && _a !== void 0 ? _a : "missing"];
      return makeValidator({
        test: (value, state) => {
          const keys4 = Object.keys(value);
          const valid2 = keys4.some((key) => check(requiredSet, key, value));
          if (!valid2)
            return pushError(state, `Missing at least one property from ${getPrintableArray(Array.from(requiredSet), `or`)}`);
          return true;
        }
      });
    }
    function hasForbiddenKeys(forbiddenKeys, options) {
      var _a;
      const forbiddenSet = new Set(forbiddenKeys);
      const check = checks[(_a = options === null || options === void 0 ? void 0 : options.missingIf) !== null && _a !== void 0 ? _a : "missing"];
      return makeValidator({
        test: (value, state) => {
          const keys4 = new Set(Object.keys(value));
          const problems = [];
          for (const key of forbiddenSet)
            if (check(keys4, key, value))
              problems.push(key);
          if (problems.length > 0)
            return pushError(state, `Forbidden ${plural2(problems.length, `property`, `properties`)} ${getPrintableArray(problems, `and`)}`);
          return true;
        }
      });
    }
    function hasMutuallyExclusiveKeys(exclusiveKeys, options) {
      var _a;
      const exclusiveSet = new Set(exclusiveKeys);
      const check = checks[(_a = options === null || options === void 0 ? void 0 : options.missingIf) !== null && _a !== void 0 ? _a : "missing"];
      return makeValidator({
        test: (value, state) => {
          const keys4 = new Set(Object.keys(value));
          const used = [];
          for (const key of exclusiveSet)
            if (check(keys4, key, value))
              used.push(key);
          if (used.length > 1)
            return pushError(state, `Mutually exclusive properties ${getPrintableArray(used, `and`)}`);
          return true;
        }
      });
    }
    (function(KeyRelationship) {
      KeyRelationship["Forbids"] = "Forbids";
      KeyRelationship["Requires"] = "Requires";
    })(exports2.KeyRelationship || (exports2.KeyRelationship = {}));
    var keyRelationships = {
      [exports2.KeyRelationship.Forbids]: {
        expect: false,
        message: `forbids using`
      },
      [exports2.KeyRelationship.Requires]: {
        expect: true,
        message: `requires using`
      }
    };
    function hasKeyRelationship(subject, relationship, others, options) {
      var _a, _b;
      const skipped = new Set((_a = options === null || options === void 0 ? void 0 : options.ignore) !== null && _a !== void 0 ? _a : []);
      const check = checks[(_b = options === null || options === void 0 ? void 0 : options.missingIf) !== null && _b !== void 0 ? _b : "missing"];
      const otherSet = new Set(others);
      const spec = keyRelationships[relationship];
      const conjunction = relationship === exports2.KeyRelationship.Forbids ? `or` : `and`;
      return makeValidator({
        test: (value, state) => {
          const keys4 = new Set(Object.keys(value));
          if (!check(keys4, subject, value) || skipped.has(value[subject]))
            return true;
          const problems = [];
          for (const key of otherSet)
            if ((check(keys4, key, value) && !skipped.has(value[key])) !== spec.expect)
              problems.push(key);
          if (problems.length >= 1)
            return pushError(state, `Property "${subject}" ${spec.message} ${plural2(problems.length, `property`, `properties`)} ${getPrintableArray(problems, conjunction)}`);
          return true;
        }
      });
    }
    exports2.TypeAssertionError = TypeAssertionError;
    exports2.applyCascade = applyCascade;
    exports2.as = as;
    exports2.assert = assert13;
    exports2.assertWithErrors = assertWithErrors;
    exports2.cascade = cascade;
    exports2.fn = fn;
    exports2.hasAtLeastOneKey = hasAtLeastOneKey;
    exports2.hasExactLength = hasExactLength;
    exports2.hasForbiddenKeys = hasForbiddenKeys;
    exports2.hasKeyRelationship = hasKeyRelationship;
    exports2.hasMaxLength = hasMaxLength;
    exports2.hasMinLength = hasMinLength;
    exports2.hasMutuallyExclusiveKeys = hasMutuallyExclusiveKeys;
    exports2.hasRequiredKeys = hasRequiredKeys;
    exports2.hasUniqueItems = hasUniqueItems;
    exports2.isArray = isArray;
    exports2.isAtLeast = isAtLeast;
    exports2.isAtMost = isAtMost;
    exports2.isBase64 = isBase64;
    exports2.isBoolean = isBoolean2;
    exports2.isDate = isDate;
    exports2.isDict = isDict;
    exports2.isEnum = isEnum;
    exports2.isHexColor = isHexColor;
    exports2.isISO8601 = isISO8601;
    exports2.isInExclusiveRange = isInExclusiveRange;
    exports2.isInInclusiveRange = isInInclusiveRange;
    exports2.isInstanceOf = isInstanceOf;
    exports2.isInteger = isInteger2;
    exports2.isJSON = isJSON;
    exports2.isLiteral = isLiteral;
    exports2.isLowerCase = isLowerCase;
    exports2.isMap = isMap;
    exports2.isNegative = isNegative;
    exports2.isNullable = isNullable;
    exports2.isNumber = isNumber;
    exports2.isObject = isObject4;
    exports2.isOneOf = isOneOf;
    exports2.isOptional = isOptional;
    exports2.isPartial = isPartial;
    exports2.isPayload = isPayload;
    exports2.isPositive = isPositive;
    exports2.isRecord = isRecord2;
    exports2.isSet = isSet;
    exports2.isString = isString;
    exports2.isTuple = isTuple;
    exports2.isUUID4 = isUUID4;
    exports2.isUnknown = isUnknown;
    exports2.isUpperCase = isUpperCase;
    exports2.makeTrait = makeTrait;
    exports2.makeValidator = makeValidator;
    exports2.matchesRegExp = matchesRegExp;
    exports2.softAssert = softAssert;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/Command.js
var require_Command = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/Command.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var utils = require_utils7();
    function _interopNamespace(e) {
      if (e && e.__esModule) return e;
      var n2 = /* @__PURE__ */ Object.create(null);
      if (e) {
        Object.keys(e).forEach(function(k2) {
          if (k2 !== "default") {
            var d = Object.getOwnPropertyDescriptor(e, k2);
            Object.defineProperty(n2, k2, d.get ? d : {
              enumerable: true,
              get: function() {
                return e[k2];
              }
            });
          }
        });
      }
      n2["default"] = e;
      return Object.freeze(n2);
    }
    var Command = class {
      constructor() {
        this.help = false;
      }
      /**
       * Defines the usage information for the given command.
       */
      static Usage(usage) {
        return usage;
      }
      /**
       * Standard error handler which will simply rethrow the error. Can be used
       * to add custom logic to handle errors from the command or simply return
       * the parent class error handling.
       */
      async catch(error) {
        throw error;
      }
      async validateAndExecute() {
        const commandClass = this.constructor;
        const cascade = commandClass.schema;
        if (Array.isArray(cascade)) {
          const { isDict, isUnknown, applyCascade } = await Promise.resolve().then(function() {
            return /* @__PURE__ */ _interopNamespace(require_lib14());
          });
          const schema2 = applyCascade(isDict(isUnknown()), cascade);
          const errors2 = [];
          const coercions = [];
          const check = schema2(this, { errors: errors2, coercions });
          if (!check)
            throw utils.formatError(`Invalid option schema`, errors2);
          for (const [, op] of coercions) {
            op();
          }
        } else if (cascade != null) {
          throw new Error(`Invalid command schema`);
        }
        const exitCode = await this.execute();
        if (typeof exitCode !== `undefined`) {
          return exitCode;
        } else {
          return 0;
        }
      }
    };
    Command.isOption = utils.isOptionSymbol;
    Command.Default = [];
    exports2.Command = Command;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/format.js
var require_format2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/format.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var MAX_LINE_LENGTH = 80;
    var richLine = Array(MAX_LINE_LENGTH).fill(`\u2501`);
    for (let t2 = 0; t2 <= 24; ++t2)
      richLine[richLine.length - t2] = `\x1B[38;5;${232 + t2}m\u2501`;
    var richFormat = {
      header: (str2) => `\x1B[1m\u2501\u2501\u2501 ${str2}${str2.length < MAX_LINE_LENGTH - 5 ? ` ${richLine.slice(str2.length + 5).join(``)}` : `:`}\x1B[0m`,
      bold: (str2) => `\x1B[1m${str2}\x1B[22m`,
      error: (str2) => `\x1B[31m\x1B[1m${str2}\x1B[22m\x1B[39m`,
      code: (str2) => `\x1B[36m${str2}\x1B[39m`
    };
    var textFormat = {
      header: (str2) => str2,
      bold: (str2) => str2,
      error: (str2) => str2,
      code: (str2) => str2
    };
    function dedent(text) {
      const lines = text.split(`
`);
      const nonEmptyLines = lines.filter((line) => line.match(/\S/));
      const indent = nonEmptyLines.length > 0 ? nonEmptyLines.reduce((minLength, line) => Math.min(minLength, line.length - line.trimStart().length), Number.MAX_VALUE) : 0;
      return lines.map((line) => line.slice(indent).trimRight()).join(`
`);
    }
    function formatMarkdownish(text, { format: format2, paragraphs }) {
      text = text.replace(/\r\n?/g, `
`);
      text = dedent(text);
      text = text.replace(/^\n+|\n+$/g, ``);
      text = text.replace(/^(\s*)-([^\n]*?)\n+/gm, `$1-$2

`);
      text = text.replace(/\n(\n)?\n*/g, ($0, $1) => $1 ? $1 : ` `);
      if (paragraphs) {
        text = text.split(/\n/).map((paragraph) => {
          const bulletMatch = paragraph.match(/^\s*[*-][\t ]+(.*)/);
          if (!bulletMatch)
            return paragraph.match(/(.{1,80})(?: |$)/g).join(`
`);
          const indent = paragraph.length - paragraph.trimStart().length;
          return bulletMatch[1].match(new RegExp(`(.{1,${78 - indent}})(?: |$)`, `g`)).map((line, index) => {
            return ` `.repeat(indent) + (index === 0 ? `- ` : `  `) + line;
          }).join(`
`);
        }).join(`

`);
      }
      text = text.replace(/(`+)((?:.|[\n])*?)\1/g, ($0, $1, $2) => {
        return format2.code($1 + $2 + $1);
      });
      text = text.replace(/(\*\*)((?:.|[\n])*?)\1/g, ($0, $1, $2) => {
        return format2.bold($1 + $2 + $1);
      });
      return text ? `${text}
` : ``;
    }
    exports2.formatMarkdownish = formatMarkdownish;
    exports2.richFormat = richFormat;
    exports2.textFormat = textFormat;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/core.js
var require_core3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/core.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var constants5 = require_constants7();
    var errors2 = require_errors3();
    function debug(str2) {
      if (constants5.DEBUG) {
        console.log(str2);
      }
    }
    var basicHelpState = {
      candidateUsage: null,
      requiredOptions: [],
      errorMessage: null,
      ignoreOptions: false,
      path: [],
      positionals: [],
      options: [],
      remainder: null,
      selectedIndex: constants5.HELP_COMMAND_INDEX
    };
    function makeStateMachine() {
      return {
        nodes: [makeNode2(), makeNode2(), makeNode2()]
      };
    }
    function makeAnyOfMachine(inputs) {
      const output = makeStateMachine();
      const heads = [];
      let offset = output.nodes.length;
      for (const input of inputs) {
        heads.push(offset);
        for (let t2 = 0; t2 < input.nodes.length; ++t2)
          if (!isTerminalNode(t2))
            output.nodes.push(cloneNode(input.nodes[t2], offset));
        offset += input.nodes.length - 2;
      }
      for (const head2 of heads)
        registerShortcut(output, constants5.NODE_INITIAL, head2);
      return output;
    }
    function injectNode(machine, node) {
      machine.nodes.push(node);
      return machine.nodes.length - 1;
    }
    function simplifyMachine(input) {
      const visited = /* @__PURE__ */ new Set();
      const process17 = (node) => {
        if (visited.has(node))
          return;
        visited.add(node);
        const nodeDef = input.nodes[node];
        for (const transitions of Object.values(nodeDef.statics))
          for (const { to } of transitions)
            process17(to);
        for (const [, { to }] of nodeDef.dynamics)
          process17(to);
        for (const { to } of nodeDef.shortcuts)
          process17(to);
        const shortcuts = new Set(nodeDef.shortcuts.map(({ to }) => to));
        while (nodeDef.shortcuts.length > 0) {
          const { to } = nodeDef.shortcuts.shift();
          const toDef = input.nodes[to];
          for (const [segment, transitions] of Object.entries(toDef.statics)) {
            const store = !Object.prototype.hasOwnProperty.call(nodeDef.statics, segment) ? nodeDef.statics[segment] = [] : nodeDef.statics[segment];
            for (const transition of transitions) {
              if (!store.some(({ to: to2 }) => transition.to === to2)) {
                store.push(transition);
              }
            }
          }
          for (const [test, transition] of toDef.dynamics)
            if (!nodeDef.dynamics.some(([otherTest, { to: to2 }]) => test === otherTest && transition.to === to2))
              nodeDef.dynamics.push([test, transition]);
          for (const transition of toDef.shortcuts) {
            if (!shortcuts.has(transition.to)) {
              nodeDef.shortcuts.push(transition);
              shortcuts.add(transition.to);
            }
          }
        }
      };
      process17(constants5.NODE_INITIAL);
    }
    function debugMachine(machine, { prefix = `` } = {}) {
      if (constants5.DEBUG) {
        debug(`${prefix}Nodes are:`);
        for (let t2 = 0; t2 < machine.nodes.length; ++t2) {
          debug(`${prefix}  ${t2}: ${JSON.stringify(machine.nodes[t2])}`);
        }
      }
    }
    function runMachineInternal(machine, input, partial = false) {
      debug(`Running a vm on ${JSON.stringify(input)}`);
      let branches = [{ node: constants5.NODE_INITIAL, state: {
        candidateUsage: null,
        requiredOptions: [],
        errorMessage: null,
        ignoreOptions: false,
        options: [],
        path: [],
        positionals: [],
        remainder: null,
        selectedIndex: null
      } }];
      debugMachine(machine, { prefix: `  ` });
      const tokens = [constants5.START_OF_INPUT, ...input];
      for (let t2 = 0; t2 < tokens.length; ++t2) {
        const segment = tokens[t2];
        debug(`  Processing ${JSON.stringify(segment)}`);
        const nextBranches = [];
        for (const { node, state } of branches) {
          debug(`    Current node is ${node}`);
          const nodeDef = machine.nodes[node];
          if (node === constants5.NODE_ERRORED) {
            nextBranches.push({ node, state });
            continue;
          }
          console.assert(nodeDef.shortcuts.length === 0, `Shortcuts should have been eliminated by now`);
          const hasExactMatch = Object.prototype.hasOwnProperty.call(nodeDef.statics, segment);
          if (!partial || t2 < tokens.length - 1 || hasExactMatch) {
            if (hasExactMatch) {
              const transitions = nodeDef.statics[segment];
              for (const { to, reducer } of transitions) {
                nextBranches.push({ node: to, state: typeof reducer !== `undefined` ? execute2(reducers, reducer, state, segment) : state });
                debug(`      Static transition to ${to} found`);
              }
            } else {
              debug(`      No static transition found`);
            }
          } else {
            let hasMatches = false;
            for (const candidate of Object.keys(nodeDef.statics)) {
              if (!candidate.startsWith(segment))
                continue;
              if (segment === candidate) {
                for (const { to, reducer } of nodeDef.statics[candidate]) {
                  nextBranches.push({ node: to, state: typeof reducer !== `undefined` ? execute2(reducers, reducer, state, segment) : state });
                  debug(`      Static transition to ${to} found`);
                }
              } else {
                for (const { to } of nodeDef.statics[candidate]) {
                  nextBranches.push({ node: to, state: { ...state, remainder: candidate.slice(segment.length) } });
                  debug(`      Static transition to ${to} found (partial match)`);
                }
              }
              hasMatches = true;
            }
            if (!hasMatches) {
              debug(`      No partial static transition found`);
            }
          }
          if (segment !== constants5.END_OF_INPUT) {
            for (const [test, { to, reducer }] of nodeDef.dynamics) {
              if (execute2(tests, test, state, segment)) {
                nextBranches.push({ node: to, state: typeof reducer !== `undefined` ? execute2(reducers, reducer, state, segment) : state });
                debug(`      Dynamic transition to ${to} found (via ${test})`);
              }
            }
          }
        }
        if (nextBranches.length === 0 && segment === constants5.END_OF_INPUT && input.length === 1) {
          return [{
            node: constants5.NODE_INITIAL,
            state: basicHelpState
          }];
        }
        if (nextBranches.length === 0) {
          throw new errors2.UnknownSyntaxError(input, branches.filter(({ node }) => {
            return node !== constants5.NODE_ERRORED;
          }).map(({ state }) => {
            return { usage: state.candidateUsage, reason: null };
          }));
        }
        if (nextBranches.every(({ node }) => node === constants5.NODE_ERRORED)) {
          throw new errors2.UnknownSyntaxError(input, nextBranches.map(({ state }) => {
            return { usage: state.candidateUsage, reason: state.errorMessage };
          }));
        }
        branches = trimSmallerBranches(nextBranches);
      }
      if (branches.length > 0) {
        debug(`  Results:`);
        for (const branch of branches) {
          debug(`    - ${branch.node} -> ${JSON.stringify(branch.state)}`);
        }
      } else {
        debug(`  No results`);
      }
      return branches;
    }
    function checkIfNodeIsFinished(node, state) {
      if (state.selectedIndex !== null)
        return true;
      if (Object.prototype.hasOwnProperty.call(node.statics, constants5.END_OF_INPUT)) {
        for (const { to } of node.statics[constants5.END_OF_INPUT])
          if (to === constants5.NODE_SUCCESS)
            return true;
      }
      return false;
    }
    function suggestMachine(machine, input, partial) {
      const prefix = partial && input.length > 0 ? [``] : [];
      const branches = runMachineInternal(machine, input, partial);
      const suggestions = [];
      const suggestionsJson = /* @__PURE__ */ new Set();
      const traverseSuggestion = (suggestion, node, skipFirst = true) => {
        let nextNodes = [node];
        while (nextNodes.length > 0) {
          const currentNodes = nextNodes;
          nextNodes = [];
          for (const node2 of currentNodes) {
            const nodeDef = machine.nodes[node2];
            const keys4 = Object.keys(nodeDef.statics);
            for (const key of Object.keys(nodeDef.statics)) {
              const segment = keys4[0];
              for (const { to, reducer } of nodeDef.statics[segment]) {
                if (reducer !== `pushPath`)
                  continue;
                if (!skipFirst)
                  suggestion.push(segment);
                nextNodes.push(to);
              }
            }
          }
          skipFirst = false;
        }
        const json2 = JSON.stringify(suggestion);
        if (suggestionsJson.has(json2))
          return;
        suggestions.push(suggestion);
        suggestionsJson.add(json2);
      };
      for (const { node, state } of branches) {
        if (state.remainder !== null) {
          traverseSuggestion([state.remainder], node);
          continue;
        }
        const nodeDef = machine.nodes[node];
        const isFinished = checkIfNodeIsFinished(nodeDef, state);
        for (const [candidate, transitions] of Object.entries(nodeDef.statics))
          if (isFinished && candidate !== constants5.END_OF_INPUT || !candidate.startsWith(`-`) && transitions.some(({ reducer }) => reducer === `pushPath`))
            traverseSuggestion([...prefix, candidate], node);
        if (!isFinished)
          continue;
        for (const [test, { to }] of nodeDef.dynamics) {
          if (to === constants5.NODE_ERRORED)
            continue;
          const tokens = suggest(test, state);
          if (tokens === null)
            continue;
          for (const token of tokens) {
            traverseSuggestion([...prefix, token], node);
          }
        }
      }
      return [...suggestions].sort();
    }
    function runMachine(machine, input) {
      const branches = runMachineInternal(machine, [...input, constants5.END_OF_INPUT]);
      return selectBestState(input, branches.map(({ state }) => {
        return state;
      }));
    }
    function trimSmallerBranches(branches) {
      let maxPathSize = 0;
      for (const { state } of branches)
        if (state.path.length > maxPathSize)
          maxPathSize = state.path.length;
      return branches.filter(({ state }) => {
        return state.path.length === maxPathSize;
      });
    }
    function selectBestState(input, states) {
      const terminalStates = states.filter((state) => {
        return state.selectedIndex !== null;
      });
      if (terminalStates.length === 0)
        throw new Error();
      const requiredOptionsSetStates = terminalStates.filter((state) => state.requiredOptions.every((names) => names.some((name) => state.options.find((opt) => opt.name === name))));
      if (requiredOptionsSetStates.length === 0) {
        throw new errors2.UnknownSyntaxError(input, terminalStates.map((state) => ({
          usage: state.candidateUsage,
          reason: null
        })));
      }
      let maxPathSize = 0;
      for (const state of requiredOptionsSetStates)
        if (state.path.length > maxPathSize)
          maxPathSize = state.path.length;
      const bestPathBranches = requiredOptionsSetStates.filter((state) => {
        return state.path.length === maxPathSize;
      });
      const getPositionalCount = (state) => state.positionals.filter(({ extra }) => {
        return !extra;
      }).length + state.options.length;
      const statesWithPositionalCount = bestPathBranches.map((state) => {
        return { state, positionalCount: getPositionalCount(state) };
      });
      let maxPositionalCount = 0;
      for (const { positionalCount } of statesWithPositionalCount)
        if (positionalCount > maxPositionalCount)
          maxPositionalCount = positionalCount;
      const bestPositionalStates = statesWithPositionalCount.filter(({ positionalCount }) => {
        return positionalCount === maxPositionalCount;
      }).map(({ state }) => {
        return state;
      });
      const fixedStates = aggregateHelpStates(bestPositionalStates);
      if (fixedStates.length > 1)
        throw new errors2.AmbiguousSyntaxError(input, fixedStates.map((state) => state.candidateUsage));
      return fixedStates[0];
    }
    function aggregateHelpStates(states) {
      const notHelps = [];
      const helps = [];
      for (const state of states) {
        if (state.selectedIndex === constants5.HELP_COMMAND_INDEX) {
          helps.push(state);
        } else {
          notHelps.push(state);
        }
      }
      if (helps.length > 0) {
        notHelps.push({
          ...basicHelpState,
          path: findCommonPrefix(...helps.map((state) => state.path)),
          options: helps.reduce((options, state) => options.concat(state.options), [])
        });
      }
      return notHelps;
    }
    function findCommonPrefix(firstPath, secondPath, ...rest) {
      if (secondPath === void 0)
        return Array.from(firstPath);
      return findCommonPrefix(firstPath.filter((segment, i2) => segment === secondPath[i2]), ...rest);
    }
    function makeNode2() {
      return {
        dynamics: [],
        shortcuts: [],
        statics: {}
      };
    }
    function isTerminalNode(node) {
      return node === constants5.NODE_SUCCESS || node === constants5.NODE_ERRORED;
    }
    function cloneTransition(input, offset = 0) {
      return {
        to: !isTerminalNode(input.to) ? input.to > 2 ? input.to + offset - 2 : input.to + offset : input.to,
        reducer: input.reducer
      };
    }
    function cloneNode(input, offset = 0) {
      const output = makeNode2();
      for (const [test, transition] of input.dynamics)
        output.dynamics.push([test, cloneTransition(transition, offset)]);
      for (const transition of input.shortcuts)
        output.shortcuts.push(cloneTransition(transition, offset));
      for (const [segment, transitions] of Object.entries(input.statics))
        output.statics[segment] = transitions.map((transition) => cloneTransition(transition, offset));
      return output;
    }
    function registerDynamic(machine, from5, test, to, reducer) {
      machine.nodes[from5].dynamics.push([
        test,
        { to, reducer }
      ]);
    }
    function registerShortcut(machine, from5, to, reducer) {
      machine.nodes[from5].shortcuts.push({ to, reducer });
    }
    function registerStatic(machine, from5, test, to, reducer) {
      const store = !Object.prototype.hasOwnProperty.call(machine.nodes[from5].statics, test) ? machine.nodes[from5].statics[test] = [] : machine.nodes[from5].statics[test];
      store.push({ to, reducer });
    }
    function execute2(store, callback2, state, segment) {
      if (Array.isArray(callback2)) {
        const [name, ...args] = callback2;
        return store[name](state, segment, ...args);
      } else {
        return store[callback2](state, segment);
      }
    }
    function suggest(callback2, state) {
      const fn = Array.isArray(callback2) ? tests[callback2[0]] : tests[callback2];
      if (typeof fn.suggest === `undefined`)
        return null;
      const args = Array.isArray(callback2) ? callback2.slice(1) : [];
      return fn.suggest(state, ...args);
    }
    var tests = {
      always: () => {
        return true;
      },
      isOptionLike: (state, segment) => {
        return !state.ignoreOptions && (segment !== `-` && segment.startsWith(`-`));
      },
      isNotOptionLike: (state, segment) => {
        return state.ignoreOptions || segment === `-` || !segment.startsWith(`-`);
      },
      isOption: (state, segment, name, hidden2) => {
        return !state.ignoreOptions && segment === name;
      },
      isBatchOption: (state, segment, names) => {
        return !state.ignoreOptions && constants5.BATCH_REGEX.test(segment) && [...segment.slice(1)].every((name) => names.includes(`-${name}`));
      },
      isBoundOption: (state, segment, names, options) => {
        const optionParsing = segment.match(constants5.BINDING_REGEX);
        return !state.ignoreOptions && !!optionParsing && constants5.OPTION_REGEX.test(optionParsing[1]) && names.includes(optionParsing[1]) && options.filter((opt) => opt.names.includes(optionParsing[1])).every((opt) => opt.allowBinding);
      },
      isNegatedOption: (state, segment, name) => {
        return !state.ignoreOptions && segment === `--no-${name.slice(2)}`;
      },
      isHelp: (state, segment) => {
        return !state.ignoreOptions && constants5.HELP_REGEX.test(segment);
      },
      isUnsupportedOption: (state, segment, names) => {
        return !state.ignoreOptions && segment.startsWith(`-`) && constants5.OPTION_REGEX.test(segment) && !names.includes(segment);
      },
      isInvalidOption: (state, segment) => {
        return !state.ignoreOptions && segment.startsWith(`-`) && !constants5.OPTION_REGEX.test(segment);
      }
    };
    tests.isOption.suggest = (state, name, hidden2 = true) => {
      return !hidden2 ? [name] : null;
    };
    var reducers = {
      setCandidateState: (state, segment, candidateState) => {
        return { ...state, ...candidateState };
      },
      setSelectedIndex: (state, segment, index) => {
        return { ...state, selectedIndex: index };
      },
      pushBatch: (state, segment) => {
        return { ...state, options: state.options.concat([...segment.slice(1)].map((name) => ({ name: `-${name}`, value: true }))) };
      },
      pushBound: (state, segment) => {
        const [, name, value] = segment.match(constants5.BINDING_REGEX);
        return { ...state, options: state.options.concat({ name, value }) };
      },
      pushPath: (state, segment) => {
        return { ...state, path: state.path.concat(segment) };
      },
      pushPositional: (state, segment) => {
        return { ...state, positionals: state.positionals.concat({ value: segment, extra: false }) };
      },
      pushExtra: (state, segment) => {
        return { ...state, positionals: state.positionals.concat({ value: segment, extra: true }) };
      },
      pushExtraNoLimits: (state, segment) => {
        return { ...state, positionals: state.positionals.concat({ value: segment, extra: NoLimits }) };
      },
      pushTrue: (state, segment, name = segment) => {
        return { ...state, options: state.options.concat({ name: segment, value: true }) };
      },
      pushFalse: (state, segment, name = segment) => {
        return { ...state, options: state.options.concat({ name, value: false }) };
      },
      pushUndefined: (state, segment) => {
        return { ...state, options: state.options.concat({ name: segment, value: void 0 }) };
      },
      pushStringValue: (state, segment) => {
        var _a;
        const copy2 = { ...state, options: [...state.options] };
        const lastOption = state.options[state.options.length - 1];
        lastOption.value = ((_a = lastOption.value) !== null && _a !== void 0 ? _a : []).concat([segment]);
        return copy2;
      },
      setStringValue: (state, segment) => {
        const copy2 = { ...state, options: [...state.options] };
        const lastOption = state.options[state.options.length - 1];
        lastOption.value = segment;
        return copy2;
      },
      inhibateOptions: (state) => {
        return { ...state, ignoreOptions: true };
      },
      useHelp: (state, segment, command) => {
        const [
          ,
          /* name */
          ,
          index
        ] = segment.match(constants5.HELP_REGEX);
        if (typeof index !== `undefined`) {
          return { ...state, options: [{ name: `-c`, value: String(command) }, { name: `-i`, value: index }] };
        } else {
          return { ...state, options: [{ name: `-c`, value: String(command) }] };
        }
      },
      setError: (state, segment, errorMessage) => {
        if (segment === constants5.END_OF_INPUT) {
          return { ...state, errorMessage: `${errorMessage}.` };
        } else {
          return { ...state, errorMessage: `${errorMessage} ("${segment}").` };
        }
      },
      setOptionArityError: (state, segment) => {
        const lastOption = state.options[state.options.length - 1];
        return { ...state, errorMessage: `Not enough arguments to option ${lastOption.name}.` };
      }
    };
    var NoLimits = /* @__PURE__ */ Symbol();
    var CommandBuilder = class {
      constructor(cliIndex, cliOpts) {
        this.allOptionNames = [];
        this.arity = { leading: [], trailing: [], extra: [], proxy: false };
        this.options = [];
        this.paths = [];
        this.cliIndex = cliIndex;
        this.cliOpts = cliOpts;
      }
      addPath(path218) {
        this.paths.push(path218);
      }
      setArity({ leading = this.arity.leading, trailing = this.arity.trailing, extra = this.arity.extra, proxy = this.arity.proxy }) {
        Object.assign(this.arity, { leading, trailing, extra, proxy });
      }
      addPositional({ name = `arg`, required = true } = {}) {
        if (!required && this.arity.extra === NoLimits)
          throw new Error(`Optional parameters cannot be declared when using .rest() or .proxy()`);
        if (!required && this.arity.trailing.length > 0)
          throw new Error(`Optional parameters cannot be declared after the required trailing positional arguments`);
        if (!required && this.arity.extra !== NoLimits) {
          this.arity.extra.push(name);
        } else if (this.arity.extra !== NoLimits && this.arity.extra.length === 0) {
          this.arity.leading.push(name);
        } else {
          this.arity.trailing.push(name);
        }
      }
      addRest({ name = `arg`, required = 0 } = {}) {
        if (this.arity.extra === NoLimits)
          throw new Error(`Infinite lists cannot be declared multiple times in the same command`);
        if (this.arity.trailing.length > 0)
          throw new Error(`Infinite lists cannot be declared after the required trailing positional arguments`);
        for (let t2 = 0; t2 < required; ++t2)
          this.addPositional({ name });
        this.arity.extra = NoLimits;
      }
      addProxy({ required = 0 } = {}) {
        this.addRest({ required });
        this.arity.proxy = true;
      }
      addOption({ names, description, arity = 0, hidden: hidden2 = false, required = false, allowBinding = true }) {
        if (!allowBinding && arity > 1)
          throw new Error(`The arity cannot be higher than 1 when the option only supports the --arg=value syntax`);
        if (!Number.isInteger(arity))
          throw new Error(`The arity must be an integer, got ${arity}`);
        if (arity < 0)
          throw new Error(`The arity must be positive, got ${arity}`);
        this.allOptionNames.push(...names);
        this.options.push({ names, description, arity, hidden: hidden2, required, allowBinding });
      }
      setContext(context) {
        this.context = context;
      }
      usage({ detailed = true, inlineOptions = true } = {}) {
        const segments = [this.cliOpts.binaryName];
        const detailedOptionList = [];
        if (this.paths.length > 0)
          segments.push(...this.paths[0]);
        if (detailed) {
          for (const { names, arity, hidden: hidden2, description, required } of this.options) {
            if (hidden2)
              continue;
            const args = [];
            for (let t2 = 0; t2 < arity; ++t2)
              args.push(` #${t2}`);
            const definition = `${names.join(`,`)}${args.join(``)}`;
            if (!inlineOptions && description) {
              detailedOptionList.push({ definition, description, required });
            } else {
              segments.push(required ? `<${definition}>` : `[${definition}]`);
            }
          }
          segments.push(...this.arity.leading.map((name) => `<${name}>`));
          if (this.arity.extra === NoLimits)
            segments.push(`...`);
          else
            segments.push(...this.arity.extra.map((name) => `[${name}]`));
          segments.push(...this.arity.trailing.map((name) => `<${name}>`));
        }
        const usage = segments.join(` `);
        return { usage, options: detailedOptionList };
      }
      compile() {
        if (typeof this.context === `undefined`)
          throw new Error(`Assertion failed: No context attached`);
        const machine = makeStateMachine();
        let firstNode = constants5.NODE_INITIAL;
        const candidateUsage = this.usage().usage;
        const requiredOptions = this.options.filter((opt) => opt.required).map((opt) => opt.names);
        firstNode = injectNode(machine, makeNode2());
        registerStatic(machine, constants5.NODE_INITIAL, constants5.START_OF_INPUT, firstNode, [`setCandidateState`, { candidateUsage, requiredOptions }]);
        const positionalArgument = this.arity.proxy ? `always` : `isNotOptionLike`;
        const paths3 = this.paths.length > 0 ? this.paths : [[]];
        for (const path218 of paths3) {
          let lastPathNode = firstNode;
          if (path218.length > 0) {
            const optionPathNode = injectNode(machine, makeNode2());
            registerShortcut(machine, lastPathNode, optionPathNode);
            this.registerOptions(machine, optionPathNode);
            lastPathNode = optionPathNode;
          }
          for (let t2 = 0; t2 < path218.length; ++t2) {
            const nextPathNode = injectNode(machine, makeNode2());
            registerStatic(machine, lastPathNode, path218[t2], nextPathNode, `pushPath`);
            lastPathNode = nextPathNode;
          }
          if (this.arity.leading.length > 0 || !this.arity.proxy) {
            const helpNode = injectNode(machine, makeNode2());
            registerDynamic(machine, lastPathNode, `isHelp`, helpNode, [`useHelp`, this.cliIndex]);
            registerStatic(machine, helpNode, constants5.END_OF_INPUT, constants5.NODE_SUCCESS, [`setSelectedIndex`, constants5.HELP_COMMAND_INDEX]);
            this.registerOptions(machine, lastPathNode);
          }
          if (this.arity.leading.length > 0)
            registerStatic(machine, lastPathNode, constants5.END_OF_INPUT, constants5.NODE_ERRORED, [`setError`, `Not enough positional arguments`]);
          let lastLeadingNode = lastPathNode;
          for (let t2 = 0; t2 < this.arity.leading.length; ++t2) {
            const nextLeadingNode = injectNode(machine, makeNode2());
            if (!this.arity.proxy || t2 + 1 !== this.arity.leading.length)
              this.registerOptions(machine, nextLeadingNode);
            if (this.arity.trailing.length > 0 || t2 + 1 !== this.arity.leading.length)
              registerStatic(machine, nextLeadingNode, constants5.END_OF_INPUT, constants5.NODE_ERRORED, [`setError`, `Not enough positional arguments`]);
            registerDynamic(machine, lastLeadingNode, `isNotOptionLike`, nextLeadingNode, `pushPositional`);
            lastLeadingNode = nextLeadingNode;
          }
          let lastExtraNode = lastLeadingNode;
          if (this.arity.extra === NoLimits || this.arity.extra.length > 0) {
            const extraShortcutNode = injectNode(machine, makeNode2());
            registerShortcut(machine, lastLeadingNode, extraShortcutNode);
            if (this.arity.extra === NoLimits) {
              const extraNode = injectNode(machine, makeNode2());
              if (!this.arity.proxy)
                this.registerOptions(machine, extraNode);
              registerDynamic(machine, lastLeadingNode, positionalArgument, extraNode, `pushExtraNoLimits`);
              registerDynamic(machine, extraNode, positionalArgument, extraNode, `pushExtraNoLimits`);
              registerShortcut(machine, extraNode, extraShortcutNode);
            } else {
              for (let t2 = 0; t2 < this.arity.extra.length; ++t2) {
                const nextExtraNode = injectNode(machine, makeNode2());
                if (!this.arity.proxy || t2 > 0)
                  this.registerOptions(machine, nextExtraNode);
                registerDynamic(machine, lastExtraNode, positionalArgument, nextExtraNode, `pushExtra`);
                registerShortcut(machine, nextExtraNode, extraShortcutNode);
                lastExtraNode = nextExtraNode;
              }
            }
            lastExtraNode = extraShortcutNode;
          }
          if (this.arity.trailing.length > 0)
            registerStatic(machine, lastExtraNode, constants5.END_OF_INPUT, constants5.NODE_ERRORED, [`setError`, `Not enough positional arguments`]);
          let lastTrailingNode = lastExtraNode;
          for (let t2 = 0; t2 < this.arity.trailing.length; ++t2) {
            const nextTrailingNode = injectNode(machine, makeNode2());
            if (!this.arity.proxy)
              this.registerOptions(machine, nextTrailingNode);
            if (t2 + 1 < this.arity.trailing.length)
              registerStatic(machine, nextTrailingNode, constants5.END_OF_INPUT, constants5.NODE_ERRORED, [`setError`, `Not enough positional arguments`]);
            registerDynamic(machine, lastTrailingNode, `isNotOptionLike`, nextTrailingNode, `pushPositional`);
            lastTrailingNode = nextTrailingNode;
          }
          registerDynamic(machine, lastTrailingNode, positionalArgument, constants5.NODE_ERRORED, [`setError`, `Extraneous positional argument`]);
          registerStatic(machine, lastTrailingNode, constants5.END_OF_INPUT, constants5.NODE_SUCCESS, [`setSelectedIndex`, this.cliIndex]);
        }
        return {
          machine,
          context: this.context
        };
      }
      registerOptions(machine, node) {
        registerDynamic(machine, node, [`isOption`, `--`], node, `inhibateOptions`);
        registerDynamic(machine, node, [`isBatchOption`, this.allOptionNames], node, `pushBatch`);
        registerDynamic(machine, node, [`isBoundOption`, this.allOptionNames, this.options], node, `pushBound`);
        registerDynamic(machine, node, [`isUnsupportedOption`, this.allOptionNames], constants5.NODE_ERRORED, [`setError`, `Unsupported option name`]);
        registerDynamic(machine, node, [`isInvalidOption`], constants5.NODE_ERRORED, [`setError`, `Invalid option name`]);
        for (const option of this.options) {
          const longestName = option.names.reduce((longestName2, name) => {
            return name.length > longestName2.length ? name : longestName2;
          }, ``);
          if (option.arity === 0) {
            for (const name of option.names) {
              registerDynamic(machine, node, [`isOption`, name, option.hidden || name !== longestName], node, `pushTrue`);
              if (name.startsWith(`--`) && !name.startsWith(`--no-`)) {
                registerDynamic(machine, node, [`isNegatedOption`, name], node, [`pushFalse`, name]);
              }
            }
          } else {
            let lastNode = injectNode(machine, makeNode2());
            for (const name of option.names)
              registerDynamic(machine, node, [`isOption`, name, option.hidden || name !== longestName], lastNode, `pushUndefined`);
            for (let t2 = 0; t2 < option.arity; ++t2) {
              const nextNode = injectNode(machine, makeNode2());
              registerStatic(machine, lastNode, constants5.END_OF_INPUT, constants5.NODE_ERRORED, `setOptionArityError`);
              registerDynamic(machine, lastNode, `isOptionLike`, constants5.NODE_ERRORED, `setOptionArityError`);
              const action = option.arity === 1 ? `setStringValue` : `pushStringValue`;
              registerDynamic(machine, lastNode, `isNotOptionLike`, nextNode, action);
              lastNode = nextNode;
            }
            registerShortcut(machine, lastNode, node);
          }
        }
      }
    };
    var CliBuilder = class _CliBuilder {
      constructor({ binaryName = `...` } = {}) {
        this.builders = [];
        this.opts = { binaryName };
      }
      static build(cbs, opts2 = {}) {
        return new _CliBuilder(opts2).commands(cbs).compile();
      }
      getBuilderByIndex(n2) {
        if (!(n2 >= 0 && n2 < this.builders.length))
          throw new Error(`Assertion failed: Out-of-bound command index (${n2})`);
        return this.builders[n2];
      }
      commands(cbs) {
        for (const cb of cbs)
          cb(this.command());
        return this;
      }
      command() {
        const builder = new CommandBuilder(this.builders.length, this.opts);
        this.builders.push(builder);
        return builder;
      }
      compile() {
        const machines = [];
        const contexts = [];
        for (const builder of this.builders) {
          const { machine: machine2, context } = builder.compile();
          machines.push(machine2);
          contexts.push(context);
        }
        const machine = makeAnyOfMachine(machines);
        simplifyMachine(machine);
        return {
          machine,
          contexts,
          process: (input) => {
            return runMachine(machine, input);
          },
          suggest: (input, partial) => {
            return suggestMachine(machine, input, partial);
          }
        };
      }
    };
    exports2.CliBuilder = CliBuilder;
    exports2.CommandBuilder = CommandBuilder;
    exports2.NoLimits = NoLimits;
    exports2.aggregateHelpStates = aggregateHelpStates;
    exports2.cloneNode = cloneNode;
    exports2.cloneTransition = cloneTransition;
    exports2.debug = debug;
    exports2.debugMachine = debugMachine;
    exports2.execute = execute2;
    exports2.injectNode = injectNode;
    exports2.isTerminalNode = isTerminalNode;
    exports2.makeAnyOfMachine = makeAnyOfMachine;
    exports2.makeNode = makeNode2;
    exports2.makeStateMachine = makeStateMachine;
    exports2.reducers = reducers;
    exports2.registerDynamic = registerDynamic;
    exports2.registerShortcut = registerShortcut;
    exports2.registerStatic = registerStatic;
    exports2.runMachineInternal = runMachineInternal;
    exports2.selectBestState = selectBestState;
    exports2.simplifyMachine = simplifyMachine;
    exports2.suggest = suggest;
    exports2.tests = tests;
    exports2.trimSmallerBranches = trimSmallerBranches;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/HelpCommand.js
var require_HelpCommand = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/HelpCommand.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var Command = require_Command();
    var HelpCommand = class _HelpCommand extends Command.Command {
      constructor(contexts) {
        super();
        this.contexts = contexts;
        this.commands = [];
      }
      static from(state, contexts) {
        const command = new _HelpCommand(contexts);
        command.path = state.path;
        for (const opt of state.options) {
          switch (opt.name) {
            case `-c`:
              {
                command.commands.push(Number(opt.value));
              }
              break;
            case `-i`:
              {
                command.index = Number(opt.value);
              }
              break;
          }
        }
        return command;
      }
      async execute() {
        let commands2 = this.commands;
        if (typeof this.index !== `undefined` && this.index >= 0 && this.index < commands2.length)
          commands2 = [commands2[this.index]];
        if (commands2.length === 0) {
          this.context.stdout.write(this.cli.usage());
        } else if (commands2.length === 1) {
          this.context.stdout.write(this.cli.usage(this.contexts[commands2[0]].commandClass, { detailed: true }));
        } else if (commands2.length > 1) {
          this.context.stdout.write(`Multiple commands match your selection:
`);
          this.context.stdout.write(`
`);
          let index = 0;
          for (const command of this.commands)
            this.context.stdout.write(this.cli.usage(this.contexts[command].commandClass, { prefix: `${index++}. `.padStart(5) }));
          this.context.stdout.write(`
`);
          this.context.stdout.write(`Run again with -h=<index> to see the longer details of any of those commands.
`);
        }
      }
    };
    exports2.HelpCommand = HelpCommand;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/Cli.js
var require_Cli = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/Cli.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var constants5 = require_constants7();
    var Command = require_Command();
    var tty5 = __require("tty");
    var core2 = require_core3();
    var format2 = require_format2();
    var HelpCommand = require_HelpCommand();
    function _interopDefaultLegacy(e) {
      return e && typeof e === "object" && "default" in e ? e : { "default": e };
    }
    var tty__default = /* @__PURE__ */ _interopDefaultLegacy(tty5);
    var errorCommandSymbol = /* @__PURE__ */ Symbol(`clipanion/errorCommand`);
    function getDefaultColorDepth() {
      if (process.env.FORCE_COLOR === `0`)
        return 1;
      if (process.env.FORCE_COLOR === `1`)
        return 8;
      if (typeof process.stdout !== `undefined` && process.stdout.isTTY)
        return 8;
      return 1;
    }
    var Cli = class _Cli {
      constructor({ binaryLabel, binaryName: binaryNameOpt = `...`, binaryVersion, enableCapture = false, enableColors } = {}) {
        this.registrations = /* @__PURE__ */ new Map();
        this.builder = new core2.CliBuilder({ binaryName: binaryNameOpt });
        this.binaryLabel = binaryLabel;
        this.binaryName = binaryNameOpt;
        this.binaryVersion = binaryVersion;
        this.enableCapture = enableCapture;
        this.enableColors = enableColors;
      }
      /**
       * Creates a new Cli and registers all commands passed as parameters.
       *
       * @param commandClasses The Commands to register
       * @returns The created `Cli` instance
       */
      static from(commandClasses, options = {}) {
        const cli = new _Cli(options);
        for (const commandClass of commandClasses)
          cli.register(commandClass);
        return cli;
      }
      /**
       * Registers a command inside the CLI.
       */
      register(commandClass) {
        var _a;
        const specs = /* @__PURE__ */ new Map();
        const command = new commandClass();
        for (const key in command) {
          const value = command[key];
          if (typeof value === `object` && value !== null && value[Command.Command.isOption]) {
            specs.set(key, value);
          }
        }
        const builder = this.builder.command();
        const index = builder.cliIndex;
        const paths3 = (_a = commandClass.paths) !== null && _a !== void 0 ? _a : command.paths;
        if (typeof paths3 !== `undefined`)
          for (const path218 of paths3)
            builder.addPath(path218);
        this.registrations.set(commandClass, { specs, builder, index });
        for (const [key, { definition }] of specs.entries())
          definition(builder, key);
        builder.setContext({
          commandClass
        });
      }
      process(input) {
        const { contexts, process: process17 } = this.builder.compile();
        const state = process17(input);
        switch (state.selectedIndex) {
          case constants5.HELP_COMMAND_INDEX: {
            return HelpCommand.HelpCommand.from(state, contexts);
          }
          default:
            {
              const { commandClass } = contexts[state.selectedIndex];
              const record = this.registrations.get(commandClass);
              if (typeof record === `undefined`)
                throw new Error(`Assertion failed: Expected the command class to have been registered.`);
              const command = new commandClass();
              command.path = state.path;
              try {
                for (const [key, { transformer }] of record.specs.entries())
                  command[key] = transformer(record.builder, key, state);
                return command;
              } catch (error) {
                error[errorCommandSymbol] = command;
                throw error;
              }
            }
            break;
        }
      }
      async run(input, userContext) {
        var _a;
        let command;
        const context = {
          ..._Cli.defaultContext,
          ...userContext
        };
        const colored = (_a = this.enableColors) !== null && _a !== void 0 ? _a : context.colorDepth > 1;
        if (!Array.isArray(input)) {
          command = input;
        } else {
          try {
            command = this.process(input);
          } catch (error) {
            context.stdout.write(this.error(error, { colored }));
            return 1;
          }
        }
        if (command.help) {
          context.stdout.write(this.usage(command, { colored, detailed: true }));
          return 0;
        }
        command.context = context;
        command.cli = {
          binaryLabel: this.binaryLabel,
          binaryName: this.binaryName,
          binaryVersion: this.binaryVersion,
          enableCapture: this.enableCapture,
          enableColors: this.enableColors,
          definitions: () => this.definitions(),
          error: (error, opts2) => this.error(error, opts2),
          format: (colored2) => this.format(colored2),
          process: (input2) => this.process(input2),
          run: (input2, subContext) => this.run(input2, { ...context, ...subContext }),
          usage: (command2, opts2) => this.usage(command2, opts2)
        };
        const activate = this.enableCapture ? getCaptureActivator(context) : noopCaptureActivator;
        let exitCode;
        try {
          exitCode = await activate(() => command.validateAndExecute().catch((error) => command.catch(error).then(() => 0)));
        } catch (error) {
          context.stdout.write(this.error(error, { colored, command }));
          return 1;
        }
        return exitCode;
      }
      async runExit(input, context) {
        process.exitCode = await this.run(input, context);
      }
      suggest(input, partial) {
        const { suggest } = this.builder.compile();
        return suggest(input, partial);
      }
      definitions({ colored = false } = {}) {
        const data = [];
        for (const [commandClass, { index }] of this.registrations) {
          if (typeof commandClass.usage === `undefined`)
            continue;
          const { usage: path218 } = this.getUsageByIndex(index, { detailed: false });
          const { usage, options } = this.getUsageByIndex(index, { detailed: true, inlineOptions: false });
          const category = typeof commandClass.usage.category !== `undefined` ? format2.formatMarkdownish(commandClass.usage.category, { format: this.format(colored), paragraphs: false }) : void 0;
          const description = typeof commandClass.usage.description !== `undefined` ? format2.formatMarkdownish(commandClass.usage.description, { format: this.format(colored), paragraphs: false }) : void 0;
          const details = typeof commandClass.usage.details !== `undefined` ? format2.formatMarkdownish(commandClass.usage.details, { format: this.format(colored), paragraphs: true }) : void 0;
          const examples = typeof commandClass.usage.examples !== `undefined` ? commandClass.usage.examples.map(([label, cli]) => [format2.formatMarkdownish(label, { format: this.format(colored), paragraphs: false }), cli.replace(/\$0/g, this.binaryName)]) : void 0;
          data.push({ path: path218, usage, category, description, details, examples, options });
        }
        return data;
      }
      usage(command = null, { colored, detailed = false, prefix = `$ ` } = {}) {
        var _a;
        if (command === null) {
          for (const commandClass2 of this.registrations.keys()) {
            const paths3 = commandClass2.paths;
            const isDocumented = typeof commandClass2.usage !== `undefined`;
            const isExclusivelyDefault = !paths3 || paths3.length === 0 || paths3.length === 1 && paths3[0].length === 0;
            const isDefault = isExclusivelyDefault || ((_a = paths3 === null || paths3 === void 0 ? void 0 : paths3.some((path218) => path218.length === 0)) !== null && _a !== void 0 ? _a : false);
            if (isDefault) {
              if (command) {
                command = null;
                break;
              } else {
                command = commandClass2;
              }
            } else {
              if (isDocumented) {
                command = null;
                continue;
              }
            }
          }
          if (command) {
            detailed = true;
          }
        }
        const commandClass = command !== null && command instanceof Command.Command ? command.constructor : command;
        let result2 = ``;
        if (!commandClass) {
          const commandsByCategories = /* @__PURE__ */ new Map();
          for (const [commandClass2, { index }] of this.registrations.entries()) {
            if (typeof commandClass2.usage === `undefined`)
              continue;
            const category = typeof commandClass2.usage.category !== `undefined` ? format2.formatMarkdownish(commandClass2.usage.category, { format: this.format(colored), paragraphs: false }) : null;
            let categoryCommands = commandsByCategories.get(category);
            if (typeof categoryCommands === `undefined`)
              commandsByCategories.set(category, categoryCommands = []);
            const { usage } = this.getUsageByIndex(index);
            categoryCommands.push({ commandClass: commandClass2, usage });
          }
          const categoryNames = Array.from(commandsByCategories.keys()).sort((a2, b) => {
            if (a2 === null)
              return -1;
            if (b === null)
              return 1;
            return a2.localeCompare(b, `en`, { usage: `sort`, caseFirst: `upper` });
          });
          const hasLabel = typeof this.binaryLabel !== `undefined`;
          const hasVersion = typeof this.binaryVersion !== `undefined`;
          if (hasLabel || hasVersion) {
            if (hasLabel && hasVersion)
              result2 += `${this.format(colored).header(`${this.binaryLabel} - ${this.binaryVersion}`)}

`;
            else if (hasLabel)
              result2 += `${this.format(colored).header(`${this.binaryLabel}`)}
`;
            else
              result2 += `${this.format(colored).header(`${this.binaryVersion}`)}
`;
            result2 += `  ${this.format(colored).bold(prefix)}${this.binaryName} <command>
`;
          } else {
            result2 += `${this.format(colored).bold(prefix)}${this.binaryName} <command>
`;
          }
          for (const categoryName of categoryNames) {
            const commands2 = commandsByCategories.get(categoryName).slice().sort((a2, b) => {
              return a2.usage.localeCompare(b.usage, `en`, { usage: `sort`, caseFirst: `upper` });
            });
            const header = categoryName !== null ? categoryName.trim() : `General commands`;
            result2 += `
`;
            result2 += `${this.format(colored).header(`${header}`)}
`;
            for (const { commandClass: commandClass2, usage } of commands2) {
              const doc = commandClass2.usage.description || `undocumented`;
              result2 += `
`;
              result2 += `  ${this.format(colored).bold(usage)}
`;
              result2 += `    ${format2.formatMarkdownish(doc, { format: this.format(colored), paragraphs: false })}`;
            }
          }
          result2 += `
`;
          result2 += format2.formatMarkdownish(`You can also print more details about any of these commands by calling them with the \`-h,--help\` flag right after the command name.`, { format: this.format(colored), paragraphs: true });
        } else {
          if (!detailed) {
            const { usage } = this.getUsageByRegistration(commandClass);
            result2 += `${this.format(colored).bold(prefix)}${usage}
`;
          } else {
            const { description = ``, details = ``, examples = [] } = commandClass.usage || {};
            if (description !== ``) {
              result2 += format2.formatMarkdownish(description, { format: this.format(colored), paragraphs: false }).replace(/^./, ($0) => $0.toUpperCase());
              result2 += `
`;
            }
            if (details !== `` || examples.length > 0) {
              result2 += `${this.format(colored).header(`Usage`)}
`;
              result2 += `
`;
            }
            const { usage, options } = this.getUsageByRegistration(commandClass, { inlineOptions: false });
            result2 += `${this.format(colored).bold(prefix)}${usage}
`;
            if (options.length > 0) {
              result2 += `
`;
              result2 += `${format2.richFormat.header(`Options`)}
`;
              const maxDefinitionLength = options.reduce((length, option) => {
                return Math.max(length, option.definition.length);
              }, 0);
              result2 += `
`;
              for (const { definition, description: description2 } of options) {
                result2 += `  ${this.format(colored).bold(definition.padEnd(maxDefinitionLength))}    ${format2.formatMarkdownish(description2, { format: this.format(colored), paragraphs: false })}`;
              }
            }
            if (details !== ``) {
              result2 += `
`;
              result2 += `${this.format(colored).header(`Details`)}
`;
              result2 += `
`;
              result2 += format2.formatMarkdownish(details, { format: this.format(colored), paragraphs: true });
            }
            if (examples.length > 0) {
              result2 += `
`;
              result2 += `${this.format(colored).header(`Examples`)}
`;
              for (const [description2, example] of examples) {
                result2 += `
`;
                result2 += format2.formatMarkdownish(description2, { format: this.format(colored), paragraphs: false });
                result2 += `${example.replace(/^/m, `  ${this.format(colored).bold(prefix)}`).replace(/\$0/g, this.binaryName)}
`;
              }
            }
          }
        }
        return result2;
      }
      error(error, _a) {
        var _b;
        var { colored, command = (_b = error[errorCommandSymbol]) !== null && _b !== void 0 ? _b : null } = _a === void 0 ? {} : _a;
        if (!(error instanceof Error))
          error = new Error(`Execution failed with a non-error rejection (rejected value: ${JSON.stringify(error)})`);
        let result2 = ``;
        let name = error.name.replace(/([a-z])([A-Z])/g, `$1 $2`);
        if (name === `Error`)
          name = `Internal Error`;
        result2 += `${this.format(colored).error(name)}: ${error.message}
`;
        const meta = error.clipanion;
        if (typeof meta !== `undefined`) {
          if (meta.type === `usage`) {
            result2 += `
`;
            result2 += this.usage(command);
          }
        } else {
          if (error.stack) {
            result2 += `${error.stack.replace(/^.*\n/, ``)}
`;
          }
        }
        return result2;
      }
      format(colored) {
        var _a;
        return ((_a = colored !== null && colored !== void 0 ? colored : this.enableColors) !== null && _a !== void 0 ? _a : _Cli.defaultContext.colorDepth > 1) ? format2.richFormat : format2.textFormat;
      }
      getUsageByRegistration(klass, opts2) {
        const record = this.registrations.get(klass);
        if (typeof record === `undefined`)
          throw new Error(`Assertion failed: Unregistered command`);
        return this.getUsageByIndex(record.index, opts2);
      }
      getUsageByIndex(n2, opts2) {
        return this.builder.getBuilderByIndex(n2).usage(opts2);
      }
    };
    Cli.defaultContext = {
      stdin: process.stdin,
      stdout: process.stdout,
      stderr: process.stderr,
      colorDepth: `getColorDepth` in tty__default["default"].WriteStream.prototype ? tty__default["default"].WriteStream.prototype.getColorDepth() : getDefaultColorDepth()
    };
    var gContextStorage;
    function getCaptureActivator(context) {
      let contextStorage = gContextStorage;
      if (typeof contextStorage === `undefined`) {
        if (context.stdout === process.stdout && context.stderr === process.stderr)
          return noopCaptureActivator;
        const { AsyncLocalStorage: LazyAsyncLocalStorage } = __require("async_hooks");
        contextStorage = gContextStorage = new LazyAsyncLocalStorage();
        const origStdoutWrite = process.stdout._write;
        process.stdout._write = function(chunk, encoding, cb) {
          const context2 = contextStorage.getStore();
          if (typeof context2 === `undefined`)
            return origStdoutWrite.call(this, chunk, encoding, cb);
          return context2.stdout.write(chunk, encoding, cb);
        };
        const origStderrWrite = process.stderr._write;
        process.stderr._write = function(chunk, encoding, cb) {
          const context2 = contextStorage.getStore();
          if (typeof context2 === `undefined`)
            return origStderrWrite.call(this, chunk, encoding, cb);
          return context2.stderr.write(chunk, encoding, cb);
        };
      }
      return (fn) => {
        return contextStorage.run(context, fn);
      };
    }
    function noopCaptureActivator(fn) {
      return fn();
    }
    exports2.Cli = Cli;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/builtins/definitions.js
var require_definitions = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/builtins/definitions.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var Command = require_Command();
    var DefinitionsCommand = class extends Command.Command {
      async execute() {
        this.context.stdout.write(`${JSON.stringify(this.cli.definitions(), null, 2)}
`);
      }
    };
    DefinitionsCommand.paths = [[`--clipanion=definitions`]];
    exports2.DefinitionsCommand = DefinitionsCommand;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/builtins/help.js
var require_help = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/builtins/help.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var Command = require_Command();
    var HelpCommand = class extends Command.Command {
      async execute() {
        this.context.stdout.write(this.cli.usage());
      }
    };
    HelpCommand.paths = [[`-h`], [`--help`]];
    exports2.HelpCommand = HelpCommand;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/builtins/version.js
var require_version = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/builtins/version.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var Command = require_Command();
    var VersionCommand = class extends Command.Command {
      async execute() {
        var _a;
        this.context.stdout.write(`${(_a = this.cli.binaryVersion) !== null && _a !== void 0 ? _a : `<unknown>`}
`);
      }
    };
    VersionCommand.paths = [[`-v`], [`--version`]];
    exports2.VersionCommand = VersionCommand;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/builtins/index.js
var require_builtins2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/builtins/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var definitions = require_definitions();
    var help76 = require_help();
    var version2 = require_version();
    exports2.DefinitionsCommand = definitions.DefinitionsCommand;
    exports2.HelpCommand = help76.HelpCommand;
    exports2.VersionCommand = version2.VersionCommand;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/options/Array.js
var require_Array = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/options/Array.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var utils = require_utils7();
    function Array2(descriptor, initialValueBase, optsBase) {
      const [initialValue, opts2] = utils.rerouteArguments(initialValueBase, optsBase !== null && optsBase !== void 0 ? optsBase : {});
      const { arity = 1 } = opts2;
      const optNames = descriptor.split(`,`);
      const nameSet = new Set(optNames);
      return utils.makeCommandOption({
        definition(builder) {
          builder.addOption({
            names: optNames,
            arity,
            hidden: opts2 === null || opts2 === void 0 ? void 0 : opts2.hidden,
            description: opts2 === null || opts2 === void 0 ? void 0 : opts2.description,
            required: opts2.required
          });
        },
        transformer(builder, key, state) {
          let currentValue = typeof initialValue !== `undefined` ? [...initialValue] : void 0;
          for (const { name, value } of state.options) {
            if (!nameSet.has(name))
              continue;
            currentValue = currentValue !== null && currentValue !== void 0 ? currentValue : [];
            currentValue.push(value);
          }
          return currentValue;
        }
      });
    }
    exports2.Array = Array2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/options/Boolean.js
var require_Boolean = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/options/Boolean.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var utils = require_utils7();
    function Boolean2(descriptor, initialValueBase, optsBase) {
      const [initialValue, opts2] = utils.rerouteArguments(initialValueBase, optsBase !== null && optsBase !== void 0 ? optsBase : {});
      const optNames = descriptor.split(`,`);
      const nameSet = new Set(optNames);
      return utils.makeCommandOption({
        definition(builder) {
          builder.addOption({
            names: optNames,
            allowBinding: false,
            arity: 0,
            hidden: opts2.hidden,
            description: opts2.description,
            required: opts2.required
          });
        },
        transformer(builer, key, state) {
          let currentValue = initialValue;
          for (const { name, value } of state.options) {
            if (!nameSet.has(name))
              continue;
            currentValue = value;
          }
          return currentValue;
        }
      });
    }
    exports2.Boolean = Boolean2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/options/Counter.js
var require_Counter = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/options/Counter.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var utils = require_utils7();
    function Counter2(descriptor, initialValueBase, optsBase) {
      const [initialValue, opts2] = utils.rerouteArguments(initialValueBase, optsBase !== null && optsBase !== void 0 ? optsBase : {});
      const optNames = descriptor.split(`,`);
      const nameSet = new Set(optNames);
      return utils.makeCommandOption({
        definition(builder) {
          builder.addOption({
            names: optNames,
            allowBinding: false,
            arity: 0,
            hidden: opts2.hidden,
            description: opts2.description,
            required: opts2.required
          });
        },
        transformer(builder, key, state) {
          let currentValue = initialValue;
          for (const { name, value } of state.options) {
            if (!nameSet.has(name))
              continue;
            currentValue !== null && currentValue !== void 0 ? currentValue : currentValue = 0;
            if (!value) {
              currentValue = 0;
            } else {
              currentValue += 1;
            }
          }
          return currentValue;
        }
      });
    }
    exports2.Counter = Counter2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/options/Proxy.js
var require_Proxy = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/options/Proxy.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var utils = require_utils7();
    function Proxy2(opts2 = {}) {
      return utils.makeCommandOption({
        definition(builder, key) {
          var _a;
          builder.addProxy({
            name: (_a = opts2.name) !== null && _a !== void 0 ? _a : key,
            required: opts2.required
          });
        },
        transformer(builder, key, state) {
          return state.positionals.map(({ value }) => value);
        }
      });
    }
    exports2.Proxy = Proxy2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/options/Rest.js
var require_Rest = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/options/Rest.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var utils = require_utils7();
    var core2 = require_core3();
    function Rest(opts2 = {}) {
      return utils.makeCommandOption({
        definition(builder, key) {
          var _a;
          builder.addRest({
            name: (_a = opts2.name) !== null && _a !== void 0 ? _a : key,
            required: opts2.required
          });
        },
        transformer(builder, key, state) {
          const isRestPositional = (index) => {
            const positional = state.positionals[index];
            if (positional.extra === core2.NoLimits)
              return true;
            if (positional.extra === false && index < builder.arity.leading.length)
              return true;
            return false;
          };
          let count2 = 0;
          while (count2 < state.positionals.length && isRestPositional(count2))
            count2 += 1;
          return state.positionals.splice(0, count2).map(({ value }) => value);
        }
      });
    }
    exports2.Rest = Rest;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/options/String.js
var require_String = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/options/String.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var utils = require_utils7();
    var core2 = require_core3();
    function StringOption(descriptor, initialValueBase, optsBase) {
      const [initialValue, opts2] = utils.rerouteArguments(initialValueBase, optsBase !== null && optsBase !== void 0 ? optsBase : {});
      const { arity = 1 } = opts2;
      const optNames = descriptor.split(`,`);
      const nameSet = new Set(optNames);
      return utils.makeCommandOption({
        definition(builder) {
          builder.addOption({
            names: optNames,
            arity: opts2.tolerateBoolean ? 0 : arity,
            hidden: opts2.hidden,
            description: opts2.description,
            required: opts2.required
          });
        },
        transformer(builder, key, state) {
          let usedName;
          let currentValue = initialValue;
          for (const { name, value } of state.options) {
            if (!nameSet.has(name))
              continue;
            usedName = name;
            currentValue = value;
          }
          if (typeof currentValue === `string`) {
            return utils.applyValidator(usedName !== null && usedName !== void 0 ? usedName : key, currentValue, opts2.validator);
          } else {
            return currentValue;
          }
        }
      });
    }
    function StringPositional(opts2 = {}) {
      const { required = true } = opts2;
      return utils.makeCommandOption({
        definition(builder, key) {
          var _a;
          builder.addPositional({
            name: (_a = opts2.name) !== null && _a !== void 0 ? _a : key,
            required: opts2.required
          });
        },
        transformer(builder, key, state) {
          var _a;
          for (let i2 = 0; i2 < state.positionals.length; ++i2) {
            if (state.positionals[i2].extra === core2.NoLimits)
              continue;
            if (required && state.positionals[i2].extra === true)
              continue;
            if (!required && state.positionals[i2].extra === false)
              continue;
            const [positional] = state.positionals.splice(i2, 1);
            return utils.applyValidator((_a = opts2.name) !== null && _a !== void 0 ? _a : key, positional.value, opts2.validator);
          }
          return void 0;
        }
      });
    }
    function String2(descriptor, ...args) {
      if (typeof descriptor === `string`) {
        return StringOption(descriptor, ...args);
      } else {
        return StringPositional(descriptor);
      }
    }
    exports2.String = String2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/options/index.js
var require_options = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/options/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var utils = require_utils7();
    var _Array = require_Array();
    var _Boolean = require_Boolean();
    var Counter2 = require_Counter();
    var _Proxy = require_Proxy();
    var Rest = require_Rest();
    var _String = require_String();
    exports2.applyValidator = utils.applyValidator;
    exports2.cleanValidationError = utils.cleanValidationError;
    exports2.formatError = utils.formatError;
    exports2.isOptionSymbol = utils.isOptionSymbol;
    exports2.makeCommandOption = utils.makeCommandOption;
    exports2.rerouteArguments = utils.rerouteArguments;
    exports2.Array = _Array.Array;
    exports2.Boolean = _Boolean.Boolean;
    exports2.Counter = Counter2.Counter;
    exports2.Proxy = _Proxy.Proxy;
    exports2.Rest = Rest.Rest;
    exports2.String = _String.String;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/index.js
var require_advanced = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/clipanion/3.2.0-rc.6/23222bdcfc643cdf493929a474d229a1041e5dceeec18bed0e3374c38e65101e/node_modules/clipanion/lib/advanced/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var errors2 = require_errors3();
    var Command = require_Command();
    var format2 = require_format2();
    var Cli = require_Cli();
    var index = require_builtins2();
    var index$1 = require_options();
    exports2.UsageError = errors2.UsageError;
    exports2.Command = Command.Command;
    exports2.formatMarkdownish = format2.formatMarkdownish;
    exports2.Cli = Cli.Cli;
    exports2.Builtins = index;
    exports2.Option = index$1;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/shell/4.0.0/09dfbba210b1162ff6f42d70ace0e56c803b057edcd4987f4958bd663dd8d7aa/node_modules/@yarnpkg/shell/lib/commands/entry.js
var require_entry = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/shell/4.0.0/09dfbba210b1162ff6f42d70ace0e56c803b057edcd4987f4958bd663dd8d7aa/node_modules/@yarnpkg/shell/lib/commands/entry.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var fslib_12 = require_lib12();
    var clipanion_12 = require_advanced();
    var index_1 = require_lib15();
    var EntryCommand = class extends clipanion_12.Command {
      constructor() {
        super(...arguments);
        this.cwd = clipanion_12.Option.String(`--cwd`, process.cwd(), {
          description: `The directory to run the command in`
        });
        this.commandName = clipanion_12.Option.String();
        this.args = clipanion_12.Option.Proxy();
      }
      async execute() {
        const command = this.args.length > 0 ? `${this.commandName} ${this.args.join(` `)}` : this.commandName;
        return await (0, index_1.execute)(command, [], {
          cwd: fslib_12.npath.toPortablePath(this.cwd),
          stdin: this.context.stdin,
          stdout: this.context.stdout,
          stderr: this.context.stderr
        });
      }
    };
    EntryCommand.usage = {
      description: `run a command using yarn's portable shell`,
      details: `
      This command will run a command using Yarn's portable shell.

      Make sure to escape glob patterns, redirections, and other features that might be expanded by your own shell.

      Note: To escape something from Yarn's shell, you might have to escape it twice, the first time from your own shell.

      Note: Don't use this command in Yarn scripts, as Yarn's shell is automatically used.

      For a list of features, visit: https://github.com/yarnpkg/berry/blob/master/packages/yarnpkg-shell/README.md.
    `,
      examples: [[
        `Run a simple command`,
        `$0 echo Hello`
      ], [
        `Run a command with a glob pattern`,
        `$0 echo '*.js'`
      ], [
        `Run a command with a redirection`,
        `$0 echo Hello World '>' hello.txt`
      ], [
        `Run a command with an escaped glob pattern (The double escape is needed in Unix shells)`,
        `$0 echo '"*.js"'`
      ], [
        `Run a command with a variable (Double quotes are needed in Unix shells, to prevent them from expanding the variable)`,
        `$0 "GREETING=Hello echo $GREETING World"`
      ]]
    };
    exports2.default = EntryCommand;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/shell/4.0.0/09dfbba210b1162ff6f42d70ace0e56c803b057edcd4987f4958bd663dd8d7aa/node_modules/@yarnpkg/shell/lib/errors.js
var require_errors4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/shell/4.0.0/09dfbba210b1162ff6f42d70ace0e56c803b057edcd4987f4958bd663dd8d7aa/node_modules/@yarnpkg/shell/lib/errors.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.ShellError = void 0;
    var ShellError = class extends Error {
      constructor(message) {
        super(message);
        this.name = `ShellError`;
      }
    };
    exports2.ShellError = ShellError;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/utils/array.js
var require_array = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/utils/array.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.splitWhen = exports2.flatten = void 0;
    function flatten2(items) {
      return items.reduce((collection, item) => [].concat(collection, item), []);
    }
    exports2.flatten = flatten2;
    function splitWhen(items, predicate) {
      const result2 = [[]];
      let groupIndex = 0;
      for (const item of items) {
        if (predicate(item)) {
          groupIndex++;
          result2[groupIndex] = [];
        } else {
          result2[groupIndex].push(item);
        }
      }
      return result2;
    }
    exports2.splitWhen = splitWhen;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/utils/errno.js
var require_errno = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/utils/errno.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.isEnoentCodeError = void 0;
    function isEnoentCodeError(error) {
      return error.code === "ENOENT";
    }
    exports2.isEnoentCodeError = isEnoentCodeError;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/utils/fs.js
var require_fs2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/utils/fs.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.createDirentFromStats = void 0;
    var DirentFromStats = class {
      constructor(name, stats) {
        this.name = name;
        this.isBlockDevice = stats.isBlockDevice.bind(stats);
        this.isCharacterDevice = stats.isCharacterDevice.bind(stats);
        this.isDirectory = stats.isDirectory.bind(stats);
        this.isFIFO = stats.isFIFO.bind(stats);
        this.isFile = stats.isFile.bind(stats);
        this.isSocket = stats.isSocket.bind(stats);
        this.isSymbolicLink = stats.isSymbolicLink.bind(stats);
      }
    };
    function createDirentFromStats(name, stats) {
      return new DirentFromStats(name, stats);
    }
    exports2.createDirentFromStats = createDirentFromStats;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/utils/path.js
var require_path2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/utils/path.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.convertPosixPathToPattern = exports2.convertWindowsPathToPattern = exports2.convertPathToPattern = exports2.escapePosixPath = exports2.escapeWindowsPath = exports2.escape = exports2.removeLeadingDotSegment = exports2.makeAbsolute = exports2.unixify = void 0;
    var os15 = __require("os");
    var path218 = __require("path");
    var IS_WINDOWS_PLATFORM = os15.platform() === "win32";
    var LEADING_DOT_SEGMENT_CHARACTERS_COUNT = 2;
    var POSIX_UNESCAPED_GLOB_SYMBOLS_RE = /(\\?)([()*?[\]{|}]|^!|[!+@](?=\()|\\(?![!()*+?@[\]{|}]))/g;
    var WINDOWS_UNESCAPED_GLOB_SYMBOLS_RE = /(\\?)([()[\]{}]|^!|[!+@](?=\())/g;
    var DOS_DEVICE_PATH_RE = /^\\\\([.?])/;
    var WINDOWS_BACKSLASHES_RE = /\\(?![!()+@[\]{}])/g;
    function unixify(filepath) {
      return filepath.replace(/\\/g, "/");
    }
    exports2.unixify = unixify;
    function makeAbsolute(cwd, filepath) {
      return path218.resolve(cwd, filepath);
    }
    exports2.makeAbsolute = makeAbsolute;
    function removeLeadingDotSegment(entry) {
      if (entry.charAt(0) === ".") {
        const secondCharactery = entry.charAt(1);
        if (secondCharactery === "/" || secondCharactery === "\\") {
          return entry.slice(LEADING_DOT_SEGMENT_CHARACTERS_COUNT);
        }
      }
      return entry;
    }
    exports2.removeLeadingDotSegment = removeLeadingDotSegment;
    exports2.escape = IS_WINDOWS_PLATFORM ? escapeWindowsPath : escapePosixPath2;
    function escapeWindowsPath(pattern) {
      return pattern.replace(WINDOWS_UNESCAPED_GLOB_SYMBOLS_RE, "\\$2");
    }
    exports2.escapeWindowsPath = escapeWindowsPath;
    function escapePosixPath2(pattern) {
      return pattern.replace(POSIX_UNESCAPED_GLOB_SYMBOLS_RE, "\\$2");
    }
    exports2.escapePosixPath = escapePosixPath2;
    exports2.convertPathToPattern = IS_WINDOWS_PLATFORM ? convertWindowsPathToPattern : convertPosixPathToPattern;
    function convertWindowsPathToPattern(filepath) {
      return escapeWindowsPath(filepath).replace(DOS_DEVICE_PATH_RE, "//$1").replace(WINDOWS_BACKSLASHES_RE, "/");
    }
    exports2.convertWindowsPathToPattern = convertWindowsPathToPattern;
    function convertPosixPathToPattern(filepath) {
      return escapePosixPath2(filepath);
    }
    exports2.convertPosixPathToPattern = convertPosixPathToPattern;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/is-extglob/2.1.1/a31b887f7d8fd45bac03cbc721084fb7eadd6056f0d86063907b9e7f109f7f5e/node_modules/is-extglob/index.js
var require_is_extglob = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/is-extglob/2.1.1/a31b887f7d8fd45bac03cbc721084fb7eadd6056f0d86063907b9e7f109f7f5e/node_modules/is-extglob/index.js"(exports2, module2) {
    module2.exports = function isExtglob(str2) {
      if (typeof str2 !== "string" || str2 === "") {
        return false;
      }
      var match;
      while (match = /(\\).|([@?!+*]\(.*\))/g.exec(str2)) {
        if (match[2]) return true;
        str2 = str2.slice(match.index + match[0].length);
      }
      return false;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/is-glob/4.0.3/5f6010d19ebbd407d4ddad3f32ad93b07ae9baaa0b44d778899bd947e1a7324b/node_modules/is-glob/index.js
var require_is_glob = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/is-glob/4.0.3/5f6010d19ebbd407d4ddad3f32ad93b07ae9baaa0b44d778899bd947e1a7324b/node_modules/is-glob/index.js"(exports2, module2) {
    var isExtglob = require_is_extglob();
    var chars = { "{": "}", "(": ")", "[": "]" };
    var strictCheck = function(str2) {
      if (str2[0] === "!") {
        return true;
      }
      var index = 0;
      var pipeIndex = -2;
      var closeSquareIndex = -2;
      var closeCurlyIndex = -2;
      var closeParenIndex = -2;
      var backSlashIndex = -2;
      while (index < str2.length) {
        if (str2[index] === "*") {
          return true;
        }
        if (str2[index + 1] === "?" && /[\].+)]/.test(str2[index])) {
          return true;
        }
        if (closeSquareIndex !== -1 && str2[index] === "[" && str2[index + 1] !== "]") {
          if (closeSquareIndex < index) {
            closeSquareIndex = str2.indexOf("]", index);
          }
          if (closeSquareIndex > index) {
            if (backSlashIndex === -1 || backSlashIndex > closeSquareIndex) {
              return true;
            }
            backSlashIndex = str2.indexOf("\\", index);
            if (backSlashIndex === -1 || backSlashIndex > closeSquareIndex) {
              return true;
            }
          }
        }
        if (closeCurlyIndex !== -1 && str2[index] === "{" && str2[index + 1] !== "}") {
          closeCurlyIndex = str2.indexOf("}", index);
          if (closeCurlyIndex > index) {
            backSlashIndex = str2.indexOf("\\", index);
            if (backSlashIndex === -1 || backSlashIndex > closeCurlyIndex) {
              return true;
            }
          }
        }
        if (closeParenIndex !== -1 && str2[index] === "(" && str2[index + 1] === "?" && /[:!=]/.test(str2[index + 2]) && str2[index + 3] !== ")") {
          closeParenIndex = str2.indexOf(")", index);
          if (closeParenIndex > index) {
            backSlashIndex = str2.indexOf("\\", index);
            if (backSlashIndex === -1 || backSlashIndex > closeParenIndex) {
              return true;
            }
          }
        }
        if (pipeIndex !== -1 && str2[index] === "(" && str2[index + 1] !== "|") {
          if (pipeIndex < index) {
            pipeIndex = str2.indexOf("|", index);
          }
          if (pipeIndex !== -1 && str2[pipeIndex + 1] !== ")") {
            closeParenIndex = str2.indexOf(")", pipeIndex);
            if (closeParenIndex > pipeIndex) {
              backSlashIndex = str2.indexOf("\\", pipeIndex);
              if (backSlashIndex === -1 || backSlashIndex > closeParenIndex) {
                return true;
              }
            }
          }
        }
        if (str2[index] === "\\") {
          var open5 = str2[index + 1];
          index += 2;
          var close = chars[open5];
          if (close) {
            var n2 = str2.indexOf(close, index);
            if (n2 !== -1) {
              index = n2 + 1;
            }
          }
          if (str2[index] === "!") {
            return true;
          }
        } else {
          index++;
        }
      }
      return false;
    };
    var relaxedCheck = function(str2) {
      if (str2[0] === "!") {
        return true;
      }
      var index = 0;
      while (index < str2.length) {
        if (/[*?{}()[\]]/.test(str2[index])) {
          return true;
        }
        if (str2[index] === "\\") {
          var open5 = str2[index + 1];
          index += 2;
          var close = chars[open5];
          if (close) {
            var n2 = str2.indexOf(close, index);
            if (n2 !== -1) {
              index = n2 + 1;
            }
          }
          if (str2[index] === "!") {
            return true;
          }
        } else {
          index++;
        }
      }
      return false;
    };
    module2.exports = function isGlob(str2, options) {
      if (typeof str2 !== "string" || str2 === "") {
        return false;
      }
      if (isExtglob(str2)) {
        return true;
      }
      var check = strictCheck;
      if (options && options.strict === false) {
        check = relaxedCheck;
      }
      return check(str2);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/glob-parent/5.1.2/fedc04e54f83a0c0643c3abdfa28e0c97c4bf9ac1c7dd2f1e5201e4f33e3e49d/node_modules/glob-parent/index.js
var require_glob_parent = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/glob-parent/5.1.2/fedc04e54f83a0c0643c3abdfa28e0c97c4bf9ac1c7dd2f1e5201e4f33e3e49d/node_modules/glob-parent/index.js"(exports2, module2) {
    "use strict";
    var isGlob = require_is_glob();
    var pathPosixDirname = __require("path").posix.dirname;
    var isWin32 = __require("os").platform() === "win32";
    var slash = "/";
    var backslash = /\\/g;
    var enclosure = /[\{\[].*[\}\]]$/;
    var globby = /(^|[^\\])([\{\[]|\([^\)]+$)/;
    var escaped = /\\([\!\*\?\|\[\]\(\)\{\}])/g;
    module2.exports = function globParent(str2, opts2) {
      var options = Object.assign({ flipBackslashes: true }, opts2);
      if (options.flipBackslashes && isWin32 && str2.indexOf(slash) < 0) {
        str2 = str2.replace(backslash, slash);
      }
      if (enclosure.test(str2)) {
        str2 += slash;
      }
      str2 += "a";
      do {
        str2 = pathPosixDirname(str2);
      } while (isGlob(str2) || globby.test(str2));
      return str2.replace(escaped, "$1");
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/utils/pattern.js
var require_pattern = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/utils/pattern.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.isAbsolute = exports2.partitionAbsoluteAndRelative = exports2.removeDuplicateSlashes = exports2.matchAny = exports2.convertPatternsToRe = exports2.makeRe = exports2.getPatternParts = exports2.expandBraceExpansion = exports2.expandPatternsWithBraceExpansion = exports2.isAffectDepthOfReadingPattern = exports2.endsWithSlashGlobStar = exports2.hasGlobStar = exports2.getBaseDirectory = exports2.isPatternRelatedToParentDirectory = exports2.getPatternsOutsideCurrentDirectory = exports2.getPatternsInsideCurrentDirectory = exports2.getPositivePatterns = exports2.getNegativePatterns = exports2.isPositivePattern = exports2.isNegativePattern = exports2.convertToNegativePattern = exports2.convertToPositivePattern = exports2.isDynamicPattern = exports2.isStaticPattern = void 0;
    var path218 = __require("path");
    var globParent = require_glob_parent();
    var micromatch3 = require_micromatch();
    var GLOBSTAR = "**";
    var ESCAPE_SYMBOL = "\\";
    var COMMON_GLOB_SYMBOLS_RE = /[*?]|^!/;
    var REGEX_CHARACTER_CLASS_SYMBOLS_RE = /\[[^[]*]/;
    var REGEX_GROUP_SYMBOLS_RE = /(?:^|[^!*+?@])\([^(]*\|[^|]*\)/;
    var GLOB_EXTENSION_SYMBOLS_RE = /[!*+?@]\([^(]*\)/;
    var BRACE_EXPANSION_SEPARATORS_RE = /,|\.\./;
    var DOUBLE_SLASH_RE = /(?!^)\/{2,}/g;
    function isStaticPattern(pattern, options = {}) {
      return !isDynamicPattern2(pattern, options);
    }
    exports2.isStaticPattern = isStaticPattern;
    function isDynamicPattern2(pattern, options = {}) {
      if (pattern === "") {
        return false;
      }
      if (options.caseSensitiveMatch === false || pattern.includes(ESCAPE_SYMBOL)) {
        return true;
      }
      if (COMMON_GLOB_SYMBOLS_RE.test(pattern) || REGEX_CHARACTER_CLASS_SYMBOLS_RE.test(pattern) || REGEX_GROUP_SYMBOLS_RE.test(pattern)) {
        return true;
      }
      if (options.extglob !== false && GLOB_EXTENSION_SYMBOLS_RE.test(pattern)) {
        return true;
      }
      if (options.braceExpansion !== false && hasBraceExpansion(pattern)) {
        return true;
      }
      return false;
    }
    exports2.isDynamicPattern = isDynamicPattern2;
    function hasBraceExpansion(pattern) {
      const openingBraceIndex = pattern.indexOf("{");
      if (openingBraceIndex === -1) {
        return false;
      }
      const closingBraceIndex = pattern.indexOf("}", openingBraceIndex + 1);
      if (closingBraceIndex === -1) {
        return false;
      }
      const braceContent = pattern.slice(openingBraceIndex, closingBraceIndex);
      return BRACE_EXPANSION_SEPARATORS_RE.test(braceContent);
    }
    function convertToPositivePattern(pattern) {
      return isNegativePattern(pattern) ? pattern.slice(1) : pattern;
    }
    exports2.convertToPositivePattern = convertToPositivePattern;
    function convertToNegativePattern(pattern) {
      return "!" + pattern;
    }
    exports2.convertToNegativePattern = convertToNegativePattern;
    function isNegativePattern(pattern) {
      return pattern.startsWith("!") && pattern[1] !== "(";
    }
    exports2.isNegativePattern = isNegativePattern;
    function isPositivePattern(pattern) {
      return !isNegativePattern(pattern);
    }
    exports2.isPositivePattern = isPositivePattern;
    function getNegativePatterns(patterns) {
      return patterns.filter(isNegativePattern);
    }
    exports2.getNegativePatterns = getNegativePatterns;
    function getPositivePatterns(patterns) {
      return patterns.filter(isPositivePattern);
    }
    exports2.getPositivePatterns = getPositivePatterns;
    function getPatternsInsideCurrentDirectory(patterns) {
      return patterns.filter((pattern) => !isPatternRelatedToParentDirectory(pattern));
    }
    exports2.getPatternsInsideCurrentDirectory = getPatternsInsideCurrentDirectory;
    function getPatternsOutsideCurrentDirectory(patterns) {
      return patterns.filter(isPatternRelatedToParentDirectory);
    }
    exports2.getPatternsOutsideCurrentDirectory = getPatternsOutsideCurrentDirectory;
    function isPatternRelatedToParentDirectory(pattern) {
      return pattern.startsWith("..") || pattern.startsWith("./..");
    }
    exports2.isPatternRelatedToParentDirectory = isPatternRelatedToParentDirectory;
    function getBaseDirectory(pattern) {
      return globParent(pattern, { flipBackslashes: false });
    }
    exports2.getBaseDirectory = getBaseDirectory;
    function hasGlobStar(pattern) {
      return pattern.includes(GLOBSTAR);
    }
    exports2.hasGlobStar = hasGlobStar;
    function endsWithSlashGlobStar(pattern) {
      return pattern.endsWith("/" + GLOBSTAR);
    }
    exports2.endsWithSlashGlobStar = endsWithSlashGlobStar;
    function isAffectDepthOfReadingPattern(pattern) {
      const basename2 = path218.basename(pattern);
      return endsWithSlashGlobStar(pattern) || isStaticPattern(basename2);
    }
    exports2.isAffectDepthOfReadingPattern = isAffectDepthOfReadingPattern;
    function expandPatternsWithBraceExpansion(patterns) {
      return patterns.reduce((collection, pattern) => {
        return collection.concat(expandBraceExpansion(pattern));
      }, []);
    }
    exports2.expandPatternsWithBraceExpansion = expandPatternsWithBraceExpansion;
    function expandBraceExpansion(pattern) {
      const patterns = micromatch3.braces(pattern, { expand: true, nodupes: true, keepEscaping: true });
      patterns.sort((a2, b) => a2.length - b.length);
      return patterns.filter((pattern2) => pattern2 !== "");
    }
    exports2.expandBraceExpansion = expandBraceExpansion;
    function getPatternParts(pattern, options) {
      let { parts } = micromatch3.scan(pattern, Object.assign(Object.assign({}, options), { parts: true }));
      if (parts.length === 0) {
        parts = [pattern];
      }
      if (parts[0].startsWith("/")) {
        parts[0] = parts[0].slice(1);
        parts.unshift("");
      }
      return parts;
    }
    exports2.getPatternParts = getPatternParts;
    function makeRe(pattern, options) {
      return micromatch3.makeRe(pattern, options);
    }
    exports2.makeRe = makeRe;
    function convertPatternsToRe(patterns, options) {
      return patterns.map((pattern) => makeRe(pattern, options));
    }
    exports2.convertPatternsToRe = convertPatternsToRe;
    function matchAny(entry, patternsRe) {
      return patternsRe.some((patternRe) => patternRe.test(entry));
    }
    exports2.matchAny = matchAny;
    function removeDuplicateSlashes(pattern) {
      return pattern.replace(DOUBLE_SLASH_RE, "/");
    }
    exports2.removeDuplicateSlashes = removeDuplicateSlashes;
    function partitionAbsoluteAndRelative(patterns) {
      const absolute = [];
      const relative2 = [];
      for (const pattern of patterns) {
        if (isAbsolute3(pattern)) {
          absolute.push(pattern);
        } else {
          relative2.push(pattern);
        }
      }
      return [absolute, relative2];
    }
    exports2.partitionAbsoluteAndRelative = partitionAbsoluteAndRelative;
    function isAbsolute3(pattern) {
      return path218.isAbsolute(pattern);
    }
    exports2.isAbsolute = isAbsolute3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/merge2/1.4.1/020a5dba6708533d1a210be2e70dc318b18a338e31693a47aac3f81caa5b43bf/node_modules/merge2/index.js
var require_merge2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/merge2/1.4.1/020a5dba6708533d1a210be2e70dc318b18a338e31693a47aac3f81caa5b43bf/node_modules/merge2/index.js"(exports2, module2) {
    "use strict";
    var Stream = __require("stream");
    var PassThrough3 = Stream.PassThrough;
    var slice3 = Array.prototype.slice;
    module2.exports = merge22;
    function merge22() {
      const streamsQueue = [];
      const args = slice3.call(arguments);
      let merging = false;
      let options = args[args.length - 1];
      if (options && !Array.isArray(options) && options.pipe == null) {
        args.pop();
      } else {
        options = {};
      }
      const doEnd = options.end !== false;
      const doPipeError = options.pipeError === true;
      if (options.objectMode == null) {
        options.objectMode = true;
      }
      if (options.highWaterMark == null) {
        options.highWaterMark = 64 * 1024;
      }
      const mergedStream = PassThrough3(options);
      function addStream() {
        for (let i2 = 0, len = arguments.length; i2 < len; i2++) {
          streamsQueue.push(pauseStreams(arguments[i2], options));
        }
        mergeStream();
        return this;
      }
      function mergeStream() {
        if (merging) {
          return;
        }
        merging = true;
        let streams = streamsQueue.shift();
        if (!streams) {
          process.nextTick(endStream2);
          return;
        }
        if (!Array.isArray(streams)) {
          streams = [streams];
        }
        let pipesCount = streams.length + 1;
        function next2() {
          if (--pipesCount > 0) {
            return;
          }
          merging = false;
          mergeStream();
        }
        function pipe2(stream2) {
          function onend() {
            stream2.removeListener("merge2UnpipeEnd", onend);
            stream2.removeListener("end", onend);
            if (doPipeError) {
              stream2.removeListener("error", onerror);
            }
            next2();
          }
          function onerror(err) {
            mergedStream.emit("error", err);
          }
          if (stream2._readableState.endEmitted) {
            return next2();
          }
          stream2.on("merge2UnpipeEnd", onend);
          stream2.on("end", onend);
          if (doPipeError) {
            stream2.on("error", onerror);
          }
          stream2.pipe(mergedStream, { end: false });
          stream2.resume();
        }
        for (let i2 = 0; i2 < streams.length; i2++) {
          pipe2(streams[i2]);
        }
        next2();
      }
      function endStream2() {
        merging = false;
        mergedStream.emit("queueDrain");
        if (doEnd) {
          mergedStream.end();
        }
      }
      mergedStream.setMaxListeners(0);
      mergedStream.add = addStream;
      mergedStream.on("unpipe", function(stream2) {
        stream2.emit("merge2UnpipeEnd");
      });
      if (args.length) {
        addStream.apply(null, args);
      }
      return mergedStream;
    }
    function pauseStreams(streams, options) {
      if (!Array.isArray(streams)) {
        if (!streams._readableState && streams.pipe) {
          streams = streams.pipe(PassThrough3(options));
        }
        if (!streams._readableState || !streams.pause || !streams.pipe) {
          throw new Error("Only readable stream can be merged.");
        }
        streams.pause();
      } else {
        for (let i2 = 0, len = streams.length; i2 < len; i2++) {
          streams[i2] = pauseStreams(streams[i2], options);
        }
      }
      return streams;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/utils/stream.js
var require_stream = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/utils/stream.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.merge = void 0;
    var merge22 = require_merge2();
    function merge7(streams) {
      const mergedStream = merge22(streams);
      streams.forEach((stream2) => {
        stream2.once("error", (error) => mergedStream.emit("error", error));
      });
      mergedStream.once("close", () => propagateCloseEventToSources(streams));
      mergedStream.once("end", () => propagateCloseEventToSources(streams));
      return mergedStream;
    }
    exports2.merge = merge7;
    function propagateCloseEventToSources(streams) {
      streams.forEach((stream2) => stream2.emit("close"));
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/utils/string.js
var require_string = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/utils/string.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.isEmpty = exports2.isString = void 0;
    function isString(input) {
      return typeof input === "string";
    }
    exports2.isString = isString;
    function isEmpty4(input) {
      return input === "";
    }
    exports2.isEmpty = isEmpty4;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/utils/index.js
var require_utils8 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/utils/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.string = exports2.stream = exports2.pattern = exports2.path = exports2.fs = exports2.errno = exports2.array = void 0;
    var array = require_array();
    exports2.array = array;
    var errno = require_errno();
    exports2.errno = errno;
    var fs111 = require_fs2();
    exports2.fs = fs111;
    var path218 = require_path2();
    exports2.path = path218;
    var pattern = require_pattern();
    exports2.pattern = pattern;
    var stream2 = require_stream();
    exports2.stream = stream2;
    var string = require_string();
    exports2.string = string;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/managers/tasks.js
var require_tasks = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/managers/tasks.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.convertPatternGroupToTask = exports2.convertPatternGroupsToTasks = exports2.groupPatternsByBaseDirectory = exports2.getNegativePatternsAsPositive = exports2.getPositivePatterns = exports2.convertPatternsToTasks = exports2.generate = void 0;
    var utils = require_utils8();
    function generate(input, settings) {
      const patterns = processPatterns2(input, settings);
      const ignore2 = processPatterns2(settings.ignore, settings);
      const positivePatterns = getPositivePatterns(patterns);
      const negativePatterns = getNegativePatternsAsPositive(patterns, ignore2);
      const staticPatterns = positivePatterns.filter((pattern) => utils.pattern.isStaticPattern(pattern, settings));
      const dynamicPatterns = positivePatterns.filter((pattern) => utils.pattern.isDynamicPattern(pattern, settings));
      const staticTasks = convertPatternsToTasks(
        staticPatterns,
        negativePatterns,
        /* dynamic */
        false
      );
      const dynamicTasks = convertPatternsToTasks(
        dynamicPatterns,
        negativePatterns,
        /* dynamic */
        true
      );
      return staticTasks.concat(dynamicTasks);
    }
    exports2.generate = generate;
    function processPatterns2(input, settings) {
      let patterns = input;
      if (settings.braceExpansion) {
        patterns = utils.pattern.expandPatternsWithBraceExpansion(patterns);
      }
      if (settings.baseNameMatch) {
        patterns = patterns.map((pattern) => pattern.includes("/") ? pattern : `**/${pattern}`);
      }
      return patterns.map((pattern) => utils.pattern.removeDuplicateSlashes(pattern));
    }
    function convertPatternsToTasks(positive, negative, dynamic) {
      const tasks = [];
      const patternsOutsideCurrentDirectory = utils.pattern.getPatternsOutsideCurrentDirectory(positive);
      const patternsInsideCurrentDirectory = utils.pattern.getPatternsInsideCurrentDirectory(positive);
      const outsideCurrentDirectoryGroup = groupPatternsByBaseDirectory(patternsOutsideCurrentDirectory);
      const insideCurrentDirectoryGroup = groupPatternsByBaseDirectory(patternsInsideCurrentDirectory);
      tasks.push(...convertPatternGroupsToTasks(outsideCurrentDirectoryGroup, negative, dynamic));
      if ("." in insideCurrentDirectoryGroup) {
        tasks.push(convertPatternGroupToTask(".", patternsInsideCurrentDirectory, negative, dynamic));
      } else {
        tasks.push(...convertPatternGroupsToTasks(insideCurrentDirectoryGroup, negative, dynamic));
      }
      return tasks;
    }
    exports2.convertPatternsToTasks = convertPatternsToTasks;
    function getPositivePatterns(patterns) {
      return utils.pattern.getPositivePatterns(patterns);
    }
    exports2.getPositivePatterns = getPositivePatterns;
    function getNegativePatternsAsPositive(patterns, ignore2) {
      const negative = utils.pattern.getNegativePatterns(patterns).concat(ignore2);
      const positive = negative.map(utils.pattern.convertToPositivePattern);
      return positive;
    }
    exports2.getNegativePatternsAsPositive = getNegativePatternsAsPositive;
    function groupPatternsByBaseDirectory(patterns) {
      const group = {};
      return patterns.reduce((collection, pattern) => {
        const base = utils.pattern.getBaseDirectory(pattern);
        if (base in collection) {
          collection[base].push(pattern);
        } else {
          collection[base] = [pattern];
        }
        return collection;
      }, group);
    }
    exports2.groupPatternsByBaseDirectory = groupPatternsByBaseDirectory;
    function convertPatternGroupsToTasks(positive, negative, dynamic) {
      return Object.keys(positive).map((base) => {
        return convertPatternGroupToTask(base, positive[base], negative, dynamic);
      });
    }
    exports2.convertPatternGroupsToTasks = convertPatternGroupsToTasks;
    function convertPatternGroupToTask(base, positive, negative, dynamic) {
      return {
        dynamic,
        positive,
        negative,
        base,
        patterns: [].concat(positive, negative.map(utils.pattern.convertToNegativePattern))
      };
    }
    exports2.convertPatternGroupToTask = convertPatternGroupToTask;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.stat/2.0.5/a18fe583fa720fc7a562f64b45734df4ad1fd796cd7d66bee7833dc660f30bcf/node_modules/@nodelib/fs.stat/out/providers/async.js
var require_async2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.stat/2.0.5/a18fe583fa720fc7a562f64b45734df4ad1fd796cd7d66bee7833dc660f30bcf/node_modules/@nodelib/fs.stat/out/providers/async.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.read = void 0;
    function read2(path218, settings, callback2) {
      settings.fs.lstat(path218, (lstatError, lstat) => {
        if (lstatError !== null) {
          callFailureCallback(callback2, lstatError);
          return;
        }
        if (!lstat.isSymbolicLink() || !settings.followSymbolicLink) {
          callSuccessCallback(callback2, lstat);
          return;
        }
        settings.fs.stat(path218, (statError, stat2) => {
          if (statError !== null) {
            if (settings.throwErrorOnBrokenSymbolicLink) {
              callFailureCallback(callback2, statError);
              return;
            }
            callSuccessCallback(callback2, lstat);
            return;
          }
          if (settings.markSymbolicLink) {
            stat2.isSymbolicLink = () => true;
          }
          callSuccessCallback(callback2, stat2);
        });
      });
    }
    exports2.read = read2;
    function callFailureCallback(callback2, error) {
      callback2(error);
    }
    function callSuccessCallback(callback2, result2) {
      callback2(null, result2);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.stat/2.0.5/a18fe583fa720fc7a562f64b45734df4ad1fd796cd7d66bee7833dc660f30bcf/node_modules/@nodelib/fs.stat/out/providers/sync.js
var require_sync = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.stat/2.0.5/a18fe583fa720fc7a562f64b45734df4ad1fd796cd7d66bee7833dc660f30bcf/node_modules/@nodelib/fs.stat/out/providers/sync.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.read = void 0;
    function read2(path218, settings) {
      const lstat = settings.fs.lstatSync(path218);
      if (!lstat.isSymbolicLink() || !settings.followSymbolicLink) {
        return lstat;
      }
      try {
        const stat2 = settings.fs.statSync(path218);
        if (settings.markSymbolicLink) {
          stat2.isSymbolicLink = () => true;
        }
        return stat2;
      } catch (error) {
        if (!settings.throwErrorOnBrokenSymbolicLink) {
          return lstat;
        }
        throw error;
      }
    }
    exports2.read = read2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.stat/2.0.5/a18fe583fa720fc7a562f64b45734df4ad1fd796cd7d66bee7833dc660f30bcf/node_modules/@nodelib/fs.stat/out/adapters/fs.js
var require_fs3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.stat/2.0.5/a18fe583fa720fc7a562f64b45734df4ad1fd796cd7d66bee7833dc660f30bcf/node_modules/@nodelib/fs.stat/out/adapters/fs.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.createFileSystemAdapter = exports2.FILE_SYSTEM_ADAPTER = void 0;
    var fs111 = __require("fs");
    exports2.FILE_SYSTEM_ADAPTER = {
      lstat: fs111.lstat,
      stat: fs111.stat,
      lstatSync: fs111.lstatSync,
      statSync: fs111.statSync
    };
    function createFileSystemAdapter(fsMethods) {
      if (fsMethods === void 0) {
        return exports2.FILE_SYSTEM_ADAPTER;
      }
      return Object.assign(Object.assign({}, exports2.FILE_SYSTEM_ADAPTER), fsMethods);
    }
    exports2.createFileSystemAdapter = createFileSystemAdapter;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.stat/2.0.5/a18fe583fa720fc7a562f64b45734df4ad1fd796cd7d66bee7833dc660f30bcf/node_modules/@nodelib/fs.stat/out/settings.js
var require_settings = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.stat/2.0.5/a18fe583fa720fc7a562f64b45734df4ad1fd796cd7d66bee7833dc660f30bcf/node_modules/@nodelib/fs.stat/out/settings.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var fs111 = require_fs3();
    var Settings = class {
      constructor(_options = {}) {
        this._options = _options;
        this.followSymbolicLink = this._getValue(this._options.followSymbolicLink, true);
        this.fs = fs111.createFileSystemAdapter(this._options.fs);
        this.markSymbolicLink = this._getValue(this._options.markSymbolicLink, false);
        this.throwErrorOnBrokenSymbolicLink = this._getValue(this._options.throwErrorOnBrokenSymbolicLink, true);
      }
      _getValue(option, value) {
        return option !== null && option !== void 0 ? option : value;
      }
    };
    exports2.default = Settings;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.stat/2.0.5/a18fe583fa720fc7a562f64b45734df4ad1fd796cd7d66bee7833dc660f30bcf/node_modules/@nodelib/fs.stat/out/index.js
var require_out = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.stat/2.0.5/a18fe583fa720fc7a562f64b45734df4ad1fd796cd7d66bee7833dc660f30bcf/node_modules/@nodelib/fs.stat/out/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.statSync = exports2.stat = exports2.Settings = void 0;
    var async = require_async2();
    var sync3 = require_sync();
    var settings_1 = require_settings();
    exports2.Settings = settings_1.default;
    function stat2(path218, optionsOrSettingsOrCallback, callback2) {
      if (typeof optionsOrSettingsOrCallback === "function") {
        async.read(path218, getSettings(), optionsOrSettingsOrCallback);
        return;
      }
      async.read(path218, getSettings(optionsOrSettingsOrCallback), callback2);
    }
    exports2.stat = stat2;
    function statSync3(path218, optionsOrSettings) {
      const settings = getSettings(optionsOrSettings);
      return sync3.read(path218, settings);
    }
    exports2.statSync = statSync3;
    function getSettings(settingsOrOptions = {}) {
      if (settingsOrOptions instanceof settings_1.default) {
        return settingsOrOptions;
      }
      return new settings_1.default(settingsOrOptions);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/queue-microtask/1.2.3/5004b678cd06a4c9cf01ec5a4a3e88e0dab2d5e57ebf6952bbba02687d2d4b96/node_modules/queue-microtask/index.js
var require_queue_microtask = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/queue-microtask/1.2.3/5004b678cd06a4c9cf01ec5a4a3e88e0dab2d5e57ebf6952bbba02687d2d4b96/node_modules/queue-microtask/index.js"(exports2, module2) {
    var promise2;
    module2.exports = typeof queueMicrotask === "function" ? queueMicrotask.bind(typeof window !== "undefined" ? window : global) : (cb) => (promise2 || (promise2 = Promise.resolve())).then(cb).catch((err) => setTimeout(() => {
      throw err;
    }, 0));
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/run-parallel/1.2.0/3913053af3a6a9a6db127d62f377d6c4737d2538ca54cac3931789acb2492492/node_modules/run-parallel/index.js
var require_run_parallel = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/run-parallel/1.2.0/3913053af3a6a9a6db127d62f377d6c4737d2538ca54cac3931789acb2492492/node_modules/run-parallel/index.js"(exports2, module2) {
    module2.exports = runParallel;
    var queueMicrotask2 = require_queue_microtask();
    function runParallel(tasks, cb) {
      let results, pending, keys4;
      let isSync = true;
      if (Array.isArray(tasks)) {
        results = [];
        pending = tasks.length;
      } else {
        keys4 = Object.keys(tasks);
        results = {};
        pending = keys4.length;
      }
      function done(err) {
        function end() {
          if (cb) cb(err, results);
          cb = null;
        }
        if (isSync) queueMicrotask2(end);
        else end();
      }
      function each(i2, err, result2) {
        results[i2] = result2;
        if (--pending === 0 || err) {
          done(err);
        }
      }
      if (!pending) {
        done(null);
      } else if (keys4) {
        keys4.forEach(function(key) {
          tasks[key](function(err, result2) {
            each(key, err, result2);
          });
        });
      } else {
        tasks.forEach(function(task, i2) {
          task(function(err, result2) {
            each(i2, err, result2);
          });
        });
      }
      isSync = false;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.scandir/2.1.5/e782c397301ae1070a1c79775f17168b1359e43b12ae9e53bffd03056bd135d9/node_modules/@nodelib/fs.scandir/out/constants.js
var require_constants8 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.scandir/2.1.5/e782c397301ae1070a1c79775f17168b1359e43b12ae9e53bffd03056bd135d9/node_modules/@nodelib/fs.scandir/out/constants.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.IS_SUPPORT_READDIR_WITH_FILE_TYPES = void 0;
    var NODE_PROCESS_VERSION_PARTS = process.versions.node.split(".");
    if (NODE_PROCESS_VERSION_PARTS[0] === void 0 || NODE_PROCESS_VERSION_PARTS[1] === void 0) {
      throw new Error(`Unexpected behavior. The 'process.versions.node' variable has invalid value: ${process.versions.node}`);
    }
    var MAJOR_VERSION = Number.parseInt(NODE_PROCESS_VERSION_PARTS[0], 10);
    var MINOR_VERSION = Number.parseInt(NODE_PROCESS_VERSION_PARTS[1], 10);
    var SUPPORTED_MAJOR_VERSION = 10;
    var SUPPORTED_MINOR_VERSION = 10;
    var IS_MATCHED_BY_MAJOR = MAJOR_VERSION > SUPPORTED_MAJOR_VERSION;
    var IS_MATCHED_BY_MAJOR_AND_MINOR = MAJOR_VERSION === SUPPORTED_MAJOR_VERSION && MINOR_VERSION >= SUPPORTED_MINOR_VERSION;
    exports2.IS_SUPPORT_READDIR_WITH_FILE_TYPES = IS_MATCHED_BY_MAJOR || IS_MATCHED_BY_MAJOR_AND_MINOR;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.scandir/2.1.5/e782c397301ae1070a1c79775f17168b1359e43b12ae9e53bffd03056bd135d9/node_modules/@nodelib/fs.scandir/out/utils/fs.js
var require_fs4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.scandir/2.1.5/e782c397301ae1070a1c79775f17168b1359e43b12ae9e53bffd03056bd135d9/node_modules/@nodelib/fs.scandir/out/utils/fs.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.createDirentFromStats = void 0;
    var DirentFromStats = class {
      constructor(name, stats) {
        this.name = name;
        this.isBlockDevice = stats.isBlockDevice.bind(stats);
        this.isCharacterDevice = stats.isCharacterDevice.bind(stats);
        this.isDirectory = stats.isDirectory.bind(stats);
        this.isFIFO = stats.isFIFO.bind(stats);
        this.isFile = stats.isFile.bind(stats);
        this.isSocket = stats.isSocket.bind(stats);
        this.isSymbolicLink = stats.isSymbolicLink.bind(stats);
      }
    };
    function createDirentFromStats(name, stats) {
      return new DirentFromStats(name, stats);
    }
    exports2.createDirentFromStats = createDirentFromStats;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.scandir/2.1.5/e782c397301ae1070a1c79775f17168b1359e43b12ae9e53bffd03056bd135d9/node_modules/@nodelib/fs.scandir/out/utils/index.js
var require_utils9 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.scandir/2.1.5/e782c397301ae1070a1c79775f17168b1359e43b12ae9e53bffd03056bd135d9/node_modules/@nodelib/fs.scandir/out/utils/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.fs = void 0;
    var fs111 = require_fs4();
    exports2.fs = fs111;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.scandir/2.1.5/e782c397301ae1070a1c79775f17168b1359e43b12ae9e53bffd03056bd135d9/node_modules/@nodelib/fs.scandir/out/providers/common.js
var require_common2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.scandir/2.1.5/e782c397301ae1070a1c79775f17168b1359e43b12ae9e53bffd03056bd135d9/node_modules/@nodelib/fs.scandir/out/providers/common.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.joinPathSegments = void 0;
    function joinPathSegments(a2, b, separator) {
      if (a2.endsWith(separator)) {
        return a2 + b;
      }
      return a2 + separator + b;
    }
    exports2.joinPathSegments = joinPathSegments;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.scandir/2.1.5/e782c397301ae1070a1c79775f17168b1359e43b12ae9e53bffd03056bd135d9/node_modules/@nodelib/fs.scandir/out/providers/async.js
var require_async3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.scandir/2.1.5/e782c397301ae1070a1c79775f17168b1359e43b12ae9e53bffd03056bd135d9/node_modules/@nodelib/fs.scandir/out/providers/async.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.readdir = exports2.readdirWithFileTypes = exports2.read = void 0;
    var fsStat = require_out();
    var rpl = require_run_parallel();
    var constants_1 = require_constants8();
    var utils = require_utils9();
    var common3 = require_common2();
    function read2(directory, settings, callback2) {
      if (!settings.stats && constants_1.IS_SUPPORT_READDIR_WITH_FILE_TYPES) {
        readdirWithFileTypes(directory, settings, callback2);
        return;
      }
      readdir3(directory, settings, callback2);
    }
    exports2.read = read2;
    function readdirWithFileTypes(directory, settings, callback2) {
      settings.fs.readdir(directory, { withFileTypes: true }, (readdirError, dirents) => {
        if (readdirError !== null) {
          callFailureCallback(callback2, readdirError);
          return;
        }
        const entries = dirents.map((dirent) => ({
          dirent,
          name: dirent.name,
          path: common3.joinPathSegments(directory, dirent.name, settings.pathSegmentSeparator)
        }));
        if (!settings.followSymbolicLinks) {
          callSuccessCallback(callback2, entries);
          return;
        }
        const tasks = entries.map((entry) => makeRplTaskEntry(entry, settings));
        rpl(tasks, (rplError, rplEntries) => {
          if (rplError !== null) {
            callFailureCallback(callback2, rplError);
            return;
          }
          callSuccessCallback(callback2, rplEntries);
        });
      });
    }
    exports2.readdirWithFileTypes = readdirWithFileTypes;
    function makeRplTaskEntry(entry, settings) {
      return (done) => {
        if (!entry.dirent.isSymbolicLink()) {
          done(null, entry);
          return;
        }
        settings.fs.stat(entry.path, (statError, stats) => {
          if (statError !== null) {
            if (settings.throwErrorOnBrokenSymbolicLink) {
              done(statError);
              return;
            }
            done(null, entry);
            return;
          }
          entry.dirent = utils.fs.createDirentFromStats(entry.name, stats);
          done(null, entry);
        });
      };
    }
    function readdir3(directory, settings, callback2) {
      settings.fs.readdir(directory, (readdirError, names) => {
        if (readdirError !== null) {
          callFailureCallback(callback2, readdirError);
          return;
        }
        const tasks = names.map((name) => {
          const path218 = common3.joinPathSegments(directory, name, settings.pathSegmentSeparator);
          return (done) => {
            fsStat.stat(path218, settings.fsStatSettings, (error, stats) => {
              if (error !== null) {
                done(error);
                return;
              }
              const entry = {
                name,
                path: path218,
                dirent: utils.fs.createDirentFromStats(name, stats)
              };
              if (settings.stats) {
                entry.stats = stats;
              }
              done(null, entry);
            });
          };
        });
        rpl(tasks, (rplError, entries) => {
          if (rplError !== null) {
            callFailureCallback(callback2, rplError);
            return;
          }
          callSuccessCallback(callback2, entries);
        });
      });
    }
    exports2.readdir = readdir3;
    function callFailureCallback(callback2, error) {
      callback2(error);
    }
    function callSuccessCallback(callback2, result2) {
      callback2(null, result2);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.scandir/2.1.5/e782c397301ae1070a1c79775f17168b1359e43b12ae9e53bffd03056bd135d9/node_modules/@nodelib/fs.scandir/out/providers/sync.js
var require_sync2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.scandir/2.1.5/e782c397301ae1070a1c79775f17168b1359e43b12ae9e53bffd03056bd135d9/node_modules/@nodelib/fs.scandir/out/providers/sync.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.readdir = exports2.readdirWithFileTypes = exports2.read = void 0;
    var fsStat = require_out();
    var constants_1 = require_constants8();
    var utils = require_utils9();
    var common3 = require_common2();
    function read2(directory, settings) {
      if (!settings.stats && constants_1.IS_SUPPORT_READDIR_WITH_FILE_TYPES) {
        return readdirWithFileTypes(directory, settings);
      }
      return readdir3(directory, settings);
    }
    exports2.read = read2;
    function readdirWithFileTypes(directory, settings) {
      const dirents = settings.fs.readdirSync(directory, { withFileTypes: true });
      return dirents.map((dirent) => {
        const entry = {
          dirent,
          name: dirent.name,
          path: common3.joinPathSegments(directory, dirent.name, settings.pathSegmentSeparator)
        };
        if (entry.dirent.isSymbolicLink() && settings.followSymbolicLinks) {
          try {
            const stats = settings.fs.statSync(entry.path);
            entry.dirent = utils.fs.createDirentFromStats(entry.name, stats);
          } catch (error) {
            if (settings.throwErrorOnBrokenSymbolicLink) {
              throw error;
            }
          }
        }
        return entry;
      });
    }
    exports2.readdirWithFileTypes = readdirWithFileTypes;
    function readdir3(directory, settings) {
      const names = settings.fs.readdirSync(directory);
      return names.map((name) => {
        const entryPath = common3.joinPathSegments(directory, name, settings.pathSegmentSeparator);
        const stats = fsStat.statSync(entryPath, settings.fsStatSettings);
        const entry = {
          name,
          path: entryPath,
          dirent: utils.fs.createDirentFromStats(name, stats)
        };
        if (settings.stats) {
          entry.stats = stats;
        }
        return entry;
      });
    }
    exports2.readdir = readdir3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.scandir/2.1.5/e782c397301ae1070a1c79775f17168b1359e43b12ae9e53bffd03056bd135d9/node_modules/@nodelib/fs.scandir/out/adapters/fs.js
var require_fs5 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.scandir/2.1.5/e782c397301ae1070a1c79775f17168b1359e43b12ae9e53bffd03056bd135d9/node_modules/@nodelib/fs.scandir/out/adapters/fs.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.createFileSystemAdapter = exports2.FILE_SYSTEM_ADAPTER = void 0;
    var fs111 = __require("fs");
    exports2.FILE_SYSTEM_ADAPTER = {
      lstat: fs111.lstat,
      stat: fs111.stat,
      lstatSync: fs111.lstatSync,
      statSync: fs111.statSync,
      readdir: fs111.readdir,
      readdirSync: fs111.readdirSync
    };
    function createFileSystemAdapter(fsMethods) {
      if (fsMethods === void 0) {
        return exports2.FILE_SYSTEM_ADAPTER;
      }
      return Object.assign(Object.assign({}, exports2.FILE_SYSTEM_ADAPTER), fsMethods);
    }
    exports2.createFileSystemAdapter = createFileSystemAdapter;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.scandir/2.1.5/e782c397301ae1070a1c79775f17168b1359e43b12ae9e53bffd03056bd135d9/node_modules/@nodelib/fs.scandir/out/settings.js
var require_settings2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.scandir/2.1.5/e782c397301ae1070a1c79775f17168b1359e43b12ae9e53bffd03056bd135d9/node_modules/@nodelib/fs.scandir/out/settings.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var path218 = __require("path");
    var fsStat = require_out();
    var fs111 = require_fs5();
    var Settings = class {
      constructor(_options = {}) {
        this._options = _options;
        this.followSymbolicLinks = this._getValue(this._options.followSymbolicLinks, false);
        this.fs = fs111.createFileSystemAdapter(this._options.fs);
        this.pathSegmentSeparator = this._getValue(this._options.pathSegmentSeparator, path218.sep);
        this.stats = this._getValue(this._options.stats, false);
        this.throwErrorOnBrokenSymbolicLink = this._getValue(this._options.throwErrorOnBrokenSymbolicLink, true);
        this.fsStatSettings = new fsStat.Settings({
          followSymbolicLink: this.followSymbolicLinks,
          fs: this.fs,
          throwErrorOnBrokenSymbolicLink: this.throwErrorOnBrokenSymbolicLink
        });
      }
      _getValue(option, value) {
        return option !== null && option !== void 0 ? option : value;
      }
    };
    exports2.default = Settings;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.scandir/2.1.5/e782c397301ae1070a1c79775f17168b1359e43b12ae9e53bffd03056bd135d9/node_modules/@nodelib/fs.scandir/out/index.js
var require_out2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.scandir/2.1.5/e782c397301ae1070a1c79775f17168b1359e43b12ae9e53bffd03056bd135d9/node_modules/@nodelib/fs.scandir/out/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.Settings = exports2.scandirSync = exports2.scandir = void 0;
    var async = require_async3();
    var sync3 = require_sync2();
    var settings_1 = require_settings2();
    exports2.Settings = settings_1.default;
    function scandir(path218, optionsOrSettingsOrCallback, callback2) {
      if (typeof optionsOrSettingsOrCallback === "function") {
        async.read(path218, getSettings(), optionsOrSettingsOrCallback);
        return;
      }
      async.read(path218, getSettings(optionsOrSettingsOrCallback), callback2);
    }
    exports2.scandir = scandir;
    function scandirSync(path218, optionsOrSettings) {
      const settings = getSettings(optionsOrSettings);
      return sync3.read(path218, settings);
    }
    exports2.scandirSync = scandirSync;
    function getSettings(settingsOrOptions = {}) {
      if (settingsOrOptions instanceof settings_1.default) {
        return settingsOrOptions;
      }
      return new settings_1.default(settingsOrOptions);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/reusify/1.1.0/ba0ed478ca8bcc297c0a0bb75bc1fab72c39937204f3b60af935de964b431505/node_modules/reusify/reusify.js
var require_reusify = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/reusify/1.1.0/ba0ed478ca8bcc297c0a0bb75bc1fab72c39937204f3b60af935de964b431505/node_modules/reusify/reusify.js"(exports2, module2) {
    "use strict";
    function reusify(Constructor) {
      var head2 = new Constructor();
      var tail2 = head2;
      function get() {
        var current = head2;
        if (current.next) {
          head2 = current.next;
        } else {
          head2 = new Constructor();
          tail2 = head2;
        }
        current.next = null;
        return current;
      }
      function release(obj) {
        tail2.next = obj;
        tail2 = obj;
      }
      return {
        get,
        release
      };
    }
    module2.exports = reusify;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fastq/1.20.1/e556497869ec3893fd89b8e14a079864c1ae527d27c9ccec81f767b12c4cacdd/node_modules/fastq/queue.js
var require_queue = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fastq/1.20.1/e556497869ec3893fd89b8e14a079864c1ae527d27c9ccec81f767b12c4cacdd/node_modules/fastq/queue.js"(exports2, module2) {
    "use strict";
    var reusify = require_reusify();
    function fastqueue(context, worker, _concurrency) {
      if (typeof context === "function") {
        _concurrency = worker;
        worker = context;
        context = null;
      }
      if (!(_concurrency >= 1)) {
        throw new Error("fastqueue concurrency must be equal to or greater than 1");
      }
      var cache = reusify(Task);
      var queueHead = null;
      var queueTail = null;
      var _running = 0;
      var errorHandler2 = null;
      var self2 = {
        push,
        drain: noop5,
        saturated: noop5,
        pause,
        paused: false,
        get concurrency() {
          return _concurrency;
        },
        set concurrency(value) {
          if (!(value >= 1)) {
            throw new Error("fastqueue concurrency must be equal to or greater than 1");
          }
          _concurrency = value;
          if (self2.paused) return;
          for (; queueHead && _running < _concurrency; ) {
            _running++;
            release();
          }
        },
        running: running3,
        resume,
        idle,
        length,
        getQueue,
        unshift,
        empty: noop5,
        kill,
        killAndDrain,
        error,
        abort
      };
      return self2;
      function running3() {
        return _running;
      }
      function pause() {
        self2.paused = true;
      }
      function length() {
        var current = queueHead;
        var counter = 0;
        while (current) {
          current = current.next;
          counter++;
        }
        return counter;
      }
      function getQueue() {
        var current = queueHead;
        var tasks = [];
        while (current) {
          tasks.push(current.value);
          current = current.next;
        }
        return tasks;
      }
      function resume() {
        if (!self2.paused) return;
        self2.paused = false;
        if (queueHead === null) {
          _running++;
          release();
          return;
        }
        for (; queueHead && _running < _concurrency; ) {
          _running++;
          release();
        }
      }
      function idle() {
        return _running === 0 && self2.length() === 0;
      }
      function push(value, done) {
        var current = cache.get();
        current.context = context;
        current.release = release;
        current.value = value;
        current.callback = done || noop5;
        current.errorHandler = errorHandler2;
        if (_running >= _concurrency || self2.paused) {
          if (queueTail) {
            queueTail.next = current;
            queueTail = current;
          } else {
            queueHead = current;
            queueTail = current;
            self2.saturated();
          }
        } else {
          _running++;
          worker.call(context, current.value, current.worked);
        }
      }
      function unshift(value, done) {
        var current = cache.get();
        current.context = context;
        current.release = release;
        current.value = value;
        current.callback = done || noop5;
        current.errorHandler = errorHandler2;
        if (_running >= _concurrency || self2.paused) {
          if (queueHead) {
            current.next = queueHead;
            queueHead = current;
          } else {
            queueHead = current;
            queueTail = current;
            self2.saturated();
          }
        } else {
          _running++;
          worker.call(context, current.value, current.worked);
        }
      }
      function release(holder) {
        if (holder) {
          cache.release(holder);
        }
        var next2 = queueHead;
        if (next2 && _running <= _concurrency) {
          if (!self2.paused) {
            if (queueTail === queueHead) {
              queueTail = null;
            }
            queueHead = next2.next;
            next2.next = null;
            worker.call(context, next2.value, next2.worked);
            if (queueTail === null) {
              self2.empty();
            }
          } else {
            _running--;
          }
        } else if (--_running === 0) {
          self2.drain();
        }
      }
      function kill() {
        queueHead = null;
        queueTail = null;
        self2.drain = noop5;
      }
      function killAndDrain() {
        queueHead = null;
        queueTail = null;
        self2.drain();
        self2.drain = noop5;
      }
      function abort() {
        var current = queueHead;
        queueHead = null;
        queueTail = null;
        while (current) {
          var next2 = current.next;
          var callback2 = current.callback;
          var errorHandler3 = current.errorHandler;
          var val = current.value;
          var context2 = current.context;
          current.value = null;
          current.callback = noop5;
          current.errorHandler = null;
          if (errorHandler3) {
            errorHandler3(new Error("abort"), val);
          }
          callback2.call(context2, new Error("abort"));
          current.release(current);
          current = next2;
        }
        self2.drain = noop5;
      }
      function error(handler77) {
        errorHandler2 = handler77;
      }
    }
    function noop5() {
    }
    function Task() {
      this.value = null;
      this.callback = noop5;
      this.next = null;
      this.release = noop5;
      this.context = null;
      this.errorHandler = null;
      var self2 = this;
      this.worked = function worked(err, result2) {
        var callback2 = self2.callback;
        var errorHandler2 = self2.errorHandler;
        var val = self2.value;
        self2.value = null;
        self2.callback = noop5;
        if (self2.errorHandler) {
          errorHandler2(err, val);
        }
        callback2.call(self2.context, err, result2);
        self2.release(self2);
      };
    }
    function queueAsPromised(context, worker, _concurrency) {
      if (typeof context === "function") {
        _concurrency = worker;
        worker = context;
        context = null;
      }
      function asyncWrapper(arg, cb) {
        worker.call(this, arg).then(function(res) {
          cb(null, res);
        }, cb);
      }
      var queue2 = fastqueue(context, asyncWrapper, _concurrency);
      var pushCb = queue2.push;
      var unshiftCb = queue2.unshift;
      queue2.push = push;
      queue2.unshift = unshift;
      queue2.drained = drained;
      return queue2;
      function push(value) {
        var p = new Promise(function(resolve3, reject3) {
          pushCb(value, function(err, result2) {
            if (err) {
              reject3(err);
              return;
            }
            resolve3(result2);
          });
        });
        p.catch(noop5);
        return p;
      }
      function unshift(value) {
        var p = new Promise(function(resolve3, reject3) {
          unshiftCb(value, function(err, result2) {
            if (err) {
              reject3(err);
              return;
            }
            resolve3(result2);
          });
        });
        p.catch(noop5);
        return p;
      }
      function drained() {
        var p = new Promise(function(resolve3) {
          process.nextTick(function() {
            if (queue2.idle()) {
              resolve3();
            } else {
              var previousDrain = queue2.drain;
              queue2.drain = function() {
                if (typeof previousDrain === "function") previousDrain();
                resolve3();
                queue2.drain = previousDrain;
              };
            }
          });
        });
        return p;
      }
    }
    module2.exports = fastqueue;
    module2.exports.promise = queueAsPromised;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.walk/1.2.8/b1d6c9ee0eed3cb108f73a2593634a23c7b72fdd7d0c348ec6eedca2d5c75d23/node_modules/@nodelib/fs.walk/out/readers/common.js
var require_common3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.walk/1.2.8/b1d6c9ee0eed3cb108f73a2593634a23c7b72fdd7d0c348ec6eedca2d5c75d23/node_modules/@nodelib/fs.walk/out/readers/common.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.joinPathSegments = exports2.replacePathSegmentSeparator = exports2.isAppliedFilter = exports2.isFatalError = void 0;
    function isFatalError(settings, error) {
      if (settings.errorFilter === null) {
        return true;
      }
      return !settings.errorFilter(error);
    }
    exports2.isFatalError = isFatalError;
    function isAppliedFilter(filter14, value) {
      return filter14 === null || filter14(value);
    }
    exports2.isAppliedFilter = isAppliedFilter;
    function replacePathSegmentSeparator(filepath, separator) {
      return filepath.split(/[/\\]/).join(separator);
    }
    exports2.replacePathSegmentSeparator = replacePathSegmentSeparator;
    function joinPathSegments(a2, b, separator) {
      if (a2 === "") {
        return b;
      }
      if (a2.endsWith(separator)) {
        return a2 + b;
      }
      return a2 + separator + b;
    }
    exports2.joinPathSegments = joinPathSegments;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.walk/1.2.8/b1d6c9ee0eed3cb108f73a2593634a23c7b72fdd7d0c348ec6eedca2d5c75d23/node_modules/@nodelib/fs.walk/out/readers/reader.js
var require_reader = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.walk/1.2.8/b1d6c9ee0eed3cb108f73a2593634a23c7b72fdd7d0c348ec6eedca2d5c75d23/node_modules/@nodelib/fs.walk/out/readers/reader.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var common3 = require_common3();
    var Reader = class {
      constructor(_root, _settings) {
        this._root = _root;
        this._settings = _settings;
        this._root = common3.replacePathSegmentSeparator(_root, _settings.pathSegmentSeparator);
      }
    };
    exports2.default = Reader;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.walk/1.2.8/b1d6c9ee0eed3cb108f73a2593634a23c7b72fdd7d0c348ec6eedca2d5c75d23/node_modules/@nodelib/fs.walk/out/readers/async.js
var require_async4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.walk/1.2.8/b1d6c9ee0eed3cb108f73a2593634a23c7b72fdd7d0c348ec6eedca2d5c75d23/node_modules/@nodelib/fs.walk/out/readers/async.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var events_1 = __require("events");
    var fsScandir = require_out2();
    var fastq = require_queue();
    var common3 = require_common3();
    var reader_1 = require_reader();
    var AsyncReader = class extends reader_1.default {
      constructor(_root, _settings) {
        super(_root, _settings);
        this._settings = _settings;
        this._scandir = fsScandir.scandir;
        this._emitter = new events_1.EventEmitter();
        this._queue = fastq(this._worker.bind(this), this._settings.concurrency);
        this._isFatalError = false;
        this._isDestroyed = false;
        this._queue.drain = () => {
          if (!this._isFatalError) {
            this._emitter.emit("end");
          }
        };
      }
      read() {
        this._isFatalError = false;
        this._isDestroyed = false;
        setImmediate(() => {
          this._pushToQueue(this._root, this._settings.basePath);
        });
        return this._emitter;
      }
      get isDestroyed() {
        return this._isDestroyed;
      }
      destroy() {
        if (this._isDestroyed) {
          throw new Error("The reader is already destroyed");
        }
        this._isDestroyed = true;
        this._queue.killAndDrain();
      }
      onEntry(callback2) {
        this._emitter.on("entry", callback2);
      }
      onError(callback2) {
        this._emitter.once("error", callback2);
      }
      onEnd(callback2) {
        this._emitter.once("end", callback2);
      }
      _pushToQueue(directory, base) {
        const queueItem = { directory, base };
        this._queue.push(queueItem, (error) => {
          if (error !== null) {
            this._handleError(error);
          }
        });
      }
      _worker(item, done) {
        this._scandir(item.directory, this._settings.fsScandirSettings, (error, entries) => {
          if (error !== null) {
            done(error, void 0);
            return;
          }
          for (const entry of entries) {
            this._handleEntry(entry, item.base);
          }
          done(null, void 0);
        });
      }
      _handleError(error) {
        if (this._isDestroyed || !common3.isFatalError(this._settings, error)) {
          return;
        }
        this._isFatalError = true;
        this._isDestroyed = true;
        this._emitter.emit("error", error);
      }
      _handleEntry(entry, base) {
        if (this._isDestroyed || this._isFatalError) {
          return;
        }
        const fullpath = entry.path;
        if (base !== void 0) {
          entry.path = common3.joinPathSegments(base, entry.name, this._settings.pathSegmentSeparator);
        }
        if (common3.isAppliedFilter(this._settings.entryFilter, entry)) {
          this._emitEntry(entry);
        }
        if (entry.dirent.isDirectory() && common3.isAppliedFilter(this._settings.deepFilter, entry)) {
          this._pushToQueue(fullpath, base === void 0 ? void 0 : entry.path);
        }
      }
      _emitEntry(entry) {
        this._emitter.emit("entry", entry);
      }
    };
    exports2.default = AsyncReader;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.walk/1.2.8/b1d6c9ee0eed3cb108f73a2593634a23c7b72fdd7d0c348ec6eedca2d5c75d23/node_modules/@nodelib/fs.walk/out/providers/async.js
var require_async5 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.walk/1.2.8/b1d6c9ee0eed3cb108f73a2593634a23c7b72fdd7d0c348ec6eedca2d5c75d23/node_modules/@nodelib/fs.walk/out/providers/async.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var async_1 = require_async4();
    var AsyncProvider = class {
      constructor(_root, _settings) {
        this._root = _root;
        this._settings = _settings;
        this._reader = new async_1.default(this._root, this._settings);
        this._storage = [];
      }
      read(callback2) {
        this._reader.onError((error) => {
          callFailureCallback(callback2, error);
        });
        this._reader.onEntry((entry) => {
          this._storage.push(entry);
        });
        this._reader.onEnd(() => {
          callSuccessCallback(callback2, this._storage);
        });
        this._reader.read();
      }
    };
    exports2.default = AsyncProvider;
    function callFailureCallback(callback2, error) {
      callback2(error);
    }
    function callSuccessCallback(callback2, entries) {
      callback2(null, entries);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.walk/1.2.8/b1d6c9ee0eed3cb108f73a2593634a23c7b72fdd7d0c348ec6eedca2d5c75d23/node_modules/@nodelib/fs.walk/out/providers/stream.js
var require_stream2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.walk/1.2.8/b1d6c9ee0eed3cb108f73a2593634a23c7b72fdd7d0c348ec6eedca2d5c75d23/node_modules/@nodelib/fs.walk/out/providers/stream.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var stream_12 = __require("stream");
    var async_1 = require_async4();
    var StreamProvider = class {
      constructor(_root, _settings) {
        this._root = _root;
        this._settings = _settings;
        this._reader = new async_1.default(this._root, this._settings);
        this._stream = new stream_12.Readable({
          objectMode: true,
          read: () => {
          },
          destroy: () => {
            if (!this._reader.isDestroyed) {
              this._reader.destroy();
            }
          }
        });
      }
      read() {
        this._reader.onError((error) => {
          this._stream.emit("error", error);
        });
        this._reader.onEntry((entry) => {
          this._stream.push(entry);
        });
        this._reader.onEnd(() => {
          this._stream.push(null);
        });
        this._reader.read();
        return this._stream;
      }
    };
    exports2.default = StreamProvider;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.walk/1.2.8/b1d6c9ee0eed3cb108f73a2593634a23c7b72fdd7d0c348ec6eedca2d5c75d23/node_modules/@nodelib/fs.walk/out/readers/sync.js
var require_sync3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.walk/1.2.8/b1d6c9ee0eed3cb108f73a2593634a23c7b72fdd7d0c348ec6eedca2d5c75d23/node_modules/@nodelib/fs.walk/out/readers/sync.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var fsScandir = require_out2();
    var common3 = require_common3();
    var reader_1 = require_reader();
    var SyncReader = class extends reader_1.default {
      constructor() {
        super(...arguments);
        this._scandir = fsScandir.scandirSync;
        this._storage = [];
        this._queue = /* @__PURE__ */ new Set();
      }
      read() {
        this._pushToQueue(this._root, this._settings.basePath);
        this._handleQueue();
        return this._storage;
      }
      _pushToQueue(directory, base) {
        this._queue.add({ directory, base });
      }
      _handleQueue() {
        for (const item of this._queue.values()) {
          this._handleDirectory(item.directory, item.base);
        }
      }
      _handleDirectory(directory, base) {
        try {
          const entries = this._scandir(directory, this._settings.fsScandirSettings);
          for (const entry of entries) {
            this._handleEntry(entry, base);
          }
        } catch (error) {
          this._handleError(error);
        }
      }
      _handleError(error) {
        if (!common3.isFatalError(this._settings, error)) {
          return;
        }
        throw error;
      }
      _handleEntry(entry, base) {
        const fullpath = entry.path;
        if (base !== void 0) {
          entry.path = common3.joinPathSegments(base, entry.name, this._settings.pathSegmentSeparator);
        }
        if (common3.isAppliedFilter(this._settings.entryFilter, entry)) {
          this._pushToStorage(entry);
        }
        if (entry.dirent.isDirectory() && common3.isAppliedFilter(this._settings.deepFilter, entry)) {
          this._pushToQueue(fullpath, base === void 0 ? void 0 : entry.path);
        }
      }
      _pushToStorage(entry) {
        this._storage.push(entry);
      }
    };
    exports2.default = SyncReader;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.walk/1.2.8/b1d6c9ee0eed3cb108f73a2593634a23c7b72fdd7d0c348ec6eedca2d5c75d23/node_modules/@nodelib/fs.walk/out/providers/sync.js
var require_sync4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.walk/1.2.8/b1d6c9ee0eed3cb108f73a2593634a23c7b72fdd7d0c348ec6eedca2d5c75d23/node_modules/@nodelib/fs.walk/out/providers/sync.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var sync_1 = require_sync3();
    var SyncProvider = class {
      constructor(_root, _settings) {
        this._root = _root;
        this._settings = _settings;
        this._reader = new sync_1.default(this._root, this._settings);
      }
      read() {
        return this._reader.read();
      }
    };
    exports2.default = SyncProvider;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.walk/1.2.8/b1d6c9ee0eed3cb108f73a2593634a23c7b72fdd7d0c348ec6eedca2d5c75d23/node_modules/@nodelib/fs.walk/out/settings.js
var require_settings3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.walk/1.2.8/b1d6c9ee0eed3cb108f73a2593634a23c7b72fdd7d0c348ec6eedca2d5c75d23/node_modules/@nodelib/fs.walk/out/settings.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var path218 = __require("path");
    var fsScandir = require_out2();
    var Settings = class {
      constructor(_options = {}) {
        this._options = _options;
        this.basePath = this._getValue(this._options.basePath, void 0);
        this.concurrency = this._getValue(this._options.concurrency, Number.POSITIVE_INFINITY);
        this.deepFilter = this._getValue(this._options.deepFilter, null);
        this.entryFilter = this._getValue(this._options.entryFilter, null);
        this.errorFilter = this._getValue(this._options.errorFilter, null);
        this.pathSegmentSeparator = this._getValue(this._options.pathSegmentSeparator, path218.sep);
        this.fsScandirSettings = new fsScandir.Settings({
          followSymbolicLinks: this._options.followSymbolicLinks,
          fs: this._options.fs,
          pathSegmentSeparator: this._options.pathSegmentSeparator,
          stats: this._options.stats,
          throwErrorOnBrokenSymbolicLink: this._options.throwErrorOnBrokenSymbolicLink
        });
      }
      _getValue(option, value) {
        return option !== null && option !== void 0 ? option : value;
      }
    };
    exports2.default = Settings;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.walk/1.2.8/b1d6c9ee0eed3cb108f73a2593634a23c7b72fdd7d0c348ec6eedca2d5c75d23/node_modules/@nodelib/fs.walk/out/index.js
var require_out3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@nodelib/fs.walk/1.2.8/b1d6c9ee0eed3cb108f73a2593634a23c7b72fdd7d0c348ec6eedca2d5c75d23/node_modules/@nodelib/fs.walk/out/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.Settings = exports2.walkStream = exports2.walkSync = exports2.walk = void 0;
    var async_1 = require_async5();
    var stream_12 = require_stream2();
    var sync_1 = require_sync4();
    var settings_1 = require_settings3();
    exports2.Settings = settings_1.default;
    function walk(directory, optionsOrSettingsOrCallback, callback2) {
      if (typeof optionsOrSettingsOrCallback === "function") {
        new async_1.default(directory, getSettings()).read(optionsOrSettingsOrCallback);
        return;
      }
      new async_1.default(directory, getSettings(optionsOrSettingsOrCallback)).read(callback2);
    }
    exports2.walk = walk;
    function walkSync2(directory, optionsOrSettings) {
      const settings = getSettings(optionsOrSettings);
      const provider = new sync_1.default(directory, settings);
      return provider.read();
    }
    exports2.walkSync = walkSync2;
    function walkStream(directory, optionsOrSettings) {
      const settings = getSettings(optionsOrSettings);
      const provider = new stream_12.default(directory, settings);
      return provider.read();
    }
    exports2.walkStream = walkStream;
    function getSettings(settingsOrOptions = {}) {
      if (settingsOrOptions instanceof settings_1.default) {
        return settingsOrOptions;
      }
      return new settings_1.default(settingsOrOptions);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/readers/reader.js
var require_reader2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/readers/reader.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var path218 = __require("path");
    var fsStat = require_out();
    var utils = require_utils8();
    var Reader = class {
      constructor(_settings) {
        this._settings = _settings;
        this._fsStatSettings = new fsStat.Settings({
          followSymbolicLink: this._settings.followSymbolicLinks,
          fs: this._settings.fs,
          throwErrorOnBrokenSymbolicLink: this._settings.followSymbolicLinks
        });
      }
      _getFullEntryPath(filepath) {
        return path218.resolve(this._settings.cwd, filepath);
      }
      _makeEntry(stats, pattern) {
        const entry = {
          name: pattern,
          path: pattern,
          dirent: utils.fs.createDirentFromStats(pattern, stats)
        };
        if (this._settings.stats) {
          entry.stats = stats;
        }
        return entry;
      }
      _isFatalError(error) {
        return !utils.errno.isEnoentCodeError(error) && !this._settings.suppressErrors;
      }
    };
    exports2.default = Reader;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/readers/stream.js
var require_stream3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/readers/stream.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var stream_12 = __require("stream");
    var fsStat = require_out();
    var fsWalk = require_out3();
    var reader_1 = require_reader2();
    var ReaderStream = class extends reader_1.default {
      constructor() {
        super(...arguments);
        this._walkStream = fsWalk.walkStream;
        this._stat = fsStat.stat;
      }
      dynamic(root, options) {
        return this._walkStream(root, options);
      }
      static(patterns, options) {
        const filepaths = patterns.map(this._getFullEntryPath, this);
        const stream2 = new stream_12.PassThrough({ objectMode: true });
        stream2._write = (index, _enc, done) => {
          return this._getEntry(filepaths[index], patterns[index], options).then((entry) => {
            if (entry !== null && options.entryFilter(entry)) {
              stream2.push(entry);
            }
            if (index === filepaths.length - 1) {
              stream2.end();
            }
            done();
          }).catch(done);
        };
        for (let i2 = 0; i2 < filepaths.length; i2++) {
          stream2.write(i2);
        }
        return stream2;
      }
      _getEntry(filepath, pattern, options) {
        return this._getStat(filepath).then((stats) => this._makeEntry(stats, pattern)).catch((error) => {
          if (options.errorFilter(error)) {
            return null;
          }
          throw error;
        });
      }
      _getStat(filepath) {
        return new Promise((resolve3, reject3) => {
          this._stat(filepath, this._fsStatSettings, (error, stats) => {
            return error === null ? resolve3(stats) : reject3(error);
          });
        });
      }
    };
    exports2.default = ReaderStream;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/readers/async.js
var require_async6 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/readers/async.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var fsWalk = require_out3();
    var reader_1 = require_reader2();
    var stream_12 = require_stream3();
    var ReaderAsync = class extends reader_1.default {
      constructor() {
        super(...arguments);
        this._walkAsync = fsWalk.walk;
        this._readerStream = new stream_12.default(this._settings);
      }
      dynamic(root, options) {
        return new Promise((resolve3, reject3) => {
          this._walkAsync(root, options, (error, entries) => {
            if (error === null) {
              resolve3(entries);
            } else {
              reject3(error);
            }
          });
        });
      }
      async static(patterns, options) {
        const entries = [];
        const stream2 = this._readerStream.static(patterns, options);
        return new Promise((resolve3, reject3) => {
          stream2.once("error", reject3);
          stream2.on("data", (entry) => entries.push(entry));
          stream2.once("end", () => resolve3(entries));
        });
      }
    };
    exports2.default = ReaderAsync;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/providers/matchers/matcher.js
var require_matcher = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/providers/matchers/matcher.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var utils = require_utils8();
    var Matcher = class {
      constructor(_patterns, _settings, _micromatchOptions) {
        this._patterns = _patterns;
        this._settings = _settings;
        this._micromatchOptions = _micromatchOptions;
        this._storage = [];
        this._fillStorage();
      }
      _fillStorage() {
        for (const pattern of this._patterns) {
          const segments = this._getPatternSegments(pattern);
          const sections = this._splitSegmentsIntoSections(segments);
          this._storage.push({
            complete: sections.length <= 1,
            pattern,
            segments,
            sections
          });
        }
      }
      _getPatternSegments(pattern) {
        const parts = utils.pattern.getPatternParts(pattern, this._micromatchOptions);
        return parts.map((part) => {
          const dynamic = utils.pattern.isDynamicPattern(part, this._settings);
          if (!dynamic) {
            return {
              dynamic: false,
              pattern: part
            };
          }
          return {
            dynamic: true,
            pattern: part,
            patternRe: utils.pattern.makeRe(part, this._micromatchOptions)
          };
        });
      }
      _splitSegmentsIntoSections(segments) {
        return utils.array.splitWhen(segments, (segment) => segment.dynamic && utils.pattern.hasGlobStar(segment.pattern));
      }
    };
    exports2.default = Matcher;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/providers/matchers/partial.js
var require_partial = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/providers/matchers/partial.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var matcher_1 = require_matcher();
    var PartialMatcher = class extends matcher_1.default {
      match(filepath) {
        const parts = filepath.split("/");
        const levels = parts.length;
        const patterns = this._storage.filter((info) => !info.complete || info.segments.length > levels);
        for (const pattern of patterns) {
          const section = pattern.sections[0];
          if (!pattern.complete && levels > section.length) {
            return true;
          }
          const match = parts.every((part, index) => {
            const segment = pattern.segments[index];
            if (segment.dynamic && segment.patternRe.test(part)) {
              return true;
            }
            if (!segment.dynamic && segment.pattern === part) {
              return true;
            }
            return false;
          });
          if (match) {
            return true;
          }
        }
        return false;
      }
    };
    exports2.default = PartialMatcher;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/providers/filters/deep.js
var require_deep = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/providers/filters/deep.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var utils = require_utils8();
    var partial_1 = require_partial();
    var DeepFilter = class {
      constructor(_settings, _micromatchOptions) {
        this._settings = _settings;
        this._micromatchOptions = _micromatchOptions;
      }
      getFilter(basePath, positive, negative) {
        const matcher = this._getMatcher(positive);
        const negativeRe = this._getNegativePatternsRe(negative);
        return (entry) => this._filter(basePath, entry, matcher, negativeRe);
      }
      _getMatcher(patterns) {
        return new partial_1.default(patterns, this._settings, this._micromatchOptions);
      }
      _getNegativePatternsRe(patterns) {
        const affectDepthOfReadingPatterns = patterns.filter(utils.pattern.isAffectDepthOfReadingPattern);
        return utils.pattern.convertPatternsToRe(affectDepthOfReadingPatterns, this._micromatchOptions);
      }
      _filter(basePath, entry, matcher, negativeRe) {
        if (this._isSkippedByDeep(basePath, entry.path)) {
          return false;
        }
        if (this._isSkippedSymbolicLink(entry)) {
          return false;
        }
        const filepath = utils.path.removeLeadingDotSegment(entry.path);
        if (this._isSkippedByPositivePatterns(filepath, matcher)) {
          return false;
        }
        return this._isSkippedByNegativePatterns(filepath, negativeRe);
      }
      _isSkippedByDeep(basePath, entryPath) {
        if (this._settings.deep === Infinity) {
          return false;
        }
        return this._getEntryLevel(basePath, entryPath) >= this._settings.deep;
      }
      _getEntryLevel(basePath, entryPath) {
        const entryPathDepth = entryPath.split("/").length;
        if (basePath === "") {
          return entryPathDepth;
        }
        const basePathDepth = basePath.split("/").length;
        return entryPathDepth - basePathDepth;
      }
      _isSkippedSymbolicLink(entry) {
        return !this._settings.followSymbolicLinks && entry.dirent.isSymbolicLink();
      }
      _isSkippedByPositivePatterns(entryPath, matcher) {
        return !this._settings.baseNameMatch && !matcher.match(entryPath);
      }
      _isSkippedByNegativePatterns(entryPath, patternsRe) {
        return !utils.pattern.matchAny(entryPath, patternsRe);
      }
    };
    exports2.default = DeepFilter;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/providers/filters/entry.js
var require_entry2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/providers/filters/entry.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var utils = require_utils8();
    var EntryFilter = class {
      constructor(_settings, _micromatchOptions) {
        this._settings = _settings;
        this._micromatchOptions = _micromatchOptions;
        this.index = /* @__PURE__ */ new Map();
      }
      getFilter(positive, negative) {
        const [absoluteNegative, relativeNegative] = utils.pattern.partitionAbsoluteAndRelative(negative);
        const patterns = {
          positive: {
            all: utils.pattern.convertPatternsToRe(positive, this._micromatchOptions)
          },
          negative: {
            absolute: utils.pattern.convertPatternsToRe(absoluteNegative, Object.assign(Object.assign({}, this._micromatchOptions), { dot: true })),
            relative: utils.pattern.convertPatternsToRe(relativeNegative, Object.assign(Object.assign({}, this._micromatchOptions), { dot: true }))
          }
        };
        return (entry) => this._filter(entry, patterns);
      }
      _filter(entry, patterns) {
        const filepath = utils.path.removeLeadingDotSegment(entry.path);
        if (this._settings.unique && this._isDuplicateEntry(filepath)) {
          return false;
        }
        if (this._onlyFileFilter(entry) || this._onlyDirectoryFilter(entry)) {
          return false;
        }
        const isMatched = this._isMatchToPatternsSet(filepath, patterns, entry.dirent.isDirectory());
        if (this._settings.unique && isMatched) {
          this._createIndexRecord(filepath);
        }
        return isMatched;
      }
      _isDuplicateEntry(filepath) {
        return this.index.has(filepath);
      }
      _createIndexRecord(filepath) {
        this.index.set(filepath, void 0);
      }
      _onlyFileFilter(entry) {
        return this._settings.onlyFiles && !entry.dirent.isFile();
      }
      _onlyDirectoryFilter(entry) {
        return this._settings.onlyDirectories && !entry.dirent.isDirectory();
      }
      _isMatchToPatternsSet(filepath, patterns, isDirectory) {
        const isMatched = this._isMatchToPatterns(filepath, patterns.positive.all, isDirectory);
        if (!isMatched) {
          return false;
        }
        const isMatchedByRelativeNegative = this._isMatchToPatterns(filepath, patterns.negative.relative, isDirectory);
        if (isMatchedByRelativeNegative) {
          return false;
        }
        const isMatchedByAbsoluteNegative = this._isMatchToAbsoluteNegative(filepath, patterns.negative.absolute, isDirectory);
        if (isMatchedByAbsoluteNegative) {
          return false;
        }
        return true;
      }
      _isMatchToAbsoluteNegative(filepath, patternsRe, isDirectory) {
        if (patternsRe.length === 0) {
          return false;
        }
        const fullpath = utils.path.makeAbsolute(this._settings.cwd, filepath);
        return this._isMatchToPatterns(fullpath, patternsRe, isDirectory);
      }
      _isMatchToPatterns(filepath, patternsRe, isDirectory) {
        if (patternsRe.length === 0) {
          return false;
        }
        const isMatched = utils.pattern.matchAny(filepath, patternsRe);
        if (!isMatched && isDirectory) {
          return utils.pattern.matchAny(filepath + "/", patternsRe);
        }
        return isMatched;
      }
    };
    exports2.default = EntryFilter;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/providers/filters/error.js
var require_error = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/providers/filters/error.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var utils = require_utils8();
    var ErrorFilter = class {
      constructor(_settings) {
        this._settings = _settings;
      }
      getFilter() {
        return (error) => this._isNonFatalError(error);
      }
      _isNonFatalError(error) {
        return utils.errno.isEnoentCodeError(error) || this._settings.suppressErrors;
      }
    };
    exports2.default = ErrorFilter;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/providers/transformers/entry.js
var require_entry3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/providers/transformers/entry.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var utils = require_utils8();
    var EntryTransformer = class {
      constructor(_settings) {
        this._settings = _settings;
      }
      getTransformer() {
        return (entry) => this._transform(entry);
      }
      _transform(entry) {
        let filepath = entry.path;
        if (this._settings.absolute) {
          filepath = utils.path.makeAbsolute(this._settings.cwd, filepath);
          filepath = utils.path.unixify(filepath);
        }
        if (this._settings.markDirectories && entry.dirent.isDirectory()) {
          filepath += "/";
        }
        if (!this._settings.objectMode) {
          return filepath;
        }
        return Object.assign(Object.assign({}, entry), { path: filepath });
      }
    };
    exports2.default = EntryTransformer;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/providers/provider.js
var require_provider = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/providers/provider.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var path218 = __require("path");
    var deep_1 = require_deep();
    var entry_1 = require_entry2();
    var error_1 = require_error();
    var entry_2 = require_entry3();
    var Provider = class {
      constructor(_settings) {
        this._settings = _settings;
        this.errorFilter = new error_1.default(this._settings);
        this.entryFilter = new entry_1.default(this._settings, this._getMicromatchOptions());
        this.deepFilter = new deep_1.default(this._settings, this._getMicromatchOptions());
        this.entryTransformer = new entry_2.default(this._settings);
      }
      _getRootDirectory(task) {
        return path218.resolve(this._settings.cwd, task.base);
      }
      _getReaderOptions(task) {
        const basePath = task.base === "." ? "" : task.base;
        return {
          basePath,
          pathSegmentSeparator: "/",
          concurrency: this._settings.concurrency,
          deepFilter: this.deepFilter.getFilter(basePath, task.positive, task.negative),
          entryFilter: this.entryFilter.getFilter(task.positive, task.negative),
          errorFilter: this.errorFilter.getFilter(),
          followSymbolicLinks: this._settings.followSymbolicLinks,
          fs: this._settings.fs,
          stats: this._settings.stats,
          throwErrorOnBrokenSymbolicLink: this._settings.throwErrorOnBrokenSymbolicLink,
          transform: this.entryTransformer.getTransformer()
        };
      }
      _getMicromatchOptions() {
        return {
          dot: this._settings.dot,
          matchBase: this._settings.baseNameMatch,
          nobrace: !this._settings.braceExpansion,
          nocase: !this._settings.caseSensitiveMatch,
          noext: !this._settings.extglob,
          noglobstar: !this._settings.globstar,
          posix: true,
          strictSlashes: false
        };
      }
    };
    exports2.default = Provider;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/providers/async.js
var require_async7 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/providers/async.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var async_1 = require_async6();
    var provider_1 = require_provider();
    var ProviderAsync = class extends provider_1.default {
      constructor() {
        super(...arguments);
        this._reader = new async_1.default(this._settings);
      }
      async read(task) {
        const root = this._getRootDirectory(task);
        const options = this._getReaderOptions(task);
        const entries = await this.api(root, task, options);
        return entries.map((entry) => options.transform(entry));
      }
      api(root, task, options) {
        if (task.dynamic) {
          return this._reader.dynamic(root, options);
        }
        return this._reader.static(task.patterns, options);
      }
    };
    exports2.default = ProviderAsync;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/providers/stream.js
var require_stream4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/providers/stream.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var stream_12 = __require("stream");
    var stream_2 = require_stream3();
    var provider_1 = require_provider();
    var ProviderStream = class extends provider_1.default {
      constructor() {
        super(...arguments);
        this._reader = new stream_2.default(this._settings);
      }
      read(task) {
        const root = this._getRootDirectory(task);
        const options = this._getReaderOptions(task);
        const source = this.api(root, task, options);
        const destination = new stream_12.Readable({ objectMode: true, read: () => {
        } });
        source.once("error", (error) => destination.emit("error", error)).on("data", (entry) => destination.emit("data", options.transform(entry))).once("end", () => destination.emit("end"));
        destination.once("close", () => source.destroy());
        return destination;
      }
      api(root, task, options) {
        if (task.dynamic) {
          return this._reader.dynamic(root, options);
        }
        return this._reader.static(task.patterns, options);
      }
    };
    exports2.default = ProviderStream;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/readers/sync.js
var require_sync5 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/readers/sync.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var fsStat = require_out();
    var fsWalk = require_out3();
    var reader_1 = require_reader2();
    var ReaderSync = class extends reader_1.default {
      constructor() {
        super(...arguments);
        this._walkSync = fsWalk.walkSync;
        this._statSync = fsStat.statSync;
      }
      dynamic(root, options) {
        return this._walkSync(root, options);
      }
      static(patterns, options) {
        const entries = [];
        for (const pattern of patterns) {
          const filepath = this._getFullEntryPath(pattern);
          const entry = this._getEntry(filepath, pattern, options);
          if (entry === null || !options.entryFilter(entry)) {
            continue;
          }
          entries.push(entry);
        }
        return entries;
      }
      _getEntry(filepath, pattern, options) {
        try {
          const stats = this._getStat(filepath);
          return this._makeEntry(stats, pattern);
        } catch (error) {
          if (options.errorFilter(error)) {
            return null;
          }
          throw error;
        }
      }
      _getStat(filepath) {
        return this._statSync(filepath, this._fsStatSettings);
      }
    };
    exports2.default = ReaderSync;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/providers/sync.js
var require_sync6 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/providers/sync.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var sync_1 = require_sync5();
    var provider_1 = require_provider();
    var ProviderSync = class extends provider_1.default {
      constructor() {
        super(...arguments);
        this._reader = new sync_1.default(this._settings);
      }
      read(task) {
        const root = this._getRootDirectory(task);
        const options = this._getReaderOptions(task);
        const entries = this.api(root, task, options);
        return entries.map(options.transform);
      }
      api(root, task, options) {
        if (task.dynamic) {
          return this._reader.dynamic(root, options);
        }
        return this._reader.static(task.patterns, options);
      }
    };
    exports2.default = ProviderSync;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/settings.js
var require_settings4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/settings.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.DEFAULT_FILE_SYSTEM_ADAPTER = void 0;
    var fs111 = __require("fs");
    var os15 = __require("os");
    var CPU_COUNT = Math.max(os15.cpus().length, 1);
    exports2.DEFAULT_FILE_SYSTEM_ADAPTER = {
      lstat: fs111.lstat,
      lstatSync: fs111.lstatSync,
      stat: fs111.stat,
      statSync: fs111.statSync,
      readdir: fs111.readdir,
      readdirSync: fs111.readdirSync
    };
    var Settings = class {
      constructor(_options = {}) {
        this._options = _options;
        this.absolute = this._getValue(this._options.absolute, false);
        this.baseNameMatch = this._getValue(this._options.baseNameMatch, false);
        this.braceExpansion = this._getValue(this._options.braceExpansion, true);
        this.caseSensitiveMatch = this._getValue(this._options.caseSensitiveMatch, true);
        this.concurrency = this._getValue(this._options.concurrency, CPU_COUNT);
        this.cwd = this._getValue(this._options.cwd, process.cwd());
        this.deep = this._getValue(this._options.deep, Infinity);
        this.dot = this._getValue(this._options.dot, false);
        this.extglob = this._getValue(this._options.extglob, true);
        this.followSymbolicLinks = this._getValue(this._options.followSymbolicLinks, true);
        this.fs = this._getFileSystemMethods(this._options.fs);
        this.globstar = this._getValue(this._options.globstar, true);
        this.ignore = this._getValue(this._options.ignore, []);
        this.markDirectories = this._getValue(this._options.markDirectories, false);
        this.objectMode = this._getValue(this._options.objectMode, false);
        this.onlyDirectories = this._getValue(this._options.onlyDirectories, false);
        this.onlyFiles = this._getValue(this._options.onlyFiles, true);
        this.stats = this._getValue(this._options.stats, false);
        this.suppressErrors = this._getValue(this._options.suppressErrors, false);
        this.throwErrorOnBrokenSymbolicLink = this._getValue(this._options.throwErrorOnBrokenSymbolicLink, false);
        this.unique = this._getValue(this._options.unique, true);
        if (this.onlyDirectories) {
          this.onlyFiles = false;
        }
        if (this.stats) {
          this.objectMode = true;
        }
        this.ignore = [].concat(this.ignore);
      }
      _getValue(option, value) {
        return option === void 0 ? value : option;
      }
      _getFileSystemMethods(methods = {}) {
        return Object.assign(Object.assign({}, exports2.DEFAULT_FILE_SYSTEM_ADAPTER), methods);
      }
    };
    exports2.default = Settings;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/index.js
var require_out4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fast-glob/3.3.3/7bbd1b783b00572e63a4e2dde3f7c12481cea32e4ffd96728b8dcfb8c83bd443/node_modules/fast-glob/out/index.js"(exports2, module2) {
    "use strict";
    var taskManager = require_tasks();
    var async_1 = require_async7();
    var stream_12 = require_stream4();
    var sync_1 = require_sync6();
    var settings_1 = require_settings4();
    var utils = require_utils8();
    async function FastGlob(source, options) {
      assertPatternsInput(source);
      const works = getWorks(source, async_1.default, options);
      const result2 = await Promise.all(works);
      return utils.array.flatten(result2);
    }
    (function(FastGlob2) {
      FastGlob2.glob = FastGlob2;
      FastGlob2.globSync = sync3;
      FastGlob2.globStream = stream2;
      FastGlob2.async = FastGlob2;
      function sync3(source, options) {
        assertPatternsInput(source);
        const works = getWorks(source, sync_1.default, options);
        return utils.array.flatten(works);
      }
      FastGlob2.sync = sync3;
      function stream2(source, options) {
        assertPatternsInput(source);
        const works = getWorks(source, stream_12.default, options);
        return utils.stream.merge(works);
      }
      FastGlob2.stream = stream2;
      function generateTasks(source, options) {
        assertPatternsInput(source);
        const patterns = [].concat(source);
        const settings = new settings_1.default(options);
        return taskManager.generate(patterns, settings);
      }
      FastGlob2.generateTasks = generateTasks;
      function isDynamicPattern2(source, options) {
        assertPatternsInput(source);
        const settings = new settings_1.default(options);
        return utils.pattern.isDynamicPattern(source, settings);
      }
      FastGlob2.isDynamicPattern = isDynamicPattern2;
      function escapePath2(source) {
        assertPatternsInput(source);
        return utils.path.escape(source);
      }
      FastGlob2.escapePath = escapePath2;
      function convertPathToPattern(source) {
        assertPatternsInput(source);
        return utils.path.convertPathToPattern(source);
      }
      FastGlob2.convertPathToPattern = convertPathToPattern;
      let posix2;
      (function(posix3) {
        function escapePath3(source) {
          assertPatternsInput(source);
          return utils.path.escapePosixPath(source);
        }
        posix3.escapePath = escapePath3;
        function convertPathToPattern2(source) {
          assertPatternsInput(source);
          return utils.path.convertPosixPathToPattern(source);
        }
        posix3.convertPathToPattern = convertPathToPattern2;
      })(posix2 = FastGlob2.posix || (FastGlob2.posix = {}));
      let win32;
      (function(win322) {
        function escapePath3(source) {
          assertPatternsInput(source);
          return utils.path.escapeWindowsPath(source);
        }
        win322.escapePath = escapePath3;
        function convertPathToPattern2(source) {
          assertPatternsInput(source);
          return utils.path.convertWindowsPathToPattern(source);
        }
        win322.convertPathToPattern = convertPathToPattern2;
      })(win32 = FastGlob2.win32 || (FastGlob2.win32 = {}));
    })(FastGlob || (FastGlob = {}));
    function getWorks(source, _Provider, options) {
      const patterns = [].concat(source);
      const settings = new settings_1.default(options);
      const tasks = taskManager.generate(patterns, settings);
      const provider = new _Provider(settings);
      return tasks.map(provider.read, provider);
    }
    function assertPatternsInput(input) {
      const source = [].concat(input);
      const isValidSource = source.every((item) => utils.string.isString(item) && !utils.string.isEmpty(item));
      if (!isValidSource) {
        throw new TypeError("Patterns must be a string (non empty) or an array of strings");
      }
    }
    module2.exports = FastGlob;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/shell/4.0.0/09dfbba210b1162ff6f42d70ace0e56c803b057edcd4987f4958bd663dd8d7aa/node_modules/@yarnpkg/shell/lib/globUtils.js
var require_globUtils = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/shell/4.0.0/09dfbba210b1162ff6f42d70ace0e56c803b057edcd4987f4958bd663dd8d7aa/node_modules/@yarnpkg/shell/lib/globUtils.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.isBraceExpansion = exports2.match = exports2.isGlobPattern = exports2.fastGlobOptions = exports2.micromatchOptions = void 0;
    var tslib_12 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
    var fslib_12 = require_lib12();
    var fast_glob_1 = tslib_12.__importDefault(require_out4());
    var fs_1 = tslib_12.__importDefault(__require("fs"));
    var micromatch_12 = tslib_12.__importDefault(require_micromatch());
    exports2.micromatchOptions = {
      // This is required because we don't want ")/*" to be a valid shell glob pattern.
      strictBrackets: true
    };
    exports2.fastGlobOptions = {
      onlyDirectories: false,
      onlyFiles: false
    };
    function isGlobPattern(pattern) {
      if (!micromatch_12.default.scan(pattern, exports2.micromatchOptions).isGlob)
        return false;
      try {
        micromatch_12.default.parse(pattern, exports2.micromatchOptions);
      } catch {
        return false;
      }
      return true;
    }
    exports2.isGlobPattern = isGlobPattern;
    function match(pattern, { cwd, baseFs }) {
      return (0, fast_glob_1.default)(pattern, {
        ...exports2.fastGlobOptions,
        cwd: fslib_12.npath.fromPortablePath(cwd),
        fs: (0, fslib_12.extendFs)(fs_1.default, new fslib_12.PosixFS(baseFs))
      });
    }
    exports2.match = match;
    function isBraceExpansion(pattern) {
      return micromatch_12.default.scan(pattern, exports2.micromatchOptions).isBrace;
    }
    exports2.isBraceExpansion = isBraceExpansion;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/shell/4.0.0/09dfbba210b1162ff6f42d70ace0e56c803b057edcd4987f4958bd663dd8d7aa/node_modules/@yarnpkg/shell/lib/pipe.js
var require_pipe = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/shell/4.0.0/09dfbba210b1162ff6f42d70ace0e56c803b057edcd4987f4958bd663dd8d7aa/node_modules/@yarnpkg/shell/lib/pipe.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.createOutputStreamsWithPrefix = exports2.start = exports2.Handle = exports2.ProtectedStream = exports2.makeBuiltin = exports2.makeProcess = exports2.Pipe = void 0;
    var tslib_12 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
    var cross_spawn_1 = tslib_12.__importDefault(require_cross_spawn());
    var stream_12 = __require("stream");
    var string_decoder_1 = __require("string_decoder");
    var Pipe;
    (function(Pipe2) {
      Pipe2[Pipe2["STDIN"] = 0] = "STDIN";
      Pipe2[Pipe2["STDOUT"] = 1] = "STDOUT";
      Pipe2[Pipe2["STDERR"] = 2] = "STDERR";
    })(Pipe || (exports2.Pipe = Pipe = {}));
    var activeChildren = /* @__PURE__ */ new Set();
    function sigintHandler() {
    }
    function sigtermHandler() {
      for (const child of activeChildren) {
        child.kill();
      }
    }
    function makeProcess(name, args, opts2, spawnOpts) {
      return (stdio) => {
        const stdin = stdio[0] instanceof stream_12.Transform ? `pipe` : stdio[0];
        const stdout = stdio[1] instanceof stream_12.Transform ? `pipe` : stdio[1];
        const stderr = stdio[2] instanceof stream_12.Transform ? `pipe` : stdio[2];
        const child = (0, cross_spawn_1.default)(name, args, { ...spawnOpts, stdio: [
          stdin,
          stdout,
          stderr
        ] });
        activeChildren.add(child);
        if (activeChildren.size === 1) {
          process.on(`SIGINT`, sigintHandler);
          process.on(`SIGTERM`, sigtermHandler);
        }
        if (stdio[0] instanceof stream_12.Transform)
          stdio[0].pipe(child.stdin);
        if (stdio[1] instanceof stream_12.Transform)
          child.stdout.pipe(stdio[1], { end: false });
        if (stdio[2] instanceof stream_12.Transform)
          child.stderr.pipe(stdio[2], { end: false });
        return {
          stdin: child.stdin,
          promise: new Promise((resolve3) => {
            child.on(`error`, (error) => {
              activeChildren.delete(child);
              if (activeChildren.size === 0) {
                process.off(`SIGINT`, sigintHandler);
                process.off(`SIGTERM`, sigtermHandler);
              }
              switch (error.code) {
                case `ENOENT`:
                  {
                    stdio[2].write(`command not found: ${name}
`);
                    resolve3(127);
                  }
                  break;
                case `EACCES`:
                  {
                    stdio[2].write(`permission denied: ${name}
`);
                    resolve3(128);
                  }
                  break;
                default:
                  {
                    stdio[2].write(`uncaught error: ${error.message}
`);
                    resolve3(1);
                  }
                  break;
              }
            });
            child.on(`close`, (code) => {
              activeChildren.delete(child);
              if (activeChildren.size === 0) {
                process.off(`SIGINT`, sigintHandler);
                process.off(`SIGTERM`, sigtermHandler);
              }
              if (code !== null) {
                resolve3(code);
              } else {
                resolve3(129);
              }
            });
          })
        };
      };
    }
    exports2.makeProcess = makeProcess;
    function makeBuiltin(builtin) {
      return (stdio) => {
        const stdin = stdio[0] === `pipe` ? new stream_12.PassThrough() : stdio[0];
        return {
          stdin,
          promise: Promise.resolve().then(() => builtin({
            stdin,
            stdout: stdio[1],
            stderr: stdio[2]
          }))
        };
      };
    }
    exports2.makeBuiltin = makeBuiltin;
    var ProtectedStream = class {
      constructor(stream2) {
        this.stream = stream2;
      }
      close() {
      }
      get() {
        return this.stream;
      }
    };
    exports2.ProtectedStream = ProtectedStream;
    var PipeStream = class {
      constructor() {
        this.stream = null;
      }
      close() {
        if (this.stream === null) {
          throw new Error(`Assertion failed: No stream attached`);
        } else {
          this.stream.end();
        }
      }
      attach(stream2) {
        this.stream = stream2;
      }
      get() {
        if (this.stream === null) {
          throw new Error(`Assertion failed: No stream attached`);
        } else {
          return this.stream;
        }
      }
    };
    var Handle = class _Handle {
      static start(implementation, { stdin, stdout, stderr }) {
        const chain3 = new _Handle(null, implementation);
        chain3.stdin = stdin;
        chain3.stdout = stdout;
        chain3.stderr = stderr;
        return chain3;
      }
      constructor(ancestor, implementation) {
        this.stdin = null;
        this.stdout = null;
        this.stderr = null;
        this.pipe = null;
        this.ancestor = ancestor;
        this.implementation = implementation;
      }
      pipeTo(implementation, source = Pipe.STDOUT) {
        const next2 = new _Handle(this, implementation);
        const pipe2 = new PipeStream();
        next2.pipe = pipe2;
        next2.stdout = this.stdout;
        next2.stderr = this.stderr;
        if ((source & Pipe.STDOUT) === Pipe.STDOUT)
          this.stdout = pipe2;
        else if (this.ancestor !== null)
          this.stderr = this.ancestor.stdout;
        if ((source & Pipe.STDERR) === Pipe.STDERR)
          this.stderr = pipe2;
        else if (this.ancestor !== null)
          this.stderr = this.ancestor.stderr;
        return next2;
      }
      async exec() {
        const stdio = [
          `ignore`,
          `ignore`,
          `ignore`
        ];
        if (this.pipe) {
          stdio[0] = `pipe`;
        } else {
          if (this.stdin === null) {
            throw new Error(`Assertion failed: No input stream registered`);
          } else {
            stdio[0] = this.stdin.get();
          }
        }
        let stdoutLock;
        if (this.stdout === null) {
          throw new Error(`Assertion failed: No output stream registered`);
        } else {
          stdoutLock = this.stdout;
          stdio[1] = stdoutLock.get();
        }
        let stderrLock;
        if (this.stderr === null) {
          throw new Error(`Assertion failed: No error stream registered`);
        } else {
          stderrLock = this.stderr;
          stdio[2] = stderrLock.get();
        }
        const child = this.implementation(stdio);
        if (this.pipe)
          this.pipe.attach(child.stdin);
        return await child.promise.then((code) => {
          stdoutLock.close();
          stderrLock.close();
          return code;
        });
      }
      async run() {
        const promises = [];
        for (let handle = this; handle; handle = handle.ancestor)
          promises.push(handle.exec());
        const exitCodes = await Promise.all(promises);
        return exitCodes[0];
      }
    };
    exports2.Handle = Handle;
    function start(p, opts2) {
      return Handle.start(p, opts2);
    }
    exports2.start = start;
    function createStreamReporter(reportFn, prefix = null) {
      const stream2 = new stream_12.PassThrough();
      const decoder2 = new string_decoder_1.StringDecoder();
      let buffer3 = ``;
      stream2.on(`data`, (chunk) => {
        let chunkStr = decoder2.write(chunk);
        let lineIndex;
        do {
          lineIndex = chunkStr.indexOf(`
`);
          if (lineIndex !== -1) {
            const line = buffer3 + chunkStr.substring(0, lineIndex);
            chunkStr = chunkStr.substring(lineIndex + 1);
            buffer3 = ``;
            if (prefix !== null) {
              reportFn(`${prefix} ${line}`);
            } else {
              reportFn(line);
            }
          }
        } while (lineIndex !== -1);
        buffer3 += chunkStr;
      });
      stream2.on(`end`, () => {
        const last = decoder2.end();
        if (last !== ``) {
          if (prefix !== null) {
            reportFn(`${prefix} ${last}`);
          } else {
            reportFn(last);
          }
        }
      });
      return stream2;
    }
    function createOutputStreamsWithPrefix(state, { prefix }) {
      return {
        stdout: createStreamReporter((text) => state.stdout.write(`${text}
`), state.stdout.isTTY ? prefix : null),
        stderr: createStreamReporter((text) => state.stderr.write(`${text}
`), state.stderr.isTTY ? prefix : null)
      };
    }
    exports2.createOutputStreamsWithPrefix = createOutputStreamsWithPrefix;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/shell/4.0.0/09dfbba210b1162ff6f42d70ace0e56c803b057edcd4987f4958bd663dd8d7aa/node_modules/@yarnpkg/shell/lib/index.js
var require_lib15 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/shell/4.0.0/09dfbba210b1162ff6f42d70ace0e56c803b057edcd4987f4958bd663dd8d7aa/node_modules/@yarnpkg/shell/lib/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.execute = exports2.globUtils = exports2.ShellError = exports2.EntryCommand = void 0;
    var tslib_12 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
    var fslib_12 = require_lib12();
    var parsers_1 = require_lib13();
    var chalk_1 = tslib_12.__importDefault(require_source());
    var os_1 = __require("os");
    var stream_12 = __require("stream");
    var promises_1 = __require("timers/promises");
    var entry_1 = tslib_12.__importDefault(require_entry());
    exports2.EntryCommand = entry_1.default;
    var errors_1 = require_errors4();
    Object.defineProperty(exports2, "ShellError", { enumerable: true, get: function() {
      return errors_1.ShellError;
    } });
    var globUtils = tslib_12.__importStar(require_globUtils());
    exports2.globUtils = globUtils;
    var pipe_1 = require_pipe();
    var pipe_2 = require_pipe();
    var StreamType;
    (function(StreamType2) {
      StreamType2[StreamType2["Readable"] = 1] = "Readable";
      StreamType2[StreamType2["Writable"] = 2] = "Writable";
    })(StreamType || (StreamType = {}));
    function getFileDescriptorStream(fd, type4, state) {
      const stream2 = new stream_12.PassThrough({ autoDestroy: true });
      switch (fd) {
        case pipe_2.Pipe.STDIN:
          {
            if ((type4 & StreamType.Readable) === StreamType.Readable)
              state.stdin.pipe(stream2, { end: false });
            if ((type4 & StreamType.Writable) === StreamType.Writable && state.stdin instanceof stream_12.Writable) {
              stream2.pipe(state.stdin, { end: false });
            }
          }
          break;
        case pipe_2.Pipe.STDOUT:
          {
            if ((type4 & StreamType.Readable) === StreamType.Readable)
              state.stdout.pipe(stream2, { end: false });
            if ((type4 & StreamType.Writable) === StreamType.Writable) {
              stream2.pipe(state.stdout, { end: false });
            }
          }
          break;
        case pipe_2.Pipe.STDERR:
          {
            if ((type4 & StreamType.Readable) === StreamType.Readable)
              state.stderr.pipe(stream2, { end: false });
            if ((type4 & StreamType.Writable) === StreamType.Writable) {
              stream2.pipe(state.stderr, { end: false });
            }
          }
          break;
        default: {
          throw new errors_1.ShellError(`Bad file descriptor: "${fd}"`);
        }
      }
      return stream2;
    }
    function cloneState(state, mergeWith = {}) {
      const newState = { ...state, ...mergeWith };
      newState.environment = { ...state.environment, ...mergeWith.environment };
      newState.variables = { ...state.variables, ...mergeWith.variables };
      return newState;
    }
    var BUILTINS = /* @__PURE__ */ new Map([
      [`cd`, async ([target2 = (0, os_1.homedir)(), ...rest], opts2, state) => {
        const resolvedTarget = fslib_12.ppath.resolve(state.cwd, fslib_12.npath.toPortablePath(target2));
        const stat2 = await opts2.baseFs.statPromise(resolvedTarget).catch((error) => {
          throw error.code === `ENOENT` ? new errors_1.ShellError(`cd: no such file or directory: ${target2}`) : error;
        });
        if (!stat2.isDirectory())
          throw new errors_1.ShellError(`cd: not a directory: ${target2}`);
        state.cwd = resolvedTarget;
        return 0;
      }],
      [`pwd`, async (args, opts2, state) => {
        state.stdout.write(`${fslib_12.npath.fromPortablePath(state.cwd)}
`);
        return 0;
      }],
      [`:`, async (args, opts2, state) => {
        return 0;
      }],
      [`true`, async (args, opts2, state) => {
        return 0;
      }],
      [`false`, async (args, opts2, state) => {
        return 1;
      }],
      [`exit`, async ([code, ...rest], opts2, state) => {
        return state.exitCode = parseInt(code ?? state.variables[`?`], 10);
      }],
      [`echo`, async (args, opts2, state) => {
        state.stdout.write(`${args.join(` `)}
`);
        return 0;
      }],
      [`sleep`, async ([time], opts2, state) => {
        if (typeof time === `undefined`)
          throw new errors_1.ShellError(`sleep: missing operand`);
        const seconds = Number(time);
        if (Number.isNaN(seconds))
          throw new errors_1.ShellError(`sleep: invalid time interval '${time}'`);
        return await (0, promises_1.setTimeout)(1e3 * seconds, 0);
      }],
      [`__ysh_run_procedure`, async (args, opts2, state) => {
        const procedure = state.procedures[args[0]];
        const exitCode = await (0, pipe_2.start)(procedure, {
          stdin: new pipe_2.ProtectedStream(state.stdin),
          stdout: new pipe_2.ProtectedStream(state.stdout),
          stderr: new pipe_2.ProtectedStream(state.stderr)
        }).run();
        return exitCode;
      }],
      [`__ysh_set_redirects`, async (args, opts2, state) => {
        let stdin = state.stdin;
        let stdout = state.stdout;
        let stderr = state.stderr;
        const inputs = [];
        const outputs = [];
        const errors2 = [];
        let t2 = 0;
        while (args[t2] !== `--`) {
          const key = args[t2++];
          const { type: type4, fd } = JSON.parse(key);
          const pushInput = (readableFactory) => {
            switch (fd) {
              case null:
              case 0:
                {
                  inputs.push(readableFactory);
                }
                break;
              default:
                throw new Error(`Unsupported file descriptor: "${fd}"`);
            }
          };
          const pushOutput = (writable2) => {
            switch (fd) {
              case null:
              case 1:
                {
                  outputs.push(writable2);
                }
                break;
              case 2:
                {
                  errors2.push(writable2);
                }
                break;
              default:
                throw new Error(`Unsupported file descriptor: "${fd}"`);
            }
          };
          const count2 = Number(args[t2++]);
          const last = t2 + count2;
          for (let u4 = t2; u4 < last; ++t2, ++u4) {
            switch (type4) {
              case `<`:
                {
                  pushInput(() => {
                    return opts2.baseFs.createReadStream(fslib_12.ppath.resolve(state.cwd, fslib_12.npath.toPortablePath(args[u4])));
                  });
                }
                break;
              case `<<<`:
                {
                  pushInput(() => {
                    const input = new stream_12.PassThrough();
                    process.nextTick(() => {
                      input.write(`${args[u4]}
`);
                      input.end();
                    });
                    return input;
                  });
                }
                break;
              case `<&`:
                {
                  pushInput(() => getFileDescriptorStream(Number(args[u4]), StreamType.Readable, state));
                }
                break;
              case `>`:
              case `>>`:
                {
                  const outputPath = fslib_12.ppath.resolve(state.cwd, fslib_12.npath.toPortablePath(args[u4]));
                  if (outputPath === `/dev/null`) {
                    pushOutput(new stream_12.Writable({
                      autoDestroy: true,
                      emitClose: true,
                      write(chunk, encoding, callback2) {
                        setImmediate(callback2);
                      }
                    }));
                  } else {
                    pushOutput(opts2.baseFs.createWriteStream(outputPath, type4 === `>>` ? { flags: `a` } : void 0));
                  }
                }
                break;
              case `>&`:
                {
                  pushOutput(getFileDescriptorStream(Number(args[u4]), StreamType.Writable, state));
                }
                break;
              default: {
                throw new Error(`Assertion failed: Unsupported redirection type: "${type4}"`);
              }
            }
          }
        }
        if (inputs.length > 0) {
          const pipe2 = new stream_12.PassThrough();
          stdin = pipe2;
          const bindInput = (n2) => {
            if (n2 === inputs.length) {
              pipe2.end();
            } else {
              const input = inputs[n2]();
              input.pipe(pipe2, { end: false });
              input.on(`end`, () => {
                bindInput(n2 + 1);
              });
            }
          };
          bindInput(0);
        }
        if (outputs.length > 0) {
          const pipe2 = new stream_12.PassThrough();
          stdout = pipe2;
          for (const output of outputs) {
            pipe2.pipe(output);
          }
        }
        if (errors2.length > 0) {
          const pipe2 = new stream_12.PassThrough();
          stderr = pipe2;
          for (const error of errors2) {
            pipe2.pipe(error);
          }
        }
        const exitCode = await (0, pipe_2.start)(makeCommandAction(args.slice(t2 + 1), opts2, state), {
          stdin: new pipe_2.ProtectedStream(stdin),
          stdout: new pipe_2.ProtectedStream(stdout),
          stderr: new pipe_2.ProtectedStream(stderr)
        }).run();
        await Promise.all(outputs.map((output) => {
          return new Promise((resolve3, reject3) => {
            output.on(`error`, (error) => {
              reject3(error);
            });
            output.on(`close`, () => {
              resolve3();
            });
            output.end();
          });
        }));
        await Promise.all(errors2.map((err) => {
          return new Promise((resolve3, reject3) => {
            err.on(`error`, (error) => {
              reject3(error);
            });
            err.on(`close`, () => {
              resolve3();
            });
            err.end();
          });
        }));
        return exitCode;
      }]
    ]);
    async function executeBufferedSubshell(ast, opts2, state) {
      const chunks = [];
      const stdout = new stream_12.PassThrough();
      stdout.on(`data`, (chunk) => chunks.push(chunk));
      await executeShellLine(ast, opts2, cloneState(state, { stdout }));
      return Buffer.concat(chunks).toString().replace(/[\r\n]+$/, ``);
    }
    async function applyEnvVariables(environmentSegments, opts2, state) {
      const envPromises = environmentSegments.map(async (envSegment) => {
        const interpolatedArgs = await interpolateArguments(envSegment.args, opts2, state);
        return {
          name: envSegment.name,
          value: interpolatedArgs.join(` `)
        };
      });
      const interpolatedEnvs = await Promise.all(envPromises);
      return interpolatedEnvs.reduce((envs, env3) => {
        envs[env3.name] = env3.value;
        return envs;
      }, {});
    }
    function split2(raw) {
      return raw.match(/[^ \r\n\t]+/g) || [];
    }
    async function evaluateVariable(segment, opts2, state, push, pushAndClose = push) {
      switch (segment.name) {
        case `$`:
          {
            push(String(process.pid));
          }
          break;
        case `#`:
          {
            push(String(opts2.args.length));
          }
          break;
        case `@`:
          {
            if (segment.quoted) {
              for (const raw of opts2.args) {
                pushAndClose(raw);
              }
            } else {
              for (const raw of opts2.args) {
                const parts = split2(raw);
                for (let t2 = 0; t2 < parts.length - 1; ++t2)
                  pushAndClose(parts[t2]);
                push(parts[parts.length - 1]);
              }
            }
          }
          break;
        case `*`:
          {
            const raw = opts2.args.join(` `);
            if (segment.quoted) {
              push(raw);
            } else {
              for (const part of split2(raw)) {
                pushAndClose(part);
              }
            }
          }
          break;
        case `PPID`:
          {
            push(String(process.ppid));
          }
          break;
        case `RANDOM`:
          {
            push(String(Math.floor(Math.random() * 32768)));
          }
          break;
        default:
          {
            const argIndex = parseInt(segment.name, 10);
            let raw;
            const isArgument = Number.isFinite(argIndex);
            if (isArgument) {
              if (argIndex >= 0 && argIndex < opts2.args.length) {
                raw = opts2.args[argIndex];
              }
            } else {
              if (Object.hasOwn(state.variables, segment.name)) {
                raw = state.variables[segment.name];
              } else if (Object.hasOwn(state.environment, segment.name)) {
                raw = state.environment[segment.name];
              }
            }
            if (typeof raw !== `undefined` && segment.alternativeValue) {
              raw = (await interpolateArguments(segment.alternativeValue, opts2, state)).join(` `);
            } else if (typeof raw === `undefined`) {
              if (segment.defaultValue) {
                raw = (await interpolateArguments(segment.defaultValue, opts2, state)).join(` `);
              } else if (segment.alternativeValue) {
                raw = ``;
              }
            }
            if (typeof raw === `undefined`) {
              if (isArgument)
                throw new errors_1.ShellError(`Unbound argument #${argIndex}`);
              throw new errors_1.ShellError(`Unbound variable "${segment.name}"`);
            }
            if (segment.quoted) {
              push(raw);
            } else {
              const parts = split2(raw);
              for (let t2 = 0; t2 < parts.length - 1; ++t2)
                pushAndClose(parts[t2]);
              const part = parts[parts.length - 1];
              if (typeof part !== `undefined`) {
                push(part);
              }
            }
          }
          break;
      }
    }
    var operators = {
      addition: (left, right) => left + right,
      subtraction: (left, right) => left - right,
      multiplication: (left, right) => left * right,
      division: (left, right) => Math.trunc(left / right)
    };
    async function evaluateArithmetic(arithmetic, opts2, state) {
      if (arithmetic.type === `number`) {
        if (!Number.isInteger(arithmetic.value)) {
          throw new Error(`Invalid number: "${arithmetic.value}", only integers are allowed`);
        } else {
          return arithmetic.value;
        }
      } else if (arithmetic.type === `variable`) {
        const parts = [];
        await evaluateVariable({ ...arithmetic, quoted: true }, opts2, state, (result2) => parts.push(result2));
        const number = Number(parts.join(` `));
        if (Number.isNaN(number)) {
          return evaluateArithmetic({ type: `variable`, name: parts.join(` `) }, opts2, state);
        } else {
          return evaluateArithmetic({ type: `number`, value: number }, opts2, state);
        }
      } else {
        return operators[arithmetic.type](await evaluateArithmetic(arithmetic.left, opts2, state), await evaluateArithmetic(arithmetic.right, opts2, state));
      }
    }
    async function interpolateArguments(commandArgs, opts2, state) {
      const redirections = /* @__PURE__ */ new Map();
      const interpolated = [];
      let interpolatedSegments = [];
      const push = (segment) => {
        interpolatedSegments.push(segment);
      };
      const close = () => {
        if (interpolatedSegments.length > 0)
          interpolated.push(interpolatedSegments.join(``));
        interpolatedSegments = [];
      };
      const pushAndClose = (segment) => {
        push(segment);
        close();
      };
      const redirect = (type4, fd, target2) => {
        const key = JSON.stringify({ type: type4, fd });
        let targets = redirections.get(key);
        if (typeof targets === `undefined`)
          redirections.set(key, targets = []);
        targets.push(target2);
      };
      for (const commandArg of commandArgs) {
        let isGlob = false;
        switch (commandArg.type) {
          case `redirection`:
            {
              const interpolatedArgs = await interpolateArguments(commandArg.args, opts2, state);
              for (const interpolatedArg of interpolatedArgs) {
                redirect(commandArg.subtype, commandArg.fd, interpolatedArg);
              }
            }
            break;
          case `argument`:
            {
              for (const segment of commandArg.segments) {
                switch (segment.type) {
                  case `text`:
                    {
                      push(segment.text);
                    }
                    break;
                  case `glob`:
                    {
                      push(segment.pattern);
                      isGlob = true;
                    }
                    break;
                  case `shell`:
                    {
                      const raw = await executeBufferedSubshell(segment.shell, opts2, state);
                      if (segment.quoted) {
                        push(raw);
                      } else {
                        const parts = split2(raw);
                        for (let t2 = 0; t2 < parts.length - 1; ++t2)
                          pushAndClose(parts[t2]);
                        push(parts[parts.length - 1]);
                      }
                    }
                    break;
                  case `variable`:
                    {
                      await evaluateVariable(segment, opts2, state, push, pushAndClose);
                    }
                    break;
                  case `arithmetic`:
                    {
                      push(String(await evaluateArithmetic(segment.arithmetic, opts2, state)));
                    }
                    break;
                }
              }
            }
            break;
        }
        close();
        if (isGlob) {
          const pattern = interpolated.pop();
          if (typeof pattern === `undefined`)
            throw new Error(`Assertion failed: Expected a glob pattern to have been set`);
          const matches2 = await opts2.glob.match(pattern, { cwd: state.cwd, baseFs: opts2.baseFs });
          if (matches2.length === 0) {
            const braceExpansionNotice = globUtils.isBraceExpansion(pattern) ? `. Note: Brace expansion of arbitrary strings isn't currently supported. For more details, please read this issue: https://github.com/yarnpkg/berry/issues/22` : ``;
            throw new errors_1.ShellError(`No matches found: "${pattern}"${braceExpansionNotice}`);
          }
          for (const match of matches2.sort()) {
            pushAndClose(match);
          }
        }
      }
      if (redirections.size > 0) {
        const redirectionArgs = [];
        for (const [key, targets] of redirections.entries())
          redirectionArgs.splice(redirectionArgs.length, 0, key, String(targets.length), ...targets);
        interpolated.splice(0, 0, `__ysh_set_redirects`, ...redirectionArgs, `--`);
      }
      return interpolated;
    }
    function makeCommandAction(args, opts2, state) {
      if (!opts2.builtins.has(args[0]))
        args = [`command`, ...args];
      const nativeCwd = fslib_12.npath.fromPortablePath(state.cwd);
      let env3 = state.environment;
      if (typeof env3.PWD !== `undefined`)
        env3 = { ...env3, PWD: nativeCwd };
      const [name, ...rest] = args;
      if (name === `command`) {
        return (0, pipe_1.makeProcess)(rest[0], rest.slice(1), opts2, {
          cwd: nativeCwd,
          env: env3
        });
      }
      const builtin = opts2.builtins.get(name);
      if (typeof builtin === `undefined`)
        throw new Error(`Assertion failed: A builtin should exist for "${name}"`);
      return (0, pipe_1.makeBuiltin)(async ({ stdin, stdout, stderr }) => {
        const { stdin: initialStdin, stdout: initialStdout, stderr: initialStderr } = state;
        state.stdin = stdin;
        state.stdout = stdout;
        state.stderr = stderr;
        try {
          return await builtin(rest, opts2, state);
        } finally {
          state.stdin = initialStdin;
          state.stdout = initialStdout;
          state.stderr = initialStderr;
        }
      });
    }
    function makeSubshellAction(ast, opts2, state) {
      return (stdio) => {
        const stdin = new stream_12.PassThrough();
        const promise2 = executeShellLine(ast, opts2, cloneState(state, { stdin }));
        return { stdin, promise: promise2 };
      };
    }
    function makeGroupAction(ast, opts2, state) {
      return (stdio) => {
        const stdin = new stream_12.PassThrough();
        const promise2 = executeShellLine(ast, opts2, state);
        return { stdin, promise: promise2 };
      };
    }
    function makeActionFromProcedure(procedure, args, opts2, activeState) {
      if (args.length === 0) {
        return procedure;
      } else {
        let key;
        do {
          key = String(Math.random());
        } while (Object.hasOwn(activeState.procedures, key));
        activeState.procedures = { ...activeState.procedures };
        activeState.procedures[key] = procedure;
        return makeCommandAction([...args, `__ysh_run_procedure`, key], opts2, activeState);
      }
    }
    async function executeCommandChainImpl(node, opts2, state) {
      let current = node;
      let pipeType = null;
      let execution = null;
      while (current) {
        const activeState = current.then ? { ...state } : state;
        let action;
        switch (current.type) {
          case `command`:
            {
              const args = await interpolateArguments(current.args, opts2, state);
              const environment = await applyEnvVariables(current.envs, opts2, state);
              action = current.envs.length ? makeCommandAction(args, opts2, cloneState(activeState, { environment })) : makeCommandAction(args, opts2, activeState);
            }
            break;
          case `subshell`:
            {
              const args = await interpolateArguments(current.args, opts2, state);
              const procedure = makeSubshellAction(current.subshell, opts2, activeState);
              action = makeActionFromProcedure(procedure, args, opts2, activeState);
            }
            break;
          case `group`:
            {
              const args = await interpolateArguments(current.args, opts2, state);
              const procedure = makeGroupAction(current.group, opts2, activeState);
              action = makeActionFromProcedure(procedure, args, opts2, activeState);
            }
            break;
          case `envs`:
            {
              const environment = await applyEnvVariables(current.envs, opts2, state);
              activeState.environment = { ...activeState.environment, ...environment };
              action = makeCommandAction([`true`], opts2, activeState);
            }
            break;
        }
        if (typeof action === `undefined`)
          throw new Error(`Assertion failed: An action should have been generated`);
        if (pipeType === null) {
          execution = (0, pipe_2.start)(action, {
            stdin: new pipe_2.ProtectedStream(activeState.stdin),
            stdout: new pipe_2.ProtectedStream(activeState.stdout),
            stderr: new pipe_2.ProtectedStream(activeState.stderr)
          });
        } else {
          if (execution === null)
            throw new Error(`Assertion failed: The execution pipeline should have been setup`);
          switch (pipeType) {
            case `|`:
              {
                execution = execution.pipeTo(action, pipe_2.Pipe.STDOUT);
              }
              break;
            case `|&`:
              {
                execution = execution.pipeTo(action, pipe_2.Pipe.STDOUT | pipe_2.Pipe.STDERR);
              }
              break;
          }
        }
        if (current.then) {
          pipeType = current.then.type;
          current = current.then.chain;
        } else {
          current = null;
        }
      }
      if (execution === null)
        throw new Error(`Assertion failed: The execution pipeline should have been setup`);
      return await execution.run();
    }
    async function executeCommandChain(node, opts2, state, { background = false } = {}) {
      function getColorizer(index) {
        const colors = [`#2E86AB`, `#A23B72`, `#F18F01`, `#C73E1D`, `#CCE2A3`];
        const colorName = colors[index % colors.length];
        return chalk_1.default.hex(colorName);
      }
      if (background) {
        const index = state.nextBackgroundJobIndex++;
        const colorizer = getColorizer(index);
        const rawPrefix = `[${index}]`;
        const prefix = colorizer(rawPrefix);
        const { stdout, stderr } = (0, pipe_1.createOutputStreamsWithPrefix)(state, { prefix });
        state.backgroundJobs.push(executeCommandChainImpl(node, opts2, cloneState(state, { stdout, stderr })).catch((error) => stderr.write(`${error.message}
`)).finally(() => {
          if (state.stdout.isTTY) {
            state.stdout.write(`Job ${prefix}, '${colorizer((0, parsers_1.stringifyCommandChain)(node))}' has ended
`);
          }
        }));
        return 0;
      }
      return await executeCommandChainImpl(node, opts2, state);
    }
    async function executeCommandLine(node, opts2, state, { background = false } = {}) {
      let code;
      const setCode = (newCode) => {
        code = newCode;
        state.variables[`?`] = String(newCode);
      };
      const executeChain = async (line) => {
        try {
          return await executeCommandChain(line.chain, opts2, state, { background: background && typeof line.then === `undefined` });
        } catch (error) {
          if (!(error instanceof errors_1.ShellError))
            throw error;
          state.stderr.write(`${error.message}
`);
          return 1;
        }
      };
      setCode(await executeChain(node));
      while (node.then) {
        if (state.exitCode !== null)
          return state.exitCode;
        switch (node.then.type) {
          case `&&`:
            {
              if (code === 0) {
                setCode(await executeChain(node.then.line));
              }
            }
            break;
          case `||`:
            {
              if (code !== 0) {
                setCode(await executeChain(node.then.line));
              }
            }
            break;
          default: {
            throw new Error(`Assertion failed: Unsupported command type: "${node.then.type}"`);
          }
        }
        node = node.then.line;
      }
      return code;
    }
    async function executeShellLine(node, opts2, state) {
      const originalBackgroundJobs = state.backgroundJobs;
      state.backgroundJobs = [];
      let rightMostExitCode = 0;
      for (const { command, type: type4 } of node) {
        rightMostExitCode = await executeCommandLine(command, opts2, state, { background: type4 === `&` });
        if (state.exitCode !== null)
          return state.exitCode;
        state.variables[`?`] = String(rightMostExitCode);
      }
      await Promise.all(state.backgroundJobs);
      state.backgroundJobs = originalBackgroundJobs;
      return rightMostExitCode;
    }
    function locateArgsVariableInSegment(segment) {
      switch (segment.type) {
        case `variable`: {
          return segment.name === `@` || segment.name === `#` || segment.name === `*` || Number.isFinite(parseInt(segment.name, 10)) || `defaultValue` in segment && !!segment.defaultValue && segment.defaultValue.some((arg) => locateArgsVariableInArgument(arg)) || `alternativeValue` in segment && !!segment.alternativeValue && segment.alternativeValue.some((arg) => locateArgsVariableInArgument(arg));
        }
        case `arithmetic`: {
          return locateArgsVariableInArithmetic(segment.arithmetic);
        }
        case `shell`: {
          return locateArgsVariable(segment.shell);
        }
        default: {
          return false;
        }
      }
    }
    function locateArgsVariableInArgument(arg) {
      switch (arg.type) {
        case `redirection`: {
          return arg.args.some((arg2) => locateArgsVariableInArgument(arg2));
        }
        case `argument`: {
          return arg.segments.some((segment) => locateArgsVariableInSegment(segment));
        }
        default:
          throw new Error(`Assertion failed: Unsupported argument type: "${arg.type}"`);
      }
    }
    function locateArgsVariableInArithmetic(arg) {
      switch (arg.type) {
        case `variable`: {
          return locateArgsVariableInSegment(arg);
        }
        case `number`: {
          return false;
        }
        default:
          return locateArgsVariableInArithmetic(arg.left) || locateArgsVariableInArithmetic(arg.right);
      }
    }
    function locateArgsVariable(node) {
      return node.some(({ command }) => {
        while (command) {
          let chain3 = command.chain;
          while (chain3) {
            let hasArgs;
            switch (chain3.type) {
              case `subshell`:
                {
                  hasArgs = locateArgsVariable(chain3.subshell);
                }
                break;
              case `command`:
                {
                  hasArgs = chain3.envs.some((env3) => env3.args.some((arg) => {
                    return locateArgsVariableInArgument(arg);
                  })) || chain3.args.some((arg) => {
                    return locateArgsVariableInArgument(arg);
                  });
                }
                break;
            }
            if (hasArgs)
              return true;
            if (!chain3.then)
              break;
            chain3 = chain3.then.chain;
          }
          if (!command.then)
            break;
          command = command.then.line;
        }
        return false;
      });
    }
    async function execute2(command, args = [], { baseFs = new fslib_12.NodeFS(), builtins = {}, cwd = fslib_12.npath.toPortablePath(process.cwd()), env: env3 = process.env, stdin = process.stdin, stdout = process.stdout, stderr = process.stderr, variables = {}, glob: glob2 = globUtils } = {}) {
      const normalizedEnv = {};
      for (const [key, value] of Object.entries(env3))
        if (typeof value !== `undefined`)
          normalizedEnv[key] = value;
      const normalizedBuiltins = new Map(BUILTINS);
      for (const [key, builtin] of Object.entries(builtins))
        normalizedBuiltins.set(key, builtin);
      if (stdin === null) {
        stdin = new stream_12.PassThrough();
        stdin.end();
      }
      const ast = (0, parsers_1.parseShell)(command, glob2);
      if (!locateArgsVariable(ast) && ast.length > 0 && args.length > 0) {
        let { command: command2 } = ast[ast.length - 1];
        while (command2.then)
          command2 = command2.then.line;
        let chain3 = command2.chain;
        while (chain3.then)
          chain3 = chain3.then.chain;
        if (chain3.type === `command`) {
          chain3.args = chain3.args.concat(args.map((arg) => {
            return {
              type: `argument`,
              segments: [{
                type: `text`,
                text: arg
              }]
            };
          }));
        }
      }
      return await executeShellLine(ast, {
        args,
        baseFs,
        builtins: normalizedBuiltins,
        initialStdin: stdin,
        initialStdout: stdout,
        initialStderr: stderr,
        glob: glob2
      }, {
        cwd,
        environment: normalizedEnv,
        exitCode: null,
        procedures: {},
        stdin,
        stdout,
        stderr,
        variables: Object.assign({}, variables, {
          [`?`]: 0
        }),
        nextBackgroundJobIndex: 1,
        backgroundJobs: []
      });
    }
    exports2.execute = execute2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/uid-number/0.0.6/d04855dc85bbb4bcc22c591b5735c9bd66e0fa8a79beff5cdea8767cafefe83e/node_modules/uid-number/uid-number.js
var require_uid_number = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/uid-number/0.0.6/d04855dc85bbb4bcc22c591b5735c9bd66e0fa8a79beff5cdea8767cafefe83e/node_modules/uid-number/uid-number.js"(exports2, module2) {
    module2.exports = uidNumber2;
    var child_process = __require("child_process");
    var path218 = __require("path");
    var uidSupport = process.getuid && process.setuid;
    var uidCache = {};
    var gidCache = {};
    function uidNumber2(uid, gid, cb) {
      if (!uidSupport) return cb();
      if (typeof cb !== "function") cb = gid, gid = null;
      if (typeof cb !== "function") cb = uid, uid = null;
      if (gid == null) gid = process.getgid();
      if (uid == null) uid = process.getuid();
      if (!isNaN(gid)) gid = gidCache[gid] = +gid;
      if (!isNaN(uid)) uid = uidCache[uid] = +uid;
      if (uidCache.hasOwnProperty(uid)) uid = uidCache[uid];
      if (gidCache.hasOwnProperty(gid)) gid = gidCache[gid];
      if (typeof gid === "number" && typeof uid === "number") {
        return process.nextTick(cb.bind(null, null, uid, gid));
      }
      var getter = __require.resolve("./get-uid-gid.js");
      child_process.execFile(
        process.execPath,
        [getter, uid, gid],
        function(code, out, stderr) {
          if (code) {
            var er = new Error("could not get uid/gid\n" + stderr);
            er.code = code;
            return cb(er);
          }
          try {
            out = JSON.parse(out + "");
          } catch (ex) {
            return cb(ex);
          }
          if (out.error) {
            var er = new Error(out.error);
            er.errno = out.errno;
            return cb(er);
          }
          if (isNaN(out.uid) || isNaN(out.gid)) return cb(new Error(
            "Could not get uid/gid: " + JSON.stringify(out)
          ));
          cb(null, uidCache[uid] = +out.uid, gidCache[gid] = +out.gid);
        }
      );
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/byline/1.0.0/fa6df58dc699ae6d0f94f2455b5df743180d224d978e80fd2cc83f13668114f0/node_modules/@pnpm/byline/lib/byline.js
var require_byline = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/byline/1.0.0/fa6df58dc699ae6d0f94f2455b5df743180d224d978e80fd2cc83f13668114f0/node_modules/@pnpm/byline/lib/byline.js"(exports2, module2) {
    var stream2 = __require("stream");
    var util56 = __require("util");
    var timers = __require("timers");
    module2.exports = function(readStream, options) {
      return module2.exports.createStream(readStream, options);
    };
    module2.exports.createStream = function(readStream, options) {
      if (readStream) {
        return createLineStream(readStream, options);
      } else {
        return new LineStream(options);
      }
    };
    module2.exports.createLineStream = function(readStream) {
      console.log("WARNING: byline#createLineStream is deprecated and will be removed soon");
      return createLineStream(readStream);
    };
    function createLineStream(readStream, options) {
      if (!readStream) {
        throw new Error("expected readStream");
      }
      if (!readStream.readable) {
        throw new Error("readStream must be readable");
      }
      var ls = new LineStream(options);
      readStream.pipe(ls);
      return ls;
    }
    module2.exports.LineStream = LineStream;
    function LineStream(options) {
      stream2.Transform.call(this, options);
      options = options || {};
      this._readableState.objectMode = true;
      this._lineBuffer = [];
      this._keepEmptyLines = options.keepEmptyLines || false;
      this._lastChunkEndedWithCR = false;
      var self2 = this;
      this.on("pipe", function(src2) {
        if (!self2.encoding) {
          if (src2 instanceof stream2.Readable) {
            self2.encoding = src2._readableState.encoding;
          }
        }
      });
    }
    util56.inherits(LineStream, stream2.Transform);
    LineStream.prototype._transform = function(chunk, encoding, done) {
      encoding = encoding || "utf8";
      if (Buffer.isBuffer(chunk)) {
        if (encoding == "buffer") {
          chunk = chunk.toString();
          encoding = "utf8";
        } else {
          chunk = chunk.toString(encoding);
        }
      }
      this._chunkEncoding = encoding;
      var lines = chunk.split(/\r\n|[\n\v\f\r\x85\u2028\u2029]/g);
      if (this._lastChunkEndedWithCR && chunk[0] == "\n") {
        lines.shift();
      }
      if (this._lineBuffer.length > 0) {
        this._lineBuffer[this._lineBuffer.length - 1] += lines[0];
        lines.shift();
      }
      this._lastChunkEndedWithCR = chunk[chunk.length - 1] == "\r";
      this._lineBuffer = this._lineBuffer.concat(lines);
      this._pushBuffer(encoding, 1, done);
    };
    LineStream.prototype._pushBuffer = function(encoding, keep, done) {
      while (this._lineBuffer.length > keep) {
        var line = this._lineBuffer.shift();
        if (this._keepEmptyLines || line.length > 0) {
          if (!this.push(this._reencode(line, encoding))) {
            var self2 = this;
            timers.setImmediate(function() {
              self2._pushBuffer(encoding, keep, done);
            });
            return;
          }
        }
      }
      done();
    };
    LineStream.prototype._flush = function(done) {
      this._pushBuffer(this._chunkEncoding, 0, done);
    };
    LineStream.prototype._reencode = function(line, chunkEncoding) {
      if (this.encoding && this.encoding != chunkEncoding) {
        return Buffer.from(line, chunkEncoding).toString(this.encoding);
      } else if (this.encoding) {
        return line;
      } else {
        return Buffer.from(line, chunkEncoding);
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/constants/1001.3.1/d7b76e811dc62c15564a513225363643bbc754292ea30726cdf2c2b97b40fa97/node_modules/@pnpm/constants/lib/index.js
var require_lib16 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/constants/1001.3.1/d7b76e811dc62c15564a513225363643bbc754292ea30726cdf2c2b97b40fa97/node_modules/@pnpm/constants/lib/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.USEFUL_NON_ROOT_PNPM_FIELDS = exports2.FULL_FILTERED_META_DIR = exports2.FULL_META_DIR = exports2.ABBREVIATED_META_DIR = exports2.WORKSPACE_MANIFEST_FILENAME = exports2.STORE_VERSION = exports2.LAYOUT_VERSION = exports2.ENGINE_NAME = exports2.MANIFEST_BASE_NAMES = exports2.LOCKFILE_VERSION = exports2.LOCKFILE_MAJOR_VERSION = exports2.WANTED_LOCKFILE = void 0;
    exports2.getNodeBinLocationForCurrentOS = getNodeBinLocationForCurrentOS;
    exports2.getDenoBinLocationForCurrentOS = getDenoBinLocationForCurrentOS2;
    exports2.getBunBinLocationForCurrentOS = getBunBinLocationForCurrentOS2;
    exports2.WANTED_LOCKFILE = "pnpm-lock.yaml";
    exports2.LOCKFILE_MAJOR_VERSION = "9";
    exports2.LOCKFILE_VERSION = `${exports2.LOCKFILE_MAJOR_VERSION}.0`;
    exports2.MANIFEST_BASE_NAMES = ["package.json", "package.json5", "package.yaml"];
    exports2.ENGINE_NAME = `${process.platform};${process.arch};node${process.version.split(".")[0].substring(1)}`;
    exports2.LAYOUT_VERSION = 5;
    exports2.STORE_VERSION = "v10";
    exports2.WORKSPACE_MANIFEST_FILENAME = "pnpm-workspace.yaml";
    exports2.ABBREVIATED_META_DIR = "metadata-v1.3";
    exports2.FULL_META_DIR = "metadata-full-v1.3";
    exports2.FULL_FILTERED_META_DIR = "metadata-ff-v1.3";
    exports2.USEFUL_NON_ROOT_PNPM_FIELDS = ["executionEnv"];
    function getNodeBinLocationForCurrentOS(platform3 = process.platform) {
      return platform3 === "win32" ? "node.exe" : "bin/node";
    }
    function getDenoBinLocationForCurrentOS2(platform3 = process.platform) {
      return platform3 === "win32" ? "deno.exe" : "deno";
    }
    function getBunBinLocationForCurrentOS2(platform3 = process.platform) {
      return platform3 === "win32" ? "bun.exe" : "bun";
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/error/1000.1.0/7615b54aca07fb65793d2c5b449f57748ccb32edf18b8276669c68d7b30266bb/node_modules/@pnpm/error/lib/index.js
var require_lib17 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/error/1000.1.0/7615b54aca07fb65793d2c5b449f57748ccb32edf18b8276669c68d7b30266bb/node_modules/@pnpm/error/lib/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.LockfileMissingDependencyError = exports2.FetchError = exports2.PnpmError = void 0;
    var constants_1 = require_lib16();
    var PnpmError3 = class extends Error {
      code;
      hint;
      attempts;
      prefix;
      pkgsStack;
      constructor(code, message, opts2) {
        super(message, { cause: opts2?.cause });
        this.code = code.startsWith("ERR_PNPM_") ? code : `ERR_PNPM_${code}`;
        this.hint = opts2?.hint;
        this.attempts = opts2?.attempts;
      }
    };
    exports2.PnpmError = PnpmError3;
    var FetchError2 = class extends PnpmError3 {
      response;
      request;
      constructor(request, response, hint) {
        const _request = {
          url: request.url
        };
        if (request.authHeaderValue) {
          _request.authHeaderValue = hideAuthInformation2(request.authHeaderValue);
        }
        const message = `GET ${request.url}: ${response.statusText} - ${response.status}`;
        if (response.status === 401 || response.status === 403 || response.status === 404) {
          hint = hint ? `${hint}

` : "";
          if (_request.authHeaderValue) {
            hint += `An authorization header was used: ${_request.authHeaderValue}`;
          } else {
            hint += "No authorization header was set for the request.";
          }
        }
        super(`FETCH_${response.status}`, message, { hint });
        this.request = _request;
        this.response = response;
      }
    };
    exports2.FetchError = FetchError2;
    function hideAuthInformation2(authHeaderValue) {
      const [authType, token] = authHeaderValue.split(" ");
      if (token == null)
        return "[hidden]";
      if (token.length < 20) {
        return `${authType} [hidden]`;
      }
      return `${authType} ${token.substring(0, 4)}[hidden]`;
    }
    var LockfileMissingDependencyError2 = class extends PnpmError3 {
      constructor(depPath) {
        const message = `Broken lockfile: no entry for '${depPath}' in ${constants_1.WANTED_LOCKFILE}`;
        super("LOCKFILE_MISSING_DEPENDENCY", message, {
          hint: "This issue is probably caused by a badly resolved merge conflict.\nTo fix the lockfile, run 'pnpm install --no-frozen-lockfile'."
        });
      }
    };
    exports2.LockfileMissingDependencyError = LockfileMissingDependencyError2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/isexe/3.1.5/0a2a0bf2de536c3b901542b1e0bb2a1d073da4dce47f747114511f415dfa6d0a/node_modules/isexe/dist/commonjs/index.min.js
var require_index_min2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/isexe/3.1.5/0a2a0bf2de536c3b901542b1e0bb2a1d073da4dce47f747114511f415dfa6d0a/node_modules/isexe/dist/commonjs/index.min.js"(exports2) {
    "use strict";
    var a2 = (t2, e) => () => (e || t2((e = { exports: {} }).exports, e), e.exports);
    var _ = a2((i2) => {
      "use strict";
      Object.defineProperty(i2, "__esModule", { value: true });
      i2.sync = i2.isexe = void 0;
      var M2 = __require("node:fs"), x = __require("node:fs/promises"), q = async (t2, e = {}) => {
        let { ignoreErrors: r = false } = e;
        try {
          return d(await (0, x.stat)(t2), e);
        } catch (s) {
          let n2 = s;
          if (r || n2.code === "EACCES") return false;
          throw n2;
        }
      };
      i2.isexe = q;
      var m = (t2, e = {}) => {
        let { ignoreErrors: r = false } = e;
        try {
          return d((0, M2.statSync)(t2), e);
        } catch (s) {
          let n2 = s;
          if (r || n2.code === "EACCES") return false;
          throw n2;
        }
      };
      i2.sync = m;
      var d = (t2, e) => t2.isFile() && A(t2, e), A = (t2, e) => {
        let r = e.uid ?? process.getuid?.(), s = e.groups ?? process.getgroups?.() ?? [], n2 = e.gid ?? process.getgid?.() ?? s[0];
        if (r === void 0 || n2 === void 0) throw new Error("cannot get uid or gid");
        let u4 = /* @__PURE__ */ new Set([n2, ...s]), c3 = t2.mode, S2 = t2.uid, P2 = t2.gid, f = parseInt("100", 8), l = parseInt("010", 8), j2 = parseInt("001", 8), C = f | l;
        return !!(c3 & j2 || c3 & l && u4.has(P2) || c3 & f && S2 === r || c3 & C && r === 0);
      };
    });
    var g = a2((o2) => {
      "use strict";
      Object.defineProperty(o2, "__esModule", { value: true });
      o2.sync = o2.isexe = void 0;
      var T2 = __require("node:fs"), I2 = __require("node:fs/promises"), D2 = __require("node:path"), F = async (t2, e = {}) => {
        let { ignoreErrors: r = false } = e;
        try {
          return y(await (0, I2.stat)(t2), t2, e);
        } catch (s) {
          let n2 = s;
          if (r || n2.code === "EACCES") return false;
          throw n2;
        }
      };
      o2.isexe = F;
      var L2 = (t2, e = {}) => {
        let { ignoreErrors: r = false } = e;
        try {
          return y((0, T2.statSync)(t2), t2, e);
        } catch (s) {
          let n2 = s;
          if (r || n2.code === "EACCES") return false;
          throw n2;
        }
      };
      o2.sync = L2;
      var B = (t2, e) => {
        let { pathExt: r = process.env.PATHEXT || "" } = e, s = r.split(D2.delimiter);
        if (s.indexOf("") !== -1) return true;
        for (let n2 of s) {
          let u4 = n2.toLowerCase(), c3 = t2.substring(t2.length - u4.length).toLowerCase();
          if (u4 && c3 === u4) return true;
        }
        return false;
      }, y = (t2, e, r) => t2.isFile() && B(e, r);
    });
    var p = a2((h2) => {
      "use strict";
      Object.defineProperty(h2, "__esModule", { value: true });
    });
    var v = exports2 && exports2.__createBinding || (Object.create ? (function(t2, e, r, s) {
      s === void 0 && (s = r);
      var n2 = Object.getOwnPropertyDescriptor(e, r);
      (!n2 || ("get" in n2 ? !e.__esModule : n2.writable || n2.configurable)) && (n2 = { enumerable: true, get: function() {
        return e[r];
      } }), Object.defineProperty(t2, s, n2);
    }) : (function(t2, e, r, s) {
      s === void 0 && (s = r), t2[s] = e[r];
    }));
    var G2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(t2, e) {
      Object.defineProperty(t2, "default", { enumerable: true, value: e });
    }) : function(t2, e) {
      t2.default = e;
    });
    var w = exports2 && exports2.__importStar || /* @__PURE__ */ (function() {
      var t2 = function(e) {
        return t2 = Object.getOwnPropertyNames || function(r) {
          var s = [];
          for (var n2 in r) Object.prototype.hasOwnProperty.call(r, n2) && (s[s.length] = n2);
          return s;
        }, t2(e);
      };
      return function(e) {
        if (e && e.__esModule) return e;
        var r = {};
        if (e != null) for (var s = t2(e), n2 = 0; n2 < s.length; n2++) s[n2] !== "default" && v(r, e, s[n2]);
        return G2(r, e), r;
      };
    })();
    var X = exports2 && exports2.__exportStar || function(t2, e) {
      for (var r in t2) r !== "default" && !Object.prototype.hasOwnProperty.call(e, r) && v(e, t2, r);
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.sync = exports2.isexe = exports2.posix = exports2.win32 = void 0;
    var E = w(_());
    exports2.posix = E;
    var O2 = w(g());
    exports2.win32 = O2;
    X(p(), exports2);
    var H2 = process.env._ISEXE_TEST_PLATFORM_ || process.platform;
    var b = H2 === "win32" ? O2 : E;
    exports2.isexe = b.isexe;
    exports2.sync = b.sync;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/which/4.0.0/a609b205d6706d17c9118c7393eeed7b543c82ed7f1ccc19839c83a4cf09044e/node_modules/which/lib/index.js
var require_lib18 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/which/4.0.0/a609b205d6706d17c9118c7393eeed7b543c82ed7f1ccc19839c83a4cf09044e/node_modules/which/lib/index.js"(exports2, module2) {
    var { isexe, sync: isexeSync } = require_index_min2();
    var { join: join3, delimiter, sep: sep2, posix: posix2 } = __require("path");
    var isWindows15 = process.platform === "win32";
    var rSlash = new RegExp(`[${posix2.sep}${sep2 === posix2.sep ? "" : sep2}]`.replace(/(\\)/g, "\\$1"));
    var rRel = new RegExp(`^\\.${rSlash.source}`);
    var getNotFoundError = (cmd) => Object.assign(new Error(`not found: ${cmd}`), { code: "ENOENT" });
    var getPathInfo = (cmd, {
      path: optPath = process.env.PATH,
      pathExt: optPathExt = process.env.PATHEXT,
      delimiter: optDelimiter = delimiter
    }) => {
      const pathEnv = cmd.match(rSlash) ? [""] : [
        // windows always checks the cwd first
        ...isWindows15 ? [process.cwd()] : [],
        ...(optPath || /* istanbul ignore next: very unusual */
        "").split(optDelimiter)
      ];
      if (isWindows15) {
        const pathExtExe = optPathExt || [".EXE", ".CMD", ".BAT", ".COM"].join(optDelimiter);
        const pathExt = pathExtExe.split(optDelimiter).flatMap((item) => [item, item.toLowerCase()]);
        if (cmd.includes(".") && pathExt[0] !== "") {
          pathExt.unshift("");
        }
        return { pathEnv, pathExt, pathExtExe };
      }
      return { pathEnv, pathExt: [""] };
    };
    var getPathPart = (raw, cmd) => {
      const pathPart = /^".*"$/.test(raw) ? raw.slice(1, -1) : raw;
      const prefix = !pathPart && rRel.test(cmd) ? cmd.slice(0, 2) : "";
      return prefix + join3(pathPart, cmd);
    };
    var which4 = async (cmd, opt = {}) => {
      const { pathEnv, pathExt, pathExtExe } = getPathInfo(cmd, opt);
      const found = [];
      for (const envPart of pathEnv) {
        const p = getPathPart(envPart, cmd);
        for (const ext of pathExt) {
          const withExt = p + ext;
          const is = await isexe(withExt, { pathExt: pathExtExe, ignoreErrors: true });
          if (is) {
            if (!opt.all) {
              return withExt;
            }
            found.push(withExt);
          }
        }
      }
      if (opt.all && found.length) {
        return found;
      }
      if (opt.nothrow) {
        return null;
      }
      throw getNotFoundError(cmd);
    };
    var whichSync = (cmd, opt = {}) => {
      const { pathEnv, pathExt, pathExtExe } = getPathInfo(cmd, opt);
      const found = [];
      for (const pathEnvPart of pathEnv) {
        const p = getPathPart(pathEnvPart, cmd);
        for (const ext of pathExt) {
          const withExt = p + ext;
          const is = isexeSync(withExt, { pathExt: pathExtExe, ignoreErrors: true });
          if (is) {
            if (!opt.all) {
              return withExt;
            }
            found.push(withExt);
          }
        }
      }
      if (opt.all && found.length) {
        return found;
      }
      if (opt.nothrow) {
        return null;
      }
      throw getNotFoundError(cmd);
    };
    module2.exports = which4;
    which4.sync = whichSync;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/npm-lifecycle/1100.0.0-1/12af32ded1ba80b8eb874c4120db44968a573346dc1c1fb484a14ac7ceac0cd9/node_modules/@pnpm/npm-lifecycle/lib/extendPath.js
import fs16 from "fs";
import path31 from "path";
function extendPath(wd, originalPath, nodeGyp, opts2) {
  const pathArr = [...opts2.extraBinPaths || []];
  const p = wd.split(/[\\/]node_modules[\\/]/);
  let acc = path31.resolve(p.shift());
  pathArr.unshift(nodeGyp);
  p.forEach((pp) => {
    pathArr.unshift(path31.join(acc, "node_modules", ".bin"));
    acc = path31.join(acc, "node_modules", pp);
  });
  pathArr.unshift(path31.join(acc, "node_modules", ".bin"));
  if (shouldPrependCurrentNodeDirToPATH(opts2)) {
    pathArr.push(path31.dirname(process.execPath));
  }
  if (originalPath) pathArr.push(originalPath);
  return pathArr.join(process.platform === "win32" ? ";" : ":");
}
function shouldPrependCurrentNodeDirToPATH(opts2) {
  const cfgsetting = opts2.scriptsPrependNodePath;
  if (cfgsetting === false || cfgsetting == null) return false;
  if (cfgsetting === true) return true;
  let isDifferentNodeInPath;
  const isWindows15 = process.platform === "win32";
  let foundExecPath;
  try {
    foundExecPath = import_which2.default.sync(path31.basename(process.execPath), { pathExt: isWindows15 ? ";" : ":" });
    isDifferentNodeInPath = fs16.realpathSync(process.execPath).toUpperCase() !== fs16.realpathSync(foundExecPath).toUpperCase();
  } catch (e) {
    isDifferentNodeInPath = true;
  }
  if (cfgsetting === "warn-only") {
    if (isDifferentNodeInPath && !shouldPrependCurrentNodeDirToPATH.hasWarned) {
      if (foundExecPath) {
        opts2.log.warn("lifecycle", `The node binary used for scripts is ${foundExecPath} but pnpm is using ${process.execPath} itself. Use the \`--scripts-prepend-node-path\` option to include the path for the node binary pnpm was executed with.`);
      } else {
        opts2.log.warn("lifecycle", `pnpm is using ${process.execPath} but there is no node binary in the current PATH. Use the \`--scripts-prepend-node-path\` option to include the path for the node binary pnpm was executed with.`);
      }
      shouldPrependCurrentNodeDirToPATH.hasWarned = true;
    }
    return false;
  }
  return isDifferentNodeInPath;
}
var import_which2;
var init_extendPath = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/npm-lifecycle/1100.0.0-1/12af32ded1ba80b8eb874c4120db44968a573346dc1c1fb484a14ac7ceac0cd9/node_modules/@pnpm/npm-lifecycle/lib/extendPath.js"() {
    import_which2 = __toESM(require_lib18(), 1);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/npm-lifecycle/1100.0.0-1/12af32ded1ba80b8eb874c4120db44968a573346dc1c1fb484a14ac7ceac0cd9/node_modules/@pnpm/npm-lifecycle/index.js
import path32 from "path";
import fs17 from "fs";
import { createRequire as createRequire4 } from "module";
import { PassThrough as PassThrough2 } from "stream";
function logid(pkg, stage) {
  return `${pkg._id}~${stage}:`;
}
function hookStat(dir, stage, cb) {
  const hook = path32.join(dir, ".hooks", stage);
  const cachedStatError = hookStatCache.get(hook);
  if (cachedStatError === void 0) {
    return fs17.stat(hook, (statError) => {
      hookStatCache.set(hook, statError);
      cb(statError);
    });
  }
  return setImmediate(() => cb(cachedStatError));
}
function lifecycle(pkg, stage, wd, opts2) {
  return new Promise((resolve3, reject3) => {
    while (pkg && pkg._data) pkg = pkg._data;
    if (!pkg) return reject3(new Error("Invalid package data"));
    opts2.log.info("lifecycle", logid(pkg, stage), pkg._id);
    if (!pkg.scripts) pkg.scripts = {};
    if (stage === "prepublish" && opts2.ignorePrepublish) {
      opts2.log.info("lifecycle", logid(pkg, stage), "ignored because ignore-prepublish is set to true", pkg._id);
      delete pkg.scripts.prepublish;
    }
    hookStat(opts2.dir, stage, (statError) => {
      if (!pkg.scripts[stage] && statError) return resolve3();
      validWd(wd || path32.resolve(opts2.dir, pkg.name), (er, wd2) => {
        if (er) return reject3(er);
        const env3 = makeEnv(pkg, opts2);
        env3.npm_lifecycle_event = stage;
        env3.npm_node_execpath = env3.NODE = env3.NODE || process.execPath;
        env3.npm_package_json = path32.join(wd2, "package.json");
        if (process.pkg != null) {
          env3.npm_execpath = process.execPath;
        } else {
          env3.npm_execpath = process.argv[1] || process.cwd();
        }
        env3.INIT_CWD = process.cwd();
        env3.npm_config_node_gyp = env3.npm_config_node_gyp || DEFAULT_NODE_GYP_PATH;
        if (opts2.extraEnv) {
          for (const [key, value] of Object.entries(opts2.extraEnv)) {
            env3[key] = value;
          }
        }
        if (!opts2.unsafePerm) {
          const tmpdir = path32.join(wd2, "node_modules", ".tmp");
          try {
            fs17.mkdirSync(tmpdir, { recursive: true });
          } catch (err) {
            if (err.code !== "EEXIST") throw err;
          }
          env3.TMPDIR = tmpdir;
        }
        lifecycle_(pkg, stage, wd2, opts2, env3, (er2) => {
          if (er2) return reject3(er2);
          return resolve3();
        });
      });
    });
  });
}
function lifecycle_(pkg, stage, wd, opts2, env3, cb) {
  env3[PATH2] = extendPath(wd, env3[PATH2], path32.join(import.meta.dirname, "node-gyp-bin"), opts2);
  let packageLifecycle = pkg.scripts && Object.prototype.hasOwnProperty.call(pkg.scripts, stage);
  if (opts2.ignoreScripts) {
    opts2.log.info("lifecycle", logid(pkg, stage), "ignored because ignore-scripts is set to true", pkg._id);
    packageLifecycle = false;
  } else if (packageLifecycle) {
    env3.npm_lifecycle_script = pkg.scripts[stage];
  } else {
    opts2.log.silly("lifecycle", logid(pkg, stage), `no script for ${stage}, continuing`);
  }
  function done(er) {
    if (er) {
      if (opts2.force) {
        opts2.log.info("lifecycle", logid(pkg, stage), "forced, continuing", er);
        er = null;
      } else if (opts2.failOk) {
        opts2.log.warn("lifecycle", logid(pkg, stage), "continuing anyway", er.message);
        er = null;
      }
    }
    cb(er);
  }
  const tasks = [
    packageLifecycle && [runPackageLifecycle, pkg, stage, env3, wd, opts2],
    [runHookLifecycle, pkg, stage, env3, wd, opts2]
  ];
  let i2 = 0;
  function next2(er) {
    if (er) return done(er);
    while (i2 < tasks.length) {
      const task = tasks[i2++];
      if (task) {
        const [fn, ...args] = task;
        fn(...args, next2);
        return;
      }
    }
    done();
  }
  next2();
}
function validWd(d, cb) {
  fs17.stat(d, (er, st) => {
    if (er || !st.isDirectory()) {
      const p = path32.dirname(d);
      if (p === d) {
        return cb(new Error("Could not find suitable wd"));
      }
      return validWd(p, cb);
    }
    return cb(null, d);
  });
}
function runPackageLifecycle(pkg, stage, env3, wd, opts2, cb) {
  const cmd = env3.npm_lifecycle_script;
  runCmd(cmd, pkg, env3, stage, wd, opts2, cb);
}
function dequeue() {
  running2 = false;
  if (queue.length) {
    const r = queue.shift();
    runCmd.apply(null, r);
  }
}
function runCmd(cmd, pkg, env3, stage, wd, opts2, cb) {
  if (opts2.runConcurrently !== true) {
    if (running2) {
      queue.push([cmd, pkg, env3, stage, wd, opts2, cb]);
      return;
    }
    running2 = true;
  }
  opts2.log.pause();
  let unsafe = opts2.unsafePerm;
  const user = unsafe ? null : opts2.user;
  const group = unsafe ? null : opts2.group;
  opts2.log.verbose("lifecycle", logid(pkg, stage), "unsafe-perm in lifecycle", unsafe);
  if (process.platform === "win32") {
    unsafe = true;
  }
  if (unsafe) {
    runCmd_(cmd, pkg, env3, wd, opts2, stage, unsafe, 0, 0, cb);
  } else {
    (0, import_uid_number.default)(user, group, (er, uid, gid) => {
      runCmd_(cmd, pkg, env3, wd, opts2, stage, unsafe, uid, gid, cb);
    });
  }
}
function runCmd_(cmd, pkg, env3, wd, opts2, stage, unsafe, uid, gid, cb_) {
  function cb(er) {
    cb_.apply(null, arguments);
    opts2.log.resume();
    process.nextTick(dequeue);
  }
  const conf = {
    cwd: wd,
    env: env3,
    stdio: opts2.stdio || [0, 1, 2]
  };
  if (!unsafe) {
    conf.uid = uid ^ 0;
    conf.gid = gid ^ 0;
  }
  let sh = "sh";
  let shFlag = "-c";
  const customShell = opts2.scriptShell;
  if (customShell) {
    sh = customShell;
  } else if (process.platform === "win32") {
    sh = process.env.comspec || "cmd";
    shFlag = "/d /s /c";
    conf.windowsVerbatimArguments = true;
  }
  opts2.log.verbose("lifecycle", logid(pkg, stage), "PATH:", env3[PATH2]);
  opts2.log.verbose("lifecycle", logid(pkg, stage), "CWD:", wd);
  opts2.log.silly("lifecycle", logid(pkg, stage), "Args:", [shFlag, cmd]);
  if (opts2.shellEmulator) {
    const execOpts = { cwd: import_fslib.npath.toPortablePath(wd), env: env3 };
    if (opts2.stdio === "pipe") {
      const stdout = new PassThrough2();
      const stderr = new PassThrough2();
      (0, import_byline.default)(stdout).on("data", (data) => {
        opts2.log.verbose("lifecycle", logid(pkg, stage), "stdout", data.toString());
      });
      (0, import_byline.default)(stderr).on("data", (data) => {
        opts2.log.verbose("lifecycle", logid(pkg, stage), "stderr", data.toString());
      });
      execOpts.stdout = stdout;
      execOpts.stderr = stderr;
    }
    (0, import_shell3.execute)(cmd, [], execOpts).then((code) => {
      opts2.log.silly("lifecycle", logid(pkg, stage), "Returned: code:", code);
      let er;
      if (code) {
        er = new Error(`Exit status ${code}`);
        er.errno = code;
      }
      procError(er);
    }).catch((err) => procError(err));
    return;
  }
  const proc = spawn2(sh, [shFlag, cmd], conf, opts2.log);
  proc.on("error", procError);
  proc.on("close", (code, signal) => {
    opts2.log.silly("lifecycle", logid(pkg, stage), "Returned: code:", code, " signal:", signal);
    let err;
    if (signal) {
      err = new import_error24.PnpmError("CHILD_PROCESS_FAILED", `Command failed with signal "${signal}"`);
      process.kill(process.pid, signal);
    } else if (code) {
      err = new import_error24.PnpmError("CHILD_PROCESS_FAILED", `Exit status ${code}`);
      err.errno = code;
    }
    procError(err);
  });
  (0, import_byline.default)(proc.stdout).on("data", (data) => {
    opts2.log.verbose("lifecycle", logid(pkg, stage), "stdout", data.toString());
  });
  (0, import_byline.default)(proc.stderr).on("data", (data) => {
    opts2.log.verbose("lifecycle", logid(pkg, stage), "stderr", data.toString());
  });
  process.once("SIGTERM", procKill);
  process.once("SIGINT", procInterrupt);
  process.on("exit", procKill);
  function procError(er) {
    if (er) {
      opts2.log.info("lifecycle", logid(pkg, stage), `Failed to exec ${stage} script`);
      er.message = `${pkg._id} ${stage}: \`${cmd}\`
${er.message}`;
      if (er.code !== "EPERM") {
        er.code = "ELIFECYCLE";
      }
      fs17.stat(opts2.dir, (statError) => {
        if (statError && statError.code === "ENOENT" && opts2.dir.split(path32.sep).slice(-1)[0] === "node_modules") {
          opts2.log.warn("", "Local package.json exists, but node_modules missing, did you mean to install?");
        }
      });
      er.pkgid = pkg._id;
      er.stage = stage;
      er.script = cmd;
      er.pkgname = pkg.name;
    }
    process.removeListener("SIGTERM", procKill);
    process.removeListener("SIGINT", procKill);
    process.removeListener("SIGINT", procInterrupt);
    process.removeListener("exit", procKill);
    return cb(er);
  }
  let called = false;
  function procKill() {
    if (called) return;
    called = true;
    proc.kill();
  }
  function procInterrupt() {
    proc.kill("SIGINT");
    process.once("SIGINT", procKill);
  }
}
function runHookLifecycle(pkg, stage, env3, wd, opts2, cb) {
  hookStat(opts2.dir, stage, (er) => {
    if (er) return cb();
    const cmd = path32.join(opts2.dir, ".hooks", stage);
    runCmd(cmd, pkg, env3, stage, wd, opts2, cb);
  });
}
function makeEnv(data, opts2, prefix, env3) {
  prefix = prefix || "npm_package_";
  if (!env3) {
    env3 = {};
    for (const i2 in process.env) {
      if (!i2.match(/^npm_/) && (!i2.match(/^PATH$/i) || i2 === PATH2)) {
        env3[i2] = process.env[i2];
      }
    }
    if (opts2.production) env3.NODE_ENV = "production";
  } else if (!Object.prototype.hasOwnProperty.call(data, "_lifecycleEnv")) {
    Object.defineProperty(
      data,
      "_lifecycleEnv",
      {
        value: env3,
        enumerable: false
      }
    );
  }
  if (opts2.nodeOptions) env3.NODE_OPTIONS = opts2.nodeOptions;
  for (const i2 in data) {
    if (i2.charAt(0) !== "_") {
      const envKey = (prefix + i2).replace(/[^a-zA-Z0-9_]/g, "_");
      if (!["name", "version", "config", "engines", "bin"].includes(i2) && !prefix.startsWith("npm_package_config_") && !prefix.startsWith("npm_package_engines_") && !prefix.startsWith("npm_package_bin_")) {
        continue;
      }
      if (data[i2] && typeof data[i2] === "object") {
        try {
          JSON.stringify(data[i2]);
          makeEnv(data[i2], opts2, `${envKey}_`, env3);
        } catch (ex) {
          const d = data[i2];
          makeEnv(
            { name: d.name, version: d.version, path: d.path },
            opts2,
            `${envKey}_`,
            env3
          );
        }
      } else {
        env3[envKey] = String(data[i2]);
        env3[envKey] = env3[envKey].includes("\n") ? JSON.stringify(env3[envKey]) : env3[envKey];
      }
    }
  }
  return env3;
}
var import_shell3, import_fslib, import_uid_number, import_byline, import_error24, require2, DEFAULT_NODE_GYP_PATH, hookStatCache, PATH2, running2, queue;
var init_npm_lifecycle = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/npm-lifecycle/1100.0.0-1/12af32ded1ba80b8eb874c4120db44968a573346dc1c1fb484a14ac7ceac0cd9/node_modules/@pnpm/npm-lifecycle/index.js"() {
    init_spawn();
    import_shell3 = __toESM(require_lib15(), 1);
    import_fslib = __toESM(require_lib12(), 1);
    import_uid_number = __toESM(require_uid_number(), 1);
    import_byline = __toESM(require_byline(), 1);
    import_error24 = __toESM(require_lib17(), 1);
    init_extendPath();
    require2 = createRequire4(import.meta.url);
    try {
      DEFAULT_NODE_GYP_PATH = require2.resolve("node-gyp/bin/node-gyp");
    } catch (err) {
    }
    hookStatCache = /* @__PURE__ */ new Map();
    PATH2 = "PATH";
    if (process.platform === "win32") {
      PATH2 = "Path";
      Object.keys(process.env).forEach((e) => {
        if (e.match(/^PATH$/i)) {
          PATH2 = e;
        }
      });
    }
    running2 = false;
    queue = [];
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/shlex/3.0.0/13d6b3aca648429d8aa0bceda2b25f615017e732b0f64fdcb2119ee4549680e9/node_modules/shlex/shlex.js
function quote(s) {
  if (s === "") {
    return "''";
  }
  const unsafeRe = /[^\w@%\-+=:,./]/;
  if (!unsafeRe.test(s)) {
    return s;
  }
  return ("'" + s.replace(/('+)/g, `'"$1"'`) + "'").replace(/^''|''$/g, "");
}
function join(args) {
  if (!Array.isArray(args)) {
    throw new TypeError("args should be an array");
  }
  return args.map(quote).join(" ");
}
var init_shlex = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/shlex/3.0.0/13d6b3aca648429d8aa0bceda2b25f615017e732b0f64fdcb2119ee4549680e9/node_modules/shlex/shlex.js"() {
    "use strict";
  }
});

// ../exec/lifecycle/lib/runLifecycleHook.js
import { existsSync } from "node:fs";
import path33 from "node:path";
function noop3() {
}
async function runLifecycleHook(stage, manifest, opts2) {
  const optional = opts2.optional === true;
  if (opts2.scriptShell != null && typeof opts2.scriptShell === "string" && isWindowsBatchFile(opts2.scriptShell)) {
    throw new PnpmError("ERR_PNPM_INVALID_SCRIPT_SHELL_WINDOWS", "Cannot spawn .bat or .cmd as a script shell.", {
      hint: `The pnpm-workspace.yaml scriptShell option was configured to a .bat or .cmd file. These cannot be used as a script shell reliably.

Please unset the scriptShell option, or configure it to a .exe instead.
`
    });
  }
  const m = { _id: getId(manifest), ...manifest };
  m.scripts = { ...m.scripts };
  switch (stage) {
    case "start":
      if (!m.scripts.start) {
        if (!existsSync("server.js")) {
          throw new PnpmError("NO_SCRIPT_OR_SERVER", "Missing script start or file server.js");
        }
        m.scripts.start = "node server.js";
      }
      break;
    case "install":
      if (!m.scripts.install && !m.scripts.preinstall) {
        checkBindingGyp(opts2.pkgRoot, m.scripts);
      }
      break;
  }
  if (opts2.args?.length && m.scripts?.[stage]) {
    const escapedArgs = (0, import_is_windows4.default)() ? opts2.args.map((arg) => JSON.stringify(arg)).join(" ") : join(opts2.args);
    m.scripts[stage] = `${m.scripts[stage]} ${escapedArgs}`;
  }
  if (m.scripts[stage] === "npx only-allow pnpm" || !m.scripts[stage])
    return false;
  if (opts2.stdio !== "inherit") {
    lifecycleLogger.debug({
      depPath: opts2.depPath,
      optional,
      script: m.scripts[stage],
      stage,
      wd: opts2.pkgRoot
    });
  } else if (!opts2.silent) {
    process.stderr.write(source_default.dim(`$ ${m.scripts[stage]}`) + "\n");
  }
  const logLevel = opts2.stdio !== "inherit" || opts2.silent ? "silent" : void 0;
  await lifecycle(m, stage, opts2.pkgRoot, {
    config: {},
    dir: opts2.rootModulesDir,
    extraBinPaths: opts2.extraBinPaths,
    extraEnv: {
      ...opts2.extraEnv,
      INIT_CWD: opts2.initCwd ?? process.cwd(),
      PNPM_SCRIPT_SRC_DIR: opts2.pkgRoot,
      ...opts2.userAgent ? { npm_config_user_agent: opts2.userAgent } : {}
    },
    log: {
      clearProgress: noop3,
      info: noop3,
      level: logLevel,
      pause: noop3,
      resume: noop3,
      showProgress: noop3,
      silly: npmLog,
      verbose: npmLog,
      warn: (...msg) => {
        globalWarn(msg.join(" "));
      }
    },
    runConcurrently: true,
    scriptsPrependNodePath: opts2.scriptsPrependNodePath,
    scriptShell: opts2.scriptShell,
    shellEmulator: opts2.shellEmulator,
    stdio: opts2.stdio ?? "pipe",
    unsafePerm: opts2.unsafePerm
  });
  return true;
  function npmLog(prefix, logId, stdtype, line) {
    switch (stdtype) {
      case "stdout":
      case "stderr":
        lifecycleLogger.debug({
          depPath: opts2.depPath,
          line: (line ?? 0).toString(),
          stage,
          stdio: stdtype,
          wd: opts2.pkgRoot
        });
        return;
      case "Returned: code:": {
        if (opts2.stdio === "inherit") {
          return;
        }
        const code = line ?? 1;
        lifecycleLogger.debug({
          depPath: opts2.depPath,
          exitCode: code,
          optional,
          stage,
          wd: opts2.pkgRoot
        });
      }
    }
  }
}
function checkBindingGyp(root, scripts) {
  if (existsSync(path33.join(root, "binding.gyp"))) {
    scripts.install = "node-gyp rebuild";
  }
}
function getId(manifest) {
  return `${manifest.name ?? ""}@${manifest.version ?? ""}`;
}
function isWindowsBatchFile(scriptShell) {
  const scriptShellLower = scriptShell.toLowerCase();
  return (0, import_is_windows4.default)() && (scriptShellLower.endsWith(".cmd") || scriptShellLower.endsWith(".bat"));
}
var import_is_windows4;
var init_runLifecycleHook = __esm({
  "../exec/lifecycle/lib/runLifecycleHook.js"() {
    "use strict";
    init_lib6();
    init_lib2();
    init_lib3();
    init_npm_lifecycle();
    init_source2();
    import_is_windows4 = __toESM(require_is_windows(), 1);
    init_shlex();
  }
});

// ../bins/resolver/lib/index.js
import path34 from "node:path";
function pkgOwnsBin(binName, pkgName) {
  return binName === pkgName || BIN_OWNER_OVERRIDES[binName]?.includes(pkgName) === true;
}
async function getBinsFromPackageManifest(manifest, pkgPath) {
  if (manifest.bin) {
    return commandsFromBin(manifest.bin, manifest.name, pkgPath);
  }
  if (manifest.directories?.bin) {
    const binDir = path34.join(pkgPath, manifest.directories.bin);
    if (!isSubdir(pkgPath, binDir)) {
      return [];
    }
    const files = await findFiles(binDir);
    return files.map((file) => ({
      name: path34.basename(file),
      path: path34.join(binDir, file)
    }));
  }
  return [];
}
async function findFiles(dir) {
  try {
    return await glob("**", {
      cwd: dir,
      onlyFiles: true,
      followSymbolicLinks: false,
      expandDirectories: false
    });
  } catch (err) {
    if (err.code !== "ENOENT") {
      throw err;
    }
    return [];
  }
}
function commandsFromBin(bin, pkgName, pkgPath) {
  const cmds = [];
  for (const [commandName, binRelativePath] of typeof bin === "string" ? [[pkgName, bin]] : Object.entries(bin)) {
    const binName = commandName[0] === "@" ? commandName.slice(commandName.indexOf("/") + 1) : commandName;
    if (binName !== encodeURIComponent(binName) && binName !== "$") {
      continue;
    }
    const binPath = path34.join(pkgPath, binRelativePath);
    if (!isSubdir(pkgPath, binPath)) {
      continue;
    }
    cmds.push({ name: binName, path: binPath });
  }
  return cmds;
}
var BIN_OWNER_OVERRIDES;
var init_lib40 = __esm({
  "../bins/resolver/lib/index.js"() {
    "use strict";
    init_is_subdir();
    init_dist3();
    BIN_OWNER_OVERRIDES = {
      npx: ["npm"],
      pn: ["pnpm", "@pnpm/exe"],
      pnpm: ["@pnpm/exe"],
      pnpx: ["pnpm", "@pnpm/exe"],
      pnx: ["pnpm", "@pnpm/exe"]
    };
  }
});

// ../fs/read-modules-dir/lib/index.js
import path35 from "node:path";
import util10 from "node:util";
async function readModulesDir(modulesDir) {
  try {
    return await _readModulesDir(modulesDir);
  } catch (err) {
    if (util10.types.isNativeError(err) && "code" in err && err.code === "ENOENT")
      return null;
    throw err;
  }
}
async function _readModulesDir(modulesDir, scope) {
  const pkgNames = [];
  const parentDir = scope ? path35.join(modulesDir, scope) : modulesDir;
  await Promise.all((await readdir2(parentDir, { withFileTypes: true })).map(async (dir) => {
    if (dir.isFile() || dir.name[0] === ".")
      return;
    if (!scope && dir.name[0] === "@") {
      pkgNames.push(...await _readModulesDir(modulesDir, dir.name));
      return;
    }
    const pkgName = scope ? `${scope}/${dir.name}` : dir.name;
    pkgNames.push(pkgName);
  }));
  return pkgNames;
}
var import_graceful_fs2, readdir2;
var init_lib41 = __esm({
  "../fs/read-modules-dir/lib/index.js"() {
    "use strict";
    import_graceful_fs2 = __toESM(require_graceful_fs(), 1);
    readdir2 = util10.promisify(import_graceful_fs2.default.readdir);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/cmd-extension/1.0.2/d4e95e91e23d5ee84d5767c67145583dee351ce7379d1a67bfa94dd4ea2f593c/node_modules/cmd-extension/index.js
var require_cmd_extension = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/cmd-extension/1.0.2/d4e95e91e23d5ee84d5767c67145583dee351ce7379d1a67bfa94dd4ea2f593c/node_modules/cmd-extension/index.js"(exports2, module2) {
    "use strict";
    var path218 = __require("path");
    var cmdExtension2;
    if (process.env.PATHEXT) {
      cmdExtension2 = process.env.PATHEXT.split(path218.delimiter).find((ext) => ext.toUpperCase() === ".CMD");
    }
    module2.exports = cmdExtension2 || ".cmd";
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/cmd-shim/9.0.3/70fc3fd01bcfda164fa391eb193bc220f3627f040e6e3517b5891192ea2f6ed5/node_modules/@zkochan/cmd-shim/index.js
import path36 from "node:path";
import { promisify as promisify6 } from "node:util";
function ingestOptions(opts2) {
  const opts_ = { ...DEFAULT_OPTIONS2, ...opts2 };
  opts_.fs_ = opts_.fs ? opts_.fs.promises : gfsPromises;
  return opts_;
}
async function cmdShim(src2, to, opts2) {
  const opts_ = ingestOptions(opts2);
  await cmdShim_(src2, to, opts_);
}
function isShimPointingAt(shimContent, src2) {
  return shimContent.includes(`# ${shimTarget(src2)}
`);
}
function rm(path218, opts2) {
  return opts2.fs_.unlink(path218).catch(() => {
  });
}
async function cmdShim_(src2, to, opts2) {
  const srcRuntimeInfo = await searchScriptRuntime(src2, opts2);
  await writeShimsPreCommon(to, opts2);
  return writeAllShims(src2, to, srcRuntimeInfo, opts2);
}
function writeShimsPreCommon(target2, opts2) {
  return opts2.fs_.mkdir(path36.dirname(target2), { recursive: true });
}
function writeAllShims(src2, to, srcRuntimeInfo, opts2) {
  const opts_ = ingestOptions(opts2);
  const generatorAndExts = [{ generator: generateShShim, extension: "" }];
  if (opts_.createCmdFile) {
    generatorAndExts.push({ generator: generateCmdShim, extension: import_cmd_extension.default });
  }
  if (opts_.createPwshFile) {
    generatorAndExts.push({ generator: generatePwshShim, extension: ".ps1" });
  }
  return Promise.all(generatorAndExts.map((generatorAndExt) => writeShim(src2, to + generatorAndExt.extension, srcRuntimeInfo, generatorAndExt.generator, opts_)));
}
function writeShimPre(target2, opts2) {
  return rm(target2, opts2);
}
function writeShimPost(target2, opts2) {
  return chmodShim(target2, opts2);
}
async function searchScriptRuntime(target2, opts2) {
  try {
    const data = await opts2.fs_.readFile(target2, "utf8");
    const firstLine = data.trim().split(/\r*\n/)[0];
    const shebang = firstLine.match(shebangExpr);
    if (!shebang) {
      const targetExtension = path36.extname(target2).toLowerCase();
      const program = extensionToProgramMap.get(targetExtension) || null;
      const additionalArgs = program === "cmd" ? "/C" : "";
      return {
        program,
        additionalArgs
      };
    }
    return {
      program: shebang[1],
      additionalArgs: shebang[2]
    };
  } catch (err) {
    if (!isWindows5 || err.code !== "ENOENT")
      throw err;
    if (await opts2.fs_.stat(`${target2}${getExeExtension()}`)) {
      return {
        program: null,
        additionalArgs: ""
      };
    }
    throw err;
  }
}
function getExeExtension() {
  let cmdExtension2;
  if (process.env.PATHEXT) {
    cmdExtension2 = process.env.PATHEXT.split(path36.delimiter).find((ext) => ext.toLowerCase() === ".exe");
  }
  return cmdExtension2 || ".exe";
}
function escapeMsysCmdSwitches(args) {
  return args.replace(/(^|\s)\/([CcKk])(\s|$)/g, "$1//$2$3");
}
async function writeShim(src2, to, srcRuntimeInfo, generateShimScript, opts2) {
  const defaultArgs = opts2.preserveSymlinks ? "--preserve-symlinks" : "";
  const args = [srcRuntimeInfo.additionalArgs, defaultArgs].filter((arg) => arg).join(" ");
  opts2 = Object.assign({}, opts2, {
    prog: srcRuntimeInfo.program,
    args
  });
  await writeShimPre(to, opts2);
  await opts2.fs_.writeFile(to, generateShimScript(src2, to, opts2), "utf8");
  return writeShimPost(to, opts2);
}
function generateCmdShim(src2, to, opts2) {
  const shTarget = path36.relative(path36.dirname(to), src2);
  let target2 = shTarget.split("/").join("\\");
  const quotedPathToTarget = path36.isAbsolute(target2) ? `"${target2}"` : `"%~dp0\\${target2}"`;
  let longProg;
  let prog = opts2.prog;
  let args = opts2.args || "";
  const nodePath = normalizePathEnvVar(opts2.nodePath).win32;
  const prependToPath = normalizePathEnvVar(opts2.prependToPath).win32;
  if (!prog) {
    prog = quotedPathToTarget;
    args = "";
    target2 = "";
  } else if (prog === "node" && opts2.nodeExecPath) {
    prog = `"${opts2.nodeExecPath}"`;
    target2 = quotedPathToTarget;
  } else {
    longProg = `"%~dp0\\${prog}.exe"`;
    target2 = quotedPathToTarget;
  }
  let progArgs = opts2.progArgs ? `${opts2.progArgs.join(` `)} ` : "";
  let cmd = "@SETLOCAL\r\n";
  if (prependToPath) {
    cmd += `@SET "PATH=${prependToPath}:%PATH%"\r
`;
  }
  if (nodePath) {
    cmd += `@IF NOT DEFINED NODE_PATH (\r
  @SET "NODE_PATH=${nodePath}"\r
) ELSE (\r
  @SET "NODE_PATH=${nodePath};%NODE_PATH%"\r
)\r
`;
  }
  if (longProg) {
    cmd += `@IF EXIST ${longProg} (\r
  ${longProg} ${args} ${target2} ${progArgs}%*\r
) ELSE (\r
  @SET PATHEXT=%PATHEXT:;.JS;=;%\r
  ${prog} ${args} ${target2} ${progArgs}%*\r
)\r
`;
  } else {
    cmd += `@${prog} ${args} ${target2} ${progArgs}%*\r
`;
  }
  return cmd;
}
function generateShShim(src2, to, opts2) {
  let shTarget = path36.relative(path36.dirname(to), src2);
  let shProg = opts2.prog && opts2.prog.split("\\").join("/");
  let shLongProg;
  shTarget = shTarget.split("\\").join("/");
  const quotedPathToTarget = path36.isAbsolute(shTarget) ? `"${shTarget}"` : `"$basedir/${shTarget}"`;
  let args = opts2.args || "";
  if (opts2.prog === "cmd" || opts2.prog === "cmd.exe") {
    args = escapeMsysCmdSwitches(args);
  }
  const shNodePath = normalizePathEnvVar(opts2.nodePath).posix;
  if (!shProg) {
    shProg = quotedPathToTarget;
    args = "";
    shTarget = "";
  } else if (opts2.prog === "node" && opts2.nodeExecPath) {
    shProg = `"${opts2.nodeExecPath}"`;
    shTarget = quotedPathToTarget;
  } else {
    shLongProg = `"$basedir/${opts2.prog}"`;
    shTarget = quotedPathToTarget;
  }
  let progArgs = opts2.progArgs ? `${opts2.progArgs.join(` `)} ` : "";
  let sh = `#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\\\,/,g')")

case \`uname\` in
    *CYGWIN*|*MINGW*|*MSYS*)
        if command -v cygpath > /dev/null 2>&1; then
            basedir=\`cygpath -w "$basedir"\`
        fi
    ;;
esac

`;
  if (opts2.prependToPath) {
    sh += `export PATH="${opts2.prependToPath}:$PATH"
`;
  }
  if (shNodePath) {
    sh += `if [ -z "$NODE_PATH" ]; then
  export NODE_PATH="${shNodePath}"
else
  export NODE_PATH="${shNodePath}:$NODE_PATH"
fi
`;
  }
  if (shLongProg) {
    sh += `if [ -x ${shLongProg} ]; then
  exec ${shLongProg} ${args} ${shTarget} ${progArgs}"$@"
else
  exec ${shProg} ${args} ${shTarget} ${progArgs}"$@"
fi
`;
  } else {
    sh += `exec ${shProg} ${args} ${shTarget} ${progArgs}"$@"
exit $?
`;
  }
  sh += `# ${shimTarget(src2)}
`;
  return sh;
}
function generatePwshShim(src2, to, opts2) {
  let shTarget = path36.relative(path36.dirname(to), src2);
  const shProg = opts2.prog && opts2.prog.split("\\").join("/");
  let pwshProg = shProg && `"${shProg}$exe"`;
  let pwshLongProg;
  shTarget = shTarget.split("\\").join("/");
  const quotedPathToTarget = path36.isAbsolute(shTarget) ? `"${shTarget}"` : `"$basedir/${shTarget}"`;
  let args = opts2.args || "";
  let normalizedNodePathEnvVar = normalizePathEnvVar(opts2.nodePath);
  const nodePath = normalizedNodePathEnvVar.win32;
  const shNodePath = normalizedNodePathEnvVar.posix;
  let normalizedPrependPathEnvVar = normalizePathEnvVar(opts2.prependToPath);
  const prependPath = normalizedPrependPathEnvVar.win32;
  const shPrependPath = normalizedPrependPathEnvVar.posix;
  if (!pwshProg) {
    pwshProg = quotedPathToTarget;
    args = "";
    shTarget = "";
  } else if (opts2.prog === "node" && opts2.nodeExecPath) {
    pwshProg = `"${opts2.nodeExecPath}"`;
    shTarget = quotedPathToTarget;
  } else {
    pwshLongProg = `"$basedir/${opts2.prog}$exe"`;
    shTarget = quotedPathToTarget;
  }
  let progArgs = opts2.progArgs ? `${opts2.progArgs.join(` `)} ` : "";
  let pwsh = `#!/usr/bin/env pwsh
$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent

$exe=""
${nodePath || prependPath ? '$pathsep=":"\n' : ""}${nodePath ? `$env_node_path=$env:NODE_PATH
$new_node_path="${nodePath}"
` : ""}${prependPath ? `$env_path=$env:PATH
$prepend_path="${prependPath}"
` : ""}if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
  # Fix case when both the Windows and Linux builds of Node
  # are installed in the same directory
  $exe=".exe"
${nodePath || prependPath ? '  $pathsep=";"\n' : ""}}`;
  if (shNodePath || shPrependPath) {
    pwsh += ` else {
${shNodePath ? `  $new_node_path="${shNodePath}"
` : ""}${shPrependPath ? `  $prepend_path="${shPrependPath}"
` : ""}}
`;
  }
  if (shNodePath) {
    pwsh += `if ([string]::IsNullOrEmpty($env_node_path)) {
  $env:NODE_PATH=$new_node_path
} else {
  $env:NODE_PATH="$new_node_path$pathsep$env_node_path"
}
`;
  }
  if (opts2.prependToPath) {
    pwsh += `
$env:PATH="$prepend_path$pathsep$env:PATH"
`;
  }
  if (pwshLongProg) {
    pwsh += `
$ret=0
if (Test-Path ${pwshLongProg}) {
  # Support pipeline input
  if ($MyInvocation.ExpectingInput) {
    $input | & ${pwshLongProg} ${args} ${shTarget} ${progArgs}$args
  } else {
    & ${pwshLongProg} ${args} ${shTarget} ${progArgs}$args
  }
  $ret=$LASTEXITCODE
} else {
  # Support pipeline input
  if ($MyInvocation.ExpectingInput) {
    $input | & ${pwshProg} ${args} ${shTarget} ${progArgs}$args
  } else {
    & ${pwshProg} ${args} ${shTarget} ${progArgs}$args
  }
  $ret=$LASTEXITCODE
}
${nodePath ? "$env:NODE_PATH=$env_node_path\n" : ""}${prependPath ? "$env:PATH=$env_path\n" : ""}exit $ret
`;
  } else {
    pwsh += `
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
  $input | & ${pwshProg} ${args} ${shTarget} ${progArgs}$args
} else {
  & ${pwshProg} ${args} ${shTarget} ${progArgs}$args
}
${nodePath ? "$env:NODE_PATH=$env_node_path\n" : ""}${prependPath ? "$env:PATH=$env_path\n" : ""}exit $LASTEXITCODE
`;
  }
  return pwsh;
}
function chmodShim(to, opts2) {
  return opts2.fs_.chmod(to, 493);
}
function normalizePathEnvVar(nodePath) {
  if (!nodePath || !nodePath.length) {
    return {
      win32: "",
      posix: ""
    };
  }
  let split2 = typeof nodePath === "string" ? nodePath.split(path36.delimiter) : Array.from(nodePath);
  let result2 = {};
  for (let i2 = 0; i2 < split2.length; i2++) {
    const win32 = split2[i2].split("/").join("\\");
    const posix2 = isWindows5 ? split2[i2].split("\\").join("/").replace(/^([^:\\/]*):/, (_, $1) => `${isCygwin() ? "/proc/cygdrive" : "/mnt"}/${$1.toLowerCase()}`) : split2[i2];
    result2.win32 = result2.win32 ? `${result2.win32};${win32}` : win32;
    result2.posix = result2.posix ? `${result2.posix}:${posix2}` : posix2;
    result2[i2] = { win32, posix: posix2 };
  }
  return result2;
}
function shimTarget(src2) {
  return `cmd-shim-target=${src2.split("\\").join("/")}`;
}
var import_graceful_fs3, import_cmd_extension, gfsPromises, isWindows5, isCygwin, shebangExpr, DEFAULT_OPTIONS2, extensionToProgramMap;
var init_cmd_shim = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/cmd-shim/9.0.3/70fc3fd01bcfda164fa391eb193bc220f3627f040e6e3517b5891192ea2f6ed5/node_modules/@zkochan/cmd-shim/index.js"() {
    import_graceful_fs3 = __toESM(require_graceful_fs(), 1);
    import_cmd_extension = __toESM(require_cmd_extension(), 1);
    gfsPromises = {
      chmod: promisify6(import_graceful_fs3.default.chmod),
      mkdir: promisify6(import_graceful_fs3.default.mkdir),
      readFile: promisify6(import_graceful_fs3.default.readFile),
      stat: promisify6(import_graceful_fs3.default.stat),
      unlink: promisify6(import_graceful_fs3.default.unlink),
      writeFile: promisify6(import_graceful_fs3.default.writeFile)
    };
    isWindows5 = process.platform === "win32";
    isCygwin = () => isWindows5 && (process.env.TERM === "CYGWIN" || process.env.MSYSTEM !== void 0);
    shebangExpr = /^#!\s*(?:\/usr\/bin\/env(?:\s+-S\s*)?)?\s*([^ \t]+)(.*)$/;
    DEFAULT_OPTIONS2 = {
      // Create PowerShell file by default if the option hasn't been specified
      createPwshFile: true,
      createCmdFile: isWindows5
    };
    extensionToProgramMap = /* @__PURE__ */ new Map([
      [".js", "node"],
      [".cjs", "node"],
      [".mjs", "node"],
      [".cmd", "cmd"],
      [".bat", "cmd"],
      [".ps1", "pwsh"],
      [".sh", "sh"]
    ]);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/bin-links/6.0.2/214b5bc954b4e61c6b3800d2738e2f43b82349e2ff9ae51f98467b4bc5e7aaaa/node_modules/bin-links/lib/fix-bin.js
var require_fix_bin = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/bin-links/6.0.2/214b5bc954b4e61c6b3800d2738e2f43b82349e2ff9ae51f98467b4bc5e7aaaa/node_modules/bin-links/lib/fix-bin.js"(exports2, module2) {
    var {
      chmod,
      open: open5,
      readFile: readFile4
    } = __require("fs/promises");
    var execMode = 511 & ~process.umask();
    var writeFileAtomic9 = require_lib2();
    var isWindowsHashBang = (buf) => buf[0] === "#".charCodeAt(0) && buf[1] === "!".charCodeAt(0) && /^#![^\n]+\r\n/.test(buf.toString());
    var isWindowsHashbangFile = (file) => {
      const FALSE = () => false;
      return open5(file, "r").then((fh) => {
        const buf = Buffer.alloc(2048);
        return fh.read(buf, 0, 2048, 0).then(
          () => {
            const isWHB = isWindowsHashBang(buf);
            return fh.close().then(() => isWHB, () => isWHB);
          },
          // don't leak FD if read() fails
          () => fh.close().then(FALSE, FALSE)
        );
      }, FALSE);
    };
    var dos2Unix = (file) => readFile4(file, "utf8").then((content) => writeFileAtomic9(file, content.replace(/^(#![^\n]+)\r\n/, "$1\n")));
    var fixBin2 = (file, mode = execMode) => chmod(file, mode).then(() => isWindowsHashbangFile(file)).then((isWHB) => isWHB ? dos2Unix(file) : null);
    module2.exports = fixBin2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/symlink-dir/10.0.1/99651a995e6d76e095bc87316473b0e784f9c820abf21dbac80a697d2ae16c64/node_modules/symlink-dir/dist/index.js
import { promises as fs18, symlinkSync, mkdirSync, readlinkSync, unlinkSync } from "fs";
import { types } from "util";
import pathLib from "path";
function resolveSrcOnWinJunction(src2) {
  return `${src2}\\`;
}
function resolveSrcOnTrueSymlink(src2, dest) {
  return pathLib.relative(pathLib.dirname(dest), src2);
}
function symlinkDir(target2, path218, opts2) {
  path218 = betterPathResolve(path218);
  target2 = betterPathResolve(target2);
  if (target2 === path218)
    throw new Error(`Symlink path is the same as the target path (${target2})`);
  return forceSymlink(target2, path218, opts2);
}
function isExistingSymlinkUpToDate(wantedTarget, path218, linkString) {
  const existingTarget = pathLib.isAbsolute(linkString) ? linkString : pathLib.join(pathLib.dirname(path218), linkString);
  return pathLib.relative(wantedTarget, existingTarget) === "";
}
function createTrueSymlinkAsync(target2, path218) {
  return fs18.symlink(resolveSrcOnTrueSymlink(target2, path218), path218, "dir");
}
function createTrueSymlinkSync(target2, path218) {
  symlinkSync(resolveSrcOnTrueSymlink(target2, path218), path218, "dir");
}
function createJunctionAsync(target2, path218) {
  return fs18.symlink(resolveSrcOnWinJunction(target2), path218, "junction");
}
function createJunctionSync(target2, path218) {
  symlinkSync(resolveSrcOnWinJunction(target2), path218, "junction");
}
async function forceSymlink(target2, path218, opts2) {
  let initialErr;
  try {
    if (opts2?.noJunction === true) {
      await createTrueSymlinkAsync(target2, path218);
    } else {
      await createSymlinkAsync(target2, path218);
    }
    return { reused: false };
  } catch (err) {
    switch (err.code) {
      case "ENOENT":
        try {
          await fs18.mkdir(pathLib.dirname(path218), { recursive: true });
        } catch (mkdirError) {
          mkdirError.message = `Error while trying to symlink "${target2}" to "${path218}". The error happened while trying to create the parent directory for the symlink target. Details: ${mkdirError}`;
          throw mkdirError;
        }
        await forceSymlink(target2, path218, opts2);
        return { reused: false };
      case "EEXIST":
      case "EISDIR":
        initialErr = err;
        break;
      default:
        throw err;
    }
  }
  let linkString;
  try {
    linkString = await fs18.readlink(path218);
  } catch (err) {
    if (opts2?.overwrite === false) {
      throw initialErr;
    }
    const parentDir = pathLib.dirname(path218);
    let warn;
    if (opts2?.renameTried) {
      await fs18.unlink(path218);
      warn = `Symlink wanted name was occupied by directory or file. Old entity removed: "${parentDir}${pathLib.sep}{${pathLib.basename(path218)}".`;
    } else {
      const ignore2 = `.ignored_${pathLib.basename(path218)}`;
      try {
        await renameOverwrite(path218, pathLib.join(parentDir, ignore2));
      } catch (error) {
        if (types.isNativeError(error) && "code" in error && error.code === "ENOENT") {
          throw initialErr;
        }
        throw error;
      }
      warn = `Symlink wanted name was occupied by directory or file. Old entity moved: "${parentDir}${pathLib.sep}{${pathLib.basename(path218)} => ${ignore2}".`;
    }
    return {
      ...await forceSymlink(target2, path218, { ...opts2, renameTried: true }),
      warn
    };
  }
  if (isExistingSymlinkUpToDate(target2, path218, linkString)) {
    return { reused: true };
  }
  if (opts2?.overwrite === false) {
    throw initialErr;
  }
  try {
    await fs18.unlink(path218);
  } catch (error) {
    if (!types.isNativeError(error) || !("code" in error) || error.code !== "ENOENT") {
      throw error;
    }
  }
  return await forceSymlink(target2, path218, opts2);
}
var IS_WINDOWS, createSymlinkAsync, createSymlinkSync;
var init_dist4 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/symlink-dir/10.0.1/99651a995e6d76e095bc87316473b0e784f9c820abf21dbac80a697d2ae16c64/node_modules/symlink-dir/dist/index.js"() {
    init_better_path_resolve();
    init_rename_overwrite();
    IS_WINDOWS = process.platform === "win32" || /^(msys|cygwin)$/.test(process.env.OSTYPE);
    if (IS_WINDOWS) {
      createSymlinkAsync = async (target2, path218) => {
        try {
          await createTrueSymlinkAsync(target2, path218);
          createSymlinkSync = createTrueSymlinkSync;
          createSymlinkAsync = createTrueSymlinkAsync;
        } catch (err) {
          if (err.code === "EPERM") {
            await createJunctionAsync(target2, path218);
            createSymlinkSync = createJunctionSync;
            createSymlinkAsync = createJunctionAsync;
          } else {
            throw err;
          }
        }
      };
      createSymlinkSync = (target2, path218) => {
        try {
          createTrueSymlinkSync(target2, path218);
          createSymlinkSync = createTrueSymlinkSync;
          createSymlinkAsync = createTrueSymlinkAsync;
        } catch (err) {
          if (err.code === "EPERM") {
            createJunctionSync(target2, path218);
            createSymlinkSync = createJunctionSync;
            createSymlinkAsync = createJunctionAsync;
          } else {
            throw err;
          }
        }
      };
    } else {
      createSymlinkAsync = createTrueSymlinkAsync;
      createSymlinkSync = createTrueSymlinkSync;
    }
  }
});

// ../bins/linker/lib/getBinNodePaths.js
import { promises as fs19 } from "node:fs";
import path37 from "node:path";
async function getBinNodePaths(target2) {
  const targetDir = path37.dirname(target2);
  let dir;
  try {
    dir = await fs19.realpath(targetDir);
  } catch (err) {
    if (err.code !== "ENOENT") {
      throw err;
    }
    dir = targetDir;
  }
  let currentDir = dir;
  while (true) {
    if (path37.basename(currentDir) === "node_modules") {
      if (path37.basename(path37.dirname(currentDir)) !== "node_modules") {
        const nodeModulesDir = currentDir;
        const result2 = [];
        const rel = path37.relative(nodeModulesDir, dir);
        if (rel) {
          const relSegments = rel.split(path37.sep);
          const pkgDir = relSegments[0].startsWith("@") ? path37.join(nodeModulesDir, relSegments[0], relSegments[1]) : path37.join(nodeModulesDir, relSegments[0]);
          result2.push(path37.join(pkgDir, "node_modules"));
        }
        result2.push(nodeModulesDir);
        return result2;
      }
    }
    const parent = path37.dirname(currentDir);
    if (parent === currentDir)
      break;
    currentDir = parent;
  }
  return [];
}
var init_getBinNodePaths = __esm({
  "../bins/linker/lib/getBinNodePaths.js"() {
    "use strict";
  }
});

// ../bins/linker/lib/index.js
import { existsSync as existsSync2, promises as fs20 } from "node:fs";
import { createRequire as createRequire5 } from "node:module";
import path38 from "node:path";
async function linkBins(modulesDir, binsDir, opts2) {
  const allDeps = await readModulesDir(modulesDir);
  if (allDeps === null)
    return [];
  return linkBinsOfPkgsByAliases(allDeps, binsDir, {
    ...opts2,
    modulesDir
  });
}
async function linkBinsOfPkgsByAliases(depsAliases, binsDir, opts2) {
  const pkgBinOpts = {
    allowExoticManifests: false,
    ...opts2
  };
  const directDependencies = opts2.projectManifest == null ? void 0 : new Set(Object.keys(getAllDependenciesFromManifest2(opts2.projectManifest)));
  const allCmds = unnest_default((await Promise.all(depsAliases.map((alias) => ({
    depDir: path38.resolve(opts2.modulesDir, alias),
    isDirectDependency: directDependencies?.has(alias)
  })).filter(({ depDir }) => !isSubdir(depDir, binsDir)).map(async ({ depDir, isDirectDependency }) => {
    const target2 = (0, import_normalize_path2.default)(depDir);
    const cmds = await getPackageBins(pkgBinOpts, target2);
    return cmds.map((cmd) => ({ ...cmd, isDirectDependency }));
  }))).filter((cmds) => cmds.length));
  const cmdsToLink = directDependencies != null ? preferDirectCmds(allCmds) : allCmds;
  return _linkBins(cmdsToLink, binsDir, opts2);
}
function preferDirectCmds(allCmds) {
  const [directCmds, hoistedCmds] = partition_default((cmd) => cmd.isDirectDependency === true, allCmds);
  const usedDirectCmds = new Set(directCmds.map((directCmd) => directCmd.name));
  return [
    ...directCmds,
    ...hoistedCmds.filter(({ name }) => !usedDirectCmds.has(name))
  ];
}
async function linkBinsOfPackages(pkgs, binsTarget, opts2 = {}) {
  if (pkgs.length === 0)
    return [];
  let allCmds = unnest_default((await Promise.all(pkgs.map(async (pkg) => getPackageBinsFromManifest(pkg.manifest, pkg.location)))).filter((cmds) => cmds.length));
  const excludeBins = opts2.excludeBins;
  if (excludeBins?.size) {
    allCmds = allCmds.filter((cmd) => !excludeBins.has(cmd.name));
  }
  return _linkBins(allCmds, binsTarget, opts2);
}
async function _linkBins(allCmds, binsDir, opts2) {
  if (allCmds.length === 0)
    return [];
  allCmds = deduplicateCommands(allCmds, binsDir);
  await fs20.mkdir(binsDir, { recursive: true });
  const results = await Promise.allSettled(allCmds.map(async (cmd) => linkBin(cmd, binsDir, opts2)));
  for (const result2 of results) {
    if (result2.status === "rejected") {
      throw result2.reason;
    }
  }
  return allCmds.map((cmd) => cmd.pkgName);
}
function deduplicateCommands(commands2, binsDir) {
  const cmdGroups = groupBy_default((cmd) => cmd.name, commands2);
  return Object.values(cmdGroups).filter((group) => group !== void 0 && group.length !== 0).map((group) => resolveCommandConflicts(group, binsDir));
}
function resolveCommandConflicts(group, binsDir) {
  return group.reduce((a2, b) => {
    const [chosen, skipped] = compareCommandsInConflict(a2, b) >= 0 ? [a2, b] : [b, a2];
    logCommandConflict(chosen, skipped, binsDir);
    return chosen;
  });
}
function compareCommandsInConflict(a2, b) {
  const aOwns = pkgOwnsBin(a2.name, a2.pkgName);
  const bOwns = pkgOwnsBin(b.name, b.pkgName);
  if (aOwns && !bOwns)
    return 1;
  if (!aOwns && bOwns)
    return -1;
  if (a2.pkgName !== b.pkgName)
    return a2.pkgName.localeCompare(b.pkgName);
  return import_semver16.default.compare(a2.pkgVersion, b.pkgVersion);
}
function logCommandConflict(chosen, skipped, binsDir) {
  binsConflictLogger.debug({
    binaryName: skipped.name,
    binsDir,
    linkedPkgName: chosen.pkgName,
    linkedPkgVersion: chosen.pkgVersion,
    skippedPkgName: skipped.pkgName,
    skippedPkgVersion: skipped.pkgVersion
  });
}
async function isFromModules(filename) {
  const real = await fs20.realpath(filename);
  return (0, import_normalize_path2.default)(real).includes("/node_modules/");
}
async function getPackageBins(opts2, target2) {
  const manifest = opts2.allowExoticManifests ? await safeReadProjectManifestOnly(target2) : await safeReadPkgJson(target2);
  if (manifest == null) {
    return [];
  }
  if (isEmpty_default(manifest.bin) && !await isFromModules(target2)) {
    opts2.warn(`Package in ${target2} must have a non-empty bin field to get bin linked.`, "EMPTY_BIN");
  }
  if (typeof manifest.bin === "string" && !manifest.name) {
    throw new PnpmError("INVALID_PACKAGE_NAME", `Package in ${target2} must have a name to get bin linked.`);
  }
  return getPackageBinsFromManifest(manifest, target2);
}
async function getPackageBinsFromManifest(manifest, pkgDir) {
  const cmds = await getBinsFromPackageManifest(manifest, pkgDir);
  let nodeExecPath;
  if (manifest.engines?.runtime && runtimeHasNodeDownloaded(manifest.engines.runtime)) {
    const require4 = createRequire5(import.meta.dirname);
    const nodeDir = path38.dirname(require4.resolve("node/CHANGELOG.md", { paths: [pkgDir] }));
    if (nodeDir) {
      nodeExecPath = path38.join(nodeDir, IS_WINDOWS2 ? "node.exe" : "bin/node");
    }
  }
  return cmds.map((cmd) => ({
    ...cmd,
    pkgName: manifest.name,
    pkgVersion: manifest.version,
    makePowerShellShim: POWER_SHELL_IS_SUPPORTED && manifest.name !== "pnpm",
    nodeExecPath
  }));
}
function runtimeHasNodeDownloaded(runtime) {
  if (!Array.isArray(runtime)) {
    return runtime.name === "node" && runtime.onFail === "download";
  }
  return runtime.find(({ name }) => name === "node")?.onFail === "download";
}
async function linkBin(cmd, binsDir, opts2) {
  const externalBinPath = path38.join(binsDir, cmd.name);
  try {
    const stat2 = await fs20.lstat(externalBinPath);
    if (stat2.isSymbolicLink()) {
      const target2 = await fs20.readlink(externalBinPath);
      if (target2 === cmd.path || path38.resolve(binsDir, target2) === path38.resolve(cmd.path)) {
        return;
      }
    } else if (stat2.isFile() && stat2.size < CMD_SHIM_MAX_SIZE) {
      const content = await fs20.readFile(externalBinPath, "utf8");
      if (isShimPointingAt(content, cmd.path)) {
        return;
      }
    }
  } catch {
  }
  if (IS_WINDOWS2) {
    const exePath = path38.join(binsDir, `${cmd.name}${getExeExtension2()}`);
    if (existsSync2(exePath)) {
      globalWarn(`The target bin directory already contains an exe called ${cmd.name}, so removing ${exePath}`);
      await rimraf(exePath);
    }
    if (cmd.name === "node" && cmd.path.toLowerCase().endsWith(".exe")) {
      try {
        await fs20.link(cmd.path, exePath);
      } catch {
        await fs20.copyFile(cmd.path, exePath);
      }
      return;
    }
  } else if (cmd.name === "node") {
    await rimraf(externalBinPath);
    await fs20.symlink(cmd.path, externalBinPath, "file");
    return;
  }
  if (opts2?.preferSymlinkedExecutables && !IS_WINDOWS2 && cmd.nodeExecPath == null) {
    try {
      await symlinkDir(cmd.path, externalBinPath);
      await (0, import_fix_bin.default)(cmd.path, 493);
    } catch (err) {
      if (err.code !== "ENOENT" && err.code !== "EISDIR") {
        throw err;
      }
      globalWarn(`Failed to create bin at ${externalBinPath}. ${err.message}`);
    }
    return;
  }
  try {
    let nodePath;
    if (opts2?.extraNodePaths?.length) {
      const binNodePaths = await getBinNodePaths(cmd.path);
      if (binNodePaths.length === 0) {
        nodePath = opts2.extraNodePaths;
      } else {
        nodePath = [...binNodePaths];
        for (const p of opts2.extraNodePaths) {
          if (!binNodePaths.includes(p)) {
            nodePath.push(p);
          }
        }
      }
    }
    await cmdShim(cmd.path, externalBinPath, {
      createPwshFile: cmd.makePowerShellShim,
      nodePath,
      nodeExecPath: cmd.nodeExecPath
    });
  } catch (err) {
    if (err.code === "ENOENT" || err.code === "EISDIR") {
      globalWarn(`Failed to create bin at ${externalBinPath}. ${err.message}`);
      return;
    }
    if (IS_WINDOWS2 && err.code === "EPERM") {
      globalWarn(`Failed to create bin at ${externalBinPath}. ${err.message}`);
      return;
    }
    throw err;
  }
  if (EXECUTABLE_SHEBANG_SUPPORTED) {
    await (0, import_fix_bin.default)(cmd.path, 493);
  }
}
function getExeExtension2() {
  let cmdExtension2;
  if (process.env.PATHEXT) {
    cmdExtension2 = process.env.PATHEXT.split(path38.delimiter).find((ext) => ext.toUpperCase() === ".EXE");
  }
  return cmdExtension2 ?? ".exe";
}
async function safeReadPkgJson(pkgDir) {
  try {
    return await readPackageJsonFromDir(pkgDir);
  } catch (err) {
    if (err.code === "ENOENT") {
      return null;
    }
    throw err;
  }
}
var import_fix_bin, import_is_windows5, import_normalize_path2, import_semver16, binsConflictLogger, IS_WINDOWS2, EXECUTABLE_SHEBANG_SUPPORTED, POWER_SHELL_IS_SUPPORTED, CMD_SHIM_MAX_SIZE;
var init_lib42 = __esm({
  "../bins/linker/lib/index.js"() {
    "use strict";
    init_lib40();
    init_lib2();
    init_lib41();
    init_lib3();
    init_lib39();
    init_lib9();
    init_lib13();
    init_cmd_shim();
    init_rimraf();
    import_fix_bin = __toESM(require_fix_bin(), 1);
    init_is_subdir();
    import_is_windows5 = __toESM(require_is_windows(), 1);
    import_normalize_path2 = __toESM(require_normalize_path(), 1);
    init_es();
    import_semver16 = __toESM(require_semver2(), 1);
    init_dist4();
    init_getBinNodePaths();
    binsConflictLogger = logger("bins-conflict");
    IS_WINDOWS2 = (0, import_is_windows5.default)();
    EXECUTABLE_SHEBANG_SUPPORTED = !IS_WINDOWS2;
    POWER_SHELL_IS_SUPPORTED = IS_WINDOWS2;
    CMD_SHIM_MAX_SIZE = 4 * 1024;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/run-groups/5.0.0/ade025d576f817d1e895db8353a9b72f0a881735c6b8fe940526f9f8dba2d72f/node_modules/run-groups/lib/index.js
async function runGroups(concurrency, groups) {
  const limitRun = pLimit(concurrency);
  for (const tasks of groups) {
    await Promise.all(tasks.map((task) => limitRun(task)));
  }
}
var init_lib43 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/run-groups/5.0.0/ade025d576f817d1e895db8353a9b72f0a881735c6b8fe940526f9f8dba2d72f/node_modules/run-groups/lib/index.js"() {
    init_p_limit();
  }
});

// ../exec/lifecycle/lib/runLifecycleHooksConcurrently.js
import path39 from "node:path";
async function runLifecycleHooksConcurrently(stages, importers, childConcurrency, opts2) {
  const importersByBuildIndex = /* @__PURE__ */ new Map();
  for (const importer of importers) {
    if (!importersByBuildIndex.has(importer.buildIndex)) {
      importersByBuildIndex.set(importer.buildIndex, [importer]);
    } else {
      importersByBuildIndex.get(importer.buildIndex).push(importer);
    }
  }
  const sortedBuildIndexes = Array.from(importersByBuildIndex.keys()).sort((a2, b) => a2 - b);
  const groups = sortedBuildIndexes.map((buildIndex) => {
    const importers2 = importersByBuildIndex.get(buildIndex);
    return importers2.map(({ manifest, modulesDir, rootDir, stages: importerStages, targetDirs }) => async () => {
      await linkBins(modulesDir, path39.join(modulesDir, ".bin"), {
        extraNodePaths: opts2.extraNodePaths,
        allowExoticManifests: true,
        preferSymlinkedExecutables: opts2.preferSymlinkedExecutables,
        projectManifest: manifest,
        warn: (message) => {
          logger.warn({ message, prefix: rootDir });
        }
      });
      const runLifecycleHookOpts = {
        ...opts2,
        depPath: rootDir,
        pkgRoot: rootDir,
        rootModulesDir: modulesDir
      };
      let isBuilt = false;
      for (const stage of importerStages ?? stages) {
        if (await runLifecycleHook(stage, manifest, runLifecycleHookOpts)) {
          isBuilt = true;
        }
      }
      if (targetDirs == null || targetDirs.length === 0 || !isBuilt)
        return;
      const filesResponse = await fetchFromDir(rootDir, { resolveSymlinks: opts2.resolveSymlinksInInjectedDirs });
      await Promise.all(targetDirs.map(async (targetDir) => opts2.storeController.importPackage(targetDir, {
        filesResponse: {
          resolvedFrom: "local-dir",
          ...filesResponse
        },
        force: false,
        keepModulesDir: true
      })));
    });
  });
  await runGroups(childConcurrency, groups);
}
var init_runLifecycleHooksConcurrently = __esm({
  "../exec/lifecycle/lib/runLifecycleHooksConcurrently.js"() {
    "use strict";
    init_lib42();
    init_lib38();
    init_lib3();
    init_lib43();
    init_runLifecycleHook();
  }
});

// ../exec/lifecycle/lib/index.js
function makeNodeRequireOption(modulePath) {
  let { NODE_OPTIONS } = process.env;
  NODE_OPTIONS = `${NODE_OPTIONS ?? ""} --require=${modulePath}`.trim();
  return { NODE_OPTIONS };
}
async function runPostinstallHooks(opts2) {
  const pkg = await safeReadPackageJsonFromDir(opts2.pkgRoot);
  if (pkg == null)
    return false;
  if (pkg.scripts == null) {
    pkg.scripts = {};
  }
  if (pkg.scripts.preinstall) {
    await runLifecycleHook("preinstall", pkg, opts2);
  }
  const executedAnInstallScript = await runLifecycleHook("install", pkg, opts2);
  if (pkg.scripts.postinstall) {
    await runLifecycleHook("postinstall", pkg, opts2);
  }
  return pkg.scripts.preinstall != null || executedAnInstallScript || pkg.scripts.postinstall != null;
}
var init_lib44 = __esm({
  "../exec/lifecycle/lib/index.js"() {
    "use strict";
    init_lib39();
    init_runLifecycleHook();
    init_runLifecycleHooksConcurrently();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@lazy-node/types-path/1.0.3/03288e32e16c8dda7286cbd033b4ae44a316208d6d3836ccdfa2fe778a3c85bb/node_modules/@lazy-node/types-path/index.js
var require_types_path = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@lazy-node/types-path/1.0.3/03288e32e16c8dda7286cbd033b4ae44a316208d6d3836ccdfa2fe778a3c85bb/node_modules/@lazy-node/types-path/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.rePathSepSlashAll = exports2.ORIGIN_KEY = exports2.EnumPathDelimiter = exports2.EnumPathSep = exports2.EnumPathPlatformExtra = exports2.EnumPathPlatformOrigin = void 0;
    exports2.makeRePathSepSlash = makeRePathSepSlash;
    var EnumPathPlatformOrigin;
    (function(EnumPathPlatformOrigin2) {
      EnumPathPlatformOrigin2["win32"] = "win32";
      EnumPathPlatformOrigin2["posix"] = "posix";
    })(EnumPathPlatformOrigin || (exports2.EnumPathPlatformOrigin = EnumPathPlatformOrigin = {}));
    var EnumPathPlatformExtra;
    (function(EnumPathPlatformExtra2) {
      EnumPathPlatformExtra2["upath"] = "upath";
      EnumPathPlatformExtra2["node"] = "node";
    })(EnumPathPlatformExtra || (exports2.EnumPathPlatformExtra = EnumPathPlatformExtra = {}));
    var EnumPathSep;
    (function(EnumPathSep2) {
      EnumPathSep2["win32"] = "\\";
      EnumPathSep2["posix"] = "/";
      EnumPathSep2["backslash"] = "\\";
      EnumPathSep2["forwardslash"] = "/";
      EnumPathSep2["slash"] = "/";
    })(EnumPathSep || (exports2.EnumPathSep = EnumPathSep = {}));
    var EnumPathDelimiter;
    (function(EnumPathDelimiter2) {
      EnumPathDelimiter2["win32"] = ";";
      EnumPathDelimiter2["posix"] = ":";
    })(EnumPathDelimiter || (exports2.EnumPathDelimiter = EnumPathDelimiter = {}));
    exports2.ORIGIN_KEY = /* @__PURE__ */ Symbol.for("_origin");
    exports2.rePathSepSlashAll = makeRePathSepSlash();
    function makeRePathSepSlash(options = {}) {
      let source = options.sep && !options.all ? options.sep === "\\" ? `\\\\` : "/" : "[/\\\\]";
      if (options.repeat) {
        source = `${source}${options.repeat > 0 ? `{${options.repeat}}` : "+"}`;
      }
      if (options.match) {
        source = `(${source})`;
      }
      if (options.matchFull) {
        source = `^${source}$`;
      }
      return new RegExp(source, !options.global ? "" : "g");
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/upath2/3.1.23/52aa577e565a8c1b151ee0a42a19297d1e3705a3dc67bc3e033593694e0afad5/node_modules/upath2/lib/type.js
var require_type2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/upath2/3.1.23/52aa577e565a8c1b151ee0a42a19297d1e3705a3dc67bc3e033593694e0afad5/node_modules/upath2/lib/type.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.ORIGIN_KEY = void 0;
    var types_path_1 = require_types_path();
    Object.defineProperty(exports2, "ORIGIN_KEY", { enumerable: true, get: function() {
      return types_path_1.ORIGIN_KEY;
    } });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/path-is-network-drive/1.0.24/a93be0c44cf1b8a62c1899c7e3097d21c9b9143bfe8af63b44b86e388865bd93/node_modules/path-is-network-drive/index.js
var require_path_is_network_drive = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/path-is-network-drive/1.0.24/a93be0c44cf1b8a62c1899c7e3097d21c9b9143bfe8af63b44b86e388865bd93/node_modules/path-is-network-drive/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.pathIsNetworkDrive = pathIsNetworkDrive;
    exports2.matchNetworkDriveRoot = matchNetworkDriveRoot;
    exports2.matchNetworkDrive02 = matchNetworkDrive02;
    function pathIsNetworkDrive(input) {
      return /^\\\\[^/\\]/.test(input);
    }
    function matchNetworkDriveRoot(input) {
      return input.match(/^\\\\([^\\/]+)[\\/]?$/);
    }
    function matchNetworkDrive02(input) {
      return input.match(/^\\\\([^\\/]+)[\\/]([^\\/]+)[\\/]?$/);
    }
    exports2.default = pathIsNetworkDrive;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/path-strip-sep/1.0.21/49eea8ad5a5efd3cca1c3fe4f834c18b0c005d5b0dfebebda9f5626e36caaec1/node_modules/path-strip-sep/index.js
var require_path_strip_sep = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/path-strip-sep/1.0.21/49eea8ad5a5efd3cca1c3fe4f834c18b0c005d5b0dfebebda9f5626e36caaec1/node_modules/path-strip-sep/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.pathStripSep = pathStripSep;
    function pathStripSep(input) {
      return input.replace(/([^/\\:])[/\\]+$/, "$1").replace(/(^[/\\])[/\\]{2,}$/, "$1");
    }
    exports2.default = pathStripSep;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/upath2/3.1.23/52aa577e565a8c1b151ee0a42a19297d1e3705a3dc67bc3e033593694e0afad5/node_modules/upath2/lib/util.js
var require_util4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/upath2/3.1.23/52aa577e565a8c1b151ee0a42a19297d1e3705a3dc67bc3e033593694e0afad5/node_modules/upath2/lib/util.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2._strip_sep = void 0;
    exports2._replace_sep = _replace_sep;
    exports2.getStatic = getStatic;
    exports2.defaults = defaults4;
    var path_is_network_drive_1 = require_path_is_network_drive();
    var path_strip_sep_1 = require_path_strip_sep();
    Object.defineProperty(exports2, "_strip_sep", { enumerable: true, get: function() {
      return path_strip_sep_1.pathStripSep;
    } });
    function _replace_sep(who, input) {
      let sep2 = who.sep;
      if (who.name !== "posix" && (0, path_is_network_drive_1.pathIsNetworkDrive)(input)) {
        sep2 = "\\";
        input = sep2 + sep2 + input.slice(2);
      }
      input = input.replace(/[/\\]/g, sep2);
      return input;
    }
    function getStatic(who) {
      return who.__proto__.constructor;
    }
    function defaults4(destination, ...input) {
      destination = destination || {};
      input.forEach((defaults5) => {
        for (const key in defaults5) {
          if (defaults5.hasOwnProperty(key) && !destination.hasOwnProperty(key)) {
            destination[key] = defaults5[key];
          }
        }
      });
      return destination;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/upath2/3.1.23/52aa577e565a8c1b151ee0a42a19297d1e3705a3dc67bc3e033593694e0afad5/node_modules/upath2/lib/fix.js
var require_fix = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/upath2/3.1.23/52aa577e565a8c1b151ee0a42a19297d1e3705a3dc67bc3e033593694e0afad5/node_modules/upath2/lib/fix.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2._fix_special = _fix_special;
    function _fix_special(who, path218, returnOldIfNoPreset) {
      var _a;
      let m;
      if ((_a = m = path218 === null || path218 === void 0 ? void 0 : path218.match(/^(\w+:)(?:\.[\/\\]?)?$/)) === null || _a === void 0 ? void 0 : _a.length) {
        return m[1] + who.sep;
      } else if (returnOldIfNoPreset === true) {
        return path218;
      }
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/upath2/3.1.23/52aa577e565a8c1b151ee0a42a19297d1e3705a3dc67bc3e033593694e0afad5/node_modules/upath2/core.js
var require_core4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/upath2/3.1.23/52aa577e565a8c1b151ee0a42a19297d1e3705a3dc67bc3e033593694e0afad5/node_modules/upath2/core.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.fn = exports2.upath = exports2.win32 = exports2.posix = exports2.PathWrap = void 0;
    exports2._this_origin = _this_origin;
    var tslib_12 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
    var path_1 = tslib_12.__importDefault(__require("path"));
    var type_1 = require_type2();
    var util_1 = require_util4();
    var path_is_network_drive_1 = require_path_is_network_drive();
    var fix_1 = require_fix();
    var PathWrap = class {
      /**
       * 構造函數
       *
       * @param {IPath} path 要包裝的路徑庫
       * @param {string} id 實例ID（'posix'、'win32' 或 'upath'）
       */
      constructor(path218, id) {
        var _a;
        this.sep = "/";
        this.node = path_1.default;
        let _static = (0, util_1.getStatic)(this);
        this.fn = (0, util_1.defaults)(this.__proto__, _static.fn, path218);
        this.delimiter = (_a = path218.delimiter) !== null && _a !== void 0 ? _a : _static.fn.delimiter;
        [
          "join",
          "normalize",
          "relative",
          "resolve",
          "parse",
          "format",
          "basename",
          "dirname",
          "extname",
          "isAbsolute",
          "toNamespacedPath"
        ].forEach((prop3) => {
          this[prop3] = this[prop3].bind(this);
        });
        delete this[id];
        Object.defineProperty(this, type_1.ORIGIN_KEY, {
          enumerable: false,
          value: path218
        });
        this.fn[id] = this[id] = this;
        this.name = id;
      }
      /**
       * 連接多個路徑片段
       *
       * @template T 第一個路徑類型
       * @template U 後續路徑類型
       * @param {T} path 第一個路徑
       * @param {...U[]} paths 後續路徑
       * @returns {string} 連接後的路徑
       */
      join(path218, ...paths3) {
        path218 = (0, fix_1._fix_special)(this, path218, true);
        return (0, util_1._replace_sep)(this, _this_origin(this).join(path218, ...paths3));
      }
      /**
       * 規範化路徑
       *
       * @template T 路徑類型
       * @param {T} path 要規範化的路徑
       * @returns {string} 規範化後的路徑
       */
      normalize(path218) {
        let ret2 = (0, fix_1._fix_special)(this, path218);
        if (ret2 === null || ret2 === void 0 ? void 0 : ret2.length) {
          return ret2;
        }
        return (0, util_1._replace_sep)(this, _this_origin(this).normalize(path218));
      }
      /**
       * 計算相對路徑
       *
       * @template T 源路徑類型
       * @template U 目標路徑類型
       * @param {T} from 源路徑
       * @param {U} to 目標路徑
       * @returns {string} 相對路徑
       */
      relative(from5, to) {
        from5 = (0, fix_1._fix_special)(this, from5, true);
        to = (0, fix_1._fix_special)(this, to, true);
        return (0, util_1._replace_sep)(this, _this_origin(this).relative(from5.toString(), to.toString()));
      }
      /**
       * 解析路徑
       *
       * @template T 第一個路徑類型
       * @template U 後續路徑類型
       * @param {T} path 第一個路徑
       * @param {...U[]} paths 後續路徑
       * @returns {string} 解析後的路徑
       */
      resolve(path218, ...paths3) {
        path218 = (0, fix_1._fix_special)(this, path218, true);
        return (0, util_1._replace_sep)(this, _this_origin(this).resolve(path218, ...paths3));
      }
      /**
       * 解析路徑物件
       *
       * @template T 路徑類型
       * @param {T} path 要解析的路徑
       * @returns {ParsedPath} 解析後的路徑物件
       */
      parse(path218) {
        path218 = this.normalize(path218);
        let ret2 = _this_origin(this).parse(path218);
        ret2.root = (0, util_1._replace_sep)(this, ret2.root);
        ret2.dir = (0, util_1._replace_sep)(this, ret2.dir);
        return ret2;
      }
      /**
       * 格式化路徑物件
       *
       * @template T 路徑物件類型
       * @param {T} pathObject 要格式化的路徑物件
       * @returns {string} 格式化後的路徑
       */
      format(pathObject) {
        return (0, util_1._replace_sep)(this, _this_origin(this).format(pathObject));
      }
      // ---------
      /**
       * 獲取路徑的最後一個部分
       *
       * @template T 路徑類型
       * @template U 擴展名類型
       * @param {T} path 路徑
       * @param {U} [ext] 要移除的擴展名
       * @returns {string} 最後一部分
       */
      basename(path218, ext) {
        return _this_origin(this).basename(path218, ext);
      }
      /**
       * 獲取路徑的目錄部分
       *
       * @template T 路徑類型
       * @param {T} path 路徑
       * @returns {string} 目錄部分
       */
      dirname(path218) {
        let r;
        if (false) {
          if ((0, path_is_network_drive_1.matchNetworkDriveRoot)(path218)) {
            r = path218;
          } else {
            let m = (0, path_is_network_drive_1.matchNetworkDrive02)(path218);
            if (m === null || m === void 0 ? void 0 : m.length) {
              return `\\\\${m[1]}`;
            }
            r = _this_origin(this).dirname(path218);
          }
        } else {
          r = _this_origin(this).dirname(path218);
        }
        if (r.length > 1 && !/^\w:[/\\]$/.test(r)) {
          r = (0, util_1._strip_sep)(r);
        }
        return (0, util_1._replace_sep)(this, r);
      }
      /**
       * 獲取路徑的擴展名
       *
       * @template T 路徑類型
       * @param {T} path 路徑
       * @returns {string} 擴展名
       */
      extname(path218) {
        return _this_origin(this).extname(path218);
      }
      /**
       * 檢查路徑是否為絕對路徑
       *
       * @template T 路徑類型
       * @param {T} path 路徑
       * @returns {boolean} 是否為絕對路徑
       */
      isAbsolute(path218) {
        return _this_origin(this).isAbsolute(path218);
      }
      /**
       * 轉換為命名空間路徑
       *
       * @param {string} path 路徑
       * @returns {string} 命名空間路徑
       */
      toNamespacedPath(path218) {
        return _this_origin(this).toNamespacedPath(path218);
      }
    };
    exports2.PathWrap = PathWrap;
    (function(PathWrap2) {
      let __proto__ = {};
      for (let i2 in Object.getOwnPropertyDescriptors(PathWrap2.prototype)) {
        __proto__[i2] = PathWrap2.prototype[i2];
      }
      PathWrap2.fn = __proto__;
      delete PathWrap2.fn.name;
      PathWrap2.fn["fn"] = PathWrap2.fn;
      PathWrap2.fn.sep = "/";
      PathWrap2.prototype.fn = PathWrap2.fn;
    })(PathWrap || (exports2.PathWrap = PathWrap = {}));
    exports2.posix = new PathWrap(path_1.default.posix, "posix");
    exports2.win32 = new PathWrap(path_1.default.win32, "win32");
    var _upath = new PathWrap(path_1.default, "upath");
    exports2.upath = _upath;
    exports2.upath.PathWrap = PathWrap;
    exports2.fn = PathWrap.fn = exports2.upath.fn;
    path_1.default.upath = exports2.upath;
    for (const [key, lib] of [
      ["win32", exports2.win32],
      ["posix", exports2.posix],
      ["upath", exports2.upath],
      ["default", exports2.upath],
      ["node", path_1.default]
    ]) {
      delete exports2.win32.fn[key];
      delete exports2.posix.fn[key];
      delete exports2.upath.fn[key];
      delete exports2.win32[key];
      delete exports2.posix[key];
      delete exports2.upath[key];
      exports2.win32[key] = exports2.posix[key] = exports2.upath[key] = lib;
    }
    Object.defineProperty(exports2.upath, "__esModule", { value: true });
    exports2.default = exports2.upath;
    function _this_origin(who) {
      if (who[type_1.ORIGIN_KEY]) {
        return who[type_1.ORIGIN_KEY];
      } else if (who === exports2.upath) {
        return path_1.default;
      } else if (who === exports2.win32) {
        return path_1.default.win32;
      } else if (who === exports2.posix) {
        return path_1.default.posix;
      }
      throw new TypeError(`this not PathWrap`);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/upath2/3.1.23/52aa577e565a8c1b151ee0a42a19297d1e3705a3dc67bc3e033593694e0afad5/node_modules/upath2/lib/fs.js
var require_fs6 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/upath2/3.1.23/52aa577e565a8c1b151ee0a42a19297d1e3705a3dc67bc3e033593694e0afad5/node_modules/upath2/lib/fs.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.vaildNameEntry = vaildNameEntry;
    exports2.filterNameEntry = filterNameEntry;
    var core_1 = require_core4();
    var r_vaild = /[\\\?\/\!'"\:\<\>\*\|]+/g;
    function vaildNameEntry(name) {
      return r_vaild.test(name.toString()) ? void 0 : name;
    }
    function filterNameEntry(name) {
      return name.toString().replace(r_vaild, "");
    }
    core_1.fn.vaildNameEntry = vaildNameEntry;
    core_1.fn.filterNameEntry = filterNameEntry;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/upath2/3.1.23/52aa577e565a8c1b151ee0a42a19297d1e3705a3dc67bc3e033593694e0afad5/node_modules/upath2/index.js
var require_upath2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/upath2/3.1.23/52aa577e565a8c1b151ee0a42a19297d1e3705a3dc67bc3e033593694e0afad5/node_modules/upath2/index.js"(exports2, module2) {
    "use strict";
    var core_1 = require_core4();
    require_fs6();
    module2.exports = core_1.upath;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yocto-queue/0.1.0/4c43f079397c00ac34489fcc138889c92b389bfbfd9885817a164db2f94bca55/node_modules/yocto-queue/index.js
var require_yocto_queue = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yocto-queue/0.1.0/4c43f079397c00ac34489fcc138889c92b389bfbfd9885817a164db2f94bca55/node_modules/yocto-queue/index.js"(exports2, module2) {
    var Node2 = class {
      /// value;
      /// next;
      constructor(value) {
        this.value = value;
        this.next = void 0;
      }
    };
    var Queue3 = class {
      // TODO: Use private class fields when targeting Node.js 12.
      // #_head;
      // #_tail;
      // #_size;
      constructor() {
        this.clear();
      }
      enqueue(value) {
        const node = new Node2(value);
        if (this._head) {
          this._tail.next = node;
          this._tail = node;
        } else {
          this._head = node;
          this._tail = node;
        }
        this._size++;
      }
      dequeue() {
        const current = this._head;
        if (!current) {
          return;
        }
        this._head = this._head.next;
        this._size--;
        return current.value;
      }
      clear() {
        this._head = void 0;
        this._tail = void 0;
        this._size = 0;
      }
      get size() {
        return this._size;
      }
      *[Symbol.iterator]() {
        let current = this._head;
        while (current) {
          yield current.value;
          current = current.next;
        }
      }
    };
    module2.exports = Queue3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/p-limit/3.1.0/fa96fc3e665099292f8a1d3459fe28356450e99b29f7900cedee53902679fc6b/node_modules/p-limit/index.js
var require_p_limit = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/p-limit/3.1.0/fa96fc3e665099292f8a1d3459fe28356450e99b29f7900cedee53902679fc6b/node_modules/p-limit/index.js"(exports2, module2) {
    "use strict";
    var Queue3 = require_yocto_queue();
    var pLimit3 = (concurrency) => {
      if (!((Number.isInteger(concurrency) || concurrency === Infinity) && concurrency > 0)) {
        throw new TypeError("Expected `concurrency` to be a number from 1 and up");
      }
      const queue2 = new Queue3();
      let activeCount = 0;
      const next2 = () => {
        activeCount--;
        if (queue2.size > 0) {
          queue2.dequeue()();
        }
      };
      const run = async (fn, resolve3, ...args) => {
        activeCount++;
        const result2 = (async () => fn(...args))();
        resolve3(result2);
        try {
          await result2;
        } catch {
        }
        next2();
      };
      const enqueue = (fn, resolve3, ...args) => {
        queue2.enqueue(run.bind(null, fn, resolve3, ...args));
        (async () => {
          await Promise.resolve();
          if (activeCount < concurrency && queue2.size > 0) {
            queue2.dequeue()();
          }
        })();
      };
      const generator = (fn, ...args) => new Promise((resolve3) => {
        enqueue(fn, resolve3, ...args);
      });
      Object.defineProperties(generator, {
        activeCount: {
          get: () => activeCount
        },
        pendingCount: {
          get: () => queue2.size
        },
        clearQueue: {
          value: () => {
            queue2.clear();
          }
        }
      });
      return generator;
    };
    module2.exports = pLimit3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/p-locate/5.0.0/08fc2f1ccece64042b1517dfe3d1518af686d92175d00f96598ee32913c9a3d3/node_modules/p-locate/index.js
var require_p_locate = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/p-locate/5.0.0/08fc2f1ccece64042b1517dfe3d1518af686d92175d00f96598ee32913c9a3d3/node_modules/p-locate/index.js"(exports2, module2) {
    "use strict";
    var pLimit3 = require_p_limit();
    var EndError2 = class extends Error {
      constructor(value) {
        super();
        this.value = value;
      }
    };
    var testElement2 = async (element, tester) => tester(await element);
    var finder2 = async (element) => {
      const values = await Promise.all(element);
      if (values[1] === true) {
        throw new EndError2(values[0]);
      }
      return false;
    };
    var pLocate2 = async (iterable, tester, options) => {
      options = {
        concurrency: Infinity,
        preserveOrder: true,
        ...options
      };
      const limit = pLimit3(options.concurrency);
      const items = [...iterable].map((element) => [element, limit(testElement2, element, tester)]);
      const checkLimit = pLimit3(options.preserveOrder ? 1 : Infinity);
      try {
        await Promise.all(items.map((element) => checkLimit(finder2, element)));
      } catch (error) {
        if (error instanceof EndError2) {
          return error.value;
        }
        throw error;
      }
    };
    module2.exports = pLocate2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/locate-path/6.0.0/cfe3170135e7e8af5471ebdc6c4ca55d1bffa9650758890ca82965755749c031/node_modules/locate-path/index.js
var require_locate_path = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/locate-path/6.0.0/cfe3170135e7e8af5471ebdc6c4ca55d1bffa9650758890ca82965755749c031/node_modules/locate-path/index.js"(exports2, module2) {
    "use strict";
    var path218 = __require("path");
    var fs111 = __require("fs");
    var { promisify: promisify8 } = __require("util");
    var pLocate2 = require_p_locate();
    var fsStat = promisify8(fs111.stat);
    var fsLStat = promisify8(fs111.lstat);
    var typeMappings2 = {
      directory: "isDirectory",
      file: "isFile"
    };
    function checkType2({ type: type4 }) {
      if (type4 in typeMappings2) {
        return;
      }
      throw new Error(`Invalid type specified: ${type4}`);
    }
    var matchType2 = (type4, stat2) => type4 === void 0 || stat2[typeMappings2[type4]]();
    module2.exports = async (paths3, options) => {
      options = {
        cwd: process.cwd(),
        type: "file",
        allowSymlinks: true,
        ...options
      };
      checkType2(options);
      const statFn = options.allowSymlinks ? fsStat : fsLStat;
      return pLocate2(paths3, async (path_) => {
        try {
          const stat2 = await statFn(path218.resolve(options.cwd, path_));
          return matchType2(options.type, stat2);
        } catch {
          return false;
        }
      }, options);
    };
    module2.exports.sync = (paths3, options) => {
      options = {
        cwd: process.cwd(),
        allowSymlinks: true,
        type: "file",
        ...options
      };
      checkType2(options);
      const statFn = options.allowSymlinks ? fs111.statSync : fs111.lstatSync;
      for (const path_ of paths3) {
        try {
          const stat2 = statFn(path218.resolve(options.cwd, path_));
          if (matchType2(options.type, stat2)) {
            return path_;
          }
        } catch {
        }
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/path-exists/4.0.0/cac00b7570ea3af629ef9cea69fd59c8ad3d1562ec41ab0cf0ad193e511f229c/node_modules/path-exists/index.js
var require_path_exists2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/path-exists/4.0.0/cac00b7570ea3af629ef9cea69fd59c8ad3d1562ec41ab0cf0ad193e511f229c/node_modules/path-exists/index.js"(exports2, module2) {
    "use strict";
    var fs111 = __require("fs");
    var { promisify: promisify8 } = __require("util");
    var pAccess = promisify8(fs111.access);
    module2.exports = async (path218) => {
      try {
        await pAccess(path218);
        return true;
      } catch (_) {
        return false;
      }
    };
    module2.exports.sync = (path218) => {
      try {
        fs111.accessSync(path218);
        return true;
      } catch (_) {
        return false;
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/find-up/5.0.0/a6ffdd9962f1028194cab99ad8a1fad1c7ec80787c1db8993b79dd275223c7a0/node_modules/find-up/index.js
var require_find_up = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/find-up/5.0.0/a6ffdd9962f1028194cab99ad8a1fad1c7ec80787c1db8993b79dd275223c7a0/node_modules/find-up/index.js"(exports2, module2) {
    "use strict";
    var path218 = __require("path");
    var locatePath2 = require_locate_path();
    var pathExists3 = require_path_exists2();
    var stop = /* @__PURE__ */ Symbol("findUp.stop");
    module2.exports = async (name, options = {}) => {
      let directory = path218.resolve(options.cwd || "");
      const { root } = path218.parse(directory);
      const paths3 = [].concat(name);
      const runMatcher = async (locateOptions) => {
        if (typeof name !== "function") {
          return locatePath2(paths3, locateOptions);
        }
        const foundPath = await name(locateOptions.cwd);
        if (typeof foundPath === "string") {
          return locatePath2([foundPath], locateOptions);
        }
        return foundPath;
      };
      while (true) {
        const foundPath = await runMatcher({ ...options, cwd: directory });
        if (foundPath === stop) {
          return;
        }
        if (foundPath) {
          return path218.resolve(directory, foundPath);
        }
        if (directory === root) {
          return;
        }
        directory = path218.dirname(directory);
      }
    };
    module2.exports.sync = (name, options = {}) => {
      let directory = path218.resolve(options.cwd || "");
      const { root } = path218.parse(directory);
      const paths3 = [].concat(name);
      const runMatcher = (locateOptions) => {
        if (typeof name !== "function") {
          return locatePath2.sync(paths3, locateOptions);
        }
        const foundPath = name(locateOptions.cwd);
        if (typeof foundPath === "string") {
          return locatePath2.sync([foundPath], locateOptions);
        }
        return foundPath;
      };
      while (true) {
        const foundPath = runMatcher({ ...options, cwd: directory });
        if (foundPath === stop) {
          return;
        }
        if (foundPath) {
          return path218.resolve(directory, foundPath);
        }
        if (directory === root) {
          return;
        }
        directory = path218.dirname(directory);
      }
    };
    module2.exports.exists = pathExists3;
    module2.exports.sync.exists = pathExists3.sync;
    module2.exports.stop = stop;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/pkg-dir/5.0.0/200336ca495d7cdcd39e85a5e9da0aedfb76c3467a5a3ddf94a77243abb27903/node_modules/pkg-dir/index.js
var require_pkg_dir = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/pkg-dir/5.0.0/200336ca495d7cdcd39e85a5e9da0aedfb76c3467a5a3ddf94a77243abb27903/node_modules/pkg-dir/index.js"(exports2, module2) {
    "use strict";
    var path218 = __require("path");
    var findUp3 = require_find_up();
    var pkgDir = async (cwd) => {
      const filePath = await findUp3("package.json", { cwd });
      return filePath && path218.dirname(filePath);
    };
    module2.exports = pkgDir;
    module2.exports.sync = (cwd) => {
      const filePath = findUp3.sync("package.json", { cwd });
      return filePath && path218.dirname(filePath);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/find-yarn-workspace-root2/1.2.53/91205d4ce6f81367ebd924bf9ba5b74ba0b551358644b337c9b532df961a51b9/node_modules/find-yarn-workspace-root2/core.js
var require_core5 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/find-yarn-workspace-root2/1.2.53/91205d4ce6f81367ebd924bf9ba5b74ba0b551358644b337c9b532df961a51b9/node_modules/find-yarn-workspace-root2/core.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.findWorkspaceRoot = findWorkspaceRoot;
    exports2.checkWorkspaces = checkWorkspaces;
    exports2.isMatchWorkspaces = isMatchWorkspaces;
    exports2.extractWorkspaces = extractWorkspaces;
    exports2.readPackageJSON = readPackageJSON;
    var tslib_12 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
    var upath2_1 = require_upath2();
    var pkg_dir_1 = tslib_12.__importDefault(require_pkg_dir());
    var fs_1 = __require("fs");
    var micromatch_12 = tslib_12.__importDefault(require_micromatch());
    function findWorkspaceRoot(initial) {
      if (!initial) {
        initial = process.cwd();
      }
      let _pkg = pkg_dir_1.default.sync(initial);
      if (!_pkg) {
        return null;
      }
      initial = (0, upath2_1.normalize)(_pkg);
      let previous = null;
      let current = initial;
      do {
        const manifest = readPackageJSON(current);
        const workspaces = extractWorkspaces(manifest);
        let { done, found } = checkWorkspaces(current, initial);
        if (done) {
          return found;
        }
        previous = current;
        current = (0, upath2_1.dirname)(current);
      } while (current !== previous);
      return null;
    }
    function checkWorkspaces(current, initial) {
      const manifest = readPackageJSON(current);
      const workspaces = extractWorkspaces(manifest);
      let done = false;
      let found;
      let relativePath;
      if (workspaces) {
        done = true;
        relativePath = (0, upath2_1.relative)(current, initial);
        if (relativePath === "" || isMatchWorkspaces(relativePath, workspaces)) {
          found = current;
        } else {
          found = null;
        }
      }
      return {
        done,
        found,
        relativePath
      };
    }
    function isMatchWorkspaces(relativePath, workspaces) {
      let ls = (0, micromatch_12.default)([relativePath], workspaces);
      return ls.length > 0;
    }
    function extractWorkspaces(manifest) {
      const workspaces = (manifest || {}).workspaces;
      return workspaces && workspaces.packages || (Array.isArray(workspaces) ? workspaces : null);
    }
    function readPackageJSON(dir) {
      const file = (0, upath2_1.join)(dir, "package.json");
      if ((0, fs_1.existsSync)(file)) {
        return JSON.parse((0, fs_1.readFileSync)(file, "utf8"));
      }
      return null;
    }
    findWorkspaceRoot.findWorkspaceRoot = findWorkspaceRoot;
    findWorkspaceRoot.readPackageJSON = readPackageJSON;
    findWorkspaceRoot.extractWorkspaces = extractWorkspaces;
    findWorkspaceRoot.isMatchWorkspaces = isMatchWorkspaces;
    findWorkspaceRoot.default = findWorkspaceRoot;
    exports2.default = findWorkspaceRoot;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/find-yarn-workspace-root2/1.2.53/91205d4ce6f81367ebd924bf9ba5b74ba0b551358644b337c9b532df961a51b9/node_modules/find-yarn-workspace-root2/index.js
var require_find_yarn_workspace_root2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/find-yarn-workspace-root2/1.2.53/91205d4ce6f81367ebd924bf9ba5b74ba0b551358644b337c9b532df961a51b9/node_modules/find-yarn-workspace-root2/index.js"(exports2, module2) {
    "use strict";
    var core_1 = require_core5();
    module2.exports = core_1.findWorkspaceRoot;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/load-yaml-file/1.0.0/cb2737c0b3c43387fe3c9844350abfb5a1b98563755e03cc1a066161cbcfebdd/node_modules/load-yaml-file/index.js
function parse4(data) {
  return jsYaml.load(stripBom(data));
}
async function loadYamlFile(path218) {
  return parse4(await import_graceful_fs4.default.promises.readFile(path218, "utf8"));
}
var import_graceful_fs4;
var init_load_yaml_file = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/load-yaml-file/1.0.0/cb2737c0b3c43387fe3c9844350abfb5a1b98563755e03cc1a066161cbcfebdd/node_modules/load-yaml-file/index.js"() {
    import_graceful_fs4 = __toESM(require_graceful_fs(), 1);
    init_strip_bom();
    init_js_yaml();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/which-pm/4.0.0/27c3056bd68cd1568a134c7a4e55c24c1c93d5dc1273197b8d3589477d9a60d5/node_modules/which-pm/index.js
import path40 from "node:path";
import fs22 from "node:fs";
async function whichPM(pkgPath) {
  const modulesPath = path40.join(pkgPath, "node_modules");
  const exists = fs22.existsSync(path40.join(modulesPath, ".yarn-integrity"));
  if (exists) return { name: "yarn" };
  try {
    const modules = await loadYamlFile(path40.join(modulesPath, ".modules.yaml"));
    return toNameAndVersion(modules.packageManager);
  } catch (err) {
    if (err.code !== "ENOENT") throw err;
  }
  if (fs22.existsSync(path40.join(pkgPath, "bun.lockb"))) return { name: "bun" };
  const modulesExists = fs22.existsSync(modulesPath);
  return modulesExists ? { name: "npm" } : null;
}
function toNameAndVersion(pkgSpec) {
  if (pkgSpec[0] === "@") {
    const woPrefix = pkgSpec.substr(1);
    const parts2 = woPrefix.split("@");
    return {
      name: `@${parts2[0]}`,
      version: parts2[1]
    };
  }
  const parts = pkgSpec.split("@");
  return {
    name: parts[0],
    version: parts[1]
  };
}
var init_which_pm = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/which-pm/4.0.0/27c3056bd68cd1568a134c7a4e55c24c1c93d5dc1273197b8d3589477d9a60d5/node_modules/which-pm/index.js"() {
    init_load_yaml_file();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/find-up-simple/1.0.1/62bcb40e509bff1d2c668288360dd2a2aac56ce918e0afa2fe7de56a6d707c7c/node_modules/find-up-simple/index.js
var find_up_simple_exports = {};
__export(find_up_simple_exports, {
  findUp: () => findUp2,
  findUpSync: () => findUpSync
});
import process12 from "node:process";
import fsPromises3 from "node:fs/promises";
import { fileURLToPath as fileURLToPath6 } from "node:url";
import fs23 from "node:fs";
import path41 from "node:path";
async function findUp2(name, {
  cwd = process12.cwd(),
  type: type4 = "file",
  stopAt
} = {}) {
  let directory = path41.resolve(toPath3(cwd) ?? "");
  const { root } = path41.parse(directory);
  stopAt = path41.resolve(directory, toPath3(stopAt ?? root));
  const isAbsoluteName = path41.isAbsolute(name);
  while (directory) {
    const filePath = isAbsoluteName ? name : path41.join(directory, name);
    try {
      const stats = await fsPromises3.stat(filePath);
      if (type4 === "file" && stats.isFile() || type4 === "directory" && stats.isDirectory()) {
        return filePath;
      }
    } catch {
    }
    if (directory === stopAt || directory === root) {
      break;
    }
    directory = path41.dirname(directory);
  }
}
function findUpSync(name, {
  cwd = process12.cwd(),
  type: type4 = "file",
  stopAt
} = {}) {
  let directory = path41.resolve(toPath3(cwd) ?? "");
  const { root } = path41.parse(directory);
  stopAt = path41.resolve(directory, toPath3(stopAt) ?? root);
  const isAbsoluteName = path41.isAbsolute(name);
  while (directory) {
    const filePath = isAbsoluteName ? name : path41.join(directory, name);
    try {
      const stats = fs23.statSync(filePath, { throwIfNoEntry: false });
      if (type4 === "file" && stats?.isFile() || type4 === "directory" && stats?.isDirectory()) {
        return filePath;
      }
    } catch {
    }
    if (directory === stopAt || directory === root) {
      break;
    }
    directory = path41.dirname(directory);
  }
}
var toPath3;
var init_find_up_simple = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/find-up-simple/1.0.1/62bcb40e509bff1d2c668288360dd2a2aac56ce918e0afa2fe7de56a6d707c7c/node_modules/find-up-simple/index.js"() {
    toPath3 = (urlOrPath) => urlOrPath instanceof URL ? fileURLToPath6(urlOrPath) : urlOrPath;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/preferred-pm/5.0.0/76a9870ba3e5c6013fd1c1ca7075cefbf8842673cda1a3238ebb06cbbf70fb58/node_modules/preferred-pm/index.js
import fs24 from "node:fs";
import path42 from "node:path";
async function preferredPM(pkgPath) {
  if (typeof pkgPath !== "string") {
    throw new TypeError(`pkgPath should be a string, got ${typeof pkgPath}`);
  }
  if (fs24.existsSync(path42.join(pkgPath, "package-lock.json"))) {
    return {
      name: "npm",
      version: ">=5"
    };
  }
  if (fs24.existsSync(path42.join(pkgPath, "yarn.lock"))) {
    return {
      name: "yarn",
      version: "*"
    };
  }
  if (fs24.existsSync(path42.join(pkgPath, "pnpm-lock.yaml"))) {
    return {
      name: "pnpm",
      version: ">=3"
    };
  }
  if (fs24.existsSync(path42.join(pkgPath, "shrinkwrap.yaml"))) {
    return {
      name: "pnpm",
      version: "1 || 2"
    };
  }
  if (fs24.existsSync(path42.join(pkgPath, "bun.lockb")) || fs24.existsSync(path42.join(pkgPath, "bun.lock"))) {
    return {
      name: "bun",
      version: "*"
    };
  }
  const { findUp: findUp3 } = await Promise.resolve().then(() => (init_find_up_simple(), find_up_simple_exports));
  if (await findUp3("pnpm-lock.yaml", { cwd: pkgPath })) {
    return {
      name: "pnpm",
      version: ">=3"
    };
  }
  try {
    const workspaceRoot = (0, import_find_yarn_workspace_root2.default)(pkgPath);
    if (typeof workspaceRoot === "string") {
      if (fs24.existsSync(path42.join(workspaceRoot, "package-lock.json"))) {
        return {
          name: "npm",
          version: ">=7"
        };
      }
      return {
        name: "yarn",
        version: "*"
      };
    }
  } catch (err) {
  }
  const pm2 = await whichPM(pkgPath);
  return pm2 && { name: pm2.name, version: pm2.version || "*" };
}
var import_find_yarn_workspace_root2;
var init_preferred_pm = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/preferred-pm/5.0.0/76a9870ba3e5c6013fd1c1ca7075cefbf8842673cda1a3238ebb06cbbf70fb58/node_modules/preferred-pm/index.js"() {
    import_find_yarn_workspace_root2 = __toESM(require_find_yarn_workspace_root2(), 1);
    init_which_pm();
  }
});

// ../exec/prepare-package/lib/index.js
import assert3 from "node:assert";
import fs25 from "node:fs";
import path43 from "node:path";
import util11 from "node:util";
async function preparePackage(opts2, gitRootDir, subDir) {
  const pkgDir = safeJoinPath(gitRootDir, subDir);
  const manifest = await safeReadPackageJsonFromDir(pkgDir);
  if (manifest?.scripts == null || !packageShouldBeBuilt(manifest, pkgDir))
    return { shouldBeBuilt: false, pkgDir };
  if (opts2.ignoreScripts)
    return { shouldBeBuilt: true, pkgDir };
  if (!opts2.allowBuild?.(manifest.name, manifest.version)) {
    throw new PnpmError("GIT_DEP_PREPARE_NOT_ALLOWED", `The git-hosted package "${manifest.name}@${manifest.version}" needs to execute build scripts but is not in the "allowBuilds" allowlist.`, {
      hint: `Add the package to "allowBuilds" in your project's pnpm-workspace.yaml to allow it to run scripts. For example:
allowBuilds:
  ${manifest.name}: true`
    });
  }
  const pm2 = (await preferredPM(gitRootDir))?.name ?? "npm";
  const execOpts = {
    depPath: `${manifest.name}@${manifest.version}`,
    pkgRoot: pkgDir,
    rootModulesDir: pkgDir,
    // We don't need this property but there is currently no way to not set it.
    unsafePerm: Boolean(opts2.unsafePerm),
    userAgent: opts2.userAgent
  };
  try {
    const installScriptName = `${pm2}-install`;
    manifest.scripts[installScriptName] = `${pm2} install`;
    await runLifecycleHook(installScriptName, manifest, execOpts);
    for (const scriptName of PREPUBLISH_SCRIPTS) {
      if (manifest.scripts[scriptName] == null || manifest.scripts[scriptName] === "")
        continue;
      let newScriptName;
      if (pm2 !== "pnpm") {
        newScriptName = `${pm2}-run-${scriptName}`;
        manifest.scripts[newScriptName] = `${pm2} run ${scriptName}`;
      } else {
        newScriptName = scriptName;
      }
      await runLifecycleHook(newScriptName, manifest, execOpts);
    }
  } catch (err) {
    assert3(util11.types.isNativeError(err));
    Object.assign(err, {
      code: "ERR_PNPM_PREPARE_PACKAGE"
    });
    throw err;
  }
  await rimraf(path43.join(pkgDir, "node_modules"));
  return { shouldBeBuilt: true, pkgDir };
}
function packageShouldBeBuilt(manifest, pkgDir) {
  if (manifest.scripts == null)
    return false;
  const scripts = manifest.scripts;
  if (scripts.prepare != null && scripts.prepare !== "")
    return true;
  const hasPrepublishScript = PREPUBLISH_SCRIPTS.some((scriptName) => scripts[scriptName] != null && scripts[scriptName] !== "");
  if (!hasPrepublishScript)
    return false;
  const mainFile = manifest.main ?? "index.js";
  return !fs25.existsSync(path43.join(pkgDir, mainFile));
}
function safeJoinPath(root, sub) {
  const joined = path43.join(root, sub);
  const relative2 = path43.relative(root, joined);
  if (relative2.startsWith("..")) {
    throw new PnpmError("INVALID_PATH", `Path "${sub}" should be a sub directory`);
  }
  if (!fs25.existsSync(joined) || !fs25.lstatSync(joined).isDirectory()) {
    throw new PnpmError("INVALID_PATH", `Path "${sub}" is not a directory`);
  }
  return joined;
}
var PREPUBLISH_SCRIPTS;
var init_lib45 = __esm({
  "../exec/prepare-package/lib/index.js"() {
    "use strict";
    init_lib2();
    init_lib44();
    init_lib39();
    init_rimraf();
    init_preferred_pm();
    PREPUBLISH_SCRIPTS = [
      "prepublish",
      "prepack",
      "publish"
    ];
  }
});

// ../fetching/git-fetcher/lib/index.js
import assert4 from "node:assert";
import path44 from "node:path";
import { URL as URL2 } from "node:url";
import util12 from "node:util";
function createGitFetcher(createOpts) {
  const allowedHosts = new Set(createOpts?.gitShallowHosts ?? []);
  const ignoreScripts = createOpts.ignoreScripts ?? false;
  const gitFetcher = async (cafs, resolution, opts2) => {
    const tempLocation = await cafs.tempDir();
    if (allowedHosts.size > 0 && shouldUseShallow(resolution.repo, allowedHosts)) {
      await execGit(["init"], { cwd: tempLocation });
      await execGit(["remote", "add", "origin", resolution.repo], { cwd: tempLocation });
      await execGit(["fetch", "--depth", "1", "origin", resolution.commit], { cwd: tempLocation });
    } else {
      await execGit(["clone", resolution.repo, tempLocation]);
    }
    await execGit(["checkout", resolution.commit], { cwd: tempLocation });
    const receivedCommit = await execGit(["rev-parse", "HEAD"], { cwd: tempLocation });
    if (receivedCommit.trim() !== resolution.commit) {
      throw new PnpmError("GIT_CHECKOUT_FAILED", `received commit ${receivedCommit.trim()} does not match expected value ${resolution.commit}`);
    }
    let pkgDir;
    try {
      const prepareResult = await preparePackage({
        allowBuild: opts2.allowBuild,
        ignoreScripts: createOpts.ignoreScripts,
        unsafePerm: createOpts.unsafePerm,
        userAgent: createOpts.userAgent
      }, tempLocation, resolution.path ?? "");
      pkgDir = prepareResult.pkgDir;
      if (ignoreScripts && prepareResult.shouldBeBuilt) {
        globalWarn(`The git-hosted package fetched from "${resolution.repo}" has to be built but the build scripts were ignored.`);
      }
    } catch (err) {
      assert4(util12.types.isNativeError(err));
      err.message = `Failed to prepare git-hosted package fetched from "${resolution.repo}": ${err.message}`;
      throw err;
    }
    await rimraf(path44.join(tempLocation, ".git"));
    const files = await packlist(pkgDir);
    return addFilesFromDir({
      storeDir: cafs.storeDir,
      storeIndex: createOpts.storeIndex,
      dir: pkgDir,
      files,
      filesIndexFile: opts2.filesIndexFile,
      readManifest: opts2.readManifest,
      pkg: opts2.pkg
    });
  };
  return {
    git: gitFetcher
  };
}
function shouldUseShallow(repoUrl, allowedHosts) {
  try {
    const { host } = new URL2(repoUrl);
    if (allowedHosts.has(host)) {
      return true;
    }
  } catch {
  }
  return false;
}
function prefixGitArgs() {
  return process.platform === "win32" ? ["-c", "core.longpaths=true"] : [];
}
async function execGit(args, opts2) {
  const fullArgs = prefixGitArgs().concat(args || []);
  const { stdout } = await safeExeca("git", fullArgs, opts2);
  return stdout;
}
var init_lib46 = __esm({
  "../fetching/git-fetcher/lib/index.js"() {
    "use strict";
    init_lib2();
    init_lib45();
    init_lib37();
    init_lib3();
    init_lib4();
    init_rimraf();
    init_lib26();
  }
});

// ../fetching/tarball-fetcher/lib/gitHostedTarballFetcher.js
import assert5 from "node:assert";
import util13 from "node:util";
function createGitHostedTarballFetcher(fetchRemoteTarball, fetcherOpts) {
  const fetch2 = async (cafs, resolution, opts2) => {
    const rawFilesIndexFile = `${opts2.filesIndexFile}	raw`;
    const { filesMap, manifest, requiresBuild, integrity } = await fetchRemoteTarball(cafs, resolution, {
      ...opts2,
      filesIndexFile: rawFilesIndexFile
    });
    fetcherOpts.storeIndex.flush();
    try {
      const prepareResult = await prepareGitHostedPkg(filesMap, cafs, rawFilesIndexFile, opts2.filesIndexFile, fetcherOpts, opts2, resolution);
      if (prepareResult.ignoredBuild) {
        globalWarn(`The git-hosted package fetched from "${resolution.tarball}" has to be built but the build scripts were ignored.`);
      }
      return {
        filesMap: prepareResult.filesMap,
        manifest: prepareResult.manifest ?? manifest,
        requiresBuild,
        // Propagate the raw tarball integrity so the lockfile pins it and
        // future installs detect a tampered tarball from the git host.
        integrity
      };
    } catch (err) {
      assert5(util13.types.isNativeError(err));
      err.message = `Failed to prepare git-hosted package fetched from "${resolution.tarball}": ${err.message}`;
      throw err;
    }
  };
  return fetch2;
}
async function prepareGitHostedPkg(filesMap, cafs, rawFilesIndexFile, filesIndexFile, opts2, fetcherOpts, resolution) {
  const tempLocation = await cafs.tempDir();
  cafs.importPackage(tempLocation, {
    filesResponse: {
      filesMap,
      resolvedFrom: "remote",
      requiresBuild: false
    },
    force: true
  });
  const { shouldBeBuilt, pkgDir } = await preparePackage({
    ...opts2,
    allowBuild: fetcherOpts.allowBuild
  }, tempLocation, resolution.path ?? "");
  const files = await packlist(pkgDir);
  const { storeIndex } = opts2;
  if (!resolution.path && files.length === filesMap.size) {
    if (!shouldBeBuilt) {
      const data = storeIndex.get(rawFilesIndexFile);
      if (data) {
        storeIndex.set(filesIndexFile, data);
        storeIndex.delete(rawFilesIndexFile);
      }
      return {
        filesMap,
        ignoredBuild: false
      };
    }
    if (opts2.ignoreScripts) {
      storeIndex.delete(rawFilesIndexFile);
      return {
        filesMap,
        ignoredBuild: true
      };
    }
  }
  storeIndex.delete(rawFilesIndexFile);
  return {
    ...await addFilesFromDir({
      storeDir: cafs.storeDir,
      storeIndex: opts2.storeIndex,
      dir: pkgDir,
      files,
      filesIndexFile,
      pkg: fetcherOpts.pkg,
      readManifest: fetcherOpts.readManifest
    }),
    ignoredBuild: Boolean(opts2.ignoreScripts)
  };
}
var init_gitHostedTarballFetcher = __esm({
  "../fetching/tarball-fetcher/lib/gitHostedTarballFetcher.js"() {
    "use strict";
    init_lib45();
    init_lib37();
    init_lib3();
    init_lib4();
  }
});

// ../fetching/tarball-fetcher/lib/localTarballFetcher.js
import path45 from "node:path";
function createLocalTarballFetcher(storeIndex) {
  const fetch2 = (cafs, resolution, opts2) => {
    const tarball = resolvePath(opts2.lockfileDir, resolution.tarball.slice(5));
    const buffer3 = lib_default.readFileSync(tarball);
    return addFilesFromTarball({
      storeDir: cafs.storeDir,
      storeIndex,
      buffer: buffer3,
      filesIndexFile: opts2.filesIndexFile,
      integrity: resolution.integrity,
      readManifest: opts2.readManifest,
      url: tarball,
      pkg: opts2.pkg,
      appendManifest: opts2.appendManifest,
      ignoreFilePattern: opts2.ignoreFilePattern
    });
  };
  return fetch2;
}
function resolvePath(where, spec) {
  if (isAbsolutePath.test(spec))
    return spec;
  return path45.resolve(where, spec);
}
var isAbsolutePath;
var init_localTarballFetcher = __esm({
  "../fetching/tarball-fetcher/lib/localTarballFetcher.js"() {
    "use strict";
    init_lib12();
    init_lib4();
    isAbsolutePath = /^\/|^[A-Z]:/i;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/lodash.throttle/4.1.1/e8d70d06aacdab4c5ae4b206f2a419585999a791c84c119e8934d8ecb21e5859/node_modules/lodash.throttle/index.js
var require_lodash = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/lodash.throttle/4.1.1/e8d70d06aacdab4c5ae4b206f2a419585999a791c84c119e8934d8ecb21e5859/node_modules/lodash.throttle/index.js"(exports2, module2) {
    var FUNC_ERROR_TEXT = "Expected a function";
    var NAN = 0 / 0;
    var symbolTag = "[object Symbol]";
    var reTrim = /^\s+|\s+$/g;
    var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;
    var reIsBinary = /^0b[01]+$/i;
    var reIsOctal = /^0o[0-7]+$/i;
    var freeParseInt = parseInt;
    var freeGlobal = typeof global == "object" && global && global.Object === Object && global;
    var freeSelf = typeof self == "object" && self && self.Object === Object && self;
    var root = freeGlobal || freeSelf || Function("return this")();
    var objectProto = Object.prototype;
    var objectToString3 = objectProto.toString;
    var nativeMax = Math.max;
    var nativeMin = Math.min;
    var now = function() {
      return root.Date.now();
    };
    function debounce(func, wait, options) {
      var lastArgs, lastThis, maxWait, result2, timerId, lastCallTime, lastInvokeTime = 0, leading = false, maxing = false, trailing = true;
      if (typeof func != "function") {
        throw new TypeError(FUNC_ERROR_TEXT);
      }
      wait = toNumber(wait) || 0;
      if (isObject4(options)) {
        leading = !!options.leading;
        maxing = "maxWait" in options;
        maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;
        trailing = "trailing" in options ? !!options.trailing : trailing;
      }
      function invokeFunc(time) {
        var args = lastArgs, thisArg = lastThis;
        lastArgs = lastThis = void 0;
        lastInvokeTime = time;
        result2 = func.apply(thisArg, args);
        return result2;
      }
      function leadingEdge(time) {
        lastInvokeTime = time;
        timerId = setTimeout(timerExpired, wait);
        return leading ? invokeFunc(time) : result2;
      }
      function remainingWait(time) {
        var timeSinceLastCall = time - lastCallTime, timeSinceLastInvoke = time - lastInvokeTime, result3 = wait - timeSinceLastCall;
        return maxing ? nativeMin(result3, maxWait - timeSinceLastInvoke) : result3;
      }
      function shouldInvoke(time) {
        var timeSinceLastCall = time - lastCallTime, timeSinceLastInvoke = time - lastInvokeTime;
        return lastCallTime === void 0 || timeSinceLastCall >= wait || timeSinceLastCall < 0 || maxing && timeSinceLastInvoke >= maxWait;
      }
      function timerExpired() {
        var time = now();
        if (shouldInvoke(time)) {
          return trailingEdge(time);
        }
        timerId = setTimeout(timerExpired, remainingWait(time));
      }
      function trailingEdge(time) {
        timerId = void 0;
        if (trailing && lastArgs) {
          return invokeFunc(time);
        }
        lastArgs = lastThis = void 0;
        return result2;
      }
      function cancel() {
        if (timerId !== void 0) {
          clearTimeout(timerId);
        }
        lastInvokeTime = 0;
        lastArgs = lastCallTime = lastThis = timerId = void 0;
      }
      function flush() {
        return timerId === void 0 ? result2 : trailingEdge(now());
      }
      function debounced() {
        var time = now(), isInvoking = shouldInvoke(time);
        lastArgs = arguments;
        lastThis = this;
        lastCallTime = time;
        if (isInvoking) {
          if (timerId === void 0) {
            return leadingEdge(lastCallTime);
          }
          if (maxing) {
            timerId = setTimeout(timerExpired, wait);
            return invokeFunc(lastCallTime);
          }
        }
        if (timerId === void 0) {
          timerId = setTimeout(timerExpired, wait);
        }
        return result2;
      }
      debounced.cancel = cancel;
      debounced.flush = flush;
      return debounced;
    }
    function throttle2(func, wait, options) {
      var leading = true, trailing = true;
      if (typeof func != "function") {
        throw new TypeError(FUNC_ERROR_TEXT);
      }
      if (isObject4(options)) {
        leading = "leading" in options ? !!options.leading : leading;
        trailing = "trailing" in options ? !!options.trailing : trailing;
      }
      return debounce(func, wait, {
        "leading": leading,
        "maxWait": wait,
        "trailing": trailing
      });
    }
    function isObject4(value) {
      var type4 = typeof value;
      return !!value && (type4 == "object" || type4 == "function");
    }
    function isObjectLike(value) {
      return !!value && typeof value == "object";
    }
    function isSymbol(value) {
      return typeof value == "symbol" || isObjectLike(value) && objectToString3.call(value) == symbolTag;
    }
    function toNumber(value) {
      if (typeof value == "number") {
        return value;
      }
      if (isSymbol(value)) {
        return NAN;
      }
      if (isObject4(value)) {
        var other = typeof value.valueOf == "function" ? value.valueOf() : value;
        value = isObject4(other) ? other + "" : other;
      }
      if (typeof value != "string") {
        return value === 0 ? value : +value;
      }
      value = value.replace(reTrim, "");
      var isBinary2 = reIsBinary.test(value);
      return isBinary2 || reIsOctal.test(value) ? freeParseInt(value.slice(2), isBinary2 ? 2 : 8) : reIsBadHex.test(value) ? NAN : +value;
    }
    module2.exports = throttle2;
  }
});

// ../fetching/tarball-fetcher/lib/errorTypes/BadTarballError.js
var BadTarballError;
var init_BadTarballError = __esm({
  "../fetching/tarball-fetcher/lib/errorTypes/BadTarballError.js"() {
    "use strict";
    init_lib2();
    BadTarballError = class extends PnpmError {
      expectedSize;
      receivedSize;
      constructor(opts2) {
        const message = `Actual size (${opts2.receivedSize}) of tarball (${opts2.tarballUrl}) did not match the one specified in 'Content-Length' header (${opts2.expectedSize})`;
        super("BAD_TARBALL_SIZE", message, {
          attempts: opts2?.attempts
        });
        this.expectedSize = opts2.expectedSize;
        this.receivedSize = opts2.receivedSize;
      }
    };
  }
});

// ../fetching/tarball-fetcher/lib/errorTypes/index.js
var init_errorTypes = __esm({
  "../fetching/tarball-fetcher/lib/errorTypes/index.js"() {
    "use strict";
    init_BadTarballError();
  }
});

// ../fetching/tarball-fetcher/lib/remoteTarballFetcher.js
import util14 from "node:util";
function createDownloader(fetchFromRegistry, gotOpts) {
  const retryOpts = {
    factor: 10,
    maxTimeout: 6e4,
    // 1 minute
    minTimeout: 1e4,
    // 10 seconds
    retries: 2,
    ...gotOpts.retry
  };
  const fetchMinSpeedKiBps = gotOpts.fetchMinSpeedKiBps ?? 50;
  return async function download(url7, opts2) {
    const authHeaderValue = opts2.getAuthHeaderByURI(url7);
    const op = retry3.operation(retryOpts);
    return new Promise((resolve3, reject3) => {
      op.attempt(async (attempt) => {
        try {
          resolve3(await fetch2(attempt));
        } catch (error) {
          if (error.response?.status === 401 || error.response?.status === 403 || error.response?.status === 404 || error.code === "ERR_PNPM_PREPARE_PKG_FAILURE") {
            reject3(error);
            return;
          }
          const timeout = op.retry(error);
          if (timeout === false) {
            reject3(op.mainError());
            return;
          }
          const errorInfo = {
            name: error.name,
            message: error.message,
            code: error.code,
            errno: error.errno,
            // For HTTP errors from our ResponseError class
            status: error.status,
            statusCode: error.statusCode,
            // undici wraps the actual network error in a cause property
            cause: error.cause ? {
              code: error.cause.code,
              errno: error.cause.errno
            } : void 0
          };
          requestRetryLogger.debug({
            attempt,
            error: errorInfo,
            maxRetries: retryOpts.retries,
            method: "GET",
            timeout,
            url: url7
          });
        }
      });
    });
    async function fetch2(currentAttempt) {
      let data;
      try {
        const res = await fetchFromRegistry(url7, {
          authHeaderValue,
          // Tarballs are already compressed; ask the server not to apply an additional
          // Content-Encoding so Content-Length matches the body we receive and we don't
          // waste CPU on round-trip re-compression. See https://github.com/pnpm/pnpm/issues/11506
          headers: { "accept-encoding": "identity" },
          // The fetch library can retry requests on bad HTTP responses.
          // However, it is not enough to retry on bad HTTP responses only.
          // Requests should also be retried when the tarball's integrity check fails.
          // Hence, we tell fetch to not retry,
          // and we perform the retries from this function instead.
          retry: { retries: 0 },
          timeout: gotOpts.timeout
        });
        if (res.status !== 200) {
          throw new FetchError({ url: url7, authHeaderValue }, res);
        }
        const isEncoded = isContentEncoded(res.headers.get("content-encoding"));
        const contentLength = !isEncoded && res.headers.has("content-length") && res.headers.get("content-length");
        const parsedLength = typeof contentLength === "string" ? parseInt(contentLength, 10) : NaN;
        const size = Number.isFinite(parsedLength) && parsedLength >= 0 ? parsedLength : null;
        if (opts2.onStart != null) {
          opts2.onStart(size, currentAttempt);
        }
        const onProgress = size != null && size >= BIG_TARBALL_SIZE && opts2.onProgress ? (0, import_lodash.default)(opts2.onProgress, 500) : void 0;
        const startTime = Date.now();
        let downloaded = 0;
        if (size !== null) {
          data = Buffer.from(new SharedArrayBuffer(size));
          for await (const chunk of res.body) {
            const c3 = chunk;
            const nextDownloaded = downloaded + c3.byteLength;
            if (nextDownloaded > size) {
              throw new BadTarballError({
                expectedSize: size,
                receivedSize: nextDownloaded,
                tarballUrl: url7
              });
            }
            data.set(c3, downloaded);
            downloaded = nextDownloaded;
            onProgress?.(downloaded);
          }
          if (size !== downloaded) {
            throw new BadTarballError({
              expectedSize: size,
              receivedSize: downloaded,
              tarballUrl: url7
            });
          }
        } else {
          const chunks = [];
          for await (const chunk of res.body) {
            const c3 = chunk;
            chunks.push(c3);
            downloaded += c3.byteLength;
            onProgress?.(downloaded);
          }
          data = Buffer.from(new SharedArrayBuffer(downloaded));
          let offset = 0;
          for (const chunk of chunks) {
            data.set(chunk, offset);
            offset += chunk.byteLength;
          }
        }
        const elapsedSec = (Date.now() - startTime) / 1e3;
        const avgKiBps = Math.floor(downloaded / elapsedSec / 1024);
        if (downloaded > 0 && elapsedSec > 1 && avgKiBps < fetchMinSpeedKiBps) {
          const sizeKb = Math.floor(downloaded / 1024);
          globalWarn(`Tarball download average speed ${avgKiBps} KiB/s (size ${sizeKb} KiB) is below ${fetchMinSpeedKiBps} KiB/s: ${url7} (GET)`);
        }
      } catch (err) {
        const error = util14.types.isNativeError(err) ? err : new Error(String(err), { cause: err });
        Object.assign(error, {
          attempts: currentAttempt,
          resource: url7
        });
        throw error;
      }
      return addFilesFromTarball({
        buffer: data,
        storeDir: opts2.cafs.storeDir,
        storeIndex: opts2.storeIndex,
        readManifest: opts2.readManifest,
        integrity: opts2.integrity,
        filesIndexFile: opts2.filesIndexFile,
        url: url7,
        pkg: opts2.pkg,
        appendManifest: opts2.appendManifest,
        ignoreFilePattern: opts2.ignoreFilePattern
      });
    }
  };
}
function isContentEncoded(header) {
  if (header == null)
    return false;
  return header.split(",").map((coding) => coding.trim().toLowerCase()).some((coding) => coding !== "" && coding !== "identity");
}
var retry3, import_lodash, BIG_TARBALL_SIZE;
var init_remoteTarballFetcher = __esm({
  "../fetching/tarball-fetcher/lib/remoteTarballFetcher.js"() {
    "use strict";
    init_lib6();
    init_lib2();
    init_lib3();
    init_lib4();
    retry3 = __toESM(require_retry(), 1);
    import_lodash = __toESM(require_lodash(), 1);
    init_errorTypes();
    BIG_TARBALL_SIZE = 1024 * 1024 * 5;
  }
});

// ../fetching/tarball-fetcher/lib/index.js
function createTarballFetcher(fetchFromRegistry, getAuthHeader, opts2) {
  const download = createDownloader(fetchFromRegistry, {
    retry: opts2.retry,
    timeout: opts2.timeout,
    fetchMinSpeedKiBps: opts2.fetchMinSpeedKiBps
  });
  const remoteTarballFetcher = fetchFromTarball.bind(null, {
    download,
    getAuthHeaderByURI: getAuthHeader,
    offline: opts2.offline,
    storeIndex: opts2.storeIndex
  });
  return {
    localTarball: createLocalTarballFetcher(opts2.storeIndex),
    remoteTarball: remoteTarballFetcher,
    gitHostedTarball: createGitHostedTarballFetcher(remoteTarballFetcher, opts2)
  };
}
async function fetchFromTarball(ctx, cafs, resolution, opts2) {
  if (ctx.offline) {
    throw new PnpmError("NO_OFFLINE_TARBALL", `A package is missing from the store but cannot download it in offline mode. The missing package may be downloaded from ${resolution.tarball}.`);
  }
  return ctx.download(resolution.tarball, {
    getAuthHeaderByURI: ctx.getAuthHeaderByURI,
    cafs,
    storeIndex: ctx.storeIndex,
    integrity: resolution.integrity,
    readManifest: opts2.readManifest,
    onProgress: opts2.onProgress,
    onStart: opts2.onStart,
    registry: resolution.registry,
    filesIndexFile: opts2.filesIndexFile,
    pkg: opts2.pkg,
    appendManifest: opts2.appendManifest,
    ignoreFilePattern: opts2.ignoreFilePattern
  });
}
var init_lib47 = __esm({
  "../fetching/tarball-fetcher/lib/index.js"() {
    "use strict";
    init_lib2();
    init_lib4();
    init_gitHostedTarballFetcher();
    init_localTarballFetcher();
    init_remoteTarballFetcher();
    init_errorTypes();
    init_gitHostedTarballFetcher();
    init_localTarballFetcher();
    init_remoteTarballFetcher();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/config.nerf-dart/1.0.1/b1573790a8e9ccf25d82df69dd82a738bc3c267529d518f5593ec50d5c2b5b1c/node_modules/@pnpm/config.nerf-dart/dist/nerf-dart.js
var require_nerf_dart = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/config.nerf-dart/1.0.1/b1573790a8e9ccf25d82df69dd82a738bc3c267529d518f5593ec50d5c2b5b1c/node_modules/@pnpm/config.nerf-dart/dist/nerf-dart.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.nerfDart = void 0;
    var url_1 = __require("url");
    function nerfDart3(url7) {
      const parsed = new url_1.URL(url7);
      const from5 = `${parsed.protocol}//${parsed.host}${parsed.pathname}`;
      const rel = new url_1.URL(".", from5);
      const res = `//${rel.host}${rel.pathname}`;
      return res;
    }
    exports2.nerfDart = nerfDart3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/config.nerf-dart/1.0.1/b1573790a8e9ccf25d82df69dd82a738bc3c267529d518f5593ec50d5c2b5b1c/node_modules/@pnpm/config.nerf-dart/dist/index.js
var require_dist4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/config.nerf-dart/1.0.1/b1573790a8e9ccf25d82df69dd82a738bc3c267529d518f5593ec50d5c2b5b1c/node_modules/@pnpm/config.nerf-dart/dist/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.nerfDart = void 0;
    var nerf_dart_1 = require_nerf_dart();
    Object.defineProperty(exports2, "nerfDart", { enumerable: true, get: function() {
      return nerf_dart_1.nerfDart;
    } });
  }
});

// ../network/auth-header/lib/getAuthHeadersFromConfig.js
import { spawnSync as spawnSync2 } from "node:child_process";
function getAuthHeadersFromCreds(configByUri, defaultRegistry) {
  const authHeaderValueByURI = {};
  for (const [uri, registryConfig] of Object.entries(configByUri)) {
    if (uri === "")
      continue;
    const header = credsToHeader(registryConfig.creds);
    if (header) {
      authHeaderValueByURI[uri] = header;
    }
  }
  const defaultConfig = configByUri[""];
  if (defaultConfig?.creds) {
    const header = credsToHeader(defaultConfig.creds);
    if (header) {
      authHeaderValueByURI[defaultRegistry] = header;
    }
  }
  return authHeaderValueByURI;
}
function credsToHeader(creds) {
  if (!creds)
    return void 0;
  if (creds.tokenHelper) {
    return executeTokenHelper(creds.tokenHelper);
  }
  if (creds.authToken) {
    return `Bearer ${creds.authToken}`;
  }
  if (creds.basicAuth) {
    return `Basic ${Buffer.from(`${creds.basicAuth.username}:${creds.basicAuth.password}`, "utf8").toString("base64")}`;
  }
  return void 0;
}
function executeTokenHelper(tokenHelper) {
  const [cmd, ...args] = tokenHelper;
  const shell = process.platform === "win32" && /\.(?:bat|cmd)$/i.test(cmd);
  const spawnResult = spawnSync2(cmd, args, { stdio: "pipe", shell });
  if (spawnResult.status !== 0) {
    throw new PnpmError("TOKEN_HELPER_ERROR_STATUS", `Error running "${cmd}" as a token helper. Exit code ${spawnResult.status?.toString() ?? ""}`);
  }
  const token = spawnResult.stdout.toString("utf8").trimEnd();
  if (!token) {
    throw new PnpmError("TOKEN_HELPER_EMPTY_TOKEN", `Token helper "${cmd}" returned an empty token`);
  }
  if (/^[A-Z]+ /i.test(token)) {
    return token;
  }
  return `Bearer ${token}`;
}
var init_getAuthHeadersFromConfig = __esm({
  "../network/auth-header/lib/getAuthHeadersFromConfig.js"() {
    "use strict";
    init_lib2();
  }
});

// ../network/auth-header/lib/helpers/removePort.js
function removePort(urlObj) {
  if (urlObj.port === "")
    return urlObj.href;
  urlObj.port = "";
  return urlObj.toString();
}
var init_removePort = __esm({
  "../network/auth-header/lib/helpers/removePort.js"() {
    "use strict";
  }
});

// ../network/auth-header/lib/index.js
function createGetAuthHeaderByURI(configByUri, defaultRegistry) {
  const registry = defaultRegistry ? (0, import_config7.nerfDart)(defaultRegistry) : "//registry.npmjs.org/";
  const authHeaders = getAuthHeadersFromCreds(configByUri, registry);
  if (Object.keys(authHeaders).length === 0)
    return (uri) => basicAuth(new URL(uri));
  return getAuthHeaderByURI.bind(null, authHeaders, getMaxParts(Object.keys(authHeaders)));
}
function getMaxParts(uris) {
  return uris.reduce((max3, uri) => {
    const parts = uri.split("/").length;
    return parts > max3 ? parts : max3;
  }, 0);
}
function getAuthHeaderByURI(authHeaders, maxParts, uri) {
  if (!uri.endsWith("/")) {
    uri += "/";
  }
  const parsedUri = new URL(uri);
  const basic = basicAuth(parsedUri);
  if (basic)
    return basic;
  const nerfed = (0, import_config7.nerfDart)(uri);
  const parts = nerfed.split("/");
  for (let i2 = Math.min(parts.length, maxParts) - 1; i2 >= 3; i2--) {
    const key = `${parts.slice(0, i2).join("/")}/`;
    if (authHeaders[key])
      return authHeaders[key];
  }
  const urlWithoutPort = removePort(parsedUri);
  if (urlWithoutPort !== uri) {
    return getAuthHeaderByURI(authHeaders, maxParts, urlWithoutPort);
  }
  return void 0;
}
function basicAuth(uri) {
  if (!uri.username && !uri.password)
    return void 0;
  const auth64 = btoa(`${uri.username}:${uri.password}`);
  return `Basic ${auth64}`;
}
var import_config7;
var init_lib48 = __esm({
  "../network/auth-header/lib/index.js"() {
    "use strict";
    import_config7 = __toESM(require_dist4(), 1);
    init_getAuthHeadersFromConfig();
    init_removePort();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/smart-buffer/4.2.0/26acde58cd4ef8a6abbb855cd602f8d5b83a031818c1520d891292aba555689e/node_modules/smart-buffer/build/utils.js
var require_utils10 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/smart-buffer/4.2.0/26acde58cd4ef8a6abbb855cd602f8d5b83a031818c1520d891292aba555689e/node_modules/smart-buffer/build/utils.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var buffer_1 = __require("buffer");
    var ERRORS = {
      INVALID_ENCODING: "Invalid encoding provided. Please specify a valid encoding the internal Node.js Buffer supports.",
      INVALID_SMARTBUFFER_SIZE: "Invalid size provided. Size must be a valid integer greater than zero.",
      INVALID_SMARTBUFFER_BUFFER: "Invalid Buffer provided in SmartBufferOptions.",
      INVALID_SMARTBUFFER_OBJECT: "Invalid SmartBufferOptions object supplied to SmartBuffer constructor or factory methods.",
      INVALID_OFFSET: "An invalid offset value was provided.",
      INVALID_OFFSET_NON_NUMBER: "An invalid offset value was provided. A numeric value is required.",
      INVALID_LENGTH: "An invalid length value was provided.",
      INVALID_LENGTH_NON_NUMBER: "An invalid length value was provived. A numeric value is required.",
      INVALID_TARGET_OFFSET: "Target offset is beyond the bounds of the internal SmartBuffer data.",
      INVALID_TARGET_LENGTH: "Specified length value moves cursor beyong the bounds of the internal SmartBuffer data.",
      INVALID_READ_BEYOND_BOUNDS: "Attempted to read beyond the bounds of the managed data.",
      INVALID_WRITE_BEYOND_BOUNDS: "Attempted to write beyond the bounds of the managed data."
    };
    exports2.ERRORS = ERRORS;
    function checkEncoding(encoding) {
      if (!buffer_1.Buffer.isEncoding(encoding)) {
        throw new Error(ERRORS.INVALID_ENCODING);
      }
    }
    exports2.checkEncoding = checkEncoding;
    function isFiniteInteger(value) {
      return typeof value === "number" && isFinite(value) && isInteger2(value);
    }
    exports2.isFiniteInteger = isFiniteInteger;
    function checkOffsetOrLengthValue(value, offset) {
      if (typeof value === "number") {
        if (!isFiniteInteger(value) || value < 0) {
          throw new Error(offset ? ERRORS.INVALID_OFFSET : ERRORS.INVALID_LENGTH);
        }
      } else {
        throw new Error(offset ? ERRORS.INVALID_OFFSET_NON_NUMBER : ERRORS.INVALID_LENGTH_NON_NUMBER);
      }
    }
    function checkLengthValue(length) {
      checkOffsetOrLengthValue(length, false);
    }
    exports2.checkLengthValue = checkLengthValue;
    function checkOffsetValue(offset) {
      checkOffsetOrLengthValue(offset, true);
    }
    exports2.checkOffsetValue = checkOffsetValue;
    function checkTargetOffset(offset, buff) {
      if (offset < 0 || offset > buff.length) {
        throw new Error(ERRORS.INVALID_TARGET_OFFSET);
      }
    }
    exports2.checkTargetOffset = checkTargetOffset;
    function isInteger2(value) {
      return typeof value === "number" && isFinite(value) && Math.floor(value) === value;
    }
    function bigIntAndBufferInt64Check(bufferMethod) {
      if (typeof BigInt === "undefined") {
        throw new Error("Platform does not support JS BigInt type.");
      }
      if (typeof buffer_1.Buffer.prototype[bufferMethod] === "undefined") {
        throw new Error(`Platform does not support Buffer.prototype.${bufferMethod}.`);
      }
    }
    exports2.bigIntAndBufferInt64Check = bigIntAndBufferInt64Check;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/smart-buffer/4.2.0/26acde58cd4ef8a6abbb855cd602f8d5b83a031818c1520d891292aba555689e/node_modules/smart-buffer/build/smartbuffer.js
var require_smartbuffer = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/smart-buffer/4.2.0/26acde58cd4ef8a6abbb855cd602f8d5b83a031818c1520d891292aba555689e/node_modules/smart-buffer/build/smartbuffer.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var utils_1 = require_utils10();
    var DEFAULT_SMARTBUFFER_SIZE = 4096;
    var DEFAULT_SMARTBUFFER_ENCODING = "utf8";
    var SmartBuffer = class _SmartBuffer {
      /**
       * Creates a new SmartBuffer instance.
       *
       * @param options { SmartBufferOptions } The SmartBufferOptions to apply to this instance.
       */
      constructor(options) {
        this.length = 0;
        this._encoding = DEFAULT_SMARTBUFFER_ENCODING;
        this._writeOffset = 0;
        this._readOffset = 0;
        if (_SmartBuffer.isSmartBufferOptions(options)) {
          if (options.encoding) {
            utils_1.checkEncoding(options.encoding);
            this._encoding = options.encoding;
          }
          if (options.size) {
            if (utils_1.isFiniteInteger(options.size) && options.size > 0) {
              this._buff = Buffer.allocUnsafe(options.size);
            } else {
              throw new Error(utils_1.ERRORS.INVALID_SMARTBUFFER_SIZE);
            }
          } else if (options.buff) {
            if (Buffer.isBuffer(options.buff)) {
              this._buff = options.buff;
              this.length = options.buff.length;
            } else {
              throw new Error(utils_1.ERRORS.INVALID_SMARTBUFFER_BUFFER);
            }
          } else {
            this._buff = Buffer.allocUnsafe(DEFAULT_SMARTBUFFER_SIZE);
          }
        } else {
          if (typeof options !== "undefined") {
            throw new Error(utils_1.ERRORS.INVALID_SMARTBUFFER_OBJECT);
          }
          this._buff = Buffer.allocUnsafe(DEFAULT_SMARTBUFFER_SIZE);
        }
      }
      /**
       * Creates a new SmartBuffer instance with the provided internal Buffer size and optional encoding.
       *
       * @param size { Number } The size of the internal Buffer.
       * @param encoding { String } The BufferEncoding to use for strings.
       *
       * @return { SmartBuffer }
       */
      static fromSize(size, encoding) {
        return new this({
          size,
          encoding
        });
      }
      /**
       * Creates a new SmartBuffer instance with the provided Buffer and optional encoding.
       *
       * @param buffer { Buffer } The Buffer to use as the internal Buffer value.
       * @param encoding { String } The BufferEncoding to use for strings.
       *
       * @return { SmartBuffer }
       */
      static fromBuffer(buff, encoding) {
        return new this({
          buff,
          encoding
        });
      }
      /**
       * Creates a new SmartBuffer instance with the provided SmartBufferOptions options.
       *
       * @param options { SmartBufferOptions } The options to use when creating the SmartBuffer instance.
       */
      static fromOptions(options) {
        return new this(options);
      }
      /**
       * Type checking function that determines if an object is a SmartBufferOptions object.
       */
      static isSmartBufferOptions(options) {
        const castOptions = options;
        return castOptions && (castOptions.encoding !== void 0 || castOptions.size !== void 0 || castOptions.buff !== void 0);
      }
      // Signed integers
      /**
       * Reads an Int8 value from the current read position or an optionally provided offset.
       *
       * @param offset { Number } The offset to read data from (optional)
       * @return { Number }
       */
      readInt8(offset) {
        return this._readNumberValue(Buffer.prototype.readInt8, 1, offset);
      }
      /**
       * Reads an Int16BE value from the current read position or an optionally provided offset.
       *
       * @param offset { Number } The offset to read data from (optional)
       * @return { Number }
       */
      readInt16BE(offset) {
        return this._readNumberValue(Buffer.prototype.readInt16BE, 2, offset);
      }
      /**
       * Reads an Int16LE value from the current read position or an optionally provided offset.
       *
       * @param offset { Number } The offset to read data from (optional)
       * @return { Number }
       */
      readInt16LE(offset) {
        return this._readNumberValue(Buffer.prototype.readInt16LE, 2, offset);
      }
      /**
       * Reads an Int32BE value from the current read position or an optionally provided offset.
       *
       * @param offset { Number } The offset to read data from (optional)
       * @return { Number }
       */
      readInt32BE(offset) {
        return this._readNumberValue(Buffer.prototype.readInt32BE, 4, offset);
      }
      /**
       * Reads an Int32LE value from the current read position or an optionally provided offset.
       *
       * @param offset { Number } The offset to read data from (optional)
       * @return { Number }
       */
      readInt32LE(offset) {
        return this._readNumberValue(Buffer.prototype.readInt32LE, 4, offset);
      }
      /**
       * Reads a BigInt64BE value from the current read position or an optionally provided offset.
       *
       * @param offset { Number } The offset to read data from (optional)
       * @return { BigInt }
       */
      readBigInt64BE(offset) {
        utils_1.bigIntAndBufferInt64Check("readBigInt64BE");
        return this._readNumberValue(Buffer.prototype.readBigInt64BE, 8, offset);
      }
      /**
       * Reads a BigInt64LE value from the current read position or an optionally provided offset.
       *
       * @param offset { Number } The offset to read data from (optional)
       * @return { BigInt }
       */
      readBigInt64LE(offset) {
        utils_1.bigIntAndBufferInt64Check("readBigInt64LE");
        return this._readNumberValue(Buffer.prototype.readBigInt64LE, 8, offset);
      }
      /**
       * Writes an Int8 value to the current write position (or at optional offset).
       *
       * @param value { Number } The value to write.
       * @param offset { Number } The offset to write the value at.
       *
       * @return this
       */
      writeInt8(value, offset) {
        this._writeNumberValue(Buffer.prototype.writeInt8, 1, value, offset);
        return this;
      }
      /**
       * Inserts an Int8 value at the given offset value.
       *
       * @param value { Number } The value to insert.
       * @param offset { Number } The offset to insert the value at.
       *
       * @return this
       */
      insertInt8(value, offset) {
        return this._insertNumberValue(Buffer.prototype.writeInt8, 1, value, offset);
      }
      /**
       * Writes an Int16BE value to the current write position (or at optional offset).
       *
       * @param value { Number } The value to write.
       * @param offset { Number } The offset to write the value at.
       *
       * @return this
       */
      writeInt16BE(value, offset) {
        return this._writeNumberValue(Buffer.prototype.writeInt16BE, 2, value, offset);
      }
      /**
       * Inserts an Int16BE value at the given offset value.
       *
       * @param value { Number } The value to insert.
       * @param offset { Number } The offset to insert the value at.
       *
       * @return this
       */
      insertInt16BE(value, offset) {
        return this._insertNumberValue(Buffer.prototype.writeInt16BE, 2, value, offset);
      }
      /**
       * Writes an Int16LE value to the current write position (or at optional offset).
       *
       * @param value { Number } The value to write.
       * @param offset { Number } The offset to write the value at.
       *
       * @return this
       */
      writeInt16LE(value, offset) {
        return this._writeNumberValue(Buffer.prototype.writeInt16LE, 2, value, offset);
      }
      /**
       * Inserts an Int16LE value at the given offset value.
       *
       * @param value { Number } The value to insert.
       * @param offset { Number } The offset to insert the value at.
       *
       * @return this
       */
      insertInt16LE(value, offset) {
        return this._insertNumberValue(Buffer.prototype.writeInt16LE, 2, value, offset);
      }
      /**
       * Writes an Int32BE value to the current write position (or at optional offset).
       *
       * @param value { Number } The value to write.
       * @param offset { Number } The offset to write the value at.
       *
       * @return this
       */
      writeInt32BE(value, offset) {
        return this._writeNumberValue(Buffer.prototype.writeInt32BE, 4, value, offset);
      }
      /**
       * Inserts an Int32BE value at the given offset value.
       *
       * @param value { Number } The value to insert.
       * @param offset { Number } The offset to insert the value at.
       *
       * @return this
       */
      insertInt32BE(value, offset) {
        return this._insertNumberValue(Buffer.prototype.writeInt32BE, 4, value, offset);
      }
      /**
       * Writes an Int32LE value to the current write position (or at optional offset).
       *
       * @param value { Number } The value to write.
       * @param offset { Number } The offset to write the value at.
       *
       * @return this
       */
      writeInt32LE(value, offset) {
        return this._writeNumberValue(Buffer.prototype.writeInt32LE, 4, value, offset);
      }
      /**
       * Inserts an Int32LE value at the given offset value.
       *
       * @param value { Number } The value to insert.
       * @param offset { Number } The offset to insert the value at.
       *
       * @return this
       */
      insertInt32LE(value, offset) {
        return this._insertNumberValue(Buffer.prototype.writeInt32LE, 4, value, offset);
      }
      /**
       * Writes a BigInt64BE value to the current write position (or at optional offset).
       *
       * @param value { BigInt } The value to write.
       * @param offset { Number } The offset to write the value at.
       *
       * @return this
       */
      writeBigInt64BE(value, offset) {
        utils_1.bigIntAndBufferInt64Check("writeBigInt64BE");
        return this._writeNumberValue(Buffer.prototype.writeBigInt64BE, 8, value, offset);
      }
      /**
       * Inserts a BigInt64BE value at the given offset value.
       *
       * @param value { BigInt } The value to insert.
       * @param offset { Number } The offset to insert the value at.
       *
       * @return this
       */
      insertBigInt64BE(value, offset) {
        utils_1.bigIntAndBufferInt64Check("writeBigInt64BE");
        return this._insertNumberValue(Buffer.prototype.writeBigInt64BE, 8, value, offset);
      }
      /**
       * Writes a BigInt64LE value to the current write position (or at optional offset).
       *
       * @param value { BigInt } The value to write.
       * @param offset { Number } The offset to write the value at.
       *
       * @return this
       */
      writeBigInt64LE(value, offset) {
        utils_1.bigIntAndBufferInt64Check("writeBigInt64LE");
        return this._writeNumberValue(Buffer.prototype.writeBigInt64LE, 8, value, offset);
      }
      /**
       * Inserts a Int64LE value at the given offset value.
       *
       * @param value { BigInt } The value to insert.
       * @param offset { Number } The offset to insert the value at.
       *
       * @return this
       */
      insertBigInt64LE(value, offset) {
        utils_1.bigIntAndBufferInt64Check("writeBigInt64LE");
        return this._insertNumberValue(Buffer.prototype.writeBigInt64LE, 8, value, offset);
      }
      // Unsigned Integers
      /**
       * Reads an UInt8 value from the current read position or an optionally provided offset.
       *
       * @param offset { Number } The offset to read data from (optional)
       * @return { Number }
       */
      readUInt8(offset) {
        return this._readNumberValue(Buffer.prototype.readUInt8, 1, offset);
      }
      /**
       * Reads an UInt16BE value from the current read position or an optionally provided offset.
       *
       * @param offset { Number } The offset to read data from (optional)
       * @return { Number }
       */
      readUInt16BE(offset) {
        return this._readNumberValue(Buffer.prototype.readUInt16BE, 2, offset);
      }
      /**
       * Reads an UInt16LE value from the current read position or an optionally provided offset.
       *
       * @param offset { Number } The offset to read data from (optional)
       * @return { Number }
       */
      readUInt16LE(offset) {
        return this._readNumberValue(Buffer.prototype.readUInt16LE, 2, offset);
      }
      /**
       * Reads an UInt32BE value from the current read position or an optionally provided offset.
       *
       * @param offset { Number } The offset to read data from (optional)
       * @return { Number }
       */
      readUInt32BE(offset) {
        return this._readNumberValue(Buffer.prototype.readUInt32BE, 4, offset);
      }
      /**
       * Reads an UInt32LE value from the current read position or an optionally provided offset.
       *
       * @param offset { Number } The offset to read data from (optional)
       * @return { Number }
       */
      readUInt32LE(offset) {
        return this._readNumberValue(Buffer.prototype.readUInt32LE, 4, offset);
      }
      /**
       * Reads a BigUInt64BE value from the current read position or an optionally provided offset.
       *
       * @param offset { Number } The offset to read data from (optional)
       * @return { BigInt }
       */
      readBigUInt64BE(offset) {
        utils_1.bigIntAndBufferInt64Check("readBigUInt64BE");
        return this._readNumberValue(Buffer.prototype.readBigUInt64BE, 8, offset);
      }
      /**
       * Reads a BigUInt64LE value from the current read position or an optionally provided offset.
       *
       * @param offset { Number } The offset to read data from (optional)
       * @return { BigInt }
       */
      readBigUInt64LE(offset) {
        utils_1.bigIntAndBufferInt64Check("readBigUInt64LE");
        return this._readNumberValue(Buffer.prototype.readBigUInt64LE, 8, offset);
      }
      /**
       * Writes an UInt8 value to the current write position (or at optional offset).
       *
       * @param value { Number } The value to write.
       * @param offset { Number } The offset to write the value at.
       *
       * @return this
       */
      writeUInt8(value, offset) {
        return this._writeNumberValue(Buffer.prototype.writeUInt8, 1, value, offset);
      }
      /**
       * Inserts an UInt8 value at the given offset value.
       *
       * @param value { Number } The value to insert.
       * @param offset { Number } The offset to insert the value at.
       *
       * @return this
       */
      insertUInt8(value, offset) {
        return this._insertNumberValue(Buffer.prototype.writeUInt8, 1, value, offset);
      }
      /**
       * Writes an UInt16BE value to the current write position (or at optional offset).
       *
       * @param value { Number } The value to write.
       * @param offset { Number } The offset to write the value at.
       *
       * @return this
       */
      writeUInt16BE(value, offset) {
        return this._writeNumberValue(Buffer.prototype.writeUInt16BE, 2, value, offset);
      }
      /**
       * Inserts an UInt16BE value at the given offset value.
       *
       * @param value { Number } The value to insert.
       * @param offset { Number } The offset to insert the value at.
       *
       * @return this
       */
      insertUInt16BE(value, offset) {
        return this._insertNumberValue(Buffer.prototype.writeUInt16BE, 2, value, offset);
      }
      /**
       * Writes an UInt16LE value to the current write position (or at optional offset).
       *
       * @param value { Number } The value to write.
       * @param offset { Number } The offset to write the value at.
       *
       * @return this
       */
      writeUInt16LE(value, offset) {
        return this._writeNumberValue(Buffer.prototype.writeUInt16LE, 2, value, offset);
      }
      /**
       * Inserts an UInt16LE value at the given offset value.
       *
       * @param value { Number } The value to insert.
       * @param offset { Number } The offset to insert the value at.
       *
       * @return this
       */
      insertUInt16LE(value, offset) {
        return this._insertNumberValue(Buffer.prototype.writeUInt16LE, 2, value, offset);
      }
      /**
       * Writes an UInt32BE value to the current write position (or at optional offset).
       *
       * @param value { Number } The value to write.
       * @param offset { Number } The offset to write the value at.
       *
       * @return this
       */
      writeUInt32BE(value, offset) {
        return this._writeNumberValue(Buffer.prototype.writeUInt32BE, 4, value, offset);
      }
      /**
       * Inserts an UInt32BE value at the given offset value.
       *
       * @param value { Number } The value to insert.
       * @param offset { Number } The offset to insert the value at.
       *
       * @return this
       */
      insertUInt32BE(value, offset) {
        return this._insertNumberValue(Buffer.prototype.writeUInt32BE, 4, value, offset);
      }
      /**
       * Writes an UInt32LE value to the current write position (or at optional offset).
       *
       * @param value { Number } The value to write.
       * @param offset { Number } The offset to write the value at.
       *
       * @return this
       */
      writeUInt32LE(value, offset) {
        return this._writeNumberValue(Buffer.prototype.writeUInt32LE, 4, value, offset);
      }
      /**
       * Inserts an UInt32LE value at the given offset value.
       *
       * @param value { Number } The value to insert.
       * @param offset { Number } The offset to insert the value at.
       *
       * @return this
       */
      insertUInt32LE(value, offset) {
        return this._insertNumberValue(Buffer.prototype.writeUInt32LE, 4, value, offset);
      }
      /**
       * Writes a BigUInt64BE value to the current write position (or at optional offset).
       *
       * @param value { Number } The value to write.
       * @param offset { Number } The offset to write the value at.
       *
       * @return this
       */
      writeBigUInt64BE(value, offset) {
        utils_1.bigIntAndBufferInt64Check("writeBigUInt64BE");
        return this._writeNumberValue(Buffer.prototype.writeBigUInt64BE, 8, value, offset);
      }
      /**
       * Inserts a BigUInt64BE value at the given offset value.
       *
       * @param value { Number } The value to insert.
       * @param offset { Number } The offset to insert the value at.
       *
       * @return this
       */
      insertBigUInt64BE(value, offset) {
        utils_1.bigIntAndBufferInt64Check("writeBigUInt64BE");
        return this._insertNumberValue(Buffer.prototype.writeBigUInt64BE, 8, value, offset);
      }
      /**
       * Writes a BigUInt64LE value to the current write position (or at optional offset).
       *
       * @param value { Number } The value to write.
       * @param offset { Number } The offset to write the value at.
       *
       * @return this
       */
      writeBigUInt64LE(value, offset) {
        utils_1.bigIntAndBufferInt64Check("writeBigUInt64LE");
        return this._writeNumberValue(Buffer.prototype.writeBigUInt64LE, 8, value, offset);
      }
      /**
       * Inserts a BigUInt64LE value at the given offset value.
       *
       * @param value { Number } The value to insert.
       * @param offset { Number } The offset to insert the value at.
       *
       * @return this
       */
      insertBigUInt64LE(value, offset) {
        utils_1.bigIntAndBufferInt64Check("writeBigUInt64LE");
        return this._insertNumberValue(Buffer.prototype.writeBigUInt64LE, 8, value, offset);
      }
      // Floating Point
      /**
       * Reads an FloatBE value from the current read position or an optionally provided offset.
       *
       * @param offset { Number } The offset to read data from (optional)
       * @return { Number }
       */
      readFloatBE(offset) {
        return this._readNumberValue(Buffer.prototype.readFloatBE, 4, offset);
      }
      /**
       * Reads an FloatLE value from the current read position or an optionally provided offset.
       *
       * @param offset { Number } The offset to read data from (optional)
       * @return { Number }
       */
      readFloatLE(offset) {
        return this._readNumberValue(Buffer.prototype.readFloatLE, 4, offset);
      }
      /**
       * Writes a FloatBE value to the current write position (or at optional offset).
       *
       * @param value { Number } The value to write.
       * @param offset { Number } The offset to write the value at.
       *
       * @return this
       */
      writeFloatBE(value, offset) {
        return this._writeNumberValue(Buffer.prototype.writeFloatBE, 4, value, offset);
      }
      /**
       * Inserts a FloatBE value at the given offset value.
       *
       * @param value { Number } The value to insert.
       * @param offset { Number } The offset to insert the value at.
       *
       * @return this
       */
      insertFloatBE(value, offset) {
        return this._insertNumberValue(Buffer.prototype.writeFloatBE, 4, value, offset);
      }
      /**
       * Writes a FloatLE value to the current write position (or at optional offset).
       *
       * @param value { Number } The value to write.
       * @param offset { Number } The offset to write the value at.
       *
       * @return this
       */
      writeFloatLE(value, offset) {
        return this._writeNumberValue(Buffer.prototype.writeFloatLE, 4, value, offset);
      }
      /**
       * Inserts a FloatLE value at the given offset value.
       *
       * @param value { Number } The value to insert.
       * @param offset { Number } The offset to insert the value at.
       *
       * @return this
       */
      insertFloatLE(value, offset) {
        return this._insertNumberValue(Buffer.prototype.writeFloatLE, 4, value, offset);
      }
      // Double Floating Point
      /**
       * Reads an DoublEBE value from the current read position or an optionally provided offset.
       *
       * @param offset { Number } The offset to read data from (optional)
       * @return { Number }
       */
      readDoubleBE(offset) {
        return this._readNumberValue(Buffer.prototype.readDoubleBE, 8, offset);
      }
      /**
       * Reads an DoubleLE value from the current read position or an optionally provided offset.
       *
       * @param offset { Number } The offset to read data from (optional)
       * @return { Number }
       */
      readDoubleLE(offset) {
        return this._readNumberValue(Buffer.prototype.readDoubleLE, 8, offset);
      }
      /**
       * Writes a DoubleBE value to the current write position (or at optional offset).
       *
       * @param value { Number } The value to write.
       * @param offset { Number } The offset to write the value at.
       *
       * @return this
       */
      writeDoubleBE(value, offset) {
        return this._writeNumberValue(Buffer.prototype.writeDoubleBE, 8, value, offset);
      }
      /**
       * Inserts a DoubleBE value at the given offset value.
       *
       * @param value { Number } The value to insert.
       * @param offset { Number } The offset to insert the value at.
       *
       * @return this
       */
      insertDoubleBE(value, offset) {
        return this._insertNumberValue(Buffer.prototype.writeDoubleBE, 8, value, offset);
      }
      /**
       * Writes a DoubleLE value to the current write position (or at optional offset).
       *
       * @param value { Number } The value to write.
       * @param offset { Number } The offset to write the value at.
       *
       * @return this
       */
      writeDoubleLE(value, offset) {
        return this._writeNumberValue(Buffer.prototype.writeDoubleLE, 8, value, offset);
      }
      /**
       * Inserts a DoubleLE value at the given offset value.
       *
       * @param value { Number } The value to insert.
       * @param offset { Number } The offset to insert the value at.
       *
       * @return this
       */
      insertDoubleLE(value, offset) {
        return this._insertNumberValue(Buffer.prototype.writeDoubleLE, 8, value, offset);
      }
      // Strings
      /**
       * Reads a String from the current read position.
       *
       * @param arg1 { Number | String } The number of bytes to read as a String, or the BufferEncoding to use for
       *             the string (Defaults to instance level encoding).
       * @param encoding { String } The BufferEncoding to use for the string (Defaults to instance level encoding).
       *
       * @return { String }
       */
      readString(arg1, encoding) {
        let lengthVal;
        if (typeof arg1 === "number") {
          utils_1.checkLengthValue(arg1);
          lengthVal = Math.min(arg1, this.length - this._readOffset);
        } else {
          encoding = arg1;
          lengthVal = this.length - this._readOffset;
        }
        if (typeof encoding !== "undefined") {
          utils_1.checkEncoding(encoding);
        }
        const value = this._buff.slice(this._readOffset, this._readOffset + lengthVal).toString(encoding || this._encoding);
        this._readOffset += lengthVal;
        return value;
      }
      /**
       * Inserts a String
       *
       * @param value { String } The String value to insert.
       * @param offset { Number } The offset to insert the string at.
       * @param encoding { String } The BufferEncoding to use for writing strings (defaults to instance encoding).
       *
       * @return this
       */
      insertString(value, offset, encoding) {
        utils_1.checkOffsetValue(offset);
        return this._handleString(value, true, offset, encoding);
      }
      /**
       * Writes a String
       *
       * @param value { String } The String value to write.
       * @param arg2 { Number | String } The offset to write the string at, or the BufferEncoding to use.
       * @param encoding { String } The BufferEncoding to use for writing strings (defaults to instance encoding).
       *
       * @return this
       */
      writeString(value, arg2, encoding) {
        return this._handleString(value, false, arg2, encoding);
      }
      /**
       * Reads a null-terminated String from the current read position.
       *
       * @param encoding { String } The BufferEncoding to use for the string (Defaults to instance level encoding).
       *
       * @return { String }
       */
      readStringNT(encoding) {
        if (typeof encoding !== "undefined") {
          utils_1.checkEncoding(encoding);
        }
        let nullPos = this.length;
        for (let i2 = this._readOffset; i2 < this.length; i2++) {
          if (this._buff[i2] === 0) {
            nullPos = i2;
            break;
          }
        }
        const value = this._buff.slice(this._readOffset, nullPos);
        this._readOffset = nullPos + 1;
        return value.toString(encoding || this._encoding);
      }
      /**
       * Inserts a null-terminated String.
       *
       * @param value { String } The String value to write.
       * @param arg2 { Number | String } The offset to write the string to, or the BufferEncoding to use.
       * @param encoding { String } The BufferEncoding to use for writing strings (defaults to instance encoding).
       *
       * @return this
       */
      insertStringNT(value, offset, encoding) {
        utils_1.checkOffsetValue(offset);
        this.insertString(value, offset, encoding);
        this.insertUInt8(0, offset + value.length);
        return this;
      }
      /**
       * Writes a null-terminated String.
       *
       * @param value { String } The String value to write.
       * @param arg2 { Number | String } The offset to write the string to, or the BufferEncoding to use.
       * @param encoding { String } The BufferEncoding to use for writing strings (defaults to instance encoding).
       *
       * @return this
       */
      writeStringNT(value, arg2, encoding) {
        this.writeString(value, arg2, encoding);
        this.writeUInt8(0, typeof arg2 === "number" ? arg2 + value.length : this.writeOffset);
        return this;
      }
      // Buffers
      /**
       * Reads a Buffer from the internal read position.
       *
       * @param length { Number } The length of data to read as a Buffer.
       *
       * @return { Buffer }
       */
      readBuffer(length) {
        if (typeof length !== "undefined") {
          utils_1.checkLengthValue(length);
        }
        const lengthVal = typeof length === "number" ? length : this.length;
        const endPoint = Math.min(this.length, this._readOffset + lengthVal);
        const value = this._buff.slice(this._readOffset, endPoint);
        this._readOffset = endPoint;
        return value;
      }
      /**
       * Writes a Buffer to the current write position.
       *
       * @param value { Buffer } The Buffer to write.
       * @param offset { Number } The offset to write the Buffer to.
       *
       * @return this
       */
      insertBuffer(value, offset) {
        utils_1.checkOffsetValue(offset);
        return this._handleBuffer(value, true, offset);
      }
      /**
       * Writes a Buffer to the current write position.
       *
       * @param value { Buffer } The Buffer to write.
       * @param offset { Number } The offset to write the Buffer to.
       *
       * @return this
       */
      writeBuffer(value, offset) {
        return this._handleBuffer(value, false, offset);
      }
      /**
       * Reads a null-terminated Buffer from the current read poisiton.
       *
       * @return { Buffer }
       */
      readBufferNT() {
        let nullPos = this.length;
        for (let i2 = this._readOffset; i2 < this.length; i2++) {
          if (this._buff[i2] === 0) {
            nullPos = i2;
            break;
          }
        }
        const value = this._buff.slice(this._readOffset, nullPos);
        this._readOffset = nullPos + 1;
        return value;
      }
      /**
       * Inserts a null-terminated Buffer.
       *
       * @param value { Buffer } The Buffer to write.
       * @param offset { Number } The offset to write the Buffer to.
       *
       * @return this
       */
      insertBufferNT(value, offset) {
        utils_1.checkOffsetValue(offset);
        this.insertBuffer(value, offset);
        this.insertUInt8(0, offset + value.length);
        return this;
      }
      /**
       * Writes a null-terminated Buffer.
       *
       * @param value { Buffer } The Buffer to write.
       * @param offset { Number } The offset to write the Buffer to.
       *
       * @return this
       */
      writeBufferNT(value, offset) {
        if (typeof offset !== "undefined") {
          utils_1.checkOffsetValue(offset);
        }
        this.writeBuffer(value, offset);
        this.writeUInt8(0, typeof offset === "number" ? offset + value.length : this._writeOffset);
        return this;
      }
      /**
       * Clears the SmartBuffer instance to its original empty state.
       */
      clear() {
        this._writeOffset = 0;
        this._readOffset = 0;
        this.length = 0;
        return this;
      }
      /**
       * Gets the remaining data left to be read from the SmartBuffer instance.
       *
       * @return { Number }
       */
      remaining() {
        return this.length - this._readOffset;
      }
      /**
       * Gets the current read offset value of the SmartBuffer instance.
       *
       * @return { Number }
       */
      get readOffset() {
        return this._readOffset;
      }
      /**
       * Sets the read offset value of the SmartBuffer instance.
       *
       * @param offset { Number } - The offset value to set.
       */
      set readOffset(offset) {
        utils_1.checkOffsetValue(offset);
        utils_1.checkTargetOffset(offset, this);
        this._readOffset = offset;
      }
      /**
       * Gets the current write offset value of the SmartBuffer instance.
       *
       * @return { Number }
       */
      get writeOffset() {
        return this._writeOffset;
      }
      /**
       * Sets the write offset value of the SmartBuffer instance.
       *
       * @param offset { Number } - The offset value to set.
       */
      set writeOffset(offset) {
        utils_1.checkOffsetValue(offset);
        utils_1.checkTargetOffset(offset, this);
        this._writeOffset = offset;
      }
      /**
       * Gets the currently set string encoding of the SmartBuffer instance.
       *
       * @return { BufferEncoding } The string Buffer encoding currently set.
       */
      get encoding() {
        return this._encoding;
      }
      /**
       * Sets the string encoding of the SmartBuffer instance.
       *
       * @param encoding { BufferEncoding } The string Buffer encoding to set.
       */
      set encoding(encoding) {
        utils_1.checkEncoding(encoding);
        this._encoding = encoding;
      }
      /**
       * Gets the underlying internal Buffer. (This includes unmanaged data in the Buffer)
       *
       * @return { Buffer } The Buffer value.
       */
      get internalBuffer() {
        return this._buff;
      }
      /**
       * Gets the value of the internal managed Buffer (Includes managed data only)
       *
       * @param { Buffer }
       */
      toBuffer() {
        return this._buff.slice(0, this.length);
      }
      /**
       * Gets the String value of the internal managed Buffer
       *
       * @param encoding { String } The BufferEncoding to display the Buffer as (defaults to instance level encoding).
       */
      toString(encoding) {
        const encodingVal = typeof encoding === "string" ? encoding : this._encoding;
        utils_1.checkEncoding(encodingVal);
        return this._buff.toString(encodingVal, 0, this.length);
      }
      /**
       * Destroys the SmartBuffer instance.
       */
      destroy() {
        this.clear();
        return this;
      }
      /**
       * Handles inserting and writing strings.
       *
       * @param value { String } The String value to insert.
       * @param isInsert { Boolean } True if inserting a string, false if writing.
       * @param arg2 { Number | String } The offset to insert the string at, or the BufferEncoding to use.
       * @param encoding { String } The BufferEncoding to use for writing strings (defaults to instance encoding).
       */
      _handleString(value, isInsert, arg3, encoding) {
        let offsetVal = this._writeOffset;
        let encodingVal = this._encoding;
        if (typeof arg3 === "number") {
          offsetVal = arg3;
        } else if (typeof arg3 === "string") {
          utils_1.checkEncoding(arg3);
          encodingVal = arg3;
        }
        if (typeof encoding === "string") {
          utils_1.checkEncoding(encoding);
          encodingVal = encoding;
        }
        const byteLength = Buffer.byteLength(value, encodingVal);
        if (isInsert) {
          this.ensureInsertable(byteLength, offsetVal);
        } else {
          this._ensureWriteable(byteLength, offsetVal);
        }
        this._buff.write(value, offsetVal, byteLength, encodingVal);
        if (isInsert) {
          this._writeOffset += byteLength;
        } else {
          if (typeof arg3 === "number") {
            this._writeOffset = Math.max(this._writeOffset, offsetVal + byteLength);
          } else {
            this._writeOffset += byteLength;
          }
        }
        return this;
      }
      /**
       * Handles writing or insert of a Buffer.
       *
       * @param value { Buffer } The Buffer to write.
       * @param offset { Number } The offset to write the Buffer to.
       */
      _handleBuffer(value, isInsert, offset) {
        const offsetVal = typeof offset === "number" ? offset : this._writeOffset;
        if (isInsert) {
          this.ensureInsertable(value.length, offsetVal);
        } else {
          this._ensureWriteable(value.length, offsetVal);
        }
        value.copy(this._buff, offsetVal);
        if (isInsert) {
          this._writeOffset += value.length;
        } else {
          if (typeof offset === "number") {
            this._writeOffset = Math.max(this._writeOffset, offsetVal + value.length);
          } else {
            this._writeOffset += value.length;
          }
        }
        return this;
      }
      /**
       * Ensures that the internal Buffer is large enough to read data.
       *
       * @param length { Number } The length of the data that needs to be read.
       * @param offset { Number } The offset of the data that needs to be read.
       */
      ensureReadable(length, offset) {
        let offsetVal = this._readOffset;
        if (typeof offset !== "undefined") {
          utils_1.checkOffsetValue(offset);
          offsetVal = offset;
        }
        if (offsetVal < 0 || offsetVal + length > this.length) {
          throw new Error(utils_1.ERRORS.INVALID_READ_BEYOND_BOUNDS);
        }
      }
      /**
       * Ensures that the internal Buffer is large enough to insert data.
       *
       * @param dataLength { Number } The length of the data that needs to be written.
       * @param offset { Number } The offset of the data to be written.
       */
      ensureInsertable(dataLength, offset) {
        utils_1.checkOffsetValue(offset);
        this._ensureCapacity(this.length + dataLength);
        if (offset < this.length) {
          this._buff.copy(this._buff, offset + dataLength, offset, this._buff.length);
        }
        if (offset + dataLength > this.length) {
          this.length = offset + dataLength;
        } else {
          this.length += dataLength;
        }
      }
      /**
       * Ensures that the internal Buffer is large enough to write data.
       *
       * @param dataLength { Number } The length of the data that needs to be written.
       * @param offset { Number } The offset of the data to be written (defaults to writeOffset).
       */
      _ensureWriteable(dataLength, offset) {
        const offsetVal = typeof offset === "number" ? offset : this._writeOffset;
        this._ensureCapacity(offsetVal + dataLength);
        if (offsetVal + dataLength > this.length) {
          this.length = offsetVal + dataLength;
        }
      }
      /**
       * Ensures that the internal Buffer is large enough to write at least the given amount of data.
       *
       * @param minLength { Number } The minimum length of the data needs to be written.
       */
      _ensureCapacity(minLength) {
        const oldLength = this._buff.length;
        if (minLength > oldLength) {
          let data = this._buff;
          let newLength = oldLength * 3 / 2 + 1;
          if (newLength < minLength) {
            newLength = minLength;
          }
          this._buff = Buffer.allocUnsafe(newLength);
          data.copy(this._buff, 0, 0, oldLength);
        }
      }
      /**
       * Reads a numeric number value using the provided function.
       *
       * @typeparam T { number | bigint } The type of the value to be read
       *
       * @param func { Function(offset: number) => number } The function to read data on the internal Buffer with.
       * @param byteSize { Number } The number of bytes read.
       * @param offset { Number } The offset to read from (optional). When this is not provided, the managed readOffset is used instead.
       *
       * @returns { T } the number value
       */
      _readNumberValue(func, byteSize, offset) {
        this.ensureReadable(byteSize, offset);
        const value = func.call(this._buff, typeof offset === "number" ? offset : this._readOffset);
        if (typeof offset === "undefined") {
          this._readOffset += byteSize;
        }
        return value;
      }
      /**
       * Inserts a numeric number value based on the given offset and value.
       *
       * @typeparam T { number | bigint } The type of the value to be written
       *
       * @param func { Function(offset: T, offset?) => number} The function to write data on the internal Buffer with.
       * @param byteSize { Number } The number of bytes written.
       * @param value { T } The number value to write.
       * @param offset { Number } the offset to write the number at (REQUIRED).
       *
       * @returns SmartBuffer this buffer
       */
      _insertNumberValue(func, byteSize, value, offset) {
        utils_1.checkOffsetValue(offset);
        this.ensureInsertable(byteSize, offset);
        func.call(this._buff, value, offset);
        this._writeOffset += byteSize;
        return this;
      }
      /**
       * Writes a numeric number value based on the given offset and value.
       *
       * @typeparam T { number | bigint } The type of the value to be written
       *
       * @param func { Function(offset: T, offset?) => number} The function to write data on the internal Buffer with.
       * @param byteSize { Number } The number of bytes written.
       * @param value { T } The number value to write.
       * @param offset { Number } the offset to write the number at (REQUIRED).
       *
       * @returns SmartBuffer this buffer
       */
      _writeNumberValue(func, byteSize, value, offset) {
        if (typeof offset === "number") {
          if (offset < 0) {
            throw new Error(utils_1.ERRORS.INVALID_WRITE_BEYOND_BOUNDS);
          }
          utils_1.checkOffsetValue(offset);
        }
        const offsetVal = typeof offset === "number" ? offset : this._writeOffset;
        this._ensureWriteable(byteSize, offsetVal);
        func.call(this._buff, value, offsetVal);
        if (typeof offset === "number") {
          this._writeOffset = Math.max(this._writeOffset, offsetVal + byteSize);
        } else {
          this._writeOffset += byteSize;
        }
        return this;
      }
    };
    exports2.SmartBuffer = SmartBuffer;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/socks/2.8.9/d15bbe0a5bd995f39e54a104f4d14c0285b4fd00b7405252b2ccee9f2065a90c/node_modules/socks/build/common/constants.js
var require_constants9 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/socks/2.8.9/d15bbe0a5bd995f39e54a104f4d14c0285b4fd00b7405252b2ccee9f2065a90c/node_modules/socks/build/common/constants.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.SOCKS5_NO_ACCEPTABLE_AUTH = exports2.SOCKS5_CUSTOM_AUTH_END = exports2.SOCKS5_CUSTOM_AUTH_START = exports2.SOCKS_INCOMING_PACKET_SIZES = exports2.SocksClientState = exports2.Socks5Response = exports2.Socks5HostType = exports2.Socks5Auth = exports2.Socks4Response = exports2.SocksCommand = exports2.ERRORS = exports2.DEFAULT_TIMEOUT = void 0;
    var DEFAULT_TIMEOUT = 3e4;
    exports2.DEFAULT_TIMEOUT = DEFAULT_TIMEOUT;
    var ERRORS = {
      InvalidSocksCommand: "An invalid SOCKS command was provided. Valid options are connect, bind, and associate.",
      InvalidSocksCommandForOperation: "An invalid SOCKS command was provided. Only a subset of commands are supported for this operation.",
      InvalidSocksCommandChain: "An invalid SOCKS command was provided. Chaining currently only supports the connect command.",
      InvalidSocksClientOptionsDestination: "An invalid destination host was provided.",
      InvalidSocksClientOptionsExistingSocket: "An invalid existing socket was provided. This should be an instance of stream.Duplex.",
      InvalidSocksClientOptionsProxy: "Invalid SOCKS proxy details were provided.",
      InvalidSocksClientOptionsTimeout: "An invalid timeout value was provided. Please enter a value above 0 (in ms).",
      InvalidSocksClientOptionsProxiesLength: "At least two socks proxies must be provided for chaining.",
      InvalidSocksClientOptionsCustomAuthRange: "Custom auth must be a value between 0x80 and 0xFE.",
      InvalidSocksClientOptionsCustomAuthOptions: "When a custom_auth_method is provided, custom_auth_request_handler, custom_auth_response_size, and custom_auth_response_handler must also be provided and valid.",
      NegotiationError: "Negotiation error",
      SocketClosed: "Socket closed",
      ProxyConnectionTimedOut: "Proxy connection timed out",
      InternalError: "SocksClient internal error (this should not happen)",
      InvalidSocks4HandshakeResponse: "Received invalid Socks4 handshake response",
      Socks4ProxyRejectedConnection: "Socks4 Proxy rejected connection",
      InvalidSocks4IncomingConnectionResponse: "Socks4 invalid incoming connection response",
      Socks4ProxyRejectedIncomingBoundConnection: "Socks4 Proxy rejected incoming bound connection",
      InvalidSocks5InitialHandshakeResponse: "Received invalid Socks5 initial handshake response",
      InvalidSocks5IntiailHandshakeSocksVersion: "Received invalid Socks5 initial handshake (invalid socks version)",
      InvalidSocks5InitialHandshakeNoAcceptedAuthType: "Received invalid Socks5 initial handshake (no accepted authentication type)",
      InvalidSocks5InitialHandshakeUnknownAuthType: "Received invalid Socks5 initial handshake (unknown authentication type)",
      Socks5AuthenticationFailed: "Socks5 Authentication failed",
      InvalidSocks5FinalHandshake: "Received invalid Socks5 final handshake response",
      InvalidSocks5FinalHandshakeRejected: "Socks5 proxy rejected connection",
      InvalidSocks5IncomingConnectionResponse: "Received invalid Socks5 incoming connection response",
      Socks5ProxyRejectedIncomingBoundConnection: "Socks5 Proxy rejected incoming bound connection"
    };
    exports2.ERRORS = ERRORS;
    var SOCKS_INCOMING_PACKET_SIZES = {
      Socks5InitialHandshakeResponse: 2,
      Socks5UserPassAuthenticationResponse: 2,
      // Command response + incoming connection (bind)
      Socks5ResponseHeader: 5,
      // We need at least 5 to read the hostname length, then we wait for the address+port information.
      Socks5ResponseIPv4: 10,
      // 4 header + 4 ip + 2 port
      Socks5ResponseIPv6: 22,
      // 4 header + 16 ip + 2 port
      Socks5ResponseHostname: (hostNameLength) => hostNameLength + 7,
      // 4 header + 1 host length + host + 2 port
      // Command response + incoming connection (bind)
      Socks4Response: 8
      // 2 header + 2 port + 4 ip
    };
    exports2.SOCKS_INCOMING_PACKET_SIZES = SOCKS_INCOMING_PACKET_SIZES;
    var SocksCommand;
    (function(SocksCommand2) {
      SocksCommand2[SocksCommand2["connect"] = 1] = "connect";
      SocksCommand2[SocksCommand2["bind"] = 2] = "bind";
      SocksCommand2[SocksCommand2["associate"] = 3] = "associate";
    })(SocksCommand || (exports2.SocksCommand = SocksCommand = {}));
    var Socks4Response;
    (function(Socks4Response2) {
      Socks4Response2[Socks4Response2["Granted"] = 90] = "Granted";
      Socks4Response2[Socks4Response2["Failed"] = 91] = "Failed";
      Socks4Response2[Socks4Response2["Rejected"] = 92] = "Rejected";
      Socks4Response2[Socks4Response2["RejectedIdent"] = 93] = "RejectedIdent";
    })(Socks4Response || (exports2.Socks4Response = Socks4Response = {}));
    var Socks5Auth;
    (function(Socks5Auth2) {
      Socks5Auth2[Socks5Auth2["NoAuth"] = 0] = "NoAuth";
      Socks5Auth2[Socks5Auth2["GSSApi"] = 1] = "GSSApi";
      Socks5Auth2[Socks5Auth2["UserPass"] = 2] = "UserPass";
    })(Socks5Auth || (exports2.Socks5Auth = Socks5Auth = {}));
    var SOCKS5_CUSTOM_AUTH_START = 128;
    exports2.SOCKS5_CUSTOM_AUTH_START = SOCKS5_CUSTOM_AUTH_START;
    var SOCKS5_CUSTOM_AUTH_END = 254;
    exports2.SOCKS5_CUSTOM_AUTH_END = SOCKS5_CUSTOM_AUTH_END;
    var SOCKS5_NO_ACCEPTABLE_AUTH = 255;
    exports2.SOCKS5_NO_ACCEPTABLE_AUTH = SOCKS5_NO_ACCEPTABLE_AUTH;
    var Socks5Response;
    (function(Socks5Response2) {
      Socks5Response2[Socks5Response2["Granted"] = 0] = "Granted";
      Socks5Response2[Socks5Response2["Failure"] = 1] = "Failure";
      Socks5Response2[Socks5Response2["NotAllowed"] = 2] = "NotAllowed";
      Socks5Response2[Socks5Response2["NetworkUnreachable"] = 3] = "NetworkUnreachable";
      Socks5Response2[Socks5Response2["HostUnreachable"] = 4] = "HostUnreachable";
      Socks5Response2[Socks5Response2["ConnectionRefused"] = 5] = "ConnectionRefused";
      Socks5Response2[Socks5Response2["TTLExpired"] = 6] = "TTLExpired";
      Socks5Response2[Socks5Response2["CommandNotSupported"] = 7] = "CommandNotSupported";
      Socks5Response2[Socks5Response2["AddressNotSupported"] = 8] = "AddressNotSupported";
    })(Socks5Response || (exports2.Socks5Response = Socks5Response = {}));
    var Socks5HostType;
    (function(Socks5HostType2) {
      Socks5HostType2[Socks5HostType2["IPv4"] = 1] = "IPv4";
      Socks5HostType2[Socks5HostType2["Hostname"] = 3] = "Hostname";
      Socks5HostType2[Socks5HostType2["IPv6"] = 4] = "IPv6";
    })(Socks5HostType || (exports2.Socks5HostType = Socks5HostType = {}));
    var SocksClientState;
    (function(SocksClientState2) {
      SocksClientState2[SocksClientState2["Created"] = 0] = "Created";
      SocksClientState2[SocksClientState2["Connecting"] = 1] = "Connecting";
      SocksClientState2[SocksClientState2["Connected"] = 2] = "Connected";
      SocksClientState2[SocksClientState2["SentInitialHandshake"] = 3] = "SentInitialHandshake";
      SocksClientState2[SocksClientState2["ReceivedInitialHandshakeResponse"] = 4] = "ReceivedInitialHandshakeResponse";
      SocksClientState2[SocksClientState2["SentAuthentication"] = 5] = "SentAuthentication";
      SocksClientState2[SocksClientState2["ReceivedAuthenticationResponse"] = 6] = "ReceivedAuthenticationResponse";
      SocksClientState2[SocksClientState2["SentFinalHandshake"] = 7] = "SentFinalHandshake";
      SocksClientState2[SocksClientState2["ReceivedFinalResponse"] = 8] = "ReceivedFinalResponse";
      SocksClientState2[SocksClientState2["BoundWaitingForConnection"] = 9] = "BoundWaitingForConnection";
      SocksClientState2[SocksClientState2["Established"] = 10] = "Established";
      SocksClientState2[SocksClientState2["Disconnected"] = 11] = "Disconnected";
      SocksClientState2[SocksClientState2["Error"] = 99] = "Error";
    })(SocksClientState || (exports2.SocksClientState = SocksClientState = {}));
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/socks/2.8.9/d15bbe0a5bd995f39e54a104f4d14c0285b4fd00b7405252b2ccee9f2065a90c/node_modules/socks/build/common/util.js
var require_util5 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/socks/2.8.9/d15bbe0a5bd995f39e54a104f4d14c0285b4fd00b7405252b2ccee9f2065a90c/node_modules/socks/build/common/util.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.shuffleArray = exports2.SocksClientError = void 0;
    var SocksClientError = class extends Error {
      constructor(message, options) {
        super(message);
        this.options = options;
      }
    };
    exports2.SocksClientError = SocksClientError;
    function shuffleArray(array) {
      for (let i2 = array.length - 1; i2 > 0; i2--) {
        const j2 = Math.floor(Math.random() * (i2 + 1));
        [array[i2], array[j2]] = [array[j2], array[i2]];
      }
    }
    exports2.shuffleArray = shuffleArray;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/ip-address/10.2.0/6c89ef68526817bb67e611cac10b1c6b7082eb4a8a1ad9bf2268351b7c59ab62/node_modules/ip-address/dist/address-error.js
var require_address_error = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/ip-address/10.2.0/6c89ef68526817bb67e611cac10b1c6b7082eb4a8a1ad9bf2268351b7c59ab62/node_modules/ip-address/dist/address-error.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.AddressError = void 0;
    var AddressError = class extends Error {
      constructor(message, parseMessage) {
        super(message);
        this.name = "AddressError";
        this.parseMessage = parseMessage;
      }
    };
    exports2.AddressError = AddressError;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/ip-address/10.2.0/6c89ef68526817bb67e611cac10b1c6b7082eb4a8a1ad9bf2268351b7c59ab62/node_modules/ip-address/dist/common.js
var require_common4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/ip-address/10.2.0/6c89ef68526817bb67e611cac10b1c6b7082eb4a8a1ad9bf2268351b7c59ab62/node_modules/ip-address/dist/common.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.isInSubnet = isInSubnet;
    exports2.isCorrect = isCorrect;
    exports2.prefixLengthFromMask = prefixLengthFromMask;
    exports2.numberToPaddedHex = numberToPaddedHex;
    exports2.stringToPaddedHex = stringToPaddedHex;
    exports2.testBit = testBit;
    var address_error_1 = require_address_error();
    function isInSubnet(address) {
      if (this.subnetMask < address.subnetMask) {
        return false;
      }
      if (this.mask(address.subnetMask) === address.mask()) {
        return true;
      }
      return false;
    }
    function isCorrect(defaultBits) {
      return function() {
        if (this.addressMinusSuffix !== this.correctForm()) {
          return false;
        }
        if (this.subnetMask === defaultBits && !this.parsedSubnet) {
          return true;
        }
        return this.parsedSubnet === String(this.subnetMask);
      };
    }
    function prefixLengthFromMask(value, totalBits) {
      const binary2 = value.toString(2).padStart(totalBits, "0");
      if (binary2.length > totalBits) {
        throw new address_error_1.AddressError("Invalid subnet mask.");
      }
      const firstZero = binary2.indexOf("0");
      if (firstZero === -1) {
        return totalBits;
      }
      if (binary2.slice(firstZero).includes("1")) {
        throw new address_error_1.AddressError("Invalid subnet mask.");
      }
      return firstZero;
    }
    function numberToPaddedHex(number) {
      return number.toString(16).padStart(2, "0");
    }
    function stringToPaddedHex(numberString) {
      return numberToPaddedHex(parseInt(numberString, 10));
    }
    function testBit(binaryValue, position3) {
      const { length } = binaryValue;
      if (position3 > length) {
        return false;
      }
      const positionInString = length - position3;
      return binaryValue.substring(positionInString, positionInString + 1) === "1";
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/ip-address/10.2.0/6c89ef68526817bb67e611cac10b1c6b7082eb4a8a1ad9bf2268351b7c59ab62/node_modules/ip-address/dist/v4/constants.js
var require_constants10 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/ip-address/10.2.0/6c89ef68526817bb67e611cac10b1c6b7082eb4a8a1ad9bf2268351b7c59ab62/node_modules/ip-address/dist/v4/constants.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.RE_SUBNET_STRING = exports2.RE_ADDRESS = exports2.GROUPS = exports2.BITS = void 0;
    exports2.BITS = 32;
    exports2.GROUPS = 4;
    exports2.RE_ADDRESS = /^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/g;
    exports2.RE_SUBNET_STRING = /\/\d{1,2}$/;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/ip-address/10.2.0/6c89ef68526817bb67e611cac10b1c6b7082eb4a8a1ad9bf2268351b7c59ab62/node_modules/ip-address/dist/ipv4.js
var require_ipv4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/ip-address/10.2.0/6c89ef68526817bb67e611cac10b1c6b7082eb4a8a1ad9bf2268351b7c59ab62/node_modules/ip-address/dist/ipv4.js"(exports2) {
    "use strict";
    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      var desc = Object.getOwnPropertyDescriptor(m, k2);
      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
        desc = { enumerable: true, get: function() {
          return m[k2];
        } };
      }
      Object.defineProperty(o2, k22, desc);
    }) : (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      o2[k22] = m[k2];
    }));
    var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o2, v) {
      Object.defineProperty(o2, "default", { enumerable: true, value: v });
    }) : function(o2, v) {
      o2["default"] = v;
    });
    var __importStar2 = exports2 && exports2.__importStar || function(mod) {
      if (mod && mod.__esModule) return mod;
      var result2 = {};
      if (mod != null) {
        for (var k2 in mod) if (k2 !== "default" && Object.prototype.hasOwnProperty.call(mod, k2)) __createBinding2(result2, mod, k2);
      }
      __setModuleDefault2(result2, mod);
      return result2;
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.Address4 = void 0;
    var common3 = __importStar2(require_common4());
    var constants5 = __importStar2(require_constants10());
    var address_error_1 = require_address_error();
    var isCorrect4 = common3.isCorrect(constants5.BITS);
    var Address4 = class _Address4 {
      constructor(address) {
        this.groups = constants5.GROUPS;
        this.parsedAddress = [];
        this.parsedSubnet = "";
        this.subnet = "/32";
        this.subnetMask = 32;
        this.v4 = true;
        this.isCorrect = isCorrect4;
        this.isInSubnet = common3.isInSubnet;
        this.address = address;
        const subnet = constants5.RE_SUBNET_STRING.exec(address);
        if (subnet) {
          this.parsedSubnet = subnet[0].replace("/", "");
          this.subnetMask = parseInt(this.parsedSubnet, 10);
          this.subnet = `/${this.subnetMask}`;
          if (this.subnetMask < 0 || this.subnetMask > constants5.BITS) {
            throw new address_error_1.AddressError("Invalid subnet mask.");
          }
          address = address.replace(constants5.RE_SUBNET_STRING, "");
        }
        this.addressMinusSuffix = address;
        this.parsedAddress = this.parse(address);
      }
      /**
       * Returns true if the given string is a valid IPv4 address (with optional
       * CIDR subnet), false otherwise. Host bits in the subnet portion are
       * allowed (e.g. `192.168.1.5/24` is valid); for strict network-address
       * validation compare `correctForm()` to `startAddress().correctForm()`,
       * or use `networkForm()`.
       */
      static isValid(address) {
        try {
          new _Address4(address);
          return true;
        } catch (e) {
          return false;
        }
      }
      /**
       * Parses an IPv4 address string into its four octet groups and stores the
       * result on `this.parsedAddress`. Called automatically by the constructor;
       * you typically don't need to call it directly. Throws `AddressError` if
       * the input is not a valid IPv4 address.
       */
      parse(address) {
        const groups = address.split(".");
        if (!address.match(constants5.RE_ADDRESS)) {
          throw new address_error_1.AddressError("Invalid IPv4 address.");
        }
        return groups;
      }
      /**
       * Returns the address in correct form: octets joined with `.` and any
       * leading zeros stripped (e.g. `192.168.1.1`). For IPv4 this matches the
       * canonical dotted-decimal representation.
       */
      correctForm() {
        return this.parsedAddress.map((part) => parseInt(part, 10)).join(".");
      }
      /**
       * Construct an `Address4` from an address and a dotted-decimal subnet
       * mask given as separate strings (e.g. as returned by Node's
       * `os.networkInterfaces()`). Throws `AddressError` if the mask is
       * non-contiguous (e.g. `255.0.255.0`).
       * @example
       * var address = Address4.fromAddressAndMask('192.168.1.1', '255.255.255.0');
       * address.subnetMask; // 24
       */
      static fromAddressAndMask(address, mask) {
        const bits = common3.prefixLengthFromMask(new _Address4(mask).bigInt(), constants5.BITS);
        return new _Address4(`${address}/${bits}`);
      }
      /**
       * Construct an `Address4` from an address and a Cisco-style wildcard mask
       * given as separate strings (e.g. `0.0.0.255` for a `/24`). The wildcard
       * mask is the bitwise inverse of the subnet mask. Throws `AddressError`
       * if the mask is non-contiguous (e.g. `0.255.0.255`).
       * @example
       * var address = Address4.fromAddressAndWildcardMask('10.0.0.1', '0.0.0.255');
       * address.subnetMask; // 24
       */
      static fromAddressAndWildcardMask(address, wildcardMask) {
        const wildcard = new _Address4(wildcardMask).bigInt();
        const allOnes = (BigInt(1) << BigInt(constants5.BITS)) - BigInt(1);
        const mask = wildcard ^ allOnes;
        const bits = common3.prefixLengthFromMask(mask, constants5.BITS);
        return new _Address4(`${address}/${bits}`);
      }
      /**
       * Construct an `Address4` from a wildcard pattern with trailing `*`
       * octets. The number of trailing wildcards determines the prefix
       * length: each `*` represents 8 bits.
       *
       * Only trailing whole-octet wildcards are supported. Partial-octet
       * wildcards (e.g. `192.168.0.1*`) and interior wildcards (e.g.
       * `192.*.0.1`) throw `AddressError`.
       * @example
       * Address4.fromWildcard('192.168.0.*').subnet;   // '/24'
       * Address4.fromWildcard('192.168.*.*').subnet;   // '/16'
       * Address4.fromWildcard('*.*.*.*').subnet;       // '/0'
       */
      static fromWildcard(input) {
        const groups = input.split(".");
        if (groups.length !== constants5.GROUPS) {
          throw new address_error_1.AddressError("Wildcard pattern must have 4 octets");
        }
        let firstWildcard = -1;
        for (let i2 = 0; i2 < groups.length; i2++) {
          if (groups[i2] === "*") {
            if (firstWildcard === -1) {
              firstWildcard = i2;
            }
          } else if (firstWildcard !== -1) {
            throw new address_error_1.AddressError("Wildcard `*` must only appear in trailing octets (e.g. `192.168.0.*`)");
          }
        }
        const trailing = firstWildcard === -1 ? 0 : groups.length - firstWildcard;
        const replaced = groups.map((g) => g === "*" ? "0" : g);
        const subnetBits = constants5.BITS - trailing * 8;
        return new _Address4(`${replaced.join(".")}/${subnetBits}`);
      }
      /**
       * Converts a hex string to an IPv4 address object. Accepts 8 hex digits
       * with optional `:` separators (e.g. `'7f000001'` or `'7f:00:00:01'`).
       * Throws `AddressError` for any other length or for non-hex characters.
       * @param {string} hex - a hex string to convert
       * @returns {Address4}
       */
      static fromHex(hex) {
        const stripped = hex.replace(/:/g, "");
        if (!/^[0-9a-fA-F]{8}$/.test(stripped)) {
          throw new address_error_1.AddressError("IPv4 hex must be exactly 8 hex digits");
        }
        const groups = [];
        for (let i2 = 0; i2 < 8; i2 += 2) {
          groups.push(parseInt(stripped.slice(i2, i2 + 2), 16));
        }
        return new _Address4(groups.join("."));
      }
      /**
       * Converts an integer into a IPv4 address object. The integer must be a
       * non-negative safe integer in the range `[0, 2**32 - 1]`; otherwise
       * `AddressError` is thrown.
       * @param {integer} integer - a number to convert
       * @returns {Address4}
       */
      static fromInteger(integer) {
        if (!Number.isInteger(integer) || integer < 0 || integer > 4294967295) {
          throw new address_error_1.AddressError("IPv4 integer must be in the range 0 to 2**32 - 1");
        }
        return _Address4.fromHex(integer.toString(16).padStart(8, "0"));
      }
      /**
       * Return an address from in-addr.arpa form
       * @param {string} arpaFormAddress - an 'in-addr.arpa' form ipv4 address
       * @returns {Adress4}
       * @example
       * var address = Address4.fromArpa(42.2.0.192.in-addr.arpa.)
       * address.correctForm(); // '192.0.2.42'
       */
      static fromArpa(arpaFormAddress) {
        const leader = arpaFormAddress.replace(/(\.in-addr\.arpa)?\.$/, "");
        const address = leader.split(".").reverse().join(".");
        return new _Address4(address);
      }
      /**
       * Converts an IPv4 address object to a hex string
       * @returns {String}
       */
      toHex() {
        return this.parsedAddress.map((part) => common3.stringToPaddedHex(part)).join(":");
      }
      /**
       * Converts an IPv4 address object to an array of bytes.
       *
       * To get a Node.js `Buffer`, wrap the result: `Buffer.from(address.toArray())`.
       * @returns {Array}
       */
      toArray() {
        return this.parsedAddress.map((part) => parseInt(part, 10));
      }
      /**
       * Converts an IPv4 address object to an IPv6 address group
       * @returns {String}
       */
      toGroup6() {
        const output = [];
        let i2;
        for (i2 = 0; i2 < constants5.GROUPS; i2 += 2) {
          output.push(`${common3.stringToPaddedHex(this.parsedAddress[i2])}${common3.stringToPaddedHex(this.parsedAddress[i2 + 1])}`);
        }
        return output.join(":");
      }
      /**
       * Returns the address as a `bigint`
       * @returns {bigint}
       */
      bigInt() {
        return BigInt(`0x${this.parsedAddress.map((n2) => common3.stringToPaddedHex(n2)).join("")}`);
      }
      /**
       * Helper function getting start address.
       * @returns {bigint}
       */
      _startAddress() {
        return BigInt(`0b${this.mask() + "0".repeat(constants5.BITS - this.subnetMask)}`);
      }
      /**
       * The first address in the range given by this address' subnet.
       * Often referred to as the Network Address.
       * @returns {Address4}
       */
      startAddress() {
        return _Address4.fromBigInt(this._startAddress());
      }
      /**
       * The first host address in the range given by this address's subnet ie
       * the first address after the Network Address
       * @returns {Address4}
       */
      startAddressExclusive() {
        const adjust = BigInt("1");
        return _Address4.fromBigInt(this._startAddress() + adjust);
      }
      /**
       * Helper function getting end address.
       * @returns {bigint}
       */
      _endAddress() {
        return BigInt(`0b${this.mask() + "1".repeat(constants5.BITS - this.subnetMask)}`);
      }
      /**
       * The last address in the range given by this address' subnet
       * Often referred to as the Broadcast
       * @returns {Address4}
       */
      endAddress() {
        return _Address4.fromBigInt(this._endAddress());
      }
      /**
       * The last host address in the range given by this address's subnet ie
       * the last address prior to the Broadcast Address
       * @returns {Address4}
       */
      endAddressExclusive() {
        const adjust = BigInt("1");
        return _Address4.fromBigInt(this._endAddress() - adjust);
      }
      /**
       * The dotted-decimal form of the subnet mask, e.g. `255.255.240.0` for
       * a `/20`. Returns an `Address4`; call `.correctForm()` for the string.
       * @returns {Address4}
       */
      subnetMaskAddress() {
        return _Address4.fromBigInt(BigInt(`0b${"1".repeat(this.subnetMask)}${"0".repeat(constants5.BITS - this.subnetMask)}`));
      }
      /**
       * The Cisco-style wildcard mask, e.g. `0.0.0.255` for a `/24`. This is
       * the bitwise inverse of `subnetMaskAddress()`. Returns an `Address4`;
       * call `.correctForm()` for the string.
       * @returns {Address4}
       */
      wildcardMask() {
        return _Address4.fromBigInt(BigInt(`0b${"0".repeat(this.subnetMask)}${"1".repeat(constants5.BITS - this.subnetMask)}`));
      }
      /**
       * The network address in CIDR string form, e.g. `192.168.1.0/24` for
       * `192.168.1.5/24`. For an address with no explicit subnet the prefix is
       * `/32`, e.g. `networkForm()` on `192.168.1.5` returns `192.168.1.5/32`.
       * @returns {string}
       */
      networkForm() {
        return `${this.startAddress().correctForm()}/${this.subnetMask}`;
      }
      /**
       * Converts a BigInt to a v4 address object. The value must be in the
       * range `[0, 2**32 - 1]`; otherwise `AddressError` is thrown.
       * @param {bigint} bigInt - a BigInt to convert
       * @returns {Address4}
       */
      static fromBigInt(bigInt) {
        if (bigInt < 0n || bigInt > 0xffffffffn) {
          throw new address_error_1.AddressError("IPv4 BigInt must be in the range 0 to 2**32 - 1");
        }
        return _Address4.fromHex(bigInt.toString(16).padStart(8, "0"));
      }
      /**
       * Convert a byte array to an Address4 object.
       *
       * To convert from a Node.js `Buffer`, spread it: `Address4.fromByteArray([...buf])`.
       * @param {Array<number>} bytes - an array of 4 bytes (0-255)
       * @returns {Address4}
       */
      static fromByteArray(bytes) {
        if (bytes.length !== 4) {
          throw new address_error_1.AddressError("IPv4 addresses require exactly 4 bytes");
        }
        for (let i2 = 0; i2 < bytes.length; i2++) {
          if (!Number.isInteger(bytes[i2]) || bytes[i2] < 0 || bytes[i2] > 255) {
            throw new address_error_1.AddressError("All bytes must be integers between 0 and 255");
          }
        }
        return this.fromUnsignedByteArray(bytes);
      }
      /**
       * Convert an unsigned byte array to an Address4 object
       * @param {Array<number>} bytes - an array of 4 unsigned bytes (0-255)
       * @returns {Address4}
       */
      static fromUnsignedByteArray(bytes) {
        if (bytes.length !== 4) {
          throw new address_error_1.AddressError("IPv4 addresses require exactly 4 bytes");
        }
        const address = bytes.join(".");
        return new _Address4(address);
      }
      /**
       * Returns the first n bits of the address, defaulting to the
       * subnet mask
       * @returns {String}
       */
      mask(mask) {
        if (mask === void 0) {
          mask = this.subnetMask;
        }
        return this.getBitsBase2(0, mask);
      }
      /**
       * Returns the bits in the given range as a base-2 string
       * @returns {string}
       */
      getBitsBase2(start, end) {
        return this.binaryZeroPad().slice(start, end);
      }
      /**
       * Return the reversed ip6.arpa form of the address
       * @param {Object} options
       * @param {boolean} options.omitSuffix - omit the "in-addr.arpa" suffix
       * @returns {String}
       */
      reverseForm(options) {
        if (!options) {
          options = {};
        }
        const reversed = this.correctForm().split(".").reverse().join(".");
        if (options.omitSuffix) {
          return reversed;
        }
        return `${reversed}.in-addr.arpa.`;
      }
      /**
       * Returns true if the given address is a multicast address
       * @returns {boolean}
       */
      isMulticast() {
        return this.isInSubnet(MULTICAST_V4);
      }
      /**
       * Returns true if the address is in one of the [RFC 1918](https://datatracker.ietf.org/doc/html/rfc1918) private address ranges (`10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`).
       * @returns {boolean}
       */
      isPrivate() {
        return PRIVATE_V4.some((subnet) => this.isInSubnet(subnet));
      }
      /**
       * Returns true if the address is in the loopback range `127.0.0.0/8` ([RFC 1122](https://datatracker.ietf.org/doc/html/rfc1122)).
       * @returns {boolean}
       */
      isLoopback() {
        return this.isInSubnet(LOOPBACK_V4);
      }
      /**
       * Returns true if the address is in the link-local range `169.254.0.0/16` ([RFC 3927](https://datatracker.ietf.org/doc/html/rfc3927)).
       * @returns {boolean}
       */
      isLinkLocal() {
        return this.isInSubnet(LINK_LOCAL_V4);
      }
      /**
       * Returns true if the address is the unspecified address `0.0.0.0`.
       * @returns {boolean}
       */
      isUnspecified() {
        return this.isInSubnet(UNSPECIFIED_V4);
      }
      /**
       * Returns true if the address is the limited broadcast address `255.255.255.255` ([RFC 919](https://datatracker.ietf.org/doc/html/rfc919)).
       * @returns {boolean}
       */
      isBroadcast() {
        return this.isInSubnet(BROADCAST_V4);
      }
      /**
       * Returns true if the address is in the carrier-grade NAT range `100.64.0.0/10` ([RFC 6598](https://datatracker.ietf.org/doc/html/rfc6598)).
       * @returns {boolean}
       */
      isCGNAT() {
        return this.isInSubnet(CGNAT_V4);
      }
      /**
       * Returns a zero-padded base-2 string representation of the address
       * @returns {string}
       */
      binaryZeroPad() {
        if (this._binaryZeroPad === void 0) {
          this._binaryZeroPad = this.bigInt().toString(2).padStart(constants5.BITS, "0");
        }
        return this._binaryZeroPad;
      }
      /**
       * Groups an IPv4 address for inclusion at the end of an IPv6 address
       * @returns {String}
       */
      groupForV6() {
        const segments = this.parsedAddress;
        return this.address.replace(constants5.RE_ADDRESS, `<span class="hover-group group-v4 group-6">${segments.slice(0, 2).join(".")}</span>.<span class="hover-group group-v4 group-7">${segments.slice(2, 4).join(".")}</span>`);
      }
    };
    exports2.Address4 = Address4;
    var MULTICAST_V4 = new Address4("224.0.0.0/4");
    var PRIVATE_V4 = [
      new Address4("10.0.0.0/8"),
      new Address4("172.16.0.0/12"),
      new Address4("192.168.0.0/16")
    ];
    var LOOPBACK_V4 = new Address4("127.0.0.0/8");
    var LINK_LOCAL_V4 = new Address4("169.254.0.0/16");
    var UNSPECIFIED_V4 = new Address4("0.0.0.0/32");
    var BROADCAST_V4 = new Address4("255.255.255.255/32");
    var CGNAT_V4 = new Address4("100.64.0.0/10");
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/ip-address/10.2.0/6c89ef68526817bb67e611cac10b1c6b7082eb4a8a1ad9bf2268351b7c59ab62/node_modules/ip-address/dist/v6/constants.js
var require_constants11 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/ip-address/10.2.0/6c89ef68526817bb67e611cac10b1c6b7082eb4a8a1ad9bf2268351b7c59ab62/node_modules/ip-address/dist/v6/constants.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.RE_URL_WITH_PORT = exports2.RE_URL = exports2.RE_ZONE_STRING = exports2.RE_SUBNET_STRING = exports2.RE_BAD_ADDRESS = exports2.RE_BAD_CHARACTERS = exports2.TYPES = exports2.SCOPES = exports2.GROUPS = exports2.BITS = void 0;
    exports2.BITS = 128;
    exports2.GROUPS = 8;
    exports2.SCOPES = {
      0: "Reserved",
      1: "Interface local",
      2: "Link local",
      4: "Admin local",
      5: "Site local",
      8: "Organization local",
      14: "Global",
      15: "Reserved"
    };
    exports2.TYPES = {
      "ff01::1/128": "Multicast (All nodes on this interface)",
      "ff01::2/128": "Multicast (All routers on this interface)",
      "ff02::1/128": "Multicast (All nodes on this link)",
      "ff02::2/128": "Multicast (All routers on this link)",
      "ff05::2/128": "Multicast (All routers in this site)",
      "ff02::5/128": "Multicast (OSPFv3 AllSPF routers)",
      "ff02::6/128": "Multicast (OSPFv3 AllDR routers)",
      "ff02::9/128": "Multicast (RIP routers)",
      "ff02::a/128": "Multicast (EIGRP routers)",
      "ff02::d/128": "Multicast (PIM routers)",
      "ff02::16/128": "Multicast (MLDv2 reports)",
      "ff01::fb/128": "Multicast (mDNSv6)",
      "ff02::fb/128": "Multicast (mDNSv6)",
      "ff05::fb/128": "Multicast (mDNSv6)",
      "ff02::1:2/128": "Multicast (All DHCP servers and relay agents on this link)",
      "ff05::1:2/128": "Multicast (All DHCP servers and relay agents in this site)",
      "ff02::1:3/128": "Multicast (All DHCP servers on this link)",
      "ff05::1:3/128": "Multicast (All DHCP servers in this site)",
      "::/128": "Unspecified",
      "::1/128": "Loopback",
      "ff00::/8": "Multicast",
      "fe80::/10": "Link-local unicast",
      "fc00::/7": "Unique local",
      "2002::/16": "6to4",
      "2001:db8::/32": "Documentation",
      "64:ff9b::/96": "NAT64 (well-known)",
      "64:ff9b:1::/48": "NAT64 (local-use)"
    };
    exports2.RE_BAD_CHARACTERS = /([^0-9a-f:/%])/gi;
    exports2.RE_BAD_ADDRESS = /([0-9a-f]{5,}|:{3,}|[^:]:$|^:[^:]|\/$)/gi;
    exports2.RE_SUBNET_STRING = /\/\d{1,3}(?=%|$)/;
    exports2.RE_ZONE_STRING = /%.*$/;
    exports2.RE_URL = /^\[{0,1}([0-9a-f:]+)\]{0,1}/;
    exports2.RE_URL_WITH_PORT = /\[([0-9a-f:]+)\]:([0-9]{1,5})/;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/ip-address/10.2.0/6c89ef68526817bb67e611cac10b1c6b7082eb4a8a1ad9bf2268351b7c59ab62/node_modules/ip-address/dist/v6/helpers.js
var require_helpers = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/ip-address/10.2.0/6c89ef68526817bb67e611cac10b1c6b7082eb4a8a1ad9bf2268351b7c59ab62/node_modules/ip-address/dist/v6/helpers.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.escapeHtml = escapeHtml;
    exports2.spanAllZeroes = spanAllZeroes;
    exports2.spanAll = spanAll;
    exports2.spanLeadingZeroes = spanLeadingZeroes;
    exports2.simpleGroup = simpleGroup;
    function escapeHtml(s) {
      return s.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&#39;");
    }
    function spanAllZeroes(s) {
      return escapeHtml(s).replace(/(0+)/g, '<span class="zero">$1</span>');
    }
    function spanAll(s, offset = 0) {
      const letters = s.split("");
      return letters.map((n2, i2) => `<span class="digit value-${escapeHtml(n2)} position-${i2 + offset}">${spanAllZeroes(n2)}</span>`).join("");
    }
    function spanLeadingZeroesSimple(group) {
      return escapeHtml(group).replace(/^(0+)/, '<span class="zero">$1</span>');
    }
    function spanLeadingZeroes(address) {
      const groups = address.split(":");
      return groups.map((g) => spanLeadingZeroesSimple(g)).join(":");
    }
    function simpleGroup(addressString, offset = 0) {
      const groups = addressString.split(":");
      return groups.map((g, i2) => {
        if (/group-v4/.test(g)) {
          return g;
        }
        return `<span class="hover-group group-${i2 + offset}">${spanLeadingZeroesSimple(g)}</span>`;
      });
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/ip-address/10.2.0/6c89ef68526817bb67e611cac10b1c6b7082eb4a8a1ad9bf2268351b7c59ab62/node_modules/ip-address/dist/v6/regular-expressions.js
var require_regular_expressions = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/ip-address/10.2.0/6c89ef68526817bb67e611cac10b1c6b7082eb4a8a1ad9bf2268351b7c59ab62/node_modules/ip-address/dist/v6/regular-expressions.js"(exports2) {
    "use strict";
    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      var desc = Object.getOwnPropertyDescriptor(m, k2);
      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
        desc = { enumerable: true, get: function() {
          return m[k2];
        } };
      }
      Object.defineProperty(o2, k22, desc);
    }) : (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      o2[k22] = m[k2];
    }));
    var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o2, v) {
      Object.defineProperty(o2, "default", { enumerable: true, value: v });
    }) : function(o2, v) {
      o2["default"] = v;
    });
    var __importStar2 = exports2 && exports2.__importStar || function(mod) {
      if (mod && mod.__esModule) return mod;
      var result2 = {};
      if (mod != null) {
        for (var k2 in mod) if (k2 !== "default" && Object.prototype.hasOwnProperty.call(mod, k2)) __createBinding2(result2, mod, k2);
      }
      __setModuleDefault2(result2, mod);
      return result2;
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.ADDRESS_BOUNDARY = void 0;
    exports2.groupPossibilities = groupPossibilities;
    exports2.padGroup = padGroup;
    exports2.simpleRegularExpression = simpleRegularExpression;
    exports2.possibleElisions = possibleElisions;
    var v6 = __importStar2(require_constants11());
    function groupPossibilities(possibilities) {
      return `(${possibilities.join("|")})`;
    }
    function padGroup(group) {
      if (group.length < 4) {
        return `0{0,${4 - group.length}}${group}`;
      }
      return group;
    }
    exports2.ADDRESS_BOUNDARY = "[^A-Fa-f0-9:]";
    function simpleRegularExpression(groups) {
      const zeroIndexes = [];
      groups.forEach((group, i2) => {
        const groupInteger = parseInt(group, 16);
        if (groupInteger === 0) {
          zeroIndexes.push(i2);
        }
      });
      const possibilities = zeroIndexes.map((zeroIndex) => groups.map((group, i2) => {
        if (i2 === zeroIndex) {
          const elision = i2 === 0 || i2 === v6.GROUPS - 1 ? ":" : "";
          return groupPossibilities([padGroup(group), elision]);
        }
        return padGroup(group);
      }).join(":"));
      possibilities.push(groups.map(padGroup).join(":"));
      return groupPossibilities(possibilities);
    }
    function possibleElisions(elidedGroups, moreLeft, moreRight) {
      const left = moreLeft ? "" : ":";
      const right = moreRight ? "" : ":";
      const possibilities = [];
      if (!moreLeft && !moreRight) {
        possibilities.push("::");
      }
      if (moreLeft && moreRight) {
        possibilities.push("");
      }
      if (moreRight && !moreLeft || !moreRight && moreLeft) {
        possibilities.push(":");
      }
      possibilities.push(`${left}(:0{1,4}){1,${elidedGroups - 1}}`);
      possibilities.push(`(0{1,4}:){1,${elidedGroups - 1}}${right}`);
      possibilities.push(`(0{1,4}:){${elidedGroups - 1}}0{1,4}`);
      for (let groups = 1; groups < elidedGroups - 1; groups++) {
        for (let position3 = 1; position3 < elidedGroups - groups; position3++) {
          possibilities.push(`(0{1,4}:){${position3}}:(0{1,4}:){${elidedGroups - position3 - groups - 1}}0{1,4}`);
        }
      }
      return groupPossibilities(possibilities);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/ip-address/10.2.0/6c89ef68526817bb67e611cac10b1c6b7082eb4a8a1ad9bf2268351b7c59ab62/node_modules/ip-address/dist/ipv6.js
var require_ipv6 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/ip-address/10.2.0/6c89ef68526817bb67e611cac10b1c6b7082eb4a8a1ad9bf2268351b7c59ab62/node_modules/ip-address/dist/ipv6.js"(exports2) {
    "use strict";
    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      var desc = Object.getOwnPropertyDescriptor(m, k2);
      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
        desc = { enumerable: true, get: function() {
          return m[k2];
        } };
      }
      Object.defineProperty(o2, k22, desc);
    }) : (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      o2[k22] = m[k2];
    }));
    var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o2, v) {
      Object.defineProperty(o2, "default", { enumerable: true, value: v });
    }) : function(o2, v) {
      o2["default"] = v;
    });
    var __importStar2 = exports2 && exports2.__importStar || function(mod) {
      if (mod && mod.__esModule) return mod;
      var result2 = {};
      if (mod != null) {
        for (var k2 in mod) if (k2 !== "default" && Object.prototype.hasOwnProperty.call(mod, k2)) __createBinding2(result2, mod, k2);
      }
      __setModuleDefault2(result2, mod);
      return result2;
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.Address6 = void 0;
    var common3 = __importStar2(require_common4());
    var constants42 = __importStar2(require_constants10());
    var constants6 = __importStar2(require_constants11());
    var helpers = __importStar2(require_helpers());
    var ipv4_1 = require_ipv4();
    var regular_expressions_1 = require_regular_expressions();
    var address_error_1 = require_address_error();
    var common_1 = require_common4();
    var isCorrect6 = common3.isCorrect(constants6.BITS);
    function assert13(condition) {
      if (!condition) {
        throw new Error("Assertion failed.");
      }
    }
    function addCommas(number) {
      const r = /(\d+)(\d{3})/;
      while (r.test(number)) {
        number = number.replace(r, "$1,$2");
      }
      return number;
    }
    function spanLeadingZeroes4(n2) {
      n2 = n2.replace(/^(0{1,})([1-9]+)$/, '<span class="parse-error">$1</span>$2');
      n2 = n2.replace(/^(0{1,})(0)$/, '<span class="parse-error">$1</span>$2');
      return n2;
    }
    function compact(address, slice3) {
      const s1 = [];
      const s2 = [];
      let i2;
      for (i2 = 0; i2 < address.length; i2++) {
        if (i2 < slice3[0]) {
          s1.push(address[i2]);
        } else if (i2 > slice3[1]) {
          s2.push(address[i2]);
        }
      }
      return s1.concat(["compact"]).concat(s2);
    }
    function paddedHex(octet) {
      return parseInt(octet, 16).toString(16).padStart(4, "0");
    }
    function unsignByte(b) {
      return b & 255;
    }
    var Address6 = class _Address6 {
      constructor(address, optionalGroups) {
        this.addressMinusSuffix = "";
        this.parsedSubnet = "";
        this.subnet = "/128";
        this.subnetMask = 128;
        this.v4 = false;
        this.zone = "";
        this.isInSubnet = common3.isInSubnet;
        this.isCorrect = isCorrect6;
        if (optionalGroups === void 0) {
          this.groups = constants6.GROUPS;
        } else {
          this.groups = optionalGroups;
        }
        this.address = address;
        const subnet = constants6.RE_SUBNET_STRING.exec(address);
        if (subnet) {
          this.parsedSubnet = subnet[0].replace("/", "");
          this.subnetMask = parseInt(this.parsedSubnet, 10);
          this.subnet = `/${this.subnetMask}`;
          if (Number.isNaN(this.subnetMask) || this.subnetMask < 0 || this.subnetMask > constants6.BITS) {
            throw new address_error_1.AddressError("Invalid subnet mask.");
          }
          address = address.replace(constants6.RE_SUBNET_STRING, "");
        } else if (/\//.test(address)) {
          throw new address_error_1.AddressError("Invalid subnet mask.");
        }
        const zone = constants6.RE_ZONE_STRING.exec(address);
        if (zone) {
          this.zone = zone[0];
          address = address.replace(constants6.RE_ZONE_STRING, "");
        }
        this.addressMinusSuffix = address;
        this.parsedAddress = this.parse(this.addressMinusSuffix);
      }
      /**
       * Returns true if the given string is a valid IPv6 address (with optional
       * CIDR subnet and zone identifier), false otherwise. Host bits in the
       * subnet portion are allowed (e.g. `2001:db8::1/32` is valid); for strict
       * network-address validation compare `correctForm()` to
       * `startAddress().correctForm()`, or use `networkForm()`.
       */
      static isValid(address) {
        try {
          new _Address6(address);
          return true;
        } catch (e) {
          return false;
        }
      }
      /**
       * Convert a BigInt to a v6 address object. The value must be in the
       * range `[0, 2**128 - 1]`; otherwise `AddressError` is thrown.
       * @param {bigint} bigInt - a BigInt to convert
       * @returns {Address6}
       * @example
       * var bigInt = BigInt('1000000000000');
       * var address = Address6.fromBigInt(bigInt);
       * address.correctForm(); // '::e8:d4a5:1000'
       */
      static fromBigInt(bigInt) {
        if (bigInt < 0n || bigInt > (1n << BigInt(constants6.BITS)) - 1n) {
          throw new address_error_1.AddressError("IPv6 BigInt must be in the range 0 to 2**128 - 1");
        }
        const hex = bigInt.toString(16).padStart(32, "0");
        const groups = [];
        for (let i2 = 0; i2 < constants6.GROUPS; i2++) {
          groups.push(hex.slice(i2 * 4, (i2 + 1) * 4));
        }
        return new _Address6(groups.join(":"));
      }
      /**
       * Parse a URL (with optional bracketed host and port) into an address and
       * port. Returns either `{ address, port }` on success or
       * `{ error, address: null, port: null }` if the URL could not be parsed.
       * Ports are returned as numbers (or `null` if absent or out of range).
       * @example
       * var addressAndPort = Address6.fromURL('http://[ffff::]:8080/foo/');
       * addressAndPort.address.correctForm(); // 'ffff::'
       * addressAndPort.port; // 8080
       */
      static fromURL(url7) {
        let host;
        let port = null;
        let result2;
        if (url7.indexOf("[") !== -1 && url7.indexOf("]:") !== -1) {
          result2 = constants6.RE_URL_WITH_PORT.exec(url7);
          if (result2 === null) {
            return {
              error: "failed to parse address with port",
              address: null,
              port: null
            };
          }
          host = result2[1];
          port = result2[2];
        } else if (url7.indexOf("/") !== -1) {
          url7 = url7.replace(/^[a-z0-9]+:\/\//, "");
          result2 = constants6.RE_URL.exec(url7);
          if (result2 === null) {
            return {
              error: "failed to parse address from URL",
              address: null,
              port: null
            };
          }
          host = result2[1];
        } else {
          host = url7;
        }
        if (port) {
          port = parseInt(port, 10);
          if (port < 0 || port > 65536) {
            port = null;
          }
        } else {
          port = null;
        }
        return {
          address: new _Address6(host),
          port
        };
      }
      /**
       * Construct an `Address6` from an address and a hex subnet mask given as
       * separate strings (e.g. as returned by Node's `os.networkInterfaces()`).
       * Throws `AddressError` if the mask is non-contiguous (e.g.
       * `ffff::ffff`).
       * @example
       * var address = Address6.fromAddressAndMask('fe80::1', 'ffff:ffff:ffff:ffff::');
       * address.subnetMask; // 64
       */
      static fromAddressAndMask(address, mask) {
        const bits = common3.prefixLengthFromMask(new _Address6(mask).bigInt(), constants6.BITS);
        return new _Address6(`${address}/${bits}`);
      }
      /**
       * Construct an `Address6` from an address and a Cisco-style wildcard mask
       * given as separate strings (e.g. `::ffff:ffff:ffff:ffff` for a `/64`).
       * The wildcard mask is the bitwise inverse of the subnet mask. Throws
       * `AddressError` if the mask is non-contiguous.
       * @example
       * var address = Address6.fromAddressAndWildcardMask('fe80::1', '::ffff:ffff:ffff:ffff');
       * address.subnetMask; // 64
       */
      static fromAddressAndWildcardMask(address, wildcardMask) {
        const wildcard = new _Address6(wildcardMask).bigInt();
        const allOnes = (BigInt(1) << BigInt(constants6.BITS)) - BigInt(1);
        const mask = wildcard ^ allOnes;
        const bits = common3.prefixLengthFromMask(mask, constants6.BITS);
        return new _Address6(`${address}/${bits}`);
      }
      /**
       * Construct an `Address6` from a wildcard pattern with trailing `*`
       * groups. The number of trailing wildcards determines the prefix
       * length: each `*` represents 16 bits. `::` is expanded to zero groups
       * (not wildcards) before evaluating trailing wildcards.
       *
       * Only trailing whole-group wildcards are supported. Partial-group
       * wildcards (e.g. `2001:db8::0*`) and interior wildcards (e.g.
       * `*::1`) throw `AddressError`.
       * @example
       * Address6.fromWildcard('2001:db8:*:*:*:*:*:*').subnet;  // '/32'
       * Address6.fromWildcard('2001:db8::*').subnet;           // '/112'
       * Address6.fromWildcard('*:*:*:*:*:*:*:*').subnet;       // '/0'
       */
      static fromWildcard(input) {
        if (input.includes("%") || input.includes("/")) {
          throw new address_error_1.AddressError("Wildcard pattern must not include a zone or CIDR suffix");
        }
        const halves = input.split("::");
        if (halves.length > 2) {
          throw new address_error_1.AddressError("Wildcard pattern cannot contain more than one '::'");
        }
        let groups;
        if (halves.length === 2) {
          const left = halves[0] === "" ? [] : halves[0].split(":");
          const right = halves[1] === "" ? [] : halves[1].split(":");
          const remaining = constants6.GROUPS - left.length - right.length;
          if (remaining < 1) {
            throw new address_error_1.AddressError("Wildcard pattern with '::' has too many groups");
          }
          groups = [...left, ...new Array(remaining).fill("0"), ...right];
        } else {
          groups = input.split(":");
        }
        if (groups.length !== constants6.GROUPS) {
          throw new address_error_1.AddressError("Wildcard pattern must have 8 groups");
        }
        let firstWildcard = -1;
        for (let i2 = 0; i2 < groups.length; i2++) {
          if (groups[i2] === "*") {
            if (firstWildcard === -1) {
              firstWildcard = i2;
            }
          } else if (firstWildcard !== -1) {
            throw new address_error_1.AddressError("Wildcard `*` must only appear in trailing groups (e.g. `2001:db8:*:*:*:*:*:*`)");
          }
        }
        const trailing = firstWildcard === -1 ? 0 : groups.length - firstWildcard;
        const replaced = groups.map((g) => g === "*" ? "0" : g);
        const subnetBits = constants6.BITS - trailing * 16;
        return new _Address6(`${replaced.join(":")}/${subnetBits}`);
      }
      /**
       * Create an IPv6-mapped address given an IPv4 address
       * @param {string} address - An IPv4 address string
       * @returns {Address6}
       * @example
       * var address = Address6.fromAddress4('192.168.0.1');
       * address.correctForm(); // '::ffff:c0a8:1'
       * address.to4in6(); // '::ffff:192.168.0.1'
       */
      static fromAddress4(address) {
        const address4 = new ipv4_1.Address4(address);
        const mask6 = constants6.BITS - (constants42.BITS - address4.subnetMask);
        return new _Address6(`::ffff:${address4.correctForm()}/${mask6}`);
      }
      /**
       * Return an address from ip6.arpa form
       * @param {string} arpaFormAddress - an 'ip6.arpa' form address
       * @returns {Adress6}
       * @example
       * var address = Address6.fromArpa(e.f.f.f.3.c.2.6.f.f.f.e.6.6.8.e.1.0.6.7.9.4.e.c.0.0.0.0.1.0.0.2.ip6.arpa.)
       * address.correctForm(); // '2001:0:ce49:7601:e866:efff:62c3:fffe'
       */
      static fromArpa(arpaFormAddress) {
        let address = arpaFormAddress.replace(/(\.ip6\.arpa)?\.$/, "");
        const semicolonAmount = 7;
        if (address.length !== 63) {
          throw new address_error_1.AddressError("Invalid 'ip6.arpa' form.");
        }
        const parts = address.split(".").reverse();
        for (let i2 = semicolonAmount; i2 > 0; i2--) {
          const insertIndex = i2 * 4;
          parts.splice(insertIndex, 0, ":");
        }
        address = parts.join("");
        return new _Address6(address);
      }
      /**
       * Return the Microsoft UNC transcription of the address
       * @returns {String} the Microsoft UNC transcription of the address
       */
      microsoftTranscription() {
        return `${this.correctForm().replace(/:/g, "-")}.ipv6-literal.net`;
      }
      /**
       * Return the first n bits of the address, defaulting to the subnet mask
       * @param {number} [mask=subnet] - the number of bits to mask
       * @returns {String} the first n bits of the address as a string
       */
      mask(mask = this.subnetMask) {
        return this.getBitsBase2(0, mask);
      }
      /**
       * Return the number of possible subnets of a given size in the address
       * @param {number} [subnetSize=128] - the subnet size
       * @returns {String}
       */
      // TODO: probably useful to have a numeric version of this too
      possibleSubnets(subnetSize = 128) {
        const availableBits = constants6.BITS - this.subnetMask;
        const subnetBits = Math.abs(subnetSize - constants6.BITS);
        const subnetPowers = availableBits - subnetBits;
        if (subnetPowers < 0) {
          return "0";
        }
        return addCommas((BigInt("2") ** BigInt(subnetPowers)).toString(10));
      }
      /**
       * Helper function getting start address.
       * @returns {bigint}
       */
      _startAddress() {
        return BigInt(`0b${this.mask() + "0".repeat(constants6.BITS - this.subnetMask)}`);
      }
      /**
       * The first address in the range given by this address' subnet
       * Often referred to as the Network Address.
       * @returns {Address6}
       */
      startAddress() {
        return _Address6.fromBigInt(this._startAddress());
      }
      /**
       * The first host address in the range given by this address's subnet ie
       * the first address after the Network Address
       * @returns {Address6}
       */
      startAddressExclusive() {
        const adjust = BigInt("1");
        return _Address6.fromBigInt(this._startAddress() + adjust);
      }
      /**
       * Helper function getting end address.
       * @returns {bigint}
       */
      _endAddress() {
        return BigInt(`0b${this.mask() + "1".repeat(constants6.BITS - this.subnetMask)}`);
      }
      /**
       * The last address in the range given by this address' subnet
       * Often referred to as the Broadcast
       * @returns {Address6}
       */
      endAddress() {
        return _Address6.fromBigInt(this._endAddress());
      }
      /**
       * The last host address in the range given by this address's subnet ie
       * the last address prior to the Broadcast Address
       * @returns {Address6}
       */
      endAddressExclusive() {
        const adjust = BigInt("1");
        return _Address6.fromBigInt(this._endAddress() - adjust);
      }
      /**
       * The hex form of the subnet mask, e.g. `ffff:ffff:ffff:ffff::` for a
       * `/64`. Returns an `Address6`; call `.correctForm()` for the string.
       * @returns {Address6}
       */
      subnetMaskAddress() {
        return _Address6.fromBigInt(BigInt(`0b${"1".repeat(this.subnetMask)}${"0".repeat(constants6.BITS - this.subnetMask)}`));
      }
      /**
       * The Cisco-style wildcard mask, e.g. `::ffff:ffff:ffff:ffff` for a
       * `/64`. This is the bitwise inverse of `subnetMaskAddress()`. Returns
       * an `Address6`; call `.correctForm()` for the string.
       * @returns {Address6}
       */
      wildcardMask() {
        return _Address6.fromBigInt(BigInt(`0b${"0".repeat(this.subnetMask)}${"1".repeat(constants6.BITS - this.subnetMask)}`));
      }
      /**
       * The network address in CIDR string form, e.g. `2001:db8::/32` for
       * `2001:db8::1/32`. For an address with no explicit subnet the prefix
       * is `/128`, e.g. `networkForm()` on `2001:db8::1` returns
       * `2001:db8::1/128`.
       * @returns {string}
       */
      networkForm() {
        return `${this.startAddress().correctForm()}/${this.subnetMask}`;
      }
      /**
       * Return the scope of the address. The 4-bit scope field
       * ([RFC 4291 §2.7](https://datatracker.ietf.org/doc/html/rfc4291#section-2.7))
       * is only defined for multicast addresses; for unicast addresses the scope
       * is derived from the address type per
       * [RFC 4007 §6](https://datatracker.ietf.org/doc/html/rfc4007#section-6).
       * @returns {String}
       */
      getScope() {
        const type4 = this.getType();
        if (type4 === "Multicast" || type4.startsWith("Multicast ")) {
          const scope = constants6.SCOPES[parseInt(this.getBits(12, 16).toString(10), 10)];
          return scope || "Unknown";
        }
        if (type4 === "Link-local unicast" || type4 === "Loopback") {
          return "Link local";
        }
        if (type4 === "Unspecified") {
          return "Unknown";
        }
        return "Global";
      }
      /**
       * Return the type of the address
       * @returns {String}
       */
      getType() {
        for (let i2 = 0; i2 < TYPE_SUBNETS.length; i2++) {
          const entry = TYPE_SUBNETS[i2];
          if (this.isInSubnet(entry[0])) {
            return entry[1];
          }
        }
        return "Global unicast";
      }
      /**
       * Return the bits in the given range as a BigInt
       * @returns {bigint}
       */
      getBits(start, end) {
        return BigInt(`0b${this.getBitsBase2(start, end)}`);
      }
      /**
       * Return the bits in the given range as a base-2 string
       * @returns {String}
       */
      getBitsBase2(start, end) {
        return this.binaryZeroPad().slice(start, end);
      }
      /**
       * Return the bits in the given range as a base-16 string
       * @returns {String}
       */
      getBitsBase16(start, end) {
        const length = end - start;
        if (length % 4 !== 0) {
          throw new Error("Length of bits to retrieve must be divisible by four");
        }
        return this.getBits(start, end).toString(16).padStart(length / 4, "0");
      }
      /**
       * Return the bits that are set past the subnet mask length
       * @returns {String}
       */
      getBitsPastSubnet() {
        return this.getBitsBase2(this.subnetMask, constants6.BITS);
      }
      /**
       * Return the reversed ip6.arpa form of the address
       * @param {Object} options
       * @param {boolean} options.omitSuffix - omit the "ip6.arpa" suffix
       * @returns {String}
       */
      reverseForm(options) {
        if (!options) {
          options = {};
        }
        const characters = Math.floor(this.subnetMask / 4);
        const reversed = this.canonicalForm().replace(/:/g, "").split("").slice(0, characters).reverse().join(".");
        if (characters > 0) {
          if (options.omitSuffix) {
            return reversed;
          }
          return `${reversed}.ip6.arpa.`;
        }
        if (options.omitSuffix) {
          return "";
        }
        return "ip6.arpa.";
      }
      /**
       * Returns the address in correct form, per
       * [RFC 5952](https://datatracker.ietf.org/doc/html/rfc5952): leading zeros
       * stripped, the longest run of zero groups collapsed to `::`, and hex digits
       * lowercased (e.g. `2001:db8::1`). This is the recommended form for display.
       */
      correctForm() {
        let i2;
        let groups = [];
        let zeroCounter = 0;
        const zeroes = [];
        for (i2 = 0; i2 < this.parsedAddress.length; i2++) {
          const value = parseInt(this.parsedAddress[i2], 16);
          if (value === 0) {
            zeroCounter++;
          }
          if (value !== 0 && zeroCounter > 0) {
            if (zeroCounter > 1) {
              zeroes.push([i2 - zeroCounter, i2 - 1]);
            }
            zeroCounter = 0;
          }
        }
        if (zeroCounter > 1) {
          zeroes.push([this.parsedAddress.length - zeroCounter, this.parsedAddress.length - 1]);
        }
        const zeroLengths = zeroes.map((n2) => n2[1] - n2[0] + 1);
        if (zeroes.length > 0) {
          const index = zeroLengths.indexOf(Math.max(...zeroLengths));
          groups = compact(this.parsedAddress, zeroes[index]);
        } else {
          groups = this.parsedAddress;
        }
        for (i2 = 0; i2 < groups.length; i2++) {
          if (groups[i2] !== "compact") {
            groups[i2] = parseInt(groups[i2], 16).toString(16);
          }
        }
        let correct = groups.join(":");
        correct = correct.replace(/^compact$/, "::");
        correct = correct.replace(/(^compact)|(compact$)/, ":");
        correct = correct.replace(/compact/, "");
        return correct;
      }
      /**
       * Return a zero-padded base-2 string representation of the address
       * @returns {String}
       * @example
       * var address = new Address6('2001:4860:4001:803::1011');
       * address.binaryZeroPad();
       * // '0010000000000001010010000110000001000000000000010000100000000011
       * //  0000000000000000000000000000000000000000000000000001000000010001'
       */
      binaryZeroPad() {
        if (this._binaryZeroPad === void 0) {
          this._binaryZeroPad = this.bigInt().toString(2).padStart(constants6.BITS, "0");
        }
        return this._binaryZeroPad;
      }
      /**
       * Parses a v4-in-v6 string (e.g. `::ffff:192.168.0.1`) by extracting the
       * trailing IPv4 address into `this.address4` / `this.parsedAddress4` and
       * returning the address with the v4 portion converted to two v6 groups.
       * Used internally by `parse()`.
       */
      // TODO: Improve the semantics of this helper function
      parse4in6(address) {
        if (address.indexOf(".") === -1) {
          return address;
        }
        const groups = address.split(":");
        const lastGroup = groups.slice(-1)[0];
        const address4 = lastGroup.match(constants42.RE_ADDRESS);
        if (address4) {
          this.parsedAddress4 = address4[0];
          this.address4 = new ipv4_1.Address4(this.parsedAddress4);
          for (let i2 = 0; i2 < this.address4.groups; i2++) {
            if (/^0[0-9]+/.test(this.address4.parsedAddress[i2])) {
              const highlighted = this.address4.parsedAddress.map(spanLeadingZeroes4).join(".");
              const prefix = groups.slice(0, -1).map(helpers.escapeHtml).join(":");
              const separator = groups.length > 1 ? ":" : "";
              throw new address_error_1.AddressError("IPv4 addresses can't have leading zeroes.", `${prefix}${separator}${highlighted}`);
            }
          }
          this.v4 = true;
          groups[groups.length - 1] = this.address4.toGroup6();
          address = groups.join(":");
        }
        return address;
      }
      /**
       * Parses an IPv6 address string into its 8 hexadecimal groups (expanding
       * any `::` elision and any trailing v4-in-v6 portion) and stores the result
       * on `this.parsedAddress`. Called automatically by the constructor; you
       * typically don't need to call it directly. Throws `AddressError` if the
       * input is malformed.
       */
      // TODO: Make private?
      parse(address) {
        address = this.parse4in6(address);
        const badCharacters = address.match(constants6.RE_BAD_CHARACTERS);
        if (badCharacters) {
          throw new address_error_1.AddressError(`Bad character${badCharacters.length > 1 ? "s" : ""} detected in address: ${badCharacters.join("")}`, address.replace(constants6.RE_BAD_CHARACTERS, '<span class="parse-error">$1</span>'));
        }
        const badAddress = address.match(constants6.RE_BAD_ADDRESS);
        if (badAddress) {
          throw new address_error_1.AddressError(`Address failed regex: ${badAddress.join("")}`, address.replace(constants6.RE_BAD_ADDRESS, '<span class="parse-error">$1</span>'));
        }
        let groups = [];
        const halves = address.split("::");
        if (halves.length === 2) {
          let first = halves[0].split(":");
          let last = halves[1].split(":");
          if (first.length === 1 && first[0] === "") {
            first = [];
          }
          if (last.length === 1 && last[0] === "") {
            last = [];
          }
          const remaining = this.groups - (first.length + last.length);
          if (!remaining) {
            throw new address_error_1.AddressError("Error parsing groups");
          }
          this.elidedGroups = remaining;
          this.elisionBegin = first.length;
          this.elisionEnd = first.length + this.elidedGroups;
          groups = groups.concat(first);
          for (let i2 = 0; i2 < remaining; i2++) {
            groups.push("0");
          }
          groups = groups.concat(last);
        } else if (halves.length === 1) {
          groups = address.split(":");
          this.elidedGroups = 0;
        } else {
          throw new address_error_1.AddressError("Too many :: groups found");
        }
        groups = groups.map((group) => parseInt(group, 16).toString(16));
        if (groups.length !== this.groups) {
          throw new address_error_1.AddressError("Incorrect number of groups found");
        }
        return groups;
      }
      /**
       * Returns the canonical (fully expanded) form of the address: all 8 groups,
       * each padded to 4 hex digits, with no `::` collapsing
       * (e.g. `2001:0db8:0000:0000:0000:0000:0000:0001`). Useful for sorting and
       * byte-exact comparison.
       */
      canonicalForm() {
        return this.parsedAddress.map(paddedHex).join(":");
      }
      /**
       * Return the decimal form of the address
       * @returns {String}
       */
      decimal() {
        return this.parsedAddress.map((n2) => parseInt(n2, 16).toString(10).padStart(5, "0")).join(":");
      }
      /**
       * Return the address as a BigInt
       * @returns {bigint}
       */
      bigInt() {
        return BigInt(`0x${this.parsedAddress.map(paddedHex).join("")}`);
      }
      /**
       * Return the last two groups of this address as an IPv4 address string
       * @returns {Address4}
       * @example
       * var address = new Address6('2001:4860:4001::1825:bf11');
       * address.to4().correctForm(); // '24.37.191.17'
       */
      to4() {
        const binary2 = this.binaryZeroPad().split("");
        return ipv4_1.Address4.fromHex(BigInt(`0b${binary2.slice(96, 128).join("")}`).toString(16).padStart(8, "0"));
      }
      /**
       * Return the v4-in-v6 form of the address
       * @returns {String}
       */
      to4in6() {
        const address4 = this.to4();
        const address6 = new _Address6(this.parsedAddress.slice(0, 6).join(":"), 6);
        const correct = address6.correctForm();
        let infix = "";
        if (!/:$/.test(correct)) {
          infix = ":";
        }
        return correct + infix + address4.address;
      }
      /**
       * Decodes the Teredo tunneling fields embedded in this address. Returns the
       * Teredo prefix, server IPv4, client IPv4, raw flag bits, cone-NAT flag,
       * UDP port, and Microsoft-format flag breakdown (reserved, universal/local,
       * group/individual, nonce). Only meaningful for addresses in `2001::/32`.
       */
      inspectTeredo() {
        const prefix = this.getBitsBase16(0, 32);
        const bitsForUdpPort = this.getBits(80, 96);
        const udpPort = (bitsForUdpPort ^ BigInt("0xffff")).toString();
        const server4 = ipv4_1.Address4.fromHex(this.getBitsBase16(32, 64));
        const bitsForClient4 = this.getBits(96, 128);
        const client4 = ipv4_1.Address4.fromHex((bitsForClient4 ^ BigInt("0xffffffff")).toString(16).padStart(8, "0"));
        const flagsBase2 = this.getBitsBase2(64, 80);
        const coneNat = (0, common_1.testBit)(flagsBase2, 15);
        const reserved = (0, common_1.testBit)(flagsBase2, 14);
        const groupIndividual = (0, common_1.testBit)(flagsBase2, 8);
        const universalLocal = (0, common_1.testBit)(flagsBase2, 9);
        const nonce = BigInt(`0b${flagsBase2.slice(2, 6) + flagsBase2.slice(8, 16)}`).toString(10);
        return {
          prefix: `${prefix.slice(0, 4)}:${prefix.slice(4, 8)}`,
          server4: server4.address,
          client4: client4.address,
          flags: flagsBase2,
          coneNat,
          microsoft: {
            reserved,
            universalLocal,
            groupIndividual,
            nonce
          },
          udpPort
        };
      }
      /**
       * Decodes the 6to4 tunneling fields embedded in this address. Returns the
       * 6to4 prefix and the embedded IPv4 gateway address. Only meaningful for
       * addresses in `2002::/16`.
       */
      inspect6to4() {
        const prefix = this.getBitsBase16(0, 16);
        const gateway = ipv4_1.Address4.fromHex(this.getBitsBase16(16, 48));
        return {
          prefix: prefix.slice(0, 4),
          gateway: gateway.address
        };
      }
      /**
       * Return a v6 6to4 address from a v6 v4inv6 address
       * @returns {Address6}
       */
      to6to4() {
        if (!this.is4()) {
          return null;
        }
        const addr6to4 = [
          "2002",
          this.getBitsBase16(96, 112),
          this.getBitsBase16(112, 128),
          "",
          "/16"
        ].join(":");
        return new _Address6(addr6to4);
      }
      /**
       * Embed an IPv4 address into a NAT64 IPv6 address using the encoding
       * defined by [RFC 6052](https://datatracker.ietf.org/doc/html/rfc6052).
       * The default prefix is the well-known prefix `64:ff9b::/96`. The prefix
       * length must be one of 32, 40, 48, 56, 64, or 96; for prefixes shorter
       * than /64 the IPv4 octets are split around the reserved bits 64–71.
       * @example
       * Address6.fromAddress4Nat64('192.0.2.33').correctForm(); // '64:ff9b::c000:221'
       * Address6.fromAddress4Nat64('192.0.2.33', '2001:db8::/32').correctForm(); // '2001:db8:c000:221::'
       */
      static fromAddress4Nat64(address, prefix = "64:ff9b::/96") {
        const v4 = new ipv4_1.Address4(address);
        const prefix6 = new _Address6(prefix);
        const pl = prefix6.subnetMask;
        if (pl !== 32 && pl !== 40 && pl !== 48 && pl !== 56 && pl !== 64 && pl !== 96) {
          throw new address_error_1.AddressError("NAT64 prefix length must be 32, 40, 48, 56, 64, or 96");
        }
        const prefixBits = prefix6.binaryZeroPad();
        const v4Bits = v4.binaryZeroPad();
        let bits;
        if (pl === 96) {
          bits = prefixBits.slice(0, 96) + v4Bits;
        } else {
          const beforeU = 64 - pl;
          bits = prefixBits.slice(0, pl) + v4Bits.slice(0, beforeU) + "00000000" + v4Bits.slice(beforeU) + "0".repeat(128 - 72 - (32 - beforeU));
        }
        const hex = BigInt(`0b${bits}`).toString(16).padStart(32, "0");
        const groups = [];
        for (let i2 = 0; i2 < 8; i2++) {
          groups.push(hex.slice(i2 * 4, (i2 + 1) * 4));
        }
        return new _Address6(groups.join(":"));
      }
      /**
       * Extract the embedded IPv4 address from a NAT64 IPv6 address using the
       * encoding defined by [RFC 6052](https://datatracker.ietf.org/doc/html/rfc6052).
       * The default prefix is the well-known prefix `64:ff9b::/96`. Returns
       * `null` if this address is not contained within the given prefix.
       * @example
       * new Address6('64:ff9b::c000:221').toAddress4Nat64()!.correctForm(); // '192.0.2.33'
       */
      toAddress4Nat64(prefix = "64:ff9b::/96") {
        const prefix6 = new _Address6(prefix);
        const pl = prefix6.subnetMask;
        if (pl !== 32 && pl !== 40 && pl !== 48 && pl !== 56 && pl !== 64 && pl !== 96) {
          throw new address_error_1.AddressError("NAT64 prefix length must be 32, 40, 48, 56, 64, or 96");
        }
        if (!this.isInSubnet(prefix6)) {
          return null;
        }
        const bits = this.binaryZeroPad();
        let v4Bits;
        if (pl === 96) {
          v4Bits = bits.slice(96, 128);
        } else {
          const beforeU = 64 - pl;
          v4Bits = bits.slice(pl, pl + beforeU) + bits.slice(72, 72 + (32 - beforeU));
        }
        const octets = [];
        for (let i2 = 0; i2 < 4; i2++) {
          octets.push(parseInt(v4Bits.slice(i2 * 8, (i2 + 1) * 8), 2).toString());
        }
        return new ipv4_1.Address4(octets.join("."));
      }
      /**
       * Return a byte array.
       *
       * To get a Node.js `Buffer`, wrap the result: `Buffer.from(address.toByteArray())`.
       * @returns {Array}
       */
      toByteArray() {
        const valueWithoutPadding = this.bigInt().toString(16);
        const leadingPad = "0".repeat(valueWithoutPadding.length % 2);
        const value = `${leadingPad}${valueWithoutPadding}`;
        const bytes = [];
        for (let i2 = 0, length = value.length; i2 < length; i2 += 2) {
          bytes.push(parseInt(value.substring(i2, i2 + 2), 16));
        }
        return bytes;
      }
      /**
       * Return an unsigned byte array.
       *
       * To get a Node.js `Buffer`, wrap the result: `Buffer.from(address.toUnsignedByteArray())`.
       * @returns {Array}
       */
      toUnsignedByteArray() {
        return this.toByteArray().map(unsignByte);
      }
      /**
       * Convert a byte array to an Address6 object.
       *
       * To convert from a Node.js `Buffer`, spread it: `Address6.fromByteArray([...buf])`.
       * @returns {Address6}
       */
      static fromByteArray(bytes) {
        return this.fromUnsignedByteArray(bytes.map(unsignByte));
      }
      /**
       * Convert an unsigned byte array to an Address6 object.
       *
       * To convert from a Node.js `Buffer`, spread it: `Address6.fromUnsignedByteArray([...buf])`.
       * @returns {Address6}
       */
      static fromUnsignedByteArray(bytes) {
        const BYTE_MAX = BigInt("256");
        let result2 = BigInt("0");
        let multiplier = BigInt("1");
        for (let i2 = bytes.length - 1; i2 >= 0; i2--) {
          result2 += multiplier * BigInt(bytes[i2].toString(10));
          multiplier *= BYTE_MAX;
        }
        return _Address6.fromBigInt(result2);
      }
      /**
       * Returns true if the address is in the canonical form, false otherwise
       * @returns {boolean}
       */
      isCanonical() {
        return this.addressMinusSuffix === this.canonicalForm();
      }
      /**
       * Returns true if the address is a link local address, false otherwise
       * @returns {boolean}
       */
      isLinkLocal() {
        if (this.getBitsBase2(0, 64) === "1111111010000000000000000000000000000000000000000000000000000000") {
          return true;
        }
        return false;
      }
      /**
       * Returns true if the address is a multicast address, false otherwise
       * @returns {boolean}
       */
      isMulticast() {
        const type4 = this.getType();
        return type4 === "Multicast" || type4.startsWith("Multicast ");
      }
      /**
       * Returns true if the address was written in v4-in-v6 dotted-quad notation
       * (e.g. `::ffff:127.0.0.1`), false otherwise. This is a notation-level flag
       * and does not reflect whether the address bits lie in the IPv4-mapped
       * (`::ffff:0:0/96`) subnet — for that, see {@link isMapped4}.
       * @returns {boolean}
       */
      is4() {
        return this.v4;
      }
      /**
       * Returns true if the address is an IPv4-mapped IPv6 address in
       * `::ffff:0:0/96` ([RFC 4291 §2.5.5.2](https://datatracker.ietf.org/doc/html/rfc4291#section-2.5.5.2)),
       * false otherwise. Unlike {@link is4}, this checks the underlying address
       * bits rather than the textual notation, so `::ffff:127.0.0.1` and
       * `::ffff:7f00:1` both return true.
       * @returns {boolean}
       */
      isMapped4() {
        return this.isInSubnet(IPV4_MAPPED_SUBNET);
      }
      /**
       * Returns true if the address is a Teredo address, false otherwise
       * @returns {boolean}
       */
      isTeredo() {
        return this.isInSubnet(TEREDO_SUBNET);
      }
      /**
       * Returns true if the address is a 6to4 address, false otherwise
       * @returns {boolean}
       */
      is6to4() {
        return this.isInSubnet(SIX_TO_FOUR_SUBNET);
      }
      /**
       * Returns true if the address is a loopback address, false otherwise
       * @returns {boolean}
       */
      isLoopback() {
        return this.getType() === "Loopback";
      }
      /**
       * Returns true if the address is a Unique Local Address in `fc00::/7` ([RFC 4193](https://datatracker.ietf.org/doc/html/rfc4193)). ULAs are the IPv6 equivalent of IPv4 [RFC 1918](https://datatracker.ietf.org/doc/html/rfc1918) private addresses.
       * @returns {boolean}
       */
      isULA() {
        return this.isInSubnet(ULA_SUBNET);
      }
      /**
       * Returns true if the address is the unspecified address `::`.
       * @returns {boolean}
       */
      isUnspecified() {
        return this.getType() === "Unspecified";
      }
      /**
       * Returns true if the address is in the documentation prefix `2001:db8::/32` ([RFC 3849](https://datatracker.ietf.org/doc/html/rfc3849)).
       * @returns {boolean}
       */
      isDocumentation() {
        return this.isInSubnet(DOCUMENTATION_SUBNET);
      }
      // #endregion
      // #region HTML
      /**
       * Returns the address as an HTTP URL with the host bracketed, e.g.
       * `http://[2001:db8::1]/`. If `optionalPort` is provided it is appended,
       * e.g. `http://[2001:db8::1]:8080/`.
       */
      href(optionalPort) {
        if (optionalPort === void 0) {
          optionalPort = "";
        } else {
          optionalPort = `:${optionalPort}`;
        }
        return `http://[${this.correctForm()}]${optionalPort}/`;
      }
      /**
       * Returns an HTML `<a>` element whose `href` encodes the address in a URL
       * hash fragment (default prefix `/#address=`). Useful for linking between
       * pages of an address-inspector UI.
       * @param options.className - CSS class for the rendered `<a>` element
       * @param options.prefix - hash prefix prepended to the address (default `/#address=`)
       * @param options.v4 - when true, render the address in v4-in-v6 form
       */
      link(options) {
        if (!options) {
          options = {};
        }
        if (options.className === void 0) {
          options.className = "";
        }
        if (options.prefix === void 0) {
          options.prefix = "/#address=";
        }
        if (options.v4 === void 0) {
          options.v4 = false;
        }
        let formFunction = this.correctForm;
        if (options.v4) {
          formFunction = this.to4in6;
        }
        const form = formFunction.call(this);
        const safeHref = helpers.escapeHtml(`${options.prefix}${form}`);
        const safeForm = helpers.escapeHtml(form);
        if (options.className) {
          const safeClass = helpers.escapeHtml(options.className);
          return `<a href="${safeHref}" class="${safeClass}">${safeForm}</a>`;
        }
        return `<a href="${safeHref}">${safeForm}</a>`;
      }
      /**
       * Groups an address
       * @returns {String}
       */
      group() {
        if (this.elidedGroups === 0) {
          return helpers.simpleGroup(this.addressMinusSuffix).join(":");
        }
        assert13(typeof this.elidedGroups === "number");
        assert13(typeof this.elisionBegin === "number");
        const output = [];
        const [left, right] = this.addressMinusSuffix.split("::");
        if (left.length) {
          output.push(...helpers.simpleGroup(left));
        } else {
          output.push("");
        }
        const classes = ["hover-group"];
        for (let i2 = this.elisionBegin; i2 < this.elisionBegin + this.elidedGroups; i2++) {
          classes.push(`group-${i2}`);
        }
        output.push(`<span class="${classes.join(" ")}"></span>`);
        if (right.length) {
          output.push(...helpers.simpleGroup(right, this.elisionEnd));
        } else {
          output.push("");
        }
        if (this.is4()) {
          assert13(this.address4 instanceof ipv4_1.Address4);
          output.pop();
          output.push(this.address4.groupForV6());
        }
        return output.join(":");
      }
      // #endregion
      // #region Regular expressions
      /**
       * Generate a regular expression string that can be used to find or validate
       * all variations of this address
       * @param {boolean} substringSearch
       * @returns {string}
       */
      regularExpressionString(substringSearch = false) {
        let output = [];
        const address6 = new _Address6(this.correctForm());
        if (address6.elidedGroups === 0) {
          output.push((0, regular_expressions_1.simpleRegularExpression)(address6.parsedAddress));
        } else if (address6.elidedGroups === constants6.GROUPS) {
          output.push((0, regular_expressions_1.possibleElisions)(constants6.GROUPS));
        } else {
          const halves = address6.address.split("::");
          if (halves[0].length) {
            output.push((0, regular_expressions_1.simpleRegularExpression)(halves[0].split(":")));
          }
          assert13(typeof address6.elidedGroups === "number");
          output.push((0, regular_expressions_1.possibleElisions)(address6.elidedGroups, halves[0].length !== 0, halves[1].length !== 0));
          if (halves[1].length) {
            output.push((0, regular_expressions_1.simpleRegularExpression)(halves[1].split(":")));
          }
          output = [output.join(":")];
        }
        if (!substringSearch) {
          output = [
            "(?=^|",
            regular_expressions_1.ADDRESS_BOUNDARY,
            "|[^\\w\\:])(",
            ...output,
            ")(?=[^\\w\\:]|",
            regular_expressions_1.ADDRESS_BOUNDARY,
            "|$)"
          ];
        }
        return output.join("");
      }
      /**
       * Generate a regular expression that can be used to find or validate all
       * variations of this address.
       * @param {boolean} substringSearch
       * @returns {RegExp}
       */
      regularExpression(substringSearch = false) {
        return new RegExp(this.regularExpressionString(substringSearch), "i");
      }
    };
    exports2.Address6 = Address6;
    var TYPE_SUBNETS = Object.keys(constants6.TYPES).map((subnet) => [
      new Address6(subnet),
      constants6.TYPES[subnet]
    ]);
    var TEREDO_SUBNET = new Address6("2001::/32");
    var SIX_TO_FOUR_SUBNET = new Address6("2002::/16");
    var ULA_SUBNET = new Address6("fc00::/7");
    var DOCUMENTATION_SUBNET = new Address6("2001:db8::/32");
    var IPV4_MAPPED_SUBNET = new Address6("::ffff:0:0/96");
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/ip-address/10.2.0/6c89ef68526817bb67e611cac10b1c6b7082eb4a8a1ad9bf2268351b7c59ab62/node_modules/ip-address/dist/ip-address.js
var require_ip_address = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/ip-address/10.2.0/6c89ef68526817bb67e611cac10b1c6b7082eb4a8a1ad9bf2268351b7c59ab62/node_modules/ip-address/dist/ip-address.js"(exports2) {
    "use strict";
    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      var desc = Object.getOwnPropertyDescriptor(m, k2);
      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
        desc = { enumerable: true, get: function() {
          return m[k2];
        } };
      }
      Object.defineProperty(o2, k22, desc);
    }) : (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      o2[k22] = m[k2];
    }));
    var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o2, v) {
      Object.defineProperty(o2, "default", { enumerable: true, value: v });
    }) : function(o2, v) {
      o2["default"] = v;
    });
    var __importStar2 = exports2 && exports2.__importStar || function(mod) {
      if (mod && mod.__esModule) return mod;
      var result2 = {};
      if (mod != null) {
        for (var k2 in mod) if (k2 !== "default" && Object.prototype.hasOwnProperty.call(mod, k2)) __createBinding2(result2, mod, k2);
      }
      __setModuleDefault2(result2, mod);
      return result2;
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.v6 = exports2.AddressError = exports2.Address6 = exports2.Address4 = void 0;
    var ipv4_1 = require_ipv4();
    Object.defineProperty(exports2, "Address4", { enumerable: true, get: function() {
      return ipv4_1.Address4;
    } });
    var ipv6_1 = require_ipv6();
    Object.defineProperty(exports2, "Address6", { enumerable: true, get: function() {
      return ipv6_1.Address6;
    } });
    var address_error_1 = require_address_error();
    Object.defineProperty(exports2, "AddressError", { enumerable: true, get: function() {
      return address_error_1.AddressError;
    } });
    var helpers = __importStar2(require_helpers());
    exports2.v6 = { helpers };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/socks/2.8.9/d15bbe0a5bd995f39e54a104f4d14c0285b4fd00b7405252b2ccee9f2065a90c/node_modules/socks/build/common/helpers.js
var require_helpers2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/socks/2.8.9/d15bbe0a5bd995f39e54a104f4d14c0285b4fd00b7405252b2ccee9f2065a90c/node_modules/socks/build/common/helpers.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.ipToBuffer = exports2.int32ToIpv4 = exports2.ipv4ToInt32 = exports2.validateSocksClientChainOptions = exports2.validateSocksClientOptions = void 0;
    var util_1 = require_util5();
    var constants_1 = require_constants9();
    var stream2 = __require("stream");
    var ip_address_1 = require_ip_address();
    var net = __require("net");
    function validateSocksClientOptions(options, acceptedCommands = ["connect", "bind", "associate"]) {
      if (!constants_1.SocksCommand[options.command]) {
        throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksCommand, options);
      }
      if (acceptedCommands.indexOf(options.command) === -1) {
        throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksCommandForOperation, options);
      }
      if (!isValidSocksRemoteHost(options.destination)) {
        throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsDestination, options);
      }
      if (!isValidSocksProxy(options.proxy)) {
        throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsProxy, options);
      }
      validateCustomProxyAuth(options.proxy, options);
      if (options.timeout && !isValidTimeoutValue(options.timeout)) {
        throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsTimeout, options);
      }
      if (options.existing_socket && !(options.existing_socket instanceof stream2.Duplex)) {
        throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsExistingSocket, options);
      }
    }
    exports2.validateSocksClientOptions = validateSocksClientOptions;
    function validateSocksClientChainOptions(options) {
      if (options.command !== "connect") {
        throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksCommandChain, options);
      }
      if (!isValidSocksRemoteHost(options.destination)) {
        throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsDestination, options);
      }
      if (!(options.proxies && Array.isArray(options.proxies) && options.proxies.length >= 2)) {
        throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsProxiesLength, options);
      }
      options.proxies.forEach((proxy) => {
        if (!isValidSocksProxy(proxy)) {
          throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsProxy, options);
        }
        validateCustomProxyAuth(proxy, options);
      });
      if (options.timeout && !isValidTimeoutValue(options.timeout)) {
        throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsTimeout, options);
      }
    }
    exports2.validateSocksClientChainOptions = validateSocksClientChainOptions;
    function validateCustomProxyAuth(proxy, options) {
      if (proxy.custom_auth_method !== void 0) {
        if (proxy.custom_auth_method < constants_1.SOCKS5_CUSTOM_AUTH_START || proxy.custom_auth_method > constants_1.SOCKS5_CUSTOM_AUTH_END) {
          throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsCustomAuthRange, options);
        }
        if (proxy.custom_auth_request_handler === void 0 || typeof proxy.custom_auth_request_handler !== "function") {
          throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsCustomAuthOptions, options);
        }
        if (proxy.custom_auth_response_size === void 0) {
          throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsCustomAuthOptions, options);
        }
        if (proxy.custom_auth_response_handler === void 0 || typeof proxy.custom_auth_response_handler !== "function") {
          throw new util_1.SocksClientError(constants_1.ERRORS.InvalidSocksClientOptionsCustomAuthOptions, options);
        }
      }
    }
    function isValidSocksRemoteHost(remoteHost) {
      return remoteHost && typeof remoteHost.host === "string" && Buffer.byteLength(remoteHost.host) < 256 && typeof remoteHost.port === "number" && remoteHost.port >= 0 && remoteHost.port <= 65535;
    }
    function isValidSocksProxy(proxy) {
      return proxy && (typeof proxy.host === "string" || typeof proxy.ipaddress === "string") && typeof proxy.port === "number" && proxy.port >= 0 && proxy.port <= 65535 && (proxy.type === 4 || proxy.type === 5);
    }
    function isValidTimeoutValue(value) {
      return typeof value === "number" && value > 0;
    }
    function ipv4ToInt32(ip) {
      const address = new ip_address_1.Address4(ip);
      return address.toArray().reduce((acc, part) => (acc << 8) + part, 0) >>> 0;
    }
    exports2.ipv4ToInt32 = ipv4ToInt32;
    function int32ToIpv4(int32) {
      const octet1 = int32 >>> 24 & 255;
      const octet2 = int32 >>> 16 & 255;
      const octet3 = int32 >>> 8 & 255;
      const octet4 = int32 & 255;
      return [octet1, octet2, octet3, octet4].join(".");
    }
    exports2.int32ToIpv4 = int32ToIpv4;
    function ipToBuffer(ip) {
      if (net.isIPv4(ip)) {
        const address = new ip_address_1.Address4(ip);
        return Buffer.from(address.toArray());
      } else if (net.isIPv6(ip)) {
        const address = new ip_address_1.Address6(ip);
        return Buffer.from(address.canonicalForm().split(":").map((segment) => segment.padStart(4, "0")).join(""), "hex");
      } else {
        throw new Error("Invalid IP address format");
      }
    }
    exports2.ipToBuffer = ipToBuffer;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/socks/2.8.9/d15bbe0a5bd995f39e54a104f4d14c0285b4fd00b7405252b2ccee9f2065a90c/node_modules/socks/build/common/receivebuffer.js
var require_receivebuffer = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/socks/2.8.9/d15bbe0a5bd995f39e54a104f4d14c0285b4fd00b7405252b2ccee9f2065a90c/node_modules/socks/build/common/receivebuffer.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.ReceiveBuffer = void 0;
    var ReceiveBuffer = class {
      constructor(size = 4096) {
        this.buffer = Buffer.allocUnsafe(size);
        this.offset = 0;
        this.originalSize = size;
      }
      get length() {
        return this.offset;
      }
      append(data) {
        if (!Buffer.isBuffer(data)) {
          throw new Error("Attempted to append a non-buffer instance to ReceiveBuffer.");
        }
        if (this.offset + data.length >= this.buffer.length) {
          const tmp = this.buffer;
          this.buffer = Buffer.allocUnsafe(Math.max(this.buffer.length + this.originalSize, this.buffer.length + data.length));
          tmp.copy(this.buffer);
        }
        data.copy(this.buffer, this.offset);
        return this.offset += data.length;
      }
      peek(length) {
        if (length > this.offset) {
          throw new Error("Attempted to read beyond the bounds of the managed internal data.");
        }
        return this.buffer.slice(0, length);
      }
      get(length) {
        if (length > this.offset) {
          throw new Error("Attempted to read beyond the bounds of the managed internal data.");
        }
        const value = Buffer.allocUnsafe(length);
        this.buffer.slice(0, length).copy(value);
        this.buffer.copyWithin(0, length, length + this.offset - length);
        this.offset -= length;
        return value;
      }
    };
    exports2.ReceiveBuffer = ReceiveBuffer;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/socks/2.8.9/d15bbe0a5bd995f39e54a104f4d14c0285b4fd00b7405252b2ccee9f2065a90c/node_modules/socks/build/client/socksclient.js
var require_socksclient = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/socks/2.8.9/d15bbe0a5bd995f39e54a104f4d14c0285b4fd00b7405252b2ccee9f2065a90c/node_modules/socks/build/client/socksclient.js"(exports2) {
    "use strict";
    var __awaiter2 = exports2 && exports2.__awaiter || function(thisArg, _arguments, P2, generator) {
      function adopt(value) {
        return value instanceof P2 ? value : new P2(function(resolve3) {
          resolve3(value);
        });
      }
      return new (P2 || (P2 = Promise))(function(resolve3, reject3) {
        function fulfilled(value) {
          try {
            step2(generator.next(value));
          } catch (e) {
            reject3(e);
          }
        }
        function rejected(value) {
          try {
            step2(generator["throw"](value));
          } catch (e) {
            reject3(e);
          }
        }
        function step2(result2) {
          result2.done ? resolve3(result2.value) : adopt(result2.value).then(fulfilled, rejected);
        }
        step2((generator = generator.apply(thisArg, _arguments || [])).next());
      });
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.SocksClientError = exports2.SocksClient = void 0;
    var events_1 = __require("events");
    var net = __require("net");
    var smart_buffer_1 = require_smartbuffer();
    var constants_1 = require_constants9();
    var helpers_1 = require_helpers2();
    var receivebuffer_1 = require_receivebuffer();
    var util_1 = require_util5();
    Object.defineProperty(exports2, "SocksClientError", { enumerable: true, get: function() {
      return util_1.SocksClientError;
    } });
    var ip_address_1 = require_ip_address();
    var SocksClient2 = class _SocksClient extends events_1.EventEmitter {
      constructor(options) {
        super();
        this.options = Object.assign({}, options);
        (0, helpers_1.validateSocksClientOptions)(options);
        this.setState(constants_1.SocksClientState.Created);
      }
      /**
       * Creates a new SOCKS connection.
       *
       * Note: Supports callbacks and promises. Only supports the connect command.
       * @param options { SocksClientOptions } Options.
       * @param callback { Function } An optional callback function.
       * @returns { Promise }
       */
      static createConnection(options, callback2) {
        return new Promise((resolve3, reject3) => {
          try {
            (0, helpers_1.validateSocksClientOptions)(options, ["connect"]);
          } catch (err) {
            if (typeof callback2 === "function") {
              callback2(err);
              return resolve3(err);
            } else {
              return reject3(err);
            }
          }
          const client = new _SocksClient(options);
          client.connect(options.existing_socket);
          client.once("established", (info) => {
            client.removeAllListeners();
            if (typeof callback2 === "function") {
              callback2(null, info);
              resolve3(info);
            } else {
              resolve3(info);
            }
          });
          client.once("error", (err) => {
            client.removeAllListeners();
            if (typeof callback2 === "function") {
              callback2(err);
              resolve3(err);
            } else {
              reject3(err);
            }
          });
        });
      }
      /**
       * Creates a new SOCKS connection chain to a destination host through 2 or more SOCKS proxies.
       *
       * Note: Supports callbacks and promises. Only supports the connect method.
       * Note: Implemented via createConnection() factory function.
       * @param options { SocksClientChainOptions } Options
       * @param callback { Function } An optional callback function.
       * @returns { Promise }
       */
      static createConnectionChain(options, callback2) {
        return new Promise((resolve3, reject3) => __awaiter2(this, void 0, void 0, function* () {
          try {
            (0, helpers_1.validateSocksClientChainOptions)(options);
          } catch (err) {
            if (typeof callback2 === "function") {
              callback2(err);
              return resolve3(err);
            } else {
              return reject3(err);
            }
          }
          if (options.randomizeChain) {
            (0, util_1.shuffleArray)(options.proxies);
          }
          try {
            let sock;
            for (let i2 = 0; i2 < options.proxies.length; i2++) {
              const nextProxy = options.proxies[i2];
              const nextDestination = i2 === options.proxies.length - 1 ? options.destination : {
                host: options.proxies[i2 + 1].host || options.proxies[i2 + 1].ipaddress,
                port: options.proxies[i2 + 1].port
              };
              const result2 = yield _SocksClient.createConnection({
                command: "connect",
                proxy: nextProxy,
                destination: nextDestination,
                existing_socket: sock
              });
              sock = sock || result2.socket;
            }
            if (typeof callback2 === "function") {
              callback2(null, { socket: sock });
              resolve3({ socket: sock });
            } else {
              resolve3({ socket: sock });
            }
          } catch (err) {
            if (typeof callback2 === "function") {
              callback2(err);
              resolve3(err);
            } else {
              reject3(err);
            }
          }
        }));
      }
      /**
       * Creates a SOCKS UDP Frame.
       * @param options
       */
      static createUDPFrame(options) {
        const buff = new smart_buffer_1.SmartBuffer();
        buff.writeUInt16BE(0);
        buff.writeUInt8(options.frameNumber || 0);
        if (net.isIPv4(options.remoteHost.host)) {
          buff.writeUInt8(constants_1.Socks5HostType.IPv4);
          buff.writeUInt32BE((0, helpers_1.ipv4ToInt32)(options.remoteHost.host));
        } else if (net.isIPv6(options.remoteHost.host)) {
          buff.writeUInt8(constants_1.Socks5HostType.IPv6);
          buff.writeBuffer((0, helpers_1.ipToBuffer)(options.remoteHost.host));
        } else {
          buff.writeUInt8(constants_1.Socks5HostType.Hostname);
          buff.writeUInt8(Buffer.byteLength(options.remoteHost.host));
          buff.writeString(options.remoteHost.host);
        }
        buff.writeUInt16BE(options.remoteHost.port);
        buff.writeBuffer(options.data);
        return buff.toBuffer();
      }
      /**
       * Parses a SOCKS UDP frame.
       * @param data
       */
      static parseUDPFrame(data) {
        const buff = smart_buffer_1.SmartBuffer.fromBuffer(data);
        buff.readOffset = 2;
        const frameNumber = buff.readUInt8();
        const hostType = buff.readUInt8();
        let remoteHost;
        if (hostType === constants_1.Socks5HostType.IPv4) {
          remoteHost = (0, helpers_1.int32ToIpv4)(buff.readUInt32BE());
        } else if (hostType === constants_1.Socks5HostType.IPv6) {
          remoteHost = ip_address_1.Address6.fromByteArray(Array.from(buff.readBuffer(16))).canonicalForm();
        } else {
          remoteHost = buff.readString(buff.readUInt8());
        }
        const remotePort = buff.readUInt16BE();
        return {
          frameNumber,
          remoteHost: {
            host: remoteHost,
            port: remotePort
          },
          data: buff.readBuffer()
        };
      }
      /**
       * Internal state setter. If the SocksClient is in an error state, it cannot be changed to a non error state.
       */
      setState(newState) {
        if (this.state !== constants_1.SocksClientState.Error) {
          this.state = newState;
        }
      }
      /**
       * Starts the connection establishment to the proxy and destination.
       * @param existingSocket Connected socket to use instead of creating a new one (internal use).
       */
      connect(existingSocket) {
        this.onDataReceived = (data) => this.onDataReceivedHandler(data);
        this.onClose = () => this.onCloseHandler();
        this.onError = (err) => this.onErrorHandler(err);
        this.onConnect = () => this.onConnectHandler();
        const timer = setTimeout(() => this.onEstablishedTimeout(), this.options.timeout || constants_1.DEFAULT_TIMEOUT);
        if (timer.unref && typeof timer.unref === "function") {
          timer.unref();
        }
        if (existingSocket) {
          this.socket = existingSocket;
        } else {
          this.socket = new net.Socket();
        }
        this.socket.once("close", this.onClose);
        this.socket.once("error", this.onError);
        this.socket.once("connect", this.onConnect);
        this.socket.on("data", this.onDataReceived);
        this.setState(constants_1.SocksClientState.Connecting);
        this.receiveBuffer = new receivebuffer_1.ReceiveBuffer();
        if (existingSocket) {
          this.socket.emit("connect");
        } else {
          this.socket.connect(this.getSocketOptions());
          if (this.options.set_tcp_nodelay !== void 0 && this.options.set_tcp_nodelay !== null) {
            this.socket.setNoDelay(!!this.options.set_tcp_nodelay);
          }
        }
        this.prependOnceListener("established", (info) => {
          setImmediate(() => {
            if (this.receiveBuffer.length > 0) {
              const excessData = this.receiveBuffer.get(this.receiveBuffer.length);
              info.socket.emit("data", excessData);
            }
            info.socket.resume();
          });
        });
      }
      // Socket options (defaults host/port to options.proxy.host/options.proxy.port)
      getSocketOptions() {
        return Object.assign(Object.assign({}, this.options.socket_options), { host: this.options.proxy.host || this.options.proxy.ipaddress, port: this.options.proxy.port });
      }
      /**
       * Handles internal Socks timeout callback.
       * Note: If the Socks client is not BoundWaitingForConnection or Established, the connection will be closed.
       */
      onEstablishedTimeout() {
        if (this.state !== constants_1.SocksClientState.Established && this.state !== constants_1.SocksClientState.BoundWaitingForConnection) {
          this.closeSocket(constants_1.ERRORS.ProxyConnectionTimedOut);
        }
      }
      /**
       * Handles Socket connect event.
       */
      onConnectHandler() {
        this.setState(constants_1.SocksClientState.Connected);
        if (this.options.proxy.type === 4) {
          this.sendSocks4InitialHandshake();
        } else {
          this.sendSocks5InitialHandshake();
        }
        this.setState(constants_1.SocksClientState.SentInitialHandshake);
      }
      /**
       * Handles Socket data event.
       * @param data
       */
      onDataReceivedHandler(data) {
        this.receiveBuffer.append(data);
        this.processData();
      }
      /**
       * Handles processing of the data we have received.
       */
      processData() {
        while (this.state !== constants_1.SocksClientState.Established && this.state !== constants_1.SocksClientState.Error && this.receiveBuffer.length >= this.nextRequiredPacketBufferSize) {
          if (this.state === constants_1.SocksClientState.SentInitialHandshake) {
            if (this.options.proxy.type === 4) {
              this.handleSocks4FinalHandshakeResponse();
            } else {
              this.handleInitialSocks5HandshakeResponse();
            }
          } else if (this.state === constants_1.SocksClientState.SentAuthentication) {
            this.handleInitialSocks5AuthenticationHandshakeResponse();
          } else if (this.state === constants_1.SocksClientState.SentFinalHandshake) {
            this.handleSocks5FinalHandshakeResponse();
          } else if (this.state === constants_1.SocksClientState.BoundWaitingForConnection) {
            if (this.options.proxy.type === 4) {
              this.handleSocks4IncomingConnectionResponse();
            } else {
              this.handleSocks5IncomingConnectionResponse();
            }
          } else {
            this.closeSocket(constants_1.ERRORS.InternalError);
            break;
          }
        }
      }
      /**
       * Handles Socket close event.
       * @param had_error
       */
      onCloseHandler() {
        this.closeSocket(constants_1.ERRORS.SocketClosed);
      }
      /**
       * Handles Socket error event.
       * @param err
       */
      onErrorHandler(err) {
        this.closeSocket(err.message);
      }
      /**
       * Removes internal event listeners on the underlying Socket.
       */
      removeInternalSocketHandlers() {
        this.socket.pause();
        this.socket.removeListener("data", this.onDataReceived);
        this.socket.removeListener("close", this.onClose);
        this.socket.removeListener("error", this.onError);
        this.socket.removeListener("connect", this.onConnect);
      }
      /**
       * Closes and destroys the underlying Socket. Emits an error event.
       * @param err { String } An error string to include in error event.
       */
      closeSocket(err) {
        if (this.state !== constants_1.SocksClientState.Error) {
          this.setState(constants_1.SocksClientState.Error);
          this.socket.destroy();
          this.removeInternalSocketHandlers();
          this.emit("error", new util_1.SocksClientError(err, this.options));
        }
      }
      /**
       * Sends initial Socks v4 handshake request.
       */
      sendSocks4InitialHandshake() {
        const userId = this.options.proxy.userId || "";
        const buff = new smart_buffer_1.SmartBuffer();
        buff.writeUInt8(4);
        buff.writeUInt8(constants_1.SocksCommand[this.options.command]);
        buff.writeUInt16BE(this.options.destination.port);
        if (net.isIPv4(this.options.destination.host)) {
          buff.writeBuffer((0, helpers_1.ipToBuffer)(this.options.destination.host));
          buff.writeStringNT(userId);
        } else {
          buff.writeUInt8(0);
          buff.writeUInt8(0);
          buff.writeUInt8(0);
          buff.writeUInt8(1);
          buff.writeStringNT(userId);
          buff.writeStringNT(this.options.destination.host);
        }
        this.nextRequiredPacketBufferSize = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks4Response;
        this.socket.write(buff.toBuffer());
      }
      /**
       * Handles Socks v4 handshake response.
       * @param data
       */
      handleSocks4FinalHandshakeResponse() {
        const data = this.receiveBuffer.get(8);
        if (data[1] !== constants_1.Socks4Response.Granted) {
          this.closeSocket(`${constants_1.ERRORS.Socks4ProxyRejectedConnection} - (${constants_1.Socks4Response[data[1]]})`);
        } else {
          if (constants_1.SocksCommand[this.options.command] === constants_1.SocksCommand.bind) {
            const buff = smart_buffer_1.SmartBuffer.fromBuffer(data);
            buff.readOffset = 2;
            const remoteHost = {
              port: buff.readUInt16BE(),
              host: (0, helpers_1.int32ToIpv4)(buff.readUInt32BE())
            };
            if (remoteHost.host === "0.0.0.0") {
              remoteHost.host = this.options.proxy.ipaddress;
            }
            this.setState(constants_1.SocksClientState.BoundWaitingForConnection);
            this.emit("bound", { remoteHost, socket: this.socket });
          } else {
            this.setState(constants_1.SocksClientState.Established);
            this.removeInternalSocketHandlers();
            this.emit("established", { socket: this.socket });
          }
        }
      }
      /**
       * Handles Socks v4 incoming connection request (BIND)
       * @param data
       */
      handleSocks4IncomingConnectionResponse() {
        const data = this.receiveBuffer.get(8);
        if (data[1] !== constants_1.Socks4Response.Granted) {
          this.closeSocket(`${constants_1.ERRORS.Socks4ProxyRejectedIncomingBoundConnection} - (${constants_1.Socks4Response[data[1]]})`);
        } else {
          const buff = smart_buffer_1.SmartBuffer.fromBuffer(data);
          buff.readOffset = 2;
          const remoteHost = {
            port: buff.readUInt16BE(),
            host: (0, helpers_1.int32ToIpv4)(buff.readUInt32BE())
          };
          this.setState(constants_1.SocksClientState.Established);
          this.removeInternalSocketHandlers();
          this.emit("established", { remoteHost, socket: this.socket });
        }
      }
      /**
       * Sends initial Socks v5 handshake request.
       */
      sendSocks5InitialHandshake() {
        const buff = new smart_buffer_1.SmartBuffer();
        const supportedAuthMethods = [constants_1.Socks5Auth.NoAuth];
        if (this.options.proxy.userId || this.options.proxy.password) {
          supportedAuthMethods.push(constants_1.Socks5Auth.UserPass);
        }
        if (this.options.proxy.custom_auth_method !== void 0) {
          supportedAuthMethods.push(this.options.proxy.custom_auth_method);
        }
        buff.writeUInt8(5);
        buff.writeUInt8(supportedAuthMethods.length);
        for (const authMethod of supportedAuthMethods) {
          buff.writeUInt8(authMethod);
        }
        this.nextRequiredPacketBufferSize = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5InitialHandshakeResponse;
        this.socket.write(buff.toBuffer());
        this.setState(constants_1.SocksClientState.SentInitialHandshake);
      }
      /**
       * Handles initial Socks v5 handshake response.
       * @param data
       */
      handleInitialSocks5HandshakeResponse() {
        const data = this.receiveBuffer.get(2);
        if (data[0] !== 5) {
          this.closeSocket(constants_1.ERRORS.InvalidSocks5IntiailHandshakeSocksVersion);
        } else if (data[1] === constants_1.SOCKS5_NO_ACCEPTABLE_AUTH) {
          this.closeSocket(constants_1.ERRORS.InvalidSocks5InitialHandshakeNoAcceptedAuthType);
        } else {
          if (data[1] === constants_1.Socks5Auth.NoAuth) {
            this.socks5ChosenAuthType = constants_1.Socks5Auth.NoAuth;
            this.sendSocks5CommandRequest();
          } else if (data[1] === constants_1.Socks5Auth.UserPass) {
            this.socks5ChosenAuthType = constants_1.Socks5Auth.UserPass;
            this.sendSocks5UserPassAuthentication();
          } else if (data[1] === this.options.proxy.custom_auth_method) {
            this.socks5ChosenAuthType = this.options.proxy.custom_auth_method;
            this.sendSocks5CustomAuthentication();
          } else {
            this.closeSocket(constants_1.ERRORS.InvalidSocks5InitialHandshakeUnknownAuthType);
          }
        }
      }
      /**
       * Sends Socks v5 user & password auth handshake.
       *
       * Note: No auth and user/pass are currently supported.
       */
      sendSocks5UserPassAuthentication() {
        const userId = this.options.proxy.userId || "";
        const password = this.options.proxy.password || "";
        const buff = new smart_buffer_1.SmartBuffer();
        buff.writeUInt8(1);
        buff.writeUInt8(Buffer.byteLength(userId));
        buff.writeString(userId);
        buff.writeUInt8(Buffer.byteLength(password));
        buff.writeString(password);
        this.nextRequiredPacketBufferSize = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5UserPassAuthenticationResponse;
        this.socket.write(buff.toBuffer());
        this.setState(constants_1.SocksClientState.SentAuthentication);
      }
      sendSocks5CustomAuthentication() {
        return __awaiter2(this, void 0, void 0, function* () {
          this.nextRequiredPacketBufferSize = this.options.proxy.custom_auth_response_size;
          this.socket.write(yield this.options.proxy.custom_auth_request_handler());
          this.setState(constants_1.SocksClientState.SentAuthentication);
        });
      }
      handleSocks5CustomAuthHandshakeResponse(data) {
        return __awaiter2(this, void 0, void 0, function* () {
          return yield this.options.proxy.custom_auth_response_handler(data);
        });
      }
      handleSocks5AuthenticationNoAuthHandshakeResponse(data) {
        return __awaiter2(this, void 0, void 0, function* () {
          return data[1] === 0;
        });
      }
      handleSocks5AuthenticationUserPassHandshakeResponse(data) {
        return __awaiter2(this, void 0, void 0, function* () {
          return data[1] === 0;
        });
      }
      /**
       * Handles Socks v5 auth handshake response.
       * @param data
       */
      handleInitialSocks5AuthenticationHandshakeResponse() {
        return __awaiter2(this, void 0, void 0, function* () {
          this.setState(constants_1.SocksClientState.ReceivedAuthenticationResponse);
          let authResult = false;
          if (this.socks5ChosenAuthType === constants_1.Socks5Auth.NoAuth) {
            authResult = yield this.handleSocks5AuthenticationNoAuthHandshakeResponse(this.receiveBuffer.get(2));
          } else if (this.socks5ChosenAuthType === constants_1.Socks5Auth.UserPass) {
            authResult = yield this.handleSocks5AuthenticationUserPassHandshakeResponse(this.receiveBuffer.get(2));
          } else if (this.socks5ChosenAuthType === this.options.proxy.custom_auth_method) {
            authResult = yield this.handleSocks5CustomAuthHandshakeResponse(this.receiveBuffer.get(this.options.proxy.custom_auth_response_size));
          }
          if (!authResult) {
            this.closeSocket(constants_1.ERRORS.Socks5AuthenticationFailed);
          } else {
            this.sendSocks5CommandRequest();
          }
        });
      }
      /**
       * Sends Socks v5 final handshake request.
       */
      sendSocks5CommandRequest() {
        const buff = new smart_buffer_1.SmartBuffer();
        buff.writeUInt8(5);
        buff.writeUInt8(constants_1.SocksCommand[this.options.command]);
        buff.writeUInt8(0);
        if (net.isIPv4(this.options.destination.host)) {
          buff.writeUInt8(constants_1.Socks5HostType.IPv4);
          buff.writeBuffer((0, helpers_1.ipToBuffer)(this.options.destination.host));
        } else if (net.isIPv6(this.options.destination.host)) {
          buff.writeUInt8(constants_1.Socks5HostType.IPv6);
          buff.writeBuffer((0, helpers_1.ipToBuffer)(this.options.destination.host));
        } else {
          buff.writeUInt8(constants_1.Socks5HostType.Hostname);
          buff.writeUInt8(this.options.destination.host.length);
          buff.writeString(this.options.destination.host);
        }
        buff.writeUInt16BE(this.options.destination.port);
        this.nextRequiredPacketBufferSize = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHeader;
        this.socket.write(buff.toBuffer());
        this.setState(constants_1.SocksClientState.SentFinalHandshake);
      }
      /**
       * Handles Socks v5 final handshake response.
       * @param data
       */
      handleSocks5FinalHandshakeResponse() {
        const header = this.receiveBuffer.peek(5);
        if (header[0] !== 5 || header[1] !== constants_1.Socks5Response.Granted) {
          this.closeSocket(`${constants_1.ERRORS.InvalidSocks5FinalHandshakeRejected} - ${constants_1.Socks5Response[header[1]]}`);
        } else {
          const addressType = header[3];
          let remoteHost;
          let buff;
          if (addressType === constants_1.Socks5HostType.IPv4) {
            const dataNeeded = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv4;
            if (this.receiveBuffer.length < dataNeeded) {
              this.nextRequiredPacketBufferSize = dataNeeded;
              return;
            }
            buff = smart_buffer_1.SmartBuffer.fromBuffer(this.receiveBuffer.get(dataNeeded).slice(4));
            remoteHost = {
              host: (0, helpers_1.int32ToIpv4)(buff.readUInt32BE()),
              port: buff.readUInt16BE()
            };
            if (remoteHost.host === "0.0.0.0") {
              remoteHost.host = this.options.proxy.ipaddress;
            }
          } else if (addressType === constants_1.Socks5HostType.Hostname) {
            const hostLength = header[4];
            const dataNeeded = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHostname(hostLength);
            if (this.receiveBuffer.length < dataNeeded) {
              this.nextRequiredPacketBufferSize = dataNeeded;
              return;
            }
            buff = smart_buffer_1.SmartBuffer.fromBuffer(this.receiveBuffer.get(dataNeeded).slice(5));
            remoteHost = {
              host: buff.readString(hostLength),
              port: buff.readUInt16BE()
            };
          } else if (addressType === constants_1.Socks5HostType.IPv6) {
            const dataNeeded = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv6;
            if (this.receiveBuffer.length < dataNeeded) {
              this.nextRequiredPacketBufferSize = dataNeeded;
              return;
            }
            buff = smart_buffer_1.SmartBuffer.fromBuffer(this.receiveBuffer.get(dataNeeded).slice(4));
            remoteHost = {
              host: ip_address_1.Address6.fromByteArray(Array.from(buff.readBuffer(16))).canonicalForm(),
              port: buff.readUInt16BE()
            };
          }
          this.setState(constants_1.SocksClientState.ReceivedFinalResponse);
          if (constants_1.SocksCommand[this.options.command] === constants_1.SocksCommand.connect) {
            this.setState(constants_1.SocksClientState.Established);
            this.removeInternalSocketHandlers();
            this.emit("established", { remoteHost, socket: this.socket });
          } else if (constants_1.SocksCommand[this.options.command] === constants_1.SocksCommand.bind) {
            this.setState(constants_1.SocksClientState.BoundWaitingForConnection);
            this.nextRequiredPacketBufferSize = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHeader;
            this.emit("bound", { remoteHost, socket: this.socket });
          } else if (constants_1.SocksCommand[this.options.command] === constants_1.SocksCommand.associate) {
            this.setState(constants_1.SocksClientState.Established);
            this.removeInternalSocketHandlers();
            this.emit("established", {
              remoteHost,
              socket: this.socket
            });
          }
        }
      }
      /**
       * Handles Socks v5 incoming connection request (BIND).
       */
      handleSocks5IncomingConnectionResponse() {
        const header = this.receiveBuffer.peek(5);
        if (header[0] !== 5 || header[1] !== constants_1.Socks5Response.Granted) {
          this.closeSocket(`${constants_1.ERRORS.Socks5ProxyRejectedIncomingBoundConnection} - ${constants_1.Socks5Response[header[1]]}`);
        } else {
          const addressType = header[3];
          let remoteHost;
          let buff;
          if (addressType === constants_1.Socks5HostType.IPv4) {
            const dataNeeded = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv4;
            if (this.receiveBuffer.length < dataNeeded) {
              this.nextRequiredPacketBufferSize = dataNeeded;
              return;
            }
            buff = smart_buffer_1.SmartBuffer.fromBuffer(this.receiveBuffer.get(dataNeeded).slice(4));
            remoteHost = {
              host: (0, helpers_1.int32ToIpv4)(buff.readUInt32BE()),
              port: buff.readUInt16BE()
            };
            if (remoteHost.host === "0.0.0.0") {
              remoteHost.host = this.options.proxy.ipaddress;
            }
          } else if (addressType === constants_1.Socks5HostType.Hostname) {
            const hostLength = header[4];
            const dataNeeded = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHostname(hostLength);
            if (this.receiveBuffer.length < dataNeeded) {
              this.nextRequiredPacketBufferSize = dataNeeded;
              return;
            }
            buff = smart_buffer_1.SmartBuffer.fromBuffer(this.receiveBuffer.get(dataNeeded).slice(5));
            remoteHost = {
              host: buff.readString(hostLength),
              port: buff.readUInt16BE()
            };
          } else if (addressType === constants_1.Socks5HostType.IPv6) {
            const dataNeeded = constants_1.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv6;
            if (this.receiveBuffer.length < dataNeeded) {
              this.nextRequiredPacketBufferSize = dataNeeded;
              return;
            }
            buff = smart_buffer_1.SmartBuffer.fromBuffer(this.receiveBuffer.get(dataNeeded).slice(4));
            remoteHost = {
              host: ip_address_1.Address6.fromByteArray(Array.from(buff.readBuffer(16))).canonicalForm(),
              port: buff.readUInt16BE()
            };
          }
          this.setState(constants_1.SocksClientState.Established);
          this.removeInternalSocketHandlers();
          this.emit("established", { remoteHost, socket: this.socket });
        }
      }
      get socksClientOptions() {
        return Object.assign({}, this.options);
      }
    };
    exports2.SocksClient = SocksClient2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/socks/2.8.9/d15bbe0a5bd995f39e54a104f4d14c0285b4fd00b7405252b2ccee9f2065a90c/node_modules/socks/build/index.js
var require_build = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/socks/2.8.9/d15bbe0a5bd995f39e54a104f4d14c0285b4fd00b7405252b2ccee9f2065a90c/node_modules/socks/build/index.js"(exports2) {
    "use strict";
    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      var desc = Object.getOwnPropertyDescriptor(m, k2);
      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
        desc = { enumerable: true, get: function() {
          return m[k2];
        } };
      }
      Object.defineProperty(o2, k22, desc);
    }) : (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      o2[k22] = m[k2];
    }));
    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    __exportStar2(require_socksclient(), exports2);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/core/symbols.js
var require_symbols = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/core/symbols.js"(exports2, module2) {
    "use strict";
    module2.exports = {
      kClose: /* @__PURE__ */ Symbol("close"),
      kDestroy: /* @__PURE__ */ Symbol("destroy"),
      kDispatch: /* @__PURE__ */ Symbol("dispatch"),
      kUrl: /* @__PURE__ */ Symbol("url"),
      kWriting: /* @__PURE__ */ Symbol("writing"),
      kResuming: /* @__PURE__ */ Symbol("resuming"),
      kQueue: /* @__PURE__ */ Symbol("queue"),
      kConnect: /* @__PURE__ */ Symbol("connect"),
      kConnecting: /* @__PURE__ */ Symbol("connecting"),
      kKeepAliveDefaultTimeout: /* @__PURE__ */ Symbol("default keep alive timeout"),
      kKeepAliveMaxTimeout: /* @__PURE__ */ Symbol("max keep alive timeout"),
      kKeepAliveTimeoutThreshold: /* @__PURE__ */ Symbol("keep alive timeout threshold"),
      kKeepAliveTimeoutValue: /* @__PURE__ */ Symbol("keep alive timeout"),
      kKeepAlive: /* @__PURE__ */ Symbol("keep alive"),
      kHeadersTimeout: /* @__PURE__ */ Symbol("headers timeout"),
      kBodyTimeout: /* @__PURE__ */ Symbol("body timeout"),
      kServerName: /* @__PURE__ */ Symbol("server name"),
      kLocalAddress: /* @__PURE__ */ Symbol("local address"),
      kHost: /* @__PURE__ */ Symbol("host"),
      kNoRef: /* @__PURE__ */ Symbol("no ref"),
      kBodyUsed: /* @__PURE__ */ Symbol("used"),
      kBody: /* @__PURE__ */ Symbol("abstracted request body"),
      kRunning: /* @__PURE__ */ Symbol("running"),
      kBlocking: /* @__PURE__ */ Symbol("blocking"),
      kPending: /* @__PURE__ */ Symbol("pending"),
      kSize: /* @__PURE__ */ Symbol("size"),
      kBusy: /* @__PURE__ */ Symbol("busy"),
      kQueued: /* @__PURE__ */ Symbol("queued"),
      kFree: /* @__PURE__ */ Symbol("free"),
      kConnected: /* @__PURE__ */ Symbol("connected"),
      kClosed: /* @__PURE__ */ Symbol("closed"),
      kNeedDrain: /* @__PURE__ */ Symbol("need drain"),
      kReset: /* @__PURE__ */ Symbol("reset"),
      kDestroyed: /* @__PURE__ */ Symbol.for("nodejs.stream.destroyed"),
      kResume: /* @__PURE__ */ Symbol("resume"),
      kOnError: /* @__PURE__ */ Symbol("on error"),
      kMaxHeadersSize: /* @__PURE__ */ Symbol("max headers size"),
      kRunningIdx: /* @__PURE__ */ Symbol("running index"),
      kPendingIdx: /* @__PURE__ */ Symbol("pending index"),
      kError: /* @__PURE__ */ Symbol("error"),
      kClients: /* @__PURE__ */ Symbol("clients"),
      kClient: /* @__PURE__ */ Symbol("client"),
      kParser: /* @__PURE__ */ Symbol("parser"),
      kOnDestroyed: /* @__PURE__ */ Symbol("destroy callbacks"),
      kPipelining: /* @__PURE__ */ Symbol("pipelining"),
      kSocket: /* @__PURE__ */ Symbol("socket"),
      kHostHeader: /* @__PURE__ */ Symbol("host header"),
      kConnector: /* @__PURE__ */ Symbol("connector"),
      kStrictContentLength: /* @__PURE__ */ Symbol("strict content length"),
      kMaxRedirections: /* @__PURE__ */ Symbol("maxRedirections"),
      kMaxRequests: /* @__PURE__ */ Symbol("maxRequestsPerClient"),
      kProxy: /* @__PURE__ */ Symbol("proxy agent options"),
      kCounter: /* @__PURE__ */ Symbol("socket request counter"),
      kMaxResponseSize: /* @__PURE__ */ Symbol("max response size"),
      kHTTP2Session: /* @__PURE__ */ Symbol("http2Session"),
      kHTTP2SessionState: /* @__PURE__ */ Symbol("http2Session state"),
      kRetryHandlerDefaultRetry: /* @__PURE__ */ Symbol("retry agent default retry"),
      kConstruct: /* @__PURE__ */ Symbol("constructable"),
      kListeners: /* @__PURE__ */ Symbol("listeners"),
      kHTTPContext: /* @__PURE__ */ Symbol("http context"),
      kMaxConcurrentStreams: /* @__PURE__ */ Symbol("max concurrent streams"),
      kHTTP2InitialWindowSize: /* @__PURE__ */ Symbol("http2 initial window size"),
      kHTTP2ConnectionWindowSize: /* @__PURE__ */ Symbol("http2 connection window size"),
      kEnableConnectProtocol: /* @__PURE__ */ Symbol("http2session connect protocol"),
      kRemoteSettings: /* @__PURE__ */ Symbol("http2session remote settings"),
      kHTTP2Stream: /* @__PURE__ */ Symbol("http2session client stream"),
      kPingInterval: /* @__PURE__ */ Symbol("ping interval"),
      kNoProxyAgent: /* @__PURE__ */ Symbol("no proxy agent"),
      kHttpProxyAgent: /* @__PURE__ */ Symbol("http proxy agent"),
      kHttpsProxyAgent: /* @__PURE__ */ Symbol("https proxy agent"),
      kSocks5ProxyAgent: /* @__PURE__ */ Symbol("socks5 proxy agent")
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/util/timers.js
var require_timers = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/util/timers.js"(exports2, module2) {
    "use strict";
    var fastNow = 0;
    var RESOLUTION_MS = 1e3;
    var TICK_MS = (RESOLUTION_MS >> 1) - 1;
    var fastNowTimeout;
    var kFastTimer = /* @__PURE__ */ Symbol("kFastTimer");
    var fastTimers = [];
    var NOT_IN_LIST = -2;
    var TO_BE_CLEARED = -1;
    var PENDING = 0;
    var ACTIVE = 1;
    function onTick() {
      fastNow += TICK_MS;
      let idx = 0;
      let len = fastTimers.length;
      while (idx < len) {
        const timer = fastTimers[idx];
        if (timer._state === PENDING) {
          timer._idleStart = fastNow - TICK_MS;
          timer._state = ACTIVE;
        } else if (timer._state === ACTIVE && fastNow >= timer._idleStart + timer._idleTimeout) {
          timer._state = TO_BE_CLEARED;
          timer._idleStart = -1;
          timer._onTimeout(timer._timerArg);
        }
        if (timer._state === TO_BE_CLEARED) {
          timer._state = NOT_IN_LIST;
          if (--len !== 0) {
            fastTimers[idx] = fastTimers[len];
          }
        } else {
          ++idx;
        }
      }
      fastTimers.length = len;
      if (fastTimers.length !== 0) {
        refreshTimeout();
      }
    }
    function refreshTimeout() {
      if (fastNowTimeout?.refresh) {
        fastNowTimeout.refresh();
      } else {
        clearTimeout(fastNowTimeout);
        fastNowTimeout = setTimeout(onTick, TICK_MS);
        fastNowTimeout?.unref();
      }
    }
    var FastTimer = class {
      [kFastTimer] = true;
      /**
       * The state of the timer, which can be one of the following:
       * - NOT_IN_LIST (-2)
       * - TO_BE_CLEARED (-1)
       * - PENDING (0)
       * - ACTIVE (1)
       *
       * @type {-2|-1|0|1}
       * @private
       */
      _state = NOT_IN_LIST;
      /**
       * The number of milliseconds to wait before calling the callback.
       *
       * @type {number}
       * @private
       */
      _idleTimeout = -1;
      /**
       * The time in milliseconds when the timer was started. This value is used to
       * calculate when the timer should expire.
       *
       * @type {number}
       * @default -1
       * @private
       */
      _idleStart = -1;
      /**
       * The function to be executed when the timer expires.
       * @type {Function}
       * @private
       */
      _onTimeout;
      /**
       * The argument to be passed to the callback when the timer expires.
       *
       * @type {*}
       * @private
       */
      _timerArg;
      /**
       * @constructor
       * @param {Function} callback A function to be executed after the timer
       * expires.
       * @param {number} delay The time, in milliseconds that the timer should wait
       * before the specified function or code is executed.
       * @param {*} arg
       */
      constructor(callback2, delay, arg) {
        this._onTimeout = callback2;
        this._idleTimeout = delay;
        this._timerArg = arg;
        this.refresh();
      }
      /**
       * Sets the timer's start time to the current time, and reschedules the timer
       * to call its callback at the previously specified duration adjusted to the
       * current time.
       * Using this on a timer that has already called its callback will reactivate
       * the timer.
       *
       * @returns {void}
       */
      refresh() {
        if (this._state === NOT_IN_LIST) {
          fastTimers.push(this);
        }
        if (!fastNowTimeout || fastTimers.length === 1) {
          refreshTimeout();
        }
        this._state = PENDING;
      }
      /**
       * The `clear` method cancels the timer, preventing it from executing.
       *
       * @returns {void}
       * @private
       */
      clear() {
        this._state = TO_BE_CLEARED;
        this._idleStart = -1;
      }
    };
    module2.exports = {
      /**
       * The setTimeout() method sets a timer which executes a function once the
       * timer expires.
       * @param {Function} callback A function to be executed after the timer
       * expires.
       * @param {number} delay The time, in milliseconds that the timer should
       * wait before the specified function or code is executed.
       * @param {*} [arg] An optional argument to be passed to the callback function
       * when the timer expires.
       * @returns {NodeJS.Timeout|FastTimer}
       */
      setTimeout(callback2, delay, arg) {
        return delay <= RESOLUTION_MS ? setTimeout(callback2, delay, arg) : new FastTimer(callback2, delay, arg);
      },
      /**
       * The clearTimeout method cancels an instantiated Timer previously created
       * by calling setTimeout.
       *
       * @param {NodeJS.Timeout|FastTimer} timeout
       */
      clearTimeout(timeout) {
        if (timeout[kFastTimer]) {
          timeout.clear();
        } else {
          clearTimeout(timeout);
        }
      },
      /**
       * The setFastTimeout() method sets a fastTimer which executes a function once
       * the timer expires.
       * @param {Function} callback A function to be executed after the timer
       * expires.
       * @param {number} delay The time, in milliseconds that the timer should
       * wait before the specified function or code is executed.
       * @param {*} [arg] An optional argument to be passed to the callback function
       * when the timer expires.
       * @returns {FastTimer}
       */
      setFastTimeout(callback2, delay, arg) {
        return new FastTimer(callback2, delay, arg);
      },
      /**
       * The clearTimeout method cancels an instantiated FastTimer previously
       * created by calling setFastTimeout.
       *
       * @param {FastTimer} timeout
       */
      clearFastTimeout(timeout) {
        timeout.clear();
      },
      /**
       * The now method returns the value of the internal fast timer clock.
       *
       * @returns {number}
       */
      now() {
        return fastNow;
      },
      /**
       * Trigger the onTick function to process the fastTimers array.
       * Exported for testing purposes only.
       * Marking as deprecated to discourage any use outside of testing.
       * @deprecated
       * @param {number} [delay=0] The delay in milliseconds to add to the now value.
       */
      tick(delay = 0) {
        fastNow += delay - RESOLUTION_MS + 1;
        onTick();
        onTick();
      },
      /**
       * Reset FastTimers.
       * Exported for testing purposes only.
       * Marking as deprecated to discourage any use outside of testing.
       * @deprecated
       */
      reset() {
        fastNow = 0;
        fastTimers.length = 0;
        clearTimeout(fastNowTimeout);
        fastNowTimeout = null;
      },
      /**
       * Exporting for testing purposes only.
       * Marking as deprecated to discourage any use outside of testing.
       * @deprecated
       */
      kFastTimer
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/core/errors.js
var require_errors5 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/core/errors.js"(exports2, module2) {
    "use strict";
    var kUndiciError = /* @__PURE__ */ Symbol.for("undici.error.UND_ERR");
    var UndiciError = class extends Error {
      constructor(message, options) {
        super(message, options);
        this.name = "UndiciError";
        this.code = "UND_ERR";
      }
      static [Symbol.hasInstance](instance) {
        return instance && instance[kUndiciError] === true;
      }
      get [kUndiciError]() {
        return true;
      }
    };
    var kConnectTimeoutError = /* @__PURE__ */ Symbol.for("undici.error.UND_ERR_CONNECT_TIMEOUT");
    var ConnectTimeoutError = class extends UndiciError {
      constructor(message) {
        super(message);
        this.name = "ConnectTimeoutError";
        this.message = message || "Connect Timeout Error";
        this.code = "UND_ERR_CONNECT_TIMEOUT";
      }
      static [Symbol.hasInstance](instance) {
        return instance && instance[kConnectTimeoutError] === true;
      }
      get [kConnectTimeoutError]() {
        return true;
      }
    };
    var kHeadersTimeoutError = /* @__PURE__ */ Symbol.for("undici.error.UND_ERR_HEADERS_TIMEOUT");
    var HeadersTimeoutError = class extends UndiciError {
      constructor(message) {
        super(message);
        this.name = "HeadersTimeoutError";
        this.message = message || "Headers Timeout Error";
        this.code = "UND_ERR_HEADERS_TIMEOUT";
      }
      static [Symbol.hasInstance](instance) {
        return instance && instance[kHeadersTimeoutError] === true;
      }
      get [kHeadersTimeoutError]() {
        return true;
      }
    };
    var kHeadersOverflowError = /* @__PURE__ */ Symbol.for("undici.error.UND_ERR_HEADERS_OVERFLOW");
    var HeadersOverflowError = class extends UndiciError {
      constructor(message) {
        super(message);
        this.name = "HeadersOverflowError";
        this.message = message || "Headers Overflow Error";
        this.code = "UND_ERR_HEADERS_OVERFLOW";
      }
      static [Symbol.hasInstance](instance) {
        return instance && instance[kHeadersOverflowError] === true;
      }
      get [kHeadersOverflowError]() {
        return true;
      }
    };
    var kBodyTimeoutError = /* @__PURE__ */ Symbol.for("undici.error.UND_ERR_BODY_TIMEOUT");
    var BodyTimeoutError = class extends UndiciError {
      constructor(message) {
        super(message);
        this.name = "BodyTimeoutError";
        this.message = message || "Body Timeout Error";
        this.code = "UND_ERR_BODY_TIMEOUT";
      }
      static [Symbol.hasInstance](instance) {
        return instance && instance[kBodyTimeoutError] === true;
      }
      get [kBodyTimeoutError]() {
        return true;
      }
    };
    var kInvalidArgumentError = /* @__PURE__ */ Symbol.for("undici.error.UND_ERR_INVALID_ARG");
    var InvalidArgumentError = class extends UndiciError {
      constructor(message) {
        super(message);
        this.name = "InvalidArgumentError";
        this.message = message || "Invalid Argument Error";
        this.code = "UND_ERR_INVALID_ARG";
      }
      static [Symbol.hasInstance](instance) {
        return instance && instance[kInvalidArgumentError] === true;
      }
      get [kInvalidArgumentError]() {
        return true;
      }
    };
    var kInvalidReturnValueError = /* @__PURE__ */ Symbol.for("undici.error.UND_ERR_INVALID_RETURN_VALUE");
    var InvalidReturnValueError = class extends UndiciError {
      constructor(message) {
        super(message);
        this.name = "InvalidReturnValueError";
        this.message = message || "Invalid Return Value Error";
        this.code = "UND_ERR_INVALID_RETURN_VALUE";
      }
      static [Symbol.hasInstance](instance) {
        return instance && instance[kInvalidReturnValueError] === true;
      }
      get [kInvalidReturnValueError]() {
        return true;
      }
    };
    var kAbortError = /* @__PURE__ */ Symbol.for("undici.error.UND_ERR_ABORT");
    var AbortError = class extends UndiciError {
      constructor(message) {
        super(message);
        this.name = "AbortError";
        this.message = message || "The operation was aborted";
        this.code = "UND_ERR_ABORT";
      }
      static [Symbol.hasInstance](instance) {
        return instance && instance[kAbortError] === true;
      }
      get [kAbortError]() {
        return true;
      }
    };
    var kRequestAbortedError = /* @__PURE__ */ Symbol.for("undici.error.UND_ERR_ABORTED");
    var RequestAbortedError = class extends AbortError {
      constructor(message) {
        super(message);
        this.name = "AbortError";
        this.message = message || "Request aborted";
        this.code = "UND_ERR_ABORTED";
      }
      static [Symbol.hasInstance](instance) {
        return instance && instance[kRequestAbortedError] === true;
      }
      get [kRequestAbortedError]() {
        return true;
      }
    };
    var kInformationalError = /* @__PURE__ */ Symbol.for("undici.error.UND_ERR_INFO");
    var InformationalError = class extends UndiciError {
      constructor(message) {
        super(message);
        this.name = "InformationalError";
        this.message = message || "Request information";
        this.code = "UND_ERR_INFO";
      }
      static [Symbol.hasInstance](instance) {
        return instance && instance[kInformationalError] === true;
      }
      get [kInformationalError]() {
        return true;
      }
    };
    var kRequestContentLengthMismatchError = /* @__PURE__ */ Symbol.for("undici.error.UND_ERR_REQ_CONTENT_LENGTH_MISMATCH");
    var RequestContentLengthMismatchError = class extends UndiciError {
      constructor(message) {
        super(message);
        this.name = "RequestContentLengthMismatchError";
        this.message = message || "Request body length does not match content-length header";
        this.code = "UND_ERR_REQ_CONTENT_LENGTH_MISMATCH";
      }
      static [Symbol.hasInstance](instance) {
        return instance && instance[kRequestContentLengthMismatchError] === true;
      }
      get [kRequestContentLengthMismatchError]() {
        return true;
      }
    };
    var kResponseContentLengthMismatchError = /* @__PURE__ */ Symbol.for("undici.error.UND_ERR_RES_CONTENT_LENGTH_MISMATCH");
    var ResponseContentLengthMismatchError = class extends UndiciError {
      constructor(message) {
        super(message);
        this.name = "ResponseContentLengthMismatchError";
        this.message = message || "Response body length does not match content-length header";
        this.code = "UND_ERR_RES_CONTENT_LENGTH_MISMATCH";
      }
      static [Symbol.hasInstance](instance) {
        return instance && instance[kResponseContentLengthMismatchError] === true;
      }
      get [kResponseContentLengthMismatchError]() {
        return true;
      }
    };
    var kClientDestroyedError = /* @__PURE__ */ Symbol.for("undici.error.UND_ERR_DESTROYED");
    var ClientDestroyedError = class extends UndiciError {
      constructor(message) {
        super(message);
        this.name = "ClientDestroyedError";
        this.message = message || "The client is destroyed";
        this.code = "UND_ERR_DESTROYED";
      }
      static [Symbol.hasInstance](instance) {
        return instance && instance[kClientDestroyedError] === true;
      }
      get [kClientDestroyedError]() {
        return true;
      }
    };
    var kClientClosedError = /* @__PURE__ */ Symbol.for("undici.error.UND_ERR_CLOSED");
    var ClientClosedError = class extends UndiciError {
      constructor(message) {
        super(message);
        this.name = "ClientClosedError";
        this.message = message || "The client is closed";
        this.code = "UND_ERR_CLOSED";
      }
      static [Symbol.hasInstance](instance) {
        return instance && instance[kClientClosedError] === true;
      }
      get [kClientClosedError]() {
        return true;
      }
    };
    var kSocketError = /* @__PURE__ */ Symbol.for("undici.error.UND_ERR_SOCKET");
    var SocketError = class extends UndiciError {
      constructor(message, socket) {
        super(message);
        this.name = "SocketError";
        this.message = message || "Socket error";
        this.code = "UND_ERR_SOCKET";
        this.socket = socket;
      }
      static [Symbol.hasInstance](instance) {
        return instance && instance[kSocketError] === true;
      }
      get [kSocketError]() {
        return true;
      }
    };
    var kNotSupportedError = /* @__PURE__ */ Symbol.for("undici.error.UND_ERR_NOT_SUPPORTED");
    var NotSupportedError = class extends UndiciError {
      constructor(message) {
        super(message);
        this.name = "NotSupportedError";
        this.message = message || "Not supported error";
        this.code = "UND_ERR_NOT_SUPPORTED";
      }
      static [Symbol.hasInstance](instance) {
        return instance && instance[kNotSupportedError] === true;
      }
      get [kNotSupportedError]() {
        return true;
      }
    };
    var kBalancedPoolMissingUpstreamError = /* @__PURE__ */ Symbol.for("undici.error.UND_ERR_BPL_MISSING_UPSTREAM");
    var BalancedPoolMissingUpstreamError = class extends UndiciError {
      constructor(message) {
        super(message);
        this.name = "MissingUpstreamError";
        this.message = message || "No upstream has been added to the BalancedPool";
        this.code = "UND_ERR_BPL_MISSING_UPSTREAM";
      }
      static [Symbol.hasInstance](instance) {
        return instance && instance[kBalancedPoolMissingUpstreamError] === true;
      }
      get [kBalancedPoolMissingUpstreamError]() {
        return true;
      }
    };
    var kHTTPParserError = /* @__PURE__ */ Symbol.for("undici.error.UND_ERR_HTTP_PARSER");
    var HTTPParserError = class extends Error {
      constructor(message, code, data) {
        super(message);
        this.name = "HTTPParserError";
        this.code = code ? `HPE_${code}` : void 0;
        this.data = data ? data.toString() : void 0;
      }
      static [Symbol.hasInstance](instance) {
        return instance && instance[kHTTPParserError] === true;
      }
      get [kHTTPParserError]() {
        return true;
      }
    };
    var kResponseExceededMaxSizeError = /* @__PURE__ */ Symbol.for("undici.error.UND_ERR_RES_EXCEEDED_MAX_SIZE");
    var ResponseExceededMaxSizeError = class extends UndiciError {
      constructor(message) {
        super(message);
        this.name = "ResponseExceededMaxSizeError";
        this.message = message || "Response content exceeded max size";
        this.code = "UND_ERR_RES_EXCEEDED_MAX_SIZE";
      }
      static [Symbol.hasInstance](instance) {
        return instance && instance[kResponseExceededMaxSizeError] === true;
      }
      get [kResponseExceededMaxSizeError]() {
        return true;
      }
    };
    var kRequestRetryError = /* @__PURE__ */ Symbol.for("undici.error.UND_ERR_REQ_RETRY");
    var RequestRetryError = class extends UndiciError {
      constructor(message, code, { headers, data }) {
        super(message);
        this.name = "RequestRetryError";
        this.message = message || "Request retry error";
        this.code = "UND_ERR_REQ_RETRY";
        this.statusCode = code;
        this.data = data;
        this.headers = headers;
      }
      static [Symbol.hasInstance](instance) {
        return instance && instance[kRequestRetryError] === true;
      }
      get [kRequestRetryError]() {
        return true;
      }
    };
    var kResponseError = /* @__PURE__ */ Symbol.for("undici.error.UND_ERR_RESPONSE");
    var ResponseError2 = class extends UndiciError {
      constructor(message, code, { headers, body }) {
        super(message);
        this.name = "ResponseError";
        this.message = message || "Response error";
        this.code = "UND_ERR_RESPONSE";
        this.statusCode = code;
        this.body = body;
        this.headers = headers;
      }
      static [Symbol.hasInstance](instance) {
        return instance && instance[kResponseError] === true;
      }
      get [kResponseError]() {
        return true;
      }
    };
    var kSecureProxyConnectionError = /* @__PURE__ */ Symbol.for("undici.error.UND_ERR_PRX_TLS");
    var SecureProxyConnectionError = class extends UndiciError {
      constructor(cause, message, options = {}) {
        super(message, { cause, ...options });
        this.name = "SecureProxyConnectionError";
        this.message = message || "Secure Proxy Connection failed";
        this.code = "UND_ERR_PRX_TLS";
        this.cause = cause;
      }
      static [Symbol.hasInstance](instance) {
        return instance && instance[kSecureProxyConnectionError] === true;
      }
      get [kSecureProxyConnectionError]() {
        return true;
      }
    };
    var kMaxOriginsReachedError = /* @__PURE__ */ Symbol.for("undici.error.UND_ERR_MAX_ORIGINS_REACHED");
    var MaxOriginsReachedError = class extends UndiciError {
      constructor(message) {
        super(message);
        this.name = "MaxOriginsReachedError";
        this.message = message || "Maximum allowed origins reached";
        this.code = "UND_ERR_MAX_ORIGINS_REACHED";
      }
      static [Symbol.hasInstance](instance) {
        return instance && instance[kMaxOriginsReachedError] === true;
      }
      get [kMaxOriginsReachedError]() {
        return true;
      }
    };
    var Socks5ProxyError = class extends UndiciError {
      constructor(message, code) {
        super(message);
        this.name = "Socks5ProxyError";
        this.message = message || "SOCKS5 proxy error";
        this.code = code || "UND_ERR_SOCKS5";
      }
    };
    var kMessageSizeExceededError = /* @__PURE__ */ Symbol.for("undici.error.UND_ERR_WS_MESSAGE_SIZE_EXCEEDED");
    var MessageSizeExceededError = class extends UndiciError {
      constructor(message) {
        super(message);
        this.name = "MessageSizeExceededError";
        this.message = message || "Max decompressed message size exceeded";
        this.code = "UND_ERR_WS_MESSAGE_SIZE_EXCEEDED";
      }
      static [Symbol.hasInstance](instance) {
        return instance && instance[kMessageSizeExceededError] === true;
      }
      get [kMessageSizeExceededError]() {
        return true;
      }
    };
    module2.exports = {
      AbortError,
      HTTPParserError,
      UndiciError,
      HeadersTimeoutError,
      HeadersOverflowError,
      BodyTimeoutError,
      RequestContentLengthMismatchError,
      ConnectTimeoutError,
      InvalidArgumentError,
      InvalidReturnValueError,
      RequestAbortedError,
      ClientDestroyedError,
      ClientClosedError,
      InformationalError,
      SocketError,
      NotSupportedError,
      ResponseContentLengthMismatchError,
      BalancedPoolMissingUpstreamError,
      ResponseExceededMaxSizeError,
      RequestRetryError,
      ResponseError: ResponseError2,
      SecureProxyConnectionError,
      MaxOriginsReachedError,
      Socks5ProxyError,
      MessageSizeExceededError
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/core/constants.js
var require_constants12 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/core/constants.js"(exports2, module2) {
    "use strict";
    var wellknownHeaderNames = (
      /** @type {const} */
      [
        "Accept",
        "Accept-Encoding",
        "Accept-Language",
        "Accept-Ranges",
        "Access-Control-Allow-Credentials",
        "Access-Control-Allow-Headers",
        "Access-Control-Allow-Methods",
        "Access-Control-Allow-Origin",
        "Access-Control-Expose-Headers",
        "Access-Control-Max-Age",
        "Access-Control-Request-Headers",
        "Access-Control-Request-Method",
        "Age",
        "Allow",
        "Alt-Svc",
        "Alt-Used",
        "Authorization",
        "Cache-Control",
        "Clear-Site-Data",
        "Connection",
        "Content-Disposition",
        "Content-Encoding",
        "Content-Language",
        "Content-Length",
        "Content-Location",
        "Content-Range",
        "Content-Security-Policy",
        "Content-Security-Policy-Report-Only",
        "Content-Type",
        "Cookie",
        "Cross-Origin-Embedder-Policy",
        "Cross-Origin-Opener-Policy",
        "Cross-Origin-Resource-Policy",
        "Date",
        "Device-Memory",
        "Downlink",
        "ECT",
        "ETag",
        "Expect",
        "Expect-CT",
        "Expires",
        "Forwarded",
        "From",
        "Host",
        "If-Match",
        "If-Modified-Since",
        "If-None-Match",
        "If-Range",
        "If-Unmodified-Since",
        "Keep-Alive",
        "Last-Modified",
        "Link",
        "Location",
        "Max-Forwards",
        "Origin",
        "Permissions-Policy",
        "Pragma",
        "Proxy-Authenticate",
        "Proxy-Authorization",
        "RTT",
        "Range",
        "Referer",
        "Referrer-Policy",
        "Refresh",
        "Retry-After",
        "Sec-WebSocket-Accept",
        "Sec-WebSocket-Extensions",
        "Sec-WebSocket-Key",
        "Sec-WebSocket-Protocol",
        "Sec-WebSocket-Version",
        "Server",
        "Server-Timing",
        "Service-Worker-Allowed",
        "Service-Worker-Navigation-Preload",
        "Set-Cookie",
        "SourceMap",
        "Strict-Transport-Security",
        "Supports-Loading-Mode",
        "TE",
        "Timing-Allow-Origin",
        "Trailer",
        "Transfer-Encoding",
        "Upgrade",
        "Upgrade-Insecure-Requests",
        "User-Agent",
        "Vary",
        "Via",
        "WWW-Authenticate",
        "X-Content-Type-Options",
        "X-DNS-Prefetch-Control",
        "X-Frame-Options",
        "X-Permitted-Cross-Domain-Policies",
        "X-Powered-By",
        "X-Requested-With",
        "X-XSS-Protection"
      ]
    );
    var headerNameLowerCasedRecord = {};
    Object.setPrototypeOf(headerNameLowerCasedRecord, null);
    var wellknownHeaderNameBuffers = {};
    Object.setPrototypeOf(wellknownHeaderNameBuffers, null);
    function getHeaderNameAsBuffer(header) {
      let buffer3 = wellknownHeaderNameBuffers[header];
      if (buffer3 === void 0) {
        buffer3 = Buffer.from(header);
      }
      return buffer3;
    }
    for (let i2 = 0; i2 < wellknownHeaderNames.length; ++i2) {
      const key = wellknownHeaderNames[i2];
      const lowerCasedKey = key.toLowerCase();
      headerNameLowerCasedRecord[key] = headerNameLowerCasedRecord[lowerCasedKey] = lowerCasedKey;
    }
    module2.exports = {
      wellknownHeaderNames,
      headerNameLowerCasedRecord,
      getHeaderNameAsBuffer
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/core/tree.js
var require_tree = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/core/tree.js"(exports2, module2) {
    "use strict";
    var {
      wellknownHeaderNames,
      headerNameLowerCasedRecord
    } = require_constants12();
    var TstNode = class _TstNode {
      /** @type {any} */
      value = null;
      /** @type {null | TstNode} */
      left = null;
      /** @type {null | TstNode} */
      middle = null;
      /** @type {null | TstNode} */
      right = null;
      /** @type {number} */
      code;
      /**
       * @param {string} key
       * @param {any} value
       * @param {number} index
       */
      constructor(key, value, index) {
        if (index === void 0 || index >= key.length) {
          throw new TypeError("Unreachable");
        }
        const code = this.code = key.charCodeAt(index);
        if (code > 127) {
          throw new TypeError("key must be ascii string");
        }
        if (key.length !== ++index) {
          this.middle = new _TstNode(key, value, index);
        } else {
          this.value = value;
        }
      }
      /**
       * @param {string} key
       * @param {any} value
       * @returns {void}
       */
      add(key, value) {
        const length = key.length;
        if (length === 0) {
          throw new TypeError("Unreachable");
        }
        let index = 0;
        let node = this;
        while (true) {
          const code = key.charCodeAt(index);
          if (code > 127) {
            throw new TypeError("key must be ascii string");
          }
          if (node.code === code) {
            if (length === ++index) {
              node.value = value;
              break;
            } else if (node.middle !== null) {
              node = node.middle;
            } else {
              node.middle = new _TstNode(key, value, index);
              break;
            }
          } else if (node.code < code) {
            if (node.left !== null) {
              node = node.left;
            } else {
              node.left = new _TstNode(key, value, index);
              break;
            }
          } else if (node.right !== null) {
            node = node.right;
          } else {
            node.right = new _TstNode(key, value, index);
            break;
          }
        }
      }
      /**
       * @param {Uint8Array} key
       * @returns {TstNode | null}
       */
      search(key) {
        const keylength = key.length;
        let index = 0;
        let node = this;
        while (node !== null && index < keylength) {
          let code = key[index];
          if (code <= 90 && code >= 65) {
            code |= 32;
          }
          while (node !== null) {
            if (code === node.code) {
              if (keylength === ++index) {
                return node;
              }
              node = node.middle;
              break;
            }
            node = node.code < code ? node.left : node.right;
          }
        }
        return null;
      }
    };
    var TernarySearchTree = class {
      /** @type {TstNode | null} */
      node = null;
      /**
       * @param {string} key
       * @param {any} value
       * @returns {void}
       * */
      insert(key, value) {
        if (this.node === null) {
          this.node = new TstNode(key, value, 0);
        } else {
          this.node.add(key, value);
        }
      }
      /**
       * @param {Uint8Array} key
       * @returns {any}
       */
      lookup(key) {
        return this.node?.search(key)?.value ?? null;
      }
    };
    var tree = new TernarySearchTree();
    for (let i2 = 0; i2 < wellknownHeaderNames.length; ++i2) {
      const key = headerNameLowerCasedRecord[wellknownHeaderNames[i2]];
      tree.insert(key, key);
    }
    module2.exports = {
      TernarySearchTree,
      tree
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/core/util.js
var require_util6 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/core/util.js"(exports2, module2) {
    "use strict";
    var assert13 = __require("node:assert");
    var { kDestroyed, kBodyUsed, kListeners, kBody } = require_symbols();
    var { IncomingMessage } = __require("node:http");
    var stream2 = __require("node:stream");
    var net = __require("node:net");
    var { stringify } = __require("node:querystring");
    var { EventEmitter: EE } = __require("node:events");
    var timers = require_timers();
    var { InvalidArgumentError, ConnectTimeoutError } = require_errors5();
    var { headerNameLowerCasedRecord } = require_constants12();
    var { tree } = require_tree();
    var [nodeMajor, nodeMinor] = process.versions.node.split(".", 2).map((v) => Number(v));
    var BodyAsyncIterable = class {
      constructor(body) {
        this[kBody] = body;
        this[kBodyUsed] = false;
      }
      async *[Symbol.asyncIterator]() {
        assert13(!this[kBodyUsed], "disturbed");
        this[kBodyUsed] = true;
        yield* this[kBody];
      }
    };
    function noop5() {
    }
    function wrapRequestBody(body) {
      if (isStream3(body)) {
        if (bodyLength(body) === 0) {
          body.on("data", function() {
            assert13(false);
          });
        }
        if (typeof body.readableDidRead !== "boolean") {
          body[kBodyUsed] = false;
          EE.prototype.on.call(body, "data", function() {
            this[kBodyUsed] = true;
          });
        }
        return body;
      } else if (body && typeof body.pipeTo === "function") {
        return new BodyAsyncIterable(body);
      } else if (body && isFormDataLike(body)) {
        return body;
      } else if (body && typeof body !== "string" && !ArrayBuffer.isView(body) && isIterable(body)) {
        return new BodyAsyncIterable(body);
      } else {
        return body;
      }
    }
    function isStream3(obj) {
      return obj && typeof obj === "object" && typeof obj.pipe === "function" && typeof obj.on === "function";
    }
    function isBlobLike(object) {
      if (object === null) {
        return false;
      } else if (object instanceof Blob) {
        return true;
      } else if (typeof object !== "object") {
        return false;
      } else {
        const sTag = object[Symbol.toStringTag];
        return (sTag === "Blob" || sTag === "File") && ("stream" in object && typeof object.stream === "function" || "arrayBuffer" in object && typeof object.arrayBuffer === "function");
      }
    }
    function pathHasQueryOrFragment(url7) {
      return url7.includes("?") || url7.includes("#");
    }
    function serializePathWithQuery(url7, queryParams) {
      if (pathHasQueryOrFragment(url7)) {
        throw new Error('Query params cannot be passed when url already contains "?" or "#".');
      }
      const stringified = stringify(queryParams);
      if (stringified) {
        url7 += "?" + stringified;
      }
      return url7;
    }
    function isValidPort(port) {
      const value = parseInt(port, 10);
      return value === Number(port) && value >= 0 && value <= 65535;
    }
    function isHttpOrHttpsPrefixed(value) {
      return value != null && value[0] === "h" && value[1] === "t" && value[2] === "t" && value[3] === "p" && (value[4] === ":" || value[4] === "s" && value[5] === ":");
    }
    function parseURL(url7) {
      if (typeof url7 === "string") {
        url7 = new URL(url7);
        if (!isHttpOrHttpsPrefixed(url7.origin || url7.protocol)) {
          throw new InvalidArgumentError("Invalid URL protocol: the URL must start with `http:` or `https:`.");
        }
        return url7;
      }
      if (!url7 || typeof url7 !== "object") {
        throw new InvalidArgumentError("Invalid URL: The URL argument must be a non-null object.");
      }
      if (!(url7 instanceof URL)) {
        if (url7.port != null && url7.port !== "" && isValidPort(url7.port) === false) {
          throw new InvalidArgumentError("Invalid URL: port must be a valid integer or a string representation of an integer.");
        }
        if (url7.path != null && typeof url7.path !== "string") {
          throw new InvalidArgumentError("Invalid URL path: the path must be a string or null/undefined.");
        }
        if (url7.pathname != null && typeof url7.pathname !== "string") {
          throw new InvalidArgumentError("Invalid URL pathname: the pathname must be a string or null/undefined.");
        }
        if (url7.hostname != null && typeof url7.hostname !== "string") {
          throw new InvalidArgumentError("Invalid URL hostname: the hostname must be a string or null/undefined.");
        }
        if (url7.origin != null && typeof url7.origin !== "string") {
          throw new InvalidArgumentError("Invalid URL origin: the origin must be a string or null/undefined.");
        }
        if (!isHttpOrHttpsPrefixed(url7.origin || url7.protocol)) {
          throw new InvalidArgumentError("Invalid URL protocol: the URL must start with `http:` or `https:`.");
        }
        const port = url7.port != null ? url7.port : url7.protocol === "https:" ? 443 : 80;
        let origin = url7.origin != null ? url7.origin : `${url7.protocol || ""}//${url7.hostname || ""}:${port}`;
        let path218 = url7.path != null ? url7.path : `${url7.pathname || ""}${url7.search || ""}`;
        if (origin[origin.length - 1] === "/") {
          origin = origin.slice(0, origin.length - 1);
        }
        if (path218 && path218[0] !== "/") {
          path218 = `/${path218}`;
        }
        return new URL(`${origin}${path218}`);
      }
      if (!isHttpOrHttpsPrefixed(url7.origin || url7.protocol)) {
        throw new InvalidArgumentError("Invalid URL protocol: the URL must start with `http:` or `https:`.");
      }
      return url7;
    }
    function parseOrigin(url7) {
      url7 = parseURL(url7);
      if (url7.pathname !== "/" || url7.search || url7.hash) {
        throw new InvalidArgumentError("invalid url");
      }
      return url7;
    }
    function getHostname(host) {
      if (host[0] === "[") {
        const idx2 = host.indexOf("]");
        assert13(idx2 !== -1);
        return host.substring(1, idx2);
      }
      const idx = host.indexOf(":");
      if (idx === -1) return host;
      return host.substring(0, idx);
    }
    function getServerName(host) {
      if (!host) {
        return null;
      }
      assert13(typeof host === "string");
      const servername = getHostname(host);
      if (net.isIP(servername)) {
        return "";
      }
      return servername;
    }
    function deepClone(obj) {
      return JSON.parse(JSON.stringify(obj));
    }
    function isAsyncIterable(obj) {
      return !!(obj != null && typeof obj[Symbol.asyncIterator] === "function");
    }
    function isIterable(obj) {
      return !!(obj != null && (typeof obj[Symbol.iterator] === "function" || typeof obj[Symbol.asyncIterator] === "function"));
    }
    function hasSafeIterator(obj) {
      const prototype = Object.getPrototypeOf(obj);
      const ownIterator = Object.prototype.hasOwnProperty.call(obj, Symbol.iterator);
      return ownIterator || prototype != null && prototype !== Object.prototype && typeof obj[Symbol.iterator] === "function";
    }
    function bodyLength(body) {
      if (body == null) {
        return 0;
      } else if (isStream3(body)) {
        const state = body._readableState;
        return state && state.objectMode === false && state.ended === true && Number.isFinite(state.length) ? state.length : null;
      } else if (isBlobLike(body)) {
        return body.size != null ? body.size : null;
      } else if (isBuffer(body)) {
        return body.byteLength;
      }
      return null;
    }
    function isDestroyed(body) {
      return body && !!(body.destroyed || body[kDestroyed] || stream2.isDestroyed?.(body));
    }
    function destroy(stream3, err) {
      if (stream3 == null || !isStream3(stream3) || isDestroyed(stream3)) {
        return;
      }
      if (typeof stream3.destroy === "function") {
        if (Object.getPrototypeOf(stream3).constructor === IncomingMessage) {
          stream3.socket = null;
        }
        stream3.destroy(err);
      } else if (err) {
        queueMicrotask(() => {
          stream3.emit("error", err);
        });
      }
      if (stream3.destroyed !== true) {
        stream3[kDestroyed] = true;
      }
    }
    var KEEPALIVE_TIMEOUT_EXPR = /timeout=(\d+)/;
    function parseKeepAliveTimeout(val) {
      const m = val.match(KEEPALIVE_TIMEOUT_EXPR);
      return m ? parseInt(m[1], 10) * 1e3 : null;
    }
    function headerNameToString(value) {
      return typeof value === "string" ? headerNameLowerCasedRecord[value] ?? value.toLowerCase() : tree.lookup(value) ?? value.toString("latin1").toLowerCase();
    }
    function bufferToLowerCasedHeaderName(value) {
      return tree.lookup(value) ?? value.toString("latin1").toLowerCase();
    }
    function parseHeaders(headers, obj) {
      if (obj === void 0) obj = {};
      for (let i2 = 0; i2 < headers.length; i2 += 2) {
        const key = headerNameToString(headers[i2]);
        let val = obj[key];
        if (val !== void 0) {
          if (!Object.hasOwn(obj, key)) {
            const headersValue = typeof headers[i2 + 1] === "string" ? headers[i2 + 1] : Array.isArray(headers[i2 + 1]) ? headers[i2 + 1].map((x) => x.toString("latin1")) : headers[i2 + 1].toString("latin1");
            if (key === "__proto__") {
              Object.defineProperty(obj, key, {
                value: headersValue,
                enumerable: true,
                configurable: true,
                writable: true
              });
            } else {
              obj[key] = headersValue;
            }
          } else {
            if (typeof val === "string") {
              val = [val];
              obj[key] = val;
            }
            val.push(headers[i2 + 1].toString("latin1"));
          }
        } else {
          const headersValue = typeof headers[i2 + 1] === "string" ? headers[i2 + 1] : Array.isArray(headers[i2 + 1]) ? headers[i2 + 1].map((x) => x.toString("latin1")) : headers[i2 + 1].toString("latin1");
          obj[key] = headersValue;
        }
      }
      return obj;
    }
    function parseRawHeaders(headers) {
      const headersLength = headers.length;
      const ret2 = new Array(headersLength);
      let key;
      let val;
      for (let n2 = 0; n2 < headersLength; n2 += 2) {
        key = headers[n2];
        val = headers[n2 + 1];
        typeof key !== "string" && (key = key.toString());
        typeof val !== "string" && (val = val.toString("latin1"));
        ret2[n2] = key;
        ret2[n2 + 1] = val;
      }
      return ret2;
    }
    function encodeRawHeaders(headers) {
      if (!Array.isArray(headers)) {
        throw new TypeError("expected headers to be an array");
      }
      return headers.map((x) => Buffer.from(x));
    }
    function isBuffer(buffer3) {
      return buffer3 instanceof Uint8Array || Buffer.isBuffer(buffer3);
    }
    function assertRequestHandler(handler77, method, upgrade) {
      if (!handler77 || typeof handler77 !== "object") {
        throw new InvalidArgumentError("handler must be an object");
      }
      if (typeof handler77.onRequestStart === "function") {
        return;
      }
      if (typeof handler77.onConnect !== "function") {
        throw new InvalidArgumentError("invalid onConnect method");
      }
      if (typeof handler77.onError !== "function") {
        throw new InvalidArgumentError("invalid onError method");
      }
      if (typeof handler77.onBodySent !== "function" && handler77.onBodySent !== void 0) {
        throw new InvalidArgumentError("invalid onBodySent method");
      }
      if (upgrade || method === "CONNECT") {
        if (typeof handler77.onUpgrade !== "function") {
          throw new InvalidArgumentError("invalid onUpgrade method");
        }
      } else {
        if (typeof handler77.onHeaders !== "function") {
          throw new InvalidArgumentError("invalid onHeaders method");
        }
        if (typeof handler77.onData !== "function") {
          throw new InvalidArgumentError("invalid onData method");
        }
        if (typeof handler77.onComplete !== "function") {
          throw new InvalidArgumentError("invalid onComplete method");
        }
      }
    }
    function isDisturbed(body) {
      return !!(body && (stream2.isDisturbed(body) || body[kBodyUsed]));
    }
    function getSocketInfo(socket) {
      return {
        localAddress: socket.localAddress,
        localPort: socket.localPort,
        remoteAddress: socket.remoteAddress,
        remotePort: socket.remotePort,
        remoteFamily: socket.remoteFamily,
        timeout: socket.timeout,
        bytesWritten: socket.bytesWritten,
        bytesRead: socket.bytesRead
      };
    }
    function ReadableStreamFrom(iterable) {
      let iterator;
      return new ReadableStream(
        {
          start() {
            iterator = iterable[Symbol.asyncIterator]();
          },
          pull(controller) {
            return iterator.next().then(({ done, value }) => {
              if (done) {
                return queueMicrotask(() => {
                  controller.close();
                  controller.byobRequest?.respond(0);
                });
              } else {
                const buf = Buffer.isBuffer(value) ? value : Buffer.from(value);
                if (buf.byteLength) {
                  return controller.enqueue(new Uint8Array(buf));
                } else {
                  return this.pull(controller);
                }
              }
            });
          },
          cancel() {
            return iterator.return();
          },
          type: "bytes"
        }
      );
    }
    function isFormDataLike(object) {
      return object && typeof object === "object" && typeof object.append === "function" && typeof object.delete === "function" && typeof object.get === "function" && typeof object.getAll === "function" && typeof object.has === "function" && typeof object.set === "function" && object[Symbol.toStringTag] === "FormData";
    }
    function addAbortListener3(signal, listener) {
      if ("addEventListener" in signal) {
        signal.addEventListener("abort", listener, { once: true });
        return () => signal.removeEventListener("abort", listener);
      }
      signal.once("abort", listener);
      return () => signal.removeListener("abort", listener);
    }
    var validTokenChars = new Uint8Array([
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      // 0-15
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      // 16-31
      0,
      1,
      0,
      1,
      1,
      1,
      1,
      1,
      0,
      0,
      1,
      1,
      0,
      1,
      1,
      0,
      // 32-47 (!"#$%&'()*+,-./)
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      0,
      0,
      0,
      0,
      0,
      0,
      // 48-63 (0-9:;<=>?)
      0,
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      // 64-79 (@A-O)
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      0,
      0,
      0,
      1,
      1,
      // 80-95 (P-Z[\]^_)
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      // 96-111 (`a-o)
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      1,
      0,
      1,
      0,
      1,
      0,
      // 112-127 (p-z{|}~)
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      // 128-143
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      // 144-159
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      // 160-175
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      // 176-191
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      // 192-207
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      // 208-223
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      // 224-239
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0,
      0
      // 240-255
    ]);
    function isTokenCharCode(c3) {
      return validTokenChars[c3] === 1;
    }
    var tokenRegExp = /^[\^_`a-zA-Z\-0-9!#$%&'*+.|~]+$/;
    function isValidHTTPToken(characters) {
      if (characters.length >= 12) return tokenRegExp.test(characters);
      if (characters.length === 0) return false;
      for (let i2 = 0; i2 < characters.length; i2++) {
        if (validTokenChars[characters.charCodeAt(i2)] !== 1) {
          return false;
        }
      }
      return true;
    }
    var headerCharRegex = /[^\t\x20-\x7e\x80-\xff]/;
    function isValidHeaderValue(characters) {
      return !headerCharRegex.test(characters);
    }
    var rangeHeaderRegex = /^bytes (\d+)-(\d+)\/(\d+)?$/;
    function parseRangeHeader(range) {
      if (range == null || range === "") return { start: 0, end: null, size: null };
      const m = range ? range.match(rangeHeaderRegex) : null;
      return m ? {
        start: parseInt(m[1]),
        end: m[2] ? parseInt(m[2]) : null,
        size: m[3] ? parseInt(m[3]) : null
      } : null;
    }
    function addListener(obj, name, listener) {
      const listeners = obj[kListeners] ??= [];
      listeners.push([name, listener]);
      obj.on(name, listener);
      return obj;
    }
    function removeAllListeners(obj) {
      if (obj[kListeners] != null) {
        for (const [name, listener] of obj[kListeners]) {
          obj.removeListener(name, listener);
        }
        obj[kListeners] = null;
      }
      return obj;
    }
    function errorRequest(client, request, err) {
      try {
        request.onError(err);
        assert13(request.aborted);
      } catch (err2) {
        client.emit("error", err2);
      }
    }
    var setupConnectTimeout = process.platform === "win32" ? (socketWeakRef, opts2) => {
      if (!opts2.timeout) {
        return noop5;
      }
      let s1 = null;
      let s2 = null;
      const fastTimer = timers.setFastTimeout(() => {
        s1 = setImmediate(() => {
          s2 = setImmediate(() => onConnectTimeout(socketWeakRef.deref(), opts2));
        });
      }, opts2.timeout);
      return () => {
        timers.clearFastTimeout(fastTimer);
        clearImmediate(s1);
        clearImmediate(s2);
      };
    } : (socketWeakRef, opts2) => {
      if (!opts2.timeout) {
        return noop5;
      }
      let s1 = null;
      const fastTimer = timers.setFastTimeout(() => {
        s1 = setImmediate(() => {
          onConnectTimeout(socketWeakRef.deref(), opts2);
        });
      }, opts2.timeout);
      return () => {
        timers.clearFastTimeout(fastTimer);
        clearImmediate(s1);
      };
    };
    function onConnectTimeout(socket, opts2) {
      if (socket == null) {
        return;
      }
      let message = "Connect Timeout Error";
      if (Array.isArray(socket.autoSelectFamilyAttemptedAddresses)) {
        message += ` (attempted addresses: ${socket.autoSelectFamilyAttemptedAddresses.join(", ")},`;
      } else {
        message += ` (attempted address: ${opts2.hostname}:${opts2.port},`;
      }
      message += ` timeout: ${opts2.timeout}ms)`;
      destroy(socket, new ConnectTimeoutError(message));
    }
    function getProtocolFromUrlString(urlString) {
      if (urlString[0] === "h" && urlString[1] === "t" && urlString[2] === "t" && urlString[3] === "p") {
        switch (urlString[4]) {
          case ":":
            return "http:";
          case "s":
            if (urlString[5] === ":") {
              return "https:";
            }
        }
      }
      return urlString.slice(0, urlString.indexOf(":") + 1);
    }
    var kEnumerableProperty = /* @__PURE__ */ Object.create(null);
    kEnumerableProperty.enumerable = true;
    var normalizedMethodRecordsBase = {
      delete: "DELETE",
      DELETE: "DELETE",
      get: "GET",
      GET: "GET",
      head: "HEAD",
      HEAD: "HEAD",
      options: "OPTIONS",
      OPTIONS: "OPTIONS",
      post: "POST",
      POST: "POST",
      put: "PUT",
      PUT: "PUT"
    };
    var normalizedMethodRecords = {
      ...normalizedMethodRecordsBase,
      patch: "patch",
      PATCH: "PATCH"
    };
    Object.setPrototypeOf(normalizedMethodRecordsBase, null);
    Object.setPrototypeOf(normalizedMethodRecords, null);
    module2.exports = {
      kEnumerableProperty,
      isDisturbed,
      isBlobLike,
      parseOrigin,
      parseURL,
      getServerName,
      isStream: isStream3,
      isIterable,
      hasSafeIterator,
      isAsyncIterable,
      isDestroyed,
      headerNameToString,
      bufferToLowerCasedHeaderName,
      addListener,
      removeAllListeners,
      errorRequest,
      parseRawHeaders,
      encodeRawHeaders,
      parseHeaders,
      parseKeepAliveTimeout,
      destroy,
      bodyLength,
      deepClone,
      ReadableStreamFrom,
      isBuffer,
      assertRequestHandler,
      getSocketInfo,
      isFormDataLike,
      pathHasQueryOrFragment,
      serializePathWithQuery,
      addAbortListener: addAbortListener3,
      isValidHTTPToken,
      isValidHeaderValue,
      isTokenCharCode,
      parseRangeHeader,
      normalizedMethodRecordsBase,
      normalizedMethodRecords,
      isValidPort,
      isHttpOrHttpsPrefixed,
      nodeMajor,
      nodeMinor,
      safeHTTPMethods: Object.freeze(["GET", "HEAD", "OPTIONS", "TRACE"]),
      wrapRequestBody,
      setupConnectTimeout,
      getProtocolFromUrlString
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/util/stats.js
var require_stats = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/util/stats.js"(exports2, module2) {
    "use strict";
    var {
      kConnected,
      kPending,
      kRunning,
      kSize,
      kFree,
      kQueued
    } = require_symbols();
    var ClientStats = class {
      constructor(client) {
        this.connected = client[kConnected];
        this.pending = client[kPending];
        this.running = client[kRunning];
        this.size = client[kSize];
      }
    };
    var PoolStats = class {
      constructor(pool) {
        this.connected = pool[kConnected];
        this.free = pool[kFree];
        this.pending = pool[kPending];
        this.queued = pool[kQueued];
        this.running = pool[kRunning];
        this.size = pool[kSize];
      }
    };
    module2.exports = { ClientStats, PoolStats };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/core/diagnostics.js
var require_diagnostics = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/core/diagnostics.js"(exports2, module2) {
    "use strict";
    var diagnosticsChannel = __require("node:diagnostics_channel");
    var util56 = __require("node:util");
    var undiciDebugLog = util56.debuglog("undici");
    var fetchDebuglog = util56.debuglog("fetch");
    var websocketDebuglog = util56.debuglog("websocket");
    var channels = {
      // Client
      beforeConnect: diagnosticsChannel.channel("undici:client:beforeConnect"),
      connected: diagnosticsChannel.channel("undici:client:connected"),
      connectError: diagnosticsChannel.channel("undici:client:connectError"),
      sendHeaders: diagnosticsChannel.channel("undici:client:sendHeaders"),
      // Request
      create: diagnosticsChannel.channel("undici:request:create"),
      bodySent: diagnosticsChannel.channel("undici:request:bodySent"),
      bodyChunkSent: diagnosticsChannel.channel("undici:request:bodyChunkSent"),
      bodyChunkReceived: diagnosticsChannel.channel("undici:request:bodyChunkReceived"),
      headers: diagnosticsChannel.channel("undici:request:headers"),
      trailers: diagnosticsChannel.channel("undici:request:trailers"),
      error: diagnosticsChannel.channel("undici:request:error"),
      // WebSocket
      open: diagnosticsChannel.channel("undici:websocket:open"),
      close: diagnosticsChannel.channel("undici:websocket:close"),
      socketError: diagnosticsChannel.channel("undici:websocket:socket_error"),
      ping: diagnosticsChannel.channel("undici:websocket:ping"),
      pong: diagnosticsChannel.channel("undici:websocket:pong"),
      // ProxyAgent
      proxyConnected: diagnosticsChannel.channel("undici:proxy:connected")
    };
    var isTrackingClientEvents = false;
    function trackClientEvents(debugLog = undiciDebugLog) {
      if (isTrackingClientEvents) {
        return;
      }
      if (channels.beforeConnect.hasSubscribers || channels.connected.hasSubscribers || channels.connectError.hasSubscribers || channels.sendHeaders.hasSubscribers) {
        isTrackingClientEvents = true;
        return;
      }
      isTrackingClientEvents = true;
      diagnosticsChannel.subscribe(
        "undici:client:beforeConnect",
        (evt) => {
          const {
            connectParams: { version: version2, protocol, port, host }
          } = evt;
          debugLog(
            "connecting to %s%s using %s%s",
            host,
            port ? `:${port}` : "",
            protocol,
            version2
          );
        }
      );
      diagnosticsChannel.subscribe(
        "undici:client:connected",
        (evt) => {
          const {
            connectParams: { version: version2, protocol, port, host }
          } = evt;
          debugLog(
            "connected to %s%s using %s%s",
            host,
            port ? `:${port}` : "",
            protocol,
            version2
          );
        }
      );
      diagnosticsChannel.subscribe(
        "undici:client:connectError",
        (evt) => {
          const {
            connectParams: { version: version2, protocol, port, host },
            error
          } = evt;
          debugLog(
            "connection to %s%s using %s%s errored - %s",
            host,
            port ? `:${port}` : "",
            protocol,
            version2,
            error.message
          );
        }
      );
      diagnosticsChannel.subscribe(
        "undici:client:sendHeaders",
        (evt) => {
          const {
            request: { method, path: path218, origin }
          } = evt;
          debugLog("sending request to %s %s%s", method, origin, path218);
        }
      );
    }
    var isTrackingRequestEvents = false;
    function trackRequestEvents(debugLog = undiciDebugLog) {
      if (isTrackingRequestEvents) {
        return;
      }
      if (channels.headers.hasSubscribers || channels.trailers.hasSubscribers || channels.error.hasSubscribers) {
        isTrackingRequestEvents = true;
        return;
      }
      isTrackingRequestEvents = true;
      diagnosticsChannel.subscribe(
        "undici:request:headers",
        (evt) => {
          const {
            request: { method, path: path218, origin },
            response: { statusCode }
          } = evt;
          debugLog(
            "received response to %s %s%s - HTTP %d",
            method,
            origin,
            path218,
            statusCode
          );
        }
      );
      diagnosticsChannel.subscribe(
        "undici:request:trailers",
        (evt) => {
          const {
            request: { method, path: path218, origin }
          } = evt;
          debugLog("trailers received from %s %s%s", method, origin, path218);
        }
      );
      diagnosticsChannel.subscribe(
        "undici:request:error",
        (evt) => {
          const {
            request: { method, path: path218, origin },
            error
          } = evt;
          debugLog(
            "request to %s %s%s errored - %s",
            method,
            origin,
            path218,
            error.message
          );
        }
      );
    }
    var isTrackingWebSocketEvents = false;
    function trackWebSocketEvents(debugLog = websocketDebuglog) {
      if (isTrackingWebSocketEvents) {
        return;
      }
      if (channels.open.hasSubscribers || channels.close.hasSubscribers || channels.socketError.hasSubscribers || channels.ping.hasSubscribers || channels.pong.hasSubscribers) {
        isTrackingWebSocketEvents = true;
        return;
      }
      isTrackingWebSocketEvents = true;
      diagnosticsChannel.subscribe(
        "undici:websocket:open",
        (evt) => {
          if (evt.address != null) {
            const { address, port } = evt.address;
            debugLog("connection opened %s%s", address, port ? `:${port}` : "");
          } else {
            debugLog("connection opened");
          }
        }
      );
      diagnosticsChannel.subscribe(
        "undici:websocket:close",
        (evt) => {
          const { websocket, code, reason } = evt;
          debugLog(
            "closed connection to %s - %s %s",
            websocket.url,
            code,
            reason
          );
        }
      );
      diagnosticsChannel.subscribe(
        "undici:websocket:socket_error",
        (err) => {
          debugLog("connection errored - %s", err.message);
        }
      );
      diagnosticsChannel.subscribe(
        "undici:websocket:ping",
        (evt) => {
          debugLog("ping received");
        }
      );
      diagnosticsChannel.subscribe(
        "undici:websocket:pong",
        (evt) => {
          debugLog("pong received");
        }
      );
    }
    if (undiciDebugLog.enabled || fetchDebuglog.enabled) {
      trackClientEvents(fetchDebuglog.enabled ? fetchDebuglog : undiciDebugLog);
      trackRequestEvents(fetchDebuglog.enabled ? fetchDebuglog : undiciDebugLog);
    }
    if (websocketDebuglog.enabled) {
      trackClientEvents(undiciDebugLog.enabled ? undiciDebugLog : websocketDebuglog);
      trackWebSocketEvents(websocketDebuglog);
    }
    module2.exports = {
      channels
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/core/request.js
var require_request = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/core/request.js"(exports2, module2) {
    "use strict";
    var {
      InvalidArgumentError,
      NotSupportedError
    } = require_errors5();
    var assert13 = __require("node:assert");
    var {
      isValidHTTPToken,
      isValidHeaderValue,
      isStream: isStream3,
      destroy,
      isBuffer,
      isFormDataLike,
      isIterable,
      hasSafeIterator,
      isBlobLike,
      serializePathWithQuery,
      assertRequestHandler,
      getServerName,
      normalizedMethodRecords,
      getProtocolFromUrlString
    } = require_util6();
    var { channels } = require_diagnostics();
    var { headerNameLowerCasedRecord } = require_constants12();
    var invalidPathRegex = /[^\u0021-\u00ff]/;
    var kHandler = /* @__PURE__ */ Symbol("handler");
    var Request = class {
      constructor(origin, {
        path: path218,
        method,
        body,
        headers,
        query,
        idempotent,
        blocking,
        upgrade,
        headersTimeout,
        bodyTimeout,
        reset: reset2,
        expectContinue,
        servername,
        throwOnError,
        maxRedirections,
        typeOfService
      }, handler77) {
        if (typeof path218 !== "string") {
          throw new InvalidArgumentError("path must be a string");
        } else if (path218[0] !== "/" && !(path218.startsWith("http://") || path218.startsWith("https://")) && method !== "CONNECT") {
          throw new InvalidArgumentError("path must be an absolute URL or start with a slash");
        } else if (invalidPathRegex.test(path218)) {
          throw new InvalidArgumentError("invalid request path");
        }
        if (typeof method !== "string") {
          throw new InvalidArgumentError("method must be a string");
        } else if (normalizedMethodRecords[method] === void 0 && !isValidHTTPToken(method)) {
          throw new InvalidArgumentError("invalid request method");
        }
        if (upgrade && typeof upgrade !== "string") {
          throw new InvalidArgumentError("upgrade must be a string");
        }
        if (upgrade && !isValidHeaderValue(upgrade)) {
          throw new InvalidArgumentError("invalid upgrade header");
        }
        if (headersTimeout != null && (!Number.isFinite(headersTimeout) || headersTimeout < 0)) {
          throw new InvalidArgumentError("invalid headersTimeout");
        }
        if (bodyTimeout != null && (!Number.isFinite(bodyTimeout) || bodyTimeout < 0)) {
          throw new InvalidArgumentError("invalid bodyTimeout");
        }
        if (reset2 != null && typeof reset2 !== "boolean") {
          throw new InvalidArgumentError("invalid reset");
        }
        if (expectContinue != null && typeof expectContinue !== "boolean") {
          throw new InvalidArgumentError("invalid expectContinue");
        }
        if (throwOnError != null) {
          throw new InvalidArgumentError("invalid throwOnError");
        }
        if (maxRedirections != null && maxRedirections !== 0) {
          throw new InvalidArgumentError("maxRedirections is not supported, use the redirect interceptor");
        }
        if (typeOfService != null && (!Number.isInteger(typeOfService) || typeOfService < 0 || typeOfService > 255)) {
          throw new InvalidArgumentError("typeOfService must be an integer between 0 and 255");
        }
        this.headersTimeout = headersTimeout;
        this.bodyTimeout = bodyTimeout;
        this.method = method;
        this.typeOfService = typeOfService ?? 0;
        this.abort = null;
        if (body == null) {
          this.body = null;
        } else if (isStream3(body)) {
          this.body = body;
          const rState = this.body._readableState;
          if (!rState || !rState.autoDestroy) {
            this.endHandler = function autoDestroy() {
              destroy(this);
            };
            this.body.on("end", this.endHandler);
          }
          this.errorHandler = (err) => {
            if (this.abort) {
              this.abort(err);
            } else {
              this.error = err;
            }
          };
          this.body.on("error", this.errorHandler);
        } else if (isBuffer(body)) {
          this.body = body.byteLength ? body : null;
        } else if (ArrayBuffer.isView(body)) {
          this.body = body.buffer.byteLength ? Buffer.from(body.buffer, body.byteOffset, body.byteLength) : null;
        } else if (body instanceof ArrayBuffer) {
          this.body = body.byteLength ? Buffer.from(body) : null;
        } else if (typeof body === "string") {
          this.body = body.length ? Buffer.from(body) : null;
        } else if (isFormDataLike(body) || isIterable(body) || isBlobLike(body)) {
          this.body = body;
        } else {
          throw new InvalidArgumentError("body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable");
        }
        this.completed = false;
        this.aborted = false;
        this.upgrade = upgrade || null;
        this.path = query ? serializePathWithQuery(path218, query) : path218;
        this.origin = origin;
        this.protocol = getProtocolFromUrlString(origin);
        this.idempotent = idempotent == null ? method === "HEAD" || method === "GET" : idempotent;
        this.blocking = blocking ?? this.method !== "HEAD";
        this.reset = reset2 == null ? null : reset2;
        this.host = null;
        this.contentLength = null;
        this.contentType = null;
        this.headers = [];
        this.expectContinue = expectContinue != null ? expectContinue : false;
        if (Array.isArray(headers)) {
          if (headers.length % 2 !== 0) {
            throw new InvalidArgumentError("headers array must be even");
          }
          for (let i2 = 0; i2 < headers.length; i2 += 2) {
            processHeader(this, headers[i2], headers[i2 + 1]);
          }
        } else if (headers && typeof headers === "object") {
          if (hasSafeIterator(headers)) {
            for (const header of headers) {
              if (!Array.isArray(header) || header.length !== 2) {
                throw new InvalidArgumentError("headers must be in key-value pair format");
              }
              processHeader(this, header[0], header[1]);
            }
          } else {
            const keys4 = Object.keys(headers);
            for (let i2 = 0; i2 < keys4.length; ++i2) {
              processHeader(this, keys4[i2], headers[keys4[i2]]);
            }
          }
        } else if (headers != null) {
          throw new InvalidArgumentError("headers must be an object or an array");
        }
        assertRequestHandler(handler77, method, upgrade);
        this.servername = servername || getServerName(this.host) || null;
        this[kHandler] = handler77;
        if (channels.create.hasSubscribers) {
          channels.create.publish({ request: this });
        }
      }
      onBodySent(chunk) {
        if (channels.bodyChunkSent.hasSubscribers) {
          channels.bodyChunkSent.publish({ request: this, chunk });
        }
        if (this[kHandler].onBodySent) {
          try {
            return this[kHandler].onBodySent(chunk);
          } catch (err) {
            this.abort(err);
          }
        }
      }
      onRequestSent() {
        if (channels.bodySent.hasSubscribers) {
          channels.bodySent.publish({ request: this });
        }
        if (this[kHandler].onRequestSent) {
          try {
            return this[kHandler].onRequestSent();
          } catch (err) {
            this.abort(err);
          }
        }
      }
      onConnect(abort) {
        assert13(!this.aborted);
        assert13(!this.completed);
        if (this.error) {
          abort(this.error);
        } else {
          this.abort = abort;
          return this[kHandler].onConnect(abort);
        }
      }
      onResponseStarted() {
        return this[kHandler].onResponseStarted?.();
      }
      onHeaders(statusCode, headers, resume, statusText) {
        assert13(!this.aborted);
        assert13(!this.completed);
        if (channels.headers.hasSubscribers) {
          channels.headers.publish({ request: this, response: { statusCode, headers, statusText } });
        }
        try {
          return this[kHandler].onHeaders(statusCode, headers, resume, statusText);
        } catch (err) {
          this.abort(err);
        }
      }
      onData(chunk) {
        assert13(!this.aborted);
        assert13(!this.completed);
        if (channels.bodyChunkReceived.hasSubscribers) {
          channels.bodyChunkReceived.publish({ request: this, chunk });
        }
        try {
          return this[kHandler].onData(chunk);
        } catch (err) {
          this.abort(err);
          return false;
        }
      }
      onUpgrade(statusCode, headers, socket) {
        assert13(!this.aborted);
        assert13(!this.completed);
        return this[kHandler].onUpgrade(statusCode, headers, socket);
      }
      onComplete(trailers) {
        this.onFinally();
        assert13(!this.aborted);
        assert13(!this.completed);
        this.completed = true;
        if (channels.trailers.hasSubscribers) {
          channels.trailers.publish({ request: this, trailers });
        }
        try {
          return this[kHandler].onComplete(trailers);
        } catch (err) {
          this.onError(err);
        }
      }
      onError(error) {
        this.onFinally();
        if (channels.error.hasSubscribers) {
          channels.error.publish({ request: this, error });
        }
        if (this.aborted) {
          return;
        }
        this.aborted = true;
        return this[kHandler].onError(error);
      }
      onFinally() {
        if (this.errorHandler) {
          this.body.off("error", this.errorHandler);
          this.errorHandler = null;
        }
        if (this.endHandler) {
          this.body.off("end", this.endHandler);
          this.endHandler = null;
        }
      }
      addHeader(key, value) {
        processHeader(this, key, value);
        return this;
      }
    };
    function processHeader(request, key, val) {
      if (val && (typeof val === "object" && !Array.isArray(val))) {
        throw new InvalidArgumentError(`invalid ${key} header`);
      } else if (val === void 0) {
        return;
      }
      let headerName = headerNameLowerCasedRecord[key];
      if (headerName === void 0) {
        headerName = key.toLowerCase();
        if (headerNameLowerCasedRecord[headerName] === void 0 && !isValidHTTPToken(headerName)) {
          throw new InvalidArgumentError("invalid header key");
        }
      }
      if (Array.isArray(val)) {
        const arr = [];
        for (let i2 = 0; i2 < val.length; i2++) {
          if (typeof val[i2] === "string") {
            if (!isValidHeaderValue(val[i2])) {
              throw new InvalidArgumentError(`invalid ${key} header`);
            }
            arr.push(val[i2]);
          } else if (val[i2] === null) {
            arr.push("");
          } else if (typeof val[i2] === "object") {
            throw new InvalidArgumentError(`invalid ${key} header`);
          } else {
            arr.push(`${val[i2]}`);
          }
        }
        val = arr;
      } else if (typeof val === "string") {
        if (!isValidHeaderValue(val)) {
          throw new InvalidArgumentError(`invalid ${key} header`);
        }
      } else if (val === null) {
        val = "";
      } else {
        val = `${val}`;
      }
      if (headerName === "host") {
        if (request.host !== null) {
          throw new InvalidArgumentError("duplicate host header");
        }
        if (typeof val !== "string") {
          throw new InvalidArgumentError("invalid host header");
        }
        request.host = val;
      } else if (headerName === "content-length") {
        if (request.contentLength !== null) {
          throw new InvalidArgumentError("duplicate content-length header");
        }
        request.contentLength = parseInt(val, 10);
        if (!Number.isFinite(request.contentLength)) {
          throw new InvalidArgumentError("invalid content-length header");
        }
      } else if (request.contentType === null && headerName === "content-type") {
        request.contentType = val;
        request.headers.push(key, val);
      } else if (headerName === "transfer-encoding" || headerName === "keep-alive" || headerName === "upgrade") {
        throw new InvalidArgumentError(`invalid ${headerName} header`);
      } else if (headerName === "connection") {
        const value = typeof val === "string" ? val : null;
        if (value === null) {
          throw new InvalidArgumentError("invalid connection header");
        }
        for (const token of value.toLowerCase().split(",")) {
          const trimmed = token.trim();
          if (!isValidHTTPToken(trimmed)) {
            throw new InvalidArgumentError("invalid connection header");
          }
          if (trimmed === "close") {
            request.reset = true;
          }
        }
      } else if (headerName === "expect") {
        throw new NotSupportedError("expect header not supported");
      } else {
        request.headers.push(key, val);
      }
    }
    module2.exports = Request;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/handler/wrap-handler.js
var require_wrap_handler = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/handler/wrap-handler.js"(exports2, module2) {
    "use strict";
    var { InvalidArgumentError } = require_errors5();
    module2.exports = class WrapHandler {
      #handler;
      constructor(handler77) {
        this.#handler = handler77;
      }
      static wrap(handler77) {
        return handler77.onRequestStart ? handler77 : new WrapHandler(handler77);
      }
      // Unwrap Interface
      onConnect(abort, context) {
        return this.#handler.onConnect?.(abort, context);
      }
      onResponseStarted() {
        return this.#handler.onResponseStarted?.();
      }
      onHeaders(statusCode, rawHeaders, resume, statusMessage) {
        return this.#handler.onHeaders?.(statusCode, rawHeaders, resume, statusMessage);
      }
      onUpgrade(statusCode, rawHeaders, socket) {
        return this.#handler.onUpgrade?.(statusCode, rawHeaders, socket);
      }
      onData(data) {
        return this.#handler.onData?.(data);
      }
      onComplete(trailers) {
        return this.#handler.onComplete?.(trailers);
      }
      onError(err) {
        if (!this.#handler.onError) {
          throw err;
        }
        return this.#handler.onError?.(err);
      }
      // Wrap Interface
      onRequestStart(controller, context) {
        this.#handler.onConnect?.((reason) => controller.abort(reason), context);
      }
      onRequestUpgrade(controller, statusCode, headers, socket) {
        const rawHeaders = [];
        for (const [key, val] of Object.entries(headers)) {
          rawHeaders.push(Buffer.from(key, "latin1"), toRawHeaderValue(val));
        }
        this.#handler.onUpgrade?.(statusCode, rawHeaders, socket);
      }
      onResponseStart(controller, statusCode, headers, statusMessage) {
        const rawHeaders = [];
        for (const [key, val] of Object.entries(headers)) {
          rawHeaders.push(Buffer.from(key, "latin1"), toRawHeaderValue(val));
        }
        if (this.#handler.onHeaders?.(statusCode, rawHeaders, () => controller.resume(), statusMessage) === false) {
          controller.pause();
        }
      }
      onResponseData(controller, data) {
        if (this.#handler.onData?.(data) === false) {
          controller.pause();
        }
      }
      onResponseEnd(controller, trailers) {
        const rawTrailers = [];
        for (const [key, val] of Object.entries(trailers)) {
          rawTrailers.push(Buffer.from(key, "latin1"), toRawHeaderValue(val));
        }
        this.#handler.onComplete?.(rawTrailers);
      }
      onResponseError(controller, err) {
        if (!this.#handler.onError) {
          throw new InvalidArgumentError("invalid onError method");
        }
        this.#handler.onError?.(err);
      }
    };
    function toRawHeaderValue(value) {
      return Array.isArray(value) ? value.map((item) => Buffer.from(item, "latin1")) : Buffer.from(value, "latin1");
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/dispatcher/dispatcher.js
var require_dispatcher = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/dispatcher/dispatcher.js"(exports2, module2) {
    "use strict";
    var EventEmitter4 = __require("node:events");
    var WrapHandler = require_wrap_handler();
    var wrapInterceptor = (dispatch) => (opts2, handler77) => dispatch(opts2, WrapHandler.wrap(handler77));
    var Dispatcher = class extends EventEmitter4 {
      dispatch() {
        throw new Error("not implemented");
      }
      close() {
        throw new Error("not implemented");
      }
      destroy() {
        throw new Error("not implemented");
      }
      compose(...args) {
        const interceptors = Array.isArray(args[0]) ? args[0] : args;
        let dispatch = this.dispatch.bind(this);
        for (const interceptor of interceptors) {
          if (interceptor == null) {
            continue;
          }
          if (typeof interceptor !== "function") {
            throw new TypeError(`invalid interceptor, expected function received ${typeof interceptor}`);
          }
          dispatch = interceptor(dispatch);
          dispatch = wrapInterceptor(dispatch);
          if (dispatch == null || typeof dispatch !== "function" || dispatch.length !== 2) {
            throw new TypeError("invalid interceptor");
          }
        }
        return new Proxy(this, {
          get: (target2, key) => key === "dispatch" ? dispatch : target2[key]
        });
      }
    };
    module2.exports = Dispatcher;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/handler/unwrap-handler.js
var require_unwrap_handler = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/handler/unwrap-handler.js"(exports2, module2) {
    "use strict";
    var { parseHeaders } = require_util6();
    var { InvalidArgumentError } = require_errors5();
    var kResume = /* @__PURE__ */ Symbol("resume");
    var UnwrapController = class {
      #paused = false;
      #reason = null;
      #aborted = false;
      #abort;
      [kResume] = null;
      constructor(abort) {
        this.#abort = abort;
      }
      pause() {
        this.#paused = true;
      }
      resume() {
        if (this.#paused) {
          this.#paused = false;
          this[kResume]?.();
        }
      }
      abort(reason) {
        if (!this.#aborted) {
          this.#aborted = true;
          this.#reason = reason;
          this.#abort(reason);
        }
      }
      get aborted() {
        return this.#aborted;
      }
      get reason() {
        return this.#reason;
      }
      get paused() {
        return this.#paused;
      }
    };
    module2.exports = class UnwrapHandler {
      #handler;
      #controller;
      constructor(handler77) {
        this.#handler = handler77;
      }
      static unwrap(handler77) {
        return !handler77.onRequestStart ? handler77 : new UnwrapHandler(handler77);
      }
      onConnect(abort, context) {
        this.#controller = new UnwrapController(abort);
        this.#handler.onRequestStart?.(this.#controller, context);
      }
      onResponseStarted() {
        return this.#handler.onResponseStarted?.();
      }
      onUpgrade(statusCode, rawHeaders, socket) {
        this.#handler.onRequestUpgrade?.(this.#controller, statusCode, parseHeaders(rawHeaders), socket);
      }
      onHeaders(statusCode, rawHeaders, resume, statusMessage) {
        this.#controller[kResume] = resume;
        this.#handler.onResponseStart?.(this.#controller, statusCode, parseHeaders(rawHeaders), statusMessage);
        return !this.#controller.paused;
      }
      onData(data) {
        this.#handler.onResponseData?.(this.#controller, data);
        return !this.#controller.paused;
      }
      onComplete(rawTrailers) {
        this.#handler.onResponseEnd?.(this.#controller, parseHeaders(rawTrailers));
      }
      onError(err) {
        if (!this.#handler.onResponseError) {
          throw new InvalidArgumentError("invalid onError method");
        }
        this.#handler.onResponseError?.(this.#controller, err);
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/dispatcher/dispatcher-base.js
var require_dispatcher_base = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/dispatcher/dispatcher-base.js"(exports2, module2) {
    "use strict";
    var Dispatcher = require_dispatcher();
    var UnwrapHandler = require_unwrap_handler();
    var {
      ClientDestroyedError,
      ClientClosedError,
      InvalidArgumentError
    } = require_errors5();
    var { kDestroy, kClose, kClosed, kDestroyed, kDispatch } = require_symbols();
    var kOnDestroyed = /* @__PURE__ */ Symbol("onDestroyed");
    var kOnClosed = /* @__PURE__ */ Symbol("onClosed");
    var DispatcherBase = class extends Dispatcher {
      /** @type {boolean} */
      [kDestroyed] = false;
      /** @type {Array<Function|null} */
      [kOnDestroyed] = null;
      /** @type {boolean} */
      [kClosed] = false;
      /** @type {Array<Function>|null} */
      [kOnClosed] = null;
      /** @returns {boolean} */
      get destroyed() {
        return this[kDestroyed];
      }
      /** @returns {boolean} */
      get closed() {
        return this[kClosed];
      }
      close(callback2) {
        if (callback2 === void 0) {
          return new Promise((resolve3, reject3) => {
            this.close((err, data) => {
              return err ? reject3(err) : resolve3(data);
            });
          });
        }
        if (typeof callback2 !== "function") {
          throw new InvalidArgumentError("invalid callback");
        }
        if (this[kDestroyed]) {
          const err = new ClientDestroyedError();
          queueMicrotask(() => callback2(err, null));
          return;
        }
        if (this[kClosed]) {
          if (this[kOnClosed]) {
            this[kOnClosed].push(callback2);
          } else {
            queueMicrotask(() => callback2(null, null));
          }
          return;
        }
        this[kClosed] = true;
        this[kOnClosed] ??= [];
        this[kOnClosed].push(callback2);
        const onClosed = () => {
          const callbacks = this[kOnClosed];
          this[kOnClosed] = null;
          for (let i2 = 0; i2 < callbacks.length; i2++) {
            callbacks[i2](null, null);
          }
        };
        this[kClose]().then(() => this.destroy()).then(() => queueMicrotask(onClosed));
      }
      destroy(err, callback2) {
        if (typeof err === "function") {
          callback2 = err;
          err = null;
        }
        if (callback2 === void 0) {
          return new Promise((resolve3, reject3) => {
            this.destroy(err, (err2, data) => {
              return err2 ? reject3(err2) : resolve3(data);
            });
          });
        }
        if (typeof callback2 !== "function") {
          throw new InvalidArgumentError("invalid callback");
        }
        if (this[kDestroyed]) {
          if (this[kOnDestroyed]) {
            this[kOnDestroyed].push(callback2);
          } else {
            queueMicrotask(() => callback2(null, null));
          }
          return;
        }
        if (!err) {
          err = new ClientDestroyedError();
        }
        this[kDestroyed] = true;
        this[kOnDestroyed] ??= [];
        this[kOnDestroyed].push(callback2);
        const onDestroyed = () => {
          const callbacks = this[kOnDestroyed];
          this[kOnDestroyed] = null;
          for (let i2 = 0; i2 < callbacks.length; i2++) {
            callbacks[i2](null, null);
          }
        };
        this[kDestroy](err).then(() => queueMicrotask(onDestroyed));
      }
      dispatch(opts2, handler77) {
        if (!handler77 || typeof handler77 !== "object") {
          throw new InvalidArgumentError("handler must be an object");
        }
        handler77 = UnwrapHandler.unwrap(handler77);
        try {
          if (!opts2 || typeof opts2 !== "object") {
            throw new InvalidArgumentError("opts must be an object.");
          }
          if (this[kDestroyed] || this[kOnDestroyed]) {
            throw new ClientDestroyedError();
          }
          if (this[kClosed]) {
            throw new ClientClosedError();
          }
          return this[kDispatch](opts2, handler77);
        } catch (err) {
          if (typeof handler77.onError !== "function") {
            throw err;
          }
          handler77.onError(err);
          return false;
        }
      }
    };
    module2.exports = DispatcherBase;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/core/connect.js
var require_connect = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/core/connect.js"(exports2, module2) {
    "use strict";
    var net = __require("node:net");
    var assert13 = __require("node:assert");
    var util56 = require_util6();
    var { InvalidArgumentError } = require_errors5();
    var tls2;
    var SessionCache = class WeakSessionCache {
      constructor(maxCachedSessions) {
        this._maxCachedSessions = maxCachedSessions;
        this._sessionCache = /* @__PURE__ */ new Map();
        this._sessionRegistry = new FinalizationRegistry((key) => {
          if (this._sessionCache.size < this._maxCachedSessions) {
            return;
          }
          const ref = this._sessionCache.get(key);
          if (ref !== void 0 && ref.deref() === void 0) {
            this._sessionCache.delete(key);
          }
        });
      }
      get(sessionKey) {
        const ref = this._sessionCache.get(sessionKey);
        return ref ? ref.deref() : null;
      }
      set(sessionKey, session) {
        if (this._maxCachedSessions === 0) {
          return;
        }
        this._sessionCache.set(sessionKey, new WeakRef(session));
        this._sessionRegistry.register(session, sessionKey);
      }
    };
    function buildConnector({ allowH2, useH2c, maxCachedSessions, socketPath, timeout, session: customSession, ...opts2 }) {
      if (maxCachedSessions != null && (!Number.isInteger(maxCachedSessions) || maxCachedSessions < 0)) {
        throw new InvalidArgumentError("maxCachedSessions must be a positive integer or zero");
      }
      const options = { path: socketPath, ...opts2 };
      const sessionCache = new SessionCache(maxCachedSessions == null ? 100 : maxCachedSessions);
      timeout = timeout == null ? 1e4 : timeout;
      allowH2 = allowH2 != null ? allowH2 : false;
      return function connect({ hostname, host, protocol, port, servername, localAddress, httpSocket }, callback2) {
        let socket;
        if (protocol === "https:") {
          if (!tls2) {
            tls2 = __require("node:tls");
          }
          servername = servername || options.servername || util56.getServerName(host) || null;
          const sessionKey = servername || hostname;
          assert13(sessionKey);
          const session = customSession || sessionCache.get(sessionKey) || null;
          port = port || 443;
          socket = tls2.connect({
            highWaterMark: 16384,
            // TLS in node can't have bigger HWM anyway...
            ...options,
            servername,
            session,
            localAddress,
            ALPNProtocols: allowH2 ? ["http/1.1", "h2"] : ["http/1.1"],
            socket: httpSocket,
            // upgrade socket connection
            port,
            host: hostname
          });
          socket.on("session", function(session2) {
            sessionCache.set(sessionKey, session2);
          });
        } else {
          assert13(!httpSocket, "httpSocket can only be sent on TLS update");
          port = port || 80;
          socket = net.connect({
            highWaterMark: 64 * 1024,
            // Same as nodejs fs streams.
            ...options,
            localAddress,
            port,
            host: hostname
          });
          if (useH2c === true) {
            socket.alpnProtocol = "h2";
          }
        }
        if (options.keepAlive == null || options.keepAlive) {
          const keepAliveInitialDelay = options.keepAliveInitialDelay === void 0 ? 6e4 : options.keepAliveInitialDelay;
          socket.setKeepAlive(true, keepAliveInitialDelay);
        }
        const clearConnectTimeout = util56.setupConnectTimeout(new WeakRef(socket), { timeout, hostname, port });
        socket.setNoDelay(true).once(protocol === "https:" ? "secureConnect" : "connect", function() {
          queueMicrotask(clearConnectTimeout);
          if (callback2) {
            const cb = callback2;
            callback2 = null;
            cb(null, this);
          }
        }).on("error", function(err) {
          queueMicrotask(clearConnectTimeout);
          if (callback2) {
            const cb = callback2;
            callback2 = null;
            cb(err);
          }
        });
        return socket;
      };
    }
    module2.exports = buildConnector;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/llhttp/utils.js
var require_utils11 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/llhttp/utils.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.enumToMap = enumToMap;
    function enumToMap(obj, filter14 = [], exceptions = []) {
      const emptyFilter = (filter14?.length ?? 0) === 0;
      const emptyExceptions = (exceptions?.length ?? 0) === 0;
      return Object.fromEntries(Object.entries(obj).filter(([, value]) => {
        return typeof value === "number" && (emptyFilter || filter14.includes(value)) && (emptyExceptions || !exceptions.includes(value));
      }));
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/llhttp/constants.js
var require_constants13 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/llhttp/constants.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.SPECIAL_HEADERS = exports2.MINOR = exports2.MAJOR = exports2.HTAB_SP_VCHAR_OBS_TEXT = exports2.QUOTED_STRING = exports2.CONNECTION_TOKEN_CHARS = exports2.HEADER_CHARS = exports2.TOKEN = exports2.HEX = exports2.URL_CHAR = exports2.USERINFO_CHARS = exports2.MARK = exports2.ALPHANUM = exports2.NUM = exports2.HEX_MAP = exports2.NUM_MAP = exports2.ALPHA = exports2.STATUSES_HTTP = exports2.H_METHOD_MAP = exports2.METHOD_MAP = exports2.METHODS_RTSP = exports2.METHODS_ICE = exports2.METHODS_HTTP = exports2.HEADER_STATE = exports2.FINISH = exports2.STATUSES = exports2.METHODS = exports2.LENIENT_FLAGS = exports2.FLAGS = exports2.TYPE = exports2.ERROR = void 0;
    var utils_1 = require_utils11();
    exports2.ERROR = {
      OK: 0,
      INTERNAL: 1,
      STRICT: 2,
      CR_EXPECTED: 25,
      LF_EXPECTED: 3,
      UNEXPECTED_CONTENT_LENGTH: 4,
      UNEXPECTED_SPACE: 30,
      CLOSED_CONNECTION: 5,
      INVALID_METHOD: 6,
      INVALID_URL: 7,
      INVALID_CONSTANT: 8,
      INVALID_VERSION: 9,
      INVALID_HEADER_TOKEN: 10,
      INVALID_CONTENT_LENGTH: 11,
      INVALID_CHUNK_SIZE: 12,
      INVALID_STATUS: 13,
      INVALID_EOF_STATE: 14,
      INVALID_TRANSFER_ENCODING: 15,
      CB_MESSAGE_BEGIN: 16,
      CB_HEADERS_COMPLETE: 17,
      CB_MESSAGE_COMPLETE: 18,
      CB_CHUNK_HEADER: 19,
      CB_CHUNK_COMPLETE: 20,
      PAUSED: 21,
      PAUSED_UPGRADE: 22,
      PAUSED_H2_UPGRADE: 23,
      USER: 24,
      CB_URL_COMPLETE: 26,
      CB_STATUS_COMPLETE: 27,
      CB_METHOD_COMPLETE: 32,
      CB_VERSION_COMPLETE: 33,
      CB_HEADER_FIELD_COMPLETE: 28,
      CB_HEADER_VALUE_COMPLETE: 29,
      CB_CHUNK_EXTENSION_NAME_COMPLETE: 34,
      CB_CHUNK_EXTENSION_VALUE_COMPLETE: 35,
      CB_RESET: 31,
      CB_PROTOCOL_COMPLETE: 38
    };
    exports2.TYPE = {
      BOTH: 0,
      // default
      REQUEST: 1,
      RESPONSE: 2
    };
    exports2.FLAGS = {
      CONNECTION_KEEP_ALIVE: 1 << 0,
      CONNECTION_CLOSE: 1 << 1,
      CONNECTION_UPGRADE: 1 << 2,
      CHUNKED: 1 << 3,
      UPGRADE: 1 << 4,
      CONTENT_LENGTH: 1 << 5,
      SKIPBODY: 1 << 6,
      TRAILING: 1 << 7,
      // 1 << 8 is unused
      TRANSFER_ENCODING: 1 << 9
    };
    exports2.LENIENT_FLAGS = {
      HEADERS: 1 << 0,
      CHUNKED_LENGTH: 1 << 1,
      KEEP_ALIVE: 1 << 2,
      TRANSFER_ENCODING: 1 << 3,
      VERSION: 1 << 4,
      DATA_AFTER_CLOSE: 1 << 5,
      OPTIONAL_LF_AFTER_CR: 1 << 6,
      OPTIONAL_CRLF_AFTER_CHUNK: 1 << 7,
      OPTIONAL_CR_BEFORE_LF: 1 << 8,
      SPACES_AFTER_CHUNK_SIZE: 1 << 9
    };
    exports2.METHODS = {
      "DELETE": 0,
      "GET": 1,
      "HEAD": 2,
      "POST": 3,
      "PUT": 4,
      /* pathological */
      "CONNECT": 5,
      "OPTIONS": 6,
      "TRACE": 7,
      /* WebDAV */
      "COPY": 8,
      "LOCK": 9,
      "MKCOL": 10,
      "MOVE": 11,
      "PROPFIND": 12,
      "PROPPATCH": 13,
      "SEARCH": 14,
      "UNLOCK": 15,
      "BIND": 16,
      "REBIND": 17,
      "UNBIND": 18,
      "ACL": 19,
      /* subversion */
      "REPORT": 20,
      "MKACTIVITY": 21,
      "CHECKOUT": 22,
      "MERGE": 23,
      /* upnp */
      "M-SEARCH": 24,
      "NOTIFY": 25,
      "SUBSCRIBE": 26,
      "UNSUBSCRIBE": 27,
      /* RFC-5789 */
      "PATCH": 28,
      "PURGE": 29,
      /* CalDAV */
      "MKCALENDAR": 30,
      /* RFC-2068, section 19.6.1.2 */
      "LINK": 31,
      "UNLINK": 32,
      /* icecast */
      "SOURCE": 33,
      /* RFC-7540, section 11.6 */
      "PRI": 34,
      /* RFC-2326 RTSP */
      "DESCRIBE": 35,
      "ANNOUNCE": 36,
      "SETUP": 37,
      "PLAY": 38,
      "PAUSE": 39,
      "TEARDOWN": 40,
      "GET_PARAMETER": 41,
      "SET_PARAMETER": 42,
      "REDIRECT": 43,
      "RECORD": 44,
      /* RAOP */
      "FLUSH": 45,
      /* DRAFT https://www.ietf.org/archive/id/draft-ietf-httpbis-safe-method-w-body-02.html */
      "QUERY": 46
    };
    exports2.STATUSES = {
      CONTINUE: 100,
      SWITCHING_PROTOCOLS: 101,
      PROCESSING: 102,
      EARLY_HINTS: 103,
      RESPONSE_IS_STALE: 110,
      // Unofficial
      REVALIDATION_FAILED: 111,
      // Unofficial
      DISCONNECTED_OPERATION: 112,
      // Unofficial
      HEURISTIC_EXPIRATION: 113,
      // Unofficial
      MISCELLANEOUS_WARNING: 199,
      // Unofficial
      OK: 200,
      CREATED: 201,
      ACCEPTED: 202,
      NON_AUTHORITATIVE_INFORMATION: 203,
      NO_CONTENT: 204,
      RESET_CONTENT: 205,
      PARTIAL_CONTENT: 206,
      MULTI_STATUS: 207,
      ALREADY_REPORTED: 208,
      TRANSFORMATION_APPLIED: 214,
      // Unofficial
      IM_USED: 226,
      MISCELLANEOUS_PERSISTENT_WARNING: 299,
      // Unofficial
      MULTIPLE_CHOICES: 300,
      MOVED_PERMANENTLY: 301,
      FOUND: 302,
      SEE_OTHER: 303,
      NOT_MODIFIED: 304,
      USE_PROXY: 305,
      SWITCH_PROXY: 306,
      // No longer used
      TEMPORARY_REDIRECT: 307,
      PERMANENT_REDIRECT: 308,
      BAD_REQUEST: 400,
      UNAUTHORIZED: 401,
      PAYMENT_REQUIRED: 402,
      FORBIDDEN: 403,
      NOT_FOUND: 404,
      METHOD_NOT_ALLOWED: 405,
      NOT_ACCEPTABLE: 406,
      PROXY_AUTHENTICATION_REQUIRED: 407,
      REQUEST_TIMEOUT: 408,
      CONFLICT: 409,
      GONE: 410,
      LENGTH_REQUIRED: 411,
      PRECONDITION_FAILED: 412,
      PAYLOAD_TOO_LARGE: 413,
      URI_TOO_LONG: 414,
      UNSUPPORTED_MEDIA_TYPE: 415,
      RANGE_NOT_SATISFIABLE: 416,
      EXPECTATION_FAILED: 417,
      IM_A_TEAPOT: 418,
      PAGE_EXPIRED: 419,
      // Unofficial
      ENHANCE_YOUR_CALM: 420,
      // Unofficial
      MISDIRECTED_REQUEST: 421,
      UNPROCESSABLE_ENTITY: 422,
      LOCKED: 423,
      FAILED_DEPENDENCY: 424,
      TOO_EARLY: 425,
      UPGRADE_REQUIRED: 426,
      PRECONDITION_REQUIRED: 428,
      TOO_MANY_REQUESTS: 429,
      REQUEST_HEADER_FIELDS_TOO_LARGE_UNOFFICIAL: 430,
      // Unofficial
      REQUEST_HEADER_FIELDS_TOO_LARGE: 431,
      LOGIN_TIMEOUT: 440,
      // Unofficial
      NO_RESPONSE: 444,
      // Unofficial
      RETRY_WITH: 449,
      // Unofficial
      BLOCKED_BY_PARENTAL_CONTROL: 450,
      // Unofficial
      UNAVAILABLE_FOR_LEGAL_REASONS: 451,
      CLIENT_CLOSED_LOAD_BALANCED_REQUEST: 460,
      // Unofficial
      INVALID_X_FORWARDED_FOR: 463,
      // Unofficial
      REQUEST_HEADER_TOO_LARGE: 494,
      // Unofficial
      SSL_CERTIFICATE_ERROR: 495,
      // Unofficial
      SSL_CERTIFICATE_REQUIRED: 496,
      // Unofficial
      HTTP_REQUEST_SENT_TO_HTTPS_PORT: 497,
      // Unofficial
      INVALID_TOKEN: 498,
      // Unofficial
      CLIENT_CLOSED_REQUEST: 499,
      // Unofficial
      INTERNAL_SERVER_ERROR: 500,
      NOT_IMPLEMENTED: 501,
      BAD_GATEWAY: 502,
      SERVICE_UNAVAILABLE: 503,
      GATEWAY_TIMEOUT: 504,
      HTTP_VERSION_NOT_SUPPORTED: 505,
      VARIANT_ALSO_NEGOTIATES: 506,
      INSUFFICIENT_STORAGE: 507,
      LOOP_DETECTED: 508,
      BANDWIDTH_LIMIT_EXCEEDED: 509,
      NOT_EXTENDED: 510,
      NETWORK_AUTHENTICATION_REQUIRED: 511,
      WEB_SERVER_UNKNOWN_ERROR: 520,
      // Unofficial
      WEB_SERVER_IS_DOWN: 521,
      // Unofficial
      CONNECTION_TIMEOUT: 522,
      // Unofficial
      ORIGIN_IS_UNREACHABLE: 523,
      // Unofficial
      TIMEOUT_OCCURED: 524,
      // Unofficial
      SSL_HANDSHAKE_FAILED: 525,
      // Unofficial
      INVALID_SSL_CERTIFICATE: 526,
      // Unofficial
      RAILGUN_ERROR: 527,
      // Unofficial
      SITE_IS_OVERLOADED: 529,
      // Unofficial
      SITE_IS_FROZEN: 530,
      // Unofficial
      IDENTITY_PROVIDER_AUTHENTICATION_ERROR: 561,
      // Unofficial
      NETWORK_READ_TIMEOUT: 598,
      // Unofficial
      NETWORK_CONNECT_TIMEOUT: 599
      // Unofficial
    };
    exports2.FINISH = {
      SAFE: 0,
      SAFE_WITH_CB: 1,
      UNSAFE: 2
    };
    exports2.HEADER_STATE = {
      GENERAL: 0,
      CONNECTION: 1,
      CONTENT_LENGTH: 2,
      TRANSFER_ENCODING: 3,
      UPGRADE: 4,
      CONNECTION_KEEP_ALIVE: 5,
      CONNECTION_CLOSE: 6,
      CONNECTION_UPGRADE: 7,
      TRANSFER_ENCODING_CHUNKED: 8
    };
    exports2.METHODS_HTTP = [
      exports2.METHODS.DELETE,
      exports2.METHODS.GET,
      exports2.METHODS.HEAD,
      exports2.METHODS.POST,
      exports2.METHODS.PUT,
      exports2.METHODS.CONNECT,
      exports2.METHODS.OPTIONS,
      exports2.METHODS.TRACE,
      exports2.METHODS.COPY,
      exports2.METHODS.LOCK,
      exports2.METHODS.MKCOL,
      exports2.METHODS.MOVE,
      exports2.METHODS.PROPFIND,
      exports2.METHODS.PROPPATCH,
      exports2.METHODS.SEARCH,
      exports2.METHODS.UNLOCK,
      exports2.METHODS.BIND,
      exports2.METHODS.REBIND,
      exports2.METHODS.UNBIND,
      exports2.METHODS.ACL,
      exports2.METHODS.REPORT,
      exports2.METHODS.MKACTIVITY,
      exports2.METHODS.CHECKOUT,
      exports2.METHODS.MERGE,
      exports2.METHODS["M-SEARCH"],
      exports2.METHODS.NOTIFY,
      exports2.METHODS.SUBSCRIBE,
      exports2.METHODS.UNSUBSCRIBE,
      exports2.METHODS.PATCH,
      exports2.METHODS.PURGE,
      exports2.METHODS.MKCALENDAR,
      exports2.METHODS.LINK,
      exports2.METHODS.UNLINK,
      exports2.METHODS.PRI,
      // TODO(indutny): should we allow it with HTTP?
      exports2.METHODS.SOURCE,
      exports2.METHODS.QUERY
    ];
    exports2.METHODS_ICE = [
      exports2.METHODS.SOURCE
    ];
    exports2.METHODS_RTSP = [
      exports2.METHODS.OPTIONS,
      exports2.METHODS.DESCRIBE,
      exports2.METHODS.ANNOUNCE,
      exports2.METHODS.SETUP,
      exports2.METHODS.PLAY,
      exports2.METHODS.PAUSE,
      exports2.METHODS.TEARDOWN,
      exports2.METHODS.GET_PARAMETER,
      exports2.METHODS.SET_PARAMETER,
      exports2.METHODS.REDIRECT,
      exports2.METHODS.RECORD,
      exports2.METHODS.FLUSH,
      // For AirPlay
      exports2.METHODS.GET,
      exports2.METHODS.POST
    ];
    exports2.METHOD_MAP = (0, utils_1.enumToMap)(exports2.METHODS);
    exports2.H_METHOD_MAP = Object.fromEntries(Object.entries(exports2.METHODS).filter(([k2]) => k2.startsWith("H")));
    exports2.STATUSES_HTTP = [
      exports2.STATUSES.CONTINUE,
      exports2.STATUSES.SWITCHING_PROTOCOLS,
      exports2.STATUSES.PROCESSING,
      exports2.STATUSES.EARLY_HINTS,
      exports2.STATUSES.RESPONSE_IS_STALE,
      exports2.STATUSES.REVALIDATION_FAILED,
      exports2.STATUSES.DISCONNECTED_OPERATION,
      exports2.STATUSES.HEURISTIC_EXPIRATION,
      exports2.STATUSES.MISCELLANEOUS_WARNING,
      exports2.STATUSES.OK,
      exports2.STATUSES.CREATED,
      exports2.STATUSES.ACCEPTED,
      exports2.STATUSES.NON_AUTHORITATIVE_INFORMATION,
      exports2.STATUSES.NO_CONTENT,
      exports2.STATUSES.RESET_CONTENT,
      exports2.STATUSES.PARTIAL_CONTENT,
      exports2.STATUSES.MULTI_STATUS,
      exports2.STATUSES.ALREADY_REPORTED,
      exports2.STATUSES.TRANSFORMATION_APPLIED,
      exports2.STATUSES.IM_USED,
      exports2.STATUSES.MISCELLANEOUS_PERSISTENT_WARNING,
      exports2.STATUSES.MULTIPLE_CHOICES,
      exports2.STATUSES.MOVED_PERMANENTLY,
      exports2.STATUSES.FOUND,
      exports2.STATUSES.SEE_OTHER,
      exports2.STATUSES.NOT_MODIFIED,
      exports2.STATUSES.USE_PROXY,
      exports2.STATUSES.SWITCH_PROXY,
      exports2.STATUSES.TEMPORARY_REDIRECT,
      exports2.STATUSES.PERMANENT_REDIRECT,
      exports2.STATUSES.BAD_REQUEST,
      exports2.STATUSES.UNAUTHORIZED,
      exports2.STATUSES.PAYMENT_REQUIRED,
      exports2.STATUSES.FORBIDDEN,
      exports2.STATUSES.NOT_FOUND,
      exports2.STATUSES.METHOD_NOT_ALLOWED,
      exports2.STATUSES.NOT_ACCEPTABLE,
      exports2.STATUSES.PROXY_AUTHENTICATION_REQUIRED,
      exports2.STATUSES.REQUEST_TIMEOUT,
      exports2.STATUSES.CONFLICT,
      exports2.STATUSES.GONE,
      exports2.STATUSES.LENGTH_REQUIRED,
      exports2.STATUSES.PRECONDITION_FAILED,
      exports2.STATUSES.PAYLOAD_TOO_LARGE,
      exports2.STATUSES.URI_TOO_LONG,
      exports2.STATUSES.UNSUPPORTED_MEDIA_TYPE,
      exports2.STATUSES.RANGE_NOT_SATISFIABLE,
      exports2.STATUSES.EXPECTATION_FAILED,
      exports2.STATUSES.IM_A_TEAPOT,
      exports2.STATUSES.PAGE_EXPIRED,
      exports2.STATUSES.ENHANCE_YOUR_CALM,
      exports2.STATUSES.MISDIRECTED_REQUEST,
      exports2.STATUSES.UNPROCESSABLE_ENTITY,
      exports2.STATUSES.LOCKED,
      exports2.STATUSES.FAILED_DEPENDENCY,
      exports2.STATUSES.TOO_EARLY,
      exports2.STATUSES.UPGRADE_REQUIRED,
      exports2.STATUSES.PRECONDITION_REQUIRED,
      exports2.STATUSES.TOO_MANY_REQUESTS,
      exports2.STATUSES.REQUEST_HEADER_FIELDS_TOO_LARGE_UNOFFICIAL,
      exports2.STATUSES.REQUEST_HEADER_FIELDS_TOO_LARGE,
      exports2.STATUSES.LOGIN_TIMEOUT,
      exports2.STATUSES.NO_RESPONSE,
      exports2.STATUSES.RETRY_WITH,
      exports2.STATUSES.BLOCKED_BY_PARENTAL_CONTROL,
      exports2.STATUSES.UNAVAILABLE_FOR_LEGAL_REASONS,
      exports2.STATUSES.CLIENT_CLOSED_LOAD_BALANCED_REQUEST,
      exports2.STATUSES.INVALID_X_FORWARDED_FOR,
      exports2.STATUSES.REQUEST_HEADER_TOO_LARGE,
      exports2.STATUSES.SSL_CERTIFICATE_ERROR,
      exports2.STATUSES.SSL_CERTIFICATE_REQUIRED,
      exports2.STATUSES.HTTP_REQUEST_SENT_TO_HTTPS_PORT,
      exports2.STATUSES.INVALID_TOKEN,
      exports2.STATUSES.CLIENT_CLOSED_REQUEST,
      exports2.STATUSES.INTERNAL_SERVER_ERROR,
      exports2.STATUSES.NOT_IMPLEMENTED,
      exports2.STATUSES.BAD_GATEWAY,
      exports2.STATUSES.SERVICE_UNAVAILABLE,
      exports2.STATUSES.GATEWAY_TIMEOUT,
      exports2.STATUSES.HTTP_VERSION_NOT_SUPPORTED,
      exports2.STATUSES.VARIANT_ALSO_NEGOTIATES,
      exports2.STATUSES.INSUFFICIENT_STORAGE,
      exports2.STATUSES.LOOP_DETECTED,
      exports2.STATUSES.BANDWIDTH_LIMIT_EXCEEDED,
      exports2.STATUSES.NOT_EXTENDED,
      exports2.STATUSES.NETWORK_AUTHENTICATION_REQUIRED,
      exports2.STATUSES.WEB_SERVER_UNKNOWN_ERROR,
      exports2.STATUSES.WEB_SERVER_IS_DOWN,
      exports2.STATUSES.CONNECTION_TIMEOUT,
      exports2.STATUSES.ORIGIN_IS_UNREACHABLE,
      exports2.STATUSES.TIMEOUT_OCCURED,
      exports2.STATUSES.SSL_HANDSHAKE_FAILED,
      exports2.STATUSES.INVALID_SSL_CERTIFICATE,
      exports2.STATUSES.RAILGUN_ERROR,
      exports2.STATUSES.SITE_IS_OVERLOADED,
      exports2.STATUSES.SITE_IS_FROZEN,
      exports2.STATUSES.IDENTITY_PROVIDER_AUTHENTICATION_ERROR,
      exports2.STATUSES.NETWORK_READ_TIMEOUT,
      exports2.STATUSES.NETWORK_CONNECT_TIMEOUT
    ];
    exports2.ALPHA = [];
    for (let i2 = "A".charCodeAt(0); i2 <= "Z".charCodeAt(0); i2++) {
      exports2.ALPHA.push(String.fromCharCode(i2));
      exports2.ALPHA.push(String.fromCharCode(i2 + 32));
    }
    exports2.NUM_MAP = {
      0: 0,
      1: 1,
      2: 2,
      3: 3,
      4: 4,
      5: 5,
      6: 6,
      7: 7,
      8: 8,
      9: 9
    };
    exports2.HEX_MAP = {
      0: 0,
      1: 1,
      2: 2,
      3: 3,
      4: 4,
      5: 5,
      6: 6,
      7: 7,
      8: 8,
      9: 9,
      A: 10,
      B: 11,
      C: 12,
      D: 13,
      E: 14,
      F: 15,
      a: 10,
      b: 11,
      c: 12,
      d: 13,
      e: 14,
      f: 15
    };
    exports2.NUM = [
      "0",
      "1",
      "2",
      "3",
      "4",
      "5",
      "6",
      "7",
      "8",
      "9"
    ];
    exports2.ALPHANUM = exports2.ALPHA.concat(exports2.NUM);
    exports2.MARK = ["-", "_", ".", "!", "~", "*", "'", "(", ")"];
    exports2.USERINFO_CHARS = exports2.ALPHANUM.concat(exports2.MARK).concat(["%", ";", ":", "&", "=", "+", "$", ","]);
    exports2.URL_CHAR = [
      "!",
      '"',
      "$",
      "%",
      "&",
      "'",
      "(",
      ")",
      "*",
      "+",
      ",",
      "-",
      ".",
      "/",
      ":",
      ";",
      "<",
      "=",
      ">",
      "@",
      "[",
      "\\",
      "]",
      "^",
      "_",
      "`",
      "{",
      "|",
      "}",
      "~"
    ].concat(exports2.ALPHANUM);
    exports2.HEX = exports2.NUM.concat(["a", "b", "c", "d", "e", "f", "A", "B", "C", "D", "E", "F"]);
    exports2.TOKEN = [
      "!",
      "#",
      "$",
      "%",
      "&",
      "'",
      "*",
      "+",
      "-",
      ".",
      "^",
      "_",
      "`",
      "|",
      "~"
    ].concat(exports2.ALPHANUM);
    exports2.HEADER_CHARS = ["	"];
    for (let i2 = 32; i2 <= 255; i2++) {
      if (i2 !== 127) {
        exports2.HEADER_CHARS.push(i2);
      }
    }
    exports2.CONNECTION_TOKEN_CHARS = exports2.HEADER_CHARS.filter((c3) => c3 !== 44);
    exports2.QUOTED_STRING = ["	", " "];
    for (let i2 = 33; i2 <= 255; i2++) {
      if (i2 !== 34 && i2 !== 92) {
        exports2.QUOTED_STRING.push(i2);
      }
    }
    exports2.HTAB_SP_VCHAR_OBS_TEXT = ["	", " "];
    for (let i2 = 33; i2 <= 126; i2++) {
      exports2.HTAB_SP_VCHAR_OBS_TEXT.push(i2);
    }
    for (let i2 = 128; i2 <= 255; i2++) {
      exports2.HTAB_SP_VCHAR_OBS_TEXT.push(i2);
    }
    exports2.MAJOR = exports2.NUM_MAP;
    exports2.MINOR = exports2.MAJOR;
    exports2.SPECIAL_HEADERS = {
      "connection": exports2.HEADER_STATE.CONNECTION,
      "content-length": exports2.HEADER_STATE.CONTENT_LENGTH,
      "proxy-connection": exports2.HEADER_STATE.CONNECTION,
      "transfer-encoding": exports2.HEADER_STATE.TRANSFER_ENCODING,
      "upgrade": exports2.HEADER_STATE.UPGRADE
    };
    exports2.default = {
      ERROR: exports2.ERROR,
      TYPE: exports2.TYPE,
      FLAGS: exports2.FLAGS,
      LENIENT_FLAGS: exports2.LENIENT_FLAGS,
      METHODS: exports2.METHODS,
      STATUSES: exports2.STATUSES,
      FINISH: exports2.FINISH,
      HEADER_STATE: exports2.HEADER_STATE,
      ALPHA: exports2.ALPHA,
      NUM_MAP: exports2.NUM_MAP,
      HEX_MAP: exports2.HEX_MAP,
      NUM: exports2.NUM,
      ALPHANUM: exports2.ALPHANUM,
      MARK: exports2.MARK,
      USERINFO_CHARS: exports2.USERINFO_CHARS,
      URL_CHAR: exports2.URL_CHAR,
      HEX: exports2.HEX,
      TOKEN: exports2.TOKEN,
      HEADER_CHARS: exports2.HEADER_CHARS,
      CONNECTION_TOKEN_CHARS: exports2.CONNECTION_TOKEN_CHARS,
      QUOTED_STRING: exports2.QUOTED_STRING,
      HTAB_SP_VCHAR_OBS_TEXT: exports2.HTAB_SP_VCHAR_OBS_TEXT,
      MAJOR: exports2.MAJOR,
      MINOR: exports2.MINOR,
      SPECIAL_HEADERS: exports2.SPECIAL_HEADERS,
      METHODS_HTTP: exports2.METHODS_HTTP,
      METHODS_ICE: exports2.METHODS_ICE,
      METHODS_RTSP: exports2.METHODS_RTSP,
      METHOD_MAP: exports2.METHOD_MAP,
      H_METHOD_MAP: exports2.H_METHOD_MAP,
      STATUSES_HTTP: exports2.STATUSES_HTTP
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/llhttp/llhttp-wasm.js
var require_llhttp_wasm = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/llhttp/llhttp-wasm.js"(exports2, module2) {
    "use strict";
    var { Buffer: Buffer5 } = __require("node:buffer");
    var wasmBase64 = " ";
    var wasmBuffer;
    Object.defineProperty(module2, "exports", {
      get: () => {
        return wasmBuffer ? wasmBuffer : wasmBuffer = Buffer5.from(wasmBase64, "base64");
      }
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/llhttp/llhttp_simd-wasm.js
var require_llhttp_simd_wasm = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/llhttp/llhttp_simd-wasm.js"(exports2, module2) {
    "use strict";
    var { Buffer: Buffer5 } = __require("node:buffer");
    var wasmBase64 = " ";
    var wasmBuffer;
    Object.defineProperty(module2, "exports", {
      get: () => {
        return wasmBuffer ? wasmBuffer : wasmBuffer = Buffer5.from(wasmBase64, "base64");
      }
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/fetch/constants.js
var require_constants14 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/fetch/constants.js"(exports2, module2) {
    "use strict";
    var corsSafeListedMethods = (
      /** @type {const} */
      ["GET", "HEAD", "POST"]
    );
    var corsSafeListedMethodsSet = new Set(corsSafeListedMethods);
    var nullBodyStatus = (
      /** @type {const} */
      [101, 204, 205, 304]
    );
    var redirectStatus = (
      /** @type {const} */
      [301, 302, 303, 307, 308]
    );
    var redirectStatusSet = new Set(redirectStatus);
    var badPorts = (
      /** @type {const} */
      [
        "1",
        "7",
        "9",
        "11",
        "13",
        "15",
        "17",
        "19",
        "20",
        "21",
        "22",
        "23",
        "25",
        "37",
        "42",
        "43",
        "53",
        "69",
        "77",
        "79",
        "87",
        "95",
        "101",
        "102",
        "103",
        "104",
        "109",
        "110",
        "111",
        "113",
        "115",
        "117",
        "119",
        "123",
        "135",
        "137",
        "139",
        "143",
        "161",
        "179",
        "389",
        "427",
        "465",
        "512",
        "513",
        "514",
        "515",
        "526",
        "530",
        "531",
        "532",
        "540",
        "548",
        "554",
        "556",
        "563",
        "587",
        "601",
        "636",
        "989",
        "990",
        "993",
        "995",
        "1719",
        "1720",
        "1723",
        "2049",
        "3659",
        "4045",
        "4190",
        "5060",
        "5061",
        "6000",
        "6566",
        "6665",
        "6666",
        "6667",
        "6668",
        "6669",
        "6679",
        "6697",
        "10080"
      ]
    );
    var badPortsSet = new Set(badPorts);
    var referrerPolicyTokens = (
      /** @type {const} */
      [
        "no-referrer",
        "no-referrer-when-downgrade",
        "same-origin",
        "origin",
        "strict-origin",
        "origin-when-cross-origin",
        "strict-origin-when-cross-origin",
        "unsafe-url"
      ]
    );
    var referrerPolicy = (
      /** @type {const} */
      [
        "",
        ...referrerPolicyTokens
      ]
    );
    var referrerPolicyTokensSet = new Set(referrerPolicyTokens);
    var requestRedirect = (
      /** @type {const} */
      ["follow", "manual", "error"]
    );
    var safeMethods = (
      /** @type {const} */
      ["GET", "HEAD", "OPTIONS", "TRACE"]
    );
    var safeMethodsSet = new Set(safeMethods);
    var requestMode = (
      /** @type {const} */
      ["navigate", "same-origin", "no-cors", "cors"]
    );
    var requestCredentials = (
      /** @type {const} */
      ["omit", "same-origin", "include"]
    );
    var requestCache = (
      /** @type {const} */
      [
        "default",
        "no-store",
        "reload",
        "no-cache",
        "force-cache",
        "only-if-cached"
      ]
    );
    var requestBodyHeader = (
      /** @type {const} */
      [
        "content-encoding",
        "content-language",
        "content-location",
        "content-type",
        // See https://github.com/nodejs/undici/issues/2021
        // 'Content-Length' is a forbidden header name, which is typically
        // removed in the Headers implementation. However, undici doesn't
        // filter out headers, so we add it here.
        "content-length"
      ]
    );
    var requestDuplex = (
      /** @type {const} */
      [
        "half"
      ]
    );
    var forbiddenMethods = (
      /** @type {const} */
      ["CONNECT", "TRACE", "TRACK"]
    );
    var forbiddenMethodsSet = new Set(forbiddenMethods);
    var subresource = (
      /** @type {const} */
      [
        "audio",
        "audioworklet",
        "font",
        "image",
        "manifest",
        "paintworklet",
        "script",
        "style",
        "track",
        "video",
        "xslt",
        ""
      ]
    );
    var subresourceSet = new Set(subresource);
    module2.exports = {
      subresource,
      forbiddenMethods,
      requestBodyHeader,
      referrerPolicy,
      requestRedirect,
      requestMode,
      requestCredentials,
      requestCache,
      redirectStatus,
      corsSafeListedMethods,
      nullBodyStatus,
      safeMethods,
      badPorts,
      requestDuplex,
      subresourceSet,
      badPortsSet,
      redirectStatusSet,
      corsSafeListedMethodsSet,
      safeMethodsSet,
      forbiddenMethodsSet,
      referrerPolicyTokens: referrerPolicyTokensSet
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/fetch/global.js
var require_global = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/fetch/global.js"(exports2, module2) {
    "use strict";
    var globalOrigin = /* @__PURE__ */ Symbol.for("undici.globalOrigin.1");
    function getGlobalOrigin() {
      return globalThis[globalOrigin];
    }
    function setGlobalOrigin(newOrigin) {
      if (newOrigin === void 0) {
        Object.defineProperty(globalThis, globalOrigin, {
          value: void 0,
          writable: true,
          enumerable: false,
          configurable: false
        });
        return;
      }
      const parsedURL = new URL(newOrigin);
      if (parsedURL.protocol !== "http:" && parsedURL.protocol !== "https:") {
        throw new TypeError(`Only http & https urls are allowed, received ${parsedURL.protocol}`);
      }
      Object.defineProperty(globalThis, globalOrigin, {
        value: parsedURL,
        writable: true,
        enumerable: false,
        configurable: false
      });
    }
    module2.exports = {
      getGlobalOrigin,
      setGlobalOrigin
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/encoding/index.js
var require_encoding = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/encoding/index.js"(exports2, module2) {
    "use strict";
    var textDecoder2 = new TextDecoder();
    function utf8DecodeBytes(buffer3) {
      if (buffer3.length === 0) {
        return "";
      }
      if (buffer3[0] === 239 && buffer3[1] === 187 && buffer3[2] === 191) {
        buffer3 = buffer3.subarray(3);
      }
      const output = textDecoder2.decode(buffer3);
      return output;
    }
    module2.exports = {
      utf8DecodeBytes
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/infra/index.js
var require_infra = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/infra/index.js"(exports2, module2) {
    "use strict";
    var assert13 = __require("node:assert");
    var { utf8DecodeBytes } = require_encoding();
    function collectASequenceOfCodePoints(condition, input, position3) {
      let result2 = "";
      while (position3.position < input.length && condition(input[position3.position])) {
        result2 += input[position3.position];
        position3.position++;
      }
      return result2;
    }
    function collectASequenceOfCodePointsFast(char, input, position3) {
      const idx = input.indexOf(char, position3.position);
      const start = position3.position;
      if (idx === -1) {
        position3.position = input.length;
        return input.slice(start);
      }
      position3.position = idx;
      return input.slice(start, position3.position);
    }
    var ASCII_WHITESPACE_REPLACE_REGEX = /[\u0009\u000A\u000C\u000D\u0020]/g;
    function forgivingBase64(data) {
      data = data.replace(ASCII_WHITESPACE_REPLACE_REGEX, "");
      let dataLength = data.length;
      if (dataLength % 4 === 0) {
        if (data.charCodeAt(dataLength - 1) === 61) {
          --dataLength;
          if (data.charCodeAt(dataLength - 1) === 61) {
            --dataLength;
          }
        }
      }
      if (dataLength % 4 === 1) {
        return "failure";
      }
      if (/[^+/0-9A-Za-z]/.test(data.length === dataLength ? data : data.substring(0, dataLength))) {
        return "failure";
      }
      const buffer3 = Buffer.from(data, "base64");
      return new Uint8Array(buffer3.buffer, buffer3.byteOffset, buffer3.byteLength);
    }
    function isASCIIWhitespace(char) {
      return char === 9 || // \t
      char === 10 || // \n
      char === 12 || // \f
      char === 13 || // \r
      char === 32;
    }
    function isomorphicDecode(input) {
      const length = input.length;
      if ((2 << 15) - 1 > length) {
        return String.fromCharCode.apply(null, input);
      }
      let result2 = "";
      let i2 = 0;
      let addition = (2 << 15) - 1;
      while (i2 < length) {
        if (i2 + addition > length) {
          addition = length - i2;
        }
        result2 += String.fromCharCode.apply(null, input.subarray(i2, i2 += addition));
      }
      return result2;
    }
    var invalidIsomorphicEncodeValueRegex = /[^\x00-\xFF]/;
    function isomorphicEncode(input) {
      assert13(!invalidIsomorphicEncodeValueRegex.test(input));
      return input;
    }
    function parseJSONFromBytes(bytes) {
      return JSON.parse(utf8DecodeBytes(bytes));
    }
    function removeASCIIWhitespace(str2, leading = true, trailing = true) {
      return removeChars(str2, leading, trailing, isASCIIWhitespace);
    }
    function removeChars(str2, leading, trailing, predicate) {
      let lead = 0;
      let trail = str2.length - 1;
      if (leading) {
        while (lead < str2.length && predicate(str2.charCodeAt(lead))) lead++;
      }
      if (trailing) {
        while (trail > 0 && predicate(str2.charCodeAt(trail))) trail--;
      }
      return lead === 0 && trail === str2.length - 1 ? str2 : str2.slice(lead, trail + 1);
    }
    function serializeJavascriptValueToJSONString(value) {
      const result2 = JSON.stringify(value);
      if (result2 === void 0) {
        throw new TypeError("Value is not JSON serializable");
      }
      assert13(typeof result2 === "string");
      return result2;
    }
    module2.exports = {
      collectASequenceOfCodePoints,
      collectASequenceOfCodePointsFast,
      forgivingBase64,
      isASCIIWhitespace,
      isomorphicDecode,
      isomorphicEncode,
      parseJSONFromBytes,
      removeASCIIWhitespace,
      removeChars,
      serializeJavascriptValueToJSONString
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/fetch/data-url.js
var require_data_url = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/fetch/data-url.js"(exports2, module2) {
    "use strict";
    var assert13 = __require("node:assert");
    var { forgivingBase64, collectASequenceOfCodePoints, collectASequenceOfCodePointsFast, isomorphicDecode, removeASCIIWhitespace, removeChars } = require_infra();
    var encoder = new TextEncoder();
    var HTTP_TOKEN_CODEPOINTS = /^[-!#$%&'*+.^_|~A-Za-z0-9]+$/u;
    var HTTP_WHITESPACE_REGEX = /[\u000A\u000D\u0009\u0020]/u;
    var HTTP_QUOTED_STRING_TOKENS = /^[\u0009\u0020-\u007E\u0080-\u00FF]+$/u;
    function dataURLProcessor(dataURL) {
      assert13(dataURL.protocol === "data:");
      let input = URLSerializer(dataURL, true);
      input = input.slice(5);
      const position3 = { position: 0 };
      let mimeType = collectASequenceOfCodePointsFast(
        ",",
        input,
        position3
      );
      const mimeTypeLength = mimeType.length;
      mimeType = removeASCIIWhitespace(mimeType, true, true);
      if (position3.position >= input.length) {
        return "failure";
      }
      position3.position++;
      const encodedBody = input.slice(mimeTypeLength + 1);
      let body = stringPercentDecode(encodedBody);
      if (/;(?:\u0020*)base64$/ui.test(mimeType)) {
        const stringBody = isomorphicDecode(body);
        body = forgivingBase64(stringBody);
        if (body === "failure") {
          return "failure";
        }
        mimeType = mimeType.slice(0, -6);
        mimeType = mimeType.replace(/(\u0020+)$/u, "");
        mimeType = mimeType.slice(0, -1);
      }
      if (mimeType.startsWith(";")) {
        mimeType = "text/plain" + mimeType;
      }
      let mimeTypeRecord = parseMIMEType(mimeType);
      if (mimeTypeRecord === "failure") {
        mimeTypeRecord = parseMIMEType("text/plain;charset=US-ASCII");
      }
      return { mimeType: mimeTypeRecord, body };
    }
    function URLSerializer(url7, excludeFragment = false) {
      if (!excludeFragment) {
        return url7.href;
      }
      const href = url7.href;
      const hashLength = url7.hash.length;
      const serialized = hashLength === 0 ? href : href.substring(0, href.length - hashLength);
      if (!hashLength && href.endsWith("#")) {
        return serialized.slice(0, -1);
      }
      return serialized;
    }
    function stringPercentDecode(input) {
      const bytes = encoder.encode(input);
      return percentDecode(bytes);
    }
    function isHexCharByte(byte) {
      return byte >= 48 && byte <= 57 || byte >= 65 && byte <= 70 || byte >= 97 && byte <= 102;
    }
    function hexByteToNumber(byte) {
      return (
        // 0-9
        byte >= 48 && byte <= 57 ? byte - 48 : (byte & 223) - 55
      );
    }
    function percentDecode(input) {
      const length = input.length;
      const output = new Uint8Array(length);
      let j2 = 0;
      let i2 = 0;
      while (i2 < length) {
        const byte = input[i2];
        if (byte !== 37) {
          output[j2++] = byte;
        } else if (byte === 37 && !(isHexCharByte(input[i2 + 1]) && isHexCharByte(input[i2 + 2]))) {
          output[j2++] = 37;
        } else {
          output[j2++] = hexByteToNumber(input[i2 + 1]) << 4 | hexByteToNumber(input[i2 + 2]);
          i2 += 2;
        }
        ++i2;
      }
      return length === j2 ? output : output.subarray(0, j2);
    }
    function parseMIMEType(input) {
      input = removeHTTPWhitespace(input, true, true);
      const position3 = { position: 0 };
      const type4 = collectASequenceOfCodePointsFast(
        "/",
        input,
        position3
      );
      if (type4.length === 0 || !HTTP_TOKEN_CODEPOINTS.test(type4)) {
        return "failure";
      }
      if (position3.position >= input.length) {
        return "failure";
      }
      position3.position++;
      let subtype = collectASequenceOfCodePointsFast(
        ";",
        input,
        position3
      );
      subtype = removeHTTPWhitespace(subtype, false, true);
      if (subtype.length === 0 || !HTTP_TOKEN_CODEPOINTS.test(subtype)) {
        return "failure";
      }
      const typeLowercase = type4.toLowerCase();
      const subtypeLowercase = subtype.toLowerCase();
      const mimeType = {
        type: typeLowercase,
        subtype: subtypeLowercase,
        /** @type {Map<string, string>} */
        parameters: /* @__PURE__ */ new Map(),
        // https://mimesniff.spec.whatwg.org/#mime-type-essence
        essence: `${typeLowercase}/${subtypeLowercase}`
      };
      while (position3.position < input.length) {
        position3.position++;
        collectASequenceOfCodePoints(
          // https://fetch.spec.whatwg.org/#http-whitespace
          (char) => HTTP_WHITESPACE_REGEX.test(char),
          input,
          position3
        );
        let parameterName = collectASequenceOfCodePoints(
          (char) => char !== ";" && char !== "=",
          input,
          position3
        );
        parameterName = parameterName.toLowerCase();
        if (position3.position < input.length) {
          if (input[position3.position] === ";") {
            continue;
          }
          position3.position++;
        }
        if (position3.position >= input.length) {
          break;
        }
        let parameterValue = null;
        if (input[position3.position] === '"') {
          parameterValue = collectAnHTTPQuotedString(input, position3, true);
          collectASequenceOfCodePointsFast(
            ";",
            input,
            position3
          );
        } else {
          parameterValue = collectASequenceOfCodePointsFast(
            ";",
            input,
            position3
          );
          parameterValue = removeHTTPWhitespace(parameterValue, false, true);
          if (parameterValue.length === 0) {
            continue;
          }
        }
        if (parameterName.length !== 0 && HTTP_TOKEN_CODEPOINTS.test(parameterName) && (parameterValue.length === 0 || HTTP_QUOTED_STRING_TOKENS.test(parameterValue)) && !mimeType.parameters.has(parameterName)) {
          mimeType.parameters.set(parameterName, parameterValue);
        }
      }
      return mimeType;
    }
    function collectAnHTTPQuotedString(input, position3, extractValue = false) {
      const positionStart = position3.position;
      let value = "";
      assert13(input[position3.position] === '"');
      position3.position++;
      while (true) {
        value += collectASequenceOfCodePoints(
          (char) => char !== '"' && char !== "\\",
          input,
          position3
        );
        if (position3.position >= input.length) {
          break;
        }
        const quoteOrBackslash = input[position3.position];
        position3.position++;
        if (quoteOrBackslash === "\\") {
          if (position3.position >= input.length) {
            value += "\\";
            break;
          }
          value += input[position3.position];
          position3.position++;
        } else {
          assert13(quoteOrBackslash === '"');
          break;
        }
      }
      if (extractValue) {
        return value;
      }
      return input.slice(positionStart, position3.position);
    }
    function serializeAMimeType(mimeType) {
      assert13(mimeType !== "failure");
      const { parameters, essence } = mimeType;
      let serialization = essence;
      for (let [name, value] of parameters.entries()) {
        serialization += ";";
        serialization += name;
        serialization += "=";
        if (!HTTP_TOKEN_CODEPOINTS.test(value)) {
          value = value.replace(/[\\"]/ug, "\\$&");
          value = '"' + value;
          value += '"';
        }
        serialization += value;
      }
      return serialization;
    }
    function isHTTPWhiteSpace(char) {
      return char === 13 || char === 10 || char === 9 || char === 32;
    }
    function removeHTTPWhitespace(str2, leading = true, trailing = true) {
      return removeChars(str2, leading, trailing, isHTTPWhiteSpace);
    }
    function minimizeSupportedMimeType(mimeType) {
      switch (mimeType.essence) {
        case "application/ecmascript":
        case "application/javascript":
        case "application/x-ecmascript":
        case "application/x-javascript":
        case "text/ecmascript":
        case "text/javascript":
        case "text/javascript1.0":
        case "text/javascript1.1":
        case "text/javascript1.2":
        case "text/javascript1.3":
        case "text/javascript1.4":
        case "text/javascript1.5":
        case "text/jscript":
        case "text/livescript":
        case "text/x-ecmascript":
        case "text/x-javascript":
          return "text/javascript";
        case "application/json":
        case "text/json":
          return "application/json";
        case "image/svg+xml":
          return "image/svg+xml";
        case "text/xml":
        case "application/xml":
          return "application/xml";
      }
      if (mimeType.subtype.endsWith("+json")) {
        return "application/json";
      }
      if (mimeType.subtype.endsWith("+xml")) {
        return "application/xml";
      }
      return "";
    }
    module2.exports = {
      dataURLProcessor,
      URLSerializer,
      stringPercentDecode,
      parseMIMEType,
      collectAnHTTPQuotedString,
      serializeAMimeType,
      removeHTTPWhitespace,
      minimizeSupportedMimeType,
      HTTP_TOKEN_CODEPOINTS
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/util/runtime-features.js
var require_runtime_features = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/util/runtime-features.js"(exports2, module2) {
    "use strict";
    var lazyLoaders = {
      __proto__: null,
      "node:crypto": () => __require("node:crypto"),
      "node:sqlite": () => __require("node:sqlite"),
      "node:worker_threads": () => __require("node:worker_threads"),
      "node:zlib": () => __require("node:zlib")
    };
    function detectRuntimeFeatureByNodeModule(moduleName) {
      try {
        lazyLoaders[moduleName]();
        return true;
      } catch (err) {
        if (err.code !== "ERR_UNKNOWN_BUILTIN_MODULE" && err.code !== "ERR_NO_CRYPTO") {
          throw err;
        }
        return false;
      }
    }
    function detectRuntimeFeatureByExportedProperty(moduleName, property) {
      const module3 = lazyLoaders[moduleName]();
      return typeof module3[property] !== "undefined";
    }
    var runtimeFeaturesByExportedProperty = (
      /** @type {const} */
      ["markAsUncloneable", "zstd"]
    );
    var exportedPropertyLookup = {
      markAsUncloneable: ["node:worker_threads", "markAsUncloneable"],
      zstd: ["node:zlib", "createZstdDecompress"]
    };
    var runtimeFeaturesAsNodeModule = (
      /** @type {const} */
      ["crypto", "sqlite"]
    );
    var features = (
      /** @type {const} */
      [
        ...runtimeFeaturesAsNodeModule,
        ...runtimeFeaturesByExportedProperty
      ]
    );
    function detectRuntimeFeature(feature) {
      if (runtimeFeaturesAsNodeModule.includes(
        /** @type {RuntimeFeatureByNodeModule} */
        feature
      )) {
        return detectRuntimeFeatureByNodeModule(`node:${feature}`);
      } else if (runtimeFeaturesByExportedProperty.includes(
        /** @type {RuntimeFeatureByExportedProperty} */
        feature
      )) {
        const [moduleName, property] = exportedPropertyLookup[feature];
        return detectRuntimeFeatureByExportedProperty(moduleName, property);
      }
      throw new TypeError(`unknown feature: ${feature}`);
    }
    var RuntimeFeatures = class {
      /** @type {Map<Feature, boolean>} */
      #map = /* @__PURE__ */ new Map();
      /**
       * Clears all cached feature detections.
       */
      clear() {
        this.#map.clear();
      }
      /**
       * @param {Feature} feature
       * @returns {boolean}
       */
      has(feature) {
        return this.#map.get(feature) ?? this.#detectRuntimeFeature(feature);
      }
      /**
       * @param {Feature} feature
       * @param {boolean} value
       */
      set(feature, value) {
        if (features.includes(feature) === false) {
          throw new TypeError(`unknown feature: ${feature}`);
        }
        this.#map.set(feature, value);
      }
      /**
       * @param {Feature} feature
       * @returns {boolean}
       */
      #detectRuntimeFeature(feature) {
        const result2 = detectRuntimeFeature(feature);
        this.#map.set(feature, result2);
        return result2;
      }
    };
    var instance = new RuntimeFeatures();
    module2.exports.runtimeFeatures = instance;
    module2.exports.default = instance;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/webidl/index.js
var require_webidl = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/webidl/index.js"(exports2, module2) {
    "use strict";
    var assert13 = __require("node:assert");
    var { types: types3, inspect: inspect3 } = __require("node:util");
    var { runtimeFeatures } = require_runtime_features();
    var UNDEFINED = 1;
    var BOOLEAN = 2;
    var STRING = 3;
    var SYMBOL = 4;
    var NUMBER2 = 5;
    var BIGINT = 6;
    var NULL = 7;
    var OBJECT = 8;
    var FunctionPrototypeSymbolHasInstance = Function.call.bind(Function.prototype[Symbol.hasInstance]);
    var webidl = {
      converters: {},
      util: {},
      errors: {},
      is: {}
    };
    webidl.errors.exception = function(message) {
      return new TypeError(`${message.header}: ${message.message}`);
    };
    webidl.errors.conversionFailed = function(opts2) {
      const plural2 = opts2.types.length === 1 ? "" : " one of";
      const message = `${opts2.argument} could not be converted to${plural2}: ${opts2.types.join(", ")}.`;
      return webidl.errors.exception({
        header: opts2.prefix,
        message
      });
    };
    webidl.errors.invalidArgument = function(context) {
      return webidl.errors.exception({
        header: context.prefix,
        message: `"${context.value}" is an invalid ${context.type}.`
      });
    };
    webidl.brandCheck = function(V, I2) {
      if (!FunctionPrototypeSymbolHasInstance(I2, V)) {
        const err = new TypeError("Illegal invocation");
        err.code = "ERR_INVALID_THIS";
        throw err;
      }
    };
    webidl.brandCheckMultiple = function(List) {
      const prototypes = List.map((c3) => webidl.util.MakeTypeAssertion(c3));
      return (V) => {
        if (prototypes.every((typeCheck) => !typeCheck(V))) {
          const err = new TypeError("Illegal invocation");
          err.code = "ERR_INVALID_THIS";
          throw err;
        }
      };
    };
    webidl.argumentLengthCheck = function({ length }, min, ctx) {
      if (length < min) {
        throw webidl.errors.exception({
          message: `${min} argument${min !== 1 ? "s" : ""} required, but${length ? " only" : ""} ${length} found.`,
          header: ctx
        });
      }
    };
    webidl.illegalConstructor = function() {
      throw webidl.errors.exception({
        header: "TypeError",
        message: "Illegal constructor"
      });
    };
    webidl.util.MakeTypeAssertion = function(I2) {
      return (O2) => FunctionPrototypeSymbolHasInstance(I2, O2);
    };
    webidl.util.Type = function(V) {
      switch (typeof V) {
        case "undefined":
          return UNDEFINED;
        case "boolean":
          return BOOLEAN;
        case "string":
          return STRING;
        case "symbol":
          return SYMBOL;
        case "number":
          return NUMBER2;
        case "bigint":
          return BIGINT;
        case "function":
        case "object": {
          if (V === null) {
            return NULL;
          }
          return OBJECT;
        }
      }
    };
    webidl.util.Types = {
      UNDEFINED,
      BOOLEAN,
      STRING,
      SYMBOL,
      NUMBER: NUMBER2,
      BIGINT,
      NULL,
      OBJECT
    };
    webidl.util.TypeValueToString = function(o2) {
      switch (webidl.util.Type(o2)) {
        case UNDEFINED:
          return "Undefined";
        case BOOLEAN:
          return "Boolean";
        case STRING:
          return "String";
        case SYMBOL:
          return "Symbol";
        case NUMBER2:
          return "Number";
        case BIGINT:
          return "BigInt";
        case NULL:
          return "Null";
        case OBJECT:
          return "Object";
      }
    };
    webidl.util.markAsUncloneable = runtimeFeatures.has("markAsUncloneable") ? __require("node:worker_threads").markAsUncloneable : () => {
    };
    webidl.util.ConvertToInt = function(V, bitLength, signedness, flags) {
      let upperBound;
      let lowerBound2;
      if (bitLength === 64) {
        upperBound = Math.pow(2, 53) - 1;
        if (signedness === "unsigned") {
          lowerBound2 = 0;
        } else {
          lowerBound2 = Math.pow(-2, 53) + 1;
        }
      } else if (signedness === "unsigned") {
        lowerBound2 = 0;
        upperBound = Math.pow(2, bitLength) - 1;
      } else {
        lowerBound2 = Math.pow(-2, bitLength) - 1;
        upperBound = Math.pow(2, bitLength - 1) - 1;
      }
      let x = Number(V);
      if (x === 0) {
        x = 0;
      }
      if (webidl.util.HasFlag(flags, webidl.attributes.EnforceRange)) {
        if (Number.isNaN(x) || x === Number.POSITIVE_INFINITY || x === Number.NEGATIVE_INFINITY) {
          throw webidl.errors.exception({
            header: "Integer conversion",
            message: `Could not convert ${webidl.util.Stringify(V)} to an integer.`
          });
        }
        x = webidl.util.IntegerPart(x);
        if (x < lowerBound2 || x > upperBound) {
          throw webidl.errors.exception({
            header: "Integer conversion",
            message: `Value must be between ${lowerBound2}-${upperBound}, got ${x}.`
          });
        }
        return x;
      }
      if (!Number.isNaN(x) && webidl.util.HasFlag(flags, webidl.attributes.Clamp)) {
        x = Math.min(Math.max(x, lowerBound2), upperBound);
        if (Math.floor(x) % 2 === 0) {
          x = Math.floor(x);
        } else {
          x = Math.ceil(x);
        }
        return x;
      }
      if (Number.isNaN(x) || x === 0 && Object.is(0, x) || x === Number.POSITIVE_INFINITY || x === Number.NEGATIVE_INFINITY) {
        return 0;
      }
      x = webidl.util.IntegerPart(x);
      x = x % Math.pow(2, bitLength);
      if (signedness === "signed" && x >= Math.pow(2, bitLength) - 1) {
        return x - Math.pow(2, bitLength);
      }
      return x;
    };
    webidl.util.IntegerPart = function(n2) {
      const r = Math.floor(Math.abs(n2));
      if (n2 < 0) {
        return -1 * r;
      }
      return r;
    };
    webidl.util.Stringify = function(V) {
      const type4 = webidl.util.Type(V);
      switch (type4) {
        case SYMBOL:
          return `Symbol(${V.description})`;
        case OBJECT:
          return inspect3(V);
        case STRING:
          return `"${V}"`;
        case BIGINT:
          return `${V}n`;
        default:
          return `${V}`;
      }
    };
    webidl.util.IsResizableArrayBuffer = function(V) {
      if (types3.isArrayBuffer(V)) {
        return V.resizable;
      }
      if (types3.isSharedArrayBuffer(V)) {
        return V.growable;
      }
      throw webidl.errors.exception({
        header: "IsResizableArrayBuffer",
        message: `"${webidl.util.Stringify(V)}" is not an array buffer.`
      });
    };
    webidl.util.HasFlag = function(flags, attributes) {
      return typeof flags === "number" && (flags & attributes) === attributes;
    };
    webidl.sequenceConverter = function(converter) {
      return (V, prefix, argument, Iterable) => {
        if (webidl.util.Type(V) !== OBJECT) {
          throw webidl.errors.exception({
            header: prefix,
            message: `${argument} (${webidl.util.Stringify(V)}) is not iterable.`
          });
        }
        const method = typeof Iterable === "function" ? Iterable() : V?.[Symbol.iterator]?.();
        const seq2 = [];
        let index = 0;
        if (method === void 0 || typeof method.next !== "function") {
          throw webidl.errors.exception({
            header: prefix,
            message: `${argument} is not iterable.`
          });
        }
        while (true) {
          const { done, value } = method.next();
          if (done) {
            break;
          }
          seq2.push(converter(value, prefix, `${argument}[${index++}]`));
        }
        return seq2;
      };
    };
    webidl.recordConverter = function(keyConverter, valueConverter) {
      return (O2, prefix, argument) => {
        if (webidl.util.Type(O2) !== OBJECT) {
          throw webidl.errors.exception({
            header: prefix,
            message: `${argument} ("${webidl.util.TypeValueToString(O2)}") is not an Object.`
          });
        }
        const result2 = {};
        if (!types3.isProxy(O2)) {
          const keys5 = [...Object.getOwnPropertyNames(O2), ...Object.getOwnPropertySymbols(O2)];
          for (const key of keys5) {
            const keyName = webidl.util.Stringify(key);
            const typedKey = keyConverter(key, prefix, `Key ${keyName} in ${argument}`);
            const typedValue = valueConverter(O2[key], prefix, `${argument}[${keyName}]`);
            result2[typedKey] = typedValue;
          }
          return result2;
        }
        const keys4 = Reflect.ownKeys(O2);
        for (const key of keys4) {
          const desc = Reflect.getOwnPropertyDescriptor(O2, key);
          if (desc?.enumerable) {
            const typedKey = keyConverter(key, prefix, argument);
            const typedValue = valueConverter(O2[key], prefix, argument);
            result2[typedKey] = typedValue;
          }
        }
        return result2;
      };
    };
    webidl.interfaceConverter = function(TypeCheck, name) {
      return (V, prefix, argument) => {
        if (!TypeCheck(V)) {
          throw webidl.errors.exception({
            header: prefix,
            message: `Expected ${argument} ("${webidl.util.Stringify(V)}") to be an instance of ${name}.`
          });
        }
        return V;
      };
    };
    webidl.dictionaryConverter = function(converters) {
      converters.sort((a2, b) => (a2.key > b.key) - (a2.key < b.key));
      return (dictionary, prefix, argument) => {
        const dict = {};
        if (dictionary != null && webidl.util.Type(dictionary) !== OBJECT) {
          throw webidl.errors.exception({
            header: prefix,
            message: `Expected ${dictionary} to be one of: Null, Undefined, Object.`
          });
        }
        for (const options of converters) {
          const { key, defaultValue, required, converter } = options;
          if (required === true) {
            if (dictionary == null || !Object.hasOwn(dictionary, key)) {
              throw webidl.errors.exception({
                header: prefix,
                message: `Missing required key "${key}".`
              });
            }
          }
          let value = dictionary?.[key];
          const hasDefault = defaultValue !== void 0;
          if (hasDefault && value === void 0) {
            value = defaultValue();
          }
          if (required || hasDefault || value !== void 0) {
            value = converter(value, prefix, `${argument}.${key}`);
            if (options.allowedValues && !options.allowedValues.includes(value)) {
              throw webidl.errors.exception({
                header: prefix,
                message: `${value} is not an accepted type. Expected one of ${options.allowedValues.join(", ")}.`
              });
            }
            dict[key] = value;
          }
        }
        return dict;
      };
    };
    webidl.nullableConverter = function(converter) {
      return (V, prefix, argument) => {
        if (V === null) {
          return V;
        }
        return converter(V, prefix, argument);
      };
    };
    webidl.is.USVString = function(value) {
      return typeof value === "string" && value.isWellFormed();
    };
    webidl.is.ReadableStream = webidl.util.MakeTypeAssertion(ReadableStream);
    webidl.is.Blob = webidl.util.MakeTypeAssertion(Blob);
    webidl.is.URLSearchParams = webidl.util.MakeTypeAssertion(URLSearchParams);
    webidl.is.File = webidl.util.MakeTypeAssertion(File);
    webidl.is.URL = webidl.util.MakeTypeAssertion(URL);
    webidl.is.AbortSignal = webidl.util.MakeTypeAssertion(AbortSignal);
    webidl.is.MessagePort = webidl.util.MakeTypeAssertion(MessagePort);
    webidl.is.BufferSource = function(V) {
      return types3.isArrayBuffer(V) || ArrayBuffer.isView(V) && types3.isArrayBuffer(V.buffer);
    };
    webidl.util.getCopyOfBytesHeldByBufferSource = function(bufferSource) {
      const jsBufferSource = bufferSource;
      let jsArrayBuffer = jsBufferSource;
      let offset = 0;
      let length = 0;
      if (types3.isTypedArray(jsBufferSource) || types3.isDataView(jsBufferSource)) {
        jsArrayBuffer = jsBufferSource.buffer;
        offset = jsBufferSource.byteOffset;
        length = jsBufferSource.byteLength;
      } else {
        assert13(types3.isAnyArrayBuffer(jsBufferSource));
        length = jsBufferSource.byteLength;
      }
      if (jsArrayBuffer.detached) {
        return new Uint8Array(0);
      }
      const bytes = new Uint8Array(length);
      const view = new Uint8Array(jsArrayBuffer, offset, length);
      bytes.set(view);
      return bytes;
    };
    webidl.converters.DOMString = function(V, prefix, argument, flags) {
      if (V === null && webidl.util.HasFlag(flags, webidl.attributes.LegacyNullToEmptyString)) {
        return "";
      }
      if (typeof V === "symbol") {
        throw webidl.errors.exception({
          header: prefix,
          message: `${argument} is a symbol, which cannot be converted to a DOMString.`
        });
      }
      return String(V);
    };
    webidl.converters.ByteString = function(V, prefix, argument) {
      if (typeof V === "symbol") {
        throw webidl.errors.exception({
          header: prefix,
          message: `${argument} is a symbol, which cannot be converted to a ByteString.`
        });
      }
      const x = String(V);
      for (let index = 0; index < x.length; index++) {
        if (x.charCodeAt(index) > 255) {
          throw new TypeError(
            `Cannot convert argument to a ByteString because the character at index ${index} has a value of ${x.charCodeAt(index)} which is greater than 255.`
          );
        }
      }
      return x;
    };
    webidl.converters.USVString = function(value) {
      if (typeof value === "string") {
        return value.toWellFormed();
      }
      return `${value}`.toWellFormed();
    };
    webidl.converters.boolean = function(V) {
      const x = Boolean(V);
      return x;
    };
    webidl.converters.any = function(V) {
      return V;
    };
    webidl.converters["long long"] = function(V, prefix, argument) {
      const x = webidl.util.ConvertToInt(V, 64, "signed", 0, prefix, argument);
      return x;
    };
    webidl.converters["unsigned long long"] = function(V, prefix, argument) {
      const x = webidl.util.ConvertToInt(V, 64, "unsigned", 0, prefix, argument);
      return x;
    };
    webidl.converters["unsigned long"] = function(V, prefix, argument) {
      const x = webidl.util.ConvertToInt(V, 32, "unsigned", 0, prefix, argument);
      return x;
    };
    webidl.converters["unsigned short"] = function(V, prefix, argument, flags) {
      const x = webidl.util.ConvertToInt(V, 16, "unsigned", flags, prefix, argument);
      return x;
    };
    webidl.converters.ArrayBuffer = function(V, prefix, argument, flags) {
      if (webidl.util.Type(V) !== OBJECT || !types3.isArrayBuffer(V)) {
        throw webidl.errors.conversionFailed({
          prefix,
          argument: `${argument} ("${webidl.util.Stringify(V)}")`,
          types: ["ArrayBuffer"]
        });
      }
      if (!webidl.util.HasFlag(flags, webidl.attributes.AllowResizable) && webidl.util.IsResizableArrayBuffer(V)) {
        throw webidl.errors.exception({
          header: prefix,
          message: `${argument} cannot be a resizable ArrayBuffer.`
        });
      }
      return V;
    };
    webidl.converters.SharedArrayBuffer = function(V, prefix, argument, flags) {
      if (webidl.util.Type(V) !== OBJECT || !types3.isSharedArrayBuffer(V)) {
        throw webidl.errors.conversionFailed({
          prefix,
          argument: `${argument} ("${webidl.util.Stringify(V)}")`,
          types: ["SharedArrayBuffer"]
        });
      }
      if (!webidl.util.HasFlag(flags, webidl.attributes.AllowResizable) && webidl.util.IsResizableArrayBuffer(V)) {
        throw webidl.errors.exception({
          header: prefix,
          message: `${argument} cannot be a resizable SharedArrayBuffer.`
        });
      }
      return V;
    };
    webidl.converters.TypedArray = function(V, T2, prefix, argument, flags) {
      if (webidl.util.Type(V) !== OBJECT || !types3.isTypedArray(V) || V.constructor.name !== T2.name) {
        throw webidl.errors.conversionFailed({
          prefix,
          argument: `${argument} ("${webidl.util.Stringify(V)}")`,
          types: [T2.name]
        });
      }
      if (!webidl.util.HasFlag(flags, webidl.attributes.AllowShared) && types3.isSharedArrayBuffer(V.buffer)) {
        throw webidl.errors.exception({
          header: prefix,
          message: `${argument} cannot be a view on a shared array buffer.`
        });
      }
      if (!webidl.util.HasFlag(flags, webidl.attributes.AllowResizable) && webidl.util.IsResizableArrayBuffer(V.buffer)) {
        throw webidl.errors.exception({
          header: prefix,
          message: `${argument} cannot be a view on a resizable array buffer.`
        });
      }
      return V;
    };
    webidl.converters.DataView = function(V, prefix, argument, flags) {
      if (webidl.util.Type(V) !== OBJECT || !types3.isDataView(V)) {
        throw webidl.errors.conversionFailed({
          prefix,
          argument: `${argument} ("${webidl.util.Stringify(V)}")`,
          types: ["DataView"]
        });
      }
      if (!webidl.util.HasFlag(flags, webidl.attributes.AllowShared) && types3.isSharedArrayBuffer(V.buffer)) {
        throw webidl.errors.exception({
          header: prefix,
          message: `${argument} cannot be a view on a shared array buffer.`
        });
      }
      if (!webidl.util.HasFlag(flags, webidl.attributes.AllowResizable) && webidl.util.IsResizableArrayBuffer(V.buffer)) {
        throw webidl.errors.exception({
          header: prefix,
          message: `${argument} cannot be a view on a resizable array buffer.`
        });
      }
      return V;
    };
    webidl.converters.ArrayBufferView = function(V, prefix, argument, flags) {
      if (webidl.util.Type(V) !== OBJECT || !types3.isArrayBufferView(V)) {
        throw webidl.errors.conversionFailed({
          prefix,
          argument: `${argument} ("${webidl.util.Stringify(V)}")`,
          types: ["ArrayBufferView"]
        });
      }
      if (!webidl.util.HasFlag(flags, webidl.attributes.AllowShared) && types3.isSharedArrayBuffer(V.buffer)) {
        throw webidl.errors.exception({
          header: prefix,
          message: `${argument} cannot be a view on a shared array buffer.`
        });
      }
      if (!webidl.util.HasFlag(flags, webidl.attributes.AllowResizable) && webidl.util.IsResizableArrayBuffer(V.buffer)) {
        throw webidl.errors.exception({
          header: prefix,
          message: `${argument} cannot be a view on a resizable array buffer.`
        });
      }
      return V;
    };
    webidl.converters.BufferSource = function(V, prefix, argument, flags) {
      if (types3.isArrayBuffer(V)) {
        return webidl.converters.ArrayBuffer(V, prefix, argument, flags);
      }
      if (types3.isArrayBufferView(V)) {
        flags &= ~webidl.attributes.AllowShared;
        return webidl.converters.ArrayBufferView(V, prefix, argument, flags);
      }
      if (types3.isSharedArrayBuffer(V)) {
        throw webidl.errors.exception({
          header: prefix,
          message: `${argument} cannot be a SharedArrayBuffer.`
        });
      }
      throw webidl.errors.conversionFailed({
        prefix,
        argument: `${argument} ("${webidl.util.Stringify(V)}")`,
        types: ["ArrayBuffer", "ArrayBufferView"]
      });
    };
    webidl.converters.AllowSharedBufferSource = function(V, prefix, argument, flags) {
      if (types3.isArrayBuffer(V)) {
        return webidl.converters.ArrayBuffer(V, prefix, argument, flags);
      }
      if (types3.isSharedArrayBuffer(V)) {
        return webidl.converters.SharedArrayBuffer(V, prefix, argument, flags);
      }
      if (types3.isArrayBufferView(V)) {
        flags |= webidl.attributes.AllowShared;
        return webidl.converters.ArrayBufferView(V, prefix, argument, flags);
      }
      throw webidl.errors.conversionFailed({
        prefix,
        argument: `${argument} ("${webidl.util.Stringify(V)}")`,
        types: ["ArrayBuffer", "SharedArrayBuffer", "ArrayBufferView"]
      });
    };
    webidl.converters["sequence<ByteString>"] = webidl.sequenceConverter(
      webidl.converters.ByteString
    );
    webidl.converters["sequence<sequence<ByteString>>"] = webidl.sequenceConverter(
      webidl.converters["sequence<ByteString>"]
    );
    webidl.converters["record<ByteString, ByteString>"] = webidl.recordConverter(
      webidl.converters.ByteString,
      webidl.converters.ByteString
    );
    webidl.converters.Blob = webidl.interfaceConverter(webidl.is.Blob, "Blob");
    webidl.converters.AbortSignal = webidl.interfaceConverter(
      webidl.is.AbortSignal,
      "AbortSignal"
    );
    webidl.converters.EventHandlerNonNull = function(V) {
      if (webidl.util.Type(V) !== OBJECT) {
        return null;
      }
      if (typeof V === "function") {
        return V;
      }
      return () => {
      };
    };
    webidl.attributes = {
      Clamp: 1 << 0,
      EnforceRange: 1 << 1,
      AllowShared: 1 << 2,
      AllowResizable: 1 << 3,
      LegacyNullToEmptyString: 1 << 4
    };
    module2.exports = {
      webidl
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/fetch/util.js
var require_util7 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/fetch/util.js"(exports2, module2) {
    "use strict";
    var { Transform: Transform2 } = __require("node:stream");
    var zlib = __require("node:zlib");
    var { redirectStatusSet, referrerPolicyTokens, badPortsSet } = require_constants14();
    var { getGlobalOrigin } = require_global();
    var { collectAnHTTPQuotedString, parseMIMEType } = require_data_url();
    var { performance: performance2 } = __require("node:perf_hooks");
    var { ReadableStreamFrom, isValidHTTPToken, normalizedMethodRecordsBase } = require_util6();
    var assert13 = __require("node:assert");
    var { isUint8Array: isUint8Array2 } = __require("node:util/types");
    var { webidl } = require_webidl();
    var { isomorphicEncode, collectASequenceOfCodePoints, removeChars } = require_infra();
    function responseURL(response) {
      const urlList = response.urlList;
      const length = urlList.length;
      return length === 0 ? null : urlList[length - 1].toString();
    }
    function responseLocationURL(response, requestFragment) {
      if (!redirectStatusSet.has(response.status)) {
        return null;
      }
      let location = response.headersList.get("location", true);
      if (location !== null && isValidHeaderValue(location)) {
        if (!isValidEncodedURL(location)) {
          location = normalizeBinaryStringToUtf8(location);
        }
        location = new URL(location, responseURL(response));
      }
      if (location && !location.hash) {
        location.hash = requestFragment;
      }
      return location;
    }
    function isValidEncodedURL(url7) {
      for (let i2 = 0; i2 < url7.length; ++i2) {
        const code = url7.charCodeAt(i2);
        if (code > 126 || // Non-US-ASCII + DEL
        code < 32) {
          return false;
        }
      }
      return true;
    }
    function normalizeBinaryStringToUtf8(value) {
      return Buffer.from(value, "binary").toString("utf8");
    }
    function requestCurrentURL(request) {
      return request.urlList[request.urlList.length - 1];
    }
    function requestBadPort(request) {
      const url7 = requestCurrentURL(request);
      if (urlIsHttpHttpsScheme(url7) && badPortsSet.has(url7.port)) {
        return "blocked";
      }
      return "allowed";
    }
    function isErrorLike(object) {
      return object instanceof Error || (object?.constructor?.name === "Error" || object?.constructor?.name === "DOMException");
    }
    function isValidReasonPhrase(statusText) {
      for (let i2 = 0; i2 < statusText.length; ++i2) {
        const c3 = statusText.charCodeAt(i2);
        if (!(c3 === 9 || // HTAB
        c3 >= 32 && c3 <= 126 || // SP / VCHAR
        c3 >= 128 && c3 <= 255)) {
          return false;
        }
      }
      return true;
    }
    var isValidHeaderName = isValidHTTPToken;
    function isValidHeaderValue(potentialValue) {
      return (potentialValue[0] === "	" || potentialValue[0] === " " || potentialValue[potentialValue.length - 1] === "	" || potentialValue[potentialValue.length - 1] === " " || potentialValue.includes("\n") || potentialValue.includes("\r") || potentialValue.includes("\0")) === false;
    }
    function parseReferrerPolicy(actualResponse) {
      const policyHeader = (actualResponse.headersList.get("referrer-policy", true) ?? "").split(",");
      let policy = "";
      if (policyHeader.length) {
        for (let i2 = policyHeader.length; i2 !== 0; i2--) {
          const token = policyHeader[i2 - 1].trim();
          if (referrerPolicyTokens.has(token)) {
            policy = token;
            break;
          }
        }
      }
      return policy;
    }
    function setRequestReferrerPolicyOnRedirect(request, actualResponse) {
      const policy = parseReferrerPolicy(actualResponse);
      if (policy !== "") {
        request.referrerPolicy = policy;
      }
    }
    function crossOriginResourcePolicyCheck() {
      return "allowed";
    }
    function corsCheck() {
      return "success";
    }
    function TAOCheck() {
      return "success";
    }
    function appendFetchMetadata(httpRequest) {
      let header = null;
      header = httpRequest.mode;
      httpRequest.headersList.set("sec-fetch-mode", header, true);
    }
    function appendRequestOriginHeader(request) {
      let serializedOrigin = request.origin;
      if (serializedOrigin === "client" || serializedOrigin === void 0) {
        return;
      }
      if (request.responseTainting === "cors" || request.mode === "websocket") {
        request.headersList.append("origin", serializedOrigin, true);
      } else if (request.method !== "GET" && request.method !== "HEAD") {
        switch (request.referrerPolicy) {
          case "no-referrer":
            serializedOrigin = null;
            break;
          case "no-referrer-when-downgrade":
          case "strict-origin":
          case "strict-origin-when-cross-origin":
            if (request.origin && urlHasHttpsScheme(request.origin) && !urlHasHttpsScheme(requestCurrentURL(request))) {
              serializedOrigin = null;
            }
            break;
          case "same-origin":
            if (!sameOrigin(request, requestCurrentURL(request))) {
              serializedOrigin = null;
            }
            break;
          default:
        }
        request.headersList.append("origin", serializedOrigin, true);
      }
    }
    function coarsenTime(timestamp2, crossOriginIsolatedCapability) {
      return timestamp2;
    }
    function clampAndCoarsenConnectionTimingInfo(connectionTimingInfo, defaultStartTime, crossOriginIsolatedCapability) {
      if (!connectionTimingInfo?.startTime || connectionTimingInfo.startTime < defaultStartTime) {
        return {
          domainLookupStartTime: defaultStartTime,
          domainLookupEndTime: defaultStartTime,
          connectionStartTime: defaultStartTime,
          connectionEndTime: defaultStartTime,
          secureConnectionStartTime: defaultStartTime,
          ALPNNegotiatedProtocol: connectionTimingInfo?.ALPNNegotiatedProtocol
        };
      }
      return {
        domainLookupStartTime: coarsenTime(connectionTimingInfo.domainLookupStartTime, crossOriginIsolatedCapability),
        domainLookupEndTime: coarsenTime(connectionTimingInfo.domainLookupEndTime, crossOriginIsolatedCapability),
        connectionStartTime: coarsenTime(connectionTimingInfo.connectionStartTime, crossOriginIsolatedCapability),
        connectionEndTime: coarsenTime(connectionTimingInfo.connectionEndTime, crossOriginIsolatedCapability),
        secureConnectionStartTime: coarsenTime(connectionTimingInfo.secureConnectionStartTime, crossOriginIsolatedCapability),
        ALPNNegotiatedProtocol: connectionTimingInfo.ALPNNegotiatedProtocol
      };
    }
    function coarsenedSharedCurrentTime(crossOriginIsolatedCapability) {
      return coarsenTime(performance2.now(), crossOriginIsolatedCapability);
    }
    function createOpaqueTimingInfo(timingInfo) {
      return {
        startTime: timingInfo.startTime ?? 0,
        redirectStartTime: 0,
        redirectEndTime: 0,
        postRedirectStartTime: timingInfo.startTime ?? 0,
        finalServiceWorkerStartTime: 0,
        finalNetworkResponseStartTime: 0,
        finalNetworkRequestStartTime: 0,
        endTime: 0,
        encodedBodySize: 0,
        decodedBodySize: 0,
        finalConnectionTimingInfo: null
      };
    }
    function makePolicyContainer() {
      return {
        referrerPolicy: "strict-origin-when-cross-origin"
      };
    }
    function clonePolicyContainer(policyContainer) {
      return {
        referrerPolicy: policyContainer.referrerPolicy
      };
    }
    function determineRequestsReferrer(request) {
      const policy = request.referrerPolicy;
      assert13(policy);
      let referrerSource = null;
      if (request.referrer === "client") {
        const globalOrigin = getGlobalOrigin();
        if (!globalOrigin || globalOrigin.origin === "null") {
          return "no-referrer";
        }
        referrerSource = new URL(globalOrigin);
      } else if (webidl.is.URL(request.referrer)) {
        referrerSource = request.referrer;
      }
      let referrerURL = stripURLForReferrer(referrerSource);
      const referrerOrigin = stripURLForReferrer(referrerSource, true);
      if (referrerURL.toString().length > 4096) {
        referrerURL = referrerOrigin;
      }
      switch (policy) {
        case "no-referrer":
          return "no-referrer";
        case "origin":
          if (referrerOrigin != null) {
            return referrerOrigin;
          }
          return stripURLForReferrer(referrerSource, true);
        case "unsafe-url":
          return referrerURL;
        case "strict-origin": {
          const currentURL = requestCurrentURL(request);
          if (isURLPotentiallyTrustworthy(referrerURL) && !isURLPotentiallyTrustworthy(currentURL)) {
            return "no-referrer";
          }
          return referrerOrigin;
        }
        case "strict-origin-when-cross-origin": {
          const currentURL = requestCurrentURL(request);
          if (sameOrigin(referrerURL, currentURL)) {
            return referrerURL;
          }
          if (isURLPotentiallyTrustworthy(referrerURL) && !isURLPotentiallyTrustworthy(currentURL)) {
            return "no-referrer";
          }
          return referrerOrigin;
        }
        case "same-origin":
          if (sameOrigin(request, referrerURL)) {
            return referrerURL;
          }
          return "no-referrer";
        case "origin-when-cross-origin":
          if (sameOrigin(request, referrerURL)) {
            return referrerURL;
          }
          return referrerOrigin;
        case "no-referrer-when-downgrade": {
          const currentURL = requestCurrentURL(request);
          if (isURLPotentiallyTrustworthy(referrerURL) && !isURLPotentiallyTrustworthy(currentURL)) {
            return "no-referrer";
          }
          return referrerURL;
        }
      }
    }
    function stripURLForReferrer(url7, originOnly = false) {
      assert13(webidl.is.URL(url7));
      url7 = new URL(url7);
      if (urlIsLocal(url7)) {
        return "no-referrer";
      }
      url7.username = "";
      url7.password = "";
      url7.hash = "";
      if (originOnly === true) {
        url7.pathname = "";
        url7.search = "";
      }
      return url7;
    }
    var isPotentialleTrustworthyIPv4 = RegExp.prototype.test.bind(/^127\.(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)\.){2}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)$/);
    var isPotentiallyTrustworthyIPv6 = RegExp.prototype.test.bind(/^(?:(?:0{1,4}:){7}|(?:0{1,4}:){1,6}:|::)0{0,3}1$/);
    function isOriginIPPotentiallyTrustworthy(origin) {
      if (origin.includes(":")) {
        if (origin[0] === "[" && origin[origin.length - 1] === "]") {
          origin = origin.slice(1, -1);
        }
        return isPotentiallyTrustworthyIPv6(origin);
      }
      return isPotentialleTrustworthyIPv4(origin);
    }
    function isOriginPotentiallyTrustworthy(origin) {
      if (origin == null || origin === "null") {
        return false;
      }
      origin = new URL(origin);
      if (origin.protocol === "https:" || origin.protocol === "wss:") {
        return true;
      }
      if (isOriginIPPotentiallyTrustworthy(origin.hostname)) {
        return true;
      }
      if (origin.hostname === "localhost" || origin.hostname === "localhost.") {
        return true;
      }
      if (origin.hostname.endsWith(".localhost") || origin.hostname.endsWith(".localhost.")) {
        return true;
      }
      if (origin.protocol === "file:") {
        return true;
      }
      return false;
    }
    function isURLPotentiallyTrustworthy(url7) {
      if (!webidl.is.URL(url7)) {
        return false;
      }
      if (url7.href === "about:blank" || url7.href === "about:srcdoc") {
        return true;
      }
      if (url7.protocol === "data:") return true;
      if (url7.protocol === "blob:") return true;
      return isOriginPotentiallyTrustworthy(url7.origin);
    }
    function tryUpgradeRequestToAPotentiallyTrustworthyURL(request) {
    }
    function sameOrigin(A, B) {
      if (A.origin === B.origin && A.origin === "null") {
        return true;
      }
      if (A.protocol === B.protocol && A.hostname === B.hostname && A.port === B.port) {
        return true;
      }
      return false;
    }
    function isAborted(fetchParams) {
      return fetchParams.controller.state === "aborted";
    }
    function isCancelled(fetchParams) {
      return fetchParams.controller.state === "aborted" || fetchParams.controller.state === "terminated";
    }
    function normalizeMethod(method) {
      return normalizedMethodRecordsBase[method.toLowerCase()] ?? method;
    }
    var esIteratorPrototype = Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));
    function createIterator(name, kInternalIterator, keyIndex = 0, valueIndex = 1) {
      class FastIterableIterator {
        /** @type {any} */
        #target;
        /** @type {'key' | 'value' | 'key+value'} */
        #kind;
        /** @type {number} */
        #index;
        /**
         * @see https://webidl.spec.whatwg.org/#dfn-default-iterator-object
         * @param {unknown} target
         * @param {'key' | 'value' | 'key+value'} kind
         */
        constructor(target2, kind) {
          this.#target = target2;
          this.#kind = kind;
          this.#index = 0;
        }
        next() {
          if (typeof this !== "object" || this === null || !(#target in this)) {
            throw new TypeError(
              `'next' called on an object that does not implement interface ${name} Iterator.`
            );
          }
          const index = this.#index;
          const values = kInternalIterator(this.#target);
          const len = values.length;
          if (index >= len) {
            return {
              value: void 0,
              done: true
            };
          }
          const { [keyIndex]: key, [valueIndex]: value } = values[index];
          this.#index = index + 1;
          let result2;
          switch (this.#kind) {
            case "key":
              result2 = key;
              break;
            case "value":
              result2 = value;
              break;
            case "key+value":
              result2 = [key, value];
              break;
          }
          return {
            value: result2,
            done: false
          };
        }
      }
      delete FastIterableIterator.prototype.constructor;
      Object.setPrototypeOf(FastIterableIterator.prototype, esIteratorPrototype);
      Object.defineProperties(FastIterableIterator.prototype, {
        [Symbol.toStringTag]: {
          writable: false,
          enumerable: false,
          configurable: true,
          value: `${name} Iterator`
        },
        next: { writable: true, enumerable: true, configurable: true }
      });
      return function(target2, kind) {
        return new FastIterableIterator(target2, kind);
      };
    }
    function iteratorMixin(name, object, kInternalIterator, keyIndex = 0, valueIndex = 1) {
      const makeIterator = createIterator(name, kInternalIterator, keyIndex, valueIndex);
      const properties = {
        keys: {
          writable: true,
          enumerable: true,
          configurable: true,
          value: function keys4() {
            webidl.brandCheck(this, object);
            return makeIterator(this, "key");
          }
        },
        values: {
          writable: true,
          enumerable: true,
          configurable: true,
          value: function values() {
            webidl.brandCheck(this, object);
            return makeIterator(this, "value");
          }
        },
        entries: {
          writable: true,
          enumerable: true,
          configurable: true,
          value: function entries() {
            webidl.brandCheck(this, object);
            return makeIterator(this, "key+value");
          }
        },
        forEach: {
          writable: true,
          enumerable: true,
          configurable: true,
          value: function forEach(callbackfn, thisArg = globalThis) {
            webidl.brandCheck(this, object);
            webidl.argumentLengthCheck(arguments, 1, `${name}.forEach`);
            if (typeof callbackfn !== "function") {
              throw new TypeError(
                `Failed to execute 'forEach' on '${name}': parameter 1 is not of type 'Function'.`
              );
            }
            for (const { 0: key, 1: value } of makeIterator(this, "key+value")) {
              callbackfn.call(thisArg, value, key, this);
            }
          }
        }
      };
      return Object.defineProperties(object.prototype, {
        ...properties,
        [Symbol.iterator]: {
          writable: true,
          enumerable: false,
          configurable: true,
          value: properties.entries.value
        }
      });
    }
    function fullyReadBody(body, processBody, processBodyError) {
      const successSteps = processBody;
      const errorSteps = processBodyError;
      try {
        const reader = body.stream.getReader();
        readAllBytes(reader, successSteps, errorSteps);
      } catch (e) {
        errorSteps(e);
      }
    }
    function readableStreamClose(controller) {
      try {
        controller.close();
        controller.byobRequest?.respond(0);
      } catch (err) {
        if (!err.message.includes("Controller is already closed") && !err.message.includes("ReadableStream is already closed")) {
          throw err;
        }
      }
    }
    async function readAllBytes(reader, successSteps, failureSteps) {
      try {
        const bytes = [];
        let byteLength = 0;
        do {
          const { done, value: chunk } = await reader.read();
          if (done) {
            successSteps(Buffer.concat(bytes, byteLength));
            return;
          }
          if (!isUint8Array2(chunk)) {
            failureSteps(new TypeError("Received non-Uint8Array chunk"));
            return;
          }
          bytes.push(chunk);
          byteLength += chunk.length;
        } while (true);
      } catch (e) {
        failureSteps(e);
      }
    }
    function urlIsLocal(url7) {
      assert13("protocol" in url7);
      const protocol = url7.protocol;
      return protocol === "about:" || protocol === "blob:" || protocol === "data:";
    }
    function urlHasHttpsScheme(url7) {
      return typeof url7 === "string" && url7[5] === ":" && url7[0] === "h" && url7[1] === "t" && url7[2] === "t" && url7[3] === "p" && url7[4] === "s" || url7.protocol === "https:";
    }
    function urlIsHttpHttpsScheme(url7) {
      assert13("protocol" in url7);
      const protocol = url7.protocol;
      return protocol === "http:" || protocol === "https:";
    }
    function simpleRangeHeaderValue(value, allowWhitespace) {
      const data = value;
      if (!data.startsWith("bytes")) {
        return "failure";
      }
      const position3 = { position: 5 };
      if (allowWhitespace) {
        collectASequenceOfCodePoints(
          (char) => char === "	" || char === " ",
          data,
          position3
        );
      }
      if (data.charCodeAt(position3.position) !== 61) {
        return "failure";
      }
      position3.position++;
      if (allowWhitespace) {
        collectASequenceOfCodePoints(
          (char) => char === "	" || char === " ",
          data,
          position3
        );
      }
      const rangeStart = collectASequenceOfCodePoints(
        (char) => {
          const code = char.charCodeAt(0);
          return code >= 48 && code <= 57;
        },
        data,
        position3
      );
      const rangeStartValue = rangeStart.length ? Number(rangeStart) : null;
      if (allowWhitespace) {
        collectASequenceOfCodePoints(
          (char) => char === "	" || char === " ",
          data,
          position3
        );
      }
      if (data.charCodeAt(position3.position) !== 45) {
        return "failure";
      }
      position3.position++;
      if (allowWhitespace) {
        collectASequenceOfCodePoints(
          (char) => char === "	" || char === " ",
          data,
          position3
        );
      }
      const rangeEnd = collectASequenceOfCodePoints(
        (char) => {
          const code = char.charCodeAt(0);
          return code >= 48 && code <= 57;
        },
        data,
        position3
      );
      const rangeEndValue = rangeEnd.length ? Number(rangeEnd) : null;
      if (position3.position < data.length) {
        return "failure";
      }
      if (rangeEndValue === null && rangeStartValue === null) {
        return "failure";
      }
      if (rangeStartValue > rangeEndValue) {
        return "failure";
      }
      return { rangeStartValue, rangeEndValue };
    }
    function buildContentRange(rangeStart, rangeEnd, fullLength) {
      let contentRange = "bytes ";
      contentRange += isomorphicEncode(`${rangeStart}`);
      contentRange += "-";
      contentRange += isomorphicEncode(`${rangeEnd}`);
      contentRange += "/";
      contentRange += isomorphicEncode(`${fullLength}`);
      return contentRange;
    }
    var InflateStream = class extends Transform2 {
      #zlibOptions;
      /** @param {zlib.ZlibOptions} [zlibOptions] */
      constructor(zlibOptions) {
        super();
        this.#zlibOptions = zlibOptions;
      }
      _transform(chunk, encoding, callback2) {
        if (!this._inflateStream) {
          if (chunk.length === 0) {
            callback2();
            return;
          }
          this._inflateStream = (chunk[0] & 15) === 8 ? zlib.createInflate(this.#zlibOptions) : zlib.createInflateRaw(this.#zlibOptions);
          this._inflateStream.on("data", this.push.bind(this));
          this._inflateStream.on("end", () => this.push(null));
          this._inflateStream.on("error", (err) => this.destroy(err));
        }
        this._inflateStream.write(chunk, encoding, callback2);
      }
      _final(callback2) {
        if (this._inflateStream) {
          this._inflateStream.end();
          this._inflateStream = null;
        }
        callback2();
      }
    };
    function createInflate(zlibOptions) {
      return new InflateStream(zlibOptions);
    }
    function extractMimeType(headers) {
      let charset = null;
      let essence = null;
      let mimeType = null;
      const values = getDecodeSplit("content-type", headers);
      if (values === null) {
        return "failure";
      }
      for (const value of values) {
        const temporaryMimeType = parseMIMEType(value);
        if (temporaryMimeType === "failure" || temporaryMimeType.essence === "*/*") {
          continue;
        }
        mimeType = temporaryMimeType;
        if (mimeType.essence !== essence) {
          charset = null;
          if (mimeType.parameters.has("charset")) {
            charset = mimeType.parameters.get("charset");
          }
          essence = mimeType.essence;
        } else if (!mimeType.parameters.has("charset") && charset !== null) {
          mimeType.parameters.set("charset", charset);
        }
      }
      if (mimeType == null) {
        return "failure";
      }
      return mimeType;
    }
    function gettingDecodingSplitting(value) {
      const input = value;
      const position3 = { position: 0 };
      const values = [];
      let temporaryValue = "";
      while (position3.position < input.length) {
        temporaryValue += collectASequenceOfCodePoints(
          (char) => char !== '"' && char !== ",",
          input,
          position3
        );
        if (position3.position < input.length) {
          if (input.charCodeAt(position3.position) === 34) {
            temporaryValue += collectAnHTTPQuotedString(
              input,
              position3
            );
            if (position3.position < input.length) {
              continue;
            }
          } else {
            assert13(input.charCodeAt(position3.position) === 44);
            position3.position++;
          }
        }
        temporaryValue = removeChars(temporaryValue, true, true, (char) => char === 9 || char === 32);
        values.push(temporaryValue);
        temporaryValue = "";
      }
      return values;
    }
    function getDecodeSplit(name, list2) {
      const value = list2.get(name, true);
      if (value === null) {
        return null;
      }
      return gettingDecodingSplitting(value);
    }
    function hasAuthenticationEntry(request) {
      return false;
    }
    function includesCredentials(url7) {
      return !!(url7.username || url7.password);
    }
    function isTraversableNavigable(navigable) {
      return navigable != null && navigable !== "client" && navigable !== "no-traversable";
    }
    var EnvironmentSettingsObjectBase = class {
      get baseUrl() {
        return getGlobalOrigin();
      }
      get origin() {
        return this.baseUrl?.origin;
      }
      policyContainer = makePolicyContainer();
    };
    var EnvironmentSettingsObject = class {
      settingsObject = new EnvironmentSettingsObjectBase();
    };
    var environmentSettingsObject = new EnvironmentSettingsObject();
    module2.exports = {
      isAborted,
      isCancelled,
      isValidEncodedURL,
      ReadableStreamFrom,
      tryUpgradeRequestToAPotentiallyTrustworthyURL,
      clampAndCoarsenConnectionTimingInfo,
      coarsenedSharedCurrentTime,
      determineRequestsReferrer,
      makePolicyContainer,
      clonePolicyContainer,
      appendFetchMetadata,
      appendRequestOriginHeader,
      TAOCheck,
      corsCheck,
      crossOriginResourcePolicyCheck,
      createOpaqueTimingInfo,
      setRequestReferrerPolicyOnRedirect,
      isValidHTTPToken,
      requestBadPort,
      requestCurrentURL,
      responseURL,
      responseLocationURL,
      isURLPotentiallyTrustworthy,
      isValidReasonPhrase,
      sameOrigin,
      normalizeMethod,
      iteratorMixin,
      createIterator,
      isValidHeaderName,
      isValidHeaderValue,
      isErrorLike,
      fullyReadBody,
      readableStreamClose,
      urlIsLocal,
      urlHasHttpsScheme,
      urlIsHttpHttpsScheme,
      readAllBytes,
      simpleRangeHeaderValue,
      buildContentRange,
      createInflate,
      extractMimeType,
      getDecodeSplit,
      environmentSettingsObject,
      isOriginIPPotentiallyTrustworthy,
      hasAuthenticationEntry,
      includesCredentials,
      isTraversableNavigable
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/fetch/formdata.js
var require_formdata = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/fetch/formdata.js"(exports2, module2) {
    "use strict";
    var { iteratorMixin } = require_util7();
    var { kEnumerableProperty } = require_util6();
    var { webidl } = require_webidl();
    var nodeUtil = __require("node:util");
    var FormData = class _FormData {
      #state = [];
      constructor(form = void 0) {
        webidl.util.markAsUncloneable(this);
        if (form !== void 0) {
          throw webidl.errors.conversionFailed({
            prefix: "FormData constructor",
            argument: "Argument 1",
            types: ["undefined"]
          });
        }
      }
      append(name, value, filename = void 0) {
        webidl.brandCheck(this, _FormData);
        const prefix = "FormData.append";
        webidl.argumentLengthCheck(arguments, 2, prefix);
        name = webidl.converters.USVString(name);
        if (arguments.length === 3 || webidl.is.Blob(value)) {
          value = webidl.converters.Blob(value, prefix, "value");
          if (filename !== void 0) {
            filename = webidl.converters.USVString(filename);
          }
        } else {
          value = webidl.converters.USVString(value);
        }
        const entry = makeEntry(name, value, filename);
        this.#state.push(entry);
      }
      delete(name) {
        webidl.brandCheck(this, _FormData);
        const prefix = "FormData.delete";
        webidl.argumentLengthCheck(arguments, 1, prefix);
        name = webidl.converters.USVString(name);
        this.#state = this.#state.filter((entry) => entry.name !== name);
      }
      get(name) {
        webidl.brandCheck(this, _FormData);
        const prefix = "FormData.get";
        webidl.argumentLengthCheck(arguments, 1, prefix);
        name = webidl.converters.USVString(name);
        const idx = this.#state.findIndex((entry) => entry.name === name);
        if (idx === -1) {
          return null;
        }
        return this.#state[idx].value;
      }
      getAll(name) {
        webidl.brandCheck(this, _FormData);
        const prefix = "FormData.getAll";
        webidl.argumentLengthCheck(arguments, 1, prefix);
        name = webidl.converters.USVString(name);
        return this.#state.filter((entry) => entry.name === name).map((entry) => entry.value);
      }
      has(name) {
        webidl.brandCheck(this, _FormData);
        const prefix = "FormData.has";
        webidl.argumentLengthCheck(arguments, 1, prefix);
        name = webidl.converters.USVString(name);
        return this.#state.findIndex((entry) => entry.name === name) !== -1;
      }
      set(name, value, filename = void 0) {
        webidl.brandCheck(this, _FormData);
        const prefix = "FormData.set";
        webidl.argumentLengthCheck(arguments, 2, prefix);
        name = webidl.converters.USVString(name);
        if (arguments.length === 3 || webidl.is.Blob(value)) {
          value = webidl.converters.Blob(value, prefix, "value");
          if (filename !== void 0) {
            filename = webidl.converters.USVString(filename);
          }
        } else {
          value = webidl.converters.USVString(value);
        }
        const entry = makeEntry(name, value, filename);
        const idx = this.#state.findIndex((entry2) => entry2.name === name);
        if (idx !== -1) {
          this.#state = [
            ...this.#state.slice(0, idx),
            entry,
            ...this.#state.slice(idx + 1).filter((entry2) => entry2.name !== name)
          ];
        } else {
          this.#state.push(entry);
        }
      }
      [nodeUtil.inspect.custom](depth, options) {
        const state = this.#state.reduce((a2, b) => {
          if (a2[b.name]) {
            if (Array.isArray(a2[b.name])) {
              a2[b.name].push(b.value);
            } else {
              a2[b.name] = [a2[b.name], b.value];
            }
          } else {
            a2[b.name] = b.value;
          }
          return a2;
        }, { __proto__: null });
        options.depth ??= depth;
        options.colors ??= true;
        const output = nodeUtil.formatWithOptions(options, state);
        return `FormData ${output.slice(output.indexOf("]") + 2)}`;
      }
      /**
       * @param {FormData} formData
       */
      static getFormDataState(formData) {
        return formData.#state;
      }
      /**
       * @param {FormData} formData
       * @param {any[]} newState
       */
      static setFormDataState(formData, newState) {
        formData.#state = newState;
      }
    };
    var { getFormDataState, setFormDataState } = FormData;
    Reflect.deleteProperty(FormData, "getFormDataState");
    Reflect.deleteProperty(FormData, "setFormDataState");
    iteratorMixin("FormData", FormData, getFormDataState, "name", "value");
    Object.defineProperties(FormData.prototype, {
      append: kEnumerableProperty,
      delete: kEnumerableProperty,
      get: kEnumerableProperty,
      getAll: kEnumerableProperty,
      has: kEnumerableProperty,
      set: kEnumerableProperty,
      [Symbol.toStringTag]: {
        value: "FormData",
        configurable: true
      }
    });
    function makeEntry(name, value, filename) {
      if (typeof value === "string") {
      } else {
        if (!webidl.is.File(value)) {
          value = new File([value], "blob", { type: value.type });
        }
        if (filename !== void 0) {
          const options = {
            type: value.type,
            lastModified: value.lastModified
          };
          value = new File([value], filename, options);
        }
      }
      return { name, value };
    }
    webidl.is.FormData = webidl.util.MakeTypeAssertion(FormData);
    module2.exports = { FormData, makeEntry, setFormDataState };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/fetch/formdata-parser.js
var require_formdata_parser = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/fetch/formdata-parser.js"(exports2, module2) {
    "use strict";
    var { bufferToLowerCasedHeaderName } = require_util6();
    var { HTTP_TOKEN_CODEPOINTS } = require_data_url();
    var { makeEntry } = require_formdata();
    var { webidl } = require_webidl();
    var assert13 = __require("node:assert");
    var { isomorphicDecode } = require_infra();
    var dd = Buffer.from("--");
    var decoder2 = new TextDecoder();
    var decoderIgnoreBOM = new TextDecoder("utf-8", { ignoreBOM: true });
    function isAsciiString(chars) {
      for (let i2 = 0; i2 < chars.length; ++i2) {
        if ((chars.charCodeAt(i2) & ~127) !== 0) {
          return false;
        }
      }
      return true;
    }
    function validateBoundary(boundary) {
      const length = boundary.length;
      if (length < 27 || length > 70) {
        return false;
      }
      for (let i2 = 0; i2 < length; ++i2) {
        const cp = boundary.charCodeAt(i2);
        if (!(cp >= 48 && cp <= 57 || cp >= 65 && cp <= 90 || cp >= 97 && cp <= 122 || cp === 39 || cp === 45 || cp === 95)) {
          return false;
        }
      }
      return true;
    }
    function multipartFormDataParser(input, mimeType) {
      assert13(mimeType !== "failure" && mimeType.essence === "multipart/form-data");
      const boundaryString = mimeType.parameters.get("boundary");
      if (boundaryString === void 0) {
        throw parsingError("missing boundary in content-type header");
      }
      const boundary = Buffer.from(`--${boundaryString}`, "utf8");
      const entryList = [];
      const position3 = { position: 0 };
      const firstBoundaryIndex = input.indexOf(boundary);
      if (firstBoundaryIndex === -1) {
        throw parsingError("no boundary found in multipart body");
      }
      position3.position = firstBoundaryIndex;
      while (true) {
        if (input.subarray(position3.position, position3.position + boundary.length).equals(boundary)) {
          position3.position += boundary.length;
        } else {
          throw parsingError("expected a value starting with -- and the boundary");
        }
        if (bufferStartsWith(input, dd, position3)) {
          return entryList;
        }
        if (input[position3.position] !== 13 || input[position3.position + 1] !== 10) {
          throw parsingError("expected CRLF");
        }
        position3.position += 2;
        const result2 = parseMultipartFormDataHeaders(input, position3);
        let { name, filename, contentType, encoding } = result2;
        position3.position += 2;
        let body;
        {
          const boundaryIndex = input.indexOf(boundary.subarray(2), position3.position);
          if (boundaryIndex === -1) {
            throw parsingError("expected boundary after body");
          }
          body = input.subarray(position3.position, boundaryIndex - 4);
          position3.position += body.length;
          if (encoding === "base64") {
            body = Buffer.from(body.toString(), "base64");
          }
        }
        if (input[position3.position] !== 13 || input[position3.position + 1] !== 10) {
          throw parsingError("expected CRLF");
        } else {
          position3.position += 2;
        }
        let value;
        if (filename !== null) {
          contentType ??= "text/plain";
          if (!isAsciiString(contentType)) {
            contentType = "";
          }
          value = new File([body], filename, { type: contentType });
        } else {
          value = decoderIgnoreBOM.decode(Buffer.from(body));
        }
        assert13(webidl.is.USVString(name));
        assert13(typeof value === "string" && webidl.is.USVString(value) || webidl.is.File(value));
        entryList.push(makeEntry(name, value, filename));
      }
    }
    function parseContentDispositionAttribute(input, position3) {
      if (input[position3.position] === 59) {
        position3.position++;
      }
      collectASequenceOfBytes(
        (char) => char === 32 || char === 9,
        input,
        position3
      );
      const attributeName = collectASequenceOfBytes(
        (char) => isToken(char) && char !== 61 && char !== 42,
        // not = or *
        input,
        position3
      );
      if (attributeName.length === 0) {
        return null;
      }
      const attrNameStr = attributeName.toString("ascii").toLowerCase();
      const isExtended = input[position3.position] === 42;
      if (isExtended) {
        position3.position++;
      }
      if (input[position3.position] !== 61) {
        return null;
      }
      position3.position++;
      collectASequenceOfBytes(
        (char) => char === 32 || char === 9,
        input,
        position3
      );
      let value;
      if (isExtended) {
        const headerValue = collectASequenceOfBytes(
          (char) => char !== 32 && char !== 13 && char !== 10 && char !== 59,
          // not space, CRLF, or ;
          input,
          position3
        );
        if (headerValue[0] !== 117 && headerValue[0] !== 85 || // u or U
        headerValue[1] !== 116 && headerValue[1] !== 84 || // t or T
        headerValue[2] !== 102 && headerValue[2] !== 70 || // f or F
        headerValue[3] !== 45 || // -
        headerValue[4] !== 56) {
          throw parsingError("unknown encoding, expected utf-8''");
        }
        value = decodeURIComponent(decoder2.decode(headerValue.subarray(7)));
      } else if (input[position3.position] === 34) {
        position3.position++;
        const quotedValue = collectASequenceOfBytes(
          (char) => char !== 10 && char !== 13 && char !== 34,
          // not LF, CR, or "
          input,
          position3
        );
        if (input[position3.position] !== 34) {
          throw parsingError("Closing quote not found");
        }
        position3.position++;
        value = decoder2.decode(quotedValue).replace(/%0A/ig, "\n").replace(/%0D/ig, "\r").replace(/%22/g, '"');
      } else {
        const tokenValue = collectASequenceOfBytes(
          (char) => isToken(char) && char !== 59,
          // not ;
          input,
          position3
        );
        value = decoder2.decode(tokenValue);
      }
      return { name: attrNameStr, value };
    }
    function parseMultipartFormDataHeaders(input, position3) {
      let name = null;
      let filename = null;
      let contentType = null;
      let encoding = null;
      while (true) {
        if (input[position3.position] === 13 && input[position3.position + 1] === 10) {
          if (name === null) {
            throw parsingError("header name is null");
          }
          return { name, filename, contentType, encoding };
        }
        let headerName = collectASequenceOfBytes(
          (char) => char !== 10 && char !== 13 && char !== 58,
          input,
          position3
        );
        headerName = removeChars(headerName, true, true, (char) => char === 9 || char === 32);
        if (!HTTP_TOKEN_CODEPOINTS.test(headerName.toString())) {
          throw parsingError("header name does not match the field-name token production");
        }
        if (input[position3.position] !== 58) {
          throw parsingError("expected :");
        }
        position3.position++;
        collectASequenceOfBytes(
          (char) => char === 32 || char === 9,
          input,
          position3
        );
        switch (bufferToLowerCasedHeaderName(headerName)) {
          case "content-disposition": {
            name = filename = null;
            const dispositionType = collectASequenceOfBytes(
              (char) => isToken(char),
              input,
              position3
            );
            if (dispositionType.toString("ascii").toLowerCase() !== "form-data") {
              throw parsingError("expected form-data for content-disposition header");
            }
            while (position3.position < input.length && input[position3.position] !== 13 && input[position3.position + 1] !== 10) {
              const attribute = parseContentDispositionAttribute(input, position3);
              if (!attribute) {
                break;
              }
              if (attribute.name === "name") {
                name = attribute.value;
              } else if (attribute.name === "filename") {
                filename = attribute.value;
              }
            }
            if (name === null) {
              throw parsingError("name attribute is required in content-disposition header");
            }
            break;
          }
          case "content-type": {
            let headerValue = collectASequenceOfBytes(
              (char) => char !== 10 && char !== 13,
              input,
              position3
            );
            headerValue = removeChars(headerValue, false, true, (char) => char === 9 || char === 32);
            contentType = isomorphicDecode(headerValue);
            break;
          }
          case "content-transfer-encoding": {
            let headerValue = collectASequenceOfBytes(
              (char) => char !== 10 && char !== 13,
              input,
              position3
            );
            headerValue = removeChars(headerValue, false, true, (char) => char === 9 || char === 32);
            encoding = isomorphicDecode(headerValue);
            break;
          }
          default: {
            collectASequenceOfBytes(
              (char) => char !== 10 && char !== 13,
              input,
              position3
            );
          }
        }
        if (input[position3.position] !== 13 && input[position3.position + 1] !== 10) {
          throw parsingError("expected CRLF");
        } else {
          position3.position += 2;
        }
      }
    }
    function collectASequenceOfBytes(condition, input, position3) {
      let start = position3.position;
      while (start < input.length && condition(input[start])) {
        ++start;
      }
      return input.subarray(position3.position, position3.position = start);
    }
    function removeChars(buf, leading, trailing, predicate) {
      let lead = 0;
      let trail = buf.length - 1;
      if (leading) {
        while (lead < buf.length && predicate(buf[lead])) lead++;
      }
      if (trailing) {
        while (trail > 0 && predicate(buf[trail])) trail--;
      }
      return lead === 0 && trail === buf.length - 1 ? buf : buf.subarray(lead, trail + 1);
    }
    function bufferStartsWith(buffer3, start, position3) {
      if (buffer3.length < start.length) {
        return false;
      }
      for (let i2 = 0; i2 < start.length; i2++) {
        if (start[i2] !== buffer3[position3.position + i2]) {
          return false;
        }
      }
      return true;
    }
    function parsingError(cause) {
      return new TypeError("Failed to parse body as FormData.", { cause: new TypeError(cause) });
    }
    function isCTL(char) {
      return char <= 31 || char === 127;
    }
    function isTSpecial(char) {
      return char === 40 || // (
      char === 41 || // )
      char === 60 || // <
      char === 62 || // >
      char === 64 || // @
      char === 44 || // ,
      char === 59 || // ;
      char === 58 || // :
      char === 92 || // \
      char === 34 || // "
      char === 47 || // /
      char === 91 || // [
      char === 93 || // ]
      char === 63 || // ?
      char === 61;
    }
    function isToken(char) {
      return char <= 127 && // ascii
      char !== 32 && // space
      char !== 9 && !isCTL(char) && !isTSpecial(char);
    }
    module2.exports = {
      multipartFormDataParser,
      validateBoundary
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/util/promise.js
var require_promise = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/util/promise.js"(exports2, module2) {
    "use strict";
    function createDeferredPromise() {
      let res;
      let rej;
      const promise2 = new Promise((resolve3, reject3) => {
        res = resolve3;
        rej = reject3;
      });
      return { promise: promise2, resolve: res, reject: rej };
    }
    module2.exports = {
      createDeferredPromise
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/fetch/body.js
var require_body = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/fetch/body.js"(exports2, module2) {
    "use strict";
    var util56 = require_util6();
    var {
      ReadableStreamFrom,
      readableStreamClose,
      fullyReadBody,
      extractMimeType
    } = require_util7();
    var { FormData, setFormDataState } = require_formdata();
    var { webidl } = require_webidl();
    var assert13 = __require("node:assert");
    var { isErrored, isDisturbed } = __require("node:stream");
    var { isUint8Array: isUint8Array2 } = __require("node:util/types");
    var { serializeAMimeType } = require_data_url();
    var { multipartFormDataParser } = require_formdata_parser();
    var { createDeferredPromise } = require_promise();
    var { parseJSONFromBytes } = require_infra();
    var { utf8DecodeBytes } = require_encoding();
    var { runtimeFeatures } = require_runtime_features();
    var random = runtimeFeatures.has("crypto") ? __require("node:crypto").randomInt : (max3) => Math.floor(Math.random() * max3);
    var textEncoder5 = new TextEncoder();
    function noop5() {
    }
    var streamRegistry = new FinalizationRegistry((weakRef) => {
      const stream2 = weakRef.deref();
      if (stream2 && !stream2.locked && !isDisturbed(stream2) && !isErrored(stream2)) {
        stream2.cancel("Response object has been garbage collected").catch(noop5);
      }
    });
    function extractBody(object, keepalive = false) {
      let stream2 = null;
      let controller = null;
      if (webidl.is.ReadableStream(object)) {
        stream2 = object;
      } else if (webidl.is.Blob(object)) {
        stream2 = object.stream();
      } else {
        stream2 = new ReadableStream({
          pull() {
          },
          start(c3) {
            controller = c3;
          },
          cancel() {
          },
          type: "bytes"
        });
      }
      assert13(webidl.is.ReadableStream(stream2));
      let action = null;
      let source = null;
      let length = null;
      let type4 = null;
      if (typeof object === "string") {
        source = object;
        type4 = "text/plain;charset=UTF-8";
      } else if (webidl.is.URLSearchParams(object)) {
        source = object.toString();
        type4 = "application/x-www-form-urlencoded;charset=UTF-8";
      } else if (webidl.is.BufferSource(object)) {
        source = webidl.util.getCopyOfBytesHeldByBufferSource(object);
      } else if (webidl.is.FormData(object)) {
        const boundary = `----formdata-undici-0${`${random(1e11)}`.padStart(11, "0")}`;
        const prefix = `--${boundary}\r
Content-Disposition: form-data`;
        const formdataEscape = (str2) => str2.replace(/\n/g, "%0A").replace(/\r/g, "%0D").replace(/"/g, "%22");
        const normalizeLinefeeds = (value) => value.replace(/\r?\n|\r/g, "\r\n");
        const blobParts = [];
        const rn = new Uint8Array([13, 10]);
        length = 0;
        let hasUnknownSizeValue = false;
        for (const [name, value] of object) {
          if (typeof value === "string") {
            const chunk2 = textEncoder5.encode(prefix + `; name="${formdataEscape(normalizeLinefeeds(name))}"\r
\r
${normalizeLinefeeds(value)}\r
`);
            blobParts.push(chunk2);
            length += chunk2.byteLength;
          } else {
            const chunk2 = textEncoder5.encode(`${prefix}; name="${formdataEscape(normalizeLinefeeds(name))}"` + (value.name ? `; filename="${formdataEscape(value.name)}"` : "") + `\r
Content-Type: ${value.type || "application/octet-stream"}\r
\r
`);
            blobParts.push(chunk2, value, rn);
            if (typeof value.size === "number") {
              length += chunk2.byteLength + value.size + rn.byteLength;
            } else {
              hasUnknownSizeValue = true;
            }
          }
        }
        const chunk = textEncoder5.encode(`--${boundary}--\r
`);
        blobParts.push(chunk);
        length += chunk.byteLength;
        if (hasUnknownSizeValue) {
          length = null;
        }
        source = object;
        action = async function* () {
          for (const part of blobParts) {
            if (part.stream) {
              yield* part.stream();
            } else {
              yield part;
            }
          }
        };
        type4 = `multipart/form-data; boundary=${boundary}`;
      } else if (webidl.is.Blob(object)) {
        source = object;
        length = object.size;
        if (object.type) {
          type4 = object.type;
        }
      } else if (typeof object[Symbol.asyncIterator] === "function") {
        if (keepalive) {
          throw new TypeError("keepalive");
        }
        if (util56.isDisturbed(object) || object.locked) {
          throw new TypeError(
            "Response body object should not be disturbed or locked"
          );
        }
        stream2 = webidl.is.ReadableStream(object) ? object : ReadableStreamFrom(object);
      }
      if (typeof source === "string" || isUint8Array2(source)) {
        action = () => {
          length = typeof source === "string" ? Buffer.byteLength(source) : source.length;
          return source;
        };
      }
      if (action != null) {
        ;
        (async () => {
          const result2 = action();
          const iterator = result2?.[Symbol.asyncIterator]?.();
          if (iterator) {
            for await (const bytes of iterator) {
              if (isErrored(stream2)) break;
              if (bytes.length) {
                controller.enqueue(new Uint8Array(bytes));
              }
            }
          } else if (result2?.length && !isErrored(stream2)) {
            controller.enqueue(typeof result2 === "string" ? textEncoder5.encode(result2) : new Uint8Array(result2));
          }
          queueMicrotask(() => readableStreamClose(controller));
        })();
      }
      const body = { stream: stream2, source, length };
      return [body, type4];
    }
    function safelyExtractBody(object, keepalive = false) {
      if (webidl.is.ReadableStream(object)) {
        assert13(!util56.isDisturbed(object), "The body has already been consumed.");
        assert13(!object.locked, "The stream is locked.");
      }
      return extractBody(object, keepalive);
    }
    function cloneBody(body) {
      const { 0: out1, 1: out2 } = body.stream.tee();
      body.stream = out1;
      return {
        stream: out2,
        length: body.length,
        source: body.source
      };
    }
    function bodyMixinMethods(instance, getInternalState) {
      const methods = {
        blob() {
          return consumeBody(this, (bytes) => {
            let mimeType = bodyMimeType(getInternalState(this));
            if (mimeType === null) {
              mimeType = "";
            } else if (mimeType) {
              mimeType = serializeAMimeType(mimeType);
            }
            return new Blob([bytes], { type: mimeType });
          }, instance, getInternalState);
        },
        arrayBuffer() {
          return consumeBody(this, (bytes) => {
            return new Uint8Array(bytes).buffer;
          }, instance, getInternalState);
        },
        text() {
          return consumeBody(this, utf8DecodeBytes, instance, getInternalState);
        },
        json() {
          return consumeBody(this, parseJSONFromBytes, instance, getInternalState);
        },
        formData() {
          return consumeBody(this, (value) => {
            const mimeType = bodyMimeType(getInternalState(this));
            if (mimeType !== null) {
              switch (mimeType.essence) {
                case "multipart/form-data": {
                  const parsed = multipartFormDataParser(value, mimeType);
                  const fd = new FormData();
                  setFormDataState(fd, parsed);
                  return fd;
                }
                case "application/x-www-form-urlencoded": {
                  const entries = new URLSearchParams(value.toString());
                  const fd = new FormData();
                  for (const [name, value2] of entries) {
                    fd.append(name, value2);
                  }
                  return fd;
                }
              }
            }
            throw new TypeError(
              'Content-Type was not one of "multipart/form-data" or "application/x-www-form-urlencoded".'
            );
          }, instance, getInternalState);
        },
        bytes() {
          return consumeBody(this, (bytes) => {
            return new Uint8Array(bytes);
          }, instance, getInternalState);
        }
      };
      return methods;
    }
    function mixinBody(prototype, getInternalState) {
      Object.assign(prototype.prototype, bodyMixinMethods(prototype, getInternalState));
    }
    function consumeBody(object, convertBytesToJSValue, instance, getInternalState) {
      try {
        webidl.brandCheck(object, instance);
      } catch (e) {
        return Promise.reject(e);
      }
      object = getInternalState(object);
      if (bodyUnusable(object)) {
        return Promise.reject(new TypeError("Body is unusable: Body has already been read"));
      }
      const promise2 = createDeferredPromise();
      const errorSteps = promise2.reject;
      const successSteps = (data) => {
        try {
          promise2.resolve(convertBytesToJSValue(data));
        } catch (e) {
          errorSteps(e);
        }
      };
      if (object.body == null) {
        successSteps(Buffer.allocUnsafe(0));
        return promise2.promise;
      }
      fullyReadBody(object.body, successSteps, errorSteps);
      return promise2.promise;
    }
    function bodyUnusable(object) {
      const body = object.body;
      return body != null && (body.stream.locked || util56.isDisturbed(body.stream));
    }
    function bodyMimeType(requestOrResponse) {
      const headers = requestOrResponse.headersList;
      const mimeType = extractMimeType(headers);
      if (mimeType === "failure") {
        return null;
      }
      return mimeType;
    }
    module2.exports = {
      extractBody,
      safelyExtractBody,
      cloneBody,
      mixinBody,
      streamRegistry,
      bodyUnusable
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/dispatcher/client-h1.js
var require_client_h1 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/dispatcher/client-h1.js"(exports2, module2) {
    "use strict";
    var assert13 = __require("node:assert");
    var util56 = require_util6();
    var { channels } = require_diagnostics();
    var timers = require_timers();
    var {
      RequestContentLengthMismatchError,
      ResponseContentLengthMismatchError,
      RequestAbortedError,
      HeadersTimeoutError,
      HeadersOverflowError,
      SocketError,
      InformationalError,
      BodyTimeoutError,
      HTTPParserError,
      ResponseExceededMaxSizeError
    } = require_errors5();
    var {
      kUrl,
      kReset,
      kClient,
      kParser,
      kBlocking,
      kRunning,
      kPending,
      kSize,
      kWriting,
      kQueue,
      kNoRef,
      kKeepAliveDefaultTimeout,
      kHostHeader,
      kPendingIdx,
      kRunningIdx,
      kError,
      kPipelining,
      kSocket,
      kKeepAliveTimeoutValue,
      kMaxHeadersSize,
      kKeepAliveMaxTimeout,
      kKeepAliveTimeoutThreshold,
      kHeadersTimeout,
      kBodyTimeout,
      kStrictContentLength,
      kMaxRequests,
      kCounter,
      kMaxResponseSize,
      kOnError,
      kResume,
      kHTTPContext,
      kClosed
    } = require_symbols();
    var constants5 = require_constants13();
    var EMPTY_BUF = Buffer.alloc(0);
    var FastBuffer = Buffer[Symbol.species];
    var removeAllListeners = util56.removeAllListeners;
    var extractBody;
    function lazyllhttp() {
      const llhttpWasmData = process.env.JEST_WORKER_ID ? require_llhttp_wasm() : void 0;
      let mod;
      let useWasmSIMD = process.arch !== "ppc64";
      if (process.env.UNDICI_NO_WASM_SIMD === "1") {
        useWasmSIMD = true;
      } else if (process.env.UNDICI_NO_WASM_SIMD === "0") {
        useWasmSIMD = false;
      }
      if (useWasmSIMD) {
        try {
          mod = new WebAssembly.Module(require_llhttp_simd_wasm());
        } catch {
        }
      }
      if (!mod) {
        mod = new WebAssembly.Module(llhttpWasmData || require_llhttp_wasm());
      }
      return new WebAssembly.Instance(mod, {
        env: {
          /**
           * @param {number} p
           * @param {number} at
           * @param {number} len
           * @returns {number}
           */
          wasm_on_url: (p, at, len) => {
            return 0;
          },
          /**
           * @param {number} p
           * @param {number} at
           * @param {number} len
           * @returns {number}
           */
          wasm_on_status: (p, at, len) => {
            assert13(currentParser.ptr === p);
            const start = at - currentBufferPtr + currentBufferRef.byteOffset;
            return currentParser.onStatus(new FastBuffer(currentBufferRef.buffer, start, len));
          },
          /**
           * @param {number} p
           * @returns {number}
           */
          wasm_on_message_begin: (p) => {
            assert13(currentParser.ptr === p);
            return currentParser.onMessageBegin();
          },
          /**
           * @param {number} p
           * @param {number} at
           * @param {number} len
           * @returns {number}
           */
          wasm_on_header_field: (p, at, len) => {
            assert13(currentParser.ptr === p);
            const start = at - currentBufferPtr + currentBufferRef.byteOffset;
            return currentParser.onHeaderField(new FastBuffer(currentBufferRef.buffer, start, len));
          },
          /**
           * @param {number} p
           * @param {number} at
           * @param {number} len
           * @returns {number}
           */
          wasm_on_header_value: (p, at, len) => {
            assert13(currentParser.ptr === p);
            const start = at - currentBufferPtr + currentBufferRef.byteOffset;
            return currentParser.onHeaderValue(new FastBuffer(currentBufferRef.buffer, start, len));
          },
          /**
           * @param {number} p
           * @param {number} statusCode
           * @param {0|1} upgrade
           * @param {0|1} shouldKeepAlive
           * @returns {number}
           */
          wasm_on_headers_complete: (p, statusCode, upgrade, shouldKeepAlive) => {
            assert13(currentParser.ptr === p);
            return currentParser.onHeadersComplete(statusCode, upgrade === 1, shouldKeepAlive === 1);
          },
          /**
           * @param {number} p
           * @param {number} at
           * @param {number} len
           * @returns {number}
           */
          wasm_on_body: (p, at, len) => {
            assert13(currentParser.ptr === p);
            const start = at - currentBufferPtr + currentBufferRef.byteOffset;
            return currentParser.onBody(new FastBuffer(currentBufferRef.buffer, start, len));
          },
          /**
           * @param {number} p
           * @returns {number}
           */
          wasm_on_message_complete: (p) => {
            assert13(currentParser.ptr === p);
            return currentParser.onMessageComplete();
          }
        }
      });
    }
    var llhttpInstance = null;
    var currentParser = null;
    var currentBufferRef = null;
    var currentBufferSize = 0;
    var currentBufferPtr = null;
    var USE_NATIVE_TIMER = 0;
    var USE_FAST_TIMER = 1;
    var TIMEOUT_HEADERS = 2 | USE_FAST_TIMER;
    var TIMEOUT_BODY = 4 | USE_FAST_TIMER;
    var TIMEOUT_KEEP_ALIVE = 8 | USE_NATIVE_TIMER;
    var Parser = class {
      /**
         * @param {import('./client.js')} client
         * @param {import('net').Socket} socket
         * @param {*} llhttp
         */
      constructor(client, socket, { exports: exports3 }) {
        this.llhttp = exports3;
        this.ptr = this.llhttp.llhttp_alloc(constants5.TYPE.RESPONSE);
        this.client = client;
        this.socket = socket;
        this.timeout = null;
        this.timeoutValue = null;
        this.timeoutType = null;
        this.statusCode = 0;
        this.statusText = "";
        this.upgrade = false;
        this.headers = [];
        this.headersSize = 0;
        this.headersMaxSize = client[kMaxHeadersSize];
        this.shouldKeepAlive = false;
        this.paused = false;
        this.resume = this.resume.bind(this);
        this.bytesRead = 0;
        this.keepAlive = "";
        this.contentLength = "";
        this.connection = "";
        this.maxResponseSize = client[kMaxResponseSize];
      }
      setTimeout(delay, type4) {
        if (delay !== this.timeoutValue || type4 & USE_FAST_TIMER ^ this.timeoutType & USE_FAST_TIMER) {
          if (this.timeout) {
            timers.clearTimeout(this.timeout);
            this.timeout = null;
          }
          if (delay) {
            if (type4 & USE_FAST_TIMER) {
              this.timeout = timers.setFastTimeout(onParserTimeout, delay, new WeakRef(this));
            } else {
              this.timeout = setTimeout(onParserTimeout, delay, new WeakRef(this));
              this.timeout?.unref();
            }
          }
          this.timeoutValue = delay;
        } else if (this.timeout) {
          if (this.timeout.refresh) {
            this.timeout.refresh();
          }
        }
        this.timeoutType = type4;
      }
      resume() {
        if (this.socket.destroyed || !this.paused) {
          return;
        }
        assert13(this.ptr != null);
        assert13(currentParser === null);
        this.llhttp.llhttp_resume(this.ptr);
        assert13(this.timeoutType === TIMEOUT_BODY);
        if (this.timeout) {
          if (this.timeout.refresh) {
            this.timeout.refresh();
          }
        }
        this.paused = false;
        this.execute(this.socket.read() || EMPTY_BUF);
        this.readMore();
      }
      readMore() {
        while (!this.paused && this.ptr) {
          const chunk = this.socket.read();
          if (chunk === null) {
            break;
          }
          this.execute(chunk);
        }
      }
      /**
       * @param {Buffer} chunk
       */
      execute(chunk) {
        assert13(currentParser === null);
        assert13(this.ptr != null);
        assert13(!this.paused);
        const { socket, llhttp } = this;
        if (chunk.length > currentBufferSize) {
          if (currentBufferPtr) {
            llhttp.free(currentBufferPtr);
          }
          currentBufferSize = Math.ceil(chunk.length / 4096) * 4096;
          currentBufferPtr = llhttp.malloc(currentBufferSize);
        }
        new Uint8Array(llhttp.memory.buffer, currentBufferPtr, currentBufferSize).set(chunk);
        try {
          let ret2;
          try {
            currentBufferRef = chunk;
            currentParser = this;
            ret2 = llhttp.llhttp_execute(this.ptr, currentBufferPtr, chunk.length);
          } finally {
            currentParser = null;
            currentBufferRef = null;
          }
          if (ret2 !== constants5.ERROR.OK) {
            const data = chunk.subarray(llhttp.llhttp_get_error_pos(this.ptr) - currentBufferPtr);
            if (ret2 === constants5.ERROR.PAUSED_UPGRADE) {
              this.onUpgrade(data);
            } else if (ret2 === constants5.ERROR.PAUSED) {
              this.paused = true;
              socket.unshift(data);
            } else {
              const ptr = llhttp.llhttp_get_error_reason(this.ptr);
              let message = "";
              if (ptr) {
                const len = new Uint8Array(llhttp.memory.buffer, ptr).indexOf(0);
                message = "Response does not match the HTTP/1.1 protocol (" + Buffer.from(llhttp.memory.buffer, ptr, len).toString() + ")";
              }
              throw new HTTPParserError(message, constants5.ERROR[ret2], data);
            }
          }
        } catch (err) {
          util56.destroy(socket, err);
        }
      }
      destroy() {
        assert13(currentParser === null);
        assert13(this.ptr != null);
        this.llhttp.llhttp_free(this.ptr);
        this.ptr = null;
        this.timeout && timers.clearTimeout(this.timeout);
        this.timeout = null;
        this.timeoutValue = null;
        this.timeoutType = null;
        this.paused = false;
      }
      /**
       * @param {Buffer} buf
       * @returns {0}
       */
      onStatus(buf) {
        this.statusText = buf.toString();
        return 0;
      }
      /**
       * @returns {0|-1}
       */
      onMessageBegin() {
        const { socket, client } = this;
        if (socket.destroyed) {
          return -1;
        }
        const request = client[kQueue][client[kRunningIdx]];
        if (!request) {
          return -1;
        }
        request.onResponseStarted();
        return 0;
      }
      /**
       * @param {Buffer} buf
       * @returns {number}
       */
      onHeaderField(buf) {
        const len = this.headers.length;
        if ((len & 1) === 0) {
          this.headers.push(buf);
        } else {
          this.headers[len - 1] = Buffer.concat([this.headers[len - 1], buf]);
        }
        this.trackHeader(buf.length);
        return 0;
      }
      /**
       * @param {Buffer} buf
       * @returns {number}
       */
      onHeaderValue(buf) {
        let len = this.headers.length;
        if ((len & 1) === 1) {
          this.headers.push(buf);
          len += 1;
        } else {
          this.headers[len - 1] = Buffer.concat([this.headers[len - 1], buf]);
        }
        const key = this.headers[len - 2];
        if (key.length === 10) {
          const headerName = util56.bufferToLowerCasedHeaderName(key);
          if (headerName === "keep-alive") {
            this.keepAlive += buf.toString();
          } else if (headerName === "connection") {
            this.connection += buf.toString();
          }
        } else if (key.length === 14 && util56.bufferToLowerCasedHeaderName(key) === "content-length") {
          this.contentLength += buf.toString();
        }
        this.trackHeader(buf.length);
        return 0;
      }
      /**
       * @param {number} len
       */
      trackHeader(len) {
        this.headersSize += len;
        if (this.headersSize >= this.headersMaxSize) {
          util56.destroy(this.socket, new HeadersOverflowError());
        }
      }
      /**
       * @param {Buffer} head
       */
      onUpgrade(head2) {
        const { upgrade, client, socket, headers, statusCode } = this;
        assert13(upgrade);
        assert13(client[kSocket] === socket);
        assert13(!socket.destroyed);
        assert13(!this.paused);
        assert13((headers.length & 1) === 0);
        const request = client[kQueue][client[kRunningIdx]];
        assert13(request);
        assert13(request.upgrade || request.method === "CONNECT");
        this.statusCode = 0;
        this.statusText = "";
        this.shouldKeepAlive = false;
        this.headers = [];
        this.headersSize = 0;
        socket.unshift(head2);
        socket[kParser].destroy();
        socket[kParser] = null;
        socket[kClient] = null;
        socket[kError] = null;
        removeAllListeners(socket);
        client[kSocket] = null;
        client[kHTTPContext] = null;
        client[kQueue][client[kRunningIdx]++] = null;
        client.emit("disconnect", client[kUrl], [client], new InformationalError("upgrade"));
        try {
          request.onUpgrade(statusCode, headers, socket);
        } catch (err) {
          util56.destroy(socket, err);
        }
        client[kResume]();
      }
      /**
       * @param {number} statusCode
       * @param {boolean} upgrade
       * @param {boolean} shouldKeepAlive
       * @returns {number}
       */
      onHeadersComplete(statusCode, upgrade, shouldKeepAlive) {
        const { client, socket, headers, statusText } = this;
        if (socket.destroyed) {
          return -1;
        }
        const request = client[kQueue][client[kRunningIdx]];
        if (!request) {
          return -1;
        }
        assert13(!this.upgrade);
        assert13(this.statusCode < 200);
        if (statusCode === 100) {
          util56.destroy(socket, new SocketError("bad response", util56.getSocketInfo(socket)));
          return -1;
        }
        if (upgrade && !request.upgrade) {
          util56.destroy(socket, new SocketError("bad upgrade", util56.getSocketInfo(socket)));
          return -1;
        }
        assert13(this.timeoutType === TIMEOUT_HEADERS);
        this.statusCode = statusCode;
        this.shouldKeepAlive = shouldKeepAlive || // Override llhttp value which does not allow keepAlive for HEAD.
        request.method === "HEAD" && !socket[kReset] && this.connection.toLowerCase() === "keep-alive";
        if (this.statusCode >= 200) {
          const bodyTimeout = request.bodyTimeout != null ? request.bodyTimeout : client[kBodyTimeout];
          this.setTimeout(bodyTimeout, TIMEOUT_BODY);
        } else if (this.timeout) {
          if (this.timeout.refresh) {
            this.timeout.refresh();
          }
        }
        if (request.method === "CONNECT") {
          assert13(client[kRunning] === 1);
          this.upgrade = true;
          return 2;
        }
        if (upgrade) {
          assert13(client[kRunning] === 1);
          this.upgrade = true;
          return 2;
        }
        assert13((this.headers.length & 1) === 0);
        this.headers = [];
        this.headersSize = 0;
        if (this.shouldKeepAlive && client[kPipelining]) {
          const keepAliveTimeout = this.keepAlive ? util56.parseKeepAliveTimeout(this.keepAlive) : null;
          if (keepAliveTimeout != null) {
            const timeout = Math.min(
              keepAliveTimeout - client[kKeepAliveTimeoutThreshold],
              client[kKeepAliveMaxTimeout]
            );
            if (timeout <= 0) {
              socket[kReset] = true;
            } else {
              client[kKeepAliveTimeoutValue] = timeout;
            }
          } else {
            client[kKeepAliveTimeoutValue] = client[kKeepAliveDefaultTimeout];
          }
        } else {
          socket[kReset] = true;
        }
        const pause = request.onHeaders(statusCode, headers, this.resume, statusText) === false;
        if (request.aborted) {
          return -1;
        }
        if (request.method === "HEAD") {
          return 1;
        }
        if (statusCode < 200) {
          return 1;
        }
        if (socket[kBlocking]) {
          socket[kBlocking] = false;
          client[kResume]();
        }
        return pause ? constants5.ERROR.PAUSED : 0;
      }
      /**
       * @param {Buffer} buf
       * @returns {number}
       */
      onBody(buf) {
        const { client, socket, statusCode, maxResponseSize } = this;
        if (socket.destroyed) {
          return -1;
        }
        const request = client[kQueue][client[kRunningIdx]];
        assert13(request);
        assert13(this.timeoutType === TIMEOUT_BODY);
        if (this.timeout) {
          if (this.timeout.refresh) {
            this.timeout.refresh();
          }
        }
        assert13(statusCode >= 200);
        if (maxResponseSize > -1 && this.bytesRead + buf.length > maxResponseSize) {
          util56.destroy(socket, new ResponseExceededMaxSizeError());
          return -1;
        }
        this.bytesRead += buf.length;
        if (request.onData(buf) === false) {
          return constants5.ERROR.PAUSED;
        }
        return 0;
      }
      /**
       * @returns {number}
       */
      onMessageComplete() {
        const { client, socket, statusCode, upgrade, headers, contentLength, bytesRead, shouldKeepAlive } = this;
        if (socket.destroyed && (!statusCode || shouldKeepAlive)) {
          return -1;
        }
        if (upgrade) {
          return 0;
        }
        assert13(statusCode >= 100);
        assert13((this.headers.length & 1) === 0);
        const request = client[kQueue][client[kRunningIdx]];
        assert13(request);
        this.statusCode = 0;
        this.statusText = "";
        this.bytesRead = 0;
        this.contentLength = "";
        this.keepAlive = "";
        this.connection = "";
        this.headers = [];
        this.headersSize = 0;
        if (statusCode < 200) {
          return 0;
        }
        if (request.method !== "HEAD" && contentLength && bytesRead !== parseInt(contentLength, 10)) {
          util56.destroy(socket, new ResponseContentLengthMismatchError());
          return -1;
        }
        request.onComplete(headers);
        client[kQueue][client[kRunningIdx]++] = null;
        if (socket[kWriting]) {
          assert13(client[kRunning] === 0);
          util56.destroy(socket, new InformationalError("reset"));
          return constants5.ERROR.PAUSED;
        } else if (!shouldKeepAlive) {
          util56.destroy(socket, new InformationalError("reset"));
          return constants5.ERROR.PAUSED;
        } else if (socket[kReset] && client[kRunning] === 0) {
          util56.destroy(socket, new InformationalError("reset"));
          return constants5.ERROR.PAUSED;
        } else if (client[kPipelining] == null || client[kPipelining] === 1) {
          setImmediate(client[kResume]);
        } else {
          client[kResume]();
        }
        return 0;
      }
    };
    function onParserTimeout(parserWeakRef) {
      const parser = parserWeakRef.deref();
      if (!parser) {
        return;
      }
      const { socket, timeoutType, client, paused } = parser;
      if (timeoutType === TIMEOUT_HEADERS) {
        if (!socket[kWriting] || socket.writableNeedDrain || client[kRunning] > 1) {
          assert13(!paused, "cannot be paused while waiting for headers");
          util56.destroy(socket, new HeadersTimeoutError());
        }
      } else if (timeoutType === TIMEOUT_BODY) {
        if (!paused) {
          util56.destroy(socket, new BodyTimeoutError());
        }
      } else if (timeoutType === TIMEOUT_KEEP_ALIVE) {
        assert13(client[kRunning] === 0 && client[kKeepAliveTimeoutValue]);
        util56.destroy(socket, new InformationalError("socket idle timeout"));
      }
    }
    function connectH1(client, socket) {
      client[kSocket] = socket;
      if (!llhttpInstance) {
        llhttpInstance = lazyllhttp();
      }
      if (socket.errored) {
        throw socket.errored;
      }
      if (socket.destroyed) {
        throw new SocketError("destroyed");
      }
      socket[kNoRef] = false;
      socket[kWriting] = false;
      socket[kReset] = false;
      socket[kBlocking] = false;
      socket[kParser] = new Parser(client, socket, llhttpInstance);
      util56.addListener(socket, "error", onHttpSocketError);
      util56.addListener(socket, "readable", onHttpSocketReadable);
      util56.addListener(socket, "end", onHttpSocketEnd);
      util56.addListener(socket, "close", onHttpSocketClose);
      socket[kClosed] = false;
      socket.on("close", onSocketClose);
      return {
        version: "h1",
        defaultPipelining: 1,
        write(request) {
          return writeH1(client, request);
        },
        resume() {
          resumeH1(client);
        },
        /**
         * @param {Error|undefined} err
         * @param {() => void} callback
         */
        destroy(err, callback2) {
          if (socket[kClosed]) {
            queueMicrotask(callback2);
          } else {
            socket.on("close", callback2);
            socket.destroy(err);
          }
        },
        /**
         * @returns {boolean}
         */
        get destroyed() {
          return socket.destroyed;
        },
        /**
         * @param {import('../core/request.js')} request
         * @returns {boolean}
         */
        busy(request) {
          if (socket[kWriting] || socket[kReset] || socket[kBlocking]) {
            return true;
          }
          if (request) {
            if (client[kRunning] > 0 && !request.idempotent) {
              return true;
            }
            if (client[kRunning] > 0 && (request.upgrade || request.method === "CONNECT")) {
              return true;
            }
            if (client[kRunning] > 0 && util56.bodyLength(request.body) !== 0 && (util56.isStream(request.body) || util56.isAsyncIterable(request.body) || util56.isFormDataLike(request.body))) {
              return true;
            }
          }
          return false;
        }
      };
    }
    function onHttpSocketError(err) {
      assert13(err.code !== "ERR_TLS_CERT_ALTNAME_INVALID");
      const parser = this[kParser];
      if (err.code === "ECONNRESET" && parser.statusCode && !parser.shouldKeepAlive) {
        parser.onMessageComplete();
        return;
      }
      this[kError] = err;
      this[kClient][kOnError](err);
    }
    function onHttpSocketReadable() {
      this[kParser]?.readMore();
    }
    function onHttpSocketEnd() {
      const parser = this[kParser];
      if (parser.statusCode && !parser.shouldKeepAlive) {
        parser.onMessageComplete();
        return;
      }
      util56.destroy(this, new SocketError("other side closed", util56.getSocketInfo(this)));
    }
    function onHttpSocketClose() {
      const parser = this[kParser];
      if (parser) {
        if (!this[kError] && parser.statusCode && !parser.shouldKeepAlive) {
          parser.onMessageComplete();
        }
        this[kParser].destroy();
        this[kParser] = null;
      }
      const err = this[kError] || new SocketError("closed", util56.getSocketInfo(this));
      const client = this[kClient];
      client[kSocket] = null;
      client[kHTTPContext] = null;
      if (client.destroyed) {
        assert13(client[kPending] === 0);
        const requests = client[kQueue].splice(client[kRunningIdx]);
        for (let i2 = 0; i2 < requests.length; i2++) {
          const request = requests[i2];
          util56.errorRequest(client, request, err);
        }
      } else if (client[kRunning] > 0 && err.code !== "UND_ERR_INFO") {
        const request = client[kQueue][client[kRunningIdx]];
        client[kQueue][client[kRunningIdx]++] = null;
        util56.errorRequest(client, request, err);
      }
      client[kPendingIdx] = client[kRunningIdx];
      assert13(client[kRunning] === 0);
      client.emit("disconnect", client[kUrl], [client], err);
      client[kResume]();
    }
    function onSocketClose() {
      this[kClosed] = true;
    }
    function resumeH1(client) {
      const socket = client[kSocket];
      if (socket && !socket.destroyed) {
        if (client[kSize] === 0) {
          if (!socket[kNoRef] && socket.unref) {
            socket.unref();
            socket[kNoRef] = true;
          }
        } else if (socket[kNoRef] && socket.ref) {
          socket.ref();
          socket[kNoRef] = false;
        }
        if (client[kSize] === 0) {
          if (socket[kParser].timeoutType !== TIMEOUT_KEEP_ALIVE) {
            socket[kParser].setTimeout(client[kKeepAliveTimeoutValue], TIMEOUT_KEEP_ALIVE);
          }
        } else if (client[kRunning] > 0 && socket[kParser].statusCode < 200) {
          if (socket[kParser].timeoutType !== TIMEOUT_HEADERS) {
            const request = client[kQueue][client[kRunningIdx]];
            const headersTimeout = request.headersTimeout != null ? request.headersTimeout : client[kHeadersTimeout];
            socket[kParser].setTimeout(headersTimeout, TIMEOUT_HEADERS);
          }
        }
      }
    }
    function shouldSendContentLength(method) {
      return method !== "GET" && method !== "HEAD" && method !== "OPTIONS" && method !== "TRACE" && method !== "CONNECT";
    }
    function writeH1(client, request) {
      const { method, path: path218, host, upgrade, blocking, reset: reset2 } = request;
      let { body, headers, contentLength } = request;
      const expectsPayload = method === "PUT" || method === "POST" || method === "PATCH" || method === "QUERY" || method === "PROPFIND" || method === "PROPPATCH";
      if (util56.isFormDataLike(body)) {
        if (!extractBody) {
          extractBody = require_body().extractBody;
        }
        const [bodyStream, contentType] = extractBody(body);
        if (request.contentType == null) {
          headers.push("content-type", contentType);
        }
        body = bodyStream.stream;
        contentLength = bodyStream.length;
      } else if (util56.isBlobLike(body) && request.contentType == null && body.type) {
        headers.push("content-type", body.type);
      }
      if (body && typeof body.read === "function") {
        body.read(0);
      }
      const bodyLength = util56.bodyLength(body);
      contentLength = bodyLength ?? contentLength;
      if (contentLength === null) {
        contentLength = request.contentLength;
      }
      if (contentLength === 0 && !expectsPayload) {
        contentLength = null;
      }
      if (shouldSendContentLength(method) && contentLength > 0 && request.contentLength !== null && request.contentLength !== contentLength) {
        if (client[kStrictContentLength]) {
          util56.errorRequest(client, request, new RequestContentLengthMismatchError());
          return false;
        }
        process.emitWarning(new RequestContentLengthMismatchError());
      }
      const socket = client[kSocket];
      const abort = (err) => {
        if (request.aborted || request.completed) {
          return;
        }
        util56.errorRequest(client, request, err || new RequestAbortedError());
        util56.destroy(body);
        util56.destroy(socket, new InformationalError("aborted"));
      };
      try {
        request.onConnect(abort);
      } catch (err) {
        util56.errorRequest(client, request, err);
      }
      if (request.aborted) {
        return false;
      }
      if (method === "HEAD") {
        socket[kReset] = true;
      }
      if (upgrade || method === "CONNECT") {
        socket[kReset] = true;
      }
      if (reset2 != null) {
        socket[kReset] = reset2;
      }
      if (client[kMaxRequests] && socket[kCounter]++ >= client[kMaxRequests]) {
        socket[kReset] = true;
      }
      if (blocking) {
        socket[kBlocking] = true;
      }
      if (socket.setTypeOfService) {
        socket.setTypeOfService(request.typeOfService);
      }
      let header = `${method} ${path218} HTTP/1.1\r
`;
      if (typeof host === "string") {
        header += `host: ${host}\r
`;
      } else {
        header += client[kHostHeader];
      }
      if (upgrade) {
        header += `connection: upgrade\r
upgrade: ${upgrade}\r
`;
      } else if (client[kPipelining] && !socket[kReset]) {
        header += "connection: keep-alive\r\n";
      } else {
        header += "connection: close\r\n";
      }
      if (Array.isArray(headers)) {
        for (let n2 = 0; n2 < headers.length; n2 += 2) {
          const key = headers[n2 + 0];
          const val = headers[n2 + 1];
          if (Array.isArray(val)) {
            for (let i2 = 0; i2 < val.length; i2++) {
              header += `${key}: ${val[i2]}\r
`;
            }
          } else {
            header += `${key}: ${val}\r
`;
          }
        }
      }
      if (channels.sendHeaders.hasSubscribers) {
        channels.sendHeaders.publish({ request, headers: header, socket });
      }
      if (!body || bodyLength === 0) {
        writeBuffer2(abort, null, client, request, socket, contentLength, header, expectsPayload);
      } else if (util56.isBuffer(body)) {
        writeBuffer2(abort, body, client, request, socket, contentLength, header, expectsPayload);
      } else if (util56.isBlobLike(body)) {
        if (typeof body.stream === "function") {
          writeIterable(abort, body.stream(), client, request, socket, contentLength, header, expectsPayload);
        } else {
          writeBlob(abort, body, client, request, socket, contentLength, header, expectsPayload);
        }
      } else if (util56.isStream(body)) {
        writeStream(abort, body, client, request, socket, contentLength, header, expectsPayload);
      } else if (util56.isIterable(body)) {
        writeIterable(abort, body, client, request, socket, contentLength, header, expectsPayload);
      } else {
        assert13(false);
      }
      return true;
    }
    function writeStream(abort, body, client, request, socket, contentLength, header, expectsPayload) {
      assert13(contentLength !== 0 || client[kRunning] === 0, "stream body cannot be pipelined");
      let finished7 = false;
      const writer = new AsyncWriter({ abort, socket, request, contentLength, client, expectsPayload, header });
      const onData = function(chunk) {
        if (finished7) {
          return;
        }
        try {
          if (!writer.write(chunk) && this.pause) {
            this.pause();
          }
        } catch (err) {
          util56.destroy(this, err);
        }
      };
      const onDrain = function() {
        if (finished7) {
          return;
        }
        if (body.resume) {
          body.resume();
        }
      };
      const onClose = function() {
        queueMicrotask(() => {
          body.removeListener("error", onFinished);
        });
        if (!finished7) {
          const err = new RequestAbortedError();
          queueMicrotask(() => onFinished(err));
        }
      };
      const onFinished = function(err) {
        if (finished7) {
          return;
        }
        finished7 = true;
        assert13(socket.destroyed || socket[kWriting] && client[kRunning] <= 1);
        socket.off("drain", onDrain).off("error", onFinished);
        body.removeListener("data", onData).removeListener("end", onFinished).removeListener("close", onClose);
        if (!err) {
          try {
            writer.end();
          } catch (er) {
            err = er;
          }
        }
        writer.destroy(err);
        if (err && (err.code !== "UND_ERR_INFO" || err.message !== "reset")) {
          util56.destroy(body, err);
        } else {
          util56.destroy(body);
        }
      };
      body.on("data", onData).on("end", onFinished).on("error", onFinished).on("close", onClose);
      if (body.resume) {
        body.resume();
      }
      socket.on("drain", onDrain).on("error", onFinished);
      if (body.errorEmitted ?? body.errored) {
        setImmediate(onFinished, body.errored);
      } else if (body.endEmitted ?? body.readableEnded) {
        setImmediate(onFinished, null);
      }
      if (body.closeEmitted ?? body.closed) {
        setImmediate(onClose);
      }
    }
    function writeBuffer2(abort, body, client, request, socket, contentLength, header, expectsPayload) {
      try {
        if (!body) {
          if (contentLength === 0) {
            socket.write(`${header}content-length: 0\r
\r
`, "latin1");
          } else {
            assert13(contentLength === null, "no body must not have content length");
            socket.write(`${header}\r
`, "latin1");
          }
        } else if (util56.isBuffer(body)) {
          assert13(contentLength === body.byteLength, "buffer body must have content length");
          socket.cork();
          socket.write(`${header}content-length: ${contentLength}\r
\r
`, "latin1");
          socket.write(body);
          socket.uncork();
          request.onBodySent(body);
          if (!expectsPayload && request.reset !== false) {
            socket[kReset] = true;
          }
        }
        request.onRequestSent();
        client[kResume]();
      } catch (err) {
        abort(err);
      }
    }
    async function writeBlob(abort, body, client, request, socket, contentLength, header, expectsPayload) {
      assert13(contentLength === body.size, "blob body must have content length");
      try {
        if (contentLength != null && contentLength !== body.size) {
          throw new RequestContentLengthMismatchError();
        }
        const buffer3 = Buffer.from(await body.arrayBuffer());
        socket.cork();
        socket.write(`${header}content-length: ${contentLength}\r
\r
`, "latin1");
        socket.write(buffer3);
        socket.uncork();
        request.onBodySent(buffer3);
        request.onRequestSent();
        if (!expectsPayload && request.reset !== false) {
          socket[kReset] = true;
        }
        client[kResume]();
      } catch (err) {
        abort(err);
      }
    }
    async function writeIterable(abort, body, client, request, socket, contentLength, header, expectsPayload) {
      assert13(contentLength !== 0 || client[kRunning] === 0, "iterator body cannot be pipelined");
      let callback2 = null;
      function onDrain() {
        if (callback2) {
          const cb = callback2;
          callback2 = null;
          cb();
        }
      }
      const waitForDrain = () => new Promise((resolve3, reject3) => {
        assert13(callback2 === null);
        if (socket[kError]) {
          reject3(socket[kError]);
        } else {
          callback2 = resolve3;
        }
      });
      socket.on("close", onDrain).on("drain", onDrain);
      const writer = new AsyncWriter({ abort, socket, request, contentLength, client, expectsPayload, header });
      try {
        for await (const chunk of body) {
          if (socket[kError]) {
            throw socket[kError];
          }
          if (!writer.write(chunk)) {
            await waitForDrain();
          }
        }
        writer.end();
      } catch (err) {
        writer.destroy(err);
      } finally {
        socket.off("close", onDrain).off("drain", onDrain);
      }
    }
    var AsyncWriter = class {
      /**
       *
       * @param {object} arg
       * @param {AbortCallback} arg.abort
       * @param {import('net').Socket} arg.socket
       * @param {import('../core/request.js')} arg.request
       * @param {number} arg.contentLength
       * @param {import('./client.js')} arg.client
       * @param {boolean} arg.expectsPayload
       * @param {string} arg.header
       */
      constructor({ abort, socket, request, contentLength, client, expectsPayload, header }) {
        this.socket = socket;
        this.request = request;
        this.contentLength = contentLength;
        this.client = client;
        this.bytesWritten = 0;
        this.expectsPayload = expectsPayload;
        this.header = header;
        this.abort = abort;
        socket[kWriting] = true;
      }
      /**
       * @param {Buffer} chunk
       * @returns
       */
      write(chunk) {
        const { socket, request, contentLength, client, bytesWritten, expectsPayload, header } = this;
        if (socket[kError]) {
          throw socket[kError];
        }
        if (socket.destroyed) {
          return false;
        }
        const len = Buffer.byteLength(chunk);
        if (!len) {
          return true;
        }
        if (contentLength !== null && bytesWritten + len > contentLength) {
          if (client[kStrictContentLength]) {
            throw new RequestContentLengthMismatchError();
          }
          process.emitWarning(new RequestContentLengthMismatchError());
        }
        socket.cork();
        if (bytesWritten === 0) {
          if (!expectsPayload && request.reset !== false) {
            socket[kReset] = true;
          }
          if (contentLength === null) {
            socket.write(`${header}transfer-encoding: chunked\r
`, "latin1");
          } else {
            socket.write(`${header}content-length: ${contentLength}\r
\r
`, "latin1");
          }
        }
        if (contentLength === null) {
          socket.write(`\r
${len.toString(16)}\r
`, "latin1");
        }
        this.bytesWritten += len;
        const ret2 = socket.write(chunk);
        socket.uncork();
        request.onBodySent(chunk);
        if (!ret2) {
          if (socket[kParser].timeout && socket[kParser].timeoutType === TIMEOUT_HEADERS) {
            if (socket[kParser].timeout.refresh) {
              socket[kParser].timeout.refresh();
            }
          }
        }
        return ret2;
      }
      /**
       * @returns {void}
       */
      end() {
        const { socket, contentLength, client, bytesWritten, expectsPayload, header, request } = this;
        request.onRequestSent();
        socket[kWriting] = false;
        if (socket[kError]) {
          throw socket[kError];
        }
        if (socket.destroyed) {
          return;
        }
        if (bytesWritten === 0) {
          if (expectsPayload) {
            socket.write(`${header}content-length: 0\r
\r
`, "latin1");
          } else {
            socket.write(`${header}\r
`, "latin1");
          }
        } else if (contentLength === null) {
          socket.write("\r\n0\r\n\r\n", "latin1");
        }
        if (contentLength !== null && bytesWritten !== contentLength) {
          if (client[kStrictContentLength]) {
            throw new RequestContentLengthMismatchError();
          } else {
            process.emitWarning(new RequestContentLengthMismatchError());
          }
        }
        if (socket[kParser].timeout && socket[kParser].timeoutType === TIMEOUT_HEADERS) {
          if (socket[kParser].timeout.refresh) {
            socket[kParser].timeout.refresh();
          }
        }
        client[kResume]();
      }
      /**
       * @param {Error} [err]
       * @returns {void}
       */
      destroy(err) {
        const { socket, client, abort } = this;
        socket[kWriting] = false;
        if (err) {
          assert13(client[kRunning] <= 1, "pipeline should only contain this request");
          abort(err);
        }
      }
    };
    module2.exports = connectH1;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/dispatcher/client-h2.js
var require_client_h2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/dispatcher/client-h2.js"(exports2, module2) {
    "use strict";
    var assert13 = __require("node:assert");
    var { pipeline: pipeline2 } = __require("node:stream");
    var util56 = require_util6();
    var {
      RequestContentLengthMismatchError,
      RequestAbortedError,
      SocketError,
      InformationalError,
      InvalidArgumentError
    } = require_errors5();
    var {
      kUrl,
      kReset,
      kClient,
      kRunning,
      kPending,
      kQueue,
      kPendingIdx,
      kRunningIdx,
      kError,
      kSocket,
      kStrictContentLength,
      kOnError,
      kMaxConcurrentStreams,
      kPingInterval,
      kHTTP2Session,
      kHTTP2InitialWindowSize,
      kHTTP2ConnectionWindowSize,
      kResume,
      kSize,
      kHTTPContext,
      kClosed,
      kBodyTimeout,
      kEnableConnectProtocol,
      kRemoteSettings,
      kHTTP2Stream,
      kHTTP2SessionState
    } = require_symbols();
    var { channels } = require_diagnostics();
    var kOpenStreams = /* @__PURE__ */ Symbol("open streams");
    var extractBody;
    var http2;
    try {
      http2 = __require("node:http2");
    } catch {
      http2 = { constants: {} };
    }
    var {
      constants: {
        HTTP2_HEADER_AUTHORITY,
        HTTP2_HEADER_METHOD,
        HTTP2_HEADER_PATH,
        HTTP2_HEADER_SCHEME,
        HTTP2_HEADER_CONTENT_LENGTH,
        HTTP2_HEADER_EXPECT,
        HTTP2_HEADER_STATUS,
        HTTP2_HEADER_PROTOCOL,
        NGHTTP2_REFUSED_STREAM,
        NGHTTP2_CANCEL
      }
    } = http2;
    function parseH2Headers(headers) {
      const result2 = [];
      for (const [name, value] of Object.entries(headers)) {
        if (Array.isArray(value)) {
          for (const subvalue of value) {
            result2.push(Buffer.from(name), Buffer.from(subvalue));
          }
        } else {
          result2.push(Buffer.from(name), Buffer.from(value));
        }
      }
      return result2;
    }
    function connectH2(client, socket) {
      client[kSocket] = socket;
      const http2InitialWindowSize = client[kHTTP2InitialWindowSize];
      const http2ConnectionWindowSize = client[kHTTP2ConnectionWindowSize];
      const session = http2.connect(client[kUrl], {
        createConnection: () => socket,
        peerMaxConcurrentStreams: client[kMaxConcurrentStreams],
        settings: {
          // TODO(metcoder95): add support for PUSH
          enablePush: false,
          ...http2InitialWindowSize != null ? { initialWindowSize: http2InitialWindowSize } : null
        }
      });
      client[kSocket] = socket;
      session[kOpenStreams] = 0;
      session[kClient] = client;
      session[kSocket] = socket;
      session[kHTTP2SessionState] = {
        ping: {
          interval: client[kPingInterval] === 0 ? null : setInterval(onHttp2SendPing, client[kPingInterval], session).unref()
        }
      };
      session[kEnableConnectProtocol] = false;
      session[kRemoteSettings] = false;
      if (http2ConnectionWindowSize) {
        util56.addListener(session, "connect", applyConnectionWindowSize.bind(session, http2ConnectionWindowSize));
      }
      util56.addListener(session, "error", onHttp2SessionError);
      util56.addListener(session, "frameError", onHttp2FrameError);
      util56.addListener(session, "end", onHttp2SessionEnd);
      util56.addListener(session, "goaway", onHttp2SessionGoAway);
      util56.addListener(session, "close", onHttp2SessionClose);
      util56.addListener(session, "remoteSettings", onHttp2RemoteSettings);
      session.unref();
      client[kHTTP2Session] = session;
      socket[kHTTP2Session] = session;
      util56.addListener(socket, "error", onHttp2SocketError);
      util56.addListener(socket, "end", onHttp2SocketEnd);
      util56.addListener(socket, "close", onHttp2SocketClose);
      socket[kClosed] = false;
      socket.on("close", onSocketClose);
      return {
        version: "h2",
        defaultPipelining: Infinity,
        /**
         * @param {import('../core/request.js')} request
         * @returns {boolean}
        */
        write(request) {
          return writeH2(client, request);
        },
        /**
         * @returns {void}
         */
        resume() {
          resumeH2(client);
        },
        /**
         * @param {Error | null} err
         * @param {() => void} callback
         */
        destroy(err, callback2) {
          if (socket[kClosed]) {
            queueMicrotask(callback2);
          } else {
            socket.destroy(err).on("close", callback2);
          }
        },
        /**
         * @type {boolean}
         */
        get destroyed() {
          return socket.destroyed;
        },
        /**
         * @param {import('../core/request.js')} request
         * @returns {boolean}
        */
        busy(request) {
          if (request != null) {
            if (client[kRunning] > 0) {
              if (request.idempotent === false) return true;
              if ((request.upgrade === "websocket" || request.method === "CONNECT") && session[kRemoteSettings] === false) return true;
              if (util56.bodyLength(request.body) !== 0 && (util56.isStream(request.body) || util56.isAsyncIterable(request.body) || util56.isFormDataLike(request.body))) return true;
            } else {
              return (request.upgrade === "websocket" || request.method === "CONNECT") && session[kRemoteSettings] === false;
            }
          }
          return false;
        }
      };
    }
    function resumeH2(client) {
      const socket = client[kSocket];
      if (socket?.destroyed === false) {
        if (client[kSize] === 0 || client[kMaxConcurrentStreams] === 0) {
          socket.unref();
          client[kHTTP2Session].unref();
        } else {
          socket.ref();
          client[kHTTP2Session].ref();
        }
      }
    }
    function applyConnectionWindowSize(connectionWindowSize) {
      try {
        if (typeof this.setLocalWindowSize === "function") {
          this.setLocalWindowSize(connectionWindowSize);
        }
      } catch {
      }
    }
    function onHttp2RemoteSettings(settings) {
      this[kClient][kMaxConcurrentStreams] = settings.maxConcurrentStreams ?? this[kClient][kMaxConcurrentStreams];
      if (this[kRemoteSettings] === true && this[kEnableConnectProtocol] === true && settings.enableConnectProtocol === false) {
        const err = new InformationalError("HTTP/2: Server disabled extended CONNECT protocol against RFC-8441");
        this[kSocket][kError] = err;
        this[kClient][kOnError](err);
        return;
      }
      this[kEnableConnectProtocol] = settings.enableConnectProtocol ?? this[kEnableConnectProtocol];
      this[kRemoteSettings] = true;
      this[kClient][kResume]();
    }
    function onHttp2SendPing(session) {
      const state = session[kHTTP2SessionState];
      if ((session.closed || session.destroyed) && state.ping.interval != null) {
        clearInterval(state.ping.interval);
        state.ping.interval = null;
        return;
      }
      session.ping(onPing.bind(session));
      function onPing(err, duration) {
        const client = this[kClient];
        const socket = this[kClient];
        if (err != null) {
          const error = new InformationalError(`HTTP/2: "PING" errored - type ${err.message}`);
          socket[kError] = error;
          client[kOnError](error);
        } else {
          client.emit("ping", duration);
        }
      }
    }
    function onHttp2SessionError(err) {
      assert13(err.code !== "ERR_TLS_CERT_ALTNAME_INVALID");
      this[kSocket][kError] = err;
      this[kClient][kOnError](err);
    }
    function onHttp2FrameError(type4, code, id) {
      if (id === 0) {
        const err = new InformationalError(`HTTP/2: "frameError" received - type ${type4}, code ${code}`);
        this[kSocket][kError] = err;
        this[kClient][kOnError](err);
      }
    }
    function onHttp2SessionEnd() {
      const err = new SocketError("other side closed", util56.getSocketInfo(this[kSocket]));
      this.destroy(err);
      util56.destroy(this[kSocket], err);
    }
    function onHttp2SessionGoAway(errorCode) {
      const err = this[kError] || new SocketError(`HTTP/2: "GOAWAY" frame received with code ${errorCode}`, util56.getSocketInfo(this[kSocket]));
      const client = this[kClient];
      client[kSocket] = null;
      client[kHTTPContext] = null;
      this.close();
      this[kHTTP2Session] = null;
      util56.destroy(this[kSocket], err);
      if (client[kRunningIdx] < client[kQueue].length) {
        const request = client[kQueue][client[kRunningIdx]];
        client[kQueue][client[kRunningIdx]++] = null;
        util56.errorRequest(client, request, err);
        client[kPendingIdx] = client[kRunningIdx];
      }
      assert13(client[kRunning] === 0);
      client.emit("disconnect", client[kUrl], [client], err);
      client.emit("connectionError", client[kUrl], [client], err);
      client[kResume]();
    }
    function onHttp2SessionClose() {
      const { [kClient]: client, [kHTTP2SessionState]: state } = this;
      const { [kSocket]: socket } = client;
      const err = this[kSocket][kError] || this[kError] || new SocketError("closed", util56.getSocketInfo(socket));
      client[kSocket] = null;
      client[kHTTPContext] = null;
      if (state.ping.interval != null) {
        clearInterval(state.ping.interval);
        state.ping.interval = null;
      }
      if (client.destroyed) {
        assert13(client[kPending] === 0);
        const requests = client[kQueue].splice(client[kRunningIdx]);
        for (let i2 = 0; i2 < requests.length; i2++) {
          const request = requests[i2];
          util56.errorRequest(client, request, err);
        }
      }
    }
    function onHttp2SocketClose() {
      const err = this[kError] || new SocketError("closed", util56.getSocketInfo(this));
      const client = this[kHTTP2Session][kClient];
      client[kSocket] = null;
      client[kHTTPContext] = null;
      if (this[kHTTP2Session] !== null) {
        this[kHTTP2Session].destroy(err);
      }
      client[kPendingIdx] = client[kRunningIdx];
      assert13(client[kRunning] === 0);
      client.emit("disconnect", client[kUrl], [client], err);
      client[kResume]();
    }
    function onHttp2SocketError(err) {
      assert13(err.code !== "ERR_TLS_CERT_ALTNAME_INVALID");
      this[kError] = err;
      this[kClient][kOnError](err);
    }
    function onHttp2SocketEnd() {
      util56.destroy(this, new SocketError("other side closed", util56.getSocketInfo(this)));
    }
    function onSocketClose() {
      this[kClosed] = true;
    }
    function shouldSendContentLength(method) {
      return method !== "GET" && method !== "HEAD" && method !== "OPTIONS" && method !== "TRACE" && method !== "CONNECT";
    }
    function writeH2(client, request) {
      const requestTimeout = request.bodyTimeout ?? client[kBodyTimeout];
      const session = client[kHTTP2Session];
      const { method, path: path218, host, upgrade, expectContinue, signal, protocol, headers: reqHeaders } = request;
      let { body } = request;
      if (upgrade != null && upgrade !== "websocket") {
        util56.errorRequest(client, request, new InvalidArgumentError(`Custom upgrade "${upgrade}" not supported over HTTP/2`));
        return false;
      }
      const headers = {};
      for (let n2 = 0; n2 < reqHeaders.length; n2 += 2) {
        const key = reqHeaders[n2 + 0];
        const val = reqHeaders[n2 + 1];
        if (key === "cookie") {
          if (headers[key] != null) {
            headers[key] = Array.isArray(headers[key]) ? (headers[key].push(val), headers[key]) : [headers[key], val];
          } else {
            headers[key] = val;
          }
          continue;
        }
        if (Array.isArray(val)) {
          for (let i2 = 0; i2 < val.length; i2++) {
            if (headers[key]) {
              headers[key] += `, ${val[i2]}`;
            } else {
              headers[key] = val[i2];
            }
          }
        } else if (headers[key]) {
          headers[key] += `, ${val}`;
        } else {
          headers[key] = val;
        }
      }
      let stream2 = null;
      const { hostname, port } = client[kUrl];
      headers[HTTP2_HEADER_AUTHORITY] = host || `${hostname}${port ? `:${port}` : ""}`;
      headers[HTTP2_HEADER_METHOD] = method;
      const abort = (err) => {
        if (request.aborted || request.completed) {
          return;
        }
        err = err || new RequestAbortedError();
        util56.errorRequest(client, request, err);
        if (stream2 != null) {
          stream2.removeAllListeners("data");
          stream2.close();
          client[kOnError](err);
          client[kResume]();
        }
        util56.destroy(body, err);
      };
      try {
        request.onConnect(abort);
      } catch (err) {
        util56.errorRequest(client, request, err);
      }
      if (request.aborted) {
        return false;
      }
      if (upgrade || method === "CONNECT") {
        session.ref();
        if (upgrade === "websocket") {
          if (session[kEnableConnectProtocol] === false) {
            util56.errorRequest(client, request, new InformationalError("HTTP/2: Extended CONNECT protocol not supported by server"));
            session.unref();
            return false;
          }
          headers[HTTP2_HEADER_METHOD] = "CONNECT";
          headers[HTTP2_HEADER_PROTOCOL] = "websocket";
          headers[HTTP2_HEADER_PATH] = path218;
          if (protocol === "ws:" || protocol === "wss:") {
            headers[HTTP2_HEADER_SCHEME] = protocol === "ws:" ? "http" : "https";
          } else {
            headers[HTTP2_HEADER_SCHEME] = protocol === "http:" ? "http" : "https";
          }
          stream2 = session.request(headers, { endStream: false, signal });
          stream2[kHTTP2Stream] = true;
          stream2.once("response", (headers2, _flags) => {
            const { [HTTP2_HEADER_STATUS]: statusCode, ...realHeaders } = headers2;
            request.onUpgrade(statusCode, parseH2Headers(realHeaders), stream2);
            ++session[kOpenStreams];
            client[kQueue][client[kRunningIdx]++] = null;
          });
          stream2.on("error", () => {
            if (stream2.rstCode === NGHTTP2_REFUSED_STREAM || stream2.rstCode === NGHTTP2_CANCEL) {
              abort(new InformationalError(`HTTP/2: "stream error" received - code ${stream2.rstCode}`));
            }
          });
          stream2.once("close", () => {
            session[kOpenStreams] -= 1;
            if (session[kOpenStreams] === 0) session.unref();
          });
          stream2.setTimeout(requestTimeout);
          return true;
        }
        stream2 = session.request(headers, { endStream: false, signal });
        stream2[kHTTP2Stream] = true;
        stream2.on("response", (headers2) => {
          const { [HTTP2_HEADER_STATUS]: statusCode, ...realHeaders } = headers2;
          request.onUpgrade(statusCode, parseH2Headers(realHeaders), stream2);
          ++session[kOpenStreams];
          client[kQueue][client[kRunningIdx]++] = null;
        });
        stream2.once("close", () => {
          session[kOpenStreams] -= 1;
          if (session[kOpenStreams] === 0) session.unref();
        });
        stream2.setTimeout(requestTimeout);
        return true;
      }
      headers[HTTP2_HEADER_PATH] = path218;
      headers[HTTP2_HEADER_SCHEME] = protocol === "http:" ? "http" : "https";
      const expectsPayload = method === "PUT" || method === "POST" || method === "PATCH";
      if (body && typeof body.read === "function") {
        body.read(0);
      }
      let contentLength = util56.bodyLength(body);
      if (util56.isFormDataLike(body)) {
        extractBody ??= require_body().extractBody;
        const [bodyStream, contentType] = extractBody(body);
        headers["content-type"] = contentType;
        body = bodyStream.stream;
        contentLength = bodyStream.length;
      }
      if (contentLength == null) {
        contentLength = request.contentLength;
      }
      if (!expectsPayload) {
        contentLength = null;
      }
      if (shouldSendContentLength(method) && contentLength > 0 && request.contentLength != null && request.contentLength !== contentLength) {
        if (client[kStrictContentLength]) {
          util56.errorRequest(client, request, new RequestContentLengthMismatchError());
          return false;
        }
        process.emitWarning(new RequestContentLengthMismatchError());
      }
      if (contentLength != null) {
        assert13(body || contentLength === 0, "no body must not have content length");
        headers[HTTP2_HEADER_CONTENT_LENGTH] = `${contentLength}`;
      }
      session.ref();
      if (channels.sendHeaders.hasSubscribers) {
        let header = "";
        for (const key in headers) {
          header += `${key}: ${headers[key]}\r
`;
        }
        channels.sendHeaders.publish({ request, headers: header, socket: session[kSocket] });
      }
      const shouldEndStream = method === "GET" || method === "HEAD" || body === null;
      if (expectContinue) {
        headers[HTTP2_HEADER_EXPECT] = "100-continue";
        stream2 = session.request(headers, { endStream: shouldEndStream, signal });
        stream2[kHTTP2Stream] = true;
        stream2.once("continue", writeBodyH2);
      } else {
        stream2 = session.request(headers, {
          endStream: shouldEndStream,
          signal
        });
        stream2[kHTTP2Stream] = true;
        writeBodyH2();
      }
      ++session[kOpenStreams];
      stream2.setTimeout(requestTimeout);
      let responseReceived = false;
      stream2.once("response", (headers2) => {
        const { [HTTP2_HEADER_STATUS]: statusCode, ...realHeaders } = headers2;
        request.onResponseStarted();
        responseReceived = true;
        if (request.aborted) {
          stream2.removeAllListeners("data");
          return;
        }
        if (request.onHeaders(Number(statusCode), parseH2Headers(realHeaders), stream2.resume.bind(stream2), "") === false) {
          stream2.pause();
        }
        stream2.on("data", (chunk) => {
          if (request.aborted || request.completed) {
            return;
          }
          if (request.onData(chunk) === false) {
            stream2.pause();
          }
        });
      });
      stream2.once("end", () => {
        stream2.removeAllListeners("data");
        if (responseReceived) {
          if (!request.aborted && !request.completed) {
            request.onComplete({});
          }
          client[kQueue][client[kRunningIdx]++] = null;
          client[kResume]();
        } else {
          abort(new InformationalError("HTTP/2: stream half-closed (remote)"));
          client[kQueue][client[kRunningIdx]++] = null;
          client[kPendingIdx] = client[kRunningIdx];
          client[kResume]();
        }
      });
      stream2.once("close", () => {
        stream2.removeAllListeners("data");
        session[kOpenStreams] -= 1;
        if (session[kOpenStreams] === 0) {
          session.unref();
        }
      });
      stream2.once("error", function(err) {
        stream2.removeAllListeners("data");
        abort(err);
      });
      stream2.once("frameError", (type4, code) => {
        stream2.removeAllListeners("data");
        abort(new InformationalError(`HTTP/2: "frameError" received - type ${type4}, code ${code}`));
      });
      stream2.on("aborted", () => {
        stream2.removeAllListeners("data");
      });
      stream2.on("timeout", () => {
        const err = new InformationalError(`HTTP/2: "stream timeout after ${requestTimeout}"`);
        stream2.removeAllListeners("data");
        session[kOpenStreams] -= 1;
        if (session[kOpenStreams] === 0) {
          session.unref();
        }
        abort(err);
      });
      stream2.once("trailers", (trailers) => {
        if (request.aborted || request.completed) {
          return;
        }
        stream2.removeAllListeners("data");
        request.onComplete(trailers);
      });
      return true;
      function writeBodyH2() {
        if (!body || contentLength === 0) {
          writeBuffer2(
            abort,
            stream2,
            null,
            client,
            request,
            client[kSocket],
            contentLength,
            expectsPayload
          );
        } else if (util56.isBuffer(body)) {
          writeBuffer2(
            abort,
            stream2,
            body,
            client,
            request,
            client[kSocket],
            contentLength,
            expectsPayload
          );
        } else if (util56.isBlobLike(body)) {
          if (typeof body.stream === "function") {
            writeIterable(
              abort,
              stream2,
              body.stream(),
              client,
              request,
              client[kSocket],
              contentLength,
              expectsPayload
            );
          } else {
            writeBlob(
              abort,
              stream2,
              body,
              client,
              request,
              client[kSocket],
              contentLength,
              expectsPayload
            );
          }
        } else if (util56.isStream(body)) {
          writeStream(
            abort,
            client[kSocket],
            expectsPayload,
            stream2,
            body,
            client,
            request,
            contentLength
          );
        } else if (util56.isIterable(body)) {
          writeIterable(
            abort,
            stream2,
            body,
            client,
            request,
            client[kSocket],
            contentLength,
            expectsPayload
          );
        } else {
          assert13(false);
        }
      }
    }
    function writeBuffer2(abort, h2stream, body, client, request, socket, contentLength, expectsPayload) {
      try {
        if (body != null && util56.isBuffer(body)) {
          assert13(contentLength === body.byteLength, "buffer body must have content length");
          h2stream.cork();
          h2stream.write(body);
          h2stream.uncork();
          h2stream.end();
          request.onBodySent(body);
        }
        if (!expectsPayload) {
          socket[kReset] = true;
        }
        request.onRequestSent();
        client[kResume]();
      } catch (error) {
        abort(error);
      }
    }
    function writeStream(abort, socket, expectsPayload, h2stream, body, client, request, contentLength) {
      assert13(contentLength !== 0 || client[kRunning] === 0, "stream body cannot be pipelined");
      const pipe2 = pipeline2(
        body,
        h2stream,
        (err) => {
          if (err) {
            util56.destroy(pipe2, err);
            abort(err);
          } else {
            util56.removeAllListeners(pipe2);
            request.onRequestSent();
            if (!expectsPayload) {
              socket[kReset] = true;
            }
            client[kResume]();
          }
        }
      );
      util56.addListener(pipe2, "data", onPipeData);
      function onPipeData(chunk) {
        request.onBodySent(chunk);
      }
    }
    async function writeBlob(abort, h2stream, body, client, request, socket, contentLength, expectsPayload) {
      assert13(contentLength === body.size, "blob body must have content length");
      try {
        if (contentLength != null && contentLength !== body.size) {
          throw new RequestContentLengthMismatchError();
        }
        const buffer3 = Buffer.from(await body.arrayBuffer());
        h2stream.cork();
        h2stream.write(buffer3);
        h2stream.uncork();
        h2stream.end();
        request.onBodySent(buffer3);
        request.onRequestSent();
        if (!expectsPayload) {
          socket[kReset] = true;
        }
        client[kResume]();
      } catch (err) {
        abort(err);
      }
    }
    async function writeIterable(abort, h2stream, body, client, request, socket, contentLength, expectsPayload) {
      assert13(contentLength !== 0 || client[kRunning] === 0, "iterator body cannot be pipelined");
      let callback2 = null;
      function onDrain() {
        if (callback2) {
          const cb = callback2;
          callback2 = null;
          cb();
        }
      }
      const waitForDrain = () => new Promise((resolve3, reject3) => {
        assert13(callback2 === null);
        if (socket[kError]) {
          reject3(socket[kError]);
        } else {
          callback2 = resolve3;
        }
      });
      h2stream.on("close", onDrain).on("drain", onDrain);
      try {
        for await (const chunk of body) {
          if (socket[kError]) {
            throw socket[kError];
          }
          const res = h2stream.write(chunk);
          request.onBodySent(chunk);
          if (!res) {
            await waitForDrain();
          }
        }
        h2stream.end();
        request.onRequestSent();
        if (!expectsPayload) {
          socket[kReset] = true;
        }
        client[kResume]();
      } catch (err) {
        abort(err);
      } finally {
        h2stream.off("close", onDrain).off("drain", onDrain);
      }
    }
    module2.exports = connectH2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/dispatcher/client.js
var require_client = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/dispatcher/client.js"(exports2, module2) {
    "use strict";
    var assert13 = __require("node:assert");
    var net = __require("node:net");
    var http2 = __require("node:http");
    var util56 = require_util6();
    var { ClientStats } = require_stats();
    var { channels } = require_diagnostics();
    var Request = require_request();
    var DispatcherBase = require_dispatcher_base();
    var {
      InvalidArgumentError,
      InformationalError,
      ClientDestroyedError
    } = require_errors5();
    var buildConnector = require_connect();
    var {
      kUrl,
      kServerName,
      kClient,
      kBusy,
      kConnect,
      kResuming,
      kRunning,
      kPending,
      kSize,
      kQueue,
      kConnected,
      kConnecting,
      kNeedDrain,
      kKeepAliveDefaultTimeout,
      kHostHeader,
      kPendingIdx,
      kRunningIdx,
      kError,
      kPipelining,
      kKeepAliveTimeoutValue,
      kMaxHeadersSize,
      kKeepAliveMaxTimeout,
      kKeepAliveTimeoutThreshold,
      kHeadersTimeout,
      kBodyTimeout,
      kStrictContentLength,
      kConnector,
      kMaxRequests,
      kCounter,
      kClose,
      kDestroy,
      kDispatch,
      kLocalAddress,
      kMaxResponseSize,
      kOnError,
      kHTTPContext,
      kMaxConcurrentStreams,
      kHTTP2InitialWindowSize,
      kHTTP2ConnectionWindowSize,
      kResume,
      kPingInterval
    } = require_symbols();
    var connectH1 = require_client_h1();
    var connectH2 = require_client_h2();
    var kClosedResolve = /* @__PURE__ */ Symbol("kClosedResolve");
    var getDefaultNodeMaxHeaderSize = http2 && http2.maxHeaderSize && Number.isInteger(http2.maxHeaderSize) && http2.maxHeaderSize > 0 ? () => http2.maxHeaderSize : () => {
      throw new InvalidArgumentError("http module not available or http.maxHeaderSize invalid");
    };
    var noop5 = () => {
    };
    function getPipelining(client) {
      return client[kPipelining] ?? client[kHTTPContext]?.defaultPipelining ?? 1;
    }
    var Client = class extends DispatcherBase {
      /**
       *
       * @param {string|URL} url
       * @param {import('../../types/client.js').Client.Options} options
       */
      constructor(url7, {
        maxHeaderSize,
        headersTimeout,
        socketTimeout,
        requestTimeout,
        connectTimeout,
        bodyTimeout,
        idleTimeout,
        keepAlive,
        keepAliveTimeout,
        maxKeepAliveTimeout,
        keepAliveMaxTimeout,
        keepAliveTimeoutThreshold,
        socketPath,
        pipelining,
        tls: tls2,
        strictContentLength,
        maxCachedSessions,
        connect: connect2,
        maxRequestsPerClient,
        localAddress,
        maxResponseSize,
        autoSelectFamily,
        autoSelectFamilyAttemptTimeout,
        // h2
        maxConcurrentStreams,
        allowH2,
        useH2c,
        initialWindowSize,
        connectionWindowSize,
        pingInterval
      } = {}) {
        if (keepAlive !== void 0) {
          throw new InvalidArgumentError("unsupported keepAlive, use pipelining=0 instead");
        }
        if (socketTimeout !== void 0) {
          throw new InvalidArgumentError("unsupported socketTimeout, use headersTimeout & bodyTimeout instead");
        }
        if (requestTimeout !== void 0) {
          throw new InvalidArgumentError("unsupported requestTimeout, use headersTimeout & bodyTimeout instead");
        }
        if (idleTimeout !== void 0) {
          throw new InvalidArgumentError("unsupported idleTimeout, use keepAliveTimeout instead");
        }
        if (maxKeepAliveTimeout !== void 0) {
          throw new InvalidArgumentError("unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead");
        }
        if (maxHeaderSize != null) {
          if (!Number.isInteger(maxHeaderSize) || maxHeaderSize < 1) {
            throw new InvalidArgumentError("invalid maxHeaderSize");
          }
        } else {
          maxHeaderSize = getDefaultNodeMaxHeaderSize();
        }
        if (socketPath != null && typeof socketPath !== "string") {
          throw new InvalidArgumentError("invalid socketPath");
        }
        if (connectTimeout != null && (!Number.isFinite(connectTimeout) || connectTimeout < 0)) {
          throw new InvalidArgumentError("invalid connectTimeout");
        }
        if (keepAliveTimeout != null && (!Number.isFinite(keepAliveTimeout) || keepAliveTimeout <= 0)) {
          throw new InvalidArgumentError("invalid keepAliveTimeout");
        }
        if (keepAliveMaxTimeout != null && (!Number.isFinite(keepAliveMaxTimeout) || keepAliveMaxTimeout <= 0)) {
          throw new InvalidArgumentError("invalid keepAliveMaxTimeout");
        }
        if (keepAliveTimeoutThreshold != null && !Number.isFinite(keepAliveTimeoutThreshold)) {
          throw new InvalidArgumentError("invalid keepAliveTimeoutThreshold");
        }
        if (headersTimeout != null && (!Number.isInteger(headersTimeout) || headersTimeout < 0)) {
          throw new InvalidArgumentError("headersTimeout must be a positive integer or zero");
        }
        if (bodyTimeout != null && (!Number.isInteger(bodyTimeout) || bodyTimeout < 0)) {
          throw new InvalidArgumentError("bodyTimeout must be a positive integer or zero");
        }
        if (connect2 != null && typeof connect2 !== "function" && typeof connect2 !== "object") {
          throw new InvalidArgumentError("connect must be a function or an object");
        }
        if (maxRequestsPerClient != null && (!Number.isInteger(maxRequestsPerClient) || maxRequestsPerClient < 0)) {
          throw new InvalidArgumentError("maxRequestsPerClient must be a positive number");
        }
        if (localAddress != null && (typeof localAddress !== "string" || net.isIP(localAddress) === 0)) {
          throw new InvalidArgumentError("localAddress must be valid string IP address");
        }
        if (maxResponseSize != null && (!Number.isInteger(maxResponseSize) || maxResponseSize < -1)) {
          throw new InvalidArgumentError("maxResponseSize must be a positive number");
        }
        if (autoSelectFamilyAttemptTimeout != null && (!Number.isInteger(autoSelectFamilyAttemptTimeout) || autoSelectFamilyAttemptTimeout < -1)) {
          throw new InvalidArgumentError("autoSelectFamilyAttemptTimeout must be a positive number");
        }
        if (allowH2 != null && typeof allowH2 !== "boolean") {
          throw new InvalidArgumentError("allowH2 must be a valid boolean value");
        }
        if (maxConcurrentStreams != null && (typeof maxConcurrentStreams !== "number" || maxConcurrentStreams < 1)) {
          throw new InvalidArgumentError("maxConcurrentStreams must be a positive integer, greater than 0");
        }
        if (useH2c != null && typeof useH2c !== "boolean") {
          throw new InvalidArgumentError("useH2c must be a valid boolean value");
        }
        if (initialWindowSize != null && (!Number.isInteger(initialWindowSize) || initialWindowSize < 1)) {
          throw new InvalidArgumentError("initialWindowSize must be a positive integer, greater than 0");
        }
        if (connectionWindowSize != null && (!Number.isInteger(connectionWindowSize) || connectionWindowSize < 1)) {
          throw new InvalidArgumentError("connectionWindowSize must be a positive integer, greater than 0");
        }
        if (pingInterval != null && (typeof pingInterval !== "number" || !Number.isInteger(pingInterval) || pingInterval < 0)) {
          throw new InvalidArgumentError("pingInterval must be a positive integer, greater or equal to 0");
        }
        super();
        if (typeof connect2 !== "function") {
          connect2 = buildConnector({
            ...tls2,
            maxCachedSessions,
            allowH2,
            useH2c,
            socketPath,
            timeout: connectTimeout,
            ...typeof autoSelectFamily === "boolean" ? { autoSelectFamily, autoSelectFamilyAttemptTimeout } : void 0,
            ...connect2
          });
        } else if (socketPath != null) {
          const customConnect = connect2;
          connect2 = (opts2, callback2) => customConnect({ ...opts2, socketPath }, callback2);
        }
        this[kUrl] = util56.parseOrigin(url7);
        this[kConnector] = connect2;
        this[kPipelining] = pipelining != null ? pipelining : 1;
        this[kMaxHeadersSize] = maxHeaderSize;
        this[kKeepAliveDefaultTimeout] = keepAliveTimeout == null ? 4e3 : keepAliveTimeout;
        this[kKeepAliveMaxTimeout] = keepAliveMaxTimeout == null ? 6e5 : keepAliveMaxTimeout;
        this[kKeepAliveTimeoutThreshold] = keepAliveTimeoutThreshold == null ? 2e3 : keepAliveTimeoutThreshold;
        this[kKeepAliveTimeoutValue] = this[kKeepAliveDefaultTimeout];
        this[kServerName] = null;
        this[kLocalAddress] = localAddress != null ? localAddress : null;
        this[kResuming] = 0;
        this[kNeedDrain] = 0;
        this[kHostHeader] = `host: ${this[kUrl].hostname}${this[kUrl].port ? `:${this[kUrl].port}` : ""}\r
`;
        this[kBodyTimeout] = bodyTimeout != null ? bodyTimeout : 3e5;
        this[kHeadersTimeout] = headersTimeout != null ? headersTimeout : 3e5;
        this[kStrictContentLength] = strictContentLength == null ? true : strictContentLength;
        this[kMaxRequests] = maxRequestsPerClient;
        this[kClosedResolve] = null;
        this[kMaxResponseSize] = maxResponseSize > -1 ? maxResponseSize : -1;
        this[kHTTPContext] = null;
        this[kMaxConcurrentStreams] = maxConcurrentStreams != null ? maxConcurrentStreams : 100;
        this[kHTTP2InitialWindowSize] = initialWindowSize != null ? initialWindowSize : 262144;
        this[kHTTP2ConnectionWindowSize] = connectionWindowSize != null ? connectionWindowSize : 524288;
        this[kPingInterval] = pingInterval != null ? pingInterval : 6e4;
        this[kQueue] = [];
        this[kRunningIdx] = 0;
        this[kPendingIdx] = 0;
        this[kResume] = (sync3) => resume(this, sync3);
        this[kOnError] = (err) => onError(this, err);
      }
      get pipelining() {
        return this[kPipelining];
      }
      set pipelining(value) {
        this[kPipelining] = value;
        this[kResume](true);
      }
      get stats() {
        return new ClientStats(this);
      }
      get [kPending]() {
        return this[kQueue].length - this[kPendingIdx];
      }
      get [kRunning]() {
        return this[kPendingIdx] - this[kRunningIdx];
      }
      get [kSize]() {
        return this[kQueue].length - this[kRunningIdx];
      }
      get [kConnected]() {
        return !!this[kHTTPContext] && !this[kConnecting] && !this[kHTTPContext].destroyed;
      }
      get [kBusy]() {
        return Boolean(
          this[kHTTPContext]?.busy(null) || this[kSize] >= (getPipelining(this) || 1) || this[kPending] > 0
        );
      }
      [kConnect](cb) {
        connect(this);
        this.once("connect", cb);
      }
      [kDispatch](opts2, handler77) {
        const request = new Request(this[kUrl].origin, opts2, handler77);
        this[kQueue].push(request);
        if (this[kResuming]) {
        } else if (util56.bodyLength(request.body) == null && util56.isIterable(request.body)) {
          this[kResuming] = 1;
          queueMicrotask(() => resume(this));
        } else {
          this[kResume](true);
        }
        if (this[kResuming] && this[kNeedDrain] !== 2 && this[kBusy]) {
          this[kNeedDrain] = 2;
        }
        return this[kNeedDrain] < 2;
      }
      [kClose]() {
        return new Promise((resolve3) => {
          if (this[kSize]) {
            this[kClosedResolve] = resolve3;
          } else {
            resolve3(null);
          }
        });
      }
      [kDestroy](err) {
        return new Promise((resolve3) => {
          const requests = this[kQueue].splice(this[kPendingIdx]);
          for (let i2 = 0; i2 < requests.length; i2++) {
            const request = requests[i2];
            util56.errorRequest(this, request, err);
          }
          const callback2 = () => {
            if (this[kClosedResolve]) {
              this[kClosedResolve]();
              this[kClosedResolve] = null;
            }
            resolve3(null);
          };
          if (this[kHTTPContext]) {
            this[kHTTPContext].destroy(err, callback2);
            this[kHTTPContext] = null;
          } else {
            queueMicrotask(callback2);
          }
          this[kResume]();
        });
      }
    };
    function onError(client, err) {
      if (client[kRunning] === 0 && err.code !== "UND_ERR_INFO" && err.code !== "UND_ERR_SOCKET") {
        assert13(client[kPendingIdx] === client[kRunningIdx]);
        const requests = client[kQueue].splice(client[kRunningIdx]);
        for (let i2 = 0; i2 < requests.length; i2++) {
          const request = requests[i2];
          util56.errorRequest(client, request, err);
        }
        assert13(client[kSize] === 0);
      }
    }
    function connect(client) {
      assert13(!client[kConnecting]);
      assert13(!client[kHTTPContext]);
      let { host, hostname, protocol, port } = client[kUrl];
      if (hostname[0] === "[") {
        const idx = hostname.indexOf("]");
        assert13(idx !== -1);
        const ip = hostname.substring(1, idx);
        assert13(net.isIPv6(ip));
        hostname = ip;
      }
      client[kConnecting] = true;
      if (channels.beforeConnect.hasSubscribers) {
        channels.beforeConnect.publish({
          connectParams: {
            host,
            hostname,
            protocol,
            port,
            version: client[kHTTPContext]?.version,
            servername: client[kServerName],
            localAddress: client[kLocalAddress]
          },
          connector: client[kConnector]
        });
      }
      try {
        client[kConnector]({
          host,
          hostname,
          protocol,
          port,
          servername: client[kServerName],
          localAddress: client[kLocalAddress]
        }, (err, socket) => {
          if (err) {
            handleConnectError(client, err, { host, hostname, protocol, port });
            client[kResume]();
            return;
          }
          if (client.destroyed) {
            util56.destroy(socket.on("error", noop5), new ClientDestroyedError());
            client[kResume]();
            return;
          }
          assert13(socket);
          try {
            client[kHTTPContext] = socket.alpnProtocol === "h2" ? connectH2(client, socket) : connectH1(client, socket);
          } catch (err2) {
            socket.destroy().on("error", noop5);
            handleConnectError(client, err2, { host, hostname, protocol, port });
            client[kResume]();
            return;
          }
          client[kConnecting] = false;
          socket[kCounter] = 0;
          socket[kMaxRequests] = client[kMaxRequests];
          socket[kClient] = client;
          socket[kError] = null;
          if (channels.connected.hasSubscribers) {
            channels.connected.publish({
              connectParams: {
                host,
                hostname,
                protocol,
                port,
                version: client[kHTTPContext]?.version,
                servername: client[kServerName],
                localAddress: client[kLocalAddress]
              },
              connector: client[kConnector],
              socket
            });
          }
          client.emit("connect", client[kUrl], [client]);
          client[kResume]();
        });
      } catch (err) {
        handleConnectError(client, err, { host, hostname, protocol, port });
        client[kResume]();
      }
    }
    function handleConnectError(client, err, { host, hostname, protocol, port }) {
      if (client.destroyed) {
        return;
      }
      client[kConnecting] = false;
      if (channels.connectError.hasSubscribers) {
        channels.connectError.publish({
          connectParams: {
            host,
            hostname,
            protocol,
            port,
            version: client[kHTTPContext]?.version,
            servername: client[kServerName],
            localAddress: client[kLocalAddress]
          },
          connector: client[kConnector],
          error: err
        });
      }
      if (err.code === "ERR_TLS_CERT_ALTNAME_INVALID") {
        assert13(client[kRunning] === 0);
        while (client[kPending] > 0 && client[kQueue][client[kPendingIdx]].servername === client[kServerName]) {
          const request = client[kQueue][client[kPendingIdx]++];
          util56.errorRequest(client, request, err);
        }
      } else {
        onError(client, err);
      }
      client.emit("connectionError", client[kUrl], [client], err);
    }
    function emitDrain(client) {
      client[kNeedDrain] = 0;
      client.emit("drain", client[kUrl], [client]);
    }
    function resume(client, sync3) {
      if (client[kResuming] === 2) {
        return;
      }
      client[kResuming] = 2;
      _resume(client, sync3);
      client[kResuming] = 0;
      if (client[kRunningIdx] > 256) {
        client[kQueue].splice(0, client[kRunningIdx]);
        client[kPendingIdx] -= client[kRunningIdx];
        client[kRunningIdx] = 0;
      }
    }
    function _resume(client, sync3) {
      while (true) {
        if (client.destroyed) {
          assert13(client[kPending] === 0);
          return;
        }
        if (client[kClosedResolve] && !client[kSize]) {
          client[kClosedResolve]();
          client[kClosedResolve] = null;
          return;
        }
        if (client[kHTTPContext]) {
          client[kHTTPContext].resume();
        }
        if (client[kBusy]) {
          client[kNeedDrain] = 2;
        } else if (client[kNeedDrain] === 2) {
          if (sync3) {
            client[kNeedDrain] = 1;
            queueMicrotask(() => emitDrain(client));
          } else {
            emitDrain(client);
          }
          continue;
        }
        if (client[kPending] === 0) {
          return;
        }
        if (client[kRunning] >= (getPipelining(client) || 1)) {
          return;
        }
        const request = client[kQueue][client[kPendingIdx]];
        if (request === null) {
          return;
        }
        if (client[kUrl].protocol === "https:" && client[kServerName] !== request.servername) {
          if (client[kRunning] > 0) {
            return;
          }
          client[kServerName] = request.servername;
          client[kHTTPContext]?.destroy(new InformationalError("servername changed"), () => {
            client[kHTTPContext] = null;
            resume(client);
          });
        }
        if (client[kConnecting]) {
          return;
        }
        if (!client[kHTTPContext]) {
          connect(client);
          return;
        }
        if (client[kHTTPContext].destroyed) {
          return;
        }
        if (client[kHTTPContext].busy(request)) {
          return;
        }
        if (!request.aborted && client[kHTTPContext].write(request)) {
          client[kPendingIdx]++;
        } else {
          client[kQueue].splice(client[kPendingIdx], 1);
        }
      }
    }
    module2.exports = Client;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/dispatcher/fixed-queue.js
var require_fixed_queue = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/dispatcher/fixed-queue.js"(exports2, module2) {
    "use strict";
    var kSize = 2048;
    var kMask = kSize - 1;
    var FixedCircularBuffer = class {
      /** @type {number} */
      bottom = 0;
      /** @type {number} */
      top = 0;
      /** @type {Array<T|undefined>} */
      list = new Array(kSize).fill(void 0);
      /** @type {T|null} */
      next = null;
      /** @returns {boolean} */
      isEmpty() {
        return this.top === this.bottom;
      }
      /** @returns {boolean} */
      isFull() {
        return (this.top + 1 & kMask) === this.bottom;
      }
      /**
       * @param {T} data
       * @returns {void}
       */
      push(data) {
        this.list[this.top] = data;
        this.top = this.top + 1 & kMask;
      }
      /** @returns {T|null} */
      shift() {
        const nextItem = this.list[this.bottom];
        if (nextItem === void 0) {
          return null;
        }
        this.list[this.bottom] = void 0;
        this.bottom = this.bottom + 1 & kMask;
        return nextItem;
      }
    };
    module2.exports = class FixedQueue {
      constructor() {
        this.head = this.tail = new FixedCircularBuffer();
      }
      /** @returns {boolean} */
      isEmpty() {
        return this.head.isEmpty();
      }
      /** @param {T} data */
      push(data) {
        if (this.head.isFull()) {
          this.head = this.head.next = new FixedCircularBuffer();
        }
        this.head.push(data);
      }
      /** @returns {T|null} */
      shift() {
        const tail2 = this.tail;
        const next2 = tail2.shift();
        if (tail2.isEmpty() && tail2.next !== null) {
          this.tail = tail2.next;
          tail2.next = null;
        }
        return next2;
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/dispatcher/pool-base.js
var require_pool_base = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/dispatcher/pool-base.js"(exports2, module2) {
    "use strict";
    var { PoolStats } = require_stats();
    var DispatcherBase = require_dispatcher_base();
    var FixedQueue = require_fixed_queue();
    var { kConnected, kSize, kRunning, kPending, kQueued, kBusy, kFree, kUrl, kClose, kDestroy, kDispatch } = require_symbols();
    var kClients = /* @__PURE__ */ Symbol("clients");
    var kNeedDrain = /* @__PURE__ */ Symbol("needDrain");
    var kQueue = /* @__PURE__ */ Symbol("queue");
    var kClosedResolve = /* @__PURE__ */ Symbol("closed resolve");
    var kOnDrain = /* @__PURE__ */ Symbol("onDrain");
    var kOnConnect = /* @__PURE__ */ Symbol("onConnect");
    var kOnDisconnect = /* @__PURE__ */ Symbol("onDisconnect");
    var kOnConnectionError = /* @__PURE__ */ Symbol("onConnectionError");
    var kGetDispatcher = /* @__PURE__ */ Symbol("get dispatcher");
    var kAddClient = /* @__PURE__ */ Symbol("add client");
    var kRemoveClient = /* @__PURE__ */ Symbol("remove client");
    var PoolBase = class extends DispatcherBase {
      [kQueue] = new FixedQueue();
      [kQueued] = 0;
      [kClients] = [];
      [kNeedDrain] = false;
      [kOnDrain](client, origin, targets) {
        const queue2 = this[kQueue];
        let needDrain = false;
        while (!needDrain) {
          const item = queue2.shift();
          if (!item) {
            break;
          }
          this[kQueued]--;
          needDrain = !client.dispatch(item.opts, item.handler);
        }
        client[kNeedDrain] = needDrain;
        if (!needDrain && this[kNeedDrain]) {
          this[kNeedDrain] = false;
          this.emit("drain", origin, [this, ...targets]);
        }
        if (this[kClosedResolve] && queue2.isEmpty()) {
          const closeAll = [];
          for (let i2 = 0; i2 < this[kClients].length; i2++) {
            const client2 = this[kClients][i2];
            if (!client2.destroyed) {
              closeAll.push(client2.close());
            }
          }
          return Promise.all(closeAll).then(this[kClosedResolve]);
        }
      }
      [kOnConnect] = (origin, targets) => {
        this.emit("connect", origin, [this, ...targets]);
      };
      [kOnDisconnect] = (origin, targets, err) => {
        this.emit("disconnect", origin, [this, ...targets], err);
      };
      [kOnConnectionError] = (origin, targets, err) => {
        this.emit("connectionError", origin, [this, ...targets], err);
      };
      get [kBusy]() {
        return this[kNeedDrain];
      }
      get [kConnected]() {
        let ret2 = 0;
        for (const { [kConnected]: connected } of this[kClients]) {
          ret2 += connected;
        }
        return ret2;
      }
      get [kFree]() {
        let ret2 = 0;
        for (const { [kConnected]: connected, [kNeedDrain]: needDrain } of this[kClients]) {
          ret2 += connected && !needDrain;
        }
        return ret2;
      }
      get [kPending]() {
        let ret2 = this[kQueued];
        for (const { [kPending]: pending } of this[kClients]) {
          ret2 += pending;
        }
        return ret2;
      }
      get [kRunning]() {
        let ret2 = 0;
        for (const { [kRunning]: running3 } of this[kClients]) {
          ret2 += running3;
        }
        return ret2;
      }
      get [kSize]() {
        let ret2 = this[kQueued];
        for (const { [kSize]: size } of this[kClients]) {
          ret2 += size;
        }
        return ret2;
      }
      get stats() {
        return new PoolStats(this);
      }
      [kClose]() {
        if (this[kQueue].isEmpty()) {
          const closeAll = [];
          for (let i2 = 0; i2 < this[kClients].length; i2++) {
            const client = this[kClients][i2];
            if (!client.destroyed) {
              closeAll.push(client.close());
            }
          }
          return Promise.all(closeAll);
        } else {
          return new Promise((resolve3) => {
            this[kClosedResolve] = resolve3;
          });
        }
      }
      [kDestroy](err) {
        while (true) {
          const item = this[kQueue].shift();
          if (!item) {
            break;
          }
          item.handler.onError(err);
        }
        const destroyAll = new Array(this[kClients].length);
        for (let i2 = 0; i2 < this[kClients].length; i2++) {
          destroyAll[i2] = this[kClients][i2].destroy(err);
        }
        return Promise.all(destroyAll);
      }
      [kDispatch](opts2, handler77) {
        const dispatcher = this[kGetDispatcher]();
        if (!dispatcher) {
          this[kNeedDrain] = true;
          this[kQueue].push({ opts: opts2, handler: handler77 });
          this[kQueued]++;
        } else if (!dispatcher.dispatch(opts2, handler77)) {
          dispatcher[kNeedDrain] = true;
          this[kNeedDrain] = !this[kGetDispatcher]();
        }
        return !this[kNeedDrain];
      }
      [kAddClient](client) {
        client.on("drain", this[kOnDrain].bind(this, client)).on("connect", this[kOnConnect]).on("disconnect", this[kOnDisconnect]).on("connectionError", this[kOnConnectionError]);
        this[kClients].push(client);
        if (this[kNeedDrain]) {
          queueMicrotask(() => {
            if (this[kNeedDrain]) {
              this[kOnDrain](client, client[kUrl], [client, this]);
            }
          });
        }
        return this;
      }
      [kRemoveClient](client) {
        client.close(() => {
          const idx = this[kClients].indexOf(client);
          if (idx !== -1) {
            this[kClients].splice(idx, 1);
          }
        });
        this[kNeedDrain] = this[kClients].some((dispatcher) => !dispatcher[kNeedDrain] && dispatcher.closed !== true && dispatcher.destroyed !== true);
      }
    };
    module2.exports = {
      PoolBase,
      kClients,
      kNeedDrain,
      kAddClient,
      kRemoveClient,
      kGetDispatcher
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/dispatcher/pool.js
var require_pool = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/dispatcher/pool.js"(exports2, module2) {
    "use strict";
    var {
      PoolBase,
      kClients,
      kNeedDrain,
      kAddClient,
      kGetDispatcher,
      kRemoveClient
    } = require_pool_base();
    var Client = require_client();
    var {
      InvalidArgumentError
    } = require_errors5();
    var util56 = require_util6();
    var { kUrl } = require_symbols();
    var buildConnector = require_connect();
    var kOptions = /* @__PURE__ */ Symbol("options");
    var kConnections = /* @__PURE__ */ Symbol("connections");
    var kFactory = /* @__PURE__ */ Symbol("factory");
    function defaultFactory(origin, opts2) {
      return new Client(origin, opts2);
    }
    var Pool = class extends PoolBase {
      constructor(origin, {
        connections,
        factory = defaultFactory,
        connect,
        connectTimeout,
        tls: tls2,
        maxCachedSessions,
        socketPath,
        autoSelectFamily,
        autoSelectFamilyAttemptTimeout,
        allowH2,
        clientTtl,
        ...options
      } = {}) {
        if (connections != null && (!Number.isFinite(connections) || connections < 0)) {
          throw new InvalidArgumentError("invalid connections");
        }
        if (typeof factory !== "function") {
          throw new InvalidArgumentError("factory must be a function.");
        }
        if (connect != null && typeof connect !== "function" && typeof connect !== "object") {
          throw new InvalidArgumentError("connect must be a function or an object");
        }
        if (typeof connect !== "function") {
          connect = buildConnector({
            ...tls2,
            maxCachedSessions,
            allowH2,
            socketPath,
            timeout: connectTimeout,
            ...typeof autoSelectFamily === "boolean" ? { autoSelectFamily, autoSelectFamilyAttemptTimeout } : void 0,
            ...connect
          });
        }
        super();
        this[kConnections] = connections || null;
        this[kUrl] = util56.parseOrigin(origin);
        this[kOptions] = { ...util56.deepClone(options), connect, allowH2, clientTtl, socketPath };
        this[kOptions].interceptors = options.interceptors ? { ...options.interceptors } : void 0;
        this[kFactory] = factory;
        this.on("connect", (origin2, targets) => {
          if (clientTtl != null && clientTtl > 0) {
            for (const target2 of targets) {
              Object.assign(target2, { ttl: Date.now() });
            }
          }
        });
        this.on("connectionError", (origin2, targets, error) => {
          for (const target2 of targets) {
            const idx = this[kClients].indexOf(target2);
            if (idx !== -1) {
              this[kClients].splice(idx, 1);
            }
          }
        });
      }
      [kGetDispatcher]() {
        const clientTtlOption = this[kOptions].clientTtl;
        for (const client of this[kClients]) {
          if (clientTtlOption != null && clientTtlOption > 0 && client.ttl && Date.now() - client.ttl > clientTtlOption) {
            this[kRemoveClient](client);
          } else if (!client[kNeedDrain]) {
            return client;
          }
        }
        if (!this[kConnections] || this[kClients].length < this[kConnections]) {
          const dispatcher = this[kFactory](this[kUrl], this[kOptions]);
          this[kAddClient](dispatcher);
          return dispatcher;
        }
      }
    };
    module2.exports = Pool;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/dispatcher/balanced-pool.js
var require_balanced_pool = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/dispatcher/balanced-pool.js"(exports2, module2) {
    "use strict";
    var {
      BalancedPoolMissingUpstreamError,
      InvalidArgumentError
    } = require_errors5();
    var {
      PoolBase,
      kClients,
      kNeedDrain,
      kAddClient,
      kRemoveClient,
      kGetDispatcher
    } = require_pool_base();
    var Pool = require_pool();
    var { kUrl } = require_symbols();
    var util56 = require_util6();
    var kFactory = /* @__PURE__ */ Symbol("factory");
    var kOptions = /* @__PURE__ */ Symbol("options");
    var kGreatestCommonDivisor = /* @__PURE__ */ Symbol("kGreatestCommonDivisor");
    var kCurrentWeight = /* @__PURE__ */ Symbol("kCurrentWeight");
    var kIndex = /* @__PURE__ */ Symbol("kIndex");
    var kWeight = /* @__PURE__ */ Symbol("kWeight");
    var kMaxWeightPerServer = /* @__PURE__ */ Symbol("kMaxWeightPerServer");
    var kErrorPenalty = /* @__PURE__ */ Symbol("kErrorPenalty");
    function getGreatestCommonDivisor(a2, b) {
      if (a2 === 0) return b;
      while (b !== 0) {
        const t2 = b;
        b = a2 % b;
        a2 = t2;
      }
      return a2;
    }
    function defaultFactory(origin, opts2) {
      return new Pool(origin, opts2);
    }
    var BalancedPool = class extends PoolBase {
      constructor(upstreams = [], { factory = defaultFactory, ...opts2 } = {}) {
        if (typeof factory !== "function") {
          throw new InvalidArgumentError("factory must be a function.");
        }
        super();
        this[kOptions] = { ...util56.deepClone(opts2) };
        this[kOptions].interceptors = opts2.interceptors ? { ...opts2.interceptors } : void 0;
        this[kIndex] = -1;
        this[kCurrentWeight] = 0;
        this[kMaxWeightPerServer] = this[kOptions].maxWeightPerServer || 100;
        this[kErrorPenalty] = this[kOptions].errorPenalty || 15;
        if (!Array.isArray(upstreams)) {
          upstreams = [upstreams];
        }
        this[kFactory] = factory;
        for (const upstream of upstreams) {
          this.addUpstream(upstream);
        }
        this._updateBalancedPoolStats();
      }
      addUpstream(upstream) {
        const upstreamOrigin = util56.parseOrigin(upstream).origin;
        if (this[kClients].find((pool2) => pool2[kUrl].origin === upstreamOrigin && pool2.closed !== true && pool2.destroyed !== true)) {
          return this;
        }
        const pool = this[kFactory](upstreamOrigin, this[kOptions]);
        this[kAddClient](pool);
        pool.on("connect", () => {
          pool[kWeight] = Math.min(this[kMaxWeightPerServer], pool[kWeight] + this[kErrorPenalty]);
        });
        pool.on("connectionError", () => {
          pool[kWeight] = Math.max(1, pool[kWeight] - this[kErrorPenalty]);
          this._updateBalancedPoolStats();
        });
        pool.on("disconnect", (...args) => {
          const err = args[2];
          if (err && err.code === "UND_ERR_SOCKET") {
            pool[kWeight] = Math.max(1, pool[kWeight] - this[kErrorPenalty]);
            this._updateBalancedPoolStats();
          }
        });
        for (const client of this[kClients]) {
          client[kWeight] = this[kMaxWeightPerServer];
        }
        this._updateBalancedPoolStats();
        return this;
      }
      _updateBalancedPoolStats() {
        let result2 = 0;
        for (let i2 = 0; i2 < this[kClients].length; i2++) {
          result2 = getGreatestCommonDivisor(this[kClients][i2][kWeight], result2);
        }
        this[kGreatestCommonDivisor] = result2;
      }
      removeUpstream(upstream) {
        const upstreamOrigin = util56.parseOrigin(upstream).origin;
        const pool = this[kClients].find((pool2) => pool2[kUrl].origin === upstreamOrigin && pool2.closed !== true && pool2.destroyed !== true);
        if (pool) {
          this[kRemoveClient](pool);
        }
        return this;
      }
      getUpstream(upstream) {
        const upstreamOrigin = util56.parseOrigin(upstream).origin;
        return this[kClients].find((pool) => pool[kUrl].origin === upstreamOrigin && pool.closed !== true && pool.destroyed !== true);
      }
      get upstreams() {
        return this[kClients].filter((dispatcher) => dispatcher.closed !== true && dispatcher.destroyed !== true).map((p) => p[kUrl].origin);
      }
      [kGetDispatcher]() {
        if (this[kClients].length === 0) {
          throw new BalancedPoolMissingUpstreamError();
        }
        const dispatcher = this[kClients].find((dispatcher2) => !dispatcher2[kNeedDrain] && dispatcher2.closed !== true && dispatcher2.destroyed !== true);
        if (!dispatcher) {
          return;
        }
        const allClientsBusy = this[kClients].map((pool) => pool[kNeedDrain]).reduce((a2, b) => a2 && b, true);
        if (allClientsBusy) {
          return;
        }
        let counter = 0;
        let maxWeightIndex = this[kClients].findIndex((pool) => !pool[kNeedDrain]);
        while (counter++ < this[kClients].length) {
          this[kIndex] = (this[kIndex] + 1) % this[kClients].length;
          const pool = this[kClients][this[kIndex]];
          if (pool[kWeight] > this[kClients][maxWeightIndex][kWeight] && !pool[kNeedDrain]) {
            maxWeightIndex = this[kIndex];
          }
          if (this[kIndex] === 0) {
            this[kCurrentWeight] = this[kCurrentWeight] - this[kGreatestCommonDivisor];
            if (this[kCurrentWeight] <= 0) {
              this[kCurrentWeight] = this[kMaxWeightPerServer];
            }
          }
          if (pool[kWeight] >= this[kCurrentWeight] && !pool[kNeedDrain]) {
            return pool;
          }
        }
        this[kCurrentWeight] = this[kClients][maxWeightIndex][kWeight];
        this[kIndex] = maxWeightIndex;
        return this[kClients][maxWeightIndex];
      }
    };
    module2.exports = BalancedPool;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/dispatcher/round-robin-pool.js
var require_round_robin_pool = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/dispatcher/round-robin-pool.js"(exports2, module2) {
    "use strict";
    var {
      PoolBase,
      kClients,
      kNeedDrain,
      kAddClient,
      kGetDispatcher,
      kRemoveClient
    } = require_pool_base();
    var Client = require_client();
    var {
      InvalidArgumentError
    } = require_errors5();
    var util56 = require_util6();
    var { kUrl } = require_symbols();
    var buildConnector = require_connect();
    var kOptions = /* @__PURE__ */ Symbol("options");
    var kConnections = /* @__PURE__ */ Symbol("connections");
    var kFactory = /* @__PURE__ */ Symbol("factory");
    var kIndex = /* @__PURE__ */ Symbol("index");
    function defaultFactory(origin, opts2) {
      return new Client(origin, opts2);
    }
    var RoundRobinPool = class extends PoolBase {
      constructor(origin, {
        connections,
        factory = defaultFactory,
        connect,
        connectTimeout,
        tls: tls2,
        maxCachedSessions,
        socketPath,
        autoSelectFamily,
        autoSelectFamilyAttemptTimeout,
        allowH2,
        clientTtl,
        ...options
      } = {}) {
        if (connections != null && (!Number.isFinite(connections) || connections < 0)) {
          throw new InvalidArgumentError("invalid connections");
        }
        if (typeof factory !== "function") {
          throw new InvalidArgumentError("factory must be a function.");
        }
        if (connect != null && typeof connect !== "function" && typeof connect !== "object") {
          throw new InvalidArgumentError("connect must be a function or an object");
        }
        if (typeof connect !== "function") {
          connect = buildConnector({
            ...tls2,
            maxCachedSessions,
            allowH2,
            socketPath,
            timeout: connectTimeout,
            ...typeof autoSelectFamily === "boolean" ? { autoSelectFamily, autoSelectFamilyAttemptTimeout } : void 0,
            ...connect
          });
        }
        super();
        this[kConnections] = connections || null;
        this[kUrl] = util56.parseOrigin(origin);
        this[kOptions] = { ...util56.deepClone(options), connect, allowH2, clientTtl, socketPath };
        this[kOptions].interceptors = options.interceptors ? { ...options.interceptors } : void 0;
        this[kFactory] = factory;
        this[kIndex] = -1;
        this.on("connect", (origin2, targets) => {
          if (clientTtl != null && clientTtl > 0) {
            for (const target2 of targets) {
              Object.assign(target2, { ttl: Date.now() });
            }
          }
        });
        this.on("connectionError", (origin2, targets, error) => {
          for (const target2 of targets) {
            const idx = this[kClients].indexOf(target2);
            if (idx !== -1) {
              this[kClients].splice(idx, 1);
            }
          }
        });
      }
      [kGetDispatcher]() {
        const clientTtlOption = this[kOptions].clientTtl;
        const clientsLength = this[kClients].length;
        if (clientsLength === 0) {
          const dispatcher = this[kFactory](this[kUrl], this[kOptions]);
          this[kAddClient](dispatcher);
          return dispatcher;
        }
        let checked = 0;
        while (checked < clientsLength) {
          this[kIndex] = (this[kIndex] + 1) % clientsLength;
          const client = this[kClients][this[kIndex]];
          if (clientTtlOption != null && clientTtlOption > 0 && client.ttl && Date.now() - client.ttl > clientTtlOption) {
            this[kRemoveClient](client);
            checked++;
            continue;
          }
          if (!client[kNeedDrain]) {
            return client;
          }
          checked++;
        }
        if (!this[kConnections] || clientsLength < this[kConnections]) {
          const dispatcher = this[kFactory](this[kUrl], this[kOptions]);
          this[kAddClient](dispatcher);
          return dispatcher;
        }
      }
    };
    module2.exports = RoundRobinPool;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/dispatcher/agent.js
var require_agent = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/dispatcher/agent.js"(exports2, module2) {
    "use strict";
    var { InvalidArgumentError, MaxOriginsReachedError } = require_errors5();
    var { kClients, kRunning, kClose, kDestroy, kDispatch, kUrl } = require_symbols();
    var DispatcherBase = require_dispatcher_base();
    var Pool = require_pool();
    var Client = require_client();
    var util56 = require_util6();
    var kOnConnect = /* @__PURE__ */ Symbol("onConnect");
    var kOnDisconnect = /* @__PURE__ */ Symbol("onDisconnect");
    var kOnConnectionError = /* @__PURE__ */ Symbol("onConnectionError");
    var kOnDrain = /* @__PURE__ */ Symbol("onDrain");
    var kFactory = /* @__PURE__ */ Symbol("factory");
    var kOptions = /* @__PURE__ */ Symbol("options");
    var kOrigins = /* @__PURE__ */ Symbol("origins");
    function defaultFactory(origin, opts2) {
      return opts2 && opts2.connections === 1 ? new Client(origin, opts2) : new Pool(origin, opts2);
    }
    var Agent2 = class extends DispatcherBase {
      constructor({ factory = defaultFactory, maxOrigins = Infinity, connect, ...options } = {}) {
        if (typeof factory !== "function") {
          throw new InvalidArgumentError("factory must be a function.");
        }
        if (connect != null && typeof connect !== "function" && typeof connect !== "object") {
          throw new InvalidArgumentError("connect must be a function or an object");
        }
        if (typeof maxOrigins !== "number" || Number.isNaN(maxOrigins) || maxOrigins <= 0) {
          throw new InvalidArgumentError("maxOrigins must be a number greater than 0");
        }
        super();
        if (connect && typeof connect !== "function") {
          connect = { ...connect };
        }
        this[kOptions] = { ...util56.deepClone(options), maxOrigins, connect };
        this[kFactory] = factory;
        this[kClients] = /* @__PURE__ */ new Map();
        this[kOrigins] = /* @__PURE__ */ new Set();
        this[kOnDrain] = (origin, targets) => {
          this.emit("drain", origin, [this, ...targets]);
        };
        this[kOnConnect] = (origin, targets) => {
          this.emit("connect", origin, [this, ...targets]);
        };
        this[kOnDisconnect] = (origin, targets, err) => {
          this.emit("disconnect", origin, [this, ...targets], err);
        };
        this[kOnConnectionError] = (origin, targets, err) => {
          this.emit("connectionError", origin, [this, ...targets], err);
        };
      }
      get [kRunning]() {
        let ret2 = 0;
        for (const { dispatcher } of this[kClients].values()) {
          ret2 += dispatcher[kRunning];
        }
        return ret2;
      }
      [kDispatch](opts2, handler77) {
        let key;
        if (opts2.origin && (typeof opts2.origin === "string" || opts2.origin instanceof URL)) {
          key = String(opts2.origin);
        } else {
          throw new InvalidArgumentError("opts.origin must be a non-empty string or URL.");
        }
        if (this[kOrigins].size >= this[kOptions].maxOrigins && !this[kOrigins].has(key)) {
          throw new MaxOriginsReachedError();
        }
        const result2 = this[kClients].get(key);
        let dispatcher = result2 && result2.dispatcher;
        if (!dispatcher) {
          const closeClientIfUnused = (connected) => {
            const result3 = this[kClients].get(key);
            if (result3) {
              if (connected) result3.count -= 1;
              if (result3.count <= 0) {
                this[kClients].delete(key);
                if (!result3.dispatcher.destroyed) {
                  result3.dispatcher.close();
                }
              }
              this[kOrigins].delete(key);
            }
          };
          dispatcher = this[kFactory](opts2.origin, this[kOptions]).on("drain", this[kOnDrain]).on("connect", (origin, targets) => {
            const result3 = this[kClients].get(key);
            if (result3) {
              result3.count += 1;
            }
            this[kOnConnect](origin, targets);
          }).on("disconnect", (origin, targets, err) => {
            closeClientIfUnused(true);
            this[kOnDisconnect](origin, targets, err);
          }).on("connectionError", (origin, targets, err) => {
            closeClientIfUnused(false);
            this[kOnConnectionError](origin, targets, err);
          });
          this[kClients].set(key, { count: 0, dispatcher });
          this[kOrigins].add(key);
        }
        return dispatcher.dispatch(opts2, handler77);
      }
      [kClose]() {
        const closePromises = [];
        for (const { dispatcher } of this[kClients].values()) {
          closePromises.push(dispatcher.close());
        }
        this[kClients].clear();
        return Promise.all(closePromises);
      }
      [kDestroy](err) {
        const destroyPromises = [];
        for (const { dispatcher } of this[kClients].values()) {
          destroyPromises.push(dispatcher.destroy(err));
        }
        this[kClients].clear();
        return Promise.all(destroyPromises);
      }
      get stats() {
        const allClientStats = {};
        for (const { dispatcher } of this[kClients].values()) {
          if (dispatcher.stats) {
            allClientStats[dispatcher[kUrl].origin] = dispatcher.stats;
          }
        }
        return allClientStats;
      }
    };
    module2.exports = Agent2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/core/socks5-utils.js
var require_socks5_utils = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/core/socks5-utils.js"(exports2, module2) {
    "use strict";
    var { Buffer: Buffer5 } = __require("node:buffer");
    var net = __require("node:net");
    var { InvalidArgumentError } = require_errors5();
    function parseAddress(address) {
      if (net.isIPv4(address)) {
        const parts = address.split(".").map(Number);
        return {
          type: 1,
          // IPv4
          buffer: Buffer5.from(parts)
        };
      }
      if (net.isIPv6(address)) {
        return {
          type: 4,
          // IPv6
          buffer: parseIPv6(address)
        };
      }
      const domainBuffer = Buffer5.from(address, "utf8");
      if (domainBuffer.length > 255) {
        throw new InvalidArgumentError("Domain name too long (max 255 bytes)");
      }
      return {
        type: 3,
        // Domain
        buffer: Buffer5.concat([Buffer5.from([domainBuffer.length]), domainBuffer])
      };
    }
    function parseIPv6(address) {
      const buffer3 = Buffer5.alloc(16);
      const parts = address.split(":");
      let partIndex = 0;
      let bufferIndex = 0;
      const doubleColonIndex = address.indexOf("::");
      if (doubleColonIndex !== -1) {
        const nonEmptyParts = parts.filter((p) => p.length > 0).length;
        const skipParts = 8 - nonEmptyParts;
        for (let i2 = 0; i2 < parts.length; i2++) {
          if (parts[i2] === "" && i2 === doubleColonIndex / 3) {
            bufferIndex += skipParts * 2;
          } else if (parts[i2] !== "") {
            const value = parseInt(parts[i2], 16);
            buffer3.writeUInt16BE(value, bufferIndex);
            bufferIndex += 2;
          }
        }
      } else {
        for (const part of parts) {
          if (part === "") continue;
          const value = parseInt(part, 16);
          buffer3.writeUInt16BE(value, partIndex * 2);
          partIndex++;
        }
      }
      return buffer3;
    }
    function buildAddressBuffer(type4, addressBuffer, port) {
      const portBuffer = Buffer5.allocUnsafe(2);
      portBuffer.writeUInt16BE(port, 0);
      return Buffer5.concat([
        Buffer5.from([type4]),
        addressBuffer,
        portBuffer
      ]);
    }
    function parseResponseAddress(buffer3, offset = 0) {
      if (buffer3.length < offset + 1) {
        throw new InvalidArgumentError("Buffer too small to contain address type");
      }
      const addressType = buffer3[offset];
      let address;
      let currentOffset = offset + 1;
      switch (addressType) {
        case 1: {
          if (buffer3.length < currentOffset + 6) {
            throw new InvalidArgumentError("Buffer too small for IPv4 address");
          }
          address = Array.from(buffer3.subarray(currentOffset, currentOffset + 4)).join(".");
          currentOffset += 4;
          break;
        }
        case 3: {
          if (buffer3.length < currentOffset + 1) {
            throw new InvalidArgumentError("Buffer too small for domain length");
          }
          const domainLength = buffer3[currentOffset];
          currentOffset += 1;
          if (buffer3.length < currentOffset + domainLength + 2) {
            throw new InvalidArgumentError("Buffer too small for domain address");
          }
          address = buffer3.subarray(currentOffset, currentOffset + domainLength).toString("utf8");
          currentOffset += domainLength;
          break;
        }
        case 4: {
          if (buffer3.length < currentOffset + 18) {
            throw new InvalidArgumentError("Buffer too small for IPv6 address");
          }
          const parts = [];
          for (let i2 = 0; i2 < 8; i2++) {
            const value = buffer3.readUInt16BE(currentOffset + i2 * 2);
            parts.push(value.toString(16));
          }
          address = parts.join(":");
          currentOffset += 16;
          break;
        }
        default:
          throw new InvalidArgumentError(`Invalid address type: ${addressType}`);
      }
      if (buffer3.length < currentOffset + 2) {
        throw new InvalidArgumentError("Buffer too small for port");
      }
      const port = buffer3.readUInt16BE(currentOffset);
      currentOffset += 2;
      return {
        address,
        port,
        bytesRead: currentOffset - offset
      };
    }
    function createReplyError(replyCode) {
      const messages = {
        1: "General SOCKS server failure",
        2: "Connection not allowed by ruleset",
        3: "Network unreachable",
        4: "Host unreachable",
        5: "Connection refused",
        6: "TTL expired",
        7: "Command not supported",
        8: "Address type not supported"
      };
      const message = messages[replyCode] || `Unknown SOCKS5 error code: ${replyCode}`;
      const error = new Error(message);
      error.code = `SOCKS5_${replyCode}`;
      return error;
    }
    module2.exports = {
      parseAddress,
      parseIPv6,
      buildAddressBuffer,
      parseResponseAddress,
      createReplyError
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/core/socks5-client.js
var require_socks5_client = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/core/socks5-client.js"(exports2, module2) {
    "use strict";
    var { EventEmitter: EventEmitter4 } = __require("node:events");
    var { Buffer: Buffer5 } = __require("node:buffer");
    var { InvalidArgumentError, Socks5ProxyError } = require_errors5();
    var { debuglog: debuglog2 } = __require("node:util");
    var { parseAddress } = require_socks5_utils();
    var debug = debuglog2("undici:socks5");
    var SOCKS_VERSION = 5;
    var AUTH_METHODS = {
      NO_AUTH: 0,
      GSSAPI: 1,
      USERNAME_PASSWORD: 2,
      NO_ACCEPTABLE: 255
    };
    var COMMANDS = {
      CONNECT: 1,
      BIND: 2,
      UDP_ASSOCIATE: 3
    };
    var ADDRESS_TYPES = {
      IPV4: 1,
      DOMAIN: 3,
      IPV6: 4
    };
    var REPLY_CODES = {
      SUCCEEDED: 0,
      GENERAL_FAILURE: 1,
      CONNECTION_NOT_ALLOWED: 2,
      NETWORK_UNREACHABLE: 3,
      HOST_UNREACHABLE: 4,
      CONNECTION_REFUSED: 5,
      TTL_EXPIRED: 6,
      COMMAND_NOT_SUPPORTED: 7,
      ADDRESS_TYPE_NOT_SUPPORTED: 8
    };
    var STATES = {
      INITIAL: "initial",
      HANDSHAKING: "handshaking",
      AUTHENTICATING: "authenticating",
      CONNECTING: "connecting",
      CONNECTED: "connected",
      ERROR: "error",
      CLOSED: "closed"
    };
    var Socks5Client = class extends EventEmitter4 {
      constructor(socket, options = {}) {
        super();
        if (!socket) {
          throw new InvalidArgumentError("socket is required");
        }
        this.socket = socket;
        this.options = options;
        this.state = STATES.INITIAL;
        this.buffer = Buffer5.alloc(0);
        this.authMethods = [];
        if (options.username && options.password) {
          this.authMethods.push(AUTH_METHODS.USERNAME_PASSWORD);
        }
        this.authMethods.push(AUTH_METHODS.NO_AUTH);
        this.socket.on("data", this.onData.bind(this));
        this.socket.on("error", this.onError.bind(this));
        this.socket.on("close", this.onClose.bind(this));
      }
      /**
       * Handle incoming data from the socket
       */
      onData(data) {
        debug("received data", data.length, "bytes in state", this.state);
        this.buffer = Buffer5.concat([this.buffer, data]);
        try {
          switch (this.state) {
            case STATES.HANDSHAKING:
              this.handleHandshakeResponse();
              break;
            case STATES.AUTHENTICATING:
              this.handleAuthResponse();
              break;
            case STATES.CONNECTING:
              this.handleConnectResponse();
              break;
          }
        } catch (err) {
          this.onError(err);
        }
      }
      /**
       * Handle socket errors
       */
      onError(err) {
        debug("socket error", err);
        this.state = STATES.ERROR;
        this.emit("error", err);
        this.destroy();
      }
      /**
       * Handle socket close
       */
      onClose() {
        debug("socket closed");
        this.state = STATES.CLOSED;
        this.emit("close");
      }
      /**
       * Destroy the client and underlying socket
       */
      destroy() {
        if (this.socket && !this.socket.destroyed) {
          this.socket.destroy();
        }
      }
      /**
       * Start the SOCKS5 handshake
       */
      handshake() {
        if (this.state !== STATES.INITIAL) {
          throw new InvalidArgumentError("Handshake already started");
        }
        debug("starting handshake with", this.authMethods.length, "auth methods");
        this.state = STATES.HANDSHAKING;
        const request = Buffer5.alloc(2 + this.authMethods.length);
        request[0] = SOCKS_VERSION;
        request[1] = this.authMethods.length;
        this.authMethods.forEach((method, i2) => {
          request[2 + i2] = method;
        });
        this.socket.write(request);
      }
      /**
       * Handle handshake response from server
       */
      handleHandshakeResponse() {
        if (this.buffer.length < 2) {
          return;
        }
        const version2 = this.buffer[0];
        const method = this.buffer[1];
        if (version2 !== SOCKS_VERSION) {
          throw new Socks5ProxyError(`Invalid SOCKS version: ${version2}`, "UND_ERR_SOCKS5_VERSION");
        }
        if (method === AUTH_METHODS.NO_ACCEPTABLE) {
          throw new Socks5ProxyError("No acceptable authentication method", "UND_ERR_SOCKS5_AUTH_REJECTED");
        }
        this.buffer = this.buffer.subarray(2);
        debug("server selected auth method", method);
        if (method === AUTH_METHODS.NO_AUTH) {
          this.emit("authenticated");
        } else if (method === AUTH_METHODS.USERNAME_PASSWORD) {
          this.state = STATES.AUTHENTICATING;
          this.sendAuthRequest();
        } else {
          throw new Socks5ProxyError(`Unsupported authentication method: ${method}`, "UND_ERR_SOCKS5_AUTH_METHOD");
        }
      }
      /**
       * Send username/password authentication request
       */
      sendAuthRequest() {
        const { username, password } = this.options;
        if (!username || !password) {
          throw new InvalidArgumentError("Username and password required for authentication");
        }
        debug("sending username/password auth");
        const usernameBuffer = Buffer5.from(username);
        const passwordBuffer = Buffer5.from(password);
        if (usernameBuffer.length > 255 || passwordBuffer.length > 255) {
          throw new InvalidArgumentError("Username or password too long");
        }
        const request = Buffer5.alloc(3 + usernameBuffer.length + passwordBuffer.length);
        request[0] = 1;
        request[1] = usernameBuffer.length;
        usernameBuffer.copy(request, 2);
        request[2 + usernameBuffer.length] = passwordBuffer.length;
        passwordBuffer.copy(request, 3 + usernameBuffer.length);
        this.socket.write(request);
      }
      /**
       * Handle authentication response
       */
      handleAuthResponse() {
        if (this.buffer.length < 2) {
          return;
        }
        const version2 = this.buffer[0];
        const status = this.buffer[1];
        if (version2 !== 1) {
          throw new Socks5ProxyError(`Invalid auth sub-negotiation version: ${version2}`, "UND_ERR_SOCKS5_AUTH_VERSION");
        }
        if (status !== 0) {
          throw new Socks5ProxyError("Authentication failed", "UND_ERR_SOCKS5_AUTH_FAILED");
        }
        this.buffer = this.buffer.subarray(2);
        debug("authentication successful");
        this.emit("authenticated");
      }
      /**
       * Send CONNECT command
       * @param {string} address - Target address (IP or domain)
       * @param {number} port - Target port
       */
      connect(address, port) {
        if (this.state === STATES.CONNECTED) {
          throw new InvalidArgumentError("Already connected");
        }
        debug("connecting to", address, port);
        this.state = STATES.CONNECTING;
        const request = this.buildConnectRequest(COMMANDS.CONNECT, address, port);
        this.socket.write(request);
      }
      /**
       * Build a SOCKS5 request
       */
      buildConnectRequest(command, address, port) {
        const { type: addressType, buffer: addressBuffer } = parseAddress(address);
        const request = Buffer5.alloc(4 + addressBuffer.length + 2);
        request[0] = SOCKS_VERSION;
        request[1] = command;
        request[2] = 0;
        request[3] = addressType;
        addressBuffer.copy(request, 4);
        request.writeUInt16BE(port, 4 + addressBuffer.length);
        return request;
      }
      /**
       * Handle CONNECT response
       */
      handleConnectResponse() {
        if (this.buffer.length < 4) {
          return;
        }
        const version2 = this.buffer[0];
        const reply = this.buffer[1];
        const addressType = this.buffer[3];
        if (version2 !== SOCKS_VERSION) {
          throw new Socks5ProxyError(`Invalid SOCKS version in reply: ${version2}`, "UND_ERR_SOCKS5_REPLY_VERSION");
        }
        let responseLength = 4;
        if (addressType === ADDRESS_TYPES.IPV4) {
          responseLength += 4 + 2;
        } else if (addressType === ADDRESS_TYPES.DOMAIN) {
          if (this.buffer.length < 5) {
            return;
          }
          responseLength += 1 + this.buffer[4] + 2;
        } else if (addressType === ADDRESS_TYPES.IPV6) {
          responseLength += 16 + 2;
        } else {
          throw new Socks5ProxyError(`Invalid address type in reply: ${addressType}`, "UND_ERR_SOCKS5_ADDR_TYPE");
        }
        if (this.buffer.length < responseLength) {
          return;
        }
        if (reply !== REPLY_CODES.SUCCEEDED) {
          const errorMessage = this.getReplyErrorMessage(reply);
          throw new Socks5ProxyError(`SOCKS5 connection failed: ${errorMessage}`, `UND_ERR_SOCKS5_REPLY_${reply}`);
        }
        let boundAddress;
        let offset = 4;
        if (addressType === ADDRESS_TYPES.IPV4) {
          boundAddress = Array.from(this.buffer.subarray(offset, offset + 4)).join(".");
          offset += 4;
        } else if (addressType === ADDRESS_TYPES.DOMAIN) {
          const domainLength = this.buffer[offset];
          offset += 1;
          boundAddress = this.buffer.subarray(offset, offset + domainLength).toString();
          offset += domainLength;
        } else if (addressType === ADDRESS_TYPES.IPV6) {
          const parts = [];
          for (let i2 = 0; i2 < 8; i2++) {
            const value = this.buffer.readUInt16BE(offset + i2 * 2);
            parts.push(value.toString(16));
          }
          boundAddress = parts.join(":");
          offset += 16;
        }
        const boundPort = this.buffer.readUInt16BE(offset);
        this.buffer = this.buffer.subarray(responseLength);
        this.state = STATES.CONNECTED;
        debug("connected, bound address:", boundAddress, "port:", boundPort);
        this.emit("connected", { address: boundAddress, port: boundPort });
      }
      /**
       * Get human-readable error message for reply code
       */
      getReplyErrorMessage(reply) {
        switch (reply) {
          case REPLY_CODES.GENERAL_FAILURE:
            return "General SOCKS server failure";
          case REPLY_CODES.CONNECTION_NOT_ALLOWED:
            return "Connection not allowed by ruleset";
          case REPLY_CODES.NETWORK_UNREACHABLE:
            return "Network unreachable";
          case REPLY_CODES.HOST_UNREACHABLE:
            return "Host unreachable";
          case REPLY_CODES.CONNECTION_REFUSED:
            return "Connection refused";
          case REPLY_CODES.TTL_EXPIRED:
            return "TTL expired";
          case REPLY_CODES.COMMAND_NOT_SUPPORTED:
            return "Command not supported";
          case REPLY_CODES.ADDRESS_TYPE_NOT_SUPPORTED:
            return "Address type not supported";
          default:
            return `Unknown error code: ${reply}`;
        }
      }
    };
    module2.exports = {
      Socks5Client,
      AUTH_METHODS,
      COMMANDS,
      ADDRESS_TYPES,
      REPLY_CODES,
      STATES
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/dispatcher/socks5-proxy-agent.js
var require_socks5_proxy_agent = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/dispatcher/socks5-proxy-agent.js"(exports2, module2) {
    "use strict";
    var net = __require("node:net");
    var { URL: URL7 } = __require("node:url");
    var tls2;
    var DispatcherBase = require_dispatcher_base();
    var { InvalidArgumentError } = require_errors5();
    var { Socks5Client } = require_socks5_client();
    var { kDispatch, kClose, kDestroy } = require_symbols();
    var Pool = require_pool();
    var buildConnector = require_connect();
    var { debuglog: debuglog2 } = __require("node:util");
    var debug = debuglog2("undici:socks5-proxy");
    var kProxyUrl = /* @__PURE__ */ Symbol("proxy url");
    var kProxyHeaders = /* @__PURE__ */ Symbol("proxy headers");
    var kProxyAuth = /* @__PURE__ */ Symbol("proxy auth");
    var kPool = /* @__PURE__ */ Symbol("pool");
    var kConnector = /* @__PURE__ */ Symbol("connector");
    var experimentalWarningEmitted = false;
    var Socks5ProxyAgent = class extends DispatcherBase {
      constructor(proxyUrl, options = {}) {
        super();
        if (!experimentalWarningEmitted) {
          process.emitWarning(
            "SOCKS5 proxy support is experimental and subject to change",
            "ExperimentalWarning"
          );
          experimentalWarningEmitted = true;
        }
        if (!proxyUrl) {
          throw new InvalidArgumentError("Proxy URL is mandatory");
        }
        const url7 = typeof proxyUrl === "string" ? new URL7(proxyUrl) : proxyUrl;
        if (url7.protocol !== "socks5:" && url7.protocol !== "socks:") {
          throw new InvalidArgumentError("Proxy URL must use socks5:// or socks:// protocol");
        }
        this[kProxyUrl] = url7;
        this[kProxyHeaders] = options.headers || {};
        this[kProxyAuth] = {
          username: options.username || (url7.username ? decodeURIComponent(url7.username) : null),
          password: options.password || (url7.password ? decodeURIComponent(url7.password) : null)
        };
        this[kConnector] = options.connect || buildConnector({
          ...options.proxyTls,
          servername: options.proxyTls?.servername || url7.hostname
        });
        this[kPool] = null;
      }
      /**
       * Create a SOCKS5 connection to the proxy
       */
      async createSocks5Connection(targetHost, targetPort) {
        const proxyHost = this[kProxyUrl].hostname;
        const proxyPort = parseInt(this[kProxyUrl].port) || 1080;
        debug("creating SOCKS5 connection to", proxyHost, proxyPort);
        const socket = await new Promise((resolve3, reject3) => {
          const onConnect = () => {
            socket2.removeListener("error", onError);
            resolve3(socket2);
          };
          const onError = (err) => {
            socket2.removeListener("connect", onConnect);
            reject3(err);
          };
          const socket2 = net.connect({
            host: proxyHost,
            port: proxyPort
          });
          socket2.once("connect", onConnect);
          socket2.once("error", onError);
        });
        const socks5Client = new Socks5Client(socket, this[kProxyAuth]);
        socks5Client.on("error", (err) => {
          debug("SOCKS5 error:", err);
          socket.destroy();
        });
        await socks5Client.handshake();
        await new Promise((resolve3, reject3) => {
          const timeout = setTimeout(() => {
            reject3(new Error("SOCKS5 authentication timeout"));
          }, 5e3);
          const onAuthenticated = () => {
            clearTimeout(timeout);
            socks5Client.removeListener("error", onError);
            resolve3();
          };
          const onError = (err) => {
            clearTimeout(timeout);
            socks5Client.removeListener("authenticated", onAuthenticated);
            reject3(err);
          };
          if (socks5Client.state === "authenticated") {
            clearTimeout(timeout);
            resolve3();
          } else {
            socks5Client.once("authenticated", onAuthenticated);
            socks5Client.once("error", onError);
          }
        });
        await socks5Client.connect(targetHost, targetPort);
        await new Promise((resolve3, reject3) => {
          const timeout = setTimeout(() => {
            reject3(new Error("SOCKS5 connection timeout"));
          }, 5e3);
          const onConnected = (info) => {
            debug("SOCKS5 tunnel established to", targetHost, targetPort, "via", info);
            clearTimeout(timeout);
            socks5Client.removeListener("error", onError);
            resolve3();
          };
          const onError = (err) => {
            clearTimeout(timeout);
            socks5Client.removeListener("connected", onConnected);
            reject3(err);
          };
          socks5Client.once("connected", onConnected);
          socks5Client.once("error", onError);
        });
        return socket;
      }
      /**
       * Dispatch a request through the SOCKS5 proxy
       */
      async [kDispatch](opts2, handler77) {
        const { origin } = opts2;
        debug("dispatching request to", origin, "via SOCKS5");
        try {
          if (!this[kPool] || this[kPool].destroyed || this[kPool].closed) {
            this[kPool] = new Pool(origin, {
              pipelining: opts2.pipelining,
              connections: opts2.connections,
              connect: async (connectOpts, callback2) => {
                try {
                  const url7 = new URL7(origin);
                  const targetHost = url7.hostname;
                  const targetPort = parseInt(url7.port) || (url7.protocol === "https:" ? 443 : 80);
                  debug("establishing SOCKS5 connection to", targetHost, targetPort);
                  const socket = await this.createSocks5Connection(targetHost, targetPort);
                  let finalSocket = socket;
                  if (url7.protocol === "https:") {
                    if (!tls2) {
                      tls2 = __require("node:tls");
                    }
                    debug("upgrading to TLS");
                    finalSocket = tls2.connect({
                      socket,
                      servername: targetHost,
                      ...connectOpts.tls || {}
                    });
                    await new Promise((resolve3, reject3) => {
                      finalSocket.once("secureConnect", resolve3);
                      finalSocket.once("error", reject3);
                    });
                  }
                  callback2(null, finalSocket);
                } catch (err) {
                  debug("SOCKS5 connection error:", err);
                  callback2(err);
                }
              }
            });
          }
          return this[kPool][kDispatch](opts2, handler77);
        } catch (err) {
          debug("dispatch error:", err);
          if (typeof handler77.onError === "function") {
            handler77.onError(err);
          } else {
            throw err;
          }
        }
      }
      async [kClose]() {
        if (this[kPool]) {
          await this[kPool].close();
        }
      }
      async [kDestroy](err) {
        if (this[kPool]) {
          await this[kPool].destroy(err);
        }
      }
    };
    module2.exports = Socks5ProxyAgent;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/dispatcher/proxy-agent.js
var require_proxy_agent = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/dispatcher/proxy-agent.js"(exports2, module2) {
    "use strict";
    var { kProxy, kClose, kDestroy, kDispatch } = require_symbols();
    var Agent2 = require_agent();
    var Pool = require_pool();
    var DispatcherBase = require_dispatcher_base();
    var { InvalidArgumentError, RequestAbortedError, SecureProxyConnectionError } = require_errors5();
    var buildConnector = require_connect();
    var Client = require_client();
    var { channels } = require_diagnostics();
    var Socks5ProxyAgent = require_socks5_proxy_agent();
    var kAgent = /* @__PURE__ */ Symbol("proxy agent");
    var kClient = /* @__PURE__ */ Symbol("proxy client");
    var kProxyHeaders = /* @__PURE__ */ Symbol("proxy headers");
    var kRequestTls = /* @__PURE__ */ Symbol("request tls settings");
    var kProxyTls = /* @__PURE__ */ Symbol("proxy tls settings");
    var kConnectEndpoint = /* @__PURE__ */ Symbol("connect endpoint function");
    var kTunnelProxy = /* @__PURE__ */ Symbol("tunnel proxy");
    function defaultProtocolPort(protocol) {
      return protocol === "https:" ? 443 : 80;
    }
    function defaultFactory(origin, opts2) {
      return new Pool(origin, opts2);
    }
    var noop5 = () => {
    };
    function defaultAgentFactory(origin, opts2) {
      if (opts2.connections === 1) {
        return new Client(origin, opts2);
      }
      return new Pool(origin, opts2);
    }
    var Http1ProxyWrapper = class extends DispatcherBase {
      #client;
      constructor(proxyUrl, { headers = {}, connect, factory }) {
        if (!proxyUrl) {
          throw new InvalidArgumentError("Proxy URL is mandatory");
        }
        super();
        this[kProxyHeaders] = headers;
        if (factory) {
          this.#client = factory(proxyUrl, { connect });
        } else {
          this.#client = new Client(proxyUrl, { connect });
        }
      }
      [kDispatch](opts2, handler77) {
        const onHeaders = handler77.onHeaders;
        handler77.onHeaders = function(statusCode, data, resume) {
          if (statusCode === 407) {
            if (typeof handler77.onError === "function") {
              handler77.onError(new InvalidArgumentError("Proxy Authentication Required (407)"));
            }
            return;
          }
          if (onHeaders) onHeaders.call(this, statusCode, data, resume);
        };
        const {
          origin,
          path: path218 = "/",
          headers = {}
        } = opts2;
        opts2.path = origin + path218;
        if (!("host" in headers) && !("Host" in headers)) {
          const { host } = new URL(origin);
          headers.host = host;
        }
        opts2.headers = { ...this[kProxyHeaders], ...headers };
        return this.#client[kDispatch](opts2, handler77);
      }
      [kClose]() {
        return this.#client.close();
      }
      [kDestroy](err) {
        return this.#client.destroy(err);
      }
    };
    var ProxyAgent2 = class extends DispatcherBase {
      constructor(opts2) {
        if (!opts2 || typeof opts2 === "object" && !(opts2 instanceof URL) && !opts2.uri) {
          throw new InvalidArgumentError("Proxy uri is mandatory");
        }
        const { clientFactory = defaultFactory } = opts2;
        if (typeof clientFactory !== "function") {
          throw new InvalidArgumentError("Proxy opts.clientFactory must be a function.");
        }
        const { proxyTunnel = true } = opts2;
        super();
        const url7 = this.#getUrl(opts2);
        const { href, origin, port, protocol, username, password, hostname: proxyHostname } = url7;
        this[kProxy] = { uri: href, protocol };
        this[kRequestTls] = opts2.requestTls;
        this[kProxyTls] = opts2.proxyTls;
        this[kProxyHeaders] = opts2.headers || {};
        this[kTunnelProxy] = proxyTunnel;
        if (opts2.auth && opts2.token) {
          throw new InvalidArgumentError("opts.auth cannot be used in combination with opts.token");
        } else if (opts2.auth) {
          this[kProxyHeaders]["proxy-authorization"] = `Basic ${opts2.auth}`;
        } else if (opts2.token) {
          this[kProxyHeaders]["proxy-authorization"] = opts2.token;
        } else if (username && password) {
          this[kProxyHeaders]["proxy-authorization"] = `Basic ${Buffer.from(`${decodeURIComponent(username)}:${decodeURIComponent(password)}`).toString("base64")}`;
        }
        const connect = buildConnector({ ...opts2.proxyTls });
        this[kConnectEndpoint] = buildConnector({ ...opts2.requestTls });
        const agentFactory = opts2.factory || defaultAgentFactory;
        const factory = (origin2, options) => {
          const { protocol: protocol2 } = new URL(origin2);
          if (this[kProxy].protocol === "socks5:" || this[kProxy].protocol === "socks:") {
            return new Socks5ProxyAgent(this[kProxy].uri, {
              headers: this[kProxyHeaders],
              connect,
              factory: agentFactory,
              username: opts2.username || username,
              password: opts2.password || password,
              proxyTls: opts2.proxyTls
            });
          }
          if (!this[kTunnelProxy] && protocol2 === "http:" && this[kProxy].protocol === "http:") {
            return new Http1ProxyWrapper(this[kProxy].uri, {
              headers: this[kProxyHeaders],
              connect,
              factory: agentFactory
            });
          }
          return agentFactory(origin2, options);
        };
        if (protocol === "socks5:" || protocol === "socks:") {
          this[kClient] = null;
        } else {
          this[kClient] = clientFactory(url7, { connect });
        }
        this[kAgent] = new Agent2({
          ...opts2,
          factory,
          connect: async (opts3, callback2) => {
            if (!this[kClient]) {
              callback2(new InvalidArgumentError("Cannot establish tunnel connection without a proxy client"));
              return;
            }
            let requestedPath = opts3.host;
            if (!opts3.port) {
              requestedPath += `:${defaultProtocolPort(opts3.protocol)}`;
            }
            try {
              const connectParams = {
                origin,
                port,
                path: requestedPath,
                signal: opts3.signal,
                headers: {
                  ...this[kProxyHeaders],
                  host: opts3.host,
                  ...opts3.connections == null || opts3.connections > 0 ? { "proxy-connection": "keep-alive" } : {}
                },
                servername: this[kProxyTls]?.servername || proxyHostname
              };
              const { socket, statusCode } = await this[kClient].connect(connectParams);
              if (statusCode !== 200) {
                socket.on("error", noop5).destroy();
                callback2(new RequestAbortedError(`Proxy response (${statusCode}) !== 200 when HTTP Tunneling`));
                return;
              }
              if (channels.proxyConnected.hasSubscribers) {
                channels.proxyConnected.publish({
                  socket,
                  connectParams
                });
              }
              if (opts3.protocol !== "https:") {
                callback2(null, socket);
                return;
              }
              let servername;
              if (this[kRequestTls]) {
                servername = this[kRequestTls].servername;
              } else {
                servername = opts3.servername;
              }
              this[kConnectEndpoint]({ ...opts3, servername, httpSocket: socket }, callback2);
            } catch (err) {
              if (err.code === "ERR_TLS_CERT_ALTNAME_INVALID") {
                callback2(new SecureProxyConnectionError(err));
              } else {
                callback2(err);
              }
            }
          }
        });
      }
      dispatch(opts2, handler77) {
        const headers = buildHeaders(opts2.headers);
        throwIfProxyAuthIsSent(headers);
        if (headers && !("host" in headers) && !("Host" in headers)) {
          const { host } = new URL(opts2.origin);
          headers.host = host;
        }
        return this[kAgent].dispatch(
          {
            ...opts2,
            headers
          },
          handler77
        );
      }
      /**
       * @param {import('../../types/proxy-agent').ProxyAgent.Options | string | URL} opts
       * @returns {URL}
       */
      #getUrl(opts2) {
        if (typeof opts2 === "string") {
          return new URL(opts2);
        } else if (opts2 instanceof URL) {
          return opts2;
        } else {
          return new URL(opts2.uri);
        }
      }
      [kClose]() {
        const promises = [this[kAgent].close()];
        if (this[kClient]) {
          promises.push(this[kClient].close());
        }
        return Promise.all(promises);
      }
      [kDestroy]() {
        const promises = [this[kAgent].destroy()];
        if (this[kClient]) {
          promises.push(this[kClient].destroy());
        }
        return Promise.all(promises);
      }
    };
    function buildHeaders(headers) {
      if (Array.isArray(headers)) {
        const headersPair = {};
        for (let i2 = 0; i2 < headers.length; i2 += 2) {
          headersPair[headers[i2]] = headers[i2 + 1];
        }
        return headersPair;
      }
      return headers;
    }
    function throwIfProxyAuthIsSent(headers) {
      const existProxyAuth = headers && Object.keys(headers).find((key) => key.toLowerCase() === "proxy-authorization");
      if (existProxyAuth) {
        throw new InvalidArgumentError("Proxy-Authorization should be sent in ProxyAgent constructor");
      }
    }
    module2.exports = ProxyAgent2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/dispatcher/env-http-proxy-agent.js
var require_env_http_proxy_agent = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/dispatcher/env-http-proxy-agent.js"(exports2, module2) {
    "use strict";
    var DispatcherBase = require_dispatcher_base();
    var { kClose, kDestroy, kClosed, kDestroyed, kDispatch, kNoProxyAgent, kHttpProxyAgent, kHttpsProxyAgent } = require_symbols();
    var ProxyAgent2 = require_proxy_agent();
    var Agent2 = require_agent();
    var DEFAULT_PORTS = {
      "http:": 80,
      "https:": 443
    };
    var EnvHttpProxyAgent = class extends DispatcherBase {
      #noProxyValue = null;
      #noProxyEntries = null;
      #opts = null;
      constructor(opts2 = {}) {
        super();
        this.#opts = opts2;
        const { httpProxy, httpsProxy, noProxy, ...agentOpts } = opts2;
        this[kNoProxyAgent] = new Agent2(agentOpts);
        const HTTP_PROXY = httpProxy ?? process.env.http_proxy ?? process.env.HTTP_PROXY;
        if (HTTP_PROXY) {
          this[kHttpProxyAgent] = new ProxyAgent2({ ...agentOpts, uri: HTTP_PROXY });
        } else {
          this[kHttpProxyAgent] = this[kNoProxyAgent];
        }
        const HTTPS_PROXY = httpsProxy ?? process.env.https_proxy ?? process.env.HTTPS_PROXY;
        if (HTTPS_PROXY) {
          this[kHttpsProxyAgent] = new ProxyAgent2({ ...agentOpts, uri: HTTPS_PROXY });
        } else {
          this[kHttpsProxyAgent] = this[kHttpProxyAgent];
        }
        this.#parseNoProxy();
      }
      [kDispatch](opts2, handler77) {
        const url7 = new URL(opts2.origin);
        const agent = this.#getProxyAgentForUrl(url7);
        return agent.dispatch(opts2, handler77);
      }
      [kClose]() {
        return Promise.all([
          this[kNoProxyAgent].close(),
          !this[kHttpProxyAgent][kClosed] && this[kHttpProxyAgent].close(),
          !this[kHttpsProxyAgent][kClosed] && this[kHttpsProxyAgent].close()
        ]);
      }
      [kDestroy](err) {
        return Promise.all([
          this[kNoProxyAgent].destroy(err),
          !this[kHttpProxyAgent][kDestroyed] && this[kHttpProxyAgent].destroy(err),
          !this[kHttpsProxyAgent][kDestroyed] && this[kHttpsProxyAgent].destroy(err)
        ]);
      }
      #getProxyAgentForUrl(url7) {
        let { protocol, host: hostname, port } = url7;
        hostname = hostname.replace(/:\d*$/, "").toLowerCase();
        port = Number.parseInt(port, 10) || DEFAULT_PORTS[protocol] || 0;
        if (!this.#shouldProxy(hostname, port)) {
          return this[kNoProxyAgent];
        }
        if (protocol === "https:") {
          return this[kHttpsProxyAgent];
        }
        return this[kHttpProxyAgent];
      }
      #shouldProxy(hostname, port) {
        if (this.#noProxyChanged) {
          this.#parseNoProxy();
        }
        if (this.#noProxyEntries.length === 0) {
          return true;
        }
        if (this.#noProxyValue === "*") {
          return false;
        }
        for (let i2 = 0; i2 < this.#noProxyEntries.length; i2++) {
          const entry = this.#noProxyEntries[i2];
          if (entry.port && entry.port !== port) {
            continue;
          }
          if (hostname === entry.hostname) {
            return false;
          }
          if (hostname.slice(-(entry.hostname.length + 1)) === `.${entry.hostname}`) {
            return false;
          }
        }
        return true;
      }
      #parseNoProxy() {
        const noProxyValue = this.#opts.noProxy ?? this.#noProxyEnv;
        const noProxySplit = noProxyValue.split(/[,\s]/);
        const noProxyEntries = [];
        for (let i2 = 0; i2 < noProxySplit.length; i2++) {
          const entry = noProxySplit[i2];
          if (!entry) {
            continue;
          }
          const parsed = entry.match(/^(.+):(\d+)$/);
          noProxyEntries.push({
            // strip leading dot or asterisk with dot
            hostname: (parsed ? parsed[1] : entry).replace(/^\*?\./, "").toLowerCase(),
            port: parsed ? Number.parseInt(parsed[2], 10) : 0
          });
        }
        this.#noProxyValue = noProxyValue;
        this.#noProxyEntries = noProxyEntries;
      }
      get #noProxyChanged() {
        if (this.#opts.noProxy !== void 0) {
          return false;
        }
        return this.#noProxyValue !== this.#noProxyEnv;
      }
      get #noProxyEnv() {
        return process.env.no_proxy ?? process.env.NO_PROXY ?? "";
      }
    };
    module2.exports = EnvHttpProxyAgent;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/handler/retry-handler.js
var require_retry_handler = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/handler/retry-handler.js"(exports2, module2) {
    "use strict";
    var assert13 = __require("node:assert");
    var { kRetryHandlerDefaultRetry } = require_symbols();
    var { RequestRetryError } = require_errors5();
    var WrapHandler = require_wrap_handler();
    var {
      isDisturbed,
      parseRangeHeader,
      wrapRequestBody
    } = require_util6();
    function calculateRetryAfterHeader(retryAfter) {
      const retryTime = new Date(retryAfter).getTime();
      return isNaN(retryTime) ? 0 : retryTime - Date.now();
    }
    var RetryHandler = class _RetryHandler {
      constructor(opts2, { dispatch, handler: handler77 }) {
        const { retryOptions, ...dispatchOpts } = opts2;
        const {
          // Retry scoped
          retry: retryFn,
          maxRetries,
          maxTimeout,
          minTimeout,
          timeoutFactor,
          // Response scoped
          methods,
          errorCodes,
          retryAfter,
          statusCodes,
          throwOnError
        } = retryOptions ?? {};
        this.error = null;
        this.dispatch = dispatch;
        this.handler = WrapHandler.wrap(handler77);
        this.opts = { ...dispatchOpts, body: wrapRequestBody(opts2.body) };
        this.retryOpts = {
          throwOnError: throwOnError ?? true,
          retry: retryFn ?? _RetryHandler[kRetryHandlerDefaultRetry],
          retryAfter: retryAfter ?? true,
          maxTimeout: maxTimeout ?? 30 * 1e3,
          // 30s,
          minTimeout: minTimeout ?? 500,
          // .5s
          timeoutFactor: timeoutFactor ?? 2,
          maxRetries: maxRetries ?? 5,
          // What errors we should retry
          methods: methods ?? ["GET", "HEAD", "OPTIONS", "PUT", "DELETE", "TRACE"],
          // Indicates which errors to retry
          statusCodes: statusCodes ?? [500, 502, 503, 504, 429],
          // List of errors to retry
          errorCodes: errorCodes ?? [
            "ECONNRESET",
            "ECONNREFUSED",
            "ENOTFOUND",
            "ENETDOWN",
            "ENETUNREACH",
            "EHOSTDOWN",
            "EHOSTUNREACH",
            "EPIPE",
            "UND_ERR_SOCKET"
          ]
        };
        this.retryCount = 0;
        this.retryCountCheckpoint = 0;
        this.headersSent = false;
        this.start = 0;
        this.end = null;
        this.etag = null;
      }
      onResponseStartWithRetry(controller, statusCode, headers, statusMessage, err) {
        if (this.retryOpts.throwOnError) {
          if (this.retryOpts.statusCodes.includes(statusCode) === false) {
            this.headersSent = true;
            this.handler.onResponseStart?.(controller, statusCode, headers, statusMessage);
          } else {
            this.error = err;
          }
          return;
        }
        if (isDisturbed(this.opts.body)) {
          this.headersSent = true;
          this.handler.onResponseStart?.(controller, statusCode, headers, statusMessage);
          return;
        }
        function shouldRetry(passedErr) {
          if (passedErr) {
            this.headersSent = true;
            this.handler.onResponseStart?.(controller, statusCode, headers, statusMessage);
            controller.resume();
            return;
          }
          this.error = err;
          controller.resume();
        }
        controller.pause();
        this.retryOpts.retry(
          err,
          {
            state: { counter: this.retryCount },
            opts: { retryOptions: this.retryOpts, ...this.opts }
          },
          shouldRetry.bind(this)
        );
      }
      onRequestStart(controller, context) {
        if (!this.headersSent) {
          this.handler.onRequestStart?.(controller, context);
        }
      }
      onRequestUpgrade(controller, statusCode, headers, socket) {
        this.handler.onRequestUpgrade?.(controller, statusCode, headers, socket);
      }
      static [kRetryHandlerDefaultRetry](err, { state, opts: opts2 }, cb) {
        const { statusCode, code, headers } = err;
        const { method, retryOptions } = opts2;
        const {
          maxRetries,
          minTimeout,
          maxTimeout,
          timeoutFactor,
          statusCodes,
          errorCodes,
          methods
        } = retryOptions;
        const { counter } = state;
        if (code && code !== "UND_ERR_REQ_RETRY" && !errorCodes.includes(code)) {
          cb(err);
          return;
        }
        if (Array.isArray(methods) && !methods.includes(method)) {
          cb(err);
          return;
        }
        if (statusCode != null && Array.isArray(statusCodes) && !statusCodes.includes(statusCode)) {
          cb(err);
          return;
        }
        if (counter > maxRetries) {
          cb(err);
          return;
        }
        let retryAfterHeader = headers?.["retry-after"];
        if (retryAfterHeader) {
          retryAfterHeader = Number(retryAfterHeader);
          retryAfterHeader = Number.isNaN(retryAfterHeader) ? calculateRetryAfterHeader(headers["retry-after"]) : retryAfterHeader * 1e3;
        }
        const retryTimeout = retryAfterHeader > 0 ? Math.min(retryAfterHeader, maxTimeout) : Math.min(minTimeout * timeoutFactor ** (counter - 1), maxTimeout);
        setTimeout(() => cb(null), retryTimeout);
      }
      onResponseStart(controller, statusCode, headers, statusMessage) {
        this.error = null;
        this.retryCount += 1;
        if (statusCode >= 300) {
          const err = new RequestRetryError("Request failed", statusCode, {
            headers,
            data: {
              count: this.retryCount
            }
          });
          this.onResponseStartWithRetry(controller, statusCode, headers, statusMessage, err);
          return;
        }
        if (this.headersSent) {
          if (statusCode !== 206 && (this.start > 0 || statusCode !== 200)) {
            throw new RequestRetryError("server does not support the range header and the payload was partially consumed", statusCode, {
              headers,
              data: { count: this.retryCount }
            });
          }
          const contentRange = parseRangeHeader(headers["content-range"]);
          if (!contentRange) {
            throw new RequestRetryError("Content-Range mismatch", statusCode, {
              headers,
              data: { count: this.retryCount }
            });
          }
          if (this.etag != null && this.etag !== headers.etag) {
            throw new RequestRetryError("ETag mismatch", statusCode, {
              headers,
              data: { count: this.retryCount }
            });
          }
          const { start, size, end = size ? size - 1 : null } = contentRange;
          assert13(this.start === start, "content-range mismatch");
          assert13(this.end == null || this.end === end, "content-range mismatch");
          return;
        }
        if (this.end == null) {
          if (statusCode === 206) {
            const range = parseRangeHeader(headers["content-range"]);
            if (range == null) {
              this.headersSent = true;
              this.handler.onResponseStart?.(
                controller,
                statusCode,
                headers,
                statusMessage
              );
              return;
            }
            const { start, size, end = size ? size - 1 : null } = range;
            assert13(
              start != null && Number.isFinite(start),
              "content-range mismatch"
            );
            assert13(end != null && Number.isFinite(end), "invalid content-length");
            this.start = start;
            this.end = end;
          }
          if (this.end == null) {
            const contentLength = headers["content-length"];
            this.end = contentLength != null ? Number(contentLength) - 1 : null;
          }
          assert13(Number.isFinite(this.start));
          assert13(
            this.end == null || Number.isFinite(this.end),
            "invalid content-length"
          );
          this.resume = true;
          this.etag = headers.etag != null ? headers.etag : null;
          if (this.etag != null && this.etag[0] === "W" && this.etag[1] === "/") {
            this.etag = null;
          }
          this.headersSent = true;
          this.handler.onResponseStart?.(
            controller,
            statusCode,
            headers,
            statusMessage
          );
        } else {
          throw new RequestRetryError("Request failed", statusCode, {
            headers,
            data: { count: this.retryCount }
          });
        }
      }
      onResponseData(controller, chunk) {
        if (this.error) {
          return;
        }
        this.start += chunk.length;
        this.handler.onResponseData?.(controller, chunk);
      }
      onResponseEnd(controller, trailers) {
        if (this.error && this.retryOpts.throwOnError) {
          throw this.error;
        }
        if (!this.error) {
          this.retryCount = 0;
          return this.handler.onResponseEnd?.(controller, trailers);
        }
        this.retry(controller);
      }
      retry(controller) {
        if (this.start !== 0) {
          const headers = { range: `bytes=${this.start}-${this.end ?? ""}` };
          if (this.etag != null) {
            headers["if-match"] = this.etag;
          }
          this.opts = {
            ...this.opts,
            headers: {
              ...this.opts.headers,
              ...headers
            }
          };
        }
        try {
          this.retryCountCheckpoint = this.retryCount;
          this.dispatch(this.opts, this);
        } catch (err) {
          this.handler.onResponseError?.(controller, err);
        }
      }
      onResponseError(controller, err) {
        if (controller?.aborted || isDisturbed(this.opts.body)) {
          this.handler.onResponseError?.(controller, err);
          return;
        }
        function shouldRetry(returnedErr) {
          if (!returnedErr) {
            this.retry(controller);
            return;
          }
          this.handler?.onResponseError?.(controller, returnedErr);
        }
        if (this.retryCount - this.retryCountCheckpoint > 0) {
          this.retryCount = this.retryCountCheckpoint + (this.retryCount - this.retryCountCheckpoint);
        } else {
          this.retryCount += 1;
        }
        this.retryOpts.retry(
          err,
          {
            state: { counter: this.retryCount },
            opts: { retryOptions: this.retryOpts, ...this.opts }
          },
          shouldRetry.bind(this)
        );
      }
    };
    module2.exports = RetryHandler;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/dispatcher/retry-agent.js
var require_retry_agent = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/dispatcher/retry-agent.js"(exports2, module2) {
    "use strict";
    var Dispatcher = require_dispatcher();
    var RetryHandler = require_retry_handler();
    var RetryAgent = class extends Dispatcher {
      #agent = null;
      #options = null;
      constructor(agent, options = {}) {
        super(options);
        this.#agent = agent;
        this.#options = options;
      }
      dispatch(opts2, handler77) {
        const retry5 = new RetryHandler({
          ...opts2,
          retryOptions: this.#options
        }, {
          dispatch: this.#agent.dispatch.bind(this.#agent),
          handler: handler77
        });
        return this.#agent.dispatch(opts2, retry5);
      }
      close() {
        return this.#agent.close();
      }
      destroy() {
        return this.#agent.destroy();
      }
    };
    module2.exports = RetryAgent;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/dispatcher/h2c-client.js
var require_h2c_client = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/dispatcher/h2c-client.js"(exports2, module2) {
    "use strict";
    var { InvalidArgumentError } = require_errors5();
    var Client = require_client();
    var H2CClient = class extends Client {
      constructor(origin, clientOpts) {
        if (typeof origin === "string") {
          origin = new URL(origin);
        }
        if (origin.protocol !== "http:") {
          throw new InvalidArgumentError(
            "h2c-client: Only h2c protocol is supported"
          );
        }
        const { connect, maxConcurrentStreams, pipelining, ...opts2 } = clientOpts ?? {};
        let defaultMaxConcurrentStreams = 100;
        let defaultPipelining = 100;
        if (maxConcurrentStreams != null && Number.isInteger(maxConcurrentStreams) && maxConcurrentStreams > 0) {
          defaultMaxConcurrentStreams = maxConcurrentStreams;
        }
        if (pipelining != null && Number.isInteger(pipelining) && pipelining > 0) {
          defaultPipelining = pipelining;
        }
        if (defaultPipelining > defaultMaxConcurrentStreams) {
          throw new InvalidArgumentError(
            "h2c-client: pipelining cannot be greater than maxConcurrentStreams"
          );
        }
        super(origin, {
          ...opts2,
          maxConcurrentStreams: defaultMaxConcurrentStreams,
          pipelining: defaultPipelining,
          allowH2: true,
          useH2c: true
        });
      }
    };
    module2.exports = H2CClient;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/api/readable.js
var require_readable = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/api/readable.js"(exports2, module2) {
    "use strict";
    var assert13 = __require("node:assert");
    var { Readable: Readable4 } = __require("node:stream");
    var { RequestAbortedError, NotSupportedError, InvalidArgumentError, AbortError } = require_errors5();
    var util56 = require_util6();
    var { ReadableStreamFrom } = require_util6();
    var kConsume = /* @__PURE__ */ Symbol("kConsume");
    var kReading = /* @__PURE__ */ Symbol("kReading");
    var kBody = /* @__PURE__ */ Symbol("kBody");
    var kAbort = /* @__PURE__ */ Symbol("kAbort");
    var kContentType = /* @__PURE__ */ Symbol("kContentType");
    var kContentLength = /* @__PURE__ */ Symbol("kContentLength");
    var kUsed = /* @__PURE__ */ Symbol("kUsed");
    var kBytesRead = /* @__PURE__ */ Symbol("kBytesRead");
    var noop5 = () => {
    };
    var BodyReadable = class extends Readable4 {
      /**
       * @param {object} opts
       * @param {(this: Readable, size: number) => void} opts.resume
       * @param {() => (void | null)} opts.abort
       * @param {string} [opts.contentType = '']
       * @param {number} [opts.contentLength]
       * @param {number} [opts.highWaterMark = 64 * 1024]
       */
      constructor({
        resume,
        abort,
        contentType = "",
        contentLength,
        highWaterMark = 64 * 1024
        // Same as nodejs fs streams.
      }) {
        super({
          autoDestroy: true,
          read: resume,
          highWaterMark
        });
        this._readableState.dataEmitted = false;
        this[kAbort] = abort;
        this[kConsume] = null;
        this[kBytesRead] = 0;
        this[kBody] = null;
        this[kUsed] = false;
        this[kContentType] = contentType;
        this[kContentLength] = Number.isFinite(contentLength) ? contentLength : null;
        this[kReading] = false;
      }
      /**
       * @param {Error|null} err
       * @param {(error:(Error|null)) => void} callback
       * @returns {void}
       */
      _destroy(err, callback2) {
        if (!err && !this._readableState.endEmitted) {
          err = new RequestAbortedError();
        }
        if (err) {
          this[kAbort]();
        }
        if (!this[kUsed]) {
          setImmediate(callback2, err);
        } else {
          callback2(err);
        }
      }
      /**
       * @param {string|symbol} event
       * @param {(...args: any[]) => void} listener
       * @returns {this}
       */
      on(event, listener) {
        if (event === "data" || event === "readable") {
          this[kReading] = true;
          this[kUsed] = true;
        }
        return super.on(event, listener);
      }
      /**
       * @param {string|symbol} event
       * @param {(...args: any[]) => void} listener
       * @returns {this}
       */
      addListener(event, listener) {
        return this.on(event, listener);
      }
      /**
       * @param {string|symbol} event
       * @param {(...args: any[]) => void} listener
       * @returns {this}
       */
      off(event, listener) {
        const ret2 = super.off(event, listener);
        if (event === "data" || event === "readable") {
          this[kReading] = this.listenerCount("data") > 0 || this.listenerCount("readable") > 0;
        }
        return ret2;
      }
      /**
       * @param {string|symbol} event
       * @param {(...args: any[]) => void} listener
       * @returns {this}
       */
      removeListener(event, listener) {
        return this.off(event, listener);
      }
      /**
       * @param {Buffer|null} chunk
       * @returns {boolean}
       */
      push(chunk) {
        if (chunk) {
          this[kBytesRead] += chunk.length;
          if (this[kConsume]) {
            consumePush(this[kConsume], chunk);
            return this[kReading] ? super.push(chunk) : true;
          }
        }
        return super.push(chunk);
      }
      /**
       * Consumes and returns the body as a string.
       *
       * @see https://fetch.spec.whatwg.org/#dom-body-text
       * @returns {Promise<string>}
       */
      text() {
        return consume(this, "text");
      }
      /**
       * Consumes and returns the body as a JavaScript Object.
       *
       * @see https://fetch.spec.whatwg.org/#dom-body-json
       * @returns {Promise<unknown>}
       */
      json() {
        return consume(this, "json");
      }
      /**
       * Consumes and returns the body as a Blob
       *
       * @see https://fetch.spec.whatwg.org/#dom-body-blob
       * @returns {Promise<Blob>}
       */
      blob() {
        return consume(this, "blob");
      }
      /**
       * Consumes and returns the body as an Uint8Array.
       *
       * @see https://fetch.spec.whatwg.org/#dom-body-bytes
       * @returns {Promise<Uint8Array>}
       */
      bytes() {
        return consume(this, "bytes");
      }
      /**
       * Consumes and returns the body as an ArrayBuffer.
       *
       * @see https://fetch.spec.whatwg.org/#dom-body-arraybuffer
       * @returns {Promise<ArrayBuffer>}
       */
      arrayBuffer() {
        return consume(this, "arrayBuffer");
      }
      /**
       * Not implemented
       *
       * @see https://fetch.spec.whatwg.org/#dom-body-formdata
       * @throws {NotSupportedError}
       */
      async formData() {
        throw new NotSupportedError();
      }
      /**
       * Returns true if the body is not null and the body has been consumed.
       * Otherwise, returns false.
       *
       * @see https://fetch.spec.whatwg.org/#dom-body-bodyused
       * @readonly
       * @returns {boolean}
       */
      get bodyUsed() {
        return util56.isDisturbed(this);
      }
      /**
       * @see https://fetch.spec.whatwg.org/#dom-body-body
       * @readonly
       * @returns {ReadableStream}
       */
      get body() {
        if (!this[kBody]) {
          this[kBody] = ReadableStreamFrom(this);
          if (this[kConsume]) {
            this[kBody].getReader();
            assert13(this[kBody].locked);
          }
        }
        return this[kBody];
      }
      /**
       * Dumps the response body by reading `limit` number of bytes.
       * @param {object} opts
       * @param {number} [opts.limit = 131072] Number of bytes to read.
       * @param {AbortSignal} [opts.signal] An AbortSignal to cancel the dump.
       * @returns {Promise<null>}
       */
      dump(opts2) {
        const signal = opts2?.signal;
        if (signal != null && (typeof signal !== "object" || !("aborted" in signal))) {
          return Promise.reject(new InvalidArgumentError("signal must be an AbortSignal"));
        }
        const limit = opts2?.limit && Number.isFinite(opts2.limit) ? opts2.limit : 128 * 1024;
        if (signal?.aborted) {
          return Promise.reject(signal.reason ?? new AbortError());
        }
        if (this._readableState.closeEmitted) {
          return Promise.resolve(null);
        }
        return new Promise((resolve3, reject3) => {
          if (this[kContentLength] && this[kContentLength] > limit || this[kBytesRead] > limit) {
            this.destroy(new AbortError());
          }
          if (signal) {
            const onAbort = () => {
              this.destroy(signal.reason ?? new AbortError());
            };
            signal.addEventListener("abort", onAbort);
            this.on("close", function() {
              signal.removeEventListener("abort", onAbort);
              if (signal.aborted) {
                reject3(signal.reason ?? new AbortError());
              } else {
                resolve3(null);
              }
            });
          } else {
            this.on("close", resolve3);
          }
          this.on("error", noop5).on("data", () => {
            if (this[kBytesRead] > limit) {
              this.destroy();
            }
          }).resume();
        });
      }
      /**
       * @param {BufferEncoding} encoding
       * @returns {this}
       */
      setEncoding(encoding) {
        if (Buffer.isEncoding(encoding)) {
          this._readableState.encoding = encoding;
        }
        return this;
      }
    };
    function isLocked(bodyReadable) {
      return bodyReadable[kBody]?.locked === true || bodyReadable[kConsume] !== null;
    }
    function isUnusable(bodyReadable) {
      return util56.isDisturbed(bodyReadable) || isLocked(bodyReadable);
    }
    function consume(stream2, type4) {
      assert13(!stream2[kConsume]);
      return new Promise((resolve3, reject3) => {
        if (isUnusable(stream2)) {
          const rState = stream2._readableState;
          if (rState.destroyed && rState.closeEmitted === false) {
            stream2.on("error", reject3).on("close", () => {
              reject3(new TypeError("unusable"));
            });
          } else {
            reject3(rState.errored ?? new TypeError("unusable"));
          }
        } else {
          queueMicrotask(() => {
            stream2[kConsume] = {
              type: type4,
              stream: stream2,
              resolve: resolve3,
              reject: reject3,
              length: 0,
              body: []
            };
            stream2.on("error", function(err) {
              consumeFinish(this[kConsume], err);
            }).on("close", function() {
              if (this[kConsume].body !== null) {
                consumeFinish(this[kConsume], new RequestAbortedError());
              }
            });
            consumeStart(stream2[kConsume]);
          });
        }
      });
    }
    function consumeStart(consume2) {
      if (consume2.body === null) {
        return;
      }
      const { _readableState: state } = consume2.stream;
      if (state.bufferIndex) {
        const start = state.bufferIndex;
        const end = state.buffer.length;
        for (let n2 = start; n2 < end; n2++) {
          consumePush(consume2, state.buffer[n2]);
        }
      } else {
        for (const chunk of state.buffer) {
          consumePush(consume2, chunk);
        }
      }
      if (state.endEmitted) {
        consumeEnd(this[kConsume], this._readableState.encoding);
      } else {
        consume2.stream.on("end", function() {
          consumeEnd(this[kConsume], this._readableState.encoding);
        });
      }
      consume2.stream.resume();
      while (consume2.stream.read() != null) {
      }
    }
    function chunksDecode(chunks, length, encoding) {
      if (chunks.length === 0 || length === 0) {
        return "";
      }
      const buffer3 = chunks.length === 1 ? chunks[0] : Buffer.concat(chunks, length);
      const bufferLength = buffer3.length;
      const start = bufferLength > 2 && buffer3[0] === 239 && buffer3[1] === 187 && buffer3[2] === 191 ? 3 : 0;
      if (!encoding || encoding === "utf8" || encoding === "utf-8") {
        return buffer3.utf8Slice(start, bufferLength);
      } else {
        return buffer3.subarray(start, bufferLength).toString(encoding);
      }
    }
    function chunksConcat(chunks, length) {
      if (chunks.length === 0 || length === 0) {
        return new Uint8Array(0);
      }
      if (chunks.length === 1) {
        return new Uint8Array(chunks[0]);
      }
      const buffer3 = new Uint8Array(Buffer.allocUnsafeSlow(length).buffer);
      let offset = 0;
      for (let i2 = 0; i2 < chunks.length; ++i2) {
        const chunk = chunks[i2];
        buffer3.set(chunk, offset);
        offset += chunk.length;
      }
      return buffer3;
    }
    function consumeEnd(consume2, encoding) {
      const { type: type4, body, resolve: resolve3, stream: stream2, length } = consume2;
      try {
        if (type4 === "text") {
          resolve3(chunksDecode(body, length, encoding));
        } else if (type4 === "json") {
          resolve3(JSON.parse(chunksDecode(body, length, encoding)));
        } else if (type4 === "arrayBuffer") {
          resolve3(chunksConcat(body, length).buffer);
        } else if (type4 === "blob") {
          resolve3(new Blob(body, { type: stream2[kContentType] }));
        } else if (type4 === "bytes") {
          resolve3(chunksConcat(body, length));
        }
        consumeFinish(consume2);
      } catch (err) {
        stream2.destroy(err);
      }
    }
    function consumePush(consume2, chunk) {
      consume2.length += chunk.length;
      consume2.body.push(chunk);
    }
    function consumeFinish(consume2, err) {
      if (consume2.body === null) {
        return;
      }
      if (err) {
        consume2.reject(err);
      } else {
        consume2.resolve();
      }
      consume2.type = null;
      consume2.stream = null;
      consume2.resolve = null;
      consume2.reject = null;
      consume2.length = 0;
      consume2.body = null;
    }
    module2.exports = {
      Readable: BodyReadable,
      chunksDecode
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/api/api-request.js
var require_api_request = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/api/api-request.js"(exports2, module2) {
    "use strict";
    var assert13 = __require("node:assert");
    var { AsyncResource } = __require("node:async_hooks");
    var { Readable: Readable4 } = require_readable();
    var { InvalidArgumentError, RequestAbortedError } = require_errors5();
    var util56 = require_util6();
    function noop5() {
    }
    var RequestHandler = class extends AsyncResource {
      constructor(opts2, callback2) {
        if (!opts2 || typeof opts2 !== "object") {
          throw new InvalidArgumentError("invalid opts");
        }
        const { signal, method, opaque, body, onInfo, responseHeaders, highWaterMark } = opts2;
        try {
          if (typeof callback2 !== "function") {
            throw new InvalidArgumentError("invalid callback");
          }
          if (highWaterMark && (typeof highWaterMark !== "number" || highWaterMark < 0)) {
            throw new InvalidArgumentError("invalid highWaterMark");
          }
          if (signal && typeof signal.on !== "function" && typeof signal.addEventListener !== "function") {
            throw new InvalidArgumentError("signal must be an EventEmitter or EventTarget");
          }
          if (method === "CONNECT") {
            throw new InvalidArgumentError("invalid method");
          }
          if (onInfo && typeof onInfo !== "function") {
            throw new InvalidArgumentError("invalid onInfo callback");
          }
          super("UNDICI_REQUEST");
        } catch (err) {
          if (util56.isStream(body)) {
            util56.destroy(body.on("error", noop5), err);
          }
          throw err;
        }
        this.method = method;
        this.responseHeaders = responseHeaders || null;
        this.opaque = opaque || null;
        this.callback = callback2;
        this.res = null;
        this.abort = null;
        this.body = body;
        this.trailers = {};
        this.context = null;
        this.onInfo = onInfo || null;
        this.highWaterMark = highWaterMark;
        this.reason = null;
        this.removeAbortListener = null;
        if (signal?.aborted) {
          this.reason = signal.reason ?? new RequestAbortedError();
        } else if (signal) {
          this.removeAbortListener = util56.addAbortListener(signal, () => {
            this.reason = signal.reason ?? new RequestAbortedError();
            if (this.res) {
              util56.destroy(this.res.on("error", noop5), this.reason);
            } else if (this.abort) {
              this.abort(this.reason);
            }
          });
        }
      }
      onConnect(abort, context) {
        if (this.reason) {
          abort(this.reason);
          return;
        }
        assert13(this.callback);
        this.abort = abort;
        this.context = context;
      }
      onHeaders(statusCode, rawHeaders, resume, statusMessage) {
        const { callback: callback2, opaque, abort, context, responseHeaders, highWaterMark } = this;
        const headers = responseHeaders === "raw" ? util56.parseRawHeaders(rawHeaders) : util56.parseHeaders(rawHeaders);
        if (statusCode < 200) {
          if (this.onInfo) {
            this.onInfo({ statusCode, headers });
          }
          return;
        }
        const parsedHeaders = responseHeaders === "raw" ? util56.parseHeaders(rawHeaders) : headers;
        const contentType = parsedHeaders["content-type"];
        const contentLength = parsedHeaders["content-length"];
        const res = new Readable4({
          resume,
          abort,
          contentType,
          contentLength: this.method !== "HEAD" && contentLength ? Number(contentLength) : null,
          highWaterMark
        });
        if (this.removeAbortListener) {
          res.on("close", this.removeAbortListener);
          this.removeAbortListener = null;
        }
        this.callback = null;
        this.res = res;
        if (callback2 !== null) {
          try {
            this.runInAsyncScope(callback2, null, null, {
              statusCode,
              statusText: statusMessage,
              headers,
              trailers: this.trailers,
              opaque,
              body: res,
              context
            });
          } catch (err) {
            this.res = null;
            util56.destroy(res.on("error", noop5), err);
            queueMicrotask(() => {
              throw err;
            });
          }
        }
      }
      onData(chunk) {
        return this.res.push(chunk);
      }
      onComplete(trailers) {
        util56.parseHeaders(trailers, this.trailers);
        this.res.push(null);
      }
      onError(err) {
        const { res, callback: callback2, body, opaque } = this;
        if (callback2) {
          this.callback = null;
          queueMicrotask(() => {
            this.runInAsyncScope(callback2, null, err, { opaque });
          });
        }
        if (res) {
          this.res = null;
          queueMicrotask(() => {
            util56.destroy(res.on("error", noop5), err);
          });
        }
        if (body) {
          this.body = null;
          if (util56.isStream(body)) {
            body.on("error", noop5);
            util56.destroy(body, err);
          }
        }
        if (this.removeAbortListener) {
          this.removeAbortListener();
          this.removeAbortListener = null;
        }
      }
    };
    function request(opts2, callback2) {
      if (callback2 === void 0) {
        return new Promise((resolve3, reject3) => {
          request.call(this, opts2, (err, data) => {
            return err ? reject3(err) : resolve3(data);
          });
        });
      }
      try {
        const handler77 = new RequestHandler(opts2, callback2);
        this.dispatch(opts2, handler77);
      } catch (err) {
        if (typeof callback2 !== "function") {
          throw err;
        }
        const opaque = opts2?.opaque;
        queueMicrotask(() => callback2(err, { opaque }));
      }
    }
    module2.exports = request;
    module2.exports.RequestHandler = RequestHandler;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/api/abort-signal.js
var require_abort_signal = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/api/abort-signal.js"(exports2, module2) {
    "use strict";
    var { addAbortListener: addAbortListener3 } = require_util6();
    var { RequestAbortedError } = require_errors5();
    var kListener = /* @__PURE__ */ Symbol("kListener");
    var kSignal = /* @__PURE__ */ Symbol("kSignal");
    function abort(self2) {
      if (self2.abort) {
        self2.abort(self2[kSignal]?.reason);
      } else {
        self2.reason = self2[kSignal]?.reason ?? new RequestAbortedError();
      }
      removeSignal(self2);
    }
    function addSignal(self2, signal) {
      self2.reason = null;
      self2[kSignal] = null;
      self2[kListener] = null;
      if (!signal) {
        return;
      }
      if (signal.aborted) {
        abort(self2);
        return;
      }
      self2[kSignal] = signal;
      self2[kListener] = () => {
        abort(self2);
      };
      addAbortListener3(self2[kSignal], self2[kListener]);
    }
    function removeSignal(self2) {
      if (!self2[kSignal]) {
        return;
      }
      if ("removeEventListener" in self2[kSignal]) {
        self2[kSignal].removeEventListener("abort", self2[kListener]);
      } else {
        self2[kSignal].removeListener("abort", self2[kListener]);
      }
      self2[kSignal] = null;
      self2[kListener] = null;
    }
    module2.exports = {
      addSignal,
      removeSignal
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/api/api-stream.js
var require_api_stream = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/api/api-stream.js"(exports2, module2) {
    "use strict";
    var assert13 = __require("node:assert");
    var { finished: finished7 } = __require("node:stream");
    var { AsyncResource } = __require("node:async_hooks");
    var { InvalidArgumentError, InvalidReturnValueError } = require_errors5();
    var util56 = require_util6();
    var { addSignal, removeSignal } = require_abort_signal();
    function noop5() {
    }
    var StreamHandler = class extends AsyncResource {
      constructor(opts2, factory, callback2) {
        if (!opts2 || typeof opts2 !== "object") {
          throw new InvalidArgumentError("invalid opts");
        }
        const { signal, method, opaque, body, onInfo, responseHeaders } = opts2;
        try {
          if (typeof callback2 !== "function") {
            throw new InvalidArgumentError("invalid callback");
          }
          if (typeof factory !== "function") {
            throw new InvalidArgumentError("invalid factory");
          }
          if (signal && typeof signal.on !== "function" && typeof signal.addEventListener !== "function") {
            throw new InvalidArgumentError("signal must be an EventEmitter or EventTarget");
          }
          if (method === "CONNECT") {
            throw new InvalidArgumentError("invalid method");
          }
          if (onInfo && typeof onInfo !== "function") {
            throw new InvalidArgumentError("invalid onInfo callback");
          }
          super("UNDICI_STREAM");
        } catch (err) {
          if (util56.isStream(body)) {
            util56.destroy(body.on("error", noop5), err);
          }
          throw err;
        }
        this.responseHeaders = responseHeaders || null;
        this.opaque = opaque || null;
        this.factory = factory;
        this.callback = callback2;
        this.res = null;
        this.abort = null;
        this.context = null;
        this.trailers = null;
        this.body = body;
        this.onInfo = onInfo || null;
        if (util56.isStream(body)) {
          body.on("error", (err) => {
            this.onError(err);
          });
        }
        addSignal(this, signal);
      }
      onConnect(abort, context) {
        if (this.reason) {
          abort(this.reason);
          return;
        }
        assert13(this.callback);
        this.abort = abort;
        this.context = context;
      }
      onHeaders(statusCode, rawHeaders, resume, statusMessage) {
        const { factory, opaque, context, responseHeaders } = this;
        const headers = responseHeaders === "raw" ? util56.parseRawHeaders(rawHeaders) : util56.parseHeaders(rawHeaders);
        if (statusCode < 200) {
          if (this.onInfo) {
            this.onInfo({ statusCode, headers });
          }
          return;
        }
        this.factory = null;
        if (factory === null) {
          return;
        }
        const res = this.runInAsyncScope(factory, null, {
          statusCode,
          headers,
          opaque,
          context
        });
        if (!res || typeof res.write !== "function" || typeof res.end !== "function" || typeof res.on !== "function") {
          throw new InvalidReturnValueError("expected Writable");
        }
        finished7(res, { readable: false }, (err) => {
          const { callback: callback2, res: res2, opaque: opaque2, trailers, abort } = this;
          this.res = null;
          if (err || !res2?.readable) {
            util56.destroy(res2, err);
          }
          this.callback = null;
          this.runInAsyncScope(callback2, null, err || null, { opaque: opaque2, trailers });
          if (err) {
            abort();
          }
        });
        res.on("drain", resume);
        this.res = res;
        const needDrain = res.writableNeedDrain !== void 0 ? res.writableNeedDrain : res._writableState?.needDrain;
        return needDrain !== true;
      }
      onData(chunk) {
        const { res } = this;
        return res ? res.write(chunk) : true;
      }
      onComplete(trailers) {
        const { res } = this;
        removeSignal(this);
        if (!res) {
          return;
        }
        this.trailers = util56.parseHeaders(trailers);
        res.end();
      }
      onError(err) {
        const { res, callback: callback2, opaque, body } = this;
        removeSignal(this);
        this.factory = null;
        if (res) {
          this.res = null;
          util56.destroy(res, err);
        } else if (callback2) {
          this.callback = null;
          queueMicrotask(() => {
            this.runInAsyncScope(callback2, null, err, { opaque });
          });
        }
        if (body) {
          this.body = null;
          util56.destroy(body, err);
        }
      }
    };
    function stream2(opts2, factory, callback2) {
      if (callback2 === void 0) {
        return new Promise((resolve3, reject3) => {
          stream2.call(this, opts2, factory, (err, data) => {
            return err ? reject3(err) : resolve3(data);
          });
        });
      }
      try {
        const handler77 = new StreamHandler(opts2, factory, callback2);
        this.dispatch(opts2, handler77);
      } catch (err) {
        if (typeof callback2 !== "function") {
          throw err;
        }
        const opaque = opts2?.opaque;
        queueMicrotask(() => callback2(err, { opaque }));
      }
    }
    module2.exports = stream2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/api/api-pipeline.js
var require_api_pipeline = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/api/api-pipeline.js"(exports2, module2) {
    "use strict";
    var {
      Readable: Readable4,
      Duplex: Duplex4,
      PassThrough: PassThrough3
    } = __require("node:stream");
    var assert13 = __require("node:assert");
    var { AsyncResource } = __require("node:async_hooks");
    var {
      InvalidArgumentError,
      InvalidReturnValueError,
      RequestAbortedError
    } = require_errors5();
    var util56 = require_util6();
    var { addSignal, removeSignal } = require_abort_signal();
    function noop5() {
    }
    var kResume = /* @__PURE__ */ Symbol("resume");
    var PipelineRequest = class extends Readable4 {
      constructor() {
        super({ autoDestroy: true });
        this[kResume] = null;
      }
      _read() {
        const { [kResume]: resume } = this;
        if (resume) {
          this[kResume] = null;
          resume();
        }
      }
      _destroy(err, callback2) {
        this._read();
        callback2(err);
      }
    };
    var PipelineResponse = class extends Readable4 {
      constructor(resume) {
        super({ autoDestroy: true });
        this[kResume] = resume;
      }
      _read() {
        this[kResume]();
      }
      _destroy(err, callback2) {
        if (!err && !this._readableState.endEmitted) {
          err = new RequestAbortedError();
        }
        callback2(err);
      }
    };
    var PipelineHandler = class extends AsyncResource {
      constructor(opts2, handler77) {
        if (!opts2 || typeof opts2 !== "object") {
          throw new InvalidArgumentError("invalid opts");
        }
        if (typeof handler77 !== "function") {
          throw new InvalidArgumentError("invalid handler");
        }
        const { signal, method, opaque, onInfo, responseHeaders } = opts2;
        if (signal && typeof signal.on !== "function" && typeof signal.addEventListener !== "function") {
          throw new InvalidArgumentError("signal must be an EventEmitter or EventTarget");
        }
        if (method === "CONNECT") {
          throw new InvalidArgumentError("invalid method");
        }
        if (onInfo && typeof onInfo !== "function") {
          throw new InvalidArgumentError("invalid onInfo callback");
        }
        super("UNDICI_PIPELINE");
        this.opaque = opaque || null;
        this.responseHeaders = responseHeaders || null;
        this.handler = handler77;
        this.abort = null;
        this.context = null;
        this.onInfo = onInfo || null;
        this.req = new PipelineRequest().on("error", noop5);
        this.ret = new Duplex4({
          readableObjectMode: opts2.objectMode,
          autoDestroy: true,
          read: () => {
            const { body } = this;
            if (body?.resume) {
              body.resume();
            }
          },
          write: (chunk, encoding, callback2) => {
            const { req: req2 } = this;
            if (req2.push(chunk, encoding) || req2._readableState.destroyed) {
              callback2();
            } else {
              req2[kResume] = callback2;
            }
          },
          destroy: (err, callback2) => {
            const { body, req: req2, res, ret: ret2, abort } = this;
            if (!err && !ret2._readableState.endEmitted) {
              err = new RequestAbortedError();
            }
            if (abort && err) {
              abort();
            }
            util56.destroy(body, err);
            util56.destroy(req2, err);
            util56.destroy(res, err);
            removeSignal(this);
            callback2(err);
          }
        }).on("prefinish", () => {
          const { req: req2 } = this;
          req2.push(null);
        });
        this.res = null;
        addSignal(this, signal);
      }
      onConnect(abort, context) {
        const { res } = this;
        if (this.reason) {
          abort(this.reason);
          return;
        }
        assert13(!res, "pipeline cannot be retried");
        this.abort = abort;
        this.context = context;
      }
      onHeaders(statusCode, rawHeaders, resume) {
        const { opaque, handler: handler77, context } = this;
        if (statusCode < 200) {
          if (this.onInfo) {
            const headers = this.responseHeaders === "raw" ? util56.parseRawHeaders(rawHeaders) : util56.parseHeaders(rawHeaders);
            this.onInfo({ statusCode, headers });
          }
          return;
        }
        this.res = new PipelineResponse(resume);
        let body;
        try {
          this.handler = null;
          const headers = this.responseHeaders === "raw" ? util56.parseRawHeaders(rawHeaders) : util56.parseHeaders(rawHeaders);
          body = this.runInAsyncScope(handler77, null, {
            statusCode,
            headers,
            opaque,
            body: this.res,
            context
          });
        } catch (err) {
          this.res.on("error", noop5);
          throw err;
        }
        if (!body || typeof body.on !== "function") {
          throw new InvalidReturnValueError("expected Readable");
        }
        body.on("data", (chunk) => {
          const { ret: ret2, body: body2 } = this;
          if (!ret2.push(chunk) && body2.pause) {
            body2.pause();
          }
        }).on("error", (err) => {
          const { ret: ret2 } = this;
          util56.destroy(ret2, err);
        }).on("end", () => {
          const { ret: ret2 } = this;
          ret2.push(null);
        }).on("close", () => {
          const { ret: ret2 } = this;
          if (!ret2._readableState.ended) {
            util56.destroy(ret2, new RequestAbortedError());
          }
        });
        this.body = body;
      }
      onData(chunk) {
        const { res } = this;
        return res.push(chunk);
      }
      onComplete(trailers) {
        const { res } = this;
        res.push(null);
      }
      onError(err) {
        const { ret: ret2 } = this;
        this.handler = null;
        util56.destroy(ret2, err);
      }
    };
    function pipeline2(opts2, handler77) {
      try {
        const pipelineHandler = new PipelineHandler(opts2, handler77);
        this.dispatch({ ...opts2, body: pipelineHandler.req }, pipelineHandler);
        return pipelineHandler.ret;
      } catch (err) {
        return new PassThrough3().destroy(err);
      }
    }
    module2.exports = pipeline2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/api/api-upgrade.js
var require_api_upgrade = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/api/api-upgrade.js"(exports2, module2) {
    "use strict";
    var { InvalidArgumentError, SocketError } = require_errors5();
    var { AsyncResource } = __require("node:async_hooks");
    var assert13 = __require("node:assert");
    var util56 = require_util6();
    var { kHTTP2Stream } = require_symbols();
    var { addSignal, removeSignal } = require_abort_signal();
    var UpgradeHandler = class extends AsyncResource {
      constructor(opts2, callback2) {
        if (!opts2 || typeof opts2 !== "object") {
          throw new InvalidArgumentError("invalid opts");
        }
        if (typeof callback2 !== "function") {
          throw new InvalidArgumentError("invalid callback");
        }
        const { signal, opaque, responseHeaders } = opts2;
        if (signal && typeof signal.on !== "function" && typeof signal.addEventListener !== "function") {
          throw new InvalidArgumentError("signal must be an EventEmitter or EventTarget");
        }
        super("UNDICI_UPGRADE");
        this.responseHeaders = responseHeaders || null;
        this.opaque = opaque || null;
        this.callback = callback2;
        this.abort = null;
        this.context = null;
        addSignal(this, signal);
      }
      onConnect(abort, context) {
        if (this.reason) {
          abort(this.reason);
          return;
        }
        assert13(this.callback);
        this.abort = abort;
        this.context = null;
      }
      onHeaders() {
        throw new SocketError("bad upgrade", null);
      }
      onUpgrade(statusCode, rawHeaders, socket) {
        assert13(socket[kHTTP2Stream] === true ? statusCode === 200 : statusCode === 101);
        const { callback: callback2, opaque, context } = this;
        removeSignal(this);
        this.callback = null;
        const headers = this.responseHeaders === "raw" ? util56.parseRawHeaders(rawHeaders) : util56.parseHeaders(rawHeaders);
        this.runInAsyncScope(callback2, null, null, {
          headers,
          socket,
          opaque,
          context
        });
      }
      onError(err) {
        const { callback: callback2, opaque } = this;
        removeSignal(this);
        if (callback2) {
          this.callback = null;
          queueMicrotask(() => {
            this.runInAsyncScope(callback2, null, err, { opaque });
          });
        }
      }
    };
    function upgrade(opts2, callback2) {
      if (callback2 === void 0) {
        return new Promise((resolve3, reject3) => {
          upgrade.call(this, opts2, (err, data) => {
            return err ? reject3(err) : resolve3(data);
          });
        });
      }
      try {
        const upgradeHandler = new UpgradeHandler(opts2, callback2);
        const upgradeOpts = {
          ...opts2,
          method: opts2.method || "GET",
          upgrade: opts2.protocol || "Websocket"
        };
        this.dispatch(upgradeOpts, upgradeHandler);
      } catch (err) {
        if (typeof callback2 !== "function") {
          throw err;
        }
        const opaque = opts2?.opaque;
        queueMicrotask(() => callback2(err, { opaque }));
      }
    }
    module2.exports = upgrade;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/api/api-connect.js
var require_api_connect = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/api/api-connect.js"(exports2, module2) {
    "use strict";
    var assert13 = __require("node:assert");
    var { AsyncResource } = __require("node:async_hooks");
    var { InvalidArgumentError, SocketError } = require_errors5();
    var util56 = require_util6();
    var { addSignal, removeSignal } = require_abort_signal();
    var ConnectHandler = class extends AsyncResource {
      constructor(opts2, callback2) {
        if (!opts2 || typeof opts2 !== "object") {
          throw new InvalidArgumentError("invalid opts");
        }
        if (typeof callback2 !== "function") {
          throw new InvalidArgumentError("invalid callback");
        }
        const { signal, opaque, responseHeaders } = opts2;
        if (signal && typeof signal.on !== "function" && typeof signal.addEventListener !== "function") {
          throw new InvalidArgumentError("signal must be an EventEmitter or EventTarget");
        }
        super("UNDICI_CONNECT");
        this.opaque = opaque || null;
        this.responseHeaders = responseHeaders || null;
        this.callback = callback2;
        this.abort = null;
        addSignal(this, signal);
      }
      onConnect(abort, context) {
        if (this.reason) {
          abort(this.reason);
          return;
        }
        assert13(this.callback);
        this.abort = abort;
        this.context = context;
      }
      onHeaders() {
        throw new SocketError("bad connect", null);
      }
      onUpgrade(statusCode, rawHeaders, socket) {
        const { callback: callback2, opaque, context } = this;
        removeSignal(this);
        this.callback = null;
        let headers = rawHeaders;
        if (headers != null) {
          headers = this.responseHeaders === "raw" ? util56.parseRawHeaders(rawHeaders) : util56.parseHeaders(rawHeaders);
        }
        this.runInAsyncScope(callback2, null, null, {
          statusCode,
          headers,
          socket,
          opaque,
          context
        });
      }
      onError(err) {
        const { callback: callback2, opaque } = this;
        removeSignal(this);
        if (callback2) {
          this.callback = null;
          queueMicrotask(() => {
            this.runInAsyncScope(callback2, null, err, { opaque });
          });
        }
      }
    };
    function connect(opts2, callback2) {
      if (callback2 === void 0) {
        return new Promise((resolve3, reject3) => {
          connect.call(this, opts2, (err, data) => {
            return err ? reject3(err) : resolve3(data);
          });
        });
      }
      try {
        const connectHandler = new ConnectHandler(opts2, callback2);
        const connectOptions = { ...opts2, method: "CONNECT" };
        this.dispatch(connectOptions, connectHandler);
      } catch (err) {
        if (typeof callback2 !== "function") {
          throw err;
        }
        const opaque = opts2?.opaque;
        queueMicrotask(() => callback2(err, { opaque }));
      }
    }
    module2.exports = connect;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/api/index.js
var require_api = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/api/index.js"(exports2, module2) {
    "use strict";
    module2.exports.request = require_api_request();
    module2.exports.stream = require_api_stream();
    module2.exports.pipeline = require_api_pipeline();
    module2.exports.upgrade = require_api_upgrade();
    module2.exports.connect = require_api_connect();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/mock/mock-errors.js
var require_mock_errors = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/mock/mock-errors.js"(exports2, module2) {
    "use strict";
    var { UndiciError } = require_errors5();
    var kMockNotMatchedError = /* @__PURE__ */ Symbol.for("undici.error.UND_MOCK_ERR_MOCK_NOT_MATCHED");
    var MockNotMatchedError = class extends UndiciError {
      constructor(message) {
        super(message);
        this.name = "MockNotMatchedError";
        this.message = message || "The request does not match any registered mock dispatches";
        this.code = "UND_MOCK_ERR_MOCK_NOT_MATCHED";
      }
      static [Symbol.hasInstance](instance) {
        return instance && instance[kMockNotMatchedError] === true;
      }
      get [kMockNotMatchedError]() {
        return true;
      }
    };
    module2.exports = {
      MockNotMatchedError
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/mock/mock-symbols.js
var require_mock_symbols = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/mock/mock-symbols.js"(exports2, module2) {
    "use strict";
    module2.exports = {
      kAgent: /* @__PURE__ */ Symbol("agent"),
      kOptions: /* @__PURE__ */ Symbol("options"),
      kFactory: /* @__PURE__ */ Symbol("factory"),
      kDispatches: /* @__PURE__ */ Symbol("dispatches"),
      kDispatchKey: /* @__PURE__ */ Symbol("dispatch key"),
      kDefaultHeaders: /* @__PURE__ */ Symbol("default headers"),
      kDefaultTrailers: /* @__PURE__ */ Symbol("default trailers"),
      kContentLength: /* @__PURE__ */ Symbol("content length"),
      kMockAgent: /* @__PURE__ */ Symbol("mock agent"),
      kMockAgentSet: /* @__PURE__ */ Symbol("mock agent set"),
      kMockAgentGet: /* @__PURE__ */ Symbol("mock agent get"),
      kMockDispatch: /* @__PURE__ */ Symbol("mock dispatch"),
      kClose: /* @__PURE__ */ Symbol("close"),
      kOriginalClose: /* @__PURE__ */ Symbol("original agent close"),
      kOriginalDispatch: /* @__PURE__ */ Symbol("original dispatch"),
      kOrigin: /* @__PURE__ */ Symbol("origin"),
      kIsMockActive: /* @__PURE__ */ Symbol("is mock active"),
      kNetConnect: /* @__PURE__ */ Symbol("net connect"),
      kGetNetConnect: /* @__PURE__ */ Symbol("get net connect"),
      kConnected: /* @__PURE__ */ Symbol("connected"),
      kIgnoreTrailingSlash: /* @__PURE__ */ Symbol("ignore trailing slash"),
      kMockAgentMockCallHistoryInstance: /* @__PURE__ */ Symbol("mock agent mock call history name"),
      kMockAgentRegisterCallHistory: /* @__PURE__ */ Symbol("mock agent register mock call history"),
      kMockAgentAddCallHistoryLog: /* @__PURE__ */ Symbol("mock agent add call history log"),
      kMockAgentIsCallHistoryEnabled: /* @__PURE__ */ Symbol("mock agent is call history enabled"),
      kMockAgentAcceptsNonStandardSearchParameters: /* @__PURE__ */ Symbol("mock agent accepts non standard search parameters"),
      kMockCallHistoryAddLog: /* @__PURE__ */ Symbol("mock call history add log"),
      kTotalDispatchCount: /* @__PURE__ */ Symbol("total dispatch count")
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/mock/mock-utils.js
var require_mock_utils = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/mock/mock-utils.js"(exports2, module2) {
    "use strict";
    var { MockNotMatchedError } = require_mock_errors();
    var {
      kDispatches,
      kMockAgent,
      kOriginalDispatch,
      kOrigin,
      kGetNetConnect,
      kTotalDispatchCount
    } = require_mock_symbols();
    var { serializePathWithQuery } = require_util6();
    var { STATUS_CODES } = __require("node:http");
    var {
      types: {
        isPromise
      }
    } = __require("node:util");
    var { InvalidArgumentError } = require_errors5();
    function matchValue(match, value) {
      if (typeof match === "string") {
        return match === value;
      }
      if (match instanceof RegExp) {
        return match.test(value);
      }
      if (typeof match === "function") {
        return match(value) === true;
      }
      return false;
    }
    function lowerCaseEntries(headers) {
      return Object.fromEntries(
        Object.entries(headers).map(([headerName, headerValue]) => {
          return [headerName.toLocaleLowerCase(), headerValue];
        })
      );
    }
    function getHeaderByName(headers, key) {
      if (Array.isArray(headers)) {
        for (let i2 = 0; i2 < headers.length; i2 += 2) {
          if (headers[i2].toLocaleLowerCase() === key.toLocaleLowerCase()) {
            return headers[i2 + 1];
          }
        }
        return void 0;
      } else if (typeof headers.get === "function") {
        return headers.get(key);
      } else {
        return lowerCaseEntries(headers)[key.toLocaleLowerCase()];
      }
    }
    function buildHeadersFromArray(headers) {
      const clone3 = headers.slice();
      const entries = [];
      for (let index = 0; index < clone3.length; index += 2) {
        entries.push([clone3[index], clone3[index + 1]]);
      }
      return Object.fromEntries(entries);
    }
    function matchHeaders(mockDispatch2, headers) {
      if (typeof mockDispatch2.headers === "function") {
        if (Array.isArray(headers)) {
          headers = buildHeadersFromArray(headers);
        }
        return mockDispatch2.headers(headers ? lowerCaseEntries(headers) : {});
      }
      if (typeof mockDispatch2.headers === "undefined") {
        return true;
      }
      if (typeof headers !== "object" || typeof mockDispatch2.headers !== "object") {
        return false;
      }
      for (const [matchHeaderName, matchHeaderValue] of Object.entries(mockDispatch2.headers)) {
        const headerValue = getHeaderByName(headers, matchHeaderName);
        if (!matchValue(matchHeaderValue, headerValue)) {
          return false;
        }
      }
      return true;
    }
    function normalizeSearchParams(query) {
      if (typeof query !== "string") {
        return query;
      }
      const originalQp = new URLSearchParams(query);
      const normalizedQp = new URLSearchParams();
      for (let [key, value] of originalQp.entries()) {
        key = key.replace("[]", "");
        const valueRepresentsString = /^(['"]).*\1$/.test(value);
        if (valueRepresentsString) {
          normalizedQp.append(key, value);
          continue;
        }
        if (value.includes(",")) {
          const values = value.split(",");
          for (const v of values) {
            normalizedQp.append(key, v);
          }
          continue;
        }
        normalizedQp.append(key, value);
      }
      return normalizedQp;
    }
    function safeUrl(path218) {
      if (typeof path218 !== "string") {
        return path218;
      }
      const pathSegments = path218.split("?", 3);
      if (pathSegments.length !== 2) {
        return path218;
      }
      const qp = new URLSearchParams(pathSegments.pop());
      qp.sort();
      return [...pathSegments, qp.toString()].join("?");
    }
    function matchKey(mockDispatch2, { path: path218, method, body, headers }) {
      const pathMatch = matchValue(mockDispatch2.path, path218);
      const methodMatch = matchValue(mockDispatch2.method, method);
      const bodyMatch = typeof mockDispatch2.body !== "undefined" ? matchValue(mockDispatch2.body, body) : true;
      const headersMatch = matchHeaders(mockDispatch2, headers);
      return pathMatch && methodMatch && bodyMatch && headersMatch;
    }
    function getResponseData(data) {
      if (Buffer.isBuffer(data)) {
        return data;
      } else if (data instanceof Uint8Array) {
        return data;
      } else if (data instanceof ArrayBuffer) {
        return data;
      } else if (typeof data === "object") {
        return JSON.stringify(data);
      } else if (data) {
        return data.toString();
      } else {
        return "";
      }
    }
    function getMockDispatch(mockDispatches, key) {
      const basePath = key.query ? serializePathWithQuery(key.path, key.query) : key.path;
      const resolvedPath = typeof basePath === "string" ? safeUrl(basePath) : basePath;
      const resolvedPathWithoutTrailingSlash = removeTrailingSlash(resolvedPath);
      let matchedMockDispatches = mockDispatches.filter(({ consumed }) => !consumed).filter(({ path: path218, ignoreTrailingSlash }) => {
        return ignoreTrailingSlash ? matchValue(removeTrailingSlash(safeUrl(path218)), resolvedPathWithoutTrailingSlash) : matchValue(safeUrl(path218), resolvedPath);
      });
      if (matchedMockDispatches.length === 0) {
        throw new MockNotMatchedError(`Mock dispatch not matched for path '${resolvedPath}'`);
      }
      matchedMockDispatches = matchedMockDispatches.filter(({ method }) => matchValue(method, key.method));
      if (matchedMockDispatches.length === 0) {
        throw new MockNotMatchedError(`Mock dispatch not matched for method '${key.method}' on path '${resolvedPath}'`);
      }
      matchedMockDispatches = matchedMockDispatches.filter(({ body }) => typeof body !== "undefined" ? matchValue(body, key.body) : true);
      if (matchedMockDispatches.length === 0) {
        throw new MockNotMatchedError(`Mock dispatch not matched for body '${key.body}' on path '${resolvedPath}'`);
      }
      matchedMockDispatches = matchedMockDispatches.filter((mockDispatch2) => matchHeaders(mockDispatch2, key.headers));
      if (matchedMockDispatches.length === 0) {
        const headers = typeof key.headers === "object" ? JSON.stringify(key.headers) : key.headers;
        throw new MockNotMatchedError(`Mock dispatch not matched for headers '${headers}' on path '${resolvedPath}'`);
      }
      return matchedMockDispatches[0];
    }
    function addMockDispatch(mockDispatches, key, data, opts2) {
      const baseData = { timesInvoked: 0, times: 1, persist: false, consumed: false, ...opts2 };
      const replyData = typeof data === "function" ? { callback: data } : { ...data };
      const newMockDispatch = { ...baseData, ...key, pending: true, data: { error: null, ...replyData } };
      mockDispatches.push(newMockDispatch);
      mockDispatches[kTotalDispatchCount] = (mockDispatches[kTotalDispatchCount] || 0) + 1;
      return newMockDispatch;
    }
    function deleteMockDispatch(mockDispatches, key) {
      const index = mockDispatches.findIndex((dispatch) => {
        if (!dispatch.consumed) {
          return false;
        }
        return matchKey(dispatch, key);
      });
      if (index !== -1) {
        mockDispatches.splice(index, 1);
      }
    }
    function removeTrailingSlash(path218) {
      while (path218.endsWith("/")) {
        path218 = path218.slice(0, -1);
      }
      if (path218.length === 0) {
        path218 = "/";
      }
      return path218;
    }
    function buildKey(opts2) {
      const { path: path218, method, body, headers, query } = opts2;
      return {
        path: path218,
        method,
        body,
        headers,
        query
      };
    }
    function generateKeyValues(data) {
      const keys4 = Object.keys(data);
      const result2 = [];
      for (let i2 = 0; i2 < keys4.length; ++i2) {
        const key = keys4[i2];
        const value = data[key];
        const name = Buffer.from(`${key}`);
        if (Array.isArray(value)) {
          for (let j2 = 0; j2 < value.length; ++j2) {
            result2.push(name, Buffer.from(`${value[j2]}`));
          }
        } else {
          result2.push(name, Buffer.from(`${value}`));
        }
      }
      return result2;
    }
    function getStatusText(statusCode) {
      return STATUS_CODES[statusCode] || "unknown";
    }
    async function getResponse(body) {
      const buffers = [];
      for await (const data of body) {
        buffers.push(data);
      }
      return Buffer.concat(buffers).toString("utf8");
    }
    function mockDispatch(opts2, handler77) {
      const key = buildKey(opts2);
      const mockDispatch2 = getMockDispatch(this[kDispatches], key);
      mockDispatch2.timesInvoked++;
      if (mockDispatch2.data.callback) {
        mockDispatch2.data = { ...mockDispatch2.data, ...mockDispatch2.data.callback(opts2) };
      }
      const { data: { statusCode, data, headers, trailers, error }, delay, persist } = mockDispatch2;
      const { timesInvoked, times: times3 } = mockDispatch2;
      mockDispatch2.consumed = !persist && timesInvoked >= times3;
      mockDispatch2.pending = timesInvoked < times3;
      if (error !== null) {
        deleteMockDispatch(this[kDispatches], key);
        handler77.onError(error);
        return true;
      }
      let aborted2 = false;
      let timer = null;
      function abort(err) {
        if (aborted2) {
          return;
        }
        aborted2 = true;
        if (timer !== null) {
          clearTimeout(timer);
          timer = null;
        }
        handler77.onError(err);
      }
      handler77.onConnect?.(abort, null);
      if (typeof delay === "number" && delay > 0) {
        timer = setTimeout(() => {
          timer = null;
          handleReply(this[kDispatches]);
        }, delay);
      } else {
        handleReply(this[kDispatches]);
      }
      function handleReply(mockDispatches, _data = data) {
        if (aborted2) {
          return;
        }
        const optsHeaders = Array.isArray(opts2.headers) ? buildHeadersFromArray(opts2.headers) : opts2.headers;
        const body = typeof _data === "function" ? _data({ ...opts2, headers: optsHeaders }) : _data;
        if (isPromise(body)) {
          return body.then((newData) => handleReply(mockDispatches, newData));
        }
        if (aborted2) {
          return;
        }
        const responseData = getResponseData(body);
        const responseHeaders = generateKeyValues(headers);
        const responseTrailers = generateKeyValues(trailers);
        handler77.onHeaders?.(statusCode, responseHeaders, resume, getStatusText(statusCode));
        handler77.onData?.(Buffer.from(responseData));
        handler77.onComplete?.(responseTrailers);
        deleteMockDispatch(mockDispatches, key);
      }
      function resume() {
      }
      return true;
    }
    function buildMockDispatch() {
      const agent = this[kMockAgent];
      const origin = this[kOrigin];
      const originalDispatch = this[kOriginalDispatch];
      return function dispatch(opts2, handler77) {
        if (agent.isMockActive) {
          try {
            mockDispatch.call(this, opts2, handler77);
          } catch (error) {
            if (error.code === "UND_MOCK_ERR_MOCK_NOT_MATCHED") {
              const netConnect = agent[kGetNetConnect]();
              const totalInterceptsCount = this[kDispatches][kTotalDispatchCount] || this[kDispatches].length;
              const pendingInterceptsCount = this[kDispatches].filter(({ consumed }) => !consumed).length;
              const interceptsMessage = `, ${pendingInterceptsCount} interceptor(s) remaining out of ${totalInterceptsCount} defined`;
              if (netConnect === false) {
                throw new MockNotMatchedError(`${error.message}: subsequent request to origin ${origin} was not allowed (net.connect disabled)${interceptsMessage}`);
              }
              if (checkNetConnect(netConnect, origin)) {
                originalDispatch.call(this, opts2, handler77);
              } else {
                throw new MockNotMatchedError(`${error.message}: subsequent request to origin ${origin} was not allowed (net.connect is not enabled for this origin)${interceptsMessage}`);
              }
            } else {
              throw error;
            }
          }
        } else {
          originalDispatch.call(this, opts2, handler77);
        }
      };
    }
    function checkNetConnect(netConnect, origin) {
      const url7 = new URL(origin);
      if (netConnect === true) {
        return true;
      } else if (Array.isArray(netConnect) && netConnect.some((matcher) => matchValue(matcher, url7.host))) {
        return true;
      }
      return false;
    }
    function normalizeOrigin(origin) {
      if (typeof origin !== "string" && !(origin instanceof URL)) {
        return origin;
      }
      if (origin instanceof URL) {
        return origin.origin;
      }
      return origin.toLowerCase();
    }
    function buildAndValidateMockOptions(opts2) {
      const { agent, ...mockOptions } = opts2;
      if ("enableCallHistory" in mockOptions && typeof mockOptions.enableCallHistory !== "boolean") {
        throw new InvalidArgumentError("options.enableCallHistory must to be a boolean");
      }
      if ("acceptNonStandardSearchParameters" in mockOptions && typeof mockOptions.acceptNonStandardSearchParameters !== "boolean") {
        throw new InvalidArgumentError("options.acceptNonStandardSearchParameters must to be a boolean");
      }
      if ("ignoreTrailingSlash" in mockOptions && typeof mockOptions.ignoreTrailingSlash !== "boolean") {
        throw new InvalidArgumentError("options.ignoreTrailingSlash must to be a boolean");
      }
      return mockOptions;
    }
    module2.exports = {
      getResponseData,
      getMockDispatch,
      addMockDispatch,
      deleteMockDispatch,
      buildKey,
      generateKeyValues,
      matchValue,
      getResponse,
      getStatusText,
      mockDispatch,
      buildMockDispatch,
      checkNetConnect,
      buildAndValidateMockOptions,
      getHeaderByName,
      buildHeadersFromArray,
      normalizeSearchParams,
      normalizeOrigin
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/mock/mock-interceptor.js
var require_mock_interceptor = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/mock/mock-interceptor.js"(exports2, module2) {
    "use strict";
    var { getResponseData, buildKey, addMockDispatch } = require_mock_utils();
    var {
      kDispatches,
      kDispatchKey,
      kDefaultHeaders,
      kDefaultTrailers,
      kContentLength,
      kMockDispatch,
      kIgnoreTrailingSlash
    } = require_mock_symbols();
    var { InvalidArgumentError } = require_errors5();
    var { serializePathWithQuery } = require_util6();
    var MockScope = class {
      constructor(mockDispatch) {
        this[kMockDispatch] = mockDispatch;
      }
      /**
       * Delay a reply by a set amount in ms.
       */
      delay(waitInMs) {
        if (typeof waitInMs !== "number" || !Number.isInteger(waitInMs) || waitInMs <= 0) {
          throw new InvalidArgumentError("waitInMs must be a valid integer > 0");
        }
        this[kMockDispatch].delay = waitInMs;
        return this;
      }
      /**
       * For a defined reply, never mark as consumed.
       */
      persist() {
        this[kMockDispatch].persist = true;
        return this;
      }
      /**
       * Allow one to define a reply for a set amount of matching requests.
       */
      times(repeatTimes) {
        if (typeof repeatTimes !== "number" || !Number.isInteger(repeatTimes) || repeatTimes <= 0) {
          throw new InvalidArgumentError("repeatTimes must be a valid integer > 0");
        }
        this[kMockDispatch].times = repeatTimes;
        return this;
      }
    };
    var MockInterceptor = class {
      constructor(opts2, mockDispatches) {
        if (typeof opts2 !== "object") {
          throw new InvalidArgumentError("opts must be an object");
        }
        if (typeof opts2.path === "undefined") {
          throw new InvalidArgumentError("opts.path must be defined");
        }
        if (typeof opts2.method === "undefined") {
          opts2.method = "GET";
        }
        if (typeof opts2.path === "string") {
          if (opts2.query) {
            opts2.path = serializePathWithQuery(opts2.path, opts2.query);
          } else {
            const parsedURL = new URL(opts2.path, "data://");
            opts2.path = parsedURL.pathname + parsedURL.search;
          }
        }
        if (typeof opts2.method === "string") {
          opts2.method = opts2.method.toUpperCase();
        }
        this[kDispatchKey] = buildKey(opts2);
        this[kDispatches] = mockDispatches;
        this[kIgnoreTrailingSlash] = opts2.ignoreTrailingSlash ?? false;
        this[kDefaultHeaders] = {};
        this[kDefaultTrailers] = {};
        this[kContentLength] = false;
      }
      createMockScopeDispatchData({ statusCode, data, responseOptions }) {
        const responseData = getResponseData(data);
        const contentLength = this[kContentLength] ? { "content-length": responseData.length } : {};
        const headers = { ...this[kDefaultHeaders], ...contentLength, ...responseOptions.headers };
        const trailers = { ...this[kDefaultTrailers], ...responseOptions.trailers };
        return { statusCode, data, headers, trailers };
      }
      validateReplyParameters(replyParameters) {
        if (typeof replyParameters.statusCode === "undefined") {
          throw new InvalidArgumentError("statusCode must be defined");
        }
        if (typeof replyParameters.responseOptions !== "object" || replyParameters.responseOptions === null) {
          throw new InvalidArgumentError("responseOptions must be an object");
        }
      }
      /**
       * Mock an undici request with a defined reply.
       */
      reply(replyOptionsCallbackOrStatusCode) {
        if (typeof replyOptionsCallbackOrStatusCode === "function") {
          const wrappedDefaultsCallback = (opts2) => {
            const resolvedData = replyOptionsCallbackOrStatusCode(opts2);
            if (typeof resolvedData !== "object" || resolvedData === null) {
              throw new InvalidArgumentError("reply options callback must return an object");
            }
            const replyParameters2 = { data: "", responseOptions: {}, ...resolvedData };
            this.validateReplyParameters(replyParameters2);
            return {
              ...this.createMockScopeDispatchData(replyParameters2)
            };
          };
          const newMockDispatch2 = addMockDispatch(this[kDispatches], this[kDispatchKey], wrappedDefaultsCallback, { ignoreTrailingSlash: this[kIgnoreTrailingSlash] });
          return new MockScope(newMockDispatch2);
        }
        const replyParameters = {
          statusCode: replyOptionsCallbackOrStatusCode,
          data: arguments[1] === void 0 ? "" : arguments[1],
          responseOptions: arguments[2] === void 0 ? {} : arguments[2]
        };
        this.validateReplyParameters(replyParameters);
        const dispatchData = this.createMockScopeDispatchData(replyParameters);
        const newMockDispatch = addMockDispatch(this[kDispatches], this[kDispatchKey], dispatchData, { ignoreTrailingSlash: this[kIgnoreTrailingSlash] });
        return new MockScope(newMockDispatch);
      }
      /**
       * Mock an undici request with a defined error.
       */
      replyWithError(error) {
        if (typeof error === "undefined") {
          throw new InvalidArgumentError("error must be defined");
        }
        const newMockDispatch = addMockDispatch(this[kDispatches], this[kDispatchKey], { error }, { ignoreTrailingSlash: this[kIgnoreTrailingSlash] });
        return new MockScope(newMockDispatch);
      }
      /**
       * Set default reply headers on the interceptor for subsequent replies
       */
      defaultReplyHeaders(headers) {
        if (typeof headers === "undefined") {
          throw new InvalidArgumentError("headers must be defined");
        }
        this[kDefaultHeaders] = headers;
        return this;
      }
      /**
       * Set default reply trailers on the interceptor for subsequent replies
       */
      defaultReplyTrailers(trailers) {
        if (typeof trailers === "undefined") {
          throw new InvalidArgumentError("trailers must be defined");
        }
        this[kDefaultTrailers] = trailers;
        return this;
      }
      /**
       * Set reply content length header for replies on the interceptor
       */
      replyContentLength() {
        this[kContentLength] = true;
        return this;
      }
    };
    module2.exports.MockInterceptor = MockInterceptor;
    module2.exports.MockScope = MockScope;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/mock/mock-client.js
var require_mock_client = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/mock/mock-client.js"(exports2, module2) {
    "use strict";
    var { promisify: promisify8 } = __require("node:util");
    var Client = require_client();
    var { buildMockDispatch } = require_mock_utils();
    var {
      kDispatches,
      kMockAgent,
      kClose,
      kOriginalClose,
      kOrigin,
      kOriginalDispatch,
      kConnected,
      kIgnoreTrailingSlash
    } = require_mock_symbols();
    var { MockInterceptor } = require_mock_interceptor();
    var Symbols = require_symbols();
    var { InvalidArgumentError } = require_errors5();
    var MockClient = class extends Client {
      constructor(origin, opts2) {
        if (!opts2 || !opts2.agent || typeof opts2.agent.dispatch !== "function") {
          throw new InvalidArgumentError("Argument opts.agent must implement Agent");
        }
        super(origin, opts2);
        this[kMockAgent] = opts2.agent;
        this[kOrigin] = origin;
        this[kIgnoreTrailingSlash] = opts2.ignoreTrailingSlash ?? false;
        this[kDispatches] = [];
        this[kConnected] = 1;
        this[kOriginalDispatch] = this.dispatch;
        this[kOriginalClose] = this.close.bind(this);
        this.dispatch = buildMockDispatch.call(this);
        this.close = this[kClose];
      }
      get [Symbols.kConnected]() {
        return this[kConnected];
      }
      /**
       * Sets up the base interceptor for mocking replies from undici.
       */
      intercept(opts2) {
        return new MockInterceptor(
          opts2 && { ignoreTrailingSlash: this[kIgnoreTrailingSlash], ...opts2 },
          this[kDispatches]
        );
      }
      cleanMocks() {
        this[kDispatches] = [];
      }
      async [kClose]() {
        await promisify8(this[kOriginalClose])();
        this[kConnected] = 0;
        this[kMockAgent][Symbols.kClients].delete(this[kOrigin]);
      }
    };
    module2.exports = MockClient;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/mock/mock-call-history.js
var require_mock_call_history = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/mock/mock-call-history.js"(exports2, module2) {
    "use strict";
    var { kMockCallHistoryAddLog } = require_mock_symbols();
    var { InvalidArgumentError } = require_errors5();
    function handleFilterCallsWithOptions(criteria, options, handler77, store) {
      switch (options.operator) {
        case "OR":
          store.push(...handler77(criteria));
          return store;
        case "AND":
          return handler77.call({ logs: store }, criteria);
        default:
          throw new InvalidArgumentError("options.operator must to be a case insensitive string equal to 'OR' or 'AND'");
      }
    }
    function buildAndValidateFilterCallsOptions(options = {}) {
      const finalOptions = {};
      if ("operator" in options) {
        if (typeof options.operator !== "string" || options.operator.toUpperCase() !== "OR" && options.operator.toUpperCase() !== "AND") {
          throw new InvalidArgumentError("options.operator must to be a case insensitive string equal to 'OR' or 'AND'");
        }
        return {
          ...finalOptions,
          operator: options.operator.toUpperCase()
        };
      }
      return finalOptions;
    }
    function makeFilterCalls(parameterName) {
      return (parameterValue) => {
        if (typeof parameterValue === "string" || parameterValue == null) {
          return this.logs.filter((log3) => {
            return log3[parameterName] === parameterValue;
          });
        }
        if (parameterValue instanceof RegExp) {
          return this.logs.filter((log3) => {
            return parameterValue.test(log3[parameterName]);
          });
        }
        throw new InvalidArgumentError(`${parameterName} parameter should be one of string, regexp, undefined or null`);
      };
    }
    function computeUrlWithMaybeSearchParameters(requestInit) {
      try {
        const url7 = new URL(requestInit.path, requestInit.origin);
        if (url7.search.length !== 0) {
          return url7;
        }
        url7.search = new URLSearchParams(requestInit.query).toString();
        return url7;
      } catch (error) {
        throw new InvalidArgumentError("An error occurred when computing MockCallHistoryLog.url", { cause: error });
      }
    }
    var MockCallHistoryLog = class {
      constructor(requestInit = {}) {
        this.body = requestInit.body;
        this.headers = requestInit.headers;
        this.method = requestInit.method;
        const url7 = computeUrlWithMaybeSearchParameters(requestInit);
        this.fullUrl = url7.toString();
        this.origin = url7.origin;
        this.path = url7.pathname;
        this.searchParams = Object.fromEntries(url7.searchParams);
        this.protocol = url7.protocol;
        this.host = url7.host;
        this.port = url7.port;
        this.hash = url7.hash;
      }
      toMap() {
        return /* @__PURE__ */ new Map(
          [
            ["protocol", this.protocol],
            ["host", this.host],
            ["port", this.port],
            ["origin", this.origin],
            ["path", this.path],
            ["hash", this.hash],
            ["searchParams", this.searchParams],
            ["fullUrl", this.fullUrl],
            ["method", this.method],
            ["body", this.body],
            ["headers", this.headers]
          ]
        );
      }
      toString() {
        const options = { betweenKeyValueSeparator: "->", betweenPairSeparator: "|" };
        let result2 = "";
        this.toMap().forEach((value, key) => {
          if (typeof value === "string" || value === void 0 || value === null) {
            result2 = `${result2}${key}${options.betweenKeyValueSeparator}${value}${options.betweenPairSeparator}`;
          }
          if (typeof value === "object" && value !== null || Array.isArray(value)) {
            result2 = `${result2}${key}${options.betweenKeyValueSeparator}${JSON.stringify(value)}${options.betweenPairSeparator}`;
          }
        });
        return result2.slice(0, -1);
      }
    };
    var MockCallHistory = class {
      logs = [];
      calls() {
        return this.logs;
      }
      firstCall() {
        return this.logs.at(0);
      }
      lastCall() {
        return this.logs.at(-1);
      }
      nthCall(number) {
        if (typeof number !== "number") {
          throw new InvalidArgumentError("nthCall must be called with a number");
        }
        if (!Number.isInteger(number)) {
          throw new InvalidArgumentError("nthCall must be called with an integer");
        }
        if (Math.sign(number) !== 1) {
          throw new InvalidArgumentError("nthCall must be called with a positive value. use firstCall or lastCall instead");
        }
        return this.logs.at(number - 1);
      }
      filterCalls(criteria, options) {
        if (this.logs.length === 0) {
          return this.logs;
        }
        if (typeof criteria === "function") {
          return this.logs.filter(criteria);
        }
        if (criteria instanceof RegExp) {
          return this.logs.filter((log3) => {
            return criteria.test(log3.toString());
          });
        }
        if (typeof criteria === "object" && criteria !== null) {
          if (Object.keys(criteria).length === 0) {
            return this.logs;
          }
          const finalOptions = { operator: "OR", ...buildAndValidateFilterCallsOptions(options) };
          let maybeDuplicatedLogsFiltered = [];
          if ("protocol" in criteria) {
            maybeDuplicatedLogsFiltered = handleFilterCallsWithOptions(criteria.protocol, finalOptions, this.filterCallsByProtocol, maybeDuplicatedLogsFiltered);
          }
          if ("host" in criteria) {
            maybeDuplicatedLogsFiltered = handleFilterCallsWithOptions(criteria.host, finalOptions, this.filterCallsByHost, maybeDuplicatedLogsFiltered);
          }
          if ("port" in criteria) {
            maybeDuplicatedLogsFiltered = handleFilterCallsWithOptions(criteria.port, finalOptions, this.filterCallsByPort, maybeDuplicatedLogsFiltered);
          }
          if ("origin" in criteria) {
            maybeDuplicatedLogsFiltered = handleFilterCallsWithOptions(criteria.origin, finalOptions, this.filterCallsByOrigin, maybeDuplicatedLogsFiltered);
          }
          if ("path" in criteria) {
            maybeDuplicatedLogsFiltered = handleFilterCallsWithOptions(criteria.path, finalOptions, this.filterCallsByPath, maybeDuplicatedLogsFiltered);
          }
          if ("hash" in criteria) {
            maybeDuplicatedLogsFiltered = handleFilterCallsWithOptions(criteria.hash, finalOptions, this.filterCallsByHash, maybeDuplicatedLogsFiltered);
          }
          if ("fullUrl" in criteria) {
            maybeDuplicatedLogsFiltered = handleFilterCallsWithOptions(criteria.fullUrl, finalOptions, this.filterCallsByFullUrl, maybeDuplicatedLogsFiltered);
          }
          if ("method" in criteria) {
            maybeDuplicatedLogsFiltered = handleFilterCallsWithOptions(criteria.method, finalOptions, this.filterCallsByMethod, maybeDuplicatedLogsFiltered);
          }
          const uniqLogsFiltered = [...new Set(maybeDuplicatedLogsFiltered)];
          return uniqLogsFiltered;
        }
        throw new InvalidArgumentError("criteria parameter should be one of function, regexp, or object");
      }
      filterCallsByProtocol = makeFilterCalls.call(this, "protocol");
      filterCallsByHost = makeFilterCalls.call(this, "host");
      filterCallsByPort = makeFilterCalls.call(this, "port");
      filterCallsByOrigin = makeFilterCalls.call(this, "origin");
      filterCallsByPath = makeFilterCalls.call(this, "path");
      filterCallsByHash = makeFilterCalls.call(this, "hash");
      filterCallsByFullUrl = makeFilterCalls.call(this, "fullUrl");
      filterCallsByMethod = makeFilterCalls.call(this, "method");
      clear() {
        this.logs = [];
      }
      [kMockCallHistoryAddLog](requestInit) {
        const log3 = new MockCallHistoryLog(requestInit);
        this.logs.push(log3);
        return log3;
      }
      *[Symbol.iterator]() {
        for (const log3 of this.calls()) {
          yield log3;
        }
      }
    };
    module2.exports.MockCallHistory = MockCallHistory;
    module2.exports.MockCallHistoryLog = MockCallHistoryLog;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/mock/mock-pool.js
var require_mock_pool = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/mock/mock-pool.js"(exports2, module2) {
    "use strict";
    var { promisify: promisify8 } = __require("node:util");
    var Pool = require_pool();
    var { buildMockDispatch } = require_mock_utils();
    var {
      kDispatches,
      kMockAgent,
      kClose,
      kOriginalClose,
      kOrigin,
      kOriginalDispatch,
      kConnected,
      kIgnoreTrailingSlash
    } = require_mock_symbols();
    var { MockInterceptor } = require_mock_interceptor();
    var Symbols = require_symbols();
    var { InvalidArgumentError } = require_errors5();
    var MockPool = class extends Pool {
      constructor(origin, opts2) {
        if (!opts2 || !opts2.agent || typeof opts2.agent.dispatch !== "function") {
          throw new InvalidArgumentError("Argument opts.agent must implement Agent");
        }
        super(origin, opts2);
        this[kMockAgent] = opts2.agent;
        this[kOrigin] = origin;
        this[kIgnoreTrailingSlash] = opts2.ignoreTrailingSlash ?? false;
        this[kDispatches] = [];
        this[kConnected] = 1;
        this[kOriginalDispatch] = this.dispatch;
        this[kOriginalClose] = this.close.bind(this);
        this.dispatch = buildMockDispatch.call(this);
        this.close = this[kClose];
      }
      get [Symbols.kConnected]() {
        return this[kConnected];
      }
      /**
       * Sets up the base interceptor for mocking replies from undici.
       */
      intercept(opts2) {
        return new MockInterceptor(
          opts2 && { ignoreTrailingSlash: this[kIgnoreTrailingSlash], ...opts2 },
          this[kDispatches]
        );
      }
      cleanMocks() {
        this[kDispatches] = [];
      }
      async [kClose]() {
        await promisify8(this[kOriginalClose])();
        this[kConnected] = 0;
        this[kMockAgent][Symbols.kClients].delete(this[kOrigin]);
      }
    };
    module2.exports = MockPool;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/mock/pending-interceptors-formatter.js
var require_pending_interceptors_formatter = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/mock/pending-interceptors-formatter.js"(exports2, module2) {
    "use strict";
    var { Transform: Transform2 } = __require("node:stream");
    var { Console } = __require("node:console");
    var PERSISTENT = process.versions.icu ? "\u2705" : "Y ";
    var NOT_PERSISTENT = process.versions.icu ? "\u274C" : "N ";
    module2.exports = class PendingInterceptorsFormatter {
      constructor({ disableColors } = {}) {
        this.transform = new Transform2({
          transform(chunk, _enc, cb) {
            cb(null, chunk);
          }
        });
        this.logger = new Console({
          stdout: this.transform,
          inspectOptions: {
            colors: !disableColors && !process.env.CI
          }
        });
      }
      format(pendingInterceptors) {
        const withPrettyHeaders = pendingInterceptors.map(
          ({ method, path: path218, data: { statusCode }, persist, times: times3, timesInvoked, origin }) => ({
            Method: method,
            Origin: origin,
            Path: path218,
            "Status code": statusCode,
            Persistent: persist ? PERSISTENT : NOT_PERSISTENT,
            Invocations: timesInvoked,
            Remaining: persist ? Infinity : times3 - timesInvoked
          })
        );
        this.logger.table(withPrettyHeaders);
        return this.transform.read().toString();
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/mock/mock-agent.js
var require_mock_agent = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/mock/mock-agent.js"(exports2, module2) {
    "use strict";
    var { kClients } = require_symbols();
    var Agent2 = require_agent();
    var {
      kAgent,
      kMockAgentSet,
      kMockAgentGet,
      kDispatches,
      kIsMockActive,
      kNetConnect,
      kGetNetConnect,
      kOptions,
      kFactory,
      kMockAgentRegisterCallHistory,
      kMockAgentIsCallHistoryEnabled,
      kMockAgentAddCallHistoryLog,
      kMockAgentMockCallHistoryInstance,
      kMockAgentAcceptsNonStandardSearchParameters,
      kMockCallHistoryAddLog,
      kIgnoreTrailingSlash
    } = require_mock_symbols();
    var MockClient = require_mock_client();
    var MockPool = require_mock_pool();
    var { matchValue, normalizeSearchParams, buildAndValidateMockOptions, normalizeOrigin } = require_mock_utils();
    var { InvalidArgumentError, UndiciError } = require_errors5();
    var Dispatcher = require_dispatcher();
    var PendingInterceptorsFormatter = require_pending_interceptors_formatter();
    var { MockCallHistory } = require_mock_call_history();
    var MockAgent = class extends Dispatcher {
      constructor(opts2 = {}) {
        super(opts2);
        const mockOptions = buildAndValidateMockOptions(opts2);
        this[kNetConnect] = true;
        this[kIsMockActive] = true;
        this[kMockAgentIsCallHistoryEnabled] = mockOptions.enableCallHistory ?? false;
        this[kMockAgentAcceptsNonStandardSearchParameters] = mockOptions.acceptNonStandardSearchParameters ?? false;
        this[kIgnoreTrailingSlash] = mockOptions.ignoreTrailingSlash ?? false;
        if (opts2?.agent && typeof opts2.agent.dispatch !== "function") {
          throw new InvalidArgumentError("Argument opts.agent must implement Agent");
        }
        const agent = opts2?.agent ? opts2.agent : new Agent2(opts2);
        this[kAgent] = agent;
        this[kClients] = agent[kClients];
        this[kOptions] = mockOptions;
        if (this[kMockAgentIsCallHistoryEnabled]) {
          this[kMockAgentRegisterCallHistory]();
        }
      }
      get(origin) {
        const normalizedOrigin = normalizeOrigin(origin);
        const originKey = this[kIgnoreTrailingSlash] ? normalizedOrigin.replace(/\/$/, "") : normalizedOrigin;
        let dispatcher = this[kMockAgentGet](originKey);
        if (!dispatcher) {
          dispatcher = this[kFactory](originKey);
          this[kMockAgentSet](originKey, dispatcher);
        }
        return dispatcher;
      }
      dispatch(opts2, handler77) {
        opts2.origin = normalizeOrigin(opts2.origin);
        this.get(opts2.origin);
        this[kMockAgentAddCallHistoryLog](opts2);
        const acceptNonStandardSearchParameters = this[kMockAgentAcceptsNonStandardSearchParameters];
        const dispatchOpts = { ...opts2 };
        if (acceptNonStandardSearchParameters && dispatchOpts.path) {
          const [path218, searchParams] = dispatchOpts.path.split("?");
          const normalizedSearchParams = normalizeSearchParams(searchParams, acceptNonStandardSearchParameters);
          dispatchOpts.path = `${path218}?${normalizedSearchParams}`;
        }
        return this[kAgent].dispatch(dispatchOpts, handler77);
      }
      async close() {
        this.clearCallHistory();
        await this[kAgent].close();
        this[kClients].clear();
      }
      deactivate() {
        this[kIsMockActive] = false;
      }
      activate() {
        this[kIsMockActive] = true;
      }
      enableNetConnect(matcher) {
        if (typeof matcher === "string" || typeof matcher === "function" || matcher instanceof RegExp) {
          if (Array.isArray(this[kNetConnect])) {
            this[kNetConnect].push(matcher);
          } else {
            this[kNetConnect] = [matcher];
          }
        } else if (typeof matcher === "undefined") {
          this[kNetConnect] = true;
        } else {
          throw new InvalidArgumentError("Unsupported matcher. Must be one of String|Function|RegExp.");
        }
      }
      disableNetConnect() {
        this[kNetConnect] = false;
      }
      enableCallHistory() {
        this[kMockAgentIsCallHistoryEnabled] = true;
        return this;
      }
      disableCallHistory() {
        this[kMockAgentIsCallHistoryEnabled] = false;
        return this;
      }
      getCallHistory() {
        return this[kMockAgentMockCallHistoryInstance];
      }
      clearCallHistory() {
        if (this[kMockAgentMockCallHistoryInstance] !== void 0) {
          this[kMockAgentMockCallHistoryInstance].clear();
        }
      }
      // This is required to bypass issues caused by using global symbols - see:
      // https://github.com/nodejs/undici/issues/1447
      get isMockActive() {
        return this[kIsMockActive];
      }
      [kMockAgentRegisterCallHistory]() {
        if (this[kMockAgentMockCallHistoryInstance] === void 0) {
          this[kMockAgentMockCallHistoryInstance] = new MockCallHistory();
        }
      }
      [kMockAgentAddCallHistoryLog](opts2) {
        if (this[kMockAgentIsCallHistoryEnabled]) {
          this[kMockAgentRegisterCallHistory]();
          this[kMockAgentMockCallHistoryInstance][kMockCallHistoryAddLog](opts2);
        }
      }
      [kMockAgentSet](origin, dispatcher) {
        this[kClients].set(origin, { count: 0, dispatcher });
      }
      [kFactory](origin) {
        const mockOptions = Object.assign({ agent: this }, this[kOptions]);
        return this[kOptions] && this[kOptions].connections === 1 ? new MockClient(origin, mockOptions) : new MockPool(origin, mockOptions);
      }
      [kMockAgentGet](origin) {
        const result2 = this[kClients].get(origin);
        if (result2?.dispatcher) {
          return result2.dispatcher;
        }
        if (typeof origin !== "string") {
          const dispatcher = this[kFactory]("http://localhost:9999");
          this[kMockAgentSet](origin, dispatcher);
          return dispatcher;
        }
        for (const [keyMatcher, result3] of Array.from(this[kClients])) {
          if (result3 && typeof keyMatcher !== "string" && matchValue(keyMatcher, origin)) {
            const dispatcher = this[kFactory](origin);
            this[kMockAgentSet](origin, dispatcher);
            dispatcher[kDispatches] = result3.dispatcher[kDispatches];
            return dispatcher;
          }
        }
      }
      [kGetNetConnect]() {
        return this[kNetConnect];
      }
      pendingInterceptors() {
        const mockAgentClients = this[kClients];
        return Array.from(mockAgentClients.entries()).flatMap(([origin, result2]) => result2.dispatcher[kDispatches].map((dispatch) => ({ ...dispatch, origin }))).filter(({ pending }) => pending);
      }
      assertNoPendingInterceptors({ pendingInterceptorsFormatter = new PendingInterceptorsFormatter() } = {}) {
        const pending = this.pendingInterceptors();
        if (pending.length === 0) {
          return;
        }
        throw new UndiciError(
          pending.length === 1 ? `1 interceptor is pending:

${pendingInterceptorsFormatter.format(pending)}`.trim() : `${pending.length} interceptors are pending:

${pendingInterceptorsFormatter.format(pending)}`.trim()
        );
      }
    };
    module2.exports = MockAgent;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/mock/snapshot-utils.js
var require_snapshot_utils = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/mock/snapshot-utils.js"(exports2, module2) {
    "use strict";
    var { InvalidArgumentError } = require_errors5();
    var { runtimeFeatures } = require_runtime_features();
    function createHeaderFilters(matchOptions = {}) {
      const { ignoreHeaders = [], excludeHeaders = [], matchHeaders = [], caseSensitive = false } = matchOptions;
      return {
        ignore: new Set(ignoreHeaders.map((header) => caseSensitive ? header : header.toLowerCase())),
        exclude: new Set(excludeHeaders.map((header) => caseSensitive ? header : header.toLowerCase())),
        match: new Set(matchHeaders.map((header) => caseSensitive ? header : header.toLowerCase()))
      };
    }
    var crypto11 = runtimeFeatures.has("crypto") ? __require("node:crypto") : null;
    var hashId = crypto11?.hash ? (value) => crypto11.hash("sha256", value, "base64url") : (value) => Buffer.from(value).toString("base64url");
    function isUndiciHeaders(headers) {
      return Array.isArray(headers) && (headers.length & 1) === 0;
    }
    function isUrlExcludedFactory(excludePatterns = []) {
      if (excludePatterns.length === 0) {
        return () => false;
      }
      return function isUrlExcluded(url7) {
        let urlLowerCased;
        for (const pattern of excludePatterns) {
          if (typeof pattern === "string") {
            if (!urlLowerCased) {
              urlLowerCased = url7.toLowerCase();
            }
            if (urlLowerCased.includes(pattern.toLowerCase())) {
              return true;
            }
          } else if (pattern instanceof RegExp) {
            if (pattern.test(url7)) {
              return true;
            }
          }
        }
        return false;
      };
    }
    function normalizeHeaders(headers) {
      const normalizedHeaders = {};
      if (!headers) return normalizedHeaders;
      if (isUndiciHeaders(headers)) {
        for (let i2 = 0; i2 < headers.length; i2 += 2) {
          const key = headers[i2];
          const value = headers[i2 + 1];
          if (key && value !== void 0) {
            const keyStr = Buffer.isBuffer(key) ? key.toString() : key;
            const valueStr = Buffer.isBuffer(value) ? value.toString() : value;
            normalizedHeaders[keyStr.toLowerCase()] = valueStr;
          }
        }
        return normalizedHeaders;
      }
      if (headers && typeof headers === "object") {
        for (const [key, value] of Object.entries(headers)) {
          if (key && typeof key === "string") {
            normalizedHeaders[key.toLowerCase()] = Array.isArray(value) ? value.join(", ") : String(value);
          }
        }
      }
      return normalizedHeaders;
    }
    var validSnapshotModes = (
      /** @type {const} */
      ["record", "playback", "update"]
    );
    function validateSnapshotMode(mode) {
      if (!validSnapshotModes.includes(mode)) {
        throw new InvalidArgumentError(`Invalid snapshot mode: ${mode}. Must be one of: ${validSnapshotModes.join(", ")}`);
      }
    }
    module2.exports = {
      createHeaderFilters,
      hashId,
      isUndiciHeaders,
      normalizeHeaders,
      isUrlExcludedFactory,
      validateSnapshotMode
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/mock/snapshot-recorder.js
var require_snapshot_recorder = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/mock/snapshot-recorder.js"(exports2, module2) {
    "use strict";
    var { writeFile: writeFile3, readFile: readFile4, mkdir: mkdir2 } = __require("node:fs/promises");
    var { dirname: dirname2, resolve: resolve3 } = __require("node:path");
    var { setTimeout: setTimeout4, clearTimeout: clearTimeout2 } = __require("node:timers");
    var { InvalidArgumentError, UndiciError } = require_errors5();
    var { hashId, isUrlExcludedFactory, normalizeHeaders, createHeaderFilters } = require_snapshot_utils();
    function formatRequestKey(opts2, headerFilters, matchOptions = {}) {
      const url7 = new URL(opts2.path, opts2.origin);
      const normalized = opts2._normalizedHeaders || normalizeHeaders(opts2.headers);
      if (!opts2._normalizedHeaders) {
        opts2._normalizedHeaders = normalized;
      }
      return {
        method: opts2.method || "GET",
        url: matchOptions.matchQuery !== false ? url7.toString() : `${url7.origin}${url7.pathname}`,
        headers: filterHeadersForMatching(normalized, headerFilters, matchOptions),
        body: matchOptions.matchBody !== false && opts2.body ? String(opts2.body) : ""
      };
    }
    function filterHeadersForMatching(headers, headerFilters, matchOptions = {}) {
      if (!headers || typeof headers !== "object") return {};
      const {
        caseSensitive = false
      } = matchOptions;
      const filtered = {};
      const { ignore: ignore2, exclude, match } = headerFilters;
      for (const [key, value] of Object.entries(headers)) {
        const headerKey = caseSensitive ? key : key.toLowerCase();
        if (exclude.has(headerKey)) continue;
        if (ignore2.has(headerKey)) continue;
        if (match.size !== 0) {
          if (!match.has(headerKey)) continue;
        }
        filtered[headerKey] = value;
      }
      return filtered;
    }
    function filterHeadersForStorage(headers, headerFilters, matchOptions = {}) {
      if (!headers || typeof headers !== "object") return {};
      const {
        caseSensitive = false
      } = matchOptions;
      const filtered = {};
      const { exclude: excludeSet } = headerFilters;
      for (const [key, value] of Object.entries(headers)) {
        const headerKey = caseSensitive ? key : key.toLowerCase();
        if (excludeSet.has(headerKey)) continue;
        filtered[headerKey] = value;
      }
      return filtered;
    }
    function createRequestHash(formattedRequest) {
      const parts = [
        formattedRequest.method,
        formattedRequest.url
      ];
      if (formattedRequest.headers && typeof formattedRequest.headers === "object") {
        const headerKeys = Object.keys(formattedRequest.headers).sort();
        for (const key of headerKeys) {
          const values = Array.isArray(formattedRequest.headers[key]) ? formattedRequest.headers[key] : [formattedRequest.headers[key]];
          parts.push(key);
          for (const value of values.sort()) {
            parts.push(String(value));
          }
        }
      }
      parts.push(formattedRequest.body);
      const content = parts.join("|");
      return hashId(content);
    }
    var SnapshotRecorder = class {
      /** @type {NodeJS.Timeout | null} */
      #flushTimeout;
      /** @type {import('./snapshot-utils').IsUrlExcluded} */
      #isUrlExcluded;
      /** @type {Map<string, SnapshotEntry>} */
      #snapshots = /* @__PURE__ */ new Map();
      /** @type {string|undefined} */
      #snapshotPath;
      /** @type {number} */
      #maxSnapshots = Infinity;
      /** @type {boolean} */
      #autoFlush = false;
      /** @type {import('./snapshot-utils').HeaderFilters} */
      #headerFilters;
      /**
       * Creates a new SnapshotRecorder instance
       * @param {SnapshotRecorderOptions&SnapshotRecorderMatchOptions} [options={}] - Configuration options for the recorder
       */
      constructor(options = {}) {
        this.#snapshotPath = options.snapshotPath;
        this.#maxSnapshots = options.maxSnapshots || Infinity;
        this.#autoFlush = options.autoFlush || false;
        this.flushInterval = options.flushInterval || 3e4;
        this._flushTimer = null;
        this.matchOptions = {
          matchHeaders: options.matchHeaders || [],
          // empty means match all headers
          ignoreHeaders: options.ignoreHeaders || [],
          excludeHeaders: options.excludeHeaders || [],
          matchBody: options.matchBody !== false,
          // default: true
          matchQuery: options.matchQuery !== false,
          // default: true
          caseSensitive: options.caseSensitive || false
        };
        this.#headerFilters = createHeaderFilters(this.matchOptions);
        this.shouldRecord = options.shouldRecord || (() => true);
        this.shouldPlayback = options.shouldPlayback || (() => true);
        this.#isUrlExcluded = isUrlExcludedFactory(options.excludeUrls);
        if (this.#autoFlush && this.#snapshotPath) {
          this.#startAutoFlush();
        }
      }
      /**
       * Records a request-response interaction
       * @param {SnapshotRequestOptions} requestOpts - Request options
       * @param {SnapshotEntryResponse} response - Response data to record
       * @return {Promise<void>} - Resolves when the recording is complete
       */
      async record(requestOpts, response) {
        if (!this.shouldRecord(requestOpts)) {
          return;
        }
        if (this.isUrlExcluded(requestOpts)) {
          return;
        }
        const request = formatRequestKey(requestOpts, this.#headerFilters, this.matchOptions);
        const hash2 = createRequestHash(request);
        const normalizedHeaders = normalizeHeaders(response.headers);
        const responseData = {
          statusCode: response.statusCode,
          headers: filterHeadersForStorage(normalizedHeaders, this.#headerFilters, this.matchOptions),
          body: Buffer.isBuffer(response.body) ? response.body.toString("base64") : Buffer.from(String(response.body || "")).toString("base64"),
          trailers: response.trailers
        };
        if (this.#snapshots.size >= this.#maxSnapshots && !this.#snapshots.has(hash2)) {
          const oldestKey = this.#snapshots.keys().next().value;
          this.#snapshots.delete(oldestKey);
        }
        const existingSnapshot = this.#snapshots.get(hash2);
        if (existingSnapshot && existingSnapshot.responses) {
          existingSnapshot.responses.push(responseData);
          existingSnapshot.timestamp = (/* @__PURE__ */ new Date()).toISOString();
        } else {
          this.#snapshots.set(hash2, {
            request,
            responses: [responseData],
            // Always store as array for consistency
            callCount: 0,
            timestamp: (/* @__PURE__ */ new Date()).toISOString()
          });
        }
        if (this.#autoFlush && this.#snapshotPath) {
          this.#scheduleFlush();
        }
      }
      /**
       * Checks if a URL should be excluded from recording/playback
       * @param {SnapshotRequestOptions} requestOpts - Request options to check
       * @returns {boolean} - True if URL is excluded
       */
      isUrlExcluded(requestOpts) {
        const url7 = new URL(requestOpts.path, requestOpts.origin).toString();
        return this.#isUrlExcluded(url7);
      }
      /**
       * Finds a matching snapshot for the given request
       * Returns the appropriate response based on call count for sequential responses
       *
       * @param {SnapshotRequestOptions} requestOpts - Request options to match
       * @returns {SnapshotEntry&Record<'response', SnapshotEntryResponse>|undefined} - Matching snapshot response or undefined if not found
       */
      findSnapshot(requestOpts) {
        if (!this.shouldPlayback(requestOpts)) {
          return void 0;
        }
        if (this.isUrlExcluded(requestOpts)) {
          return void 0;
        }
        const request = formatRequestKey(requestOpts, this.#headerFilters, this.matchOptions);
        const hash2 = createRequestHash(request);
        const snapshot = this.#snapshots.get(hash2);
        if (!snapshot) return void 0;
        const currentCallCount = snapshot.callCount || 0;
        const responseIndex = Math.min(currentCallCount, snapshot.responses.length - 1);
        snapshot.callCount = currentCallCount + 1;
        return {
          ...snapshot,
          response: snapshot.responses[responseIndex]
        };
      }
      /**
       * Loads snapshots from file
       * @param {string} [filePath] - Optional file path to load snapshots from
       * @return {Promise<void>} - Resolves when snapshots are loaded
       */
      async loadSnapshots(filePath) {
        const path218 = filePath || this.#snapshotPath;
        if (!path218) {
          throw new InvalidArgumentError("Snapshot path is required");
        }
        try {
          const data = await readFile4(resolve3(path218), "utf8");
          const parsed = JSON.parse(data);
          if (Array.isArray(parsed)) {
            this.#snapshots.clear();
            for (const { hash: hash2, snapshot } of parsed) {
              this.#snapshots.set(hash2, snapshot);
            }
          } else {
            this.#snapshots = new Map(Object.entries(parsed));
          }
        } catch (error) {
          if (error.code === "ENOENT") {
            this.#snapshots.clear();
          } else {
            throw new UndiciError(`Failed to load snapshots from ${path218}`, { cause: error });
          }
        }
      }
      /**
       * Saves snapshots to file
       *
       * @param {string} [filePath] - Optional file path to save snapshots
       * @returns {Promise<void>} - Resolves when snapshots are saved
       */
      async saveSnapshots(filePath) {
        const path218 = filePath || this.#snapshotPath;
        if (!path218) {
          throw new InvalidArgumentError("Snapshot path is required");
        }
        const resolvedPath = resolve3(path218);
        await mkdir2(dirname2(resolvedPath), { recursive: true });
        const data = Array.from(this.#snapshots.entries()).map(([hash2, snapshot]) => ({
          hash: hash2,
          snapshot
        }));
        await writeFile3(resolvedPath, JSON.stringify(data, null, 2), { flush: true });
      }
      /**
       * Clears all recorded snapshots
       * @returns {void}
       */
      clear() {
        this.#snapshots.clear();
      }
      /**
       * Gets all recorded snapshots
       * @return {Array<SnapshotEntry>} - Array of all recorded snapshots
       */
      getSnapshots() {
        return Array.from(this.#snapshots.values());
      }
      /**
       * Gets snapshot count
       * @return {number} - Number of recorded snapshots
       */
      size() {
        return this.#snapshots.size;
      }
      /**
       * Resets call counts for all snapshots (useful for test cleanup)
       * @returns {void}
       */
      resetCallCounts() {
        for (const snapshot of this.#snapshots.values()) {
          snapshot.callCount = 0;
        }
      }
      /**
       * Deletes a specific snapshot by request options
       * @param {SnapshotRequestOptions} requestOpts - Request options to match
       * @returns {boolean} - True if snapshot was deleted, false if not found
       */
      deleteSnapshot(requestOpts) {
        const request = formatRequestKey(requestOpts, this.#headerFilters, this.matchOptions);
        const hash2 = createRequestHash(request);
        return this.#snapshots.delete(hash2);
      }
      /**
       * Gets information about a specific snapshot
       * @param {SnapshotRequestOptions} requestOpts - Request options to match
       * @returns {SnapshotInfo|null} - Snapshot information or null if not found
       */
      getSnapshotInfo(requestOpts) {
        const request = formatRequestKey(requestOpts, this.#headerFilters, this.matchOptions);
        const hash2 = createRequestHash(request);
        const snapshot = this.#snapshots.get(hash2);
        if (!snapshot) return null;
        return {
          hash: hash2,
          request: snapshot.request,
          responseCount: snapshot.responses ? snapshot.responses.length : snapshot.response ? 1 : 0,
          // .response for legacy snapshots
          callCount: snapshot.callCount || 0,
          timestamp: snapshot.timestamp
        };
      }
      /**
       * Replaces all snapshots with new data (full replacement)
       * @param {Array<{hash: string; snapshot: SnapshotEntry}>|Record<string, SnapshotEntry>} snapshotData - New snapshot data to replace existing ones
       * @returns {void}
       */
      replaceSnapshots(snapshotData) {
        this.#snapshots.clear();
        if (Array.isArray(snapshotData)) {
          for (const { hash: hash2, snapshot } of snapshotData) {
            this.#snapshots.set(hash2, snapshot);
          }
        } else if (snapshotData && typeof snapshotData === "object") {
          this.#snapshots = new Map(Object.entries(snapshotData));
        }
      }
      /**
       * Starts the auto-flush timer
       * @returns {void}
       */
      #startAutoFlush() {
        return this.#scheduleFlush();
      }
      /**
       * Stops the auto-flush timer
       * @returns {void}
       */
      #stopAutoFlush() {
        if (this.#flushTimeout) {
          clearTimeout2(this.#flushTimeout);
          this.saveSnapshots().catch(() => {
          });
          this.#flushTimeout = null;
        }
      }
      /**
       * Schedules a flush (debounced to avoid excessive writes)
       */
      #scheduleFlush() {
        this.#flushTimeout = setTimeout4(() => {
          this.saveSnapshots().catch(() => {
          });
          if (this.#autoFlush) {
            this.#flushTimeout?.refresh();
          } else {
            this.#flushTimeout = null;
          }
        }, 1e3);
      }
      /**
       * Cleanup method to stop timers
       * @returns {void}
       */
      destroy() {
        this.#stopAutoFlush();
        if (this.#flushTimeout) {
          clearTimeout2(this.#flushTimeout);
          this.#flushTimeout = null;
        }
      }
      /**
       * Async close method that saves all recordings and performs cleanup
       * @returns {Promise<void>}
       */
      async close() {
        if (this.#snapshotPath && this.#snapshots.size !== 0) {
          await this.saveSnapshots();
        }
        this.destroy();
      }
    };
    module2.exports = { SnapshotRecorder, formatRequestKey, createRequestHash, filterHeadersForMatching, filterHeadersForStorage, createHeaderFilters };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/mock/snapshot-agent.js
var require_snapshot_agent = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/mock/snapshot-agent.js"(exports2, module2) {
    "use strict";
    var Agent2 = require_agent();
    var MockAgent = require_mock_agent();
    var { SnapshotRecorder } = require_snapshot_recorder();
    var WrapHandler = require_wrap_handler();
    var { InvalidArgumentError, UndiciError } = require_errors5();
    var { validateSnapshotMode } = require_snapshot_utils();
    var kSnapshotRecorder = /* @__PURE__ */ Symbol("kSnapshotRecorder");
    var kSnapshotMode = /* @__PURE__ */ Symbol("kSnapshotMode");
    var kSnapshotPath = /* @__PURE__ */ Symbol("kSnapshotPath");
    var kSnapshotLoaded = /* @__PURE__ */ Symbol("kSnapshotLoaded");
    var kRealAgent = /* @__PURE__ */ Symbol("kRealAgent");
    var warningEmitted = false;
    var SnapshotAgent = class extends MockAgent {
      constructor(opts2 = {}) {
        if (!warningEmitted) {
          process.emitWarning(
            "SnapshotAgent is experimental and subject to change",
            "ExperimentalWarning"
          );
          warningEmitted = true;
        }
        const {
          mode = "record",
          snapshotPath = null,
          ...mockAgentOpts
        } = opts2;
        super(mockAgentOpts);
        validateSnapshotMode(mode);
        if ((mode === "playback" || mode === "update") && !snapshotPath) {
          throw new InvalidArgumentError(`snapshotPath is required when mode is '${mode}'`);
        }
        this[kSnapshotMode] = mode;
        this[kSnapshotPath] = snapshotPath;
        this[kSnapshotRecorder] = new SnapshotRecorder({
          snapshotPath: this[kSnapshotPath],
          mode: this[kSnapshotMode],
          maxSnapshots: opts2.maxSnapshots,
          autoFlush: opts2.autoFlush,
          flushInterval: opts2.flushInterval,
          matchHeaders: opts2.matchHeaders,
          ignoreHeaders: opts2.ignoreHeaders,
          excludeHeaders: opts2.excludeHeaders,
          matchBody: opts2.matchBody,
          matchQuery: opts2.matchQuery,
          caseSensitive: opts2.caseSensitive,
          shouldRecord: opts2.shouldRecord,
          shouldPlayback: opts2.shouldPlayback,
          excludeUrls: opts2.excludeUrls
        });
        this[kSnapshotLoaded] = false;
        if (this[kSnapshotMode] === "record" || this[kSnapshotMode] === "update" || this[kSnapshotMode] === "playback" && opts2.excludeUrls && opts2.excludeUrls.length > 0) {
          this[kRealAgent] = new Agent2(opts2);
        }
        if ((this[kSnapshotMode] === "playback" || this[kSnapshotMode] === "update") && this[kSnapshotPath]) {
          this.loadSnapshots().catch(() => {
          });
        }
      }
      dispatch(opts2, handler77) {
        handler77 = WrapHandler.wrap(handler77);
        const mode = this[kSnapshotMode];
        if (this[kSnapshotRecorder].isUrlExcluded(opts2)) {
          return this[kRealAgent].dispatch(opts2, handler77);
        }
        if (mode === "playback" || mode === "update") {
          if (!this[kSnapshotLoaded]) {
            return this.#asyncDispatch(opts2, handler77);
          }
          const snapshot = this[kSnapshotRecorder].findSnapshot(opts2);
          if (snapshot) {
            return this.#replaySnapshot(snapshot, handler77);
          } else if (mode === "update") {
            return this.#recordAndReplay(opts2, handler77);
          } else {
            const error = new UndiciError(`No snapshot found for ${opts2.method || "GET"} ${opts2.path}`);
            if (handler77.onError) {
              handler77.onError(error);
              return;
            }
            throw error;
          }
        } else if (mode === "record") {
          return this.#recordAndReplay(opts2, handler77);
        }
      }
      /**
       * Async version of dispatch for when we need to load snapshots first
       */
      async #asyncDispatch(opts2, handler77) {
        await this.loadSnapshots();
        return this.dispatch(opts2, handler77);
      }
      /**
       * Records a real request and replays the response
       */
      #recordAndReplay(opts2, handler77) {
        const responseData = {
          statusCode: null,
          headers: {},
          trailers: {},
          body: []
        };
        const self2 = this;
        const recordingHandler = {
          onRequestStart(controller, context) {
            return handler77.onRequestStart(controller, { ...context, history: this.history });
          },
          onRequestUpgrade(controller, statusCode, headers, socket) {
            return handler77.onRequestUpgrade(controller, statusCode, headers, socket);
          },
          onResponseStart(controller, statusCode, headers, statusMessage) {
            responseData.statusCode = statusCode;
            responseData.headers = headers;
            return handler77.onResponseStart(controller, statusCode, headers, statusMessage);
          },
          onResponseData(controller, chunk) {
            responseData.body.push(chunk);
            return handler77.onResponseData(controller, chunk);
          },
          onResponseEnd(controller, trailers) {
            responseData.trailers = trailers;
            const responseBody = Buffer.concat(responseData.body);
            self2[kSnapshotRecorder].record(opts2, {
              statusCode: responseData.statusCode,
              headers: responseData.headers,
              body: responseBody,
              trailers: responseData.trailers
            }).then(() => handler77.onResponseEnd(controller, trailers)).catch((error) => handler77.onResponseError(controller, error));
          }
        };
        const agent = this[kRealAgent];
        return agent.dispatch(opts2, recordingHandler);
      }
      /**
       * Replays a recorded response
       *
       * @param {Object} snapshot - The recorded snapshot to replay.
       * @param {Object} handler - The handler to call with the response data.
       * @returns {void}
       */
      #replaySnapshot(snapshot, handler77) {
        try {
          const { response } = snapshot;
          const controller = {
            pause() {
            },
            resume() {
            },
            abort(reason) {
              this.aborted = true;
              this.reason = reason;
            },
            aborted: false,
            paused: false
          };
          handler77.onRequestStart(controller);
          handler77.onResponseStart(controller, response.statusCode, response.headers);
          const body = Buffer.from(response.body, "base64");
          handler77.onResponseData(controller, body);
          handler77.onResponseEnd(controller, response.trailers);
        } catch (error) {
          handler77.onError?.(error);
        }
      }
      /**
       * Loads snapshots from file
       *
       * @param {string} [filePath] - Optional file path to load snapshots from.
       * @returns {Promise<void>} - Resolves when snapshots are loaded.
       */
      async loadSnapshots(filePath) {
        await this[kSnapshotRecorder].loadSnapshots(filePath || this[kSnapshotPath]);
        this[kSnapshotLoaded] = true;
        if (this[kSnapshotMode] === "playback") {
          this.#setupMockInterceptors();
        }
      }
      /**
       * Saves snapshots to file
       *
       * @param {string} [filePath] - Optional file path to save snapshots to.
       * @returns {Promise<void>} - Resolves when snapshots are saved.
       */
      async saveSnapshots(filePath) {
        return this[kSnapshotRecorder].saveSnapshots(filePath || this[kSnapshotPath]);
      }
      /**
       * Sets up MockAgent interceptors based on recorded snapshots.
       *
       * This method creates MockAgent interceptors for each recorded snapshot,
       * allowing the SnapshotAgent to fall back to MockAgent's standard intercept
       * mechanism in playback mode. Each interceptor is configured to persist
       * (remain active for multiple requests) and responds with the recorded
       * response data.
       *
       * Called automatically when loading snapshots in playback mode.
       *
       * @returns {void}
       */
      #setupMockInterceptors() {
        for (const snapshot of this[kSnapshotRecorder].getSnapshots()) {
          const { request, responses, response } = snapshot;
          const url7 = new URL(request.url);
          const mockPool = this.get(url7.origin);
          const responseData = responses ? responses[0] : response;
          if (!responseData) continue;
          mockPool.intercept({
            path: url7.pathname + url7.search,
            method: request.method,
            headers: request.headers,
            body: request.body
          }).reply(responseData.statusCode, responseData.body, {
            headers: responseData.headers,
            trailers: responseData.trailers
          }).persist();
        }
      }
      /**
       * Gets the snapshot recorder
       * @return {SnapshotRecorder} - The snapshot recorder instance
       */
      getRecorder() {
        return this[kSnapshotRecorder];
      }
      /**
       * Gets the current mode
       * @return {import('./snapshot-utils').SnapshotMode} - The current snapshot mode
       */
      getMode() {
        return this[kSnapshotMode];
      }
      /**
       * Clears all snapshots
       * @returns {void}
       */
      clearSnapshots() {
        this[kSnapshotRecorder].clear();
      }
      /**
       * Resets call counts for all snapshots (useful for test cleanup)
       * @returns {void}
       */
      resetCallCounts() {
        this[kSnapshotRecorder].resetCallCounts();
      }
      /**
       * Deletes a specific snapshot by request options
       * @param {import('./snapshot-recorder').SnapshotRequestOptions} requestOpts - Request options to identify the snapshot
       * @return {Promise<boolean>} - Returns true if the snapshot was deleted, false if not found
       */
      deleteSnapshot(requestOpts) {
        return this[kSnapshotRecorder].deleteSnapshot(requestOpts);
      }
      /**
       * Gets information about a specific snapshot
       * @returns {import('./snapshot-recorder').SnapshotInfo|null} - Snapshot information or null if not found
       */
      getSnapshotInfo(requestOpts) {
        return this[kSnapshotRecorder].getSnapshotInfo(requestOpts);
      }
      /**
       * Replaces all snapshots with new data (full replacement)
       * @param {Array<{hash: string; snapshot: import('./snapshot-recorder').SnapshotEntryshotEntry}>|Record<string, import('./snapshot-recorder').SnapshotEntry>} snapshotData - New snapshot data to replace existing snapshots
       * @returns {void}
       */
      replaceSnapshots(snapshotData) {
        this[kSnapshotRecorder].replaceSnapshots(snapshotData);
      }
      /**
       * Closes the agent, saving snapshots and cleaning up resources.
       *
       * @returns {Promise<void>}
       */
      async close() {
        await this[kSnapshotRecorder].close();
        await this[kRealAgent]?.close();
        await super.close();
      }
    };
    module2.exports = SnapshotAgent;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/global.js
var require_global2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/global.js"(exports2, module2) {
    "use strict";
    var globalDispatcher = /* @__PURE__ */ Symbol.for("undici.globalDispatcher.1");
    var { InvalidArgumentError } = require_errors5();
    var Agent2 = require_agent();
    if (getGlobalDispatcher() === void 0) {
      setGlobalDispatcher2(new Agent2());
    }
    function setGlobalDispatcher2(agent) {
      if (!agent || typeof agent.dispatch !== "function") {
        throw new InvalidArgumentError("Argument agent must implement Agent");
      }
      Object.defineProperty(globalThis, globalDispatcher, {
        value: agent,
        writable: true,
        enumerable: false,
        configurable: false
      });
    }
    function getGlobalDispatcher() {
      return globalThis[globalDispatcher];
    }
    var installedExports = (
      /** @type {const} */
      [
        "fetch",
        "Headers",
        "Response",
        "Request",
        "FormData",
        "WebSocket",
        "CloseEvent",
        "ErrorEvent",
        "MessageEvent",
        "EventSource"
      ]
    );
    module2.exports = {
      setGlobalDispatcher: setGlobalDispatcher2,
      getGlobalDispatcher,
      installedExports
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/handler/decorator-handler.js
var require_decorator_handler = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/handler/decorator-handler.js"(exports2, module2) {
    "use strict";
    var assert13 = __require("node:assert");
    var WrapHandler = require_wrap_handler();
    module2.exports = class DecoratorHandler {
      #handler;
      #onCompleteCalled = false;
      #onErrorCalled = false;
      #onResponseStartCalled = false;
      constructor(handler77) {
        if (typeof handler77 !== "object" || handler77 === null) {
          throw new TypeError("handler must be an object");
        }
        this.#handler = WrapHandler.wrap(handler77);
      }
      onRequestStart(...args) {
        this.#handler.onRequestStart?.(...args);
      }
      onRequestUpgrade(...args) {
        assert13(!this.#onCompleteCalled);
        assert13(!this.#onErrorCalled);
        return this.#handler.onRequestUpgrade?.(...args);
      }
      onResponseStart(...args) {
        assert13(!this.#onCompleteCalled);
        assert13(!this.#onErrorCalled);
        assert13(!this.#onResponseStartCalled);
        this.#onResponseStartCalled = true;
        return this.#handler.onResponseStart?.(...args);
      }
      onResponseData(...args) {
        assert13(!this.#onCompleteCalled);
        assert13(!this.#onErrorCalled);
        return this.#handler.onResponseData?.(...args);
      }
      onResponseEnd(...args) {
        assert13(!this.#onCompleteCalled);
        assert13(!this.#onErrorCalled);
        this.#onCompleteCalled = true;
        return this.#handler.onResponseEnd?.(...args);
      }
      onResponseError(...args) {
        this.#onErrorCalled = true;
        return this.#handler.onResponseError?.(...args);
      }
      /**
       * @deprecated
       */
      onBodySent() {
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/handler/redirect-handler.js
var require_redirect_handler = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/handler/redirect-handler.js"(exports2, module2) {
    "use strict";
    var util56 = require_util6();
    var { kBodyUsed } = require_symbols();
    var assert13 = __require("node:assert");
    var { InvalidArgumentError } = require_errors5();
    var EE = __require("node:events");
    var redirectableStatusCodes = [300, 301, 302, 303, 307, 308];
    var kBody = /* @__PURE__ */ Symbol("body");
    var noop5 = () => {
    };
    var BodyAsyncIterable = class {
      constructor(body) {
        this[kBody] = body;
        this[kBodyUsed] = false;
      }
      async *[Symbol.asyncIterator]() {
        assert13(!this[kBodyUsed], "disturbed");
        this[kBodyUsed] = true;
        yield* this[kBody];
      }
    };
    var RedirectHandler = class _RedirectHandler {
      static buildDispatch(dispatcher, maxRedirections) {
        if (maxRedirections != null && (!Number.isInteger(maxRedirections) || maxRedirections < 0)) {
          throw new InvalidArgumentError("maxRedirections must be a positive number");
        }
        const dispatch = dispatcher.dispatch.bind(dispatcher);
        return (opts2, originalHandler) => dispatch(opts2, new _RedirectHandler(dispatch, maxRedirections, opts2, originalHandler));
      }
      constructor(dispatch, maxRedirections, opts2, handler77) {
        if (maxRedirections != null && (!Number.isInteger(maxRedirections) || maxRedirections < 0)) {
          throw new InvalidArgumentError("maxRedirections must be a positive number");
        }
        this.dispatch = dispatch;
        this.location = null;
        const { maxRedirections: _, ...cleanOpts } = opts2;
        this.opts = cleanOpts;
        this.maxRedirections = maxRedirections;
        this.handler = handler77;
        this.history = [];
        if (util56.isStream(this.opts.body)) {
          if (util56.bodyLength(this.opts.body) === 0) {
            this.opts.body.on("data", function() {
              assert13(false);
            });
          }
          if (typeof this.opts.body.readableDidRead !== "boolean") {
            this.opts.body[kBodyUsed] = false;
            EE.prototype.on.call(this.opts.body, "data", function() {
              this[kBodyUsed] = true;
            });
          }
        } else if (this.opts.body && typeof this.opts.body.pipeTo === "function") {
          this.opts.body = new BodyAsyncIterable(this.opts.body);
        } else if (this.opts.body && typeof this.opts.body !== "string" && !ArrayBuffer.isView(this.opts.body) && util56.isIterable(this.opts.body) && !util56.isFormDataLike(this.opts.body)) {
          this.opts.body = new BodyAsyncIterable(this.opts.body);
        }
      }
      onRequestStart(controller, context) {
        this.handler.onRequestStart?.(controller, { ...context, history: this.history });
      }
      onRequestUpgrade(controller, statusCode, headers, socket) {
        this.handler.onRequestUpgrade?.(controller, statusCode, headers, socket);
      }
      onResponseStart(controller, statusCode, headers, statusMessage) {
        if (this.opts.throwOnMaxRedirect && this.history.length >= this.maxRedirections) {
          throw new Error("max redirects");
        }
        if ((statusCode === 301 || statusCode === 302) && this.opts.method === "POST") {
          this.opts.method = "GET";
          if (util56.isStream(this.opts.body)) {
            util56.destroy(this.opts.body.on("error", noop5));
          }
          this.opts.body = null;
        }
        if (statusCode === 303 && this.opts.method !== "HEAD") {
          this.opts.method = "GET";
          if (util56.isStream(this.opts.body)) {
            util56.destroy(this.opts.body.on("error", noop5));
          }
          this.opts.body = null;
        }
        this.location = this.history.length >= this.maxRedirections || util56.isDisturbed(this.opts.body) || redirectableStatusCodes.indexOf(statusCode) === -1 ? null : headers.location;
        if (this.opts.origin) {
          this.history.push(new URL(this.opts.path, this.opts.origin));
        }
        if (!this.location) {
          this.handler.onResponseStart?.(controller, statusCode, headers, statusMessage);
          return;
        }
        const { origin, pathname, search: search2 } = util56.parseURL(new URL(this.location, this.opts.origin && new URL(this.opts.path, this.opts.origin)));
        const path218 = search2 ? `${pathname}${search2}` : pathname;
        const redirectUrlString = `${origin}${path218}`;
        for (const historyUrl of this.history) {
          if (historyUrl.toString() === redirectUrlString) {
            throw new InvalidArgumentError(`Redirect loop detected. Cannot redirect to ${origin}. This typically happens when using a Client or Pool with cross-origin redirects. Use an Agent for cross-origin redirects.`);
          }
        }
        this.opts.headers = cleanRequestHeaders(this.opts.headers, statusCode === 303, this.opts.origin !== origin);
        this.opts.path = path218;
        this.opts.origin = origin;
        this.opts.query = null;
      }
      onResponseData(controller, chunk) {
        if (this.location) {
        } else {
          this.handler.onResponseData?.(controller, chunk);
        }
      }
      onResponseEnd(controller, trailers) {
        if (this.location) {
          this.dispatch(this.opts, this);
        } else {
          this.handler.onResponseEnd(controller, trailers);
        }
      }
      onResponseError(controller, error) {
        this.handler.onResponseError?.(controller, error);
      }
    };
    function shouldRemoveHeader(header, removeContent, unknownOrigin) {
      if (header.length === 4) {
        return util56.headerNameToString(header) === "host";
      }
      if (removeContent && util56.headerNameToString(header).startsWith("content-")) {
        return true;
      }
      if (unknownOrigin && (header.length === 13 || header.length === 6 || header.length === 19)) {
        const name = util56.headerNameToString(header);
        return name === "authorization" || name === "cookie" || name === "proxy-authorization";
      }
      return false;
    }
    function cleanRequestHeaders(headers, removeContent, unknownOrigin) {
      const ret2 = [];
      if (Array.isArray(headers)) {
        for (let i2 = 0; i2 < headers.length; i2 += 2) {
          if (!shouldRemoveHeader(headers[i2], removeContent, unknownOrigin)) {
            ret2.push(headers[i2], headers[i2 + 1]);
          }
        }
      } else if (headers && typeof headers === "object") {
        const entries = util56.hasSafeIterator(headers) ? headers : Object.entries(headers);
        for (const [key, value] of entries) {
          if (!shouldRemoveHeader(key, removeContent, unknownOrigin)) {
            ret2.push(key, value);
          }
        }
      } else {
        assert13(headers == null, "headers must be an object or an array");
      }
      return ret2;
    }
    module2.exports = RedirectHandler;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/interceptor/redirect.js
var require_redirect = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/interceptor/redirect.js"(exports2, module2) {
    "use strict";
    var RedirectHandler = require_redirect_handler();
    function createRedirectInterceptor({ maxRedirections: defaultMaxRedirections } = {}) {
      return (dispatch) => {
        return function Intercept(opts2, handler77) {
          const { maxRedirections = defaultMaxRedirections, ...rest } = opts2;
          if (maxRedirections == null || maxRedirections === 0) {
            return dispatch(opts2, handler77);
          }
          const dispatchOpts = { ...rest };
          const redirectHandler = new RedirectHandler(dispatch, maxRedirections, dispatchOpts, handler77);
          return dispatch(dispatchOpts, redirectHandler);
        };
      };
    }
    module2.exports = createRedirectInterceptor;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/interceptor/response-error.js
var require_response_error = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/interceptor/response-error.js"(exports2, module2) {
    "use strict";
    var DecoratorHandler = require_decorator_handler();
    var { ResponseError: ResponseError2 } = require_errors5();
    var ResponseErrorHandler = class extends DecoratorHandler {
      #statusCode;
      #contentType;
      #decoder;
      #headers;
      #body;
      constructor(_opts, { handler: handler77 }) {
        super(handler77);
      }
      #checkContentType(contentType) {
        return (this.#contentType ?? "").indexOf(contentType) === 0;
      }
      onRequestStart(controller, context) {
        this.#statusCode = 0;
        this.#contentType = null;
        this.#decoder = null;
        this.#headers = null;
        this.#body = "";
        return super.onRequestStart(controller, context);
      }
      onResponseStart(controller, statusCode, headers, statusMessage) {
        this.#statusCode = statusCode;
        this.#headers = headers;
        this.#contentType = headers["content-type"];
        if (this.#statusCode < 400) {
          return super.onResponseStart(controller, statusCode, headers, statusMessage);
        }
        if (this.#checkContentType("application/json") || this.#checkContentType("text/plain")) {
          this.#decoder = new TextDecoder("utf-8");
        }
      }
      onResponseData(controller, chunk) {
        if (this.#statusCode < 400) {
          return super.onResponseData(controller, chunk);
        }
        this.#body += this.#decoder?.decode(chunk, { stream: true }) ?? "";
      }
      onResponseEnd(controller, trailers) {
        if (this.#statusCode >= 400) {
          this.#body += this.#decoder?.decode(void 0, { stream: false }) ?? "";
          if (this.#checkContentType("application/json")) {
            try {
              this.#body = JSON.parse(this.#body);
            } catch {
            }
          }
          let err;
          const stackTraceLimit = Error.stackTraceLimit;
          Error.stackTraceLimit = 0;
          try {
            err = new ResponseError2("Response Error", this.#statusCode, {
              body: this.#body,
              headers: this.#headers
            });
          } finally {
            Error.stackTraceLimit = stackTraceLimit;
          }
          super.onResponseError(controller, err);
        } else {
          super.onResponseEnd(controller, trailers);
        }
      }
      onResponseError(controller, err) {
        super.onResponseError(controller, err);
      }
    };
    module2.exports = () => {
      return (dispatch) => {
        return function Intercept(opts2, handler77) {
          return dispatch(opts2, new ResponseErrorHandler(opts2, { handler: handler77 }));
        };
      };
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/interceptor/retry.js
var require_retry2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/interceptor/retry.js"(exports2, module2) {
    "use strict";
    var RetryHandler = require_retry_handler();
    module2.exports = (globalOpts) => {
      return (dispatch) => {
        return function retryInterceptor(opts2, handler77) {
          return dispatch(
            opts2,
            new RetryHandler(
              { ...opts2, retryOptions: { ...globalOpts, ...opts2.retryOptions } },
              {
                handler: handler77,
                dispatch
              }
            )
          );
        };
      };
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/interceptor/dump.js
var require_dump = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/interceptor/dump.js"(exports2, module2) {
    "use strict";
    var { InvalidArgumentError, RequestAbortedError } = require_errors5();
    var DecoratorHandler = require_decorator_handler();
    var DumpHandler = class extends DecoratorHandler {
      #maxSize = 1024 * 1024;
      #dumped = false;
      #size = 0;
      #controller = null;
      aborted = false;
      reason = false;
      constructor({ maxSize, signal }, handler77) {
        if (maxSize != null && (!Number.isFinite(maxSize) || maxSize < 1)) {
          throw new InvalidArgumentError("maxSize must be a number greater than 0");
        }
        super(handler77);
        this.#maxSize = maxSize ?? this.#maxSize;
      }
      #abort(reason) {
        this.aborted = true;
        this.reason = reason;
      }
      onRequestStart(controller, context) {
        controller.abort = this.#abort.bind(this);
        this.#controller = controller;
        return super.onRequestStart(controller, context);
      }
      onResponseStart(controller, statusCode, headers, statusMessage) {
        const contentLength = headers["content-length"];
        if (contentLength != null && contentLength > this.#maxSize) {
          throw new RequestAbortedError(
            `Response size (${contentLength}) larger than maxSize (${this.#maxSize})`
          );
        }
        if (this.aborted === true) {
          return true;
        }
        return super.onResponseStart(controller, statusCode, headers, statusMessage);
      }
      onResponseError(controller, err) {
        if (this.#dumped) {
          return;
        }
        err = this.#controller?.reason ?? err;
        super.onResponseError(controller, err);
      }
      onResponseData(controller, chunk) {
        this.#size = this.#size + chunk.length;
        if (this.#size >= this.#maxSize) {
          this.#dumped = true;
          if (this.aborted === true) {
            super.onResponseError(controller, this.reason);
          } else {
            super.onResponseEnd(controller, {});
          }
        }
        return true;
      }
      onResponseEnd(controller, trailers) {
        if (this.#dumped) {
          return;
        }
        if (this.#controller.aborted === true) {
          super.onResponseError(controller, this.reason);
          return;
        }
        super.onResponseEnd(controller, trailers);
      }
    };
    function createDumpInterceptor({ maxSize: defaultMaxSize } = {
      maxSize: 1024 * 1024
    }) {
      return (dispatch) => {
        return function Intercept(opts2, handler77) {
          const { dumpMaxSize = defaultMaxSize } = opts2;
          const dumpHandler = new DumpHandler({ maxSize: dumpMaxSize, signal: opts2.signal }, handler77);
          return dispatch(opts2, dumpHandler);
        };
      };
    }
    module2.exports = createDumpInterceptor;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/interceptor/dns.js
var require_dns = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/interceptor/dns.js"(exports2, module2) {
    "use strict";
    var { isIP } = __require("node:net");
    var { lookup } = __require("node:dns");
    var DecoratorHandler = require_decorator_handler();
    var { InvalidArgumentError, InformationalError } = require_errors5();
    var maxInt = Math.pow(2, 31) - 1;
    function hasSafeIterator(headers) {
      const prototype = Object.getPrototypeOf(headers);
      const ownIterator = Object.prototype.hasOwnProperty.call(headers, Symbol.iterator);
      return ownIterator || prototype != null && prototype !== Object.prototype && typeof headers[Symbol.iterator] === "function";
    }
    function isHostHeader(key) {
      return typeof key === "string" && key.toLowerCase() === "host";
    }
    function normalizeHeaders(headers) {
      if (headers == null) {
        return null;
      }
      if (Array.isArray(headers)) {
        if (headers.length === 0 || !Array.isArray(headers[0])) {
          return headers;
        }
        const normalized = [];
        for (const header of headers) {
          if (Array.isArray(header) && header.length === 2) {
            normalized.push(header[0], header[1]);
          } else {
            normalized.push(header);
          }
        }
        return normalized;
      }
      if (typeof headers === "object" && hasSafeIterator(headers)) {
        const normalized = [];
        for (const header of headers) {
          if (Array.isArray(header) && header.length === 2) {
            normalized.push(header[0], header[1]);
          } else {
            normalized.push(header);
          }
        }
        return normalized;
      }
      return headers;
    }
    function hasHostHeader(headers) {
      if (headers == null) {
        return false;
      }
      if (Array.isArray(headers)) {
        if (headers.length === 0) {
          return false;
        }
        for (let i2 = 0; i2 < headers.length; i2 += 2) {
          if (isHostHeader(headers[i2])) {
            return true;
          }
        }
        return false;
      }
      if (typeof headers === "object") {
        for (const key in headers) {
          if (isHostHeader(key)) {
            return true;
          }
        }
      }
      return false;
    }
    function withHostHeader(host, headers) {
      const normalizedHeaders = normalizeHeaders(headers);
      if (hasHostHeader(normalizedHeaders)) {
        return normalizedHeaders;
      }
      if (Array.isArray(normalizedHeaders)) {
        return ["host", host, ...normalizedHeaders];
      }
      if (normalizedHeaders && typeof normalizedHeaders === "object") {
        return {
          host,
          ...normalizedHeaders
        };
      }
      return { host };
    }
    var DNSStorage = class {
      #maxItems = 0;
      #records = /* @__PURE__ */ new Map();
      constructor(opts2) {
        this.#maxItems = opts2.maxItems;
      }
      get size() {
        return this.#records.size;
      }
      get(hostname) {
        return this.#records.get(hostname) ?? null;
      }
      set(hostname, records) {
        this.#records.set(hostname, records);
      }
      delete(hostname) {
        this.#records.delete(hostname);
      }
      // Delegate to storage decide can we do more lookups or not
      full() {
        return this.size >= this.#maxItems;
      }
    };
    var DNSInstance = class {
      #maxTTL = 0;
      #maxItems = 0;
      dualStack = true;
      affinity = null;
      lookup = null;
      pick = null;
      storage = null;
      constructor(opts2) {
        this.#maxTTL = opts2.maxTTL;
        this.#maxItems = opts2.maxItems;
        this.dualStack = opts2.dualStack;
        this.affinity = opts2.affinity;
        this.lookup = opts2.lookup ?? this.#defaultLookup;
        this.pick = opts2.pick ?? this.#defaultPick;
        this.storage = opts2.storage ?? new DNSStorage(opts2);
      }
      runLookup(origin, opts2, cb) {
        const ips = this.storage.get(origin.hostname);
        if (ips == null && this.storage.full()) {
          cb(null, origin);
          return;
        }
        const newOpts = {
          affinity: this.affinity,
          dualStack: this.dualStack,
          lookup: this.lookup,
          pick: this.pick,
          ...opts2.dns,
          maxTTL: this.#maxTTL,
          maxItems: this.#maxItems
        };
        if (ips == null) {
          this.lookup(origin, newOpts, (err, addresses) => {
            if (err || addresses == null || addresses.length === 0) {
              cb(err ?? new InformationalError("No DNS entries found"));
              return;
            }
            this.setRecords(origin, addresses);
            const records = this.storage.get(origin.hostname);
            const ip = this.pick(
              origin,
              records,
              newOpts.affinity
            );
            let port;
            if (typeof ip.port === "number") {
              port = `:${ip.port}`;
            } else if (origin.port !== "") {
              port = `:${origin.port}`;
            } else {
              port = "";
            }
            cb(
              null,
              new URL(`${origin.protocol}//${ip.family === 6 ? `[${ip.address}]` : ip.address}${port}`)
            );
          });
        } else {
          const ip = this.pick(
            origin,
            ips,
            newOpts.affinity
          );
          if (ip == null) {
            this.storage.delete(origin.hostname);
            this.runLookup(origin, opts2, cb);
            return;
          }
          let port;
          if (typeof ip.port === "number") {
            port = `:${ip.port}`;
          } else if (origin.port !== "") {
            port = `:${origin.port}`;
          } else {
            port = "";
          }
          cb(
            null,
            new URL(`${origin.protocol}//${ip.family === 6 ? `[${ip.address}]` : ip.address}${port}`)
          );
        }
      }
      #defaultLookup(origin, opts2, cb) {
        lookup(
          origin.hostname,
          {
            all: true,
            family: this.dualStack === false ? this.affinity : 0,
            order: "ipv4first"
          },
          (err, addresses) => {
            if (err) {
              return cb(err);
            }
            const results = /* @__PURE__ */ new Map();
            for (const addr of addresses) {
              results.set(`${addr.address}:${addr.family}`, addr);
            }
            cb(null, results.values());
          }
        );
      }
      #defaultPick(origin, hostnameRecords, affinity) {
        let ip = null;
        const { records, offset } = hostnameRecords;
        let family;
        if (this.dualStack) {
          if (affinity == null) {
            if (offset == null || offset === maxInt) {
              hostnameRecords.offset = 0;
              affinity = 4;
            } else {
              hostnameRecords.offset++;
              affinity = (hostnameRecords.offset & 1) === 1 ? 6 : 4;
            }
          }
          if (records[affinity] != null && records[affinity].ips.length > 0) {
            family = records[affinity];
          } else {
            family = records[affinity === 4 ? 6 : 4];
          }
        } else {
          family = records[affinity];
        }
        if (family == null || family.ips.length === 0) {
          return ip;
        }
        if (family.offset == null || family.offset === maxInt) {
          family.offset = 0;
        } else {
          family.offset++;
        }
        const position3 = family.offset % family.ips.length;
        ip = family.ips[position3] ?? null;
        if (ip == null) {
          return ip;
        }
        if (Date.now() - ip.timestamp > ip.ttl) {
          family.ips.splice(position3, 1);
          return this.pick(origin, hostnameRecords, affinity);
        }
        return ip;
      }
      pickFamily(origin, ipFamily) {
        const records = this.storage.get(origin.hostname)?.records;
        if (!records) {
          return null;
        }
        const family = records[ipFamily];
        if (!family) {
          return null;
        }
        if (family.offset == null || family.offset === maxInt) {
          family.offset = 0;
        } else {
          family.offset++;
        }
        const position3 = family.offset % family.ips.length;
        const ip = family.ips[position3] ?? null;
        if (ip == null) {
          return ip;
        }
        if (Date.now() - ip.timestamp > ip.ttl) {
          family.ips.splice(position3, 1);
        }
        return ip;
      }
      setRecords(origin, addresses) {
        const timestamp2 = Date.now();
        const records = { records: { 4: null, 6: null } };
        let minTTL = this.#maxTTL;
        for (const record of addresses) {
          record.timestamp = timestamp2;
          if (typeof record.ttl === "number") {
            record.ttl = Math.min(record.ttl, this.#maxTTL);
            minTTL = Math.min(minTTL, record.ttl);
          } else {
            record.ttl = this.#maxTTL;
          }
          const familyRecords = records.records[record.family] ?? { ips: [] };
          familyRecords.ips.push(record);
          records.records[record.family] = familyRecords;
        }
        this.storage.set(origin.hostname, records, { ttl: minTTL });
      }
      deleteRecords(origin) {
        this.storage.delete(origin.hostname);
      }
      getHandler(meta, opts2) {
        return new DNSDispatchHandler(this, meta, opts2);
      }
    };
    var DNSDispatchHandler = class extends DecoratorHandler {
      #state = null;
      #opts = null;
      #dispatch = null;
      #origin = null;
      #controller = null;
      #newOrigin = null;
      #firstTry = true;
      constructor(state, { origin, handler: handler77, dispatch, newOrigin }, opts2) {
        super(handler77);
        this.#origin = origin;
        this.#newOrigin = newOrigin;
        this.#opts = { ...opts2 };
        this.#state = state;
        this.#dispatch = dispatch;
      }
      onResponseError(controller, err) {
        switch (err.code) {
          case "ETIMEDOUT":
          case "ECONNREFUSED": {
            if (this.#state.dualStack) {
              if (!this.#firstTry) {
                super.onResponseError(controller, err);
                return;
              }
              this.#firstTry = false;
              const otherFamily = this.#newOrigin.hostname[0] === "[" ? 4 : 6;
              const ip = this.#state.pickFamily(this.#origin, otherFamily);
              if (ip == null) {
                super.onResponseError(controller, err);
                return;
              }
              let port;
              if (typeof ip.port === "number") {
                port = `:${ip.port}`;
              } else if (this.#origin.port !== "") {
                port = `:${this.#origin.port}`;
              } else {
                port = "";
              }
              const dispatchOpts = {
                ...this.#opts,
                origin: `${this.#origin.protocol}//${ip.family === 6 ? `[${ip.address}]` : ip.address}${port}`,
                headers: withHostHeader(this.#origin.host, this.#opts.headers)
              };
              this.#dispatch(dispatchOpts, this);
              return;
            }
            super.onResponseError(controller, err);
            break;
          }
          case "ENOTFOUND":
            this.#state.deleteRecords(this.#origin);
            super.onResponseError(controller, err);
            break;
          default:
            super.onResponseError(controller, err);
            break;
        }
      }
    };
    module2.exports = (interceptorOpts) => {
      if (interceptorOpts?.maxTTL != null && (typeof interceptorOpts?.maxTTL !== "number" || interceptorOpts?.maxTTL < 0)) {
        throw new InvalidArgumentError("Invalid maxTTL. Must be a positive number");
      }
      if (interceptorOpts?.maxItems != null && (typeof interceptorOpts?.maxItems !== "number" || interceptorOpts?.maxItems < 1)) {
        throw new InvalidArgumentError(
          "Invalid maxItems. Must be a positive number and greater than zero"
        );
      }
      if (interceptorOpts?.affinity != null && interceptorOpts?.affinity !== 4 && interceptorOpts?.affinity !== 6) {
        throw new InvalidArgumentError("Invalid affinity. Must be either 4 or 6");
      }
      if (interceptorOpts?.dualStack != null && typeof interceptorOpts?.dualStack !== "boolean") {
        throw new InvalidArgumentError("Invalid dualStack. Must be a boolean");
      }
      if (interceptorOpts?.lookup != null && typeof interceptorOpts?.lookup !== "function") {
        throw new InvalidArgumentError("Invalid lookup. Must be a function");
      }
      if (interceptorOpts?.pick != null && typeof interceptorOpts?.pick !== "function") {
        throw new InvalidArgumentError("Invalid pick. Must be a function");
      }
      if (interceptorOpts?.storage != null && (typeof interceptorOpts?.storage?.get !== "function" || typeof interceptorOpts?.storage?.set !== "function" || typeof interceptorOpts?.storage?.full !== "function" || typeof interceptorOpts?.storage?.delete !== "function")) {
        throw new InvalidArgumentError("Invalid storage. Must be a object with methods: { get, set, full, delete }");
      }
      const dualStack = interceptorOpts?.dualStack ?? true;
      let affinity;
      if (dualStack) {
        affinity = interceptorOpts?.affinity ?? null;
      } else {
        affinity = interceptorOpts?.affinity ?? 4;
      }
      const opts2 = {
        maxTTL: interceptorOpts?.maxTTL ?? 1e4,
        // Expressed in ms
        lookup: interceptorOpts?.lookup ?? null,
        pick: interceptorOpts?.pick ?? null,
        dualStack,
        affinity,
        maxItems: interceptorOpts?.maxItems ?? Infinity,
        storage: interceptorOpts?.storage
      };
      const instance = new DNSInstance(opts2);
      return (dispatch) => {
        return function dnsInterceptor(origDispatchOpts, handler77) {
          const origin = origDispatchOpts.origin.constructor === URL ? origDispatchOpts.origin : new URL(origDispatchOpts.origin);
          if (isIP(origin.hostname) !== 0) {
            return dispatch(origDispatchOpts, handler77);
          }
          instance.runLookup(origin, origDispatchOpts, (err, newOrigin) => {
            if (err) {
              return handler77.onResponseError(null, err);
            }
            const dispatchOpts = {
              ...origDispatchOpts,
              servername: origin.hostname,
              // For SNI on TLS
              origin: newOrigin.origin,
              headers: withHostHeader(origin.host, origDispatchOpts.headers)
            };
            dispatch(
              dispatchOpts,
              instance.getHandler(
                { origin, dispatch, handler: handler77, newOrigin },
                origDispatchOpts
              )
            );
          });
          return true;
        };
      };
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/util/cache.js
var require_cache = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/util/cache.js"(exports2, module2) {
    "use strict";
    var {
      safeHTTPMethods,
      pathHasQueryOrFragment,
      hasSafeIterator
    } = require_util6();
    var { serializePathWithQuery } = require_util6();
    function makeCacheKey(opts2) {
      if (!opts2.origin) {
        throw new Error("opts.origin is undefined");
      }
      let fullPath = opts2.path || "/";
      if (opts2.query && !pathHasQueryOrFragment(opts2.path)) {
        fullPath = serializePathWithQuery(fullPath, opts2.query);
      }
      return {
        origin: opts2.origin.toString(),
        method: opts2.method,
        path: fullPath,
        headers: opts2.headers
      };
    }
    function normalizeHeaders(opts2) {
      let headers;
      if (opts2.headers == null) {
        headers = {};
      } else if (typeof opts2.headers === "object") {
        headers = {};
        if (hasSafeIterator(opts2.headers)) {
          for (const x of opts2.headers) {
            if (!Array.isArray(x)) {
              throw new Error("opts.headers is not a valid header map");
            }
            const [key, val] = x;
            if (typeof key !== "string" || typeof val !== "string") {
              throw new Error("opts.headers is not a valid header map");
            }
            headers[key.toLowerCase()] = val;
          }
        } else {
          for (const key of Object.keys(opts2.headers)) {
            headers[key.toLowerCase()] = opts2.headers[key];
          }
        }
      } else {
        throw new Error("opts.headers is not an object");
      }
      return headers;
    }
    function assertCacheKey(key) {
      if (typeof key !== "object") {
        throw new TypeError(`expected key to be object, got ${typeof key}`);
      }
      for (const property of ["origin", "method", "path"]) {
        if (typeof key[property] !== "string") {
          throw new TypeError(`expected key.${property} to be string, got ${typeof key[property]}`);
        }
      }
      if (key.headers !== void 0 && typeof key.headers !== "object") {
        throw new TypeError(`expected headers to be object, got ${typeof key}`);
      }
    }
    function assertCacheValue(value) {
      if (typeof value !== "object") {
        throw new TypeError(`expected value to be object, got ${typeof value}`);
      }
      for (const property of ["statusCode", "cachedAt", "staleAt", "deleteAt"]) {
        if (typeof value[property] !== "number") {
          throw new TypeError(`expected value.${property} to be number, got ${typeof value[property]}`);
        }
      }
      if (typeof value.statusMessage !== "string") {
        throw new TypeError(`expected value.statusMessage to be string, got ${typeof value.statusMessage}`);
      }
      if (value.headers != null && typeof value.headers !== "object") {
        throw new TypeError(`expected value.rawHeaders to be object, got ${typeof value.headers}`);
      }
      if (value.vary !== void 0 && typeof value.vary !== "object") {
        throw new TypeError(`expected value.vary to be object, got ${typeof value.vary}`);
      }
      if (value.etag !== void 0 && typeof value.etag !== "string") {
        throw new TypeError(`expected value.etag to be string, got ${typeof value.etag}`);
      }
    }
    function parseCacheControlHeader(header) {
      const output = {};
      let directives;
      if (Array.isArray(header)) {
        directives = [];
        for (const directive of header) {
          directives.push(...directive.split(","));
        }
      } else {
        directives = header.split(",");
      }
      for (let i2 = 0; i2 < directives.length; i2++) {
        const directive = directives[i2].toLowerCase();
        const keyValueDelimiter = directive.indexOf("=");
        let key;
        let value;
        if (keyValueDelimiter !== -1) {
          key = directive.substring(0, keyValueDelimiter).trimStart();
          value = directive.substring(keyValueDelimiter + 1);
        } else {
          key = directive.trim();
        }
        switch (key) {
          case "min-fresh":
          case "max-stale":
          case "max-age":
          case "s-maxage":
          case "stale-while-revalidate":
          case "stale-if-error": {
            if (value === void 0 || value[0] === " ") {
              continue;
            }
            if (value.length >= 2 && value[0] === '"' && value[value.length - 1] === '"') {
              value = value.substring(1, value.length - 1);
            }
            const parsedValue = parseInt(value, 10);
            if (parsedValue !== parsedValue) {
              continue;
            }
            if (key === "max-age" && key in output && output[key] >= parsedValue) {
              continue;
            }
            output[key] = parsedValue;
            break;
          }
          case "private":
          case "no-cache": {
            if (value) {
              if (value[0] === '"') {
                const headers = [value.substring(1)];
                let foundEndingQuote = value[value.length - 1] === '"';
                if (!foundEndingQuote) {
                  for (let j2 = i2 + 1; j2 < directives.length; j2++) {
                    const nextPart = directives[j2];
                    const nextPartLength = nextPart.length;
                    headers.push(nextPart.trim());
                    if (nextPartLength !== 0 && nextPart[nextPartLength - 1] === '"') {
                      foundEndingQuote = true;
                      break;
                    }
                  }
                }
                if (foundEndingQuote) {
                  let lastHeader = headers[headers.length - 1];
                  if (lastHeader[lastHeader.length - 1] === '"') {
                    lastHeader = lastHeader.substring(0, lastHeader.length - 1);
                    headers[headers.length - 1] = lastHeader;
                  }
                  if (key in output) {
                    output[key] = output[key].concat(headers);
                  } else {
                    output[key] = headers;
                  }
                }
              } else {
                if (key in output) {
                  output[key] = output[key].concat(value);
                } else {
                  output[key] = [value];
                }
              }
              break;
            }
          }
          // eslint-disable-next-line no-fallthrough
          case "public":
          case "no-store":
          case "must-revalidate":
          case "proxy-revalidate":
          case "immutable":
          case "no-transform":
          case "must-understand":
          case "only-if-cached":
            if (value) {
              continue;
            }
            output[key] = true;
            break;
          default:
            continue;
        }
      }
      return output;
    }
    function parseVaryHeader(varyHeader, headers) {
      if (typeof varyHeader === "string" && varyHeader.includes("*")) {
        return headers;
      }
      const output = (
        /** @type {Record<string, string | string[] | null>} */
        {}
      );
      const varyingHeaders = typeof varyHeader === "string" ? varyHeader.split(",") : varyHeader;
      for (const header of varyingHeaders) {
        const trimmedHeader = header.trim().toLowerCase();
        output[trimmedHeader] = headers[trimmedHeader] ?? null;
      }
      return output;
    }
    function isEtagUsable(etag) {
      if (etag.length <= 2) {
        return false;
      }
      if (etag[0] === '"' && etag[etag.length - 1] === '"') {
        return !(etag[1] === '"' || etag.startsWith('"W/'));
      }
      if (etag.startsWith('W/"') && etag[etag.length - 1] === '"') {
        return etag.length !== 4;
      }
      return false;
    }
    function assertCacheStore(store, name = "CacheStore") {
      if (typeof store !== "object" || store === null) {
        throw new TypeError(`expected type of ${name} to be a CacheStore, got ${store === null ? "null" : typeof store}`);
      }
      for (const fn of ["get", "createWriteStream", "delete"]) {
        if (typeof store[fn] !== "function") {
          throw new TypeError(`${name} needs to have a \`${fn}()\` function`);
        }
      }
    }
    function assertCacheMethods(methods, name = "CacheMethods") {
      if (!Array.isArray(methods)) {
        throw new TypeError(`expected type of ${name} needs to be an array, got ${methods === null ? "null" : typeof methods}`);
      }
      if (methods.length === 0) {
        throw new TypeError(`${name} needs to have at least one method`);
      }
      for (const method of methods) {
        if (!safeHTTPMethods.includes(method)) {
          throw new TypeError(`element of ${name}-array needs to be one of following values: ${safeHTTPMethods.join(", ")}, got ${method}`);
        }
      }
    }
    function makeDeduplicationKey(cacheKey, excludeHeaders) {
      let key = `${cacheKey.origin}:${cacheKey.method}:${cacheKey.path}`;
      if (cacheKey.headers) {
        const sortedHeaders = Object.keys(cacheKey.headers).sort();
        for (const header of sortedHeaders) {
          if (excludeHeaders?.has(header.toLowerCase())) {
            continue;
          }
          const value = cacheKey.headers[header];
          key += `:${header}=${Array.isArray(value) ? value.join(",") : value}`;
        }
      }
      return key;
    }
    module2.exports = {
      makeCacheKey,
      normalizeHeaders,
      assertCacheKey,
      assertCacheValue,
      parseCacheControlHeader,
      parseVaryHeader,
      isEtagUsable,
      assertCacheMethods,
      assertCacheStore,
      makeDeduplicationKey
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/util/date.js
var require_date = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/util/date.js"(exports2, module2) {
    "use strict";
    function parseHttpDate(date) {
      switch (date[3]) {
        case ",":
          return parseImfDate(date);
        case " ":
          return parseAscTimeDate(date);
        default:
          return parseRfc850Date(date);
      }
    }
    function parseImfDate(date) {
      if (date.length !== 29 || date[4] !== " " || date[7] !== " " || date[11] !== " " || date[16] !== " " || date[19] !== ":" || date[22] !== ":" || date[25] !== " " || date[26] !== "G" || date[27] !== "M" || date[28] !== "T") {
        return void 0;
      }
      let weekday = -1;
      if (date[0] === "S" && date[1] === "u" && date[2] === "n") {
        weekday = 0;
      } else if (date[0] === "M" && date[1] === "o" && date[2] === "n") {
        weekday = 1;
      } else if (date[0] === "T" && date[1] === "u" && date[2] === "e") {
        weekday = 2;
      } else if (date[0] === "W" && date[1] === "e" && date[2] === "d") {
        weekday = 3;
      } else if (date[0] === "T" && date[1] === "h" && date[2] === "u") {
        weekday = 4;
      } else if (date[0] === "F" && date[1] === "r" && date[2] === "i") {
        weekday = 5;
      } else if (date[0] === "S" && date[1] === "a" && date[2] === "t") {
        weekday = 6;
      } else {
        return void 0;
      }
      let day = 0;
      if (date[5] === "0") {
        const code = date.charCodeAt(6);
        if (code < 49 || code > 57) {
          return void 0;
        }
        day = code - 48;
      } else {
        const code1 = date.charCodeAt(5);
        if (code1 < 49 || code1 > 51) {
          return void 0;
        }
        const code2 = date.charCodeAt(6);
        if (code2 < 48 || code2 > 57) {
          return void 0;
        }
        day = (code1 - 48) * 10 + (code2 - 48);
      }
      let monthIdx = -1;
      if (date[8] === "J" && date[9] === "a" && date[10] === "n") {
        monthIdx = 0;
      } else if (date[8] === "F" && date[9] === "e" && date[10] === "b") {
        monthIdx = 1;
      } else if (date[8] === "M" && date[9] === "a") {
        if (date[10] === "r") {
          monthIdx = 2;
        } else if (date[10] === "y") {
          monthIdx = 4;
        } else {
          return void 0;
        }
      } else if (date[8] === "J") {
        if (date[9] === "a" && date[10] === "n") {
          monthIdx = 0;
        } else if (date[9] === "u") {
          if (date[10] === "n") {
            monthIdx = 5;
          } else if (date[10] === "l") {
            monthIdx = 6;
          } else {
            return void 0;
          }
        } else {
          return void 0;
        }
      } else if (date[8] === "A") {
        if (date[9] === "p" && date[10] === "r") {
          monthIdx = 3;
        } else if (date[9] === "u" && date[10] === "g") {
          monthIdx = 7;
        } else {
          return void 0;
        }
      } else if (date[8] === "S" && date[9] === "e" && date[10] === "p") {
        monthIdx = 8;
      } else if (date[8] === "O" && date[9] === "c" && date[10] === "t") {
        monthIdx = 9;
      } else if (date[8] === "N" && date[9] === "o" && date[10] === "v") {
        monthIdx = 10;
      } else if (date[8] === "D" && date[9] === "e" && date[10] === "c") {
        monthIdx = 11;
      } else {
        return void 0;
      }
      const yearDigit1 = date.charCodeAt(12);
      if (yearDigit1 < 48 || yearDigit1 > 57) {
        return void 0;
      }
      const yearDigit2 = date.charCodeAt(13);
      if (yearDigit2 < 48 || yearDigit2 > 57) {
        return void 0;
      }
      const yearDigit3 = date.charCodeAt(14);
      if (yearDigit3 < 48 || yearDigit3 > 57) {
        return void 0;
      }
      const yearDigit4 = date.charCodeAt(15);
      if (yearDigit4 < 48 || yearDigit4 > 57) {
        return void 0;
      }
      const year = (yearDigit1 - 48) * 1e3 + (yearDigit2 - 48) * 100 + (yearDigit3 - 48) * 10 + (yearDigit4 - 48);
      let hour = 0;
      if (date[17] === "0") {
        const code = date.charCodeAt(18);
        if (code < 48 || code > 57) {
          return void 0;
        }
        hour = code - 48;
      } else {
        const code1 = date.charCodeAt(17);
        if (code1 < 48 || code1 > 50) {
          return void 0;
        }
        const code2 = date.charCodeAt(18);
        if (code2 < 48 || code2 > 57) {
          return void 0;
        }
        if (code1 === 50 && code2 > 51) {
          return void 0;
        }
        hour = (code1 - 48) * 10 + (code2 - 48);
      }
      let minute = 0;
      if (date[20] === "0") {
        const code = date.charCodeAt(21);
        if (code < 48 || code > 57) {
          return void 0;
        }
        minute = code - 48;
      } else {
        const code1 = date.charCodeAt(20);
        if (code1 < 48 || code1 > 53) {
          return void 0;
        }
        const code2 = date.charCodeAt(21);
        if (code2 < 48 || code2 > 57) {
          return void 0;
        }
        minute = (code1 - 48) * 10 + (code2 - 48);
      }
      let second = 0;
      if (date[23] === "0") {
        const code = date.charCodeAt(24);
        if (code < 48 || code > 57) {
          return void 0;
        }
        second = code - 48;
      } else {
        const code1 = date.charCodeAt(23);
        if (code1 < 48 || code1 > 53) {
          return void 0;
        }
        const code2 = date.charCodeAt(24);
        if (code2 < 48 || code2 > 57) {
          return void 0;
        }
        second = (code1 - 48) * 10 + (code2 - 48);
      }
      const result2 = new Date(Date.UTC(year, monthIdx, day, hour, minute, second));
      return result2.getUTCDay() === weekday ? result2 : void 0;
    }
    function parseAscTimeDate(date) {
      if (date.length !== 24 || date[7] !== " " || date[10] !== " " || date[19] !== " ") {
        return void 0;
      }
      let weekday = -1;
      if (date[0] === "S" && date[1] === "u" && date[2] === "n") {
        weekday = 0;
      } else if (date[0] === "M" && date[1] === "o" && date[2] === "n") {
        weekday = 1;
      } else if (date[0] === "T" && date[1] === "u" && date[2] === "e") {
        weekday = 2;
      } else if (date[0] === "W" && date[1] === "e" && date[2] === "d") {
        weekday = 3;
      } else if (date[0] === "T" && date[1] === "h" && date[2] === "u") {
        weekday = 4;
      } else if (date[0] === "F" && date[1] === "r" && date[2] === "i") {
        weekday = 5;
      } else if (date[0] === "S" && date[1] === "a" && date[2] === "t") {
        weekday = 6;
      } else {
        return void 0;
      }
      let monthIdx = -1;
      if (date[4] === "J" && date[5] === "a" && date[6] === "n") {
        monthIdx = 0;
      } else if (date[4] === "F" && date[5] === "e" && date[6] === "b") {
        monthIdx = 1;
      } else if (date[4] === "M" && date[5] === "a") {
        if (date[6] === "r") {
          monthIdx = 2;
        } else if (date[6] === "y") {
          monthIdx = 4;
        } else {
          return void 0;
        }
      } else if (date[4] === "J") {
        if (date[5] === "a" && date[6] === "n") {
          monthIdx = 0;
        } else if (date[5] === "u") {
          if (date[6] === "n") {
            monthIdx = 5;
          } else if (date[6] === "l") {
            monthIdx = 6;
          } else {
            return void 0;
          }
        } else {
          return void 0;
        }
      } else if (date[4] === "A") {
        if (date[5] === "p" && date[6] === "r") {
          monthIdx = 3;
        } else if (date[5] === "u" && date[6] === "g") {
          monthIdx = 7;
        } else {
          return void 0;
        }
      } else if (date[4] === "S" && date[5] === "e" && date[6] === "p") {
        monthIdx = 8;
      } else if (date[4] === "O" && date[5] === "c" && date[6] === "t") {
        monthIdx = 9;
      } else if (date[4] === "N" && date[5] === "o" && date[6] === "v") {
        monthIdx = 10;
      } else if (date[4] === "D" && date[5] === "e" && date[6] === "c") {
        monthIdx = 11;
      } else {
        return void 0;
      }
      let day = 0;
      if (date[8] === " ") {
        const code = date.charCodeAt(9);
        if (code < 49 || code > 57) {
          return void 0;
        }
        day = code - 48;
      } else {
        const code1 = date.charCodeAt(8);
        if (code1 < 49 || code1 > 51) {
          return void 0;
        }
        const code2 = date.charCodeAt(9);
        if (code2 < 48 || code2 > 57) {
          return void 0;
        }
        day = (code1 - 48) * 10 + (code2 - 48);
      }
      let hour = 0;
      if (date[11] === "0") {
        const code = date.charCodeAt(12);
        if (code < 48 || code > 57) {
          return void 0;
        }
        hour = code - 48;
      } else {
        const code1 = date.charCodeAt(11);
        if (code1 < 48 || code1 > 50) {
          return void 0;
        }
        const code2 = date.charCodeAt(12);
        if (code2 < 48 || code2 > 57) {
          return void 0;
        }
        if (code1 === 50 && code2 > 51) {
          return void 0;
        }
        hour = (code1 - 48) * 10 + (code2 - 48);
      }
      let minute = 0;
      if (date[14] === "0") {
        const code = date.charCodeAt(15);
        if (code < 48 || code > 57) {
          return void 0;
        }
        minute = code - 48;
      } else {
        const code1 = date.charCodeAt(14);
        if (code1 < 48 || code1 > 53) {
          return void 0;
        }
        const code2 = date.charCodeAt(15);
        if (code2 < 48 || code2 > 57) {
          return void 0;
        }
        minute = (code1 - 48) * 10 + (code2 - 48);
      }
      let second = 0;
      if (date[17] === "0") {
        const code = date.charCodeAt(18);
        if (code < 48 || code > 57) {
          return void 0;
        }
        second = code - 48;
      } else {
        const code1 = date.charCodeAt(17);
        if (code1 < 48 || code1 > 53) {
          return void 0;
        }
        const code2 = date.charCodeAt(18);
        if (code2 < 48 || code2 > 57) {
          return void 0;
        }
        second = (code1 - 48) * 10 + (code2 - 48);
      }
      const yearDigit1 = date.charCodeAt(20);
      if (yearDigit1 < 48 || yearDigit1 > 57) {
        return void 0;
      }
      const yearDigit2 = date.charCodeAt(21);
      if (yearDigit2 < 48 || yearDigit2 > 57) {
        return void 0;
      }
      const yearDigit3 = date.charCodeAt(22);
      if (yearDigit3 < 48 || yearDigit3 > 57) {
        return void 0;
      }
      const yearDigit4 = date.charCodeAt(23);
      if (yearDigit4 < 48 || yearDigit4 > 57) {
        return void 0;
      }
      const year = (yearDigit1 - 48) * 1e3 + (yearDigit2 - 48) * 100 + (yearDigit3 - 48) * 10 + (yearDigit4 - 48);
      const result2 = new Date(Date.UTC(year, monthIdx, day, hour, minute, second));
      return result2.getUTCDay() === weekday ? result2 : void 0;
    }
    function parseRfc850Date(date) {
      let commaIndex = -1;
      let weekday = -1;
      if (date[0] === "S") {
        if (date[1] === "u" && date[2] === "n" && date[3] === "d" && date[4] === "a" && date[5] === "y") {
          weekday = 0;
          commaIndex = 6;
        } else if (date[1] === "a" && date[2] === "t" && date[3] === "u" && date[4] === "r" && date[5] === "d" && date[6] === "a" && date[7] === "y") {
          weekday = 6;
          commaIndex = 8;
        }
      } else if (date[0] === "M" && date[1] === "o" && date[2] === "n" && date[3] === "d" && date[4] === "a" && date[5] === "y") {
        weekday = 1;
        commaIndex = 6;
      } else if (date[0] === "T") {
        if (date[1] === "u" && date[2] === "e" && date[3] === "s" && date[4] === "d" && date[5] === "a" && date[6] === "y") {
          weekday = 2;
          commaIndex = 7;
        } else if (date[1] === "h" && date[2] === "u" && date[3] === "r" && date[4] === "s" && date[5] === "d" && date[6] === "a" && date[7] === "y") {
          weekday = 4;
          commaIndex = 8;
        }
      } else if (date[0] === "W" && date[1] === "e" && date[2] === "d" && date[3] === "n" && date[4] === "e" && date[5] === "s" && date[6] === "d" && date[7] === "a" && date[8] === "y") {
        weekday = 3;
        commaIndex = 9;
      } else if (date[0] === "F" && date[1] === "r" && date[2] === "i" && date[3] === "d" && date[4] === "a" && date[5] === "y") {
        weekday = 5;
        commaIndex = 6;
      } else {
        return void 0;
      }
      if (date[commaIndex] !== "," || date.length - commaIndex - 1 !== 23 || date[commaIndex + 1] !== " " || date[commaIndex + 4] !== "-" || date[commaIndex + 8] !== "-" || date[commaIndex + 11] !== " " || date[commaIndex + 14] !== ":" || date[commaIndex + 17] !== ":" || date[commaIndex + 20] !== " " || date[commaIndex + 21] !== "G" || date[commaIndex + 22] !== "M" || date[commaIndex + 23] !== "T") {
        return void 0;
      }
      let day = 0;
      if (date[commaIndex + 2] === "0") {
        const code = date.charCodeAt(commaIndex + 3);
        if (code < 49 || code > 57) {
          return void 0;
        }
        day = code - 48;
      } else {
        const code1 = date.charCodeAt(commaIndex + 2);
        if (code1 < 49 || code1 > 51) {
          return void 0;
        }
        const code2 = date.charCodeAt(commaIndex + 3);
        if (code2 < 48 || code2 > 57) {
          return void 0;
        }
        day = (code1 - 48) * 10 + (code2 - 48);
      }
      let monthIdx = -1;
      if (date[commaIndex + 5] === "J" && date[commaIndex + 6] === "a" && date[commaIndex + 7] === "n") {
        monthIdx = 0;
      } else if (date[commaIndex + 5] === "F" && date[commaIndex + 6] === "e" && date[commaIndex + 7] === "b") {
        monthIdx = 1;
      } else if (date[commaIndex + 5] === "M" && date[commaIndex + 6] === "a" && date[commaIndex + 7] === "r") {
        monthIdx = 2;
      } else if (date[commaIndex + 5] === "A" && date[commaIndex + 6] === "p" && date[commaIndex + 7] === "r") {
        monthIdx = 3;
      } else if (date[commaIndex + 5] === "M" && date[commaIndex + 6] === "a" && date[commaIndex + 7] === "y") {
        monthIdx = 4;
      } else if (date[commaIndex + 5] === "J" && date[commaIndex + 6] === "u" && date[commaIndex + 7] === "n") {
        monthIdx = 5;
      } else if (date[commaIndex + 5] === "J" && date[commaIndex + 6] === "u" && date[commaIndex + 7] === "l") {
        monthIdx = 6;
      } else if (date[commaIndex + 5] === "A" && date[commaIndex + 6] === "u" && date[commaIndex + 7] === "g") {
        monthIdx = 7;
      } else if (date[commaIndex + 5] === "S" && date[commaIndex + 6] === "e" && date[commaIndex + 7] === "p") {
        monthIdx = 8;
      } else if (date[commaIndex + 5] === "O" && date[commaIndex + 6] === "c" && date[commaIndex + 7] === "t") {
        monthIdx = 9;
      } else if (date[commaIndex + 5] === "N" && date[commaIndex + 6] === "o" && date[commaIndex + 7] === "v") {
        monthIdx = 10;
      } else if (date[commaIndex + 5] === "D" && date[commaIndex + 6] === "e" && date[commaIndex + 7] === "c") {
        monthIdx = 11;
      } else {
        return void 0;
      }
      const yearDigit1 = date.charCodeAt(commaIndex + 9);
      if (yearDigit1 < 48 || yearDigit1 > 57) {
        return void 0;
      }
      const yearDigit2 = date.charCodeAt(commaIndex + 10);
      if (yearDigit2 < 48 || yearDigit2 > 57) {
        return void 0;
      }
      let year = (yearDigit1 - 48) * 10 + (yearDigit2 - 48);
      year += year < 70 ? 2e3 : 1900;
      let hour = 0;
      if (date[commaIndex + 12] === "0") {
        const code = date.charCodeAt(commaIndex + 13);
        if (code < 48 || code > 57) {
          return void 0;
        }
        hour = code - 48;
      } else {
        const code1 = date.charCodeAt(commaIndex + 12);
        if (code1 < 48 || code1 > 50) {
          return void 0;
        }
        const code2 = date.charCodeAt(commaIndex + 13);
        if (code2 < 48 || code2 > 57) {
          return void 0;
        }
        if (code1 === 50 && code2 > 51) {
          return void 0;
        }
        hour = (code1 - 48) * 10 + (code2 - 48);
      }
      let minute = 0;
      if (date[commaIndex + 15] === "0") {
        const code = date.charCodeAt(commaIndex + 16);
        if (code < 48 || code > 57) {
          return void 0;
        }
        minute = code - 48;
      } else {
        const code1 = date.charCodeAt(commaIndex + 15);
        if (code1 < 48 || code1 > 53) {
          return void 0;
        }
        const code2 = date.charCodeAt(commaIndex + 16);
        if (code2 < 48 || code2 > 57) {
          return void 0;
        }
        minute = (code1 - 48) * 10 + (code2 - 48);
      }
      let second = 0;
      if (date[commaIndex + 18] === "0") {
        const code = date.charCodeAt(commaIndex + 19);
        if (code < 48 || code > 57) {
          return void 0;
        }
        second = code - 48;
      } else {
        const code1 = date.charCodeAt(commaIndex + 18);
        if (code1 < 48 || code1 > 53) {
          return void 0;
        }
        const code2 = date.charCodeAt(commaIndex + 19);
        if (code2 < 48 || code2 > 57) {
          return void 0;
        }
        second = (code1 - 48) * 10 + (code2 - 48);
      }
      const result2 = new Date(Date.UTC(year, monthIdx, day, hour, minute, second));
      return result2.getUTCDay() === weekday ? result2 : void 0;
    }
    module2.exports = {
      parseHttpDate
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/handler/cache-handler.js
var require_cache_handler = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/handler/cache-handler.js"(exports2, module2) {
    "use strict";
    var util56 = require_util6();
    var {
      parseCacheControlHeader,
      parseVaryHeader,
      isEtagUsable
    } = require_cache();
    var { parseHttpDate } = require_date();
    function noop5() {
    }
    var HEURISTICALLY_CACHEABLE_STATUS_CODES = [
      200,
      203,
      204,
      206,
      300,
      301,
      308,
      404,
      405,
      410,
      414,
      501
    ];
    var NOT_UNDERSTOOD_STATUS_CODES = [
      206
    ];
    var MAX_RESPONSE_AGE = 2147483647e3;
    var CacheHandler = class {
      /**
       * @type {import('../../types/cache-interceptor.d.ts').default.CacheKey}
       */
      #cacheKey;
      /**
       * @type {import('../../types/cache-interceptor.d.ts').default.CacheHandlerOptions['type']}
       */
      #cacheType;
      /**
       * @type {number | undefined}
       */
      #cacheByDefault;
      /**
       * @type {import('../../types/cache-interceptor.d.ts').default.CacheStore}
       */
      #store;
      /**
       * @type {import('../../types/dispatcher.d.ts').default.DispatchHandler}
       */
      #handler;
      /**
       * @type {import('node:stream').Writable | undefined}
       */
      #writeStream;
      /**
       * @param {import('../../types/cache-interceptor.d.ts').default.CacheHandlerOptions} opts
       * @param {import('../../types/cache-interceptor.d.ts').default.CacheKey} cacheKey
       * @param {import('../../types/dispatcher.d.ts').default.DispatchHandler} handler
       */
      constructor({ store, type: type4, cacheByDefault }, cacheKey, handler77) {
        this.#store = store;
        this.#cacheType = type4;
        this.#cacheByDefault = cacheByDefault;
        this.#cacheKey = cacheKey;
        this.#handler = handler77;
      }
      onRequestStart(controller, context) {
        this.#writeStream?.destroy();
        this.#writeStream = void 0;
        this.#handler.onRequestStart?.(controller, context);
      }
      onRequestUpgrade(controller, statusCode, headers, socket) {
        this.#handler.onRequestUpgrade?.(controller, statusCode, headers, socket);
      }
      /**
       * @param {import('../../types/dispatcher.d.ts').default.DispatchController} controller
       * @param {number} statusCode
       * @param {import('../../types/header.d.ts').IncomingHttpHeaders} resHeaders
       * @param {string} statusMessage
       */
      onResponseStart(controller, statusCode, resHeaders, statusMessage) {
        const downstreamOnHeaders = () => this.#handler.onResponseStart?.(
          controller,
          statusCode,
          resHeaders,
          statusMessage
        );
        const handler77 = this;
        if (!util56.safeHTTPMethods.includes(this.#cacheKey.method) && statusCode >= 200 && statusCode <= 399) {
          try {
            this.#store.delete(this.#cacheKey)?.catch?.(noop5);
          } catch {
          }
          return downstreamOnHeaders();
        }
        const cacheControlHeader = resHeaders["cache-control"];
        const heuristicallyCacheable = resHeaders["last-modified"] && HEURISTICALLY_CACHEABLE_STATUS_CODES.includes(statusCode);
        if (!cacheControlHeader && !resHeaders["expires"] && !heuristicallyCacheable && !this.#cacheByDefault) {
          return downstreamOnHeaders();
        }
        const cacheControlDirectives = cacheControlHeader ? parseCacheControlHeader(cacheControlHeader) : {};
        if (!canCacheResponse(this.#cacheType, statusCode, resHeaders, cacheControlDirectives, this.#cacheKey.headers)) {
          return downstreamOnHeaders();
        }
        const now = Date.now();
        const resAge = resHeaders.age ? getAge(resHeaders.age) : void 0;
        if (resAge && resAge >= MAX_RESPONSE_AGE) {
          return downstreamOnHeaders();
        }
        const resDate = typeof resHeaders.date === "string" ? parseHttpDate(resHeaders.date) : void 0;
        const staleAt = determineStaleAt(this.#cacheType, now, resAge, resHeaders, resDate, cacheControlDirectives) ?? this.#cacheByDefault;
        if (staleAt === void 0 || resAge && resAge > staleAt) {
          return downstreamOnHeaders();
        }
        const baseTime = resDate ? resDate.getTime() : now;
        const absoluteStaleAt = staleAt + baseTime;
        if (now >= absoluteStaleAt) {
          return downstreamOnHeaders();
        }
        let varyDirectives;
        if (this.#cacheKey.headers && resHeaders.vary) {
          varyDirectives = parseVaryHeader(resHeaders.vary, this.#cacheKey.headers);
          if (!varyDirectives) {
            return downstreamOnHeaders();
          }
        }
        const deleteAt = determineDeleteAt(baseTime, cacheControlDirectives, absoluteStaleAt);
        const strippedHeaders = stripNecessaryHeaders(resHeaders, cacheControlDirectives);
        const value = {
          statusCode,
          statusMessage,
          headers: strippedHeaders,
          vary: varyDirectives,
          cacheControlDirectives,
          cachedAt: resAge ? now - resAge : now,
          staleAt: absoluteStaleAt,
          deleteAt
        };
        if (statusCode === 304) {
          const handle304 = (cachedValue) => {
            if (!cachedValue) {
              return downstreamOnHeaders();
            }
            value.statusCode = cachedValue.statusCode;
            value.statusMessage = cachedValue.statusMessage;
            value.etag = cachedValue.etag;
            value.headers = { ...cachedValue.headers, ...strippedHeaders };
            downstreamOnHeaders();
            this.#writeStream = this.#store.createWriteStream(this.#cacheKey, value);
            if (!this.#writeStream || !cachedValue?.body) {
              return;
            }
            if (typeof cachedValue.body.values === "function") {
              const bodyIterator = cachedValue.body.values();
              const streamCachedBody = () => {
                for (const chunk of bodyIterator) {
                  const full = this.#writeStream.write(chunk) === false;
                  this.#handler.onResponseData?.(controller, chunk);
                  if (full) {
                    break;
                  }
                }
              };
              this.#writeStream.on("error", function() {
                handler77.#writeStream = void 0;
                handler77.#store.delete(handler77.#cacheKey);
              }).on("drain", () => {
                streamCachedBody();
              }).on("close", function() {
                if (handler77.#writeStream === this) {
                  handler77.#writeStream = void 0;
                }
              });
              streamCachedBody();
            } else if (typeof cachedValue.body.on === "function") {
              cachedValue.body.on("data", (chunk) => {
                this.#writeStream.write(chunk);
                this.#handler.onResponseData?.(controller, chunk);
              }).on("end", () => {
                this.#writeStream.end();
              }).on("error", () => {
                this.#writeStream = void 0;
                this.#store.delete(this.#cacheKey);
              });
              this.#writeStream.on("error", function() {
                handler77.#writeStream = void 0;
                handler77.#store.delete(handler77.#cacheKey);
              }).on("close", function() {
                if (handler77.#writeStream === this) {
                  handler77.#writeStream = void 0;
                }
              });
            }
          };
          const result2 = this.#store.get(this.#cacheKey);
          if (result2 && typeof result2.then === "function") {
            result2.then(handle304);
          } else {
            handle304(result2);
          }
        } else {
          if (typeof resHeaders.etag === "string" && isEtagUsable(resHeaders.etag)) {
            value.etag = resHeaders.etag;
          }
          this.#writeStream = this.#store.createWriteStream(this.#cacheKey, value);
          if (!this.#writeStream) {
            return downstreamOnHeaders();
          }
          this.#writeStream.on("drain", () => controller.resume()).on("error", function() {
            handler77.#writeStream = void 0;
            handler77.#store.delete(handler77.#cacheKey);
          }).on("close", function() {
            if (handler77.#writeStream === this) {
              handler77.#writeStream = void 0;
            }
            controller.resume();
          });
          downstreamOnHeaders();
        }
      }
      onResponseData(controller, chunk) {
        if (this.#writeStream?.write(chunk) === false) {
          controller.pause();
        }
        this.#handler.onResponseData?.(controller, chunk);
      }
      onResponseEnd(controller, trailers) {
        this.#writeStream?.end();
        this.#handler.onResponseEnd?.(controller, trailers);
      }
      onResponseError(controller, err) {
        this.#writeStream?.destroy(err);
        this.#writeStream = void 0;
        this.#handler.onResponseError?.(controller, err);
      }
    };
    function canCacheResponse(cacheType, statusCode, resHeaders, cacheControlDirectives, reqHeaders) {
      if (statusCode < 200 || NOT_UNDERSTOOD_STATUS_CODES.includes(statusCode)) {
        return false;
      }
      if (!HEURISTICALLY_CACHEABLE_STATUS_CODES.includes(statusCode) && !resHeaders["expires"] && !cacheControlDirectives.public && cacheControlDirectives["max-age"] === void 0 && // RFC 9111: a private response directive, if the cache is not shared
      !(cacheControlDirectives.private && cacheType === "private") && !(cacheControlDirectives["s-maxage"] !== void 0 && cacheType === "shared")) {
        return false;
      }
      if (cacheControlDirectives["no-store"]) {
        return false;
      }
      if (cacheType === "shared" && cacheControlDirectives.private === true) {
        return false;
      }
      if (resHeaders.vary?.includes("*")) {
        return false;
      }
      if (reqHeaders?.authorization) {
        if (!cacheControlDirectives.public && !cacheControlDirectives["s-maxage"] && !cacheControlDirectives["must-revalidate"]) {
          return false;
        }
        if (typeof reqHeaders.authorization !== "string") {
          return false;
        }
        if (Array.isArray(cacheControlDirectives["no-cache"]) && cacheControlDirectives["no-cache"].includes("authorization")) {
          return false;
        }
        if (Array.isArray(cacheControlDirectives["private"]) && cacheControlDirectives["private"].includes("authorization")) {
          return false;
        }
      }
      return true;
    }
    function getAge(ageHeader) {
      const age = parseInt(Array.isArray(ageHeader) ? ageHeader[0] : ageHeader);
      return isNaN(age) ? void 0 : age * 1e3;
    }
    function determineStaleAt(cacheType, now, age, resHeaders, responseDate, cacheControlDirectives) {
      if (cacheType === "shared") {
        const sMaxAge = cacheControlDirectives["s-maxage"];
        if (sMaxAge !== void 0) {
          return sMaxAge > 0 ? sMaxAge * 1e3 : void 0;
        }
      }
      const maxAge = cacheControlDirectives["max-age"];
      if (maxAge !== void 0) {
        return maxAge > 0 ? maxAge * 1e3 : void 0;
      }
      if (typeof resHeaders.expires === "string") {
        const expiresDate = parseHttpDate(resHeaders.expires);
        if (expiresDate) {
          if (now >= expiresDate.getTime()) {
            return void 0;
          }
          if (responseDate) {
            if (responseDate >= expiresDate) {
              return void 0;
            }
            if (age !== void 0 && age > expiresDate - responseDate) {
              return void 0;
            }
          }
          return expiresDate.getTime() - now;
        }
      }
      if (typeof resHeaders["last-modified"] === "string") {
        const lastModified = new Date(resHeaders["last-modified"]);
        if (isValidDate(lastModified)) {
          if (lastModified.getTime() >= now) {
            return void 0;
          }
          const responseAge = now - lastModified.getTime();
          return responseAge * 0.1;
        }
      }
      if (cacheControlDirectives.immutable) {
        return 31536e3;
      }
      return void 0;
    }
    function determineDeleteAt(now, cacheControlDirectives, staleAt) {
      let staleWhileRevalidate = -Infinity;
      let staleIfError = -Infinity;
      let immutable = -Infinity;
      if (cacheControlDirectives["stale-while-revalidate"]) {
        staleWhileRevalidate = staleAt + cacheControlDirectives["stale-while-revalidate"] * 1e3;
      }
      if (cacheControlDirectives["stale-if-error"]) {
        staleIfError = staleAt + cacheControlDirectives["stale-if-error"] * 1e3;
      }
      if (cacheControlDirectives.immutable && staleWhileRevalidate === -Infinity && staleIfError === -Infinity) {
        immutable = now + 31536e6;
      }
      if (staleWhileRevalidate === -Infinity && staleIfError === -Infinity && immutable === -Infinity) {
        const freshnessLifetime = staleAt - now;
        return staleAt + freshnessLifetime;
      }
      return Math.max(staleAt, staleWhileRevalidate, staleIfError, immutable);
    }
    function stripNecessaryHeaders(resHeaders, cacheControlDirectives) {
      const headersToRemove = [
        "connection",
        "proxy-authenticate",
        "proxy-authentication-info",
        "proxy-authorization",
        "proxy-connection",
        "te",
        "transfer-encoding",
        "upgrade",
        // We'll add age back when serving it
        "age"
      ];
      if (resHeaders["connection"]) {
        if (Array.isArray(resHeaders["connection"])) {
          headersToRemove.push(...resHeaders["connection"].map((header) => header.trim()));
        } else {
          headersToRemove.push(...resHeaders["connection"].split(",").map((header) => header.trim()));
        }
      }
      if (Array.isArray(cacheControlDirectives["no-cache"])) {
        headersToRemove.push(...cacheControlDirectives["no-cache"]);
      }
      if (Array.isArray(cacheControlDirectives["private"])) {
        headersToRemove.push(...cacheControlDirectives["private"]);
      }
      let strippedHeaders;
      for (const headerName of headersToRemove) {
        if (resHeaders[headerName]) {
          strippedHeaders ??= { ...resHeaders };
          delete strippedHeaders[headerName];
        }
      }
      return strippedHeaders ?? resHeaders;
    }
    function isValidDate(date) {
      return date instanceof Date && Number.isFinite(date.valueOf());
    }
    module2.exports = CacheHandler;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/cache/memory-cache-store.js
var require_memory_cache_store = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/cache/memory-cache-store.js"(exports2, module2) {
    "use strict";
    var { Writable: Writable4 } = __require("node:stream");
    var { EventEmitter: EventEmitter4 } = __require("node:events");
    var { assertCacheKey, assertCacheValue } = require_cache();
    var MemoryCacheStore = class extends EventEmitter4 {
      #maxCount = 1024;
      #maxSize = 104857600;
      // 100MB
      #maxEntrySize = 5242880;
      // 5MB
      #size = 0;
      #count = 0;
      #entries = /* @__PURE__ */ new Map();
      #hasEmittedMaxSizeEvent = false;
      /**
       * @param {import('../../types/cache-interceptor.d.ts').default.MemoryCacheStoreOpts | undefined} [opts]
       */
      constructor(opts2) {
        super();
        if (opts2) {
          if (typeof opts2 !== "object") {
            throw new TypeError("MemoryCacheStore options must be an object");
          }
          if (opts2.maxCount !== void 0) {
            if (typeof opts2.maxCount !== "number" || !Number.isInteger(opts2.maxCount) || opts2.maxCount < 0) {
              throw new TypeError("MemoryCacheStore options.maxCount must be a non-negative integer");
            }
            this.#maxCount = opts2.maxCount;
          }
          if (opts2.maxSize !== void 0) {
            if (typeof opts2.maxSize !== "number" || !Number.isInteger(opts2.maxSize) || opts2.maxSize < 0) {
              throw new TypeError("MemoryCacheStore options.maxSize must be a non-negative integer");
            }
            this.#maxSize = opts2.maxSize;
          }
          if (opts2.maxEntrySize !== void 0) {
            if (typeof opts2.maxEntrySize !== "number" || !Number.isInteger(opts2.maxEntrySize) || opts2.maxEntrySize < 0) {
              throw new TypeError("MemoryCacheStore options.maxEntrySize must be a non-negative integer");
            }
            this.#maxEntrySize = opts2.maxEntrySize;
          }
        }
      }
      /**
       * Get the current size of the cache in bytes
       * @returns {number} The current size of the cache in bytes
       */
      get size() {
        return this.#size;
      }
      /**
       * Check if the cache is full (either max size or max count reached)
       * @returns {boolean} True if the cache is full, false otherwise
       */
      isFull() {
        return this.#size >= this.#maxSize || this.#count >= this.#maxCount;
      }
      /**
       * @param {import('../../types/cache-interceptor.d.ts').default.CacheKey} req
       * @returns {import('../../types/cache-interceptor.d.ts').default.GetResult | undefined}
       */
      get(key) {
        assertCacheKey(key);
        const topLevelKey = `${key.origin}:${key.path}`;
        const now = Date.now();
        const entries = this.#entries.get(topLevelKey);
        const entry = entries ? findEntry(key, entries, now) : null;
        return entry == null ? void 0 : {
          statusMessage: entry.statusMessage,
          statusCode: entry.statusCode,
          headers: entry.headers,
          body: entry.body,
          vary: entry.vary ? entry.vary : void 0,
          etag: entry.etag,
          cacheControlDirectives: entry.cacheControlDirectives,
          cachedAt: entry.cachedAt,
          staleAt: entry.staleAt,
          deleteAt: entry.deleteAt
        };
      }
      /**
       * @param {import('../../types/cache-interceptor.d.ts').default.CacheKey} key
       * @param {import('../../types/cache-interceptor.d.ts').default.CacheValue} val
       * @returns {Writable | undefined}
       */
      createWriteStream(key, val) {
        assertCacheKey(key);
        assertCacheValue(val);
        const topLevelKey = `${key.origin}:${key.path}`;
        const store = this;
        const entry = { ...key, ...val, body: [], size: 0 };
        return new Writable4({
          write(chunk, encoding, callback2) {
            if (typeof chunk === "string") {
              chunk = Buffer.from(chunk, encoding);
            }
            entry.size += chunk.byteLength;
            if (entry.size >= store.#maxEntrySize) {
              this.destroy();
            } else {
              entry.body.push(chunk);
            }
            callback2(null);
          },
          final(callback2) {
            let entries = store.#entries.get(topLevelKey);
            if (!entries) {
              entries = [];
              store.#entries.set(topLevelKey, entries);
            }
            const previousEntry = findEntry(key, entries, Date.now());
            if (previousEntry) {
              const index = entries.indexOf(previousEntry);
              entries.splice(index, 1, entry);
              store.#size -= previousEntry.size;
            } else {
              entries.push(entry);
              store.#count += 1;
            }
            store.#size += entry.size;
            if (store.#size > store.#maxSize || store.#count > store.#maxCount) {
              if (!store.#hasEmittedMaxSizeEvent) {
                store.emit("maxSizeExceeded", {
                  size: store.#size,
                  maxSize: store.#maxSize,
                  count: store.#count,
                  maxCount: store.#maxCount
                });
                store.#hasEmittedMaxSizeEvent = true;
              }
              for (const [key2, entries2] of store.#entries) {
                for (const entry2 of entries2.splice(0, entries2.length / 2)) {
                  store.#size -= entry2.size;
                  store.#count -= 1;
                }
                if (entries2.length === 0) {
                  store.#entries.delete(key2);
                }
              }
              if (store.#size < store.#maxSize && store.#count < store.#maxCount) {
                store.#hasEmittedMaxSizeEvent = false;
              }
            }
            callback2(null);
          }
        });
      }
      /**
       * @param {CacheKey} key
       */
      delete(key) {
        if (typeof key !== "object") {
          throw new TypeError(`expected key to be object, got ${typeof key}`);
        }
        const topLevelKey = `${key.origin}:${key.path}`;
        for (const entry of this.#entries.get(topLevelKey) ?? []) {
          this.#size -= entry.size;
          this.#count -= 1;
        }
        this.#entries.delete(topLevelKey);
      }
    };
    function findEntry(key, entries, now) {
      return entries.find((entry) => entry.deleteAt > now && entry.method === key.method && (entry.vary == null || Object.keys(entry.vary).every((headerName) => {
        if (entry.vary[headerName] === null) {
          return key.headers[headerName] === void 0;
        }
        return entry.vary[headerName] === key.headers[headerName];
      })));
    }
    module2.exports = MemoryCacheStore;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/handler/cache-revalidation-handler.js
var require_cache_revalidation_handler = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/handler/cache-revalidation-handler.js"(exports2, module2) {
    "use strict";
    var assert13 = __require("node:assert");
    var CacheRevalidationHandler = class {
      #successful = false;
      /**
       * @type {((boolean, any) => void) | null}
       */
      #callback;
      /**
       * @type {(import('../../types/dispatcher.d.ts').default.DispatchHandler)}
       */
      #handler;
      #context;
      /**
       * @type {boolean}
       */
      #allowErrorStatusCodes;
      /**
       * @param {(boolean) => void} callback Function to call if the cached value is valid
       * @param {import('../../types/dispatcher.d.ts').default.DispatchHandlers} handler
       * @param {boolean} allowErrorStatusCodes
       */
      constructor(callback2, handler77, allowErrorStatusCodes) {
        if (typeof callback2 !== "function") {
          throw new TypeError("callback must be a function");
        }
        this.#callback = callback2;
        this.#handler = handler77;
        this.#allowErrorStatusCodes = allowErrorStatusCodes;
      }
      onRequestStart(_, context) {
        this.#successful = false;
        this.#context = context;
      }
      onRequestUpgrade(controller, statusCode, headers, socket) {
        this.#handler.onRequestUpgrade?.(controller, statusCode, headers, socket);
      }
      onResponseStart(controller, statusCode, headers, statusMessage) {
        assert13(this.#callback != null);
        this.#successful = statusCode === 304 || this.#allowErrorStatusCodes && statusCode >= 500 && statusCode <= 504;
        this.#callback(this.#successful, this.#context);
        this.#callback = null;
        if (this.#successful) {
          return true;
        }
        this.#handler.onRequestStart?.(controller, this.#context);
        this.#handler.onResponseStart?.(
          controller,
          statusCode,
          headers,
          statusMessage
        );
      }
      onResponseData(controller, chunk) {
        if (this.#successful) {
          return;
        }
        return this.#handler.onResponseData?.(controller, chunk);
      }
      onResponseEnd(controller, trailers) {
        if (this.#successful) {
          return;
        }
        this.#handler.onResponseEnd?.(controller, trailers);
      }
      onResponseError(controller, err) {
        if (this.#successful) {
          return;
        }
        if (this.#callback) {
          this.#callback(false);
          this.#callback = null;
        }
        if (typeof this.#handler.onResponseError === "function") {
          this.#handler.onResponseError(controller, err);
        } else {
          throw err;
        }
      }
    };
    module2.exports = CacheRevalidationHandler;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/interceptor/cache.js
var require_cache2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/interceptor/cache.js"(exports2, module2) {
    "use strict";
    var assert13 = __require("node:assert");
    var { Readable: Readable4 } = __require("node:stream");
    var util56 = require_util6();
    var CacheHandler = require_cache_handler();
    var MemoryCacheStore = require_memory_cache_store();
    var CacheRevalidationHandler = require_cache_revalidation_handler();
    var { assertCacheStore, assertCacheMethods, makeCacheKey, normalizeHeaders, parseCacheControlHeader } = require_cache();
    var { AbortError } = require_errors5();
    function assertCacheOrigins(origins, name) {
      if (origins === void 0) return;
      if (!Array.isArray(origins)) {
        throw new TypeError(`expected ${name} to be an array or undefined, got ${typeof origins}`);
      }
      for (let i2 = 0; i2 < origins.length; i2++) {
        const origin = origins[i2];
        if (typeof origin !== "string" && !(origin instanceof RegExp)) {
          throw new TypeError(`expected ${name}[${i2}] to be a string or RegExp, got ${typeof origin}`);
        }
      }
    }
    var nop = () => {
    };
    function needsRevalidation(result2, cacheControlDirectives, { headers = {} }) {
      if (cacheControlDirectives?.["no-cache"]) {
        return true;
      }
      if (result2.cacheControlDirectives?.["no-cache"] && !Array.isArray(result2.cacheControlDirectives["no-cache"])) {
        return true;
      }
      if (headers["if-modified-since"] || headers["if-none-match"]) {
        return true;
      }
      return false;
    }
    function isStale(result2, cacheControlDirectives) {
      const now = Date.now();
      if (now > result2.staleAt) {
        if (cacheControlDirectives?.["max-stale"]) {
          const gracePeriod = result2.staleAt + cacheControlDirectives["max-stale"] * 1e3;
          return now > gracePeriod;
        }
        return true;
      }
      if (cacheControlDirectives?.["min-fresh"]) {
        const timeLeftTillStale = result2.staleAt - now;
        const threshold = cacheControlDirectives["min-fresh"] * 1e3;
        return timeLeftTillStale <= threshold;
      }
      return false;
    }
    function withinStaleWhileRevalidateWindow(result2) {
      const staleWhileRevalidate = result2.cacheControlDirectives?.["stale-while-revalidate"];
      if (!staleWhileRevalidate) {
        return false;
      }
      const now = Date.now();
      const staleWhileRevalidateExpiry = result2.staleAt + staleWhileRevalidate * 1e3;
      return now <= staleWhileRevalidateExpiry;
    }
    function handleUncachedResponse(dispatch, globalOpts, cacheKey, handler77, opts2, reqCacheControl) {
      if (reqCacheControl?.["only-if-cached"]) {
        let aborted2 = false;
        try {
          if (typeof handler77.onConnect === "function") {
            handler77.onConnect(() => {
              aborted2 = true;
            });
            if (aborted2) {
              return;
            }
          }
          if (typeof handler77.onHeaders === "function") {
            handler77.onHeaders(504, [], nop, "Gateway Timeout");
            if (aborted2) {
              return;
            }
          }
          if (typeof handler77.onComplete === "function") {
            handler77.onComplete([]);
          }
        } catch (err) {
          if (typeof handler77.onError === "function") {
            handler77.onError(err);
          }
        }
        return true;
      }
      return dispatch(opts2, new CacheHandler(globalOpts, cacheKey, handler77));
    }
    function sendCachedValue(handler77, opts2, result2, age, context, isStale2) {
      const stream2 = util56.isStream(result2.body) ? result2.body : Readable4.from(result2.body ?? []);
      assert13(!stream2.destroyed, "stream should not be destroyed");
      assert13(!stream2.readableDidRead, "stream should not be readableDidRead");
      const controller = {
        resume() {
          stream2.resume();
        },
        pause() {
          stream2.pause();
        },
        get paused() {
          return stream2.isPaused();
        },
        get aborted() {
          return stream2.destroyed;
        },
        get reason() {
          return stream2.errored;
        },
        abort(reason) {
          stream2.destroy(reason ?? new AbortError());
        }
      };
      stream2.on("error", function(err) {
        if (!this.readableEnded) {
          if (typeof handler77.onResponseError === "function") {
            handler77.onResponseError(controller, err);
          } else {
            throw err;
          }
        }
      }).on("close", function() {
        if (!this.errored) {
          handler77.onResponseEnd?.(controller, {});
        }
      });
      handler77.onRequestStart?.(controller, context);
      if (stream2.destroyed) {
        return;
      }
      const headers = { ...result2.headers, age: String(age) };
      if (isStale2) {
        headers.warning = '110 - "response is stale"';
      }
      handler77.onResponseStart?.(controller, result2.statusCode, headers, result2.statusMessage);
      if (opts2.method === "HEAD") {
        stream2.destroy();
      } else {
        stream2.on("data", function(chunk) {
          handler77.onResponseData?.(controller, chunk);
        });
      }
    }
    function handleResult2(dispatch, globalOpts, cacheKey, handler77, opts2, reqCacheControl, result2) {
      if (!result2) {
        return handleUncachedResponse(dispatch, globalOpts, cacheKey, handler77, opts2, reqCacheControl);
      }
      const now = Date.now();
      if (now > result2.deleteAt) {
        return dispatch(opts2, new CacheHandler(globalOpts, cacheKey, handler77));
      }
      const age = Math.round((now - result2.cachedAt) / 1e3);
      if (reqCacheControl?.["max-age"] && age >= reqCacheControl["max-age"]) {
        return dispatch(opts2, handler77);
      }
      const stale = isStale(result2, reqCacheControl);
      const revalidate = needsRevalidation(result2, reqCacheControl, opts2);
      if (stale || revalidate) {
        if (util56.isStream(opts2.body) && util56.bodyLength(opts2.body) !== 0) {
          return dispatch(opts2, new CacheHandler(globalOpts, cacheKey, handler77));
        }
        if (!revalidate && withinStaleWhileRevalidateWindow(result2)) {
          sendCachedValue(handler77, opts2, result2, age, null, true);
          queueMicrotask(() => {
            const headers2 = {
              ...opts2.headers,
              "if-modified-since": new Date(result2.cachedAt).toUTCString()
            };
            if (result2.etag) {
              headers2["if-none-match"] = result2.etag;
            }
            if (result2.vary) {
              for (const key in result2.vary) {
                if (result2.vary[key] != null) {
                  headers2[key] = result2.vary[key];
                }
              }
            }
            dispatch(
              {
                ...opts2,
                headers: headers2
              },
              new CacheHandler(globalOpts, cacheKey, {
                // Silent handler that just updates the cache
                onRequestStart() {
                },
                onRequestUpgrade() {
                },
                onResponseStart() {
                },
                onResponseData() {
                },
                onResponseEnd() {
                },
                onResponseError() {
                }
              })
            );
          });
          return true;
        }
        let withinStaleIfErrorThreshold = false;
        const staleIfErrorExpiry = result2.cacheControlDirectives["stale-if-error"] ?? reqCacheControl?.["stale-if-error"];
        if (staleIfErrorExpiry) {
          withinStaleIfErrorThreshold = now < result2.staleAt + staleIfErrorExpiry * 1e3;
        }
        const headers = {
          ...opts2.headers,
          "if-modified-since": new Date(result2.cachedAt).toUTCString()
        };
        if (result2.etag) {
          headers["if-none-match"] = result2.etag;
        }
        if (result2.vary) {
          for (const key in result2.vary) {
            if (result2.vary[key] != null) {
              headers[key] = result2.vary[key];
            }
          }
        }
        return dispatch(
          {
            ...opts2,
            headers
          },
          new CacheRevalidationHandler(
            (success, context) => {
              if (success) {
                sendCachedValue(handler77, opts2, result2, age, context, stale);
              } else if (util56.isStream(result2.body)) {
                result2.body.on("error", nop).destroy();
              }
            },
            new CacheHandler(globalOpts, cacheKey, handler77),
            withinStaleIfErrorThreshold
          )
        );
      }
      if (util56.isStream(opts2.body)) {
        opts2.body.on("error", nop).destroy();
      }
      sendCachedValue(handler77, opts2, result2, age, null, false);
    }
    module2.exports = (opts2 = {}) => {
      const {
        store = new MemoryCacheStore(),
        methods = ["GET"],
        cacheByDefault = void 0,
        type: type4 = "shared",
        origins = void 0
      } = opts2;
      if (typeof opts2 !== "object" || opts2 === null) {
        throw new TypeError(`expected type of opts to be an Object, got ${opts2 === null ? "null" : typeof opts2}`);
      }
      assertCacheStore(store, "opts.store");
      assertCacheMethods(methods, "opts.methods");
      assertCacheOrigins(origins, "opts.origins");
      if (typeof cacheByDefault !== "undefined" && typeof cacheByDefault !== "number") {
        throw new TypeError(`expected opts.cacheByDefault to be number or undefined, got ${typeof cacheByDefault}`);
      }
      if (typeof type4 !== "undefined" && type4 !== "shared" && type4 !== "private") {
        throw new TypeError(`expected opts.type to be shared, private, or undefined, got ${typeof type4}`);
      }
      const globalOpts = {
        store,
        methods,
        cacheByDefault,
        type: type4
      };
      const safeMethodsToNotCache = util56.safeHTTPMethods.filter((method) => methods.includes(method) === false);
      return (dispatch) => {
        return (opts3, handler77) => {
          if (!opts3.origin || safeMethodsToNotCache.includes(opts3.method)) {
            return dispatch(opts3, handler77);
          }
          if (origins !== void 0) {
            const requestOrigin = opts3.origin.toString().toLowerCase();
            let isAllowed = false;
            for (let i2 = 0; i2 < origins.length; i2++) {
              const allowed = origins[i2];
              if (typeof allowed === "string") {
                if (allowed.toLowerCase() === requestOrigin) {
                  isAllowed = true;
                  break;
                }
              } else if (allowed.test(requestOrigin)) {
                isAllowed = true;
                break;
              }
            }
            if (!isAllowed) {
              return dispatch(opts3, handler77);
            }
          }
          opts3 = {
            ...opts3,
            headers: normalizeHeaders(opts3)
          };
          const reqCacheControl = opts3.headers?.["cache-control"] ? parseCacheControlHeader(opts3.headers["cache-control"]) : void 0;
          if (reqCacheControl?.["no-store"]) {
            return dispatch(opts3, handler77);
          }
          const cacheKey = makeCacheKey(opts3);
          const result2 = store.get(cacheKey);
          if (result2 && typeof result2.then === "function") {
            return result2.then((result3) => handleResult2(
              dispatch,
              globalOpts,
              cacheKey,
              handler77,
              opts3,
              reqCacheControl,
              result3
            ));
          } else {
            return handleResult2(
              dispatch,
              globalOpts,
              cacheKey,
              handler77,
              opts3,
              reqCacheControl,
              result2
            );
          }
        };
      };
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/interceptor/decompress.js
var require_decompress = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/interceptor/decompress.js"(exports2, module2) {
    "use strict";
    var { createInflate, createGunzip: createGunzip2, createBrotliDecompress, createZstdDecompress } = __require("node:zlib");
    var { pipeline: pipeline2 } = __require("node:stream");
    var DecoratorHandler = require_decorator_handler();
    var { runtimeFeatures } = require_runtime_features();
    var supportedEncodings = {
      gzip: createGunzip2,
      "x-gzip": createGunzip2,
      br: createBrotliDecompress,
      deflate: createInflate,
      compress: createInflate,
      "x-compress": createInflate,
      ...runtimeFeatures.has("zstd") ? { zstd: createZstdDecompress } : {}
    };
    var defaultSkipStatusCodes = (
      /** @type {const} */
      [204, 304]
    );
    var warningEmitted = (
      /** @type {boolean} */
      false
    );
    var DecompressHandler = class extends DecoratorHandler {
      /** @type {Transform[]} */
      #decompressors = [];
      /** @type {Readonly<number[]>} */
      #skipStatusCodes;
      /** @type {boolean} */
      #skipErrorResponses;
      constructor(handler77, { skipStatusCodes = defaultSkipStatusCodes, skipErrorResponses = true } = {}) {
        super(handler77);
        this.#skipStatusCodes = skipStatusCodes;
        this.#skipErrorResponses = skipErrorResponses;
      }
      /**
       * Determines if decompression should be skipped based on encoding and status code
       * @param {string} contentEncoding - Content-Encoding header value
       * @param {number} statusCode - HTTP status code of the response
       * @returns {boolean} - True if decompression should be skipped
       */
      #shouldSkipDecompression(contentEncoding, statusCode) {
        if (!contentEncoding || statusCode < 200) return true;
        if (this.#skipStatusCodes.includes(statusCode)) return true;
        if (this.#skipErrorResponses && statusCode >= 400) return true;
        return false;
      }
      /**
       * Creates a chain of decompressors for multiple content encodings
       *
       * @param {string} encodings - Comma-separated list of content encodings
       * @returns {Array<DecompressorStream>} - Array of decompressor streams
       * @throws {Error} - If the number of content-encodings exceeds the maximum allowed
       */
      #createDecompressionChain(encodings) {
        const parts = encodings.split(",");
        const maxContentEncodings = 5;
        if (parts.length > maxContentEncodings) {
          throw new Error(`too many content-encodings in response: ${parts.length}, maximum allowed is ${maxContentEncodings}`);
        }
        const decompressors = [];
        for (let i2 = parts.length - 1; i2 >= 0; i2--) {
          const encoding = parts[i2].trim();
          if (!encoding) continue;
          if (!supportedEncodings[encoding]) {
            decompressors.length = 0;
            return decompressors;
          }
          decompressors.push(supportedEncodings[encoding]());
        }
        return decompressors;
      }
      /**
       * Sets up event handlers for a decompressor stream using readable events
       * @param {DecompressorStream} decompressor - The decompressor stream
       * @param {Controller} controller - The controller to coordinate with
       * @returns {void}
       */
      #setupDecompressorEvents(decompressor, controller) {
        decompressor.on("readable", () => {
          let chunk;
          while ((chunk = decompressor.read()) !== null) {
            const result2 = super.onResponseData(controller, chunk);
            if (result2 === false) {
              break;
            }
          }
        });
        decompressor.on("error", (error) => {
          super.onResponseError(controller, error);
        });
      }
      /**
       * Sets up event handling for a single decompressor
       * @param {Controller} controller - The controller to handle events
       * @returns {void}
       */
      #setupSingleDecompressor(controller) {
        const decompressor = this.#decompressors[0];
        this.#setupDecompressorEvents(decompressor, controller);
        decompressor.on("end", () => {
          super.onResponseEnd(controller, {});
        });
      }
      /**
       * Sets up event handling for multiple chained decompressors using pipeline
       * @param {Controller} controller - The controller to handle events
       * @returns {void}
       */
      #setupMultipleDecompressors(controller) {
        const lastDecompressor = this.#decompressors[this.#decompressors.length - 1];
        this.#setupDecompressorEvents(lastDecompressor, controller);
        pipeline2(this.#decompressors, (err) => {
          if (err) {
            super.onResponseError(controller, err);
            return;
          }
          super.onResponseEnd(controller, {});
        });
      }
      /**
       * Cleans up decompressor references to prevent memory leaks
       * @returns {void}
       */
      #cleanupDecompressors() {
        this.#decompressors.length = 0;
      }
      /**
       * @param {Controller} controller
       * @param {number} statusCode
       * @param {Record<string, string | string[] | undefined>} headers
       * @param {string} statusMessage
       * @returns {void}
       */
      onResponseStart(controller, statusCode, headers, statusMessage) {
        const contentEncoding = headers["content-encoding"];
        if (this.#shouldSkipDecompression(contentEncoding, statusCode)) {
          return super.onResponseStart(controller, statusCode, headers, statusMessage);
        }
        const decompressors = this.#createDecompressionChain(contentEncoding.toLowerCase());
        if (decompressors.length === 0) {
          this.#cleanupDecompressors();
          return super.onResponseStart(controller, statusCode, headers, statusMessage);
        }
        this.#decompressors = decompressors;
        const { "content-encoding": _, "content-length": __, ...newHeaders } = headers;
        if (this.#decompressors.length === 1) {
          this.#setupSingleDecompressor(controller);
        } else {
          this.#setupMultipleDecompressors(controller);
        }
        return super.onResponseStart(controller, statusCode, newHeaders, statusMessage);
      }
      /**
       * @param {Controller} controller
       * @param {Buffer} chunk
       * @returns {void}
       */
      onResponseData(controller, chunk) {
        if (this.#decompressors.length > 0) {
          this.#decompressors[0].write(chunk);
          return;
        }
        super.onResponseData(controller, chunk);
      }
      /**
       * @param {Controller} controller
       * @param {Record<string, string | string[]> | undefined} trailers
       * @returns {void}
       */
      onResponseEnd(controller, trailers) {
        if (this.#decompressors.length > 0) {
          this.#decompressors[0].end();
          this.#cleanupDecompressors();
          return;
        }
        super.onResponseEnd(controller, trailers);
      }
      /**
       * @param {Controller} controller
       * @param {Error} err
       * @returns {void}
       */
      onResponseError(controller, err) {
        if (this.#decompressors.length > 0) {
          for (const decompressor of this.#decompressors) {
            decompressor.destroy(err);
          }
          this.#cleanupDecompressors();
        }
        super.onResponseError(controller, err);
      }
    };
    function createDecompressInterceptor(options = {}) {
      if (!warningEmitted) {
        process.emitWarning(
          "DecompressInterceptor is experimental and subject to change",
          "ExperimentalWarning"
        );
        warningEmitted = true;
      }
      return (dispatch) => {
        return (opts2, handler77) => {
          const decompressHandler = new DecompressHandler(handler77, options);
          return dispatch(opts2, decompressHandler);
        };
      };
    }
    module2.exports = createDecompressInterceptor;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/handler/deduplication-handler.js
var require_deduplication_handler = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/handler/deduplication-handler.js"(exports2, module2) {
    "use strict";
    var { RequestAbortedError } = require_errors5();
    var DEFAULT_MAX_BUFFER_SIZE = 5 * 1024 * 1024;
    var DeduplicationHandler = class {
      /**
       * @type {DispatchHandler}
       */
      #primaryHandler;
      /**
       * @type {WaitingHandler[]}
       */
      #waitingHandlers = [];
      /**
       * @type {number}
       */
      #maxBufferSize = DEFAULT_MAX_BUFFER_SIZE;
      /**
       * @type {number}
       */
      #statusCode = 0;
      /**
       * @type {Record<string, string | string[]>}
       */
      #headers = {};
      /**
       * @type {string}
       */
      #statusMessage = "";
      /**
       * @type {boolean}
       */
      #aborted = false;
      /**
       * @type {boolean}
       */
      #responseStarted = false;
      /**
       * @type {boolean}
       */
      #responseDataStarted = false;
      /**
       * @type {boolean}
       */
      #completed = false;
      /**
       * @type {import('../../types/dispatcher.d.ts').default.DispatchController | null}
       */
      #controller = null;
      /**
       * @type {(() => void) | null}
       */
      #onComplete = null;
      /**
       * @param {DispatchHandler} primaryHandler The primary handler
       * @param {() => void} onComplete Callback when request completes
       * @param {number} [maxBufferSize] Maximum paused buffer size per waiting handler
       */
      constructor(primaryHandler, onComplete, maxBufferSize = DEFAULT_MAX_BUFFER_SIZE) {
        this.#primaryHandler = primaryHandler;
        this.#onComplete = onComplete;
        this.#maxBufferSize = maxBufferSize;
      }
      /**
       * Add a waiting handler that will receive response events.
       * Returns false if deduplication can no longer safely attach this handler.
       *
       * @param {DispatchHandler} handler
       * @returns {boolean}
       */
      addWaitingHandler(handler77) {
        if (this.#completed || this.#responseDataStarted) {
          return false;
        }
        const waitingHandler = this.#createWaitingHandler(handler77);
        const waitingController = waitingHandler.controller;
        try {
          handler77.onRequestStart?.(waitingController, null);
          if (waitingController.aborted) {
            waitingHandler.done = true;
            return true;
          }
          if (this.#responseStarted) {
            handler77.onResponseStart?.(
              waitingController,
              this.#statusCode,
              this.#headers,
              this.#statusMessage
            );
          }
        } catch {
          waitingHandler.done = true;
          return true;
        }
        if (!waitingController.aborted) {
          this.#waitingHandlers.push(waitingHandler);
        }
        return true;
      }
      /**
       * @param {import('../../types/dispatcher.d.ts').default.DispatchController} controller
       * @param {any} context
       */
      onRequestStart(controller, context) {
        this.#controller = controller;
        this.#primaryHandler.onRequestStart?.(controller, context);
      }
      /**
       * @param {import('../../types/dispatcher.d.ts').default.DispatchController} controller
       * @param {number} statusCode
       * @param {import('../../types/header.d.ts').IncomingHttpHeaders} headers
       * @param {Socket} socket
       */
      onRequestUpgrade(controller, statusCode, headers, socket) {
        this.#primaryHandler.onRequestUpgrade?.(controller, statusCode, headers, socket);
      }
      /**
       * @param {import('../../types/dispatcher.d.ts').default.DispatchController} controller
       * @param {number} statusCode
       * @param {Record<string, string | string[]>} headers
       * @param {string} statusMessage
       */
      onResponseStart(controller, statusCode, headers, statusMessage) {
        this.#responseStarted = true;
        this.#statusCode = statusCode;
        this.#headers = headers;
        this.#statusMessage = statusMessage;
        this.#primaryHandler.onResponseStart?.(controller, statusCode, headers, statusMessage);
        for (const waitingHandler of this.#waitingHandlers) {
          const { handler: handler77, controller: waitingController } = waitingHandler;
          if (waitingHandler.done || waitingController.aborted) {
            waitingHandler.done = true;
            continue;
          }
          try {
            handler77.onResponseStart?.(
              waitingController,
              statusCode,
              headers,
              statusMessage
            );
          } catch {
          }
          if (waitingController.aborted) {
            waitingHandler.done = true;
          }
        }
        this.#pruneDoneWaitingHandlers();
      }
      /**
       * @param {import('../../types/dispatcher.d.ts').default.DispatchController} controller
       * @param {Buffer} chunk
       */
      onResponseData(controller, chunk) {
        if (this.#aborted || this.#completed) {
          return;
        }
        this.#responseDataStarted = true;
        this.#primaryHandler.onResponseData?.(controller, chunk);
        for (const waitingHandler of this.#waitingHandlers) {
          const { handler: handler77, controller: waitingController } = waitingHandler;
          if (waitingHandler.done || waitingController.aborted) {
            waitingHandler.done = true;
            continue;
          }
          if (waitingController.paused) {
            this.#bufferWaitingChunk(waitingHandler, chunk);
            continue;
          }
          try {
            handler77.onResponseData?.(waitingController, chunk);
          } catch {
          }
          if (waitingController.aborted) {
            waitingHandler.done = true;
            waitingHandler.bufferedChunks = [];
            waitingHandler.bufferedBytes = 0;
          }
        }
        this.#pruneDoneWaitingHandlers();
      }
      /**
       * @param {import('../../types/dispatcher.d.ts').default.DispatchController} controller
       * @param {object} trailers
       */
      onResponseEnd(controller, trailers) {
        if (this.#aborted || this.#completed) {
          return;
        }
        this.#completed = true;
        this.#primaryHandler.onResponseEnd?.(controller, trailers);
        for (const waitingHandler of this.#waitingHandlers) {
          if (waitingHandler.done || waitingHandler.controller.aborted) {
            waitingHandler.done = true;
            continue;
          }
          this.#flushWaitingHandler(waitingHandler);
          if (waitingHandler.done || waitingHandler.controller.aborted) {
            waitingHandler.done = true;
            continue;
          }
          if (waitingHandler.controller.paused && waitingHandler.bufferedChunks.length > 0) {
            waitingHandler.pendingTrailers = trailers;
            continue;
          }
          try {
            waitingHandler.handler.onResponseEnd?.(waitingHandler.controller, trailers);
          } catch {
          }
          waitingHandler.done = true;
        }
        this.#pruneDoneWaitingHandlers();
        this.#onComplete?.();
      }
      /**
       * @param {import('../../types/dispatcher.d.ts').default.DispatchController} controller
       * @param {Error} err
       */
      onResponseError(controller, err) {
        if (this.#completed) {
          return;
        }
        this.#aborted = true;
        this.#completed = true;
        this.#primaryHandler.onResponseError?.(controller, err);
        for (const waitingHandler of this.#waitingHandlers) {
          this.#errorWaitingHandler(waitingHandler, err);
        }
        this.#waitingHandlers = [];
        this.#onComplete?.();
      }
      /**
       * @param {DispatchHandler} handler
       * @returns {WaitingHandler}
       */
      #createWaitingHandler(handler77) {
        const waitingHandler = {
          handler: handler77,
          controller: null,
          bufferedChunks: [],
          bufferedBytes: 0,
          pendingTrailers: null,
          done: false
        };
        const state = {
          aborted: false,
          paused: false,
          reason: null
        };
        waitingHandler.controller = {
          resume: () => {
            if (state.aborted) {
              return;
            }
            state.paused = false;
            this.#flushWaitingHandler(waitingHandler);
            if (this.#completed && waitingHandler.pendingTrailers && waitingHandler.bufferedChunks.length === 0 && !state.paused && !state.aborted) {
              try {
                waitingHandler.handler.onResponseEnd?.(waitingHandler.controller, waitingHandler.pendingTrailers);
              } catch {
              }
              waitingHandler.pendingTrailers = null;
              waitingHandler.done = true;
            }
            this.#pruneDoneWaitingHandlers();
          },
          pause: () => {
            if (!state.aborted) {
              state.paused = true;
            }
          },
          get paused() {
            return state.paused;
          },
          get aborted() {
            return state.aborted;
          },
          get reason() {
            return state.reason;
          },
          abort: (reason) => {
            state.aborted = true;
            state.reason = reason ?? null;
            waitingHandler.done = true;
            waitingHandler.pendingTrailers = null;
            waitingHandler.bufferedChunks = [];
            waitingHandler.bufferedBytes = 0;
          }
        };
        return waitingHandler;
      }
      /**
       * @param {WaitingHandler} waitingHandler
       * @param {Buffer} chunk
       */
      #bufferWaitingChunk(waitingHandler, chunk) {
        if (waitingHandler.done || waitingHandler.controller.aborted) {
          waitingHandler.done = true;
          waitingHandler.bufferedChunks = [];
          waitingHandler.bufferedBytes = 0;
          return;
        }
        const bufferedChunk = Buffer.from(chunk);
        waitingHandler.bufferedChunks.push(bufferedChunk);
        waitingHandler.bufferedBytes += bufferedChunk.length;
        if (waitingHandler.bufferedBytes > this.#maxBufferSize) {
          const err = new RequestAbortedError(`Deduplicated waiting handler exceeded maxBufferSize (${this.#maxBufferSize} bytes) while paused`);
          this.#errorWaitingHandler(waitingHandler, err);
        }
      }
      /**
       * @param {WaitingHandler} waitingHandler
       */
      #flushWaitingHandler(waitingHandler) {
        const { handler: handler77, controller } = waitingHandler;
        while (!waitingHandler.done && !controller.aborted && !controller.paused && waitingHandler.bufferedChunks.length > 0) {
          const bufferedChunk = waitingHandler.bufferedChunks.shift();
          waitingHandler.bufferedBytes -= bufferedChunk.length;
          try {
            handler77.onResponseData?.(controller, bufferedChunk);
          } catch {
          }
          if (controller.aborted) {
            waitingHandler.done = true;
            waitingHandler.pendingTrailers = null;
            waitingHandler.bufferedChunks = [];
            waitingHandler.bufferedBytes = 0;
            break;
          }
        }
      }
      /**
       * @param {WaitingHandler} waitingHandler
       * @param {Error} err
       */
      #errorWaitingHandler(waitingHandler, err) {
        if (waitingHandler.done) {
          return;
        }
        waitingHandler.done = true;
        waitingHandler.pendingTrailers = null;
        waitingHandler.bufferedChunks = [];
        waitingHandler.bufferedBytes = 0;
        try {
          waitingHandler.controller.abort(err);
          waitingHandler.handler.onResponseError?.(waitingHandler.controller, err);
        } catch {
        }
      }
      #pruneDoneWaitingHandlers() {
        this.#waitingHandlers = this.#waitingHandlers.filter((waitingHandler) => waitingHandler.done === false);
      }
    };
    module2.exports = DeduplicationHandler;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/interceptor/deduplicate.js
var require_deduplicate = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/interceptor/deduplicate.js"(exports2, module2) {
    "use strict";
    var diagnosticsChannel = __require("node:diagnostics_channel");
    var util56 = require_util6();
    var DeduplicationHandler = require_deduplication_handler();
    var { normalizeHeaders, makeCacheKey, makeDeduplicationKey } = require_cache();
    var pendingRequestsChannel = diagnosticsChannel.channel("undici:request:pending-requests");
    module2.exports = (opts2 = {}) => {
      const {
        methods = ["GET"],
        skipHeaderNames = [],
        excludeHeaderNames = [],
        maxBufferSize = 5 * 1024 * 1024
      } = opts2;
      if (typeof opts2 !== "object" || opts2 === null) {
        throw new TypeError(`expected type of opts to be an Object, got ${opts2 === null ? "null" : typeof opts2}`);
      }
      if (!Array.isArray(methods)) {
        throw new TypeError(`expected opts.methods to be an array, got ${typeof methods}`);
      }
      for (const method of methods) {
        if (!util56.safeHTTPMethods.includes(method)) {
          throw new TypeError(`expected opts.methods to only contain safe HTTP methods, got ${method}`);
        }
      }
      if (!Array.isArray(skipHeaderNames)) {
        throw new TypeError(`expected opts.skipHeaderNames to be an array, got ${typeof skipHeaderNames}`);
      }
      if (!Array.isArray(excludeHeaderNames)) {
        throw new TypeError(`expected opts.excludeHeaderNames to be an array, got ${typeof excludeHeaderNames}`);
      }
      if (!Number.isFinite(maxBufferSize) || maxBufferSize <= 0) {
        throw new TypeError(`expected opts.maxBufferSize to be a positive finite number, got ${maxBufferSize}`);
      }
      const skipHeaderNamesSet = new Set(skipHeaderNames.map((name) => name.toLowerCase()));
      const excludeHeaderNamesSet = new Set(excludeHeaderNames.map((name) => name.toLowerCase()));
      const pendingRequests = /* @__PURE__ */ new Map();
      return (dispatch) => {
        return (opts3, handler77) => {
          if (!opts3.origin || methods.includes(opts3.method) === false) {
            return dispatch(opts3, handler77);
          }
          opts3 = {
            ...opts3,
            headers: normalizeHeaders(opts3)
          };
          if (skipHeaderNamesSet.size > 0) {
            for (const headerName of Object.keys(opts3.headers)) {
              if (skipHeaderNamesSet.has(headerName.toLowerCase())) {
                return dispatch(opts3, handler77);
              }
            }
          }
          const cacheKey = makeCacheKey(opts3);
          const dedupeKey = makeDeduplicationKey(cacheKey, excludeHeaderNamesSet);
          const pendingHandler = pendingRequests.get(dedupeKey);
          if (pendingHandler) {
            if (pendingHandler.addWaitingHandler(handler77)) {
              return true;
            }
            return dispatch(opts3, handler77);
          }
          const deduplicationHandler = new DeduplicationHandler(
            handler77,
            () => {
              pendingRequests.delete(dedupeKey);
              if (pendingRequestsChannel.hasSubscribers) {
                pendingRequestsChannel.publish({ size: pendingRequests.size, key: dedupeKey, type: "removed" });
              }
            },
            maxBufferSize
          );
          pendingRequests.set(dedupeKey, deduplicationHandler);
          if (pendingRequestsChannel.hasSubscribers) {
            pendingRequestsChannel.publish({ size: pendingRequests.size, key: dedupeKey, type: "added" });
          }
          return dispatch(opts3, deduplicationHandler);
        };
      };
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/cache/sqlite-cache-store.js
var require_sqlite_cache_store = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/cache/sqlite-cache-store.js"(exports2, module2) {
    "use strict";
    var { Writable: Writable4 } = __require("node:stream");
    var { assertCacheKey, assertCacheValue } = require_cache();
    var DatabaseSync2;
    var VERSION = 3;
    var MAX_ENTRY_SIZE = 2 * 1e3 * 1e3 * 1e3;
    module2.exports = class SqliteCacheStore {
      #maxEntrySize = MAX_ENTRY_SIZE;
      #maxCount = Infinity;
      /**
       * @type {import('node:sqlite').DatabaseSync}
       */
      #db;
      /**
       * @type {import('node:sqlite').StatementSync}
       */
      #getValuesQuery;
      /**
       * @type {import('node:sqlite').StatementSync}
       */
      #updateValueQuery;
      /**
       * @type {import('node:sqlite').StatementSync}
       */
      #insertValueQuery;
      /**
       * @type {import('node:sqlite').StatementSync}
       */
      #deleteExpiredValuesQuery;
      /**
       * @type {import('node:sqlite').StatementSync}
       */
      #deleteByUrlQuery;
      /**
       * @type {import('node:sqlite').StatementSync}
       */
      #countEntriesQuery;
      /**
       * @type {import('node:sqlite').StatementSync | null}
       */
      #deleteOldValuesQuery;
      /**
       * @param {import('../../types/cache-interceptor.d.ts').default.SqliteCacheStoreOpts | undefined} opts
       */
      constructor(opts2) {
        if (opts2) {
          if (typeof opts2 !== "object") {
            throw new TypeError("SqliteCacheStore options must be an object");
          }
          if (opts2.maxEntrySize !== void 0) {
            if (typeof opts2.maxEntrySize !== "number" || !Number.isInteger(opts2.maxEntrySize) || opts2.maxEntrySize < 0) {
              throw new TypeError("SqliteCacheStore options.maxEntrySize must be a non-negative integer");
            }
            if (opts2.maxEntrySize > MAX_ENTRY_SIZE) {
              throw new TypeError("SqliteCacheStore options.maxEntrySize must be less than 2gb");
            }
            this.#maxEntrySize = opts2.maxEntrySize;
          }
          if (opts2.maxCount !== void 0) {
            if (typeof opts2.maxCount !== "number" || !Number.isInteger(opts2.maxCount) || opts2.maxCount < 0) {
              throw new TypeError("SqliteCacheStore options.maxCount must be a non-negative integer");
            }
            this.#maxCount = opts2.maxCount;
          }
        }
        if (!DatabaseSync2) {
          DatabaseSync2 = __require("node:sqlite").DatabaseSync;
        }
        this.#db = new DatabaseSync2(opts2?.location ?? ":memory:");
        this.#db.exec(`
      PRAGMA journal_mode = WAL;
      PRAGMA synchronous = NORMAL;
      PRAGMA temp_store = memory;
      PRAGMA optimize;

      CREATE TABLE IF NOT EXISTS cacheInterceptorV${VERSION} (
        -- Data specific to us
        id INTEGER PRIMARY KEY AUTOINCREMENT,
        url TEXT NOT NULL,
        method TEXT NOT NULL,

        -- Data returned to the interceptor
        body BUF NULL,
        deleteAt INTEGER NOT NULL,
        statusCode INTEGER NOT NULL,
        statusMessage TEXT NOT NULL,
        headers TEXT NULL,
        cacheControlDirectives TEXT NULL,
        etag TEXT NULL,
        vary TEXT NULL,
        cachedAt INTEGER NOT NULL,
        staleAt INTEGER NOT NULL
      );

      CREATE INDEX IF NOT EXISTS idx_cacheInterceptorV${VERSION}_getValuesQuery ON cacheInterceptorV${VERSION}(url, method, deleteAt);
      CREATE INDEX IF NOT EXISTS idx_cacheInterceptorV${VERSION}_deleteByUrlQuery ON cacheInterceptorV${VERSION}(deleteAt);
    `);
        this.#getValuesQuery = this.#db.prepare(`
      SELECT
        id,
        body,
        deleteAt,
        statusCode,
        statusMessage,
        headers,
        etag,
        cacheControlDirectives,
        vary,
        cachedAt,
        staleAt
      FROM cacheInterceptorV${VERSION}
      WHERE
        url = ?
        AND method = ?
      ORDER BY
        deleteAt ASC
    `);
        this.#updateValueQuery = this.#db.prepare(`
      UPDATE cacheInterceptorV${VERSION} SET
        body = ?,
        deleteAt = ?,
        statusCode = ?,
        statusMessage = ?,
        headers = ?,
        etag = ?,
        cacheControlDirectives = ?,
        cachedAt = ?,
        staleAt = ?
      WHERE
        id = ?
    `);
        this.#insertValueQuery = this.#db.prepare(`
      INSERT INTO cacheInterceptorV${VERSION} (
        url,
        method,
        body,
        deleteAt,
        statusCode,
        statusMessage,
        headers,
        etag,
        cacheControlDirectives,
        vary,
        cachedAt,
        staleAt
      ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
    `);
        this.#deleteByUrlQuery = this.#db.prepare(
          `DELETE FROM cacheInterceptorV${VERSION} WHERE url = ?`
        );
        this.#countEntriesQuery = this.#db.prepare(
          `SELECT COUNT(*) AS total FROM cacheInterceptorV${VERSION}`
        );
        this.#deleteExpiredValuesQuery = this.#db.prepare(
          `DELETE FROM cacheInterceptorV${VERSION} WHERE deleteAt <= ?`
        );
        this.#deleteOldValuesQuery = this.#maxCount === Infinity ? null : this.#db.prepare(`
        DELETE FROM cacheInterceptorV${VERSION}
        WHERE id IN (
          SELECT
            id
          FROM cacheInterceptorV${VERSION}
          ORDER BY cachedAt DESC
          LIMIT ?
        )
      `);
      }
      close() {
        this.#db.close();
      }
      /**
       * @param {import('../../types/cache-interceptor.d.ts').default.CacheKey} key
       * @returns {(import('../../types/cache-interceptor.d.ts').default.GetResult & { body?: Buffer }) | undefined}
       */
      get(key) {
        assertCacheKey(key);
        const value = this.#findValue(key);
        return value ? {
          body: value.body ? Buffer.from(value.body.buffer, value.body.byteOffset, value.body.byteLength) : void 0,
          statusCode: value.statusCode,
          statusMessage: value.statusMessage,
          headers: value.headers ? JSON.parse(value.headers) : void 0,
          etag: value.etag ? value.etag : void 0,
          vary: value.vary ? JSON.parse(value.vary) : void 0,
          cacheControlDirectives: value.cacheControlDirectives ? JSON.parse(value.cacheControlDirectives) : void 0,
          cachedAt: value.cachedAt,
          staleAt: value.staleAt,
          deleteAt: value.deleteAt
        } : void 0;
      }
      /**
       * @param {import('../../types/cache-interceptor.d.ts').default.CacheKey} key
       * @param {import('../../types/cache-interceptor.d.ts').default.CacheValue & { body: null | Buffer | Array<Buffer>}} value
       */
      set(key, value) {
        assertCacheKey(key);
        const url7 = this.#makeValueUrl(key);
        const body = Array.isArray(value.body) ? Buffer.concat(value.body) : value.body;
        const size = body?.byteLength;
        if (size && size > this.#maxEntrySize) {
          return;
        }
        const existingValue = this.#findValue(key, true);
        if (existingValue) {
          this.#updateValueQuery.run(
            body,
            value.deleteAt,
            value.statusCode,
            value.statusMessage,
            value.headers ? JSON.stringify(value.headers) : null,
            value.etag ? value.etag : null,
            value.cacheControlDirectives ? JSON.stringify(value.cacheControlDirectives) : null,
            value.cachedAt,
            value.staleAt,
            existingValue.id
          );
        } else {
          this.#prune();
          this.#insertValueQuery.run(
            url7,
            key.method,
            body,
            value.deleteAt,
            value.statusCode,
            value.statusMessage,
            value.headers ? JSON.stringify(value.headers) : null,
            value.etag ? value.etag : null,
            value.cacheControlDirectives ? JSON.stringify(value.cacheControlDirectives) : null,
            value.vary ? JSON.stringify(value.vary) : null,
            value.cachedAt,
            value.staleAt
          );
        }
      }
      /**
       * @param {import('../../types/cache-interceptor.d.ts').default.CacheKey} key
       * @param {import('../../types/cache-interceptor.d.ts').default.CacheValue} value
       * @returns {Writable | undefined}
       */
      createWriteStream(key, value) {
        assertCacheKey(key);
        assertCacheValue(value);
        let size = 0;
        const body = [];
        const store = this;
        return new Writable4({
          decodeStrings: true,
          write(chunk, encoding, callback2) {
            size += chunk.byteLength;
            if (size < store.#maxEntrySize) {
              body.push(chunk);
            } else {
              this.destroy();
            }
            callback2();
          },
          final(callback2) {
            store.set(key, { ...value, body });
            callback2();
          }
        });
      }
      /**
       * @param {import('../../types/cache-interceptor.d.ts').default.CacheKey} key
       */
      delete(key) {
        if (typeof key !== "object") {
          throw new TypeError(`expected key to be object, got ${typeof key}`);
        }
        this.#deleteByUrlQuery.run(this.#makeValueUrl(key));
      }
      #prune() {
        if (Number.isFinite(this.#maxCount) && this.size <= this.#maxCount) {
          return 0;
        }
        {
          const removed = this.#deleteExpiredValuesQuery.run(Date.now()).changes;
          if (removed) {
            return removed;
          }
        }
        {
          const removed = this.#deleteOldValuesQuery?.run(Math.max(Math.floor(this.#maxCount * 0.1), 1)).changes;
          if (removed) {
            return removed;
          }
        }
        return 0;
      }
      /**
       * Counts the number of rows in the cache
       * @returns {Number}
       */
      get size() {
        const { total } = this.#countEntriesQuery.get();
        return total;
      }
      /**
       * @param {import('../../types/cache-interceptor.d.ts').default.CacheKey} key
       * @returns {string}
       */
      #makeValueUrl(key) {
        return `${key.origin}/${key.path}`;
      }
      /**
       * @param {import('../../types/cache-interceptor.d.ts').default.CacheKey} key
       * @param {boolean} [canBeExpired=false]
       * @returns {SqliteStoreValue | undefined}
       */
      #findValue(key, canBeExpired = false) {
        const url7 = this.#makeValueUrl(key);
        const { headers, method } = key;
        const values = this.#getValuesQuery.all(url7, method);
        if (values.length === 0) {
          return void 0;
        }
        const now = Date.now();
        for (const value of values) {
          if (now >= value.deleteAt && !canBeExpired) {
            return void 0;
          }
          let matches2 = true;
          if (value.vary) {
            const vary = JSON.parse(value.vary);
            for (const header in vary) {
              if (!headerValueEquals(headers[header], vary[header])) {
                matches2 = false;
                break;
              }
            }
          }
          if (matches2) {
            return value;
          }
        }
        return void 0;
      }
    };
    function headerValueEquals(lhs, rhs) {
      if (lhs == null && rhs == null) {
        return true;
      }
      if (lhs == null && rhs != null || lhs != null && rhs == null) {
        return false;
      }
      if (Array.isArray(lhs) && Array.isArray(rhs)) {
        if (lhs.length !== rhs.length) {
          return false;
        }
        return lhs.every((x, i2) => x === rhs[i2]);
      }
      return lhs === rhs;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/fetch/headers.js
var require_headers2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/fetch/headers.js"(exports2, module2) {
    "use strict";
    var { kConstruct } = require_symbols();
    var { kEnumerableProperty } = require_util6();
    var {
      iteratorMixin,
      isValidHeaderName,
      isValidHeaderValue
    } = require_util7();
    var { webidl } = require_webidl();
    var assert13 = __require("node:assert");
    var util56 = __require("node:util");
    function isHTTPWhiteSpaceCharCode(code) {
      return code === 10 || code === 13 || code === 9 || code === 32;
    }
    function headerValueNormalize(potentialValue) {
      let i2 = 0;
      let j2 = potentialValue.length;
      while (j2 > i2 && isHTTPWhiteSpaceCharCode(potentialValue.charCodeAt(j2 - 1))) --j2;
      while (j2 > i2 && isHTTPWhiteSpaceCharCode(potentialValue.charCodeAt(i2))) ++i2;
      return i2 === 0 && j2 === potentialValue.length ? potentialValue : potentialValue.substring(i2, j2);
    }
    function fill(headers, object) {
      if (Array.isArray(object)) {
        for (let i2 = 0; i2 < object.length; ++i2) {
          const header = object[i2];
          if (header.length !== 2) {
            throw webidl.errors.exception({
              header: "Headers constructor",
              message: `expected name/value pair to be length 2, found ${header.length}.`
            });
          }
          appendHeader(headers, header[0], header[1]);
        }
      } else if (typeof object === "object" && object !== null) {
        const keys4 = Object.keys(object);
        for (let i2 = 0; i2 < keys4.length; ++i2) {
          appendHeader(headers, keys4[i2], object[keys4[i2]]);
        }
      } else {
        throw webidl.errors.conversionFailed({
          prefix: "Headers constructor",
          argument: "Argument 1",
          types: ["sequence<sequence<ByteString>>", "record<ByteString, ByteString>"]
        });
      }
    }
    function appendHeader(headers, name, value) {
      value = headerValueNormalize(value);
      if (!isValidHeaderName(name)) {
        throw webidl.errors.invalidArgument({
          prefix: "Headers.append",
          value: name,
          type: "header name"
        });
      } else if (!isValidHeaderValue(value)) {
        throw webidl.errors.invalidArgument({
          prefix: "Headers.append",
          value,
          type: "header value"
        });
      }
      if (getHeadersGuard(headers) === "immutable") {
        throw new TypeError("immutable");
      }
      return getHeadersList(headers).append(name, value, false);
    }
    function headersListSortAndCombine(target2) {
      const headersList = getHeadersList(target2);
      if (!headersList) {
        return [];
      }
      if (headersList.sortedMap) {
        return headersList.sortedMap;
      }
      const headers = [];
      const names = headersList.toSortedArray();
      const cookies = headersList.cookies;
      if (cookies === null || cookies.length === 1) {
        return headersList.sortedMap = names;
      }
      for (let i2 = 0; i2 < names.length; ++i2) {
        const { 0: name, 1: value } = names[i2];
        if (name === "set-cookie") {
          for (let j2 = 0; j2 < cookies.length; ++j2) {
            headers.push([name, cookies[j2]]);
          }
        } else {
          headers.push([name, value]);
        }
      }
      return headersList.sortedMap = headers;
    }
    function compareHeaderName(a2, b) {
      return a2[0] < b[0] ? -1 : 1;
    }
    var HeadersList = class _HeadersList {
      /** @type {[string, string][]|null} */
      cookies = null;
      sortedMap;
      headersMap;
      constructor(init2) {
        if (init2 instanceof _HeadersList) {
          this.headersMap = new Map(init2.headersMap);
          this.sortedMap = init2.sortedMap;
          this.cookies = init2.cookies === null ? null : [...init2.cookies];
        } else {
          this.headersMap = new Map(init2);
          this.sortedMap = null;
        }
      }
      /**
       * @see https://fetch.spec.whatwg.org/#header-list-contains
       * @param {string} name
       * @param {boolean} isLowerCase
       */
      contains(name, isLowerCase) {
        return this.headersMap.has(isLowerCase ? name : name.toLowerCase());
      }
      clear() {
        this.headersMap.clear();
        this.sortedMap = null;
        this.cookies = null;
      }
      /**
       * @see https://fetch.spec.whatwg.org/#concept-header-list-append
       * @param {string} name
       * @param {string} value
       * @param {boolean} isLowerCase
       */
      append(name, value, isLowerCase) {
        this.sortedMap = null;
        const lowercaseName = isLowerCase ? name : name.toLowerCase();
        const exists = this.headersMap.get(lowercaseName);
        if (exists) {
          const delimiter = lowercaseName === "cookie" ? "; " : ", ";
          this.headersMap.set(lowercaseName, {
            name: exists.name,
            value: `${exists.value}${delimiter}${value}`
          });
        } else {
          this.headersMap.set(lowercaseName, { name, value });
        }
        if (lowercaseName === "set-cookie") {
          (this.cookies ??= []).push(value);
        }
      }
      /**
       * @see https://fetch.spec.whatwg.org/#concept-header-list-set
       * @param {string} name
       * @param {string} value
       * @param {boolean} isLowerCase
       */
      set(name, value, isLowerCase) {
        this.sortedMap = null;
        const lowercaseName = isLowerCase ? name : name.toLowerCase();
        if (lowercaseName === "set-cookie") {
          this.cookies = [value];
        }
        this.headersMap.set(lowercaseName, { name, value });
      }
      /**
       * @see https://fetch.spec.whatwg.org/#concept-header-list-delete
       * @param {string} name
       * @param {boolean} isLowerCase
       */
      delete(name, isLowerCase) {
        this.sortedMap = null;
        if (!isLowerCase) name = name.toLowerCase();
        if (name === "set-cookie") {
          this.cookies = null;
        }
        this.headersMap.delete(name);
      }
      /**
       * @see https://fetch.spec.whatwg.org/#concept-header-list-get
       * @param {string} name
       * @param {boolean} isLowerCase
       * @returns {string | null}
       */
      get(name, isLowerCase) {
        return this.headersMap.get(isLowerCase ? name : name.toLowerCase())?.value ?? null;
      }
      *[Symbol.iterator]() {
        for (const { 0: name, 1: { value } } of this.headersMap) {
          yield [name, value];
        }
      }
      get entries() {
        const headers = {};
        if (this.headersMap.size !== 0) {
          for (const { name, value } of this.headersMap.values()) {
            headers[name] = value;
          }
        }
        return headers;
      }
      rawValues() {
        return this.headersMap.values();
      }
      get entriesList() {
        const headers = [];
        if (this.headersMap.size !== 0) {
          for (const { 0: lowerName, 1: { name, value } } of this.headersMap) {
            if (lowerName === "set-cookie") {
              for (const cookie of this.cookies) {
                headers.push([name, cookie]);
              }
            } else {
              headers.push([name, value]);
            }
          }
        }
        return headers;
      }
      // https://fetch.spec.whatwg.org/#convert-header-names-to-a-sorted-lowercase-set
      toSortedArray() {
        const size = this.headersMap.size;
        const array = new Array(size);
        if (size <= 32) {
          if (size === 0) {
            return array;
          }
          const iterator = this.headersMap[Symbol.iterator]();
          const firstValue = iterator.next().value;
          array[0] = [firstValue[0], firstValue[1].value];
          assert13(firstValue[1].value !== null);
          for (let i2 = 1, j2 = 0, right = 0, left = 0, pivot = 0, x, value; i2 < size; ++i2) {
            value = iterator.next().value;
            x = array[i2] = [value[0], value[1].value];
            assert13(x[1] !== null);
            left = 0;
            right = i2;
            while (left < right) {
              pivot = left + (right - left >> 1);
              if (array[pivot][0] <= x[0]) {
                left = pivot + 1;
              } else {
                right = pivot;
              }
            }
            if (i2 !== pivot) {
              j2 = i2;
              while (j2 > left) {
                array[j2] = array[--j2];
              }
              array[left] = x;
            }
          }
          if (!iterator.next().done) {
            throw new TypeError("Unreachable");
          }
          return array;
        } else {
          let i2 = 0;
          for (const { 0: name, 1: { value } } of this.headersMap) {
            array[i2++] = [name, value];
            assert13(value !== null);
          }
          return array.sort(compareHeaderName);
        }
      }
    };
    var Headers2 = class _Headers {
      #guard;
      /**
       * @type {HeadersList}
       */
      #headersList;
      /**
       * @param {HeadersInit|Symbol} [init]
       * @returns
       */
      constructor(init2 = void 0) {
        webidl.util.markAsUncloneable(this);
        if (init2 === kConstruct) {
          return;
        }
        this.#headersList = new HeadersList();
        this.#guard = "none";
        if (init2 !== void 0) {
          init2 = webidl.converters.HeadersInit(init2, "Headers constructor", "init");
          fill(this, init2);
        }
      }
      // https://fetch.spec.whatwg.org/#dom-headers-append
      append(name, value) {
        webidl.brandCheck(this, _Headers);
        webidl.argumentLengthCheck(arguments, 2, "Headers.append");
        const prefix = "Headers.append";
        name = webidl.converters.ByteString(name, prefix, "name");
        value = webidl.converters.ByteString(value, prefix, "value");
        return appendHeader(this, name, value);
      }
      // https://fetch.spec.whatwg.org/#dom-headers-delete
      delete(name) {
        webidl.brandCheck(this, _Headers);
        webidl.argumentLengthCheck(arguments, 1, "Headers.delete");
        const prefix = "Headers.delete";
        name = webidl.converters.ByteString(name, prefix, "name");
        if (!isValidHeaderName(name)) {
          throw webidl.errors.invalidArgument({
            prefix: "Headers.delete",
            value: name,
            type: "header name"
          });
        }
        if (this.#guard === "immutable") {
          throw new TypeError("immutable");
        }
        if (!this.#headersList.contains(name, false)) {
          return;
        }
        this.#headersList.delete(name, false);
      }
      // https://fetch.spec.whatwg.org/#dom-headers-get
      get(name) {
        webidl.brandCheck(this, _Headers);
        webidl.argumentLengthCheck(arguments, 1, "Headers.get");
        const prefix = "Headers.get";
        name = webidl.converters.ByteString(name, prefix, "name");
        if (!isValidHeaderName(name)) {
          throw webidl.errors.invalidArgument({
            prefix,
            value: name,
            type: "header name"
          });
        }
        return this.#headersList.get(name, false);
      }
      // https://fetch.spec.whatwg.org/#dom-headers-has
      has(name) {
        webidl.brandCheck(this, _Headers);
        webidl.argumentLengthCheck(arguments, 1, "Headers.has");
        const prefix = "Headers.has";
        name = webidl.converters.ByteString(name, prefix, "name");
        if (!isValidHeaderName(name)) {
          throw webidl.errors.invalidArgument({
            prefix,
            value: name,
            type: "header name"
          });
        }
        return this.#headersList.contains(name, false);
      }
      // https://fetch.spec.whatwg.org/#dom-headers-set
      set(name, value) {
        webidl.brandCheck(this, _Headers);
        webidl.argumentLengthCheck(arguments, 2, "Headers.set");
        const prefix = "Headers.set";
        name = webidl.converters.ByteString(name, prefix, "name");
        value = webidl.converters.ByteString(value, prefix, "value");
        value = headerValueNormalize(value);
        if (!isValidHeaderName(name)) {
          throw webidl.errors.invalidArgument({
            prefix,
            value: name,
            type: "header name"
          });
        } else if (!isValidHeaderValue(value)) {
          throw webidl.errors.invalidArgument({
            prefix,
            value,
            type: "header value"
          });
        }
        if (this.#guard === "immutable") {
          throw new TypeError("immutable");
        }
        this.#headersList.set(name, value, false);
      }
      // https://fetch.spec.whatwg.org/#dom-headers-getsetcookie
      getSetCookie() {
        webidl.brandCheck(this, _Headers);
        const list2 = this.#headersList.cookies;
        if (list2) {
          return [...list2];
        }
        return [];
      }
      [util56.inspect.custom](depth, options) {
        options.depth ??= depth;
        return `Headers ${util56.formatWithOptions(options, this.#headersList.entries)}`;
      }
      static getHeadersGuard(o2) {
        return o2.#guard;
      }
      static setHeadersGuard(o2, guard) {
        o2.#guard = guard;
      }
      /**
       * @param {Headers} o
       */
      static getHeadersList(o2) {
        return o2.#headersList;
      }
      /**
       * @param {Headers} target
       * @param {HeadersList} list
       */
      static setHeadersList(target2, list2) {
        target2.#headersList = list2;
      }
    };
    var { getHeadersGuard, setHeadersGuard, getHeadersList, setHeadersList } = Headers2;
    Reflect.deleteProperty(Headers2, "getHeadersGuard");
    Reflect.deleteProperty(Headers2, "setHeadersGuard");
    Reflect.deleteProperty(Headers2, "getHeadersList");
    Reflect.deleteProperty(Headers2, "setHeadersList");
    iteratorMixin("Headers", Headers2, headersListSortAndCombine, 0, 1);
    Object.defineProperties(Headers2.prototype, {
      append: kEnumerableProperty,
      delete: kEnumerableProperty,
      get: kEnumerableProperty,
      has: kEnumerableProperty,
      set: kEnumerableProperty,
      getSetCookie: kEnumerableProperty,
      [Symbol.toStringTag]: {
        value: "Headers",
        configurable: true
      },
      [util56.inspect.custom]: {
        enumerable: false
      }
    });
    webidl.converters.HeadersInit = function(V, prefix, argument) {
      if (webidl.util.Type(V) === webidl.util.Types.OBJECT) {
        const iterator = Reflect.get(V, Symbol.iterator);
        if (!util56.types.isProxy(V) && iterator === Headers2.prototype.entries) {
          try {
            return getHeadersList(V).entriesList;
          } catch {
          }
        }
        if (typeof iterator === "function") {
          return webidl.converters["sequence<sequence<ByteString>>"](V, prefix, argument, iterator.bind(V));
        }
        return webidl.converters["record<ByteString, ByteString>"](V, prefix, argument);
      }
      throw webidl.errors.conversionFailed({
        prefix: "Headers constructor",
        argument: "Argument 1",
        types: ["sequence<sequence<ByteString>>", "record<ByteString, ByteString>"]
      });
    };
    module2.exports = {
      fill,
      // for test.
      compareHeaderName,
      Headers: Headers2,
      HeadersList,
      getHeadersGuard,
      setHeadersGuard,
      setHeadersList,
      getHeadersList
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/fetch/response.js
var require_response = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/fetch/response.js"(exports2, module2) {
    "use strict";
    var { Headers: Headers2, HeadersList, fill, getHeadersGuard, setHeadersGuard, setHeadersList } = require_headers2();
    var { extractBody, cloneBody, mixinBody, streamRegistry, bodyUnusable } = require_body();
    var util56 = require_util6();
    var nodeUtil = __require("node:util");
    var { kEnumerableProperty } = util56;
    var {
      isValidReasonPhrase,
      isCancelled,
      isAborted,
      isErrorLike,
      environmentSettingsObject: relevantRealm
    } = require_util7();
    var {
      redirectStatusSet,
      nullBodyStatus
    } = require_constants14();
    var { webidl } = require_webidl();
    var { URLSerializer } = require_data_url();
    var { kConstruct } = require_symbols();
    var assert13 = __require("node:assert");
    var { isomorphicEncode, serializeJavascriptValueToJSONString } = require_infra();
    var textEncoder5 = new TextEncoder("utf-8");
    var Response = class _Response {
      /** @type {Headers} */
      #headers;
      #state;
      // Creates network error Response.
      static error() {
        const responseObject = fromInnerResponse(makeNetworkError(), "immutable");
        return responseObject;
      }
      // https://fetch.spec.whatwg.org/#dom-response-json
      static json(data, init2 = void 0) {
        webidl.argumentLengthCheck(arguments, 1, "Response.json");
        if (init2 !== null) {
          init2 = webidl.converters.ResponseInit(init2);
        }
        const bytes = textEncoder5.encode(
          serializeJavascriptValueToJSONString(data)
        );
        const body = extractBody(bytes);
        const responseObject = fromInnerResponse(makeResponse({}), "response");
        initializeResponse(responseObject, init2, { body: body[0], type: "application/json" });
        return responseObject;
      }
      // Creates a redirect Response that redirects to url with status status.
      static redirect(url7, status = 302) {
        webidl.argumentLengthCheck(arguments, 1, "Response.redirect");
        url7 = webidl.converters.USVString(url7);
        status = webidl.converters["unsigned short"](status);
        let parsedURL;
        try {
          parsedURL = new URL(url7, relevantRealm.settingsObject.baseUrl);
        } catch (err) {
          throw new TypeError(`Failed to parse URL from ${url7}`, { cause: err });
        }
        if (!redirectStatusSet.has(status)) {
          throw new RangeError(`Invalid status code ${status}`);
        }
        const responseObject = fromInnerResponse(makeResponse({}), "immutable");
        responseObject.#state.status = status;
        const value = isomorphicEncode(URLSerializer(parsedURL));
        responseObject.#state.headersList.append("location", value, true);
        return responseObject;
      }
      // https://fetch.spec.whatwg.org/#dom-response
      constructor(body = null, init2 = void 0) {
        webidl.util.markAsUncloneable(this);
        if (body === kConstruct) {
          return;
        }
        if (body !== null) {
          body = webidl.converters.BodyInit(body, "Response", "body");
        }
        init2 = webidl.converters.ResponseInit(init2);
        this.#state = makeResponse({});
        this.#headers = new Headers2(kConstruct);
        setHeadersGuard(this.#headers, "response");
        setHeadersList(this.#headers, this.#state.headersList);
        let bodyWithType = null;
        if (body != null) {
          const [extractedBody, type4] = extractBody(body);
          bodyWithType = { body: extractedBody, type: type4 };
        }
        initializeResponse(this, init2, bodyWithType);
      }
      // Returns response’s type, e.g., "cors".
      get type() {
        webidl.brandCheck(this, _Response);
        return this.#state.type;
      }
      // Returns response’s URL, if it has one; otherwise the empty string.
      get url() {
        webidl.brandCheck(this, _Response);
        const urlList = this.#state.urlList;
        const url7 = urlList[urlList.length - 1] ?? null;
        if (url7 === null) {
          return "";
        }
        return URLSerializer(url7, true);
      }
      // Returns whether response was obtained through a redirect.
      get redirected() {
        webidl.brandCheck(this, _Response);
        return this.#state.urlList.length > 1;
      }
      // Returns response’s status.
      get status() {
        webidl.brandCheck(this, _Response);
        return this.#state.status;
      }
      // Returns whether response’s status is an ok status.
      get ok() {
        webidl.brandCheck(this, _Response);
        return this.#state.status >= 200 && this.#state.status <= 299;
      }
      // Returns response’s status message.
      get statusText() {
        webidl.brandCheck(this, _Response);
        return this.#state.statusText;
      }
      // Returns response’s headers as Headers.
      get headers() {
        webidl.brandCheck(this, _Response);
        return this.#headers;
      }
      get body() {
        webidl.brandCheck(this, _Response);
        return this.#state.body ? this.#state.body.stream : null;
      }
      get bodyUsed() {
        webidl.brandCheck(this, _Response);
        return !!this.#state.body && util56.isDisturbed(this.#state.body.stream);
      }
      // Returns a clone of response.
      clone() {
        webidl.brandCheck(this, _Response);
        if (bodyUnusable(this.#state)) {
          throw webidl.errors.exception({
            header: "Response.clone",
            message: "Body has already been consumed."
          });
        }
        const clonedResponse = cloneResponse(this.#state);
        if (this.#state.urlList.length !== 0 && this.#state.body?.stream) {
          streamRegistry.register(this, new WeakRef(this.#state.body.stream));
        }
        return fromInnerResponse(clonedResponse, getHeadersGuard(this.#headers));
      }
      [nodeUtil.inspect.custom](depth, options) {
        if (options.depth === null) {
          options.depth = 2;
        }
        options.colors ??= true;
        const properties = {
          status: this.status,
          statusText: this.statusText,
          headers: this.headers,
          body: this.body,
          bodyUsed: this.bodyUsed,
          ok: this.ok,
          redirected: this.redirected,
          type: this.type,
          url: this.url
        };
        return `Response ${nodeUtil.formatWithOptions(options, properties)}`;
      }
      /**
       * @param {Response} response
       */
      static getResponseHeaders(response) {
        return response.#headers;
      }
      /**
       * @param {Response} response
       * @param {Headers} newHeaders
       */
      static setResponseHeaders(response, newHeaders) {
        response.#headers = newHeaders;
      }
      /**
       * @param {Response} response
       */
      static getResponseState(response) {
        return response.#state;
      }
      /**
       * @param {Response} response
       * @param {any} newState
       */
      static setResponseState(response, newState) {
        response.#state = newState;
      }
    };
    var { getResponseHeaders, setResponseHeaders, getResponseState, setResponseState } = Response;
    Reflect.deleteProperty(Response, "getResponseHeaders");
    Reflect.deleteProperty(Response, "setResponseHeaders");
    Reflect.deleteProperty(Response, "getResponseState");
    Reflect.deleteProperty(Response, "setResponseState");
    mixinBody(Response, getResponseState);
    Object.defineProperties(Response.prototype, {
      type: kEnumerableProperty,
      url: kEnumerableProperty,
      status: kEnumerableProperty,
      ok: kEnumerableProperty,
      redirected: kEnumerableProperty,
      statusText: kEnumerableProperty,
      headers: kEnumerableProperty,
      clone: kEnumerableProperty,
      body: kEnumerableProperty,
      bodyUsed: kEnumerableProperty,
      [Symbol.toStringTag]: {
        value: "Response",
        configurable: true
      }
    });
    Object.defineProperties(Response, {
      json: kEnumerableProperty,
      redirect: kEnumerableProperty,
      error: kEnumerableProperty
    });
    function cloneResponse(response) {
      if (response.internalResponse) {
        return filterResponse(
          cloneResponse(response.internalResponse),
          response.type
        );
      }
      const newResponse = makeResponse({ ...response, body: null });
      if (response.body != null) {
        newResponse.body = cloneBody(response.body);
      }
      return newResponse;
    }
    function makeResponse(init2) {
      return {
        aborted: false,
        rangeRequested: false,
        timingAllowPassed: false,
        requestIncludesCredentials: false,
        type: "default",
        status: 200,
        timingInfo: null,
        cacheState: "",
        statusText: "",
        ...init2,
        headersList: init2?.headersList ? new HeadersList(init2?.headersList) : new HeadersList(),
        urlList: init2?.urlList ? [...init2.urlList] : []
      };
    }
    function makeNetworkError(reason) {
      const isError = isErrorLike(reason);
      return makeResponse({
        type: "error",
        status: 0,
        error: isError ? reason : new Error(reason ? String(reason) : reason),
        aborted: reason && reason.name === "AbortError"
      });
    }
    function isNetworkError(response) {
      return (
        // A network error is a response whose type is "error",
        response.type === "error" && // status is 0
        response.status === 0
      );
    }
    function makeFilteredResponse(response, state) {
      state = {
        internalResponse: response,
        ...state
      };
      return new Proxy(response, {
        get(target2, p) {
          return p in state ? state[p] : target2[p];
        },
        set(target2, p, value) {
          assert13(!(p in state));
          target2[p] = value;
          return true;
        }
      });
    }
    function filterResponse(response, type4) {
      if (type4 === "basic") {
        return makeFilteredResponse(response, {
          type: "basic",
          headersList: response.headersList
        });
      } else if (type4 === "cors") {
        return makeFilteredResponse(response, {
          type: "cors",
          headersList: response.headersList
        });
      } else if (type4 === "opaque") {
        return makeFilteredResponse(response, {
          type: "opaque",
          urlList: [],
          status: 0,
          statusText: "",
          body: null
        });
      } else if (type4 === "opaqueredirect") {
        return makeFilteredResponse(response, {
          type: "opaqueredirect",
          status: 0,
          statusText: "",
          headersList: [],
          body: null
        });
      } else {
        assert13(false);
      }
    }
    function makeAppropriateNetworkError(fetchParams, err = null) {
      assert13(isCancelled(fetchParams));
      return isAborted(fetchParams) ? makeNetworkError(Object.assign(new DOMException("The operation was aborted.", "AbortError"), { cause: err })) : makeNetworkError(Object.assign(new DOMException("Request was cancelled."), { cause: err }));
    }
    function initializeResponse(response, init2, body) {
      if (init2.status !== null && (init2.status < 200 || init2.status > 599)) {
        throw new RangeError('init["status"] must be in the range of 200 to 599, inclusive.');
      }
      if ("statusText" in init2 && init2.statusText != null) {
        if (!isValidReasonPhrase(String(init2.statusText))) {
          throw new TypeError("Invalid statusText");
        }
      }
      if ("status" in init2 && init2.status != null) {
        getResponseState(response).status = init2.status;
      }
      if ("statusText" in init2 && init2.statusText != null) {
        getResponseState(response).statusText = init2.statusText;
      }
      if ("headers" in init2 && init2.headers != null) {
        fill(getResponseHeaders(response), init2.headers);
      }
      if (body) {
        if (nullBodyStatus.includes(response.status)) {
          throw webidl.errors.exception({
            header: "Response constructor",
            message: `Invalid response status code ${response.status}`
          });
        }
        getResponseState(response).body = body.body;
        if (body.type != null && !getResponseState(response).headersList.contains("content-type", true)) {
          getResponseState(response).headersList.append("content-type", body.type, true);
        }
      }
    }
    function fromInnerResponse(innerResponse, guard) {
      const response = new Response(kConstruct);
      setResponseState(response, innerResponse);
      const headers = new Headers2(kConstruct);
      setResponseHeaders(response, headers);
      setHeadersList(headers, innerResponse.headersList);
      setHeadersGuard(headers, guard);
      if (innerResponse.urlList.length !== 0 && innerResponse.body?.stream) {
        streamRegistry.register(response, new WeakRef(innerResponse.body.stream));
      }
      return response;
    }
    webidl.converters.XMLHttpRequestBodyInit = function(V, prefix, name) {
      if (typeof V === "string") {
        return webidl.converters.USVString(V, prefix, name);
      }
      if (webidl.is.Blob(V)) {
        return V;
      }
      if (webidl.is.BufferSource(V)) {
        return V;
      }
      if (webidl.is.FormData(V)) {
        return V;
      }
      if (webidl.is.URLSearchParams(V)) {
        return V;
      }
      return webidl.converters.DOMString(V, prefix, name);
    };
    webidl.converters.BodyInit = function(V, prefix, argument) {
      if (webidl.is.ReadableStream(V)) {
        return V;
      }
      if (V?.[Symbol.asyncIterator]) {
        return V;
      }
      return webidl.converters.XMLHttpRequestBodyInit(V, prefix, argument);
    };
    webidl.converters.ResponseInit = webidl.dictionaryConverter([
      {
        key: "status",
        converter: webidl.converters["unsigned short"],
        defaultValue: () => 200
      },
      {
        key: "statusText",
        converter: webidl.converters.ByteString,
        defaultValue: () => ""
      },
      {
        key: "headers",
        converter: webidl.converters.HeadersInit
      }
    ]);
    webidl.is.Response = webidl.util.MakeTypeAssertion(Response);
    module2.exports = {
      isNetworkError,
      makeNetworkError,
      makeResponse,
      makeAppropriateNetworkError,
      filterResponse,
      Response,
      cloneResponse,
      fromInnerResponse,
      getResponseState
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/fetch/request.js
var require_request2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/fetch/request.js"(exports2, module2) {
    "use strict";
    var { extractBody, mixinBody, cloneBody, bodyUnusable } = require_body();
    var { Headers: Headers2, fill: fillHeaders, HeadersList, setHeadersGuard, getHeadersGuard, setHeadersList, getHeadersList } = require_headers2();
    var util56 = require_util6();
    var nodeUtil = __require("node:util");
    var {
      isValidHTTPToken,
      sameOrigin,
      environmentSettingsObject
    } = require_util7();
    var {
      forbiddenMethodsSet,
      corsSafeListedMethodsSet,
      referrerPolicy,
      requestRedirect,
      requestMode,
      requestCredentials,
      requestCache,
      requestDuplex
    } = require_constants14();
    var { kEnumerableProperty, normalizedMethodRecordsBase, normalizedMethodRecords } = util56;
    var { webidl } = require_webidl();
    var { URLSerializer } = require_data_url();
    var { kConstruct } = require_symbols();
    var assert13 = __require("node:assert");
    var { getMaxListeners, setMaxListeners: setMaxListeners2, defaultMaxListeners } = __require("node:events");
    var kAbortController = /* @__PURE__ */ Symbol("abortController");
    var requestFinalizer = new FinalizationRegistry(({ signal, abort }) => {
      signal.removeEventListener("abort", abort);
    });
    var dependentControllerMap = /* @__PURE__ */ new WeakMap();
    var abortSignalHasEventHandlerLeakWarning;
    try {
      abortSignalHasEventHandlerLeakWarning = getMaxListeners(new AbortController().signal) > 0;
    } catch {
      abortSignalHasEventHandlerLeakWarning = false;
    }
    function buildAbort(acRef) {
      return abort;
      function abort() {
        const ac = acRef.deref();
        if (ac !== void 0) {
          requestFinalizer.unregister(abort);
          this.removeEventListener("abort", abort);
          ac.abort(this.reason);
          const controllerList = dependentControllerMap.get(ac.signal);
          if (controllerList !== void 0) {
            if (controllerList.size !== 0) {
              for (const ref of controllerList) {
                const ctrl = ref.deref();
                if (ctrl !== void 0) {
                  ctrl.abort(this.reason);
                }
              }
              controllerList.clear();
            }
            dependentControllerMap.delete(ac.signal);
          }
        }
      }
    }
    var patchMethodWarning = false;
    var Request = class _Request {
      /** @type {AbortSignal} */
      #signal;
      /** @type {import('../../dispatcher/dispatcher')} */
      #dispatcher;
      /** @type {Headers} */
      #headers;
      #state;
      // https://fetch.spec.whatwg.org/#dom-request
      constructor(input, init2 = void 0) {
        webidl.util.markAsUncloneable(this);
        if (input === kConstruct) {
          return;
        }
        const prefix = "Request constructor";
        webidl.argumentLengthCheck(arguments, 1, prefix);
        input = webidl.converters.RequestInfo(input);
        init2 = webidl.converters.RequestInit(init2);
        let request = null;
        let fallbackMode = null;
        const baseUrl = environmentSettingsObject.settingsObject.baseUrl;
        let signal = null;
        if (typeof input === "string") {
          this.#dispatcher = init2.dispatcher;
          let parsedURL;
          try {
            parsedURL = new URL(input, baseUrl);
          } catch (err) {
            throw new TypeError("Failed to parse URL from " + input, { cause: err });
          }
          if (parsedURL.username || parsedURL.password) {
            throw new TypeError(
              "Request cannot be constructed from a URL that includes credentials: " + input
            );
          }
          request = makeRequest({ urlList: [parsedURL] });
          fallbackMode = "cors";
        } else {
          assert13(webidl.is.Request(input));
          request = input.#state;
          signal = input.#signal;
          this.#dispatcher = init2.dispatcher || input.#dispatcher;
        }
        const origin = environmentSettingsObject.settingsObject.origin;
        let window2 = "client";
        if (request.window?.constructor?.name === "EnvironmentSettingsObject" && sameOrigin(request.window, origin)) {
          window2 = request.window;
        }
        if (init2.window != null) {
          throw new TypeError(`'window' option '${window2}' must be null`);
        }
        if ("window" in init2) {
          window2 = "no-window";
        }
        request = makeRequest({
          // URL request’s URL.
          // undici implementation note: this is set as the first item in request's urlList in makeRequest
          // method request’s method.
          method: request.method,
          // header list A copy of request’s header list.
          // undici implementation note: headersList is cloned in makeRequest
          headersList: request.headersList,
          // unsafe-request flag Set.
          unsafeRequest: request.unsafeRequest,
          // client This’s relevant settings object.
          client: environmentSettingsObject.settingsObject,
          // window window.
          window: window2,
          // priority request’s priority.
          priority: request.priority,
          // origin request’s origin. The propagation of the origin is only significant for navigation requests
          // being handled by a service worker. In this scenario a request can have an origin that is different
          // from the current client.
          origin: request.origin,
          // referrer request’s referrer.
          referrer: request.referrer,
          // referrer policy request’s referrer policy.
          referrerPolicy: request.referrerPolicy,
          // mode request’s mode.
          mode: request.mode,
          // credentials mode request’s credentials mode.
          credentials: request.credentials,
          // cache mode request’s cache mode.
          cache: request.cache,
          // redirect mode request’s redirect mode.
          redirect: request.redirect,
          // integrity metadata request’s integrity metadata.
          integrity: request.integrity,
          // keepalive request’s keepalive.
          keepalive: request.keepalive,
          // reload-navigation flag request’s reload-navigation flag.
          reloadNavigation: request.reloadNavigation,
          // history-navigation flag request’s history-navigation flag.
          historyNavigation: request.historyNavigation,
          // URL list A clone of request’s URL list.
          urlList: [...request.urlList]
        });
        const initHasKey = Object.keys(init2).length !== 0;
        if (initHasKey) {
          if (request.mode === "navigate") {
            request.mode = "same-origin";
          }
          request.reloadNavigation = false;
          request.historyNavigation = false;
          request.origin = "client";
          request.referrer = "client";
          request.referrerPolicy = "";
          request.url = request.urlList[request.urlList.length - 1];
          request.urlList = [request.url];
        }
        if (init2.referrer !== void 0) {
          const referrer = init2.referrer;
          if (referrer === "") {
            request.referrer = "no-referrer";
          } else {
            let parsedReferrer;
            try {
              parsedReferrer = new URL(referrer, baseUrl);
            } catch (err) {
              throw new TypeError(`Referrer "${referrer}" is not a valid URL.`, { cause: err });
            }
            if (parsedReferrer.protocol === "about:" && parsedReferrer.hostname === "client" || origin && !sameOrigin(parsedReferrer, environmentSettingsObject.settingsObject.baseUrl)) {
              request.referrer = "client";
            } else {
              request.referrer = parsedReferrer;
            }
          }
        }
        if (init2.referrerPolicy !== void 0) {
          request.referrerPolicy = init2.referrerPolicy;
        }
        let mode;
        if (init2.mode !== void 0) {
          mode = init2.mode;
        } else {
          mode = fallbackMode;
        }
        if (mode === "navigate") {
          throw webidl.errors.exception({
            header: "Request constructor",
            message: "invalid request mode navigate."
          });
        }
        if (mode != null) {
          request.mode = mode;
        }
        if (init2.credentials !== void 0) {
          request.credentials = init2.credentials;
        }
        if (init2.cache !== void 0) {
          request.cache = init2.cache;
        }
        if (request.cache === "only-if-cached" && request.mode !== "same-origin") {
          throw new TypeError(
            "'only-if-cached' can be set only with 'same-origin' mode"
          );
        }
        if (init2.redirect !== void 0) {
          request.redirect = init2.redirect;
        }
        if (init2.integrity != null) {
          request.integrity = String(init2.integrity);
        }
        if (init2.keepalive !== void 0) {
          request.keepalive = Boolean(init2.keepalive);
        }
        if (init2.method !== void 0) {
          let method = init2.method;
          const mayBeNormalized = normalizedMethodRecords[method];
          if (mayBeNormalized !== void 0) {
            request.method = mayBeNormalized;
          } else {
            if (!isValidHTTPToken(method)) {
              throw new TypeError(`'${method}' is not a valid HTTP method.`);
            }
            const upperCase = method.toUpperCase();
            if (forbiddenMethodsSet.has(upperCase)) {
              throw new TypeError(`'${method}' HTTP method is unsupported.`);
            }
            method = normalizedMethodRecordsBase[upperCase] ?? method;
            request.method = method;
          }
          if (!patchMethodWarning && request.method === "patch") {
            process.emitWarning("Using `patch` is highly likely to result in a `405 Method Not Allowed`. `PATCH` is much more likely to succeed.", {
              code: "UNDICI-FETCH-patch"
            });
            patchMethodWarning = true;
          }
        }
        if (init2.signal !== void 0) {
          signal = init2.signal;
        }
        this.#state = request;
        const ac = new AbortController();
        this.#signal = ac.signal;
        if (signal != null) {
          if (signal.aborted) {
            ac.abort(signal.reason);
          } else {
            this[kAbortController] = ac;
            const acRef = new WeakRef(ac);
            const abort = buildAbort(acRef);
            if (abortSignalHasEventHandlerLeakWarning && getMaxListeners(signal) === defaultMaxListeners) {
              setMaxListeners2(1500, signal);
            }
            util56.addAbortListener(signal, abort);
            requestFinalizer.register(ac, { signal, abort }, abort);
          }
        }
        this.#headers = new Headers2(kConstruct);
        setHeadersList(this.#headers, request.headersList);
        setHeadersGuard(this.#headers, "request");
        if (mode === "no-cors") {
          if (!corsSafeListedMethodsSet.has(request.method)) {
            throw new TypeError(
              `'${request.method} is unsupported in no-cors mode.`
            );
          }
          setHeadersGuard(this.#headers, "request-no-cors");
        }
        if (initHasKey) {
          const headersList = getHeadersList(this.#headers);
          const headers = init2.headers !== void 0 ? init2.headers : new HeadersList(headersList);
          headersList.clear();
          if (headers instanceof HeadersList) {
            for (const { name, value } of headers.rawValues()) {
              headersList.append(name, value, false);
            }
            headersList.cookies = headers.cookies;
          } else {
            fillHeaders(this.#headers, headers);
          }
        }
        const inputBody = webidl.is.Request(input) ? input.#state.body : null;
        if ((init2.body != null || inputBody != null) && (request.method === "GET" || request.method === "HEAD")) {
          throw new TypeError("Request with GET/HEAD method cannot have body.");
        }
        let initBody = null;
        if (init2.body != null) {
          const [extractedBody, contentType] = extractBody(
            init2.body,
            request.keepalive
          );
          initBody = extractedBody;
          if (contentType && !getHeadersList(this.#headers).contains("content-type", true)) {
            this.#headers.append("content-type", contentType, true);
          }
        }
        const inputOrInitBody = initBody ?? inputBody;
        if (inputOrInitBody != null && inputOrInitBody.source == null) {
          if (initBody != null && init2.duplex == null) {
            throw new TypeError("RequestInit: duplex option is required when sending a body.");
          }
          if (request.mode !== "same-origin" && request.mode !== "cors") {
            throw new TypeError(
              'If request is made from ReadableStream, mode should be "same-origin" or "cors"'
            );
          }
          request.useCORSPreflightFlag = true;
        }
        let finalBody = inputOrInitBody;
        if (initBody == null && inputBody != null) {
          if (bodyUnusable(input.#state)) {
            throw new TypeError(
              "Cannot construct a Request with a Request object that has already been used."
            );
          }
          const identityTransform = new TransformStream();
          inputBody.stream.pipeThrough(identityTransform);
          finalBody = {
            source: inputBody.source,
            length: inputBody.length,
            stream: identityTransform.readable
          };
        }
        this.#state.body = finalBody;
      }
      // Returns request’s HTTP method, which is "GET" by default.
      get method() {
        webidl.brandCheck(this, _Request);
        return this.#state.method;
      }
      // Returns the URL of request as a string.
      get url() {
        webidl.brandCheck(this, _Request);
        return URLSerializer(this.#state.url);
      }
      // Returns a Headers object consisting of the headers associated with request.
      // Note that headers added in the network layer by the user agent will not
      // be accounted for in this object, e.g., the "Host" header.
      get headers() {
        webidl.brandCheck(this, _Request);
        return this.#headers;
      }
      // Returns the kind of resource requested by request, e.g., "document"
      // or "script".
      get destination() {
        webidl.brandCheck(this, _Request);
        return this.#state.destination;
      }
      // Returns the referrer of request. Its value can be a same-origin URL if
      // explicitly set in init, the empty string to indicate no referrer, and
      // "about:client" when defaulting to the global’s default. This is used
      // during fetching to determine the value of the `Referer` header of the
      // request being made.
      get referrer() {
        webidl.brandCheck(this, _Request);
        if (this.#state.referrer === "no-referrer") {
          return "";
        }
        if (this.#state.referrer === "client") {
          return "about:client";
        }
        return this.#state.referrer.toString();
      }
      // Returns the referrer policy associated with request.
      // This is used during fetching to compute the value of the request’s
      // referrer.
      get referrerPolicy() {
        webidl.brandCheck(this, _Request);
        return this.#state.referrerPolicy;
      }
      // Returns the mode associated with request, which is a string indicating
      // whether the request will use CORS, or will be restricted to same-origin
      // URLs.
      get mode() {
        webidl.brandCheck(this, _Request);
        return this.#state.mode;
      }
      // Returns the credentials mode associated with request,
      // which is a string indicating whether credentials will be sent with the
      // request always, never, or only when sent to a same-origin URL.
      get credentials() {
        webidl.brandCheck(this, _Request);
        return this.#state.credentials;
      }
      // Returns the cache mode associated with request,
      // which is a string indicating how the request will
      // interact with the browser’s cache when fetching.
      get cache() {
        webidl.brandCheck(this, _Request);
        return this.#state.cache;
      }
      // Returns the redirect mode associated with request,
      // which is a string indicating how redirects for the
      // request will be handled during fetching. A request
      // will follow redirects by default.
      get redirect() {
        webidl.brandCheck(this, _Request);
        return this.#state.redirect;
      }
      // Returns request’s subresource integrity metadata, which is a
      // cryptographic hash of the resource being fetched. Its value
      // consists of multiple hashes separated by whitespace. [SRI]
      get integrity() {
        webidl.brandCheck(this, _Request);
        return this.#state.integrity;
      }
      // Returns a boolean indicating whether or not request can outlive the
      // global in which it was created.
      get keepalive() {
        webidl.brandCheck(this, _Request);
        return this.#state.keepalive;
      }
      // Returns a boolean indicating whether or not request is for a reload
      // navigation.
      get isReloadNavigation() {
        webidl.brandCheck(this, _Request);
        return this.#state.reloadNavigation;
      }
      // Returns a boolean indicating whether or not request is for a history
      // navigation (a.k.a. back-forward navigation).
      get isHistoryNavigation() {
        webidl.brandCheck(this, _Request);
        return this.#state.historyNavigation;
      }
      // Returns the signal associated with request, which is an AbortSignal
      // object indicating whether or not request has been aborted, and its
      // abort event handler.
      get signal() {
        webidl.brandCheck(this, _Request);
        return this.#signal;
      }
      get body() {
        webidl.brandCheck(this, _Request);
        return this.#state.body ? this.#state.body.stream : null;
      }
      get bodyUsed() {
        webidl.brandCheck(this, _Request);
        return !!this.#state.body && util56.isDisturbed(this.#state.body.stream);
      }
      get duplex() {
        webidl.brandCheck(this, _Request);
        return "half";
      }
      // Returns a clone of request.
      clone() {
        webidl.brandCheck(this, _Request);
        if (bodyUnusable(this.#state)) {
          throw new TypeError("unusable");
        }
        const clonedRequest = cloneRequest(this.#state);
        const ac = new AbortController();
        if (this.signal.aborted) {
          ac.abort(this.signal.reason);
        } else {
          let list2 = dependentControllerMap.get(this.signal);
          if (list2 === void 0) {
            list2 = /* @__PURE__ */ new Set();
            dependentControllerMap.set(this.signal, list2);
          }
          const acRef = new WeakRef(ac);
          list2.add(acRef);
          util56.addAbortListener(
            ac.signal,
            buildAbort(acRef)
          );
        }
        return fromInnerRequest(clonedRequest, this.#dispatcher, ac.signal, getHeadersGuard(this.#headers));
      }
      [nodeUtil.inspect.custom](depth, options) {
        if (options.depth === null) {
          options.depth = 2;
        }
        options.colors ??= true;
        const properties = {
          method: this.method,
          url: this.url,
          headers: this.headers,
          destination: this.destination,
          referrer: this.referrer,
          referrerPolicy: this.referrerPolicy,
          mode: this.mode,
          credentials: this.credentials,
          cache: this.cache,
          redirect: this.redirect,
          integrity: this.integrity,
          keepalive: this.keepalive,
          isReloadNavigation: this.isReloadNavigation,
          isHistoryNavigation: this.isHistoryNavigation,
          signal: this.signal
        };
        return `Request ${nodeUtil.formatWithOptions(options, properties)}`;
      }
      /**
       * @param {Request} request
       * @param {AbortSignal} newSignal
       */
      static setRequestSignal(request, newSignal) {
        request.#signal = newSignal;
        return request;
      }
      /**
       * @param {Request} request
       */
      static getRequestDispatcher(request) {
        return request.#dispatcher;
      }
      /**
       * @param {Request} request
       * @param {import('../../dispatcher/dispatcher')} newDispatcher
       */
      static setRequestDispatcher(request, newDispatcher) {
        request.#dispatcher = newDispatcher;
      }
      /**
       * @param {Request} request
       * @param {Headers} newHeaders
       */
      static setRequestHeaders(request, newHeaders) {
        request.#headers = newHeaders;
      }
      /**
       * @param {Request} request
       */
      static getRequestState(request) {
        return request.#state;
      }
      /**
       * @param {Request} request
       * @param {any} newState
       */
      static setRequestState(request, newState) {
        request.#state = newState;
      }
    };
    var { setRequestSignal, getRequestDispatcher, setRequestDispatcher, setRequestHeaders, getRequestState, setRequestState } = Request;
    Reflect.deleteProperty(Request, "setRequestSignal");
    Reflect.deleteProperty(Request, "getRequestDispatcher");
    Reflect.deleteProperty(Request, "setRequestDispatcher");
    Reflect.deleteProperty(Request, "setRequestHeaders");
    Reflect.deleteProperty(Request, "getRequestState");
    Reflect.deleteProperty(Request, "setRequestState");
    mixinBody(Request, getRequestState);
    function makeRequest(init2) {
      return {
        method: init2.method ?? "GET",
        localURLsOnly: init2.localURLsOnly ?? false,
        unsafeRequest: init2.unsafeRequest ?? false,
        body: init2.body ?? null,
        client: init2.client ?? null,
        reservedClient: init2.reservedClient ?? null,
        replacesClientId: init2.replacesClientId ?? "",
        window: init2.window ?? "client",
        keepalive: init2.keepalive ?? false,
        serviceWorkers: init2.serviceWorkers ?? "all",
        initiator: init2.initiator ?? "",
        destination: init2.destination ?? "",
        priority: init2.priority ?? null,
        origin: init2.origin ?? "client",
        policyContainer: init2.policyContainer ?? "client",
        referrer: init2.referrer ?? "client",
        referrerPolicy: init2.referrerPolicy ?? "",
        mode: init2.mode ?? "no-cors",
        useCORSPreflightFlag: init2.useCORSPreflightFlag ?? false,
        credentials: init2.credentials ?? "same-origin",
        useCredentials: init2.useCredentials ?? false,
        cache: init2.cache ?? "default",
        redirect: init2.redirect ?? "follow",
        integrity: init2.integrity ?? "",
        cryptoGraphicsNonceMetadata: init2.cryptoGraphicsNonceMetadata ?? "",
        parserMetadata: init2.parserMetadata ?? "",
        reloadNavigation: init2.reloadNavigation ?? false,
        historyNavigation: init2.historyNavigation ?? false,
        userActivation: init2.userActivation ?? false,
        taintedOrigin: init2.taintedOrigin ?? false,
        redirectCount: init2.redirectCount ?? 0,
        responseTainting: init2.responseTainting ?? "basic",
        preventNoCacheCacheControlHeaderModification: init2.preventNoCacheCacheControlHeaderModification ?? false,
        done: init2.done ?? false,
        timingAllowFailed: init2.timingAllowFailed ?? false,
        useURLCredentials: init2.useURLCredentials ?? void 0,
        traversableForUserPrompts: init2.traversableForUserPrompts ?? "client",
        urlList: init2.urlList,
        url: init2.urlList[0],
        headersList: init2.headersList ? new HeadersList(init2.headersList) : new HeadersList()
      };
    }
    function cloneRequest(request) {
      const newRequest = makeRequest({ ...request, body: null });
      if (request.body != null) {
        newRequest.body = cloneBody(request.body);
      }
      return newRequest;
    }
    function fromInnerRequest(innerRequest, dispatcher, signal, guard) {
      const request = new Request(kConstruct);
      setRequestState(request, innerRequest);
      setRequestDispatcher(request, dispatcher);
      setRequestSignal(request, signal);
      const headers = new Headers2(kConstruct);
      setRequestHeaders(request, headers);
      setHeadersList(headers, innerRequest.headersList);
      setHeadersGuard(headers, guard);
      return request;
    }
    Object.defineProperties(Request.prototype, {
      method: kEnumerableProperty,
      url: kEnumerableProperty,
      headers: kEnumerableProperty,
      redirect: kEnumerableProperty,
      clone: kEnumerableProperty,
      signal: kEnumerableProperty,
      duplex: kEnumerableProperty,
      destination: kEnumerableProperty,
      body: kEnumerableProperty,
      bodyUsed: kEnumerableProperty,
      isHistoryNavigation: kEnumerableProperty,
      isReloadNavigation: kEnumerableProperty,
      keepalive: kEnumerableProperty,
      integrity: kEnumerableProperty,
      cache: kEnumerableProperty,
      credentials: kEnumerableProperty,
      attribute: kEnumerableProperty,
      referrerPolicy: kEnumerableProperty,
      referrer: kEnumerableProperty,
      mode: kEnumerableProperty,
      [Symbol.toStringTag]: {
        value: "Request",
        configurable: true
      }
    });
    webidl.is.Request = webidl.util.MakeTypeAssertion(Request);
    webidl.converters.RequestInfo = function(V) {
      if (typeof V === "string") {
        return webidl.converters.USVString(V);
      }
      if (webidl.is.Request(V)) {
        return V;
      }
      return webidl.converters.USVString(V);
    };
    webidl.converters.RequestInit = webidl.dictionaryConverter([
      {
        key: "method",
        converter: webidl.converters.ByteString
      },
      {
        key: "headers",
        converter: webidl.converters.HeadersInit
      },
      {
        key: "body",
        converter: webidl.nullableConverter(
          webidl.converters.BodyInit
        )
      },
      {
        key: "referrer",
        converter: webidl.converters.USVString
      },
      {
        key: "referrerPolicy",
        converter: webidl.converters.DOMString,
        // https://w3c.github.io/webappsec-referrer-policy/#referrer-policy
        allowedValues: referrerPolicy
      },
      {
        key: "mode",
        converter: webidl.converters.DOMString,
        // https://fetch.spec.whatwg.org/#concept-request-mode
        allowedValues: requestMode
      },
      {
        key: "credentials",
        converter: webidl.converters.DOMString,
        // https://fetch.spec.whatwg.org/#requestcredentials
        allowedValues: requestCredentials
      },
      {
        key: "cache",
        converter: webidl.converters.DOMString,
        // https://fetch.spec.whatwg.org/#requestcache
        allowedValues: requestCache
      },
      {
        key: "redirect",
        converter: webidl.converters.DOMString,
        // https://fetch.spec.whatwg.org/#requestredirect
        allowedValues: requestRedirect
      },
      {
        key: "integrity",
        converter: webidl.converters.DOMString
      },
      {
        key: "keepalive",
        converter: webidl.converters.boolean
      },
      {
        key: "signal",
        converter: webidl.nullableConverter(
          (signal) => webidl.converters.AbortSignal(
            signal,
            "RequestInit",
            "signal"
          )
        )
      },
      {
        key: "window",
        converter: webidl.converters.any
      },
      {
        key: "duplex",
        converter: webidl.converters.DOMString,
        allowedValues: requestDuplex
      },
      {
        key: "dispatcher",
        // undici specific option
        converter: webidl.converters.any
      },
      {
        key: "priority",
        converter: webidl.converters.DOMString,
        allowedValues: ["high", "low", "auto"],
        defaultValue: () => "auto"
      }
    ]);
    module2.exports = {
      Request,
      makeRequest,
      fromInnerRequest,
      cloneRequest,
      getRequestDispatcher,
      getRequestState
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/subresource-integrity/subresource-integrity.js
var require_subresource_integrity = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/subresource-integrity/subresource-integrity.js"(exports2, module2) {
    "use strict";
    var assert13 = __require("node:assert");
    var { runtimeFeatures } = require_runtime_features();
    var validSRIHashAlgorithmTokenSet = /* @__PURE__ */ new Map([["sha256", 0], ["sha384", 1], ["sha512", 2]]);
    var crypto11;
    if (runtimeFeatures.has("crypto")) {
      crypto11 = __require("node:crypto");
      const cryptoHashes = crypto11.getHashes();
      if (cryptoHashes.length === 0) {
        validSRIHashAlgorithmTokenSet.clear();
      }
      for (const algorithm of validSRIHashAlgorithmTokenSet.keys()) {
        if (cryptoHashes.includes(algorithm) === false) {
          validSRIHashAlgorithmTokenSet.delete(algorithm);
        }
      }
    } else {
      validSRIHashAlgorithmTokenSet.clear();
    }
    var getSRIHashAlgorithmIndex = (
      /** @type {GetSRIHashAlgorithmIndex} */
      Map.prototype.get.bind(
        validSRIHashAlgorithmTokenSet
      )
    );
    var isValidSRIHashAlgorithm = (
      /** @type {IsValidSRIHashAlgorithm} */
      Map.prototype.has.bind(validSRIHashAlgorithmTokenSet)
    );
    var bytesMatch = runtimeFeatures.has("crypto") === false || validSRIHashAlgorithmTokenSet.size === 0 ? () => true : (bytes, metadataList) => {
      const parsedMetadata = parseMetadata(metadataList);
      if (parsedMetadata.length === 0) {
        return true;
      }
      const metadata = getStrongestMetadata(parsedMetadata);
      for (const item of metadata) {
        const algorithm = item.alg;
        const expectedValue = item.val;
        const actualValue = applyAlgorithmToBytes(algorithm, bytes);
        if (caseSensitiveMatch(actualValue, expectedValue)) {
          return true;
        }
      }
      return false;
    };
    function getStrongestMetadata(metadataList) {
      const result2 = [];
      let strongest = null;
      for (const item of metadataList) {
        assert13(isValidSRIHashAlgorithm(item.alg), "Invalid SRI hash algorithm token");
        if (result2.length === 0) {
          result2.push(item);
          strongest = item;
          continue;
        }
        const currentAlgorithm = (
          /** @type {Metadata} */
          strongest.alg
        );
        const currentAlgorithmIndex = getSRIHashAlgorithmIndex(currentAlgorithm);
        const newAlgorithm = item.alg;
        const newAlgorithmIndex = getSRIHashAlgorithmIndex(newAlgorithm);
        if (newAlgorithmIndex < currentAlgorithmIndex) {
          continue;
        } else if (newAlgorithmIndex > currentAlgorithmIndex) {
          strongest = item;
          result2[0] = item;
          result2.length = 1;
        } else {
          result2.push(item);
        }
      }
      return result2;
    }
    function parseMetadata(metadata) {
      const result2 = [];
      for (const item of metadata.split(" ")) {
        const expressionAndOptions = item.split("?", 1);
        const algorithmExpression = expressionAndOptions[0];
        let base64Value = "";
        const algorithmAndValue = [algorithmExpression.slice(0, 6), algorithmExpression.slice(7)];
        const algorithm = algorithmAndValue[0];
        if (!isValidSRIHashAlgorithm(algorithm)) {
          continue;
        }
        if (algorithmAndValue[1]) {
          base64Value = algorithmAndValue[1];
        }
        const metadata2 = {
          alg: algorithm,
          val: base64Value
        };
        result2.push(metadata2);
      }
      return result2;
    }
    var applyAlgorithmToBytes = (algorithm, bytes) => {
      return crypto11.hash(algorithm, bytes, "base64");
    };
    function caseSensitiveMatch(actualValue, expectedValue) {
      let actualValueLength = actualValue.length;
      if (actualValueLength !== 0 && actualValue[actualValueLength - 1] === "=") {
        actualValueLength -= 1;
      }
      if (actualValueLength !== 0 && actualValue[actualValueLength - 1] === "=") {
        actualValueLength -= 1;
      }
      let expectedValueLength = expectedValue.length;
      if (expectedValueLength !== 0 && expectedValue[expectedValueLength - 1] === "=") {
        expectedValueLength -= 1;
      }
      if (expectedValueLength !== 0 && expectedValue[expectedValueLength - 1] === "=") {
        expectedValueLength -= 1;
      }
      if (actualValueLength !== expectedValueLength) {
        return false;
      }
      for (let i2 = 0; i2 < actualValueLength; ++i2) {
        if (actualValue[i2] === expectedValue[i2] || actualValue[i2] === "+" && expectedValue[i2] === "-" || actualValue[i2] === "/" && expectedValue[i2] === "_") {
          continue;
        }
        return false;
      }
      return true;
    }
    module2.exports = {
      applyAlgorithmToBytes,
      bytesMatch,
      caseSensitiveMatch,
      isValidSRIHashAlgorithm,
      getStrongestMetadata,
      parseMetadata
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/fetch/index.js
var require_fetch = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/fetch/index.js"(exports2, module2) {
    "use strict";
    var {
      makeNetworkError,
      makeAppropriateNetworkError,
      filterResponse,
      makeResponse,
      fromInnerResponse,
      getResponseState
    } = require_response();
    var { HeadersList } = require_headers2();
    var { Request, cloneRequest, getRequestDispatcher, getRequestState } = require_request2();
    var zlib = __require("node:zlib");
    var {
      makePolicyContainer,
      clonePolicyContainer,
      requestBadPort,
      TAOCheck,
      appendRequestOriginHeader,
      responseLocationURL,
      requestCurrentURL,
      setRequestReferrerPolicyOnRedirect,
      tryUpgradeRequestToAPotentiallyTrustworthyURL,
      createOpaqueTimingInfo,
      appendFetchMetadata,
      corsCheck,
      crossOriginResourcePolicyCheck,
      determineRequestsReferrer,
      coarsenedSharedCurrentTime,
      sameOrigin,
      isCancelled,
      isAborted,
      isErrorLike,
      fullyReadBody,
      readableStreamClose,
      urlIsLocal,
      urlIsHttpHttpsScheme,
      urlHasHttpsScheme,
      clampAndCoarsenConnectionTimingInfo,
      simpleRangeHeaderValue,
      buildContentRange,
      createInflate,
      extractMimeType,
      hasAuthenticationEntry,
      includesCredentials,
      isTraversableNavigable
    } = require_util7();
    var assert13 = __require("node:assert");
    var { safelyExtractBody, extractBody } = require_body();
    var {
      redirectStatusSet,
      nullBodyStatus,
      safeMethodsSet,
      requestBodyHeader,
      subresourceSet
    } = require_constants14();
    var EE = __require("node:events");
    var { Readable: Readable4, pipeline: pipeline2, finished: finished7, isErrored, isReadable } = __require("node:stream");
    var { addAbortListener: addAbortListener3, bufferToLowerCasedHeaderName } = require_util6();
    var { dataURLProcessor, serializeAMimeType, minimizeSupportedMimeType } = require_data_url();
    var { getGlobalDispatcher } = require_global2();
    var { webidl } = require_webidl();
    var { STATUS_CODES } = __require("node:http");
    var { bytesMatch } = require_subresource_integrity();
    var { createDeferredPromise } = require_promise();
    var { isomorphicEncode } = require_infra();
    var { runtimeFeatures } = require_runtime_features();
    var hasZstd = runtimeFeatures.has("zstd");
    var GET_OR_HEAD = ["GET", "HEAD"];
    var defaultUserAgent = typeof __UNDICI_IS_NODE__ !== "undefined" || typeof esbuildDetection !== "undefined" ? "node" : "undici";
    var resolveObjectURL;
    var Fetch = class extends EE {
      constructor(dispatcher) {
        super();
        this.dispatcher = dispatcher;
        this.connection = null;
        this.dump = false;
        this.state = "ongoing";
      }
      terminate(reason) {
        if (this.state !== "ongoing") {
          return;
        }
        this.state = "terminated";
        this.connection?.destroy(reason);
        this.emit("terminated", reason);
      }
      // https://fetch.spec.whatwg.org/#fetch-controller-abort
      abort(error) {
        if (this.state !== "ongoing") {
          return;
        }
        this.state = "aborted";
        if (!error) {
          error = new DOMException("The operation was aborted.", "AbortError");
        }
        this.serializedAbortReason = error;
        this.connection?.destroy(error);
        this.emit("terminated", error);
      }
    };
    function handleFetchDone(response) {
      finalizeAndReportTiming(response, "fetch");
    }
    function fetch2(input, init2 = void 0) {
      webidl.argumentLengthCheck(arguments, 1, "globalThis.fetch");
      let p = createDeferredPromise();
      let requestObject;
      try {
        requestObject = new Request(input, init2);
      } catch (e) {
        p.reject(e);
        return p.promise;
      }
      const request = getRequestState(requestObject);
      if (requestObject.signal.aborted) {
        abortFetch(p, request, null, requestObject.signal.reason, null);
        return p.promise;
      }
      const globalObject = request.client.globalObject;
      if (globalObject?.constructor?.name === "ServiceWorkerGlobalScope") {
        request.serviceWorkers = "none";
      }
      let responseObject = null;
      let locallyAborted = false;
      let controller = null;
      addAbortListener3(
        requestObject.signal,
        () => {
          locallyAborted = true;
          assert13(controller != null);
          controller.abort(requestObject.signal.reason);
          const realResponse = responseObject?.deref();
          abortFetch(p, request, realResponse, requestObject.signal.reason, controller.controller);
        }
      );
      const processResponse = (response) => {
        if (locallyAborted) {
          return;
        }
        if (response.aborted) {
          abortFetch(p, request, responseObject, controller.serializedAbortReason, controller.controller);
          return;
        }
        if (response.type === "error") {
          p.reject(new TypeError("fetch failed", { cause: response.error }));
          return;
        }
        responseObject = new WeakRef(fromInnerResponse(response, "immutable"));
        p.resolve(responseObject.deref());
        p = null;
      };
      controller = fetching({
        request,
        processResponseEndOfBody: handleFetchDone,
        processResponse,
        dispatcher: getRequestDispatcher(requestObject),
        // undici
        // Keep requestObject alive to prevent its AbortController from being GC'd
        // See https://github.com/nodejs/undici/issues/4627
        requestObject
      });
      return p.promise;
    }
    function finalizeAndReportTiming(response, initiatorType = "other") {
      if (response.type === "error" && response.aborted) {
        return;
      }
      if (!response.urlList?.length) {
        return;
      }
      const originalURL = response.urlList[0];
      let timingInfo = response.timingInfo;
      let cacheState = response.cacheState;
      if (!urlIsHttpHttpsScheme(originalURL)) {
        return;
      }
      if (timingInfo === null) {
        return;
      }
      if (!response.timingAllowPassed) {
        timingInfo = createOpaqueTimingInfo({
          startTime: timingInfo.startTime
        });
        cacheState = "";
      }
      timingInfo.endTime = coarsenedSharedCurrentTime();
      response.timingInfo = timingInfo;
      markResourceTiming(
        timingInfo,
        originalURL.href,
        initiatorType,
        globalThis,
        cacheState,
        "",
        // bodyType
        response.status
      );
    }
    var markResourceTiming = performance.markResourceTiming;
    function abortFetch(p, request, responseObject, error, controller) {
      if (p) {
        p.reject(error);
      }
      if (request.body?.stream != null && isReadable(request.body.stream)) {
        request.body.stream.cancel(error).catch((err) => {
          if (err.code === "ERR_INVALID_STATE") {
            return;
          }
          throw err;
        });
      }
      if (responseObject == null) {
        return;
      }
      const response = getResponseState(responseObject);
      if (response.body?.stream != null && isReadable(response.body.stream)) {
        controller.error(error);
      }
    }
    function fetching({
      request,
      processRequestBodyChunkLength,
      processRequestEndOfBody,
      processResponse,
      processResponseEndOfBody,
      processResponseConsumeBody,
      useParallelQueue = false,
      dispatcher = getGlobalDispatcher(),
      // undici
      requestObject = null
      // Keep alive to prevent AbortController GC, see #4627
    }) {
      assert13(dispatcher);
      let taskDestination = null;
      let crossOriginIsolatedCapability = false;
      if (request.client != null) {
        taskDestination = request.client.globalObject;
        crossOriginIsolatedCapability = request.client.crossOriginIsolatedCapability;
      }
      const currentTime = coarsenedSharedCurrentTime(crossOriginIsolatedCapability);
      const timingInfo = createOpaqueTimingInfo({
        startTime: currentTime
      });
      const fetchParams = {
        controller: new Fetch(dispatcher),
        request,
        timingInfo,
        processRequestBodyChunkLength,
        processRequestEndOfBody,
        processResponse,
        processResponseConsumeBody,
        processResponseEndOfBody,
        taskDestination,
        crossOriginIsolatedCapability,
        // Keep requestObject alive to prevent its AbortController from being GC'd
        requestObject
      };
      assert13(!request.body || request.body.stream);
      if (request.window === "client") {
        request.window = request.client?.globalObject?.constructor?.name === "Window" ? request.client : "no-window";
      }
      if (request.origin === "client") {
        request.origin = request.client.origin;
      }
      if (request.policyContainer === "client") {
        if (request.client != null) {
          request.policyContainer = clonePolicyContainer(
            request.client.policyContainer
          );
        } else {
          request.policyContainer = makePolicyContainer();
        }
      }
      if (!request.headersList.contains("accept", true)) {
        const value = "*/*";
        request.headersList.append("accept", value, true);
      }
      if (!request.headersList.contains("accept-language", true)) {
        request.headersList.append("accept-language", "*", true);
      }
      if (request.priority === null) {
      }
      if (subresourceSet.has(request.destination)) {
      }
      mainFetch(fetchParams, false);
      return fetchParams.controller;
    }
    async function mainFetch(fetchParams, recursive2) {
      try {
        const request = fetchParams.request;
        let response = null;
        if (request.localURLsOnly && !urlIsLocal(requestCurrentURL(request))) {
          response = makeNetworkError("local URLs only");
        }
        tryUpgradeRequestToAPotentiallyTrustworthyURL(request);
        if (requestBadPort(request) === "blocked") {
          response = makeNetworkError("bad port");
        }
        if (request.referrerPolicy === "") {
          request.referrerPolicy = request.policyContainer.referrerPolicy;
        }
        if (request.referrer !== "no-referrer") {
          request.referrer = determineRequestsReferrer(request);
        }
        if (response === null) {
          const currentURL = requestCurrentURL(request);
          if (
            // - request’s current URL’s origin is same origin with request’s origin,
            //   and request’s response tainting is "basic"
            sameOrigin(currentURL, request.url) && request.responseTainting === "basic" || // request’s current URL’s scheme is "data"
            currentURL.protocol === "data:" || // - request’s mode is "navigate" or "websocket"
            (request.mode === "navigate" || request.mode === "websocket")
          ) {
            request.responseTainting = "basic";
            response = await schemeFetch(fetchParams);
          } else if (request.mode === "same-origin") {
            response = makeNetworkError('request mode cannot be "same-origin"');
          } else if (request.mode === "no-cors") {
            if (request.redirect !== "follow") {
              response = makeNetworkError(
                'redirect mode cannot be "follow" for "no-cors" request'
              );
            } else {
              request.responseTainting = "opaque";
              response = await schemeFetch(fetchParams);
            }
          } else if (!urlIsHttpHttpsScheme(requestCurrentURL(request))) {
            response = makeNetworkError("URL scheme must be a HTTP(S) scheme");
          } else {
            request.responseTainting = "cors";
            response = await httpFetch(fetchParams);
          }
        }
        if (recursive2) {
          return response;
        }
        if (response.status !== 0 && !response.internalResponse) {
          if (request.responseTainting === "cors") {
          }
          if (request.responseTainting === "basic") {
            response = filterResponse(response, "basic");
          } else if (request.responseTainting === "cors") {
            response = filterResponse(response, "cors");
          } else if (request.responseTainting === "opaque") {
            response = filterResponse(response, "opaque");
          } else {
            assert13(false);
          }
        }
        let internalResponse = response.status === 0 ? response : response.internalResponse;
        if (internalResponse.urlList.length === 0) {
          internalResponse.urlList.push(...request.urlList);
        }
        if (!request.timingAllowFailed) {
          response.timingAllowPassed = true;
        }
        if (response.type === "opaque" && internalResponse.status === 206 && internalResponse.rangeRequested && !request.headers.contains("range", true)) {
          response = internalResponse = makeNetworkError();
        }
        if (response.status !== 0 && (request.method === "HEAD" || request.method === "CONNECT" || nullBodyStatus.includes(internalResponse.status))) {
          internalResponse.body = null;
          fetchParams.controller.dump = true;
        }
        if (request.integrity) {
          const processBodyError = (reason) => fetchFinale(fetchParams, makeNetworkError(reason));
          if (request.responseTainting === "opaque" || response.body == null) {
            processBodyError(response.error);
            return;
          }
          const processBody = (bytes) => {
            if (!bytesMatch(bytes, request.integrity)) {
              processBodyError("integrity mismatch");
              return;
            }
            response.body = safelyExtractBody(bytes)[0];
            fetchFinale(fetchParams, response);
          };
          fullyReadBody(response.body, processBody, processBodyError);
        } else {
          fetchFinale(fetchParams, response);
        }
      } catch (err) {
        fetchParams.controller.terminate(err);
      }
    }
    function schemeFetch(fetchParams) {
      if (isCancelled(fetchParams) && fetchParams.request.redirectCount === 0) {
        return Promise.resolve(makeAppropriateNetworkError(fetchParams));
      }
      const { request } = fetchParams;
      const { protocol: scheme } = requestCurrentURL(request);
      switch (scheme) {
        case "about:": {
          return Promise.resolve(makeNetworkError("about scheme is not supported"));
        }
        case "blob:": {
          if (!resolveObjectURL) {
            resolveObjectURL = __require("node:buffer").resolveObjectURL;
          }
          const blobURLEntry = requestCurrentURL(request);
          if (blobURLEntry.search.length !== 0) {
            return Promise.resolve(makeNetworkError("NetworkError when attempting to fetch resource."));
          }
          const blob = resolveObjectURL(blobURLEntry.toString());
          if (request.method !== "GET" || !webidl.is.Blob(blob)) {
            return Promise.resolve(makeNetworkError("invalid method"));
          }
          const response = makeResponse();
          const fullLength = blob.size;
          const serializedFullLength = isomorphicEncode(`${fullLength}`);
          const type4 = blob.type;
          if (!request.headersList.contains("range", true)) {
            const bodyWithType = extractBody(blob);
            response.statusText = "OK";
            response.body = bodyWithType[0];
            response.headersList.set("content-length", serializedFullLength, true);
            response.headersList.set("content-type", type4, true);
          } else {
            response.rangeRequested = true;
            const rangeHeader = request.headersList.get("range", true);
            const rangeValue = simpleRangeHeaderValue(rangeHeader, true);
            if (rangeValue === "failure") {
              return Promise.resolve(makeNetworkError("failed to fetch the data URL"));
            }
            let { rangeStartValue: rangeStart, rangeEndValue: rangeEnd } = rangeValue;
            if (rangeStart === null) {
              rangeStart = fullLength - rangeEnd;
              rangeEnd = rangeStart + rangeEnd - 1;
            } else {
              if (rangeStart >= fullLength) {
                return Promise.resolve(makeNetworkError("Range start is greater than the blob's size."));
              }
              if (rangeEnd === null || rangeEnd >= fullLength) {
                rangeEnd = fullLength - 1;
              }
            }
            const slicedBlob = blob.slice(rangeStart, rangeEnd + 1, type4);
            const slicedBodyWithType = extractBody(slicedBlob);
            response.body = slicedBodyWithType[0];
            const serializedSlicedLength = isomorphicEncode(`${slicedBlob.size}`);
            const contentRange = buildContentRange(rangeStart, rangeEnd, fullLength);
            response.status = 206;
            response.statusText = "Partial Content";
            response.headersList.set("content-length", serializedSlicedLength, true);
            response.headersList.set("content-type", type4, true);
            response.headersList.set("content-range", contentRange, true);
          }
          return Promise.resolve(response);
        }
        case "data:": {
          const currentURL = requestCurrentURL(request);
          const dataURLStruct = dataURLProcessor(currentURL);
          if (dataURLStruct === "failure") {
            return Promise.resolve(makeNetworkError("failed to fetch the data URL"));
          }
          const mimeType = serializeAMimeType(dataURLStruct.mimeType);
          return Promise.resolve(makeResponse({
            statusText: "OK",
            headersList: [
              ["content-type", { name: "Content-Type", value: mimeType }]
            ],
            body: safelyExtractBody(dataURLStruct.body)[0]
          }));
        }
        case "file:": {
          return Promise.resolve(makeNetworkError("not implemented... yet..."));
        }
        case "http:":
        case "https:": {
          return httpFetch(fetchParams).catch((err) => makeNetworkError(err));
        }
        default: {
          return Promise.resolve(makeNetworkError("unknown scheme"));
        }
      }
    }
    function finalizeResponse(fetchParams, response) {
      fetchParams.request.done = true;
      if (fetchParams.processResponseDone != null) {
        queueMicrotask(() => fetchParams.processResponseDone(response));
      }
    }
    function fetchFinale(fetchParams, response) {
      let timingInfo = fetchParams.timingInfo;
      const processResponseEndOfBody = () => {
        const unsafeEndTime = Date.now();
        if (fetchParams.request.destination === "document") {
          fetchParams.controller.fullTimingInfo = timingInfo;
        }
        fetchParams.controller.reportTimingSteps = () => {
          if (!urlIsHttpHttpsScheme(fetchParams.request.url)) {
            return;
          }
          timingInfo.endTime = unsafeEndTime;
          let cacheState = response.cacheState;
          const bodyInfo = response.bodyInfo;
          if (!response.timingAllowPassed) {
            timingInfo = createOpaqueTimingInfo(timingInfo);
            cacheState = "";
          }
          let responseStatus = 0;
          if (fetchParams.request.mode !== "navigator" || !response.hasCrossOriginRedirects) {
            responseStatus = response.status;
            const mimeType = extractMimeType(response.headersList);
            if (mimeType !== "failure") {
              bodyInfo.contentType = minimizeSupportedMimeType(mimeType);
            }
          }
          if (fetchParams.request.initiatorType != null) {
            markResourceTiming(timingInfo, fetchParams.request.url.href, fetchParams.request.initiatorType, globalThis, cacheState, bodyInfo, responseStatus);
          }
        };
        const processResponseEndOfBodyTask = () => {
          fetchParams.request.done = true;
          if (fetchParams.processResponseEndOfBody != null) {
            queueMicrotask(() => fetchParams.processResponseEndOfBody(response));
          }
          if (fetchParams.request.initiatorType != null) {
            fetchParams.controller.reportTimingSteps();
          }
        };
        queueMicrotask(() => processResponseEndOfBodyTask());
      };
      if (fetchParams.processResponse != null) {
        queueMicrotask(() => {
          fetchParams.processResponse(response);
          fetchParams.processResponse = null;
        });
      }
      const internalResponse = response.type === "error" ? response : response.internalResponse ?? response;
      if (internalResponse.body == null) {
        processResponseEndOfBody();
      } else {
        finished7(internalResponse.body.stream, () => {
          processResponseEndOfBody();
        });
      }
    }
    async function httpFetch(fetchParams) {
      const request = fetchParams.request;
      let response = null;
      let actualResponse = null;
      const timingInfo = fetchParams.timingInfo;
      if (request.serviceWorkers === "all") {
      }
      if (response === null) {
        if (request.redirect === "follow") {
          request.serviceWorkers = "none";
        }
        actualResponse = response = await httpNetworkOrCacheFetch(fetchParams);
        if (request.responseTainting === "cors" && corsCheck(request, response) === "failure") {
          return makeNetworkError("cors failure");
        }
        if (TAOCheck(request, response) === "failure") {
          request.timingAllowFailed = true;
        }
      }
      if ((request.responseTainting === "opaque" || response.type === "opaque") && crossOriginResourcePolicyCheck(
        request.origin,
        request.client,
        request.destination,
        actualResponse
      ) === "blocked") {
        return makeNetworkError("blocked");
      }
      if (redirectStatusSet.has(actualResponse.status)) {
        if (request.redirect !== "manual") {
          fetchParams.controller.connection.destroy(void 0, false);
        }
        if (request.redirect === "error") {
          response = makeNetworkError("unexpected redirect");
        } else if (request.redirect === "manual") {
          response = actualResponse;
        } else if (request.redirect === "follow") {
          response = await httpRedirectFetch(fetchParams, response);
        } else {
          assert13(false);
        }
      }
      response.timingInfo = timingInfo;
      return response;
    }
    function httpRedirectFetch(fetchParams, response) {
      const request = fetchParams.request;
      const actualResponse = response.internalResponse ? response.internalResponse : response;
      let locationURL;
      try {
        locationURL = responseLocationURL(
          actualResponse,
          requestCurrentURL(request).hash
        );
        if (locationURL == null) {
          return response;
        }
      } catch (err) {
        return Promise.resolve(makeNetworkError(err));
      }
      if (!urlIsHttpHttpsScheme(locationURL)) {
        return Promise.resolve(makeNetworkError("URL scheme must be a HTTP(S) scheme"));
      }
      if (request.redirectCount === 20) {
        return Promise.resolve(makeNetworkError("redirect count exceeded"));
      }
      request.redirectCount += 1;
      if (request.mode === "cors" && (locationURL.username || locationURL.password) && !sameOrigin(request, locationURL)) {
        return Promise.resolve(makeNetworkError('cross origin not allowed for request mode "cors"'));
      }
      if (request.responseTainting === "cors" && (locationURL.username || locationURL.password)) {
        return Promise.resolve(makeNetworkError(
          'URL cannot contain credentials for request mode "cors"'
        ));
      }
      if (actualResponse.status !== 303 && request.body != null && request.body.source == null) {
        return Promise.resolve(makeNetworkError());
      }
      if ([301, 302].includes(actualResponse.status) && request.method === "POST" || actualResponse.status === 303 && !GET_OR_HEAD.includes(request.method)) {
        request.method = "GET";
        request.body = null;
        for (const headerName of requestBodyHeader) {
          request.headersList.delete(headerName);
        }
      }
      if (!sameOrigin(requestCurrentURL(request), locationURL)) {
        request.headersList.delete("authorization", true);
        request.headersList.delete("proxy-authorization", true);
        request.headersList.delete("cookie", true);
        request.headersList.delete("host", true);
      }
      if (request.body != null) {
        assert13(request.body.source != null);
        request.body = safelyExtractBody(request.body.source)[0];
      }
      const timingInfo = fetchParams.timingInfo;
      timingInfo.redirectEndTime = timingInfo.postRedirectStartTime = coarsenedSharedCurrentTime(fetchParams.crossOriginIsolatedCapability);
      if (timingInfo.redirectStartTime === 0) {
        timingInfo.redirectStartTime = timingInfo.startTime;
      }
      request.urlList.push(locationURL);
      setRequestReferrerPolicyOnRedirect(request, actualResponse);
      return mainFetch(fetchParams, true);
    }
    async function httpNetworkOrCacheFetch(fetchParams, isAuthenticationFetch = false, isNewConnectionFetch = false) {
      const request = fetchParams.request;
      let httpFetchParams = null;
      let httpRequest = null;
      let response = null;
      const httpCache = null;
      const revalidatingFlag = false;
      if (request.window === "no-window" && request.redirect === "error") {
        httpFetchParams = fetchParams;
        httpRequest = request;
      } else {
        httpRequest = cloneRequest(request);
        httpFetchParams = { ...fetchParams };
        httpFetchParams.request = httpRequest;
      }
      const includeCredentials = request.credentials === "include" || request.credentials === "same-origin" && request.responseTainting === "basic";
      const contentLength = httpRequest.body ? httpRequest.body.length : null;
      let contentLengthHeaderValue = null;
      if (httpRequest.body == null && ["POST", "PUT"].includes(httpRequest.method)) {
        contentLengthHeaderValue = "0";
      }
      if (contentLength != null) {
        contentLengthHeaderValue = isomorphicEncode(`${contentLength}`);
      }
      if (contentLengthHeaderValue != null) {
        httpRequest.headersList.append("content-length", contentLengthHeaderValue, true);
      }
      if (contentLength != null && httpRequest.keepalive) {
      }
      if (webidl.is.URL(httpRequest.referrer)) {
        httpRequest.headersList.append("referer", isomorphicEncode(httpRequest.referrer.href), true);
      }
      appendRequestOriginHeader(httpRequest);
      appendFetchMetadata(httpRequest);
      if (!httpRequest.headersList.contains("user-agent", true)) {
        httpRequest.headersList.append("user-agent", defaultUserAgent, true);
      }
      if (httpRequest.cache === "default" && (httpRequest.headersList.contains("if-modified-since", true) || httpRequest.headersList.contains("if-none-match", true) || httpRequest.headersList.contains("if-unmodified-since", true) || httpRequest.headersList.contains("if-match", true) || httpRequest.headersList.contains("if-range", true))) {
        httpRequest.cache = "no-store";
      }
      if (httpRequest.cache === "no-cache" && !httpRequest.preventNoCacheCacheControlHeaderModification && !httpRequest.headersList.contains("cache-control", true)) {
        httpRequest.headersList.append("cache-control", "max-age=0", true);
      }
      if (httpRequest.cache === "no-store" || httpRequest.cache === "reload") {
        if (!httpRequest.headersList.contains("pragma", true)) {
          httpRequest.headersList.append("pragma", "no-cache", true);
        }
        if (!httpRequest.headersList.contains("cache-control", true)) {
          httpRequest.headersList.append("cache-control", "no-cache", true);
        }
      }
      if (httpRequest.headersList.contains("range", true)) {
        httpRequest.headersList.append("accept-encoding", "identity", true);
      }
      if (!httpRequest.headersList.contains("accept-encoding", true)) {
        if (urlHasHttpsScheme(requestCurrentURL(httpRequest))) {
          httpRequest.headersList.append("accept-encoding", "br, gzip, deflate", true);
        } else {
          httpRequest.headersList.append("accept-encoding", "gzip, deflate", true);
        }
      }
      httpRequest.headersList.delete("host", true);
      if (includeCredentials) {
        if (!httpRequest.headersList.contains("authorization", true)) {
          let authorizationValue = null;
          if (hasAuthenticationEntry(httpRequest) && (httpRequest.useURLCredentials === void 0 || !includesCredentials(requestCurrentURL(httpRequest)))) {
          } else if (includesCredentials(requestCurrentURL(httpRequest)) && isAuthenticationFetch) {
            const { username, password } = requestCurrentURL(httpRequest);
            authorizationValue = `Basic ${Buffer.from(`${username}:${password}`).toString("base64")}`;
          }
          if (authorizationValue !== null) {
            httpRequest.headersList.append("Authorization", authorizationValue, false);
          }
        }
      }
      if (httpCache == null) {
        httpRequest.cache = "no-store";
      }
      if (httpRequest.cache !== "no-store" && httpRequest.cache !== "reload") {
      }
      if (response == null) {
        if (httpRequest.cache === "only-if-cached") {
          return makeNetworkError("only if cached");
        }
        const forwardResponse = await httpNetworkFetch(
          httpFetchParams,
          includeCredentials,
          isNewConnectionFetch
        );
        if (!safeMethodsSet.has(httpRequest.method) && forwardResponse.status >= 200 && forwardResponse.status <= 399) {
        }
        if (revalidatingFlag && forwardResponse.status === 304) {
        }
        if (response == null) {
          response = forwardResponse;
        }
      }
      response.urlList = [...httpRequest.urlList];
      if (httpRequest.headersList.contains("range", true)) {
        response.rangeRequested = true;
      }
      response.requestIncludesCredentials = includeCredentials;
      if (response.status === 401 && httpRequest.responseTainting !== "cors" && includeCredentials && (request.useURLCredentials !== void 0 || isTraversableNavigable(request.traversableForUserPrompts))) {
        if (request.body != null) {
          if (request.body.source == null) {
            return response;
          }
          request.body = safelyExtractBody(request.body.source)[0];
        }
        if (request.useURLCredentials === void 0 || isAuthenticationFetch) {
          if (isCancelled(fetchParams)) {
            return makeAppropriateNetworkError(fetchParams);
          }
          return response;
        }
        fetchParams.controller.connection.destroy();
        response = await httpNetworkOrCacheFetch(fetchParams, true);
      }
      if (response.status === 407) {
        if (request.window === "no-window") {
          return makeNetworkError();
        }
        if (isCancelled(fetchParams)) {
          return makeAppropriateNetworkError(fetchParams);
        }
        return makeNetworkError("proxy authentication required");
      }
      if (
        // response’s status is 421
        response.status === 421 && // isNewConnectionFetch is false
        !isNewConnectionFetch && // request’s body is null, or request’s body is non-null and request’s body’s source is non-null
        (request.body == null || request.body.source != null)
      ) {
        if (isCancelled(fetchParams)) {
          return makeAppropriateNetworkError(fetchParams);
        }
        fetchParams.controller.connection.destroy();
        response = await httpNetworkOrCacheFetch(
          fetchParams,
          isAuthenticationFetch,
          true
        );
      }
      if (isAuthenticationFetch) {
      }
      return response;
    }
    async function httpNetworkFetch(fetchParams, includeCredentials = false, forceNewConnection = false) {
      assert13(!fetchParams.controller.connection || fetchParams.controller.connection.destroyed);
      fetchParams.controller.connection = {
        abort: null,
        destroyed: false,
        destroy(err, abort = true) {
          if (!this.destroyed) {
            this.destroyed = true;
            if (abort) {
              this.abort?.(err ?? new DOMException("The operation was aborted.", "AbortError"));
            }
          }
        }
      };
      const request = fetchParams.request;
      let response = null;
      const timingInfo = fetchParams.timingInfo;
      const httpCache = null;
      if (httpCache == null) {
        request.cache = "no-store";
      }
      const newConnection = forceNewConnection ? "yes" : "no";
      if (request.mode === "websocket") {
      } else {
      }
      let requestBody = null;
      if (request.body == null && fetchParams.processRequestEndOfBody) {
        queueMicrotask(() => fetchParams.processRequestEndOfBody());
      } else if (request.body != null) {
        const processBodyChunk = async function* (bytes) {
          if (isCancelled(fetchParams)) {
            return;
          }
          yield bytes;
          fetchParams.processRequestBodyChunkLength?.(bytes.byteLength);
        };
        const processEndOfBody = () => {
          if (isCancelled(fetchParams)) {
            return;
          }
          if (fetchParams.processRequestEndOfBody) {
            fetchParams.processRequestEndOfBody();
          }
        };
        const processBodyError = (e) => {
          if (isCancelled(fetchParams)) {
            return;
          }
          if (e.name === "AbortError") {
            fetchParams.controller.abort();
          } else {
            fetchParams.controller.terminate(e);
          }
        };
        requestBody = (async function* () {
          try {
            for await (const bytes of request.body.stream) {
              yield* processBodyChunk(bytes);
            }
            processEndOfBody();
          } catch (err) {
            processBodyError(err);
          }
        })();
      }
      try {
        const { body, status, statusText, headersList, socket } = await dispatch({ body: requestBody });
        if (socket) {
          response = makeResponse({ status, statusText, headersList, socket });
        } else {
          const iterator = body[Symbol.asyncIterator]();
          fetchParams.controller.next = () => iterator.next();
          response = makeResponse({ status, statusText, headersList });
        }
      } catch (err) {
        if (err.name === "AbortError") {
          fetchParams.controller.connection.destroy();
          return makeAppropriateNetworkError(fetchParams, err);
        }
        return makeNetworkError(err);
      }
      const pullAlgorithm = () => {
        return fetchParams.controller.resume();
      };
      const cancelAlgorithm = (reason) => {
        if (!isCancelled(fetchParams)) {
          fetchParams.controller.abort(reason);
        }
      };
      const stream2 = new ReadableStream(
        {
          start(controller) {
            fetchParams.controller.controller = controller;
          },
          pull: pullAlgorithm,
          cancel: cancelAlgorithm,
          type: "bytes"
        }
      );
      response.body = { stream: stream2, source: null, length: null };
      if (!fetchParams.controller.resume) {
        fetchParams.controller.on("terminated", onAborted);
      }
      fetchParams.controller.resume = async () => {
        while (true) {
          let bytes;
          let isFailure;
          try {
            const { done, value } = await fetchParams.controller.next();
            if (isAborted(fetchParams)) {
              break;
            }
            bytes = done ? void 0 : value;
          } catch (err) {
            if (fetchParams.controller.ended && !timingInfo.encodedBodySize) {
              bytes = void 0;
            } else {
              bytes = err;
              isFailure = true;
            }
          }
          if (bytes === void 0) {
            readableStreamClose(fetchParams.controller.controller);
            finalizeResponse(fetchParams, response);
            return;
          }
          timingInfo.decodedBodySize += bytes?.byteLength ?? 0;
          if (isFailure) {
            fetchParams.controller.terminate(bytes);
            return;
          }
          const buffer3 = new Uint8Array(bytes);
          if (buffer3.byteLength) {
            fetchParams.controller.controller.enqueue(buffer3);
          }
          if (isErrored(stream2)) {
            fetchParams.controller.terminate();
            return;
          }
          if (fetchParams.controller.controller.desiredSize <= 0) {
            return;
          }
        }
      };
      function onAborted(reason) {
        if (isAborted(fetchParams)) {
          response.aborted = true;
          if (isReadable(stream2)) {
            fetchParams.controller.controller.error(
              fetchParams.controller.serializedAbortReason
            );
          }
        } else {
          if (isReadable(stream2)) {
            fetchParams.controller.controller.error(new TypeError("terminated", {
              cause: isErrorLike(reason) ? reason : void 0
            }));
          }
        }
        fetchParams.controller.connection.destroy();
      }
      return response;
      function dispatch({ body }) {
        const url7 = requestCurrentURL(request);
        const agent = fetchParams.controller.dispatcher;
        const path218 = url7.pathname + url7.search;
        const hasTrailingQuestionMark = url7.search.length === 0 && url7.href[url7.href.length - url7.hash.length - 1] === "?";
        return new Promise((resolve3, reject3) => agent.dispatch(
          {
            path: hasTrailingQuestionMark ? `${path218}?` : path218,
            origin: url7.origin,
            method: request.method,
            body: agent.isMockActive ? request.body && (request.body.source || request.body.stream) : body,
            headers: request.headersList.entries,
            maxRedirections: 0,
            upgrade: request.mode === "websocket" ? "websocket" : void 0
          },
          {
            body: null,
            abort: null,
            onConnect(abort) {
              const { connection } = fetchParams.controller;
              timingInfo.finalConnectionTimingInfo = clampAndCoarsenConnectionTimingInfo(void 0, timingInfo.postRedirectStartTime, fetchParams.crossOriginIsolatedCapability);
              if (connection.destroyed) {
                abort(new DOMException("The operation was aborted.", "AbortError"));
              } else {
                fetchParams.controller.on("terminated", abort);
                this.abort = connection.abort = abort;
              }
              timingInfo.finalNetworkRequestStartTime = coarsenedSharedCurrentTime(fetchParams.crossOriginIsolatedCapability);
            },
            onResponseStarted() {
              timingInfo.finalNetworkResponseStartTime = coarsenedSharedCurrentTime(fetchParams.crossOriginIsolatedCapability);
            },
            onHeaders(status, rawHeaders, resume, statusText) {
              if (status < 200) {
                return false;
              }
              const headersList = new HeadersList();
              for (let i2 = 0; i2 < rawHeaders.length; i2 += 2) {
                const nameStr = bufferToLowerCasedHeaderName(rawHeaders[i2]);
                const value = rawHeaders[i2 + 1];
                if (Array.isArray(value) && !Buffer.isBuffer(rawHeaders[i2 + 1])) {
                  for (const val of value) {
                    headersList.append(nameStr, val.toString("latin1"), true);
                  }
                } else {
                  headersList.append(nameStr, value.toString("latin1"), true);
                }
              }
              const location = headersList.get("location", true);
              this.body = new Readable4({ read: resume });
              const willFollow = location && request.redirect === "follow" && redirectStatusSet.has(status);
              const decoders = [];
              if (request.method !== "HEAD" && request.method !== "CONNECT" && !nullBodyStatus.includes(status) && !willFollow) {
                const contentEncoding = headersList.get("content-encoding", true);
                const codings = contentEncoding ? contentEncoding.toLowerCase().split(",") : [];
                const maxContentEncodings = 5;
                if (codings.length > maxContentEncodings) {
                  reject3(new Error(`too many content-encodings in response: ${codings.length}, maximum allowed is ${maxContentEncodings}`));
                  return true;
                }
                for (let i2 = codings.length - 1; i2 >= 0; --i2) {
                  const coding = codings[i2].trim();
                  if (coding === "x-gzip" || coding === "gzip") {
                    decoders.push(zlib.createGunzip({
                      // Be less strict when decoding compressed responses, since sometimes
                      // servers send slightly invalid responses that are still accepted
                      // by common browsers.
                      // Always using Z_SYNC_FLUSH is what cURL does.
                      flush: zlib.constants.Z_SYNC_FLUSH,
                      finishFlush: zlib.constants.Z_SYNC_FLUSH
                    }));
                  } else if (coding === "deflate") {
                    decoders.push(createInflate({
                      flush: zlib.constants.Z_SYNC_FLUSH,
                      finishFlush: zlib.constants.Z_SYNC_FLUSH
                    }));
                  } else if (coding === "br") {
                    decoders.push(zlib.createBrotliDecompress({
                      flush: zlib.constants.BROTLI_OPERATION_FLUSH,
                      finishFlush: zlib.constants.BROTLI_OPERATION_FLUSH
                    }));
                  } else if (coding === "zstd" && hasZstd) {
                    decoders.push(zlib.createZstdDecompress({
                      flush: zlib.constants.ZSTD_e_continue,
                      finishFlush: zlib.constants.ZSTD_e_end
                    }));
                  } else {
                    decoders.length = 0;
                    break;
                  }
                }
              }
              const onError = this.onError.bind(this);
              resolve3({
                status,
                statusText,
                headersList,
                body: decoders.length ? pipeline2(this.body, ...decoders, (err) => {
                  if (err) {
                    this.onError(err);
                  }
                }).on("error", onError) : this.body.on("error", onError)
              });
              return true;
            },
            onData(chunk) {
              if (fetchParams.controller.dump) {
                return;
              }
              const bytes = chunk;
              timingInfo.encodedBodySize += bytes.byteLength;
              return this.body.push(bytes);
            },
            onComplete() {
              if (this.abort) {
                fetchParams.controller.off("terminated", this.abort);
              }
              fetchParams.controller.ended = true;
              this.body.push(null);
            },
            onError(error) {
              if (this.abort) {
                fetchParams.controller.off("terminated", this.abort);
              }
              this.body?.destroy(error);
              fetchParams.controller.terminate(error);
              reject3(error);
            },
            onRequestUpgrade(_controller, status, headers, socket) {
              if (socket.session != null && status !== 200 || socket.session == null && status !== 101) {
                return false;
              }
              const headersList = new HeadersList();
              for (const [name, value] of Object.entries(headers)) {
                if (value == null) {
                  continue;
                }
                const headerName = name.toLowerCase();
                if (Array.isArray(value)) {
                  for (const entry of value) {
                    headersList.append(headerName, String(entry), true);
                  }
                } else {
                  headersList.append(headerName, String(value), true);
                }
              }
              resolve3({
                status,
                statusText: STATUS_CODES[status],
                headersList,
                socket
              });
              return true;
            },
            onUpgrade(status, rawHeaders, socket) {
              if (socket.session != null && status !== 200 || socket.session == null && status !== 101) {
                return false;
              }
              const headersList = new HeadersList();
              for (let i2 = 0; i2 < rawHeaders.length; i2 += 2) {
                const nameStr = bufferToLowerCasedHeaderName(rawHeaders[i2]);
                const value = rawHeaders[i2 + 1];
                if (Array.isArray(value) && !Buffer.isBuffer(rawHeaders[i2 + 1])) {
                  for (const val of value) {
                    headersList.append(nameStr, val.toString("latin1"), true);
                  }
                } else {
                  headersList.append(nameStr, value.toString("latin1"), true);
                }
              }
              resolve3({
                status,
                statusText: STATUS_CODES[status],
                headersList,
                socket
              });
              return true;
            }
          }
        ));
      }
    }
    module2.exports = {
      fetch: fetch2,
      Fetch,
      fetching,
      finalizeAndReportTiming
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/cache/util.js
var require_util8 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/cache/util.js"(exports2, module2) {
    "use strict";
    var assert13 = __require("node:assert");
    var { URLSerializer } = require_data_url();
    var { isValidHeaderName } = require_util7();
    function urlEquals(A, B, excludeFragment = false) {
      const serializedA = URLSerializer(A, excludeFragment);
      const serializedB = URLSerializer(B, excludeFragment);
      return serializedA === serializedB;
    }
    function getFieldValues(header) {
      assert13(header !== null);
      const values = [];
      for (let value of header.split(",")) {
        value = value.trim();
        if (isValidHeaderName(value)) {
          values.push(value);
        }
      }
      return values;
    }
    module2.exports = {
      urlEquals,
      getFieldValues
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/cache/cache.js
var require_cache3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/cache/cache.js"(exports2, module2) {
    "use strict";
    var assert13 = __require("node:assert");
    var { kConstruct } = require_symbols();
    var { urlEquals, getFieldValues } = require_util8();
    var { kEnumerableProperty, isDisturbed } = require_util6();
    var { webidl } = require_webidl();
    var { cloneResponse, fromInnerResponse, getResponseState } = require_response();
    var { Request, fromInnerRequest, getRequestState } = require_request2();
    var { fetching } = require_fetch();
    var { urlIsHttpHttpsScheme, readAllBytes } = require_util7();
    var { createDeferredPromise } = require_promise();
    var Cache = class _Cache {
      /**
       * @see https://w3c.github.io/ServiceWorker/#dfn-relevant-request-response-list
       * @type {requestResponseList}
       */
      #relevantRequestResponseList;
      constructor() {
        if (arguments[0] !== kConstruct) {
          webidl.illegalConstructor();
        }
        webidl.util.markAsUncloneable(this);
        this.#relevantRequestResponseList = arguments[1];
      }
      async match(request, options = {}) {
        webidl.brandCheck(this, _Cache);
        const prefix = "Cache.match";
        webidl.argumentLengthCheck(arguments, 1, prefix);
        request = webidl.converters.RequestInfo(request);
        options = webidl.converters.CacheQueryOptions(options, prefix, "options");
        const p = this.#internalMatchAll(request, options, 1);
        if (p.length === 0) {
          return;
        }
        return p[0];
      }
      async matchAll(request = void 0, options = {}) {
        webidl.brandCheck(this, _Cache);
        const prefix = "Cache.matchAll";
        if (request !== void 0) request = webidl.converters.RequestInfo(request);
        options = webidl.converters.CacheQueryOptions(options, prefix, "options");
        return this.#internalMatchAll(request, options);
      }
      async add(request) {
        webidl.brandCheck(this, _Cache);
        const prefix = "Cache.add";
        webidl.argumentLengthCheck(arguments, 1, prefix);
        request = webidl.converters.RequestInfo(request);
        const requests = [request];
        const responseArrayPromise = this.addAll(requests);
        return await responseArrayPromise;
      }
      async addAll(requests) {
        webidl.brandCheck(this, _Cache);
        const prefix = "Cache.addAll";
        webidl.argumentLengthCheck(arguments, 1, prefix);
        const responsePromises = [];
        const requestList = [];
        for (let request of requests) {
          if (request === void 0) {
            throw webidl.errors.conversionFailed({
              prefix,
              argument: "Argument 1",
              types: ["undefined is not allowed"]
            });
          }
          request = webidl.converters.RequestInfo(request);
          if (typeof request === "string") {
            continue;
          }
          const r = getRequestState(request);
          if (!urlIsHttpHttpsScheme(r.url) || r.method !== "GET") {
            throw webidl.errors.exception({
              header: prefix,
              message: "Expected http/s scheme when method is not GET."
            });
          }
        }
        const fetchControllers = [];
        for (const request of requests) {
          const r = getRequestState(new Request(request));
          if (!urlIsHttpHttpsScheme(r.url)) {
            throw webidl.errors.exception({
              header: prefix,
              message: "Expected http/s scheme."
            });
          }
          r.initiator = "fetch";
          r.destination = "subresource";
          requestList.push(r);
          const responsePromise = createDeferredPromise();
          fetchControllers.push(fetching({
            request: r,
            processResponse(response) {
              if (response.type === "error" || response.status === 206 || response.status < 200 || response.status > 299) {
                responsePromise.reject(webidl.errors.exception({
                  header: "Cache.addAll",
                  message: "Received an invalid status code or the request failed."
                }));
              } else if (response.headersList.contains("vary")) {
                const fieldValues = getFieldValues(response.headersList.get("vary"));
                for (const fieldValue of fieldValues) {
                  if (fieldValue === "*") {
                    responsePromise.reject(webidl.errors.exception({
                      header: "Cache.addAll",
                      message: "invalid vary field value"
                    }));
                    for (const controller of fetchControllers) {
                      controller.abort();
                    }
                    return;
                  }
                }
              }
            },
            processResponseEndOfBody(response) {
              if (response.aborted) {
                responsePromise.reject(new DOMException("aborted", "AbortError"));
                return;
              }
              responsePromise.resolve(response);
            }
          }));
          responsePromises.push(responsePromise.promise);
        }
        const p = Promise.all(responsePromises);
        const responses = await p;
        const operations = [];
        let index = 0;
        for (const response of responses) {
          const operation5 = {
            type: "put",
            // 7.3.2
            request: requestList[index],
            // 7.3.3
            response
            // 7.3.4
          };
          operations.push(operation5);
          index++;
        }
        const cacheJobPromise = createDeferredPromise();
        let errorData = null;
        try {
          this.#batchCacheOperations(operations);
        } catch (e) {
          errorData = e;
        }
        queueMicrotask(() => {
          if (errorData === null) {
            cacheJobPromise.resolve(void 0);
          } else {
            cacheJobPromise.reject(errorData);
          }
        });
        return cacheJobPromise.promise;
      }
      async put(request, response) {
        webidl.brandCheck(this, _Cache);
        const prefix = "Cache.put";
        webidl.argumentLengthCheck(arguments, 2, prefix);
        request = webidl.converters.RequestInfo(request);
        response = webidl.converters.Response(response, prefix, "response");
        let innerRequest = null;
        if (webidl.is.Request(request)) {
          innerRequest = getRequestState(request);
        } else {
          innerRequest = getRequestState(new Request(request));
        }
        if (!urlIsHttpHttpsScheme(innerRequest.url) || innerRequest.method !== "GET") {
          throw webidl.errors.exception({
            header: prefix,
            message: "Expected an http/s scheme when method is not GET"
          });
        }
        const innerResponse = getResponseState(response);
        if (innerResponse.status === 206) {
          throw webidl.errors.exception({
            header: prefix,
            message: "Got 206 status"
          });
        }
        if (innerResponse.headersList.contains("vary")) {
          const fieldValues = getFieldValues(innerResponse.headersList.get("vary"));
          for (const fieldValue of fieldValues) {
            if (fieldValue === "*") {
              throw webidl.errors.exception({
                header: prefix,
                message: "Got * vary field value"
              });
            }
          }
        }
        if (innerResponse.body && (isDisturbed(innerResponse.body.stream) || innerResponse.body.stream.locked)) {
          throw webidl.errors.exception({
            header: prefix,
            message: "Response body is locked or disturbed"
          });
        }
        const clonedResponse = cloneResponse(innerResponse);
        const bodyReadPromise = createDeferredPromise();
        if (innerResponse.body != null) {
          const stream2 = innerResponse.body.stream;
          const reader = stream2.getReader();
          readAllBytes(reader, bodyReadPromise.resolve, bodyReadPromise.reject);
        } else {
          bodyReadPromise.resolve(void 0);
        }
        const operations = [];
        const operation5 = {
          type: "put",
          // 14.
          request: innerRequest,
          // 15.
          response: clonedResponse
          // 16.
        };
        operations.push(operation5);
        const bytes = await bodyReadPromise.promise;
        if (clonedResponse.body != null) {
          clonedResponse.body.source = bytes;
        }
        const cacheJobPromise = createDeferredPromise();
        let errorData = null;
        try {
          this.#batchCacheOperations(operations);
        } catch (e) {
          errorData = e;
        }
        queueMicrotask(() => {
          if (errorData === null) {
            cacheJobPromise.resolve();
          } else {
            cacheJobPromise.reject(errorData);
          }
        });
        return cacheJobPromise.promise;
      }
      async delete(request, options = {}) {
        webidl.brandCheck(this, _Cache);
        const prefix = "Cache.delete";
        webidl.argumentLengthCheck(arguments, 1, prefix);
        request = webidl.converters.RequestInfo(request);
        options = webidl.converters.CacheQueryOptions(options, prefix, "options");
        let r = null;
        if (webidl.is.Request(request)) {
          r = getRequestState(request);
          if (r.method !== "GET" && !options.ignoreMethod) {
            return false;
          }
        } else {
          assert13(typeof request === "string");
          r = getRequestState(new Request(request));
        }
        const operations = [];
        const operation5 = {
          type: "delete",
          request: r,
          options
        };
        operations.push(operation5);
        const cacheJobPromise = createDeferredPromise();
        let errorData = null;
        let requestResponses;
        try {
          requestResponses = this.#batchCacheOperations(operations);
        } catch (e) {
          errorData = e;
        }
        queueMicrotask(() => {
          if (errorData === null) {
            cacheJobPromise.resolve(!!requestResponses?.length);
          } else {
            cacheJobPromise.reject(errorData);
          }
        });
        return cacheJobPromise.promise;
      }
      /**
       * @see https://w3c.github.io/ServiceWorker/#dom-cache-keys
       * @param {any} request
       * @param {import('../../../types/cache').CacheQueryOptions} options
       * @returns {Promise<readonly Request[]>}
       */
      async keys(request = void 0, options = {}) {
        webidl.brandCheck(this, _Cache);
        const prefix = "Cache.keys";
        if (request !== void 0) request = webidl.converters.RequestInfo(request);
        options = webidl.converters.CacheQueryOptions(options, prefix, "options");
        let r = null;
        if (request !== void 0) {
          if (webidl.is.Request(request)) {
            r = getRequestState(request);
            if (r.method !== "GET" && !options.ignoreMethod) {
              return [];
            }
          } else if (typeof request === "string") {
            r = getRequestState(new Request(request));
          }
        }
        const promise2 = createDeferredPromise();
        const requests = [];
        if (request === void 0) {
          for (const requestResponse of this.#relevantRequestResponseList) {
            requests.push(requestResponse[0]);
          }
        } else {
          const requestResponses = this.#queryCache(r, options);
          for (const requestResponse of requestResponses) {
            requests.push(requestResponse[0]);
          }
        }
        queueMicrotask(() => {
          const requestList = [];
          for (const request2 of requests) {
            const requestObject = fromInnerRequest(
              request2,
              void 0,
              new AbortController().signal,
              "immutable"
            );
            requestList.push(requestObject);
          }
          promise2.resolve(Object.freeze(requestList));
        });
        return promise2.promise;
      }
      /**
       * @see https://w3c.github.io/ServiceWorker/#batch-cache-operations-algorithm
       * @param {CacheBatchOperation[]} operations
       * @returns {requestResponseList}
       */
      #batchCacheOperations(operations) {
        const cache = this.#relevantRequestResponseList;
        const backupCache = [...cache];
        const addedItems = [];
        const resultList = [];
        try {
          for (const operation5 of operations) {
            if (operation5.type !== "delete" && operation5.type !== "put") {
              throw webidl.errors.exception({
                header: "Cache.#batchCacheOperations",
                message: 'operation type does not match "delete" or "put"'
              });
            }
            if (operation5.type === "delete" && operation5.response != null) {
              throw webidl.errors.exception({
                header: "Cache.#batchCacheOperations",
                message: "delete operation should not have an associated response"
              });
            }
            if (this.#queryCache(operation5.request, operation5.options, addedItems).length) {
              throw new DOMException("???", "InvalidStateError");
            }
            let requestResponses;
            if (operation5.type === "delete") {
              requestResponses = this.#queryCache(operation5.request, operation5.options);
              if (requestResponses.length === 0) {
                return [];
              }
              for (const requestResponse of requestResponses) {
                const idx = cache.indexOf(requestResponse);
                assert13(idx !== -1);
                cache.splice(idx, 1);
              }
            } else if (operation5.type === "put") {
              if (operation5.response == null) {
                throw webidl.errors.exception({
                  header: "Cache.#batchCacheOperations",
                  message: "put operation should have an associated response"
                });
              }
              const r = operation5.request;
              if (!urlIsHttpHttpsScheme(r.url)) {
                throw webidl.errors.exception({
                  header: "Cache.#batchCacheOperations",
                  message: "expected http or https scheme"
                });
              }
              if (r.method !== "GET") {
                throw webidl.errors.exception({
                  header: "Cache.#batchCacheOperations",
                  message: "not get method"
                });
              }
              if (operation5.options != null) {
                throw webidl.errors.exception({
                  header: "Cache.#batchCacheOperations",
                  message: "options must not be defined"
                });
              }
              requestResponses = this.#queryCache(operation5.request);
              for (const requestResponse of requestResponses) {
                const idx = cache.indexOf(requestResponse);
                assert13(idx !== -1);
                cache.splice(idx, 1);
              }
              cache.push([operation5.request, operation5.response]);
              addedItems.push([operation5.request, operation5.response]);
            }
            resultList.push([operation5.request, operation5.response]);
          }
          return resultList;
        } catch (e) {
          this.#relevantRequestResponseList.length = 0;
          this.#relevantRequestResponseList = backupCache;
          throw e;
        }
      }
      /**
       * @see https://w3c.github.io/ServiceWorker/#query-cache
       * @param {any} requestQuery
       * @param {import('../../../types/cache').CacheQueryOptions} options
       * @param {requestResponseList} targetStorage
       * @returns {requestResponseList}
       */
      #queryCache(requestQuery, options, targetStorage) {
        const resultList = [];
        const storage = targetStorage ?? this.#relevantRequestResponseList;
        for (const requestResponse of storage) {
          const [cachedRequest, cachedResponse] = requestResponse;
          if (this.#requestMatchesCachedItem(requestQuery, cachedRequest, cachedResponse, options)) {
            resultList.push(requestResponse);
          }
        }
        return resultList;
      }
      /**
       * @see https://w3c.github.io/ServiceWorker/#request-matches-cached-item-algorithm
       * @param {any} requestQuery
       * @param {any} request
       * @param {any | null} response
       * @param {import('../../../types/cache').CacheQueryOptions | undefined} options
       * @returns {boolean}
       */
      #requestMatchesCachedItem(requestQuery, request, response = null, options) {
        const queryURL = new URL(requestQuery.url);
        const cachedURL = new URL(request.url);
        if (options?.ignoreSearch) {
          cachedURL.search = "";
          queryURL.search = "";
        }
        if (!urlEquals(queryURL, cachedURL, true)) {
          return false;
        }
        if (response == null || options?.ignoreVary || !response.headersList.contains("vary")) {
          return true;
        }
        const fieldValues = getFieldValues(response.headersList.get("vary"));
        for (const fieldValue of fieldValues) {
          if (fieldValue === "*") {
            return false;
          }
          const requestValue = request.headersList.get(fieldValue);
          const queryValue = requestQuery.headersList.get(fieldValue);
          if (requestValue !== queryValue) {
            return false;
          }
        }
        return true;
      }
      #internalMatchAll(request, options, maxResponses = Infinity) {
        let r = null;
        if (request !== void 0) {
          if (webidl.is.Request(request)) {
            r = getRequestState(request);
            if (r.method !== "GET" && !options.ignoreMethod) {
              return [];
            }
          } else if (typeof request === "string") {
            r = getRequestState(new Request(request));
          }
        }
        const responses = [];
        if (request === void 0) {
          for (const requestResponse of this.#relevantRequestResponseList) {
            responses.push(requestResponse[1]);
          }
        } else {
          const requestResponses = this.#queryCache(r, options);
          for (const requestResponse of requestResponses) {
            responses.push(requestResponse[1]);
          }
        }
        const responseList = [];
        for (const response of responses) {
          const responseObject = fromInnerResponse(cloneResponse(response), "immutable");
          responseList.push(responseObject);
          if (responseList.length >= maxResponses) {
            break;
          }
        }
        return Object.freeze(responseList);
      }
    };
    Object.defineProperties(Cache.prototype, {
      [Symbol.toStringTag]: {
        value: "Cache",
        configurable: true
      },
      match: kEnumerableProperty,
      matchAll: kEnumerableProperty,
      add: kEnumerableProperty,
      addAll: kEnumerableProperty,
      put: kEnumerableProperty,
      delete: kEnumerableProperty,
      keys: kEnumerableProperty
    });
    var cacheQueryOptionConverters = [
      {
        key: "ignoreSearch",
        converter: webidl.converters.boolean,
        defaultValue: () => false
      },
      {
        key: "ignoreMethod",
        converter: webidl.converters.boolean,
        defaultValue: () => false
      },
      {
        key: "ignoreVary",
        converter: webidl.converters.boolean,
        defaultValue: () => false
      }
    ];
    webidl.converters.CacheQueryOptions = webidl.dictionaryConverter(cacheQueryOptionConverters);
    webidl.converters.MultiCacheQueryOptions = webidl.dictionaryConverter([
      ...cacheQueryOptionConverters,
      {
        key: "cacheName",
        converter: webidl.converters.DOMString
      }
    ]);
    webidl.converters.Response = webidl.interfaceConverter(
      webidl.is.Response,
      "Response"
    );
    webidl.converters["sequence<RequestInfo>"] = webidl.sequenceConverter(
      webidl.converters.RequestInfo
    );
    module2.exports = {
      Cache
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/cache/cachestorage.js
var require_cachestorage = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/cache/cachestorage.js"(exports2, module2) {
    "use strict";
    var { Cache } = require_cache3();
    var { webidl } = require_webidl();
    var { kEnumerableProperty } = require_util6();
    var { kConstruct } = require_symbols();
    var CacheStorage = class _CacheStorage {
      /**
       * @see https://w3c.github.io/ServiceWorker/#dfn-relevant-name-to-cache-map
       * @type {Map<string, import('./cache').requestResponseList}
       */
      #caches = /* @__PURE__ */ new Map();
      constructor() {
        if (arguments[0] !== kConstruct) {
          webidl.illegalConstructor();
        }
        webidl.util.markAsUncloneable(this);
      }
      async match(request, options = {}) {
        webidl.brandCheck(this, _CacheStorage);
        webidl.argumentLengthCheck(arguments, 1, "CacheStorage.match");
        request = webidl.converters.RequestInfo(request);
        options = webidl.converters.MultiCacheQueryOptions(options);
        if (options.cacheName != null) {
          if (this.#caches.has(options.cacheName)) {
            const cacheList2 = this.#caches.get(options.cacheName);
            const cache = new Cache(kConstruct, cacheList2);
            return await cache.match(request, options);
          }
        } else {
          for (const cacheList2 of this.#caches.values()) {
            const cache = new Cache(kConstruct, cacheList2);
            const response = await cache.match(request, options);
            if (response !== void 0) {
              return response;
            }
          }
        }
      }
      /**
       * @see https://w3c.github.io/ServiceWorker/#cache-storage-has
       * @param {string} cacheName
       * @returns {Promise<boolean>}
       */
      async has(cacheName) {
        webidl.brandCheck(this, _CacheStorage);
        const prefix = "CacheStorage.has";
        webidl.argumentLengthCheck(arguments, 1, prefix);
        cacheName = webidl.converters.DOMString(cacheName, prefix, "cacheName");
        return this.#caches.has(cacheName);
      }
      /**
       * @see https://w3c.github.io/ServiceWorker/#dom-cachestorage-open
       * @param {string} cacheName
       * @returns {Promise<Cache>}
       */
      async open(cacheName) {
        webidl.brandCheck(this, _CacheStorage);
        const prefix = "CacheStorage.open";
        webidl.argumentLengthCheck(arguments, 1, prefix);
        cacheName = webidl.converters.DOMString(cacheName, prefix, "cacheName");
        if (this.#caches.has(cacheName)) {
          const cache2 = this.#caches.get(cacheName);
          return new Cache(kConstruct, cache2);
        }
        const cache = [];
        this.#caches.set(cacheName, cache);
        return new Cache(kConstruct, cache);
      }
      /**
       * @see https://w3c.github.io/ServiceWorker/#cache-storage-delete
       * @param {string} cacheName
       * @returns {Promise<boolean>}
       */
      async delete(cacheName) {
        webidl.brandCheck(this, _CacheStorage);
        const prefix = "CacheStorage.delete";
        webidl.argumentLengthCheck(arguments, 1, prefix);
        cacheName = webidl.converters.DOMString(cacheName, prefix, "cacheName");
        return this.#caches.delete(cacheName);
      }
      /**
       * @see https://w3c.github.io/ServiceWorker/#cache-storage-keys
       * @returns {Promise<string[]>}
       */
      async keys() {
        webidl.brandCheck(this, _CacheStorage);
        const keys4 = this.#caches.keys();
        return [...keys4];
      }
    };
    Object.defineProperties(CacheStorage.prototype, {
      [Symbol.toStringTag]: {
        value: "CacheStorage",
        configurable: true
      },
      match: kEnumerableProperty,
      has: kEnumerableProperty,
      open: kEnumerableProperty,
      delete: kEnumerableProperty,
      keys: kEnumerableProperty
    });
    module2.exports = {
      CacheStorage
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/cookies/constants.js
var require_constants15 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/cookies/constants.js"(exports2, module2) {
    "use strict";
    var maxAttributeValueSize = 1024;
    var maxNameValuePairSize = 4096;
    module2.exports = {
      maxAttributeValueSize,
      maxNameValuePairSize
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/cookies/util.js
var require_util9 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/cookies/util.js"(exports2, module2) {
    "use strict";
    function isCTLExcludingHtab(value) {
      for (let i2 = 0; i2 < value.length; ++i2) {
        const code = value.charCodeAt(i2);
        if (code >= 0 && code <= 8 || code >= 10 && code <= 31 || code === 127) {
          return true;
        }
      }
      return false;
    }
    function validateCookieName(name) {
      for (let i2 = 0; i2 < name.length; ++i2) {
        const code = name.charCodeAt(i2);
        if (code < 33 || // exclude CTLs (0-31), SP and HT
        code > 126 || // exclude non-ascii and DEL
        code === 34 || // "
        code === 40 || // (
        code === 41 || // )
        code === 60 || // <
        code === 62 || // >
        code === 64 || // @
        code === 44 || // ,
        code === 59 || // ;
        code === 58 || // :
        code === 92 || // \
        code === 47 || // /
        code === 91 || // [
        code === 93 || // ]
        code === 63 || // ?
        code === 61 || // =
        code === 123 || // {
        code === 125) {
          throw new Error("Invalid cookie name");
        }
      }
    }
    function validateCookieValue(value) {
      let len = value.length;
      let i2 = 0;
      if (value[0] === '"') {
        if (len === 1 || value[len - 1] !== '"') {
          throw new Error("Invalid cookie value");
        }
        --len;
        ++i2;
      }
      while (i2 < len) {
        const code = value.charCodeAt(i2++);
        if (code < 33 || // exclude CTLs (0-31)
        code > 126 || // non-ascii and DEL (127)
        code === 34 || // "
        code === 44 || // ,
        code === 59 || // ;
        code === 92) {
          throw new Error("Invalid cookie value");
        }
      }
    }
    function validateCookiePath(path218) {
      for (let i2 = 0; i2 < path218.length; ++i2) {
        const code = path218.charCodeAt(i2);
        if (code < 32 || // exclude CTLs (0-31)
        code === 127 || // DEL
        code === 59) {
          throw new Error("Invalid cookie path");
        }
      }
    }
    function validateCookieDomain(domain) {
      if (domain.startsWith("-") || domain.endsWith(".") || domain.endsWith("-")) {
        throw new Error("Invalid cookie domain");
      }
    }
    var IMFDays = [
      "Sun",
      "Mon",
      "Tue",
      "Wed",
      "Thu",
      "Fri",
      "Sat"
    ];
    var IMFMonths = [
      "Jan",
      "Feb",
      "Mar",
      "Apr",
      "May",
      "Jun",
      "Jul",
      "Aug",
      "Sep",
      "Oct",
      "Nov",
      "Dec"
    ];
    var IMFPaddedNumbers = Array(61).fill(0).map((_, i2) => i2.toString().padStart(2, "0"));
    function toIMFDate(date) {
      if (typeof date === "number") {
        date = new Date(date);
      }
      return `${IMFDays[date.getUTCDay()]}, ${IMFPaddedNumbers[date.getUTCDate()]} ${IMFMonths[date.getUTCMonth()]} ${date.getUTCFullYear()} ${IMFPaddedNumbers[date.getUTCHours()]}:${IMFPaddedNumbers[date.getUTCMinutes()]}:${IMFPaddedNumbers[date.getUTCSeconds()]} GMT`;
    }
    function validateCookieMaxAge(maxAge) {
      if (maxAge < 0) {
        throw new Error("Invalid cookie max-age");
      }
    }
    function stringify(cookie) {
      if (cookie.name.length === 0) {
        return null;
      }
      validateCookieName(cookie.name);
      validateCookieValue(cookie.value);
      const out = [`${cookie.name}=${cookie.value}`];
      if (cookie.name.startsWith("__Secure-")) {
        cookie.secure = true;
      }
      if (cookie.name.startsWith("__Host-")) {
        cookie.secure = true;
        cookie.domain = null;
        cookie.path = "/";
      }
      if (cookie.secure) {
        out.push("Secure");
      }
      if (cookie.httpOnly) {
        out.push("HttpOnly");
      }
      if (typeof cookie.maxAge === "number") {
        validateCookieMaxAge(cookie.maxAge);
        out.push(`Max-Age=${cookie.maxAge}`);
      }
      if (cookie.domain) {
        validateCookieDomain(cookie.domain);
        out.push(`Domain=${cookie.domain}`);
      }
      if (cookie.path) {
        validateCookiePath(cookie.path);
        out.push(`Path=${cookie.path}`);
      }
      if (cookie.expires && cookie.expires.toString() !== "Invalid Date") {
        out.push(`Expires=${toIMFDate(cookie.expires)}`);
      }
      if (cookie.sameSite) {
        out.push(`SameSite=${cookie.sameSite}`);
      }
      for (const part of cookie.unparsed) {
        if (!part.includes("=")) {
          throw new Error("Invalid unparsed");
        }
        const [key, ...value] = part.split("=");
        out.push(`${key.trim()}=${value.join("=")}`);
      }
      return out.join("; ");
    }
    module2.exports = {
      isCTLExcludingHtab,
      validateCookieName,
      validateCookiePath,
      validateCookieValue,
      toIMFDate,
      stringify
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/cookies/parse.js
var require_parse8 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/cookies/parse.js"(exports2, module2) {
    "use strict";
    var { collectASequenceOfCodePointsFast } = require_infra();
    var { maxNameValuePairSize, maxAttributeValueSize } = require_constants15();
    var { isCTLExcludingHtab } = require_util9();
    var assert13 = __require("node:assert");
    var { unescape: qsUnescape } = __require("node:querystring");
    function parseSetCookie(header) {
      if (isCTLExcludingHtab(header)) {
        return null;
      }
      let nameValuePair = "";
      let unparsedAttributes = "";
      let name = "";
      let value = "";
      if (header.includes(";")) {
        const position3 = { position: 0 };
        nameValuePair = collectASequenceOfCodePointsFast(";", header, position3);
        unparsedAttributes = header.slice(position3.position);
      } else {
        nameValuePair = header;
      }
      if (!nameValuePair.includes("=")) {
        value = nameValuePair;
      } else {
        const position3 = { position: 0 };
        name = collectASequenceOfCodePointsFast(
          "=",
          nameValuePair,
          position3
        );
        value = nameValuePair.slice(position3.position + 1);
      }
      name = name.trim();
      value = value.trim();
      if (name.length + value.length > maxNameValuePairSize) {
        return null;
      }
      return {
        name,
        value: qsUnescape(value),
        ...parseUnparsedAttributes(unparsedAttributes)
      };
    }
    function parseUnparsedAttributes(unparsedAttributes, cookieAttributeList = {}) {
      if (unparsedAttributes.length === 0) {
        return cookieAttributeList;
      }
      assert13(unparsedAttributes[0] === ";");
      unparsedAttributes = unparsedAttributes.slice(1);
      let cookieAv = "";
      if (unparsedAttributes.includes(";")) {
        cookieAv = collectASequenceOfCodePointsFast(
          ";",
          unparsedAttributes,
          { position: 0 }
        );
        unparsedAttributes = unparsedAttributes.slice(cookieAv.length);
      } else {
        cookieAv = unparsedAttributes;
        unparsedAttributes = "";
      }
      let attributeName = "";
      let attributeValue = "";
      if (cookieAv.includes("=")) {
        const position3 = { position: 0 };
        attributeName = collectASequenceOfCodePointsFast(
          "=",
          cookieAv,
          position3
        );
        attributeValue = cookieAv.slice(position3.position + 1);
      } else {
        attributeName = cookieAv;
      }
      attributeName = attributeName.trim();
      attributeValue = attributeValue.trim();
      if (attributeValue.length > maxAttributeValueSize) {
        return parseUnparsedAttributes(unparsedAttributes, cookieAttributeList);
      }
      const attributeNameLowercase = attributeName.toLowerCase();
      if (attributeNameLowercase === "expires") {
        const expiryTime = new Date(attributeValue);
        cookieAttributeList.expires = expiryTime;
      } else if (attributeNameLowercase === "max-age") {
        const charCode = attributeValue.charCodeAt(0);
        if ((charCode < 48 || charCode > 57) && attributeValue[0] !== "-") {
          return parseUnparsedAttributes(unparsedAttributes, cookieAttributeList);
        }
        if (!/^\d+$/.test(attributeValue)) {
          return parseUnparsedAttributes(unparsedAttributes, cookieAttributeList);
        }
        const deltaSeconds = Number(attributeValue);
        cookieAttributeList.maxAge = deltaSeconds;
      } else if (attributeNameLowercase === "domain") {
        let cookieDomain = attributeValue;
        if (cookieDomain[0] === ".") {
          cookieDomain = cookieDomain.slice(1);
        }
        cookieDomain = cookieDomain.toLowerCase();
        cookieAttributeList.domain = cookieDomain;
      } else if (attributeNameLowercase === "path") {
        let cookiePath = "";
        if (attributeValue.length === 0 || attributeValue[0] !== "/") {
          cookiePath = "/";
        } else {
          cookiePath = attributeValue;
        }
        cookieAttributeList.path = cookiePath;
      } else if (attributeNameLowercase === "secure") {
        cookieAttributeList.secure = true;
      } else if (attributeNameLowercase === "httponly") {
        cookieAttributeList.httpOnly = true;
      } else if (attributeNameLowercase === "samesite") {
        let enforcement = "Default";
        const attributeValueLowercase = attributeValue.toLowerCase();
        if (attributeValueLowercase.includes("none")) {
          enforcement = "None";
        }
        if (attributeValueLowercase.includes("strict")) {
          enforcement = "Strict";
        }
        if (attributeValueLowercase.includes("lax")) {
          enforcement = "Lax";
        }
        cookieAttributeList.sameSite = enforcement;
      } else {
        cookieAttributeList.unparsed ??= [];
        cookieAttributeList.unparsed.push(`${attributeName}=${attributeValue}`);
      }
      return parseUnparsedAttributes(unparsedAttributes, cookieAttributeList);
    }
    module2.exports = {
      parseSetCookie,
      parseUnparsedAttributes
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/cookies/index.js
var require_cookies = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/cookies/index.js"(exports2, module2) {
    "use strict";
    var { parseSetCookie } = require_parse8();
    var { stringify } = require_util9();
    var { webidl } = require_webidl();
    var { Headers: Headers2 } = require_headers2();
    var brandChecks = webidl.brandCheckMultiple([Headers2, globalThis.Headers].filter(Boolean));
    function getCookies(headers) {
      webidl.argumentLengthCheck(arguments, 1, "getCookies");
      brandChecks(headers);
      const cookie = headers.get("cookie");
      const out = {};
      if (!cookie) {
        return out;
      }
      for (const piece of cookie.split(";")) {
        const [name, ...value] = piece.split("=");
        out[name.trim()] = value.join("=");
      }
      return out;
    }
    function deleteCookie(headers, name, attributes) {
      brandChecks(headers);
      const prefix = "deleteCookie";
      webidl.argumentLengthCheck(arguments, 2, prefix);
      name = webidl.converters.DOMString(name, prefix, "name");
      attributes = webidl.converters.DeleteCookieAttributes(attributes);
      setCookie(headers, {
        name,
        value: "",
        expires: /* @__PURE__ */ new Date(0),
        ...attributes
      });
    }
    function getSetCookies(headers) {
      webidl.argumentLengthCheck(arguments, 1, "getSetCookies");
      brandChecks(headers);
      const cookies = headers.getSetCookie();
      if (!cookies) {
        return [];
      }
      return cookies.map((pair) => parseSetCookie(pair));
    }
    function parseCookie(cookie) {
      cookie = webidl.converters.DOMString(cookie);
      return parseSetCookie(cookie);
    }
    function setCookie(headers, cookie) {
      webidl.argumentLengthCheck(arguments, 2, "setCookie");
      brandChecks(headers);
      cookie = webidl.converters.Cookie(cookie);
      const str2 = stringify(cookie);
      if (str2) {
        headers.append("set-cookie", str2, true);
      }
    }
    webidl.converters.DeleteCookieAttributes = webidl.dictionaryConverter([
      {
        converter: webidl.nullableConverter(webidl.converters.DOMString),
        key: "path",
        defaultValue: () => null
      },
      {
        converter: webidl.nullableConverter(webidl.converters.DOMString),
        key: "domain",
        defaultValue: () => null
      }
    ]);
    webidl.converters.Cookie = webidl.dictionaryConverter([
      {
        converter: webidl.converters.DOMString,
        key: "name"
      },
      {
        converter: webidl.converters.DOMString,
        key: "value"
      },
      {
        converter: webidl.nullableConverter((value) => {
          if (typeof value === "number") {
            return webidl.converters["unsigned long long"](value);
          }
          return new Date(value);
        }),
        key: "expires",
        defaultValue: () => null
      },
      {
        converter: webidl.nullableConverter(webidl.converters["long long"]),
        key: "maxAge",
        defaultValue: () => null
      },
      {
        converter: webidl.nullableConverter(webidl.converters.DOMString),
        key: "domain",
        defaultValue: () => null
      },
      {
        converter: webidl.nullableConverter(webidl.converters.DOMString),
        key: "path",
        defaultValue: () => null
      },
      {
        converter: webidl.nullableConverter(webidl.converters.boolean),
        key: "secure",
        defaultValue: () => null
      },
      {
        converter: webidl.nullableConverter(webidl.converters.boolean),
        key: "httpOnly",
        defaultValue: () => null
      },
      {
        converter: webidl.converters.USVString,
        key: "sameSite",
        allowedValues: ["Strict", "Lax", "None"]
      },
      {
        converter: webidl.sequenceConverter(webidl.converters.DOMString),
        key: "unparsed",
        defaultValue: () => []
      }
    ]);
    module2.exports = {
      getCookies,
      deleteCookie,
      getSetCookies,
      setCookie,
      parseCookie
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/websocket/events.js
var require_events = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/websocket/events.js"(exports2, module2) {
    "use strict";
    var { webidl } = require_webidl();
    var { kEnumerableProperty } = require_util6();
    var { kConstruct } = require_symbols();
    var MessageEvent = class _MessageEvent extends Event {
      #eventInit;
      constructor(type4, eventInitDict = {}) {
        if (type4 === kConstruct) {
          super(arguments[1], arguments[2]);
          webidl.util.markAsUncloneable(this);
          return;
        }
        const prefix = "MessageEvent constructor";
        webidl.argumentLengthCheck(arguments, 1, prefix);
        type4 = webidl.converters.DOMString(type4, prefix, "type");
        eventInitDict = webidl.converters.MessageEventInit(eventInitDict, prefix, "eventInitDict");
        super(type4, eventInitDict);
        this.#eventInit = eventInitDict;
        webidl.util.markAsUncloneable(this);
      }
      get data() {
        webidl.brandCheck(this, _MessageEvent);
        return this.#eventInit.data;
      }
      get origin() {
        webidl.brandCheck(this, _MessageEvent);
        return this.#eventInit.origin;
      }
      get lastEventId() {
        webidl.brandCheck(this, _MessageEvent);
        return this.#eventInit.lastEventId;
      }
      get source() {
        webidl.brandCheck(this, _MessageEvent);
        return this.#eventInit.source;
      }
      get ports() {
        webidl.brandCheck(this, _MessageEvent);
        if (!Object.isFrozen(this.#eventInit.ports)) {
          Object.freeze(this.#eventInit.ports);
        }
        return this.#eventInit.ports;
      }
      initMessageEvent(type4, bubbles = false, cancelable = false, data = null, origin = "", lastEventId = "", source = null, ports = []) {
        webidl.brandCheck(this, _MessageEvent);
        webidl.argumentLengthCheck(arguments, 1, "MessageEvent.initMessageEvent");
        return new _MessageEvent(type4, {
          bubbles,
          cancelable,
          data,
          origin,
          lastEventId,
          source,
          ports
        });
      }
      static createFastMessageEvent(type4, init2) {
        const messageEvent = new _MessageEvent(kConstruct, type4, init2);
        messageEvent.#eventInit = init2;
        messageEvent.#eventInit.data ??= null;
        messageEvent.#eventInit.origin ??= "";
        messageEvent.#eventInit.lastEventId ??= "";
        messageEvent.#eventInit.source ??= null;
        messageEvent.#eventInit.ports ??= [];
        return messageEvent;
      }
    };
    var { createFastMessageEvent } = MessageEvent;
    delete MessageEvent.createFastMessageEvent;
    var CloseEvent = class _CloseEvent extends Event {
      #eventInit;
      constructor(type4, eventInitDict = {}) {
        const prefix = "CloseEvent constructor";
        webidl.argumentLengthCheck(arguments, 1, prefix);
        type4 = webidl.converters.DOMString(type4, prefix, "type");
        eventInitDict = webidl.converters.CloseEventInit(eventInitDict);
        super(type4, eventInitDict);
        this.#eventInit = eventInitDict;
        webidl.util.markAsUncloneable(this);
      }
      get wasClean() {
        webidl.brandCheck(this, _CloseEvent);
        return this.#eventInit.wasClean;
      }
      get code() {
        webidl.brandCheck(this, _CloseEvent);
        return this.#eventInit.code;
      }
      get reason() {
        webidl.brandCheck(this, _CloseEvent);
        return this.#eventInit.reason;
      }
    };
    var ErrorEvent = class _ErrorEvent extends Event {
      #eventInit;
      constructor(type4, eventInitDict) {
        const prefix = "ErrorEvent constructor";
        webidl.argumentLengthCheck(arguments, 1, prefix);
        super(type4, eventInitDict);
        webidl.util.markAsUncloneable(this);
        type4 = webidl.converters.DOMString(type4, prefix, "type");
        eventInitDict = webidl.converters.ErrorEventInit(eventInitDict ?? {});
        this.#eventInit = eventInitDict;
      }
      get message() {
        webidl.brandCheck(this, _ErrorEvent);
        return this.#eventInit.message;
      }
      get filename() {
        webidl.brandCheck(this, _ErrorEvent);
        return this.#eventInit.filename;
      }
      get lineno() {
        webidl.brandCheck(this, _ErrorEvent);
        return this.#eventInit.lineno;
      }
      get colno() {
        webidl.brandCheck(this, _ErrorEvent);
        return this.#eventInit.colno;
      }
      get error() {
        webidl.brandCheck(this, _ErrorEvent);
        return this.#eventInit.error;
      }
    };
    Object.defineProperties(MessageEvent.prototype, {
      [Symbol.toStringTag]: {
        value: "MessageEvent",
        configurable: true
      },
      data: kEnumerableProperty,
      origin: kEnumerableProperty,
      lastEventId: kEnumerableProperty,
      source: kEnumerableProperty,
      ports: kEnumerableProperty,
      initMessageEvent: kEnumerableProperty
    });
    Object.defineProperties(CloseEvent.prototype, {
      [Symbol.toStringTag]: {
        value: "CloseEvent",
        configurable: true
      },
      reason: kEnumerableProperty,
      code: kEnumerableProperty,
      wasClean: kEnumerableProperty
    });
    Object.defineProperties(ErrorEvent.prototype, {
      [Symbol.toStringTag]: {
        value: "ErrorEvent",
        configurable: true
      },
      message: kEnumerableProperty,
      filename: kEnumerableProperty,
      lineno: kEnumerableProperty,
      colno: kEnumerableProperty,
      error: kEnumerableProperty
    });
    webidl.converters.MessagePort = webidl.interfaceConverter(
      webidl.is.MessagePort,
      "MessagePort"
    );
    webidl.converters["sequence<MessagePort>"] = webidl.sequenceConverter(
      webidl.converters.MessagePort
    );
    var eventInit = [
      {
        key: "bubbles",
        converter: webidl.converters.boolean,
        defaultValue: () => false
      },
      {
        key: "cancelable",
        converter: webidl.converters.boolean,
        defaultValue: () => false
      },
      {
        key: "composed",
        converter: webidl.converters.boolean,
        defaultValue: () => false
      }
    ];
    webidl.converters.MessageEventInit = webidl.dictionaryConverter([
      ...eventInit,
      {
        key: "data",
        converter: webidl.converters.any,
        defaultValue: () => null
      },
      {
        key: "origin",
        converter: webidl.converters.USVString,
        defaultValue: () => ""
      },
      {
        key: "lastEventId",
        converter: webidl.converters.DOMString,
        defaultValue: () => ""
      },
      {
        key: "source",
        // Node doesn't implement WindowProxy or ServiceWorker, so the only
        // valid value for source is a MessagePort.
        converter: webidl.nullableConverter(webidl.converters.MessagePort),
        defaultValue: () => null
      },
      {
        key: "ports",
        converter: webidl.converters["sequence<MessagePort>"],
        defaultValue: () => []
      }
    ]);
    webidl.converters.CloseEventInit = webidl.dictionaryConverter([
      ...eventInit,
      {
        key: "wasClean",
        converter: webidl.converters.boolean,
        defaultValue: () => false
      },
      {
        key: "code",
        converter: webidl.converters["unsigned short"],
        defaultValue: () => 0
      },
      {
        key: "reason",
        converter: webidl.converters.USVString,
        defaultValue: () => ""
      }
    ]);
    webidl.converters.ErrorEventInit = webidl.dictionaryConverter([
      ...eventInit,
      {
        key: "message",
        converter: webidl.converters.DOMString,
        defaultValue: () => ""
      },
      {
        key: "filename",
        converter: webidl.converters.USVString,
        defaultValue: () => ""
      },
      {
        key: "lineno",
        converter: webidl.converters["unsigned long"],
        defaultValue: () => 0
      },
      {
        key: "colno",
        converter: webidl.converters["unsigned long"],
        defaultValue: () => 0
      },
      {
        key: "error",
        converter: webidl.converters.any
      }
    ]);
    module2.exports = {
      MessageEvent,
      CloseEvent,
      ErrorEvent,
      createFastMessageEvent
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/websocket/constants.js
var require_constants16 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/websocket/constants.js"(exports2, module2) {
    "use strict";
    var uid = "258EAFA5-E914-47DA-95CA-C5AB0DC85B11";
    var staticPropertyDescriptors = {
      enumerable: true,
      writable: false,
      configurable: false
    };
    var states = {
      CONNECTING: 0,
      OPEN: 1,
      CLOSING: 2,
      CLOSED: 3
    };
    var sentCloseFrameState = {
      SENT: 1,
      RECEIVED: 2
    };
    var opcodes = {
      CONTINUATION: 0,
      TEXT: 1,
      BINARY: 2,
      CLOSE: 8,
      PING: 9,
      PONG: 10
    };
    var maxUnsigned16Bit = 65535;
    var parserStates = {
      INFO: 0,
      PAYLOADLENGTH_16: 2,
      PAYLOADLENGTH_64: 3,
      READ_DATA: 4
    };
    var emptyBuffer = Buffer.allocUnsafe(0);
    var sendHints = {
      text: 1,
      typedArray: 2,
      arrayBuffer: 3,
      blob: 4
    };
    module2.exports = {
      uid,
      sentCloseFrameState,
      staticPropertyDescriptors,
      states,
      opcodes,
      maxUnsigned16Bit,
      parserStates,
      emptyBuffer,
      sendHints
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/websocket/util.js
var require_util10 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/websocket/util.js"(exports2, module2) {
    "use strict";
    var { states, opcodes } = require_constants16();
    var { isUtf8 } = __require("node:buffer");
    var { removeHTTPWhitespace } = require_data_url();
    var { collectASequenceOfCodePointsFast } = require_infra();
    function isConnecting(readyState) {
      return readyState === states.CONNECTING;
    }
    function isEstablished(readyState) {
      return readyState === states.OPEN;
    }
    function isClosing(readyState) {
      return readyState === states.CLOSING;
    }
    function isClosed(readyState) {
      return readyState === states.CLOSED;
    }
    function fireEvent(e, target2, eventFactory = (type4, init2) => new Event(type4, init2), eventInitDict = {}) {
      const event = eventFactory(e, eventInitDict);
      target2.dispatchEvent(event);
    }
    function websocketMessageReceived(handler77, type4, data) {
      handler77.onMessage(type4, data);
    }
    function toArrayBuffer(buffer3) {
      if (buffer3.byteLength === buffer3.buffer.byteLength) {
        return buffer3.buffer;
      }
      return new Uint8Array(buffer3).buffer;
    }
    function isValidSubprotocol(protocol) {
      if (protocol.length === 0) {
        return false;
      }
      for (let i2 = 0; i2 < protocol.length; ++i2) {
        const code = protocol.charCodeAt(i2);
        if (code < 33 || // CTL, contains SP (0x20) and HT (0x09)
        code > 126 || code === 34 || // "
        code === 40 || // (
        code === 41 || // )
        code === 44 || // ,
        code === 47 || // /
        code === 58 || // :
        code === 59 || // ;
        code === 60 || // <
        code === 61 || // =
        code === 62 || // >
        code === 63 || // ?
        code === 64 || // @
        code === 91 || // [
        code === 92 || // \
        code === 93 || // ]
        code === 123 || // {
        code === 125) {
          return false;
        }
      }
      return true;
    }
    function isValidStatusCode(code) {
      if (code >= 1e3 && code < 1015) {
        return code !== 1004 && // reserved
        code !== 1005 && // "MUST NOT be set as a status code"
        code !== 1006;
      }
      return code >= 3e3 && code <= 4999;
    }
    function isControlFrame(opcode) {
      return opcode === opcodes.CLOSE || opcode === opcodes.PING || opcode === opcodes.PONG;
    }
    function isContinuationFrame(opcode) {
      return opcode === opcodes.CONTINUATION;
    }
    function isTextBinaryFrame(opcode) {
      return opcode === opcodes.TEXT || opcode === opcodes.BINARY;
    }
    function isValidOpcode(opcode) {
      return isTextBinaryFrame(opcode) || isContinuationFrame(opcode) || isControlFrame(opcode);
    }
    function parseExtensions(extensions2) {
      const position3 = { position: 0 };
      const extensionList = /* @__PURE__ */ new Map();
      while (position3.position < extensions2.length) {
        const pair = collectASequenceOfCodePointsFast(";", extensions2, position3);
        const [name, value = ""] = pair.split("=", 2);
        extensionList.set(
          removeHTTPWhitespace(name, true, false),
          removeHTTPWhitespace(value, false, true)
        );
        position3.position++;
      }
      return extensionList;
    }
    function isValidClientWindowBits(value) {
      if (value.length === 0) {
        return false;
      }
      for (let i2 = 0; i2 < value.length; i2++) {
        const byte = value.charCodeAt(i2);
        if (byte < 48 || byte > 57) {
          return false;
        }
      }
      const num = Number.parseInt(value, 10);
      return num >= 8 && num <= 15;
    }
    function getURLRecord(url7, baseURL) {
      let urlRecord;
      try {
        urlRecord = new URL(url7, baseURL);
      } catch (e) {
        throw new DOMException(e, "SyntaxError");
      }
      if (urlRecord.protocol === "http:") {
        urlRecord.protocol = "ws:";
      } else if (urlRecord.protocol === "https:") {
        urlRecord.protocol = "wss:";
      }
      if (urlRecord.protocol !== "ws:" && urlRecord.protocol !== "wss:") {
        throw new DOMException("expected a ws: or wss: url", "SyntaxError");
      }
      if (urlRecord.hash.length || urlRecord.href.endsWith("#")) {
        throw new DOMException("hash", "SyntaxError");
      }
      return urlRecord;
    }
    function validateCloseCodeAndReason(code, reason) {
      if (code !== null) {
        if (code !== 1e3 && (code < 3e3 || code > 4999)) {
          throw new DOMException("invalid code", "InvalidAccessError");
        }
      }
      if (reason !== null) {
        const reasonBytesLength = Buffer.byteLength(reason);
        if (reasonBytesLength > 123) {
          throw new DOMException(`Reason must be less than 123 bytes; received ${reasonBytesLength}`, "SyntaxError");
        }
      }
    }
    var utf8Decode = (() => {
      if (typeof process.versions.icu === "string") {
        const fatalDecoder = new TextDecoder("utf-8", { fatal: true });
        return fatalDecoder.decode.bind(fatalDecoder);
      }
      return function(buffer3) {
        if (isUtf8(buffer3)) {
          return buffer3.toString("utf-8");
        }
        throw new TypeError("Invalid utf-8 received.");
      };
    })();
    module2.exports = {
      isConnecting,
      isEstablished,
      isClosing,
      isClosed,
      fireEvent,
      isValidSubprotocol,
      isValidStatusCode,
      websocketMessageReceived,
      utf8Decode,
      isControlFrame,
      isContinuationFrame,
      isTextBinaryFrame,
      isValidOpcode,
      parseExtensions,
      isValidClientWindowBits,
      toArrayBuffer,
      getURLRecord,
      validateCloseCodeAndReason
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/websocket/frame.js
var require_frame = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/websocket/frame.js"(exports2, module2) {
    "use strict";
    var { runtimeFeatures } = require_runtime_features();
    var { maxUnsigned16Bit, opcodes } = require_constants16();
    var BUFFER_SIZE = 8 * 1024;
    var buffer3 = null;
    var bufIdx = BUFFER_SIZE;
    var randomFillSync = runtimeFeatures.has("crypto") ? __require("node:crypto").randomFillSync : function randomFillSync2(buffer4, _offset, _size) {
      for (let i2 = 0; i2 < buffer4.length; ++i2) {
        buffer4[i2] = Math.random() * 255 | 0;
      }
      return buffer4;
    };
    function generateMask() {
      if (bufIdx === BUFFER_SIZE) {
        bufIdx = 0;
        randomFillSync(buffer3 ??= Buffer.allocUnsafeSlow(BUFFER_SIZE), 0, BUFFER_SIZE);
      }
      return [buffer3[bufIdx++], buffer3[bufIdx++], buffer3[bufIdx++], buffer3[bufIdx++]];
    }
    var WebsocketFrameSend = class {
      /**
       * @param {Buffer|undefined} data
       */
      constructor(data) {
        this.frameData = data;
      }
      createFrame(opcode) {
        const frameData = this.frameData;
        const maskKey = generateMask();
        const bodyLength = frameData?.byteLength ?? 0;
        let payloadLength = bodyLength;
        let offset = 6;
        if (bodyLength > maxUnsigned16Bit) {
          offset += 8;
          payloadLength = 127;
        } else if (bodyLength > 125) {
          offset += 2;
          payloadLength = 126;
        }
        const buffer4 = Buffer.allocUnsafe(bodyLength + offset);
        buffer4[0] = buffer4[1] = 0;
        buffer4[0] |= 128;
        buffer4[0] = (buffer4[0] & 240) + opcode;
        buffer4[offset - 4] = maskKey[0];
        buffer4[offset - 3] = maskKey[1];
        buffer4[offset - 2] = maskKey[2];
        buffer4[offset - 1] = maskKey[3];
        buffer4[1] = payloadLength;
        if (payloadLength === 126) {
          buffer4.writeUInt16BE(bodyLength, 2);
        } else if (payloadLength === 127) {
          buffer4[2] = buffer4[3] = 0;
          buffer4.writeUIntBE(bodyLength, 4, 6);
        }
        buffer4[1] |= 128;
        for (let i2 = 0; i2 < bodyLength; ++i2) {
          buffer4[offset + i2] = frameData[i2] ^ maskKey[i2 & 3];
        }
        return buffer4;
      }
      /**
       * @param {Uint8Array} buffer
       */
      static createFastTextFrame(buffer4) {
        const maskKey = generateMask();
        const bodyLength = buffer4.length;
        for (let i2 = 0; i2 < bodyLength; ++i2) {
          buffer4[i2] ^= maskKey[i2 & 3];
        }
        let payloadLength = bodyLength;
        let offset = 6;
        if (bodyLength > maxUnsigned16Bit) {
          offset += 8;
          payloadLength = 127;
        } else if (bodyLength > 125) {
          offset += 2;
          payloadLength = 126;
        }
        const head2 = Buffer.allocUnsafeSlow(offset);
        head2[0] = 128 | opcodes.TEXT;
        head2[1] = payloadLength | 128;
        head2[offset - 4] = maskKey[0];
        head2[offset - 3] = maskKey[1];
        head2[offset - 2] = maskKey[2];
        head2[offset - 1] = maskKey[3];
        if (payloadLength === 126) {
          head2.writeUInt16BE(bodyLength, 2);
        } else if (payloadLength === 127) {
          head2[2] = head2[3] = 0;
          head2.writeUIntBE(bodyLength, 4, 6);
        }
        return [head2, buffer4];
      }
    };
    module2.exports = {
      WebsocketFrameSend,
      generateMask
      // for benchmark
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/websocket/connection.js
var require_connection = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/websocket/connection.js"(exports2, module2) {
    "use strict";
    var { uid, states, sentCloseFrameState, emptyBuffer, opcodes } = require_constants16();
    var { parseExtensions, isClosed, isClosing, isEstablished, isConnecting, validateCloseCodeAndReason } = require_util10();
    var { makeRequest } = require_request2();
    var { fetching } = require_fetch();
    var { Headers: Headers2, getHeadersList } = require_headers2();
    var { getDecodeSplit } = require_util7();
    var { WebsocketFrameSend } = require_frame();
    var assert13 = __require("node:assert");
    var { runtimeFeatures } = require_runtime_features();
    var crypto11 = runtimeFeatures.has("crypto") ? __require("node:crypto") : null;
    var warningEmitted = false;
    function establishWebSocketConnection(url7, protocols, client, handler77, options) {
      const requestURL = url7;
      requestURL.protocol = url7.protocol === "ws:" ? "http:" : "https:";
      const request = makeRequest({
        urlList: [requestURL],
        client,
        serviceWorkers: "none",
        referrer: "no-referrer",
        mode: "websocket",
        credentials: "include",
        cache: "no-store",
        redirect: "error",
        useURLCredentials: true
      });
      if (options.headers) {
        const headersList = getHeadersList(new Headers2(options.headers));
        request.headersList = headersList;
      }
      const keyValue = crypto11.randomBytes(16).toString("base64");
      request.headersList.append("sec-websocket-key", keyValue, true);
      request.headersList.append("sec-websocket-version", "13", true);
      for (const protocol of protocols) {
        request.headersList.append("sec-websocket-protocol", protocol, true);
      }
      const permessageDeflate = "permessage-deflate; client_max_window_bits";
      request.headersList.append("sec-websocket-extensions", permessageDeflate, true);
      const controller = fetching({
        request,
        useParallelQueue: true,
        dispatcher: options.dispatcher,
        processResponse(response) {
          if (response.type === "error" || response.status !== 101) {
            if (response.socket?.session == null) {
              failWebsocketConnection(handler77, 1002, "Received network error or non-101 status code.", response.error);
              return;
            }
            if (response.status !== 200) {
              failWebsocketConnection(handler77, 1002, "Received network error or non-200 status code.", response.error);
              return;
            }
          }
          if (warningEmitted === false && response.socket?.session != null) {
            process.emitWarning("WebSocket over HTTP2 is experimental, and subject to change.", "ExperimentalWarning");
            warningEmitted = true;
          }
          if (protocols.length !== 0 && !response.headersList.get("Sec-WebSocket-Protocol")) {
            failWebsocketConnection(handler77, 1002, "Server did not respond with sent protocols.");
            return;
          }
          if (response.socket.session == null && response.headersList.get("Upgrade")?.toLowerCase() !== "websocket") {
            failWebsocketConnection(handler77, 1002, 'Server did not set Upgrade header to "websocket".');
            return;
          }
          if (response.socket.session == null && response.headersList.get("Connection")?.toLowerCase() !== "upgrade") {
            failWebsocketConnection(handler77, 1002, 'Server did not set Connection header to "upgrade".');
            return;
          }
          const secWSAccept = response.headersList.get("Sec-WebSocket-Accept");
          const digest = crypto11.hash("sha1", keyValue + uid, "base64");
          if (secWSAccept !== digest) {
            failWebsocketConnection(handler77, 1002, "Incorrect hash received in Sec-WebSocket-Accept header.");
            return;
          }
          const secExtension = response.headersList.get("Sec-WebSocket-Extensions");
          let extensions2;
          if (secExtension !== null) {
            extensions2 = parseExtensions(secExtension);
            if (!extensions2.has("permessage-deflate")) {
              failWebsocketConnection(handler77, 1002, "Sec-WebSocket-Extensions header does not match.");
              return;
            }
          }
          const secProtocol = response.headersList.get("Sec-WebSocket-Protocol");
          if (secProtocol !== null) {
            const requestProtocols = getDecodeSplit("sec-websocket-protocol", request.headersList);
            if (!requestProtocols.includes(secProtocol)) {
              failWebsocketConnection(handler77, 1002, "Protocol was not set in the opening handshake.");
              return;
            }
          }
          response.socket.on("data", handler77.onSocketData);
          response.socket.on("close", handler77.onSocketClose);
          response.socket.on("error", handler77.onSocketError);
          handler77.wasEverConnected = true;
          handler77.onConnectionEstablished(response, extensions2);
        }
      });
      return controller;
    }
    function closeWebSocketConnection(object, code, reason, validate2 = false) {
      code ??= null;
      reason ??= "";
      if (validate2) validateCloseCodeAndReason(code, reason);
      if (isClosed(object.readyState) || isClosing(object.readyState)) {
      } else if (!isEstablished(object.readyState)) {
        failWebsocketConnection(object);
        object.readyState = states.CLOSING;
      } else if (!object.closeState.has(sentCloseFrameState.SENT) && !object.closeState.has(sentCloseFrameState.RECEIVED)) {
        const frame = new WebsocketFrameSend();
        if (reason.length !== 0 && code === null) {
          code = 1e3;
        }
        assert13(code === null || Number.isInteger(code));
        if (code === null && reason.length === 0) {
          frame.frameData = emptyBuffer;
        } else if (code !== null && reason === null) {
          frame.frameData = Buffer.allocUnsafe(2);
          frame.frameData.writeUInt16BE(code, 0);
        } else if (code !== null && reason !== null) {
          frame.frameData = Buffer.allocUnsafe(2 + Buffer.byteLength(reason));
          frame.frameData.writeUInt16BE(code, 0);
          frame.frameData.write(reason, 2, "utf-8");
        } else {
          frame.frameData = emptyBuffer;
        }
        object.socket.write(frame.createFrame(opcodes.CLOSE));
        object.closeState.add(sentCloseFrameState.SENT);
        object.readyState = states.CLOSING;
      } else {
        object.readyState = states.CLOSING;
      }
    }
    function failWebsocketConnection(handler77, code, reason, cause) {
      if (isEstablished(handler77.readyState)) {
        closeWebSocketConnection(handler77, code, reason, false);
      }
      handler77.controller.abort();
      if (isConnecting(handler77.readyState)) {
        handler77.onSocketClose();
      } else if (handler77.socket?.destroyed === false) {
        handler77.socket.destroy();
      }
    }
    module2.exports = {
      establishWebSocketConnection,
      failWebsocketConnection,
      closeWebSocketConnection
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/websocket/permessage-deflate.js
var require_permessage_deflate = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/websocket/permessage-deflate.js"(exports2, module2) {
    "use strict";
    var { createInflateRaw, Z_DEFAULT_WINDOWBITS } = __require("node:zlib");
    var { isValidClientWindowBits } = require_util10();
    var { MessageSizeExceededError } = require_errors5();
    var tail2 = Buffer.from([0, 0, 255, 255]);
    var kBuffer = /* @__PURE__ */ Symbol("kBuffer");
    var kLength = /* @__PURE__ */ Symbol("kLength");
    var kDefaultMaxDecompressedSize = 4 * 1024 * 1024;
    var PerMessageDeflate = class {
      /** @type {import('node:zlib').InflateRaw} */
      #inflate;
      #options = {};
      /** @type {boolean} */
      #aborted = false;
      /** @type {Function|null} */
      #currentCallback = null;
      /**
       * @param {Map<string, string>} extensions
       */
      constructor(extensions2) {
        this.#options.serverNoContextTakeover = extensions2.has("server_no_context_takeover");
        this.#options.serverMaxWindowBits = extensions2.get("server_max_window_bits");
      }
      decompress(chunk, fin, callback2) {
        if (this.#aborted) {
          callback2(new MessageSizeExceededError());
          return;
        }
        if (!this.#inflate) {
          let windowBits = Z_DEFAULT_WINDOWBITS;
          if (this.#options.serverMaxWindowBits) {
            if (!isValidClientWindowBits(this.#options.serverMaxWindowBits)) {
              callback2(new Error("Invalid server_max_window_bits"));
              return;
            }
            windowBits = Number.parseInt(this.#options.serverMaxWindowBits);
          }
          try {
            this.#inflate = createInflateRaw({ windowBits });
          } catch (err) {
            callback2(err);
            return;
          }
          this.#inflate[kBuffer] = [];
          this.#inflate[kLength] = 0;
          this.#inflate.on("data", (data) => {
            if (this.#aborted) {
              return;
            }
            this.#inflate[kLength] += data.length;
            if (this.#inflate[kLength] > kDefaultMaxDecompressedSize) {
              this.#aborted = true;
              this.#inflate.removeAllListeners();
              this.#inflate.destroy();
              this.#inflate = null;
              if (this.#currentCallback) {
                const cb = this.#currentCallback;
                this.#currentCallback = null;
                cb(new MessageSizeExceededError());
              }
              return;
            }
            this.#inflate[kBuffer].push(data);
          });
          this.#inflate.on("error", (err) => {
            this.#inflate = null;
            callback2(err);
          });
        }
        this.#currentCallback = callback2;
        this.#inflate.write(chunk);
        if (fin) {
          this.#inflate.write(tail2);
        }
        this.#inflate.flush(() => {
          if (this.#aborted || !this.#inflate) {
            return;
          }
          const full = Buffer.concat(this.#inflate[kBuffer], this.#inflate[kLength]);
          this.#inflate[kBuffer].length = 0;
          this.#inflate[kLength] = 0;
          this.#currentCallback = null;
          callback2(null, full);
        });
      }
    };
    module2.exports = { PerMessageDeflate };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/websocket/receiver.js
var require_receiver = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/websocket/receiver.js"(exports2, module2) {
    "use strict";
    var { Writable: Writable4 } = __require("node:stream");
    var assert13 = __require("node:assert");
    var { parserStates, opcodes, states, emptyBuffer, sentCloseFrameState } = require_constants16();
    var {
      isValidStatusCode,
      isValidOpcode,
      websocketMessageReceived,
      utf8Decode,
      isControlFrame,
      isTextBinaryFrame,
      isContinuationFrame
    } = require_util10();
    var { failWebsocketConnection } = require_connection();
    var { WebsocketFrameSend } = require_frame();
    var { PerMessageDeflate } = require_permessage_deflate();
    var { MessageSizeExceededError } = require_errors5();
    var ByteParser = class extends Writable4 {
      #buffers = [];
      #fragmentsBytes = 0;
      #byteOffset = 0;
      #loop = false;
      #state = parserStates.INFO;
      #info = {};
      #fragments = [];
      /** @type {Map<string, PerMessageDeflate>} */
      #extensions;
      /** @type {import('./websocket').Handler} */
      #handler;
      /**
       * @param {import('./websocket').Handler} handler
       * @param {Map<string, string>|null} extensions
       */
      constructor(handler77, extensions2) {
        super();
        this.#handler = handler77;
        this.#extensions = extensions2 == null ? /* @__PURE__ */ new Map() : extensions2;
        if (this.#extensions.has("permessage-deflate")) {
          this.#extensions.set("permessage-deflate", new PerMessageDeflate(extensions2));
        }
      }
      /**
       * @param {Buffer} chunk
       * @param {() => void} callback
       */
      _write(chunk, _, callback2) {
        this.#buffers.push(chunk);
        this.#byteOffset += chunk.length;
        this.#loop = true;
        this.run(callback2);
      }
      /**
       * Runs whenever a new chunk is received.
       * Callback is called whenever there are no more chunks buffering,
       * or not enough bytes are buffered to parse.
       */
      run(callback2) {
        while (this.#loop) {
          if (this.#state === parserStates.INFO) {
            if (this.#byteOffset < 2) {
              return callback2();
            }
            const buffer3 = this.consume(2);
            const fin = (buffer3[0] & 128) !== 0;
            const opcode = buffer3[0] & 15;
            const masked = (buffer3[1] & 128) === 128;
            const fragmented = !fin && opcode !== opcodes.CONTINUATION;
            const payloadLength = buffer3[1] & 127;
            const rsv1 = buffer3[0] & 64;
            const rsv2 = buffer3[0] & 32;
            const rsv3 = buffer3[0] & 16;
            if (!isValidOpcode(opcode)) {
              failWebsocketConnection(this.#handler, 1002, "Invalid opcode received");
              return callback2();
            }
            if (masked) {
              failWebsocketConnection(this.#handler, 1002, "Frame cannot be masked");
              return callback2();
            }
            if (rsv1 !== 0 && !this.#extensions.has("permessage-deflate")) {
              failWebsocketConnection(this.#handler, 1002, "Expected RSV1 to be clear.");
              return;
            }
            if (rsv2 !== 0 || rsv3 !== 0) {
              failWebsocketConnection(this.#handler, 1002, "RSV1, RSV2, RSV3 must be clear");
              return;
            }
            if (fragmented && !isTextBinaryFrame(opcode)) {
              failWebsocketConnection(this.#handler, 1002, "Invalid frame type was fragmented.");
              return;
            }
            if (isTextBinaryFrame(opcode) && this.#fragments.length > 0) {
              failWebsocketConnection(this.#handler, 1002, "Expected continuation frame");
              return;
            }
            if (this.#info.fragmented && fragmented) {
              failWebsocketConnection(this.#handler, 1002, "Fragmented frame exceeded 125 bytes.");
              return;
            }
            if ((payloadLength > 125 || fragmented) && isControlFrame(opcode)) {
              failWebsocketConnection(this.#handler, 1002, "Control frame either too large or fragmented");
              return;
            }
            if (isContinuationFrame(opcode) && this.#fragments.length === 0 && !this.#info.compressed) {
              failWebsocketConnection(this.#handler, 1002, "Unexpected continuation frame");
              return;
            }
            if (payloadLength <= 125) {
              this.#info.payloadLength = payloadLength;
              this.#state = parserStates.READ_DATA;
            } else if (payloadLength === 126) {
              this.#state = parserStates.PAYLOADLENGTH_16;
            } else if (payloadLength === 127) {
              this.#state = parserStates.PAYLOADLENGTH_64;
            }
            if (isTextBinaryFrame(opcode)) {
              this.#info.binaryType = opcode;
              this.#info.compressed = rsv1 !== 0;
            }
            this.#info.opcode = opcode;
            this.#info.masked = masked;
            this.#info.fin = fin;
            this.#info.fragmented = fragmented;
          } else if (this.#state === parserStates.PAYLOADLENGTH_16) {
            if (this.#byteOffset < 2) {
              return callback2();
            }
            const buffer3 = this.consume(2);
            this.#info.payloadLength = buffer3.readUInt16BE(0);
            this.#state = parserStates.READ_DATA;
          } else if (this.#state === parserStates.PAYLOADLENGTH_64) {
            if (this.#byteOffset < 8) {
              return callback2();
            }
            const buffer3 = this.consume(8);
            const upper = buffer3.readUInt32BE(0);
            const lower = buffer3.readUInt32BE(4);
            if (upper !== 0 || lower > 2 ** 31 - 1) {
              failWebsocketConnection(this.#handler, 1009, "Received payload length > 2^31 bytes.");
              return;
            }
            this.#info.payloadLength = lower;
            this.#state = parserStates.READ_DATA;
          } else if (this.#state === parserStates.READ_DATA) {
            if (this.#byteOffset < this.#info.payloadLength) {
              return callback2();
            }
            const body = this.consume(this.#info.payloadLength);
            if (isControlFrame(this.#info.opcode)) {
              this.#loop = this.parseControlFrame(body);
              this.#state = parserStates.INFO;
            } else {
              if (!this.#info.compressed) {
                this.writeFragments(body);
                if (!this.#info.fragmented && this.#info.fin) {
                  websocketMessageReceived(this.#handler, this.#info.binaryType, this.consumeFragments());
                }
                this.#state = parserStates.INFO;
              } else {
                this.#extensions.get("permessage-deflate").decompress(body, this.#info.fin, (error, data) => {
                  if (error) {
                    const code = error instanceof MessageSizeExceededError ? 1009 : 1007;
                    failWebsocketConnection(this.#handler, code, error.message);
                    return;
                  }
                  this.writeFragments(data);
                  if (!this.#info.fin) {
                    this.#state = parserStates.INFO;
                    this.#loop = true;
                    this.run(callback2);
                    return;
                  }
                  websocketMessageReceived(this.#handler, this.#info.binaryType, this.consumeFragments());
                  this.#loop = true;
                  this.#state = parserStates.INFO;
                  this.run(callback2);
                });
                this.#loop = false;
                break;
              }
            }
          }
        }
      }
      /**
       * Take n bytes from the buffered Buffers
       * @param {number} n
       * @returns {Buffer}
       */
      consume(n2) {
        if (n2 > this.#byteOffset) {
          throw new Error("Called consume() before buffers satiated.");
        } else if (n2 === 0) {
          return emptyBuffer;
        }
        this.#byteOffset -= n2;
        const first = this.#buffers[0];
        if (first.length > n2) {
          this.#buffers[0] = first.subarray(n2, first.length);
          return first.subarray(0, n2);
        } else if (first.length === n2) {
          return this.#buffers.shift();
        } else {
          let offset = 0;
          const buffer3 = Buffer.allocUnsafeSlow(n2);
          while (offset !== n2) {
            const next2 = this.#buffers[0];
            const length = next2.length;
            if (length + offset === n2) {
              buffer3.set(this.#buffers.shift(), offset);
              break;
            } else if (length + offset > n2) {
              buffer3.set(next2.subarray(0, n2 - offset), offset);
              this.#buffers[0] = next2.subarray(n2 - offset);
              break;
            } else {
              buffer3.set(this.#buffers.shift(), offset);
              offset += length;
            }
          }
          return buffer3;
        }
      }
      writeFragments(fragment) {
        this.#fragmentsBytes += fragment.length;
        this.#fragments.push(fragment);
      }
      consumeFragments() {
        const fragments = this.#fragments;
        if (fragments.length === 1) {
          this.#fragmentsBytes = 0;
          return fragments.shift();
        }
        let offset = 0;
        const output = Buffer.allocUnsafeSlow(this.#fragmentsBytes);
        for (let i2 = 0; i2 < fragments.length; ++i2) {
          const buffer3 = fragments[i2];
          output.set(buffer3, offset);
          offset += buffer3.length;
        }
        this.#fragments = [];
        this.#fragmentsBytes = 0;
        return output;
      }
      parseCloseBody(data) {
        assert13(data.length !== 1);
        let code;
        if (data.length >= 2) {
          code = data.readUInt16BE(0);
        }
        if (code !== void 0 && !isValidStatusCode(code)) {
          return { code: 1002, reason: "Invalid status code", error: true };
        }
        let reason = data.subarray(2);
        if (reason[0] === 239 && reason[1] === 187 && reason[2] === 191) {
          reason = reason.subarray(3);
        }
        try {
          reason = utf8Decode(reason);
        } catch {
          return { code: 1007, reason: "Invalid UTF-8", error: true };
        }
        return { code, reason, error: false };
      }
      /**
       * Parses control frames.
       * @param {Buffer} body
       */
      parseControlFrame(body) {
        const { opcode, payloadLength } = this.#info;
        if (opcode === opcodes.CLOSE) {
          if (payloadLength === 1) {
            failWebsocketConnection(this.#handler, 1002, "Received close frame with a 1-byte body.");
            return false;
          }
          this.#info.closeInfo = this.parseCloseBody(body);
          if (this.#info.closeInfo.error) {
            const { code, reason } = this.#info.closeInfo;
            failWebsocketConnection(this.#handler, code, reason);
            return false;
          }
          if (!this.#handler.closeState.has(sentCloseFrameState.SENT) && !this.#handler.closeState.has(sentCloseFrameState.RECEIVED)) {
            let body2 = emptyBuffer;
            if (this.#info.closeInfo.code) {
              body2 = Buffer.allocUnsafe(2);
              body2.writeUInt16BE(this.#info.closeInfo.code, 0);
            }
            const closeFrame = new WebsocketFrameSend(body2);
            this.#handler.socket.write(closeFrame.createFrame(opcodes.CLOSE));
            this.#handler.closeState.add(sentCloseFrameState.SENT);
          }
          this.#handler.readyState = states.CLOSING;
          this.#handler.closeState.add(sentCloseFrameState.RECEIVED);
          return false;
        } else if (opcode === opcodes.PING) {
          if (!this.#handler.closeState.has(sentCloseFrameState.RECEIVED)) {
            const frame = new WebsocketFrameSend(body);
            this.#handler.socket.write(frame.createFrame(opcodes.PONG));
            this.#handler.onPing(body);
          }
        } else if (opcode === opcodes.PONG) {
          this.#handler.onPong(body);
        }
        return true;
      }
      get closingInfo() {
        return this.#info.closeInfo;
      }
    };
    module2.exports = {
      ByteParser
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/websocket/sender.js
var require_sender = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/websocket/sender.js"(exports2, module2) {
    "use strict";
    var { WebsocketFrameSend } = require_frame();
    var { opcodes, sendHints } = require_constants16();
    var FixedQueue = require_fixed_queue();
    var SendQueue = class {
      /**
       * @type {FixedQueue}
       */
      #queue = new FixedQueue();
      /**
       * @type {boolean}
       */
      #running = false;
      /** @type {import('node:net').Socket} */
      #socket;
      constructor(socket) {
        this.#socket = socket;
      }
      add(item, cb, hint) {
        if (hint !== sendHints.blob) {
          if (!this.#running) {
            if (hint === sendHints.text) {
              const { 0: head2, 1: body } = WebsocketFrameSend.createFastTextFrame(item);
              this.#socket.cork();
              this.#socket.write(head2);
              this.#socket.write(body, cb);
              this.#socket.uncork();
            } else {
              this.#socket.write(createFrame(item, hint), cb);
            }
          } else {
            const node2 = {
              promise: null,
              callback: cb,
              frame: createFrame(item, hint)
            };
            this.#queue.push(node2);
          }
          return;
        }
        const node = {
          promise: item.arrayBuffer().then((ab) => {
            node.promise = null;
            node.frame = createFrame(ab, hint);
          }),
          callback: cb,
          frame: null
        };
        this.#queue.push(node);
        if (!this.#running) {
          this.#run();
        }
      }
      async #run() {
        this.#running = true;
        const queue2 = this.#queue;
        while (!queue2.isEmpty()) {
          const node = queue2.shift();
          if (node.promise !== null) {
            await node.promise;
          }
          this.#socket.write(node.frame, node.callback);
          node.callback = node.frame = null;
        }
        this.#running = false;
      }
    };
    function createFrame(data, hint) {
      return new WebsocketFrameSend(toBuffer(data, hint)).createFrame(hint === sendHints.text ? opcodes.TEXT : opcodes.BINARY);
    }
    function toBuffer(data, hint) {
      switch (hint) {
        case sendHints.text:
        case sendHints.typedArray:
          return new Uint8Array(data.buffer, data.byteOffset, data.byteLength);
        case sendHints.arrayBuffer:
        case sendHints.blob:
          return new Uint8Array(data);
      }
    }
    module2.exports = { SendQueue };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/websocket/websocket.js
var require_websocket = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/websocket/websocket.js"(exports2, module2) {
    "use strict";
    var { isArrayBuffer: isArrayBuffer2 } = __require("node:util/types");
    var { webidl } = require_webidl();
    var { URLSerializer } = require_data_url();
    var { environmentSettingsObject } = require_util7();
    var { staticPropertyDescriptors, states, sentCloseFrameState, sendHints, opcodes } = require_constants16();
    var {
      isConnecting,
      isEstablished,
      isClosing,
      isClosed,
      isValidSubprotocol,
      fireEvent,
      utf8Decode,
      toArrayBuffer,
      getURLRecord
    } = require_util10();
    var { establishWebSocketConnection, closeWebSocketConnection, failWebsocketConnection } = require_connection();
    var { ByteParser } = require_receiver();
    var { kEnumerableProperty } = require_util6();
    var { getGlobalDispatcher } = require_global2();
    var { ErrorEvent, CloseEvent, createFastMessageEvent } = require_events();
    var { SendQueue } = require_sender();
    var { WebsocketFrameSend } = require_frame();
    var { channels } = require_diagnostics();
    function getSocketAddress(socket) {
      if (typeof socket?.address === "function") {
        return socket.address();
      }
      if (typeof socket?.session?.socket?.address === "function") {
        return socket.session.socket.address();
      }
      return null;
    }
    var WebSocket = class _WebSocket extends EventTarget {
      #events = {
        open: null,
        error: null,
        close: null,
        message: null
      };
      #bufferedAmount = 0;
      #protocol = "";
      #extensions = "";
      /** @type {SendQueue} */
      #sendQueue;
      /** @type {Handler} */
      #handler = {
        onConnectionEstablished: (response, extensions2) => this.#onConnectionEstablished(response, extensions2),
        onMessage: (opcode, data) => this.#onMessage(opcode, data),
        onParserError: (err) => failWebsocketConnection(this.#handler, null, err.message),
        onParserDrain: () => this.#onParserDrain(),
        onSocketData: (chunk) => {
          if (!this.#parser.write(chunk)) {
            this.#handler.socket.pause();
          }
        },
        onSocketError: (err) => {
          this.#handler.readyState = states.CLOSING;
          if (channels.socketError.hasSubscribers) {
            channels.socketError.publish(err);
          }
          this.#handler.socket.destroy();
        },
        onSocketClose: () => this.#onSocketClose(),
        onPing: (body) => {
          if (channels.ping.hasSubscribers) {
            channels.ping.publish({
              payload: body,
              websocket: this
            });
          }
        },
        onPong: (body) => {
          if (channels.pong.hasSubscribers) {
            channels.pong.publish({
              payload: body,
              websocket: this
            });
          }
        },
        readyState: states.CONNECTING,
        socket: null,
        closeState: /* @__PURE__ */ new Set(),
        controller: null,
        wasEverConnected: false
      };
      #url;
      #binaryType;
      /** @type {import('./receiver').ByteParser} */
      #parser;
      /**
       * @param {string} url
       * @param {string|string[]} protocols
       */
      constructor(url7, protocols = []) {
        super();
        webidl.util.markAsUncloneable(this);
        const prefix = "WebSocket constructor";
        webidl.argumentLengthCheck(arguments, 1, prefix);
        const options = webidl.converters["DOMString or sequence<DOMString> or WebSocketInit"](protocols, prefix, "options");
        url7 = webidl.converters.USVString(url7);
        protocols = options.protocols;
        const baseURL = environmentSettingsObject.settingsObject.baseUrl;
        const urlRecord = getURLRecord(url7, baseURL);
        if (typeof protocols === "string") {
          protocols = [protocols];
        }
        if (protocols.length !== new Set(protocols.map((p) => p.toLowerCase())).size) {
          throw new DOMException("Invalid Sec-WebSocket-Protocol value", "SyntaxError");
        }
        if (protocols.length > 0 && !protocols.every((p) => isValidSubprotocol(p))) {
          throw new DOMException("Invalid Sec-WebSocket-Protocol value", "SyntaxError");
        }
        this.#url = new URL(urlRecord.href);
        const client = environmentSettingsObject.settingsObject;
        this.#handler.controller = establishWebSocketConnection(
          urlRecord,
          protocols,
          client,
          this.#handler,
          options
        );
        this.#handler.readyState = _WebSocket.CONNECTING;
        this.#binaryType = "blob";
      }
      /**
       * @see https://websockets.spec.whatwg.org/#dom-websocket-close
       * @param {number|undefined} code
       * @param {string|undefined} reason
       */
      close(code = void 0, reason = void 0) {
        webidl.brandCheck(this, _WebSocket);
        const prefix = "WebSocket.close";
        if (code !== void 0) {
          code = webidl.converters["unsigned short"](code, prefix, "code", webidl.attributes.Clamp);
        }
        if (reason !== void 0) {
          reason = webidl.converters.USVString(reason);
        }
        code ??= null;
        reason ??= "";
        closeWebSocketConnection(this.#handler, code, reason, true);
      }
      /**
       * @see https://websockets.spec.whatwg.org/#dom-websocket-send
       * @param {NodeJS.TypedArray|ArrayBuffer|Blob|string} data
       */
      send(data) {
        webidl.brandCheck(this, _WebSocket);
        const prefix = "WebSocket.send";
        webidl.argumentLengthCheck(arguments, 1, prefix);
        data = webidl.converters.WebSocketSendData(data, prefix, "data");
        if (isConnecting(this.#handler.readyState)) {
          throw new DOMException("Sent before connected.", "InvalidStateError");
        }
        if (!isEstablished(this.#handler.readyState) || isClosing(this.#handler.readyState)) {
          return;
        }
        if (typeof data === "string") {
          const buffer3 = Buffer.from(data);
          this.#bufferedAmount += buffer3.byteLength;
          this.#sendQueue.add(buffer3, () => {
            this.#bufferedAmount -= buffer3.byteLength;
          }, sendHints.text);
        } else if (isArrayBuffer2(data)) {
          this.#bufferedAmount += data.byteLength;
          this.#sendQueue.add(data, () => {
            this.#bufferedAmount -= data.byteLength;
          }, sendHints.arrayBuffer);
        } else if (ArrayBuffer.isView(data)) {
          this.#bufferedAmount += data.byteLength;
          this.#sendQueue.add(data, () => {
            this.#bufferedAmount -= data.byteLength;
          }, sendHints.typedArray);
        } else if (webidl.is.Blob(data)) {
          this.#bufferedAmount += data.size;
          this.#sendQueue.add(data, () => {
            this.#bufferedAmount -= data.size;
          }, sendHints.blob);
        }
      }
      get readyState() {
        webidl.brandCheck(this, _WebSocket);
        return this.#handler.readyState;
      }
      get bufferedAmount() {
        webidl.brandCheck(this, _WebSocket);
        return this.#bufferedAmount;
      }
      get url() {
        webidl.brandCheck(this, _WebSocket);
        return URLSerializer(this.#url);
      }
      get extensions() {
        webidl.brandCheck(this, _WebSocket);
        return this.#extensions;
      }
      get protocol() {
        webidl.brandCheck(this, _WebSocket);
        return this.#protocol;
      }
      get onopen() {
        webidl.brandCheck(this, _WebSocket);
        return this.#events.open;
      }
      set onopen(fn) {
        webidl.brandCheck(this, _WebSocket);
        if (this.#events.open) {
          this.removeEventListener("open", this.#events.open);
        }
        const listener = webidl.converters.EventHandlerNonNull(fn);
        if (listener !== null) {
          this.addEventListener("open", listener);
          this.#events.open = fn;
        } else {
          this.#events.open = null;
        }
      }
      get onerror() {
        webidl.brandCheck(this, _WebSocket);
        return this.#events.error;
      }
      set onerror(fn) {
        webidl.brandCheck(this, _WebSocket);
        if (this.#events.error) {
          this.removeEventListener("error", this.#events.error);
        }
        const listener = webidl.converters.EventHandlerNonNull(fn);
        if (listener !== null) {
          this.addEventListener("error", listener);
          this.#events.error = fn;
        } else {
          this.#events.error = null;
        }
      }
      get onclose() {
        webidl.brandCheck(this, _WebSocket);
        return this.#events.close;
      }
      set onclose(fn) {
        webidl.brandCheck(this, _WebSocket);
        if (this.#events.close) {
          this.removeEventListener("close", this.#events.close);
        }
        const listener = webidl.converters.EventHandlerNonNull(fn);
        if (listener !== null) {
          this.addEventListener("close", listener);
          this.#events.close = fn;
        } else {
          this.#events.close = null;
        }
      }
      get onmessage() {
        webidl.brandCheck(this, _WebSocket);
        return this.#events.message;
      }
      set onmessage(fn) {
        webidl.brandCheck(this, _WebSocket);
        if (this.#events.message) {
          this.removeEventListener("message", this.#events.message);
        }
        const listener = webidl.converters.EventHandlerNonNull(fn);
        if (listener !== null) {
          this.addEventListener("message", listener);
          this.#events.message = fn;
        } else {
          this.#events.message = null;
        }
      }
      get binaryType() {
        webidl.brandCheck(this, _WebSocket);
        return this.#binaryType;
      }
      set binaryType(type4) {
        webidl.brandCheck(this, _WebSocket);
        if (type4 !== "blob" && type4 !== "arraybuffer") {
          this.#binaryType = "blob";
        } else {
          this.#binaryType = type4;
        }
      }
      /**
       * @see https://websockets.spec.whatwg.org/#feedback-from-the-protocol
       */
      #onConnectionEstablished(response, parsedExtensions) {
        this.#handler.socket = response.socket;
        const parser = new ByteParser(this.#handler, parsedExtensions);
        parser.on("drain", () => this.#handler.onParserDrain());
        parser.on("error", (err) => this.#handler.onParserError(err));
        this.#parser = parser;
        this.#sendQueue = new SendQueue(response.socket);
        this.#handler.readyState = states.OPEN;
        const extensions2 = response.headersList.get("sec-websocket-extensions");
        if (extensions2 !== null) {
          this.#extensions = extensions2;
        }
        const protocol = response.headersList.get("sec-websocket-protocol");
        if (protocol !== null) {
          this.#protocol = protocol;
        }
        fireEvent("open", this);
        if (channels.open.hasSubscribers) {
          const headers = response.headersList.entries;
          channels.open.publish({
            address: getSocketAddress(response.socket),
            protocol: this.#protocol,
            extensions: this.#extensions,
            websocket: this,
            handshakeResponse: {
              status: response.status,
              statusText: response.statusText,
              headers
            }
          });
        }
      }
      #onMessage(type4, data) {
        if (this.#handler.readyState !== states.OPEN) {
          return;
        }
        let dataForEvent;
        if (type4 === opcodes.TEXT) {
          try {
            dataForEvent = utf8Decode(data);
          } catch {
            failWebsocketConnection(this.#handler, 1007, "Received invalid UTF-8 in text frame.");
            return;
          }
        } else if (type4 === opcodes.BINARY) {
          if (this.#binaryType === "blob") {
            dataForEvent = new Blob([data]);
          } else {
            dataForEvent = toArrayBuffer(data);
          }
        }
        fireEvent("message", this, createFastMessageEvent, {
          origin: this.#url.origin,
          data: dataForEvent
        });
      }
      #onParserDrain() {
        this.#handler.socket.resume();
      }
      /**
       * @see https://websockets.spec.whatwg.org/#feedback-from-the-protocol
       * @see https://datatracker.ietf.org/doc/html/rfc6455#section-7.1.4
       */
      #onSocketClose() {
        const wasClean = this.#handler.closeState.has(sentCloseFrameState.SENT) && this.#handler.closeState.has(sentCloseFrameState.RECEIVED);
        let code = 1005;
        let reason = "";
        const result2 = this.#parser?.closingInfo;
        if (result2 && !result2.error) {
          code = result2.code ?? 1005;
          reason = result2.reason;
        }
        this.#handler.readyState = states.CLOSED;
        if (!this.#handler.closeState.has(sentCloseFrameState.RECEIVED)) {
          code = 1006;
          fireEvent("error", this, (type4, init2) => new ErrorEvent(type4, init2), {
            error: new TypeError(reason)
          });
        }
        fireEvent("close", this, (type4, init2) => new CloseEvent(type4, init2), {
          wasClean,
          code,
          reason
        });
        if (channels.close.hasSubscribers) {
          channels.close.publish({
            websocket: this,
            code,
            reason
          });
        }
      }
      /**
       * @param {WebSocket} ws
       * @param {Buffer|undefined} buffer
       */
      static ping(ws, buffer3) {
        if (Buffer.isBuffer(buffer3)) {
          if (buffer3.length > 125) {
            throw new TypeError("A PING frame cannot have a body larger than 125 bytes.");
          }
        } else if (buffer3 !== void 0) {
          throw new TypeError("Expected buffer payload");
        }
        const readyState = ws.#handler.readyState;
        if (isEstablished(readyState) && !isClosing(readyState) && !isClosed(readyState)) {
          const frame = new WebsocketFrameSend(buffer3);
          ws.#handler.socket.write(frame.createFrame(opcodes.PING));
        }
      }
    };
    var { ping } = WebSocket;
    Reflect.deleteProperty(WebSocket, "ping");
    WebSocket.CONNECTING = WebSocket.prototype.CONNECTING = states.CONNECTING;
    WebSocket.OPEN = WebSocket.prototype.OPEN = states.OPEN;
    WebSocket.CLOSING = WebSocket.prototype.CLOSING = states.CLOSING;
    WebSocket.CLOSED = WebSocket.prototype.CLOSED = states.CLOSED;
    Object.defineProperties(WebSocket.prototype, {
      CONNECTING: staticPropertyDescriptors,
      OPEN: staticPropertyDescriptors,
      CLOSING: staticPropertyDescriptors,
      CLOSED: staticPropertyDescriptors,
      url: kEnumerableProperty,
      readyState: kEnumerableProperty,
      bufferedAmount: kEnumerableProperty,
      onopen: kEnumerableProperty,
      onerror: kEnumerableProperty,
      onclose: kEnumerableProperty,
      close: kEnumerableProperty,
      onmessage: kEnumerableProperty,
      binaryType: kEnumerableProperty,
      send: kEnumerableProperty,
      extensions: kEnumerableProperty,
      protocol: kEnumerableProperty,
      [Symbol.toStringTag]: {
        value: "WebSocket",
        writable: false,
        enumerable: false,
        configurable: true
      }
    });
    Object.defineProperties(WebSocket, {
      CONNECTING: staticPropertyDescriptors,
      OPEN: staticPropertyDescriptors,
      CLOSING: staticPropertyDescriptors,
      CLOSED: staticPropertyDescriptors
    });
    webidl.converters["sequence<DOMString>"] = webidl.sequenceConverter(
      webidl.converters.DOMString
    );
    webidl.converters["DOMString or sequence<DOMString>"] = function(V, prefix, argument) {
      if (webidl.util.Type(V) === webidl.util.Types.OBJECT && Symbol.iterator in V) {
        return webidl.converters["sequence<DOMString>"](V);
      }
      return webidl.converters.DOMString(V, prefix, argument);
    };
    webidl.converters.WebSocketInit = webidl.dictionaryConverter([
      {
        key: "protocols",
        converter: webidl.converters["DOMString or sequence<DOMString>"],
        defaultValue: () => []
      },
      {
        key: "dispatcher",
        converter: webidl.converters.any,
        defaultValue: () => getGlobalDispatcher()
      },
      {
        key: "headers",
        converter: webidl.nullableConverter(webidl.converters.HeadersInit)
      }
    ]);
    webidl.converters["DOMString or sequence<DOMString> or WebSocketInit"] = function(V) {
      if (webidl.util.Type(V) === webidl.util.Types.OBJECT && !(Symbol.iterator in V)) {
        return webidl.converters.WebSocketInit(V);
      }
      return { protocols: webidl.converters["DOMString or sequence<DOMString>"](V) };
    };
    webidl.converters.WebSocketSendData = function(V) {
      if (webidl.util.Type(V) === webidl.util.Types.OBJECT) {
        if (webidl.is.Blob(V)) {
          return V;
        }
        if (webidl.is.BufferSource(V)) {
          return V;
        }
      }
      return webidl.converters.USVString(V);
    };
    module2.exports = {
      WebSocket,
      ping
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/websocket/stream/websocketerror.js
var require_websocketerror = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/websocket/stream/websocketerror.js"(exports2, module2) {
    "use strict";
    var { webidl } = require_webidl();
    var { validateCloseCodeAndReason } = require_util10();
    var { kConstruct } = require_symbols();
    var { kEnumerableProperty } = require_util6();
    function createInheritableDOMException() {
      class Test extends DOMException {
        get reason() {
          return "";
        }
      }
      if (new Test().reason !== void 0) {
        return DOMException;
      }
      return new Proxy(DOMException, {
        construct(target2, args, newTarget) {
          const instance = Reflect.construct(target2, args, target2);
          Object.setPrototypeOf(instance, newTarget.prototype);
          return instance;
        }
      });
    }
    var WebSocketError = class _WebSocketError extends createInheritableDOMException() {
      #closeCode;
      #reason;
      constructor(message = "", init2 = void 0) {
        message = webidl.converters.DOMString(message, "WebSocketError", "message");
        super(message, "WebSocketError");
        if (init2 === kConstruct) {
          return;
        } else if (init2 !== null) {
          init2 = webidl.converters.WebSocketCloseInfo(init2);
        }
        let code = init2.closeCode ?? null;
        const reason = init2.reason ?? "";
        validateCloseCodeAndReason(code, reason);
        if (reason.length !== 0 && code === null) {
          code = 1e3;
        }
        this.#closeCode = code;
        this.#reason = reason;
      }
      get closeCode() {
        return this.#closeCode;
      }
      get reason() {
        return this.#reason;
      }
      /**
       * @param {string} message
       * @param {number|null} code
       * @param {string} reason
       */
      static createUnvalidatedWebSocketError(message, code, reason) {
        const error = new _WebSocketError(message, kConstruct);
        error.#closeCode = code;
        error.#reason = reason;
        return error;
      }
    };
    var { createUnvalidatedWebSocketError } = WebSocketError;
    delete WebSocketError.createUnvalidatedWebSocketError;
    Object.defineProperties(WebSocketError.prototype, {
      closeCode: kEnumerableProperty,
      reason: kEnumerableProperty,
      [Symbol.toStringTag]: {
        value: "WebSocketError",
        writable: false,
        enumerable: false,
        configurable: true
      }
    });
    webidl.is.WebSocketError = webidl.util.MakeTypeAssertion(WebSocketError);
    module2.exports = { WebSocketError, createUnvalidatedWebSocketError };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/websocket/stream/websocketstream.js
var require_websocketstream = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/websocket/stream/websocketstream.js"(exports2, module2) {
    "use strict";
    var { createDeferredPromise } = require_promise();
    var { environmentSettingsObject } = require_util7();
    var { states, opcodes, sentCloseFrameState } = require_constants16();
    var { webidl } = require_webidl();
    var { getURLRecord, isValidSubprotocol, isEstablished, utf8Decode } = require_util10();
    var { establishWebSocketConnection, failWebsocketConnection, closeWebSocketConnection } = require_connection();
    var { channels } = require_diagnostics();
    var { WebsocketFrameSend } = require_frame();
    var { ByteParser } = require_receiver();
    var { WebSocketError, createUnvalidatedWebSocketError } = require_websocketerror();
    var { kEnumerableProperty } = require_util6();
    var { utf8DecodeBytes } = require_encoding();
    var emittedExperimentalWarning = false;
    var WebSocketStream = class {
      // Each WebSocketStream object has an associated url , which is a URL record .
      /** @type {URL} */
      #url;
      // Each WebSocketStream object has an associated opened promise , which is a promise.
      /** @type {import('../../../util/promise').DeferredPromise} */
      #openedPromise;
      // Each WebSocketStream object has an associated closed promise , which is a promise.
      /** @type {import('../../../util/promise').DeferredPromise} */
      #closedPromise;
      // Each WebSocketStream object has an associated readable stream , which is a ReadableStream .
      /** @type {ReadableStream} */
      #readableStream;
      /** @type {ReadableStreamDefaultController} */
      #readableStreamController;
      // Each WebSocketStream object has an associated writable stream , which is a WritableStream .
      /** @type {WritableStream} */
      #writableStream;
      // Each WebSocketStream object has an associated boolean handshake aborted , which is initially false.
      #handshakeAborted = false;
      /** @type {import('../websocket').Handler} */
      #handler = {
        // https://whatpr.org/websockets/48/7b748d3...d5570f3.html#feedback-to-websocket-stream-from-the-protocol
        onConnectionEstablished: (response, extensions2) => this.#onConnectionEstablished(response, extensions2),
        onMessage: (opcode, data) => this.#onMessage(opcode, data),
        onParserError: (err) => failWebsocketConnection(this.#handler, null, err.message),
        onParserDrain: () => this.#handler.socket.resume(),
        onSocketData: (chunk) => {
          if (!this.#parser.write(chunk)) {
            this.#handler.socket.pause();
          }
        },
        onSocketError: (err) => {
          this.#handler.readyState = states.CLOSING;
          if (channels.socketError.hasSubscribers) {
            channels.socketError.publish(err);
          }
          this.#handler.socket.destroy();
        },
        onSocketClose: () => this.#onSocketClose(),
        onPing: () => {
        },
        onPong: () => {
        },
        readyState: states.CONNECTING,
        socket: null,
        closeState: /* @__PURE__ */ new Set(),
        controller: null,
        wasEverConnected: false
      };
      /** @type {import('../receiver').ByteParser} */
      #parser;
      constructor(url7, options = void 0) {
        if (!emittedExperimentalWarning) {
          process.emitWarning("WebSocketStream is experimental! Expect it to change at any time.", {
            code: "UNDICI-WSS"
          });
          emittedExperimentalWarning = true;
        }
        webidl.argumentLengthCheck(arguments, 1, "WebSocket");
        url7 = webidl.converters.USVString(url7);
        if (options !== null) {
          options = webidl.converters.WebSocketStreamOptions(options);
        }
        const baseURL = environmentSettingsObject.settingsObject.baseUrl;
        const urlRecord = getURLRecord(url7, baseURL);
        const protocols = options.protocols;
        if (protocols.length !== new Set(protocols.map((p) => p.toLowerCase())).size) {
          throw new DOMException("Invalid Sec-WebSocket-Protocol value", "SyntaxError");
        }
        if (protocols.length > 0 && !protocols.every((p) => isValidSubprotocol(p))) {
          throw new DOMException("Invalid Sec-WebSocket-Protocol value", "SyntaxError");
        }
        this.#url = urlRecord.toString();
        this.#openedPromise = createDeferredPromise();
        this.#closedPromise = createDeferredPromise();
        if (options.signal != null) {
          const signal = options.signal;
          if (signal.aborted) {
            this.#openedPromise.reject(signal.reason);
            this.#closedPromise.reject(signal.reason);
            return;
          }
          signal.addEventListener("abort", () => {
            if (!isEstablished(this.#handler.readyState)) {
              failWebsocketConnection(this.#handler);
              this.#handler.readyState = states.CLOSING;
              this.#openedPromise.reject(signal.reason);
              this.#closedPromise.reject(signal.reason);
              this.#handshakeAborted = true;
            }
          }, { once: true });
        }
        const client = environmentSettingsObject.settingsObject;
        this.#handler.controller = establishWebSocketConnection(
          urlRecord,
          protocols,
          client,
          this.#handler,
          options
        );
      }
      // The url getter steps are to return this 's url , serialized .
      get url() {
        return this.#url.toString();
      }
      // The opened getter steps are to return this 's opened promise .
      get opened() {
        return this.#openedPromise.promise;
      }
      // The closed getter steps are to return this 's closed promise .
      get closed() {
        return this.#closedPromise.promise;
      }
      // The close( closeInfo ) method steps are:
      close(closeInfo = void 0) {
        if (closeInfo !== null) {
          closeInfo = webidl.converters.WebSocketCloseInfo(closeInfo);
        }
        const code = closeInfo.closeCode ?? null;
        const reason = closeInfo.reason;
        closeWebSocketConnection(this.#handler, code, reason, true);
      }
      #write(chunk) {
        chunk = webidl.converters.WebSocketStreamWrite(chunk);
        const promise2 = createDeferredPromise();
        let data = null;
        let opcode = null;
        if (webidl.is.BufferSource(chunk)) {
          data = new Uint8Array(ArrayBuffer.isView(chunk) ? new Uint8Array(chunk.buffer, chunk.byteOffset, chunk.byteLength) : chunk.slice());
          opcode = opcodes.BINARY;
        } else {
          let string;
          try {
            string = webidl.converters.DOMString(chunk);
          } catch (e) {
            promise2.reject(e);
            return promise2.promise;
          }
          data = new TextEncoder().encode(string);
          opcode = opcodes.TEXT;
        }
        if (!this.#handler.closeState.has(sentCloseFrameState.SENT) && !this.#handler.closeState.has(sentCloseFrameState.RECEIVED)) {
          const frame = new WebsocketFrameSend(data);
          this.#handler.socket.write(frame.createFrame(opcode), () => {
            promise2.resolve(void 0);
          });
        }
        return promise2.promise;
      }
      /** @type {import('../websocket').Handler['onConnectionEstablished']} */
      #onConnectionEstablished(response, parsedExtensions) {
        this.#handler.socket = response.socket;
        const parser = new ByteParser(this.#handler, parsedExtensions);
        parser.on("drain", () => this.#handler.onParserDrain());
        parser.on("error", (err) => this.#handler.onParserError(err));
        this.#parser = parser;
        this.#handler.readyState = states.OPEN;
        const extensions2 = parsedExtensions ?? "";
        const protocol = response.headersList.get("sec-websocket-protocol") ?? "";
        const readable2 = new ReadableStream({
          start: (controller) => {
            this.#readableStreamController = controller;
          },
          pull(controller) {
            let chunk;
            while (controller.desiredSize > 0 && (chunk = response.socket.read()) !== null) {
              controller.enqueue(chunk);
            }
          },
          cancel: (reason) => this.#cancel(reason)
        });
        const writable2 = new WritableStream({
          write: (chunk) => this.#write(chunk),
          close: () => closeWebSocketConnection(this.#handler, null, null),
          abort: (reason) => this.#closeUsingReason(reason)
        });
        this.#readableStream = readable2;
        this.#writableStream = writable2;
        this.#openedPromise.resolve({
          extensions: extensions2,
          protocol,
          readable: readable2,
          writable: writable2
        });
      }
      /** @type {import('../websocket').Handler['onMessage']} */
      #onMessage(type4, data) {
        if (this.#handler.readyState !== states.OPEN) {
          return;
        }
        let chunk;
        if (type4 === opcodes.TEXT) {
          try {
            chunk = utf8Decode(data);
          } catch {
            failWebsocketConnection(this.#handler, "Received invalid UTF-8 in text frame.");
            return;
          }
        } else if (type4 === opcodes.BINARY) {
          chunk = new Uint8Array(data.buffer, data.byteOffset, data.byteLength);
        }
        this.#readableStreamController.enqueue(chunk);
      }
      /** @type {import('../websocket').Handler['onSocketClose']} */
      #onSocketClose() {
        const wasClean = this.#handler.closeState.has(sentCloseFrameState.SENT) && this.#handler.closeState.has(sentCloseFrameState.RECEIVED);
        this.#handler.readyState = states.CLOSED;
        if (this.#handshakeAborted) {
          return;
        }
        if (!this.#handler.wasEverConnected) {
          this.#openedPromise.reject(new WebSocketError("Socket never opened"));
        }
        const result2 = this.#parser?.closingInfo;
        let code = result2?.code ?? 1005;
        if (!this.#handler.closeState.has(sentCloseFrameState.SENT) && !this.#handler.closeState.has(sentCloseFrameState.RECEIVED)) {
          code = 1006;
        }
        const reason = result2?.reason == null ? "" : utf8DecodeBytes(Buffer.from(result2.reason));
        if (wasClean) {
          this.#readableStreamController.close();
          if (!this.#writableStream.locked) {
            this.#writableStream.abort(new DOMException("A closed WebSocketStream cannot be written to", "InvalidStateError"));
          }
          this.#closedPromise.resolve({
            closeCode: code,
            reason
          });
        } else {
          const error = createUnvalidatedWebSocketError("unclean close", code, reason);
          this.#readableStreamController?.error(error);
          this.#writableStream?.abort(error);
          this.#closedPromise.reject(error);
        }
      }
      #closeUsingReason(reason) {
        let code = null;
        let reasonString = "";
        if (webidl.is.WebSocketError(reason)) {
          code = reason.closeCode;
          reasonString = reason.reason;
        }
        closeWebSocketConnection(this.#handler, code, reasonString);
      }
      //  To cancel a WebSocketStream stream given reason , close using reason giving stream and reason .
      #cancel(reason) {
        this.#closeUsingReason(reason);
      }
    };
    Object.defineProperties(WebSocketStream.prototype, {
      url: kEnumerableProperty,
      opened: kEnumerableProperty,
      closed: kEnumerableProperty,
      close: kEnumerableProperty,
      [Symbol.toStringTag]: {
        value: "WebSocketStream",
        writable: false,
        enumerable: false,
        configurable: true
      }
    });
    webidl.converters.WebSocketStreamOptions = webidl.dictionaryConverter([
      {
        key: "protocols",
        converter: webidl.sequenceConverter(webidl.converters.USVString),
        defaultValue: () => []
      },
      {
        key: "signal",
        converter: webidl.nullableConverter(webidl.converters.AbortSignal),
        defaultValue: () => null
      }
    ]);
    webidl.converters.WebSocketCloseInfo = webidl.dictionaryConverter([
      {
        key: "closeCode",
        converter: (V) => webidl.converters["unsigned short"](V, webidl.attributes.EnforceRange)
      },
      {
        key: "reason",
        converter: webidl.converters.USVString,
        defaultValue: () => ""
      }
    ]);
    webidl.converters.WebSocketStreamWrite = function(V) {
      if (typeof V === "string") {
        return webidl.converters.USVString(V);
      }
      return webidl.converters.BufferSource(V);
    };
    module2.exports = { WebSocketStream };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/eventsource/util.js
var require_util11 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/eventsource/util.js"(exports2, module2) {
    "use strict";
    function isValidLastEventId(value) {
      return value.indexOf("\0") === -1;
    }
    function isASCIINumber(value) {
      if (value.length === 0) return false;
      for (let i2 = 0; i2 < value.length; i2++) {
        if (value.charCodeAt(i2) < 48 || value.charCodeAt(i2) > 57) return false;
      }
      return true;
    }
    module2.exports = {
      isValidLastEventId,
      isASCIINumber
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/eventsource/eventsource-stream.js
var require_eventsource_stream = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/eventsource/eventsource-stream.js"(exports2, module2) {
    "use strict";
    var { Transform: Transform2 } = __require("node:stream");
    var { isASCIINumber, isValidLastEventId } = require_util11();
    var BOM = [239, 187, 191];
    var LF2 = 10;
    var CR2 = 13;
    var COLON = 58;
    var SPACE2 = 32;
    var EventSourceStream = class extends Transform2 {
      /**
       * @type {eventSourceSettings}
       */
      state;
      /**
       * Leading byte-order-mark check.
       * @type {boolean}
       */
      checkBOM = true;
      /**
       * @type {boolean}
       */
      crlfCheck = false;
      /**
       * @type {boolean}
       */
      eventEndCheck = false;
      /**
       * @type {Buffer|null}
       */
      buffer = null;
      pos = 0;
      event = {
        data: void 0,
        event: void 0,
        id: void 0,
        retry: void 0
      };
      /**
       * @param {object} options
       * @param {boolean} [options.readableObjectMode]
       * @param {eventSourceSettings} [options.eventSourceSettings]
       * @param {(chunk: any, encoding?: BufferEncoding | undefined) => boolean} [options.push]
       */
      constructor(options = {}) {
        options.readableObjectMode = true;
        super(options);
        this.state = options.eventSourceSettings || {};
        if (options.push) {
          this.push = options.push;
        }
      }
      /**
       * @param {Buffer} chunk
       * @param {string} _encoding
       * @param {Function} callback
       * @returns {void}
       */
      _transform(chunk, _encoding, callback2) {
        if (chunk.length === 0) {
          callback2();
          return;
        }
        if (this.buffer) {
          this.buffer = Buffer.concat([this.buffer, chunk]);
        } else {
          this.buffer = chunk;
        }
        if (this.checkBOM) {
          switch (this.buffer.length) {
            case 1:
              if (this.buffer[0] === BOM[0]) {
                callback2();
                return;
              }
              this.checkBOM = false;
              callback2();
              return;
            case 2:
              if (this.buffer[0] === BOM[0] && this.buffer[1] === BOM[1]) {
                callback2();
                return;
              }
              this.checkBOM = false;
              break;
            case 3:
              if (this.buffer[0] === BOM[0] && this.buffer[1] === BOM[1] && this.buffer[2] === BOM[2]) {
                this.buffer = Buffer.alloc(0);
                this.checkBOM = false;
                callback2();
                return;
              }
              this.checkBOM = false;
              break;
            default:
              if (this.buffer[0] === BOM[0] && this.buffer[1] === BOM[1] && this.buffer[2] === BOM[2]) {
                this.buffer = this.buffer.subarray(3);
              }
              this.checkBOM = false;
              break;
          }
        }
        while (this.pos < this.buffer.length) {
          if (this.eventEndCheck) {
            if (this.crlfCheck) {
              if (this.buffer[this.pos] === LF2) {
                this.buffer = this.buffer.subarray(this.pos + 1);
                this.pos = 0;
                this.crlfCheck = false;
                continue;
              }
              this.crlfCheck = false;
            }
            if (this.buffer[this.pos] === LF2 || this.buffer[this.pos] === CR2) {
              if (this.buffer[this.pos] === CR2) {
                this.crlfCheck = true;
              }
              this.buffer = this.buffer.subarray(this.pos + 1);
              this.pos = 0;
              if (this.event.data !== void 0 || this.event.event || this.event.id !== void 0 || this.event.retry) {
                this.processEvent(this.event);
              }
              this.clearEvent();
              continue;
            }
            this.eventEndCheck = false;
            continue;
          }
          if (this.buffer[this.pos] === LF2 || this.buffer[this.pos] === CR2) {
            if (this.buffer[this.pos] === CR2) {
              this.crlfCheck = true;
            }
            this.parseLine(this.buffer.subarray(0, this.pos), this.event);
            this.buffer = this.buffer.subarray(this.pos + 1);
            this.pos = 0;
            this.eventEndCheck = true;
            continue;
          }
          this.pos++;
        }
        callback2();
      }
      /**
       * @param {Buffer} line
       * @param {EventSourceStreamEvent} event
       */
      parseLine(line, event) {
        if (line.length === 0) {
          return;
        }
        const colonPosition = line.indexOf(COLON);
        if (colonPosition === 0) {
          return;
        }
        let field = "";
        let value = "";
        if (colonPosition !== -1) {
          field = line.subarray(0, colonPosition).toString("utf8");
          let valueStart = colonPosition + 1;
          if (line[valueStart] === SPACE2) {
            ++valueStart;
          }
          value = line.subarray(valueStart).toString("utf8");
        } else {
          field = line.toString("utf8");
          value = "";
        }
        switch (field) {
          case "data":
            if (event[field] === void 0) {
              event[field] = value;
            } else {
              event[field] += `
${value}`;
            }
            break;
          case "retry":
            if (isASCIINumber(value)) {
              event[field] = value;
            }
            break;
          case "id":
            if (isValidLastEventId(value)) {
              event[field] = value;
            }
            break;
          case "event":
            if (value.length > 0) {
              event[field] = value;
            }
            break;
        }
      }
      /**
       * @param {EventSourceStreamEvent} event
       */
      processEvent(event) {
        if (event.retry && isASCIINumber(event.retry)) {
          this.state.reconnectionTime = parseInt(event.retry, 10);
        }
        if (event.id !== void 0 && isValidLastEventId(event.id)) {
          this.state.lastEventId = event.id;
        }
        if (event.data !== void 0) {
          this.push({
            type: event.event || "message",
            options: {
              data: event.data,
              lastEventId: this.state.lastEventId,
              origin: this.state.origin
            }
          });
        }
      }
      clearEvent() {
        this.event = {
          data: void 0,
          event: void 0,
          id: void 0,
          retry: void 0
        };
      }
    };
    module2.exports = {
      EventSourceStream
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/eventsource/eventsource.js
var require_eventsource = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/lib/web/eventsource/eventsource.js"(exports2, module2) {
    "use strict";
    var { pipeline: pipeline2 } = __require("node:stream");
    var { fetching } = require_fetch();
    var { makeRequest } = require_request2();
    var { webidl } = require_webidl();
    var { EventSourceStream } = require_eventsource_stream();
    var { parseMIMEType } = require_data_url();
    var { createFastMessageEvent } = require_events();
    var { isNetworkError } = require_response();
    var { kEnumerableProperty } = require_util6();
    var { environmentSettingsObject } = require_util7();
    var experimentalWarned = false;
    var defaultReconnectionTime = 3e3;
    var CONNECTING = 0;
    var OPEN = 1;
    var CLOSED = 2;
    var ANONYMOUS = "anonymous";
    var USE_CREDENTIALS = "use-credentials";
    var EventSource = class _EventSource extends EventTarget {
      #events = {
        open: null,
        error: null,
        message: null
      };
      #url;
      #withCredentials = false;
      /**
       * @type {ReadyState}
       */
      #readyState = CONNECTING;
      #request = null;
      #controller = null;
      #dispatcher;
      /**
       * @type {import('./eventsource-stream').eventSourceSettings}
       */
      #state;
      /**
       * Creates a new EventSource object.
       * @param {string} url
       * @param {EventSourceInit} [eventSourceInitDict={}]
       * @see https://html.spec.whatwg.org/multipage/server-sent-events.html#the-eventsource-interface
       */
      constructor(url7, eventSourceInitDict = {}) {
        super();
        webidl.util.markAsUncloneable(this);
        const prefix = "EventSource constructor";
        webidl.argumentLengthCheck(arguments, 1, prefix);
        if (!experimentalWarned) {
          experimentalWarned = true;
          process.emitWarning("EventSource is experimental, expect them to change at any time.", {
            code: "UNDICI-ES"
          });
        }
        url7 = webidl.converters.USVString(url7);
        eventSourceInitDict = webidl.converters.EventSourceInitDict(eventSourceInitDict, prefix, "eventSourceInitDict");
        this.#dispatcher = eventSourceInitDict.node.dispatcher || eventSourceInitDict.dispatcher;
        this.#state = {
          lastEventId: "",
          reconnectionTime: eventSourceInitDict.node.reconnectionTime
        };
        const settings = environmentSettingsObject;
        let urlRecord;
        try {
          urlRecord = new URL(url7, settings.settingsObject.baseUrl);
          this.#state.origin = urlRecord.origin;
        } catch (e) {
          throw new DOMException(e, "SyntaxError");
        }
        this.#url = urlRecord.href;
        let corsAttributeState = ANONYMOUS;
        if (eventSourceInitDict.withCredentials === true) {
          corsAttributeState = USE_CREDENTIALS;
          this.#withCredentials = true;
        }
        const initRequest = {
          redirect: "follow",
          keepalive: true,
          // @see https://html.spec.whatwg.org/multipage/urls-and-fetching.html#cors-settings-attributes
          mode: "cors",
          credentials: corsAttributeState === "anonymous" ? "same-origin" : "omit",
          referrer: "no-referrer"
        };
        initRequest.client = environmentSettingsObject.settingsObject;
        initRequest.headersList = [["accept", { name: "accept", value: "text/event-stream" }]];
        initRequest.cache = "no-store";
        initRequest.initiator = "other";
        initRequest.urlList = [new URL(this.#url)];
        this.#request = makeRequest(initRequest);
        this.#connect();
      }
      /**
       * Returns the state of this EventSource object's connection. It can have the
       * values described below.
       * @returns {ReadyState}
       * @readonly
       */
      get readyState() {
        return this.#readyState;
      }
      /**
       * Returns the URL providing the event stream.
       * @readonly
       * @returns {string}
       */
      get url() {
        return this.#url;
      }
      /**
       * Returns a boolean indicating whether the EventSource object was
       * instantiated with CORS credentials set (true), or not (false, the default).
       */
      get withCredentials() {
        return this.#withCredentials;
      }
      #connect() {
        if (this.#readyState === CLOSED) return;
        this.#readyState = CONNECTING;
        const fetchParams = {
          request: this.#request,
          dispatcher: this.#dispatcher
        };
        const processEventSourceEndOfBody = (response) => {
          if (!isNetworkError(response)) {
            return this.#reconnect();
          }
        };
        fetchParams.processResponseEndOfBody = processEventSourceEndOfBody;
        fetchParams.processResponse = (response) => {
          if (isNetworkError(response)) {
            if (response.aborted) {
              this.close();
              this.dispatchEvent(new Event("error"));
              return;
            } else {
              this.#reconnect();
              return;
            }
          }
          const contentType = response.headersList.get("content-type", true);
          const mimeType = contentType !== null ? parseMIMEType(contentType) : "failure";
          const contentTypeValid = mimeType !== "failure" && mimeType.essence === "text/event-stream";
          if (response.status !== 200 || contentTypeValid === false) {
            this.close();
            this.dispatchEvent(new Event("error"));
            return;
          }
          this.#readyState = OPEN;
          this.dispatchEvent(new Event("open"));
          this.#state.origin = response.urlList[response.urlList.length - 1].origin;
          const eventSourceStream = new EventSourceStream({
            eventSourceSettings: this.#state,
            push: (event) => {
              this.dispatchEvent(createFastMessageEvent(
                event.type,
                event.options
              ));
            }
          });
          pipeline2(
            response.body.stream,
            eventSourceStream,
            (error) => {
              if (error?.aborted === false) {
                this.close();
                this.dispatchEvent(new Event("error"));
              }
            }
          );
        };
        this.#controller = fetching(fetchParams);
      }
      /**
       * @see https://html.spec.whatwg.org/multipage/server-sent-events.html#sse-processing-model
       * @returns {void}
       */
      #reconnect() {
        if (this.#readyState === CLOSED) return;
        this.#readyState = CONNECTING;
        this.dispatchEvent(new Event("error"));
        setTimeout(() => {
          if (this.#readyState !== CONNECTING) return;
          if (this.#state.lastEventId.length) {
            this.#request.headersList.set("last-event-id", this.#state.lastEventId, true);
          }
          this.#connect();
        }, this.#state.reconnectionTime)?.unref();
      }
      /**
       * Closes the connection, if any, and sets the readyState attribute to
       * CLOSED.
       */
      close() {
        webidl.brandCheck(this, _EventSource);
        if (this.#readyState === CLOSED) return;
        this.#readyState = CLOSED;
        this.#controller.abort();
        this.#request = null;
      }
      get onopen() {
        return this.#events.open;
      }
      set onopen(fn) {
        if (this.#events.open) {
          this.removeEventListener("open", this.#events.open);
        }
        const listener = webidl.converters.EventHandlerNonNull(fn);
        if (listener !== null) {
          this.addEventListener("open", listener);
          this.#events.open = fn;
        } else {
          this.#events.open = null;
        }
      }
      get onmessage() {
        return this.#events.message;
      }
      set onmessage(fn) {
        if (this.#events.message) {
          this.removeEventListener("message", this.#events.message);
        }
        const listener = webidl.converters.EventHandlerNonNull(fn);
        if (listener !== null) {
          this.addEventListener("message", listener);
          this.#events.message = fn;
        } else {
          this.#events.message = null;
        }
      }
      get onerror() {
        return this.#events.error;
      }
      set onerror(fn) {
        if (this.#events.error) {
          this.removeEventListener("error", this.#events.error);
        }
        const listener = webidl.converters.EventHandlerNonNull(fn);
        if (listener !== null) {
          this.addEventListener("error", listener);
          this.#events.error = fn;
        } else {
          this.#events.error = null;
        }
      }
    };
    var constantsPropertyDescriptors = {
      CONNECTING: {
        __proto__: null,
        configurable: false,
        enumerable: true,
        value: CONNECTING,
        writable: false
      },
      OPEN: {
        __proto__: null,
        configurable: false,
        enumerable: true,
        value: OPEN,
        writable: false
      },
      CLOSED: {
        __proto__: null,
        configurable: false,
        enumerable: true,
        value: CLOSED,
        writable: false
      }
    };
    Object.defineProperties(EventSource, constantsPropertyDescriptors);
    Object.defineProperties(EventSource.prototype, constantsPropertyDescriptors);
    Object.defineProperties(EventSource.prototype, {
      close: kEnumerableProperty,
      onerror: kEnumerableProperty,
      onmessage: kEnumerableProperty,
      onopen: kEnumerableProperty,
      readyState: kEnumerableProperty,
      url: kEnumerableProperty,
      withCredentials: kEnumerableProperty
    });
    webidl.converters.EventSourceInitDict = webidl.dictionaryConverter([
      {
        key: "withCredentials",
        converter: webidl.converters.boolean,
        defaultValue: () => false
      },
      {
        key: "dispatcher",
        // undici only
        converter: webidl.converters.any
      },
      {
        key: "node",
        // undici only
        converter: webidl.dictionaryConverter([
          {
            key: "reconnectionTime",
            converter: webidl.converters["unsigned long"],
            defaultValue: () => defaultReconnectionTime
          },
          {
            key: "dispatcher",
            converter: webidl.converters.any
          }
        ]),
        defaultValue: () => ({})
      }
    ]);
    module2.exports = {
      EventSource,
      defaultReconnectionTime
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/index.js
var require_undici = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/undici/7.25.0/fff5fcb97a529985ad019dabaad78fbc3314f37fc8cd1969c3e126a3211ab1c9/node_modules/undici/index.js"(exports2, module2) {
    "use strict";
    var Client = require_client();
    var Dispatcher = require_dispatcher();
    var Pool = require_pool();
    var BalancedPool = require_balanced_pool();
    var RoundRobinPool = require_round_robin_pool();
    var Agent2 = require_agent();
    var ProxyAgent2 = require_proxy_agent();
    var Socks5ProxyAgent = require_socks5_proxy_agent();
    var EnvHttpProxyAgent = require_env_http_proxy_agent();
    var RetryAgent = require_retry_agent();
    var H2CClient = require_h2c_client();
    var errors2 = require_errors5();
    var util56 = require_util6();
    var { InvalidArgumentError } = errors2;
    var api2 = require_api();
    var buildConnector = require_connect();
    var MockClient = require_mock_client();
    var { MockCallHistory, MockCallHistoryLog } = require_mock_call_history();
    var MockAgent = require_mock_agent();
    var MockPool = require_mock_pool();
    var SnapshotAgent = require_snapshot_agent();
    var mockErrors = require_mock_errors();
    var RetryHandler = require_retry_handler();
    var { getGlobalDispatcher, setGlobalDispatcher: setGlobalDispatcher2 } = require_global2();
    var DecoratorHandler = require_decorator_handler();
    var RedirectHandler = require_redirect_handler();
    Object.assign(Dispatcher.prototype, api2);
    module2.exports.Dispatcher = Dispatcher;
    module2.exports.Client = Client;
    module2.exports.Pool = Pool;
    module2.exports.BalancedPool = BalancedPool;
    module2.exports.RoundRobinPool = RoundRobinPool;
    module2.exports.Agent = Agent2;
    module2.exports.ProxyAgent = ProxyAgent2;
    module2.exports.Socks5ProxyAgent = Socks5ProxyAgent;
    module2.exports.EnvHttpProxyAgent = EnvHttpProxyAgent;
    module2.exports.RetryAgent = RetryAgent;
    module2.exports.H2CClient = H2CClient;
    module2.exports.RetryHandler = RetryHandler;
    module2.exports.DecoratorHandler = DecoratorHandler;
    module2.exports.RedirectHandler = RedirectHandler;
    module2.exports.interceptors = {
      redirect: require_redirect(),
      responseError: require_response_error(),
      retry: require_retry2(),
      dump: require_dump(),
      dns: require_dns(),
      cache: require_cache2(),
      decompress: require_decompress(),
      deduplicate: require_deduplicate()
    };
    module2.exports.cacheStores = {
      MemoryCacheStore: require_memory_cache_store()
    };
    var SqliteCacheStore = require_sqlite_cache_store();
    module2.exports.cacheStores.SqliteCacheStore = SqliteCacheStore;
    module2.exports.buildConnector = buildConnector;
    module2.exports.errors = errors2;
    module2.exports.util = {
      parseHeaders: util56.parseHeaders,
      headerNameToString: util56.headerNameToString
    };
    function makeDispatcher(fn) {
      return (url7, opts2, handler77) => {
        if (typeof opts2 === "function") {
          handler77 = opts2;
          opts2 = null;
        }
        if (!url7 || typeof url7 !== "string" && typeof url7 !== "object" && !(url7 instanceof URL)) {
          throw new InvalidArgumentError("invalid url");
        }
        if (opts2 != null && typeof opts2 !== "object") {
          throw new InvalidArgumentError("invalid opts");
        }
        if (opts2 && opts2.path != null) {
          if (typeof opts2.path !== "string") {
            throw new InvalidArgumentError("invalid opts.path");
          }
          let path218 = opts2.path;
          if (!opts2.path.startsWith("/")) {
            path218 = `/${path218}`;
          }
          url7 = new URL(util56.parseOrigin(url7).origin + path218);
        } else {
          if (!opts2) {
            opts2 = typeof url7 === "object" ? url7 : {};
          }
          url7 = util56.parseURL(url7);
        }
        const { agent, dispatcher = getGlobalDispatcher() } = opts2;
        if (agent) {
          throw new InvalidArgumentError("unsupported opts.agent. Did you mean opts.client?");
        }
        return fn.call(dispatcher, {
          ...opts2,
          origin: url7.origin,
          path: url7.search ? `${url7.pathname}${url7.search}` : url7.pathname,
          method: opts2.method || (opts2.body ? "PUT" : "GET")
        }, handler77);
      };
    }
    module2.exports.setGlobalDispatcher = setGlobalDispatcher2;
    module2.exports.getGlobalDispatcher = getGlobalDispatcher;
    var fetchImpl = require_fetch().fetch;
    var currentFilename = typeof __filename !== "undefined" ? __filename : void 0;
    function appendFetchStackTrace(err, filename) {
      if (!err || typeof err !== "object") {
        return;
      }
      const stack = typeof err.stack === "string" ? err.stack : "";
      const normalizedFilename = filename.replace(/\\/g, "/");
      if (stack && (stack.includes(filename) || stack.includes(normalizedFilename))) {
        return;
      }
      const capture = {};
      Error.captureStackTrace(capture, appendFetchStackTrace);
      if (!capture.stack) {
        return;
      }
      const captureLines = capture.stack.split("\n").slice(1).join("\n");
      err.stack = stack ? `${stack}
${captureLines}` : capture.stack;
    }
    module2.exports.fetch = function fetch2(init2, options = void 0) {
      return fetchImpl(init2, options).catch((err) => {
        if (currentFilename) {
          appendFetchStackTrace(err, currentFilename);
        } else if (err && typeof err === "object") {
          Error.captureStackTrace(err, module2.exports.fetch);
        }
        throw err;
      });
    };
    module2.exports.Headers = require_headers2().Headers;
    module2.exports.Response = require_response().Response;
    module2.exports.Request = require_request2().Request;
    module2.exports.FormData = require_formdata().FormData;
    var { setGlobalOrigin, getGlobalOrigin } = require_global();
    module2.exports.setGlobalOrigin = setGlobalOrigin;
    module2.exports.getGlobalOrigin = getGlobalOrigin;
    var { CacheStorage } = require_cachestorage();
    var { kConstruct } = require_symbols();
    module2.exports.caches = new CacheStorage(kConstruct);
    var { deleteCookie, getCookies, getSetCookies, setCookie, parseCookie } = require_cookies();
    module2.exports.deleteCookie = deleteCookie;
    module2.exports.getCookies = getCookies;
    module2.exports.getSetCookies = getSetCookies;
    module2.exports.setCookie = setCookie;
    module2.exports.parseCookie = parseCookie;
    var { parseMIMEType, serializeAMimeType } = require_data_url();
    module2.exports.parseMIMEType = parseMIMEType;
    module2.exports.serializeAMimeType = serializeAMimeType;
    var { CloseEvent, ErrorEvent, MessageEvent } = require_events();
    var { WebSocket, ping } = require_websocket();
    module2.exports.WebSocket = WebSocket;
    module2.exports.CloseEvent = CloseEvent;
    module2.exports.ErrorEvent = ErrorEvent;
    module2.exports.MessageEvent = MessageEvent;
    module2.exports.ping = ping;
    module2.exports.WebSocketStream = require_websocketstream().WebSocketStream;
    module2.exports.WebSocketError = require_websocketerror().WebSocketError;
    module2.exports.request = makeDispatcher(api2.request);
    module2.exports.stream = makeDispatcher(api2.stream);
    module2.exports.pipeline = makeDispatcher(api2.pipeline);
    module2.exports.connect = makeDispatcher(api2.connect);
    module2.exports.upgrade = makeDispatcher(api2.upgrade);
    module2.exports.MockClient = MockClient;
    module2.exports.MockCallHistory = MockCallHistory;
    module2.exports.MockCallHistoryLog = MockCallHistoryLog;
    module2.exports.MockPool = MockPool;
    module2.exports.MockAgent = MockAgent;
    module2.exports.SnapshotAgent = SnapshotAgent;
    module2.exports.mockErrors = mockErrors;
    var { EventSource } = require_eventsource();
    module2.exports.EventSource = EventSource;
    function install2() {
      globalThis.fetch = module2.exports.fetch;
      globalThis.Headers = module2.exports.Headers;
      globalThis.Response = module2.exports.Response;
      globalThis.Request = module2.exports.Request;
      globalThis.FormData = module2.exports.FormData;
      globalThis.WebSocket = module2.exports.WebSocket;
      globalThis.CloseEvent = module2.exports.CloseEvent;
      globalThis.ErrorEvent = module2.exports.ErrorEvent;
      globalThis.MessageEvent = module2.exports.MessageEvent;
      globalThis.EventSource = module2.exports.EventSource;
    }
    module2.exports.install = install2;
  }
});

// ../network/fetch/lib/dispatcher.js
import tls from "node:tls";
import { URL as URL3 } from "node:url";
function stripSecFetchHeaders(dispatch) {
  return (opts2, handler77) => {
    if (opts2.headers) {
      if (Array.isArray(opts2.headers)) {
        const filtered = [];
        for (let i2 = 0; i2 < opts2.headers.length; i2 += 2) {
          if (!opts2.headers[i2].toLowerCase().startsWith("sec-fetch-")) {
            filtered.push(opts2.headers[i2], opts2.headers[i2 + 1]);
          }
        }
        opts2 = { ...opts2, headers: filtered };
      } else if (typeof opts2.headers === "object") {
        const entries = Symbol.iterator in opts2.headers ? opts2.headers : Object.entries(opts2.headers);
        const headers = {};
        for (const [key, value] of entries) {
          if (!key.toLowerCase().startsWith("sec-fetch-")) {
            headers[key] = value;
          }
        }
        opts2 = { ...opts2, headers };
      }
    }
    return dispatch(opts2, handler77);
  };
}
function getDispatcher(uri, opts2) {
  if (!needsCustomDispatcher(opts2)) {
    return void 0;
  }
  const parsedUri = new URL3(uri);
  if ((opts2.httpProxy || opts2.httpsProxy) && !checkNoProxy(parsedUri, opts2)) {
    const proxyDispatcher = getProxyDispatcher(parsedUri, opts2);
    if (proxyDispatcher)
      return proxyDispatcher;
  }
  return getNonProxyDispatcher(parsedUri, opts2);
}
function hasClientCertificates(certs) {
  if (!certs)
    return false;
  for (const uri in certs) {
    const entry = certs[uri];
    if (entry.cert || entry.key || entry.ca)
      return true;
  }
  return false;
}
function needsCustomDispatcher(opts2) {
  return Boolean(opts2.httpProxy || opts2.httpsProxy || opts2.ca || opts2.cert || opts2.key || opts2.localAddress || opts2.strictSsl === false || hasClientCertificates(opts2.clientCertificates) || opts2.maxSockets);
}
function parseProxyUrl(proxy, protocol) {
  let proxyUrl = proxy;
  if (!proxyUrl.includes("://")) {
    proxyUrl = `${protocol}//${proxyUrl}`;
  }
  try {
    return new URL3(proxyUrl);
  } catch {
    throw new PnpmError("INVALID_PROXY", "Couldn't parse proxy URL", {
      hint: "If your proxy URL contains a username and password, make sure to URL-encode them (you may use the encodeURIComponent function). For instance, https-proxy=https://use%21r:pas%2As@my.proxy:1234/foo. Do not encode the colon (:) between the username and password."
    });
  }
}
function getSocksProxyType(protocol) {
  switch (protocol.replace(":", "")) {
    case "socks4":
    case "socks4a":
      return 4;
    default:
      return 5;
  }
}
function getProxyDispatcher(parsedUri, opts2) {
  const isHttps = parsedUri.protocol === "https:";
  const proxy = isHttps ? opts2.httpsProxy : opts2.httpProxy;
  if (!proxy)
    return null;
  const proxyUrl = parseProxyUrl(proxy, parsedUri.protocol);
  const sslConfig = pickSettingByUrl(opts2.clientCertificates, parsedUri.href);
  const { ca, cert, key: certKey } = { ...opts2, ...sslConfig };
  const key = [
    `proxy:${proxyUrl.protocol}//${proxyUrl.username}:${proxyUrl.password}@${proxyUrl.host}:${proxyUrl.port}`,
    `https:${isHttps.toString()}`,
    `local-address:${opts2.localAddress ?? ">no-local-address<"}`,
    `max-sockets:${(opts2.maxSockets ?? DEFAULT_MAX_SOCKETS).toString()}`,
    `strict-ssl:${isHttps ? Boolean(opts2.strictSsl).toString() : ">no-strict-ssl<"}`,
    `ca:${isHttps && ca?.toString() || "-"}`,
    `cert:${isHttps && cert?.toString() || "-"}`,
    `key:${isHttps && certKey?.toString() || "-"}`
  ].join(":");
  if (DISPATCHER_CACHE.has(key)) {
    return DISPATCHER_CACHE.get(key);
  }
  let dispatcher;
  if (proxyUrl.protocol.startsWith("socks")) {
    dispatcher = createSocksDispatcher(proxyUrl, parsedUri, opts2, { ca, cert, key: certKey });
  } else {
    dispatcher = createHttpProxyDispatcher(proxyUrl, isHttps, opts2, { ca, cert, key: certKey });
  }
  dispatcher = dispatcher.compose(stripSecFetchHeaders);
  DISPATCHER_CACHE.set(key, dispatcher);
  return dispatcher;
}
function createHttpProxyDispatcher(proxyUrl, isHttps, opts2, tlsConfig) {
  return new import_undici.ProxyAgent({
    uri: proxyUrl.href,
    token: proxyUrl.username ? `Basic ${Buffer.from(`${decodeURIComponent(proxyUrl.username)}:${decodeURIComponent(proxyUrl.password)}`).toString("base64")}` : void 0,
    connections: opts2.maxSockets ?? DEFAULT_MAX_SOCKETS,
    keepAliveTimeout: KEEP_ALIVE_TIMEOUT,
    keepAliveMaxTimeout: KEEP_ALIVE_MAX_TIMEOUT,
    requestTls: isHttps ? {
      ca: tlsConfig.ca,
      cert: tlsConfig.cert,
      key: tlsConfig.key,
      rejectUnauthorized: opts2.strictSsl ?? true,
      localAddress: opts2.localAddress
    } : void 0,
    proxyTls: {
      ca: opts2.ca,
      rejectUnauthorized: opts2.strictSsl ?? true
    }
  });
}
function createSocksDispatcher(proxyUrl, targetUri, opts2, tlsConfig) {
  const isHttps = targetUri.protocol === "https:";
  const socksType = getSocksProxyType(proxyUrl.protocol);
  const proxyHost = proxyUrl.hostname;
  const proxyPort = parseInt(proxyUrl.port, 10) || (socksType === 4 ? 1080 : 1080);
  return new import_undici.Agent({
    connections: opts2.maxSockets ?? DEFAULT_MAX_SOCKETS,
    keepAliveTimeout: KEEP_ALIVE_TIMEOUT,
    keepAliveMaxTimeout: KEEP_ALIVE_MAX_TIMEOUT,
    connect: async (connectOpts, callback2) => {
      try {
        const { socket } = await import_socks.SocksClient.createConnection({
          proxy: {
            host: proxyHost,
            port: proxyPort,
            type: socksType,
            userId: proxyUrl.username ? decodeURIComponent(proxyUrl.username) : void 0,
            password: proxyUrl.password ? decodeURIComponent(proxyUrl.password) : void 0
          },
          command: "connect",
          destination: {
            host: connectOpts.hostname,
            port: parseInt(String(connectOpts.port), 10)
          }
        });
        if (isHttps) {
          const tlsOpts = {
            socket,
            servername: connectOpts.hostname,
            ca: tlsConfig.ca,
            cert: tlsConfig.cert,
            key: tlsConfig.key,
            rejectUnauthorized: opts2.strictSsl ?? true
          };
          const tlsSocket = tls.connect(tlsOpts);
          tlsSocket.on("secureConnect", () => {
            callback2(null, tlsSocket);
          });
          tlsSocket.on("error", (err) => {
            callback2(err, null);
          });
        } else {
          callback2(null, socket);
        }
      } catch (err) {
        callback2(err, null);
      }
    }
  });
}
function getNonProxyDispatcher(parsedUri, opts2) {
  const isHttps = parsedUri.protocol === "https:";
  const sslConfig = pickSettingByUrl(opts2.clientCertificates, parsedUri.href);
  const { ca, cert, key: certKey } = { ...opts2, ...sslConfig };
  const key = [
    `https:${isHttps.toString()}`,
    `local-address:${opts2.localAddress ?? ">no-local-address<"}`,
    `max-sockets:${(opts2.maxSockets ?? DEFAULT_MAX_SOCKETS).toString()}`,
    `strict-ssl:${isHttps ? Boolean(opts2.strictSsl).toString() : ">no-strict-ssl<"}`,
    `ca:${isHttps && ca?.toString() || "-"}`,
    `cert:${isHttps && cert?.toString() || "-"}`,
    `key:${isHttps && certKey?.toString() || "-"}`
  ].join(":");
  if (DISPATCHER_CACHE.has(key)) {
    return DISPATCHER_CACHE.get(key);
  }
  const connectTimeout = typeof opts2.timeout !== "number" || opts2.timeout === 0 ? 0 : opts2.timeout + 1;
  const agent = new import_undici.Agent({
    connections: opts2.maxSockets ?? DEFAULT_MAX_SOCKETS,
    connectTimeout,
    keepAliveTimeout: KEEP_ALIVE_TIMEOUT,
    keepAliveMaxTimeout: KEEP_ALIVE_MAX_TIMEOUT,
    connect: isHttps ? {
      autoSelectFamily: true,
      ca,
      cert,
      key: certKey,
      rejectUnauthorized: opts2.strictSsl ?? true,
      localAddress: opts2.localAddress
    } : {
      autoSelectFamily: true,
      localAddress: opts2.localAddress
    }
  });
  const dispatcher = agent.compose(stripSecFetchHeaders);
  DISPATCHER_CACHE.set(key, dispatcher);
  return dispatcher;
}
function checkNoProxy(parsedUri, opts2) {
  const host = parsedUri.hostname.split(".").filter((x) => x).reverse();
  if (typeof opts2.noProxy === "string") {
    const noproxyArr = opts2.noProxy.split(",").map((s) => s.trim());
    return noproxyArr.some((no) => {
      const noParts = no.split(".").filter((x) => x).reverse();
      if (noParts.length === 0) {
        return false;
      }
      for (let i2 = 0; i2 < noParts.length; i2++) {
        if (host[i2] !== noParts[i2]) {
          return false;
        }
      }
      return true;
    });
  }
  return opts2.noProxy === true;
}
function pickSettingByUrl(settings, uri) {
  if (!settings)
    return void 0;
  if (settings[uri])
    return settings[uri];
  const nerf = (0, import_config8.nerfDart)(uri);
  if (settings[nerf])
    return settings[nerf];
  const parsedUrl = new URL3(uri);
  const withoutPort = removePort2(parsedUrl);
  if (settings[withoutPort])
    return settings[withoutPort];
  const maxParts = Object.keys(settings).reduce((max3, key) => {
    const parts2 = key.split("/").length;
    return parts2 > max3 ? parts2 : max3;
  }, 0);
  const parts = nerf.split("/");
  for (let i2 = Math.min(parts.length, maxParts) - 1; i2 >= 3; i2--) {
    const key = `${parts.slice(0, i2).join("/")}/`;
    if (settings[key]) {
      return settings[key];
    }
  }
  if (withoutPort !== uri) {
    return pickSettingByUrl(settings, withoutPort);
  }
  return void 0;
}
function removePort2(parsedUrl) {
  if (parsedUrl.port === "")
    return parsedUrl.href;
  const copy2 = new URL3(parsedUrl.href);
  copy2.port = "";
  const res = copy2.toString();
  return res.endsWith("/") ? res : `${res}/`;
}
var import_config8, import_socks, import_undici, DEFAULT_MAX_SOCKETS, KEEP_ALIVE_TIMEOUT, KEEP_ALIVE_MAX_TIMEOUT, DISPATCHER_CACHE;
var init_dispatcher = __esm({
  "../network/fetch/lib/dispatcher.js"() {
    "use strict";
    import_config8 = __toESM(require_dist4(), 1);
    init_lib2();
    init_index_min();
    import_socks = __toESM(require_build(), 1);
    import_undici = __toESM(require_undici(), 1);
    DEFAULT_MAX_SOCKETS = 50;
    KEEP_ALIVE_TIMEOUT = 3e4;
    KEEP_ALIVE_MAX_TIMEOUT = 6e5;
    (0, import_undici.setGlobalDispatcher)(new import_undici.Agent({
      connections: DEFAULT_MAX_SOCKETS,
      keepAliveTimeout: KEEP_ALIVE_TIMEOUT,
      keepAliveMaxTimeout: KEEP_ALIVE_MAX_TIMEOUT,
      connect: {
        autoSelectFamily: true
      }
    }).compose(stripSecFetchHeaders));
    DISPATCHER_CACHE = new I({
      max: 50,
      dispose: (dispatcher) => {
        if (typeof dispatcher.close === "function") {
          void dispatcher.close();
        }
      }
    });
  }
});

// ../network/fetch/lib/fetch.js
function isRedirect(statusCode) {
  return REDIRECT_CODES.has(statusCode);
}
async function fetch(url7, opts2 = {}) {
  const retryOpts = opts2.retry ?? {};
  const maxRetries = retryOpts.retries ?? 2;
  const op = (0, import_retry.operation)({
    factor: retryOpts.factor ?? 10,
    maxTimeout: retryOpts.maxTimeout ?? 6e4,
    minTimeout: retryOpts.minTimeout ?? 1e4,
    randomize: false,
    retries: maxRetries
  });
  try {
    return await new Promise((resolve3, reject3) => {
      op.attempt(async (attempt) => {
        const urlString = typeof url7 === "string" ? url7 : url7.href ?? url7.toString();
        const { retry: _retry, timeout, dispatcher, ...fetchOpts } = opts2;
        const signal = timeout ? AbortSignal.timeout(timeout) : void 0;
        try {
          const res = await (0, import_undici2.fetch)(urlString, { ...fetchOpts, signal, dispatcher });
          if (res.status >= 500 && res.status < 600 || [408, 409, 420, 429].includes(res.status)) {
            throw new ResponseError(res);
          } else {
            resolve3(res);
          }
        } catch (error) {
          const err = error;
          const errorCode = err?.code ?? err?.cause?.code;
          if (typeof errorCode === "string" && NO_RETRY_ERROR_CODES.has(errorCode)) {
            throw error;
          }
          const retryTimeout = op.retry(err);
          if (retryTimeout === false) {
            reject3(op.mainError());
            return;
          }
          const errorInfo = {
            name: err.name,
            message: err.message,
            code: err.code,
            errno: err.errno,
            // For HTTP errors from ResponseError class
            status: err.status,
            statusCode: err.statusCode,
            // undici wraps the actual network error in a cause property
            cause: err.cause ? {
              code: err.cause.code,
              errno: err.cause.errno
            } : void 0
          };
          requestRetryLogger.debug({
            attempt,
            error: errorInfo,
            maxRetries,
            method: opts2.method ?? "GET",
            timeout: retryTimeout,
            url: urlString
          });
        }
      });
    });
  } catch (err) {
    if (err instanceof ResponseError) {
      return err.res;
    }
    throw err;
  }
}
var import_retry, import_undici2, NO_RETRY_ERROR_CODES, REDIRECT_CODES, ResponseError;
var init_fetch2 = __esm({
  "../network/fetch/lib/fetch.js"() {
    "use strict";
    init_lib6();
    import_retry = __toESM(require_retry(), 1);
    import_undici2 = __toESM(require_undici(), 1);
    NO_RETRY_ERROR_CODES = /* @__PURE__ */ new Set([
      "SELF_SIGNED_CERT_IN_CHAIN",
      "ERR_OSSL_PEM_NO_START_LINE"
    ]);
    REDIRECT_CODES = /* @__PURE__ */ new Set([301, 302, 303, 307, 308]);
    ResponseError = class _ResponseError extends Error {
      res;
      code;
      status;
      statusCode;
      url;
      constructor(res) {
        super(res.statusText);
        if (Error.captureStackTrace) {
          Error.captureStackTrace(this, _ResponseError);
        }
        this.name = this.constructor.name;
        this.res = res;
        this.code = this.status = this.statusCode = res.status;
        this.url = res.url;
      }
    };
  }
});

// ../network/fetch/lib/fetchFromRegistry.js
import { URL as URL4 } from "node:url";
function fetchWithDispatcher(url7, opts2) {
  const dispatcher = getDispatcher(url7.toString(), {
    ...opts2.dispatcherOptions,
    strictSsl: opts2.dispatcherOptions.strictSsl ?? true
  });
  return fetch(url7, {
    ...opts2,
    dispatcher
  });
}
function createDispatchedFetch(opts2) {
  const dispatcherOptions = {
    ...opts2,
    clientCertificates: opts2.clientCertificates ?? extractTlsConfigs(opts2.configByUri)
  };
  return (url7, fetchOpts) => fetchWithDispatcher(url7, { ...fetchOpts, dispatcherOptions });
}
function createFetchFromRegistry(defaultOpts) {
  const clientCertificates = extractTlsConfigs(defaultOpts.configByUri);
  return async (url7, opts2) => {
    const headers = {
      "user-agent": USER_AGENT,
      ...getHeaders({
        auth: opts2?.authHeaderValue,
        fullMetadata: opts2?.fullMetadata,
        userAgent: defaultOpts.userAgent
      })
    };
    if (opts2?.ifNoneMatch) {
      headers["if-none-match"] = opts2.ifNoneMatch;
    }
    if (opts2?.ifModifiedSince) {
      headers["if-modified-since"] = opts2.ifModifiedSince;
    }
    if (opts2?.headers) {
      const optsHeaders = opts2.headers instanceof Headers ? Object.fromEntries(opts2.headers.entries()) : Array.isArray(opts2.headers) ? Object.fromEntries(opts2.headers) : opts2.headers;
      Object.assign(headers, optsHeaders);
    }
    let redirects = 0;
    let urlObject = new URL4(url7);
    const originalHost = urlObject.host;
    while (true) {
      const dispatcherOptions = {
        ...defaultOpts,
        ...opts2,
        strictSsl: defaultOpts.strictSsl ?? true,
        clientCertificates
      };
      const response = await fetchWithDispatcher(urlObject, {
        dispatcherOptions,
        body: opts2?.body,
        // if verifying integrity, native fetch must not decompress
        headers,
        method: opts2?.method,
        redirect: "manual",
        retry: opts2?.retry,
        timeout: opts2?.timeout ?? 6e4
      });
      if (!isRedirect(response.status) || redirects >= MAX_FOLLOWED_REDIRECTS) {
        return response;
      }
      redirects++;
      urlObject = resolveRedirectUrl(response, urlObject);
      if (!headers["authorization"] || originalHost === urlObject.host)
        continue;
      delete headers.authorization;
    }
  };
}
function getHeaders(opts2) {
  const headers = {
    accept: opts2.fullMetadata === true ? ACCEPT_FULL_DOC : ACCEPT_ABBREVIATED_DOC
  };
  if (opts2.auth) {
    headers["authorization"] = opts2.auth;
  }
  if (opts2.userAgent) {
    headers["user-agent"] = opts2.userAgent;
  }
  return headers;
}
function extractTlsConfigs(configByUri) {
  if (!configByUri)
    return void 0;
  let result2;
  for (const [uri, config] of Object.entries(configByUri)) {
    if (config.tls) {
      result2 ??= {};
      result2[uri] = config.tls;
    }
  }
  return result2;
}
function resolveRedirectUrl(response, currentUrl) {
  const location = response.headers.get("location");
  if (!location) {
    throw new Error(`Redirect location header missing for ${currentUrl.toString()}`);
  }
  return new URL4(location, currentUrl);
}
var USER_AGENT, FULL_DOC, ACCEPT_FULL_DOC, ABBREVIATED_DOC, ACCEPT_ABBREVIATED_DOC, MAX_FOLLOWED_REDIRECTS;
var init_fetchFromRegistry = __esm({
  "../network/fetch/lib/fetchFromRegistry.js"() {
    "use strict";
    init_dispatcher();
    init_fetch2();
    USER_AGENT = "pnpm";
    FULL_DOC = "application/json";
    ACCEPT_FULL_DOC = `${FULL_DOC}; q=1.0, */*`;
    ABBREVIATED_DOC = "application/vnd.npm.install-v1+json";
    ACCEPT_ABBREVIATED_DOC = `${ABBREVIATED_DOC}; q=1.0, ${FULL_DOC}; q=0.8, */*`;
    MAX_FOLLOWED_REDIRECTS = 20;
  }
});

// ../network/fetch/lib/index.js
var init_lib49 = __esm({
  "../network/fetch/lib/index.js"() {
    "use strict";
    init_dispatcher();
    init_fetch2();
    init_fetchFromRegistry();
  }
});

// ../engine/runtime/bun-resolver/lib/index.js
async function resolveBunRuntime(ctx, wantedDependency, opts2) {
  if (wantedDependency.alias !== "bun" || !wantedDependency.bareSpecifier?.startsWith("runtime:"))
    return null;
  if (opts2?.currentPkg && !opts2.update) {
    return {
      id: opts2.currentPkg.id,
      resolution: opts2.currentPkg.resolution,
      resolvedVia: "github.com/oven-sh/bun"
    };
  }
  const versionSpec = wantedDependency.bareSpecifier.substring("runtime:".length);
  const npmResolution = await ctx.resolveFromNpm({ ...wantedDependency, bareSpecifier: versionSpec }, {});
  if (npmResolution == null) {
    throw new PnpmError("BUN_RESOLUTION_FAILURE", `Could not resolve Bun version specified as ${versionSpec}`);
  }
  const version2 = npmResolution.manifest.version;
  const assets = await readBunAssets(ctx.fetchFromRegistry, version2);
  assets.sort((asset1, asset2) => (0, import_util5.lexCompare)(asset1.resolution.url, asset2.resolution.url));
  return {
    id: `bun@runtime:${version2}`,
    normalizedBareSpecifier: `runtime:${versionSpec}`,
    resolvedVia: "github.com/oven-sh/bun",
    manifest: {
      name: "bun",
      version: version2,
      bin: getBunBinLocationForCurrentOS()
    },
    resolution: {
      type: "variations",
      variants: assets
    }
  };
}
async function resolveLatestBunRuntime(ctx, query, opts2) {
  const manifestSpec = query.wantedDependency.bareSpecifier;
  if (query.wantedDependency.alias !== "bun" || !manifestSpec?.startsWith("runtime:"))
    return void 0;
  const versionSpec = query.compatible ? manifestSpec.substring("runtime:".length) : "latest";
  try {
    const npmResolution = await ctx.resolveFromNpm({ alias: "bun", bareSpecifier: versionSpec }, query.compatible ? opts2 : { ...opts2, update: "latest" });
    if (npmResolution?.policyViolation?.code === MINIMUM_RELEASE_AGE_VIOLATION_CODE)
      return {};
    if (!npmResolution?.manifest)
      return {};
    return { latestManifest: { name: "bun", version: npmResolution.manifest.version } };
  } catch (err) {
    if (opts2.publishedBy && err.code === "ERR_PNPM_NO_MATCHING_VERSION") {
      return {};
    }
    throw err;
  }
}
async function readBunAssets(fetch2, version2) {
  const integritiesFileUrl = `https://github.com/oven-sh/bun/releases/download/bun-v${version2}/SHASUMS256.txt`;
  const shasumsFileItems = await fetchShasumsFile(fetch2, integritiesFileUrl);
  const pattern = /^bun-([^-.]+)-([^-.]+)(-musl)?\.zip$/;
  const assets = [];
  for (const { integrity, fileName } of shasumsFileItems) {
    const match = pattern.exec(fileName);
    if (!match)
      continue;
    let [, platform3, arch, musl] = match;
    if (platform3 === "windows") {
      platform3 = "win32";
    }
    if (arch === "aarch64") {
      arch = "arm64";
    }
    const url7 = `https://github.com/oven-sh/bun/releases/download/bun-v${version2}/${fileName}`;
    const resolution = {
      type: "binary",
      archive: "zip",
      bin: getBunBinLocationForCurrentOS(platform3),
      integrity,
      url: url7,
      prefix: fileName.replace(/\.zip$/, "")
    };
    const target2 = {
      os: platform3,
      cpu: arch
    };
    if (musl != null) {
      target2.libc = "musl";
    }
    assets.push({
      targets: [target2],
      resolution
    });
  }
  return assets;
}
function getBunBinLocationForCurrentOS(platform3 = process.platform) {
  return platform3 === "win32" ? "bun.exe" : "bun";
}
var import_util5;
var init_lib50 = __esm({
  "../engine/runtime/bun-resolver/lib/index.js"() {
    "use strict";
    init_lib33();
    init_lib2();
    init_lib24();
    import_util5 = __toESM(require_dist3(), 1);
  }
});

// ../engine/runtime/deno-resolver/lib/index.js
async function resolveDenoRuntime(ctx, wantedDependency, opts2) {
  if (wantedDependency.alias !== "deno" || !wantedDependency.bareSpecifier?.startsWith("runtime:"))
    return null;
  if (opts2?.currentPkg && !opts2.update) {
    return {
      id: opts2.currentPkg.id,
      resolution: opts2.currentPkg.resolution,
      resolvedVia: "github.com/denoland/deno"
    };
  }
  const versionSpec = wantedDependency.bareSpecifier.substring("runtime:".length);
  const npmResolution = await ctx.resolveFromNpm({ ...wantedDependency, bareSpecifier: versionSpec }, {});
  if (npmResolution == null) {
    throw new PnpmError("DENO_RESOLUTION_FAILURE", `Could not resolve Deno version specified as ${versionSpec}`);
  }
  const version2 = npmResolution.manifest.version;
  const res = await ctx.fetchFromRegistry(`https://api.github.com/repos/denoland/deno/releases/tags/v${version2}`);
  const data = await res.json();
  const assets = [];
  if (data.assets == null) {
    throw new PnpmError("DENO_MISSING_ASSETS", `No assets found for Deno v${version2}`);
  }
  await Promise.all(data.assets.map(async (asset) => {
    const targets = parseAssetName(asset.name);
    if (!targets)
      return;
    const sha256 = await fetchSha256(ctx.fetchFromRegistry, asset.browser_download_url);
    const base64 = Buffer.from(sha256, "hex").toString("base64");
    assets.push({
      targets,
      resolution: {
        type: "binary",
        url: asset.browser_download_url.replace(/\.sha256sum$/, ""),
        integrity: `sha256-${base64}`,
        bin: getDenoBinLocationForCurrentOS(targets[0].os),
        archive: "zip"
      }
    });
  }));
  assets.sort((asset1, asset2) => (0, import_util6.lexCompare)(asset1.resolution.url, asset2.resolution.url));
  return {
    id: `deno@runtime:${version2}`,
    normalizedBareSpecifier: `runtime:${versionSpec}`,
    resolvedVia: "github.com/denoland/deno",
    manifest: {
      name: "deno",
      version: version2,
      bin: getDenoBinLocationForCurrentOS()
    },
    resolution: {
      type: "variations",
      variants: assets
    }
  };
}
async function resolveLatestDenoRuntime(ctx, query, opts2) {
  const manifestSpec = query.wantedDependency.bareSpecifier;
  if (query.wantedDependency.alias !== "deno" || !manifestSpec?.startsWith("runtime:"))
    return void 0;
  const versionSpec = query.compatible ? manifestSpec.substring("runtime:".length) : "latest";
  try {
    const npmResolution = await ctx.resolveFromNpm({ alias: "deno", bareSpecifier: versionSpec }, query.compatible ? opts2 : { ...opts2, update: "latest" });
    if (npmResolution?.policyViolation?.code === MINIMUM_RELEASE_AGE_VIOLATION_CODE)
      return {};
    if (!npmResolution?.manifest)
      return {};
    return { latestManifest: { name: "deno", version: npmResolution.manifest.version } };
  } catch (err) {
    if (opts2.publishedBy && err.code === "ERR_PNPM_NO_MATCHING_VERSION") {
      return {};
    }
    throw err;
  }
}
function parseAssetName(name) {
  const m = ASSET_REGEX.exec(name);
  if (!m?.groups)
    return null;
  const os15 = OS_MAP[m.groups.os];
  const cpu = CPU_MAP[m.groups.cpu];
  const targets = [{ os: os15, cpu }];
  if (os15 === "win32" && cpu === "x64") {
    targets.push({ os: "win32", cpu: "arm64" });
  }
  return targets;
}
function getDenoBinLocationForCurrentOS(platform3 = process.platform) {
  return platform3 === "win32" ? "deno.exe" : "deno";
}
async function fetchSha256(fetch2, url7) {
  const response = await fetch2(url7);
  if (!response.ok) {
    throw new PnpmError("DENO_GITHUB_FAILURE", `Failed to GET sha256 at ${url7}`);
  }
  const txt = await response.text();
  const m = txt.match(/([a-f0-9]{64})/i);
  if (!m) {
    throw new PnpmError("DENO_PARSE_HASH", `No SHA256 in ${url7}`);
  }
  return m[1].toLowerCase();
}
var import_util6, ASSET_REGEX, OS_MAP, CPU_MAP;
var init_lib51 = __esm({
  "../engine/runtime/deno-resolver/lib/index.js"() {
    "use strict";
    init_lib2();
    init_lib24();
    import_util6 = __toESM(require_dist3(), 1);
    ASSET_REGEX = /^deno-(?<cpu>aarch64|x86_64)-(?<os>apple-darwin|unknown-linux-gnu|pc-windows-msvc)\.zip\.sha256sum$/;
    OS_MAP = {
      "apple-darwin": "darwin",
      "unknown-linux-gnu": "linux",
      "pc-windows-msvc": "win32"
    };
    CPU_MAP = {
      aarch64: "arm64",
      x86_64: "x64"
    };
  }
});

// ../hooks/types/lib/customResolverCache.js
function getCustomResolverCacheKey(wantedDependency) {
  const alias = wantedDependency.alias ?? "";
  const bareSpecifier = wantedDependency.bareSpecifier ?? "";
  return `${alias}@${bareSpecifier}`;
}
function getCachedCanResolve(customResolver, cacheKey) {
  return customResolverCanResolveCache.get(customResolver)?.get(cacheKey);
}
function setCachedCanResolve(customResolver, cacheKey, value) {
  let cache = customResolverCanResolveCache.get(customResolver);
  if (!cache) {
    cache = /* @__PURE__ */ new Map();
    customResolverCanResolveCache.set(customResolver, cache);
  }
  cache.set(cacheKey, value);
}
async function checkCustomResolverCanResolve(customResolver, wantedDependency) {
  if (!customResolver.canResolve)
    return false;
  const cacheKey = getCustomResolverCacheKey(wantedDependency);
  const cached = getCachedCanResolve(customResolver, cacheKey);
  if (cached !== void 0)
    return cached;
  const canResolve = await customResolver.canResolve(wantedDependency);
  setCachedCanResolve(customResolver, cacheKey, canResolve);
  return canResolve;
}
var customResolverCanResolveCache;
var init_customResolverCache = __esm({
  "../hooks/types/lib/customResolverCache.js"() {
    "use strict";
    customResolverCanResolveCache = /* @__PURE__ */ new WeakMap();
  }
});

// ../hooks/types/lib/index.js
var init_lib52 = __esm({
  "../hooks/types/lib/index.js"() {
    "use strict";
    init_customResolverCache();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/retry/0.13.1/da3887dc7922b11021a709669c43b300202cf471fcfdc381dd497790db4447da/node_modules/retry/lib/retry_operation.js
var require_retry_operation2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/retry/0.13.1/da3887dc7922b11021a709669c43b300202cf471fcfdc381dd497790db4447da/node_modules/retry/lib/retry_operation.js"(exports2, module2) {
    function RetryOperation(timeouts, options) {
      if (typeof options === "boolean") {
        options = { forever: options };
      }
      this._originalTimeouts = JSON.parse(JSON.stringify(timeouts));
      this._timeouts = timeouts;
      this._options = options || {};
      this._maxRetryTime = options && options.maxRetryTime || Infinity;
      this._fn = null;
      this._errors = [];
      this._attempts = 1;
      this._operationTimeout = null;
      this._operationTimeoutCb = null;
      this._timeout = null;
      this._operationStart = null;
      this._timer = null;
      if (this._options.forever) {
        this._cachedTimeouts = this._timeouts.slice(0);
      }
    }
    module2.exports = RetryOperation;
    RetryOperation.prototype.reset = function() {
      this._attempts = 1;
      this._timeouts = this._originalTimeouts.slice(0);
    };
    RetryOperation.prototype.stop = function() {
      if (this._timeout) {
        clearTimeout(this._timeout);
      }
      if (this._timer) {
        clearTimeout(this._timer);
      }
      this._timeouts = [];
      this._cachedTimeouts = null;
    };
    RetryOperation.prototype.retry = function(err) {
      if (this._timeout) {
        clearTimeout(this._timeout);
      }
      if (!err) {
        return false;
      }
      var currentTime = (/* @__PURE__ */ new Date()).getTime();
      if (err && currentTime - this._operationStart >= this._maxRetryTime) {
        this._errors.push(err);
        this._errors.unshift(new Error("RetryOperation timeout occurred"));
        return false;
      }
      this._errors.push(err);
      var timeout = this._timeouts.shift();
      if (timeout === void 0) {
        if (this._cachedTimeouts) {
          this._errors.splice(0, this._errors.length - 1);
          timeout = this._cachedTimeouts.slice(-1);
        } else {
          return false;
        }
      }
      var self2 = this;
      this._timer = setTimeout(function() {
        self2._attempts++;
        if (self2._operationTimeoutCb) {
          self2._timeout = setTimeout(function() {
            self2._operationTimeoutCb(self2._attempts);
          }, self2._operationTimeout);
          if (self2._options.unref) {
            self2._timeout.unref();
          }
        }
        self2._fn(self2._attempts);
      }, timeout);
      if (this._options.unref) {
        this._timer.unref();
      }
      return true;
    };
    RetryOperation.prototype.attempt = function(fn, timeoutOps) {
      this._fn = fn;
      if (timeoutOps) {
        if (timeoutOps.timeout) {
          this._operationTimeout = timeoutOps.timeout;
        }
        if (timeoutOps.cb) {
          this._operationTimeoutCb = timeoutOps.cb;
        }
      }
      var self2 = this;
      if (this._operationTimeoutCb) {
        this._timeout = setTimeout(function() {
          self2._operationTimeoutCb();
        }, self2._operationTimeout);
      }
      this._operationStart = (/* @__PURE__ */ new Date()).getTime();
      this._fn(this._attempts);
    };
    RetryOperation.prototype.try = function(fn) {
      console.log("Using RetryOperation.try() is deprecated");
      this.attempt(fn);
    };
    RetryOperation.prototype.start = function(fn) {
      console.log("Using RetryOperation.start() is deprecated");
      this.attempt(fn);
    };
    RetryOperation.prototype.start = RetryOperation.prototype.try;
    RetryOperation.prototype.errors = function() {
      return this._errors;
    };
    RetryOperation.prototype.attempts = function() {
      return this._attempts;
    };
    RetryOperation.prototype.mainError = function() {
      if (this._errors.length === 0) {
        return null;
      }
      var counts = {};
      var mainError = null;
      var mainErrorCount = 0;
      for (var i2 = 0; i2 < this._errors.length; i2++) {
        var error = this._errors[i2];
        var message = error.message;
        var count2 = (counts[message] || 0) + 1;
        counts[message] = count2;
        if (count2 >= mainErrorCount) {
          mainError = error;
          mainErrorCount = count2;
        }
      }
      return mainError;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/retry/0.13.1/da3887dc7922b11021a709669c43b300202cf471fcfdc381dd497790db4447da/node_modules/retry/lib/retry.js
var require_retry3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/retry/0.13.1/da3887dc7922b11021a709669c43b300202cf471fcfdc381dd497790db4447da/node_modules/retry/lib/retry.js"(exports2) {
    var RetryOperation = require_retry_operation2();
    exports2.operation = function(options) {
      var timeouts = exports2.timeouts(options);
      return new RetryOperation(timeouts, {
        forever: options && (options.forever || options.retries === Infinity),
        unref: options && options.unref,
        maxRetryTime: options && options.maxRetryTime
      });
    };
    exports2.timeouts = function(options) {
      if (options instanceof Array) {
        return [].concat(options);
      }
      var opts2 = {
        retries: 10,
        factor: 2,
        minTimeout: 1 * 1e3,
        maxTimeout: Infinity,
        randomize: false
      };
      for (var key in options) {
        opts2[key] = options[key];
      }
      if (opts2.minTimeout > opts2.maxTimeout) {
        throw new Error("minTimeout is greater than maxTimeout");
      }
      var timeouts = [];
      for (var i2 = 0; i2 < opts2.retries; i2++) {
        timeouts.push(this.createTimeout(i2, opts2));
      }
      if (options && options.forever && !timeouts.length) {
        timeouts.push(this.createTimeout(i2, opts2));
      }
      timeouts.sort(function(a2, b) {
        return a2 - b;
      });
      return timeouts;
    };
    exports2.createTimeout = function(attempt, opts2) {
      var random = opts2.randomize ? Math.random() + 1 : 1;
      var timeout = Math.round(random * Math.max(opts2.minTimeout, 1) * Math.pow(opts2.factor, attempt));
      timeout = Math.min(timeout, opts2.maxTimeout);
      return timeout;
    };
    exports2.wrap = function(obj, options, methods) {
      if (options instanceof Array) {
        methods = options;
        options = null;
      }
      if (!methods) {
        methods = [];
        for (var key in obj) {
          if (typeof obj[key] === "function") {
            methods.push(key);
          }
        }
      }
      for (var i2 = 0; i2 < methods.length; i2++) {
        var method = methods[i2];
        var original = obj[method];
        obj[method] = function retryWrapper(original2) {
          var op = exports2.operation(options);
          var args = Array.prototype.slice.call(arguments, 1);
          var callback2 = args.pop();
          args.push(function(err) {
            if (op.retry(err)) {
              return;
            }
            if (err) {
              arguments[0] = op.mainError();
            }
            callback2.apply(this, arguments);
          });
          op.attempt(function() {
            original2.apply(obj, args);
          });
        }.bind(obj, original);
        obj[method].options = options;
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/retry/0.13.1/da3887dc7922b11021a709669c43b300202cf471fcfdc381dd497790db4447da/node_modules/retry/index.js
var require_retry4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/retry/0.13.1/da3887dc7922b11021a709669c43b300202cf471fcfdc381dd497790db4447da/node_modules/retry/index.js"(exports2, module2) {
    module2.exports = require_retry3();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/graceful-git/5.0.0/f6f2f83b1f0ef700ac9ec8e32452f4993a699dc73f5045d91e9e926157d57359/node_modules/graceful-git/index.js
async function gracefulGit(args, opts2) {
  opts2 = opts2 || {};
  const operation5 = import_retry2.default.operation(Object.assign({}, RETRY_OPTIONS, opts2));
  return new Promise((resolve3, reject3) => {
    operation5.attempt((currentAttempt) => {
      noRetry(args, opts2).then(resolve3).catch((err) => {
        if (operation5.retry(err)) {
          return;
        }
        reject3(operation5.mainError());
      });
    });
  });
}
async function noRetry(args, opts2) {
  opts2 = opts2 || {};
  return safeExeca("git", args, { cwd: opts2.cwd || process.cwd() });
}
var import_retry2, RETRY_OPTIONS;
var init_graceful_git = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/graceful-git/5.0.0/f6f2f83b1f0ef700ac9ec8e32452f4993a699dc73f5045d91e9e926157d57359/node_modules/graceful-git/index.js"() {
    init_lib26();
    import_retry2 = __toESM(require_retry4(), 1);
    RETRY_OPTIONS = {
      retries: 3,
      minTimeout: 1 * 1e3,
      maxTimeout: 10 * 1e3,
      randomize: true
    };
  }
});

// ../resolving/git-resolver/lib/createGitHostedPkgId.js
function createGitHostedPkgId({ repo, commit, path: path218 }) {
  let id = `${repo.includes("://") ? "" : "https://"}${repo}#${commit}`;
  if (!id.startsWith("git+"))
    id = `git+${id}`;
  if (path218) {
    id += `&path:${path218}`;
  }
  return id;
}
var init_createGitHostedPkgId = __esm({
  "../resolving/git-resolver/lib/createGitHostedPkgId.js"() {
    "use strict";
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/hosted-git-info/1.0.0/4b9b762e32ce54cea9deca0b4b51774bbc48195c341f49aecfb0c0afd2863d10/node_modules/@pnpm/hosted-git-info/git-host-info.js
var require_git_host_info2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/hosted-git-info/1.0.0/4b9b762e32ce54cea9deca0b4b51774bbc48195c341f49aecfb0c0afd2863d10/node_modules/@pnpm/hosted-git-info/git-host-info.js"(exports2, module2) {
    "use strict";
    var maybeJoin = (...args) => args.every((arg) => arg) ? args.join("") : "";
    var maybeEncode = (arg) => arg ? encodeURIComponent(arg) : "";
    var defaults4 = {
      sshtemplate: ({ domain, user, project, committish }) => `git@${domain}:${user}/${project}.git${maybeJoin("#", committish)}`,
      sshurltemplate: ({ domain, user, project, committish }) => `git+ssh://git@${domain}/${user}/${project}.git${maybeJoin("#", committish)}`,
      browsetemplate: ({ domain, user, project, committish, treepath }) => `https://${domain}/${user}/${project}${maybeJoin("/", treepath, "/", maybeEncode(committish))}`,
      browsefiletemplate: ({ domain, user, project, committish, treepath, path: path218, fragment, hashformat }) => `https://${domain}/${user}/${project}/${treepath}/${maybeEncode(committish || "master")}/${path218}${maybeJoin("#", hashformat(fragment || ""))}`,
      docstemplate: ({ domain, user, project, treepath, committish }) => `https://${domain}/${user}/${project}${maybeJoin("/", treepath, "/", maybeEncode(committish))}#readme`,
      httpstemplate: ({ auth, domain, user, project, committish }) => `git+https://${maybeJoin(auth, "@")}${domain}/${user}/${project}.git${maybeJoin("#", committish)}`,
      filetemplate: ({ domain, user, project, committish, path: path218 }) => `https://${domain}/${user}/${project}/raw/${maybeEncode(committish) || "master"}/${path218}`,
      shortcuttemplate: ({ type: type4, user, project, committish }) => `${type4}:${user}/${project}${maybeJoin("#", committish)}`,
      pathtemplate: ({ user, project, committish }) => `${user}/${project}${maybeJoin("#", committish)}`,
      bugstemplate: ({ domain, user, project }) => `https://${domain}/${user}/${project}/issues`,
      hashformat: formatHashFragment
    };
    var gitHosts = {};
    gitHosts.github = Object.assign({}, defaults4, {
      // First two are insecure and generally shouldn't be used any more, but
      // they are still supported.
      protocols: ["git:", "http:", "git+ssh:", "git+https:", "ssh:", "https:"],
      domain: "github.com",
      treepath: "tree",
      filetemplate: ({ auth, user, project, committish, path: path218 }) => `https://${maybeJoin(auth, "@")}raw.githubusercontent.com/${user}/${project}/${maybeEncode(committish) || "master"}/${path218}`,
      gittemplate: ({ auth, domain, user, project, committish }) => `git://${maybeJoin(auth, "@")}${domain}/${user}/${project}.git${maybeJoin("#", committish)}`,
      tarballtemplate: ({ domain, user, project, committish }) => `https://codeload.${domain}/${user}/${project}/tar.gz/${maybeEncode(committish) || "master"}`,
      extract: (url7) => {
        let [, user, project, type4, committish] = url7.pathname.split("/", 5);
        if (type4 && type4 !== "tree") {
          return;
        }
        if (!type4) {
          committish = url7.hash.slice(1);
        }
        if (project && project.endsWith(".git")) {
          project = project.slice(0, -4);
        }
        if (!user || !project) {
          return;
        }
        return { user, project, committish };
      }
    });
    gitHosts.bitbucket = Object.assign({}, defaults4, {
      protocols: ["git+ssh:", "git+https:", "ssh:", "https:"],
      domain: "bitbucket.org",
      treepath: "src",
      tarballtemplate: ({ domain, user, project, committish }) => `https://${domain}/${user}/${project}/get/${maybeEncode(committish) || "master"}.tar.gz`,
      extract: (url7) => {
        let [, user, project, aux] = url7.pathname.split("/", 4);
        if (["get"].includes(aux)) {
          return;
        }
        if (project && project.endsWith(".git")) {
          project = project.slice(0, -4);
        }
        if (!user || !project) {
          return;
        }
        return { user, project, committish: url7.hash.slice(1) };
      }
    });
    gitHosts.gitlab = Object.assign({}, defaults4, {
      protocols: ["git+ssh:", "git+https:", "ssh:", "https:"],
      domain: "gitlab.com",
      treepath: "tree",
      httpstemplate: ({ auth, domain, user, project, committish }) => `git+https://${maybeJoin(auth, "@")}${domain}/${user}/${project}.git${maybeJoin("#", committish)}`,
      tarballtemplate: ({ domain, user, project, committish }) => `https://${domain}/api/v4/projects/${user}%2F${project}/repository/archive.tar.gz?sha=${maybeEncode(committish) || "master"}`,
      extract: (url7) => {
        const path218 = url7.pathname.slice(1);
        if (path218.includes("/-/") || path218.includes("/archive.tar.gz")) {
          return;
        }
        const segments = path218.split("/");
        let project = segments.pop();
        if (project.endsWith(".git")) {
          project = project.slice(0, -4);
        }
        const user = segments.join("/");
        if (!user || !project) {
          return;
        }
        return { user, project, committish: url7.hash.slice(1) };
      }
    });
    gitHosts.gist = Object.assign({}, defaults4, {
      protocols: ["git:", "git+ssh:", "git+https:", "ssh:", "https:"],
      domain: "gist.github.com",
      sshtemplate: ({ domain, project, committish }) => `git@${domain}:${project}.git${maybeJoin("#", committish)}`,
      sshurltemplate: ({ domain, project, committish }) => `git+ssh://git@${domain}/${project}.git${maybeJoin("#", committish)}`,
      browsetemplate: ({ domain, project, committish }) => `https://${domain}/${project}${maybeJoin("/", maybeEncode(committish))}`,
      browsefiletemplate: ({ domain, project, committish, path: path218, hashformat }) => `https://${domain}/${project}${maybeJoin("/", maybeEncode(committish))}${maybeJoin("#", hashformat(path218))}`,
      docstemplate: ({ domain, project, committish }) => `https://${domain}/${project}${maybeJoin("/", maybeEncode(committish))}`,
      httpstemplate: ({ domain, project, committish }) => `git+https://${domain}/${project}.git${maybeJoin("#", committish)}`,
      filetemplate: ({ user, project, committish, path: path218 }) => `https://gist.githubusercontent.com/${user}/${project}/raw${maybeJoin("/", maybeEncode(committish))}/${path218}`,
      shortcuttemplate: ({ type: type4, project, committish }) => `${type4}:${project}${maybeJoin("#", committish)}`,
      pathtemplate: ({ project, committish }) => `${project}${maybeJoin("#", committish)}`,
      bugstemplate: ({ domain, project }) => `https://${domain}/${project}`,
      gittemplate: ({ domain, project, committish }) => `git://${domain}/${project}.git${maybeJoin("#", committish)}`,
      tarballtemplate: ({ project, committish }) => `https://codeload.github.com/gist/${project}/tar.gz/${maybeEncode(committish) || "master"}`,
      extract: (url7) => {
        let [, user, project, aux] = url7.pathname.split("/", 4);
        if (aux === "raw") {
          return;
        }
        if (!project) {
          if (!user) {
            return;
          }
          project = user;
          user = null;
        }
        if (project.endsWith(".git")) {
          project = project.slice(0, -4);
        }
        return { user, project, committish: url7.hash.slice(1) };
      },
      hashformat: function(fragment) {
        return fragment && "file-" + formatHashFragment(fragment);
      }
    });
    var names = Object.keys(gitHosts);
    gitHosts.byShortcut = {};
    gitHosts.byDomain = {};
    for (const name of names) {
      gitHosts.byShortcut[`${name}:`] = name;
      gitHosts.byDomain[gitHosts[name].domain] = name;
    }
    function formatHashFragment(fragment) {
      return fragment.toLowerCase().replace(/^\W+|\/|\W+$/g, "").replace(/\W+/g, "-");
    }
    module2.exports = gitHosts;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/hosted-git-info/1.0.0/4b9b762e32ce54cea9deca0b4b51774bbc48195c341f49aecfb0c0afd2863d10/node_modules/@pnpm/hosted-git-info/git-host.js
var require_git_host2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/hosted-git-info/1.0.0/4b9b762e32ce54cea9deca0b4b51774bbc48195c341f49aecfb0c0afd2863d10/node_modules/@pnpm/hosted-git-info/git-host.js"(exports2, module2) {
    "use strict";
    var gitHosts = require_git_host_info2();
    var GitHost = class {
      constructor(type4, user, auth, project, committish, defaultRepresentation, opts2 = {}) {
        Object.assign(this, gitHosts[type4]);
        this.type = type4;
        this.user = user;
        this.auth = auth;
        this.project = project;
        this.committish = committish;
        this.default = defaultRepresentation;
        this.opts = opts2;
      }
      hash() {
        return this.committish ? `#${this.committish}` : "";
      }
      ssh(opts2) {
        return this._fill(this.sshtemplate, opts2);
      }
      _fill(template, opts2) {
        if (typeof template === "function") {
          const options = { ...this, ...this.opts, ...opts2 };
          if (!options.path) {
            options.path = "";
          }
          if (options.path.startsWith("/")) {
            options.path = options.path.slice(1);
          }
          if (options.noCommittish) {
            options.committish = null;
          }
          const result2 = template(options);
          return options.noGitPlus && result2.startsWith("git+") ? result2.slice(4) : result2;
        }
        return null;
      }
      sshurl(opts2) {
        return this._fill(this.sshurltemplate, opts2);
      }
      browse(path218, fragment, opts2) {
        if (typeof path218 !== "string") {
          return this._fill(this.browsetemplate, path218);
        }
        if (typeof fragment !== "string") {
          opts2 = fragment;
          fragment = null;
        }
        return this._fill(this.browsefiletemplate, { ...opts2, fragment, path: path218 });
      }
      docs(opts2) {
        return this._fill(this.docstemplate, opts2);
      }
      bugs(opts2) {
        return this._fill(this.bugstemplate, opts2);
      }
      https(opts2) {
        return this._fill(this.httpstemplate, opts2);
      }
      git(opts2) {
        return this._fill(this.gittemplate, opts2);
      }
      shortcut(opts2) {
        return this._fill(this.shortcuttemplate, opts2);
      }
      path(opts2) {
        return this._fill(this.pathtemplate, opts2);
      }
      tarball(opts2) {
        return this._fill(this.tarballtemplate, { ...opts2, noCommittish: false });
      }
      file(path218, opts2) {
        return this._fill(this.filetemplate, { ...opts2, path: path218 });
      }
      getDefaultRepresentation() {
        return this.default;
      }
      toString(opts2) {
        if (this.default && typeof this[this.default] === "function") {
          return this[this.default](opts2);
        }
        return this.sshurl(opts2);
      }
    };
    module2.exports = GitHost;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/hosted-git-info/1.0.0/4b9b762e32ce54cea9deca0b4b51774bbc48195c341f49aecfb0c0afd2863d10/node_modules/@pnpm/hosted-git-info/index.js
var require_hosted_git_info2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/hosted-git-info/1.0.0/4b9b762e32ce54cea9deca0b4b51774bbc48195c341f49aecfb0c0afd2863d10/node_modules/@pnpm/hosted-git-info/index.js"(exports2, module2) {
    "use strict";
    var url7 = __require("url");
    var gitHosts = require_git_host_info2();
    var GitHost = module2.exports = require_git_host2();
    var LRU = require_lru_cache();
    var cache = new LRU({ max: 1e3 });
    var protocolToRepresentationMap = {
      "git+ssh:": "sshurl",
      "git+https:": "https",
      "ssh:": "sshurl",
      "git:": "git"
    };
    function protocolToRepresentation(protocol) {
      return protocolToRepresentationMap[protocol] || protocol.slice(0, -1);
    }
    var authProtocols = {
      "git:": true,
      "https:": true,
      "git+https:": true,
      "http:": true,
      "git+http:": true
    };
    var knownProtocols = Object.keys(gitHosts.byShortcut).concat(["http:", "https:", "git:", "git+ssh:", "git+https:", "ssh:"]);
    module2.exports.fromUrl = function(giturl, opts2) {
      if (typeof giturl !== "string") {
        return;
      }
      const key = giturl + JSON.stringify(opts2 || {});
      if (!cache.has(key)) {
        cache.set(key, fromUrl(giturl, opts2));
      }
      return cache.get(key);
    };
    function fromUrl(giturl, opts2) {
      if (!giturl) {
        return;
      }
      const url8 = isGitHubShorthand(giturl) ? "github:" + giturl : correctProtocol(giturl);
      const parsed = parseGitUrl(url8);
      if (!parsed) {
        return parsed;
      }
      const gitHostShortcut = gitHosts.byShortcut[parsed.protocol];
      const gitHostDomain = gitHosts.byDomain[parsed.hostname.startsWith("www.") ? parsed.hostname.slice(4) : parsed.hostname];
      const gitHostName = gitHostShortcut || gitHostDomain;
      if (!gitHostName) {
        return;
      }
      const gitHostInfo = gitHosts[gitHostShortcut || gitHostDomain];
      let auth = null;
      if (authProtocols[parsed.protocol] && (parsed.username || parsed.password)) {
        auth = `${parsed.username}${parsed.password ? ":" + parsed.password : ""}`;
      }
      let committish = null;
      let user = null;
      let project = null;
      let defaultRepresentation = null;
      try {
        if (gitHostShortcut) {
          let pathname = parsed.pathname.startsWith("/") ? parsed.pathname.slice(1) : parsed.pathname;
          const firstAt = pathname.indexOf("@");
          if (firstAt > -1) {
            pathname = pathname.slice(firstAt + 1);
          }
          const lastSlash = pathname.lastIndexOf("/");
          if (lastSlash > -1) {
            user = decodeURIComponent(pathname.slice(0, lastSlash));
            if (!user) {
              user = null;
            }
            project = decodeURIComponent(pathname.slice(lastSlash + 1));
          } else {
            project = decodeURIComponent(pathname);
          }
          if (project.endsWith(".git")) {
            project = project.slice(0, -4);
          }
          if (parsed.hash) {
            committish = decodeURIComponent(parsed.hash.slice(1));
          }
          defaultRepresentation = "shortcut";
        } else {
          if (!gitHostInfo.protocols.includes(parsed.protocol)) {
            return;
          }
          const segments = gitHostInfo.extract(parsed);
          if (!segments) {
            return;
          }
          user = segments.user && decodeURIComponent(segments.user);
          project = decodeURIComponent(segments.project);
          committish = decodeURIComponent(segments.committish);
          defaultRepresentation = protocolToRepresentation(parsed.protocol);
        }
      } catch (err) {
        if (err instanceof URIError) {
          return;
        } else {
          throw err;
        }
      }
      return new GitHost(gitHostName, user, auth, project, committish, defaultRepresentation, opts2);
    }
    var correctProtocol = (arg) => {
      const firstColon = arg.indexOf(":");
      const proto2 = arg.slice(0, firstColon + 1);
      if (knownProtocols.includes(proto2)) {
        return arg;
      }
      const firstAt = arg.indexOf("@");
      if (firstAt > -1) {
        if (firstAt > firstColon) {
          return `git+ssh://${arg}`;
        } else {
          return arg;
        }
      }
      const doubleSlash = arg.indexOf("//");
      if (doubleSlash === firstColon + 1) {
        return arg;
      }
      return arg.slice(0, firstColon + 1) + "//" + arg.slice(firstColon + 1);
    };
    var isGitHubShorthand = (arg) => {
      const firstHash = arg.indexOf("#");
      const firstSlash = arg.indexOf("/");
      const secondSlash = arg.indexOf("/", firstSlash + 1);
      const firstColon = arg.indexOf(":");
      const firstSpace = /\s/.exec(arg);
      const firstAt = arg.indexOf("@");
      const spaceOnlyAfterHash = !firstSpace || firstHash > -1 && firstSpace.index > firstHash;
      const atOnlyAfterHash = firstAt === -1 || firstHash > -1 && firstAt > firstHash;
      const colonOnlyAfterHash = firstColon === -1 || firstHash > -1 && firstColon > firstHash;
      const secondSlashOnlyAfterHash = secondSlash === -1 || firstHash > -1 && secondSlash > firstHash;
      const hasSlash = firstSlash > 0;
      const doesNotEndWithSlash = firstHash > -1 ? arg[firstHash - 1] !== "/" : !arg.endsWith("/");
      const doesNotStartWithDot = !arg.startsWith(".");
      return spaceOnlyAfterHash && hasSlash && doesNotEndWithSlash && doesNotStartWithDot && atOnlyAfterHash && colonOnlyAfterHash && secondSlashOnlyAfterHash;
    };
    var correctUrl2 = (giturl) => {
      const firstAt = giturl.indexOf("@");
      const lastHash = giturl.lastIndexOf("#");
      let firstColon = giturl.indexOf(":");
      let lastColon = giturl.lastIndexOf(":", lastHash > -1 ? lastHash : Infinity);
      let corrected;
      if (lastColon > firstAt) {
        corrected = giturl.slice(0, lastColon) + "/" + giturl.slice(lastColon + 1);
        firstColon = corrected.indexOf(":");
        lastColon = corrected.lastIndexOf(":");
      }
      if (firstColon === -1 && giturl.indexOf("//") === -1) {
        corrected = `git+ssh://${corrected}`;
      }
      return corrected;
    };
    var parseGitUrl = (giturl) => {
      let result2;
      try {
        result2 = new url7.URL(giturl);
      } catch (err) {
      }
      if (result2) {
        return result2;
      }
      const correctedUrl = correctUrl2(giturl);
      try {
        result2 = new url7.URL(correctedUrl);
      } catch (err) {
      }
      return result2;
    };
  }
});

// ../resolving/git-resolver/lib/parseBareSpecifier.js
import urlLib, { URL as URL5 } from "node:url";
function parseBareSpecifier2(bareSpecifier, opts2) {
  const hosted = import_hosted_git_info.default.fromUrl(bareSpecifier);
  if (hosted != null) {
    return () => fromHostedGit(hosted, opts2);
  }
  const colonsPos = bareSpecifier.indexOf(":");
  if (colonsPos === -1)
    return null;
  const protocol = bareSpecifier.slice(0, colonsPos);
  const isGitUrl = gitProtocols.has(protocol.toLocaleLowerCase()) || (protocol === "http" || protocol === "https") && /\.git(?:#|$)/.test(bareSpecifier);
  if (protocol && isGitUrl) {
    const correctBareSpecifier = correctUrl(bareSpecifier);
    const url7 = new URL5(correctBareSpecifier);
    if (!url7?.protocol)
      return null;
    const hash2 = url7.hash?.length > 1 ? decodeURIComponent(url7.hash.slice(1)) : null;
    return async () => ({
      fetchSpec: urlToFetchSpec(url7),
      normalizedBareSpecifier: bareSpecifier,
      ...parseGitParams(hash2)
    });
  }
  return null;
}
function urlToFetchSpec(url7) {
  url7.hash = "";
  const fetchSpec = urlLib.format(url7);
  if (fetchSpec.startsWith("git+")) {
    return fetchSpec.slice(4);
  }
  return fetchSpec;
}
async function fromHostedGit(hosted, dispatcherOptions) {
  let fetchSpec = null;
  const gitHttpsUrl = hosted.https({ noCommittish: true, noGitPlus: true });
  if (gitHttpsUrl && await isRepoPublic(gitHttpsUrl, dispatcherOptions) && await accessRepository(gitHttpsUrl)) {
    fetchSpec = gitHttpsUrl;
  } else {
    const gitSshUrl = hosted.ssh({ noCommittish: true });
    if (gitSshUrl && await accessRepository(gitSshUrl)) {
      fetchSpec = gitSshUrl;
    }
  }
  if (!fetchSpec) {
    const httpsUrl = hosted.https({ noGitPlus: true, noCommittish: true });
    if (httpsUrl) {
      if ((hosted.auth || !await isRepoPublic(httpsUrl, dispatcherOptions)) && await accessRepository(httpsUrl)) {
        return {
          fetchSpec: httpsUrl,
          hosted: {
            ...hosted,
            _fill: hosted._fill,
            tarball: void 0
          },
          normalizedBareSpecifier: `git+${httpsUrl}`,
          ...parseGitParams(hosted.committish)
        };
      } else {
        try {
          const response = await fetchWithDispatcher(httpsUrl.replace(/\.git$/, ""), { method: "HEAD", redirect: "manual", retry: { retries: 0 }, dispatcherOptions });
          if (response.ok) {
            fetchSpec = httpsUrl;
          }
        } catch {
        }
      }
    }
  }
  if (!fetchSpec) {
    fetchSpec = hosted.sshurl({ noCommittish: true });
  }
  return {
    fetchSpec,
    hosted: {
      ...hosted,
      tarballtemplate: hosted.type === "gitlab" ? gitlabTarballTemplate : hosted.tarballtemplate,
      _fill: hosted._fill,
      tarball: hosted.tarball
    },
    normalizedBareSpecifier: hosted.shortcut(),
    ...parseGitParams(hosted.committish)
  };
}
function gitlabTarballTemplate({ domain, user, project, committish }) {
  const ref = committish ? encodeURIComponent(committish) : "HEAD";
  return `https://${domain}/${user}/${project}/-/archive/${ref}/${project}-${ref}.tar.gz`;
}
async function isRepoPublic(httpsUrl, dispatcherOptions) {
  try {
    const response = await fetchWithDispatcher(httpsUrl.replace(/\.git$/, ""), { method: "HEAD", redirect: "manual", retry: { retries: 0 }, dispatcherOptions });
    return response.ok;
  } catch {
    return false;
  }
}
async function accessRepository(repository) {
  try {
    await gracefulGit(["ls-remote", "--exit-code", repository, "HEAD"], { retries: 0 });
    return true;
  } catch {
    return false;
  }
}
function parseGitParams(committish) {
  const result2 = { gitCommittish: null };
  if (!committish) {
    return result2;
  }
  const params = committish.split("&");
  for (const param of params) {
    if (param.length >= 7 && param.slice(0, 7) === "semver:") {
      result2.gitRange = param.slice(7);
    } else if (param.slice(0, 5) === "path:") {
      result2.path = param.slice(5);
    } else {
      result2.gitCommittish = param;
    }
  }
  return result2;
}
function correctUrl(gitUrl) {
  let _gitUrl = gitUrl.replace(/^git\+/, "");
  if (_gitUrl.startsWith("ssh://")) {
    const hashIndex = _gitUrl.indexOf("#");
    let hash2 = "";
    if (hashIndex !== -1) {
      hash2 = _gitUrl.slice(hashIndex);
      _gitUrl = _gitUrl.slice(0, hashIndex);
    }
    const [auth, ...pathname] = _gitUrl.slice(6).split("/");
    const [, host] = auth.split("@");
    if (host.includes(":") && !/:\d+$/.test(host)) {
      const authArr = auth.split(":");
      const protocol = gitUrl.split("://")[0];
      gitUrl = `${protocol}://${authArr.slice(0, -1).join(":") + "/" + authArr[authArr.length - 1]}${pathname.length ? "/" + pathname.join("/") : ""}${hash2}`;
    }
  }
  return gitUrl;
}
var import_hosted_git_info, gitProtocols;
var init_parseBareSpecifier2 = __esm({
  "../resolving/git-resolver/lib/parseBareSpecifier.js"() {
    "use strict";
    init_lib49();
    init_graceful_git();
    import_hosted_git_info = __toESM(require_hosted_git_info2(), 1);
    gitProtocols = /* @__PURE__ */ new Set([
      "git",
      "git+http",
      "git+https",
      "git+rsync",
      "git+ftp",
      "git+file",
      "git+ssh",
      "ssh"
    ]);
  }
});

// ../resolving/git-resolver/lib/index.js
function createGitResolver(opts2) {
  return async function resolveGit(wantedDependency, resolveOpts) {
    const parsedSpecFunc = parseBareSpecifier2(wantedDependency.bareSpecifier, opts2);
    if (parsedSpecFunc == null)
      return null;
    if (resolveOpts?.currentPkg && !resolveOpts.update) {
      const currentResolution = resolveOpts.currentPkg.resolution;
      if ("type" in currentResolution && currentResolution.type === "git") {
        return {
          id: resolveOpts.currentPkg.id,
          resolution: currentResolution,
          resolvedVia: "git-repository"
        };
      }
      if ("tarball" in currentResolution && currentResolution.tarball) {
        return {
          id: resolveOpts.currentPkg.id,
          resolution: currentResolution,
          resolvedVia: "git-repository"
        };
      }
    }
    const parsedSpec = await parsedSpecFunc();
    const bareSpecifier = parsedSpec.gitCommittish == null || parsedSpec.gitCommittish === "" ? "HEAD" : parsedSpec.gitCommittish;
    const commit = await resolveRef(parsedSpec.fetchSpec, bareSpecifier, parsedSpec.gitRange);
    let resolution;
    if (parsedSpec.hosted != null && !isSsh(parsedSpec.fetchSpec)) {
      const hosted = parsedSpec.hosted;
      hosted.committish = commit;
      const tarball = hosted.tarball?.();
      if (tarball) {
        resolution = { tarball, gitHosted: true };
      }
    }
    if (resolution == null) {
      resolution = {
        commit,
        repo: parsedSpec.fetchSpec,
        type: "git"
      };
    }
    if (parsedSpec.path) {
      resolution.path = parsedSpec.path;
    }
    let id;
    if ("tarball" in resolution) {
      id = resolution.tarball;
      if (resolution.path) {
        id = `${id}#path:${resolution.path}`;
      }
    } else {
      id = createGitHostedPkgId(resolution);
    }
    return {
      id,
      normalizedBareSpecifier: parsedSpec.normalizedBareSpecifier,
      resolution,
      resolvedVia: "git-repository"
    };
  };
}
async function resolveLatestFromGit(query) {
  const bareSpecifier = query.wantedDependency.bareSpecifier;
  if (!bareSpecifier)
    return void 0;
  const parsedSpecFunc = parseBareSpecifier2(bareSpecifier, {});
  if (parsedSpecFunc == null)
    return void 0;
  return {};
}
function resolveVTags(vTags, range) {
  return import_semver17.default.maxSatisfying(vTags, range, true);
}
async function getRepoRefs(repo, ref) {
  const gitArgs = [repo];
  if (ref) {
    gitArgs.push(ref);
    gitArgs.push(`${ref}^{}`);
  }
  const result2 = await gracefulGit(["ls-remote", ...gitArgs], { retries: 1 });
  const refs = {};
  for (const line of result2.stdout.split("\n")) {
    const [commit, refName] = line.split("	");
    refs[refName] = commit;
  }
  return refs;
}
async function resolveRef(repo, ref, range) {
  const committish = ref.match(/^[0-9a-f]{7,40}$/) !== null;
  if (committish && ref.length === 40) {
    return ref;
  }
  const refs = await getRepoRefs(repo, range ?? committish ? null : ref);
  const result2 = resolveRefFromRefs(refs, repo, ref, committish, range);
  if (committish && !result2.startsWith(ref)) {
    throw new PnpmError("GIT_AMBIGUOUS_REF", `resolved commit ${result2} from commit-ish reference ${ref}`);
  }
  return result2;
}
function resolveRefFromRefs(refs, repo, ref, committish, range) {
  if (!range) {
    let commitId = refs[ref] || refs[`refs/${ref}`] || refs[`refs/tags/${ref}^{}`] || // prefer annotated tags
    refs[`refs/tags/${ref}`] || refs[`refs/heads/${ref}`];
    if (!commitId) {
      const commits = committish ? [...new Set(Object.values(refs).filter((value) => value.startsWith(ref)))] : [];
      if (commits.length === 1) {
        commitId = commits[0];
      } else {
        throw new Error(`Could not resolve ${ref} to a commit of ${repo}.`);
      }
    }
    return commitId;
  } else {
    const vTags = [...new Set(Object.keys(refs).filter((key) => /^refs\/tags\/v?\d+\.\d+\.\d+(?:[-+].+)?(?:\^\{\})?$/.test(key)).map((key) => {
      return key.replace(/^refs\/tags\//, "").replace(/\^\{\}$/, "");
    }).filter((key) => import_semver17.default.valid(key, true)))];
    const refVTag = resolveVTags(vTags, range);
    const commitId = refVTag && (refs[`refs/tags/${refVTag}^{}`] || // prefer annotated tags
    refs[`refs/tags/${refVTag}`]);
    if (!commitId) {
      throw new Error(`Could not resolve ${range} to a commit of ${repo}. Available versions are: ${vTags.join(", ")}`);
    }
    return commitId;
  }
}
function isSsh(gitSpec) {
  return gitSpec.slice(0, 10) === "git+ssh://" || gitSpec.slice(0, 4) === "git@";
}
var import_semver17;
var init_lib53 = __esm({
  "../resolving/git-resolver/lib/index.js"() {
    "use strict";
    init_lib2();
    init_graceful_git();
    import_semver17 = __toESM(require_semver2(), 1);
    init_createGitHostedPkgId();
    init_parseBareSpecifier2();
  }
});

// ../resolving/local-resolver/lib/parseBareSpecifier.js
import os3 from "node:os";
import path46 from "node:path";
function parseLocalScheme(wd, projectDir, lockfileDir, opts2) {
  if (wd.bareSpecifier.startsWith("link:") || wd.bareSpecifier.startsWith("workspace:")) {
    return fromLocal(wd, projectDir, lockfileDir, "directory", opts2);
  }
  if (wd.bareSpecifier.startsWith("file:")) {
    const type4 = isFilename.test(wd.bareSpecifier) ? "file" : "directory";
    return fromLocal(wd, projectDir, lockfileDir, type4, opts2);
  }
  if (wd.bareSpecifier.startsWith("path:")) {
    throw new PathIsUnsupportedProtocolError(wd.bareSpecifier, "path:");
  }
  return null;
}
function parseLocalPath(wd, projectDir, lockfileDir, opts2) {
  if (wd.bareSpecifier.endsWith(".tgz") || wd.bareSpecifier.endsWith(".tar.gz") || wd.bareSpecifier.endsWith(".tar") || wd.bareSpecifier.includes(path46.sep) || isFilespec.test(wd.bareSpecifier)) {
    const type4 = isFilename.test(wd.bareSpecifier) ? "file" : "directory";
    return fromLocal(wd, projectDir, lockfileDir, type4, opts2);
  }
  return null;
}
function fromLocal({ bareSpecifier, injected }, projectDir, lockfileDir, type4, opts2) {
  const spec = bareSpecifier.replace(/\\/g, "/").replace(/^(?:file|link|workspace):\/*([A-Z]:)/i, "$1").replace(/^(?:file|link|workspace):(?:\/*([~./]))?/, "$1");
  let protocol;
  if (bareSpecifier.startsWith("file:")) {
    protocol = "file:";
  } else if (bareSpecifier.startsWith("link:")) {
    protocol = "link:";
  } else {
    protocol = type4 === "directory" && !injected ? "link:" : "file:";
  }
  let fetchSpec;
  let normalizedBareSpecifier;
  if (/^~\//.test(spec)) {
    fetchSpec = resolvePath2(os3.homedir(), spec.slice(2));
    normalizedBareSpecifier = `${protocol}${spec}`;
  } else {
    fetchSpec = resolvePath2(projectDir, spec);
    if (isAbsolute2(spec)) {
      normalizedBareSpecifier = `${protocol}${spec}`;
    } else {
      normalizedBareSpecifier = `${protocol}${path46.relative(projectDir, fetchSpec)}`;
    }
  }
  function normalizeRelativeOrAbsolute(relativeTo, fromPath) {
    let specPath;
    if (opts2.preserveAbsolutePaths && isAbsolute2(spec)) {
      specPath = path46.resolve(fromPath);
    } else {
      specPath = path46.relative(relativeTo, fromPath);
    }
    return (0, import_normalize_path3.default)(specPath);
  }
  injected = protocol === "file:";
  const dependencyPath = injected ? normalizeRelativeOrAbsolute(lockfileDir, fetchSpec) : (0, import_normalize_path3.default)(path46.resolve(fetchSpec));
  const id = !injected && (type4 === "directory" || projectDir === lockfileDir) ? `${protocol}${normalizeRelativeOrAbsolute(projectDir, fetchSpec)}` : `${protocol}${normalizeRelativeOrAbsolute(lockfileDir, fetchSpec)}`;
  return {
    dependencyPath,
    fetchSpec,
    id,
    normalizedBareSpecifier,
    type: type4
  };
}
function resolvePath2(where, spec) {
  if (isAbsolutePath2.test(spec))
    return spec;
  return path46.resolve(where, spec);
}
function isAbsolute2(dir) {
  if (dir[0] === "/")
    return true;
  if (/^[A-Z]:/i.test(dir))
    return true;
  return false;
}
var import_normalize_path3, isWindows7, isFilespec, isFilename, isAbsolutePath2, PathIsUnsupportedProtocolError;
var init_parseBareSpecifier3 = __esm({
  "../resolving/local-resolver/lib/parseBareSpecifier.js"() {
    "use strict";
    init_lib2();
    import_normalize_path3 = __toESM(require_normalize_path(), 1);
    isWindows7 = process.platform === "win32" || global["FAKE_WINDOWS"];
    isFilespec = isWindows7 ? /^(?:[./\\]|~\/|[a-z]:)/i : /^(?:[./]|~\/|[a-z]:)/i;
    isFilename = /\.(?:tgz|tar.gz|tar)$/i;
    isAbsolutePath2 = /^\/|^[A-Z]:/i;
    PathIsUnsupportedProtocolError = class extends PnpmError {
      bareSpecifier;
      protocol;
      constructor(bareSpecifier, protocol) {
        super("PATH_IS_UNSUPPORTED_PROTOCOL", "Local dependencies via `path:` protocol are not supported. Use the `link:` protocol for folder dependencies and `file:` for local tarballs");
        this.bareSpecifier = bareSpecifier;
        this.protocol = protocol;
      }
    };
  }
});

// ../resolving/local-resolver/lib/index.js
import { existsSync as existsSync3 } from "node:fs";
import path47 from "node:path";
async function resolveFromLocalScheme(ctx, wantedDependency, opts2) {
  const spec = parseLocalScheme(wantedDependency, opts2.projectDir, opts2.lockfileDir ?? opts2.projectDir, {
    preserveAbsolutePaths: ctx.preserveAbsolutePaths ?? false
  });
  return resolveSpec(spec, opts2);
}
async function resolveFromLocalPath(ctx, wantedDependency, opts2) {
  const spec = parseLocalPath(wantedDependency, opts2.projectDir, opts2.lockfileDir ?? opts2.projectDir, {
    preserveAbsolutePaths: ctx.preserveAbsolutePaths ?? false
  });
  return resolveSpec(spec, opts2);
}
async function resolveLatestFromLocal(query) {
  const spec = query.wantedDependency.bareSpecifier;
  if (spec?.startsWith("link:") || spec?.startsWith("file:") || spec?.startsWith("workspace:")) {
    return {};
  }
  return void 0;
}
async function resolveSpec(spec, opts2) {
  if (spec == null)
    return null;
  if (spec.type === "file") {
    const integrity = await getTarballIntegrity(spec.fetchSpec);
    return {
      id: spec.id,
      normalizedBareSpecifier: spec.normalizedBareSpecifier,
      resolution: {
        integrity,
        tarball: spec.id
      },
      resolvedVia: "local-filesystem"
    };
  }
  if (opts2.currentPkg?.resolution && spec.type === "directory" && !opts2.update) {
    return {
      id: opts2.currentPkg.id,
      resolution: opts2.currentPkg.resolution,
      resolvedVia: "local-filesystem"
    };
  }
  let localDependencyManifest;
  try {
    localDependencyManifest = await readProjectManifestOnly(spec.fetchSpec);
  } catch (internalErr) {
    if (!existsSync3(spec.fetchSpec)) {
      if (spec.id.startsWith("file:")) {
        throw new PnpmError("LINKED_PKG_DIR_NOT_FOUND", `Could not install from "${spec.fetchSpec}" as it does not exist.`);
      }
      logger.warn({
        message: `Installing a dependency from a non-existent directory: ${spec.fetchSpec}`,
        prefix: opts2.projectDir
      });
      localDependencyManifest = {
        name: path47.basename(spec.fetchSpec),
        version: "0.0.0"
      };
    } else {
      switch (internalErr.code) {
        case "ENOTDIR": {
          throw new PnpmError("NOT_PACKAGE_DIRECTORY", `Could not install from "${spec.fetchSpec}" as it is not a directory.`);
        }
        case "ERR_PNPM_NO_IMPORTER_MANIFEST_FOUND":
        case "ENOENT": {
          localDependencyManifest = {
            name: path47.basename(spec.fetchSpec),
            version: "0.0.0"
          };
          break;
        }
        default: {
          throw internalErr;
        }
      }
    }
  }
  return {
    id: spec.id,
    manifest: localDependencyManifest,
    normalizedBareSpecifier: spec.normalizedBareSpecifier,
    resolution: {
      directory: spec.dependencyPath,
      type: "directory"
    },
    resolvedVia: "local-filesystem"
  };
}
var init_lib54 = __esm({
  "../resolving/local-resolver/lib/index.js"() {
    "use strict";
    init_lib20();
    init_lib2();
    init_lib3();
    init_lib13();
    init_parseBareSpecifier3();
  }
});

// ../resolving/tarball-resolver/lib/index.js
async function resolveFromTarball(fetchFromRegistry, wantedDependency) {
  if (!wantedDependency.bareSpecifier.startsWith("http:") && !wantedDependency.bareSpecifier.startsWith("https:")) {
    return null;
  }
  const normalizedBareSpecifier = new URL(wantedDependency.bareSpecifier).toString();
  let resolvedUrl;
  const response = await fetchFromRegistry(normalizedBareSpecifier, { method: "HEAD" });
  if (response?.headers?.get("cache-control")?.includes("immutable")) {
    resolvedUrl = response.url;
  } else {
    resolvedUrl = normalizedBareSpecifier;
  }
  return {
    id: normalizedBareSpecifier,
    normalizedBareSpecifier,
    resolution: {
      tarball: resolvedUrl
    },
    resolvedVia: "url"
  };
}
async function resolveLatestFromTarball(query) {
  const bareSpecifier = query.wantedDependency.bareSpecifier;
  if (!bareSpecifier?.startsWith("http:") && !bareSpecifier?.startsWith("https:"))
    return void 0;
  return {};
}
var init_lib55 = __esm({
  "../resolving/tarball-resolver/lib/index.js"() {
    "use strict";
  }
});

// ../resolving/default-resolver/lib/index.js
async function resolveFromCustomResolvers(customResolvers, wantedDependency, opts2) {
  if (!customResolvers || customResolvers.length === 0) {
    return null;
  }
  for (const customResolver of customResolvers) {
    if (!customResolver.canResolve || !customResolver.resolve)
      continue;
    const canResolve = await checkCustomResolverCanResolve(customResolver, wantedDependency);
    if (canResolve) {
      const result2 = await customResolver.resolve(wantedDependency, {
        lockfileDir: opts2.lockfileDir,
        projectDir: opts2.projectDir,
        preferredVersions: opts2.preferredVersions ?? {},
        currentPkg: opts2.currentPkg
      });
      return {
        ...result2,
        resolvedVia: "custom-resolver"
      };
    }
  }
  return null;
}
function createResolver(fetchFromRegistry, getAuthHeader, pnpmOpts) {
  const { resolveFromNpm, resolveFromJsr, resolveFromNamedRegistry: resolveFromNamedRegistry2, resolveLatestFromNpm, resolveLatestFromJsr, resolveLatestFromNamedRegistry, clearCache } = createNpmResolver(fetchFromRegistry, getAuthHeader, pnpmOpts);
  const resolveFromGit = createGitResolver(pnpmOpts);
  const localCtx = { preserveAbsolutePaths: pnpmOpts.preserveAbsolutePaths };
  const _resolveFromLocalScheme = resolveFromLocalScheme.bind(null, localCtx);
  const _resolveFromLocalPath = resolveFromLocalPath.bind(null, localCtx);
  const _resolveNodeRuntime = resolveNodeRuntime.bind(null, { fetchFromRegistry, offline: pnpmOpts.offline, nodeDownloadMirrors: pnpmOpts.nodeDownloadMirrors });
  const _resolveDenoRuntime = resolveDenoRuntime.bind(null, { fetchFromRegistry, offline: pnpmOpts.offline, resolveFromNpm });
  const _resolveBunRuntime = resolveBunRuntime.bind(null, { fetchFromRegistry, offline: pnpmOpts.offline, resolveFromNpm });
  const _resolveLatestNodeRuntime = resolveLatestNodeRuntime.bind(null, { fetchFromRegistry, nodeDownloadMirrors: pnpmOpts.nodeDownloadMirrors });
  const _resolveLatestDenoRuntime = resolveLatestDenoRuntime.bind(null, { resolveFromNpm });
  const _resolveLatestBunRuntime = resolveLatestBunRuntime.bind(null, { resolveFromNpm });
  const _resolveFromCustomResolvers = pnpmOpts.customResolvers ? resolveFromCustomResolvers.bind(null, pnpmOpts.customResolvers) : null;
  return {
    resolve: async (wantedDependency, opts2) => {
      const resolution = await _resolveFromCustomResolvers?.(wantedDependency, opts2) ?? await resolveFromNpm(wantedDependency, opts2) ?? await resolveFromJsr(wantedDependency, opts2) ?? (wantedDependency.bareSpecifier && (await resolveFromGit(wantedDependency, opts2) ?? await resolveFromTarball(fetchFromRegistry, wantedDependency) ?? await _resolveFromLocalScheme(wantedDependency, opts2))) ?? await _resolveNodeRuntime(wantedDependency, opts2) ?? await _resolveDenoRuntime(wantedDependency, opts2) ?? await _resolveBunRuntime(wantedDependency, opts2) ?? // Named-registry runs between the explicit local schemes above and the
      // path-shape match below, so `<alias>:@scope/pkg` reaches the configured
      // registry while a colliding `file:`/`link:`/`workspace:` alias cannot
      // hijack the built-in protocols.
      await resolveFromNamedRegistry2(wantedDependency, opts2) ?? (wantedDependency.bareSpecifier ? await _resolveFromLocalPath(wantedDependency, opts2) : null);
      if (!resolution) {
        let specifier = `${wantedDependency.alias ? wantedDependency.alias + "@" : ""}${wantedDependency.bareSpecifier ?? ""}`;
        if (specifier !== "") {
          specifier = `"${specifier}"`;
        }
        throw new PnpmError("SPEC_NOT_SUPPORTED_BY_ANY_RESOLVER", `${specifier} isn't supported by any available resolver.`);
      }
      return resolution;
    },
    resolveLatest: async (query, opts2) => {
      const info = await resolveLatestFromNpm(query, opts2) ?? await resolveLatestFromJsr(query, opts2) ?? await resolveLatestFromGit(query) ?? await resolveLatestFromTarball(query) ?? await resolveLatestFromLocal(query) ?? await _resolveLatestNodeRuntime(query, opts2) ?? await _resolveLatestDenoRuntime(query, opts2) ?? await _resolveLatestBunRuntime(query, opts2) ?? await resolveLatestFromNamedRegistry(query, opts2);
      return info;
    },
    clearCache
  };
}
function createResolutionVerifiers(fetchFromRegistry, opts2) {
  const fetchOpts = {
    fetch: fetchFromRegistry,
    retry: opts2.retry ?? {},
    timeout: opts2.timeout ?? 6e4,
    fetchWarnTimeoutMs: opts2.fetchWarnTimeoutMs ?? 1e4
  };
  const getAuthHeaderValueByURI = createGetAuthHeaderByURI(opts2.configByUri ?? {}, opts2.registries.default);
  const verifiers = [];
  const npmVerifier = createNpmResolutionVerifier({
    minimumReleaseAge: opts2.minimumReleaseAge,
    minimumReleaseAgeStrict: opts2.minimumReleaseAgeStrict,
    minimumReleaseAgeExclude: opts2.minimumReleaseAgeExclude,
    ignoreMissingTimeField: opts2.ignoreMissingTimeField,
    trustPolicy: opts2.trustPolicy,
    trustPolicyExclude: opts2.trustPolicyExclude,
    trustPolicyIgnoreAfter: opts2.trustPolicyIgnoreAfter,
    registries: opts2.registries,
    namedRegistries: opts2.namedRegistries,
    fetchOpts,
    getAuthHeaderValueByURI,
    cacheDir: opts2.cacheDir,
    metaCache: opts2.metaCache,
    now: opts2.now
  });
  if (npmVerifier)
    verifiers.push(npmVerifier);
  return verifiers;
}
var init_lib56 = __esm({
  "../resolving/default-resolver/lib/index.js"() {
    "use strict";
    init_lib50();
    init_lib51();
    init_lib34();
    init_lib2();
    init_lib52();
    init_lib48();
    init_lib53();
    init_lib54();
    init_lib24();
    init_lib55();
  }
});

// ../installing/client/lib/index.js
function createClient(opts2) {
  const fetchFromRegistry = createFetchFromRegistry(opts2);
  const getAuthHeader = createGetAuthHeaderByURI(opts2.configByUri, opts2.registries?.default);
  const metaCache = createDefaultPackageMetaCache();
  const { resolve: resolve3, clearCache: clearResolutionCache } = createResolver(fetchFromRegistry, getAuthHeader, { ...opts2, metaCache, customResolvers: opts2.customResolvers });
  return {
    fetchers: createFetchers(fetchFromRegistry, getAuthHeader, opts2),
    resolve: resolve3,
    clearResolutionCache,
    resolutionVerifiers: createResolutionVerifiers(fetchFromRegistry, { ...opts2, metaCache })
  };
}
function createResolver2(opts2) {
  const fetchFromRegistry = createFetchFromRegistry(opts2);
  const getAuthHeader = createGetAuthHeaderByURI(opts2.configByUri, opts2.registries?.default);
  return createResolver(fetchFromRegistry, getAuthHeader, { ...opts2, customResolvers: opts2.customResolvers });
}
function makeResolutionStrict(resolve3) {
  return (async (wantedDependency, opts2) => {
    const result2 = await resolve3(wantedDependency, opts2);
    if (result2?.policyViolation) {
      throw policyViolationToError(result2.policyViolation);
    }
    return result2;
  });
}
function policyViolationToError(violation) {
  const message = `${violation.name}@${violation.version} ${violation.reason}`;
  const errorCode = violation.code === MINIMUM_RELEASE_AGE_VIOLATION_CODE ? "NO_MATURE_MATCHING_VERSION" : violation.code;
  return new PnpmError(errorCode, message);
}
function createFetchers(fetchFromRegistry, getAuthHeader, opts2) {
  const tarballFetchers = createTarballFetcher(fetchFromRegistry, getAuthHeader, opts2);
  return {
    ...tarballFetchers,
    ...createGitFetcher(opts2),
    ...createDirectoryFetcher({ resolveSymlinks: opts2.resolveSymlinksInInjectedDirs, includeOnlyPackageFiles: opts2.includeOnlyPackageFiles }),
    ...createBinaryFetcher({
      fetch: fetchFromRegistry,
      fetchFromRemoteTarball: tarballFetchers.remoteTarball,
      offline: opts2.offline,
      storeIndex: opts2.storeIndex,
      archiveFilters: { node: NODE_EXTRAS_IGNORE_PATTERN }
    })
  };
}
var init_lib57 = __esm({
  "../installing/client/lib/index.js"() {
    "use strict";
    init_lib34();
    init_lib2();
    init_lib35();
    init_lib38();
    init_lib46();
    init_lib47();
    init_lib48();
    init_lib49();
    init_lib56();
    init_lib24();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/imurmurhash/0.1.4/2f82bfc2313c21ec7e7d0ea2caff82f687c1db8ccf14306261d1d9e7afe19b75/node_modules/imurmurhash/imurmurhash.js
var require_imurmurhash = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/imurmurhash/0.1.4/2f82bfc2313c21ec7e7d0ea2caff82f687c1db8ccf14306261d1d9e7afe19b75/node_modules/imurmurhash/imurmurhash.js"(exports2, module2) {
    (function() {
      var cache;
      function MurmurHash3(key, seed) {
        var m = this instanceof MurmurHash3 ? this : cache;
        m.reset(seed);
        if (typeof key === "string" && key.length > 0) {
          m.hash(key);
        }
        if (m !== this) {
          return m;
        }
      }
      ;
      MurmurHash3.prototype.hash = function(key) {
        var h1, k1, i2, top, len;
        len = key.length;
        this.len += len;
        k1 = this.k1;
        i2 = 0;
        switch (this.rem) {
          case 0:
            k1 ^= len > i2 ? key.charCodeAt(i2++) & 65535 : 0;
          case 1:
            k1 ^= len > i2 ? (key.charCodeAt(i2++) & 65535) << 8 : 0;
          case 2:
            k1 ^= len > i2 ? (key.charCodeAt(i2++) & 65535) << 16 : 0;
          case 3:
            k1 ^= len > i2 ? (key.charCodeAt(i2) & 255) << 24 : 0;
            k1 ^= len > i2 ? (key.charCodeAt(i2++) & 65280) >> 8 : 0;
        }
        this.rem = len + this.rem & 3;
        len -= this.rem;
        if (len > 0) {
          h1 = this.h1;
          while (1) {
            k1 = k1 * 11601 + (k1 & 65535) * 3432906752 & 4294967295;
            k1 = k1 << 15 | k1 >>> 17;
            k1 = k1 * 13715 + (k1 & 65535) * 461832192 & 4294967295;
            h1 ^= k1;
            h1 = h1 << 13 | h1 >>> 19;
            h1 = h1 * 5 + 3864292196 & 4294967295;
            if (i2 >= len) {
              break;
            }
            k1 = key.charCodeAt(i2++) & 65535 ^ (key.charCodeAt(i2++) & 65535) << 8 ^ (key.charCodeAt(i2++) & 65535) << 16;
            top = key.charCodeAt(i2++);
            k1 ^= (top & 255) << 24 ^ (top & 65280) >> 8;
          }
          k1 = 0;
          switch (this.rem) {
            case 3:
              k1 ^= (key.charCodeAt(i2 + 2) & 65535) << 16;
            case 2:
              k1 ^= (key.charCodeAt(i2 + 1) & 65535) << 8;
            case 1:
              k1 ^= key.charCodeAt(i2) & 65535;
          }
          this.h1 = h1;
        }
        this.k1 = k1;
        return this;
      };
      MurmurHash3.prototype.result = function() {
        var k1, h1;
        k1 = this.k1;
        h1 = this.h1;
        if (k1 > 0) {
          k1 = k1 * 11601 + (k1 & 65535) * 3432906752 & 4294967295;
          k1 = k1 << 15 | k1 >>> 17;
          k1 = k1 * 13715 + (k1 & 65535) * 461832192 & 4294967295;
          h1 ^= k1;
        }
        h1 ^= this.len;
        h1 ^= h1 >>> 16;
        h1 = h1 * 51819 + (h1 & 65535) * 2246770688 & 4294967295;
        h1 ^= h1 >>> 13;
        h1 = h1 * 44597 + (h1 & 65535) * 3266445312 & 4294967295;
        h1 ^= h1 >>> 16;
        return h1 >>> 0;
      };
      MurmurHash3.prototype.reset = function(seed) {
        this.h1 = typeof seed === "number" ? seed : 0;
        this.rem = this.k1 = this.len = 0;
        return this;
      };
      cache = new MurmurHash3();
      if (typeof module2 != "undefined") {
        module2.exports = MurmurHash3;
      } else {
        this.MurmurHash3 = MurmurHash3;
      }
    })();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/write-file-atomic/6.0.0/28f3e5f0396af400017247951525818d08d4d02421346b37e52a20b30a7b1f88/node_modules/write-file-atomic/lib/index.js
var require_lib19 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/write-file-atomic/6.0.0/28f3e5f0396af400017247951525818d08d4d02421346b37e52a20b30a7b1f88/node_modules/write-file-atomic/lib/index.js"(exports2, module2) {
    "use strict";
    module2.exports = writeFile3;
    module2.exports.sync = writeFileSync2;
    module2.exports._getTmpname = getTmpname;
    module2.exports._cleanupOnExit = cleanupOnExit2;
    var fs111 = __require("fs");
    var MurmurHash3 = require_imurmurhash();
    var { onExit: onExit2 } = require_cjs();
    var path218 = __require("path");
    var { promisify: promisify8 } = __require("util");
    var activeFiles = {};
    var threadId2 = (function getId2() {
      try {
        const workerThreads2 = __require("worker_threads");
        return workerThreads2.threadId;
      } catch (e) {
        return 0;
      }
    })();
    var invocations = 0;
    function getTmpname(filename) {
      return filename + "." + MurmurHash3(__filename).hash(String(process.pid)).hash(String(threadId2)).hash(String(++invocations)).result();
    }
    function cleanupOnExit2(tmpfile) {
      return () => {
        try {
          fs111.unlinkSync(typeof tmpfile === "function" ? tmpfile() : tmpfile);
        } catch {
        }
      };
    }
    function serializeActiveFile(absoluteName) {
      return new Promise((resolve3) => {
        if (!activeFiles[absoluteName]) {
          activeFiles[absoluteName] = [];
        }
        activeFiles[absoluteName].push(resolve3);
        if (activeFiles[absoluteName].length === 1) {
          resolve3();
        }
      });
    }
    function isChownErrOk(err) {
      if (err.code === "ENOSYS") {
        return true;
      }
      const nonroot = !process.getuid || process.getuid() !== 0;
      if (nonroot) {
        if (err.code === "EINVAL" || err.code === "EPERM") {
          return true;
        }
      }
      return false;
    }
    async function writeFileAsync(filename, data, options = {}) {
      if (typeof options === "string") {
        options = { encoding: options };
      }
      let fd;
      let tmpfile;
      const removeOnExitHandler = onExit2(cleanupOnExit2(() => tmpfile));
      const absoluteName = path218.resolve(filename);
      try {
        await serializeActiveFile(absoluteName);
        const truename = await promisify8(fs111.realpath)(filename).catch(() => filename);
        tmpfile = getTmpname(truename);
        if (!options.mode || !options.chown) {
          const stats = await promisify8(fs111.stat)(truename).catch(() => {
          });
          if (stats) {
            if (options.mode == null) {
              options.mode = stats.mode;
            }
            if (options.chown == null && process.getuid) {
              options.chown = { uid: stats.uid, gid: stats.gid };
            }
          }
        }
        fd = await promisify8(fs111.open)(tmpfile, "w", options.mode);
        if (options.tmpfileCreated) {
          await options.tmpfileCreated(tmpfile);
        }
        if (ArrayBuffer.isView(data)) {
          await promisify8(fs111.write)(fd, data, 0, data.length, 0);
        } else if (data != null) {
          await promisify8(fs111.write)(fd, String(data), 0, String(options.encoding || "utf8"));
        }
        if (options.fsync !== false) {
          await promisify8(fs111.fsync)(fd);
        }
        await promisify8(fs111.close)(fd);
        fd = null;
        if (options.chown) {
          await promisify8(fs111.chown)(tmpfile, options.chown.uid, options.chown.gid).catch((err) => {
            if (!isChownErrOk(err)) {
              throw err;
            }
          });
        }
        if (options.mode) {
          await promisify8(fs111.chmod)(tmpfile, options.mode).catch((err) => {
            if (!isChownErrOk(err)) {
              throw err;
            }
          });
        }
        await promisify8(fs111.rename)(tmpfile, truename);
      } finally {
        if (fd) {
          await promisify8(fs111.close)(fd).catch(
            /* istanbul ignore next */
            () => {
            }
          );
        }
        removeOnExitHandler();
        await promisify8(fs111.unlink)(tmpfile).catch(() => {
        });
        activeFiles[absoluteName].shift();
        if (activeFiles[absoluteName].length > 0) {
          activeFiles[absoluteName][0]();
        } else {
          delete activeFiles[absoluteName];
        }
      }
    }
    async function writeFile3(filename, data, options, callback2) {
      if (options instanceof Function) {
        callback2 = options;
        options = {};
      }
      const promise2 = writeFileAsync(filename, data, options);
      if (callback2) {
        try {
          const result2 = await promise2;
          return callback2(result2);
        } catch (err) {
          return callback2(err);
        }
      }
      return promise2;
    }
    function writeFileSync2(filename, data, options) {
      if (typeof options === "string") {
        options = { encoding: options };
      } else if (!options) {
        options = {};
      }
      try {
        filename = fs111.realpathSync(filename);
      } catch (ex) {
      }
      const tmpfile = getTmpname(filename);
      if (!options.mode || !options.chown) {
        try {
          const stats = fs111.statSync(filename);
          options = Object.assign({}, options);
          if (!options.mode) {
            options.mode = stats.mode;
          }
          if (!options.chown && process.getuid) {
            options.chown = { uid: stats.uid, gid: stats.gid };
          }
        } catch (ex) {
        }
      }
      let fd;
      const cleanup = cleanupOnExit2(tmpfile);
      const removeOnExitHandler = onExit2(cleanup);
      let threw = true;
      try {
        fd = fs111.openSync(tmpfile, "w", options.mode || 438);
        if (options.tmpfileCreated) {
          options.tmpfileCreated(tmpfile);
        }
        if (ArrayBuffer.isView(data)) {
          fs111.writeSync(fd, data, 0, data.length, 0);
        } else if (data != null) {
          fs111.writeSync(fd, String(data), 0, String(options.encoding || "utf8"));
        }
        if (options.fsync !== false) {
          fs111.fsyncSync(fd);
        }
        fs111.closeSync(fd);
        fd = null;
        if (options.chown) {
          try {
            fs111.chownSync(tmpfile, options.chown.uid, options.chown.gid);
          } catch (err) {
            if (!isChownErrOk(err)) {
              throw err;
            }
          }
        }
        if (options.mode) {
          try {
            fs111.chmodSync(tmpfile, options.mode);
          } catch (err) {
            if (!isChownErrOk(err)) {
              throw err;
            }
          }
        }
        fs111.renameSync(tmpfile, filename);
        threw = false;
      } finally {
        if (fd) {
          try {
            fs111.closeSync(fd);
          } catch (ex) {
          }
        }
        removeOnExitHandler();
        if (threw) {
          cleanup();
        }
      }
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/sort-keys/6.0.0/7853f355d1049a1bb4439cc386ec99055bb1a9f3f07a4acf71be5613eaf53232/node_modules/sort-keys/index.js
function buildPath(parentPathArray, key) {
  if (Array.isArray(parentPathArray) && parentPathArray.length > 0) {
    return [...parentPathArray, key];
  }
  return [key];
}
function sortKeys(object, options = {}) {
  if (!isPlainObject(object) && !Array.isArray(object)) {
    throw new TypeError("Expected a plain object or array");
  }
  const { deep = false, compare: compare2, ignoreKeys } = options;
  const cache = /* @__PURE__ */ new WeakMap();
  const shouldIgnoreKey = (context) => {
    if (Array.isArray(ignoreKeys)) {
      return ignoreKeys.includes(context.key);
    }
    if (typeof ignoreKeys === "function") {
      return ignoreKeys(context);
    }
    return false;
  };
  const shouldProcessDeep = (context) => {
    if (typeof deep === "boolean") {
      return deep;
    }
    if (typeof deep === "function") {
      return deep(context);
    }
    return false;
  };
  const deepSortArray = (array, currentPath, currentDepth) => {
    const resultFromCache = cache.get(array);
    if (resultFromCache !== void 0) {
      return resultFromCache;
    }
    const result2 = [];
    result2.length = array.length;
    cache.set(array, result2);
    for (const index of array.keys()) {
      if (!(index in array)) {
        continue;
      }
      const item = array[index];
      const indexKey = String(index);
      const itemPath = buildPath(currentPath, indexKey);
      const context = {
        key: indexKey,
        value: item,
        path: itemPath,
        depth: currentDepth + 1
      };
      if (Array.isArray(item)) {
        result2[index] = shouldProcessDeep(context) ? deepSortArray(item, itemPath, currentDepth + 1) : item;
        continue;
      }
      if (isPlainObject(item)) {
        result2[index] = shouldProcessDeep(context) ? _sortKeys(item, itemPath, currentDepth + 1) : item;
        continue;
      }
      result2[index] = item;
    }
    return result2;
  };
  const _sortKeys = (object2, currentPath = [], currentDepth = 0) => {
    const resultFromCache = cache.get(object2);
    if (resultFromCache !== void 0) {
      return resultFromCache;
    }
    const result2 = {};
    const allKeys = Object.keys(object2);
    const ignoredKeys = [];
    const keysToSort = [];
    for (const key of allKeys) {
      const value = object2[key];
      const keyPath = buildPath(currentPath, key);
      const context = {
        key,
        value,
        path: keyPath,
        depth: currentDepth
      };
      if (shouldIgnoreKey(context)) {
        ignoredKeys.push(key);
      } else {
        keysToSort.push(key);
      }
    }
    const sortedKeys = keysToSort.sort(compare2);
    const finalKeys = [...ignoredKeys, ...sortedKeys];
    cache.set(object2, result2);
    for (const key of finalKeys) {
      const value = object2[key];
      const keyPath = buildPath(currentPath, key);
      const context = {
        key,
        value,
        path: keyPath,
        depth: currentDepth
      };
      let newValue = value;
      if (shouldProcessDeep(context)) {
        if (Array.isArray(value)) {
          newValue = deepSortArray(value, keyPath, currentDepth);
        } else if (isPlainObject(value)) {
          newValue = _sortKeys(value, keyPath, currentDepth + 1);
        }
      }
      const descriptor = Object.getOwnPropertyDescriptor(object2, key);
      if (descriptor.get || descriptor.set) {
        Object.defineProperty(result2, key, descriptor);
      } else {
        Object.defineProperty(result2, key, {
          ...descriptor,
          value: newValue
        });
      }
    }
    return result2;
  };
  if (Array.isArray(object)) {
    return deepSortArray(object, [], -1);
  }
  return _sortKeys(object, [], 0);
}
var init_sort_keys = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/sort-keys/6.0.0/7853f355d1049a1bb4439cc386ec99055bb1a9f3f07a4acf71be5613eaf53232/node_modules/sort-keys/index.js"() {
    init_is_plain_obj();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/write-json-file/7.0.0/c87ba142eaf672bd6cf6ed6cc664c557357b13927aed0d117fba13348507162f/node_modules/write-json-file/index.js
import path48 from "node:path";
import fs26, { promises as fsPromises4 } from "node:fs";
async function writeJsonFile(filePath, data, options) {
  await fsPromises4.mkdir(path48.dirname(filePath), { recursive: true });
  await init(main2, filePath, data, options);
}
var import_write_file_atomic3, init, main2;
var init_write_json_file = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/write-json-file/7.0.0/c87ba142eaf672bd6cf6ed6cc664c557357b13927aed0d117fba13348507162f/node_modules/write-json-file/index.js"() {
    import_write_file_atomic3 = __toESM(require_lib19(), 1);
    init_sort_keys();
    init_detect_indent();
    init_is_plain_obj();
    init = (function_, filePath, data, options) => {
      if (!filePath) {
        throw new TypeError("Expected a filepath");
      }
      if (data === void 0) {
        throw new TypeError("Expected data to stringify");
      }
      options = {
        indent: "	",
        sortKeys: false,
        ...options
      };
      if (options.sortKeys && isPlainObject(data)) {
        data = sortKeys(data, {
          deep: true,
          compare: typeof options.sortKeys === "function" ? options.sortKeys : void 0
        });
      }
      return function_(filePath, data, options);
    };
    main2 = async (filePath, data, options) => {
      let { indent } = options;
      let trailingNewline = "\n";
      try {
        const file = await fsPromises4.readFile(filePath, "utf8");
        if (!file.endsWith("\n")) {
          trailingNewline = "";
        }
        if (options.detectIndent) {
          indent = detectIndent(file).indent;
        }
      } catch (error) {
        if (error.code !== "ENOENT") {
          throw error;
        }
      }
      const json2 = JSON.stringify(data, options.replacer, indent);
      return (0, import_write_file_atomic3.default)(filePath, `${json2}${trailingNewline}`, { mode: options.mode, chown: false });
    };
  }
});

// lib/checkForUpdates.js
import path49 from "node:path";
async function checkForUpdates(config) {
  const stateFile = path49.join(config.stateDir, "pnpm-state.json");
  let state;
  try {
    state = await loadJsonFile(stateFile);
  } catch {
  }
  if (state?.lastUpdateCheck && Date.now() - new Date(state.lastUpdateCheck).valueOf() < UPDATE_CHECK_FREQUENCY)
    return;
  const { resolve: resolve3 } = createResolver2({
    ...config,
    configByUri: config.configByUri,
    retry: {
      retries: 0
    }
  });
  const resolution = await resolve3({ alias: packageManager.name, bareSpecifier: "latest" }, {
    lockfileDir: config.lockfileDir ?? config.dir,
    preferredVersions: {},
    projectDir: config.dir
  });
  if (resolution?.manifest?.version) {
    updateCheckLogger.debug({
      currentVersion: packageManager.version,
      latestVersion: resolution?.manifest.version
    });
  }
  await writeJsonFile(stateFile, {
    ...state,
    lastUpdateCheck: (/* @__PURE__ */ new Date()).toUTCString()
  });
}
var UPDATE_CHECK_FREQUENCY;
var init_checkForUpdates = __esm({
  "lib/checkForUpdates.js"() {
    "use strict";
    init_lib5();
    init_lib6();
    init_lib57();
    init_load_json_file();
    init_write_json_file();
    UPDATE_CHECK_FREQUENCY = 24 * 60 * 60 * 1e3;
  }
});

// ../catalogs/config/lib/getCatalogsFromWorkspaceManifest.js
function getCatalogsFromWorkspaceManifest(workspaceManifest) {
  if (workspaceManifest == null) {
    return {};
  }
  checkDefaultCatalogIsDefinedOnce(workspaceManifest);
  return {
    // If workspaceManifest.catalog is undefined, intentionally allow the spread
    // below to overwrite it. The check above ensures only one or the either is
    // defined.
    default: workspaceManifest.catalog,
    ...workspaceManifest.catalogs
  };
}
function checkDefaultCatalogIsDefinedOnce(manifest) {
  if (manifest.catalog != null && manifest.catalogs?.default != null) {
    throw new PnpmError("INVALID_CATALOGS_CONFIGURATION", "The 'default' catalog was defined multiple times. Use the 'catalog' field or 'catalogs.default', but not both.");
  }
}
var init_getCatalogsFromWorkspaceManifest = __esm({
  "../catalogs/config/lib/getCatalogsFromWorkspaceManifest.js"() {
    "use strict";
    init_lib2();
  }
});

// ../catalogs/config/lib/index.js
var init_lib58 = __esm({
  "../catalogs/config/lib/index.js"() {
    "use strict";
    init_getCatalogsFromWorkspaceManifest();
  }
});

// ../network/git-utils/lib/index.js
async function isGitRepo(opts2 = {}) {
  try {
    await safeExeca("git", ["rev-parse", "--git-dir"], { cwd: opts2.cwd });
  } catch {
    return false;
  }
  return true;
}
async function getCurrentBranch(opts2 = {}) {
  try {
    const { stdout } = await safeExeca("git", ["symbolic-ref", "--short", "HEAD"], { cwd: opts2.cwd });
    return stdout;
  } catch {
    return null;
  }
}
async function isWorkingTreeClean(opts2 = {}) {
  try {
    const { stdout: status } = await safeExeca("git", ["status", "--porcelain"], { cwd: opts2.cwd });
    if (status !== "") {
      return false;
    }
    return true;
  } catch {
    return false;
  }
}
async function isRemoteHistoryClean(opts2 = {}) {
  let history;
  try {
    const { stdout } = await safeExeca("git", ["rev-list", "--count", "--left-only", "@{u}...HEAD"], { cwd: opts2.cwd });
    history = stdout;
  } catch {
    history = null;
  }
  if (history && history !== "0") {
    return false;
  }
  return true;
}
var init_lib59 = __esm({
  "../network/git-utils/lib/index.js"() {
    "use strict";
    init_lib26();
  }
});

// ../text/naming-cases/lib/index.js
function isStrictlyKebabCase(name) {
  const segments = name.split("-");
  if (segments.length < 2)
    return false;
  return segments.every((segment) => /^[a-z][a-z0-9]*$/.test(segment));
}
function isCamelCase(name) {
  return /^[a-z][a-zA-Z0-9]*$/.test(name);
}
var init_lib60 = __esm({
  "../text/naming-cases/lib/index.js"() {
    "use strict";
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/camelcase/9.0.0/c6ca1b177a2f250b0cb0bca1db835e95c4dc98e7c5609ee4aaa2f4fa0fc2f497/node_modules/camelcase/index.js
function camelCase(input, options) {
  if (!(typeof input === "string" || Array.isArray(input))) {
    throw new TypeError("Expected the input to be `string | string[]`");
  }
  options = {
    pascalCase: false,
    preserveConsecutiveUppercase: false,
    capitalizeAfterNumber: true,
    ...options
  };
  if (Array.isArray(input)) {
    input = input.map((element) => element.trim()).filter((element) => element.length > 0).join("-");
  } else {
    input = input.trim();
  }
  if (input.length === 0) {
    return "";
  }
  const leadingPrefix = input.match(/^[_$]*/)[0];
  input = input.slice(leadingPrefix.length);
  if (input.length === 0) {
    return leadingPrefix;
  }
  const toLowerCase = options.locale === false ? (string) => string.toLowerCase() : (string) => string.toLocaleLowerCase(options.locale);
  const toUpperCase = options.locale === false ? (string) => string.toUpperCase() : (string) => string.toLocaleUpperCase(options.locale);
  if (input.length === 1) {
    if (SEPARATORS.test(input)) {
      return leadingPrefix;
    }
    return leadingPrefix + (options.pascalCase ? toUpperCase(input) : toLowerCase(input));
  }
  const hasUpperCase = input !== toLowerCase(input);
  if (hasUpperCase) {
    input = preserveCamelCase(
      input,
      toLowerCase,
      toUpperCase,
      options.preserveConsecutiveUppercase
    );
  }
  input = input.replace(LEADING_SEPARATORS, "");
  if (options.capitalizeAfterNumber) {
    input = options.preserveConsecutiveUppercase ? preserveConsecutiveUppercase(input, toLowerCase) : toLowerCase(input);
  } else {
    input = processWithCasePreservation(input, toLowerCase, options.preserveConsecutiveUppercase);
  }
  if (options.pascalCase && input.length > 0) {
    input = toUpperCase(input[0]) + input.slice(1);
  }
  return leadingPrefix + postProcess(input, toUpperCase, options);
}
var UPPERCASE, LOWERCASE, LEADING_CAPITAL, SEPARATORS, IDENTIFIER, LEADING_SEPARATORS, SEPARATORS_AND_IDENTIFIER, NUMBERS_AND_IDENTIFIER, preserveCamelCase, preserveConsecutiveUppercase, processWithCasePreservation, postProcess;
var init_camelcase = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/camelcase/9.0.0/c6ca1b177a2f250b0cb0bca1db835e95c4dc98e7c5609ee4aaa2f4fa0fc2f497/node_modules/camelcase/index.js"() {
    UPPERCASE = /[\p{Lu}]/u;
    LOWERCASE = /[\p{Ll}]/u;
    LEADING_CAPITAL = /^[\p{Lu}](?![\p{Lu}])/u;
    SEPARATORS = /[_.\- ]+/;
    IDENTIFIER = /([\p{Alpha}\p{N}_]|$)/u;
    LEADING_SEPARATORS = new RegExp("^" + SEPARATORS.source);
    SEPARATORS_AND_IDENTIFIER = new RegExp(SEPARATORS.source + IDENTIFIER.source, "gu");
    NUMBERS_AND_IDENTIFIER = new RegExp(String.raw`\d+` + IDENTIFIER.source, "gu");
    preserveCamelCase = (string, toLowerCase, toUpperCase, preserveConsecutiveUppercase2) => {
      let isLastCharLower = false;
      let isLastCharUpper = false;
      let isLastLastCharUpper = false;
      let isLastLastCharPreserved = false;
      for (let index = 0; index < string.length; index++) {
        const character = string[index];
        isLastLastCharPreserved = index > 2 ? string[index - 3] === "-" : true;
        if (isLastCharLower && UPPERCASE.test(character)) {
          string = string.slice(0, index) + "-" + string.slice(index);
          isLastCharLower = false;
          isLastLastCharUpper = isLastCharUpper;
          isLastCharUpper = true;
          index++;
        } else if (isLastCharUpper && isLastLastCharUpper && LOWERCASE.test(character) && (!isLastLastCharPreserved || preserveConsecutiveUppercase2)) {
          string = string.slice(0, index - 1) + "-" + string.slice(index - 1);
          isLastLastCharUpper = isLastCharUpper;
          isLastCharUpper = false;
          isLastCharLower = true;
        } else {
          isLastCharLower = toLowerCase(character) === character && toUpperCase(character) !== character;
          isLastLastCharUpper = isLastCharUpper;
          isLastCharUpper = toUpperCase(character) === character && toLowerCase(character) !== character;
        }
      }
      return string;
    };
    preserveConsecutiveUppercase = (input, toLowerCase) => input.replace(LEADING_CAPITAL, (match) => toLowerCase(match));
    processWithCasePreservation = (input, toLowerCase, preserveConsecutiveUppercase2) => {
      let result2 = "";
      let previousWasNumber = false;
      let previousWasUppercase = false;
      const characters = [...input];
      for (let index = 0; index < characters.length; index++) {
        const character = characters[index];
        const isUpperCase = UPPERCASE.test(character);
        const nextCharIsUpperCase = index + 1 < characters.length && UPPERCASE.test(characters[index + 1]);
        if (previousWasNumber && /[\p{Alpha}]/u.test(character)) {
          result2 += character;
          previousWasNumber = false;
          previousWasUppercase = isUpperCase;
        } else if (preserveConsecutiveUppercase2 && isUpperCase && (previousWasUppercase || nextCharIsUpperCase)) {
          result2 += character;
          previousWasUppercase = true;
        } else if (/\d/.test(character)) {
          result2 += character;
          previousWasNumber = true;
          previousWasUppercase = false;
        } else if (SEPARATORS.test(character)) {
          result2 += character;
          previousWasUppercase = false;
        } else {
          result2 += toLowerCase(character);
          previousWasNumber = false;
          previousWasUppercase = false;
        }
      }
      return result2;
    };
    postProcess = (input, toUpperCase, { capitalizeAfterNumber }) => {
      const transformNumericIdentifier = capitalizeAfterNumber ? (match, identifier, offset, string) => {
        const nextCharacter = string.charAt(offset + match.length);
        if (SEPARATORS.test(nextCharacter)) {
          return match;
        }
        return identifier ? match.slice(0, -identifier.length) + toUpperCase(identifier) : match;
      } : (match) => match;
      return input.replaceAll(NUMBERS_AND_IDENTIFIER, transformNumericIdentifier).replaceAll(
        SEPARATORS_AND_IDENTIFIER,
        (_, identifier) => toUpperCase(identifier)
      );
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/ci-info/4.4.0/78b376724aeb79a8381e1f03b9a81ad6402765a8d23354588ff1d993999d0ab8/node_modules/ci-info/vendors.json
var require_vendors = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/ci-info/4.4.0/78b376724aeb79a8381e1f03b9a81ad6402765a8d23354588ff1d993999d0ab8/node_modules/ci-info/vendors.json"(exports2, module2) {
    module2.exports = [
      {
        name: "Agola CI",
        constant: "AGOLA",
        env: "AGOLA_GIT_REF",
        pr: "AGOLA_PULL_REQUEST_ID"
      },
      {
        name: "Alpic",
        constant: "ALPIC",
        env: "ALPIC_HOST"
      },
      {
        name: "Appcircle",
        constant: "APPCIRCLE",
        env: "AC_APPCIRCLE",
        pr: {
          env: "AC_GIT_PR",
          ne: "false"
        }
      },
      {
        name: "AppVeyor",
        constant: "APPVEYOR",
        env: "APPVEYOR",
        pr: "APPVEYOR_PULL_REQUEST_NUMBER"
      },
      {
        name: "AWS CodeBuild",
        constant: "CODEBUILD",
        env: "CODEBUILD_BUILD_ARN",
        pr: {
          env: "CODEBUILD_WEBHOOK_EVENT",
          any: [
            "PULL_REQUEST_CREATED",
            "PULL_REQUEST_UPDATED",
            "PULL_REQUEST_REOPENED"
          ]
        }
      },
      {
        name: "Azure Pipelines",
        constant: "AZURE_PIPELINES",
        env: "TF_BUILD",
        pr: {
          BUILD_REASON: "PullRequest"
        }
      },
      {
        name: "Bamboo",
        constant: "BAMBOO",
        env: "bamboo_planKey"
      },
      {
        name: "Bitbucket Pipelines",
        constant: "BITBUCKET",
        env: "BITBUCKET_COMMIT",
        pr: "BITBUCKET_PR_ID"
      },
      {
        name: "Bitrise",
        constant: "BITRISE",
        env: "BITRISE_IO",
        pr: "BITRISE_PULL_REQUEST"
      },
      {
        name: "Buddy",
        constant: "BUDDY",
        env: "BUDDY_WORKSPACE_ID",
        pr: "BUDDY_EXECUTION_PULL_REQUEST_ID"
      },
      {
        name: "Buildkite",
        constant: "BUILDKITE",
        env: "BUILDKITE",
        pr: {
          env: "BUILDKITE_PULL_REQUEST",
          ne: "false"
        }
      },
      {
        name: "CircleCI",
        constant: "CIRCLE",
        env: "CIRCLECI",
        pr: "CIRCLE_PULL_REQUEST"
      },
      {
        name: "Cirrus CI",
        constant: "CIRRUS",
        env: "CIRRUS_CI",
        pr: "CIRRUS_PR"
      },
      {
        name: "Cloudflare Pages",
        constant: "CLOUDFLARE_PAGES",
        env: "CF_PAGES"
      },
      {
        name: "Cloudflare Workers",
        constant: "CLOUDFLARE_WORKERS",
        env: "WORKERS_CI"
      },
      {
        name: "Codefresh",
        constant: "CODEFRESH",
        env: "CF_BUILD_ID",
        pr: {
          any: [
            "CF_PULL_REQUEST_NUMBER",
            "CF_PULL_REQUEST_ID"
          ]
        }
      },
      {
        name: "Codemagic",
        constant: "CODEMAGIC",
        env: "CM_BUILD_ID",
        pr: "CM_PULL_REQUEST"
      },
      {
        name: "Codeship",
        constant: "CODESHIP",
        env: {
          CI_NAME: "codeship"
        }
      },
      {
        name: "Drone",
        constant: "DRONE",
        env: "DRONE",
        pr: {
          DRONE_BUILD_EVENT: "pull_request"
        }
      },
      {
        name: "dsari",
        constant: "DSARI",
        env: "DSARI"
      },
      {
        name: "Earthly",
        constant: "EARTHLY",
        env: "EARTHLY_CI"
      },
      {
        name: "Expo Application Services",
        constant: "EAS",
        env: "EAS_BUILD"
      },
      {
        name: "Gerrit",
        constant: "GERRIT",
        env: "GERRIT_PROJECT"
      },
      {
        name: "Gitea Actions",
        constant: "GITEA_ACTIONS",
        env: "GITEA_ACTIONS"
      },
      {
        name: "GitHub Actions",
        constant: "GITHUB_ACTIONS",
        env: "GITHUB_ACTIONS",
        pr: {
          GITHUB_EVENT_NAME: "pull_request"
        }
      },
      {
        name: "GitLab CI",
        constant: "GITLAB",
        env: "GITLAB_CI",
        pr: "CI_MERGE_REQUEST_ID"
      },
      {
        name: "GoCD",
        constant: "GOCD",
        env: "GO_PIPELINE_LABEL"
      },
      {
        name: "Google Cloud Build",
        constant: "GOOGLE_CLOUD_BUILD",
        env: "BUILDER_OUTPUT"
      },
      {
        name: "Harness CI",
        constant: "HARNESS",
        env: "HARNESS_BUILD_ID"
      },
      {
        name: "Heroku",
        constant: "HEROKU",
        env: {
          env: "NODE",
          includes: "/app/.heroku/node/bin/node"
        }
      },
      {
        name: "Hudson",
        constant: "HUDSON",
        env: "HUDSON_URL"
      },
      {
        name: "Jenkins",
        constant: "JENKINS",
        env: [
          "JENKINS_URL",
          "BUILD_ID"
        ],
        pr: {
          any: [
            "ghprbPullId",
            "CHANGE_ID"
          ]
        }
      },
      {
        name: "LayerCI",
        constant: "LAYERCI",
        env: "LAYERCI",
        pr: "LAYERCI_PULL_REQUEST"
      },
      {
        name: "Magnum CI",
        constant: "MAGNUM",
        env: "MAGNUM"
      },
      {
        name: "Netlify CI",
        constant: "NETLIFY",
        env: "NETLIFY",
        pr: {
          env: "PULL_REQUEST",
          ne: "false"
        }
      },
      {
        name: "Nevercode",
        constant: "NEVERCODE",
        env: "NEVERCODE",
        pr: {
          env: "NEVERCODE_PULL_REQUEST",
          ne: "false"
        }
      },
      {
        name: "Prow",
        constant: "PROW",
        env: "PROW_JOB_ID"
      },
      {
        name: "ReleaseHub",
        constant: "RELEASEHUB",
        env: "RELEASE_BUILD_ID"
      },
      {
        name: "Render",
        constant: "RENDER",
        env: "RENDER",
        pr: {
          IS_PULL_REQUEST: "true"
        }
      },
      {
        name: "Sail CI",
        constant: "SAIL",
        env: "SAILCI",
        pr: "SAIL_PULL_REQUEST_NUMBER"
      },
      {
        name: "Screwdriver",
        constant: "SCREWDRIVER",
        env: "SCREWDRIVER",
        pr: {
          env: "SD_PULL_REQUEST",
          ne: "false"
        }
      },
      {
        name: "Semaphore",
        constant: "SEMAPHORE",
        env: "SEMAPHORE",
        pr: "PULL_REQUEST_NUMBER"
      },
      {
        name: "Sourcehut",
        constant: "SOURCEHUT",
        env: {
          CI_NAME: "sourcehut"
        }
      },
      {
        name: "Strider CD",
        constant: "STRIDER",
        env: "STRIDER"
      },
      {
        name: "TaskCluster",
        constant: "TASKCLUSTER",
        env: [
          "TASK_ID",
          "RUN_ID"
        ]
      },
      {
        name: "TeamCity",
        constant: "TEAMCITY",
        env: "TEAMCITY_VERSION"
      },
      {
        name: "Travis CI",
        constant: "TRAVIS",
        env: "TRAVIS",
        pr: {
          env: "TRAVIS_PULL_REQUEST",
          ne: "false"
        }
      },
      {
        name: "Vela",
        constant: "VELA",
        env: "VELA",
        pr: {
          VELA_PULL_REQUEST: "1"
        }
      },
      {
        name: "Vercel",
        constant: "VERCEL",
        env: {
          any: [
            "NOW_BUILDER",
            "VERCEL"
          ]
        },
        pr: "VERCEL_GIT_PULL_REQUEST_ID"
      },
      {
        name: "Visual Studio App Center",
        constant: "APPCENTER",
        env: "APPCENTER_BUILD_ID"
      },
      {
        name: "Woodpecker",
        constant: "WOODPECKER",
        env: {
          CI: "woodpecker"
        },
        pr: {
          CI_BUILD_EVENT: "pull_request"
        }
      },
      {
        name: "Xcode Cloud",
        constant: "XCODE_CLOUD",
        env: "CI_XCODE_PROJECT",
        pr: "CI_PULL_REQUEST_NUMBER"
      },
      {
        name: "Xcode Server",
        constant: "XCODE_SERVER",
        env: "XCS"
      }
    ];
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/ci-info/4.4.0/78b376724aeb79a8381e1f03b9a81ad6402765a8d23354588ff1d993999d0ab8/node_modules/ci-info/index.js
var require_ci_info = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/ci-info/4.4.0/78b376724aeb79a8381e1f03b9a81ad6402765a8d23354588ff1d993999d0ab8/node_modules/ci-info/index.js"(exports2) {
    "use strict";
    var vendors = require_vendors();
    var env3 = process.env;
    Object.defineProperty(exports2, "_vendors", {
      value: vendors.map(function(v) {
        return v.constant;
      })
    });
    exports2.name = null;
    exports2.isPR = null;
    exports2.id = null;
    if (env3.CI !== "false") {
      vendors.forEach(function(vendor) {
        const envs = Array.isArray(vendor.env) ? vendor.env : [vendor.env];
        const isCI3 = envs.every(function(obj) {
          return checkEnv(obj);
        });
        exports2[vendor.constant] = isCI3;
        if (!isCI3) {
          return;
        }
        exports2.name = vendor.name;
        exports2.isPR = checkPR(vendor);
        exports2.id = vendor.constant;
      });
    }
    exports2.isCI = !!(env3.CI !== "false" && // Bypass all checks if CI env is explicitly set to 'false'
    (env3.BUILD_ID || // Jenkins, Cloudbees
    env3.BUILD_NUMBER || // Jenkins, TeamCity
    env3.CI || // Travis CI, CircleCI, Cirrus CI, Gitlab CI, Appveyor, CodeShip, dsari, Cloudflare Pages/Workers
    env3.CI_APP_ID || // Appflow
    env3.CI_BUILD_ID || // Appflow
    env3.CI_BUILD_NUMBER || // Appflow
    env3.CI_NAME || // Codeship and others
    env3.CONTINUOUS_INTEGRATION || // Travis CI, Cirrus CI
    env3.RUN_ID || // TaskCluster, dsari
    exports2.name || false));
    function checkEnv(obj) {
      if (typeof obj === "string") return !!env3[obj];
      if ("env" in obj) {
        return env3[obj.env] && env3[obj.env].includes(obj.includes);
      }
      if ("any" in obj) {
        return obj.any.some(function(k2) {
          return !!env3[k2];
        });
      }
      return Object.keys(obj).every(function(k2) {
        return env3[k2] === obj[k2];
      });
    }
    function checkPR(vendor) {
      switch (typeof vendor.pr) {
        case "string":
          return !!env3[vendor.pr];
        case "object":
          if ("env" in vendor.pr) {
            if ("any" in vendor.pr) {
              return vendor.pr.any.some(function(key) {
                return env3[vendor.pr.env] === key;
              });
            } else {
              return vendor.pr.env in env3 && env3[vendor.pr.env] !== vendor.pr.ne;
            }
          } else if ("any" in vendor.pr) {
            return vendor.pr.any.some(function(key) {
              return !!env3[key];
            });
          } else {
            return checkEnv(vendor.pr);
          }
        default:
          return null;
      }
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/lodash.kebabcase/4.1.1/519a528f48565ef00ec4aae84101a038b116d9ae2797ca0453cbe2cc8c6517fd/node_modules/lodash.kebabcase/index.js
var require_lodash2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/lodash.kebabcase/4.1.1/519a528f48565ef00ec4aae84101a038b116d9ae2797ca0453cbe2cc8c6517fd/node_modules/lodash.kebabcase/index.js"(exports2, module2) {
    var INFINITY = 1 / 0;
    var symbolTag = "[object Symbol]";
    var reAsciiWord = /[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g;
    var reLatin = /[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g;
    var rsAstralRange = "\\ud800-\\udfff";
    var rsComboMarksRange = "\\u0300-\\u036f\\ufe20-\\ufe23";
    var rsComboSymbolsRange = "\\u20d0-\\u20f0";
    var rsDingbatRange = "\\u2700-\\u27bf";
    var rsLowerRange = "a-z\\xdf-\\xf6\\xf8-\\xff";
    var rsMathOpRange = "\\xac\\xb1\\xd7\\xf7";
    var rsNonCharRange = "\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf";
    var rsPunctuationRange = "\\u2000-\\u206f";
    var rsSpaceRange = " \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000";
    var rsUpperRange = "A-Z\\xc0-\\xd6\\xd8-\\xde";
    var rsVarRange = "\\ufe0e\\ufe0f";
    var rsBreakRange = rsMathOpRange + rsNonCharRange + rsPunctuationRange + rsSpaceRange;
    var rsApos = "['\u2019]";
    var rsBreak = "[" + rsBreakRange + "]";
    var rsCombo = "[" + rsComboMarksRange + rsComboSymbolsRange + "]";
    var rsDigits = "\\d+";
    var rsDingbat = "[" + rsDingbatRange + "]";
    var rsLower = "[" + rsLowerRange + "]";
    var rsMisc = "[^" + rsAstralRange + rsBreakRange + rsDigits + rsDingbatRange + rsLowerRange + rsUpperRange + "]";
    var rsFitz = "\\ud83c[\\udffb-\\udfff]";
    var rsModifier = "(?:" + rsCombo + "|" + rsFitz + ")";
    var rsNonAstral = "[^" + rsAstralRange + "]";
    var rsRegional = "(?:\\ud83c[\\udde6-\\uddff]){2}";
    var rsSurrPair = "[\\ud800-\\udbff][\\udc00-\\udfff]";
    var rsUpper = "[" + rsUpperRange + "]";
    var rsZWJ = "\\u200d";
    var rsLowerMisc = "(?:" + rsLower + "|" + rsMisc + ")";
    var rsUpperMisc = "(?:" + rsUpper + "|" + rsMisc + ")";
    var rsOptLowerContr = "(?:" + rsApos + "(?:d|ll|m|re|s|t|ve))?";
    var rsOptUpperContr = "(?:" + rsApos + "(?:D|LL|M|RE|S|T|VE))?";
    var reOptMod = rsModifier + "?";
    var rsOptVar = "[" + rsVarRange + "]?";
    var rsOptJoin = "(?:" + rsZWJ + "(?:" + [rsNonAstral, rsRegional, rsSurrPair].join("|") + ")" + rsOptVar + reOptMod + ")*";
    var rsSeq = rsOptVar + reOptMod + rsOptJoin;
    var rsEmoji = "(?:" + [rsDingbat, rsRegional, rsSurrPair].join("|") + ")" + rsSeq;
    var reApos = RegExp(rsApos, "g");
    var reComboMark = RegExp(rsCombo, "g");
    var reUnicodeWord = RegExp([
      rsUpper + "?" + rsLower + "+" + rsOptLowerContr + "(?=" + [rsBreak, rsUpper, "$"].join("|") + ")",
      rsUpperMisc + "+" + rsOptUpperContr + "(?=" + [rsBreak, rsUpper + rsLowerMisc, "$"].join("|") + ")",
      rsUpper + "?" + rsLowerMisc + "+" + rsOptLowerContr,
      rsUpper + "+" + rsOptUpperContr,
      rsDigits,
      rsEmoji
    ].join("|"), "g");
    var reHasUnicodeWord = /[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;
    var deburredLetters = {
      // Latin-1 Supplement block.
      "\xC0": "A",
      "\xC1": "A",
      "\xC2": "A",
      "\xC3": "A",
      "\xC4": "A",
      "\xC5": "A",
      "\xE0": "a",
      "\xE1": "a",
      "\xE2": "a",
      "\xE3": "a",
      "\xE4": "a",
      "\xE5": "a",
      "\xC7": "C",
      "\xE7": "c",
      "\xD0": "D",
      "\xF0": "d",
      "\xC8": "E",
      "\xC9": "E",
      "\xCA": "E",
      "\xCB": "E",
      "\xE8": "e",
      "\xE9": "e",
      "\xEA": "e",
      "\xEB": "e",
      "\xCC": "I",
      "\xCD": "I",
      "\xCE": "I",
      "\xCF": "I",
      "\xEC": "i",
      "\xED": "i",
      "\xEE": "i",
      "\xEF": "i",
      "\xD1": "N",
      "\xF1": "n",
      "\xD2": "O",
      "\xD3": "O",
      "\xD4": "O",
      "\xD5": "O",
      "\xD6": "O",
      "\xD8": "O",
      "\xF2": "o",
      "\xF3": "o",
      "\xF4": "o",
      "\xF5": "o",
      "\xF6": "o",
      "\xF8": "o",
      "\xD9": "U",
      "\xDA": "U",
      "\xDB": "U",
      "\xDC": "U",
      "\xF9": "u",
      "\xFA": "u",
      "\xFB": "u",
      "\xFC": "u",
      "\xDD": "Y",
      "\xFD": "y",
      "\xFF": "y",
      "\xC6": "Ae",
      "\xE6": "ae",
      "\xDE": "Th",
      "\xFE": "th",
      "\xDF": "ss",
      // Latin Extended-A block.
      "\u0100": "A",
      "\u0102": "A",
      "\u0104": "A",
      "\u0101": "a",
      "\u0103": "a",
      "\u0105": "a",
      "\u0106": "C",
      "\u0108": "C",
      "\u010A": "C",
      "\u010C": "C",
      "\u0107": "c",
      "\u0109": "c",
      "\u010B": "c",
      "\u010D": "c",
      "\u010E": "D",
      "\u0110": "D",
      "\u010F": "d",
      "\u0111": "d",
      "\u0112": "E",
      "\u0114": "E",
      "\u0116": "E",
      "\u0118": "E",
      "\u011A": "E",
      "\u0113": "e",
      "\u0115": "e",
      "\u0117": "e",
      "\u0119": "e",
      "\u011B": "e",
      "\u011C": "G",
      "\u011E": "G",
      "\u0120": "G",
      "\u0122": "G",
      "\u011D": "g",
      "\u011F": "g",
      "\u0121": "g",
      "\u0123": "g",
      "\u0124": "H",
      "\u0126": "H",
      "\u0125": "h",
      "\u0127": "h",
      "\u0128": "I",
      "\u012A": "I",
      "\u012C": "I",
      "\u012E": "I",
      "\u0130": "I",
      "\u0129": "i",
      "\u012B": "i",
      "\u012D": "i",
      "\u012F": "i",
      "\u0131": "i",
      "\u0134": "J",
      "\u0135": "j",
      "\u0136": "K",
      "\u0137": "k",
      "\u0138": "k",
      "\u0139": "L",
      "\u013B": "L",
      "\u013D": "L",
      "\u013F": "L",
      "\u0141": "L",
      "\u013A": "l",
      "\u013C": "l",
      "\u013E": "l",
      "\u0140": "l",
      "\u0142": "l",
      "\u0143": "N",
      "\u0145": "N",
      "\u0147": "N",
      "\u014A": "N",
      "\u0144": "n",
      "\u0146": "n",
      "\u0148": "n",
      "\u014B": "n",
      "\u014C": "O",
      "\u014E": "O",
      "\u0150": "O",
      "\u014D": "o",
      "\u014F": "o",
      "\u0151": "o",
      "\u0154": "R",
      "\u0156": "R",
      "\u0158": "R",
      "\u0155": "r",
      "\u0157": "r",
      "\u0159": "r",
      "\u015A": "S",
      "\u015C": "S",
      "\u015E": "S",
      "\u0160": "S",
      "\u015B": "s",
      "\u015D": "s",
      "\u015F": "s",
      "\u0161": "s",
      "\u0162": "T",
      "\u0164": "T",
      "\u0166": "T",
      "\u0163": "t",
      "\u0165": "t",
      "\u0167": "t",
      "\u0168": "U",
      "\u016A": "U",
      "\u016C": "U",
      "\u016E": "U",
      "\u0170": "U",
      "\u0172": "U",
      "\u0169": "u",
      "\u016B": "u",
      "\u016D": "u",
      "\u016F": "u",
      "\u0171": "u",
      "\u0173": "u",
      "\u0174": "W",
      "\u0175": "w",
      "\u0176": "Y",
      "\u0177": "y",
      "\u0178": "Y",
      "\u0179": "Z",
      "\u017B": "Z",
      "\u017D": "Z",
      "\u017A": "z",
      "\u017C": "z",
      "\u017E": "z",
      "\u0132": "IJ",
      "\u0133": "ij",
      "\u0152": "Oe",
      "\u0153": "oe",
      "\u0149": "'n",
      "\u017F": "ss"
    };
    var freeGlobal = typeof global == "object" && global && global.Object === Object && global;
    var freeSelf = typeof self == "object" && self && self.Object === Object && self;
    var root = freeGlobal || freeSelf || Function("return this")();
    function arrayReduce(array, iteratee, accumulator, initAccum) {
      var index = -1, length = array ? array.length : 0;
      if (initAccum && length) {
        accumulator = array[++index];
      }
      while (++index < length) {
        accumulator = iteratee(accumulator, array[index], index, array);
      }
      return accumulator;
    }
    function asciiWords(string) {
      return string.match(reAsciiWord) || [];
    }
    function basePropertyOf(object) {
      return function(key) {
        return object == null ? void 0 : object[key];
      };
    }
    var deburrLetter = basePropertyOf(deburredLetters);
    function hasUnicodeWord(string) {
      return reHasUnicodeWord.test(string);
    }
    function unicodeWords(string) {
      return string.match(reUnicodeWord) || [];
    }
    var objectProto = Object.prototype;
    var objectToString3 = objectProto.toString;
    var Symbol2 = root.Symbol;
    var symbolProto = Symbol2 ? Symbol2.prototype : void 0;
    var symbolToString = symbolProto ? symbolProto.toString : void 0;
    function baseToString(value) {
      if (typeof value == "string") {
        return value;
      }
      if (isSymbol(value)) {
        return symbolToString ? symbolToString.call(value) : "";
      }
      var result2 = value + "";
      return result2 == "0" && 1 / value == -INFINITY ? "-0" : result2;
    }
    function createCompounder(callback2) {
      return function(string) {
        return arrayReduce(words(deburr2(string).replace(reApos, "")), callback2, "");
      };
    }
    function isObjectLike(value) {
      return !!value && typeof value == "object";
    }
    function isSymbol(value) {
      return typeof value == "symbol" || isObjectLike(value) && objectToString3.call(value) == symbolTag;
    }
    function toString4(value) {
      return value == null ? "" : baseToString(value);
    }
    function deburr2(string) {
      string = toString4(string);
      return string && string.replace(reLatin, deburrLetter).replace(reComboMark, "");
    }
    var kebabCase6 = createCompounder(function(result2, word, index) {
      return result2 + (index ? "-" : "") + word.toLowerCase();
    });
    function words(string, pattern, guard) {
      string = toString4(string);
      pattern = guard ? void 0 : pattern;
      if (pattern === void 0) {
        return hasUnicodeWord(string) ? unicodeWords(string) : asciiWords(string);
      }
      return string.match(pattern) || [];
    }
    module2.exports = kebabCase6;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/normalize-registry-url/2.0.1/3e3909f9f76c047e49f652d92462012dcb1e0d8e8bde7da0e12380d1736a13a2/node_modules/normalize-registry-url/index.js
var require_normalize_registry_url = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/normalize-registry-url/2.0.1/3e3909f9f76c047e49f652d92462012dcb1e0d8e8bde7da0e12380d1736a13a2/node_modules/normalize-registry-url/index.js"(exports2, module2) {
    "use strict";
    module2.exports = function(registry) {
      if (typeof registry !== "string") {
        throw new TypeError("`registry` should be a string");
      }
      try {
        registry = new URL(registry).toString();
      } catch {
      }
      if (registry.endsWith("/") || registry.indexOf("/", registry.indexOf("//") + 2) != -1) return registry;
      return `${registry}/`;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/path-absolute/2.0.0/f2b738a953841aeecc7605b3344e7fb07922fd917b50ed3ed6c9c377ee7e6df5/node_modules/path-absolute/index.js
import os4 from "node:os";
import path50 from "node:path";
function pathAbsolute(filepath, cwd) {
  const home = getHomedir();
  if (isHomepath(filepath)) {
    return path50.join(home, filepath.substr(2));
  }
  if (path50.isAbsolute(filepath)) {
    return filepath;
  }
  if (cwd) {
    return path50.join(cwd, filepath);
  }
  return path50.resolve(filepath);
}
function getHomedir() {
  const home = os4.homedir();
  if (!home) throw new Error("Could not find the homedir");
  return home;
}
function isHomepath(filepath) {
  return filepath.indexOf("~/") === 0 || filepath.indexOf("~\\") === 0;
}
var init_path_absolute = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/path-absolute/2.0.0/f2b738a953841aeecc7605b3344e7fb07922fd917b50ed3ed6c9c377ee7e6df5/node_modules/path-absolute/index.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/realpath-missing/2.0.0/1df589cef309cadda526424ec014de249398ac32a74d7c9d9d791e03d934fa17/node_modules/realpath-missing/index.js
import fs27 from "node:fs";
async function realpathMissing(path218) {
  try {
    return await fs27.promises.realpath(path218);
  } catch (err) {
    if (err.code === "ENOENT") {
      return path218;
    }
    throw err;
  }
}
var init_realpath_missing = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/realpath-missing/2.0.0/1df589cef309cadda526424ec014de249398ac32a74d7c9d9d791e03d934fa17/node_modules/realpath-missing/index.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/can-write-to-dir/2.0.0/c363cc8380dcc3b452a03bc2c68b4ab99a7b057ef5d22956e27d1a5a850b369f/node_modules/can-write-to-dir/index.js
import defaultFS from "node:fs";
function canWriteToDirSync(dir, customFS) {
  const fs111 = customFS || defaultFS;
  const tempFile = pathTemp(dir);
  try {
    fs111.writeFileSync(tempFile, "", "utf8");
    fs111.unlinkSync(tempFile);
    return true;
  } catch (err) {
    if (err.code === "EACCES" || err.code === "EPERM" || err.code === "EROFS") {
      return false;
    }
    throw err;
  }
}
var init_can_write_to_dir = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/can-write-to-dir/2.0.0/c363cc8380dcc3b452a03bc2c68b4ab99a7b057ef5d22956e27d1a5a850b369f/node_modules/can-write-to-dir/index.js"() {
    init_path_temp();
  }
});

// ../config/reader/lib/checkGlobalBinDir.js
import { promises as fs28 } from "node:fs";
import path51 from "node:path";
import util15 from "node:util";
async function checkGlobalBinDir(globalBinDir, { env: env3, shouldAllowWrite }) {
  if (!env3[import_path_name2.default]) {
    throw new PnpmError("NO_PATH_ENV", `Couldn't find a global directory for executables because the "${import_path_name2.default}" environment variable is not set.`);
  }
  if (!await globalBinDirIsInPath(globalBinDir, env3)) {
    throw new PnpmError("GLOBAL_BIN_DIR_NOT_IN_PATH", `The configured global bin directory "${globalBinDir}" is not in PATH`, {
      hint: 'Run "pnpm setup" to update your shell configuration.'
    });
  }
  if (shouldAllowWrite && !canWriteToDirAndExists(globalBinDir)) {
    throw new PnpmError("PNPM_DIR_NOT_WRITABLE", `The CLI has no write access to the global bin directory at ${globalBinDir}`);
  }
}
async function globalBinDirIsInPath(globalBinDir, env3) {
  const dirs2 = env3[import_path_name2.default]?.split(path51.delimiter) ?? [];
  if (dirs2.some((dir) => areDirsEqual(globalBinDir, dir)))
    return true;
  const realGlobalBinDir = await fs28.realpath(globalBinDir);
  return dirs2.some((dir) => areDirsEqual(realGlobalBinDir, dir));
}
function canWriteToDirAndExists(dir) {
  try {
    return canWriteToDirSync(dir);
  } catch (err) {
    if (util15.types.isNativeError(err) && "code" in err && err.code === "ENOENT")
      return false;
    throw err;
  }
}
var import_path_name2, areDirsEqual;
var init_checkGlobalBinDir = __esm({
  "../config/reader/lib/checkGlobalBinDir.js"() {
    "use strict";
    init_lib2();
    init_can_write_to_dir();
    import_path_name2 = __toESM(require_path_name(), 1);
    areDirsEqual = (dir1, dir2) => path51.relative(dir1, dir2) === "";
  }
});

// ../config/reader/lib/concurrency.js
import os5 from "node:os";
function getAvailableParallelism(cache = true) {
  if (cache && Number(cacheAvailableParallelism) > 0) {
    return cacheAvailableParallelism;
  }
  cacheAvailableParallelism = Math.max(1, os5.availableParallelism?.() ?? os5.cpus().length);
  return cacheAvailableParallelism;
}
function getDefaultWorkspaceConcurrency(cache) {
  return Math.min(MaxDefaultWorkspaceConcurrency, getAvailableParallelism(cache));
}
function getWorkspaceConcurrency(option) {
  if (typeof option !== "number")
    return getDefaultWorkspaceConcurrency();
  if (option <= 0) {
    return Math.max(1, getAvailableParallelism() - Math.abs(option));
  }
  return option;
}
var MaxDefaultWorkspaceConcurrency, cacheAvailableParallelism;
var init_concurrency = __esm({
  "../config/reader/lib/concurrency.js"() {
    "use strict";
    MaxDefaultWorkspaceConcurrency = 4;
  }
});

// ../config/reader/lib/npmConfigTypes.js
import path52 from "node:path";
import url2 from "node:url";
var npmConfigTypes;
var init_npmConfigTypes = __esm({
  "../config/reader/lib/npmConfigTypes.js"() {
    "use strict";
    npmConfigTypes = {
      access: [null, "restricted", "public"],
      "allow-same-version": Boolean,
      "bin-links": Boolean,
      ca: [null, String, Array],
      cafile: path52,
      cert: [null, String],
      "commit-hooks": Boolean,
      depth: Number,
      description: Boolean,
      dev: Boolean,
      "dry-run": Boolean,
      "engine-strict": Boolean,
      "fetch-retries": Number,
      "fetch-retry-factor": Number,
      "fetch-retry-mintimeout": Number,
      "fetch-retry-maxtimeout": Number,
      force: Boolean,
      git: String,
      "git-tag-version": Boolean,
      global: Boolean,
      "https-proxy": [null, url2],
      "ignore-scripts": Boolean,
      "init-author-name": String,
      "init-author-email": String,
      "init-author-url": ["", url2],
      "init-license": String,
      "init-version": String,
      json: Boolean,
      key: [null, String],
      "local-address": String,
      long: Boolean,
      maxsockets: Number,
      message: String,
      "node-options": [null, String],
      "node-version": [null, String],
      "no-proxy": [null, String, Array],
      offline: Boolean,
      only: [null, "dev", "development", "prod", "production"],
      optional: Boolean,
      otp: [null, String],
      "package-lock": Boolean,
      parseable: Boolean,
      "prefer-offline": Boolean,
      prefix: path52,
      production: Boolean,
      progress: Boolean,
      provenance: Boolean,
      proxy: [null, false, url2],
      registry: [null, url2],
      save: Boolean,
      "save-dev": Boolean,
      "save-exact": Boolean,
      "save-optional": Boolean,
      "save-prefix": String,
      "save-prod": Boolean,
      scope: String,
      "script-shell": [null, String],
      "scripts-prepend-node-path": [false, true, "auto", "warn-only"],
      "sign-git-tag": Boolean,
      "strict-ssl": Boolean,
      tag: String,
      "tag-version-prefix": String,
      "unsafe-perm": Boolean,
      "user-agent": String,
      userconfig: path52,
      umask: Number,
      version: Boolean
    };
  }
});

// ../config/reader/lib/configFileKey.js
var pnpmConfigFileKeys, excludedPnpmKeys, setOfPnpmConfigFilesKeys, setOfExcludedPnpmKeys, isConfigFileKey;
var init_configFileKey = __esm({
  "../config/reader/lib/configFileKey.js"() {
    "use strict";
    init_npmConfigTypes();
    pnpmConfigFileKeys = [
      "agent",
      "bail",
      "ci",
      "color",
      "cache-dir",
      "child-concurrency",
      "dangerously-allow-all-builds",
      "enable-modules-dir",
      "enable-global-virtual-store",
      "exclude-links-from-lockfile",
      "extend-node-path",
      "fetch-timeout",
      "fetch-warn-timeout-ms",
      "fetch-min-speed-ki-bps",
      "fetching-concurrency",
      "git-checks",
      "git-shallow-hosts",
      "global-bin-dir",
      "global-dir",
      "global-path",
      "global-pnpmfile",
      "global-virtual-store-dir",
      "http-proxy",
      "init-package-manager",
      "init-type",
      "optimistic-repeat-install",
      "loglevel",
      "maxsockets",
      "modules-cache-max-age",
      "dlx-cache-max-age",
      "minimum-release-age",
      "minimum-release-age-exclude",
      "minimum-release-age-ignore-missing-time",
      "minimum-release-age-strict",
      "network-concurrency",
      "noproxy",
      "npm-path",
      "npmrc-auth-file",
      "package-import-method",
      "prefer-frozen-lockfile",
      "prefer-offline",
      "prefer-symlinked-executables",
      "block-exotic-subdeps",
      "registry-supports-time-field",
      "reporter",
      "resolution-mode",
      "script-shell",
      "shell-emulator",
      "side-effects-cache",
      "side-effects-cache-readonly",
      "state-dir",
      "store-dir",
      "strict-dep-builds",
      "trust-lockfile",
      "trust-policy",
      "trust-policy-exclude",
      "trust-policy-ignore-after",
      "update-notifier",
      "use-beta-cli",
      "use-stderr",
      "verify-deps-before-run",
      "verify-store-integrity",
      "virtual-store-dir",
      "virtual-store-dir-max-length"
    ];
    excludedPnpmKeys = [
      "auto-install-peers",
      "catalog-mode",
      "config-dir",
      "merge-git-branch-lockfiles",
      "merge-git-branch-lockfiles-branch-pattern",
      "deploy-all-files",
      "dedupe-peer-dependents",
      "dedupe-peers",
      "dedupe-direct-deps",
      "dedupe-injected-deps",
      "dev",
      "dir",
      "disallow-workspace-cycles",
      "enable-pre-post-scripts",
      "filter",
      "filter-prod",
      "force-legacy-deploy",
      "frozen-lockfile",
      "git-branch-lockfile",
      "hoist",
      "hoist-pattern",
      "hoist-workspace-packages",
      "ignore-compatibility-db",
      "ignore-pnpmfile",
      "ignore-workspace",
      "ignore-workspace-cycles",
      "ignore-workspace-root-check",
      "include-workspace-root",
      "inject-workspace-packages",
      "legacy-dir-filtering",
      "link-workspace-packages",
      "lockfile",
      "lockfile-dir",
      "lockfile-include-tarball-url",
      "lockfile-only",
      "modules-dir",
      "node-linker",
      "offline",
      "pack-destination",
      "pack-gzip-level",
      "patches-dir",
      "pnpmfile",
      "pm-on-fail",
      "prefer-workspace-packages",
      "preserve-absolute-paths",
      "production",
      "public-hoist-pattern",
      "publish-branch",
      "recursive-install",
      "resolve-peers-from-workspace-root",
      "runtime",
      "runtime-on-fail",
      "aggregate-output",
      "reporter-hide-prefix",
      "save-catalog-name",
      "save-peer",
      "save-workspace-protocol",
      "shamefully-hoist",
      "shared-workspace-lockfile",
      "symlink",
      "sort",
      "stream",
      "strict-store-pkg-content-check",
      "strict-peer-dependencies",
      "virtual-store-only",
      "peers-suffix-max-length",
      "workspace-concurrency",
      "workspace-packages",
      "workspace-root",
      "test-pattern",
      "changed-files-ignore-pattern",
      "embed-readme",
      "skip-manifest-obfuscation",
      "fail-if-no-match",
      "sync-injected-deps-after-scripts",
      "cpu",
      "libc",
      "os",
      "audit-level",
      "yes"
    ];
    setOfPnpmConfigFilesKeys = new Set(pnpmConfigFileKeys);
    setOfExcludedPnpmKeys = new Set(excludedPnpmKeys);
    isConfigFileKey = (kebabKey) => setOfPnpmConfigFilesKeys.has(kebabKey) || kebabKey in npmConfigTypes && !setOfExcludedPnpmKeys.has(kebabKey);
  }
});

// ../config/reader/lib/dependencyBuildOptions.js
function extractAndRemoveDependencyBuildOptions(targetConfig) {
  const depsBuildConfig = {};
  for (const key of DEPS_BUILD_CONFIG_KEYS) {
    depsBuildConfig[key] = targetConfig[key];
    delete targetConfig[key];
  }
  return depsBuildConfig;
}
var DEPS_BUILD_CONFIG_KEYS, hasDependencyBuildOptions;
var init_dependencyBuildOptions = __esm({
  "../config/reader/lib/dependencyBuildOptions.js"() {
    "use strict";
    DEPS_BUILD_CONFIG_KEYS = [
      "dangerouslyAllowAllBuilds",
      "allowBuilds"
    ];
    hasDependencyBuildOptions = (config) => DEPS_BUILD_CONFIG_KEYS.some((key) => config[key] != null);
  }
});

// ../config/reader/lib/dirs.js
import os6 from "node:os";
import path53 from "node:path";
function getCacheDir(opts2) {
  if (opts2.env.XDG_CACHE_HOME) {
    return path53.join(opts2.env.XDG_CACHE_HOME, "pnpm");
  }
  if (opts2.platform === "darwin") {
    return path53.join(os6.homedir(), "Library/Caches/pnpm");
  }
  if (opts2.platform !== "win32") {
    return path53.join(os6.homedir(), ".cache/pnpm");
  }
  if (opts2.env.LOCALAPPDATA) {
    return path53.join(opts2.env.LOCALAPPDATA, "pnpm-cache");
  }
  return path53.join(os6.homedir(), ".pnpm-cache");
}
function getStateDir(opts2) {
  if (opts2.env.XDG_STATE_HOME) {
    return path53.join(opts2.env.XDG_STATE_HOME, "pnpm");
  }
  if (opts2.platform !== "win32") {
    return path53.join(os6.homedir(), ".local/state/pnpm");
  }
  if (opts2.env.LOCALAPPDATA) {
    return path53.join(opts2.env.LOCALAPPDATA, "pnpm-state");
  }
  return path53.join(os6.homedir(), ".pnpm-state");
}
function getDataDir(opts2) {
  if (opts2.env.PNPM_HOME) {
    return opts2.env.PNPM_HOME;
  }
  if (opts2.env.XDG_DATA_HOME) {
    return path53.join(opts2.env.XDG_DATA_HOME, "pnpm");
  }
  if (opts2.platform === "darwin") {
    return path53.join(os6.homedir(), "Library/pnpm");
  }
  if (opts2.platform !== "win32") {
    return path53.join(os6.homedir(), ".local/share/pnpm");
  }
  if (opts2.env.LOCALAPPDATA) {
    return path53.join(opts2.env.LOCALAPPDATA, "pnpm");
  }
  return path53.join(os6.homedir(), ".pnpm");
}
function getConfigDir(opts2) {
  if (opts2.env.XDG_CONFIG_HOME) {
    return path53.join(opts2.env.XDG_CONFIG_HOME, "pnpm");
  }
  if (opts2.platform === "darwin") {
    return path53.join(os6.homedir(), "Library/Preferences/pnpm");
  }
  if (opts2.platform !== "win32") {
    return path53.join(os6.homedir(), ".config/pnpm");
  }
  if (opts2.env.LOCALAPPDATA) {
    return path53.join(opts2.env.LOCALAPPDATA, "pnpm/config");
  }
  return path53.join(os6.homedir(), ".config/pnpm");
}
var init_dirs = __esm({
  "../config/reader/lib/dirs.js"() {
    "use strict";
  }
});

// ../config/reader/lib/env.js
import path54 from "node:path";
import url3 from "node:url";
function* parseEnvVars(getSchema, env3) {
  for (const envKey in env3) {
    const suffix = getEnvKeySuffix(envKey);
    if (!suffix)
      continue;
    const envValue = env3[envKey];
    if (envValue == null)
      continue;
    const schemaKey = (0, import_lodash2.default)(suffix);
    const schema2 = getSchema(schemaKey);
    if (schema2 == null)
      continue;
    const key = camelCase(suffix);
    const value = parseValueBySchema(schema2, envValue, env3);
    yield { key, value };
  }
}
function parseValueBySchema(schema2, envVar, env3) {
  if (Array.isArray(schema2)) {
    return parseValueByTypeUnion(schema2, envVar, env3);
  } else if (typeof schema2 === "function") {
    return parseValueByConstructor(schema2, envVar);
  } else if (schema2 && typeof schema2 === "object") {
    return parseValueByModule(schema2, envVar, env3);
  }
  const _typeGuard = schema2;
  throw new Error(`Invalid schema: ${JSON.stringify(_typeGuard)}`);
}
function parseValueByTypeUnion(schema2, envVar, env3) {
  for (const variant of sortUnionVariant(schema2)) {
    let value;
    switch (typeof variant) {
      case "string":
        value = parseStringLiteral(variant, envVar);
        break;
      case "boolean":
        value = parseBooleanLiteral(variant, envVar);
        break;
      case "function":
        value = parseValueByConstructor(variant, envVar);
        break;
      case "object":
        value = variant === null ? parseNullLiteral(envVar) : parseValueByModule(variant, envVar, env3);
        break;
      default: {
        const _typeGuard = variant;
        throw new Error(`Invalid schema variant: ${JSON.stringify(_typeGuard)}`);
      }
    }
    if (value !== void 0)
      return value;
  }
  return void 0;
}
function parseStringLiteral(schema2, envVar) {
  return envVar === schema2 ? schema2 : void 0;
}
function parseBooleanLiteral(schema2, envVar) {
  return schema2.toString() === envVar ? schema2 : void 0;
}
function parseNullLiteral(envVar) {
  return envVar === "null" ? null : void 0;
}
function parseValueByConstructor(schema2, envVar) {
  if (schema2 === Array) {
    const value = tryParseObjectOrArray(envVar);
    return Array.isArray(value) ? value : void 0;
  }
  if (schema2 === Boolean) {
    switch (envVar) {
      case "true":
        return true;
      case "false":
        return false;
      default:
        return void 0;
    }
  }
  if (schema2 === Number) {
    const value = Number(envVar);
    return isNaN(value) ? void 0 : value;
  }
  if (schema2 === String) {
    return envVar;
  }
  return void 0;
}
function parseValueByModule(schema2, envVar, env3) {
  if (schema2 === path54) {
    const homePrefix = /^~[/\\]/;
    if (env3.HOME && homePrefix.test(envVar)) {
      return path54.join(env3.HOME, envVar.replace(homePrefix, ""));
    }
    return envVar;
  }
  if (schema2 === url3) {
    return new url3.URL(envVar).toString();
  }
  return void 0;
}
function sortUnionVariant(variants) {
  const sorted = variants.filter((variant) => variant !== String);
  if (variants.includes(String)) {
    sorted.push(String);
  }
  return sorted;
}
function tryParseObjectOrArray(envVar) {
  let result2;
  try {
    result2 = JSON.parse(envVar);
  } catch {
    return void 0;
  }
  return result2 == null || typeof result2 !== "object" ? void 0 : result2;
}
function getEnvKeySuffix(envKey) {
  if (envKey.startsWith(PREFIX)) {
    const suffix = envKey.slice(PREFIX.length);
    return isLowerSnakeCase(suffix) ? suffix : void 0;
  }
  if (envKey.startsWith(PREFIX_UPPER)) {
    const suffix = envKey.slice(PREFIX_UPPER.length);
    return isUpperSnakeCase(suffix) ? suffix.toLowerCase() : void 0;
  }
  return void 0;
}
function isLowerSnakeCase(s) {
  return s.length > 0 && s.split("_").every((segment) => /^[a-z0-9]+$/.test(segment));
}
function isUpperSnakeCase(s) {
  return s.length > 0 && s.split("_").every((segment) => /^[A-Z0-9]+$/.test(segment));
}
var import_lodash2, PREFIX, PREFIX_UPPER;
var init_env = __esm({
  "../config/reader/lib/env.js"() {
    "use strict";
    init_camelcase();
    import_lodash2 = __toESM(require_lodash2(), 1);
    PREFIX = "pnpm_config_";
    PREFIX_UPPER = PREFIX.toUpperCase();
  }
});

// ../config/reader/lib/parseCreds.js
function parseCreds(input) {
  let parsedCreds;
  if (input.tokenHelper) {
    parsedCreds = {
      ...parsedCreds,
      tokenHelper: parseTokenHelper(input.tokenHelper)
    };
  }
  if (input.authToken) {
    parsedCreds = {
      ...parsedCreds,
      authToken: input.authToken
    };
  }
  const basicAuth2 = parseBasicAuth(input);
  if (basicAuth2) {
    parsedCreds = {
      ...parsedCreds,
      basicAuth: basicAuth2
    };
  }
  return parsedCreds;
}
function parseBasicAuth({ authPairBase64, authUsername, authPassword }) {
  if (authPairBase64) {
    const pair = decodeBase64Credential(authPairBase64, "_auth");
    const colonIndex = pair.indexOf(":");
    if (colonIndex < 0) {
      throw new AuthMissingSeparatorError();
    }
    const username = pair.slice(0, colonIndex);
    const password = pair.slice(colonIndex + 1);
    return { username, password };
  }
  if (authUsername && authPassword) {
    return { username: authUsername, password: decodeBase64Credential(authPassword, "_password") };
  }
  return void 0;
}
function decodeBase64Credential(value, key) {
  try {
    return atob(value);
  } catch {
    const normalizedValue = normalizeBase64Padding(value);
    if (normalizedValue !== value) {
      try {
        return atob(normalizedValue);
      } catch {
      }
    }
    throw new AuthBase64DecodeError(key);
  }
}
function normalizeBase64Padding(value) {
  let paddingStart = value.length;
  while (paddingStart > 0 && value[paddingStart - 1] === "=") {
    paddingStart--;
  }
  const valueWithoutPadding = value.slice(0, paddingStart);
  if (!valueWithoutPadding)
    return value;
  const remainder = valueWithoutPadding.length % 4;
  if (remainder === 1)
    return value;
  return valueWithoutPadding.padEnd(valueWithoutPadding.length + (4 - remainder) % 4, "=");
}
function parseTokenHelper(source) {
  source = source.trim();
  for (const char of source) {
    if (RESERVED_CHARACTERS.has(char)) {
      throw new TokenHelperUnsupportedCharacterError(char);
    }
  }
  const command = source.split(/\s+/).filter(Boolean);
  return command;
}
var AuthMissingSeparatorError, AuthBase64DecodeError, RESERVED_CHARACTERS, TokenHelperUnsupportedCharacterError;
var init_parseCreds = __esm({
  "../config/reader/lib/parseCreds.js"() {
    "use strict";
    init_lib2();
    AuthMissingSeparatorError = class extends PnpmError {
      constructor() {
        super("AUTH_MISSING_SEPARATOR", "No separator found in the decoded form of _auth", {
          hint: "_auth is a base64 encoded form of <username>:<password> where the colon (:) serves as the separator"
        });
      }
    };
    AuthBase64DecodeError = class extends PnpmError {
      constructor(key) {
        super("AUTH_INVALID_BASE64", `Failed to decode ${key} as base64`, {
          hint: `${key} must contain a base64-encoded ${key === "_auth" ? "<username>:<password>" : "password"} value`
        });
      }
    };
    RESERVED_CHARACTERS = /* @__PURE__ */ new Set(["$", "%", "`", '"', "'"]);
    TokenHelperUnsupportedCharacterError = class extends PnpmError {
      char;
      constructor(char) {
        let hint = "Try wrapping the current command in a script whose name does not contain unsupported characters";
        if (char === '"' || char === "'") {
          hint = `pnpm does not support quotations in tokenHelper. ${hint}`;
        } else if (char === "$" || char === "%") {
          hint = `pnpm does not support environment variables. ${hint}`;
        }
        super("TOKEN_HELPER_UNSUPPORTED_CHARACTER", `Unexpected character ${JSON.stringify(char)}`, { hint });
        this.char = char;
      }
    };
  }
});

// ../config/reader/lib/getNetworkConfigs.js
import fs29 from "node:fs";
function getNetworkConfigs(rawConfig) {
  const rawCredsMap = {};
  const registries = {};
  const networkConfigs = { registries };
  for (const [configKey, value] of Object.entries(rawConfig)) {
    if (configKey[0] === "@" && configKey.endsWith(":registry")) {
      registries[configKey.slice(0, configKey.indexOf(":"))] = (0, import_normalize_registry_url.default)(value);
      continue;
    }
    const parsedCreds = tryParseCredsKey(configKey);
    if (parsedCreds) {
      const { credsField, registry } = parsedCreds;
      rawCredsMap[registry] ??= {};
      rawCredsMap[registry][credsField] = value;
      continue;
    }
    const parsedSsl = tryParseSslKey(configKey);
    if (parsedSsl) {
      const { registry, sslField, isFile } = parsedSsl;
      networkConfigs.configByUri ??= {};
      networkConfigs.configByUri[registry] ??= {};
      networkConfigs.configByUri[registry].tls ??= {};
      networkConfigs.configByUri[registry].tls[sslField] = isFile ? fs29.readFileSync(value, "utf8") : value.replace(/\\n/g, "\n");
    }
  }
  for (const uri in rawCredsMap) {
    const creds = parseCreds(rawCredsMap[uri]);
    if (creds) {
      networkConfigs.configByUri ??= {};
      networkConfigs.configByUri[uri] ??= {};
      networkConfigs.configByUri[uri].creds = creds;
    }
  }
  return networkConfigs;
}
function getDefaultCreds(rawConfig) {
  const input = {};
  for (const rawKey in AUTH_SUFFIX_KEY_MAP) {
    const key = AUTH_SUFFIX_KEY_MAP[rawKey];
    const value = rawConfig[rawKey];
    if (value != null) {
      input[key] = value;
    }
  }
  return parseCreds(input);
}
function tryParseCredsKey(key) {
  const match = key.match(AUTH_SUFFIX_RE);
  if (!match?.groups) {
    return void 0;
  }
  const registry = key.slice(0, match.index);
  const credsField = AUTH_SUFFIX_KEY_MAP[match.groups.key];
  if (!credsField) {
    throw new Error(`Unexpected key: ${match.groups.key}`);
  }
  return { registry, credsField };
}
function tryParseSslKey(key) {
  const match = key.match(SSL_SUFFIX_RE);
  if (!match?.groups) {
    return void 0;
  }
  const registry = key.slice(0, match.index);
  const sslField = match.groups.id;
  const isFile = Boolean(match.groups.kind);
  return { registry, sslField, isFile };
}
var import_normalize_registry_url, AUTH_SUFFIX_RE, AUTH_SUFFIX_KEY_MAP, SSL_SUFFIX_RE;
var init_getNetworkConfigs = __esm({
  "../config/reader/lib/getNetworkConfigs.js"() {
    "use strict";
    import_normalize_registry_url = __toESM(require_normalize_registry_url(), 1);
    init_parseCreds();
    AUTH_SUFFIX_RE = /:(?<key>_auth|_authToken|_password|username|tokenHelper)$/;
    AUTH_SUFFIX_KEY_MAP = {
      _auth: "authPairBase64",
      _authToken: "authToken",
      _password: "authPassword",
      username: "authUsername",
      tokenHelper: "tokenHelper"
    };
    SSL_SUFFIX_RE = /:(?<id>cert|key|ca)(?<kind>file)?$/;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/config.env-replace/4.1.0/88b8499de92e93193d395d0d73336a2bf6f02d0c6e78b4137263559da8f6b27c/node_modules/@pnpm/config.env-replace/dist/env-replace.js
var require_env_replace = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/config.env-replace/4.1.0/88b8499de92e93193d395d0d73336a2bf6f02d0c6e78b4137263559da8f6b27c/node_modules/@pnpm/config.env-replace/dist/env-replace.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.envReplaceLossy = exports2.envReplace = void 0;
    var ENV_EXPR = /(?<!\\)(\\*)\$\{([^${}]+)\}/g;
    var ENV_VALUE = /([^:-]+)(:?)-(.+)/;
    function envReplace2(settingValue, env3) {
      return replaceWith(settingValue, env3, (orig) => {
        throw new Error(`Failed to replace env in config: ${orig}`);
      });
    }
    exports2.envReplace = envReplace2;
    function envReplaceLossy2(settingValue, env3) {
      const unresolved = [];
      const value = replaceWith(settingValue, env3, (orig) => {
        unresolved.push(orig);
        return "";
      });
      return { value, unresolved };
    }
    exports2.envReplaceLossy = envReplaceLossy2;
    function replaceWith(settingValue, env3, onUnresolved) {
      return settingValue.replace(ENV_EXPR, (orig, escape, name) => {
        if (escape.length % 2)
          return orig.slice((escape.length + 1) / 2);
        const halfEscape = escape.slice(escape.length / 2);
        const envValue = getEnvValue(env3, name);
        if (envValue === void 0)
          return `${halfEscape}${onUnresolved(orig)}`;
        return `${halfEscape}${envValue}`;
      });
    }
    function getEnvValue(env3, name) {
      const matched = name.match(ENV_VALUE);
      if (!matched)
        return env3[name];
      const [, variableName, colon, fallback] = matched;
      const v = env3[variableName];
      if (v === void 0)
        return fallback;
      return !v && colon ? fallback : v;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/config.env-replace/4.1.0/88b8499de92e93193d395d0d73336a2bf6f02d0c6e78b4137263559da8f6b27c/node_modules/@pnpm/config.env-replace/dist/index.js
var require_dist5 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/config.env-replace/4.1.0/88b8499de92e93193d395d0d73336a2bf6f02d0c6e78b4137263559da8f6b27c/node_modules/@pnpm/config.env-replace/dist/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.envReplaceLossy = exports2.envReplace = void 0;
    var env_replace_1 = require_env_replace();
    Object.defineProperty(exports2, "envReplace", { enumerable: true, get: function() {
      return env_replace_1.envReplace;
    } });
    Object.defineProperty(exports2, "envReplaceLossy", { enumerable: true, get: function() {
      return env_replace_1.envReplaceLossy;
    } });
  }
});

// ../config/reader/lib/getOptionsFromRootManifest.js
import path55 from "node:path";
function getOptionsFromPnpmSettings(manifestDir, pnpmSettings, manifest) {
  const settings = replaceEnvInSettings(pnpmSettings);
  if (settings.overrides) {
    assertValidOverrides(settings.overrides);
    if (Object.keys(settings.overrides).length === 0) {
      delete settings.overrides;
    } else if (manifest) {
      settings.overrides = map_default(createVersionReferencesReplacer(manifest), settings.overrides);
    }
  }
  if (pnpmSettings.patchedDependencies) {
    settings.patchedDependencies = { ...pnpmSettings.patchedDependencies };
    for (const [dep, patchFile] of Object.entries(pnpmSettings.patchedDependencies)) {
      if (manifestDir == null || path55.isAbsolute(patchFile))
        continue;
      settings.patchedDependencies[dep] = path55.join(manifestDir, patchFile);
    }
  }
  return settings;
}
function assertValidOverrides(overrides) {
  if (overrides == null || typeof overrides !== "object" || Array.isArray(overrides)) {
    throw new PnpmError("INVALID_OVERRIDES", `The overrides field should be an object, but got ${renderReceivedType(overrides)}`);
  }
  for (const [selector, spec] of Object.entries(overrides)) {
    if (typeof spec !== "string") {
      throw new PnpmError("INVALID_OVERRIDES", `The value of overrides.${selector} should be a string, but got ${renderReceivedType(spec)}`);
    }
  }
}
function renderReceivedType(value) {
  if (value === null)
    return "null";
  if (Array.isArray(value))
    return "array";
  return typeof value;
}
function replaceEnvInSettings(settings) {
  const newSettings = {};
  for (const [key, value] of Object.entries(settings)) {
    const newKey = (0, import_config9.envReplace)(key, process.env);
    if (typeof value === "string") {
      newSettings[newKey] = (0, import_config9.envReplace)(value, process.env);
    } else if (newKey === "registries" || newKey === "namedRegistries") {
      newSettings[newKey] = replaceEnvInStringValues(value);
    } else {
      newSettings[newKey] = value;
    }
  }
  return newSettings;
}
function replaceEnvInStringValues(value) {
  if (value == null || typeof value !== "object" || Array.isArray(value))
    return value;
  const out = {};
  for (const [k2, v] of Object.entries(value)) {
    out[k2] = typeof v === "string" ? (0, import_config9.envReplace)(v, process.env) : v;
  }
  return out;
}
function createVersionReferencesReplacer(manifest) {
  const allDeps = {
    ...manifest.devDependencies,
    ...manifest.dependencies,
    ...manifest.optionalDependencies
  };
  return replaceVersionReferences.bind(null, allDeps);
}
function replaceVersionReferences(dep, spec) {
  if (!(spec[0] === "$"))
    return spec;
  const dependencyName = spec.slice(1);
  const newSpec = dep[dependencyName];
  if (newSpec)
    return newSpec;
  throw new PnpmError("CANNOT_RESOLVE_OVERRIDE_VERSION", `Cannot resolve version ${spec} in overrides. The direct dependencies don't have dependency "${dependencyName}".`);
}
var import_config9;
var init_getOptionsFromRootManifest = __esm({
  "../config/reader/lib/getOptionsFromRootManifest.js"() {
    "use strict";
    import_config9 = __toESM(require_dist5(), 1);
    init_lib2();
    init_es();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/ini/6.0.0/2fd7d766b38bed97ba2f9858e63a9f5aef58f7b49f16475d6820a9baed65a35c/node_modules/ini/lib/ini.js
var require_ini = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/ini/6.0.0/2fd7d766b38bed97ba2f9858e63a9f5aef58f7b49f16475d6820a9baed65a35c/node_modules/ini/lib/ini.js"(exports2, module2) {
    var { hasOwnProperty: hasOwnProperty2 } = Object.prototype;
    var encode2 = (obj, opt = {}) => {
      if (typeof opt === "string") {
        opt = { section: opt };
      }
      opt.align = opt.align === true;
      opt.newline = opt.newline === true;
      opt.sort = opt.sort === true;
      opt.whitespace = opt.whitespace === true || opt.align === true;
      opt.platform = opt.platform || typeof process !== "undefined" && process.platform;
      opt.bracketedArray = opt.bracketedArray !== false;
      const eol = opt.platform === "win32" ? "\r\n" : "\n";
      const separator = opt.whitespace ? " = " : "=";
      const children = [];
      const keys4 = opt.sort ? Object.keys(obj).sort() : Object.keys(obj);
      let padToChars = 0;
      if (opt.align) {
        padToChars = safe(
          keys4.filter((k2) => obj[k2] === null || Array.isArray(obj[k2]) || typeof obj[k2] !== "object").map((k2) => Array.isArray(obj[k2]) ? `${k2}[]` : k2).concat([""]).reduce((a2, b) => safe(a2).length >= safe(b).length ? a2 : b)
        ).length;
      }
      let out = "";
      const arraySuffix = opt.bracketedArray ? "[]" : "";
      for (const k2 of keys4) {
        const val = obj[k2];
        if (val && Array.isArray(val)) {
          for (const item of val) {
            out += safe(`${k2}${arraySuffix}`).padEnd(padToChars, " ") + separator + safe(item) + eol;
          }
        } else if (val && typeof val === "object") {
          children.push(k2);
        } else {
          out += safe(k2).padEnd(padToChars, " ") + separator + safe(val) + eol;
        }
      }
      if (opt.section && out.length) {
        out = "[" + safe(opt.section) + "]" + (opt.newline ? eol + eol : eol) + out;
      }
      for (const k2 of children) {
        const nk = splitSections(k2, ".").join("\\.");
        const section = (opt.section ? opt.section + "." : "") + nk;
        const child = encode2(obj[k2], {
          ...opt,
          section
        });
        if (out.length && child.length) {
          out += eol;
        }
        out += child;
      }
      return out;
    };
    function splitSections(str2, separator) {
      var lastMatchIndex = 0;
      var lastSeparatorIndex = 0;
      var nextIndex = 0;
      var sections = [];
      do {
        nextIndex = str2.indexOf(separator, lastMatchIndex);
        if (nextIndex !== -1) {
          lastMatchIndex = nextIndex + separator.length;
          if (nextIndex > 0 && str2[nextIndex - 1] === "\\") {
            continue;
          }
          sections.push(str2.slice(lastSeparatorIndex, nextIndex));
          lastSeparatorIndex = nextIndex + separator.length;
        }
      } while (nextIndex !== -1);
      sections.push(str2.slice(lastSeparatorIndex));
      return sections;
    }
    var decode2 = (str2, opt = {}) => {
      opt.bracketedArray = opt.bracketedArray !== false;
      const out = /* @__PURE__ */ Object.create(null);
      let p = out;
      let section = null;
      const re = /^\[([^\]]*)\]\s*$|^([^=]+)(=(.*))?$/i;
      const lines = str2.split(/[\r\n]+/g);
      const duplicates = {};
      for (const line of lines) {
        if (!line || line.match(/^\s*[;#]/) || line.match(/^\s*$/)) {
          continue;
        }
        const match = line.match(re);
        if (!match) {
          continue;
        }
        if (match[1] !== void 0) {
          section = unsafe(match[1]);
          if (section === "__proto__") {
            p = /* @__PURE__ */ Object.create(null);
            continue;
          }
          p = out[section] = out[section] || /* @__PURE__ */ Object.create(null);
          continue;
        }
        const keyRaw = unsafe(match[2]);
        let isArray;
        if (opt.bracketedArray) {
          isArray = keyRaw.length > 2 && keyRaw.slice(-2) === "[]";
        } else {
          duplicates[keyRaw] = (duplicates?.[keyRaw] || 0) + 1;
          isArray = duplicates[keyRaw] > 1;
        }
        const key = isArray && keyRaw.endsWith("[]") ? keyRaw.slice(0, -2) : keyRaw;
        if (key === "__proto__") {
          continue;
        }
        const valueRaw = match[3] ? unsafe(match[4]) : true;
        const value = valueRaw === "true" || valueRaw === "false" || valueRaw === "null" ? JSON.parse(valueRaw) : valueRaw;
        if (isArray) {
          if (!hasOwnProperty2.call(p, key)) {
            p[key] = [];
          } else if (!Array.isArray(p[key])) {
            p[key] = [p[key]];
          }
        }
        if (Array.isArray(p[key])) {
          p[key].push(value);
        } else {
          p[key] = value;
        }
      }
      const remove = [];
      for (const k2 of Object.keys(out)) {
        if (!hasOwnProperty2.call(out, k2) || typeof out[k2] !== "object" || Array.isArray(out[k2])) {
          continue;
        }
        const parts = splitSections(k2, ".");
        p = out;
        const l = parts.pop();
        const nl = l.replace(/\\\./g, ".");
        for (const part of parts) {
          if (part === "__proto__") {
            continue;
          }
          if (!hasOwnProperty2.call(p, part) || typeof p[part] !== "object") {
            p[part] = /* @__PURE__ */ Object.create(null);
          }
          p = p[part];
        }
        if (p === out && nl === l) {
          continue;
        }
        p[nl] = out[k2];
        remove.push(k2);
      }
      for (const del of remove) {
        delete out[del];
      }
      return out;
    };
    var isQuoted = (val) => {
      return val.startsWith('"') && val.endsWith('"') || val.startsWith("'") && val.endsWith("'");
    };
    var safe = (val) => {
      if (typeof val !== "string" || val.match(/[=\r\n]/) || val.match(/^\[/) || val.length > 1 && isQuoted(val) || val !== val.trim()) {
        return JSON.stringify(val);
      }
      return val.split(";").join("\\;").split("#").join("\\#");
    };
    var unsafe = (val) => {
      val = (val || "").trim();
      if (isQuoted(val)) {
        if (val.charAt(0) === "'") {
          val = val.slice(1, -1);
        }
        try {
          val = JSON.parse(val);
        } catch {
        }
      } else {
        let esc = false;
        let unesc = "";
        for (let i2 = 0, l = val.length; i2 < l; i2++) {
          const c3 = val.charAt(i2);
          if (esc) {
            if ("\\;#".indexOf(c3) !== -1) {
              unesc += c3;
            } else {
              unesc += "\\" + c3;
            }
            esc = false;
          } else if (";#".indexOf(c3) !== -1) {
            break;
          } else if (c3 === "\\") {
            esc = true;
          } else {
            unesc += c3;
          }
        }
        if (esc) {
          unesc += "\\";
        }
        return unesc.trim();
      }
      return val;
    };
    module2.exports = {
      parse: decode2,
      decode: decode2,
      stringify: encode2,
      encode: encode2,
      safe,
      unsafe
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/read-ini-file/5.0.0/068ec83fb9ce95684b2076a4d488f1467dd140dea045076d4fe252f4a01769c0/node_modules/read-ini-file/index.js
import fs30 from "node:fs";
async function readIniFile(fp) {
  const data = await fs30.promises.readFile(fp, "utf8");
  return parse5(data);
}
function readIniFileSync(fp) {
  return parse5(fs30.readFileSync(fp, "utf8"));
}
var import_ini, parse5;
var init_read_ini_file = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/read-ini-file/5.0.0/068ec83fb9ce95684b2076a4d488f1467dd140dea045076d4fe252f4a01769c0/node_modules/read-ini-file/index.js"() {
    init_strip_bom();
    import_ini = __toESM(require_ini(), 1);
    parse5 = (data) => import_ini.default.parse(stripBom(data));
  }
});

// ../config/reader/lib/inheritPickedConfig.js
function inheritPickedConfig(target2, src2, pickConfig, pickRawConfig) {
  Object.assign(target2.config, pickConfig(src2.config));
  Object.assign(target2.config.authConfig, pickRawConfig(src2.config.authConfig));
}
var init_inheritPickedConfig = __esm({
  "../config/reader/lib/inheritPickedConfig.js"() {
    "use strict";
  }
});

// ../config/reader/lib/localConfig.js
function isRawAuthCfgKey(rawCfgKey) {
  if (RAW_AUTH_CFG_KEYS.includes(rawCfgKey))
    return true;
  if (RAW_AUTH_CFG_KEY_SUFFIXES.some((suffix) => rawCfgKey.endsWith(suffix)))
    return true;
  return false;
}
function isAuthCfgKey(cfgKey) {
  return AUTH_CFG_KEYS.includes(cfgKey);
}
function isSecurityPolicyCfgKey(cfgKey) {
  return SECURITY_POLICY_CFG_KEYS.includes(cfgKey);
}
function isCatalogsCfgKey(cfgKey) {
  return CATALOGS_CFG_KEYS.includes(cfgKey);
}
function isFetchCfgKey(cfgKey) {
  return FETCH_CFG_KEYS.includes(cfgKey);
}
function pickRawAuthConfig(rawLocalCfg) {
  const result2 = {};
  for (const key in rawLocalCfg) {
    if (isRawAuthCfgKey(key)) {
      result2[key] = rawLocalCfg[key];
    }
  }
  return result2;
}
function pickDlxConfig(localCfg) {
  const result2 = {};
  for (const key in localCfg) {
    if (isAuthCfgKey(key) || isSecurityPolicyCfgKey(key) || isCatalogsCfgKey(key) || isFetchCfgKey(key)) {
      result2[key] = localCfg[key];
    }
  }
  return result2;
}
function inheritDlxConfig(target2, src2) {
  inheritPickedConfig(target2, src2, pickDlxConfig, pickRawAuthConfig);
}
function pickIniConfig(rawConfig) {
  const result2 = {};
  for (const key in rawConfig) {
    if (isIniConfigKey(key)) {
      result2[key] = rawConfig[key];
    }
  }
  return result2;
}
var RAW_AUTH_CFG_KEYS, NETWORK_INI_KEYS, RAW_AUTH_CFG_KEY_SUFFIXES, AUTH_CFG_KEYS, SECURITY_POLICY_CFG_KEYS, CATALOGS_CFG_KEYS, FETCH_CFG_KEYS, NPM_AUTH_SETTINGS, isIniConfigKey, isNpmrcReadableKey;
var init_localConfig = __esm({
  "../config/reader/lib/localConfig.js"() {
    "use strict";
    init_inheritPickedConfig();
    RAW_AUTH_CFG_KEYS = [
      "ca",
      "cafile",
      "cert",
      "key",
      "registry"
    ];
    NETWORK_INI_KEYS = [
      "https-proxy",
      "proxy",
      "no-proxy",
      "http-proxy",
      "local-address",
      "strict-ssl"
    ];
    RAW_AUTH_CFG_KEY_SUFFIXES = [
      ":ca",
      ":cafile",
      ":cert",
      ":certfile",
      ":key",
      ":keyfile",
      ":registry",
      ":tokenHelper",
      ":_auth",
      ":_authToken"
    ];
    AUTH_CFG_KEYS = [
      "ca",
      "cert",
      "configByUri",
      "key",
      "registry",
      "registries"
    ];
    SECURITY_POLICY_CFG_KEYS = [
      "minimumReleaseAge",
      "minimumReleaseAgeExclude",
      "minimumReleaseAgeIgnoreMissingTime",
      "minimumReleaseAgeStrict",
      "trustLockfile",
      "trustPolicy",
      "trustPolicyExclude",
      "trustPolicyIgnoreAfter"
    ];
    CATALOGS_CFG_KEYS = [
      "catalogs"
    ];
    FETCH_CFG_KEYS = [
      "fetchRetryFactor",
      "fetchRetryMaxtimeout",
      "fetchRetryMintimeout",
      "fetchRetries",
      "fetchTimeout"
    ];
    NPM_AUTH_SETTINGS = [
      ...RAW_AUTH_CFG_KEYS,
      "_auth",
      "_authToken",
      "_password",
      "email",
      "keyfile",
      "username"
    ];
    isIniConfigKey = (key) => key.startsWith("@") || key.startsWith("//") || NPM_AUTH_SETTINGS.includes(key);
    isNpmrcReadableKey = (key) => isIniConfigKey(key) || NETWORK_INI_KEYS.includes(key);
  }
});

// ../config/reader/lib/loadNpmrcFiles.js
import fs31 from "node:fs";
import os7 from "node:os";
import path56 from "node:path";
function loadNpmrcConfig(opts2) {
  const warnings = [];
  const env3 = opts2.env ?? process.env;
  const localPrefix = opts2.dir ? path56.resolve(opts2.dir) : findLocalPrefix(process.cwd());
  const userConfigPath = normalizePath3(opts2.npmrcAuthFile) ?? path56.resolve(os7.homedir(), ".npmrc");
  const workspaceNpmrcDir = opts2.workspaceDir ?? localPrefix;
  const workspaceNpmrc = readAndFilterNpmrc(path56.resolve(workspaceNpmrcDir, ".npmrc"), warnings, env3);
  const userConfig = readAndFilterNpmrc(userConfigPath, warnings, env3);
  const pnpmAuthConfig = readAndFilterNpmrc(path56.join(opts2.configDir, "auth.ini"), warnings, env3);
  const pnpmBuiltinConfig = {
    ...readAndFilterNpmrc(path56.resolve(path56.join(opts2.moduleDirname, "pnpmrc")), warnings, env3),
    registry: "https://registry.npmjs.org/",
    "@jsr:registry": "https://npm.jsr.io/"
  };
  loadCAFile([
    opts2.cliOptions,
    workspaceNpmrc,
    pnpmAuthConfig,
    userConfig,
    opts2.defaultOptions
  ]);
  const mergedConfig = {};
  for (const source of [pnpmBuiltinConfig, opts2.defaultOptions, userConfig, pnpmAuthConfig, workspaceNpmrc, opts2.cliOptions]) {
    for (const [key, value] of Object.entries(source)) {
      if (isNpmrcReadableKey(key)) {
        mergedConfig[key] = value;
      }
    }
  }
  const rawConfig = {
    ...pnpmBuiltinConfig,
    ...opts2.defaultOptions,
    ...userConfig,
    ...pnpmAuthConfig,
    ...workspaceNpmrc,
    ...opts2.cliOptions
  };
  return {
    mergedConfig,
    rawConfig,
    workspaceNpmrc,
    userConfig,
    localPrefix,
    warnings
  };
}
function readAndFilterNpmrc(filePath, warnings, env3) {
  let raw;
  try {
    raw = readIniFileSync(filePath);
  } catch (err) {
    if (isErrorWithCode(err, "ENOENT") || isErrorWithCode(err, "EISDIR")) {
      return {};
    }
    warnings.push(`Issue while reading "${filePath}". ${err instanceof Error ? err.message : String(err)}`);
    return {};
  }
  const npmrcDir = path56.dirname(filePath);
  const result2 = {};
  for (const [rawKey, rawValue] of Object.entries(raw)) {
    const key = substituteEnv(rawKey, env3, warnings);
    let value = typeof rawValue === "string" ? substituteEnv(rawValue, env3, warnings) : rawValue;
    if (isNpmrcReadableKey(key)) {
      if (key === "cafile" && typeof value === "string" && value !== "" && !path56.isAbsolute(value)) {
        value = path56.resolve(npmrcDir, value);
      }
      result2[key] = value;
    }
  }
  return result2;
}
function substituteEnv(value, env3, warnings) {
  const { value: substituted, unresolved } = (0, import_config10.envReplaceLossy)(value, env3);
  for (const placeholder of unresolved) {
    warnings.push(`Failed to replace env in config: ${placeholder}`);
  }
  return substituted;
}
function normalizePath3(p) {
  if (p == null)
    return void 0;
  if (p.startsWith("~/") || p.startsWith("~\\")) {
    p = path56.join(os7.homedir(), p.slice(2));
  }
  return path56.resolve(p);
}
function isErrorWithCode(err, code) {
  return err != null && typeof err === "object" && "code" in err && err.code === code;
}
function findLocalPrefix(startDir) {
  let name = path56.resolve(startDir);
  let walkedUp = false;
  while (path56.basename(name) === "node_modules") {
    name = path56.dirname(name);
    walkedUp = true;
  }
  if (walkedUp) {
    return name;
  }
  return findPrefixUp(name, name);
}
function findPrefixUp(name, original) {
  const driveRootRegex = /^[a-z]:[/\\]?$/i;
  if (name === "/" || process.platform === "win32" && driveRootRegex.test(name)) {
    return original;
  }
  try {
    const files = fs31.readdirSync(name);
    if (files.includes("node_modules") || files.includes("package.json") || files.includes("package.json5") || files.includes("package.yaml") || files.includes("pnpm-workspace.yaml")) {
      return name;
    }
    const dirname2 = path56.dirname(name);
    if (dirname2 === name) {
      return original;
    }
    return findPrefixUp(dirname2, original);
  } catch (err) {
    if (name === original) {
      if (isErrorWithCode(err, "ENOENT")) {
        return original;
      }
      throw err;
    }
    return original;
  }
}
function loadCAFile(layers) {
  let cafile;
  for (const layer of layers) {
    if (typeof layer.cafile === "string") {
      cafile = layer.cafile;
      break;
    }
  }
  if (!cafile)
    return;
  try {
    const contents = fs31.readFileSync(cafile, "utf8");
    const delim = "-----END CERTIFICATE-----";
    const cas = contents.split(delim).filter((ca) => ca.trim().length > 0).map((ca) => `${ca.trimStart()}${delim}`);
    if (cas.length === 0)
      return;
    for (const layer of layers) {
      if (typeof layer.cafile === "string") {
        layer.ca = cas;
        break;
      }
    }
  } catch {
  }
}
var import_config10;
var init_loadNpmrcFiles = __esm({
  "../config/reader/lib/loadNpmrcFiles.js"() {
    "use strict";
    import_config10 = __toESM(require_dist5(), 1);
    init_read_ini_file();
    init_localConfig();
  }
});

// ../config/reader/lib/npmDefaults.js
import os8 from "node:os";
import path57 from "node:path";
var npmDefaults;
var init_npmDefaults = __esm({
  "../config/reader/lib/npmDefaults.js"() {
    "use strict";
    npmDefaults = {
      registry: "https://registry.npmjs.org/",
      "package-lock": true,
      "unsafe-perm": process.platform === "win32" || process.platform === "cygwin" || !(process.getuid && process.setuid && process.getgid && process.setgid) || process.getuid() !== 0,
      userconfig: path57.resolve(os8.homedir(), ".npmrc"),
      maxsockets: 50
    };
  }
});

// ../config/reader/lib/overrideSupportedArchitecturesWithCLI.js
function overrideSupportedArchitecturesWithCLI(targetConfig, cliOptions) {
  for (const key of CLI_OPTION_NAMES) {
    const values = cliOptions[key];
    if (values != null) {
      targetConfig.supportedArchitectures ??= {};
      targetConfig.supportedArchitectures[key] = typeof values === "string" ? [values] : values;
    }
  }
}
var CLI_OPTION_NAMES;
var init_overrideSupportedArchitecturesWithCLI = __esm({
  "../config/reader/lib/overrideSupportedArchitecturesWithCLI.js"() {
    "use strict";
    CLI_OPTION_NAMES = ["cpu", "libc", "os"];
  }
});

// ../config/reader/lib/transformPath.js
import { join as join2 } from "node:path";
function transformPathKeys(config, homedir) {
  for (const key of PATH_KEYS) {
    if (config[key]) {
      config[key] = transformPath(config[key], homedir);
    }
  }
}
var REGEX, transformPath, PATH_KEYS;
var init_transformPath = __esm({
  "../config/reader/lib/transformPath.js"() {
    "use strict";
    REGEX = /^~[/\\]/;
    transformPath = (path218, homedir) => REGEX.test(path218) ? join2(homedir, path218.replace(REGEX, "")) : path218;
    PATH_KEYS = [
      "cacheDir",
      "globalBinDir",
      "globalDir",
      "pnpmHomeDir",
      "storeDir"
    ];
  }
});

// ../config/reader/lib/types.js
import path58 from "node:path";
var pnpmTypes, types2;
var init_types = __esm({
  "../config/reader/lib/types.js"() {
    "use strict";
    init_npmConfigTypes();
    pnpmTypes = {
      "auto-install-peers": Boolean,
      bail: Boolean,
      ci: Boolean,
      "cache-dir": String,
      "catalog-mode": ["strict", "prefer", "manual"],
      "child-concurrency": Number,
      "merge-git-branch-lockfiles": Boolean,
      "merge-git-branch-lockfiles-branch-pattern": Array,
      color: ["always", "auto", "never"],
      "config-dir": String,
      "dangerously-allow-all-builds": Boolean,
      "deploy-all-files": Boolean,
      "dedupe-peer-dependents": Boolean,
      "dedupe-peers": Boolean,
      "dedupe-direct-deps": Boolean,
      "dedupe-injected-deps": Boolean,
      dev: [null, true],
      dir: String,
      "disallow-workspace-cycles": Boolean,
      "enable-modules-dir": Boolean,
      "enable-pre-post-scripts": Boolean,
      "enable-global-virtual-store": Boolean,
      "exclude-links-from-lockfile": Boolean,
      "extend-node-path": Boolean,
      "fetch-timeout": Number,
      "fetch-warn-timeout-ms": Number,
      "fetch-min-speed-ki-bps": Number,
      "fetching-concurrency": Number,
      filter: [String, Array],
      "filter-prod": [String, Array],
      "force-legacy-deploy": Boolean,
      "frozen-lockfile": Boolean,
      "git-checks": Boolean,
      "git-shallow-hosts": Array,
      "global-bin-dir": String,
      "global-dir": String,
      "global-path": String,
      "global-pnpmfile": String,
      "git-branch-lockfile": Boolean,
      hoist: Boolean,
      "http-proxy": [null, String],
      "hoist-pattern": Array,
      "hoist-workspace-packages": Boolean,
      "ignore-compatibility-db": Boolean,
      "ignore-pnpmfile": Boolean,
      "ignore-workspace": Boolean,
      "ignore-workspace-cycles": Boolean,
      "ignore-workspace-root-check": Boolean,
      "optimistic-repeat-install": Boolean,
      "include-workspace-root": Boolean,
      "init-package-manager": Boolean,
      "init-type": ["commonjs", "module"],
      "inject-workspace-packages": Boolean,
      "legacy-dir-filtering": Boolean,
      "link-workspace-packages": [Boolean, "deep"],
      lockfile: Boolean,
      "lockfile-dir": String,
      "lockfile-include-tarball-url": Boolean,
      "lockfile-only": Boolean,
      loglevel: ["silent", "error", "warn", "info", "debug"],
      maxsockets: Number,
      "modules-cache-max-age": Number,
      "dlx-cache-max-age": Number,
      "minimum-release-age": Number,
      "minimum-release-age-exclude": [String, Array],
      "minimum-release-age-ignore-missing-time": Boolean,
      "minimum-release-age-strict": Boolean,
      "modules-dir": String,
      "network-concurrency": Number,
      "node-linker": ["pnp", "isolated", "hoisted"],
      noproxy: String,
      "npm-path": String,
      "npmrc-auth-file": path58,
      offline: Boolean,
      "pack-destination": String,
      "pack-gzip-level": Number,
      "package-import-method": ["auto", "hardlink", "clone", "copy"],
      "patches-dir": String,
      pnpmfile: String,
      "pm-on-fail": ["download", "error", "warn", "ignore"],
      "prefer-frozen-lockfile": Boolean,
      "prefer-offline": Boolean,
      "prefer-symlinked-executables": Boolean,
      "prefer-workspace-packages": Boolean,
      "preserve-absolute-paths": Boolean,
      production: [null, true],
      "public-hoist-pattern": Array,
      "publish-branch": String,
      "recursive-install": Boolean,
      "block-exotic-subdeps": Boolean,
      reporter: String,
      "resolution-mode": ["highest", "time-based", "lowest-direct"],
      "resolve-peers-from-workspace-root": Boolean,
      runtime: Boolean,
      "runtime-on-fail": ["ignore", "warn", "error", "download"],
      "aggregate-output": Boolean,
      "reporter-hide-prefix": Boolean,
      "save-peer": Boolean,
      "save-catalog-name": String,
      "save-workspace-protocol": Boolean,
      "script-shell": String,
      "shamefully-hoist": Boolean,
      "shared-workspace-lockfile": Boolean,
      "shell-emulator": Boolean,
      "side-effects-cache": Boolean,
      "side-effects-cache-readonly": Boolean,
      symlink: Boolean,
      sort: Boolean,
      "state-dir": String,
      "store-dir": String,
      stream: Boolean,
      "strict-dep-builds": Boolean,
      "strict-store-pkg-content-check": Boolean,
      "strict-peer-dependencies": Boolean,
      "trust-lockfile": Boolean,
      "trust-policy": ["off", "no-downgrade"],
      "trust-policy-exclude": [String, Array],
      "trust-policy-ignore-after": Number,
      "use-beta-cli": Boolean,
      "use-stderr": Boolean,
      "verify-deps-before-run": Boolean,
      "verify-store-integrity": Boolean,
      "global-virtual-store-dir": String,
      "virtual-store-dir": String,
      "virtual-store-only": Boolean,
      "virtual-store-dir-max-length": Number,
      "peers-suffix-max-length": Number,
      "workspace-concurrency": Number,
      "workspace-packages": [String, Array],
      "workspace-root": Boolean,
      yes: Boolean,
      "test-pattern": [String, Array],
      "changed-files-ignore-pattern": [String, Array],
      "embed-readme": Boolean,
      "skip-manifest-obfuscation": Boolean,
      "update-notifier": Boolean,
      "agent": [null, String],
      "registry-supports-time-field": Boolean,
      "fail-if-no-match": Boolean,
      "sync-injected-deps-after-scripts": Array,
      cpu: [String, Array],
      libc: [String, Array],
      os: [String, Array],
      "audit-level": ["low", "moderate", "high", "critical"]
    };
    types2 = {
      ...pnpmTypes,
      ...npmConfigTypes
    };
  }
});

// ../config/reader/lib/Config.js
var PROJECT_CONFIG_FIELDS;
var init_Config = __esm({
  "../config/reader/lib/Config.js"() {
    "use strict";
    PROJECT_CONFIG_FIELDS = [
      "hoist",
      "modulesDir",
      "overrides",
      "saveExact",
      "savePrefix"
    ];
  }
});

// ../config/reader/lib/projectConfig.js
function createProjectConfigRecord(opts2) {
  return createProjectConfigRecordFromConfigSet(opts2.packageConfigs);
}
function createProjectConfigFromRaw(config) {
  if (typeof config !== "object" || !config || Array.isArray(config)) {
    throw new ProjectConfigIsNotAnObjectError(config);
  }
  if ("hoist" in config && config.hoist !== void 0 && typeof config.hoist !== "boolean") {
    throw new ProjectConfigInvalidValueTypeError("boolean", config.hoist);
  }
  if ("modulesDir" in config && config.modulesDir !== void 0 && typeof config.modulesDir !== "string") {
    throw new ProjectConfigInvalidValueTypeError("string", config.modulesDir);
  }
  if ("saveExact" in config && config.saveExact !== void 0 && typeof config.saveExact !== "boolean") {
    throw new ProjectConfigInvalidValueTypeError("boolean", config.saveExact);
  }
  if ("savePrefix" in config && config.savePrefix !== void 0 && typeof config.savePrefix !== "string") {
    throw new ProjectConfigInvalidValueTypeError("string", config.savePrefix);
  }
  if ("overrides" in config && config.overrides !== void 0 && (typeof config.overrides !== "object" || config.overrides === null || Array.isArray(config.overrides))) {
    throw new ProjectConfigInvalidValueTypeError("object", config.overrides);
  }
  for (const key in config) {
    if (config[key] !== void 0 && !PROJECT_CONFIG_FIELDS.includes(key)) {
      throw new ProjectConfigUnsupportedFieldError(key);
    }
  }
  const result2 = config;
  if (result2.hoist === false) {
    return { ...result2, hoistPattern: void 0 };
  }
  return result2;
}
function createProjectConfigRecordFromConfigSet(configSet2) {
  if (configSet2 == null)
    return void 0;
  if (typeof configSet2 !== "object")
    throw new ProjectConfigsIsNeitherObjectNorArrayError(configSet2);
  const result2 = {};
  if (!Array.isArray(configSet2)) {
    for (const projectName in configSet2) {
      const projectConfig = configSet2[projectName];
      result2[projectName] = createProjectConfigFromRaw(projectConfig);
    }
    return result2;
  }
  for (const item of configSet2) {
    if (!item || typeof item !== "object" || Array.isArray(item)) {
      throw new ProjectConfigsArrayItemIsNotAnObjectError(item);
    }
    if (!("match" in item)) {
      throw new ProjectConfigsArrayItemMatchIsNotDefinedError();
    }
    if (typeof item.match !== "object" || !Array.isArray(item.match)) {
      throw new ProjectConfigsArrayItemMatchIsNotAnArrayError(item.match);
    }
    const projectConfig = createProjectConfigFromRaw(withoutMatch(item));
    for (const projectName of item.match) {
      if (typeof projectName !== "string") {
        throw new ProjectConfigsMatchItemIsNotAStringError(projectName);
      }
      result2[projectName] = projectConfig;
    }
  }
  return result2;
}
var ProjectConfigIsNotAnObjectError, ProjectConfigInvalidValueTypeError, ProjectConfigUnsupportedFieldError, ProjectConfigsIsNeitherObjectNorArrayError, ProjectConfigsArrayItemIsNotAnObjectError, ProjectConfigsArrayItemMatchIsNotDefinedError, ProjectConfigsArrayItemMatchIsNotAnArrayError, ProjectConfigsMatchItemIsNotAStringError, withoutMatch;
var init_projectConfig = __esm({
  "../config/reader/lib/projectConfig.js"() {
    "use strict";
    init_lib2();
    init_es();
    init_Config();
    ProjectConfigIsNotAnObjectError = class extends PnpmError {
      actualRawConfig;
      constructor(actualRawConfig) {
        super("PROJECT_CONFIG_NOT_AN_OBJECT", `Expecting project-specific config to be an object, but received ${JSON.stringify(actualRawConfig)}`);
        this.actualRawConfig = actualRawConfig;
      }
    };
    ProjectConfigInvalidValueTypeError = class extends PnpmError {
      expectedType;
      actualType;
      actualValue;
      constructor(expectedType, actualValue) {
        const actualType = typeof actualValue;
        super("PROJECT_CONFIG_INVALID_VALUE_TYPE", `Expecting a value of type ${expectedType} but received a value of type ${actualType}: ${JSON.stringify(actualValue)}`);
        this.expectedType = expectedType;
        this.actualType = actualType;
        this.actualValue = actualValue;
      }
    };
    ProjectConfigUnsupportedFieldError = class extends PnpmError {
      field;
      constructor(field) {
        super("PROJECT_CONFIG_UNSUPPORTED_FIELD", `Field ${field} is not supported but was specified`);
        this.field = field;
      }
    };
    ProjectConfigsIsNeitherObjectNorArrayError = class extends PnpmError {
      configSet;
      constructor(configSet2) {
        super("PROJECT_CONFIGS_IS_NEITHER_OBJECT_NOR_ARRAY", `Expecting packageConfigs to be either an object or an array but received ${JSON.stringify(configSet2)}`);
        this.configSet = configSet2;
      }
    };
    ProjectConfigsArrayItemIsNotAnObjectError = class extends PnpmError {
      item;
      constructor(item) {
        super("PROJECT_CONFIGS_ARRAY_ITEM_IS_NOT_AN_OBJECT", `Expecting a packageConfigs item to be an object but received ${JSON.stringify(item)}`);
        this.item = item;
      }
    };
    ProjectConfigsArrayItemMatchIsNotDefinedError = class extends PnpmError {
      constructor() {
        super("PROJECT_CONFIGS_ARRAY_ITEM_MATCH_IS_NOT_DEFINED", "A packageConfigs match is not defined");
      }
    };
    ProjectConfigsArrayItemMatchIsNotAnArrayError = class extends PnpmError {
      match;
      constructor(match) {
        super("PROJECT_CONFIGS_ARRAY_ITEM_MATCH_IS_NOT_AN_ARRAY", `Expecting a packageConfigs match to be an array but received ${JSON.stringify(match)}`);
        this.match = match;
      }
    };
    ProjectConfigsMatchItemIsNotAStringError = class extends PnpmError {
      matchItem;
      constructor(matchItem) {
        super("PROJECT_CONFIGS_MATCH_ITEM_IS_NOT_A_STRING", `Expecting a match item to be a string but received ${JSON.stringify(matchItem)}`);
        this.matchItem = matchItem;
      }
    };
    withoutMatch = omit_default(["match"]);
  }
});

// ../config/reader/lib/index.js
import fs32 from "node:fs";
import os9 from "node:os";
import path59 from "node:path";
async function getConfig(opts2) {
  if (opts2.onlyInheritDlxSettingsFromLocal) {
    const { onlyInheritDlxSettingsFromLocal: _, ...localOpts } = opts2;
    const globalCfgOpts = {
      ...localOpts,
      ignoreLocalSettings: true,
      cliOptions: {
        ...localOpts.cliOptions,
        dir: os9.homedir()
      }
    };
    const [final, localSrc] = await Promise.all([getConfig(globalCfgOpts), getConfig(localOpts)]);
    inheritDlxConfig(final, localSrc);
    final.warnings.push(...localSrc.warnings);
    return final;
  }
  const env3 = opts2.env ?? process.env;
  const packageManager2 = opts2.packageManager ?? { name: "pnpm", version: "undefined" };
  const cliOptions = opts2.cliOptions ?? {};
  if (cliOptions["hoist"] === false) {
    if (cliOptions["shamefully-hoist"] === true) {
      throw new PnpmError("CONFIG_CONFLICT_HOIST", "--shamefully-hoist cannot be used with --no-hoist");
    }
    if (cliOptions["hoist-pattern"]) {
      throw new PnpmError("CONFIG_CONFLICT_HOIST", "--hoist-pattern cannot be used with --no-hoist");
    }
  }
  if (cliOptions.dir) {
    cliOptions.dir = await realpathMissing(cliOptions.dir);
  }
  const defaultOptions4 = {
    "auto-install-peers": true,
    bail: true,
    "catalog-mode": "manual",
    ci: import_ci_info.isCI,
    color: "auto",
    "dangerously-allow-all-builds": false,
    "deploy-all-files": false,
    "dedupe-peer-dependents": true,
    "dedupe-peers": false,
    "dedupe-direct-deps": false,
    "dedupe-injected-deps": true,
    "disallow-workspace-cycles": false,
    "enable-modules-dir": true,
    "enable-pre-post-scripts": true,
    "exclude-links-from-lockfile": false,
    "extend-node-path": true,
    "fail-if-no-match": false,
    "fetch-retries": 2,
    "fetch-retry-factor": 10,
    "fetch-retry-maxtimeout": 6e4,
    "fetch-retry-mintimeout": 1e4,
    "fetch-timeout": 6e4,
    "fetch-warn-timeout-ms": 1e4,
    // 10 sec
    "fetch-min-speed-ki-bps": 50,
    // 50 KiB/s
    "force-legacy-deploy": false,
    "git-shallow-hosts": [
      // Follow https://github.com/npm/git/blob/1e1dbd26bd5b87ca055defecc3679777cb480e2a/lib/clone.js#L13-L19
      "github.com",
      "gist.github.com",
      "gitlab.com",
      "bitbucket.com",
      "bitbucket.org"
    ],
    "git-branch-lockfile": false,
    hoist: true,
    "hoist-pattern": ["*"],
    "hoist-workspace-packages": true,
    "ignore-workspace-cycles": false,
    "ignore-workspace-root-check": false,
    "optimistic-repeat-install": true,
    optional: true,
    "init-package-manager": true,
    "init-type": "module",
    "inject-workspace-packages": false,
    "link-workspace-packages": false,
    "lockfile-include-tarball-url": false,
    "minimum-release-age": 24 * 60,
    // 1 day
    "minimum-release-age-ignore-missing-time": true,
    "modules-cache-max-age": 7 * 24 * 60,
    // 7 days
    "dlx-cache-max-age": 24 * 60,
    // 1 day
    "node-linker": "isolated",
    "package-lock": npmDefaults["package-lock"],
    pending: false,
    "prefer-workspace-packages": false,
    "public-hoist-pattern": [],
    "recursive-install": true,
    registry: npmDefaults.registry,
    "block-exotic-subdeps": true,
    "resolution-mode": "highest",
    "resolve-peers-from-workspace-root": true,
    "save-peer": false,
    "save-catalog-name": void 0,
    "save-workspace-protocol": "rolling",
    "scripts-prepend-node-path": false,
    "strict-dep-builds": true,
    "side-effects-cache": true,
    symlink: true,
    "shared-workspace-lockfile": true,
    "shell-emulator": false,
    "strict-store-pkg-content-check": true,
    reverse: false,
    sort: true,
    "strict-peer-dependencies": false,
    "unsafe-perm": npmDefaults["unsafe-perm"],
    "use-beta-cli": false,
    userconfig: npmDefaults.userconfig,
    "verify-deps-before-run": "install",
    "verify-store-integrity": true,
    "workspace-concurrency": getDefaultWorkspaceConcurrency(),
    "workspace-prefix": opts2.workspaceDir,
    "embed-readme": false,
    "skip-manifest-obfuscation": false,
    "registry-supports-time-field": false,
    "virtual-store-dir-max-length": (0, import_is_windows6.default)() ? 60 : 120,
    "virtual-store-only": false,
    "peers-suffix-max-length": 1e3
  };
  const configDir = getConfigDir(process);
  const globalYamlConfigForNpmrcAuthFile = await readWorkspaceManifest(configDir, GLOBAL_CONFIG_YAML_FILENAME);
  const npmrcAuthFile = cliOptions["npmrc-auth-file"] ?? cliOptions.userconfig ?? readEnvVar(env3, "npmrc_auth_file") ?? readEnvVar(env3, "userconfig") ?? globalYamlConfigForNpmrcAuthFile?.npmrcAuthFile ?? readNpmEnvVar(env3, "userconfig");
  const npmrcResult = loadNpmrcConfig({
    cliOptions,
    defaultOptions: defaultOptions4,
    dir: cliOptions.dir,
    workspaceDir: opts2.workspaceDir,
    npmrcAuthFile,
    configDir,
    moduleDirname: import.meta.dirname,
    env: opts2.env
  });
  const warnings = npmrcResult.warnings;
  const configFromCliOpts = Object.fromEntries(Object.entries(cliOptions).filter(([_, value]) => typeof value !== "undefined").map(([name, value]) => [camelCase(name, { locale: "en-US" }), value]));
  const pnpmConfig = Object.fromEntries(Object.entries(defaultOptions4).map(([key, value]) => [camelCase(key, { locale: "en-US" }), value]));
  for (const [key, value] of Object.entries(npmrcResult.mergedConfig)) {
    if (Object.hasOwn(types2, key)) {
      ;
      pnpmConfig[camelCase(key, { locale: "en-US" })] = value;
    }
  }
  const globalDepsBuildConfig = extractAndRemoveDependencyBuildOptions(pnpmConfig);
  const explicitlySetKeys = new Set(Object.keys(configFromCliOpts));
  pnpmConfig.explicitlySetKeys = explicitlySetKeys;
  pnpmConfig.cliOptions = cliOptions;
  Object.assign(pnpmConfig, configFromCliOpts);
  const cwd = fs32.realpathSync(betterPathResolve(cliOptions.dir ?? npmrcResult.localPrefix));
  if (cwd.includes(path59.delimiter)) {
    warnings.push(`Directory "${cwd}" contains the path delimiter character (${path59.delimiter}), so binaries from node_modules/.bin will not be accessible via PATH. Consider renaming the directory.`);
  }
  pnpmConfig.maxSockets = pnpmConfig.maxSockets ?? pnpmConfig["maxsockets"] ?? npmDefaults.maxsockets;
  delete pnpmConfig["maxsockets"];
  pnpmConfig.configDir = configDir;
  pnpmConfig.workspaceDir = opts2.workspaceDir;
  pnpmConfig.workspaceRoot = cliOptions["workspace-root"];
  pnpmConfig.userAgent = cliOptions["user-agent"] ?? `${packageManager2.name}/${packageManager2.version} npm/? node/${process.version} ${process.platform} ${process.arch}`;
  pnpmConfig.authConfig = pickIniConfig(npmrcResult.rawConfig);
  const globalYamlConfig = globalYamlConfigForNpmrcAuthFile;
  if (globalYamlConfig) {
    const ignoredKeys = [];
    for (const key in globalYamlConfig) {
      if (!isConfigFileKey((0, import_lodash3.default)(key))) {
        ignoredKeys.push(key);
        delete globalYamlConfig[key];
      }
    }
    if (ignoredKeys.length > 0) {
      const globalYamlConfigPath = path59.join(configDir, GLOBAL_CONFIG_YAML_FILENAME);
      warnings.push(`The following settings cannot be set in the global config file ("${globalYamlConfigPath}") and were ignored: ${ignoredKeys.map((k2) => `"${k2}"`).join(", ")}. Move them to a project-level pnpm-workspace.yaml. To share these settings across projects, use config dependencies: https://pnpm.io/11.x/config-dependencies`);
    }
    addSettingsFromWorkspaceManifestToConfig(pnpmConfig, {
      configFromCliOpts,
      projectManifest: void 0,
      workspaceDir: void 0,
      workspaceManifest: globalYamlConfig
    });
  }
  const networkConfigs = getNetworkConfigs(pnpmConfig.authConfig);
  const registriesFromNpmrc = {
    default: (0, import_normalize_registry_url2.default)(pnpmConfig.authConfig.registry),
    ...networkConfigs.registries
  };
  pnpmConfig.registries = { ...registriesFromNpmrc };
  const defaultCreds = getDefaultCreds(pnpmConfig.authConfig);
  pnpmConfig.configByUri = {
    ...networkConfigs.configByUri,
    ...defaultCreds ? { "": { creds: defaultCreds } } : {}
  };
  const userConfig = npmrcResult.userConfig;
  for (const [key, value] of Object.entries(pnpmConfig.authConfig)) {
    if (!key.endsWith("tokenHelper") && key !== "tokenHelper")
      continue;
    if (!(key in userConfig) || userConfig[key] !== value) {
      throw new PnpmError("TOKEN_HELPER_IN_PROJECT_CONFIG", "tokenHelper must not be configured in project-level .npmrc", { hint: `The key "${key}" was found in project config. Move it to ~/.npmrc or the global pnpm auth.ini.` });
    }
  }
  pnpmConfig.pnpmHomeDir = getDataDir({ env: env3, platform: process.platform });
  let globalDirRoot;
  if (pnpmConfig.globalDir) {
    globalDirRoot = pnpmConfig.globalDir;
  } else {
    globalDirRoot = path59.join(pnpmConfig.pnpmHomeDir, "global");
  }
  pnpmConfig.globalPkgDir = path59.join(globalDirRoot, GLOBAL_LAYOUT_VERSION);
  pnpmConfig.dir = cwd;
  if (cliOptions["global"]) {
    delete pnpmConfig.workspaceDir;
    pnpmConfig.bin = pnpmConfig.globalBinDir ?? path59.join(pnpmConfig.pnpmHomeDir, "bin");
    if (pnpmConfig.bin) {
      fs32.mkdirSync(pnpmConfig.bin, { recursive: true });
      await checkGlobalBinDir(pnpmConfig.bin, { env: env3, shouldAllowWrite: opts2.globalDirShouldAllowWrite });
    }
    pnpmConfig.save = true;
    pnpmConfig.allowNew = true;
    pnpmConfig.ignoreCurrentSpecifiers = true;
    pnpmConfig.saveProd = true;
    pnpmConfig.saveDev = false;
    pnpmConfig.saveOptional = false;
    if (pnpmConfig.hoistPattern != null && (pnpmConfig.hoistPattern.length > 1 || pnpmConfig.hoistPattern[0] !== "*")) {
      if (opts2.cliOptions["hoist-pattern"]) {
        throw new PnpmError("CONFIG_CONFLICT_HOIST_PATTERN_WITH_GLOBAL", 'Configuration conflict. "hoist-pattern" may not be used with "global"');
      }
    }
    if (pnpmConfig.linkWorkspacePackages) {
      if (opts2.cliOptions["link-workspace-packages"]) {
        throw new PnpmError("CONFIG_CONFLICT_LINK_WORKSPACE_PACKAGES_WITH_GLOBAL", 'Configuration conflict. "link-workspace-packages" may not be used with "global"');
      }
      pnpmConfig.linkWorkspacePackages = false;
    }
    if (pnpmConfig.sharedWorkspaceLockfile) {
      if (opts2.cliOptions["shared-workspace-lockfile"]) {
        throw new PnpmError("CONFIG_CONFLICT_SHARED_WORKSPACE_LOCKFILE_WITH_GLOBAL", 'Configuration conflict. "shared-workspace-lockfile" may not be used with "global"');
      }
      pnpmConfig.sharedWorkspaceLockfile = false;
    }
    if (pnpmConfig.lockfileDir) {
      if (opts2.cliOptions["lockfile-dir"]) {
        throw new PnpmError("CONFIG_CONFLICT_LOCKFILE_DIR_WITH_GLOBAL", 'Configuration conflict. "lockfile-dir" may not be used with "global"');
      }
      delete pnpmConfig.lockfileDir;
    }
    if (opts2.cliOptions["virtual-store-dir"]) {
      throw new PnpmError("CONFIG_CONFLICT_VIRTUAL_STORE_DIR_WITH_GLOBAL", 'Configuration conflict. "virtual-store-dir" may not be used with "global"');
    }
    if (pnpmConfig.enableGlobalVirtualStore == null) {
      pnpmConfig.enableGlobalVirtualStore = true;
    }
  } else if (!pnpmConfig.bin) {
    pnpmConfig.bin = path59.join(pnpmConfig.dir, "node_modules", ".bin");
  }
  pnpmConfig.packageManager = packageManager2;
  pnpmConfig.rootProjectManifestDir = pnpmConfig.lockfileDir ?? pnpmConfig.workspaceDir ?? pnpmConfig.dir;
  if (!opts2.ignoreLocalSettings) {
    pnpmConfig.rootProjectManifest = await safeReadProjectManifestOnly(pnpmConfig.rootProjectManifestDir) ?? void 0;
    if (pnpmConfig.rootProjectManifest != null) {
      if (pnpmConfig.rootProjectManifest.workspaces?.length && !pnpmConfig.workspaceDir) {
        warnings.push('The "workspaces" field in package.json is not supported by pnpm. Create a "pnpm-workspace.yaml" file instead.');
      }
      const ignoredPnpmFieldKeys = getIgnoredPnpmFieldKeys(pnpmConfig.rootProjectManifest);
      if (ignoredPnpmFieldKeys.length > 0) {
        warnings.push(`The "pnpm" field in package.json is no longer read by pnpm. The following keys were ignored: ${ignoredPnpmFieldKeys.map((k2) => `"pnpm.${k2}"`).join(", ")}. See https://pnpm.io/settings for the new home of each setting.`);
      }
      const wantedPmResult = getWantedPackageManager(pnpmConfig.rootProjectManifest);
      if (wantedPmResult.pm) {
        pnpmConfig.wantedPackageManager = wantedPmResult.pm;
      }
      warnings.push(...wantedPmResult.warnings);
      if (pnpmConfig.nodeVersion == null) {
        pnpmConfig.nodeVersion = getNodeVersionFromEnginesRuntime(pnpmConfig.rootProjectManifest);
      }
    }
    if (pnpmConfig.workspaceDir != null) {
      const workspaceManifest = await readWorkspaceManifest(pnpmConfig.workspaceDir);
      pnpmConfig.workspacePackagePatterns = cliOptions["workspace-packages"] ?? workspaceManifest?.packages ?? ["."];
      if (workspaceManifest) {
        addSettingsFromWorkspaceManifestToConfig(pnpmConfig, {
          configFromCliOpts,
          projectManifest: pnpmConfig.rootProjectManifest,
          workspaceDir: pnpmConfig.workspaceDir,
          workspaceManifest
        });
      }
    } else if (cliOptions["global"]) {
      const workspaceManifest = await readWorkspaceManifest(pnpmConfig.globalPkgDir);
      if (workspaceManifest) {
        addSettingsFromWorkspaceManifestToConfig(pnpmConfig, {
          configFromCliOpts,
          projectManifest: pnpmConfig.rootProjectManifest,
          workspaceDir: pnpmConfig.globalPkgDir,
          workspaceManifest
        });
      }
    }
  }
  const workspaceRegistries = pnpmConfig.registries;
  pnpmConfig.registries = {
    ...registriesFromNpmrc,
    ...workspaceRegistries
  };
  if (!pnpmConfig.registries.default) {
    pnpmConfig.registries.default = registriesFromNpmrc.default;
  }
  for (const [scope, url7] of Object.entries(pnpmConfig.registries)) {
    if (typeof url7 === "string") {
      pnpmConfig.registries[scope] = (0, import_normalize_registry_url2.default)(url7);
    }
  }
  if (!explicitlySetKeys.has("registry") && pnpmConfig.registries.default !== registriesFromNpmrc.default) {
    pnpmConfig.registry = pnpmConfig.registries.default;
  }
  const envPnpmTypes = omit_default([
    "init-version",
    // the type is a private function named 'semver'
    "node-version",
    // the type is a private function named 'semver'
    "umask"
    // the type is a private function named 'Umask'
  ], types2);
  for (const { key, value } of parseEnvVars((key2) => envPnpmTypes[key2], env3)) {
    if (value === void 0)
      continue;
    if (Object.hasOwn(cliOptions, key) || Object.hasOwn(cliOptions, (0, import_lodash3.default)(key)))
      continue;
    pnpmConfig[key] = value;
    explicitlySetKeys.add(key);
    if (key === "registry") {
      if (typeof value !== "string") {
        throw new TypeError(`Unexpected type of registry, expecting a string but received ${JSON.stringify(value)}`);
      }
      pnpmConfig.registries.default = (0, import_normalize_registry_url2.default)(value);
    }
  }
  if (pnpmConfig.explicitlySetKeys.has("minimumReleaseAge") && pnpmConfig.minimumReleaseAgeStrict == null) {
    pnpmConfig.minimumReleaseAgeStrict = true;
  }
  overrideSupportedArchitecturesWithCLI(pnpmConfig, cliOptions);
  pnpmConfig.useLockfile = (() => {
    if (typeof pnpmConfig.lockfile === "boolean")
      return pnpmConfig.lockfile;
    if (typeof pnpmConfig.packageLock === "boolean")
      return pnpmConfig.packageLock;
    return false;
  })();
  pnpmConfig.useGitBranchLockfile = (() => {
    if (typeof pnpmConfig.gitBranchLockfile === "boolean")
      return pnpmConfig.gitBranchLockfile;
    return false;
  })();
  pnpmConfig.mergeGitBranchLockfiles = await (async () => {
    if (typeof pnpmConfig.mergeGitBranchLockfiles === "boolean")
      return pnpmConfig.mergeGitBranchLockfiles;
    if (pnpmConfig.mergeGitBranchLockfilesBranchPattern != null && pnpmConfig.mergeGitBranchLockfilesBranchPattern.length > 0) {
      const branch = await getCurrentBranch();
      if (branch) {
        const branchMatcher = createMatcher(pnpmConfig.mergeGitBranchLockfilesBranchPattern);
        return branchMatcher(branch);
      }
    }
    return void 0;
  })();
  if (!hasDependencyBuildOptions(pnpmConfig)) {
    Object.assign(pnpmConfig, globalDepsBuildConfig);
  }
  if (pnpmConfig.enableGlobalVirtualStore && pnpmConfig.allowBuilds == null && pnpmConfig.dangerouslyAllowAllBuilds !== true) {
    pnpmConfig.allowBuilds = {};
  }
  if (opts2.cliOptions["save-peer"]) {
    if (opts2.cliOptions["save-prod"]) {
      throw new PnpmError("CONFIG_CONFLICT_PEER_CANNOT_BE_PROD_DEP", "A package cannot be a peer dependency and a prod dependency at the same time");
    }
    if (opts2.cliOptions["save-optional"]) {
      throw new PnpmError("CONFIG_CONFLICT_PEER_CANNOT_BE_OPTIONAL_DEP", "A package cannot be a peer dependency and an optional dependency at the same time");
    }
  }
  if (typeof pnpmConfig.filter === "string") {
    pnpmConfig.filter = pnpmConfig.filter.split(" ");
  }
  if (typeof pnpmConfig.filterProd === "string") {
    pnpmConfig.filterProd = pnpmConfig.filterProd.split(" ");
  }
  if (pnpmConfig.workspaceDir) {
    pnpmConfig.extraBinPaths = [path59.join(pnpmConfig.workspaceDir, "node_modules", ".bin")];
  } else {
    pnpmConfig.extraBinPaths = [];
  }
  pnpmConfig.extraEnv = {
    pnpm_config_verify_deps_before_run: "false"
  };
  if (pnpmConfig.preferSymlinkedExecutables && !(0, import_is_windows6.default)()) {
    const cwd2 = pnpmConfig.lockfileDir ?? pnpmConfig.dir;
    const virtualStoreDir = pnpmConfig.virtualStoreDir ? pnpmConfig.virtualStoreDir : pnpmConfig.modulesDir ? path59.join(pnpmConfig.modulesDir, ".pnpm") : "node_modules/.pnpm";
    pnpmConfig.extraEnv["NODE_PATH"] = pathAbsolute(path59.join(virtualStoreDir, "node_modules"), cwd2);
  }
  if (!pnpmConfig.cacheDir) {
    pnpmConfig.cacheDir = getCacheDir(process);
  }
  if (!pnpmConfig.stateDir) {
    pnpmConfig.stateDir = getStateDir(process);
  }
  if (typeof pnpmConfig["color"] === "boolean") {
    switch (pnpmConfig["color"]) {
      case true:
        pnpmConfig.color = "always";
        break;
      case false:
        pnpmConfig.color = "never";
        break;
      default:
        pnpmConfig.color = "auto";
        break;
    }
  }
  if (!pnpmConfig.httpsProxy) {
    pnpmConfig.httpsProxy = pnpmConfig.proxy ?? getProcessEnv("https_proxy");
  }
  if (!pnpmConfig.httpProxy) {
    pnpmConfig.httpProxy = pnpmConfig.httpsProxy ?? getProcessEnv("http_proxy") ?? getProcessEnv("proxy");
  }
  if (!pnpmConfig.noProxy) {
    pnpmConfig.noProxy = pnpmConfig["noproxy"] ?? getProcessEnv("no_proxy");
  }
  switch (pnpmConfig.nodeLinker) {
    case "pnp":
      pnpmConfig.enablePnp = pnpmConfig.nodeLinker === "pnp";
      break;
    case "hoisted":
      if (pnpmConfig.preferSymlinkedExecutables == null) {
        pnpmConfig.preferSymlinkedExecutables = true;
      }
      break;
  }
  if (!pnpmConfig.userConfig) {
    pnpmConfig.userConfig = npmrcResult.userConfig;
  }
  pnpmConfig.sideEffectsCacheRead = pnpmConfig.sideEffectsCache ?? pnpmConfig.sideEffectsCacheReadonly;
  pnpmConfig.sideEffectsCacheWrite = pnpmConfig.sideEffectsCache;
  if (pnpmConfig.sharedWorkspaceLockfile && !pnpmConfig.lockfileDir && pnpmConfig.workspaceDir) {
    pnpmConfig.lockfileDir = pnpmConfig.workspaceDir;
  }
  pnpmConfig.workspaceConcurrency = getWorkspaceConcurrency(pnpmConfig.workspaceConcurrency);
  if (pnpmConfig.only === "prod" || pnpmConfig.only === "production" || !pnpmConfig.only && pnpmConfig.production) {
    pnpmConfig.production = true;
    pnpmConfig.dev = false;
  } else if (pnpmConfig.only === "dev" || pnpmConfig.only === "development" || pnpmConfig.dev) {
    pnpmConfig.production = false;
    pnpmConfig.dev = true;
    pnpmConfig.optional = false;
  } else {
    pnpmConfig.production = true;
    pnpmConfig.dev = true;
  }
  if (pnpmConfig.ci && pnpmConfig.enableGlobalVirtualStore == null) {
    pnpmConfig.enableGlobalVirtualStore = false;
  }
  delete pnpmConfig.yes;
  if (cliOptions.yes) {
    pnpmConfig.autoConfirmAllPrompts = true;
  }
  transformPathKeys(pnpmConfig, os9.homedir());
  if (pnpmConfig.wantedPackageManager) {
    if (pnpmConfig.pmOnFail) {
      pnpmConfig.wantedPackageManager.onFail = pnpmConfig.pmOnFail;
    } else if (pnpmConfig.wantedPackageManager.onFail == null) {
      pnpmConfig.wantedPackageManager.onFail = "download";
    }
  }
  if (pnpmConfig.runtimeOnFail && pnpmConfig.rootProjectManifest) {
    applyRuntimeOnFailOverride(pnpmConfig.rootProjectManifest, pnpmConfig.runtimeOnFail);
  }
  const { hooks, finders, allProjects, selectedProjectsGraph, allProjectsGraph, rootProjectManifest, rootProjectManifestDir, cliOptions: ctxCliOptions, explicitlySetKeys: ctxExplicitlySetKeys, packageManager: ctxPackageManager, wantedPackageManager, ...config } = pnpmConfig;
  const context = {
    hooks,
    finders,
    allProjects,
    selectedProjectsGraph,
    allProjectsGraph,
    rootProjectManifest,
    rootProjectManifestDir,
    cliOptions: ctxCliOptions,
    explicitlySetKeys: ctxExplicitlySetKeys,
    packageManager: ctxPackageManager,
    wantedPackageManager
  };
  return { config, context, warnings };
}
function getProcessEnv(env3) {
  return process.env[env3] ?? process.env[env3.toUpperCase()] ?? process.env[env3.toLowerCase()];
}
function readEnvVar(env3, key) {
  const value = env3[`pnpm_config_${key}`] ?? env3[`PNPM_CONFIG_${key.toUpperCase()}`];
  return value !== "" ? value : void 0;
}
function readNpmEnvVar(env3, key) {
  const value = env3[`npm_config_${key}`] ?? env3[`NPM_CONFIG_${key.toUpperCase()}`];
  return value !== "" ? value : void 0;
}
function getWantedPackageManager(manifest) {
  const warnings = [];
  const pmFromDevEngines = parseDevEnginesPackageManager(manifest.devEngines);
  if (pmFromDevEngines) {
    if (pmFromDevEngines.version != null && !import_semver18.default.validRange(pmFromDevEngines.version)) {
      warnings.push(`Cannot use devEngines.packageManager version "${pmFromDevEngines.version}": not a valid version or range`);
      pmFromDevEngines.version = void 0;
    }
    if (manifest.packageManager) {
      const legacyPm = parsePackageManager(manifest.packageManager);
      if (legacyPm.name !== pmFromDevEngines.name || legacyPm.version !== pmFromDevEngines.version) {
        warnings.push('Cannot use both "packageManager" and "devEngines.packageManager" in package.json. "packageManager" will be ignored');
      }
    }
    return { pm: { ...pmFromDevEngines, fromDevEngines: true }, warnings };
  }
  if (manifest.packageManager) {
    const pm2 = parsePackageManager(manifest.packageManager);
    if (pm2.version != null) {
      const cleanVersion = import_semver18.default.valid(pm2.version);
      if (!cleanVersion) {
        warnings.push(`Cannot use packageManager "${manifest.packageManager}": "${pm2.version}" is not a valid exact version`);
        pm2.version = void 0;
      } else if (cleanVersion !== pm2.version) {
        warnings.push(`Cannot use packageManager "${manifest.packageManager}": you need to specify the version as "${cleanVersion}"`);
        pm2.version = void 0;
      }
    }
    return { pm: pm2, warnings };
  }
  return { warnings };
}
function getIgnoredPnpmFieldKeys(manifest) {
  const legacyField = manifest.pnpm;
  if (legacyField == null || typeof legacyField !== "object" || Array.isArray(legacyField)) {
    return [];
  }
  return Object.keys(legacyField).filter((k2) => MIGRATED_PNPM_FIELD_KEYS.has(k2));
}
function parsePackageManager(packageManager2) {
  if (!packageManager2.includes("@"))
    return { name: packageManager2, version: void 0 };
  const [name, pmReference] = packageManager2.split("@");
  if (pmReference.includes(":"))
    return { name, version: void 0 };
  const [version2] = pmReference.split("+");
  return {
    name,
    version: version2
  };
}
function parseDevEnginesPackageManager(devEngines) {
  if (!devEngines?.packageManager)
    return void 0;
  let pmEngine;
  let onFail;
  if (Array.isArray(devEngines.packageManager)) {
    const engines = devEngines.packageManager;
    if (engines.length === 0)
      return void 0;
    const pnpmIndex = engines.findIndex((engine) => engine.name === "pnpm");
    if (pnpmIndex !== -1) {
      pmEngine = engines[pnpmIndex];
      onFail = pmEngine.onFail ?? (pnpmIndex === engines.length - 1 ? "error" : "ignore");
    } else {
      pmEngine = engines[0];
      const lastEngine = engines[engines.length - 1];
      onFail = lastEngine.onFail ?? "error";
    }
  } else {
    pmEngine = devEngines.packageManager;
    onFail = pmEngine.onFail;
  }
  if (!pmEngine?.name)
    return void 0;
  return {
    name: pmEngine.name,
    version: pmEngine.version,
    onFail
  };
}
function getNodeVersionFromEnginesRuntime(manifest) {
  for (const enginesFieldName of ["devEngines", "engines"]) {
    const enginesRuntime = manifest[enginesFieldName]?.runtime;
    if (enginesRuntime == null)
      continue;
    const runtimes = Array.isArray(enginesRuntime) ? enginesRuntime : [enginesRuntime];
    const nodeRuntime = runtimes.find((r) => r.name === "node");
    if (nodeRuntime?.version == null)
      continue;
    const minVersion = import_semver18.default.minVersion(nodeRuntime.version);
    if (minVersion != null) {
      return minVersion.version;
    }
  }
  return void 0;
}
function addSettingsFromWorkspaceManifestToConfig(pnpmConfig, { configFromCliOpts, projectManifest, workspaceManifest, workspaceDir }) {
  const newSettings = Object.assign(getOptionsFromPnpmSettings(workspaceDir, workspaceManifest, projectManifest), configFromCliOpts);
  for (const [key, value] of Object.entries(newSettings)) {
    if (!isCamelCase(key))
      continue;
    pnpmConfig[key] = value;
    pnpmConfig.explicitlySetKeys.add(key);
  }
  if (process.env.pnpm_config_verify_deps_before_run != null) {
    pnpmConfig.verifyDepsBeforeRun = process.env.pnpm_config_verify_deps_before_run;
  }
  pnpmConfig.catalogs = getCatalogsFromWorkspaceManifest(workspaceManifest);
}
var import_ci_info, import_is_windows6, import_lodash3, import_normalize_registry_url2, import_semver18, MIGRATED_PNPM_FIELD_KEYS;
var init_lib61 = __esm({
  "../config/reader/lib/index.js"() {
    "use strict";
    init_lib58();
    init_lib14();
    init_lib();
    init_lib2();
    init_lib59();
    init_lib9();
    init_lib60();
    init_lib13();
    init_lib31();
    init_better_path_resolve();
    init_camelcase();
    import_ci_info = __toESM(require_ci_info(), 1);
    import_is_windows6 = __toESM(require_is_windows(), 1);
    import_lodash3 = __toESM(require_lodash2(), 1);
    import_normalize_registry_url2 = __toESM(require_normalize_registry_url(), 1);
    init_path_absolute();
    init_es();
    init_realpath_missing();
    import_semver18 = __toESM(require_semver2(), 1);
    init_checkGlobalBinDir();
    init_concurrency();
    init_configFileKey();
    init_dependencyBuildOptions();
    init_dirs();
    init_env();
    init_getNetworkConfigs();
    init_getOptionsFromRootManifest();
    init_loadNpmrcFiles();
    init_localConfig();
    init_npmDefaults();
    init_overrideSupportedArchitecturesWithCLI();
    init_transformPath();
    init_types();
    init_concurrency();
    init_getNetworkConfigs();
    init_getOptionsFromRootManifest();
    init_projectConfig();
    init_configFileKey();
    init_localConfig();
    MIGRATED_PNPM_FIELD_KEYS = /* @__PURE__ */ new Set([
      "allowBuilds",
      "allowedDeprecatedVersions",
      "allowUnusedPatches",
      "auditConfig",
      "configDependencies",
      "executionEnv",
      "ignoredOptionalDependencies",
      "neverBuiltDependencies",
      "onlyBuiltDependencies",
      "onlyBuiltDependenciesFile",
      "overrides",
      "packageExtensions",
      "patchedDependencies",
      "peerDependencyRules",
      "requiredScripts",
      "supportedArchitectures",
      "updateConfig"
    ]);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/qrcode-terminal/0.12.0/751cbcc5a2d95c53c2d299cfe0a19376d0a41cb6b78bc81a6f4a8946596ea530/node_modules/qrcode-terminal/vendor/QRCode/QRMode.js
var require_QRMode = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/qrcode-terminal/0.12.0/751cbcc5a2d95c53c2d299cfe0a19376d0a41cb6b78bc81a6f4a8946596ea530/node_modules/qrcode-terminal/vendor/QRCode/QRMode.js"(exports2, module2) {
    module2.exports = {
      MODE_NUMBER: 1 << 0,
      MODE_ALPHA_NUM: 1 << 1,
      MODE_8BIT_BYTE: 1 << 2,
      MODE_KANJI: 1 << 3
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/qrcode-terminal/0.12.0/751cbcc5a2d95c53c2d299cfe0a19376d0a41cb6b78bc81a6f4a8946596ea530/node_modules/qrcode-terminal/vendor/QRCode/QR8bitByte.js
var require_QR8bitByte = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/qrcode-terminal/0.12.0/751cbcc5a2d95c53c2d299cfe0a19376d0a41cb6b78bc81a6f4a8946596ea530/node_modules/qrcode-terminal/vendor/QRCode/QR8bitByte.js"(exports2, module2) {
    var QRMode = require_QRMode();
    function QR8bitByte(data) {
      this.mode = QRMode.MODE_8BIT_BYTE;
      this.data = data;
    }
    QR8bitByte.prototype = {
      getLength: function() {
        return this.data.length;
      },
      write: function(buffer3) {
        for (var i2 = 0; i2 < this.data.length; i2++) {
          buffer3.put(this.data.charCodeAt(i2), 8);
        }
      }
    };
    module2.exports = QR8bitByte;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/qrcode-terminal/0.12.0/751cbcc5a2d95c53c2d299cfe0a19376d0a41cb6b78bc81a6f4a8946596ea530/node_modules/qrcode-terminal/vendor/QRCode/QRMath.js
var require_QRMath = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/qrcode-terminal/0.12.0/751cbcc5a2d95c53c2d299cfe0a19376d0a41cb6b78bc81a6f4a8946596ea530/node_modules/qrcode-terminal/vendor/QRCode/QRMath.js"(exports2, module2) {
    var QRMath = {
      glog: function(n2) {
        if (n2 < 1) {
          throw new Error("glog(" + n2 + ")");
        }
        return QRMath.LOG_TABLE[n2];
      },
      gexp: function(n2) {
        while (n2 < 0) {
          n2 += 255;
        }
        while (n2 >= 256) {
          n2 -= 255;
        }
        return QRMath.EXP_TABLE[n2];
      },
      EXP_TABLE: new Array(256),
      LOG_TABLE: new Array(256)
    };
    for (i2 = 0; i2 < 8; i2++) {
      QRMath.EXP_TABLE[i2] = 1 << i2;
    }
    var i2;
    for (i2 = 8; i2 < 256; i2++) {
      QRMath.EXP_TABLE[i2] = QRMath.EXP_TABLE[i2 - 4] ^ QRMath.EXP_TABLE[i2 - 5] ^ QRMath.EXP_TABLE[i2 - 6] ^ QRMath.EXP_TABLE[i2 - 8];
    }
    var i2;
    for (i2 = 0; i2 < 255; i2++) {
      QRMath.LOG_TABLE[QRMath.EXP_TABLE[i2]] = i2;
    }
    var i2;
    module2.exports = QRMath;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/qrcode-terminal/0.12.0/751cbcc5a2d95c53c2d299cfe0a19376d0a41cb6b78bc81a6f4a8946596ea530/node_modules/qrcode-terminal/vendor/QRCode/QRPolynomial.js
var require_QRPolynomial = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/qrcode-terminal/0.12.0/751cbcc5a2d95c53c2d299cfe0a19376d0a41cb6b78bc81a6f4a8946596ea530/node_modules/qrcode-terminal/vendor/QRCode/QRPolynomial.js"(exports2, module2) {
    var QRMath = require_QRMath();
    function QRPolynomial(num, shift) {
      if (num.length === void 0) {
        throw new Error(num.length + "/" + shift);
      }
      var offset = 0;
      while (offset < num.length && num[offset] === 0) {
        offset++;
      }
      this.num = new Array(num.length - offset + shift);
      for (var i2 = 0; i2 < num.length - offset; i2++) {
        this.num[i2] = num[i2 + offset];
      }
    }
    QRPolynomial.prototype = {
      get: function(index) {
        return this.num[index];
      },
      getLength: function() {
        return this.num.length;
      },
      multiply: function(e) {
        var num = new Array(this.getLength() + e.getLength() - 1);
        for (var i2 = 0; i2 < this.getLength(); i2++) {
          for (var j2 = 0; j2 < e.getLength(); j2++) {
            num[i2 + j2] ^= QRMath.gexp(QRMath.glog(this.get(i2)) + QRMath.glog(e.get(j2)));
          }
        }
        return new QRPolynomial(num, 0);
      },
      mod: function(e) {
        if (this.getLength() - e.getLength() < 0) {
          return this;
        }
        var ratio = QRMath.glog(this.get(0)) - QRMath.glog(e.get(0));
        var num = new Array(this.getLength());
        for (var i2 = 0; i2 < this.getLength(); i2++) {
          num[i2] = this.get(i2);
        }
        for (var x = 0; x < e.getLength(); x++) {
          num[x] ^= QRMath.gexp(QRMath.glog(e.get(x)) + ratio);
        }
        return new QRPolynomial(num, 0).mod(e);
      }
    };
    module2.exports = QRPolynomial;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/qrcode-terminal/0.12.0/751cbcc5a2d95c53c2d299cfe0a19376d0a41cb6b78bc81a6f4a8946596ea530/node_modules/qrcode-terminal/vendor/QRCode/QRMaskPattern.js
var require_QRMaskPattern = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/qrcode-terminal/0.12.0/751cbcc5a2d95c53c2d299cfe0a19376d0a41cb6b78bc81a6f4a8946596ea530/node_modules/qrcode-terminal/vendor/QRCode/QRMaskPattern.js"(exports2, module2) {
    module2.exports = {
      PATTERN000: 0,
      PATTERN001: 1,
      PATTERN010: 2,
      PATTERN011: 3,
      PATTERN100: 4,
      PATTERN101: 5,
      PATTERN110: 6,
      PATTERN111: 7
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/qrcode-terminal/0.12.0/751cbcc5a2d95c53c2d299cfe0a19376d0a41cb6b78bc81a6f4a8946596ea530/node_modules/qrcode-terminal/vendor/QRCode/QRUtil.js
var require_QRUtil = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/qrcode-terminal/0.12.0/751cbcc5a2d95c53c2d299cfe0a19376d0a41cb6b78bc81a6f4a8946596ea530/node_modules/qrcode-terminal/vendor/QRCode/QRUtil.js"(exports2, module2) {
    var QRMode = require_QRMode();
    var QRPolynomial = require_QRPolynomial();
    var QRMath = require_QRMath();
    var QRMaskPattern = require_QRMaskPattern();
    var QRUtil = {
      PATTERN_POSITION_TABLE: [
        [],
        [6, 18],
        [6, 22],
        [6, 26],
        [6, 30],
        [6, 34],
        [6, 22, 38],
        [6, 24, 42],
        [6, 26, 46],
        [6, 28, 50],
        [6, 30, 54],
        [6, 32, 58],
        [6, 34, 62],
        [6, 26, 46, 66],
        [6, 26, 48, 70],
        [6, 26, 50, 74],
        [6, 30, 54, 78],
        [6, 30, 56, 82],
        [6, 30, 58, 86],
        [6, 34, 62, 90],
        [6, 28, 50, 72, 94],
        [6, 26, 50, 74, 98],
        [6, 30, 54, 78, 102],
        [6, 28, 54, 80, 106],
        [6, 32, 58, 84, 110],
        [6, 30, 58, 86, 114],
        [6, 34, 62, 90, 118],
        [6, 26, 50, 74, 98, 122],
        [6, 30, 54, 78, 102, 126],
        [6, 26, 52, 78, 104, 130],
        [6, 30, 56, 82, 108, 134],
        [6, 34, 60, 86, 112, 138],
        [6, 30, 58, 86, 114, 142],
        [6, 34, 62, 90, 118, 146],
        [6, 30, 54, 78, 102, 126, 150],
        [6, 24, 50, 76, 102, 128, 154],
        [6, 28, 54, 80, 106, 132, 158],
        [6, 32, 58, 84, 110, 136, 162],
        [6, 26, 54, 82, 110, 138, 166],
        [6, 30, 58, 86, 114, 142, 170]
      ],
      G15: 1 << 10 | 1 << 8 | 1 << 5 | 1 << 4 | 1 << 2 | 1 << 1 | 1 << 0,
      G18: 1 << 12 | 1 << 11 | 1 << 10 | 1 << 9 | 1 << 8 | 1 << 5 | 1 << 2 | 1 << 0,
      G15_MASK: 1 << 14 | 1 << 12 | 1 << 10 | 1 << 4 | 1 << 1,
      getBCHTypeInfo: function(data) {
        var d = data << 10;
        while (QRUtil.getBCHDigit(d) - QRUtil.getBCHDigit(QRUtil.G15) >= 0) {
          d ^= QRUtil.G15 << QRUtil.getBCHDigit(d) - QRUtil.getBCHDigit(QRUtil.G15);
        }
        return (data << 10 | d) ^ QRUtil.G15_MASK;
      },
      getBCHTypeNumber: function(data) {
        var d = data << 12;
        while (QRUtil.getBCHDigit(d) - QRUtil.getBCHDigit(QRUtil.G18) >= 0) {
          d ^= QRUtil.G18 << QRUtil.getBCHDigit(d) - QRUtil.getBCHDigit(QRUtil.G18);
        }
        return data << 12 | d;
      },
      getBCHDigit: function(data) {
        var digit = 0;
        while (data !== 0) {
          digit++;
          data >>>= 1;
        }
        return digit;
      },
      getPatternPosition: function(typeNumber) {
        return QRUtil.PATTERN_POSITION_TABLE[typeNumber - 1];
      },
      getMask: function(maskPattern, i2, j2) {
        switch (maskPattern) {
          case QRMaskPattern.PATTERN000:
            return (i2 + j2) % 2 === 0;
          case QRMaskPattern.PATTERN001:
            return i2 % 2 === 0;
          case QRMaskPattern.PATTERN010:
            return j2 % 3 === 0;
          case QRMaskPattern.PATTERN011:
            return (i2 + j2) % 3 === 0;
          case QRMaskPattern.PATTERN100:
            return (Math.floor(i2 / 2) + Math.floor(j2 / 3)) % 2 === 0;
          case QRMaskPattern.PATTERN101:
            return i2 * j2 % 2 + i2 * j2 % 3 === 0;
          case QRMaskPattern.PATTERN110:
            return (i2 * j2 % 2 + i2 * j2 % 3) % 2 === 0;
          case QRMaskPattern.PATTERN111:
            return (i2 * j2 % 3 + (i2 + j2) % 2) % 2 === 0;
          default:
            throw new Error("bad maskPattern:" + maskPattern);
        }
      },
      getErrorCorrectPolynomial: function(errorCorrectLength) {
        var a2 = new QRPolynomial([1], 0);
        for (var i2 = 0; i2 < errorCorrectLength; i2++) {
          a2 = a2.multiply(new QRPolynomial([1, QRMath.gexp(i2)], 0));
        }
        return a2;
      },
      getLengthInBits: function(mode, type4) {
        if (1 <= type4 && type4 < 10) {
          switch (mode) {
            case QRMode.MODE_NUMBER:
              return 10;
            case QRMode.MODE_ALPHA_NUM:
              return 9;
            case QRMode.MODE_8BIT_BYTE:
              return 8;
            case QRMode.MODE_KANJI:
              return 8;
            default:
              throw new Error("mode:" + mode);
          }
        } else if (type4 < 27) {
          switch (mode) {
            case QRMode.MODE_NUMBER:
              return 12;
            case QRMode.MODE_ALPHA_NUM:
              return 11;
            case QRMode.MODE_8BIT_BYTE:
              return 16;
            case QRMode.MODE_KANJI:
              return 10;
            default:
              throw new Error("mode:" + mode);
          }
        } else if (type4 < 41) {
          switch (mode) {
            case QRMode.MODE_NUMBER:
              return 14;
            case QRMode.MODE_ALPHA_NUM:
              return 13;
            case QRMode.MODE_8BIT_BYTE:
              return 16;
            case QRMode.MODE_KANJI:
              return 12;
            default:
              throw new Error("mode:" + mode);
          }
        } else {
          throw new Error("type:" + type4);
        }
      },
      getLostPoint: function(qrCode) {
        var moduleCount = qrCode.getModuleCount();
        var lostPoint = 0;
        var row = 0;
        var col = 0;
        for (row = 0; row < moduleCount; row++) {
          for (col = 0; col < moduleCount; col++) {
            var sameCount = 0;
            var dark = qrCode.isDark(row, col);
            for (var r = -1; r <= 1; r++) {
              if (row + r < 0 || moduleCount <= row + r) {
                continue;
              }
              for (var c3 = -1; c3 <= 1; c3++) {
                if (col + c3 < 0 || moduleCount <= col + c3) {
                  continue;
                }
                if (r === 0 && c3 === 0) {
                  continue;
                }
                if (dark === qrCode.isDark(row + r, col + c3)) {
                  sameCount++;
                }
              }
            }
            if (sameCount > 5) {
              lostPoint += 3 + sameCount - 5;
            }
          }
        }
        for (row = 0; row < moduleCount - 1; row++) {
          for (col = 0; col < moduleCount - 1; col++) {
            var count2 = 0;
            if (qrCode.isDark(row, col)) count2++;
            if (qrCode.isDark(row + 1, col)) count2++;
            if (qrCode.isDark(row, col + 1)) count2++;
            if (qrCode.isDark(row + 1, col + 1)) count2++;
            if (count2 === 0 || count2 === 4) {
              lostPoint += 3;
            }
          }
        }
        for (row = 0; row < moduleCount; row++) {
          for (col = 0; col < moduleCount - 6; col++) {
            if (qrCode.isDark(row, col) && !qrCode.isDark(row, col + 1) && qrCode.isDark(row, col + 2) && qrCode.isDark(row, col + 3) && qrCode.isDark(row, col + 4) && !qrCode.isDark(row, col + 5) && qrCode.isDark(row, col + 6)) {
              lostPoint += 40;
            }
          }
        }
        for (col = 0; col < moduleCount; col++) {
          for (row = 0; row < moduleCount - 6; row++) {
            if (qrCode.isDark(row, col) && !qrCode.isDark(row + 1, col) && qrCode.isDark(row + 2, col) && qrCode.isDark(row + 3, col) && qrCode.isDark(row + 4, col) && !qrCode.isDark(row + 5, col) && qrCode.isDark(row + 6, col)) {
              lostPoint += 40;
            }
          }
        }
        var darkCount = 0;
        for (col = 0; col < moduleCount; col++) {
          for (row = 0; row < moduleCount; row++) {
            if (qrCode.isDark(row, col)) {
              darkCount++;
            }
          }
        }
        var ratio = Math.abs(100 * darkCount / moduleCount / moduleCount - 50) / 5;
        lostPoint += ratio * 10;
        return lostPoint;
      }
    };
    module2.exports = QRUtil;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/qrcode-terminal/0.12.0/751cbcc5a2d95c53c2d299cfe0a19376d0a41cb6b78bc81a6f4a8946596ea530/node_modules/qrcode-terminal/vendor/QRCode/QRErrorCorrectLevel.js
var require_QRErrorCorrectLevel = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/qrcode-terminal/0.12.0/751cbcc5a2d95c53c2d299cfe0a19376d0a41cb6b78bc81a6f4a8946596ea530/node_modules/qrcode-terminal/vendor/QRCode/QRErrorCorrectLevel.js"(exports2, module2) {
    module2.exports = {
      L: 1,
      M: 0,
      Q: 3,
      H: 2
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/qrcode-terminal/0.12.0/751cbcc5a2d95c53c2d299cfe0a19376d0a41cb6b78bc81a6f4a8946596ea530/node_modules/qrcode-terminal/vendor/QRCode/QRRSBlock.js
var require_QRRSBlock = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/qrcode-terminal/0.12.0/751cbcc5a2d95c53c2d299cfe0a19376d0a41cb6b78bc81a6f4a8946596ea530/node_modules/qrcode-terminal/vendor/QRCode/QRRSBlock.js"(exports2, module2) {
    var QRErrorCorrectLevel = require_QRErrorCorrectLevel();
    function QRRSBlock(totalCount, dataCount) {
      this.totalCount = totalCount;
      this.dataCount = dataCount;
    }
    QRRSBlock.RS_BLOCK_TABLE = [
      // L
      // M
      // Q
      // H
      // 1
      [1, 26, 19],
      [1, 26, 16],
      [1, 26, 13],
      [1, 26, 9],
      // 2
      [1, 44, 34],
      [1, 44, 28],
      [1, 44, 22],
      [1, 44, 16],
      // 3
      [1, 70, 55],
      [1, 70, 44],
      [2, 35, 17],
      [2, 35, 13],
      // 4		
      [1, 100, 80],
      [2, 50, 32],
      [2, 50, 24],
      [4, 25, 9],
      // 5
      [1, 134, 108],
      [2, 67, 43],
      [2, 33, 15, 2, 34, 16],
      [2, 33, 11, 2, 34, 12],
      // 6
      [2, 86, 68],
      [4, 43, 27],
      [4, 43, 19],
      [4, 43, 15],
      // 7		
      [2, 98, 78],
      [4, 49, 31],
      [2, 32, 14, 4, 33, 15],
      [4, 39, 13, 1, 40, 14],
      // 8
      [2, 121, 97],
      [2, 60, 38, 2, 61, 39],
      [4, 40, 18, 2, 41, 19],
      [4, 40, 14, 2, 41, 15],
      // 9
      [2, 146, 116],
      [3, 58, 36, 2, 59, 37],
      [4, 36, 16, 4, 37, 17],
      [4, 36, 12, 4, 37, 13],
      // 10		
      [2, 86, 68, 2, 87, 69],
      [4, 69, 43, 1, 70, 44],
      [6, 43, 19, 2, 44, 20],
      [6, 43, 15, 2, 44, 16],
      // 11
      [4, 101, 81],
      [1, 80, 50, 4, 81, 51],
      [4, 50, 22, 4, 51, 23],
      [3, 36, 12, 8, 37, 13],
      // 12
      [2, 116, 92, 2, 117, 93],
      [6, 58, 36, 2, 59, 37],
      [4, 46, 20, 6, 47, 21],
      [7, 42, 14, 4, 43, 15],
      // 13
      [4, 133, 107],
      [8, 59, 37, 1, 60, 38],
      [8, 44, 20, 4, 45, 21],
      [12, 33, 11, 4, 34, 12],
      // 14
      [3, 145, 115, 1, 146, 116],
      [4, 64, 40, 5, 65, 41],
      [11, 36, 16, 5, 37, 17],
      [11, 36, 12, 5, 37, 13],
      // 15
      [5, 109, 87, 1, 110, 88],
      [5, 65, 41, 5, 66, 42],
      [5, 54, 24, 7, 55, 25],
      [11, 36, 12],
      // 16
      [5, 122, 98, 1, 123, 99],
      [7, 73, 45, 3, 74, 46],
      [15, 43, 19, 2, 44, 20],
      [3, 45, 15, 13, 46, 16],
      // 17
      [1, 135, 107, 5, 136, 108],
      [10, 74, 46, 1, 75, 47],
      [1, 50, 22, 15, 51, 23],
      [2, 42, 14, 17, 43, 15],
      // 18
      [5, 150, 120, 1, 151, 121],
      [9, 69, 43, 4, 70, 44],
      [17, 50, 22, 1, 51, 23],
      [2, 42, 14, 19, 43, 15],
      // 19
      [3, 141, 113, 4, 142, 114],
      [3, 70, 44, 11, 71, 45],
      [17, 47, 21, 4, 48, 22],
      [9, 39, 13, 16, 40, 14],
      // 20
      [3, 135, 107, 5, 136, 108],
      [3, 67, 41, 13, 68, 42],
      [15, 54, 24, 5, 55, 25],
      [15, 43, 15, 10, 44, 16],
      // 21
      [4, 144, 116, 4, 145, 117],
      [17, 68, 42],
      [17, 50, 22, 6, 51, 23],
      [19, 46, 16, 6, 47, 17],
      // 22
      [2, 139, 111, 7, 140, 112],
      [17, 74, 46],
      [7, 54, 24, 16, 55, 25],
      [34, 37, 13],
      // 23
      [4, 151, 121, 5, 152, 122],
      [4, 75, 47, 14, 76, 48],
      [11, 54, 24, 14, 55, 25],
      [16, 45, 15, 14, 46, 16],
      // 24
      [6, 147, 117, 4, 148, 118],
      [6, 73, 45, 14, 74, 46],
      [11, 54, 24, 16, 55, 25],
      [30, 46, 16, 2, 47, 17],
      // 25
      [8, 132, 106, 4, 133, 107],
      [8, 75, 47, 13, 76, 48],
      [7, 54, 24, 22, 55, 25],
      [22, 45, 15, 13, 46, 16],
      // 26
      [10, 142, 114, 2, 143, 115],
      [19, 74, 46, 4, 75, 47],
      [28, 50, 22, 6, 51, 23],
      [33, 46, 16, 4, 47, 17],
      // 27
      [8, 152, 122, 4, 153, 123],
      [22, 73, 45, 3, 74, 46],
      [8, 53, 23, 26, 54, 24],
      [12, 45, 15, 28, 46, 16],
      // 28
      [3, 147, 117, 10, 148, 118],
      [3, 73, 45, 23, 74, 46],
      [4, 54, 24, 31, 55, 25],
      [11, 45, 15, 31, 46, 16],
      // 29
      [7, 146, 116, 7, 147, 117],
      [21, 73, 45, 7, 74, 46],
      [1, 53, 23, 37, 54, 24],
      [19, 45, 15, 26, 46, 16],
      // 30
      [5, 145, 115, 10, 146, 116],
      [19, 75, 47, 10, 76, 48],
      [15, 54, 24, 25, 55, 25],
      [23, 45, 15, 25, 46, 16],
      // 31
      [13, 145, 115, 3, 146, 116],
      [2, 74, 46, 29, 75, 47],
      [42, 54, 24, 1, 55, 25],
      [23, 45, 15, 28, 46, 16],
      // 32
      [17, 145, 115],
      [10, 74, 46, 23, 75, 47],
      [10, 54, 24, 35, 55, 25],
      [19, 45, 15, 35, 46, 16],
      // 33
      [17, 145, 115, 1, 146, 116],
      [14, 74, 46, 21, 75, 47],
      [29, 54, 24, 19, 55, 25],
      [11, 45, 15, 46, 46, 16],
      // 34
      [13, 145, 115, 6, 146, 116],
      [14, 74, 46, 23, 75, 47],
      [44, 54, 24, 7, 55, 25],
      [59, 46, 16, 1, 47, 17],
      // 35
      [12, 151, 121, 7, 152, 122],
      [12, 75, 47, 26, 76, 48],
      [39, 54, 24, 14, 55, 25],
      [22, 45, 15, 41, 46, 16],
      // 36
      [6, 151, 121, 14, 152, 122],
      [6, 75, 47, 34, 76, 48],
      [46, 54, 24, 10, 55, 25],
      [2, 45, 15, 64, 46, 16],
      // 37
      [17, 152, 122, 4, 153, 123],
      [29, 74, 46, 14, 75, 47],
      [49, 54, 24, 10, 55, 25],
      [24, 45, 15, 46, 46, 16],
      // 38
      [4, 152, 122, 18, 153, 123],
      [13, 74, 46, 32, 75, 47],
      [48, 54, 24, 14, 55, 25],
      [42, 45, 15, 32, 46, 16],
      // 39
      [20, 147, 117, 4, 148, 118],
      [40, 75, 47, 7, 76, 48],
      [43, 54, 24, 22, 55, 25],
      [10, 45, 15, 67, 46, 16],
      // 40
      [19, 148, 118, 6, 149, 119],
      [18, 75, 47, 31, 76, 48],
      [34, 54, 24, 34, 55, 25],
      [20, 45, 15, 61, 46, 16]
    ];
    QRRSBlock.getRSBlocks = function(typeNumber, errorCorrectLevel) {
      var rsBlock = QRRSBlock.getRsBlockTable(typeNumber, errorCorrectLevel);
      if (rsBlock === void 0) {
        throw new Error("bad rs block @ typeNumber:" + typeNumber + "/errorCorrectLevel:" + errorCorrectLevel);
      }
      var length = rsBlock.length / 3;
      var list2 = [];
      for (var i2 = 0; i2 < length; i2++) {
        var count2 = rsBlock[i2 * 3 + 0];
        var totalCount = rsBlock[i2 * 3 + 1];
        var dataCount = rsBlock[i2 * 3 + 2];
        for (var j2 = 0; j2 < count2; j2++) {
          list2.push(new QRRSBlock(totalCount, dataCount));
        }
      }
      return list2;
    };
    QRRSBlock.getRsBlockTable = function(typeNumber, errorCorrectLevel) {
      switch (errorCorrectLevel) {
        case QRErrorCorrectLevel.L:
          return QRRSBlock.RS_BLOCK_TABLE[(typeNumber - 1) * 4 + 0];
        case QRErrorCorrectLevel.M:
          return QRRSBlock.RS_BLOCK_TABLE[(typeNumber - 1) * 4 + 1];
        case QRErrorCorrectLevel.Q:
          return QRRSBlock.RS_BLOCK_TABLE[(typeNumber - 1) * 4 + 2];
        case QRErrorCorrectLevel.H:
          return QRRSBlock.RS_BLOCK_TABLE[(typeNumber - 1) * 4 + 3];
        default:
          return void 0;
      }
    };
    module2.exports = QRRSBlock;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/qrcode-terminal/0.12.0/751cbcc5a2d95c53c2d299cfe0a19376d0a41cb6b78bc81a6f4a8946596ea530/node_modules/qrcode-terminal/vendor/QRCode/QRBitBuffer.js
var require_QRBitBuffer = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/qrcode-terminal/0.12.0/751cbcc5a2d95c53c2d299cfe0a19376d0a41cb6b78bc81a6f4a8946596ea530/node_modules/qrcode-terminal/vendor/QRCode/QRBitBuffer.js"(exports2, module2) {
    function QRBitBuffer() {
      this.buffer = [];
      this.length = 0;
    }
    QRBitBuffer.prototype = {
      get: function(index) {
        var bufIndex = Math.floor(index / 8);
        return (this.buffer[bufIndex] >>> 7 - index % 8 & 1) == 1;
      },
      put: function(num, length) {
        for (var i2 = 0; i2 < length; i2++) {
          this.putBit((num >>> length - i2 - 1 & 1) == 1);
        }
      },
      getLengthInBits: function() {
        return this.length;
      },
      putBit: function(bit) {
        var bufIndex = Math.floor(this.length / 8);
        if (this.buffer.length <= bufIndex) {
          this.buffer.push(0);
        }
        if (bit) {
          this.buffer[bufIndex] |= 128 >>> this.length % 8;
        }
        this.length++;
      }
    };
    module2.exports = QRBitBuffer;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/qrcode-terminal/0.12.0/751cbcc5a2d95c53c2d299cfe0a19376d0a41cb6b78bc81a6f4a8946596ea530/node_modules/qrcode-terminal/vendor/QRCode/index.js
var require_QRCode = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/qrcode-terminal/0.12.0/751cbcc5a2d95c53c2d299cfe0a19376d0a41cb6b78bc81a6f4a8946596ea530/node_modules/qrcode-terminal/vendor/QRCode/index.js"(exports2, module2) {
    var QR8bitByte = require_QR8bitByte();
    var QRUtil = require_QRUtil();
    var QRPolynomial = require_QRPolynomial();
    var QRRSBlock = require_QRRSBlock();
    var QRBitBuffer = require_QRBitBuffer();
    function QRCode(typeNumber, errorCorrectLevel) {
      this.typeNumber = typeNumber;
      this.errorCorrectLevel = errorCorrectLevel;
      this.modules = null;
      this.moduleCount = 0;
      this.dataCache = null;
      this.dataList = [];
    }
    QRCode.prototype = {
      addData: function(data) {
        var newData = new QR8bitByte(data);
        this.dataList.push(newData);
        this.dataCache = null;
      },
      isDark: function(row, col) {
        if (row < 0 || this.moduleCount <= row || col < 0 || this.moduleCount <= col) {
          throw new Error(row + "," + col);
        }
        return this.modules[row][col];
      },
      getModuleCount: function() {
        return this.moduleCount;
      },
      make: function() {
        if (this.typeNumber < 1) {
          var typeNumber = 1;
          for (typeNumber = 1; typeNumber < 40; typeNumber++) {
            var rsBlocks = QRRSBlock.getRSBlocks(typeNumber, this.errorCorrectLevel);
            var buffer3 = new QRBitBuffer();
            var totalDataCount = 0;
            for (var i2 = 0; i2 < rsBlocks.length; i2++) {
              totalDataCount += rsBlocks[i2].dataCount;
            }
            for (var x = 0; x < this.dataList.length; x++) {
              var data = this.dataList[x];
              buffer3.put(data.mode, 4);
              buffer3.put(data.getLength(), QRUtil.getLengthInBits(data.mode, typeNumber));
              data.write(buffer3);
            }
            if (buffer3.getLengthInBits() <= totalDataCount * 8)
              break;
          }
          this.typeNumber = typeNumber;
        }
        this.makeImpl(false, this.getBestMaskPattern());
      },
      makeImpl: function(test, maskPattern) {
        this.moduleCount = this.typeNumber * 4 + 17;
        this.modules = new Array(this.moduleCount);
        for (var row = 0; row < this.moduleCount; row++) {
          this.modules[row] = new Array(this.moduleCount);
          for (var col = 0; col < this.moduleCount; col++) {
            this.modules[row][col] = null;
          }
        }
        this.setupPositionProbePattern(0, 0);
        this.setupPositionProbePattern(this.moduleCount - 7, 0);
        this.setupPositionProbePattern(0, this.moduleCount - 7);
        this.setupPositionAdjustPattern();
        this.setupTimingPattern();
        this.setupTypeInfo(test, maskPattern);
        if (this.typeNumber >= 7) {
          this.setupTypeNumber(test);
        }
        if (this.dataCache === null) {
          this.dataCache = QRCode.createData(this.typeNumber, this.errorCorrectLevel, this.dataList);
        }
        this.mapData(this.dataCache, maskPattern);
      },
      setupPositionProbePattern: function(row, col) {
        for (var r = -1; r <= 7; r++) {
          if (row + r <= -1 || this.moduleCount <= row + r) continue;
          for (var c3 = -1; c3 <= 7; c3++) {
            if (col + c3 <= -1 || this.moduleCount <= col + c3) continue;
            if (0 <= r && r <= 6 && (c3 === 0 || c3 === 6) || 0 <= c3 && c3 <= 6 && (r === 0 || r === 6) || 2 <= r && r <= 4 && 2 <= c3 && c3 <= 4) {
              this.modules[row + r][col + c3] = true;
            } else {
              this.modules[row + r][col + c3] = false;
            }
          }
        }
      },
      getBestMaskPattern: function() {
        var minLostPoint = 0;
        var pattern = 0;
        for (var i2 = 0; i2 < 8; i2++) {
          this.makeImpl(true, i2);
          var lostPoint = QRUtil.getLostPoint(this);
          if (i2 === 0 || minLostPoint > lostPoint) {
            minLostPoint = lostPoint;
            pattern = i2;
          }
        }
        return pattern;
      },
      createMovieClip: function(target_mc, instance_name, depth) {
        var qr_mc = target_mc.createEmptyMovieClip(instance_name, depth);
        var cs = 1;
        this.make();
        for (var row = 0; row < this.modules.length; row++) {
          var y = row * cs;
          for (var col = 0; col < this.modules[row].length; col++) {
            var x = col * cs;
            var dark = this.modules[row][col];
            if (dark) {
              qr_mc.beginFill(0, 100);
              qr_mc.moveTo(x, y);
              qr_mc.lineTo(x + cs, y);
              qr_mc.lineTo(x + cs, y + cs);
              qr_mc.lineTo(x, y + cs);
              qr_mc.endFill();
            }
          }
        }
        return qr_mc;
      },
      setupTimingPattern: function() {
        for (var r = 8; r < this.moduleCount - 8; r++) {
          if (this.modules[r][6] !== null) {
            continue;
          }
          this.modules[r][6] = r % 2 === 0;
        }
        for (var c3 = 8; c3 < this.moduleCount - 8; c3++) {
          if (this.modules[6][c3] !== null) {
            continue;
          }
          this.modules[6][c3] = c3 % 2 === 0;
        }
      },
      setupPositionAdjustPattern: function() {
        var pos = QRUtil.getPatternPosition(this.typeNumber);
        for (var i2 = 0; i2 < pos.length; i2++) {
          for (var j2 = 0; j2 < pos.length; j2++) {
            var row = pos[i2];
            var col = pos[j2];
            if (this.modules[row][col] !== null) {
              continue;
            }
            for (var r = -2; r <= 2; r++) {
              for (var c3 = -2; c3 <= 2; c3++) {
                if (Math.abs(r) === 2 || Math.abs(c3) === 2 || r === 0 && c3 === 0) {
                  this.modules[row + r][col + c3] = true;
                } else {
                  this.modules[row + r][col + c3] = false;
                }
              }
            }
          }
        }
      },
      setupTypeNumber: function(test) {
        var bits = QRUtil.getBCHTypeNumber(this.typeNumber);
        var mod;
        for (var i2 = 0; i2 < 18; i2++) {
          mod = !test && (bits >> i2 & 1) === 1;
          this.modules[Math.floor(i2 / 3)][i2 % 3 + this.moduleCount - 8 - 3] = mod;
        }
        for (var x = 0; x < 18; x++) {
          mod = !test && (bits >> x & 1) === 1;
          this.modules[x % 3 + this.moduleCount - 8 - 3][Math.floor(x / 3)] = mod;
        }
      },
      setupTypeInfo: function(test, maskPattern) {
        var data = this.errorCorrectLevel << 3 | maskPattern;
        var bits = QRUtil.getBCHTypeInfo(data);
        var mod;
        for (var v = 0; v < 15; v++) {
          mod = !test && (bits >> v & 1) === 1;
          if (v < 6) {
            this.modules[v][8] = mod;
          } else if (v < 8) {
            this.modules[v + 1][8] = mod;
          } else {
            this.modules[this.moduleCount - 15 + v][8] = mod;
          }
        }
        for (var h2 = 0; h2 < 15; h2++) {
          mod = !test && (bits >> h2 & 1) === 1;
          if (h2 < 8) {
            this.modules[8][this.moduleCount - h2 - 1] = mod;
          } else if (h2 < 9) {
            this.modules[8][15 - h2 - 1 + 1] = mod;
          } else {
            this.modules[8][15 - h2 - 1] = mod;
          }
        }
        this.modules[this.moduleCount - 8][8] = !test;
      },
      mapData: function(data, maskPattern) {
        var inc2 = -1;
        var row = this.moduleCount - 1;
        var bitIndex = 7;
        var byteIndex = 0;
        for (var col = this.moduleCount - 1; col > 0; col -= 2) {
          if (col === 6) col--;
          while (true) {
            for (var c3 = 0; c3 < 2; c3++) {
              if (this.modules[row][col - c3] === null) {
                var dark = false;
                if (byteIndex < data.length) {
                  dark = (data[byteIndex] >>> bitIndex & 1) === 1;
                }
                var mask = QRUtil.getMask(maskPattern, row, col - c3);
                if (mask) {
                  dark = !dark;
                }
                this.modules[row][col - c3] = dark;
                bitIndex--;
                if (bitIndex === -1) {
                  byteIndex++;
                  bitIndex = 7;
                }
              }
            }
            row += inc2;
            if (row < 0 || this.moduleCount <= row) {
              row -= inc2;
              inc2 = -inc2;
              break;
            }
          }
        }
      }
    };
    QRCode.PAD0 = 236;
    QRCode.PAD1 = 17;
    QRCode.createData = function(typeNumber, errorCorrectLevel, dataList) {
      var rsBlocks = QRRSBlock.getRSBlocks(typeNumber, errorCorrectLevel);
      var buffer3 = new QRBitBuffer();
      for (var i2 = 0; i2 < dataList.length; i2++) {
        var data = dataList[i2];
        buffer3.put(data.mode, 4);
        buffer3.put(data.getLength(), QRUtil.getLengthInBits(data.mode, typeNumber));
        data.write(buffer3);
      }
      var totalDataCount = 0;
      for (var x = 0; x < rsBlocks.length; x++) {
        totalDataCount += rsBlocks[x].dataCount;
      }
      if (buffer3.getLengthInBits() > totalDataCount * 8) {
        throw new Error("code length overflow. (" + buffer3.getLengthInBits() + ">" + totalDataCount * 8 + ")");
      }
      if (buffer3.getLengthInBits() + 4 <= totalDataCount * 8) {
        buffer3.put(0, 4);
      }
      while (buffer3.getLengthInBits() % 8 !== 0) {
        buffer3.putBit(false);
      }
      while (true) {
        if (buffer3.getLengthInBits() >= totalDataCount * 8) {
          break;
        }
        buffer3.put(QRCode.PAD0, 8);
        if (buffer3.getLengthInBits() >= totalDataCount * 8) {
          break;
        }
        buffer3.put(QRCode.PAD1, 8);
      }
      return QRCode.createBytes(buffer3, rsBlocks);
    };
    QRCode.createBytes = function(buffer3, rsBlocks) {
      var offset = 0;
      var maxDcCount = 0;
      var maxEcCount = 0;
      var dcdata = new Array(rsBlocks.length);
      var ecdata = new Array(rsBlocks.length);
      for (var r = 0; r < rsBlocks.length; r++) {
        var dcCount = rsBlocks[r].dataCount;
        var ecCount = rsBlocks[r].totalCount - dcCount;
        maxDcCount = Math.max(maxDcCount, dcCount);
        maxEcCount = Math.max(maxEcCount, ecCount);
        dcdata[r] = new Array(dcCount);
        for (var i2 = 0; i2 < dcdata[r].length; i2++) {
          dcdata[r][i2] = 255 & buffer3.buffer[i2 + offset];
        }
        offset += dcCount;
        var rsPoly = QRUtil.getErrorCorrectPolynomial(ecCount);
        var rawPoly = new QRPolynomial(dcdata[r], rsPoly.getLength() - 1);
        var modPoly = rawPoly.mod(rsPoly);
        ecdata[r] = new Array(rsPoly.getLength() - 1);
        for (var x = 0; x < ecdata[r].length; x++) {
          var modIndex = x + modPoly.getLength() - ecdata[r].length;
          ecdata[r][x] = modIndex >= 0 ? modPoly.get(modIndex) : 0;
        }
      }
      var totalCodeCount = 0;
      for (var y = 0; y < rsBlocks.length; y++) {
        totalCodeCount += rsBlocks[y].totalCount;
      }
      var data = new Array(totalCodeCount);
      var index = 0;
      for (var z = 0; z < maxDcCount; z++) {
        for (var s = 0; s < rsBlocks.length; s++) {
          if (z < dcdata[s].length) {
            data[index++] = dcdata[s][z];
          }
        }
      }
      for (var xx = 0; xx < maxEcCount; xx++) {
        for (var t2 = 0; t2 < rsBlocks.length; t2++) {
          if (xx < ecdata[t2].length) {
            data[index++] = ecdata[t2][xx];
          }
        }
      }
      return data;
    };
    module2.exports = QRCode;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/qrcode-terminal/0.12.0/751cbcc5a2d95c53c2d299cfe0a19376d0a41cb6b78bc81a6f4a8946596ea530/node_modules/qrcode-terminal/lib/main.js
var require_main = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/qrcode-terminal/0.12.0/751cbcc5a2d95c53c2d299cfe0a19376d0a41cb6b78bc81a6f4a8946596ea530/node_modules/qrcode-terminal/lib/main.js"(exports2, module2) {
    var QRCode = require_QRCode();
    var QRErrorCorrectLevel = require_QRErrorCorrectLevel();
    var black2 = "\x1B[40m  \x1B[0m";
    var white2 = "\x1B[47m  \x1B[0m";
    var toCell = function(isBlack) {
      return isBlack ? black2 : white2;
    };
    var repeat4 = function(color) {
      return {
        times: function(count2) {
          return new Array(count2).join(color);
        }
      };
    };
    var fill = function(length, value) {
      var arr = new Array(length);
      for (var i2 = 0; i2 < length; i2++) {
        arr[i2] = value;
      }
      return arr;
    };
    module2.exports = {
      error: QRErrorCorrectLevel.L,
      generate: function(input, opts2, cb) {
        if (typeof opts2 === "function") {
          cb = opts2;
          opts2 = {};
        }
        var qrcode = new QRCode(-1, this.error);
        qrcode.addData(input);
        qrcode.make();
        var output = "";
        if (opts2 && opts2.small) {
          var BLACK = true, WHITE = false;
          var moduleCount = qrcode.getModuleCount();
          var moduleData = qrcode.modules.slice();
          var oddRow = moduleCount % 2 === 1;
          if (oddRow) {
            moduleData.push(fill(moduleCount, WHITE));
          }
          var platte = {
            WHITE_ALL: "\u2588",
            WHITE_BLACK: "\u2580",
            BLACK_WHITE: "\u2584",
            BLACK_ALL: " "
          };
          var borderTop = repeat4(platte.BLACK_WHITE).times(moduleCount + 3);
          var borderBottom = repeat4(platte.WHITE_BLACK).times(moduleCount + 3);
          output += borderTop + "\n";
          for (var row = 0; row < moduleCount; row += 2) {
            output += platte.WHITE_ALL;
            for (var col = 0; col < moduleCount; col++) {
              if (moduleData[row][col] === WHITE && moduleData[row + 1][col] === WHITE) {
                output += platte.WHITE_ALL;
              } else if (moduleData[row][col] === WHITE && moduleData[row + 1][col] === BLACK) {
                output += platte.WHITE_BLACK;
              } else if (moduleData[row][col] === BLACK && moduleData[row + 1][col] === WHITE) {
                output += platte.BLACK_WHITE;
              } else {
                output += platte.BLACK_ALL;
              }
            }
            output += platte.WHITE_ALL + "\n";
          }
          if (!oddRow) {
            output += borderBottom;
          }
        } else {
          var border = repeat4(white2).times(qrcode.getModuleCount() + 3);
          output += border + "\n";
          qrcode.modules.forEach(function(row2) {
            output += white2;
            output += row2.map(toCell).join("");
            output += white2 + "\n";
          });
          output += border;
        }
        if (cb) cb(output);
        else console.log(output);
      },
      setErrorLevel: function(error) {
        this.error = QRErrorCorrectLevel[error] || this.error;
      }
    };
  }
});

// ../network/web-auth/lib/generateQrCode.js
function generateQrCode(text) {
  let qrCode;
  import_qrcode_terminal.default.generate(text, { small: true }, (code) => {
    qrCode = code;
  });
  if (qrCode != null)
    return qrCode;
  throw new Error("we were expecting qrcode-terminal to be fully synchronous, but it fails to execute the callback");
}
var import_qrcode_terminal;
var init_generateQrCode = __esm({
  "../network/web-auth/lib/generateQrCode.js"() {
    "use strict";
    import_qrcode_terminal = __toESM(require_main(), 1);
  }
});

// ../network/web-auth/lib/WebAuthTimeoutError.js
var WebAuthTimeoutError;
var init_WebAuthTimeoutError = __esm({
  "../network/web-auth/lib/WebAuthTimeoutError.js"() {
    "use strict";
    init_lib2();
    WebAuthTimeoutError = class extends PnpmError {
      endTime;
      startTime;
      timeout;
      constructor(endTime, startTime, timeout) {
        super("WEBAUTH_TIMEOUT", "Web-based authentication timed out before it could be completed", {
          hint: "Re-run this command and complete the authentication step in your browser before the time limit is reached"
        });
        this.endTime = endTime;
        this.startTime = startTime;
        this.timeout = timeout;
      }
    };
  }
});

// ../network/web-auth/lib/pollForWebAuthToken.js
async function pollForWebAuthToken({ context: { Date: Date2, fetch: fetch2, setTimeout: setTimeout4 }, doneUrl, fetchOptions, timeoutMs = 5 * 60 * 1e3 }) {
  const startTime = Date2.now();
  const pollIntervalMs = 1e3;
  while (true) {
    const now = Date2.now();
    if (now - startTime > timeoutMs) {
      throw new WebAuthTimeoutError(now, startTime, timeoutMs);
    }
    await new Promise((resolve3) => setTimeout4(resolve3, pollIntervalMs));
    let response;
    try {
      response = await fetch2(doneUrl, fetchOptions);
    } catch {
      continue;
    }
    if (!response.ok)
      continue;
    if (response.status === 202) {
      const retryAfterSeconds = Number(response.headers.get("retry-after"));
      if (Number.isFinite(retryAfterSeconds)) {
        const additionalMs = retryAfterSeconds * 1e3 - pollIntervalMs;
        if (additionalMs > 0) {
          const nowAfterPoll = Date2.now();
          const remainingMs = timeoutMs - (nowAfterPoll - startTime);
          if (remainingMs <= 0) {
            throw new WebAuthTimeoutError(nowAfterPoll, startTime, timeoutMs);
          }
          const sleepMs = Math.min(additionalMs, remainingMs);
          await new Promise((resolve3) => setTimeout4(resolve3, sleepMs));
        }
      }
      continue;
    }
    let body;
    try {
      body = await response.json();
    } catch {
      continue;
    }
    if (body.token) {
      return body.token;
    }
  }
}
var init_pollForWebAuthToken = __esm({
  "../network/web-auth/lib/pollForWebAuthToken.js"() {
    "use strict";
    init_WebAuthTimeoutError();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/is-docker/2.2.1/35297514eb018463b0963b22777d785c5599433ce326b839e39dd5aa1155e5ba/node_modules/is-docker/index.js
var require_is_docker = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/is-docker/2.2.1/35297514eb018463b0963b22777d785c5599433ce326b839e39dd5aa1155e5ba/node_modules/is-docker/index.js"(exports2, module2) {
    "use strict";
    var fs111 = __require("fs");
    var isDocker;
    function hasDockerEnv() {
      try {
        fs111.statSync("/.dockerenv");
        return true;
      } catch (_) {
        return false;
      }
    }
    function hasDockerCGroup() {
      try {
        return fs111.readFileSync("/proc/self/cgroup", "utf8").includes("docker");
      } catch (_) {
        return false;
      }
    }
    module2.exports = () => {
      if (isDocker === void 0) {
        isDocker = hasDockerEnv() || hasDockerCGroup();
      }
      return isDocker;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/is-wsl/2.2.0/a4e0b0c62da3a6c022f056c28d3834ce13cbed5164fffa14a4e5149a9f97af74/node_modules/is-wsl/index.js
var require_is_wsl = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/is-wsl/2.2.0/a4e0b0c62da3a6c022f056c28d3834ce13cbed5164fffa14a4e5149a9f97af74/node_modules/is-wsl/index.js"(exports2, module2) {
    "use strict";
    var os15 = __require("os");
    var fs111 = __require("fs");
    var isDocker = require_is_docker();
    var isWsl = () => {
      if (process.platform !== "linux") {
        return false;
      }
      if (os15.release().toLowerCase().includes("microsoft")) {
        if (isDocker()) {
          return false;
        }
        return true;
      }
      try {
        return fs111.readFileSync("/proc/version", "utf8").toLowerCase().includes("microsoft") ? !isDocker() : false;
      } catch (_) {
        return false;
      }
    };
    if (process.env.__IS_WSL_TEST__) {
      module2.exports = isWsl;
    } else {
      module2.exports = isWsl();
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/open/7.4.2/178eb9c70437f1fbeee6b93e0d6d461cb76d4aaff34e047707fa0a8bbaa425a4/node_modules/open/index.js
var require_open = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/open/7.4.2/178eb9c70437f1fbeee6b93e0d6d461cb76d4aaff34e047707fa0a8bbaa425a4/node_modules/open/index.js"(exports2, module2) {
    "use strict";
    var { promisify: promisify8 } = __require("util");
    var path218 = __require("path");
    var childProcess = __require("child_process");
    var fs111 = __require("fs");
    var isWsl = require_is_wsl();
    var isDocker = require_is_docker();
    var pAccess = promisify8(fs111.access);
    var pReadFile = promisify8(fs111.readFile);
    var localXdgOpenPath = path218.join(__dirname, "xdg-open");
    var getWslDrivesMountPoint = /* @__PURE__ */ (() => {
      const defaultMountPoint = "/mnt/";
      let mountPoint;
      return async function() {
        if (mountPoint) {
          return mountPoint;
        }
        const configFilePath = "/etc/wsl.conf";
        let isConfigFileExists = false;
        try {
          await pAccess(configFilePath, fs111.constants.F_OK);
          isConfigFileExists = true;
        } catch (_) {
        }
        if (!isConfigFileExists) {
          return defaultMountPoint;
        }
        const configContent = await pReadFile(configFilePath, { encoding: "utf8" });
        const configMountPoint = /root\s*=\s*(.*)/g.exec(configContent);
        if (!configMountPoint) {
          return defaultMountPoint;
        }
        mountPoint = configMountPoint[1].trim();
        mountPoint = mountPoint.endsWith("/") ? mountPoint : mountPoint + "/";
        return mountPoint;
      };
    })();
    module2.exports = async (target2, options) => {
      if (typeof target2 !== "string") {
        throw new TypeError("Expected a `target`");
      }
      options = {
        wait: false,
        background: false,
        allowNonzeroExitCode: false,
        ...options
      };
      let command;
      let { app } = options;
      let appArguments = [];
      const cliArguments = [];
      const childProcessOptions = {};
      if (Array.isArray(app)) {
        appArguments = app.slice(1);
        app = app[0];
      }
      if (process.platform === "darwin") {
        command = "open";
        if (options.wait) {
          cliArguments.push("--wait-apps");
        }
        if (options.background) {
          cliArguments.push("--background");
        }
        if (app) {
          cliArguments.push("-a", app);
        }
      } else if (process.platform === "win32" || isWsl && !isDocker()) {
        const mountPoint = await getWslDrivesMountPoint();
        command = isWsl ? `${mountPoint}c/Windows/System32/WindowsPowerShell/v1.0/powershell.exe` : `${process.env.SYSTEMROOT}\\System32\\WindowsPowerShell\\v1.0\\powershell`;
        cliArguments.push(
          "-NoProfile",
          "-NonInteractive",
          "\u2013ExecutionPolicy",
          "Bypass",
          "-EncodedCommand"
        );
        if (!isWsl) {
          childProcessOptions.windowsVerbatimArguments = true;
        }
        const encodedArguments = ["Start"];
        if (options.wait) {
          encodedArguments.push("-Wait");
        }
        if (app) {
          encodedArguments.push(`"\`"${app}\`""`, "-ArgumentList");
          appArguments.unshift(target2);
        } else {
          encodedArguments.push(`"${target2}"`);
        }
        if (appArguments.length > 0) {
          appArguments = appArguments.map((arg) => `"\`"${arg}\`""`);
          encodedArguments.push(appArguments.join(","));
        }
        target2 = Buffer.from(encodedArguments.join(" "), "utf16le").toString("base64");
      } else {
        if (app) {
          command = app;
        } else {
          const isBundled = !__dirname || __dirname === "/";
          let exeLocalXdgOpen = false;
          try {
            await pAccess(localXdgOpenPath, fs111.constants.X_OK);
            exeLocalXdgOpen = true;
          } catch (_) {
          }
          const useSystemXdgOpen = process.versions.electron || process.platform === "android" || isBundled || !exeLocalXdgOpen;
          command = useSystemXdgOpen ? "xdg-open" : localXdgOpenPath;
        }
        if (appArguments.length > 0) {
          cliArguments.push(...appArguments);
        }
        if (!options.wait) {
          childProcessOptions.stdio = "ignore";
          childProcessOptions.detached = true;
        }
      }
      cliArguments.push(target2);
      if (process.platform === "darwin" && appArguments.length > 0) {
        cliArguments.push("--args", ...appArguments);
      }
      const subprocess = childProcess.spawn(command, cliArguments, childProcessOptions);
      if (options.wait) {
        return new Promise((resolve3, reject3) => {
          subprocess.once("error", reject3);
          subprocess.once("close", (exitCode) => {
            if (options.allowNonzeroExitCode && exitCode > 0) {
              reject3(new Error(`Exited with code ${exitCode}`));
              return;
            }
            resolve3(subprocess);
          });
        });
      }
      subprocess.unref();
      return subprocess;
    };
  }
});

// ../network/web-auth/lib/promptBrowserOpen.js
async function promptBrowserOpen({ authUrl, context, pollPromise }) {
  const { createReadlineInterface, globalInfo: globalInfo2, globalWarn: globalWarn4, process: process17 } = context;
  if (!createReadlineInterface || !process17.stdin.isTTY) {
    return pollPromise;
  }
  let canonicalUrl;
  try {
    const parsed = new URL(authUrl);
    if (parsed.protocol !== "http:" && parsed.protocol !== "https:") {
      return pollPromise;
    }
    canonicalUrl = parsed.href;
  } catch {
    return pollPromise;
  }
  let rl;
  try {
    rl = createReadlineInterface();
  } catch (err) {
    globalWarn4(`Could not set up keyboard listener: ${String(err)}`);
    return pollPromise;
  }
  globalInfo2("Press ENTER to open the URL in your browser.");
  rl.once("line", () => {
    const handleOpenError = (err) => {
      globalWarn4(`Could not open browser automatically: ${String(err)}`);
      globalInfo2("Please open the URL shown above manually.");
    };
    try {
      (0, import_open.default)(canonicalUrl).catch(handleOpenError);
    } catch (err) {
      handleOpenError(err);
    }
  });
  try {
    return await pollPromise;
  } finally {
    rl.close();
  }
}
var import_open;
var init_promptBrowserOpen = __esm({
  "../network/web-auth/lib/promptBrowserOpen.js"() {
    "use strict";
    import_open = __toESM(require_open(), 1);
  }
});

// ../network/web-auth/lib/withOtpHandling.js
async function withOtpHandling({ context, fetchOptions, operation: operation5 }) {
  const { enquirer: enquirer12, globalInfo: globalInfo2, process: process17 } = context;
  try {
    return await operation5();
  } catch (error) {
    if (!isOtpError(error))
      throw error;
    if (!process17.stdin.isTTY || !process17.stdout.isTTY) {
      throw new OtpNonInteractiveError();
    }
    let otp;
    if (error.body?.authUrl && error.body?.doneUrl) {
      const qrCode = generateQrCode(error.body.authUrl);
      globalInfo2(`Authenticate your account at:
${error.body.authUrl}

${qrCode}`);
      const pollPromise = pollForWebAuthToken({
        context,
        doneUrl: error.body.doneUrl,
        fetchOptions
      });
      otp = await promptBrowserOpen({
        authUrl: error.body.authUrl,
        context,
        pollPromise
      });
    } else {
      const enquirerResponse = await enquirer12.prompt({
        message: "This operation requires a one-time password.\nEnter OTP:",
        name: "otp",
        type: "input"
      });
      otp = enquirerResponse?.otp || void 0;
    }
    if (otp != null) {
      try {
        return await operation5(otp);
      } catch (retryError) {
        if (isOtpError(retryError)) {
          throw new OtpSecondChallengeError();
        }
        throw retryError;
      }
    }
    throw error;
  }
}
var isOtpError, SyntheticOtpError, OtpNonInteractiveError, OtpSecondChallengeError;
var init_withOtpHandling = __esm({
  "../network/web-auth/lib/withOtpHandling.js"() {
    "use strict";
    init_lib2();
    init_generateQrCode();
    init_pollForWebAuthToken();
    init_promptBrowserOpen();
    isOtpError = (error) => error != null && typeof error === "object" && "code" in error && error.code === "EOTP";
    SyntheticOtpError = class _SyntheticOtpError extends Error {
      code = "EOTP";
      body;
      constructor(body) {
        super("This error was meant to be caught by `withOtpHandling`, not to propagate to other parts of the code");
        this.body = body;
      }
      static fromUnknownBody(globalWarn4, body) {
        if (body == null || typeof body !== "object") {
          return new _SyntheticOtpError(void 0);
        }
        let authUrl;
        let doneUrl;
        if ("authUrl" in body) {
          if (typeof body.authUrl === "string") {
            authUrl = body.authUrl;
          } else {
            globalWarn4(`OTP error body: authUrl has type ${typeof body.authUrl}, expected string`);
          }
        }
        if ("doneUrl" in body) {
          if (typeof body.doneUrl === "string") {
            doneUrl = body.doneUrl;
          } else {
            globalWarn4(`OTP error body: doneUrl has type ${typeof body.doneUrl}, expected string`);
          }
        }
        return new _SyntheticOtpError({ authUrl, doneUrl });
      }
    };
    OtpNonInteractiveError = class extends PnpmError {
      constructor() {
        super("OTP_NON_INTERACTIVE", "The registry requires additional authentication, but pnpm is not running in an interactive terminal", {
          hint: "Re-run this command in an interactive terminal to complete authentication, or provide the --otp option if you are using a classic one-time password (OTP)"
        });
      }
    };
    OtpSecondChallengeError = class extends PnpmError {
      constructor() {
        super("OTP_SECOND_CHALLENGE", "The registry requested a one-time password (OTP) a second time after one was already provided", {
          hint: "This is unexpected behavior from the registry. Try the command again later and, if the issue persists, verify that your registry supports OTP-based authentication or contact the registry administrator."
        });
      }
    };
  }
});

// ../network/web-auth/lib/index.js
var init_lib62 = __esm({
  "../network/web-auth/lib/index.js"() {
    "use strict";
    init_generateQrCode();
    init_pollForWebAuthToken();
    init_promptBrowserOpen();
    init_WebAuthTimeoutError();
    init_withOtpHandling();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/ansi-colors/4.1.3/fb2584472e25c00392a86e3665e7509442ce8e50ff4b6b0e4fdbf75a70f4f5b7/node_modules/ansi-colors/symbols.js
var require_symbols2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/ansi-colors/4.1.3/fb2584472e25c00392a86e3665e7509442ce8e50ff4b6b0e4fdbf75a70f4f5b7/node_modules/ansi-colors/symbols.js"(exports2, module2) {
    "use strict";
    var isHyper = typeof process !== "undefined" && process.env.TERM_PROGRAM === "Hyper";
    var isWindows15 = typeof process !== "undefined" && process.platform === "win32";
    var isLinux2 = typeof process !== "undefined" && process.platform === "linux";
    var common3 = {
      ballotDisabled: "\u2612",
      ballotOff: "\u2610",
      ballotOn: "\u2611",
      bullet: "\u2022",
      bulletWhite: "\u25E6",
      fullBlock: "\u2588",
      heart: "\u2764",
      identicalTo: "\u2261",
      line: "\u2500",
      mark: "\u203B",
      middot: "\xB7",
      minus: "\uFF0D",
      multiplication: "\xD7",
      obelus: "\xF7",
      pencilDownRight: "\u270E",
      pencilRight: "\u270F",
      pencilUpRight: "\u2710",
      percent: "%",
      pilcrow2: "\u2761",
      pilcrow: "\xB6",
      plusMinus: "\xB1",
      question: "?",
      section: "\xA7",
      starsOff: "\u2606",
      starsOn: "\u2605",
      upDownArrow: "\u2195"
    };
    var windows = Object.assign({}, common3, {
      check: "\u221A",
      cross: "\xD7",
      ellipsisLarge: "...",
      ellipsis: "...",
      info: "i",
      questionSmall: "?",
      pointer: ">",
      pointerSmall: "\xBB",
      radioOff: "( )",
      radioOn: "(*)",
      warning: "\u203C"
    });
    var other = Object.assign({}, common3, {
      ballotCross: "\u2718",
      check: "\u2714",
      cross: "\u2716",
      ellipsisLarge: "\u22EF",
      ellipsis: "\u2026",
      info: "\u2139",
      questionFull: "\uFF1F",
      questionSmall: "\uFE56",
      pointer: isLinux2 ? "\u25B8" : "\u276F",
      pointerSmall: isLinux2 ? "\u2023" : "\u203A",
      radioOff: "\u25EF",
      radioOn: "\u25C9",
      warning: "\u26A0"
    });
    module2.exports = isWindows15 && !isHyper ? windows : other;
    Reflect.defineProperty(module2.exports, "common", { enumerable: false, value: common3 });
    Reflect.defineProperty(module2.exports, "windows", { enumerable: false, value: windows });
    Reflect.defineProperty(module2.exports, "other", { enumerable: false, value: other });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/ansi-colors/4.1.3/fb2584472e25c00392a86e3665e7509442ce8e50ff4b6b0e4fdbf75a70f4f5b7/node_modules/ansi-colors/index.js
var require_ansi_colors = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/ansi-colors/4.1.3/fb2584472e25c00392a86e3665e7509442ce8e50ff4b6b0e4fdbf75a70f4f5b7/node_modules/ansi-colors/index.js"(exports2, module2) {
    "use strict";
    var isObject4 = (val) => val !== null && typeof val === "object" && !Array.isArray(val);
    var ANSI_REGEX = /[\u001b\u009b][[\]#;?()]*(?:(?:(?:[^\W_]*;?[^\W_]*)\u0007)|(?:(?:[0-9]{1,4}(;[0-9]{0,4})*)?[~0-9=<>cf-nqrtyA-PRZ]))/g;
    var hasColor = () => {
      if (typeof process !== "undefined") {
        return process.env.FORCE_COLOR !== "0";
      }
      return false;
    };
    var create = () => {
      const colors = {
        enabled: hasColor(),
        visible: true,
        styles: {},
        keys: {}
      };
      const ansi = (style2) => {
        let open5 = style2.open = `\x1B[${style2.codes[0]}m`;
        let close = style2.close = `\x1B[${style2.codes[1]}m`;
        let regex2 = style2.regex = new RegExp(`\\u001b\\[${style2.codes[1]}m`, "g");
        style2.wrap = (input, newline) => {
          if (input.includes(close)) input = input.replace(regex2, close + open5);
          let output = open5 + input + close;
          return newline ? output.replace(/\r*\n/g, `${close}$&${open5}`) : output;
        };
        return style2;
      };
      const wrap = (style2, input, newline) => {
        return typeof style2 === "function" ? style2(input) : style2.wrap(input, newline);
      };
      const style = (input, stack) => {
        if (input === "" || input == null) return "";
        if (colors.enabled === false) return input;
        if (colors.visible === false) return "";
        let str2 = "" + input;
        let nl = str2.includes("\n");
        let n2 = stack.length;
        if (n2 > 0 && stack.includes("unstyle")) {
          stack = [.../* @__PURE__ */ new Set(["unstyle", ...stack])].reverse();
        }
        while (n2-- > 0) str2 = wrap(colors.styles[stack[n2]], str2, nl);
        return str2;
      };
      const define2 = (name, codes, type4) => {
        colors.styles[name] = ansi({ name, codes });
        let keys4 = colors.keys[type4] || (colors.keys[type4] = []);
        keys4.push(name);
        Reflect.defineProperty(colors, name, {
          configurable: true,
          enumerable: true,
          set(value) {
            colors.alias(name, value);
          },
          get() {
            let color = (input) => style(input, color.stack);
            Reflect.setPrototypeOf(color, colors);
            color.stack = this.stack ? this.stack.concat(name) : [name];
            return color;
          }
        });
      };
      define2("reset", [0, 0], "modifier");
      define2("bold", [1, 22], "modifier");
      define2("dim", [2, 22], "modifier");
      define2("italic", [3, 23], "modifier");
      define2("underline", [4, 24], "modifier");
      define2("inverse", [7, 27], "modifier");
      define2("hidden", [8, 28], "modifier");
      define2("strikethrough", [9, 29], "modifier");
      define2("black", [30, 39], "color");
      define2("red", [31, 39], "color");
      define2("green", [32, 39], "color");
      define2("yellow", [33, 39], "color");
      define2("blue", [34, 39], "color");
      define2("magenta", [35, 39], "color");
      define2("cyan", [36, 39], "color");
      define2("white", [37, 39], "color");
      define2("gray", [90, 39], "color");
      define2("grey", [90, 39], "color");
      define2("bgBlack", [40, 49], "bg");
      define2("bgRed", [41, 49], "bg");
      define2("bgGreen", [42, 49], "bg");
      define2("bgYellow", [43, 49], "bg");
      define2("bgBlue", [44, 49], "bg");
      define2("bgMagenta", [45, 49], "bg");
      define2("bgCyan", [46, 49], "bg");
      define2("bgWhite", [47, 49], "bg");
      define2("blackBright", [90, 39], "bright");
      define2("redBright", [91, 39], "bright");
      define2("greenBright", [92, 39], "bright");
      define2("yellowBright", [93, 39], "bright");
      define2("blueBright", [94, 39], "bright");
      define2("magentaBright", [95, 39], "bright");
      define2("cyanBright", [96, 39], "bright");
      define2("whiteBright", [97, 39], "bright");
      define2("bgBlackBright", [100, 49], "bgBright");
      define2("bgRedBright", [101, 49], "bgBright");
      define2("bgGreenBright", [102, 49], "bgBright");
      define2("bgYellowBright", [103, 49], "bgBright");
      define2("bgBlueBright", [104, 49], "bgBright");
      define2("bgMagentaBright", [105, 49], "bgBright");
      define2("bgCyanBright", [106, 49], "bgBright");
      define2("bgWhiteBright", [107, 49], "bgBright");
      colors.ansiRegex = ANSI_REGEX;
      colors.hasColor = colors.hasAnsi = (str2) => {
        colors.ansiRegex.lastIndex = 0;
        return typeof str2 === "string" && str2 !== "" && colors.ansiRegex.test(str2);
      };
      colors.alias = (name, color) => {
        let fn = typeof color === "string" ? colors[color] : color;
        if (typeof fn !== "function") {
          throw new TypeError("Expected alias to be the name of an existing color (string) or a function");
        }
        if (!fn.stack) {
          Reflect.defineProperty(fn, "name", { value: name });
          colors.styles[name] = fn;
          fn.stack = [name];
        }
        Reflect.defineProperty(colors, name, {
          configurable: true,
          enumerable: true,
          set(value) {
            colors.alias(name, value);
          },
          get() {
            let color2 = (input) => style(input, color2.stack);
            Reflect.setPrototypeOf(color2, colors);
            color2.stack = this.stack ? this.stack.concat(fn.stack) : fn.stack;
            return color2;
          }
        });
      };
      colors.theme = (custom) => {
        if (!isObject4(custom)) throw new TypeError("Expected theme to be an object");
        for (let name of Object.keys(custom)) {
          colors.alias(name, custom[name]);
        }
        return colors;
      };
      colors.alias("unstyle", (str2) => {
        if (typeof str2 === "string" && str2 !== "") {
          colors.ansiRegex.lastIndex = 0;
          return str2.replace(colors.ansiRegex, "");
        }
        return "";
      });
      colors.alias("noop", (str2) => str2);
      colors.none = colors.clear = colors.noop;
      colors.stripColor = colors.unstyle;
      colors.symbols = require_symbols2();
      colors.define = define2;
      return colors;
    };
    module2.exports = create();
    module2.exports.create = create;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/utils.js
var require_utils12 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/utils.js"(exports2) {
    "use strict";
    var toString4 = Object.prototype.toString;
    var colors = require_ansi_colors();
    var onExitCalled = false;
    var onExitCallbacks = /* @__PURE__ */ new Set();
    var complements = {
      "yellow": "blue",
      "cyan": "red",
      "green": "magenta",
      "black": "white",
      "blue": "yellow",
      "red": "cyan",
      "magenta": "green",
      "white": "black"
    };
    exports2.longest = (arr, prop3) => {
      return arr.reduce((a2, v) => Math.max(a2, prop3 ? v[prop3].length : v.length), 0);
    };
    exports2.hasColor = (str2) => !!str2 && colors.hasColor(str2);
    var isObject4 = exports2.isObject = (val) => {
      return val !== null && typeof val === "object" && !Array.isArray(val);
    };
    exports2.nativeType = (val) => {
      return toString4.call(val).slice(8, -1).toLowerCase().replace(/\s/g, "");
    };
    exports2.isAsyncFn = (val) => {
      return exports2.nativeType(val) === "asyncfunction";
    };
    exports2.isPrimitive = (val) => {
      return val != null && typeof val !== "object" && typeof val !== "function";
    };
    exports2.resolve = (context, value, ...rest) => {
      if (typeof value === "function") {
        return value.call(context, ...rest);
      }
      return value;
    };
    exports2.scrollDown = (choices = []) => [...choices.slice(1), choices[0]];
    exports2.scrollUp = (choices = []) => [choices.pop(), ...choices];
    exports2.reorder = (arr = []) => {
      let res = arr.slice();
      res.sort((a2, b) => {
        if (a2.index > b.index) return 1;
        if (a2.index < b.index) return -1;
        return 0;
      });
      return res;
    };
    exports2.swap = (arr, index, pos) => {
      let len = arr.length;
      let idx = pos === len ? 0 : pos < 0 ? len - 1 : pos;
      let choice = arr[index];
      arr[index] = arr[idx];
      arr[idx] = choice;
    };
    exports2.width = (stream2, fallback = 80) => {
      let columns = stream2 && stream2.columns ? stream2.columns : fallback;
      if (stream2 && typeof stream2.getWindowSize === "function") {
        columns = stream2.getWindowSize()[0];
      }
      if (process.platform === "win32") {
        return columns - 1;
      }
      return columns;
    };
    exports2.height = (stream2, fallback = 20) => {
      let rows = stream2 && stream2.rows ? stream2.rows : fallback;
      if (stream2 && typeof stream2.getWindowSize === "function") {
        rows = stream2.getWindowSize()[1];
      }
      return rows;
    };
    exports2.wordWrap = (str2, options = {}) => {
      if (!str2) return str2;
      if (typeof options === "number") {
        options = { width: options };
      }
      let { indent = "", newline = "\n" + indent, width = 80 } = options;
      let spaces = (newline + indent).match(/[^\S\n]/g) || [];
      width -= spaces.length;
      let source = `.{1,${width}}([\\s\\u200B]+|$)|[^\\s\\u200B]+?([\\s\\u200B]+|$)`;
      let output = str2.trim();
      let regex2 = new RegExp(source, "g");
      let lines = output.match(regex2) || [];
      lines = lines.map((line) => line.replace(/\n$/, ""));
      if (options.padEnd) lines = lines.map((line) => line.padEnd(width, " "));
      if (options.padStart) lines = lines.map((line) => line.padStart(width, " "));
      return indent + lines.join(newline);
    };
    exports2.unmute = (color) => {
      let name = color.stack.find((n2) => colors.keys.color.includes(n2));
      if (name) {
        return colors[name];
      }
      let bg = color.stack.find((n2) => n2.slice(2) === "bg");
      if (bg) {
        return colors[name.slice(2)];
      }
      return (str2) => str2;
    };
    exports2.pascal = (str2) => str2 ? str2[0].toUpperCase() + str2.slice(1) : "";
    exports2.inverse = (color) => {
      if (!color || !color.stack) return color;
      let name = color.stack.find((n2) => colors.keys.color.includes(n2));
      if (name) {
        let col = colors["bg" + exports2.pascal(name)];
        return col ? col.black : color;
      }
      let bg = color.stack.find((n2) => n2.slice(0, 2) === "bg");
      if (bg) {
        return colors[bg.slice(2).toLowerCase()] || color;
      }
      return colors.none;
    };
    exports2.complement = (color) => {
      if (!color || !color.stack) return color;
      let name = color.stack.find((n2) => colors.keys.color.includes(n2));
      let bg = color.stack.find((n2) => n2.slice(0, 2) === "bg");
      if (name && !bg) {
        return colors[complements[name] || name];
      }
      if (bg) {
        let lower = bg.slice(2).toLowerCase();
        let comp = complements[lower];
        if (!comp) return color;
        return colors["bg" + exports2.pascal(comp)] || color;
      }
      return colors.none;
    };
    exports2.meridiem = (date) => {
      let hours = date.getHours();
      let minutes = date.getMinutes();
      let ampm = hours >= 12 ? "pm" : "am";
      hours = hours % 12;
      let hrs = hours === 0 ? 12 : hours;
      let min = minutes < 10 ? "0" + minutes : minutes;
      return hrs + ":" + min + " " + ampm;
    };
    exports2.set = (obj = {}, prop3 = "", val) => {
      return prop3.split(".").reduce((acc, k2, i2, arr) => {
        let value = arr.length - 1 > i2 ? acc[k2] || {} : val;
        if (!exports2.isObject(value) && i2 < arr.length - 1) value = {};
        return acc[k2] = value;
      }, obj);
    };
    exports2.get = (obj = {}, prop3 = "", fallback) => {
      let value = obj[prop3] == null ? prop3.split(".").reduce((acc, k2) => acc && acc[k2], obj) : obj[prop3];
      return value == null ? fallback : value;
    };
    exports2.mixin = (target2, b) => {
      if (!isObject4(target2)) return b;
      if (!isObject4(b)) return target2;
      for (let key of Object.keys(b)) {
        let desc = Object.getOwnPropertyDescriptor(b, key);
        if (hasOwnProperty.call(desc, "value")) {
          if (hasOwnProperty.call(target2, key) && isObject4(desc.value)) {
            let existing = Object.getOwnPropertyDescriptor(target2, key);
            if (isObject4(existing.value) && existing.value !== desc.value) {
              target2[key] = exports2.merge({}, target2[key], b[key]);
            } else {
              Reflect.defineProperty(target2, key, desc);
            }
          } else {
            Reflect.defineProperty(target2, key, desc);
          }
        } else {
          Reflect.defineProperty(target2, key, desc);
        }
      }
      return target2;
    };
    exports2.merge = (...args) => {
      let target2 = {};
      for (let ele of args) exports2.mixin(target2, ele);
      return target2;
    };
    exports2.mixinEmitter = (obj, emitter) => {
      let proto2 = emitter.constructor.prototype;
      for (let key of Object.keys(proto2)) {
        let val = proto2[key];
        if (typeof val === "function") {
          exports2.define(obj, key, val.bind(emitter));
        } else {
          exports2.define(obj, key, val);
        }
      }
    };
    var onExit2 = (quit, code) => {
      if (onExitCalled) return;
      onExitCalled = true;
      onExitCallbacks.forEach((fn) => fn());
      if (quit === true) {
        process.exit(128 + code);
      }
    };
    var onSigTerm = onExit2.bind(null, true, 15);
    var onSigInt = onExit2.bind(null, true, 2);
    exports2.onExit = (callback2) => {
      if (onExitCallbacks.size === 0) {
        process.once("SIGTERM", onSigTerm);
        process.once("SIGINT", onSigInt);
        process.once("exit", onExit2);
      }
      onExitCallbacks.add(callback2);
      return () => {
        onExitCallbacks.delete(callback2);
        if (onExitCallbacks.size === 0) {
          process.off("SIGTERM", onSigTerm);
          process.off("SIGINT", onSigInt);
          process.off("exit", onExit2);
        }
      };
    };
    exports2.define = (obj, key, value) => {
      Reflect.defineProperty(obj, key, { value });
    };
    exports2.defineExport = (obj, key, fn) => {
      let custom;
      Reflect.defineProperty(obj, key, {
        enumerable: true,
        configurable: true,
        set(val) {
          custom = val;
        },
        get() {
          return custom ? custom() : fn();
        }
      });
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/ansi-regex/5.0.1/76c207fb4c174310b90a92e59359db860ee2acc81117e822787bbf6cfbe69c45/node_modules/ansi-regex/index.js
var require_ansi_regex = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/ansi-regex/5.0.1/76c207fb4c174310b90a92e59359db860ee2acc81117e822787bbf6cfbe69c45/node_modules/ansi-regex/index.js"(exports2, module2) {
    "use strict";
    module2.exports = ({ onlyFirst = false } = {}) => {
      const pattern = [
        "[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)",
        "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"
      ].join("|");
      return new RegExp(pattern, onlyFirst ? void 0 : "g");
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/strip-ansi/6.0.1/b780933dd84d36bca6262271187fcc44f9d907bd6963c018f00a50a19cff84b3/node_modules/strip-ansi/index.js
var require_strip_ansi = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/strip-ansi/6.0.1/b780933dd84d36bca6262271187fcc44f9d907bd6963c018f00a50a19cff84b3/node_modules/strip-ansi/index.js"(exports2, module2) {
    "use strict";
    var ansiRegex2 = require_ansi_regex();
    module2.exports = (string) => typeof string === "string" ? string.replace(ansiRegex2(), "") : string;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/combos.js
var require_combos = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/combos.js"(exports2) {
    "use strict";
    exports2.ctrl = {
      a: "first",
      b: "backward",
      c: "cancel",
      d: "deleteForward",
      e: "last",
      f: "forward",
      g: "reset",
      i: "tab",
      k: "cutForward",
      l: "reset",
      n: "newItem",
      m: "cancel",
      j: "submit",
      p: "search",
      r: "remove",
      s: "save",
      u: "undo",
      w: "cutLeft",
      x: "toggleCursor",
      v: "paste"
    };
    exports2.shift = {
      up: "shiftUp",
      down: "shiftDown",
      left: "shiftLeft",
      right: "shiftRight",
      tab: "prev"
    };
    exports2.fn = {
      up: "pageUp",
      down: "pageDown",
      left: "pageLeft",
      right: "pageRight",
      delete: "deleteForward"
    };
    exports2.option = {
      b: "backward",
      f: "forward",
      d: "cutRight",
      left: "cutLeft",
      up: "altUp",
      down: "altDown"
    };
    exports2.keys = {
      pageup: "pageUp",
      // <fn>+<up> (mac), <Page Up> (windows)
      pagedown: "pageDown",
      // <fn>+<down> (mac), <Page Down> (windows)
      home: "home",
      // <fn>+<left> (mac), <home> (windows)
      end: "end",
      // <fn>+<right> (mac), <end> (windows)
      cancel: "cancel",
      delete: "deleteForward",
      backspace: "delete",
      down: "down",
      enter: "submit",
      escape: "cancel",
      left: "left",
      space: "space",
      number: "number",
      return: "submit",
      right: "right",
      tab: "next",
      up: "up"
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/queue.js
var require_queue2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/queue.js"(exports2, module2) {
    "use strict";
    module2.exports = class Queue {
      _queue = [];
      _executing = false;
      _jobRunner = null;
      constructor(jobRunner) {
        this._jobRunner = jobRunner;
      }
      enqueue = (...args) => {
        this._queue.push(args);
        this._dequeue();
      };
      destroy() {
        this._queue.length = 0;
        this._jobRunner = null;
      }
      _dequeue() {
        if (this._executing || !this._queue.length) return;
        this._executing = true;
        this._jobRunner(...this._queue.shift());
        setTimeout(() => {
          this._executing = false;
          this._dequeue();
        });
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/keypress.js
var require_keypress = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/keypress.js"(exports2, module2) {
    "use strict";
    var readline4 = __require("readline");
    var combos = require_combos();
    var Queue3 = require_queue2();
    var metaKeyCodeRe = /^(?:\x1b)([a-zA-Z0-9])$/;
    var fnKeyRe = /^(?:\x1b+)(O|N|\[|\[\[)(?:(\d+)(?:;(\d+))?([~^$])|(?:1;)?(\d+)?([a-zA-Z]))/;
    var keyName = {
      /* xterm/gnome ESC O letter */
      "OP": "f1",
      "OQ": "f2",
      "OR": "f3",
      "OS": "f4",
      /* xterm/rxvt ESC [ number ~ */
      "[11~": "f1",
      "[12~": "f2",
      "[13~": "f3",
      "[14~": "f4",
      /* from Cygwin and used in libuv */
      "[[A": "f1",
      "[[B": "f2",
      "[[C": "f3",
      "[[D": "f4",
      "[[E": "f5",
      /* common */
      "[15~": "f5",
      "[17~": "f6",
      "[18~": "f7",
      "[19~": "f8",
      "[20~": "f9",
      "[21~": "f10",
      "[23~": "f11",
      "[24~": "f12",
      /* xterm ESC [ letter */
      "[A": "up",
      "[B": "down",
      "[C": "right",
      "[D": "left",
      "[E": "clear",
      "[F": "end",
      "[H": "home",
      /* xterm/gnome ESC O letter */
      "OA": "up",
      "OB": "down",
      "OC": "right",
      "OD": "left",
      "OE": "clear",
      "OF": "end",
      "OH": "home",
      /* xterm/rxvt ESC [ number ~ */
      "[1~": "home",
      "[2~": "insert",
      "[3~": "delete",
      "[4~": "end",
      "[5~": "pageup",
      "[6~": "pagedown",
      /* putty */
      "[[5~": "pageup",
      "[[6~": "pagedown",
      /* rxvt */
      "[7~": "home",
      "[8~": "end",
      /* rxvt keys with modifiers */
      "[a": "up",
      "[b": "down",
      "[c": "right",
      "[d": "left",
      "[e": "clear",
      "[2$": "insert",
      "[3$": "delete",
      "[5$": "pageup",
      "[6$": "pagedown",
      "[7$": "home",
      "[8$": "end",
      "Oa": "up",
      "Ob": "down",
      "Oc": "right",
      "Od": "left",
      "Oe": "clear",
      "[2^": "insert",
      "[3^": "delete",
      "[5^": "pageup",
      "[6^": "pagedown",
      "[7^": "home",
      "[8^": "end",
      /* misc. */
      "[Z": "tab"
    };
    function isShiftKey(code) {
      return ["[a", "[b", "[c", "[d", "[e", "[2$", "[3$", "[5$", "[6$", "[7$", "[8$", "[Z"].includes(code);
    }
    function isCtrlKey(code) {
      return ["Oa", "Ob", "Oc", "Od", "Oe", "[2^", "[3^", "[5^", "[6^", "[7^", "[8^"].includes(code);
    }
    var keypress = (s = "", event = {}) => {
      let parts;
      let key = {
        name: event.name,
        ctrl: false,
        meta: false,
        shift: false,
        option: false,
        sequence: s,
        raw: s,
        ...event
      };
      if (Buffer.isBuffer(s)) {
        if (s[0] > 127 && s[1] === void 0) {
          s[0] -= 128;
          s = "\x1B" + String(s);
        } else {
          s = String(s);
        }
      } else if (s !== void 0 && typeof s !== "string") {
        s = String(s);
      } else if (!s) {
        s = key.sequence || "";
      }
      key.sequence = key.sequence || s || key.name;
      if (s === "\r") {
        key.raw = void 0;
        key.name = "return";
      } else if (s === "\n") {
        key.name = "enter";
      } else if (s === "	") {
        key.name = "tab";
      } else if (s === "\b" || s === "\x7F" || s === "\x1B\x7F" || s === "\x1B\b") {
        key.name = "backspace";
        key.meta = s.charAt(0) === "\x1B";
      } else if (s === "\x1B" || s === "\x1B\x1B") {
        key.name = "escape";
        key.meta = s.length === 2;
      } else if (s === " " || s === "\x1B ") {
        key.name = "space";
        key.meta = s.length === 2;
      } else if (s <= "") {
        key.name = String.fromCharCode(s.charCodeAt(0) + "a".charCodeAt(0) - 1);
        key.ctrl = true;
      } else if (s.length === 1 && s >= "0" && s <= "9") {
        key.name = "number";
      } else if (s.length === 1 && s >= "a" && s <= "z") {
        key.name = s;
      } else if (s.length === 1 && s >= "A" && s <= "Z") {
        key.name = s.toLowerCase();
        key.shift = true;
      } else if (parts = metaKeyCodeRe.exec(s)) {
        key.meta = true;
        key.shift = /^[A-Z]$/.test(parts[1]);
      } else if (parts = fnKeyRe.exec(s)) {
        let segs = [...s];
        if (segs[0] === "\x1B" && segs[1] === "\x1B") {
          key.option = true;
        }
        let code = [parts[1], parts[2], parts[4], parts[6]].filter(Boolean).join("");
        let modifier = (parts[3] || parts[5] || 1) - 1;
        key.ctrl = !!(modifier & 4);
        key.meta = !!(modifier & 10);
        key.shift = !!(modifier & 1);
        key.code = code;
        key.name = keyName[code];
        key.shift = isShiftKey(code) || key.shift;
        key.ctrl = isCtrlKey(code) || key.ctrl;
      }
      return key;
    };
    keypress.listen = (options = {}, onKeypress) => {
      let { stdin } = options;
      if (!stdin || stdin !== process.stdin && !stdin.isTTY) {
        throw new Error("Invalid stream passed");
      }
      let rl = readline4.createInterface({ terminal: true, input: stdin });
      readline4.emitKeypressEvents(stdin, rl);
      const queue2 = new Queue3((buf, key) => onKeypress(buf, keypress(buf, key), rl));
      let isRaw = stdin.isRaw;
      if (stdin.isTTY) stdin.setRawMode(true);
      stdin.on("keypress", queue2.enqueue);
      rl.resume();
      let off = () => {
        if (stdin.isTTY) stdin.setRawMode(isRaw);
        stdin.removeListener("keypress", queue2.enqueue);
        queue2.destroy();
        rl.pause();
        rl.close();
      };
      return off;
    };
    keypress.action = (buf, key, customActions) => {
      let obj = { ...combos, ...customActions };
      if (key.ctrl) {
        key.action = obj.ctrl[key.name];
        return key;
      }
      if (key.option && obj.option) {
        key.action = obj.option[key.name];
        return key;
      }
      if (key.shift) {
        key.action = obj.shift[key.name];
        return key;
      }
      key.action = obj.keys[key.name];
      return key;
    };
    module2.exports = keypress;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/timer.js
var require_timer = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/timer.js"(exports2, module2) {
    "use strict";
    module2.exports = (prompt) => {
      prompt.timers = prompt.timers || {};
      let timers = prompt.options.timers;
      if (!timers) return;
      for (let key of Object.keys(timers)) {
        let opts2 = timers[key];
        if (typeof opts2 === "number") {
          opts2 = { interval: opts2 };
        }
        create(prompt, key, opts2);
      }
    };
    function create(prompt, name, options = {}) {
      let timer = prompt.timers[name] = { name, start: Date.now(), ms: 0, tick: 0 };
      let ms = options.interval || 120;
      timer.frames = options.frames || [];
      timer.loading = true;
      let interval = setInterval(() => {
        timer.ms = Date.now() - timer.start;
        timer.tick++;
        prompt.render();
      }, ms);
      timer.stop = () => {
        timer.loading = false;
        clearInterval(interval);
      };
      Reflect.defineProperty(timer, "interval", { value: interval });
      prompt.once("close", () => timer.stop());
      return timer.stop;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/state.js
var require_state = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/state.js"(exports2, module2) {
    "use strict";
    var { define: define2, width } = require_utils12();
    var State2 = class {
      constructor(prompt) {
        let options = prompt.options;
        define2(this, "_prompt", prompt);
        this.type = prompt.type;
        this.name = prompt.name;
        this.message = "";
        this.header = "";
        this.footer = "";
        this.error = "";
        this.hint = "";
        this.input = "";
        this.cursor = 0;
        this.index = 0;
        this.lines = 0;
        this.tick = 0;
        this.prompt = "";
        this.buffer = "";
        this.width = width(options.stdout || process.stdout);
        Object.assign(this, options);
        this.name = this.name || this.message;
        this.message = this.message || this.name;
        this.symbols = prompt.symbols;
        this.styles = prompt.styles;
        this.required = /* @__PURE__ */ new Set();
        this.cancelled = false;
        this.submitted = false;
      }
      clone() {
        let state = { ...this };
        state.status = this.status;
        state.buffer = Buffer.from(state.buffer);
        delete state.clone;
        return state;
      }
      set color(val) {
        this._color = val;
      }
      get color() {
        let styles4 = this.prompt.styles;
        if (this.cancelled) return styles4.cancelled;
        if (this.submitted) return styles4.submitted;
        let color = this._color || styles4[this.status];
        return typeof color === "function" ? color : styles4.pending;
      }
      set loading(value) {
        this._loading = value;
      }
      get loading() {
        if (typeof this._loading === "boolean") return this._loading;
        if (this.loadingChoices) return "choices";
        return false;
      }
      get status() {
        if (this.cancelled) return "cancelled";
        if (this.submitted) return "submitted";
        return "pending";
      }
    };
    module2.exports = State2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/styles.js
var require_styles = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/styles.js"(exports2, module2) {
    "use strict";
    var utils = require_utils12();
    var colors = require_ansi_colors();
    var styles4 = {
      default: colors.noop,
      noop: colors.noop,
      /**
       * Modifiers
       */
      set inverse(custom) {
        this._inverse = custom;
      },
      get inverse() {
        return this._inverse || utils.inverse(this.primary);
      },
      set complement(custom) {
        this._complement = custom;
      },
      get complement() {
        return this._complement || utils.complement(this.primary);
      },
      /**
       * Main color
       */
      primary: colors.cyan,
      /**
       * Main palette
       */
      success: colors.green,
      danger: colors.magenta,
      strong: colors.bold,
      warning: colors.yellow,
      muted: colors.dim,
      disabled: colors.gray,
      dark: colors.dim.gray,
      underline: colors.underline,
      set info(custom) {
        this._info = custom;
      },
      get info() {
        return this._info || this.primary;
      },
      set em(custom) {
        this._em = custom;
      },
      get em() {
        return this._em || this.primary.underline;
      },
      set heading(custom) {
        this._heading = custom;
      },
      get heading() {
        return this._heading || this.muted.underline;
      },
      /**
       * Statuses
       */
      set pending(custom) {
        this._pending = custom;
      },
      get pending() {
        return this._pending || this.primary;
      },
      set submitted(custom) {
        this._submitted = custom;
      },
      get submitted() {
        return this._submitted || this.success;
      },
      set cancelled(custom) {
        this._cancelled = custom;
      },
      get cancelled() {
        return this._cancelled || this.danger;
      },
      /**
       * Special styling
       */
      set typing(custom) {
        this._typing = custom;
      },
      get typing() {
        return this._typing || this.dim;
      },
      set placeholder(custom) {
        this._placeholder = custom;
      },
      get placeholder() {
        return this._placeholder || this.primary.dim;
      },
      set highlight(custom) {
        this._highlight = custom;
      },
      get highlight() {
        return this._highlight || this.inverse;
      }
    };
    styles4.merge = (options = {}) => {
      if (options.styles && typeof options.styles.enabled === "boolean") {
        colors.enabled = options.styles.enabled;
      }
      if (options.styles && typeof options.styles.visible === "boolean") {
        colors.visible = options.styles.visible;
      }
      let result2 = utils.merge({}, styles4, options.styles);
      delete result2.merge;
      for (let key of Object.keys(colors)) {
        if (!hasOwnProperty.call(result2, key)) {
          Reflect.defineProperty(result2, key, { get: () => colors[key] });
        }
      }
      for (let key of Object.keys(colors.styles)) {
        if (!hasOwnProperty.call(result2, key)) {
          Reflect.defineProperty(result2, key, { get: () => colors[key] });
        }
      }
      return result2;
    };
    module2.exports = styles4;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/symbols.js
var require_symbols3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/symbols.js"(exports2, module2) {
    "use strict";
    var isWindows15 = process.platform === "win32";
    var colors = require_ansi_colors();
    var utils = require_utils12();
    var symbols = {
      ...colors.symbols,
      upDownDoubleArrow: "\u21D5",
      upDownDoubleArrow2: "\u2B0D",
      upDownArrow: "\u2195",
      asterisk: "*",
      asterism: "\u2042",
      bulletWhite: "\u25E6",
      electricArrow: "\u2301",
      ellipsisLarge: "\u22EF",
      ellipsisSmall: "\u2026",
      fullBlock: "\u2588",
      identicalTo: "\u2261",
      indicator: colors.symbols.check,
      leftAngle: "\u2039",
      mark: "\u203B",
      minus: "\u2212",
      multiplication: "\xD7",
      obelus: "\xF7",
      percent: "%",
      pilcrow: "\xB6",
      pilcrow2: "\u2761",
      pencilUpRight: "\u2710",
      pencilDownRight: "\u270E",
      pencilRight: "\u270F",
      plus: "+",
      plusMinus: "\xB1",
      pointRight: "\u261E",
      rightAngle: "\u203A",
      section: "\xA7",
      hexagon: { off: "\u2B21", on: "\u2B22", disabled: "\u2B22" },
      ballot: { on: "\u2611", off: "\u2610", disabled: "\u2612" },
      stars: { on: "\u2605", off: "\u2606", disabled: "\u2606" },
      folder: { on: "\u25BC", off: "\u25B6", disabled: "\u25B6" },
      prefix: {
        pending: colors.symbols.question,
        submitted: colors.symbols.check,
        cancelled: colors.symbols.cross
      },
      separator: {
        pending: colors.symbols.pointerSmall,
        submitted: colors.symbols.middot,
        cancelled: colors.symbols.middot
      },
      radio: {
        off: isWindows15 ? "( )" : "\u25EF",
        on: isWindows15 ? "(*)" : "\u25C9",
        disabled: isWindows15 ? "(|)" : "\u24BE"
      },
      numbers: ["\u24EA", "\u2460", "\u2461", "\u2462", "\u2463", "\u2464", "\u2465", "\u2466", "\u2467", "\u2468", "\u2469", "\u246A", "\u246B", "\u246C", "\u246D", "\u246E", "\u246F", "\u2470", "\u2471", "\u2472", "\u2473", "\u3251", "\u3252", "\u3253", "\u3254", "\u3255", "\u3256", "\u3257", "\u3258", "\u3259", "\u325A", "\u325B", "\u325C", "\u325D", "\u325E", "\u325F", "\u32B1", "\u32B2", "\u32B3", "\u32B4", "\u32B5", "\u32B6", "\u32B7", "\u32B8", "\u32B9", "\u32BA", "\u32BB", "\u32BC", "\u32BD", "\u32BE", "\u32BF"]
    };
    symbols.merge = (options) => {
      let result2 = utils.merge({}, colors.symbols, symbols, options.symbols);
      delete result2.merge;
      return result2;
    };
    module2.exports = symbols;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/theme.js
var require_theme = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/theme.js"(exports2, module2) {
    "use strict";
    var styles4 = require_styles();
    var symbols = require_symbols3();
    var utils = require_utils12();
    module2.exports = (prompt) => {
      prompt.options = utils.merge({}, prompt.options.theme, prompt.options);
      prompt.symbols = symbols.merge(prompt.options);
      prompt.styles = styles4.merge(prompt.options);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/ansi.js
var require_ansi = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/ansi.js"(exports2, module2) {
    "use strict";
    var isTerm = process.env.TERM_PROGRAM === "Apple_Terminal";
    var stripAnsi4 = require_strip_ansi();
    var utils = require_utils12();
    var ansi = module2.exports = exports2;
    var ESC2 = "\x1B[";
    var BEL2 = "\x07";
    var hidden2 = false;
    var code = ansi.code = {
      bell: BEL2,
      beep: BEL2,
      beginning: `${ESC2}G`,
      down: `${ESC2}J`,
      esc: ESC2,
      getPosition: `${ESC2}6n`,
      hide: `${ESC2}?25l`,
      line: `${ESC2}2K`,
      lineEnd: `${ESC2}K`,
      lineStart: `${ESC2}1K`,
      restorePosition: ESC2 + (isTerm ? "8" : "u"),
      savePosition: ESC2 + (isTerm ? "7" : "s"),
      screen: `${ESC2}2J`,
      show: `${ESC2}?25h`,
      up: `${ESC2}1J`
    };
    var cursor = ansi.cursor = {
      get hidden() {
        return hidden2;
      },
      hide() {
        hidden2 = true;
        return code.hide;
      },
      show() {
        hidden2 = false;
        return code.show;
      },
      forward: (count2 = 1) => `${ESC2}${count2}C`,
      backward: (count2 = 1) => `${ESC2}${count2}D`,
      nextLine: (count2 = 1) => `${ESC2}E`.repeat(count2),
      prevLine: (count2 = 1) => `${ESC2}F`.repeat(count2),
      up: (count2 = 1) => count2 ? `${ESC2}${count2}A` : "",
      down: (count2 = 1) => count2 ? `${ESC2}${count2}B` : "",
      right: (count2 = 1) => count2 ? `${ESC2}${count2}C` : "",
      left: (count2 = 1) => count2 ? `${ESC2}${count2}D` : "",
      to(x, y) {
        return y ? `${ESC2}${y + 1};${x + 1}H` : `${ESC2}${x + 1}G`;
      },
      move(x = 0, y = 0) {
        let res = "";
        res += x < 0 ? cursor.left(-x) : x > 0 ? cursor.right(x) : "";
        res += y < 0 ? cursor.up(-y) : y > 0 ? cursor.down(y) : "";
        return res;
      },
      strLen(str2) {
        var realLength = 0, len = str2.length, charCode = -1;
        for (var i2 = 0; i2 < len; i2++) {
          charCode = str2.charCodeAt(i2);
          if (charCode >= 0 && charCode <= 128) realLength += 1;
          else realLength += 2;
        }
        return realLength;
      },
      restore(state = {}) {
        let { after, cursor: cursor2, initial, input, prompt, size, value } = state;
        initial = utils.isPrimitive(initial) ? String(initial) : "";
        input = utils.isPrimitive(input) ? String(input) : "";
        value = utils.isPrimitive(value) ? String(value) : "";
        if (size) {
          let codes = ansi.cursor.up(size) + ansi.cursor.to(this.strLen(prompt));
          let diff = input.length - cursor2;
          if (diff > 0) {
            codes += ansi.cursor.left(diff);
          }
          return codes;
        }
        if (value || after) {
          let pos = !input && !!initial ? -this.strLen(initial) : -this.strLen(input) + cursor2;
          if (after) pos -= this.strLen(after);
          if (input === "" && initial && !prompt.includes(initial)) {
            pos += this.strLen(initial);
          }
          return ansi.cursor.move(pos);
        }
      }
    };
    var erase = ansi.erase = {
      screen: code.screen,
      up: code.up,
      down: code.down,
      line: code.line,
      lineEnd: code.lineEnd,
      lineStart: code.lineStart,
      lines(n2) {
        let str2 = "";
        for (let i2 = 0; i2 < n2; i2++) {
          str2 += ansi.erase.line + (i2 < n2 - 1 ? ansi.cursor.up(1) : "");
        }
        if (n2) str2 += ansi.code.beginning;
        return str2;
      }
    };
    ansi.clear = (input = "", columns = process.stdout.columns) => {
      if (!columns) return erase.line + cursor.to(0);
      let width = (str2) => [...stripAnsi4(str2)].length;
      let lines = input.split(/\r?\n/);
      let rows = 0;
      for (let line of lines) {
        rows += 1 + Math.floor(Math.max(width(line) - 1, 0) / columns);
      }
      return (erase.line + cursor.prevLine()).repeat(rows - 1) + erase.line + cursor.to(0);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompt.js
var require_prompt = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompt.js"(exports2, module2) {
    "use strict";
    var Events = __require("events");
    var stripAnsi4 = require_strip_ansi();
    var keypress = require_keypress();
    var timer = require_timer();
    var State2 = require_state();
    var theme = require_theme();
    var utils = require_utils12();
    var ansi = require_ansi();
    var Prompt = class _Prompt extends Events {
      constructor(options = {}) {
        super();
        this.name = options.name;
        this.type = options.type;
        this.options = options;
        theme(this);
        timer(this);
        this.state = new State2(this);
        this.initial = [options.initial, options.default].find((v) => v != null);
        this.stdout = options.stdout || process.stdout;
        this.stdin = options.stdin || process.stdin;
        this.scale = options.scale || 1;
        this.term = this.options.term || process.env.TERM_PROGRAM;
        this.margin = margin(this.options.margin);
        this.setMaxListeners(0);
        setOptions(this);
      }
      async keypress(input, event = {}) {
        this.keypressed = true;
        let key = keypress.action(input, keypress(input, event), this.options.actions);
        this.state.keypress = key;
        this.emit("keypress", input, key);
        this.emit("state", this.state.clone());
        const fn = this.options[key.action] || this[key.action] || this.dispatch;
        if (typeof fn === "function") {
          return await fn.call(this, input, key);
        }
        this.alert();
      }
      alert() {
        delete this.state.alert;
        if (this.options.show === false) {
          this.emit("alert");
        } else {
          this.stdout.write(ansi.code.beep);
        }
      }
      cursorHide() {
        this.stdout.write(ansi.cursor.hide());
        const releaseOnExit = utils.onExit(() => this.cursorShow());
        this.on("close", () => {
          this.cursorShow();
          releaseOnExit();
        });
      }
      cursorShow() {
        this.stdout.write(ansi.cursor.show());
      }
      write(str2) {
        if (!str2) return;
        if (this.stdout && this.state.show !== false) {
          this.stdout.write(str2);
        }
        this.state.buffer += str2;
      }
      clear(lines = 0) {
        let buffer3 = this.state.buffer;
        this.state.buffer = "";
        if (!buffer3 && !lines || this.options.show === false) return;
        this.stdout.write(ansi.cursor.down(lines) + ansi.clear(buffer3, this.width));
      }
      restore() {
        if (this.state.closed || this.options.show === false) return;
        let { prompt, after, rest } = this.sections();
        let { cursor, initial = "", input = "", value = "" } = this;
        let size = this.state.size = rest.length;
        let state = { after, cursor, initial, input, prompt, size, value };
        let codes = ansi.cursor.restore(state);
        if (codes) {
          this.stdout.write(codes);
        }
      }
      sections() {
        let { buffer: buffer3, input, prompt } = this.state;
        prompt = stripAnsi4(prompt);
        let buf = stripAnsi4(buffer3);
        let idx = buf.indexOf(prompt);
        let header = buf.slice(0, idx);
        let rest = buf.slice(idx);
        let lines = rest.split("\n");
        let first = lines[0];
        let last = lines[lines.length - 1];
        let promptLine = prompt + (input ? " " + input : "");
        let len = promptLine.length;
        let after = len < first.length ? first.slice(len + 1) : "";
        return { header, prompt: first, after, rest: lines.slice(1), last };
      }
      async submit() {
        this.state.submitted = true;
        this.state.validating = true;
        if (this.options.onSubmit) {
          await this.options.onSubmit.call(this, this.name, this.value, this);
        }
        let result2 = this.state.error || await this.validate(this.value, this.state);
        if (result2 !== true) {
          let error = "\n" + this.symbols.pointer + " ";
          if (typeof result2 === "string") {
            error += result2.trim();
          } else {
            error += "Invalid input";
          }
          this.state.error = "\n" + this.styles.danger(error);
          this.state.submitted = false;
          await this.render();
          await this.alert();
          this.state.validating = false;
          this.state.error = void 0;
          return;
        }
        this.state.validating = false;
        await this.render();
        await this.close();
        this.value = await this.result(this.value);
        this.emit("submit", this.value);
      }
      async cancel(err) {
        this.state.cancelled = this.state.submitted = true;
        await this.render();
        await this.close();
        if (typeof this.options.onCancel === "function") {
          await this.options.onCancel.call(this, this.name, this.value, this);
        }
        this.emit("cancel", await this.error(err));
      }
      async close() {
        this.state.closed = true;
        try {
          let sections = this.sections();
          let lines = Math.ceil(sections.prompt.length / this.width);
          if (sections.rest) {
            this.write(ansi.cursor.down(sections.rest.length));
          }
          this.write("\n".repeat(lines));
        } catch (err) {
        }
        this.emit("close");
      }
      start() {
        if (!this.stop && this.options.show !== false) {
          this.stop = keypress.listen(this, this.keypress.bind(this));
          this.once("close", this.stop);
          this.emit("start", this);
        }
      }
      async skip() {
        this.skipped = this.options.skip === true;
        if (typeof this.options.skip === "function") {
          this.skipped = await this.options.skip.call(this, this.name, this.value);
        }
        return this.skipped;
      }
      async initialize() {
        let { format: format2, options, result: result2 } = this;
        this.format = () => format2.call(this, this.value);
        this.result = () => result2.call(this, this.value);
        if (typeof options.initial === "function") {
          this.initial = await options.initial.call(this, this);
        }
        if (typeof options.onRun === "function") {
          await options.onRun.call(this, this);
        }
        if (typeof options.onSubmit === "function") {
          let onSubmit = options.onSubmit.bind(this);
          let submit = this.submit.bind(this);
          delete this.options.onSubmit;
          this.submit = async () => {
            await onSubmit(this.name, this.value, this);
            return submit();
          };
        }
        await this.start();
        await this.render();
      }
      render() {
        throw new Error("expected prompt to have a custom render method");
      }
      run() {
        return new Promise(async (resolve3, reject3) => {
          this.once("submit", resolve3);
          this.once("cancel", reject3);
          if (await this.skip()) {
            this.render = () => {
            };
            return this.submit();
          }
          await this.initialize();
          this.emit("run");
        });
      }
      async element(name, choice, i2) {
        let { options, state, symbols, timers } = this;
        let timer2 = timers && timers[name];
        state.timer = timer2;
        let value = options[name] || state[name] || symbols[name];
        let val = choice && choice[name] != null ? choice[name] : await value;
        if (val === "") return val;
        let res = await this.resolve(val, state, choice, i2);
        if (!res && choice && choice[name]) {
          return this.resolve(value, state, choice, i2);
        }
        return res;
      }
      async prefix() {
        let element = await this.element("prefix") || this.symbols;
        let timer2 = this.timers && this.timers.prefix;
        let state = this.state;
        state.timer = timer2;
        if (utils.isObject(element)) element = element[state.status] || element.pending;
        if (!utils.hasColor(element)) {
          let style = this.styles[state.status] || this.styles.pending;
          return style(element);
        }
        return element;
      }
      async message() {
        let message = await this.element("message");
        if (!utils.hasColor(message)) {
          return this.styles.strong(message);
        }
        return message;
      }
      async separator() {
        let element = await this.element("separator") || this.symbols;
        let timer2 = this.timers && this.timers.separator;
        let state = this.state;
        state.timer = timer2;
        let value = element[state.status] || element.pending || state.separator;
        let ele = await this.resolve(value, state);
        if (utils.isObject(ele)) ele = ele[state.status] || ele.pending;
        if (!utils.hasColor(ele)) {
          return this.styles.muted(ele);
        }
        return ele;
      }
      async pointer(choice, i2) {
        let val = await this.element("pointer", choice, i2);
        if (typeof val === "string" && utils.hasColor(val)) {
          return val;
        }
        if (val) {
          let styles4 = this.styles;
          let focused = this.index === i2;
          let style = focused ? styles4.primary : (val2) => val2;
          let ele = await this.resolve(val[focused ? "on" : "off"] || val, this.state);
          let styled = !utils.hasColor(ele) ? style(ele) : ele;
          return focused ? styled : " ".repeat(ele.length);
        }
      }
      async indicator(choice, i2) {
        let val = await this.element("indicator", choice, i2);
        if (typeof val === "string" && utils.hasColor(val)) {
          return val;
        }
        if (val) {
          let styles4 = this.styles;
          let enabled = choice.enabled === true;
          let style = enabled ? styles4.success : styles4.dark;
          let ele = val[enabled ? "on" : "off"] || val;
          return !utils.hasColor(ele) ? style(ele) : ele;
        }
        return "";
      }
      body() {
        return null;
      }
      footer() {
        if (this.state.status === "pending") {
          return this.element("footer");
        }
      }
      header() {
        if (this.state.status === "pending") {
          return this.element("header");
        }
      }
      async hint() {
        if (this.state.status === "pending" && !this.isValue(this.state.input)) {
          let hint = await this.element("hint");
          if (!utils.hasColor(hint)) {
            return this.styles.muted(hint);
          }
          return hint;
        }
      }
      error(err) {
        return !this.state.submitted ? err || this.state.error : "";
      }
      format(value) {
        return value;
      }
      result(value) {
        return value;
      }
      validate(value) {
        if (this.options.required === true) {
          return this.isValue(value);
        }
        return true;
      }
      isValue(value) {
        return value != null && value !== "";
      }
      resolve(value, ...args) {
        return utils.resolve(this, value, ...args);
      }
      get base() {
        return _Prompt.prototype;
      }
      get style() {
        return this.styles[this.state.status];
      }
      get height() {
        return this.options.rows || utils.height(this.stdout, 25);
      }
      get width() {
        return this.options.columns || utils.width(this.stdout, 80);
      }
      get size() {
        return { width: this.width, height: this.height };
      }
      set cursor(value) {
        this.state.cursor = value;
      }
      get cursor() {
        return this.state.cursor;
      }
      set input(value) {
        this.state.input = value;
      }
      get input() {
        return this.state.input;
      }
      set value(value) {
        this.state.value = value;
      }
      get value() {
        let { input, value } = this.state;
        let result2 = [value, input].find(this.isValue.bind(this));
        return this.isValue(result2) ? result2 : this.initial;
      }
      static get prompt() {
        return (options) => new this(options).run();
      }
    };
    function setOptions(prompt) {
      let isValidKey = (key) => {
        return prompt[key] === void 0 || typeof prompt[key] === "function";
      };
      let ignore2 = [
        "actions",
        "choices",
        "initial",
        "margin",
        "roles",
        "styles",
        "symbols",
        "theme",
        "timers",
        "value"
      ];
      let ignoreFn = [
        "body",
        "footer",
        "error",
        "header",
        "hint",
        "indicator",
        "message",
        "prefix",
        "separator",
        "skip"
      ];
      for (let key of Object.keys(prompt.options)) {
        if (ignore2.includes(key)) continue;
        if (/^on[A-Z]/.test(key)) continue;
        let option = prompt.options[key];
        if (typeof option === "function" && isValidKey(key)) {
          if (!ignoreFn.includes(key)) {
            prompt[key] = option.bind(prompt);
          }
        } else if (typeof prompt[key] !== "function") {
          prompt[key] = option;
        }
      }
    }
    function margin(value) {
      if (typeof value === "number") {
        value = [value, value, value, value];
      }
      let arr = [].concat(value || []);
      let pad3 = (i2) => i2 % 2 === 0 ? "\n" : " ";
      let res = [];
      for (let i2 = 0; i2 < 4; i2++) {
        let char = pad3(i2);
        if (arr[i2]) {
          res.push(char.repeat(arr[i2]));
        } else {
          res.push("");
        }
      }
      return res;
    }
    module2.exports = Prompt;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/roles.js
var require_roles = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/roles.js"(exports2, module2) {
    "use strict";
    var utils = require_utils12();
    var roles = {
      default(prompt, choice) {
        return choice;
      },
      checkbox(prompt, choice) {
        throw new Error("checkbox role is not implemented yet");
      },
      editable(prompt, choice) {
        throw new Error("editable role is not implemented yet");
      },
      expandable(prompt, choice) {
        throw new Error("expandable role is not implemented yet");
      },
      heading(prompt, choice) {
        choice.disabled = "";
        choice.indicator = [choice.indicator, " "].find((v) => v != null);
        choice.message = choice.message || "";
        return choice;
      },
      input(prompt, choice) {
        throw new Error("input role is not implemented yet");
      },
      option(prompt, choice) {
        return roles.default(prompt, choice);
      },
      radio(prompt, choice) {
        throw new Error("radio role is not implemented yet");
      },
      separator(prompt, choice) {
        choice.disabled = "";
        choice.indicator = [choice.indicator, " "].find((v) => v != null);
        choice.message = choice.message || prompt.symbols.line.repeat(5);
        return choice;
      },
      spacer(prompt, choice) {
        return choice;
      }
    };
    module2.exports = (name, options = {}) => {
      let role = utils.merge({}, roles, options.roles);
      return role[name] || role.default;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/types/array.js
var require_array2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/types/array.js"(exports2, module2) {
    "use strict";
    var stripAnsi4 = require_strip_ansi();
    var Prompt = require_prompt();
    var roles = require_roles();
    var utils = require_utils12();
    var { reorder, scrollUp: scrollUp2, scrollDown: scrollDown2, isObject: isObject4, swap } = utils;
    var ArrayPrompt = class extends Prompt {
      constructor(options) {
        super(options);
        this.cursorHide();
        this.maxSelected = options.maxSelected || Infinity;
        this.multiple = options.multiple || false;
        this.initial = options.initial || 0;
        this.delay = options.delay || 0;
        this.longest = 0;
        this.num = "";
      }
      async initialize() {
        if (typeof this.options.initial === "function") {
          this.initial = await this.options.initial.call(this);
        }
        await this.reset(true);
        await super.initialize();
      }
      async reset() {
        let { choices, initial, autofocus, suggest } = this.options;
        this.state._choices = [];
        this.state.choices = [];
        this.choices = await Promise.all(await this.toChoices(choices));
        this.choices.forEach((ch) => ch.enabled = false);
        if (typeof suggest !== "function" && this.selectable.length === 0) {
          throw new Error("At least one choice must be selectable");
        }
        if (isObject4(initial)) initial = Object.keys(initial);
        if (Array.isArray(initial)) {
          if (autofocus != null) this.index = this.findIndex(autofocus);
          initial.forEach((v) => this.enable(this.find(v)));
          await this.render();
        } else {
          if (autofocus != null) initial = autofocus;
          if (typeof initial === "string") initial = this.findIndex(initial);
          if (typeof initial === "number" && initial > -1) {
            this.index = Math.max(0, Math.min(initial, this.choices.length));
            this.enable(this.find(this.index));
          }
        }
        if (this.isDisabled(this.focused)) {
          await this.down();
        }
      }
      async toChoices(value, parent) {
        this.state.loadingChoices = true;
        let choices = [];
        let index = 0;
        let toChoices = async (items, parent2) => {
          if (typeof items === "function") items = await items.call(this);
          if (items instanceof Promise) items = await items;
          for (let i2 = 0; i2 < items.length; i2++) {
            let choice = items[i2] = await this.toChoice(items[i2], index++, parent2);
            choices.push(choice);
            if (choice.choices) {
              await toChoices(choice.choices, choice);
            }
          }
          return choices;
        };
        return toChoices(value, parent).then((choices2) => {
          this.state.loadingChoices = false;
          return choices2;
        });
      }
      async toChoice(ele, i2, parent) {
        if (typeof ele === "function") ele = await ele.call(this, this);
        if (ele instanceof Promise) ele = await ele;
        if (typeof ele === "string") ele = { name: ele };
        if (ele.normalized) return ele;
        ele.normalized = true;
        let origVal = ele.value;
        let role = roles(ele.role, this.options);
        ele = role(this, ele);
        if (typeof ele.disabled === "string" && !ele.hint) {
          ele.hint = ele.disabled;
          ele.disabled = true;
        }
        if (ele.disabled === true && ele.hint == null) {
          ele.hint = "(disabled)";
        }
        if (ele.index != null) return ele;
        ele.name = ele.name || ele.key || ele.title || ele.value || ele.message;
        ele.message = ele.message || ele.name || "";
        ele.value = [ele.value, ele.name].find(this.isValue.bind(this));
        ele.input = "";
        ele.index = i2;
        ele.cursor = 0;
        utils.define(ele, "parent", parent);
        ele.level = parent ? parent.level + 1 : 1;
        if (ele.indent == null) {
          ele.indent = parent ? parent.indent + "  " : ele.indent || "";
        }
        ele.path = parent ? parent.path + "." + ele.name : ele.name;
        ele.enabled = !!(this.multiple && !this.isDisabled(ele) && (ele.enabled || this.isSelected(ele)));
        if (!this.isDisabled(ele)) {
          this.longest = Math.max(this.longest, stripAnsi4(ele.message).length);
        }
        let choice = { ...ele };
        ele.reset = (input = choice.input, value = choice.value) => {
          for (let key of Object.keys(choice)) ele[key] = choice[key];
          ele.input = input;
          ele.value = value;
        };
        if (origVal == null && typeof ele.initial === "function") {
          ele.input = await ele.initial.call(this, this.state, ele, i2);
        }
        return ele;
      }
      async onChoice(choice, i2) {
        this.emit("choice", choice, i2, this);
        if (typeof choice.onChoice === "function") {
          await choice.onChoice.call(this, this.state, choice, i2);
        }
      }
      async addChoice(ele, i2, parent) {
        let choice = await this.toChoice(ele, i2, parent);
        this.choices.push(choice);
        this.index = this.choices.length - 1;
        this.limit = this.choices.length;
        return choice;
      }
      async newItem(item, i2, parent) {
        let ele = { name: "New choice name?", editable: true, newChoice: true, ...item };
        let choice = await this.addChoice(ele, i2, parent);
        choice.updateChoice = () => {
          delete choice.newChoice;
          choice.name = choice.message = choice.input;
          choice.input = "";
          choice.cursor = 0;
        };
        return this.render();
      }
      indent(choice) {
        if (choice.indent == null) {
          return choice.level > 1 ? "  ".repeat(choice.level - 1) : "";
        }
        return choice.indent;
      }
      dispatch(s, key) {
        if (this.multiple && this[key.name]) return this[key.name]();
        this.alert();
      }
      focus(choice, enabled) {
        if (typeof enabled !== "boolean") enabled = choice.enabled;
        if (enabled && !choice.enabled && this.selected.length >= this.maxSelected) {
          return this.alert();
        }
        this.index = choice.index;
        choice.enabled = enabled && !this.isDisabled(choice);
        return choice;
      }
      space() {
        if (!this.multiple) return this.alert();
        if (!this.focused) return;
        this.toggle(this.focused);
        return this.render();
      }
      a() {
        if (this.maxSelected < this.choices.length) return this.alert();
        let enabled = this.selectable.every((ch) => ch.enabled);
        this.choices.forEach((ch) => ch.enabled = !enabled);
        return this.render();
      }
      i() {
        if (this.choices.length - this.selected.length > this.maxSelected) {
          return this.alert();
        }
        this.choices.forEach((ch) => ch.enabled = !ch.enabled);
        return this.render();
      }
      g() {
        if (!this.choices.some((ch) => !!ch.parent)) return this.a();
        const focused = this.focused;
        this.toggle(focused.parent && !focused.choices ? focused.parent : focused);
        return this.render();
      }
      toggle(choice, enabled) {
        if (!choice.enabled && this.selected.length >= this.maxSelected) {
          return this.alert();
        }
        if (typeof enabled !== "boolean") enabled = !choice.enabled;
        choice.enabled = enabled;
        if (choice.choices) {
          choice.choices.forEach((ch) => this.toggle(ch, enabled));
        }
        let parent = choice.parent;
        while (parent) {
          let choices = parent.choices.filter((ch) => this.isDisabled(ch));
          parent.enabled = choices.every((ch) => ch.enabled === true);
          parent = parent.parent;
        }
        reset2(this, this.choices);
        this.emit("toggle", choice, this);
        return choice;
      }
      enable(choice) {
        if (this.selected.length >= this.maxSelected) return this.alert();
        choice.enabled = !this.isDisabled(choice);
        choice.choices && choice.choices.forEach(this.enable.bind(this));
        return choice;
      }
      disable(choice) {
        choice.enabled = false;
        choice.choices && choice.choices.forEach(this.disable.bind(this));
        return choice;
      }
      number(n2) {
        this.num += n2;
        let number = (num) => {
          let i2 = Number(num);
          if (i2 > this.choices.length - 1) return this.alert();
          let focused = this.focused;
          let choice = this.choices.find((ch) => i2 === ch.index);
          if (!choice.enabled && this.selected.length >= this.maxSelected) {
            return this.alert();
          }
          if (this.visible.indexOf(choice) === -1) {
            let choices = reorder(this.choices);
            let actualIdx = choices.indexOf(choice);
            if (focused.index > actualIdx) {
              let start = choices.slice(actualIdx, actualIdx + this.limit);
              let end = choices.filter((ch) => !start.includes(ch));
              this.choices = start.concat(end);
            } else {
              let pos = actualIdx - this.limit + 1;
              this.choices = choices.slice(pos).concat(choices.slice(0, pos));
            }
          }
          this.index = this.choices.indexOf(choice);
          this.toggle(this.focused);
          return this.render();
        };
        clearTimeout(this.numberTimeout);
        return new Promise((resolve3) => {
          let len = this.choices.length;
          let num = this.num;
          let handle = (val = false, res) => {
            clearTimeout(this.numberTimeout);
            if (val) res = number(num);
            this.num = "";
            resolve3(res);
          };
          if (num === "0" || num.length === 1 && Number(num + "0") > len) {
            return handle(true);
          }
          if (Number(num) > len) {
            return handle(false, this.alert());
          }
          this.numberTimeout = setTimeout(() => handle(true), this.delay);
        });
      }
      home() {
        this.choices = reorder(this.choices);
        this.index = 0;
        return this.render();
      }
      end() {
        let pos = this.choices.length - this.limit;
        let choices = reorder(this.choices);
        this.choices = choices.slice(pos).concat(choices.slice(0, pos));
        this.index = this.limit - 1;
        return this.render();
      }
      first() {
        this.index = 0;
        return this.render();
      }
      last() {
        this.index = this.visible.length - 1;
        return this.render();
      }
      prev() {
        if (this.visible.length <= 1) return this.alert();
        return this.up();
      }
      next() {
        if (this.visible.length <= 1) return this.alert();
        return this.down();
      }
      right() {
        if (this.cursor >= this.input.length) return this.alert();
        this.cursor++;
        return this.render();
      }
      left() {
        if (this.cursor <= 0) return this.alert();
        this.cursor--;
        return this.render();
      }
      up() {
        let len = this.choices.length;
        let vis = this.visible.length;
        let idx = this.index;
        if (this.options.scroll === false && idx === 0) {
          return this.alert();
        }
        if (len > vis && idx === 0) {
          return this.scrollUp();
        }
        this.index = (idx - 1 % len + len) % len;
        if (this.isDisabled() && !this.allChoicesAreDisabled()) {
          return this.up();
        }
        return this.render();
      }
      down() {
        let len = this.choices.length;
        let vis = this.visible.length;
        let idx = this.index;
        if (this.options.scroll === false && idx === vis - 1) {
          return this.alert();
        }
        if (len > vis && idx === vis - 1) {
          return this.scrollDown();
        }
        this.index = (idx + 1) % len;
        if (this.isDisabled() && !this.allChoicesAreDisabled()) {
          return this.down();
        }
        return this.render();
      }
      scrollUp(i2 = 0) {
        this.choices = scrollUp2(this.choices);
        this.index = i2;
        if (this.isDisabled()) {
          return this.up();
        }
        return this.render();
      }
      scrollDown(i2 = this.visible.length - 1) {
        this.choices = scrollDown2(this.choices);
        this.index = i2;
        if (this.isDisabled()) {
          return this.down();
        }
        return this.render();
      }
      async shiftUp() {
        if (this.options.sort === true) {
          this.sorting = true;
          this.swap(this.index - 1);
          await this.up();
          this.sorting = false;
          return;
        }
        return this.scrollUp(this.index);
      }
      async shiftDown() {
        if (this.options.sort === true) {
          this.sorting = true;
          this.swap(this.index + 1);
          await this.down();
          this.sorting = false;
          return;
        }
        return this.scrollDown(this.index);
      }
      pageUp() {
        if (this.visible.length <= 1) return this.alert();
        this.limit = Math.max(this.limit - 1, 0);
        this.index = Math.min(this.limit - 1, this.index);
        this._limit = this.limit;
        if (this.isDisabled()) {
          return this.up();
        }
        return this.render();
      }
      pageDown() {
        if (this.visible.length >= this.choices.length) return this.alert();
        this.index = Math.max(0, this.index);
        this.limit = Math.min(this.limit + 1, this.choices.length);
        this._limit = this.limit;
        if (this.isDisabled()) {
          return this.down();
        }
        return this.render();
      }
      swap(pos) {
        swap(this.choices, this.index, pos);
      }
      allChoicesAreDisabled(choices = this.choices) {
        return choices.every((choice) => this.isDisabled(choice));
      }
      isDisabled(choice = this.focused) {
        let keys4 = ["disabled", "collapsed", "hidden", "completing", "readonly"];
        if (choice && keys4.some((key) => choice[key] === true)) {
          return true;
        }
        return choice && choice.role === "heading";
      }
      isEnabled(choice = this.focused) {
        if (Array.isArray(choice)) return choice.every((ch) => this.isEnabled(ch));
        if (choice.choices) {
          let choices = choice.choices.filter((ch) => !this.isDisabled(ch));
          return choice.enabled && choices.every((ch) => this.isEnabled(ch));
        }
        return choice.enabled && !this.isDisabled(choice);
      }
      isChoice(choice, value) {
        return choice.name === value || choice.index === Number(value);
      }
      isSelected(choice) {
        if (Array.isArray(this.initial)) {
          return this.initial.some((value) => this.isChoice(choice, value));
        }
        return this.isChoice(choice, this.initial);
      }
      map(names = [], prop3 = "value") {
        return [].concat(names || []).reduce((acc, name) => {
          acc[name] = this.find(name, prop3);
          return acc;
        }, {});
      }
      filter(value, prop3) {
        let isChoice = (ele, i2) => [ele.name, i2].includes(value);
        let fn = typeof value === "function" ? value : isChoice;
        let choices = this.options.multiple ? this.state._choices : this.choices;
        let result2 = choices.filter(fn);
        if (prop3) {
          return result2.map((ch) => ch[prop3]);
        }
        return result2;
      }
      find(value, prop3) {
        if (isObject4(value)) return prop3 ? value[prop3] : value;
        let isChoice = (ele, i2) => [ele.name, i2].includes(value);
        let fn = typeof value === "function" ? value : isChoice;
        let choice = this.choices.find(fn);
        if (choice) {
          return prop3 ? choice[prop3] : choice;
        }
      }
      findIndex(value) {
        return this.choices.indexOf(this.find(value));
      }
      async submit() {
        let choice = this.focused;
        if (!choice) return this.alert();
        if (choice.newChoice) {
          if (!choice.input) return this.alert();
          choice.updateChoice();
          return this.render();
        }
        if (this.choices.some((ch) => ch.newChoice)) {
          return this.alert();
        }
        let { reorder: reorder2, sort } = this.options;
        let multi = this.multiple === true;
        let value = this.selected;
        if (value === void 0) {
          return this.alert();
        }
        if (Array.isArray(value) && reorder2 !== false && sort !== true) {
          value = utils.reorder(value);
        }
        this.value = multi ? value.map((ch) => ch.name) : value.name;
        return super.submit();
      }
      set choices(choices = []) {
        this.state._choices = this.state._choices || [];
        this.state.choices = choices;
        for (let choice of choices) {
          if (!this.state._choices.some((ch) => ch.name === choice.name)) {
            this.state._choices.push(choice);
          }
        }
        if (!this._initial && this.options.initial) {
          this._initial = true;
          let init2 = this.initial;
          if (typeof init2 === "string" || typeof init2 === "number") {
            let choice = this.find(init2);
            if (choice) {
              this.initial = choice.index;
              this.focus(choice, true);
            }
          }
        }
      }
      get choices() {
        return reset2(this, this.state.choices || []);
      }
      set visible(visible) {
        this.state.visible = visible;
      }
      get visible() {
        return (this.state.visible || this.choices).slice(0, this.limit);
      }
      set limit(num) {
        this.state.limit = num;
      }
      get limit() {
        let { state, options, choices } = this;
        let limit = state.limit || this._limit || options.limit || choices.length;
        return Math.min(limit, this.height);
      }
      set value(value) {
        super.value = value;
      }
      get value() {
        if (typeof super.value !== "string" && super.value === this.initial) {
          return this.input;
        }
        return super.value;
      }
      set index(i2) {
        this.state.index = i2;
      }
      get index() {
        return Math.max(0, this.state ? this.state.index : 0);
      }
      get enabled() {
        return this.filter(this.isEnabled.bind(this));
      }
      get focused() {
        let choice = this.choices[this.index];
        if (choice && this.state.submitted && this.multiple !== true) {
          choice.enabled = true;
        }
        return choice;
      }
      get selectable() {
        return this.choices.filter((choice) => !this.isDisabled(choice));
      }
      get selected() {
        return this.multiple ? this.enabled : this.focused;
      }
    };
    function reset2(prompt, choices) {
      if (choices instanceof Promise) return choices;
      if (typeof choices === "function") {
        if (utils.isAsyncFn(choices)) return choices;
        choices = choices.call(prompt, prompt);
      }
      for (let choice of choices) {
        if (Array.isArray(choice.choices)) {
          let items = choice.choices.filter((ch) => !prompt.isDisabled(ch));
          choice.enabled = items.every((ch) => ch.enabled === true);
        }
        if (prompt.isDisabled(choice) === true) {
          delete choice.enabled;
        }
      }
      return choices;
    }
    module2.exports = ArrayPrompt;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/select.js
var require_select = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/select.js"(exports2, module2) {
    "use strict";
    var ArrayPrompt = require_array2();
    var utils = require_utils12();
    var SelectPrompt = class extends ArrayPrompt {
      constructor(options) {
        super(options);
        this.emptyError = this.options.emptyError || "No items were selected";
      }
      async dispatch(s, key) {
        if (this.multiple) {
          return this[key.name] ? await this[key.name](s, key) : await super.dispatch(s, key);
        }
        this.alert();
      }
      separator() {
        if (this.options.separator) return super.separator();
        let sep2 = this.styles.muted(this.symbols.ellipsis);
        return this.state.submitted ? super.separator() : sep2;
      }
      pointer(choice, i2) {
        return !this.multiple || this.options.pointer ? super.pointer(choice, i2) : "";
      }
      indicator(choice, i2) {
        return this.multiple ? super.indicator(choice, i2) : "";
      }
      choiceMessage(choice, i2) {
        let message = this.resolve(choice.message, this.state, choice, i2);
        if (choice.role === "heading" && !utils.hasColor(message)) {
          message = this.styles.strong(message);
        }
        return this.resolve(message, this.state, choice, i2);
      }
      choiceSeparator() {
        return ":";
      }
      async renderChoice(choice, i2) {
        await this.onChoice(choice, i2);
        let focused = this.index === i2;
        let pointer = await this.pointer(choice, i2);
        let check = await this.indicator(choice, i2) + (choice.pad || "");
        let hint = await this.resolve(choice.hint, this.state, choice, i2);
        if (hint && !utils.hasColor(hint)) {
          hint = this.styles.muted(hint);
        }
        let ind = this.indent(choice);
        let msg = await this.choiceMessage(choice, i2);
        let line = () => [this.margin[3], ind + pointer + check, msg, this.margin[1], hint].filter(Boolean).join(" ");
        if (choice.role === "heading") {
          return line();
        }
        if (choice.disabled) {
          if (!utils.hasColor(msg)) {
            msg = this.styles.disabled(msg);
          }
          return line();
        }
        if (focused) {
          msg = this.styles.em(msg);
        }
        return line();
      }
      async renderChoices() {
        if (this.state.loading === "choices") {
          return this.styles.warning("Loading choices");
        }
        if (this.state.submitted) return "";
        let choices = this.visible.map(async (ch, i2) => await this.renderChoice(ch, i2));
        let visible = await Promise.all(choices);
        if (!visible.length) visible.push(this.styles.danger("No matching choices"));
        let result2 = this.margin[0] + visible.join("\n");
        let header;
        if (this.options.choicesHeader) {
          header = await this.resolve(this.options.choicesHeader, this.state);
        }
        return [header, result2].filter(Boolean).join("\n");
      }
      format() {
        if (!this.state.submitted || this.state.cancelled) return "";
        if (Array.isArray(this.selected)) {
          return this.selected.map((choice) => this.styles.primary(choice.name)).join(", ");
        }
        return this.styles.primary(this.selected.name);
      }
      async render() {
        let { submitted, size } = this.state;
        let prompt = "";
        let header = await this.header();
        let prefix = await this.prefix();
        let separator = await this.separator();
        let message = await this.message();
        if (this.options.promptLine !== false) {
          prompt = [prefix, message, separator, ""].join(" ");
          this.state.prompt = prompt;
        }
        let output = await this.format();
        let help76 = await this.error() || await this.hint();
        let body = await this.renderChoices();
        let footer = await this.footer();
        if (output) prompt += output;
        if (help76 && !prompt.includes(help76)) prompt += " " + help76;
        if (submitted && !output && !body.trim() && this.multiple && this.emptyError != null) {
          prompt += this.styles.danger(this.emptyError);
        }
        this.clear(size);
        this.write([header, prompt, body, footer].filter(Boolean).join("\n"));
        this.write(this.margin[2]);
        this.restore();
      }
    };
    module2.exports = SelectPrompt;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/autocomplete.js
var require_autocomplete = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/autocomplete.js"(exports2, module2) {
    "use strict";
    var Select = require_select();
    var highlight2 = (input, color) => {
      const regex2 = input ? new RegExp(input, "ig") : /$^/;
      return (str2) => {
        return input ? str2.replace(regex2, (match) => color(match)) : str2;
      };
    };
    var AutoComplete = class extends Select {
      constructor(options) {
        super(options);
        this.cursorShow();
      }
      moveCursor(n2) {
        this.state.cursor += n2;
      }
      dispatch(ch) {
        return this.append(ch);
      }
      space(ch) {
        return this.options.multiple ? super.space(ch) : this.append(ch);
      }
      append(ch) {
        let { cursor, input } = this.state;
        this.input = input.slice(0, cursor) + ch + input.slice(cursor);
        this.moveCursor(1);
        return this.complete();
      }
      delete() {
        let { cursor, input } = this.state;
        if (!input) return this.alert();
        this.input = input.slice(0, cursor - 1) + input.slice(cursor);
        this.moveCursor(-1);
        return this.complete();
      }
      deleteForward() {
        let { cursor, input } = this.state;
        if (input[cursor] === void 0) return this.alert();
        this.input = `${input}`.slice(0, cursor) + `${input}`.slice(cursor + 1);
        return this.complete();
      }
      number(ch) {
        return this.append(ch);
      }
      async complete() {
        this.completing = true;
        this.choices = await this.suggest(this.input, this.state._choices);
        this.state.limit = void 0;
        this.index = Math.min(Math.max(this.visible.length - 1, 0), this.index);
        await this.render();
        this.completing = false;
      }
      suggest(input = this.input, choices = this.state._choices) {
        if (typeof this.options.suggest === "function") {
          return this.options.suggest.call(this, input, choices);
        }
        let str2 = input.toLowerCase();
        return choices.filter((ch) => ch.message.toLowerCase().includes(str2));
      }
      pointer() {
        return "";
      }
      format() {
        if (!this.focused) return this.input;
        if (this.options.multiple && this.state.submitted) {
          return this.selected.map((ch) => this.styles.primary(ch.message)).join(", ");
        }
        if (this.state.submitted) {
          let value = this.value = this.input = this.focused.value;
          return this.styles.primary(value);
        }
        return this.input;
      }
      async render() {
        if (this.state.status !== "pending") return super.render();
        const hl = this.options.highlight || this.styles.complement;
        const style = (input, color2) => {
          if (!input) return input;
          if (hl.stack) return hl(input);
          return hl.call(this, input);
        };
        const color = highlight2(this.input, style);
        const choices = this.choices;
        this.choices = choices.map((ch) => ({ ...ch, message: color(ch.message) }));
        await super.render();
        this.choices = choices;
      }
      submit() {
        if (this.options.multiple) {
          this.value = this.selected.map((ch) => ch.name);
        }
        return super.submit();
      }
    };
    module2.exports = AutoComplete;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/placeholder.js
var require_placeholder = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/placeholder.js"(exports2, module2) {
    "use strict";
    var utils = require_utils12();
    module2.exports = (prompt, options = {}) => {
      prompt.cursorHide();
      let { input = "", initial = "", pos, showCursor = true, color } = options;
      let style = color || prompt.styles.placeholder;
      let inverse2 = utils.inverse(prompt.styles.primary);
      let blinker = (str2) => inverse2(prompt.styles.black(str2));
      let output = input;
      let char = " ";
      let reverse3 = blinker(char);
      if (prompt.blink && prompt.blink.off === true) {
        blinker = (str2) => str2;
        reverse3 = "";
      }
      if (showCursor && pos === 0 && initial === "" && input === "") {
        return blinker(char);
      }
      if (showCursor && pos === 0 && (input === initial || input === "")) {
        return blinker(initial[0]) + style(initial.slice(1));
      }
      initial = utils.isPrimitive(initial) ? `${initial}` : "";
      input = utils.isPrimitive(input) ? `${input}` : "";
      let placeholder = initial && initial.startsWith(input) && initial !== input;
      let cursor = placeholder ? blinker(initial[input.length]) : reverse3;
      if (pos !== input.length && showCursor === true) {
        output = input.slice(0, pos) + blinker(input[pos]) + input.slice(pos + 1);
        cursor = "";
      }
      if (showCursor === false) {
        cursor = "";
      }
      if (placeholder) {
        let raw = prompt.styles.unstyle(output + cursor);
        return output + cursor + style(initial.slice(raw.length));
      }
      return output + cursor;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/form.js
var require_form = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/form.js"(exports2, module2) {
    "use strict";
    var stripAnsi4 = require_strip_ansi();
    var SelectPrompt = require_select();
    var placeholder = require_placeholder();
    var FormPrompt = class extends SelectPrompt {
      constructor(options) {
        super({ ...options, multiple: true });
        this.type = "form";
        this.initial = this.options.initial;
        this.align = [this.options.align, "right"].find((v) => v != null);
        this.emptyError = "";
        this.values = {};
      }
      async reset(first) {
        await super.reset();
        if (first === true) this._index = this.index;
        this.index = this._index;
        this.values = {};
        this.choices.forEach((choice) => choice.reset && choice.reset());
        return this.render();
      }
      dispatch(char) {
        return !!char && this.append(char);
      }
      append(char) {
        let choice = this.focused;
        if (!choice) return this.alert();
        let { cursor, input } = choice;
        choice.value = choice.input = input.slice(0, cursor) + char + input.slice(cursor);
        choice.cursor++;
        return this.render();
      }
      delete() {
        let choice = this.focused;
        if (!choice || choice.cursor <= 0) return this.alert();
        let { cursor, input } = choice;
        choice.value = choice.input = input.slice(0, cursor - 1) + input.slice(cursor);
        choice.cursor--;
        return this.render();
      }
      deleteForward() {
        let choice = this.focused;
        if (!choice) return this.alert();
        let { cursor, input } = choice;
        if (input[cursor] === void 0) return this.alert();
        let str2 = `${input}`.slice(0, cursor) + `${input}`.slice(cursor + 1);
        choice.value = choice.input = str2;
        return this.render();
      }
      right() {
        let choice = this.focused;
        if (!choice) return this.alert();
        if (choice.cursor >= choice.input.length) return this.alert();
        choice.cursor++;
        return this.render();
      }
      left() {
        let choice = this.focused;
        if (!choice) return this.alert();
        if (choice.cursor <= 0) return this.alert();
        choice.cursor--;
        return this.render();
      }
      space(ch, key) {
        return this.dispatch(ch, key);
      }
      number(ch, key) {
        return this.dispatch(ch, key);
      }
      next() {
        let ch = this.focused;
        if (!ch) return this.alert();
        let { initial, input } = ch;
        if (initial && initial.startsWith(input) && input !== initial) {
          ch.value = ch.input = initial;
          ch.cursor = ch.value.length;
          return this.render();
        }
        return super.next();
      }
      prev() {
        let ch = this.focused;
        if (!ch) return this.alert();
        if (ch.cursor === 0) return super.prev();
        ch.value = ch.input = "";
        ch.cursor = 0;
        return this.render();
      }
      separator() {
        return "";
      }
      format(value) {
        return !this.state.submitted ? super.format(value) : "";
      }
      pointer() {
        return "";
      }
      indicator(choice) {
        return choice.input ? "\u29BF" : "\u2299";
      }
      async choiceSeparator(choice, i2) {
        let sep2 = await this.resolve(choice.separator, this.state, choice, i2) || ":";
        return sep2 ? " " + this.styles.disabled(sep2) : "";
      }
      async renderChoice(choice, i2) {
        await this.onChoice(choice, i2);
        let { state, styles: styles4 } = this;
        let { cursor, initial = "", name, input = "" } = choice;
        let { muted, submitted, primary, danger } = styles4;
        let focused = this.index === i2;
        let validate2 = choice.validate || (() => true);
        let sep2 = await this.choiceSeparator(choice, i2);
        let msg = choice.message;
        if (this.align === "right") msg = msg.padStart(this.longest + 1, " ");
        if (this.align === "left") msg = msg.padEnd(this.longest + 1, " ");
        let value = this.values[name] = input || initial;
        let color = input ? "success" : "dark";
        if (await validate2.call(choice, value, this.state) !== true) {
          color = "danger";
        }
        let style = styles4[color];
        let indicator = style(await this.indicator(choice, i2)) + (choice.pad || "");
        let indent = this.indent(choice);
        let line = () => [indent, indicator, msg + sep2, input].filter(Boolean).join(" ");
        if (state.submitted) {
          msg = stripAnsi4(msg);
          input = submitted(input);
          return line();
        }
        if (choice.format) {
          input = await choice.format.call(this, input, choice, i2);
        } else {
          let color2 = this.styles.muted;
          let options = { input, initial, pos: cursor, showCursor: focused, color: color2 };
          input = placeholder(this, options);
        }
        if (!this.isValue(input)) {
          input = this.styles.muted(this.symbols.ellipsis);
        }
        if (choice.result) {
          this.values[name] = await choice.result.call(this, value, choice, i2);
        }
        if (focused) {
          msg = primary(msg);
        }
        if (choice.error) {
          input += (input ? " " : "") + danger(choice.error.trim());
        } else if (choice.hint) {
          input += (input ? " " : "") + muted(choice.hint.trim());
        }
        return line();
      }
      async submit() {
        this.value = this.values;
        return super.base.submit.call(this);
      }
    };
    module2.exports = FormPrompt;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/types/auth.js
var require_auth = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/types/auth.js"(exports2, module2) {
    "use strict";
    var FormPrompt = require_form();
    var defaultAuthenticate = () => {
      throw new Error("expected prompt to have a custom authenticate method");
    };
    var factory = (authenticate = defaultAuthenticate) => {
      class AuthPrompt extends FormPrompt {
        constructor(options) {
          super(options);
        }
        async submit() {
          this.value = await authenticate.call(this, this.values, this.state);
          super.base.submit.call(this);
        }
        static create(authenticate2) {
          return factory(authenticate2);
        }
      }
      return AuthPrompt;
    };
    module2.exports = factory();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/basicauth.js
var require_basicauth = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/basicauth.js"(exports2, module2) {
    "use strict";
    var AuthPrompt = require_auth();
    function defaultAuthenticate(value, state) {
      if (value.username === this.options.username && value.password === this.options.password) {
        return true;
      }
      return false;
    }
    var factory = (authenticate = defaultAuthenticate) => {
      const choices = [
        { name: "username", message: "username" },
        {
          name: "password",
          message: "password",
          format(input) {
            if (this.options.showPassword) {
              return input;
            }
            let color = this.state.submitted ? this.styles.primary : this.styles.muted;
            return color(this.symbols.asterisk.repeat(input.length));
          }
        }
      ];
      class BasicAuthPrompt extends AuthPrompt.create(authenticate) {
        constructor(options) {
          super({ ...options, choices });
        }
        static create(authenticate2) {
          return factory(authenticate2);
        }
      }
      return BasicAuthPrompt;
    };
    module2.exports = factory();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/types/boolean.js
var require_boolean = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/types/boolean.js"(exports2, module2) {
    "use strict";
    var Prompt = require_prompt();
    var { isPrimitive: isPrimitive2, hasColor } = require_utils12();
    var BooleanPrompt = class extends Prompt {
      constructor(options) {
        super(options);
        this.cursorHide();
      }
      async initialize() {
        let initial = await this.resolve(this.initial, this.state);
        this.input = await this.cast(initial);
        await super.initialize();
      }
      dispatch(ch) {
        if (!this.isValue(ch)) return this.alert();
        this.input = ch;
        return this.submit();
      }
      format(value) {
        let { styles: styles4, state } = this;
        return !state.submitted ? styles4.primary(value) : styles4.success(value);
      }
      cast(input) {
        return this.isTrue(input);
      }
      isTrue(input) {
        return /^[ty1]/i.test(input);
      }
      isFalse(input) {
        return /^[fn0]/i.test(input);
      }
      isValue(value) {
        return isPrimitive2(value) && (this.isTrue(value) || this.isFalse(value));
      }
      async hint() {
        if (this.state.status === "pending") {
          let hint = await this.element("hint");
          if (!hasColor(hint)) {
            return this.styles.muted(hint);
          }
          return hint;
        }
      }
      async render() {
        let { input, size } = this.state;
        let prefix = await this.prefix();
        let sep2 = await this.separator();
        let msg = await this.message();
        let hint = this.styles.muted(this.default);
        let promptLine = [prefix, msg, hint, sep2].filter(Boolean).join(" ");
        this.state.prompt = promptLine;
        let header = await this.header();
        let value = this.value = this.cast(input);
        let output = await this.format(value);
        let help76 = await this.error() || await this.hint();
        let footer = await this.footer();
        if (help76 && !promptLine.includes(help76)) output += " " + help76;
        promptLine += " " + output;
        this.clear(size);
        this.write([header, promptLine, footer].filter(Boolean).join("\n"));
        this.restore();
      }
      set value(value) {
        super.value = value;
      }
      get value() {
        return this.cast(super.value);
      }
    };
    module2.exports = BooleanPrompt;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/confirm.js
var require_confirm = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/confirm.js"(exports2, module2) {
    "use strict";
    var BooleanPrompt = require_boolean();
    var ConfirmPrompt = class extends BooleanPrompt {
      constructor(options) {
        super(options);
        this.default = this.options.default || (this.initial ? "(Y/n)" : "(y/N)");
      }
    };
    module2.exports = ConfirmPrompt;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/editable.js
var require_editable = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/editable.js"(exports2, module2) {
    "use strict";
    var Select = require_select();
    var Form = require_form();
    var form = Form.prototype;
    var Editable = class extends Select {
      constructor(options) {
        super({ ...options, multiple: true });
        this.align = [this.options.align, "left"].find((v) => v != null);
        this.emptyError = "";
        this.values = {};
      }
      dispatch(char, key) {
        let choice = this.focused;
        let parent = choice.parent || {};
        if (!choice.editable && !parent.editable) {
          if (char === "a" || char === "i") return super[char]();
        }
        return form.dispatch.call(this, char, key);
      }
      append(char, key) {
        return form.append.call(this, char, key);
      }
      delete(char, key) {
        return form.delete.call(this, char, key);
      }
      space(char) {
        return this.focused.editable ? this.append(char) : super.space();
      }
      number(char) {
        return this.focused.editable ? this.append(char) : super.number(char);
      }
      next() {
        return this.focused.editable ? form.next.call(this) : super.next();
      }
      prev() {
        return this.focused.editable ? form.prev.call(this) : super.prev();
      }
      async indicator(choice, i2) {
        let symbol = choice.indicator || "";
        let value = choice.editable ? symbol : super.indicator(choice, i2);
        return await this.resolve(value, this.state, choice, i2) || "";
      }
      indent(choice) {
        return choice.role === "heading" ? "" : choice.editable ? " " : "  ";
      }
      async renderChoice(choice, i2) {
        choice.indent = "";
        if (choice.editable) return form.renderChoice.call(this, choice, i2);
        return super.renderChoice(choice, i2);
      }
      error() {
        return "";
      }
      footer() {
        return this.state.error;
      }
      async validate() {
        let result2 = true;
        for (let choice of this.choices) {
          if (typeof choice.validate !== "function") {
            continue;
          }
          if (choice.role === "heading") {
            continue;
          }
          let val = choice.parent ? this.value[choice.parent.name] : this.value;
          if (choice.editable) {
            val = choice.value === choice.name ? choice.initial || "" : choice.value;
          } else if (!this.isDisabled(choice)) {
            val = choice.enabled === true;
          }
          result2 = await choice.validate(val, this.state);
          if (result2 !== true) {
            break;
          }
        }
        if (result2 !== true) {
          this.state.error = typeof result2 === "string" ? result2 : "Invalid Input";
        }
        return result2;
      }
      submit() {
        if (this.focused.newChoice === true) return super.submit();
        if (this.choices.some((ch) => ch.newChoice)) {
          return this.alert();
        }
        this.value = {};
        for (let choice of this.choices) {
          let val = choice.parent ? this.value[choice.parent.name] : this.value;
          if (choice.role === "heading") {
            this.value[choice.name] = {};
            continue;
          }
          if (choice.editable) {
            val[choice.name] = choice.value === choice.name ? choice.initial || "" : choice.value;
          } else if (!this.isDisabled(choice)) {
            val[choice.name] = choice.enabled === true;
          }
        }
        return this.base.submit.call(this);
      }
    };
    module2.exports = Editable;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/types/string.js
var require_string2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/types/string.js"(exports2, module2) {
    "use strict";
    var Prompt = require_prompt();
    var keypress = require_keypress();
    var placeholder = require_placeholder();
    var { isPrimitive: isPrimitive2 } = require_utils12();
    var StringPrompt = class extends Prompt {
      constructor(options) {
        super(options);
        this.initial = isPrimitive2(this.initial) ? String(this.initial) : "";
        if (this.initial) this.cursorHide();
        this.state.prevCursor = 0;
        this.state.clipboard = [];
        this.keypressTimeout = this.options.keypressTimeout !== void 0 ? this.options.keypressTimeout : null;
      }
      async keypress(input, key = input ? keypress(input, {}) : {}) {
        const now = Date.now();
        const elapsed = now - this.lastKeypress;
        this.lastKeypress = now;
        const isEnterKey = key.name === "return" || key.name === "enter";
        let prev = this.state.prevKeypress;
        let append;
        this.state.prevKeypress = key;
        if (this.keypressTimeout != null && isEnterKey) {
          if (elapsed < this.keypressTimeout) {
            return this.submit();
          }
          this.state.multilineBuffer = this.state.multilineBuffer || "";
          this.state.multilineBuffer += input;
          append = true;
          prev = null;
        }
        if (append || this.options.multiline && isEnterKey) {
          if (!prev || prev.name !== "return") {
            return this.append("\n", key);
          }
        }
        return super.keypress(input, key);
      }
      moveCursor(n2) {
        this.cursor += n2;
      }
      reset() {
        this.input = this.value = "";
        this.cursor = 0;
        return this.render();
      }
      dispatch(ch, key) {
        if (!ch || key.ctrl || key.code) return this.alert();
        this.append(ch);
      }
      append(ch) {
        let { cursor, input } = this.state;
        this.input = `${input}`.slice(0, cursor) + ch + `${input}`.slice(cursor);
        this.moveCursor(String(ch).length);
        this.render();
      }
      insert(str2) {
        this.append(str2);
      }
      delete() {
        let { cursor, input } = this.state;
        if (cursor <= 0) return this.alert();
        this.input = `${input}`.slice(0, cursor - 1) + `${input}`.slice(cursor);
        this.moveCursor(-1);
        this.render();
      }
      deleteForward() {
        let { cursor, input } = this.state;
        if (input[cursor] === void 0) return this.alert();
        this.input = `${input}`.slice(0, cursor) + `${input}`.slice(cursor + 1);
        this.render();
      }
      cutForward() {
        let pos = this.cursor;
        if (this.input.length <= pos) return this.alert();
        this.state.clipboard.push(this.input.slice(pos));
        this.input = this.input.slice(0, pos);
        this.render();
      }
      cutLeft() {
        let pos = this.cursor;
        if (pos === 0) return this.alert();
        let before = this.input.slice(0, pos);
        let after = this.input.slice(pos);
        let words = before.split(" ");
        this.state.clipboard.push(words.pop());
        this.input = words.join(" ");
        this.cursor = this.input.length;
        this.input += after;
        this.render();
      }
      paste() {
        if (!this.state.clipboard.length) return this.alert();
        this.insert(this.state.clipboard.pop());
        this.render();
      }
      toggleCursor() {
        if (this.state.prevCursor) {
          this.cursor = this.state.prevCursor;
          this.state.prevCursor = 0;
        } else {
          this.state.prevCursor = this.cursor;
          this.cursor = 0;
        }
        this.render();
      }
      first() {
        this.cursor = 0;
        this.render();
      }
      last() {
        this.cursor = this.input.length - 1;
        this.render();
      }
      next() {
        let init2 = this.initial != null ? String(this.initial) : "";
        if (!init2 || !init2.startsWith(this.input)) return this.alert();
        this.input = this.initial;
        this.cursor = this.initial.length;
        this.render();
      }
      prev() {
        if (!this.input) return this.alert();
        this.reset();
      }
      backward() {
        return this.left();
      }
      forward() {
        return this.right();
      }
      right() {
        if (this.cursor >= this.input.length) return this.alert();
        this.moveCursor(1);
        return this.render();
      }
      left() {
        if (this.cursor <= 0) return this.alert();
        this.moveCursor(-1);
        return this.render();
      }
      isValue(value) {
        return !!value;
      }
      async format(input = this.value) {
        let initial = await this.resolve(this.initial, this.state);
        if (!this.state.submitted) {
          return placeholder(this, { input, initial, pos: this.cursor });
        }
        return this.styles.submitted(input || initial);
      }
      async render() {
        let size = this.state.size;
        let prefix = await this.prefix();
        let separator = await this.separator();
        let message = await this.message();
        let prompt = [prefix, message, separator].filter(Boolean).join(" ");
        this.state.prompt = prompt;
        let header = await this.header();
        let output = await this.format();
        let help76 = await this.error() || await this.hint();
        let footer = await this.footer();
        if (help76 && !output.includes(help76)) output += " " + help76;
        prompt += " " + output;
        this.clear(size);
        this.write([header, prompt, footer].filter(Boolean).join("\n"));
        this.restore();
      }
    };
    module2.exports = StringPrompt;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/completer.js
var require_completer = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/completer.js"(exports2, module2) {
    "use strict";
    var unique = (arr) => arr.filter((v, i2) => arr.lastIndexOf(v) === i2);
    var compact = (arr) => unique(arr).filter(Boolean);
    module2.exports = (action, data = {}, value = "") => {
      let { past = [], present = "" } = data;
      let rest, prev;
      switch (action) {
        case "prev":
        case "undo":
          rest = past.slice(0, past.length - 1);
          prev = past[past.length - 1] || "";
          return {
            past: compact([value, ...rest]),
            present: prev
          };
        case "next":
        case "redo":
          rest = past.slice(1);
          prev = past[0] || "";
          return {
            past: compact([...rest, value]),
            present: prev
          };
        case "save":
          return {
            past: compact([...past, value]),
            present: ""
          };
        case "remove":
          prev = compact(past.filter((v) => v !== value));
          present = "";
          if (prev.length) {
            present = prev.pop();
          }
          return {
            past: prev,
            present
          };
        default: {
          throw new Error(`Invalid action: "${action}"`);
        }
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/input.js
var require_input = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/input.js"(exports2, module2) {
    "use strict";
    var Prompt = require_string2();
    var completer = require_completer();
    var Input = class extends Prompt {
      constructor(options) {
        super(options);
        let history = this.options.history;
        if (history && history.store) {
          let initial = history.values || this.initial;
          this.autosave = !!history.autosave;
          this.store = history.store;
          this.data = this.store.get("values") || { past: [], present: initial };
          this.initial = this.data.present || this.data.past[this.data.past.length - 1];
        }
      }
      completion(action) {
        if (!this.store) return this.alert();
        this.data = completer(action, this.data, this.input);
        if (!this.data.present) return this.alert();
        this.input = this.data.present;
        this.cursor = this.input.length;
        return this.render();
      }
      altUp() {
        return this.completion("prev");
      }
      altDown() {
        return this.completion("next");
      }
      prev() {
        this.save();
        return super.prev();
      }
      save() {
        if (!this.store) return;
        this.data = completer("save", this.data, this.input);
        this.store.set("values", this.data);
      }
      submit() {
        if (this.store && this.autosave === true) {
          this.save();
        }
        return super.submit();
      }
    };
    module2.exports = Input;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/invisible.js
var require_invisible = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/invisible.js"(exports2, module2) {
    "use strict";
    var StringPrompt = require_string2();
    var InvisiblePrompt = class extends StringPrompt {
      format() {
        return "";
      }
    };
    module2.exports = InvisiblePrompt;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/list.js
var require_list = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/list.js"(exports2, module2) {
    "use strict";
    var StringPrompt = require_string2();
    var ListPrompt = class extends StringPrompt {
      constructor(options = {}) {
        super(options);
        this.sep = this.options.separator || /, */;
        this.initial = options.initial || "";
      }
      split(input = this.value) {
        return input ? String(input).split(this.sep) : [];
      }
      format() {
        let style = this.state.submitted ? this.styles.primary : (val) => val;
        return this.list.map(style).join(", ");
      }
      async submit(value) {
        let result2 = this.state.error || await this.validate(this.list, this.state);
        if (result2 !== true) {
          this.state.error = result2;
          return super.submit();
        }
        this.value = this.list;
        return super.submit();
      }
      get list() {
        return this.split();
      }
    };
    module2.exports = ListPrompt;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/multiselect.js
var require_multiselect = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/multiselect.js"(exports2, module2) {
    "use strict";
    var Select = require_select();
    var MultiSelect = class extends Select {
      constructor(options) {
        super({ ...options, multiple: true });
      }
    };
    module2.exports = MultiSelect;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/types/number.js
var require_number = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/types/number.js"(exports2, module2) {
    "use strict";
    var StringPrompt = require_string2();
    var NumberPrompt = class extends StringPrompt {
      constructor(options = {}) {
        super({ style: "number", ...options });
        this.min = this.isValue(options.min) ? this.toNumber(options.min) : -Infinity;
        this.max = this.isValue(options.max) ? this.toNumber(options.max) : Infinity;
        this.delay = options.delay != null ? options.delay : 1e3;
        this.float = options.float !== false;
        this.round = options.round === true || options.float === false;
        this.major = options.major || 10;
        this.minor = options.minor || 1;
        this.initial = options.initial != null ? options.initial : "";
        this.input = String(this.initial);
        this.cursor = this.input.length;
        this.cursorShow();
      }
      append(ch) {
        if (!/[-+.]/.test(ch) || ch === "." && this.input.includes(".")) {
          return this.alert("invalid number");
        }
        return super.append(ch);
      }
      number(ch) {
        return super.append(ch);
      }
      next() {
        if (this.input && this.input !== this.initial) return this.alert();
        if (!this.isValue(this.initial)) return this.alert();
        this.input = this.initial;
        this.cursor = String(this.initial).length;
        return this.render();
      }
      up(number) {
        let step2 = number || this.minor;
        let num = this.toNumber(this.input);
        if (num > this.max + step2) return this.alert();
        this.input = `${num + step2}`;
        return this.render();
      }
      down(number) {
        let step2 = number || this.minor;
        let num = this.toNumber(this.input);
        if (num < this.min - step2) return this.alert();
        this.input = `${num - step2}`;
        return this.render();
      }
      shiftDown() {
        return this.down(this.major);
      }
      shiftUp() {
        return this.up(this.major);
      }
      format(input = this.input) {
        if (typeof this.options.format === "function") {
          return this.options.format.call(this, input);
        }
        return this.styles.info(input);
      }
      toNumber(value = "") {
        return this.float ? +value : Math.round(+value);
      }
      isValue(value) {
        return /^[-+]?[0-9]+((\.)|(\.[0-9]+))?$/.test(value);
      }
      submit() {
        let value = [this.input, this.initial].find((v) => this.isValue(v));
        this.value = this.toNumber(value || 0);
        return super.submit();
      }
    };
    module2.exports = NumberPrompt;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/numeral.js
var require_numeral = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/numeral.js"(exports2, module2) {
    module2.exports = require_number();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/password.js
var require_password = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/password.js"(exports2, module2) {
    "use strict";
    var StringPrompt = require_string2();
    var PasswordPrompt = class extends StringPrompt {
      constructor(options) {
        super(options);
        this.cursorShow();
      }
      format(input = this.input) {
        if (!this.keypressed) return "";
        let color = this.state.submitted ? this.styles.primary : this.styles.muted;
        return color(this.symbols.asterisk.repeat(input.length));
      }
    };
    module2.exports = PasswordPrompt;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/scale.js
var require_scale = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/scale.js"(exports2, module2) {
    "use strict";
    var stripAnsi4 = require_strip_ansi();
    var ArrayPrompt = require_array2();
    var utils = require_utils12();
    var LikertScale = class extends ArrayPrompt {
      constructor(options = {}) {
        super(options);
        this.widths = [].concat(options.messageWidth || 50);
        this.align = [].concat(options.align || "left");
        this.linebreak = options.linebreak || false;
        this.edgeLength = options.edgeLength || 3;
        this.newline = options.newline || "\n   ";
        let start = options.startNumber || 1;
        if (typeof this.scale === "number") {
          this.scaleKey = false;
          this.scale = Array(this.scale).fill(0).map((v, i2) => ({ name: i2 + start }));
        }
      }
      async reset() {
        this.tableized = false;
        await super.reset();
        return this.render();
      }
      tableize() {
        if (this.tableized === true) return;
        this.tableized = true;
        let longest = 0;
        for (let ch of this.choices) {
          longest = Math.max(longest, ch.message.length);
          ch.scaleIndex = ch.initial || 2;
          ch.scale = [];
          for (let i2 = 0; i2 < this.scale.length; i2++) {
            ch.scale.push({ index: i2 });
          }
        }
        this.widths[0] = Math.min(this.widths[0], longest + 3);
      }
      async dispatch(s, key) {
        if (this.multiple) {
          return this[key.name] ? await this[key.name](s, key) : await super.dispatch(s, key);
        }
        this.alert();
      }
      heading(msg, item, i2) {
        return this.styles.strong(msg);
      }
      separator() {
        return this.styles.muted(this.symbols.ellipsis);
      }
      right() {
        let choice = this.focused;
        if (choice.scaleIndex >= this.scale.length - 1) return this.alert();
        choice.scaleIndex++;
        return this.render();
      }
      left() {
        let choice = this.focused;
        if (choice.scaleIndex <= 0) return this.alert();
        choice.scaleIndex--;
        return this.render();
      }
      indent() {
        return "";
      }
      format() {
        if (this.state.submitted) {
          let values = this.choices.map((ch) => this.styles.info(ch.index));
          return values.join(", ");
        }
        return "";
      }
      pointer() {
        return "";
      }
      /**
       * Render the scale "Key". Something like:
       * @return {String}
       */
      renderScaleKey() {
        if (this.scaleKey === false) return "";
        if (this.state.submitted) return "";
        let scale = this.scale.map((item) => `   ${item.name} - ${item.message}`);
        let key = ["", ...scale].map((item) => this.styles.muted(item));
        return key.join("\n");
      }
      /**
       * Render the heading row for the scale.
       * @return {String}
       */
      renderScaleHeading(max3) {
        let keys4 = this.scale.map((ele) => ele.name);
        if (typeof this.options.renderScaleHeading === "function") {
          keys4 = this.options.renderScaleHeading.call(this, max3);
        }
        let diff = this.scaleLength - keys4.join("").length;
        let spacing = Math.round(diff / (keys4.length - 1));
        let names = keys4.map((key) => this.styles.strong(key));
        let headings = names.join(" ".repeat(spacing));
        let padding = " ".repeat(this.widths[0]);
        return this.margin[3] + padding + this.margin[1] + headings;
      }
      /**
       * Render a scale indicator => ◯ or ◉ by default
       */
      scaleIndicator(choice, item, i2) {
        if (typeof this.options.scaleIndicator === "function") {
          return this.options.scaleIndicator.call(this, choice, item, i2);
        }
        let enabled = choice.scaleIndex === item.index;
        if (item.disabled) return this.styles.hint(this.symbols.radio.disabled);
        if (enabled) return this.styles.success(this.symbols.radio.on);
        return this.symbols.radio.off;
      }
      /**
       * Render the actual scale => ◯────◯────◉────◯────◯
       */
      renderScale(choice, i2) {
        let scale = choice.scale.map((item) => this.scaleIndicator(choice, item, i2));
        let padding = this.term === "Hyper" ? "" : " ";
        return scale.join(padding + this.symbols.line.repeat(this.edgeLength));
      }
      /**
       * Render a choice, including scale =>
       *   "The website is easy to navigate. ◯───◯───◉───◯───◯"
       */
      async renderChoice(choice, i2) {
        await this.onChoice(choice, i2);
        let focused = this.index === i2;
        let pointer = await this.pointer(choice, i2);
        let hint = await choice.hint;
        if (hint && !utils.hasColor(hint)) {
          hint = this.styles.muted(hint);
        }
        let pad3 = (str2) => this.margin[3] + str2.replace(/\s+$/, "").padEnd(this.widths[0], " ");
        let newline = this.newline;
        let ind = this.indent(choice);
        let message = await this.resolve(choice.message, this.state, choice, i2);
        let scale = await this.renderScale(choice, i2);
        let margin = this.margin[1] + this.margin[3];
        this.scaleLength = stripAnsi4(scale).length;
        this.widths[0] = Math.min(this.widths[0], this.width - this.scaleLength - margin.length);
        let msg = utils.wordWrap(message, { width: this.widths[0], newline });
        let lines = msg.split("\n").map((line) => pad3(line) + this.margin[1]);
        if (focused) {
          scale = this.styles.info(scale);
          lines = lines.map((line) => this.styles.info(line));
        }
        lines[0] += scale;
        if (this.linebreak) lines.push("");
        return [ind + pointer, lines.join("\n")].filter(Boolean);
      }
      async renderChoices() {
        if (this.state.submitted) return "";
        this.tableize();
        let choices = this.visible.map(async (ch, i2) => await this.renderChoice(ch, i2));
        let visible = await Promise.all(choices);
        let heading = await this.renderScaleHeading();
        return this.margin[0] + [heading, ...visible.map((v) => v.join(" "))].join("\n");
      }
      async render() {
        let { submitted, size } = this.state;
        let prefix = await this.prefix();
        let separator = await this.separator();
        let message = await this.message();
        let prompt = "";
        if (this.options.promptLine !== false) {
          prompt = [prefix, message, separator, ""].join(" ");
          this.state.prompt = prompt;
        }
        let header = await this.header();
        let output = await this.format();
        let key = await this.renderScaleKey();
        let help76 = await this.error() || await this.hint();
        let body = await this.renderChoices();
        let footer = await this.footer();
        let err = this.emptyError;
        if (output) prompt += output;
        if (help76 && !prompt.includes(help76)) prompt += " " + help76;
        if (submitted && !output && !body.trim() && this.multiple && err != null) {
          prompt += this.styles.danger(err);
        }
        this.clear(size);
        this.write([header, prompt, key, body, footer].filter(Boolean).join("\n"));
        if (!this.state.submitted) {
          this.write(this.margin[2]);
        }
        this.restore();
      }
      submit() {
        this.value = {};
        for (let choice of this.choices) {
          this.value[choice.name] = choice.scaleIndex;
        }
        return this.base.submit.call(this);
      }
    };
    module2.exports = LikertScale;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/interpolate.js
var require_interpolate = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/interpolate.js"(exports2, module2) {
    "use strict";
    var stripAnsi4 = require_strip_ansi();
    var clean = (str2 = "") => {
      return typeof str2 === "string" ? str2.replace(/^['"]|['"]$/g, "") : "";
    };
    var Item = class {
      constructor(token) {
        this.name = token.key;
        this.field = token.field || {};
        this.value = clean(token.initial || this.field.initial || "");
        this.message = token.message || this.name;
        this.cursor = 0;
        this.input = "";
        this.lines = [];
      }
    };
    var tokenize2 = async (options = {}, defaults4 = {}, fn = (token) => token) => {
      let unique = /* @__PURE__ */ new Set();
      let fields = options.fields || [];
      let input = options.template;
      let tabstops = [];
      let items = [];
      let keys4 = [];
      let line = 1;
      if (typeof input === "function") {
        input = await input();
      }
      let i2 = -1;
      let next2 = () => input[++i2];
      let peek = () => input[i2 + 1];
      let push = (token) => {
        token.line = line;
        tabstops.push(token);
      };
      push({ type: "bos", value: "" });
      while (i2 < input.length - 1) {
        let value = next2();
        if (/^[^\S\n ]$/.test(value)) {
          push({ type: "text", value });
          continue;
        }
        if (value === "\n") {
          push({ type: "newline", value });
          line++;
          continue;
        }
        if (value === "\\") {
          value += next2();
          push({ type: "text", value });
          continue;
        }
        if ((value === "$" || value === "#" || value === "{") && peek() === "{") {
          let n2 = next2();
          value += n2;
          let token = { type: "template", open: value, inner: "", close: "", value };
          let ch;
          while (ch = next2()) {
            if (ch === "}") {
              if (peek() === "}") ch += next2();
              token.value += ch;
              token.close = ch;
              break;
            }
            if (ch === ":") {
              token.initial = "";
              token.key = token.inner;
            } else if (token.initial !== void 0) {
              token.initial += ch;
            }
            token.value += ch;
            token.inner += ch;
          }
          token.template = token.open + (token.initial || token.inner) + token.close;
          token.key = token.key || token.inner;
          if (hasOwnProperty.call(defaults4, token.key)) {
            token.initial = defaults4[token.key];
          }
          token = fn(token);
          push(token);
          keys4.push(token.key);
          unique.add(token.key);
          let item = items.find((item2) => item2.name === token.key);
          token.field = fields.find((ch2) => ch2.name === token.key);
          if (!item) {
            item = new Item(token);
            items.push(item);
          }
          item.lines.push(token.line - 1);
          continue;
        }
        let last = tabstops[tabstops.length - 1];
        if (last.type === "text" && last.line === line) {
          last.value += value;
        } else {
          push({ type: "text", value });
        }
      }
      push({ type: "eos", value: "" });
      return { input, tabstops, unique, keys: keys4, items };
    };
    module2.exports = async (prompt) => {
      let options = prompt.options;
      let required = new Set(options.required === true ? [] : options.required || []);
      let defaults4 = { ...options.values, ...options.initial };
      let { tabstops, items, keys: keys4 } = await tokenize2(options, defaults4);
      let result2 = createFn("result", prompt, options);
      let format2 = createFn("format", prompt, options);
      let isValid = createFn("validate", prompt, options, true);
      let isVal = prompt.isValue.bind(prompt);
      return async (state = {}, submitted = false) => {
        let index = 0;
        state.required = required;
        state.items = items;
        state.keys = keys4;
        state.output = "";
        let validate2 = async (value, state2, item, index2) => {
          let error = await isValid(value, state2, item, index2);
          if (error === false) {
            return "Invalid field " + item.name;
          }
          return error;
        };
        for (let token of tabstops) {
          let value = token.value;
          let key = token.key;
          if (token.type !== "template") {
            if (value) state.output += value;
            continue;
          }
          if (token.type === "template") {
            let item = items.find((ch) => ch.name === key);
            if (options.required === true) {
              state.required.add(item.name);
            }
            let val = [item.input, state.values[item.value], item.value, value].find(isVal);
            let field = item.field || {};
            let message = field.message || token.inner;
            if (submitted) {
              let error = await validate2(state.values[key], state, item, index);
              if (error && typeof error === "string" || error === false) {
                state.invalid.set(key, error);
                continue;
              }
              state.invalid.delete(key);
              let res = await result2(state.values[key], state, item, index);
              state.output += stripAnsi4(res);
              continue;
            }
            item.placeholder = false;
            let before = value;
            value = await format2(value, state, item, index);
            if (val !== value) {
              state.values[key] = val;
              value = prompt.styles.typing(val);
              state.missing.delete(message);
            } else {
              state.values[key] = void 0;
              val = `<${message}>`;
              value = prompt.styles.primary(val);
              item.placeholder = true;
              if (state.required.has(key)) {
                state.missing.add(message);
              }
            }
            if (state.missing.has(message) && state.validating) {
              value = prompt.styles.warning(val);
            }
            if (state.invalid.has(key) && state.validating) {
              value = prompt.styles.danger(val);
            }
            if (index === state.index) {
              if (before !== value) {
                value = prompt.styles.underline(value);
              } else {
                value = prompt.styles.heading(stripAnsi4(value));
              }
            }
            index++;
          }
          if (value) {
            state.output += value;
          }
        }
        let lines = state.output.split("\n").map((l) => " " + l);
        let len = items.length;
        let done = 0;
        for (let item of items) {
          if (state.invalid.has(item.name)) {
            item.lines.forEach((i2) => {
              if (lines[i2][0] !== " ") return;
              lines[i2] = state.styles.danger(state.symbols.bullet) + lines[i2].slice(1);
            });
          }
          if (prompt.isValue(state.values[item.name])) {
            done++;
          }
        }
        state.completed = (done / len * 100).toFixed(0);
        state.output = lines.join("\n");
        return state.output;
      };
    };
    function createFn(prop3, prompt, options, fallback) {
      return (value, state, item, index) => {
        if (typeof item.field[prop3] === "function") {
          return item.field[prop3].call(prompt, value, state, item, index);
        }
        return [fallback, value].find((v) => prompt.isValue(v));
      };
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/snippet.js
var require_snippet = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/snippet.js"(exports2, module2) {
    "use strict";
    var stripAnsi4 = require_strip_ansi();
    var interpolate = require_interpolate();
    var Prompt = require_prompt();
    var SnippetPrompt = class extends Prompt {
      constructor(options) {
        super(options);
        this.cursorHide();
        this.reset(true);
      }
      async initialize() {
        this.interpolate = await interpolate(this);
        await super.initialize();
      }
      async reset(first) {
        this.state.keys = [];
        this.state.invalid = /* @__PURE__ */ new Map();
        this.state.missing = /* @__PURE__ */ new Set();
        this.state.completed = 0;
        this.state.values = {};
        if (first !== true) {
          await this.initialize();
          await this.render();
        }
      }
      moveCursor(n2) {
        let item = this.getItem();
        this.cursor += n2;
        item.cursor += n2;
      }
      dispatch(ch, key) {
        if (!key.code && !key.ctrl && ch != null && this.getItem()) {
          this.append(ch, key);
          return;
        }
        this.alert();
      }
      append(ch, key) {
        let item = this.getItem();
        let prefix = item.input.slice(0, this.cursor);
        let suffix = item.input.slice(this.cursor);
        this.input = item.input = `${prefix}${ch}${suffix}`;
        this.moveCursor(1);
        this.render();
      }
      delete() {
        let item = this.getItem();
        if (this.cursor <= 0 || !item.input) return this.alert();
        let suffix = item.input.slice(this.cursor);
        let prefix = item.input.slice(0, this.cursor - 1);
        this.input = item.input = `${prefix}${suffix}`;
        this.moveCursor(-1);
        this.render();
      }
      increment(i2) {
        return i2 >= this.state.keys.length - 1 ? 0 : i2 + 1;
      }
      decrement(i2) {
        return i2 <= 0 ? this.state.keys.length - 1 : i2 - 1;
      }
      first() {
        this.state.index = 0;
        this.render();
      }
      last() {
        this.state.index = this.state.keys.length - 1;
        this.render();
      }
      right() {
        if (this.cursor >= this.input.length) return this.alert();
        this.moveCursor(1);
        this.render();
      }
      left() {
        if (this.cursor <= 0) return this.alert();
        this.moveCursor(-1);
        this.render();
      }
      prev() {
        this.state.index = this.decrement(this.state.index);
        this.getItem();
        this.render();
      }
      next() {
        this.state.index = this.increment(this.state.index);
        this.getItem();
        this.render();
      }
      up() {
        this.prev();
      }
      down() {
        this.next();
      }
      format(value) {
        let color = this.state.completed < 100 ? this.styles.warning : this.styles.success;
        if (this.state.submitted === true && this.state.completed !== 100) {
          color = this.styles.danger;
        }
        return color(`${this.state.completed}% completed`);
      }
      async render() {
        let { index, keys: keys4 = [], submitted, size } = this.state;
        let newline = [this.options.newline, "\n"].find((v) => v != null);
        let prefix = await this.prefix();
        let separator = await this.separator();
        let message = await this.message();
        let prompt = [prefix, message, separator].filter(Boolean).join(" ");
        this.state.prompt = prompt;
        let header = await this.header();
        let error = await this.error() || "";
        let hint = await this.hint() || "";
        let body = submitted ? "" : await this.interpolate(this.state);
        let key = this.state.key = keys4[index] || "";
        let input = await this.format(key);
        let footer = await this.footer();
        if (input) prompt += " " + input;
        if (hint && !input && this.state.completed === 0) prompt += " " + hint;
        this.clear(size);
        let lines = [header, prompt, body, footer, error.trim()];
        this.write(lines.filter(Boolean).join(newline));
        this.restore();
      }
      getItem(name) {
        let { items, keys: keys4, index } = this.state;
        let item = items.find((ch) => ch.name === keys4[index]);
        if (item && item.input != null) {
          this.input = item.input;
          this.cursor = item.cursor;
        }
        return item;
      }
      async submit() {
        if (typeof this.interpolate !== "function") await this.initialize();
        await this.interpolate(this.state, true);
        let { invalid, missing, output, values } = this.state;
        if (invalid.size) {
          let err = "";
          for (let [key, value] of invalid) err += `Invalid ${key}: ${value}
`;
          this.state.error = err;
          return super.submit();
        }
        if (missing.size) {
          this.state.error = "Required: " + [...missing.keys()].join(", ");
          return super.submit();
        }
        let lines = stripAnsi4(output).split("\n");
        let result2 = lines.map((v) => v.slice(1)).join("\n");
        this.value = { values, result: result2 };
        return super.submit();
      }
    };
    module2.exports = SnippetPrompt;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/sort.js
var require_sort2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/sort.js"(exports2, module2) {
    "use strict";
    var hint = "(Use <shift>+<up/down> to sort)";
    var Prompt = require_select();
    var Sort = class extends Prompt {
      constructor(options) {
        super({ ...options, reorder: false, sort: true, multiple: true });
        this.state.hint = [this.options.hint, hint].find(this.isValue.bind(this));
      }
      indicator() {
        return "";
      }
      async renderChoice(choice, i2) {
        let str2 = await super.renderChoice(choice, i2);
        let sym = this.symbols.identicalTo + " ";
        let pre = this.index === i2 && this.sorting ? this.styles.muted(sym) : "  ";
        if (this.options.drag === false) pre = "";
        if (this.options.numbered === true) {
          return pre + `${i2 + 1} - ` + str2;
        }
        return pre + str2;
      }
      get selected() {
        return this.choices;
      }
      submit() {
        this.value = this.choices.map((choice) => choice.value);
        return super.submit();
      }
    };
    module2.exports = Sort;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/survey.js
var require_survey = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/survey.js"(exports2, module2) {
    "use strict";
    var ArrayPrompt = require_array2();
    var Survey = class extends ArrayPrompt {
      constructor(options = {}) {
        super(options);
        this.emptyError = options.emptyError || "No items were selected";
        this.term = process.env.TERM_PROGRAM;
        if (!this.options.header) {
          let header = ["", "4 - Strongly Agree", "3 - Agree", "2 - Neutral", "1 - Disagree", "0 - Strongly Disagree", ""];
          header = header.map((ele) => this.styles.muted(ele));
          this.state.header = header.join("\n   ");
        }
      }
      async toChoices(...args) {
        if (this.createdScales) return false;
        this.createdScales = true;
        let choices = await super.toChoices(...args);
        for (let choice of choices) {
          choice.scale = createScale(5, this.options);
          choice.scaleIdx = 2;
        }
        return choices;
      }
      dispatch() {
        this.alert();
      }
      space() {
        let choice = this.focused;
        let ele = choice.scale[choice.scaleIdx];
        let selected = ele.selected;
        choice.scale.forEach((e) => e.selected = false);
        ele.selected = !selected;
        return this.render();
      }
      indicator() {
        return "";
      }
      pointer() {
        return "";
      }
      separator() {
        return this.styles.muted(this.symbols.ellipsis);
      }
      right() {
        let choice = this.focused;
        if (choice.scaleIdx >= choice.scale.length - 1) return this.alert();
        choice.scaleIdx++;
        return this.render();
      }
      left() {
        let choice = this.focused;
        if (choice.scaleIdx <= 0) return this.alert();
        choice.scaleIdx--;
        return this.render();
      }
      indent() {
        return "   ";
      }
      async renderChoice(item, i2) {
        await this.onChoice(item, i2);
        let focused = this.index === i2;
        let isHyper = this.term === "Hyper";
        let n2 = !isHyper ? 8 : 9;
        let s = !isHyper ? " " : "";
        let ln = this.symbols.line.repeat(n2);
        let sp = " ".repeat(n2 + (isHyper ? 0 : 1));
        let dot = (enabled) => (enabled ? this.styles.success("\u25C9") : "\u25EF") + s;
        let num = i2 + 1 + ".";
        let color = focused ? this.styles.heading : this.styles.noop;
        let msg = await this.resolve(item.message, this.state, item, i2);
        let indent = this.indent(item);
        let scale = indent + item.scale.map((e, i3) => dot(i3 === item.scaleIdx)).join(ln);
        let val = (i3) => i3 === item.scaleIdx ? color(i3) : i3;
        let next2 = indent + item.scale.map((e, i3) => val(i3)).join(sp);
        let line = () => [num, msg].filter(Boolean).join(" ");
        let lines = () => [line(), scale, next2, " "].filter(Boolean).join("\n");
        if (focused) {
          scale = this.styles.cyan(scale);
          next2 = this.styles.cyan(next2);
        }
        return lines();
      }
      async renderChoices() {
        if (this.state.submitted) return "";
        let choices = this.visible.map(async (ch, i2) => await this.renderChoice(ch, i2));
        let visible = await Promise.all(choices);
        if (!visible.length) visible.push(this.styles.danger("No matching choices"));
        return visible.join("\n");
      }
      format() {
        if (this.state.submitted) {
          let values = this.choices.map((ch) => this.styles.info(ch.scaleIdx));
          return values.join(", ");
        }
        return "";
      }
      async render() {
        let { submitted, size } = this.state;
        let prefix = await this.prefix();
        let separator = await this.separator();
        let message = await this.message();
        let prompt = [prefix, message, separator].filter(Boolean).join(" ");
        this.state.prompt = prompt;
        let header = await this.header();
        let output = await this.format();
        let help76 = await this.error() || await this.hint();
        let body = await this.renderChoices();
        let footer = await this.footer();
        if (output || !help76) prompt += " " + output;
        if (help76 && !prompt.includes(help76)) prompt += " " + help76;
        if (submitted && !output && !body && this.multiple && this.type !== "form") {
          prompt += this.styles.danger(this.emptyError);
        }
        this.clear(size);
        this.write([prompt, header, body, footer].filter(Boolean).join("\n"));
        this.restore();
      }
      submit() {
        this.value = {};
        for (let choice of this.choices) {
          this.value[choice.name] = choice.scaleIdx;
        }
        return this.base.submit.call(this);
      }
    };
    function createScale(n2, options = {}) {
      if (Array.isArray(options.scale)) {
        return options.scale.map((ele) => ({ ...ele }));
      }
      let scale = [];
      for (let i2 = 1; i2 < n2 + 1; i2++) scale.push({ i: i2, selected: false });
      return scale;
    }
    module2.exports = Survey;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/text.js
var require_text = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/text.js"(exports2, module2) {
    module2.exports = require_input();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/toggle.js
var require_toggle = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/toggle.js"(exports2, module2) {
    "use strict";
    var BooleanPrompt = require_boolean();
    var TogglePrompt = class extends BooleanPrompt {
      async initialize() {
        await super.initialize();
        this.value = this.initial = this.resolve(this.options.initial);
        this.disabled = this.options.disabled || "no";
        this.enabled = this.options.enabled || "yes";
        await this.render();
      }
      reset() {
        this.value = this.initial;
        this.render();
      }
      delete() {
        this.alert();
      }
      toggle() {
        this.value = !this.value;
        this.render();
      }
      enable() {
        if (this.value === true) return this.alert();
        this.value = true;
        this.render();
      }
      disable() {
        if (this.value === false) return this.alert();
        this.value = false;
        this.render();
      }
      up() {
        this.toggle();
      }
      down() {
        this.toggle();
      }
      right() {
        this.toggle();
      }
      left() {
        this.toggle();
      }
      next() {
        this.toggle();
      }
      prev() {
        this.toggle();
      }
      dispatch(ch = "", key) {
        switch (ch.toLowerCase()) {
          case " ":
            return this.toggle();
          case "1":
          case "y":
          case "t":
            return this.enable();
          case "0":
          case "n":
          case "f":
            return this.disable();
          default: {
            return this.alert();
          }
        }
      }
      format() {
        let active = (str2) => this.styles.primary.underline(str2);
        let value = [
          this.value ? this.disabled : active(this.disabled),
          this.value ? active(this.enabled) : this.enabled
        ];
        return value.join(this.styles.muted(" / "));
      }
      async render() {
        let { size } = this.state;
        let header = await this.header();
        let prefix = await this.prefix();
        let separator = await this.separator();
        let message = await this.message();
        let output = await this.format();
        let help76 = await this.error() || await this.hint();
        let footer = await this.footer();
        let prompt = [prefix, message, separator, output].join(" ");
        this.state.prompt = prompt;
        if (help76 && !prompt.includes(help76)) prompt += " " + help76;
        this.clear(size);
        this.write([header, prompt, footer].filter(Boolean).join("\n"));
        this.write(this.margin[2]);
        this.restore();
      }
    };
    module2.exports = TogglePrompt;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/quiz.js
var require_quiz = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/quiz.js"(exports2, module2) {
    "use strict";
    var SelectPrompt = require_select();
    var Quiz = class extends SelectPrompt {
      constructor(options) {
        super(options);
        if (typeof this.options.correctChoice !== "number" || this.options.correctChoice < 0) {
          throw new Error("Please specify the index of the correct answer from the list of choices");
        }
      }
      async toChoices(value, parent) {
        let choices = await super.toChoices(value, parent);
        if (choices.length < 2) {
          throw new Error("Please give at least two choices to the user");
        }
        if (this.options.correctChoice > choices.length) {
          throw new Error("Please specify the index of the correct answer from the list of choices");
        }
        return choices;
      }
      check(state) {
        return state.index === this.options.correctChoice;
      }
      async result(selected) {
        return {
          selectedAnswer: selected,
          correctAnswer: this.options.choices[this.options.correctChoice].value,
          correct: await this.check(this.state)
        };
      }
    };
    module2.exports = Quiz;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/index.js
var require_prompts = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/prompts/index.js"(exports2) {
    "use strict";
    var utils = require_utils12();
    var define2 = (key, fn) => {
      utils.defineExport(exports2, key, fn);
      utils.defineExport(exports2, key.toLowerCase(), fn);
    };
    define2("AutoComplete", () => require_autocomplete());
    define2("BasicAuth", () => require_basicauth());
    define2("Confirm", () => require_confirm());
    define2("Editable", () => require_editable());
    define2("Form", () => require_form());
    define2("Input", () => require_input());
    define2("Invisible", () => require_invisible());
    define2("List", () => require_list());
    define2("MultiSelect", () => require_multiselect());
    define2("Numeral", () => require_numeral());
    define2("Password", () => require_password());
    define2("Scale", () => require_scale());
    define2("Select", () => require_select());
    define2("Snippet", () => require_snippet());
    define2("Sort", () => require_sort2());
    define2("Survey", () => require_survey());
    define2("Text", () => require_text());
    define2("Toggle", () => require_toggle());
    define2("Quiz", () => require_quiz());
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/types/index.js
var require_types = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/lib/types/index.js"(exports2, module2) {
    module2.exports = {
      ArrayPrompt: require_array2(),
      AuthPrompt: require_auth(),
      BooleanPrompt: require_boolean(),
      NumberPrompt: require_number(),
      StringPrompt: require_string2()
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/index.js
var require_enquirer = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/enquirer/2.4.1/3850a38b4b3225ddd4e2cbd27798d0090d216576365369fd53d6b204c9016204/node_modules/enquirer/index.js"(exports2, module2) {
    "use strict";
    var assert13 = __require("assert");
    var Events = __require("events");
    var utils = require_utils12();
    var Enquirer = class extends Events {
      constructor(options, answers) {
        super();
        this.options = utils.merge({}, options);
        this.answers = { ...answers };
      }
      /**
       * Register a custom prompt type.
       *
       * ```js
       * const Enquirer = require('enquirer');
       * const enquirer = new Enquirer();
       * enquirer.register('customType', require('./custom-prompt'));
       * ```
       * @name register()
       * @param {String} `type`
       * @param {Function|Prompt} `fn` `Prompt` class, or a function that returns a `Prompt` class.
       * @return {Object} Returns the Enquirer instance
       * @api public
       */
      register(type4, fn) {
        if (utils.isObject(type4)) {
          for (let key of Object.keys(type4)) this.register(key, type4[key]);
          return this;
        }
        assert13.equal(typeof fn, "function", "expected a function");
        const name = type4.toLowerCase();
        if (fn.prototype instanceof this.Prompt) {
          this.prompts[name] = fn;
        } else {
          this.prompts[name] = fn(this.Prompt, this);
        }
        return this;
      }
      /**
       * Prompt function that takes a "question" object or array of question objects,
       * and returns an object with responses from the user.
       *
       * ```js
       * const Enquirer = require('enquirer');
       * const enquirer = new Enquirer();
       *
       * const response = await enquirer.prompt({
       *   type: 'input',
       *   name: 'username',
       *   message: 'What is your username?'
       * });
       * console.log(response);
       * ```
       * @name prompt()
       * @param {Array|Object} `questions` Options objects for one or more prompts to run.
       * @return {Promise} Promise that returns an "answers" object with the user's responses.
       * @api public
       */
      async prompt(questions = []) {
        for (let question of [].concat(questions)) {
          try {
            if (typeof question === "function") question = await question.call(this);
            await this.ask(utils.merge({}, this.options, question));
          } catch (err) {
            return Promise.reject(err);
          }
        }
        return this.answers;
      }
      async ask(question) {
        if (typeof question === "function") {
          question = await question.call(this);
        }
        let opts2 = utils.merge({}, this.options, question);
        let { type: type4, name } = question;
        let { set: set2, get } = utils;
        if (typeof type4 === "function") {
          type4 = await type4.call(this, question, this.answers);
        }
        if (!type4) return this.answers[name];
        if (type4 === "number") type4 = "numeral";
        assert13(this.prompts[type4], `Prompt "${type4}" is not registered`);
        let prompt = new this.prompts[type4](opts2);
        let value = get(this.answers, name);
        prompt.state.answers = this.answers;
        prompt.enquirer = this;
        if (name) {
          prompt.on("submit", (value2) => {
            this.emit("answer", name, value2, prompt);
            set2(this.answers, name, value2);
          });
        }
        let emit = prompt.emit.bind(prompt);
        prompt.emit = (...args) => {
          this.emit.call(this, ...args);
          return emit(...args);
        };
        this.emit("prompt", prompt, this);
        if (opts2.autofill && value != null) {
          prompt.value = prompt.input = value;
          if (opts2.autofill === "show") {
            await prompt.submit();
          }
        } else {
          value = prompt.value = await prompt.run();
        }
        return value;
      }
      /**
       * Use an enquirer plugin.
       *
       * ```js
       * const Enquirer = require('enquirer');
       * const enquirer = new Enquirer();
       * const plugin = enquirer => {
       *   // do stuff to enquire instance
       * };
       * enquirer.use(plugin);
       * ```
       * @name use()
       * @param {Function} `plugin` Plugin function that takes an instance of Enquirer.
       * @return {Object} Returns the Enquirer instance.
       * @api public
       */
      use(plugin) {
        plugin.call(this, this);
        return this;
      }
      set Prompt(value) {
        this._Prompt = value;
      }
      get Prompt() {
        return this._Prompt || this.constructor.Prompt;
      }
      get prompts() {
        return this.constructor.prompts;
      }
      static set Prompt(value) {
        this._Prompt = value;
      }
      static get Prompt() {
        return this._Prompt || require_prompt();
      }
      static get prompts() {
        return require_prompts();
      }
      static get types() {
        return require_types();
      }
      /**
       * Prompt function that takes a "question" object or array of question objects,
       * and returns an object with responses from the user.
       *
       * ```js
       * const { prompt } = require('enquirer');
       * const response = await prompt({
       *   type: 'input',
       *   name: 'username',
       *   message: 'What is your username?'
       * });
       * console.log(response);
       * ```
       * @name Enquirer#prompt
       * @param {Array|Object} `questions` Options objects for one or more prompts to run.
       * @return {Promise} Promise that returns an "answers" object with the user's responses.
       * @api public
       */
      static get prompt() {
        const fn = (questions, ...rest) => {
          let enquirer12 = new this(...rest);
          let emit = enquirer12.emit.bind(enquirer12);
          enquirer12.emit = (...args) => {
            fn.emit(...args);
            return emit(...args);
          };
          return enquirer12.prompt(questions);
        };
        utils.mixinEmitter(fn, new Events());
        return fn;
      }
    };
    utils.mixinEmitter(Enquirer, new Events());
    var prompts = Enquirer.prompts;
    for (let name of Object.keys(prompts)) {
      let key = name.toLowerCase();
      let run = (options) => new prompts[name](options).run();
      Enquirer.prompt[key] = run;
      Enquirer[key] = run;
      if (!Enquirer[name]) {
        Reflect.defineProperty(Enquirer, name, { get: () => prompts[name] });
      }
    }
    var define2 = (name) => {
      utils.defineExport(Enquirer, name, () => Enquirer.types[name]);
    };
    define2("ArrayPrompt");
    define2("AuthPrompt");
    define2("BooleanPrompt");
    define2("NumberPrompt");
    define2("StringPrompt");
    module2.exports = Enquirer;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/is-fullwidth-code-point/3.0.0/11c9c3d8abab0e1aed5f8fc6ce215659a7fc48c19f1ce587eb54dc4e093b07f0/node_modules/is-fullwidth-code-point/index.js
var require_is_fullwidth_code_point = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/is-fullwidth-code-point/3.0.0/11c9c3d8abab0e1aed5f8fc6ce215659a7fc48c19f1ce587eb54dc4e093b07f0/node_modules/is-fullwidth-code-point/index.js"(exports2, module2) {
    "use strict";
    var isFullwidthCodePoint2 = (codePoint) => {
      if (Number.isNaN(codePoint)) {
        return false;
      }
      if (codePoint >= 4352 && (codePoint <= 4447 || // Hangul Jamo
      codePoint === 9001 || // LEFT-POINTING ANGLE BRACKET
      codePoint === 9002 || // RIGHT-POINTING ANGLE BRACKET
      // CJK Radicals Supplement .. Enclosed CJK Letters and Months
      11904 <= codePoint && codePoint <= 12871 && codePoint !== 12351 || // Enclosed CJK Letters and Months .. CJK Unified Ideographs Extension A
      12880 <= codePoint && codePoint <= 19903 || // CJK Unified Ideographs .. Yi Radicals
      19968 <= codePoint && codePoint <= 42182 || // Hangul Jamo Extended-A
      43360 <= codePoint && codePoint <= 43388 || // Hangul Syllables
      44032 <= codePoint && codePoint <= 55203 || // CJK Compatibility Ideographs
      63744 <= codePoint && codePoint <= 64255 || // Vertical Forms
      65040 <= codePoint && codePoint <= 65049 || // CJK Compatibility Forms .. Small Form Variants
      65072 <= codePoint && codePoint <= 65131 || // Halfwidth and Fullwidth Forms
      65281 <= codePoint && codePoint <= 65376 || 65504 <= codePoint && codePoint <= 65510 || // Kana Supplement
      110592 <= codePoint && codePoint <= 110593 || // Enclosed Ideographic Supplement
      127488 <= codePoint && codePoint <= 127569 || // CJK Unified Ideographs Extension B .. Tertiary Ideographic Plane
      131072 <= codePoint && codePoint <= 262141)) {
        return true;
      }
      return false;
    };
    module2.exports = isFullwidthCodePoint2;
    module2.exports.default = isFullwidthCodePoint2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/emoji-regex/8.0.0/40f3b57febcd8177353dcf953ef4a5dc6cd0ba03563cf9cd473d9f5a2d0dbebf/node_modules/emoji-regex/index.js
var require_emoji_regex = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/emoji-regex/8.0.0/40f3b57febcd8177353dcf953ef4a5dc6cd0ba03563cf9cd473d9f5a2d0dbebf/node_modules/emoji-regex/index.js"(exports2, module2) {
    "use strict";
    module2.exports = function() {
      return /\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F|\uD83D\uDC68(?:\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68\uD83C\uDFFB|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|[\u2695\u2696\u2708]\uFE0F|\uD83D[\uDC66\uDC67]|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708])\uFE0F|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C[\uDFFB-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)\uD83C\uDFFB|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB\uDFFC])|\uD83D\uDC69(?:\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB-\uDFFD])|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)\uFE0F|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\uD83C\uDFF4\u200D\u2620)\uFE0F|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF4\uD83C\uDDF2|\uD83C\uDDF6\uD83C\uDDE6|[#\*0-9]\uFE0F\u20E3|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270A-\u270D]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC70\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDCAA\uDD74\uDD7A\uDD90\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD36\uDDB5\uDDB6\uDDBB\uDDD2-\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5\uDEEB\uDEEC\uDEF4-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/string-width/4.2.3/8a83f39756ea40270d3928824234b7d89d0dab6c62b7d51c8698d0396183bc30/node_modules/string-width/index.js
var require_string_width = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/string-width/4.2.3/8a83f39756ea40270d3928824234b7d89d0dab6c62b7d51c8698d0396183bc30/node_modules/string-width/index.js"(exports2, module2) {
    "use strict";
    var stripAnsi4 = require_strip_ansi();
    var isFullwidthCodePoint2 = require_is_fullwidth_code_point();
    var emojiRegex = require_emoji_regex();
    var stringWidth2 = (string) => {
      if (typeof string !== "string" || string.length === 0) {
        return 0;
      }
      string = stripAnsi4(string);
      if (string.length === 0) {
        return 0;
      }
      string = string.replace(emojiRegex(), "  ");
      let width = 0;
      for (let i2 = 0; i2 < string.length; i2++) {
        const code = string.codePointAt(i2);
        if (code <= 31 || code >= 127 && code <= 159) {
          continue;
        }
        if (code >= 768 && code <= 879) {
          continue;
        }
        if (code > 65535) {
          i2++;
        }
        width += isFullwidthCodePoint2(code) ? 2 : 1;
      }
      return width;
    };
    module2.exports = stringWidth2;
    module2.exports.default = stringWidth2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/astral-regex/2.0.0/84572dd9a104efb84ce6eae0947f1c9b00623edc5ef16eebc54f2817c00c82e4/node_modules/astral-regex/index.js
var require_astral_regex = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/astral-regex/2.0.0/84572dd9a104efb84ce6eae0947f1c9b00623edc5ef16eebc54f2817c00c82e4/node_modules/astral-regex/index.js"(exports2, module2) {
    "use strict";
    var regex2 = "[\uD800-\uDBFF][\uDC00-\uDFFF]";
    var astralRegex = (options) => options && options.exact ? new RegExp(`^${regex2}$`) : new RegExp(regex2, "g");
    module2.exports = astralRegex;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/slice-ansi/4.0.0/6e081b863d4919c869de5c60f331162f5fab64b759c81c029f883af54c1f90d8/node_modules/slice-ansi/index.js
var require_slice_ansi = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/slice-ansi/4.0.0/6e081b863d4919c869de5c60f331162f5fab64b759c81c029f883af54c1f90d8/node_modules/slice-ansi/index.js"(exports2, module2) {
    "use strict";
    var isFullwidthCodePoint2 = require_is_fullwidth_code_point();
    var astralRegex = require_astral_regex();
    var ansiStyles3 = require_ansi_styles();
    var ESCAPES2 = [
      "\x1B",
      "\x9B"
    ];
    var wrapAnsi = (code) => `${ESCAPES2[0]}[${code}m`;
    var checkAnsi = (ansiCodes, isEscapes, endAnsiCode) => {
      let output = [];
      ansiCodes = [...ansiCodes];
      for (let ansiCode of ansiCodes) {
        const ansiCodeOrigin = ansiCode;
        if (ansiCode.includes(";")) {
          ansiCode = ansiCode.split(";")[0][0] + "0";
        }
        const item = ansiStyles3.codes.get(Number.parseInt(ansiCode, 10));
        if (item) {
          const indexEscape = ansiCodes.indexOf(item.toString());
          if (indexEscape === -1) {
            output.push(wrapAnsi(isEscapes ? item : ansiCodeOrigin));
          } else {
            ansiCodes.splice(indexEscape, 1);
          }
        } else if (isEscapes) {
          output.push(wrapAnsi(0));
          break;
        } else {
          output.push(wrapAnsi(ansiCodeOrigin));
        }
      }
      if (isEscapes) {
        output = output.filter((element, index) => output.indexOf(element) === index);
        if (endAnsiCode !== void 0) {
          const fistEscapeCode = wrapAnsi(ansiStyles3.codes.get(Number.parseInt(endAnsiCode, 10)));
          output = output.reduce((current, next2) => next2 === fistEscapeCode ? [next2, ...current] : [...current, next2], []);
        }
      }
      return output.join("");
    };
    module2.exports = (string, begin, end) => {
      const characters = [...string];
      const ansiCodes = [];
      let stringEnd = typeof end === "number" ? end : characters.length;
      let isInsideEscape = false;
      let ansiCode;
      let visible = 0;
      let output = "";
      for (const [index, character] of characters.entries()) {
        let leftEscape = false;
        if (ESCAPES2.includes(character)) {
          const code = /\d[^m]*/.exec(string.slice(index, index + 18));
          ansiCode = code && code.length > 0 ? code[0] : void 0;
          if (visible < stringEnd) {
            isInsideEscape = true;
            if (ansiCode !== void 0) {
              ansiCodes.push(ansiCode);
            }
          }
        } else if (isInsideEscape && character === "m") {
          isInsideEscape = false;
          leftEscape = true;
        }
        if (!isInsideEscape && !leftEscape) {
          visible++;
        }
        if (!astralRegex({ exact: true }).test(character) && isFullwidthCodePoint2(character.codePointAt())) {
          visible++;
          if (typeof end !== "number") {
            stringEnd++;
          }
        }
        if (visible > begin && visible <= stringEnd) {
          output += character;
        } else if (visible === begin && !isInsideEscape && ansiCode !== void 0) {
          output = checkAnsi(ansiCodes);
        } else if (visible >= stringEnd) {
          output += checkAnsi(ansiCodes, true, ansiCode);
          break;
        }
      }
      return output;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/getBorderCharacters.js
var require_getBorderCharacters = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/getBorderCharacters.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.getBorderCharacters = void 0;
    var getBorderCharacters4 = (name) => {
      if (name === "honeywell") {
        return {
          topBody: "\u2550",
          topJoin: "\u2564",
          topLeft: "\u2554",
          topRight: "\u2557",
          bottomBody: "\u2550",
          bottomJoin: "\u2567",
          bottomLeft: "\u255A",
          bottomRight: "\u255D",
          bodyLeft: "\u2551",
          bodyRight: "\u2551",
          bodyJoin: "\u2502",
          headerJoin: "\u252C",
          joinBody: "\u2500",
          joinLeft: "\u255F",
          joinRight: "\u2562",
          joinJoin: "\u253C",
          joinMiddleDown: "\u252C",
          joinMiddleUp: "\u2534",
          joinMiddleLeft: "\u2524",
          joinMiddleRight: "\u251C"
        };
      }
      if (name === "norc") {
        return {
          topBody: "\u2500",
          topJoin: "\u252C",
          topLeft: "\u250C",
          topRight: "\u2510",
          bottomBody: "\u2500",
          bottomJoin: "\u2534",
          bottomLeft: "\u2514",
          bottomRight: "\u2518",
          bodyLeft: "\u2502",
          bodyRight: "\u2502",
          bodyJoin: "\u2502",
          headerJoin: "\u252C",
          joinBody: "\u2500",
          joinLeft: "\u251C",
          joinRight: "\u2524",
          joinJoin: "\u253C",
          joinMiddleDown: "\u252C",
          joinMiddleUp: "\u2534",
          joinMiddleLeft: "\u2524",
          joinMiddleRight: "\u251C"
        };
      }
      if (name === "ramac") {
        return {
          topBody: "-",
          topJoin: "+",
          topLeft: "+",
          topRight: "+",
          bottomBody: "-",
          bottomJoin: "+",
          bottomLeft: "+",
          bottomRight: "+",
          bodyLeft: "|",
          bodyRight: "|",
          bodyJoin: "|",
          headerJoin: "+",
          joinBody: "-",
          joinLeft: "|",
          joinRight: "|",
          joinJoin: "|",
          joinMiddleDown: "+",
          joinMiddleUp: "+",
          joinMiddleLeft: "+",
          joinMiddleRight: "+"
        };
      }
      if (name === "void") {
        return {
          topBody: "",
          topJoin: "",
          topLeft: "",
          topRight: "",
          bottomBody: "",
          bottomJoin: "",
          bottomLeft: "",
          bottomRight: "",
          bodyLeft: "",
          bodyRight: "",
          bodyJoin: "",
          headerJoin: "",
          joinBody: "",
          joinLeft: "",
          joinRight: "",
          joinJoin: "",
          joinMiddleDown: "",
          joinMiddleUp: "",
          joinMiddleLeft: "",
          joinMiddleRight: ""
        };
      }
      throw new Error('Unknown border template "' + name + '".');
    };
    exports2.getBorderCharacters = getBorderCharacters4;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/utils.js
var require_utils13 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/utils.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.isCellInRange = exports2.areCellEqual = exports2.calculateRangeCoordinate = exports2.flatten = exports2.extractTruncates = exports2.sumArray = exports2.sequence = exports2.distributeUnevenly = exports2.countSpaceSequence = exports2.groupBySizes = exports2.makeBorderConfig = exports2.splitAnsi = exports2.normalizeString = void 0;
    var slice_ansi_1 = __importDefault2(require_slice_ansi());
    var string_width_1 = __importDefault2(require_string_width());
    var strip_ansi_1 = __importDefault2(require_strip_ansi());
    var getBorderCharacters_1 = require_getBorderCharacters();
    var normalizeString2 = (input) => {
      return input.replace(/\r\n/g, "\n");
    };
    exports2.normalizeString = normalizeString2;
    var splitAnsi = (input) => {
      const lengths = (0, strip_ansi_1.default)(input).split("\n").map(string_width_1.default);
      const result2 = [];
      let startIndex = 0;
      lengths.forEach((length) => {
        result2.push(length === 0 ? "" : (0, slice_ansi_1.default)(input, startIndex, startIndex + length));
        startIndex += length + 1;
      });
      return result2;
    };
    exports2.splitAnsi = splitAnsi;
    var makeBorderConfig = (border) => {
      return {
        ...(0, getBorderCharacters_1.getBorderCharacters)("honeywell"),
        ...border
      };
    };
    exports2.makeBorderConfig = makeBorderConfig;
    var groupBySizes = (array, sizes) => {
      let startIndex = 0;
      return sizes.map((size) => {
        const group = array.slice(startIndex, startIndex + size);
        startIndex += size;
        return group;
      });
    };
    exports2.groupBySizes = groupBySizes;
    var countSpaceSequence = (input) => {
      var _a, _b;
      return (_b = (_a = input.match(/\s+/g)) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0;
    };
    exports2.countSpaceSequence = countSpaceSequence;
    var distributeUnevenly = (sum, length) => {
      const result2 = Array.from({ length }).fill(Math.floor(sum / length));
      return result2.map((element, index) => {
        return element + (index < sum % length ? 1 : 0);
      });
    };
    exports2.distributeUnevenly = distributeUnevenly;
    var sequence = (start, end) => {
      return Array.from({ length: end - start + 1 }, (_, index) => {
        return index + start;
      });
    };
    exports2.sequence = sequence;
    var sumArray = (array) => {
      return array.reduce((accumulator, element) => {
        return accumulator + element;
      }, 0);
    };
    exports2.sumArray = sumArray;
    var extractTruncates = (config) => {
      return config.columns.map(({ truncate }) => {
        return truncate;
      });
    };
    exports2.extractTruncates = extractTruncates;
    var flatten2 = (array) => {
      return [].concat(...array);
    };
    exports2.flatten = flatten2;
    var calculateRangeCoordinate = (spanningCellConfig) => {
      const { row, col, colSpan = 1, rowSpan = 1 } = spanningCellConfig;
      return {
        bottomRight: {
          col: col + colSpan - 1,
          row: row + rowSpan - 1
        },
        topLeft: {
          col,
          row
        }
      };
    };
    exports2.calculateRangeCoordinate = calculateRangeCoordinate;
    var areCellEqual = (cell1, cell2) => {
      return cell1.row === cell2.row && cell1.col === cell2.col;
    };
    exports2.areCellEqual = areCellEqual;
    var isCellInRange = (cell, { topLeft, bottomRight }) => {
      return topLeft.row <= cell.row && cell.row <= bottomRight.row && topLeft.col <= cell.col && cell.col <= bottomRight.col;
    };
    exports2.isCellInRange = isCellInRange;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/alignString.js
var require_alignString = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/alignString.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.alignString = void 0;
    var string_width_1 = __importDefault2(require_string_width());
    var utils_1 = require_utils13();
    var alignLeft = (subject, width) => {
      return subject + " ".repeat(width);
    };
    var alignRight = (subject, width) => {
      return " ".repeat(width) + subject;
    };
    var alignCenter = (subject, width) => {
      return " ".repeat(Math.floor(width / 2)) + subject + " ".repeat(Math.ceil(width / 2));
    };
    var alignJustify = (subject, width) => {
      const spaceSequenceCount = (0, utils_1.countSpaceSequence)(subject);
      if (spaceSequenceCount === 0) {
        return alignLeft(subject, width);
      }
      const addingSpaces = (0, utils_1.distributeUnevenly)(width, spaceSequenceCount);
      if (Math.max(...addingSpaces) > 3) {
        return alignLeft(subject, width);
      }
      let spaceSequenceIndex = 0;
      return subject.replace(/\s+/g, (groupSpace) => {
        return groupSpace + " ".repeat(addingSpaces[spaceSequenceIndex++]);
      });
    };
    var alignString = (subject, containerWidth, alignment) => {
      const subjectWidth = (0, string_width_1.default)(subject);
      if (subjectWidth === containerWidth) {
        return subject;
      }
      if (subjectWidth > containerWidth) {
        throw new Error("Subject parameter value width cannot be greater than the container width.");
      }
      if (subjectWidth === 0) {
        return " ".repeat(containerWidth);
      }
      const availableWidth = containerWidth - subjectWidth;
      if (alignment === "left") {
        return alignLeft(subject, availableWidth);
      }
      if (alignment === "right") {
        return alignRight(subject, availableWidth);
      }
      if (alignment === "justify") {
        return alignJustify(subject, availableWidth);
      }
      return alignCenter(subject, availableWidth);
    };
    exports2.alignString = alignString;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/alignTableData.js
var require_alignTableData = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/alignTableData.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.alignTableData = void 0;
    var alignString_1 = require_alignString();
    var alignTableData = (rows, config) => {
      return rows.map((row, rowIndex) => {
        return row.map((cell, cellIndex) => {
          var _a;
          const { width, alignment } = config.columns[cellIndex];
          const containingRange = (_a = config.spanningCellManager) === null || _a === void 0 ? void 0 : _a.getContainingRange({
            col: cellIndex,
            row: rowIndex
          }, { mapped: true });
          if (containingRange) {
            return cell;
          }
          return (0, alignString_1.alignString)(cell, width, alignment);
        });
      });
    };
    exports2.alignTableData = alignTableData;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/wrapString.js
var require_wrapString = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/wrapString.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.wrapString = void 0;
    var slice_ansi_1 = __importDefault2(require_slice_ansi());
    var string_width_1 = __importDefault2(require_string_width());
    var wrapString = (subject, size) => {
      let subjectSlice = subject;
      const chunks = [];
      do {
        chunks.push((0, slice_ansi_1.default)(subjectSlice, 0, size));
        subjectSlice = (0, slice_ansi_1.default)(subjectSlice, size).trim();
      } while ((0, string_width_1.default)(subjectSlice));
      return chunks;
    };
    exports2.wrapString = wrapString;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/wrapWord.js
var require_wrapWord = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/wrapWord.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.wrapWord = void 0;
    var slice_ansi_1 = __importDefault2(require_slice_ansi());
    var strip_ansi_1 = __importDefault2(require_strip_ansi());
    var calculateStringLengths = (input, size) => {
      let subject = (0, strip_ansi_1.default)(input);
      const chunks = [];
      const re = new RegExp("(^.{1," + String(Math.max(size, 1)) + "}(\\s+|$))|(^.{1," + String(Math.max(size - 1, 1)) + "}(\\\\|/|_|\\.|,|;|-))");
      do {
        let chunk;
        const match = re.exec(subject);
        if (match) {
          chunk = match[0];
          subject = subject.slice(chunk.length);
          const trimmedLength = chunk.trim().length;
          const offset = chunk.length - trimmedLength;
          chunks.push([trimmedLength, offset]);
        } else {
          chunk = subject.slice(0, size);
          subject = subject.slice(size);
          chunks.push([chunk.length, 0]);
        }
      } while (subject.length);
      return chunks;
    };
    var wrapWord = (input, size) => {
      const result2 = [];
      let startIndex = 0;
      calculateStringLengths(input, size).forEach(([length, offset]) => {
        result2.push((0, slice_ansi_1.default)(input, startIndex, startIndex + length));
        startIndex += length + offset;
      });
      return result2;
    };
    exports2.wrapWord = wrapWord;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/wrapCell.js
var require_wrapCell = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/wrapCell.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.wrapCell = void 0;
    var utils_1 = require_utils13();
    var wrapString_1 = require_wrapString();
    var wrapWord_1 = require_wrapWord();
    var wrapCell = (cellValue, cellWidth, useWrapWord) => {
      const cellLines = (0, utils_1.splitAnsi)(cellValue);
      for (let lineNr = 0; lineNr < cellLines.length; ) {
        let lineChunks;
        if (useWrapWord) {
          lineChunks = (0, wrapWord_1.wrapWord)(cellLines[lineNr], cellWidth);
        } else {
          lineChunks = (0, wrapString_1.wrapString)(cellLines[lineNr], cellWidth);
        }
        cellLines.splice(lineNr, 1, ...lineChunks);
        lineNr += lineChunks.length;
      }
      return cellLines;
    };
    exports2.wrapCell = wrapCell;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/calculateCellHeight.js
var require_calculateCellHeight = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/calculateCellHeight.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.calculateCellHeight = void 0;
    var wrapCell_1 = require_wrapCell();
    var calculateCellHeight = (value, columnWidth, useWrapWord = false) => {
      return (0, wrapCell_1.wrapCell)(value, columnWidth, useWrapWord).length;
    };
    exports2.calculateCellHeight = calculateCellHeight;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/calculateRowHeights.js
var require_calculateRowHeights = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/calculateRowHeights.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.calculateRowHeights = void 0;
    var calculateCellHeight_1 = require_calculateCellHeight();
    var utils_1 = require_utils13();
    var calculateRowHeights = (rows, config) => {
      const rowHeights = [];
      for (const [rowIndex, row] of rows.entries()) {
        let rowHeight = 1;
        row.forEach((cell, cellIndex) => {
          var _a;
          const containingRange = (_a = config.spanningCellManager) === null || _a === void 0 ? void 0 : _a.getContainingRange({
            col: cellIndex,
            row: rowIndex
          });
          if (!containingRange) {
            const cellHeight = (0, calculateCellHeight_1.calculateCellHeight)(cell, config.columns[cellIndex].width, config.columns[cellIndex].wrapWord);
            rowHeight = Math.max(rowHeight, cellHeight);
            return;
          }
          const { topLeft, bottomRight, height } = containingRange;
          if (rowIndex === bottomRight.row) {
            const totalOccupiedSpanningCellHeight = (0, utils_1.sumArray)(rowHeights.slice(topLeft.row));
            const totalHorizontalBorderHeight = bottomRight.row - topLeft.row;
            const totalHiddenHorizontalBorderHeight = (0, utils_1.sequence)(topLeft.row + 1, bottomRight.row).filter((horizontalBorderIndex) => {
              var _a2;
              return !((_a2 = config.drawHorizontalLine) === null || _a2 === void 0 ? void 0 : _a2.call(config, horizontalBorderIndex, rows.length));
            }).length;
            const cellHeight = height - totalOccupiedSpanningCellHeight - totalHorizontalBorderHeight + totalHiddenHorizontalBorderHeight;
            rowHeight = Math.max(rowHeight, cellHeight);
          }
        });
        rowHeights.push(rowHeight);
      }
      return rowHeights;
    };
    exports2.calculateRowHeights = calculateRowHeights;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/drawContent.js
var require_drawContent = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/drawContent.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.drawContent = void 0;
    var drawContent = (parameters) => {
      const { contents, separatorGetter, drawSeparator, spanningCellManager, rowIndex, elementType } = parameters;
      const contentSize = contents.length;
      const result2 = [];
      if (drawSeparator(0, contentSize)) {
        result2.push(separatorGetter(0, contentSize));
      }
      contents.forEach((content, contentIndex) => {
        if (!elementType || elementType === "border" || elementType === "row") {
          result2.push(content);
        }
        if (elementType === "cell" && rowIndex === void 0) {
          result2.push(content);
        }
        if (elementType === "cell" && rowIndex !== void 0) {
          const containingRange = spanningCellManager === null || spanningCellManager === void 0 ? void 0 : spanningCellManager.getContainingRange({
            col: contentIndex,
            row: rowIndex
          });
          if (!containingRange || contentIndex === containingRange.topLeft.col) {
            result2.push(content);
          }
        }
        if (contentIndex + 1 < contentSize && drawSeparator(contentIndex + 1, contentSize)) {
          const separator = separatorGetter(contentIndex + 1, contentSize);
          if (elementType === "cell" && rowIndex !== void 0) {
            const currentCell = {
              col: contentIndex + 1,
              row: rowIndex
            };
            const containingRange = spanningCellManager === null || spanningCellManager === void 0 ? void 0 : spanningCellManager.getContainingRange(currentCell);
            if (!containingRange || containingRange.topLeft.col === currentCell.col) {
              result2.push(separator);
            }
          } else {
            result2.push(separator);
          }
        }
      });
      if (drawSeparator(contentSize, contentSize)) {
        result2.push(separatorGetter(contentSize, contentSize));
      }
      return result2.join("");
    };
    exports2.drawContent = drawContent;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/drawBorder.js
var require_drawBorder = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/drawBorder.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.createTableBorderGetter = exports2.drawBorderBottom = exports2.drawBorderJoin = exports2.drawBorderTop = exports2.drawBorder = exports2.createSeparatorGetter = exports2.drawBorderSegments = void 0;
    var drawContent_1 = require_drawContent();
    var drawBorderSegments = (columnWidths, parameters) => {
      const { separator, horizontalBorderIndex, spanningCellManager } = parameters;
      return columnWidths.map((columnWidth, columnIndex) => {
        const normalSegment = separator.body.repeat(columnWidth);
        if (horizontalBorderIndex === void 0) {
          return normalSegment;
        }
        const range = spanningCellManager === null || spanningCellManager === void 0 ? void 0 : spanningCellManager.getContainingRange({
          col: columnIndex,
          row: horizontalBorderIndex
        });
        if (!range) {
          return normalSegment;
        }
        const { topLeft } = range;
        if (horizontalBorderIndex === topLeft.row) {
          return normalSegment;
        }
        if (columnIndex !== topLeft.col) {
          return "";
        }
        return range.extractBorderContent(horizontalBorderIndex);
      });
    };
    exports2.drawBorderSegments = drawBorderSegments;
    var createSeparatorGetter = (dependencies) => {
      const { separator, spanningCellManager, horizontalBorderIndex, rowCount } = dependencies;
      return (verticalBorderIndex, columnCount) => {
        const inSameRange = spanningCellManager === null || spanningCellManager === void 0 ? void 0 : spanningCellManager.inSameRange;
        if (horizontalBorderIndex !== void 0 && inSameRange) {
          const topCell = {
            col: verticalBorderIndex,
            row: horizontalBorderIndex - 1
          };
          const leftCell = {
            col: verticalBorderIndex - 1,
            row: horizontalBorderIndex
          };
          const oppositeCell = {
            col: verticalBorderIndex - 1,
            row: horizontalBorderIndex - 1
          };
          const currentCell = {
            col: verticalBorderIndex,
            row: horizontalBorderIndex
          };
          const pairs2 = [
            [oppositeCell, topCell],
            [topCell, currentCell],
            [currentCell, leftCell],
            [leftCell, oppositeCell]
          ];
          if (verticalBorderIndex === 0) {
            if (inSameRange(currentCell, topCell) && separator.bodyJoinOuter) {
              return separator.bodyJoinOuter;
            }
            return separator.left;
          }
          if (verticalBorderIndex === columnCount) {
            if (inSameRange(oppositeCell, leftCell) && separator.bodyJoinOuter) {
              return separator.bodyJoinOuter;
            }
            return separator.right;
          }
          if (horizontalBorderIndex === 0) {
            if (inSameRange(currentCell, leftCell)) {
              return separator.body;
            }
            return separator.join;
          }
          if (horizontalBorderIndex === rowCount) {
            if (inSameRange(topCell, oppositeCell)) {
              return separator.body;
            }
            return separator.join;
          }
          const sameRangeCount = pairs2.map((pair) => {
            return inSameRange(...pair);
          }).filter(Boolean).length;
          if (sameRangeCount === 0) {
            return separator.join;
          }
          if (sameRangeCount === 4) {
            return "";
          }
          if (sameRangeCount === 2) {
            if (inSameRange(...pairs2[1]) && inSameRange(...pairs2[3]) && separator.bodyJoinInner) {
              return separator.bodyJoinInner;
            }
            return separator.body;
          }
          if (sameRangeCount === 1) {
            if (!separator.joinRight || !separator.joinLeft || !separator.joinUp || !separator.joinDown) {
              throw new Error(`Can not get border separator for position [${horizontalBorderIndex}, ${verticalBorderIndex}]`);
            }
            if (inSameRange(...pairs2[0])) {
              return separator.joinDown;
            }
            if (inSameRange(...pairs2[1])) {
              return separator.joinLeft;
            }
            if (inSameRange(...pairs2[2])) {
              return separator.joinUp;
            }
            return separator.joinRight;
          }
          throw new Error("Invalid case");
        }
        if (verticalBorderIndex === 0) {
          return separator.left;
        }
        if (verticalBorderIndex === columnCount) {
          return separator.right;
        }
        return separator.join;
      };
    };
    exports2.createSeparatorGetter = createSeparatorGetter;
    var drawBorder = (columnWidths, parameters) => {
      const borderSegments = (0, exports2.drawBorderSegments)(columnWidths, parameters);
      const { drawVerticalLine, horizontalBorderIndex, spanningCellManager } = parameters;
      return (0, drawContent_1.drawContent)({
        contents: borderSegments,
        drawSeparator: drawVerticalLine,
        elementType: "border",
        rowIndex: horizontalBorderIndex,
        separatorGetter: (0, exports2.createSeparatorGetter)(parameters),
        spanningCellManager
      }) + "\n";
    };
    exports2.drawBorder = drawBorder;
    var drawBorderTop = (columnWidths, parameters) => {
      const { border } = parameters;
      const result2 = (0, exports2.drawBorder)(columnWidths, {
        ...parameters,
        separator: {
          body: border.topBody,
          join: border.topJoin,
          left: border.topLeft,
          right: border.topRight
        }
      });
      if (result2 === "\n") {
        return "";
      }
      return result2;
    };
    exports2.drawBorderTop = drawBorderTop;
    var drawBorderJoin = (columnWidths, parameters) => {
      const { border } = parameters;
      return (0, exports2.drawBorder)(columnWidths, {
        ...parameters,
        separator: {
          body: border.joinBody,
          bodyJoinInner: border.bodyJoin,
          bodyJoinOuter: border.bodyLeft,
          join: border.joinJoin,
          joinDown: border.joinMiddleDown,
          joinLeft: border.joinMiddleLeft,
          joinRight: border.joinMiddleRight,
          joinUp: border.joinMiddleUp,
          left: border.joinLeft,
          right: border.joinRight
        }
      });
    };
    exports2.drawBorderJoin = drawBorderJoin;
    var drawBorderBottom = (columnWidths, parameters) => {
      const { border } = parameters;
      return (0, exports2.drawBorder)(columnWidths, {
        ...parameters,
        separator: {
          body: border.bottomBody,
          join: border.bottomJoin,
          left: border.bottomLeft,
          right: border.bottomRight
        }
      });
    };
    exports2.drawBorderBottom = drawBorderBottom;
    var createTableBorderGetter = (columnWidths, parameters) => {
      return (index, size) => {
        const drawBorderParameters = {
          ...parameters,
          horizontalBorderIndex: index
        };
        if (index === 0) {
          return (0, exports2.drawBorderTop)(columnWidths, drawBorderParameters);
        } else if (index === size) {
          return (0, exports2.drawBorderBottom)(columnWidths, drawBorderParameters);
        }
        return (0, exports2.drawBorderJoin)(columnWidths, drawBorderParameters);
      };
    };
    exports2.createTableBorderGetter = createTableBorderGetter;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/drawRow.js
var require_drawRow = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/drawRow.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.drawRow = void 0;
    var drawContent_1 = require_drawContent();
    var drawRow = (row, config) => {
      const { border, drawVerticalLine, rowIndex, spanningCellManager } = config;
      return (0, drawContent_1.drawContent)({
        contents: row,
        drawSeparator: drawVerticalLine,
        elementType: "cell",
        rowIndex,
        separatorGetter: (index, columnCount) => {
          if (index === 0) {
            return border.bodyLeft;
          }
          if (index === columnCount) {
            return border.bodyRight;
          }
          return border.bodyJoin;
        },
        spanningCellManager
      }) + "\n";
    };
    exports2.drawRow = drawRow;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/ajv/8.20.0/972ff112ede971abcad3b1ad0f8fabf6c732e101d4dc81ce549973763d19cae2/node_modules/ajv/dist/runtime/equal.js
var require_equal = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/ajv/8.20.0/972ff112ede971abcad3b1ad0f8fabf6c732e101d4dc81ce549973763d19cae2/node_modules/ajv/dist/runtime/equal.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var equal2 = require_fast_deep_equal();
    equal2.code = 'require("ajv/dist/runtime/equal").default';
    exports2.default = equal2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/generated/validators.js
var require_validators = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/generated/validators.js"(exports2) {
    "use strict";
    exports2["config.json"] = validate43;
    var schema13 = {
      "$id": "config.json",
      "$schema": "http://json-schema.org/draft-07/schema#",
      "type": "object",
      "properties": {
        "border": {
          "$ref": "shared.json#/definitions/borders"
        },
        "header": {
          "type": "object",
          "properties": {
            "content": {
              "type": "string"
            },
            "alignment": {
              "$ref": "shared.json#/definitions/alignment"
            },
            "wrapWord": {
              "type": "boolean"
            },
            "truncate": {
              "type": "integer"
            },
            "paddingLeft": {
              "type": "integer"
            },
            "paddingRight": {
              "type": "integer"
            }
          },
          "required": ["content"],
          "additionalProperties": false
        },
        "columns": {
          "$ref": "shared.json#/definitions/columns"
        },
        "columnDefault": {
          "$ref": "shared.json#/definitions/column"
        },
        "drawVerticalLine": {
          "typeof": "function"
        },
        "drawHorizontalLine": {
          "typeof": "function"
        },
        "singleLine": {
          "typeof": "boolean"
        },
        "spanningCells": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "col": {
                "type": "integer",
                "minimum": 0
              },
              "row": {
                "type": "integer",
                "minimum": 0
              },
              "colSpan": {
                "type": "integer",
                "minimum": 1
              },
              "rowSpan": {
                "type": "integer",
                "minimum": 1
              },
              "alignment": {
                "$ref": "shared.json#/definitions/alignment"
              },
              "verticalAlignment": {
                "$ref": "shared.json#/definitions/verticalAlignment"
              },
              "wrapWord": {
                "type": "boolean"
              },
              "truncate": {
                "type": "integer"
              },
              "paddingLeft": {
                "type": "integer"
              },
              "paddingRight": {
                "type": "integer"
              }
            },
            "required": ["row", "col"],
            "additionalProperties": false
          }
        }
      },
      "additionalProperties": false
    };
    var schema15 = {
      "type": "object",
      "properties": {
        "topBody": {
          "$ref": "#/definitions/border"
        },
        "topJoin": {
          "$ref": "#/definitions/border"
        },
        "topLeft": {
          "$ref": "#/definitions/border"
        },
        "topRight": {
          "$ref": "#/definitions/border"
        },
        "bottomBody": {
          "$ref": "#/definitions/border"
        },
        "bottomJoin": {
          "$ref": "#/definitions/border"
        },
        "bottomLeft": {
          "$ref": "#/definitions/border"
        },
        "bottomRight": {
          "$ref": "#/definitions/border"
        },
        "bodyLeft": {
          "$ref": "#/definitions/border"
        },
        "bodyRight": {
          "$ref": "#/definitions/border"
        },
        "bodyJoin": {
          "$ref": "#/definitions/border"
        },
        "headerJoin": {
          "$ref": "#/definitions/border"
        },
        "joinBody": {
          "$ref": "#/definitions/border"
        },
        "joinLeft": {
          "$ref": "#/definitions/border"
        },
        "joinRight": {
          "$ref": "#/definitions/border"
        },
        "joinJoin": {
          "$ref": "#/definitions/border"
        },
        "joinMiddleUp": {
          "$ref": "#/definitions/border"
        },
        "joinMiddleDown": {
          "$ref": "#/definitions/border"
        },
        "joinMiddleLeft": {
          "$ref": "#/definitions/border"
        },
        "joinMiddleRight": {
          "$ref": "#/definitions/border"
        }
      },
      "additionalProperties": false
    };
    var func8 = Object.prototype.hasOwnProperty;
    function validate46(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) {
      let vErrors = null;
      let errors2 = 0;
      if (typeof data !== "string") {
        const err0 = {
          instancePath,
          schemaPath: "#/type",
          keyword: "type",
          params: {
            type: "string"
          },
          message: "must be string"
        };
        if (vErrors === null) {
          vErrors = [err0];
        } else {
          vErrors.push(err0);
        }
        errors2++;
      }
      validate46.errors = vErrors;
      return errors2 === 0;
    }
    function validate45(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) {
      let vErrors = null;
      let errors2 = 0;
      if (data && typeof data == "object" && !Array.isArray(data)) {
        for (const key0 in data) {
          if (!func8.call(schema15.properties, key0)) {
            const err0 = {
              instancePath,
              schemaPath: "#/additionalProperties",
              keyword: "additionalProperties",
              params: {
                additionalProperty: key0
              },
              message: "must NOT have additional properties"
            };
            if (vErrors === null) {
              vErrors = [err0];
            } else {
              vErrors.push(err0);
            }
            errors2++;
          }
        }
        if (data.topBody !== void 0) {
          if (!validate46(data.topBody, {
            instancePath: instancePath + "/topBody",
            parentData: data,
            parentDataProperty: "topBody",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.topJoin !== void 0) {
          if (!validate46(data.topJoin, {
            instancePath: instancePath + "/topJoin",
            parentData: data,
            parentDataProperty: "topJoin",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.topLeft !== void 0) {
          if (!validate46(data.topLeft, {
            instancePath: instancePath + "/topLeft",
            parentData: data,
            parentDataProperty: "topLeft",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.topRight !== void 0) {
          if (!validate46(data.topRight, {
            instancePath: instancePath + "/topRight",
            parentData: data,
            parentDataProperty: "topRight",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.bottomBody !== void 0) {
          if (!validate46(data.bottomBody, {
            instancePath: instancePath + "/bottomBody",
            parentData: data,
            parentDataProperty: "bottomBody",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.bottomJoin !== void 0) {
          if (!validate46(data.bottomJoin, {
            instancePath: instancePath + "/bottomJoin",
            parentData: data,
            parentDataProperty: "bottomJoin",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.bottomLeft !== void 0) {
          if (!validate46(data.bottomLeft, {
            instancePath: instancePath + "/bottomLeft",
            parentData: data,
            parentDataProperty: "bottomLeft",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.bottomRight !== void 0) {
          if (!validate46(data.bottomRight, {
            instancePath: instancePath + "/bottomRight",
            parentData: data,
            parentDataProperty: "bottomRight",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.bodyLeft !== void 0) {
          if (!validate46(data.bodyLeft, {
            instancePath: instancePath + "/bodyLeft",
            parentData: data,
            parentDataProperty: "bodyLeft",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.bodyRight !== void 0) {
          if (!validate46(data.bodyRight, {
            instancePath: instancePath + "/bodyRight",
            parentData: data,
            parentDataProperty: "bodyRight",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.bodyJoin !== void 0) {
          if (!validate46(data.bodyJoin, {
            instancePath: instancePath + "/bodyJoin",
            parentData: data,
            parentDataProperty: "bodyJoin",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.headerJoin !== void 0) {
          if (!validate46(data.headerJoin, {
            instancePath: instancePath + "/headerJoin",
            parentData: data,
            parentDataProperty: "headerJoin",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.joinBody !== void 0) {
          if (!validate46(data.joinBody, {
            instancePath: instancePath + "/joinBody",
            parentData: data,
            parentDataProperty: "joinBody",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.joinLeft !== void 0) {
          if (!validate46(data.joinLeft, {
            instancePath: instancePath + "/joinLeft",
            parentData: data,
            parentDataProperty: "joinLeft",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.joinRight !== void 0) {
          if (!validate46(data.joinRight, {
            instancePath: instancePath + "/joinRight",
            parentData: data,
            parentDataProperty: "joinRight",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.joinJoin !== void 0) {
          if (!validate46(data.joinJoin, {
            instancePath: instancePath + "/joinJoin",
            parentData: data,
            parentDataProperty: "joinJoin",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.joinMiddleUp !== void 0) {
          if (!validate46(data.joinMiddleUp, {
            instancePath: instancePath + "/joinMiddleUp",
            parentData: data,
            parentDataProperty: "joinMiddleUp",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.joinMiddleDown !== void 0) {
          if (!validate46(data.joinMiddleDown, {
            instancePath: instancePath + "/joinMiddleDown",
            parentData: data,
            parentDataProperty: "joinMiddleDown",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.joinMiddleLeft !== void 0) {
          if (!validate46(data.joinMiddleLeft, {
            instancePath: instancePath + "/joinMiddleLeft",
            parentData: data,
            parentDataProperty: "joinMiddleLeft",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.joinMiddleRight !== void 0) {
          if (!validate46(data.joinMiddleRight, {
            instancePath: instancePath + "/joinMiddleRight",
            parentData: data,
            parentDataProperty: "joinMiddleRight",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
      } else {
        const err1 = {
          instancePath,
          schemaPath: "#/type",
          keyword: "type",
          params: {
            type: "object"
          },
          message: "must be object"
        };
        if (vErrors === null) {
          vErrors = [err1];
        } else {
          vErrors.push(err1);
        }
        errors2++;
      }
      validate45.errors = vErrors;
      return errors2 === 0;
    }
    var schema17 = {
      "type": "string",
      "enum": ["left", "right", "center", "justify"]
    };
    var func0 = require_equal().default;
    function validate68(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) {
      let vErrors = null;
      let errors2 = 0;
      if (typeof data !== "string") {
        const err0 = {
          instancePath,
          schemaPath: "#/type",
          keyword: "type",
          params: {
            type: "string"
          },
          message: "must be string"
        };
        if (vErrors === null) {
          vErrors = [err0];
        } else {
          vErrors.push(err0);
        }
        errors2++;
      }
      if (!(data === "left" || data === "right" || data === "center" || data === "justify")) {
        const err1 = {
          instancePath,
          schemaPath: "#/enum",
          keyword: "enum",
          params: {
            allowedValues: schema17.enum
          },
          message: "must be equal to one of the allowed values"
        };
        if (vErrors === null) {
          vErrors = [err1];
        } else {
          vErrors.push(err1);
        }
        errors2++;
      }
      validate68.errors = vErrors;
      return errors2 === 0;
    }
    var pattern0 = new RegExp("^[0-9]+$", "u");
    function validate72(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) {
      let vErrors = null;
      let errors2 = 0;
      if (typeof data !== "string") {
        const err0 = {
          instancePath,
          schemaPath: "#/type",
          keyword: "type",
          params: {
            type: "string"
          },
          message: "must be string"
        };
        if (vErrors === null) {
          vErrors = [err0];
        } else {
          vErrors.push(err0);
        }
        errors2++;
      }
      if (!(data === "left" || data === "right" || data === "center" || data === "justify")) {
        const err1 = {
          instancePath,
          schemaPath: "#/enum",
          keyword: "enum",
          params: {
            allowedValues: schema17.enum
          },
          message: "must be equal to one of the allowed values"
        };
        if (vErrors === null) {
          vErrors = [err1];
        } else {
          vErrors.push(err1);
        }
        errors2++;
      }
      validate72.errors = vErrors;
      return errors2 === 0;
    }
    var schema21 = {
      "type": "string",
      "enum": ["top", "middle", "bottom"]
    };
    function validate74(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) {
      let vErrors = null;
      let errors2 = 0;
      if (typeof data !== "string") {
        const err0 = {
          instancePath,
          schemaPath: "#/type",
          keyword: "type",
          params: {
            type: "string"
          },
          message: "must be string"
        };
        if (vErrors === null) {
          vErrors = [err0];
        } else {
          vErrors.push(err0);
        }
        errors2++;
      }
      if (!(data === "top" || data === "middle" || data === "bottom")) {
        const err1 = {
          instancePath,
          schemaPath: "#/enum",
          keyword: "enum",
          params: {
            allowedValues: schema21.enum
          },
          message: "must be equal to one of the allowed values"
        };
        if (vErrors === null) {
          vErrors = [err1];
        } else {
          vErrors.push(err1);
        }
        errors2++;
      }
      validate74.errors = vErrors;
      return errors2 === 0;
    }
    function validate71(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) {
      let vErrors = null;
      let errors2 = 0;
      if (data && typeof data == "object" && !Array.isArray(data)) {
        for (const key0 in data) {
          if (!(key0 === "alignment" || key0 === "verticalAlignment" || key0 === "width" || key0 === "wrapWord" || key0 === "truncate" || key0 === "paddingLeft" || key0 === "paddingRight")) {
            const err0 = {
              instancePath,
              schemaPath: "#/additionalProperties",
              keyword: "additionalProperties",
              params: {
                additionalProperty: key0
              },
              message: "must NOT have additional properties"
            };
            if (vErrors === null) {
              vErrors = [err0];
            } else {
              vErrors.push(err0);
            }
            errors2++;
          }
        }
        if (data.alignment !== void 0) {
          if (!validate72(data.alignment, {
            instancePath: instancePath + "/alignment",
            parentData: data,
            parentDataProperty: "alignment",
            rootData
          })) {
            vErrors = vErrors === null ? validate72.errors : vErrors.concat(validate72.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.verticalAlignment !== void 0) {
          if (!validate74(data.verticalAlignment, {
            instancePath: instancePath + "/verticalAlignment",
            parentData: data,
            parentDataProperty: "verticalAlignment",
            rootData
          })) {
            vErrors = vErrors === null ? validate74.errors : vErrors.concat(validate74.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.width !== void 0) {
          let data2 = data.width;
          if (!(typeof data2 == "number" && (!(data2 % 1) && !isNaN(data2)) && isFinite(data2))) {
            const err1 = {
              instancePath: instancePath + "/width",
              schemaPath: "#/properties/width/type",
              keyword: "type",
              params: {
                type: "integer"
              },
              message: "must be integer"
            };
            if (vErrors === null) {
              vErrors = [err1];
            } else {
              vErrors.push(err1);
            }
            errors2++;
          }
          if (typeof data2 == "number" && isFinite(data2)) {
            if (data2 < 1 || isNaN(data2)) {
              const err2 = {
                instancePath: instancePath + "/width",
                schemaPath: "#/properties/width/minimum",
                keyword: "minimum",
                params: {
                  comparison: ">=",
                  limit: 1
                },
                message: "must be >= 1"
              };
              if (vErrors === null) {
                vErrors = [err2];
              } else {
                vErrors.push(err2);
              }
              errors2++;
            }
          }
        }
        if (data.wrapWord !== void 0) {
          if (typeof data.wrapWord !== "boolean") {
            const err3 = {
              instancePath: instancePath + "/wrapWord",
              schemaPath: "#/properties/wrapWord/type",
              keyword: "type",
              params: {
                type: "boolean"
              },
              message: "must be boolean"
            };
            if (vErrors === null) {
              vErrors = [err3];
            } else {
              vErrors.push(err3);
            }
            errors2++;
          }
        }
        if (data.truncate !== void 0) {
          let data4 = data.truncate;
          if (!(typeof data4 == "number" && (!(data4 % 1) && !isNaN(data4)) && isFinite(data4))) {
            const err4 = {
              instancePath: instancePath + "/truncate",
              schemaPath: "#/properties/truncate/type",
              keyword: "type",
              params: {
                type: "integer"
              },
              message: "must be integer"
            };
            if (vErrors === null) {
              vErrors = [err4];
            } else {
              vErrors.push(err4);
            }
            errors2++;
          }
        }
        if (data.paddingLeft !== void 0) {
          let data5 = data.paddingLeft;
          if (!(typeof data5 == "number" && (!(data5 % 1) && !isNaN(data5)) && isFinite(data5))) {
            const err5 = {
              instancePath: instancePath + "/paddingLeft",
              schemaPath: "#/properties/paddingLeft/type",
              keyword: "type",
              params: {
                type: "integer"
              },
              message: "must be integer"
            };
            if (vErrors === null) {
              vErrors = [err5];
            } else {
              vErrors.push(err5);
            }
            errors2++;
          }
        }
        if (data.paddingRight !== void 0) {
          let data6 = data.paddingRight;
          if (!(typeof data6 == "number" && (!(data6 % 1) && !isNaN(data6)) && isFinite(data6))) {
            const err6 = {
              instancePath: instancePath + "/paddingRight",
              schemaPath: "#/properties/paddingRight/type",
              keyword: "type",
              params: {
                type: "integer"
              },
              message: "must be integer"
            };
            if (vErrors === null) {
              vErrors = [err6];
            } else {
              vErrors.push(err6);
            }
            errors2++;
          }
        }
      } else {
        const err7 = {
          instancePath,
          schemaPath: "#/type",
          keyword: "type",
          params: {
            type: "object"
          },
          message: "must be object"
        };
        if (vErrors === null) {
          vErrors = [err7];
        } else {
          vErrors.push(err7);
        }
        errors2++;
      }
      validate71.errors = vErrors;
      return errors2 === 0;
    }
    function validate70(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) {
      let vErrors = null;
      let errors2 = 0;
      const _errs0 = errors2;
      let valid0 = false;
      let passing0 = null;
      const _errs1 = errors2;
      if (data && typeof data == "object" && !Array.isArray(data)) {
        for (const key0 in data) {
          if (!pattern0.test(key0)) {
            const err0 = {
              instancePath,
              schemaPath: "#/oneOf/0/additionalProperties",
              keyword: "additionalProperties",
              params: {
                additionalProperty: key0
              },
              message: "must NOT have additional properties"
            };
            if (vErrors === null) {
              vErrors = [err0];
            } else {
              vErrors.push(err0);
            }
            errors2++;
          }
        }
        for (const key1 in data) {
          if (pattern0.test(key1)) {
            if (!validate71(data[key1], {
              instancePath: instancePath + "/" + key1.replace(/~/g, "~0").replace(/\//g, "~1"),
              parentData: data,
              parentDataProperty: key1,
              rootData
            })) {
              vErrors = vErrors === null ? validate71.errors : vErrors.concat(validate71.errors);
              errors2 = vErrors.length;
            }
          }
        }
      } else {
        const err1 = {
          instancePath,
          schemaPath: "#/oneOf/0/type",
          keyword: "type",
          params: {
            type: "object"
          },
          message: "must be object"
        };
        if (vErrors === null) {
          vErrors = [err1];
        } else {
          vErrors.push(err1);
        }
        errors2++;
      }
      var _valid0 = _errs1 === errors2;
      if (_valid0) {
        valid0 = true;
        passing0 = 0;
      }
      const _errs5 = errors2;
      if (Array.isArray(data)) {
        const len0 = data.length;
        for (let i0 = 0; i0 < len0; i0++) {
          if (!validate71(data[i0], {
            instancePath: instancePath + "/" + i0,
            parentData: data,
            parentDataProperty: i0,
            rootData
          })) {
            vErrors = vErrors === null ? validate71.errors : vErrors.concat(validate71.errors);
            errors2 = vErrors.length;
          }
        }
      } else {
        const err2 = {
          instancePath,
          schemaPath: "#/oneOf/1/type",
          keyword: "type",
          params: {
            type: "array"
          },
          message: "must be array"
        };
        if (vErrors === null) {
          vErrors = [err2];
        } else {
          vErrors.push(err2);
        }
        errors2++;
      }
      var _valid0 = _errs5 === errors2;
      if (_valid0 && valid0) {
        valid0 = false;
        passing0 = [passing0, 1];
      } else {
        if (_valid0) {
          valid0 = true;
          passing0 = 1;
        }
      }
      if (!valid0) {
        const err3 = {
          instancePath,
          schemaPath: "#/oneOf",
          keyword: "oneOf",
          params: {
            passingSchemas: passing0
          },
          message: "must match exactly one schema in oneOf"
        };
        if (vErrors === null) {
          vErrors = [err3];
        } else {
          vErrors.push(err3);
        }
        errors2++;
      } else {
        errors2 = _errs0;
        if (vErrors !== null) {
          if (_errs0) {
            vErrors.length = _errs0;
          } else {
            vErrors = null;
          }
        }
      }
      validate70.errors = vErrors;
      return errors2 === 0;
    }
    function validate79(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) {
      let vErrors = null;
      let errors2 = 0;
      if (data && typeof data == "object" && !Array.isArray(data)) {
        for (const key0 in data) {
          if (!(key0 === "alignment" || key0 === "verticalAlignment" || key0 === "width" || key0 === "wrapWord" || key0 === "truncate" || key0 === "paddingLeft" || key0 === "paddingRight")) {
            const err0 = {
              instancePath,
              schemaPath: "#/additionalProperties",
              keyword: "additionalProperties",
              params: {
                additionalProperty: key0
              },
              message: "must NOT have additional properties"
            };
            if (vErrors === null) {
              vErrors = [err0];
            } else {
              vErrors.push(err0);
            }
            errors2++;
          }
        }
        if (data.alignment !== void 0) {
          if (!validate72(data.alignment, {
            instancePath: instancePath + "/alignment",
            parentData: data,
            parentDataProperty: "alignment",
            rootData
          })) {
            vErrors = vErrors === null ? validate72.errors : vErrors.concat(validate72.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.verticalAlignment !== void 0) {
          if (!validate74(data.verticalAlignment, {
            instancePath: instancePath + "/verticalAlignment",
            parentData: data,
            parentDataProperty: "verticalAlignment",
            rootData
          })) {
            vErrors = vErrors === null ? validate74.errors : vErrors.concat(validate74.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.width !== void 0) {
          let data2 = data.width;
          if (!(typeof data2 == "number" && (!(data2 % 1) && !isNaN(data2)) && isFinite(data2))) {
            const err1 = {
              instancePath: instancePath + "/width",
              schemaPath: "#/properties/width/type",
              keyword: "type",
              params: {
                type: "integer"
              },
              message: "must be integer"
            };
            if (vErrors === null) {
              vErrors = [err1];
            } else {
              vErrors.push(err1);
            }
            errors2++;
          }
          if (typeof data2 == "number" && isFinite(data2)) {
            if (data2 < 1 || isNaN(data2)) {
              const err2 = {
                instancePath: instancePath + "/width",
                schemaPath: "#/properties/width/minimum",
                keyword: "minimum",
                params: {
                  comparison: ">=",
                  limit: 1
                },
                message: "must be >= 1"
              };
              if (vErrors === null) {
                vErrors = [err2];
              } else {
                vErrors.push(err2);
              }
              errors2++;
            }
          }
        }
        if (data.wrapWord !== void 0) {
          if (typeof data.wrapWord !== "boolean") {
            const err3 = {
              instancePath: instancePath + "/wrapWord",
              schemaPath: "#/properties/wrapWord/type",
              keyword: "type",
              params: {
                type: "boolean"
              },
              message: "must be boolean"
            };
            if (vErrors === null) {
              vErrors = [err3];
            } else {
              vErrors.push(err3);
            }
            errors2++;
          }
        }
        if (data.truncate !== void 0) {
          let data4 = data.truncate;
          if (!(typeof data4 == "number" && (!(data4 % 1) && !isNaN(data4)) && isFinite(data4))) {
            const err4 = {
              instancePath: instancePath + "/truncate",
              schemaPath: "#/properties/truncate/type",
              keyword: "type",
              params: {
                type: "integer"
              },
              message: "must be integer"
            };
            if (vErrors === null) {
              vErrors = [err4];
            } else {
              vErrors.push(err4);
            }
            errors2++;
          }
        }
        if (data.paddingLeft !== void 0) {
          let data5 = data.paddingLeft;
          if (!(typeof data5 == "number" && (!(data5 % 1) && !isNaN(data5)) && isFinite(data5))) {
            const err5 = {
              instancePath: instancePath + "/paddingLeft",
              schemaPath: "#/properties/paddingLeft/type",
              keyword: "type",
              params: {
                type: "integer"
              },
              message: "must be integer"
            };
            if (vErrors === null) {
              vErrors = [err5];
            } else {
              vErrors.push(err5);
            }
            errors2++;
          }
        }
        if (data.paddingRight !== void 0) {
          let data6 = data.paddingRight;
          if (!(typeof data6 == "number" && (!(data6 % 1) && !isNaN(data6)) && isFinite(data6))) {
            const err6 = {
              instancePath: instancePath + "/paddingRight",
              schemaPath: "#/properties/paddingRight/type",
              keyword: "type",
              params: {
                type: "integer"
              },
              message: "must be integer"
            };
            if (vErrors === null) {
              vErrors = [err6];
            } else {
              vErrors.push(err6);
            }
            errors2++;
          }
        }
      } else {
        const err7 = {
          instancePath,
          schemaPath: "#/type",
          keyword: "type",
          params: {
            type: "object"
          },
          message: "must be object"
        };
        if (vErrors === null) {
          vErrors = [err7];
        } else {
          vErrors.push(err7);
        }
        errors2++;
      }
      validate79.errors = vErrors;
      return errors2 === 0;
    }
    function validate84(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) {
      let vErrors = null;
      let errors2 = 0;
      if (typeof data !== "string") {
        const err0 = {
          instancePath,
          schemaPath: "#/type",
          keyword: "type",
          params: {
            type: "string"
          },
          message: "must be string"
        };
        if (vErrors === null) {
          vErrors = [err0];
        } else {
          vErrors.push(err0);
        }
        errors2++;
      }
      if (!(data === "top" || data === "middle" || data === "bottom")) {
        const err1 = {
          instancePath,
          schemaPath: "#/enum",
          keyword: "enum",
          params: {
            allowedValues: schema21.enum
          },
          message: "must be equal to one of the allowed values"
        };
        if (vErrors === null) {
          vErrors = [err1];
        } else {
          vErrors.push(err1);
        }
        errors2++;
      }
      validate84.errors = vErrors;
      return errors2 === 0;
    }
    function validate43(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) {
      ;
      let vErrors = null;
      let errors2 = 0;
      if (data && typeof data == "object" && !Array.isArray(data)) {
        for (const key0 in data) {
          if (!(key0 === "border" || key0 === "header" || key0 === "columns" || key0 === "columnDefault" || key0 === "drawVerticalLine" || key0 === "drawHorizontalLine" || key0 === "singleLine" || key0 === "spanningCells")) {
            const err0 = {
              instancePath,
              schemaPath: "#/additionalProperties",
              keyword: "additionalProperties",
              params: {
                additionalProperty: key0
              },
              message: "must NOT have additional properties"
            };
            if (vErrors === null) {
              vErrors = [err0];
            } else {
              vErrors.push(err0);
            }
            errors2++;
          }
        }
        if (data.border !== void 0) {
          if (!validate45(data.border, {
            instancePath: instancePath + "/border",
            parentData: data,
            parentDataProperty: "border",
            rootData
          })) {
            vErrors = vErrors === null ? validate45.errors : vErrors.concat(validate45.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.header !== void 0) {
          let data1 = data.header;
          if (data1 && typeof data1 == "object" && !Array.isArray(data1)) {
            if (data1.content === void 0) {
              const err1 = {
                instancePath: instancePath + "/header",
                schemaPath: "#/properties/header/required",
                keyword: "required",
                params: {
                  missingProperty: "content"
                },
                message: "must have required property 'content'"
              };
              if (vErrors === null) {
                vErrors = [err1];
              } else {
                vErrors.push(err1);
              }
              errors2++;
            }
            for (const key1 in data1) {
              if (!(key1 === "content" || key1 === "alignment" || key1 === "wrapWord" || key1 === "truncate" || key1 === "paddingLeft" || key1 === "paddingRight")) {
                const err2 = {
                  instancePath: instancePath + "/header",
                  schemaPath: "#/properties/header/additionalProperties",
                  keyword: "additionalProperties",
                  params: {
                    additionalProperty: key1
                  },
                  message: "must NOT have additional properties"
                };
                if (vErrors === null) {
                  vErrors = [err2];
                } else {
                  vErrors.push(err2);
                }
                errors2++;
              }
            }
            if (data1.content !== void 0) {
              if (typeof data1.content !== "string") {
                const err3 = {
                  instancePath: instancePath + "/header/content",
                  schemaPath: "#/properties/header/properties/content/type",
                  keyword: "type",
                  params: {
                    type: "string"
                  },
                  message: "must be string"
                };
                if (vErrors === null) {
                  vErrors = [err3];
                } else {
                  vErrors.push(err3);
                }
                errors2++;
              }
            }
            if (data1.alignment !== void 0) {
              if (!validate68(data1.alignment, {
                instancePath: instancePath + "/header/alignment",
                parentData: data1,
                parentDataProperty: "alignment",
                rootData
              })) {
                vErrors = vErrors === null ? validate68.errors : vErrors.concat(validate68.errors);
                errors2 = vErrors.length;
              }
            }
            if (data1.wrapWord !== void 0) {
              if (typeof data1.wrapWord !== "boolean") {
                const err4 = {
                  instancePath: instancePath + "/header/wrapWord",
                  schemaPath: "#/properties/header/properties/wrapWord/type",
                  keyword: "type",
                  params: {
                    type: "boolean"
                  },
                  message: "must be boolean"
                };
                if (vErrors === null) {
                  vErrors = [err4];
                } else {
                  vErrors.push(err4);
                }
                errors2++;
              }
            }
            if (data1.truncate !== void 0) {
              let data5 = data1.truncate;
              if (!(typeof data5 == "number" && (!(data5 % 1) && !isNaN(data5)) && isFinite(data5))) {
                const err5 = {
                  instancePath: instancePath + "/header/truncate",
                  schemaPath: "#/properties/header/properties/truncate/type",
                  keyword: "type",
                  params: {
                    type: "integer"
                  },
                  message: "must be integer"
                };
                if (vErrors === null) {
                  vErrors = [err5];
                } else {
                  vErrors.push(err5);
                }
                errors2++;
              }
            }
            if (data1.paddingLeft !== void 0) {
              let data6 = data1.paddingLeft;
              if (!(typeof data6 == "number" && (!(data6 % 1) && !isNaN(data6)) && isFinite(data6))) {
                const err6 = {
                  instancePath: instancePath + "/header/paddingLeft",
                  schemaPath: "#/properties/header/properties/paddingLeft/type",
                  keyword: "type",
                  params: {
                    type: "integer"
                  },
                  message: "must be integer"
                };
                if (vErrors === null) {
                  vErrors = [err6];
                } else {
                  vErrors.push(err6);
                }
                errors2++;
              }
            }
            if (data1.paddingRight !== void 0) {
              let data7 = data1.paddingRight;
              if (!(typeof data7 == "number" && (!(data7 % 1) && !isNaN(data7)) && isFinite(data7))) {
                const err7 = {
                  instancePath: instancePath + "/header/paddingRight",
                  schemaPath: "#/properties/header/properties/paddingRight/type",
                  keyword: "type",
                  params: {
                    type: "integer"
                  },
                  message: "must be integer"
                };
                if (vErrors === null) {
                  vErrors = [err7];
                } else {
                  vErrors.push(err7);
                }
                errors2++;
              }
            }
          } else {
            const err8 = {
              instancePath: instancePath + "/header",
              schemaPath: "#/properties/header/type",
              keyword: "type",
              params: {
                type: "object"
              },
              message: "must be object"
            };
            if (vErrors === null) {
              vErrors = [err8];
            } else {
              vErrors.push(err8);
            }
            errors2++;
          }
        }
        if (data.columns !== void 0) {
          if (!validate70(data.columns, {
            instancePath: instancePath + "/columns",
            parentData: data,
            parentDataProperty: "columns",
            rootData
          })) {
            vErrors = vErrors === null ? validate70.errors : vErrors.concat(validate70.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.columnDefault !== void 0) {
          if (!validate79(data.columnDefault, {
            instancePath: instancePath + "/columnDefault",
            parentData: data,
            parentDataProperty: "columnDefault",
            rootData
          })) {
            vErrors = vErrors === null ? validate79.errors : vErrors.concat(validate79.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.drawVerticalLine !== void 0) {
          if (typeof data.drawVerticalLine != "function") {
            const err9 = {
              instancePath: instancePath + "/drawVerticalLine",
              schemaPath: "#/properties/drawVerticalLine/typeof",
              keyword: "typeof",
              params: {},
              message: 'must pass "typeof" keyword validation'
            };
            if (vErrors === null) {
              vErrors = [err9];
            } else {
              vErrors.push(err9);
            }
            errors2++;
          }
        }
        if (data.drawHorizontalLine !== void 0) {
          if (typeof data.drawHorizontalLine != "function") {
            const err10 = {
              instancePath: instancePath + "/drawHorizontalLine",
              schemaPath: "#/properties/drawHorizontalLine/typeof",
              keyword: "typeof",
              params: {},
              message: 'must pass "typeof" keyword validation'
            };
            if (vErrors === null) {
              vErrors = [err10];
            } else {
              vErrors.push(err10);
            }
            errors2++;
          }
        }
        if (data.singleLine !== void 0) {
          if (typeof data.singleLine != "boolean") {
            const err11 = {
              instancePath: instancePath + "/singleLine",
              schemaPath: "#/properties/singleLine/typeof",
              keyword: "typeof",
              params: {},
              message: 'must pass "typeof" keyword validation'
            };
            if (vErrors === null) {
              vErrors = [err11];
            } else {
              vErrors.push(err11);
            }
            errors2++;
          }
        }
        if (data.spanningCells !== void 0) {
          let data13 = data.spanningCells;
          if (Array.isArray(data13)) {
            const len0 = data13.length;
            for (let i0 = 0; i0 < len0; i0++) {
              let data14 = data13[i0];
              if (data14 && typeof data14 == "object" && !Array.isArray(data14)) {
                if (data14.row === void 0) {
                  const err12 = {
                    instancePath: instancePath + "/spanningCells/" + i0,
                    schemaPath: "#/properties/spanningCells/items/required",
                    keyword: "required",
                    params: {
                      missingProperty: "row"
                    },
                    message: "must have required property 'row'"
                  };
                  if (vErrors === null) {
                    vErrors = [err12];
                  } else {
                    vErrors.push(err12);
                  }
                  errors2++;
                }
                if (data14.col === void 0) {
                  const err13 = {
                    instancePath: instancePath + "/spanningCells/" + i0,
                    schemaPath: "#/properties/spanningCells/items/required",
                    keyword: "required",
                    params: {
                      missingProperty: "col"
                    },
                    message: "must have required property 'col'"
                  };
                  if (vErrors === null) {
                    vErrors = [err13];
                  } else {
                    vErrors.push(err13);
                  }
                  errors2++;
                }
                for (const key2 in data14) {
                  if (!func8.call(schema13.properties.spanningCells.items.properties, key2)) {
                    const err14 = {
                      instancePath: instancePath + "/spanningCells/" + i0,
                      schemaPath: "#/properties/spanningCells/items/additionalProperties",
                      keyword: "additionalProperties",
                      params: {
                        additionalProperty: key2
                      },
                      message: "must NOT have additional properties"
                    };
                    if (vErrors === null) {
                      vErrors = [err14];
                    } else {
                      vErrors.push(err14);
                    }
                    errors2++;
                  }
                }
                if (data14.col !== void 0) {
                  let data15 = data14.col;
                  if (!(typeof data15 == "number" && (!(data15 % 1) && !isNaN(data15)) && isFinite(data15))) {
                    const err15 = {
                      instancePath: instancePath + "/spanningCells/" + i0 + "/col",
                      schemaPath: "#/properties/spanningCells/items/properties/col/type",
                      keyword: "type",
                      params: {
                        type: "integer"
                      },
                      message: "must be integer"
                    };
                    if (vErrors === null) {
                      vErrors = [err15];
                    } else {
                      vErrors.push(err15);
                    }
                    errors2++;
                  }
                  if (typeof data15 == "number" && isFinite(data15)) {
                    if (data15 < 0 || isNaN(data15)) {
                      const err16 = {
                        instancePath: instancePath + "/spanningCells/" + i0 + "/col",
                        schemaPath: "#/properties/spanningCells/items/properties/col/minimum",
                        keyword: "minimum",
                        params: {
                          comparison: ">=",
                          limit: 0
                        },
                        message: "must be >= 0"
                      };
                      if (vErrors === null) {
                        vErrors = [err16];
                      } else {
                        vErrors.push(err16);
                      }
                      errors2++;
                    }
                  }
                }
                if (data14.row !== void 0) {
                  let data16 = data14.row;
                  if (!(typeof data16 == "number" && (!(data16 % 1) && !isNaN(data16)) && isFinite(data16))) {
                    const err17 = {
                      instancePath: instancePath + "/spanningCells/" + i0 + "/row",
                      schemaPath: "#/properties/spanningCells/items/properties/row/type",
                      keyword: "type",
                      params: {
                        type: "integer"
                      },
                      message: "must be integer"
                    };
                    if (vErrors === null) {
                      vErrors = [err17];
                    } else {
                      vErrors.push(err17);
                    }
                    errors2++;
                  }
                  if (typeof data16 == "number" && isFinite(data16)) {
                    if (data16 < 0 || isNaN(data16)) {
                      const err18 = {
                        instancePath: instancePath + "/spanningCells/" + i0 + "/row",
                        schemaPath: "#/properties/spanningCells/items/properties/row/minimum",
                        keyword: "minimum",
                        params: {
                          comparison: ">=",
                          limit: 0
                        },
                        message: "must be >= 0"
                      };
                      if (vErrors === null) {
                        vErrors = [err18];
                      } else {
                        vErrors.push(err18);
                      }
                      errors2++;
                    }
                  }
                }
                if (data14.colSpan !== void 0) {
                  let data17 = data14.colSpan;
                  if (!(typeof data17 == "number" && (!(data17 % 1) && !isNaN(data17)) && isFinite(data17))) {
                    const err19 = {
                      instancePath: instancePath + "/spanningCells/" + i0 + "/colSpan",
                      schemaPath: "#/properties/spanningCells/items/properties/colSpan/type",
                      keyword: "type",
                      params: {
                        type: "integer"
                      },
                      message: "must be integer"
                    };
                    if (vErrors === null) {
                      vErrors = [err19];
                    } else {
                      vErrors.push(err19);
                    }
                    errors2++;
                  }
                  if (typeof data17 == "number" && isFinite(data17)) {
                    if (data17 < 1 || isNaN(data17)) {
                      const err20 = {
                        instancePath: instancePath + "/spanningCells/" + i0 + "/colSpan",
                        schemaPath: "#/properties/spanningCells/items/properties/colSpan/minimum",
                        keyword: "minimum",
                        params: {
                          comparison: ">=",
                          limit: 1
                        },
                        message: "must be >= 1"
                      };
                      if (vErrors === null) {
                        vErrors = [err20];
                      } else {
                        vErrors.push(err20);
                      }
                      errors2++;
                    }
                  }
                }
                if (data14.rowSpan !== void 0) {
                  let data18 = data14.rowSpan;
                  if (!(typeof data18 == "number" && (!(data18 % 1) && !isNaN(data18)) && isFinite(data18))) {
                    const err21 = {
                      instancePath: instancePath + "/spanningCells/" + i0 + "/rowSpan",
                      schemaPath: "#/properties/spanningCells/items/properties/rowSpan/type",
                      keyword: "type",
                      params: {
                        type: "integer"
                      },
                      message: "must be integer"
                    };
                    if (vErrors === null) {
                      vErrors = [err21];
                    } else {
                      vErrors.push(err21);
                    }
                    errors2++;
                  }
                  if (typeof data18 == "number" && isFinite(data18)) {
                    if (data18 < 1 || isNaN(data18)) {
                      const err22 = {
                        instancePath: instancePath + "/spanningCells/" + i0 + "/rowSpan",
                        schemaPath: "#/properties/spanningCells/items/properties/rowSpan/minimum",
                        keyword: "minimum",
                        params: {
                          comparison: ">=",
                          limit: 1
                        },
                        message: "must be >= 1"
                      };
                      if (vErrors === null) {
                        vErrors = [err22];
                      } else {
                        vErrors.push(err22);
                      }
                      errors2++;
                    }
                  }
                }
                if (data14.alignment !== void 0) {
                  if (!validate68(data14.alignment, {
                    instancePath: instancePath + "/spanningCells/" + i0 + "/alignment",
                    parentData: data14,
                    parentDataProperty: "alignment",
                    rootData
                  })) {
                    vErrors = vErrors === null ? validate68.errors : vErrors.concat(validate68.errors);
                    errors2 = vErrors.length;
                  }
                }
                if (data14.verticalAlignment !== void 0) {
                  if (!validate84(data14.verticalAlignment, {
                    instancePath: instancePath + "/spanningCells/" + i0 + "/verticalAlignment",
                    parentData: data14,
                    parentDataProperty: "verticalAlignment",
                    rootData
                  })) {
                    vErrors = vErrors === null ? validate84.errors : vErrors.concat(validate84.errors);
                    errors2 = vErrors.length;
                  }
                }
                if (data14.wrapWord !== void 0) {
                  if (typeof data14.wrapWord !== "boolean") {
                    const err23 = {
                      instancePath: instancePath + "/spanningCells/" + i0 + "/wrapWord",
                      schemaPath: "#/properties/spanningCells/items/properties/wrapWord/type",
                      keyword: "type",
                      params: {
                        type: "boolean"
                      },
                      message: "must be boolean"
                    };
                    if (vErrors === null) {
                      vErrors = [err23];
                    } else {
                      vErrors.push(err23);
                    }
                    errors2++;
                  }
                }
                if (data14.truncate !== void 0) {
                  let data22 = data14.truncate;
                  if (!(typeof data22 == "number" && (!(data22 % 1) && !isNaN(data22)) && isFinite(data22))) {
                    const err24 = {
                      instancePath: instancePath + "/spanningCells/" + i0 + "/truncate",
                      schemaPath: "#/properties/spanningCells/items/properties/truncate/type",
                      keyword: "type",
                      params: {
                        type: "integer"
                      },
                      message: "must be integer"
                    };
                    if (vErrors === null) {
                      vErrors = [err24];
                    } else {
                      vErrors.push(err24);
                    }
                    errors2++;
                  }
                }
                if (data14.paddingLeft !== void 0) {
                  let data23 = data14.paddingLeft;
                  if (!(typeof data23 == "number" && (!(data23 % 1) && !isNaN(data23)) && isFinite(data23))) {
                    const err25 = {
                      instancePath: instancePath + "/spanningCells/" + i0 + "/paddingLeft",
                      schemaPath: "#/properties/spanningCells/items/properties/paddingLeft/type",
                      keyword: "type",
                      params: {
                        type: "integer"
                      },
                      message: "must be integer"
                    };
                    if (vErrors === null) {
                      vErrors = [err25];
                    } else {
                      vErrors.push(err25);
                    }
                    errors2++;
                  }
                }
                if (data14.paddingRight !== void 0) {
                  let data24 = data14.paddingRight;
                  if (!(typeof data24 == "number" && (!(data24 % 1) && !isNaN(data24)) && isFinite(data24))) {
                    const err26 = {
                      instancePath: instancePath + "/spanningCells/" + i0 + "/paddingRight",
                      schemaPath: "#/properties/spanningCells/items/properties/paddingRight/type",
                      keyword: "type",
                      params: {
                        type: "integer"
                      },
                      message: "must be integer"
                    };
                    if (vErrors === null) {
                      vErrors = [err26];
                    } else {
                      vErrors.push(err26);
                    }
                    errors2++;
                  }
                }
              } else {
                const err27 = {
                  instancePath: instancePath + "/spanningCells/" + i0,
                  schemaPath: "#/properties/spanningCells/items/type",
                  keyword: "type",
                  params: {
                    type: "object"
                  },
                  message: "must be object"
                };
                if (vErrors === null) {
                  vErrors = [err27];
                } else {
                  vErrors.push(err27);
                }
                errors2++;
              }
            }
          } else {
            const err28 = {
              instancePath: instancePath + "/spanningCells",
              schemaPath: "#/properties/spanningCells/type",
              keyword: "type",
              params: {
                type: "array"
              },
              message: "must be array"
            };
            if (vErrors === null) {
              vErrors = [err28];
            } else {
              vErrors.push(err28);
            }
            errors2++;
          }
        }
      } else {
        const err29 = {
          instancePath,
          schemaPath: "#/type",
          keyword: "type",
          params: {
            type: "object"
          },
          message: "must be object"
        };
        if (vErrors === null) {
          vErrors = [err29];
        } else {
          vErrors.push(err29);
        }
        errors2++;
      }
      validate43.errors = vErrors;
      return errors2 === 0;
    }
    exports2["streamConfig.json"] = validate86;
    function validate87(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) {
      let vErrors = null;
      let errors2 = 0;
      if (data && typeof data == "object" && !Array.isArray(data)) {
        for (const key0 in data) {
          if (!func8.call(schema15.properties, key0)) {
            const err0 = {
              instancePath,
              schemaPath: "#/additionalProperties",
              keyword: "additionalProperties",
              params: {
                additionalProperty: key0
              },
              message: "must NOT have additional properties"
            };
            if (vErrors === null) {
              vErrors = [err0];
            } else {
              vErrors.push(err0);
            }
            errors2++;
          }
        }
        if (data.topBody !== void 0) {
          if (!validate46(data.topBody, {
            instancePath: instancePath + "/topBody",
            parentData: data,
            parentDataProperty: "topBody",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.topJoin !== void 0) {
          if (!validate46(data.topJoin, {
            instancePath: instancePath + "/topJoin",
            parentData: data,
            parentDataProperty: "topJoin",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.topLeft !== void 0) {
          if (!validate46(data.topLeft, {
            instancePath: instancePath + "/topLeft",
            parentData: data,
            parentDataProperty: "topLeft",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.topRight !== void 0) {
          if (!validate46(data.topRight, {
            instancePath: instancePath + "/topRight",
            parentData: data,
            parentDataProperty: "topRight",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.bottomBody !== void 0) {
          if (!validate46(data.bottomBody, {
            instancePath: instancePath + "/bottomBody",
            parentData: data,
            parentDataProperty: "bottomBody",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.bottomJoin !== void 0) {
          if (!validate46(data.bottomJoin, {
            instancePath: instancePath + "/bottomJoin",
            parentData: data,
            parentDataProperty: "bottomJoin",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.bottomLeft !== void 0) {
          if (!validate46(data.bottomLeft, {
            instancePath: instancePath + "/bottomLeft",
            parentData: data,
            parentDataProperty: "bottomLeft",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.bottomRight !== void 0) {
          if (!validate46(data.bottomRight, {
            instancePath: instancePath + "/bottomRight",
            parentData: data,
            parentDataProperty: "bottomRight",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.bodyLeft !== void 0) {
          if (!validate46(data.bodyLeft, {
            instancePath: instancePath + "/bodyLeft",
            parentData: data,
            parentDataProperty: "bodyLeft",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.bodyRight !== void 0) {
          if (!validate46(data.bodyRight, {
            instancePath: instancePath + "/bodyRight",
            parentData: data,
            parentDataProperty: "bodyRight",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.bodyJoin !== void 0) {
          if (!validate46(data.bodyJoin, {
            instancePath: instancePath + "/bodyJoin",
            parentData: data,
            parentDataProperty: "bodyJoin",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.headerJoin !== void 0) {
          if (!validate46(data.headerJoin, {
            instancePath: instancePath + "/headerJoin",
            parentData: data,
            parentDataProperty: "headerJoin",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.joinBody !== void 0) {
          if (!validate46(data.joinBody, {
            instancePath: instancePath + "/joinBody",
            parentData: data,
            parentDataProperty: "joinBody",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.joinLeft !== void 0) {
          if (!validate46(data.joinLeft, {
            instancePath: instancePath + "/joinLeft",
            parentData: data,
            parentDataProperty: "joinLeft",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.joinRight !== void 0) {
          if (!validate46(data.joinRight, {
            instancePath: instancePath + "/joinRight",
            parentData: data,
            parentDataProperty: "joinRight",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.joinJoin !== void 0) {
          if (!validate46(data.joinJoin, {
            instancePath: instancePath + "/joinJoin",
            parentData: data,
            parentDataProperty: "joinJoin",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.joinMiddleUp !== void 0) {
          if (!validate46(data.joinMiddleUp, {
            instancePath: instancePath + "/joinMiddleUp",
            parentData: data,
            parentDataProperty: "joinMiddleUp",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.joinMiddleDown !== void 0) {
          if (!validate46(data.joinMiddleDown, {
            instancePath: instancePath + "/joinMiddleDown",
            parentData: data,
            parentDataProperty: "joinMiddleDown",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.joinMiddleLeft !== void 0) {
          if (!validate46(data.joinMiddleLeft, {
            instancePath: instancePath + "/joinMiddleLeft",
            parentData: data,
            parentDataProperty: "joinMiddleLeft",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.joinMiddleRight !== void 0) {
          if (!validate46(data.joinMiddleRight, {
            instancePath: instancePath + "/joinMiddleRight",
            parentData: data,
            parentDataProperty: "joinMiddleRight",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
      } else {
        const err1 = {
          instancePath,
          schemaPath: "#/type",
          keyword: "type",
          params: {
            type: "object"
          },
          message: "must be object"
        };
        if (vErrors === null) {
          vErrors = [err1];
        } else {
          vErrors.push(err1);
        }
        errors2++;
      }
      validate87.errors = vErrors;
      return errors2 === 0;
    }
    function validate109(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) {
      let vErrors = null;
      let errors2 = 0;
      const _errs0 = errors2;
      let valid0 = false;
      let passing0 = null;
      const _errs1 = errors2;
      if (data && typeof data == "object" && !Array.isArray(data)) {
        for (const key0 in data) {
          if (!pattern0.test(key0)) {
            const err0 = {
              instancePath,
              schemaPath: "#/oneOf/0/additionalProperties",
              keyword: "additionalProperties",
              params: {
                additionalProperty: key0
              },
              message: "must NOT have additional properties"
            };
            if (vErrors === null) {
              vErrors = [err0];
            } else {
              vErrors.push(err0);
            }
            errors2++;
          }
        }
        for (const key1 in data) {
          if (pattern0.test(key1)) {
            if (!validate71(data[key1], {
              instancePath: instancePath + "/" + key1.replace(/~/g, "~0").replace(/\//g, "~1"),
              parentData: data,
              parentDataProperty: key1,
              rootData
            })) {
              vErrors = vErrors === null ? validate71.errors : vErrors.concat(validate71.errors);
              errors2 = vErrors.length;
            }
          }
        }
      } else {
        const err1 = {
          instancePath,
          schemaPath: "#/oneOf/0/type",
          keyword: "type",
          params: {
            type: "object"
          },
          message: "must be object"
        };
        if (vErrors === null) {
          vErrors = [err1];
        } else {
          vErrors.push(err1);
        }
        errors2++;
      }
      var _valid0 = _errs1 === errors2;
      if (_valid0) {
        valid0 = true;
        passing0 = 0;
      }
      const _errs5 = errors2;
      if (Array.isArray(data)) {
        const len0 = data.length;
        for (let i0 = 0; i0 < len0; i0++) {
          if (!validate71(data[i0], {
            instancePath: instancePath + "/" + i0,
            parentData: data,
            parentDataProperty: i0,
            rootData
          })) {
            vErrors = vErrors === null ? validate71.errors : vErrors.concat(validate71.errors);
            errors2 = vErrors.length;
          }
        }
      } else {
        const err2 = {
          instancePath,
          schemaPath: "#/oneOf/1/type",
          keyword: "type",
          params: {
            type: "array"
          },
          message: "must be array"
        };
        if (vErrors === null) {
          vErrors = [err2];
        } else {
          vErrors.push(err2);
        }
        errors2++;
      }
      var _valid0 = _errs5 === errors2;
      if (_valid0 && valid0) {
        valid0 = false;
        passing0 = [passing0, 1];
      } else {
        if (_valid0) {
          valid0 = true;
          passing0 = 1;
        }
      }
      if (!valid0) {
        const err3 = {
          instancePath,
          schemaPath: "#/oneOf",
          keyword: "oneOf",
          params: {
            passingSchemas: passing0
          },
          message: "must match exactly one schema in oneOf"
        };
        if (vErrors === null) {
          vErrors = [err3];
        } else {
          vErrors.push(err3);
        }
        errors2++;
      } else {
        errors2 = _errs0;
        if (vErrors !== null) {
          if (_errs0) {
            vErrors.length = _errs0;
          } else {
            vErrors = null;
          }
        }
      }
      validate109.errors = vErrors;
      return errors2 === 0;
    }
    function validate113(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) {
      let vErrors = null;
      let errors2 = 0;
      if (data && typeof data == "object" && !Array.isArray(data)) {
        for (const key0 in data) {
          if (!(key0 === "alignment" || key0 === "verticalAlignment" || key0 === "width" || key0 === "wrapWord" || key0 === "truncate" || key0 === "paddingLeft" || key0 === "paddingRight")) {
            const err0 = {
              instancePath,
              schemaPath: "#/additionalProperties",
              keyword: "additionalProperties",
              params: {
                additionalProperty: key0
              },
              message: "must NOT have additional properties"
            };
            if (vErrors === null) {
              vErrors = [err0];
            } else {
              vErrors.push(err0);
            }
            errors2++;
          }
        }
        if (data.alignment !== void 0) {
          if (!validate72(data.alignment, {
            instancePath: instancePath + "/alignment",
            parentData: data,
            parentDataProperty: "alignment",
            rootData
          })) {
            vErrors = vErrors === null ? validate72.errors : vErrors.concat(validate72.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.verticalAlignment !== void 0) {
          if (!validate74(data.verticalAlignment, {
            instancePath: instancePath + "/verticalAlignment",
            parentData: data,
            parentDataProperty: "verticalAlignment",
            rootData
          })) {
            vErrors = vErrors === null ? validate74.errors : vErrors.concat(validate74.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.width !== void 0) {
          let data2 = data.width;
          if (!(typeof data2 == "number" && (!(data2 % 1) && !isNaN(data2)) && isFinite(data2))) {
            const err1 = {
              instancePath: instancePath + "/width",
              schemaPath: "#/properties/width/type",
              keyword: "type",
              params: {
                type: "integer"
              },
              message: "must be integer"
            };
            if (vErrors === null) {
              vErrors = [err1];
            } else {
              vErrors.push(err1);
            }
            errors2++;
          }
          if (typeof data2 == "number" && isFinite(data2)) {
            if (data2 < 1 || isNaN(data2)) {
              const err2 = {
                instancePath: instancePath + "/width",
                schemaPath: "#/properties/width/minimum",
                keyword: "minimum",
                params: {
                  comparison: ">=",
                  limit: 1
                },
                message: "must be >= 1"
              };
              if (vErrors === null) {
                vErrors = [err2];
              } else {
                vErrors.push(err2);
              }
              errors2++;
            }
          }
        }
        if (data.wrapWord !== void 0) {
          if (typeof data.wrapWord !== "boolean") {
            const err3 = {
              instancePath: instancePath + "/wrapWord",
              schemaPath: "#/properties/wrapWord/type",
              keyword: "type",
              params: {
                type: "boolean"
              },
              message: "must be boolean"
            };
            if (vErrors === null) {
              vErrors = [err3];
            } else {
              vErrors.push(err3);
            }
            errors2++;
          }
        }
        if (data.truncate !== void 0) {
          let data4 = data.truncate;
          if (!(typeof data4 == "number" && (!(data4 % 1) && !isNaN(data4)) && isFinite(data4))) {
            const err4 = {
              instancePath: instancePath + "/truncate",
              schemaPath: "#/properties/truncate/type",
              keyword: "type",
              params: {
                type: "integer"
              },
              message: "must be integer"
            };
            if (vErrors === null) {
              vErrors = [err4];
            } else {
              vErrors.push(err4);
            }
            errors2++;
          }
        }
        if (data.paddingLeft !== void 0) {
          let data5 = data.paddingLeft;
          if (!(typeof data5 == "number" && (!(data5 % 1) && !isNaN(data5)) && isFinite(data5))) {
            const err5 = {
              instancePath: instancePath + "/paddingLeft",
              schemaPath: "#/properties/paddingLeft/type",
              keyword: "type",
              params: {
                type: "integer"
              },
              message: "must be integer"
            };
            if (vErrors === null) {
              vErrors = [err5];
            } else {
              vErrors.push(err5);
            }
            errors2++;
          }
        }
        if (data.paddingRight !== void 0) {
          let data6 = data.paddingRight;
          if (!(typeof data6 == "number" && (!(data6 % 1) && !isNaN(data6)) && isFinite(data6))) {
            const err6 = {
              instancePath: instancePath + "/paddingRight",
              schemaPath: "#/properties/paddingRight/type",
              keyword: "type",
              params: {
                type: "integer"
              },
              message: "must be integer"
            };
            if (vErrors === null) {
              vErrors = [err6];
            } else {
              vErrors.push(err6);
            }
            errors2++;
          }
        }
      } else {
        const err7 = {
          instancePath,
          schemaPath: "#/type",
          keyword: "type",
          params: {
            type: "object"
          },
          message: "must be object"
        };
        if (vErrors === null) {
          vErrors = [err7];
        } else {
          vErrors.push(err7);
        }
        errors2++;
      }
      validate113.errors = vErrors;
      return errors2 === 0;
    }
    function validate86(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) {
      ;
      let vErrors = null;
      let errors2 = 0;
      if (data && typeof data == "object" && !Array.isArray(data)) {
        if (data.columnDefault === void 0) {
          const err0 = {
            instancePath,
            schemaPath: "#/required",
            keyword: "required",
            params: {
              missingProperty: "columnDefault"
            },
            message: "must have required property 'columnDefault'"
          };
          if (vErrors === null) {
            vErrors = [err0];
          } else {
            vErrors.push(err0);
          }
          errors2++;
        }
        if (data.columnCount === void 0) {
          const err1 = {
            instancePath,
            schemaPath: "#/required",
            keyword: "required",
            params: {
              missingProperty: "columnCount"
            },
            message: "must have required property 'columnCount'"
          };
          if (vErrors === null) {
            vErrors = [err1];
          } else {
            vErrors.push(err1);
          }
          errors2++;
        }
        for (const key0 in data) {
          if (!(key0 === "border" || key0 === "columns" || key0 === "columnDefault" || key0 === "columnCount" || key0 === "drawVerticalLine")) {
            const err2 = {
              instancePath,
              schemaPath: "#/additionalProperties",
              keyword: "additionalProperties",
              params: {
                additionalProperty: key0
              },
              message: "must NOT have additional properties"
            };
            if (vErrors === null) {
              vErrors = [err2];
            } else {
              vErrors.push(err2);
            }
            errors2++;
          }
        }
        if (data.border !== void 0) {
          if (!validate87(data.border, {
            instancePath: instancePath + "/border",
            parentData: data,
            parentDataProperty: "border",
            rootData
          })) {
            vErrors = vErrors === null ? validate87.errors : vErrors.concat(validate87.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.columns !== void 0) {
          if (!validate109(data.columns, {
            instancePath: instancePath + "/columns",
            parentData: data,
            parentDataProperty: "columns",
            rootData
          })) {
            vErrors = vErrors === null ? validate109.errors : vErrors.concat(validate109.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.columnDefault !== void 0) {
          if (!validate113(data.columnDefault, {
            instancePath: instancePath + "/columnDefault",
            parentData: data,
            parentDataProperty: "columnDefault",
            rootData
          })) {
            vErrors = vErrors === null ? validate113.errors : vErrors.concat(validate113.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.columnCount !== void 0) {
          let data3 = data.columnCount;
          if (!(typeof data3 == "number" && (!(data3 % 1) && !isNaN(data3)) && isFinite(data3))) {
            const err3 = {
              instancePath: instancePath + "/columnCount",
              schemaPath: "#/properties/columnCount/type",
              keyword: "type",
              params: {
                type: "integer"
              },
              message: "must be integer"
            };
            if (vErrors === null) {
              vErrors = [err3];
            } else {
              vErrors.push(err3);
            }
            errors2++;
          }
          if (typeof data3 == "number" && isFinite(data3)) {
            if (data3 < 1 || isNaN(data3)) {
              const err4 = {
                instancePath: instancePath + "/columnCount",
                schemaPath: "#/properties/columnCount/minimum",
                keyword: "minimum",
                params: {
                  comparison: ">=",
                  limit: 1
                },
                message: "must be >= 1"
              };
              if (vErrors === null) {
                vErrors = [err4];
              } else {
                vErrors.push(err4);
              }
              errors2++;
            }
          }
        }
        if (data.drawVerticalLine !== void 0) {
          if (typeof data.drawVerticalLine != "function") {
            const err5 = {
              instancePath: instancePath + "/drawVerticalLine",
              schemaPath: "#/properties/drawVerticalLine/typeof",
              keyword: "typeof",
              params: {},
              message: 'must pass "typeof" keyword validation'
            };
            if (vErrors === null) {
              vErrors = [err5];
            } else {
              vErrors.push(err5);
            }
            errors2++;
          }
        }
      } else {
        const err6 = {
          instancePath,
          schemaPath: "#/type",
          keyword: "type",
          params: {
            type: "object"
          },
          message: "must be object"
        };
        if (vErrors === null) {
          vErrors = [err6];
        } else {
          vErrors.push(err6);
        }
        errors2++;
      }
      validate86.errors = vErrors;
      return errors2 === 0;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/validateConfig.js
var require_validateConfig = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/validateConfig.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.validateConfig = void 0;
    var validators_1 = __importDefault2(require_validators());
    var validateConfig = (schemaId, config) => {
      const validate2 = validators_1.default[schemaId];
      if (!validate2(config) && validate2.errors) {
        const errors2 = validate2.errors.map((error) => {
          return {
            message: error.message,
            params: error.params,
            schemaPath: error.schemaPath
          };
        });
        console.log("config", config);
        console.log("errors", errors2);
        throw new Error("Invalid config.");
      }
    };
    exports2.validateConfig = validateConfig;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/makeStreamConfig.js
var require_makeStreamConfig = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/makeStreamConfig.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.makeStreamConfig = void 0;
    var utils_1 = require_utils13();
    var validateConfig_1 = require_validateConfig();
    var makeColumnsConfig = (columnCount, columns = {}, columnDefault) => {
      return Array.from({ length: columnCount }).map((_, index) => {
        return {
          alignment: "left",
          paddingLeft: 1,
          paddingRight: 1,
          truncate: Number.POSITIVE_INFINITY,
          verticalAlignment: "top",
          wrapWord: false,
          ...columnDefault,
          ...columns[index]
        };
      });
    };
    var makeStreamConfig = (config) => {
      (0, validateConfig_1.validateConfig)("streamConfig.json", config);
      if (config.columnDefault.width === void 0) {
        throw new Error("Must provide config.columnDefault.width when creating a stream.");
      }
      return {
        drawVerticalLine: () => {
          return true;
        },
        ...config,
        border: (0, utils_1.makeBorderConfig)(config.border),
        columns: makeColumnsConfig(config.columnCount, config.columns, config.columnDefault)
      };
    };
    exports2.makeStreamConfig = makeStreamConfig;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/mapDataUsingRowHeights.js
var require_mapDataUsingRowHeights = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/mapDataUsingRowHeights.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.mapDataUsingRowHeights = exports2.padCellVertically = void 0;
    var utils_1 = require_utils13();
    var wrapCell_1 = require_wrapCell();
    var createEmptyStrings = (length) => {
      return new Array(length).fill("");
    };
    var padCellVertically = (lines, rowHeight, verticalAlignment) => {
      const availableLines = rowHeight - lines.length;
      if (verticalAlignment === "top") {
        return [...lines, ...createEmptyStrings(availableLines)];
      }
      if (verticalAlignment === "bottom") {
        return [...createEmptyStrings(availableLines), ...lines];
      }
      return [
        ...createEmptyStrings(Math.floor(availableLines / 2)),
        ...lines,
        ...createEmptyStrings(Math.ceil(availableLines / 2))
      ];
    };
    exports2.padCellVertically = padCellVertically;
    var mapDataUsingRowHeights = (unmappedRows, rowHeights, config) => {
      const nColumns = unmappedRows[0].length;
      const mappedRows = unmappedRows.map((unmappedRow, unmappedRowIndex) => {
        const outputRowHeight = rowHeights[unmappedRowIndex];
        const outputRow = Array.from({ length: outputRowHeight }, () => {
          return new Array(nColumns).fill("");
        });
        unmappedRow.forEach((cell, cellIndex) => {
          var _a;
          const containingRange = (_a = config.spanningCellManager) === null || _a === void 0 ? void 0 : _a.getContainingRange({
            col: cellIndex,
            row: unmappedRowIndex
          });
          if (containingRange) {
            containingRange.extractCellContent(unmappedRowIndex).forEach((cellLine, cellLineIndex) => {
              outputRow[cellLineIndex][cellIndex] = cellLine;
            });
            return;
          }
          const cellLines = (0, wrapCell_1.wrapCell)(cell, config.columns[cellIndex].width, config.columns[cellIndex].wrapWord);
          const paddedCellLines = (0, exports2.padCellVertically)(cellLines, outputRowHeight, config.columns[cellIndex].verticalAlignment);
          paddedCellLines.forEach((cellLine, cellLineIndex) => {
            outputRow[cellLineIndex][cellIndex] = cellLine;
          });
        });
        return outputRow;
      });
      return (0, utils_1.flatten)(mappedRows);
    };
    exports2.mapDataUsingRowHeights = mapDataUsingRowHeights;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/padTableData.js
var require_padTableData = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/padTableData.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.padTableData = exports2.padString = void 0;
    var padString = (input, paddingLeft, paddingRight) => {
      return " ".repeat(paddingLeft) + input + " ".repeat(paddingRight);
    };
    exports2.padString = padString;
    var padTableData = (rows, config) => {
      return rows.map((cells, rowIndex) => {
        return cells.map((cell, cellIndex) => {
          var _a;
          const containingRange = (_a = config.spanningCellManager) === null || _a === void 0 ? void 0 : _a.getContainingRange({
            col: cellIndex,
            row: rowIndex
          }, { mapped: true });
          if (containingRange) {
            return cell;
          }
          const { paddingLeft, paddingRight } = config.columns[cellIndex];
          return (0, exports2.padString)(cell, paddingLeft, paddingRight);
        });
      });
    };
    exports2.padTableData = padTableData;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/stringifyTableData.js
var require_stringifyTableData = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/stringifyTableData.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.stringifyTableData = void 0;
    var utils_1 = require_utils13();
    var stringifyTableData = (rows) => {
      return rows.map((cells) => {
        return cells.map((cell) => {
          return (0, utils_1.normalizeString)(String(cell));
        });
      });
    };
    exports2.stringifyTableData = stringifyTableData;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/lodash.truncate/4.4.2/5be401af008ba6ee54f536d112893474ce418e03c4ac7aa27684595e7649a180/node_modules/lodash.truncate/index.js
var require_lodash3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/lodash.truncate/4.4.2/5be401af008ba6ee54f536d112893474ce418e03c4ac7aa27684595e7649a180/node_modules/lodash.truncate/index.js"(exports2, module2) {
    var DEFAULT_TRUNC_LENGTH = 30;
    var DEFAULT_TRUNC_OMISSION = "...";
    var INFINITY = 1 / 0;
    var MAX_INTEGER = 17976931348623157e292;
    var NAN = 0 / 0;
    var regexpTag = "[object RegExp]";
    var symbolTag = "[object Symbol]";
    var reTrim = /^\s+|\s+$/g;
    var reFlags = /\w*$/;
    var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;
    var reIsBinary = /^0b[01]+$/i;
    var reIsOctal = /^0o[0-7]+$/i;
    var rsAstralRange = "\\ud800-\\udfff";
    var rsComboMarksRange = "\\u0300-\\u036f\\ufe20-\\ufe23";
    var rsComboSymbolsRange = "\\u20d0-\\u20f0";
    var rsVarRange = "\\ufe0e\\ufe0f";
    var rsAstral = "[" + rsAstralRange + "]";
    var rsCombo = "[" + rsComboMarksRange + rsComboSymbolsRange + "]";
    var rsFitz = "\\ud83c[\\udffb-\\udfff]";
    var rsModifier = "(?:" + rsCombo + "|" + rsFitz + ")";
    var rsNonAstral = "[^" + rsAstralRange + "]";
    var rsRegional = "(?:\\ud83c[\\udde6-\\uddff]){2}";
    var rsSurrPair = "[\\ud800-\\udbff][\\udc00-\\udfff]";
    var rsZWJ = "\\u200d";
    var reOptMod = rsModifier + "?";
    var rsOptVar = "[" + rsVarRange + "]?";
    var rsOptJoin = "(?:" + rsZWJ + "(?:" + [rsNonAstral, rsRegional, rsSurrPair].join("|") + ")" + rsOptVar + reOptMod + ")*";
    var rsSeq = rsOptVar + reOptMod + rsOptJoin;
    var rsSymbol = "(?:" + [rsNonAstral + rsCombo + "?", rsCombo, rsRegional, rsSurrPair, rsAstral].join("|") + ")";
    var reUnicode = RegExp(rsFitz + "(?=" + rsFitz + ")|" + rsSymbol + rsSeq, "g");
    var reHasUnicode = RegExp("[" + rsZWJ + rsAstralRange + rsComboMarksRange + rsComboSymbolsRange + rsVarRange + "]");
    var freeParseInt = parseInt;
    var freeGlobal = typeof global == "object" && global && global.Object === Object && global;
    var freeSelf = typeof self == "object" && self && self.Object === Object && self;
    var root = freeGlobal || freeSelf || Function("return this")();
    var freeExports = typeof exports2 == "object" && exports2 && !exports2.nodeType && exports2;
    var freeModule = freeExports && typeof module2 == "object" && module2 && !module2.nodeType && module2;
    var moduleExports = freeModule && freeModule.exports === freeExports;
    var freeProcess = moduleExports && freeGlobal.process;
    var nodeUtil = (function() {
      try {
        return freeProcess && freeProcess.binding("util");
      } catch (e) {
      }
    })();
    var nodeIsRegExp = nodeUtil && nodeUtil.isRegExp;
    var asciiSize = baseProperty("length");
    function asciiToArray(string) {
      return string.split("");
    }
    function baseProperty(key) {
      return function(object) {
        return object == null ? void 0 : object[key];
      };
    }
    function baseUnary(func) {
      return function(value) {
        return func(value);
      };
    }
    function hasUnicode(string) {
      return reHasUnicode.test(string);
    }
    function stringSize(string) {
      return hasUnicode(string) ? unicodeSize(string) : asciiSize(string);
    }
    function stringToArray(string) {
      return hasUnicode(string) ? unicodeToArray(string) : asciiToArray(string);
    }
    function unicodeSize(string) {
      var result2 = reUnicode.lastIndex = 0;
      while (reUnicode.test(string)) {
        result2++;
      }
      return result2;
    }
    function unicodeToArray(string) {
      return string.match(reUnicode) || [];
    }
    var objectProto = Object.prototype;
    var objectToString3 = objectProto.toString;
    var Symbol2 = root.Symbol;
    var symbolProto = Symbol2 ? Symbol2.prototype : void 0;
    var symbolToString = symbolProto ? symbolProto.toString : void 0;
    function baseIsRegExp(value) {
      return isObject4(value) && objectToString3.call(value) == regexpTag;
    }
    function baseSlice(array, start, end) {
      var index = -1, length = array.length;
      if (start < 0) {
        start = -start > length ? 0 : length + start;
      }
      end = end > length ? length : end;
      if (end < 0) {
        end += length;
      }
      length = start > end ? 0 : end - start >>> 0;
      start >>>= 0;
      var result2 = Array(length);
      while (++index < length) {
        result2[index] = array[index + start];
      }
      return result2;
    }
    function baseToString(value) {
      if (typeof value == "string") {
        return value;
      }
      if (isSymbol(value)) {
        return symbolToString ? symbolToString.call(value) : "";
      }
      var result2 = value + "";
      return result2 == "0" && 1 / value == -INFINITY ? "-0" : result2;
    }
    function castSlice(array, start, end) {
      var length = array.length;
      end = end === void 0 ? length : end;
      return !start && end >= length ? array : baseSlice(array, start, end);
    }
    function isObject4(value) {
      var type4 = typeof value;
      return !!value && (type4 == "object" || type4 == "function");
    }
    function isObjectLike(value) {
      return !!value && typeof value == "object";
    }
    var isRegExp = nodeIsRegExp ? baseUnary(nodeIsRegExp) : baseIsRegExp;
    function isSymbol(value) {
      return typeof value == "symbol" || isObjectLike(value) && objectToString3.call(value) == symbolTag;
    }
    function toFinite(value) {
      if (!value) {
        return value === 0 ? value : 0;
      }
      value = toNumber(value);
      if (value === INFINITY || value === -INFINITY) {
        var sign = value < 0 ? -1 : 1;
        return sign * MAX_INTEGER;
      }
      return value === value ? value : 0;
    }
    function toInteger(value) {
      var result2 = toFinite(value), remainder = result2 % 1;
      return result2 === result2 ? remainder ? result2 - remainder : result2 : 0;
    }
    function toNumber(value) {
      if (typeof value == "number") {
        return value;
      }
      if (isSymbol(value)) {
        return NAN;
      }
      if (isObject4(value)) {
        var other = typeof value.valueOf == "function" ? value.valueOf() : value;
        value = isObject4(other) ? other + "" : other;
      }
      if (typeof value != "string") {
        return value === 0 ? value : +value;
      }
      value = value.replace(reTrim, "");
      var isBinary2 = reIsBinary.test(value);
      return isBinary2 || reIsOctal.test(value) ? freeParseInt(value.slice(2), isBinary2 ? 2 : 8) : reIsBadHex.test(value) ? NAN : +value;
    }
    function toString4(value) {
      return value == null ? "" : baseToString(value);
    }
    function truncate(string, options) {
      var length = DEFAULT_TRUNC_LENGTH, omission = DEFAULT_TRUNC_OMISSION;
      if (isObject4(options)) {
        var separator = "separator" in options ? options.separator : separator;
        length = "length" in options ? toInteger(options.length) : length;
        omission = "omission" in options ? baseToString(options.omission) : omission;
      }
      string = toString4(string);
      var strLength = string.length;
      if (hasUnicode(string)) {
        var strSymbols = stringToArray(string);
        strLength = strSymbols.length;
      }
      if (length >= strLength) {
        return string;
      }
      var end = length - stringSize(omission);
      if (end < 1) {
        return omission;
      }
      var result2 = strSymbols ? castSlice(strSymbols, 0, end).join("") : string.slice(0, end);
      if (separator === void 0) {
        return result2 + omission;
      }
      if (strSymbols) {
        end += result2.length - end;
      }
      if (isRegExp(separator)) {
        if (string.slice(end).search(separator)) {
          var match, substring = result2;
          if (!separator.global) {
            separator = RegExp(separator.source, toString4(reFlags.exec(separator)) + "g");
          }
          separator.lastIndex = 0;
          while (match = separator.exec(substring)) {
            var newEnd = match.index;
          }
          result2 = result2.slice(0, newEnd === void 0 ? end : newEnd);
        }
      } else if (string.indexOf(baseToString(separator), end) != end) {
        var index = result2.lastIndexOf(separator);
        if (index > -1) {
          result2 = result2.slice(0, index);
        }
      }
      return result2 + omission;
    }
    module2.exports = truncate;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/truncateTableData.js
var require_truncateTableData = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/truncateTableData.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.truncateTableData = exports2.truncateString = void 0;
    var lodash_truncate_1 = __importDefault2(require_lodash3());
    var truncateString = (input, length) => {
      return (0, lodash_truncate_1.default)(input, {
        length,
        omission: "\u2026"
      });
    };
    exports2.truncateString = truncateString;
    var truncateTableData = (rows, truncates) => {
      return rows.map((cells) => {
        return cells.map((cell, cellIndex) => {
          return (0, exports2.truncateString)(cell, truncates[cellIndex]);
        });
      });
    };
    exports2.truncateTableData = truncateTableData;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/createStream.js
var require_createStream = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/createStream.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.createStream = void 0;
    var alignTableData_1 = require_alignTableData();
    var calculateRowHeights_1 = require_calculateRowHeights();
    var drawBorder_1 = require_drawBorder();
    var drawRow_1 = require_drawRow();
    var makeStreamConfig_1 = require_makeStreamConfig();
    var mapDataUsingRowHeights_1 = require_mapDataUsingRowHeights();
    var padTableData_1 = require_padTableData();
    var stringifyTableData_1 = require_stringifyTableData();
    var truncateTableData_1 = require_truncateTableData();
    var utils_1 = require_utils13();
    var prepareData = (data, config) => {
      let rows = (0, stringifyTableData_1.stringifyTableData)(data);
      rows = (0, truncateTableData_1.truncateTableData)(rows, (0, utils_1.extractTruncates)(config));
      const rowHeights = (0, calculateRowHeights_1.calculateRowHeights)(rows, config);
      rows = (0, mapDataUsingRowHeights_1.mapDataUsingRowHeights)(rows, rowHeights, config);
      rows = (0, alignTableData_1.alignTableData)(rows, config);
      rows = (0, padTableData_1.padTableData)(rows, config);
      return rows;
    };
    var create = (row, columnWidths, config) => {
      const rows = prepareData([row], config);
      const body = rows.map((literalRow) => {
        return (0, drawRow_1.drawRow)(literalRow, config);
      }).join("");
      let output;
      output = "";
      output += (0, drawBorder_1.drawBorderTop)(columnWidths, config);
      output += body;
      output += (0, drawBorder_1.drawBorderBottom)(columnWidths, config);
      output = output.trimEnd();
      process.stdout.write(output);
    };
    var append = (row, columnWidths, config) => {
      const rows = prepareData([row], config);
      const body = rows.map((literalRow) => {
        return (0, drawRow_1.drawRow)(literalRow, config);
      }).join("");
      let output = "";
      const bottom = (0, drawBorder_1.drawBorderBottom)(columnWidths, config);
      if (bottom !== "\n") {
        output = "\r\x1B[K";
      }
      output += (0, drawBorder_1.drawBorderJoin)(columnWidths, config);
      output += body;
      output += bottom;
      output = output.trimEnd();
      process.stdout.write(output);
    };
    var createStream = (userConfig) => {
      const config = (0, makeStreamConfig_1.makeStreamConfig)(userConfig);
      const columnWidths = Object.values(config.columns).map((column) => {
        return column.width + column.paddingLeft + column.paddingRight;
      });
      let empty4 = true;
      return {
        write: (row) => {
          if (row.length !== config.columnCount) {
            throw new Error("Row cell count does not match the config.columnCount.");
          }
          if (empty4) {
            empty4 = false;
            create(row, columnWidths, config);
          } else {
            append(row, columnWidths, config);
          }
        }
      };
    };
    exports2.createStream = createStream;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/calculateOutputColumnWidths.js
var require_calculateOutputColumnWidths = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/calculateOutputColumnWidths.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.calculateOutputColumnWidths = void 0;
    var calculateOutputColumnWidths = (config) => {
      return config.columns.map((col) => {
        return col.paddingLeft + col.width + col.paddingRight;
      });
    };
    exports2.calculateOutputColumnWidths = calculateOutputColumnWidths;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/drawTable.js
var require_drawTable = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/drawTable.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.drawTable = void 0;
    var drawBorder_1 = require_drawBorder();
    var drawContent_1 = require_drawContent();
    var drawRow_1 = require_drawRow();
    var utils_1 = require_utils13();
    var drawTable = (rows, outputColumnWidths, rowHeights, config) => {
      const { drawHorizontalLine, singleLine } = config;
      const contents = (0, utils_1.groupBySizes)(rows, rowHeights).map((group, groupIndex) => {
        return group.map((row) => {
          return (0, drawRow_1.drawRow)(row, {
            ...config,
            rowIndex: groupIndex
          });
        }).join("");
      });
      return (0, drawContent_1.drawContent)({
        contents,
        drawSeparator: (index, size) => {
          if (index === 0 || index === size) {
            return drawHorizontalLine(index, size);
          }
          return !singleLine && drawHorizontalLine(index, size);
        },
        elementType: "row",
        rowIndex: -1,
        separatorGetter: (0, drawBorder_1.createTableBorderGetter)(outputColumnWidths, {
          ...config,
          rowCount: contents.length
        }),
        spanningCellManager: config.spanningCellManager
      });
    };
    exports2.drawTable = drawTable;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/injectHeaderConfig.js
var require_injectHeaderConfig = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/injectHeaderConfig.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.injectHeaderConfig = void 0;
    var injectHeaderConfig = (rows, config) => {
      var _a;
      let spanningCellConfig = (_a = config.spanningCells) !== null && _a !== void 0 ? _a : [];
      const headerConfig = config.header;
      const adjustedRows = [...rows];
      if (headerConfig) {
        spanningCellConfig = spanningCellConfig.map(({ row, ...rest }) => {
          return {
            ...rest,
            row: row + 1
          };
        });
        const { content, ...headerStyles } = headerConfig;
        spanningCellConfig.unshift({
          alignment: "center",
          col: 0,
          colSpan: rows[0].length,
          paddingLeft: 1,
          paddingRight: 1,
          row: 0,
          wrapWord: false,
          ...headerStyles
        });
        adjustedRows.unshift([content, ...Array.from({ length: rows[0].length - 1 }).fill("")]);
      }
      return [
        adjustedRows,
        spanningCellConfig
      ];
    };
    exports2.injectHeaderConfig = injectHeaderConfig;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/calculateMaximumColumnWidths.js
var require_calculateMaximumColumnWidths = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/calculateMaximumColumnWidths.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.calculateMaximumColumnWidths = exports2.calculateMaximumCellWidth = void 0;
    var string_width_1 = __importDefault2(require_string_width());
    var utils_1 = require_utils13();
    var calculateMaximumCellWidth = (cell) => {
      return Math.max(...cell.split("\n").map(string_width_1.default));
    };
    exports2.calculateMaximumCellWidth = calculateMaximumCellWidth;
    var calculateMaximumColumnWidths = (rows, spanningCellConfigs = []) => {
      const columnWidths = new Array(rows[0].length).fill(0);
      const rangeCoordinates = spanningCellConfigs.map(utils_1.calculateRangeCoordinate);
      const isSpanningCell = (rowIndex, columnIndex) => {
        return rangeCoordinates.some((rangeCoordinate) => {
          return (0, utils_1.isCellInRange)({
            col: columnIndex,
            row: rowIndex
          }, rangeCoordinate);
        });
      };
      rows.forEach((row, rowIndex) => {
        row.forEach((cell, cellIndex) => {
          if (isSpanningCell(rowIndex, cellIndex)) {
            return;
          }
          columnWidths[cellIndex] = Math.max(columnWidths[cellIndex], (0, exports2.calculateMaximumCellWidth)(cell));
        });
      });
      return columnWidths;
    };
    exports2.calculateMaximumColumnWidths = calculateMaximumColumnWidths;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/alignSpanningCell.js
var require_alignSpanningCell = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/alignSpanningCell.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.alignVerticalRangeContent = exports2.wrapRangeContent = void 0;
    var string_width_1 = __importDefault2(require_string_width());
    var alignString_1 = require_alignString();
    var mapDataUsingRowHeights_1 = require_mapDataUsingRowHeights();
    var padTableData_1 = require_padTableData();
    var truncateTableData_1 = require_truncateTableData();
    var utils_1 = require_utils13();
    var wrapCell_1 = require_wrapCell();
    var wrapRangeContent = (rangeConfig, rangeWidth, context) => {
      const { topLeft, paddingRight, paddingLeft, truncate, wrapWord, alignment } = rangeConfig;
      const originalContent = context.rows[topLeft.row][topLeft.col];
      const contentWidth = rangeWidth - paddingLeft - paddingRight;
      return (0, wrapCell_1.wrapCell)((0, truncateTableData_1.truncateString)(originalContent, truncate), contentWidth, wrapWord).map((line) => {
        const alignedLine = (0, alignString_1.alignString)(line, contentWidth, alignment);
        return (0, padTableData_1.padString)(alignedLine, paddingLeft, paddingRight);
      });
    };
    exports2.wrapRangeContent = wrapRangeContent;
    var alignVerticalRangeContent = (range, content, context) => {
      const { rows, drawHorizontalLine, rowHeights } = context;
      const { topLeft, bottomRight, verticalAlignment } = range;
      if (rowHeights.length === 0) {
        return [];
      }
      const totalCellHeight = (0, utils_1.sumArray)(rowHeights.slice(topLeft.row, bottomRight.row + 1));
      const totalBorderHeight = bottomRight.row - topLeft.row;
      const hiddenHorizontalBorderCount = (0, utils_1.sequence)(topLeft.row + 1, bottomRight.row).filter((horizontalBorderIndex) => {
        return !drawHorizontalLine(horizontalBorderIndex, rows.length);
      }).length;
      const availableRangeHeight = totalCellHeight + totalBorderHeight - hiddenHorizontalBorderCount;
      return (0, mapDataUsingRowHeights_1.padCellVertically)(content, availableRangeHeight, verticalAlignment).map((line) => {
        if (line.length === 0) {
          return " ".repeat((0, string_width_1.default)(content[0]));
        }
        return line;
      });
    };
    exports2.alignVerticalRangeContent = alignVerticalRangeContent;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/calculateSpanningCellWidth.js
var require_calculateSpanningCellWidth = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/calculateSpanningCellWidth.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.calculateSpanningCellWidth = void 0;
    var utils_1 = require_utils13();
    var calculateSpanningCellWidth = (rangeConfig, dependencies) => {
      const { columnsConfig, drawVerticalLine } = dependencies;
      const { topLeft, bottomRight } = rangeConfig;
      const totalWidth = (0, utils_1.sumArray)(columnsConfig.slice(topLeft.col, bottomRight.col + 1).map(({ width }) => {
        return width;
      }));
      const totalPadding = topLeft.col === bottomRight.col ? columnsConfig[topLeft.col].paddingRight + columnsConfig[bottomRight.col].paddingLeft : (0, utils_1.sumArray)(columnsConfig.slice(topLeft.col, bottomRight.col + 1).map(({ paddingLeft, paddingRight }) => {
        return paddingLeft + paddingRight;
      }));
      const totalBorderWidths = bottomRight.col - topLeft.col;
      const totalHiddenVerticalBorders = (0, utils_1.sequence)(topLeft.col + 1, bottomRight.col).filter((verticalBorderIndex) => {
        return !drawVerticalLine(verticalBorderIndex, columnsConfig.length);
      }).length;
      return totalWidth + totalPadding + totalBorderWidths - totalHiddenVerticalBorders;
    };
    exports2.calculateSpanningCellWidth = calculateSpanningCellWidth;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/makeRangeConfig.js
var require_makeRangeConfig = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/makeRangeConfig.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.makeRangeConfig = void 0;
    var utils_1 = require_utils13();
    var makeRangeConfig = (spanningCellConfig, columnsConfig) => {
      var _a;
      const { topLeft, bottomRight } = (0, utils_1.calculateRangeCoordinate)(spanningCellConfig);
      const cellConfig = {
        ...columnsConfig[topLeft.col],
        ...spanningCellConfig,
        paddingRight: (_a = spanningCellConfig.paddingRight) !== null && _a !== void 0 ? _a : columnsConfig[bottomRight.col].paddingRight
      };
      return {
        ...cellConfig,
        bottomRight,
        topLeft
      };
    };
    exports2.makeRangeConfig = makeRangeConfig;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/spanningCellManager.js
var require_spanningCellManager = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/spanningCellManager.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.createSpanningCellManager = void 0;
    var alignSpanningCell_1 = require_alignSpanningCell();
    var calculateSpanningCellWidth_1 = require_calculateSpanningCellWidth();
    var makeRangeConfig_1 = require_makeRangeConfig();
    var utils_1 = require_utils13();
    var findRangeConfig = (cell, rangeConfigs) => {
      return rangeConfigs.find((rangeCoordinate) => {
        return (0, utils_1.isCellInRange)(cell, rangeCoordinate);
      });
    };
    var getContainingRange = (rangeConfig, context) => {
      const width = (0, calculateSpanningCellWidth_1.calculateSpanningCellWidth)(rangeConfig, context);
      const wrappedContent = (0, alignSpanningCell_1.wrapRangeContent)(rangeConfig, width, context);
      const alignedContent = (0, alignSpanningCell_1.alignVerticalRangeContent)(rangeConfig, wrappedContent, context);
      const getCellContent = (rowIndex) => {
        const { topLeft } = rangeConfig;
        const { drawHorizontalLine, rowHeights } = context;
        const totalWithinHorizontalBorderHeight = rowIndex - topLeft.row;
        const totalHiddenHorizontalBorderHeight = (0, utils_1.sequence)(topLeft.row + 1, rowIndex).filter((index) => {
          return !(drawHorizontalLine === null || drawHorizontalLine === void 0 ? void 0 : drawHorizontalLine(index, rowHeights.length));
        }).length;
        const offset = (0, utils_1.sumArray)(rowHeights.slice(topLeft.row, rowIndex)) + totalWithinHorizontalBorderHeight - totalHiddenHorizontalBorderHeight;
        return alignedContent.slice(offset, offset + rowHeights[rowIndex]);
      };
      const getBorderContent = (borderIndex) => {
        const { topLeft } = rangeConfig;
        const offset = (0, utils_1.sumArray)(context.rowHeights.slice(topLeft.row, borderIndex)) + (borderIndex - topLeft.row - 1);
        return alignedContent[offset];
      };
      return {
        ...rangeConfig,
        extractBorderContent: getBorderContent,
        extractCellContent: getCellContent,
        height: wrappedContent.length,
        width
      };
    };
    var inSameRange = (cell1, cell2, ranges) => {
      const range1 = findRangeConfig(cell1, ranges);
      const range2 = findRangeConfig(cell2, ranges);
      if (range1 && range2) {
        return (0, utils_1.areCellEqual)(range1.topLeft, range2.topLeft);
      }
      return false;
    };
    var hashRange = (range) => {
      const { row, col } = range.topLeft;
      return `${row}/${col}`;
    };
    var createSpanningCellManager = (parameters) => {
      const { spanningCellConfigs, columnsConfig } = parameters;
      const ranges = spanningCellConfigs.map((config) => {
        return (0, makeRangeConfig_1.makeRangeConfig)(config, columnsConfig);
      });
      const rangeCache = {};
      let rowHeights = [];
      let rowIndexMapping = [];
      return {
        getContainingRange: (cell, options) => {
          var _a;
          const originalRow = (options === null || options === void 0 ? void 0 : options.mapped) ? rowIndexMapping[cell.row] : cell.row;
          const range = findRangeConfig({
            ...cell,
            row: originalRow
          }, ranges);
          if (!range) {
            return void 0;
          }
          if (rowHeights.length === 0) {
            return getContainingRange(range, {
              ...parameters,
              rowHeights
            });
          }
          const hash2 = hashRange(range);
          (_a = rangeCache[hash2]) !== null && _a !== void 0 ? _a : rangeCache[hash2] = getContainingRange(range, {
            ...parameters,
            rowHeights
          });
          return rangeCache[hash2];
        },
        inSameRange: (cell1, cell2) => {
          return inSameRange(cell1, cell2, ranges);
        },
        rowHeights,
        rowIndexMapping,
        setRowHeights: (_rowHeights) => {
          rowHeights = _rowHeights;
        },
        setRowIndexMapping: (mappedRowHeights) => {
          rowIndexMapping = (0, utils_1.flatten)(mappedRowHeights.map((height, index) => {
            return Array.from({ length: height }, () => {
              return index;
            });
          }));
        }
      };
    };
    exports2.createSpanningCellManager = createSpanningCellManager;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/validateSpanningCellConfig.js
var require_validateSpanningCellConfig = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/validateSpanningCellConfig.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.validateSpanningCellConfig = void 0;
    var utils_1 = require_utils13();
    var inRange = (start, end, value) => {
      return start <= value && value <= end;
    };
    var validateSpanningCellConfig = (rows, configs) => {
      const [nRow, nCol] = [rows.length, rows[0].length];
      configs.forEach((config, configIndex) => {
        const { colSpan, rowSpan } = config;
        if (colSpan === void 0 && rowSpan === void 0) {
          throw new Error(`Expect at least colSpan or rowSpan is provided in config.spanningCells[${configIndex}]`);
        }
        if (colSpan !== void 0 && colSpan < 1) {
          throw new Error(`Expect colSpan is not equal zero, instead got: ${colSpan} in config.spanningCells[${configIndex}]`);
        }
        if (rowSpan !== void 0 && rowSpan < 1) {
          throw new Error(`Expect rowSpan is not equal zero, instead got: ${rowSpan} in config.spanningCells[${configIndex}]`);
        }
      });
      const rangeCoordinates = configs.map(utils_1.calculateRangeCoordinate);
      rangeCoordinates.forEach(({ topLeft, bottomRight }, rangeIndex) => {
        if (!inRange(0, nCol - 1, topLeft.col) || !inRange(0, nRow - 1, topLeft.row) || !inRange(0, nCol - 1, bottomRight.col) || !inRange(0, nRow - 1, bottomRight.row)) {
          throw new Error(`Some cells in config.spanningCells[${rangeIndex}] are out of the table`);
        }
      });
      const configOccupy = Array.from({ length: nRow }, () => {
        return Array.from({ length: nCol });
      });
      rangeCoordinates.forEach(({ topLeft, bottomRight }, rangeIndex) => {
        (0, utils_1.sequence)(topLeft.row, bottomRight.row).forEach((row) => {
          (0, utils_1.sequence)(topLeft.col, bottomRight.col).forEach((col) => {
            if (configOccupy[row][col] !== void 0) {
              throw new Error(`Spanning cells in config.spanningCells[${configOccupy[row][col]}] and config.spanningCells[${rangeIndex}] are overlap each other`);
            }
            configOccupy[row][col] = rangeIndex;
          });
        });
      });
    };
    exports2.validateSpanningCellConfig = validateSpanningCellConfig;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/makeTableConfig.js
var require_makeTableConfig = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/makeTableConfig.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.makeTableConfig = void 0;
    var calculateMaximumColumnWidths_1 = require_calculateMaximumColumnWidths();
    var spanningCellManager_1 = require_spanningCellManager();
    var utils_1 = require_utils13();
    var validateConfig_1 = require_validateConfig();
    var validateSpanningCellConfig_1 = require_validateSpanningCellConfig();
    var makeColumnsConfig = (rows, columns, columnDefault, spanningCellConfigs) => {
      const columnWidths = (0, calculateMaximumColumnWidths_1.calculateMaximumColumnWidths)(rows, spanningCellConfigs);
      return rows[0].map((_, columnIndex) => {
        return {
          alignment: "left",
          paddingLeft: 1,
          paddingRight: 1,
          truncate: Number.POSITIVE_INFINITY,
          verticalAlignment: "top",
          width: columnWidths[columnIndex],
          wrapWord: false,
          ...columnDefault,
          ...columns === null || columns === void 0 ? void 0 : columns[columnIndex]
        };
      });
    };
    var makeTableConfig = (rows, config = {}, injectedSpanningCellConfig) => {
      var _a, _b, _c, _d, _e;
      (0, validateConfig_1.validateConfig)("config.json", config);
      (0, validateSpanningCellConfig_1.validateSpanningCellConfig)(rows, (_a = config.spanningCells) !== null && _a !== void 0 ? _a : []);
      const spanningCellConfigs = (_b = injectedSpanningCellConfig !== null && injectedSpanningCellConfig !== void 0 ? injectedSpanningCellConfig : config.spanningCells) !== null && _b !== void 0 ? _b : [];
      const columnsConfig = makeColumnsConfig(rows, config.columns, config.columnDefault, spanningCellConfigs);
      const drawVerticalLine = (_c = config.drawVerticalLine) !== null && _c !== void 0 ? _c : (() => {
        return true;
      });
      const drawHorizontalLine = (_d = config.drawHorizontalLine) !== null && _d !== void 0 ? _d : (() => {
        return true;
      });
      return {
        ...config,
        border: (0, utils_1.makeBorderConfig)(config.border),
        columns: columnsConfig,
        drawHorizontalLine,
        drawVerticalLine,
        singleLine: (_e = config.singleLine) !== null && _e !== void 0 ? _e : false,
        spanningCellManager: (0, spanningCellManager_1.createSpanningCellManager)({
          columnsConfig,
          drawHorizontalLine,
          drawVerticalLine,
          rows,
          spanningCellConfigs
        })
      };
    };
    exports2.makeTableConfig = makeTableConfig;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/validateTableData.js
var require_validateTableData = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/validateTableData.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.validateTableData = void 0;
    var utils_1 = require_utils13();
    var validateTableData = (rows) => {
      if (!Array.isArray(rows)) {
        throw new TypeError("Table data must be an array.");
      }
      if (rows.length === 0) {
        throw new Error("Table must define at least one row.");
      }
      if (rows[0].length === 0) {
        throw new Error("Table must define at least one column.");
      }
      const columnNumber = rows[0].length;
      for (const row of rows) {
        if (!Array.isArray(row)) {
          throw new TypeError("Table row data must be an array.");
        }
        if (row.length !== columnNumber) {
          throw new Error("Table must have a consistent number of cells.");
        }
        for (const cell of row) {
          if (/[\u0001-\u0006\u0008\u0009\u000B-\u001A]/.test((0, utils_1.normalizeString)(String(cell)))) {
            throw new Error("Table data must not contain control characters.");
          }
        }
      }
    };
    exports2.validateTableData = validateTableData;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/table.js
var require_table = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/table.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.table = void 0;
    var alignTableData_1 = require_alignTableData();
    var calculateOutputColumnWidths_1 = require_calculateOutputColumnWidths();
    var calculateRowHeights_1 = require_calculateRowHeights();
    var drawTable_1 = require_drawTable();
    var injectHeaderConfig_1 = require_injectHeaderConfig();
    var makeTableConfig_1 = require_makeTableConfig();
    var mapDataUsingRowHeights_1 = require_mapDataUsingRowHeights();
    var padTableData_1 = require_padTableData();
    var stringifyTableData_1 = require_stringifyTableData();
    var truncateTableData_1 = require_truncateTableData();
    var utils_1 = require_utils13();
    var validateTableData_1 = require_validateTableData();
    var table9 = (data, userConfig = {}) => {
      (0, validateTableData_1.validateTableData)(data);
      let rows = (0, stringifyTableData_1.stringifyTableData)(data);
      const [injectedRows, injectedSpanningCellConfig] = (0, injectHeaderConfig_1.injectHeaderConfig)(rows, userConfig);
      const config = (0, makeTableConfig_1.makeTableConfig)(injectedRows, userConfig, injectedSpanningCellConfig);
      rows = (0, truncateTableData_1.truncateTableData)(injectedRows, (0, utils_1.extractTruncates)(config));
      const rowHeights = (0, calculateRowHeights_1.calculateRowHeights)(rows, config);
      config.spanningCellManager.setRowHeights(rowHeights);
      config.spanningCellManager.setRowIndexMapping(rowHeights);
      rows = (0, mapDataUsingRowHeights_1.mapDataUsingRowHeights)(rows, rowHeights, config);
      rows = (0, alignTableData_1.alignTableData)(rows, config);
      rows = (0, padTableData_1.padTableData)(rows, config);
      const outputColumnWidths = (0, calculateOutputColumnWidths_1.calculateOutputColumnWidths)(config);
      return (0, drawTable_1.drawTable)(rows, outputColumnWidths, rowHeights, config);
    };
    exports2.table = table9;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/types/api.js
var require_api2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/types/api.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/index.js
var require_src = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/table/6.9.0/08a4d653d91638d70a65ba71f72110f9ceedc42131dc2a29bac69d7fbf063af3/node_modules/table/dist/src/index.js"(exports2) {
    "use strict";
    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      Object.defineProperty(o2, k22, { enumerable: true, get: function() {
        return m[k2];
      } });
    }) : (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      o2[k22] = m[k2];
    }));
    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.getBorderCharacters = exports2.createStream = exports2.table = void 0;
    var createStream_1 = require_createStream();
    Object.defineProperty(exports2, "createStream", { enumerable: true, get: function() {
      return createStream_1.createStream;
    } });
    var getBorderCharacters_1 = require_getBorderCharacters();
    Object.defineProperty(exports2, "getBorderCharacters", { enumerable: true, get: function() {
      return getBorderCharacters_1.getBorderCharacters;
    } });
    var table_1 = require_table();
    Object.defineProperty(exports2, "table", { enumerable: true, get: function() {
      return table_1.table;
    } });
    __exportStar2(require_api2(), exports2);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/render-help/2.0.0/7f293f1dcf3d4ee5f2d452df73fd709e0eb82010d705919b11f9c23430c973eb/node_modules/render-help/lib/index.js
function renderHelp(config) {
  const width = config.width ?? process.stdout.columns ?? 80;
  let outputSections = [];
  if (config.usages.length > 0) {
    const [firstUsage, ...restUsages] = config.usages;
    let usageOutput = `Usage: ${firstUsage}`;
    for (let usage of restUsages) {
      usageOutput += `
       ${usage}`;
    }
    outputSections.push(usageOutput);
  }
  if (config.aliases && config.aliases.length) {
    outputSections.push(`${config.aliases.length === 1 ? "Alias" : "Aliases"}: ${config.aliases.join(", ")}`);
  }
  if (config.description)
    outputSections.push(`${config.description}`);
  if (config.descriptionLists) {
    for (let { title, list: list2 } of config.descriptionLists) {
      outputSections.push(`${title}:
` + renderDescriptionList(list2, width));
    }
  }
  if (config.url) {
    outputSections.push(`Visit ${config.url} for documentation about this command.`);
  }
  return outputSections.join("\n\n");
}
function renderDescriptionList(descriptionItems, width) {
  const data = descriptionItems.sort((item1, item2) => item1.name.localeCompare(item2.name)).map(({ shortAlias, name, description }) => [shortAlias && `${shortAlias},` || " ", name, description || ""]);
  const firstColumnMaxWidth = Math.max(getColumnMaxWidth(data, 0), 3);
  const nameColumnMaxWidth = Math.max(getColumnMaxWidth(data, 1), 19);
  const descriptionColumnWidth = Math.max(width - (FIRST_COLUMN.paddingLeft + firstColumnMaxWidth + FIRST_COLUMN.paddingRight + LONG_OPTION_COLUMN.paddingLeft + nameColumnMaxWidth + LONG_OPTION_COLUMN.paddingRight + DESCRIPTION_COLUMN.paddingLeft + DESCRIPTION_COLUMN.paddingRight), 2);
  return multiTrim((0, import_table.table)(data, {
    ...TABLE_OPTIONS2,
    columns: {
      0: {
        width: firstColumnMaxWidth,
        ...SHORT_OPTION_COLUMN,
        ...FIRST_COLUMN
      },
      1: {
        width: nameColumnMaxWidth,
        ...LONG_OPTION_COLUMN
      },
      2: {
        width: descriptionColumnWidth,
        ...DESCRIPTION_COLUMN
      }
    }
  }));
}
function multiTrim(str2) {
  return str2.split("\n").map((line) => line.trimRight()).filter(Boolean).join("\n");
}
function getColumnMaxWidth(data, columnNumber) {
  return data.reduce((maxWidth, row) => Math.max(maxWidth, row[columnNumber].length), 0);
}
var import_table, TABLE_OPTIONS2, FIRST_COLUMN, SHORT_OPTION_COLUMN, LONG_OPTION_COLUMN, DESCRIPTION_COLUMN;
var init_lib63 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/render-help/2.0.0/7f293f1dcf3d4ee5f2d452df73fd709e0eb82010d705919b11f9c23430c973eb/node_modules/render-help/lib/index.js"() {
    import_table = __toESM(require_src(), 1);
    TABLE_OPTIONS2 = {
      border: (0, import_table.getBorderCharacters)("void"),
      singleLine: true
    };
    FIRST_COLUMN = { paddingLeft: 2, paddingRight: 0 };
    SHORT_OPTION_COLUMN = { alignment: "right" };
    LONG_OPTION_COLUMN = { paddingLeft: 1, paddingRight: 2 };
    DESCRIPTION_COLUMN = {
      paddingLeft: 0,
      paddingRight: 0,
      wrapWord: true
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/write-ini-file/5.0.0/cd3d23cbd6e3487b6de152907b74cb8d49ba3ef375729197f630a7c98ff0d5a0/node_modules/write-ini-file/index.js
import path60 from "node:path";
import fs33 from "node:fs";
async function writeIniFile(fp, data, opts2) {
  await fs33.promises.mkdir(path60.dirname(fp), { recursive: true });
  return main3(import_write_file_atomic4.default, fp, data, opts2);
}
var import_write_file_atomic4, import_ini2, main3;
var init_write_ini_file = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/write-ini-file/5.0.0/cd3d23cbd6e3487b6de152907b74cb8d49ba3ef375729197f630a7c98ff0d5a0/node_modules/write-ini-file/index.js"() {
    import_write_file_atomic4 = __toESM(require_lib2(), 1);
    import_ini2 = __toESM(require_ini(), 1);
    main3 = (fn, fp, data, opts2) => {
      if (!fp) {
        throw new TypeError("Expected a filepath");
      }
      if (data === void 0) {
        throw new TypeError("Expected data to stringify");
      }
      opts2 = opts2 || {};
      const encodedData = import_ini2.default.encode(data, opts2);
      return fn(fp, encodedData, { mode: opts2.mode });
    };
  }
});

// ../auth/commands/lib/shared.js
import util16 from "node:util";
function getRegistryConfigKey(registryUrl) {
  const url7 = new URL(registryUrl);
  return `//${url7.host}${url7.pathname}`;
}
async function safeReadIniFile(readIniFile2, configPath) {
  try {
    return await readIniFile2(configPath);
  } catch (err) {
    if (util16.types.isNativeError(err) && "code" in err && err.code === "ENOENT")
      return {};
    throw err;
  }
}
var init_shared2 = __esm({
  "../auth/commands/lib/shared.js"() {
    "use strict";
  }
});

// ../auth/commands/lib/login.js
var login_exports = {};
__export(login_exports, {
  DEFAULT_CONTEXT: () => DEFAULT_CONTEXT,
  cliOptionsTypes: () => cliOptionsTypes,
  commandNames: () => commandNames,
  handler: () => handler,
  help: () => help,
  login: () => login,
  rcOptionsTypes: () => rcOptionsTypes
});
import path61 from "node:path";
import readline from "node:readline";
function rcOptionsTypes() {
  return {
    registry: types2.registry,
    scope: types2.scope
  };
}
function cliOptionsTypes() {
  return {
    ...rcOptionsTypes()
  };
}
function help() {
  return renderHelp({
    description: "Log in to an npm registry.",
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: "The registry to log in to",
            name: "--registry <url>"
          },
          {
            description: "Associate an operation with a scope for a scoped registry. The scope-to-registry mapping is recorded so future installs in the same scope use the chosen registry.",
            name: "--scope <scope>"
          }
        ]
      }
    ],
    url: docsUrl("login"),
    usages: ["pnpm login [--registry <url>] [--scope <scope>]"]
  });
}
async function handler(opts2) {
  return login({ opts: opts2 });
}
async function login({ context = DEFAULT_CONTEXT, opts: opts2 }) {
  const { process: process17, readIniFile: readIniFile2, writeIniFile: writeIniFile2 } = context;
  const registry = (0, import_normalize_registry_url3.default)(opts2.registry ?? "https://registry.npmjs.org/");
  if (!process17.stdin.isTTY || !process17.stdout.isTTY) {
    throw new LoginNonInteractiveError();
  }
  const fetchOptions = {
    method: "GET",
    retry: {
      factor: opts2.fetchRetryFactor,
      maxTimeout: opts2.fetchRetryMaxtimeout,
      minTimeout: opts2.fetchRetryMintimeout,
      retries: opts2.fetchRetries
    },
    timeout: opts2.fetchTimeout
  };
  let token;
  try {
    token = await webLogin({ context, fetchOptions, registry });
  } catch (err) {
    if (err instanceof WebLoginError && (err.httpStatus === 404 || err.httpStatus === 405)) {
      token = await classicLogin({ context, fetchOptions, registry });
    } else {
      throw err;
    }
  }
  const configPath = path61.join(opts2.configDir, "auth.ini");
  const settings = await safeReadIniFile(readIniFile2, configPath);
  const registryConfigKey = getRegistryConfigKey(registry);
  settings[`${registryConfigKey}:_authToken`] = token;
  const scopeKey = normalizeScope(opts2.scope);
  if (scopeKey != null) {
    settings[`${scopeKey}:registry`] = registry;
  }
  await writeIniFile2(configPath, settings);
  return `Logged in on ${registry}`;
}
function normalizeScope(scope) {
  if (scope == null)
    return void 0;
  const trimmed = scope.trim();
  if (trimmed === "" || trimmed === "@")
    return void 0;
  return trimmed.startsWith("@") ? trimmed : `@${trimmed}`;
}
async function webLogin({ context, fetchOptions, registry }) {
  const { fetch: fetch2, globalInfo: globalInfo2 } = context;
  const loginUrl = new URL("-/v1/login", registry).href;
  const response = await fetch2(loginUrl, {
    method: "POST",
    headers: {
      "content-type": "application/json",
      accept: "application/json",
      "npm-auth-type": "web"
    },
    body: JSON.stringify({})
  });
  if (!response.ok) {
    const text = await response.text();
    throw new WebLoginError(response.status, text);
  }
  const body = await response.json();
  if (!body.loginUrl || !body.doneUrl) {
    throw new LoginInvalidResponseError();
  }
  const qrCode = generateQrCode(body.loginUrl);
  globalInfo2(`Authenticate your account at:
${body.loginUrl}

${qrCode}`);
  const pollPromise = pollForWebAuthToken({ context, doneUrl: body.doneUrl, fetchOptions });
  return promptBrowserOpen({
    authUrl: body.loginUrl,
    context,
    pollPromise
  });
}
async function classicLogin({ context, fetchOptions, registry }) {
  const { enquirer: enquirer12, fetch: fetch2, globalInfo: globalInfo2, globalWarn: globalWarn4 } = context;
  const { username } = await enquirer12.prompt({
    message: "Username:",
    name: "username",
    type: "input"
  });
  const { password } = await enquirer12.prompt({
    message: "Password:",
    name: "password",
    type: "password"
  });
  const { email } = await enquirer12.prompt({
    message: "Email (this IS public):",
    name: "email",
    type: "input"
  });
  if (!username || !password || !email) {
    throw new LoginMissingCredentialsError();
  }
  const loginUrl = new URL(`-/user/org.couchdb.user:${encodeURIComponent(username)}`, registry).href;
  const token = await withOtpHandling({
    context,
    fetchOptions,
    operation: async (otp) => {
      const response = await fetch2(loginUrl, {
        method: "PUT",
        headers: {
          "content-type": "application/json",
          accept: "application/json",
          "npm-auth-type": "web",
          // Conditionally include npm-otp: some HTTP implementations coerce
          // `undefined` to the string "undefined", which would send a bad header
          // on the initial attempt (before OTP is known).
          ...otp != null ? { "npm-otp": otp } : {}
        },
        body: JSON.stringify({
          _id: `org.couchdb.user:${username}`,
          name: username,
          password,
          email,
          type: "user"
        })
      });
      if (!response.ok) {
        await throwIfOtpRequired(globalWarn4, response);
        const text = await response.text();
        throw new ClassicLoginError(response.status, text);
      }
      const body = await response.json();
      if (!body.token) {
        throw new LoginNoTokenError();
      }
      return body.token;
    }
  });
  globalInfo2(`Logged in as ${username}`);
  return token;
}
async function throwIfOtpRequired(globalWarn4, response) {
  if (response.status !== 401)
    return;
  const wwwAuth = response.headers.get("www-authenticate");
  if (!wwwAuth?.includes("otp"))
    return;
  let body;
  try {
    body = await response.json();
  } catch {
  }
  throw SyntheticOtpError.fromUnknownBody(globalWarn4, body);
}
var import_enquirer, import_normalize_registry_url3, commandNames, DEFAULT_CONTEXT, LoginNonInteractiveError, LoginInvalidResponseError, LoginMissingCredentialsError, LoginNoTokenError, ClassicLoginError, WebLoginError;
var init_login = __esm({
  "../auth/commands/lib/login.js"() {
    "use strict";
    init_lib29();
    init_lib61();
    init_lib2();
    init_lib3();
    init_lib49();
    init_lib62();
    import_enquirer = __toESM(require_enquirer(), 1);
    import_normalize_registry_url3 = __toESM(require_normalize_registry_url(), 1);
    init_read_ini_file();
    init_lib63();
    init_write_ini_file();
    init_shared2();
    commandNames = ["login", "adduser"];
    DEFAULT_CONTEXT = {
      Date,
      setTimeout,
      createReadlineInterface: readline.createInterface.bind(null, { input: process.stdin }),
      enquirer: import_enquirer.default,
      fetch,
      globalInfo,
      globalWarn,
      process,
      readIniFile,
      writeIniFile
    };
    LoginNonInteractiveError = class extends PnpmError {
      constructor() {
        super("LOGIN_NON_INTERACTIVE", "The login command requires an interactive terminal");
      }
    };
    LoginInvalidResponseError = class extends PnpmError {
      constructor() {
        super("LOGIN_INVALID_RESPONSE", "The registry returned an invalid response for web-based login");
      }
    };
    LoginMissingCredentialsError = class extends PnpmError {
      constructor() {
        super("LOGIN_MISSING_CREDENTIALS", "Username, password, and email are all required");
      }
    };
    LoginNoTokenError = class extends PnpmError {
      constructor() {
        super("LOGIN_NO_TOKEN", "The registry did not return an authentication token");
      }
    };
    ClassicLoginError = class extends PnpmError {
      httpStatus;
      responseText;
      constructor(httpStatus, responseText) {
        super("LOGIN_FAILED", `Login failed (HTTP ${httpStatus}): ${responseText}`);
        this.httpStatus = httpStatus;
        this.responseText = responseText;
      }
    };
    WebLoginError = class extends PnpmError {
      httpStatus;
      responseText;
      constructor(httpStatus, responseText) {
        super("WEB_LOGIN_FAILED", `Web-based login failed (HTTP ${httpStatus}): ${responseText}`);
        this.httpStatus = httpStatus;
        this.responseText = responseText;
      }
    };
  }
});

// ../auth/commands/lib/logout.js
var logout_exports = {};
__export(logout_exports, {
  DEFAULT_CONTEXT: () => DEFAULT_CONTEXT2,
  cliOptionsTypes: () => cliOptionsTypes2,
  commandNames: () => commandNames2,
  handler: () => handler2,
  help: () => help2,
  logout: () => logout,
  rcOptionsTypes: () => rcOptionsTypes2
});
import path62 from "node:path";
function rcOptionsTypes2() {
  return { registry: types2.registry };
}
function cliOptionsTypes2() {
  return {
    ...rcOptionsTypes2()
  };
}
function help2() {
  return renderHelp({
    description: "Log out of an npm registry.",
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: "The registry to log out of",
            name: "--registry <url>"
          }
        ]
      }
    ],
    url: docsUrl("logout"),
    usages: ["pnpm logout [--registry <url>]"]
  });
}
async function handler2(opts2) {
  return logout({ opts: opts2 });
}
async function logout({ context = DEFAULT_CONTEXT2, opts: opts2 }) {
  const { globalWarn: globalWarn4, readIniFile: readIniFile2 } = context;
  const registry = (0, import_normalize_registry_url4.default)(opts2.registry ?? "https://registry.npmjs.org/");
  const registryConfigKey = getRegistryConfigKey(registry);
  const tokenKey = `${registryConfigKey}:_authToken`;
  const token = opts2.authConfig?.[tokenKey];
  if (!token) {
    throw new LogoutNotLoggedInError(registry);
  }
  const revokedOnRegistry = await tryRevokeToken({ context, opts: opts2, registry, token });
  const configPath = path62.join(opts2.configDir, "auth.ini");
  const authIniSettings = await safeReadIniFile(readIniFile2, configPath);
  if (tokenKey in authIniSettings) {
    await removeTokenFromAuthIni({ context, configPath, authIniSettings, tokenKey });
  } else if (revokedOnRegistry) {
    globalWarn4(`The auth token for ${registry} was not found in ${configPath}. It may be configured in .npmrc or another config file. The token was revoked on the registry but must be removed manually from that config file.`);
  } else {
    throw new LogoutFailedError(registry, configPath);
  }
  return `Logged out of ${registry}`;
}
async function tryRevokeToken({ context: { fetch: fetch2, globalInfo: globalInfo2 }, opts: opts2, registry, token }) {
  const revokeUrl = new URL(`-/user/token/${encodeURIComponent(token)}`, registry).href;
  try {
    const response = await fetch2(revokeUrl, {
      method: "DELETE",
      headers: {
        authorization: `Bearer ${token}`
      },
      retry: {
        factor: opts2.fetchRetryFactor,
        maxTimeout: opts2.fetchRetryMaxtimeout,
        minTimeout: opts2.fetchRetryMintimeout,
        retries: opts2.fetchRetries
      },
      timeout: opts2.fetchTimeout
    });
    if (!response.ok) {
      globalInfo2(`Registry returned HTTP ${response.status} when revoking token`);
      return false;
    }
    return true;
  } catch {
    globalInfo2("Could not reach the registry to revoke the token");
    return false;
  }
}
async function removeTokenFromAuthIni({ context: { writeIniFile: writeIniFile2 }, configPath, authIniSettings, tokenKey }) {
  delete authIniSettings[tokenKey];
  await writeIniFile2(configPath, authIniSettings);
}
var import_normalize_registry_url4, commandNames2, DEFAULT_CONTEXT2, LogoutNotLoggedInError, LogoutFailedError;
var init_logout = __esm({
  "../auth/commands/lib/logout.js"() {
    "use strict";
    init_lib29();
    init_lib61();
    init_lib2();
    init_lib3();
    init_lib49();
    import_normalize_registry_url4 = __toESM(require_normalize_registry_url(), 1);
    init_read_ini_file();
    init_lib63();
    init_write_ini_file();
    init_shared2();
    commandNames2 = ["logout"];
    DEFAULT_CONTEXT2 = {
      fetch,
      globalInfo,
      globalWarn,
      readIniFile,
      writeIniFile
    };
    LogoutNotLoggedInError = class extends PnpmError {
      constructor(registry) {
        super("NOT_LOGGED_IN", `Not logged in to ${registry}, so can't log out`);
      }
    };
    LogoutFailedError = class extends PnpmError {
      constructor(registry, configPath) {
        super("LOGOUT_FAILED", `Failed to log out of ${registry}. The registry rejected the token revocation request, and the token was not found in ${configPath}. The token may be configured in .npmrc or another config file and must be removed manually, and may still need to be revoked on the registry.`);
      }
    };
  }
});

// ../auth/commands/lib/index.js
var init_lib64 = __esm({
  "../auth/commands/lib/index.js"() {
    "use strict";
    init_login();
    init_logout();
  }
});

// ../deps/path/lib/index.js
function indexOfDepPathSuffix(depPath) {
  if (!depPath.endsWith(")"))
    return { peersIndex: -1, patchHashIndex: -1 };
  let open5 = 1;
  for (let i2 = depPath.length - 2; i2 >= 0; i2--) {
    if (depPath[i2] === "(") {
      open5--;
    } else if (depPath[i2] === ")") {
      open5++;
    } else if (!open5) {
      if (depPath.substring(i2 + 1).startsWith("(patch_hash=")) {
        return {
          patchHashIndex: i2 + 1,
          peersIndex: depPath.indexOf("(", i2 + 2)
        };
      }
      return {
        patchHashIndex: -1,
        peersIndex: i2 + 1
      };
    }
  }
  return { peersIndex: -1, patchHashIndex: -1 };
}
function parseDepPath(relDepPath) {
  const { peersIndex } = indexOfDepPathSuffix(relDepPath);
  if (peersIndex !== -1) {
    return {
      id: relDepPath.substring(0, peersIndex),
      peerDepGraphHash: relDepPath.substring(peersIndex)
    };
  }
  return {
    id: relDepPath,
    peerDepGraphHash: ""
  };
}
function removeSuffix(relDepPath) {
  const { peersIndex, patchHashIndex } = indexOfDepPathSuffix(relDepPath);
  if (patchHashIndex !== -1) {
    return relDepPath.substring(0, patchHashIndex);
  }
  if (peersIndex !== -1) {
    return relDepPath.substring(0, peersIndex);
  }
  return relDepPath;
}
function getPkgIdWithPatchHash(depPath) {
  let pkgId = depPath;
  const { peersIndex: sepIndex } = indexOfDepPathSuffix(pkgId);
  if (sepIndex !== -1) {
    pkgId = pkgId.substring(0, sepIndex);
  }
  return pkgId;
}
function tryGetPackageId(relDepPath) {
  let pkgId = relDepPath;
  const { peersIndex, patchHashIndex } = indexOfDepPathSuffix(pkgId);
  const sepIndex = patchHashIndex === -1 ? peersIndex : patchHashIndex;
  if (sepIndex !== -1) {
    pkgId = pkgId.substring(0, sepIndex);
  }
  if (pkgId.includes(":")) {
    const newPkgId = pkgId.substring(pkgId.indexOf("@", 1) + 1);
    if (!newPkgId.startsWith("runtime:")) {
      pkgId = newPkgId;
    }
  }
  return pkgId;
}
function getRegistryByPackageName(registries, packageName) {
  if (packageName[0] !== "@")
    return registries.default;
  const scope = packageName.substring(0, packageName.indexOf("/"));
  return registries[scope] || registries.default;
}
function refToRelative(reference, pkgName) {
  if (reference.startsWith("link:")) {
    return null;
  }
  if (reference[0] === "@")
    return reference;
  const atIndex = reference.indexOf("@");
  if (atIndex === -1)
    return `${pkgName}@${reference}`;
  const colonIndex = reference.indexOf(":");
  const bracketIndex = reference.indexOf("(");
  if ((colonIndex === -1 || atIndex < colonIndex) && (bracketIndex === -1 || atIndex < bracketIndex))
    return reference;
  return `${pkgName}@${reference}`;
}
function parse6(dependencyPath) {
  if (typeof dependencyPath !== "string") {
    throw new TypeError(`Expected \`dependencyPath\` to be of type \`string\`, got \`${// eslint-disable-next-line: strict-type-predicates
    dependencyPath === null ? "null" : typeof dependencyPath}\``);
  }
  const sepIndex = dependencyPath.indexOf("@", 1);
  if (sepIndex === -1) {
    return {};
  }
  const name = dependencyPath.substring(0, sepIndex);
  let version2 = dependencyPath.substring(sepIndex + 1);
  if (version2) {
    let peerDepGraphHash;
    let patchHash;
    const { peersIndex, patchHashIndex } = indexOfDepPathSuffix(version2);
    if (peersIndex !== -1 || patchHashIndex !== -1) {
      if (peersIndex === -1) {
        patchHash = version2.substring(patchHashIndex);
        version2 = version2.substring(0, patchHashIndex);
      } else if (patchHashIndex === -1) {
        peerDepGraphHash = version2.substring(peersIndex);
        version2 = version2.substring(0, peersIndex);
      } else {
        patchHash = version2.substring(patchHashIndex, peersIndex);
        peerDepGraphHash = version2.substring(peersIndex);
        version2 = version2.substring(0, patchHashIndex);
      }
    }
    if (import_semver19.default.valid(version2)) {
      return {
        name,
        peerDepGraphHash,
        version: version2,
        patchHash
      };
    }
    return {
      name,
      nonSemverVersion: version2,
      peerDepGraphHash,
      patchHash
    };
  }
  return {};
}
function depPathToFilename(depPath, maxLengthWithoutHash) {
  let filename = depPathToFilenameUnescaped(depPath).replace(/[\\/:*?"<>|#]/g, "+");
  if (filename.includes("(")) {
    filename = filename.replace(/\)$/, "").replace(/\)\(|\(|\)/g, "_");
  }
  if (filename.length > maxLengthWithoutHash || filename !== filename.toLowerCase() && !filename.startsWith("file+")) {
    return `${filename.substring(0, maxLengthWithoutHash - 33)}_${createShortHash(filename)}`;
  }
  return filename;
}
function depPathToFilenameUnescaped(depPath) {
  if (!depPath.startsWith("file:")) {
    if (depPath[0] === "/") {
      depPath = depPath.substring(1);
    }
    const index = depPath.indexOf("@", 1);
    if (index === -1)
      return depPath;
    return `${depPath.substring(0, index)}@${depPath.slice(index + 1)}`;
  }
  return depPath.replace(":", "+");
}
function createPeerDepGraphHash(peerIds, maxLength = 1e3) {
  let dirName = peerIds.map((peerId) => {
    if (typeof peerId !== "string") {
      return `${peerId.name}@${peerId.version}`;
    }
    if (peerId[0] === "/") {
      return peerId.substring(1);
    }
    return peerId;
  }).sort().join(")(");
  if (dirName.length > maxLength) {
    dirName = createShortHash(dirName);
  }
  return `(${dirName})`;
}
function isRuntimeDepPath(depPath) {
  return RUNTIME_DEP_PATH_RE.test(depPath);
}
var import_semver19, RUNTIME_DEP_PATH_RE;
var init_lib65 = __esm({
  "../deps/path/lib/index.js"() {
    "use strict";
    init_lib20();
    import_semver19 = __toESM(require_semver2(), 1);
    RUNTIME_DEP_PATH_RE = /^(?:node|bun|deno)@runtime:/;
  }
});

// ../building/policy/lib/index.js
function isBuildExplicitlyDisallowed(depPath, allowBuild) {
  if (!allowBuild)
    return false;
  const { name, version: version2 } = parse6(depPath);
  if (!name || !version2)
    return false;
  return allowBuild(name, version2) === false;
}
function createAllowBuildFunction(opts2) {
  if (opts2.dangerouslyAllowAllBuilds)
    return () => true;
  if (opts2.allowBuilds != null) {
    const allowedBuilds = /* @__PURE__ */ new Set();
    const disallowedBuilds = /* @__PURE__ */ new Set();
    for (const [pkg, value] of Object.entries(opts2.allowBuilds)) {
      switch (value) {
        case true:
          allowedBuilds.add(pkg);
          break;
        case false:
          disallowedBuilds.add(pkg);
          break;
      }
    }
    const expandedAllowed = expandPackageVersionSpecs(Array.from(allowedBuilds));
    const expandedDisallowed = expandPackageVersionSpecs(Array.from(disallowedBuilds));
    return (pkgName, version2) => {
      const pkgWithVersion = `${pkgName}@${version2}`;
      if (expandedDisallowed.has(pkgName) || expandedDisallowed.has(pkgWithVersion)) {
        return false;
      }
      if (expandedAllowed.has(pkgName) || expandedAllowed.has(pkgWithVersion)) {
        return true;
      }
      return void 0;
    };
  }
  return void 0;
}
var init_lib66 = __esm({
  "../building/policy/lib/index.js"() {
    "use strict";
    init_lib23();
    init_lib65();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/object-hash/3.0.0/3cf2efaf98680b1d4a359a0a8b21b5ac630665e570398969c96958d6ec5c5aae/node_modules/object-hash/index.js
var require_object_hash = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/object-hash/3.0.0/3cf2efaf98680b1d4a359a0a8b21b5ac630665e570398969c96958d6ec5c5aae/node_modules/object-hash/index.js"(exports2, module2) {
    "use strict";
    var crypto11 = __require("crypto");
    exports2 = module2.exports = objectHash;
    function objectHash(object, options) {
      options = applyDefaults(object, options);
      return hash2(object, options);
    }
    exports2.sha1 = function(object) {
      return objectHash(object);
    };
    exports2.keys = function(object) {
      return objectHash(object, { excludeValues: true, algorithm: "sha1", encoding: "hex" });
    };
    exports2.MD5 = function(object) {
      return objectHash(object, { algorithm: "md5", encoding: "hex" });
    };
    exports2.keysMD5 = function(object) {
      return objectHash(object, { algorithm: "md5", encoding: "hex", excludeValues: true });
    };
    var hashes = crypto11.getHashes ? crypto11.getHashes().slice() : ["sha1", "md5"];
    hashes.push("passthrough");
    var encodings = ["buffer", "hex", "binary", "base64"];
    function applyDefaults(object, sourceOptions) {
      sourceOptions = sourceOptions || {};
      var options = {};
      options.algorithm = sourceOptions.algorithm || "sha1";
      options.encoding = sourceOptions.encoding || "hex";
      options.excludeValues = sourceOptions.excludeValues ? true : false;
      options.algorithm = options.algorithm.toLowerCase();
      options.encoding = options.encoding.toLowerCase();
      options.ignoreUnknown = sourceOptions.ignoreUnknown !== true ? false : true;
      options.respectType = sourceOptions.respectType === false ? false : true;
      options.respectFunctionNames = sourceOptions.respectFunctionNames === false ? false : true;
      options.respectFunctionProperties = sourceOptions.respectFunctionProperties === false ? false : true;
      options.unorderedArrays = sourceOptions.unorderedArrays !== true ? false : true;
      options.unorderedSets = sourceOptions.unorderedSets === false ? false : true;
      options.unorderedObjects = sourceOptions.unorderedObjects === false ? false : true;
      options.replacer = sourceOptions.replacer || void 0;
      options.excludeKeys = sourceOptions.excludeKeys || void 0;
      if (typeof object === "undefined") {
        throw new Error("Object argument required.");
      }
      for (var i2 = 0; i2 < hashes.length; ++i2) {
        if (hashes[i2].toLowerCase() === options.algorithm.toLowerCase()) {
          options.algorithm = hashes[i2];
        }
      }
      if (hashes.indexOf(options.algorithm) === -1) {
        throw new Error('Algorithm "' + options.algorithm + '"  not supported. supported values: ' + hashes.join(", "));
      }
      if (encodings.indexOf(options.encoding) === -1 && options.algorithm !== "passthrough") {
        throw new Error('Encoding "' + options.encoding + '"  not supported. supported values: ' + encodings.join(", "));
      }
      return options;
    }
    function isNativeFunction(f) {
      if (typeof f !== "function") {
        return false;
      }
      var exp = /^function\s+\w*\s*\(\s*\)\s*{\s+\[native code\]\s+}$/i;
      return exp.exec(Function.prototype.toString.call(f)) != null;
    }
    function hash2(object, options) {
      var hashingStream;
      if (options.algorithm !== "passthrough") {
        hashingStream = crypto11.createHash(options.algorithm);
      } else {
        hashingStream = new PassThrough3();
      }
      if (typeof hashingStream.write === "undefined") {
        hashingStream.write = hashingStream.update;
        hashingStream.end = hashingStream.update;
      }
      var hasher = typeHasher(options, hashingStream);
      hasher.dispatch(object);
      if (!hashingStream.update) {
        hashingStream.end("");
      }
      if (hashingStream.digest) {
        return hashingStream.digest(options.encoding === "buffer" ? void 0 : options.encoding);
      }
      var buf = hashingStream.read();
      if (options.encoding === "buffer") {
        return buf;
      }
      return buf.toString(options.encoding);
    }
    exports2.writeToStream = function(object, options, stream2) {
      if (typeof stream2 === "undefined") {
        stream2 = options;
        options = {};
      }
      options = applyDefaults(object, options);
      return typeHasher(options, stream2).dispatch(object);
    };
    function typeHasher(options, writeTo, context) {
      context = context || [];
      var write = function(str2) {
        if (writeTo.update) {
          return writeTo.update(str2, "utf8");
        } else {
          return writeTo.write(str2, "utf8");
        }
      };
      return {
        dispatch: function(value) {
          if (options.replacer) {
            value = options.replacer(value);
          }
          var type4 = typeof value;
          if (value === null) {
            type4 = "null";
          }
          return this["_" + type4](value);
        },
        _object: function(object) {
          var pattern = /\[object (.*)\]/i;
          var objString = Object.prototype.toString.call(object);
          var objType = pattern.exec(objString);
          if (!objType) {
            objType = "unknown:[" + objString + "]";
          } else {
            objType = objType[1];
          }
          objType = objType.toLowerCase();
          var objectNumber = null;
          if ((objectNumber = context.indexOf(object)) >= 0) {
            return this.dispatch("[CIRCULAR:" + objectNumber + "]");
          } else {
            context.push(object);
          }
          if (typeof Buffer !== "undefined" && Buffer.isBuffer && Buffer.isBuffer(object)) {
            write("buffer:");
            return write(object);
          }
          if (objType !== "object" && objType !== "function" && objType !== "asyncfunction") {
            if (this["_" + objType]) {
              this["_" + objType](object);
            } else if (options.ignoreUnknown) {
              return write("[" + objType + "]");
            } else {
              throw new Error('Unknown object type "' + objType + '"');
            }
          } else {
            var keys4 = Object.keys(object);
            if (options.unorderedObjects) {
              keys4 = keys4.sort();
            }
            if (options.respectType !== false && !isNativeFunction(object)) {
              keys4.splice(0, 0, "prototype", "__proto__", "constructor");
            }
            if (options.excludeKeys) {
              keys4 = keys4.filter(function(key) {
                return !options.excludeKeys(key);
              });
            }
            write("object:" + keys4.length + ":");
            var self2 = this;
            return keys4.forEach(function(key) {
              self2.dispatch(key);
              write(":");
              if (!options.excludeValues) {
                self2.dispatch(object[key]);
              }
              write(",");
            });
          }
        },
        _array: function(arr, unordered) {
          unordered = typeof unordered !== "undefined" ? unordered : options.unorderedArrays !== false;
          var self2 = this;
          write("array:" + arr.length + ":");
          if (!unordered || arr.length <= 1) {
            return arr.forEach(function(entry) {
              return self2.dispatch(entry);
            });
          }
          var contextAdditions = [];
          var entries = arr.map(function(entry) {
            var strm = new PassThrough3();
            var localContext = context.slice();
            var hasher = typeHasher(options, strm, localContext);
            hasher.dispatch(entry);
            contextAdditions = contextAdditions.concat(localContext.slice(context.length));
            return strm.read().toString();
          });
          context = context.concat(contextAdditions);
          entries.sort();
          return this._array(entries, false);
        },
        _date: function(date) {
          return write("date:" + date.toJSON());
        },
        _symbol: function(sym) {
          return write("symbol:" + sym.toString());
        },
        _error: function(err) {
          return write("error:" + err.toString());
        },
        _boolean: function(bool2) {
          return write("bool:" + bool2.toString());
        },
        _string: function(string) {
          write("string:" + string.length + ":");
          write(string.toString());
        },
        _function: function(fn) {
          write("fn:");
          if (isNativeFunction(fn)) {
            this.dispatch("[native]");
          } else {
            this.dispatch(fn.toString());
          }
          if (options.respectFunctionNames !== false) {
            this.dispatch("function-name:" + String(fn.name));
          }
          if (options.respectFunctionProperties) {
            this._object(fn);
          }
        },
        _number: function(number) {
          return write("number:" + number.toString());
        },
        _xml: function(xml) {
          return write("xml:" + xml.toString());
        },
        _null: function() {
          return write("Null");
        },
        _undefined: function() {
          return write("Undefined");
        },
        _regexp: function(regex2) {
          return write("regex:" + regex2.toString());
        },
        _uint8array: function(arr) {
          write("uint8array:");
          return this.dispatch(Array.prototype.slice.call(arr));
        },
        _uint8clampedarray: function(arr) {
          write("uint8clampedarray:");
          return this.dispatch(Array.prototype.slice.call(arr));
        },
        _int8array: function(arr) {
          write("int8array:");
          return this.dispatch(Array.prototype.slice.call(arr));
        },
        _uint16array: function(arr) {
          write("uint16array:");
          return this.dispatch(Array.prototype.slice.call(arr));
        },
        _int16array: function(arr) {
          write("int16array:");
          return this.dispatch(Array.prototype.slice.call(arr));
        },
        _uint32array: function(arr) {
          write("uint32array:");
          return this.dispatch(Array.prototype.slice.call(arr));
        },
        _int32array: function(arr) {
          write("int32array:");
          return this.dispatch(Array.prototype.slice.call(arr));
        },
        _float32array: function(arr) {
          write("float32array:");
          return this.dispatch(Array.prototype.slice.call(arr));
        },
        _float64array: function(arr) {
          write("float64array:");
          return this.dispatch(Array.prototype.slice.call(arr));
        },
        _arraybuffer: function(arr) {
          write("arraybuffer:");
          return this.dispatch(new Uint8Array(arr));
        },
        _url: function(url7) {
          return write("url:" + url7.toString(), "utf8");
        },
        _map: function(map26) {
          write("map:");
          var arr = Array.from(map26);
          return this._array(arr, options.unorderedSets !== false);
        },
        _set: function(set2) {
          write("set:");
          var arr = Array.from(set2);
          return this._array(arr, options.unorderedSets !== false);
        },
        _file: function(file) {
          write("file:");
          return this.dispatch([file.name, file.size, file.type, file.lastModfied]);
        },
        _blob: function() {
          if (options.ignoreUnknown) {
            return write("[blob]");
          }
          throw Error('Hashing Blob objects is currently not supported\n(see https://github.com/puleos/object-hash/issues/26)\nUse "options.replacer" or "options.ignoreUnknown"\n');
        },
        _domwindow: function() {
          return write("domwindow");
        },
        _bigint: function(number) {
          return write("bigint:" + number.toString());
        },
        /* Node.js standard native objects */
        _process: function() {
          return write("process");
        },
        _timer: function() {
          return write("timer");
        },
        _pipe: function() {
          return write("pipe");
        },
        _tcp: function() {
          return write("tcp");
        },
        _udp: function() {
          return write("udp");
        },
        _tty: function() {
          return write("tty");
        },
        _statwatcher: function() {
          return write("statwatcher");
        },
        _securecontext: function() {
          return write("securecontext");
        },
        _connection: function() {
          return write("connection");
        },
        _zlib: function() {
          return write("zlib");
        },
        _context: function() {
          return write("context");
        },
        _nodescript: function() {
          return write("nodescript");
        },
        _httpparser: function() {
          return write("httpparser");
        },
        _dataview: function() {
          return write("dataview");
        },
        _signal: function() {
          return write("signal");
        },
        _fsevent: function() {
          return write("fsevent");
        },
        _tlswrap: function() {
          return write("tlswrap");
        }
      };
    }
    function PassThrough3() {
      return {
        buf: "",
        write: function(b) {
          this.buf += b;
        },
        end: function(b) {
          this.buf += b;
        },
        read: function() {
          return this.buf;
        }
      };
    }
  }
});

// ../crypto/object-hasher/lib/index.js
function hashUnknown(object, options) {
  if (object === void 0) {
    return "00000000000000000000000000000000000000000000";
  }
  return (0, import_object_hash.default)(object, options);
}
function hashObjectNullableWithPrefix(object) {
  if (!object || isEmpty_default(object))
    return void 0;
  const packageExtensionsChecksum = (0, import_object_hash.default)(object, withSortingOptions);
  return `sha256-${packageExtensionsChecksum}`;
}
var import_object_hash, defaultOptions3, withoutSortingOptions, withSortingOptions, hashObjectWithoutSorting, hashObject;
var init_lib67 = __esm({
  "../crypto/object-hasher/lib/index.js"() {
    "use strict";
    import_object_hash = __toESM(require_object_hash(), 1);
    init_es();
    defaultOptions3 = {
      respectType: false,
      algorithm: "sha256",
      encoding: "base64"
    };
    withoutSortingOptions = {
      ...defaultOptions3,
      unorderedArrays: false,
      unorderedObjects: false,
      unorderedSets: false
    };
    withSortingOptions = {
      ...defaultOptions3,
      unorderedArrays: true,
      unorderedObjects: true,
      unorderedSets: true
    };
    hashObjectWithoutSorting = (object, opts2) => hashUnknown(object, {
      ...withoutSortingOptions,
      ...opts2
    });
    hashObject = (object) => hashUnknown(object, withSortingOptions);
  }
});

// ../lockfile/utils/lib/nameVerFromPkgSnapshot.js
function nameVerFromPkgSnapshot(depPath, pkgSnapshot) {
  const pkgInfo = parse6(depPath);
  return {
    name: pkgInfo.name,
    peerDepGraphHash: pkgInfo.peerDepGraphHash,
    version: pkgSnapshot.version ?? pkgInfo.version ?? void 0,
    nonSemverVersion: pkgInfo.nonSemverVersion
  };
}
var init_nameVerFromPkgSnapshot = __esm({
  "../lockfile/utils/lib/nameVerFromPkgSnapshot.js"() {
    "use strict";
    init_lib65();
  }
});

// ../lockfile/utils/lib/packageIdFromSnapshot.js
function packageIdFromSnapshot(depPath, pkgSnapshot) {
  if (pkgSnapshot.id)
    return pkgSnapshot.id;
  return tryGetPackageId(depPath) ?? depPath;
}
var init_packageIdFromSnapshot = __esm({
  "../lockfile/utils/lib/packageIdFromSnapshot.js"() {
    "use strict";
    init_lib65();
  }
});

// ../lockfile/utils/lib/packageIsIndependent.js
function packageIsIndependent({ dependencies, optionalDependencies }) {
  return dependencies === void 0 && optionalDependencies === void 0;
}
var init_packageIsIndependent = __esm({
  "../lockfile/utils/lib/packageIsIndependent.js"() {
    "use strict";
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/get-npm-tarball-url/2.1.0/b5a26a66398089b3ec64157d14002ba5f9e39f2abfa9a0c2b2f38618ac542239/node_modules/get-npm-tarball-url/lib/index.mjs
function src_default(pkgName, pkgVersion, opts2) {
  let registry;
  if (opts2 == null ? void 0 : opts2.registry) {
    registry = opts2.registry.endsWith("/") ? opts2.registry : `${opts2.registry}/`;
  } else {
    registry = "https://registry.npmjs.org/";
  }
  const scopelessName = getScopelessName(pkgName);
  return `${registry}${pkgName}/-/${scopelessName}-${removeBuildMetadataFromVersion(pkgVersion)}.tgz`;
}
function removeBuildMetadataFromVersion(version2) {
  const plusPos = version2.indexOf("+");
  if (plusPos === -1)
    return version2;
  return version2.substring(0, plusPos);
}
function getScopelessName(name) {
  if (name[0] !== "@") {
    return name;
  }
  return name.split("/")[1];
}
var init_lib68 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/get-npm-tarball-url/2.1.0/b5a26a66398089b3ec64157d14002ba5f9e39f2abfa9a0c2b2f38618ac542239/node_modules/get-npm-tarball-url/lib/index.mjs"() {
  }
});

// ../lockfile/utils/lib/pkgSnapshotToResolution.js
import url4 from "node:url";
function pkgSnapshotToResolution(depPath, pkgSnapshot, registries) {
  if (Boolean(pkgSnapshot.resolution.type) || pkgSnapshot.resolution.tarball?.startsWith("file:") || pkgSnapshot.resolution.gitHosted === true) {
    return pkgSnapshot.resolution;
  }
  const nonSemverVersion = parse6(depPath).nonSemverVersion;
  if (nonSemverVersion?.startsWith("file:")) {
    return {
      ...pkgSnapshot.resolution,
      tarball: nonSemverVersion
    };
  }
  const { name, version: version2 } = nameVerFromPkgSnapshot(depPath, pkgSnapshot);
  let registry = "";
  if (name != null) {
    if (name[0] === "@") {
      registry = registries[name.split("/")[0]];
    }
  }
  if (!registry) {
    registry = registries.default;
  }
  let tarball;
  if (!pkgSnapshot.resolution.tarball) {
    tarball = getTarball(registry);
  } else {
    tarball = new url4.URL(pkgSnapshot.resolution.tarball, registry.endsWith("/") ? registry : `${registry}/`).toString();
  }
  return {
    ...pkgSnapshot.resolution,
    tarball
  };
  function getTarball(registry2) {
    if (!name || !version2) {
      throw new Error(`Couldn't get tarball URL from dependency path ${depPath}`);
    }
    return src_default(name, version2, { registry: registry2 });
  }
}
var init_pkgSnapshotToResolution = __esm({
  "../lockfile/utils/lib/pkgSnapshotToResolution.js"() {
    "use strict";
    init_lib65();
    init_lib68();
    init_nameVerFromPkgSnapshot();
  }
});

// ../lockfile/utils/lib/refIsLocalTarball.js
function refIsLocalTarball(ref) {
  return ref.startsWith("file:") && (ref.endsWith(".tgz") || ref.endsWith(".tar.gz") || ref.endsWith(".tar"));
}
function refIsLocalDirectory(ref) {
  return ref.startsWith("file:") && !refIsLocalTarball(ref);
}
var init_refIsLocalTarball = __esm({
  "../lockfile/utils/lib/refIsLocalTarball.js"() {
    "use strict";
  }
});

// ../lockfile/utils/lib/toLockfileResolution.js
function toLockfileResolution(pkg, resolution, registry, lockfileIncludeTarballUrl) {
  if (resolution.type !== void 0 || !resolution["integrity"]) {
    return resolution;
  }
  const tarball = resolution["tarball"];
  if (tarball == null) {
    return { integrity: resolution["integrity"] };
  }
  const gitHosted = resolution.gitHosted === true || isGitHostedTarballUrl(tarball);
  if (lockfileIncludeTarballUrl) {
    return preservingGitHosted({
      integrity: resolution["integrity"],
      tarball
    }, gitHosted);
  }
  if (tarball.startsWith("file:") || gitHosted) {
    return preservingGitHosted({
      integrity: resolution["integrity"],
      tarball
    }, gitHosted);
  }
  const expectedTarball = src_default(pkg.name, pkg.version, { registry });
  const actualTarball = tarball.replaceAll("%2f", "/");
  if (removeProtocol(expectedTarball) !== removeProtocol(actualTarball)) {
    return preservingGitHosted({
      integrity: resolution["integrity"],
      tarball
    }, gitHosted);
  }
  return {
    integrity: resolution["integrity"]
  };
}
function preservingGitHosted(resolution, gitHosted) {
  return gitHosted ? { ...resolution, gitHosted: true } : resolution;
}
function isGitHostedTarballUrl(url7) {
  return (url7.startsWith("https://codeload.github.com/") || url7.startsWith("https://bitbucket.org/") || url7.startsWith("https://gitlab.com/")) && url7.includes("tar.gz");
}
function removeProtocol(url7) {
  return url7.split("://")[1];
}
var init_toLockfileResolution = __esm({
  "../lockfile/utils/lib/toLockfileResolution.js"() {
    "use strict";
    init_lib68();
  }
});

// ../lockfile/types/lib/lockfileFileTypes.js
var init_lockfileFileTypes = __esm({
  "../lockfile/types/lib/lockfileFileTypes.js"() {
    "use strict";
  }
});

// ../lockfile/types/lib/index.js
var init_lib69 = __esm({
  "../lockfile/types/lib/index.js"() {
    "use strict";
    init_lockfileFileTypes();
  }
});

// ../lockfile/utils/lib/index.js
var init_lib70 = __esm({
  "../lockfile/utils/lib/index.js"() {
    "use strict";
    init_lib65();
    init_nameVerFromPkgSnapshot();
    init_packageIdFromSnapshot();
    init_packageIsIndependent();
    init_pkgSnapshotToResolution();
    init_refIsLocalTarball();
    init_toLockfileResolution();
    init_lib69();
  }
});

// ../resolving/resolver-base/lib/index.js
function resolvePlatformSelector(supportedArchitectures, host) {
  return {
    os: pickFirstNonCurrent(supportedArchitectures?.os) ?? host.platform,
    cpu: pickFirstNonCurrent(supportedArchitectures?.cpu) ?? host.arch,
    libc: pickFirstNonCurrent(supportedArchitectures?.libc) ?? host.libc
  };
}
function selectPlatformVariant(variants, selector) {
  return variants.find((variant) => variant.targets.some((target2) => target2.os === selector.os && target2.cpu === selector.cpu && libcMatches(target2.libc, selector.libc)));
}
function libcMatches(variantLibc, requestedLibc) {
  if (requestedLibc == null || requestedLibc === "glibc") {
    return variantLibc == null;
  }
  return variantLibc === requestedLibc;
}
function pickFirstNonCurrent(requirements) {
  if (requirements?.length && requirements[0] !== "current") {
    return requirements[0];
  }
  return void 0;
}
var DIRECT_DEP_SELECTOR_WEIGHT, EXISTING_VERSION_SELECTOR_WEIGHT;
var init_lib71 = __esm({
  "../resolving/resolver-base/lib/index.js"() {
    "use strict";
    DIRECT_DEP_SELECTOR_WEIGHT = 1e3;
    EXISTING_VERSION_SELECTOR_WEIGHT = 1e6;
  }
});

// ../deps/graph-hasher/lib/index.js
function extractRuntimeNodeVersion(snapshotKey) {
  const prefix = "node@runtime:";
  if (!snapshotKey.startsWith(prefix))
    return void 0;
  const versionWithPeers = snapshotKey.slice(prefix.length);
  const parenAt = versionWithPeers.indexOf("(");
  return parenAt === -1 ? versionWithPeers : versionWithPeers.slice(0, parenAt);
}
function findRuntimeNodeVersion(snapshotKeys) {
  for (const key of snapshotKeys) {
    const version2 = extractRuntimeNodeVersion(key);
    if (version2 != null)
      return version2;
  }
  return void 0;
}
function readSnapshotRuntimePin(children) {
  const ref = children?.node;
  return ref != null ? extractRuntimeNodeVersion(ref) : void 0;
}
function calcDepState(depsGraph, cache, depPath, opts2) {
  const ownPin = readSnapshotRuntimePin(depsGraph[depPath]?.children);
  let result2 = engineName(ownPin ?? opts2.nodeVersion);
  if (opts2.includeDepGraphHash) {
    const depGraphHash = calcDepGraphHash(depsGraph, cache, /* @__PURE__ */ new Set(), depPath, opts2.supportedArchitectures);
    result2 += `;deps=${depGraphHash}`;
  }
  if (opts2.patchFileHash) {
    result2 += `;patch=${opts2.patchFileHash}`;
  }
  return result2;
}
function calcDepGraphHash(depsGraph, cache, parents, depPath, supportedArchitectures) {
  if (cache[depPath])
    return cache[depPath];
  const node = depsGraph[depPath];
  if (!node)
    return "";
  if (!node.fullPkgId) {
    if (!node.pkgIdWithPatchHash) {
      throw new Error(`pkgIdWithPatchHash is not defined for ${depPath} in depsGraph`);
    }
    if (!node.resolution) {
      throw new Error(`resolution is not defined for ${depPath} in depsGraph`);
    }
    node.fullPkgId = createFullPkgId(node.pkgIdWithPatchHash, node.resolution, supportedArchitectures);
  }
  const deps = {};
  if (Object.keys(node.children).length && !parents.has(node.fullPkgId)) {
    const nextParents = /* @__PURE__ */ new Set([...Array.from(parents), node.fullPkgId]);
    for (const alias in node.children) {
      if (Object.hasOwn(node.children, alias)) {
        const childId = node.children[alias];
        deps[alias] = calcDepGraphHash(depsGraph, cache, nextParents, childId, supportedArchitectures);
      }
    }
  }
  cache[depPath] = hashObject({
    id: node.fullPkgId,
    deps
  });
  return cache[depPath];
}
function* iterateHashedGraphNodes(graph, pkgMetaIterator, allowBuild, supportedArchitectures, nodeVersion) {
  let builtDepPaths;
  let entries;
  if (allowBuild != null) {
    const pkgMetaList = Array.from(pkgMetaIterator);
    builtDepPaths = computeBuiltDepPaths(pkgMetaList, allowBuild);
    entries = pkgMetaList;
  } else {
    entries = pkgMetaIterator;
  }
  const ctx = {
    graph,
    cache: {},
    builtDepPaths,
    buildRequiredCache: builtDepPaths !== void 0 ? {} : void 0,
    supportedArchitectures,
    nodeVersion
  };
  for (const pkgMeta of entries) {
    yield {
      hash: calcGraphNodeHash(ctx, pkgMeta),
      pkgMeta
    };
  }
}
function calcGraphNodeHash({ graph, cache, builtDepPaths, buildRequiredCache, supportedArchitectures, nodeVersion }, pkgMeta) {
  const { name, version: version2, depPath } = pkgMeta;
  const includeEngine = builtDepPaths === void 0 || transitivelyRequiresBuild(graph, builtDepPaths, buildRequiredCache ??= {}, depPath, /* @__PURE__ */ new Set());
  const ownPin = readSnapshotRuntimePin(graph[depPath]?.children);
  const engine = includeEngine ? engineName(ownPin ?? nodeVersion) : null;
  const deps = calcDepGraphHash(graph, cache, /* @__PURE__ */ new Set(), depPath, supportedArchitectures);
  const hexDigest = hashObjectWithoutSorting({ engine, deps }, { encoding: "hex" });
  return formatGlobalVirtualStorePath(name, version2, hexDigest);
}
function calcLeafGlobalVirtualStorePath(fullPkgId, name, version2) {
  const depsHash = hashObject({ id: fullPkgId, deps: {} });
  const hexDigest = hashObjectWithoutSorting({ engine: null, deps: depsHash }, { encoding: "hex" });
  return formatGlobalVirtualStorePath(name, version2, hexDigest);
}
function calcGlobalVirtualStorePathWithSubdeps(fullPkgId, name, version2, subdepIds) {
  const childHashes = {};
  for (const [alias, childFullPkgId] of Object.entries(subdepIds)) {
    childHashes[alias] = hashObject({ id: childFullPkgId, deps: {} });
  }
  const depsHash = hashObject({ id: fullPkgId, deps: childHashes });
  const hexDigest = hashObjectWithoutSorting({ engine: null, deps: depsHash }, { encoding: "hex" });
  return formatGlobalVirtualStorePath(name, version2, hexDigest);
}
function formatGlobalVirtualStorePath(name, version2, hexDigest) {
  const prefix = name.startsWith("@") ? "" : "@/";
  return `${prefix}${name}/${version2}/${hexDigest}`;
}
function* iteratePkgMeta(lockfile, graph) {
  if (lockfile.packages == null) {
    return;
  }
  for (const depPath in lockfile.packages) {
    if (!Object.hasOwn(lockfile.packages, depPath)) {
      continue;
    }
    const pkgSnapshot = lockfile.packages[depPath];
    const { name, version: version2 } = nameVerFromPkgSnapshot(depPath, pkgSnapshot);
    yield {
      name,
      version: version2,
      depPath,
      pkgIdWithPatchHash: graph[depPath]?.pkgIdWithPatchHash ?? getPkgIdWithPatchHash(depPath),
      pkgSnapshot
    };
  }
}
function lockfileToDepGraph(lockfile, supportedArchitectures) {
  const graph = {};
  if (lockfile.packages != null) {
    for (const [depPath, pkgSnapshot] of Object.entries(lockfile.packages)) {
      const children = lockfileDepsToGraphChildren({
        ...pkgSnapshot.dependencies,
        ...pkgSnapshot.optionalDependencies
      });
      graph[depPath] = {
        children,
        fullPkgId: createFullPkgId(getPkgIdWithPatchHash(depPath), pkgSnapshot.resolution, supportedArchitectures)
      };
    }
  }
  return graph;
}
function computeBuiltDepPaths(entries, allowBuild) {
  const builtDepPaths = /* @__PURE__ */ new Set();
  for (const { depPath, name, version: version2 } of entries) {
    if (allowBuild(name, version2) === true) {
      builtDepPaths.add(depPath);
    }
  }
  return builtDepPaths;
}
function transitivelyRequiresBuild(graph, builtDepPaths, cache, depPath, parents) {
  if (depPath in cache)
    return cache[depPath];
  if (builtDepPaths.has(depPath)) {
    cache[depPath] = true;
    return true;
  }
  const node = graph[depPath];
  if (!node) {
    cache[depPath] = false;
    return false;
  }
  if (parents.has(depPath)) {
    return false;
  }
  const nextParents = /* @__PURE__ */ new Set([...parents, depPath]);
  for (const childDepPath of Object.values(node.children)) {
    if (transitivelyRequiresBuild(graph, builtDepPaths, cache, childDepPath, nextParents)) {
      cache[depPath] = true;
      return true;
    }
  }
  cache[depPath] = false;
  return false;
}
function lockfileDepsToGraphChildren(deps) {
  const children = {};
  for (const [alias, reference] of Object.entries(deps)) {
    const depPath = refToRelative(reference, alias);
    if (depPath) {
      children[alias] = depPath;
    }
  }
  return children;
}
function createFullPkgId(pkgIdWithPatchHash, resolution, supportedArchitectures) {
  if ("integrity" in resolution && resolution.integrity != null) {
    return `${pkgIdWithPatchHash}:${resolution.integrity}`;
  }
  if ("type" in resolution && resolution.type === "variations") {
    const selector = resolvePlatformSelector(supportedArchitectures, {
      platform: process.platform,
      arch: process.arch,
      libc: (0, import_detect_libc2.familySync)()
    });
    const variant = selectPlatformVariant(resolution.variants, selector);
    const chosenResolution = variant?.resolution;
    if (chosenResolution && "integrity" in chosenResolution && chosenResolution.integrity != null) {
      return `${pkgIdWithPatchHash}:${chosenResolution.integrity}`;
    }
  }
  return `${pkgIdWithPatchHash}:${hashObject(resolution)}`;
}
var import_detect_libc2;
var init_lib72 = __esm({
  "../deps/graph-hasher/lib/index.js"() {
    "use strict";
    init_lib67();
    init_lib65();
    init_lib27();
    init_lib70();
    init_lib71();
    import_detect_libc2 = __toESM(require_detect_libc(), 1);
  }
});

// ../deps/graph-sequencer/lib/index.js
function graphSequencer(graph, includedNodes = [...graph.keys()]) {
  const reverseGraph2 = /* @__PURE__ */ new Map();
  for (const key of graph.keys()) {
    reverseGraph2.set(key, []);
  }
  const nodes = new Set(includedNodes);
  const visited = /* @__PURE__ */ new Set();
  const outDegree = /* @__PURE__ */ new Map();
  for (const [from5, edges] of graph.entries()) {
    outDegree.set(from5, 0);
    for (const to of edges) {
      if (nodes.has(from5) && nodes.has(to)) {
        changeOutDegree(from5, 1);
        reverseGraph2.get(to).push(from5);
      }
    }
    if (!nodes.has(from5)) {
      visited.add(from5);
    }
  }
  const chunks = [];
  const cycles = [];
  let safe = true;
  while (nodes.size) {
    const chunk = [];
    let minDegree = Number.MAX_SAFE_INTEGER;
    for (const node of nodes) {
      const degree = outDegree.get(node);
      if (degree === 0) {
        chunk.push(node);
      }
      minDegree = Math.min(minDegree, degree);
    }
    if (minDegree === 0) {
      chunk.forEach(removeNode);
      chunks.push(chunk);
    } else {
      const cycleNodes = [];
      for (const node of nodes) {
        const cycle = findCycle(node);
        if (cycle.length) {
          cycles.push(cycle);
          cycle.forEach(removeNode);
          cycleNodes.push(...cycle);
          if (cycle.length > 1) {
            safe = false;
          }
        }
      }
      chunks.push(cycleNodes);
    }
  }
  return { safe, chunks, cycles };
  function changeOutDegree(node, value) {
    const degree = outDegree.get(node) ?? 0;
    outDegree.set(node, degree + value);
  }
  function removeNode(node) {
    for (const from5 of reverseGraph2.get(node)) {
      changeOutDegree(from5, -1);
    }
    visited.add(node);
    nodes.delete(node);
  }
  function findCycle(startNode) {
    const queue2 = [[startNode, [startNode]]];
    const cycleVisited = /* @__PURE__ */ new Set();
    const cycles2 = [];
    while (queue2.length) {
      const [id, cycle] = queue2.shift();
      for (const to of graph.get(id)) {
        if (to === startNode) {
          cycleVisited.add(to);
          cycles2.push([...cycle]);
          continue;
        }
        if (visited.has(to) || cycleVisited.has(to)) {
          continue;
        }
        cycleVisited.add(to);
        queue2.push([to, [...cycle, to]]);
      }
    }
    if (!cycles2.length) {
      return [];
    }
    cycles2.sort((a2, b) => b.length - a2.length);
    return cycles2[0];
  }
}
var init_lib73 = __esm({
  "../deps/graph-sequencer/lib/index.js"() {
    "use strict";
  }
});

// ../config/normalize-registries/lib/index.js
function normalizeRegistries(registries) {
  if (registries == null)
    return DEFAULT_REGISTRIES;
  const normalizeRegistries2 = map_default(import_normalize_registry_url5.default, registries);
  return {
    ...DEFAULT_REGISTRIES,
    ...normalizeRegistries2
  };
}
var import_normalize_registry_url5, DEFAULT_REGISTRIES;
var init_lib74 = __esm({
  "../config/normalize-registries/lib/index.js"() {
    "use strict";
    import_normalize_registry_url5 = __toESM(require_normalize_registry_url(), 1);
    init_es();
    DEFAULT_REGISTRIES = {
      default: "https://registry.npmjs.org/",
      "@jsr": "https://npm.jsr.io/"
    };
  }
});

// ../installing/modules-yaml/lib/index.js
import path63 from "node:path";
async function readModulesManifest(modulesDir) {
  const modulesYamlPath = path63.join(modulesDir, MODULES_FILENAME);
  let modulesRaw;
  try {
    modulesRaw = await readYamlFile(modulesYamlPath);
    if (!modulesRaw)
      return modulesRaw;
  } catch (err) {
    if (err.code !== "ENOENT") {
      throw err;
    }
    return null;
  }
  const modules = {
    ...modulesRaw,
    ignoredBuilds: modulesRaw.ignoredBuilds ? new Set(modulesRaw.ignoredBuilds) : void 0
  };
  if (!modules.virtualStoreDir) {
    modules.virtualStoreDir = path63.join(modulesDir, ".pnpm");
  } else if (!path63.isAbsolute(modules.virtualStoreDir)) {
    modules.virtualStoreDir = path63.join(modulesDir, modules.virtualStoreDir);
  }
  switch (modules.shamefullyHoist) {
    case true:
      if (modules.publicHoistPattern == null) {
        modules.publicHoistPattern = ["*"];
      }
      if (modules.hoistedAliases != null && !modules.hoistedDependencies) {
        modules.hoistedDependencies = map_default((aliases) => Object.fromEntries(aliases.map((alias) => [alias, "public"])), modules.hoistedAliases);
      }
      break;
    case false:
      if (modules.publicHoistPattern == null) {
        modules.publicHoistPattern = [];
      }
      if (modules.hoistedAliases != null && !modules.hoistedDependencies) {
        modules.hoistedDependencies = {};
        for (const depPath of Object.keys(modules.hoistedAliases)) {
          modules.hoistedDependencies[depPath] = {};
          for (const alias of modules.hoistedAliases[depPath]) {
            modules.hoistedDependencies[depPath][alias] = "private";
          }
        }
      }
      break;
  }
  if (!modules.prunedAt) {
    modules.prunedAt = (/* @__PURE__ */ new Date()).toUTCString();
  }
  if (!modules.virtualStoreDirMaxLength) {
    modules.virtualStoreDirMaxLength = 120;
  }
  return modules;
}
async function writeModulesManifest(modulesDir, modules) {
  const modulesYamlPath = path63.join(modulesDir, MODULES_FILENAME);
  const saveModules = { ...modules, ignoredBuilds: modules.ignoredBuilds ? Array.from(modules.ignoredBuilds) : void 0 };
  if (saveModules.skipped)
    saveModules.skipped.sort();
  if (saveModules.hoistPattern == null || saveModules.hoistPattern === "") {
    delete saveModules.hoistPattern;
  }
  if (saveModules.publicHoistPattern == null) {
    delete saveModules.publicHoistPattern;
  }
  if (!saveModules.virtualStoreOnly) {
    delete saveModules.virtualStoreOnly;
  }
  if (saveModules.hoistedAliases == null || saveModules.hoistPattern == null && saveModules.publicHoistPattern == null) {
    delete saveModules.hoistedAliases;
  }
  if (!(0, import_is_windows7.default)()) {
    saveModules.virtualStoreDir = path63.relative(modulesDir, saveModules.virtualStoreDir);
  }
  await lib_default.mkdir(modulesDir, { recursive: true });
  await lib_default.writeFile(modulesYamlPath, JSON.stringify(saveModules, null, 2));
}
var import_is_windows7, MODULES_FILENAME;
var init_lib75 = __esm({
  "../installing/modules-yaml/lib/index.js"() {
    "use strict";
    init_lib12();
    import_is_windows7 = __toESM(require_is_windows(), 1);
    init_es();
    init_read_yaml_file();
    MODULES_FILENAME = ".modules.yaml";
  }
});

// ../object/key-sorting/lib/index.js
function sortDirectKeys(obj) {
  return sortKeys(obj, {
    compare: import_util7.lexCompare,
    deep: false
  });
}
function sortDeepKeys(obj) {
  return sortKeys(obj, {
    compare: import_util7.lexCompare,
    deep: true
  });
}
function sortKeysByPriority(opts2, obj) {
  const compare2 = compareWithPriority.bind(null, opts2.priority);
  return sortKeys(obj, {
    compare: compare2,
    deep: opts2.deep
  });
}
function compareWithPriority(priority, left, right) {
  const leftPriority = priority[left];
  const rightPriority = priority[right];
  if (leftPriority != null && rightPriority != null)
    return leftPriority - rightPriority;
  if (leftPriority != null)
    return -1;
  if (rightPriority != null)
    return 1;
  return (0, import_util7.lexCompare)(left, right);
}
var import_util7;
var init_lib76 = __esm({
  "../object/key-sorting/lib/index.js"() {
    "use strict";
    import_util7 = __toESM(require_dist3(), 1);
    init_sort_keys();
  }
});

// ../lockfile/fs/lib/sortLockfileKeys.js
function sortLockfileKeys(lockfile) {
  if (lockfile.importers != null) {
    lockfile.importers = sortDirectKeys(lockfile.importers);
    for (const [importerId, importer] of Object.entries(lockfile.importers)) {
      lockfile.importers[importerId] = sortKeysByPriority({
        priority: ROOT_KEYS_ORDER,
        deep: true
      }, importer);
    }
  }
  if (lockfile.packages != null) {
    lockfile.packages = sortDirectKeys(lockfile.packages);
    for (const [pkgId, pkg] of Object.entries(lockfile.packages)) {
      lockfile.packages[pkgId] = sortKeysByPriority({
        priority: ORDERED_KEYS,
        deep: true
      }, pkg);
    }
  }
  if (lockfile.snapshots != null) {
    lockfile.snapshots = sortDirectKeys(lockfile.snapshots);
    for (const [pkgId, pkg] of Object.entries(lockfile.snapshots)) {
      lockfile.snapshots[pkgId] = sortKeysByPriority({
        priority: ORDERED_KEYS,
        deep: true
      }, pkg);
    }
  }
  if ("catalogs" in lockfile && lockfile.catalogs != null) {
    lockfile.catalogs = sortDirectKeys(lockfile.catalogs);
    for (const [catalogName, catalog] of Object.entries(lockfile.catalogs)) {
      lockfile.catalogs[catalogName] = sortDeepKeys(catalog);
    }
  }
  if ("time" in lockfile && lockfile.time != null) {
    lockfile.time = sortDirectKeys(lockfile.time);
  }
  if ("patchedDependencies" in lockfile && lockfile.patchedDependencies != null) {
    lockfile.patchedDependencies = sortDirectKeys(lockfile.patchedDependencies);
  }
  return sortKeysByPriority({ priority: ROOT_KEYS_ORDER }, lockfile);
}
var ORDERED_KEYS, ROOT_KEYS, ROOT_KEYS_ORDER;
var init_sortLockfileKeys = __esm({
  "../lockfile/fs/lib/sortLockfileKeys.js"() {
    "use strict";
    init_lib76();
    ORDERED_KEYS = {
      resolution: 1,
      id: 2,
      name: 3,
      version: 4,
      engines: 5,
      cpu: 6,
      os: 7,
      libc: 8,
      deprecated: 9,
      hasBin: 10,
      prepare: 11,
      requiresBuild: 12,
      bundleDependencies: 13,
      peerDependencies: 14,
      peerDependenciesMeta: 15,
      dependencies: 16,
      optionalDependencies: 17,
      transitivePeerDependencies: 18,
      dev: 19,
      optional: 20
    };
    ROOT_KEYS = [
      "lockfileVersion",
      "settings",
      "catalogs",
      "overrides",
      "packageExtensionsChecksum",
      "pnpmfileChecksum",
      "patchedDependencies",
      "importers",
      "packages"
    ];
    ROOT_KEYS_ORDER = Object.fromEntries(ROOT_KEYS.map((key, index) => [key, index]));
  }
});

// ../lockfile/fs/lib/lockfileFormatConverters.js
function isGitHostedTarballUrl2(url7) {
  return (url7.startsWith("https://codeload.github.com/") || url7.startsWith("https://bitbucket.org/") || url7.startsWith("https://gitlab.com/")) && url7.includes("tar.gz");
}
function convertToLockfileFile(lockfile) {
  const packages = {};
  const snapshots = {};
  for (const [depPath, pkg] of Object.entries(lockfile.packages ?? {})) {
    snapshots[depPath] = pick_default([
      "dependencies",
      "optionalDependencies",
      "transitivePeerDependencies",
      "optional",
      "id"
    ], pkg);
    const pkgId = removeSuffix(depPath);
    if (!packages[pkgId]) {
      packages[pkgId] = pick_default([
        "bundledDependencies",
        "cpu",
        "deprecated",
        "engines",
        "hasBin",
        "libc",
        "name",
        "os",
        "peerDependencies",
        "peerDependenciesMeta",
        "resolution",
        "version"
      ], pkg);
    }
  }
  const newLockfile = {
    ...lockfile,
    snapshots,
    packages,
    lockfileVersion: LOCKFILE_VERSION,
    importers: mapValues(lockfile.importers, convertProjectSnapshotToInlineSpecifiersFormat)
  };
  if (newLockfile.settings?.peersSuffixMaxLength === 1e3) {
    newLockfile.settings = omit_default(["peersSuffixMaxLength"], newLockfile.settings);
  }
  if (newLockfile.settings?.injectWorkspacePackages === false) {
    delete newLockfile.settings.injectWorkspacePackages;
  }
  return normalizeLockfile(newLockfile);
}
function normalizeLockfile(lockfile) {
  const lockfileToSave = {
    ...lockfile,
    importers: map_default((importer) => {
      const normalizedImporter = {};
      if (importer.dependenciesMeta != null && !isEmpty_default(importer.dependenciesMeta)) {
        normalizedImporter.dependenciesMeta = importer.dependenciesMeta;
      }
      for (const depType of DEPENDENCIES_FIELDS) {
        if (!isEmpty_default(importer[depType] ?? {})) {
          normalizedImporter[depType] = importer[depType];
        }
      }
      if (importer.publishDirectory) {
        normalizedImporter.publishDirectory = importer.publishDirectory;
      }
      return normalizedImporter;
    }, lockfile.importers ?? {})
  };
  if (isEmpty_default(lockfileToSave.packages) || lockfileToSave.packages == null) {
    delete lockfileToSave.packages;
  }
  if (isEmpty_default(lockfileToSave.snapshots) || lockfileToSave.snapshots == null) {
    delete lockfileToSave.snapshots;
  }
  if (lockfileToSave.time) {
    lockfileToSave.time = pruneTimeInLockfile(lockfileToSave.time, lockfile.importers ?? {});
  }
  if (lockfileToSave.catalogs != null && isEmpty_default(lockfileToSave.catalogs)) {
    delete lockfileToSave.catalogs;
  }
  if (lockfileToSave.overrides != null && isEmpty_default(lockfileToSave.overrides)) {
    delete lockfileToSave.overrides;
  }
  if (lockfileToSave.patchedDependencies != null && isEmpty_default(lockfileToSave.patchedDependencies)) {
    delete lockfileToSave.patchedDependencies;
  }
  if (!lockfileToSave.packageExtensionsChecksum) {
    delete lockfileToSave.packageExtensionsChecksum;
  }
  if (!lockfileToSave.ignoredOptionalDependencies?.length) {
    delete lockfileToSave.ignoredOptionalDependencies;
  }
  if (!lockfileToSave.pnpmfileChecksum) {
    delete lockfileToSave.pnpmfileChecksum;
  }
  return lockfileToSave;
}
function pruneTimeInLockfile(time, importers) {
  const rootDepPaths = /* @__PURE__ */ new Set();
  for (const importer of Object.values(importers)) {
    for (const depType of DEPENDENCIES_FIELDS) {
      for (const [depName, ref] of Object.entries(importer[depType] ?? {})) {
        const suffixStart = ref.version.indexOf("(");
        const refWithoutPeerDepGraphHash = suffixStart === -1 ? ref.version : ref.version.slice(0, suffixStart);
        const depPath = refToRelative(refWithoutPeerDepGraphHash, depName);
        if (!depPath)
          continue;
        rootDepPaths.add(depPath);
      }
    }
  }
  return pickBy_default((_, depPath) => rootDepPaths.has(depPath), time);
}
function convertToLockfileObject(lockfile) {
  const { importers, ...rest } = lockfile;
  const packages = {};
  for (const [depPath, pkg] of Object.entries(lockfile.snapshots ?? {})) {
    const pkgId = removeSuffix(depPath);
    const snapshot = Object.assign(pkg, lockfile.packages?.[pkgId]);
    if (snapshot.resolution == null) {
      const ref = parse6(depPath).nonSemverVersion;
      if (ref != null && ref.startsWith("file:") && !LOCAL_TARBALL_RE.test(ref)) {
        snapshot.resolution = { directory: ref.slice("file:".length), type: "directory" };
      }
    }
    packages[depPath] = snapshot;
    enrichGitHostedFlag(packages[depPath]?.resolution);
  }
  return {
    ...omit_default(["snapshots"], rest),
    patchedDependencies: migratePatchedDependencies(rest.patchedDependencies),
    packages,
    importers: mapValues(importers ?? {}, revertProjectSnapshot)
  };
}
function enrichGitHostedFlag(resolution) {
  if (resolution == null)
    return;
  if (resolution.type !== void 0)
    return;
  if (resolution.gitHosted != null)
    return;
  if (resolution.tarball != null && isGitHostedTarballUrl2(resolution.tarball)) {
    resolution.gitHosted = true;
  }
}
function migratePatchedDependencies(patchedDependencies) {
  if (!patchedDependencies)
    return void 0;
  const result2 = {};
  for (const [key, value] of Object.entries(patchedDependencies)) {
    result2[key] = typeof value === "string" ? value : value.hash;
  }
  return result2;
}
function convertProjectSnapshotToInlineSpecifiersFormat(projectSnapshot) {
  const { specifiers, ...rest } = projectSnapshot;
  if (specifiers == null)
    return projectSnapshot;
  const convertBlock = (block) => block != null ? convertResolvedDependenciesToInlineSpecifiersFormat(block, { specifiers }) : block;
  return {
    ...rest,
    dependencies: convertBlock(projectSnapshot.dependencies ?? {}),
    optionalDependencies: convertBlock(projectSnapshot.optionalDependencies ?? {}),
    devDependencies: convertBlock(projectSnapshot.devDependencies ?? {})
  };
}
function convertResolvedDependenciesToInlineSpecifiersFormat(resolvedDependencies, { specifiers }) {
  return mapValues(resolvedDependencies, (version2, depName) => ({
    specifier: specifiers[depName],
    version: version2
  }));
}
function revertProjectSnapshot(from5) {
  const specifiers = {};
  function moveSpecifiers(from6) {
    const resolvedDependencies = {};
    for (const [depName, { specifier, version: version2 }] of Object.entries(from6)) {
      const existingValue = specifiers[depName];
      if (existingValue != null && existingValue !== specifier) {
        throw new Error(`Project snapshot lists the same dependency more than once with conflicting versions: ${depName}`);
      }
      specifiers[depName] = specifier;
      resolvedDependencies[depName] = version2;
    }
    return resolvedDependencies;
  }
  const dependencies = from5.dependencies == null ? from5.dependencies : moveSpecifiers(from5.dependencies);
  const devDependencies = from5.devDependencies == null ? from5.devDependencies : moveSpecifiers(from5.devDependencies);
  const optionalDependencies = from5.optionalDependencies == null ? from5.optionalDependencies : moveSpecifiers(from5.optionalDependencies);
  return {
    ...from5,
    specifiers,
    dependencies,
    devDependencies,
    optionalDependencies
  };
}
function mapValues(obj, mapper) {
  const result2 = {};
  for (const [key, value] of Object.entries(obj)) {
    result2[key] = mapper(value, key);
  }
  return result2;
}
var LOCAL_TARBALL_RE;
var init_lockfileFormatConverters = __esm({
  "../lockfile/fs/lib/lockfileFormatConverters.js"() {
    "use strict";
    init_lib();
    init_lib65();
    init_lib8();
    init_es();
    LOCAL_TARBALL_RE = /\.(?:tgz|tar\.gz|tar)$/i;
  }
});

// ../lockfile/fs/lib/lockfileName.js
async function getWantedLockfileName(opts2 = { useGitBranchLockfile: false, mergeGitBranchLockfiles: false }) {
  if (opts2.useGitBranchLockfile && !opts2.mergeGitBranchLockfiles) {
    const currentBranchName = await getCurrentBranch();
    if (currentBranchName) {
      return WANTED_LOCKFILE.replace(".yaml", `.${stringifyBranchName(currentBranchName)}.yaml`);
    }
  }
  return WANTED_LOCKFILE;
}
function stringifyBranchName(branchName = "") {
  return branchName.replace(/[^\w.-]/g, "!").toLowerCase();
}
var init_lockfileName = __esm({
  "../lockfile/fs/lib/lockfileName.js"() {
    "use strict";
    init_lib();
    init_lib59();
  }
});

// ../lockfile/fs/lib/logger.js
var lockfileLogger;
var init_logger2 = __esm({
  "../lockfile/fs/lib/logger.js"() {
    "use strict";
    init_lib3();
    lockfileLogger = logger("lockfile");
  }
});

// ../lockfile/fs/lib/yamlDocuments.js
import { createReadStream as createReadStream2 } from "node:fs";
import util17 from "node:util";
async function streamReadFirstYamlDocument(filePath) {
  const stream2 = createReadStream2(filePath, { encoding: "utf8" });
  const chunks = stream2[Symbol.asyncIterator]();
  let buffer3 = "";
  try {
    for (let chunk = await chunks.next(); !chunk.done; chunk = await chunks.next()) {
      if (buffer3.length === 0) {
        buffer3 = stripBom(chunk.value);
      } else {
        buffer3 += chunk.value;
      }
      buffer3 = buffer3.replace(/\r\n/g, "\n");
      if (buffer3.length >= YAML_DOCUMENT_START.length)
        break;
    }
    if (!buffer3.startsWith(YAML_DOCUMENT_START)) {
      stream2.destroy();
      return null;
    }
    while (true) {
      const sep2 = buffer3.indexOf(YAML_DOCUMENT_SEPARATOR, YAML_DOCUMENT_START.length);
      if (sep2 !== -1) {
        stream2.destroy();
        return buffer3.slice(YAML_DOCUMENT_START.length, sep2);
      }
      const chunk = await chunks.next();
      if (chunk.done)
        break;
      buffer3 = (buffer3 + chunk.value).replace(/\r\n/g, "\n");
    }
  } catch (err) {
    if (util17.types.isNativeError(err) && "code" in err && err.code === "ENOENT") {
      return null;
    }
    throw err;
  }
  stream2.destroy();
  return null;
}
function extractMainDocument(content) {
  content = content.replace(/\r\n/g, "\n");
  if (!content.startsWith(YAML_DOCUMENT_START))
    return content;
  const sep2 = content.indexOf(YAML_DOCUMENT_SEPARATOR, YAML_DOCUMENT_START.length);
  if (sep2 === -1)
    return "";
  return content.slice(sep2 + YAML_DOCUMENT_SEPARATOR.length);
}
var YAML_DOCUMENT_SEPARATOR, YAML_DOCUMENT_START;
var init_yamlDocuments = __esm({
  "../lockfile/fs/lib/yamlDocuments.js"() {
    "use strict";
    init_strip_bom();
    YAML_DOCUMENT_SEPARATOR = "\n---\n";
    YAML_DOCUMENT_START = "---\n";
  }
});

// ../lockfile/fs/lib/write.js
import { promises as fs34 } from "node:fs";
import path64 from "node:path";
function lockfileYamlDump(obj) {
  return jsYaml.dump(obj, LOCKFILE_YAML_FORMAT);
}
async function writeWantedLockfile(pkgPath, wantedLockfile, opts2) {
  const wantedLockfileName = opts2?.lockfileName ?? await getWantedLockfileName(opts2);
  return writeLockfile(wantedLockfileName, pkgPath, wantedLockfile);
}
async function writeCurrentLockfile(virtualStoreDir, currentLockfile) {
  if (isEmptyLockfile(currentLockfile)) {
    await rimraf(path64.join(virtualStoreDir, "lock.yaml"));
    return void 0;
  }
  await fs34.mkdir(virtualStoreDir, { recursive: true });
  return writeLockfile("lock.yaml", virtualStoreDir, currentLockfile);
}
async function writeLockfile(lockfileFilename, pkgPath, wantedLockfile) {
  const lockfilePath = path64.join(pkgPath, lockfileFilename);
  const lockfileToStringify = convertToLockfileFile(wantedLockfile);
  const yamlDoc = yamlStringify(lockfileToStringify);
  if (lockfileFilename === WANTED_LOCKFILE) {
    const envDoc = await streamReadFirstYamlDocument(lockfilePath);
    const envPrefix = envDoc != null ? `${YAML_DOCUMENT_START}${envDoc}${YAML_DOCUMENT_SEPARATOR}` : "";
    await (0, import_write_file_atomic5.default)(lockfilePath, `${envPrefix}${yamlDoc}`);
  } else {
    await (0, import_write_file_atomic5.default)(lockfilePath, yamlDoc);
  }
  return convertToLockfileObject(stripUndefinedDeep(lockfileToStringify));
}
function stripUndefinedDeep(value) {
  if (value === null || typeof value !== "object")
    return value;
  if (Array.isArray(value))
    return value.map(stripUndefinedDeep);
  const out = {};
  for (const [k2, v] of Object.entries(value)) {
    if (v === void 0)
      continue;
    out[k2] = stripUndefinedDeep(v);
  }
  return out;
}
function yamlStringify(lockfile) {
  const sortedLockfile = sortLockfileKeys(lockfile);
  return lockfileYamlDump(sortedLockfile);
}
function isEmptyLockfile(lockfile) {
  return Object.values(lockfile.importers).every((importer) => isEmpty_default(importer.specifiers ?? {}) && isEmpty_default(importer.dependencies ?? {}));
}
async function writeLockfiles(opts2) {
  const wantedLockfileName = opts2.wantedLockfileName ?? await getWantedLockfileName(opts2);
  const wantedLockfilePath = path64.join(opts2.wantedLockfileDir, wantedLockfileName);
  const currentLockfilePath = path64.join(opts2.currentLockfileDir, "lock.yaml");
  const wantedLockfileToStringify = convertToLockfileFile(opts2.wantedLockfile);
  const yamlDoc = yamlStringify(wantedLockfileToStringify);
  let envPrefix = "";
  if (wantedLockfileName === WANTED_LOCKFILE) {
    const envDoc = await streamReadFirstYamlDocument(wantedLockfilePath);
    if (envDoc != null) {
      envPrefix = `${YAML_DOCUMENT_START}${envDoc}${YAML_DOCUMENT_SEPARATOR}`;
    }
  }
  const wantedYamlDoc = `${envPrefix}${yamlDoc}`;
  if (opts2.wantedLockfile === opts2.currentLockfile) {
    await Promise.all([
      (0, import_write_file_atomic5.default)(wantedLockfilePath, wantedYamlDoc),
      (async () => {
        if (isEmptyLockfile(opts2.wantedLockfile)) {
          await rimraf(currentLockfilePath);
        } else {
          await fs34.mkdir(path64.dirname(currentLockfilePath), { recursive: true });
          await (0, import_write_file_atomic5.default)(currentLockfilePath, yamlDoc);
        }
      })()
    ]);
    const normalized = convertToLockfileObject(stripUndefinedDeep(wantedLockfileToStringify));
    return {
      wantedLockfile: normalized,
      currentLockfile: isEmptyLockfile(opts2.wantedLockfile) ? void 0 : normalized
    };
  }
  lockfileLogger.debug({
    message: `\`${WANTED_LOCKFILE}\` differs from \`${path64.relative(opts2.wantedLockfileDir, currentLockfilePath)}\``,
    prefix: opts2.wantedLockfileDir
  });
  const currentLockfileToStringify = convertToLockfileFile(opts2.currentLockfile);
  const currentYamlDoc = yamlStringify(currentLockfileToStringify);
  const currentIsEmpty = isEmptyLockfile(opts2.currentLockfile);
  await Promise.all([
    (0, import_write_file_atomic5.default)(wantedLockfilePath, wantedYamlDoc),
    (async () => {
      if (currentIsEmpty) {
        await rimraf(currentLockfilePath);
      } else {
        await fs34.mkdir(path64.dirname(currentLockfilePath), { recursive: true });
        await (0, import_write_file_atomic5.default)(currentLockfilePath, currentYamlDoc);
      }
    })()
  ]);
  return {
    wantedLockfile: convertToLockfileObject(stripUndefinedDeep(wantedLockfileToStringify)),
    currentLockfile: currentIsEmpty ? void 0 : convertToLockfileObject(stripUndefinedDeep(currentLockfileToStringify))
  };
}
var import_write_file_atomic5, LOCKFILE_YAML_FORMAT;
var init_write = __esm({
  "../lockfile/fs/lib/write.js"() {
    "use strict";
    init_lib();
    init_rimraf();
    init_js_yaml();
    init_es();
    import_write_file_atomic5 = __toESM(require_lib2(), 1);
    init_lockfileFormatConverters();
    init_lockfileName();
    init_logger2();
    init_sortLockfileKeys();
    init_yamlDocuments();
    LOCKFILE_YAML_FORMAT = {
      blankLines: true,
      lineWidth: -1,
      noCompatMode: true,
      noRefs: true,
      sortKeys: false
    };
  }
});

// ../lockfile/fs/lib/envLockfile.js
import { promises as fs35 } from "node:fs";
import path65 from "node:path";
import util18 from "node:util";
function createEnvLockfile() {
  return {
    lockfileVersion: LOCKFILE_VERSION,
    importers: {
      ".": {
        configDependencies: {}
      }
    },
    packages: {},
    snapshots: {}
  };
}
async function readEnvLockfile(rootDir) {
  const lockfilePath = path65.join(rootDir, WANTED_LOCKFILE);
  const rawContent = await streamReadFirstYamlDocument(lockfilePath);
  if (rawContent == null) {
    return null;
  }
  const parsed = jsYaml.load(rawContent);
  if (parsed == null || typeof parsed !== "object") {
    return null;
  }
  const lockfile = parsed;
  if (typeof lockfile.lockfileVersion !== "string") {
    return null;
  }
  if (lockfile.importers == null || typeof lockfile.importers !== "object") {
    return null;
  }
  if (lockfile.packages == null || typeof lockfile.packages !== "object") {
    return null;
  }
  if (lockfile.snapshots == null || typeof lockfile.snapshots !== "object") {
    return null;
  }
  const envLockfile = parsed;
  if (!envLockfile.importers["."]) {
    envLockfile.importers["."] = { configDependencies: {} };
  } else if (!envLockfile.importers["."].configDependencies) {
    envLockfile.importers["."].configDependencies = {};
  }
  return envLockfile;
}
async function writeEnvLockfile(rootDir, lockfile) {
  const lockfilePath = path65.join(rootDir, WANTED_LOCKFILE);
  const sorted = sortLockfileKeys(lockfile);
  const envYaml = lockfileYamlDump(sorted);
  let mainDoc = "";
  try {
    const existing = await fs35.readFile(lockfilePath, "utf8");
    mainDoc = extractMainDocument(existing);
  } catch (err) {
    if (!(util18.types.isNativeError(err) && "code" in err && err.code === "ENOENT")) {
      throw err;
    }
  }
  const combined = `---
${envYaml}
---
${mainDoc}`;
  return (0, import_write_file_atomic6.default)(lockfilePath, combined);
}
var import_write_file_atomic6;
var init_envLockfile = __esm({
  "../lockfile/fs/lib/envLockfile.js"() {
    "use strict";
    init_lib();
    init_js_yaml();
    import_write_file_atomic6 = __toESM(require_lib2(), 1);
    init_sortLockfileKeys();
    init_write();
    init_yamlDocuments();
  }
});

// ../lockfile/fs/lib/existsWantedLockfile.js
import fs36 from "node:fs";
import path66 from "node:path";
async function existsNonEmptyWantedLockfile(pkgPath, opts2 = {
  useGitBranchLockfile: false,
  mergeGitBranchLockfiles: false
}) {
  const wantedLockfile = await getWantedLockfileName(opts2);
  return new Promise((resolve3, reject3) => {
    fs36.access(path66.join(pkgPath, wantedLockfile), (err) => {
      if (err == null) {
        resolve3(true);
        return;
      }
      if (err.code === "ENOENT") {
        resolve3(false);
        return;
      }
      reject3(err);
    });
  });
}
var init_existsWantedLockfile = __esm({
  "../lockfile/fs/lib/existsWantedLockfile.js"() {
    "use strict";
    init_lockfileName();
  }
});

// ../lockfile/fs/lib/getLockfileImporterId.js
import path67 from "node:path";
function getLockfileImporterId(lockfileDir, prefix) {
  return (0, import_normalize_path4.default)(path67.relative(lockfileDir, prefix)) || ".";
}
var import_normalize_path4;
var init_getLockfileImporterId = __esm({
  "../lockfile/fs/lib/getLockfileImporterId.js"() {
    "use strict";
    import_normalize_path4 = __toESM(require_normalize_path(), 1);
  }
});

// ../lockfile/fs/lib/gitBranchLockfile.js
import { promises as fs37 } from "node:fs";
import path68 from "node:path";
async function getGitBranchLockfileNames(lockfileDir) {
  const files = await fs37.readdir(lockfileDir);
  const gitBranchLockfileNames = files.filter((file) => file.match(/^pnpm-lock.(?:.*).yaml$/));
  return gitBranchLockfileNames;
}
async function cleanGitBranchLockfiles(lockfileDir) {
  const gitBranchLockfiles = await getGitBranchLockfileNames(lockfileDir);
  await Promise.all(gitBranchLockfiles.map(async (file) => {
    const filepath = path68.join(lockfileDir, file);
    await fs37.unlink(filepath);
  }));
}
var init_gitBranchLockfile = __esm({
  "../lockfile/fs/lib/gitBranchLockfile.js"() {
    "use strict";
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/comver-to-semver/2.0.0/5c36e9dd358b83d2f79ddbeed454399fdbe4f968cfda5cea2a62e13701556a51/node_modules/comver-to-semver/index.js
function comverToSemver(comver) {
  if (!comver.includes(".")) return `${comver}.0.0`;
  return `${comver}.0`;
}
var init_comver_to_semver = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/comver-to-semver/2.0.0/5c36e9dd358b83d2f79ddbeed454399fdbe4f968cfda5cea2a62e13701556a51/node_modules/comver-to-semver/index.js"() {
  }
});

// ../lockfile/merger/lib/index.js
function mergeLockfileChanges(ours, theirs) {
  const newLockfile = {
    importers: {},
    lockfileVersion: import_semver20.default.gt(comverToSemver(theirs.lockfileVersion.toString()), comverToSemver(ours.lockfileVersion.toString())) ? theirs.lockfileVersion : ours.lockfileVersion
  };
  const pnpmfileChecksum = ours.pnpmfileChecksum ?? theirs.pnpmfileChecksum;
  if (pnpmfileChecksum) {
    newLockfile.pnpmfileChecksum = pnpmfileChecksum;
  }
  const ignoredOptionalDependencies = [.../* @__PURE__ */ new Set([
    ...ours.ignoredOptionalDependencies ?? [],
    ...theirs.ignoredOptionalDependencies ?? []
  ])];
  if (ignoredOptionalDependencies.length) {
    newLockfile.ignoredOptionalDependencies = ignoredOptionalDependencies;
  }
  for (const importerId of Array.from(/* @__PURE__ */ new Set([...Object.keys(ours.importers), ...Object.keys(theirs.importers)]))) {
    newLockfile.importers[importerId] = {
      specifiers: {}
    };
    for (const key of ["dependencies", "devDependencies", "optionalDependencies"]) {
      newLockfile.importers[importerId][key] = mergeDict(ours.importers[importerId]?.[key] ?? {}, theirs.importers[importerId]?.[key] ?? {}, mergeVersions);
      if (Object.keys(newLockfile.importers[importerId][key] ?? {}).length === 0) {
        delete newLockfile.importers[importerId][key];
      }
    }
    newLockfile.importers[importerId].specifiers = mergeDict(ours.importers[importerId]?.specifiers ?? {}, theirs.importers[importerId]?.specifiers ?? {}, takeChangedValue);
  }
  const packages = {};
  for (const depPath of Array.from(/* @__PURE__ */ new Set([...Object.keys(ours.packages ?? {}), ...Object.keys(theirs.packages ?? {})]))) {
    const ourPkg = ours.packages?.[depPath];
    const theirPkg = theirs.packages?.[depPath];
    const pkg = {
      ...ourPkg,
      ...theirPkg
    };
    for (const key of ["dependencies", "optionalDependencies"]) {
      pkg[key] = mergeDict(ourPkg?.[key] ?? {}, theirPkg?.[key] ?? {}, mergeVersions);
      if (Object.keys(pkg[key] ?? {}).length === 0) {
        delete pkg[key];
      }
    }
    packages[depPath] = pkg;
  }
  newLockfile.packages = packages;
  return newLockfile;
}
function mergeDict(ourDict, theirDict, valueMerger) {
  const newDict = {};
  for (const key of Object.keys(ourDict).concat(Object.keys(theirDict))) {
    const changedValue = valueMerger(ourDict[key], theirDict[key]);
    if (changedValue) {
      newDict[key] = changedValue;
    }
  }
  return newDict;
}
function takeChangedValue(ourValue, theirValue) {
  if (ourValue === theirValue || theirValue == null)
    return ourValue;
  return theirValue;
}
function mergeVersions(ourValue, theirValue) {
  if (ourValue === theirValue || !theirValue)
    return ourValue;
  if (!ourValue)
    return theirValue;
  const [ourVersion] = ourValue.split("(");
  const [theirVersion] = theirValue.split("(");
  const validOurVersion = import_semver20.default.valid(ourVersion);
  const validTheirVersion = import_semver20.default.valid(theirVersion);
  if (validOurVersion && validTheirVersion) {
    return import_semver20.default.gt(ourVersion, theirVersion) ? ourValue : theirValue;
  }
  return theirValue;
}
var import_semver20;
var init_lib77 = __esm({
  "../lockfile/merger/lib/index.js"() {
    "use strict";
    init_comver_to_semver();
    import_semver20 = __toESM(require_semver2(), 1);
  }
});

// ../lockfile/fs/lib/errors/LockfileBreakingChangeError.js
var LockfileBreakingChangeError;
var init_LockfileBreakingChangeError = __esm({
  "../lockfile/fs/lib/errors/LockfileBreakingChangeError.js"() {
    "use strict";
    init_lib2();
    LockfileBreakingChangeError = class extends PnpmError {
      filename;
      constructor(filename) {
        super("LOCKFILE_BREAKING_CHANGE", `Lockfile ${filename} not compatible with current pnpm`);
        this.filename = filename;
      }
    };
  }
});

// ../lockfile/fs/lib/errors/index.js
var init_errors = __esm({
  "../lockfile/fs/lib/errors/index.js"() {
    "use strict";
    init_LockfileBreakingChangeError();
  }
});

// ../lockfile/fs/lib/gitMergeFile.js
function autofixMergeConflicts(fileContent) {
  const { ours, theirs } = parseMergeFile(fileContent);
  return mergeLockfileChanges(convertToLockfileObject(jsYaml.load(ours)), convertToLockfileObject(jsYaml.load(theirs)));
}
function parseMergeFile(fileContent) {
  const lines = fileContent.split(/[\n\r]+/);
  let state = "top";
  const ours = [];
  const theirs = [];
  while (lines.length > 0) {
    const line = lines.shift();
    if (line.startsWith(MERGE_CONFLICT_PARENT)) {
      state = "parent";
      continue;
    }
    if (line.startsWith(MERGE_CONFLICT_OURS)) {
      state = "ours";
      continue;
    }
    if (line === MERGE_CONFLICT_THEIRS) {
      state = "theirs";
      continue;
    }
    if (line.startsWith(MERGE_CONFLICT_END)) {
      state = "top";
      continue;
    }
    if (state === "top" || state === "ours")
      ours.push(line);
    if (state === "top" || state === "theirs")
      theirs.push(line);
  }
  return { ours: ours.join("\n"), theirs: theirs.join("\n") };
}
function isDiff(fileContent) {
  return fileContent.includes(MERGE_CONFLICT_OURS) && fileContent.includes(MERGE_CONFLICT_THEIRS) && fileContent.includes(MERGE_CONFLICT_END);
}
var MERGE_CONFLICT_PARENT, MERGE_CONFLICT_END, MERGE_CONFLICT_THEIRS, MERGE_CONFLICT_OURS;
var init_gitMergeFile = __esm({
  "../lockfile/fs/lib/gitMergeFile.js"() {
    "use strict";
    init_lib77();
    init_js_yaml();
    init_lockfileFormatConverters();
    MERGE_CONFLICT_PARENT = "|||||||";
    MERGE_CONFLICT_END = ">>>>>>>";
    MERGE_CONFLICT_THEIRS = "=======";
    MERGE_CONFLICT_OURS = "<<<<<<<";
  }
});

// ../lockfile/fs/lib/read.js
import fs38, { promises as fsp } from "node:fs";
import path69 from "node:path";
import util19 from "node:util";
async function readCurrentLockfile(pnpmInternalDir, opts2) {
  const lockfilePath = path69.join(pnpmInternalDir, "lock.yaml");
  return (await _read(lockfilePath, pnpmInternalDir, opts2)).lockfile;
}
async function readWantedLockfileAndAutofixConflicts(pkgPath, opts2) {
  return _readWantedLockfile(pkgPath, {
    ...opts2,
    autofixMergeConflicts: true
  });
}
async function readWantedLockfile(pkgPath, opts2) {
  return (await _readWantedLockfile(pkgPath, opts2)).lockfile;
}
function wantedLockfileHasMergeConflictsSync(pkgPath) {
  try {
    const lockfileRawContent = stripBom(fs38.readFileSync(path69.join(pkgPath, WANTED_LOCKFILE), "utf8"));
    return isDiff(extractMainDocument(lockfileRawContent));
  } catch (err) {
    if (util19.types.isNativeError(err) && "code" in err && err.code === "ENOENT") {
      return false;
    }
    throw err;
  }
}
async function _read(lockfilePath, prefix, opts2) {
  let lockfileRawContent;
  try {
    lockfileRawContent = stripBom(await fsp.readFile(lockfilePath, "utf8"));
  } catch (err) {
    if (!(util19.types.isNativeError(err) && "code" in err && err.code === "ENOENT")) {
      throw err;
    }
    return {
      lockfile: null,
      hadConflicts: false
    };
  }
  lockfileRawContent = extractMainDocument(lockfileRawContent);
  if (!lockfileRawContent.trim()) {
    return {
      lockfile: null,
      hadConflicts: false
    };
  }
  let lockfile;
  let hadConflicts;
  try {
    lockfile = convertToLockfileObject(jsYaml.load(lockfileRawContent));
    hadConflicts = false;
  } catch (err) {
    if (!opts2.autofixMergeConflicts || !isDiff(lockfileRawContent)) {
      throw new PnpmError("BROKEN_LOCKFILE", `The lockfile at "${lockfilePath}" is broken: ${err.message}`);
    }
    hadConflicts = true;
    lockfile = autofixMergeConflicts(lockfileRawContent);
    lockfileLogger.info({
      message: `Merge conflict detected in ${WANTED_LOCKFILE} and successfully merged`,
      prefix
    });
  }
  if (lockfile) {
    const lockfileSemver = comverToSemver((lockfile.lockfileVersion ?? 0).toString());
    if (!opts2.wantedVersions || opts2.wantedVersions.length === 0 || opts2.wantedVersions.some((wantedVersion) => {
      if (import_semver21.default.major(lockfileSemver) !== import_semver21.default.major(comverToSemver(wantedVersion)))
        return false;
      if (lockfile.lockfileVersion !== "6.1" && import_semver21.default.gt(lockfileSemver, comverToSemver(wantedVersion))) {
        lockfileLogger.warn({
          message: `Your ${WANTED_LOCKFILE} was generated by a newer version of pnpm. It is a compatible version but it might get downgraded to version ${wantedVersion}`,
          prefix
        });
      }
      return true;
    })) {
      return { lockfile, hadConflicts };
    }
  }
  if (opts2.ignoreIncompatible) {
    lockfileLogger.warn({
      message: `Ignoring not compatible lockfile at ${lockfilePath}`,
      prefix
    });
    return { lockfile: null, hadConflicts: false };
  }
  throw new LockfileBreakingChangeError(lockfilePath);
}
function createLockfileObject(importerIds, opts2) {
  const importers = {};
  for (const importerId of importerIds) {
    importers[importerId] = {
      dependencies: {},
      specifiers: {}
    };
  }
  return {
    importers,
    lockfileVersion: opts2.lockfileVersion || LOCKFILE_VERSION,
    settings: {
      autoInstallPeers: opts2.autoInstallPeers,
      excludeLinksFromLockfile: opts2.excludeLinksFromLockfile,
      peersSuffixMaxLength: opts2.peersSuffixMaxLength
    }
  };
}
async function _readWantedLockfile(pkgPath, opts2) {
  const lockfileNames = [WANTED_LOCKFILE];
  if (opts2.useGitBranchLockfile) {
    const gitBranchLockfileName = await getWantedLockfileName(opts2);
    if (gitBranchLockfileName !== WANTED_LOCKFILE) {
      lockfileNames.unshift(gitBranchLockfileName);
    }
  }
  let result2 = { lockfile: null, hadConflicts: false };
  for (const lockfileName of lockfileNames) {
    result2 = await _read(path69.join(pkgPath, lockfileName), pkgPath, { ...opts2, autofixMergeConflicts: true });
    if (result2.lockfile) {
      if (opts2.mergeGitBranchLockfiles) {
        result2.lockfile = await _mergeGitBranchLockfiles(result2.lockfile, pkgPath, pkgPath, opts2);
      }
      break;
    }
  }
  return result2;
}
async function _mergeGitBranchLockfiles(lockfile, lockfileDir, prefix, opts2) {
  if (!lockfile) {
    return lockfile;
  }
  const gitBranchLockfiles = (await _readGitBranchLockfiles(lockfileDir, prefix, opts2)).map(({ lockfile: lockfile2 }) => lockfile2);
  let mergedLockfile = lockfile;
  for (const gitBranchLockfile of gitBranchLockfiles) {
    if (!gitBranchLockfile) {
      continue;
    }
    mergedLockfile = mergeLockfileChanges(mergedLockfile, gitBranchLockfile);
  }
  return mergedLockfile;
}
async function _readGitBranchLockfiles(lockfileDir, prefix, opts2) {
  const files = await getGitBranchLockfileNames(lockfileDir);
  return Promise.all(files.map((file) => _read(path69.join(lockfileDir, file), prefix, opts2)));
}
var import_semver21;
var init_read = __esm({
  "../lockfile/fs/lib/read.js"() {
    "use strict";
    init_lib();
    init_lib2();
    init_lib77();
    init_comver_to_semver();
    init_js_yaml();
    import_semver21 = __toESM(require_semver2(), 1);
    init_strip_bom();
    init_errors();
    init_gitBranchLockfile();
    init_gitMergeFile();
    init_lockfileFormatConverters();
    init_lockfileName();
    init_logger2();
    init_yamlDocuments();
  }
});

// ../lockfile/fs/lib/index.js
var init_lib78 = __esm({
  "../lockfile/fs/lib/index.js"() {
    "use strict";
    init_envLockfile();
    init_existsWantedLockfile();
    init_getLockfileImporterId();
    init_gitBranchLockfile();
    init_lockfileFormatConverters();
    init_lockfileName();
    init_read();
    init_write();
    init_yamlDocuments();
    init_lib69();
  }
});

// ../installing/read-projects-context/lib/index.js
import { promises as fs39 } from "node:fs";
import path70 from "node:path";
import util20 from "node:util";
async function readProjectsContext(projects, opts2) {
  const modulesDirOpt = opts2.modulesDir ?? "node_modules";
  const rootModulesDir = await realpathMissing(pathAbsolute(modulesDirOpt, opts2.lockfileDir));
  const modules = await readModulesManifest(rootModulesDir);
  return {
    currentHoistPattern: modules?.hoistPattern,
    currentPublicHoistPattern: modules?.publicHoistPattern,
    hoist: modules == null ? void 0 : Boolean(modules.hoistPattern),
    hoistedDependencies: modules?.hoistedDependencies ?? {},
    include: modules?.included ?? { dependencies: true, devDependencies: true, optionalDependencies: true },
    modules,
    pendingBuilds: modules?.pendingBuilds ?? [],
    projects: await Promise.all(projects.map(async (project) => {
      const modulesDir = await realpathMissing(pathAbsolute(project.modulesDir ?? modulesDirOpt, project.rootDir));
      const importerId = getLockfileImporterId(opts2.lockfileDir, project.rootDir);
      return {
        ...project,
        binsDir: project.binsDir ?? path70.join(modulesDir, ".bin"),
        id: importerId,
        modulesDir,
        rootDirRealPath: project.rootDirRealPath ?? await realpath2(project.rootDir)
      };
    })),
    registries: modules?.registries != null ? normalizeRegistries(modules.registries) : void 0,
    rootModulesDir,
    skipped: new Set(modules?.skipped ?? []),
    virtualStoreDirMaxLength: modules?.virtualStoreDirMaxLength
  };
}
async function realpath2(path218) {
  try {
    return await fs39.realpath(path218);
  } catch (err) {
    if (util20.types.isNativeError(err) && "code" in err && err.code === "ENOENT") {
      return path218;
    }
    throw err;
  }
}
var init_lib79 = __esm({
  "../installing/read-projects-context/lib/index.js"() {
    "use strict";
    init_lib74();
    init_lib75();
    init_lib78();
    init_path_absolute();
    init_realpath_missing();
  }
});

// ../fetching/pick-fetcher/lib/index.js
async function pickFetcher(fetcherByHostingType, resolution, opts2) {
  if (opts2?.customFetchers && opts2.customFetchers.length > 0) {
    for (const customFetcher of opts2.customFetchers) {
      if (customFetcher.canFetch && customFetcher.fetch) {
        const canFetch = await customFetcher.canFetch(opts2.packageId, resolution);
        if (canFetch) {
          return async (cafs, resolution2, fetchOpts) => {
            return customFetcher.fetch(cafs, resolution2, fetchOpts, fetcherByHostingType);
          };
        }
      }
    }
  }
  let fetcherType;
  if (resolution.type == null) {
    if ("tarball" in resolution && resolution.tarball) {
      if (resolution.tarball.startsWith("file:")) {
        fetcherType = "localTarball";
      } else if ("gitHosted" in resolution && resolution.gitHosted === true || // URL fallback for resolutions that didn't go through the resolver or
      // the lockfile loader (e.g., constructed ad-hoc).
      isGitHostedPkgUrl(resolution.tarball)) {
        fetcherType = "gitHostedTarball";
      } else {
        fetcherType = "remoteTarball";
      }
    }
  } else if (resolution.type === "directory" || resolution.type === "git" || resolution.type === "binary") {
    fetcherType = resolution.type;
  } else {
    throw new PnpmError("UNSUPPORTED_RESOLUTION_TYPE", `Cannot fetch dependency with custom resolution type "${resolution.type}". Custom resolutions must be handled by custom fetchers.`);
  }
  const fetch2 = fetcherType != null ? fetcherByHostingType[fetcherType] : void 0;
  if (!fetch2) {
    throw new Error(`Fetching for dependency type "${resolution.type ?? "tarball"}" is not supported`);
  }
  return fetch2;
}
function isGitHostedPkgUrl(url7) {
  return (url7.startsWith("https://codeload.github.com/") || url7.startsWith("https://bitbucket.org/") || url7.startsWith("https://gitlab.com/")) && url7.includes("tar.gz");
}
var init_lib80 = __esm({
  "../fetching/pick-fetcher/lib/index.js"() {
    "use strict";
    init_lib2();
  }
});

// ../store/cafs/lib/parseJson.js
function parseJsonBufferSync(buffer3) {
  return JSON.parse(stripBom(buffer3.toString()));
}
var init_parseJson = __esm({
  "../store/cafs/lib/parseJson.js"() {
    "use strict";
    init_strip_bom();
  }
});

// ../store/cafs/lib/addFilesFromDir.js
import fs40, {} from "node:fs";
import path71 from "node:path";
import util21 from "node:util";
function addFilesFromDir2(addBuffer, dirname2, opts2 = {}) {
  const filesIndex = /* @__PURE__ */ new Map();
  let manifest;
  let files;
  const resolvedRoot = fs40.realpathSync(dirname2);
  if (opts2.files) {
    files = [];
    for (const file of opts2.files) {
      const absolutePath = path71.join(dirname2, file);
      const stat2 = getStatIfContained(absolutePath, resolvedRoot);
      if (!stat2) {
        continue;
      }
      files.push({
        absolutePath,
        relativePath: file,
        stat: stat2
      });
    }
  } else {
    files = findFilesInDir(dirname2, resolvedRoot, opts2);
  }
  for (const { absolutePath, relativePath, stat: stat2 } of files) {
    const buffer3 = lib_default.readFileSync(absolutePath);
    if (opts2.readManifest && relativePath === "package.json") {
      manifest = parseJsonBufferSync(buffer3);
    }
    const mode = stat2.mode & 511;
    filesIndex.set(relativePath, {
      mode,
      size: stat2.size,
      ...addBuffer(buffer3, mode)
    });
  }
  return { manifest, filesIndex };
}
function getStatIfContained(absolutePath, rootDir) {
  let lstat;
  try {
    lstat = fs40.lstatSync(absolutePath);
  } catch (err) {
    if (util21.types.isNativeError(err) && "code" in err && err.code === "ENOENT") {
      return null;
    }
    throw err;
  }
  if (lstat.isSymbolicLink()) {
    return getSymlinkStatIfContained(absolutePath, rootDir)?.stat ?? null;
  }
  return lstat;
}
function getSymlinkStatIfContained(absolutePath, rootDir) {
  let realPath;
  try {
    realPath = fs40.realpathSync(absolutePath);
  } catch (err) {
    if (util21.types.isNativeError(err) && "code" in err && err.code === "ENOENT") {
      return null;
    }
    throw err;
  }
  if (!isSubdir(rootDir, realPath)) {
    return null;
  }
  return { stat: fs40.statSync(realPath), realPath };
}
function findFilesInDir(dir, rootDir, opts2) {
  const files = [];
  const ctx = {
    filesList: files,
    includeNodeModules: opts2.includeNodeModules ?? false,
    rootDir,
    visited: /* @__PURE__ */ new Set([rootDir])
  };
  findFiles2(ctx, dir, "", rootDir);
  return files;
}
function findFiles2(ctx, dir, relativeDir, currentRealPath) {
  const files = fs40.readdirSync(dir, { withFileTypes: true });
  for (const file of files) {
    const relativeSubdir = `${relativeDir}${relativeDir ? "/" : ""}${file.name}`;
    const absolutePath = path71.join(dir, file.name);
    let nextRealDir;
    if (file.isSymbolicLink()) {
      const res = getSymlinkStatIfContained(absolutePath, ctx.rootDir);
      if (!res) {
        continue;
      }
      if (res.stat.isDirectory()) {
        nextRealDir = res.realPath;
      } else {
        ctx.filesList.push({
          relativePath: relativeSubdir,
          absolutePath,
          stat: res.stat
        });
        continue;
      }
    } else if (file.isDirectory()) {
      nextRealDir = path71.join(currentRealPath, file.name);
    }
    if (nextRealDir) {
      if (ctx.visited.has(nextRealDir))
        continue;
      if (relativeDir !== "" || file.name !== "node_modules" || ctx.includeNodeModules) {
        ctx.visited.add(nextRealDir);
        findFiles2(ctx, absolutePath, relativeSubdir, nextRealDir);
        ctx.visited.delete(nextRealDir);
      }
      continue;
    }
    let stat2;
    try {
      stat2 = fs40.statSync(absolutePath);
    } catch (err) {
      if (util21.types.isNativeError(err) && "code" in err && err.code === "ENOENT") {
        continue;
      }
      throw err;
    }
    ctx.filesList.push({
      relativePath: relativeSubdir,
      absolutePath,
      stat: stat2
    });
  }
}
var init_addFilesFromDir = __esm({
  "../store/cafs/lib/addFilesFromDir.js"() {
    "use strict";
    init_lib12();
    init_is_subdir();
    init_parseJson();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/is-gzip/2.0.0/82a8e17050fa38e95e62aa7580ddf517da43682e2ea1a94728382ef43c644d04/node_modules/is-gzip/index.js
var require_is_gzip = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/is-gzip/2.0.0/82a8e17050fa38e95e62aa7580ddf517da43682e2ea1a94728382ef43c644d04/node_modules/is-gzip/index.js"(exports2, module2) {
    "use strict";
    module2.exports = (buf) => {
      if (!buf || buf.length < 3) {
        return false;
      }
      return buf[0] === 31 && buf[1] === 139 && buf[2] === 8;
    };
  }
});

// ../store/cafs/lib/parseTarball.js
import path72 from "node:path";
function parseTarball(buffer3) {
  const files = /* @__PURE__ */ new Map();
  let pathTrimmed = false;
  let mode = 0;
  let fileSize = 0;
  let fileType = 0;
  let prefix = "";
  let fileName = "";
  let longLinkPath = "";
  let paxHeaderPath = "";
  let paxHeaderFileSize;
  let blockBytes = 0;
  let blockStart = 0;
  while (buffer3[blockStart] !== 0) {
    fileType = buffer3[blockStart + FILE_TYPE_OFFSET];
    if (paxHeaderFileSize !== void 0) {
      fileSize = paxHeaderFileSize;
      paxHeaderFileSize = void 0;
    } else {
      fileSize = parseOctal(blockStart + FILE_SIZE_OFFSET, 12);
    }
    blockBytes = (fileSize & ~511) + (fileSize & 511 ? 1024 : 512);
    const expectedCheckSum = parseOctal(blockStart + CHECKSUM_OFFSET, 8);
    const actualCheckSum = checkSum(blockStart);
    if (expectedCheckSum !== actualCheckSum) {
      throw new Error(`Invalid checksum for TAR header at offset ${blockStart}. Expected ${expectedCheckSum}, got ${actualCheckSum}`);
    }
    pathTrimmed = false;
    if (longLinkPath) {
      fileName = longLinkPath;
      longLinkPath = "";
    } else if (paxHeaderPath) {
      fileName = paxHeaderPath;
      paxHeaderPath = "";
    } else {
      prefix = parseString2(blockStart + PREFIX_OFFSET, 155);
      if (prefix && !pathTrimmed) {
        pathTrimmed = true;
        prefix = "";
      }
      fileName = parseString2(blockStart, MODE_OFFSET);
      if (prefix) {
        fileName = `${prefix}/${fileName}`;
      }
    }
    if (fileName.includes("./") || fileName.includes(".\\")) {
      fileName = path72.posix.join("/", fileName.replaceAll("\\", "/")).slice(1);
    }
    switch (fileType) {
      case 0:
      case ZERO:
      case FILE_TYPE_HARD_LINK:
        mode = parseOctal(blockStart + MODE_OFFSET, 8);
        files.set(fileName.replaceAll("//", "/"), { offset: blockStart + 512, mode, size: fileSize });
        break;
      case FILE_TYPE_DIRECTORY:
      case FILE_TYPE_SYMLINK:
        break;
      case FILE_TYPE_PAX_HEADER:
        parsePaxHeader(blockStart + 512, fileSize, false);
        break;
      case FILE_TYPE_PAX_GLOBAL_HEADER:
        parsePaxHeader(blockStart + 512, fileSize, true);
        break;
      case FILE_TYPE_LONGLINK: {
        longLinkPath = buffer3.toString("utf8", blockStart + 512, blockStart + 512 + fileSize).replace(/\0.*/, "");
        const slashIndex = longLinkPath.indexOf("/");
        if (slashIndex >= 0) {
          longLinkPath = longLinkPath.slice(slashIndex + 1);
        }
        break;
      }
      default:
        throw new Error(`Unsupported file type ${fileType} for file ${fileName}.`);
    }
    blockStart += blockBytes;
  }
  return { files, buffer: buffer3.buffer };
  function checkSum(offset) {
    let sum = 256;
    let i2 = offset;
    const checksumStart = offset + 148;
    const checksumEnd = offset + 156;
    const blockEnd = offset + 512;
    for (; i2 < checksumStart; i2++) {
      sum += buffer3[i2];
    }
    for (i2 = checksumEnd; i2 < blockEnd; i2++) {
      sum += buffer3[i2];
    }
    return sum;
  }
  function parsePaxHeader(offset, length, global3) {
    const end = offset + length;
    let i2 = offset;
    while (i2 < end) {
      const lineStart = i2;
      while (i2 < end && buffer3[i2] !== SPACE) {
        i2++;
      }
      const strLen = buffer3.toString("utf-8", lineStart, i2);
      const len = parseInt(strLen, 10);
      if (!len) {
        throw new Error(`Invalid length in PAX record: ${strLen}`);
      }
      i2++;
      const lineEnd = lineStart + len;
      const record = buffer3.toString("utf-8", i2, lineEnd - 1);
      i2 = lineEnd;
      const equalSign = record.indexOf("=");
      const keyword = record.slice(0, equalSign);
      if (keyword === "path") {
        const slashIndex = record.indexOf("/", equalSign + 1);
        if (global3) {
          throw new Error(`Unexpected global PAX path: ${record}`);
        }
        paxHeaderPath = record.slice(slashIndex >= 0 ? slashIndex + 1 : equalSign + 1);
      } else if (keyword === "size") {
        const size = parseInt(record.slice(equalSign + 1), 10);
        if (isNaN(size) || size < 0) {
          throw new Error(`Invalid size in PAX record: ${record}`);
        }
        if (global3) {
          throw new Error(`Unexpected global PAX file size: ${record}`);
        }
        paxHeaderFileSize = size;
      } else {
        continue;
      }
    }
  }
  function parseString2(offset, length) {
    let end = offset;
    const max3 = length + offset;
    for (let char = buffer3[end]; char !== 0 && end !== max3; char = buffer3[++end]) {
      if (!pathTrimmed && (char === SLASH || char === BACKSLASH)) {
        pathTrimmed = true;
        offset = end + 1;
      }
    }
    return buffer3.toString("utf8", offset, end);
  }
  function parseOctal(offset, length) {
    const val = buffer3.subarray(offset, offset + length);
    offset = 0;
    while (offset < val.length && val[offset] === SPACE)
      offset++;
    const end = clamp(indexOf(val, SPACE, offset, val.length), val.length, val.length);
    while (offset < end && val[offset] === 0)
      offset++;
    if (end === offset)
      return 0;
    return parseInt(val.subarray(offset, end).toString(), 8);
  }
}
function indexOf(block, num, offset, end) {
  for (; offset < end; offset++) {
    if (block[offset] === num)
      return offset;
  }
  return end;
}
function clamp(index, len, defaultValue) {
  if (typeof index !== "number")
    return defaultValue;
  index = ~~index;
  if (index >= len)
    return len;
  if (index >= 0)
    return index;
  index += len;
  if (index >= 0)
    return index;
  return 0;
}
var ZERO, FILE_TYPE_HARD_LINK, FILE_TYPE_SYMLINK, FILE_TYPE_DIRECTORY, SPACE, SLASH, BACKSLASH, FILE_TYPE_PAX_HEADER, FILE_TYPE_PAX_GLOBAL_HEADER, FILE_TYPE_LONGLINK, MODE_OFFSET, FILE_SIZE_OFFSET, CHECKSUM_OFFSET, FILE_TYPE_OFFSET, PREFIX_OFFSET;
var init_parseTarball = __esm({
  "../store/cafs/lib/parseTarball.js"() {
    "use strict";
    ZERO = "0".charCodeAt(0);
    FILE_TYPE_HARD_LINK = "1".charCodeAt(0);
    FILE_TYPE_SYMLINK = "2".charCodeAt(0);
    FILE_TYPE_DIRECTORY = "5".charCodeAt(0);
    SPACE = " ".charCodeAt(0);
    SLASH = "/".charCodeAt(0);
    BACKSLASH = "\\".charCodeAt(0);
    FILE_TYPE_PAX_HEADER = "x".charCodeAt(0);
    FILE_TYPE_PAX_GLOBAL_HEADER = "g".charCodeAt(0);
    FILE_TYPE_LONGLINK = "L".charCodeAt(0);
    MODE_OFFSET = 100;
    FILE_SIZE_OFFSET = 124;
    CHECKSUM_OFFSET = 148;
    FILE_TYPE_OFFSET = 156;
    PREFIX_OFFSET = 345;
  }
});

// ../store/cafs/lib/addFilesFromTarball.js
import { gunzipSync } from "node:zlib";
function addFilesFromTarball2(addBufferToCafs2, tarballBuffer, readManifest, ignore2) {
  const tarContent = (0, import_is_gzip.default)(tarballBuffer) ? gunzipSync(tarballBuffer, { chunkSize: 128 * 1024 }) : Buffer.isBuffer(tarballBuffer) ? tarballBuffer : Buffer.from(tarballBuffer);
  const { files } = parseTarball(tarContent);
  const filesIndex = /* @__PURE__ */ new Map();
  let manifestBuffer;
  for (const [relativePath, { mode, offset, size }] of files) {
    if (ignore2?.(relativePath))
      continue;
    const fileBuffer = tarContent.subarray(offset, offset + size);
    if (readManifest && relativePath === "package.json") {
      manifestBuffer = fileBuffer;
    }
    filesIndex.set(relativePath, {
      mode,
      size,
      ...addBufferToCafs2(fileBuffer, mode)
    });
  }
  return {
    filesIndex,
    manifest: manifestBuffer ? parseJsonBufferSync(manifestBuffer) : void 0
  };
}
var import_is_gzip;
var init_addFilesFromTarball = __esm({
  "../store/cafs/lib/addFilesFromTarball.js"() {
    "use strict";
    import_is_gzip = __toESM(require_is_gzip(), 1);
    init_parseJson();
    init_parseTarball();
  }
});

// ../store/cafs/lib/getFilePathInCafs.js
import path73 from "node:path";
function getFilePathByModeInCafs(storeDir, hexDigest, mode) {
  const fileType = modeIsExecutable(mode) ? "exec" : "nonexec";
  return `${storeDir}${SEP}${contentPathFromHex(fileType, hexDigest)}`;
}
function contentPathFromHex(fileType, hex) {
  const p = `files${SEP}${hex.slice(0, 2)}${SEP}${hex.slice(2)}`;
  switch (fileType) {
    case "exec":
      return `${p}-exec`;
    case "nonexec":
      return p;
  }
}
var SEP, modeIsExecutable;
var init_getFilePathInCafs = __esm({
  "../store/cafs/lib/getFilePathInCafs.js"() {
    "use strict";
    SEP = path73.sep;
    modeIsExecutable = (mode) => (mode & 73) !== 0;
  }
});

// ../store/cafs/lib/checkPkgFilesIntegrity.js
import crypto4 from "node:crypto";
import util22 from "node:util";
function verifyFileIntegrity(filename, integrity) {
  global["verifiedFileIntegrity"]++;
  let data;
  try {
    data = lib_default.readFileSync(filename);
  } catch (err) {
    if (util22.types.isNativeError(err) && "code" in err && err.code === "ENOENT") {
      return false;
    }
    throw err;
  }
  try {
    return crypto4.hash(integrity.algorithm, data, "hex") === integrity.digest;
  } catch {
    return false;
  }
}
var init_checkPkgFilesIntegrity = __esm({
  "../store/cafs/lib/checkPkgFilesIntegrity.js"() {
    "use strict";
    init_lib2();
    init_lib12();
    init_rimraf();
    init_getFilePathInCafs();
    global["verifiedFileIntegrity"] = 0;
  }
});

// ../store/cafs/lib/normalizeBundledManifest.js
function normalizeBundledManifest(manifest) {
  let result2;
  for (const key of BUNDLED_MANIFEST_FIELDS) {
    if (manifest[key] != null) {
      if (!result2)
        result2 = {};
      result2[key] = manifest[key];
    }
  }
  let scripts;
  if (manifest.scripts) {
    for (const key of LIFECYCLE_SCRIPTS) {
      if (manifest.scripts[key]) {
        if (!scripts)
          scripts = {};
        scripts[key] = manifest.scripts[key];
      }
    }
  }
  if (!result2 && !scripts)
    return void 0;
  return {
    version: import_semver22.default.clean(manifest.version ?? "0.0.0", { loose: true }) ?? manifest.version,
    ...result2,
    ...scripts ? { scripts } : {}
  };
}
var import_semver22, BUNDLED_MANIFEST_FIELDS, LIFECYCLE_SCRIPTS;
var init_normalizeBundledManifest = __esm({
  "../store/cafs/lib/normalizeBundledManifest.js"() {
    "use strict";
    import_semver22 = __toESM(require_semver2(), 1);
    BUNDLED_MANIFEST_FIELDS = [
      "bin",
      "bundledDependencies",
      "bundleDependencies",
      "cpu",
      "dependencies",
      "devDependencies",
      "directories",
      "engines",
      "libc",
      "name",
      "optionalDependencies",
      "os",
      "peerDependencies",
      "peerDependenciesMeta"
    ];
    LIFECYCLE_SCRIPTS = ["preinstall", "install", "postinstall"];
  }
});

// ../store/cafs/lib/writeFile.js
import path74 from "node:path";
function writeFile(fileDest, buffer3, mode) {
  makeDirForFile(fileDest);
  lib_default.writeFileSync(fileDest, buffer3, { mode });
}
function writeFileExclusive(fileDest, buffer3, mode) {
  makeDirForFile(fileDest);
  lib_default.writeFileSync(fileDest, buffer3, { mode, flag: "wx" });
}
function makeDirForFile(fileDest) {
  const dir = path74.dirname(fileDest);
  if (!dirs.has(dir)) {
    lib_default.mkdirSync(dir, { recursive: true });
    dirs.add(dir);
  }
}
var dirs;
var init_writeFile = __esm({
  "../store/cafs/lib/writeFile.js"() {
    "use strict";
    init_lib12();
    dirs = /* @__PURE__ */ new Set();
  }
});

// ../store/cafs/lib/writeBufferToCafs.js
import fs41 from "node:fs";
import path75 from "node:path";
import util23 from "node:util";
import workerThreads from "node:worker_threads";
function writeBufferToCafs(locker, storeDir, buffer3, fileDest, mode, integrity) {
  fileDest = path75.join(storeDir, fileDest);
  if (locker.has(fileDest)) {
    return {
      checkedAt: locker.get(fileDest),
      filePath: fileDest
    };
  }
  const checkedAt = writeOrCheck(fileDest, buffer3, mode, integrity);
  locker.set(fileDest, checkedAt);
  return {
    checkedAt,
    filePath: fileDest
  };
}
function writeOrCheck(fileDest, buffer3, mode, integrity) {
  const existingFile = fs41.statSync(fileDest, { throwIfNoEntry: false });
  if (existingFile) {
    if (verifyFileIntegrity(fileDest, integrity)) {
      return Date.now();
    }
    return writeFileAtomic7(fileDest, buffer3, mode);
  }
  try {
    writeFileExclusive(fileDest, buffer3, mode);
  } catch (err) {
    if (util23.types.isNativeError(err) && "code" in err && err.code === "EEXIST") {
      if (verifyFileIntegrity(fileDest, integrity)) {
        return Date.now();
      }
      return writeFileAtomic7(fileDest, buffer3, mode);
    }
    throw err;
  }
  return Date.now();
}
function writeFileAtomic7(fileDest, buffer3, mode) {
  const temp = pathTemp2(fileDest);
  writeFile(temp, buffer3, mode);
  optimisticRenameOverwrite(temp, fileDest);
  return Date.now();
}
function optimisticRenameOverwrite(temp, fileDest) {
  try {
    renameOverwriteSync(temp, fileDest);
  } catch (err) {
    if (!(util23.types.isNativeError(err) && "code" in err && err.code === "ENOENT") || !fs41.existsSync(fileDest))
      throw err;
  }
}
function pathTemp2(file) {
  const basename2 = removeSuffix2(path75.basename(file));
  return path75.join(path75.dirname(file), `${basename2}${process.pid}${workerThreads.threadId}`);
}
function removeSuffix2(filePath) {
  const dashPosition = filePath.indexOf("-");
  if (dashPosition === -1)
    return filePath;
  const withoutSuffix = filePath.substring(0, dashPosition);
  if (filePath.substring(dashPosition) === "-exec") {
    return `${withoutSuffix}x`;
  }
  return withoutSuffix;
}
var init_writeBufferToCafs = __esm({
  "../store/cafs/lib/writeBufferToCafs.js"() {
    "use strict";
    init_rename_overwrite();
    init_checkPkgFilesIntegrity();
    init_writeFile();
  }
});

// ../store/cafs/lib/index.js
import crypto5 from "node:crypto";
function createCafs(storeDir, { ignoreFile, cafsLocker } = {}) {
  const _writeBufferToCafs = writeBufferToCafs.bind(null, cafsLocker ?? /* @__PURE__ */ new Map(), storeDir);
  const addBuffer = addBufferToCafs.bind(null, _writeBufferToCafs);
  return {
    addFilesFromDir: addFilesFromDir2.bind(null, addBuffer),
    addFilesFromTarball: (tarballBuffer, readManifest, callIgnore) => addFilesFromTarball2(addBuffer, tarballBuffer, readManifest, combineIgnore(ignoreFile, callIgnore)),
    addFile: addBuffer,
    getFilePathByModeInCafs: getFilePathByModeInCafs.bind(null, storeDir)
  };
}
function combineIgnore(a2, b) {
  if (!a2)
    return b;
  if (!b)
    return a2;
  return (filename) => a2(filename) || b(filename);
}
function addBufferToCafs(writeBufferToCafs2, buffer3, mode) {
  const digest = crypto5.hash(HASH_ALGORITHM, buffer3, "hex");
  const isExecutable = modeIsExecutable(mode);
  const fileDest = contentPathFromHex(isExecutable ? "exec" : "nonexec", digest);
  const { checkedAt, filePath } = writeBufferToCafs2(buffer3, fileDest, isExecutable ? 493 : void 0, { digest, algorithm: HASH_ALGORITHM });
  return { checkedAt, filePath, digest };
}
var HASH_ALGORITHM;
var init_lib81 = __esm({
  "../store/cafs/lib/index.js"() {
    "use strict";
    init_addFilesFromDir();
    init_addFilesFromTarball();
    init_checkPkgFilesIntegrity();
    init_getFilePathInCafs();
    init_normalizeBundledManifest();
    init_writeBufferToCafs();
    init_lib8();
    HASH_ALGORITHM = "sha512";
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/p-defer/4.0.1/840dd3780d5233de542b9dbb564939ed9be51a2e6fed10febe8d325383bb7b3d/node_modules/p-defer/index.js
function pDefer() {
  const deferred = {};
  deferred.promise = new Promise((resolve3, reject3) => {
    deferred.resolve = resolve3;
    deferred.reject = reject3;
  });
  return deferred;
}
var init_p_defer = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/p-defer/4.0.1/840dd3780d5233de542b9dbb564939ed9be51a2e6fed10febe8d325383bb7b3d/node_modules/p-defer/index.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/eventemitter3/5.0.4/575196c5129a96010821b0b9286f8861735eb3295e2600aa424f0150b72adea4/node_modules/eventemitter3/index.js
var require_eventemitter3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/eventemitter3/5.0.4/575196c5129a96010821b0b9286f8861735eb3295e2600aa424f0150b72adea4/node_modules/eventemitter3/index.js"(exports2, module2) {
    "use strict";
    var has = Object.prototype.hasOwnProperty;
    var prefix = "~";
    function Events() {
    }
    if (Object.create) {
      Events.prototype = /* @__PURE__ */ Object.create(null);
      if (!new Events().__proto__) prefix = false;
    }
    function EE(fn, context, once11) {
      this.fn = fn;
      this.context = context;
      this.once = once11 || false;
    }
    function addListener(emitter, event, fn, context, once11) {
      if (typeof fn !== "function") {
        throw new TypeError("The listener must be a function");
      }
      var listener = new EE(fn, context || emitter, once11), evt = prefix ? prefix + event : event;
      if (!emitter._events[evt]) emitter._events[evt] = listener, emitter._eventsCount++;
      else if (!emitter._events[evt].fn) emitter._events[evt].push(listener);
      else emitter._events[evt] = [emitter._events[evt], listener];
      return emitter;
    }
    function clearEvent(emitter, evt) {
      if (--emitter._eventsCount === 0) emitter._events = new Events();
      else delete emitter._events[evt];
    }
    function EventEmitter4() {
      this._events = new Events();
      this._eventsCount = 0;
    }
    EventEmitter4.prototype.eventNames = function eventNames() {
      var names = [], events, name;
      if (this._eventsCount === 0) return names;
      for (name in events = this._events) {
        if (has.call(events, name)) names.push(prefix ? name.slice(1) : name);
      }
      if (Object.getOwnPropertySymbols) {
        return names.concat(Object.getOwnPropertySymbols(events));
      }
      return names;
    };
    EventEmitter4.prototype.listeners = function listeners(event) {
      var evt = prefix ? prefix + event : event, handlers = this._events[evt];
      if (!handlers) return [];
      if (handlers.fn) return [handlers.fn];
      for (var i2 = 0, l = handlers.length, ee = new Array(l); i2 < l; i2++) {
        ee[i2] = handlers[i2].fn;
      }
      return ee;
    };
    EventEmitter4.prototype.listenerCount = function listenerCount(event) {
      var evt = prefix ? prefix + event : event, listeners = this._events[evt];
      if (!listeners) return 0;
      if (listeners.fn) return 1;
      return listeners.length;
    };
    EventEmitter4.prototype.emit = function emit(event, a1, a2, a3, a4, a5) {
      var evt = prefix ? prefix + event : event;
      if (!this._events[evt]) return false;
      var listeners = this._events[evt], len = arguments.length, args, i2;
      if (listeners.fn) {
        if (listeners.once) this.removeListener(event, listeners.fn, void 0, true);
        switch (len) {
          case 1:
            return listeners.fn.call(listeners.context), true;
          case 2:
            return listeners.fn.call(listeners.context, a1), true;
          case 3:
            return listeners.fn.call(listeners.context, a1, a2), true;
          case 4:
            return listeners.fn.call(listeners.context, a1, a2, a3), true;
          case 5:
            return listeners.fn.call(listeners.context, a1, a2, a3, a4), true;
          case 6:
            return listeners.fn.call(listeners.context, a1, a2, a3, a4, a5), true;
        }
        for (i2 = 1, args = new Array(len - 1); i2 < len; i2++) {
          args[i2 - 1] = arguments[i2];
        }
        listeners.fn.apply(listeners.context, args);
      } else {
        var length = listeners.length, j2;
        for (i2 = 0; i2 < length; i2++) {
          if (listeners[i2].once) this.removeListener(event, listeners[i2].fn, void 0, true);
          switch (len) {
            case 1:
              listeners[i2].fn.call(listeners[i2].context);
              break;
            case 2:
              listeners[i2].fn.call(listeners[i2].context, a1);
              break;
            case 3:
              listeners[i2].fn.call(listeners[i2].context, a1, a2);
              break;
            case 4:
              listeners[i2].fn.call(listeners[i2].context, a1, a2, a3);
              break;
            default:
              if (!args) for (j2 = 1, args = new Array(len - 1); j2 < len; j2++) {
                args[j2 - 1] = arguments[j2];
              }
              listeners[i2].fn.apply(listeners[i2].context, args);
          }
        }
      }
      return true;
    };
    EventEmitter4.prototype.on = function on6(event, fn, context) {
      return addListener(this, event, fn, context, false);
    };
    EventEmitter4.prototype.once = function once11(event, fn, context) {
      return addListener(this, event, fn, context, true);
    };
    EventEmitter4.prototype.removeListener = function removeListener(event, fn, context, once11) {
      var evt = prefix ? prefix + event : event;
      if (!this._events[evt]) return this;
      if (!fn) {
        clearEvent(this, evt);
        return this;
      }
      var listeners = this._events[evt];
      if (listeners.fn) {
        if (listeners.fn === fn && (!once11 || listeners.once) && (!context || listeners.context === context)) {
          clearEvent(this, evt);
        }
      } else {
        for (var i2 = 0, events = [], length = listeners.length; i2 < length; i2++) {
          if (listeners[i2].fn !== fn || once11 && !listeners[i2].once || context && listeners[i2].context !== context) {
            events.push(listeners[i2]);
          }
        }
        if (events.length) this._events[evt] = events.length === 1 ? events[0] : events;
        else clearEvent(this, evt);
      }
      return this;
    };
    EventEmitter4.prototype.removeAllListeners = function removeAllListeners(event) {
      var evt;
      if (event) {
        evt = prefix ? prefix + event : event;
        if (this._events[evt]) clearEvent(this, evt);
      } else {
        this._events = new Events();
        this._eventsCount = 0;
      }
      return this;
    };
    EventEmitter4.prototype.off = EventEmitter4.prototype.removeListener;
    EventEmitter4.prototype.addListener = EventEmitter4.prototype.on;
    EventEmitter4.prefixed = prefix;
    EventEmitter4.EventEmitter = EventEmitter4;
    if ("undefined" !== typeof module2) {
      module2.exports = EventEmitter4;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/eventemitter3/5.0.4/575196c5129a96010821b0b9286f8861735eb3295e2600aa424f0150b72adea4/node_modules/eventemitter3/index.mjs
var import_index2;
var init_eventemitter3 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/eventemitter3/5.0.4/575196c5129a96010821b0b9286f8861735eb3295e2600aa424f0150b72adea4/node_modules/eventemitter3/index.mjs"() {
    import_index2 = __toESM(require_eventemitter3(), 1);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/p-timeout/7.0.1/a38b2f8471965bf9620be98ee45ef855afd07d93b4c38e404a7cb2171483d949/node_modules/p-timeout/index.js
function pTimeout(promise2, options) {
  const {
    milliseconds,
    fallback,
    message,
    customTimers = { setTimeout, clearTimeout },
    signal
  } = options;
  let timer;
  let abortHandler;
  const wrappedPromise = new Promise((resolve3, reject3) => {
    if (typeof milliseconds !== "number" || Math.sign(milliseconds) !== 1) {
      throw new TypeError(`Expected \`milliseconds\` to be a positive number, got \`${milliseconds}\``);
    }
    if (signal?.aborted) {
      reject3(getAbortedReason(signal));
      return;
    }
    if (signal) {
      abortHandler = () => {
        reject3(getAbortedReason(signal));
      };
      signal.addEventListener("abort", abortHandler, { once: true });
    }
    promise2.then(resolve3, reject3);
    if (milliseconds === Number.POSITIVE_INFINITY) {
      return;
    }
    const timeoutError = new TimeoutError();
    timer = customTimers.setTimeout.call(void 0, () => {
      if (fallback) {
        try {
          resolve3(fallback());
        } catch (error) {
          reject3(error);
        }
        return;
      }
      if (typeof promise2.cancel === "function") {
        promise2.cancel();
      }
      if (message === false) {
        resolve3();
      } else if (message instanceof Error) {
        reject3(message);
      } else {
        timeoutError.message = message ?? `Promise timed out after ${milliseconds} milliseconds`;
        reject3(timeoutError);
      }
    }, milliseconds);
  });
  const cancelablePromise = wrappedPromise.finally(() => {
    cancelablePromise.clear();
    if (abortHandler && signal) {
      signal.removeEventListener("abort", abortHandler);
    }
  });
  cancelablePromise.clear = () => {
    customTimers.clearTimeout.call(void 0, timer);
    timer = void 0;
  };
  return cancelablePromise;
}
var TimeoutError, getAbortedReason;
var init_p_timeout = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/p-timeout/7.0.1/a38b2f8471965bf9620be98ee45ef855afd07d93b4c38e404a7cb2171483d949/node_modules/p-timeout/index.js"() {
    TimeoutError = class _TimeoutError extends Error {
      name = "TimeoutError";
      constructor(message, options) {
        super(message, options);
        Error.captureStackTrace?.(this, _TimeoutError);
      }
    };
    getAbortedReason = (signal) => signal.reason ?? new DOMException("This operation was aborted.", "AbortError");
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/p-queue/9.3.0/570cf952faff6be7e5d4255a0046e3430bfaaa3a2dca29835c01b2d9832e0155/node_modules/p-queue/dist/lower-bound.js
function lowerBound(array, value, comparator) {
  let first = 0;
  let count2 = array.length;
  while (count2 > 0) {
    const step2 = Math.trunc(count2 / 2);
    let it = first + step2;
    if (comparator(array[it], value) <= 0) {
      first = ++it;
      count2 -= step2 + 1;
    } else {
      count2 = step2;
    }
  }
  return first;
}
var init_lower_bound = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/p-queue/9.3.0/570cf952faff6be7e5d4255a0046e3430bfaaa3a2dca29835c01b2d9832e0155/node_modules/p-queue/dist/lower-bound.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/p-queue/9.3.0/570cf952faff6be7e5d4255a0046e3430bfaaa3a2dca29835c01b2d9832e0155/node_modules/p-queue/dist/priority-queue.js
var compactionThreshold, PriorityQueue;
var init_priority_queue = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/p-queue/9.3.0/570cf952faff6be7e5d4255a0046e3430bfaaa3a2dca29835c01b2d9832e0155/node_modules/p-queue/dist/priority-queue.js"() {
    init_lower_bound();
    compactionThreshold = 100;
    PriorityQueue = class {
      #queue = [];
      // The queue is stored as a sorted array, but dequeued items are left before `#head` until compaction. Only items from `#head` onward are live, which keeps repeated dequeues amortized O(1).
      #head = 0;
      enqueue(run, options) {
        const { priority = 0, id } = options ?? {};
        const { size } = this;
        const element = {
          priority,
          id,
          run
        };
        if (size === 0) {
          this.#queue.length = 0;
          this.#head = 0;
          this.#queue.push(element);
          return;
        }
        if (this.#queue.at(-1).priority >= priority) {
          this.#queue.push(element);
          return;
        }
        this.#compact();
        const index = lowerBound(this.#queue, element, (a2, b) => b.priority - a2.priority);
        this.#queue.splice(index, 0, element);
      }
      setPriority(id, priority) {
        const index = this.#queue.findIndex((element, index2) => index2 >= this.#head && element.id === id);
        if (index === -1) {
          throw new ReferenceError(`No promise function with the id "${id}" exists in the queue.`);
        }
        const [item] = this.#queue.splice(index, 1);
        this.enqueue(item.run, { priority, id });
      }
      remove(idOrRun) {
        const index = this.#queue.findIndex((element, index2) => {
          if (index2 < this.#head) {
            return false;
          }
          if (typeof idOrRun === "string") {
            return element.id === idOrRun;
          }
          return element.run === idOrRun;
        });
        if (index !== -1) {
          this.#queue.splice(index, 1);
        }
      }
      dequeue() {
        if (this.#head === this.#queue.length) {
          return void 0;
        }
        const item = this.#queue[this.#head];
        this.#head++;
        if (this.#head === this.#queue.length) {
          this.#queue.length = 0;
          this.#head = 0;
        } else if (this.#head > compactionThreshold && this.#head > this.#queue.length / 2) {
          this.#compact();
        }
        return item?.run;
      }
      filter(options) {
        const result2 = [];
        for (let index = this.#head; index < this.#queue.length; index++) {
          const element = this.#queue[index];
          if (element.priority === options.priority) {
            result2.push(element.run);
          }
        }
        return result2;
      }
      get size() {
        return this.#queue.length - this.#head;
      }
      #compact() {
        if (this.#head === 0) {
          return;
        }
        this.#queue.splice(0, this.#head);
        this.#head = 0;
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/p-queue/9.3.0/570cf952faff6be7e5d4255a0046e3430bfaaa3a2dca29835c01b2d9832e0155/node_modules/p-queue/dist/index.js
var PQueue;
var init_dist5 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/p-queue/9.3.0/570cf952faff6be7e5d4255a0046e3430bfaaa3a2dca29835c01b2d9832e0155/node_modules/p-queue/dist/index.js"() {
    init_eventemitter3();
    init_p_timeout();
    init_priority_queue();
    PQueue = class extends import_index2.default {
      #carryoverIntervalCount;
      #isIntervalIgnored;
      #intervalCount = 0;
      #intervalCap;
      #rateLimitedInInterval = false;
      #rateLimitFlushScheduled = false;
      #interval;
      #intervalEnd = 0;
      #lastExecutionTime = 0;
      #intervalId;
      #timeoutId;
      #strict;
      // Circular buffer implementation for better performance
      #strictTicks = [];
      #strictTicksStartIndex = 0;
      #queue;
      #queueClass;
      #pending = 0;
      // The `!` is needed because of https://github.com/microsoft/TypeScript/issues/32194
      #concurrency;
      #isPaused;
      // Use to assign a unique identifier to a promise function, if not explicitly specified
      #idAssigner = 1n;
      // Track currently running tasks for debugging
      #runningTasks = /* @__PURE__ */ new Map();
      #queueAbortListenerCleanupFunctions = /* @__PURE__ */ new Set();
      /**
          Get or set the default timeout for all tasks. Can be changed at runtime.
      
          Operations will throw a `TimeoutError` if they don't complete within the specified time.
      
          The timeout begins when the operation is dequeued and starts execution, not while it's waiting in the queue.
      
          @example
          ```
          const queue = new PQueue({timeout: 5000});
      
          // Change timeout for all future tasks
          queue.timeout = 10000;
          ```
          */
      timeout;
      constructor(options) {
        super();
        options = {
          carryoverIntervalCount: false,
          intervalCap: Number.POSITIVE_INFINITY,
          interval: 0,
          concurrency: Number.POSITIVE_INFINITY,
          autoStart: true,
          queueClass: PriorityQueue,
          strict: false,
          ...options
        };
        if (!(typeof options.intervalCap === "number" && options.intervalCap >= 1)) {
          throw new TypeError(`Expected \`intervalCap\` to be a number from 1 and up, got \`${options.intervalCap?.toString() ?? ""}\` (${typeof options.intervalCap})`);
        }
        if (options.interval === void 0 || !(Number.isFinite(options.interval) && options.interval >= 0)) {
          throw new TypeError(`Expected \`interval\` to be a finite number >= 0, got \`${options.interval?.toString() ?? ""}\` (${typeof options.interval})`);
        }
        if (options.strict && options.interval === 0) {
          throw new TypeError("The `strict` option requires a non-zero `interval`");
        }
        if (options.strict && options.intervalCap === Number.POSITIVE_INFINITY) {
          throw new TypeError("The `strict` option requires a finite `intervalCap`");
        }
        this.#carryoverIntervalCount = options.carryoverIntervalCount ?? options.carryoverConcurrencyCount ?? false;
        this.#isIntervalIgnored = options.intervalCap === Number.POSITIVE_INFINITY || options.interval === 0;
        this.#intervalCap = options.intervalCap;
        this.#interval = options.interval;
        this.#strict = options.strict;
        this.#queue = new options.queueClass();
        this.#queueClass = options.queueClass;
        this.concurrency = options.concurrency;
        if (options.timeout !== void 0 && !(Number.isFinite(options.timeout) && options.timeout > 0)) {
          throw new TypeError(`Expected \`timeout\` to be a positive finite number, got \`${options.timeout}\` (${typeof options.timeout})`);
        }
        this.timeout = options.timeout;
        this.#isPaused = options.autoStart === false;
        this.#setupRateLimitTracking();
      }
      #cleanupStrictTicks(now) {
        while (this.#strictTicksStartIndex < this.#strictTicks.length) {
          const oldestTick = this.#strictTicks[this.#strictTicksStartIndex];
          if (oldestTick !== void 0 && now - oldestTick >= this.#interval) {
            this.#strictTicksStartIndex++;
          } else {
            break;
          }
        }
        const shouldCompact = this.#strictTicksStartIndex > 100 && this.#strictTicksStartIndex > this.#strictTicks.length / 2 || this.#strictTicksStartIndex === this.#strictTicks.length;
        if (shouldCompact) {
          this.#strictTicks = this.#strictTicks.slice(this.#strictTicksStartIndex);
          this.#strictTicksStartIndex = 0;
        }
      }
      // Helper methods for interval consumption
      #consumeIntervalSlot(now) {
        if (this.#strict) {
          this.#strictTicks.push(now);
        } else {
          this.#intervalCount++;
        }
      }
      #rollbackIntervalSlot() {
        if (this.#strict) {
          if (this.#strictTicks.length > this.#strictTicksStartIndex) {
            this.#strictTicks.pop();
          }
        } else if (this.#intervalCount > 0) {
          this.#intervalCount--;
        }
      }
      #getActiveTicksCount() {
        return this.#strictTicks.length - this.#strictTicksStartIndex;
      }
      get #doesIntervalAllowAnother() {
        if (this.#isIntervalIgnored) {
          return true;
        }
        if (this.#strict) {
          return this.#getActiveTicksCount() < this.#intervalCap;
        }
        return this.#intervalCount < this.#intervalCap;
      }
      get #doesConcurrentAllowAnother() {
        return this.#pending < this.#concurrency;
      }
      #next() {
        this.#pending--;
        if (this.#pending === 0) {
          this.emit("pendingZero");
        }
        this.#tryToStartAnother();
        this.emit("next");
      }
      #onResumeInterval() {
        this.#timeoutId = void 0;
        this.#onInterval();
        this.#initializeIntervalIfNeeded();
      }
      #isIntervalPausedAt(now) {
        if (this.#strict) {
          this.#cleanupStrictTicks(now);
          const activeTicksCount = this.#getActiveTicksCount();
          if (activeTicksCount >= this.#intervalCap) {
            const oldestTick = this.#strictTicks[this.#strictTicksStartIndex];
            const delay = this.#interval - (now - oldestTick);
            this.#createIntervalTimeout(delay);
            return true;
          }
          return false;
        }
        if (this.#intervalId === void 0) {
          const delay = this.#intervalEnd - now;
          if (delay < 0) {
            if (this.#lastExecutionTime > 0) {
              const timeSinceLastExecution = now - this.#lastExecutionTime;
              if (timeSinceLastExecution < this.#interval) {
                this.#createIntervalTimeout(this.#interval - timeSinceLastExecution);
                return true;
              }
            }
            this.#intervalCount = this.#carryoverIntervalCount ? this.#pending : 0;
          } else {
            this.#createIntervalTimeout(delay);
            return true;
          }
        }
        return false;
      }
      #createIntervalTimeout(delay) {
        if (this.#timeoutId !== void 0) {
          return;
        }
        this.#timeoutId = setTimeout(() => {
          this.#onResumeInterval();
        }, delay);
      }
      #clearIntervalTimer() {
        if (this.#intervalId) {
          clearInterval(this.#intervalId);
          this.#intervalId = void 0;
        }
      }
      #clearTimeoutTimer() {
        if (this.#timeoutId) {
          clearTimeout(this.#timeoutId);
          this.#timeoutId = void 0;
        }
      }
      #tryToStartAnother() {
        if (this.#queue.size === 0) {
          this.#clearIntervalTimer();
          this.emit("empty");
          if (this.#pending === 0) {
            this.#clearTimeoutTimer();
            if (this.#strict && this.#strictTicksStartIndex > 0) {
              const now = Date.now();
              this.#cleanupStrictTicks(now);
            }
            this.emit("idle");
          }
          return false;
        }
        let taskStarted = false;
        if (!this.#isPaused) {
          const now = Date.now();
          const canInitializeInterval = !this.#isIntervalPausedAt(now);
          if (this.#doesIntervalAllowAnother && this.#doesConcurrentAllowAnother) {
            const job = this.#queue.dequeue();
            if (!this.#isIntervalIgnored) {
              this.#consumeIntervalSlot(now);
              this.#scheduleRateLimitUpdate();
            }
            this.emit("active");
            job();
            if (canInitializeInterval) {
              this.#initializeIntervalIfNeeded();
            }
            taskStarted = true;
          }
        }
        return taskStarted;
      }
      #initializeIntervalIfNeeded() {
        if (this.#isIntervalIgnored || this.#intervalId !== void 0) {
          return;
        }
        if (this.#strict) {
          return;
        }
        this.#intervalId = setInterval(() => {
          this.#onInterval();
        }, this.#interval);
        this.#intervalEnd = Date.now() + this.#interval;
      }
      #onInterval() {
        if (!this.#strict) {
          if (this.#intervalCount === 0 && this.#pending === 0 && this.#intervalId) {
            this.#clearIntervalTimer();
          }
          this.#intervalCount = this.#carryoverIntervalCount ? this.#pending : 0;
        }
        this.#processQueue();
        this.#scheduleRateLimitUpdate();
      }
      /**
      Executes all queued functions until it reaches the limit.
      */
      #processQueue() {
        while (this.#tryToStartAnother()) {
        }
      }
      get concurrency() {
        return this.#concurrency;
      }
      set concurrency(newConcurrency) {
        if (!(typeof newConcurrency === "number" && newConcurrency >= 1)) {
          throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${newConcurrency}\` (${typeof newConcurrency})`);
        }
        this.#concurrency = newConcurrency;
        this.#processQueue();
      }
      /**
          Updates the priority of a promise function by its id, affecting its execution order. Requires a defined concurrency limit to take effect.
      
          For example, this can be used to prioritize a promise function to run earlier.
      
          ```js
          import PQueue from 'p-queue';
      
          const queue = new PQueue({concurrency: 1});
      
          queue.add(async () => '🦄', {priority: 1});
          queue.add(async () => '🦀', {priority: 0, id: '🦀'});
          queue.add(async () => '🦄', {priority: 1});
          queue.add(async () => '🦄', {priority: 1});
      
          queue.setPriority('🦀', 2);
          ```
      
          In this case, the promise function with `id: '🦀'` runs second.
      
          You can also deprioritize a promise function to delay its execution:
      
          ```js
          import PQueue from 'p-queue';
      
          const queue = new PQueue({concurrency: 1});
      
          queue.add(async () => '🦄', {priority: 1});
          queue.add(async () => '🦀', {priority: 1, id: '🦀'});
          queue.add(async () => '🦄');
          queue.add(async () => '🦄', {priority: 0});
      
          queue.setPriority('🦀', -1);
          ```
          Here, the promise function with `id: '🦀'` executes last.
          */
      setPriority(id, priority) {
        if (typeof priority !== "number" || !Number.isFinite(priority)) {
          throw new TypeError(`Expected \`priority\` to be a finite number, got \`${priority}\` (${typeof priority})`);
        }
        this.#queue.setPriority(id, priority);
      }
      async add(function_, options = {}) {
        options = {
          timeout: this.timeout,
          ...options,
          // Assign unique ID if not provided
          id: options.id ?? (this.#idAssigner++).toString()
        };
        return new Promise((resolve3, reject3) => {
          const taskSymbol = /* @__PURE__ */ Symbol(`task-${options.id}`);
          let cleanupQueueAbortHandler = () => void 0;
          const run = async () => {
            cleanupQueueAbortHandler();
            this.#pending++;
            this.#runningTasks.set(taskSymbol, {
              id: options.id,
              priority: options.priority ?? 0,
              // Match priority-queue default
              startTime: Date.now(),
              timeout: options.timeout
            });
            let eventListener;
            try {
              try {
                options.signal?.throwIfAborted();
              } catch (error) {
                this.#rollbackIntervalConsumption();
                this.#runningTasks.delete(taskSymbol);
                throw error;
              }
              this.#lastExecutionTime = Date.now();
              let operation5 = function_({ signal: options.signal });
              if (options.timeout) {
                operation5 = pTimeout(Promise.resolve(operation5), {
                  milliseconds: options.timeout,
                  message: `Task timed out after ${options.timeout}ms (queue has ${this.#pending} running, ${this.#queue.size} waiting)`
                });
              }
              if (options.signal) {
                const { signal } = options;
                operation5 = Promise.race([operation5, new Promise((_resolve, reject4) => {
                  eventListener = () => {
                    reject4(signal.reason);
                  };
                  signal.addEventListener("abort", eventListener, { once: true });
                })]);
              }
              const result2 = await operation5;
              resolve3(result2);
              this.emit("completed", result2);
            } catch (error) {
              reject3(error);
              this.emit("error", error);
            } finally {
              if (eventListener) {
                options.signal?.removeEventListener("abort", eventListener);
              }
              this.#runningTasks.delete(taskSymbol);
              queueMicrotask(() => {
                this.#next();
              });
            }
          };
          this.#queue.enqueue(run, options);
          const removeQueuedTask = () => {
            if (this.#queue instanceof PriorityQueue) {
              this.#queue.remove(run);
              return;
            }
            this.#queue.remove?.(options.id);
          };
          if (options.signal) {
            const { signal } = options;
            const queueAbortHandler = () => {
              cleanupQueueAbortHandler();
              removeQueuedTask();
              reject3(signal.reason);
              this.#tryToStartAnother();
              this.emit("next");
            };
            cleanupQueueAbortHandler = () => {
              signal.removeEventListener("abort", queueAbortHandler);
              this.#queueAbortListenerCleanupFunctions.delete(cleanupQueueAbortHandler);
            };
            if (signal.aborted) {
              queueAbortHandler();
              return;
            }
            signal.addEventListener("abort", queueAbortHandler, { once: true });
            this.#queueAbortListenerCleanupFunctions.add(cleanupQueueAbortHandler);
          }
          this.emit("add");
          this.#tryToStartAnother();
        });
      }
      async addAll(functions, options) {
        return Promise.all(functions.map(async (function_) => this.add(function_, options)));
      }
      /**
      Start (or resume) executing enqueued tasks within concurrency limit. No need to call this if queue is not paused (via `options.autoStart = false` or by `.pause()` method.)
      */
      start() {
        if (!this.#isPaused) {
          return this;
        }
        this.#isPaused = false;
        this.#processQueue();
        return this;
      }
      /**
      Put queue execution on hold.
      */
      pause() {
        this.#isPaused = true;
      }
      /**
      Clear the queue.
      */
      clear() {
        for (const cleanupQueueAbortHandler of this.#queueAbortListenerCleanupFunctions) {
          cleanupQueueAbortHandler();
        }
        this.#queue = new this.#queueClass();
        this.#clearIntervalTimer();
        this.#updateRateLimitState();
        this.emit("empty");
        if (this.#pending === 0) {
          this.#clearTimeoutTimer();
          this.emit("idle");
        }
        this.emit("next");
      }
      /**
          Can be called multiple times. Useful if you for example add additional items at a later time.
      
          @returns A promise that settles when the queue becomes empty.
          */
      async onEmpty() {
        if (this.#queue.size === 0) {
          return;
        }
        await this.#onEvent("empty");
      }
      /**
          @returns A promise that settles when the queue size is less than the given limit: `queue.size < limit`.
      
          If you want to avoid having the queue grow beyond a certain size you can `await queue.onSizeLessThan()` before adding a new item.
      
          Note that this only limits the number of items waiting to start. There could still be up to `concurrency` jobs already running that this call does not include in its calculation.
          */
      async onSizeLessThan(limit) {
        if (this.#queue.size < limit) {
          return;
        }
        await this.#onEvent("next", () => this.#queue.size < limit);
      }
      /**
          The difference with `.onEmpty` is that `.onIdle` guarantees that all work from the queue has finished. `.onEmpty` merely signals that the queue is empty, but it could mean that some promises haven't completed yet.
      
          @returns A promise that settles when the queue becomes empty, and all promises have completed; `queue.size === 0 && queue.pending === 0`.
          */
      async onIdle() {
        if (this.#pending === 0 && this.#queue.size === 0) {
          return;
        }
        await this.#onEvent("idle");
      }
      /**
          The difference with `.onIdle` is that `.onPendingZero` only waits for currently running tasks to finish, ignoring queued tasks.
      
          @returns A promise that settles when all currently running tasks have completed; `queue.pending === 0`.
          */
      async onPendingZero() {
        if (this.#pending === 0) {
          return;
        }
        await this.#onEvent("pendingZero");
      }
      /**
      @returns A promise that settles when the queue becomes rate-limited due to intervalCap.
      */
      async onRateLimit() {
        if (this.isRateLimited) {
          return;
        }
        await this.#onEvent("rateLimit");
      }
      /**
      @returns A promise that settles when the queue is no longer rate-limited.
      */
      async onRateLimitCleared() {
        if (!this.isRateLimited) {
          return;
        }
        await this.#onEvent("rateLimitCleared");
      }
      /**
          @returns A promise that rejects when any task in the queue errors.
      
          Use with `Promise.race([queue.onError(), queue.onIdle()])` to fail fast on the first error while still resolving normally when the queue goes idle.
      
          Important: The promise returned by `add()` still rejects. You must handle each `add()` promise (for example, `.catch(() => {})`) to avoid unhandled rejections.
      
          @example
          ```
          import PQueue from 'p-queue';
      
          const queue = new PQueue({concurrency: 2});
      
          queue.add(() => fetchData(1)).catch(() => {});
          queue.add(() => fetchData(2)).catch(() => {});
          queue.add(() => fetchData(3)).catch(() => {});
      
          // Stop processing on first error
          try {
              await Promise.race([
                  queue.onError(),
                  queue.onIdle()
              ]);
          } catch (error) {
              queue.pause(); // Stop processing remaining tasks
              console.error('Queue failed:', error);
          }
          ```
          */
      // eslint-disable-next-line @typescript-eslint/promise-function-async
      onError() {
        return new Promise((_resolve, reject3) => {
          const handleError = (error) => {
            this.off("error", handleError);
            reject3(error);
          };
          this.on("error", handleError);
        });
      }
      async #onEvent(event, filter14) {
        return new Promise((resolve3) => {
          const listener = () => {
            if (filter14 && !filter14()) {
              return;
            }
            this.off(event, listener);
            resolve3();
          };
          this.on(event, listener);
        });
      }
      /**
      Size of the queue, the number of queued items waiting to run.
      */
      get size() {
        return this.#queue.size;
      }
      /**
          Size of the queue, filtered by the given options.
      
          For example, this can be used to find the number of items remaining in the queue with a specific priority level.
          */
      sizeBy(options) {
        return this.#queue.filter(options).length;
      }
      /**
      Number of running items (no longer in the queue).
      */
      get pending() {
        return this.#pending;
      }
      /**
      Whether the queue is currently paused.
      */
      get isPaused() {
        return this.#isPaused;
      }
      #setupRateLimitTracking() {
        if (this.#isIntervalIgnored) {
          return;
        }
        this.on("add", () => {
          if (this.#queue.size > 0) {
            this.#scheduleRateLimitUpdate();
          }
        });
        this.on("next", () => {
          this.#scheduleRateLimitUpdate();
        });
      }
      #scheduleRateLimitUpdate() {
        if (this.#isIntervalIgnored || this.#rateLimitFlushScheduled) {
          return;
        }
        this.#rateLimitFlushScheduled = true;
        queueMicrotask(() => {
          this.#rateLimitFlushScheduled = false;
          this.#updateRateLimitState();
        });
      }
      #rollbackIntervalConsumption() {
        if (this.#isIntervalIgnored) {
          return;
        }
        this.#rollbackIntervalSlot();
        this.#scheduleRateLimitUpdate();
      }
      #updateRateLimitState() {
        const previous = this.#rateLimitedInInterval;
        if (this.#isIntervalIgnored || this.#queue.size === 0) {
          if (previous) {
            this.#rateLimitedInInterval = false;
            this.emit("rateLimitCleared");
          }
          return;
        }
        let count2;
        if (this.#strict) {
          const now = Date.now();
          this.#cleanupStrictTicks(now);
          count2 = this.#getActiveTicksCount();
        } else {
          count2 = this.#intervalCount;
        }
        const shouldBeRateLimited = count2 >= this.#intervalCap;
        if (shouldBeRateLimited !== previous) {
          this.#rateLimitedInInterval = shouldBeRateLimited;
          this.emit(shouldBeRateLimited ? "rateLimit" : "rateLimitCleared");
        }
      }
      /**
      Whether the queue is currently rate-limited due to intervalCap.
      */
      get isRateLimited() {
        return this.#rateLimitedInInterval;
      }
      /**
          Whether the queue is saturated. Returns `true` when:
          - All concurrency slots are occupied and tasks are waiting, OR
          - The queue is rate-limited and tasks are waiting
      
          Useful for detecting backpressure and potential hanging tasks.
      
          ```js
          import PQueue from 'p-queue';
      
          const queue = new PQueue({concurrency: 2});
      
          // Backpressure handling
          if (queue.isSaturated) {
              console.log('Queue is saturated, waiting for capacity...');
              await queue.onSizeLessThan(queue.concurrency);
          }
      
          // Monitoring for stuck tasks
          setInterval(() => {
              if (queue.isSaturated) {
                  console.warn(`Queue saturated: ${queue.pending} running, ${queue.size} waiting`);
              }
          }, 60000);
          ```
          */
      get isSaturated() {
        return this.#pending === this.#concurrency && this.#queue.size > 0 || this.isRateLimited && this.#queue.size > 0;
      }
      /**
          The tasks currently being executed. Each task includes its `id`, `priority`, `startTime`, `timeout` (if set), and `timeoutRemaining` (milliseconds until the task times out, or `undefined` if no timeout is set).
      
          Returns an array of task info objects.
      
          ```js
          import PQueue from 'p-queue';
      
          const queue = new PQueue({concurrency: 2, timeout: 10000});
      
          // Add tasks with IDs for better debugging
          queue.add(() => fetchUser(123), {id: 'user-123'});
          queue.add(() => fetchPosts(456), {id: 'posts-456', priority: 1});
      
          // Check what's running
          console.log(queue.runningTasks);
          // => [{
          //   id: 'user-123',
          //   priority: 0,
          //   startTime: 1759253001716,
          //   timeout: 10000,
          //   timeoutRemaining: 9700
          // }, {
          //   id: 'posts-456',
          //   priority: 1,
          //   startTime: 1759253001916,
          //   timeout: 10000,
          //   timeoutRemaining: 9900
          // }]
          ```
          */
      get runningTasks() {
        return [...this.#runningTasks.values()].map((task) => ({
          ...task,
          timeoutRemaining: task.timeout ? Math.max(0, task.startTime + task.timeout - Date.now()) : void 0
        }));
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/p-reflect/3.1.0/6f95dcbf2829f016a4a665ec47811ad42cf4e3ca630bc671584a7e2cc839145d/node_modules/p-reflect/index.js
async function pReflect(promise2) {
  try {
    const value = await promise2;
    return {
      status: "fulfilled",
      value,
      isFulfilled: true,
      isRejected: false
    };
  } catch (error) {
    return {
      status: "rejected",
      reason: error,
      isFulfilled: false,
      isRejected: true
    };
  }
}
var init_p_reflect = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/p-reflect/3.1.0/6f95dcbf2829f016a4a665ec47811ad42cf4e3ca630bc671584a7e2cc839145d/node_modules/p-reflect/index.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/promise-share/2.0.0/ac4f49cac739f00b22965adc2513f67294e2d070cdcb23829af49eac6c0cd2c3/node_modules/promise-share/index.js
function pShare(p) {
  const reflected = pReflect(p);
  return async () => {
    const reflection = await reflected;
    if (reflection.isRejected) throw reflection.reason;
    return reflection.value;
  };
}
var init_promise_share = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/promise-share/2.0.0/ac4f49cac739f00b22965adc2513f67294e2d070cdcb23829af49eac6c0cd2c3/node_modules/promise-share/index.js"() {
    init_p_reflect();
  }
});

// ../installing/package-requester/lib/packageRequester.js
import { createReadStream as createReadStream3, promises as fs42 } from "node:fs";
import path76 from "node:path";
function getLibcFamilySync2() {
  if (currentLibc2 === void 0) {
    currentLibc2 = (0, import_detect_libc3.familySync)();
  }
  return currentLibc2;
}
function createPackageRequester(opts2) {
  opts2 = opts2 || {};
  const networkConcurrency = opts2.networkConcurrency ?? Math.min(64, Math.max(calcMaxWorkers() * 3, 16));
  const requestsQueue = new PQueue({
    concurrency: networkConcurrency
  });
  const fetch2 = fetcher.bind(null, opts2.fetchers, opts2.cafs, opts2.customFetchers);
  const readPkgFromCafs2 = readPkgFromCafs.bind(null, {
    storeDir: opts2.storeDir,
    verifyStoreIntegrity: opts2.verifyStoreIntegrity,
    strictStorePkgContentCheck: opts2.strictStorePkgContentCheck
  });
  const fetchPackageToStore = fetchToStore.bind(null, {
    readPkgFromCafs: readPkgFromCafs2,
    fetch: fetch2,
    fetchingLocker: /* @__PURE__ */ new Map(),
    requestsQueue: Object.assign(requestsQueue, {
      counter: 0,
      concurrency: networkConcurrency
    }),
    storeDir: opts2.storeDir,
    virtualStoreDirMaxLength: opts2.virtualStoreDirMaxLength,
    strictStorePkgContentCheck: opts2.strictStorePkgContentCheck
  });
  const requestPackage = resolveAndFetch.bind(null, {
    engineStrict: opts2.engineStrict,
    nodeVersion: opts2.nodeVersion,
    pnpmVersion: opts2.pnpmVersion,
    force: opts2.force,
    fetchPackageToStore,
    requestsQueue,
    resolve: opts2.resolve,
    storeDir: opts2.storeDir
  });
  return Object.assign(requestPackage, {
    fetchPackageToStore,
    getFilesIndexFilePath: getFilesIndexFilePath.bind(null, {
      storeDir: opts2.storeDir,
      virtualStoreDirMaxLength: opts2.virtualStoreDirMaxLength
    }),
    requestPackage
  });
}
async function resolveAndFetch(ctx, wantedDependency, options) {
  let resolution = options.currentPkg?.resolution;
  let pkgId = options.currentPkg?.id;
  const preferredVersions = resolution && !options.update && options.currentPkg?.name != null && options.currentPkg?.version != null ? {
    ...options.preferredVersions,
    [options.currentPkg.name]: { [options.currentPkg.version]: "version" }
  } : options.preferredVersions;
  const resolveResult = await ctx.requestsQueue.add(async () => ctx.resolve(wantedDependency, {
    ...options,
    preferredVersions,
    currentPkg: options.currentPkg?.id && options.currentPkg?.resolution ? {
      id: options.currentPkg.id,
      name: options.currentPkg.name,
      version: options.currentPkg.version,
      resolution: options.currentPkg.resolution,
      publishedAt: options.currentPkg.publishedAt
    } : void 0
  }), { priority: options.downloadPriority });
  let { manifest } = resolveResult;
  const { latest, resolvedVia, publishedAt, normalizedBareSpecifier, alias, policyViolation } = resolveResult;
  const previousResolution = options.currentPkg?.resolution;
  const previousIntegrity = previousResolution && "integrity" in previousResolution ? previousResolution.integrity : void 0;
  const newIntegrity = "integrity" in resolveResult.resolution ? resolveResult.resolution.integrity : void 0;
  const integrityChanged = previousIntegrity != null && newIntegrity != null && previousIntegrity !== newIntegrity;
  const updated = pkgId !== resolveResult.id || !resolution || integrityChanged;
  resolution = resolveResult.resolution;
  pkgId = resolveResult.id;
  const id = pkgId;
  if ("type" in resolution && resolution.type === "directory" && !id.startsWith("file:")) {
    if (manifest == null) {
      throw new Error(`Couldn't read package.json of local dependency ${wantedDependency.alias ? wantedDependency.alias + "@" : ""}${wantedDependency.bareSpecifier ?? ""}`);
    }
    return {
      body: {
        id,
        isLocal: true,
        manifest,
        resolution,
        resolvedVia,
        updated,
        normalizedBareSpecifier,
        alias
      }
    };
  }
  let isInstallable = ctx.force === true || (manifest == null ? void 0 : packageIsInstallable(id, manifest, {
    engineStrict: ctx.engineStrict,
    lockfileDir: options.lockfileDir,
    nodeVersion: ctx.nodeVersion,
    optional: wantedDependency.optional === true,
    supportedArchitectures: options.supportedArchitectures
  }));
  if ((options.skipFetch === true || isInstallable === false) && !integrityChanged && manifest != null) {
    return {
      body: {
        id,
        isLocal: false,
        isInstallable: isInstallable ?? void 0,
        latest,
        manifest,
        normalizedBareSpecifier,
        resolution,
        resolvedVia,
        updated,
        publishedAt,
        alias,
        policyViolation
      }
    };
  }
  const pkg = manifest != null ? pick_default(["name", "version"], manifest) : {};
  const fetchResult = ctx.fetchPackageToStore({
    allowBuild: options.allowBuild,
    fetchRawManifest: true,
    force: integrityChanged,
    ignoreScripts: options.ignoreScripts,
    lockfileDir: options.lockfileDir,
    pkg: {
      ...options.expectedPkg?.name != null ? updated ? { name: options.expectedPkg.name, version: pkg.version } : options.expectedPkg : pkg,
      id,
      resolution
    },
    onFetchError: options.onFetchError,
    supportedArchitectures: options.supportedArchitectures
  });
  if (!manifest) {
    const fetchedResult = await fetchResult.fetching();
    if (fetchedResult.bundledManifest) {
      manifest = fetchedResult.bundledManifest;
    } else if (fetchedResult.files.filesMap.has("package.json")) {
      const loadedManifest = await loadJsonFile(fetchedResult.files.filesMap.get("package.json"));
      if (!loadedManifest._pnpmPlaceholder) {
        manifest = loadedManifest;
      }
    }
    if (fetchedResult.integrity && !resolution.type && !resolution.integrity) {
      resolution.integrity = fetchedResult.integrity;
    }
  }
  if (isInstallable === void 0 && manifest != null) {
    isInstallable = ctx.force === true || packageIsInstallable(id, manifest, {
      engineStrict: ctx.engineStrict,
      lockfileDir: options.lockfileDir,
      nodeVersion: ctx.nodeVersion,
      optional: wantedDependency.optional === true,
      supportedArchitectures: options.supportedArchitectures
    });
  }
  return {
    body: {
      id,
      isLocal: false,
      isInstallable: isInstallable ?? void 0,
      latest,
      manifest,
      normalizedBareSpecifier,
      resolution,
      resolvedVia,
      updated,
      publishedAt,
      alias,
      policyViolation
    },
    fetching: fetchResult.fetching,
    filesIndexFile: fetchResult.filesIndexFile
  };
}
function getFilesIndexFilePath(ctx, opts2) {
  const targetRelative = depPathToFilename(opts2.pkg.id, ctx.virtualStoreDirMaxLength);
  const target2 = path76.join(ctx.storeDir, targetRelative);
  const built = !opts2.ignoreScripts;
  let resolution;
  if (opts2.pkg.resolution.type === "variations") {
    resolution = findResolution(opts2.pkg.resolution.variants, opts2.supportedArchitectures);
  } else {
    resolution = opts2.pkg.resolution;
  }
  return {
    target: target2,
    filesIndexFile: pickStoreIndexKey(resolution, opts2.pkg.id, { built }),
    resolution
  };
}
function findResolution(resolutionVariants, supportedArchitectures) {
  const selector = resolvePlatformSelector(supportedArchitectures, {
    platform: process.platform,
    arch: process.arch,
    libc: getLibcFamilySync2()
  });
  const variant = selectPlatformVariant(resolutionVariants, selector);
  if (!variant) {
    const resolutionTargets = resolutionVariants.map((variant2) => variant2.targets);
    throw new PnpmError("NO_RESOLUTION_MATCHED", `Cannot find a resolution variant for the current platform in these resolutions: ${JSON.stringify(resolutionTargets)}`);
  }
  return variant.resolution;
}
function fetchToStore(ctx, opts2) {
  if (!opts2.pkg.name) {
    opts2.fetchRawManifest = true;
  }
  if (!ctx.fetchingLocker.has(opts2.pkg.id)) {
    const fetching = pDefer();
    const { filesIndexFile, target: target2, resolution } = getFilesIndexFilePath(ctx, opts2);
    doFetchToStore(filesIndexFile, fetching, target2, resolution);
    ctx.fetchingLocker.set(opts2.pkg.id, {
      fetching: removeKeyOnFail(fetching.promise),
      filesIndexFile,
      fetchRawManifest: opts2.fetchRawManifest
    });
    fetching.promise.then((cache) => {
      progressLogger.debug({
        packageId: opts2.pkg.id,
        requester: opts2.lockfileDir,
        status: cache.files.resolvedFrom === "remote" ? "fetched" : "found_in_store"
      });
      if (cache.files.resolvedFrom !== "remote") {
        return;
      }
      const tmp = ctx.fetchingLocker.get(opts2.pkg.id);
      if (tmp == null)
        return;
      ctx.fetchingLocker.set(opts2.pkg.id, {
        ...tmp,
        fetching: Promise.resolve({
          ...cache,
          files: {
            ...cache.files,
            resolvedFrom: "store"
          }
        })
      });
    }).catch(() => {
      ctx.fetchingLocker.delete(opts2.pkg.id);
    });
  }
  const result2 = ctx.fetchingLocker.get(opts2.pkg.id);
  if (opts2.fetchRawManifest && !result2.fetchRawManifest) {
    result2.fetching = removeKeyOnFail(result2.fetching.then(async ({ files }) => {
      if (!files.filesMap.has("package.json"))
        return {
          files,
          bundledManifest: void 0
        };
      return {
        files,
        bundledManifest: await readBundledManifest(files.filesMap.get("package.json"))
      };
    }));
    result2.fetchRawManifest = true;
  }
  return {
    fetching: pShare(result2.fetching),
    filesIndexFile: result2.filesIndexFile
  };
  async function removeKeyOnFail(p) {
    try {
      return await p;
    } catch (err) {
      ctx.fetchingLocker.delete(opts2.pkg.id);
      if (opts2.onFetchError) {
        throw opts2.onFetchError(err);
      }
      throw err;
    }
  }
  async function doFetchToStore(filesIndexFile, fetching, target2, resolution) {
    try {
      const isLocalTarballDep = opts2.pkg.id.startsWith("file:");
      const isLocalPkg = resolution.type === "directory";
      if (!opts2.force && (!isLocalTarballDep || await tarballIsUpToDate(opts2.pkg.resolution, target2, opts2.lockfileDir)) && !isLocalPkg) {
        const { verified, files, bundledManifest } = await ctx.readPkgFromCafs(filesIndexFile, {
          readManifest: opts2.fetchRawManifest,
          expectedPkg: opts2.pkg
        });
        if (verified) {
          fetching.resolve({
            files,
            bundledManifest
          });
          return;
        }
        if (files?.filesMap != null) {
          packageRequestLogger.warn({
            message: `Refetching ${target2} to store. It was either modified or had no integrity checksums`,
            prefix: opts2.lockfileDir
          });
        }
      }
      const priority = (++ctx.requestsQueue.counter % ctx.requestsQueue.concurrency === 0 ? -1 : 1) * 1e3;
      const fetchedPackage = await ctx.requestsQueue.add(async () => ctx.fetch(opts2.pkg.id, resolution, {
        allowBuild: opts2.allowBuild,
        filesIndexFile,
        lockfileDir: opts2.lockfileDir,
        readManifest: opts2.fetchRawManifest,
        onProgress: (downloaded) => {
          fetchingProgressLogger.debug({
            downloaded,
            packageId: opts2.pkg.id,
            status: "in_progress"
          });
        },
        onStart: (size, attempt) => {
          fetchingProgressLogger.debug({
            attempt,
            packageId: opts2.pkg.id,
            size,
            status: "started"
          });
        },
        pkg: {
          name: opts2.pkg.name,
          version: opts2.pkg.version
        }
      }), { priority });
      const integrity = opts2.pkg.resolution.integrity ?? fetchedPackage.integrity;
      if (isLocalTarballDep && integrity) {
        await fs42.mkdir(target2, { recursive: true });
        await lib_default.writeFile(path76.join(target2, TARBALL_INTEGRITY_FILENAME), integrity, "utf8");
      }
      fetching.resolve({
        files: {
          resolvedFrom: fetchedPackage.local ? "local-dir" : "remote",
          filesMap: fetchedPackage.filesMap,
          packageImportMethod: fetchedPackage.packageImportMethod,
          requiresBuild: fetchedPackage.requiresBuild
        },
        bundledManifest: fetchedPackage.manifest,
        integrity
      });
    } catch (err) {
      fetching.reject(err);
    }
  }
}
async function readBundledManifest(pkgJsonPath) {
  return normalizeBundledManifest(await loadJsonFile(pkgJsonPath));
}
async function tarballIsUpToDate(resolution, pkgInStoreLocation, lockfileDir) {
  let currentIntegrity;
  try {
    currentIntegrity = await lib_default.readFile(path76.join(pkgInStoreLocation, TARBALL_INTEGRITY_FILENAME), "utf8");
  } catch (err) {
    return false;
  }
  if (resolution.integrity && currentIntegrity !== resolution.integrity)
    return false;
  const tarball = path76.join(lockfileDir, resolution.tarball.slice(5));
  const tarballStream = createReadStream3(tarball);
  try {
    return Boolean(await import_ssri4.default.checkStream(tarballStream, currentIntegrity));
  } catch (err) {
    return false;
  }
}
async function fetcher(fetcherByHostingType, cafs, customFetchers, packageId, resolution, opts2) {
  try {
    const fetch2 = await pickFetcher(fetcherByHostingType, resolution, {
      customFetchers,
      packageId
    });
    const result2 = await fetch2(cafs, resolution, opts2);
    return result2;
  } catch (err) {
    packageRequestLogger.warn({
      message: `Fetching ${packageId} failed!`,
      prefix: opts2.lockfileDir
    });
    throw err;
  }
}
var import_detect_libc3, import_ssri4, currentLibc2, TARBALL_INTEGRITY_FILENAME, packageRequestLogger;
var init_packageRequester = __esm({
  "../installing/package-requester/lib/packageRequester.js"() {
    "use strict";
    init_lib28();
    init_lib6();
    init_lib65();
    init_lib2();
    init_lib80();
    init_lib12();
    init_lib3();
    init_lib71();
    init_lib81();
    init_lib16();
    init_lib4();
    import_detect_libc3 = __toESM(require_detect_libc(), 1);
    init_load_json_file();
    init_p_defer();
    init_dist5();
    init_promise_share();
    init_es();
    import_ssri4 = __toESM(require_lib6(), 1);
    TARBALL_INTEGRITY_FILENAME = "tarball-integrity";
    packageRequestLogger = logger("package-requester");
  }
});

// ../installing/package-requester/lib/index.js
var init_lib82 = __esm({
  "../installing/package-requester/lib/index.js"() {
    "use strict";
    init_packageRequester();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/fs/index.js
var require_fs7 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/fs/index.js"(exports2) {
    "use strict";
    var u4 = require_universalify().fromCallback;
    var fs111 = require_graceful_fs();
    var api2 = [
      "access",
      "appendFile",
      "chmod",
      "chown",
      "close",
      "copyFile",
      "cp",
      "fchmod",
      "fchown",
      "fdatasync",
      "fstat",
      "fsync",
      "ftruncate",
      "futimes",
      "glob",
      "lchmod",
      "lchown",
      "lutimes",
      "link",
      "lstat",
      "mkdir",
      "mkdtemp",
      "open",
      "opendir",
      "readdir",
      "readFile",
      "readlink",
      "realpath",
      "rename",
      "rm",
      "rmdir",
      "stat",
      "statfs",
      "symlink",
      "truncate",
      "unlink",
      "utimes",
      "writeFile"
    ].filter((key) => {
      return typeof fs111[key] === "function";
    });
    Object.assign(exports2, fs111);
    api2.forEach((method) => {
      exports2[method] = u4(fs111[method]);
    });
    exports2.exists = function(filename, callback2) {
      if (typeof callback2 === "function") {
        return fs111.exists(filename, callback2);
      }
      return new Promise((resolve3) => {
        return fs111.exists(filename, resolve3);
      });
    };
    exports2.read = function(fd, buffer3, offset, length, position3, callback2) {
      if (typeof callback2 === "function") {
        return fs111.read(fd, buffer3, offset, length, position3, callback2);
      }
      return new Promise((resolve3, reject3) => {
        fs111.read(fd, buffer3, offset, length, position3, (err, bytesRead, buffer4) => {
          if (err) return reject3(err);
          resolve3({ bytesRead, buffer: buffer4 });
        });
      });
    };
    exports2.write = function(fd, buffer3, ...args) {
      if (typeof args[args.length - 1] === "function") {
        return fs111.write(fd, buffer3, ...args);
      }
      return new Promise((resolve3, reject3) => {
        fs111.write(fd, buffer3, ...args, (err, bytesWritten, buffer4) => {
          if (err) return reject3(err);
          resolve3({ bytesWritten, buffer: buffer4 });
        });
      });
    };
    exports2.readv = function(fd, buffers, ...args) {
      if (typeof args[args.length - 1] === "function") {
        return fs111.readv(fd, buffers, ...args);
      }
      return new Promise((resolve3, reject3) => {
        fs111.readv(fd, buffers, ...args, (err, bytesRead, buffers2) => {
          if (err) return reject3(err);
          resolve3({ bytesRead, buffers: buffers2 });
        });
      });
    };
    exports2.writev = function(fd, buffers, ...args) {
      if (typeof args[args.length - 1] === "function") {
        return fs111.writev(fd, buffers, ...args);
      }
      return new Promise((resolve3, reject3) => {
        fs111.writev(fd, buffers, ...args, (err, bytesWritten, buffers2) => {
          if (err) return reject3(err);
          resolve3({ bytesWritten, buffers: buffers2 });
        });
      });
    };
    if (typeof fs111.realpath.native === "function") {
      exports2.realpath.native = u4(fs111.realpath.native);
    } else {
      process.emitWarning(
        "fs.realpath.native is not a function. Is fs being monkey-patched?",
        "Warning",
        "fs-extra-WARN0003"
      );
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/mkdirs/utils.js
var require_utils14 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/mkdirs/utils.js"(exports2, module2) {
    "use strict";
    var path218 = __require("path");
    module2.exports.checkPath = function checkPath(pth) {
      if (process.platform === "win32") {
        const pathHasInvalidWinCharacters = /[<>:"|?*]/.test(pth.replace(path218.parse(pth).root, ""));
        if (pathHasInvalidWinCharacters) {
          const error = new Error(`Path contains invalid characters: ${pth}`);
          error.code = "EINVAL";
          throw error;
        }
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/mkdirs/make-dir.js
var require_make_dir2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/mkdirs/make-dir.js"(exports2, module2) {
    "use strict";
    var fs111 = require_fs7();
    var { checkPath } = require_utils14();
    var getMode = (options) => {
      const defaults4 = { mode: 511 };
      if (typeof options === "number") return options;
      return { ...defaults4, ...options }.mode;
    };
    module2.exports.makeDir = async (dir, options) => {
      checkPath(dir);
      return fs111.mkdir(dir, {
        mode: getMode(options),
        recursive: true
      });
    };
    module2.exports.makeDirSync = (dir, options) => {
      checkPath(dir);
      return fs111.mkdirSync(dir, {
        mode: getMode(options),
        recursive: true
      });
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/mkdirs/index.js
var require_mkdirs2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/mkdirs/index.js"(exports2, module2) {
    "use strict";
    var u4 = require_universalify().fromPromise;
    var { makeDir: _makeDir, makeDirSync } = require_make_dir2();
    var makeDir = u4(_makeDir);
    module2.exports = {
      mkdirs: makeDir,
      mkdirsSync: makeDirSync,
      // alias
      mkdirp: makeDir,
      mkdirpSync: makeDirSync,
      ensureDir: makeDir,
      ensureDirSync: makeDirSync
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/path-exists/index.js
var require_path_exists3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/path-exists/index.js"(exports2, module2) {
    "use strict";
    var u4 = require_universalify().fromPromise;
    var fs111 = require_fs7();
    function pathExists3(path218) {
      return fs111.access(path218).then(() => true).catch(() => false);
    }
    module2.exports = {
      pathExists: u4(pathExists3),
      pathExistsSync: fs111.existsSync
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/util/utimes.js
var require_utimes2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/util/utimes.js"(exports2, module2) {
    "use strict";
    var fs111 = require_fs7();
    var u4 = require_universalify().fromPromise;
    async function utimesMillis(path218, atime, mtime) {
      const fd = await fs111.open(path218, "r+");
      let error = null;
      try {
        await fs111.futimes(fd, atime, mtime);
      } catch (futimesErr) {
        error = futimesErr;
      } finally {
        try {
          await fs111.close(fd);
        } catch (closeErr) {
          if (!error) error = closeErr;
        }
      }
      if (error) {
        throw error;
      }
    }
    function utimesMillisSync(path218, atime, mtime) {
      const fd = fs111.openSync(path218, "r+");
      let error = null;
      try {
        fs111.futimesSync(fd, atime, mtime);
      } catch (futimesErr) {
        error = futimesErr;
      } finally {
        try {
          fs111.closeSync(fd);
        } catch (closeErr) {
          if (!error) error = closeErr;
        }
      }
      if (error) {
        throw error;
      }
    }
    module2.exports = {
      utimesMillis: u4(utimesMillis),
      utimesMillisSync
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/util/stat.js
var require_stat2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/util/stat.js"(exports2, module2) {
    "use strict";
    var fs111 = require_fs7();
    var path218 = __require("path");
    var u4 = require_universalify().fromPromise;
    function getStats2(src2, dest, opts2) {
      const statFunc = opts2.dereference ? (file) => fs111.stat(file, { bigint: true }) : (file) => fs111.lstat(file, { bigint: true });
      return Promise.all([
        statFunc(src2),
        statFunc(dest).catch((err) => {
          if (err.code === "ENOENT") return null;
          throw err;
        })
      ]).then(([srcStat, destStat]) => ({ srcStat, destStat }));
    }
    function getStatsSync(src2, dest, opts2) {
      let destStat;
      const statFunc = opts2.dereference ? (file) => fs111.statSync(file, { bigint: true }) : (file) => fs111.lstatSync(file, { bigint: true });
      const srcStat = statFunc(src2);
      try {
        destStat = statFunc(dest);
      } catch (err) {
        if (err.code === "ENOENT") return { srcStat, destStat: null };
        throw err;
      }
      return { srcStat, destStat };
    }
    async function checkPaths(src2, dest, funcName, opts2) {
      const { srcStat, destStat } = await getStats2(src2, dest, opts2);
      if (destStat) {
        if (areIdentical(srcStat, destStat)) {
          const srcBaseName = path218.basename(src2);
          const destBaseName = path218.basename(dest);
          if (funcName === "move" && srcBaseName !== destBaseName && srcBaseName.toLowerCase() === destBaseName.toLowerCase()) {
            return { srcStat, destStat, isChangingCase: true };
          }
          throw new Error("Source and destination must not be the same.");
        }
        if (srcStat.isDirectory() && !destStat.isDirectory()) {
          throw new Error(`Cannot overwrite non-directory '${dest}' with directory '${src2}'.`);
        }
        if (!srcStat.isDirectory() && destStat.isDirectory()) {
          throw new Error(`Cannot overwrite directory '${dest}' with non-directory '${src2}'.`);
        }
      }
      if (srcStat.isDirectory() && isSrcSubdir(src2, dest)) {
        throw new Error(errMsg(src2, dest, funcName));
      }
      return { srcStat, destStat };
    }
    function checkPathsSync(src2, dest, funcName, opts2) {
      const { srcStat, destStat } = getStatsSync(src2, dest, opts2);
      if (destStat) {
        if (areIdentical(srcStat, destStat)) {
          const srcBaseName = path218.basename(src2);
          const destBaseName = path218.basename(dest);
          if (funcName === "move" && srcBaseName !== destBaseName && srcBaseName.toLowerCase() === destBaseName.toLowerCase()) {
            return { srcStat, destStat, isChangingCase: true };
          }
          throw new Error("Source and destination must not be the same.");
        }
        if (srcStat.isDirectory() && !destStat.isDirectory()) {
          throw new Error(`Cannot overwrite non-directory '${dest}' with directory '${src2}'.`);
        }
        if (!srcStat.isDirectory() && destStat.isDirectory()) {
          throw new Error(`Cannot overwrite directory '${dest}' with non-directory '${src2}'.`);
        }
      }
      if (srcStat.isDirectory() && isSrcSubdir(src2, dest)) {
        throw new Error(errMsg(src2, dest, funcName));
      }
      return { srcStat, destStat };
    }
    async function checkParentPaths(src2, srcStat, dest, funcName) {
      const srcParent = path218.resolve(path218.dirname(src2));
      const destParent = path218.resolve(path218.dirname(dest));
      if (destParent === srcParent || destParent === path218.parse(destParent).root) return;
      let destStat;
      try {
        destStat = await fs111.stat(destParent, { bigint: true });
      } catch (err) {
        if (err.code === "ENOENT") return;
        throw err;
      }
      if (areIdentical(srcStat, destStat)) {
        throw new Error(errMsg(src2, dest, funcName));
      }
      return checkParentPaths(src2, srcStat, destParent, funcName);
    }
    function checkParentPathsSync(src2, srcStat, dest, funcName) {
      const srcParent = path218.resolve(path218.dirname(src2));
      const destParent = path218.resolve(path218.dirname(dest));
      if (destParent === srcParent || destParent === path218.parse(destParent).root) return;
      let destStat;
      try {
        destStat = fs111.statSync(destParent, { bigint: true });
      } catch (err) {
        if (err.code === "ENOENT") return;
        throw err;
      }
      if (areIdentical(srcStat, destStat)) {
        throw new Error(errMsg(src2, dest, funcName));
      }
      return checkParentPathsSync(src2, srcStat, destParent, funcName);
    }
    function areIdentical(srcStat, destStat) {
      return destStat.ino !== void 0 && destStat.dev !== void 0 && destStat.ino === srcStat.ino && destStat.dev === srcStat.dev;
    }
    function isSrcSubdir(src2, dest) {
      const srcArr = path218.resolve(src2).split(path218.sep).filter((i2) => i2);
      const destArr = path218.resolve(dest).split(path218.sep).filter((i2) => i2);
      return srcArr.every((cur, i2) => destArr[i2] === cur);
    }
    function errMsg(src2, dest, funcName) {
      return `Cannot ${funcName} '${src2}' to a subdirectory of itself, '${dest}'.`;
    }
    module2.exports = {
      // checkPaths
      checkPaths: u4(checkPaths),
      checkPathsSync,
      // checkParent
      checkParentPaths: u4(checkParentPaths),
      checkParentPathsSync,
      // Misc
      isSrcSubdir,
      areIdentical
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/util/async.js
var require_async8 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/util/async.js"(exports2, module2) {
    "use strict";
    async function asyncIteratorConcurrentProcess(iterator, fn) {
      const promises = [];
      for await (const item of iterator) {
        promises.push(
          fn(item).then(
            () => null,
            (err) => err ?? new Error("unknown error")
          )
        );
      }
      await Promise.all(
        promises.map(
          (promise2) => promise2.then((possibleErr) => {
            if (possibleErr !== null) throw possibleErr;
          })
        )
      );
    }
    module2.exports = {
      asyncIteratorConcurrentProcess
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/copy/copy.js
var require_copy3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/copy/copy.js"(exports2, module2) {
    "use strict";
    var fs111 = require_fs7();
    var path218 = __require("path");
    var { mkdirs } = require_mkdirs2();
    var { pathExists: pathExists3 } = require_path_exists3();
    var { utimesMillis } = require_utimes2();
    var stat2 = require_stat2();
    var { asyncIteratorConcurrentProcess } = require_async8();
    async function copy2(src2, dest, opts2 = {}) {
      if (typeof opts2 === "function") {
        opts2 = { filter: opts2 };
      }
      opts2.clobber = "clobber" in opts2 ? !!opts2.clobber : true;
      opts2.overwrite = "overwrite" in opts2 ? !!opts2.overwrite : opts2.clobber;
      if (opts2.preserveTimestamps && process.arch === "ia32") {
        process.emitWarning(
          "Using the preserveTimestamps option in 32-bit node is not recommended;\n\n	see https://github.com/jprichardson/node-fs-extra/issues/269",
          "Warning",
          "fs-extra-WARN0001"
        );
      }
      const { srcStat, destStat } = await stat2.checkPaths(src2, dest, "copy", opts2);
      await stat2.checkParentPaths(src2, srcStat, dest, "copy");
      const include = await runFilter(src2, dest, opts2);
      if (!include) return;
      const destParent = path218.dirname(dest);
      const dirExists = await pathExists3(destParent);
      if (!dirExists) {
        await mkdirs(destParent);
      }
      await getStatsAndPerformCopy(destStat, src2, dest, opts2);
    }
    async function runFilter(src2, dest, opts2) {
      if (!opts2.filter) return true;
      return opts2.filter(src2, dest);
    }
    async function getStatsAndPerformCopy(destStat, src2, dest, opts2) {
      const statFn = opts2.dereference ? fs111.stat : fs111.lstat;
      const srcStat = await statFn(src2);
      if (srcStat.isDirectory()) return onDir(srcStat, destStat, src2, dest, opts2);
      if (srcStat.isFile() || srcStat.isCharacterDevice() || srcStat.isBlockDevice()) return onFile(srcStat, destStat, src2, dest, opts2);
      if (srcStat.isSymbolicLink()) return onLink(destStat, src2, dest, opts2);
      if (srcStat.isSocket()) throw new Error(`Cannot copy a socket file: ${src2}`);
      if (srcStat.isFIFO()) throw new Error(`Cannot copy a FIFO pipe: ${src2}`);
      throw new Error(`Unknown file: ${src2}`);
    }
    async function onFile(srcStat, destStat, src2, dest, opts2) {
      if (!destStat) return copyFile(srcStat, src2, dest, opts2);
      if (opts2.overwrite) {
        await fs111.unlink(dest);
        return copyFile(srcStat, src2, dest, opts2);
      }
      if (opts2.errorOnExist) {
        throw new Error(`'${dest}' already exists`);
      }
    }
    async function copyFile(srcStat, src2, dest, opts2) {
      await fs111.copyFile(src2, dest);
      if (opts2.preserveTimestamps) {
        if (fileIsNotWritable(srcStat.mode)) {
          await makeFileWritable(dest, srcStat.mode);
        }
        const updatedSrcStat = await fs111.stat(src2);
        await utimesMillis(dest, updatedSrcStat.atime, updatedSrcStat.mtime);
      }
      return fs111.chmod(dest, srcStat.mode);
    }
    function fileIsNotWritable(srcMode) {
      return (srcMode & 128) === 0;
    }
    function makeFileWritable(dest, srcMode) {
      return fs111.chmod(dest, srcMode | 128);
    }
    async function onDir(srcStat, destStat, src2, dest, opts2) {
      if (!destStat) {
        await fs111.mkdir(dest);
      }
      await asyncIteratorConcurrentProcess(await fs111.opendir(src2), async (item) => {
        const srcItem = path218.join(src2, item.name);
        const destItem = path218.join(dest, item.name);
        const include = await runFilter(srcItem, destItem, opts2);
        if (include) {
          const { destStat: destStat2 } = await stat2.checkPaths(srcItem, destItem, "copy", opts2);
          await getStatsAndPerformCopy(destStat2, srcItem, destItem, opts2);
        }
      });
      if (!destStat) {
        await fs111.chmod(dest, srcStat.mode);
      }
    }
    async function onLink(destStat, src2, dest, opts2) {
      let resolvedSrc = await fs111.readlink(src2);
      if (opts2.dereference) {
        resolvedSrc = path218.resolve(process.cwd(), resolvedSrc);
      }
      if (!destStat) {
        return fs111.symlink(resolvedSrc, dest);
      }
      let resolvedDest = null;
      try {
        resolvedDest = await fs111.readlink(dest);
      } catch (e) {
        if (e.code === "EINVAL" || e.code === "UNKNOWN") return fs111.symlink(resolvedSrc, dest);
        throw e;
      }
      if (opts2.dereference) {
        resolvedDest = path218.resolve(process.cwd(), resolvedDest);
      }
      if (resolvedSrc !== resolvedDest) {
        if (stat2.isSrcSubdir(resolvedSrc, resolvedDest)) {
          throw new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`);
        }
        if (stat2.isSrcSubdir(resolvedDest, resolvedSrc)) {
          throw new Error(`Cannot overwrite '${resolvedDest}' with '${resolvedSrc}'.`);
        }
      }
      await fs111.unlink(dest);
      return fs111.symlink(resolvedSrc, dest);
    }
    module2.exports = copy2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/copy/copy-sync.js
var require_copy_sync2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/copy/copy-sync.js"(exports2, module2) {
    "use strict";
    var fs111 = require_graceful_fs();
    var path218 = __require("path");
    var mkdirsSync = require_mkdirs2().mkdirsSync;
    var utimesMillisSync = require_utimes2().utimesMillisSync;
    var stat2 = require_stat2();
    function copySync2(src2, dest, opts2) {
      if (typeof opts2 === "function") {
        opts2 = { filter: opts2 };
      }
      opts2 = opts2 || {};
      opts2.clobber = "clobber" in opts2 ? !!opts2.clobber : true;
      opts2.overwrite = "overwrite" in opts2 ? !!opts2.overwrite : opts2.clobber;
      if (opts2.preserveTimestamps && process.arch === "ia32") {
        process.emitWarning(
          "Using the preserveTimestamps option in 32-bit node is not recommended;\n\n	see https://github.com/jprichardson/node-fs-extra/issues/269",
          "Warning",
          "fs-extra-WARN0002"
        );
      }
      const { srcStat, destStat } = stat2.checkPathsSync(src2, dest, "copy", opts2);
      stat2.checkParentPathsSync(src2, srcStat, dest, "copy");
      if (opts2.filter && !opts2.filter(src2, dest)) return;
      const destParent = path218.dirname(dest);
      if (!fs111.existsSync(destParent)) mkdirsSync(destParent);
      return getStats2(destStat, src2, dest, opts2);
    }
    function getStats2(destStat, src2, dest, opts2) {
      const statSync3 = opts2.dereference ? fs111.statSync : fs111.lstatSync;
      const srcStat = statSync3(src2);
      if (srcStat.isDirectory()) return onDir(srcStat, destStat, src2, dest, opts2);
      else if (srcStat.isFile() || srcStat.isCharacterDevice() || srcStat.isBlockDevice()) return onFile(srcStat, destStat, src2, dest, opts2);
      else if (srcStat.isSymbolicLink()) return onLink(destStat, src2, dest, opts2);
      else if (srcStat.isSocket()) throw new Error(`Cannot copy a socket file: ${src2}`);
      else if (srcStat.isFIFO()) throw new Error(`Cannot copy a FIFO pipe: ${src2}`);
      throw new Error(`Unknown file: ${src2}`);
    }
    function onFile(srcStat, destStat, src2, dest, opts2) {
      if (!destStat) return copyFile(srcStat, src2, dest, opts2);
      return mayCopyFile(srcStat, src2, dest, opts2);
    }
    function mayCopyFile(srcStat, src2, dest, opts2) {
      if (opts2.overwrite) {
        fs111.unlinkSync(dest);
        return copyFile(srcStat, src2, dest, opts2);
      } else if (opts2.errorOnExist) {
        throw new Error(`'${dest}' already exists`);
      }
    }
    function copyFile(srcStat, src2, dest, opts2) {
      fs111.copyFileSync(src2, dest);
      if (opts2.preserveTimestamps) handleTimestamps(srcStat.mode, src2, dest);
      return setDestMode(dest, srcStat.mode);
    }
    function handleTimestamps(srcMode, src2, dest) {
      if (fileIsNotWritable(srcMode)) makeFileWritable(dest, srcMode);
      return setDestTimestamps(src2, dest);
    }
    function fileIsNotWritable(srcMode) {
      return (srcMode & 128) === 0;
    }
    function makeFileWritable(dest, srcMode) {
      return setDestMode(dest, srcMode | 128);
    }
    function setDestMode(dest, srcMode) {
      return fs111.chmodSync(dest, srcMode);
    }
    function setDestTimestamps(src2, dest) {
      const updatedSrcStat = fs111.statSync(src2);
      return utimesMillisSync(dest, updatedSrcStat.atime, updatedSrcStat.mtime);
    }
    function onDir(srcStat, destStat, src2, dest, opts2) {
      if (!destStat) return mkDirAndCopy(srcStat.mode, src2, dest, opts2);
      return copyDir(src2, dest, opts2);
    }
    function mkDirAndCopy(srcMode, src2, dest, opts2) {
      fs111.mkdirSync(dest);
      copyDir(src2, dest, opts2);
      return setDestMode(dest, srcMode);
    }
    function copyDir(src2, dest, opts2) {
      const dir = fs111.opendirSync(src2);
      try {
        let dirent;
        while ((dirent = dir.readSync()) !== null) {
          copyDirItem(dirent.name, src2, dest, opts2);
        }
      } finally {
        dir.closeSync();
      }
    }
    function copyDirItem(item, src2, dest, opts2) {
      const srcItem = path218.join(src2, item);
      const destItem = path218.join(dest, item);
      if (opts2.filter && !opts2.filter(srcItem, destItem)) return;
      const { destStat } = stat2.checkPathsSync(srcItem, destItem, "copy", opts2);
      return getStats2(destStat, srcItem, destItem, opts2);
    }
    function onLink(destStat, src2, dest, opts2) {
      let resolvedSrc = fs111.readlinkSync(src2);
      if (opts2.dereference) {
        resolvedSrc = path218.resolve(process.cwd(), resolvedSrc);
      }
      if (!destStat) {
        return fs111.symlinkSync(resolvedSrc, dest);
      } else {
        let resolvedDest;
        try {
          resolvedDest = fs111.readlinkSync(dest);
        } catch (err) {
          if (err.code === "EINVAL" || err.code === "UNKNOWN") return fs111.symlinkSync(resolvedSrc, dest);
          throw err;
        }
        if (opts2.dereference) {
          resolvedDest = path218.resolve(process.cwd(), resolvedDest);
        }
        if (resolvedSrc !== resolvedDest) {
          if (stat2.isSrcSubdir(resolvedSrc, resolvedDest)) {
            throw new Error(`Cannot copy '${resolvedSrc}' to a subdirectory of itself, '${resolvedDest}'.`);
          }
          if (stat2.isSrcSubdir(resolvedDest, resolvedSrc)) {
            throw new Error(`Cannot overwrite '${resolvedDest}' with '${resolvedSrc}'.`);
          }
        }
        return copyLink(resolvedSrc, dest);
      }
    }
    function copyLink(resolvedSrc, dest) {
      fs111.unlinkSync(dest);
      return fs111.symlinkSync(resolvedSrc, dest);
    }
    module2.exports = copySync2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/copy/index.js
var require_copy4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/copy/index.js"(exports2, module2) {
    "use strict";
    var u4 = require_universalify().fromPromise;
    module2.exports = {
      copy: u4(require_copy3()),
      copySync: require_copy_sync2()
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/remove/index.js
var require_remove2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/remove/index.js"(exports2, module2) {
    "use strict";
    var fs111 = require_graceful_fs();
    var u4 = require_universalify().fromCallback;
    function remove(path218, callback2) {
      fs111.rm(path218, { recursive: true, force: true }, callback2);
    }
    function removeSync(path218) {
      fs111.rmSync(path218, { recursive: true, force: true });
    }
    module2.exports = {
      remove: u4(remove),
      removeSync
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/empty/index.js
var require_empty2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/empty/index.js"(exports2, module2) {
    "use strict";
    var u4 = require_universalify().fromPromise;
    var fs111 = require_fs7();
    var path218 = __require("path");
    var mkdir2 = require_mkdirs2();
    var remove = require_remove2();
    var emptyDir = u4(async function emptyDir2(dir) {
      let items;
      try {
        items = await fs111.readdir(dir);
      } catch {
        return mkdir2.mkdirs(dir);
      }
      return Promise.all(items.map((item) => remove.remove(path218.join(dir, item))));
    });
    function emptyDirSync(dir) {
      let items;
      try {
        items = fs111.readdirSync(dir);
      } catch {
        return mkdir2.mkdirsSync(dir);
      }
      items.forEach((item) => {
        item = path218.join(dir, item);
        remove.removeSync(item);
      });
    }
    module2.exports = {
      emptyDirSync,
      emptydirSync: emptyDirSync,
      emptyDir,
      emptydir: emptyDir
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/ensure/file.js
var require_file2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/ensure/file.js"(exports2, module2) {
    "use strict";
    var u4 = require_universalify().fromPromise;
    var path218 = __require("path");
    var fs111 = require_fs7();
    var mkdir2 = require_mkdirs2();
    async function createFile(file) {
      let stats;
      try {
        stats = await fs111.stat(file);
      } catch {
      }
      if (stats && stats.isFile()) return;
      const dir = path218.dirname(file);
      let dirStats = null;
      try {
        dirStats = await fs111.stat(dir);
      } catch (err) {
        if (err.code === "ENOENT") {
          await mkdir2.mkdirs(dir);
          await fs111.writeFile(file, "");
          return;
        } else {
          throw err;
        }
      }
      if (dirStats.isDirectory()) {
        await fs111.writeFile(file, "");
      } else {
        await fs111.readdir(dir);
      }
    }
    function createFileSync(file) {
      let stats;
      try {
        stats = fs111.statSync(file);
      } catch {
      }
      if (stats && stats.isFile()) return;
      const dir = path218.dirname(file);
      try {
        if (!fs111.statSync(dir).isDirectory()) {
          fs111.readdirSync(dir);
        }
      } catch (err) {
        if (err && err.code === "ENOENT") mkdir2.mkdirsSync(dir);
        else throw err;
      }
      fs111.writeFileSync(file, "");
    }
    module2.exports = {
      createFile: u4(createFile),
      createFileSync
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/ensure/link.js
var require_link2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/ensure/link.js"(exports2, module2) {
    "use strict";
    var u4 = require_universalify().fromPromise;
    var path218 = __require("path");
    var fs111 = require_fs7();
    var mkdir2 = require_mkdirs2();
    var { pathExists: pathExists3 } = require_path_exists3();
    var { areIdentical } = require_stat2();
    async function createLink(srcpath, dstpath) {
      let dstStat;
      try {
        dstStat = await fs111.lstat(dstpath, { bigint: true });
      } catch {
      }
      let srcStat;
      try {
        srcStat = await fs111.lstat(srcpath, { bigint: true });
      } catch (err) {
        err.message = err.message.replace("lstat", "ensureLink");
        throw err;
      }
      if (dstStat && areIdentical(srcStat, dstStat)) return;
      const dir = path218.dirname(dstpath);
      const dirExists = await pathExists3(dir);
      if (!dirExists) {
        await mkdir2.mkdirs(dir);
      }
      await fs111.link(srcpath, dstpath);
    }
    function createLinkSync(srcpath, dstpath) {
      let dstStat;
      try {
        dstStat = fs111.lstatSync(dstpath, { bigint: true });
      } catch {
      }
      try {
        const srcStat = fs111.lstatSync(srcpath, { bigint: true });
        if (dstStat && areIdentical(srcStat, dstStat)) return;
      } catch (err) {
        err.message = err.message.replace("lstat", "ensureLink");
        throw err;
      }
      const dir = path218.dirname(dstpath);
      const dirExists = fs111.existsSync(dir);
      if (dirExists) return fs111.linkSync(srcpath, dstpath);
      mkdir2.mkdirsSync(dir);
      return fs111.linkSync(srcpath, dstpath);
    }
    module2.exports = {
      createLink: u4(createLink),
      createLinkSync
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/ensure/symlink-paths.js
var require_symlink_paths2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/ensure/symlink-paths.js"(exports2, module2) {
    "use strict";
    var path218 = __require("path");
    var fs111 = require_fs7();
    var { pathExists: pathExists3 } = require_path_exists3();
    var u4 = require_universalify().fromPromise;
    async function symlinkPaths(srcpath, dstpath) {
      if (path218.isAbsolute(srcpath)) {
        try {
          await fs111.lstat(srcpath);
        } catch (err) {
          err.message = err.message.replace("lstat", "ensureSymlink");
          throw err;
        }
        return {
          toCwd: srcpath,
          toDst: srcpath
        };
      }
      const dstdir = path218.dirname(dstpath);
      const relativeToDst = path218.join(dstdir, srcpath);
      const exists = await pathExists3(relativeToDst);
      if (exists) {
        return {
          toCwd: relativeToDst,
          toDst: srcpath
        };
      }
      try {
        await fs111.lstat(srcpath);
      } catch (err) {
        err.message = err.message.replace("lstat", "ensureSymlink");
        throw err;
      }
      return {
        toCwd: srcpath,
        toDst: path218.relative(dstdir, srcpath)
      };
    }
    function symlinkPathsSync(srcpath, dstpath) {
      if (path218.isAbsolute(srcpath)) {
        const exists2 = fs111.existsSync(srcpath);
        if (!exists2) throw new Error("absolute srcpath does not exist");
        return {
          toCwd: srcpath,
          toDst: srcpath
        };
      }
      const dstdir = path218.dirname(dstpath);
      const relativeToDst = path218.join(dstdir, srcpath);
      const exists = fs111.existsSync(relativeToDst);
      if (exists) {
        return {
          toCwd: relativeToDst,
          toDst: srcpath
        };
      }
      const srcExists = fs111.existsSync(srcpath);
      if (!srcExists) throw new Error("relative srcpath does not exist");
      return {
        toCwd: srcpath,
        toDst: path218.relative(dstdir, srcpath)
      };
    }
    module2.exports = {
      symlinkPaths: u4(symlinkPaths),
      symlinkPathsSync
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/ensure/symlink-type.js
var require_symlink_type2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/ensure/symlink-type.js"(exports2, module2) {
    "use strict";
    var fs111 = require_fs7();
    var u4 = require_universalify().fromPromise;
    async function symlinkType(srcpath, type4) {
      if (type4) return type4;
      let stats;
      try {
        stats = await fs111.lstat(srcpath);
      } catch {
        return "file";
      }
      return stats && stats.isDirectory() ? "dir" : "file";
    }
    function symlinkTypeSync(srcpath, type4) {
      if (type4) return type4;
      let stats;
      try {
        stats = fs111.lstatSync(srcpath);
      } catch {
        return "file";
      }
      return stats && stats.isDirectory() ? "dir" : "file";
    }
    module2.exports = {
      symlinkType: u4(symlinkType),
      symlinkTypeSync
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/ensure/symlink.js
var require_symlink2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/ensure/symlink.js"(exports2, module2) {
    "use strict";
    var u4 = require_universalify().fromPromise;
    var path218 = __require("path");
    var fs111 = require_fs7();
    var { mkdirs, mkdirsSync } = require_mkdirs2();
    var { symlinkPaths, symlinkPathsSync } = require_symlink_paths2();
    var { symlinkType, symlinkTypeSync } = require_symlink_type2();
    var { pathExists: pathExists3 } = require_path_exists3();
    var { areIdentical } = require_stat2();
    async function createSymlink(srcpath, dstpath, type4) {
      let stats;
      try {
        stats = await fs111.lstat(dstpath);
      } catch {
      }
      if (stats && stats.isSymbolicLink()) {
        let srcStat;
        if (path218.isAbsolute(srcpath)) {
          srcStat = await fs111.stat(srcpath, { bigint: true });
        } else {
          const dstdir = path218.dirname(dstpath);
          const relativeToDst = path218.join(dstdir, srcpath);
          try {
            srcStat = await fs111.stat(relativeToDst, { bigint: true });
          } catch {
            srcStat = await fs111.stat(srcpath, { bigint: true });
          }
        }
        const dstStat = await fs111.stat(dstpath, { bigint: true });
        if (areIdentical(srcStat, dstStat)) return;
      }
      const relative2 = await symlinkPaths(srcpath, dstpath);
      srcpath = relative2.toDst;
      const toType = await symlinkType(relative2.toCwd, type4);
      const dir = path218.dirname(dstpath);
      if (!await pathExists3(dir)) {
        await mkdirs(dir);
      }
      return fs111.symlink(srcpath, dstpath, toType);
    }
    function createSymlinkSync2(srcpath, dstpath, type4) {
      let stats;
      try {
        stats = fs111.lstatSync(dstpath);
      } catch {
      }
      if (stats && stats.isSymbolicLink()) {
        let srcStat;
        if (path218.isAbsolute(srcpath)) {
          srcStat = fs111.statSync(srcpath, { bigint: true });
        } else {
          const dstdir = path218.dirname(dstpath);
          const relativeToDst = path218.join(dstdir, srcpath);
          try {
            srcStat = fs111.statSync(relativeToDst, { bigint: true });
          } catch {
            srcStat = fs111.statSync(srcpath, { bigint: true });
          }
        }
        const dstStat = fs111.statSync(dstpath, { bigint: true });
        if (areIdentical(srcStat, dstStat)) return;
      }
      const relative2 = symlinkPathsSync(srcpath, dstpath);
      srcpath = relative2.toDst;
      type4 = symlinkTypeSync(relative2.toCwd, type4);
      const dir = path218.dirname(dstpath);
      const exists = fs111.existsSync(dir);
      if (exists) return fs111.symlinkSync(srcpath, dstpath, type4);
      mkdirsSync(dir);
      return fs111.symlinkSync(srcpath, dstpath, type4);
    }
    module2.exports = {
      createSymlink: u4(createSymlink),
      createSymlinkSync: createSymlinkSync2
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/ensure/index.js
var require_ensure2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/ensure/index.js"(exports2, module2) {
    "use strict";
    var { createFile, createFileSync } = require_file2();
    var { createLink, createLinkSync } = require_link2();
    var { createSymlink, createSymlinkSync: createSymlinkSync2 } = require_symlink2();
    module2.exports = {
      // file
      createFile,
      createFileSync,
      ensureFile: createFile,
      ensureFileSync: createFileSync,
      // link
      createLink,
      createLinkSync,
      ensureLink: createLink,
      ensureLinkSync: createLinkSync,
      // symlink
      createSymlink,
      createSymlinkSync: createSymlinkSync2,
      ensureSymlink: createSymlink,
      ensureSymlinkSync: createSymlinkSync2
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/json/jsonfile.js
var require_jsonfile3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/json/jsonfile.js"(exports2, module2) {
    "use strict";
    var jsonFile = require_jsonfile();
    module2.exports = {
      // jsonfile exports
      readJson: jsonFile.readFile,
      readJsonSync: jsonFile.readFileSync,
      writeJson: jsonFile.writeFile,
      writeJsonSync: jsonFile.writeFileSync
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/output-file/index.js
var require_output_file2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/output-file/index.js"(exports2, module2) {
    "use strict";
    var u4 = require_universalify().fromPromise;
    var fs111 = require_fs7();
    var path218 = __require("path");
    var mkdir2 = require_mkdirs2();
    var pathExists3 = require_path_exists3().pathExists;
    async function outputFile(file, data, encoding = "utf-8") {
      const dir = path218.dirname(file);
      if (!await pathExists3(dir)) {
        await mkdir2.mkdirs(dir);
      }
      return fs111.writeFile(file, data, encoding);
    }
    function outputFileSync(file, ...args) {
      const dir = path218.dirname(file);
      if (!fs111.existsSync(dir)) {
        mkdir2.mkdirsSync(dir);
      }
      fs111.writeFileSync(file, ...args);
    }
    module2.exports = {
      outputFile: u4(outputFile),
      outputFileSync
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/json/output-json.js
var require_output_json2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/json/output-json.js"(exports2, module2) {
    "use strict";
    var { stringify } = require_utils2();
    var { outputFile } = require_output_file2();
    async function outputJson(file, data, options = {}) {
      const str2 = stringify(data, options);
      await outputFile(file, str2, options);
    }
    module2.exports = outputJson;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/json/output-json-sync.js
var require_output_json_sync2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/json/output-json-sync.js"(exports2, module2) {
    "use strict";
    var { stringify } = require_utils2();
    var { outputFileSync } = require_output_file2();
    function outputJsonSync(file, data, options) {
      const str2 = stringify(data, options);
      outputFileSync(file, str2, options);
    }
    module2.exports = outputJsonSync;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/json/index.js
var require_json3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/json/index.js"(exports2, module2) {
    "use strict";
    var u4 = require_universalify().fromPromise;
    var jsonFile = require_jsonfile3();
    jsonFile.outputJson = u4(require_output_json2());
    jsonFile.outputJsonSync = require_output_json_sync2();
    jsonFile.outputJSON = jsonFile.outputJson;
    jsonFile.outputJSONSync = jsonFile.outputJsonSync;
    jsonFile.writeJSON = jsonFile.writeJson;
    jsonFile.writeJSONSync = jsonFile.writeJsonSync;
    jsonFile.readJSON = jsonFile.readJson;
    jsonFile.readJSONSync = jsonFile.readJsonSync;
    module2.exports = jsonFile;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/move/move.js
var require_move3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/move/move.js"(exports2, module2) {
    "use strict";
    var fs111 = require_fs7();
    var path218 = __require("path");
    var { copy: copy2 } = require_copy4();
    var { remove } = require_remove2();
    var { mkdirp } = require_mkdirs2();
    var { pathExists: pathExists3 } = require_path_exists3();
    var stat2 = require_stat2();
    async function move(src2, dest, opts2 = {}) {
      const overwrite = opts2.overwrite || opts2.clobber || false;
      const { srcStat, isChangingCase = false } = await stat2.checkPaths(src2, dest, "move", opts2);
      await stat2.checkParentPaths(src2, srcStat, dest, "move");
      const destParent = path218.dirname(dest);
      const parsedParentPath = path218.parse(destParent);
      if (parsedParentPath.root !== destParent) {
        await mkdirp(destParent);
      }
      return doRename(src2, dest, overwrite, isChangingCase);
    }
    async function doRename(src2, dest, overwrite, isChangingCase) {
      if (!isChangingCase) {
        if (overwrite) {
          await remove(dest);
        } else if (await pathExists3(dest)) {
          throw new Error("dest already exists.");
        }
      }
      try {
        await fs111.rename(src2, dest);
      } catch (err) {
        if (err.code !== "EXDEV") {
          throw err;
        }
        await moveAcrossDevice(src2, dest, overwrite);
      }
    }
    async function moveAcrossDevice(src2, dest, overwrite) {
      const opts2 = {
        overwrite,
        errorOnExist: true,
        preserveTimestamps: true
      };
      await copy2(src2, dest, opts2);
      return remove(src2);
    }
    module2.exports = move;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/move/move-sync.js
var require_move_sync2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/move/move-sync.js"(exports2, module2) {
    "use strict";
    var fs111 = require_graceful_fs();
    var path218 = __require("path");
    var copySync2 = require_copy4().copySync;
    var removeSync = require_remove2().removeSync;
    var mkdirpSync = require_mkdirs2().mkdirpSync;
    var stat2 = require_stat2();
    function moveSync(src2, dest, opts2) {
      opts2 = opts2 || {};
      const overwrite = opts2.overwrite || opts2.clobber || false;
      const { srcStat, isChangingCase = false } = stat2.checkPathsSync(src2, dest, "move", opts2);
      stat2.checkParentPathsSync(src2, srcStat, dest, "move");
      if (!isParentRoot(dest)) mkdirpSync(path218.dirname(dest));
      return doRename(src2, dest, overwrite, isChangingCase);
    }
    function isParentRoot(dest) {
      const parent = path218.dirname(dest);
      const parsedPath = path218.parse(parent);
      return parsedPath.root === parent;
    }
    function doRename(src2, dest, overwrite, isChangingCase) {
      if (isChangingCase) return rename(src2, dest, overwrite);
      if (overwrite) {
        removeSync(dest);
        return rename(src2, dest, overwrite);
      }
      if (fs111.existsSync(dest)) throw new Error("dest already exists.");
      return rename(src2, dest, overwrite);
    }
    function rename(src2, dest, overwrite) {
      try {
        fs111.renameSync(src2, dest);
      } catch (err) {
        if (err.code !== "EXDEV") throw err;
        return moveAcrossDevice(src2, dest, overwrite);
      }
    }
    function moveAcrossDevice(src2, dest, overwrite) {
      const opts2 = {
        overwrite,
        errorOnExist: true,
        preserveTimestamps: true
      };
      copySync2(src2, dest, opts2);
      return removeSync(src2);
    }
    module2.exports = moveSync;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/move/index.js
var require_move4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/move/index.js"(exports2, module2) {
    "use strict";
    var u4 = require_universalify().fromPromise;
    module2.exports = {
      move: u4(require_move3()),
      moveSync: require_move_sync2()
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/index.js
var require_lib20 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-extra/11.3.5/7db7b8254b482200b4fe34058554947e1242ee5fa7e05ff4418e9403104cd8c3/node_modules/fs-extra/lib/index.js"(exports2, module2) {
    "use strict";
    module2.exports = {
      // Export promiseified graceful-fs:
      ...require_fs7(),
      // Export extra methods:
      ...require_copy4(),
      ...require_empty2(),
      ...require_ensure2(),
      ...require_json3(),
      ...require_mkdirs2(),
      ...require_move4(),
      ...require_output_file2(),
      ...require_path_exists3(),
      ...require_remove2()
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/make-empty-dir/4.0.0/3607722a2f7d328bdf182e4db3290941113e732fd2d785b1a5837ab89bb24489/node_modules/make-empty-dir/index.js
import fs43 from "node:fs";
import path77 from "node:path";
async function makeEmptyDir(dir, opts2) {
  if (opts2 && opts2.recursive) {
    await fs43.promises.mkdir(path77.dirname(dir), { recursive: true });
  }
  try {
    await fs43.promises.mkdir(dir);
    return "created";
  } catch (err) {
    if (err.code === "EEXIST") {
      await removeContentsOfDir(dir);
      return "emptied";
    }
    throw err;
  }
}
async function removeContentsOfDir(dir) {
  const items = await fs43.promises.readdir(dir);
  for (const item of items) {
    await rimraf(path77.join(dir, item));
  }
}
function makeEmptyDirSync(dir, opts2) {
  if (opts2 && opts2.recursive) {
    fs43.mkdirSync(path77.dirname(dir), { recursive: true });
  }
  try {
    fs43.mkdirSync(dir);
    return "created";
  } catch (err) {
    if (err.code === "EEXIST") {
      removeContentsOfDirSync(dir);
      return "emptied";
    }
    throw err;
  }
}
function removeContentsOfDirSync(dir) {
  const items = fs43.readdirSync(dir);
  for (const item of items) {
    rimrafSync(path77.join(dir, item));
  }
}
var init_make_empty_dir = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/make-empty-dir/4.0.0/3607722a2f7d328bdf182e4db3290941113e732fd2d785b1a5837ab89bb24489/node_modules/make-empty-dir/index.js"() {
    init_rimraf();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/truncate-utf8-bytes/1.0.2/a125ab6f857e769c1c35dafd31e6b108b9a2517e088148da14ad32169c2567ee/node_modules/truncate-utf8-bytes/lib/truncate.js
var require_truncate2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/truncate-utf8-bytes/1.0.2/a125ab6f857e769c1c35dafd31e6b108b9a2517e088148da14ad32169c2567ee/node_modules/truncate-utf8-bytes/lib/truncate.js"(exports2, module2) {
    "use strict";
    function isHighSurrogate(codePoint) {
      return codePoint >= 55296 && codePoint <= 56319;
    }
    function isLowSurrogate(codePoint) {
      return codePoint >= 56320 && codePoint <= 57343;
    }
    module2.exports = function truncate(getLength, string, byteLength) {
      if (typeof string !== "string") {
        throw new Error("Input must be string");
      }
      var charLength = string.length;
      var curByteLength = 0;
      var codePoint;
      var segment;
      for (var i2 = 0; i2 < charLength; i2 += 1) {
        codePoint = string.charCodeAt(i2);
        segment = string[i2];
        if (isHighSurrogate(codePoint) && isLowSurrogate(string.charCodeAt(i2 + 1))) {
          i2 += 1;
          segment += string[i2];
        }
        curByteLength += getLength(segment);
        if (curByteLength === byteLength) {
          return string.slice(0, i2 + 1);
        } else if (curByteLength > byteLength) {
          return string.slice(0, i2 - segment.length + 1);
        }
      }
      return string;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/truncate-utf8-bytes/1.0.2/a125ab6f857e769c1c35dafd31e6b108b9a2517e088148da14ad32169c2567ee/node_modules/truncate-utf8-bytes/index.js
var require_truncate_utf8_bytes = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/truncate-utf8-bytes/1.0.2/a125ab6f857e769c1c35dafd31e6b108b9a2517e088148da14ad32169c2567ee/node_modules/truncate-utf8-bytes/index.js"(exports2, module2) {
    "use strict";
    var truncate = require_truncate2();
    var getLength = Buffer.byteLength.bind(Buffer);
    module2.exports = truncate.bind(null, getLength);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/sanitize-filename/1.6.4/5f553bde92425a76e0b51eddf2a9a22faa7626146298aecdcafaf8de748aa2e6/node_modules/sanitize-filename/index.js
var require_sanitize_filename = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/sanitize-filename/1.6.4/5f553bde92425a76e0b51eddf2a9a22faa7626146298aecdcafaf8de748aa2e6/node_modules/sanitize-filename/index.js"(exports2, module2) {
    "use strict";
    var truncate = require_truncate_utf8_bytes();
    var illegalRe = /[\/\?<>\\:\*\|"]/g;
    var controlRe = /[\x00-\x1f\x80-\x9f]/g;
    var reservedRe = /^\.+$/;
    var windowsReservedRe = /^(con|prn|aux|nul|com[0-9]|lpt[0-9])(\..*)?$/i;
    function replaceTrailingDotsAndSpaces(str2, replacement) {
      var end = str2.length;
      while (end > 0 && (str2[end - 1] === "." || str2[end - 1] === " ")) end--;
      return end < str2.length ? str2.slice(0, end) + replacement : str2;
    }
    function sanitize(input, replacement) {
      if (typeof input !== "string") {
        throw new Error("Input must be string");
      }
      var sanitized = input.replace(illegalRe, replacement).replace(controlRe, replacement).replace(reservedRe, replacement).replace(windowsReservedRe, replacement);
      sanitized = replaceTrailingDotsAndSpaces(sanitized, replacement);
      return truncate(sanitized, 255);
    }
    module2.exports = function(input, options) {
      var replacement = options && options.replacement || "";
      var output = sanitize(input, replacement);
      if (replacement === "") {
        return output;
      }
      return sanitize(output, "");
    };
  }
});

// ../fs/indexed-pkg-importer/lib/importIndexedDir.js
import fs44 from "node:fs";
import path78 from "node:path";
import util24 from "node:util";
function importIndexedDir(importer, newDir, filenames, opts2) {
  if (!opts2.keepModulesDir)
    try {
      if (opts2.safeToSkip) {
        fs44.mkdirSync(newDir, { recursive: true });
      } else {
        makeEmptyDirSync(newDir, { recursive: true });
      }
      tryImportIndexedDir(importer, newDir, filenames);
      return;
    } catch (err) {
      if (util24.types.isNativeError(err) && "code" in err && err.code === "EEXIST") {
        if (allFilesMatch(newDir, filenames))
          return;
      }
    }
  const stage = fastPathTemp(newDir);
  try {
    makeEmptyDirSync(stage, { recursive: true });
    tryImportIndexedDir({ importFile: importer.importFile, importFileAtomic: importer.importFile }, stage, filenames);
    if (opts2.keepModulesDir) {
      moveOrMergeModulesDirs(path78.join(newDir, "node_modules"), path78.join(stage, "node_modules"));
    }
  } catch (err) {
    try {
      rimrafSync(stage);
    } catch {
    }
    if (util24.types.isNativeError(err) && "code" in err && err.code === "EEXIST") {
      const { uniqueFileMap, conflictingFileNames } = getUniqueFileMap(filenames);
      if (conflictingFileNames.size === 0)
        throw err;
      filenameConflictsLogger.debug({
        conflicts: Object.fromEntries(conflictingFileNames),
        writingTo: newDir
      });
      globalWarn(`Not all files were linked to "${path78.relative(process.cwd(), newDir)}". Some of the files have equal names in different case, which is an issue on case-insensitive filesystems. The conflicting file names are: ${JSON.stringify(Object.fromEntries(conflictingFileNames))}`);
      importIndexedDir(importer, newDir, uniqueFileMap, opts2);
      return;
    }
    if (util24.types.isNativeError(err) && "code" in err && err.code === "ENOENT") {
      if (retryWithSanitizedFilenames(importer, newDir, filenames, opts2))
        return;
      throw err;
    }
    throw err;
  }
  if (opts2.safeToSkip) {
    try {
      fs44.renameSync(stage, newDir);
      return;
    } catch (err) {
      if (util24.types.isNativeError(err) && "code" in err && (err.code === "ENOTEMPTY" || err.code === "EEXIST" || err.code === "EPERM")) {
        if (allFilesMatch(newDir, filenames)) {
          try {
            rimrafSync(stage);
          } catch {
          }
          return;
        }
      }
    }
  }
  try {
    renameOverwriteSync(stage, newDir);
  } catch (renameErr) {
    try {
      rimrafSync(stage);
    } catch {
    }
    throw renameErr;
  }
}
function allFilesMatch(dir, filenames) {
  for (const [f, src2] of filenames) {
    const target2 = path78.join(dir, f);
    try {
      const targetStat = lib_default.statSync(target2);
      const srcStat = lib_default.statSync(src2);
      if (targetStat.ino === srcStat.ino && targetStat.dev === srcStat.dev)
        continue;
      if (targetStat.size !== srcStat.size) {
        globalInfo(`Re-importing "${dir}" because file "${f}" has a different size`);
        return false;
      }
      if (!lib_default.readFileSync(target2).equals(lib_default.readFileSync(src2))) {
        globalInfo(`Re-importing "${dir}" because file "${f}" has different content`);
        return false;
      }
    } catch {
      globalInfo(`Re-importing "${dir}" because file "${f}" is missing or unreadable`);
      return false;
    }
  }
  return true;
}
function retryWithSanitizedFilenames(importer, newDir, filenames, opts2) {
  const { sanitizedFilenames, invalidFilenames } = sanitizeFilenames(filenames);
  if (invalidFilenames.length === 0)
    return false;
  globalWarn(`The package linked to "${path78.relative(process.cwd(), newDir)}" had files with invalid names: ${invalidFilenames.join(", ")}. They were renamed.`);
  importIndexedDir(importer, newDir, sanitizedFilenames, opts2);
  return true;
}
function sanitizeFilenames(filenames) {
  const sanitizedFilenames = /* @__PURE__ */ new Map();
  const invalidFilenames = [];
  for (const [filename, src2] of filenames) {
    const sanitizedFilename = filename.split("/").map((f) => (0, import_sanitize_filename.default)(f)).join("/");
    if (sanitizedFilename !== filename) {
      invalidFilenames.push(filename);
    }
    sanitizedFilenames.set(sanitizedFilename, src2);
  }
  return { sanitizedFilenames, invalidFilenames };
}
function tryImportIndexedDir({ importFile, importFileAtomic }, newDir, filenames) {
  const allDirs = /* @__PURE__ */ new Set();
  for (const f of filenames.keys()) {
    const dir = path78.dirname(f);
    if (dir === ".")
      continue;
    allDirs.add(dir);
  }
  Array.from(allDirs).sort((d1, d2) => d1.length - d2.length).forEach((dir) => fs44.mkdirSync(path78.join(newDir, dir), { recursive: true }));
  let packageJsonSrc;
  for (const [f, src2] of filenames) {
    if (f === "package.json") {
      packageJsonSrc = src2;
      continue;
    }
    importFile(src2, path78.join(newDir, f));
  }
  if (packageJsonSrc !== void 0) {
    importFileAtomic(packageJsonSrc, path78.join(newDir, "package.json"));
  }
}
function getUniqueFileMap(fileMap) {
  const lowercaseFiles = /* @__PURE__ */ new Map();
  const conflictingFileNames = /* @__PURE__ */ new Map();
  const uniqueFileMap = /* @__PURE__ */ new Map();
  for (const filename of Array.from(fileMap.keys()).sort()) {
    const lowercaseFilename = filename.toLowerCase();
    if (lowercaseFiles.has(lowercaseFilename)) {
      conflictingFileNames.set(filename, lowercaseFiles.get(lowercaseFilename));
      continue;
    }
    lowercaseFiles.set(lowercaseFilename, filename);
    uniqueFileMap.set(filename, fileMap.get(filename));
  }
  return {
    conflictingFileNames,
    uniqueFileMap
  };
}
function moveOrMergeModulesDirs(src2, dest) {
  try {
    renameEvenAcrossDevices(src2, dest);
  } catch (err) {
    switch (util24.types.isNativeError(err) && "code" in err && err.code) {
      case "ENOENT":
        return;
      case "ENOTEMPTY":
      case "EPERM":
        mergeModulesDirs(src2, dest);
        return;
      default:
        throw err;
    }
  }
}
function renameEvenAcrossDevices(src2, dest) {
  try {
    lib_default.renameSync(src2, dest);
  } catch (err) {
    if (!(util24.types.isNativeError(err) && "code" in err && err.code === "EXDEV"))
      throw err;
    import_fs_extra2.default.copySync(src2, dest);
  }
}
function mergeModulesDirs(src2, dest) {
  const srcFiles = fs44.readdirSync(src2);
  const destFiles = new Set(fs44.readdirSync(dest));
  const filesToMove = srcFiles.filter((file) => !destFiles.has(file));
  for (const file of filesToMove) {
    renameEvenAcrossDevices(path78.join(src2, file), path78.join(dest, file));
  }
}
var import_fs_extra2, import_sanitize_filename, filenameConflictsLogger;
var init_importIndexedDir = __esm({
  "../fs/indexed-pkg-importer/lib/importIndexedDir.js"() {
    "use strict";
    init_lib12();
    init_lib3();
    init_rimraf();
    import_fs_extra2 = __toESM(require_lib20(), 1);
    init_make_empty_dir();
    init_path_temp();
    init_rename_overwrite();
    import_sanitize_filename = __toESM(require_sanitize_filename(), 1);
    filenameConflictsLogger = logger("_filename-conflicts");
  }
});

// ../fs/indexed-pkg-importer/lib/index.js
import assert6 from "node:assert";
import { constants as constants4, existsSync as existsSync4 } from "node:fs";
import path79 from "node:path";
import util25 from "node:util";
function createIndexedPkgImporter(packageImportMethod) {
  const importPackage2 = createImportPackage(packageImportMethod);
  return importPackage2;
}
function createImportPackage(packageImportMethod) {
  switch (packageImportMethod ?? "auto") {
    case "clone":
      packageImportMethodLogger.debug({ method: "clone" });
      return createClonePkg();
    case "hardlink":
      packageImportMethodLogger.debug({ method: "hardlink" });
      return hardlinkPkg.bind(null, linkOrCopy);
    case "auto": {
      return createAutoImporter();
    }
    case "clone-or-copy":
      return createCloneOrCopyImporter();
    case "copy":
      packageImportMethodLogger.debug({ method: "copy" });
      return copyPkg;
    default:
      throw new Error(`Unknown package import method ${packageImportMethod}`);
  }
}
function createAutoImporter() {
  let auto = initialAuto;
  return (to, opts2) => auto(to, opts2);
  function initialAuto(to, opts2) {
    if (process.platform !== "win32") {
      try {
        if (!tryClonePkg(to, opts2))
          return void 0;
        packageImportMethodLogger.debug({ method: "clone" });
        auto = createClonePkg();
        return "clone";
      } catch {
      }
    }
    try {
      if (!hardlinkPkg(lib_default.linkSync, to, opts2))
        return void 0;
      packageImportMethodLogger.debug({ method: "hardlink" });
      auto = hardlinkPkg.bind(null, linkOrCopy);
      return "hardlink";
    } catch (err) {
      assert6(util25.types.isNativeError(err));
      if (err.message.startsWith("EXDEV: cross-device link not permitted")) {
        globalWarn(err.message);
        globalInfo("Falling back to copying packages from store");
        packageImportMethodLogger.debug({ method: "copy" });
        auto = copyPkg;
        return auto(to, opts2);
      }
      packageImportMethodLogger.debug({ method: "hardlink" });
      auto = hardlinkPkg.bind(null, linkOrCopy);
      return auto(to, opts2);
    }
  }
}
function createCloneOrCopyImporter() {
  let auto = initialAuto;
  return (to, opts2) => auto(to, opts2);
  function initialAuto(to, opts2) {
    try {
      if (!tryClonePkg(to, opts2))
        return void 0;
      packageImportMethodLogger.debug({ method: "clone" });
      auto = createClonePkg();
      return "clone";
    } catch {
    }
    packageImportMethodLogger.debug({ method: "copy" });
    auto = copyPkg;
    return auto(to, opts2);
  }
}
function tryClonePkg(to, opts2) {
  if (opts2.resolvedFrom !== "store" || opts2.force || !pkgExistsAtTargetDir(to, opts2.filesMap)) {
    const clone3 = createCloneFunction();
    importIndexedDir({ importFile: clone3, importFileAtomic: clone3 }, to, opts2.filesMap, opts2);
    return "clone";
  }
  return void 0;
}
function createClonePkg() {
  const clone3 = createCloneFunction();
  const withFallback = (fallback) => (src2, dest) => {
    try {
      clone3(src2, dest);
    } catch (err) {
      if (util25.types.isNativeError(err) && "code" in err && err.code === "ENOTSUP") {
        fallback(src2, dest);
        return;
      }
      throw err;
    }
  };
  const importer = {
    importFile: withFallback(resilientCopyFileSync),
    importFileAtomic: withFallback(atomicCopyFileSync)
  };
  return (to, opts2) => {
    if (opts2.resolvedFrom !== "store" || opts2.force || !pkgExistsAtTargetDir(to, opts2.filesMap)) {
      importIndexedDir(importer, to, opts2.filesMap, opts2);
      return "clone";
    }
    return void 0;
  };
}
function pkgExistsAtTargetDir(targetDir, filesMap) {
  return existsSync4(path79.join(targetDir, pickFileFromFilesMap(filesMap)));
}
function pickFileFromFilesMap(filesMap) {
  if (filesMap.has("package.json")) {
    return "package.json";
  }
  if (filesMap.size === 0) {
    throw new Error("pickFileFromFilesMap cannot pick a file from an empty FilesMap");
  }
  return filesMap.keys().next().value;
}
function createCloneFunction() {
  if (_cloneFunction)
    return _cloneFunction;
  if (process.platform === "darwin" || process.platform === "win32") {
    const { reflinkFileSync } = __require("@reflink/reflink");
    _cloneFunction = (fr, to) => {
      try {
        reflinkFileSync(fr, to);
      } catch (err) {
        if (!util25.types.isNativeError(err) || !("code" in err) || err.code !== "EEXIST")
          throw err;
      }
    };
  } else {
    _cloneFunction = (src2, dest) => {
      try {
        lib_default.copyFileSync(src2, dest, constants4.COPYFILE_FICLONE_FORCE);
      } catch (err) {
        if (!(util25.types.isNativeError(err) && "code" in err && err.code === "EEXIST"))
          throw err;
      }
    };
  }
  return _cloneFunction;
}
function hardlinkPkg(importFile, to, opts2) {
  if (opts2.force || shouldRelinkPkg(to, opts2)) {
    importIndexedDir({ importFile, importFileAtomic: importFile }, to, opts2.filesMap, opts2);
    return "hardlink";
  }
  return void 0;
}
function shouldRelinkPkg(to, opts2) {
  if (opts2.disableRelinkLocalDirDeps && opts2.resolvedFrom === "local-dir") {
    try {
      const files = lib_default.readdirSync(to);
      return files.length === 0 || files.length === 1 && files[0] === "node_modules";
    } catch {
      return true;
    }
  }
  return opts2.resolvedFrom !== "store" || !pkgLinkedToStore(opts2.filesMap, to);
}
function linkOrCopy(existingPath, newPath) {
  try {
    lib_default.linkSync(existingPath, newPath);
  } catch (err) {
    if (util25.types.isNativeError(err) && "code" in err && err.code === "EEXIST")
      return;
    resilientCopyFileSync(existingPath, newPath);
  }
}
function resilientCopyFileSync(src2, dest) {
  try {
    lib_default.copyFileSync(src2, dest);
  } catch (err) {
    if (util25.types.isNativeError(err) && "code" in err && err.code === "ENOTSUP") {
      const srcMode = lib_default.statSync(src2).mode;
      lib_default.writeFileSync(dest, lib_default.readFileSync(src2), { mode: srcMode });
    } else {
      throw err;
    }
  }
}
function pkgLinkedToStore(filesMap, linkedPkgDir) {
  const filename = pickFileFromFilesMap(filesMap);
  const linkedFile = path79.join(linkedPkgDir, filename);
  let stats0;
  try {
    stats0 = lib_default.statSync(linkedFile);
  } catch (err) {
    if (util25.types.isNativeError(err) && "code" in err && err.code === "ENOENT")
      return false;
  }
  const stats1 = lib_default.statSync(filesMap.get(filename));
  if (stats0.ino === stats1.ino)
    return true;
  globalInfo(`Relinking ${linkedPkgDir} from the store`);
  return false;
}
function copyPkg(to, opts2) {
  if (opts2.resolvedFrom !== "store" || opts2.force || !pkgExistsAtTargetDir(to, opts2.filesMap)) {
    importIndexedDir({ importFile: resilientCopyFileSync, importFileAtomic: atomicCopyFileSync }, to, opts2.filesMap, opts2);
    return "copy";
  }
  return void 0;
}
function atomicCopyFileSync(src2, dest) {
  const tmp = fastPathTemp(dest);
  try {
    resilientCopyFileSync(src2, tmp);
  } catch (err) {
    try {
      lib_default.unlinkSync(tmp);
    } catch {
    }
    throw err;
  }
  renameOverwriteSync(tmp, dest);
}
var _cloneFunction;
var init_lib83 = __esm({
  "../fs/indexed-pkg-importer/lib/index.js"() {
    "use strict";
    init_lib6();
    init_lib12();
    init_lib3();
    init_path_temp();
    init_rename_overwrite();
    init_importIndexedDir();
  }
});

// ../store/create-cafs-store/lib/index.js
import { promises as fs45 } from "node:fs";
import path80 from "node:path";
function createPackageImporterAsync(opts2) {
  const cachedImporterCreator = opts2.importIndexedPackage ? () => opts2.importIndexedPackage : memoize(createIndexedPkgImporter);
  const packageImportMethod = opts2.packageImportMethod;
  const gfm = getFlatMap.bind(null, opts2.storeDir);
  return async (to, opts3) => {
    const { filesMap, isBuilt } = gfm(opts3.filesResponse, opts3.sideEffectsCacheKey);
    const willBeBuilt = !isBuilt && opts3.requiresBuild;
    const pkgImportMethod = willBeBuilt ? "clone-or-copy" : opts3.filesResponse.packageImportMethod ?? packageImportMethod;
    const impPkg = cachedImporterCreator(pkgImportMethod);
    const importMethod = await impPkg(to, {
      disableRelinkLocalDirDeps: opts3.disableRelinkLocalDirDeps,
      filesMap,
      resolvedFrom: opts3.filesResponse.resolvedFrom,
      force: opts3.force,
      keepModulesDir: Boolean(opts3.keepModulesDir),
      safeToSkip: opts3.safeToSkip
    });
    return { importMethod, isBuilt };
  };
}
function createPackageImporter(opts2) {
  const cachedImporterCreator = opts2.importIndexedPackage ? () => opts2.importIndexedPackage : memoize(createIndexedPkgImporter);
  const packageImportMethod = opts2.packageImportMethod;
  const gfm = getFlatMap.bind(null, opts2.storeDir);
  return (to, opts3) => {
    const { filesMap, isBuilt } = gfm(opts3.filesResponse, opts3.sideEffectsCacheKey);
    const willBeBuilt = !isBuilt && opts3.requiresBuild;
    const pkgImportMethod = willBeBuilt ? "clone-or-copy" : opts3.filesResponse.packageImportMethod ?? packageImportMethod;
    const impPkg = cachedImporterCreator(pkgImportMethod);
    const importMethod = impPkg(to, {
      disableRelinkLocalDirDeps: opts3.disableRelinkLocalDirDeps,
      filesMap,
      resolvedFrom: opts3.filesResponse.resolvedFrom,
      force: opts3.force,
      keepModulesDir: Boolean(opts3.keepModulesDir),
      safeToSkip: opts3.safeToSkip
    });
    return { importMethod, isBuilt };
  };
}
function getFlatMap(storeDir, filesResponse, targetEngine) {
  if (targetEngine && filesResponse.sideEffectsMaps?.has(targetEngine)) {
    const sideEffectMap = filesResponse.sideEffectsMaps.get(targetEngine);
    const filesMap = applySideEffectsDiffWithMaps(filesResponse.filesMap, sideEffectMap);
    return {
      filesMap,
      isBuilt: true
    };
  }
  return {
    filesMap: filesResponse.filesMap,
    isBuilt: false
  };
}
function applySideEffectsDiffWithMaps(baseFiles, { added, deleted }) {
  const filesWithSideEffects = /* @__PURE__ */ new Map();
  if (added) {
    for (const [name, filePath] of added.entries()) {
      filesWithSideEffects.set(name, filePath);
    }
  }
  for (const [fileName, filePath] of baseFiles) {
    if (!deleted?.includes(fileName) && !filesWithSideEffects.has(fileName)) {
      filesWithSideEffects.set(fileName, filePath);
    }
  }
  return filesWithSideEffects;
}
function createCafsStore(storeDir, opts2) {
  const baseTempDir = path80.join(storeDir, "tmp");
  const importPackage2 = createPackageImporter({
    importIndexedPackage: opts2?.importPackage,
    packageImportMethod: opts2?.packageImportMethod,
    storeDir
  });
  return {
    ...createCafs(storeDir, opts2),
    storeDir,
    importPackage: importPackage2,
    tempDir: async () => {
      const tmpDir = pathTemp(baseTempDir);
      await fs45.mkdir(tmpDir, { recursive: true });
      return tmpDir;
    }
  };
}
var init_lib84 = __esm({
  "../store/create-cafs-store/lib/index.js"() {
    "use strict";
    init_lib83();
    init_lib81();
    init_distribution();
    init_path_temp();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/pretty-bytes/7.1.0/1decda1e3bafc24ebf9bdbdfbdae6c6903719ba9edcfb496e7a4f602e26e6497/node_modules/pretty-bytes/index.js
function prettyBytes(number, options) {
  if (typeof number !== "bigint" && !Number.isFinite(number)) {
    throw new TypeError(`Expected a finite number, got ${typeof number}: ${number}`);
  }
  options = {
    bits: false,
    binary: false,
    space: true,
    nonBreakingSpace: false,
    ...options
  };
  const UNITS = options.bits ? options.binary ? BIBIT_UNITS : BIT_UNITS : options.binary ? BIBYTE_UNITS : BYTE_UNITS;
  const separator = options.space ? options.nonBreakingSpace ? "\xA0" : " " : "";
  const isZero2 = typeof number === "number" ? number === 0 : number === 0n;
  if (options.signed && isZero2) {
    const result3 = ` 0${separator}${UNITS[0]}`;
    return applyFixedWidth(result3, options.fixedWidth);
  }
  const isNegative = number < 0;
  const prefix = isNegative ? "-" : options.signed ? "+" : "";
  if (isNegative) {
    number = -number;
  }
  const localeOptions = buildLocaleOptions(options);
  let result2;
  if (number < 1) {
    const numberString = toLocaleString(number, options.locale, localeOptions);
    result2 = prefix + numberString + separator + UNITS[0];
  } else {
    const exponent = Math.min(Math.floor(options.binary ? log2(number) / Math.log(1024) : log10(number) / 3), UNITS.length - 1);
    number = divide(number, (options.binary ? 1024 : 1e3) ** exponent);
    if (!localeOptions) {
      const minPrecision = Math.max(3, Math.floor(number).toString().length);
      number = number.toPrecision(minPrecision);
    }
    const numberString = toLocaleString(Number(number), options.locale, localeOptions);
    const unit = UNITS[exponent];
    result2 = prefix + numberString + separator + unit;
  }
  return applyFixedWidth(result2, options.fixedWidth);
}
var BYTE_UNITS, BIBYTE_UNITS, BIT_UNITS, BIBIT_UNITS, toLocaleString, log10, log2, divide, applyFixedWidth, buildLocaleOptions;
var init_pretty_bytes = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/pretty-bytes/7.1.0/1decda1e3bafc24ebf9bdbdfbdae6c6903719ba9edcfb496e7a4f602e26e6497/node_modules/pretty-bytes/index.js"() {
    BYTE_UNITS = [
      "B",
      "kB",
      "MB",
      "GB",
      "TB",
      "PB",
      "EB",
      "ZB",
      "YB"
    ];
    BIBYTE_UNITS = [
      "B",
      "KiB",
      "MiB",
      "GiB",
      "TiB",
      "PiB",
      "EiB",
      "ZiB",
      "YiB"
    ];
    BIT_UNITS = [
      "b",
      "kbit",
      "Mbit",
      "Gbit",
      "Tbit",
      "Pbit",
      "Ebit",
      "Zbit",
      "Ybit"
    ];
    BIBIT_UNITS = [
      "b",
      "kibit",
      "Mibit",
      "Gibit",
      "Tibit",
      "Pibit",
      "Eibit",
      "Zibit",
      "Yibit"
    ];
    toLocaleString = (number, locale, options) => {
      let result2 = number;
      if (typeof locale === "string" || Array.isArray(locale)) {
        result2 = number.toLocaleString(locale, options);
      } else if (locale === true || options !== void 0) {
        result2 = number.toLocaleString(void 0, options);
      }
      return result2;
    };
    log10 = (numberOrBigInt) => {
      if (typeof numberOrBigInt === "number") {
        return Math.log10(numberOrBigInt);
      }
      const string = numberOrBigInt.toString(10);
      return string.length + Math.log10(`0.${string.slice(0, 15)}`);
    };
    log2 = (numberOrBigInt) => {
      if (typeof numberOrBigInt === "number") {
        return Math.log(numberOrBigInt);
      }
      return log10(numberOrBigInt) * Math.log(10);
    };
    divide = (numberOrBigInt, divisor) => {
      if (typeof numberOrBigInt === "number") {
        return numberOrBigInt / divisor;
      }
      const integerPart = numberOrBigInt / BigInt(divisor);
      const remainder = numberOrBigInt % BigInt(divisor);
      return Number(integerPart) + Number(remainder) / divisor;
    };
    applyFixedWidth = (result2, fixedWidth) => {
      if (fixedWidth === void 0) {
        return result2;
      }
      if (typeof fixedWidth !== "number" || !Number.isSafeInteger(fixedWidth) || fixedWidth < 0) {
        throw new TypeError(`Expected fixedWidth to be a non-negative integer, got ${typeof fixedWidth}: ${fixedWidth}`);
      }
      if (fixedWidth === 0) {
        return result2;
      }
      return result2.length < fixedWidth ? result2.padStart(fixedWidth, " ") : result2;
    };
    buildLocaleOptions = (options) => {
      const { minimumFractionDigits, maximumFractionDigits } = options;
      if (minimumFractionDigits === void 0 && maximumFractionDigits === void 0) {
        return void 0;
      }
      return {
        ...minimumFractionDigits !== void 0 && { minimumFractionDigits },
        ...maximumFractionDigits !== void 0 && { maximumFractionDigits },
        roundingMode: "trunc"
      };
    };
  }
});

// ../store/controller/lib/storeController/projectRegistry.js
import { promises as fs46 } from "node:fs";
import path81 from "node:path";
import util26 from "node:util";
function getProjectsRegistryDir(storeDir) {
  return path81.join(storeDir, PROJECTS_DIR);
}
async function registerProject(storeDir, projectDir) {
  if (isSubdir(projectDir, storeDir)) {
    return;
  }
  const registryDir = getProjectsRegistryDir(storeDir);
  await fs46.mkdir(registryDir, { recursive: true });
  const linkPath = path81.join(registryDir, createShortHash(projectDir));
  await symlinkDir(projectDir, linkPath);
}
async function getRegisteredProjects(storeDir) {
  const registryDir = getProjectsRegistryDir(storeDir);
  let entries;
  try {
    entries = await fs46.readdir(registryDir, { withFileTypes: true });
  } catch (err) {
    if (util26.types.isNativeError(err) && "code" in err && err.code === "ENOENT") {
      return [];
    }
    throw err;
  }
  const projects = [];
  await Promise.all(entries.map(async (entry) => {
    if (entry.name.startsWith("."))
      return;
    if (!entry.isSymbolicLink())
      return;
    const linkPath = path81.join(registryDir, entry.name);
    let target2;
    try {
      target2 = await fs46.readlink(linkPath);
    } catch (err) {
      if (util26.types.isNativeError(err) && "code" in err && (err.code === "ENOENT" || err.code === "EINVAL")) {
        return;
      }
      const message = util26.types.isNativeError(err) ? err.message : String(err);
      throw new PnpmError("PROJECT_REGISTRY_ENTRY_INACCESSIBLE", `Cannot read project registry entry "${linkPath}": ${message}`, {
        hint: `To remove this project from the registry, delete the file at:
  ${linkPath}`
      });
    }
    const absoluteTarget = path81.isAbsolute(target2) ? target2 : path81.resolve(path81.dirname(linkPath), target2);
    try {
      await fs46.stat(absoluteTarget);
      projects.push(absoluteTarget);
    } catch (err) {
      if (util26.types.isNativeError(err) && "code" in err && err.code === "ENOENT") {
        await fs46.unlink(linkPath);
        globalInfo(`Removed stale project registry entry: ${absoluteTarget}`);
        return;
      }
      const message = util26.types.isNativeError(err) ? err.message : String(err);
      throw new PnpmError("PROJECT_INACCESSIBLE", `Cannot access registered project "${absoluteTarget}": ${message}`, {
        hint: `To remove this project from the registry, delete the symlink at:
  ${linkPath}`
      });
    }
  }));
  return projects;
}
var PROJECTS_DIR;
var init_projectRegistry = __esm({
  "../store/controller/lib/storeController/projectRegistry.js"() {
    "use strict";
    init_lib20();
    init_lib2();
    init_lib3();
    init_is_subdir();
    init_dist4();
    PROJECTS_DIR = "projects";
  }
});

// ../store/controller/lib/storeController/pruneGlobalVirtualStore.js
import crypto6 from "node:crypto";
import { promises as fs47 } from "node:fs";
import path82 from "node:path";
import util27 from "node:util";
async function pruneGlobalVirtualStore(storeDir) {
  const linksDir = path82.join(storeDir, LINKS_DIR);
  if (!await pathExists(linksDir)) {
    return;
  }
  const projects = await getRegisteredProjects(storeDir);
  if (projects.length === 0) {
    globalInfo("No registered projects for global virtual store");
    return;
  }
  globalInfo(`Checking ${projects.length} registered project(s) for global virtual store usage`);
  const reachable = /* @__PURE__ */ new Set();
  const visited = /* @__PURE__ */ new Set();
  await Promise.all(projects.map(async (projectDir) => {
    const nodeModulesDirs = await findAllNodeModulesDirs(projectDir);
    await Promise.all(nodeModulesDirs.map((modulesDir) => walkSymlinksToStore(modulesDir, linksDir, reachable, visited)));
  }));
  const unreachableCount = await removeUnreachablePackages(linksDir, reachable);
  if (unreachableCount > 0) {
    globalInfo(`Removed ${unreachableCount} package${unreachableCount === 1 ? "" : "s"} from global virtual store`);
  } else {
    globalInfo("No unused packages found in global virtual store");
  }
}
async function findAllNodeModulesDirs(projectDir) {
  const nodeModulesDirs = [];
  async function scan3(dir) {
    let entries;
    try {
      entries = await fs47.readdir(dir, { withFileTypes: true });
    } catch {
      return;
    }
    const subdirs = [];
    for (const entry of entries) {
      if (!entry.isDirectory())
        continue;
      const entryPath = path82.join(dir, entry.name);
      if (entry.name === "node_modules") {
        nodeModulesDirs.push(entryPath);
      } else if (!entry.name.startsWith(".")) {
        subdirs.push(entryPath);
      }
    }
    await Promise.all(subdirs.map((subdir) => scan3(subdir)));
  }
  await scan3(projectDir);
  return nodeModulesDirs;
}
async function walkSymlinksToStore(dir, linksDir, reachable, visited) {
  const dirHash = await getRealPathHash(dir);
  if (visited.has(dirHash)) {
    return;
  }
  visited.add(dirHash);
  let entries;
  try {
    entries = await fs47.readdir(dir, { withFileTypes: true });
  } catch {
    return;
  }
  await Promise.all(entries.map(async (entry) => {
    const entryPath = path82.join(dir, entry.name);
    if (entry.isSymbolicLink()) {
      try {
        const target2 = await fs47.readlink(entryPath);
        const absoluteTarget = path82.isAbsolute(target2) ? target2 : path82.resolve(dir, target2);
        if (isSubdir(linksDir, absoluteTarget)) {
          const relPath = path82.relative(linksDir, absoluteTarget);
          const parts = relPath.split(path82.sep);
          const nodeModulesIdx = parts.indexOf("node_modules");
          if (nodeModulesIdx !== -1) {
            const relativePath = parts.slice(0, nodeModulesIdx).join(path82.sep);
            reachable.add(relativePath);
            const pkgNodeModules = path82.join(linksDir, relativePath, "node_modules");
            await walkSymlinksToStore(pkgNodeModules, linksDir, reachable, visited);
          }
        }
      } catch {
      }
    } else if (entry.isDirectory() && entry.name !== ".pnpm") {
      await walkSymlinksToStore(entryPath, linksDir, reachable, visited);
    }
  }));
}
async function getRealPathHash(p) {
  let realPath;
  try {
    realPath = await fs47.realpath(p);
  } catch {
    realPath = p;
  }
  return crypto6.createHash("sha256").update(realPath).digest("base64url");
}
async function removeUnreachablePackages(linksDir, reachable) {
  const scopes = await getSubdirsSafely(linksDir);
  let count2 = 0;
  await Promise.all(scopes.map(async (scope) => {
    const scopePath = path82.join(linksDir, scope);
    const pkgNames = await getSubdirsSafely(scopePath);
    let removedPkgs = 0;
    await Promise.all(pkgNames.map(async (pkgName) => {
      const pkgDir = path82.join(scopePath, pkgName);
      const removedVersions = await removeUnreachableVersions(pkgDir, path82.join(scope, pkgName), reachable);
      count2 += removedVersions.count;
      if (removedVersions.allRemoved) {
        await rimraf(pkgDir);
        removedPkgs++;
      }
    }));
    if (removedPkgs === pkgNames.length && pkgNames.length > 0) {
      await rimraf(scopePath);
    }
  }));
  return count2;
}
async function removeUnreachableVersions(pkgDir, pkgPath, reachable) {
  const versions = await getSubdirsSafely(pkgDir);
  let count2 = 0;
  let removedVersions = 0;
  await Promise.all(versions.map(async (version2) => {
    const versionDir = path82.join(pkgDir, version2);
    const hashes = await getSubdirsSafely(versionDir);
    let removedHashes = 0;
    await Promise.all(hashes.map(async (hash2) => {
      const relativePath = path82.join(pkgPath, version2, hash2);
      if (!reachable.has(relativePath)) {
        await rimraf(path82.join(versionDir, hash2));
        removedHashes++;
        count2++;
      }
    }));
    if (removedHashes === hashes.length && hashes.length > 0) {
      await rimraf(versionDir);
      removedVersions++;
    }
  }));
  return {
    count: count2,
    allRemoved: removedVersions === versions.length && versions.length > 0
  };
}
async function pathExists(p) {
  try {
    await fs47.stat(p);
    return true;
  } catch {
    return false;
  }
}
async function getSubdirsSafely(dir) {
  let entries;
  try {
    entries = await fs47.readdir(dir, { withFileTypes: true });
  } catch (err) {
    if (util27.types.isNativeError(err) && "code" in err && err.code === "ENOENT") {
      return [];
    }
    throw err;
  }
  const subdirs = [];
  for (const entry of entries) {
    if (entry.isDirectory()) {
      subdirs.push(entry.name);
    }
  }
  return subdirs;
}
var LINKS_DIR;
var init_pruneGlobalVirtualStore = __esm({
  "../store/controller/lib/storeController/pruneGlobalVirtualStore.js"() {
    "use strict";
    init_lib3();
    init_rimraf();
    init_is_subdir();
    init_projectRegistry();
    LINKS_DIR = "links";
  }
});

// ../store/controller/lib/storeController/prune.js
import { promises as fs48 } from "node:fs";
import path83 from "node:path";
import util28 from "node:util";
async function prune({ cacheDir, storeDir, storeIndex }, removeAlienFiles) {
  await pruneGlobalVirtualStore(storeDir);
  const metadataDirs = await getSubdirsSafely2(cacheDir);
  await Promise.all(metadataDirs.map(async (metadataDir) => {
    if (!metadataDir.startsWith("metadata") && !/^v\d+$/.test(metadataDir))
      return;
    try {
      await rimraf(path83.join(cacheDir, metadataDir));
    } catch (err) {
      if (!(util28.types.isNativeError(err) && "code" in err && err.code === "ENOENT")) {
        throw err;
      }
    }
  }));
  await rimraf(path83.join(storeDir, "tmp"));
  globalInfo("Removed all cached metadata files");
  const cafsDir = path83.join(storeDir, "files");
  const removedHashes = /* @__PURE__ */ new Set();
  const dirs2 = await getSubdirsSafely2(cafsDir);
  let fileCounter = 0;
  let totalSize = 0;
  await Promise.all(dirs2.map(async (dir) => {
    const subdir = path83.join(cafsDir, dir);
    await Promise.all((await fs48.readdir(subdir)).map(async (fileName) => {
      const filePath = path83.join(subdir, fileName);
      const stat2 = await fs48.stat(filePath);
      if (stat2.isDirectory()) {
        if (removeAlienFiles) {
          await rimraf(filePath);
          globalWarn(`An alien directory has been removed from the store: ${filePath}`);
          fileCounter++;
          return;
        } else {
          globalWarn(`An alien directory is present in the store: ${filePath}`);
          return;
        }
      }
      if (stat2.nlink === 1 || stat2.nlink === BIG_ONE) {
        totalSize += stat2.size;
        await fs48.unlink(filePath);
        fileCounter++;
        removedHashes.add(`${dir}${fileName.replace(/-exec$/, "")}`);
      }
    }));
  }));
  globalInfo(`Removed ${fileCounter} file${fileCounter === 1 ? "" : "s"} (${prettyBytes(totalSize)})`);
  let pkgCounter = 0;
  const toDelete = [];
  for (const [filesIndexFile, data] of storeIndex.entries()) {
    const pkgFilesIndex = data;
    const pkgJson2 = pkgFilesIndex.files.get("package.json");
    if (pkgJson2 && removedHashes.has(pkgJson2.digest)) {
      toDelete.push(filesIndexFile);
      pkgCounter++;
    }
  }
  storeIndex.deleteMany(toDelete);
  globalInfo(`Removed ${pkgCounter} package${pkgCounter === 1 ? "" : "s"}`);
}
async function getSubdirsSafely2(dir) {
  let entries;
  try {
    entries = await fs48.readdir(dir, { withFileTypes: true });
  } catch (err) {
    if (util28.types.isNativeError(err) && "code" in err && err.code === "ENOENT") {
      return [];
    }
    throw err;
  }
  return entries.filter((entry) => entry.isDirectory()).map((dir2) => dir2.name);
}
var BIG_ONE;
var init_prune = __esm({
  "../store/controller/lib/storeController/prune.js"() {
    "use strict";
    init_lib3();
    init_rimraf();
    init_pretty_bytes();
    init_pruneGlobalVirtualStore();
    BIG_ONE = BigInt(1);
  }
});

// ../store/controller/lib/storeController/index.js
import fs49 from "node:fs";
import path84 from "node:path";
function createPackageStore(resolve3, fetchers, initOpts) {
  const storeDir = initOpts.storeDir;
  if (!fs49.existsSync(path84.join(storeDir, "files"))) {
    initStoreDir(storeDir).catch(() => {
    });
  }
  const cafs = createCafsStore(storeDir, {
    cafsLocker: initOpts.cafsLocker,
    packageImportMethod: initOpts.packageImportMethod
  });
  const packageRequester = createPackageRequester({
    force: initOpts.force,
    engineStrict: initOpts.engineStrict,
    nodeVersion: initOpts.nodeVersion,
    pnpmVersion: initOpts.pnpmVersion,
    resolve: resolve3,
    fetchers,
    cafs,
    ignoreFile: initOpts.ignoreFile,
    networkConcurrency: initOpts.networkConcurrency,
    storeDir: initOpts.storeDir,
    verifyStoreIntegrity: initOpts.verifyStoreIntegrity,
    virtualStoreDirMaxLength: initOpts.virtualStoreDirMaxLength,
    strictStorePkgContentCheck: initOpts.strictStorePkgContentCheck,
    customFetchers: initOpts.customFetchers
  });
  return {
    close: async () => {
      initOpts.storeIndex.flush();
    },
    fetchPackage: packageRequester.fetchPackageToStore,
    getFilesIndexFilePath: packageRequester.getFilesIndexFilePath,
    importPackage: initOpts.importPackage ? createPackageImporterAsync({ importIndexedPackage: initOpts.importPackage, storeDir: cafs.storeDir }) : (targetDir, opts2) => importPackage({
      ...opts2,
      packageImportMethod: initOpts.packageImportMethod,
      storeDir: initOpts.storeDir,
      targetDir
    }),
    prune: prune.bind(null, { storeDir, cacheDir: initOpts.cacheDir, storeIndex: initOpts.storeIndex }),
    requestPackage: packageRequester.requestPackage,
    upload,
    clearResolutionCache: initOpts.clearResolutionCache
  };
  async function upload(builtPkgLocation, opts2) {
    await addFilesFromDir({
      storeDir: cafs.storeDir,
      storeIndex: initOpts.storeIndex,
      dir: builtPkgLocation,
      sideEffectsCacheKey: opts2.sideEffectsCacheKey,
      filesIndexFile: opts2.filesIndexFile,
      pkg: {}
    });
  }
}
var init_storeController = __esm({
  "../store/controller/lib/storeController/index.js"() {
    "use strict";
    init_lib82();
    init_lib84();
    init_lib4();
    init_prune();
  }
});

// ../store/controller-types/lib/index.js
var init_lib85 = __esm({
  "../store/controller-types/lib/index.js"() {
    "use strict";
    init_lib71();
  }
});

// ../store/controller/lib/index.js
var init_lib86 = __esm({
  "../store/controller/lib/index.js"() {
    "use strict";
    init_storeController();
    init_projectRegistry();
    init_lib85();
  }
});

// ../installing/context/lib/readLockfiles.js
async function readLockfiles(opts2) {
  const wantedLockfileVersion = LOCKFILE_VERSION;
  const lockfileOpts = {
    ignoreIncompatible: opts2.force || opts2.ci === true && !opts2.frozenLockfile,
    wantedVersions: [LOCKFILE_VERSION],
    useGitBranchLockfile: opts2.useGitBranchLockfile,
    mergeGitBranchLockfiles: opts2.mergeGitBranchLockfiles
  };
  const fileReads = [];
  let lockfileHadConflicts = false;
  if (opts2.useLockfile) {
    if (!opts2.frozenLockfile) {
      fileReads.push((async () => {
        try {
          const { lockfile, hadConflicts } = await readWantedLockfileAndAutofixConflicts(opts2.lockfileDir, lockfileOpts);
          lockfileHadConflicts = hadConflicts;
          return lockfile;
        } catch (err) {
          logger.warn({
            message: `Ignoring broken lockfile at ${opts2.lockfileDir}: ${err.message}`,
            prefix: opts2.lockfileDir
          });
          return void 0;
        }
      })());
    } else {
      fileReads.push(readWantedLockfile(opts2.lockfileDir, lockfileOpts));
    }
  } else {
    if (await existsNonEmptyWantedLockfile(opts2.lockfileDir, lockfileOpts)) {
      logger.warn({
        message: `A ${WANTED_LOCKFILE} file exists. The current configuration prohibits to read or write a lockfile`,
        prefix: opts2.lockfileDir
      });
    }
    fileReads.push(Promise.resolve(void 0));
  }
  fileReads.push((async () => {
    try {
      return await readCurrentLockfile(opts2.internalPnpmDir, lockfileOpts);
    } catch (err) {
      logger.warn({
        message: `Ignoring broken lockfile at ${opts2.internalPnpmDir}: ${err.message}`,
        prefix: opts2.lockfileDir
      });
      return void 0;
    }
  })());
  const files = await Promise.all(fileReads);
  const sopts = {
    autoInstallPeers: opts2.autoInstallPeers,
    excludeLinksFromLockfile: opts2.excludeLinksFromLockfile,
    lockfileVersion: wantedLockfileVersion,
    peersSuffixMaxLength: opts2.peersSuffixMaxLength
  };
  const importerIds = opts2.projects.map((importer) => importer.id);
  const currentLockfile = files[1] ?? createLockfileObject(importerIds, sopts);
  for (const importerId of importerIds) {
    if (!currentLockfile.importers[importerId]) {
      currentLockfile.importers[importerId] = {
        specifiers: {}
      };
    }
  }
  const wantedLockfile = files[0] ?? (currentLockfile && clone_default(currentLockfile)) ?? createLockfileObject(importerIds, sopts);
  let wantedLockfileIsModified = false;
  for (const importerId of importerIds) {
    if (!wantedLockfile.importers[importerId]) {
      wantedLockfileIsModified = true;
      wantedLockfile.importers[importerId] = {
        specifiers: {}
      };
    }
  }
  const existsWantedLockfile = files[0] != null;
  return {
    currentLockfile,
    currentLockfileIsUpToDate: equals_default(currentLockfile, wantedLockfile),
    existsCurrentLockfile: files[1] != null,
    existsWantedLockfile,
    existsNonEmptyWantedLockfile: existsWantedLockfile && !isEmptyLockfile(wantedLockfile),
    wantedLockfile,
    wantedLockfileIsModified,
    lockfileHadConflicts
  };
}
var init_readLockfiles = __esm({
  "../installing/context/lib/readLockfiles.js"() {
    "use strict";
    init_lib();
    init_lib78();
    init_lib3();
    init_es();
  }
});

// ../installing/context/lib/index.js
import { promises as fs50 } from "node:fs";
import path85 from "node:path";
async function getContext(opts2) {
  const modulesDir = opts2.modulesDir ?? "node_modules";
  const importersContext = await readProjectsContext(opts2.allProjects, { lockfileDir: opts2.lockfileDir, modulesDir });
  const virtualStoreDir = pathAbsolute(opts2.virtualStoreDir ?? path85.join(modulesDir, ".pnpm"), opts2.lockfileDir);
  await fs50.mkdir(opts2.storeDir, { recursive: true });
  await registerProject(opts2.storeDir, opts2.lockfileDir);
  for (const project of opts2.allProjects) {
    packageManifestLogger.debug({
      initial: project.manifest,
      prefix: project.rootDir
    });
  }
  if (opts2.readPackageHook != null) {
    await Promise.all(importersContext.projects.map(async (project) => {
      project.originalManifest = project.manifest;
      project.manifest = await opts2.readPackageHook(clone_default(project.manifest), project.rootDir);
    }));
  }
  const extraBinPaths = [
    ...opts2.extraBinPaths || []
  ];
  const internalPnpmDir = path85.join(importersContext.rootModulesDir, ".pnpm");
  const hoistedModulesDir = path85.join(opts2.enableGlobalVirtualStore ? internalPnpmDir : virtualStoreDir, "node_modules");
  if (opts2.hoistPattern?.length) {
    extraBinPaths.unshift(path85.join(hoistedModulesDir, ".bin"));
  }
  const ctx = {
    extraBinPaths,
    extraNodePaths: getExtraNodePaths({
      extendNodePath: opts2.extendNodePath,
      nodeLinker: opts2.nodeLinker,
      hoistPattern: importersContext.currentHoistPattern ?? opts2.hoistPattern,
      hoistedModulesDir
    }),
    hoistedDependencies: importersContext.hoistedDependencies,
    hoistedModulesDir,
    hoistPattern: opts2.hoistPattern,
    currentHoistPattern: importersContext.currentHoistPattern,
    include: opts2.include ?? importersContext.include,
    lockfileDir: opts2.lockfileDir,
    modulesFile: importersContext.modules,
    pendingBuilds: importersContext.pendingBuilds,
    projects: Object.fromEntries(importersContext.projects.map((project) => [project.rootDir, project])),
    publicHoistPattern: opts2.publicHoistPattern,
    currentPublicHoistPattern: importersContext.currentPublicHoistPattern,
    registries: opts2.registries,
    rootModulesDir: importersContext.rootModulesDir,
    skipped: importersContext.skipped,
    storeDir: opts2.storeDir,
    virtualStoreDir,
    virtualStoreDirMaxLength: importersContext.virtualStoreDirMaxLength ?? opts2.virtualStoreDirMaxLength,
    workspacePackages: opts2.workspacePackages ?? arrayOfWorkspacePackagesToMap(opts2.allProjects),
    ...await readLockfiles({
      autoInstallPeers: opts2.autoInstallPeers,
      ci: opts2.ci,
      excludeLinksFromLockfile: opts2.excludeLinksFromLockfile,
      peersSuffixMaxLength: opts2.peersSuffixMaxLength,
      force: opts2.force,
      frozenLockfile: opts2.frozenLockfile === true,
      lockfileDir: opts2.lockfileDir,
      projects: importersContext.projects,
      registry: opts2.registries.default,
      useLockfile: opts2.useLockfile,
      useGitBranchLockfile: opts2.useGitBranchLockfile,
      mergeGitBranchLockfiles: opts2.mergeGitBranchLockfiles,
      internalPnpmDir
    })
  };
  contextLogger.debug({
    currentLockfileExists: ctx.existsCurrentLockfile,
    storeDir: opts2.storeDir,
    virtualStoreDir
  });
  return ctx;
}
async function getContextForSingleImporter(manifest, opts2) {
  const { currentHoistPattern, hoistedDependencies, projects, include, modules, pendingBuilds, registries, skipped, rootModulesDir } = await readProjectsContext([
    {
      rootDir: opts2.dir
    }
  ], {
    lockfileDir: opts2.lockfileDir,
    modulesDir: opts2.modulesDir
  });
  const storeDir = opts2.storeDir;
  const importer = projects[0];
  const modulesDir = importer.modulesDir;
  const importerId = importer.id;
  const virtualStoreDir = pathAbsolute(opts2.virtualStoreDir ?? "node_modules/.pnpm", opts2.lockfileDir);
  await fs50.mkdir(storeDir, { recursive: true });
  await registerProject(storeDir, opts2.lockfileDir);
  const extraBinPaths = [
    ...opts2.extraBinPaths || []
  ];
  const internalPnpmDir = path85.join(rootModulesDir, ".pnpm");
  const hoistedModulesDir = path85.join(opts2.enableGlobalVirtualStore ? internalPnpmDir : virtualStoreDir, "node_modules");
  if (opts2.hoistPattern?.length) {
    extraBinPaths.unshift(path85.join(hoistedModulesDir, ".bin"));
  }
  const ctx = {
    extraBinPaths,
    extraNodePaths: getExtraNodePaths({
      extendNodePath: opts2.extendNodePath,
      nodeLinker: opts2.nodeLinker,
      hoistPattern: currentHoistPattern ?? opts2.hoistPattern,
      hoistedModulesDir
    }),
    hoistedDependencies,
    hoistedModulesDir,
    hoistPattern: opts2.hoistPattern,
    importerId,
    include: opts2.include ?? include,
    lockfileDir: opts2.lockfileDir,
    manifest: await opts2.readPackageHook?.(manifest) ?? manifest,
    modulesDir,
    modulesFile: modules,
    pendingBuilds,
    prefix: opts2.dir,
    publicHoistPattern: opts2.publicHoistPattern,
    registries: {
      ...opts2.registries,
      ...registries
    },
    rootModulesDir,
    skipped,
    storeDir,
    virtualStoreDir,
    ...await readLockfiles({
      autoInstallPeers: opts2.autoInstallPeers,
      ci: opts2.ci,
      excludeLinksFromLockfile: opts2.excludeLinksFromLockfile,
      peersSuffixMaxLength: opts2.peersSuffixMaxLength,
      force: opts2.force,
      frozenLockfile: false,
      lockfileDir: opts2.lockfileDir,
      projects: [{ id: importerId, rootDir: opts2.dir }],
      registry: opts2.registries.default,
      useLockfile: opts2.useLockfile,
      useGitBranchLockfile: opts2.useGitBranchLockfile,
      mergeGitBranchLockfiles: opts2.mergeGitBranchLockfiles,
      internalPnpmDir
    })
  };
  packageManifestLogger.debug({
    initial: manifest,
    prefix: opts2.dir
  });
  contextLogger.debug({
    currentLockfileExists: ctx.existsCurrentLockfile,
    storeDir: opts2.storeDir,
    virtualStoreDir
  });
  return ctx;
}
function getExtraNodePaths({ extendNodePath = true, hoistPattern, nodeLinker, hoistedModulesDir }) {
  if (extendNodePath && nodeLinker === "isolated" && hoistPattern?.length) {
    return [hoistedModulesDir];
  }
  return [];
}
function arrayOfWorkspacePackagesToMap(pkgs) {
  const workspacePkgs = /* @__PURE__ */ new Map();
  for (const { manifest, rootDir } of pkgs) {
    if (!manifest.name)
      continue;
    let workspacePkgsByVersion = workspacePkgs.get(manifest.name);
    if (!workspacePkgsByVersion) {
      workspacePkgsByVersion = /* @__PURE__ */ new Map();
      workspacePkgs.set(manifest.name, workspacePkgsByVersion);
    }
    workspacePkgsByVersion.set(manifest.version ?? "0.0.0", {
      manifest,
      rootDir
    });
  }
  return workspacePkgs;
}
var init_lib87 = __esm({
  "../installing/context/lib/index.js"() {
    "use strict";
    init_lib6();
    init_lib79();
    init_lib86();
    init_path_absolute();
    init_es();
    init_readLockfiles();
  }
});

// ../lockfile/walker/lib/index.js
function lockfileWalkerGroupImporterSteps(lockfile, importerIds, opts2) {
  const walked = new Set(opts2?.skipped != null ? Array.from(opts2?.skipped) : []);
  return importerIds.map((importerId) => {
    const projectSnapshot = lockfile.importers[importerId];
    const entryNodes = Object.entries({
      ...opts2?.include?.devDependencies === false ? {} : projectSnapshot.devDependencies,
      ...opts2?.include?.dependencies === false ? {} : projectSnapshot.dependencies,
      ...opts2?.include?.optionalDependencies === false ? {} : projectSnapshot.optionalDependencies
    }).map(([pkgName, reference]) => refToRelative(reference, pkgName)).filter((nodeId) => nodeId !== null);
    return {
      importerId,
      step: step({
        includeOptionalDependencies: opts2?.include?.optionalDependencies !== false,
        lockfile,
        walked
      }, entryNodes)
    };
  });
}
function lockfileWalker(lockfile, importerIds, opts2) {
  const walked = new Set(opts2?.skipped != null ? Array.from(opts2?.skipped) : []);
  const entryNodes = [];
  const directDeps = [];
  for (const importerId of importerIds) {
    const projectSnapshot = lockfile.importers[importerId];
    Object.entries({
      ...opts2?.include?.devDependencies === false ? {} : projectSnapshot.devDependencies,
      ...opts2?.include?.dependencies === false ? {} : projectSnapshot.dependencies,
      ...opts2?.include?.optionalDependencies === false ? {} : projectSnapshot.optionalDependencies
    }).forEach(([pkgName, reference]) => {
      const depPath = refToRelative(reference, pkgName);
      if (depPath === null)
        return;
      entryNodes.push(depPath);
      directDeps.push({ alias: pkgName, depPath });
    });
  }
  return {
    directDeps,
    step: step({
      includeOptionalDependencies: opts2?.include?.optionalDependencies !== false,
      lockfile,
      walked
    }, entryNodes)
  };
}
function step(ctx, nextDepPaths) {
  const result2 = {
    dependencies: [],
    links: [],
    missing: []
  };
  for (const depPath of nextDepPaths) {
    if (ctx.walked.has(depPath))
      continue;
    ctx.walked.add(depPath);
    const pkgSnapshot = ctx.lockfile.packages?.[depPath];
    if (pkgSnapshot == null) {
      if (depPath.startsWith("link:")) {
        result2.links.push(depPath);
        continue;
      }
      result2.missing.push(depPath);
      continue;
    }
    result2.dependencies.push({
      depPath,
      next: () => step(ctx, next({ includeOptionalDependencies: ctx.includeOptionalDependencies }, pkgSnapshot)),
      pkgSnapshot
    });
  }
  return result2;
}
function next(opts2, nextPkg) {
  return Object.entries({
    ...nextPkg.dependencies,
    ...opts2.includeOptionalDependencies ? nextPkg.optionalDependencies : {}
  }).map(([pkgName, reference]) => refToRelative(reference, pkgName)).filter((nodeId) => nodeId !== null);
}
var init_lib88 = __esm({
  "../lockfile/walker/lib/index.js"() {
    "use strict";
    init_lib65();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/logger/1001.0.1/481ced7b838360780b7db91a2ff405e70a19e7eac51c537cdd9925ba79343709/node_modules/@pnpm/logger/lib/logger.js
var require_logger = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/logger/1001.0.1/481ced7b838360780b7db91a2ff405e70a19e7eac51c537cdd9925ba79343709/node_modules/@pnpm/logger/lib/logger.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.logger = void 0;
    exports2.globalWarn = globalWarn4;
    exports2.globalInfo = globalInfo2;
    var bole_1 = __importDefault2(require_bole());
    bole_1.default.setFastTime();
    exports2.logger = (0, bole_1.default)("pnpm");
    var globalLogger2 = (0, bole_1.default)("pnpm:global");
    function globalWarn4(message) {
      globalLogger2.warn(message);
    }
    function globalInfo2(message) {
      globalLogger2.info(message);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/logger/1001.0.1/481ced7b838360780b7db91a2ff405e70a19e7eac51c537cdd9925ba79343709/node_modules/@pnpm/logger/lib/ndjsonParse.js
var require_ndjsonParse = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/logger/1001.0.1/481ced7b838360780b7db91a2ff405e70a19e7eac51c537cdd9925ba79343709/node_modules/@pnpm/logger/lib/ndjsonParse.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.parse = parse7;
    var split2_1 = __importDefault2(require_split2());
    var opts2 = { strict: true };
    function parse7() {
      function parseRow(row) {
        try {
          if (row)
            return JSON.parse(row);
        } catch (e) {
          if (opts2.strict) {
            this.emit("error", new Error(`Could not parse row "${row.length > 50 ? `${row.slice(0, 50)}...` : row}"`));
          }
        }
      }
      return (0, split2_1.default)(parseRow, opts2);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/logger/1001.0.1/481ced7b838360780b7db91a2ff405e70a19e7eac51c537cdd9925ba79343709/node_modules/@pnpm/logger/lib/streamParser.js
var require_streamParser = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/logger/1001.0.1/481ced7b838360780b7db91a2ff405e70a19e7eac51c537cdd9925ba79343709/node_modules/@pnpm/logger/lib/streamParser.js"(exports2) {
    "use strict";
    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      var desc = Object.getOwnPropertyDescriptor(m, k2);
      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
        desc = { enumerable: true, get: function() {
          return m[k2];
        } };
      }
      Object.defineProperty(o2, k22, desc);
    }) : (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      o2[k22] = m[k2];
    }));
    var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o2, v) {
      Object.defineProperty(o2, "default", { enumerable: true, value: v });
    }) : function(o2, v) {
      o2["default"] = v;
    });
    var __importStar2 = exports2 && exports2.__importStar || function(mod) {
      if (mod && mod.__esModule) return mod;
      var result2 = {};
      if (mod != null) {
        for (var k2 in mod) if (k2 !== "default" && Object.prototype.hasOwnProperty.call(mod, k2)) __createBinding2(result2, mod, k2);
      }
      __setModuleDefault2(result2, mod);
      return result2;
    };
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.streamParser = void 0;
    exports2.createStreamParser = createStreamParser2;
    var bole_1 = __importDefault2(require_bole());
    var ndjson = __importStar2(require_ndjsonParse());
    exports2.streamParser = createStreamParser2();
    function createStreamParser2() {
      const sp = ndjson.parse();
      bole_1.default.output([
        {
          level: "debug",
          stream: sp
        }
      ]);
      return sp;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/logger/1001.0.1/481ced7b838360780b7db91a2ff405e70a19e7eac51c537cdd9925ba79343709/node_modules/@pnpm/logger/lib/writeToConsole.js
var require_writeToConsole = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/logger/1001.0.1/481ced7b838360780b7db91a2ff405e70a19e7eac51c537cdd9925ba79343709/node_modules/@pnpm/logger/lib/writeToConsole.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.writeToConsole = writeToConsole2;
    var bole_1 = __importDefault2(require_bole());
    function writeToConsole2() {
      bole_1.default.output([
        {
          level: "debug",
          stream: process.stdout
        }
      ]);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/logger/1001.0.1/481ced7b838360780b7db91a2ff405e70a19e7eac51c537cdd9925ba79343709/node_modules/@pnpm/logger/lib/index.js
var require_lib21 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/logger/1001.0.1/481ced7b838360780b7db91a2ff405e70a19e7eac51c537cdd9925ba79343709/node_modules/@pnpm/logger/lib/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.writeToConsole = exports2.streamParser = exports2.createStreamParser = exports2.globalWarn = exports2.globalInfo = exports2.logger = void 0;
    var logger_js_1 = require_logger();
    Object.defineProperty(exports2, "logger", { enumerable: true, get: function() {
      return logger_js_1.logger;
    } });
    Object.defineProperty(exports2, "globalInfo", { enumerable: true, get: function() {
      return logger_js_1.globalInfo;
    } });
    Object.defineProperty(exports2, "globalWarn", { enumerable: true, get: function() {
      return logger_js_1.globalWarn;
    } });
    var streamParser_js_1 = require_streamParser();
    Object.defineProperty(exports2, "createStreamParser", { enumerable: true, get: function() {
      return streamParser_js_1.createStreamParser;
    } });
    Object.defineProperty(exports2, "streamParser", { enumerable: true, get: function() {
      return streamParser_js_1.streamParser;
    } });
    var writeToConsole_js_1 = require_writeToConsole();
    Object.defineProperty(exports2, "writeToConsole", { enumerable: true, get: function() {
      return writeToConsole_js_1.writeToConsole;
    } });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/can-link/3.0.0/bae417759b91f431851e4811843beef52513ed66982ee97d7bcd9c27ccf8c2bb/node_modules/can-link/index.js
import defaultFS2 from "node:fs";
async function canLink(existingPath, newPath, customFS) {
  const fs111 = customFS || defaultFS2;
  try {
    await fs111.promises.link(existingPath, newPath);
    fs111.promises.unlink(newPath).catch(() => {
    });
    return true;
  } catch (err) {
    if (err.code === "EXDEV" || err.code === "EACCES" || err.code === "EPERM") {
      return false;
    }
    throw err;
  }
}
var init_can_link = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/can-link/3.0.0/bae417759b91f431851e4811843beef52513ed66982ee97d7bcd9c27ccf8c2bb/node_modules/can-link/index.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/next-path/1.0.0/de08de603a106249d809dfd48fcc251f85b935bfa3517816c69f157ad1243460/node_modules/next-path/index.js
var require_next_path = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/next-path/1.0.0/de08de603a106249d809dfd48fcc251f85b935bfa3517816c69f157ad1243460/node_modules/next-path/index.js"(exports2, module2) {
    "use strict";
    var path218 = __require("path");
    var nextPath2 = (from5, to) => {
      const diff = path218.relative(from5, to);
      const sepIndex = diff.indexOf(path218.sep);
      const next2 = sepIndex >= 0 ? diff.substring(0, sepIndex) : diff;
      return path218.join(from5, next2);
    };
    module2.exports = nextPath2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/root-link-target/4.0.0/0d12f51c3375d006ca143eed15964c8223b5e04c31b06dfc634e410c28e0c56f/node_modules/root-link-target/index.js
import path86 from "node:path";
async function rootLinkTarget(filePath) {
  filePath = path86.resolve(filePath);
  const end = path86.dirname(filePath);
  let dir = path86.parse(end).root;
  while (true) {
    const result2 = await canLink(filePath, pathTemp(dir));
    if (result2) {
      return dir;
    } else if (dir === end) {
      throw new Error(`${filePath} cannot be linked to anywhere`);
    } else {
      dir = (0, import_next_path.default)(dir, end);
    }
  }
}
var import_next_path;
var init_root_link_target = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/root-link-target/4.0.0/0d12f51c3375d006ca143eed15964c8223b5e04c31b06dfc634e410c28e0c56f/node_modules/root-link-target/index.js"() {
    init_can_link();
    init_path_temp();
    import_next_path = __toESM(require_next_path(), 1);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/touch/3.1.1/12ecbce42e84b3507a93f09e9839abf0c0444e94b859aaf14db9c066cb13b6a2/node_modules/touch/index.js
var require_touch = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/touch/3.1.1/12ecbce42e84b3507a93f09e9839abf0c0444e94b859aaf14db9c066cb13b6a2/node_modules/touch/index.js"(exports2, module2) {
    "use strict";
    var EE = __require("events").EventEmitter;
    var cons = __require("constants");
    var fs111 = __require("fs");
    module2.exports = (f, options, cb) => {
      if (typeof options === "function")
        cb = options, options = {};
      const p = new Promise((res, rej) => {
        new Touch(validOpts(options, f, null)).on("done", res).on("error", rej);
      });
      return cb ? p.then((res) => cb(null, res), cb) : p;
    };
    module2.exports.sync = module2.exports.touchSync = (f, options) => (new TouchSync(validOpts(options, f, null)), void 0);
    module2.exports.ftouch = (fd, options, cb) => {
      if (typeof options === "function")
        cb = options, options = {};
      const p = new Promise((res, rej) => {
        new Touch(validOpts(options, null, fd)).on("done", res).on("error", rej);
      });
      return cb ? p.then((res) => cb(null, res), cb) : p;
    };
    module2.exports.ftouchSync = (fd, opt) => (new TouchSync(validOpts(opt, null, fd)), void 0);
    var validOpts = (options, path218, fd) => {
      options = Object.create(options || {});
      options.fd = fd;
      options.path = path218;
      const now = new Date(options.time || Date.now()).getTime() / 1e3;
      if (!options.atime && !options.mtime)
        options.atime = options.mtime = now;
      else {
        if (true === options.atime)
          options.atime = now;
        if (true === options.mtime)
          options.mtime = now;
      }
      let oflags = 0;
      if (!options.force)
        oflags = oflags | cons.O_RDWR;
      if (!options.nocreate)
        oflags = oflags | cons.O_CREAT;
      options.oflags = oflags;
      return options;
    };
    var Touch = class extends EE {
      constructor(options) {
        super(options);
        this.fd = options.fd;
        this.path = options.path;
        this.atime = options.atime;
        this.mtime = options.mtime;
        this.ref = options.ref;
        this.nocreate = !!options.nocreate;
        this.force = !!options.force;
        this.closeAfter = options.closeAfter;
        this.oflags = options.oflags;
        this.options = options;
        if (typeof this.fd !== "number") {
          this.closeAfter = true;
          this.open();
        } else
          this.onopen(null, this.fd);
      }
      emit(ev, data) {
        this.close();
        return super.emit(ev, data);
      }
      close() {
        if (typeof this.fd === "number" && this.closeAfter)
          fs111.close(this.fd, () => {
          });
      }
      open() {
        fs111.open(this.path, this.oflags, (er, fd) => this.onopen(er, fd));
      }
      onopen(er, fd) {
        if (er) {
          if (er.code === "EISDIR")
            this.onopen(null, null);
          else if (er.code === "ENOENT" && this.nocreate)
            this.emit("done");
          else
            this.emit("error", er);
        } else {
          this.fd = fd;
          if (this.ref)
            this.statref();
          else if (!this.atime || !this.mtime)
            this.fstat();
          else
            this.futimes();
        }
      }
      statref() {
        fs111.stat(this.ref, (er, st) => {
          if (er)
            this.emit("error", er);
          else
            this.onstatref(st);
        });
      }
      onstatref(st) {
        this.atime = this.atime && st.atime.getTime() / 1e3;
        this.mtime = this.mtime && st.mtime.getTime() / 1e3;
        if (!this.atime || !this.mtime)
          this.fstat();
        else
          this.futimes();
      }
      fstat() {
        const stat2 = this.fd ? "fstat" : "stat";
        const target2 = this.fd || this.path;
        fs111[stat2](target2, (er, st) => {
          if (er)
            this.emit("error", er);
          else
            this.onfstat(st);
        });
      }
      onfstat(st) {
        if (typeof this.atime !== "number")
          this.atime = st.atime.getTime() / 1e3;
        if (typeof this.mtime !== "number")
          this.mtime = st.mtime.getTime() / 1e3;
        this.futimes();
      }
      futimes() {
        const utimes = this.fd ? "futimes" : "utimes";
        const target2 = this.fd || this.path;
        fs111[utimes](target2, "" + this.atime, "" + this.mtime, (er) => {
          if (er)
            this.emit("error", er);
          else
            this.emit("done");
        });
      }
    };
    var TouchSync = class extends Touch {
      open() {
        try {
          this.onopen(null, fs111.openSync(this.path, this.oflags));
        } catch (er) {
          this.onopen(er);
        }
      }
      statref() {
        let threw = true;
        try {
          this.onstatref(fs111.statSync(this.ref));
          threw = false;
        } finally {
          if (threw)
            this.close();
        }
      }
      fstat() {
        let threw = true;
        const stat2 = this.fd ? "fstatSync" : "statSync";
        const target2 = this.fd || this.path;
        try {
          this.onfstat(fs111[stat2](target2));
          threw = false;
        } finally {
          if (threw)
            this.close();
        }
      }
      futimes() {
        let threw = true;
        const utimes = this.fd ? "futimesSync" : "utimesSync";
        const target2 = this.fd || this.path;
        try {
          fs111[utimes](target2, this.atime, this.mtime);
          threw = false;
        } finally {
          if (threw)
            this.close();
        }
        this.emit("done");
      }
      close() {
        if (typeof this.fd === "number" && this.closeAfter)
          try {
            fs111.closeSync(this.fd);
          } catch (er) {
          }
      }
    };
  }
});

// ../store/path/lib/index.js
import { promises as fs51 } from "node:fs";
import os10 from "node:os";
import path87 from "node:path";
function getStorePath({ pkgRoot, storePath, pnpmHomeDir }) {
  if (!storePath) {
    if (!pnpmHomeDir) {
      throw new PnpmError("NO_PNPM_HOME_DIR", "The pnpm home directory is unknown. Cannot calculate the store directory location.");
    }
    return storePathRelativeToHome(pkgRoot, "store", pnpmHomeDir);
  }
  if (isHomepath2(storePath)) {
    const homedir = getHomedir2();
    return storePathRelativeToHome(pkgRoot, storePath.substring(2), homedir);
  }
  const storeBasePath = pathAbsolute(storePath, pkgRoot);
  if (storeBasePath.endsWith(`${path87.sep}${STORE_VERSION}`)) {
    return storeBasePath;
  }
  return path87.join(storeBasePath, STORE_VERSION);
}
async function storePathRelativeToHome(pkgRoot, relStore, homedir) {
  const tempFile = pathTemp(pkgRoot);
  if (path87.parse(pkgRoot).root !== pkgRoot)
    await fs51.mkdir(path87.dirname(tempFile), { recursive: true });
  await (0, import_touch.default)(tempFile);
  const storeInHomeDir = path87.join(homedir, relStore, STORE_VERSION);
  if (await canLinkToSubdir(tempFile, homedir)) {
    await fs51.unlink(tempFile);
    return storeInHomeDir;
  }
  try {
    let mountpoint = await rootLinkTarget(tempFile);
    const mountpointParent = path87.join(mountpoint, "..");
    if (!dirsAreEqual(mountpointParent, mountpoint) && await canLinkToSubdir(tempFile, mountpointParent)) {
      mountpoint = mountpointParent;
    }
    if (dirsAreEqual(pkgRoot, mountpoint)) {
      return storeInHomeDir;
    }
    return path87.join(mountpoint, ".pnpm-store", STORE_VERSION);
  } catch {
    return storeInHomeDir;
  } finally {
    await fs51.unlink(tempFile);
  }
}
async function canLinkToSubdir(fileToLink, dir) {
  let result2 = false;
  const tmpDir = pathTemp(dir);
  try {
    await fs51.mkdir(tmpDir, { recursive: true });
    result2 = await canLink(fileToLink, pathTemp(tmpDir));
  } catch {
    result2 = false;
  } finally {
    await safeRmdir(tmpDir);
  }
  return result2;
}
async function safeRmdir(dir) {
  try {
    await rimraf(dir);
  } catch {
  }
}
function dirsAreEqual(dir1, dir2) {
  return path87.relative(dir1, dir2) === ".";
}
function getHomedir2() {
  const home = os10.homedir();
  if (!home)
    throw new Error("Could not find the homedir");
  return home;
}
function isHomepath2(filepath) {
  return filepath.startsWith("~/") || filepath.startsWith("~\\");
}
var import_touch;
var init_lib89 = __esm({
  "../store/path/lib/index.js"() {
    "use strict";
    init_lib();
    init_lib2();
    init_rimraf();
    init_can_link();
    init_path_absolute();
    init_path_temp();
    init_root_link_target();
    import_touch = __toESM(require_touch(), 1);
  }
});

// ../store/connection-manager/lib/createNewStoreController.js
import { promises as fs52 } from "node:fs";
async function createNewStoreController(opts2) {
  const fullMetadata = opts2.fetchFullMetadata ?? ((opts2.resolutionMode === "time-based" || opts2.trustPolicy === "no-downgrade") && !opts2.registrySupportsTimeField);
  await fs52.mkdir(opts2.storeDir, { recursive: true });
  const storeIndex = new StoreIndex(opts2.storeDir);
  const { resolve: resolve3, fetchers, clearResolutionCache, resolutionVerifiers } = createClient({
    customResolvers: opts2.hooks?.customResolvers,
    customFetchers: opts2.hooks?.customFetchers,
    unsafePerm: opts2.unsafePerm,
    ca: opts2.ca,
    cacheDir: opts2.cacheDir,
    storeDir: opts2.storeDir,
    cert: opts2.cert,
    fetchWarnTimeoutMs: opts2.fetchWarnTimeoutMs,
    fetchMinSpeedKiBps: opts2.fetchMinSpeedKiBps,
    fullMetadata,
    filterMetadata: fullMetadata,
    httpProxy: opts2.httpProxy,
    httpsProxy: opts2.httpsProxy,
    ignoreScripts: opts2.ignoreScripts,
    key: opts2.key,
    localAddress: opts2.localAddress,
    nodeDownloadMirrors: opts2.nodeDownloadMirrors,
    noProxy: opts2.noProxy,
    offline: opts2.offline,
    preferOffline: opts2.preferOffline,
    configByUri: opts2.configByUri,
    registries: opts2.registries,
    namedRegistries: opts2.namedRegistries,
    retry: {
      factor: opts2.fetchRetryFactor,
      maxTimeout: opts2.fetchRetryMaxtimeout,
      minTimeout: opts2.fetchRetryMintimeout,
      retries: opts2.fetchRetries
    },
    strictSsl: opts2.strictSsl ?? true,
    timeout: opts2.fetchTimeout,
    userAgent: opts2.userAgent,
    maxSockets: opts2.maxSockets ?? (opts2.networkConcurrency != null ? opts2.networkConcurrency * 3 : void 0),
    gitShallowHosts: opts2.gitShallowHosts,
    resolveSymlinksInInjectedDirs: opts2.resolveSymlinksInInjectedDirs,
    includeOnlyPackageFiles: !opts2.deployAllFiles,
    saveWorkspaceProtocol: opts2.saveWorkspaceProtocol,
    preserveAbsolutePaths: opts2.preserveAbsolutePaths,
    ignoreMissingTimeField: opts2.minimumReleaseAgeIgnoreMissingTime,
    minimumReleaseAge: opts2.minimumReleaseAge,
    minimumReleaseAgeStrict: opts2.minimumReleaseAgeStrict,
    minimumReleaseAgeExclude: opts2.minimumReleaseAgeExclude,
    trustPolicy: opts2.trustPolicy,
    trustPolicyExclude: opts2.trustPolicyExclude,
    trustPolicyIgnoreAfter: opts2.trustPolicyIgnoreAfter,
    storeIndex
  });
  return {
    ctrl: createPackageStore(resolve3, fetchers, {
      cafsLocker: opts2.cafsLocker,
      engineStrict: opts2.engineStrict,
      force: opts2.force,
      nodeVersion: opts2.nodeVersion,
      pnpmVersion: packageManager.version,
      ignoreFile: opts2.ignoreFile,
      importPackage: opts2.hooks?.importPackage,
      networkConcurrency: opts2.networkConcurrency,
      packageImportMethod: opts2.packageImportMethod,
      cacheDir: opts2.cacheDir,
      storeDir: opts2.storeDir,
      verifyStoreIntegrity: typeof opts2.verifyStoreIntegrity === "boolean" ? opts2.verifyStoreIntegrity : true,
      virtualStoreDirMaxLength: opts2.virtualStoreDirMaxLength,
      strictStorePkgContentCheck: opts2.strictStorePkgContentCheck,
      clearResolutionCache,
      customFetchers: opts2.hooks?.customFetchers,
      storeIndex
    }),
    dir: opts2.storeDir,
    resolutionVerifiers
  };
}
var init_createNewStoreController = __esm({
  "../store/connection-manager/lib/createNewStoreController.js"() {
    "use strict";
    init_lib5();
    init_lib57();
    init_lib86();
    init_lib16();
  }
});

// ../store/connection-manager/lib/index.js
async function createStoreController(opts2) {
  const storeDir = await getStorePath({
    pkgRoot: opts2.workspaceDir ?? opts2.dir,
    storePath: opts2.storeDir,
    pnpmHomeDir: opts2.pnpmHomeDir
  });
  return createNewStoreController(Object.assign(opts2, {
    storeDir
  }));
}
var init_lib90 = __esm({
  "../store/connection-manager/lib/index.js"() {
    "use strict";
    init_lib89();
    init_createNewStoreController();
  }
});

// ../building/after-install/lib/extendBuildOptions.js
import path88 from "node:path";
async function extendBuildOptions(opts2) {
  if (opts2) {
    for (const key in opts2) {
      if (opts2[key] === void 0) {
        delete opts2[key];
      }
    }
  }
  const defaultOpts = await defaults(opts2);
  const extendedOpts = {
    ...defaultOpts,
    ...opts2,
    storeDir: defaultOpts.storeDir
  };
  extendedOpts.registries = normalizeRegistries(extendedOpts.registries);
  return extendedOpts;
}
var defaults;
var init_extendBuildOptions = __esm({
  "../building/after-install/lib/extendBuildOptions.js"() {
    "use strict";
    init_lib74();
    init_load_json_file();
    defaults = async (opts2) => {
      const packageManager2 = opts2.packageManager ?? await loadJsonFile(path88.join(import.meta.dirname, "../package.json"));
      const dir = opts2.dir ?? process.cwd();
      const lockfileDir = opts2.lockfileDir ?? dir;
      return {
        childConcurrency: 5,
        development: true,
        dir,
        force: false,
        lockfileDir,
        nodeLinker: "isolated",
        optional: true,
        packageManager: packageManager2,
        pending: false,
        production: true,
        configByUri: {},
        registries: DEFAULT_REGISTRIES,
        scriptsPrependNodePath: false,
        shamefullyHoist: false,
        shellEmulator: false,
        sideEffectsCacheRead: false,
        storeDir: opts2.storeDir,
        unsafePerm: process.platform === "win32" || process.platform === "cygwin" || !process.setgid || process.getuid?.() !== 0,
        useLockfile: true,
        userAgent: `${packageManager2.name}/${packageManager2.version} npm/? node/${process.version} ${process.platform} ${process.arch}`
      };
    };
  }
});

// ../building/after-install/lib/index.js
import assert7 from "node:assert";
import path89 from "node:path";
import util29 from "node:util";
function findPackages2(packages, searched, opts2) {
  return Object.keys(packages).filter((relativeDepPath) => {
    const pkgLockfile = packages[relativeDepPath];
    const pkgInfo = nameVerFromPkgSnapshot(relativeDepPath, pkgLockfile);
    if (!pkgInfo.name) {
      import_logger53.logger.warn({
        message: `Skipping ${relativeDepPath} because cannot get the package name from ${WANTED_LOCKFILE}.
            Try to run \`pnpm update --depth 100\` to create a new ${WANTED_LOCKFILE} with all the necessary info.`,
        prefix: opts2.prefix
      });
      return false;
    }
    return matches(searched, pkgInfo);
  });
}
function matches(searched, manifest) {
  return searched.some((searchedPkg) => {
    if (typeof searchedPkg === "string") {
      return manifest.name === searchedPkg;
    }
    return searchedPkg.name === manifest.name && !!manifest.version && import_semver23.default.satisfies(manifest.version, searchedPkg.range);
  });
}
async function buildSelectedPkgs(projects, pkgSpecs, maybeOpts) {
  const reporter = maybeOpts?.reporter;
  if (reporter != null && typeof reporter === "function") {
    import_logger53.streamParser.on("data", reporter);
  }
  const opts2 = await extendBuildOptions(maybeOpts);
  const ctx = await getContext({ ...opts2, allProjects: projects });
  if (ctx.currentLockfile?.packages == null)
    return {};
  const packages = ctx.currentLockfile.packages;
  const searched = pkgSpecs.map((arg) => {
    const { fetchSpec, name, raw, type: type4 } = (0, import_npm_package_arg2.default)(arg);
    if (raw === name) {
      return name;
    }
    if (type4 !== "version" && type4 !== "range") {
      throw new Error(`Invalid argument - ${arg}. Rebuild can only select by version or range`);
    }
    return {
      name,
      range: fetchSpec
    };
  });
  let pkgs = [];
  for (const { rootDir } of projects) {
    pkgs = [
      ...pkgs,
      ...findPackages2(packages, searched, { prefix: rootDir })
    ];
  }
  const { ignoredPkgs } = await _rebuild({
    pkgsToRebuild: new Set(pkgs),
    ...ctx
  }, opts2);
  await writeModulesManifest(ctx.rootModulesDir, {
    prunedAt: (/* @__PURE__ */ new Date()).toUTCString(),
    ...ctx.modulesFile,
    hoistedDependencies: ctx.hoistedDependencies,
    hoistPattern: ctx.hoistPattern,
    included: ctx.include,
    ignoredBuilds: mergeIgnoredBuilds(ctx.modulesFile?.ignoredBuilds, ignoredPkgs, pkgs),
    layoutVersion: LAYOUT_VERSION,
    packageManager: `${opts2.packageManager.name}@${opts2.packageManager.version}`,
    pendingBuilds: ctx.pendingBuilds,
    publicHoistPattern: ctx.publicHoistPattern,
    registries: ctx.registries,
    skipped: Array.from(ctx.skipped),
    storeDir: ctx.modulesFile?.storeDir ?? ctx.storeDir,
    virtualStoreDir: ctx.modulesFile?.virtualStoreDir ?? ctx.virtualStoreDir,
    virtualStoreDirMaxLength: ctx.modulesFile?.virtualStoreDirMaxLength ?? ctx.virtualStoreDirMaxLength,
    allowBuilds: opts2.allowBuilds
  });
  return {
    ignoredBuilds: ignoredPkgs
  };
}
async function buildProjects(projects, maybeOpts) {
  const reporter = maybeOpts?.reporter;
  if (reporter != null && typeof reporter === "function") {
    import_logger53.streamParser.on("data", reporter);
  }
  const opts2 = await extendBuildOptions(maybeOpts);
  const ctx = await getContext({ ...opts2, allProjects: projects });
  let idsToRebuild = [];
  if (opts2.pending) {
    idsToRebuild = ctx.pendingBuilds;
  } else if (ctx.currentLockfile?.packages != null) {
    idsToRebuild = Object.keys(ctx.currentLockfile.packages);
  }
  const { pkgsThatWereRebuilt, ignoredPkgs } = await _rebuild({
    pkgsToRebuild: new Set(idsToRebuild),
    ...ctx
  }, opts2);
  ctx.pendingBuilds = ctx.pendingBuilds.filter((depPath) => !pkgsThatWereRebuilt.has(depPath));
  const store = await createStoreController(opts2);
  const scriptsOpts = {
    extraBinPaths: ctx.extraBinPaths,
    extraNodePaths: ctx.extraNodePaths,
    extraEnv: opts2.extraEnv,
    preferSymlinkedExecutables: opts2.preferSymlinkedExecutables,
    scriptsPrependNodePath: opts2.scriptsPrependNodePath,
    scriptShell: opts2.scriptShell,
    shellEmulator: opts2.shellEmulator,
    storeController: store.ctrl,
    unsafePerm: opts2.unsafePerm || false,
    userAgent: opts2.userAgent
  };
  await runLifecycleHooksConcurrently(["preinstall", "install", "postinstall", "prepublish", "prepare"], Object.values(ctx.projects), opts2.childConcurrency || 5, scriptsOpts);
  for (const { id, manifest } of Object.values(ctx.projects)) {
    if (manifest?.scripts != null && (!opts2.pending || ctx.pendingBuilds.includes(id))) {
      ctx.pendingBuilds.splice(ctx.pendingBuilds.indexOf(id), 1);
    }
  }
  await writeModulesManifest(ctx.rootModulesDir, {
    prunedAt: (/* @__PURE__ */ new Date()).toUTCString(),
    ...ctx.modulesFile,
    hoistedDependencies: ctx.hoistedDependencies,
    hoistPattern: ctx.hoistPattern,
    included: ctx.include,
    ignoredBuilds: ignoredPkgs,
    layoutVersion: LAYOUT_VERSION,
    packageManager: `${opts2.packageManager.name}@${opts2.packageManager.version}`,
    pendingBuilds: ctx.pendingBuilds,
    publicHoistPattern: ctx.publicHoistPattern,
    registries: ctx.registries,
    skipped: Array.from(ctx.skipped),
    storeDir: ctx.storeDir,
    virtualStoreDir: ctx.virtualStoreDir,
    virtualStoreDirMaxLength: ctx.virtualStoreDirMaxLength
  });
}
function getSubgraphToBuild(step2, nodesToBuildAndTransitive, opts2) {
  let currentShouldBeBuilt = false;
  for (const { depPath, next: next2 } of step2.dependencies) {
    if (nodesToBuildAndTransitive.has(depPath)) {
      currentShouldBeBuilt = true;
    }
    const childShouldBeBuilt = getSubgraphToBuild(next2(), nodesToBuildAndTransitive, opts2) || opts2.pkgsToRebuild.has(depPath);
    if (childShouldBeBuilt) {
      nodesToBuildAndTransitive.add(depPath);
      currentShouldBeBuilt = true;
    }
  }
  for (const depPath of step2.missing) {
    import_logger53.logger.debug({ message: `No entry for "${depPath}" in ${WANTED_LOCKFILE}` });
  }
  return currentShouldBeBuilt;
}
async function _rebuild(ctx, opts2) {
  const depGraph = lockfileToDepGraph(ctx.currentLockfile, opts2.supportedArchitectures);
  const depsStateCache = {};
  const nodeVersion = findRuntimeNodeVersion(Object.keys(depGraph));
  const pkgsThatWereRebuilt = /* @__PURE__ */ new Set();
  const graph = /* @__PURE__ */ new Map();
  const pkgSnapshots = ctx.currentLockfile.packages ?? {};
  const nodesToBuildAndTransitive = /* @__PURE__ */ new Set();
  getSubgraphToBuild(lockfileWalker(ctx.currentLockfile, Object.values(ctx.projects).map(({ id }) => id), {
    include: {
      dependencies: opts2.production,
      devDependencies: opts2.development,
      optionalDependencies: opts2.optional
    }
  }).step, nodesToBuildAndTransitive, { pkgsToRebuild: ctx.pkgsToRebuild });
  const nodesToBuildAndTransitiveArray = Array.from(nodesToBuildAndTransitive);
  for (const depPath of nodesToBuildAndTransitiveArray) {
    const pkgSnapshot = pkgSnapshots[depPath];
    graph.set(depPath, Object.entries({ ...pkgSnapshot.dependencies, ...pkgSnapshot.optionalDependencies }).map(([pkgName, reference]) => refToRelative(reference, pkgName)).filter((childRelDepPath) => childRelDepPath && nodesToBuildAndTransitive.has(childRelDepPath)));
  }
  const graphSequencerResult = graphSequencer(graph, nodesToBuildAndTransitiveArray);
  const chunks = graphSequencerResult.chunks;
  const warn = (message) => {
    import_logger53.logger.info({ message, prefix: opts2.dir });
  };
  const ignoredPkgs = /* @__PURE__ */ new Set();
  const _allowBuild = createAllowBuildFunction(opts2) ?? (() => void 0);
  const allowBuild = (pkgName, version2, depPath) => {
    switch (_allowBuild(pkgName, version2)) {
      case true:
        return true;
      case void 0: {
        ignoredPkgs.add(depPath);
        break;
      }
    }
    return false;
  };
  const builtDepPaths = /* @__PURE__ */ new Set();
  const storeIndex = opts2.skipIfHasSideEffectsCache ? new StoreIndex(opts2.storeDir) : void 0;
  const groups = chunks.map((chunk) => chunk.filter((depPath) => ctx.pkgsToRebuild.has(depPath) && !ctx.skipped.has(depPath)).map((depPath) => async () => {
    const pkgSnapshot = pkgSnapshots[depPath];
    const pkgInfo = nameVerFromPkgSnapshot(depPath, pkgSnapshot);
    const pkgRoots = opts2.nodeLinker === "hoisted" ? (ctx.modulesFile?.hoistedLocations?.[depPath] ?? []).map((hoistedLocation) => path89.join(opts2.lockfileDir, hoistedLocation)) : [path89.join(ctx.virtualStoreDir, depPathToFilename(depPath, opts2.virtualStoreDirMaxLength), "node_modules", pkgInfo.name)];
    if (pkgRoots.length === 0) {
      if (pkgSnapshot.optional)
        return;
      throw new PnpmError("MISSING_HOISTED_LOCATIONS", `${depPath} is not found in hoistedLocations inside node_modules/.modules.yaml`, {
        hint: 'If you installed your node_modules with pnpm older than v7.19.0, you may need to remove it and run "pnpm install"'
      });
    }
    const pkgRoot = pkgRoots[0];
    try {
      const extraBinPaths = ctx.extraBinPaths;
      if (opts2.nodeLinker !== "hoisted") {
        const modules = path89.join(ctx.virtualStoreDir, depPathToFilename(depPath, opts2.virtualStoreDirMaxLength), "node_modules");
        const binPath = path89.join(pkgRoot, "node_modules", ".bin");
        await linkBins(modules, binPath, { extraNodePaths: ctx.extraNodePaths, warn });
      } else {
        extraBinPaths.push(...binDirsInAllParentDirs(pkgRoot, opts2.lockfileDir));
      }
      const resolution = pkgSnapshot.resolution;
      let sideEffectsCacheKey;
      const pkgId = pkgInfo.nonSemverVersion ?? `${pkgInfo.name}@${pkgInfo.version}`;
      if (opts2.skipIfHasSideEffectsCache && (resolution.gitHosted || resolution.integrity)) {
        const filesIndexFile = pickStoreIndexKey(resolution, pkgId, { built: true });
        const pkgFilesIndex = storeIndex.get(filesIndexFile);
        if (pkgFilesIndex) {
          sideEffectsCacheKey = calcDepState(depGraph, depsStateCache, depPath, {
            includeDepGraphHash: true,
            supportedArchitectures: opts2.supportedArchitectures,
            nodeVersion
          });
          if (pkgFilesIndex.sideEffects?.has(sideEffectsCacheKey)) {
            pkgsThatWereRebuilt.add(depPath);
            return;
          }
        }
      }
      let requiresBuild = true;
      const pgkManifest = await safeReadPackageJsonFromDir(pkgRoot);
      if (pgkManifest != null) {
        requiresBuild = pkgRequiresBuild(pgkManifest, /* @__PURE__ */ new Map());
      }
      const hasSideEffects = requiresBuild && allowBuild(pkgInfo.name, pkgInfo.version, depPath) && await runPostinstallHooks({
        depPath,
        extraBinPaths,
        extraEnv: opts2.extraEnv,
        optional: pkgSnapshot.optional === true,
        pkgRoot,
        rootModulesDir: ctx.rootModulesDir,
        scriptsPrependNodePath: opts2.scriptsPrependNodePath,
        shellEmulator: opts2.shellEmulator,
        unsafePerm: opts2.unsafePerm || false,
        userAgent: opts2.userAgent
      });
      if (hasSideEffects && (opts2.sideEffectsCacheWrite ?? true) && (resolution.gitHosted || resolution.integrity)) {
        builtDepPaths.add(depPath);
        const filesIndexFile = pickStoreIndexKey(resolution, pkgId, { built: true });
        try {
          if (!sideEffectsCacheKey) {
            sideEffectsCacheKey = calcDepState(depGraph, depsStateCache, depPath, {
              includeDepGraphHash: true,
              nodeVersion
            });
          }
          await opts2.storeController.upload(pkgRoot, {
            sideEffectsCacheKey,
            filesIndexFile
          });
        } catch (err) {
          assert7(util29.types.isNativeError(err));
          import_logger53.logger.warn({
            error: err,
            message: `An error occurred while uploading ${pkgRoot}`,
            prefix: opts2.lockfileDir
          });
        }
      }
      pkgsThatWereRebuilt.add(depPath);
    } catch (err) {
      assert7(util29.types.isNativeError(err));
      if (pkgSnapshot.optional) {
        skippedOptionalDependencyLogger.debug({
          details: err.toString(),
          package: {
            id: pkgSnapshot.id ?? depPath,
            name: pkgInfo.name,
            version: pkgInfo.version
          },
          prefix: opts2.dir,
          reason: "build_failure"
        });
        return;
      }
      throw err;
    }
    if (pkgRoots.length > 1) {
      await hardLinkDir(pkgRoot, pkgRoots.slice(1));
    }
  }));
  await runGroups(opts2.childConcurrency || 5, groups);
  storeIndex?.close();
  if (builtDepPaths.size > 0) {
    await Promise.all(Object.keys(pkgSnapshots).filter((depPath) => !packageIsIndependent(pkgSnapshots[depPath])).map(async (depPath) => limitLinking(async () => {
      const pkgSnapshot = pkgSnapshots[depPath];
      const pkgInfo = nameVerFromPkgSnapshot(depPath, pkgSnapshot);
      const modules = path89.join(ctx.virtualStoreDir, depPathToFilename(depPath, opts2.virtualStoreDirMaxLength), "node_modules");
      const binPath = path89.join(modules, pkgInfo.name, "node_modules", ".bin");
      return linkBins(modules, binPath, { warn });
    })));
    await Promise.all(Object.values(ctx.projects).map(async ({ rootDir }) => limitLinking(async () => {
      const modules = path89.join(rootDir, "node_modules");
      const binPath = path89.join(modules, ".bin");
      return linkBins(modules, binPath, {
        allowExoticManifests: true,
        warn
      });
    })));
  }
  return { pkgsThatWereRebuilt, ignoredPkgs };
}
function binDirsInAllParentDirs(pkgRoot, lockfileDir) {
  const binDirs = [];
  let dir = pkgRoot;
  do {
    if (!(path89.dirname(dir)[0] === "@")) {
      binDirs.push(path89.join(dir, "node_modules/.bin"));
    }
    dir = path89.dirname(dir);
  } while (path89.relative(dir, lockfileDir) !== "");
  binDirs.push(path89.join(lockfileDir, "node_modules/.bin"));
  return binDirs;
}
function mergeIgnoredBuilds(existing, newIgnored, rebuiltPkgs) {
  if (!existing?.size && !newIgnored.size)
    return void 0;
  const rebuiltSet = new Set(rebuiltPkgs);
  const merged = /* @__PURE__ */ new Set();
  if (existing) {
    for (const depPath of existing) {
      if (!rebuiltSet.has(depPath)) {
        merged.add(depPath);
      }
    }
  }
  for (const depPath of newIgnored) {
    merged.add(depPath);
  }
  return merged.size ? merged : void 0;
}
var import_logger53, import_npm_package_arg2, import_semver23, limitLinking;
var init_lib91 = __esm({
  "../building/after-install/lib/index.js"() {
    "use strict";
    init_lib42();
    init_lib36();
    init_lib66();
    init_lib();
    init_lib6();
    init_lib72();
    init_lib73();
    init_lib65();
    init_lib2();
    init_lib44();
    init_lib87();
    init_lib75();
    init_lib70();
    init_lib88();
    import_logger53 = __toESM(require_lib21(), 1);
    import_npm_package_arg2 = __toESM(require_npa(), 1);
    init_lib39();
    init_lib90();
    init_lib16();
    init_lib4();
    init_p_limit();
    init_lib43();
    import_semver23 = __toESM(require_semver2(), 1);
    init_extendBuildOptions();
    limitLinking = pLimit(16);
  }
});

// ../cli/common-cli-options-help/lib/index.js
var OPTIONS, UNIVERSAL_OPTIONS, FILTERING, OUTPUT_OPTIONS;
var init_lib92 = __esm({
  "../cli/common-cli-options-help/lib/index.js"() {
    "use strict";
    OPTIONS = {
      globalDir: {
        description: "Specify a custom directory to store global packages",
        name: "--global-dir"
      },
      ignoreScripts: {
        description: "Don't run lifecycle scripts",
        name: "--ignore-scripts"
      },
      offline: {
        description: "Trigger an error if any required dependencies are not available in local store",
        name: "--offline"
      },
      preferOffline: {
        description: "Skip staleness checks for cached data, but request missing data from the server",
        name: "--prefer-offline"
      },
      storeDir: {
        description: "The directory in which all the packages are saved on the disk",
        name: "--store-dir <dir>"
      },
      virtualStoreDir: {
        description: "The directory with links to the store (default is node_modules/.pnpm). All direct and indirect dependencies of the project are linked into this directory",
        name: "--virtual-store-dir <dir>"
      }
    };
    UNIVERSAL_OPTIONS = [
      {
        description: "Controls colors in the output. By default, output is always colored when it goes directly to a terminal",
        name: "--[no-]color"
      },
      {
        description: "Output usage information",
        name: "--help",
        shortAlias: "-h"
      },
      {
        description: "Automatically answer yes to prompts and run non-interactively. Will abort if an undesirable situation occurs and user input is strictly necessary.",
        name: "--yes",
        shortAlias: "-y"
      },
      {
        description: `Change to directory <dir> (default: ${process.cwd()})`,
        name: "--dir <dir>",
        shortAlias: "-C"
      },
      {
        description: "Run the command on the root workspace project",
        name: "--workspace-root",
        shortAlias: "-w"
      },
      {
        description: 'What level of logs to report. Any logs at or higher than the given level will be shown. Levels (lowest to highest): debug, info, warn, error. Or use "--silent" to turn off all logging.',
        name: "--loglevel <level>"
      },
      {
        description: "Stream output from child processes immediately, prefixed with the originating package directory. This allows output from different packages to be interleaved.",
        name: "--stream"
      },
      {
        description: "Aggregate output from child processes that are run in parallel, and only print output when child process is finished. It makes reading large logs after running `pnpm recursive` with `--parallel` or with `--workspace-concurrency` much easier (especially on CI). Only `--reporter=append-only` is supported.",
        name: "--aggregate-output"
      },
      {
        description: "Divert all output to stderr",
        name: "--use-stderr"
      }
    ];
    FILTERING = {
      list: [
        {
          description: 'Restricts the scope to package names matching the given pattern. E.g.: foo, "@bar/*"',
          name: "--filter <pattern>",
          shortAlias: "-F"
        },
        {
          description: "Includes all direct and indirect dependencies of the matched packages. E.g.: foo...",
          name: "--filter <pattern>..."
        },
        {
          description: "Includes only the direct and indirect dependencies of the matched packages without including the matched packages themselves. ^ must be doubled at the Windows Command Prompt. E.g.: foo^... (foo^^... in Command Prompt)",
          name: "--filter <pattern>^..."
        },
        {
          description: 'Includes all direct and indirect dependents of the matched packages. E.g.: ...foo, "...@bar/*"',
          name: "--filter ...<pattern>"
        },
        {
          description: "Includes only the direct and indirect dependents of the matched packages without including the matched packages themselves. ^ must be doubled at the Windows Command Prompt. E.g.: ...^foo (...^^foo in Command Prompt)",
          name: "--filter ...^<pattern>"
        },
        {
          description: "Includes all packages that are inside a given subdirectory. E.g.: ./components",
          name: "--filter ./<dir>"
        },
        {
          description: "Includes all packages that are under the current working directory",
          name: "--filter ."
        },
        {
          description: 'Includes all projects that are under the specified directory. It may be used with "..." to select dependents/dependencies as well. It also may be combined with "[<since>]". For instance, all changed projects inside a directory: "{packages}[origin/master]"',
          name: "--filter {<dir>}"
        },
        {
          description: 'Includes all packages changed since the specified commit/branch. E.g.: "[master]", "[HEAD~2]". It may be used together with "...". So, for instance, "...[HEAD~1]" selects all packages changed in the last commit and their dependents',
          name: '--filter "[<since>]"'
        },
        {
          description: 'If a selector starts with ! (or \\! in zsh), it means the packages matching the selector must be excluded. E.g., "pnpm --filter !foo" selects all packages except "foo"',
          name: "--filter !<selector>"
        },
        {
          description: 'Defines files related to tests. Useful with the changed since filter. When selecting only changed packages and their dependent packages, the dependent packages will be ignored in case a package has changes only in tests. Usage example: pnpm --filter="...[origin/master]" --test-pattern="test/*" test',
          name: "--test-pattern <pattern>"
        },
        {
          description: 'Defines files to ignore when filtering for changed projects since the specified commit/branch. Usage example: pnpm --filter="...[origin/master]" --changed-files-ignore-pattern="**/README.md" build',
          name: "--changed-files-ignore-pattern <pattern>"
        },
        {
          description: "Restricts the scope to package names matching the given pattern similar to --filter, but it ignores devDependencies when searching for dependencies and dependents.",
          name: "--filter-prod <pattern>"
        },
        {
          description: "If no projects are matched by the command, exit with exit code 1 (fail)",
          name: "--fail-if-no-match"
        }
      ],
      title: "Filtering options (run the command only on packages that satisfy at least one of the selectors)"
    };
    OUTPUT_OPTIONS = {
      title: "Output",
      list: [
        {
          description: "No output is logged to the console, not even fatal errors",
          name: "--silent, --reporter silent",
          shortAlias: "-s"
        },
        {
          description: "The default reporter when the stdout is TTY",
          name: "--reporter default"
        },
        {
          description: "The output is always appended to the end. No cursor manipulations are performed",
          name: "--reporter append-only"
        },
        {
          description: "The most verbose reporter. Prints all logs in ndjson format",
          name: "--reporter ndjson"
        }
      ]
    };
  }
});

// ../workspace/projects-sorter/lib/index.js
function sequenceGraph(projectsGraph) {
  const keys4 = Object.keys(projectsGraph);
  const setOfKeys = new Set(keys4);
  const graph = new Map(keys4.map((projectPath) => [
    projectPath,
    projectsGraph[projectPath].dependencies.filter((d) => d !== projectPath && setOfKeys.has(d))
  ]));
  return graphSequencer(graph, keys4);
}
function sortProjects(projectsGraph) {
  const graphSequencerResult = sequenceGraph(projectsGraph);
  return graphSequencerResult.chunks;
}
var init_lib93 = __esm({
  "../workspace/projects-sorter/lib/index.js"() {
    "use strict";
    init_lib73();
  }
});

// ../building/commands/lib/build/recursive.js
import assert8 from "node:assert";
import util30 from "node:util";
async function recursiveRebuild(allProjects, params, opts2) {
  if (allProjects.length === 0) {
    return;
  }
  const pkgs = Object.values(opts2.selectedProjectsGraph).map((wsPkg) => wsPkg.package);
  if (pkgs.length === 0) {
    return;
  }
  const manifestsByPath = {};
  for (const { rootDir, manifest, writeProjectManifest: writeProjectManifest2 } of pkgs) {
    manifestsByPath[rootDir] = { manifest, writeProjectManifest: writeProjectManifest2 };
  }
  const throwOnFail = throwOnCommandFail.bind(null, "pnpm recursive rebuild");
  const chunks = opts2.sort !== false ? sortProjects(opts2.selectedProjectsGraph) : [Object.keys(opts2.selectedProjectsGraph).sort()];
  const store = await createStoreController(opts2);
  const rebuildOpts = Object.assign(opts2, {
    ownLifecycleHooksStdio: "pipe",
    pruneLockfileImporters: (opts2.ignoredPackages == null || opts2.ignoredPackages.size === 0) && pkgs.length === allProjects.length,
    storeController: store.ctrl,
    storeDir: store.dir
  });
  const result2 = {};
  const projectConfigRecord = createProjectConfigRecord(opts2) ?? {};
  async function getImporters2() {
    const importers = [];
    await Promise.all(chunks.map(async (prefixes, buildIndex) => {
      if (opts2.ignoredPackages != null) {
        prefixes = prefixes.filter((prefix) => !opts2.ignoredPackages.has(prefix));
      }
      return Promise.all(prefixes.map(async (prefix) => {
        importers.push({
          buildIndex,
          manifest: manifestsByPath[prefix].manifest,
          rootDir: prefix
        });
      }));
    }));
    return importers;
  }
  const rebuild = params.length === 0 ? buildProjects : (importers, opts3) => buildSelectedPkgs(importers, params, opts3);
  if (opts2.lockfileDir) {
    const importers = await getImporters2();
    await rebuild(importers, {
      ...rebuildOpts,
      pending: opts2.pending === true
    });
    return;
  }
  const limitRebuild = pLimit(getWorkspaceConcurrency(opts2.workspaceConcurrency));
  for (const chunk of chunks) {
    await Promise.all(chunk.map(async (rootDir) => limitRebuild(async () => {
      try {
        if (opts2.ignoredPackages?.has(rootDir)) {
          return;
        }
        result2[rootDir] = { status: "running" };
        const { manifest } = opts2.selectedProjectsGraph[rootDir].package;
        const localConfig = manifest.name ? projectConfigRecord[manifest.name] : void 0;
        await rebuild([
          {
            buildIndex: 0,
            manifest: manifestsByPath[rootDir].manifest,
            rootDir
          }
        ], {
          ...rebuildOpts,
          ...localConfig,
          dir: rootDir,
          pending: opts2.pending === true
        });
        result2[rootDir].status = "passed";
      } catch (err) {
        assert8(util30.types.isNativeError(err));
        const errWithPrefix = Object.assign(err, {
          prefix: rootDir
        });
        logger.info(errWithPrefix);
        if (!opts2.bail) {
          result2[rootDir] = {
            status: "failure",
            error: errWithPrefix,
            message: err.message,
            prefix: rootDir
          };
          return;
        }
        throw err;
      }
    })));
  }
  throwOnFail(result2);
}
var init_recursive = __esm({
  "../building/commands/lib/build/recursive.js"() {
    "use strict";
    init_lib91();
    init_lib29();
    init_lib61();
    init_lib3();
    init_lib90();
    init_lib93();
    init_p_limit();
  }
});

// ../building/commands/lib/build/rebuild.js
var rebuild_exports = {};
__export(rebuild_exports, {
  cliOptionsTypes: () => cliOptionsTypes3,
  commandNames: () => commandNames3,
  handler: () => handler3,
  help: () => help3,
  overridableByScript: () => overridableByScript,
  rcOptionsTypes: () => rcOptionsTypes3
});
function rcOptionsTypes3() {
  return {
    ...pick_default([
      "npm-path",
      "reporter",
      "scripts-prepend-node-path",
      "unsafe-perm",
      "store-dir"
    ], types2)
  };
}
function cliOptionsTypes3() {
  return {
    ...rcOptionsTypes3(),
    pending: Boolean,
    recursive: Boolean
  };
}
function help3() {
  return renderHelp({
    aliases: ["rb"],
    description: "Rebuild a package.",
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: 'Rebuild every package found in subdirectories or every workspace package, when executed inside a workspace. For options that may be used with `-r`, see "pnpm help recursive"',
            name: "--recursive",
            shortAlias: "-r"
          },
          {
            description: "Rebuild packages that were not built during installation. Packages are not built when installing with the --ignore-scripts flag",
            name: "--pending"
          },
          {
            description: "The directory in which all the packages are saved on the disk",
            name: "--store-dir <dir>"
          },
          ...UNIVERSAL_OPTIONS
        ]
      },
      FILTERING
    ],
    url: docsUrl("rebuild"),
    usages: ["pnpm rebuild [<pkg> ...]"]
  });
}
async function handler3(opts2, params) {
  if (opts2.recursive && opts2.allProjects != null && opts2.selectedProjectsGraph != null && opts2.workspaceDir) {
    await recursiveRebuild(opts2.allProjects, params, { ...opts2, selectedProjectsGraph: opts2.selectedProjectsGraph, workspaceDir: opts2.workspaceDir });
    return;
  }
  const store = await createStoreController(opts2);
  const rebuildOpts = Object.assign(opts2, {
    sideEffectsCacheRead: opts2.sideEffectsCache ?? opts2.sideEffectsCacheReadonly,
    sideEffectsCacheWrite: opts2.sideEffectsCache,
    storeController: store.ctrl,
    storeDir: store.dir
  });
  if (params.length === 0) {
    await buildProjects([
      {
        buildIndex: 0,
        manifest: await readProjectManifestOnly2(rebuildOpts.dir, opts2),
        rootDir: rebuildOpts.dir
      }
    ], rebuildOpts);
    return;
  }
  await buildSelectedPkgs([
    {
      buildIndex: 0,
      manifest: await readProjectManifestOnly2(rebuildOpts.dir, opts2),
      rootDir: rebuildOpts.dir
    }
  ], params, rebuildOpts);
}
var commandNames3, overridableByScript;
var init_rebuild = __esm({
  "../building/commands/lib/build/rebuild.js"() {
    "use strict";
    init_lib91();
    init_lib92();
    init_lib29();
    init_lib61();
    init_lib90();
    init_es();
    init_lib63();
    init_recursive();
    commandNames3 = ["rebuild", "rb"];
    overridableByScript = true;
  }
});

// ../building/commands/lib/build/index.js
var init_build = __esm({
  "../building/commands/lib/build/index.js"() {
    "use strict";
    init_rebuild();
    init_rebuild();
  }
});

// ../catalogs/resolver/lib/matchCatalogResolveResult.js
function matchCatalogResolveResult(result2, matcher) {
  switch (result2.type) {
    case "found":
      return matcher.found(result2);
    case "misconfiguration":
      return matcher.misconfiguration(result2);
    case "unused":
      return matcher.unused(result2);
  }
}
var init_matchCatalogResolveResult = __esm({
  "../catalogs/resolver/lib/matchCatalogResolveResult.js"() {
    "use strict";
  }
});

// ../catalogs/protocol-parser/lib/parseCatalogProtocol.js
function parseCatalogProtocol(bareSpecifier) {
  if (!bareSpecifier.startsWith(CATALOG_PROTOCOL)) {
    return null;
  }
  const catalogNameRaw = bareSpecifier.slice(CATALOG_PROTOCOL.length).trim();
  const catalogNameNormalized = catalogNameRaw === "" ? "default" : catalogNameRaw;
  return catalogNameNormalized;
}
var CATALOG_PROTOCOL;
var init_parseCatalogProtocol = __esm({
  "../catalogs/protocol-parser/lib/parseCatalogProtocol.js"() {
    "use strict";
    CATALOG_PROTOCOL = "catalog:";
  }
});

// ../catalogs/protocol-parser/lib/index.js
var init_lib94 = __esm({
  "../catalogs/protocol-parser/lib/index.js"() {
    "use strict";
    init_parseCatalogProtocol();
  }
});

// ../catalogs/resolver/lib/resolveFromCatalog.js
function resolveFromCatalog(catalogs, wantedDependency) {
  const catalogName = parseCatalogProtocol(wantedDependency.bareSpecifier);
  if (catalogName == null) {
    return { type: "unused" };
  }
  const catalogLookup = catalogs[catalogName]?.[wantedDependency.alias];
  if (catalogLookup == null) {
    return {
      type: "misconfiguration",
      catalogName,
      error: new PnpmError("CATALOG_ENTRY_NOT_FOUND_FOR_SPEC", `No catalog entry '${wantedDependency.alias}' was found for catalog '${catalogName}'.`)
    };
  }
  if (parseCatalogProtocol(catalogLookup) != null) {
    return {
      type: "misconfiguration",
      catalogName,
      error: new PnpmError("CATALOG_ENTRY_INVALID_RECURSIVE_DEFINITION", `Found invalid catalog entry using the catalog protocol recursively. The entry for '${wantedDependency.alias}' in catalog '${catalogName}' is invalid.`)
    };
  }
  const protocolOfLookup = catalogLookup.split(":")[0];
  if (protocolOfLookup === "workspace") {
    return {
      type: "misconfiguration",
      catalogName,
      error: new PnpmError("CATALOG_ENTRY_INVALID_WORKSPACE_SPEC", `The workspace protocol cannot be used as a catalog value. The entry for '${wantedDependency.alias}' in catalog '${catalogName}' is invalid.`)
    };
  }
  if (["link", "file"].includes(protocolOfLookup)) {
    return {
      type: "misconfiguration",
      catalogName,
      error: new PnpmError("CATALOG_ENTRY_INVALID_SPEC", `The entry for '${wantedDependency.alias}' in catalog '${catalogName}' declares a dependency using the '${protocolOfLookup}' protocol. This is not yet supported, but may be in a future version of pnpm.`)
    };
  }
  return {
    type: "found",
    resolution: {
      catalogName,
      specifier: catalogLookup
    }
  };
}
var init_resolveFromCatalog = __esm({
  "../catalogs/resolver/lib/resolveFromCatalog.js"() {
    "use strict";
    init_lib94();
    init_lib2();
  }
});

// ../catalogs/resolver/lib/index.js
var init_lib95 = __esm({
  "../catalogs/resolver/lib/index.js"() {
    "use strict";
    init_matchCatalogResolveResult();
    init_resolveFromCatalog();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/validate-npm-package-name/7.0.2/814dcb947be9900c7df1d25263921c519f02120f3fc85aa99a69894e271e5507/node_modules/validate-npm-package-name/lib/builtin-modules.json
var require_builtin_modules = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/validate-npm-package-name/7.0.2/814dcb947be9900c7df1d25263921c519f02120f3fc85aa99a69894e271e5507/node_modules/validate-npm-package-name/lib/builtin-modules.json"(exports2, module2) {
    module2.exports = ["_http_agent", "_http_client", "_http_common", "_http_incoming", "_http_outgoing", "_http_server", "_stream_duplex", "_stream_passthrough", "_stream_readable", "_stream_transform", "_stream_wrap", "_stream_writable", "_tls_common", "_tls_wrap", "assert", "assert/strict", "async_hooks", "buffer", "child_process", "cluster", "console", "constants", "crypto", "dgram", "diagnostics_channel", "dns", "dns/promises", "domain", "events", "fs", "fs/promises", "http", "http2", "https", "inspector", "inspector/promises", "module", "net", "os", "path", "path/posix", "path/win32", "perf_hooks", "process", "punycode", "querystring", "readline", "readline/promises", "repl", "stream", "stream/consumers", "stream/promises", "stream/web", "string_decoder", "sys", "timers", "timers/promises", "tls", "trace_events", "tty", "url", "util", "util/types", "v8", "vm", "wasi", "worker_threads", "zlib", "node:sea", "node:sqlite", "node:test", "node:test/reporters"];
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/validate-npm-package-name/7.0.2/814dcb947be9900c7df1d25263921c519f02120f3fc85aa99a69894e271e5507/node_modules/validate-npm-package-name/lib/index.js
var require_lib22 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/validate-npm-package-name/7.0.2/814dcb947be9900c7df1d25263921c519f02120f3fc85aa99a69894e271e5507/node_modules/validate-npm-package-name/lib/index.js"(exports2, module2) {
    "use strict";
    var builtins = require_builtin_modules();
    var scopedPackagePattern = new RegExp("^(?:@([^/]+?)[/])?([^/]+?)$");
    var exclusionList = [
      "node_modules",
      "favicon.ico"
    ];
    function validate2(name) {
      var warnings = [];
      var errors2 = [];
      if (name === null) {
        errors2.push("name cannot be null");
        return done(warnings, errors2);
      }
      if (name === void 0) {
        errors2.push("name cannot be undefined");
        return done(warnings, errors2);
      }
      if (typeof name !== "string") {
        errors2.push("name must be a string");
        return done(warnings, errors2);
      }
      if (!name.length) {
        errors2.push("name length must be greater than zero");
      }
      if (name.startsWith(".")) {
        errors2.push("name cannot start with a period");
      }
      if (name.startsWith("-")) {
        errors2.push("name cannot start with a hyphen");
      }
      if (name.match(/^_/)) {
        errors2.push("name cannot start with an underscore");
      }
      if (name.trim() !== name) {
        errors2.push("name cannot contain leading or trailing spaces");
      }
      exclusionList.forEach(function(excludedName) {
        if (name.toLowerCase() === excludedName) {
          errors2.push(excludedName + " is not a valid package name");
        }
      });
      if (builtins.includes(name.toLowerCase())) {
        warnings.push(name + " is a core module name");
      }
      if (name.length > 214) {
        warnings.push("name can no longer contain more than 214 characters");
      }
      if (name.toLowerCase() !== name) {
        warnings.push("name can no longer contain capital letters");
      }
      if (/[~'!()*]/.test(name.split("/").slice(-1)[0])) {
        warnings.push(`name can no longer contain special characters ("~'!()*")`);
      }
      if (encodeURIComponent(name) !== name) {
        var nameMatch = name.match(scopedPackagePattern);
        if (nameMatch) {
          var user = nameMatch[1];
          var pkg = nameMatch[2];
          if (pkg.startsWith(".")) {
            errors2.push("name cannot start with a period");
          }
          if (encodeURIComponent(user) === user && encodeURIComponent(pkg) === pkg) {
            return done(warnings, errors2);
          }
        }
        errors2.push("name can only contain URL-friendly characters");
      }
      return done(warnings, errors2);
    }
    var done = function(warnings, errors2) {
      var result2 = {
        validForNewPackages: errors2.length === 0 && warnings.length === 0,
        validForOldPackages: errors2.length === 0,
        warnings,
        errors: errors2
      };
      if (!result2.warnings.length) {
        delete result2.warnings;
      }
      if (!result2.errors.length) {
        delete result2.errors;
      }
      return result2;
    };
    module2.exports = validate2;
  }
});

// ../resolving/parse-wanted-dependency/lib/index.js
function parseWantedDependency(rawWantedDependency) {
  const versionDelimiter = rawWantedDependency.indexOf("@", 1);
  if (versionDelimiter !== -1) {
    const alias = rawWantedDependency.slice(0, versionDelimiter);
    if ((0, import_validate_npm_package_name.default)(alias).validForOldPackages) {
      return {
        alias,
        bareSpecifier: rawWantedDependency.slice(versionDelimiter + 1)
      };
    }
    return {
      bareSpecifier: rawWantedDependency
    };
  }
  if ((0, import_validate_npm_package_name.default)(rawWantedDependency).validForOldPackages) {
    return {
      alias: rawWantedDependency
    };
  }
  return {
    bareSpecifier: rawWantedDependency
  };
}
var import_validate_npm_package_name;
var init_lib96 = __esm({
  "../resolving/parse-wanted-dependency/lib/index.js"() {
    "use strict";
    import_validate_npm_package_name = __toESM(require_lib22(), 1);
  }
});

// ../config/parse-overrides/lib/index.js
function parseOverrides(overrides, catalogs) {
  const _resolveFromCatalog = resolveFromCatalog.bind(null, catalogs ?? {});
  return Object.entries(overrides).map(([selector, newBareSpecifier]) => {
    const result2 = parsePkgAndParentSelector(selector);
    const resolvedCatalog = matchCatalogResolveResult(_resolveFromCatalog({
      bareSpecifier: newBareSpecifier,
      alias: result2.targetPkg.name
    }), {
      found: ({ resolution }) => resolution.specifier,
      unused: () => void 0,
      misconfiguration: ({ error }) => {
        throw new PnpmError("CATALOG_IN_OVERRIDES", `Could not resolve a catalog in the overrides: ${error.message}`);
      }
    });
    return {
      selector,
      newBareSpecifier: resolvedCatalog ?? newBareSpecifier,
      ...result2
    };
  });
}
function parsePkgAndParentSelector(selector) {
  let delimiterIndex = selector.search(DELIMITER_REGEX);
  if (delimiterIndex !== -1) {
    delimiterIndex++;
    const parentSelector = selector.substring(0, delimiterIndex);
    const childSelector = selector.substring(delimiterIndex + 1);
    return {
      parentPkg: parsePkgSelector(parentSelector),
      targetPkg: parsePkgSelector(childSelector)
    };
  }
  return {
    targetPkg: parsePkgSelector(selector)
  };
}
function parsePkgSelector(selector) {
  const wantedDep = parseWantedDependency(selector);
  if (!wantedDep.alias) {
    throw new PnpmError("INVALID_SELECTOR", `Cannot parse the "${selector}" selector`);
  }
  return {
    name: wantedDep.alias,
    bareSpecifier: wantedDep.bareSpecifier
  };
}
var DELIMITER_REGEX;
var init_lib97 = __esm({
  "../config/parse-overrides/lib/index.js"() {
    "use strict";
    init_lib95();
    init_lib2();
    init_lib96();
    DELIMITER_REGEX = /[^ |@]>/;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/nodes/identity.js
var require_identity = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/nodes/identity.js"(exports2) {
    "use strict";
    var ALIAS = /* @__PURE__ */ Symbol.for("yaml.alias");
    var DOC = /* @__PURE__ */ Symbol.for("yaml.document");
    var MAP = /* @__PURE__ */ Symbol.for("yaml.map");
    var PAIR = /* @__PURE__ */ Symbol.for("yaml.pair");
    var SCALAR = /* @__PURE__ */ Symbol.for("yaml.scalar");
    var SEQ = /* @__PURE__ */ Symbol.for("yaml.seq");
    var NODE_TYPE = /* @__PURE__ */ Symbol.for("yaml.node.type");
    var isAlias = (node) => !!node && typeof node === "object" && node[NODE_TYPE] === ALIAS;
    var isDocument = (node) => !!node && typeof node === "object" && node[NODE_TYPE] === DOC;
    var isMap = (node) => !!node && typeof node === "object" && node[NODE_TYPE] === MAP;
    var isPair = (node) => !!node && typeof node === "object" && node[NODE_TYPE] === PAIR;
    var isScalar = (node) => !!node && typeof node === "object" && node[NODE_TYPE] === SCALAR;
    var isSeq = (node) => !!node && typeof node === "object" && node[NODE_TYPE] === SEQ;
    function isCollection(node) {
      if (node && typeof node === "object")
        switch (node[NODE_TYPE]) {
          case MAP:
          case SEQ:
            return true;
        }
      return false;
    }
    function isNode2(node) {
      if (node && typeof node === "object")
        switch (node[NODE_TYPE]) {
          case ALIAS:
          case MAP:
          case SCALAR:
          case SEQ:
            return true;
        }
      return false;
    }
    var hasAnchor = (node) => (isScalar(node) || isCollection(node)) && !!node.anchor;
    exports2.ALIAS = ALIAS;
    exports2.DOC = DOC;
    exports2.MAP = MAP;
    exports2.NODE_TYPE = NODE_TYPE;
    exports2.PAIR = PAIR;
    exports2.SCALAR = SCALAR;
    exports2.SEQ = SEQ;
    exports2.hasAnchor = hasAnchor;
    exports2.isAlias = isAlias;
    exports2.isCollection = isCollection;
    exports2.isDocument = isDocument;
    exports2.isMap = isMap;
    exports2.isNode = isNode2;
    exports2.isPair = isPair;
    exports2.isScalar = isScalar;
    exports2.isSeq = isSeq;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/visit.js
var require_visit = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/visit.js"(exports2) {
    "use strict";
    var identity5 = require_identity();
    var BREAK = /* @__PURE__ */ Symbol("break visit");
    var SKIP = /* @__PURE__ */ Symbol("skip children");
    var REMOVE = /* @__PURE__ */ Symbol("remove node");
    function visit(node, visitor) {
      const visitor_ = initVisitor(visitor);
      if (identity5.isDocument(node)) {
        const cd = visit_(null, node.contents, visitor_, Object.freeze([node]));
        if (cd === REMOVE)
          node.contents = null;
      } else
        visit_(null, node, visitor_, Object.freeze([]));
    }
    visit.BREAK = BREAK;
    visit.SKIP = SKIP;
    visit.REMOVE = REMOVE;
    function visit_(key, node, visitor, path218) {
      const ctrl = callVisitor(key, node, visitor, path218);
      if (identity5.isNode(ctrl) || identity5.isPair(ctrl)) {
        replaceNode(key, path218, ctrl);
        return visit_(key, ctrl, visitor, path218);
      }
      if (typeof ctrl !== "symbol") {
        if (identity5.isCollection(node)) {
          path218 = Object.freeze(path218.concat(node));
          for (let i2 = 0; i2 < node.items.length; ++i2) {
            const ci = visit_(i2, node.items[i2], visitor, path218);
            if (typeof ci === "number")
              i2 = ci - 1;
            else if (ci === BREAK)
              return BREAK;
            else if (ci === REMOVE) {
              node.items.splice(i2, 1);
              i2 -= 1;
            }
          }
        } else if (identity5.isPair(node)) {
          path218 = Object.freeze(path218.concat(node));
          const ck = visit_("key", node.key, visitor, path218);
          if (ck === BREAK)
            return BREAK;
          else if (ck === REMOVE)
            node.key = null;
          const cv = visit_("value", node.value, visitor, path218);
          if (cv === BREAK)
            return BREAK;
          else if (cv === REMOVE)
            node.value = null;
        }
      }
      return ctrl;
    }
    async function visitAsync(node, visitor) {
      const visitor_ = initVisitor(visitor);
      if (identity5.isDocument(node)) {
        const cd = await visitAsync_(null, node.contents, visitor_, Object.freeze([node]));
        if (cd === REMOVE)
          node.contents = null;
      } else
        await visitAsync_(null, node, visitor_, Object.freeze([]));
    }
    visitAsync.BREAK = BREAK;
    visitAsync.SKIP = SKIP;
    visitAsync.REMOVE = REMOVE;
    async function visitAsync_(key, node, visitor, path218) {
      const ctrl = await callVisitor(key, node, visitor, path218);
      if (identity5.isNode(ctrl) || identity5.isPair(ctrl)) {
        replaceNode(key, path218, ctrl);
        return visitAsync_(key, ctrl, visitor, path218);
      }
      if (typeof ctrl !== "symbol") {
        if (identity5.isCollection(node)) {
          path218 = Object.freeze(path218.concat(node));
          for (let i2 = 0; i2 < node.items.length; ++i2) {
            const ci = await visitAsync_(i2, node.items[i2], visitor, path218);
            if (typeof ci === "number")
              i2 = ci - 1;
            else if (ci === BREAK)
              return BREAK;
            else if (ci === REMOVE) {
              node.items.splice(i2, 1);
              i2 -= 1;
            }
          }
        } else if (identity5.isPair(node)) {
          path218 = Object.freeze(path218.concat(node));
          const ck = await visitAsync_("key", node.key, visitor, path218);
          if (ck === BREAK)
            return BREAK;
          else if (ck === REMOVE)
            node.key = null;
          const cv = await visitAsync_("value", node.value, visitor, path218);
          if (cv === BREAK)
            return BREAK;
          else if (cv === REMOVE)
            node.value = null;
        }
      }
      return ctrl;
    }
    function initVisitor(visitor) {
      if (typeof visitor === "object" && (visitor.Collection || visitor.Node || visitor.Value)) {
        return Object.assign({
          Alias: visitor.Node,
          Map: visitor.Node,
          Scalar: visitor.Node,
          Seq: visitor.Node
        }, visitor.Value && {
          Map: visitor.Value,
          Scalar: visitor.Value,
          Seq: visitor.Value
        }, visitor.Collection && {
          Map: visitor.Collection,
          Seq: visitor.Collection
        }, visitor);
      }
      return visitor;
    }
    function callVisitor(key, node, visitor, path218) {
      if (typeof visitor === "function")
        return visitor(key, node, path218);
      if (identity5.isMap(node))
        return visitor.Map?.(key, node, path218);
      if (identity5.isSeq(node))
        return visitor.Seq?.(key, node, path218);
      if (identity5.isPair(node))
        return visitor.Pair?.(key, node, path218);
      if (identity5.isScalar(node))
        return visitor.Scalar?.(key, node, path218);
      if (identity5.isAlias(node))
        return visitor.Alias?.(key, node, path218);
      return void 0;
    }
    function replaceNode(key, path218, node) {
      const parent = path218[path218.length - 1];
      if (identity5.isCollection(parent)) {
        parent.items[key] = node;
      } else if (identity5.isPair(parent)) {
        if (key === "key")
          parent.key = node;
        else
          parent.value = node;
      } else if (identity5.isDocument(parent)) {
        parent.contents = node;
      } else {
        const pt = identity5.isAlias(parent) ? "alias" : "scalar";
        throw new Error(`Cannot replace node with ${pt} parent`);
      }
    }
    exports2.visit = visit;
    exports2.visitAsync = visitAsync;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/doc/directives.js
var require_directives = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/doc/directives.js"(exports2) {
    "use strict";
    var identity5 = require_identity();
    var visit = require_visit();
    var escapeChars = {
      "!": "%21",
      ",": "%2C",
      "[": "%5B",
      "]": "%5D",
      "{": "%7B",
      "}": "%7D"
    };
    var escapeTagName = (tn) => tn.replace(/[!,[\]{}]/g, (ch) => escapeChars[ch]);
    var Directives = class _Directives {
      constructor(yaml3, tags) {
        this.docStart = null;
        this.docEnd = false;
        this.yaml = Object.assign({}, _Directives.defaultYaml, yaml3);
        this.tags = Object.assign({}, _Directives.defaultTags, tags);
      }
      clone() {
        const copy2 = new _Directives(this.yaml, this.tags);
        copy2.docStart = this.docStart;
        return copy2;
      }
      /**
       * During parsing, get a Directives instance for the current document and
       * update the stream state according to the current version's spec.
       */
      atDocument() {
        const res = new _Directives(this.yaml, this.tags);
        switch (this.yaml.version) {
          case "1.1":
            this.atNextDocument = true;
            break;
          case "1.2":
            this.atNextDocument = false;
            this.yaml = {
              explicit: _Directives.defaultYaml.explicit,
              version: "1.2"
            };
            this.tags = Object.assign({}, _Directives.defaultTags);
            break;
        }
        return res;
      }
      /**
       * @param onError - May be called even if the action was successful
       * @returns `true` on success
       */
      add(line, onError) {
        if (this.atNextDocument) {
          this.yaml = { explicit: _Directives.defaultYaml.explicit, version: "1.1" };
          this.tags = Object.assign({}, _Directives.defaultTags);
          this.atNextDocument = false;
        }
        const parts = line.trim().split(/[ \t]+/);
        const name = parts.shift();
        switch (name) {
          case "%TAG": {
            if (parts.length !== 2) {
              onError(0, "%TAG directive should contain exactly two parts");
              if (parts.length < 2)
                return false;
            }
            const [handle, prefix] = parts;
            this.tags[handle] = prefix;
            return true;
          }
          case "%YAML": {
            this.yaml.explicit = true;
            if (parts.length !== 1) {
              onError(0, "%YAML directive should contain exactly one part");
              return false;
            }
            const [version2] = parts;
            if (version2 === "1.1" || version2 === "1.2") {
              this.yaml.version = version2;
              return true;
            } else {
              const isValid = /^\d+\.\d+$/.test(version2);
              onError(6, `Unsupported YAML version ${version2}`, isValid);
              return false;
            }
          }
          default:
            onError(0, `Unknown directive ${name}`, true);
            return false;
        }
      }
      /**
       * Resolves a tag, matching handles to those defined in %TAG directives.
       *
       * @returns Resolved tag, which may also be the non-specific tag `'!'` or a
       *   `'!local'` tag, or `null` if unresolvable.
       */
      tagName(source, onError) {
        if (source === "!")
          return "!";
        if (source[0] !== "!") {
          onError(`Not a valid tag: ${source}`);
          return null;
        }
        if (source[1] === "<") {
          const verbatim = source.slice(2, -1);
          if (verbatim === "!" || verbatim === "!!") {
            onError(`Verbatim tags aren't resolved, so ${source} is invalid.`);
            return null;
          }
          if (source[source.length - 1] !== ">")
            onError("Verbatim tags must end with a >");
          return verbatim;
        }
        const [, handle, suffix] = source.match(/^(.*!)([^!]*)$/s);
        if (!suffix)
          onError(`The ${source} tag has no suffix`);
        const prefix = this.tags[handle];
        if (prefix) {
          try {
            return prefix + decodeURIComponent(suffix);
          } catch (error) {
            onError(String(error));
            return null;
          }
        }
        if (handle === "!")
          return source;
        onError(`Could not resolve tag: ${source}`);
        return null;
      }
      /**
       * Given a fully resolved tag, returns its printable string form,
       * taking into account current tag prefixes and defaults.
       */
      tagString(tag) {
        for (const [handle, prefix] of Object.entries(this.tags)) {
          if (tag.startsWith(prefix))
            return handle + escapeTagName(tag.substring(prefix.length));
        }
        return tag[0] === "!" ? tag : `!<${tag}>`;
      }
      toString(doc) {
        const lines = this.yaml.explicit ? [`%YAML ${this.yaml.version || "1.2"}`] : [];
        const tagEntries = Object.entries(this.tags);
        let tagNames;
        if (doc && tagEntries.length > 0 && identity5.isNode(doc.contents)) {
          const tags = {};
          visit.visit(doc.contents, (_key, node) => {
            if (identity5.isNode(node) && node.tag)
              tags[node.tag] = true;
          });
          tagNames = Object.keys(tags);
        } else
          tagNames = [];
        for (const [handle, prefix] of tagEntries) {
          if (handle === "!!" && prefix === "tag:yaml.org,2002:")
            continue;
          if (!doc || tagNames.some((tn) => tn.startsWith(prefix)))
            lines.push(`%TAG ${handle} ${prefix}`);
        }
        return lines.join("\n");
      }
    };
    Directives.defaultYaml = { explicit: false, version: "1.2" };
    Directives.defaultTags = { "!!": "tag:yaml.org,2002:" };
    exports2.Directives = Directives;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/doc/anchors.js
var require_anchors = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/doc/anchors.js"(exports2) {
    "use strict";
    var identity5 = require_identity();
    var visit = require_visit();
    function anchorIsValid(anchor) {
      if (/[\x00-\x19\s,[\]{}]/.test(anchor)) {
        const sa = JSON.stringify(anchor);
        const msg = `Anchor must not contain whitespace or control characters: ${sa}`;
        throw new Error(msg);
      }
      return true;
    }
    function anchorNames(root) {
      const anchors = /* @__PURE__ */ new Set();
      visit.visit(root, {
        Value(_key, node) {
          if (node.anchor)
            anchors.add(node.anchor);
        }
      });
      return anchors;
    }
    function findNewAnchor(prefix, exclude) {
      for (let i2 = 1; true; ++i2) {
        const name = `${prefix}${i2}`;
        if (!exclude.has(name))
          return name;
      }
    }
    function createNodeAnchors(doc, prefix) {
      const aliasObjects = [];
      const sourceObjects = /* @__PURE__ */ new Map();
      let prevAnchors = null;
      return {
        onAnchor: (source) => {
          aliasObjects.push(source);
          prevAnchors ?? (prevAnchors = anchorNames(doc));
          const anchor = findNewAnchor(prefix, prevAnchors);
          prevAnchors.add(anchor);
          return anchor;
        },
        /**
         * With circular references, the source node is only resolved after all
         * of its child nodes are. This is why anchors are set only after all of
         * the nodes have been created.
         */
        setAnchors: () => {
          for (const source of aliasObjects) {
            const ref = sourceObjects.get(source);
            if (typeof ref === "object" && ref.anchor && (identity5.isScalar(ref.node) || identity5.isCollection(ref.node))) {
              ref.node.anchor = ref.anchor;
            } else {
              const error = new Error("Failed to resolve repeated object (this should not happen)");
              error.source = source;
              throw error;
            }
          }
        },
        sourceObjects
      };
    }
    exports2.anchorIsValid = anchorIsValid;
    exports2.anchorNames = anchorNames;
    exports2.createNodeAnchors = createNodeAnchors;
    exports2.findNewAnchor = findNewAnchor;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/doc/applyReviver.js
var require_applyReviver = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/doc/applyReviver.js"(exports2) {
    "use strict";
    function applyReviver(reviver, obj, key, val) {
      if (val && typeof val === "object") {
        if (Array.isArray(val)) {
          for (let i2 = 0, len = val.length; i2 < len; ++i2) {
            const v0 = val[i2];
            const v1 = applyReviver(reviver, val, String(i2), v0);
            if (v1 === void 0)
              delete val[i2];
            else if (v1 !== v0)
              val[i2] = v1;
          }
        } else if (val instanceof Map) {
          for (const k2 of Array.from(val.keys())) {
            const v0 = val.get(k2);
            const v1 = applyReviver(reviver, val, k2, v0);
            if (v1 === void 0)
              val.delete(k2);
            else if (v1 !== v0)
              val.set(k2, v1);
          }
        } else if (val instanceof Set) {
          for (const v0 of Array.from(val)) {
            const v1 = applyReviver(reviver, val, v0, v0);
            if (v1 === void 0)
              val.delete(v0);
            else if (v1 !== v0) {
              val.delete(v0);
              val.add(v1);
            }
          }
        } else {
          for (const [k2, v0] of Object.entries(val)) {
            const v1 = applyReviver(reviver, val, k2, v0);
            if (v1 === void 0)
              delete val[k2];
            else if (v1 !== v0)
              val[k2] = v1;
          }
        }
      }
      return reviver.call(obj, key, val);
    }
    exports2.applyReviver = applyReviver;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/nodes/toJS.js
var require_toJS = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/nodes/toJS.js"(exports2) {
    "use strict";
    var identity5 = require_identity();
    function toJS(value, arg, ctx) {
      if (Array.isArray(value))
        return value.map((v, i2) => toJS(v, String(i2), ctx));
      if (value && typeof value.toJSON === "function") {
        if (!ctx || !identity5.hasAnchor(value))
          return value.toJSON(arg, ctx);
        const data = { aliasCount: 0, count: 1, res: void 0 };
        ctx.anchors.set(value, data);
        ctx.onCreate = (res2) => {
          data.res = res2;
          delete ctx.onCreate;
        };
        const res = value.toJSON(arg, ctx);
        if (ctx.onCreate)
          ctx.onCreate(res);
        return res;
      }
      if (typeof value === "bigint" && !ctx?.keep)
        return Number(value);
      return value;
    }
    exports2.toJS = toJS;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/nodes/Node.js
var require_Node = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/nodes/Node.js"(exports2) {
    "use strict";
    var applyReviver = require_applyReviver();
    var identity5 = require_identity();
    var toJS = require_toJS();
    var NodeBase = class {
      constructor(type4) {
        Object.defineProperty(this, identity5.NODE_TYPE, { value: type4 });
      }
      /** Create a copy of this node.  */
      clone() {
        const copy2 = Object.create(Object.getPrototypeOf(this), Object.getOwnPropertyDescriptors(this));
        if (this.range)
          copy2.range = this.range.slice();
        return copy2;
      }
      /** A plain JavaScript representation of this node. */
      toJS(doc, { mapAsMap, maxAliasCount, onAnchor, reviver } = {}) {
        if (!identity5.isDocument(doc))
          throw new TypeError("A document argument is required");
        const ctx = {
          anchors: /* @__PURE__ */ new Map(),
          doc,
          keep: true,
          mapAsMap: mapAsMap === true,
          mapKeyWarned: false,
          maxAliasCount: typeof maxAliasCount === "number" ? maxAliasCount : 100
        };
        const res = toJS.toJS(this, "", ctx);
        if (typeof onAnchor === "function")
          for (const { count: count2, res: res2 } of ctx.anchors.values())
            onAnchor(res2, count2);
        return typeof reviver === "function" ? applyReviver.applyReviver(reviver, { "": res }, "", res) : res;
      }
    };
    exports2.NodeBase = NodeBase;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/nodes/Alias.js
var require_Alias = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/nodes/Alias.js"(exports2) {
    "use strict";
    var anchors = require_anchors();
    var visit = require_visit();
    var identity5 = require_identity();
    var Node2 = require_Node();
    var toJS = require_toJS();
    var Alias = class extends Node2.NodeBase {
      constructor(source) {
        super(identity5.ALIAS);
        this.source = source;
        Object.defineProperty(this, "tag", {
          set() {
            throw new Error("Alias nodes cannot have tags");
          }
        });
      }
      /**
       * Resolve the value of this alias within `doc`, finding the last
       * instance of the `source` anchor before this node.
       */
      resolve(doc, ctx) {
        if (ctx?.maxAliasCount === 0)
          throw new ReferenceError("Alias resolution is disabled");
        let nodes;
        if (ctx?.aliasResolveCache) {
          nodes = ctx.aliasResolveCache;
        } else {
          nodes = [];
          visit.visit(doc, {
            Node: (_key, node) => {
              if (identity5.isAlias(node) || identity5.hasAnchor(node))
                nodes.push(node);
            }
          });
          if (ctx)
            ctx.aliasResolveCache = nodes;
        }
        let found = void 0;
        for (const node of nodes) {
          if (node === this)
            break;
          if (node.anchor === this.source)
            found = node;
        }
        return found;
      }
      toJSON(_arg, ctx) {
        if (!ctx)
          return { source: this.source };
        const { anchors: anchors2, doc, maxAliasCount } = ctx;
        const source = this.resolve(doc, ctx);
        if (!source) {
          const msg = `Unresolved alias (the anchor must be set before the alias): ${this.source}`;
          throw new ReferenceError(msg);
        }
        let data = anchors2.get(source);
        if (!data) {
          toJS.toJS(source, null, ctx);
          data = anchors2.get(source);
        }
        if (data?.res === void 0) {
          const msg = "This should not happen: Alias anchor was not resolved?";
          throw new ReferenceError(msg);
        }
        if (maxAliasCount >= 0) {
          data.count += 1;
          if (data.aliasCount === 0)
            data.aliasCount = getAliasCount(doc, source, anchors2);
          if (data.count * data.aliasCount > maxAliasCount) {
            const msg = "Excessive alias count indicates a resource exhaustion attack";
            throw new ReferenceError(msg);
          }
        }
        return data.res;
      }
      toString(ctx, _onComment, _onChompKeep) {
        const src2 = `*${this.source}`;
        if (ctx) {
          anchors.anchorIsValid(this.source);
          if (ctx.options.verifyAliasOrder && !ctx.anchors.has(this.source)) {
            const msg = `Unresolved alias (the anchor must be set before the alias): ${this.source}`;
            throw new Error(msg);
          }
          if (ctx.implicitKey)
            return `${src2} `;
        }
        return src2;
      }
    };
    function getAliasCount(doc, node, anchors2) {
      if (identity5.isAlias(node)) {
        const source = node.resolve(doc);
        const anchor = anchors2 && source && anchors2.get(source);
        return anchor ? anchor.count * anchor.aliasCount : 0;
      } else if (identity5.isCollection(node)) {
        let count2 = 0;
        for (const item of node.items) {
          const c3 = getAliasCount(doc, item, anchors2);
          if (c3 > count2)
            count2 = c3;
        }
        return count2;
      } else if (identity5.isPair(node)) {
        const kc = getAliasCount(doc, node.key, anchors2);
        const vc = getAliasCount(doc, node.value, anchors2);
        return Math.max(kc, vc);
      }
      return 1;
    }
    exports2.Alias = Alias;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/nodes/Scalar.js
var require_Scalar = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/nodes/Scalar.js"(exports2) {
    "use strict";
    var identity5 = require_identity();
    var Node2 = require_Node();
    var toJS = require_toJS();
    var isScalarValue = (value) => !value || typeof value !== "function" && typeof value !== "object";
    var Scalar = class extends Node2.NodeBase {
      constructor(value) {
        super(identity5.SCALAR);
        this.value = value;
      }
      toJSON(arg, ctx) {
        return ctx?.keep ? this.value : toJS.toJS(this.value, arg, ctx);
      }
      toString() {
        return String(this.value);
      }
    };
    Scalar.BLOCK_FOLDED = "BLOCK_FOLDED";
    Scalar.BLOCK_LITERAL = "BLOCK_LITERAL";
    Scalar.PLAIN = "PLAIN";
    Scalar.QUOTE_DOUBLE = "QUOTE_DOUBLE";
    Scalar.QUOTE_SINGLE = "QUOTE_SINGLE";
    exports2.Scalar = Scalar;
    exports2.isScalarValue = isScalarValue;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/doc/createNode.js
var require_createNode = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/doc/createNode.js"(exports2) {
    "use strict";
    var Alias = require_Alias();
    var identity5 = require_identity();
    var Scalar = require_Scalar();
    var defaultTagPrefix = "tag:yaml.org,2002:";
    function findTagObject(value, tagName, tags) {
      if (tagName) {
        const match = tags.filter((t2) => t2.tag === tagName);
        const tagObj = match.find((t2) => !t2.format) ?? match[0];
        if (!tagObj)
          throw new Error(`Tag ${tagName} not found`);
        return tagObj;
      }
      return tags.find((t2) => t2.identify?.(value) && !t2.format);
    }
    function createNode(value, tagName, ctx) {
      if (identity5.isDocument(value))
        value = value.contents;
      if (identity5.isNode(value))
        return value;
      if (identity5.isPair(value)) {
        const map26 = ctx.schema[identity5.MAP].createNode?.(ctx.schema, null, ctx);
        map26.items.push(value);
        return map26;
      }
      if (value instanceof String || value instanceof Number || value instanceof Boolean || typeof BigInt !== "undefined" && value instanceof BigInt) {
        value = value.valueOf();
      }
      const { aliasDuplicateObjects, onAnchor, onTagObj, schema: schema2, sourceObjects } = ctx;
      let ref = void 0;
      if (aliasDuplicateObjects && value && typeof value === "object") {
        ref = sourceObjects.get(value);
        if (ref) {
          ref.anchor ?? (ref.anchor = onAnchor(value));
          return new Alias.Alias(ref.anchor);
        } else {
          ref = { anchor: null, node: null };
          sourceObjects.set(value, ref);
        }
      }
      if (tagName?.startsWith("!!"))
        tagName = defaultTagPrefix + tagName.slice(2);
      let tagObj = findTagObject(value, tagName, schema2.tags);
      if (!tagObj) {
        if (value && typeof value.toJSON === "function") {
          value = value.toJSON();
        }
        if (!value || typeof value !== "object") {
          const node2 = new Scalar.Scalar(value);
          if (ref)
            ref.node = node2;
          return node2;
        }
        tagObj = value instanceof Map ? schema2[identity5.MAP] : Symbol.iterator in Object(value) ? schema2[identity5.SEQ] : schema2[identity5.MAP];
      }
      if (onTagObj) {
        onTagObj(tagObj);
        delete ctx.onTagObj;
      }
      const node = tagObj?.createNode ? tagObj.createNode(ctx.schema, value, ctx) : typeof tagObj?.nodeClass?.from === "function" ? tagObj.nodeClass.from(ctx.schema, value, ctx) : new Scalar.Scalar(value);
      if (tagName)
        node.tag = tagName;
      else if (!tagObj.default)
        node.tag = tagObj.tag;
      if (ref)
        ref.node = node;
      return node;
    }
    exports2.createNode = createNode;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/nodes/Collection.js
var require_Collection = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/nodes/Collection.js"(exports2) {
    "use strict";
    var createNode = require_createNode();
    var identity5 = require_identity();
    var Node2 = require_Node();
    function collectionFromPath(schema2, path218, value) {
      let v = value;
      for (let i2 = path218.length - 1; i2 >= 0; --i2) {
        const k2 = path218[i2];
        if (typeof k2 === "number" && Number.isInteger(k2) && k2 >= 0) {
          const a2 = [];
          a2[k2] = v;
          v = a2;
        } else {
          v = /* @__PURE__ */ new Map([[k2, v]]);
        }
      }
      return createNode.createNode(v, void 0, {
        aliasDuplicateObjects: false,
        keepUndefined: false,
        onAnchor: () => {
          throw new Error("This should not happen, please report a bug.");
        },
        schema: schema2,
        sourceObjects: /* @__PURE__ */ new Map()
      });
    }
    var isEmptyPath = (path218) => path218 == null || typeof path218 === "object" && !!path218[Symbol.iterator]().next().done;
    var Collection = class extends Node2.NodeBase {
      constructor(type4, schema2) {
        super(type4);
        Object.defineProperty(this, "schema", {
          value: schema2,
          configurable: true,
          enumerable: false,
          writable: true
        });
      }
      /**
       * Create a copy of this collection.
       *
       * @param schema - If defined, overwrites the original's schema
       */
      clone(schema2) {
        const copy2 = Object.create(Object.getPrototypeOf(this), Object.getOwnPropertyDescriptors(this));
        if (schema2)
          copy2.schema = schema2;
        copy2.items = copy2.items.map((it) => identity5.isNode(it) || identity5.isPair(it) ? it.clone(schema2) : it);
        if (this.range)
          copy2.range = this.range.slice();
        return copy2;
      }
      /**
       * Adds a value to the collection. For `!!map` and `!!omap` the value must
       * be a Pair instance or a `{ key, value }` object, which may not have a key
       * that already exists in the map.
       */
      addIn(path218, value) {
        if (isEmptyPath(path218))
          this.add(value);
        else {
          const [key, ...rest] = path218;
          const node = this.get(key, true);
          if (identity5.isCollection(node))
            node.addIn(rest, value);
          else if (node === void 0 && this.schema)
            this.set(key, collectionFromPath(this.schema, rest, value));
          else
            throw new Error(`Expected YAML collection at ${key}. Remaining path: ${rest}`);
        }
      }
      /**
       * Removes a value from the collection.
       * @returns `true` if the item was found and removed.
       */
      deleteIn(path218) {
        const [key, ...rest] = path218;
        if (rest.length === 0)
          return this.delete(key);
        const node = this.get(key, true);
        if (identity5.isCollection(node))
          return node.deleteIn(rest);
        else
          throw new Error(`Expected YAML collection at ${key}. Remaining path: ${rest}`);
      }
      /**
       * Returns item at `key`, or `undefined` if not found. By default unwraps
       * scalar values from their surrounding node; to disable set `keepScalar` to
       * `true` (collections are always returned intact).
       */
      getIn(path218, keepScalar) {
        const [key, ...rest] = path218;
        const node = this.get(key, true);
        if (rest.length === 0)
          return !keepScalar && identity5.isScalar(node) ? node.value : node;
        else
          return identity5.isCollection(node) ? node.getIn(rest, keepScalar) : void 0;
      }
      hasAllNullValues(allowScalar) {
        return this.items.every((node) => {
          if (!identity5.isPair(node))
            return false;
          const n2 = node.value;
          return n2 == null || allowScalar && identity5.isScalar(n2) && n2.value == null && !n2.commentBefore && !n2.comment && !n2.tag;
        });
      }
      /**
       * Checks if the collection includes a value with the key `key`.
       */
      hasIn(path218) {
        const [key, ...rest] = path218;
        if (rest.length === 0)
          return this.has(key);
        const node = this.get(key, true);
        return identity5.isCollection(node) ? node.hasIn(rest) : false;
      }
      /**
       * Sets a value in this collection. For `!!set`, `value` needs to be a
       * boolean to add/remove the item from the set.
       */
      setIn(path218, value) {
        const [key, ...rest] = path218;
        if (rest.length === 0) {
          this.set(key, value);
        } else {
          const node = this.get(key, true);
          if (identity5.isCollection(node))
            node.setIn(rest, value);
          else if (node === void 0 && this.schema)
            this.set(key, collectionFromPath(this.schema, rest, value));
          else
            throw new Error(`Expected YAML collection at ${key}. Remaining path: ${rest}`);
        }
      }
    };
    exports2.Collection = Collection;
    exports2.collectionFromPath = collectionFromPath;
    exports2.isEmptyPath = isEmptyPath;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/stringify/stringifyComment.js
var require_stringifyComment = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/stringify/stringifyComment.js"(exports2) {
    "use strict";
    var stringifyComment = (str2) => str2.replace(/^(?!$)(?: $)?/gm, "#");
    function indentComment(comment, indent) {
      if (/^\n+$/.test(comment))
        return comment.substring(1);
      return indent ? comment.replace(/^(?! *$)/gm, indent) : comment;
    }
    var lineComment = (str2, indent, comment) => str2.endsWith("\n") ? indentComment(comment, indent) : comment.includes("\n") ? "\n" + indentComment(comment, indent) : (str2.endsWith(" ") ? "" : " ") + comment;
    exports2.indentComment = indentComment;
    exports2.lineComment = lineComment;
    exports2.stringifyComment = stringifyComment;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/stringify/foldFlowLines.js
var require_foldFlowLines = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/stringify/foldFlowLines.js"(exports2) {
    "use strict";
    var FOLD_FLOW = "flow";
    var FOLD_BLOCK = "block";
    var FOLD_QUOTED = "quoted";
    function foldFlowLines(text, indent, mode = "flow", { indentAtStart, lineWidth = 80, minContentWidth = 20, onFold, onOverflow } = {}) {
      if (!lineWidth || lineWidth < 0)
        return text;
      if (lineWidth < minContentWidth)
        minContentWidth = 0;
      const endStep = Math.max(1 + minContentWidth, 1 + lineWidth - indent.length);
      if (text.length <= endStep)
        return text;
      const folds = [];
      const escapedFolds = {};
      let end = lineWidth - indent.length;
      if (typeof indentAtStart === "number") {
        if (indentAtStart > lineWidth - Math.max(2, minContentWidth))
          folds.push(0);
        else
          end = lineWidth - indentAtStart;
      }
      let split2 = void 0;
      let prev = void 0;
      let overflow = false;
      let i2 = -1;
      let escStart = -1;
      let escEnd = -1;
      if (mode === FOLD_BLOCK) {
        i2 = consumeMoreIndentedLines(text, i2, indent.length);
        if (i2 !== -1)
          end = i2 + endStep;
      }
      for (let ch; ch = text[i2 += 1]; ) {
        if (mode === FOLD_QUOTED && ch === "\\") {
          escStart = i2;
          switch (text[i2 + 1]) {
            case "x":
              i2 += 3;
              break;
            case "u":
              i2 += 5;
              break;
            case "U":
              i2 += 9;
              break;
            default:
              i2 += 1;
          }
          escEnd = i2;
        }
        if (ch === "\n") {
          if (mode === FOLD_BLOCK)
            i2 = consumeMoreIndentedLines(text, i2, indent.length);
          end = i2 + indent.length + endStep;
          split2 = void 0;
        } else {
          if (ch === " " && prev && prev !== " " && prev !== "\n" && prev !== "	") {
            const next2 = text[i2 + 1];
            if (next2 && next2 !== " " && next2 !== "\n" && next2 !== "	")
              split2 = i2;
          }
          if (i2 >= end) {
            if (split2) {
              folds.push(split2);
              end = split2 + endStep;
              split2 = void 0;
            } else if (mode === FOLD_QUOTED) {
              while (prev === " " || prev === "	") {
                prev = ch;
                ch = text[i2 += 1];
                overflow = true;
              }
              const j2 = i2 > escEnd + 1 ? i2 - 2 : escStart - 1;
              if (escapedFolds[j2])
                return text;
              folds.push(j2);
              escapedFolds[j2] = true;
              end = j2 + endStep;
              split2 = void 0;
            } else {
              overflow = true;
            }
          }
        }
        prev = ch;
      }
      if (overflow && onOverflow)
        onOverflow();
      if (folds.length === 0)
        return text;
      if (onFold)
        onFold();
      let res = text.slice(0, folds[0]);
      for (let i3 = 0; i3 < folds.length; ++i3) {
        const fold = folds[i3];
        const end2 = folds[i3 + 1] || text.length;
        if (fold === 0)
          res = `
${indent}${text.slice(0, end2)}`;
        else {
          if (mode === FOLD_QUOTED && escapedFolds[fold])
            res += `${text[fold]}\\`;
          res += `
${indent}${text.slice(fold + 1, end2)}`;
        }
      }
      return res;
    }
    function consumeMoreIndentedLines(text, i2, indent) {
      let end = i2;
      let start = i2 + 1;
      let ch = text[start];
      while (ch === " " || ch === "	") {
        if (i2 < start + indent) {
          ch = text[++i2];
        } else {
          do {
            ch = text[++i2];
          } while (ch && ch !== "\n");
          end = i2;
          start = i2 + 1;
          ch = text[start];
        }
      }
      return end;
    }
    exports2.FOLD_BLOCK = FOLD_BLOCK;
    exports2.FOLD_FLOW = FOLD_FLOW;
    exports2.FOLD_QUOTED = FOLD_QUOTED;
    exports2.foldFlowLines = foldFlowLines;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/stringify/stringifyString.js
var require_stringifyString = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/stringify/stringifyString.js"(exports2) {
    "use strict";
    var Scalar = require_Scalar();
    var foldFlowLines = require_foldFlowLines();
    var getFoldOptions = (ctx, isBlock) => ({
      indentAtStart: isBlock ? ctx.indent.length : ctx.indentAtStart,
      lineWidth: ctx.options.lineWidth,
      minContentWidth: ctx.options.minContentWidth
    });
    var containsDocumentMarker = (str2) => /^(%|---|\.\.\.)/m.test(str2);
    function lineLengthOverLimit(str2, lineWidth, indentLength) {
      if (!lineWidth || lineWidth < 0)
        return false;
      const limit = lineWidth - indentLength;
      const strLen = str2.length;
      if (strLen <= limit)
        return false;
      for (let i2 = 0, start = 0; i2 < strLen; ++i2) {
        if (str2[i2] === "\n") {
          if (i2 - start > limit)
            return true;
          start = i2 + 1;
          if (strLen - start <= limit)
            return false;
        }
      }
      return true;
    }
    function doubleQuotedString(value, ctx) {
      const json2 = JSON.stringify(value);
      if (ctx.options.doubleQuotedAsJSON)
        return json2;
      const { implicitKey } = ctx;
      const minMultiLineLength = ctx.options.doubleQuotedMinMultiLineLength;
      const indent = ctx.indent || (containsDocumentMarker(value) ? "  " : "");
      let str2 = "";
      let start = 0;
      for (let i2 = 0, ch = json2[i2]; ch; ch = json2[++i2]) {
        if (ch === " " && json2[i2 + 1] === "\\" && json2[i2 + 2] === "n") {
          str2 += json2.slice(start, i2) + "\\ ";
          i2 += 1;
          start = i2;
          ch = "\\";
        }
        if (ch === "\\")
          switch (json2[i2 + 1]) {
            case "u":
              {
                str2 += json2.slice(start, i2);
                const code = json2.substr(i2 + 2, 4);
                switch (code) {
                  case "0000":
                    str2 += "\\0";
                    break;
                  case "0007":
                    str2 += "\\a";
                    break;
                  case "000b":
                    str2 += "\\v";
                    break;
                  case "001b":
                    str2 += "\\e";
                    break;
                  case "0085":
                    str2 += "\\N";
                    break;
                  case "00a0":
                    str2 += "\\_";
                    break;
                  case "2028":
                    str2 += "\\L";
                    break;
                  case "2029":
                    str2 += "\\P";
                    break;
                  default:
                    if (code.substr(0, 2) === "00")
                      str2 += "\\x" + code.substr(2);
                    else
                      str2 += json2.substr(i2, 6);
                }
                i2 += 5;
                start = i2 + 1;
              }
              break;
            case "n":
              if (implicitKey || json2[i2 + 2] === '"' || json2.length < minMultiLineLength) {
                i2 += 1;
              } else {
                str2 += json2.slice(start, i2) + "\n\n";
                while (json2[i2 + 2] === "\\" && json2[i2 + 3] === "n" && json2[i2 + 4] !== '"') {
                  str2 += "\n";
                  i2 += 2;
                }
                str2 += indent;
                if (json2[i2 + 2] === " ")
                  str2 += "\\";
                i2 += 1;
                start = i2 + 1;
              }
              break;
            default:
              i2 += 1;
          }
      }
      str2 = start ? str2 + json2.slice(start) : json2;
      return implicitKey ? str2 : foldFlowLines.foldFlowLines(str2, indent, foldFlowLines.FOLD_QUOTED, getFoldOptions(ctx, false));
    }
    function singleQuotedString(value, ctx) {
      if (ctx.options.singleQuote === false || ctx.implicitKey && value.includes("\n") || /[ \t]\n|\n[ \t]/.test(value))
        return doubleQuotedString(value, ctx);
      const indent = ctx.indent || (containsDocumentMarker(value) ? "  " : "");
      const res = "'" + value.replace(/'/g, "''").replace(/\n+/g, `$&
${indent}`) + "'";
      return ctx.implicitKey ? res : foldFlowLines.foldFlowLines(res, indent, foldFlowLines.FOLD_FLOW, getFoldOptions(ctx, false));
    }
    function quotedString(value, ctx) {
      const { singleQuote } = ctx.options;
      let qs;
      if (singleQuote === false)
        qs = doubleQuotedString;
      else {
        const hasDouble = value.includes('"');
        const hasSingle = value.includes("'");
        if (hasDouble && !hasSingle)
          qs = singleQuotedString;
        else if (hasSingle && !hasDouble)
          qs = doubleQuotedString;
        else
          qs = singleQuote ? singleQuotedString : doubleQuotedString;
      }
      return qs(value, ctx);
    }
    var blockEndNewlines;
    try {
      blockEndNewlines = new RegExp("(^|(?<!\n))\n+(?!\n|$)", "g");
    } catch {
      blockEndNewlines = /\n+(?!\n|$)/g;
    }
    function blockString({ comment, type: type4, value }, ctx, onComment, onChompKeep) {
      const { blockQuote, commentString, lineWidth } = ctx.options;
      if (!blockQuote || /\n[\t ]+$/.test(value)) {
        return quotedString(value, ctx);
      }
      const indent = ctx.indent || (ctx.forceBlockIndent || containsDocumentMarker(value) ? "  " : "");
      const literal = blockQuote === "literal" ? true : blockQuote === "folded" || type4 === Scalar.Scalar.BLOCK_FOLDED ? false : type4 === Scalar.Scalar.BLOCK_LITERAL ? true : !lineLengthOverLimit(value, lineWidth, indent.length);
      if (!value)
        return literal ? "|\n" : ">\n";
      let chomp;
      let endStart;
      for (endStart = value.length; endStart > 0; --endStart) {
        const ch = value[endStart - 1];
        if (ch !== "\n" && ch !== "	" && ch !== " ")
          break;
      }
      let end = value.substring(endStart);
      const endNlPos = end.indexOf("\n");
      if (endNlPos === -1) {
        chomp = "-";
      } else if (value === end || endNlPos !== end.length - 1) {
        chomp = "+";
        if (onChompKeep)
          onChompKeep();
      } else {
        chomp = "";
      }
      if (end) {
        value = value.slice(0, -end.length);
        if (end[end.length - 1] === "\n")
          end = end.slice(0, -1);
        end = end.replace(blockEndNewlines, `$&${indent}`);
      }
      let startWithSpace = false;
      let startEnd;
      let startNlPos = -1;
      for (startEnd = 0; startEnd < value.length; ++startEnd) {
        const ch = value[startEnd];
        if (ch === " ")
          startWithSpace = true;
        else if (ch === "\n")
          startNlPos = startEnd;
        else
          break;
      }
      let start = value.substring(0, startNlPos < startEnd ? startNlPos + 1 : startEnd);
      if (start) {
        value = value.substring(start.length);
        start = start.replace(/\n+/g, `$&${indent}`);
      }
      const indentSize = indent ? "2" : "1";
      let header = (startWithSpace ? indentSize : "") + chomp;
      if (comment) {
        header += " " + commentString(comment.replace(/ ?[\r\n]+/g, " "));
        if (onComment)
          onComment();
      }
      if (!literal) {
        const foldedValue = value.replace(/\n+/g, "\n$&").replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g, "$1$2").replace(/\n+/g, `$&${indent}`);
        let literalFallback = false;
        const foldOptions = getFoldOptions(ctx, true);
        if (blockQuote !== "folded" && type4 !== Scalar.Scalar.BLOCK_FOLDED) {
          foldOptions.onOverflow = () => {
            literalFallback = true;
          };
        }
        const body = foldFlowLines.foldFlowLines(`${start}${foldedValue}${end}`, indent, foldFlowLines.FOLD_BLOCK, foldOptions);
        if (!literalFallback)
          return `>${header}
${indent}${body}`;
      }
      value = value.replace(/\n+/g, `$&${indent}`);
      return `|${header}
${indent}${start}${value}${end}`;
    }
    function plainString(item, ctx, onComment, onChompKeep) {
      const { type: type4, value } = item;
      const { actualString, implicitKey, indent, indentStep, inFlow } = ctx;
      if (implicitKey && value.includes("\n") || inFlow && /[[\]{},]/.test(value)) {
        return quotedString(value, ctx);
      }
      if (/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(value)) {
        return implicitKey || inFlow || !value.includes("\n") ? quotedString(value, ctx) : blockString(item, ctx, onComment, onChompKeep);
      }
      if (!implicitKey && !inFlow && type4 !== Scalar.Scalar.PLAIN && value.includes("\n")) {
        return blockString(item, ctx, onComment, onChompKeep);
      }
      if (containsDocumentMarker(value)) {
        if (indent === "") {
          ctx.forceBlockIndent = true;
          return blockString(item, ctx, onComment, onChompKeep);
        } else if (implicitKey && indent === indentStep) {
          return quotedString(value, ctx);
        }
      }
      const str2 = value.replace(/\n+/g, `$&
${indent}`);
      if (actualString) {
        const test = (tag) => tag.default && tag.tag !== "tag:yaml.org,2002:str" && tag.test?.test(str2);
        const { compat, tags } = ctx.doc.schema;
        if (tags.some(test) || compat?.some(test))
          return quotedString(value, ctx);
      }
      return implicitKey ? str2 : foldFlowLines.foldFlowLines(str2, indent, foldFlowLines.FOLD_FLOW, getFoldOptions(ctx, false));
    }
    function stringifyString(item, ctx, onComment, onChompKeep) {
      const { implicitKey, inFlow } = ctx;
      const ss = typeof item.value === "string" ? item : Object.assign({}, item, { value: String(item.value) });
      let { type: type4 } = item;
      if (type4 !== Scalar.Scalar.QUOTE_DOUBLE) {
        if (/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(ss.value))
          type4 = Scalar.Scalar.QUOTE_DOUBLE;
      }
      const _stringify = (_type) => {
        switch (_type) {
          case Scalar.Scalar.BLOCK_FOLDED:
          case Scalar.Scalar.BLOCK_LITERAL:
            return implicitKey || inFlow ? quotedString(ss.value, ctx) : blockString(ss, ctx, onComment, onChompKeep);
          case Scalar.Scalar.QUOTE_DOUBLE:
            return doubleQuotedString(ss.value, ctx);
          case Scalar.Scalar.QUOTE_SINGLE:
            return singleQuotedString(ss.value, ctx);
          case Scalar.Scalar.PLAIN:
            return plainString(ss, ctx, onComment, onChompKeep);
          default:
            return null;
        }
      };
      let res = _stringify(type4);
      if (res === null) {
        const { defaultKeyType, defaultStringType } = ctx.options;
        const t2 = implicitKey && defaultKeyType || defaultStringType;
        res = _stringify(t2);
        if (res === null)
          throw new Error(`Unsupported default string type ${t2}`);
      }
      return res;
    }
    exports2.stringifyString = stringifyString;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/stringify/stringify.js
var require_stringify3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/stringify/stringify.js"(exports2) {
    "use strict";
    var anchors = require_anchors();
    var identity5 = require_identity();
    var stringifyComment = require_stringifyComment();
    var stringifyString = require_stringifyString();
    function createStringifyContext(doc, options) {
      const opt = Object.assign({
        blockQuote: true,
        commentString: stringifyComment.stringifyComment,
        defaultKeyType: null,
        defaultStringType: "PLAIN",
        directives: null,
        doubleQuotedAsJSON: false,
        doubleQuotedMinMultiLineLength: 40,
        falseStr: "false",
        flowCollectionPadding: true,
        indentSeq: true,
        lineWidth: 80,
        minContentWidth: 20,
        nullStr: "null",
        simpleKeys: false,
        singleQuote: null,
        trailingComma: false,
        trueStr: "true",
        verifyAliasOrder: true
      }, doc.schema.toStringOptions, options);
      let inFlow;
      switch (opt.collectionStyle) {
        case "block":
          inFlow = false;
          break;
        case "flow":
          inFlow = true;
          break;
        default:
          inFlow = null;
      }
      return {
        anchors: /* @__PURE__ */ new Set(),
        doc,
        flowCollectionPadding: opt.flowCollectionPadding ? " " : "",
        indent: "",
        indentStep: typeof opt.indent === "number" ? " ".repeat(opt.indent) : "  ",
        inFlow,
        options: opt
      };
    }
    function getTagObject(tags, item) {
      if (item.tag) {
        const match = tags.filter((t2) => t2.tag === item.tag);
        if (match.length > 0)
          return match.find((t2) => t2.format === item.format) ?? match[0];
      }
      let tagObj = void 0;
      let obj;
      if (identity5.isScalar(item)) {
        obj = item.value;
        let match = tags.filter((t2) => t2.identify?.(obj));
        if (match.length > 1) {
          const testMatch = match.filter((t2) => t2.test);
          if (testMatch.length > 0)
            match = testMatch;
        }
        tagObj = match.find((t2) => t2.format === item.format) ?? match.find((t2) => !t2.format);
      } else {
        obj = item;
        tagObj = tags.find((t2) => t2.nodeClass && obj instanceof t2.nodeClass);
      }
      if (!tagObj) {
        const name = obj?.constructor?.name ?? (obj === null ? "null" : typeof obj);
        throw new Error(`Tag not resolved for ${name} value`);
      }
      return tagObj;
    }
    function stringifyProps(node, tagObj, { anchors: anchors$1, doc }) {
      if (!doc.directives)
        return "";
      const props3 = [];
      const anchor = (identity5.isScalar(node) || identity5.isCollection(node)) && node.anchor;
      if (anchor && anchors.anchorIsValid(anchor)) {
        anchors$1.add(anchor);
        props3.push(`&${anchor}`);
      }
      const tag = node.tag ?? (tagObj.default ? null : tagObj.tag);
      if (tag)
        props3.push(doc.directives.tagString(tag));
      return props3.join(" ");
    }
    function stringify(item, ctx, onComment, onChompKeep) {
      if (identity5.isPair(item))
        return item.toString(ctx, onComment, onChompKeep);
      if (identity5.isAlias(item)) {
        if (ctx.doc.directives)
          return item.toString(ctx);
        if (ctx.resolvedAliases?.has(item)) {
          throw new TypeError(`Cannot stringify circular structure without alias nodes`);
        } else {
          if (ctx.resolvedAliases)
            ctx.resolvedAliases.add(item);
          else
            ctx.resolvedAliases = /* @__PURE__ */ new Set([item]);
          item = item.resolve(ctx.doc);
        }
      }
      let tagObj = void 0;
      const node = identity5.isNode(item) ? item : ctx.doc.createNode(item, { onTagObj: (o2) => tagObj = o2 });
      tagObj ?? (tagObj = getTagObject(ctx.doc.schema.tags, node));
      const props3 = stringifyProps(node, tagObj, ctx);
      if (props3.length > 0)
        ctx.indentAtStart = (ctx.indentAtStart ?? 0) + props3.length + 1;
      const str2 = typeof tagObj.stringify === "function" ? tagObj.stringify(node, ctx, onComment, onChompKeep) : identity5.isScalar(node) ? stringifyString.stringifyString(node, ctx, onComment, onChompKeep) : node.toString(ctx, onComment, onChompKeep);
      if (!props3)
        return str2;
      return identity5.isScalar(node) || str2[0] === "{" || str2[0] === "[" ? `${props3} ${str2}` : `${props3}
${ctx.indent}${str2}`;
    }
    exports2.createStringifyContext = createStringifyContext;
    exports2.stringify = stringify;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/stringify/stringifyPair.js
var require_stringifyPair = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/stringify/stringifyPair.js"(exports2) {
    "use strict";
    var identity5 = require_identity();
    var Scalar = require_Scalar();
    var stringify = require_stringify3();
    var stringifyComment = require_stringifyComment();
    function stringifyPair({ key, value }, ctx, onComment, onChompKeep) {
      const { allNullValues, doc, indent, indentStep, options: { commentString, indentSeq, simpleKeys } } = ctx;
      let keyComment = identity5.isNode(key) && key.comment || null;
      if (simpleKeys) {
        if (keyComment) {
          throw new Error("With simple keys, key nodes cannot have comments");
        }
        if (identity5.isCollection(key) || !identity5.isNode(key) && typeof key === "object") {
          const msg = "With simple keys, collection cannot be used as a key value";
          throw new Error(msg);
        }
      }
      let explicitKey = !simpleKeys && (!key || keyComment && value == null && !ctx.inFlow || identity5.isCollection(key) || (identity5.isScalar(key) ? key.type === Scalar.Scalar.BLOCK_FOLDED || key.type === Scalar.Scalar.BLOCK_LITERAL : typeof key === "object"));
      ctx = Object.assign({}, ctx, {
        allNullValues: false,
        implicitKey: !explicitKey && (simpleKeys || !allNullValues),
        indent: indent + indentStep
      });
      let keyCommentDone = false;
      let chompKeep = false;
      let str2 = stringify.stringify(key, ctx, () => keyCommentDone = true, () => chompKeep = true);
      if (!explicitKey && !ctx.inFlow && str2.length > 1024) {
        if (simpleKeys)
          throw new Error("With simple keys, single line scalar must not span more than 1024 characters");
        explicitKey = true;
      }
      if (ctx.inFlow) {
        if (allNullValues || value == null) {
          if (keyCommentDone && onComment)
            onComment();
          return str2 === "" ? "?" : explicitKey ? `? ${str2}` : str2;
        }
      } else if (allNullValues && !simpleKeys || value == null && explicitKey) {
        str2 = `? ${str2}`;
        if (keyComment && !keyCommentDone) {
          str2 += stringifyComment.lineComment(str2, ctx.indent, commentString(keyComment));
        } else if (chompKeep && onChompKeep)
          onChompKeep();
        return str2;
      }
      if (keyCommentDone)
        keyComment = null;
      if (explicitKey) {
        if (keyComment)
          str2 += stringifyComment.lineComment(str2, ctx.indent, commentString(keyComment));
        str2 = `? ${str2}
${indent}:`;
      } else {
        str2 = `${str2}:`;
        if (keyComment)
          str2 += stringifyComment.lineComment(str2, ctx.indent, commentString(keyComment));
      }
      let vsb, vcb, valueComment;
      if (identity5.isNode(value)) {
        vsb = !!value.spaceBefore;
        vcb = value.commentBefore;
        valueComment = value.comment;
      } else {
        vsb = false;
        vcb = null;
        valueComment = null;
        if (value && typeof value === "object")
          value = doc.createNode(value);
      }
      ctx.implicitKey = false;
      if (!explicitKey && !keyComment && identity5.isScalar(value))
        ctx.indentAtStart = str2.length + 1;
      chompKeep = false;
      if (!indentSeq && indentStep.length >= 2 && !ctx.inFlow && !explicitKey && identity5.isSeq(value) && !value.flow && !value.tag && !value.anchor) {
        ctx.indent = ctx.indent.substring(2);
      }
      let valueCommentDone = false;
      const valueStr = stringify.stringify(value, ctx, () => valueCommentDone = true, () => chompKeep = true);
      let ws = " ";
      if (keyComment || vsb || vcb) {
        ws = vsb ? "\n" : "";
        if (vcb) {
          const cs = commentString(vcb);
          ws += `
${stringifyComment.indentComment(cs, ctx.indent)}`;
        }
        if (valueStr === "" && !ctx.inFlow) {
          if (ws === "\n" && valueComment)
            ws = "\n\n";
        } else {
          ws += `
${ctx.indent}`;
        }
      } else if (!explicitKey && identity5.isCollection(value)) {
        const vs0 = valueStr[0];
        const nl0 = valueStr.indexOf("\n");
        const hasNewline = nl0 !== -1;
        const flow = ctx.inFlow ?? value.flow ?? value.items.length === 0;
        if (hasNewline || !flow) {
          let hasPropsLine = false;
          if (hasNewline && (vs0 === "&" || vs0 === "!")) {
            let sp0 = valueStr.indexOf(" ");
            if (vs0 === "&" && sp0 !== -1 && sp0 < nl0 && valueStr[sp0 + 1] === "!") {
              sp0 = valueStr.indexOf(" ", sp0 + 1);
            }
            if (sp0 === -1 || nl0 < sp0)
              hasPropsLine = true;
          }
          if (!hasPropsLine)
            ws = `
${ctx.indent}`;
        }
      } else if (valueStr === "" || valueStr[0] === "\n") {
        ws = "";
      }
      str2 += ws + valueStr;
      if (ctx.inFlow) {
        if (valueCommentDone && onComment)
          onComment();
      } else if (valueComment && !valueCommentDone) {
        str2 += stringifyComment.lineComment(str2, ctx.indent, commentString(valueComment));
      } else if (chompKeep && onChompKeep) {
        onChompKeep();
      }
      return str2;
    }
    exports2.stringifyPair = stringifyPair;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/log.js
var require_log = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/log.js"(exports2) {
    "use strict";
    var node_process = __require("process");
    function debug(logLevel, ...messages) {
      if (logLevel === "debug")
        console.log(...messages);
    }
    function warn(logLevel, warning) {
      if (logLevel === "debug" || logLevel === "warn") {
        if (typeof node_process.emitWarning === "function")
          node_process.emitWarning(warning);
        else
          console.warn(warning);
      }
    }
    exports2.debug = debug;
    exports2.warn = warn;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/yaml-1.1/merge.js
var require_merge3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/yaml-1.1/merge.js"(exports2) {
    "use strict";
    var identity5 = require_identity();
    var Scalar = require_Scalar();
    var MERGE_KEY = "<<";
    var merge7 = {
      identify: (value) => value === MERGE_KEY || typeof value === "symbol" && value.description === MERGE_KEY,
      default: "key",
      tag: "tag:yaml.org,2002:merge",
      test: /^<<$/,
      resolve: () => Object.assign(new Scalar.Scalar(Symbol(MERGE_KEY)), {
        addToJSMap: addMergeToJSMap
      }),
      stringify: () => MERGE_KEY
    };
    var isMergeKey = (ctx, key) => (merge7.identify(key) || identity5.isScalar(key) && (!key.type || key.type === Scalar.Scalar.PLAIN) && merge7.identify(key.value)) && ctx?.doc.schema.tags.some((tag) => tag.tag === merge7.tag && tag.default);
    function addMergeToJSMap(ctx, map26, value) {
      const source = resolveAliasValue(ctx, value);
      if (identity5.isSeq(source))
        for (const it of source.items)
          mergeValue(ctx, map26, it);
      else if (Array.isArray(source))
        for (const it of source)
          mergeValue(ctx, map26, it);
      else
        mergeValue(ctx, map26, source);
    }
    function mergeValue(ctx, map26, value) {
      const source = resolveAliasValue(ctx, value);
      if (!identity5.isMap(source))
        throw new Error("Merge sources must be maps or map aliases");
      const srcMap = source.toJSON(null, ctx, Map);
      for (const [key, value2] of srcMap) {
        if (map26 instanceof Map) {
          if (!map26.has(key))
            map26.set(key, value2);
        } else if (map26 instanceof Set) {
          map26.add(key);
        } else if (!Object.prototype.hasOwnProperty.call(map26, key)) {
          Object.defineProperty(map26, key, {
            value: value2,
            writable: true,
            enumerable: true,
            configurable: true
          });
        }
      }
      return map26;
    }
    function resolveAliasValue(ctx, value) {
      return ctx && identity5.isAlias(value) ? value.resolve(ctx.doc, ctx) : value;
    }
    exports2.addMergeToJSMap = addMergeToJSMap;
    exports2.isMergeKey = isMergeKey;
    exports2.merge = merge7;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/nodes/addPairToJSMap.js
var require_addPairToJSMap = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/nodes/addPairToJSMap.js"(exports2) {
    "use strict";
    var log3 = require_log();
    var merge7 = require_merge3();
    var stringify = require_stringify3();
    var identity5 = require_identity();
    var toJS = require_toJS();
    function addPairToJSMap(ctx, map26, { key, value }) {
      if (identity5.isNode(key) && key.addToJSMap)
        key.addToJSMap(ctx, map26, value);
      else if (merge7.isMergeKey(ctx, key))
        merge7.addMergeToJSMap(ctx, map26, value);
      else {
        const jsKey = toJS.toJS(key, "", ctx);
        if (map26 instanceof Map) {
          map26.set(jsKey, toJS.toJS(value, jsKey, ctx));
        } else if (map26 instanceof Set) {
          map26.add(jsKey);
        } else {
          const stringKey = stringifyKey(key, jsKey, ctx);
          const jsValue = toJS.toJS(value, stringKey, ctx);
          if (stringKey in map26)
            Object.defineProperty(map26, stringKey, {
              value: jsValue,
              writable: true,
              enumerable: true,
              configurable: true
            });
          else
            map26[stringKey] = jsValue;
        }
      }
      return map26;
    }
    function stringifyKey(key, jsKey, ctx) {
      if (jsKey === null)
        return "";
      if (typeof jsKey !== "object")
        return String(jsKey);
      if (identity5.isNode(key) && ctx?.doc) {
        const strCtx = stringify.createStringifyContext(ctx.doc, {});
        strCtx.anchors = /* @__PURE__ */ new Set();
        for (const node of ctx.anchors.keys())
          strCtx.anchors.add(node.anchor);
        strCtx.inFlow = true;
        strCtx.inStringifyKey = true;
        const strKey = key.toString(strCtx);
        if (!ctx.mapKeyWarned) {
          let jsonStr = JSON.stringify(strKey);
          if (jsonStr.length > 40)
            jsonStr = jsonStr.substring(0, 36) + '..."';
          log3.warn(ctx.doc.options.logLevel, `Keys with collection values will be stringified due to JS Object restrictions: ${jsonStr}. Set mapAsMap: true to use object keys.`);
          ctx.mapKeyWarned = true;
        }
        return strKey;
      }
      return JSON.stringify(jsKey);
    }
    exports2.addPairToJSMap = addPairToJSMap;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/nodes/Pair.js
var require_Pair = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/nodes/Pair.js"(exports2) {
    "use strict";
    var createNode = require_createNode();
    var stringifyPair = require_stringifyPair();
    var addPairToJSMap = require_addPairToJSMap();
    var identity5 = require_identity();
    function createPair(key, value, ctx) {
      const k2 = createNode.createNode(key, void 0, ctx);
      const v = createNode.createNode(value, void 0, ctx);
      return new Pair(k2, v);
    }
    var Pair = class _Pair {
      constructor(key, value = null) {
        Object.defineProperty(this, identity5.NODE_TYPE, { value: identity5.PAIR });
        this.key = key;
        this.value = value;
      }
      clone(schema2) {
        let { key, value } = this;
        if (identity5.isNode(key))
          key = key.clone(schema2);
        if (identity5.isNode(value))
          value = value.clone(schema2);
        return new _Pair(key, value);
      }
      toJSON(_, ctx) {
        const pair = ctx?.mapAsMap ? /* @__PURE__ */ new Map() : {};
        return addPairToJSMap.addPairToJSMap(ctx, pair, this);
      }
      toString(ctx, onComment, onChompKeep) {
        return ctx?.doc ? stringifyPair.stringifyPair(this, ctx, onComment, onChompKeep) : JSON.stringify(this);
      }
    };
    exports2.Pair = Pair;
    exports2.createPair = createPair;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/stringify/stringifyCollection.js
var require_stringifyCollection = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/stringify/stringifyCollection.js"(exports2) {
    "use strict";
    var identity5 = require_identity();
    var stringify = require_stringify3();
    var stringifyComment = require_stringifyComment();
    function stringifyCollection(collection, ctx, options) {
      const flow = ctx.inFlow ?? collection.flow;
      const stringify2 = flow ? stringifyFlowCollection : stringifyBlockCollection;
      return stringify2(collection, ctx, options);
    }
    function stringifyBlockCollection({ comment, items }, ctx, { blockItemPrefix, flowChars, itemIndent, onChompKeep, onComment }) {
      const { indent, options: { commentString } } = ctx;
      const itemCtx = Object.assign({}, ctx, { indent: itemIndent, type: null });
      let chompKeep = false;
      const lines = [];
      for (let i2 = 0; i2 < items.length; ++i2) {
        const item = items[i2];
        let comment2 = null;
        if (identity5.isNode(item)) {
          if (!chompKeep && item.spaceBefore)
            lines.push("");
          addCommentBefore(ctx, lines, item.commentBefore, chompKeep);
          if (item.comment)
            comment2 = item.comment;
        } else if (identity5.isPair(item)) {
          const ik = identity5.isNode(item.key) ? item.key : null;
          if (ik) {
            if (!chompKeep && ik.spaceBefore)
              lines.push("");
            addCommentBefore(ctx, lines, ik.commentBefore, chompKeep);
          }
        }
        chompKeep = false;
        let str3 = stringify.stringify(item, itemCtx, () => comment2 = null, () => chompKeep = true);
        if (comment2)
          str3 += stringifyComment.lineComment(str3, itemIndent, commentString(comment2));
        if (chompKeep && comment2)
          chompKeep = false;
        lines.push(blockItemPrefix + str3);
      }
      let str2;
      if (lines.length === 0) {
        str2 = flowChars.start + flowChars.end;
      } else {
        str2 = lines[0];
        for (let i2 = 1; i2 < lines.length; ++i2) {
          const line = lines[i2];
          str2 += line ? `
${indent}${line}` : "\n";
        }
      }
      if (comment) {
        str2 += "\n" + stringifyComment.indentComment(commentString(comment), indent);
        if (onComment)
          onComment();
      } else if (chompKeep && onChompKeep)
        onChompKeep();
      return str2;
    }
    function stringifyFlowCollection({ items }, ctx, { flowChars, itemIndent }) {
      const { indent, indentStep, flowCollectionPadding: fcPadding, options: { commentString } } = ctx;
      itemIndent += indentStep;
      const itemCtx = Object.assign({}, ctx, {
        indent: itemIndent,
        inFlow: true,
        type: null
      });
      let reqNewline = false;
      let linesAtValue = 0;
      const lines = [];
      for (let i2 = 0; i2 < items.length; ++i2) {
        const item = items[i2];
        let comment = null;
        if (identity5.isNode(item)) {
          if (item.spaceBefore)
            lines.push("");
          addCommentBefore(ctx, lines, item.commentBefore, false);
          if (item.comment)
            comment = item.comment;
        } else if (identity5.isPair(item)) {
          const ik = identity5.isNode(item.key) ? item.key : null;
          if (ik) {
            if (ik.spaceBefore)
              lines.push("");
            addCommentBefore(ctx, lines, ik.commentBefore, false);
            if (ik.comment)
              reqNewline = true;
          }
          const iv = identity5.isNode(item.value) ? item.value : null;
          if (iv) {
            if (iv.comment)
              comment = iv.comment;
            if (iv.commentBefore)
              reqNewline = true;
          } else if (item.value == null && ik?.comment) {
            comment = ik.comment;
          }
        }
        if (comment)
          reqNewline = true;
        let str2 = stringify.stringify(item, itemCtx, () => comment = null);
        reqNewline || (reqNewline = lines.length > linesAtValue || str2.includes("\n"));
        if (i2 < items.length - 1) {
          str2 += ",";
        } else if (ctx.options.trailingComma) {
          if (ctx.options.lineWidth > 0) {
            reqNewline || (reqNewline = lines.reduce((sum, line) => sum + line.length + 2, 2) + (str2.length + 2) > ctx.options.lineWidth);
          }
          if (reqNewline) {
            str2 += ",";
          }
        }
        if (comment)
          str2 += stringifyComment.lineComment(str2, itemIndent, commentString(comment));
        lines.push(str2);
        linesAtValue = lines.length;
      }
      const { start, end } = flowChars;
      if (lines.length === 0) {
        return start + end;
      } else {
        if (!reqNewline) {
          const len = lines.reduce((sum, line) => sum + line.length + 2, 2);
          reqNewline = ctx.options.lineWidth > 0 && len > ctx.options.lineWidth;
        }
        if (reqNewline) {
          let str2 = start;
          for (const line of lines)
            str2 += line ? `
${indentStep}${indent}${line}` : "\n";
          return `${str2}
${indent}${end}`;
        } else {
          return `${start}${fcPadding}${lines.join(" ")}${fcPadding}${end}`;
        }
      }
    }
    function addCommentBefore({ indent, options: { commentString } }, lines, comment, chompKeep) {
      if (comment && chompKeep)
        comment = comment.replace(/^\n+/, "");
      if (comment) {
        const ic = stringifyComment.indentComment(commentString(comment), indent);
        lines.push(ic.trimStart());
      }
    }
    exports2.stringifyCollection = stringifyCollection;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/nodes/YAMLMap.js
var require_YAMLMap = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/nodes/YAMLMap.js"(exports2) {
    "use strict";
    var stringifyCollection = require_stringifyCollection();
    var addPairToJSMap = require_addPairToJSMap();
    var Collection = require_Collection();
    var identity5 = require_identity();
    var Pair = require_Pair();
    var Scalar = require_Scalar();
    function findPair(items, key) {
      const k2 = identity5.isScalar(key) ? key.value : key;
      for (const it of items) {
        if (identity5.isPair(it)) {
          if (it.key === key || it.key === k2)
            return it;
          if (identity5.isScalar(it.key) && it.key.value === k2)
            return it;
        }
      }
      return void 0;
    }
    var YAMLMap = class extends Collection.Collection {
      static get tagName() {
        return "tag:yaml.org,2002:map";
      }
      constructor(schema2) {
        super(identity5.MAP, schema2);
        this.items = [];
      }
      /**
       * A generic collection parsing method that can be extended
       * to other node classes that inherit from YAMLMap
       */
      static from(schema2, obj, ctx) {
        const { keepUndefined, replacer: replacer2 } = ctx;
        const map26 = new this(schema2);
        const add = (key, value) => {
          if (typeof replacer2 === "function")
            value = replacer2.call(obj, key, value);
          else if (Array.isArray(replacer2) && !replacer2.includes(key))
            return;
          if (value !== void 0 || keepUndefined)
            map26.items.push(Pair.createPair(key, value, ctx));
        };
        if (obj instanceof Map) {
          for (const [key, value] of obj)
            add(key, value);
        } else if (obj && typeof obj === "object") {
          for (const key of Object.keys(obj))
            add(key, obj[key]);
        }
        if (typeof schema2.sortMapEntries === "function") {
          map26.items.sort(schema2.sortMapEntries);
        }
        return map26;
      }
      /**
       * Adds a value to the collection.
       *
       * @param overwrite - If not set `true`, using a key that is already in the
       *   collection will throw. Otherwise, overwrites the previous value.
       */
      add(pair, overwrite) {
        let _pair;
        if (identity5.isPair(pair))
          _pair = pair;
        else if (!pair || typeof pair !== "object" || !("key" in pair)) {
          _pair = new Pair.Pair(pair, pair?.value);
        } else
          _pair = new Pair.Pair(pair.key, pair.value);
        const prev = findPair(this.items, _pair.key);
        const sortEntries = this.schema?.sortMapEntries;
        if (prev) {
          if (!overwrite)
            throw new Error(`Key ${_pair.key} already set`);
          if (identity5.isScalar(prev.value) && Scalar.isScalarValue(_pair.value))
            prev.value.value = _pair.value;
          else
            prev.value = _pair.value;
        } else if (sortEntries) {
          const i2 = this.items.findIndex((item) => sortEntries(_pair, item) < 0);
          if (i2 === -1)
            this.items.push(_pair);
          else
            this.items.splice(i2, 0, _pair);
        } else {
          this.items.push(_pair);
        }
      }
      delete(key) {
        const it = findPair(this.items, key);
        if (!it)
          return false;
        const del = this.items.splice(this.items.indexOf(it), 1);
        return del.length > 0;
      }
      get(key, keepScalar) {
        const it = findPair(this.items, key);
        const node = it?.value;
        return (!keepScalar && identity5.isScalar(node) ? node.value : node) ?? void 0;
      }
      has(key) {
        return !!findPair(this.items, key);
      }
      set(key, value) {
        this.add(new Pair.Pair(key, value), true);
      }
      /**
       * @param ctx - Conversion context, originally set in Document#toJS()
       * @param {Class} Type - If set, forces the returned collection type
       * @returns Instance of Type, Map, or Object
       */
      toJSON(_, ctx, Type2) {
        const map26 = Type2 ? new Type2() : ctx?.mapAsMap ? /* @__PURE__ */ new Map() : {};
        if (ctx?.onCreate)
          ctx.onCreate(map26);
        for (const item of this.items)
          addPairToJSMap.addPairToJSMap(ctx, map26, item);
        return map26;
      }
      toString(ctx, onComment, onChompKeep) {
        if (!ctx)
          return JSON.stringify(this);
        for (const item of this.items) {
          if (!identity5.isPair(item))
            throw new Error(`Map items must all be pairs; found ${JSON.stringify(item)} instead`);
        }
        if (!ctx.allNullValues && this.hasAllNullValues(false))
          ctx = Object.assign({}, ctx, { allNullValues: true });
        return stringifyCollection.stringifyCollection(this, ctx, {
          blockItemPrefix: "",
          flowChars: { start: "{", end: "}" },
          itemIndent: ctx.indent || "",
          onChompKeep,
          onComment
        });
      }
    };
    exports2.YAMLMap = YAMLMap;
    exports2.findPair = findPair;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/common/map.js
var require_map2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/common/map.js"(exports2) {
    "use strict";
    var identity5 = require_identity();
    var YAMLMap = require_YAMLMap();
    var map26 = {
      collection: "map",
      default: true,
      nodeClass: YAMLMap.YAMLMap,
      tag: "tag:yaml.org,2002:map",
      resolve(map27, onError) {
        if (!identity5.isMap(map27))
          onError("Expected a mapping for this tag");
        return map27;
      },
      createNode: (schema2, obj, ctx) => YAMLMap.YAMLMap.from(schema2, obj, ctx)
    };
    exports2.map = map26;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/nodes/YAMLSeq.js
var require_YAMLSeq = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/nodes/YAMLSeq.js"(exports2) {
    "use strict";
    var createNode = require_createNode();
    var stringifyCollection = require_stringifyCollection();
    var Collection = require_Collection();
    var identity5 = require_identity();
    var Scalar = require_Scalar();
    var toJS = require_toJS();
    var YAMLSeq = class extends Collection.Collection {
      static get tagName() {
        return "tag:yaml.org,2002:seq";
      }
      constructor(schema2) {
        super(identity5.SEQ, schema2);
        this.items = [];
      }
      add(value) {
        this.items.push(value);
      }
      /**
       * Removes a value from the collection.
       *
       * `key` must contain a representation of an integer for this to succeed.
       * It may be wrapped in a `Scalar`.
       *
       * @returns `true` if the item was found and removed.
       */
      delete(key) {
        const idx = asItemIndex(key);
        if (typeof idx !== "number")
          return false;
        const del = this.items.splice(idx, 1);
        return del.length > 0;
      }
      get(key, keepScalar) {
        const idx = asItemIndex(key);
        if (typeof idx !== "number")
          return void 0;
        const it = this.items[idx];
        return !keepScalar && identity5.isScalar(it) ? it.value : it;
      }
      /**
       * Checks if the collection includes a value with the key `key`.
       *
       * `key` must contain a representation of an integer for this to succeed.
       * It may be wrapped in a `Scalar`.
       */
      has(key) {
        const idx = asItemIndex(key);
        return typeof idx === "number" && idx < this.items.length;
      }
      /**
       * Sets a value in this collection. For `!!set`, `value` needs to be a
       * boolean to add/remove the item from the set.
       *
       * If `key` does not contain a representation of an integer, this will throw.
       * It may be wrapped in a `Scalar`.
       */
      set(key, value) {
        const idx = asItemIndex(key);
        if (typeof idx !== "number")
          throw new Error(`Expected a valid index, not ${key}.`);
        const prev = this.items[idx];
        if (identity5.isScalar(prev) && Scalar.isScalarValue(value))
          prev.value = value;
        else
          this.items[idx] = value;
      }
      toJSON(_, ctx) {
        const seq2 = [];
        if (ctx?.onCreate)
          ctx.onCreate(seq2);
        let i2 = 0;
        for (const item of this.items)
          seq2.push(toJS.toJS(item, String(i2++), ctx));
        return seq2;
      }
      toString(ctx, onComment, onChompKeep) {
        if (!ctx)
          return JSON.stringify(this);
        return stringifyCollection.stringifyCollection(this, ctx, {
          blockItemPrefix: "- ",
          flowChars: { start: "[", end: "]" },
          itemIndent: (ctx.indent || "") + "  ",
          onChompKeep,
          onComment
        });
      }
      static from(schema2, obj, ctx) {
        const { replacer: replacer2 } = ctx;
        const seq2 = new this(schema2);
        if (obj && Symbol.iterator in Object(obj)) {
          let i2 = 0;
          for (let it of obj) {
            if (typeof replacer2 === "function") {
              const key = obj instanceof Set ? it : String(i2++);
              it = replacer2.call(obj, key, it);
            }
            seq2.items.push(createNode.createNode(it, void 0, ctx));
          }
        }
        return seq2;
      }
    };
    function asItemIndex(key) {
      let idx = identity5.isScalar(key) ? key.value : key;
      if (idx && typeof idx === "string")
        idx = Number(idx);
      return typeof idx === "number" && Number.isInteger(idx) && idx >= 0 ? idx : null;
    }
    exports2.YAMLSeq = YAMLSeq;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/common/seq.js
var require_seq2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/common/seq.js"(exports2) {
    "use strict";
    var identity5 = require_identity();
    var YAMLSeq = require_YAMLSeq();
    var seq2 = {
      collection: "seq",
      default: true,
      nodeClass: YAMLSeq.YAMLSeq,
      tag: "tag:yaml.org,2002:seq",
      resolve(seq3, onError) {
        if (!identity5.isSeq(seq3))
          onError("Expected a sequence for this tag");
        return seq3;
      },
      createNode: (schema2, obj, ctx) => YAMLSeq.YAMLSeq.from(schema2, obj, ctx)
    };
    exports2.seq = seq2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/common/string.js
var require_string3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/common/string.js"(exports2) {
    "use strict";
    var stringifyString = require_stringifyString();
    var string = {
      identify: (value) => typeof value === "string",
      default: true,
      tag: "tag:yaml.org,2002:str",
      resolve: (str2) => str2,
      stringify(item, ctx, onComment, onChompKeep) {
        ctx = Object.assign({ actualString: true }, ctx);
        return stringifyString.stringifyString(item, ctx, onComment, onChompKeep);
      }
    };
    exports2.string = string;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/common/null.js
var require_null2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/common/null.js"(exports2) {
    "use strict";
    var Scalar = require_Scalar();
    var nullTag = {
      identify: (value) => value == null,
      createNode: () => new Scalar.Scalar(null),
      default: true,
      tag: "tag:yaml.org,2002:null",
      test: /^(?:~|[Nn]ull|NULL)?$/,
      resolve: () => new Scalar.Scalar(null),
      stringify: ({ source }, ctx) => typeof source === "string" && nullTag.test.test(source) ? source : ctx.options.nullStr
    };
    exports2.nullTag = nullTag;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/core/bool.js
var require_bool2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/core/bool.js"(exports2) {
    "use strict";
    var Scalar = require_Scalar();
    var boolTag = {
      identify: (value) => typeof value === "boolean",
      default: true,
      tag: "tag:yaml.org,2002:bool",
      test: /^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,
      resolve: (str2) => new Scalar.Scalar(str2[0] === "t" || str2[0] === "T"),
      stringify({ source, value }, ctx) {
        if (source && boolTag.test.test(source)) {
          const sv = source[0] === "t" || source[0] === "T";
          if (value === sv)
            return source;
        }
        return value ? ctx.options.trueStr : ctx.options.falseStr;
      }
    };
    exports2.boolTag = boolTag;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/stringify/stringifyNumber.js
var require_stringifyNumber = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/stringify/stringifyNumber.js"(exports2) {
    "use strict";
    function stringifyNumber({ format: format2, minFractionDigits, tag, value }) {
      if (typeof value === "bigint")
        return String(value);
      const num = typeof value === "number" ? value : Number(value);
      if (!isFinite(num))
        return isNaN(num) ? ".nan" : num < 0 ? "-.inf" : ".inf";
      let n2 = Object.is(value, -0) ? "-0" : JSON.stringify(value);
      if (!format2 && minFractionDigits && (!tag || tag === "tag:yaml.org,2002:float") && /^-?\d/.test(n2) && !n2.includes("e")) {
        let i2 = n2.indexOf(".");
        if (i2 < 0) {
          i2 = n2.length;
          n2 += ".";
        }
        let d = minFractionDigits - (n2.length - i2 - 1);
        while (d-- > 0)
          n2 += "0";
      }
      return n2;
    }
    exports2.stringifyNumber = stringifyNumber;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/core/float.js
var require_float2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/core/float.js"(exports2) {
    "use strict";
    var Scalar = require_Scalar();
    var stringifyNumber = require_stringifyNumber();
    var floatNaN = {
      identify: (value) => typeof value === "number",
      default: true,
      tag: "tag:yaml.org,2002:float",
      test: /^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,
      resolve: (str2) => str2.slice(-3).toLowerCase() === "nan" ? NaN : str2[0] === "-" ? Number.NEGATIVE_INFINITY : Number.POSITIVE_INFINITY,
      stringify: stringifyNumber.stringifyNumber
    };
    var floatExp = {
      identify: (value) => typeof value === "number",
      default: true,
      tag: "tag:yaml.org,2002:float",
      format: "EXP",
      test: /^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,
      resolve: (str2) => parseFloat(str2),
      stringify(node) {
        const num = Number(node.value);
        return isFinite(num) ? num.toExponential() : stringifyNumber.stringifyNumber(node);
      }
    };
    var float2 = {
      identify: (value) => typeof value === "number",
      default: true,
      tag: "tag:yaml.org,2002:float",
      test: /^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,
      resolve(str2) {
        const node = new Scalar.Scalar(parseFloat(str2));
        const dot = str2.indexOf(".");
        if (dot !== -1 && str2[str2.length - 1] === "0")
          node.minFractionDigits = str2.length - dot - 1;
        return node;
      },
      stringify: stringifyNumber.stringifyNumber
    };
    exports2.float = float2;
    exports2.floatExp = floatExp;
    exports2.floatNaN = floatNaN;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/core/int.js
var require_int2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/core/int.js"(exports2) {
    "use strict";
    var stringifyNumber = require_stringifyNumber();
    var intIdentify = (value) => typeof value === "bigint" || Number.isInteger(value);
    var intResolve = (str2, offset, radix, { intAsBigInt }) => intAsBigInt ? BigInt(str2) : parseInt(str2.substring(offset), radix);
    function intStringify(node, radix, prefix) {
      const { value } = node;
      if (intIdentify(value) && value >= 0)
        return prefix + value.toString(radix);
      return stringifyNumber.stringifyNumber(node);
    }
    var intOct = {
      identify: (value) => intIdentify(value) && value >= 0,
      default: true,
      tag: "tag:yaml.org,2002:int",
      format: "OCT",
      test: /^0o[0-7]+$/,
      resolve: (str2, _onError, opt) => intResolve(str2, 2, 8, opt),
      stringify: (node) => intStringify(node, 8, "0o")
    };
    var int2 = {
      identify: intIdentify,
      default: true,
      tag: "tag:yaml.org,2002:int",
      test: /^[-+]?[0-9]+$/,
      resolve: (str2, _onError, opt) => intResolve(str2, 0, 10, opt),
      stringify: stringifyNumber.stringifyNumber
    };
    var intHex = {
      identify: (value) => intIdentify(value) && value >= 0,
      default: true,
      tag: "tag:yaml.org,2002:int",
      format: "HEX",
      test: /^0x[0-9a-fA-F]+$/,
      resolve: (str2, _onError, opt) => intResolve(str2, 2, 16, opt),
      stringify: (node) => intStringify(node, 16, "0x")
    };
    exports2.int = int2;
    exports2.intHex = intHex;
    exports2.intOct = intOct;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/core/schema.js
var require_schema2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/core/schema.js"(exports2) {
    "use strict";
    var map26 = require_map2();
    var _null2 = require_null2();
    var seq2 = require_seq2();
    var string = require_string3();
    var bool2 = require_bool2();
    var float2 = require_float2();
    var int2 = require_int2();
    var schema2 = [
      map26.map,
      seq2.seq,
      string.string,
      _null2.nullTag,
      bool2.boolTag,
      int2.intOct,
      int2.int,
      int2.intHex,
      float2.floatNaN,
      float2.floatExp,
      float2.float
    ];
    exports2.schema = schema2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/json/schema.js
var require_schema3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/json/schema.js"(exports2) {
    "use strict";
    var Scalar = require_Scalar();
    var map26 = require_map2();
    var seq2 = require_seq2();
    function intIdentify(value) {
      return typeof value === "bigint" || Number.isInteger(value);
    }
    var stringifyJSON = ({ value }) => JSON.stringify(value);
    var jsonScalars = [
      {
        identify: (value) => typeof value === "string",
        default: true,
        tag: "tag:yaml.org,2002:str",
        resolve: (str2) => str2,
        stringify: stringifyJSON
      },
      {
        identify: (value) => value == null,
        createNode: () => new Scalar.Scalar(null),
        default: true,
        tag: "tag:yaml.org,2002:null",
        test: /^null$/,
        resolve: () => null,
        stringify: stringifyJSON
      },
      {
        identify: (value) => typeof value === "boolean",
        default: true,
        tag: "tag:yaml.org,2002:bool",
        test: /^true$|^false$/,
        resolve: (str2) => str2 === "true",
        stringify: stringifyJSON
      },
      {
        identify: intIdentify,
        default: true,
        tag: "tag:yaml.org,2002:int",
        test: /^-?(?:0|[1-9][0-9]*)$/,
        resolve: (str2, _onError, { intAsBigInt }) => intAsBigInt ? BigInt(str2) : parseInt(str2, 10),
        stringify: ({ value }) => intIdentify(value) ? value.toString() : JSON.stringify(value)
      },
      {
        identify: (value) => typeof value === "number",
        default: true,
        tag: "tag:yaml.org,2002:float",
        test: /^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,
        resolve: (str2) => parseFloat(str2),
        stringify: stringifyJSON
      }
    ];
    var jsonError = {
      default: true,
      tag: "",
      test: /^/,
      resolve(str2, onError) {
        onError(`Unresolved plain scalar ${JSON.stringify(str2)}`);
        return str2;
      }
    };
    var schema2 = [map26.map, seq2.seq].concat(jsonScalars, jsonError);
    exports2.schema = schema2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/yaml-1.1/binary.js
var require_binary2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/yaml-1.1/binary.js"(exports2) {
    "use strict";
    var node_buffer = __require("buffer");
    var Scalar = require_Scalar();
    var stringifyString = require_stringifyString();
    var binary2 = {
      identify: (value) => value instanceof Uint8Array,
      // Buffer inherits from Uint8Array
      default: false,
      tag: "tag:yaml.org,2002:binary",
      /**
       * Returns a Buffer in node and an Uint8Array in browsers
       *
       * To use the resulting buffer as an image, you'll want to do something like:
       *
       *   const blob = new Blob([buffer], { type: 'image/jpeg' })
       *   document.querySelector('#photo').src = URL.createObjectURL(blob)
       */
      resolve(src2, onError) {
        if (typeof node_buffer.Buffer === "function") {
          return node_buffer.Buffer.from(src2, "base64");
        } else if (typeof atob === "function") {
          const str2 = atob(src2.replace(/[\n\r]/g, ""));
          const buffer3 = new Uint8Array(str2.length);
          for (let i2 = 0; i2 < str2.length; ++i2)
            buffer3[i2] = str2.charCodeAt(i2);
          return buffer3;
        } else {
          onError("This environment does not support reading binary tags; either Buffer or atob is required");
          return src2;
        }
      },
      stringify({ comment, type: type4, value }, ctx, onComment, onChompKeep) {
        if (!value)
          return "";
        const buf = value;
        let str2;
        if (typeof node_buffer.Buffer === "function") {
          str2 = buf instanceof node_buffer.Buffer ? buf.toString("base64") : node_buffer.Buffer.from(buf.buffer).toString("base64");
        } else if (typeof btoa === "function") {
          let s = "";
          for (let i2 = 0; i2 < buf.length; ++i2)
            s += String.fromCharCode(buf[i2]);
          str2 = btoa(s);
        } else {
          throw new Error("This environment does not support writing binary tags; either Buffer or btoa is required");
        }
        type4 ?? (type4 = Scalar.Scalar.BLOCK_LITERAL);
        if (type4 !== Scalar.Scalar.QUOTE_DOUBLE) {
          const lineWidth = Math.max(ctx.options.lineWidth - ctx.indent.length, ctx.options.minContentWidth);
          const n2 = Math.ceil(str2.length / lineWidth);
          const lines = new Array(n2);
          for (let i2 = 0, o2 = 0; i2 < n2; ++i2, o2 += lineWidth) {
            lines[i2] = str2.substr(o2, lineWidth);
          }
          str2 = lines.join(type4 === Scalar.Scalar.BLOCK_LITERAL ? "\n" : " ");
        }
        return stringifyString.stringifyString({ comment, type: type4, value: str2 }, ctx, onComment, onChompKeep);
      }
    };
    exports2.binary = binary2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/yaml-1.1/pairs.js
var require_pairs2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/yaml-1.1/pairs.js"(exports2) {
    "use strict";
    var identity5 = require_identity();
    var Pair = require_Pair();
    var Scalar = require_Scalar();
    var YAMLSeq = require_YAMLSeq();
    function resolvePairs(seq2, onError) {
      if (identity5.isSeq(seq2)) {
        for (let i2 = 0; i2 < seq2.items.length; ++i2) {
          let item = seq2.items[i2];
          if (identity5.isPair(item))
            continue;
          else if (identity5.isMap(item)) {
            if (item.items.length > 1)
              onError("Each pair must have its own sequence indicator");
            const pair = item.items[0] || new Pair.Pair(new Scalar.Scalar(null));
            if (item.commentBefore)
              pair.key.commentBefore = pair.key.commentBefore ? `${item.commentBefore}
${pair.key.commentBefore}` : item.commentBefore;
            if (item.comment) {
              const cn = pair.value ?? pair.key;
              cn.comment = cn.comment ? `${item.comment}
${cn.comment}` : item.comment;
            }
            item = pair;
          }
          seq2.items[i2] = identity5.isPair(item) ? item : new Pair.Pair(item);
        }
      } else
        onError("Expected a sequence for this tag");
      return seq2;
    }
    function createPairs(schema2, iterable, ctx) {
      const { replacer: replacer2 } = ctx;
      const pairs3 = new YAMLSeq.YAMLSeq(schema2);
      pairs3.tag = "tag:yaml.org,2002:pairs";
      let i2 = 0;
      if (iterable && Symbol.iterator in Object(iterable))
        for (let it of iterable) {
          if (typeof replacer2 === "function")
            it = replacer2.call(iterable, String(i2++), it);
          let key, value;
          if (Array.isArray(it)) {
            if (it.length === 2) {
              key = it[0];
              value = it[1];
            } else
              throw new TypeError(`Expected [key, value] tuple: ${it}`);
          } else if (it && it instanceof Object) {
            const keys4 = Object.keys(it);
            if (keys4.length === 1) {
              key = keys4[0];
              value = it[key];
            } else {
              throw new TypeError(`Expected tuple with one key, not ${keys4.length} keys`);
            }
          } else {
            key = it;
          }
          pairs3.items.push(Pair.createPair(key, value, ctx));
        }
      return pairs3;
    }
    var pairs2 = {
      collection: "seq",
      default: false,
      tag: "tag:yaml.org,2002:pairs",
      resolve: resolvePairs,
      createNode: createPairs
    };
    exports2.createPairs = createPairs;
    exports2.pairs = pairs2;
    exports2.resolvePairs = resolvePairs;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/yaml-1.1/omap.js
var require_omap2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/yaml-1.1/omap.js"(exports2) {
    "use strict";
    var identity5 = require_identity();
    var toJS = require_toJS();
    var YAMLMap = require_YAMLMap();
    var YAMLSeq = require_YAMLSeq();
    var pairs2 = require_pairs2();
    var YAMLOMap = class _YAMLOMap extends YAMLSeq.YAMLSeq {
      constructor() {
        super();
        this.add = YAMLMap.YAMLMap.prototype.add.bind(this);
        this.delete = YAMLMap.YAMLMap.prototype.delete.bind(this);
        this.get = YAMLMap.YAMLMap.prototype.get.bind(this);
        this.has = YAMLMap.YAMLMap.prototype.has.bind(this);
        this.set = YAMLMap.YAMLMap.prototype.set.bind(this);
        this.tag = _YAMLOMap.tag;
      }
      /**
       * If `ctx` is given, the return type is actually `Map<unknown, unknown>`,
       * but TypeScript won't allow widening the signature of a child method.
       */
      toJSON(_, ctx) {
        if (!ctx)
          return super.toJSON(_);
        const map26 = /* @__PURE__ */ new Map();
        if (ctx?.onCreate)
          ctx.onCreate(map26);
        for (const pair of this.items) {
          let key, value;
          if (identity5.isPair(pair)) {
            key = toJS.toJS(pair.key, "", ctx);
            value = toJS.toJS(pair.value, key, ctx);
          } else {
            key = toJS.toJS(pair, "", ctx);
          }
          if (map26.has(key))
            throw new Error("Ordered maps must not include duplicate keys");
          map26.set(key, value);
        }
        return map26;
      }
      static from(schema2, iterable, ctx) {
        const pairs$1 = pairs2.createPairs(schema2, iterable, ctx);
        const omap3 = new this();
        omap3.items = pairs$1.items;
        return omap3;
      }
    };
    YAMLOMap.tag = "tag:yaml.org,2002:omap";
    var omap2 = {
      collection: "seq",
      identify: (value) => value instanceof Map,
      nodeClass: YAMLOMap,
      default: false,
      tag: "tag:yaml.org,2002:omap",
      resolve(seq2, onError) {
        const pairs$1 = pairs2.resolvePairs(seq2, onError);
        const seenKeys = [];
        for (const { key } of pairs$1.items) {
          if (identity5.isScalar(key)) {
            if (seenKeys.includes(key.value)) {
              onError(`Ordered maps must not include duplicate keys: ${key.value}`);
            } else {
              seenKeys.push(key.value);
            }
          }
        }
        return Object.assign(new YAMLOMap(), pairs$1);
      },
      createNode: (schema2, iterable, ctx) => YAMLOMap.from(schema2, iterable, ctx)
    };
    exports2.YAMLOMap = YAMLOMap;
    exports2.omap = omap2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/yaml-1.1/bool.js
var require_bool3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/yaml-1.1/bool.js"(exports2) {
    "use strict";
    var Scalar = require_Scalar();
    function boolStringify({ value, source }, ctx) {
      const boolObj = value ? trueTag : falseTag;
      if (source && boolObj.test.test(source))
        return source;
      return value ? ctx.options.trueStr : ctx.options.falseStr;
    }
    var trueTag = {
      identify: (value) => value === true,
      default: true,
      tag: "tag:yaml.org,2002:bool",
      test: /^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,
      resolve: () => new Scalar.Scalar(true),
      stringify: boolStringify
    };
    var falseTag = {
      identify: (value) => value === false,
      default: true,
      tag: "tag:yaml.org,2002:bool",
      test: /^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,
      resolve: () => new Scalar.Scalar(false),
      stringify: boolStringify
    };
    exports2.falseTag = falseTag;
    exports2.trueTag = trueTag;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/yaml-1.1/float.js
var require_float3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/yaml-1.1/float.js"(exports2) {
    "use strict";
    var Scalar = require_Scalar();
    var stringifyNumber = require_stringifyNumber();
    var floatNaN = {
      identify: (value) => typeof value === "number",
      default: true,
      tag: "tag:yaml.org,2002:float",
      test: /^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,
      resolve: (str2) => str2.slice(-3).toLowerCase() === "nan" ? NaN : str2[0] === "-" ? Number.NEGATIVE_INFINITY : Number.POSITIVE_INFINITY,
      stringify: stringifyNumber.stringifyNumber
    };
    var floatExp = {
      identify: (value) => typeof value === "number",
      default: true,
      tag: "tag:yaml.org,2002:float",
      format: "EXP",
      test: /^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,
      resolve: (str2) => parseFloat(str2.replace(/_/g, "")),
      stringify(node) {
        const num = Number(node.value);
        return isFinite(num) ? num.toExponential() : stringifyNumber.stringifyNumber(node);
      }
    };
    var float2 = {
      identify: (value) => typeof value === "number",
      default: true,
      tag: "tag:yaml.org,2002:float",
      test: /^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,
      resolve(str2) {
        const node = new Scalar.Scalar(parseFloat(str2.replace(/_/g, "")));
        const dot = str2.indexOf(".");
        if (dot !== -1) {
          const f = str2.substring(dot + 1).replace(/_/g, "");
          if (f[f.length - 1] === "0")
            node.minFractionDigits = f.length;
        }
        return node;
      },
      stringify: stringifyNumber.stringifyNumber
    };
    exports2.float = float2;
    exports2.floatExp = floatExp;
    exports2.floatNaN = floatNaN;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/yaml-1.1/int.js
var require_int3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/yaml-1.1/int.js"(exports2) {
    "use strict";
    var stringifyNumber = require_stringifyNumber();
    var intIdentify = (value) => typeof value === "bigint" || Number.isInteger(value);
    function intResolve(str2, offset, radix, { intAsBigInt }) {
      const sign = str2[0];
      if (sign === "-" || sign === "+")
        offset += 1;
      str2 = str2.substring(offset).replace(/_/g, "");
      if (intAsBigInt) {
        switch (radix) {
          case 2:
            str2 = `0b${str2}`;
            break;
          case 8:
            str2 = `0o${str2}`;
            break;
          case 16:
            str2 = `0x${str2}`;
            break;
        }
        const n3 = BigInt(str2);
        return sign === "-" ? BigInt(-1) * n3 : n3;
      }
      const n2 = parseInt(str2, radix);
      return sign === "-" ? -1 * n2 : n2;
    }
    function intStringify(node, radix, prefix) {
      const { value } = node;
      if (intIdentify(value)) {
        const str2 = value.toString(radix);
        return value < 0 ? "-" + prefix + str2.substr(1) : prefix + str2;
      }
      return stringifyNumber.stringifyNumber(node);
    }
    var intBin = {
      identify: intIdentify,
      default: true,
      tag: "tag:yaml.org,2002:int",
      format: "BIN",
      test: /^[-+]?0b[0-1_]+$/,
      resolve: (str2, _onError, opt) => intResolve(str2, 2, 2, opt),
      stringify: (node) => intStringify(node, 2, "0b")
    };
    var intOct = {
      identify: intIdentify,
      default: true,
      tag: "tag:yaml.org,2002:int",
      format: "OCT",
      test: /^[-+]?0[0-7_]+$/,
      resolve: (str2, _onError, opt) => intResolve(str2, 1, 8, opt),
      stringify: (node) => intStringify(node, 8, "0")
    };
    var int2 = {
      identify: intIdentify,
      default: true,
      tag: "tag:yaml.org,2002:int",
      test: /^[-+]?[0-9][0-9_]*$/,
      resolve: (str2, _onError, opt) => intResolve(str2, 0, 10, opt),
      stringify: stringifyNumber.stringifyNumber
    };
    var intHex = {
      identify: intIdentify,
      default: true,
      tag: "tag:yaml.org,2002:int",
      format: "HEX",
      test: /^[-+]?0x[0-9a-fA-F_]+$/,
      resolve: (str2, _onError, opt) => intResolve(str2, 2, 16, opt),
      stringify: (node) => intStringify(node, 16, "0x")
    };
    exports2.int = int2;
    exports2.intBin = intBin;
    exports2.intHex = intHex;
    exports2.intOct = intOct;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/yaml-1.1/set.js
var require_set2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/yaml-1.1/set.js"(exports2) {
    "use strict";
    var identity5 = require_identity();
    var Pair = require_Pair();
    var YAMLMap = require_YAMLMap();
    var YAMLSet = class _YAMLSet extends YAMLMap.YAMLMap {
      constructor(schema2) {
        super(schema2);
        this.tag = _YAMLSet.tag;
      }
      add(key) {
        let pair;
        if (identity5.isPair(key))
          pair = key;
        else if (key && typeof key === "object" && "key" in key && "value" in key && key.value === null)
          pair = new Pair.Pair(key.key, null);
        else
          pair = new Pair.Pair(key, null);
        const prev = YAMLMap.findPair(this.items, pair.key);
        if (!prev)
          this.items.push(pair);
      }
      /**
       * If `keepPair` is `true`, returns the Pair matching `key`.
       * Otherwise, returns the value of that Pair's key.
       */
      get(key, keepPair) {
        const pair = YAMLMap.findPair(this.items, key);
        return !keepPair && identity5.isPair(pair) ? identity5.isScalar(pair.key) ? pair.key.value : pair.key : pair;
      }
      set(key, value) {
        if (typeof value !== "boolean")
          throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof value}`);
        const prev = YAMLMap.findPair(this.items, key);
        if (prev && !value) {
          this.items.splice(this.items.indexOf(prev), 1);
        } else if (!prev && value) {
          this.items.push(new Pair.Pair(key));
        }
      }
      toJSON(_, ctx) {
        return super.toJSON(_, ctx, Set);
      }
      toString(ctx, onComment, onChompKeep) {
        if (!ctx)
          return JSON.stringify(this);
        if (this.hasAllNullValues(true))
          return super.toString(Object.assign({}, ctx, { allNullValues: true }), onComment, onChompKeep);
        else
          throw new Error("Set items must all have null values");
      }
      static from(schema2, iterable, ctx) {
        const { replacer: replacer2 } = ctx;
        const set3 = new this(schema2);
        if (iterable && Symbol.iterator in Object(iterable))
          for (let value of iterable) {
            if (typeof replacer2 === "function")
              value = replacer2.call(iterable, value, value);
            set3.items.push(Pair.createPair(value, null, ctx));
          }
        return set3;
      }
    };
    YAMLSet.tag = "tag:yaml.org,2002:set";
    var set2 = {
      collection: "map",
      identify: (value) => value instanceof Set,
      nodeClass: YAMLSet,
      default: false,
      tag: "tag:yaml.org,2002:set",
      createNode: (schema2, iterable, ctx) => YAMLSet.from(schema2, iterable, ctx),
      resolve(map26, onError) {
        if (identity5.isMap(map26)) {
          if (map26.hasAllNullValues(true))
            return Object.assign(new YAMLSet(), map26);
          else
            onError("Set items must all have null values");
        } else
          onError("Expected a mapping for this tag");
        return map26;
      }
    };
    exports2.YAMLSet = YAMLSet;
    exports2.set = set2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/yaml-1.1/timestamp.js
var require_timestamp2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/yaml-1.1/timestamp.js"(exports2) {
    "use strict";
    var stringifyNumber = require_stringifyNumber();
    function parseSexagesimal(str2, asBigInt) {
      const sign = str2[0];
      const parts = sign === "-" || sign === "+" ? str2.substring(1) : str2;
      const num = (n2) => asBigInt ? BigInt(n2) : Number(n2);
      const res = parts.replace(/_/g, "").split(":").reduce((res2, p) => res2 * num(60) + num(p), num(0));
      return sign === "-" ? num(-1) * res : res;
    }
    function stringifySexagesimal(node) {
      let { value } = node;
      let num = (n2) => n2;
      if (typeof value === "bigint")
        num = (n2) => BigInt(n2);
      else if (isNaN(value) || !isFinite(value))
        return stringifyNumber.stringifyNumber(node);
      let sign = "";
      if (value < 0) {
        sign = "-";
        value *= num(-1);
      }
      const _60 = num(60);
      const parts = [value % _60];
      if (value < 60) {
        parts.unshift(0);
      } else {
        value = (value - parts[0]) / _60;
        parts.unshift(value % _60);
        if (value >= 60) {
          value = (value - parts[0]) / _60;
          parts.unshift(value);
        }
      }
      return sign + parts.map((n2) => String(n2).padStart(2, "0")).join(":").replace(/000000\d*$/, "");
    }
    var intTime = {
      identify: (value) => typeof value === "bigint" || Number.isInteger(value),
      default: true,
      tag: "tag:yaml.org,2002:int",
      format: "TIME",
      test: /^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,
      resolve: (str2, _onError, { intAsBigInt }) => parseSexagesimal(str2, intAsBigInt),
      stringify: stringifySexagesimal
    };
    var floatTime = {
      identify: (value) => typeof value === "number",
      default: true,
      tag: "tag:yaml.org,2002:float",
      format: "TIME",
      test: /^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,
      resolve: (str2) => parseSexagesimal(str2, false),
      stringify: stringifySexagesimal
    };
    var timestamp2 = {
      identify: (value) => value instanceof Date,
      default: true,
      tag: "tag:yaml.org,2002:timestamp",
      // If the time zone is omitted, the timestamp is assumed to be specified in UTC. The time part
      // may be omitted altogether, resulting in a date format. In such a case, the time part is
      // assumed to be 00:00:00Z (start of day, UTC).
      test: RegExp("^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?$"),
      resolve(str2) {
        const match = str2.match(timestamp2.test);
        if (!match)
          throw new Error("!!timestamp expects a date, starting with yyyy-mm-dd");
        const [, year, month, day, hour, minute, second] = match.map(Number);
        const millisec = match[7] ? Number((match[7] + "00").substr(1, 3)) : 0;
        let date = Date.UTC(year, month - 1, day, hour || 0, minute || 0, second || 0, millisec);
        const tz = match[8];
        if (tz && tz !== "Z") {
          let d = parseSexagesimal(tz, false);
          if (Math.abs(d) < 30)
            d *= 60;
          date -= 6e4 * d;
        }
        return new Date(date);
      },
      stringify: ({ value }) => value?.toISOString().replace(/(T00:00:00)?\.000Z$/, "") ?? ""
    };
    exports2.floatTime = floatTime;
    exports2.intTime = intTime;
    exports2.timestamp = timestamp2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/yaml-1.1/schema.js
var require_schema4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/yaml-1.1/schema.js"(exports2) {
    "use strict";
    var map26 = require_map2();
    var _null2 = require_null2();
    var seq2 = require_seq2();
    var string = require_string3();
    var binary2 = require_binary2();
    var bool2 = require_bool3();
    var float2 = require_float3();
    var int2 = require_int3();
    var merge7 = require_merge3();
    var omap2 = require_omap2();
    var pairs2 = require_pairs2();
    var set2 = require_set2();
    var timestamp2 = require_timestamp2();
    var schema2 = [
      map26.map,
      seq2.seq,
      string.string,
      _null2.nullTag,
      bool2.trueTag,
      bool2.falseTag,
      int2.intBin,
      int2.intOct,
      int2.int,
      int2.intHex,
      float2.floatNaN,
      float2.floatExp,
      float2.float,
      binary2.binary,
      merge7.merge,
      omap2.omap,
      pairs2.pairs,
      set2.set,
      timestamp2.intTime,
      timestamp2.floatTime,
      timestamp2.timestamp
    ];
    exports2.schema = schema2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/tags.js
var require_tags = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/tags.js"(exports2) {
    "use strict";
    var map26 = require_map2();
    var _null2 = require_null2();
    var seq2 = require_seq2();
    var string = require_string3();
    var bool2 = require_bool2();
    var float2 = require_float2();
    var int2 = require_int2();
    var schema2 = require_schema2();
    var schema$1 = require_schema3();
    var binary2 = require_binary2();
    var merge7 = require_merge3();
    var omap2 = require_omap2();
    var pairs2 = require_pairs2();
    var schema$2 = require_schema4();
    var set2 = require_set2();
    var timestamp2 = require_timestamp2();
    var schemas = /* @__PURE__ */ new Map([
      ["core", schema2.schema],
      ["failsafe", [map26.map, seq2.seq, string.string]],
      ["json", schema$1.schema],
      ["yaml11", schema$2.schema],
      ["yaml-1.1", schema$2.schema]
    ]);
    var tagsByName = {
      binary: binary2.binary,
      bool: bool2.boolTag,
      float: float2.float,
      floatExp: float2.floatExp,
      floatNaN: float2.floatNaN,
      floatTime: timestamp2.floatTime,
      int: int2.int,
      intHex: int2.intHex,
      intOct: int2.intOct,
      intTime: timestamp2.intTime,
      map: map26.map,
      merge: merge7.merge,
      null: _null2.nullTag,
      omap: omap2.omap,
      pairs: pairs2.pairs,
      seq: seq2.seq,
      set: set2.set,
      timestamp: timestamp2.timestamp
    };
    var coreKnownTags = {
      "tag:yaml.org,2002:binary": binary2.binary,
      "tag:yaml.org,2002:merge": merge7.merge,
      "tag:yaml.org,2002:omap": omap2.omap,
      "tag:yaml.org,2002:pairs": pairs2.pairs,
      "tag:yaml.org,2002:set": set2.set,
      "tag:yaml.org,2002:timestamp": timestamp2.timestamp
    };
    function getTags(customTags, schemaName, addMergeTag) {
      const schemaTags = schemas.get(schemaName);
      if (schemaTags && !customTags) {
        return addMergeTag && !schemaTags.includes(merge7.merge) ? schemaTags.concat(merge7.merge) : schemaTags.slice();
      }
      let tags = schemaTags;
      if (!tags) {
        if (Array.isArray(customTags))
          tags = [];
        else {
          const keys4 = Array.from(schemas.keys()).filter((key) => key !== "yaml11").map((key) => JSON.stringify(key)).join(", ");
          throw new Error(`Unknown schema "${schemaName}"; use one of ${keys4} or define customTags array`);
        }
      }
      if (Array.isArray(customTags)) {
        for (const tag of customTags)
          tags = tags.concat(tag);
      } else if (typeof customTags === "function") {
        tags = customTags(tags.slice());
      }
      if (addMergeTag)
        tags = tags.concat(merge7.merge);
      return tags.reduce((tags2, tag) => {
        const tagObj = typeof tag === "string" ? tagsByName[tag] : tag;
        if (!tagObj) {
          const tagName = JSON.stringify(tag);
          const keys4 = Object.keys(tagsByName).map((key) => JSON.stringify(key)).join(", ");
          throw new Error(`Unknown custom tag ${tagName}; use one of ${keys4}`);
        }
        if (!tags2.includes(tagObj))
          tags2.push(tagObj);
        return tags2;
      }, []);
    }
    exports2.coreKnownTags = coreKnownTags;
    exports2.getTags = getTags;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/Schema.js
var require_Schema = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/schema/Schema.js"(exports2) {
    "use strict";
    var identity5 = require_identity();
    var map26 = require_map2();
    var seq2 = require_seq2();
    var string = require_string3();
    var tags = require_tags();
    var sortMapEntriesByKey = (a2, b) => a2.key < b.key ? -1 : a2.key > b.key ? 1 : 0;
    var Schema2 = class _Schema {
      constructor({ compat, customTags, merge: merge7, resolveKnownTags, schema: schema2, sortMapEntries, toStringDefaults }) {
        this.compat = Array.isArray(compat) ? tags.getTags(compat, "compat") : compat ? tags.getTags(null, compat) : null;
        this.name = typeof schema2 === "string" && schema2 || "core";
        this.knownTags = resolveKnownTags ? tags.coreKnownTags : {};
        this.tags = tags.getTags(customTags, this.name, merge7);
        this.toStringOptions = toStringDefaults ?? null;
        Object.defineProperty(this, identity5.MAP, { value: map26.map });
        Object.defineProperty(this, identity5.SCALAR, { value: string.string });
        Object.defineProperty(this, identity5.SEQ, { value: seq2.seq });
        this.sortMapEntries = typeof sortMapEntries === "function" ? sortMapEntries : sortMapEntries === true ? sortMapEntriesByKey : null;
      }
      clone() {
        const copy2 = Object.create(_Schema.prototype, Object.getOwnPropertyDescriptors(this));
        copy2.tags = this.tags.slice();
        return copy2;
      }
    };
    exports2.Schema = Schema2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/stringify/stringifyDocument.js
var require_stringifyDocument = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/stringify/stringifyDocument.js"(exports2) {
    "use strict";
    var identity5 = require_identity();
    var stringify = require_stringify3();
    var stringifyComment = require_stringifyComment();
    function stringifyDocument(doc, options) {
      const lines = [];
      let hasDirectives = options.directives === true;
      if (options.directives !== false && doc.directives) {
        const dir = doc.directives.toString(doc);
        if (dir) {
          lines.push(dir);
          hasDirectives = true;
        } else if (doc.directives.docStart)
          hasDirectives = true;
      }
      if (hasDirectives)
        lines.push("---");
      const ctx = stringify.createStringifyContext(doc, options);
      const { commentString } = ctx.options;
      if (doc.commentBefore) {
        if (lines.length !== 1)
          lines.unshift("");
        const cs = commentString(doc.commentBefore);
        lines.unshift(stringifyComment.indentComment(cs, ""));
      }
      let chompKeep = false;
      let contentComment = null;
      if (doc.contents) {
        if (identity5.isNode(doc.contents)) {
          if (doc.contents.spaceBefore && hasDirectives)
            lines.push("");
          if (doc.contents.commentBefore) {
            const cs = commentString(doc.contents.commentBefore);
            lines.push(stringifyComment.indentComment(cs, ""));
          }
          ctx.forceBlockIndent = !!doc.comment;
          contentComment = doc.contents.comment;
        }
        const onChompKeep = contentComment ? void 0 : () => chompKeep = true;
        let body = stringify.stringify(doc.contents, ctx, () => contentComment = null, onChompKeep);
        if (contentComment)
          body += stringifyComment.lineComment(body, "", commentString(contentComment));
        if ((body[0] === "|" || body[0] === ">") && lines[lines.length - 1] === "---") {
          lines[lines.length - 1] = `--- ${body}`;
        } else
          lines.push(body);
      } else {
        lines.push(stringify.stringify(doc.contents, ctx));
      }
      if (doc.directives?.docEnd) {
        if (doc.comment) {
          const cs = commentString(doc.comment);
          if (cs.includes("\n")) {
            lines.push("...");
            lines.push(stringifyComment.indentComment(cs, ""));
          } else {
            lines.push(`... ${cs}`);
          }
        } else {
          lines.push("...");
        }
      } else {
        let dc = doc.comment;
        if (dc && chompKeep)
          dc = dc.replace(/^\n+/, "");
        if (dc) {
          if ((!chompKeep || contentComment) && lines[lines.length - 1] !== "")
            lines.push("");
          lines.push(stringifyComment.indentComment(commentString(dc), ""));
        }
      }
      return lines.join("\n") + "\n";
    }
    exports2.stringifyDocument = stringifyDocument;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/doc/Document.js
var require_Document = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/doc/Document.js"(exports2) {
    "use strict";
    var Alias = require_Alias();
    var Collection = require_Collection();
    var identity5 = require_identity();
    var Pair = require_Pair();
    var toJS = require_toJS();
    var Schema2 = require_Schema();
    var stringifyDocument = require_stringifyDocument();
    var anchors = require_anchors();
    var applyReviver = require_applyReviver();
    var createNode = require_createNode();
    var directives = require_directives();
    var Document = class _Document {
      constructor(value, replacer2, options) {
        this.commentBefore = null;
        this.comment = null;
        this.errors = [];
        this.warnings = [];
        Object.defineProperty(this, identity5.NODE_TYPE, { value: identity5.DOC });
        let _replacer = null;
        if (typeof replacer2 === "function" || Array.isArray(replacer2)) {
          _replacer = replacer2;
        } else if (options === void 0 && replacer2) {
          options = replacer2;
          replacer2 = void 0;
        }
        const opt = Object.assign({
          intAsBigInt: false,
          keepSourceTokens: false,
          logLevel: "warn",
          prettyErrors: true,
          strict: true,
          stringKeys: false,
          uniqueKeys: true,
          version: "1.2"
        }, options);
        this.options = opt;
        let { version: version2 } = opt;
        if (options?._directives) {
          this.directives = options._directives.atDocument();
          if (this.directives.yaml.explicit)
            version2 = this.directives.yaml.version;
        } else
          this.directives = new directives.Directives({ version: version2 });
        this.setSchema(version2, options);
        this.contents = value === void 0 ? null : this.createNode(value, _replacer, options);
      }
      /**
       * Create a deep copy of this Document and its contents.
       *
       * Custom Node values that inherit from `Object` still refer to their original instances.
       */
      clone() {
        const copy2 = Object.create(_Document.prototype, {
          [identity5.NODE_TYPE]: { value: identity5.DOC }
        });
        copy2.commentBefore = this.commentBefore;
        copy2.comment = this.comment;
        copy2.errors = this.errors.slice();
        copy2.warnings = this.warnings.slice();
        copy2.options = Object.assign({}, this.options);
        if (this.directives)
          copy2.directives = this.directives.clone();
        copy2.schema = this.schema.clone();
        copy2.contents = identity5.isNode(this.contents) ? this.contents.clone(copy2.schema) : this.contents;
        if (this.range)
          copy2.range = this.range.slice();
        return copy2;
      }
      /** Adds a value to the document. */
      add(value) {
        if (assertCollection(this.contents))
          this.contents.add(value);
      }
      /** Adds a value to the document. */
      addIn(path218, value) {
        if (assertCollection(this.contents))
          this.contents.addIn(path218, value);
      }
      /**
       * Create a new `Alias` node, ensuring that the target `node` has the required anchor.
       *
       * If `node` already has an anchor, `name` is ignored.
       * Otherwise, the `node.anchor` value will be set to `name`,
       * or if an anchor with that name is already present in the document,
       * `name` will be used as a prefix for a new unique anchor.
       * If `name` is undefined, the generated anchor will use 'a' as a prefix.
       */
      createAlias(node, name) {
        if (!node.anchor) {
          const prev = anchors.anchorNames(this);
          node.anchor = // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
          !name || prev.has(name) ? anchors.findNewAnchor(name || "a", prev) : name;
        }
        return new Alias.Alias(node.anchor);
      }
      createNode(value, replacer2, options) {
        let _replacer = void 0;
        if (typeof replacer2 === "function") {
          value = replacer2.call({ "": value }, "", value);
          _replacer = replacer2;
        } else if (Array.isArray(replacer2)) {
          const keyToStr = (v) => typeof v === "number" || v instanceof String || v instanceof Number;
          const asStr = replacer2.filter(keyToStr).map(String);
          if (asStr.length > 0)
            replacer2 = replacer2.concat(asStr);
          _replacer = replacer2;
        } else if (options === void 0 && replacer2) {
          options = replacer2;
          replacer2 = void 0;
        }
        const { aliasDuplicateObjects, anchorPrefix, flow, keepUndefined, onTagObj, tag } = options ?? {};
        const { onAnchor, setAnchors, sourceObjects } = anchors.createNodeAnchors(
          this,
          // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
          anchorPrefix || "a"
        );
        const ctx = {
          aliasDuplicateObjects: aliasDuplicateObjects ?? true,
          keepUndefined: keepUndefined ?? false,
          onAnchor,
          onTagObj,
          replacer: _replacer,
          schema: this.schema,
          sourceObjects
        };
        const node = createNode.createNode(value, tag, ctx);
        if (flow && identity5.isCollection(node))
          node.flow = true;
        setAnchors();
        return node;
      }
      /**
       * Convert a key and a value into a `Pair` using the current schema,
       * recursively wrapping all values as `Scalar` or `Collection` nodes.
       */
      createPair(key, value, options = {}) {
        const k2 = this.createNode(key, null, options);
        const v = this.createNode(value, null, options);
        return new Pair.Pair(k2, v);
      }
      /**
       * Removes a value from the document.
       * @returns `true` if the item was found and removed.
       */
      delete(key) {
        return assertCollection(this.contents) ? this.contents.delete(key) : false;
      }
      /**
       * Removes a value from the document.
       * @returns `true` if the item was found and removed.
       */
      deleteIn(path218) {
        if (Collection.isEmptyPath(path218)) {
          if (this.contents == null)
            return false;
          this.contents = null;
          return true;
        }
        return assertCollection(this.contents) ? this.contents.deleteIn(path218) : false;
      }
      /**
       * Returns item at `key`, or `undefined` if not found. By default unwraps
       * scalar values from their surrounding node; to disable set `keepScalar` to
       * `true` (collections are always returned intact).
       */
      get(key, keepScalar) {
        return identity5.isCollection(this.contents) ? this.contents.get(key, keepScalar) : void 0;
      }
      /**
       * Returns item at `path`, or `undefined` if not found. By default unwraps
       * scalar values from their surrounding node; to disable set `keepScalar` to
       * `true` (collections are always returned intact).
       */
      getIn(path218, keepScalar) {
        if (Collection.isEmptyPath(path218))
          return !keepScalar && identity5.isScalar(this.contents) ? this.contents.value : this.contents;
        return identity5.isCollection(this.contents) ? this.contents.getIn(path218, keepScalar) : void 0;
      }
      /**
       * Checks if the document includes a value with the key `key`.
       */
      has(key) {
        return identity5.isCollection(this.contents) ? this.contents.has(key) : false;
      }
      /**
       * Checks if the document includes a value at `path`.
       */
      hasIn(path218) {
        if (Collection.isEmptyPath(path218))
          return this.contents !== void 0;
        return identity5.isCollection(this.contents) ? this.contents.hasIn(path218) : false;
      }
      /**
       * Sets a value in this document. For `!!set`, `value` needs to be a
       * boolean to add/remove the item from the set.
       */
      set(key, value) {
        if (this.contents == null) {
          this.contents = Collection.collectionFromPath(this.schema, [key], value);
        } else if (assertCollection(this.contents)) {
          this.contents.set(key, value);
        }
      }
      /**
       * Sets a value in this document. For `!!set`, `value` needs to be a
       * boolean to add/remove the item from the set.
       */
      setIn(path218, value) {
        if (Collection.isEmptyPath(path218)) {
          this.contents = value;
        } else if (this.contents == null) {
          this.contents = Collection.collectionFromPath(this.schema, Array.from(path218), value);
        } else if (assertCollection(this.contents)) {
          this.contents.setIn(path218, value);
        }
      }
      /**
       * Change the YAML version and schema used by the document.
       * A `null` version disables support for directives, explicit tags, anchors, and aliases.
       * It also requires the `schema` option to be given as a `Schema` instance value.
       *
       * Overrides all previously set schema options.
       */
      setSchema(version2, options = {}) {
        if (typeof version2 === "number")
          version2 = String(version2);
        let opt;
        switch (version2) {
          case "1.1":
            if (this.directives)
              this.directives.yaml.version = "1.1";
            else
              this.directives = new directives.Directives({ version: "1.1" });
            opt = { resolveKnownTags: false, schema: "yaml-1.1" };
            break;
          case "1.2":
          case "next":
            if (this.directives)
              this.directives.yaml.version = version2;
            else
              this.directives = new directives.Directives({ version: version2 });
            opt = { resolveKnownTags: true, schema: "core" };
            break;
          case null:
            if (this.directives)
              delete this.directives;
            opt = null;
            break;
          default: {
            const sv = JSON.stringify(version2);
            throw new Error(`Expected '1.1', '1.2' or null as first argument, but found: ${sv}`);
          }
        }
        if (options.schema instanceof Object)
          this.schema = options.schema;
        else if (opt)
          this.schema = new Schema2.Schema(Object.assign(opt, options));
        else
          throw new Error(`With a null YAML version, the { schema: Schema } option is required`);
      }
      // json & jsonArg are only used from toJSON()
      toJS({ json: json2, jsonArg, mapAsMap, maxAliasCount, onAnchor, reviver } = {}) {
        const ctx = {
          anchors: /* @__PURE__ */ new Map(),
          doc: this,
          keep: !json2,
          mapAsMap: mapAsMap === true,
          mapKeyWarned: false,
          maxAliasCount: typeof maxAliasCount === "number" ? maxAliasCount : 100
        };
        const res = toJS.toJS(this.contents, jsonArg ?? "", ctx);
        if (typeof onAnchor === "function")
          for (const { count: count2, res: res2 } of ctx.anchors.values())
            onAnchor(res2, count2);
        return typeof reviver === "function" ? applyReviver.applyReviver(reviver, { "": res }, "", res) : res;
      }
      /**
       * A JSON representation of the document `contents`.
       *
       * @param jsonArg Used by `JSON.stringify` to indicate the array index or
       *   property name.
       */
      toJSON(jsonArg, onAnchor) {
        return this.toJS({ json: true, jsonArg, mapAsMap: false, onAnchor });
      }
      /** A YAML representation of the document. */
      toString(options = {}) {
        if (this.errors.length > 0)
          throw new Error("Document with errors cannot be stringified");
        if ("indent" in options && (!Number.isInteger(options.indent) || Number(options.indent) <= 0)) {
          const s = JSON.stringify(options.indent);
          throw new Error(`"indent" option must be a positive integer, not ${s}`);
        }
        return stringifyDocument.stringifyDocument(this, options);
      }
    };
    function assertCollection(contents) {
      if (identity5.isCollection(contents))
        return true;
      throw new Error("Expected a YAML collection as document contents");
    }
    exports2.Document = Document;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/errors.js
var require_errors6 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/errors.js"(exports2) {
    "use strict";
    var YAMLError = class extends Error {
      constructor(name, pos, code, message) {
        super();
        this.name = name;
        this.code = code;
        this.message = message;
        this.pos = pos;
      }
    };
    var YAMLParseError = class extends YAMLError {
      constructor(pos, code, message) {
        super("YAMLParseError", pos, code, message);
      }
    };
    var YAMLWarning = class extends YAMLError {
      constructor(pos, code, message) {
        super("YAMLWarning", pos, code, message);
      }
    };
    var prettifyError = (src2, lc) => (error) => {
      if (error.pos[0] === -1)
        return;
      error.linePos = error.pos.map((pos) => lc.linePos(pos));
      const { line, col } = error.linePos[0];
      error.message += ` at line ${line}, column ${col}`;
      let ci = col - 1;
      let lineStr = src2.substring(lc.lineStarts[line - 1], lc.lineStarts[line]).replace(/[\n\r]+$/, "");
      if (ci >= 60 && lineStr.length > 80) {
        const trimStart = Math.min(ci - 39, lineStr.length - 79);
        lineStr = "\u2026" + lineStr.substring(trimStart);
        ci -= trimStart - 1;
      }
      if (lineStr.length > 80)
        lineStr = lineStr.substring(0, 79) + "\u2026";
      if (line > 1 && /^ *$/.test(lineStr.substring(0, ci))) {
        let prev = src2.substring(lc.lineStarts[line - 2], lc.lineStarts[line - 1]);
        if (prev.length > 80)
          prev = prev.substring(0, 79) + "\u2026\n";
        lineStr = prev + lineStr;
      }
      if (/[^ ]/.test(lineStr)) {
        let count2 = 1;
        const end = error.linePos[1];
        if (end?.line === line && end.col > col) {
          count2 = Math.max(1, Math.min(end.col - col, 80 - ci));
        }
        const pointer = " ".repeat(ci) + "^".repeat(count2);
        error.message += `:

${lineStr}
${pointer}
`;
      }
    };
    exports2.YAMLError = YAMLError;
    exports2.YAMLParseError = YAMLParseError;
    exports2.YAMLWarning = YAMLWarning;
    exports2.prettifyError = prettifyError;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/resolve-props.js
var require_resolve_props = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/resolve-props.js"(exports2) {
    "use strict";
    function resolveProps(tokens, { flow, indicator, next: next2, offset, onError, parentIndent, startOnNewline }) {
      let spaceBefore = false;
      let atNewline = startOnNewline;
      let hasSpace = startOnNewline;
      let comment = "";
      let commentSep = "";
      let hasNewline = false;
      let reqSpace = false;
      let tab = null;
      let anchor = null;
      let tag = null;
      let newlineAfterProp = null;
      let comma = null;
      let found = null;
      let start = null;
      for (const token of tokens) {
        if (reqSpace) {
          if (token.type !== "space" && token.type !== "newline" && token.type !== "comma")
            onError(token.offset, "MISSING_CHAR", "Tags and anchors must be separated from the next token by white space");
          reqSpace = false;
        }
        if (tab) {
          if (atNewline && token.type !== "comment" && token.type !== "newline") {
            onError(tab, "TAB_AS_INDENT", "Tabs are not allowed as indentation");
          }
          tab = null;
        }
        switch (token.type) {
          case "space":
            if (!flow && (indicator !== "doc-start" || next2?.type !== "flow-collection") && token.source.includes("	")) {
              tab = token;
            }
            hasSpace = true;
            break;
          case "comment": {
            if (!hasSpace)
              onError(token, "MISSING_CHAR", "Comments must be separated from other tokens by white space characters");
            const cb = token.source.substring(1) || " ";
            if (!comment)
              comment = cb;
            else
              comment += commentSep + cb;
            commentSep = "";
            atNewline = false;
            break;
          }
          case "newline":
            if (atNewline) {
              if (comment)
                comment += token.source;
              else if (!found || indicator !== "seq-item-ind")
                spaceBefore = true;
            } else
              commentSep += token.source;
            atNewline = true;
            hasNewline = true;
            if (anchor || tag)
              newlineAfterProp = token;
            hasSpace = true;
            break;
          case "anchor":
            if (anchor)
              onError(token, "MULTIPLE_ANCHORS", "A node can have at most one anchor");
            if (token.source.endsWith(":"))
              onError(token.offset + token.source.length - 1, "BAD_ALIAS", "Anchor ending in : is ambiguous", true);
            anchor = token;
            start ?? (start = token.offset);
            atNewline = false;
            hasSpace = false;
            reqSpace = true;
            break;
          case "tag": {
            if (tag)
              onError(token, "MULTIPLE_TAGS", "A node can have at most one tag");
            tag = token;
            start ?? (start = token.offset);
            atNewline = false;
            hasSpace = false;
            reqSpace = true;
            break;
          }
          case indicator:
            if (anchor || tag)
              onError(token, "BAD_PROP_ORDER", `Anchors and tags must be after the ${token.source} indicator`);
            if (found)
              onError(token, "UNEXPECTED_TOKEN", `Unexpected ${token.source} in ${flow ?? "collection"}`);
            found = token;
            atNewline = indicator === "seq-item-ind" || indicator === "explicit-key-ind";
            hasSpace = false;
            break;
          case "comma":
            if (flow) {
              if (comma)
                onError(token, "UNEXPECTED_TOKEN", `Unexpected , in ${flow}`);
              comma = token;
              atNewline = false;
              hasSpace = false;
              break;
            }
          // else fallthrough
          default:
            onError(token, "UNEXPECTED_TOKEN", `Unexpected ${token.type} token`);
            atNewline = false;
            hasSpace = false;
        }
      }
      const last = tokens[tokens.length - 1];
      const end = last ? last.offset + last.source.length : offset;
      if (reqSpace && next2 && next2.type !== "space" && next2.type !== "newline" && next2.type !== "comma" && (next2.type !== "scalar" || next2.source !== "")) {
        onError(next2.offset, "MISSING_CHAR", "Tags and anchors must be separated from the next token by white space");
      }
      if (tab && (atNewline && tab.indent <= parentIndent || next2?.type === "block-map" || next2?.type === "block-seq"))
        onError(tab, "TAB_AS_INDENT", "Tabs are not allowed as indentation");
      return {
        comma,
        found,
        spaceBefore,
        comment,
        hasNewline,
        anchor,
        tag,
        newlineAfterProp,
        end,
        start: start ?? end
      };
    }
    exports2.resolveProps = resolveProps;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/util-contains-newline.js
var require_util_contains_newline = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/util-contains-newline.js"(exports2) {
    "use strict";
    function containsNewline(key) {
      if (!key)
        return null;
      switch (key.type) {
        case "alias":
        case "scalar":
        case "double-quoted-scalar":
        case "single-quoted-scalar":
          if (key.source.includes("\n"))
            return true;
          if (key.end) {
            for (const st of key.end)
              if (st.type === "newline")
                return true;
          }
          return false;
        case "flow-collection":
          for (const it of key.items) {
            for (const st of it.start)
              if (st.type === "newline")
                return true;
            if (it.sep) {
              for (const st of it.sep)
                if (st.type === "newline")
                  return true;
            }
            if (containsNewline(it.key) || containsNewline(it.value))
              return true;
          }
          return false;
        default:
          return true;
      }
    }
    exports2.containsNewline = containsNewline;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/util-flow-indent-check.js
var require_util_flow_indent_check = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/util-flow-indent-check.js"(exports2) {
    "use strict";
    var utilContainsNewline = require_util_contains_newline();
    function flowIndentCheck(indent, fc, onError) {
      if (fc?.type === "flow-collection") {
        const end = fc.end[0];
        if (end.indent === indent && (end.source === "]" || end.source === "}") && utilContainsNewline.containsNewline(fc)) {
          const msg = "Flow end indicator should be more indented than parent";
          onError(end, "BAD_INDENT", msg, true);
        }
      }
    }
    exports2.flowIndentCheck = flowIndentCheck;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/util-map-includes.js
var require_util_map_includes = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/util-map-includes.js"(exports2) {
    "use strict";
    var identity5 = require_identity();
    function mapIncludes(ctx, items, search2) {
      const { uniqueKeys } = ctx.options;
      if (uniqueKeys === false)
        return false;
      const isEqual2 = typeof uniqueKeys === "function" ? uniqueKeys : (a2, b) => a2 === b || identity5.isScalar(a2) && identity5.isScalar(b) && a2.value === b.value;
      return items.some((pair) => isEqual2(pair.key, search2));
    }
    exports2.mapIncludes = mapIncludes;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/resolve-block-map.js
var require_resolve_block_map = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/resolve-block-map.js"(exports2) {
    "use strict";
    var Pair = require_Pair();
    var YAMLMap = require_YAMLMap();
    var resolveProps = require_resolve_props();
    var utilContainsNewline = require_util_contains_newline();
    var utilFlowIndentCheck = require_util_flow_indent_check();
    var utilMapIncludes = require_util_map_includes();
    var startColMsg = "All mapping items must start at the same column";
    function resolveBlockMap({ composeNode: composeNode2, composeEmptyNode }, ctx, bm, onError, tag) {
      const NodeClass = tag?.nodeClass ?? YAMLMap.YAMLMap;
      const map26 = new NodeClass(ctx.schema);
      if (ctx.atRoot)
        ctx.atRoot = false;
      let offset = bm.offset;
      let commentEnd = null;
      for (const collItem of bm.items) {
        const { start, key, sep: sep2, value } = collItem;
        const keyProps = resolveProps.resolveProps(start, {
          indicator: "explicit-key-ind",
          next: key ?? sep2?.[0],
          offset,
          onError,
          parentIndent: bm.indent,
          startOnNewline: true
        });
        const implicitKey = !keyProps.found;
        if (implicitKey) {
          if (key) {
            if (key.type === "block-seq")
              onError(offset, "BLOCK_AS_IMPLICIT_KEY", "A block sequence may not be used as an implicit map key");
            else if ("indent" in key && key.indent !== bm.indent)
              onError(offset, "BAD_INDENT", startColMsg);
          }
          if (!keyProps.anchor && !keyProps.tag && !sep2) {
            commentEnd = keyProps.end;
            if (keyProps.comment) {
              if (map26.comment)
                map26.comment += "\n" + keyProps.comment;
              else
                map26.comment = keyProps.comment;
            }
            continue;
          }
          if (keyProps.newlineAfterProp || utilContainsNewline.containsNewline(key)) {
            onError(key ?? start[start.length - 1], "MULTILINE_IMPLICIT_KEY", "Implicit keys need to be on a single line");
          }
        } else if (keyProps.found?.indent !== bm.indent) {
          onError(offset, "BAD_INDENT", startColMsg);
        }
        ctx.atKey = true;
        const keyStart = keyProps.end;
        const keyNode = key ? composeNode2(ctx, key, keyProps, onError) : composeEmptyNode(ctx, keyStart, start, null, keyProps, onError);
        if (ctx.schema.compat)
          utilFlowIndentCheck.flowIndentCheck(bm.indent, key, onError);
        ctx.atKey = false;
        if (utilMapIncludes.mapIncludes(ctx, map26.items, keyNode))
          onError(keyStart, "DUPLICATE_KEY", "Map keys must be unique");
        const valueProps = resolveProps.resolveProps(sep2 ?? [], {
          indicator: "map-value-ind",
          next: value,
          offset: keyNode.range[2],
          onError,
          parentIndent: bm.indent,
          startOnNewline: !key || key.type === "block-scalar"
        });
        offset = valueProps.end;
        if (valueProps.found) {
          if (implicitKey) {
            if (value?.type === "block-map" && !valueProps.hasNewline)
              onError(offset, "BLOCK_AS_IMPLICIT_KEY", "Nested mappings are not allowed in compact mappings");
            if (ctx.options.strict && keyProps.start < valueProps.found.offset - 1024)
              onError(keyNode.range, "KEY_OVER_1024_CHARS", "The : indicator must be at most 1024 chars after the start of an implicit block mapping key");
          }
          const valueNode = value ? composeNode2(ctx, value, valueProps, onError) : composeEmptyNode(ctx, offset, sep2, null, valueProps, onError);
          if (ctx.schema.compat)
            utilFlowIndentCheck.flowIndentCheck(bm.indent, value, onError);
          offset = valueNode.range[2];
          const pair = new Pair.Pair(keyNode, valueNode);
          if (ctx.options.keepSourceTokens)
            pair.srcToken = collItem;
          map26.items.push(pair);
        } else {
          if (implicitKey)
            onError(keyNode.range, "MISSING_CHAR", "Implicit map keys need to be followed by map values");
          if (valueProps.comment) {
            if (keyNode.comment)
              keyNode.comment += "\n" + valueProps.comment;
            else
              keyNode.comment = valueProps.comment;
          }
          const pair = new Pair.Pair(keyNode);
          if (ctx.options.keepSourceTokens)
            pair.srcToken = collItem;
          map26.items.push(pair);
        }
      }
      if (commentEnd && commentEnd < offset)
        onError(commentEnd, "IMPOSSIBLE", "Map comment with trailing content");
      map26.range = [bm.offset, offset, commentEnd ?? offset];
      return map26;
    }
    exports2.resolveBlockMap = resolveBlockMap;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/resolve-block-seq.js
var require_resolve_block_seq = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/resolve-block-seq.js"(exports2) {
    "use strict";
    var YAMLSeq = require_YAMLSeq();
    var resolveProps = require_resolve_props();
    var utilFlowIndentCheck = require_util_flow_indent_check();
    function resolveBlockSeq({ composeNode: composeNode2, composeEmptyNode }, ctx, bs, onError, tag) {
      const NodeClass = tag?.nodeClass ?? YAMLSeq.YAMLSeq;
      const seq2 = new NodeClass(ctx.schema);
      if (ctx.atRoot)
        ctx.atRoot = false;
      if (ctx.atKey)
        ctx.atKey = false;
      let offset = bs.offset;
      let commentEnd = null;
      for (const { start, value } of bs.items) {
        const props3 = resolveProps.resolveProps(start, {
          indicator: "seq-item-ind",
          next: value,
          offset,
          onError,
          parentIndent: bs.indent,
          startOnNewline: true
        });
        if (!props3.found) {
          if (props3.anchor || props3.tag || value) {
            if (value?.type === "block-seq")
              onError(props3.end, "BAD_INDENT", "All sequence items must start at the same column");
            else
              onError(offset, "MISSING_CHAR", "Sequence item without - indicator");
          } else {
            commentEnd = props3.end;
            if (props3.comment)
              seq2.comment = props3.comment;
            continue;
          }
        }
        const node = value ? composeNode2(ctx, value, props3, onError) : composeEmptyNode(ctx, props3.end, start, null, props3, onError);
        if (ctx.schema.compat)
          utilFlowIndentCheck.flowIndentCheck(bs.indent, value, onError);
        offset = node.range[2];
        seq2.items.push(node);
      }
      seq2.range = [bs.offset, offset, commentEnd ?? offset];
      return seq2;
    }
    exports2.resolveBlockSeq = resolveBlockSeq;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/resolve-end.js
var require_resolve_end = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/resolve-end.js"(exports2) {
    "use strict";
    function resolveEnd(end, offset, reqSpace, onError) {
      let comment = "";
      if (end) {
        let hasSpace = false;
        let sep2 = "";
        for (const token of end) {
          const { source, type: type4 } = token;
          switch (type4) {
            case "space":
              hasSpace = true;
              break;
            case "comment": {
              if (reqSpace && !hasSpace)
                onError(token, "MISSING_CHAR", "Comments must be separated from other tokens by white space characters");
              const cb = source.substring(1) || " ";
              if (!comment)
                comment = cb;
              else
                comment += sep2 + cb;
              sep2 = "";
              break;
            }
            case "newline":
              if (comment)
                sep2 += source;
              hasSpace = true;
              break;
            default:
              onError(token, "UNEXPECTED_TOKEN", `Unexpected ${type4} at node end`);
          }
          offset += source.length;
        }
      }
      return { comment, offset };
    }
    exports2.resolveEnd = resolveEnd;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/resolve-flow-collection.js
var require_resolve_flow_collection = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/resolve-flow-collection.js"(exports2) {
    "use strict";
    var identity5 = require_identity();
    var Pair = require_Pair();
    var YAMLMap = require_YAMLMap();
    var YAMLSeq = require_YAMLSeq();
    var resolveEnd = require_resolve_end();
    var resolveProps = require_resolve_props();
    var utilContainsNewline = require_util_contains_newline();
    var utilMapIncludes = require_util_map_includes();
    var blockMsg = "Block collections are not allowed within flow collections";
    var isBlock = (token) => token && (token.type === "block-map" || token.type === "block-seq");
    function resolveFlowCollection({ composeNode: composeNode2, composeEmptyNode }, ctx, fc, onError, tag) {
      const isMap = fc.start.source === "{";
      const fcName = isMap ? "flow map" : "flow sequence";
      const NodeClass = tag?.nodeClass ?? (isMap ? YAMLMap.YAMLMap : YAMLSeq.YAMLSeq);
      const coll = new NodeClass(ctx.schema);
      coll.flow = true;
      const atRoot = ctx.atRoot;
      if (atRoot)
        ctx.atRoot = false;
      if (ctx.atKey)
        ctx.atKey = false;
      let offset = fc.offset + fc.start.source.length;
      for (let i2 = 0; i2 < fc.items.length; ++i2) {
        const collItem = fc.items[i2];
        const { start, key, sep: sep2, value } = collItem;
        const props3 = resolveProps.resolveProps(start, {
          flow: fcName,
          indicator: "explicit-key-ind",
          next: key ?? sep2?.[0],
          offset,
          onError,
          parentIndent: fc.indent,
          startOnNewline: false
        });
        if (!props3.found) {
          if (!props3.anchor && !props3.tag && !sep2 && !value) {
            if (i2 === 0 && props3.comma)
              onError(props3.comma, "UNEXPECTED_TOKEN", `Unexpected , in ${fcName}`);
            else if (i2 < fc.items.length - 1)
              onError(props3.start, "UNEXPECTED_TOKEN", `Unexpected empty item in ${fcName}`);
            if (props3.comment) {
              if (coll.comment)
                coll.comment += "\n" + props3.comment;
              else
                coll.comment = props3.comment;
            }
            offset = props3.end;
            continue;
          }
          if (!isMap && ctx.options.strict && utilContainsNewline.containsNewline(key))
            onError(
              key,
              // checked by containsNewline()
              "MULTILINE_IMPLICIT_KEY",
              "Implicit keys of flow sequence pairs need to be on a single line"
            );
        }
        if (i2 === 0) {
          if (props3.comma)
            onError(props3.comma, "UNEXPECTED_TOKEN", `Unexpected , in ${fcName}`);
        } else {
          if (!props3.comma)
            onError(props3.start, "MISSING_CHAR", `Missing , between ${fcName} items`);
          if (props3.comment) {
            let prevItemComment = "";
            loop: for (const st of start) {
              switch (st.type) {
                case "comma":
                case "space":
                  break;
                case "comment":
                  prevItemComment = st.source.substring(1);
                  break loop;
                default:
                  break loop;
              }
            }
            if (prevItemComment) {
              let prev = coll.items[coll.items.length - 1];
              if (identity5.isPair(prev))
                prev = prev.value ?? prev.key;
              if (prev.comment)
                prev.comment += "\n" + prevItemComment;
              else
                prev.comment = prevItemComment;
              props3.comment = props3.comment.substring(prevItemComment.length + 1);
            }
          }
        }
        if (!isMap && !sep2 && !props3.found) {
          const valueNode = value ? composeNode2(ctx, value, props3, onError) : composeEmptyNode(ctx, props3.end, sep2, null, props3, onError);
          coll.items.push(valueNode);
          offset = valueNode.range[2];
          if (isBlock(value))
            onError(valueNode.range, "BLOCK_IN_FLOW", blockMsg);
        } else {
          ctx.atKey = true;
          const keyStart = props3.end;
          const keyNode = key ? composeNode2(ctx, key, props3, onError) : composeEmptyNode(ctx, keyStart, start, null, props3, onError);
          if (isBlock(key))
            onError(keyNode.range, "BLOCK_IN_FLOW", blockMsg);
          ctx.atKey = false;
          const valueProps = resolveProps.resolveProps(sep2 ?? [], {
            flow: fcName,
            indicator: "map-value-ind",
            next: value,
            offset: keyNode.range[2],
            onError,
            parentIndent: fc.indent,
            startOnNewline: false
          });
          if (valueProps.found) {
            if (!isMap && !props3.found && ctx.options.strict) {
              if (sep2)
                for (const st of sep2) {
                  if (st === valueProps.found)
                    break;
                  if (st.type === "newline") {
                    onError(st, "MULTILINE_IMPLICIT_KEY", "Implicit keys of flow sequence pairs need to be on a single line");
                    break;
                  }
                }
              if (props3.start < valueProps.found.offset - 1024)
                onError(valueProps.found, "KEY_OVER_1024_CHARS", "The : indicator must be at most 1024 chars after the start of an implicit flow sequence key");
            }
          } else if (value) {
            if ("source" in value && value.source?.[0] === ":")
              onError(value, "MISSING_CHAR", `Missing space after : in ${fcName}`);
            else
              onError(valueProps.start, "MISSING_CHAR", `Missing , or : between ${fcName} items`);
          }
          const valueNode = value ? composeNode2(ctx, value, valueProps, onError) : valueProps.found ? composeEmptyNode(ctx, valueProps.end, sep2, null, valueProps, onError) : null;
          if (valueNode) {
            if (isBlock(value))
              onError(valueNode.range, "BLOCK_IN_FLOW", blockMsg);
          } else if (valueProps.comment) {
            if (keyNode.comment)
              keyNode.comment += "\n" + valueProps.comment;
            else
              keyNode.comment = valueProps.comment;
          }
          const pair = new Pair.Pair(keyNode, valueNode);
          if (ctx.options.keepSourceTokens)
            pair.srcToken = collItem;
          if (isMap) {
            const map26 = coll;
            if (utilMapIncludes.mapIncludes(ctx, map26.items, keyNode))
              onError(keyStart, "DUPLICATE_KEY", "Map keys must be unique");
            map26.items.push(pair);
          } else {
            const map26 = new YAMLMap.YAMLMap(ctx.schema);
            map26.flow = true;
            map26.items.push(pair);
            const endRange = (valueNode ?? keyNode).range;
            map26.range = [keyNode.range[0], endRange[1], endRange[2]];
            coll.items.push(map26);
          }
          offset = valueNode ? valueNode.range[2] : valueProps.end;
        }
      }
      const expectedEnd = isMap ? "}" : "]";
      const [ce, ...ee] = fc.end;
      let cePos = offset;
      if (ce?.source === expectedEnd)
        cePos = ce.offset + ce.source.length;
      else {
        const name = fcName[0].toUpperCase() + fcName.substring(1);
        const msg = atRoot ? `${name} must end with a ${expectedEnd}` : `${name} in block collection must be sufficiently indented and end with a ${expectedEnd}`;
        onError(offset, atRoot ? "MISSING_CHAR" : "BAD_INDENT", msg);
        if (ce && ce.source.length !== 1)
          ee.unshift(ce);
      }
      if (ee.length > 0) {
        const end = resolveEnd.resolveEnd(ee, cePos, ctx.options.strict, onError);
        if (end.comment) {
          if (coll.comment)
            coll.comment += "\n" + end.comment;
          else
            coll.comment = end.comment;
        }
        coll.range = [fc.offset, cePos, end.offset];
      } else {
        coll.range = [fc.offset, cePos, cePos];
      }
      return coll;
    }
    exports2.resolveFlowCollection = resolveFlowCollection;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/compose-collection.js
var require_compose_collection = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/compose-collection.js"(exports2) {
    "use strict";
    var identity5 = require_identity();
    var Scalar = require_Scalar();
    var YAMLMap = require_YAMLMap();
    var YAMLSeq = require_YAMLSeq();
    var resolveBlockMap = require_resolve_block_map();
    var resolveBlockSeq = require_resolve_block_seq();
    var resolveFlowCollection = require_resolve_flow_collection();
    function resolveCollection(CN, ctx, token, onError, tagName, tag) {
      const coll = token.type === "block-map" ? resolveBlockMap.resolveBlockMap(CN, ctx, token, onError, tag) : token.type === "block-seq" ? resolveBlockSeq.resolveBlockSeq(CN, ctx, token, onError, tag) : resolveFlowCollection.resolveFlowCollection(CN, ctx, token, onError, tag);
      const Coll = coll.constructor;
      if (tagName === "!" || tagName === Coll.tagName) {
        coll.tag = Coll.tagName;
        return coll;
      }
      if (tagName)
        coll.tag = tagName;
      return coll;
    }
    function composeCollection(CN, ctx, token, props3, onError) {
      const tagToken = props3.tag;
      const tagName = !tagToken ? null : ctx.directives.tagName(tagToken.source, (msg) => onError(tagToken, "TAG_RESOLVE_FAILED", msg));
      if (token.type === "block-seq") {
        const { anchor, newlineAfterProp: nl } = props3;
        const lastProp = anchor && tagToken ? anchor.offset > tagToken.offset ? anchor : tagToken : anchor ?? tagToken;
        if (lastProp && (!nl || nl.offset < lastProp.offset)) {
          const message = "Missing newline after block sequence props";
          onError(lastProp, "MISSING_CHAR", message);
        }
      }
      const expType = token.type === "block-map" ? "map" : token.type === "block-seq" ? "seq" : token.start.source === "{" ? "map" : "seq";
      if (!tagToken || !tagName || tagName === "!" || tagName === YAMLMap.YAMLMap.tagName && expType === "map" || tagName === YAMLSeq.YAMLSeq.tagName && expType === "seq") {
        return resolveCollection(CN, ctx, token, onError, tagName);
      }
      let tag = ctx.schema.tags.find((t2) => t2.tag === tagName && t2.collection === expType);
      if (!tag) {
        const kt = ctx.schema.knownTags[tagName];
        if (kt?.collection === expType) {
          ctx.schema.tags.push(Object.assign({}, kt, { default: false }));
          tag = kt;
        } else {
          if (kt) {
            onError(tagToken, "BAD_COLLECTION_TYPE", `${kt.tag} used for ${expType} collection, but expects ${kt.collection ?? "scalar"}`, true);
          } else {
            onError(tagToken, "TAG_RESOLVE_FAILED", `Unresolved tag: ${tagName}`, true);
          }
          return resolveCollection(CN, ctx, token, onError, tagName);
        }
      }
      const coll = resolveCollection(CN, ctx, token, onError, tagName, tag);
      const res = tag.resolve?.(coll, (msg) => onError(tagToken, "TAG_RESOLVE_FAILED", msg), ctx.options) ?? coll;
      const node = identity5.isNode(res) ? res : new Scalar.Scalar(res);
      node.range = coll.range;
      node.tag = tagName;
      if (tag?.format)
        node.format = tag.format;
      return node;
    }
    exports2.composeCollection = composeCollection;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/resolve-block-scalar.js
var require_resolve_block_scalar = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/resolve-block-scalar.js"(exports2) {
    "use strict";
    var Scalar = require_Scalar();
    function resolveBlockScalar(ctx, scalar, onError) {
      const start = scalar.offset;
      const header = parseBlockScalarHeader(scalar, ctx.options.strict, onError);
      if (!header)
        return { value: "", type: null, comment: "", range: [start, start, start] };
      const type4 = header.mode === ">" ? Scalar.Scalar.BLOCK_FOLDED : Scalar.Scalar.BLOCK_LITERAL;
      const lines = scalar.source ? splitLines(scalar.source) : [];
      let chompStart = lines.length;
      for (let i2 = lines.length - 1; i2 >= 0; --i2) {
        const content = lines[i2][1];
        if (content === "" || content === "\r")
          chompStart = i2;
        else
          break;
      }
      if (chompStart === 0) {
        const value2 = header.chomp === "+" && lines.length > 0 ? "\n".repeat(Math.max(1, lines.length - 1)) : "";
        let end2 = start + header.length;
        if (scalar.source)
          end2 += scalar.source.length;
        return { value: value2, type: type4, comment: header.comment, range: [start, end2, end2] };
      }
      let trimIndent = scalar.indent + header.indent;
      let offset = scalar.offset + header.length;
      let contentStart = 0;
      for (let i2 = 0; i2 < chompStart; ++i2) {
        const [indent, content] = lines[i2];
        if (content === "" || content === "\r") {
          if (header.indent === 0 && indent.length > trimIndent)
            trimIndent = indent.length;
        } else {
          if (indent.length < trimIndent) {
            const message = "Block scalars with more-indented leading empty lines must use an explicit indentation indicator";
            onError(offset + indent.length, "MISSING_CHAR", message);
          }
          if (header.indent === 0)
            trimIndent = indent.length;
          contentStart = i2;
          if (trimIndent === 0 && !ctx.atRoot) {
            const message = "Block scalar values in collections must be indented";
            onError(offset, "BAD_INDENT", message);
          }
          break;
        }
        offset += indent.length + content.length + 1;
      }
      for (let i2 = lines.length - 1; i2 >= chompStart; --i2) {
        if (lines[i2][0].length > trimIndent)
          chompStart = i2 + 1;
      }
      let value = "";
      let sep2 = "";
      let prevMoreIndented = false;
      for (let i2 = 0; i2 < contentStart; ++i2)
        value += lines[i2][0].slice(trimIndent) + "\n";
      for (let i2 = contentStart; i2 < chompStart; ++i2) {
        let [indent, content] = lines[i2];
        offset += indent.length + content.length + 1;
        const crlf = content[content.length - 1] === "\r";
        if (crlf)
          content = content.slice(0, -1);
        if (content && indent.length < trimIndent) {
          const src2 = header.indent ? "explicit indentation indicator" : "first line";
          const message = `Block scalar lines must not be less indented than their ${src2}`;
          onError(offset - content.length - (crlf ? 2 : 1), "BAD_INDENT", message);
          indent = "";
        }
        if (type4 === Scalar.Scalar.BLOCK_LITERAL) {
          value += sep2 + indent.slice(trimIndent) + content;
          sep2 = "\n";
        } else if (indent.length > trimIndent || content[0] === "	") {
          if (sep2 === " ")
            sep2 = "\n";
          else if (!prevMoreIndented && sep2 === "\n")
            sep2 = "\n\n";
          value += sep2 + indent.slice(trimIndent) + content;
          sep2 = "\n";
          prevMoreIndented = true;
        } else if (content === "") {
          if (sep2 === "\n")
            value += "\n";
          else
            sep2 = "\n";
        } else {
          value += sep2 + content;
          sep2 = " ";
          prevMoreIndented = false;
        }
      }
      switch (header.chomp) {
        case "-":
          break;
        case "+":
          for (let i2 = chompStart; i2 < lines.length; ++i2)
            value += "\n" + lines[i2][0].slice(trimIndent);
          if (value[value.length - 1] !== "\n")
            value += "\n";
          break;
        default:
          value += "\n";
      }
      const end = start + header.length + scalar.source.length;
      return { value, type: type4, comment: header.comment, range: [start, end, end] };
    }
    function parseBlockScalarHeader({ offset, props: props3 }, strict, onError) {
      if (props3[0].type !== "block-scalar-header") {
        onError(props3[0], "IMPOSSIBLE", "Block scalar header not found");
        return null;
      }
      const { source } = props3[0];
      const mode = source[0];
      let indent = 0;
      let chomp = "";
      let error = -1;
      for (let i2 = 1; i2 < source.length; ++i2) {
        const ch = source[i2];
        if (!chomp && (ch === "-" || ch === "+"))
          chomp = ch;
        else {
          const n2 = Number(ch);
          if (!indent && n2)
            indent = n2;
          else if (error === -1)
            error = offset + i2;
        }
      }
      if (error !== -1)
        onError(error, "UNEXPECTED_TOKEN", `Block scalar header includes extra characters: ${source}`);
      let hasSpace = false;
      let comment = "";
      let length = source.length;
      for (let i2 = 1; i2 < props3.length; ++i2) {
        const token = props3[i2];
        switch (token.type) {
          case "space":
            hasSpace = true;
          // fallthrough
          case "newline":
            length += token.source.length;
            break;
          case "comment":
            if (strict && !hasSpace) {
              const message = "Comments must be separated from other tokens by white space characters";
              onError(token, "MISSING_CHAR", message);
            }
            length += token.source.length;
            comment = token.source.substring(1);
            break;
          case "error":
            onError(token, "UNEXPECTED_TOKEN", token.message);
            length += token.source.length;
            break;
          /* istanbul ignore next should not happen */
          default: {
            const message = `Unexpected token in block scalar header: ${token.type}`;
            onError(token, "UNEXPECTED_TOKEN", message);
            const ts = token.source;
            if (ts && typeof ts === "string")
              length += ts.length;
          }
        }
      }
      return { mode, indent, chomp, comment, length };
    }
    function splitLines(source) {
      const split2 = source.split(/\n( *)/);
      const first = split2[0];
      const m = first.match(/^( *)/);
      const line0 = m?.[1] ? [m[1], first.slice(m[1].length)] : ["", first];
      const lines = [line0];
      for (let i2 = 1; i2 < split2.length; i2 += 2)
        lines.push([split2[i2], split2[i2 + 1]]);
      return lines;
    }
    exports2.resolveBlockScalar = resolveBlockScalar;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/resolve-flow-scalar.js
var require_resolve_flow_scalar = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/resolve-flow-scalar.js"(exports2) {
    "use strict";
    var Scalar = require_Scalar();
    var resolveEnd = require_resolve_end();
    function resolveFlowScalar(scalar, strict, onError) {
      const { offset, type: type4, source, end } = scalar;
      let _type;
      let value;
      const _onError = (rel, code, msg) => onError(offset + rel, code, msg);
      switch (type4) {
        case "scalar":
          _type = Scalar.Scalar.PLAIN;
          value = plainValue(source, _onError);
          break;
        case "single-quoted-scalar":
          _type = Scalar.Scalar.QUOTE_SINGLE;
          value = singleQuotedValue(source, _onError);
          break;
        case "double-quoted-scalar":
          _type = Scalar.Scalar.QUOTE_DOUBLE;
          value = doubleQuotedValue(source, _onError);
          break;
        /* istanbul ignore next should not happen */
        default:
          onError(scalar, "UNEXPECTED_TOKEN", `Expected a flow scalar value, but found: ${type4}`);
          return {
            value: "",
            type: null,
            comment: "",
            range: [offset, offset + source.length, offset + source.length]
          };
      }
      const valueEnd = offset + source.length;
      const re = resolveEnd.resolveEnd(end, valueEnd, strict, onError);
      return {
        value,
        type: _type,
        comment: re.comment,
        range: [offset, valueEnd, re.offset]
      };
    }
    function plainValue(source, onError) {
      let badChar = "";
      switch (source[0]) {
        /* istanbul ignore next should not happen */
        case "	":
          badChar = "a tab character";
          break;
        case ",":
          badChar = "flow indicator character ,";
          break;
        case "%":
          badChar = "directive indicator character %";
          break;
        case "|":
        case ">": {
          badChar = `block scalar indicator ${source[0]}`;
          break;
        }
        case "@":
        case "`": {
          badChar = `reserved character ${source[0]}`;
          break;
        }
      }
      if (badChar)
        onError(0, "BAD_SCALAR_START", `Plain value cannot start with ${badChar}`);
      return foldLines(source);
    }
    function singleQuotedValue(source, onError) {
      if (source[source.length - 1] !== "'" || source.length === 1)
        onError(source.length, "MISSING_CHAR", "Missing closing 'quote");
      return foldLines(source.slice(1, -1)).replace(/''/g, "'");
    }
    function foldLines(source) {
      let first, line;
      try {
        first = new RegExp("(.*?)(?<![ 	])[ 	]*\r?\n", "sy");
        line = new RegExp("[ 	]*(.*?)(?:(?<![ 	])[ 	]*)?\r?\n", "sy");
      } catch {
        first = /(.*?)[ \t]*\r?\n/sy;
        line = /[ \t]*(.*?)[ \t]*\r?\n/sy;
      }
      let match = first.exec(source);
      if (!match)
        return source;
      let res = match[1];
      let sep2 = " ";
      let pos = first.lastIndex;
      line.lastIndex = pos;
      while (match = line.exec(source)) {
        if (match[1] === "") {
          if (sep2 === "\n")
            res += sep2;
          else
            sep2 = "\n";
        } else {
          res += sep2 + match[1];
          sep2 = " ";
        }
        pos = line.lastIndex;
      }
      const last = /[ \t]*(.*)/sy;
      last.lastIndex = pos;
      match = last.exec(source);
      return res + sep2 + (match?.[1] ?? "");
    }
    function doubleQuotedValue(source, onError) {
      let res = "";
      for (let i2 = 1; i2 < source.length - 1; ++i2) {
        const ch = source[i2];
        if (ch === "\r" && source[i2 + 1] === "\n")
          continue;
        if (ch === "\n") {
          const { fold, offset } = foldNewline(source, i2);
          res += fold;
          i2 = offset;
        } else if (ch === "\\") {
          let next2 = source[++i2];
          const cc = escapeCodes[next2];
          if (cc)
            res += cc;
          else if (next2 === "\n") {
            next2 = source[i2 + 1];
            while (next2 === " " || next2 === "	")
              next2 = source[++i2 + 1];
          } else if (next2 === "\r" && source[i2 + 1] === "\n") {
            next2 = source[++i2 + 1];
            while (next2 === " " || next2 === "	")
              next2 = source[++i2 + 1];
          } else if (next2 === "x" || next2 === "u" || next2 === "U") {
            const length = next2 === "x" ? 2 : next2 === "u" ? 4 : 8;
            res += parseCharCode(source, i2 + 1, length, onError);
            i2 += length;
          } else {
            const raw = source.substr(i2 - 1, 2);
            onError(i2 - 1, "BAD_DQ_ESCAPE", `Invalid escape sequence ${raw}`);
            res += raw;
          }
        } else if (ch === " " || ch === "	") {
          const wsStart = i2;
          let next2 = source[i2 + 1];
          while (next2 === " " || next2 === "	")
            next2 = source[++i2 + 1];
          if (next2 !== "\n" && !(next2 === "\r" && source[i2 + 2] === "\n"))
            res += i2 > wsStart ? source.slice(wsStart, i2 + 1) : ch;
        } else {
          res += ch;
        }
      }
      if (source[source.length - 1] !== '"' || source.length === 1)
        onError(source.length, "MISSING_CHAR", 'Missing closing "quote');
      return res;
    }
    function foldNewline(source, offset) {
      let fold = "";
      let ch = source[offset + 1];
      while (ch === " " || ch === "	" || ch === "\n" || ch === "\r") {
        if (ch === "\r" && source[offset + 2] !== "\n")
          break;
        if (ch === "\n")
          fold += "\n";
        offset += 1;
        ch = source[offset + 1];
      }
      if (!fold)
        fold = " ";
      return { fold, offset };
    }
    var escapeCodes = {
      "0": "\0",
      // null character
      a: "\x07",
      // bell character
      b: "\b",
      // backspace
      e: "\x1B",
      // escape character
      f: "\f",
      // form feed
      n: "\n",
      // line feed
      r: "\r",
      // carriage return
      t: "	",
      // horizontal tab
      v: "\v",
      // vertical tab
      N: "\x85",
      // Unicode next line
      _: "\xA0",
      // Unicode non-breaking space
      L: "\u2028",
      // Unicode line separator
      P: "\u2029",
      // Unicode paragraph separator
      " ": " ",
      '"': '"',
      "/": "/",
      "\\": "\\",
      "	": "	"
    };
    function parseCharCode(source, offset, length, onError) {
      const cc = source.substr(offset, length);
      const ok = cc.length === length && /^[0-9a-fA-F]+$/.test(cc);
      const code = ok ? parseInt(cc, 16) : NaN;
      try {
        return String.fromCodePoint(code);
      } catch {
        const raw = source.substr(offset - 2, length + 2);
        onError(offset - 2, "BAD_DQ_ESCAPE", `Invalid escape sequence ${raw}`);
        return raw;
      }
    }
    exports2.resolveFlowScalar = resolveFlowScalar;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/compose-scalar.js
var require_compose_scalar = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/compose-scalar.js"(exports2) {
    "use strict";
    var identity5 = require_identity();
    var Scalar = require_Scalar();
    var resolveBlockScalar = require_resolve_block_scalar();
    var resolveFlowScalar = require_resolve_flow_scalar();
    function composeScalar(ctx, token, tagToken, onError) {
      const { value, type: type4, comment, range } = token.type === "block-scalar" ? resolveBlockScalar.resolveBlockScalar(ctx, token, onError) : resolveFlowScalar.resolveFlowScalar(token, ctx.options.strict, onError);
      const tagName = tagToken ? ctx.directives.tagName(tagToken.source, (msg) => onError(tagToken, "TAG_RESOLVE_FAILED", msg)) : null;
      let tag;
      if (ctx.options.stringKeys && ctx.atKey) {
        tag = ctx.schema[identity5.SCALAR];
      } else if (tagName)
        tag = findScalarTagByName(ctx.schema, value, tagName, tagToken, onError);
      else if (token.type === "scalar")
        tag = findScalarTagByTest(ctx, value, token, onError);
      else
        tag = ctx.schema[identity5.SCALAR];
      let scalar;
      try {
        const res = tag.resolve(value, (msg) => onError(tagToken ?? token, "TAG_RESOLVE_FAILED", msg), ctx.options);
        scalar = identity5.isScalar(res) ? res : new Scalar.Scalar(res);
      } catch (error) {
        const msg = error instanceof Error ? error.message : String(error);
        onError(tagToken ?? token, "TAG_RESOLVE_FAILED", msg);
        scalar = new Scalar.Scalar(value);
      }
      scalar.range = range;
      scalar.source = value;
      if (type4)
        scalar.type = type4;
      if (tagName)
        scalar.tag = tagName;
      if (tag.format)
        scalar.format = tag.format;
      if (comment)
        scalar.comment = comment;
      return scalar;
    }
    function findScalarTagByName(schema2, value, tagName, tagToken, onError) {
      if (tagName === "!")
        return schema2[identity5.SCALAR];
      const matchWithTest = [];
      for (const tag of schema2.tags) {
        if (!tag.collection && tag.tag === tagName) {
          if (tag.default && tag.test)
            matchWithTest.push(tag);
          else
            return tag;
        }
      }
      for (const tag of matchWithTest)
        if (tag.test?.test(value))
          return tag;
      const kt = schema2.knownTags[tagName];
      if (kt && !kt.collection) {
        schema2.tags.push(Object.assign({}, kt, { default: false, test: void 0 }));
        return kt;
      }
      onError(tagToken, "TAG_RESOLVE_FAILED", `Unresolved tag: ${tagName}`, tagName !== "tag:yaml.org,2002:str");
      return schema2[identity5.SCALAR];
    }
    function findScalarTagByTest({ atKey, directives, schema: schema2 }, value, token, onError) {
      const tag = schema2.tags.find((tag2) => (tag2.default === true || atKey && tag2.default === "key") && tag2.test?.test(value)) || schema2[identity5.SCALAR];
      if (schema2.compat) {
        const compat = schema2.compat.find((tag2) => tag2.default && tag2.test?.test(value)) ?? schema2[identity5.SCALAR];
        if (tag.tag !== compat.tag) {
          const ts = directives.tagString(tag.tag);
          const cs = directives.tagString(compat.tag);
          const msg = `Value may be parsed as either ${ts} or ${cs}`;
          onError(token, "TAG_RESOLVE_FAILED", msg, true);
        }
      }
      return tag;
    }
    exports2.composeScalar = composeScalar;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/util-empty-scalar-position.js
var require_util_empty_scalar_position = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/util-empty-scalar-position.js"(exports2) {
    "use strict";
    function emptyScalarPosition(offset, before, pos) {
      if (before) {
        pos ?? (pos = before.length);
        for (let i2 = pos - 1; i2 >= 0; --i2) {
          let st = before[i2];
          switch (st.type) {
            case "space":
            case "comment":
            case "newline":
              offset -= st.source.length;
              continue;
          }
          st = before[++i2];
          while (st?.type === "space") {
            offset += st.source.length;
            st = before[++i2];
          }
          break;
        }
      }
      return offset;
    }
    exports2.emptyScalarPosition = emptyScalarPosition;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/compose-node.js
var require_compose_node = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/compose-node.js"(exports2) {
    "use strict";
    var Alias = require_Alias();
    var identity5 = require_identity();
    var composeCollection = require_compose_collection();
    var composeScalar = require_compose_scalar();
    var resolveEnd = require_resolve_end();
    var utilEmptyScalarPosition = require_util_empty_scalar_position();
    var CN = { composeNode: composeNode2, composeEmptyNode };
    function composeNode2(ctx, token, props3, onError) {
      const atKey = ctx.atKey;
      const { spaceBefore, comment, anchor, tag } = props3;
      let node;
      let isSrcToken = true;
      switch (token.type) {
        case "alias":
          node = composeAlias(ctx, token, onError);
          if (anchor || tag)
            onError(token, "ALIAS_PROPS", "An alias node must not specify any properties");
          break;
        case "scalar":
        case "single-quoted-scalar":
        case "double-quoted-scalar":
        case "block-scalar":
          node = composeScalar.composeScalar(ctx, token, tag, onError);
          if (anchor)
            node.anchor = anchor.source.substring(1);
          break;
        case "block-map":
        case "block-seq":
        case "flow-collection":
          try {
            node = composeCollection.composeCollection(CN, ctx, token, props3, onError);
            if (anchor)
              node.anchor = anchor.source.substring(1);
          } catch (error) {
            const message = error instanceof Error ? error.message : String(error);
            onError(token, "RESOURCE_EXHAUSTION", message);
          }
          break;
        default: {
          const message = token.type === "error" ? token.message : `Unsupported token (type: ${token.type})`;
          onError(token, "UNEXPECTED_TOKEN", message);
          isSrcToken = false;
        }
      }
      node ?? (node = composeEmptyNode(ctx, token.offset, void 0, null, props3, onError));
      if (anchor && node.anchor === "")
        onError(anchor, "BAD_ALIAS", "Anchor cannot be an empty string");
      if (atKey && ctx.options.stringKeys && (!identity5.isScalar(node) || typeof node.value !== "string" || node.tag && node.tag !== "tag:yaml.org,2002:str")) {
        const msg = "With stringKeys, all keys must be strings";
        onError(tag ?? token, "NON_STRING_KEY", msg);
      }
      if (spaceBefore)
        node.spaceBefore = true;
      if (comment) {
        if (token.type === "scalar" && token.source === "")
          node.comment = comment;
        else
          node.commentBefore = comment;
      }
      if (ctx.options.keepSourceTokens && isSrcToken)
        node.srcToken = token;
      return node;
    }
    function composeEmptyNode(ctx, offset, before, pos, { spaceBefore, comment, anchor, tag, end }, onError) {
      const token = {
        type: "scalar",
        offset: utilEmptyScalarPosition.emptyScalarPosition(offset, before, pos),
        indent: -1,
        source: ""
      };
      const node = composeScalar.composeScalar(ctx, token, tag, onError);
      if (anchor) {
        node.anchor = anchor.source.substring(1);
        if (node.anchor === "")
          onError(anchor, "BAD_ALIAS", "Anchor cannot be an empty string");
      }
      if (spaceBefore)
        node.spaceBefore = true;
      if (comment) {
        node.comment = comment;
        node.range[2] = end;
      }
      return node;
    }
    function composeAlias({ options }, { offset, source, end }, onError) {
      const alias = new Alias.Alias(source.substring(1));
      if (alias.source === "")
        onError(offset, "BAD_ALIAS", "Alias cannot be an empty string");
      if (alias.source.endsWith(":"))
        onError(offset + source.length - 1, "BAD_ALIAS", "Alias ending in : is ambiguous", true);
      const valueEnd = offset + source.length;
      const re = resolveEnd.resolveEnd(end, valueEnd, options.strict, onError);
      alias.range = [offset, valueEnd, re.offset];
      if (re.comment)
        alias.comment = re.comment;
      return alias;
    }
    exports2.composeEmptyNode = composeEmptyNode;
    exports2.composeNode = composeNode2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/compose-doc.js
var require_compose_doc = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/compose-doc.js"(exports2) {
    "use strict";
    var Document = require_Document();
    var composeNode2 = require_compose_node();
    var resolveEnd = require_resolve_end();
    var resolveProps = require_resolve_props();
    function composeDoc(options, directives, { offset, start, value, end }, onError) {
      const opts2 = Object.assign({ _directives: directives }, options);
      const doc = new Document.Document(void 0, opts2);
      const ctx = {
        atKey: false,
        atRoot: true,
        directives: doc.directives,
        options: doc.options,
        schema: doc.schema
      };
      const props3 = resolveProps.resolveProps(start, {
        indicator: "doc-start",
        next: value ?? end?.[0],
        offset,
        onError,
        parentIndent: 0,
        startOnNewline: true
      });
      if (props3.found) {
        doc.directives.docStart = true;
        if (value && (value.type === "block-map" || value.type === "block-seq") && !props3.hasNewline)
          onError(props3.end, "MISSING_CHAR", "Block collection cannot start on same line with directives-end marker");
      }
      doc.contents = value ? composeNode2.composeNode(ctx, value, props3, onError) : composeNode2.composeEmptyNode(ctx, props3.end, start, null, props3, onError);
      const contentEnd = doc.contents.range[2];
      const re = resolveEnd.resolveEnd(end, contentEnd, false, onError);
      if (re.comment)
        doc.comment = re.comment;
      doc.range = [offset, contentEnd, re.offset];
      return doc;
    }
    exports2.composeDoc = composeDoc;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/composer.js
var require_composer = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/compose/composer.js"(exports2) {
    "use strict";
    var node_process = __require("process");
    var directives = require_directives();
    var Document = require_Document();
    var errors2 = require_errors6();
    var identity5 = require_identity();
    var composeDoc = require_compose_doc();
    var resolveEnd = require_resolve_end();
    function getErrorPos(src2) {
      if (typeof src2 === "number")
        return [src2, src2 + 1];
      if (Array.isArray(src2))
        return src2.length === 2 ? src2 : [src2[0], src2[1]];
      const { offset, source } = src2;
      return [offset, offset + (typeof source === "string" ? source.length : 1)];
    }
    function parsePrelude(prelude) {
      let comment = "";
      let atComment = false;
      let afterEmptyLine = false;
      for (let i2 = 0; i2 < prelude.length; ++i2) {
        const source = prelude[i2];
        switch (source[0]) {
          case "#":
            comment += (comment === "" ? "" : afterEmptyLine ? "\n\n" : "\n") + (source.substring(1) || " ");
            atComment = true;
            afterEmptyLine = false;
            break;
          case "%":
            if (prelude[i2 + 1]?.[0] !== "#")
              i2 += 1;
            atComment = false;
            break;
          default:
            if (!atComment)
              afterEmptyLine = true;
            atComment = false;
        }
      }
      return { comment, afterEmptyLine };
    }
    var Composer = class {
      constructor(options = {}) {
        this.doc = null;
        this.atDirectives = false;
        this.prelude = [];
        this.errors = [];
        this.warnings = [];
        this.onError = (source, code, message, warning) => {
          const pos = getErrorPos(source);
          if (warning)
            this.warnings.push(new errors2.YAMLWarning(pos, code, message));
          else
            this.errors.push(new errors2.YAMLParseError(pos, code, message));
        };
        this.directives = new directives.Directives({ version: options.version || "1.2" });
        this.options = options;
      }
      decorate(doc, afterDoc) {
        const { comment, afterEmptyLine } = parsePrelude(this.prelude);
        if (comment) {
          const dc = doc.contents;
          if (afterDoc) {
            doc.comment = doc.comment ? `${doc.comment}
${comment}` : comment;
          } else if (afterEmptyLine || doc.directives.docStart || !dc) {
            doc.commentBefore = comment;
          } else if (identity5.isCollection(dc) && !dc.flow && dc.items.length > 0) {
            let it = dc.items[0];
            if (identity5.isPair(it))
              it = it.key;
            const cb = it.commentBefore;
            it.commentBefore = cb ? `${comment}
${cb}` : comment;
          } else {
            const cb = dc.commentBefore;
            dc.commentBefore = cb ? `${comment}
${cb}` : comment;
          }
        }
        if (afterDoc) {
          for (let i2 = 0; i2 < this.errors.length; ++i2)
            doc.errors.push(this.errors[i2]);
          for (let i2 = 0; i2 < this.warnings.length; ++i2)
            doc.warnings.push(this.warnings[i2]);
        } else {
          doc.errors = this.errors;
          doc.warnings = this.warnings;
        }
        this.prelude = [];
        this.errors = [];
        this.warnings = [];
      }
      /**
       * Current stream status information.
       *
       * Mostly useful at the end of input for an empty stream.
       */
      streamInfo() {
        return {
          comment: parsePrelude(this.prelude).comment,
          directives: this.directives,
          errors: this.errors,
          warnings: this.warnings
        };
      }
      /**
       * Compose tokens into documents.
       *
       * @param forceDoc - If the stream contains no document, still emit a final document including any comments and directives that would be applied to a subsequent document.
       * @param endOffset - Should be set if `forceDoc` is also set, to set the document range end and to indicate errors correctly.
       */
      *compose(tokens, forceDoc = false, endOffset = -1) {
        for (const token of tokens)
          yield* this.next(token);
        yield* this.end(forceDoc, endOffset);
      }
      /** Advance the composer by one CST token. */
      *next(token) {
        if (node_process.env.LOG_STREAM)
          console.dir(token, { depth: null });
        switch (token.type) {
          case "directive":
            this.directives.add(token.source, (offset, message, warning) => {
              const pos = getErrorPos(token);
              pos[0] += offset;
              this.onError(pos, "BAD_DIRECTIVE", message, warning);
            });
            this.prelude.push(token.source);
            this.atDirectives = true;
            break;
          case "document": {
            const doc = composeDoc.composeDoc(this.options, this.directives, token, this.onError);
            if (this.atDirectives && !doc.directives.docStart)
              this.onError(token, "MISSING_CHAR", "Missing directives-end/doc-start indicator line");
            this.decorate(doc, false);
            if (this.doc)
              yield this.doc;
            this.doc = doc;
            this.atDirectives = false;
            break;
          }
          case "byte-order-mark":
          case "space":
            break;
          case "comment":
          case "newline":
            this.prelude.push(token.source);
            break;
          case "error": {
            const msg = token.source ? `${token.message}: ${JSON.stringify(token.source)}` : token.message;
            const error = new errors2.YAMLParseError(getErrorPos(token), "UNEXPECTED_TOKEN", msg);
            if (this.atDirectives || !this.doc)
              this.errors.push(error);
            else
              this.doc.errors.push(error);
            break;
          }
          case "doc-end": {
            if (!this.doc) {
              const msg = "Unexpected doc-end without preceding document";
              this.errors.push(new errors2.YAMLParseError(getErrorPos(token), "UNEXPECTED_TOKEN", msg));
              break;
            }
            this.doc.directives.docEnd = true;
            const end = resolveEnd.resolveEnd(token.end, token.offset + token.source.length, this.doc.options.strict, this.onError);
            this.decorate(this.doc, true);
            if (end.comment) {
              const dc = this.doc.comment;
              this.doc.comment = dc ? `${dc}
${end.comment}` : end.comment;
            }
            this.doc.range[2] = end.offset;
            break;
          }
          default:
            this.errors.push(new errors2.YAMLParseError(getErrorPos(token), "UNEXPECTED_TOKEN", `Unsupported token ${token.type}`));
        }
      }
      /**
       * Call at end of input to yield any remaining document.
       *
       * @param forceDoc - If the stream contains no document, still emit a final document including any comments and directives that would be applied to a subsequent document.
       * @param endOffset - Should be set if `forceDoc` is also set, to set the document range end and to indicate errors correctly.
       */
      *end(forceDoc = false, endOffset = -1) {
        if (this.doc) {
          this.decorate(this.doc, true);
          yield this.doc;
          this.doc = null;
        } else if (forceDoc) {
          const opts2 = Object.assign({ _directives: this.directives }, this.options);
          const doc = new Document.Document(void 0, opts2);
          if (this.atDirectives)
            this.onError(endOffset, "MISSING_CHAR", "Missing directives-end indicator line");
          doc.range = [0, endOffset, endOffset];
          this.decorate(doc, false);
          yield doc;
        }
      }
    };
    exports2.Composer = Composer;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/parse/cst-scalar.js
var require_cst_scalar = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/parse/cst-scalar.js"(exports2) {
    "use strict";
    var resolveBlockScalar = require_resolve_block_scalar();
    var resolveFlowScalar = require_resolve_flow_scalar();
    var errors2 = require_errors6();
    var stringifyString = require_stringifyString();
    function resolveAsScalar(token, strict = true, onError) {
      if (token) {
        const _onError = (pos, code, message) => {
          const offset = typeof pos === "number" ? pos : Array.isArray(pos) ? pos[0] : pos.offset;
          if (onError)
            onError(offset, code, message);
          else
            throw new errors2.YAMLParseError([offset, offset + 1], code, message);
        };
        switch (token.type) {
          case "scalar":
          case "single-quoted-scalar":
          case "double-quoted-scalar":
            return resolveFlowScalar.resolveFlowScalar(token, strict, _onError);
          case "block-scalar":
            return resolveBlockScalar.resolveBlockScalar({ options: { strict } }, token, _onError);
        }
      }
      return null;
    }
    function createScalarToken(value, context) {
      const { implicitKey = false, indent, inFlow = false, offset = -1, type: type4 = "PLAIN" } = context;
      const source = stringifyString.stringifyString({ type: type4, value }, {
        implicitKey,
        indent: indent > 0 ? " ".repeat(indent) : "",
        inFlow,
        options: { blockQuote: true, lineWidth: -1 }
      });
      const end = context.end ?? [
        { type: "newline", offset: -1, indent, source: "\n" }
      ];
      switch (source[0]) {
        case "|":
        case ">": {
          const he = source.indexOf("\n");
          const head2 = source.substring(0, he);
          const body = source.substring(he + 1) + "\n";
          const props3 = [
            { type: "block-scalar-header", offset, indent, source: head2 }
          ];
          if (!addEndtoBlockProps(props3, end))
            props3.push({ type: "newline", offset: -1, indent, source: "\n" });
          return { type: "block-scalar", offset, indent, props: props3, source: body };
        }
        case '"':
          return { type: "double-quoted-scalar", offset, indent, source, end };
        case "'":
          return { type: "single-quoted-scalar", offset, indent, source, end };
        default:
          return { type: "scalar", offset, indent, source, end };
      }
    }
    function setScalarValue(token, value, context = {}) {
      let { afterKey = false, implicitKey = false, inFlow = false, type: type4 } = context;
      let indent = "indent" in token ? token.indent : null;
      if (afterKey && typeof indent === "number")
        indent += 2;
      if (!type4)
        switch (token.type) {
          case "single-quoted-scalar":
            type4 = "QUOTE_SINGLE";
            break;
          case "double-quoted-scalar":
            type4 = "QUOTE_DOUBLE";
            break;
          case "block-scalar": {
            const header = token.props[0];
            if (header.type !== "block-scalar-header")
              throw new Error("Invalid block scalar header");
            type4 = header.source[0] === ">" ? "BLOCK_FOLDED" : "BLOCK_LITERAL";
            break;
          }
          default:
            type4 = "PLAIN";
        }
      const source = stringifyString.stringifyString({ type: type4, value }, {
        implicitKey: implicitKey || indent === null,
        indent: indent !== null && indent > 0 ? " ".repeat(indent) : "",
        inFlow,
        options: { blockQuote: true, lineWidth: -1 }
      });
      switch (source[0]) {
        case "|":
        case ">":
          setBlockScalarValue(token, source);
          break;
        case '"':
          setFlowScalarValue(token, source, "double-quoted-scalar");
          break;
        case "'":
          setFlowScalarValue(token, source, "single-quoted-scalar");
          break;
        default:
          setFlowScalarValue(token, source, "scalar");
      }
    }
    function setBlockScalarValue(token, source) {
      const he = source.indexOf("\n");
      const head2 = source.substring(0, he);
      const body = source.substring(he + 1) + "\n";
      if (token.type === "block-scalar") {
        const header = token.props[0];
        if (header.type !== "block-scalar-header")
          throw new Error("Invalid block scalar header");
        header.source = head2;
        token.source = body;
      } else {
        const { offset } = token;
        const indent = "indent" in token ? token.indent : -1;
        const props3 = [
          { type: "block-scalar-header", offset, indent, source: head2 }
        ];
        if (!addEndtoBlockProps(props3, "end" in token ? token.end : void 0))
          props3.push({ type: "newline", offset: -1, indent, source: "\n" });
        for (const key of Object.keys(token))
          if (key !== "type" && key !== "offset")
            delete token[key];
        Object.assign(token, { type: "block-scalar", indent, props: props3, source: body });
      }
    }
    function addEndtoBlockProps(props3, end) {
      if (end)
        for (const st of end)
          switch (st.type) {
            case "space":
            case "comment":
              props3.push(st);
              break;
            case "newline":
              props3.push(st);
              return true;
          }
      return false;
    }
    function setFlowScalarValue(token, source, type4) {
      switch (token.type) {
        case "scalar":
        case "double-quoted-scalar":
        case "single-quoted-scalar":
          token.type = type4;
          token.source = source;
          break;
        case "block-scalar": {
          const end = token.props.slice(1);
          let oa = source.length;
          if (token.props[0].type === "block-scalar-header")
            oa -= token.props[0].source.length;
          for (const tok of end)
            tok.offset += oa;
          delete token.props;
          Object.assign(token, { type: type4, source, end });
          break;
        }
        case "block-map":
        case "block-seq": {
          const offset = token.offset + source.length;
          const nl = { type: "newline", offset, indent: token.indent, source: "\n" };
          delete token.items;
          Object.assign(token, { type: type4, source, end: [nl] });
          break;
        }
        default: {
          const indent = "indent" in token ? token.indent : -1;
          const end = "end" in token && Array.isArray(token.end) ? token.end.filter((st) => st.type === "space" || st.type === "comment" || st.type === "newline") : [];
          for (const key of Object.keys(token))
            if (key !== "type" && key !== "offset")
              delete token[key];
          Object.assign(token, { type: type4, indent, source, end });
        }
      }
    }
    exports2.createScalarToken = createScalarToken;
    exports2.resolveAsScalar = resolveAsScalar;
    exports2.setScalarValue = setScalarValue;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/parse/cst-stringify.js
var require_cst_stringify = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/parse/cst-stringify.js"(exports2) {
    "use strict";
    var stringify = (cst) => "type" in cst ? stringifyToken(cst) : stringifyItem(cst);
    function stringifyToken(token) {
      switch (token.type) {
        case "block-scalar": {
          let res = "";
          for (const tok of token.props)
            res += stringifyToken(tok);
          return res + token.source;
        }
        case "block-map":
        case "block-seq": {
          let res = "";
          for (const item of token.items)
            res += stringifyItem(item);
          return res;
        }
        case "flow-collection": {
          let res = token.start.source;
          for (const item of token.items)
            res += stringifyItem(item);
          for (const st of token.end)
            res += st.source;
          return res;
        }
        case "document": {
          let res = stringifyItem(token);
          if (token.end)
            for (const st of token.end)
              res += st.source;
          return res;
        }
        default: {
          let res = token.source;
          if ("end" in token && token.end)
            for (const st of token.end)
              res += st.source;
          return res;
        }
      }
    }
    function stringifyItem({ start, key, sep: sep2, value }) {
      let res = "";
      for (const st of start)
        res += st.source;
      if (key)
        res += stringifyToken(key);
      if (sep2)
        for (const st of sep2)
          res += st.source;
      if (value)
        res += stringifyToken(value);
      return res;
    }
    exports2.stringify = stringify;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/parse/cst-visit.js
var require_cst_visit = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/parse/cst-visit.js"(exports2) {
    "use strict";
    var BREAK = /* @__PURE__ */ Symbol("break visit");
    var SKIP = /* @__PURE__ */ Symbol("skip children");
    var REMOVE = /* @__PURE__ */ Symbol("remove item");
    function visit(cst, visitor) {
      if ("type" in cst && cst.type === "document")
        cst = { start: cst.start, value: cst.value };
      _visit(Object.freeze([]), cst, visitor);
    }
    visit.BREAK = BREAK;
    visit.SKIP = SKIP;
    visit.REMOVE = REMOVE;
    visit.itemAtPath = (cst, path218) => {
      let item = cst;
      for (const [field, index] of path218) {
        const tok = item?.[field];
        if (tok && "items" in tok) {
          item = tok.items[index];
        } else
          return void 0;
      }
      return item;
    };
    visit.parentCollection = (cst, path218) => {
      const parent = visit.itemAtPath(cst, path218.slice(0, -1));
      const field = path218[path218.length - 1][0];
      const coll = parent?.[field];
      if (coll && "items" in coll)
        return coll;
      throw new Error("Parent collection not found");
    };
    function _visit(path218, item, visitor) {
      let ctrl = visitor(item, path218);
      if (typeof ctrl === "symbol")
        return ctrl;
      for (const field of ["key", "value"]) {
        const token = item[field];
        if (token && "items" in token) {
          for (let i2 = 0; i2 < token.items.length; ++i2) {
            const ci = _visit(Object.freeze(path218.concat([[field, i2]])), token.items[i2], visitor);
            if (typeof ci === "number")
              i2 = ci - 1;
            else if (ci === BREAK)
              return BREAK;
            else if (ci === REMOVE) {
              token.items.splice(i2, 1);
              i2 -= 1;
            }
          }
          if (typeof ctrl === "function" && field === "key")
            ctrl = ctrl(item, path218);
        }
      }
      return typeof ctrl === "function" ? ctrl(item, path218) : ctrl;
    }
    exports2.visit = visit;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/parse/cst.js
var require_cst = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/parse/cst.js"(exports2) {
    "use strict";
    var cstScalar = require_cst_scalar();
    var cstStringify = require_cst_stringify();
    var cstVisit = require_cst_visit();
    var BOM = "\uFEFF";
    var DOCUMENT = "";
    var FLOW_END = "";
    var SCALAR = "";
    var isCollection = (token) => !!token && "items" in token;
    var isScalar = (token) => !!token && (token.type === "scalar" || token.type === "single-quoted-scalar" || token.type === "double-quoted-scalar" || token.type === "block-scalar");
    function prettyToken(token) {
      switch (token) {
        case BOM:
          return "<BOM>";
        case DOCUMENT:
          return "<DOC>";
        case FLOW_END:
          return "<FLOW_END>";
        case SCALAR:
          return "<SCALAR>";
        default:
          return JSON.stringify(token);
      }
    }
    function tokenType(source) {
      switch (source) {
        case BOM:
          return "byte-order-mark";
        case DOCUMENT:
          return "doc-mode";
        case FLOW_END:
          return "flow-error-end";
        case SCALAR:
          return "scalar";
        case "---":
          return "doc-start";
        case "...":
          return "doc-end";
        case "":
        case "\n":
        case "\r\n":
          return "newline";
        case "-":
          return "seq-item-ind";
        case "?":
          return "explicit-key-ind";
        case ":":
          return "map-value-ind";
        case "{":
          return "flow-map-start";
        case "}":
          return "flow-map-end";
        case "[":
          return "flow-seq-start";
        case "]":
          return "flow-seq-end";
        case ",":
          return "comma";
      }
      switch (source[0]) {
        case " ":
        case "	":
          return "space";
        case "#":
          return "comment";
        case "%":
          return "directive-line";
        case "*":
          return "alias";
        case "&":
          return "anchor";
        case "!":
          return "tag";
        case "'":
          return "single-quoted-scalar";
        case '"':
          return "double-quoted-scalar";
        case "|":
        case ">":
          return "block-scalar-header";
      }
      return null;
    }
    exports2.createScalarToken = cstScalar.createScalarToken;
    exports2.resolveAsScalar = cstScalar.resolveAsScalar;
    exports2.setScalarValue = cstScalar.setScalarValue;
    exports2.stringify = cstStringify.stringify;
    exports2.visit = cstVisit.visit;
    exports2.BOM = BOM;
    exports2.DOCUMENT = DOCUMENT;
    exports2.FLOW_END = FLOW_END;
    exports2.SCALAR = SCALAR;
    exports2.isCollection = isCollection;
    exports2.isScalar = isScalar;
    exports2.prettyToken = prettyToken;
    exports2.tokenType = tokenType;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/parse/lexer.js
var require_lexer = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/parse/lexer.js"(exports2) {
    "use strict";
    var cst = require_cst();
    function isEmpty4(ch) {
      switch (ch) {
        case void 0:
        case " ":
        case "\n":
        case "\r":
        case "	":
          return true;
        default:
          return false;
      }
    }
    var hexDigits = new Set("0123456789ABCDEFabcdef");
    var tagChars = new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()");
    var flowIndicatorChars = new Set(",[]{}");
    var invalidAnchorChars = new Set(" ,[]{}\n\r	");
    var isNotAnchorChar = (ch) => !ch || invalidAnchorChars.has(ch);
    var Lexer = class {
      constructor() {
        this.atEnd = false;
        this.blockScalarIndent = -1;
        this.blockScalarKeep = false;
        this.buffer = "";
        this.flowKey = false;
        this.flowLevel = 0;
        this.indentNext = 0;
        this.indentValue = 0;
        this.lineEndPos = null;
        this.next = null;
        this.pos = 0;
      }
      /**
       * Generate YAML tokens from the `source` string. If `incomplete`,
       * a part of the last line may be left as a buffer for the next call.
       *
       * @returns A generator of lexical tokens
       */
      *lex(source, incomplete = false) {
        if (source) {
          if (typeof source !== "string")
            throw TypeError("source is not a string");
          this.buffer = this.buffer ? this.buffer + source : source;
          this.lineEndPos = null;
        }
        this.atEnd = !incomplete;
        let next2 = this.next ?? "stream";
        while (next2 && (incomplete || this.hasChars(1)))
          next2 = yield* this.parseNext(next2);
      }
      atLineEnd() {
        let i2 = this.pos;
        let ch = this.buffer[i2];
        while (ch === " " || ch === "	")
          ch = this.buffer[++i2];
        if (!ch || ch === "#" || ch === "\n")
          return true;
        if (ch === "\r")
          return this.buffer[i2 + 1] === "\n";
        return false;
      }
      charAt(n2) {
        return this.buffer[this.pos + n2];
      }
      continueScalar(offset) {
        let ch = this.buffer[offset];
        if (this.indentNext > 0) {
          let indent = 0;
          while (ch === " ")
            ch = this.buffer[++indent + offset];
          if (ch === "\r") {
            const next2 = this.buffer[indent + offset + 1];
            if (next2 === "\n" || !next2 && !this.atEnd)
              return offset + indent + 1;
          }
          return ch === "\n" || indent >= this.indentNext || !ch && !this.atEnd ? offset + indent : -1;
        }
        if (ch === "-" || ch === ".") {
          const dt = this.buffer.substr(offset, 3);
          if ((dt === "---" || dt === "...") && isEmpty4(this.buffer[offset + 3]))
            return -1;
        }
        return offset;
      }
      getLine() {
        let end = this.lineEndPos;
        if (typeof end !== "number" || end !== -1 && end < this.pos) {
          end = this.buffer.indexOf("\n", this.pos);
          this.lineEndPos = end;
        }
        if (end === -1)
          return this.atEnd ? this.buffer.substring(this.pos) : null;
        if (this.buffer[end - 1] === "\r")
          end -= 1;
        return this.buffer.substring(this.pos, end);
      }
      hasChars(n2) {
        return this.pos + n2 <= this.buffer.length;
      }
      setNext(state) {
        this.buffer = this.buffer.substring(this.pos);
        this.pos = 0;
        this.lineEndPos = null;
        this.next = state;
        return null;
      }
      peek(n2) {
        return this.buffer.substr(this.pos, n2);
      }
      *parseNext(next2) {
        switch (next2) {
          case "stream":
            return yield* this.parseStream();
          case "line-start":
            return yield* this.parseLineStart();
          case "block-start":
            return yield* this.parseBlockStart();
          case "doc":
            return yield* this.parseDocument();
          case "flow":
            return yield* this.parseFlowCollection();
          case "quoted-scalar":
            return yield* this.parseQuotedScalar();
          case "block-scalar":
            return yield* this.parseBlockScalar();
          case "plain-scalar":
            return yield* this.parsePlainScalar();
        }
      }
      *parseStream() {
        let line = this.getLine();
        if (line === null)
          return this.setNext("stream");
        if (line[0] === cst.BOM) {
          yield* this.pushCount(1);
          line = line.substring(1);
        }
        if (line[0] === "%") {
          let dirEnd = line.length;
          let cs = line.indexOf("#");
          while (cs !== -1) {
            const ch = line[cs - 1];
            if (ch === " " || ch === "	") {
              dirEnd = cs - 1;
              break;
            } else {
              cs = line.indexOf("#", cs + 1);
            }
          }
          while (true) {
            const ch = line[dirEnd - 1];
            if (ch === " " || ch === "	")
              dirEnd -= 1;
            else
              break;
          }
          const n2 = (yield* this.pushCount(dirEnd)) + (yield* this.pushSpaces(true));
          yield* this.pushCount(line.length - n2);
          this.pushNewline();
          return "stream";
        }
        if (this.atLineEnd()) {
          const sp = yield* this.pushSpaces(true);
          yield* this.pushCount(line.length - sp);
          yield* this.pushNewline();
          return "stream";
        }
        yield cst.DOCUMENT;
        return yield* this.parseLineStart();
      }
      *parseLineStart() {
        const ch = this.charAt(0);
        if (!ch && !this.atEnd)
          return this.setNext("line-start");
        if (ch === "-" || ch === ".") {
          if (!this.atEnd && !this.hasChars(4))
            return this.setNext("line-start");
          const s = this.peek(3);
          if ((s === "---" || s === "...") && isEmpty4(this.charAt(3))) {
            yield* this.pushCount(3);
            this.indentValue = 0;
            this.indentNext = 0;
            return s === "---" ? "doc" : "stream";
          }
        }
        this.indentValue = yield* this.pushSpaces(false);
        if (this.indentNext > this.indentValue && !isEmpty4(this.charAt(1)))
          this.indentNext = this.indentValue;
        return yield* this.parseBlockStart();
      }
      *parseBlockStart() {
        const [ch0, ch1] = this.peek(2);
        if (!ch1 && !this.atEnd)
          return this.setNext("block-start");
        if ((ch0 === "-" || ch0 === "?" || ch0 === ":") && isEmpty4(ch1)) {
          const n2 = (yield* this.pushCount(1)) + (yield* this.pushSpaces(true));
          this.indentNext = this.indentValue + 1;
          this.indentValue += n2;
          return "block-start";
        }
        return "doc";
      }
      *parseDocument() {
        yield* this.pushSpaces(true);
        const line = this.getLine();
        if (line === null)
          return this.setNext("doc");
        let n2 = yield* this.pushIndicators();
        switch (line[n2]) {
          case "#":
            yield* this.pushCount(line.length - n2);
          // fallthrough
          case void 0:
            yield* this.pushNewline();
            return yield* this.parseLineStart();
          case "{":
          case "[":
            yield* this.pushCount(1);
            this.flowKey = false;
            this.flowLevel = 1;
            return "flow";
          case "}":
          case "]":
            yield* this.pushCount(1);
            return "doc";
          case "*":
            yield* this.pushUntil(isNotAnchorChar);
            return "doc";
          case '"':
          case "'":
            return yield* this.parseQuotedScalar();
          case "|":
          case ">":
            n2 += yield* this.parseBlockScalarHeader();
            n2 += yield* this.pushSpaces(true);
            yield* this.pushCount(line.length - n2);
            yield* this.pushNewline();
            return yield* this.parseBlockScalar();
          default:
            return yield* this.parsePlainScalar();
        }
      }
      *parseFlowCollection() {
        let nl, sp;
        let indent = -1;
        do {
          nl = yield* this.pushNewline();
          if (nl > 0) {
            sp = yield* this.pushSpaces(false);
            this.indentValue = indent = sp;
          } else {
            sp = 0;
          }
          sp += yield* this.pushSpaces(true);
        } while (nl + sp > 0);
        const line = this.getLine();
        if (line === null)
          return this.setNext("flow");
        if (indent !== -1 && indent < this.indentNext && line[0] !== "#" || indent === 0 && (line.startsWith("---") || line.startsWith("...")) && isEmpty4(line[3])) {
          const atFlowEndMarker = indent === this.indentNext - 1 && this.flowLevel === 1 && (line[0] === "]" || line[0] === "}");
          if (!atFlowEndMarker) {
            this.flowLevel = 0;
            yield cst.FLOW_END;
            return yield* this.parseLineStart();
          }
        }
        let n2 = 0;
        while (line[n2] === ",") {
          n2 += yield* this.pushCount(1);
          n2 += yield* this.pushSpaces(true);
          this.flowKey = false;
        }
        n2 += yield* this.pushIndicators();
        switch (line[n2]) {
          case void 0:
            return "flow";
          case "#":
            yield* this.pushCount(line.length - n2);
            return "flow";
          case "{":
          case "[":
            yield* this.pushCount(1);
            this.flowKey = false;
            this.flowLevel += 1;
            return "flow";
          case "}":
          case "]":
            yield* this.pushCount(1);
            this.flowKey = true;
            this.flowLevel -= 1;
            return this.flowLevel ? "flow" : "doc";
          case "*":
            yield* this.pushUntil(isNotAnchorChar);
            return "flow";
          case '"':
          case "'":
            this.flowKey = true;
            return yield* this.parseQuotedScalar();
          case ":": {
            const next2 = this.charAt(1);
            if (this.flowKey || isEmpty4(next2) || next2 === ",") {
              this.flowKey = false;
              yield* this.pushCount(1);
              yield* this.pushSpaces(true);
              return "flow";
            }
          }
          // fallthrough
          default:
            this.flowKey = false;
            return yield* this.parsePlainScalar();
        }
      }
      *parseQuotedScalar() {
        const quote2 = this.charAt(0);
        let end = this.buffer.indexOf(quote2, this.pos + 1);
        if (quote2 === "'") {
          while (end !== -1 && this.buffer[end + 1] === "'")
            end = this.buffer.indexOf("'", end + 2);
        } else {
          while (end !== -1) {
            let n2 = 0;
            while (this.buffer[end - 1 - n2] === "\\")
              n2 += 1;
            if (n2 % 2 === 0)
              break;
            end = this.buffer.indexOf('"', end + 1);
          }
        }
        const qb = this.buffer.substring(0, end);
        let nl = qb.indexOf("\n", this.pos);
        if (nl !== -1) {
          while (nl !== -1) {
            const cs = this.continueScalar(nl + 1);
            if (cs === -1)
              break;
            nl = qb.indexOf("\n", cs);
          }
          if (nl !== -1) {
            end = nl - (qb[nl - 1] === "\r" ? 2 : 1);
          }
        }
        if (end === -1) {
          if (!this.atEnd)
            return this.setNext("quoted-scalar");
          end = this.buffer.length;
        }
        yield* this.pushToIndex(end + 1, false);
        return this.flowLevel ? "flow" : "doc";
      }
      *parseBlockScalarHeader() {
        this.blockScalarIndent = -1;
        this.blockScalarKeep = false;
        let i2 = this.pos;
        while (true) {
          const ch = this.buffer[++i2];
          if (ch === "+")
            this.blockScalarKeep = true;
          else if (ch > "0" && ch <= "9")
            this.blockScalarIndent = Number(ch) - 1;
          else if (ch !== "-")
            break;
        }
        return yield* this.pushUntil((ch) => isEmpty4(ch) || ch === "#");
      }
      *parseBlockScalar() {
        let nl = this.pos - 1;
        let indent = 0;
        let ch;
        loop: for (let i3 = this.pos; ch = this.buffer[i3]; ++i3) {
          switch (ch) {
            case " ":
              indent += 1;
              break;
            case "\n":
              nl = i3;
              indent = 0;
              break;
            case "\r": {
              const next2 = this.buffer[i3 + 1];
              if (!next2 && !this.atEnd)
                return this.setNext("block-scalar");
              if (next2 === "\n")
                break;
            }
            // fallthrough
            default:
              break loop;
          }
        }
        if (!ch && !this.atEnd)
          return this.setNext("block-scalar");
        if (indent >= this.indentNext) {
          if (this.blockScalarIndent === -1)
            this.indentNext = indent;
          else {
            this.indentNext = this.blockScalarIndent + (this.indentNext === 0 ? 1 : this.indentNext);
          }
          do {
            const cs = this.continueScalar(nl + 1);
            if (cs === -1)
              break;
            nl = this.buffer.indexOf("\n", cs);
          } while (nl !== -1);
          if (nl === -1) {
            if (!this.atEnd)
              return this.setNext("block-scalar");
            nl = this.buffer.length;
          }
        }
        let i2 = nl + 1;
        ch = this.buffer[i2];
        while (ch === " ")
          ch = this.buffer[++i2];
        if (ch === "	") {
          while (ch === "	" || ch === " " || ch === "\r" || ch === "\n")
            ch = this.buffer[++i2];
          nl = i2 - 1;
        } else if (!this.blockScalarKeep) {
          do {
            let i3 = nl - 1;
            let ch2 = this.buffer[i3];
            if (ch2 === "\r")
              ch2 = this.buffer[--i3];
            const lastChar = i3;
            while (ch2 === " ")
              ch2 = this.buffer[--i3];
            if (ch2 === "\n" && i3 >= this.pos && i3 + 1 + indent > lastChar)
              nl = i3;
            else
              break;
          } while (true);
        }
        yield cst.SCALAR;
        yield* this.pushToIndex(nl + 1, true);
        return yield* this.parseLineStart();
      }
      *parsePlainScalar() {
        const inFlow = this.flowLevel > 0;
        let end = this.pos - 1;
        let i2 = this.pos - 1;
        let ch;
        while (ch = this.buffer[++i2]) {
          if (ch === ":") {
            const next2 = this.buffer[i2 + 1];
            if (isEmpty4(next2) || inFlow && flowIndicatorChars.has(next2))
              break;
            end = i2;
          } else if (isEmpty4(ch)) {
            let next2 = this.buffer[i2 + 1];
            if (ch === "\r") {
              if (next2 === "\n") {
                i2 += 1;
                ch = "\n";
                next2 = this.buffer[i2 + 1];
              } else
                end = i2;
            }
            if (next2 === "#" || inFlow && flowIndicatorChars.has(next2))
              break;
            if (ch === "\n") {
              const cs = this.continueScalar(i2 + 1);
              if (cs === -1)
                break;
              i2 = Math.max(i2, cs - 2);
            }
          } else {
            if (inFlow && flowIndicatorChars.has(ch))
              break;
            end = i2;
          }
        }
        if (!ch && !this.atEnd)
          return this.setNext("plain-scalar");
        yield cst.SCALAR;
        yield* this.pushToIndex(end + 1, true);
        return inFlow ? "flow" : "doc";
      }
      *pushCount(n2) {
        if (n2 > 0) {
          yield this.buffer.substr(this.pos, n2);
          this.pos += n2;
          return n2;
        }
        return 0;
      }
      *pushToIndex(i2, allowEmpty) {
        const s = this.buffer.slice(this.pos, i2);
        if (s) {
          yield s;
          this.pos += s.length;
          return s.length;
        } else if (allowEmpty)
          yield "";
        return 0;
      }
      *pushIndicators() {
        let n2 = 0;
        loop: while (true) {
          switch (this.charAt(0)) {
            case "!":
              n2 += yield* this.pushTag();
              n2 += yield* this.pushSpaces(true);
              continue loop;
            case "&":
              n2 += yield* this.pushUntil(isNotAnchorChar);
              n2 += yield* this.pushSpaces(true);
              continue loop;
            case "-":
            // this is an error
            case "?":
            // this is an error outside flow collections
            case ":": {
              const inFlow = this.flowLevel > 0;
              const ch1 = this.charAt(1);
              if (isEmpty4(ch1) || inFlow && flowIndicatorChars.has(ch1)) {
                if (!inFlow)
                  this.indentNext = this.indentValue + 1;
                else if (this.flowKey)
                  this.flowKey = false;
                n2 += yield* this.pushCount(1);
                n2 += yield* this.pushSpaces(true);
                continue loop;
              }
            }
          }
          break loop;
        }
        return n2;
      }
      *pushTag() {
        if (this.charAt(1) === "<") {
          let i2 = this.pos + 2;
          let ch = this.buffer[i2];
          while (!isEmpty4(ch) && ch !== ">")
            ch = this.buffer[++i2];
          return yield* this.pushToIndex(ch === ">" ? i2 + 1 : i2, false);
        } else {
          let i2 = this.pos + 1;
          let ch = this.buffer[i2];
          while (ch) {
            if (tagChars.has(ch))
              ch = this.buffer[++i2];
            else if (ch === "%" && hexDigits.has(this.buffer[i2 + 1]) && hexDigits.has(this.buffer[i2 + 2])) {
              ch = this.buffer[i2 += 3];
            } else
              break;
          }
          return yield* this.pushToIndex(i2, false);
        }
      }
      *pushNewline() {
        const ch = this.buffer[this.pos];
        if (ch === "\n")
          return yield* this.pushCount(1);
        else if (ch === "\r" && this.charAt(1) === "\n")
          return yield* this.pushCount(2);
        else
          return 0;
      }
      *pushSpaces(allowTabs) {
        let i2 = this.pos - 1;
        let ch;
        do {
          ch = this.buffer[++i2];
        } while (ch === " " || allowTabs && ch === "	");
        const n2 = i2 - this.pos;
        if (n2 > 0) {
          yield this.buffer.substr(this.pos, n2);
          this.pos = i2;
        }
        return n2;
      }
      *pushUntil(test) {
        let i2 = this.pos;
        let ch = this.buffer[i2];
        while (!test(ch))
          ch = this.buffer[++i2];
        return yield* this.pushToIndex(i2, false);
      }
    };
    exports2.Lexer = Lexer;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/parse/line-counter.js
var require_line_counter = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/parse/line-counter.js"(exports2) {
    "use strict";
    var LineCounter = class {
      constructor() {
        this.lineStarts = [];
        this.addNewLine = (offset) => this.lineStarts.push(offset);
        this.linePos = (offset) => {
          let low = 0;
          let high = this.lineStarts.length;
          while (low < high) {
            const mid = low + high >> 1;
            if (this.lineStarts[mid] < offset)
              low = mid + 1;
            else
              high = mid;
          }
          if (this.lineStarts[low] === offset)
            return { line: low + 1, col: 1 };
          if (low === 0)
            return { line: 0, col: offset };
          const start = this.lineStarts[low - 1];
          return { line: low, col: offset - start + 1 };
        };
      }
    };
    exports2.LineCounter = LineCounter;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/parse/parser.js
var require_parser = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/parse/parser.js"(exports2) {
    "use strict";
    var node_process = __require("process");
    var cst = require_cst();
    var lexer = require_lexer();
    function includesToken(list2, type4) {
      for (let i2 = 0; i2 < list2.length; ++i2)
        if (list2[i2].type === type4)
          return true;
      return false;
    }
    function findNonEmptyIndex(list2) {
      for (let i2 = 0; i2 < list2.length; ++i2) {
        switch (list2[i2].type) {
          case "space":
          case "comment":
          case "newline":
            break;
          default:
            return i2;
        }
      }
      return -1;
    }
    function isFlowToken(token) {
      switch (token?.type) {
        case "alias":
        case "scalar":
        case "single-quoted-scalar":
        case "double-quoted-scalar":
        case "flow-collection":
          return true;
        default:
          return false;
      }
    }
    function getPrevProps(parent) {
      switch (parent.type) {
        case "document":
          return parent.start;
        case "block-map": {
          const it = parent.items[parent.items.length - 1];
          return it.sep ?? it.start;
        }
        case "block-seq":
          return parent.items[parent.items.length - 1].start;
        /* istanbul ignore next should not happen */
        default:
          return [];
      }
    }
    function getFirstKeyStartProps(prev) {
      if (prev.length === 0)
        return [];
      let i2 = prev.length;
      loop: while (--i2 >= 0) {
        switch (prev[i2].type) {
          case "doc-start":
          case "explicit-key-ind":
          case "map-value-ind":
          case "seq-item-ind":
          case "newline":
            break loop;
        }
      }
      while (prev[++i2]?.type === "space") {
      }
      return prev.splice(i2, prev.length);
    }
    function arrayPushArray(target2, source) {
      if (source.length < 1e5)
        Array.prototype.push.apply(target2, source);
      else
        for (let i2 = 0; i2 < source.length; ++i2)
          target2.push(source[i2]);
    }
    function fixFlowSeqItems(fc) {
      if (fc.start.type === "flow-seq-start") {
        for (const it of fc.items) {
          if (it.sep && !it.value && !includesToken(it.start, "explicit-key-ind") && !includesToken(it.sep, "map-value-ind")) {
            if (it.key)
              it.value = it.key;
            delete it.key;
            if (isFlowToken(it.value)) {
              if (it.value.end)
                arrayPushArray(it.value.end, it.sep);
              else
                it.value.end = it.sep;
            } else
              arrayPushArray(it.start, it.sep);
            delete it.sep;
          }
        }
      }
    }
    var Parser = class {
      /**
       * @param onNewLine - If defined, called separately with the start position of
       *   each new line (in `parse()`, including the start of input).
       */
      constructor(onNewLine) {
        this.atNewLine = true;
        this.atScalar = false;
        this.indent = 0;
        this.offset = 0;
        this.onKeyLine = false;
        this.stack = [];
        this.source = "";
        this.type = "";
        this.lexer = new lexer.Lexer();
        this.onNewLine = onNewLine;
      }
      /**
       * Parse `source` as a YAML stream.
       * If `incomplete`, a part of the last line may be left as a buffer for the next call.
       *
       * Errors are not thrown, but yielded as `{ type: 'error', message }` tokens.
       *
       * @returns A generator of tokens representing each directive, document, and other structure.
       */
      *parse(source, incomplete = false) {
        if (this.onNewLine && this.offset === 0)
          this.onNewLine(0);
        for (const lexeme of this.lexer.lex(source, incomplete))
          yield* this.next(lexeme);
        if (!incomplete)
          yield* this.end();
      }
      /**
       * Advance the parser by the `source` of one lexical token.
       */
      *next(source) {
        this.source = source;
        if (node_process.env.LOG_TOKENS)
          console.log("|", cst.prettyToken(source));
        if (this.atScalar) {
          this.atScalar = false;
          yield* this.step();
          this.offset += source.length;
          return;
        }
        const type4 = cst.tokenType(source);
        if (!type4) {
          const message = `Not a YAML token: ${source}`;
          yield* this.pop({ type: "error", offset: this.offset, message, source });
          this.offset += source.length;
        } else if (type4 === "scalar") {
          this.atNewLine = false;
          this.atScalar = true;
          this.type = "scalar";
        } else {
          this.type = type4;
          yield* this.step();
          switch (type4) {
            case "newline":
              this.atNewLine = true;
              this.indent = 0;
              if (this.onNewLine)
                this.onNewLine(this.offset + source.length);
              break;
            case "space":
              if (this.atNewLine && source[0] === " ")
                this.indent += source.length;
              break;
            case "explicit-key-ind":
            case "map-value-ind":
            case "seq-item-ind":
              if (this.atNewLine)
                this.indent += source.length;
              break;
            case "doc-mode":
            case "flow-error-end":
              return;
            default:
              this.atNewLine = false;
          }
          this.offset += source.length;
        }
      }
      /** Call at end of input to push out any remaining constructions */
      *end() {
        while (this.stack.length > 0)
          yield* this.pop();
      }
      get sourceToken() {
        const st = {
          type: this.type,
          offset: this.offset,
          indent: this.indent,
          source: this.source
        };
        return st;
      }
      *step() {
        const top = this.peek(1);
        if (this.type === "doc-end" && top?.type !== "doc-end") {
          while (this.stack.length > 0)
            yield* this.pop();
          this.stack.push({
            type: "doc-end",
            offset: this.offset,
            source: this.source
          });
          return;
        }
        if (!top)
          return yield* this.stream();
        switch (top.type) {
          case "document":
            return yield* this.document(top);
          case "alias":
          case "scalar":
          case "single-quoted-scalar":
          case "double-quoted-scalar":
            return yield* this.scalar(top);
          case "block-scalar":
            return yield* this.blockScalar(top);
          case "block-map":
            return yield* this.blockMap(top);
          case "block-seq":
            return yield* this.blockSequence(top);
          case "flow-collection":
            return yield* this.flowCollection(top);
          case "doc-end":
            return yield* this.documentEnd(top);
        }
        yield* this.pop();
      }
      peek(n2) {
        return this.stack[this.stack.length - n2];
      }
      *pop(error) {
        const token = error ?? this.stack.pop();
        if (!token) {
          const message = "Tried to pop an empty stack";
          yield { type: "error", offset: this.offset, source: "", message };
        } else if (this.stack.length === 0) {
          yield token;
        } else {
          const top = this.peek(1);
          if (token.type === "block-scalar") {
            token.indent = "indent" in top ? top.indent : 0;
          } else if (token.type === "flow-collection" && top.type === "document") {
            token.indent = 0;
          }
          if (token.type === "flow-collection")
            fixFlowSeqItems(token);
          switch (top.type) {
            case "document":
              top.value = token;
              break;
            case "block-scalar":
              top.props.push(token);
              break;
            case "block-map": {
              const it = top.items[top.items.length - 1];
              if (it.value) {
                top.items.push({ start: [], key: token, sep: [] });
                this.onKeyLine = true;
                return;
              } else if (it.sep) {
                it.value = token;
              } else {
                Object.assign(it, { key: token, sep: [] });
                this.onKeyLine = !it.explicitKey;
                return;
              }
              break;
            }
            case "block-seq": {
              const it = top.items[top.items.length - 1];
              if (it.value)
                top.items.push({ start: [], value: token });
              else
                it.value = token;
              break;
            }
            case "flow-collection": {
              const it = top.items[top.items.length - 1];
              if (!it || it.value)
                top.items.push({ start: [], key: token, sep: [] });
              else if (it.sep)
                it.value = token;
              else
                Object.assign(it, { key: token, sep: [] });
              return;
            }
            /* istanbul ignore next should not happen */
            default:
              yield* this.pop();
              yield* this.pop(token);
          }
          if ((top.type === "document" || top.type === "block-map" || top.type === "block-seq") && (token.type === "block-map" || token.type === "block-seq")) {
            const last = token.items[token.items.length - 1];
            if (last && !last.sep && !last.value && last.start.length > 0 && findNonEmptyIndex(last.start) === -1 && (token.indent === 0 || last.start.every((st) => st.type !== "comment" || st.indent < token.indent))) {
              if (top.type === "document")
                top.end = last.start;
              else
                top.items.push({ start: last.start });
              token.items.splice(-1, 1);
            }
          }
        }
      }
      *stream() {
        switch (this.type) {
          case "directive-line":
            yield { type: "directive", offset: this.offset, source: this.source };
            return;
          case "byte-order-mark":
          case "space":
          case "comment":
          case "newline":
            yield this.sourceToken;
            return;
          case "doc-mode":
          case "doc-start": {
            const doc = {
              type: "document",
              offset: this.offset,
              start: []
            };
            if (this.type === "doc-start")
              doc.start.push(this.sourceToken);
            this.stack.push(doc);
            return;
          }
        }
        yield {
          type: "error",
          offset: this.offset,
          message: `Unexpected ${this.type} token in YAML stream`,
          source: this.source
        };
      }
      *document(doc) {
        if (doc.value)
          return yield* this.lineEnd(doc);
        switch (this.type) {
          case "doc-start": {
            if (findNonEmptyIndex(doc.start) !== -1) {
              yield* this.pop();
              yield* this.step();
            } else
              doc.start.push(this.sourceToken);
            return;
          }
          case "anchor":
          case "tag":
          case "space":
          case "comment":
          case "newline":
            doc.start.push(this.sourceToken);
            return;
        }
        const bv = this.startBlockValue(doc);
        if (bv)
          this.stack.push(bv);
        else {
          yield {
            type: "error",
            offset: this.offset,
            message: `Unexpected ${this.type} token in YAML document`,
            source: this.source
          };
        }
      }
      *scalar(scalar) {
        if (this.type === "map-value-ind") {
          const prev = getPrevProps(this.peek(2));
          const start = getFirstKeyStartProps(prev);
          let sep2;
          if (scalar.end) {
            sep2 = scalar.end;
            sep2.push(this.sourceToken);
            delete scalar.end;
          } else
            sep2 = [this.sourceToken];
          const map26 = {
            type: "block-map",
            offset: scalar.offset,
            indent: scalar.indent,
            items: [{ start, key: scalar, sep: sep2 }]
          };
          this.onKeyLine = true;
          this.stack[this.stack.length - 1] = map26;
        } else
          yield* this.lineEnd(scalar);
      }
      *blockScalar(scalar) {
        switch (this.type) {
          case "space":
          case "comment":
          case "newline":
            scalar.props.push(this.sourceToken);
            return;
          case "scalar":
            scalar.source = this.source;
            this.atNewLine = true;
            this.indent = 0;
            if (this.onNewLine) {
              let nl = this.source.indexOf("\n") + 1;
              while (nl !== 0) {
                this.onNewLine(this.offset + nl);
                nl = this.source.indexOf("\n", nl) + 1;
              }
            }
            yield* this.pop();
            break;
          /* istanbul ignore next should not happen */
          default:
            yield* this.pop();
            yield* this.step();
        }
      }
      *blockMap(map26) {
        const it = map26.items[map26.items.length - 1];
        switch (this.type) {
          case "newline":
            this.onKeyLine = false;
            if (it.value) {
              const end = "end" in it.value ? it.value.end : void 0;
              const last = Array.isArray(end) ? end[end.length - 1] : void 0;
              if (last?.type === "comment")
                end?.push(this.sourceToken);
              else
                map26.items.push({ start: [this.sourceToken] });
            } else if (it.sep) {
              it.sep.push(this.sourceToken);
            } else {
              it.start.push(this.sourceToken);
            }
            return;
          case "space":
          case "comment":
            if (it.value) {
              map26.items.push({ start: [this.sourceToken] });
            } else if (it.sep) {
              it.sep.push(this.sourceToken);
            } else {
              if (this.atIndentedComment(it.start, map26.indent)) {
                const prev = map26.items[map26.items.length - 2];
                const end = prev?.value?.end;
                if (Array.isArray(end)) {
                  arrayPushArray(end, it.start);
                  end.push(this.sourceToken);
                  map26.items.pop();
                  return;
                }
              }
              it.start.push(this.sourceToken);
            }
            return;
        }
        if (this.indent >= map26.indent) {
          const atMapIndent = !this.onKeyLine && this.indent === map26.indent;
          const atNextItem = atMapIndent && (it.sep || it.explicitKey) && this.type !== "seq-item-ind";
          let start = [];
          if (atNextItem && it.sep && !it.value) {
            const nl = [];
            for (let i2 = 0; i2 < it.sep.length; ++i2) {
              const st = it.sep[i2];
              switch (st.type) {
                case "newline":
                  nl.push(i2);
                  break;
                case "space":
                  break;
                case "comment":
                  if (st.indent > map26.indent)
                    nl.length = 0;
                  break;
                default:
                  nl.length = 0;
              }
            }
            if (nl.length >= 2)
              start = it.sep.splice(nl[1]);
          }
          switch (this.type) {
            case "anchor":
            case "tag":
              if (atNextItem || it.value) {
                start.push(this.sourceToken);
                map26.items.push({ start });
                this.onKeyLine = true;
              } else if (it.sep) {
                it.sep.push(this.sourceToken);
              } else {
                it.start.push(this.sourceToken);
              }
              return;
            case "explicit-key-ind":
              if (!it.sep && !it.explicitKey) {
                it.start.push(this.sourceToken);
                it.explicitKey = true;
              } else if (atNextItem || it.value) {
                start.push(this.sourceToken);
                map26.items.push({ start, explicitKey: true });
              } else {
                this.stack.push({
                  type: "block-map",
                  offset: this.offset,
                  indent: this.indent,
                  items: [{ start: [this.sourceToken], explicitKey: true }]
                });
              }
              this.onKeyLine = true;
              return;
            case "map-value-ind":
              if (it.explicitKey) {
                if (!it.sep) {
                  if (includesToken(it.start, "newline")) {
                    Object.assign(it, { key: null, sep: [this.sourceToken] });
                  } else {
                    const start2 = getFirstKeyStartProps(it.start);
                    this.stack.push({
                      type: "block-map",
                      offset: this.offset,
                      indent: this.indent,
                      items: [{ start: start2, key: null, sep: [this.sourceToken] }]
                    });
                  }
                } else if (it.value) {
                  map26.items.push({ start: [], key: null, sep: [this.sourceToken] });
                } else if (includesToken(it.sep, "map-value-ind")) {
                  this.stack.push({
                    type: "block-map",
                    offset: this.offset,
                    indent: this.indent,
                    items: [{ start, key: null, sep: [this.sourceToken] }]
                  });
                } else if (isFlowToken(it.key) && !includesToken(it.sep, "newline")) {
                  const start2 = getFirstKeyStartProps(it.start);
                  const key = it.key;
                  const sep2 = it.sep;
                  sep2.push(this.sourceToken);
                  delete it.key;
                  delete it.sep;
                  this.stack.push({
                    type: "block-map",
                    offset: this.offset,
                    indent: this.indent,
                    items: [{ start: start2, key, sep: sep2 }]
                  });
                } else if (start.length > 0) {
                  it.sep = it.sep.concat(start, this.sourceToken);
                } else {
                  it.sep.push(this.sourceToken);
                }
              } else {
                if (!it.sep) {
                  Object.assign(it, { key: null, sep: [this.sourceToken] });
                } else if (it.value || atNextItem) {
                  map26.items.push({ start, key: null, sep: [this.sourceToken] });
                } else if (includesToken(it.sep, "map-value-ind")) {
                  this.stack.push({
                    type: "block-map",
                    offset: this.offset,
                    indent: this.indent,
                    items: [{ start: [], key: null, sep: [this.sourceToken] }]
                  });
                } else {
                  it.sep.push(this.sourceToken);
                }
              }
              this.onKeyLine = true;
              return;
            case "alias":
            case "scalar":
            case "single-quoted-scalar":
            case "double-quoted-scalar": {
              const fs111 = this.flowScalar(this.type);
              if (atNextItem || it.value) {
                map26.items.push({ start, key: fs111, sep: [] });
                this.onKeyLine = true;
              } else if (it.sep) {
                this.stack.push(fs111);
              } else {
                Object.assign(it, { key: fs111, sep: [] });
                this.onKeyLine = true;
              }
              return;
            }
            default: {
              const bv = this.startBlockValue(map26);
              if (bv) {
                if (bv.type === "block-seq") {
                  if (!it.explicitKey && it.sep && !includesToken(it.sep, "newline")) {
                    yield* this.pop({
                      type: "error",
                      offset: this.offset,
                      message: "Unexpected block-seq-ind on same line with key",
                      source: this.source
                    });
                    return;
                  }
                } else if (atMapIndent) {
                  map26.items.push({ start });
                }
                this.stack.push(bv);
                return;
              }
            }
          }
        }
        yield* this.pop();
        yield* this.step();
      }
      *blockSequence(seq2) {
        const it = seq2.items[seq2.items.length - 1];
        switch (this.type) {
          case "newline":
            if (it.value) {
              const end = "end" in it.value ? it.value.end : void 0;
              const last = Array.isArray(end) ? end[end.length - 1] : void 0;
              if (last?.type === "comment")
                end?.push(this.sourceToken);
              else
                seq2.items.push({ start: [this.sourceToken] });
            } else
              it.start.push(this.sourceToken);
            return;
          case "space":
          case "comment":
            if (it.value)
              seq2.items.push({ start: [this.sourceToken] });
            else {
              if (this.atIndentedComment(it.start, seq2.indent)) {
                const prev = seq2.items[seq2.items.length - 2];
                const end = prev?.value?.end;
                if (Array.isArray(end)) {
                  arrayPushArray(end, it.start);
                  end.push(this.sourceToken);
                  seq2.items.pop();
                  return;
                }
              }
              it.start.push(this.sourceToken);
            }
            return;
          case "anchor":
          case "tag":
            if (it.value || this.indent <= seq2.indent)
              break;
            it.start.push(this.sourceToken);
            return;
          case "seq-item-ind":
            if (this.indent !== seq2.indent)
              break;
            if (it.value || includesToken(it.start, "seq-item-ind"))
              seq2.items.push({ start: [this.sourceToken] });
            else
              it.start.push(this.sourceToken);
            return;
        }
        if (this.indent > seq2.indent) {
          const bv = this.startBlockValue(seq2);
          if (bv) {
            this.stack.push(bv);
            return;
          }
        }
        yield* this.pop();
        yield* this.step();
      }
      *flowCollection(fc) {
        const it = fc.items[fc.items.length - 1];
        if (this.type === "flow-error-end") {
          let top;
          do {
            yield* this.pop();
            top = this.peek(1);
          } while (top?.type === "flow-collection");
        } else if (fc.end.length === 0) {
          switch (this.type) {
            case "comma":
            case "explicit-key-ind":
              if (!it || it.sep)
                fc.items.push({ start: [this.sourceToken] });
              else
                it.start.push(this.sourceToken);
              return;
            case "map-value-ind":
              if (!it || it.value)
                fc.items.push({ start: [], key: null, sep: [this.sourceToken] });
              else if (it.sep)
                it.sep.push(this.sourceToken);
              else
                Object.assign(it, { key: null, sep: [this.sourceToken] });
              return;
            case "space":
            case "comment":
            case "newline":
            case "anchor":
            case "tag":
              if (!it || it.value)
                fc.items.push({ start: [this.sourceToken] });
              else if (it.sep)
                it.sep.push(this.sourceToken);
              else
                it.start.push(this.sourceToken);
              return;
            case "alias":
            case "scalar":
            case "single-quoted-scalar":
            case "double-quoted-scalar": {
              const fs111 = this.flowScalar(this.type);
              if (!it || it.value)
                fc.items.push({ start: [], key: fs111, sep: [] });
              else if (it.sep)
                this.stack.push(fs111);
              else
                Object.assign(it, { key: fs111, sep: [] });
              return;
            }
            case "flow-map-end":
            case "flow-seq-end":
              fc.end.push(this.sourceToken);
              return;
          }
          const bv = this.startBlockValue(fc);
          if (bv)
            this.stack.push(bv);
          else {
            yield* this.pop();
            yield* this.step();
          }
        } else {
          const parent = this.peek(2);
          if (parent.type === "block-map" && (this.type === "map-value-ind" && parent.indent === fc.indent || this.type === "newline" && !parent.items[parent.items.length - 1].sep)) {
            yield* this.pop();
            yield* this.step();
          } else if (this.type === "map-value-ind" && parent.type !== "flow-collection") {
            const prev = getPrevProps(parent);
            const start = getFirstKeyStartProps(prev);
            fixFlowSeqItems(fc);
            const sep2 = fc.end.splice(1, fc.end.length);
            sep2.push(this.sourceToken);
            const map26 = {
              type: "block-map",
              offset: fc.offset,
              indent: fc.indent,
              items: [{ start, key: fc, sep: sep2 }]
            };
            this.onKeyLine = true;
            this.stack[this.stack.length - 1] = map26;
          } else {
            yield* this.lineEnd(fc);
          }
        }
      }
      flowScalar(type4) {
        if (this.onNewLine) {
          let nl = this.source.indexOf("\n") + 1;
          while (nl !== 0) {
            this.onNewLine(this.offset + nl);
            nl = this.source.indexOf("\n", nl) + 1;
          }
        }
        return {
          type: type4,
          offset: this.offset,
          indent: this.indent,
          source: this.source
        };
      }
      startBlockValue(parent) {
        switch (this.type) {
          case "alias":
          case "scalar":
          case "single-quoted-scalar":
          case "double-quoted-scalar":
            return this.flowScalar(this.type);
          case "block-scalar-header":
            return {
              type: "block-scalar",
              offset: this.offset,
              indent: this.indent,
              props: [this.sourceToken],
              source: ""
            };
          case "flow-map-start":
          case "flow-seq-start":
            return {
              type: "flow-collection",
              offset: this.offset,
              indent: this.indent,
              start: this.sourceToken,
              items: [],
              end: []
            };
          case "seq-item-ind":
            return {
              type: "block-seq",
              offset: this.offset,
              indent: this.indent,
              items: [{ start: [this.sourceToken] }]
            };
          case "explicit-key-ind": {
            this.onKeyLine = true;
            const prev = getPrevProps(parent);
            const start = getFirstKeyStartProps(prev);
            start.push(this.sourceToken);
            return {
              type: "block-map",
              offset: this.offset,
              indent: this.indent,
              items: [{ start, explicitKey: true }]
            };
          }
          case "map-value-ind": {
            this.onKeyLine = true;
            const prev = getPrevProps(parent);
            const start = getFirstKeyStartProps(prev);
            return {
              type: "block-map",
              offset: this.offset,
              indent: this.indent,
              items: [{ start, key: null, sep: [this.sourceToken] }]
            };
          }
        }
        return null;
      }
      atIndentedComment(start, indent) {
        if (this.type !== "comment")
          return false;
        if (this.indent <= indent)
          return false;
        return start.every((st) => st.type === "newline" || st.type === "space");
      }
      *documentEnd(docEnd) {
        if (this.type !== "doc-mode") {
          if (docEnd.end)
            docEnd.end.push(this.sourceToken);
          else
            docEnd.end = [this.sourceToken];
          if (this.type === "newline")
            yield* this.pop();
        }
      }
      *lineEnd(token) {
        switch (this.type) {
          case "comma":
          case "doc-start":
          case "doc-end":
          case "flow-seq-end":
          case "flow-map-end":
          case "map-value-ind":
            yield* this.pop();
            yield* this.step();
            break;
          case "newline":
            this.onKeyLine = false;
          // fallthrough
          case "space":
          case "comment":
          default:
            if (token.end)
              token.end.push(this.sourceToken);
            else
              token.end = [this.sourceToken];
            if (this.type === "newline")
              yield* this.pop();
        }
      }
    };
    exports2.Parser = Parser;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/public-api.js
var require_public_api = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/public-api.js"(exports2) {
    "use strict";
    var composer = require_composer();
    var Document = require_Document();
    var errors2 = require_errors6();
    var log3 = require_log();
    var identity5 = require_identity();
    var lineCounter = require_line_counter();
    var parser = require_parser();
    function parseOptions(options) {
      const prettyErrors = options.prettyErrors !== false;
      const lineCounter$1 = options.lineCounter || prettyErrors && new lineCounter.LineCounter() || null;
      return { lineCounter: lineCounter$1, prettyErrors };
    }
    function parseAllDocuments(source, options = {}) {
      const { lineCounter: lineCounter2, prettyErrors } = parseOptions(options);
      const parser$1 = new parser.Parser(lineCounter2?.addNewLine);
      const composer$1 = new composer.Composer(options);
      const docs = Array.from(composer$1.compose(parser$1.parse(source)));
      if (prettyErrors && lineCounter2)
        for (const doc of docs) {
          doc.errors.forEach(errors2.prettifyError(source, lineCounter2));
          doc.warnings.forEach(errors2.prettifyError(source, lineCounter2));
        }
      if (docs.length > 0)
        return docs;
      return Object.assign([], { empty: true }, composer$1.streamInfo());
    }
    function parseDocument(source, options = {}) {
      const { lineCounter: lineCounter2, prettyErrors } = parseOptions(options);
      const parser$1 = new parser.Parser(lineCounter2?.addNewLine);
      const composer$1 = new composer.Composer(options);
      let doc = null;
      for (const _doc of composer$1.compose(parser$1.parse(source), true, source.length)) {
        if (!doc)
          doc = _doc;
        else if (doc.options.logLevel !== "silent") {
          doc.errors.push(new errors2.YAMLParseError(_doc.range.slice(0, 2), "MULTIPLE_DOCS", "Source contains multiple documents; please use YAML.parseAllDocuments()"));
          break;
        }
      }
      if (prettyErrors && lineCounter2) {
        doc.errors.forEach(errors2.prettifyError(source, lineCounter2));
        doc.warnings.forEach(errors2.prettifyError(source, lineCounter2));
      }
      return doc;
    }
    function parse7(src2, reviver, options) {
      let _reviver = void 0;
      if (typeof reviver === "function") {
        _reviver = reviver;
      } else if (options === void 0 && reviver && typeof reviver === "object") {
        options = reviver;
      }
      const doc = parseDocument(src2, options);
      if (!doc)
        return null;
      doc.warnings.forEach((warning) => log3.warn(doc.options.logLevel, warning));
      if (doc.errors.length > 0) {
        if (doc.options.logLevel !== "silent")
          throw doc.errors[0];
        else
          doc.errors = [];
      }
      return doc.toJS(Object.assign({ reviver: _reviver }, options));
    }
    function stringify(value, replacer2, options) {
      let _replacer = null;
      if (typeof replacer2 === "function" || Array.isArray(replacer2)) {
        _replacer = replacer2;
      } else if (options === void 0 && replacer2) {
        options = replacer2;
      }
      if (typeof options === "string")
        options = options.length;
      if (typeof options === "number") {
        const indent = Math.round(options);
        options = indent < 1 ? void 0 : indent > 8 ? { indent: 8 } : { indent };
      }
      if (value === void 0) {
        const { keepUndefined } = options ?? replacer2 ?? {};
        if (!keepUndefined)
          return void 0;
      }
      if (identity5.isDocument(value) && !_replacer)
        return value.toString(options);
      return new Document.Document(value, _replacer, options).toString(options);
    }
    exports2.parse = parse7;
    exports2.parseAllDocuments = parseAllDocuments;
    exports2.parseDocument = parseDocument;
    exports2.stringify = stringify;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/index.js
var require_dist6 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/yaml/2.9.0/289eaaf5fca48540c4ef4ebdb3c27244c62a4ca2ac0a5d76c6d0eea0d1f3190b/node_modules/yaml/dist/index.js"(exports2) {
    "use strict";
    var composer = require_composer();
    var Document = require_Document();
    var Schema2 = require_Schema();
    var errors2 = require_errors6();
    var Alias = require_Alias();
    var identity5 = require_identity();
    var Pair = require_Pair();
    var Scalar = require_Scalar();
    var YAMLMap = require_YAMLMap();
    var YAMLSeq = require_YAMLSeq();
    var cst = require_cst();
    var lexer = require_lexer();
    var lineCounter = require_line_counter();
    var parser = require_parser();
    var publicApi = require_public_api();
    var visit = require_visit();
    exports2.Composer = composer.Composer;
    exports2.Document = Document.Document;
    exports2.Schema = Schema2.Schema;
    exports2.YAMLError = errors2.YAMLError;
    exports2.YAMLParseError = errors2.YAMLParseError;
    exports2.YAMLWarning = errors2.YAMLWarning;
    exports2.Alias = Alias.Alias;
    exports2.isAlias = identity5.isAlias;
    exports2.isCollection = identity5.isCollection;
    exports2.isDocument = identity5.isDocument;
    exports2.isMap = identity5.isMap;
    exports2.isNode = identity5.isNode;
    exports2.isPair = identity5.isPair;
    exports2.isScalar = identity5.isScalar;
    exports2.isSeq = identity5.isSeq;
    exports2.Pair = Pair.Pair;
    exports2.Scalar = Scalar.Scalar;
    exports2.YAMLMap = YAMLMap.YAMLMap;
    exports2.YAMLSeq = YAMLSeq.YAMLSeq;
    exports2.CST = cst;
    exports2.Lexer = lexer.Lexer;
    exports2.LineCounter = lineCounter.LineCounter;
    exports2.Parser = parser.Parser;
    exports2.parse = publicApi.parse;
    exports2.parseAllDocuments = publicApi.parseAllDocuments;
    exports2.parseDocument = publicApi.parseDocument;
    exports2.stringify = publicApi.stringify;
    exports2.visit = visit.visit;
    exports2.visitAsync = visit.visitAsync;
  }
});

// ../yaml/document-sync/lib/patchDocument.js
function patchDocument(document2, target2, options) {
  if (document2.errors.length > 0) {
    throw new Error("Document with errors cannot be patched");
  }
  document2.contents = patchNode(document2.contents, target2, {
    document: document2,
    aliases: options?.aliases ?? "unwrap"
  });
}
function patchNode(node, target2, ctx) {
  if (node == null) {
    return ctx.document.createNode(target2);
  }
  if (target2 == null) {
    return null;
  }
  if (import_yaml.default.isAlias(node)) {
    return patchAlias(node, target2, ctx);
  }
  if (import_yaml.default.isScalar(node)) {
    return patchScalar(node, target2, ctx);
  }
  if (import_yaml.default.isMap(node)) {
    return patchMap(node, target2, ctx);
  }
  if (import_yaml.default.isSeq(node)) {
    return patchSeq(node, target2, ctx);
  }
  const _never = node;
  throw new Error("Unrecognized yaml node: " + String(node));
}
function patchAlias(alias, target2, ctx) {
  const resolved = alias.resolve(ctx.document);
  if (resolved == null) {
    throw new Error("Failed to resolve yaml alias: " + alias.source);
  }
  switch (ctx.aliases) {
    case "follow": {
      patchNode(resolved, target2, ctx);
      return alias;
    }
    case "unwrap": {
      const copy2 = resolved.clone();
      copy2.anchor = void 0;
      patchNode(copy2, target2, ctx);
      return copy2;
    }
  }
}
function patchScalar(scalar, target2, ctx) {
  if (scalar.value === target2) {
    return scalar;
  }
  if (typeof target2 === "boolean" || typeof target2 === "string" || typeof target2 === "number") {
    scalar.value = target2;
    return scalar;
  }
  return ctx.document.createNode(target2);
}
function patchMap(map26, target2, ctx) {
  if (!isRecord(target2)) {
    return ctx.document.createNode(target2);
  }
  if (target2 == null || Object.keys(target2).length === 0) {
    return null;
  }
  const mapKeyToExistingPair = /* @__PURE__ */ new Map();
  for (const pair of map26.items) {
    if (!import_yaml.default.isScalar(pair.key) || typeof pair.key.value !== "string") {
      throw new Error("Encountered unexpected non-node value: " + String(pair.key));
    }
    mapKeyToExistingPair.set(pair.key.value, pair);
  }
  map26.items = Object.entries(target2).map(([key, value]) => {
    const existingPair = mapKeyToExistingPair.get(key);
    if (existingPair == null) {
      return ctx.document.createPair(key, value);
    }
    if (!import_yaml.default.isNode(existingPair.value)) {
      throw new Error("Encountered unexpected non-node value: " + String(existingPair.value));
    }
    existingPair.value = patchNode(existingPair.value, value, ctx);
    return existingPair;
  }).filter((pair) => pair.value != null);
  return map26;
}
function patchSeq(seq2, target2, ctx) {
  if (!Array.isArray(target2)) {
    return ctx.document.createNode(target2);
  }
  return isPrimitiveList(target2) ? patchSeqPrimitive(seq2, target2) : patchSeqComplex(seq2, target2, ctx);
}
function patchSeqPrimitive(seq2, target2) {
  const valueToNodesMap = /* @__PURE__ */ new Map();
  for (const item of seq2.items) {
    if (item != null && !import_yaml.default.isNode(item)) {
      throw new Error("Encountered unexpected non-node value: " + String(item));
    }
    if (!import_yaml.default.isScalar(item) || !isPrimitive(item.value) || item.value == null) {
      continue;
    }
    const nodeList = valueToNodesMap.get(item.value) ?? [];
    nodeList.push(item);
    valueToNodesMap.set(item.value, nodeList);
  }
  seq2.items = target2.filter((item) => item != null).map((item) => {
    const existingNodesList = valueToNodesMap.get(item);
    const firstExistingItem = existingNodesList?.shift();
    if (existingNodesList?.length === 0) {
      valueToNodesMap.delete(item);
    }
    return firstExistingItem ?? new import_yaml.default.Scalar(item);
  });
  return seq2;
}
function patchSeqComplex(seq2, target2, ctx) {
  const nextItems = [];
  for (let i2 = 0; i2 < Math.max(seq2.items.length, target2.length); i2++) {
    const existingItem = seq2.items[i2];
    const targetItem = target2[i2];
    if (existingItem != null && !import_yaml.default.isNode(existingItem)) {
      throw new Error("Encountered unexpected non-node value: " + String(existingItem));
    }
    const nextItem = patchNode(existingItem, targetItem, ctx);
    if (nextItem == null) {
      continue;
    }
    nextItems.push(nextItem);
  }
  seq2.items = nextItems;
  return seq2;
}
function isRecord(value) {
  return value != null && typeof value === "object" && !Array.isArray(value);
}
function isPrimitiveList(arr) {
  return arr.every(isPrimitive);
}
function isPrimitive(value) {
  return value == null || typeof value === "boolean" || typeof value === "string" || typeof value === "number";
}
var import_yaml;
var init_patchDocument = __esm({
  "../yaml/document-sync/lib/patchDocument.js"() {
    "use strict";
    import_yaml = __toESM(require_dist6(), 1);
  }
});

// ../yaml/document-sync/lib/index.js
var init_lib98 = __esm({
  "../yaml/document-sync/lib/index.js"() {
    "use strict";
    init_patchDocument();
  }
});

// ../workspace/workspace-manifest-writer/lib/index.js
import fs53 from "node:fs";
import path90 from "node:path";
import util31 from "node:util";
async function writeManifestFile(dir, fileName, manifest) {
  const manifestStr = manifest.toString({
    lineWidth: 0,
    // This is setting line width to never wrap
    singleQuote: true
    // Prefer single quotes over double quotes
  });
  await fs53.promises.mkdir(dir, { recursive: true });
  await (0, import_write_file_atomic7.default)(path90.join(dir, fileName), manifestStr);
}
async function readManifestRaw2(file) {
  try {
    return (await fs53.promises.readFile(file)).toString();
  } catch (err) {
    if (util31.types.isNativeError(err) && "code" in err && err.code === "ENOENT") {
      return void 0;
    }
    throw err;
  }
}
async function updateWorkspaceManifest(dir, opts2) {
  const fileName = opts2.fileName ?? DEFAULT_FILENAME;
  const workspaceManifestStr = await readManifestRaw2(path90.join(dir, fileName));
  const document2 = workspaceManifestStr != null ? import_yaml3.default.parseDocument(workspaceManifestStr) : new import_yaml3.default.Document();
  let manifest = document2.toJSON();
  validateWorkspaceManifest(manifest);
  manifest ??= {};
  const originalKeyOrder = captureKeyOrder(manifest);
  let shouldBeUpdated = opts2.updatedCatalogs != null && addCatalogs(manifest, opts2.updatedCatalogs);
  if (opts2.cleanupUnusedCatalogs) {
    shouldBeUpdated = removePackagesFromWorkspaceCatalog(manifest, opts2.allProjects ?? []) || shouldBeUpdated;
  }
  const updatedFields = { ...opts2.updatedFields };
  for (const [key, value] of Object.entries(updatedFields)) {
    if (!equals_default(manifest[key], value)) {
      shouldBeUpdated = true;
      if (value == null) {
        delete manifest[key];
      } else {
        manifest[key] = value;
      }
    }
  }
  if (opts2.updatedOverrides) {
    manifest.overrides ??= {};
    for (const [key, value] of Object.entries(opts2.updatedOverrides)) {
      if (!equals_default(manifest.overrides[key], value)) {
        shouldBeUpdated = true;
        manifest.overrides[key] = value;
      }
    }
  }
  if (opts2.addedMinimumReleaseAgeExcludes?.length) {
    const existing = manifest.minimumReleaseAgeExclude ?? [];
    const existingSet = new Set(existing);
    const newEntries = [...new Set(opts2.addedMinimumReleaseAgeExcludes)].filter((entry) => !existingSet.has(entry));
    if (newEntries.length > 0) {
      shouldBeUpdated = true;
      manifest.minimumReleaseAgeExclude = [...existing, ...newEntries];
    }
  }
  if (!shouldBeUpdated) {
    return;
  }
  if (Object.keys(manifest).length === 0) {
    await fs53.promises.rm(path90.join(dir, fileName));
    return;
  }
  manifest = reorderRecursive(originalKeyOrder, manifest);
  patchDocument(document2, manifest);
  propagateBlankLinesToNewPairs(document2, originalKeyOrder?.keys ?? []);
  await writeManifestFile(dir, fileName, document2);
}
function addCatalogs(manifest, newCatalogs) {
  let shouldBeUpdated = false;
  for (const catalogName in newCatalogs) {
    let targetCatalog = catalogName === "default" ? manifest.catalog ?? manifest.catalogs?.default : manifest.catalogs?.[catalogName];
    const targetCatalogWasNil = targetCatalog == null;
    for (const [dependencyName, specifier] of Object.entries(newCatalogs[catalogName] ?? {})) {
      if (specifier == null) {
        continue;
      }
      targetCatalog ??= {};
      if (targetCatalog[dependencyName] !== specifier) {
        targetCatalog[dependencyName] = specifier;
        shouldBeUpdated = true;
      }
    }
    if (targetCatalog == null)
      continue;
    if (targetCatalogWasNil) {
      if (catalogName === "default") {
        manifest.catalog = targetCatalog;
      } else {
        manifest.catalogs ??= {};
        manifest.catalogs[catalogName] = targetCatalog;
      }
    }
  }
  return shouldBeUpdated;
}
function removePackagesFromWorkspaceCatalog(manifest, packagesJson) {
  let shouldBeUpdated = false;
  if (packagesJson.length === 0 || manifest.catalog == null && manifest.catalogs == null) {
    return shouldBeUpdated;
  }
  const packageReferences = {};
  for (const pkg of packagesJson) {
    const pkgManifest = pkg.manifest;
    const dependencyTypes = [
      pkgManifest.dependencies,
      pkgManifest.devDependencies,
      pkgManifest.optionalDependencies,
      pkgManifest.peerDependencies
    ];
    for (const deps of dependencyTypes) {
      if (!deps)
        continue;
      for (const [pkgName, version2] of Object.entries(deps)) {
        addPackageReference(packageReferences, pkgName, version2);
      }
    }
  }
  for (const [selector, version2] of Object.entries(manifest.overrides ?? {})) {
    if (!version2.startsWith("catalog:")) {
      continue;
    }
    let pkgName;
    try {
      pkgName = parsePkgAndParentSelector(selector).targetPkg.name;
    } catch {
      continue;
    }
    addPackageReference(packageReferences, pkgName, version2);
  }
  if (manifest.catalog) {
    const packagesToRemove = Object.keys(manifest.catalog).filter((pkg) => !packageReferences[pkg]?.has("catalog:"));
    for (const pkg of packagesToRemove) {
      delete manifest.catalog[pkg];
      shouldBeUpdated = true;
    }
    if (Object.keys(manifest.catalog).length === 0) {
      delete manifest.catalog;
      shouldBeUpdated = true;
    }
  }
  if (manifest.catalogs) {
    const catalogsToRemove = [];
    for (const [catalogName, catalog] of Object.entries(manifest.catalogs)) {
      if (!catalog)
        continue;
      const packagesToRemove = Object.keys(catalog).filter((pkg) => {
        const references = packageReferences[pkg];
        return !references?.has(`catalog:${catalogName}`) && !references?.has("catalog:");
      });
      for (const pkg of packagesToRemove) {
        delete catalog[pkg];
        shouldBeUpdated = true;
      }
      if (Object.keys(catalog).length === 0) {
        catalogsToRemove.push(catalogName);
        shouldBeUpdated = true;
      }
    }
    for (const catalogName of catalogsToRemove) {
      delete manifest.catalogs[catalogName];
    }
    if (Object.keys(manifest.catalogs).length === 0) {
      delete manifest.catalogs;
      shouldBeUpdated = true;
    }
  }
  return shouldBeUpdated;
}
function addPackageReference(packageReferences, pkgName, version2) {
  if (!packageReferences[pkgName]) {
    packageReferences[pkgName] = /* @__PURE__ */ new Set();
  }
  packageReferences[pkgName].add(version2);
}
function captureKeyOrder(value) {
  if (!isPlainObject2(value))
    return null;
  const children = {};
  for (const [key, child] of Object.entries(value)) {
    const childOrder = captureKeyOrder(child);
    if (childOrder != null) {
      children[key] = childOrder;
    }
  }
  return { keys: Object.keys(value), children };
}
function reorderRecursive(originalOrder, current) {
  if (!isPlainObject2(current))
    return current;
  const originalKeys = originalOrder?.keys ?? [];
  const originalKeySet = new Set(originalKeys);
  const survivingOriginal = originalKeys.filter((key) => Object.hasOwn(current, key));
  const newKeys = Object.keys(current).filter((key) => !originalKeySet.has(key));
  let orderedKeys;
  if (newKeys.length === 0) {
    orderedKeys = survivingOriginal;
  } else {
    const layout = detectKeyLayout(originalKeys);
    orderedKeys = layout === "unordered" ? [...survivingOriginal, ...newKeys] : sortKeys2([...survivingOriginal, ...newKeys], layout);
  }
  const result2 = {};
  for (const key of orderedKeys) {
    result2[key] = reorderRecursive(originalOrder?.children[key] ?? null, current[key]);
  }
  return result2;
}
function detectKeyLayout(keys4) {
  if (keys4.length === 0)
    return "packages-first";
  const packagesFirst = keys4[0] === "packages";
  const start = packagesFirst ? 1 : 0;
  for (let i2 = start + 1; i2 < keys4.length; i2++) {
    if ((0, import_util8.lexCompare)(keys4[i2 - 1], keys4[i2]) > 0)
      return "unordered";
  }
  return packagesFirst ? "packages-first" : "alphabetical";
}
function sortKeys2(keys4, layout) {
  if (layout === "packages-first" && keys4.includes("packages")) {
    return ["packages", ...keys4.filter((key) => key !== "packages").sort(import_util8.lexCompare)];
  }
  return [...keys4].sort(import_util8.lexCompare);
}
function isPlainObject2(value) {
  return value != null && typeof value === "object" && !Array.isArray(value);
}
function propagateBlankLinesToNewPairs(document2, originalTopLevelKeys) {
  if (!import_yaml3.default.isMap(document2.contents))
    return;
  const items = document2.contents.items;
  const keyOf = (pair) => import_yaml3.default.isScalar(pair.key) && typeof pair.key.value === "string" ? pair.key : null;
  const originalKeySet = new Set(originalTopLevelKeys);
  const originalFirstKey = originalTopLevelKeys[0] ?? null;
  let originalNonFirstCount = 0;
  let originalNonFirstWithBlank = 0;
  for (const item of items) {
    const k2 = keyOf(item);
    if (k2 == null || !originalKeySet.has(k2.value) || k2.value === originalFirstKey)
      continue;
    originalNonFirstCount++;
    if (k2.spaceBefore)
      originalNonFirstWithBlank++;
  }
  const usesBlankLineStyle = originalNonFirstCount > 0 && originalNonFirstWithBlank === originalNonFirstCount;
  for (let i2 = 1; i2 < items.length; i2++) {
    const key = keyOf(items[i2]);
    if (key == null || key.spaceBefore)
      continue;
    if (usesBlankLineStyle) {
      key.spaceBefore = true;
      continue;
    }
    if (originalKeySet.has(key.value))
      continue;
    const nextKey = items[i2 + 1] ? keyOf(items[i2 + 1]) : null;
    const prevKey = items[i2 - 1] ? keyOf(items[i2 - 1]) : null;
    if (nextKey?.spaceBefore || nextKey == null && prevKey?.spaceBefore) {
      key.spaceBefore = true;
    }
  }
}
var import_util8, import_write_file_atomic7, import_yaml3, DEFAULT_FILENAME;
var init_lib99 = __esm({
  "../workspace/workspace-manifest-writer/lib/index.js"() {
    "use strict";
    init_lib97();
    init_lib();
    import_util8 = __toESM(require_dist3(), 1);
    init_lib31();
    init_lib98();
    init_es();
    import_write_file_atomic7 = __toESM(require_lib2(), 1);
    import_yaml3 = __toESM(require_dist6(), 1);
    DEFAULT_FILENAME = WORKSPACE_MANIFEST_FILENAME;
  }
});

// ../config/writer/lib/index.js
async function writeSettings(opts2) {
  await updateWorkspaceManifest(opts2.workspaceDir, {
    updatedFields: opts2.updatedSettings,
    updatedOverrides: opts2.updatedOverrides,
    addedMinimumReleaseAgeExcludes: opts2.addedMinimumReleaseAgeExcludes
  });
}
var init_lib100 = __esm({
  "../config/writer/lib/index.js"() {
    "use strict";
    init_lib99();
  }
});

// ../global/packages/lib/cacheKey.js
function createGlobalCacheKey(opts2) {
  const sortedAliases = [...opts2.aliases].sort(import_util9.lexCompare);
  const sortedRegistries = Object.entries(opts2.registries).sort(([k1], [k2]) => (0, import_util9.lexCompare)(k1, k2));
  const hashStr = JSON.stringify([sortedAliases, sortedRegistries]);
  return createHexHash(hashStr);
}
var import_util9;
var init_cacheKey = __esm({
  "../global/packages/lib/cacheKey.js"() {
    "use strict";
    init_lib20();
    import_util9 = __toESM(require_dist3(), 1);
  }
});

// ../global/packages/lib/globalPackageDir.js
import fs54 from "node:fs";
import path91 from "node:path";
function getHashLink(globalDir, hash2) {
  return path91.join(globalDir, hash2);
}
function createInstallDir(globalDir) {
  const name = `${process.pid.toString(16)}-${Date.now().toString(16)}`;
  const dir = path91.join(globalDir, name);
  fs54.mkdirSync(dir, { recursive: true });
  return dir;
}
var init_globalPackageDir = __esm({
  "../global/packages/lib/globalPackageDir.js"() {
    "use strict";
  }
});

// ../global/packages/lib/scanGlobalPackages.js
import fs55 from "node:fs";
import path92 from "node:path";
import util32 from "node:util";
function scanGlobalPackages(globalDir) {
  let entries;
  try {
    entries = fs55.readdirSync(globalDir, { withFileTypes: true });
  } catch (err) {
    if (util32.types.isNativeError(err) && "code" in err && err.code === "ENOENT") {
      return [];
    }
    throw err;
  }
  const result2 = [];
  for (const entry of entries) {
    if (!entry.isSymbolicLink())
      continue;
    const linkPath = path92.join(globalDir, entry.name);
    let installDir;
    try {
      installDir = fs55.realpathSync(linkPath);
    } catch {
      continue;
    }
    let pkgJson2;
    try {
      pkgJson2 = readPackageJsonFromDirRawSync(installDir);
    } catch {
      continue;
    }
    if (!pkgJson2.dependencies || Object.keys(pkgJson2.dependencies).length === 0)
      continue;
    result2.push({
      hash: entry.name,
      installDir,
      dependencies: pkgJson2.dependencies
    });
  }
  return result2;
}
function findGlobalPackage(globalDir, alias) {
  const packages = scanGlobalPackages(globalDir);
  return packages.find((pkg) => alias in pkg.dependencies) ?? null;
}
async function getGlobalPackageDetails(info) {
  const aliases = Object.keys(info.dependencies);
  const installedPackages = await Promise.all(aliases.map(async (alias) => {
    const manifest = await safeReadPackageJsonFromDir(path92.join(info.installDir, "node_modules", alias));
    if (!manifest)
      return null;
    return { alias, version: manifest.version, manifest };
  }));
  return installedPackages.filter((pkg) => pkg !== null);
}
function cleanOrphanedInstallDirs(globalDir) {
  globalDir = path92.resolve(globalDir);
  let entries;
  try {
    entries = fs55.readdirSync(globalDir, { withFileTypes: true });
  } catch {
    return;
  }
  const referenced = /* @__PURE__ */ new Set();
  for (const entry of entries) {
    if (!entry.isSymbolicLink())
      continue;
    try {
      referenced.add(fs55.realpathSync(path92.join(globalDir, entry.name)));
    } catch {
    }
  }
  const now = Date.now();
  const SAFETY_WINDOW_MS = 5 * 60 * 1e3;
  for (const entry of entries) {
    if (!entry.isDirectory())
      continue;
    const dirPath = path92.join(globalDir, entry.name);
    if (referenced.has(dirPath))
      continue;
    try {
      const stat2 = fs55.statSync(dirPath);
      if (now - Math.max(stat2.birthtimeMs, stat2.ctimeMs) < SAFETY_WINDOW_MS)
        continue;
    } catch {
      continue;
    }
    fs55.rmSync(dirPath, { recursive: true, force: true });
  }
}
async function getInstalledBinNames(info) {
  const bins = /* @__PURE__ */ new Set();
  const aliases = Object.keys(info.dependencies);
  const modulesDir = path92.join(info.installDir, "node_modules");
  await Promise.all(aliases.map(async (alias) => {
    const depDir = path92.join(modulesDir, alias);
    const manifest = await safeReadPackageJsonFromDir(depDir);
    if (!manifest)
      return;
    const binsOfPkg = await getBinsFromPackageManifest(manifest, depDir);
    for (const bin of binsOfPkg) {
      bins.add(bin.name);
    }
  }));
  return [...bins];
}
var init_scanGlobalPackages = __esm({
  "../global/packages/lib/scanGlobalPackages.js"() {
    "use strict";
    init_lib40();
    init_lib39();
  }
});

// ../global/packages/lib/index.js
var init_lib101 = __esm({
  "../global/packages/lib/index.js"() {
    "use strict";
    init_cacheKey();
    init_globalPackageDir();
    init_scanGlobalPackages();
  }
});

// ../global/commands/lib/checkGlobalBinConflicts.js
import fs56 from "node:fs";
import path93 from "node:path";
async function checkGlobalBinConflicts(opts2) {
  const binsToSkip = /* @__PURE__ */ new Set();
  const newBinOwners = /* @__PURE__ */ new Map();
  await Promise.all(opts2.newPkgs.map(async (pkg) => {
    const bins = await getBinsFromPackageManifest(pkg.manifest, pkg.location);
    for (const bin of bins) {
      const owners = newBinOwners.get(bin.name);
      if (owners) {
        owners.push(pkg.manifest.name);
      } else {
        newBinOwners.set(bin.name, [pkg.manifest.name]);
      }
    }
  }));
  if (newBinOwners.size === 0)
    return binsToSkip;
  const conflicting = new Set([...newBinOwners.keys()].filter((name) => fs56.existsSync(path93.join(opts2.globalBinDir, name))));
  if (conflicting.size === 0)
    return binsToSkip;
  const existingPackages = scanGlobalPackages(opts2.globalDir);
  for (const existingPkg of existingPackages) {
    if (opts2.shouldSkip(existingPkg))
      continue;
    const modulesDir = path93.join(existingPkg.installDir, "node_modules");
    for (const alias of Object.keys(existingPkg.dependencies)) {
      const depDir = path93.join(modulesDir, alias);
      const manifest = await safeReadPackageJsonFromDir(depDir);
      if (!manifest)
        continue;
      const bins = await getBinsFromPackageManifest(manifest, depDir);
      for (const bin of bins) {
        if (!conflicting.has(bin.name))
          continue;
        const newOwns = newBinOwners.get(bin.name).some((owner) => pkgOwnsBin(bin.name, owner));
        const existingOwns = pkgOwnsBin(bin.name, manifest.name);
        if (newOwns && !existingOwns)
          continue;
        if (existingOwns && !newOwns) {
          binsToSkip.add(bin.name);
          continue;
        }
        const conflictDisplay = alias === manifest.name ? `"${alias}"` : `"${alias}" (package "${manifest.name}")`;
        throw new PnpmError("GLOBAL_BIN_CONFLICT", `Cannot install: binary "${bin.name}" would conflict with ${conflictDisplay} that is already installed globally`, {
          hint: `Remove the conflicting package first: pnpm remove -g ${alias}`
        });
      }
    }
  }
  return binsToSkip;
}
var init_checkGlobalBinConflicts = __esm({
  "../global/commands/lib/checkGlobalBinConflicts.js"() {
    "use strict";
    init_lib40();
    init_lib2();
    init_lib101();
    init_lib39();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/cmd-extension/2.0.0/097570cd6df7f312030b5c3d573963575f7e8b5500eebbf732719aa30b61b8f7/node_modules/cmd-extension/index.js
import path94 from "node:path";
var _cmdExtension, cmdExtension;
var init_cmd_extension = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/cmd-extension/2.0.0/097570cd6df7f312030b5c3d573963575f7e8b5500eebbf732719aa30b61b8f7/node_modules/cmd-extension/index.js"() {
    if (process.env.PATHEXT) {
      _cmdExtension = process.env.PATHEXT.split(path94.delimiter).find((ext) => ext.toUpperCase() === ".CMD");
    }
    cmdExtension = _cmdExtension || ".cmd";
  }
});

// ../bins/remover/lib/removeBins.js
import path95 from "node:path";
async function removeOnWin(cmd) {
  removalLogger.debug(cmd);
  await Promise.all([
    rimraf(cmd),
    rimraf(`${cmd}.ps1`),
    rimraf(`${cmd}${cmdExtension}`)
  ]);
}
async function removeOnNonWin(p) {
  removalLogger.debug(p);
  return rimraf(p);
}
async function removeBinsOfDependency(dependencyDir, opts2) {
  const uninstalledPkgJson = await safeReadPackageJsonFromDir(dependencyDir);
  if (!uninstalledPkgJson)
    return;
  const cmds = await getBinsFromPackageManifest(uninstalledPkgJson, dependencyDir);
  if (!opts2.dryRun) {
    await Promise.all(cmds.map((cmd) => path95.join(opts2.binsDir, cmd.name)).map(removeBin));
  }
  return uninstalledPkgJson;
}
var import_is_windows8, removeBin;
var init_removeBins = __esm({
  "../bins/remover/lib/removeBins.js"() {
    "use strict";
    init_lib40();
    init_lib6();
    init_lib39();
    init_rimraf();
    init_cmd_extension();
    import_is_windows8 = __toESM(require_is_windows(), 1);
    removeBin = (0, import_is_windows8.default)() ? removeOnWin : removeOnNonWin;
  }
});

// ../bins/remover/lib/index.js
var init_lib102 = __esm({
  "../bins/remover/lib/index.js"() {
    "use strict";
    init_removeBins();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/extensions/2.0.6/566d284054118a5094f54bb8e6ef79ce9f235cb0711fb5f513bf7a5db50ab32f/node_modules/@yarnpkg/extensions/lib/index.js
var require_lib23 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/extensions/2.0.6/566d284054118a5094f54bb8e6ef79ce9f235cb0711fb5f513bf7a5db50ab32f/node_modules/@yarnpkg/extensions/lib/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.packageExtensions = void 0;
    var optionalPeerDep = {
      optional: true
    };
    exports2.packageExtensions = [
      // https://github.com/tailwindlabs/tailwindcss-aspect-ratio/pull/14
      [`@tailwindcss/aspect-ratio@<0.2.1`, {
        peerDependencies: {
          [`tailwindcss`]: `^2.0.2`
        }
      }],
      // https://github.com/tailwindlabs/tailwindcss-line-clamp/pull/6
      [`@tailwindcss/line-clamp@<0.2.1`, {
        peerDependencies: {
          [`tailwindcss`]: `^2.0.2`
        }
      }],
      // https://github.com/FullHuman/purgecss/commit/24116f394dc54c913e4fd254cf2d78c03db971f2
      [`@fullhuman/postcss-purgecss@3.1.3 || 3.1.3-alpha.0`, {
        peerDependencies: {
          [`postcss`]: `^8.0.0`
        }
      }],
      // https://github.com/SamVerschueren/stream-to-observable/pull/5
      [`@samverschueren/stream-to-observable@<0.3.1`, {
        peerDependenciesMeta: {
          [`rxjs`]: optionalPeerDep,
          [`zenObservable`]: optionalPeerDep
        }
      }],
      // https://github.com/sindresorhus/any-observable/pull/25
      [`any-observable@<0.5.1`, {
        peerDependenciesMeta: {
          [`rxjs`]: optionalPeerDep,
          [`zenObservable`]: optionalPeerDep
        }
      }],
      // https://github.com/keymetrics/pm2-io-agent/pull/125
      [`@pm2/agent@<1.0.4`, {
        dependencies: {
          [`debug`]: `*`
        }
      }],
      // https://github.com/visionmedia/debug/pull/727
      [`debug@<4.2.0`, {
        peerDependenciesMeta: {
          [`supports-color`]: optionalPeerDep
        }
      }],
      // https://github.com/sindresorhus/got/pull/1125
      [`got@<11`, {
        dependencies: {
          [`@types/responselike`]: `^1.0.0`,
          [`@types/keyv`]: `^3.1.1`
        }
      }],
      // https://github.com/szmarczak/cacheable-lookup/pull/12
      [`cacheable-lookup@<4.1.2`, {
        dependencies: {
          [`@types/keyv`]: `^3.1.1`
        }
      }],
      // https://github.com/prisma-labs/http-link-dataloader/pull/22
      [`http-link-dataloader@*`, {
        peerDependencies: {
          [`graphql`]: `^0.13.1 || ^14.0.0`
        }
      }],
      // https://github.com/theia-ide/typescript-language-server/issues/144
      [`typescript-language-server@*`, {
        dependencies: {
          [`vscode-jsonrpc`]: `^5.0.1`,
          [`vscode-languageserver-protocol`]: `^3.15.0`
        }
      }],
      // https://github.com/gucong3000/postcss-syntax/pull/46
      [`postcss-syntax@*`, {
        peerDependenciesMeta: {
          [`postcss-html`]: optionalPeerDep,
          [`postcss-jsx`]: optionalPeerDep,
          [`postcss-less`]: optionalPeerDep,
          [`postcss-markdown`]: optionalPeerDep,
          [`postcss-scss`]: optionalPeerDep
        }
      }],
      // https://github.com/cssinjs/jss/pull/1315
      [`jss-plugin-rule-value-function@<=10.1.1`, {
        dependencies: {
          [`tiny-warning`]: `^1.0.2`
        }
      }],
      // https://github.com/vadimdemedes/ink-select-input/pull/26
      [`ink-select-input@<4.1.0`, {
        peerDependencies: {
          react: `^16.8.2`
        }
      }],
      // https://github.com/xz64/license-webpack-plugin/pull/100
      [`license-webpack-plugin@<2.3.18`, {
        peerDependenciesMeta: {
          [`webpack`]: optionalPeerDep
        }
      }],
      // https://github.com/snowpackjs/snowpack/issues/3158
      [`snowpack@>=3.3.0`, {
        dependencies: {
          [`node-gyp`]: `^7.1.0`
        }
      }],
      // https://github.com/iarna/promise-inflight/pull/4
      [`promise-inflight@*`, {
        peerDependenciesMeta: {
          [`bluebird`]: optionalPeerDep
        }
      }],
      // https://github.com/casesandberg/reactcss/pull/153
      [`reactcss@*`, {
        peerDependencies: {
          react: `*`
        }
      }],
      // https://github.com/casesandberg/react-color/pull/746
      [`react-color@<=2.19.0`, {
        peerDependencies: {
          react: `*`
        }
      }],
      // https://github.com/angeloocana/gatsby-plugin-i18n/pull/145
      [`gatsby-plugin-i18n@*`, {
        dependencies: {
          ramda: `^0.24.1`
        }
      }],
      // https://github.com/3rd-Eden/useragent/pull/159
      [`useragent@^2.0.0`, {
        dependencies: {
          request: `^2.88.0`,
          yamlparser: `0.0.x`,
          semver: `5.5.x`
        }
      }],
      // https://github.com/apollographql/apollo-tooling/pull/2049
      [`@apollographql/apollo-tools@<=0.5.2`, {
        peerDependencies: {
          graphql: `^14.2.1 || ^15.0.0`
        }
      }],
      // https://github.com/mbrn/material-table/pull/2374
      [`material-table@^2.0.0`, {
        dependencies: {
          "@babel/runtime": `^7.11.2`
        }
      }],
      // https://github.com/babel/babel/pull/11118
      [`@babel/parser@*`, {
        dependencies: {
          "@babel/types": `^7.8.3`
        }
      }],
      // https://github.com/TypeStrong/fork-ts-checker-webpack-plugin/pull/507
      [`fork-ts-checker-webpack-plugin@<=6.3.4`, {
        peerDependencies: {
          eslint: `>= 6`,
          typescript: `>= 2.7`,
          webpack: `>= 4`,
          "vue-template-compiler": `*`
        },
        peerDependenciesMeta: {
          eslint: optionalPeerDep,
          "vue-template-compiler": optionalPeerDep
        }
      }],
      // https://github.com/react-component/animate/pull/116
      [`rc-animate@<=3.1.1`, {
        peerDependencies: {
          react: `>=16.9.0`,
          "react-dom": `>=16.9.0`
        }
      }],
      // https://github.com/react-bootstrap-table/react-bootstrap-table2/pull/1491
      [`react-bootstrap-table2-paginator@*`, {
        dependencies: {
          classnames: `^2.2.6`
        }
      }],
      // https://github.com/STRML/react-draggable/pull/525
      [`react-draggable@<=4.4.3`, {
        peerDependencies: {
          react: `>= 16.3.0`,
          "react-dom": `>= 16.3.0`
        }
      }],
      // https://github.com/jaydenseric/apollo-upload-client/commit/336691cec6698661ab404649e4e8435750255803
      [`apollo-upload-client@<14`, {
        peerDependencies: {
          graphql: `14 - 15`
        }
      }],
      // https://github.com/algolia/react-instantsearch/pull/2975
      [`react-instantsearch-core@<=6.7.0`, {
        peerDependencies: {
          algoliasearch: `>= 3.1 < 5`
        }
      }],
      // https://github.com/algolia/react-instantsearch/pull/2975
      [`react-instantsearch-dom@<=6.7.0`, {
        dependencies: {
          "react-fast-compare": `^3.0.0`
        }
      }],
      // https://github.com/websockets/ws/pull/1626
      [`ws@<7.2.1`, {
        peerDependencies: {
          bufferutil: `^4.0.1`,
          "utf-8-validate": `^5.0.2`
        },
        peerDependenciesMeta: {
          bufferutil: optionalPeerDep,
          "utf-8-validate": optionalPeerDep
        }
      }],
      // https://github.com/tajo/react-portal/pull/233
      // https://github.com/tajo/react-portal/commit/daf85792c2fce25a3481b6f9132ef61a110f3d78
      [`react-portal@<4.2.2`, {
        peerDependencies: {
          "react-dom": `^15.0.0-0 || ^16.0.0-0 || ^17.0.0-0`
        }
      }],
      // https://github.com/facebook/create-react-app/pull/9872
      [`react-scripts@<=4.0.1`, {
        peerDependencies: {
          [`react`]: `*`
        }
      }],
      // https://github.com/DevExpress/testcafe/pull/5872
      [`testcafe@<=1.10.1`, {
        dependencies: {
          "@babel/plugin-transform-for-of": `^7.12.1`,
          "@babel/runtime": `^7.12.5`
        }
      }],
      // https://github.com/DevExpress/testcafe-legacy-api/pull/51
      [`testcafe-legacy-api@<=4.2.0`, {
        dependencies: {
          "testcafe-hammerhead": `^17.0.1`,
          "read-file-relative": `^1.2.0`
        }
      }],
      // https://github.com/googleapis/nodejs-firestore/pull/1425
      [`@google-cloud/firestore@<=4.9.3`, {
        dependencies: {
          protobufjs: `^6.8.6`
        }
      }],
      // https://github.com/thinhle-agilityio/gatsby-source-apiserver/pull/58
      [`gatsby-source-apiserver@*`, {
        dependencies: {
          [`babel-polyfill`]: `^6.26.0`
        }
      }],
      // https://github.com/webpack/webpack-cli/pull/2097
      [`@webpack-cli/package-utils@<=1.0.1-alpha.4`, {
        dependencies: {
          [`cross-spawn`]: `^7.0.3`
        }
      }],
      // https://github.com/gatsbyjs/gatsby/pull/20156
      [`gatsby-remark-prismjs@<3.3.28`, {
        dependencies: {
          [`lodash`]: `^4`
        }
      }],
      // https://github.com/Creatiwity/gatsby-plugin-favicon/pull/65
      [`gatsby-plugin-favicon@*`, {
        peerDependencies: {
          [`webpack`]: `*`
        }
      }],
      // https://github.com/gatsbyjs/gatsby/pull/28759
      [`gatsby-plugin-sharp@<=4.6.0-next.3`, {
        dependencies: {
          [`debug`]: `^4.3.1`
        }
      }],
      // https://github.com/gatsbyjs/gatsby/pull/28759
      [`gatsby-react-router-scroll@<=5.6.0-next.0`, {
        dependencies: {
          [`prop-types`]: `^15.7.2`
        }
      }],
      // https://github.com/rebassjs/rebass/pull/934
      [`@rebass/forms@*`, {
        dependencies: {
          [`@styled-system/should-forward-prop`]: `^5.0.0`
        },
        peerDependencies: {
          react: `^16.8.6`
        }
      }],
      // https://github.com/rebassjs/rebass/pull/934
      [`rebass@*`, {
        peerDependencies: {
          react: `^16.8.6`
        }
      }],
      // https://github.com/ant-design/react-slick/pull/95
      [`@ant-design/react-slick@<=0.28.3`, {
        peerDependencies: {
          react: `>=16.0.0`
        }
      }],
      // https://github.com/mqttjs/MQTT.js/pull/1266
      [`mqtt@<4.2.7`, {
        dependencies: {
          duplexify: `^4.1.1`
        }
      }],
      // https://github.com/vuetifyjs/vue-cli-plugins/pull/155
      [`vue-cli-plugin-vuetify@<=2.0.3`, {
        dependencies: {
          semver: `^6.3.0`
        },
        peerDependenciesMeta: {
          "sass-loader": optionalPeerDep,
          "vuetify-loader": optionalPeerDep
        }
      }],
      // https://github.com/vuetifyjs/vue-cli-plugins/pull/152
      [`vue-cli-plugin-vuetify@<=2.0.4`, {
        dependencies: {
          "null-loader": `^3.0.0`
        }
      }],
      // https://github.com/vuetifyjs/vue-cli-plugins/pull/324
      [`vue-cli-plugin-vuetify@>=2.4.3`, {
        peerDependencies: {
          vue: `*`
        }
      }],
      // https://github.com/vuetifyjs/vue-cli-plugins/pull/155
      [`@vuetify/cli-plugin-utils@<=0.0.4`, {
        dependencies: {
          semver: `^6.3.0`
        },
        peerDependenciesMeta: {
          "sass-loader": optionalPeerDep
        }
      }],
      // https://github.com/vuejs/vue-cli/pull/6060/files#diff-857cfb6f3e9a676b0de4a00c2c712297068c038a7d5820c133b8d6aa8cceb146R28
      [`@vue/cli-plugin-typescript@<=5.0.0-alpha.0`, {
        dependencies: {
          "babel-loader": `^8.1.0`
        }
      }],
      // https://github.com/vuejs/vue-cli/pull/6456
      [`@vue/cli-plugin-typescript@<=5.0.0-beta.0`, {
        dependencies: {
          "@babel/core": `^7.12.16`
        },
        peerDependencies: {
          "vue-template-compiler": `^2.0.0`
        },
        peerDependenciesMeta: {
          "vue-template-compiler": optionalPeerDep
        }
      }],
      // https://github.com/apache/cordova-ios/pull/1105
      [`cordova-ios@<=6.3.0`, {
        dependencies: {
          underscore: `^1.9.2`
        }
      }],
      // https://github.com/apache/cordova-lib/pull/871
      [`cordova-lib@<=10.0.1`, {
        dependencies: {
          underscore: `^1.9.2`
        }
      }],
      // https://github.com/creationix/git-node-fs/pull/8
      [`git-node-fs@*`, {
        peerDependencies: {
          "js-git": `^0.7.8`
        },
        peerDependenciesMeta: {
          "js-git": optionalPeerDep
        }
      }],
      // https://github.com/tj/consolidate.js/pull/339
      // https://github.com/tj/consolidate.js/commit/6068c17fd443897e540d69b1786db07a0d64b53b
      [`consolidate@<0.16.0`, {
        peerDependencies: {
          mustache: `^3.0.0`
        },
        peerDependenciesMeta: {
          mustache: optionalPeerDep
        }
      }],
      // https://github.com/tj/consolidate.js/pull/339
      [`consolidate@<=0.16.0`, {
        peerDependencies: {
          velocityjs: `^2.0.1`,
          tinyliquid: `^0.2.34`,
          "liquid-node": `^3.0.1`,
          jade: `^1.11.0`,
          "then-jade": `*`,
          dust: `^0.3.0`,
          "dustjs-helpers": `^1.7.4`,
          "dustjs-linkedin": `^2.7.5`,
          swig: `^1.4.2`,
          "swig-templates": `^2.0.3`,
          "razor-tmpl": `^1.3.1`,
          atpl: `>=0.7.6`,
          liquor: `^0.0.5`,
          twig: `^1.15.2`,
          ejs: `^3.1.5`,
          eco: `^1.1.0-rc-3`,
          jazz: `^0.0.18`,
          jqtpl: `~1.1.0`,
          hamljs: `^0.6.2`,
          hamlet: `^0.3.3`,
          whiskers: `^0.4.0`,
          "haml-coffee": `^1.14.1`,
          "hogan.js": `^3.0.2`,
          templayed: `>=0.2.3`,
          handlebars: `^4.7.6`,
          underscore: `^1.11.0`,
          lodash: `^4.17.20`,
          pug: `^3.0.0`,
          "then-pug": `*`,
          qejs: `^3.0.5`,
          walrus: `^0.10.1`,
          mustache: `^4.0.1`,
          just: `^0.1.8`,
          ect: `^0.5.9`,
          mote: `^0.2.0`,
          toffee: `^0.3.6`,
          dot: `^1.1.3`,
          "bracket-template": `^1.1.5`,
          ractive: `^1.3.12`,
          nunjucks: `^3.2.2`,
          htmling: `^0.0.8`,
          "babel-core": `^6.26.3`,
          plates: `~0.4.11`,
          "react-dom": `^16.13.1`,
          react: `^16.13.1`,
          "arc-templates": `^0.5.3`,
          vash: `^0.13.0`,
          slm: `^2.0.0`,
          marko: `^3.14.4`,
          teacup: `^2.0.0`,
          "coffee-script": `^1.12.7`,
          squirrelly: `^5.1.0`,
          twing: `^5.0.2`
        },
        peerDependenciesMeta: {
          velocityjs: optionalPeerDep,
          tinyliquid: optionalPeerDep,
          "liquid-node": optionalPeerDep,
          jade: optionalPeerDep,
          "then-jade": optionalPeerDep,
          dust: optionalPeerDep,
          "dustjs-helpers": optionalPeerDep,
          "dustjs-linkedin": optionalPeerDep,
          swig: optionalPeerDep,
          "swig-templates": optionalPeerDep,
          "razor-tmpl": optionalPeerDep,
          atpl: optionalPeerDep,
          liquor: optionalPeerDep,
          twig: optionalPeerDep,
          ejs: optionalPeerDep,
          eco: optionalPeerDep,
          jazz: optionalPeerDep,
          jqtpl: optionalPeerDep,
          hamljs: optionalPeerDep,
          hamlet: optionalPeerDep,
          whiskers: optionalPeerDep,
          "haml-coffee": optionalPeerDep,
          "hogan.js": optionalPeerDep,
          templayed: optionalPeerDep,
          handlebars: optionalPeerDep,
          underscore: optionalPeerDep,
          lodash: optionalPeerDep,
          pug: optionalPeerDep,
          "then-pug": optionalPeerDep,
          qejs: optionalPeerDep,
          walrus: optionalPeerDep,
          mustache: optionalPeerDep,
          just: optionalPeerDep,
          ect: optionalPeerDep,
          mote: optionalPeerDep,
          toffee: optionalPeerDep,
          dot: optionalPeerDep,
          "bracket-template": optionalPeerDep,
          ractive: optionalPeerDep,
          nunjucks: optionalPeerDep,
          htmling: optionalPeerDep,
          "babel-core": optionalPeerDep,
          plates: optionalPeerDep,
          "react-dom": optionalPeerDep,
          react: optionalPeerDep,
          "arc-templates": optionalPeerDep,
          vash: optionalPeerDep,
          slm: optionalPeerDep,
          marko: optionalPeerDep,
          teacup: optionalPeerDep,
          "coffee-script": optionalPeerDep,
          squirrelly: optionalPeerDep,
          twing: optionalPeerDep
        }
      }],
      // https://github.com/vuejs/vue-loader/pull/1853
      // https://github.com/vuejs/vue-loader/commit/089473af97077b8e14b3feff48d32d2733ad792c
      [`vue-loader@<=16.3.3`, {
        peerDependencies: {
          "@vue/compiler-sfc": `^3.0.8`,
          webpack: `^4.1.0 || ^5.0.0-0`
        },
        peerDependenciesMeta: {
          "@vue/compiler-sfc": optionalPeerDep
        }
      }],
      // https://github.com/vuejs/vue-loader/pull/1944
      [`vue-loader@^16.7.0`, {
        peerDependencies: {
          "@vue/compiler-sfc": `^3.0.8`,
          vue: `^3.2.13`
        },
        peerDependenciesMeta: {
          "@vue/compiler-sfc": optionalPeerDep,
          vue: optionalPeerDep
        }
      }],
      // https://github.com/salesforce-ux/scss-parser/pull/43
      [`scss-parser@<=1.0.5`, {
        dependencies: {
          lodash: `^4.17.21`
        }
      }],
      // https://github.com/salesforce-ux/query-ast/pull/25
      [`query-ast@<1.0.5`, {
        dependencies: {
          lodash: `^4.17.21`
        }
      }],
      // https://github.com/reduxjs/redux-thunk/pull/251
      [`redux-thunk@<=2.3.0`, {
        peerDependencies: {
          redux: `^4.0.0`
        }
      }],
      // https://github.com/snowpackjs/snowpack/pull/3556
      [`skypack@<=0.3.2`, {
        dependencies: {
          tar: `^6.1.0`
        }
      }],
      // https://github.com/npm/metavuln-calculator/pull/8
      [`@npmcli/metavuln-calculator@<2.0.0`, {
        dependencies: {
          "json-parse-even-better-errors": `^2.3.1`
        }
      }],
      // https://github.com/npm/bin-links/pull/17
      [`bin-links@<2.3.0`, {
        dependencies: {
          "mkdirp-infer-owner": `^1.0.2`
        }
      }],
      // https://github.com/snowpackjs/rollup-plugin-polyfill-node/pull/30
      [`rollup-plugin-polyfill-node@<=0.8.0`, {
        peerDependencies: {
          rollup: `^1.20.0 || ^2.0.0`
        }
      }],
      // https://github.com/snowpackjs/snowpack/pull/3673
      [`snowpack@<3.8.6`, {
        dependencies: {
          "magic-string": `^0.25.7`
        }
      }],
      // https://github.com/elm-community/elm-webpack-loader/pull/202
      [`elm-webpack-loader@*`, {
        dependencies: {
          temp: `^0.9.4`
        }
      }],
      // https://github.com/winstonjs/winston-transport/pull/58
      [`winston-transport@<=4.4.0`, {
        dependencies: {
          logform: `^2.2.0`
        }
      }],
      // https://github.com/vire/jest-vue-preprocessor/pull/177
      [`jest-vue-preprocessor@*`, {
        dependencies: {
          "@babel/core": `7.8.7`,
          "@babel/template": `7.8.6`
        },
        peerDependencies: {
          pug: `^2.0.4`
        },
        peerDependenciesMeta: {
          pug: optionalPeerDep
        }
      }],
      // https://github.com/rt2zz/redux-persist/pull/1336
      [`redux-persist@*`, {
        peerDependencies: {
          react: `>=16`
        },
        peerDependenciesMeta: {
          react: optionalPeerDep
        }
      }],
      // https://github.com/paixaop/node-sodium/pull/159
      [`sodium@>=3`, {
        dependencies: {
          "node-gyp": `^3.8.0`
        }
      }],
      // https://github.com/gajus/babel-plugin-graphql-tag/pull/63
      [`babel-plugin-graphql-tag@<=3.1.0`, {
        peerDependencies: {
          graphql: `^14.0.0 || ^15.0.0`
        }
      }],
      // https://github.com/microsoft/playwright/pull/8501
      [`@playwright/test@<=1.14.1`, {
        dependencies: {
          "jest-matcher-utils": `^26.4.2`
        }
      }],
      // https://github.com/gatsbyjs/gatsby/pull/32954
      ...[
        `babel-plugin-remove-graphql-queries@<3.14.0-next.1`,
        `babel-preset-gatsby-package@<1.14.0-next.1`,
        `create-gatsby@<1.14.0-next.1`,
        `gatsby-admin@<0.24.0-next.1`,
        `gatsby-cli@<3.14.0-next.1`,
        `gatsby-core-utils@<2.14.0-next.1`,
        `gatsby-design-tokens@<3.14.0-next.1`,
        `gatsby-legacy-polyfills@<1.14.0-next.1`,
        `gatsby-plugin-benchmark-reporting@<1.14.0-next.1`,
        `gatsby-plugin-graphql-config@<0.23.0-next.1`,
        `gatsby-plugin-image@<1.14.0-next.1`,
        `gatsby-plugin-mdx@<2.14.0-next.1`,
        `gatsby-plugin-netlify-cms@<5.14.0-next.1`,
        `gatsby-plugin-no-sourcemaps@<3.14.0-next.1`,
        `gatsby-plugin-page-creator@<3.14.0-next.1`,
        `gatsby-plugin-preact@<5.14.0-next.1`,
        `gatsby-plugin-preload-fonts@<2.14.0-next.1`,
        `gatsby-plugin-schema-snapshot@<2.14.0-next.1`,
        `gatsby-plugin-styletron@<6.14.0-next.1`,
        `gatsby-plugin-subfont@<3.14.0-next.1`,
        `gatsby-plugin-utils@<1.14.0-next.1`,
        `gatsby-recipes@<0.25.0-next.1`,
        `gatsby-source-shopify@<5.6.0-next.1`,
        `gatsby-source-wikipedia@<3.14.0-next.1`,
        `gatsby-transformer-screenshot@<3.14.0-next.1`,
        `gatsby-worker@<0.5.0-next.1`
      ].map((descriptorString) => [
        descriptorString,
        {
          dependencies: {
            "@babel/runtime": `^7.14.8`
          }
        }
      ]),
      // Originally fixed in https://github.com/gatsbyjs/gatsby/pull/31837 (https://github.com/gatsbyjs/gatsby/commit/6378692d7ec1eb902520720e27aca97e8eb42c21)
      // Version updated and added in https://github.com/gatsbyjs/gatsby/pull/32928
      [`gatsby-core-utils@<2.14.0-next.1`, {
        dependencies: {
          got: `8.3.2`
        }
      }],
      // https://github.com/gatsbyjs/gatsby/pull/32861
      [`gatsby-plugin-gatsby-cloud@<=3.1.0-next.0`, {
        dependencies: {
          "gatsby-core-utils": `^2.13.0-next.0`
        }
      }],
      // https://github.com/gatsbyjs/gatsby/pull/31837
      [`gatsby-plugin-gatsby-cloud@<=3.2.0-next.1`, {
        peerDependencies: {
          webpack: `*`
        }
      }],
      // https://github.com/gatsbyjs/gatsby/pull/31837
      [`babel-plugin-remove-graphql-queries@<=3.14.0-next.1`, {
        dependencies: {
          "gatsby-core-utils": `^2.8.0-next.1`
        }
      }],
      // https://github.com/gatsbyjs/gatsby/pull/32861
      [`gatsby-plugin-netlify@3.13.0-next.1`, {
        dependencies: {
          "gatsby-core-utils": `^2.13.0-next.0`
        }
      }],
      // https://github.com/paul-soporan/clipanion-v3-codemod/pull/1
      [`clipanion-v3-codemod@<=0.2.0`, {
        peerDependencies: {
          jscodeshift: `^0.11.0`
        }
      }],
      // https://github.com/FormidableLabs/react-live/pull/180
      [`react-live@*`, {
        peerDependencies: {
          "react-dom": `*`,
          react: `*`
        }
      }],
      // https://github.com/webpack/webpack/pull/11190
      [`webpack@<4.44.1`, {
        peerDependenciesMeta: {
          "webpack-cli": optionalPeerDep,
          "webpack-command": optionalPeerDep
        }
      }],
      // https://github.com/webpack/webpack/pull/11189
      [`webpack@<5.0.0-beta.23`, {
        peerDependenciesMeta: {
          "webpack-cli": optionalPeerDep
        }
      }],
      // https://github.com/webpack/webpack-dev-server/pull/2396
      [`webpack-dev-server@<3.10.2`, {
        peerDependenciesMeta: {
          "webpack-cli": optionalPeerDep
        }
      }],
      // https://github.com/slorber/responsive-loader/pull/1/files
      [`@docusaurus/responsive-loader@<1.5.0`, {
        peerDependenciesMeta: {
          sharp: optionalPeerDep,
          jimp: optionalPeerDep
        }
      }],
      // https://github.com/import-js/eslint-plugin-import/pull/2283
      [`eslint-module-utils@*`, {
        peerDependenciesMeta: {
          "eslint-import-resolver-node": optionalPeerDep,
          "eslint-import-resolver-typescript": optionalPeerDep,
          "eslint-import-resolver-webpack": optionalPeerDep,
          "@typescript-eslint/parser": optionalPeerDep
        }
      }],
      // https://github.com/import-js/eslint-plugin-import/pull/2283
      [`eslint-plugin-import@*`, {
        peerDependenciesMeta: {
          "@typescript-eslint/parser": optionalPeerDep
        }
      }],
      // https://github.com/GoogleChromeLabs/critters/pull/91
      [`critters-webpack-plugin@<3.0.2`, {
        peerDependenciesMeta: {
          "html-webpack-plugin": optionalPeerDep
        }
      }],
      // https://github.com/terser/terser/commit/05b23eeb682d732484ad51b19bf528258fd5dc2a
      [`terser@<=5.10.0`, {
        dependencies: {
          acorn: `^8.5.0`
        }
      }],
      // https://github.com/facebook/create-react-app/pull/12364
      [`babel-preset-react-app@10.0.x <10.0.2`, {
        dependencies: {
          "@babel/plugin-proposal-private-property-in-object": `^7.16.7`
        }
      }],
      // https://github.com/facebook/create-react-app/pull/11751
      [`eslint-config-react-app@*`, {
        peerDependenciesMeta: {
          typescript: optionalPeerDep
        }
      }],
      // https://github.com/vuejs/eslint-config-typescript/pull/39
      [`@vue/eslint-config-typescript@<11.0.0`, {
        peerDependenciesMeta: {
          typescript: optionalPeerDep
        }
      }],
      // https://github.com/antfu/unplugin-vue2-script-setup/pull/100
      [`unplugin-vue2-script-setup@<0.9.1`, {
        peerDependencies: {
          "@vue/composition-api": `^1.4.3`,
          "@vue/runtime-dom": `^3.2.26`
        }
      }],
      // https://github.com/cypress-io/snapshot/pull/159
      [`@cypress/snapshot@*`, {
        dependencies: {
          debug: `^3.2.7`
        }
      }],
      // https://github.com/wemaintain/auto-relay/pull/95
      [`auto-relay@<=0.14.0`, {
        peerDependencies: {
          "reflect-metadata": `^0.1.13`
        }
      }],
      // https://github.com/JuniorTour/vue-template-babel-compiler/pull/40
      [`vue-template-babel-compiler@<1.2.0`, {
        peerDependencies: {
          [`vue-template-compiler`]: `^2.6.0`
        }
      }],
      // https://github.com/parcel-bundler/parcel/pull/7977
      [`@parcel/transformer-image@<2.5.0`, {
        peerDependencies: {
          [`@parcel/core`]: `*`
        }
      }],
      // https://github.com/parcel-bundler/parcel/pull/7977
      [`@parcel/transformer-js@<2.5.0`, {
        peerDependencies: {
          [`@parcel/core`]: `*`
        }
      }],
      // Experiment to unblock the usage of Parcel in E2E tests
      [`parcel@*`, {
        peerDependenciesMeta: {
          [`@parcel/core`]: optionalPeerDep
        }
      }],
      // This doesn't have an upstream PR.
      // The auto types causes two instances of eslint-config-react-app,
      // one that has access to @types/eslint and one that doesn't.
      // ESLint doesn't allow the same plugin to show up multiple times so it throws.
      // As a temporary workaround until create-react-app fixes their ESLint
      // setup we make eslint a peer dependency /w fallback.
      // TODO: Lock the range when create-react-app fixes their ESLint setup
      [`react-scripts@*`, {
        peerDependencies: {
          [`eslint`]: `*`
        }
      }],
      // https://github.com/focus-trap/focus-trap-react/pull/691
      [`focus-trap-react@^8.0.0`, {
        dependencies: {
          tabbable: `^5.3.2`
        }
      }],
      // https://github.com/bokuweb/react-rnd/pull/864
      [`react-rnd@<10.3.7`, {
        peerDependencies: {
          react: `>=16.3.0`,
          "react-dom": `>=16.3.0`
        }
      }],
      // https://github.com/jdesboeufs/connect-mongo/pull/458
      // https://github.com/jdesboeufs/connect-mongo/commit/f462a2598d1dea0722a89e1f101937d427462458
      [`connect-mongo@<5.0.0`, {
        peerDependencies: {
          "express-session": `^1.17.1`
        }
      }],
      // https://github.com/intlify/vue-i18n-next/commit/ed932b9e575807dc27c30573b280ad8ae48e98c9
      [`vue-i18n@<9`, {
        peerDependencies: {
          vue: `^2`
        }
      }],
      // https://github.com/vuejs/router/commit/c2305083a8fcb42d1bb1f3f0d92f09930124b530
      [`vue-router@<4`, {
        peerDependencies: {
          vue: `^2`
        }
      }],
      // https://github.com/unifiedjs/unified/pull/146
      [`unified@<10`, {
        dependencies: {
          "@types/unist": `^2.0.0`
        }
      }],
      // https://github.com/ntkme/react-github-btn/pull/23
      [`react-github-btn@<=1.3.0`, {
        peerDependencies: {
          react: `>=16.3.0`
        }
      }],
      // There are two candidates upstream, clean this up when either is merged.
      // - https://github.com/facebook/create-react-app/pull/11526
      // - https://github.com/facebook/create-react-app/pull/11716
      [`react-dev-utils@*`, {
        peerDependencies: {
          typescript: `>=2.7`,
          webpack: `>=4`
        },
        peerDependenciesMeta: {
          typescript: optionalPeerDep
        }
      }],
      // https://github.com/asyncapi/asyncapi-react/pull/614
      [`@asyncapi/react-component@<=1.0.0-next.39`, {
        peerDependencies: {
          react: `>=16.8.0`,
          "react-dom": `>=16.8.0`
        }
      }],
      // https://github.com/xojs/xo/pull/678
      [`xo@*`, {
        peerDependencies: {
          webpack: `>=1.11.0`
        },
        peerDependenciesMeta: {
          webpack: optionalPeerDep
        }
      }],
      // https://github.com/gatsbyjs/gatsby/pull/36230
      [`babel-plugin-remove-graphql-queries@<=4.20.0-next.0`, {
        dependencies: {
          "@babel/types": `^7.15.4`
        }
      }],
      // https://github.com/gatsbyjs/gatsby/pull/36230
      [`gatsby-plugin-page-creator@<=4.20.0-next.1`, {
        dependencies: {
          "fs-extra": `^10.1.0`
        }
      }],
      // https://github.com/gatsbyjs/gatsby/pull/36230
      [`gatsby-plugin-utils@<=3.14.0-next.1`, {
        dependencies: {
          fastq: `^1.13.0`
        },
        peerDependencies: {
          graphql: `^15.0.0`
        }
      }],
      // https://github.com/gatsbyjs/gatsby/pull/33724
      [`gatsby-plugin-mdx@<3.1.0-next.1`, {
        dependencies: {
          mkdirp: `^1.0.4`
        }
      }],
      // https://github.com/gatsbyjs/gatsby/pull/33170
      [`gatsby-plugin-mdx@^2`, {
        peerDependencies: {
          gatsby: `^3.0.0-next`
        }
      }],
      // https://github.com/thecodrr/fdir/pull/76
      // https://github.com/thecodrr/fdir/pull/80
      [`fdir@<=5.2.0`, {
        peerDependencies: {
          picomatch: `2.x`
        },
        peerDependenciesMeta: {
          picomatch: optionalPeerDep
        }
      }],
      // https://github.com/leonardfactory/babel-plugin-transform-typescript-metadata/pull/61
      [`babel-plugin-transform-typescript-metadata@<=0.3.2`, {
        peerDependencies: {
          "@babel/core": `^7`,
          "@babel/traverse": `^7`
        },
        peerDependenciesMeta: {
          "@babel/traverse": optionalPeerDep
        }
      }],
      // https://github.com/graphql-compose/graphql-compose/pull/398
      [`graphql-compose@>=9.0.10`, {
        peerDependencies: {
          graphql: `^14.2.0 || ^15.0.0 || ^16.0.0`
        }
      }],
      // https://github.com/vuetifyjs/vuetify-loader/commit/6634db3218dcc706db1c5c9e90f338ce76e9fff3
      [`vite-plugin-vuetify@<=1.0.2`, {
        peerDependencies: {
          vue: `^3.0.0`
        }
      }],
      // https://github.com/vuetifyjs/vuetify-loader/commit/6634db3218dcc706db1c5c9e90f338ce76e9fff3
      [`webpack-plugin-vuetify@<=2.0.1`, {
        peerDependencies: {
          vue: `^3.2.6`
        }
      }],
      // https://github.com/pzmosquito/eslint-import-resolver-vite/pull/22
      // https://github.com/pzmosquito/eslint-import-resolver-vite/commit/97b8111b03d3f8c66506732ac965e906568e8dc1#diff-7ae45ad102eab3b6d7e7896acd08c427a9b25b346470d7bc6507b6481575d519
      [`eslint-import-resolver-vite@<2.0.1`, {
        dependencies: {
          debug: `^4.3.4`,
          resolve: `^1.22.8`
        }
      }],
      // https://github.com/iamhosseindhv/notistack/issues/561
      // https://github.com/iamhosseindhv/notistack/pull/562
      [`notistack@^3.0.0`, {
        dependencies: {
          csstype: `^3.0.10`
        }
      }],
      // https://github.com/fastify/fastify-type-provider-typebox/issues/114
      // https://github.com/fastify/fastify-type-provider-typebox/pull/165
      [`@fastify/type-provider-typebox@^5.0.0`, {
        peerDependencies: {
          fastify: `^5.0.0`
        }
      }],
      [`@fastify/type-provider-typebox@^4.0.0`, {
        peerDependencies: {
          fastify: `^4.0.0`
        }
      }]
    ];
  }
});

// ../hooks/read-package-hook/lib/createOptionalDependenciesRemover.js
function createOptionalDependenciesRemover(toBeRemoved) {
  if (!toBeRemoved.length)
    return (manifest) => manifest;
  const shouldBeRemoved = createMatcher(toBeRemoved);
  return (manifest) => removeOptionalDependencies(manifest, shouldBeRemoved);
}
function removeOptionalDependencies(manifest, shouldBeRemoved) {
  for (const optionalDependency in manifest.optionalDependencies) {
    if (shouldBeRemoved(optionalDependency)) {
      delete manifest.optionalDependencies[optionalDependency];
      delete manifest.dependencies?.[optionalDependency];
    }
  }
  return manifest;
}
var init_createOptionalDependenciesRemover = __esm({
  "../hooks/read-package-hook/lib/createOptionalDependenciesRemover.js"() {
    "use strict";
    init_lib14();
  }
});

// ../hooks/read-package-hook/lib/createPackageExtender.js
function createPackageExtender(packageExtensions) {
  const extensionsByPkgName = /* @__PURE__ */ new Map();
  for (const selector in packageExtensions) {
    const packageExtension = packageExtensions[selector];
    const { alias, bareSpecifier } = parseWantedDependency(selector);
    if (!extensionsByPkgName.has(alias)) {
      extensionsByPkgName.set(alias, []);
    }
    extensionsByPkgName.get(alias).push({ packageExtension, range: bareSpecifier });
  }
  return extendPkgHook.bind(null, extensionsByPkgName);
}
function extendPkgHook(extensionsByPkgName, manifest) {
  const extensions2 = extensionsByPkgName.get(manifest.name);
  if (extensions2 == null)
    return manifest;
  extendPkg(manifest, extensions2);
  return manifest;
}
function extendPkg(manifest, extensions2) {
  for (const { range, packageExtension } of extensions2) {
    if (range != null && !import_semver24.default.satisfies(manifest.version, range))
      continue;
    for (const field of ["dependencies", "optionalDependencies", "peerDependencies", "peerDependenciesMeta"]) {
      if (!packageExtension[field])
        continue;
      manifest[field] = {
        ...packageExtension[field],
        ...manifest[field]
      };
    }
  }
}
var import_semver24;
var init_createPackageExtender = __esm({
  "../hooks/read-package-hook/lib/createPackageExtender.js"() {
    "use strict";
    init_lib96();
    import_semver24 = __toESM(require_semver2(), 1);
  }
});

// ../hooks/read-package-hook/lib/isIntersectingRange.js
function isIntersectingRange(range1, range2) {
  return !range1 || range2 === range1 || import_semver25.default.validRange(range2) != null && import_semver25.default.validRange(range1) != null && import_semver25.default.intersects(range2, range1);
}
var import_semver25;
var init_isIntersectingRange = __esm({
  "../hooks/read-package-hook/lib/isIntersectingRange.js"() {
    "use strict";
    import_semver25 = __toESM(require_semver2(), 1);
  }
});

// ../hooks/read-package-hook/lib/createVersionsOverrider.js
import path96 from "node:path";
function createVersionsOverrider(overrides, rootDir) {
  const [versionOverrides, genericVersionOverrides] = partition_default(({ parentPkg }) => parentPkg != null, overrides.map((override) => ({
    ...override,
    localTarget: createLocalTarget(override, rootDir)
  })));
  return ((manifest, dir) => {
    const versionOverridesWithParent = versionOverrides.filter(({ parentPkg }) => {
      return parentPkg.name === manifest.name && (!parentPkg.bareSpecifier || import_semver26.default.satisfies(manifest.version, parentPkg.bareSpecifier));
    });
    overrideDepsOfPkg({ manifest, dir }, versionOverridesWithParent, genericVersionOverrides);
    return manifest;
  });
}
function createLocalTarget(override, rootDir) {
  let protocol;
  if (override.newBareSpecifier.startsWith("file:")) {
    protocol = "file:";
  } else if (override.newBareSpecifier.startsWith("link:")) {
    protocol = "link:";
  } else {
    return void 0;
  }
  const pkgPath = override.newBareSpecifier.substring(protocol.length);
  const specifiedViaRelativePath = !path96.isAbsolute(pkgPath);
  const absolutePath = specifiedViaRelativePath ? path96.join(rootDir, pkgPath) : pkgPath;
  return { absolutePath, specifiedViaRelativePath, protocol };
}
function overrideDepsOfPkg({ manifest, dir }, versionOverrides, genericVersionOverrides) {
  const { dependencies, optionalDependencies, devDependencies, peerDependencies } = manifest;
  const _overrideDeps = overrideDeps.bind(null, { versionOverrides, genericVersionOverrides, dir });
  for (const deps of [dependencies, optionalDependencies, devDependencies]) {
    if (deps) {
      _overrideDeps(deps, void 0);
    }
  }
  if (peerDependencies) {
    if (!manifest.dependencies)
      manifest.dependencies = {};
    _overrideDeps(manifest.dependencies, peerDependencies);
  }
}
function overrideDeps({ versionOverrides, genericVersionOverrides, dir }, deps, peerDeps) {
  for (const [name, bareSpecifier] of Object.entries(peerDeps ?? deps)) {
    const versionOverride = pickMostSpecificVersionOverride(versionOverrides.filter(({ targetPkg }) => targetPkg.name === name && isIntersectingRange(targetPkg.bareSpecifier, bareSpecifier))) ?? pickMostSpecificVersionOverride(genericVersionOverrides.filter(({ targetPkg }) => targetPkg.name === name && isIntersectingRange(targetPkg.bareSpecifier, bareSpecifier)));
    if (!versionOverride)
      continue;
    if (versionOverride.newBareSpecifier === "-") {
      if (peerDeps) {
        delete peerDeps[versionOverride.targetPkg.name];
      } else {
        delete deps[versionOverride.targetPkg.name];
      }
      continue;
    }
    const newBareSpecifier = versionOverride.localTarget ? `${versionOverride.localTarget.protocol}${resolveLocalOverride(versionOverride.localTarget, dir)}` : versionOverride.newBareSpecifier;
    if (peerDeps == null || !isValidPeerRange(newBareSpecifier)) {
      deps[versionOverride.targetPkg.name] = newBareSpecifier;
    } else if (isValidPeerRange(newBareSpecifier)) {
      peerDeps[versionOverride.targetPkg.name] = newBareSpecifier;
    }
  }
}
function resolveLocalOverride({ specifiedViaRelativePath, absolutePath }, pkgDir) {
  return specifiedViaRelativePath && pkgDir ? (0, import_normalize_path5.default)(path96.relative(pkgDir, absolutePath)) : absolutePath;
}
function pickMostSpecificVersionOverride(versionOverrides) {
  return versionOverrides.sort((a2, b) => isIntersectingRange(b.targetPkg.bareSpecifier ?? "", a2.targetPkg.bareSpecifier ?? "") ? -1 : 1)[0];
}
var import_normalize_path5, import_semver26;
var init_createVersionsOverrider = __esm({
  "../hooks/read-package-hook/lib/createVersionsOverrider.js"() {
    "use strict";
    init_lib7();
    import_normalize_path5 = __toESM(require_normalize_path(), 1);
    init_es();
    import_semver26 = __toESM(require_semver2(), 1);
    init_isIntersectingRange();
  }
});

// ../hooks/read-package-hook/lib/createReadPackageHook.js
function createReadPackageHook({ ignoreCompatibilityDb, lockfileDir, overrides, ignoredOptionalDependencies, packageExtensions, readPackageHook }) {
  const hooks = [];
  if (!ignoreCompatibilityDb) {
    hooks.push(createPackageExtender(Object.fromEntries(import_extensions.packageExtensions)));
  }
  if (!isEmpty_default(packageExtensions ?? {})) {
    hooks.push(createPackageExtender(packageExtensions));
  }
  if (Array.isArray(readPackageHook)) {
    hooks.push(...readPackageHook);
  } else if (readPackageHook) {
    hooks.push(readPackageHook);
  }
  if (!isEmpty_default(overrides ?? {})) {
    hooks.push(createVersionsOverrider(overrides, lockfileDir));
  }
  if (ignoredOptionalDependencies && !isEmpty_default(ignoredOptionalDependencies)) {
    hooks.push(createOptionalDependenciesRemover(ignoredOptionalDependencies));
  }
  if (hooks.length === 0) {
    return void 0;
  }
  const readPackageAndExtend = hooks.length === 1 ? hooks[0] : ((pkg, dir) => pipeWith_default(async (f, res) => f(await res, dir), hooks)(pkg, dir));
  return readPackageAndExtend;
}
var import_extensions;
var init_createReadPackageHook = __esm({
  "../hooks/read-package-hook/lib/createReadPackageHook.js"() {
    "use strict";
    import_extensions = __toESM(require_lib23(), 1);
    init_es();
    init_createOptionalDependenciesRemover();
    init_createPackageExtender();
    init_createVersionsOverrider();
  }
});

// ../hooks/read-package-hook/lib/index.js
var init_lib103 = __esm({
  "../hooks/read-package-hook/lib/index.js"() {
    "use strict";
    init_createReadPackageHook();
  }
});

// ../patching/config/lib/getPatchInfo.js
function getPatchInfo(patchFileGroups, pkgName, pkgVersion) {
  if (!patchFileGroups?.[pkgName])
    return void 0;
  const exactVersion = patchFileGroups[pkgName].exact[pkgVersion];
  if (exactVersion)
    return exactVersion;
  const satisfied = patchFileGroups[pkgName].range.filter((item) => (0, import_semver27.satisfies)(pkgVersion, item.version));
  if (satisfied.length > 1) {
    throw new PatchKeyConflictError(pkgName, pkgVersion, satisfied);
  }
  if (satisfied.length === 1) {
    return satisfied[0].patch;
  }
  return patchFileGroups[pkgName].all;
}
var import_semver27, PatchKeyConflictError;
var init_getPatchInfo = __esm({
  "../patching/config/lib/getPatchInfo.js"() {
    "use strict";
    init_lib2();
    import_semver27 = __toESM(require_semver2(), 1);
    PatchKeyConflictError = class extends PnpmError {
      constructor(pkgName, pkgVersion, satisfied) {
        const pkgId = `${pkgName}@${pkgVersion}`;
        const satisfiedVersions = satisfied.map(({ version: version2 }) => version2);
        const message = `Unable to choose between ${satisfied.length} version ranges to patch ${pkgId}: ${satisfiedVersions.join(", ")}`;
        super("PATCH_KEY_CONFLICT", message, {
          hint: `Explicitly set the exact version (${pkgId}) to resolve conflict`
        });
      }
    };
  }
});

// ../patching/config/lib/groupPatchedDependencies.js
function groupPatchedDependencies(patchedDependencies) {
  const result2 = {};
  function getGroup(name) {
    let group = result2[name];
    if (group)
      return group;
    group = {
      exact: {},
      range: [],
      all: void 0
    };
    result2[name] = group;
    return group;
  }
  for (const key in patchedDependencies) {
    const value = patchedDependencies[key];
    const info = typeof value === "string" ? { hash: value } : value;
    const { name, version: version2, nonSemverVersion } = parse6(key);
    if (name && version2) {
      getGroup(name).exact[version2] = { ...info, key };
      continue;
    }
    if (name && nonSemverVersion) {
      if (!(0, import_semver28.validRange)(nonSemverVersion)) {
        throw new PnpmError("PATCH_NON_SEMVER_RANGE", `${nonSemverVersion} is not a valid semantic version range.`);
      }
      if (nonSemverVersion.trim() === "*") {
        getGroup(name).all = { ...info, key };
      } else {
        getGroup(name).range.push({
          version: nonSemverVersion,
          patch: { ...info, key }
        });
      }
      continue;
    }
    getGroup(key).all = { ...info, key };
  }
  return result2;
}
var import_semver28;
var init_groupPatchedDependencies = __esm({
  "../patching/config/lib/groupPatchedDependencies.js"() {
    "use strict";
    init_lib65();
    init_lib2();
    import_semver28 = __toESM(require_semver2(), 1);
  }
});

// ../patching/config/lib/allPatchKeys.js
function* allPatchKeys(patchedDependencies) {
  for (const name in patchedDependencies) {
    const group = patchedDependencies[name];
    for (const version2 in group.exact) {
      yield group.exact[version2].key;
    }
    for (const item of group.range) {
      yield item.patch.key;
    }
    if (group.all) {
      yield group.all.key;
    }
  }
}
var init_allPatchKeys = __esm({
  "../patching/config/lib/allPatchKeys.js"() {
    "use strict";
  }
});

// ../patching/config/lib/verifyPatches.js
function verifyPatches({ patchedDependencies, appliedPatches, allowUnusedPatches }) {
  const unusedPatches = [];
  for (const patchKey of allPatchKeys(patchedDependencies)) {
    if (!appliedPatches.has(patchKey))
      unusedPatches.push(patchKey);
  }
  if (!unusedPatches.length)
    return;
  const message = `The following patches were not used: ${unusedPatches.join(", ")}`;
  if (allowUnusedPatches) {
    (0, import_logger55.globalWarn)(message);
    return;
  }
  throw new PnpmError("UNUSED_PATCH", message, {
    hint: 'Either remove them from "patchedDependencies" or update them to match packages in your dependencies.'
  });
}
var import_logger55;
var init_verifyPatches = __esm({
  "../patching/config/lib/verifyPatches.js"() {
    "use strict";
    init_lib2();
    import_logger55 = __toESM(require_lib21(), 1);
    init_allPatchKeys();
  }
});

// ../patching/types/lib/index.js
var init_lib104 = __esm({
  "../patching/types/lib/index.js"() {
    "use strict";
  }
});

// ../patching/config/lib/index.js
var init_lib105 = __esm({
  "../patching/config/lib/index.js"() {
    "use strict";
    init_getPatchInfo();
    init_groupPatchedDependencies();
    init_verifyPatches();
    init_lib104();
  }
});

// ../installing/deps-resolver/lib/depPathToRef.js
function depPathToRef(depPath, opts2) {
  if (opts2.alias === opts2.realName && depPath.startsWith(`${opts2.realName}@`)) {
    return depPath.substring(opts2.realName.length + 1);
  }
  return depPath;
}
var init_depPathToRef = __esm({
  "../installing/deps-resolver/lib/depPathToRef.js"() {
    "use strict";
  }
});

// ../installing/deps-resolver/lib/getCatalogSnapshots.js
function getCatalogSnapshots(resolvedDirectDeps, updatedCatalogs) {
  const catalogSnapshots = {};
  const catalogedDeps = resolvedDirectDeps.filter(isCatalogedDep);
  for (const dep of catalogedDeps) {
    const snapshotForSingleCatalog = catalogSnapshots[dep.catalogLookup.catalogName] ??= {};
    const updatedSpecifier = updatedCatalogs?.[dep.catalogLookup.catalogName]?.[dep.alias];
    snapshotForSingleCatalog[dep.alias] = {
      // The "updated specifier" will be present when pnpm add/update is ran and
      // bare specifiers need to be added in the pnpm-workspace.yaml file. When
      // this happens, the updated specifier should be saved to lockfile instead
      // of the original specifier before the update.
      specifier: updatedSpecifier ?? dep.catalogLookup.specifier,
      version: dep.version
    };
  }
  return catalogSnapshots;
}
function isCatalogedDep(dep) {
  return dep.catalogLookup != null;
}
var init_getCatalogSnapshots = __esm({
  "../installing/deps-resolver/lib/getCatalogSnapshots.js"() {
    "use strict";
  }
});

// ../installing/deps-resolver/lib/getWantedDependencies.js
function getWantedDependencies(pkg, opts2) {
  let depsToInstall = filterDependenciesByType(pkg, opts2?.includeDirect ?? {
    dependencies: true,
    devDependencies: true,
    optionalDependencies: true
  });
  if (opts2?.autoInstallPeers) {
    depsToInstall = {
      ...pkg.peerDependencies,
      ...depsToInstall
    };
  }
  return getWantedDependenciesFromGivenSet(depsToInstall, {
    dependencies: pkg.dependencies ?? {},
    devDependencies: pkg.devDependencies ?? {},
    optionalDependencies: pkg.optionalDependencies ?? {},
    dependenciesMeta: pkg.dependenciesMeta ?? {},
    peerDependencies: pkg.peerDependencies ?? {}
  });
}
function getWantedDependenciesFromGivenSet(deps, opts2) {
  if (!deps)
    return [];
  return Object.entries(deps).map(([alias, bareSpecifier]) => {
    let depType;
    if (opts2.optionalDependencies[alias] != null)
      depType = "optional";
    else if (opts2.dependencies[alias] != null)
      depType = "prod";
    else if (opts2.devDependencies[alias] != null)
      depType = "dev";
    else if (opts2.peerDependencies[alias] != null)
      depType = "prod";
    return {
      alias,
      dev: depType === "dev",
      injected: opts2.dependenciesMeta[alias]?.injected,
      optional: depType === "optional",
      bareSpecifier,
      prevSpecifier: bareSpecifier
    };
  });
}
var init_getWantedDependencies = __esm({
  "../installing/deps-resolver/lib/getWantedDependencies.js"() {
    "use strict";
    init_lib9();
  }
});

// ../lockfile/preferred-versions/lib/index.js
function getPreferredVersionsFromLockfileAndManifests(snapshots, manifests) {
  const preferredVersions = {};
  for (const manifest of manifests) {
    const specs = getAllDependenciesFromManifest2(manifest);
    for (const [name, spec] of Object.entries(specs)) {
      const selector = (0, import_version_selector_type4.default)(spec);
      if (!selector)
        continue;
      preferredVersions[name] = preferredVersions[name] ?? {};
      preferredVersions[name][spec] = {
        selectorType: selector.type,
        weight: DIRECT_DEP_SELECTOR_WEIGHT
      };
    }
  }
  if (!snapshots)
    return preferredVersions;
  addPreferredVersionsFromLockfile(snapshots, preferredVersions);
  return preferredVersions;
}
function addPreferredVersionsFromLockfile(snapshots, preferredVersions) {
  const uniqueNameVersions = {};
  for (const [depPath, snapshot] of Object.entries(snapshots)) {
    const { name, version: version2 } = nameVerFromPkgSnapshot(depPath, snapshot);
    uniqueNameVersions[name] ??= /* @__PURE__ */ new Set();
    uniqueNameVersions[name].add(version2);
  }
  for (const [name, versions] of Object.entries(uniqueNameVersions)) {
    for (const version2 of versions) {
      preferredVersions[name] ??= {};
      const existingSelector = preferredVersions[name][version2];
      if (existingSelector == null) {
        preferredVersions[name][version2] = { selectorType: "version", weight: EXISTING_VERSION_SELECTOR_WEIGHT };
        continue;
      }
      const existingSelectorType = typeof existingSelector === "string" ? existingSelector : existingSelector.selectorType;
      if (existingSelectorType !== "version") {
        throw new Error(`Encountered unexpected version selector '${existingSelectorType}' for dependency '${name}@${version2}'`);
      }
      preferredVersions[name][version2] = addWeightToVersionSelector(existingSelector, EXISTING_VERSION_SELECTOR_WEIGHT);
    }
  }
}
function addWeightToVersionSelector(selector, weight) {
  return typeof selector === "string" ? { selectorType: selector, weight: weight + 1 } : { selectorType: selector.selectorType, weight: selector.weight + weight };
}
var import_version_selector_type4;
var init_lib106 = __esm({
  "../lockfile/preferred-versions/lib/index.js"() {
    "use strict";
    init_lib70();
    init_lib9();
    init_lib71();
    import_version_selector_type4 = __toESM(require_version_selector_type(), 1);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/path-exists/5.0.0/807a2a7b778216f41e07b2ae7c9f30106db072a3e29bc81492360ad57b4431cd/node_modules/path-exists/index.js
import fs57, { promises as fsPromises5 } from "node:fs";
async function pathExists2(path218) {
  try {
    await fsPromises5.access(path218);
    return true;
  } catch {
    return false;
  }
}
var init_path_exists = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/path-exists/5.0.0/807a2a7b778216f41e07b2ae7c9f30106db072a3e29bc81492360ad57b4431cd/node_modules/path-exists/index.js"() {
  }
});

// ../installing/deps-resolver/lib/unwrapPackageName.js
function unwrapPackageName(alias, originalBareSpecifier) {
  if (!originalBareSpecifier.startsWith("npm:")) {
    return { pkgName: alias, bareSpecifier: originalBareSpecifier };
  }
  const npmAliasSpecifierValue = originalBareSpecifier.slice(4);
  const index = npmAliasSpecifierValue.lastIndexOf("@");
  if (index === -1 || index === 0) {
    return { pkgName: npmAliasSpecifierValue, bareSpecifier: "*" };
  }
  const bareSpecifier = npmAliasSpecifierValue.slice(index + 1);
  const pkgName = npmAliasSpecifierValue.substring(0, index);
  return { pkgName, bareSpecifier };
}
var init_unwrapPackageName = __esm({
  "../installing/deps-resolver/lib/unwrapPackageName.js"() {
    "use strict";
  }
});

// ../installing/deps-resolver/lib/getExactSinglePreferredVersions.js
function getExactSinglePreferredVersions(wantedDependency, version2) {
  const { pkgName } = unwrapPackageName(wantedDependency.alias, wantedDependency.bareSpecifier);
  return {
    [pkgName]: { [version2]: "version" }
  };
}
var init_getExactSinglePreferredVersions = __esm({
  "../installing/deps-resolver/lib/getExactSinglePreferredVersions.js"() {
    "use strict";
    init_unwrapPackageName();
  }
});

// ../installing/deps-resolver/lib/getNonDevWantedDependencies.js
function getNonDevWantedDependencies(pkg) {
  let bd = pkg.bundledDependencies ?? pkg.bundleDependencies;
  if (bd === true) {
    bd = pkg.dependencies != null ? Object.keys(pkg.dependencies) : [];
  }
  const bundledDeps = new Set(Array.isArray(bd) ? bd : []);
  const filterDeps = getNotBundledDeps.bind(null, bundledDeps);
  return getWantedDependenciesFromGivenSet2(filterDeps({ ...pkg.optionalDependencies, ...pkg.dependencies }), {
    dependenciesMeta: pkg.dependenciesMeta ?? {},
    devDependencies: {},
    optionalDependencies: pkg.optionalDependencies ?? {}
  });
}
function getWantedDependenciesFromGivenSet2(deps, opts2) {
  if (!deps)
    return [];
  return Object.entries(deps).map(([alias, bareSpecifier]) => ({
    alias,
    dev: !!opts2.devDependencies[alias],
    injected: opts2.dependenciesMeta[alias]?.injected,
    optional: !!opts2.optionalDependencies[alias],
    bareSpecifier
  }));
}
function getNotBundledDeps(bundledDeps, deps) {
  return pickBy_default((_, depName) => !bundledDeps.has(depName), deps);
}
var init_getNonDevWantedDependencies = __esm({
  "../installing/deps-resolver/lib/getNonDevWantedDependencies.js"() {
    "use strict";
    init_es();
  }
});

// ../installing/deps-resolver/lib/hoistPeers.js
function hoistPeers(opts2, missingRequiredPeers) {
  const dependencies = {};
  for (const [peerName, { range }] of missingRequiredPeers) {
    const rootDepByAlias = opts2.workspaceRootDeps.find((rootDep2) => rootDep2.alias === peerName);
    if (rootDepByAlias?.normalizedBareSpecifier) {
      dependencies[peerName] = rootDepByAlias.normalizedBareSpecifier;
      continue;
    }
    const rootDep = opts2.workspaceRootDeps.filter((rootDep2) => rootDep2.pkg.name === peerName).sort((rootDep1, rootDep2) => (0, import_util10.lexCompare)(rootDep1.alias, rootDep2.alias))[0];
    if (rootDep?.normalizedBareSpecifier) {
      dependencies[peerName] = rootDep.normalizedBareSpecifier;
      continue;
    }
    if (opts2.allPreferredVersions[peerName]) {
      const versions = [];
      const nonVersions = [];
      for (const [spec, selector] of Object.entries(opts2.allPreferredVersions[peerName])) {
        const specType = typeof selector === "string" ? selector : selector.selectorType;
        if (specType === "version") {
          versions.push(spec);
        } else {
          nonVersions.push(spec);
        }
      }
      const isExactVersion = import_semver29.default.valid(range) != null;
      const satisfyingVersion = isExactVersion ? import_semver29.default.maxSatisfying(versions, range, { includePrerelease: true }) : null;
      if (satisfyingVersion) {
        dependencies[peerName] = [satisfyingVersion, ...nonVersions].join(" || ");
      } else if (isExactVersion && opts2.autoInstallPeers) {
        dependencies[peerName] = range;
      } else {
        dependencies[peerName] = [import_semver29.default.maxSatisfying(versions, "*", { includePrerelease: true }), ...nonVersions].filter((spec) => spec != null).join(" || ");
      }
    } else if (opts2.autoInstallPeers) {
      dependencies[peerName] = range;
    }
  }
  return dependencies;
}
function getHoistableOptionalPeers(allMissingOptionalPeers, allPreferredVersions) {
  const optionalDependencies = {};
  for (const [missingOptionalPeerName, ranges] of Object.entries(allMissingOptionalPeers)) {
    if (!allPreferredVersions[missingOptionalPeerName])
      continue;
    let maxSatisfyingVersion;
    for (const [version2, specType] of Object.entries(allPreferredVersions[missingOptionalPeerName])) {
      if (specType === "version" && ranges.every((range) => import_semver29.default.satisfies(version2, range)) && (!maxSatisfyingVersion || import_semver29.default.gt(version2, maxSatisfyingVersion))) {
        maxSatisfyingVersion = version2;
      }
    }
    if (maxSatisfyingVersion) {
      optionalDependencies[missingOptionalPeerName] = maxSatisfyingVersion;
    }
  }
  return optionalDependencies;
}
var import_util10, import_semver29;
var init_hoistPeers = __esm({
  "../installing/deps-resolver/lib/hoistPeers.js"() {
    "use strict";
    import_util10 = __toESM(require_dist3(), 1);
    import_semver29 = __toESM(require_semver2(), 1);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver-range-intersect/0.3.1/ca4ff7b7d9a49751bdc43c6adfb5ecff77a913cad193fe9cddbc1cf6883fa725/node_modules/semver-range-intersect/dist/utils.js
var require_utils15 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver-range-intersect/0.3.1/ca4ff7b7d9a49751bdc43c6adfb5ecff77a913cad193fe9cddbc1cf6883fa725/node_modules/semver-range-intersect/dist/utils.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    var semver_12 = __importDefault2(require_semver2());
    function isNotNull(value) {
      return value !== null;
    }
    exports2.isNotNull = isNotNull;
    function uniqueArray(array) {
      return [...new Set(array)];
    }
    exports2.uniqueArray = uniqueArray;
    function isNoIncludeNull(value) {
      return value.every(isNotNull);
    }
    exports2.isNoIncludeNull = isNoIncludeNull;
    function isPrerelease(version2) {
      if (version2 instanceof semver_12.default.SemVer) {
        return version2.prerelease.length !== 0;
      } else {
        return false;
      }
    }
    exports2.isPrerelease = isPrerelease;
    function isValidOperator(comparator, operatorList) {
      return operatorList.includes(comparator.operator);
    }
    exports2.isValidOperator = isValidOperator;
    function equalComparator(comparatorA, comparatorB) {
      return comparatorA.value === comparatorB.value;
    }
    exports2.equalComparator = equalComparator;
    function comparator2versionStr(comparator) {
      const compSemver = comparator.semver;
      return compSemver instanceof semver_12.default.SemVer ? compSemver.version : "";
    }
    exports2.comparator2versionStr = comparator2versionStr;
    function isSameVersionEqualsLikeComparator(comparatorA, comparatorB) {
      const compVersionA = comparator2versionStr(comparatorA);
      const compVersionB = comparator2versionStr(comparatorB);
      return compVersionA !== "" && compVersionB !== "" && compVersionA === compVersionB && /=|^$/.test(comparatorA.operator) && /=|^$/.test(comparatorB.operator);
    }
    exports2.isSameVersionEqualsLikeComparator = isSameVersionEqualsLikeComparator;
    function isEqualsComparator(comparator) {
      return comparator.semver instanceof semver_12.default.SemVer && isValidOperator(comparator, ["", "="]);
    }
    exports2.isEqualsComparator = isEqualsComparator;
    function filterUniqueComparator(comparator, index, self2) {
      return self2.findIndex((comp) => equalComparator(comparator, comp)) === index;
    }
    exports2.filterUniqueComparator = filterUniqueComparator;
    function filterOperator(operatorList) {
      return (comparator) => isValidOperator(comparator, operatorList);
    }
    exports2.filterOperator = filterOperator;
    function isIntersectRanges(semverRangeList) {
      return semverRangeList.every((rangeA, index, rangeList) => rangeList.slice(index + 1).every((rangeB) => rangeA.intersects(rangeB)));
    }
    exports2.isIntersectRanges = isIntersectRanges;
    function stripSemVerPrerelease(semverVersion) {
      if (!(semverVersion instanceof semver_12.default.SemVer)) {
        return "";
      }
      if (!semverVersion.prerelease.length) {
        return semverVersion.version;
      }
      const newSemverVersion = new semver_12.default.SemVer(semverVersion.version, semverVersion.options);
      newSemverVersion.prerelease = [];
      return newSemverVersion.format();
    }
    exports2.stripSemVerPrerelease = stripSemVerPrerelease;
    function stripComparatorOperator(comparator) {
      if (!comparator.operator) {
        return comparator;
      }
      const versionStr = comparator2versionStr(comparator);
      return new semver_12.default.Comparator(versionStr, comparator.options);
    }
    exports2.stripComparatorOperator = stripComparatorOperator;
    function getLowerBoundComparator(comparatorList, options = {}) {
      const validComparatorList = comparatorList.filter((comparator) => isValidOperator(comparator, [">", ">="]) || !(comparator.semver instanceof semver_12.default.SemVer));
      const leComparatorVersionList = comparatorList.filter(filterOperator(["<="])).map(comparator2versionStr);
      if (validComparatorList.length >= 1) {
        return validComparatorList.reduce((a2, b) => {
          const semverA = a2.semver;
          const semverB = b.semver;
          if (!(semverA instanceof semver_12.default.SemVer)) {
            if (!options.singleRange && isPrerelease(semverB) && !(b.operator === ">=" && leComparatorVersionList.some((version2) => version2 === String(semverB)))) {
              return new semver_12.default.Comparator(`>=${stripSemVerPrerelease(semverB)}`, b.options);
            }
            return b;
          } else if (!(semverB instanceof semver_12.default.SemVer)) {
            if (!options.singleRange && isPrerelease(semverA) && !(a2.operator === ">=" && leComparatorVersionList.some((version2) => version2 === String(semverA)))) {
              return new semver_12.default.Comparator(`>=${stripSemVerPrerelease(semverA)}`, a2.options);
            }
            return a2;
          }
          const semverCmp = semver_12.default.compare(semverA, semverB);
          if (a2.operator === b.operator || semverCmp !== 0) {
            if (!options.singleRange) {
              const semverCmpMain = semverA.compareMain(semverB);
              if (semverCmpMain !== 0 && semverA.prerelease.length && semverB.prerelease.length) {
                if (semverCmpMain > 0) {
                  return new semver_12.default.Comparator(a2.operator + stripSemVerPrerelease(semverA), a2.options);
                } else {
                  return new semver_12.default.Comparator(b.operator + stripSemVerPrerelease(semverB), b.options);
                }
              }
            }
            if (semverCmp > 0) {
              return a2;
            } else {
              return b;
            }
          } else {
            if (a2.operator === ">") {
              return a2;
            } else {
              return b;
            }
          }
        });
      } else {
        return new semver_12.default.Comparator("");
      }
    }
    exports2.getLowerBoundComparator = getLowerBoundComparator;
    function getUpperBoundComparator(comparatorList, options = {}) {
      const validComparatorList = comparatorList.filter((comparator) => isValidOperator(comparator, ["<", "<="]) || !(comparator.semver instanceof semver_12.default.SemVer));
      const geComparatorVersionList = comparatorList.filter(filterOperator([">="])).map(comparator2versionStr);
      if (validComparatorList.length >= 1) {
        return validComparatorList.reduce((a2, b) => {
          const semverA = a2.semver;
          const semverB = b.semver;
          if (!(semverA instanceof semver_12.default.SemVer)) {
            if (!options.singleRange && isPrerelease(semverB) && !(b.operator === "<=" && geComparatorVersionList.some((version2) => version2 === String(semverB)))) {
              return new semver_12.default.Comparator(`<${stripSemVerPrerelease(semverB)}`, b.options);
            }
            return b;
          } else if (!(semverB instanceof semver_12.default.SemVer)) {
            if (!options.singleRange && isPrerelease(semverA) && !(a2.operator === "<=" && geComparatorVersionList.some((version2) => version2 === String(semverA)))) {
              return new semver_12.default.Comparator(`<${stripSemVerPrerelease(semverA)}`, a2.options);
            }
            return a2;
          }
          const semverCmp = semver_12.default.compare(semverA, semverB);
          if (a2.operator === b.operator || semverCmp !== 0) {
            if (!options.singleRange) {
              const semverCmpMain = semverA.compareMain(semverB);
              if (semverCmpMain !== 0 && semverA.prerelease.length && semverB.prerelease.length) {
                if (semverCmpMain < 0) {
                  return new semver_12.default.Comparator(`<${stripSemVerPrerelease(semverA)}`, a2.options);
                } else {
                  return new semver_12.default.Comparator(`<${stripSemVerPrerelease(semverB)}`, b.options);
                }
              }
            }
            if (semverCmp < 0) {
              return a2;
            } else {
              return b;
            }
          } else {
            if (a2.operator === "<") {
              return a2;
            } else {
              return b;
            }
          }
        });
      } else {
        return new semver_12.default.Comparator("");
      }
    }
    exports2.getUpperBoundComparator = getUpperBoundComparator;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver-range-intersect/0.3.1/ca4ff7b7d9a49751bdc43c6adfb5ecff77a913cad193fe9cddbc1cf6883fa725/node_modules/semver-range-intersect/dist/single-range.js
var require_single_range = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver-range-intersect/0.3.1/ca4ff7b7d9a49751bdc43c6adfb5ecff77a913cad193fe9cddbc1cf6883fa725/node_modules/semver-range-intersect/dist/single-range.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    var semver_12 = __importDefault2(require_semver2());
    var utils_1 = require_utils15();
    var SingleVer = class {
      constructor(comp) {
        this.comp = comp;
      }
      toString() {
        return this.comp.value;
      }
      intersect(singleRange) {
        if (semver_12.default.intersects(String(this), String(singleRange))) {
          return this;
        } else {
          return null;
        }
      }
      merge(singleRange) {
        if (semver_12.default.intersects(String(this), String(singleRange))) {
          return singleRange;
        }
        return null;
      }
    };
    exports2.SingleVer = SingleVer;
    var SingleRange = class _SingleRange {
      constructor(lowerBound2, upperBound) {
        this.lowerBound = lowerBound2;
        this.upperBound = upperBound;
        if (!lowerBound2.intersects(upperBound)) {
          throw new Error(`Invalid range; version range does not intersect: ${this}`);
        }
      }
      toString() {
        return [this.lowerBound.value, this.upperBound.value].filter((v) => v !== "").join(" ");
      }
      intersect(singleRange) {
        if (semver_12.default.intersects(String(this), String(singleRange))) {
          if (singleRange instanceof SingleVer) {
            return singleRange;
          } else {
            const lowerBoundComparatorList = [
              this.lowerBound,
              singleRange.lowerBound
            ];
            const upperBoundComparatorList = [
              this.upperBound,
              singleRange.upperBound
            ];
            const lowerBound2 = utils_1.getLowerBoundComparator([
              ...lowerBoundComparatorList,
              ...upperBoundComparatorList.filter((comparator) => comparator.semver instanceof semver_12.default.SemVer)
            ]);
            const upperBound = utils_1.getUpperBoundComparator([
              ...upperBoundComparatorList,
              ...lowerBoundComparatorList.filter((comparator) => comparator.semver instanceof semver_12.default.SemVer)
            ]);
            if (utils_1.isSameVersionEqualsLikeComparator(lowerBound2, upperBound)) {
              return new SingleVer(utils_1.stripComparatorOperator(lowerBound2));
            }
            return new _SingleRange(lowerBound2, upperBound);
          }
        } else {
          return null;
        }
      }
      merge(singleRange) {
        if (semver_12.default.intersects(String(this), String(singleRange))) {
          if (singleRange instanceof SingleVer) {
            return this;
          } else {
            const lowerBound2 = ((a2, b) => {
              const semverA = a2.semver;
              const semverB = b.semver;
              if (!(semverA instanceof semver_12.default.SemVer)) {
                if (utils_1.isPrerelease(semverB)) {
                  return null;
                }
                return a2;
              } else if (!(semverB instanceof semver_12.default.SemVer)) {
                if (utils_1.isPrerelease(semverA)) {
                  return null;
                }
                return b;
              }
              const cmpMain = semverA.compareMain(semverB);
              if (cmpMain < 0 && utils_1.isPrerelease(semverB) || cmpMain > 0 && utils_1.isPrerelease(semverA)) {
                return null;
              }
              const semverCmp = semver_12.default.compare(semverA, semverB);
              if (a2.operator === b.operator || semverCmp !== 0) {
                if (semverCmp < 0) {
                  return a2;
                } else {
                  return b;
                }
              } else {
                if (a2.operator === ">=") {
                  return a2;
                } else {
                  return b;
                }
              }
            })(this.lowerBound, singleRange.lowerBound);
            const upperBound = ((a2, b) => {
              const semverA = a2.semver;
              const semverB = b.semver;
              if (!(semverA instanceof semver_12.default.SemVer)) {
                if (utils_1.isPrerelease(semverB)) {
                  return null;
                }
                return a2;
              } else if (!(semverB instanceof semver_12.default.SemVer)) {
                if (utils_1.isPrerelease(semverA)) {
                  return null;
                }
                return b;
              }
              const cmpMain = semverA.compareMain(semverB);
              if (cmpMain > 0 && utils_1.isPrerelease(semverB) || cmpMain < 0 && utils_1.isPrerelease(semverA)) {
                return null;
              }
              const semverCmp = semver_12.default.compare(semverA, semverB);
              if (a2.operator === b.operator || semverCmp !== 0) {
                if (semverCmp > 0) {
                  return a2;
                } else {
                  return b;
                }
              } else {
                if (a2.operator === "<=") {
                  return a2;
                } else {
                  return b;
                }
              }
            })(this.upperBound, singleRange.upperBound);
            if (lowerBound2 && upperBound) {
              return new _SingleRange(lowerBound2, upperBound);
            }
          }
        }
        return null;
      }
    };
    exports2.SingleRange = SingleRange;
    function createSingleRange(comparatorList) {
      const equalsComparatorList = comparatorList.filter(utils_1.isEqualsComparator).filter(utils_1.filterUniqueComparator);
      switch (equalsComparatorList.length) {
        case 0: {
          const lowerBound2 = utils_1.getLowerBoundComparator(comparatorList, {
            singleRange: true
          });
          const upperBound = utils_1.getUpperBoundComparator(comparatorList, {
            singleRange: true
          });
          if (utils_1.isSameVersionEqualsLikeComparator(lowerBound2, upperBound)) {
            return new SingleVer(utils_1.stripComparatorOperator(lowerBound2));
          }
          try {
            return new SingleRange(lowerBound2, upperBound);
          } catch (err) {
            return null;
          }
        }
        case 1:
          return new SingleVer(equalsComparatorList[0]);
        default:
          return null;
      }
    }
    exports2.createSingleRange = createSingleRange;
    function isSingleRange(value) {
      return value instanceof SingleVer || value instanceof SingleRange;
    }
    exports2.isSingleRange = isSingleRange;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver-range-intersect/0.3.1/ca4ff7b7d9a49751bdc43c6adfb5ecff77a913cad193fe9cddbc1cf6883fa725/node_modules/semver-range-intersect/dist/multi-range.js
var require_multi_range = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver-range-intersect/0.3.1/ca4ff7b7d9a49751bdc43c6adfb5ecff77a913cad193fe9cddbc1cf6883fa725/node_modules/semver-range-intersect/dist/multi-range.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var single_range_1 = require_single_range();
    var utils_1 = require_utils15();
    function normalizeSingleRangeList(singleRangeList) {
      return singleRangeList.reduce((singleRangeList2, singleRange) => {
        if (!singleRange) {
          return [...singleRangeList2, singleRange];
        }
        let insertFirst = false;
        const removeIndexList = [];
        const appendSingleRange = singleRangeList2.reduce((appendSingleRange2, insertedSingleRange, index) => {
          if (insertedSingleRange && appendSingleRange2) {
            const mergedSingleRange = insertedSingleRange.merge(appendSingleRange2);
            if (mergedSingleRange) {
              if (String(mergedSingleRange) === String(insertedSingleRange)) {
                return;
              } else {
                removeIndexList.push(index);
                if (insertedSingleRange instanceof single_range_1.SingleRange && appendSingleRange2 instanceof single_range_1.SingleRange) {
                  insertFirst = true;
                }
                return mergedSingleRange;
              }
            }
          }
          return appendSingleRange2;
        }, singleRange);
        const removedSingleRangeList = singleRangeList2.filter((_, index) => !removeIndexList.includes(index));
        if (appendSingleRange) {
          if (insertFirst) {
            return [appendSingleRange, ...removedSingleRangeList];
          } else {
            return [...removedSingleRangeList, appendSingleRange];
          }
        }
        return removedSingleRangeList;
      }, []);
    }
    exports2.normalizeSingleRangeList = normalizeSingleRangeList;
    var MultiRange = class _MultiRange {
      get valid() {
        return this.set.length >= 1;
      }
      constructor(rangeList) {
        if (rangeList) {
          const singleRangeList = normalizeSingleRangeList(rangeList.map((singleRangeOrComparatorList) => {
            if (single_range_1.isSingleRange(singleRangeOrComparatorList) || !singleRangeOrComparatorList) {
              return singleRangeOrComparatorList;
            } else {
              return single_range_1.createSingleRange(singleRangeOrComparatorList);
            }
          }));
          this.set = singleRangeList.filter(utils_1.isNotNull);
        } else {
          this.set = [];
        }
      }
      toString() {
        if (!this.valid) {
          throw new Error("Invalid range");
        }
        return utils_1.uniqueArray(this.set.map(String)).join(" || ");
      }
      intersect(multiRange) {
        if (this.valid && multiRange.valid) {
          const singleRangeList = this.set.map((singleRangeA) => multiRange.set.map((singleRangeB) => singleRangeA.intersect(singleRangeB))).reduce((a2, b) => [...a2, ...b]).filter(utils_1.isNotNull);
          return new _MultiRange(singleRangeList);
        } else if (this.valid) {
          return this;
        } else if (multiRange.valid) {
          return multiRange;
        } else {
          return new _MultiRange(null);
        }
      }
    };
    exports2.MultiRange = MultiRange;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/semver-range-intersect/0.3.1/ca4ff7b7d9a49751bdc43c6adfb5ecff77a913cad193fe9cddbc1cf6883fa725/node_modules/semver-range-intersect/dist/index.js
var require_dist7 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/semver-range-intersect/0.3.1/ca4ff7b7d9a49751bdc43c6adfb5ecff77a913cad193fe9cddbc1cf6883fa725/node_modules/semver-range-intersect/dist/index.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    var semver_12 = __importDefault2(require_semver2());
    var multi_range_1 = require_multi_range();
    var utils_1 = require_utils15();
    function intersect3(...ranges) {
      const semverRangeList = (() => {
        try {
          return ranges.map((rangeStr) => new semver_12.default.Range(rangeStr));
        } catch (err) {
          return null;
        }
      })();
      if (!semverRangeList || !utils_1.isIntersectRanges(semverRangeList)) {
        return null;
      }
      const intersectRange = semverRangeList.map((range) => new multi_range_1.MultiRange(range.set)).reduce((multiRangeA, multiRangeB) => multiRangeA.intersect(multiRangeB), new multi_range_1.MultiRange(null));
      return intersectRange.valid ? String(intersectRange) || "*" : null;
    }
    exports2.intersect = intersect3;
  }
});

// ../installing/deps-resolver/lib/mergePeers.js
function mergePeers(missingPeers) {
  const conflicts = [];
  const intersections = {};
  for (const [peerName, ranges] of Object.entries(missingPeers)) {
    if (ranges.every(({ optional }) => optional))
      continue;
    if (ranges.length === 1) {
      intersections[peerName] = ranges[0].wantedRange;
      continue;
    }
    const intersection = safeIntersect(ranges.map(({ wantedRange }) => wantedRange));
    if (intersection === null) {
      conflicts.push(peerName);
    } else {
      intersections[peerName] = intersection;
    }
  }
  return { conflicts, intersections };
}
function safeIntersect(ranges) {
  try {
    return (0, import_semver_range_intersect.intersect)(...ranges);
  } catch {
    return null;
  }
}
var import_semver_range_intersect;
var init_mergePeers = __esm({
  "../installing/deps-resolver/lib/mergePeers.js"() {
    "use strict";
    import_semver_range_intersect = __toESM(require_dist7(), 1);
  }
});

// ../installing/deps-resolver/lib/nextNodeId.js
function nextNodeId() {
  return ++nodeIdCounter;
}
var nodeIdCounter;
var init_nextNodeId = __esm({
  "../installing/deps-resolver/lib/nextNodeId.js"() {
    "use strict";
    nodeIdCounter = 0;
  }
});

// ../installing/deps-resolver/lib/parentIdsContainSequence.js
function parentIdsContainSequence(pkgIds, pkgId1, pkgId2) {
  const pkg1Index = pkgIds.indexOf(pkgId1);
  if (pkg1Index === -1 || pkg1Index === pkgIds.length - 1) {
    return false;
  }
  const pkg2Index = pkgIds.lastIndexOf(pkgId2);
  return pkg1Index < pkg2Index && pkg2Index !== pkgIds.length - 1;
}
var init_parentIdsContainSequence = __esm({
  "../installing/deps-resolver/lib/parentIdsContainSequence.js"() {
    "use strict";
  }
});

// ../installing/deps-resolver/lib/replaceVersionInBareSpecifier.js
function replaceVersionInBareSpecifier(bareSpecifier, version2, namedRegistryPrefixes = []) {
  if (import_semver30.default.validRange(bareSpecifier)) {
    return version2;
  }
  let prefix;
  if (bareSpecifier.startsWith("npm:")) {
    prefix = "npm:";
  } else {
    for (const candidate of namedRegistryPrefixes) {
      if (bareSpecifier.startsWith(candidate)) {
        prefix = candidate;
        break;
      }
    }
  }
  if (prefix == null) {
    return bareSpecifier;
  }
  if (import_semver30.default.validRange(bareSpecifier.slice(prefix.length))) {
    return `${prefix}${version2}`;
  }
  const versionDelimiter = bareSpecifier.lastIndexOf("@");
  if (versionDelimiter === -1 || bareSpecifier.indexOf("/") > versionDelimiter) {
    return `${bareSpecifier}@${version2}`;
  }
  return `${bareSpecifier.substring(0, versionDelimiter + 1)}${version2}`;
}
var import_semver30;
var init_replaceVersionInBareSpecifier = __esm({
  "../installing/deps-resolver/lib/replaceVersionInBareSpecifier.js"() {
    "use strict";
    import_semver30 = __toESM(require_semver2(), 1);
  }
});

// ../installing/deps-resolver/lib/wantedDepIsLocallyAvailable.js
function wantedDepIsLocallyAvailable(workspacePackages, wantedDependency, opts2) {
  const spec = parseBareSpecifier(wantedDependency.bareSpecifier, wantedDependency.alias, opts2.defaultTag || "latest", opts2.registry);
  if (spec == null || !workspacePackages.has(spec.name))
    return false;
  return pickMatchingLocalVersionOrNull2(workspacePackages.get(spec.name), spec) !== null;
}
function pickMatchingLocalVersionOrNull2(versions, spec) {
  const localVersions = Array.from(versions.keys());
  switch (spec.type) {
    case "tag":
      return import_semver31.default.maxSatisfying(localVersions, "*");
    case "version":
      return versions.has(spec.fetchSpec) ? spec.fetchSpec : null;
    case "range":
      return import_semver31.default.maxSatisfying(localVersions, spec.fetchSpec, true);
    default:
      return null;
  }
}
var import_semver31;
var init_wantedDepIsLocallyAvailable = __esm({
  "../installing/deps-resolver/lib/wantedDepIsLocallyAvailable.js"() {
    "use strict";
    init_lib24();
    import_semver31 = __toESM(require_semver2(), 1);
  }
});

// ../installing/deps-resolver/lib/resolveDependencies.js
import path97 from "node:path";
function getPkgsInfoFromIds(ids, resolvedPkgsById) {
  return ids.slice(1).map((id) => {
    const { name, version: version2 } = resolvedPkgsById[id];
    return { id, name, version: version2 };
  });
}
async function resolveRootDependencies(ctx, importers) {
  if (ctx.autoInstallPeers) {
    ctx.allPreferredVersions = getPreferredVersionsFromLockfileAndManifests(ctx.wantedLockfile.packages, []);
  } else if (ctx.hoistPeers) {
    ctx.allPreferredVersions = {};
  }
  const { pkgAddressesByImportersWithoutPeers, publishedBy, time } = await resolveDependenciesOfImporters(ctx, importers);
  if (!ctx.hoistPeers) {
    return {
      pkgAddressesByImporters: pkgAddressesByImportersWithoutPeers.map(({ pkgAddresses }) => pkgAddresses),
      time
    };
  }
  let workspaceRootDeps;
  if (ctx.resolvePeersFromWorkspaceRoot) {
    const rootImporterIndex = importers.findIndex(({ options }) => options.parentIds[0] === ".");
    workspaceRootDeps = pkgAddressesByImportersWithoutPeers[rootImporterIndex]?.pkgAddresses ?? [];
  } else {
    workspaceRootDeps = [];
  }
  const _hoistPeers = hoistPeers.bind(null, {
    autoInstallPeers: ctx.autoInstallPeers,
    allPreferredVersions: ctx.allPreferredVersions,
    workspaceRootDeps
  });
  while (true) {
    const allMissingOptionalPeersByImporters = await Promise.all(pkgAddressesByImportersWithoutPeers.map(async (importerResolutionResult, index) => {
      const { parentPkgAliases, preferredVersions, options } = importers[index];
      const allMissingOptionalPeers = {};
      while (true) {
        for (const pkgAddress of importerResolutionResult.pkgAddresses) {
          parentPkgAliases[pkgAddress.alias] = true;
        }
        const missingOptionalPeers = [];
        const missingRequiredPeers = [];
        for (const [peerName, peerInfo] of Object.entries(importerResolutionResult.missingPeers ?? {})) {
          if (peerInfo.optional) {
            missingOptionalPeers.push([peerName, peerInfo]);
          } else {
            missingRequiredPeers.push([peerName, peerInfo]);
            parentPkgAliases[peerName] = true;
          }
        }
        if (ctx.autoInstallPeers) {
          for (const [resolvedPeerName, resolvedPeerAddress] of Object.entries(importerResolutionResult.resolvedPeers ?? {})) {
            if (!parentPkgAliases[resolvedPeerName]) {
              importerResolutionResult.pkgAddresses.push(resolvedPeerAddress);
            }
          }
        }
        for (const [missingOptionalPeerName, { range: missingOptionalPeerRange }] of missingOptionalPeers) {
          if (!allMissingOptionalPeers[missingOptionalPeerName]) {
            allMissingOptionalPeers[missingOptionalPeerName] = [missingOptionalPeerRange];
          } else if (!allMissingOptionalPeers[missingOptionalPeerName].includes(missingOptionalPeerRange)) {
            allMissingOptionalPeers[missingOptionalPeerName].push(missingOptionalPeerRange);
          }
        }
        if (!missingRequiredPeers.length)
          break;
        const dependencies = _hoistPeers(missingRequiredPeers);
        if (!Object.keys(dependencies).length)
          break;
        const wantedDependencies = getNonDevWantedDependencies({ dependencies });
        const resolveDependenciesResult = await resolveDependencies(ctx, preferredVersions, wantedDependencies, {
          ...options,
          parentPkgAliases,
          publishedBy,
          updateToLatest: false
        });
        importerResolutionResult.pkgAddresses.push(...resolveDependenciesResult.pkgAddresses);
        Object.assign(importerResolutionResult, filterMissingPeers(await resolveDependenciesResult.resolvingPeers, parentPkgAliases));
      }
      return allMissingOptionalPeers;
    }));
    let hasNewMissingPeers = false;
    await Promise.all(allMissingOptionalPeersByImporters.map(async (allMissingOptionalPeers, index) => {
      const { preferredVersions, parentPkgAliases, options } = importers[index];
      if (Object.keys(allMissingOptionalPeers).length && ctx.allPreferredVersions) {
        const optionalDependencies = getHoistableOptionalPeers(allMissingOptionalPeers, ctx.allPreferredVersions);
        if (Object.keys(optionalDependencies).length) {
          hasNewMissingPeers = true;
          const wantedDependencies = getNonDevWantedDependencies({ optionalDependencies });
          const resolveDependenciesResult = await resolveDependencies(ctx, preferredVersions, wantedDependencies, {
            ...options,
            parentPkgAliases,
            publishedBy,
            updateToLatest: false
          });
          pkgAddressesByImportersWithoutPeers[index].pkgAddresses.push(...resolveDependenciesResult.pkgAddresses);
          Object.assign(pkgAddressesByImportersWithoutPeers[index], filterMissingPeers(await resolveDependenciesResult.resolvingPeers, parentPkgAliases));
        }
      }
    }));
    if (!hasNewMissingPeers)
      break;
  }
  return {
    pkgAddressesByImporters: pkgAddressesByImportersWithoutPeers.map(({ pkgAddresses }) => pkgAddresses),
    time
  };
}
async function resolveDependenciesOfImporters(ctx, importers) {
  const pickLowestVersion = ctx.resolutionMode === "time-based" || ctx.resolutionMode === "lowest-direct";
  const resolveResults = await Promise.all(importers.map(async (importer) => {
    const extendedWantedDeps = getDepsToResolve(importer.wantedDependencies, ctx.wantedLockfile, {
      preferredDependencies: importer.options.preferredDependencies,
      prefix: importer.options.prefix,
      proceed: importer.options.proceed || ctx.forceFullResolution,
      registries: ctx.registries,
      resolvedDependencies: importer.options.resolvedDependencies
    });
    const postponedResolutionsQueue = [];
    const postponedPeersResolutionQueue = [];
    const pkgAddresses = [];
    const resolveDependenciesOfImporterWantedDep = resolveDependenciesOfImporterDependency.bind(null, {
      ctx,
      importer,
      pickLowestVersion
    });
    const resolvedDependenciesOfImporter = await Promise.all(extendedWantedDeps.map(resolveDependenciesOfImporterWantedDep));
    for (const { resolveDependencyResult, postponedPeersResolution, postponedResolution } of resolvedDependenciesOfImporter) {
      if (resolveDependencyResult) {
        pkgAddresses.push(resolveDependencyResult);
      }
      if (postponedResolution) {
        postponedResolutionsQueue.push(postponedResolution);
      }
      if (postponedPeersResolution) {
        postponedPeersResolutionQueue.push(postponedPeersResolution);
      }
    }
    return { pkgAddresses, postponedResolutionsQueue, postponedPeersResolutionQueue };
  }));
  let publishedBy;
  let time;
  if (ctx.resolutionMode === "time-based") {
    const result2 = getPublishedByDate(resolveResults.map(({ pkgAddresses }) => pkgAddresses).flat(), ctx.wantedLockfile.time);
    if (result2.publishedBy) {
      publishedBy = new Date(result2.publishedBy.getTime() + 60 * 60 * 1e3);
      time = result2.newTime;
    }
  }
  if (ctx.maximumPublishedBy && (publishedBy == null || publishedBy > ctx.maximumPublishedBy)) {
    publishedBy = ctx.maximumPublishedBy;
  }
  const pkgAddressesByImportersWithoutPeers = await Promise.all(zipWith_default(async (importer, { pkgAddresses, postponedResolutionsQueue, postponedPeersResolutionQueue }) => {
    const newPreferredVersions = Object.create(importer.preferredVersions);
    const currentParentPkgAliases = {};
    for (const pkgAddress of pkgAddresses) {
      if (currentParentPkgAliases[pkgAddress.alias] !== true) {
        currentParentPkgAliases[pkgAddress.alias] = pkgAddress;
      }
      if (pkgAddress.updated) {
        ctx.updatedSet.add(pkgAddress.alias);
      }
      const resolvedPackage = ctx.resolvedPkgsById[pkgAddress.pkgId];
      if (!resolvedPackage)
        continue;
      if (!Object.hasOwn(newPreferredVersions, resolvedPackage.name)) {
        newPreferredVersions[resolvedPackage.name] = { ...importer.preferredVersions[resolvedPackage.name] };
      }
      if (!newPreferredVersions[resolvedPackage.name][resolvedPackage.version]) {
        newPreferredVersions[resolvedPackage.name][resolvedPackage.version] = {
          selectorType: "version",
          weight: DIRECT_DEP_SELECTOR_WEIGHT
        };
      }
    }
    const newParentPkgAliases = { ...importer.parentPkgAliases, ...currentParentPkgAliases };
    const postponedResolutionOpts = {
      preferredVersions: newPreferredVersions,
      parentPkgAliases: newParentPkgAliases,
      publishedBy
    };
    const childrenResults = await Promise.all(postponedResolutionsQueue.map((postponedResolution) => postponedResolution(postponedResolutionOpts)));
    if (!ctx.hoistPeers) {
      return {
        missingPeers: {},
        pkgAddresses,
        resolvedPeers: {}
      };
    }
    const postponedPeersResolution = await Promise.all(postponedPeersResolutionQueue.map((postponedMissingPeers) => postponedMissingPeers(postponedResolutionOpts.parentPkgAliases)));
    const resolvedPeers = [...childrenResults, ...postponedPeersResolution].reduce((acc, { resolvedPeers: resolvedPeers2 }) => Object.assign(acc, resolvedPeers2), {});
    const allMissingPeers = mergePkgsDeps([
      ...filterMissingPeersFromPkgAddresses(pkgAddresses, currentParentPkgAliases, resolvedPeers),
      ...childrenResults,
      ...postponedPeersResolution
    ].map(({ missingPeers }) => missingPeers).filter(Boolean), {
      autoInstallPeersFromHighestMatch: ctx.autoInstallPeersFromHighestMatch
    });
    return {
      missingPeers: allMissingPeers,
      pkgAddresses,
      resolvedPeers
    };
  }, importers, resolveResults));
  return {
    pkgAddressesByImportersWithoutPeers,
    publishedBy,
    time
  };
}
async function resolveDependenciesOfImporterDependency({ ctx, importer, pickLowestVersion }, extendedWantedDep) {
  const catalogLookup = matchCatalogResolveResult(ctx.catalogResolver(extendedWantedDep.wantedDependency), {
    found: (result3) => result3.resolution,
    unused: () => void 0,
    misconfiguration: (result3) => {
      throw result3.error;
    }
  });
  const originalBareSpecifier = extendedWantedDep.wantedDependency.bareSpecifier;
  if (catalogLookup != null) {
    extendedWantedDep.wantedDependency.bareSpecifier = catalogLookup.specifier;
    extendedWantedDep.preferredVersion = getCatalogExistingVersionFromSnapshot(catalogLookup, ctx.wantedLockfile, extendedWantedDep.wantedDependency);
  }
  const result2 = await resolveDependenciesOfDependency(ctx, importer.preferredVersions, {
    ...importer.options,
    parentPkgAliases: importer.parentPkgAliases,
    pickLowestVersion: pickLowestVersion && !importer.updatePackageManifest,
    pinnedVersion: importer.pinnedVersion,
    publishedBy: ctx.maximumPublishedBy
  }, extendedWantedDep);
  if (result2.resolveDependencyResult != null && catalogLookup != null) {
    result2.resolveDependencyResult.catalogLookup = {
      ...catalogLookup,
      userSpecifiedBareSpecifier: originalBareSpecifier
    };
  }
  return result2;
}
function filterMissingPeersFromPkgAddresses(pkgAddresses, currentParentPkgAliases, resolvedPeers) {
  return pkgAddresses.map((pkgAddress) => ({
    ...pkgAddress,
    missingPeers: pickBy_default((_, peerName) => {
      if (!currentParentPkgAliases[peerName])
        return true;
      if (currentParentPkgAliases[peerName] !== true) {
        resolvedPeers[peerName] = currentParentPkgAliases[peerName];
      }
      return false;
    }, pkgAddress.missingPeers ?? {})
  }));
}
function getPublishedByDate(pkgAddresses, timeFromLockfile = {}) {
  const newTime = {};
  for (const pkgAddress of pkgAddresses) {
    if (pkgAddress.publishedAt) {
      newTime[pkgAddress.pkgId] = pkgAddress.publishedAt;
    } else if (timeFromLockfile[pkgAddress.pkgId]) {
      newTime[pkgAddress.pkgId] = timeFromLockfile[pkgAddress.pkgId];
    }
  }
  const sortedDates = Object.values(newTime).map((publishedAt) => new Date(publishedAt)).sort((d1, d2) => d1.getTime() - d2.getTime());
  return { publishedBy: sortedDates[sortedDates.length - 1], newTime };
}
async function resolveDependencies(ctx, preferredVersions, wantedDependencies, options) {
  const extendedWantedDeps = getDepsToResolve(wantedDependencies, ctx.wantedLockfile, {
    preferredDependencies: options.preferredDependencies,
    prefix: options.prefix,
    proceed: options.proceed || ctx.forceFullResolution,
    registries: ctx.registries,
    resolvedDependencies: options.resolvedDependencies
  });
  const postponedResolutionsQueue = [];
  const postponedPeersResolutionQueue = [];
  const pkgAddresses = [];
  const resolvedDependencies = await Promise.all(extendedWantedDeps.map((extendedWantedDep) => resolveDependenciesOfDependency(ctx, preferredVersions, options, extendedWantedDep)));
  for (const { resolveDependencyResult, postponedResolution, postponedPeersResolution } of resolvedDependencies) {
    if (resolveDependencyResult) {
      pkgAddresses.push(resolveDependencyResult);
    }
    if (postponedResolution) {
      postponedResolutionsQueue.push(postponedResolution);
    }
    if (postponedPeersResolution) {
      postponedPeersResolutionQueue.push(postponedPeersResolution);
    }
  }
  const newPreferredVersions = Object.create(preferredVersions);
  const currentParentPkgAliases = {};
  for (const pkgAddress of pkgAddresses) {
    if (currentParentPkgAliases[pkgAddress.alias] !== true) {
      currentParentPkgAliases[pkgAddress.alias] = pkgAddress;
    }
    if (pkgAddress.updated) {
      ctx.updatedSet.add(pkgAddress.alias);
    }
    const resolvedPackage = ctx.resolvedPkgsById[pkgAddress.pkgId];
    if (!resolvedPackage)
      continue;
    if (!Object.hasOwn(newPreferredVersions, resolvedPackage.name)) {
      newPreferredVersions[resolvedPackage.name] = { ...preferredVersions[resolvedPackage.name] };
    }
    if (!newPreferredVersions[resolvedPackage.name][resolvedPackage.version]) {
      newPreferredVersions[resolvedPackage.name][resolvedPackage.version] = "version";
    }
  }
  const newParentPkgAliases = {
    ...options.parentPkgAliases,
    ...currentParentPkgAliases
  };
  const postponedResolutionOpts = {
    preferredVersions: newPreferredVersions,
    parentPkgAliases: newParentPkgAliases,
    publishedBy: options.publishedBy
  };
  const childrenResults = await Promise.all(postponedResolutionsQueue.map((postponedResolution) => postponedResolution(postponedResolutionOpts)));
  if (!ctx.hoistPeers) {
    return {
      resolvingPeers: Promise.resolve({
        missingPeers: {},
        resolvedPeers: {}
      }),
      pkgAddresses
    };
  }
  return {
    pkgAddresses,
    resolvingPeers: startResolvingPeers({
      childrenResults,
      pkgAddresses,
      parentPkgAliases: options.parentPkgAliases,
      currentParentPkgAliases,
      postponedPeersResolutionQueue,
      autoInstallPeersFromHighestMatch: ctx.autoInstallPeersFromHighestMatch
    })
  };
}
async function startResolvingPeers({ childrenResults, currentParentPkgAliases, parentPkgAliases, pkgAddresses, postponedPeersResolutionQueue, autoInstallPeersFromHighestMatch }) {
  const results = await Promise.all(postponedPeersResolutionQueue.map((postponedPeersResolution) => postponedPeersResolution(parentPkgAliases)));
  const resolvedPeers = [...childrenResults, ...results].reduce((acc, { resolvedPeers: resolvedPeers2 }) => Object.assign(acc, resolvedPeers2), {});
  const allMissingPeers = mergePkgsDeps([
    ...filterMissingPeersFromPkgAddresses(pkgAddresses, currentParentPkgAliases, resolvedPeers),
    ...childrenResults,
    ...results
  ].map(({ missingPeers }) => missingPeers).filter(Boolean), { autoInstallPeersFromHighestMatch });
  return {
    missingPeers: allMissingPeers,
    resolvedPeers
  };
}
function mergePkgsDeps(pkgsDeps, opts2) {
  const groupedRanges = {};
  for (const deps of pkgsDeps) {
    for (const [name, { range, optional }] of Object.entries(deps)) {
      if (!groupedRanges[name]) {
        groupedRanges[name] = { ranges: [], optional };
      } else {
        groupedRanges[name].optional &&= optional;
      }
      groupedRanges[name].ranges.push(range);
    }
  }
  const mergedPkgDeps = {};
  for (const [name, { ranges, optional }] of Object.entries(groupedRanges)) {
    const intersection = safeIntersect(ranges);
    if (intersection) {
      mergedPkgDeps[name] = { range: intersection, optional };
    } else if (opts2.autoInstallPeersFromHighestMatch) {
      mergedPkgDeps[name] = { range: ranges.join(" || "), optional };
    }
  }
  return mergedPkgDeps;
}
async function resolveDependenciesOfDependency(ctx, preferredVersions, options, extendedWantedDep) {
  const updateDepth = typeof extendedWantedDep.wantedDependency.updateDepth === "number" ? extendedWantedDep.wantedDependency.updateDepth : options.updateDepth;
  const updateShouldContinue = options.currentDepth <= updateDepth;
  const updateRequested = updateShouldContinue && (options.updateMatching == null || extendedWantedDep.infoFromLockfile?.name != null && options.updateMatching(extendedWantedDep.infoFromLockfile.name, extendedWantedDep.infoFromLockfile.version));
  const update2 = updateRequested || extendedWantedDep.infoFromLockfile?.dependencyLockfile == null || Boolean(ctx.workspacePackages != null && ctx.linkWorkspacePackagesDepth !== -1 && wantedDepIsLocallyAvailable(ctx.workspacePackages, extendedWantedDep.wantedDependency, { defaultTag: ctx.defaultTag, registry: ctx.registries.default })) || ctx.updatedSet.has(extendedWantedDep.infoFromLockfile.name);
  const resolveDependencyOpts = {
    currentDepth: options.currentDepth,
    parentPkg: options.parentPkg,
    parentPkgAliases: options.parentPkgAliases,
    preferredVersions,
    currentPkg: extendedWantedDep.infoFromLockfile ?? void 0,
    preferredVersion: extendedWantedDep.preferredVersion,
    pickLowestVersion: options.pickLowestVersion,
    prefix: options.prefix,
    proceed: extendedWantedDep.proceed || updateShouldContinue || ctx.updatedSet.size > 0,
    publishedBy: options.publishedBy,
    update: update2 ? options.updateToLatest ? "latest" : "compatible" : false,
    updateDepth,
    updateRequested,
    supportedArchitectures: options.supportedArchitectures,
    parentIds: options.parentIds,
    pinnedVersion: options.pinnedVersion
  };
  const isInjectedWorkspacePackage = options.parentPkg.resolvedVia === "workspace" && options.parentPkg.pkgId.startsWith("file:");
  if (isInjectedWorkspacePackage) {
    const catalogLookup = matchCatalogResolveResult(ctx.catalogResolver(extendedWantedDep.wantedDependency), {
      found: (result2) => result2.resolution,
      unused: () => void 0,
      misconfiguration: (result2) => {
        throw result2.error;
      }
    });
    if (catalogLookup != null) {
      extendedWantedDep.wantedDependency.bareSpecifier = catalogLookup.specifier;
      extendedWantedDep.preferredVersion = getCatalogExistingVersionFromSnapshot(catalogLookup, ctx.wantedLockfile, extendedWantedDep.wantedDependency);
    }
  }
  const resolveDependencyResult = await resolveDependency2(extendedWantedDep.wantedDependency, ctx, resolveDependencyOpts);
  if (resolveDependencyResult == null)
    return { resolveDependencyResult: null };
  if (resolveDependencyResult.isLinkedDependency) {
    ctx.dependenciesTree.set(createNodeIdForLinkedLocalPkg(ctx.lockfileDir, resolveDependencyResult.resolution.directory), {
      children: {},
      depth: -1,
      installable: true,
      resolvedPackage: {
        name: resolveDependencyResult.name,
        version: resolveDependencyResult.version
      }
    });
    return { resolveDependencyResult };
  }
  if (!resolveDependencyResult.isNew) {
    return {
      resolveDependencyResult,
      postponedPeersResolution: resolveDependencyResult.missingPeersOfChildren != null ? async (parentPkgAliases) => {
        const missingPeers = await resolveDependencyResult.missingPeersOfChildren.get();
        return filterMissingPeers({ missingPeers, resolvedPeers: {} }, parentPkgAliases);
      } : void 0
    };
  }
  const postponedResolution = resolveChildren.bind(null, ctx, {
    parentPkg: resolveDependencyResult,
    dependencyLockfile: extendedWantedDep.infoFromLockfile?.dependencyLockfile,
    parentDepth: options.currentDepth,
    parentIds: [...options.parentIds, resolveDependencyResult.pkgId],
    updateDepth,
    prefix: options.prefix,
    updateMatching: options.updateMatching,
    supportedArchitectures: options.supportedArchitectures,
    updateToLatest: options.updateToLatest
  });
  return {
    resolveDependencyResult,
    postponedResolution: async (postponedResolutionOpts) => {
      const { missingPeers, resolvedPeers } = await postponedResolution(postponedResolutionOpts);
      if (resolveDependencyResult.missingPeersOfChildren) {
        resolveDependencyResult.missingPeersOfChildren.resolved = true;
        resolveDependencyResult.missingPeersOfChildren.resolve(missingPeers);
      }
      return filterMissingPeers({ missingPeers, resolvedPeers }, postponedResolutionOpts.parentPkgAliases);
    }
  };
}
function createNodeIdForLinkedLocalPkg(lockfileDir, pkgDir) {
  return `link:${(0, import_normalize_path6.default)(path97.relative(lockfileDir, pkgDir))}`;
}
function filterMissingPeers({ missingPeers, resolvedPeers }, parentPkgAliases) {
  const newMissing = {};
  for (const [peerName, peerVersion] of Object.entries(missingPeers)) {
    if (parentPkgAliases[peerName]) {
      if (parentPkgAliases[peerName] !== true) {
        resolvedPeers[peerName] = parentPkgAliases[peerName];
      }
    } else {
      newMissing[peerName] = peerVersion;
    }
  }
  return {
    resolvedPeers,
    missingPeers: newMissing
  };
}
async function resolveChildren(ctx, { parentPkg, parentIds, dependencyLockfile, parentDepth, updateDepth, updateMatching, prefix, supportedArchitectures }, { parentPkgAliases, preferredVersions, publishedBy }) {
  const currentResolvedDependencies = dependencyLockfile != null ? {
    ...dependencyLockfile.dependencies,
    ...dependencyLockfile.optionalDependencies
  } : void 0;
  const resolvedDependencies = parentPkg.updated ? void 0 : currentResolvedDependencies;
  const parentDependsOnPeer = Boolean(Object.keys(dependencyLockfile?.peerDependencies ?? parentPkg.pkg.peerDependencies ?? {}).length);
  const wantedDependencies = getNonDevWantedDependencies(parentPkg.pkg);
  const { pkgAddresses, resolvingPeers } = await resolveDependencies(ctx, preferredVersions, wantedDependencies, {
    currentDepth: parentDepth + 1,
    parentPkg,
    parentPkgAliases,
    preferredDependencies: currentResolvedDependencies,
    prefix,
    // If the package is not linked, we should also gather information about its dependencies.
    // After linking the package we'll need to symlink its dependencies.
    proceed: !parentPkg.depIsLinked || parentDependsOnPeer,
    publishedBy,
    resolvedDependencies,
    updateDepth,
    updateMatching,
    supportedArchitectures,
    parentIds
  });
  ctx.childrenByParentId[parentPkg.pkgId] = pkgAddresses.map((child) => ({
    alias: child.alias,
    id: child.pkgId
  }));
  ctx.dependenciesTree.set(parentPkg.nodeId, {
    children: pkgAddresses.reduce((chn, child) => {
      chn[child.alias] = child.nodeId ?? child.pkgId;
      return chn;
    }, {}),
    depth: parentDepth,
    installable: parentPkg.installable,
    resolvedPackage: ctx.resolvedPkgsById[parentPkg.pkgId]
  });
  return resolvingPeers;
}
function getDepsToResolve(wantedDependencies, wantedLockfile, options) {
  const resolvedDependencies = options.resolvedDependencies ?? {};
  const preferredDependencies = options.preferredDependencies ?? {};
  const extendedWantedDeps = [];
  let proceedAll = options.proceed;
  const satisfiesWanted2Args = referenceSatisfiesWantedSpec.bind(null, {
    lockfile: wantedLockfile,
    prefix: options.prefix
  });
  for (const wantedDependency of wantedDependencies) {
    let reference = void 0;
    let proceed = proceedAll;
    if (wantedDependency.alias) {
      const satisfiesWanted = satisfiesWanted2Args.bind(null, wantedDependency);
      if (resolvedDependencies[wantedDependency.alias] && (satisfiesWanted(resolvedDependencies[wantedDependency.alias]) || resolvedDependencies[wantedDependency.alias].startsWith("file:"))) {
        reference = resolvedDependencies[wantedDependency.alias];
      } else if (
        // If dependencies that were used by the previous version of the package
        // satisfy the newer version's requirements, then pnpm tries to keep
        // the previous dependency.
        // So for example, if foo@1.0.0 had bar@1.0.0 as a dependency
        // and foo was updated to 1.1.0 which depends on bar ^1.0.0
        // then bar@1.0.0 can be reused for foo@1.1.0
        import_semver32.default.validRange(wantedDependency.bareSpecifier) !== null && preferredDependencies[wantedDependency.alias] && satisfiesWanted(preferredDependencies[wantedDependency.alias])
      ) {
        proceed = true;
        reference = preferredDependencies[wantedDependency.alias];
      }
    }
    const infoFromLockfile = getInfoFromLockfile(wantedLockfile, options.registries, reference, wantedDependency.alias);
    if (!proceedAll && (infoFromLockfile == null || infoFromLockfile.dependencyLockfile != null && (infoFromLockfile.dependencyLockfile.peerDependencies != null || infoFromLockfile.dependencyLockfile.transitivePeerDependencies?.length))) {
      proceed = true;
      proceedAll = true;
      for (const extendedWantedDep of extendedWantedDeps) {
        if (!extendedWantedDep.proceed) {
          extendedWantedDep.proceed = true;
        }
      }
    }
    extendedWantedDeps.push({
      infoFromLockfile,
      proceed,
      wantedDependency
    });
  }
  return extendedWantedDeps;
}
function referenceSatisfiesWantedSpec(opts2, wantedDep, preferredRef) {
  const depPath = refToRelative(preferredRef, wantedDep.alias);
  if (depPath === null)
    return false;
  const pkgSnapshot = opts2.lockfile.packages?.[depPath];
  if (pkgSnapshot == null) {
    logger.warn({
      message: `Could not find preferred package ${depPath} in lockfile`,
      prefix: opts2.prefix
    });
    return false;
  }
  const { version: version2 } = nameVerFromPkgSnapshot(depPath, pkgSnapshot);
  if (!import_semver32.default.validRange(wantedDep.bareSpecifier) && Object.values(opts2.lockfile.importers).filter((importer) => importer.specifiers[wantedDep.alias] === wantedDep.bareSpecifier).length) {
    return true;
  }
  return import_semver32.default.satisfies(version2, wantedDep.bareSpecifier, true);
}
function getInfoFromLockfile(lockfile, registries, reference, alias) {
  if (!reference || !alias) {
    return void 0;
  }
  const depPath = refToRelative(reference, alias);
  if (!depPath) {
    return void 0;
  }
  let dependencyLockfile = lockfile.packages?.[depPath];
  if (dependencyLockfile != null) {
    if (dependencyLockfile.peerDependencies != null && dependencyLockfile.dependencies != null) {
      const dependencies = {};
      for (const [depName, ref] of Object.entries(dependencyLockfile.dependencies ?? {})) {
        if (dependencyLockfile.peerDependencies[depName])
          continue;
        dependencies[depName] = ref;
      }
      dependencyLockfile = {
        ...dependencyLockfile,
        dependencies
      };
    }
    const { name, version: version2, nonSemverVersion } = nameVerFromPkgSnapshot(depPath, dependencyLockfile);
    return {
      name,
      version: version2,
      dependencyLockfile,
      pkgId: nonSemverVersion ?? `${name}@${version2}`,
      // resolution may not exist if lockfile is broken, and an unexpected error will be thrown
      // if resolution does not exist, return undefined so it can be autofixed later
      resolution: dependencyLockfile.resolution && pkgSnapshotToResolution(depPath, dependencyLockfile, registries)
    };
  } else {
    const parsed = parse6(depPath);
    return {
      pkgId: parsed.nonSemverVersion ?? (parsed.name && parsed.version ? `${parsed.name}@${parsed.version}` : depPath)
      // Does it make sense to set pkgId when we're not sure?
    };
  }
}
async function resolveDependency2(wantedDependency, ctx, options) {
  const currentPkg = options.currentPkg ?? {};
  const currentLockfileContainsTheDep = currentPkg.depPath ? Boolean(ctx.currentLockfile.packages?.[currentPkg.depPath]) : void 0;
  const depIsLinked = Boolean(
    // if package is not in `node_modules/.pnpm-lock.yaml`
    // we can safely assume that it doesn't exist in `node_modules`
    currentLockfileContainsTheDep && currentPkg.depPath && currentPkg.dependencyLockfile && currentPkg.name && await pathExists2(path97.join(ctx.virtualStoreDir, depPathToFilename(currentPkg.depPath, ctx.virtualStoreDirMaxLength), "node_modules", currentPkg.name, "package.json"))
  );
  if (!options.update && !options.proceed && currentPkg.resolution != null && depIsLinked) {
    return null;
  }
  let pkgResponse;
  if (!options.parentPkg.installable) {
    wantedDependency = {
      ...wantedDependency,
      optional: true
    };
  }
  const preferredVersions = !options.updateRequested && options.preferredVersion != null ? getExactSinglePreferredVersions(wantedDependency, options.preferredVersion) : options.preferredVersions;
  try {
    const calcSpecifier2 = options.currentDepth === 0;
    if (!options.update && currentPkg.version && currentPkg.pkgId?.endsWith(`@${currentPkg.version}`) && !calcSpecifier2) {
      wantedDependency.bareSpecifier = replaceVersionInBareSpecifier(wantedDependency.bareSpecifier, currentPkg.version, ctx.namedRegistryPrefixes);
    }
    pkgResponse = await ctx.storeController.requestPackage(wantedDependency, {
      allowBuild: ctx.allowBuild,
      alwaysTryWorkspacePackages: ctx.linkWorkspacePackagesDepth >= options.currentDepth,
      currentPkg: currentPkg ? {
        id: currentPkg.pkgId,
        name: currentPkg.name,
        resolution: currentPkg.resolution,
        version: currentPkg.version,
        publishedAt: currentPkg.pkgId ? ctx.wantedLockfile.time?.[currentPkg.pkgId] : void 0
      } : void 0,
      expectedPkg: currentPkg,
      defaultTag: ctx.defaultTag,
      ignoreScripts: ctx.ignoreScripts,
      publishedBy: options.publishedBy,
      publishedByExclude: ctx.publishedByExclude,
      pickLowestVersion: options.pickLowestVersion,
      downloadPriority: -options.currentDepth,
      lockfileDir: ctx.lockfileDir,
      preferredVersions,
      preferWorkspacePackages: ctx.preferWorkspacePackages,
      projectDir: options.currentDepth > 0 && !wantedDependency.bareSpecifier.startsWith("file:") ? ctx.lockfileDir : options.parentPkg.rootDir,
      skipFetch: ctx.dryRun,
      trustPolicy: ctx.trustPolicy,
      trustPolicyExclude: ctx.trustPolicyExclude,
      trustPolicyIgnoreAfter: ctx.trustPolicyIgnoreAfter,
      update: options.update,
      workspacePackages: ctx.workspacePackages,
      supportedArchitectures: options.supportedArchitectures,
      onFetchError: (err) => {
        err.prefix = options.prefix;
        err.pkgsStack = getPkgsInfoFromIds(options.parentIds, ctx.resolvedPkgsById);
        return err;
      },
      injectWorkspacePackages: ctx.injectWorkspacePackages,
      calcSpecifier: calcSpecifier2,
      pinnedVersion: options.pinnedVersion
    });
  } catch (err) {
    const wantedDependencyDetails = {
      name: wantedDependency.alias,
      bareSpecifier: wantedDependency.bareSpecifier,
      version: wantedDependency.alias ? wantedDependency.bareSpecifier : void 0
    };
    if (wantedDependency.optional && err.code !== "ERR_PNPM_TRUST_DOWNGRADE") {
      skippedOptionalDependencyLogger.debug({
        details: err.toString(),
        package: wantedDependencyDetails,
        parents: getPkgsInfoFromIds(options.parentIds, ctx.resolvedPkgsById),
        prefix: options.prefix,
        reason: "resolution_failure"
      });
      return null;
    }
    err.package = wantedDependencyDetails;
    err.prefix = options.prefix;
    err.pkgsStack = getPkgsInfoFromIds(options.parentIds, ctx.resolvedPkgsById);
    throw err;
  }
  dependencyResolvedLogger.debug({
    resolution: pkgResponse.body.id,
    wanted: {
      dependentId: options.parentPkg.pkgId,
      name: wantedDependency.alias,
      rawSpec: wantedDependency.bareSpecifier
    }
  });
  if (pkgResponse.body.policyViolation) {
    ctx.resolutionPolicyViolations.push(pkgResponse.body.policyViolation);
  }
  if (ctx.blockExoticSubdeps && options.currentDepth > 0 && pkgResponse.body.resolvedVia != null && // This is already coming from the lockfile, we skip the check in this case for now. Should be fixed later.
  isExoticDep(pkgResponse.body.resolvedVia)) {
    const error = new PnpmError("EXOTIC_SUBDEP", `Exotic dependency "${wantedDependency.alias ?? wantedDependency.bareSpecifier}" (resolved via ${pkgResponse.body.resolvedVia}) is not allowed in subdependencies when blockExoticSubdeps is enabled`);
    error.prefix = options.prefix;
    error.pkgsStack = getPkgsInfoFromIds(options.parentIds, ctx.resolvedPkgsById);
    throw error;
  }
  if (ctx.allPreferredVersions && pkgResponse.body.manifest?.version) {
    if (!ctx.allPreferredVersions[pkgResponse.body.manifest.name]) {
      ctx.allPreferredVersions[pkgResponse.body.manifest.name] = {};
    }
    ctx.allPreferredVersions[pkgResponse.body.manifest.name][pkgResponse.body.manifest.version] = "version";
  }
  if (!pkgResponse.body.updated && options.currentDepth === Math.max(0, options.updateDepth) && depIsLinked && !ctx.force && !options.proceed) {
    return null;
  }
  if (pkgResponse.body.isLocal) {
    if (!pkgResponse.body.manifest) {
      throw new PnpmError("MISSING_PACKAGE_JSON", `Can't install ${wantedDependency.bareSpecifier}: Missing package.json file`);
    }
    return {
      alias: wantedDependency.alias ?? pkgResponse.body.alias ?? pkgResponse.body.manifest.name ?? path97.basename(pkgResponse.body.resolution.directory),
      dev: wantedDependency.dev,
      isLinkedDependency: true,
      name: pkgResponse.body.manifest.name,
      optional: wantedDependency.optional,
      pkgId: pkgResponse.body.id,
      resolution: pkgResponse.body.resolution,
      version: pkgResponse.body.manifest.version,
      normalizedBareSpecifier: pkgResponse.body.normalizedBareSpecifier,
      pkg: pkgResponse.body.manifest
    };
  }
  let prepare;
  let hasBin;
  let pkg = getManifestFromResponse(pkgResponse, wantedDependency, currentPkg);
  if (!pkg.dependencies) {
    pkg.dependencies = {};
  }
  if (ctx.readPackageHook != null) {
    pkg = await ctx.readPackageHook(pkg);
  }
  if (pkg.peerDependencies && pkg.dependencies) {
    if (ctx.autoInstallPeers) {
      pkg = {
        ...pkg,
        dependencies: omit_default(Object.keys(pkg.peerDependencies), pkg.dependencies)
      };
    } else {
      pkg = {
        ...pkg,
        dependencies: omit_default(Object.keys(pkg.peerDependencies).filter((peerDep) => options.parentPkgAliases[peerDep]), pkg.dependencies)
      };
    }
  }
  if (pkg.engines?.runtime != null) {
    convertEnginesRuntimeToDependencies(pkg, "engines", "dependencies");
  }
  if (!pkg.name) {
    throw new PnpmError("MISSING_PACKAGE_NAME", `Can't install ${wantedDependency.bareSpecifier}: Missing package name`);
  }
  let pkgIdWithPatchHash = pkgResponse.body.id.startsWith(`${pkg.name}@`) ? pkgResponse.body.id : `${pkg.name}@${pkgResponse.body.id}`;
  const patch = getPatchInfo(ctx.patchedDependencies, pkg.name, pkg.version);
  if (patch) {
    ctx.appliedPatches.add(patch.key);
    pkgIdWithPatchHash = `${pkgIdWithPatchHash}(patch_hash=${patch.hash})`;
  }
  if (parentIdsContainSequence(options.parentIds, options.parentPkg.pkgId, pkgResponse.body.id) || pkgResponse.body.id === options.parentPkg.pkgId) {
    return null;
  }
  if (!options.update && currentPkg.dependencyLockfile != null && currentPkg.depPath && !pkgResponse.body.updated && // peerDependencies field is also used for transitive peer dependencies which should not be linked
  // That's why we cannot omit reading package.json of such dependencies.
  // This can be removed if we implement something like peerDependenciesMeta.transitive: true
  currentPkg.dependencyLockfile.peerDependencies == null) {
    hasBin = currentPkg.dependencyLockfile.hasBin === true;
    pkg = {
      ...nameVerFromPkgSnapshot(currentPkg.depPath, currentPkg.dependencyLockfile),
      ...omitDepsFields(currentPkg.dependencyLockfile),
      ...pkg
    };
  } else {
    prepare = Boolean(pkgResponse.body.resolvedVia === "git-repository" && typeof pkg.scripts?.prepare === "string");
    if (currentPkg.dependencyLockfile?.deprecated && !pkgResponse.body.updated && !pkg.deprecated) {
      pkg.deprecated = currentPkg.dependencyLockfile.deprecated;
    }
    hasBin = currentPkg.dependencyLockfile?.hasBin != null && !pkg.bin ? currentPkg.dependencyLockfile.hasBin : Boolean((pkg.bin && !(pkg.bin === "" || Object.keys(pkg.bin).length === 0)) ?? pkg.directories?.bin);
  }
  if (options.currentDepth === 0 && pkgResponse.body.latest && pkgResponse.body.latest !== pkg.version) {
    ctx.outdatedDependencies[pkgResponse.body.id] = pkgResponse.body.latest;
  }
  if (pkg.peerDependencies != null) {
    for (const name in pkg.peerDependencies) {
      ctx.allPeerDepNames.add(name);
    }
  }
  if (pkg.peerDependenciesMeta != null) {
    for (const name in pkg.peerDependenciesMeta) {
      ctx.allPeerDepNames.add(name);
    }
  }
  const nodeId = pkgIsLeaf(pkg) ? pkgResponse.body.id : nextNodeId();
  const parentIsInstallable = options.parentPkg.installable === void 0 || options.parentPkg.installable;
  const installable = parentIsInstallable && pkgResponse.body.isInstallable !== false;
  const isNew = !ctx.resolvedPkgsById[pkgResponse.body.id];
  const parentImporterId = options.parentIds[0];
  const currentIsOptional = wantedDependency.optional || options.parentPkg.optional;
  if (isNew) {
    if (pkg.deprecated && (!ctx.allowedDeprecatedVersions[pkg.name] || !import_semver32.default.satisfies(pkg.version, ctx.allowedDeprecatedVersions[pkg.name]))) {
      deprecationLogger.debug({
        deprecated: pkg.deprecated,
        depth: options.currentDepth,
        pkgId: pkgResponse.body.id,
        pkgName: pkg.name,
        pkgVersion: pkg.version,
        prefix: options.prefix
      });
    }
    if (pkgResponse.body.isInstallable === false || !parentIsInstallable) {
      ctx.skipped.add(pkgResponse.body.id);
    }
    progressLogger.debug({
      packageId: pkgResponse.body.id,
      requester: ctx.lockfileDir,
      status: "resolved"
    });
    ctx.resolvedPkgsById[pkgResponse.body.id] = getResolvedPackage({
      dependencyLockfile: currentPkg.dependencyLockfile,
      pkgIdWithPatchHash,
      force: ctx.force,
      hasBin,
      patch,
      pkg,
      pkgResponse,
      prepare,
      wantedDependency,
      parentImporterId,
      optional: currentIsOptional
    });
  } else {
    ctx.resolvedPkgsById[pkgResponse.body.id].prod = ctx.resolvedPkgsById[pkgResponse.body.id].prod || !wantedDependency.dev && !wantedDependency.optional;
    ctx.resolvedPkgsById[pkgResponse.body.id].dev = ctx.resolvedPkgsById[pkgResponse.body.id].dev || wantedDependency.dev;
    ctx.resolvedPkgsById[pkgResponse.body.id].optional = ctx.resolvedPkgsById[pkgResponse.body.id].optional && currentIsOptional;
    if (ctx.resolvedPkgsById[pkgResponse.body.id].fetching == null && pkgResponse.fetching != null) {
      ctx.resolvedPkgsById[pkgResponse.body.id].fetching = pkgResponse.fetching;
      ctx.resolvedPkgsById[pkgResponse.body.id].filesIndexFile = pkgResponse.filesIndexFile;
    }
    if (ctx.dependenciesTree.has(nodeId)) {
      ctx.dependenciesTree.get(nodeId).depth = Math.min(ctx.dependenciesTree.get(nodeId).depth, options.currentDepth);
    } else {
      ctx.pendingNodes.push({
        alias: wantedDependency.alias ?? pkgResponse.body.alias ?? pkg.name,
        depth: options.currentDepth,
        parentIds: options.parentIds,
        installable,
        nodeId,
        resolvedPackage: ctx.resolvedPkgsById[pkgResponse.body.id]
      });
    }
  }
  const rootDir = pkgResponse.body.resolution.type === "directory" ? path97.resolve(ctx.lockfileDir, pkgResponse.body.resolution.directory) : options.prefix;
  let missingPeersOfChildren;
  if (ctx.hoistPeers && !options.parentIds.includes(pkgResponse.body.id)) {
    if (ctx.missingPeersOfChildrenByPkgId[pkgResponse.body.id]) {
      if (ctx.missingPeersOfChildrenByPkgId[pkgResponse.body.id].depth >= options.currentDepth || ctx.missingPeersOfChildrenByPkgId[pkgResponse.body.id].missingPeersOfChildren.resolved) {
        missingPeersOfChildren = ctx.missingPeersOfChildrenByPkgId[pkgResponse.body.id].missingPeersOfChildren;
      }
    } else {
      const p = pDefer();
      missingPeersOfChildren = {
        resolve: p.resolve,
        reject: p.reject,
        get: pShare(p.promise)
      };
      ctx.missingPeersOfChildrenByPkgId[pkgResponse.body.id] = {
        depth: options.currentDepth,
        missingPeersOfChildren
      };
    }
  }
  const resolvedPkg = ctx.resolvedPkgsById[pkgResponse.body.id];
  return {
    alias: wantedDependency.alias ?? pkgResponse.body.alias ?? pkg.name,
    depIsLinked,
    resolvedVia: pkgResponse.body.resolvedVia,
    isNew,
    nodeId,
    normalizedBareSpecifier: pkgResponse.body.normalizedBareSpecifier,
    missingPeersOfChildren,
    pkgId: pkgResponse.body.id,
    rootDir,
    missingPeers: getMissingPeers(pkg),
    optional: resolvedPkg.optional,
    version: resolvedPkg.version,
    saveCatalogName: wantedDependency.saveCatalogName,
    // Next fields are actually only needed when isNew = true
    installable,
    isLinkedDependency: void 0,
    pkg,
    updated: pkgResponse.body.updated,
    publishedAt: pkgResponse.body.publishedAt
  };
}
function getManifestFromResponse(pkgResponse, wantedDependency, currentPkg) {
  if (pkgResponse.body.manifest)
    return pkgResponse.body.manifest;
  if (currentPkg?.name && currentPkg?.version) {
    return {
      name: currentPkg.name,
      version: currentPkg.version
    };
  }
  return {
    name: wantedDependency.alias ? wantedDependency.alias : wantedDependency.bareSpecifier.split("/").pop(),
    version: "0.0.0"
  };
}
function getMissingPeers(pkg) {
  const missingPeers = {};
  for (const [peerName, peerVersion] of Object.entries(pkg.peerDependencies ?? {})) {
    missingPeers[peerName] = {
      range: peerVersion,
      optional: pkg.peerDependenciesMeta?.[peerName]?.optional === true
    };
  }
  return missingPeers;
}
function pkgIsLeaf(pkg) {
  return Object.keys(pkg.dependencies ?? {}).length === 0 && Object.keys(pkg.optionalDependencies ?? {}).length === 0 && Object.keys(pkg.peerDependencies ?? {}).length === 0 && // Package manifests can declare peerDependenciesMeta without declaring
  // peerDependencies. peerDependenciesMeta implies the later.
  Object.keys(pkg.peerDependenciesMeta ?? {}).length === 0;
}
function getResolvedPackage(options) {
  const peerDependencies = peerDependenciesWithoutOwn(options.pkg);
  return {
    additionalInfo: {
      bundledDependencies: options.pkg.bundledDependencies,
      bundleDependencies: options.pkg.bundleDependencies,
      cpu: options.pkg.cpu,
      deprecated: options.pkg.deprecated,
      engines: options.pkg.engines,
      os: options.pkg.os,
      libc: options.pkg.libc
    },
    isLeaf: pkgIsLeaf(options.pkg),
    pkgIdWithPatchHash: options.pkgIdWithPatchHash,
    dev: options.wantedDependency.dev,
    fetching: options.pkgResponse.fetching,
    filesIndexFile: options.pkgResponse.filesIndexFile,
    hasBin: options.hasBin,
    hasBundledDependencies: !((options.pkg.bundledDependencies ?? options.pkg.bundleDependencies) == null),
    id: options.pkgResponse.body.id,
    name: options.pkg.name,
    optional: options.optional,
    optionalDependencies: new Set(Object.keys(options.pkg.optionalDependencies ?? {})),
    patch: options.patch,
    peerDependencies,
    prepare: options.prepare,
    prod: !options.wantedDependency.dev && !options.wantedDependency.optional,
    resolution: options.pkgResponse.body.resolution,
    version: options.pkg.version
  };
}
function peerDependenciesWithoutOwn(pkg) {
  if (pkg.peerDependencies == null && pkg.peerDependenciesMeta == null)
    return {};
  const ownDeps = /* @__PURE__ */ new Set([
    pkg.name,
    ...Object.keys(pkg.dependencies ?? {}),
    ...Object.keys(pkg.optionalDependencies ?? {})
  ]);
  const result2 = {};
  if (pkg.peerDependencies != null) {
    for (const [peerName, peerRange] of Object.entries(pkg.peerDependencies)) {
      if (ownDeps.has(peerName))
        continue;
      result2[peerName] = {
        version: peerRange
      };
    }
  }
  if (pkg.peerDependenciesMeta != null) {
    for (const [peerName, peerMeta] of Object.entries(pkg.peerDependenciesMeta)) {
      if (ownDeps.has(peerName) || peerMeta.optional !== true)
        continue;
      if (!result2[peerName])
        result2[peerName] = { version: "*" };
      result2[peerName].optional = true;
    }
  }
  return result2;
}
function getCatalogExistingVersionFromSnapshot(catalogLookup, wantedLockfile, wantedDependency) {
  const existingCatalogResolution = wantedLockfile.catalogs?.[catalogLookup.catalogName]?.[wantedDependency.alias];
  return existingCatalogResolution?.specifier === catalogLookup.specifier ? existingCatalogResolution.version : void 0;
}
function isExoticDep(resolvedVia) {
  return !NON_EXOTIC_RESOLVED_VIA.has(resolvedVia);
}
var import_normalize_path6, import_semver32, dependencyResolvedLogger, omitDepsFields, NON_EXOTIC_RESOLVED_VIA;
var init_resolveDependencies = __esm({
  "../installing/deps-resolver/lib/resolveDependencies.js"() {
    "use strict";
    init_lib95();
    init_lib6();
    init_lib65();
    init_lib2();
    init_lib106();
    init_lib70();
    init_lib3();
    init_lib105();
    init_lib9();
    init_lib71();
    import_normalize_path6 = __toESM(require_normalize_path(), 1);
    init_p_defer();
    init_path_exists();
    init_promise_share();
    init_es();
    import_semver32 = __toESM(require_semver2(), 1);
    init_getExactSinglePreferredVersions();
    init_getNonDevWantedDependencies();
    init_hoistPeers();
    init_mergePeers();
    init_nextNodeId();
    init_parentIdsContainSequence();
    init_replaceVersionInBareSpecifier();
    init_wantedDepIsLocallyAvailable();
    dependencyResolvedLogger = logger("_dependency_resolved");
    omitDepsFields = omit_default(["dependencies", "optionalDependencies", "peerDependencies", "peerDependenciesMeta"]);
    NON_EXOTIC_RESOLVED_VIA = /* @__PURE__ */ new Set([
      "custom-resolver",
      "github.com/denoland/deno",
      "github.com/oven-sh/bun",
      "jsr-registry",
      "local-filesystem",
      "named-registry",
      "nodejs.org",
      "npm-registry",
      "workspace"
    ]);
  }
});

// ../installing/deps-resolver/lib/resolveDependencyTree.js
async function resolveDependencyTree(importers, opts2) {
  const wantedToBeSkippedPackageIds = /* @__PURE__ */ new Set();
  const autoInstallPeers = opts2.autoInstallPeers === true;
  const { publishedBy, publishedByExclude } = getPublishedByPolicy(opts2);
  const ctx = {
    allowBuild: opts2.allowBuild,
    autoInstallPeers,
    autoInstallPeersFromHighestMatch: opts2.autoInstallPeersFromHighestMatch === true,
    allowedDeprecatedVersions: opts2.allowedDeprecatedVersions,
    catalogResolver: resolveFromCatalog.bind(null, opts2.catalogs ?? {}),
    childrenByParentId: {},
    currentLockfile: opts2.currentLockfile,
    defaultTag: opts2.tag,
    dependenciesTree: /* @__PURE__ */ new Map(),
    dryRun: opts2.dryRun,
    engineStrict: opts2.engineStrict,
    force: opts2.force,
    forceFullResolution: opts2.forceFullResolution,
    ignoreScripts: opts2.ignoreScripts,
    injectWorkspacePackages: opts2.injectWorkspacePackages,
    linkWorkspacePackagesDepth: opts2.linkWorkspacePackagesDepth ?? -1,
    lockfileDir: opts2.lockfileDir,
    nodeVersion: opts2.nodeVersion,
    outdatedDependencies: {},
    patchedDependencies: opts2.patchedDependencies,
    pendingNodes: [],
    pnpmVersion: opts2.pnpmVersion,
    preferWorkspacePackages: opts2.preferWorkspacePackages,
    readPackageHook: opts2.hooks.readPackage,
    registries: opts2.registries,
    namedRegistryPrefixes: Array.from(/* @__PURE__ */ new Set([
      ...Object.keys(BUILTIN_NAMED_REGISTRIES),
      ...Object.keys(opts2.namedRegistries ?? {})
    ])).map((alias) => `${alias}:`),
    resolvedPkgsById: {},
    resolvePeersFromWorkspaceRoot: opts2.resolvePeersFromWorkspaceRoot,
    resolutionMode: opts2.resolutionMode,
    skipped: wantedToBeSkippedPackageIds,
    storeController: opts2.storeController,
    virtualStoreDir: opts2.virtualStoreDir,
    virtualStoreDirMaxLength: opts2.virtualStoreDirMaxLength,
    wantedLockfile: opts2.wantedLockfile,
    appliedPatches: /* @__PURE__ */ new Set(),
    updatedSet: /* @__PURE__ */ new Set(),
    workspacePackages: opts2.workspacePackages,
    missingPeersOfChildrenByPkgId: {},
    hoistPeers: autoInstallPeers || opts2.dedupePeerDependents,
    allPeerDepNames: /* @__PURE__ */ new Set(),
    maximumPublishedBy: publishedBy,
    publishedByExclude,
    trustPolicy: opts2.trustPolicy,
    trustPolicyExclude: opts2.trustPolicyExclude ? createPackageVersionPolicyOrThrow(opts2.trustPolicyExclude, "trustPolicyExclude") : void 0,
    trustPolicyIgnoreAfter: opts2.trustPolicyIgnoreAfter,
    blockExoticSubdeps: opts2.blockExoticSubdeps,
    resolutionPolicyViolations: []
  };
  const resolveArgs = importers.map((importer) => {
    const projectSnapshot = opts2.wantedLockfile.importers[importer.id];
    const proceed = importer.id === "." || importer.hasRemovedDependencies === true || importer.wantedDependencies.some((wantedDep) => wantedDep.isNew);
    const resolveOpts = {
      currentDepth: 0,
      parentPkg: {
        installable: true,
        nodeId: importer.id,
        optional: false,
        pkgId: importer.id,
        rootDir: importer.rootDir
      },
      parentIds: [importer.id],
      proceed,
      resolvedDependencies: {
        ...projectSnapshot.dependencies,
        ...projectSnapshot.devDependencies,
        ...projectSnapshot.optionalDependencies
      },
      updateDepth: -1,
      updateMatching: importer.updateMatching,
      updateToLatest: importer.updateToLatest,
      prefix: importer.rootDir,
      supportedArchitectures: opts2.supportedArchitectures
    };
    return {
      updatePackageManifest: importer.updatePackageManifest,
      parentPkgAliases: Object.fromEntries(importer.wantedDependencies.filter(({ alias }) => alias).map(({ alias }) => [alias, true])),
      preferredVersions: importer.preferredVersions ?? {},
      wantedDependencies: importer.wantedDependencies,
      options: resolveOpts,
      pinnedVersion: importer.pinnedVersion
    };
  });
  const { pkgAddressesByImporters, time } = await resolveRootDependencies(ctx, resolveArgs);
  const directDepsByImporterId = Object.fromEntries(importers.map(({ id }, i2) => [id, pkgAddressesByImporters[i2]]));
  for (const directDependencies of pkgAddressesByImporters) {
    for (const directDep of directDependencies) {
      const { alias, normalizedBareSpecifier, version: version2, saveCatalogName } = directDep;
      if (saveCatalogName == null) {
        continue;
      }
      const existingCatalog = opts2.catalogs?.default?.[alias];
      if (existingCatalog != null) {
        if (existingCatalog !== normalizedBareSpecifier) {
          globalWarn(`Skip adding ${alias} to the default catalog because it already exists as ${existingCatalog}. Please use \`pnpm update\` to update the catalogs.`);
        }
      } else if (normalizedBareSpecifier != null && version2 != null) {
        const userSpecifiedBareSpecifier = `catalog:${saveCatalogName === "default" ? "" : saveCatalogName}`;
        directDep.catalogLookup = {
          catalogName: saveCatalogName,
          specifier: normalizedBareSpecifier,
          userSpecifiedBareSpecifier
        };
      }
    }
  }
  for (const pendingNode of ctx.pendingNodes) {
    ctx.dependenciesTree.set(pendingNode.nodeId, {
      children: () => buildTree(ctx, pendingNode.resolvedPackage.id, pendingNode.parentIds, ctx.childrenByParentId[pendingNode.resolvedPackage.id], pendingNode.depth + 1, pendingNode.installable),
      depth: pendingNode.depth,
      installable: pendingNode.installable,
      resolvedPackage: pendingNode.resolvedPackage
    });
  }
  const resolvedImporters = {};
  for (const { id, wantedDependencies } of importers) {
    const directDeps = dedupeSameAliasDirectDeps(directDepsByImporterId[id], wantedDependencies);
    const [linkedDependencies, directNonLinkedDeps] = partition_default((dep) => dep.isLinkedDependency === true, directDeps);
    resolvedImporters[id] = {
      directDependencies: directDeps.map((dep) => {
        if (dep.isLinkedDependency === true) {
          return dep;
        }
        const resolvedPackage = ctx.dependenciesTree.get(dep.nodeId).resolvedPackage;
        return {
          alias: dep.alias,
          catalogLookup: dep.catalogLookup,
          dev: resolvedPackage.dev,
          name: resolvedPackage.name,
          optional: resolvedPackage.optional,
          pkgId: resolvedPackage.id,
          resolution: resolvedPackage.resolution,
          version: resolvedPackage.version,
          normalizedBareSpecifier: dep.normalizedBareSpecifier
        };
      }),
      directNodeIdsByAlias: new Map(directNonLinkedDeps.map(({ alias, nodeId }) => [alias, nodeId])),
      linkedDependencies
    };
  }
  return {
    dependenciesTree: ctx.dependenciesTree,
    outdatedDependencies: ctx.outdatedDependencies,
    resolvedImporters,
    resolvedPkgsById: ctx.resolvedPkgsById,
    wantedToBeSkippedPackageIds,
    appliedPatches: ctx.appliedPatches,
    time,
    allPeerDepNames: ctx.allPeerDepNames,
    resolutionPolicyViolations: ctx.resolutionPolicyViolations
  };
}
function buildTree(ctx, parentId, parentIds, children, depth, installable) {
  const childrenNodeIds = {};
  for (const child of children) {
    if (child.id.startsWith("link:")) {
      childrenNodeIds[child.alias] = child.id;
      continue;
    }
    if (parentIdsContainSequence(parentIds, parentId, child.id) || parentId === child.id) {
      continue;
    }
    if (ctx.resolvedPkgsById[child.id].isLeaf) {
      childrenNodeIds[child.alias] = child.id;
      continue;
    }
    const childNodeId = nextNodeId();
    childrenNodeIds[child.alias] = childNodeId;
    installable = installable || !ctx.skipped.has(child.id);
    ctx.dependenciesTree.set(childNodeId, {
      children: () => buildTree(ctx, child.id, [...parentIds, child.id], ctx.childrenByParentId[child.id], depth + 1, installable),
      depth,
      installable,
      resolvedPackage: ctx.resolvedPkgsById[child.id]
    });
  }
  return childrenNodeIds;
}
function dedupeSameAliasDirectDeps(directDeps, wantedDependencies) {
  const deps = /* @__PURE__ */ new Map();
  for (const directDep of directDeps) {
    const { alias, normalizedBareSpecifier } = directDep;
    if (!deps.has(alias)) {
      deps.set(alias, directDep);
    } else {
      const wantedDep = wantedDependencies.find((dep) => dep.alias ? dep.alias === alias : dep.bareSpecifier === normalizedBareSpecifier);
      if (wantedDep?.isNew) {
        deps.set(alias, directDep);
      }
    }
  }
  return Array.from(deps.values());
}
var init_resolveDependencyTree = __esm({
  "../installing/deps-resolver/lib/resolveDependencyTree.js"() {
    "use strict";
    init_lib95();
    init_lib23();
    init_lib3();
    init_lib24();
    init_es();
    init_nextNodeId();
    init_parentIdsContainSequence();
    init_resolveDependencies();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/core/4.5.0/1c6edf299c560e75f87368abe07278b2427232b51d92ec1973cdc6be0abe38bc/node_modules/@yarnpkg/core/lib/semverUtils.js
var require_semverUtils = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/core/4.5.0/1c6edf299c560e75f87368abe07278b2427232b51d92ec1973cdc6be0abe38bc/node_modules/@yarnpkg/core/lib/semverUtils.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.SemVer = void 0;
    exports2.satisfiesWithPrereleases = satisfiesWithPrereleases2;
    exports2.validRange = validRange3;
    exports2.clean = clean;
    exports2.getComparator = getComparator;
    exports2.mergeComparators = mergeComparators;
    exports2.stringifyComparator = stringifyComparator;
    exports2.simplifyRanges = simplifyRanges;
    var tslib_12 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
    var semver_12 = tslib_12.__importDefault(require_semver2());
    var semver_2 = require_semver2();
    Object.defineProperty(exports2, "SemVer", { enumerable: true, get: function() {
      return semver_2.SemVer;
    } });
    var satisfiesWithPrereleasesCache = /* @__PURE__ */ new Map();
    function satisfiesWithPrereleases2(version2, range, loose = false) {
      if (!version2)
        return false;
      const key = `${range}${loose}`;
      let semverRange = satisfiesWithPrereleasesCache.get(key);
      if (typeof semverRange === `undefined`) {
        try {
          semverRange = new semver_12.default.Range(range, { includePrerelease: true, loose });
        } catch {
          return false;
        } finally {
          satisfiesWithPrereleasesCache.set(key, semverRange || null);
        }
      } else if (semverRange === null) {
        return false;
      }
      let semverVersion;
      try {
        semverVersion = new semver_12.default.SemVer(version2, semverRange);
      } catch {
        return false;
      }
      if (semverRange.test(semverVersion))
        return true;
      if (semverVersion.prerelease)
        semverVersion.prerelease = [];
      return semverRange.set.some((comparatorSet) => {
        for (const comparator of comparatorSet)
          if (comparator.semver.prerelease)
            comparator.semver.prerelease = [];
        return comparatorSet.every((comparator) => {
          return comparator.test(semverVersion);
        });
      });
    }
    var rangesCache = /* @__PURE__ */ new Map();
    function validRange3(potentialRange) {
      if (potentialRange.indexOf(`:`) !== -1)
        return null;
      let range = rangesCache.get(potentialRange);
      if (typeof range !== `undefined`)
        return range;
      try {
        range = new semver_12.default.Range(potentialRange);
      } catch {
        range = null;
      }
      rangesCache.set(potentialRange, range);
      return range;
    }
    var CLEAN_SEMVER_REGEXP = /^(?:[\sv=]*?)((0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?)(?:\s*)$/;
    function clean(potentialVersion) {
      const version2 = CLEAN_SEMVER_REGEXP.exec(potentialVersion);
      return version2 ? version2[1] : null;
    }
    function getComparator(comparators) {
      if (comparators.semver === semver_12.default.Comparator.ANY)
        return { gt: null, lt: null };
      switch (comparators.operator) {
        case ``:
          return { gt: [`>=`, comparators.semver], lt: [`<=`, comparators.semver] };
        case `>`:
        case `>=`:
          return { gt: [comparators.operator, comparators.semver], lt: null };
        case `<`:
        case `<=`:
          return { gt: null, lt: [comparators.operator, comparators.semver] };
        default: {
          throw new Error(`Assertion failed: Unexpected comparator operator (${comparators.operator})`);
        }
      }
    }
    function mergeComparators(comparators) {
      if (comparators.length === 0)
        return null;
      let maxGtComparator = null;
      let minLtComparator = null;
      for (const comparator of comparators) {
        if (comparator.gt) {
          const cmp = maxGtComparator !== null ? semver_12.default.compare(comparator.gt[1], maxGtComparator[1]) : null;
          if (cmp === null || cmp > 0 || cmp === 0 && comparator.gt[0] === `>`) {
            maxGtComparator = comparator.gt;
          }
        }
        if (comparator.lt) {
          const cmp = minLtComparator !== null ? semver_12.default.compare(comparator.lt[1], minLtComparator[1]) : null;
          if (cmp === null || cmp < 0 || cmp === 0 && comparator.lt[0] === `<`) {
            minLtComparator = comparator.lt;
          }
        }
      }
      if (maxGtComparator && minLtComparator) {
        const cmp = semver_12.default.compare(maxGtComparator[1], minLtComparator[1]);
        if (cmp === 0 && (maxGtComparator[0] === `>` || minLtComparator[0] === `<`))
          return null;
        if (cmp > 0) {
          return null;
        }
      }
      return {
        gt: maxGtComparator,
        lt: minLtComparator
      };
    }
    function stringifyComparator(comparator) {
      if (comparator.gt && comparator.lt) {
        if (comparator.gt[0] === `>=` && comparator.lt[0] === `<=` && comparator.gt[1].version === comparator.lt[1].version)
          return comparator.gt[1].version;
        if (comparator.gt[0] === `>=` && comparator.lt[0] === `<`) {
          if (comparator.lt[1].version === `${comparator.gt[1].major + 1}.0.0-0`)
            return `^${comparator.gt[1].version}`;
          if (comparator.lt[1].version === `${comparator.gt[1].major}.${comparator.gt[1].minor + 1}.0-0`) {
            return `~${comparator.gt[1].version}`;
          }
        }
      }
      const parts = [];
      if (comparator.gt)
        parts.push(comparator.gt[0] + comparator.gt[1].version);
      if (comparator.lt)
        parts.push(comparator.lt[0] + comparator.lt[1].version);
      if (!parts.length)
        return `*`;
      return parts.join(` `);
    }
    function simplifyRanges(ranges) {
      const parsedRanges = ranges.map(removeSubsets).map((range) => validRange3(range).set.map((comparators) => comparators.map((comparator) => getComparator(comparator))));
      let alternatives = parsedRanges.shift().map((comparators) => mergeComparators(comparators)).filter((range) => range !== null);
      for (const parsedRange of parsedRanges) {
        const nextAlternatives = [];
        for (const comparator of alternatives) {
          for (const refiners of parsedRange) {
            const nextComparators = mergeComparators([
              comparator,
              ...refiners
            ]);
            if (nextComparators !== null) {
              nextAlternatives.push(nextComparators);
            }
          }
        }
        alternatives = nextAlternatives;
      }
      if (alternatives.length === 0)
        return null;
      return alternatives.map((comparator) => stringifyComparator(comparator)).join(` || `);
    }
    function removeSubsets(rangeString) {
      const parts = rangeString.split(`||`);
      if (parts.length > 1) {
        const newParts = /* @__PURE__ */ new Set();
        for (const potentialSubset of parts) {
          if (!parts.some((part) => part !== potentialSubset && semver_12.default.subset(potentialSubset, part))) {
            newParts.add(potentialSubset);
          }
        }
        if (newParts.size < parts.length) {
          const newRange = [...newParts].join(` || `);
          return newRange;
        }
      }
      return rangeString;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/bintrees/1.0.2/614e6be6b3552f19d02a4562ab466d605ce771f2013ab0d62c4dfab17116a120/node_modules/bintrees/lib/treebase.js
var require_treebase = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/bintrees/1.0.2/614e6be6b3552f19d02a4562ab466d605ce771f2013ab0d62c4dfab17116a120/node_modules/bintrees/lib/treebase.js"(exports2, module2) {
    function TreeBase() {
    }
    TreeBase.prototype.clear = function() {
      this._root = null;
      this.size = 0;
    };
    TreeBase.prototype.find = function(data) {
      var res = this._root;
      while (res !== null) {
        var c3 = this._comparator(data, res.data);
        if (c3 === 0) {
          return res.data;
        } else {
          res = res.get_child(c3 > 0);
        }
      }
      return null;
    };
    TreeBase.prototype.findIter = function(data) {
      var res = this._root;
      var iter = this.iterator();
      while (res !== null) {
        var c3 = this._comparator(data, res.data);
        if (c3 === 0) {
          iter._cursor = res;
          return iter;
        } else {
          iter._ancestors.push(res);
          res = res.get_child(c3 > 0);
        }
      }
      return null;
    };
    TreeBase.prototype.lowerBound = function(item) {
      var cur = this._root;
      var iter = this.iterator();
      var cmp = this._comparator;
      while (cur !== null) {
        var c3 = cmp(item, cur.data);
        if (c3 === 0) {
          iter._cursor = cur;
          return iter;
        }
        iter._ancestors.push(cur);
        cur = cur.get_child(c3 > 0);
      }
      for (var i2 = iter._ancestors.length - 1; i2 >= 0; --i2) {
        cur = iter._ancestors[i2];
        if (cmp(item, cur.data) < 0) {
          iter._cursor = cur;
          iter._ancestors.length = i2;
          return iter;
        }
      }
      iter._ancestors.length = 0;
      return iter;
    };
    TreeBase.prototype.upperBound = function(item) {
      var iter = this.lowerBound(item);
      var cmp = this._comparator;
      while (iter.data() !== null && cmp(iter.data(), item) === 0) {
        iter.next();
      }
      return iter;
    };
    TreeBase.prototype.min = function() {
      var res = this._root;
      if (res === null) {
        return null;
      }
      while (res.left !== null) {
        res = res.left;
      }
      return res.data;
    };
    TreeBase.prototype.max = function() {
      var res = this._root;
      if (res === null) {
        return null;
      }
      while (res.right !== null) {
        res = res.right;
      }
      return res.data;
    };
    TreeBase.prototype.iterator = function() {
      return new Iterator2(this);
    };
    TreeBase.prototype.each = function(cb) {
      var it = this.iterator(), data;
      while ((data = it.next()) !== null) {
        if (cb(data) === false) {
          return;
        }
      }
    };
    TreeBase.prototype.reach = function(cb) {
      var it = this.iterator(), data;
      while ((data = it.prev()) !== null) {
        if (cb(data) === false) {
          return;
        }
      }
    };
    function Iterator2(tree) {
      this._tree = tree;
      this._ancestors = [];
      this._cursor = null;
    }
    Iterator2.prototype.data = function() {
      return this._cursor !== null ? this._cursor.data : null;
    };
    Iterator2.prototype.next = function() {
      if (this._cursor === null) {
        var root = this._tree._root;
        if (root !== null) {
          this._minNode(root);
        }
      } else {
        if (this._cursor.right === null) {
          var save;
          do {
            save = this._cursor;
            if (this._ancestors.length) {
              this._cursor = this._ancestors.pop();
            } else {
              this._cursor = null;
              break;
            }
          } while (this._cursor.right === save);
        } else {
          this._ancestors.push(this._cursor);
          this._minNode(this._cursor.right);
        }
      }
      return this._cursor !== null ? this._cursor.data : null;
    };
    Iterator2.prototype.prev = function() {
      if (this._cursor === null) {
        var root = this._tree._root;
        if (root !== null) {
          this._maxNode(root);
        }
      } else {
        if (this._cursor.left === null) {
          var save;
          do {
            save = this._cursor;
            if (this._ancestors.length) {
              this._cursor = this._ancestors.pop();
            } else {
              this._cursor = null;
              break;
            }
          } while (this._cursor.left === save);
        } else {
          this._ancestors.push(this._cursor);
          this._maxNode(this._cursor.left);
        }
      }
      return this._cursor !== null ? this._cursor.data : null;
    };
    Iterator2.prototype._minNode = function(start) {
      while (start.left !== null) {
        this._ancestors.push(start);
        start = start.left;
      }
      this._cursor = start;
    };
    Iterator2.prototype._maxNode = function(start) {
      while (start.right !== null) {
        this._ancestors.push(start);
        start = start.right;
      }
      this._cursor = start;
    };
    module2.exports = TreeBase;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/bintrees/1.0.2/614e6be6b3552f19d02a4562ab466d605ce771f2013ab0d62c4dfab17116a120/node_modules/bintrees/lib/rbtree.js
var require_rbtree = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/bintrees/1.0.2/614e6be6b3552f19d02a4562ab466d605ce771f2013ab0d62c4dfab17116a120/node_modules/bintrees/lib/rbtree.js"(exports2, module2) {
    var TreeBase = require_treebase();
    function Node2(data) {
      this.data = data;
      this.left = null;
      this.right = null;
      this.red = true;
    }
    Node2.prototype.get_child = function(dir) {
      return dir ? this.right : this.left;
    };
    Node2.prototype.set_child = function(dir, val) {
      if (dir) {
        this.right = val;
      } else {
        this.left = val;
      }
    };
    function RBTree2(comparator) {
      this._root = null;
      this._comparator = comparator;
      this.size = 0;
    }
    RBTree2.prototype = new TreeBase();
    RBTree2.prototype.insert = function(data) {
      var ret2 = false;
      if (this._root === null) {
        this._root = new Node2(data);
        ret2 = true;
        this.size++;
      } else {
        var head2 = new Node2(void 0);
        var dir = 0;
        var last = 0;
        var gp = null;
        var ggp = head2;
        var p = null;
        var node = this._root;
        ggp.right = this._root;
        while (true) {
          if (node === null) {
            node = new Node2(data);
            p.set_child(dir, node);
            ret2 = true;
            this.size++;
          } else if (is_red(node.left) && is_red(node.right)) {
            node.red = true;
            node.left.red = false;
            node.right.red = false;
          }
          if (is_red(node) && is_red(p)) {
            var dir2 = ggp.right === gp;
            if (node === p.get_child(last)) {
              ggp.set_child(dir2, single_rotate(gp, !last));
            } else {
              ggp.set_child(dir2, double_rotate(gp, !last));
            }
          }
          var cmp = this._comparator(node.data, data);
          if (cmp === 0) {
            break;
          }
          last = dir;
          dir = cmp < 0;
          if (gp !== null) {
            ggp = gp;
          }
          gp = p;
          p = node;
          node = node.get_child(dir);
        }
        this._root = head2.right;
      }
      this._root.red = false;
      return ret2;
    };
    RBTree2.prototype.remove = function(data) {
      if (this._root === null) {
        return false;
      }
      var head2 = new Node2(void 0);
      var node = head2;
      node.right = this._root;
      var p = null;
      var gp = null;
      var found = null;
      var dir = 1;
      while (node.get_child(dir) !== null) {
        var last = dir;
        gp = p;
        p = node;
        node = node.get_child(dir);
        var cmp = this._comparator(data, node.data);
        dir = cmp > 0;
        if (cmp === 0) {
          found = node;
        }
        if (!is_red(node) && !is_red(node.get_child(dir))) {
          if (is_red(node.get_child(!dir))) {
            var sr = single_rotate(node, dir);
            p.set_child(last, sr);
            p = sr;
          } else if (!is_red(node.get_child(!dir))) {
            var sibling = p.get_child(!last);
            if (sibling !== null) {
              if (!is_red(sibling.get_child(!last)) && !is_red(sibling.get_child(last))) {
                p.red = false;
                sibling.red = true;
                node.red = true;
              } else {
                var dir2 = gp.right === p;
                if (is_red(sibling.get_child(last))) {
                  gp.set_child(dir2, double_rotate(p, last));
                } else if (is_red(sibling.get_child(!last))) {
                  gp.set_child(dir2, single_rotate(p, last));
                }
                var gpc = gp.get_child(dir2);
                gpc.red = true;
                node.red = true;
                gpc.left.red = false;
                gpc.right.red = false;
              }
            }
          }
        }
      }
      if (found !== null) {
        found.data = node.data;
        p.set_child(p.right === node, node.get_child(node.left === null));
        this.size--;
      }
      this._root = head2.right;
      if (this._root !== null) {
        this._root.red = false;
      }
      return found !== null;
    };
    function is_red(node) {
      return node !== null && node.red;
    }
    function single_rotate(root, dir) {
      var save = root.get_child(!dir);
      root.set_child(!dir, save.get_child(dir));
      save.set_child(dir, root);
      root.red = true;
      save.red = false;
      return save;
    }
    function double_rotate(root, dir) {
      root.set_child(!dir, single_rotate(root.get_child(!dir), !dir));
      return single_rotate(root, dir);
    }
    module2.exports = RBTree2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/bintrees/1.0.2/614e6be6b3552f19d02a4562ab466d605ce771f2013ab0d62c4dfab17116a120/node_modules/bintrees/lib/bintree.js
var require_bintree = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/bintrees/1.0.2/614e6be6b3552f19d02a4562ab466d605ce771f2013ab0d62c4dfab17116a120/node_modules/bintrees/lib/bintree.js"(exports2, module2) {
    var TreeBase = require_treebase();
    function Node2(data) {
      this.data = data;
      this.left = null;
      this.right = null;
    }
    Node2.prototype.get_child = function(dir) {
      return dir ? this.right : this.left;
    };
    Node2.prototype.set_child = function(dir, val) {
      if (dir) {
        this.right = val;
      } else {
        this.left = val;
      }
    };
    function BinTree(comparator) {
      this._root = null;
      this._comparator = comparator;
      this.size = 0;
    }
    BinTree.prototype = new TreeBase();
    BinTree.prototype.insert = function(data) {
      if (this._root === null) {
        this._root = new Node2(data);
        this.size++;
        return true;
      }
      var dir = 0;
      var p = null;
      var node = this._root;
      while (true) {
        if (node === null) {
          node = new Node2(data);
          p.set_child(dir, node);
          ret = true;
          this.size++;
          return true;
        }
        if (this._comparator(node.data, data) === 0) {
          return false;
        }
        dir = this._comparator(node.data, data) < 0;
        p = node;
        node = node.get_child(dir);
      }
    };
    BinTree.prototype.remove = function(data) {
      if (this._root === null) {
        return false;
      }
      var head2 = new Node2(void 0);
      var node = head2;
      node.right = this._root;
      var p = null;
      var found = null;
      var dir = 1;
      while (node.get_child(dir) !== null) {
        p = node;
        node = node.get_child(dir);
        var cmp = this._comparator(data, node.data);
        dir = cmp > 0;
        if (cmp === 0) {
          found = node;
        }
      }
      if (found !== null) {
        found.data = node.data;
        p.set_child(p.right === node, node.get_child(node.left === null));
        this._root = head2.right;
        this.size--;
        return true;
      } else {
        return false;
      }
    };
    module2.exports = BinTree;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/bintrees/1.0.2/614e6be6b3552f19d02a4562ab466d605ce771f2013ab0d62c4dfab17116a120/node_modules/bintrees/index.js
var require_bintrees = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/bintrees/1.0.2/614e6be6b3552f19d02a4562ab466d605ce771f2013ab0d62c4dfab17116a120/node_modules/bintrees/index.js"(exports2, module2) {
    module2.exports = {
      RBTree: require_rbtree(),
      BinTree: require_bintree()
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/short-tree/3.0.0/315f27e198b3a82594f98ff98c05c51363823ee809ae68731f318db44de034ac/node_modules/short-tree/dist/index.js
function makeArrayCompare(cmp) {
  return function(a2, b) {
    const lenA = a2.length;
    const lenB = b.length;
    const minLength = Math.min(lenA, lenB);
    for (let i2 = 0; i2 < minLength; ++i2) {
      const diff = cmp(a2[i2], b[i2]);
      if (diff === 0)
        continue;
      return diff;
    }
    return lenA > lenB ? 1 : lenA < lenB ? -1 : 0;
  };
}
function arrayStartsWith(haystack, needle, cmp) {
  if (haystack.length < needle.length)
    return false;
  for (let i2 = 0; i2 < needle.length; ++i2)
    if (cmp(haystack[i2], needle[i2]) !== 0)
      return false;
  return true;
}
var import_bintrees, ShortTree;
var init_dist6 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/short-tree/3.0.0/315f27e198b3a82594f98ff98c05c51363823ee809ae68731f318db44de034ac/node_modules/short-tree/dist/index.js"() {
    import_bintrees = __toESM(require_bintrees(), 1);
    ShortTree = class extends import_bintrees.RBTree {
      constructor(cmp, arrayCmp = makeArrayCompare(cmp)) {
        super(arrayCmp);
        this.cmp = cmp;
        this.arrayCmp = arrayCmp;
      }
      arrayStartsWith(haystack, needle) {
        return arrayStartsWith(haystack, needle, this.cmp);
      }
      insert(path218) {
        const iter = this.lowerBound(path218);
        const data = iter.data();
        if (data) {
          const cmp = this.arrayCmp(data, path218);
          if (cmp === 0)
            return false;
          else if (this.arrayStartsWith(data, path218))
            this.chopOff(path218);
        }
        const prev = this.lowerBound(path218).prev();
        if (prev && this.arrayStartsWith(path218, prev))
          return false;
        return super.insert(path218);
      }
      chopOff(path218) {
        const iter = this.lowerBound(path218);
        const found = [];
        do {
          const data = iter.data();
          if (data && this.arrayStartsWith(data, path218))
            found.push(data);
          else
            break;
          iter.next();
        } while (true);
        for (const node of found)
          this.remove(node);
        return found.length > 0;
      }
      values() {
        const ret2 = [];
        this.each((node) => ret2.push(node));
        return ret2;
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rotated-array-set/3.0.0/c09c9e498ee5cb5c526aa9e4720bbc26db9b17b566911b75e3df405f9215f1fa/node_modules/rotated-array-set/dist/index.js
function arrayEqual(a2, b) {
  if (a2.length !== b.length)
    return false;
  else if (a2.length === 0)
    return true;
  return !a2.some((nodeA, i2) => nodeA !== b[i2]);
}
function rotatedArrayEqual(a2, b) {
  if (a2.length !== b.length)
    return false;
  else if (!a2.length)
    return true;
  const offset = b.indexOf(a2[0]);
  if (offset === -1)
    return false;
  const _b = offset === 0 ? b : [...b.slice(offset), ...b.slice(0, offset)];
  return arrayEqual(a2, _b);
}
function simpleHash(text, hashCache) {
  const textLength = text.length;
  if (textLength === 0)
    return 4711;
  const quads = [];
  for (let i2 = 0; i2 < textLength; ++i2) {
    let byte = text.charCodeAt(i2) + i2 * 13;
    byte = byte % 256;
    const mod = i2 % 4;
    if (mod === 0)
      quads.push(byte);
    else
      quads[quads.length - 1] |= byte << (mod === 1 ? 8 : mod === 2 ? 16 : 24);
  }
  const hash2 = quads.reduce((prev, cur) => prev ^ cur, textLength * 13);
  hashCache.set(text, hash2);
  return hash2;
}
function nodeHash(keys4, hashCache) {
  if (keys4.length === 0)
    return 31415;
  return keys4.map((key) => {
    var _a;
    return (_a = hashCache.get(key)) !== null && _a !== void 0 ? _a : simpleHash(key, hashCache);
  }).reduce((prev, cur) => prev ^ cur, keys4.length * 13);
}
var RotatedArraySet;
var init_dist7 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/rotated-array-set/3.0.0/c09c9e498ee5cb5c526aa9e4720bbc26db9b17b566911b75e3df405f9215f1fa/node_modules/rotated-array-set/dist/index.js"() {
    RotatedArraySet = class {
      constructor(stringify = (t2) => `${t2}`) {
        this.stringify = stringify;
        this.hashCache = /* @__PURE__ */ new Map();
        this.tree = /* @__PURE__ */ new Map();
      }
      makeNode(arr) {
        const keys4 = arr.map((t2) => this.stringify(t2));
        const hash2 = nodeHash(keys4, this.hashCache);
        const node = {
          keys: keys4,
          hash: hash2,
          value: arr
        };
        return node;
      }
      add(arr) {
        const node = this.makeNode(arr);
        if (this._has(node))
          return false;
        let set2 = this.tree.get(node.hash);
        if (!set2) {
          set2 = /* @__PURE__ */ new Set();
          this.tree.set(node.hash, set2);
        }
        set2.add(node);
        return true;
      }
      _has(node) {
        const set2 = this.tree.get(node.hash);
        if (!set2)
          return void 0;
        for (const iter of set2.values())
          if (rotatedArrayEqual(iter.keys, node.keys))
            return iter;
        return void 0;
      }
      has(arr) {
        return !!this._has(this.makeNode(arr));
      }
      delete(arr) {
        const node = this._has(this.makeNode(arr));
        if (!node)
          return false;
        const set2 = this.tree.get(node.hash);
        set2.delete(node);
        if (set2.size === 0)
          this.tree.delete(node.hash);
        return true;
      }
      values() {
        const set2 = new Set([...this.tree.values()].flatMap((set3) => [...set3.values()]));
        return [...set2].map(({ value }) => value);
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fast-string-compare/3.0.0/297de306c3646778ca2761b80afc8636496d962689fa79ef606e94448ab233f2/node_modules/fast-string-compare/dist/index.js
function compare(a2, b) {
  const lenA = a2.length;
  const lenB = b.length;
  const minLen = lenA < lenB ? lenA : lenB;
  var i2 = 0;
  for (; i2 < minLen; ++i2) {
    const ca = a2.charCodeAt(i2);
    const cb = b.charCodeAt(i2);
    if (ca > cb)
      return 1;
    else if (ca < cb)
      return -1;
  }
  if (lenA === lenB)
    return 0;
  return lenA > lenB ? 1 : -1;
}
var init_dist8 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/fast-string-compare/3.0.0/297de306c3646778ca2761b80afc8636496d962689fa79ef606e94448ab233f2/node_modules/fast-string-compare/dist/index.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/graph-cycles/3.0.0/71982412f573eb00eb9df3947dac50c9c9bad9a5689655503beddf0343c9887f/node_modules/graph-cycles/dist/util.js
function uniq2(arr) {
  return [...new Set(arr)];
}
function uniqArrays(arrays) {
  const known = [];
  return arrays.filter((array) => {
    const isKnown = known.some((arr) => !arrayCompare(arr, array));
    if (isKnown)
      return false;
    known.push(array);
    return true;
  });
}
function arrayCompare(a2, b) {
  if (a2.length !== b.length)
    return a2.length > b.length ? 1 : -1;
  else if (a2.length === 0)
    return 0;
  for (let i2 = 0; i2 < a2.length; ++i2) {
    const diff = compare(a2[i2], b[i2]);
    if (diff !== 0)
      return diff;
  }
  return 0;
}
var init_util = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/graph-cycles/3.0.0/71982412f573eb00eb9df3947dac50c9c9bad9a5689655503beddf0343c9887f/node_modules/graph-cycles/dist/util.js"() {
    init_dist8();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/graph-cycles/3.0.0/71982412f573eb00eb9df3947dac50c9c9bad9a5689655503beddf0343c9887f/node_modules/graph-cycles/dist/types.js
var init_types2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/graph-cycles/3.0.0/71982412f573eb00eb9df3947dac50c9c9bad9a5689655503beddf0343c9887f/node_modules/graph-cycles/dist/types.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/graph-cycles/3.0.0/71982412f573eb00eb9df3947dac50c9c9bad9a5689655503beddf0343c9887f/node_modules/graph-cycles/dist/index.js
function buildAndEnsureValidGraph(edges) {
  const fromSet = /* @__PURE__ */ new Set();
  edges.forEach(([from5]) => {
    if (fromSet.has(from5))
      throw new Error(`Duplicate edge specification from "${from5}"`);
    fromSet.add(from5);
  });
  return new Map(edges.map(([from5, to]) => [from5, uniq2(to)]));
}
function analyzeGraph(graph) {
  const graphMap = buildAndEnsureValidGraph(graph);
  const entrypoints = new ShortTree(compare);
  const cycleNodes = /* @__PURE__ */ new Set();
  const cycles = new RotatedArraySet();
  const dependencies = /* @__PURE__ */ new Set();
  const allExitPaths = new Array();
  const recordCycleEntrypoint = (path218) => {
    if (path218.length === 0)
      return;
    entrypoints.insert(path218);
  };
  const recordCycle = (path218) => {
    if (cycles.add(path218)) {
      for (const node of path218)
        cycleNodes.add(node);
    }
  };
  const isPartOfCycle = (node) => cycleNodes.has(node);
  for (const [from5, _to] of graphMap.entries()) {
    const path218 = [from5];
    const visited = /* @__PURE__ */ new Set();
    let foundCycle = false;
    let createdCycle = false;
    const exitPaths = [];
    let to = _to;
    let nodeNextIndex = 0;
    const getLeaf = () => path218[path218.length - 1];
    const testNode = () => {
      const node = getLeaf();
      const shouldCheckCycles = !createdCycle;
      if (shouldCheckCycles && isPartOfCycle(node)) {
        recordCycleEntrypoint(path218.slice(0, -1));
        foundCycle = true;
        return true;
      }
      if (visited.has(node)) {
        const entrypointPath = path218.slice(0, path218.indexOf(node) + 1);
        if (entrypointPath.length > 1)
          recordCycleEntrypoint(entrypointPath.slice(0, -1));
        const cycle = path218.slice(path218.indexOf(node), -1);
        recordCycle(cycle);
        createdCycle = true;
        return true;
      }
      return false;
    };
    const walkDown = () => {
      var _a;
      if (nodeNextIndex >= to.length)
        return false;
      const node = getLeaf();
      visited.add(node);
      const nextLeaf = to[nodeNextIndex];
      path218.push(nextLeaf);
      to = (_a = graphMap.get(nextLeaf)) !== null && _a !== void 0 ? _a : [];
      nodeNextIndex = 0;
      return true;
    };
    const walkUp = () => {
      var _a;
      if (path218.length === 1)
        return true;
      const lastLeaf = getLeaf();
      path218.pop();
      const node = getLeaf();
      visited.delete(node);
      to = (_a = graphMap.get(node)) !== null && _a !== void 0 ? _a : [];
      nodeNextIndex = to.indexOf(lastLeaf) + 1;
      if (nodeNextIndex >= to.length)
        return walkUp();
      else
        walkDown();
      return false;
    };
    while (true) {
      if (testNode()) {
        if (walkUp())
          break;
        else
          continue;
      }
      if (walkDown())
        continue;
      exitPaths.push([...path218]);
      if (walkUp())
        break;
    }
    if (foundCycle || createdCycle)
      exitPaths.forEach((path219) => {
        while (path219.length > 0 && !isPartOfCycle(path219[path219.length - 1])) {
          dependencies.add(path219[path219.length - 1]);
          path219.pop();
        }
      });
    for (const path219 of exitPaths)
      allExitPaths.push(path219);
  }
  const trimmedEntrypoints = uniqArrays(entrypoints.values().map((path218) => {
    for (let i2 = 0; i2 < path218.length; ++i2) {
      if (isPartOfCycle(path218[i2])) {
        path218 = path218.slice(0, i2);
        break;
      }
    }
    return path218;
  }).filter((path218) => path218.length > 0));
  const all = /* @__PURE__ */ new Set([...cycleNodes, ...trimmedEntrypoints.flat()]);
  const dependenciesList = [...dependencies].filter((dep) => !all.has(dep));
  const allInclDeps = /* @__PURE__ */ new Set([...all, ...dependenciesList]);
  const dependents = /* @__PURE__ */ new Set();
  allExitPaths.forEach((path218) => {
    if (path218.length > 0 && allInclDeps.has(path218[path218.length - 1])) {
      const prePath = path218.slice(0, -1);
      if (prePath.some((node) => allInclDeps.has(node)))
        return;
      prePath.forEach((node) => dependents.add(node));
    }
  });
  return {
    cycles: cycles.values(),
    entrypoints: trimmedEntrypoints,
    dependencies: dependenciesList,
    dependents: [...dependents],
    all: [...all]
  };
}
var init_dist9 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/graph-cycles/3.0.0/71982412f573eb00eb9df3947dac50c9c9bad9a5689655503beddf0343c9887f/node_modules/graph-cycles/dist/index.js"() {
    init_dist6();
    init_dist7();
    init_dist8();
    init_util();
    init_types2();
  }
});

// ../installing/deps-resolver/lib/dedupeInjectedDeps.js
import path98 from "node:path";
function dedupeInjectedDeps(opts2) {
  const injectedDepsByProjects = getInjectedDepsByProjects(opts2);
  const dedupeMap = getDedupeMap(injectedDepsByProjects, opts2);
  applyDedupeMap(dedupeMap, opts2);
}
function getInjectedDepsByProjects(opts2) {
  const injectedDepsByProjects = /* @__PURE__ */ new Map();
  for (const project of opts2.projects) {
    for (const [alias, nodeId] of project.directNodeIdsByAlias.entries()) {
      const depPath = opts2.pathsByNodeId.get(nodeId);
      if (!opts2.depGraph[depPath].id.startsWith("file:"))
        continue;
      const id = opts2.depGraph[depPath].id.substring(5);
      if (opts2.workspaceProjectIds.has(id)) {
        if (!injectedDepsByProjects.has(project.id))
          injectedDepsByProjects.set(project.id, /* @__PURE__ */ new Map());
        injectedDepsByProjects.get(project.id).set(alias, { depPath, id });
      }
    }
  }
  return injectedDepsByProjects;
}
function getDedupeMap(injectedDepsByProjects, opts2) {
  const toDedupe = /* @__PURE__ */ new Map();
  for (const [id, deps] of injectedDepsByProjects.entries()) {
    const dedupedInjectedDeps = /* @__PURE__ */ new Map();
    for (const [alias, dep] of deps.entries()) {
      const children = Object.entries(opts2.depGraph[dep.depPath].children);
      const targetProjectDeps = opts2.dependenciesByProjectId[dep.id];
      if (!targetProjectDeps) {
        if (children.length > 0)
          continue;
      }
      const isSubset = children.every(([alias2, depPath]) => targetProjectDeps?.get(alias2) === depPath);
      if (isSubset) {
        dedupedInjectedDeps.set(alias, dep.id);
      }
    }
    toDedupe.set(id, dedupedInjectedDeps);
  }
  return toDedupe;
}
function applyDedupeMap(dedupeMap, opts2) {
  for (const [id, aliases] of dedupeMap.entries()) {
    for (const [alias, dedupedProjectId] of aliases.entries()) {
      opts2.dependenciesByProjectId[id].delete(alias);
      const index = opts2.resolvedImporters[id].directDependencies.findIndex((dep) => dep.alias === alias);
      const prev = opts2.resolvedImporters[id].directDependencies[index];
      const linkedDep = {
        ...prev,
        pkg: prev,
        isLinkedDependency: true,
        pkgId: `link:${(0, import_normalize_path7.default)(path98.relative(id, dedupedProjectId))}`,
        resolution: {
          type: "directory",
          directory: path98.join(opts2.lockfileDir, dedupedProjectId)
        }
      };
      opts2.resolvedImporters[id].directDependencies[index] = linkedDep;
      opts2.resolvedImporters[id].linkedDependencies.push(linkedDep);
    }
  }
}
var import_normalize_path7;
var init_dedupeInjectedDeps = __esm({
  "../installing/deps-resolver/lib/dedupeInjectedDeps.js"() {
    "use strict";
    import_normalize_path7 = __toESM(require_normalize_path(), 1);
  }
});

// ../installing/deps-resolver/lib/linkPathToPeerVersion.js
function linkPathToPeerVersion(relPath) {
  let i2 = 0;
  while (i2 < relPath.length && relPath[i2] === ".")
    i2++;
  let out = "";
  let lastWasPlus = true;
  for (; i2 < relPath.length; i2++) {
    const c3 = relPath.charCodeAt(i2);
    const replace = c3 < 32 || c3 === 34 || c3 === 42 || c3 === 43 || c3 === 47 || c3 === 58 || c3 === 60 || c3 === 62 || c3 === 63 || c3 === 92 || c3 === 124;
    if (replace) {
      if (!lastWasPlus) {
        out += "+";
        lastWasPlus = true;
      }
    } else {
      out += relPath[i2];
      lastWasPlus = false;
    }
  }
  let end = out.length;
  while (end > 0) {
    const ch = out.charCodeAt(end - 1);
    if (ch !== 43 && ch !== 46)
      break;
    end--;
  }
  if (end > 0)
    return out.slice(0, end);
  return relPath.length === 0 ? "" : "+";
}
var init_linkPathToPeerVersion = __esm({
  "../installing/deps-resolver/lib/linkPathToPeerVersion.js"() {
    "use strict";
  }
});

// ../installing/deps-resolver/lib/resolvePeers.js
import path99 from "node:path";
async function resolvePeers(opts2) {
  const depGraph = {};
  const pathsByNodeId = /* @__PURE__ */ new Map();
  const pathsByNodeIdPromises = /* @__PURE__ */ new Map();
  const depPathsByPkgId = /* @__PURE__ */ new Map();
  const _createPkgsByName = createPkgsByName.bind(null, opts2.dependenciesTree);
  const rootPkgsByName = opts2.resolvePeersFromWorkspaceRoot ? getRootPkgsByName(opts2.dependenciesTree, opts2.projects) : {};
  const peerDependencyIssuesByProjects = {};
  const finishingList = [];
  const peersCache = /* @__PURE__ */ new Map();
  const purePkgs = /* @__PURE__ */ new Set();
  for (const { directNodeIdsByAlias, topParents, rootDir, id } of opts2.projects) {
    const peerDependencyIssues = { bad: {}, missing: {} };
    const pkgsByName = Object.fromEntries(Object.entries({
      ...rootPkgsByName,
      ..._createPkgsByName({ directNodeIdsByAlias, topParents })
    }).filter(([peerName]) => opts2.allPeerDepNames.has(peerName)));
    for (const { nodeId } of Object.values(pkgsByName)) {
      if (nodeId && !pathsByNodeIdPromises.has(nodeId)) {
        pathsByNodeIdPromises.set(nodeId, pDefer());
      }
    }
    const { finishing } = await resolvePeersOfChildren(Object.fromEntries(directNodeIdsByAlias.entries()), pkgsByName, {
      allPeerDepNames: opts2.allPeerDepNames,
      parentPkgsOfNode: /* @__PURE__ */ new Map(),
      dependenciesTree: opts2.dependenciesTree,
      depGraph,
      lockfileDir: opts2.lockfileDir,
      parentNodeIds: [],
      parentDepPathsChain: [],
      pathsByNodeId,
      pathsByNodeIdPromises,
      depPathsByPkgId,
      peersCache,
      peerDependencyIssues,
      purePkgs,
      dedupePeers: opts2.dedupePeers,
      peersSuffixMaxLength: opts2.peersSuffixMaxLength,
      rootDir,
      virtualStoreDir: opts2.virtualStoreDir,
      virtualStoreDirMaxLength: opts2.virtualStoreDirMaxLength
    });
    if (finishing) {
      finishingList.push(finishing);
    }
    if (Object.keys(peerDependencyIssues.bad).length > 0 || Object.keys(peerDependencyIssues.missing).length > 0) {
      peerDependencyIssuesByProjects[id] = {
        ...peerDependencyIssues,
        ...mergePeers(peerDependencyIssues.missing)
      };
    }
  }
  await Promise.all(finishingList);
  const depGraphWithResolvedChildren = resolveChildren2(depGraph);
  function resolveChildren2(depGraph2) {
    for (const node of Object.values(depGraph2)) {
      node.children = {};
      for (const [alias, childNodeId] of Object.entries(node.childrenNodeIds)) {
        node.children[alias] = pathsByNodeId.get(childNodeId) ?? childNodeId;
      }
      delete node.childrenNodeIds;
    }
    return depGraph2;
  }
  const dependenciesByProjectId = {};
  for (const { directNodeIdsByAlias, id } of opts2.projects) {
    dependenciesByProjectId[id] = /* @__PURE__ */ new Map();
    for (const [alias, nodeId] of directNodeIdsByAlias.entries()) {
      dependenciesByProjectId[id].set(alias, pathsByNodeId.get(nodeId));
    }
  }
  if (opts2.dedupeInjectedDeps) {
    dedupeInjectedDeps({
      dependenciesByProjectId,
      projects: opts2.projects,
      depGraph: depGraphWithResolvedChildren,
      pathsByNodeId,
      lockfileDir: opts2.lockfileDir,
      resolvedImporters: opts2.resolvedImporters,
      workspaceProjectIds: opts2.workspaceProjectIds
    });
  }
  if (opts2.dedupePeerDependents) {
    const duplicates = Array.from(depPathsByPkgId.values()).filter((item) => item.size > 1);
    const allDepPathsMap = deduplicateAll(depGraphWithResolvedChildren, duplicates);
    for (const { id } of opts2.projects) {
      for (const [alias, depPath] of dependenciesByProjectId[id].entries()) {
        dependenciesByProjectId[id].set(alias, allDepPathsMap[depPath] ?? depPath);
      }
    }
  }
  return {
    dependenciesGraph: depGraphWithResolvedChildren,
    dependenciesByProjectId,
    peerDependencyIssuesByProjects
  };
}
function nodeDepsCount(node) {
  return Object.keys(node.children).length + node.resolvedPeerNames.size;
}
function deduplicateAll(depGraph, duplicates) {
  const { depPathsMap, remainingDuplicates } = deduplicateDepPaths(duplicates, depGraph);
  if (remainingDuplicates.length === duplicates.length) {
    return depPathsMap;
  }
  for (const node of Object.values(depGraph)) {
    for (const [alias, childDepPath] of Object.entries(node.children)) {
      if (depPathsMap[childDepPath]) {
        node.children[alias] = depPathsMap[childDepPath];
      }
    }
  }
  if (Object.keys(depPathsMap).length > 0) {
    return {
      ...depPathsMap,
      ...deduplicateAll(depGraph, remainingDuplicates)
    };
  }
  return depPathsMap;
}
function deduplicateDepPaths(duplicates, depGraph) {
  const depCountSorter = (depPath1, depPath2) => nodeDepsCount(depGraph[depPath1]) - nodeDepsCount(depGraph[depPath2]);
  const depPathsMap = {};
  const remainingDuplicates = [];
  for (const depPaths of duplicates) {
    const unresolvedDepPaths = new Set(depPaths.values());
    let currentDepPaths = [...depPaths].sort(depCountSorter);
    while (currentDepPaths.length) {
      const depPath1 = currentDepPaths.pop();
      const nextDepPaths = [];
      while (currentDepPaths.length) {
        const depPath2 = currentDepPaths.pop();
        if (isCompatibleAndHasMoreDeps(depGraph, depPath1, depPath2)) {
          depPathsMap[depPath2] = depPath1;
          unresolvedDepPaths.delete(depPath1);
          unresolvedDepPaths.delete(depPath2);
        } else {
          nextDepPaths.push(depPath2);
        }
      }
      nextDepPaths.push(...currentDepPaths);
      currentDepPaths = nextDepPaths.sort(depCountSorter);
    }
    if (unresolvedDepPaths.size) {
      remainingDuplicates.push(unresolvedDepPaths);
    }
  }
  return {
    depPathsMap,
    remainingDuplicates
  };
}
function isCompatibleAndHasMoreDeps(depGraph, depPath1, depPath2) {
  const node1 = depGraph[depPath1];
  const node2 = depGraph[depPath2];
  if (nodeDepsCount(node1) < nodeDepsCount(node2))
    return false;
  const node1DepPathsSet = new Set(Object.values(node1.children));
  const node2DepPaths = Object.values(node2.children);
  if (!node2DepPaths.every((depPath) => node1DepPathsSet.has(depPath)))
    return false;
  for (const depPath of node2.resolvedPeerNames) {
    if (!node1.resolvedPeerNames.has(depPath))
      return false;
  }
  return true;
}
function getRootPkgsByName(dependenciesTree, projects) {
  const rootProject = projects.length > 1 ? projects.find(({ id }) => id === ".") : null;
  return rootProject == null ? {} : createPkgsByName(dependenciesTree, rootProject);
}
function createPkgsByName(dependenciesTree, { directNodeIdsByAlias, topParents }) {
  const parentRefs = toPkgByName(Array.from(directNodeIdsByAlias.entries()).map(([alias, nodeId]) => ({
    alias,
    node: dependenciesTree.get(nodeId),
    nodeId,
    parentNodeIds: []
  })));
  const _updateParentRefs = updateParentRefs.bind(null, parentRefs);
  for (const { name, version: version2, alias, linkedDir } of topParents) {
    const pkg = {
      occurrence: 0,
      alias,
      depth: 0,
      version: version2,
      nodeId: linkedDir,
      parentNodeIds: []
    };
    _updateParentRefs(name, pkg);
    if (alias && alias !== name) {
      _updateParentRefs(alias, pkg);
    }
  }
  return parentRefs;
}
async function resolvePeersOfNode(currentAlias, nodeId, parentParentPkgs, ctx) {
  const node = ctx.dependenciesTree.get(nodeId);
  if (node.depth === -1)
    return { resolvedPeers: /* @__PURE__ */ new Map(), missingPeers: /* @__PURE__ */ new Map() };
  const resolvedPackage = node.resolvedPackage;
  if (ctx.purePkgs.has(resolvedPackage.pkgIdWithPatchHash) && ctx.depGraph[resolvedPackage.pkgIdWithPatchHash].depth <= node.depth && Object.keys(resolvedPackage.peerDependencies).length === 0) {
    ctx.pathsByNodeId.set(nodeId, resolvedPackage.pkgIdWithPatchHash);
    ctx.pathsByNodeIdPromises.get(nodeId).resolve(resolvedPackage.pkgIdWithPatchHash);
    return { resolvedPeers: /* @__PURE__ */ new Map(), missingPeers: /* @__PURE__ */ new Map() };
  }
  if (typeof node.children === "function") {
    node.children = node.children();
  }
  const parentNodeIds = [...ctx.parentNodeIds, nodeId];
  const children = node.children;
  let parentPkgs;
  if (Object.keys(children).length === 0) {
    parentPkgs = parentParentPkgs;
  } else {
    parentPkgs = { ...parentParentPkgs };
    const parentPkgNodes = [];
    for (const [alias, nodeId2] of Object.entries(children)) {
      if (ctx.allPeerDepNames.has(alias)) {
        parentPkgNodes.push({
          alias,
          node: ctx.dependenciesTree.get(nodeId2),
          nodeId: nodeId2,
          parentNodeIds
        });
      }
    }
    const newParentPkgs = toPkgByName(parentPkgNodes);
    const _parentPkgsMatch = parentPkgsMatch.bind(null, ctx.dependenciesTree);
    for (const [newParentPkgName, newParentPkg] of Object.entries(newParentPkgs)) {
      if (parentPkgs[newParentPkgName]) {
        if (!_parentPkgsMatch(parentPkgs[newParentPkgName], newParentPkg)) {
          newParentPkg.occurrence = parentPkgs[newParentPkgName].occurrence + 1;
          parentPkgs[newParentPkgName] = newParentPkg;
        }
      } else {
        parentPkgs[newParentPkgName] = newParentPkg;
      }
    }
  }
  const hit = findHit(ctx, parentPkgs, resolvedPackage.pkgIdWithPatchHash);
  if (hit != null) {
    for (const [peerName, { range: wantedRange, optional }] of hit.missingPeers.entries()) {
      if (ctx.peerDependencyIssues.missing[peerName] == null) {
        ctx.peerDependencyIssues.missing[peerName] = [];
      }
      const { parents } = getLocationFromParentNodeIds({
        dependenciesTree: ctx.dependenciesTree,
        parentNodeIds
      });
      ctx.peerDependencyIssues.missing[peerName].push({
        optional,
        parents,
        wantedRange
      });
    }
    return {
      missingPeers: hit.missingPeers,
      finishing: (async () => {
        const depPath = await hit.depPath.promise;
        ctx.pathsByNodeId.set(nodeId, depPath);
        ctx.depGraph[depPath].depth = Math.min(ctx.depGraph[depPath].depth, node.depth);
        ctx.pathsByNodeIdPromises.get(nodeId).resolve(depPath);
      })(),
      resolvedPeers: hit.resolvedPeers
    };
  }
  const { resolvedPeers: unknownResolvedPeersOfChildren, missingPeers: missingPeersOfChildren, finishing } = await resolvePeersOfChildren(children, parentPkgs, {
    ...ctx,
    parentNodeIds,
    parentDepPathsChain: ctx.parentDepPathsChain.includes(resolvedPackage.pkgIdWithPatchHash) ? ctx.parentDepPathsChain : [...ctx.parentDepPathsChain, resolvedPackage.pkgIdWithPatchHash]
  });
  const { resolvedPeers, missingPeers } = Object.keys(resolvedPackage.peerDependencies).length === 0 ? { resolvedPeers: /* @__PURE__ */ new Map(), missingPeers: /* @__PURE__ */ new Map() } : _resolvePeers({
    currentDepth: node.depth,
    dependenciesTree: ctx.dependenciesTree,
    lockfileDir: ctx.lockfileDir,
    nodeId,
    parentPkgs,
    peerDependencyIssues: ctx.peerDependencyIssues,
    resolvedPackage,
    rootDir: ctx.rootDir,
    parentNodeIds
  });
  const allResolvedPeers = unknownResolvedPeersOfChildren;
  for (const [k2, v] of resolvedPeers) {
    allResolvedPeers.set(k2, v);
  }
  allResolvedPeers.delete(node.resolvedPackage.name);
  const allMissingPeers = /* @__PURE__ */ new Map();
  for (const [peer, range] of missingPeersOfChildren.entries()) {
    allMissingPeers.set(peer, range);
  }
  for (const [peer, range] of missingPeers.entries()) {
    allMissingPeers.set(peer, range);
  }
  let cache;
  const isPure = allResolvedPeers.size === 0 && allMissingPeers.size === 0;
  if (isPure) {
    ctx.purePkgs.add(resolvedPackage.pkgIdWithPatchHash);
  } else {
    cache = {
      missingPeers: allMissingPeers,
      depPath: pDefer(),
      resolvedPeers: allResolvedPeers
    };
    if (ctx.peersCache.has(resolvedPackage.pkgIdWithPatchHash)) {
      ctx.peersCache.get(resolvedPackage.pkgIdWithPatchHash).push(cache);
    } else {
      ctx.peersCache.set(resolvedPackage.pkgIdWithPatchHash, [cache]);
    }
  }
  let calculateDepPathIfNeeded;
  if (allResolvedPeers.size === 0) {
    addDepPathToGraph(resolvedPackage.pkgIdWithPatchHash);
  } else {
    const peerIds = [];
    const pendingPeers = [];
    for (const [alias, peerNodeId] of allResolvedPeers.entries()) {
      const peerId = peerNodeIdToPeerId(alias, peerNodeId, ctx);
      if (peerId != null) {
        peerIds.push(peerId);
      } else {
        pendingPeers.push({ alias, nodeId: peerNodeId });
      }
    }
    if (pendingPeers.length === 0) {
      const peerDepGraphHash = createPeerDepGraphHash(peerIds, ctx.peersSuffixMaxLength);
      addDepPathToGraph(`${resolvedPackage.pkgIdWithPatchHash}${peerDepGraphHash}`);
    } else {
      calculateDepPathIfNeeded = calculateDepPath.bind(null, peerIds, pendingPeers);
    }
  }
  return {
    resolvedPeers: allResolvedPeers,
    missingPeers: allMissingPeers,
    calculateDepPath: calculateDepPathIfNeeded,
    finishing
  };
  async function calculateDepPath(peerIds, pendingPeerNodes, cycles) {
    const cyclicPeerAliases = /* @__PURE__ */ new Set();
    for (const cycle of cycles) {
      if (cycle.includes(currentAlias)) {
        for (const peerAlias of cycle) {
          cyclicPeerAliases.add(peerAlias);
        }
      }
    }
    const peerDepGraphHash = createPeerDepGraphHash([
      ...peerIds,
      ...await Promise.all(pendingPeerNodes.map(async (pendingPeer) => {
        if (cyclicPeerAliases.has(pendingPeer.alias)) {
          const { name, version: version2 } = ctx.dependenciesTree.get(pendingPeer.nodeId)?.resolvedPackage;
          const id = `${name}@${version2}`;
          ctx.pathsByNodeIdPromises.get(pendingPeer.nodeId)?.resolve(id);
          return id;
        }
        if (ctx.dedupePeers) {
          const peerNode = ctx.dependenciesTree.get(pendingPeer.nodeId);
          if (peerNode) {
            return { name: peerNode.resolvedPackage.name, version: peerNode.resolvedPackage.version };
          }
        }
        return ctx.pathsByNodeIdPromises.get(pendingPeer.nodeId).promise;
      }))
    ], ctx.peersSuffixMaxLength);
    addDepPathToGraph(`${resolvedPackage.pkgIdWithPatchHash}${peerDepGraphHash}`);
  }
  function addDepPathToGraph(depPath) {
    cache?.depPath.resolve(depPath);
    ctx.pathsByNodeId.set(nodeId, depPath);
    ctx.pathsByNodeIdPromises.get(nodeId).resolve(depPath);
    if (ctx.depPathsByPkgId != null) {
      if (!ctx.depPathsByPkgId.has(resolvedPackage.pkgIdWithPatchHash)) {
        ctx.depPathsByPkgId.set(resolvedPackage.pkgIdWithPatchHash, /* @__PURE__ */ new Set([depPath]));
      } else {
        ctx.depPathsByPkgId.get(resolvedPackage.pkgIdWithPatchHash).add(depPath);
      }
    }
    const peerDependencies = { ...resolvedPackage.peerDependencies };
    if (!ctx.depGraph[depPath] || ctx.depGraph[depPath].depth > node.depth) {
      const modules = path99.join(ctx.virtualStoreDir, depPathToFilename(depPath, ctx.virtualStoreDirMaxLength), "node_modules");
      const dir = path99.join(modules, resolvedPackage.name);
      const transitivePeerDependencies = /* @__PURE__ */ new Set();
      for (const unknownPeer of allResolvedPeers.keys()) {
        if (!peerDependencies[unknownPeer]) {
          transitivePeerDependencies.add(unknownPeer);
        }
      }
      for (const unknownPeer of missingPeersOfChildren.keys()) {
        if (!peerDependencies[unknownPeer]) {
          transitivePeerDependencies.add(unknownPeer);
        }
      }
      ctx.depGraph[depPath] = {
        ...node.resolvedPackage,
        childrenNodeIds: Object.assign(getPreviouslyResolvedChildren(ctx, node.resolvedPackage.pkgIdWithPatchHash), children, Object.fromEntries(resolvedPeers.entries())),
        depPath,
        depth: node.depth,
        dir,
        installable: node.installable,
        isPure,
        modules,
        peerDependencies,
        transitivePeerDependencies,
        resolvedPeerNames: new Set(allResolvedPeers.keys())
      };
    }
  }
}
function parentPkgsMatch(dependenciesTree, currentParentPkg, newParentPkg) {
  if (currentParentPkg.version !== newParentPkg.version || currentParentPkg.alias !== newParentPkg.alias) {
    return false;
  }
  const currentParentResolvedPkg = currentParentPkg.nodeId && dependenciesTree.get(currentParentPkg.nodeId)?.resolvedPackage;
  if (currentParentResolvedPkg == null)
    return true;
  const newParentResolvedPkg = newParentPkg.nodeId && dependenciesTree.get(newParentPkg.nodeId)?.resolvedPackage;
  if (newParentResolvedPkg == null)
    return true;
  return currentParentResolvedPkg.name === newParentResolvedPkg.name;
}
function findHit(ctx, parentPkgs, pkgIdWithPatchHash) {
  const cacheItems = ctx.peersCache.get(pkgIdWithPatchHash);
  if (!cacheItems)
    return void 0;
  return cacheItems.find((cache) => {
    for (const [name, cachedNodeId] of cache.resolvedPeers) {
      const parentPkgNodeId = parentPkgs[name]?.nodeId;
      if (Boolean(parentPkgNodeId) !== Boolean(cachedNodeId))
        return false;
      if (parentPkgNodeId === cachedNodeId)
        continue;
      if (!parentPkgNodeId)
        return false;
      if (ctx.pathsByNodeId.has(cachedNodeId) && ctx.pathsByNodeId.get(cachedNodeId) === ctx.pathsByNodeId.get(parentPkgNodeId))
        continue;
      if (!ctx.dependenciesTree.has(parentPkgNodeId) && typeof parentPkgNodeId === "string" && parentPkgNodeId.startsWith("link:")) {
        return false;
      }
      const parentPkgId = ctx.dependenciesTree.get(parentPkgNodeId).resolvedPackage.pkgIdWithPatchHash;
      const cachedPkgId = ctx.dependenciesTree.get(cachedNodeId).resolvedPackage.pkgIdWithPatchHash;
      if (parentPkgId !== cachedPkgId) {
        return false;
      }
      if (!ctx.purePkgs.has(parentPkgId) && !parentPackagesMatch(ctx, cachedNodeId, parentPkgNodeId)) {
        return false;
      }
    }
    for (const missingPeer of cache.missingPeers.keys()) {
      if (parentPkgs[missingPeer])
        return false;
    }
    return true;
  });
}
function parentPackagesMatch(ctx, cachedNodeId, checkedNodeId) {
  const cachedParentPkgs = ctx.parentPkgsOfNode.get(cachedNodeId);
  if (!cachedParentPkgs)
    return false;
  const checkedParentPkgs = ctx.parentPkgsOfNode.get(checkedNodeId);
  if (!checkedParentPkgs)
    return false;
  if (Object.keys(cachedParentPkgs).length !== Object.keys(checkedParentPkgs).length)
    return false;
  const maxDepth = Object.values(checkedParentPkgs).reduce((maxDepth2, { depth }) => Math.max(depth ?? 0, maxDepth2), 0);
  const peerDepsAreNotShadowed = parentPkgsHaveSingleOccurrence(cachedParentPkgs) && parentPkgsHaveSingleOccurrence(checkedParentPkgs);
  return Object.entries(cachedParentPkgs).every(([name, { version: version2, pkgIdWithPatchHash }]) => {
    if (checkedParentPkgs[name] == null)
      return false;
    if (version2 && checkedParentPkgs[name].version) {
      return version2 === checkedParentPkgs[name].version;
    }
    return pkgIdWithPatchHash != null && pkgIdWithPatchHash === checkedParentPkgs[name].pkgIdWithPatchHash && (peerDepsAreNotShadowed || // Peer dependencies that appear last we can consider valid.
    // If they do depend on other peer dependencies then they must be those that we will check further.
    checkedParentPkgs[name].depth === maxDepth || ctx.purePkgs.has(pkgIdWithPatchHash));
  });
}
function parentPkgsHaveSingleOccurrence(parentPkgs) {
  return Object.values(parentPkgs).every(({ occurrence }) => occurrence === 0 || occurrence == null);
}
function getPreviouslyResolvedChildren({ parentNodeIds, parentDepPathsChain, dependenciesTree }, currentDepPath) {
  const allChildren = {};
  if (!currentDepPath || !parentDepPathsChain.includes(currentDepPath))
    return allChildren;
  for (let i2 = parentNodeIds.length - 1; i2 >= 0; i2--) {
    const parentNode = dependenciesTree.get(parentNodeIds[i2]);
    if (parentNode.resolvedPackage.pkgIdWithPatchHash === currentDepPath) {
      if (typeof parentNode.children === "function") {
        parentNode.children = parentNode.children();
      }
      Object.assign(allChildren, parentNode.children);
    }
  }
  return allChildren;
}
async function resolvePeersOfChildren(children, parentPkgs, ctx) {
  const allResolvedPeers = /* @__PURE__ */ new Map();
  const allMissingPeers = /* @__PURE__ */ new Map();
  const [repeated, notRepeated] = partition_default(([alias]) => parentPkgs[alias] != null, Object.entries(children));
  const nodeIds = Array.from(new Set([...repeated, ...notRepeated].map(([, nodeId]) => nodeId)));
  const aliasByNodeId = Object.fromEntries(Object.entries(children).map(([alias, nodeId]) => [nodeId, alias]));
  for (const nodeId of nodeIds) {
    if (!ctx.pathsByNodeIdPromises.has(nodeId)) {
      ctx.pathsByNodeIdPromises.set(nodeId, pDefer());
    }
  }
  const calculateDepPaths = [];
  const graph = /* @__PURE__ */ new Map();
  const finishingList = [];
  const parentDepPaths = {};
  for (const [name, parentPkg] of Object.entries(parentPkgs)) {
    if (!ctx.allPeerDepNames.has(name))
      continue;
    if (parentPkg.nodeId && (typeof parentPkg.nodeId === "number" || !parentPkg.nodeId.startsWith("link:"))) {
      parentDepPaths[name] = {
        pkgIdWithPatchHash: ctx.dependenciesTree.get(parentPkg.nodeId).resolvedPackage.pkgIdWithPatchHash,
        depth: parentPkg.depth,
        occurrence: parentPkg.occurrence
      };
    } else {
      parentDepPaths[name] = { version: parentPkg.version };
    }
  }
  for (const childNodeId of nodeIds) {
    ctx.parentPkgsOfNode.set(childNodeId, parentDepPaths);
  }
  for (const childNodeId of nodeIds) {
    const currentAlias = aliasByNodeId[childNodeId];
    const { resolvedPeers, missingPeers, calculateDepPath, finishing: finishing2 } = await resolvePeersOfNode(currentAlias, childNodeId, parentPkgs, ctx);
    if (finishing2) {
      finishingList.push(finishing2);
    }
    if (calculateDepPath) {
      calculateDepPaths.push(calculateDepPath);
    }
    const edges = [];
    for (const [peerName, peerNodeId] of resolvedPeers) {
      allResolvedPeers.set(peerName, peerNodeId);
      edges.push(peerName);
    }
    addEdgesToGraph(currentAlias, edges);
    const node = ctx.dependenciesTree.get(childNodeId);
    if (currentAlias !== node.resolvedPackage.name) {
      addEdgesToGraph(node.resolvedPackage.name, edges);
    }
    for (const [missingPeer, range] of missingPeers.entries()) {
      allMissingPeers.set(missingPeer, range);
    }
  }
  function addEdgesToGraph(pkgName, edges) {
    const existingEdges = graph.get(pkgName);
    if (existingEdges == null) {
      graph.set(pkgName, edges);
    } else {
      existingEdges.push(...edges);
    }
  }
  if (calculateDepPaths.length) {
    const { cycles } = analyzeGraph(Array.from(graph.entries()));
    finishingList.push(...calculateDepPaths.map((calculateDepPath) => calculateDepPath(cycles)));
  }
  const finishing = Promise.all(finishingList).then(() => {
  });
  const unknownResolvedPeersOfChildren = /* @__PURE__ */ new Map();
  for (const [alias, v] of allResolvedPeers) {
    if (!children[alias]) {
      unknownResolvedPeersOfChildren.set(alias, v);
    }
  }
  return { resolvedPeers: unknownResolvedPeersOfChildren, missingPeers: allMissingPeers, finishing };
}
function _resolvePeers(ctx) {
  const resolvedPeers = /* @__PURE__ */ new Map();
  const missingPeers = /* @__PURE__ */ new Map();
  for (const [peerName, { version: version2, optional }] of Object.entries(ctx.resolvedPackage.peerDependencies)) {
    const peerVersionRange = version2.replace(/^workspace:/, "");
    const resolved = ctx.parentPkgs[peerName];
    const optionalPeer = optional === true;
    if (!resolved) {
      missingPeers.set(peerName, { range: version2, optional: optionalPeer });
      const location = getLocationFromParentNodeIds(ctx);
      if (!ctx.peerDependencyIssues.missing[peerName]) {
        ctx.peerDependencyIssues.missing[peerName] = [];
      }
      ctx.peerDependencyIssues.missing[peerName].push({
        parents: location.parents,
        optional: optionalPeer,
        wantedRange: peerVersionRange
      });
      continue;
    }
    if (!semverUtils.satisfiesWithPrereleases(resolved.version, peerVersionRange, true)) {
      const location = getLocationFromParentNodeIds(ctx);
      if (!ctx.peerDependencyIssues.bad[peerName]) {
        ctx.peerDependencyIssues.bad[peerName] = [];
      }
      const peerLocation = resolved.nodeId == null ? [] : getLocationFromParentNodeIds({
        dependenciesTree: ctx.dependenciesTree,
        parentNodeIds: resolved.parentNodeIds
      }).parents;
      ctx.peerDependencyIssues.bad[peerName].push({
        foundVersion: resolved.version,
        resolvedFrom: peerLocation,
        parents: location.parents,
        optional: optionalPeer,
        wantedRange: peerVersionRange
      });
    }
    if (resolved?.nodeId)
      resolvedPeers.set(peerName, resolved.nodeId);
  }
  return { resolvedPeers, missingPeers };
}
function getLocationFromParentNodeIds({ dependenciesTree, parentNodeIds }) {
  const parents = parentNodeIds.map((nid) => pick_default(["name", "version"], dependenciesTree.get(nid).resolvedPackage));
  return {
    projectId: ".",
    parents
  };
}
function peerNodeIdToPeerId(alias, peerNodeId, ctx) {
  if (typeof peerNodeId === "string" && peerNodeId.startsWith("link:")) {
    return {
      name: alias,
      version: linkPathToPeerVersion(peerNodeId.slice(5))
    };
  }
  if (ctx.dedupePeers) {
    const peerNode = ctx.dependenciesTree.get(peerNodeId);
    if (peerNode) {
      return { name: peerNode.resolvedPackage.name, version: peerNode.resolvedPackage.version };
    }
  }
  return ctx.pathsByNodeId.get(peerNodeId);
}
function toPkgByName(nodes) {
  const pkgsByName = {};
  const _updateParentRefs = updateParentRefs.bind(null, pkgsByName);
  for (const { alias, node, nodeId, parentNodeIds } of nodes) {
    const pkg = {
      alias,
      depth: node.depth,
      nodeId,
      version: node.resolvedPackage.version,
      occurrence: 0,
      parentNodeIds
    };
    _updateParentRefs(alias, pkg);
    if (alias !== node.resolvedPackage.name) {
      _updateParentRefs(node.resolvedPackage.name, pkg);
    }
  }
  return pkgsByName;
}
function updateParentRefs(parentRefs, newAlias, pkg) {
  const existing = parentRefs[newAlias];
  if (existing) {
    const existingHasAlias = existing.alias != null && existing.alias !== newAlias;
    if (!existingHasAlias)
      return;
    const newHasAlias = pkg.alias != null && pkg.alias !== newAlias;
    if (newHasAlias && import_semver33.default.gte(existing.version, pkg.version))
      return;
  }
  parentRefs[newAlias] = pkg;
}
var semverUtils, import_semver33;
var init_resolvePeers = __esm({
  "../installing/deps-resolver/lib/resolvePeers.js"() {
    "use strict";
    init_lib65();
    semverUtils = __toESM(require_semverUtils(), 1);
    init_dist9();
    init_p_defer();
    init_es();
    import_semver33 = __toESM(require_semver2(), 1);
    init_dedupeInjectedDeps();
    init_linkPathToPeerVersion();
    init_mergePeers();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/resolve-link-target/3.0.0/63776cb8be27067aa98a4b4c16d9067c7b08f7d7882ff72f496488f6d01e9296/node_modules/resolve-link-target/index.js
import fs58 from "node:fs";
import path100 from "node:path";
async function resolveLinkTarget(linkPath) {
  linkPath = path100.resolve(linkPath);
  const target2 = await fs58.promises.readlink(linkPath);
  return _resolveLink(linkPath, target2);
}
function _resolveLink(dest, target2) {
  if (path100.isAbsolute(target2)) {
    return path100.resolve(target2);
  }
  return path100.join(path100.dirname(dest), target2);
}
var init_resolve_link_target = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/resolve-link-target/3.0.0/63776cb8be27067aa98a4b4c16d9067c7b08f7d7882ff72f496488f6d01e9296/node_modules/resolve-link-target/index.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/is-inner-link/5.0.0/72b7eb44d56e1666d7ca026d99a5fb2fb1b7840dde1a66e0e9ee7e333683e310/node_modules/is-inner-link/index.js
import path101 from "node:path";
async function isInnerLink(parent, relativePathToLink) {
  const linkPath = path101.resolve(parent, relativePathToLink);
  const target2 = await resolveLinkTarget(linkPath);
  return {
    isInner: isSubdir(parent, target2),
    target: target2
  };
}
var init_is_inner_link = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/is-inner-link/5.0.0/72b7eb44d56e1666d7ca026d99a5fb2fb1b7840dde1a66e0e9ee7e333683e310/node_modules/is-inner-link/index.js"() {
    init_is_subdir();
    init_resolve_link_target();
  }
});

// ../installing/deps-resolver/lib/safeIsInnerLink.js
import path102 from "node:path";
async function safeIsInnerLink(projectModulesDir, depName, opts2) {
  try {
    const link2 = await isInnerLink(projectModulesDir, depName);
    if (link2.isInner)
      return true;
    if (isSubdir(opts2.virtualStoreDir, link2.target) || opts2.globalVirtualStoreDir !== opts2.virtualStoreDir && isSubdir(opts2.globalVirtualStoreDir, link2.target)) {
      return true;
    }
    return link2.target;
  } catch (err) {
    if (err.code === "ENOENT")
      return true;
    if (opts2.hideAlienModules) {
      logger.warn({
        message: `Moving ${depName} that was installed by a different package manager to "node_modules/.ignored"`,
        prefix: opts2.projectDir
      });
      const ignoredDir = path102.join(projectModulesDir, ".ignored", depName);
      await renameOverwrite(path102.join(projectModulesDir, depName), ignoredDir);
    }
    return true;
  }
}
var init_safeIsInnerLink = __esm({
  "../installing/deps-resolver/lib/safeIsInnerLink.js"() {
    "use strict";
    init_lib3();
    init_is_inner_link();
    init_is_subdir();
    init_rename_overwrite();
  }
});

// ../installing/deps-resolver/lib/validatePeerDependencies.js
function validatePeerDependencies(project) {
  const { name, peerDependencies } = project.manifest;
  const projectId = name ?? project.rootDir;
  for (const depName in peerDependencies) {
    const version2 = peerDependencies[depName];
    if (!isValidPeerRange(version2)) {
      throw new PnpmError("INVALID_PEER_DEPENDENCY_SPECIFICATION", `The peerDependencies field named '${depName}' of package '${projectId}' has an invalid value: '${version2}'`, {
        hint: "The values in peerDependencies should be either a valid semver range, a `workspace:` spec, or a `catalog:` spec"
      });
    }
  }
}
var init_validatePeerDependencies = __esm({
  "../installing/deps-resolver/lib/validatePeerDependencies.js"() {
    "use strict";
    init_lib7();
    init_lib2();
  }
});

// ../installing/deps-resolver/lib/toResolveImporter.js
async function toResolveImporter(opts2, project) {
  validatePeerDependencies(project);
  const allDeps = getWantedDependencies(project.manifest);
  const nonLinkedDependencies = await partitionLinkedPackages(allDeps, {
    lockfileOnly: opts2.lockfileOnly,
    modulesDir: project.modulesDir,
    projectDir: project.rootDir,
    virtualStoreDir: opts2.virtualStoreDir,
    globalVirtualStoreDir: opts2.globalVirtualStoreDir,
    workspacePackages: opts2.workspacePackages
  });
  const defaultUpdateDepth = project.update === true || project.updateMatching != null ? opts2.defaultUpdateDepth : -1;
  const existingDeps = nonLinkedDependencies.filter(({ alias }) => !project.wantedDependencies.some((wantedDep) => wantedDep.alias === alias));
  if (opts2.updateToLatest && opts2.noDependencySelectors) {
    for (const dep of existingDeps) {
      dep.updateSpec = true;
    }
  }
  let wantedDependencies;
  if (!project.manifest) {
    wantedDependencies = [
      ...project.wantedDependencies,
      ...existingDeps
    ].map((dep) => ({
      ...dep,
      updateDepth: defaultUpdateDepth
    }));
  } else {
    const updateLocalTarballs = (dep) => ({
      ...dep,
      updateDepth: project.updateMatching != null ? defaultUpdateDepth : prefIsLocalTarball(dep.bareSpecifier) ? 0 : defaultUpdateDepth
    });
    wantedDependencies = [
      ...project.wantedDependencies.map(defaultUpdateDepth < 0 ? updateLocalTarballs : (dep) => ({ ...dep, updateDepth: defaultUpdateDepth })),
      ...existingDeps.map(opts2.noDependencySelectors && project.updateMatching != null ? updateLocalTarballs : (dep) => ({ ...dep, updateDepth: -1 }))
    ];
  }
  return {
    ...project,
    hasRemovedDependencies: Boolean(project.removePackages?.length),
    preferredVersions: opts2.preferredVersions ?? (project.manifest && getPreferredVersionsFromPackage(project.manifest)) ?? {},
    wantedDependencies
  };
}
function prefIsLocalTarball(bareSpecifier) {
  return bareSpecifier.startsWith("file:") && bareSpecifier.endsWith(".tgz");
}
async function partitionLinkedPackages(dependencies, opts2) {
  const nonLinkedDependencies = [];
  const linkedAliases = /* @__PURE__ */ new Set();
  await Promise.all(dependencies.map(async (dependency) => {
    if (!dependency.alias || opts2.workspacePackages?.get(dependency.alias) != null || dependency.bareSpecifier.startsWith("workspace:")) {
      nonLinkedDependencies.push(dependency);
      return;
    }
    const isInnerLink2 = await safeIsInnerLink(opts2.modulesDir, dependency.alias, {
      hideAlienModules: !opts2.lockfileOnly,
      projectDir: opts2.projectDir,
      virtualStoreDir: opts2.virtualStoreDir,
      globalVirtualStoreDir: opts2.globalVirtualStoreDir
    });
    if (isInnerLink2 === true) {
      nonLinkedDependencies.push(dependency);
      return;
    }
    if (!dependency.bareSpecifier.startsWith("link:")) {
      logger.info({
        message: `${dependency.alias} is linked to ${opts2.modulesDir} from ${isInnerLink2}`,
        prefix: opts2.projectDir
      });
    }
    linkedAliases.add(dependency.alias);
  }));
  return nonLinkedDependencies;
}
function getPreferredVersionsFromPackage(pkg) {
  return getVersionSpecsByRealNames(getAllDependenciesFromManifest2(pkg));
}
function getVersionSpecsByRealNames(deps) {
  const acc = {};
  for (const depName in deps) {
    const currentBareSpecifier = deps[depName];
    const { pkgName, bareSpecifier } = unwrapPackageName(depName, currentBareSpecifier);
    if (bareSpecifier.includes(":")) {
      continue;
    }
    const selector = (0, import_version_selector_type5.default)(bareSpecifier);
    if (selector != null) {
      acc[pkgName] = acc[pkgName] || {};
      acc[pkgName][selector.normalized] = selector.type;
    }
  }
  return acc;
}
var import_version_selector_type5;
var init_toResolveImporter = __esm({
  "../installing/deps-resolver/lib/toResolveImporter.js"() {
    "use strict";
    init_lib3();
    init_lib9();
    import_version_selector_type5 = __toESM(require_version_selector_type(), 1);
    init_getWantedDependencies();
    init_safeIsInnerLink();
    init_unwrapPackageName();
    init_validatePeerDependencies();
  }
});

// ../lockfile/pruner/lib/index.js
function pruneSharedLockfile(lockfile, opts2) {
  const copiedPackages = lockfile.packages == null ? {} : copyPackageSnapshots(lockfile.packages, {
    devDepPaths: unnest_default(Object.values(lockfile.importers).map((deps) => resolvedDepsToDepPaths(deps.devDependencies ?? {}))),
    optionalDepPaths: unnest_default(Object.values(lockfile.importers).map((deps) => resolvedDepsToDepPaths(deps.optionalDependencies ?? {}))),
    prodDepPaths: unnest_default(Object.values(lockfile.importers).map((deps) => resolvedDepsToDepPaths(deps.dependencies ?? {}))),
    warn: opts2?.warn ?? ((_msg) => void 0),
    dependenciesGraph: opts2?.dependenciesGraph
  });
  const prunedLockfile = {
    ...lockfile,
    packages: copiedPackages
  };
  if (isEmpty_default(prunedLockfile.packages)) {
    delete prunedLockfile.packages;
  }
  return prunedLockfile;
}
function copyPackageSnapshots(originalPackages, opts2) {
  const copiedSnapshots = {};
  const ctx = {
    copiedSnapshots,
    nonOptional: /* @__PURE__ */ new Set(),
    originalPackages,
    walked: /* @__PURE__ */ new Set(),
    warn: opts2.warn,
    dependenciesGraph: opts2.dependenciesGraph
  };
  copyDependencySubGraph(ctx, opts2.devDepPaths, {
    optional: false
  });
  copyDependencySubGraph(ctx, opts2.optionalDepPaths, {
    optional: true
  });
  copyDependencySubGraph(ctx, opts2.prodDepPaths, {
    optional: false
  });
  return copiedSnapshots;
}
function resolvedDepsToDepPaths(deps) {
  return Object.entries(deps).map(([alias, ref]) => refToRelative(ref, alias)).filter((depPath) => depPath !== null);
}
function copyDependencySubGraph(ctx, depPaths, opts2) {
  for (const depPath of depPaths) {
    const key = `${depPath}:${opts2.optional.toString()}`;
    if (ctx.walked.has(key))
      continue;
    ctx.walked.add(key);
    if (!ctx.originalPackages[depPath]) {
      if (depPath.startsWith("link:") || depPath.startsWith("file:") && !depPath.endsWith(".tar.gz"))
        continue;
      ctx.warn(`Cannot find resolution of ${depPath} in lockfile`);
      continue;
    }
    const depLockfile = ctx.originalPackages[depPath];
    ctx.copiedSnapshots[depPath] = depLockfile;
    if (opts2.optional && !ctx.nonOptional.has(depPath)) {
      depLockfile.optional = true;
      if (ctx.dependenciesGraph?.[depPath]) {
        ctx.dependenciesGraph[depPath].optional = true;
      }
    } else {
      ctx.nonOptional.add(depPath);
      delete depLockfile.optional;
      if (ctx.dependenciesGraph?.[depPath]) {
        ctx.dependenciesGraph[depPath].optional = false;
      }
    }
    const newDependencies = resolvedDepsToDepPaths(depLockfile.dependencies ?? {});
    copyDependencySubGraph(ctx, newDependencies, opts2);
    const newOptionalDependencies = resolvedDepsToDepPaths(depLockfile.optionalDependencies ?? {});
    copyDependencySubGraph(ctx, newOptionalDependencies, { optional: true });
  }
}
var init_lib107 = __esm({
  "../lockfile/pruner/lib/index.js"() {
    "use strict";
    init_lib();
    init_lib65();
    init_es();
    init_lib69();
  }
});

// ../installing/deps-resolver/lib/updateLockfile.js
function updateLockfile({ dependenciesGraph, lockfile, prefix, registries, lockfileIncludeTarballUrl }) {
  lockfile.packages = lockfile.packages ?? {};
  for (const [depPath, depNode] of Object.entries(dependenciesGraph)) {
    const [updatedOptionalDeps, updatedDeps] = partition_default((child) => depNode.optionalDependencies.has(child.alias) || depNode.peerDependencies[child.alias]?.optional === true, Object.entries(depNode.children).map(([alias, depPath2]) => ({ alias, depPath: depPath2 })));
    lockfile.packages[depPath] = toLockfileDependency(depNode, {
      depGraph: dependenciesGraph,
      depPath,
      prevSnapshot: lockfile.packages[depPath],
      registries,
      registry: getRegistryByPackageName(registries, depNode.name),
      updatedDeps,
      updatedOptionalDeps,
      lockfileIncludeTarballUrl
    });
  }
  const warn = (message) => {
    logger.warn({ message, prefix });
  };
  return pruneSharedLockfile(lockfile, { warn, dependenciesGraph });
}
function toLockfileDependency(pkg, opts2) {
  const lockfileResolution = toLockfileResolution({ name: pkg.name, version: pkg.version }, pkg.resolution, opts2.registry, opts2.lockfileIncludeTarballUrl);
  const newResolvedDeps = updateResolvedDeps(opts2.updatedDeps, opts2.depGraph);
  const newResolvedOptionalDeps = updateResolvedDeps(opts2.updatedOptionalDeps, opts2.depGraph);
  const result2 = {
    resolution: lockfileResolution
  };
  if (opts2.depPath.includes(":")) {
    if (pkg.version && (!("type" in lockfileResolution) || lockfileResolution.type !== "directory")) {
      result2["version"] = pkg.version;
    }
  }
  if (Object.keys(newResolvedDeps).length > 0) {
    result2["dependencies"] = newResolvedDeps;
  }
  if (Object.keys(newResolvedOptionalDeps).length > 0) {
    result2["optionalDependencies"] = newResolvedOptionalDeps;
  }
  if (pkg.optional) {
    result2["optional"] = true;
  }
  if (pkg.transitivePeerDependencies.size) {
    result2["transitivePeerDependencies"] = Array.from(pkg.transitivePeerDependencies).sort();
  }
  if (Object.keys(pkg.peerDependencies ?? {}).length > 0) {
    const peerPkgs = {};
    const normalizedPeerDependenciesMeta = {};
    for (const [peer, { version: version2, optional }] of Object.entries(pkg.peerDependencies)) {
      peerPkgs[peer] = version2;
      if (optional) {
        normalizedPeerDependenciesMeta[peer] = { optional: true };
      }
    }
    result2["peerDependencies"] = peerPkgs;
    if (Object.keys(normalizedPeerDependenciesMeta).length > 0) {
      result2["peerDependenciesMeta"] = normalizedPeerDependenciesMeta;
    }
  }
  if (pkg.additionalInfo.engines != null) {
    for (const [engine, version2] of Object.entries(pkg.additionalInfo.engines)) {
      if (version2 === "*")
        continue;
      result2.engines = result2.engines ?? {};
      result2.engines[engine] = version2;
    }
  }
  if (pkg.additionalInfo.cpu != null) {
    result2["cpu"] = pkg.additionalInfo.cpu;
  }
  if (pkg.additionalInfo.os != null) {
    result2["os"] = pkg.additionalInfo.os;
  }
  if (pkg.additionalInfo.libc != null) {
    result2["libc"] = pkg.additionalInfo.libc;
  }
  if (Array.isArray(pkg.additionalInfo.bundledDependencies) || pkg.additionalInfo.bundledDependencies === true) {
    result2["bundledDependencies"] = pkg.additionalInfo.bundledDependencies;
  } else if (Array.isArray(pkg.additionalInfo.bundleDependencies) || pkg.additionalInfo.bundleDependencies === true) {
    result2["bundledDependencies"] = pkg.additionalInfo.bundleDependencies;
  }
  if (pkg.additionalInfo.deprecated) {
    result2["deprecated"] = pkg.additionalInfo.deprecated;
  }
  if (pkg.hasBin) {
    result2["hasBin"] = true;
  }
  if (pkg.patch) {
    result2["patched"] = true;
  }
  return result2;
}
function updateResolvedDeps(updatedDeps, depGraph) {
  return Object.fromEntries(updatedDeps.map(({ alias, depPath }) => {
    if (depPath.startsWith("link:")) {
      return [alias, depPath];
    }
    const depNode = depGraph[depPath];
    return [
      alias,
      depPathToRef(depPath, {
        alias,
        realName: depNode.name
      })
    ];
  }));
}
var init_updateLockfile = __esm({
  "../installing/deps-resolver/lib/updateLockfile.js"() {
    "use strict";
    init_lib65();
    init_lib107();
    init_lib70();
    init_lib3();
    init_es();
    init_depPathToRef();
  }
});

// ../installing/deps-resolver/lib/updateProjectManifest.js
async function updateProjectManifest(importer, opts2) {
  if (!importer.manifest) {
    throw new Error("Cannot save because no package.json found");
  }
  const specsToUpsert = opts2.directDependencies.filter((rdd, index) => importer.wantedDependencies[index]?.updateSpec).map((rdd, index) => {
    const wantedDep = importer.wantedDependencies[index];
    return {
      alias: rdd.alias,
      peer: importer.peer,
      bareSpecifier: rdd.catalogLookup?.userSpecifiedBareSpecifier ?? rdd.normalizedBareSpecifier ?? wantedDep.bareSpecifier,
      resolvedVersion: rdd.version,
      pinnedVersion: importer.pinnedVersion,
      saveType: importer.targetDependenciesField
    };
  });
  for (const pkgToInstall of importer.wantedDependencies) {
    if (pkgToInstall.updateSpec && pkgToInstall.alias && !specsToUpsert.some(({ alias }) => alias === pkgToInstall.alias)) {
      specsToUpsert.push({
        alias: pkgToInstall.alias,
        peer: importer.peer,
        saveType: importer.targetDependenciesField
      });
    }
  }
  const hookedManifest = await updateProjectManifestObject(importer.rootDir, importer.manifest, specsToUpsert);
  const originalManifest = importer.originalManifest != null ? await updateProjectManifestObject(importer.rootDir, importer.originalManifest, specsToUpsert) : void 0;
  return [hookedManifest, originalManifest];
}
var init_updateProjectManifest = __esm({
  "../installing/deps-resolver/lib/updateProjectManifest.js"() {
    "use strict";
    init_lib9();
  }
});

// ../installing/deps-resolver/lib/index.js
import path103 from "node:path";
async function resolveDependencies2(importers, opts2) {
  const _toResolveImporter = toResolveImporter.bind(null, {
    defaultUpdateDepth: opts2.defaultUpdateDepth,
    lockfileOnly: opts2.dryRun,
    preferredVersions: opts2.preferredVersions,
    virtualStoreDir: opts2.virtualStoreDir,
    globalVirtualStoreDir: opts2.globalVirtualStoreDir,
    workspacePackages: opts2.workspacePackages,
    noDependencySelectors: importers.every(({ wantedDependencies }) => wantedDependencies.length === 0)
  });
  const projectsToResolve = await Promise.all(importers.map(async (project) => _toResolveImporter(project)));
  const { dependenciesTree, outdatedDependencies, resolvedImporters, resolvedPkgsById, wantedToBeSkippedPackageIds, appliedPatches, time, allPeerDepNames, resolutionPolicyViolations } = await resolveDependencyTree(projectsToResolve, opts2);
  if (resolutionPolicyViolations.length > 0) {
    if (!opts2.handleResolutionPolicyViolations) {
      throw new PnpmError("RESOLUTION_POLICY_VIOLATIONS_UNHANDLED", `${resolutionPolicyViolations.length} resolution-policy ${resolutionPolicyViolations.length === 1 ? "violation was" : "violations were"} produced but no handleResolutionPolicyViolations callback was wired to react to them.`, {
        hint: "Internal: resolveDependencies needs a handleResolutionPolicyViolations callback whenever a policy that can produce violations (today: minimumReleaseAge) is active. Wire setupPolicyHandlers (in @pnpm/installing.commands) or supply a callback directly."
      });
    }
    await opts2.handleResolutionPolicyViolations(resolutionPolicyViolations);
  }
  opts2.storeController.clearResolutionCache();
  if (opts2.patchedDependencies && (opts2.forceFullResolution || !Object.keys(opts2.wantedLockfile.packages ?? {})?.length) && Object.keys(opts2.wantedLockfile.importers).length === importers.length) {
    verifyPatches({
      patchedDependencies: opts2.patchedDependencies,
      appliedPatches,
      allowUnusedPatches: opts2.allowUnusedPatches
    });
  }
  const projectsToLink = await Promise.all(projectsToResolve.map(async (project) => {
    const resolvedImporter = resolvedImporters[project.id];
    const topParents = project.manifest ? await getTopParents(difference_default(Object.keys(getAllDependenciesFromManifest2(project.manifest)), resolvedImporter.directDependencies.map(({ alias }) => alias) || []), project.modulesDir) : [];
    for (const linkedDependency of resolvedImporter.linkedDependencies) {
      const target2 = !opts2.excludeLinksFromLockfile || isSubdir(opts2.lockfileDir, linkedDependency.resolution.directory) ? linkedDependency.resolution.directory : path103.join(project.modulesDir, linkedDependency.alias);
      const linkedDir = createNodeIdForLinkedLocalPkg(opts2.lockfileDir, target2);
      topParents.push({
        name: linkedDependency.alias,
        version: linkedDependency.version,
        linkedDir
      });
    }
    return {
      binsDir: project.binsDir,
      directNodeIdsByAlias: resolvedImporter.directNodeIdsByAlias,
      id: project.id,
      linkedDependencies: resolvedImporter.linkedDependencies,
      manifest: project.manifest,
      modulesDir: project.modulesDir,
      rootDir: project.rootDir,
      topParents
    };
  }));
  const { dependenciesGraph, dependenciesByProjectId, peerDependencyIssuesByProjects } = await resolvePeers({
    allPeerDepNames,
    dependenciesTree,
    dedupePeerDependents: opts2.dedupePeerDependents,
    dedupePeers: opts2.dedupePeers,
    dedupeInjectedDeps: opts2.dedupeInjectedDeps,
    lockfileDir: opts2.lockfileDir,
    projects: projectsToLink,
    virtualStoreDir: opts2.virtualStoreDir,
    virtualStoreDirMaxLength: opts2.virtualStoreDirMaxLength,
    resolvePeersFromWorkspaceRoot: Boolean(opts2.resolvePeersFromWorkspaceRoot),
    resolvedImporters,
    peersSuffixMaxLength: opts2.peersSuffixMaxLength,
    workspaceProjectIds: /* @__PURE__ */ new Set([...opts2.allProjectIds, ...Object.keys(opts2.wantedLockfile.importers)])
  });
  const linkedDependenciesByProjectId = {};
  await Promise.all(projectsToResolve.map(async (project, index) => {
    const resolvedImporter = resolvedImporters[project.id];
    linkedDependenciesByProjectId[project.id] = resolvedImporter.linkedDependencies;
    let updatedManifest;
    let updatedOriginalManifest;
    if (project.updatePackageManifest) {
      [updatedManifest, updatedOriginalManifest] = await updateProjectManifest(project, {
        directDependencies: resolvedImporter.directDependencies,
        preserveWorkspaceProtocol: opts2.preserveWorkspaceProtocol,
        saveWorkspaceProtocol: opts2.saveWorkspaceProtocol
      });
    } else {
      updatedManifest = project.manifest;
      updatedOriginalManifest = project.originalManifest;
      packageManifestLogger.debug({
        prefix: project.rootDir,
        updated: project.manifest
      });
    }
    if (updatedManifest != null) {
      if (opts2.autoInstallPeers) {
        if (updatedManifest.peerDependencies) {
          const allDeps = getAllDependenciesFromManifest2(updatedManifest);
          for (const [peerName, peerRange] of Object.entries(updatedManifest.peerDependencies)) {
            if (allDeps[peerName])
              continue;
            updatedManifest.dependencies ??= {};
            updatedManifest.dependencies[peerName] = peerRange;
          }
        }
      }
      const projectSnapshot = opts2.wantedLockfile.importers[project.id];
      opts2.wantedLockfile.importers[project.id] = addDirectDependenciesToLockfile(updatedManifest, projectSnapshot, resolvedImporter.linkedDependencies, resolvedImporter.directDependencies, opts2.excludeLinksFromLockfile);
    }
    importers[index].manifest = updatedOriginalManifest ?? project.originalManifest ?? project.manifest;
    for (const [alias, depPath] of dependenciesByProjectId[project.id].entries()) {
      const projectSnapshot = opts2.wantedLockfile.importers[project.id];
      if (project.manifest.dependenciesMeta != null) {
        projectSnapshot.dependenciesMeta = project.manifest.dependenciesMeta;
      }
      const depNode = dependenciesGraph[depPath];
      const ref = depPathToRef(depPath, {
        alias,
        realName: depNode.name
      });
      if (projectSnapshot.dependencies?.[alias]) {
        projectSnapshot.dependencies[alias] = ref;
      } else if (projectSnapshot.devDependencies?.[alias]) {
        projectSnapshot.devDependencies[alias] = ref;
      } else if (projectSnapshot.optionalDependencies?.[alias]) {
        projectSnapshot.optionalDependencies[alias] = ref;
      }
    }
  }));
  let updatedCatalogs;
  for (const project of projectsToResolve) {
    if (!project.updatePackageManifest)
      continue;
    const resolvedImporter = resolvedImporters[project.id];
    for (let i2 = 0; i2 < resolvedImporter.directDependencies.length; i2++) {
      const updateSpec = project.wantedDependencies[i2]?.updateSpec ?? false;
      if (!updateSpec)
        continue;
      const dep = resolvedImporter.directDependencies[i2];
      if (dep.catalogLookup == null)
        continue;
      if (dep.normalizedBareSpecifier == null)
        continue;
      updatedCatalogs ??= {};
      updatedCatalogs[dep.catalogLookup.catalogName] ??= {};
      updatedCatalogs[dep.catalogLookup.catalogName][dep.alias] = dep.normalizedBareSpecifier;
    }
  }
  if (opts2.dedupeDirectDeps) {
    const rootDeps = dependenciesByProjectId["."];
    if (rootDeps) {
      for (const [id, deps] of Object.entries(dependenciesByProjectId)) {
        if (id === ".")
          continue;
        for (const [alias, depPath] of deps.entries()) {
          if (depPath === rootDeps.get(alias)) {
            deps.delete(alias);
          }
        }
      }
    }
  }
  const newLockfile = updateLockfile({
    dependenciesGraph,
    lockfile: opts2.wantedLockfile,
    prefix: opts2.virtualStoreDir,
    registries: opts2.registries,
    lockfileIncludeTarballUrl: opts2.lockfileIncludeTarballUrl
  });
  if (time) {
    newLockfile.time = {
      ...opts2.wantedLockfile.time,
      ...time
    };
  }
  newLockfile.catalogs = getCatalogSnapshots(Object.values(resolvedImporters).flatMap(({ directDependencies }) => directDependencies), updatedCatalogs);
  async function waitTillAllFetchingsFinish() {
    await Promise.all(Object.values(resolvedPkgsById).map(async ({ fetching }) => {
      try {
        await fetching?.();
      } catch {
      }
    }));
  }
  return {
    dependenciesByProjectId,
    dependenciesGraph: extendGraph(dependenciesGraph, opts2),
    outdatedDependencies,
    linkedDependenciesByProjectId,
    updatedCatalogs,
    newLockfile,
    peerDependencyIssuesByProjects,
    waitTillAllFetchingsFinish,
    wantedToBeSkippedPackageIds,
    resolutionPolicyViolations
  };
}
function addDirectDependenciesToLockfile(newManifest, projectSnapshot, linkedPackages, directDependencies, excludeLinksFromLockfile) {
  const newProjectSnapshot = {
    dependencies: {},
    devDependencies: {},
    optionalDependencies: {},
    specifiers: {}
  };
  if (newManifest.publishConfig?.directory) {
    newProjectSnapshot.publishDirectory = newManifest.publishConfig.directory;
  }
  for (const linkedPkg of linkedPackages) {
    newProjectSnapshot.specifiers[linkedPkg.alias] = getSpecFromPackageManifest(newManifest, linkedPkg.alias);
  }
  const directDependenciesByAlias = {};
  for (const directDependency of directDependencies) {
    directDependenciesByAlias[directDependency.alias] = directDependency;
  }
  const allDeps = Array.from(new Set(Object.keys(getAllDependenciesFromManifest2(newManifest))));
  for (const alias of allDeps) {
    const dep = directDependenciesByAlias[alias];
    const spec = dep && getSpecFromPackageManifest(newManifest, dep.alias);
    if (dep && (!excludeLinksFromLockfile || !dep.isLinkedDependency || spec.startsWith("workspace:"))) {
      const ref = depPathToRef(dep.pkgId, {
        alias: dep.alias,
        realName: dep.name
      });
      if (dep.dev) {
        newProjectSnapshot.devDependencies[dep.alias] = ref;
      } else if (dep.optional) {
        newProjectSnapshot.optionalDependencies[dep.alias] = ref;
      } else {
        newProjectSnapshot.dependencies[dep.alias] = ref;
      }
      newProjectSnapshot.specifiers[dep.alias] = spec;
    } else if (projectSnapshot.specifiers[alias]) {
      newProjectSnapshot.specifiers[alias] = projectSnapshot.specifiers[alias];
      if (projectSnapshot.dependencies?.[alias]) {
        newProjectSnapshot.dependencies[alias] = projectSnapshot.dependencies[alias];
      } else if (projectSnapshot.optionalDependencies?.[alias]) {
        newProjectSnapshot.optionalDependencies[alias] = projectSnapshot.optionalDependencies[alias];
      } else if (projectSnapshot.devDependencies?.[alias]) {
        newProjectSnapshot.devDependencies[alias] = projectSnapshot.devDependencies[alias];
      }
    }
  }
  alignDependencyTypes(newManifest, newProjectSnapshot);
  return newProjectSnapshot;
}
function alignDependencyTypes(manifest, projectSnapshot) {
  const depTypesOfAliases = getAliasToDependencyTypeMap(manifest);
  for (const depType of DEPENDENCIES_FIELDS) {
    if (projectSnapshot[depType] == null)
      continue;
    for (const [alias, ref] of Object.entries(projectSnapshot[depType] ?? {})) {
      if (depType === depTypesOfAliases[alias] || !depTypesOfAliases[alias])
        continue;
      projectSnapshot[depTypesOfAliases[alias]][alias] = ref;
      delete projectSnapshot[depType][alias];
    }
  }
}
function getAliasToDependencyTypeMap(manifest) {
  const depTypesOfAliases = {};
  for (const depType of DEPENDENCIES_FIELDS) {
    if (manifest[depType] == null)
      continue;
    for (const alias of Object.keys(manifest[depType] ?? {})) {
      if (!depTypesOfAliases[alias]) {
        depTypesOfAliases[alias] = depType;
      }
    }
  }
  return depTypesOfAliases;
}
async function getTopParents(pkgAliases, modulesDir) {
  const pkgs = await Promise.all(pkgAliases.map((alias) => path103.join(modulesDir, alias)).map(safeReadPackageJsonFromDir));
  return zipWith_default((manifest, alias) => {
    if (!manifest)
      return null;
    return {
      alias,
      name: manifest.name,
      version: manifest.version
    };
  }, pkgs, pkgAliases).filter(Boolean);
}
function* iterateGraphPkgMetaEntries(graph, runtimeOnly) {
  for (const depPath in graph) {
    if (Object.hasOwn(graph, depPath)) {
      if (runtimeOnly && !isRuntimeDepPath(depPath))
        continue;
      const { name, version: version2, pkgIdWithPatchHash } = graph[depPath];
      yield { depPath, name, version: version2, pkgIdWithPatchHash };
    }
  }
}
function extendGraph(graph, opts2) {
  const pkgMetaIter = iterateGraphPkgMetaEntries(graph, !opts2.enableGlobalVirtualStore);
  const allowBuild = opts2.enableGlobalVirtualStore ? opts2.allowBuild : void 0;
  const nodeVersion = findRuntimeNodeVersion(Object.keys(graph));
  for (const { pkgMeta: { depPath }, hash: hash2 } of iterateHashedGraphNodes(graph, pkgMetaIter, allowBuild, opts2.supportedArchitectures, nodeVersion)) {
    const modules = path103.join(opts2.globalVirtualStoreDir, hash2, "node_modules");
    const node = graph[depPath];
    Object.assign(node, {
      modules,
      dir: path103.join(modules, node.name)
    });
  }
  return graph;
}
var init_lib108 = __esm({
  "../installing/deps-resolver/lib/index.js"() {
    "use strict";
    init_lib6();
    init_lib72();
    init_lib65();
    init_lib2();
    init_lib105();
    init_lib39();
    init_lib9();
    init_lib8();
    init_is_subdir();
    init_es();
    init_depPathToRef();
    init_getCatalogSnapshots();
    init_getWantedDependencies();
    init_resolveDependencies();
    init_resolveDependencyTree();
    init_resolvePeers();
    init_toResolveImporter();
    init_updateLockfile();
    init_updateProjectManifest();
  }
});

// ../installing/deps-installer/lib/getPeerDependencyIssues.js
var init_getPeerDependencyIssues = __esm({
  "../installing/deps-installer/lib/getPeerDependencyIssues.js"() {
    "use strict";
    init_lib74();
    init_lib97();
    init_lib103();
    init_lib87();
    init_lib108();
    init_lib106();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/chalk/4.1.2/c24cf7af43c10db55fbaf7d627c6e95c786c790072228a2fa3e9995dd55ce893/node_modules/chalk/source/util.js
var require_util12 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/chalk/4.1.2/c24cf7af43c10db55fbaf7d627c6e95c786c790072228a2fa3e9995dd55ce893/node_modules/chalk/source/util.js"(exports2, module2) {
    "use strict";
    var stringReplaceAll2 = (string, substring, replacer2) => {
      let index = string.indexOf(substring);
      if (index === -1) {
        return string;
      }
      const substringLength = substring.length;
      let endIndex = 0;
      let returnValue = "";
      do {
        returnValue += string.substr(endIndex, index - endIndex) + substring + replacer2;
        endIndex = index + substringLength;
        index = string.indexOf(substring, endIndex);
      } while (index !== -1);
      returnValue += string.substr(endIndex);
      return returnValue;
    };
    var stringEncaseCRLFWithFirstIndex2 = (string, prefix, postfix, index) => {
      let endIndex = 0;
      let returnValue = "";
      do {
        const gotCR = string[index - 1] === "\r";
        returnValue += string.substr(endIndex, (gotCR ? index - 1 : index) - endIndex) + prefix + (gotCR ? "\r\n" : "\n") + postfix;
        endIndex = index + 1;
        index = string.indexOf("\n", endIndex);
      } while (index !== -1);
      returnValue += string.substr(endIndex);
      return returnValue;
    };
    module2.exports = {
      stringReplaceAll: stringReplaceAll2,
      stringEncaseCRLFWithFirstIndex: stringEncaseCRLFWithFirstIndex2
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/chalk/4.1.2/c24cf7af43c10db55fbaf7d627c6e95c786c790072228a2fa3e9995dd55ce893/node_modules/chalk/source/templates.js
var require_templates2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/chalk/4.1.2/c24cf7af43c10db55fbaf7d627c6e95c786c790072228a2fa3e9995dd55ce893/node_modules/chalk/source/templates.js"(exports2, module2) {
    "use strict";
    var TEMPLATE_REGEX = /(?:\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi;
    var STYLE_REGEX = /(?:^|\.)(\w+)(?:\(([^)]*)\))?/g;
    var STRING_REGEX = /^(['"])((?:\\.|(?!\1)[^\\])*)\1$/;
    var ESCAPE_REGEX = /\\(u(?:[a-f\d]{4}|{[a-f\d]{1,6}})|x[a-f\d]{2}|.)|([^\\])/gi;
    var ESCAPES2 = /* @__PURE__ */ new Map([
      ["n", "\n"],
      ["r", "\r"],
      ["t", "	"],
      ["b", "\b"],
      ["f", "\f"],
      ["v", "\v"],
      ["0", "\0"],
      ["\\", "\\"],
      ["e", "\x1B"],
      ["a", "\x07"]
    ]);
    function unescape2(c3) {
      const u4 = c3[0] === "u";
      const bracket = c3[1] === "{";
      if (u4 && !bracket && c3.length === 5 || c3[0] === "x" && c3.length === 3) {
        return String.fromCharCode(parseInt(c3.slice(1), 16));
      }
      if (u4 && bracket) {
        return String.fromCodePoint(parseInt(c3.slice(2, -1), 16));
      }
      return ESCAPES2.get(c3) || c3;
    }
    function parseArguments2(name, arguments_) {
      const results = [];
      const chunks = arguments_.trim().split(/\s*,\s*/g);
      let matches2;
      for (const chunk of chunks) {
        const number = Number(chunk);
        if (!Number.isNaN(number)) {
          results.push(number);
        } else if (matches2 = chunk.match(STRING_REGEX)) {
          results.push(matches2[2].replace(ESCAPE_REGEX, (m, escape, character) => escape ? unescape2(escape) : character));
        } else {
          throw new Error(`Invalid Chalk template style argument: ${chunk} (in style '${name}')`);
        }
      }
      return results;
    }
    function parseStyle(style) {
      STYLE_REGEX.lastIndex = 0;
      const results = [];
      let matches2;
      while ((matches2 = STYLE_REGEX.exec(style)) !== null) {
        const name = matches2[1];
        if (matches2[2]) {
          const args = parseArguments2(name, matches2[2]);
          results.push([name].concat(args));
        } else {
          results.push([name]);
        }
      }
      return results;
    }
    function buildStyle(chalk2, styles4) {
      const enabled = {};
      for (const layer of styles4) {
        for (const style of layer.styles) {
          enabled[style[0]] = layer.inverse ? null : style.slice(1);
        }
      }
      let current = chalk2;
      for (const [styleName, styles5] of Object.entries(enabled)) {
        if (!Array.isArray(styles5)) {
          continue;
        }
        if (!(styleName in current)) {
          throw new Error(`Unknown Chalk style: ${styleName}`);
        }
        current = styles5.length > 0 ? current[styleName](...styles5) : current[styleName];
      }
      return current;
    }
    module2.exports = (chalk2, temporary) => {
      const styles4 = [];
      const chunks = [];
      let chunk = [];
      temporary.replace(TEMPLATE_REGEX, (m, escapeCharacter, inverse2, style, close, character) => {
        if (escapeCharacter) {
          chunk.push(unescape2(escapeCharacter));
        } else if (style) {
          const string = chunk.join("");
          chunk = [];
          chunks.push(styles4.length === 0 ? string : buildStyle(chalk2, styles4)(string));
          styles4.push({ inverse: inverse2, styles: parseStyle(style) });
        } else if (close) {
          if (styles4.length === 0) {
            throw new Error("Found extraneous } in Chalk template literal");
          }
          chunks.push(buildStyle(chalk2, styles4)(chunk.join("")));
          chunk = [];
          styles4.pop();
        } else {
          chunk.push(character);
        }
      });
      chunks.push(chunk.join(""));
      if (styles4.length > 0) {
        const errMessage = `Chalk template literal is missing ${styles4.length} closing bracket${styles4.length === 1 ? "" : "s"} (\`}\`)`;
        throw new Error(errMessage);
      }
      return chunks.join("");
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/chalk/4.1.2/c24cf7af43c10db55fbaf7d627c6e95c786c790072228a2fa3e9995dd55ce893/node_modules/chalk/source/index.js
var require_source2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/chalk/4.1.2/c24cf7af43c10db55fbaf7d627c6e95c786c790072228a2fa3e9995dd55ce893/node_modules/chalk/source/index.js"(exports2, module2) {
    "use strict";
    var ansiStyles3 = require_ansi_styles();
    var { stdout: stdoutColor2, stderr: stderrColor2 } = require_supports_color();
    var {
      stringReplaceAll: stringReplaceAll2,
      stringEncaseCRLFWithFirstIndex: stringEncaseCRLFWithFirstIndex2
    } = require_util12();
    var { isArray } = Array;
    var levelMapping2 = [
      "ansi",
      "ansi",
      "ansi256",
      "ansi16m"
    ];
    var styles4 = /* @__PURE__ */ Object.create(null);
    var applyOptions2 = (object, options = {}) => {
      if (options.level && !(Number.isInteger(options.level) && options.level >= 0 && options.level <= 3)) {
        throw new Error("The `level` option should be an integer from 0 to 3");
      }
      const colorLevel = stdoutColor2 ? stdoutColor2.level : 0;
      object.level = options.level === void 0 ? colorLevel : options.level;
    };
    var ChalkClass = class {
      constructor(options) {
        return chalkFactory2(options);
      }
    };
    var chalkFactory2 = (options) => {
      const chalk3 = {};
      applyOptions2(chalk3, options);
      chalk3.template = (...arguments_) => chalkTag(chalk3.template, ...arguments_);
      Object.setPrototypeOf(chalk3, Chalk.prototype);
      Object.setPrototypeOf(chalk3.template, chalk3);
      chalk3.template.constructor = () => {
        throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.");
      };
      chalk3.template.Instance = ChalkClass;
      return chalk3.template;
    };
    function Chalk(options) {
      return chalkFactory2(options);
    }
    for (const [styleName, style] of Object.entries(ansiStyles3)) {
      styles4[styleName] = {
        get() {
          const builder = createBuilder2(this, createStyler2(style.open, style.close, this._styler), this._isEmpty);
          Object.defineProperty(this, styleName, { value: builder });
          return builder;
        }
      };
    }
    styles4.visible = {
      get() {
        const builder = createBuilder2(this, this._styler, true);
        Object.defineProperty(this, "visible", { value: builder });
        return builder;
      }
    };
    var usedModels2 = ["rgb", "hex", "keyword", "hsl", "hsv", "hwb", "ansi", "ansi256"];
    for (const model of usedModels2) {
      styles4[model] = {
        get() {
          const { level } = this;
          return function(...arguments_) {
            const styler = createStyler2(ansiStyles3.color[levelMapping2[level]][model](...arguments_), ansiStyles3.color.close, this._styler);
            return createBuilder2(this, styler, this._isEmpty);
          };
        }
      };
    }
    for (const model of usedModels2) {
      const bgModel = "bg" + model[0].toUpperCase() + model.slice(1);
      styles4[bgModel] = {
        get() {
          const { level } = this;
          return function(...arguments_) {
            const styler = createStyler2(ansiStyles3.bgColor[levelMapping2[level]][model](...arguments_), ansiStyles3.bgColor.close, this._styler);
            return createBuilder2(this, styler, this._isEmpty);
          };
        }
      };
    }
    var proto2 = Object.defineProperties(() => {
    }, {
      ...styles4,
      level: {
        enumerable: true,
        get() {
          return this._generator.level;
        },
        set(level) {
          this._generator.level = level;
        }
      }
    });
    var createStyler2 = (open5, close, parent) => {
      let openAll;
      let closeAll;
      if (parent === void 0) {
        openAll = open5;
        closeAll = close;
      } else {
        openAll = parent.openAll + open5;
        closeAll = close + parent.closeAll;
      }
      return {
        open: open5,
        close,
        openAll,
        closeAll,
        parent
      };
    };
    var createBuilder2 = (self2, _styler, _isEmpty) => {
      const builder = (...arguments_) => {
        if (isArray(arguments_[0]) && isArray(arguments_[0].raw)) {
          return applyStyle2(builder, chalkTag(builder, ...arguments_));
        }
        return applyStyle2(builder, arguments_.length === 1 ? "" + arguments_[0] : arguments_.join(" "));
      };
      Object.setPrototypeOf(builder, proto2);
      builder._generator = self2;
      builder._styler = _styler;
      builder._isEmpty = _isEmpty;
      return builder;
    };
    var applyStyle2 = (self2, string) => {
      if (self2.level <= 0 || !string) {
        return self2._isEmpty ? "" : string;
      }
      let styler = self2._styler;
      if (styler === void 0) {
        return string;
      }
      const { openAll, closeAll } = styler;
      if (string.indexOf("\x1B") !== -1) {
        while (styler !== void 0) {
          string = stringReplaceAll2(string, styler.close, styler.open);
          styler = styler.parent;
        }
      }
      const lfIndex = string.indexOf("\n");
      if (lfIndex !== -1) {
        string = stringEncaseCRLFWithFirstIndex2(string, closeAll, openAll, lfIndex);
      }
      return openAll + string + closeAll;
    };
    var template;
    var chalkTag = (chalk3, ...strings2) => {
      const [firstString] = strings2;
      if (!isArray(firstString) || !isArray(firstString.raw)) {
        return strings2.join(" ");
      }
      const arguments_ = strings2.slice(1);
      const parts = [firstString.raw[0]];
      for (let i2 = 1; i2 < firstString.length; i2++) {
        parts.push(
          String(arguments_[i2 - 1]).replace(/[{}\\]/g, "\\$&"),
          String(firstString.raw[i2])
        );
      }
      if (template === void 0) {
        template = require_templates2();
      }
      return template(chalk3, parts.join(""));
    };
    Object.defineProperties(Chalk.prototype, styles4);
    var chalk2 = Chalk();
    chalk2.supportsColor = stdoutColor2;
    chalk2.stderr = Chalk({ level: stderrColor2 ? stderrColor2.level : 0 });
    chalk2.stderr.supportsColor = stderrColor2;
    module2.exports = chalk2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/slash/2.0.0/7e081a5f0090e902df791a5e0825a6779e59c0a002f1e02b56c93cca6ae8eee7/node_modules/slash/index.js
var require_slash = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/slash/2.0.0/7e081a5f0090e902df791a5e0825a6779e59c0a002f1e02b56c93cca6ae8eee7/node_modules/slash/index.js"(exports2, module2) {
    "use strict";
    module2.exports = (input) => {
      const isExtendedLengthPath = /^\\\\\?\\/.test(input);
      const hasNonAscii = /[^\u0000-\u0080]+/.test(input);
      if (isExtendedLengthPath || hasNonAscii) {
        return input;
      }
      return input.replace(/\\/g, "/");
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/patch-package/0.0.1/10551b057f76f10acf36de62d8c913b5d551bf7778c03b18494ed39bb5d39a4d/node_modules/@pnpm/patch-package/dist/path.js
var require_path3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/patch-package/0.0.1/10551b057f76f10acf36de62d8c913b5d551bf7778c03b18494ed39bb5d39a4d/node_modules/@pnpm/patch-package/dist/path.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.relative = exports2.resolve = exports2.dirname = exports2.join = void 0;
    var slash_1 = __importDefault2(require_slash());
    var path_1 = __importDefault2(__require("path"));
    var join3 = (...args) => (0, slash_1.default)(path_1.default.join(...args));
    exports2.join = join3;
    var path_2 = __require("path");
    Object.defineProperty(exports2, "dirname", { enumerable: true, get: function() {
      return path_2.dirname;
    } });
    var resolve3 = (...args) => (0, slash_1.default)(path_1.default.resolve(...args));
    exports2.resolve = resolve3;
    var relative2 = (...args) => (0, slash_1.default)(path_1.default.relative(...args));
    exports2.relative = relative2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/klaw-sync/6.0.0/75e2f18cf9655975cd06931c2b639620e1b93111100fc230c73a85e373a49683/node_modules/klaw-sync/klaw-sync.js
var require_klaw_sync = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/klaw-sync/6.0.0/75e2f18cf9655975cd06931c2b639620e1b93111100fc230c73a85e373a49683/node_modules/klaw-sync/klaw-sync.js"(exports2, module2) {
    "use strict";
    var fs111 = require_graceful_fs();
    var path218 = __require("path");
    function klawSync(dir, opts2, ls) {
      if (!ls) {
        ls = [];
        dir = path218.resolve(dir);
        opts2 = opts2 || {};
        opts2.fs = opts2.fs || fs111;
        if (opts2.depthLimit > -1) opts2.rootDepth = dir.split(path218.sep).length + 1;
      }
      const paths3 = opts2.fs.readdirSync(dir).map((p) => dir + path218.sep + p);
      for (var i2 = 0; i2 < paths3.length; i2 += 1) {
        const pi = paths3[i2];
        const st = opts2.fs.statSync(pi);
        const item = { path: pi, stats: st };
        const isUnderDepthLimit = !opts2.rootDepth || pi.split(path218.sep).length - opts2.rootDepth < opts2.depthLimit;
        const filterResult = opts2.filter ? opts2.filter(item) : true;
        const isDir = st.isDirectory();
        const shouldAdd = filterResult && (isDir ? !opts2.nodir : !opts2.nofile);
        const shouldTraverse = isDir && isUnderDepthLimit && (opts2.traverseAll || filterResult);
        if (shouldAdd) ls.push(item);
        if (shouldTraverse) ls = klawSync(pi, opts2, ls);
      }
      return ls;
    }
    module2.exports = klawSync;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/patch-package/0.0.1/10551b057f76f10acf36de62d8c913b5d551bf7778c03b18494ed39bb5d39a4d/node_modules/@pnpm/patch-package/dist/patchFs.js
var require_patchFs2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/patch-package/0.0.1/10551b057f76f10acf36de62d8c913b5d551bf7778c03b18494ed39bb5d39a4d/node_modules/@pnpm/patch-package/dist/patchFs.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.getPatchFiles = void 0;
    var path_1 = require_path3();
    var klaw_sync_1 = __importDefault2(require_klaw_sync());
    var getPatchFiles = (patchesDir) => {
      try {
        return (0, klaw_sync_1.default)(patchesDir, { nodir: true }).map(({ path: path218 }) => (0, path_1.relative)(patchesDir, path218)).filter((path218) => path218.endsWith(".patch"));
      } catch (e) {
        return [];
      }
    };
    exports2.getPatchFiles = getPatchFiles;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/patch-package/0.0.1/10551b057f76f10acf36de62d8c913b5d551bf7778c03b18494ed39bb5d39a4d/node_modules/@pnpm/patch-package/dist/assertNever.js
var require_assertNever = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/patch-package/0.0.1/10551b057f76f10acf36de62d8c913b5d551bf7778c03b18494ed39bb5d39a4d/node_modules/@pnpm/patch-package/dist/assertNever.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.assertNever = void 0;
    function assertNever2(x) {
      throw new Error("Unexpected object: " + x);
    }
    exports2.assertNever = assertNever2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/patch-package/0.0.1/10551b057f76f10acf36de62d8c913b5d551bf7778c03b18494ed39bb5d39a4d/node_modules/@pnpm/patch-package/dist/patch/apply.js
var require_apply = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/patch-package/0.0.1/10551b057f76f10acf36de62d8c913b5d551bf7778c03b18494ed39bb5d39a4d/node_modules/@pnpm/patch-package/dist/patch/apply.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.executeEffects = void 0;
    var fs_extra_1 = __importDefault2(require_lib20());
    var path_1 = __require("path");
    var assertNever_1 = require_assertNever();
    var executeEffects = (effects, { dryRun }) => {
      effects.forEach((eff) => {
        switch (eff.type) {
          case "file deletion":
            if (dryRun) {
              if (!fs_extra_1.default.existsSync(eff.path)) {
                throw new Error("Trying to delete file that doesn't exist: " + eff.path);
              }
            } else {
              fs_extra_1.default.unlinkSync(eff.path);
            }
            break;
          case "rename":
            if (dryRun) {
              if (!fs_extra_1.default.existsSync(eff.fromPath)) {
                throw new Error("Trying to move file that doesn't exist: " + eff.fromPath);
              }
            } else {
              fs_extra_1.default.moveSync(eff.fromPath, eff.toPath);
            }
            break;
          case "file creation":
            if (dryRun) {
              if (fs_extra_1.default.existsSync(eff.path)) {
                throw new Error("Trying to create file that already exists: " + eff.path);
              }
            } else {
              const fileContents = eff.hunk ? eff.hunk.parts[0].lines.join("\n") + (eff.hunk.parts[0].noNewlineAtEndOfFile ? "" : "\n") : "";
              fs_extra_1.default.ensureDirSync((0, path_1.dirname)(eff.path));
              fs_extra_1.default.writeFileSync(eff.path, fileContents, { mode: eff.mode });
            }
            break;
          case "patch":
            applyPatch3(eff, { dryRun });
            break;
          case "mode change":
            const currentMode = fs_extra_1.default.statSync(eff.path).mode;
            if ((isExecutable(eff.newMode) && isExecutable(currentMode) || !isExecutable(eff.newMode) && !isExecutable(currentMode)) && dryRun) {
              console.warn(`Mode change is not required for file ${eff.path}`);
            }
            fs_extra_1.default.chmodSync(eff.path, eff.newMode);
            break;
          default:
            (0, assertNever_1.assertNever)(eff);
        }
      });
    };
    exports2.executeEffects = executeEffects;
    function isExecutable(fileMode) {
      return (fileMode & 64) > 0;
    }
    var trimRight = (s) => s.replace(/\s+$/, "");
    function linesAreEqual(a2, b) {
      return trimRight(a2) === trimRight(b);
    }
    function applyPatch3({ hunks, path: path218 }, { dryRun }) {
      const fileContents = fs_extra_1.default.readFileSync(path218).toString();
      const mode = fs_extra_1.default.statSync(path218).mode;
      const fileLines = fileContents.split(/\n/);
      const result2 = [];
      for (const hunk of hunks) {
        let fuzzingOffset = 0;
        while (true) {
          const modifications = evaluateHunk(hunk, fileLines, fuzzingOffset);
          if (modifications) {
            result2.push(modifications);
            break;
          }
          fuzzingOffset = fuzzingOffset < 0 ? fuzzingOffset * -1 : fuzzingOffset * -1 - 1;
          if (Math.abs(fuzzingOffset) > 20) {
            throw new Error(`Cant apply hunk ${hunks.indexOf(hunk)} for file ${path218}`);
          }
        }
      }
      if (dryRun) {
        return;
      }
      let diffOffset = 0;
      for (const modifications of result2) {
        for (const modification of modifications) {
          switch (modification.type) {
            case "splice":
              fileLines.splice(modification.index + diffOffset, modification.numToDelete, ...modification.linesToInsert);
              diffOffset += modification.linesToInsert.length - modification.numToDelete;
              break;
            case "pop":
              fileLines.pop();
              break;
            case "push":
              fileLines.push(modification.line);
              break;
            default:
              (0, assertNever_1.assertNever)(modification);
          }
        }
      }
      fs_extra_1.default.writeFileSync(path218, fileLines.join("\n"), { mode });
    }
    function evaluateHunk(hunk, fileLines, fuzzingOffset) {
      const result2 = [];
      let contextIndex = hunk.header.original.start - 1 + fuzzingOffset;
      if (contextIndex < 0) {
        return null;
      }
      if (fileLines.length - contextIndex < hunk.header.original.length) {
        return null;
      }
      for (const part of hunk.parts) {
        switch (part.type) {
          case "deletion":
          case "context":
            for (const line of part.lines) {
              const originalLine = fileLines[contextIndex];
              if (!linesAreEqual(originalLine, line)) {
                return null;
              }
              contextIndex++;
            }
            if (part.type === "deletion") {
              result2.push({
                type: "splice",
                index: contextIndex - part.lines.length,
                numToDelete: part.lines.length,
                linesToInsert: []
              });
              if (part.noNewlineAtEndOfFile) {
                result2.push({
                  type: "push",
                  line: ""
                });
              }
            }
            break;
          case "insertion":
            result2.push({
              type: "splice",
              index: contextIndex,
              numToDelete: 0,
              linesToInsert: part.lines
            });
            if (part.noNewlineAtEndOfFile) {
              result2.push({ type: "pop" });
            }
            break;
          default:
            (0, assertNever_1.assertNever)(part.type);
        }
      }
      return result2;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/patch-package/0.0.1/10551b057f76f10acf36de62d8c913b5d551bf7778c03b18494ed39bb5d39a4d/node_modules/@pnpm/patch-package/dist/PackageDetails.js
var require_PackageDetails = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/patch-package/0.0.1/10551b057f76f10acf36de62d8c913b5d551bf7778c03b18494ed39bb5d39a4d/node_modules/@pnpm/patch-package/dist/PackageDetails.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.getPatchDetailsFromCliString = exports2.getPackageDetailsFromPatchFilename = void 0;
    var path_1 = require_path3();
    function parseNameAndVersion(s) {
      const parts = s.split("+");
      switch (parts.length) {
        case 1: {
          return { name: parts[0] };
        }
        case 2: {
          const [nameOrScope, versionOrName] = parts;
          if (versionOrName.match(/^\d+/)) {
            return {
              name: nameOrScope,
              version: versionOrName
            };
          }
          return { name: `${nameOrScope}/${versionOrName}` };
        }
        case 3: {
          const [scope, name, version2] = parts;
          return { name: `${scope}/${name}`, version: version2 };
        }
      }
      return null;
    }
    function getPackageDetailsFromPatchFilename(patchFilename) {
      const legacyMatch = patchFilename.match(/^([^+=]+?)(:|\+)(\d+\.\d+\.\d+.*?)(\.dev)?\.patch$/);
      if (legacyMatch) {
        const name = legacyMatch[1];
        const version2 = legacyMatch[3];
        return {
          packageNames: [name],
          pathSpecifier: name,
          humanReadablePathSpecifier: name,
          path: (0, path_1.join)("node_modules", name),
          name,
          version: version2,
          isNested: false,
          patchFilename,
          isDevOnly: patchFilename.endsWith(".dev.patch")
        };
      }
      const parts = patchFilename.replace(/(\.dev)?\.patch$/, "").split("++").map(parseNameAndVersion).filter((x) => x !== null);
      if (parts.length === 0) {
        return null;
      }
      const lastPart = parts[parts.length - 1];
      if (!lastPart.version) {
        return null;
      }
      return {
        name: lastPart.name,
        version: lastPart.version,
        path: (0, path_1.join)("node_modules", parts.map(({ name }) => name).join("/node_modules/")),
        patchFilename,
        pathSpecifier: parts.map(({ name }) => name).join("/"),
        humanReadablePathSpecifier: parts.map(({ name }) => name).join(" => "),
        isNested: parts.length > 1,
        packageNames: parts.map(({ name }) => name),
        isDevOnly: patchFilename.endsWith(".dev.patch")
      };
    }
    exports2.getPackageDetailsFromPatchFilename = getPackageDetailsFromPatchFilename;
    function getPatchDetailsFromCliString(specifier) {
      const parts = specifier.split("/");
      const packageNames = [];
      let scope = null;
      for (let i2 = 0; i2 < parts.length; i2++) {
        if (parts[i2].startsWith("@")) {
          if (scope) {
            return null;
          }
          scope = parts[i2];
        } else {
          if (scope) {
            packageNames.push(`${scope}/${parts[i2]}`);
            scope = null;
          } else {
            packageNames.push(parts[i2]);
          }
        }
      }
      const path218 = (0, path_1.join)("node_modules", packageNames.join("/node_modules/"));
      return {
        packageNames,
        path: path218,
        name: packageNames[packageNames.length - 1],
        humanReadablePathSpecifier: packageNames.join(" => "),
        isNested: packageNames.length > 1,
        pathSpecifier: specifier
      };
    }
    exports2.getPatchDetailsFromCliString = getPatchDetailsFromCliString;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/patch-package/0.0.1/10551b057f76f10acf36de62d8c913b5d551bf7778c03b18494ed39bb5d39a4d/node_modules/@pnpm/patch-package/dist/patch/parse.js
var require_parse9 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/patch-package/0.0.1/10551b057f76f10acf36de62d8c913b5d551bf7778c03b18494ed39bb5d39a4d/node_modules/@pnpm/patch-package/dist/patch/parse.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.verifyHunkIntegrity = exports2.parsePatchFile = exports2.interpretParsedPatchFile = exports2.EXECUTABLE_FILE_MODE = exports2.NON_EXECUTABLE_FILE_MODE = exports2.parseHunkHeaderLine = void 0;
    var assertNever_1 = require_assertNever();
    var parseHunkHeaderLine = (headerLine) => {
      const match = headerLine.trim().match(/^@@ -(\d+)(,(\d+))? \+(\d+)(,(\d+))? @@.*/);
      if (!match) {
        throw new Error(`Bad header line: '${headerLine}'`);
      }
      return {
        original: {
          start: Math.max(Number(match[1]), 1),
          length: Number(match[3] || 1)
        },
        patched: {
          start: Math.max(Number(match[4]), 1),
          length: Number(match[6] || 1)
        }
      };
    };
    exports2.parseHunkHeaderLine = parseHunkHeaderLine;
    exports2.NON_EXECUTABLE_FILE_MODE = 420;
    exports2.EXECUTABLE_FILE_MODE = 493;
    var emptyFilePatch = () => ({
      diffLineFromPath: null,
      diffLineToPath: null,
      oldMode: null,
      newMode: null,
      deletedFileMode: null,
      newFileMode: null,
      renameFrom: null,
      renameTo: null,
      beforeHash: null,
      afterHash: null,
      fromPath: null,
      toPath: null,
      hunks: null
    });
    var emptyHunk = (headerLine) => ({
      header: (0, exports2.parseHunkHeaderLine)(headerLine),
      parts: []
    });
    var hunkLinetypes = {
      "@": "header",
      "-": "deletion",
      "+": "insertion",
      " ": "context",
      "\\": "pragma",
      // Treat blank lines as context
      undefined: "context",
      "\r": "context"
    };
    function parsePatchLines(lines, { supportLegacyDiffs }) {
      const result2 = [];
      let currentFilePatch = emptyFilePatch();
      let state = "parsing header";
      let currentHunk = null;
      let currentHunkMutationPart = null;
      function commitHunk() {
        if (currentHunk) {
          if (currentHunkMutationPart) {
            currentHunk.parts.push(currentHunkMutationPart);
            currentHunkMutationPart = null;
          }
          currentFilePatch.hunks.push(currentHunk);
          currentHunk = null;
        }
      }
      function commitFilePatch() {
        commitHunk();
        result2.push(currentFilePatch);
        currentFilePatch = emptyFilePatch();
      }
      for (let i2 = 0; i2 < lines.length; i2++) {
        const line = lines[i2];
        if (state === "parsing header") {
          if (line.startsWith("@@")) {
            state = "parsing hunks";
            currentFilePatch.hunks = [];
            i2--;
          } else if (line.startsWith("diff --git ")) {
            if (currentFilePatch && currentFilePatch.diffLineFromPath) {
              commitFilePatch();
            }
            const match = line.match(/^diff --git a\/(.*?) b\/(.*?)\s*$/);
            if (!match) {
              throw new Error("Bad diff line: " + line);
            }
            currentFilePatch.diffLineFromPath = match[1];
            currentFilePatch.diffLineToPath = match[2];
          } else if (line.startsWith("old mode ")) {
            currentFilePatch.oldMode = line.slice("old mode ".length).trim();
          } else if (line.startsWith("new mode ")) {
            currentFilePatch.newMode = line.slice("new mode ".length).trim();
          } else if (line.startsWith("deleted file mode ")) {
            currentFilePatch.deletedFileMode = line.slice("deleted file mode ".length).trim();
          } else if (line.startsWith("new file mode ")) {
            currentFilePatch.newFileMode = line.slice("new file mode ".length).trim();
          } else if (line.startsWith("rename from ")) {
            currentFilePatch.renameFrom = line.slice("rename from ".length).trim();
          } else if (line.startsWith("rename to ")) {
            currentFilePatch.renameTo = line.slice("rename to ".length).trim();
          } else if (line.startsWith("index ")) {
            const match = line.match(/(\w+)\.\.(\w+)/);
            if (!match) {
              continue;
            }
            currentFilePatch.beforeHash = match[1];
            currentFilePatch.afterHash = match[2];
          } else if (line.startsWith("--- ")) {
            currentFilePatch.fromPath = line.slice("--- a/".length).trim();
          } else if (line.startsWith("+++ ")) {
            currentFilePatch.toPath = line.slice("+++ b/".length).trim();
          }
        } else {
          if (supportLegacyDiffs && line.startsWith("--- a/")) {
            state = "parsing header";
            commitFilePatch();
            i2--;
            continue;
          }
          const lineType = hunkLinetypes[line[0]] || null;
          switch (lineType) {
            case "header":
              commitHunk();
              currentHunk = emptyHunk(line);
              break;
            case null:
              state = "parsing header";
              commitFilePatch();
              i2--;
              break;
            case "pragma":
              if (!line.startsWith("\\ No newline at end of file")) {
                throw new Error("Unrecognized pragma in patch file: " + line);
              }
              if (!currentHunkMutationPart) {
                throw new Error("Bad parser state: No newline at EOF pragma encountered without context");
              }
              currentHunkMutationPart.noNewlineAtEndOfFile = true;
              break;
            case "insertion":
            case "deletion":
            case "context":
              if (!currentHunk) {
                throw new Error("Bad parser state: Hunk lines encountered before hunk header");
              }
              if (currentHunkMutationPart && currentHunkMutationPart.type !== lineType) {
                currentHunk.parts.push(currentHunkMutationPart);
                currentHunkMutationPart = null;
              }
              if (!currentHunkMutationPart) {
                currentHunkMutationPart = {
                  type: lineType,
                  lines: [],
                  noNewlineAtEndOfFile: false
                };
              }
              currentHunkMutationPart.lines.push(line.slice(1));
              break;
            default:
              (0, assertNever_1.assertNever)(lineType);
          }
        }
      }
      commitFilePatch();
      for (const { hunks } of result2) {
        if (hunks) {
          for (const hunk of hunks) {
            verifyHunkIntegrity(hunk);
          }
        }
      }
      return result2;
    }
    function interpretParsedPatchFile(files) {
      const result2 = [];
      for (const file of files) {
        const { diffLineFromPath, diffLineToPath, oldMode, newMode, deletedFileMode, newFileMode, renameFrom, renameTo, beforeHash, afterHash, fromPath, toPath: toPath4, hunks } = file;
        const type4 = renameFrom ? "rename" : deletedFileMode ? "file deletion" : newFileMode ? "file creation" : hunks && hunks.length > 0 ? "patch" : "mode change";
        let destinationFilePath = null;
        switch (type4) {
          case "rename":
            if (!renameFrom || !renameTo) {
              throw new Error("Bad parser state: rename from & to not given");
            }
            result2.push({
              type: "rename",
              fromPath: renameFrom,
              toPath: renameTo
            });
            destinationFilePath = renameTo;
            break;
          case "file deletion": {
            const path218 = diffLineFromPath || fromPath;
            if (!path218) {
              throw new Error("Bad parse state: no path given for file deletion");
            }
            result2.push({
              type: "file deletion",
              hunk: hunks && hunks[0] || null,
              path: path218,
              mode: parseFileMode(deletedFileMode),
              hash: beforeHash
            });
            break;
          }
          case "file creation": {
            const path218 = diffLineToPath || toPath4;
            if (!path218) {
              throw new Error("Bad parse state: no path given for file creation");
            }
            result2.push({
              type: "file creation",
              hunk: hunks && hunks[0] || null,
              path: path218,
              mode: parseFileMode(newFileMode),
              hash: afterHash
            });
            break;
          }
          case "patch":
          case "mode change":
            destinationFilePath = toPath4 || diffLineToPath;
            break;
          default:
            (0, assertNever_1.assertNever)(type4);
        }
        if (destinationFilePath && oldMode && newMode && oldMode !== newMode) {
          result2.push({
            type: "mode change",
            path: destinationFilePath,
            oldMode: parseFileMode(oldMode),
            newMode: parseFileMode(newMode)
          });
        }
        if (destinationFilePath && hunks && hunks.length) {
          result2.push({
            type: "patch",
            path: destinationFilePath,
            hunks,
            beforeHash,
            afterHash
          });
        }
      }
      return result2;
    }
    exports2.interpretParsedPatchFile = interpretParsedPatchFile;
    function parseFileMode(mode) {
      const parsedMode = parseInt(mode, 8) & 511;
      if (parsedMode !== exports2.NON_EXECUTABLE_FILE_MODE && parsedMode !== exports2.EXECUTABLE_FILE_MODE) {
        throw new Error("Unexpected file mode string: " + mode);
      }
      return parsedMode;
    }
    function parsePatchFile(file) {
      const lines = file.split(/\n/g);
      if (lines[lines.length - 1] === "") {
        lines.pop();
      }
      try {
        return interpretParsedPatchFile(parsePatchLines(lines, { supportLegacyDiffs: false }));
      } catch (e) {
        if (e instanceof Error && e.message === "hunk header integrity check failed") {
          return interpretParsedPatchFile(parsePatchLines(lines, { supportLegacyDiffs: true }));
        }
        throw e;
      }
    }
    exports2.parsePatchFile = parsePatchFile;
    function verifyHunkIntegrity(hunk) {
      let originalLength = 0;
      let patchedLength = 0;
      for (const { type: type4, lines } of hunk.parts) {
        switch (type4) {
          case "context":
            patchedLength += lines.length;
            originalLength += lines.length;
            break;
          case "deletion":
            originalLength += lines.length;
            break;
          case "insertion":
            patchedLength += lines.length;
            break;
          default:
            (0, assertNever_1.assertNever)(type4);
        }
      }
      if (originalLength !== hunk.header.original.length || patchedLength !== hunk.header.patched.length) {
        throw new Error("hunk header integrity check failed");
      }
    }
    exports2.verifyHunkIntegrity = verifyHunkIntegrity;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/patch-package/0.0.1/10551b057f76f10acf36de62d8c913b5d551bf7778c03b18494ed39bb5d39a4d/node_modules/@pnpm/patch-package/dist/patch/reverse.js
var require_reverse = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/patch-package/0.0.1/10551b057f76f10acf36de62d8c913b5d551bf7778c03b18494ed39bb5d39a4d/node_modules/@pnpm/patch-package/dist/patch/reverse.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.reversePatch = void 0;
    var parse_1 = require_parse9();
    var assertNever_1 = require_assertNever();
    function reverseHunk(hunk) {
      const header = {
        original: hunk.header.patched,
        patched: hunk.header.original
      };
      const parts = [];
      for (const part of hunk.parts) {
        switch (part.type) {
          case "context":
            parts.push(part);
            break;
          case "deletion":
            parts.push({
              type: "insertion",
              lines: part.lines,
              noNewlineAtEndOfFile: part.noNewlineAtEndOfFile
            });
            break;
          case "insertion":
            parts.push({
              type: "deletion",
              lines: part.lines,
              noNewlineAtEndOfFile: part.noNewlineAtEndOfFile
            });
            break;
          default:
            (0, assertNever_1.assertNever)(part.type);
        }
      }
      for (let i2 = 0; i2 < parts.length - 1; i2++) {
        if (parts[i2].type === "insertion" && parts[i2 + 1].type === "deletion") {
          const tmp = parts[i2];
          parts[i2] = parts[i2 + 1];
          parts[i2 + 1] = tmp;
          i2 += 1;
        }
      }
      const result2 = {
        header,
        parts
      };
      (0, parse_1.verifyHunkIntegrity)(result2);
      return result2;
    }
    function reversePatchPart(part) {
      switch (part.type) {
        case "file creation":
          return {
            type: "file deletion",
            path: part.path,
            hash: part.hash,
            hunk: part.hunk && reverseHunk(part.hunk),
            mode: part.mode
          };
        case "file deletion":
          return {
            type: "file creation",
            path: part.path,
            hunk: part.hunk && reverseHunk(part.hunk),
            mode: part.mode,
            hash: part.hash
          };
        case "rename":
          return {
            type: "rename",
            fromPath: part.toPath,
            toPath: part.fromPath
          };
        case "patch":
          return {
            type: "patch",
            path: part.path,
            hunks: part.hunks.map(reverseHunk),
            beforeHash: part.afterHash,
            afterHash: part.beforeHash
          };
        case "mode change":
          return {
            type: "mode change",
            path: part.path,
            newMode: part.oldMode,
            oldMode: part.newMode
          };
      }
    }
    var reversePatch = (patch) => {
      return patch.map(reversePatchPart).reverse();
    };
    exports2.reversePatch = reversePatch;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/patch-package/0.0.1/10551b057f76f10acf36de62d8c913b5d551bf7778c03b18494ed39bb5d39a4d/node_modules/@pnpm/patch-package/dist/patch/read.js
var require_read = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/patch-package/0.0.1/10551b057f76f10acf36de62d8c913b5d551bf7778c03b18494ed39bb5d39a4d/node_modules/@pnpm/patch-package/dist/patch/read.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.readPatch = void 0;
    var chalk_1 = __importDefault2(require_source2());
    var fs_extra_1 = require_lib20();
    var path_1 = require_path3();
    var path_2 = __require("path");
    var parse_1 = require_parse9();
    function readPatch({ patchFilePath, packageDetails, patchDir }) {
      try {
        return (0, parse_1.parsePatchFile)((0, fs_extra_1.readFileSync)(patchFilePath).toString());
      } catch (e) {
        if (packageDetails == null || patchDir == null) {
          throw e;
        }
        const fixupSteps = [];
        const relativePatchFilePath = (0, path_2.normalize)((0, path_1.relative)(process.cwd(), patchFilePath));
        const patchBaseDir = relativePatchFilePath.slice(0, relativePatchFilePath.indexOf(patchDir));
        if (patchBaseDir) {
          fixupSteps.push(`cd ${patchBaseDir}`);
        }
        fixupSteps.push(`patch -p1 -i ${relativePatchFilePath.slice(relativePatchFilePath.indexOf(patchDir))}`);
        fixupSteps.push(`npx patch-package ${packageDetails.pathSpecifier}`);
        if (patchBaseDir) {
          fixupSteps.push(`cd ${(0, path_1.relative)((0, path_1.resolve)(process.cwd(), patchBaseDir), process.cwd())}`);
        }
        console.error(`
${chalk_1.default.red.bold("**ERROR**")} ${chalk_1.default.red(`Failed to apply patch for package ${chalk_1.default.bold(packageDetails.humanReadablePathSpecifier)}`)}
    
  This happened because the patch file ${relativePatchFilePath} could not be parsed.
   
  If you just upgraded patch-package, you can try running:
  
    ${fixupSteps.join("\n    ")}
    
  Otherwise, try manually creating the patch file again.
  
  If the problem persists, please submit a bug report:
  
    https://github.com/ds300/patch-package/issues/new?title=Patch+file+parse+error&body=%3CPlease+attach+the+patch+file+in+question%3E

`);
        process.exit(1);
      }
      return [];
    }
    exports2.readPatch = readPatch;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/patch-package/0.0.1/10551b057f76f10acf36de62d8c913b5d551bf7778c03b18494ed39bb5d39a4d/node_modules/@pnpm/patch-package/dist/packageIsDevDependency.js
var require_packageIsDevDependency = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/patch-package/0.0.1/10551b057f76f10acf36de62d8c913b5d551bf7778c03b18494ed39bb5d39a4d/node_modules/@pnpm/patch-package/dist/packageIsDevDependency.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.packageIsDevDependency = void 0;
    var path_1 = require_path3();
    var fs_1 = __require("fs");
    function packageIsDevDependency({ appPath, packageDetails }) {
      const packageJsonPath = (0, path_1.join)(appPath, "package.json");
      if (!(0, fs_1.existsSync)(packageJsonPath)) {
        return false;
      }
      const { devDependencies } = __require(packageJsonPath);
      return Boolean(devDependencies && devDependencies[packageDetails.packageNames[0]]);
    }
    exports2.packageIsDevDependency = packageIsDevDependency;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/patch-package/0.0.1/10551b057f76f10acf36de62d8c913b5d551bf7778c03b18494ed39bb5d39a4d/node_modules/@pnpm/patch-package/dist/applyPatches.js
var require_applyPatches = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/patch-package/0.0.1/10551b057f76f10acf36de62d8c913b5d551bf7778c03b18494ed39bb5d39a4d/node_modules/@pnpm/patch-package/dist/applyPatches.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.applyPatch = exports2.applyPatchesForApp = void 0;
    var chalk_1 = __importDefault2(require_source2());
    var patchFs_1 = require_patchFs2();
    var apply_1 = require_apply();
    var fs_extra_1 = require_lib20();
    var path_1 = require_path3();
    var path_2 = __require("path");
    var PackageDetails_1 = require_PackageDetails();
    var reverse_1 = require_reverse();
    var semver_12 = __importDefault2(require_semver2());
    var read_1 = require_read();
    var packageIsDevDependency_1 = require_packageIsDevDependency();
    var PatchApplicationError = class extends Error {
      constructor(msg) {
        super(msg);
      }
    };
    function findPatchFiles(patchesDirectory) {
      if (!(0, fs_extra_1.existsSync)(patchesDirectory)) {
        return [];
      }
      return (0, patchFs_1.getPatchFiles)(patchesDirectory);
    }
    function getInstalledPackageVersion({ appPath, path: path218, pathSpecifier, isDevOnly, patchFilename }) {
      const packageDir = (0, path_1.join)(appPath, path218);
      if (!(0, fs_extra_1.existsSync)(packageDir)) {
        if (process.env.NODE_ENV === "production" && isDevOnly) {
          return null;
        }
        let err = `${chalk_1.default.red("Error:")} Patch file found for package ${path_2.posix.basename(pathSpecifier)} which is not present at ${(0, path_1.relative)(".", packageDir)}`;
        if (!isDevOnly && process.env.NODE_ENV === "production") {
          err += `

  If this package is a dev dependency, rename the patch file to
  
    ${chalk_1.default.bold(patchFilename.replace(".patch", ".dev.patch"))}
`;
        }
        throw new PatchApplicationError(err);
      }
      const { version: version2 } = __require((0, path_1.join)(packageDir, "package.json"));
      const result2 = semver_12.default.valid(version2);
      if (result2 === null) {
        throw new PatchApplicationError(`${chalk_1.default.red("Error:")} Version string '${version2}' cannot be parsed from ${(0, path_1.join)(packageDir, "package.json")}`);
      }
      return result2;
    }
    function applyPatchesForApp({ appPath, reverse: reverse3, patchDir, shouldExitWithError, shouldExitWithWarning }) {
      const patchesDirectory = (0, path_1.join)(appPath, patchDir);
      const files = findPatchFiles(patchesDirectory);
      if (files.length === 0) {
        console.error(chalk_1.default.blueBright("No patch files found"));
        return;
      }
      const errors2 = [];
      const warnings = [];
      for (const filename of files) {
        try {
          const packageDetails = (0, PackageDetails_1.getPackageDetailsFromPatchFilename)(filename);
          if (!packageDetails) {
            warnings.push(`Unrecognized patch file in patches directory ${filename}`);
            continue;
          }
          const { name, version: version2, path: path218, pathSpecifier, isDevOnly, patchFilename } = packageDetails;
          const installedPackageVersion = getInstalledPackageVersion({
            appPath,
            path: path218,
            pathSpecifier,
            isDevOnly: isDevOnly || // check for direct-dependents in prod
            process.env.NODE_ENV === "production" && (0, packageIsDevDependency_1.packageIsDevDependency)({ appPath, packageDetails }),
            patchFilename
          });
          if (!installedPackageVersion) {
            console.log(`Skipping dev-only ${chalk_1.default.bold(pathSpecifier)}@${version2} ${chalk_1.default.blue("\u2714")}`);
            continue;
          }
          if (applyPatch3({
            patchFilePath: (0, path_1.resolve)(patchesDirectory, filename),
            reverse: reverse3,
            packageDetails,
            patchDir
          })) {
            if (installedPackageVersion !== version2) {
              warnings.push(createVersionMismatchWarning({
                packageName: name,
                actualVersion: installedPackageVersion,
                originalVersion: version2,
                pathSpecifier,
                path: path218
              }));
            }
            console.log(`${chalk_1.default.bold(pathSpecifier)}@${version2} ${chalk_1.default.green("\u2714")}`);
          } else if (installedPackageVersion === version2) {
            errors2.push(createBrokenPatchFileError({
              packageName: name,
              patchFileName: filename,
              pathSpecifier,
              path: path218
            }));
          } else {
            errors2.push(createPatchApplictionFailureError({
              packageName: name,
              actualVersion: installedPackageVersion,
              originalVersion: version2,
              patchFileName: filename,
              path: path218,
              pathSpecifier
            }));
          }
        } catch (error) {
          if (error instanceof PatchApplicationError) {
            errors2.push(error.message);
          } else {
            errors2.push(createUnexpectedError({ filename, error }));
          }
        }
      }
      for (const warning of warnings) {
        console.warn(warning);
      }
      for (const error of errors2) {
        console.error(error);
      }
      const problemsSummary = [];
      if (warnings.length) {
        problemsSummary.push(chalk_1.default.yellow(`${warnings.length} warning(s)`));
      }
      if (errors2.length) {
        problemsSummary.push(chalk_1.default.red(`${errors2.length} error(s)`));
      }
      if (problemsSummary.length) {
        console.error("---");
        console.error("patch-package finished with", problemsSummary.join(", ") + ".");
      }
      if (errors2.length && shouldExitWithError) {
        process.exit(1);
      }
      if (warnings.length && shouldExitWithWarning) {
        process.exit(1);
      }
      process.exit(0);
    }
    exports2.applyPatchesForApp = applyPatchesForApp;
    function applyPatch3({ patchFilePath, reverse: reverse3, packageDetails, patchDir }) {
      const patch = (0, read_1.readPatch)({ patchFilePath, packageDetails, patchDir });
      try {
        (0, apply_1.executeEffects)(reverse3 ? (0, reverse_1.reversePatch)(patch) : patch, { dryRun: false });
      } catch (e) {
        try {
          (0, apply_1.executeEffects)(reverse3 ? patch : (0, reverse_1.reversePatch)(patch), { dryRun: true });
        } catch (e2) {
          return false;
        }
      }
      return true;
    }
    exports2.applyPatch = applyPatch3;
    function createVersionMismatchWarning({ packageName, actualVersion, originalVersion, pathSpecifier, path: path218 }) {
      return `
${chalk_1.default.yellow("Warning:")} patch-package detected a patch file version mismatch

  Don't worry! This is probably fine. The patch was still applied
  successfully. Here's the deets:

  Patch file created for

    ${packageName}@${chalk_1.default.bold(originalVersion)}

  applied to

    ${packageName}@${chalk_1.default.bold(actualVersion)}
  
  At path
  
    ${path218}

  This warning is just to give you a heads-up. There is a small chance of
  breakage even though the patch was applied successfully. Make sure the package
  still behaves like you expect (you wrote tests, right?) and then run

    ${chalk_1.default.bold(`patch-package ${pathSpecifier}`)}

  to update the version in the patch file name and make this warning go away.
`;
    }
    function createBrokenPatchFileError({ packageName, patchFileName, path: path218, pathSpecifier }) {
      return `
${chalk_1.default.red.bold("**ERROR**")} ${chalk_1.default.red(`Failed to apply patch for package ${chalk_1.default.bold(packageName)} at path`)}
  
    ${path218}

  This error was caused because patch-package cannot apply the following patch file:

    patches/${patchFileName}

  Try removing node_modules and trying again. If that doesn't work, maybe there was
  an accidental change made to the patch file? Try recreating it by manually
  editing the appropriate files and running:
  
    patch-package ${pathSpecifier}
  
  If that doesn't work, then it's a bug in patch-package, so please submit a bug
  report. Thanks!

    https://github.com/ds300/patch-package/issues
    
`;
    }
    function createPatchApplictionFailureError({ packageName, actualVersion, originalVersion, patchFileName, path: path218, pathSpecifier }) {
      return `
${chalk_1.default.red.bold("**ERROR**")} ${chalk_1.default.red(`Failed to apply patch for package ${chalk_1.default.bold(packageName)} at path`)}
  
    ${path218}

  This error was caused because ${chalk_1.default.bold(packageName)} has changed since you
  made the patch file for it. This introduced conflicts with your patch,
  just like a merge conflict in Git when separate incompatible changes are
  made to the same piece of code.

  Maybe this means your patch file is no longer necessary, in which case
  hooray! Just delete it!

  Otherwise, you need to generate a new patch file.

  To generate a new one, just repeat the steps you made to generate the first
  one.

  i.e. manually make the appropriate file changes, then run 

    patch-package ${pathSpecifier}

  Info:
    Patch file: patches/${patchFileName}
    Patch was made for version: ${chalk_1.default.green.bold(originalVersion)}
    Installed version: ${chalk_1.default.red.bold(actualVersion)}
`;
    }
    function createUnexpectedError({ filename, error }) {
      return `
${chalk_1.default.red.bold("**ERROR**")} ${chalk_1.default.red(`Failed to apply patch file ${chalk_1.default.bold(filename)}`)}
  
${error.stack}

  `;
    }
  }
});

// ../patching/apply-patch/lib/index.js
function applyPatchToDir(opts2) {
  const cwd = process.cwd();
  process.chdir(opts2.patchedDir);
  let success = false;
  try {
    success = (0, import_applyPatches.applyPatch)({
      patchFilePath: opts2.patchFilePath
    });
  } catch (err) {
    if (err.code === "ENOENT") {
      throw new PnpmError("PATCH_NOT_FOUND", `Patch file not found: ${opts2.patchFilePath}`);
    }
    throw new PnpmError("INVALID_PATCH", `Applying patch "${opts2.patchFilePath}" failed: ${err.message}`);
  } finally {
    process.chdir(cwd);
  }
  if (!success) {
    throw new PnpmError("PATCH_FAILED", `Could not apply patch ${opts2.patchFilePath} to ${opts2.patchedDir}`);
  }
  return success;
}
var import_applyPatches;
var init_lib109 = __esm({
  "../patching/apply-patch/lib/index.js"() {
    "use strict";
    init_lib2();
    import_applyPatches = __toESM(require_applyPatches(), 1);
  }
});

// ../building/during-install/lib/buildSequence.js
function buildSequence(depGraph, rootDepPaths) {
  const nodesToBuild = /* @__PURE__ */ new Set();
  getSubgraphToBuild2(depGraph, rootDepPaths, nodesToBuild, /* @__PURE__ */ new Set());
  const onlyFromBuildGraph = filter_default((depPath) => nodesToBuild.has(depPath));
  const nodesToBuildArray = Array.from(nodesToBuild);
  const graph = new Map(nodesToBuildArray.map((depPath) => [depPath, onlyFromBuildGraph(Object.values(depGraph[depPath].children))]));
  const graphSequencerResult = graphSequencer(graph, nodesToBuildArray);
  const chunks = graphSequencerResult.chunks;
  return chunks;
}
function getSubgraphToBuild2(graph, entryNodes, nodesToBuild, walked) {
  let currentShouldBeBuilt = false;
  for (const depPath of entryNodes) {
    const node = graph[depPath];
    if (!node)
      continue;
    if (walked.has(depPath))
      continue;
    walked.add(depPath);
    const childShouldBeBuilt = getSubgraphToBuild2(graph, Object.values(node.children), nodesToBuild, walked) || node.requiresBuild || node.patch != null;
    if (childShouldBeBuilt) {
      nodesToBuild.add(depPath);
      currentShouldBeBuilt = true;
    }
  }
  return currentShouldBeBuilt;
}
var init_buildSequence = __esm({
  "../building/during-install/lib/buildSequence.js"() {
    "use strict";
    init_lib73();
    init_es();
  }
});

// ../building/during-install/lib/index.js
import assert9 from "node:assert";
import fs59 from "node:fs/promises";
import path104 from "node:path";
import util33 from "node:util";
async function buildModules(depGraph, rootDepPaths, opts2) {
  if (!rootDepPaths.length)
    return {};
  const warn = (message) => {
    logger.warn({ message, prefix: opts2.lockfileDir });
  };
  const nodeVersion = findRuntimeNodeVersion(Object.keys(depGraph));
  const buildDepOpts = {
    ...opts2,
    builtHoistedDeps: opts2.hoistedLocations ? {} : void 0,
    nodeVersion,
    warn
  };
  const chunks = buildSequence(depGraph, rootDepPaths);
  if (!chunks.length)
    return {};
  const ignoredBuilds = /* @__PURE__ */ new Set();
  const allowBuild = opts2.allowBuild ?? (() => void 0);
  const groups = chunks.map((chunk) => {
    chunk = chunk.filter((depPath) => {
      const node = depGraph[depPath];
      return (node.requiresBuild || node.patch != null) && !node.isBuilt;
    });
    if (opts2.depsToBuild != null) {
      chunk = chunk.filter((depPath) => opts2.depsToBuild.has(depPath));
    }
    return chunk.map((depPath) => () => {
      let ignoreScripts = Boolean(buildDepOpts.ignoreScripts);
      if (!ignoreScripts) {
        const node = depGraph[depPath];
        if (node.requiresBuild) {
          const allowed = allowBuild(node.name, node.version);
          switch (allowed) {
            case false:
              ignoreScripts = true;
              break;
            case void 0:
              ignoredBuilds.add(node.depPath);
              ignoreScripts = true;
              break;
          }
        }
      }
      return buildDependency(depPath, depGraph, {
        ...buildDepOpts,
        ignoreScripts
      });
    });
  });
  const patchErrors = [];
  const groupsWithPatchErrors = groups.map((group) => group.map((task) => async () => {
    try {
      await task();
    } catch (err) {
      if (util33.types.isNativeError(err) && "code" in err && err.code === "ERR_PNPM_PATCH_FAILED") {
        patchErrors.push(err);
      } else {
        throw err;
      }
    }
  }));
  await runGroups(getWorkspaceConcurrency(opts2.childConcurrency), groupsWithPatchErrors);
  if (patchErrors.length > 0) {
    throw patchErrors[0];
  }
  return { ignoredBuilds };
}
async function buildDependency(depPath, depGraph, opts2) {
  const depNode = depGraph[depPath];
  if (!depNode.filesIndexFile)
    return;
  if (opts2.builtHoistedDeps) {
    if (opts2.builtHoistedDeps[depNode.depPath]) {
      await opts2.builtHoistedDeps[depNode.depPath].promise;
      return;
    }
    opts2.builtHoistedDeps[depNode.depPath] = pDefer();
  }
  let buildSucceeded = false;
  try {
    await linkBinsOfDependencies(depNode, depGraph, opts2);
    let isPatched = false;
    if (depNode.patch) {
      if (!depNode.patch.patchFilePath) {
        throw new PnpmError("PATCH_FILE_PATH_MISSING", `Cannot apply patch for ${depPath}: patch file path is missing`, { hint: "Ensure the package is listed in patchedDependencies configuration" });
      }
      isPatched = applyPatchToDir({ patchedDir: depNode.dir, patchFilePath: depNode.patch.patchFilePath });
    }
    const hasSideEffects = !opts2.ignoreScripts && await runPostinstallHooks({
      depPath,
      extraBinPaths: opts2.extraBinPaths,
      extraEnv: opts2.extraEnv,
      initCwd: opts2.lockfileDir,
      optional: depNode.optional,
      pkgRoot: depNode.dir,
      rootModulesDir: opts2.rootModulesDir,
      scriptsPrependNodePath: opts2.scriptsPrependNodePath,
      scriptShell: opts2.scriptShell,
      shellEmulator: opts2.shellEmulator,
      unsafePerm: opts2.unsafePerm || false,
      userAgent: opts2.userAgent
    });
    if (opts2.enableGlobalVirtualStore) {
      await fs59.unlink(path104.join(depNode.dir, ".pnpm-needs-build")).catch(() => {
      });
    }
    if ((isPatched || hasSideEffects) && opts2.sideEffectsCacheWrite) {
      try {
        const sideEffectsCacheKey = calcDepState(depGraph, opts2.depsStateCache, depPath, {
          patchFileHash: depNode.patch?.hash,
          includeDepGraphHash: hasSideEffects,
          nodeVersion: opts2.nodeVersion
        });
        await opts2.storeController.upload(depNode.dir, {
          sideEffectsCacheKey,
          filesIndexFile: depNode.filesIndexFile
        });
      } catch (err) {
        assert9(util33.types.isNativeError(err));
        logger.warn({
          error: err,
          message: `An error occurred while uploading ${depNode.dir}`,
          prefix: opts2.lockfileDir
        });
      }
    }
    buildSucceeded = true;
  } catch (err) {
    assert9(util33.types.isNativeError(err));
    if (opts2.enableGlobalVirtualStore) {
      const hashDir = path104.resolve(depNode.dir, "../..");
      await fs59.rm(hashDir, { recursive: true, force: true });
    }
    if (depNode.optional) {
      skippedOptionalDependencyLogger.debug({
        details: err.toString(),
        package: {
          id: depNode.dir,
          name: depNode.name,
          version: depNode.version
        },
        prefix: opts2.lockfileDir,
        reason: "build_failure"
      });
      return;
    }
    throw err;
  } finally {
    if (buildSucceeded) {
      const hoistedLocationsOfDep = opts2.hoistedLocations?.[depNode.depPath];
      if (hoistedLocationsOfDep) {
        const currentHoistedLocation = path104.relative(opts2.lockfileDir, depNode.dir);
        const nonBuiltHoistedDeps = hoistedLocationsOfDep?.filter((hoistedLocation) => hoistedLocation !== currentHoistedLocation);
        await hardLinkDir(depNode.dir, nonBuiltHoistedDeps);
      }
    }
    if (opts2.builtHoistedDeps) {
      opts2.builtHoistedDeps[depNode.depPath].resolve();
    }
  }
}
async function linkBinsOfDependencies(depNode, depGraph, opts2) {
  const childrenToLink = opts2.optional ? depNode.children : pickBy_default((child, childAlias) => !depNode.optionalDependencies.has(childAlias), depNode.children);
  const binPath = path104.join(depNode.dir, "node_modules/.bin");
  const pkgNodes = [
    ...Object.entries(childrenToLink).map(([alias, childDepPath]) => ({ alias, dep: depGraph[childDepPath] })).filter(({ alias, dep }) => {
      if (!dep) {
        logger.debug({ message: `Failed to link bins of "${alias}" to "${binPath}". This is probably not an issue.` });
        return false;
      }
      return dep.hasBin && dep.installable !== false;
    }).map(({ dep }) => dep),
    depNode
  ];
  const pkgs = await Promise.all(pkgNodes.map(async (dep) => ({
    location: dep.dir,
    manifest: (await dep.fetching?.())?.bundledManifest ?? await safeReadPackageJsonFromDir(dep.dir) ?? {}
  })));
  await linkBinsOfPackages(pkgs, binPath, {
    extraNodePaths: opts2.extraNodePaths,
    preferSymlinkedExecutables: opts2.preferSymlinkedExecutables
  });
  if (depNode.hasBundledDependencies) {
    const bundledModules = path104.join(depNode.dir, "node_modules");
    await linkBins(bundledModules, binPath, {
      extraNodePaths: opts2.extraNodePaths,
      preferSymlinkedExecutables: opts2.preferSymlinkedExecutables,
      warn: opts2.warn
    });
  }
}
var init_lib110 = __esm({
  "../building/during-install/lib/index.js"() {
    "use strict";
    init_lib42();
    init_lib61();
    init_lib6();
    init_lib72();
    init_lib2();
    init_lib44();
    init_lib3();
    init_lib109();
    init_lib39();
    init_lib4();
    init_p_defer();
    init_es();
    init_lib43();
    init_buildSequence();
  }
});

// ../deps/graph-builder/lib/iteratePkgsForVirtualStore.js
import path105 from "node:path";
function* iteratePkgsForVirtualStore(lockfile, opts2) {
  const nodeVersion = findRuntimeNodeVersion(Object.keys(lockfile.packages ?? {}));
  if (opts2.enableGlobalVirtualStore) {
    for (const { hash: hash2, pkgMeta } of hashDependencyPaths(lockfile, {
      allowBuild: opts2.allowBuild,
      supportedArchitectures: opts2.supportedArchitectures,
      nodeVersion
    })) {
      yield {
        dirInVirtualStore: path105.join(opts2.globalVirtualStoreDir, hash2),
        pkgMeta
      };
    }
  } else if (lockfile.packages) {
    let graphNodeHashOpts;
    for (const depPath in lockfile.packages) {
      if (!Object.hasOwn(lockfile.packages, depPath)) {
        continue;
      }
      const pkgSnapshot = lockfile.packages[depPath];
      const { name, version: version2 } = nameVerFromPkgSnapshot(depPath, pkgSnapshot);
      const pkgMeta = {
        depPath,
        pkgIdWithPatchHash: getPkgIdWithPatchHash(depPath),
        name,
        version: version2,
        pkgSnapshot
      };
      let dirInVirtualStore;
      if (isRuntimeDepPath(depPath)) {
        graphNodeHashOpts ??= {
          cache: {},
          graph: lockfileToDepGraph(lockfile, opts2.supportedArchitectures),
          supportedArchitectures: opts2.supportedArchitectures,
          nodeVersion
        };
        const hash2 = calcGraphNodeHash(graphNodeHashOpts, pkgMeta);
        dirInVirtualStore = path105.join(opts2.globalVirtualStoreDir, hash2);
      } else {
        dirInVirtualStore = path105.join(opts2.virtualStoreDir, depPathToFilename(depPath, opts2.virtualStoreDirMaxLength));
      }
      yield {
        dirInVirtualStore,
        pkgMeta
      };
    }
  }
}
function hashDependencyPaths(lockfile, { allowBuild, supportedArchitectures, nodeVersion }) {
  const graph = lockfileToDepGraph(lockfile, supportedArchitectures);
  return iterateHashedGraphNodes(graph, iteratePkgMeta(lockfile, graph), allowBuild, supportedArchitectures, nodeVersion);
}
var init_iteratePkgsForVirtualStore = __esm({
  "../deps/graph-builder/lib/iteratePkgsForVirtualStore.js"() {
    "use strict";
    init_lib72();
    init_lib65();
    init_lib70();
  }
});

// ../deps/graph-builder/lib/lockfileToDepGraph.js
import fs60 from "node:fs";
import path106 from "node:path";
async function lockfileToDepGraph2(lockfile, currentLockfile, opts2) {
  const { graph, locationByDepPath, injectionTargetsByDepPath } = await buildGraphFromPackages(lockfile, currentLockfile, opts2);
  const _getChildrenPaths = getChildrenPaths.bind(null, {
    force: opts2.force,
    graph,
    lockfileDir: opts2.lockfileDir,
    registries: opts2.registries,
    sideEffectsCacheRead: opts2.sideEffectsCacheRead,
    skipped: opts2.skipped,
    storeController: opts2.storeController,
    storeDir: opts2.storeDir,
    virtualStoreDir: opts2.virtualStoreDir,
    virtualStoreDirMaxLength: opts2.virtualStoreDirMaxLength,
    locationByDepPath
  });
  for (const node of Object.values(graph)) {
    const pkgSnapshot = lockfile.packages[node.depPath];
    const allDeps = {
      ...pkgSnapshot.dependencies,
      ...opts2.include.optionalDependencies ? pkgSnapshot.optionalDependencies : {}
    };
    const peerDeps = pkgSnapshot.peerDependencies ? new Set(Object.keys(pkgSnapshot.peerDependencies)) : null;
    node.children = _getChildrenPaths(allDeps, peerDeps, ".");
  }
  const directDependenciesByImporterId = {};
  for (const importerId of opts2.importerIds) {
    const projectSnapshot = lockfile.importers[importerId];
    const rootDeps = {
      ...opts2.include.devDependencies ? projectSnapshot.devDependencies : {},
      ...opts2.include.dependencies ? projectSnapshot.dependencies : {},
      ...opts2.include.optionalDependencies ? projectSnapshot.optionalDependencies : {}
    };
    directDependenciesByImporterId[importerId] = _getChildrenPaths(rootDeps, null, importerId);
  }
  return { graph, directDependenciesByImporterId, injectionTargetsByDepPath };
}
async function buildGraphFromPackages(lockfile, currentLockfile, opts2) {
  const currentPackages = currentLockfile?.packages ?? {};
  const graph = {};
  const locationByDepPath = {};
  const injectionTargetsByDepPath = /* @__PURE__ */ new Map();
  const _getPatchInfo = getPatchInfo.bind(null, opts2.patchedDependencies);
  const promises = [];
  const pkgSnapshotsWithLocations = iteratePkgsForVirtualStore(lockfile, opts2);
  for (const { dirInVirtualStore, pkgMeta } of pkgSnapshotsWithLocations) {
    promises.push((async () => {
      const { pkgIdWithPatchHash, name: pkgName, version: pkgVersion, depPath, pkgSnapshot } = pkgMeta;
      if (opts2.skipped.has(depPath))
        return;
      const pkg = {
        name: pkgName,
        version: pkgVersion,
        engines: pkgSnapshot.engines,
        cpu: pkgSnapshot.cpu,
        os: pkgSnapshot.os,
        libc: pkgSnapshot.libc
      };
      const packageId = packageIdFromSnapshot(depPath, pkgSnapshot);
      if (!opts2.force && packageIsInstallable(packageId, pkg, {
        engineStrict: opts2.engineStrict,
        lockfileDir: opts2.lockfileDir,
        nodeVersion: opts2.nodeVersion,
        optional: pkgSnapshot.optional === true,
        supportedArchitectures: opts2.supportedArchitectures
      }) === false) {
        opts2.skipped.add(depPath);
        return;
      }
      const isDirectoryDep = "directory" in pkgSnapshot.resolution && pkgSnapshot.resolution.directory != null;
      if (isDirectoryDep && opts2.ignoreLocalPackages) {
        logger.info({
          message: `Skipping local dependency ${pkgName}@${pkgVersion} (file: protocol)`,
          prefix: opts2.lockfileDir
        });
        return;
      }
      const depIsPresent = !isDirectoryDep && currentPackages[depPath] && equals_default(currentPackages[depPath].dependencies, pkgSnapshot.dependencies);
      const depIntegrityIsUnchanged = isIntegrityEqual(pkgSnapshot.resolution, currentPackages[depPath]?.resolution);
      const modules = path106.join(dirInVirtualStore, "node_modules");
      const dir = path106.join(modules, pkgName);
      locationByDepPath[depPath] = dir;
      if (isDirectoryDep) {
        injectionTargetsByDepPath.set(depPath, [dir]);
      }
      const mightNeedBuild = opts2.enableGlobalVirtualStore && opts2.allowBuild?.(pkgName, pkgVersion) === true;
      let dirExists;
      if (depIsPresent && depIntegrityIsUnchanged && isEmpty_default(currentPackages[depPath].optionalDependencies ?? {}) && isEmpty_default(pkgSnapshot.optionalDependencies ?? {}) && !opts2.includeUnchangedDeps) {
        dirExists = await pathExists2(dir);
        if (dirExists) {
          if (!(mightNeedBuild && fs60.existsSync(path106.join(dir, ".pnpm-needs-build"))))
            return;
        } else {
          brokenModulesLogger.debug({ missing: dir });
        }
      }
      let fetchResponse;
      if (depIsPresent && depIntegrityIsUnchanged && equals_default(currentPackages[depPath].optionalDependencies, pkgSnapshot.optionalDependencies)) {
        if (dirExists ?? await pathExists2(dir)) {
          if (!(mightNeedBuild && fs60.existsSync(path106.join(dir, ".pnpm-needs-build")))) {
            fetchResponse = {};
          }
        } else {
          brokenModulesLogger.debug({ missing: dir });
        }
      }
      if (!fetchResponse && opts2.enableGlobalVirtualStore && !isDirectoryDep && !opts2.force) {
        if (dirExists ?? await pathExists2(dir)) {
          if (!(mightNeedBuild && fs60.existsSync(path106.join(dir, ".pnpm-needs-build")))) {
            fetchResponse = {};
          }
        }
      }
      if (!fetchResponse) {
        const resolution = pkgSnapshotToResolution(depPath, pkgSnapshot, opts2.registries);
        progressLogger.debug({ packageId, requester: opts2.lockfileDir, status: "resolved" });
        try {
          fetchResponse = await opts2.storeController.fetchPackage({
            allowBuild: opts2.allowBuild,
            force: false,
            lockfileDir: opts2.lockfileDir,
            ignoreScripts: opts2.ignoreScripts,
            pkg: { name: pkgName, version: pkgVersion, id: packageId, resolution },
            supportedArchitectures: opts2.supportedArchitectures
          });
        } catch (err) {
          if (pkgSnapshot.optional)
            return;
          throw err;
        }
      }
      graph[dir] = {
        children: {},
        pkgIdWithPatchHash,
        resolution: pkgSnapshot.resolution,
        depPath,
        dir,
        fetching: fetchResponse.fetching,
        filesIndexFile: fetchResponse.filesIndexFile,
        forceImportPackage: !depIntegrityIsUnchanged,
        hasBin: pkgSnapshot.hasBin === true,
        hasBundledDependencies: pkgSnapshot.bundledDependencies != null,
        modules,
        name: pkgName,
        version: pkgVersion,
        optional: !!pkgSnapshot.optional,
        optionalDependencies: new Set(Object.keys(pkgSnapshot.optionalDependencies ?? {})),
        patch: _getPatchInfo(pkgName, pkgVersion)
      };
    })());
  }
  await Promise.all(promises);
  return { graph, locationByDepPath, injectionTargetsByDepPath };
}
function getChildrenPaths(ctx, allDeps, peerDeps, importerId) {
  const children = {};
  for (const [alias, ref] of Object.entries(allDeps)) {
    const childDepPath = refToRelative(ref, alias);
    if (childDepPath === null) {
      children[alias] = path106.resolve(ctx.lockfileDir, importerId, ref.slice(5));
      continue;
    }
    const childRelDepPath = refToRelative(ref, alias);
    if (ctx.locationByDepPath[childRelDepPath]) {
      children[alias] = ctx.locationByDepPath[childRelDepPath];
    } else if (ctx.graph[childRelDepPath]) {
      children[alias] = ctx.graph[childRelDepPath].dir;
    } else if (ref.startsWith("file:")) {
      children[alias] = path106.resolve(ctx.lockfileDir, ref.slice(5));
    } else if (!ctx.skipped.has(childRelDepPath) && (peerDeps == null || !peerDeps.has(alias))) {
      throw new Error(`${childRelDepPath} not found in ${WANTED_LOCKFILE}`);
    }
  }
  return children;
}
function isIntegrityEqual(resolutionA, resolutionB) {
  const integrityA = resolutionA?.integrity;
  const integrityB = resolutionB?.integrity;
  return integrityA === integrityB;
}
var brokenModulesLogger;
var init_lockfileToDepGraph = __esm({
  "../deps/graph-builder/lib/lockfileToDepGraph.js"() {
    "use strict";
    init_lib28();
    init_lib();
    init_lib6();
    init_lib65();
    init_lib70();
    init_lib3();
    init_lib105();
    init_path_exists();
    init_es();
    init_iteratePkgsForVirtualStore();
    brokenModulesLogger = logger("_broken_node_modules");
  }
});

// ../deps/graph-builder/lib/index.js
var init_lib111 = __esm({
  "../deps/graph-builder/lib/index.js"() {
    "use strict";
    init_lockfileToDepGraph();
  }
});

// ../fs/symlink-dependency/lib/symlinkDirectRootDependency.js
import { promises as fs61 } from "node:fs";
import path107 from "node:path";
import util34 from "node:util";
async function symlinkDirectRootDependency(dependencyLocation, destModulesDir, importAs, opts2) {
  let destModulesDirReal;
  try {
    destModulesDirReal = await fs61.realpath(destModulesDir);
  } catch (err) {
    if (util34.types.isNativeError(err) && "code" in err && err.code === "ENOENT") {
      await fs61.mkdir(destModulesDir, { recursive: true });
      destModulesDirReal = await fs61.realpath(destModulesDir);
    } else {
      throw err;
    }
  }
  const dest = path107.join(destModulesDirReal, importAs);
  const { reused } = await symlinkDir(dependencyLocation, dest);
  if (reused)
    return;
  rootLogger.debug({
    added: {
      dependencyType: opts2.fromDependenciesField && DEP_TYPE_BY_DEPS_FIELD_NAME[opts2.fromDependenciesField],
      linkedFrom: dependencyLocation,
      name: importAs,
      realName: opts2.linkedPackage.name,
      version: opts2.linkedPackage.version
    },
    prefix: opts2.prefix
  });
}
var DEP_TYPE_BY_DEPS_FIELD_NAME;
var init_symlinkDirectRootDependency = __esm({
  "../fs/symlink-dependency/lib/symlinkDirectRootDependency.js"() {
    "use strict";
    init_lib6();
    init_dist4();
    DEP_TYPE_BY_DEPS_FIELD_NAME = {
      dependencies: "prod",
      devDependencies: "dev",
      optionalDependencies: "optional"
    };
  }
});

// ../fs/symlink-dependency/lib/index.js
import path108 from "node:path";
async function symlinkDependency(dependencyRealLocation, destModulesDir, importAs) {
  const link2 = path108.join(destModulesDir, importAs);
  linkLogger.debug({ target: dependencyRealLocation, link: link2 });
  return symlinkDir(dependencyRealLocation, link2);
}
var init_lib112 = __esm({
  "../fs/symlink-dependency/lib/index.js"() {
    "use strict";
    init_lib6();
    init_dist4();
    init_symlinkDirectRootDependency();
  }
});

// ../installing/linking/direct-dep-linker/lib/linkDirectDeps.js
import fs62 from "node:fs";
import path109 from "node:path";
async function linkDirectDeps(projects, opts2) {
  if (opts2.dedupe && projects["."] && Object.keys(projects).length > 1) {
    return linkDirectDepsAndDedupe(projects["."], omit_default(["."], projects));
  }
  const numberOfLinkedDeps = await Promise.all(Object.values(projects).map(linkDirectDepsOfProject));
  return numberOfLinkedDeps.reduce((sum, count2) => sum + count2, 0);
}
async function linkDirectDepsAndDedupe(rootProject, projects) {
  const linkedDeps = await linkDirectDepsOfProject(rootProject);
  const pkgsLinkedToRoot = await readLinkedDeps(rootProject.modulesDir);
  await Promise.all(Object.values(projects).map(async (project) => {
    const deletedAll = await deletePkgsPresentInRoot(project.modulesDir, pkgsLinkedToRoot);
    const dependencies = omitDepsFromRoot(project.dependencies, pkgsLinkedToRoot);
    if (dependencies.length > 0) {
      await linkDirectDepsOfProject({
        ...project,
        dependencies
      });
      return;
    }
    if (deletedAll) {
      await rimraf(project.modulesDir);
    }
  }));
  return linkedDeps;
}
function omitDepsFromRoot(deps, pkgsLinkedToRoot) {
  return deps.filter(({ dir }) => !pkgsLinkedToRoot.some(pathsEqual.bind(null, dir)));
}
function pathsEqual(path1, path218) {
  return path109.relative(path1, path218) === "";
}
async function readLinkedDeps(modulesDir) {
  const deps = await readModulesDir(modulesDir) ?? [];
  return Promise.all(deps.map((alias) => resolveLinkTargetOrFile(path109.join(modulesDir, alias))));
}
async function deletePkgsPresentInRoot(modulesDir, pkgsLinkedToRoot) {
  const pkgsLinkedToCurrentProject = await readLinkedDepsWithRealLocations(modulesDir);
  const pkgsToDelete = pkgsLinkedToCurrentProject.filter(({ linkedFrom, linkedTo }) => linkedFrom !== linkedTo && pkgsLinkedToRoot.some(pathsEqual.bind(null, linkedFrom)));
  await Promise.all(pkgsToDelete.map(({ linkedTo }) => fs62.promises.unlink(linkedTo)));
  return pkgsToDelete.length === pkgsLinkedToCurrentProject.length;
}
async function readLinkedDepsWithRealLocations(modulesDir) {
  const deps = await readModulesDir(modulesDir) ?? [];
  return Promise.all(deps.map(async (alias) => {
    const linkedTo = path109.join(modulesDir, alias);
    return {
      linkedTo,
      linkedFrom: await resolveLinkTargetOrFile(linkedTo)
    };
  }));
}
async function resolveLinkTargetOrFile(filePath) {
  try {
    return await resolveLinkTarget(filePath);
  } catch (err) {
    if (err.code !== "EINVAL" && err.code !== "UNKNOWN")
      throw err;
    return filePath;
  }
}
async function linkDirectDepsOfProject(project) {
  let linkedDeps = 0;
  await Promise.all(project.dependencies.map(async (dep) => {
    if (dep.isExternalLink) {
      await symlinkDirectRootDependency(dep.dir, project.modulesDir, dep.alias, {
        fromDependenciesField: dep.dependencyType === "dev" && "devDependencies" || dep.dependencyType === "optional" && "optionalDependencies" || "dependencies",
        linkedPackage: {
          name: dep.name,
          version: dep.version
        },
        prefix: project.dir
      });
      return;
    }
    if ((await symlinkDependency(dep.dir, project.modulesDir, dep.alias)).reused) {
      return;
    }
    rootLogger.debug({
      added: {
        dependencyType: dep.dependencyType,
        id: dep.id,
        latest: dep.latest,
        name: dep.alias,
        realName: dep.name,
        version: dep.version
      },
      prefix: project.dir
    });
    linkedDeps++;
  }));
  return linkedDeps;
}
var init_linkDirectDeps = __esm({
  "../installing/linking/direct-dep-linker/lib/linkDirectDeps.js"() {
    "use strict";
    init_lib6();
    init_lib41();
    init_lib112();
    init_rimraf();
    init_es();
    init_resolve_link_target();
  }
});

// ../installing/linking/direct-dep-linker/lib/index.js
var init_lib113 = __esm({
  "../installing/linking/direct-dep-linker/lib/index.js"() {
    "use strict";
    init_linkDirectDeps();
  }
});

// ../installing/linking/hoist/lib/index.js
import fs63 from "node:fs";
import path110 from "node:path";
async function hoist(opts2) {
  const result2 = getHoistedDependencies(opts2);
  if (!result2)
    return null;
  const { hoistedDependencies, hoistedAliasesWithBins, hoistedDependenciesByNodeId } = result2;
  await symlinkHoistedDependencies(hoistedDependenciesByNodeId, {
    graph: opts2.graph,
    directDepsByImporterId: opts2.directDepsByImporterId,
    privateHoistedModulesDir: opts2.privateHoistedModulesDir,
    publicHoistedModulesDir: opts2.publicHoistedModulesDir,
    virtualStoreDir: opts2.virtualStoreDir,
    virtualStoreDirMaxLength: opts2.virtualStoreDirMaxLength,
    hoistedWorkspacePackages: opts2.hoistedWorkspacePackages
  });
  await linkAllBins(opts2.privateHoistedModulesDir, {
    extraNodePaths: opts2.extraNodePath,
    hoistedAliasesWithBins,
    preferSymlinkedExecutables: opts2.preferSymlinkedExecutables
  });
  return hoistedDependencies;
}
function getHoistedDependencies(opts2) {
  if (Object.keys(opts2.graph ?? {}).length === 0)
    return null;
  const { directDeps, step: step2 } = graphWalker(opts2.graph, opts2.directDepsByImporterId);
  const hoistedWorkspaceDeps = Object.fromEntries(Object.entries(opts2.hoistedWorkspacePackages ?? {}).map(([id, { name }]) => [name, id]));
  const deps = [
    {
      children: {
        ...hoistedWorkspaceDeps,
        ...directDeps.reduce((acc, { alias, nodeId }) => {
          if (!acc[alias]) {
            acc[alias] = nodeId;
          }
          return acc;
        }, {})
      },
      nodeId: "",
      depth: -1
    },
    ...getDependencies(0, step2)
  ];
  const getAliasHoistType = createGetAliasHoistType(opts2.publicHoistPattern, opts2.privateHoistPattern);
  return hoistGraph(deps, opts2.directDepsByImporterId["."] ?? /* @__PURE__ */ new Map(), {
    getAliasHoistType,
    graph: opts2.graph,
    skipped: opts2.skipped
  });
}
function createGetAliasHoistType(publicHoistPattern, privateHoistPattern) {
  const publicMatcher = createMatcher(publicHoistPattern);
  const privateMatcher = createMatcher(privateHoistPattern);
  return (alias) => {
    if (publicMatcher(alias))
      return "public";
    if (privateMatcher(alias))
      return "private";
    return false;
  };
}
async function linkAllBins(modulesDir, opts2) {
  const bin = path110.join(modulesDir, ".bin");
  const warn = (message, code) => {
    if (code === "BINARIES_CONFLICT")
      return;
    logger.info({ message, prefix: path110.join(modulesDir, "../..") });
  };
  try {
    await linkBinsOfPkgsByAliases(opts2.hoistedAliasesWithBins, bin, {
      allowExoticManifests: true,
      extraNodePaths: opts2.extraNodePaths,
      modulesDir,
      preferSymlinkedExecutables: opts2.preferSymlinkedExecutables,
      warn
    });
  } catch (err) {
  }
}
function getDependencies(depth, step2) {
  const deps = [];
  const nextSteps = [];
  for (const { node, nodeId, next: next2 } of step2.dependencies) {
    deps.push({
      children: node.children,
      nodeId,
      depth
    });
    nextSteps.push(next2());
  }
  for (const depPath of step2.missing) {
    logger.debug({ message: `No entry for "${depPath}" in ${WANTED_LOCKFILE}` });
  }
  return [
    ...deps,
    ...nextSteps.flatMap(getDependencies.bind(null, depth + 1))
  ];
}
function hoistGraph(depNodes, currentSpecifiers, opts2) {
  const hoistedAliases = new Set(currentSpecifiers.keys());
  const hoistedDependencies = /* @__PURE__ */ Object.create(null);
  const hoistedDependenciesByNodeId = /* @__PURE__ */ new Map();
  const hoistedAliasesWithBins = /* @__PURE__ */ new Set();
  depNodes.sort((a2, b) => {
    const depthDiff = a2.depth - b.depth;
    return depthDiff === 0 ? (0, import_util12.lexCompare)(a2.nodeId, b.nodeId) : depthDiff;
  }).forEach((depNode) => {
    for (const [childAlias, childNodeId] of Object.entries(depNode.children)) {
      const hoist3 = opts2.getAliasHoistType(childAlias);
      if (!hoist3)
        continue;
      const childAliasNormalized = childAlias.toLowerCase();
      if (hoistedAliases.has(childAliasNormalized)) {
        continue;
      }
      if (!hoistedDependenciesByNodeId.has(childNodeId)) {
        hoistedDependenciesByNodeId.set(childNodeId, {});
      }
      hoistedDependenciesByNodeId.get(childNodeId)[childAlias] = hoist3;
      const node = opts2.graph[childNodeId];
      if (node?.depPath == null || opts2.skipped.has(node.depPath)) {
        continue;
      }
      if (node.hasBin) {
        hoistedAliasesWithBins.add(childAlias);
      }
      hoistedAliases.add(childAliasNormalized);
      if (!hoistedDependencies[node.depPath]) {
        hoistedDependencies[node.depPath] = {};
      }
      hoistedDependencies[node.depPath][childAlias] = hoist3;
    }
  });
  return {
    hoistedDependencies,
    hoistedDependenciesByNodeId,
    hoistedAliasesWithBins: Array.from(hoistedAliasesWithBins)
  };
}
async function symlinkHoistedDependencies(hoistedDependenciesByNodeId, opts2) {
  const symlink = symlinkHoistedDependency.bind(null, opts2);
  const promises = [];
  for (const [hoistedDepNodeId, pkgAliases] of hoistedDependenciesByNodeId.entries()) {
    promises.push((async () => {
      const node = opts2.graph[hoistedDepNodeId];
      let depLocation;
      if (node) {
        depLocation = node.dir;
      } else {
        if (!opts2.directDepsByImporterId[hoistedDepNodeId]) {
          hoistLogger.debug({ hoistFailedFor: hoistedDepNodeId });
          return;
        }
        depLocation = opts2.hoistedWorkspacePackages[hoistedDepNodeId].dir;
      }
      await Promise.all(Object.entries(pkgAliases).map(async ([pkgAlias, hoistType]) => {
        const targetDir = hoistType === "public" ? opts2.publicHoistedModulesDir : opts2.privateHoistedModulesDir;
        const dest = path110.join(targetDir, pkgAlias);
        return symlink(depLocation, dest);
      }));
    })());
  }
  await Promise.all(promises);
}
async function symlinkHoistedDependency(opts2, depLocation, dest) {
  try {
    await symlinkDir(depLocation, dest, { overwrite: false });
    linkLogger.debug({ target: dest, link: depLocation });
    return;
  } catch (err) {
    if (err.code !== "EEXIST" && err.code !== "EISDIR")
      throw err;
  }
  let existingSymlink;
  try {
    existingSymlink = await resolveLinkTarget(dest);
  } catch {
    hoistLogger.debug({
      skipped: dest,
      reason: "a directory is present at the target location"
    });
    return;
  }
  if (!isSubdir(opts2.virtualStoreDir, existingSymlink)) {
    hoistLogger.debug({
      skipped: dest,
      existingSymlink,
      reason: "an external symlink is present at the target location"
    });
    return;
  }
  await fs63.promises.unlink(dest);
  await symlinkDir(depLocation, dest);
  linkLogger.debug({ target: dest, link: depLocation });
}
function graphWalker(graph, directDepsByImporterId, opts2) {
  const startNodeIds = [];
  const allDirectDeps = [];
  for (const directDeps of Object.values(directDepsByImporterId)) {
    for (const [alias, nodeId] of directDeps.entries()) {
      const depNode = graph[nodeId];
      if (depNode == null)
        continue;
      startNodeIds.push(nodeId);
      allDirectDeps.push({ alias, nodeId });
    }
  }
  const visited = /* @__PURE__ */ new Set();
  return {
    directDeps: allDirectDeps,
    step: makeStep({
      includeOptionalDependencies: opts2?.include?.optionalDependencies !== false,
      graph,
      visited,
      skipped: opts2?.skipped
    }, startNodeIds)
  };
}
function makeStep(ctx, nextNodeIds) {
  const result2 = {
    dependencies: [],
    links: [],
    missing: []
  };
  const _next = collectChildNodeIds.bind(null, {
    includeOptionalDependencies: ctx.includeOptionalDependencies
  });
  for (const nodeId of nextNodeIds) {
    if (ctx.visited.has(nodeId))
      continue;
    ctx.visited.add(nodeId);
    const node = ctx.graph[nodeId];
    if (node == null) {
      if (nodeId.startsWith("link:")) {
        result2.links.push(nodeId);
        continue;
      }
      result2.missing.push(nodeId);
      continue;
    }
    if (ctx.skipped?.has(node.depPath))
      continue;
    result2.dependencies.push({
      nodeId,
      next: () => makeStep(ctx, _next(node)),
      node
    });
  }
  return result2;
}
function collectChildNodeIds(opts2, nextPkg) {
  if (opts2.includeOptionalDependencies) {
    return Object.values(nextPkg.children);
  } else {
    const nextNodeIds = [];
    for (const [alias, nodeId] of Object.entries(nextPkg.children)) {
      if (!nextPkg.optionalDependencies.has(alias)) {
        nextNodeIds.push(nodeId);
      }
    }
    return nextNodeIds;
  }
}
var import_util12, hoistLogger;
var init_lib114 = __esm({
  "../installing/linking/hoist/lib/index.js"() {
    "use strict";
    init_lib42();
    init_lib14();
    init_lib();
    init_lib6();
    init_lib3();
    import_util12 = __toESM(require_dist3(), 1);
    init_is_subdir();
    init_resolve_link_target();
    init_dist4();
    hoistLogger = logger("hoist");
  }
});

// ../lockfile/filtering/lib/filterImporter.js
function filterImporter(importer, include, opts2) {
  const skipRuntimes = opts2?.skipRuntimes === true;
  return {
    dependencies: !include.dependencies ? {} : pickNonRuntime(importer.dependencies, skipRuntimes),
    devDependencies: !include.devDependencies ? {} : pickNonRuntime(importer.devDependencies, skipRuntimes),
    optionalDependencies: !include.optionalDependencies ? {} : pickNonRuntime(importer.optionalDependencies, skipRuntimes),
    specifiers: pickNonRuntime(importer.specifiers, skipRuntimes)
  };
}
function pickNonRuntime(deps, skipRuntimes) {
  if (!deps)
    return {};
  if (!skipRuntimes)
    return deps;
  const result2 = {};
  for (const [name, ref] of Object.entries(deps)) {
    if (!ref.startsWith("runtime:")) {
      result2[name] = ref;
    }
  }
  return result2;
}
var init_filterImporter = __esm({
  "../lockfile/filtering/lib/filterImporter.js"() {
    "use strict";
  }
});

// ../lockfile/filtering/lib/filterLockfileByImporters.js
function filterLockfileByImporters(lockfile, importerIds, opts2) {
  const importers = { ...lockfile.importers };
  for (const importerId of importerIds) {
    importers[importerId] = filterImporter(lockfile.importers[importerId], opts2.include, { skipRuntimes: opts2.skipRuntimes });
  }
  const packages = {};
  if (lockfile.packages != null) {
    pkgAllDeps(lockfileWalker({ ...lockfile, importers }, importerIds, { include: opts2.include, skipped: opts2.skipped }).step, packages, {
      failOnMissingDependencies: opts2.failOnMissingDependencies
    });
  }
  return {
    ...lockfile,
    importers,
    packages
  };
}
function pkgAllDeps(step2, pickedPackages, opts2) {
  for (const { pkgSnapshot, depPath, next: next2 } of step2.dependencies) {
    pickedPackages[depPath] = pkgSnapshot;
    pkgAllDeps(next2(), pickedPackages, opts2);
  }
  for (const depPath of step2.missing) {
    if (opts2.failOnMissingDependencies) {
      throw new LockfileMissingDependencyError(depPath);
    }
    lockfileLogger2.debug(`No entry for "${depPath}" in ${WANTED_LOCKFILE}`);
  }
}
var lockfileLogger2;
var init_filterLockfileByImporters = __esm({
  "../lockfile/filtering/lib/filterLockfileByImporters.js"() {
    "use strict";
    init_lib();
    init_lib2();
    init_lib88();
    init_lib3();
    init_filterImporter();
    lockfileLogger2 = logger("lockfile");
  }
});

// ../lockfile/filtering/lib/filterLockfile.js
function filterLockfile(lockfile, opts2) {
  return filterLockfileByImporters(lockfile, Object.keys(lockfile.importers), {
    ...opts2,
    failOnMissingDependencies: false
  });
}
var init_filterLockfile = __esm({
  "../lockfile/filtering/lib/filterLockfile.js"() {
    "use strict";
    init_filterLockfileByImporters();
  }
});

// ../lockfile/filtering/lib/filterLockfileByImportersAndEngine.js
function filterLockfileByEngine(lockfile, opts2) {
  const importerIds = Object.keys(lockfile.importers);
  return filterLockfileByImportersAndEngine(lockfile, importerIds, opts2);
}
function filterLockfileByImportersAndEngine(lockfile, importerIds, opts2) {
  const importerIdSet = new Set(importerIds);
  const directDepPaths = toImporterDepPaths(lockfile, importerIds, {
    include: opts2.include,
    importerIdSet,
    skipRuntimes: opts2.skipRuntimes
  });
  const packages = lockfile.packages != null ? pickPkgsWithAllDeps(lockfile, directDepPaths, importerIdSet, {
    currentEngine: opts2.currentEngine,
    engineStrict: opts2.engineStrict,
    failOnMissingDependencies: opts2.failOnMissingDependencies,
    include: opts2.include,
    includeIncompatiblePackages: opts2.includeIncompatiblePackages === true,
    lockfileDir: opts2.lockfileDir,
    skipped: opts2.skipped,
    skipRuntimes: opts2.skipRuntimes,
    supportedArchitectures: opts2.supportedArchitectures
  }) : {};
  const importers = map_default((importer) => {
    const newImporter = filterImporter(importer, opts2.include, { skipRuntimes: opts2.skipRuntimes });
    if (newImporter.optionalDependencies != null) {
      newImporter.optionalDependencies = pickBy_default((ref, depName) => {
        const depPath = refToRelative(ref, depName);
        return !depPath || packages[depPath] != null;
      }, newImporter.optionalDependencies);
    }
    return newImporter;
  }, lockfile.importers);
  return {
    lockfile: {
      ...lockfile,
      importers,
      packages
    },
    selectedImporterIds: Array.from(importerIdSet)
  };
}
function pickPkgsWithAllDeps(lockfile, depPaths, importerIdSet, opts2) {
  const pickedPackages = {};
  pkgAllDeps2({ lockfile, pickedPackages, importerIdSet }, depPaths, true, opts2);
  return pickedPackages;
}
function pkgAllDeps2(ctx, depPaths, parentIsInstallable, opts2) {
  for (const depPath of depPaths) {
    if (ctx.pickedPackages[depPath])
      continue;
    const pkgSnapshot = ctx.lockfile.packages[depPath];
    if (!pkgSnapshot && !depPath.startsWith("link:")) {
      if (opts2.failOnMissingDependencies) {
        throw new LockfileMissingDependencyError(depPath);
      }
      lockfileLogger3.debug(`No entry for "${depPath}" in ${WANTED_LOCKFILE}`);
      continue;
    }
    let installable;
    if (!parentIsInstallable) {
      installable = false;
      if (!ctx.pickedPackages[depPath] && pkgSnapshot.optional === true) {
        opts2.skipped.add(depPath);
      }
    } else {
      const pkg = {
        ...nameVerFromPkgSnapshot(depPath, pkgSnapshot),
        cpu: pkgSnapshot.cpu,
        engines: pkgSnapshot.engines,
        os: pkgSnapshot.os,
        libc: pkgSnapshot.libc
      };
      installable = opts2.includeIncompatiblePackages || packageIsInstallable(pkgSnapshot.id ?? depPath, pkg, {
        engineStrict: opts2.engineStrict,
        lockfileDir: opts2.lockfileDir,
        nodeVersion: opts2.currentEngine.nodeVersion,
        optional: pkgSnapshot.optional === true,
        supportedArchitectures: opts2.supportedArchitectures
      }) !== false;
      if (!installable) {
        if (!ctx.pickedPackages[depPath] && pkgSnapshot.optional === true) {
          opts2.skipped.add(depPath);
        }
      } else {
        opts2.skipped.delete(depPath);
      }
    }
    ctx.pickedPackages[depPath] = pkgSnapshot;
    const { depPaths: nextRelDepPaths, importerIds: additionalImporterIds } = parseDepRefs(Object.entries({
      ...pkgSnapshot.dependencies,
      ...opts2.include.optionalDependencies ? pkgSnapshot.optionalDependencies : {}
    }), ctx.lockfile);
    additionalImporterIds.forEach((importerId) => ctx.importerIdSet.add(importerId));
    nextRelDepPaths.push(...toImporterDepPaths(ctx.lockfile, additionalImporterIds, {
      include: opts2.include,
      importerIdSet: ctx.importerIdSet,
      skipRuntimes: opts2.skipRuntimes
    }));
    pkgAllDeps2(ctx, nextRelDepPaths, installable, opts2);
  }
}
function toImporterDepPaths(lockfile, importerIds, opts2) {
  const importerDeps = importerIds.map((importerId) => lockfile.importers[importerId]).map((importer) => ({
    ...opts2.include.dependencies ? importer.dependencies : {},
    ...opts2.include.devDependencies ? importer.devDependencies : {},
    ...opts2.include.optionalDependencies ? importer.optionalDependencies : {}
  })).map(Object.entries).map((entries) => opts2.skipRuntimes ? entries.filter(([, ref]) => !ref.startsWith("runtime:")) : entries);
  let { depPaths, importerIds: nextImporterIds } = parseDepRefs(unnest_default(importerDeps), lockfile);
  if (!nextImporterIds.length) {
    return depPaths;
  }
  nextImporterIds = nextImporterIds.filter((importerId) => !opts2.importerIdSet.has(importerId));
  for (const importerId of nextImporterIds) {
    opts2.importerIdSet.add(importerId);
  }
  return [
    ...depPaths,
    ...toImporterDepPaths(lockfile, nextImporterIds, opts2)
  ];
}
function parseDepRefs(refsByPkgNames, lockfile) {
  const acc = {
    depPaths: [],
    importerIds: []
  };
  for (const [pkgName, ref] of refsByPkgNames) {
    if (ref.startsWith("link:")) {
      const importerId = ref.substring(5);
      if (lockfile.importers[importerId]) {
        acc.importerIds.push(importerId);
      }
      continue;
    }
    const depPath = refToRelative(ref, pkgName);
    if (depPath == null)
      continue;
    acc.depPaths.push(depPath);
  }
  return acc;
}
var lockfileLogger3;
var init_filterLockfileByImportersAndEngine = __esm({
  "../lockfile/filtering/lib/filterLockfileByImportersAndEngine.js"() {
    "use strict";
    init_lib28();
    init_lib();
    init_lib65();
    init_lib2();
    init_lib70();
    init_lib3();
    init_es();
    init_filterImporter();
    lockfileLogger3 = logger("lockfile");
  }
});

// ../lockfile/filtering/lib/index.js
var init_lib115 = __esm({
  "../lockfile/filtering/lib/index.js"() {
    "use strict";
    init_filterLockfile();
    init_filterLockfileByImporters();
    init_filterLockfileByImportersAndEngine();
  }
});

// ../installing/linking/modules-cleaner/lib/removeDirectDependency.js
import { promises as fs64 } from "node:fs";
import path111 from "node:path";
async function removeDirectDependency(dependency, opts2) {
  const dependencyDir = path111.join(opts2.modulesDir, dependency.name);
  const results = await Promise.all([
    removeBinsOfDependency(dependencyDir, opts2),
    !opts2.dryRun && removeBin(dependencyDir)
    // eslint-disable-line @typescript-eslint/no-explicit-any
  ]);
  await removeIfEmpty(opts2.binsDir);
  const uninstalledPkg = results[0];
  if (!opts2.muteLogs) {
    rootLogger.debug({
      prefix: opts2.rootDir,
      removed: {
        dependencyType: dependency.dependenciesField === "devDependencies" && "dev" || dependency.dependenciesField === "optionalDependencies" && "optional" || dependency.dependenciesField === "dependencies" && "prod" || void 0,
        name: dependency.name,
        version: uninstalledPkg?.version
      }
    });
  }
}
async function removeIfEmpty(dir) {
  if (await dirIsEmpty(dir)) {
    await rimraf(dir);
  }
}
async function dirIsEmpty(dir) {
  try {
    const fileNames = await fs64.readdir(dir);
    return fileNames.length === 0;
  } catch {
    return false;
  }
}
var init_removeDirectDependency = __esm({
  "../installing/linking/modules-cleaner/lib/removeDirectDependency.js"() {
    "use strict";
    init_lib102();
    init_lib6();
    init_rimraf();
  }
});

// ../installing/linking/modules-cleaner/lib/prune.js
import { promises as fs65 } from "node:fs";
import path112 from "node:path";
async function prune2(importers, opts2) {
  const wantedLockfile = filterLockfile(opts2.wantedLockfile, {
    include: opts2.include,
    skipped: opts2.skipped,
    skipRuntimes: opts2.skipRuntimes
  });
  const rootImporter = wantedLockfile.importers["."] ?? {};
  const wantedRootPkgs = mergeDependencies(rootImporter);
  await Promise.all(importers.map(async ({ binsDir, id, modulesDir, pruneDirectDependencies, removePackages, rootDir }) => {
    const currentImporter = opts2.currentLockfile.importers[id] || {};
    const currentPkgs = Object.entries(mergeDependencies(currentImporter));
    const wantedPkgs = mergeDependencies(wantedLockfile.importers[id]);
    const allCurrentPackages = new Set(pruneDirectDependencies === true || removePackages?.length ? await readModulesDir(modulesDir) ?? [] : []);
    const depsToRemove = new Set((removePackages ?? []).filter((removePackage) => allCurrentPackages.has(removePackage)));
    for (const [depName, depVersion] of currentPkgs) {
      if (!wantedPkgs[depName] || wantedPkgs[depName] !== depVersion || opts2.dedupeDirectDeps && id !== "." && wantedPkgs[depName] === wantedRootPkgs[depName]) {
        depsToRemove.add(depName);
      }
    }
    if (pruneDirectDependencies) {
      const publiclyHoistedDeps = getPubliclyHoistedDependencies(opts2.hoistedDependencies);
      if (allCurrentPackages.size > 0) {
        for (const currentPackage of allCurrentPackages) {
          if (!wantedPkgs[currentPackage] && !publiclyHoistedDeps.has(currentPackage)) {
            depsToRemove.add(currentPackage);
          }
        }
      }
    }
    const removedFromScopes = /* @__PURE__ */ new Set();
    await Promise.all(Array.from(depsToRemove).map(async (depName) => {
      const scope = getScopeFromPackageName(depName);
      if (scope) {
        removedFromScopes.add(scope);
      }
      return removeDirectDependency({
        dependenciesField: currentImporter.devDependencies?.[depName] != null && "devDependencies" || currentImporter.optionalDependencies?.[depName] != null && "optionalDependencies" || currentImporter.dependencies?.[depName] != null && "dependencies" || void 0,
        name: depName
      }, {
        binsDir,
        dryRun: opts2.dryRun,
        modulesDir,
        rootDir
      });
    }));
    await Promise.all(Array.from(removedFromScopes).map((scope) => removeIfEmpty(path112.join(modulesDir, scope))));
    try {
      await removeIfEmpty(modulesDir);
    } catch {
    }
  }));
  const selectedImporterIds = importers.map((importer) => importer.id).sort();
  const currentPkgIdsByDepPaths = equals_default(selectedImporterIds, Object.keys(opts2.wantedLockfile.importers)) ? getPkgsDepPaths(opts2.currentLockfile.packages ?? {}, opts2.skipped) : getPkgsDepPathsOwnedOnlyByImporters(selectedImporterIds, opts2.currentLockfile, opts2.include, opts2.skipped);
  const wantedPkgIdsByDepPaths = getPkgsDepPaths(wantedLockfile.packages ?? {}, opts2.skipped);
  const orphanDepPaths = Object.keys(currentPkgIdsByDepPaths).filter((path218) => !wantedPkgIdsByDepPaths[path218]);
  const orphanPkgIds = new Set(orphanDepPaths.map((path218) => currentPkgIdsByDepPaths[path218]));
  statsLogger.debug({
    prefix: opts2.lockfileDir,
    removed: orphanPkgIds.size
  });
  if (!opts2.dryRun) {
    if (orphanDepPaths.length > 0 && opts2.currentLockfile.packages != null && (opts2.hoistedModulesDir != null || opts2.publicHoistedModulesDir != null)) {
      const prefix = path112.join(opts2.virtualStoreDir, "../..");
      await Promise.all(orphanDepPaths.map(async (orphanDepPath) => {
        if (opts2.hoistedDependencies[orphanDepPath]) {
          await Promise.all(Object.entries(opts2.hoistedDependencies[orphanDepPath]).map(([alias, hoistType]) => {
            const modulesDir = hoistType === "public" ? opts2.publicHoistedModulesDir : opts2.hoistedModulesDir;
            if (!modulesDir)
              return void 0;
            return removeDirectDependency({
              name: alias
            }, {
              binsDir: path112.join(modulesDir, ".bin"),
              modulesDir,
              muteLogs: true,
              rootDir: prefix
            });
          }));
        }
        delete opts2.hoistedDependencies[orphanDepPath];
      }));
    }
    if (opts2.pruneVirtualStore !== false) {
      const _tryRemovePkg = tryRemovePkg.bind(null, opts2.lockfileDir, opts2.virtualStoreDir);
      await Promise.all(orphanDepPaths.map((orphanDepPath) => depPathToFilename(orphanDepPath, opts2.virtualStoreDirMaxLength)).map(async (orphanDepPath) => _tryRemovePkg(orphanDepPath)));
      const neededPkgs = /* @__PURE__ */ new Set(["node_modules"]);
      for (const depPath of Object.keys(opts2.wantedLockfile.packages ?? {})) {
        if (opts2.skipped.has(depPath))
          continue;
        neededPkgs.add(depPathToFilename(depPath, opts2.virtualStoreDirMaxLength));
      }
      const availablePkgs = await readVirtualStoreDir(opts2.virtualStoreDir, opts2.lockfileDir);
      await Promise.all(availablePkgs.filter((availablePkg) => !neededPkgs.has(availablePkg)).map(async (orphanDepPath) => _tryRemovePkg(orphanDepPath)));
    }
  }
  return new Set(orphanDepPaths);
}
function getScopeFromPackageName(pkgName) {
  if (pkgName[0] === "@") {
    return pkgName.substring(0, pkgName.indexOf("/"));
  }
  return void 0;
}
async function readVirtualStoreDir(virtualStoreDir, lockfileDir) {
  try {
    return await fs65.readdir(virtualStoreDir);
  } catch (err) {
    if (err.code !== "ENOENT") {
      logger.warn({
        error: err,
        message: `Failed to read virtualStoreDir at "${virtualStoreDir}"`,
        prefix: lockfileDir
      });
    }
    return [];
  }
}
async function tryRemovePkg(lockfileDir, virtualStoreDir, pkgDir) {
  const pathToRemove = path112.join(virtualStoreDir, pkgDir);
  removalLogger.debug(pathToRemove);
  try {
    await rimraf(pathToRemove);
  } catch (err) {
    logger.warn({
      error: err,
      message: `Failed to remove "${pathToRemove}"`,
      prefix: lockfileDir
    });
  }
}
function mergeDependencies(projectSnapshot) {
  return mergeAll_default(DEPENDENCIES_FIELDS.map((depType) => projectSnapshot[depType] ?? {}));
}
function getPkgsDepPaths(packages, skipped) {
  const acc = {};
  for (const [depPath, pkg] of Object.entries(packages)) {
    if (skipped.has(depPath))
      continue;
    acc[depPath] = packageIdFromSnapshot(depPath, pkg);
  }
  return acc;
}
function getPkgsDepPathsOwnedOnlyByImporters(importerIds, lockfile, include, skipped) {
  const selected = filterLockfileByImporters(lockfile, importerIds, {
    failOnMissingDependencies: false,
    include,
    skipped
  });
  const other = filterLockfileByImporters(lockfile, difference_default(Object.keys(lockfile.importers), importerIds), {
    failOnMissingDependencies: false,
    include,
    skipped
  });
  const packagesOfSelectedOnly = pickAll_default(difference_default(Object.keys(selected.packages), Object.keys(other.packages)), selected.packages);
  return getPkgsDepPaths(packagesOfSelectedOnly, skipped);
}
function getPubliclyHoistedDependencies(hoistedDependencies) {
  const publiclyHoistedDeps = /* @__PURE__ */ new Set();
  for (const hoistedAliases of Object.values(hoistedDependencies)) {
    for (const [alias, hoistType] of Object.entries(hoistedAliases)) {
      if (hoistType === "public") {
        publiclyHoistedDeps.add(alias);
      }
    }
  }
  return publiclyHoistedDeps;
}
var init_prune2 = __esm({
  "../installing/linking/modules-cleaner/lib/prune.js"() {
    "use strict";
    init_lib6();
    init_lib65();
    init_lib41();
    init_lib115();
    init_lib70();
    init_lib3();
    init_lib8();
    init_rimraf();
    init_es();
    init_removeDirectDependency();
  }
});

// ../installing/linking/modules-cleaner/lib/index.js
var init_lib116 = __esm({
  "../installing/linking/modules-cleaner/lib/index.js"() {
    "use strict";
    init_prune2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/pnp/4.1.6/7cdd1f32e761a3dc7d68ce024a7f3b8bc42e62101e4bb1f8cec95a72847a9e66/node_modules/@yarnpkg/pnp/lib/index.js
var require_lib24 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/pnp/4.1.6/7cdd1f32e761a3dc7d68ce024a7f3b8bc42e62101e4bb1f8cec95a72847a9e66/node_modules/@yarnpkg/pnp/lib/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    var require$$0 = __require("zlib");
    var path218 = __require("path");
    var module$1 = __require("module");
    var url7 = __require("url");
    var nodeUtils = __require("util");
    var assert13 = __require("assert");
    var fs111 = __require("fs");
    var crypto11 = __require("crypto");
    var os15 = __require("os");
    var _interopDefaultLegacy = (e) => e && typeof e === "object" && "default" in e ? e : { default: e };
    var require$$0__default = /* @__PURE__ */ _interopDefaultLegacy(require$$0);
    var path__default = /* @__PURE__ */ _interopDefaultLegacy(path218);
    var assert__default = /* @__PURE__ */ _interopDefaultLegacy(assert13);
    var fs__default = /* @__PURE__ */ _interopDefaultLegacy(fs111);
    var LinkType = /* @__PURE__ */ ((LinkType2) => {
      LinkType2["HARD"] = `HARD`;
      LinkType2["SOFT"] = `SOFT`;
      return LinkType2;
    })(LinkType || {});
    var SAFE_TIME = 456789e3;
    var PortablePath = {
      root: `/`,
      dot: `.`,
      parent: `..`
    };
    var Filename = {
      home: `~`,
      nodeModules: `node_modules`,
      manifest: `package.json`,
      lockfile: `yarn.lock`,
      virtual: `__virtual__`,
      /**
       * @deprecated
       */
      pnpJs: `.pnp.js`,
      pnpCjs: `.pnp.cjs`,
      pnpData: `.pnp.data.json`,
      pnpEsmLoader: `.pnp.loader.mjs`,
      rc: `.yarnrc.yml`,
      env: `.env`
    };
    var npath2 = Object.create(path__default.default);
    var ppath = Object.create(path__default.default.posix);
    npath2.cwd = () => process.cwd();
    ppath.cwd = process.platform === `win32` ? () => toPortablePath(process.cwd()) : process.cwd;
    if (process.platform === `win32`) {
      ppath.resolve = (...segments) => {
        if (segments.length > 0 && ppath.isAbsolute(segments[0])) {
          return path__default.default.posix.resolve(...segments);
        } else {
          return path__default.default.posix.resolve(ppath.cwd(), ...segments);
        }
      };
    }
    var contains3 = function(pathUtils, from5, to) {
      from5 = pathUtils.normalize(from5);
      to = pathUtils.normalize(to);
      if (from5 === to)
        return `.`;
      if (!from5.endsWith(pathUtils.sep))
        from5 = from5 + pathUtils.sep;
      if (to.startsWith(from5)) {
        return to.slice(from5.length);
      } else {
        return null;
      }
    };
    npath2.contains = (from5, to) => contains3(npath2, from5, to);
    ppath.contains = (from5, to) => contains3(ppath, from5, to);
    var WINDOWS_PATH_REGEXP = /^([a-zA-Z]:.*)$/;
    var UNC_WINDOWS_PATH_REGEXP = /^\/\/(\.\/)?(.*)$/;
    var PORTABLE_PATH_REGEXP = /^\/([a-zA-Z]:.*)$/;
    var UNC_PORTABLE_PATH_REGEXP = /^\/unc\/(\.dot\/)?(.*)$/;
    function fromPortablePathWin32(p) {
      let portablePathMatch, uncPortablePathMatch;
      if (portablePathMatch = p.match(PORTABLE_PATH_REGEXP))
        p = portablePathMatch[1];
      else if (uncPortablePathMatch = p.match(UNC_PORTABLE_PATH_REGEXP))
        p = `\\\\${uncPortablePathMatch[1] ? `.\\` : ``}${uncPortablePathMatch[2]}`;
      else
        return p;
      return p.replace(/\//g, `\\`);
    }
    function toPortablePathWin32(p) {
      p = p.replace(/\\/g, `/`);
      let windowsPathMatch, uncWindowsPathMatch;
      if (windowsPathMatch = p.match(WINDOWS_PATH_REGEXP))
        p = `/${windowsPathMatch[1]}`;
      else if (uncWindowsPathMatch = p.match(UNC_WINDOWS_PATH_REGEXP))
        p = `/unc/${uncWindowsPathMatch[1] ? `.dot/` : ``}${uncWindowsPathMatch[2]}`;
      return p;
    }
    var toPortablePath = process.platform === `win32` ? toPortablePathWin32 : (p) => p;
    var fromPortablePath = process.platform === `win32` ? fromPortablePathWin32 : (p) => p;
    npath2.fromPortablePath = fromPortablePath;
    npath2.toPortablePath = toPortablePath;
    function convertPath(targetPathUtils, sourcePath) {
      return targetPathUtils === npath2 ? fromPortablePath(sourcePath) : toPortablePath(sourcePath);
    }
    var defaultTime = new Date(SAFE_TIME * 1e3);
    var defaultTimeMs = defaultTime.getTime();
    async function copyPromise(destinationFs, destination, sourceFs, source, opts2) {
      const normalizedDestination = destinationFs.pathUtils.normalize(destination);
      const normalizedSource = sourceFs.pathUtils.normalize(source);
      const prelayout = [];
      const postlayout = [];
      const { atime, mtime } = opts2.stableTime ? { atime: defaultTime, mtime: defaultTime } : await sourceFs.lstatPromise(normalizedSource);
      await destinationFs.mkdirpPromise(destinationFs.pathUtils.dirname(destination), { utimes: [atime, mtime] });
      await copyImpl(prelayout, postlayout, destinationFs, normalizedDestination, sourceFs, normalizedSource, { ...opts2, didParentExist: true });
      for (const operation5 of prelayout)
        await operation5();
      await Promise.all(postlayout.map((operation5) => {
        return operation5();
      }));
    }
    async function copyImpl(prelayout, postlayout, destinationFs, destination, sourceFs, source, opts2) {
      const destinationStat = opts2.didParentExist ? await maybeLStat(destinationFs, destination) : null;
      const sourceStat = await sourceFs.lstatPromise(source);
      const { atime, mtime } = opts2.stableTime ? { atime: defaultTime, mtime: defaultTime } : sourceStat;
      let updated;
      switch (true) {
        case sourceStat.isDirectory():
          {
            updated = await copyFolder(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts2);
          }
          break;
        case sourceStat.isFile():
          {
            updated = await copyFile(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts2);
          }
          break;
        case sourceStat.isSymbolicLink():
          {
            updated = await copySymlink(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts2);
          }
          break;
        default: {
          throw new Error(`Unsupported file type (${sourceStat.mode})`);
        }
      }
      if (opts2.linkStrategy?.type !== `HardlinkFromIndex` || !sourceStat.isFile()) {
        if (updated || destinationStat?.mtime?.getTime() !== mtime.getTime() || destinationStat?.atime?.getTime() !== atime.getTime()) {
          postlayout.push(() => destinationFs.lutimesPromise(destination, atime, mtime));
          updated = true;
        }
        if (destinationStat === null || (destinationStat.mode & 511) !== (sourceStat.mode & 511)) {
          postlayout.push(() => destinationFs.chmodPromise(destination, sourceStat.mode & 511));
          updated = true;
        }
      }
      return updated;
    }
    async function maybeLStat(baseFs, p) {
      try {
        return await baseFs.lstatPromise(p);
      } catch {
        return null;
      }
    }
    async function copyFolder(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts2) {
      if (destinationStat !== null && !destinationStat.isDirectory()) {
        if (opts2.overwrite) {
          prelayout.push(async () => destinationFs.removePromise(destination));
          destinationStat = null;
        } else {
          return false;
        }
      }
      let updated = false;
      if (destinationStat === null) {
        prelayout.push(async () => {
          try {
            await destinationFs.mkdirPromise(destination, { mode: sourceStat.mode });
          } catch (err) {
            if (err.code !== `EEXIST`) {
              throw err;
            }
          }
        });
        updated = true;
      }
      const entries = await sourceFs.readdirPromise(source);
      const nextOpts = opts2.didParentExist && !destinationStat ? { ...opts2, didParentExist: false } : opts2;
      if (opts2.stableSort) {
        for (const entry of entries.sort()) {
          if (await copyImpl(prelayout, postlayout, destinationFs, destinationFs.pathUtils.join(destination, entry), sourceFs, sourceFs.pathUtils.join(source, entry), nextOpts)) {
            updated = true;
          }
        }
      } else {
        const entriesUpdateStatus = await Promise.all(entries.map(async (entry) => {
          await copyImpl(prelayout, postlayout, destinationFs, destinationFs.pathUtils.join(destination, entry), sourceFs, sourceFs.pathUtils.join(source, entry), nextOpts);
        }));
        if (entriesUpdateStatus.some((status) => status)) {
          updated = true;
        }
      }
      return updated;
    }
    async function copyFileViaIndex(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts2, linkStrategy) {
      const sourceHash = await sourceFs.checksumFilePromise(source, { algorithm: `sha1` });
      const defaultMode = 420;
      const sourceMode = sourceStat.mode & 511;
      const indexFileName = `${sourceHash}${sourceMode !== defaultMode ? sourceMode.toString(8) : ``}`;
      const indexPath = destinationFs.pathUtils.join(linkStrategy.indexPath, sourceHash.slice(0, 2), `${indexFileName}.dat`);
      let AtomicBehavior;
      ((AtomicBehavior2) => {
        AtomicBehavior2[AtomicBehavior2["Lock"] = 0] = "Lock";
        AtomicBehavior2[AtomicBehavior2["Rename"] = 1] = "Rename";
      })(AtomicBehavior || (AtomicBehavior = {}));
      let atomicBehavior = 1;
      let indexStat = await maybeLStat(destinationFs, indexPath);
      if (destinationStat) {
        const isDestinationHardlinkedFromIndex = indexStat && destinationStat.dev === indexStat.dev && destinationStat.ino === indexStat.ino;
        const isIndexModified = indexStat?.mtimeMs !== defaultTimeMs;
        if (isDestinationHardlinkedFromIndex) {
          if (isIndexModified && linkStrategy.autoRepair) {
            atomicBehavior = 0;
            indexStat = null;
          }
        }
        if (!isDestinationHardlinkedFromIndex) {
          if (opts2.overwrite) {
            prelayout.push(async () => destinationFs.removePromise(destination));
            destinationStat = null;
          } else {
            return false;
          }
        }
      }
      const tempPath2 = !indexStat && atomicBehavior === 1 ? `${indexPath}.${Math.floor(Math.random() * 4294967296).toString(16).padStart(8, `0`)}` : null;
      let tempPathCleaned = false;
      prelayout.push(async () => {
        if (!indexStat) {
          if (atomicBehavior === 0) {
            await destinationFs.lockPromise(indexPath, async () => {
              const content = await sourceFs.readFilePromise(source);
              await destinationFs.writeFilePromise(indexPath, content);
            });
          }
          if (atomicBehavior === 1 && tempPath2) {
            const content = await sourceFs.readFilePromise(source);
            await destinationFs.writeFilePromise(tempPath2, content);
            try {
              await destinationFs.linkPromise(tempPath2, indexPath);
            } catch (err) {
              if (err.code === `EEXIST`) {
                tempPathCleaned = true;
                await destinationFs.unlinkPromise(tempPath2);
              } else {
                throw err;
              }
            }
          }
        }
        if (!destinationStat) {
          await destinationFs.linkPromise(indexPath, destination);
        }
      });
      postlayout.push(async () => {
        if (!indexStat) {
          await destinationFs.lutimesPromise(indexPath, defaultTime, defaultTime);
          if (sourceMode !== defaultMode) {
            await destinationFs.chmodPromise(indexPath, sourceMode);
          }
        }
        if (tempPath2 && !tempPathCleaned) {
          await destinationFs.unlinkPromise(tempPath2);
        }
      });
      return false;
    }
    async function copyFileDirect(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts2) {
      if (destinationStat !== null) {
        if (opts2.overwrite) {
          prelayout.push(async () => destinationFs.removePromise(destination));
          destinationStat = null;
        } else {
          return false;
        }
      }
      prelayout.push(async () => {
        const content = await sourceFs.readFilePromise(source);
        await destinationFs.writeFilePromise(destination, content);
      });
      return true;
    }
    async function copyFile(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts2) {
      if (opts2.linkStrategy?.type === `HardlinkFromIndex`) {
        return copyFileViaIndex(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts2, opts2.linkStrategy);
      } else {
        return copyFileDirect(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts2);
      }
    }
    async function copySymlink(prelayout, postlayout, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts2) {
      if (destinationStat !== null) {
        if (opts2.overwrite) {
          prelayout.push(async () => destinationFs.removePromise(destination));
          destinationStat = null;
        } else {
          return false;
        }
      }
      prelayout.push(async () => {
        await destinationFs.symlinkPromise(convertPath(destinationFs.pathUtils, await sourceFs.readlinkPromise(source)), destination);
      });
      return true;
    }
    var FakeFS = class {
      pathUtils;
      constructor(pathUtils) {
        this.pathUtils = pathUtils;
      }
      async *genTraversePromise(init2, { stableSort = false } = {}) {
        const stack = [init2];
        while (stack.length > 0) {
          const p = stack.shift();
          const entry = await this.lstatPromise(p);
          if (entry.isDirectory()) {
            const entries = await this.readdirPromise(p);
            if (stableSort) {
              for (const entry2 of entries.sort()) {
                stack.push(this.pathUtils.join(p, entry2));
              }
            } else {
              throw new Error(`Not supported`);
            }
          } else {
            yield p;
          }
        }
      }
      async checksumFilePromise(path219, { algorithm = `sha512` } = {}) {
        const fd = await this.openPromise(path219, `r`);
        try {
          const CHUNK_SIZE = 65536;
          const chunk = Buffer.allocUnsafeSlow(CHUNK_SIZE);
          const hash2 = crypto11.createHash(algorithm);
          let bytesRead = 0;
          while ((bytesRead = await this.readPromise(fd, chunk, 0, CHUNK_SIZE)) !== 0)
            hash2.update(bytesRead === CHUNK_SIZE ? chunk : chunk.slice(0, bytesRead));
          return hash2.digest(`hex`);
        } finally {
          await this.closePromise(fd);
        }
      }
      async removePromise(p, { recursive: recursive2 = true, maxRetries = 5 } = {}) {
        let stat2;
        try {
          stat2 = await this.lstatPromise(p);
        } catch (error) {
          if (error.code === `ENOENT`) {
            return;
          } else {
            throw error;
          }
        }
        if (stat2.isDirectory()) {
          if (recursive2) {
            const entries = await this.readdirPromise(p);
            await Promise.all(entries.map((entry) => {
              return this.removePromise(this.pathUtils.resolve(p, entry));
            }));
          }
          for (let t2 = 0; t2 <= maxRetries; t2++) {
            try {
              await this.rmdirPromise(p);
              break;
            } catch (error) {
              if (error.code !== `EBUSY` && error.code !== `ENOTEMPTY`) {
                throw error;
              } else if (t2 < maxRetries) {
                await new Promise((resolve3) => setTimeout(resolve3, t2 * 100));
              }
            }
          }
        } else {
          await this.unlinkPromise(p);
        }
      }
      removeSync(p, { recursive: recursive2 = true } = {}) {
        let stat2;
        try {
          stat2 = this.lstatSync(p);
        } catch (error) {
          if (error.code === `ENOENT`) {
            return;
          } else {
            throw error;
          }
        }
        if (stat2.isDirectory()) {
          if (recursive2)
            for (const entry of this.readdirSync(p))
              this.removeSync(this.pathUtils.resolve(p, entry));
          this.rmdirSync(p);
        } else {
          this.unlinkSync(p);
        }
      }
      async mkdirpPromise(p, { chmod, utimes } = {}) {
        p = this.resolve(p);
        if (p === this.pathUtils.dirname(p))
          return void 0;
        const parts = p.split(this.pathUtils.sep);
        let createdDirectory;
        for (let u4 = 2; u4 <= parts.length; ++u4) {
          const subPath = parts.slice(0, u4).join(this.pathUtils.sep);
          if (!this.existsSync(subPath)) {
            try {
              await this.mkdirPromise(subPath);
            } catch (error) {
              if (error.code === `EEXIST`) {
                continue;
              } else {
                throw error;
              }
            }
            createdDirectory ??= subPath;
            if (chmod != null)
              await this.chmodPromise(subPath, chmod);
            if (utimes != null) {
              await this.utimesPromise(subPath, utimes[0], utimes[1]);
            } else {
              const parentStat = await this.statPromise(this.pathUtils.dirname(subPath));
              await this.utimesPromise(subPath, parentStat.atime, parentStat.mtime);
            }
          }
        }
        return createdDirectory;
      }
      mkdirpSync(p, { chmod, utimes } = {}) {
        p = this.resolve(p);
        if (p === this.pathUtils.dirname(p))
          return void 0;
        const parts = p.split(this.pathUtils.sep);
        let createdDirectory;
        for (let u4 = 2; u4 <= parts.length; ++u4) {
          const subPath = parts.slice(0, u4).join(this.pathUtils.sep);
          if (!this.existsSync(subPath)) {
            try {
              this.mkdirSync(subPath);
            } catch (error) {
              if (error.code === `EEXIST`) {
                continue;
              } else {
                throw error;
              }
            }
            createdDirectory ??= subPath;
            if (chmod != null)
              this.chmodSync(subPath, chmod);
            if (utimes != null) {
              this.utimesSync(subPath, utimes[0], utimes[1]);
            } else {
              const parentStat = this.statSync(this.pathUtils.dirname(subPath));
              this.utimesSync(subPath, parentStat.atime, parentStat.mtime);
            }
          }
        }
        return createdDirectory;
      }
      async copyPromise(destination, source, { baseFs = this, overwrite = true, stableSort = false, stableTime = false, linkStrategy = null } = {}) {
        return await copyPromise(this, destination, baseFs, source, { overwrite, stableSort, stableTime, linkStrategy });
      }
      copySync(destination, source, { baseFs = this, overwrite = true } = {}) {
        const stat2 = baseFs.lstatSync(source);
        const exists = this.existsSync(destination);
        if (stat2.isDirectory()) {
          this.mkdirpSync(destination);
          const directoryListing = baseFs.readdirSync(source);
          for (const entry of directoryListing) {
            this.copySync(this.pathUtils.join(destination, entry), baseFs.pathUtils.join(source, entry), { baseFs, overwrite });
          }
        } else if (stat2.isFile()) {
          if (!exists || overwrite) {
            if (exists)
              this.removeSync(destination);
            const content = baseFs.readFileSync(source);
            this.writeFileSync(destination, content);
          }
        } else if (stat2.isSymbolicLink()) {
          if (!exists || overwrite) {
            if (exists)
              this.removeSync(destination);
            const target2 = baseFs.readlinkSync(source);
            this.symlinkSync(convertPath(this.pathUtils, target2), destination);
          }
        } else {
          throw new Error(`Unsupported file type (file: ${source}, mode: 0o${stat2.mode.toString(8).padStart(6, `0`)})`);
        }
        const mode = stat2.mode & 511;
        this.chmodSync(destination, mode);
      }
      async changeFilePromise(p, content, opts2 = {}) {
        if (Buffer.isBuffer(content)) {
          return this.changeFileBufferPromise(p, content, opts2);
        } else {
          return this.changeFileTextPromise(p, content, opts2);
        }
      }
      async changeFileBufferPromise(p, content, { mode } = {}) {
        let current = Buffer.alloc(0);
        try {
          current = await this.readFilePromise(p);
        } catch {
        }
        if (Buffer.compare(current, content) === 0)
          return;
        await this.writeFilePromise(p, content, { mode });
      }
      async changeFileTextPromise(p, content, { automaticNewlines, mode } = {}) {
        let current = ``;
        try {
          current = await this.readFilePromise(p, `utf8`);
        } catch {
        }
        const normalizedContent = automaticNewlines ? normalizeLineEndings(current, content) : content;
        if (current === normalizedContent)
          return;
        await this.writeFilePromise(p, normalizedContent, { mode });
      }
      changeFileSync(p, content, opts2 = {}) {
        if (Buffer.isBuffer(content)) {
          return this.changeFileBufferSync(p, content, opts2);
        } else {
          return this.changeFileTextSync(p, content, opts2);
        }
      }
      changeFileBufferSync(p, content, { mode } = {}) {
        let current = Buffer.alloc(0);
        try {
          current = this.readFileSync(p);
        } catch {
        }
        if (Buffer.compare(current, content) === 0)
          return;
        this.writeFileSync(p, content, { mode });
      }
      changeFileTextSync(p, content, { automaticNewlines = false, mode } = {}) {
        let current = ``;
        try {
          current = this.readFileSync(p, `utf8`);
        } catch {
        }
        const normalizedContent = automaticNewlines ? normalizeLineEndings(current, content) : content;
        if (current === normalizedContent)
          return;
        this.writeFileSync(p, normalizedContent, { mode });
      }
      async movePromise(fromP, toP) {
        try {
          await this.renamePromise(fromP, toP);
        } catch (error) {
          if (error.code === `EXDEV`) {
            await this.copyPromise(toP, fromP);
            await this.removePromise(fromP);
          } else {
            throw error;
          }
        }
      }
      moveSync(fromP, toP) {
        try {
          this.renameSync(fromP, toP);
        } catch (error) {
          if (error.code === `EXDEV`) {
            this.copySync(toP, fromP);
            this.removeSync(fromP);
          } else {
            throw error;
          }
        }
      }
      async lockPromise(affectedPath, callback2) {
        const lockPath = `${affectedPath}.flock`;
        const interval = 1e3 / 60;
        const startTime = Date.now();
        let fd = null;
        const isAlive = async () => {
          let pid;
          try {
            [pid] = await this.readJsonPromise(lockPath);
          } catch {
            return Date.now() - startTime < 500;
          }
          try {
            process.kill(pid, 0);
            return true;
          } catch {
            return false;
          }
        };
        while (fd === null) {
          try {
            fd = await this.openPromise(lockPath, `wx`);
          } catch (error) {
            if (error.code === `EEXIST`) {
              if (!await isAlive()) {
                try {
                  await this.unlinkPromise(lockPath);
                  continue;
                } catch {
                }
              }
              if (Date.now() - startTime < 60 * 1e3) {
                await new Promise((resolve3) => setTimeout(resolve3, interval));
              } else {
                throw new Error(`Couldn't acquire a lock in a reasonable time (via ${lockPath})`);
              }
            } else {
              throw error;
            }
          }
        }
        await this.writePromise(fd, JSON.stringify([process.pid]));
        try {
          return await callback2();
        } finally {
          try {
            await this.closePromise(fd);
            await this.unlinkPromise(lockPath);
          } catch {
          }
        }
      }
      async readJsonPromise(p) {
        const content = await this.readFilePromise(p, `utf8`);
        try {
          return JSON.parse(content);
        } catch (error) {
          error.message += ` (in ${p})`;
          throw error;
        }
      }
      readJsonSync(p) {
        const content = this.readFileSync(p, `utf8`);
        try {
          return JSON.parse(content);
        } catch (error) {
          error.message += ` (in ${p})`;
          throw error;
        }
      }
      async writeJsonPromise(p, data, { compact = false } = {}) {
        const space = compact ? 0 : 2;
        return await this.writeFilePromise(p, `${JSON.stringify(data, null, space)}
`);
      }
      writeJsonSync(p, data, { compact = false } = {}) {
        const space = compact ? 0 : 2;
        return this.writeFileSync(p, `${JSON.stringify(data, null, space)}
`);
      }
      async preserveTimePromise(p, cb) {
        const stat2 = await this.lstatPromise(p);
        const result2 = await cb();
        if (typeof result2 !== `undefined`)
          p = result2;
        await this.lutimesPromise(p, stat2.atime, stat2.mtime);
      }
      async preserveTimeSync(p, cb) {
        const stat2 = this.lstatSync(p);
        const result2 = cb();
        if (typeof result2 !== `undefined`)
          p = result2;
        this.lutimesSync(p, stat2.atime, stat2.mtime);
      }
    };
    var BasePortableFakeFS = class extends FakeFS {
      constructor() {
        super(ppath);
      }
    };
    function getEndOfLine(content) {
      const matches2 = content.match(/\r?\n/g);
      if (matches2 === null)
        return os15.EOL;
      const crlf = matches2.filter((nl) => nl === `\r
`).length;
      const lf = matches2.length - crlf;
      return crlf > lf ? `\r
` : `
`;
    }
    function normalizeLineEndings(originalContent, newContent) {
      return newContent.replace(/\r?\n/g, getEndOfLine(originalContent));
    }
    var ProxiedFS = class extends FakeFS {
      getExtractHint(hints) {
        return this.baseFs.getExtractHint(hints);
      }
      resolve(path219) {
        return this.mapFromBase(this.baseFs.resolve(this.mapToBase(path219)));
      }
      getRealPath() {
        return this.mapFromBase(this.baseFs.getRealPath());
      }
      async openPromise(p, flags, mode) {
        return this.baseFs.openPromise(this.mapToBase(p), flags, mode);
      }
      openSync(p, flags, mode) {
        return this.baseFs.openSync(this.mapToBase(p), flags, mode);
      }
      async opendirPromise(p, opts2) {
        return Object.assign(await this.baseFs.opendirPromise(this.mapToBase(p), opts2), { path: p });
      }
      opendirSync(p, opts2) {
        return Object.assign(this.baseFs.opendirSync(this.mapToBase(p), opts2), { path: p });
      }
      async readPromise(fd, buffer3, offset, length, position3) {
        return await this.baseFs.readPromise(fd, buffer3, offset, length, position3);
      }
      readSync(fd, buffer3, offset, length, position3) {
        return this.baseFs.readSync(fd, buffer3, offset, length, position3);
      }
      async writePromise(fd, buffer3, offset, length, position3) {
        if (typeof buffer3 === `string`) {
          return await this.baseFs.writePromise(fd, buffer3, offset);
        } else {
          return await this.baseFs.writePromise(fd, buffer3, offset, length, position3);
        }
      }
      writeSync(fd, buffer3, offset, length, position3) {
        if (typeof buffer3 === `string`) {
          return this.baseFs.writeSync(fd, buffer3, offset);
        } else {
          return this.baseFs.writeSync(fd, buffer3, offset, length, position3);
        }
      }
      async closePromise(fd) {
        return this.baseFs.closePromise(fd);
      }
      closeSync(fd) {
        this.baseFs.closeSync(fd);
      }
      createReadStream(p, opts2) {
        return this.baseFs.createReadStream(p !== null ? this.mapToBase(p) : p, opts2);
      }
      createWriteStream(p, opts2) {
        return this.baseFs.createWriteStream(p !== null ? this.mapToBase(p) : p, opts2);
      }
      async realpathPromise(p) {
        return this.mapFromBase(await this.baseFs.realpathPromise(this.mapToBase(p)));
      }
      realpathSync(p) {
        return this.mapFromBase(this.baseFs.realpathSync(this.mapToBase(p)));
      }
      async existsPromise(p) {
        return this.baseFs.existsPromise(this.mapToBase(p));
      }
      existsSync(p) {
        return this.baseFs.existsSync(this.mapToBase(p));
      }
      accessSync(p, mode) {
        return this.baseFs.accessSync(this.mapToBase(p), mode);
      }
      async accessPromise(p, mode) {
        return this.baseFs.accessPromise(this.mapToBase(p), mode);
      }
      async statPromise(p, opts2) {
        return this.baseFs.statPromise(this.mapToBase(p), opts2);
      }
      statSync(p, opts2) {
        return this.baseFs.statSync(this.mapToBase(p), opts2);
      }
      async fstatPromise(fd, opts2) {
        return this.baseFs.fstatPromise(fd, opts2);
      }
      fstatSync(fd, opts2) {
        return this.baseFs.fstatSync(fd, opts2);
      }
      lstatPromise(p, opts2) {
        return this.baseFs.lstatPromise(this.mapToBase(p), opts2);
      }
      lstatSync(p, opts2) {
        return this.baseFs.lstatSync(this.mapToBase(p), opts2);
      }
      async fchmodPromise(fd, mask) {
        return this.baseFs.fchmodPromise(fd, mask);
      }
      fchmodSync(fd, mask) {
        return this.baseFs.fchmodSync(fd, mask);
      }
      async chmodPromise(p, mask) {
        return this.baseFs.chmodPromise(this.mapToBase(p), mask);
      }
      chmodSync(p, mask) {
        return this.baseFs.chmodSync(this.mapToBase(p), mask);
      }
      async fchownPromise(fd, uid, gid) {
        return this.baseFs.fchownPromise(fd, uid, gid);
      }
      fchownSync(fd, uid, gid) {
        return this.baseFs.fchownSync(fd, uid, gid);
      }
      async chownPromise(p, uid, gid) {
        return this.baseFs.chownPromise(this.mapToBase(p), uid, gid);
      }
      chownSync(p, uid, gid) {
        return this.baseFs.chownSync(this.mapToBase(p), uid, gid);
      }
      async renamePromise(oldP, newP) {
        return this.baseFs.renamePromise(this.mapToBase(oldP), this.mapToBase(newP));
      }
      renameSync(oldP, newP) {
        return this.baseFs.renameSync(this.mapToBase(oldP), this.mapToBase(newP));
      }
      async copyFilePromise(sourceP, destP, flags = 0) {
        return this.baseFs.copyFilePromise(this.mapToBase(sourceP), this.mapToBase(destP), flags);
      }
      copyFileSync(sourceP, destP, flags = 0) {
        return this.baseFs.copyFileSync(this.mapToBase(sourceP), this.mapToBase(destP), flags);
      }
      async appendFilePromise(p, content, opts2) {
        return this.baseFs.appendFilePromise(this.fsMapToBase(p), content, opts2);
      }
      appendFileSync(p, content, opts2) {
        return this.baseFs.appendFileSync(this.fsMapToBase(p), content, opts2);
      }
      async writeFilePromise(p, content, opts2) {
        return this.baseFs.writeFilePromise(this.fsMapToBase(p), content, opts2);
      }
      writeFileSync(p, content, opts2) {
        return this.baseFs.writeFileSync(this.fsMapToBase(p), content, opts2);
      }
      async unlinkPromise(p) {
        return this.baseFs.unlinkPromise(this.mapToBase(p));
      }
      unlinkSync(p) {
        return this.baseFs.unlinkSync(this.mapToBase(p));
      }
      async utimesPromise(p, atime, mtime) {
        return this.baseFs.utimesPromise(this.mapToBase(p), atime, mtime);
      }
      utimesSync(p, atime, mtime) {
        return this.baseFs.utimesSync(this.mapToBase(p), atime, mtime);
      }
      async lutimesPromise(p, atime, mtime) {
        return this.baseFs.lutimesPromise(this.mapToBase(p), atime, mtime);
      }
      lutimesSync(p, atime, mtime) {
        return this.baseFs.lutimesSync(this.mapToBase(p), atime, mtime);
      }
      async mkdirPromise(p, opts2) {
        return this.baseFs.mkdirPromise(this.mapToBase(p), opts2);
      }
      mkdirSync(p, opts2) {
        return this.baseFs.mkdirSync(this.mapToBase(p), opts2);
      }
      async rmdirPromise(p, opts2) {
        return this.baseFs.rmdirPromise(this.mapToBase(p), opts2);
      }
      rmdirSync(p, opts2) {
        return this.baseFs.rmdirSync(this.mapToBase(p), opts2);
      }
      async rmPromise(p, opts2) {
        return this.baseFs.rmPromise(this.mapToBase(p), opts2);
      }
      rmSync(p, opts2) {
        return this.baseFs.rmSync(this.mapToBase(p), opts2);
      }
      async linkPromise(existingP, newP) {
        return this.baseFs.linkPromise(this.mapToBase(existingP), this.mapToBase(newP));
      }
      linkSync(existingP, newP) {
        return this.baseFs.linkSync(this.mapToBase(existingP), this.mapToBase(newP));
      }
      async symlinkPromise(target2, p, type4) {
        const mappedP = this.mapToBase(p);
        if (this.pathUtils.isAbsolute(target2))
          return this.baseFs.symlinkPromise(this.mapToBase(target2), mappedP, type4);
        const mappedAbsoluteTarget = this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(p), target2));
        const mappedTarget = this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(mappedP), mappedAbsoluteTarget);
        return this.baseFs.symlinkPromise(mappedTarget, mappedP, type4);
      }
      symlinkSync(target2, p, type4) {
        const mappedP = this.mapToBase(p);
        if (this.pathUtils.isAbsolute(target2))
          return this.baseFs.symlinkSync(this.mapToBase(target2), mappedP, type4);
        const mappedAbsoluteTarget = this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(p), target2));
        const mappedTarget = this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(mappedP), mappedAbsoluteTarget);
        return this.baseFs.symlinkSync(mappedTarget, mappedP, type4);
      }
      async readFilePromise(p, encoding) {
        return this.baseFs.readFilePromise(this.fsMapToBase(p), encoding);
      }
      readFileSync(p, encoding) {
        return this.baseFs.readFileSync(this.fsMapToBase(p), encoding);
      }
      readdirPromise(p, opts2) {
        return this.baseFs.readdirPromise(this.mapToBase(p), opts2);
      }
      readdirSync(p, opts2) {
        return this.baseFs.readdirSync(this.mapToBase(p), opts2);
      }
      async readlinkPromise(p) {
        return this.mapFromBase(await this.baseFs.readlinkPromise(this.mapToBase(p)));
      }
      readlinkSync(p) {
        return this.mapFromBase(this.baseFs.readlinkSync(this.mapToBase(p)));
      }
      async truncatePromise(p, len) {
        return this.baseFs.truncatePromise(this.mapToBase(p), len);
      }
      truncateSync(p, len) {
        return this.baseFs.truncateSync(this.mapToBase(p), len);
      }
      async ftruncatePromise(fd, len) {
        return this.baseFs.ftruncatePromise(fd, len);
      }
      ftruncateSync(fd, len) {
        return this.baseFs.ftruncateSync(fd, len);
      }
      watch(p, a2, b) {
        return this.baseFs.watch(
          this.mapToBase(p),
          // @ts-expect-error - reason TBS
          a2,
          b
        );
      }
      watchFile(p, a2, b) {
        return this.baseFs.watchFile(
          this.mapToBase(p),
          // @ts-expect-error - reason TBS
          a2,
          b
        );
      }
      unwatchFile(p, cb) {
        return this.baseFs.unwatchFile(this.mapToBase(p), cb);
      }
      fsMapToBase(p) {
        if (typeof p === `number`) {
          return p;
        } else {
          return this.mapToBase(p);
        }
      }
    };
    function direntToPortable(dirent) {
      const portableDirent = dirent;
      if (typeof dirent.path === `string`)
        portableDirent.path = npath2.toPortablePath(dirent.path);
      return portableDirent;
    }
    var NodeFS = class extends BasePortableFakeFS {
      realFs;
      constructor(realFs = fs__default.default) {
        super();
        this.realFs = realFs;
      }
      getExtractHint() {
        return false;
      }
      getRealPath() {
        return PortablePath.root;
      }
      resolve(p) {
        return ppath.resolve(p);
      }
      async openPromise(p, flags, mode) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.open(npath2.fromPortablePath(p), flags, mode, this.makeCallback(resolve3, reject3));
        });
      }
      openSync(p, flags, mode) {
        return this.realFs.openSync(npath2.fromPortablePath(p), flags, mode);
      }
      async opendirPromise(p, opts2) {
        return await new Promise((resolve3, reject3) => {
          if (typeof opts2 !== `undefined`) {
            this.realFs.opendir(npath2.fromPortablePath(p), opts2, this.makeCallback(resolve3, reject3));
          } else {
            this.realFs.opendir(npath2.fromPortablePath(p), this.makeCallback(resolve3, reject3));
          }
        }).then((dir) => {
          const dirWithFixedPath = dir;
          Object.defineProperty(dirWithFixedPath, `path`, {
            value: p,
            configurable: true,
            writable: true
          });
          return dirWithFixedPath;
        });
      }
      opendirSync(p, opts2) {
        const dir = typeof opts2 !== `undefined` ? this.realFs.opendirSync(npath2.fromPortablePath(p), opts2) : this.realFs.opendirSync(npath2.fromPortablePath(p));
        const dirWithFixedPath = dir;
        Object.defineProperty(dirWithFixedPath, `path`, {
          value: p,
          configurable: true,
          writable: true
        });
        return dirWithFixedPath;
      }
      async readPromise(fd, buffer3, offset = 0, length = 0, position3 = -1) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.read(fd, buffer3, offset, length, position3, (error, bytesRead) => {
            if (error) {
              reject3(error);
            } else {
              resolve3(bytesRead);
            }
          });
        });
      }
      readSync(fd, buffer3, offset, length, position3) {
        return this.realFs.readSync(fd, buffer3, offset, length, position3);
      }
      async writePromise(fd, buffer3, offset, length, position3) {
        return await new Promise((resolve3, reject3) => {
          if (typeof buffer3 === `string`) {
            return this.realFs.write(fd, buffer3, offset, this.makeCallback(resolve3, reject3));
          } else {
            return this.realFs.write(fd, buffer3, offset, length, position3, this.makeCallback(resolve3, reject3));
          }
        });
      }
      writeSync(fd, buffer3, offset, length, position3) {
        if (typeof buffer3 === `string`) {
          return this.realFs.writeSync(fd, buffer3, offset);
        } else {
          return this.realFs.writeSync(fd, buffer3, offset, length, position3);
        }
      }
      async closePromise(fd) {
        await new Promise((resolve3, reject3) => {
          this.realFs.close(fd, this.makeCallback(resolve3, reject3));
        });
      }
      closeSync(fd) {
        this.realFs.closeSync(fd);
      }
      createReadStream(p, opts2) {
        const realPath = p !== null ? npath2.fromPortablePath(p) : p;
        return this.realFs.createReadStream(realPath, opts2);
      }
      createWriteStream(p, opts2) {
        const realPath = p !== null ? npath2.fromPortablePath(p) : p;
        return this.realFs.createWriteStream(realPath, opts2);
      }
      async realpathPromise(p) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.realpath(npath2.fromPortablePath(p), {}, this.makeCallback(resolve3, reject3));
        }).then((path219) => {
          return npath2.toPortablePath(path219);
        });
      }
      realpathSync(p) {
        return npath2.toPortablePath(this.realFs.realpathSync(npath2.fromPortablePath(p), {}));
      }
      async existsPromise(p) {
        return await new Promise((resolve3) => {
          this.realFs.exists(npath2.fromPortablePath(p), resolve3);
        });
      }
      accessSync(p, mode) {
        return this.realFs.accessSync(npath2.fromPortablePath(p), mode);
      }
      async accessPromise(p, mode) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.access(npath2.fromPortablePath(p), mode, this.makeCallback(resolve3, reject3));
        });
      }
      existsSync(p) {
        return this.realFs.existsSync(npath2.fromPortablePath(p));
      }
      async statPromise(p, opts2) {
        return await new Promise((resolve3, reject3) => {
          if (opts2) {
            this.realFs.stat(npath2.fromPortablePath(p), opts2, this.makeCallback(resolve3, reject3));
          } else {
            this.realFs.stat(npath2.fromPortablePath(p), this.makeCallback(resolve3, reject3));
          }
        });
      }
      statSync(p, opts2) {
        if (opts2) {
          return this.realFs.statSync(npath2.fromPortablePath(p), opts2);
        } else {
          return this.realFs.statSync(npath2.fromPortablePath(p));
        }
      }
      async fstatPromise(fd, opts2) {
        return await new Promise((resolve3, reject3) => {
          if (opts2) {
            this.realFs.fstat(fd, opts2, this.makeCallback(resolve3, reject3));
          } else {
            this.realFs.fstat(fd, this.makeCallback(resolve3, reject3));
          }
        });
      }
      fstatSync(fd, opts2) {
        if (opts2) {
          return this.realFs.fstatSync(fd, opts2);
        } else {
          return this.realFs.fstatSync(fd);
        }
      }
      async lstatPromise(p, opts2) {
        return await new Promise((resolve3, reject3) => {
          if (opts2) {
            this.realFs.lstat(npath2.fromPortablePath(p), opts2, this.makeCallback(resolve3, reject3));
          } else {
            this.realFs.lstat(npath2.fromPortablePath(p), this.makeCallback(resolve3, reject3));
          }
        });
      }
      lstatSync(p, opts2) {
        if (opts2) {
          return this.realFs.lstatSync(npath2.fromPortablePath(p), opts2);
        } else {
          return this.realFs.lstatSync(npath2.fromPortablePath(p));
        }
      }
      async fchmodPromise(fd, mask) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.fchmod(fd, mask, this.makeCallback(resolve3, reject3));
        });
      }
      fchmodSync(fd, mask) {
        return this.realFs.fchmodSync(fd, mask);
      }
      async chmodPromise(p, mask) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.chmod(npath2.fromPortablePath(p), mask, this.makeCallback(resolve3, reject3));
        });
      }
      chmodSync(p, mask) {
        return this.realFs.chmodSync(npath2.fromPortablePath(p), mask);
      }
      async fchownPromise(fd, uid, gid) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.fchown(fd, uid, gid, this.makeCallback(resolve3, reject3));
        });
      }
      fchownSync(fd, uid, gid) {
        return this.realFs.fchownSync(fd, uid, gid);
      }
      async chownPromise(p, uid, gid) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.chown(npath2.fromPortablePath(p), uid, gid, this.makeCallback(resolve3, reject3));
        });
      }
      chownSync(p, uid, gid) {
        return this.realFs.chownSync(npath2.fromPortablePath(p), uid, gid);
      }
      async renamePromise(oldP, newP) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.rename(npath2.fromPortablePath(oldP), npath2.fromPortablePath(newP), this.makeCallback(resolve3, reject3));
        });
      }
      renameSync(oldP, newP) {
        return this.realFs.renameSync(npath2.fromPortablePath(oldP), npath2.fromPortablePath(newP));
      }
      async copyFilePromise(sourceP, destP, flags = 0) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.copyFile(npath2.fromPortablePath(sourceP), npath2.fromPortablePath(destP), flags, this.makeCallback(resolve3, reject3));
        });
      }
      copyFileSync(sourceP, destP, flags = 0) {
        return this.realFs.copyFileSync(npath2.fromPortablePath(sourceP), npath2.fromPortablePath(destP), flags);
      }
      async appendFilePromise(p, content, opts2) {
        return await new Promise((resolve3, reject3) => {
          const fsNativePath = typeof p === `string` ? npath2.fromPortablePath(p) : p;
          if (opts2) {
            this.realFs.appendFile(fsNativePath, content, opts2, this.makeCallback(resolve3, reject3));
          } else {
            this.realFs.appendFile(fsNativePath, content, this.makeCallback(resolve3, reject3));
          }
        });
      }
      appendFileSync(p, content, opts2) {
        const fsNativePath = typeof p === `string` ? npath2.fromPortablePath(p) : p;
        if (opts2) {
          this.realFs.appendFileSync(fsNativePath, content, opts2);
        } else {
          this.realFs.appendFileSync(fsNativePath, content);
        }
      }
      async writeFilePromise(p, content, opts2) {
        return await new Promise((resolve3, reject3) => {
          const fsNativePath = typeof p === `string` ? npath2.fromPortablePath(p) : p;
          if (opts2) {
            this.realFs.writeFile(fsNativePath, content, opts2, this.makeCallback(resolve3, reject3));
          } else {
            this.realFs.writeFile(fsNativePath, content, this.makeCallback(resolve3, reject3));
          }
        });
      }
      writeFileSync(p, content, opts2) {
        const fsNativePath = typeof p === `string` ? npath2.fromPortablePath(p) : p;
        if (opts2) {
          this.realFs.writeFileSync(fsNativePath, content, opts2);
        } else {
          this.realFs.writeFileSync(fsNativePath, content);
        }
      }
      async unlinkPromise(p) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.unlink(npath2.fromPortablePath(p), this.makeCallback(resolve3, reject3));
        });
      }
      unlinkSync(p) {
        return this.realFs.unlinkSync(npath2.fromPortablePath(p));
      }
      async utimesPromise(p, atime, mtime) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.utimes(npath2.fromPortablePath(p), atime, mtime, this.makeCallback(resolve3, reject3));
        });
      }
      utimesSync(p, atime, mtime) {
        this.realFs.utimesSync(npath2.fromPortablePath(p), atime, mtime);
      }
      async lutimesPromise(p, atime, mtime) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.lutimes(npath2.fromPortablePath(p), atime, mtime, this.makeCallback(resolve3, reject3));
        });
      }
      lutimesSync(p, atime, mtime) {
        this.realFs.lutimesSync(npath2.fromPortablePath(p), atime, mtime);
      }
      async mkdirPromise(p, opts2) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.mkdir(npath2.fromPortablePath(p), opts2, this.makeCallback(resolve3, reject3));
        });
      }
      mkdirSync(p, opts2) {
        return this.realFs.mkdirSync(npath2.fromPortablePath(p), opts2);
      }
      async rmdirPromise(p, opts2) {
        return await new Promise((resolve3, reject3) => {
          if (opts2) {
            this.realFs.rmdir(npath2.fromPortablePath(p), opts2, this.makeCallback(resolve3, reject3));
          } else {
            this.realFs.rmdir(npath2.fromPortablePath(p), this.makeCallback(resolve3, reject3));
          }
        });
      }
      rmdirSync(p, opts2) {
        return this.realFs.rmdirSync(npath2.fromPortablePath(p), opts2);
      }
      async rmPromise(p, opts2) {
        return await new Promise((resolve3, reject3) => {
          if (opts2) {
            this.realFs.rm(npath2.fromPortablePath(p), opts2, this.makeCallback(resolve3, reject3));
          } else {
            this.realFs.rm(npath2.fromPortablePath(p), this.makeCallback(resolve3, reject3));
          }
        });
      }
      rmSync(p, opts2) {
        return this.realFs.rmSync(npath2.fromPortablePath(p), opts2);
      }
      async linkPromise(existingP, newP) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.link(npath2.fromPortablePath(existingP), npath2.fromPortablePath(newP), this.makeCallback(resolve3, reject3));
        });
      }
      linkSync(existingP, newP) {
        return this.realFs.linkSync(npath2.fromPortablePath(existingP), npath2.fromPortablePath(newP));
      }
      async symlinkPromise(target2, p, type4) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.symlink(npath2.fromPortablePath(target2.replace(/\/+$/, ``)), npath2.fromPortablePath(p), type4, this.makeCallback(resolve3, reject3));
        });
      }
      symlinkSync(target2, p, type4) {
        return this.realFs.symlinkSync(npath2.fromPortablePath(target2.replace(/\/+$/, ``)), npath2.fromPortablePath(p), type4);
      }
      async readFilePromise(p, encoding) {
        return await new Promise((resolve3, reject3) => {
          const fsNativePath = typeof p === `string` ? npath2.fromPortablePath(p) : p;
          this.realFs.readFile(fsNativePath, encoding, this.makeCallback(resolve3, reject3));
        });
      }
      readFileSync(p, encoding) {
        const fsNativePath = typeof p === `string` ? npath2.fromPortablePath(p) : p;
        return this.realFs.readFileSync(fsNativePath, encoding);
      }
      async readdirPromise(p, opts2) {
        return await new Promise((resolve3, reject3) => {
          if (opts2) {
            if (opts2.recursive && process.platform === `win32`) {
              if (opts2.withFileTypes) {
                this.realFs.readdir(npath2.fromPortablePath(p), opts2, this.makeCallback((results) => resolve3(results.map(direntToPortable)), reject3));
              } else {
                this.realFs.readdir(npath2.fromPortablePath(p), opts2, this.makeCallback((results) => resolve3(results.map(npath2.toPortablePath)), reject3));
              }
            } else {
              this.realFs.readdir(npath2.fromPortablePath(p), opts2, this.makeCallback(resolve3, reject3));
            }
          } else {
            this.realFs.readdir(npath2.fromPortablePath(p), this.makeCallback(resolve3, reject3));
          }
        });
      }
      readdirSync(p, opts2) {
        if (opts2) {
          if (opts2.recursive && process.platform === `win32`) {
            if (opts2.withFileTypes) {
              return this.realFs.readdirSync(npath2.fromPortablePath(p), opts2).map(direntToPortable);
            } else {
              return this.realFs.readdirSync(npath2.fromPortablePath(p), opts2).map(npath2.toPortablePath);
            }
          } else {
            return this.realFs.readdirSync(npath2.fromPortablePath(p), opts2);
          }
        } else {
          return this.realFs.readdirSync(npath2.fromPortablePath(p));
        }
      }
      async readlinkPromise(p) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.readlink(npath2.fromPortablePath(p), this.makeCallback(resolve3, reject3));
        }).then((path219) => {
          return npath2.toPortablePath(path219);
        });
      }
      readlinkSync(p) {
        return npath2.toPortablePath(this.realFs.readlinkSync(npath2.fromPortablePath(p)));
      }
      async truncatePromise(p, len) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.truncate(npath2.fromPortablePath(p), len, this.makeCallback(resolve3, reject3));
        });
      }
      truncateSync(p, len) {
        return this.realFs.truncateSync(npath2.fromPortablePath(p), len);
      }
      async ftruncatePromise(fd, len) {
        return await new Promise((resolve3, reject3) => {
          this.realFs.ftruncate(fd, len, this.makeCallback(resolve3, reject3));
        });
      }
      ftruncateSync(fd, len) {
        return this.realFs.ftruncateSync(fd, len);
      }
      watch(p, a2, b) {
        return this.realFs.watch(
          npath2.fromPortablePath(p),
          // @ts-expect-error - reason TBS
          a2,
          b
        );
      }
      watchFile(p, a2, b) {
        return this.realFs.watchFile(
          npath2.fromPortablePath(p),
          // @ts-expect-error - reason TBS
          a2,
          b
        );
      }
      unwatchFile(p, cb) {
        return this.realFs.unwatchFile(npath2.fromPortablePath(p), cb);
      }
      makeCallback(resolve3, reject3) {
        return (err, result2) => {
          if (err) {
            reject3(err);
          } else {
            resolve3(result2);
          }
        };
      }
    };
    var NUMBER_REGEXP = /^[0-9]+$/;
    var VIRTUAL_REGEXP = /^(\/(?:[^/]+\/)*?(?:\$\$virtual|__virtual__))((?:\/((?:[^/]+-)?[a-f0-9]+)(?:\/([^/]+))?)?((?:\/.*)?))$/;
    var VALID_COMPONENT = /^([^/]+-)?[a-f0-9]+$/;
    var VirtualFS = class _VirtualFS extends ProxiedFS {
      baseFs;
      static makeVirtualPath(base, component, to) {
        if (ppath.basename(base) !== `__virtual__`)
          throw new Error(`Assertion failed: Virtual folders must be named "__virtual__"`);
        if (!ppath.basename(component).match(VALID_COMPONENT))
          throw new Error(`Assertion failed: Virtual components must be ended by an hexadecimal hash`);
        const target2 = ppath.relative(ppath.dirname(base), to);
        const segments = target2.split(`/`);
        let depth = 0;
        while (depth < segments.length && segments[depth] === `..`)
          depth += 1;
        const finalSegments = segments.slice(depth);
        const fullVirtualPath = ppath.join(base, component, String(depth), ...finalSegments);
        return fullVirtualPath;
      }
      static resolveVirtual(p) {
        const match = p.match(VIRTUAL_REGEXP);
        if (!match || !match[3] && match[5])
          return p;
        const target2 = ppath.dirname(match[1]);
        if (!match[3] || !match[4])
          return target2;
        const isnum = NUMBER_REGEXP.test(match[4]);
        if (!isnum)
          return p;
        const depth = Number(match[4]);
        const backstep = `../`.repeat(depth);
        const subpath = match[5] || `.`;
        return _VirtualFS.resolveVirtual(ppath.join(target2, backstep, subpath));
      }
      constructor({ baseFs = new NodeFS() } = {}) {
        super(ppath);
        this.baseFs = baseFs;
      }
      getExtractHint(hints) {
        return this.baseFs.getExtractHint(hints);
      }
      getRealPath() {
        return this.baseFs.getRealPath();
      }
      realpathSync(p) {
        const match = p.match(VIRTUAL_REGEXP);
        if (!match)
          return this.baseFs.realpathSync(p);
        if (!match[5])
          return p;
        const realpath3 = this.baseFs.realpathSync(this.mapToBase(p));
        return _VirtualFS.makeVirtualPath(match[1], match[3], realpath3);
      }
      async realpathPromise(p) {
        const match = p.match(VIRTUAL_REGEXP);
        if (!match)
          return await this.baseFs.realpathPromise(p);
        if (!match[5])
          return p;
        const realpath3 = await this.baseFs.realpathPromise(this.mapToBase(p));
        return _VirtualFS.makeVirtualPath(match[1], match[3], realpath3);
      }
      mapToBase(p) {
        if (p === ``)
          return p;
        if (this.pathUtils.isAbsolute(p))
          return _VirtualFS.resolveVirtual(p);
        const resolvedRoot = _VirtualFS.resolveVirtual(this.baseFs.resolve(PortablePath.dot));
        const resolvedP = _VirtualFS.resolveVirtual(this.baseFs.resolve(p));
        return ppath.relative(resolvedRoot, resolvedP) || PortablePath.dot;
      }
      mapFromBase(p) {
        return p;
      }
    };
    var prettyJsonMachine = {
      [
        "DEFAULT"
        /* DEFAULT */
      ]: {
        collapsed: false,
        next: {
          [`*`]: "DEFAULT"
          /* DEFAULT */
        }
      },
      // {
      //   "fallbackExclusionList": ...
      // }
      [
        "TOP_LEVEL"
        /* TOP_LEVEL */
      ]: {
        collapsed: false,
        next: {
          [`fallbackExclusionList`]: "FALLBACK_EXCLUSION_LIST",
          [`packageRegistryData`]: "PACKAGE_REGISTRY_DATA",
          [`*`]: "DEFAULT"
          /* DEFAULT */
        }
      },
      // "fallbackExclusionList": [
      //   ...
      // ]
      [
        "FALLBACK_EXCLUSION_LIST"
        /* FALLBACK_EXCLUSION_LIST */
      ]: {
        collapsed: false,
        next: {
          [`*`]: "FALLBACK_EXCLUSION_ENTRIES"
          /* FALLBACK_EXCLUSION_ENTRIES */
        }
      },
      // "fallbackExclusionList": [
      //   [...]
      // ]
      [
        "FALLBACK_EXCLUSION_ENTRIES"
        /* FALLBACK_EXCLUSION_ENTRIES */
      ]: {
        collapsed: true,
        next: {
          [`*`]: "FALLBACK_EXCLUSION_DATA"
          /* FALLBACK_EXCLUSION_DATA */
        }
      },
      // "fallbackExclusionList": [
      //   [..., [...]]
      // ]
      [
        "FALLBACK_EXCLUSION_DATA"
        /* FALLBACK_EXCLUSION_DATA */
      ]: {
        collapsed: true,
        next: {
          [`*`]: "DEFAULT"
          /* DEFAULT */
        }
      },
      // "packageRegistryData": [
      //   ...
      // ]
      [
        "PACKAGE_REGISTRY_DATA"
        /* PACKAGE_REGISTRY_DATA */
      ]: {
        collapsed: false,
        next: {
          [`*`]: "PACKAGE_REGISTRY_ENTRIES"
          /* PACKAGE_REGISTRY_ENTRIES */
        }
      },
      // "packageRegistryData": [
      //   [...]
      // ]
      [
        "PACKAGE_REGISTRY_ENTRIES"
        /* PACKAGE_REGISTRY_ENTRIES */
      ]: {
        collapsed: true,
        next: {
          [`*`]: "PACKAGE_STORE_DATA"
          /* PACKAGE_STORE_DATA */
        }
      },
      // "packageRegistryData": [
      //   [..., [
      //     ...
      //   ]]
      // ]
      [
        "PACKAGE_STORE_DATA"
        /* PACKAGE_STORE_DATA */
      ]: {
        collapsed: false,
        next: {
          [`*`]: "PACKAGE_STORE_ENTRIES"
          /* PACKAGE_STORE_ENTRIES */
        }
      },
      // "packageRegistryData": [
      //   [..., [
      //     [...]
      //   ]]
      // ]
      [
        "PACKAGE_STORE_ENTRIES"
        /* PACKAGE_STORE_ENTRIES */
      ]: {
        collapsed: true,
        next: {
          [`*`]: "PACKAGE_INFORMATION_DATA"
          /* PACKAGE_INFORMATION_DATA */
        }
      },
      // "packageRegistryData": [
      //   [..., [
      //     [..., {
      //       ...
      //     }]
      //   ]]
      // ]
      [
        "PACKAGE_INFORMATION_DATA"
        /* PACKAGE_INFORMATION_DATA */
      ]: {
        collapsed: false,
        next: {
          [`packageDependencies`]: "PACKAGE_DEPENDENCIES",
          [`*`]: "DEFAULT"
          /* DEFAULT */
        }
      },
      // "packageRegistryData": [
      //   [..., [
      //     [..., {
      //       "packagePeers": [
      //         ...
      //       ]
      //     }]
      //   ]]
      // ]
      [
        "PACKAGE_DEPENDENCIES"
        /* PACKAGE_DEPENDENCIES */
      ]: {
        collapsed: false,
        next: {
          [`*`]: "PACKAGE_DEPENDENCY"
          /* PACKAGE_DEPENDENCY */
        }
      },
      // "packageRegistryData": [
      //   [..., [
      //     [..., {
      //       "packageDependencies": [
      //         [...]
      //       ]
      //     }]
      //   ]]
      // ]
      [
        "PACKAGE_DEPENDENCY"
        /* PACKAGE_DEPENDENCY */
      ]: {
        collapsed: true,
        next: {
          [`*`]: "DEFAULT"
          /* DEFAULT */
        }
      }
    };
    function generateCollapsedArray(data, state, indent) {
      let result2 = ``;
      result2 += `[`;
      for (let t2 = 0, T2 = data.length; t2 < T2; ++t2) {
        result2 += generateNext(String(t2), data[t2], state, indent).replace(/^ +/g, ``);
        if (t2 + 1 < T2) {
          result2 += `, `;
        }
      }
      result2 += `]`;
      return result2;
    }
    function generateExpandedArray(data, state, indent) {
      const nextIndent = `${indent}  `;
      let result2 = ``;
      result2 += indent;
      result2 += `[
`;
      for (let t2 = 0, T2 = data.length; t2 < T2; ++t2) {
        result2 += nextIndent + generateNext(String(t2), data[t2], state, nextIndent).replace(/^ +/, ``);
        if (t2 + 1 < T2)
          result2 += `,`;
        result2 += `
`;
      }
      result2 += indent;
      result2 += `]`;
      return result2;
    }
    function generateCollapsedObject(data, state, indent) {
      const keys4 = Object.keys(data);
      let result2 = ``;
      result2 += `{`;
      for (let t2 = 0, T2 = keys4.length, keysPrinted = 0; t2 < T2; ++t2) {
        const key = keys4[t2];
        const value = data[key];
        if (typeof value === `undefined`)
          continue;
        if (keysPrinted !== 0)
          result2 += `, `;
        result2 += JSON.stringify(key);
        result2 += `: `;
        result2 += generateNext(key, value, state, indent).replace(/^ +/g, ``);
        keysPrinted += 1;
      }
      result2 += `}`;
      return result2;
    }
    function generateExpandedObject(data, state, indent) {
      const keys4 = Object.keys(data);
      const nextIndent = `${indent}  `;
      let result2 = ``;
      result2 += indent;
      result2 += `{
`;
      let keysPrinted = 0;
      for (let t2 = 0, T2 = keys4.length; t2 < T2; ++t2) {
        const key = keys4[t2];
        const value = data[key];
        if (typeof value === `undefined`)
          continue;
        if (keysPrinted !== 0) {
          result2 += `,`;
          result2 += `
`;
        }
        result2 += nextIndent;
        result2 += JSON.stringify(key);
        result2 += `: `;
        result2 += generateNext(key, value, state, nextIndent).replace(/^ +/g, ``);
        keysPrinted += 1;
      }
      if (keysPrinted !== 0)
        result2 += `
`;
      result2 += indent;
      result2 += `}`;
      return result2;
    }
    function generateNext(key, data, state, indent) {
      const { next: next2 } = prettyJsonMachine[state];
      const nextState = next2[key] || next2[`*`];
      return generate(data, nextState, indent);
    }
    function generate(data, state, indent) {
      const { collapsed } = prettyJsonMachine[state];
      if (Array.isArray(data)) {
        if (collapsed) {
          return generateCollapsedArray(data, state, indent);
        } else {
          return generateExpandedArray(data, state, indent);
        }
      }
      if (typeof data === `object` && data !== null) {
        if (collapsed) {
          return generateCollapsedObject(data, state, indent);
        } else {
          return generateExpandedObject(data, state, indent);
        }
      }
      return JSON.stringify(data);
    }
    function generatePrettyJson(data) {
      return generate(data, "TOP_LEVEL", ``);
    }
    function sortMap2(values, mappers) {
      const asArray = Array.from(values);
      if (!Array.isArray(mappers))
        mappers = [mappers];
      const stringified = [];
      for (const mapper of mappers)
        stringified.push(asArray.map((value) => mapper(value)));
      const indices = asArray.map((_, index) => index);
      indices.sort((a2, b) => {
        for (const layer of stringified) {
          const comparison = layer[a2] < layer[b] ? -1 : layer[a2] > layer[b] ? 1 : 0;
          if (comparison !== 0) {
            return comparison;
          }
        }
        return 0;
      });
      return indices.map((index) => {
        return asArray[index];
      });
    }
    function generateFallbackExclusionList(settings) {
      const fallbackExclusionList = /* @__PURE__ */ new Map();
      const sortedData = sortMap2(settings.fallbackExclusionList || [], [
        ({ name, reference }) => name,
        ({ name, reference }) => reference
      ]);
      for (const { name, reference } of sortedData) {
        let references = fallbackExclusionList.get(name);
        if (typeof references === `undefined`)
          fallbackExclusionList.set(name, references = /* @__PURE__ */ new Set());
        references.add(reference);
      }
      return Array.from(fallbackExclusionList).map(([name, references]) => {
        return [name, Array.from(references)];
      });
    }
    function generateFallbackPoolData(settings) {
      return sortMap2(settings.fallbackPool || [], ([name]) => name);
    }
    function generatePackageRegistryData(settings) {
      const packageRegistryData = [];
      const topLevelPackageLocator = settings.dependencyTreeRoots.find((locator) => {
        return settings.packageRegistry.get(locator.name)?.get(locator.reference)?.packageLocation === `./`;
      });
      for (const [packageName, packageStore] of sortMap2(settings.packageRegistry, ([packageName2]) => packageName2 === null ? `0` : `1${packageName2}`)) {
        if (packageName === null)
          continue;
        const packageStoreData = [];
        packageRegistryData.push([packageName, packageStoreData]);
        for (const [packageReference, { packageLocation, packageDependencies, packagePeers, linkType, discardFromLookup }] of sortMap2(packageStore, ([packageReference2]) => packageReference2 === null ? `0` : `1${packageReference2}`)) {
          if (packageReference === null)
            continue;
          const normalizedDependencies = [];
          if (packageName !== null && packageReference !== null && !packageDependencies.has(packageName))
            normalizedDependencies.push([packageName, packageReference]);
          for (const [dependencyName, dependencyReference] of packageDependencies)
            normalizedDependencies.push([dependencyName, dependencyReference]);
          const sortedDependencies = sortMap2(normalizedDependencies, ([dependencyName]) => dependencyName);
          const normalizedPeers = packagePeers && packagePeers.size > 0 ? Array.from(packagePeers) : void 0;
          const normalizedDiscardFromLookup = discardFromLookup ? discardFromLookup : void 0;
          const packageData = {
            packageLocation,
            packageDependencies: sortedDependencies,
            packagePeers: normalizedPeers,
            linkType,
            discardFromLookup: normalizedDiscardFromLookup
          };
          packageStoreData.push([packageReference, packageData]);
          if (topLevelPackageLocator && packageName === topLevelPackageLocator.name && packageReference === topLevelPackageLocator.reference) {
            packageRegistryData.unshift([null, [[null, packageData]]]);
          }
        }
      }
      return packageRegistryData;
    }
    function generateSerializedState(settings) {
      return {
        // @eslint-ignore-next-line @typescript-eslint/naming-convention
        __info: [
          `This file is automatically generated. Do not touch it, or risk`,
          `your modifications being lost.`
        ],
        dependencyTreeRoots: settings.dependencyTreeRoots,
        enableTopLevelFallback: settings.enableTopLevelFallback || false,
        ignorePatternData: settings.ignorePattern || null,
        pnpZipBackend: settings.pnpZipBackend,
        fallbackExclusionList: generateFallbackExclusionList(settings),
        fallbackPool: generateFallbackPoolData(settings),
        packageRegistryData: generatePackageRegistryData(settings)
      };
    }
    var hook$1;
    var hook_1 = () => {
      if (typeof hook$1 === `undefined`)
        hook$1 = require$$0__default.default.brotliDecompressSync(Buffer.from(" ", "base64")).toString();
      return hook$1;
    };
    function generateLoader(shebang, loader2) {
      return [
        shebang ? `${shebang}
` : ``,
        `/* eslint-disable */
`,
        `// @ts-nocheck
`,
        `"use strict";
`,
        `
`,
        loader2,
        `
`,
        hook_1()
      ].join(``);
    }
    function generateJsonString(data) {
      return JSON.stringify(data, null, 2);
    }
    function generateStringLiteral(value) {
      return `'${value.replace(/\\/g, `\\\\`).replace(/'/g, `\\'`).replace(/\n/g, `\\
`)}'`;
    }
    function generateInlinedSetup(data) {
      return [
        `const RAW_RUNTIME_STATE =
`,
        `${generateStringLiteral(generatePrettyJson(data))};

`,
        `function $$SETUP_STATE(hydrateRuntimeState, basePath) {
`,
        `  return hydrateRuntimeState(JSON.parse(RAW_RUNTIME_STATE), {basePath: basePath || __dirname});
`,
        `}
`
      ].join(``);
    }
    function generateSplitSetup() {
      return [
        `function $$SETUP_STATE(hydrateRuntimeState, basePath) {
`,
        `  const fs = require('fs');
`,
        `  const path = require('path');
`,
        `  const pnpDataFilepath = path.resolve(__dirname, ${JSON.stringify(Filename.pnpData)});
`,
        `  return hydrateRuntimeState(JSON.parse(fs.readFileSync(pnpDataFilepath, 'utf8')), {basePath: basePath || __dirname});
`,
        `}
`
      ].join(``);
    }
    function generateInlinedScript2(settings) {
      const data = generateSerializedState(settings);
      const setup = generateInlinedSetup(data);
      const loaderFile = generateLoader(settings.shebang, setup);
      return loaderFile;
    }
    function generateSplitScript(settings) {
      const data = generateSerializedState(settings);
      const setup = generateSplitSetup();
      const loaderFile = generateLoader(settings.shebang, setup);
      return { dataFile: generateJsonString(data), loaderFile };
    }
    function hydrateRuntimeState(data, { basePath }) {
      const portablePath = npath2.toPortablePath(basePath);
      const absolutePortablePath = ppath.resolve(portablePath);
      const ignorePattern = data.ignorePatternData !== null ? new RegExp(data.ignorePatternData) : null;
      const packageLocatorsByLocations = /* @__PURE__ */ new Map();
      const packageRegistry = new Map(data.packageRegistryData.map(([packageName, packageStoreData]) => {
        return [packageName, new Map(packageStoreData.map(([packageReference, packageInformationData]) => {
          if (packageName === null !== (packageReference === null))
            throw new Error(`Assertion failed: The name and reference should be null, or neither should`);
          const discardFromLookup = packageInformationData.discardFromLookup ?? false;
          const packageLocator = { name: packageName, reference: packageReference };
          const entry = packageLocatorsByLocations.get(packageInformationData.packageLocation);
          if (!entry) {
            packageLocatorsByLocations.set(packageInformationData.packageLocation, { locator: packageLocator, discardFromLookup });
          } else {
            entry.discardFromLookup = entry.discardFromLookup && discardFromLookup;
            if (!discardFromLookup) {
              entry.locator = packageLocator;
            }
          }
          let resolvedPackageLocation = null;
          return [packageReference, {
            packageDependencies: new Map(packageInformationData.packageDependencies),
            packagePeers: new Set(packageInformationData.packagePeers),
            linkType: packageInformationData.linkType,
            discardFromLookup,
            // we only need this for packages that are used by the currently running script
            // this is a lazy getter because `ppath.join` has some overhead
            get packageLocation() {
              return resolvedPackageLocation || (resolvedPackageLocation = ppath.join(absolutePortablePath, packageInformationData.packageLocation));
            }
          }];
        }))];
      }));
      const fallbackExclusionList = new Map(data.fallbackExclusionList.map(([packageName, packageReferences]) => {
        return [packageName, new Set(packageReferences)];
      }));
      const fallbackPool = new Map(data.fallbackPool);
      const dependencyTreeRoots = data.dependencyTreeRoots;
      const enableTopLevelFallback = data.enableTopLevelFallback;
      return {
        basePath: portablePath,
        dependencyTreeRoots,
        enableTopLevelFallback,
        fallbackExclusionList,
        pnpZipBackend: data.pnpZipBackend,
        fallbackPool,
        ignorePattern,
        packageLocatorsByLocations,
        packageRegistry
      };
    }
    var ArrayIsArray = Array.isArray;
    var JSONStringify = JSON.stringify;
    var ObjectGetOwnPropertyNames = Object.getOwnPropertyNames;
    var ObjectPrototypeHasOwnProperty = (obj, prop3) => Object.prototype.hasOwnProperty.call(obj, prop3);
    var RegExpPrototypeExec = (obj, string) => RegExp.prototype.exec.call(obj, string);
    var RegExpPrototypeSymbolReplace = (obj, ...rest) => RegExp.prototype[Symbol.replace].apply(obj, rest);
    var StringPrototypeEndsWith = (str2, ...rest) => String.prototype.endsWith.apply(str2, rest);
    var StringPrototypeIncludes = (str2, ...rest) => String.prototype.includes.apply(str2, rest);
    var StringPrototypeLastIndexOf = (str2, ...rest) => String.prototype.lastIndexOf.apply(str2, rest);
    var StringPrototypeIndexOf = (str2, ...rest) => String.prototype.indexOf.apply(str2, rest);
    var StringPrototypeReplace = (str2, ...rest) => String.prototype.replace.apply(str2, rest);
    var StringPrototypeSlice = (str2, ...rest) => String.prototype.slice.apply(str2, rest);
    var StringPrototypeStartsWith = (str2, ...rest) => String.prototype.startsWith.apply(str2, rest);
    var SafeMap = Map;
    var JSONParse = JSON.parse;
    function createErrorType(code, messageCreator, errorType) {
      return class extends errorType {
        constructor(...args) {
          super(messageCreator(...args));
          this.code = code;
          this.name = `${errorType.name} [${code}]`;
        }
      };
    }
    var ERR_PACKAGE_IMPORT_NOT_DEFINED = createErrorType(
      `ERR_PACKAGE_IMPORT_NOT_DEFINED`,
      (specifier, packagePath, base) => {
        return `Package import specifier "${specifier}" is not defined${packagePath ? ` in package ${packagePath}package.json` : ``} imported from ${base}`;
      },
      TypeError
    );
    var ERR_INVALID_MODULE_SPECIFIER = createErrorType(
      `ERR_INVALID_MODULE_SPECIFIER`,
      (request, reason, base = void 0) => {
        return `Invalid module "${request}" ${reason}${base ? ` imported from ${base}` : ``}`;
      },
      TypeError
    );
    var ERR_INVALID_PACKAGE_TARGET = createErrorType(
      `ERR_INVALID_PACKAGE_TARGET`,
      (pkgPath, key, target2, isImport = false, base = void 0) => {
        const relError = typeof target2 === `string` && !isImport && target2.length && !StringPrototypeStartsWith(target2, `./`);
        if (key === `.`) {
          assert__default.default(isImport === false);
          return `Invalid "exports" main target ${JSONStringify(target2)} defined in the package config ${pkgPath}package.json${base ? ` imported from ${base}` : ``}${relError ? `; targets must start with "./"` : ``}`;
        }
        return `Invalid "${isImport ? `imports` : `exports`}" target ${JSONStringify(
          target2
        )} defined for '${key}' in the package config ${pkgPath}package.json${base ? ` imported from ${base}` : ``}${relError ? `; targets must start with "./"` : ``}`;
      },
      Error
    );
    var ERR_INVALID_PACKAGE_CONFIG = createErrorType(
      `ERR_INVALID_PACKAGE_CONFIG`,
      (path219, base, message) => {
        return `Invalid package config ${path219}${base ? ` while importing ${base}` : ``}${message ? `. ${message}` : ``}`;
      },
      Error
    );
    var ERR_PACKAGE_PATH_NOT_EXPORTED = createErrorType(
      "ERR_PACKAGE_PATH_NOT_EXPORTED",
      (pkgPath, subpath, base = void 0) => {
        if (subpath === ".")
          return `No "exports" main defined in ${pkgPath}package.json${base ? ` imported from ${base}` : ""}`;
        return `Package subpath '${subpath}' is not defined by "exports" in ${pkgPath}package.json${base ? ` imported from ${base}` : ""}`;
      },
      Error
    );
    function filterOwnProperties(source, keys4) {
      const filtered = /* @__PURE__ */ Object.create(null);
      for (let i2 = 0; i2 < keys4.length; i2++) {
        const key = keys4[i2];
        if (ObjectPrototypeHasOwnProperty(source, key)) {
          filtered[key] = source[key];
        }
      }
      return filtered;
    }
    var packageJSONCache = new SafeMap();
    function getPackageConfig(path219, specifier, base, readFileSyncFn) {
      const existing = packageJSONCache.get(path219);
      if (existing !== void 0) {
        return existing;
      }
      const source = readFileSyncFn(path219);
      if (source === void 0) {
        const packageConfig2 = {
          pjsonPath: path219,
          exists: false,
          main: void 0,
          name: void 0,
          type: "none",
          exports: void 0,
          imports: void 0
        };
        packageJSONCache.set(path219, packageConfig2);
        return packageConfig2;
      }
      let packageJSON;
      try {
        packageJSON = JSONParse(source);
      } catch (error) {
        throw new ERR_INVALID_PACKAGE_CONFIG(
          path219,
          (base ? `"${specifier}" from ` : "") + url7.fileURLToPath(base || specifier),
          error.message
        );
      }
      let { imports, main: main5, name, type: type4 } = filterOwnProperties(packageJSON, [
        "imports",
        "main",
        "name",
        "type"
      ]);
      const exports3 = ObjectPrototypeHasOwnProperty(packageJSON, "exports") ? packageJSON.exports : void 0;
      if (typeof imports !== "object" || imports === null) {
        imports = void 0;
      }
      if (typeof main5 !== "string") {
        main5 = void 0;
      }
      if (typeof name !== "string") {
        name = void 0;
      }
      if (type4 !== "module" && type4 !== "commonjs") {
        type4 = "none";
      }
      const packageConfig = {
        pjsonPath: path219,
        exists: true,
        main: main5,
        name,
        type: type4,
        exports: exports3,
        imports
      };
      packageJSONCache.set(path219, packageConfig);
      return packageConfig;
    }
    function getPackageScopeConfig(resolved, readFileSyncFn) {
      let packageJSONUrl = new URL("./package.json", resolved);
      while (true) {
        const packageJSONPath2 = packageJSONUrl.pathname;
        if (StringPrototypeEndsWith(packageJSONPath2, "node_modules/package.json")) {
          break;
        }
        const packageConfig2 = getPackageConfig(
          url7.fileURLToPath(packageJSONUrl),
          resolved,
          void 0,
          readFileSyncFn
        );
        if (packageConfig2.exists) {
          return packageConfig2;
        }
        const lastPackageJSONUrl = packageJSONUrl;
        packageJSONUrl = new URL("../package.json", packageJSONUrl);
        if (packageJSONUrl.pathname === lastPackageJSONUrl.pathname) {
          break;
        }
      }
      const packageJSONPath = url7.fileURLToPath(packageJSONUrl);
      const packageConfig = {
        pjsonPath: packageJSONPath,
        exists: false,
        main: void 0,
        name: void 0,
        type: "none",
        exports: void 0,
        imports: void 0
      };
      packageJSONCache.set(packageJSONPath, packageConfig);
      return packageConfig;
    }
    function throwImportNotDefined(specifier, packageJSONUrl, base) {
      throw new ERR_PACKAGE_IMPORT_NOT_DEFINED(
        specifier,
        packageJSONUrl && url7.fileURLToPath(new URL(".", packageJSONUrl)),
        url7.fileURLToPath(base)
      );
    }
    function throwInvalidSubpath(subpath, packageJSONUrl, internal, base) {
      const reason = `request is not a valid subpath for the "${internal ? "imports" : "exports"}" resolution of ${url7.fileURLToPath(packageJSONUrl)}`;
      throw new ERR_INVALID_MODULE_SPECIFIER(
        subpath,
        reason,
        base && url7.fileURLToPath(base)
      );
    }
    function throwInvalidPackageTarget(subpath, target2, packageJSONUrl, internal, base) {
      if (typeof target2 === "object" && target2 !== null) {
        target2 = JSONStringify(target2, null, "");
      } else {
        target2 = `${target2}`;
      }
      throw new ERR_INVALID_PACKAGE_TARGET(
        url7.fileURLToPath(new URL(".", packageJSONUrl)),
        subpath,
        target2,
        internal,
        base && url7.fileURLToPath(base)
      );
    }
    var invalidSegmentRegEx = /(^|\\|\/)((\.|%2e)(\.|%2e)?|(n|%6e|%4e)(o|%6f|%4f)(d|%64|%44)(e|%65|%45)(_|%5f)(m|%6d|%4d)(o|%6f|%4f)(d|%64|%44)(u|%75|%55)(l|%6c|%4c)(e|%65|%45)(s|%73|%53))(\\|\/|$)/i;
    var patternRegEx = /\*/g;
    function resolvePackageTargetString(target2, subpath, match, packageJSONUrl, base, pattern, internal, conditions) {
      if (subpath !== "" && !pattern && target2[target2.length - 1] !== "/")
        throwInvalidPackageTarget(match, target2, packageJSONUrl, internal, base);
      if (!StringPrototypeStartsWith(target2, "./")) {
        if (internal && !StringPrototypeStartsWith(target2, "../") && !StringPrototypeStartsWith(target2, "/")) {
          let isURL = false;
          try {
            new URL(target2);
            isURL = true;
          } catch {
          }
          if (!isURL) {
            const exportTarget = pattern ? RegExpPrototypeSymbolReplace(patternRegEx, target2, () => subpath) : target2 + subpath;
            return exportTarget;
          }
        }
        throwInvalidPackageTarget(match, target2, packageJSONUrl, internal, base);
      }
      if (RegExpPrototypeExec(
        invalidSegmentRegEx,
        StringPrototypeSlice(target2, 2)
      ) !== null)
        throwInvalidPackageTarget(match, target2, packageJSONUrl, internal, base);
      const resolved = new URL(target2, packageJSONUrl);
      const resolvedPath = resolved.pathname;
      const packagePath = new URL(".", packageJSONUrl).pathname;
      if (!StringPrototypeStartsWith(resolvedPath, packagePath))
        throwInvalidPackageTarget(match, target2, packageJSONUrl, internal, base);
      if (subpath === "") return resolved;
      if (RegExpPrototypeExec(invalidSegmentRegEx, subpath) !== null) {
        const request = pattern ? StringPrototypeReplace(match, "*", () => subpath) : match + subpath;
        throwInvalidSubpath(request, packageJSONUrl, internal, base);
      }
      if (pattern) {
        return new URL(
          RegExpPrototypeSymbolReplace(patternRegEx, resolved.href, () => subpath)
        );
      }
      return new URL(subpath, resolved);
    }
    function isArrayIndex2(key) {
      const keyNum = +key;
      if (`${keyNum}` !== key) return false;
      return keyNum >= 0 && keyNum < 4294967295;
    }
    function resolvePackageTarget(packageJSONUrl, target2, subpath, packageSubpath, base, pattern, internal, conditions) {
      if (typeof target2 === "string") {
        return resolvePackageTargetString(
          target2,
          subpath,
          packageSubpath,
          packageJSONUrl,
          base,
          pattern,
          internal
        );
      } else if (ArrayIsArray(target2)) {
        if (target2.length === 0) {
          return null;
        }
        let lastException;
        for (let i2 = 0; i2 < target2.length; i2++) {
          const targetItem = target2[i2];
          let resolveResult;
          try {
            resolveResult = resolvePackageTarget(
              packageJSONUrl,
              targetItem,
              subpath,
              packageSubpath,
              base,
              pattern,
              internal,
              conditions
            );
          } catch (e) {
            lastException = e;
            if (e.code === "ERR_INVALID_PACKAGE_TARGET") {
              continue;
            }
            throw e;
          }
          if (resolveResult === void 0) {
            continue;
          }
          if (resolveResult === null) {
            lastException = null;
            continue;
          }
          return resolveResult;
        }
        if (lastException === void 0 || lastException === null)
          return lastException;
        throw lastException;
      } else if (typeof target2 === "object" && target2 !== null) {
        const keys4 = ObjectGetOwnPropertyNames(target2);
        for (let i2 = 0; i2 < keys4.length; i2++) {
          const key = keys4[i2];
          if (isArrayIndex2(key)) {
            throw new ERR_INVALID_PACKAGE_CONFIG(
              url7.fileURLToPath(packageJSONUrl),
              base,
              '"exports" cannot contain numeric property keys.'
            );
          }
        }
        for (let i2 = 0; i2 < keys4.length; i2++) {
          const key = keys4[i2];
          if (key === "default" || conditions.has(key)) {
            const conditionalTarget = target2[key];
            const resolveResult = resolvePackageTarget(
              packageJSONUrl,
              conditionalTarget,
              subpath,
              packageSubpath,
              base,
              pattern,
              internal,
              conditions
            );
            if (resolveResult === void 0) continue;
            return resolveResult;
          }
        }
        return void 0;
      } else if (target2 === null) {
        return null;
      }
      throwInvalidPackageTarget(
        packageSubpath,
        target2,
        packageJSONUrl,
        internal,
        base
      );
    }
    function patternKeyCompare(a2, b) {
      const aPatternIndex = StringPrototypeIndexOf(a2, "*");
      const bPatternIndex = StringPrototypeIndexOf(b, "*");
      const baseLenA = aPatternIndex === -1 ? a2.length : aPatternIndex + 1;
      const baseLenB = bPatternIndex === -1 ? b.length : bPatternIndex + 1;
      if (baseLenA > baseLenB) return -1;
      if (baseLenB > baseLenA) return 1;
      if (aPatternIndex === -1) return 1;
      if (bPatternIndex === -1) return -1;
      if (a2.length > b.length) return -1;
      if (b.length > a2.length) return 1;
      return 0;
    }
    function isConditionalExportsMainSugar(exports3, packageJSONUrl, base) {
      if (typeof exports3 === "string" || ArrayIsArray(exports3)) return true;
      if (typeof exports3 !== "object" || exports3 === null) return false;
      const keys4 = ObjectGetOwnPropertyNames(exports3);
      let isConditionalSugar = false;
      let i2 = 0;
      for (let j2 = 0; j2 < keys4.length; j2++) {
        const key = keys4[j2];
        const curIsConditionalSugar = key === "" || key[0] !== ".";
        if (i2++ === 0) {
          isConditionalSugar = curIsConditionalSugar;
        } else if (isConditionalSugar !== curIsConditionalSugar) {
          throw new ERR_INVALID_PACKAGE_CONFIG(
            url7.fileURLToPath(packageJSONUrl),
            base,
            `"exports" cannot contain some keys starting with '.' and some not. The exports object must either be an object of package subpath keys or an object of main entry condition name keys only.`
          );
        }
      }
      return isConditionalSugar;
    }
    function throwExportsNotFound(subpath, packageJSONUrl, base) {
      throw new ERR_PACKAGE_PATH_NOT_EXPORTED(
        url7.fileURLToPath(new URL(".", packageJSONUrl)),
        subpath,
        base && url7.fileURLToPath(base)
      );
    }
    var emittedPackageWarnings = /* @__PURE__ */ new Set();
    function emitTrailingSlashPatternDeprecation(match, pjsonUrl, base) {
      const pjsonPath = url7.fileURLToPath(pjsonUrl);
      if (emittedPackageWarnings.has(pjsonPath + "|" + match)) return;
      emittedPackageWarnings.add(pjsonPath + "|" + match);
      process.emitWarning(
        `Use of deprecated trailing slash pattern mapping "${match}" in the "exports" field module resolution of the package at ${pjsonPath}${base ? ` imported from ${url7.fileURLToPath(base)}` : ""}. Mapping specifiers ending in "/" is no longer supported.`,
        "DeprecationWarning",
        "DEP0155"
      );
    }
    function packageExportsResolve({
      packageJSONUrl,
      packageSubpath,
      exports: exports3,
      base,
      conditions
    }) {
      if (isConditionalExportsMainSugar(exports3, packageJSONUrl, base))
        exports3 = { ".": exports3 };
      if (ObjectPrototypeHasOwnProperty(exports3, packageSubpath) && !StringPrototypeIncludes(packageSubpath, "*") && !StringPrototypeEndsWith(packageSubpath, "/")) {
        const target2 = exports3[packageSubpath];
        const resolveResult = resolvePackageTarget(
          packageJSONUrl,
          target2,
          "",
          packageSubpath,
          base,
          false,
          false,
          conditions
        );
        if (resolveResult == null) {
          throwExportsNotFound(packageSubpath, packageJSONUrl, base);
        }
        return resolveResult;
      }
      let bestMatch = "";
      let bestMatchSubpath;
      const keys4 = ObjectGetOwnPropertyNames(exports3);
      for (let i2 = 0; i2 < keys4.length; i2++) {
        const key = keys4[i2];
        const patternIndex = StringPrototypeIndexOf(key, "*");
        if (patternIndex !== -1 && StringPrototypeStartsWith(
          packageSubpath,
          StringPrototypeSlice(key, 0, patternIndex)
        )) {
          if (StringPrototypeEndsWith(packageSubpath, "/"))
            emitTrailingSlashPatternDeprecation(
              packageSubpath,
              packageJSONUrl,
              base
            );
          const patternTrailer = StringPrototypeSlice(key, patternIndex + 1);
          if (packageSubpath.length >= key.length && StringPrototypeEndsWith(packageSubpath, patternTrailer) && patternKeyCompare(bestMatch, key) === 1 && StringPrototypeLastIndexOf(key, "*") === patternIndex) {
            bestMatch = key;
            bestMatchSubpath = StringPrototypeSlice(
              packageSubpath,
              patternIndex,
              packageSubpath.length - patternTrailer.length
            );
          }
        }
      }
      if (bestMatch) {
        const target2 = exports3[bestMatch];
        const resolveResult = resolvePackageTarget(
          packageJSONUrl,
          target2,
          bestMatchSubpath,
          bestMatch,
          base,
          true,
          false,
          conditions
        );
        if (resolveResult == null) {
          throwExportsNotFound(packageSubpath, packageJSONUrl, base);
        }
        return resolveResult;
      }
      throwExportsNotFound(packageSubpath, packageJSONUrl, base);
    }
    function packageImportsResolve({ name, base, conditions, readFileSyncFn }) {
      if (name === "#" || StringPrototypeStartsWith(name, "#/") || StringPrototypeEndsWith(name, "/")) {
        const reason = "is not a valid internal imports specifier name";
        throw new ERR_INVALID_MODULE_SPECIFIER(name, reason, url7.fileURLToPath(base));
      }
      let packageJSONUrl;
      const packageConfig = getPackageScopeConfig(base, readFileSyncFn);
      if (packageConfig.exists) {
        packageJSONUrl = url7.pathToFileURL(packageConfig.pjsonPath);
        const imports = packageConfig.imports;
        if (imports) {
          if (ObjectPrototypeHasOwnProperty(imports, name) && !StringPrototypeIncludes(name, "*")) {
            const resolveResult = resolvePackageTarget(
              packageJSONUrl,
              imports[name],
              "",
              name,
              base,
              false,
              true,
              conditions
            );
            if (resolveResult != null) {
              return resolveResult;
            }
          } else {
            let bestMatch = "";
            let bestMatchSubpath;
            const keys4 = ObjectGetOwnPropertyNames(imports);
            for (let i2 = 0; i2 < keys4.length; i2++) {
              const key = keys4[i2];
              const patternIndex = StringPrototypeIndexOf(key, "*");
              if (patternIndex !== -1 && StringPrototypeStartsWith(
                name,
                StringPrototypeSlice(key, 0, patternIndex)
              )) {
                const patternTrailer = StringPrototypeSlice(key, patternIndex + 1);
                if (name.length >= key.length && StringPrototypeEndsWith(name, patternTrailer) && patternKeyCompare(bestMatch, key) === 1 && StringPrototypeLastIndexOf(key, "*") === patternIndex) {
                  bestMatch = key;
                  bestMatchSubpath = StringPrototypeSlice(
                    name,
                    patternIndex,
                    name.length - patternTrailer.length
                  );
                }
              }
            }
            if (bestMatch) {
              const target2 = imports[bestMatch];
              const resolveResult = resolvePackageTarget(
                packageJSONUrl,
                target2,
                bestMatchSubpath,
                bestMatch,
                base,
                true,
                true,
                conditions
              );
              if (resolveResult != null) {
                return resolveResult;
              }
            }
          }
        }
      }
      throwImportNotDefined(name, packageJSONUrl, base);
    }
    var ErrorCode = /* @__PURE__ */ ((ErrorCode2) => {
      ErrorCode2["API_ERROR"] = `API_ERROR`;
      ErrorCode2["BUILTIN_NODE_RESOLUTION_FAILED"] = `BUILTIN_NODE_RESOLUTION_FAILED`;
      ErrorCode2["EXPORTS_RESOLUTION_FAILED"] = `EXPORTS_RESOLUTION_FAILED`;
      ErrorCode2["MISSING_DEPENDENCY"] = `MISSING_DEPENDENCY`;
      ErrorCode2["MISSING_PEER_DEPENDENCY"] = `MISSING_PEER_DEPENDENCY`;
      ErrorCode2["QUALIFIED_PATH_RESOLUTION_FAILED"] = `QUALIFIED_PATH_RESOLUTION_FAILED`;
      ErrorCode2["INTERNAL"] = `INTERNAL`;
      ErrorCode2["UNDECLARED_DEPENDENCY"] = `UNDECLARED_DEPENDENCY`;
      ErrorCode2["UNSUPPORTED"] = `UNSUPPORTED`;
      return ErrorCode2;
    })(ErrorCode || {});
    var MODULE_NOT_FOUND_ERRORS = /* @__PURE__ */ new Set([
      "BUILTIN_NODE_RESOLUTION_FAILED",
      "MISSING_DEPENDENCY",
      "MISSING_PEER_DEPENDENCY",
      "QUALIFIED_PATH_RESOLUTION_FAILED",
      "UNDECLARED_DEPENDENCY"
      /* UNDECLARED_DEPENDENCY */
    ]);
    function makeError2(pnpCode, message, data = {}, code) {
      code ??= MODULE_NOT_FOUND_ERRORS.has(pnpCode) ? `MODULE_NOT_FOUND` : pnpCode;
      const propertySpec = {
        configurable: true,
        writable: true,
        enumerable: false
      };
      return Object.defineProperties(new Error(message), {
        code: {
          ...propertySpec,
          value: code
        },
        pnpCode: {
          ...propertySpec,
          value: pnpCode
        },
        data: {
          ...propertySpec,
          value: data
        }
      });
    }
    function getPathForDisplay(p) {
      return npath2.normalize(npath2.fromPortablePath(p));
    }
    var flagSymbol = /* @__PURE__ */ Symbol("arg flag");
    var ArgError = class _ArgError extends Error {
      constructor(msg, code) {
        super(msg);
        this.name = "ArgError";
        this.code = code;
        Object.setPrototypeOf(this, _ArgError.prototype);
      }
    };
    function arg(opts2, {
      argv: argv2 = process.argv.slice(2),
      permissive = false,
      stopAtPositional = false
    } = {}) {
      if (!opts2) {
        throw new ArgError(
          "argument specification object is required",
          "ARG_CONFIG_NO_SPEC"
        );
      }
      const result2 = { _: [] };
      const aliases = {};
      const handlers = {};
      for (const key of Object.keys(opts2)) {
        if (!key) {
          throw new ArgError(
            "argument key cannot be an empty string",
            "ARG_CONFIG_EMPTY_KEY"
          );
        }
        if (key[0] !== "-") {
          throw new ArgError(
            `argument key must start with '-' but found: '${key}'`,
            "ARG_CONFIG_NONOPT_KEY"
          );
        }
        if (key.length === 1) {
          throw new ArgError(
            `argument key must have a name; singular '-' keys are not allowed: ${key}`,
            "ARG_CONFIG_NONAME_KEY"
          );
        }
        if (typeof opts2[key] === "string") {
          aliases[key] = opts2[key];
          continue;
        }
        let type4 = opts2[key];
        let isFlag = false;
        if (Array.isArray(type4) && type4.length === 1 && typeof type4[0] === "function") {
          const [fn] = type4;
          type4 = (value, name, prev = []) => {
            prev.push(fn(value, name, prev[prev.length - 1]));
            return prev;
          };
          isFlag = fn === Boolean || fn[flagSymbol] === true;
        } else if (typeof type4 === "function") {
          isFlag = type4 === Boolean || type4[flagSymbol] === true;
        } else {
          throw new ArgError(
            `type missing or not a function or valid array type: ${key}`,
            "ARG_CONFIG_VAD_TYPE"
          );
        }
        if (key[1] !== "-" && key.length > 2) {
          throw new ArgError(
            `short argument keys (with a single hyphen) must have only one character: ${key}`,
            "ARG_CONFIG_SHORTOPT_TOOLONG"
          );
        }
        handlers[key] = [type4, isFlag];
      }
      for (let i2 = 0, len = argv2.length; i2 < len; i2++) {
        const wholeArg = argv2[i2];
        if (stopAtPositional && result2._.length > 0) {
          result2._ = result2._.concat(argv2.slice(i2));
          break;
        }
        if (wholeArg === "--") {
          result2._ = result2._.concat(argv2.slice(i2 + 1));
          break;
        }
        if (wholeArg.length > 1 && wholeArg[0] === "-") {
          const separatedArguments = wholeArg[1] === "-" || wholeArg.length === 2 ? [wholeArg] : wholeArg.slice(1).split("").map((a2) => `-${a2}`);
          for (let j2 = 0; j2 < separatedArguments.length; j2++) {
            const arg2 = separatedArguments[j2];
            const [originalArgName, argStr] = arg2[1] === "-" ? arg2.split(/=(.*)/, 2) : [arg2, void 0];
            let argName = originalArgName;
            while (argName in aliases) {
              argName = aliases[argName];
            }
            if (!(argName in handlers)) {
              if (permissive) {
                result2._.push(arg2);
                continue;
              } else {
                throw new ArgError(
                  `unknown or unexpected option: ${originalArgName}`,
                  "ARG_UNKNOWN_OPTION"
                );
              }
            }
            const [type4, isFlag] = handlers[argName];
            if (!isFlag && j2 + 1 < separatedArguments.length) {
              throw new ArgError(
                `option requires argument (but was followed by another short argument): ${originalArgName}`,
                "ARG_MISSING_REQUIRED_SHORTARG"
              );
            }
            if (isFlag) {
              result2[argName] = type4(true, argName, result2[argName]);
            } else if (argStr === void 0) {
              if (argv2.length < i2 + 2 || argv2[i2 + 1].length > 1 && argv2[i2 + 1][0] === "-" && !(argv2[i2 + 1].match(/^-?\d*(\.(?=\d))?\d*$/) && (type4 === Number || // eslint-disable-next-line no-undef
              typeof BigInt !== "undefined" && type4 === BigInt))) {
                const extended = originalArgName === argName ? "" : ` (alias for ${argName})`;
                throw new ArgError(
                  `option requires argument: ${originalArgName}${extended}`,
                  "ARG_MISSING_REQUIRED_LONGARG"
                );
              }
              result2[argName] = type4(argv2[i2 + 1], argName, result2[argName]);
              ++i2;
            } else {
              result2[argName] = type4(argStr, argName, result2[argName]);
            }
          }
        } else {
          result2._.push(wholeArg);
        }
      }
      return result2;
    }
    arg.flag = (fn) => {
      fn[flagSymbol] = true;
      return fn;
    };
    arg.COUNT = arg.flag((v, name, existingCount) => (existingCount || 0) + 1);
    arg.ArgError = ArgError;
    var arg_1 = arg;
    function getOptionValue(opt) {
      parseOptions();
      return options[opt];
    }
    var options;
    function parseOptions() {
      if (!options) {
        options = {
          "--conditions": [],
          ...parseArgv(getNodeOptionsEnvArgv()),
          ...parseArgv(process.execArgv)
        };
      }
    }
    function parseArgv(argv2) {
      return arg_1(
        {
          "--conditions": [String],
          "-C": "--conditions"
        },
        {
          argv: argv2,
          permissive: true
        }
      );
    }
    function getNodeOptionsEnvArgv() {
      const errors2 = [];
      const envArgv = ParseNodeOptionsEnvVar(process.env.NODE_OPTIONS || "", errors2);
      if (errors2.length !== 0) ;
      return envArgv;
    }
    function ParseNodeOptionsEnvVar(node_options, errors2) {
      const env_argv = [];
      let is_in_string = false;
      let will_start_new_arg = true;
      for (let index = 0; index < node_options.length; ++index) {
        let c3 = node_options[index];
        if (c3 === "\\" && is_in_string) {
          if (index + 1 === node_options.length) {
            errors2.push("invalid value for NODE_OPTIONS (invalid escape)\n");
            return env_argv;
          } else {
            c3 = node_options[++index];
          }
        } else if (c3 === " " && !is_in_string) {
          will_start_new_arg = true;
          continue;
        } else if (c3 === '"') {
          is_in_string = !is_in_string;
          continue;
        }
        if (will_start_new_arg) {
          env_argv.push(c3);
          will_start_new_arg = false;
        } else {
          env_argv[env_argv.length - 1] += c3;
        }
      }
      if (is_in_string) {
        errors2.push("invalid value for NODE_OPTIONS (unterminated string)\n");
      }
      return env_argv;
    }
    var [major, minor] = process.versions.node.split(`.`).map((value) => parseInt(value, 10));
    var WATCH_MODE_MESSAGE_USES_ARRAYS = major > 19 || major === 19 && minor >= 2 || major === 18 && minor >= 13;
    function reportRequiredFilesToWatchMode(paths3) {
      if (process.env.WATCH_REPORT_DEPENDENCIES && process.send) {
        const files = paths3.map((filename) => npath2.fromPortablePath(VirtualFS.resolveVirtual(filename)));
        if (WATCH_MODE_MESSAGE_USES_ARRAYS) {
          process.send({ "watch:require": files });
        } else {
          for (const filename of files) {
            process.send({ "watch:require": filename });
          }
        }
      }
    }
    function makeApi(runtimeState, opts2) {
      const alwaysWarnOnFallback = Number(process.env.PNP_ALWAYS_WARN_ON_FALLBACK) > 0;
      const debugLevel = Number(process.env.PNP_DEBUG_LEVEL);
      const pathRegExp = /^(?![a-zA-Z]:[\\/]|\\\\|\.{0,2}(?:\/|$))((?:node:)?(?:@[^/]+\/)?[^/]+)\/*(.*|)$/;
      const isStrictRegExp = /^(\/|\.{1,2}(\/|$))/;
      const isDirRegExp = /\/$/;
      const isRelativeRegexp = /^\.{0,2}\//;
      const topLevelLocator = { name: null, reference: null };
      const fallbackLocators = [];
      const emittedWarnings = /* @__PURE__ */ new Set();
      if (runtimeState.enableTopLevelFallback === true)
        fallbackLocators.push(topLevelLocator);
      if (opts2.compatibilityMode !== false) {
        for (const name of [`react-scripts`, `gatsby`]) {
          const packageStore = runtimeState.packageRegistry.get(name);
          if (packageStore) {
            for (const reference of packageStore.keys()) {
              if (reference === null) {
                throw new Error(`Assertion failed: This reference shouldn't be null`);
              } else {
                fallbackLocators.push({ name, reference });
              }
            }
          }
        }
      }
      const {
        ignorePattern,
        packageRegistry,
        packageLocatorsByLocations
      } = runtimeState;
      function makeLogEntry(name, args) {
        return {
          fn: name,
          args,
          error: null,
          result: null
        };
      }
      function trace(entry) {
        const colors = process.stderr?.hasColors?.() ?? process.stdout.isTTY;
        const c3 = (n2, str2) => `\x1B[${n2}m${str2}\x1B[0m`;
        const error = entry.error;
        if (error)
          console.error(c3(`31;1`, `\u2716 ${entry.error?.message.replace(/\n.*/s, ``)}`));
        else
          console.error(c3(`33;1`, `\u203C Resolution`));
        if (entry.args.length > 0)
          console.error();
        for (const arg2 of entry.args)
          console.error(`  ${c3(`37;1`, `In \u2190`)} ${nodeUtils.inspect(arg2, { colors, compact: true })}`);
        if (entry.result) {
          console.error();
          console.error(`  ${c3(`37;1`, `Out \u2192`)} ${nodeUtils.inspect(entry.result, { colors, compact: true })}`);
        }
        const stack = new Error().stack.match(/(?<=^ +)at.*/gm)?.slice(2) ?? [];
        if (stack.length > 0) {
          console.error();
          for (const line of stack) {
            console.error(`  ${c3(`38;5;244`, line)}`);
          }
        }
        console.error();
      }
      function maybeLog(name, fn) {
        if (opts2.allowDebug === false)
          return fn;
        if (Number.isFinite(debugLevel)) {
          if (debugLevel >= 2) {
            return (...args) => {
              const logEntry = makeLogEntry(name, args);
              try {
                return logEntry.result = fn(...args);
              } catch (error) {
                throw logEntry.error = error;
              } finally {
                trace(logEntry);
              }
            };
          } else if (debugLevel >= 1) {
            return (...args) => {
              try {
                return fn(...args);
              } catch (error) {
                const logEntry = makeLogEntry(name, args);
                logEntry.error = error;
                trace(logEntry);
                throw error;
              }
            };
          }
        }
        return fn;
      }
      function getPackageInformationSafe(packageLocator) {
        const packageInformation = getPackageInformation(packageLocator);
        if (!packageInformation) {
          throw makeError2(
            ErrorCode.INTERNAL,
            `Couldn't find a matching entry in the dependency tree for the specified parent (this is probably an internal error)`
          );
        }
        return packageInformation;
      }
      function isDependencyTreeRoot(packageLocator) {
        if (packageLocator.name === null)
          return true;
        for (const dependencyTreeRoot of runtimeState.dependencyTreeRoots)
          if (dependencyTreeRoot.name === packageLocator.name && dependencyTreeRoot.reference === packageLocator.reference)
            return true;
        return false;
      }
      const defaultExportsConditions = /* @__PURE__ */ new Set([
        `node`,
        `require`,
        ...getOptionValue(`--conditions`)
      ]);
      function applyNodeExportsResolution(unqualifiedPath, conditions = defaultExportsConditions, issuer) {
        const locator = findPackageLocator(ppath.join(unqualifiedPath, `internal.js`), {
          resolveIgnored: true,
          includeDiscardFromLookup: true
        });
        if (locator === null) {
          throw makeError2(
            ErrorCode.INTERNAL,
            `The locator that owns the "${unqualifiedPath}" path can't be found inside the dependency tree (this is probably an internal error)`
          );
        }
        const { packageLocation } = getPackageInformationSafe(locator);
        const manifestPath = ppath.join(packageLocation, Filename.manifest);
        if (!opts2.fakeFs.existsSync(manifestPath))
          return null;
        const pkgJson2 = JSON.parse(opts2.fakeFs.readFileSync(manifestPath, `utf8`));
        if (pkgJson2.exports == null)
          return null;
        let subpath = ppath.contains(packageLocation, unqualifiedPath);
        if (subpath === null) {
          throw makeError2(
            ErrorCode.INTERNAL,
            `unqualifiedPath doesn't contain the packageLocation (this is probably an internal error)`
          );
        }
        if (subpath !== `.` && !isRelativeRegexp.test(subpath))
          subpath = `./${subpath}`;
        try {
          const resolvedExport = packageExportsResolve({
            packageJSONUrl: url7.pathToFileURL(npath2.fromPortablePath(manifestPath)),
            packageSubpath: subpath,
            exports: pkgJson2.exports,
            base: issuer ? url7.pathToFileURL(npath2.fromPortablePath(issuer)) : null,
            conditions
          });
          return npath2.toPortablePath(url7.fileURLToPath(resolvedExport));
        } catch (error) {
          throw makeError2(
            ErrorCode.EXPORTS_RESOLUTION_FAILED,
            error.message,
            { unqualifiedPath: getPathForDisplay(unqualifiedPath), locator, pkgJson: pkgJson2, subpath: getPathForDisplay(subpath), conditions },
            error.code
          );
        }
      }
      function applyNodeExtensionResolution(unqualifiedPath, candidates, { extensions: extensions2 }) {
        let stat2;
        try {
          candidates.push(unqualifiedPath);
          stat2 = opts2.fakeFs.statSync(unqualifiedPath);
        } catch {
        }
        if (stat2 && !stat2.isDirectory())
          return opts2.fakeFs.realpathSync(unqualifiedPath);
        if (stat2 && stat2.isDirectory()) {
          let pkgJson2;
          try {
            pkgJson2 = JSON.parse(opts2.fakeFs.readFileSync(ppath.join(unqualifiedPath, Filename.manifest), `utf8`));
          } catch {
          }
          let nextUnqualifiedPath;
          if (pkgJson2 && pkgJson2.main)
            nextUnqualifiedPath = ppath.resolve(unqualifiedPath, pkgJson2.main);
          if (nextUnqualifiedPath && nextUnqualifiedPath !== unqualifiedPath) {
            const resolution = applyNodeExtensionResolution(nextUnqualifiedPath, candidates, { extensions: extensions2 });
            if (resolution !== null) {
              return resolution;
            }
          }
        }
        for (let i2 = 0, length = extensions2.length; i2 < length; i2++) {
          const candidateFile = `${unqualifiedPath}${extensions2[i2]}`;
          candidates.push(candidateFile);
          if (opts2.fakeFs.existsSync(candidateFile)) {
            return candidateFile;
          }
        }
        if (stat2 && stat2.isDirectory()) {
          for (let i2 = 0, length = extensions2.length; i2 < length; i2++) {
            const candidateFile = ppath.format({ dir: unqualifiedPath, name: `index`, ext: extensions2[i2] });
            candidates.push(candidateFile);
            if (opts2.fakeFs.existsSync(candidateFile)) {
              return candidateFile;
            }
          }
        }
        return null;
      }
      function makeFakeModule(path219) {
        const fakeModule = new module$1.Module(path219, null);
        fakeModule.filename = path219;
        fakeModule.paths = module$1.Module._nodeModulePaths(path219);
        return fakeModule;
      }
      function callNativeResolution(request, issuer) {
        if (issuer.endsWith(`/`))
          issuer = ppath.join(issuer, `internal.js`);
        return module$1.Module._resolveFilename(npath2.fromPortablePath(request), makeFakeModule(npath2.fromPortablePath(issuer)), false, { plugnplay: false });
      }
      function isPathIgnored(path219) {
        if (ignorePattern === null)
          return false;
        const subPath = ppath.contains(runtimeState.basePath, path219);
        if (subPath === null)
          return false;
        if (ignorePattern.test(subPath.replace(/\/$/, ``))) {
          return true;
        } else {
          return false;
        }
      }
      const VERSIONS = { std: 3, resolveVirtual: 1, getAllLocators: 1 };
      const topLevel = topLevelLocator;
      function getPackageInformation({ name, reference }) {
        const packageInformationStore = packageRegistry.get(name);
        if (!packageInformationStore)
          return null;
        const packageInformation = packageInformationStore.get(reference);
        if (!packageInformation)
          return null;
        return packageInformation;
      }
      function findPackageDependents({ name, reference }) {
        const dependents = [];
        for (const [dependentName, packageInformationStore] of packageRegistry) {
          if (dependentName === null)
            continue;
          for (const [dependentReference, packageInformation] of packageInformationStore) {
            if (dependentReference === null)
              continue;
            const dependencyReference = packageInformation.packageDependencies.get(name);
            if (dependencyReference !== reference)
              continue;
            if (dependentName === name && dependentReference === reference)
              continue;
            dependents.push({
              name: dependentName,
              reference: dependentReference
            });
          }
        }
        return dependents;
      }
      function findBrokenPeerDependencies(dependency, initialPackage) {
        const brokenPackages = /* @__PURE__ */ new Map();
        const alreadyVisited = /* @__PURE__ */ new Set();
        const traversal = (currentPackage) => {
          const identifier = JSON.stringify(currentPackage.name);
          if (alreadyVisited.has(identifier))
            return;
          alreadyVisited.add(identifier);
          const dependents = findPackageDependents(currentPackage);
          for (const dependent of dependents) {
            const dependentInformation = getPackageInformationSafe(dependent);
            if (dependentInformation.packagePeers.has(dependency)) {
              traversal(dependent);
            } else {
              let brokenSet = brokenPackages.get(dependent.name);
              if (typeof brokenSet === `undefined`)
                brokenPackages.set(dependent.name, brokenSet = /* @__PURE__ */ new Set());
              brokenSet.add(dependent.reference);
            }
          }
        };
        traversal(initialPackage);
        const brokenList = [];
        for (const name of [...brokenPackages.keys()].sort())
          for (const reference of [...brokenPackages.get(name)].sort())
            brokenList.push({ name, reference });
        return brokenList;
      }
      function findPackageLocator(location, { resolveIgnored = false, includeDiscardFromLookup = false } = {}) {
        if (isPathIgnored(location) && !resolveIgnored)
          return null;
        let relativeLocation = ppath.relative(runtimeState.basePath, location);
        if (!relativeLocation.match(isStrictRegExp))
          relativeLocation = `./${relativeLocation}`;
        if (!relativeLocation.endsWith(`/`))
          relativeLocation = `${relativeLocation}/`;
        do {
          const entry = packageLocatorsByLocations.get(relativeLocation);
          if (typeof entry === `undefined` || entry.discardFromLookup && !includeDiscardFromLookup) {
            relativeLocation = relativeLocation.substring(0, relativeLocation.lastIndexOf(`/`, relativeLocation.length - 2) + 1);
            continue;
          }
          return entry.locator;
        } while (relativeLocation !== ``);
        return null;
      }
      function tryReadFile(filePath) {
        try {
          return opts2.fakeFs.readFileSync(npath2.toPortablePath(filePath), `utf8`);
        } catch (err) {
          if (err.code === `ENOENT`)
            return void 0;
          throw err;
        }
      }
      function resolveToUnqualified(request, issuer, { considerBuiltins = true } = {}) {
        if (request.startsWith(`#`))
          throw new Error(`resolveToUnqualified can not handle private import mappings`);
        if (request === `pnpapi`)
          return npath2.toPortablePath(opts2.pnpapiResolution);
        if (considerBuiltins && module$1.isBuiltin(request))
          return null;
        const requestForDisplay = getPathForDisplay(request);
        const issuerForDisplay = issuer && getPathForDisplay(issuer);
        if (issuer && isPathIgnored(issuer)) {
          if (!ppath.isAbsolute(request) || findPackageLocator(request) === null) {
            const result2 = callNativeResolution(request, issuer);
            if (result2 === false) {
              throw makeError2(
                ErrorCode.BUILTIN_NODE_RESOLUTION_FAILED,
                `The builtin node resolution algorithm was unable to resolve the requested module (it didn't go through the pnp resolver because the issuer was explicitely ignored by the regexp)

Require request: "${requestForDisplay}"
Required by: ${issuerForDisplay}
`,
                { request: requestForDisplay, issuer: issuerForDisplay }
              );
            }
            return npath2.toPortablePath(result2);
          }
        }
        let unqualifiedPath;
        const dependencyNameMatch = request.match(pathRegExp);
        if (!dependencyNameMatch) {
          if (ppath.isAbsolute(request)) {
            unqualifiedPath = ppath.normalize(request);
          } else {
            if (!issuer) {
              throw makeError2(
                ErrorCode.API_ERROR,
                `The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute`,
                { request: requestForDisplay, issuer: issuerForDisplay }
              );
            }
            const absoluteIssuer = ppath.resolve(issuer);
            if (issuer.match(isDirRegExp)) {
              unqualifiedPath = ppath.normalize(ppath.join(absoluteIssuer, request));
            } else {
              unqualifiedPath = ppath.normalize(ppath.join(ppath.dirname(absoluteIssuer), request));
            }
          }
        } else {
          if (!issuer) {
            throw makeError2(
              ErrorCode.API_ERROR,
              `The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute`,
              { request: requestForDisplay, issuer: issuerForDisplay }
            );
          }
          const [, dependencyName, subPath] = dependencyNameMatch;
          const issuerLocator = findPackageLocator(issuer);
          if (!issuerLocator) {
            const result2 = callNativeResolution(request, issuer);
            if (result2 === false) {
              throw makeError2(
                ErrorCode.BUILTIN_NODE_RESOLUTION_FAILED,
                `The builtin node resolution algorithm was unable to resolve the requested module (it didn't go through the pnp resolver because the issuer doesn't seem to be part of the Yarn-managed dependency tree).

Require path: "${requestForDisplay}"
Required by: ${issuerForDisplay}
`,
                { request: requestForDisplay, issuer: issuerForDisplay }
              );
            }
            return npath2.toPortablePath(result2);
          }
          const issuerInformation = getPackageInformationSafe(issuerLocator);
          let dependencyReference = issuerInformation.packageDependencies.get(dependencyName);
          let fallbackReference = null;
          if (dependencyReference == null) {
            if (issuerLocator.name !== null) {
              const exclusionEntry = runtimeState.fallbackExclusionList.get(issuerLocator.name);
              const canUseFallbacks = !exclusionEntry || !exclusionEntry.has(issuerLocator.reference);
              if (canUseFallbacks) {
                for (let t2 = 0, T2 = fallbackLocators.length; t2 < T2; ++t2) {
                  const fallbackInformation = getPackageInformationSafe(fallbackLocators[t2]);
                  const reference = fallbackInformation.packageDependencies.get(dependencyName);
                  if (reference == null)
                    continue;
                  if (alwaysWarnOnFallback)
                    fallbackReference = reference;
                  else
                    dependencyReference = reference;
                  break;
                }
                if (runtimeState.enableTopLevelFallback) {
                  if (dependencyReference == null && fallbackReference === null) {
                    const reference = runtimeState.fallbackPool.get(dependencyName);
                    if (reference != null) {
                      fallbackReference = reference;
                    }
                  }
                }
              }
            }
          }
          let error = null;
          if (dependencyReference === null) {
            if (isDependencyTreeRoot(issuerLocator)) {
              error = makeError2(
                ErrorCode.MISSING_PEER_DEPENDENCY,
                `Your application tried to access ${dependencyName} (a peer dependency); this isn't allowed as there is no ancestor to satisfy the requirement. Use a devDependency if needed.

Required package: ${dependencyName}${dependencyName !== requestForDisplay ? ` (via "${requestForDisplay}")` : ``}
Required by: ${issuerForDisplay}
`,
                { request: requestForDisplay, issuer: issuerForDisplay, dependencyName }
              );
            } else {
              const brokenAncestors = findBrokenPeerDependencies(dependencyName, issuerLocator);
              if (brokenAncestors.every((ancestor) => isDependencyTreeRoot(ancestor))) {
                error = makeError2(
                  ErrorCode.MISSING_PEER_DEPENDENCY,
                  `${issuerLocator.name} tried to access ${dependencyName} (a peer dependency) but it isn't provided by your application; this makes the require call ambiguous and unsound.

Required package: ${dependencyName}${dependencyName !== requestForDisplay ? ` (via "${requestForDisplay}")` : ``}
Required by: ${issuerLocator.name}@${issuerLocator.reference} (via ${issuerForDisplay})
${brokenAncestors.map((ancestorLocator) => `Ancestor breaking the chain: ${ancestorLocator.name}@${ancestorLocator.reference}
`).join(``)}
`,
                  { request: requestForDisplay, issuer: issuerForDisplay, issuerLocator: Object.assign({}, issuerLocator), dependencyName, brokenAncestors }
                );
              } else {
                error = makeError2(
                  ErrorCode.MISSING_PEER_DEPENDENCY,
                  `${issuerLocator.name} tried to access ${dependencyName} (a peer dependency) but it isn't provided by its ancestors; this makes the require call ambiguous and unsound.

Required package: ${dependencyName}${dependencyName !== requestForDisplay ? ` (via "${requestForDisplay}")` : ``}
Required by: ${issuerLocator.name}@${issuerLocator.reference} (via ${issuerForDisplay})

${brokenAncestors.map((ancestorLocator) => `Ancestor breaking the chain: ${ancestorLocator.name}@${ancestorLocator.reference}
`).join(``)}
`,
                  { request: requestForDisplay, issuer: issuerForDisplay, issuerLocator: Object.assign({}, issuerLocator), dependencyName, brokenAncestors }
                );
              }
            }
          } else if (dependencyReference === void 0) {
            if (!considerBuiltins && module$1.isBuiltin(request)) {
              if (isDependencyTreeRoot(issuerLocator)) {
                error = makeError2(
                  ErrorCode.UNDECLARED_DEPENDENCY,
                  `Your application tried to access ${dependencyName}. While this module is usually interpreted as a Node builtin, your resolver is running inside a non-Node resolution context where such builtins are ignored. Since ${dependencyName} isn't otherwise declared in your dependencies, this makes the require call ambiguous and unsound.

Required package: ${dependencyName}${dependencyName !== requestForDisplay ? ` (via "${requestForDisplay}")` : ``}
Required by: ${issuerForDisplay}
`,
                  { request: requestForDisplay, issuer: issuerForDisplay, dependencyName }
                );
              } else {
                error = makeError2(
                  ErrorCode.UNDECLARED_DEPENDENCY,
                  `${issuerLocator.name} tried to access ${dependencyName}. While this module is usually interpreted as a Node builtin, your resolver is running inside a non-Node resolution context where such builtins are ignored. Since ${dependencyName} isn't otherwise declared in ${issuerLocator.name}'s dependencies, this makes the require call ambiguous and unsound.

Required package: ${dependencyName}${dependencyName !== requestForDisplay ? ` (via "${requestForDisplay}")` : ``}
Required by: ${issuerForDisplay}
`,
                  { request: requestForDisplay, issuer: issuerForDisplay, issuerLocator: Object.assign({}, issuerLocator), dependencyName }
                );
              }
            } else {
              if (isDependencyTreeRoot(issuerLocator)) {
                error = makeError2(
                  ErrorCode.UNDECLARED_DEPENDENCY,
                  `Your application tried to access ${dependencyName}, but it isn't declared in your dependencies; this makes the require call ambiguous and unsound.

Required package: ${dependencyName}${dependencyName !== requestForDisplay ? ` (via "${requestForDisplay}")` : ``}
Required by: ${issuerForDisplay}
`,
                  { request: requestForDisplay, issuer: issuerForDisplay, dependencyName }
                );
              } else {
                error = makeError2(
                  ErrorCode.UNDECLARED_DEPENDENCY,
                  `${issuerLocator.name} tried to access ${dependencyName}, but it isn't declared in its dependencies; this makes the require call ambiguous and unsound.

Required package: ${dependencyName}${dependencyName !== requestForDisplay ? ` (via "${requestForDisplay}")` : ``}
Required by: ${issuerLocator.name}@${issuerLocator.reference} (via ${issuerForDisplay})
`,
                  { request: requestForDisplay, issuer: issuerForDisplay, issuerLocator: Object.assign({}, issuerLocator), dependencyName }
                );
              }
            }
          }
          if (dependencyReference == null) {
            if (fallbackReference === null || error === null)
              throw error || new Error(`Assertion failed: Expected an error to have been set`);
            dependencyReference = fallbackReference;
            const message = error.message.replace(/\n.*/g, ``);
            error.message = message;
            if (!emittedWarnings.has(message) && debugLevel !== 0) {
              emittedWarnings.add(message);
              process.emitWarning(error);
            }
          }
          const dependencyLocator = Array.isArray(dependencyReference) ? { name: dependencyReference[0], reference: dependencyReference[1] } : { name: dependencyName, reference: dependencyReference };
          const dependencyInformation = getPackageInformationSafe(dependencyLocator);
          if (!dependencyInformation.packageLocation) {
            throw makeError2(
              ErrorCode.MISSING_DEPENDENCY,
              `A dependency seems valid but didn't get installed for some reason. This might be caused by a partial install, such as dev vs prod.

Required package: ${dependencyLocator.name}@${dependencyLocator.reference}${dependencyLocator.name !== requestForDisplay ? ` (via "${requestForDisplay}")` : ``}
Required by: ${issuerLocator.name}@${issuerLocator.reference} (via ${issuerForDisplay})
`,
              { request: requestForDisplay, issuer: issuerForDisplay, dependencyLocator: Object.assign({}, dependencyLocator) }
            );
          }
          const dependencyLocation = dependencyInformation.packageLocation;
          if (subPath) {
            unqualifiedPath = ppath.join(dependencyLocation, subPath);
          } else {
            unqualifiedPath = dependencyLocation;
          }
        }
        return ppath.normalize(unqualifiedPath);
      }
      function resolveUnqualifiedExport(request, unqualifiedPath, conditions = defaultExportsConditions, issuer) {
        if (isStrictRegExp.test(request))
          return unqualifiedPath;
        const unqualifiedExportPath = applyNodeExportsResolution(unqualifiedPath, conditions, issuer);
        if (unqualifiedExportPath) {
          return ppath.normalize(unqualifiedExportPath);
        } else {
          return unqualifiedPath;
        }
      }
      function resolveUnqualified(unqualifiedPath, { extensions: extensions2 = Object.keys(module$1.Module._extensions) } = {}) {
        const candidates = [];
        const qualifiedPath = applyNodeExtensionResolution(unqualifiedPath, candidates, { extensions: extensions2 });
        if (qualifiedPath) {
          reportRequiredFilesToWatchMode([qualifiedPath]);
          return ppath.normalize(qualifiedPath);
        } else {
          reportRequiredFilesToWatchMode(candidates);
          const unqualifiedPathForDisplay = getPathForDisplay(unqualifiedPath);
          const containingPackage = findPackageLocator(unqualifiedPath);
          if (containingPackage) {
            const { packageLocation } = getPackageInformationSafe(containingPackage);
            let exists = true;
            try {
              opts2.fakeFs.accessSync(packageLocation);
            } catch (err) {
              if (err?.code === `ENOENT`) {
                exists = false;
              } else {
                const readableError = (err?.message ?? err ?? `empty exception thrown`).replace(/^[A-Z]/, ($0) => $0.toLowerCase());
                throw makeError2(ErrorCode.QUALIFIED_PATH_RESOLUTION_FAILED, `Required package exists but could not be accessed (${readableError}).

Missing package: ${containingPackage.name}@${containingPackage.reference}
Expected package location: ${getPathForDisplay(packageLocation)}
`, { unqualifiedPath: unqualifiedPathForDisplay, extensions: extensions2 });
              }
            }
            if (!exists) {
              const errorMessage = packageLocation.includes(`/unplugged/`) ? `Required unplugged package missing from disk. This may happen when switching branches without running installs (unplugged packages must be fully materialized on disk to work).` : `Required package missing from disk. If you keep your packages inside your repository then restarting the Node process may be enough. Otherwise, try to run an install first.`;
              throw makeError2(
                ErrorCode.QUALIFIED_PATH_RESOLUTION_FAILED,
                `${errorMessage}

Missing package: ${containingPackage.name}@${containingPackage.reference}
Expected package location: ${getPathForDisplay(packageLocation)}
`,
                { unqualifiedPath: unqualifiedPathForDisplay, extensions: extensions2 }
              );
            }
          }
          throw makeError2(
            ErrorCode.QUALIFIED_PATH_RESOLUTION_FAILED,
            `Qualified path resolution failed: we looked for the following paths, but none could be accessed.

Source path: ${unqualifiedPathForDisplay}
${candidates.map((candidate) => `Not found: ${getPathForDisplay(candidate)}
`).join(``)}`,
            { unqualifiedPath: unqualifiedPathForDisplay, extensions: extensions2 }
          );
        }
      }
      function resolvePrivateRequest(request, issuer, opts22) {
        if (!issuer)
          throw new Error(`Assertion failed: An issuer is required to resolve private import mappings`);
        const resolved = packageImportsResolve({
          name: request,
          base: url7.pathToFileURL(npath2.fromPortablePath(issuer)),
          conditions: opts22.conditions ?? defaultExportsConditions,
          readFileSyncFn: tryReadFile
        });
        if (resolved instanceof URL) {
          return resolveUnqualified(npath2.toPortablePath(url7.fileURLToPath(resolved)), { extensions: opts22.extensions });
        } else {
          if (resolved.startsWith(`#`))
            throw new Error(`Mapping from one private import to another isn't allowed`);
          return resolveRequest(resolved, issuer, opts22);
        }
      }
      function resolveRequest(request, issuer, opts22 = {}) {
        try {
          if (request.startsWith(`#`))
            return resolvePrivateRequest(request, issuer, opts22);
          const { considerBuiltins, extensions: extensions2, conditions } = opts22;
          const unqualifiedPath = resolveToUnqualified(request, issuer, { considerBuiltins });
          if (request === `pnpapi`)
            return unqualifiedPath;
          if (unqualifiedPath === null)
            return null;
          const isIssuerIgnored = () => issuer !== null ? isPathIgnored(issuer) : false;
          const remappedPath = (!considerBuiltins || !module$1.isBuiltin(request)) && !isIssuerIgnored() ? resolveUnqualifiedExport(request, unqualifiedPath, conditions, issuer) : unqualifiedPath;
          return resolveUnqualified(remappedPath, { extensions: extensions2 });
        } catch (error) {
          if (Object.hasOwn(error, `pnpCode`))
            Object.assign(error.data, { request: getPathForDisplay(request), issuer: issuer && getPathForDisplay(issuer) });
          throw error;
        }
      }
      function resolveVirtual(request) {
        const normalized = ppath.normalize(request);
        const resolved = VirtualFS.resolveVirtual(normalized);
        return resolved !== normalized ? resolved : null;
      }
      return {
        VERSIONS,
        topLevel,
        getLocator: (name, referencish) => {
          if (Array.isArray(referencish)) {
            return { name: referencish[0], reference: referencish[1] };
          } else {
            return { name, reference: referencish };
          }
        },
        getDependencyTreeRoots: () => {
          return [...runtimeState.dependencyTreeRoots];
        },
        getAllLocators() {
          const locators = [];
          for (const [name, entry] of packageRegistry)
            for (const reference of entry.keys())
              if (name !== null && reference !== null)
                locators.push({ name, reference });
          return locators;
        },
        getPackageInformation: (locator) => {
          const info = getPackageInformation(locator);
          if (info === null)
            return null;
          const packageLocation = npath2.fromPortablePath(info.packageLocation);
          const nativeInfo = { ...info, packageLocation };
          return nativeInfo;
        },
        findPackageLocator: (path219) => {
          return findPackageLocator(npath2.toPortablePath(path219));
        },
        resolveToUnqualified: maybeLog(`resolveToUnqualified`, (request, issuer, opts22) => {
          const portableIssuer = issuer !== null ? npath2.toPortablePath(issuer) : null;
          const resolution = resolveToUnqualified(npath2.toPortablePath(request), portableIssuer, opts22);
          if (resolution === null)
            return null;
          return npath2.fromPortablePath(resolution);
        }),
        resolveUnqualified: maybeLog(`resolveUnqualified`, (unqualifiedPath, opts22) => {
          return npath2.fromPortablePath(resolveUnqualified(npath2.toPortablePath(unqualifiedPath), opts22));
        }),
        resolveRequest: maybeLog(`resolveRequest`, (request, issuer, opts22) => {
          const portableIssuer = issuer !== null ? npath2.toPortablePath(issuer) : null;
          const resolution = resolveRequest(npath2.toPortablePath(request), portableIssuer, opts22);
          if (resolution === null)
            return null;
          return npath2.fromPortablePath(resolution);
        }),
        resolveVirtual: maybeLog(`resolveVirtual`, (path219) => {
          const result2 = resolveVirtual(npath2.toPortablePath(path219));
          if (result2 !== null) {
            return npath2.fromPortablePath(result2);
          } else {
            return null;
          }
        })
      };
    }
    async function hydratePnpFile(location, { fakeFs, pnpapiResolution }) {
      const source = await fakeFs.readFilePromise(location, `utf8`);
      return hydratePnpSource(source, {
        basePath: path218.dirname(location),
        fakeFs,
        pnpapiResolution
      });
    }
    function hydratePnpSource(source, { basePath, fakeFs, pnpapiResolution }) {
      const data = JSON.parse(source);
      const runtimeState = hydrateRuntimeState(data, {
        basePath
      });
      return makeApi(runtimeState, {
        compatibilityMode: true,
        fakeFs,
        pnpapiResolution
      });
    }
    var makeRuntimeApi = (settings, basePath, fakeFs) => {
      const data = generateSerializedState(settings);
      const state = hydrateRuntimeState(data, { basePath });
      const pnpapiResolution = npath2.join(basePath, Filename.pnpCjs);
      return makeApi(state, { fakeFs, pnpapiResolution });
    };
    var hook;
    var builtLoader = () => {
      if (typeof hook === `undefined`)
        hook = require$$0__default.default.brotliDecompressSync(Buffer.from(" ", "base64")).toString();
      return hook;
    };
    exports2.LinkType = LinkType;
    exports2.generateInlinedScript = generateInlinedScript2;
    exports2.generateLoader = generateLoader;
    exports2.generatePrettyJson = generatePrettyJson;
    exports2.generateSplitScript = generateSplitScript;
    exports2.getESMLoaderTemplate = builtLoader;
    exports2.hydratePnpFile = hydratePnpFile;
    exports2.hydratePnpSource = hydratePnpSource;
    exports2.makeRuntimeApi = makeRuntimeApi;
  }
});

// ../lockfile/to-pnp/lib/index.js
import { promises as fs66 } from "node:fs";
import path113 from "node:path";
async function writePnpFile(lockfile, opts2) {
  const packageRegistry = lockfileToPackageRegistry(lockfile, opts2);
  const loaderFile = (0, import_pnp.generateInlinedScript)({
    dependencyTreeRoots: [],
    ignorePattern: void 0,
    packageRegistry,
    pnpZipBackend: "libzip",
    shebang: void 0
  });
  await fs66.writeFile(path113.join(opts2.lockfileDir, ".pnp.cjs"), loaderFile, "utf8");
}
function lockfileToPackageRegistry(lockfile, opts2) {
  const packageRegistry = /* @__PURE__ */ new Map();
  for (const [importerId, importer] of Object.entries(lockfile.importers)) {
    if (importerId === ".") {
      const packageStore = /* @__PURE__ */ new Map([
        [
          null,
          {
            packageDependencies: new Map([
              ...importer.dependencies != null ? toPackageDependenciesMap(lockfile, importer.dependencies) : [],
              ...importer.optionalDependencies != null ? toPackageDependenciesMap(lockfile, importer.optionalDependencies) : [],
              ...importer.devDependencies != null ? toPackageDependenciesMap(lockfile, importer.devDependencies) : []
            ]),
            packageLocation: "./"
          }
        ]
      ]);
      packageRegistry.set(null, packageStore);
    } else {
      const name = opts2.importerNames[importerId];
      const packageStore = /* @__PURE__ */ new Map([
        [
          importerId,
          {
            packageDependencies: new Map([
              [name, importerId],
              ...importer.dependencies != null ? toPackageDependenciesMap(lockfile, importer.dependencies, importerId) : [],
              ...importer.optionalDependencies != null ? toPackageDependenciesMap(lockfile, importer.optionalDependencies, importerId) : [],
              ...importer.devDependencies != null ? toPackageDependenciesMap(lockfile, importer.devDependencies, importerId) : []
            ]),
            packageLocation: `./${importerId}`
          }
        ]
      ]);
      packageRegistry.set(name, packageStore);
    }
  }
  for (const [relDepPath, pkgSnapshot] of Object.entries(lockfile.packages ?? {})) {
    const { name, version: version2, peerDepGraphHash } = nameVerFromPkgSnapshot(relDepPath, pkgSnapshot);
    const pnpVersion = toPnPVersion(version2, peerDepGraphHash);
    let packageStore = packageRegistry.get(name);
    if (!packageStore) {
      packageStore = /* @__PURE__ */ new Map();
      packageRegistry.set(name, packageStore);
    }
    let packageLocation = (0, import_normalize_path8.default)(path113.relative(opts2.lockfileDir, path113.join(opts2.virtualStoreDir, depPathToFilename(relDepPath, opts2.virtualStoreDirMaxLength), "node_modules", name)));
    if (!packageLocation.startsWith("../")) {
      packageLocation = `./${packageLocation}`;
    }
    if (!packageLocation.endsWith("/")) {
      packageLocation += "/";
    }
    packageStore.set(pnpVersion, {
      packageDependencies: new Map([
        [name, pnpVersion],
        ...pkgSnapshot.dependencies != null ? toPackageDependenciesMap(lockfile, pkgSnapshot.dependencies) : [],
        ...pkgSnapshot.optionalDependencies != null ? toPackageDependenciesMap(lockfile, pkgSnapshot.optionalDependencies) : []
      ]),
      packageLocation
    });
  }
  return packageRegistry;
}
function toPackageDependenciesMap(lockfile, deps, importerId) {
  return Object.entries(deps).map(([depAlias, ref]) => {
    if (importerId && ref.startsWith("link:")) {
      return [depAlias, path113.join(importerId, ref.slice(5))];
    }
    const relDepPath = refToRelative(ref, depAlias);
    if (!relDepPath)
      return [depAlias, ref];
    const { name, version: version2, peerDepGraphHash } = nameVerFromPkgSnapshot(relDepPath, lockfile.packages[relDepPath]);
    const pnpVersion = toPnPVersion(version2, peerDepGraphHash);
    if (depAlias === name) {
      return [depAlias, pnpVersion];
    }
    return [depAlias, [name, pnpVersion]];
  });
}
function toPnPVersion(version2, peerDepGraphHash) {
  return peerDepGraphHash ? `virtual:${version2}${peerDepGraphHash}#${version2}` : version2;
}
var import_pnp, import_normalize_path8;
var init_lib117 = __esm({
  "../lockfile/to-pnp/lib/index.js"() {
    "use strict";
    init_lib65();
    init_lib70();
    import_pnp = __toESM(require_lib24(), 1);
    import_normalize_path8 = __toESM(require_normalize_path(), 1);
  }
});

// ../installing/deps-restorer/lib/extendProjectsWithTargetDirs.js
function extendProjectsWithTargetDirs(projects, injectionTargetsByDepPath) {
  const projectsById = Object.fromEntries(projects.map((project) => [project.id, { ...project, targetDirs: [] }]));
  for (const [depPath, locations] of injectionTargetsByDepPath) {
    const parsed = parse6(depPath);
    if (!parsed.name || !parsed.nonSemverVersion?.startsWith("file:"))
      continue;
    const importerId = parsed.nonSemverVersion.replace(/^file:/, "");
    if (projectsById[importerId] == null)
      continue;
    for (const location of locations) {
      if (!projectsById[importerId].targetDirs.includes(location)) {
        projectsById[importerId].targetDirs.push(location);
      }
    }
    projectsById[importerId].stages = ["preinstall", "install", "postinstall", "prepare", "prepublishOnly"];
  }
  return Object.values(projectsById);
}
var init_extendProjectsWithTargetDirs = __esm({
  "../installing/deps-restorer/lib/extendProjectsWithTargetDirs.js"() {
    "use strict";
    init_lib65();
  }
});

// ../installing/deps-restorer/lib/linkHoistedModules.js
import path114 from "node:path";
async function linkHoistedModules(storeController, graph, prevGraph, hierarchy, opts2) {
  const dirsToRemove = difference_default(Object.keys(prevGraph), Object.keys(graph));
  statsLogger.debug({
    prefix: opts2.lockfileDir,
    removed: dirsToRemove.length
  });
  await Promise.all(dirsToRemove.map((dir) => tryRemoveDir(dir)));
  const nodeVersion = findRuntimeNodeVersion(Object.values(graph).map((node) => node.depPath));
  await Promise.all(Object.entries(hierarchy).map(([parentDir, depsHierarchy]) => {
    function warn(message) {
      logger.info({
        message,
        prefix: parentDir
      });
    }
    return linkAllPkgsInOrder(storeController, graph, depsHierarchy, parentDir, {
      ...opts2,
      nodeVersion,
      warn
    });
  }));
}
async function tryRemoveDir(dir) {
  removalLogger.debug(dir);
  try {
    await rimraf(dir);
  } catch (err) {
  }
}
async function linkAllPkgsInOrder(storeController, graph, hierarchy, parentDir, opts2) {
  await Promise.all(Object.entries(hierarchy).map(async ([dir, deps]) => {
    const depNode = graph[dir];
    if (depNode.fetching) {
      let filesResponse;
      try {
        filesResponse = (await depNode.fetching()).files;
      } catch (err) {
        if (depNode.optional)
          return;
        throw err;
      }
      depNode.requiresBuild = filesResponse.requiresBuild;
      let sideEffectsCacheKey;
      if (opts2.sideEffectsCacheRead && filesResponse.sideEffectsMaps && !isEmpty_default(filesResponse.sideEffectsMaps)) {
        if (opts2.allowBuild?.(depNode.name, depNode.version) === true) {
          sideEffectsCacheKey = calcDepState(graph, opts2.depsStateCache, dir, {
            includeDepGraphHash: !opts2.ignoreScripts && depNode.requiresBuild,
            // true when is built
            patchFileHash: depNode.patch?.hash,
            supportedArchitectures: opts2.supportedArchitectures,
            nodeVersion: opts2.nodeVersion
          });
        }
      }
      await limitLinking2(async () => {
        const { importMethod, isBuilt } = await storeController.importPackage(depNode.dir, {
          filesResponse,
          force: true,
          disableRelinkLocalDirDeps: opts2.disableRelinkLocalDirDeps,
          keepModulesDir: true,
          requiresBuild: depNode.patch != null || depNode.requiresBuild,
          sideEffectsCacheKey
        });
        if (importMethod) {
          progressLogger.debug({
            method: importMethod,
            requester: opts2.lockfileDir,
            status: "imported",
            to: depNode.dir
          });
        }
        depNode.isBuilt = isBuilt;
      });
    }
    return linkAllPkgsInOrder(storeController, graph, deps, dir, opts2);
  }));
  const modulesDir = path114.join(parentDir, "node_modules");
  const binsDir = path114.join(modulesDir, ".bin");
  await linkBins(modulesDir, binsDir, {
    allowExoticManifests: true,
    preferSymlinkedExecutables: opts2.preferSymlinkedExecutables,
    warn: opts2.warn
  });
}
var limitLinking2;
var init_linkHoistedModules = __esm({
  "../installing/deps-restorer/lib/linkHoistedModules.js"() {
    "use strict";
    init_lib42();
    init_lib6();
    init_lib72();
    init_lib3();
    init_rimraf();
    init_p_limit();
    init_es();
    limitLinking2 = pLimit(16);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/nm/4.0.7/c135a4b70fa5215eea6192d8f4d00ac40cbd5feee19cb073f4a32c6807509493/node_modules/@yarnpkg/nm/lib/hoist.js
var require_hoist = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/nm/4.0.7/c135a4b70fa5215eea6192d8f4d00ac40cbd5feee19cb073f4a32c6807509493/node_modules/@yarnpkg/nm/lib/hoist.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.hoist = exports2.HoisterDependencyKind = void 0;
    var HoisterDependencyKind2;
    (function(HoisterDependencyKind3) {
      HoisterDependencyKind3[HoisterDependencyKind3["REGULAR"] = 0] = "REGULAR";
      HoisterDependencyKind3[HoisterDependencyKind3["WORKSPACE"] = 1] = "WORKSPACE";
      HoisterDependencyKind3[HoisterDependencyKind3["EXTERNAL_SOFT_LINK"] = 2] = "EXTERNAL_SOFT_LINK";
    })(HoisterDependencyKind2 || (exports2.HoisterDependencyKind = HoisterDependencyKind2 = {}));
    var Hoistable;
    (function(Hoistable2) {
      Hoistable2[Hoistable2["YES"] = 0] = "YES";
      Hoistable2[Hoistable2["NO"] = 1] = "NO";
      Hoistable2[Hoistable2["DEPENDS"] = 2] = "DEPENDS";
    })(Hoistable || (Hoistable = {}));
    var makeLocator = (name, reference) => `${name}@${reference}`;
    var makeIdent = (name, reference) => {
      const hashIdx = reference.indexOf(`#`);
      const realReference = hashIdx >= 0 ? reference.substring(hashIdx + 1) : reference;
      return makeLocator(name, realReference);
    };
    var DebugLevel;
    (function(DebugLevel2) {
      DebugLevel2[DebugLevel2["NONE"] = -1] = "NONE";
      DebugLevel2[DebugLevel2["PERF"] = 0] = "PERF";
      DebugLevel2[DebugLevel2["CHECK"] = 1] = "CHECK";
      DebugLevel2[DebugLevel2["REASONS"] = 2] = "REASONS";
      DebugLevel2[DebugLevel2["INTENSIVE_CHECK"] = 9] = "INTENSIVE_CHECK";
    })(DebugLevel || (DebugLevel = {}));
    var hoist3 = (tree, opts2 = {}) => {
      const debugLevel = opts2.debugLevel || Number(process.env.NM_DEBUG_LEVEL || DebugLevel.NONE);
      const check = opts2.check || debugLevel >= DebugLevel.INTENSIVE_CHECK;
      const hoistingLimits = opts2.hoistingLimits || /* @__PURE__ */ new Map();
      const options = { check, debugLevel, hoistingLimits, fastLookupPossible: true };
      let startTime;
      if (options.debugLevel >= DebugLevel.PERF)
        startTime = Date.now();
      const treeCopy = cloneTree(tree, options);
      let anotherRoundNeeded = false;
      let round = 0;
      do {
        const result2 = hoistTo(treeCopy, [treeCopy], /* @__PURE__ */ new Set([treeCopy.locator]), /* @__PURE__ */ new Map(), options);
        anotherRoundNeeded = result2.anotherRoundNeeded || result2.isGraphChanged;
        options.fastLookupPossible = false;
        round++;
      } while (anotherRoundNeeded);
      if (options.debugLevel >= DebugLevel.PERF)
        console.log(`hoist time: ${Date.now() - startTime}ms, rounds: ${round}`);
      if (options.debugLevel >= DebugLevel.CHECK) {
        const prevTreeDump = dumpDepTree(treeCopy);
        const isGraphChanged = hoistTo(treeCopy, [treeCopy], /* @__PURE__ */ new Set([treeCopy.locator]), /* @__PURE__ */ new Map(), options).isGraphChanged;
        if (isGraphChanged)
          throw new Error(`The hoisting result is not terminal, prev tree:
${prevTreeDump}, next tree:
${dumpDepTree(treeCopy)}`);
        const checkLog = selfCheck(treeCopy);
        if (checkLog) {
          throw new Error(`${checkLog}, after hoisting finished:
${dumpDepTree(treeCopy)}`);
        }
      }
      if (options.debugLevel >= DebugLevel.REASONS)
        console.log(dumpDepTree(treeCopy));
      return shrinkTree(treeCopy);
    };
    exports2.hoist = hoist3;
    var getZeroRoundUsedDependencies = (rootNodePath) => {
      const rootNode = rootNodePath[rootNodePath.length - 1];
      const usedDependencies = /* @__PURE__ */ new Map();
      const seenNodes = /* @__PURE__ */ new Set();
      const addUsedDependencies = (node) => {
        if (seenNodes.has(node))
          return;
        seenNodes.add(node);
        for (const dep of node.hoistedDependencies.values())
          usedDependencies.set(dep.name, dep);
        for (const dep of node.dependencies.values()) {
          if (!node.peerNames.has(dep.name)) {
            addUsedDependencies(dep);
          }
        }
      };
      addUsedDependencies(rootNode);
      return usedDependencies;
    };
    var getUsedDependencies = (rootNodePath) => {
      const rootNode = rootNodePath[rootNodePath.length - 1];
      const usedDependencies = /* @__PURE__ */ new Map();
      const seenNodes = /* @__PURE__ */ new Set();
      const hiddenDependencies = /* @__PURE__ */ new Set();
      const addUsedDependencies = (node, hiddenDependencies2) => {
        if (seenNodes.has(node))
          return;
        seenNodes.add(node);
        for (const dep of node.hoistedDependencies.values()) {
          if (!hiddenDependencies2.has(dep.name)) {
            let reachableDependency;
            for (const node2 of rootNodePath) {
              reachableDependency = node2.dependencies.get(dep.name);
              if (reachableDependency) {
                usedDependencies.set(reachableDependency.name, reachableDependency);
              }
            }
          }
        }
        const childrenHiddenDependencies = /* @__PURE__ */ new Set();
        for (const dep of node.dependencies.values())
          childrenHiddenDependencies.add(dep.name);
        for (const dep of node.dependencies.values()) {
          if (!node.peerNames.has(dep.name)) {
            addUsedDependencies(dep, childrenHiddenDependencies);
          }
        }
      };
      addUsedDependencies(rootNode, hiddenDependencies);
      return usedDependencies;
    };
    var decoupleGraphNode = (parent, node) => {
      if (node.decoupled)
        return node;
      const { name, references, ident, locator, dependencies, originalDependencies, hoistedDependencies, peerNames, reasons, isHoistBorder, hoistPriority, dependencyKind, hoistedFrom, hoistedTo } = node;
      const clone3 = {
        name,
        references: new Set(references),
        ident,
        locator,
        dependencies: new Map(dependencies),
        originalDependencies: new Map(originalDependencies),
        hoistedDependencies: new Map(hoistedDependencies),
        peerNames: new Set(peerNames),
        reasons: new Map(reasons),
        decoupled: true,
        isHoistBorder,
        hoistPriority,
        dependencyKind,
        hoistedFrom: new Map(hoistedFrom),
        hoistedTo: new Map(hoistedTo)
      };
      const selfDep = clone3.dependencies.get(name);
      if (selfDep && selfDep.ident == clone3.ident)
        clone3.dependencies.set(name, clone3);
      parent.dependencies.set(clone3.name, clone3);
      return clone3;
    };
    var getHoistIdentMap = (rootNode, preferenceMap) => {
      const identMap = /* @__PURE__ */ new Map([[rootNode.name, [rootNode.ident]]]);
      for (const dep of rootNode.dependencies.values()) {
        if (!rootNode.peerNames.has(dep.name)) {
          identMap.set(dep.name, [dep.ident]);
        }
      }
      const keyList = Array.from(preferenceMap.keys());
      keyList.sort((key1, key2) => {
        const entry1 = preferenceMap.get(key1);
        const entry2 = preferenceMap.get(key2);
        if (entry2.hoistPriority !== entry1.hoistPriority) {
          return entry2.hoistPriority - entry1.hoistPriority;
        } else {
          const entry1Usages = entry1.dependents.size + entry1.peerDependents.size;
          const entry2Usages = entry2.dependents.size + entry2.peerDependents.size;
          return entry2Usages - entry1Usages;
        }
      });
      for (const key of keyList) {
        const name = key.substring(0, key.indexOf(`@`, 1));
        const ident = key.substring(name.length + 1);
        if (!rootNode.peerNames.has(name)) {
          let idents = identMap.get(name);
          if (!idents) {
            idents = [];
            identMap.set(name, idents);
          }
          if (idents.indexOf(ident) < 0) {
            idents.push(ident);
          }
        }
      }
      return identMap;
    };
    var getSortedRegularDependencies = (node) => {
      const dependencies = /* @__PURE__ */ new Set();
      const addDep = (dep, seenDeps = /* @__PURE__ */ new Set()) => {
        if (seenDeps.has(dep))
          return;
        seenDeps.add(dep);
        for (const peerName of dep.peerNames) {
          if (!node.peerNames.has(peerName)) {
            const peerDep = node.dependencies.get(peerName);
            if (peerDep && !dependencies.has(peerDep)) {
              addDep(peerDep, seenDeps);
            }
          }
        }
        dependencies.add(dep);
      };
      for (const dep of node.dependencies.values()) {
        if (!node.peerNames.has(dep.name)) {
          addDep(dep);
        }
      }
      return dependencies;
    };
    var hoistTo = (tree, rootNodePath, rootNodePathLocators, parentShadowedNodes, options, seenNodes = /* @__PURE__ */ new Set()) => {
      const rootNode = rootNodePath[rootNodePath.length - 1];
      if (seenNodes.has(rootNode))
        return { anotherRoundNeeded: false, isGraphChanged: false };
      seenNodes.add(rootNode);
      const preferenceMap = buildPreferenceMap(rootNode);
      const hoistIdentMap = getHoistIdentMap(rootNode, preferenceMap);
      const usedDependencies = tree == rootNode ? /* @__PURE__ */ new Map() : options.fastLookupPossible ? getZeroRoundUsedDependencies(rootNodePath) : getUsedDependencies(rootNodePath);
      let wasStateChanged;
      let anotherRoundNeeded = false;
      let isGraphChanged = false;
      const hoistIdents = new Map(Array.from(hoistIdentMap.entries()).map(([k2, v]) => [k2, v[0]]));
      const shadowedNodes = /* @__PURE__ */ new Map();
      do {
        const result2 = hoistGraph2(tree, rootNodePath, rootNodePathLocators, usedDependencies, hoistIdents, hoistIdentMap, parentShadowedNodes, shadowedNodes, options);
        if (result2.isGraphChanged)
          isGraphChanged = true;
        if (result2.anotherRoundNeeded)
          anotherRoundNeeded = true;
        wasStateChanged = false;
        for (const [name, idents] of hoistIdentMap) {
          if (idents.length > 1 && !rootNode.dependencies.has(name)) {
            hoistIdents.delete(name);
            idents.shift();
            hoistIdents.set(name, idents[0]);
            wasStateChanged = true;
          }
        }
      } while (wasStateChanged);
      for (const dependency of rootNode.dependencies.values()) {
        if (!rootNode.peerNames.has(dependency.name) && !rootNodePathLocators.has(dependency.locator)) {
          rootNodePathLocators.add(dependency.locator);
          const result2 = hoistTo(tree, [...rootNodePath, dependency], rootNodePathLocators, shadowedNodes, options);
          if (result2.isGraphChanged)
            isGraphChanged = true;
          if (result2.anotherRoundNeeded)
            anotherRoundNeeded = true;
          rootNodePathLocators.delete(dependency.locator);
        }
      }
      return { anotherRoundNeeded, isGraphChanged };
    };
    var hasUnhoistedDependencies = (node) => {
      for (const [subName, subDependency] of node.dependencies) {
        if (!node.peerNames.has(subName) && subDependency.ident !== node.ident) {
          return true;
        }
      }
      return false;
    };
    var getNodeHoistInfo = (rootNode, rootNodePathLocators, nodePath, node, usedDependencies, hoistIdents, hoistIdentMap, shadowedNodes, { outputReason, fastLookupPossible }) => {
      let reasonRoot;
      let reason = null;
      let dependsOn = /* @__PURE__ */ new Set();
      if (outputReason)
        reasonRoot = `${Array.from(rootNodePathLocators).map((x) => prettyPrintLocator(x)).join(`\u2192`)}`;
      const parentNode = nodePath[nodePath.length - 1];
      const isSelfReference = node.ident === parentNode.ident;
      let isHoistable = !isSelfReference;
      if (outputReason && !isHoistable)
        reason = `- self-reference`;
      if (isHoistable) {
        isHoistable = node.dependencyKind !== HoisterDependencyKind2.WORKSPACE;
        if (outputReason && !isHoistable) {
          reason = `- workspace`;
        }
      }
      if (isHoistable && node.dependencyKind === HoisterDependencyKind2.EXTERNAL_SOFT_LINK) {
        isHoistable = !hasUnhoistedDependencies(node);
        if (outputReason && !isHoistable) {
          reason = `- external soft link with unhoisted dependencies`;
        }
      }
      if (isHoistable) {
        isHoistable = !rootNode.peerNames.has(node.name);
        if (outputReason && !isHoistable) {
          reason = `- cannot shadow peer: ${prettyPrintLocator(rootNode.originalDependencies.get(node.name).locator)} at ${reasonRoot}`;
        }
      }
      if (isHoistable) {
        let isNameAvailable = false;
        const usedDep = usedDependencies.get(node.name);
        isNameAvailable = !usedDep || usedDep.ident === node.ident;
        if (outputReason && !isNameAvailable)
          reason = `- filled by: ${prettyPrintLocator(usedDep.locator)} at ${reasonRoot}`;
        if (isNameAvailable) {
          for (let idx = nodePath.length - 1; idx >= 1; idx--) {
            const parent = nodePath[idx];
            const parentDep = parent.dependencies.get(node.name);
            if (parentDep && parentDep.ident !== node.ident) {
              isNameAvailable = false;
              let shadowedNames = shadowedNodes.get(parentNode);
              if (!shadowedNames) {
                shadowedNames = /* @__PURE__ */ new Set();
                shadowedNodes.set(parentNode, shadowedNames);
              }
              shadowedNames.add(node.name);
              if (outputReason)
                reason = `- filled by ${prettyPrintLocator(parentDep.locator)} at ${nodePath.slice(0, idx).map((x) => prettyPrintLocator(x.locator)).join(`\u2192`)}`;
              break;
            }
          }
        }
        isHoistable = isNameAvailable;
      }
      if (isHoistable) {
        const hoistedIdent = hoistIdents.get(node.name);
        isHoistable = hoistedIdent === node.ident;
        if (outputReason && !isHoistable) {
          reason = `- filled by: ${prettyPrintLocator(hoistIdentMap.get(node.name)[0])} at ${reasonRoot}`;
        }
      }
      if (isHoistable) {
        let arePeerDepsSatisfied = true;
        const checkList2 = new Set(node.peerNames);
        for (let idx = nodePath.length - 1; idx >= 1; idx--) {
          const parent = nodePath[idx];
          for (const name of checkList2) {
            if (parent.peerNames.has(name) && parent.originalDependencies.has(name))
              continue;
            const parentDepNode = parent.dependencies.get(name);
            if (parentDepNode && rootNode.dependencies.get(name) !== parentDepNode) {
              if (idx === nodePath.length - 1) {
                dependsOn.add(parentDepNode);
              } else {
                dependsOn = null;
                arePeerDepsSatisfied = false;
                if (outputReason) {
                  reason = `- peer dependency ${prettyPrintLocator(parentDepNode.locator)} from parent ${prettyPrintLocator(parent.locator)} was not hoisted to ${reasonRoot}`;
                }
              }
            }
            checkList2.delete(name);
          }
          if (!arePeerDepsSatisfied) {
            break;
          }
        }
        isHoistable = arePeerDepsSatisfied;
      }
      if (isHoistable && !fastLookupPossible) {
        for (const origDep of node.hoistedDependencies.values()) {
          const usedDep = usedDependencies.get(origDep.name) || rootNode.dependencies.get(origDep.name);
          if (!usedDep || origDep.ident !== usedDep.ident) {
            isHoistable = false;
            if (outputReason)
              reason = `- previously hoisted dependency mismatch, needed: ${prettyPrintLocator(origDep.locator)}, available: ${prettyPrintLocator(usedDep?.locator)}`;
            break;
          }
        }
      }
      if (dependsOn !== null && dependsOn.size > 0) {
        return { isHoistable: Hoistable.DEPENDS, dependsOn, reason };
      } else {
        return { isHoistable: isHoistable ? Hoistable.YES : Hoistable.NO, reason };
      }
    };
    var getAliasedLocator = (node) => `${node.name}@${node.locator}`;
    var hoistGraph2 = (tree, rootNodePath, rootNodePathLocators, usedDependencies, hoistIdents, hoistIdentMap, parentShadowedNodes, shadowedNodes, options) => {
      const rootNode = rootNodePath[rootNodePath.length - 1];
      const seenNodes = /* @__PURE__ */ new Set();
      let anotherRoundNeeded = false;
      let isGraphChanged = false;
      const hoistNodeDependencies = (nodePath, locatorPath, aliasedLocatorPath, parentNode, newNodes2) => {
        if (seenNodes.has(parentNode))
          return;
        const nextLocatorPath = [...locatorPath, getAliasedLocator(parentNode)];
        const nextAliasedLocatorPath = [...aliasedLocatorPath, getAliasedLocator(parentNode)];
        const dependantTree = /* @__PURE__ */ new Map();
        const hoistInfos = /* @__PURE__ */ new Map();
        for (const subDependency of getSortedRegularDependencies(parentNode)) {
          const hoistInfo = getNodeHoistInfo(rootNode, rootNodePathLocators, [rootNode, ...nodePath, parentNode], subDependency, usedDependencies, hoistIdents, hoistIdentMap, shadowedNodes, { outputReason: options.debugLevel >= DebugLevel.REASONS, fastLookupPossible: options.fastLookupPossible });
          hoistInfos.set(subDependency, hoistInfo);
          if (hoistInfo.isHoistable === Hoistable.DEPENDS) {
            for (const node of hoistInfo.dependsOn) {
              const nodeDependants = dependantTree.get(node.name) || /* @__PURE__ */ new Set();
              nodeDependants.add(subDependency.name);
              dependantTree.set(node.name, nodeDependants);
            }
          }
        }
        const unhoistableNodes = /* @__PURE__ */ new Set();
        const addUnhoistableNode = (node, hoistInfo, reason) => {
          if (!unhoistableNodes.has(node)) {
            unhoistableNodes.add(node);
            hoistInfos.set(node, { isHoistable: Hoistable.NO, reason });
            for (const dependantName of dependantTree.get(node.name) || []) {
              addUnhoistableNode(parentNode.dependencies.get(dependantName), hoistInfo, options.debugLevel >= DebugLevel.REASONS ? `- peer dependency ${prettyPrintLocator(node.locator)} from parent ${prettyPrintLocator(parentNode.locator)} was not hoisted` : ``);
            }
          }
        };
        for (const [node, hoistInfo] of hoistInfos)
          if (hoistInfo.isHoistable === Hoistable.NO)
            addUnhoistableNode(node, hoistInfo, hoistInfo.reason);
        let wereNodesHoisted = false;
        for (const node of hoistInfos.keys()) {
          if (!unhoistableNodes.has(node)) {
            isGraphChanged = true;
            const shadowedNames = parentShadowedNodes.get(parentNode);
            if (shadowedNames && shadowedNames.has(node.name))
              anotherRoundNeeded = true;
            wereNodesHoisted = true;
            parentNode.dependencies.delete(node.name);
            parentNode.hoistedDependencies.set(node.name, node);
            parentNode.reasons.delete(node.name);
            const hoistedNode = rootNode.dependencies.get(node.name);
            if (options.debugLevel >= DebugLevel.REASONS) {
              const hoistedFrom = Array.from(locatorPath).concat([parentNode.locator]).map((x) => prettyPrintLocator(x)).join(`\u2192`);
              let hoistedFromArray = rootNode.hoistedFrom.get(node.name);
              if (!hoistedFromArray) {
                hoistedFromArray = [];
                rootNode.hoistedFrom.set(node.name, hoistedFromArray);
              }
              hoistedFromArray.push(hoistedFrom);
              parentNode.hoistedTo.set(node.name, Array.from(rootNodePath).map((x) => prettyPrintLocator(x.locator)).join(`\u2192`));
            }
            if (!hoistedNode) {
              if (rootNode.ident !== node.ident) {
                rootNode.dependencies.set(node.name, node);
                newNodes2.add(node);
              }
            } else {
              for (const reference of node.references) {
                hoistedNode.references.add(reference);
              }
            }
          }
        }
        if (parentNode.dependencyKind === HoisterDependencyKind2.EXTERNAL_SOFT_LINK && wereNodesHoisted)
          anotherRoundNeeded = true;
        if (options.check) {
          const checkLog = selfCheck(tree);
          if (checkLog) {
            throw new Error(`${checkLog}, after hoisting dependencies of ${[rootNode, ...nodePath, parentNode].map((x) => prettyPrintLocator(x.locator)).join(`\u2192`)}:
${dumpDepTree(tree)}`);
          }
        }
        const children = getSortedRegularDependencies(parentNode);
        for (const node of children) {
          if (unhoistableNodes.has(node)) {
            const hoistInfo = hoistInfos.get(node);
            const hoistableIdent = hoistIdents.get(node.name);
            if ((hoistableIdent === node.ident || !parentNode.reasons.has(node.name)) && hoistInfo.isHoistable !== Hoistable.YES)
              parentNode.reasons.set(node.name, hoistInfo.reason);
            if (!node.isHoistBorder && nextAliasedLocatorPath.indexOf(getAliasedLocator(node)) < 0) {
              seenNodes.add(parentNode);
              const decoupledNode = decoupleGraphNode(parentNode, node);
              hoistNodeDependencies([...nodePath, parentNode], nextLocatorPath, nextAliasedLocatorPath, decoupledNode, nextNewNodes);
              seenNodes.delete(parentNode);
            }
          }
        }
      };
      let newNodes;
      let nextNewNodes = new Set(getSortedRegularDependencies(rootNode));
      const aliasedRootNodePathLocators = Array.from(rootNodePath).map((x) => getAliasedLocator(x));
      do {
        newNodes = nextNewNodes;
        nextNewNodes = /* @__PURE__ */ new Set();
        for (const dep of newNodes) {
          if (dep.locator === rootNode.locator || dep.isHoistBorder)
            continue;
          const decoupledDependency = decoupleGraphNode(rootNode, dep);
          hoistNodeDependencies([], Array.from(rootNodePathLocators), aliasedRootNodePathLocators, decoupledDependency, nextNewNodes);
        }
      } while (nextNewNodes.size > 0);
      return { anotherRoundNeeded, isGraphChanged };
    };
    var selfCheck = (tree) => {
      const log3 = [];
      const seenNodes = /* @__PURE__ */ new Set();
      const parents = /* @__PURE__ */ new Set();
      const checkNode = (node, parentDeps, parent) => {
        if (seenNodes.has(node))
          return;
        seenNodes.add(node);
        if (parents.has(node))
          return;
        const dependencies = new Map(parentDeps);
        for (const dep of node.dependencies.values())
          if (!node.peerNames.has(dep.name))
            dependencies.set(dep.name, dep);
        for (const origDep of node.originalDependencies.values()) {
          const dep = dependencies.get(origDep.name);
          const prettyPrintTreePath = () => `${Array.from(parents).concat([node]).map((x) => prettyPrintLocator(x.locator)).join(`\u2192`)}`;
          if (node.peerNames.has(origDep.name)) {
            const parentDep = parentDeps.get(origDep.name);
            if (parentDep !== dep || !parentDep || parentDep.ident !== origDep.ident) {
              log3.push(`${prettyPrintTreePath()} - broken peer promise: expected ${origDep.ident} but found ${parentDep ? parentDep.ident : parentDep}`);
            }
          } else {
            const hoistedFrom = parent.hoistedFrom.get(node.name);
            const originalHoistedTo = node.hoistedTo.get(origDep.name);
            const prettyHoistedFrom = `${hoistedFrom ? ` hoisted from ${hoistedFrom.join(`, `)}` : ``}`;
            const prettyOriginalHoistedTo = `${originalHoistedTo ? ` hoisted to ${originalHoistedTo}` : ``}`;
            const prettyNodePath = `${prettyPrintTreePath()}${prettyHoistedFrom}`;
            if (!dep) {
              log3.push(`${prettyNodePath} - broken require promise: no required dependency ${origDep.name}${prettyOriginalHoistedTo} found`);
            } else if (dep.ident !== origDep.ident) {
              log3.push(`${prettyNodePath} - broken require promise for ${origDep.name}${prettyOriginalHoistedTo}: expected ${origDep.ident}, but found: ${dep.ident}`);
            }
          }
        }
        parents.add(node);
        for (const dep of node.dependencies.values()) {
          if (!node.peerNames.has(dep.name)) {
            checkNode(dep, dependencies, node);
          }
        }
        parents.delete(node);
      };
      checkNode(tree, tree.dependencies, tree);
      return log3.join(`
`);
    };
    var cloneTree = (tree, options) => {
      const { identName, name, reference, peerNames } = tree;
      const treeCopy = {
        name,
        references: /* @__PURE__ */ new Set([reference]),
        locator: makeLocator(identName, reference),
        ident: makeIdent(identName, reference),
        dependencies: /* @__PURE__ */ new Map(),
        originalDependencies: /* @__PURE__ */ new Map(),
        hoistedDependencies: /* @__PURE__ */ new Map(),
        peerNames: new Set(peerNames),
        reasons: /* @__PURE__ */ new Map(),
        decoupled: true,
        isHoistBorder: true,
        hoistPriority: 0,
        dependencyKind: HoisterDependencyKind2.WORKSPACE,
        hoistedFrom: /* @__PURE__ */ new Map(),
        hoistedTo: /* @__PURE__ */ new Map()
      };
      const seenNodes = /* @__PURE__ */ new Map([[tree, treeCopy]]);
      const addNode = (node, parentNode) => {
        let workNode = seenNodes.get(node);
        const isSeen = !!workNode;
        if (!workNode) {
          const { name: name2, identName: identName2, reference: reference2, peerNames: peerNames2, hoistPriority, dependencyKind } = node;
          const dependenciesNmHoistingLimits = options.hoistingLimits.get(parentNode.locator);
          workNode = {
            name: name2,
            references: /* @__PURE__ */ new Set([reference2]),
            locator: makeLocator(identName2, reference2),
            ident: makeIdent(identName2, reference2),
            dependencies: /* @__PURE__ */ new Map(),
            originalDependencies: /* @__PURE__ */ new Map(),
            hoistedDependencies: /* @__PURE__ */ new Map(),
            peerNames: new Set(peerNames2),
            reasons: /* @__PURE__ */ new Map(),
            decoupled: true,
            isHoistBorder: dependenciesNmHoistingLimits ? dependenciesNmHoistingLimits.has(name2) : false,
            hoistPriority: hoistPriority || 0,
            dependencyKind: dependencyKind || HoisterDependencyKind2.REGULAR,
            hoistedFrom: /* @__PURE__ */ new Map(),
            hoistedTo: /* @__PURE__ */ new Map()
          };
          seenNodes.set(node, workNode);
        }
        parentNode.dependencies.set(node.name, workNode);
        parentNode.originalDependencies.set(node.name, workNode);
        if (!isSeen) {
          for (const dep of node.dependencies) {
            addNode(dep, workNode);
          }
        } else {
          const seenCoupledNodes = /* @__PURE__ */ new Set();
          const markNodeCoupled = (node2) => {
            if (seenCoupledNodes.has(node2))
              return;
            seenCoupledNodes.add(node2);
            node2.decoupled = false;
            for (const dep of node2.dependencies.values()) {
              if (!node2.peerNames.has(dep.name)) {
                markNodeCoupled(dep);
              }
            }
          };
          markNodeCoupled(workNode);
        }
      };
      for (const dep of tree.dependencies)
        addNode(dep, treeCopy);
      return treeCopy;
    };
    var getIdentName = (locator) => locator.substring(0, locator.indexOf(`@`, 1));
    var shrinkTree = (tree) => {
      const treeCopy = {
        name: tree.name,
        identName: getIdentName(tree.locator),
        references: new Set(tree.references),
        dependencies: /* @__PURE__ */ new Set()
      };
      const seenNodes = /* @__PURE__ */ new Set([tree]);
      const addNode = (node, parentWorkNode, parentNode) => {
        const isSeen = seenNodes.has(node);
        let resultNode;
        if (parentWorkNode === node) {
          resultNode = parentNode;
        } else {
          const { name, references, locator } = node;
          resultNode = {
            name,
            identName: getIdentName(locator),
            references,
            dependencies: /* @__PURE__ */ new Set()
          };
        }
        parentNode.dependencies.add(resultNode);
        if (!isSeen) {
          seenNodes.add(node);
          for (const dep of node.dependencies.values()) {
            if (!node.peerNames.has(dep.name)) {
              addNode(dep, node, resultNode);
            }
          }
          seenNodes.delete(node);
        }
      };
      for (const dep of tree.dependencies.values())
        addNode(dep, tree, treeCopy);
      return treeCopy;
    };
    var buildPreferenceMap = (rootNode) => {
      const preferenceMap = /* @__PURE__ */ new Map();
      const seenNodes = /* @__PURE__ */ new Set([rootNode]);
      const getPreferenceKey = (node) => `${node.name}@${node.ident}`;
      const getOrCreatePreferenceEntry = (node) => {
        const key = getPreferenceKey(node);
        let entry = preferenceMap.get(key);
        if (!entry) {
          entry = { dependents: /* @__PURE__ */ new Set(), peerDependents: /* @__PURE__ */ new Set(), hoistPriority: 0 };
          preferenceMap.set(key, entry);
        }
        return entry;
      };
      const addDependent = (dependent, node) => {
        const isSeen = !!seenNodes.has(node);
        const entry = getOrCreatePreferenceEntry(node);
        entry.dependents.add(dependent.ident);
        if (!isSeen) {
          seenNodes.add(node);
          for (const dep of node.dependencies.values()) {
            const entry2 = getOrCreatePreferenceEntry(dep);
            entry2.hoistPriority = Math.max(entry2.hoistPriority, dep.hoistPriority);
            if (node.peerNames.has(dep.name)) {
              entry2.peerDependents.add(node.ident);
            } else {
              addDependent(node, dep);
            }
          }
        }
      };
      for (const dep of rootNode.dependencies.values())
        if (!rootNode.peerNames.has(dep.name))
          addDependent(rootNode, dep);
      return preferenceMap;
    };
    var prettyPrintLocator = (locator) => {
      if (!locator)
        return `none`;
      const idx = locator.indexOf(`@`, 1);
      let name = locator.substring(0, idx);
      if (name.endsWith(`$wsroot$`))
        name = `wh:${name.replace(`$wsroot$`, ``)}`;
      const reference = locator.substring(idx + 1);
      if (reference === `workspace:.`) {
        return `.`;
      } else if (!reference) {
        return `${name}`;
      } else {
        let version2 = (reference.indexOf(`#`) > 0 ? reference.split(`#`)[1] : reference).replace(`npm:`, ``);
        if (reference.startsWith(`virtual`))
          name = `v:${name}`;
        if (version2.startsWith(`workspace`)) {
          name = `w:${name}`;
          version2 = ``;
        }
        return `${name}${version2 ? `@${version2}` : ``}`;
      }
    };
    var MAX_NODES_TO_DUMP = 5e4;
    var dumpDepTree = (tree) => {
      let nodeCount = 0;
      const dumpPackage = (pkg, parents, prefix = ``) => {
        if (nodeCount > MAX_NODES_TO_DUMP || parents.has(pkg))
          return ``;
        nodeCount++;
        const dependencies = Array.from(pkg.dependencies.values()).sort((n1, n2) => {
          if (n1.name === n2.name) {
            return 0;
          } else {
            return n1.name > n2.name ? 1 : -1;
          }
        });
        let str2 = ``;
        parents.add(pkg);
        for (let idx = 0; idx < dependencies.length; idx++) {
          const dep = dependencies[idx];
          if (!pkg.peerNames.has(dep.name) && dep !== pkg) {
            const reason = pkg.reasons.get(dep.name);
            const identName = getIdentName(dep.locator);
            str2 += `${prefix}${idx < dependencies.length - 1 ? `\u251C\u2500` : `\u2514\u2500`}${(parents.has(dep) ? `>` : ``) + (identName !== dep.name ? `a:${dep.name}:` : ``) + prettyPrintLocator(dep.locator) + (reason ? ` ${reason}` : ``)}
`;
            str2 += dumpPackage(dep, parents, `${prefix}${idx < dependencies.length - 1 ? `\u2502 ` : `  `}`);
          }
        }
        parents.delete(pkg);
        return str2;
      };
      const treeDump = dumpPackage(tree, /* @__PURE__ */ new Set());
      return treeDump + (nodeCount > MAX_NODES_TO_DUMP ? `
Tree is too large, part of the tree has been dunped
` : ``);
    };
  }
});

// ../installing/linking/real-hoist/lib/index.js
function hoist2(lockfile, opts2) {
  const nodes = /* @__PURE__ */ new Map();
  const ctx = {
    autoInstallPeers: opts2?.autoInstallPeers,
    nodes,
    lockfile,
    depPathByPkgId: /* @__PURE__ */ new Map()
  };
  const _toTree = toTree.bind(null, ctx);
  const node = {
    name: ".",
    identName: ".",
    reference: "",
    peerNames: /* @__PURE__ */ new Set([]),
    dependencyKind: import_hoist.HoisterDependencyKind.WORKSPACE,
    dependencies: _toTree({
      ...lockfile.importers["."]?.dependencies,
      ...lockfile.importers["."]?.devDependencies,
      ...lockfile.importers["."]?.optionalDependencies,
      ...Array.from(opts2?.externalDependencies ?? []).reduce((acc, dep) => {
        acc[dep] = "link:";
        return acc;
      }, {})
    })
  };
  for (const [importerId, importer] of Object.entries(lockfile.importers)) {
    if (importerId === ".")
      continue;
    const importerNode = {
      name: encodeURIComponent(importerId),
      identName: encodeURIComponent(importerId),
      reference: `workspace:${importerId}`,
      peerNames: /* @__PURE__ */ new Set([]),
      dependencyKind: import_hoist.HoisterDependencyKind.WORKSPACE,
      dependencies: _toTree({
        ...importer.dependencies,
        ...importer.devDependencies,
        ...importer.optionalDependencies
      })
    };
    node.dependencies.add(importerNode);
  }
  const hoisterResult = (0, import_hoist.hoist)(node, opts2);
  if (opts2?.externalDependencies) {
    for (const hoistedDep of hoisterResult.dependencies.values()) {
      if (opts2.externalDependencies.has(hoistedDep.name)) {
        hoisterResult.dependencies.delete(hoistedDep);
      }
    }
  }
  return hoisterResult;
}
function toTree({ nodes, lockfile, depPathByPkgId, autoInstallPeers }, deps) {
  return new Set(Object.entries(deps).map(([alias, ref]) => {
    const depPath = refToRelative(ref, alias);
    if (!depPath) {
      const key2 = `${alias}:${ref}`;
      let node2 = nodes.get(key2);
      if (!node2) {
        node2 = {
          name: alias,
          identName: alias,
          reference: ref,
          dependencyKind: import_hoist.HoisterDependencyKind.REGULAR,
          dependencies: /* @__PURE__ */ new Set(),
          peerNames: /* @__PURE__ */ new Set()
        };
        nodes.set(key2, node2);
      }
      return node2;
    }
    const key = `${alias}:${depPath}`;
    let node = nodes.get(key);
    if (!node) {
      const pkgSnapshot = lockfile.packages[depPath];
      if (!pkgSnapshot) {
        throw new LockfileMissingDependencyError(depPath);
      }
      const { name: pkgName, version: version2 } = nameVerFromPkgSnapshot(depPath, pkgSnapshot);
      const id = `${pkgName}@${version2}`;
      if (!depPathByPkgId.has(id)) {
        depPathByPkgId.set(id, depPath);
      }
      node = {
        name: alias,
        identName: pkgName,
        reference: depPathByPkgId.get(id),
        dependencyKind: import_hoist.HoisterDependencyKind.REGULAR,
        dependencies: /* @__PURE__ */ new Set(),
        peerNames: new Set(autoInstallPeers ? [] : [
          ...Object.keys(pkgSnapshot.peerDependencies ?? {}),
          ...pkgSnapshot.transitivePeerDependencies ?? []
        ])
      };
      nodes.set(key, node);
      node.dependencies = toTree({ nodes, lockfile, depPathByPkgId, autoInstallPeers }, { ...pkgSnapshot.dependencies, ...pkgSnapshot.optionalDependencies });
    }
    return node;
  }));
}
var import_hoist;
var init_lib118 = __esm({
  "../installing/linking/real-hoist/lib/index.js"() {
    "use strict";
    init_lib65();
    init_lib2();
    init_lib70();
    import_hoist = __toESM(require_hoist(), 1);
  }
});

// ../installing/deps-restorer/lib/lockfileToHoistedDepGraph.js
import path115 from "node:path";
async function lockfileToHoistedDepGraph(lockfile, currentLockfile, opts2) {
  let prevGraph;
  if (currentLockfile?.packages != null) {
    prevGraph = (await _lockfileToHoistedDepGraph(currentLockfile, {
      ...opts2,
      force: true,
      skipped: /* @__PURE__ */ new Set()
    })).graph;
  } else {
    prevGraph = {};
  }
  return {
    ...await _lockfileToHoistedDepGraph(lockfile, opts2),
    prevGraph
  };
}
async function _lockfileToHoistedDepGraph(lockfile, opts2) {
  const tree = hoist2(lockfile, {
    hoistingLimits: opts2.hoistingLimits,
    externalDependencies: opts2.externalDependencies,
    autoInstallPeers: opts2.autoInstallPeers
  });
  const graph = {};
  const modulesDir = pathAbsolute(opts2.modulesDir ?? "node_modules", opts2.lockfileDir);
  const fetchDepsOpts = {
    ...opts2,
    lockfile,
    graph,
    pkgLocationsByDepPath: {},
    injectionTargetsByDepPath: /* @__PURE__ */ new Map(),
    hoistedLocations: {}
  };
  const hierarchy = {
    [opts2.lockfileDir]: await fetchDeps(fetchDepsOpts, modulesDir, tree.dependencies)
  };
  const directDependenciesByImporterId = {
    ".": directDepsMap(Object.keys(hierarchy[opts2.lockfileDir]), graph)
  };
  const symlinkedDirectDependenciesByImporterId = { ".": {} };
  await Promise.all(Array.from(tree.dependencies).map(async (rootDep) => {
    const reference = Array.from(rootDep.references)[0];
    if (reference.startsWith("workspace:")) {
      const importerId = reference.replace("workspace:", "");
      const projectDir = path115.join(opts2.lockfileDir, importerId);
      const modulesDir2 = path115.join(projectDir, "node_modules");
      const nextHierarchy = await fetchDeps(fetchDepsOpts, modulesDir2, rootDep.dependencies);
      hierarchy[projectDir] = nextHierarchy;
      const importer = lockfile.importers[importerId];
      const importerDir = path115.join(opts2.lockfileDir, importerId);
      symlinkedDirectDependenciesByImporterId[importerId] = pickLinkedDirectDeps(importer, importerDir, opts2.include);
      directDependenciesByImporterId[importerId] = directDepsMap(Object.keys(nextHierarchy), graph);
    }
  }));
  return {
    directDependenciesByImporterId,
    graph,
    hierarchy,
    symlinkedDirectDependenciesByImporterId,
    hoistedLocations: fetchDepsOpts.hoistedLocations,
    injectionTargetsByDepPath: fetchDepsOpts.injectionTargetsByDepPath
  };
}
function directDepsMap(directDepDirs, graph) {
  const acc = {};
  for (const dir of directDepDirs) {
    acc[graph[dir].alias] = dir;
  }
  return acc;
}
function pickLinkedDirectDeps(importer, importerDir, include) {
  const rootDeps = {
    ...include.devDependencies ? importer.devDependencies : {},
    ...include.dependencies ? importer.dependencies : {},
    ...include.optionalDependencies ? importer.optionalDependencies : {}
  };
  const directDeps = {};
  for (const alias in rootDeps) {
    const ref = rootDeps[alias];
    if (ref.startsWith("link:")) {
      directDeps[alias] = path115.resolve(importerDir, ref.slice(5));
    }
  }
  return directDeps;
}
async function fetchDeps(opts2, modules, deps) {
  const depHierarchy = {};
  await Promise.all(Array.from(deps).map(async (dep) => {
    const depPath = Array.from(dep.references)[0];
    if (opts2.skipped.has(depPath) || depPath.startsWith("workspace:"))
      return;
    const pkgSnapshot = opts2.lockfile.packages[depPath];
    if (!pkgSnapshot) {
      return;
    }
    const { name: pkgName, version: pkgVersion } = nameVerFromPkgSnapshot(depPath, pkgSnapshot);
    const packageId = packageIdFromSnapshot(depPath, pkgSnapshot);
    const pkgIdWithPatchHash = getPkgIdWithPatchHash(depPath);
    const pkg = {
      name: pkgName,
      version: pkgVersion,
      engines: pkgSnapshot.engines,
      cpu: pkgSnapshot.cpu,
      os: pkgSnapshot.os,
      libc: pkgSnapshot.libc
    };
    if (!opts2.force && packageIsInstallable(packageId, pkg, {
      engineStrict: opts2.engineStrict,
      lockfileDir: opts2.lockfileDir,
      nodeVersion: opts2.nodeVersion,
      optional: pkgSnapshot.optional === true,
      supportedArchitectures: opts2.supportedArchitectures
    }) === false) {
      opts2.skipped.add(depPath);
      return;
    }
    const isDirectoryDep = "directory" in pkgSnapshot.resolution && pkgSnapshot.resolution.directory != null;
    if (isDirectoryDep && opts2.ignoreLocalPackages) {
      logger.info({
        message: `Skipping local dependency ${pkgName}@${pkgVersion} (file: protocol)`,
        prefix: opts2.lockfileDir
      });
      return;
    }
    const dir = path115.join(modules, dep.name);
    const depLocation = path115.relative(opts2.lockfileDir, dir);
    const resolution = pkgSnapshotToResolution(depPath, pkgSnapshot, opts2.registries);
    let fetchResponse;
    const skipFetch = opts2.currentHoistedLocations?.[depPath]?.includes(depLocation) && await dirHasPackageJsonWithVersion(path115.join(opts2.lockfileDir, depLocation), pkgVersion);
    const pkgResolution = {
      id: packageId,
      resolution,
      name: pkgName,
      version: pkgVersion
    };
    if (skipFetch) {
      const { filesIndexFile } = opts2.storeController.getFilesIndexFilePath({
        ignoreScripts: opts2.ignoreScripts,
        pkg: pkgResolution
      });
      fetchResponse = { filesIndexFile };
    } else {
      try {
        fetchResponse = opts2.storeController.fetchPackage({
          allowBuild: opts2.allowBuild,
          force: false,
          lockfileDir: opts2.lockfileDir,
          ignoreScripts: opts2.ignoreScripts,
          pkg: pkgResolution,
          supportedArchitectures: opts2.supportedArchitectures
        });
        if (fetchResponse instanceof Promise)
          fetchResponse = await fetchResponse;
      } catch (err) {
        if (pkgSnapshot.optional)
          return;
        throw err;
      }
    }
    opts2.graph[dir] = {
      alias: dep.name,
      children: {},
      depPath,
      pkgIdWithPatchHash,
      dir,
      fetching: fetchResponse.fetching,
      filesIndexFile: fetchResponse.filesIndexFile,
      hasBin: pkgSnapshot.hasBin === true,
      hasBundledDependencies: pkgSnapshot.bundledDependencies != null,
      modules,
      name: pkgName,
      version: pkgVersion,
      optional: !!pkgSnapshot.optional,
      optionalDependencies: new Set(Object.keys(pkgSnapshot.optionalDependencies ?? {})),
      patch: getPatchInfo(opts2.patchedDependencies, pkgName, pkgVersion),
      resolution: pkgSnapshot.resolution
    };
    if (!opts2.pkgLocationsByDepPath[depPath]) {
      opts2.pkgLocationsByDepPath[depPath] = [];
    }
    opts2.pkgLocationsByDepPath[depPath].push(dir);
    if ("directory" in pkgSnapshot.resolution && pkgSnapshot.resolution.directory != null) {
      const locations = opts2.injectionTargetsByDepPath.get(depPath);
      if (locations) {
        locations.push(dir);
      } else {
        opts2.injectionTargetsByDepPath.set(depPath, [dir]);
      }
    }
    depHierarchy[dir] = await fetchDeps(opts2, path115.join(dir, "node_modules"), dep.dependencies);
    if (!opts2.hoistedLocations[depPath]) {
      opts2.hoistedLocations[depPath] = [];
    }
    opts2.hoistedLocations[depPath].push(depLocation);
    opts2.graph[dir].children = getChildren(pkgSnapshot, opts2.pkgLocationsByDepPath, opts2);
  }));
  return depHierarchy;
}
async function dirHasPackageJsonWithVersion(dir, expectedVersion) {
  if (!expectedVersion)
    return pathExists2(dir);
  try {
    const manifest = await safeReadPackageJsonFromDir(dir);
    return manifest?.version === expectedVersion;
  } catch (err) {
    if (err?.code === "ENOENT") {
      return pathExists2(dir);
    }
    throw err;
  }
}
function getChildren(pkgSnapshot, pkgLocationsByDepPath, opts2) {
  const allDeps = {
    ...pkgSnapshot.dependencies,
    ...opts2.include.optionalDependencies ? pkgSnapshot.optionalDependencies : {}
  };
  const children = {};
  for (const [childName, childRef] of Object.entries(allDeps)) {
    const childDepPath = refToRelative(childRef, childName);
    if (childDepPath && pkgLocationsByDepPath[childDepPath]) {
      children[childName] = pkgLocationsByDepPath[childDepPath][0];
    }
  }
  return children;
}
var init_lockfileToHoistedDepGraph = __esm({
  "../installing/deps-restorer/lib/lockfileToHoistedDepGraph.js"() {
    "use strict";
    init_lib28();
    init_lib65();
    init_lib118();
    init_lib70();
    init_lib3();
    init_lib105();
    init_lib39();
    init_path_absolute();
    init_path_exists();
  }
});

// ../installing/deps-restorer/lib/index.js
import { promises as fs67 } from "node:fs";
import path116 from "node:path";
async function headlessInstall(opts2) {
  const reporter = opts2.reporter;
  if (reporter != null && typeof reporter === "function") {
    streamParser.on("data", reporter);
  }
  const lockfileDir = opts2.lockfileDir;
  const wantedLockfile = opts2.wantedLockfile ?? await readWantedLockfile(lockfileDir, {
    ignoreIncompatible: false,
    useGitBranchLockfile: opts2.useGitBranchLockfile,
    // mergeGitBranchLockfiles is intentionally not supported in headless
    mergeGitBranchLockfiles: false
  });
  if (wantedLockfile == null) {
    throw new Error(`Headless installation requires a ${WANTED_LOCKFILE} file`);
  }
  const depsStateCache = {};
  const modulesDir = opts2.modulesDir ?? "node_modules";
  const rootModulesDir = await realpathMissing(pathAbsolute(modulesDir, lockfileDir));
  const internalPnpmDir = path116.join(rootModulesDir, ".pnpm");
  const currentLockfile = opts2.currentLockfile ?? await readCurrentLockfile(internalPnpmDir, { ignoreIncompatible: false });
  const virtualStoreDir = pathAbsolute(opts2.virtualStoreDir ?? path116.join(modulesDir, ".pnpm"), lockfileDir);
  const hoistedModulesDir = path116.join(opts2.enableGlobalVirtualStore ? internalPnpmDir : virtualStoreDir, "node_modules");
  const publicHoistedModulesDir = rootModulesDir;
  const selectedProjects = Object.values(pick_default(opts2.selectedProjectDirs, opts2.allProjects));
  const scriptsOpts = {
    optional: false,
    extraBinPaths: opts2.extraBinPaths,
    extraNodePaths: opts2.extraNodePaths,
    preferSymlinkedExecutables: opts2.preferSymlinkedExecutables,
    extraEnv: opts2.extraEnv,
    configByUri: opts2.configByUri,
    resolveSymlinksInInjectedDirs: opts2.resolveSymlinksInInjectedDirs,
    scriptsPrependNodePath: opts2.scriptsPrependNodePath,
    scriptShell: opts2.scriptShell,
    shellEmulator: opts2.shellEmulator,
    stdio: opts2.ownLifecycleHooksStdio ?? "inherit",
    storeController: opts2.storeController,
    unsafePerm: opts2.unsafePerm || false
  };
  if (opts2.virtualStoreOnly && opts2.enableModulesDir === false && !opts2.enableGlobalVirtualStore) {
    throw new PnpmError("CONFIG_CONFLICT_VIRTUAL_STORE_ONLY_WITH_NO_MODULES_DIR", "Cannot use virtualStoreOnly when enableModulesDir is false (the standard virtual store requires node_modules/.pnpm)");
  }
  const skipPostImportLinking = opts2.virtualStoreOnly === true;
  const skipped = opts2.skipped || /* @__PURE__ */ new Set();
  const filterOpts = {
    include: opts2.include,
    registries: opts2.registries,
    skipped,
    skipRuntimes: opts2.skipRuntimes,
    currentEngine: opts2.currentEngine,
    engineStrict: opts2.engineStrict,
    failOnMissingDependencies: true,
    includeIncompatiblePackages: opts2.force,
    lockfileDir,
    supportedArchitectures: opts2.supportedArchitectures
  };
  let removed = 0;
  if (opts2.nodeLinker !== "hoisted") {
    if (currentLockfile != null && !opts2.ignorePackageManifest) {
      const removedDepPaths = await prune2(selectedProjects, {
        currentLockfile,
        dedupeDirectDeps: opts2.dedupeDirectDeps,
        dryRun: false,
        hoistedDependencies: opts2.hoistedDependencies,
        hoistedModulesDir: opts2.hoistPattern == null ? void 0 : hoistedModulesDir,
        include: opts2.include,
        lockfileDir,
        pruneStore: opts2.pruneStore,
        pruneVirtualStore: opts2.pruneVirtualStore,
        publicHoistedModulesDir: opts2.publicHoistPattern == null ? void 0 : publicHoistedModulesDir,
        skipped,
        storeController: opts2.storeController,
        virtualStoreDir,
        virtualStoreDirMaxLength: opts2.virtualStoreDirMaxLength,
        wantedLockfile: filterLockfileByEngine(wantedLockfile, filterOpts).lockfile
      });
      removed = removedDepPaths.size;
    } else {
      statsLogger.debug({
        prefix: lockfileDir,
        removed: 0
      });
    }
  }
  stageLogger.debug({
    prefix: lockfileDir,
    stage: "importing_started"
  });
  const initialImporterIds = opts2.ignorePackageManifest === true || opts2.nodeLinker === "hoisted" ? Object.keys(wantedLockfile.importers) : selectedProjects.map(({ id }) => id);
  const { lockfile: filteredLockfile, selectedImporterIds: importerIds } = filterLockfileByImportersAndEngine(wantedLockfile, initialImporterIds, filterOpts);
  if (opts2.excludeLinksFromLockfile) {
    for (const { id, manifest, rootDir } of selectedProjects) {
      if (filteredLockfile.importers[id]) {
        for (const depType of DEPENDENCIES_FIELDS) {
          filteredLockfile.importers[id][depType] = {
            ...filteredLockfile.importers[id][depType],
            ...Object.entries(manifest[depType] ?? {}).filter(([_, spec]) => spec.startsWith("link:")).reduce((acc, [depName, spec]) => {
              const linkPath = spec.substring(5);
              acc[depName] = path116.isAbsolute(linkPath) ? `link:${path116.relative(rootDir, spec.substring(5))}` : spec;
              return acc;
            }, {})
          };
        }
      }
    }
  }
  const initialImporterIdSet = new Set(initialImporterIds);
  const missingIds = importerIds.filter((importerId) => !initialImporterIdSet.has(importerId));
  if (missingIds.length > 0) {
    for (const project of Object.values(opts2.allProjects)) {
      if (missingIds.includes(project.id)) {
        selectedProjects.push(project);
      }
    }
  }
  if (opts2.enableGlobalVirtualStore) {
    opts2.allowBuilds ??= {};
  }
  const allowBuild = createAllowBuildFunction(opts2);
  const lockfileToDepGraphOpts = {
    ...opts2,
    allowBuild,
    importerIds,
    lockfileDir,
    skipped,
    virtualStoreDir,
    nodeVersion: opts2.currentEngine.nodeVersion,
    pnpmVersion: opts2.currentEngine.pnpmVersion,
    supportedArchitectures: opts2.supportedArchitectures,
    includeUnchangedDeps: !equals_default(opts2.currentHoistPattern ?? [], opts2.hoistPattern ?? []) || !equals_default(opts2.currentPublicHoistPattern ?? [], opts2.publicHoistPattern ?? []) || opts2.enableGlobalVirtualStore === true && !equals_default(opts2.modulesFile?.allowBuilds ?? {}, opts2.allowBuilds ?? {})
  };
  const { directDependenciesByImporterId, graph, hierarchy, hoistedLocations, injectionTargetsByDepPath, prevGraph, symlinkedDirectDependenciesByImporterId } = await (opts2.nodeLinker === "hoisted" ? lockfileToHoistedDepGraph(filteredLockfile, currentLockfile, lockfileToDepGraphOpts) : lockfileToDepGraph2(filteredLockfile, opts2.force ? null : currentLockfile, lockfileToDepGraphOpts));
  if (opts2.enablePnp) {
    const importerNames = Object.fromEntries(selectedProjects.map(({ manifest, id }) => [id, manifest.name ?? id]));
    await writePnpFile(filteredLockfile, {
      importerNames,
      lockfileDir,
      virtualStoreDir,
      virtualStoreDirMaxLength: opts2.virtualStoreDirMaxLength,
      registries: opts2.registries
    });
  }
  const depNodes = Object.values(graph);
  const added = depNodes.filter(({ fetching }) => fetching).length;
  const skipGvsInternalLinking = opts2.enableGlobalVirtualStore === true && added === 0;
  statsLogger.debug({
    added,
    prefix: lockfileDir
  });
  function warn(message) {
    logger.info({
      message,
      prefix: lockfileDir
    });
  }
  let newHoistedDependencies;
  let linkedToRoot = 0;
  if (opts2.nodeLinker === "hoisted" && hierarchy && prevGraph) {
    if (!skipPostImportLinking) {
      await linkHoistedModules(opts2.storeController, graph, prevGraph, hierarchy, {
        allowBuild,
        depsStateCache,
        disableRelinkLocalDirDeps: opts2.disableRelinkLocalDirDeps,
        force: opts2.force,
        ignoreScripts: opts2.ignoreScripts,
        lockfileDir: opts2.lockfileDir,
        preferSymlinkedExecutables: opts2.preferSymlinkedExecutables,
        sideEffectsCacheRead: opts2.sideEffectsCacheRead,
        supportedArchitectures: opts2.supportedArchitectures
      });
      stageLogger.debug({
        prefix: lockfileDir,
        stage: "importing_done"
      });
      linkedToRoot = await symlinkDirectDependencies({
        directDependenciesByImporterId: symlinkedDirectDependenciesByImporterId,
        dedupe: Boolean(opts2.dedupeDirectDeps),
        filteredLockfile,
        lockfileDir,
        projects: selectedProjects,
        registries: opts2.registries,
        symlink: opts2.symlink
      });
    }
  } else if (opts2.enableModulesDir !== false || opts2.enableGlobalVirtualStore) {
    if (!skipGvsInternalLinking) {
      if (opts2.enableModulesDir !== false) {
        await Promise.all(depNodes.map(async (depNode) => fs67.mkdir(depNode.modules, { recursive: true })));
      }
      await Promise.all([
        opts2.symlink === false || opts2.enableModulesDir === false ? Promise.resolve() : linkAllModules(depNodes, {
          optional: opts2.include.optionalDependencies
        }),
        linkAllPkgs(opts2.storeController, depNodes, {
          allowBuild,
          force: opts2.force,
          disableRelinkLocalDirDeps: opts2.disableRelinkLocalDirDeps,
          depGraph: graph,
          depsStateCache,
          enableGlobalVirtualStore: opts2.enableGlobalVirtualStore,
          ignoreScripts: opts2.ignoreScripts,
          lockfileDir: opts2.lockfileDir,
          sideEffectsCacheRead: opts2.sideEffectsCacheRead,
          storeDir: opts2.storeDir,
          supportedArchitectures: opts2.supportedArchitectures
        })
      ]);
    }
    stageLogger.debug({
      prefix: lockfileDir,
      stage: "importing_done"
    });
    if (opts2.ignorePackageManifest !== true && !skipPostImportLinking && (opts2.hoistPattern != null || opts2.publicHoistPattern != null)) {
      newHoistedDependencies = {
        ...opts2.hoistedDependencies,
        ...await hoist({
          extraNodePath: opts2.extraNodePaths,
          graph,
          directDepsByImporterId: Object.fromEntries(Object.entries(directDependenciesByImporterId).map(([projectId, deps]) => [
            projectId,
            new Map(Object.entries(deps))
          ])),
          importerIds,
          preferSymlinkedExecutables: opts2.preferSymlinkedExecutables,
          privateHoistedModulesDir: hoistedModulesDir,
          privateHoistPattern: opts2.hoistPattern ?? [],
          publicHoistedModulesDir,
          publicHoistPattern: opts2.publicHoistPattern ?? [],
          virtualStoreDir,
          virtualStoreDirMaxLength: opts2.virtualStoreDirMaxLength,
          hoistedWorkspacePackages: opts2.hoistWorkspacePackages ? Object.values(opts2.allProjects).reduce((hoistedWorkspacePackages, project) => {
            if (project.manifest.name && project.id !== ".") {
              hoistedWorkspacePackages[project.id] = {
                dir: project.rootDir,
                name: project.manifest.name
              };
            }
            return hoistedWorkspacePackages;
          }, {}) : void 0,
          skipped: opts2.skipped
        })
      };
    } else {
      newHoistedDependencies = {};
    }
    if (!skipPostImportLinking && !skipGvsInternalLinking) {
      await linkAllBins2(graph, {
        extraNodePaths: opts2.extraNodePaths,
        optional: opts2.include.optionalDependencies,
        preferSymlinkedExecutables: opts2.preferSymlinkedExecutables,
        warn
      });
    }
    if (currentLockfile != null && !equals_default(importerIds.sort(), Object.keys(filteredLockfile.importers).sort())) {
      Object.assign(filteredLockfile.packages, currentLockfile.packages);
    }
    if (!opts2.ignorePackageManifest && !skipPostImportLinking) {
      linkedToRoot = await symlinkDirectDependencies({
        dedupe: Boolean(opts2.dedupeDirectDeps),
        directDependenciesByImporterId,
        filteredLockfile,
        lockfileDir,
        projects: selectedProjects,
        registries: opts2.registries,
        symlink: opts2.symlink
      });
    }
  }
  if (opts2.ignoreScripts) {
    for (const { id, manifest } of selectedProjects) {
      if (opts2.ignoreScripts && manifest?.scripts != null && (manifest.scripts.preinstall ?? manifest.scripts.prepublish ?? manifest.scripts.install ?? manifest.scripts.postinstall ?? manifest.scripts.prepare)) {
        opts2.pendingBuilds.push(id);
      }
    }
    opts2.pendingBuilds = opts2.pendingBuilds.concat(depNodes.filter(({ requiresBuild }) => requiresBuild).map(({ depPath }) => depPath));
  }
  let ignoredBuilds;
  if ((!opts2.ignoreScripts || Object.keys(opts2.patchedDependencies ?? {}).length > 0) && opts2.enableModulesDir !== false) {
    const directNodes = /* @__PURE__ */ new Set();
    for (const id of union_default(importerIds, ["."])) {
      const directDependencies = directDependenciesByImporterId[id];
      for (const alias in directDependencies) {
        const loc = directDependencies[alias];
        if (!graph[loc])
          continue;
        directNodes.add(loc);
      }
    }
    const extraBinPaths = [...opts2.extraBinPaths ?? []];
    if (opts2.hoistPattern != null) {
      extraBinPaths.unshift(path116.join(hoistedModulesDir, ".bin"));
    }
    let extraEnv = opts2.extraEnv;
    if (opts2.enablePnp) {
      extraEnv = {
        ...extraEnv,
        ...makeNodeRequireOption(path116.join(opts2.lockfileDir, ".pnp.cjs"))
      };
    }
    ignoredBuilds = (await buildModules(graph, Array.from(directNodes), {
      allowBuild,
      childConcurrency: opts2.childConcurrency,
      extraBinPaths,
      extraEnv,
      depsStateCache,
      ignoreScripts: opts2.ignoreScripts,
      hoistedLocations,
      lockfileDir,
      optional: opts2.include.optionalDependencies,
      preferSymlinkedExecutables: opts2.preferSymlinkedExecutables,
      rootModulesDir: virtualStoreDir,
      scriptsPrependNodePath: opts2.scriptsPrependNodePath,
      scriptShell: opts2.scriptShell,
      shellEmulator: opts2.shellEmulator,
      sideEffectsCacheWrite: opts2.sideEffectsCacheWrite,
      storeController: opts2.storeController,
      unsafePerm: opts2.unsafePerm,
      userAgent: opts2.userAgent,
      enableGlobalVirtualStore: opts2.enableGlobalVirtualStore
    })).ignoredBuilds;
    if (opts2.modulesFile?.ignoredBuilds?.size) {
      ignoredBuilds ??= /* @__PURE__ */ new Set();
      for (const ignoredBuild of opts2.modulesFile.ignoredBuilds.values()) {
        if (filteredLockfile.packages?.[ignoredBuild] && !isBuildExplicitlyDisallowed(ignoredBuild, allowBuild)) {
          ignoredBuilds.add(ignoredBuild);
        }
      }
    }
  }
  const projectsToBeBuilt = extendProjectsWithTargetDirs(selectedProjects, injectionTargetsByDepPath);
  if (opts2.enableModulesDir !== false) {
    if (!skipPostImportLinking) {
      const rootProjectDeps = !opts2.dedupeDirectDeps ? {} : directDependenciesByImporterId["."] ?? {};
      if (!opts2.ignorePackageManifest) {
        await Promise.all(selectedProjects.map(async (project) => {
          if (opts2.nodeLinker === "hoisted" || opts2.publicHoistPattern?.length && path116.relative(opts2.lockfileDir, project.rootDir) === "") {
            await linkBinsOfImporter(project, {
              extraNodePaths: opts2.extraNodePaths,
              preferSymlinkedExecutables: opts2.preferSymlinkedExecutables
            });
          } else {
            let directPkgDirs;
            if (project.id === ".") {
              directPkgDirs = Object.values(directDependenciesByImporterId[project.id]);
            } else {
              directPkgDirs = [];
              for (const [alias, dir] of Object.entries(directDependenciesByImporterId[project.id])) {
                if (rootProjectDeps[alias] !== dir) {
                  directPkgDirs.push(dir);
                }
              }
            }
            directPkgDirs = directPkgDirs.filter((dir) => graph[dir] == null || graph[dir].hasBin);
            await linkBinsOfPackages((await Promise.all(directPkgDirs.map(async (dir) => ({
              location: dir,
              manifest: await safeReadProjectManifestOnly(dir)
            })))).filter(({ manifest }) => manifest != null), project.binsDir, {
              extraNodePaths: opts2.extraNodePaths,
              preferSymlinkedExecutables: opts2.preferSymlinkedExecutables
            });
          }
        }));
      }
    }
    const injectedDeps = {};
    for (const project of projectsToBeBuilt) {
      if (project.targetDirs.length > 0) {
        injectedDeps[project.id] = project.targetDirs.map((targetDir) => path116.relative(opts2.lockfileDir, targetDir));
      }
    }
    await writeModulesManifest(rootModulesDir, {
      hoistedDependencies: newHoistedDependencies,
      hoistPattern: opts2.hoistPattern,
      included: opts2.include,
      injectedDeps,
      ignoredBuilds,
      layoutVersion: LAYOUT_VERSION,
      hoistedLocations,
      nodeLinker: opts2.nodeLinker,
      packageManager: `${opts2.packageManager.name}@${opts2.packageManager.version}`,
      pendingBuilds: opts2.pendingBuilds,
      publicHoistPattern: opts2.publicHoistPattern,
      prunedAt: opts2.pruneVirtualStore === true || opts2.prunedAt == null ? (/* @__PURE__ */ new Date()).toUTCString() : opts2.prunedAt,
      registries: opts2.registries,
      skipped: Array.from(skipped),
      storeDir: opts2.storeDir,
      virtualStoreDir,
      virtualStoreDirMaxLength: opts2.virtualStoreDirMaxLength,
      allowBuilds: opts2.allowBuilds,
      virtualStoreOnly: opts2.virtualStoreOnly
    });
    const currentLockfileDir = path116.join(rootModulesDir, ".pnpm");
    if (opts2.useLockfile) {
      await writeLockfiles({
        wantedLockfileDir: opts2.lockfileDir,
        currentLockfileDir,
        wantedLockfile,
        currentLockfile: filteredLockfile
      });
    } else {
      await writeCurrentLockfile(currentLockfileDir, filteredLockfile);
    }
  }
  await Promise.all(depNodes.map(async ({ fetching }) => {
    try {
      await fetching?.();
    } catch {
    }
  }));
  summaryLogger.debug({ prefix: lockfileDir });
  if (!opts2.ignoreScripts && !opts2.ignorePackageManifest && !skipPostImportLinking) {
    await runLifecycleHooksConcurrently(["preinstall", "install", "postinstall", "preprepare", "prepare", "postprepare"], projectsToBeBuilt, opts2.childConcurrency ?? 5, scriptsOpts);
  }
  if (reporter != null && typeof reporter === "function") {
    streamParser.removeListener("data", reporter);
  }
  return {
    stats: {
      added,
      removed,
      linkedToRoot
    },
    ignoredBuilds
  };
}
async function symlinkDirectDependencies({ filteredLockfile, dedupe, directDependenciesByImporterId, lockfileDir, projects, registries, symlink }) {
  for (const { rootDir, manifest } of projects) {
    packageManifestLogger.debug({
      prefix: rootDir,
      updated: manifest
    });
  }
  if (symlink === false)
    return 0;
  const importerManifestsByImporterId = {};
  for (const { id, manifest } of projects) {
    importerManifestsByImporterId[id] = manifest;
  }
  const projectsToLink = Object.fromEntries(await Promise.all(projects.map(async ({ rootDir, id, modulesDir }) => [id, {
    dir: rootDir,
    modulesDir,
    dependencies: await getRootPackagesToLink(filteredLockfile, {
      importerId: id,
      importerModulesDir: modulesDir,
      lockfileDir,
      projectDir: rootDir,
      importerManifestsByImporterId,
      registries,
      rootDependencies: directDependenciesByImporterId[id]
    })
  }])));
  const rootProject = projectsToLink["."];
  if (rootProject && dedupe) {
    const rootDeps = Object.fromEntries(rootProject.dependencies.map((dep) => [dep.alias, dep.dir]));
    for (const project of Object.values(omit_default(["."], projectsToLink))) {
      project.dependencies = project.dependencies.filter((dep) => dep.dir !== rootDeps[dep.alias]);
    }
  }
  return linkDirectDeps(projectsToLink, { dedupe: Boolean(dedupe) });
}
async function linkBinsOfImporter({ manifest, modulesDir, binsDir, rootDir }, { extraNodePaths, preferSymlinkedExecutables } = {}) {
  const warn = (message) => {
    logger.info({ message, prefix: rootDir });
  };
  return linkBins(modulesDir, binsDir, {
    extraNodePaths,
    allowExoticManifests: true,
    preferSymlinkedExecutables,
    projectManifest: manifest,
    warn
  });
}
async function getRootPackagesToLink(lockfile, opts2) {
  const projectSnapshot = lockfile.importers[opts2.importerId];
  const allDeps = {
    ...projectSnapshot.devDependencies,
    ...projectSnapshot.dependencies,
    ...projectSnapshot.optionalDependencies
  };
  return (await Promise.all(Object.entries(allDeps).map(async ([alias, ref]) => {
    if (ref.startsWith("link:")) {
      const isDev2 = Boolean(projectSnapshot.devDependencies?.[alias]);
      const isOptional2 = Boolean(projectSnapshot.optionalDependencies?.[alias]);
      ref = ref.slice(5);
      const packageDir = path116.isAbsolute(ref) ? ref : path116.join(opts2.projectDir, ref);
      const linkedPackage = await (async () => {
        const importerId = getLockfileImporterId(opts2.lockfileDir, packageDir);
        if (opts2.importerManifestsByImporterId[importerId]) {
          return opts2.importerManifestsByImporterId[importerId];
        }
        try {
          return await readProjectManifestOnly(packageDir);
        } catch (err) {
          if (err["code"] !== "ERR_PNPM_NO_IMPORTER_MANIFEST_FOUND")
            throw err;
          return { name: alias, version: "0.0.0" };
        }
      })();
      return {
        alias,
        name: linkedPackage.name,
        version: linkedPackage.version,
        dir: packageDir,
        id: ref,
        isExternalLink: true,
        dependencyType: isDev2 && "dev" || isOptional2 && "optional" || "prod"
      };
    }
    const dir = opts2.rootDependencies[alias];
    if (!dir) {
      return;
    }
    const isDev = Boolean(projectSnapshot.devDependencies?.[alias]);
    const isOptional = Boolean(projectSnapshot.optionalDependencies?.[alias]);
    const depPath = refToRelative(ref, alias);
    if (depPath === null)
      return;
    const pkgSnapshot = lockfile.packages?.[depPath];
    if (pkgSnapshot == null)
      return;
    const pkgId = pkgSnapshot.id ?? refToRelative(ref, alias) ?? void 0;
    const pkgInfo = nameVerFromPkgSnapshot(depPath, pkgSnapshot);
    return {
      alias,
      isExternalLink: false,
      name: pkgInfo.name,
      version: pkgInfo.version,
      dependencyType: isDev && "dev" || isOptional && "optional" || "prod",
      dir,
      id: pkgId
    };
  }))).filter(Boolean);
}
async function linkAllPkgs(storeController, depNodes, opts2) {
  let needsBuildMarkerSrc;
  if (opts2.enableGlobalVirtualStore) {
    needsBuildMarkerSrc = path116.join(opts2.storeDir, ".pnpm-needs-build-marker");
    await fs67.writeFile(needsBuildMarkerSrc, "");
  }
  const nodeVersion = findRuntimeNodeVersion(depNodes.map((node) => node.depPath));
  await Promise.all(depNodes.map(async (depNode) => {
    if (!depNode.fetching)
      return;
    let filesResponse;
    try {
      filesResponse = (await depNode.fetching()).files;
    } catch (err) {
      if (depNode.optional)
        return;
      throw err;
    }
    depNode.requiresBuild = filesResponse.requiresBuild;
    let sideEffectsCacheKey;
    if (opts2.sideEffectsCacheRead && filesResponse.sideEffectsMaps && !isEmpty_default(filesResponse.sideEffectsMaps)) {
      if (opts2.allowBuild?.(depNode.name, depNode.version) === true) {
        sideEffectsCacheKey = calcDepState(opts2.depGraph, opts2.depsStateCache, depNode.dir, {
          includeDepGraphHash: !opts2.ignoreScripts && depNode.requiresBuild,
          // true when is built
          patchFileHash: depNode.patch?.hash,
          supportedArchitectures: opts2.supportedArchitectures,
          nodeVersion
        });
      }
    }
    const hasCachedSideEffects = sideEffectsCacheKey != null && filesResponse.sideEffectsMaps?.has(sideEffectsCacheKey) === true;
    const needsBuildMarker = needsBuildMarkerSrc != null && !hasCachedSideEffects && (depNode.requiresBuild || depNode.patch != null);
    let effectiveFilesResponse = filesResponse;
    if (needsBuildMarker) {
      effectiveFilesResponse = {
        ...filesResponse,
        filesMap: new Map([...filesResponse.filesMap, [".pnpm-needs-build", needsBuildMarkerSrc]])
      };
    }
    const { importMethod, isBuilt } = await storeController.importPackage(depNode.dir, {
      filesResponse: effectiveFilesResponse,
      force: depNode.forceImportPackage ?? opts2.force,
      disableRelinkLocalDirDeps: opts2.disableRelinkLocalDirDeps,
      requiresBuild: depNode.patch != null || depNode.requiresBuild,
      safeToSkip: opts2.enableGlobalVirtualStore,
      sideEffectsCacheKey
    });
    if (importMethod) {
      progressLogger.debug({
        method: importMethod,
        requester: opts2.lockfileDir,
        status: "imported",
        to: depNode.dir
      });
    }
    depNode.isBuilt = isBuilt;
    const selfDep = depNode.children[depNode.name];
    if (selfDep) {
      const pkg = opts2.depGraph[selfDep];
      if (!pkg)
        return;
      const targetModulesDir = path116.join(depNode.modules, depNode.name, "node_modules");
      await limitLinking3(async () => symlinkDependency(pkg.dir, targetModulesDir, depNode.name));
    }
  }));
}
async function linkAllBins2(depGraph, opts2) {
  await Promise.all(Object.values(depGraph).map(async (depNode) => limitLinking3(async () => {
    const childrenToLink = opts2.optional ? depNode.children : pickBy_default((_, childAlias) => !depNode.optionalDependencies.has(childAlias), depNode.children);
    const binPath = path116.join(depNode.dir, "node_modules/.bin");
    const pkgSnapshots = props_default(Object.values(childrenToLink), depGraph);
    if (pkgSnapshots.includes(void 0)) {
      await linkBins(depNode.modules, binPath, {
        extraNodePaths: opts2.extraNodePaths,
        preferSymlinkedExecutables: opts2.preferSymlinkedExecutables,
        warn: opts2.warn
      });
    } else {
      const pkgs = await Promise.all(pkgSnapshots.filter(({ hasBin }) => hasBin).map(async ({ dir }) => ({
        location: dir,
        manifest: await readPackageJsonFromDir(dir)
      })));
      await linkBinsOfPackages(pkgs, binPath, {
        extraNodePaths: opts2.extraNodePaths,
        preferSymlinkedExecutables: opts2.preferSymlinkedExecutables
      });
    }
    if (depNode.hasBundledDependencies) {
      const bundledModules = path116.join(depNode.dir, "node_modules");
      await linkBins(bundledModules, binPath, {
        extraNodePaths: opts2.extraNodePaths,
        preferSymlinkedExecutables: opts2.preferSymlinkedExecutables,
        warn: opts2.warn
      });
    }
  })));
}
async function linkAllModules(depNodes, opts2) {
  await symlinkAllModules({
    deps: depNodes.map((depNode) => ({
      children: opts2.optional ? depNode.children : pickBy_default((_, childAlias) => !depNode.optionalDependencies.has(childAlias), depNode.children),
      modules: depNode.modules,
      name: depNode.name
    }))
  });
}
var limitLinking3;
var init_lib119 = __esm({
  "../installing/deps-restorer/lib/index.js"() {
    "use strict";
    init_lib42();
    init_lib110();
    init_lib66();
    init_lib();
    init_lib6();
    init_lib111();
    init_lib72();
    init_lib65();
    init_lib2();
    init_lib44();
    init_lib112();
    init_lib113();
    init_lib114();
    init_lib116();
    init_lib75();
    init_lib115();
    init_lib78();
    init_lib117();
    init_lib70();
    init_lib3();
    init_lib39();
    init_lib8();
    init_lib4();
    init_lib13();
    init_p_limit();
    init_path_absolute();
    init_es();
    init_realpath_missing();
    init_extendProjectsWithTargetDirs();
    init_linkHoistedModules();
    init_lockfileToHoistedDepGraph();
    init_extendProjectsWithTargetDirs();
    limitLinking3 = pLimit(16);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/p-map-values/0.1.0/bce137177f9704fea47aa1c02655df52c7b1c9b26cdecf9088acec0cc6e33609/node_modules/p-map-values/lib/index.js
async function pMapValues(mapper, obj) {
  const result2 = {};
  await Promise.all(Object.entries(obj).map(async ([key, value]) => {
    result2[key] = await mapper(value, key, obj);
  }));
  return result2;
}
var init_lib120 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/p-map-values/0.1.0/bce137177f9704fea47aa1c02655df52c7b1c9b26cdecf9088acec0cc6e33609/node_modules/p-map-values/lib/index.js"() {
  }
});

// ../lockfile/settings-checker/lib/calcPatchHashes.js
async function calcPatchHashes(patches) {
  return pMapValues(async (patchFilePath) => {
    return createHexHashFromFile(patchFilePath);
  }, patches);
}
var init_calcPatchHashes = __esm({
  "../lockfile/settings-checker/lib/calcPatchHashes.js"() {
    "use strict";
    init_lib20();
    init_lib120();
  }
});

// ../lockfile/settings-checker/lib/createOverridesMapFromParsed.js
function createOverridesMapFromParsed(parsedOverrides) {
  if (!parsedOverrides)
    return {};
  const overridesMap = {};
  for (const { selector, newBareSpecifier } of parsedOverrides) {
    overridesMap[selector] = newBareSpecifier;
  }
  return overridesMap;
}
var init_createOverridesMapFromParsed = __esm({
  "../lockfile/settings-checker/lib/createOverridesMapFromParsed.js"() {
    "use strict";
  }
});

// ../lockfile/verification/lib/allCatalogsAreUpToDate.js
function allCatalogsAreUpToDate(catalogsConfig, snapshot) {
  return Object.entries(snapshot ?? {}).every(([catalogName, catalog]) => Object.entries(catalog ?? {}).every(([alias, entry]) => entry.specifier === catalogsConfig[catalogName]?.[alias]));
}
var init_allCatalogsAreUpToDate = __esm({
  "../lockfile/verification/lib/allCatalogsAreUpToDate.js"() {
    "use strict";
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/p-map/2.1.0/df0d3de43101f40830d68a00cafce7179879fb6ef89f7d99a742e02dad101a9f/node_modules/p-map/index.js
var require_p_map = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/p-map/2.1.0/df0d3de43101f40830d68a00cafce7179879fb6ef89f7d99a742e02dad101a9f/node_modules/p-map/index.js"(exports2, module2) {
    "use strict";
    var pMap2 = (iterable, mapper, options) => new Promise((resolve3, reject3) => {
      options = Object.assign({
        concurrency: Infinity
      }, options);
      if (typeof mapper !== "function") {
        throw new TypeError("Mapper function is required");
      }
      const { concurrency } = options;
      if (!(typeof concurrency === "number" && concurrency >= 1)) {
        throw new TypeError(`Expected \`concurrency\` to be a number from 1 and up, got \`${concurrency}\` (${typeof concurrency})`);
      }
      const ret2 = [];
      const iterator = iterable[Symbol.iterator]();
      let isRejected = false;
      let isIterableDone = false;
      let resolvingCount = 0;
      let currentIndex = 0;
      const next2 = () => {
        if (isRejected) {
          return;
        }
        const nextItem = iterator.next();
        const i2 = currentIndex;
        currentIndex++;
        if (nextItem.done) {
          isIterableDone = true;
          if (resolvingCount === 0) {
            resolve3(ret2);
          }
          return;
        }
        resolvingCount++;
        Promise.resolve(nextItem.value).then((element) => mapper(element, i2)).then(
          (value) => {
            ret2[i2] = value;
            resolvingCount--;
            next2();
          },
          (error) => {
            isRejected = true;
            reject3(error);
          }
        );
      };
      for (let i2 = 0; i2 < concurrency; i2++) {
        next2();
        if (isIterableDone) {
          break;
        }
      }
    });
    module2.exports = pMap2;
    module2.exports.default = pMap2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/p-every/2.0.0/b58d03574cecb8afa2498411794e16c0fe6afd4a2e66b53663f88d7f8e8ee0fb/node_modules/p-every/index.js
var require_p_every = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/p-every/2.0.0/b58d03574cecb8afa2498411794e16c0fe6afd4a2e66b53663f88d7f8e8ee0fb/node_modules/p-every/index.js"(exports2, module2) {
    "use strict";
    var pMap2 = require_p_map();
    var EndError2 = class extends Error {
    };
    var test = (testFunction) => async (element, index) => {
      const result2 = await testFunction(element, index);
      if (!result2) {
        throw new EndError2();
      }
      return result2;
    };
    var pEvery4 = async (iterable, testFunction, opts2) => {
      try {
        await pMap2(iterable, test(testFunction), opts2);
        return true;
      } catch (error) {
        if (error instanceof EndError2) {
          return false;
        }
        throw error;
      }
    };
    module2.exports = pEvery4;
    module2.exports.default = pEvery4;
  }
});

// ../lockfile/verification/lib/getWorkspacePackagesByDirectory.js
function getWorkspacePackagesByDirectory(workspacePackages) {
  const workspacePackagesByDirectory = {};
  if (workspacePackages) {
    for (const pkgVersions of workspacePackages.values()) {
      for (const { rootDir, manifest } of pkgVersions.values()) {
        workspacePackagesByDirectory[rootDir] = manifest;
      }
    }
  }
  return workspacePackagesByDirectory;
}
var init_getWorkspacePackagesByDirectory = __esm({
  "../lockfile/verification/lib/getWorkspacePackagesByDirectory.js"() {
    "use strict";
  }
});

// ../lockfile/verification/lib/linkedPackagesAreUpToDate.js
import path117 from "node:path";
async function linkedPackagesAreUpToDate({ linkWorkspacePackages, manifestsByDir, workspacePackages, lockfilePackages, lockfileDir }, project) {
  return import_p_every.default.default(DEPENDENCIES_FIELDS, (depField) => {
    const lockfileDeps = project.snapshot[depField];
    const manifestDeps = project.manifest[depField];
    if (lockfileDeps == null || manifestDeps == null)
      return true;
    const depNames = Object.keys(lockfileDeps);
    return import_p_every.default.default(depNames, async (depName) => {
      const currentSpec = manifestDeps[depName];
      if (!currentSpec)
        return true;
      const lockfileRef = lockfileDeps[depName];
      if (refIsLocalDirectory(project.snapshot.specifiers[depName])) {
        if (lockfileRef.startsWith("link:"))
          return true;
        const depPath = refToRelative(lockfileRef, depName);
        return depPath != null && isLocalFileDepUpdated(lockfileDir, lockfilePackages?.[depPath]);
      }
      const isLinked = lockfileRef.startsWith("link:");
      if (isLinked && (currentSpec.startsWith("link:") || currentSpec.startsWith("file:") || currentSpec.startsWith("workspace:."))) {
        return true;
      }
      if (isLinked && (0, import_version_selector_type6.default)(currentSpec)?.type === "tag") {
        return true;
      }
      const linkedDir = isLinked ? path117.join(project.dir, lockfileRef.slice(5)) : workspacePackages?.get(depName)?.get(lockfileRef)?.rootDir;
      if (!linkedDir)
        return true;
      if (!linkWorkspacePackages && !currentSpec.startsWith("workspace:")) {
        return true;
      }
      const linkedPkg = manifestsByDir[linkedDir] ?? await safeReadPackageJsonFromDir(linkedDir);
      const availableRange = getVersionRange(currentSpec);
      const localPackageSatisfiesRange = availableRange === "*" || availableRange === "^" || availableRange === "~" || linkedPkg && import_semver34.default.satisfies(linkedPkg.version, availableRange, { loose: true });
      if (isLinked !== localPackageSatisfiesRange)
        return false;
      return true;
    });
  });
}
async function isLocalFileDepUpdated(lockfileDir, pkgSnapshot) {
  if (!pkgSnapshot)
    return false;
  const localDepDir = path117.join(lockfileDir, pkgSnapshot.resolution.directory);
  const manifest = await safeReadPackageJsonFromDir(localDepDir);
  if (!manifest)
    return false;
  for (const depField of DEPENDENCIES_OR_PEER_FIELDS) {
    if (depField === "devDependencies")
      continue;
    const manifestDeps = manifest[depField] ?? {};
    const lockfileDeps = pkgSnapshot[depField] ?? {};
    if (Object.keys(lockfileDeps).some((depName) => !manifestDeps[depName])) {
      return false;
    }
    for (const depName of Object.keys(manifestDeps)) {
      if (!lockfileDeps[depName]) {
        return false;
      }
      const currentSpec = manifestDeps[depName];
      if (currentSpec.startsWith("file:") || currentSpec.startsWith("link:") || currentSpec.startsWith("workspace:"))
        continue;
      if (import_semver34.default.satisfies(lockfileDeps[depName], getVersionRange(currentSpec), { loose: true })) {
        continue;
      } else {
        return false;
      }
    }
  }
  return true;
}
function getVersionRange(spec) {
  if (spec.startsWith("workspace:"))
    return spec.slice(10);
  if (spec.startsWith("npm:")) {
    spec = spec.slice(4);
    const index = spec.indexOf("@", 1);
    if (index === -1)
      return "*";
    return spec.slice(index + 1) || "*";
  }
  return spec;
}
var import_p_every, import_semver34, import_version_selector_type6;
var init_linkedPackagesAreUpToDate = __esm({
  "../lockfile/verification/lib/linkedPackagesAreUpToDate.js"() {
    "use strict";
    init_lib65();
    init_lib70();
    init_lib39();
    init_lib8();
    import_p_every = __toESM(require_p_every(), 1);
    import_semver34 = __toESM(require_semver2(), 1);
    import_version_selector_type6 = __toESM(require_version_selector_type(), 1);
  }
});

// ../lockfile/verification/lib/localTarballDepsAreUpToDate.js
import path118 from "node:path";
async function localTarballDepsAreUpToDate({ fileIntegrityCache, lockfilePackages, lockfileDir }, project) {
  return import_p_every2.default.default(DEPENDENCIES_FIELDS, (depField) => {
    const lockfileDeps = project.snapshot[depField];
    if (lockfileDeps == null) {
      return true;
    }
    return import_p_every2.default.default(Object.entries(lockfileDeps), async ([depName, ref]) => {
      if (!ref.startsWith("file:")) {
        return true;
      }
      const depPath = refToRelative(ref, depName);
      if (depPath == null) {
        return true;
      }
      const parsed = parse6(depPath);
      const tarballRefWithoutPeersSuffix = parsed.nonSemverVersion;
      if (tarballRefWithoutPeersSuffix == null) {
        return true;
      }
      if (!refIsLocalTarball(tarballRefWithoutPeersSuffix)) {
        return true;
      }
      const packageSnapshot = depPath != null ? lockfilePackages?.[depPath] : null;
      if (packageSnapshot == null) {
        return false;
      }
      const fileRelativePath = tarballRefWithoutPeersSuffix.slice("file:".length);
      const filePath = path118.join(lockfileDir, fileRelativePath);
      const fileIntegrityPromise = fileIntegrityCache.get(filePath) ?? getTarballIntegrity(filePath);
      if (!fileIntegrityCache.has(filePath)) {
        fileIntegrityCache.set(filePath, fileIntegrityPromise);
      }
      let fileIntegrity;
      try {
        fileIntegrity = await fileIntegrityPromise;
      } catch (_err) {
        return false;
      }
      return packageSnapshot.resolution.integrity === fileIntegrity;
    });
  });
}
var import_p_every2;
var init_localTarballDepsAreUpToDate = __esm({
  "../lockfile/verification/lib/localTarballDepsAreUpToDate.js"() {
    "use strict";
    init_lib20();
    init_lib65();
    init_lib70();
    init_lib8();
    import_p_every2 = __toESM(require_p_every(), 1);
  }
});

// ../lockfile/verification/lib/diffFlatRecords.js
function diffFlatRecords(left, right) {
  const result2 = {
    added: [],
    removed: [],
    modified: []
  };
  for (const [key, value] of Object.entries(left)) {
    if (!Object.hasOwn(right, key)) {
      result2.removed.push({ key, value });
    } else if (value !== right[key]) {
      result2.modified.push({ key, left: value, right: right[key] });
    }
  }
  for (const [key, value] of Object.entries(right)) {
    if (!Object.hasOwn(left, key)) {
      result2.added.push({ key, value });
    }
  }
  return result2;
}
function isEqual({ added, removed, modified }) {
  return added.length === 0 && removed.length === 0 && modified.length === 0;
}
var init_diffFlatRecords = __esm({
  "../lockfile/verification/lib/diffFlatRecords.js"() {
    "use strict";
  }
});

// ../lockfile/verification/lib/satisfiesPackageManifest.js
function satisfiesPackageManifest(opts2, importer, pkg) {
  if (!importer)
    return { satisfies: false, detailedReason: "no importer" };
  let existingDeps = { ...pkg.devDependencies, ...pkg.dependencies, ...pkg.optionalDependencies };
  if (opts2?.autoInstallPeers) {
    pkg = {
      ...pkg,
      dependencies: {
        ...pkg.peerDependencies && omit_default(Object.keys(existingDeps), pkg.peerDependencies),
        ...pkg.dependencies
      }
    };
    existingDeps = {
      ...pkg.peerDependencies,
      ...existingDeps
    };
  }
  const pickNonLinkedDeps = pickBy_default((spec) => !spec.startsWith("link:"));
  let specs = importer.specifiers;
  if (opts2?.excludeLinksFromLockfile) {
    existingDeps = pickNonLinkedDeps(existingDeps);
    specs = pickNonLinkedDeps(specs);
  }
  const specsDiff = diffFlatRecords(specs, existingDeps);
  if (!isEqual(specsDiff)) {
    return {
      satisfies: false,
      detailedReason: `specifiers in the lockfile don't match specifiers in package.json:
${displaySpecDiff(specsDiff)}`
    };
  }
  if (importer.publishDirectory !== pkg.publishConfig?.directory) {
    return {
      satisfies: false,
      detailedReason: `"publishDirectory" in the lockfile (${importer.publishDirectory ?? "undefined"}) doesn't match "publishConfig.directory" in package.json (${pkg.publishConfig?.directory ?? "undefined"})`
    };
  }
  if (!equals_default(pkg.dependenciesMeta ?? {}, importer.dependenciesMeta ?? {})) {
    return {
      satisfies: false,
      detailedReason: `importer dependencies meta (${JSON.stringify(importer.dependenciesMeta)}) doesn't match package manifest dependencies meta (${JSON.stringify(pkg.dependenciesMeta)})`
    };
  }
  for (const depField of DEPENDENCIES_FIELDS) {
    const importerDeps = importer[depField] ?? {};
    let pkgDeps = pkg[depField] ?? {};
    if (opts2?.excludeLinksFromLockfile) {
      pkgDeps = pickNonLinkedDeps(pkgDeps);
    }
    let pkgDepNames;
    switch (depField) {
      case "optionalDependencies":
        pkgDepNames = Object.keys(pkgDeps);
        break;
      case "devDependencies":
        pkgDepNames = Object.keys(pkgDeps).filter((depName) => !pkg.optionalDependencies?.[depName] && !pkg.dependencies?.[depName]);
        break;
      case "dependencies":
        pkgDepNames = Object.keys(pkgDeps).filter((depName) => !pkg.optionalDependencies?.[depName]);
        break;
      default:
        throw new Error(`Unknown dependency type "${depField}"`);
    }
    if (pkgDepNames.length !== Object.keys(importerDeps).length && pkgDepNames.length !== countOfNonLinkedDeps(importerDeps)) {
      return {
        satisfies: false,
        detailedReason: `"${depField}" in the lockfile (${JSON.stringify(importerDeps)}) doesn't match the same field in package.json (${JSON.stringify(pkgDeps)})`
      };
    }
    for (const depName of pkgDepNames) {
      if (!importerDeps[depName] || importer.specifiers?.[depName] !== pkgDeps[depName]) {
        return {
          satisfies: false,
          detailedReason: `importer ${depField}.${depName} specifier ${importer.specifiers[depName]} don't match package manifest specifier (${pkgDeps[depName]})`
        };
      }
      if (importer?.specifiers[depName] == null || !import_semver35.default.validRange(importer?.specifiers[depName]))
        continue;
      const version2 = removeSuffix(importerDeps[depName]);
      if (import_semver35.default.valid(version2) && !import_semver35.default.satisfies(version2, importer.specifiers[depName])) {
        return {
          satisfies: false,
          detailedReason: `The importer resolution is broken at dependency "${depName}": version "${version2}" doesn't satisfy range "${importer.specifiers[depName]}"`
        };
      }
    }
  }
  return { satisfies: true };
}
function countOfNonLinkedDeps(lockfileDeps) {
  return Object.values(lockfileDeps).filter((ref) => !ref.includes("link:") && !ref.includes("file:")).length;
}
function displaySpecDiff({ added, removed, modified }) {
  let result2 = "";
  if (added.length !== 0) {
    result2 += `* ${added.length} dependencies were added: `;
    result2 += added.map(({ key, value }) => `${key}@${value}`).join(", ");
    result2 += "\n";
  }
  if (removed.length !== 0) {
    result2 += `* ${removed.length} dependencies were removed: `;
    result2 += removed.map(({ key, value }) => `${key}@${value}`).join(", ");
    result2 += "\n";
  }
  if (modified.length !== 0) {
    result2 += `* ${modified.length} dependencies are mismatched:
`;
    for (const { key, left, right } of modified) {
      result2 += `  - ${key} (lockfile: ${left}, manifest: ${right})
`;
    }
  }
  return result2;
}
var import_semver35;
var init_satisfiesPackageManifest = __esm({
  "../lockfile/verification/lib/satisfiesPackageManifest.js"() {
    "use strict";
    init_lib65();
    init_lib8();
    init_es();
    import_semver35 = __toESM(require_semver2(), 1);
    init_diffFlatRecords();
  }
});

// ../lockfile/verification/lib/allProjectsAreUpToDate.js
async function allProjectsAreUpToDate(projects, opts2) {
  if (!allCatalogsAreUpToDate(opts2.catalogs, opts2.wantedLockfile.catalogs)) {
    return false;
  }
  const manifestsByDir = opts2.workspacePackages ? getWorkspacePackagesByDirectory(opts2.workspacePackages) : {};
  const _satisfiesPackageManifest = satisfiesPackageManifest.bind(null, {
    autoInstallPeers: opts2.autoInstallPeers,
    excludeLinksFromLockfile: opts2.excludeLinksFromLockfile
  });
  const _linkedPackagesAreUpToDate = linkedPackagesAreUpToDate.bind(null, {
    linkWorkspacePackages: opts2.linkWorkspacePackages,
    manifestsByDir,
    workspacePackages: opts2.workspacePackages,
    lockfilePackages: opts2.wantedLockfile.packages,
    lockfileDir: opts2.lockfileDir
  });
  const _localTarballDepsAreUpToDate = localTarballDepsAreUpToDate.bind(null, {
    fileIntegrityCache: /* @__PURE__ */ new Map(),
    lockfilePackages: opts2.wantedLockfile.packages,
    lockfileDir: opts2.lockfileDir
  });
  return import_p_every3.default.default(projects, async (project) => {
    const importer = opts2.wantedLockfile.importers[project.id];
    if (importer == null) {
      return DEPENDENCIES_FIELDS.every((depType) => project.manifest[depType] == null || isEmpty_default(project.manifest[depType]));
    }
    const projectInfo = {
      dir: project.rootDir,
      manifest: project.manifest,
      snapshot: importer
    };
    return importer != null && _satisfiesPackageManifest(importer, project.manifest).satisfies && await _localTarballDepsAreUpToDate(projectInfo) && _linkedPackagesAreUpToDate(projectInfo);
  });
}
var import_p_every3;
var init_allProjectsAreUpToDate = __esm({
  "../lockfile/verification/lib/allProjectsAreUpToDate.js"() {
    "use strict";
    init_lib8();
    import_p_every3 = __toESM(require_p_every(), 1);
    init_es();
    init_allCatalogsAreUpToDate();
    init_getWorkspacePackagesByDirectory();
    init_linkedPackagesAreUpToDate();
    init_localTarballDepsAreUpToDate();
    init_satisfiesPackageManifest();
  }
});

// ../lockfile/verification/lib/index.js
var init_lib121 = __esm({
  "../lockfile/verification/lib/index.js"() {
    "use strict";
    init_allCatalogsAreUpToDate();
    init_allProjectsAreUpToDate();
    init_getWorkspacePackagesByDirectory();
    init_linkedPackagesAreUpToDate();
    init_localTarballDepsAreUpToDate();
    init_satisfiesPackageManifest();
  }
});

// ../lockfile/settings-checker/lib/getOutdatedLockfileSetting.js
function getOutdatedLockfileSetting(lockfile, { catalogs, overrides, packageExtensionsChecksum, ignoredOptionalDependencies, patchedDependencies, autoInstallPeers, dedupePeers, excludeLinksFromLockfile, peersSuffixMaxLength, pnpmfileChecksum, injectWorkspacePackages }) {
  if (!allCatalogsAreUpToDate(catalogs ?? {}, lockfile.catalogs)) {
    return "catalogs";
  }
  if (!equals_default(lockfile.overrides ?? {}, overrides ?? {})) {
    return "overrides";
  }
  if (lockfile.packageExtensionsChecksum !== packageExtensionsChecksum) {
    return "packageExtensionsChecksum";
  }
  if (!equals_default(lockfile.ignoredOptionalDependencies?.sort() ?? [], ignoredOptionalDependencies?.sort() ?? [])) {
    return "ignoredOptionalDependencies";
  }
  if (!equals_default(lockfile.patchedDependencies ?? {}, patchedDependencies ?? {})) {
    return "patchedDependencies";
  }
  if (lockfile.settings?.autoInstallPeers != null && lockfile.settings.autoInstallPeers !== autoInstallPeers) {
    return "settings.autoInstallPeers";
  }
  if (Boolean(lockfile.settings?.dedupePeers) !== Boolean(dedupePeers)) {
    return "settings.dedupePeers";
  }
  if (lockfile.settings?.excludeLinksFromLockfile != null && lockfile.settings.excludeLinksFromLockfile !== excludeLinksFromLockfile) {
    return "settings.excludeLinksFromLockfile";
  }
  if (lockfile.settings?.peersSuffixMaxLength != null && lockfile.settings.peersSuffixMaxLength !== peersSuffixMaxLength || lockfile.settings?.peersSuffixMaxLength == null && peersSuffixMaxLength !== 1e3) {
    return "settings.peersSuffixMaxLength";
  }
  if (lockfile.pnpmfileChecksum !== pnpmfileChecksum) {
    return "pnpmfileChecksum";
  }
  if (Boolean(lockfile.settings?.injectWorkspacePackages) !== Boolean(injectWorkspacePackages)) {
    return "settings.injectWorkspacePackages";
  }
  return null;
}
var init_getOutdatedLockfileSetting = __esm({
  "../lockfile/settings-checker/lib/getOutdatedLockfileSetting.js"() {
    "use strict";
    init_lib121();
    init_es();
  }
});

// ../lockfile/settings-checker/lib/index.js
var init_lib122 = __esm({
  "../lockfile/settings-checker/lib/index.js"() {
    "use strict";
    init_calcPatchHashes();
    init_createOverridesMapFromParsed();
    init_getOutdatedLockfileSetting();
  }
});

// ../installing/deps-installer/lib/parseWantedDependencies.js
function parseWantedDependencies(rawWantedDependencies, opts2) {
  return rawWantedDependencies.map((rawWantedDependency) => {
    const parsed = parseWantedDependency(rawWantedDependency);
    const alias = parsed["alias"];
    let bareSpecifier = parsed["bareSpecifier"];
    if (!opts2.allowNew && (!alias || !opts2.currentBareSpecifiers[alias])) {
      return null;
    }
    if (alias && opts2.defaultCatalog?.[alias] && (!opts2.currentBareSpecifiers[alias] && bareSpecifier === void 0 || opts2.defaultCatalog[alias] === bareSpecifier || opts2.defaultCatalog[alias] === opts2.currentBareSpecifiers[alias])) {
      bareSpecifier = "catalog:";
    }
    if (alias && opts2.currentBareSpecifiers[alias]) {
      bareSpecifier ??= opts2.currentBareSpecifiers[alias];
    }
    const result2 = {
      alias,
      dev: Boolean(opts2.dev || alias && !!opts2.devDependencies[alias]),
      optional: Boolean(opts2.optional || alias && !!opts2.optionalDependencies[alias]),
      prevSpecifier: alias && opts2.currentBareSpecifiers[alias],
      saveCatalogName: opts2.saveCatalogName
    };
    if (bareSpecifier) {
      return {
        ...result2,
        bareSpecifier
      };
    }
    if (alias && opts2.preferredSpecs?.[alias]) {
      return {
        ...result2,
        bareSpecifier: opts2.preferredSpecs[alias]
      };
    }
    if (alias && opts2.overrides?.[alias]) {
      return {
        ...result2,
        bareSpecifier: opts2.overrides[alias]
      };
    }
    return {
      ...result2,
      bareSpecifier: opts2.defaultTag
    };
  }).filter((wd) => wd !== null);
}
var init_parseWantedDependencies = __esm({
  "../installing/deps-installer/lib/parseWantedDependencies.js"() {
    "use strict";
    init_lib96();
  }
});

// ../installing/deps-installer/lib/uninstall/removeDeps.js
async function removeDeps(packageManifest, removedPackages, opts2) {
  if (opts2.saveType) {
    if (!Object.hasOwn(packageManifest, opts2.saveType))
      return packageManifest;
    const targetDeps = packageManifest[opts2.saveType];
    if (targetDeps == null)
      return packageManifest;
    for (const dependency of removedPackages) {
      removeOwnEntry(targetDeps, dependency);
    }
  } else {
    for (const depField of DEPENDENCIES_FIELDS) {
      const fieldDeps = packageManifest[depField];
      if (!fieldDeps)
        continue;
      for (const dependency of removedPackages) {
        removeOwnEntry(fieldDeps, dependency);
      }
    }
  }
  if (packageManifest.peerDependencies != null) {
    const peerDeps = packageManifest.peerDependencies;
    for (const removedDependency of removedPackages) {
      removeOwnEntry(peerDeps, removedDependency);
    }
  }
  if (packageManifest.dependenciesMeta != null) {
    const depsMeta = packageManifest.dependenciesMeta;
    for (const removedDependency of removedPackages) {
      removeOwnEntry(depsMeta, removedDependency);
    }
  }
  packageManifestLogger.debug({
    prefix: opts2.prefix,
    updated: packageManifest
  });
  return packageManifest;
}
function removeOwnEntry(target2, key) {
  if (Object.hasOwn(target2, key)) {
    delete target2[key];
  }
}
var init_removeDeps = __esm({
  "../installing/deps-installer/lib/uninstall/removeDeps.js"() {
    "use strict";
    init_lib6();
    init_lib8();
  }
});

// ../installing/deps-installer/lib/install/checkCompatibility/CatalogVersionMismatchError.js
var CatalogVersionMismatchError;
var init_CatalogVersionMismatchError = __esm({
  "../installing/deps-installer/lib/install/checkCompatibility/CatalogVersionMismatchError.js"() {
    "use strict";
    init_lib2();
    CatalogVersionMismatchError = class extends PnpmError {
      catalogDep;
      wantedDep;
      constructor(opts2) {
        super("CATALOG_VERSION_MISMATCH", "Wanted dependency outside the version range defined in catalog");
        this.catalogDep = opts2.catalogDep;
        this.wantedDep = opts2.wantedDep;
      }
    };
  }
});

// ../installing/deps-installer/lib/install/checkCustomResolverForceResolve.js
async function checkCustomResolverForceResolve(customResolvers, wantedLockfile) {
  if (!wantedLockfile.packages)
    return false;
  const hooks = [];
  for (const resolver of customResolvers) {
    if (resolver.shouldRefreshResolution)
      hooks.push(resolver.shouldRefreshResolution);
  }
  if (hooks.length === 0)
    return false;
  const asyncChecks = [];
  for (const [depPath, pkgSnapshot] of Object.entries(wantedLockfile.packages)) {
    for (const hook of hooks) {
      const result2 = hook(depPath, pkgSnapshot);
      if (result2 === true)
        return true;
      if (result2 !== false)
        asyncChecks.push(result2);
    }
  }
  if (asyncChecks.length === 0)
    return false;
  return anyTrue(asyncChecks);
}
async function anyTrue(promises) {
  return new Promise((resolve3, reject3) => {
    let remaining = promises.length;
    if (remaining === 0)
      return resolve3(false);
    for (const p of promises) {
      p.then((value) => {
        if (value)
          resolve3(true);
        else if (--remaining === 0)
          resolve3(false);
      }, reject3);
    }
  });
}
var init_checkCustomResolverForceResolve = __esm({
  "../installing/deps-installer/lib/install/checkCustomResolverForceResolve.js"() {
    "use strict";
  }
});

// ../installing/deps-installer/lib/pnpmPkgJson.js
import path119 from "node:path";
var pnpmPkgJson;
var init_pnpmPkgJson = __esm({
  "../installing/deps-installer/lib/pnpmPkgJson.js"() {
    "use strict";
    init_load_json_file();
    try {
      pnpmPkgJson = loadJsonFileSync(path119.resolve(import.meta.dirname, "../package.json"));
    } catch (err) {
      pnpmPkgJson = {
        name: "pnpm",
        version: "0.0.0"
      };
    }
  }
});

// ../installing/deps-installer/lib/install/extendInstallOptions.js
import path120 from "node:path";
function extendOptions(opts2) {
  if (opts2) {
    for (const key in opts2) {
      if (opts2[key] === void 0) {
        delete opts2[key];
      }
    }
  }
  const defaultOpts = defaults2(opts2);
  const extendedOpts = {
    ...defaultOpts,
    ...opts2,
    storeDir: defaultOpts.storeDir,
    parsedOverrides: parseOverrides(opts2.overrides ?? {}, opts2.catalogs ?? {})
  };
  extendedOpts.readPackageHook = createReadPackageHook({
    ignoreCompatibilityDb: extendedOpts.ignoreCompatibilityDb,
    readPackageHook: extendedOpts.hooks?.readPackage,
    overrides: extendedOpts.parsedOverrides,
    lockfileDir: extendedOpts.lockfileDir,
    packageExtensions: extendedOpts.packageExtensions,
    ignoredOptionalDependencies: extendedOpts.ignoredOptionalDependencies
  });
  if (extendedOpts.virtualStoreOnly && !extendedOpts.enableModulesDir && !extendedOpts.enableGlobalVirtualStore) {
    throw new PnpmError("CONFIG_CONFLICT_VIRTUAL_STORE_ONLY_WITH_NO_MODULES_DIR", "Cannot use virtualStoreOnly when enableModulesDir is false (the standard virtual store requires node_modules/.pnpm)");
  }
  if (extendedOpts.virtualStoreOnly) {
    extendedOpts.hoistPattern = [];
    extendedOpts.publicHoistPattern = [];
  }
  if (extendedOpts.lockfileOnly) {
    extendedOpts.ignoreScripts = true;
    if (!extendedOpts.useLockfile) {
      throw new PnpmError("CONFIG_CONFLICT_LOCKFILE_ONLY_WITH_NO_LOCKFILE", `Cannot generate a ${WANTED_LOCKFILE} because lockfile is set to false`);
    }
  }
  if (extendedOpts.userAgent.startsWith("npm/")) {
    extendedOpts.userAgent = `${extendedOpts.packageManager.name}/${extendedOpts.packageManager.version} ${extendedOpts.userAgent}`;
  }
  extendedOpts.registries = normalizeRegistries(extendedOpts.registries);
  if (extendedOpts.enableGlobalVirtualStore) {
    if (extendedOpts.virtualStoreDir == null) {
      extendedOpts.virtualStoreDir = path120.join(extendedOpts.storeDir, "links");
    }
    extendedOpts.allowBuilds ??= {};
  }
  extendedOpts.globalVirtualStoreDir = extendedOpts.enableGlobalVirtualStore ? extendedOpts.virtualStoreDir : path120.join(extendedOpts.storeDir, "links");
  return extendedOpts;
}
var defaults2;
var init_extendInstallOptions = __esm({
  "../installing/deps-installer/lib/install/extendInstallOptions.js"() {
    "use strict";
    init_lib74();
    init_lib97();
    init_lib();
    init_lib2();
    init_lib103();
    init_pnpmPkgJson();
    defaults2 = (opts2) => {
      const packageManager2 = opts2.packageManager ?? {
        name: pnpmPkgJson.name,
        version: pnpmPkgJson.version
      };
      return {
        allowedDeprecatedVersions: {},
        allowUnusedPatches: false,
        autoConfirmAllPrompts: opts2.autoConfirmAllPrompts ?? false,
        autoInstallPeers: true,
        autoInstallPeersFromHighestMatch: false,
        catalogs: {},
        childConcurrency: 5,
        confirmModulesPurge: !(opts2.autoConfirmAllPrompts || opts2.force),
        depth: 0,
        dedupeInjectedDeps: true,
        enableGlobalVirtualStore: false,
        enablePnp: false,
        engineStrict: false,
        force: false,
        forceFullResolution: false,
        frozenLockfile: false,
        hoistPattern: void 0,
        publicHoistPattern: void 0,
        hooks: {},
        ignoreCurrentSpecifiers: false,
        ignoreScripts: false,
        include: {
          dependencies: true,
          devDependencies: true,
          optionalDependencies: true
        },
        includeDirect: {
          dependencies: true,
          devDependencies: true,
          optionalDependencies: true
        },
        lockfileDir: opts2.lockfileDir ?? opts2.dir ?? process.cwd(),
        lockfileOnly: false,
        nodeVersion: opts2.nodeVersion,
        nodeLinker: "isolated",
        overrides: {},
        ownLifecycleHooksStdio: "inherit",
        ignoreCompatibilityDb: false,
        ignorePackageManifest: false,
        ignoreLocalPackages: false,
        packageExtensions: {},
        ignoredOptionalDependencies: [],
        packageManager: packageManager2,
        preferFrozenLockfile: true,
        preferWorkspacePackages: false,
        preserveWorkspaceProtocol: true,
        pruneLockfileImporters: false,
        pruneStore: false,
        configByUri: {},
        registries: DEFAULT_REGISTRIES,
        resolutionMode: "highest",
        saveWorkspaceProtocol: "rolling",
        scriptsPrependNodePath: false,
        shamefullyHoist: false,
        shellEmulator: false,
        sideEffectsCacheRead: false,
        sideEffectsCacheWrite: false,
        symlink: true,
        storeController: opts2.storeController,
        storeDir: opts2.storeDir,
        strictPeerDependencies: false,
        tag: "latest",
        unsafePerm: process.platform === "win32" || process.platform === "cygwin" || !process.setgid || process.getuid?.() !== 0,
        catalogMode: "manual",
        cleanupUnusedCatalogs: false,
        useLockfile: true,
        saveLockfile: true,
        useGitBranchLockfile: false,
        mergeGitBranchLockfiles: false,
        userAgent: `${packageManager2.name}/${packageManager2.version} npm/? node/${process.version} ${process.platform} ${process.arch}`,
        verifyStoreIntegrity: true,
        enableModulesDir: true,
        virtualStoreOnly: false,
        modulesCacheMaxAge: 7 * 24 * 60,
        resolveSymlinksInInjectedDirs: false,
        dedupeDirectDeps: true,
        dedupePeerDependents: true,
        dedupePeers: false,
        resolvePeersFromWorkspaceRoot: true,
        extendNodePath: true,
        ignoreWorkspaceCycles: false,
        disallowWorkspaceCycles: false,
        excludeLinksFromLockfile: false,
        skipRuntimes: false,
        virtualStoreDirMaxLength: 120,
        peersSuffixMaxLength: 1e3,
        blockExoticSubdeps: false,
        omitSummaryLog: false,
        resolutionVerifiers: []
      };
    };
  }
});

// ../installing/deps-installer/lib/install/link.js
import { promises as fs68 } from "node:fs";
import path121 from "node:path";
async function linkPackages(projects, depGraph, opts2) {
  let depNodes = Object.values(depGraph).filter(({ depPath, id }) => {
    if (opts2.wantedLockfile.packages?.[depPath] != null && !opts2.wantedLockfile.packages[depPath].optional) {
      opts2.skipped.delete(depPath);
      return true;
    }
    if (opts2.wantedToBeSkippedPackageIds.has(id)) {
      opts2.skipped.add(depPath);
      return false;
    }
    opts2.skipped.delete(depPath);
    return true;
  });
  if (!opts2.include.dependencies) {
    depNodes = depNodes.filter(({ dev, optional }) => dev || optional);
  }
  if (!opts2.include.devDependencies) {
    depNodes = depNodes.filter(({ optional, prod }) => prod || optional);
  }
  if (!opts2.include.optionalDependencies) {
    depNodes = depNodes.filter(({ optional }) => !optional);
  }
  depGraph = Object.fromEntries(depNodes.map((depNode) => [depNode.depPath, depNode]));
  const removedDepPaths = await prune2(projects, {
    currentLockfile: opts2.currentLockfile,
    dedupeDirectDeps: opts2.dedupeDirectDeps,
    hoistedDependencies: opts2.hoistedDependencies,
    hoistedModulesDir: opts2.hoistPattern != null ? opts2.hoistedModulesDir : void 0,
    include: opts2.include,
    lockfileDir: opts2.lockfileDir,
    pruneStore: opts2.pruneStore,
    pruneVirtualStore: opts2.pruneVirtualStore,
    publicHoistedModulesDir: opts2.publicHoistPattern != null ? opts2.rootModulesDir : void 0,
    skipped: opts2.skipped,
    skipRuntimes: opts2.skipRuntimes,
    storeController: opts2.storeController,
    virtualStoreDir: opts2.virtualStoreDir,
    virtualStoreDirMaxLength: opts2.virtualStoreDirMaxLength,
    wantedLockfile: opts2.wantedLockfile
  });
  stageLogger.debug({
    prefix: opts2.lockfileDir,
    stage: "importing_started"
  });
  const projectIds = projects.map(({ id }) => id);
  const filterOpts = {
    include: opts2.include,
    registries: opts2.registries,
    skipped: opts2.skipped,
    skipRuntimes: opts2.skipRuntimes
  };
  const newCurrentLockfile = filterLockfileByImporters(opts2.wantedLockfile, projectIds, {
    ...filterOpts,
    failOnMissingDependencies: true,
    skipped: /* @__PURE__ */ new Set()
  });
  const { newDepPaths, added } = await linkNewPackages(filterLockfileByImporters(opts2.currentLockfile, projectIds, {
    ...filterOpts,
    failOnMissingDependencies: false
  }), newCurrentLockfile, depGraph, {
    allowBuild: opts2.allowBuild,
    disableRelinkLocalDirDeps: opts2.disableRelinkLocalDirDeps,
    enableGlobalVirtualStore: opts2.enableGlobalVirtualStore,
    force: opts2.force,
    depsStateCache: opts2.depsStateCache,
    ignoreScripts: opts2.ignoreScripts,
    lockfileDir: opts2.lockfileDir,
    optional: opts2.include.optionalDependencies,
    sideEffectsCacheRead: opts2.sideEffectsCacheRead,
    symlink: opts2.symlink,
    skipped: opts2.skipped,
    storeController: opts2.storeController,
    supportedArchitectures: opts2.supportedArchitectures,
    virtualStoreDir: opts2.virtualStoreDir
  });
  stageLogger.debug({
    prefix: opts2.lockfileDir,
    stage: "importing_done"
  });
  let currentLockfile;
  const allImportersIncluded = equals_default(projectIds.sort(), Object.keys(opts2.wantedLockfile.importers).sort());
  if (opts2.makePartialCurrentLockfile || !allImportersIncluded) {
    const packages = opts2.currentLockfile.packages ?? {};
    if (opts2.wantedLockfile.packages != null) {
      for (const depPath in opts2.wantedLockfile.packages) {
        if (depGraph[depPath]) {
          packages[depPath] = opts2.wantedLockfile.packages[depPath];
        }
      }
    }
    const projects2 = {
      ...opts2.currentLockfile.importers,
      ...pick_default(projectIds, opts2.wantedLockfile.importers)
    };
    currentLockfile = filterLockfileByImporters({
      ...opts2.wantedLockfile,
      importers: projects2,
      packages
    }, Object.keys(projects2), {
      ...filterOpts,
      failOnMissingDependencies: false,
      skipped: /* @__PURE__ */ new Set()
    });
  } else if (opts2.include.dependencies && opts2.include.devDependencies && opts2.include.optionalDependencies && opts2.skipped.size === 0) {
    currentLockfile = opts2.wantedLockfile;
  } else {
    currentLockfile = newCurrentLockfile;
  }
  let newHoistedDependencies;
  if (opts2.virtualStoreOnly || opts2.hoistPattern == null && opts2.publicHoistPattern == null) {
    newHoistedDependencies = {};
  } else if (newDepPaths.length > 0 || removedDepPaths.size > 0) {
    newHoistedDependencies = {
      ...opts2.hoistedDependencies,
      ...await hoist({
        extraNodePath: opts2.extraNodePaths,
        graph: depGraph,
        directDepsByImporterId: {
          ...opts2.dependenciesByProjectId,
          ".": new Map(Array.from(opts2.dependenciesByProjectId["."]?.entries() ?? []).filter(([alias]) => {
            return newCurrentLockfile.importers["."].specifiers[alias];
          }))
        },
        importerIds: projectIds,
        privateHoistedModulesDir: opts2.hoistedModulesDir,
        privateHoistPattern: opts2.hoistPattern ?? [],
        publicHoistedModulesDir: opts2.rootModulesDir,
        publicHoistPattern: opts2.publicHoistPattern ?? [],
        virtualStoreDir: opts2.virtualStoreDir,
        virtualStoreDirMaxLength: opts2.virtualStoreDirMaxLength,
        hoistedWorkspacePackages: opts2.hoistWorkspacePackages ? projects.reduce((hoistedWorkspacePackages, project) => {
          if (project.manifest.name && project.id !== ".") {
            hoistedWorkspacePackages[project.id] = {
              dir: project.rootDir,
              name: project.manifest.name
            };
          }
          return hoistedWorkspacePackages;
        }, {}) : void 0,
        skipped: opts2.skipped
      })
    };
  } else {
    newHoistedDependencies = opts2.hoistedDependencies;
  }
  let linkedToRoot = 0;
  if (opts2.symlink && !opts2.virtualStoreOnly) {
    const projectsToLink = Object.fromEntries(await Promise.all(projects.map(async ({ id, manifest, modulesDir, rootDir }) => {
      const deps = opts2.dependenciesByProjectId[id];
      const importerFromLockfile = newCurrentLockfile.importers[id];
      return [id, {
        dir: rootDir,
        modulesDir,
        dependencies: await Promise.all([
          ...Array.from(deps.entries()).filter(([rootAlias]) => importerFromLockfile.specifiers[rootAlias]).map(([rootAlias, depPath]) => ({ rootAlias, depGraphNode: depGraph[depPath] })).filter(({ depGraphNode }) => depGraphNode).map(async ({ rootAlias, depGraphNode }) => {
            const isDev = Boolean(manifest.devDependencies?.[depGraphNode.name]);
            const isOptional = Boolean(manifest.optionalDependencies?.[depGraphNode.name]);
            return {
              alias: rootAlias,
              name: depGraphNode.name,
              version: depGraphNode.version,
              dir: depGraphNode.dir,
              id: depGraphNode.id,
              dependencyType: isDev && "dev" || isOptional && "optional" || "prod",
              latest: opts2.outdatedDependencies[depGraphNode.id],
              isExternalLink: false
            };
          }),
          ...opts2.linkedDependenciesByProjectId[id].map(async (linkedDependency) => {
            const dir = resolvePath3(rootDir, linkedDependency.resolution.directory);
            return {
              alias: linkedDependency.alias,
              name: linkedDependency.name,
              version: linkedDependency.version,
              dir,
              id: linkedDependency.resolution.directory,
              dependencyType: linkedDependency.dev && "dev" || linkedDependency.optional && "optional" || "prod",
              isExternalLink: true
            };
          })
        ])
      }];
    })));
    linkedToRoot = await linkDirectDeps(projectsToLink, { dedupe: opts2.dedupeDirectDeps });
  }
  return {
    currentLockfile,
    newDepPaths,
    newHoistedDependencies,
    removedDepPaths,
    stats: {
      added,
      removed: removedDepPaths.size,
      linkedToRoot
    }
  };
}
function resolvePath3(where, spec) {
  if (isAbsolutePath3.test(spec))
    return spec;
  return path121.resolve(where, spec);
}
async function linkNewPackages(currentLockfile, wantedLockfile, depGraph, opts2) {
  const wantedRelDepPaths = difference_default(Object.keys(wantedLockfile.packages ?? {}), Array.from(opts2.skipped));
  let newDepPathsSet;
  if (opts2.force) {
    newDepPathsSet = new Set(wantedRelDepPaths.filter((depPath) => depGraph[depPath]));
  } else {
    newDepPathsSet = await selectNewFromWantedDeps(wantedRelDepPaths, currentLockfile, depGraph);
  }
  const added = newDepPathsSet.size;
  statsLogger.debug({
    added,
    prefix: opts2.lockfileDir
  });
  const existingWithUpdatedDeps = [];
  if (!opts2.force && currentLockfile.packages != null && wantedLockfile.packages != null) {
    for (const depPath of wantedRelDepPaths) {
      if (currentLockfile.packages[depPath] && (!equals_default(currentLockfile.packages[depPath].dependencies, wantedLockfile.packages[depPath].dependencies) || !isEmpty_default(currentLockfile.packages[depPath].optionalDependencies ?? {}) || !isEmpty_default(wantedLockfile.packages[depPath].optionalDependencies ?? {}))) {
        if (depGraph[depPath] && !newDepPathsSet.has(depPath)) {
          existingWithUpdatedDeps.push(depGraph[depPath]);
        }
      }
    }
  }
  if (!newDepPathsSet.size && existingWithUpdatedDeps.length === 0)
    return { newDepPaths: [], added };
  const newDepPaths = Array.from(newDepPathsSet);
  const newPkgs = props_default(newDepPaths, depGraph);
  await Promise.all(newPkgs.map(async (depNode) => fs68.mkdir(depNode.modules, { recursive: true })));
  await Promise.all([
    !opts2.symlink ? Promise.resolve() : linkAllModules2([...newPkgs, ...existingWithUpdatedDeps], depGraph, {
      lockfileDir: opts2.lockfileDir,
      optional: opts2.optional
    }),
    linkAllPkgs2(opts2.storeController, newPkgs, {
      allowBuild: opts2.allowBuild,
      depGraph,
      depsStateCache: opts2.depsStateCache,
      disableRelinkLocalDirDeps: opts2.disableRelinkLocalDirDeps,
      enableGlobalVirtualStore: opts2.enableGlobalVirtualStore,
      force: opts2.force,
      ignoreScripts: opts2.ignoreScripts,
      lockfileDir: opts2.lockfileDir,
      sideEffectsCacheRead: opts2.sideEffectsCacheRead,
      supportedArchitectures: opts2.supportedArchitectures
    })
  ]);
  return { newDepPaths, added };
}
async function selectNewFromWantedDeps(wantedRelDepPaths, currentLockfile, depGraph) {
  const newDeps = /* @__PURE__ */ new Set();
  const prevDeps = currentLockfile.packages ?? {};
  await Promise.all(wantedRelDepPaths.map(async (depPath) => {
    const depNode = depGraph[depPath];
    if (!depNode)
      return;
    const prevDep = prevDeps[depPath];
    if (prevDep && // Local file should always be treated as a new dependency
    // https://github.com/pnpm/pnpm/issues/5381
    depNode.resolution.type !== "directory" && depNode.resolution.integrity === prevDep.resolution.integrity) {
      if (await pathExists2(depNode.dir)) {
        return;
      }
      brokenModulesLogger2.debug({
        missing: depNode.dir
      });
    }
    newDeps.add(depPath);
  }));
  return newDeps;
}
async function linkAllPkgs2(storeController, depNodes, opts2) {
  const nodeVersion = findRuntimeNodeVersion(Object.keys(opts2.depGraph));
  await Promise.all(depNodes.map(async (depNode) => {
    const { files } = await depNode.fetching();
    depNode.requiresBuild = files.requiresBuild;
    let sideEffectsCacheKey;
    if (opts2.sideEffectsCacheRead && files.sideEffectsMaps && !isEmpty_default(files.sideEffectsMaps)) {
      if (opts2.allowBuild?.(depNode.name, depNode.version) === true) {
        sideEffectsCacheKey = calcDepState(opts2.depGraph, opts2.depsStateCache, depNode.depPath, {
          includeDepGraphHash: !opts2.ignoreScripts && depNode.requiresBuild,
          // true when is built
          patchFileHash: depNode.patch?.hash,
          supportedArchitectures: opts2.supportedArchitectures,
          nodeVersion
        });
      }
    }
    const { importMethod, isBuilt } = await storeController.importPackage(depNode.dir, {
      disableRelinkLocalDirDeps: opts2.disableRelinkLocalDirDeps,
      filesResponse: files,
      force: opts2.force,
      safeToSkip: opts2.enableGlobalVirtualStore,
      sideEffectsCacheKey,
      requiresBuild: depNode.patch != null || depNode.requiresBuild
    });
    if (importMethod) {
      progressLogger.debug({
        method: importMethod,
        requester: opts2.lockfileDir,
        status: "imported",
        to: depNode.dir
      });
    }
    depNode.isBuilt = isBuilt;
    const selfDep = depNode.children[depNode.name];
    if (selfDep) {
      const pkg = opts2.depGraph[selfDep];
      if (!pkg || !pkg.installable && pkg.optional)
        return;
      const targetModulesDir = path121.join(depNode.modules, depNode.name, "node_modules");
      await limitLinking4(async () => symlinkDependency(pkg.dir, targetModulesDir, depNode.name));
    }
  }));
}
async function linkAllModules2(depNodes, depGraph, opts2) {
  await symlinkAllModules({
    deps: depNodes.map((depNode) => {
      const children = opts2.optional ? depNode.children : pickBy_default((_, childAlias) => !depNode.optionalDependencies.has(childAlias), depNode.children);
      const childrenPaths = {};
      for (const [alias, childDepPath] of Object.entries(children ?? {})) {
        if (childDepPath.startsWith("link:")) {
          childrenPaths[alias] = path121.resolve(opts2.lockfileDir, childDepPath.slice(5));
        } else {
          const pkg = depGraph[childDepPath];
          if (!pkg || !pkg.installable && pkg.optional || alias === depNode.name)
            continue;
          childrenPaths[alias] = pkg.dir;
        }
      }
      return {
        children: childrenPaths,
        modules: depNode.modules,
        name: depNode.name
      };
    })
  });
}
var brokenModulesLogger2, isAbsolutePath3, limitLinking4;
var init_link = __esm({
  "../installing/deps-installer/lib/install/link.js"() {
    "use strict";
    init_lib6();
    init_lib72();
    init_lib112();
    init_lib113();
    init_lib114();
    init_lib116();
    init_lib115();
    init_lib3();
    init_lib4();
    init_p_limit();
    init_path_exists();
    init_es();
    brokenModulesLogger2 = logger("_broken_node_modules");
    isAbsolutePath3 = /^\/|^[A-Z]:/i;
    limitLinking4 = pLimit(16);
  }
});

// ../installing/deps-installer/lib/install/reportPeerDependencyIssues.js
function reportPeerDependencyIssues(peerDependencyIssuesByProjects, opts2) {
  const newPeerDependencyIssuesByProjects = filterPeerDependencyIssues(peerDependencyIssuesByProjects, opts2.rules);
  if (Object.values(newPeerDependencyIssuesByProjects).every((peerIssuesOfProject) => isEmpty_default(peerIssuesOfProject.bad) && (isEmpty_default(peerIssuesOfProject.missing) || peerIssuesOfProject.conflicts.length === 0 && Object.keys(peerIssuesOfProject.intersections).length === 0)))
    return;
  if (opts2.strictPeerDependencies) {
    throw new PeerDependencyIssuesError(newPeerDependencyIssuesByProjects);
  }
  peerDependencyIssuesLogger.debug({
    issuesByProjects: newPeerDependencyIssuesByProjects
  });
}
function filterPeerDependencyIssues(peerDependencyIssuesByProjects, rules) {
  if (!rules)
    return peerDependencyIssuesByProjects;
  const ignoreMissingPatterns = [...new Set(rules?.ignoreMissing ?? [])];
  const ignoreMissingMatcher = createMatcher(ignoreMissingPatterns);
  const allowAnyPatterns = [...new Set(rules?.allowAny ?? [])];
  const allowAnyMatcher = createMatcher(allowAnyPatterns);
  const { allowedVersionsMatchAll, allowedVersionsByParentPkgName } = parseAllowedVersions(rules?.allowedVersions ?? {});
  const newPeerDependencyIssuesByProjects = {};
  for (const [projectId, { bad, missing, conflicts, intersections }] of Object.entries(peerDependencyIssuesByProjects)) {
    newPeerDependencyIssuesByProjects[projectId] = { bad: {}, missing: {}, conflicts, intersections };
    for (const [peerName, issues] of Object.entries(missing)) {
      if (ignoreMissingMatcher(peerName) || issues.every(({ optional }) => optional)) {
        continue;
      }
      newPeerDependencyIssuesByProjects[projectId].missing[peerName] = issues;
    }
    for (const [peerName, issues] of Object.entries(bad)) {
      if (allowAnyMatcher(peerName))
        continue;
      const filteredIssues = [];
      for (const issue of issues) {
        if (allowedVersionsMatchAll[peerName]?.some((range) => import_semver36.default.satisfies(issue.foundVersion, range)))
          continue;
        const currentParentPkg = issue.parents.at(-1);
        if (currentParentPkg && allowedVersionsByParentPkgName[peerName]?.[currentParentPkg.name]) {
          const allowedVersionsByParent = {};
          for (const { targetPkg, parentPkg, ranges } of allowedVersionsByParentPkgName[peerName][currentParentPkg.name]) {
            if (!parentPkg.bareSpecifier || currentParentPkg.version && (isSubRange(parentPkg.bareSpecifier, currentParentPkg.version) || import_semver36.default.satisfies(currentParentPkg.version, parentPkg.bareSpecifier))) {
              allowedVersionsByParent[targetPkg.name] = ranges;
            }
          }
          if (allowedVersionsByParent[peerName]?.some((range) => import_semver36.default.satisfies(issue.foundVersion, range)))
            continue;
        }
        filteredIssues.push(issue);
      }
      if (filteredIssues.length) {
        newPeerDependencyIssuesByProjects[projectId].bad[peerName] = filteredIssues;
      }
    }
  }
  return newPeerDependencyIssuesByProjects;
}
function isSubRange(superRange, subRange) {
  return !superRange || subRange === superRange || import_semver36.default.validRange(subRange) != null && import_semver36.default.validRange(superRange) != null && import_semver36.default.subset(subRange, superRange);
}
function tryParseAllowedVersions(allowedVersions) {
  try {
    return parseOverrides(allowedVersions ?? {});
  } catch (err) {
    throw new PnpmError("INVALID_ALLOWED_VERSION_SELECTOR", `${err.message} in pnpm.peerDependencyRules.allowedVersions`);
  }
}
function parseAllowedVersions(allowedVersions) {
  const overrides = tryParseAllowedVersions(allowedVersions);
  const allowedVersionsMatchAll = {};
  const allowedVersionsByParentPkgName = {};
  for (const { parentPkg, targetPkg, newBareSpecifier } of overrides) {
    const ranges = parseVersions(newBareSpecifier);
    if (!parentPkg) {
      allowedVersionsMatchAll[targetPkg.name] = ranges;
      continue;
    }
    if (!allowedVersionsByParentPkgName[targetPkg.name]) {
      allowedVersionsByParentPkgName[targetPkg.name] = {};
    }
    if (!allowedVersionsByParentPkgName[targetPkg.name][parentPkg.name]) {
      allowedVersionsByParentPkgName[targetPkg.name][parentPkg.name] = [];
    }
    allowedVersionsByParentPkgName[targetPkg.name][parentPkg.name].push({
      parentPkg,
      targetPkg,
      ranges
    });
  }
  return {
    allowedVersionsMatchAll,
    allowedVersionsByParentPkgName
  };
}
function parseVersions(versions) {
  return versions.split("||").map((v) => v.trim());
}
var import_semver36, PeerDependencyIssuesError;
var init_reportPeerDependencyIssues = __esm({
  "../installing/deps-installer/lib/install/reportPeerDependencyIssues.js"() {
    "use strict";
    init_lib14();
    init_lib97();
    init_lib6();
    init_lib2();
    init_es();
    import_semver36 = __toESM(require_semver2(), 1);
    PeerDependencyIssuesError = class extends PnpmError {
      issuesByProjects;
      constructor(issues) {
        super("PEER_DEP_ISSUES", "Unmet peer dependencies");
        this.issuesByProjects = issues;
      }
    };
  }
});

// ../installing/deps-installer/lib/install/checkCompatibility/BreakingChangeError.js
var BreakingChangeError;
var init_BreakingChangeError = __esm({
  "../installing/deps-installer/lib/install/checkCompatibility/BreakingChangeError.js"() {
    "use strict";
    init_lib2();
    BreakingChangeError = class extends PnpmError {
      relatedIssue;
      relatedPR;
      additionalInformation;
      constructor(opts2) {
        super(opts2.code, opts2.message);
        this.relatedIssue = opts2.relatedIssue;
        this.relatedPR = opts2.relatedPR;
        this.additionalInformation = opts2.additionalInformation;
      }
    };
  }
});

// ../installing/deps-installer/lib/install/checkCompatibility/ModulesBreakingChangeError.js
var ModulesBreakingChangeError;
var init_ModulesBreakingChangeError = __esm({
  "../installing/deps-installer/lib/install/checkCompatibility/ModulesBreakingChangeError.js"() {
    "use strict";
    init_BreakingChangeError();
    ModulesBreakingChangeError = class extends BreakingChangeError {
      modulesPath;
      constructor(opts2) {
        super({
          additionalInformation: opts2.additionalInformation,
          code: "MODULES_BREAKING_CHANGE",
          message: `The node_modules structure at "${opts2.modulesPath}" is not compatible with the current pnpm version. Run "pnpm install --force" to recreate node_modules.`,
          relatedIssue: opts2.relatedIssue,
          relatedPR: opts2.relatedPR
        });
        this.modulesPath = opts2.modulesPath;
      }
    };
  }
});

// ../installing/deps-installer/lib/install/checkCompatibility/UnexpectedStoreError.js
var UnexpectedStoreError;
var init_UnexpectedStoreError = __esm({
  "../installing/deps-installer/lib/install/checkCompatibility/UnexpectedStoreError.js"() {
    "use strict";
    init_lib2();
    UnexpectedStoreError = class extends PnpmError {
      expectedStorePath;
      actualStorePath;
      modulesDir;
      constructor(opts2) {
        super("UNEXPECTED_STORE", "Unexpected store location");
        this.expectedStorePath = opts2.expectedStorePath;
        this.actualStorePath = opts2.actualStorePath;
        this.modulesDir = opts2.modulesDir;
      }
    };
  }
});

// ../installing/deps-installer/lib/install/checkCompatibility/UnexpectedVirtualStoreDirError.js
var UnexpectedVirtualStoreDirError;
var init_UnexpectedVirtualStoreDirError = __esm({
  "../installing/deps-installer/lib/install/checkCompatibility/UnexpectedVirtualStoreDirError.js"() {
    "use strict";
    init_lib2();
    UnexpectedVirtualStoreDirError = class extends PnpmError {
      expected;
      actual;
      modulesDir;
      constructor(opts2) {
        super("UNEXPECTED_VIRTUAL_STORE", "Unexpected virtual store location");
        this.expected = opts2.expected;
        this.actual = opts2.actual;
        this.modulesDir = opts2.modulesDir;
      }
    };
  }
});

// ../installing/deps-installer/lib/install/checkCompatibility/index.js
import path122 from "node:path";
function checkCompatibility(modules, opts2) {
  if (!modules.layoutVersion || modules.layoutVersion !== LAYOUT_VERSION) {
    throw new ModulesBreakingChangeError({
      modulesPath: opts2.modulesDir
    });
  }
  if (!modules.storeDir || path122.relative(modules.storeDir, opts2.storeDir) !== "" && path122.relative(modules.storeDir, path122.join(opts2.storeDir, "../v3")) !== "") {
    throw new UnexpectedStoreError({
      actualStorePath: opts2.storeDir,
      expectedStorePath: modules.storeDir,
      modulesDir: opts2.modulesDir
    });
  }
  if (modules.virtualStoreDir && path122.relative(modules.virtualStoreDir, opts2.virtualStoreDir) !== "") {
    throw new UnexpectedVirtualStoreDirError({
      actual: opts2.virtualStoreDir,
      expected: modules.virtualStoreDir,
      modulesDir: opts2.modulesDir
    });
  }
}
var init_checkCompatibility = __esm({
  "../installing/deps-installer/lib/install/checkCompatibility/index.js"() {
    "use strict";
    init_lib();
    init_ModulesBreakingChangeError();
    init_UnexpectedStoreError();
    init_UnexpectedVirtualStoreDirError();
  }
});

// ../installing/deps-installer/lib/install/validateModules.js
import { promises as fs69 } from "node:fs";
import path123 from "node:path";
async function validateModules(modules, projects, opts2) {
  const rootProject = projects.find(({ id }) => id === ".");
  if (opts2.virtualStoreDirMaxLength !== modules.virtualStoreDirMaxLength) {
    if (opts2.forceNewModules && rootProject != null) {
      await purgeModulesDirsOfImporter(opts2, rootProject);
      return { purged: true };
    }
    throw new PnpmError("VIRTUAL_STORE_DIR_MAX_LENGTH_DIFF", 'This modules directory was created using a different virtual-store-dir-max-length value. Run "pnpm install" to recreate the modules directory.');
  }
  if (!modules.virtualStoreOnly && !equals_default(modules.publicHoistPattern ?? [], opts2.publicHoistPattern ?? [])) {
    if (opts2.forceNewModules && rootProject != null) {
      await purgeModulesDirsOfImporter(opts2, rootProject);
      return { purged: true };
    }
    throw new PnpmError("PUBLIC_HOIST_PATTERN_DIFF", 'This modules directory was created using a different public-hoist-pattern value. Run "pnpm install" to recreate the modules directory.');
  }
  const importersToPurge = [];
  if (!modules.virtualStoreOnly && rootProject != null) {
    try {
      if (!equals_default(opts2.currentHoistPattern ?? [], opts2.hoistPattern ?? [])) {
        throw new PnpmError("HOIST_PATTERN_DIFF", 'This modules directory was created using a different hoist-pattern value. Run "pnpm install" to recreate the modules directory.');
      }
    } catch (err) {
      if (!opts2.forceNewModules)
        throw err;
      importersToPurge.push(rootProject);
    }
  }
  for (const project of projects) {
    try {
      checkCompatibility(modules, {
        modulesDir: project.modulesDir,
        storeDir: opts2.storeDir,
        virtualStoreDir: opts2.virtualStoreDir
      });
      if (opts2.lockfileDir !== project.rootDir && opts2.include != null && modules.included) {
        for (const depsField of DEPENDENCIES_FIELDS) {
          if (opts2.include[depsField] !== modules.included[depsField]) {
            throw new PnpmError("INCLUDED_DEPS_CONFLICT", `modules directory (at "${opts2.lockfileDir}") was installed with ${stringifyIncludedDeps(modules.included)}. Current install wants ${stringifyIncludedDeps(opts2.include)}.`);
          }
        }
      }
    } catch (err) {
      if (!opts2.forceNewModules)
        throw err;
      importersToPurge.push(project);
    }
  }
  if (importersToPurge.length > 0 && rootProject == null) {
    importersToPurge.push({
      modulesDir: pathAbsolute(opts2.modulesDir, opts2.lockfileDir),
      rootDir: opts2.lockfileDir
    });
  }
  const purged = importersToPurge.length > 0;
  if (purged) {
    await purgeModulesDirsOfImporters(opts2, importersToPurge);
  }
  return { purged };
}
async function purgeModulesDirsOfImporter(opts2, importer) {
  return purgeModulesDirsOfImporters(opts2, [importer]);
}
async function purgeModulesDirsOfImporters(opts2, importers) {
  if (opts2.confirmModulesPurge ?? true) {
    if (!process.stdin.isTTY) {
      throw new PnpmError("ABORTED_REMOVE_MODULES_DIR_NO_TTY", "Aborted removal of modules directory due to no TTY", {
        hint: 'If you are running pnpm in CI, set the CI environment variable to "true", or set "confirmModulesPurge" to "false".'
      });
    }
    const confirmed = await import_enquirer2.default.prompt({
      type: "confirm",
      name: "question",
      message: importers.length === 1 ? `The modules directory at "${importers[0].modulesDir}" will be removed and reinstalled from scratch. Proceed?` : "The modules directories will be removed and reinstalled from scratch. Proceed?",
      initial: true
    });
    if (!confirmed.question) {
      throw new PnpmError("ABORTED_REMOVE_MODULES_DIR", "Aborted removal of modules directory");
    }
  }
  await Promise.all(importers.map(async (importer) => {
    logger.info({
      message: `Recreating ${importer.modulesDir}`,
      prefix: importer.rootDir
    });
    try {
      await removeContentsOfDir2(importer.modulesDir, opts2.virtualStoreDir);
    } catch (err) {
      if (err.code !== "ENOENT")
        throw err;
    }
  }));
}
async function removeContentsOfDir2(dir, virtualStoreDir) {
  const items = await fs69.readdir(dir);
  await Promise.all(items.map(async (item) => {
    if (item[0] === "." && item !== ".bin" && item !== ".modules.yaml" && !dirsAreEqual2(path123.join(dir, item), virtualStoreDir)) {
      return;
    }
    await rimraf(path123.join(dir, item));
  }));
}
function dirsAreEqual2(dir1, dir2) {
  return path123.relative(dir1, dir2) === "";
}
function stringifyIncludedDeps(included) {
  return DEPENDENCIES_FIELDS.filter((depsField) => included[depsField]).join(", ");
}
var import_enquirer2;
var init_validateModules = __esm({
  "../installing/deps-installer/lib/install/validateModules.js"() {
    "use strict";
    init_lib2();
    init_lib3();
    init_lib8();
    init_rimraf();
    import_enquirer2 = __toESM(require_enquirer(), 1);
    init_path_absolute();
    init_es();
    init_checkCompatibility();
  }
});

// ../installing/deps-installer/lib/install/verifyLockfileResolutionsCache.js
import fs70 from "node:fs";
import path124 from "node:path";
import util35 from "node:util";
function readCache(cacheDir) {
  const cacheFilePath = path124.join(cacheDir, CACHE_FILE_NAME);
  let contents;
  try {
    contents = fs70.readFileSync(cacheFilePath, "utf8");
  } catch (err) {
    if (isNodeError(err) && err.code === "ENOENT")
      return { byHash: /* @__PURE__ */ new Map(), byPath: /* @__PURE__ */ new Map() };
    throw err;
  }
  const byHash = /* @__PURE__ */ new Map();
  const byPath = /* @__PURE__ */ new Map();
  for (const line of contents.split("\n")) {
    if (!line)
      continue;
    try {
      const parsed = JSON.parse(line);
      const hash2 = parsed?.lockfile?.hash;
      const lockfilePath = parsed?.lockfile?.path;
      if (typeof hash2 !== "string" || typeof lockfilePath !== "string")
        continue;
      const record = normalizeRecord(parsed);
      byHash.set(hash2, record);
      byPath.set(lockfilePath, record);
    } catch {
    }
  }
  return { byHash, byPath };
}
function normalizeRecord(parsed) {
  const lockfile = parsed.lockfile ?? {};
  return {
    lockfile: {
      hash: lockfile.hash ?? "",
      path: lockfile.path ?? "",
      size: lockfile.size ?? -1,
      mtimeNs: lockfile.mtimeNs ?? "",
      inode: lockfile.inode ?? ""
    },
    verifiedAt: parsed.verifiedAt ?? "",
    policy: parsed.policy && typeof parsed.policy === "object" ? parsed.policy : {}
  };
}
function statLockfile(lockfilePath) {
  try {
    const stat2 = fs70.statSync(lockfilePath, { bigint: true });
    return {
      size: Number(stat2.size),
      mtimeNs: stat2.mtimeNs.toString(),
      inode: stat2.ino.toString()
    };
  } catch (err) {
    if (isNodeError(err) && err.code === "ENOENT")
      return null;
    throw err;
  }
}
function statMatches(stat2, lockfile) {
  return stat2.size === lockfile.size && stat2.mtimeNs === lockfile.mtimeNs && stat2.inode === lockfile.inode;
}
function tryLockfileVerificationCache(cacheDir, key) {
  let indexes;
  try {
    indexes = readCache(cacheDir);
  } catch (err) {
    logger.debug({ msg: "lockfile-verified cache: read failed", err });
    return { hit: false, precomputed: {} };
  }
  const stat2 = statLockfile(key.lockfilePath);
  if (!stat2)
    return { hit: false, precomputed: {} };
  const byPathRecord = indexes.byPath.get(key.lockfilePath);
  if (byPathRecord && statMatches(stat2, byPathRecord.lockfile)) {
    return {
      hit: everyVerifierTrustsCachedRun(byPathRecord, key.verifiers),
      // The stat-match implies the file content is unchanged since the
      // cached record was written, so its hash is still correct. Pass
      // it through to skip hashing on the miss-then-record path.
      precomputed: { stat: stat2, hash: byPathRecord.lockfile.hash }
    };
  }
  let hash2;
  try {
    hash2 = key.hashLockfile();
  } catch (err) {
    logger.debug({ msg: "lockfile-verified cache: lockfile hash failed", err });
    return { hit: false, precomputed: { stat: stat2 } };
  }
  const byHashRecord = indexes.byHash.get(hash2);
  if (!byHashRecord)
    return { hit: false, precomputed: { stat: stat2, hash: hash2 } };
  if (!everyVerifierTrustsCachedRun(byHashRecord, key.verifiers)) {
    return { hit: false, precomputed: { stat: stat2, hash: hash2 } };
  }
  appendRecord(cacheDir, {
    ...byHashRecord,
    lockfile: { ...byHashRecord.lockfile, path: key.lockfilePath, size: stat2.size, mtimeNs: stat2.mtimeNs, inode: stat2.inode }
  });
  return { hit: true, precomputed: { stat: stat2, hash: hash2 } };
}
function everyVerifierTrustsCachedRun(record, verifiers) {
  for (const verifier of verifiers) {
    if (!verifier.canTrustPastCheck(record.policy))
      return false;
  }
  return true;
}
function mergePolicies(verifiers) {
  const merged = {};
  for (const verifier of verifiers) {
    Object.assign(merged, verifier.policy);
  }
  return merged;
}
function recordVerification(cacheDir, key, precomputed) {
  let stat2;
  let hash2;
  try {
    stat2 = precomputed?.stat ?? statLockfile(key.lockfilePath);
    if (!stat2)
      return;
    hash2 = precomputed?.hash ?? key.hashLockfile();
  } catch (err) {
    logger.debug({ msg: "lockfile-verified cache: could not record verification", err });
    return;
  }
  const record = {
    lockfile: {
      hash: hash2,
      path: key.lockfilePath,
      size: stat2.size,
      mtimeNs: stat2.mtimeNs,
      inode: stat2.inode
    },
    verifiedAt: (/* @__PURE__ */ new Date()).toISOString(),
    policy: mergePolicies(key.verifiers)
  };
  appendRecord(cacheDir, record);
}
function appendRecord(cacheDir, record) {
  const cacheFilePath = path124.join(cacheDir, CACHE_FILE_NAME);
  const line = `${JSON.stringify(record)}
`;
  try {
    fs70.mkdirSync(cacheDir, { recursive: true });
    fs70.appendFileSync(cacheFilePath, line);
  } catch (err) {
    logger.debug({ msg: "lockfile-verified cache: append failed", err });
    return;
  }
  maybeCompactCache(cacheDir);
}
function maybeCompactCache(cacheDir) {
  const cacheFilePath = path124.join(cacheDir, CACHE_FILE_NAME);
  let size;
  try {
    size = fs70.statSync(cacheFilePath).size;
  } catch (err) {
    if (isNodeError(err) && err.code === "ENOENT")
      return;
    logger.debug({ msg: "lockfile-verified cache: stat for compaction failed", err });
    return;
  }
  if (size <= COMPACT_TRIGGER_BYTES)
    return;
  let contents;
  try {
    contents = fs70.readFileSync(cacheFilePath, "utf8");
  } catch (err) {
    if (isNodeError(err) && err.code === "ENOENT")
      return;
    logger.debug({ msg: "lockfile-verified cache: read for compaction failed", err });
    return;
  }
  const lines = contents.split("\n").filter(Boolean);
  const seen = /* @__PURE__ */ new Set();
  const reversed = [];
  for (let i2 = lines.length - 1; i2 >= 0; i2--) {
    const line = lines[i2];
    try {
      const parsed = JSON.parse(line);
      const lockfilePath = parsed?.lockfile?.path;
      const hash2 = parsed?.lockfile?.hash;
      if (typeof lockfilePath !== "string" || typeof hash2 !== "string")
        continue;
      const tupleKey = `${lockfilePath}\0${hash2}`;
      if (seen.has(tupleKey))
        continue;
      seen.add(tupleKey);
      reversed.push(line);
    } catch {
    }
  }
  reversed.reverse();
  const kept = reversed.slice(-MAX_CACHE_ENTRIES);
  try {
    const tmpPath = `${cacheFilePath}.${process.pid}.tmp`;
    fs70.writeFileSync(tmpPath, kept.map((line) => `${line}
`).join(""));
    fs70.renameSync(tmpPath, cacheFilePath);
  } catch (err) {
    logger.debug({ msg: "lockfile-verified cache: compaction failed", err });
  }
}
function isNodeError(err) {
  return util35.types.isNativeError(err) && "code" in err;
}
var CACHE_FILE_NAME, MAX_CACHE_ENTRIES, COMPACT_TRIGGER_BYTES;
var init_verifyLockfileResolutionsCache = __esm({
  "../installing/deps-installer/lib/install/verifyLockfileResolutionsCache.js"() {
    "use strict";
    init_lib3();
    CACHE_FILE_NAME = "lockfile-verified.jsonl";
    MAX_CACHE_ENTRIES = 1e3;
    COMPACT_TRIGGER_BYTES = MAX_CACHE_ENTRIES * 1024 * 3 / 2;
  }
});

// ../installing/deps-installer/lib/install/verifyLockfileResolutions.js
async function verifyLockfileResolutions(lockfile, verifiers, options) {
  if (verifiers.length === 0)
    return;
  if (!lockfile.packages)
    return;
  const cache = options?.cacheDir && options?.lockfilePath ? { cacheDir: options.cacheDir, lockfilePath: options.lockfilePath } : void 0;
  let cachePrecomputed;
  let cachedHash;
  const hashLockfile = () => {
    if (cachedHash == null)
      cachedHash = hashObject(lockfile);
    return cachedHash;
  };
  if (cache) {
    const result2 = tryLockfileVerificationCache(cache.cacheDir, {
      lockfilePath: cache.lockfilePath,
      verifiers,
      hashLockfile
    });
    if (result2.hit)
      return;
    cachePrecomputed = result2.precomputed;
  }
  const candidates = collectCandidates(lockfile);
  if (candidates.size === 0) {
    if (cache) {
      recordVerification(cache.cacheDir, {
        lockfilePath: cache.lockfilePath,
        verifiers,
        hashLockfile
      }, cachePrecomputed);
    }
    return;
  }
  const startedAt = Date.now();
  lockfileVerificationLogger.debug({
    status: "started",
    entries: candidates.size,
    lockfilePath: options?.lockfilePath
  });
  let terminalStatus = "failed";
  try {
    const violations = await iterateLockfileViolations(candidates, verifiers, options?.concurrency);
    if (violations.length === 0) {
      terminalStatus = "done";
      if (cache) {
        recordVerification(cache.cacheDir, {
          lockfilePath: cache.lockfilePath,
          verifiers,
          hashLockfile
        }, cachePrecomputed);
      }
      return;
    }
    throw buildVerificationError(violations);
  } finally {
    lockfileVerificationLogger.debug({
      status: terminalStatus,
      entries: candidates.size,
      elapsedMs: Date.now() - startedAt,
      lockfilePath: options?.lockfilePath
    });
  }
}
function buildVerificationError(violations) {
  violations.sort((a2, b) => `${a2.name}@${a2.version}`.localeCompare(`${b.name}@${b.version}`));
  const distinctCodes = new Set(violations.map((v) => v.code));
  const isMixed = distinctCodes.size > 1;
  const errorCode = isMixed ? "LOCKFILE_RESOLUTION_VERIFICATION" : violations[0].code;
  const visible = violations.slice(0, MAX_VIOLATIONS_TO_PRINT);
  const omitted = violations.length - visible.length;
  const formatEntry = isMixed ? (v) => `  ${v.name}@${v.version} [${v.code}] ${v.reason}` : (v) => `  ${v.name}@${v.version} ${v.reason}`;
  const breakdown = visible.map(formatEntry).join("\n");
  const details = omitted > 0 ? `${breakdown}
  \u2026and ${omitted} more` : breakdown;
  return new PnpmError(errorCode, `${violations.length} lockfile entries failed verification:
${details}`, {
    hint: 'The lockfile contains entries that the active policies reject. This can mean the lockfile is stale, or that someone committed a lockfile that bypassed the policy locally \u2014 inspect recent changes to pnpm-lock.yaml before trusting it. If the changes look expected, run "pnpm clean --lockfile" and then "pnpm install" to rebuild from a fresh resolution. Alternatively, relax the policy that flagged them.'
  });
}
function collectCandidates(lockfile) {
  const candidates = /* @__PURE__ */ new Map();
  for (const [depPath, snapshot] of Object.entries(lockfile.packages ?? {})) {
    const { name, version: version2 } = nameVerFromPkgSnapshot(depPath, snapshot);
    if (!name || !version2)
      continue;
    const key = `${name}@${version2}@${JSON.stringify(snapshot.resolution)}`;
    candidates.set(key, {
      name,
      version: version2,
      resolution: snapshot.resolution
    });
  }
  return candidates;
}
async function iterateLockfileViolations(candidates, verifiers, concurrency) {
  const violations = [];
  const limit = pLimit(concurrency ?? DEFAULT_CONCURRENCY);
  await Promise.all(Array.from(candidates.values(), ({ name, version: version2, resolution }) => limit(async () => {
    for (const verifier of verifiers) {
      const result2 = await verifier.verify(resolution, { name, version: version2 });
      if (!result2.ok) {
        violations.push({ name, version: version2, resolution, code: result2.code, reason: result2.reason });
        break;
      }
    }
  })));
  return violations;
}
var MAX_VIOLATIONS_TO_PRINT, DEFAULT_CONCURRENCY;
var init_verifyLockfileResolutions = __esm({
  "../installing/deps-installer/lib/install/verifyLockfileResolutions.js"() {
    "use strict";
    init_lib6();
    init_lib67();
    init_lib2();
    init_lib70();
    init_p_limit();
    init_verifyLockfileResolutionsCache();
    MAX_VIOLATIONS_TO_PRINT = 20;
    DEFAULT_CONCURRENCY = 16;
  }
});

// ../installing/deps-installer/lib/install/recordLockfileVerified.js
function recordLockfileVerified(opts2) {
  if (!opts2.cacheDir)
    return;
  if (!opts2.resolutionVerifiers?.length)
    return;
  if (!opts2.lockfile.packages)
    return;
  recordVerification(opts2.cacheDir, {
    lockfilePath: opts2.lockfilePath,
    verifiers: opts2.resolutionVerifiers,
    hashLockfile: () => hashObject(opts2.lockfile)
  });
}
var init_recordLockfileVerified = __esm({
  "../installing/deps-installer/lib/install/recordLockfileVerified.js"() {
    "use strict";
    init_lib67();
    init_verifyLockfileResolutionsCache();
  }
});

// ../installing/deps-installer/lib/install/writeLockfilesAndRecordVerified.js
import path125 from "node:path";
async function writeLockfilesAndRecordVerified(opts2) {
  const cacheActive = opts2.cacheDir != null && (opts2.resolutionVerifiers?.length ?? 0) > 0;
  const wantedLockfileName = cacheActive ? await getWantedLockfileName({
    useGitBranchLockfile: opts2.useGitBranchLockfile,
    mergeGitBranchLockfiles: opts2.mergeGitBranchLockfiles
  }) : void 0;
  const written = await writeLockfiles({
    wantedLockfile: opts2.wantedLockfile,
    wantedLockfileDir: opts2.wantedLockfileDir,
    currentLockfile: opts2.currentLockfile,
    currentLockfileDir: opts2.currentLockfileDir,
    useGitBranchLockfile: opts2.useGitBranchLockfile,
    mergeGitBranchLockfiles: opts2.mergeGitBranchLockfiles,
    wantedLockfileName
  });
  if (cacheActive) {
    recordLockfileVerified({
      cacheDir: opts2.cacheDir,
      lockfilePath: path125.resolve(opts2.wantedLockfileDir, wantedLockfileName),
      lockfile: written.wantedLockfile,
      resolutionVerifiers: opts2.resolutionVerifiers
    });
  }
  return written;
}
var init_writeLockfilesAndRecordVerified = __esm({
  "../installing/deps-installer/lib/install/writeLockfilesAndRecordVerified.js"() {
    "use strict";
    init_lib78();
    init_recordLockfileVerified();
  }
});

// ../installing/deps-installer/lib/install/writeWantedLockfileAndRecordVerified.js
import path126 from "node:path";
async function writeWantedLockfileAndRecordVerified(opts2) {
  const cacheActive = opts2.cacheDir != null && (opts2.resolutionVerifiers?.length ?? 0) > 0;
  const lockfileName = cacheActive ? await getWantedLockfileName({
    useGitBranchLockfile: opts2.useGitBranchLockfile,
    mergeGitBranchLockfiles: opts2.mergeGitBranchLockfiles
  }) : void 0;
  const written = await writeWantedLockfile(opts2.lockfileDir, opts2.lockfile, {
    useGitBranchLockfile: opts2.useGitBranchLockfile,
    mergeGitBranchLockfiles: opts2.mergeGitBranchLockfiles,
    lockfileName
  });
  if (cacheActive) {
    recordLockfileVerified({
      cacheDir: opts2.cacheDir,
      lockfilePath: path126.resolve(opts2.lockfileDir, lockfileName),
      lockfile: written,
      resolutionVerifiers: opts2.resolutionVerifiers
    });
  }
  return written;
}
var init_writeWantedLockfileAndRecordVerified = __esm({
  "../installing/deps-installer/lib/install/writeWantedLockfileAndRecordVerified.js"() {
    "use strict";
    init_lib78();
    init_recordLockfileVerified();
  }
});

// ../agent/client/lib/fetchFromPnpmRegistry.js
import http from "node:http";
import https from "node:https";
import { URL as URL6 } from "node:url";
async function fetchFromPnpmRegistry(opts2) {
  const storeIntegrities = readStoreIntegrities(opts2.storeIndex);
  const projects = opts2.projects ?? [{
    dir: ".",
    dependencies: opts2.dependencies,
    devDependencies: opts2.devDependencies
  }];
  const requestBody = JSON.stringify({
    projects,
    overrides: opts2.overrides,
    nodeVersion: opts2.nodeVersion ?? process.version.slice(1),
    os: process.platform,
    arch: process.arch,
    minimumReleaseAge: opts2.minimumReleaseAge,
    lockfile: opts2.lockfile,
    storeIntegrities
  });
  const indexEntries = [];
  const workerPromises = [];
  let currentBatch = [];
  const dispatchBatch = () => {
    if (currentBatch.length === 0)
      return;
    const digests = currentBatch;
    currentBatch = [];
    workerPromises.push(fetchAndWriteCafsFiles({
      registryUrl: opts2.registryUrl,
      storeDir: opts2.storeDir,
      digests
    }));
  };
  return new Promise((resolve3, reject3) => {
    let resolved = false;
    let serverError;
    const handleLine = (line) => {
      if (line.length === 0)
        return;
      const tabIdx = line.indexOf("	");
      const type4 = line.charAt(0);
      if (type4 === "D") {
        const parts = line.split("	");
        currentBatch.push({
          digest: parts[1],
          size: parseInt(parts[2], 10),
          executable: parts[3] === "1"
        });
        if (currentBatch.length >= FILES_PER_WORKER) {
          dispatchBatch();
        }
      } else if (type4 === "L") {
        const payload = JSON.parse(line.substring(tabIdx + 1));
        dispatchBatch();
        resolved = true;
        resolve3({
          lockfile: payload.lockfile,
          stats: payload.stats,
          fileDownloads: streamComplete.then(() => Promise.all(workerPromises)).then(() => {
          }),
          indexEntries
        });
      } else if (type4 === "I") {
        const rest = line.substring(tabIdx + 1);
        const lastTab = rest.lastIndexOf("	");
        const key = rest.substring(0, lastTab);
        const buffer3 = new Uint8Array(Buffer.from(rest.substring(lastTab + 1), "base64"));
        indexEntries.push({ key, buffer: buffer3 });
      } else if (type4 === "E") {
        let message = "pnpm agent server error";
        try {
          const payload = JSON.parse(line.substring(tabIdx + 1));
          if (payload?.error)
            message = payload.error;
        } catch {
          message = line.substring(tabIdx + 1) || message;
        }
        serverError = new Error(message);
      }
    };
    const streamComplete = streamNdjsonRequest(opts2.registryUrl, "v1/install", requestBody, handleLine);
    streamComplete.then(() => {
      if (serverError) {
        reject3(serverError);
      } else if (!resolved) {
        reject3(new Error("pnpm agent server closed the stream without emitting a lockfile"));
      }
    }, reject3);
  });
}
function readStoreIntegrities(storeIndex) {
  const seen = /* @__PURE__ */ new Set();
  for (const key of storeIndex.keys()) {
    const tabIdx = key.indexOf("	");
    if (tabIdx === -1)
      continue;
    const integrity = key.slice(0, tabIdx);
    if (!isIntegrityLike(integrity))
      continue;
    seen.add(integrity);
  }
  return [...seen];
}
function isIntegrityLike(value) {
  return value.startsWith("sha512-") || value.startsWith("sha256-") || value.startsWith("sha1-");
}
async function streamNdjsonRequest(registryUrl, urlPath, body, onLine) {
  const base = registryUrl.endsWith("/") ? registryUrl : `${registryUrl}/`;
  const url7 = new URL6(urlPath, base);
  const isHttps = url7.protocol === "https:";
  const requestFn = isHttps ? https.request : http.request;
  return new Promise((resolve3, reject3) => {
    const req2 = requestFn(url7, {
      method: "POST",
      timeout: REQUEST_TIMEOUT,
      headers: {
        "Content-Type": "application/json",
        "Content-Length": Buffer.byteLength(body),
        "Accept": "application/x-ndjson"
      }
    }, (res) => {
      if (res.statusCode !== 200) {
        const chunks = [];
        res.on("data", (chunk) => chunks.push(chunk));
        res.on("end", () => {
          reject3(new Error(`pnpm agent responded with ${res.statusCode}: ${Buffer.concat(chunks).toString("utf-8")}`));
        });
        return;
      }
      let leftover = "";
      res.setEncoding("utf-8");
      res.on("data", (chunk) => {
        const data = leftover + chunk;
        const lines = data.split("\n");
        leftover = lines.pop() ?? "";
        for (const line of lines) {
          onLine(line);
        }
      });
      res.on("end", () => {
        if (leftover)
          onLine(leftover);
        resolve3();
      });
      res.on("error", reject3);
    });
    req2.on("timeout", () => {
      req2.destroy(new Error(`pnpm agent request timed out after ${REQUEST_TIMEOUT / 1e3}s (${registryUrl})`));
    });
    req2.on("error", (err) => {
      if (err.code === "ECONNREFUSED") {
        reject3(new Error(`Could not connect to pnpm agent at ${registryUrl}. Is the server running?`));
      } else {
        reject3(err);
      }
    });
    req2.write(body);
    req2.end();
  });
}
function writeRawIndexEntries(indexEntries, storeIndex) {
  const writes = indexEntries.filter(({ key }) => !storeIndex.has(key));
  if (writes.length > 0) {
    storeIndex.setRawMany(writes);
  }
}
var FILES_PER_WORKER, REQUEST_TIMEOUT;
var init_fetchFromPnpmRegistry = __esm({
  "../agent/client/lib/fetchFromPnpmRegistry.js"() {
    "use strict";
    init_lib16();
    init_lib4();
    FILES_PER_WORKER = 4e3;
    REQUEST_TIMEOUT = 6e5;
  }
});

// ../agent/client/lib/protocol.js
var init_protocol = __esm({
  "../agent/client/lib/protocol.js"() {
    "use strict";
  }
});

// ../agent/client/lib/index.js
var lib_exports6 = {};
__export(lib_exports6, {
  fetchFromPnpmRegistry: () => fetchFromPnpmRegistry,
  writeRawIndexEntries: () => writeRawIndexEntries
});
var init_lib123 = __esm({
  "../agent/client/lib/index.js"() {
    "use strict";
    init_fetchFromPnpmRegistry();
    init_protocol();
  }
});

// ../installing/deps-installer/lib/install/index.js
import path127 from "node:path";
async function install(manifest, opts2) {
  const rootDir = opts2.dir ?? process.cwd();
  if (opts2.agent) {
    return installFromPnpmRegistry(manifest, rootDir, opts2);
  }
  const { updatedCatalogs, updatedProjects: projects, ignoredBuilds, resolutionPolicyViolations } = await mutateModules([
    {
      mutation: "install",
      pruneDirectDependencies: opts2.pruneDirectDependencies,
      rootDir,
      update: opts2.update,
      updateMatching: opts2.updateMatching,
      updateToLatest: opts2.updateToLatest,
      updatePackageManifest: opts2.updatePackageManifest
    }
  ], {
    ...opts2,
    allProjects: [{
      buildIndex: 0,
      manifest,
      rootDir,
      binsDir: opts2.binsDir
    }]
  });
  return { updatedCatalogs, updatedManifest: projects[0].manifest, ignoredBuilds, resolutionPolicyViolations };
}
async function mutateModulesInSingleProject(project, maybeOpts) {
  const result2 = await mutateModules([
    {
      ...project,
      update: maybeOpts.update,
      updateToLatest: maybeOpts.updateToLatest,
      updateMatching: maybeOpts.updateMatching,
      updatePackageManifest: maybeOpts.updatePackageManifest
    }
  ], {
    ...maybeOpts,
    allProjects: [{
      buildIndex: 0,
      ...project
    }]
  });
  return {
    updatedCatalogs: result2.updatedCatalogs,
    updatedProject: result2.updatedProjects[0],
    ignoredBuilds: result2.ignoredBuilds,
    resolutionPolicyViolations: result2.resolutionPolicyViolations
  };
}
async function mutateModules(projects, maybeOpts) {
  const reporter = maybeOpts?.reporter;
  const detachReporter = reporter != null && typeof reporter === "function" ? () => {
    streamParser.removeListener("data", reporter);
  } : () => {
  };
  if (reporter != null && typeof reporter === "function") {
    streamParser.on("data", reporter);
  }
  const opts2 = extendOptions(maybeOpts);
  if (opts2.agent && canUseAgentForMutations(projects)) {
    const agentResult = await mutateModulesViaAgent(projects, opts2);
    if (agentResult)
      return agentResult;
  }
  const allowBuild = createAllowBuildFunction(opts2);
  if (!opts2.include.dependencies && opts2.include.optionalDependencies) {
    throw new PnpmError("OPTIONAL_DEPS_REQUIRE_PROD_DEPS", "Optional dependencies cannot be installed without production dependencies");
  }
  const installsOnly = allMutationsAreInstalls(projects);
  if (!installsOnly)
    opts2.strictPeerDependencies = false;
  const rootProjectManifest = opts2.allProjects.find(({ rootDir }) => rootDir === opts2.lockfileDir)?.manifest ?? // When running install/update on a subset of projects, the root project might not be included,
  // so reading its manifest explicitly here.
  await safeReadProjectManifestOnly(opts2.lockfileDir);
  let ctx = await getContext(opts2);
  if (!opts2.lockfileOnly && ctx.modulesFile != null) {
    const { purged } = await validateModules(ctx.modulesFile, Object.values(ctx.projects), {
      forceNewModules: installsOnly,
      include: opts2.include,
      lockfileDir: opts2.lockfileDir,
      modulesDir: opts2.modulesDir ?? "node_modules",
      registries: opts2.registries,
      storeDir: opts2.storeDir,
      virtualStoreDir: ctx.virtualStoreDir,
      virtualStoreDirMaxLength: opts2.virtualStoreDirMaxLength,
      confirmModulesPurge: opts2.confirmModulesPurge && !opts2.ci,
      hoistPattern: opts2.hoistPattern,
      currentHoistPattern: ctx.currentHoistPattern,
      publicHoistPattern: opts2.publicHoistPattern,
      currentPublicHoistPattern: ctx.currentPublicHoistPattern,
      global: opts2.global
    });
    if (purged) {
      ctx = await getContext(opts2);
    }
  }
  const willDelegateToPacquet = opts2.runPacquet != null && installsOnly && !opts2.lockfileOnly && !opts2.fixLockfile && !opts2.dedupe && !ctx.lockfileHadConflicts && ctx.existsNonEmptyWantedLockfile && (opts2.frozenLockfile === true || opts2.frozenLockfileIfExists === true);
  if (!willDelegateToPacquet && !opts2.trustLockfile) {
    const cacheActive = opts2.cacheDir != null && opts2.resolutionVerifiers.length > 0;
    const wantedLockfilePath = cacheActive ? path127.resolve(ctx.lockfileDir, await getWantedLockfileName({
      useGitBranchLockfile: opts2.useGitBranchLockfile,
      mergeGitBranchLockfiles: opts2.mergeGitBranchLockfiles
    })) : void 0;
    try {
      await verifyLockfileResolutions(ctx.wantedLockfile, opts2.resolutionVerifiers, {
        cacheDir: opts2.cacheDir,
        lockfilePath: wantedLockfilePath
      });
    } catch (err) {
      detachReporter();
      throw err;
    }
  }
  if (opts2.hooks.preResolution) {
    for (const preResolution of opts2.hooks.preResolution) {
      await preResolution({
        currentLockfile: ctx.currentLockfile,
        wantedLockfile: ctx.wantedLockfile,
        existsCurrentLockfile: ctx.existsCurrentLockfile,
        existsNonEmptyWantedLockfile: ctx.existsNonEmptyWantedLockfile,
        lockfileDir: ctx.lockfileDir,
        storeDir: ctx.storeDir,
        registries: ctx.registries
      });
    }
  }
  let forceResolutionFromHook = false;
  const shouldCheckCustomResolverForceResolve = opts2.hooks.customResolvers && ctx.existsNonEmptyWantedLockfile && !opts2.frozenLockfile && opts2.saveLockfile;
  if (shouldCheckCustomResolverForceResolve) {
    forceResolutionFromHook = await checkCustomResolverForceResolve(opts2.hooks.customResolvers, ctx.wantedLockfile);
  }
  const pruneVirtualStore = !opts2.enableGlobalVirtualStore && (ctx.modulesFile?.prunedAt && opts2.modulesCacheMaxAge > 0 ? cacheExpired(ctx.modulesFile.prunedAt, opts2.modulesCacheMaxAge) : true);
  if (!maybeOpts.ignorePackageManifest) {
    for (const { manifest, rootDir } of Object.values(ctx.projects)) {
      if (!manifest) {
        throw new Error(`No package.json found in "${rootDir}"`);
      }
    }
  }
  const result2 = await _install();
  if (global["verifiedFileIntegrity"] > 1e3) {
    globalInfo(`The integrity of ${global["verifiedFileIntegrity"]} files was checked. This might have caused installation to take longer.`);
  }
  if (opts2.mergeGitBranchLockfiles) {
    await cleanGitBranchLockfiles(ctx.lockfileDir);
  }
  let ignoredBuilds = result2.ignoredBuilds;
  if (!opts2.ignoreScripts && ignoredBuilds?.size) {
    ignoredBuilds = await runUnignoredDependencyBuilds(opts2, ignoredBuilds, allowBuild);
  }
  if (ctx.modulesFile?.allowBuilds && ctx.wantedLockfile.packages && Object.values(ctx.modulesFile.allowBuilds).some((v) => v === true)) {
    const oldAllowBuild = createAllowBuildFunction({ allowBuilds: ctx.modulesFile.allowBuilds });
    if (oldAllowBuild) {
      for (const depPath of Object.keys(ctx.wantedLockfile.packages)) {
        if (ignoredBuilds?.has(depPath))
          continue;
        const { name, version: version2 } = parse6(depPath);
        if (!name || !version2)
          continue;
        if (oldAllowBuild(name, version2) === true && allowBuild?.(name, version2) === void 0) {
          ignoredBuilds ??= /* @__PURE__ */ new Set();
          ignoredBuilds.add(depPath);
        }
      }
    }
  }
  ignoredScriptsLogger.debug({
    packageNames: ignoredBuilds ? dedupePackageNamesFromIgnoredBuilds(ignoredBuilds) : []
  });
  detachReporter();
  return {
    updatedCatalogs: result2.updatedCatalogs,
    updatedProjects: result2.updatedProjects,
    stats: result2.stats ?? { added: 0, removed: 0, linkedToRoot: 0 },
    depsRequiringBuild: result2.depsRequiringBuild,
    ignoredBuilds,
    resolutionPolicyViolations: result2.resolutionPolicyViolations ?? []
  };
  async function _install() {
    const scriptsOpts = {
      extraBinPaths: opts2.extraBinPaths,
      extraNodePaths: ctx.extraNodePaths,
      extraEnv: opts2.extraEnv,
      preferSymlinkedExecutables: opts2.preferSymlinkedExecutables,
      userAgent: opts2.userAgent,
      resolveSymlinksInInjectedDirs: opts2.resolveSymlinksInInjectedDirs,
      scriptsPrependNodePath: opts2.scriptsPrependNodePath,
      scriptShell: opts2.scriptShell,
      shellEmulator: opts2.shellEmulator,
      stdio: opts2.ownLifecycleHooksStdio,
      storeController: opts2.storeController,
      unsafePerm: opts2.unsafePerm || false
    };
    if (!opts2.ignoreScripts && !opts2.ignorePackageManifest && rootProjectManifest?.scripts?.[DEV_PREINSTALL]) {
      await runLifecycleHook(DEV_PREINSTALL, rootProjectManifest, {
        ...scriptsOpts,
        depPath: opts2.lockfileDir,
        pkgRoot: opts2.lockfileDir,
        rootModulesDir: ctx.rootModulesDir
      });
    }
    const packageExtensionsChecksum = hashObjectNullableWithPrefix(opts2.packageExtensions);
    const pnpmfileChecksum = await opts2.hooks.calculatePnpmfileChecksum?.();
    const patchedDependencies = opts2.ignorePackageManifest ? ctx.wantedLockfile.patchedDependencies : opts2.patchedDependencies ? await calcPatchHashes(opts2.patchedDependencies) : {};
    const patchGroupInput = opts2.patchedDependencies ? Object.fromEntries(Object.entries(patchedDependencies ?? {}).map(([key, hash2]) => {
      let patchFilePath = opts2.patchedDependencies[key] ? path127.resolve(opts2.lockfileDir, opts2.patchedDependencies[key]) : void 0;
      if (!patchFilePath) {
        const lastAt = key.lastIndexOf("@");
        const pkgName = lastAt > 0 ? key.slice(0, lastAt) : key;
        if (opts2.patchedDependencies[pkgName]) {
          patchFilePath = path127.resolve(opts2.lockfileDir, opts2.patchedDependencies[pkgName]);
        }
      }
      return [key, { hash: hash2, patchFilePath }];
    })) : patchedDependencies;
    const patchGroups = patchGroupInput ? groupPatchedDependencies(patchGroupInput) : void 0;
    const frozenLockfile = opts2.frozenLockfile || opts2.frozenLockfileIfExists && ctx.existsNonEmptyWantedLockfile;
    let outdatedLockfileSettings = false;
    const overridesMap = createOverridesMapFromParsed(opts2.parsedOverrides);
    if (!opts2.ignorePackageManifest) {
      const outdatedLockfileSettingName = getOutdatedLockfileSetting(ctx.wantedLockfile, {
        autoInstallPeers: opts2.autoInstallPeers,
        catalogs: opts2.catalogs,
        dedupePeers: opts2.dedupePeers || void 0,
        injectWorkspacePackages: opts2.injectWorkspacePackages,
        excludeLinksFromLockfile: opts2.excludeLinksFromLockfile,
        peersSuffixMaxLength: opts2.peersSuffixMaxLength,
        overrides: overridesMap,
        ignoredOptionalDependencies: opts2.ignoredOptionalDependencies?.sort(),
        packageExtensionsChecksum,
        patchedDependencies,
        pnpmfileChecksum
      });
      outdatedLockfileSettings = outdatedLockfileSettingName != null;
      if (frozenLockfile && outdatedLockfileSettings) {
        throw new LockfileConfigMismatchError(outdatedLockfileSettingName);
      }
    }
    const _isWantedDepBareSpecifierSame = isWantedDepBareSpecifierSame.bind(null, ctx.wantedLockfile.catalogs, opts2.catalogs);
    const upToDateLockfileMajorVersion = ctx.wantedLockfile.lockfileVersion.toString().startsWith(`${LOCKFILE_MAJOR_VERSION}.`);
    let needsFullResolution = outdatedLockfileSettings || opts2.fixLockfile || !upToDateLockfileMajorVersion || opts2.forceFullResolution || forceResolutionFromHook;
    if (needsFullResolution) {
      ctx.wantedLockfile.settings = {
        autoInstallPeers: opts2.autoInstallPeers,
        dedupePeers: opts2.dedupePeers || void 0,
        excludeLinksFromLockfile: opts2.excludeLinksFromLockfile,
        peersSuffixMaxLength: opts2.peersSuffixMaxLength,
        injectWorkspacePackages: opts2.injectWorkspacePackages
      };
      ctx.wantedLockfile.overrides = overridesMap;
      ctx.wantedLockfile.packageExtensionsChecksum = packageExtensionsChecksum;
      ctx.wantedLockfile.ignoredOptionalDependencies = opts2.ignoredOptionalDependencies;
      ctx.wantedLockfile.pnpmfileChecksum = pnpmfileChecksum;
      ctx.wantedLockfile.patchedDependencies = patchedDependencies;
    } else if (!frozenLockfile) {
      ctx.wantedLockfile.settings = {
        autoInstallPeers: opts2.autoInstallPeers,
        dedupePeers: opts2.dedupePeers || void 0,
        excludeLinksFromLockfile: opts2.excludeLinksFromLockfile,
        peersSuffixMaxLength: opts2.peersSuffixMaxLength,
        injectWorkspacePackages: opts2.injectWorkspacePackages
      };
    }
    const frozenInstallResult = await tryFrozenInstall({
      frozenLockfile,
      needsFullResolution,
      patchGroups,
      upToDateLockfileMajorVersion
    });
    if (frozenInstallResult !== null) {
      if ("needsFullResolution" in frozenInstallResult) {
        needsFullResolution = frozenInstallResult.needsFullResolution;
      } else {
        return frozenInstallResult;
      }
    }
    const projectsToInstall = [];
    let preferredSpecs = null;
    for (const project of projects) {
      const projectOpts = {
        ...project,
        ...ctx.projects[project.rootDir]
      };
      switch (project.mutation) {
        case "uninstallSome":
          projectsToInstall.push({
            pruneDirectDependencies: false,
            ...projectOpts,
            removePackages: project.dependencyNames,
            updatePackageManifest: true,
            wantedDependencies: []
          });
          break;
        case "install": {
          await installCase({
            ...projectOpts,
            updatePackageManifest: projectOpts.updatePackageManifest ?? projectOpts.update
          });
          break;
        }
        case "installSome": {
          await installSome({
            ...projectOpts,
            updatePackageManifest: projectOpts.updatePackageManifest !== false
          });
          break;
        }
      }
    }
    async function installCase(project) {
      const wantedDependencies = getWantedDependencies(project.manifest, {
        autoInstallPeers: opts2.autoInstallPeers,
        includeDirect: opts2.includeDirect
      }).map((wantedDependency) => ({ ...wantedDependency, updateSpec: true }));
      if (opts2.packageVulnerabilityAudit) {
        for (const dep of wantedDependencies) {
          let specifier = dep.bareSpecifier;
          const catalogName = specifier ? parseCatalogProtocol(specifier) : null;
          if (catalogName != null) {
            const catalogResult = resolveFromCatalog(opts2.catalogs, { alias: dep.alias, bareSpecifier: specifier });
            specifier = matchCatalogResolveResult(catalogResult, pickCatalogSpecifier);
          }
          const validVersion = import_semver37.default.valid(specifier);
          if (!validVersion)
            continue;
          if (opts2.packageVulnerabilityAudit.isVulnerable(dep.alias, validVersion)) {
            if (catalogName != null && opts2.catalogs?.[catalogName]) {
              opts2.catalogs = {
                ...opts2.catalogs,
                [catalogName]: {
                  ...opts2.catalogs[catalogName],
                  [dep.alias]: "^" + validVersion
                }
              };
              dep.prevSpecifier = specifier;
            } else {
              dep.bareSpecifier = "^" + validVersion;
            }
          }
        }
      }
      if (ctx.wantedLockfile?.importers) {
        forgetResolutionsOfPrevWantedDeps(ctx.wantedLockfile.importers[project.id], wantedDependencies, _isWantedDepBareSpecifierSame);
      }
      if (opts2.ignoreScripts && project.manifest?.scripts && (project.manifest.scripts.preinstall != null || project.manifest.scripts.install != null || project.manifest.scripts.postinstall != null || project.manifest.scripts.prepare)) {
        ctx.pendingBuilds.push(project.id);
      }
      projectsToInstall.push({
        pruneDirectDependencies: false,
        ...project,
        wantedDependencies
      });
    }
    async function installSome(project) {
      const currentBareSpecifiers = opts2.ignoreCurrentSpecifiers ? {} : getAllDependenciesFromManifest2(project.manifest, { autoInstallPeers: opts2.autoInstallPeers });
      const optionalDependencies = project.targetDependenciesField ? {} : project.manifest.optionalDependencies ?? {};
      const devDependencies = project.targetDependenciesField ? {} : project.manifest.devDependencies ?? {};
      if (preferredSpecs == null) {
        const manifests = [];
        for (const versions of ctx.workspacePackages.values()) {
          for (const { manifest } of versions.values()) {
            manifests.push(manifest);
          }
        }
        preferredSpecs = getAllUniqueSpecs(manifests);
      }
      const wantedDeps = parseWantedDependencies(project.dependencySelectors, {
        allowNew: project.allowNew !== false,
        currentBareSpecifiers,
        defaultTag: opts2.tag,
        dev: project.targetDependenciesField === "devDependencies",
        devDependencies,
        optional: project.targetDependenciesField === "optionalDependencies",
        optionalDependencies,
        updateWorkspaceDependencies: project.update,
        preferredSpecs,
        saveCatalogName: opts2.saveCatalogName,
        overrides: opts2.overrides,
        defaultCatalog: opts2.catalogs?.default
      });
      if (opts2.catalogMode !== "manual") {
        for (const wantedDep of wantedDeps) {
          const perDepCatalogName = getPerDepCatalogName(wantedDep, opts2.saveCatalogName);
          const catalogBareSpecifier = `catalog:${perDepCatalogName === "default" ? "" : perDepCatalogName}`;
          const catalog = resolveFromCatalog(opts2.catalogs, { ...wantedDep, bareSpecifier: catalogBareSpecifier });
          const catalogDepSpecifier = matchCatalogResolveResult(catalog, pickCatalogSpecifier);
          if (!catalogDepSpecifier || wantedDep.bareSpecifier === catalogBareSpecifier || import_semver37.default.validRange(wantedDep.bareSpecifier) && import_semver37.default.validRange(catalogDepSpecifier) && import_semver37.default.eq(wantedDep.bareSpecifier, catalogDepSpecifier)) {
            wantedDep.saveCatalogName = perDepCatalogName;
            continue;
          }
          switch (opts2.catalogMode) {
            case "strict":
              throw new CatalogVersionMismatchError({ catalogDep: `${wantedDep.alias}@${catalogDepSpecifier}`, wantedDep: `${wantedDep.alias}@${wantedDep.bareSpecifier}` });
            case "prefer":
              logger.warn({
                message: `Catalog version mismatch for "${wantedDep.alias}": using direct version "${wantedDep.bareSpecifier}" instead of catalog version "${catalogDepSpecifier}".`,
                prefix: opts2.lockfileDir
              });
          }
        }
      }
      projectsToInstall.push({
        pruneDirectDependencies: false,
        ...project,
        wantedDependencies: wantedDeps.map((wantedDep) => ({ ...wantedDep, isNew: !currentBareSpecifiers[wantedDep.alias], updateSpec: true }))
      });
    }
    const makePartialCurrentLockfile = !installsOnly && (ctx.existsNonEmptyWantedLockfile && !ctx.existsCurrentLockfile || !ctx.currentLockfileIsUpToDate);
    const result3 = await installInContext(projectsToInstall, ctx, {
      ...opts2,
      allowBuild,
      currentLockfileIsUpToDate: !ctx.existsNonEmptyWantedLockfile || ctx.currentLockfileIsUpToDate,
      makePartialCurrentLockfile,
      needsFullResolution,
      pruneVirtualStore,
      scriptsOpts,
      updateLockfileMinorVersion: true,
      patchedDependencies: patchGroups
    });
    return {
      updatedCatalogs: result3.updatedCatalogs,
      updatedProjects: result3.projects,
      stats: result3.stats,
      depsRequiringBuild: result3.depsRequiringBuild,
      ignoredBuilds: result3.ignoredBuilds,
      resolutionPolicyViolations: result3.resolutionPolicyViolations
    };
  }
  async function tryFrozenInstall({ frozenLockfile, needsFullResolution, patchGroups, upToDateLockfileMajorVersion }) {
    const isFrozenInstallPossible = (
      // A frozen install is never possible when any of these are true:
      !ctx.lockfileHadConflicts && !opts2.fixLockfile && !opts2.dedupe && installsOnly && // If the user explicitly requested a frozen lockfile install, attempt
      // to perform one. An error will be thrown if updates are required.
      (frozenLockfile || // Otherwise, check if a frozen-like install is possible for
      // performance. This will be the case if all projects are up-to-date.
      opts2.ignorePackageManifest || !needsFullResolution && opts2.preferFrozenLockfile && (!opts2.pruneLockfileImporters || Object.keys(ctx.wantedLockfile.importers).length === Object.keys(ctx.projects).length) && ctx.existsNonEmptyWantedLockfile && ctx.wantedLockfile.lockfileVersion === LOCKFILE_VERSION && await allProjectsAreUpToDate(Object.values(ctx.projects), {
        catalogs: opts2.catalogs,
        autoInstallPeers: opts2.autoInstallPeers,
        excludeLinksFromLockfile: opts2.excludeLinksFromLockfile,
        linkWorkspacePackages: opts2.linkWorkspacePackagesDepth >= 0,
        wantedLockfile: ctx.wantedLockfile,
        workspacePackages: ctx.workspacePackages,
        lockfileDir: opts2.lockfileDir
      }))
    );
    if (!isFrozenInstallPossible) {
      return null;
    }
    if (needsFullResolution) {
      throw new PnpmError("FROZEN_LOCKFILE_WITH_OUTDATED_LOCKFILE", "Cannot perform a frozen installation because the version of the lockfile is incompatible with this version of pnpm", {
        hint: `Try either:
1. Aligning the version of pnpm that generated the lockfile with the version that installs from it, or
2. Migrating the lockfile so that it is compatible with the newer version of pnpm, or
3. Using "pnpm install --no-frozen-lockfile".
Note that in CI environments, this setting is enabled by default.`
      });
    }
    if (!opts2.ignorePackageManifest) {
      const _satisfiesPackageManifest = satisfiesPackageManifest.bind(null, {
        autoInstallPeers: opts2.autoInstallPeers,
        excludeLinksFromLockfile: opts2.excludeLinksFromLockfile
      });
      for (const { id, manifest, rootDir } of Object.values(ctx.projects)) {
        const { satisfies: satisfies3, detailedReason } = _satisfiesPackageManifest(ctx.wantedLockfile.importers[id], manifest);
        if (!satisfies3) {
          if (!ctx.existsWantedLockfile) {
            throw new PnpmError("NO_LOCKFILE", `Cannot install with "frozen-lockfile" because ${WANTED_LOCKFILE} is absent`, {
              hint: 'Note that in CI environments this setting is true by default. If you still need to run install in such cases, use "pnpm install --no-frozen-lockfile"'
            });
          }
          throw new PnpmError("OUTDATED_LOCKFILE", `Cannot install with "frozen-lockfile" because ${WANTED_LOCKFILE} is not up to date with ` + path127.join("<ROOT>", path127.relative(opts2.lockfileDir, path127.join(rootDir, "package.json"))), {
            hint: `Note that in CI environments this setting is true by default. If you still need to run install in such cases, use "pnpm install --no-frozen-lockfile"

  Failure reason:
  ${detailedReason ?? ""}`
          });
        }
      }
    }
    if (opts2.lockfileOnly) {
      await writeWantedLockfile(ctx.lockfileDir, ctx.wantedLockfile);
      return {
        updatedProjects: projects.map((mutatedProject) => ctx.projects[mutatedProject.rootDir]),
        ignoredBuilds: void 0
      };
    }
    if (!ctx.existsNonEmptyWantedLockfile) {
      if (Object.values(ctx.projects).some((project) => pkgHasDependencies(project.manifest))) {
        throw new Error(`Headless installation requires a ${WANTED_LOCKFILE} file`);
      }
      return null;
    }
    if (maybeOpts.ignorePackageManifest) {
      logger.info({ message: "Importing packages to virtual store", prefix: opts2.lockfileDir });
    } else {
      logger.info({ message: "Lockfile is up to date, resolution step is skipped", prefix: opts2.lockfileDir });
    }
    if (opts2.runPacquet != null) {
      try {
        await opts2.runPacquet();
      } catch (err) {
        detachReporter();
        throw err;
      }
      return {
        updatedProjects: projects.map((mutatedProject) => {
          const project = ctx.projects[mutatedProject.rootDir];
          return {
            ...project,
            manifest: project.originalManifest ?? project.manifest
          };
        }),
        ignoredBuilds: void 0
      };
    }
    try {
      const { stats, ignoredBuilds: ignoredBuilds2 } = await headlessInstall({
        ...ctx,
        ...opts2,
        currentEngine: {
          nodeVersion: opts2.nodeVersion,
          pnpmVersion: opts2.packageManager.name === "pnpm" ? opts2.packageManager.version : ""
        },
        currentHoistedLocations: ctx.modulesFile?.hoistedLocations,
        patchedDependencies: patchGroups,
        selectedProjectDirs: projects.map((project) => project.rootDir),
        allProjects: ctx.projects,
        prunedAt: ctx.modulesFile?.prunedAt,
        pruneVirtualStore,
        wantedLockfile: maybeOpts.ignorePackageManifest ? void 0 : ctx.wantedLockfile,
        useLockfile: opts2.useLockfile && ctx.wantedLockfileIsModified
      });
      if (opts2.useLockfile && opts2.saveLockfile && opts2.mergeGitBranchLockfiles || !upToDateLockfileMajorVersion && !opts2.frozenLockfile) {
        const currentLockfileDir = path127.join(ctx.rootModulesDir, ".pnpm");
        await writeLockfiles({
          currentLockfile: ctx.currentLockfile,
          currentLockfileDir,
          wantedLockfile: ctx.wantedLockfile,
          wantedLockfileDir: ctx.lockfileDir,
          useGitBranchLockfile: opts2.useGitBranchLockfile,
          mergeGitBranchLockfiles: opts2.mergeGitBranchLockfiles
        });
      }
      return {
        updatedProjects: projects.map((mutatedProject) => {
          const project = ctx.projects[mutatedProject.rootDir];
          return {
            ...project,
            manifest: project.originalManifest ?? project.manifest
          };
        }),
        stats,
        ignoredBuilds: ignoredBuilds2
      };
    } catch (error) {
      if (frozenLockfile || error.code !== "ERR_PNPM_LOCKFILE_MISSING_DEPENDENCY" && !BROKEN_LOCKFILE_INTEGRITY_ERRORS.has(error.code) || !ctx.existsNonEmptyWantedLockfile && !ctx.existsCurrentLockfile)
        throw error;
      if (BROKEN_LOCKFILE_INTEGRITY_ERRORS.has(error.code)) {
        needsFullResolution = true;
        for (const project of projects) {
          project.update = true;
        }
      }
      logger.warn({
        error,
        message: error.message,
        prefix: ctx.lockfileDir
      });
      logger.error(new PnpmError(error.code, "The lockfile is broken! Resolution step will be performed to fix it."));
      return { needsFullResolution };
    }
  }
}
async function runUnignoredDependencyBuilds(opts2, previousIgnoredBuilds, allowBuild) {
  if (!allowBuild) {
    return previousIgnoredBuilds;
  }
  const pkgsToBuild = [];
  for (const ignoredPkg of previousIgnoredBuilds) {
    const parsed = parse6(ignoredPkg);
    if (!parsed.name || !parsed.version)
      continue;
    const allowed = allowBuild(parsed.name, parsed.version);
    if (allowed === true) {
      pkgsToBuild.push(`${parsed.name}@${parsed.version}`);
    }
  }
  if (pkgsToBuild.length) {
    return (await buildSelectedPkgs(opts2.allProjects, pkgsToBuild, {
      ...opts2,
      reporter: void 0,
      // We don't want to attach the reporter again, it was already attached.
      rootProjectManifestDir: opts2.lockfileDir
    })).ignoredBuilds ?? previousIgnoredBuilds;
  }
  return previousIgnoredBuilds;
}
function cacheExpired(prunedAt, maxAgeInMinutes) {
  return (Date.now() - new Date(prunedAt).valueOf()) / (1e3 * 60) > maxAgeInMinutes;
}
function pkgHasDependencies(manifest) {
  return Boolean(Object.keys(manifest.dependencies ?? {}).length > 0 || Object.keys(manifest.devDependencies ?? {}).length || Object.keys(manifest.optionalDependencies ?? {}).length);
}
function forgetResolutionsOfPrevWantedDeps(importer, wantedDeps, isWantedDepBareSpecifierSame2) {
  if (!importer.specifiers)
    return;
  importer.dependencies = importer.dependencies ?? {};
  importer.devDependencies = importer.devDependencies ?? {};
  importer.optionalDependencies = importer.optionalDependencies ?? {};
  for (const { alias, bareSpecifier } of wantedDeps) {
    if (alias && !isWantedDepBareSpecifierSame2(alias, importer.specifiers[alias], bareSpecifier)) {
      if (!importer.dependencies[alias]?.startsWith("link:")) {
        delete importer.dependencies[alias];
      }
      delete importer.devDependencies[alias];
      delete importer.optionalDependencies[alias];
    }
  }
}
function forgetResolutionsOfAllPrevWantedDeps(wantedLockfile) {
  if (wantedLockfile.importers != null && !isEmpty_default(wantedLockfile.importers)) {
    wantedLockfile.importers = map_default(({ dependencies: _dependencies, devDependencies: _devDependencies, optionalDependencies: _optionalDependencies, ...rest }) => rest, wantedLockfile.importers);
  }
  if (wantedLockfile.packages != null && !isEmpty_default(wantedLockfile.packages)) {
    wantedLockfile.packages = map_default(({ dependencies: _dependencies, optionalDependencies: _optionalDependencies, ...rest }) => rest, wantedLockfile.packages);
  }
  if (wantedLockfile.catalogs != null && !isEmpty_default(wantedLockfile.catalogs)) {
    wantedLockfile.catalogs = void 0;
  }
}
function isWantedDepBareSpecifierSame(prevCatalogs, catalogsConfig, alias, prevBareSpecifier, nextBareSpecifier) {
  if (prevBareSpecifier !== nextBareSpecifier) {
    return false;
  }
  const catalogName = parseCatalogProtocol(prevBareSpecifier);
  if (catalogName === null) {
    return true;
  }
  const prevCatalogEntrySpec = prevCatalogs?.[catalogName]?.[alias]?.specifier;
  const nextCatalogEntrySpec = catalogsConfig?.[catalogName]?.[alias];
  return prevCatalogEntrySpec === nextCatalogEntrySpec;
}
function getPerDepCatalogName(wantedDep, globalSaveCatalogName) {
  if (wantedDep.prevSpecifier) {
    const catalogFromPrev = parseCatalogProtocol(wantedDep.prevSpecifier);
    if (catalogFromPrev != null) {
      return catalogFromPrev;
    }
  }
  return globalSaveCatalogName ?? "default";
}
async function addDependenciesToPackage(manifest, dependencySelectors, opts2) {
  const rootDir = opts2.dir ?? process.cwd();
  const { updatedCatalogs, updatedProjects: projects, ignoredBuilds, resolutionPolicyViolations } = await mutateModules([
    {
      allowNew: opts2.allowNew,
      dependencySelectors,
      mutation: "installSome",
      peer: opts2.peer,
      pinnedVersion: opts2.pinnedVersion,
      rootDir,
      targetDependenciesField: opts2.targetDependenciesField,
      update: opts2.update,
      updateMatching: opts2.updateMatching,
      updatePackageManifest: opts2.updatePackageManifest,
      updateToLatest: opts2.updateToLatest
    }
  ], {
    ...opts2,
    lockfileDir: opts2.lockfileDir ?? opts2.dir,
    allProjects: [
      {
        buildIndex: 0,
        binsDir: opts2.bin,
        manifest,
        rootDir
      }
    ]
  });
  return { updatedCatalogs, updatedManifest: projects[0].manifest, ignoredBuilds, resolutionPolicyViolations };
}
function allMutationsAreInstalls(projects) {
  return projects.every((project) => project.mutation === "install" && !project.update && !project.updateMatching);
}
async function materializeOrDelegate(opts2, runHeadlessInstall) {
  if (opts2.runPacquet != null) {
    await opts2.runPacquet({ filterResolvedProgress: true });
    return {};
  }
  return runHeadlessInstall();
}
async function linkAllBins3(depNodes, depGraph, opts2) {
  await Promise.all(depNodes.map(async (depNode) => limitLinking5(async () => linkBinsOfDependencies(depNode, depGraph, opts2))));
}
function dedupePackageNamesFromIgnoredBuilds(ignoredBuilds) {
  return Array.from(new Set(Array.from(ignoredBuilds ?? []).map(removeSuffix))).sort(import_util13.lexCompare);
}
function getProjectsWithTargetDirs(projects, lockfile, dependenciesGraph) {
  const injectionTargetsByDepPath = /* @__PURE__ */ new Map();
  if (lockfile.packages) {
    for (const [depPath, { resolution }] of Object.entries(lockfile.packages)) {
      if (resolution?.type === "directory") {
        const graphNode = dependenciesGraph[depPath];
        if (graphNode?.dir) {
          injectionTargetsByDepPath.set(depPath, [graphNode.dir]);
        }
      }
    }
  }
  return extendProjectsWithTargetDirs(projects, injectionTargetsByDepPath);
}
function canUseAgentForMutations(projects) {
  if (projects.length === 0)
    return false;
  return projects.every((p) => {
    if (p.mutation === "uninstallSome")
      return true;
    if (p.mutation !== "install" && p.mutation !== "installSome")
      return false;
    const m = p;
    return !m.update && !m.updateToLatest && m.updateMatching == null;
  });
}
async function prepareAgentProjects(projects, opts2) {
  const allProjects = opts2.allProjects ?? [];
  const mutationByRootDir = /* @__PURE__ */ new Map();
  for (const p of projects) {
    mutationByRootDir.set(p.rootDir, p);
  }
  const targetSet = allProjects.length > 0 ? allProjects.map((ap) => ({
    rootDir: ap.rootDir,
    manifest: ap.manifest,
    mutation: mutationByRootDir.get(ap.rootDir)
  })) : projects.map((p) => {
    const proj = allProjects.find((ap) => ap.rootDir === p.rootDir);
    return {
      rootDir: p.rootDir,
      manifest: proj?.manifest ?? {},
      mutation: p
    };
  });
  for (const p of projects) {
    if (!targetSet.some((t2) => t2.rootDir === p.rootDir))
      return null;
  }
  return Promise.all(targetSet.map(async (t2) => {
    let manifest = clone_default(t2.manifest);
    const newDeps = [];
    const mutation = t2.mutation;
    let pinnedVersion;
    if (mutation?.mutation === "uninstallSome") {
      manifest = await removeDeps(manifest, mutation.dependencyNames, {
        prefix: mutation.rootDir,
        saveType: mutation.targetDependenciesField
      });
    } else if (mutation?.mutation === "installSome") {
      manifest = mergeInstallSelectors(manifest, mutation);
      pinnedVersion = mutation.pinnedVersion;
      for (const sel of mutation.dependencySelectors) {
        const parsed = parseWantedDependency(sel);
        if (parsed.alias) {
          newDeps.push({ alias: parsed.alias, userSpecified: parsed.bareSpecifier != null });
        }
      }
    }
    return {
      rootDir: t2.rootDir,
      manifest,
      mutation: mutation?.mutation ?? "install",
      newDeps,
      pinnedVersion
    };
  }));
}
function mergeInstallSelectors(manifest, mutation) {
  const target2 = mutation.targetDependenciesField;
  const fieldsToClear = ["dependencies", "devDependencies", "optionalDependencies"];
  for (const sel of mutation.dependencySelectors) {
    const parsed = parseWantedDependency(sel);
    if (!parsed.alias)
      continue;
    const alias = parsed.alias;
    const field = target2 ?? guessDepField(alias, manifest) ?? "dependencies";
    const spec = parsed.bareSpecifier ?? findExistingSpec(alias, manifest) ?? "latest";
    manifest[field] = manifest[field] ?? {};
    manifest[field][alias] = spec;
    if (target2) {
      for (const other of fieldsToClear) {
        if (other !== target2)
          delete manifest[other]?.[alias];
      }
    }
    if (mutation.peer) {
      manifest.peerDependencies = manifest.peerDependencies ?? {};
      manifest.peerDependencies[alias] = manifest.peerDependencies[alias] ?? spec;
    }
  }
  return manifest;
}
function guessDepField(alias, manifest) {
  if (manifest.dependencies?.[alias] != null)
    return "dependencies";
  if (manifest.devDependencies?.[alias] != null)
    return "devDependencies";
  if (manifest.optionalDependencies?.[alias] != null)
    return "optionalDependencies";
  return void 0;
}
function findExistingSpec(alias, manifest) {
  return manifest.dependencies?.[alias] ?? manifest.devDependencies?.[alias] ?? manifest.optionalDependencies?.[alias];
}
function applyResolvedSpecsFromLockfile(manifest, importerSnapshot, newDeps, pinnedVersion) {
  if (!importerSnapshot || newDeps.length === 0)
    return manifest;
  for (const dep of newDeps) {
    if (dep.userSpecified)
      continue;
    for (const field of ["dependencies", "devDependencies", "optionalDependencies"]) {
      const resolvedVersion = importerSnapshot[field]?.[dep.alias];
      if (!resolvedVersion || manifest[field]?.[dep.alias] == null)
        continue;
      const savePrefixSpec = createVersionSpecFromResolvedVersion(resolvedVersion, pinnedVersion);
      manifest[field][dep.alias] = savePrefixSpec ?? resolvedVersion;
    }
  }
  return manifest;
}
async function mutateModulesViaAgent(projects, opts2) {
  const agentProjects = await prepareAgentProjects(projects, opts2);
  if (!agentProjects)
    return null;
  const result2 = await installFromPnpmRegistry(agentProjects[0].manifest, agentProjects[0].rootDir, opts2, agentProjects.map((p) => ({ rootDir: p.rootDir, manifest: p.manifest })));
  const lockfileDir = opts2.lockfileDir ?? projects[0].rootDir;
  const mutatedRootDirs = new Set(projects.map((p) => p.rootDir));
  const updatedProjects = agentProjects.filter((p) => mutatedRootDirs.has(p.rootDir)).map((p) => {
    if (p.mutation === "installSome" && p.newDeps.length > 0) {
      const relative2 = path127.relative(lockfileDir, p.rootDir).split(path127.sep).join("/");
      const importerId = relative2 || ".";
      const snapshot = result2.lockfile?.importers?.[importerId];
      p.manifest = applyResolvedSpecsFromLockfile(p.manifest, snapshot, p.newDeps, p.pinnedVersion);
    }
    return { rootDir: p.rootDir, manifest: p.manifest };
  });
  return {
    updatedProjects,
    stats: result2.stats,
    ignoredBuilds: result2.ignoredBuilds
  };
}
async function installFromPnpmRegistry(manifest, rootDir, opts2, allInstallProjects) {
  if (opts2.trustPolicy === "no-downgrade") {
    throw new PnpmError("TRUST_POLICY_INCOMPATIBLE_WITH_AGENT", "The pnpm agent does not yet enforce `trustPolicy: no-downgrade`, so running an install through the agent under this policy would produce a lockfile that the local verifier rejects.", { hint: "Unset `trustPolicy` for this install, or disable the agent (unset `--agent` / `agent` in pnpm-workspace.yaml) so resolution runs locally and the trust check applies." });
  }
  const { fetchFromPnpmRegistry: fetchFromPnpmRegistry2 } = await Promise.resolve().then(() => (init_lib123(), lib_exports6));
  const { StoreIndex: StoreIndex2 } = await Promise.resolve().then(() => (init_lib16(), lib_exports2));
  const { setImportConcurrency: setImportConcurrency2 } = await Promise.resolve().then(() => (init_lib4(), lib_exports));
  const restoreImportConcurrency = setImportConcurrency2(6);
  try {
    const lockfileDir = opts2.lockfileDir ?? rootDir;
    const existingLockfile = await readWantedLockfile(lockfileDir, {
      ignoreIncompatible: true
    }).catch(() => null);
    logger.info({ message: "Resolving dependencies via pnpm agent", prefix: rootDir });
    const storeIndex = new StoreIndex2(opts2.storeDir);
    let lockfile, agentStats, fileDownloads, indexEntries;
    try {
      const projectsList = allInstallProjects && allInstallProjects.length > 1 ? allInstallProjects.map((p) => ({
        dir: (path127.relative(lockfileDir, p.rootDir) || ".").split(path127.sep).join("/"),
        dependencies: p.manifest.dependencies,
        devDependencies: p.manifest.devDependencies
      })) : void 0;
      ({ lockfile, stats: agentStats, fileDownloads, indexEntries } = await fetchFromPnpmRegistry2({
        registryUrl: opts2.agent,
        storeDir: opts2.storeDir,
        storeIndex,
        dependencies: projectsList ? void 0 : manifest.dependencies,
        devDependencies: projectsList ? void 0 : manifest.devDependencies,
        projects: projectsList,
        overrides: opts2.overrides,
        minimumReleaseAge: opts2.minimumReleaseAge,
        lockfile: existingLockfile ?? void 0
      }));
      const { writeRawIndexEntries: writeRawIndexEntries2 } = await Promise.resolve().then(() => (init_lib123(), lib_exports6));
      writeRawIndexEntries2(indexEntries, storeIndex);
      storeIndex.checkpoint();
    } finally {
      storeIndex.close();
    }
    await writeWantedLockfileAndRecordVerified({
      lockfileDir,
      lockfile,
      cacheDir: opts2.cacheDir,
      resolutionVerifiers: opts2.resolutionVerifiers,
      useGitBranchLockfile: opts2.useGitBranchLockfile,
      mergeGitBranchLockfiles: opts2.mergeGitBranchLockfiles
    });
    logger.info({
      message: `Resolved ${agentStats.totalPackages} packages: ${agentStats.alreadyInStore} cached, ${agentStats.filesToDownload} files to download`,
      prefix: rootDir
    });
    const { readPkgFromCafs: readPkgFromCafs2 } = await Promise.resolve().then(() => (init_lib4(), lib_exports));
    const { storeIndexKey: _storeIndexKey } = await Promise.resolve().then(() => (init_lib16(), lib_exports2));
    const wrappedStoreController = {
      ...opts2.storeController,
      fetchPackage: async (fetchOpts) => {
        await fileDownloads;
        const resolution = fetchOpts.pkg.resolution;
        const integrity = resolution?.integrity;
        if (integrity && !resolution?.gitHosted) {
          const filesIndexFile = _storeIndexKey(integrity, fetchOpts.pkg.id);
          const result2 = await readPkgFromCafs2({ storeDir: opts2.storeDir, verifyStoreIntegrity: false }, filesIndexFile, { readManifest: true, expectedPkg: { name: fetchOpts.pkg.name, version: fetchOpts.pkg.version } });
          return {
            fetching: () => Promise.resolve({
              files: result2.files,
              bundledManifest: result2.bundledManifest,
              integrity
            }),
            filesIndexFile
          };
        }
        return opts2.storeController.fetchPackage(fetchOpts);
      }
    };
    const headlessOpts = {
      ...opts2,
      // Skip re-verifying files just written from the agent — they're
      // guaranteed correct (server verified, no rehashing needed).
      verifyStoreIntegrity: false,
      storeController: wrappedStoreController,
      dir: rootDir,
      lockfileDir,
      engineStrict: opts2.engineStrict ?? false,
      ignoreScripts: opts2.ignoreScripts ?? false,
      sideEffectsCacheRead: opts2.sideEffectsCacheRead ?? false,
      sideEffectsCacheWrite: opts2.sideEffectsCacheWrite ?? false,
      symlink: opts2.symlink ?? true,
      enableModulesDir: opts2.enableModulesDir ?? true,
      include: opts2.include ?? { dependencies: true, devDependencies: true, optionalDependencies: true },
      currentEngine: {
        nodeVersion: opts2.nodeVersion,
        pnpmVersion: opts2.packageManager?.version ?? ""
      },
      selectedProjectDirs: (allInstallProjects ?? [{ rootDir }]).map((p) => p.rootDir),
      allProjects: Object.fromEntries((allInstallProjects ?? [{ rootDir, manifest }]).map((p, i2) => [
        p.rootDir,
        {
          binsDir: path127.join(p.rootDir, "node_modules", ".bin"),
          buildIndex: i2,
          id: path127.relative(lockfileDir, p.rootDir) || ".",
          manifest: p.manifest,
          modulesDir: path127.join(p.rootDir, "node_modules"),
          rootDir: p.rootDir
        }
      ])),
      hoistedDependencies: {},
      pendingBuilds: [],
      skipped: /* @__PURE__ */ new Set(),
      wantedLockfile: lockfile
    };
    const { ignoredBuilds, stats } = await materializeOrDelegate(
      opts2,
      // eslint-disable-next-line @typescript-eslint/no-explicit-any
      () => headlessInstall(headlessOpts)
    );
    return {
      updatedCatalogs: void 0,
      updatedManifest: manifest,
      ignoredBuilds,
      // Pacquet doesn't surface a structured stats return; default to
      // zeros so the agent-path's non-optional `stats` slot is filled.
      // The reporter still renders accurate counts from pacquet's
      // `pnpm:stats` log events.
      stats: stats ?? { added: 0, removed: 0, linkedToRoot: 0 },
      lockfile,
      // Server-side resolution (pnpm agent) enforces `minimumReleaseAge`
      // itself — the agent picks only mature versions and the lockfile
      // can't contain immature entries to auto-collect. `trustPolicy` is
      // guarded above (we refuse to enter this path when it's set), so
      // there's nothing for the install command to react to here.
      resolutionPolicyViolations: []
    };
  } finally {
    await opts2.storeController.close();
    restoreImportConcurrency();
  }
}
var import_util13, import_semver37, LockfileConfigMismatchError, BROKEN_LOCKFILE_INTEGRITY_ERRORS, DEV_PREINSTALL, pickCatalogSpecifier, _installInContext, installInContext, limitLinking5, IgnoredBuildsError;
var init_install = __esm({
  "../installing/deps-installer/lib/install/index.js"() {
    "use strict";
    init_lib42();
    init_lib91();
    init_lib110();
    init_lib66();
    init_lib94();
    init_lib95();
    init_lib();
    init_lib6();
    init_lib67();
    init_lib65();
    init_lib2();
    init_lib44();
    init_lib87();
    init_lib108();
    init_lib119();
    init_lib75();
    init_lib78();
    init_lib106();
    init_lib122();
    init_lib117();
    init_lib121();
    init_lib3();
    init_lib105();
    init_lib9();
    init_lib96();
    import_util13 = __toESM(require_dist3(), 1);
    init_lib13();
    init_is_subdir();
    init_p_limit();
    init_es();
    import_semver37 = __toESM(require_semver2(), 1);
    init_parseWantedDependencies();
    init_removeDeps();
    init_CatalogVersionMismatchError();
    init_checkCustomResolverForceResolve();
    init_extendInstallOptions();
    init_link();
    init_reportPeerDependencyIssues();
    init_validateModules();
    init_verifyLockfileResolutions();
    init_writeLockfilesAndRecordVerified();
    init_writeWantedLockfileAndRecordVerified();
    LockfileConfigMismatchError = class extends PnpmError {
      constructor(outdatedLockfileSettingName) {
        super("LOCKFILE_CONFIG_MISMATCH", `Cannot proceed with the frozen installation. The current "${outdatedLockfileSettingName}" configuration doesn't match the value found in the lockfile`, {
          hint: 'Update your lockfile using "pnpm install --no-frozen-lockfile"'
        });
      }
    };
    BROKEN_LOCKFILE_INTEGRITY_ERRORS = /* @__PURE__ */ new Set([
      "ERR_PNPM_UNEXPECTED_PKG_CONTENT_IN_STORE",
      "ERR_PNPM_TARBALL_INTEGRITY"
    ]);
    DEV_PREINSTALL = "pnpm:devPreinstall";
    pickCatalogSpecifier = {
      found: (found) => found.resolution.specifier,
      misconfiguration: () => void 0,
      unused: () => void 0
    };
    _installInContext = async (projects, ctx, opts2) => {
      const originalLockfileForCheck = opts2.lockfileCheck != null ? clone_default(ctx.wantedLockfile) : null;
      const isInstallationOnlyForLockfileCheck = opts2.lockfileCheck != null;
      ctx.wantedLockfile.importers = ctx.wantedLockfile.importers || {};
      for (const { id } of projects) {
        if (!ctx.wantedLockfile.importers[id]) {
          ctx.wantedLockfile.importers[id] = { specifiers: {} };
        }
      }
      if (opts2.pruneLockfileImporters) {
        const projectIds = new Set(projects.map(({ id }) => id));
        for (const wantedImporter of Object.keys(ctx.wantedLockfile.importers)) {
          if (!projectIds.has(wantedImporter)) {
            delete ctx.wantedLockfile.importers[wantedImporter];
          }
        }
      }
      await Promise.all(projects.map(async (project) => {
        if (project.mutation !== "uninstallSome")
          return;
        const _removeDeps = async (manifest) => removeDeps(manifest, project.dependencyNames, { prefix: project.rootDir, saveType: project.targetDependenciesField });
        project.manifest = await _removeDeps(project.manifest);
        if (project.originalManifest != null) {
          project.originalManifest = await _removeDeps(project.originalManifest);
        }
      }));
      stageLogger.debug({
        prefix: ctx.lockfileDir,
        stage: "resolution_started"
      });
      const update2 = projects.some((project) => project.update);
      const preferredVersions = opts2.preferredVersions ?? (!update2 ? getPreferredVersionsFromLockfileAndManifests(ctx.wantedLockfile.packages, Object.values(ctx.projects).map(({ manifest }) => manifest)) : void 0);
      const forceFullResolution = ctx.wantedLockfile.lockfileVersion !== LOCKFILE_VERSION || !opts2.currentLockfileIsUpToDate || opts2.force || opts2.needsFullResolution || ctx.lockfileHadConflicts || opts2.dedupePeerDependents;
      if (opts2.fixLockfile && ctx.wantedLockfile.packages != null && !isEmpty_default(ctx.wantedLockfile.packages)) {
        ctx.wantedLockfile.packages = map_default(({ dependencies, optionalDependencies, resolution }) => ({
          // These fields are needed to avoid losing information of the locked dependencies if these fields are not broken
          // If these fields are broken, they will also be regenerated
          dependencies,
          optionalDependencies,
          resolution
        }), ctx.wantedLockfile.packages);
      }
      if (opts2.dedupe) {
        forgetResolutionsOfAllPrevWantedDeps(ctx.wantedLockfile);
      }
      let { dependenciesGraph, dependenciesByProjectId, linkedDependenciesByProjectId, updatedCatalogs, newLockfile, outdatedDependencies, peerDependencyIssuesByProjects, wantedToBeSkippedPackageIds, waitTillAllFetchingsFinish, resolutionPolicyViolations } = await resolveDependencies2(projects, {
        allowBuild: opts2.allowBuild,
        allowedDeprecatedVersions: opts2.allowedDeprecatedVersions,
        allowUnusedPatches: opts2.allowUnusedPatches,
        autoInstallPeers: opts2.autoInstallPeers,
        autoInstallPeersFromHighestMatch: opts2.autoInstallPeersFromHighestMatch,
        catalogs: opts2.catalogs,
        currentLockfile: ctx.currentLockfile,
        defaultUpdateDepth: opts2.depth,
        dedupeDirectDeps: opts2.dedupeDirectDeps,
        dedupeInjectedDeps: opts2.dedupeInjectedDeps,
        dedupePeerDependents: opts2.dedupePeerDependents,
        dedupePeers: opts2.dedupePeers,
        dryRun: opts2.lockfileOnly,
        enableGlobalVirtualStore: opts2.enableGlobalVirtualStore,
        engineStrict: opts2.engineStrict,
        excludeLinksFromLockfile: opts2.excludeLinksFromLockfile,
        force: opts2.force,
        forceFullResolution,
        ignoreScripts: opts2.ignoreScripts,
        hooks: {
          readPackage: opts2.readPackageHook
        },
        linkWorkspacePackagesDepth: opts2.linkWorkspacePackagesDepth ?? (opts2.saveWorkspaceProtocol ? 0 : -1),
        lockfileDir: opts2.lockfileDir,
        nodeVersion: opts2.nodeVersion,
        pnpmVersion: opts2.packageManager.name === "pnpm" ? opts2.packageManager.version : "",
        preferWorkspacePackages: opts2.preferWorkspacePackages,
        preferredVersions,
        preserveWorkspaceProtocol: opts2.preserveWorkspaceProtocol,
        registries: ctx.registries,
        namedRegistries: opts2.namedRegistries,
        resolutionMode: opts2.resolutionMode,
        saveWorkspaceProtocol: opts2.saveWorkspaceProtocol,
        storeController: opts2.storeController,
        tag: opts2.tag,
        globalVirtualStoreDir: opts2.globalVirtualStoreDir,
        virtualStoreDir: ctx.virtualStoreDir,
        virtualStoreDirMaxLength: ctx.virtualStoreDirMaxLength,
        wantedLockfile: ctx.wantedLockfile,
        workspacePackages: ctx.workspacePackages,
        patchedDependencies: opts2.patchedDependencies,
        lockfileIncludeTarballUrl: opts2.lockfileIncludeTarballUrl,
        resolvePeersFromWorkspaceRoot: opts2.resolvePeersFromWorkspaceRoot,
        supportedArchitectures: opts2.supportedArchitectures,
        peersSuffixMaxLength: opts2.peersSuffixMaxLength,
        injectWorkspacePackages: opts2.injectWorkspacePackages,
        minimumReleaseAge: opts2.minimumReleaseAge,
        minimumReleaseAgeExclude: opts2.minimumReleaseAgeExclude,
        trustPolicy: opts2.trustPolicy,
        trustPolicyExclude: opts2.trustPolicyExclude,
        trustPolicyIgnoreAfter: opts2.trustPolicyIgnoreAfter,
        blockExoticSubdeps: opts2.blockExoticSubdeps,
        allProjectIds: Object.values(ctx.projects).map((p) => p.id),
        handleResolutionPolicyViolations: opts2.handleResolutionPolicyViolations
      });
      if (!opts2.include.optionalDependencies || !opts2.include.devDependencies || !opts2.include.dependencies) {
        linkedDependenciesByProjectId = map_default((linkedDeps) => linkedDeps.filter((linkedDep) => !(linkedDep.dev && !opts2.include.devDependencies || linkedDep.optional && !opts2.include.optionalDependencies || !linkedDep.dev && !linkedDep.optional && !opts2.include.dependencies)), linkedDependenciesByProjectId ?? {});
        for (const { id, manifest } of projects) {
          for (const [alias, depPath] of dependenciesByProjectId[id].entries()) {
            let include;
            const dep = dependenciesGraph[depPath];
            if (!dep) {
              include = false;
            } else {
              const isDev = Boolean(manifest.devDependencies?.[dep.name]);
              const isOptional = Boolean(manifest.optionalDependencies?.[dep.name]);
              include = !(isDev && !opts2.include.devDependencies || isOptional && !opts2.include.optionalDependencies || !isDev && !isOptional && !opts2.include.dependencies);
            }
            if (!include) {
              dependenciesByProjectId[id].delete(alias);
            }
          }
        }
      }
      if (opts2.skipRuntimes) {
        for (const id of Object.keys(dependenciesByProjectId)) {
          for (const [alias, depPath] of dependenciesByProjectId[id].entries()) {
            if (depPath.includes("@runtime:")) {
              ctx.skipped.add(depPath);
              dependenciesByProjectId[id].delete(alias);
            }
          }
        }
      }
      stageLogger.debug({
        prefix: ctx.lockfileDir,
        stage: "resolution_done"
      });
      newLockfile = opts2.hooks?.afterAllResolved != null ? await pipeWith_default(async (f, res) => f(await res), opts2.hooks.afterAllResolved)(newLockfile) : newLockfile;
      if (opts2.updateLockfileMinorVersion) {
        newLockfile.lockfileVersion = LOCKFILE_VERSION;
      }
      const depsStateCache = {};
      const lockfileOpts = {
        useGitBranchLockfile: opts2.useGitBranchLockfile,
        mergeGitBranchLockfiles: opts2.mergeGitBranchLockfiles
      };
      let stats;
      let ignoredBuilds;
      if (!opts2.lockfileOnly && !isInstallationOnlyForLockfileCheck && opts2.enableModulesDir) {
        const result2 = await linkPackages(projects, dependenciesGraph, {
          allowBuild: opts2.allowBuild,
          currentLockfile: ctx.currentLockfile,
          dedupeDirectDeps: opts2.dedupeDirectDeps,
          dependenciesByProjectId,
          depsStateCache,
          disableRelinkLocalDirDeps: opts2.disableRelinkLocalDirDeps,
          enableGlobalVirtualStore: opts2.enableGlobalVirtualStore,
          extraNodePaths: ctx.extraNodePaths,
          force: opts2.force,
          hoistedDependencies: ctx.hoistedDependencies,
          hoistedModulesDir: ctx.hoistedModulesDir,
          hoistPattern: ctx.hoistPattern,
          ignoreScripts: opts2.ignoreScripts,
          include: opts2.include,
          linkedDependenciesByProjectId,
          lockfileDir: opts2.lockfileDir,
          makePartialCurrentLockfile: opts2.makePartialCurrentLockfile,
          outdatedDependencies,
          pruneStore: opts2.pruneStore,
          pruneVirtualStore: opts2.pruneVirtualStore,
          publicHoistPattern: ctx.publicHoistPattern,
          registries: ctx.registries,
          rootModulesDir: ctx.rootModulesDir,
          sideEffectsCacheRead: opts2.sideEffectsCacheRead,
          symlink: opts2.symlink,
          skipped: ctx.skipped,
          skipRuntimes: opts2.skipRuntimes,
          storeController: opts2.storeController,
          virtualStoreDir: ctx.virtualStoreDir,
          virtualStoreDirMaxLength: ctx.virtualStoreDirMaxLength,
          wantedLockfile: newLockfile,
          wantedToBeSkippedPackageIds,
          hoistWorkspacePackages: opts2.hoistWorkspacePackages,
          virtualStoreOnly: opts2.virtualStoreOnly,
          supportedArchitectures: opts2.supportedArchitectures
        });
        stats = result2.stats;
        if (opts2.enablePnp) {
          const importerNames = Object.fromEntries(projects.map(({ manifest, id }) => [id, manifest.name ?? id]));
          await writePnpFile(result2.currentLockfile, {
            importerNames,
            lockfileDir: ctx.lockfileDir,
            virtualStoreDir: ctx.virtualStoreDir,
            virtualStoreDirMaxLength: ctx.virtualStoreDirMaxLength,
            registries: ctx.registries
          });
        }
        ctx.pendingBuilds = ctx.pendingBuilds.filter((relDepPath) => !result2.removedDepPaths.has(relDepPath));
        if (result2.newDepPaths?.length) {
          if (opts2.ignoreScripts) {
            ctx.pendingBuilds = ctx.pendingBuilds.concat(result2.newDepPaths.filter((depPath) => dependenciesGraph[depPath].requiresBuild));
          }
          if (!opts2.ignoreScripts || Object.keys(opts2.patchedDependencies ?? {}).length > 0) {
            const depPaths = Object.keys(dependenciesGraph);
            const rootNodes = depPaths.filter((depPath) => dependenciesGraph[depPath].depth === 0);
            let extraEnv = opts2.scriptsOpts.extraEnv;
            if (opts2.enablePnp) {
              extraEnv = {
                ...extraEnv,
                ...makeNodeRequireOption(path127.join(opts2.lockfileDir, ".pnp.cjs"))
              };
            }
            ignoredBuilds = (await buildModules(dependenciesGraph, rootNodes, {
              allowBuild: opts2.allowBuild,
              childConcurrency: opts2.childConcurrency,
              depsStateCache,
              depsToBuild: new Set(result2.newDepPaths),
              extraBinPaths: ctx.extraBinPaths,
              extraNodePaths: ctx.extraNodePaths,
              extraEnv,
              ignoreScripts: opts2.ignoreScripts,
              lockfileDir: ctx.lockfileDir,
              optional: opts2.include.optionalDependencies,
              preferSymlinkedExecutables: opts2.preferSymlinkedExecutables,
              rootModulesDir: ctx.virtualStoreDir,
              scriptsPrependNodePath: opts2.scriptsPrependNodePath,
              scriptShell: opts2.scriptShell,
              shellEmulator: opts2.shellEmulator,
              sideEffectsCacheWrite: opts2.sideEffectsCacheWrite,
              storeController: opts2.storeController,
              unsafePerm: opts2.unsafePerm,
              userAgent: opts2.userAgent,
              enableGlobalVirtualStore: opts2.enableGlobalVirtualStore
            })).ignoredBuilds;
            if (ctx.modulesFile?.ignoredBuilds?.size) {
              ignoredBuilds ??= /* @__PURE__ */ new Set();
              for (const ignoredBuild of ctx.modulesFile.ignoredBuilds.values()) {
                if (result2.currentLockfile.packages?.[ignoredBuild] && !isBuildExplicitlyDisallowed(ignoredBuild, opts2.allowBuild)) {
                  ignoredBuilds.add(ignoredBuild);
                }
              }
            }
          }
        }
        const binWarn = (prefix, message) => {
          logger.info({ message, prefix });
        };
        if (result2.newDepPaths?.length && !opts2.virtualStoreOnly) {
          const newPkgs = props_default(result2.newDepPaths, dependenciesGraph);
          await linkAllBins3(newPkgs, dependenciesGraph, {
            extraNodePaths: ctx.extraNodePaths,
            optional: opts2.include.optionalDependencies,
            warn: binWarn.bind(null, opts2.lockfileDir)
          });
        }
        if (!opts2.virtualStoreOnly)
          await Promise.all(projects.map(async (project, index) => {
            let linkedPackages;
            if (ctx.publicHoistPattern?.length && path127.relative(project.rootDir, opts2.lockfileDir) === "") {
              linkedPackages = await linkBins(project.modulesDir, project.binsDir, {
                allowExoticManifests: true,
                preferSymlinkedExecutables: opts2.preferSymlinkedExecutables,
                projectManifest: project.manifest,
                extraNodePaths: ctx.extraNodePaths,
                warn: binWarn.bind(null, project.rootDir)
              });
            } else {
              const directPkgs = [
                ...props_default(Array.from(dependenciesByProjectId[project.id].values()).filter((depPath) => !ctx.skipped.has(depPath)), dependenciesGraph),
                ...linkedDependenciesByProjectId[project.id].map(({ pkgId }) => ({
                  dir: path127.join(project.rootDir, pkgId.substring(5)),
                  fetching: void 0
                }))
              ];
              linkedPackages = await linkBinsOfPackages((await Promise.all(directPkgs.map(async (dep) => {
                const manifest = (await dep.fetching?.())?.bundledManifest ?? await safeReadProjectManifestOnly(dep.dir);
                return {
                  location: dep.dir,
                  manifest
                };
              }))).filter(({ manifest }) => manifest != null), project.binsDir, {
                extraNodePaths: ctx.extraNodePaths,
                preferSymlinkedExecutables: opts2.preferSymlinkedExecutables
              });
            }
            const projectToInstall = projects[index];
            if (opts2.global && projectToInstall.mutation.includes("install")) {
              for (const pkg of projectToInstall.wantedDependencies) {
                if (pkg.alias && !linkedPackages?.includes(pkg.alias)) {
                  logger.warn({ message: `${pkg.alias} has no binaries`, prefix: opts2.lockfileDir });
                }
              }
            }
          }));
        const projectsWithTargetDirs = getProjectsWithTargetDirs(projects, newLockfile, dependenciesGraph);
        const currentLockfileDir = path127.join(ctx.rootModulesDir, ".pnpm");
        await Promise.all([
          opts2.useLockfile && opts2.saveLockfile ? writeLockfilesAndRecordVerified({
            currentLockfile: result2.currentLockfile,
            currentLockfileDir,
            wantedLockfile: newLockfile,
            wantedLockfileDir: ctx.lockfileDir,
            cacheDir: opts2.cacheDir,
            resolutionVerifiers: opts2.resolutionVerifiers,
            ...lockfileOpts
          }) : writeCurrentLockfile(ctx.virtualStoreDir, result2.currentLockfile),
          (async () => {
            if (result2.currentLockfile.packages === void 0 && result2.removedDepPaths.size === 0) {
              return Promise.resolve();
            }
            const injectedDeps = {};
            for (const project of projectsWithTargetDirs) {
              if (project.targetDirs.length > 0) {
                injectedDeps[project.id] = project.targetDirs.map((targetDir) => path127.relative(opts2.lockfileDir, targetDir));
              }
            }
            return writeModulesManifest(ctx.rootModulesDir, {
              ...ctx.modulesFile,
              hoistedDependencies: result2.newHoistedDependencies,
              hoistPattern: ctx.hoistPattern,
              included: ctx.include,
              injectedDeps,
              ignoredBuilds,
              layoutVersion: LAYOUT_VERSION,
              nodeLinker: opts2.nodeLinker,
              packageManager: `${opts2.packageManager.name}@${opts2.packageManager.version}`,
              pendingBuilds: ctx.pendingBuilds,
              publicHoistPattern: ctx.publicHoistPattern,
              virtualStoreOnly: opts2.virtualStoreOnly,
              prunedAt: opts2.pruneVirtualStore || ctx.modulesFile == null ? (/* @__PURE__ */ new Date()).toUTCString() : ctx.modulesFile.prunedAt,
              registries: ctx.registries,
              skipped: Array.from(ctx.skipped),
              storeDir: ctx.storeDir,
              virtualStoreDir: ctx.virtualStoreDir,
              virtualStoreDirMaxLength: ctx.virtualStoreDirMaxLength,
              allowBuilds: opts2.allowBuilds
            });
          })()
        ]);
        if (!opts2.ignoreScripts && !opts2.virtualStoreOnly) {
          if (opts2.enablePnp) {
            opts2.scriptsOpts.extraEnv = {
              ...opts2.scriptsOpts.extraEnv,
              ...makeNodeRequireOption(path127.join(opts2.lockfileDir, ".pnp.cjs"))
            };
          }
          const projectsToBeBuilt = projectsWithTargetDirs.filter(({ mutation }) => mutation === "install");
          await runLifecycleHooksConcurrently(["preinstall", "install", "postinstall", "preprepare", "prepare", "postprepare"], projectsToBeBuilt, opts2.childConcurrency, opts2.scriptsOpts);
        }
      } else {
        if (opts2.useLockfile && opts2.saveLockfile && !isInstallationOnlyForLockfileCheck) {
          await writeWantedLockfileAndRecordVerified({
            lockfileDir: ctx.lockfileDir,
            lockfile: newLockfile,
            cacheDir: opts2.cacheDir,
            resolutionVerifiers: opts2.resolutionVerifiers,
            ...lockfileOpts
          });
        }
        if (opts2.nodeLinker !== "hoisted" && opts2.runPacquet == null) {
          stageLogger.debug({
            prefix: opts2.lockfileDir,
            stage: "importing_done"
          });
        }
      }
      await waitTillAllFetchingsFinish();
      const depsRequiringBuild = [];
      if (opts2.returnListOfDepsRequiringBuild) {
        await Promise.all(Object.entries(dependenciesGraph).map(async ([depPath, node]) => {
          if (node?.fetching == null)
            return;
          const { files } = await node.fetching();
          if (files.requiresBuild) {
            depsRequiringBuild.push(depPath);
          }
        }));
      }
      reportPeerDependencyIssues(peerDependencyIssuesByProjects, {
        lockfileDir: opts2.lockfileDir,
        strictPeerDependencies: opts2.strictPeerDependencies,
        rules: opts2.peerDependencyRules
      });
      if (!opts2.omitSummaryLog && opts2.runPacquet == null) {
        summaryLogger.debug({ prefix: opts2.lockfileDir });
      }
      if (originalLockfileForCheck != null) {
        opts2.lockfileCheck?.(originalLockfileForCheck, newLockfile);
      }
      return {
        updatedCatalogs,
        newLockfile,
        projects: projects.map(({ id, manifest, rootDir }) => ({
          manifest,
          peerDependencyIssues: peerDependencyIssuesByProjects[id],
          rootDir
        })),
        stats,
        depsRequiringBuild,
        ignoredBuilds,
        resolutionPolicyViolations
      };
    };
    installInContext = async (projects, ctx, opts2) => {
      try {
        const isPathInsideWorkspace = isSubdir.bind(null, opts2.lockfileDir);
        if (!opts2.frozenLockfile && opts2.useLockfile) {
          const allProjectsLocatedInsideWorkspace = Object.values(ctx.projects).filter((project) => isPathInsideWorkspace(project.rootDirRealPath ?? project.rootDir));
          if (allProjectsLocatedInsideWorkspace.length > projects.length) {
            const newProjects = [...projects];
            const getWantedDepsOpts = {
              autoInstallPeers: opts2.autoInstallPeers,
              includeDirect: opts2.includeDirect,
              updateWorkspaceDependencies: false,
              injectWorkspacePackages: opts2.injectWorkspacePackages
            };
            const _isWantedDepBareSpecifierSame = isWantedDepBareSpecifierSame.bind(null, ctx.wantedLockfile.catalogs, opts2.catalogs);
            for (const project of allProjectsLocatedInsideWorkspace) {
              if (!newProjects.some(({ rootDir }) => rootDir === project.rootDir)) {
                const wantedDependencies = getWantedDependencies(project.manifest, getWantedDepsOpts).map((wantedDependency) => ({ ...wantedDependency, updateSpec: true, preserveNonSemverVersionSpec: true }));
                forgetResolutionsOfPrevWantedDeps(ctx.wantedLockfile.importers[project.id], wantedDependencies, _isWantedDepBareSpecifierSame);
                newProjects.push({
                  mutation: "install",
                  ...project,
                  wantedDependencies,
                  pruneDirectDependencies: false,
                  updatePackageManifest: false
                });
              }
            }
            const result2 = await installInContext(newProjects, ctx, {
              ...opts2,
              lockfileOnly: true
            });
            const { stats, ignoredBuilds } = await materializeOrDelegate(opts2, () => headlessInstall({
              ...ctx,
              ...opts2,
              currentEngine: {
                nodeVersion: opts2.nodeVersion,
                pnpmVersion: opts2.packageManager.name === "pnpm" ? opts2.packageManager.version : ""
              },
              currentHoistedLocations: ctx.modulesFile?.hoistedLocations,
              selectedProjectDirs: projects.map((project) => project.rootDir),
              allProjects: ctx.projects,
              prunedAt: ctx.modulesFile?.prunedAt,
              wantedLockfile: result2.newLockfile,
              useLockfile: opts2.useLockfile && ctx.wantedLockfileIsModified,
              hoistWorkspacePackages: opts2.hoistWorkspacePackages
            }));
            return {
              ...result2,
              stats,
              ignoredBuilds
            };
          }
        }
        if (opts2.nodeLinker === "hoisted" && !opts2.lockfileOnly) {
          const result2 = await _installInContext(projects, ctx, {
            ...opts2,
            lockfileOnly: true
          });
          const { stats, ignoredBuilds } = await materializeOrDelegate(opts2, () => headlessInstall({
            ...ctx,
            ...opts2,
            currentEngine: {
              nodeVersion: opts2.nodeVersion,
              pnpmVersion: opts2.packageManager.name === "pnpm" ? opts2.packageManager.version : ""
            },
            currentHoistedLocations: ctx.modulesFile?.hoistedLocations,
            selectedProjectDirs: projects.map((project) => project.rootDir),
            allProjects: ctx.projects,
            prunedAt: ctx.modulesFile?.prunedAt,
            wantedLockfile: result2.newLockfile,
            useLockfile: opts2.useLockfile && ctx.wantedLockfileIsModified,
            hoistWorkspacePackages: opts2.hoistWorkspacePackages
          }));
          return {
            ...result2,
            stats,
            ignoredBuilds
          };
        }
        if (opts2.runPacquet != null && !opts2.lockfileOnly) {
          const result2 = await _installInContext(projects, ctx, { ...opts2, lockfileOnly: true });
          await opts2.runPacquet({ filterResolvedProgress: true });
          return result2;
        }
        return await _installInContext(projects, ctx, opts2);
      } catch (error) {
        if (!BROKEN_LOCKFILE_INTEGRITY_ERRORS.has(error.code) || !ctx.existsNonEmptyWantedLockfile && !ctx.existsCurrentLockfile)
          throw error;
        opts2.needsFullResolution = true;
        for (const project of projects) {
          project.update = true;
        }
        logger.warn({
          error,
          message: error.message,
          prefix: ctx.lockfileDir
        });
        logger.error(new PnpmError(error.code, "The lockfile is broken! A full installation will be performed in an attempt to fix it."));
        return _installInContext(projects, ctx, opts2);
      } finally {
        await opts2.storeController.close();
      }
    };
    limitLinking5 = pLimit(16);
    IgnoredBuildsError = class extends PnpmError {
      constructor(ignoredBuilds) {
        const packageNames = dedupePackageNamesFromIgnoredBuilds(ignoredBuilds);
        super("IGNORED_BUILDS", `Ignored build scripts: ${packageNames.join(", ")}`, {
          hint: 'Run "pnpm approve-builds" to pick which dependencies should be allowed to run scripts.'
        });
      }
    };
  }
});

// ../installing/deps-installer/lib/api.js
var init_api = __esm({
  "../installing/deps-installer/lib/api.js"() {
    "use strict";
    init_getPeerDependencyIssues();
    init_install();
    init_reportPeerDependencyIssues();
  }
});

// ../installing/deps-installer/lib/index.js
var init_lib124 = __esm({
  "../installing/deps-installer/lib/index.js"() {
    "use strict";
    init_api();
    init_UnexpectedStoreError();
    init_UnexpectedVirtualStoreDirError();
    init_lib87();
  }
});

// ../global/commands/lib/installGlobalPackages.js
async function installGlobalPackages(opts2, params) {
  const store = await createStoreController(opts2);
  let { manifest, writeProjectManifest: writeProjectManifest2 } = await tryReadProjectManifest2(opts2.dir, opts2);
  if (manifest == null) {
    manifest = {};
  }
  const installOpts = {
    ...opts2,
    allowBuilds: { ...opts2.allowBuilds },
    storeController: store.ctrl,
    storeDir: store.dir
  };
  const pinnedVersion = opts2.saveExact ? "patch" : opts2.savePrefix === "~" ? "minor" : "major";
  const { updatedProject, ignoredBuilds, resolutionPolicyViolations } = await mutateModulesInSingleProject({
    allowNew: true,
    binsDir: opts2.bin,
    dependencySelectors: params,
    manifest,
    mutation: "installSome",
    peer: false,
    pinnedVersion,
    rootDir: opts2.dir,
    targetDependenciesField: "dependencies"
  }, installOpts);
  await writeProjectManifest2(updatedProject.manifest);
  return { ignoredBuilds, resolutionPolicyViolations };
}
var init_installGlobalPackages = __esm({
  "../global/commands/lib/installGlobalPackages.js"() {
    "use strict";
    init_lib29();
    init_lib124();
    init_lib90();
  }
});

// ../global/commands/lib/promptApproveGlobalBuilds.js
async function promptApproveGlobalBuilds(opts2, commands2) {
  if (!opts2.ignoredBuilds?.size)
    return;
  const autoApproveForTests = process.env[AUTO_APPROVE_FOR_TESTS_ENV] === "1";
  if (!autoApproveForTests && !process.stdin.isTTY)
    return;
  await commands2["approve-builds"]({
    ...opts2.inheritedOpts,
    workspaceDir: void 0,
    allProjects: void 0,
    selectedProjectsGraph: void 0,
    workspacePackagePatterns: void 0,
    modulesDir: void 0,
    dir: opts2.installDir,
    lockfileDir: opts2.installDir,
    rootProjectManifest: void 0,
    rootProjectManifestDir: opts2.installDir,
    settingsDir: opts2.globalPkgDir,
    global: false,
    pending: false,
    allowBuilds: opts2.allowBuilds,
    // When set, makes `approve-builds` skip both its multiselect and
    // confirm prompts and approve every pending build.
    all: autoApproveForTests ? true : void 0
  }, [], commands2);
}
var AUTO_APPROVE_FOR_TESTS_ENV;
var init_promptApproveGlobalBuilds = __esm({
  "../global/commands/lib/promptApproveGlobalBuilds.js"() {
    "use strict";
    AUTO_APPROVE_FOR_TESTS_ENV = "PNPM_AUTO_APPROVE_BUILDS_FOR_TESTS";
  }
});

// ../global/commands/lib/readInstalledPackages.js
import path128 from "node:path";
async function readInstalledPackages(installDir) {
  const pkgJson2 = readPackageJsonFromDirRawSync(installDir);
  const depNames = Object.keys(pkgJson2.dependencies ?? {});
  const manifests = await Promise.all(depNames.map((depName) => readPackageJsonFromDir(path128.join(installDir, "node_modules", depName))));
  return depNames.map((depName, i2) => ({
    manifest: manifests[i2],
    location: path128.join(installDir, "node_modules", depName)
  }));
}
var init_readInstalledPackages = __esm({
  "../global/commands/lib/readInstalledPackages.js"() {
    "use strict";
    init_lib39();
  }
});

// ../global/commands/lib/globalAdd.js
import fs71 from "node:fs";
import path129 from "node:path";
async function handleGlobalAdd(opts2, params, commands2) {
  const globalDir = opts2.globalPkgDir;
  const globalBinDir = opts2.bin;
  cleanOrphanedInstallDirs(globalDir);
  let allowBuilds = opts2.allowBuilds ?? {};
  if (opts2.allowBuild?.length) {
    allowBuilds = { ...allowBuilds };
    for (const pkg of opts2.allowBuild) {
      allowBuilds[pkg] = true;
    }
  }
  const groups = params.map((param) => splitCommaSeparated(param, opts2.dir).map((token) => resolveLocalParam(token, opts2.dir))).filter((group) => group.length > 0);
  for (const group of groups) {
    await installGroup({ opts: opts2, globalDir, globalBinDir, allowBuilds, params: group }, commands2);
  }
  summaryLogger.debug({ prefix: globalDir });
}
async function installGroup(ctx, commands2) {
  const { opts: opts2, globalDir, globalBinDir, allowBuilds, params } = ctx;
  const installDir = createInstallDir(globalDir);
  const include = {
    dependencies: true,
    devDependencies: false,
    optionalDependencies: true
  };
  const fetchFullMetadata = opts2.supportedArchitectures?.libc != null && true;
  const installOpts = {
    ...opts2,
    global: false,
    bin: path129.join(installDir, "node_modules/.bin"),
    dir: installDir,
    lockfileDir: installDir,
    rootProjectManifestDir: installDir,
    rootProjectManifest: void 0,
    saveProd: true,
    saveDev: false,
    saveOptional: false,
    savePeer: false,
    workspaceDir: void 0,
    sharedWorkspaceLockfile: false,
    lockfileOnly: false,
    fetchFullMetadata,
    include,
    includeDirect: include,
    allowBuilds,
    omitSummaryLog: true
  };
  const { ignoredBuilds, resolutionPolicyViolations } = await installGlobalPackages(installOpts, params);
  await promptApproveGlobalBuilds({
    globalPkgDir: globalDir,
    installDir,
    ignoredBuilds,
    allowBuilds,
    inheritedOpts: opts2
  }, commands2);
  const pkgJson2 = readPackageJsonFromDirRawSync(installDir);
  const aliases = Object.keys(pkgJson2.dependencies ?? {});
  const pkgs = await readInstalledPackages(installDir);
  let binsToSkip;
  try {
    binsToSkip = await checkGlobalBinConflicts({
      globalDir,
      globalBinDir,
      newPkgs: pkgs,
      shouldSkip: (pkg) => aliases.some((alias) => alias in pkg.dependencies)
    });
  } catch (err) {
    await fs71.promises.rm(installDir, { recursive: true, force: true });
    throw err;
  }
  await removeExistingGlobalInstalls(globalDir, globalBinDir, aliases);
  const cacheHash = createGlobalCacheKey({
    aliases,
    registries: opts2.registries
  });
  const hashLink = getHashLink(globalDir, cacheHash);
  await symlinkDir(installDir, hashLink, { overwrite: true });
  await linkBinsOfPackages(pkgs, globalBinDir, { excludeBins: binsToSkip });
  await opts2.updateResolutionPolicyManifest?.(resolutionPolicyViolations, globalDir);
}
function splitCommaSeparated(param, baseDir) {
  if (!param.includes(","))
    return [param];
  if (param.includes("://"))
    return [param];
  if (refersToExistingLocalPath(param, baseDir))
    return [param];
  return param.split(",").map((token) => token.trim()).filter(Boolean);
}
function refersToExistingLocalPath(param, baseDir) {
  let pathPart;
  if (param.startsWith("file:")) {
    pathPart = param.slice("file:".length);
  } else if (param.startsWith("link:")) {
    pathPart = param.slice("link:".length);
  } else if (param[0] === "." || param[0] === "/" || param[0] === "~") {
    pathPart = param;
  } else if (/^[a-z]:[/\\]/i.test(param)) {
    pathPart = param;
  } else {
    return false;
  }
  const resolved = path129.isAbsolute(pathPart) ? pathPart : path129.resolve(baseDir, pathPart);
  try {
    fs71.statSync(resolved);
    return true;
  } catch {
    return false;
  }
}
function resolveLocalParam(param, baseDir) {
  for (const prefix of ["file:", "link:"]) {
    if (param.startsWith(prefix)) {
      const rest = param.slice(prefix.length);
      if (rest.startsWith(".")) {
        return prefix + path129.resolve(baseDir, rest);
      }
      return param;
    }
  }
  if (param.startsWith(".")) {
    return path129.resolve(baseDir, param);
  }
  return param;
}
async function removeExistingGlobalInstalls(globalDir, globalBinDir, aliases) {
  const groupsToRemove = /* @__PURE__ */ new Map();
  for (const alias of aliases) {
    const existing = findGlobalPackage(globalDir, alias);
    if (existing && !groupsToRemove.has(existing.hash)) {
      groupsToRemove.set(existing.hash, getInstalledBinNames(existing));
    }
  }
  await Promise.all([...groupsToRemove.entries()].map(async ([hash2, binNamesPromise]) => {
    const binNames = await binNamesPromise;
    await Promise.all(binNames.map((binName) => removeBin(path129.join(globalBinDir, binName))));
    const hashLink = getHashLink(globalDir, hash2);
    let installDir = null;
    try {
      installDir = fs71.realpathSync(hashLink);
    } catch {
    }
    await fs71.promises.rm(hashLink, { force: true });
    if (installDir && isSubdir(globalDir, installDir)) {
      await fs71.promises.rm(installDir, { recursive: true, force: true });
    }
  }));
}
var init_globalAdd = __esm({
  "../global/commands/lib/globalAdd.js"() {
    "use strict";
    init_lib42();
    init_lib102();
    init_lib6();
    init_lib101();
    init_lib39();
    init_is_subdir();
    init_dist4();
    init_checkGlobalBinConflicts();
    init_installGlobalPackages();
    init_promptApproveGlobalBuilds();
    init_readInstalledPackages();
  }
});

// ../global/commands/lib/globalRemove.js
import fs72 from "node:fs";
import path130 from "node:path";
async function handleGlobalRemove(opts2, params) {
  const globalDir = opts2.globalPkgDir;
  const globalBinDir = opts2.bin;
  const groupsToRemove = /* @__PURE__ */ new Map();
  for (const param of params) {
    const pkg = findGlobalPackage(globalDir, param);
    if (!pkg) {
      throw new PnpmError("GLOBAL_PKG_NOT_FOUND", `Cannot remove '${param}': not found in global packages`);
    }
    groupsToRemove.set(pkg.hash, pkg);
  }
  await Promise.all([...groupsToRemove.entries()].map(async ([hash2, pkg]) => {
    const binNames = await getInstalledBinNames(pkg);
    await Promise.all(binNames.map((binName) => removeBin(path130.join(globalBinDir, binName))));
    await fs72.promises.rm(getHashLink(globalDir, hash2), { force: true });
    if (isSubdir(globalDir, pkg.installDir)) {
      await fs72.promises.rm(pkg.installDir, { recursive: true, force: true });
    }
  }));
}
var init_globalRemove = __esm({
  "../global/commands/lib/globalRemove.js"() {
    "use strict";
    init_lib102();
    init_lib2();
    init_lib101();
    init_is_subdir();
  }
});

// ../global/commands/lib/globalUpdate.js
import fs73 from "node:fs";
import path131 from "node:path";
async function handleGlobalUpdate(opts2, params, commands2) {
  const globalDir = opts2.globalPkgDir;
  const globalBinDir = opts2.bin;
  cleanOrphanedInstallDirs(globalDir);
  const allPackages = scanGlobalPackages(globalDir);
  if (allPackages.length === 0) {
    return "No global packages found";
  }
  let packagesToUpdate;
  if (params.length > 0) {
    packagesToUpdate = allPackages.filter((pkg) => params.some((p) => p in pkg.dependencies));
    if (packagesToUpdate.length === 0) {
      return "No matching global packages found";
    }
  } else {
    packagesToUpdate = allPackages;
  }
  for (const pkg of packagesToUpdate) {
    await updateGlobalPackageGroup(opts2, globalDir, globalBinDir, pkg, commands2);
  }
  return void 0;
}
async function updateGlobalPackageGroup(opts2, globalDir, globalBinDir, pkg, commands2) {
  const installDir = createInstallDir(globalDir);
  const depSpecs = Object.entries(pkg.dependencies).map(([alias, spec]) => opts2.latest ? alias : `${alias}@${spec}`);
  const include = {
    dependencies: true,
    devDependencies: false,
    optionalDependencies: true
  };
  const fetchFullMetadata = opts2.supportedArchitectures?.libc != null && true;
  const allowBuilds = opts2.allowBuilds ?? {};
  const { ignoredBuilds, resolutionPolicyViolations } = await installGlobalPackages({
    ...opts2,
    global: false,
    bin: path131.join(installDir, "node_modules/.bin"),
    dir: installDir,
    lockfileDir: installDir,
    rootProjectManifestDir: installDir,
    rootProjectManifest: void 0,
    saveProd: true,
    saveDev: false,
    saveOptional: false,
    savePeer: false,
    workspaceDir: void 0,
    sharedWorkspaceLockfile: false,
    lockfileOnly: false,
    fetchFullMetadata,
    include,
    includeDirect: include,
    allowBuilds
  }, depSpecs);
  await promptApproveGlobalBuilds({
    globalPkgDir: globalDir,
    installDir,
    ignoredBuilds,
    allowBuilds,
    inheritedOpts: opts2
  }, commands2);
  const pkgs = await readInstalledPackages(installDir);
  let binsToSkip;
  try {
    binsToSkip = await checkGlobalBinConflicts({
      globalDir,
      globalBinDir,
      newPkgs: pkgs,
      shouldSkip: (existingPkg) => existingPkg.hash === pkg.hash
    });
  } catch (err) {
    await fs73.promises.rm(installDir, { recursive: true, force: true });
    throw err;
  }
  const oldBinNames = await getInstalledBinNames(pkg);
  await Promise.all(oldBinNames.map((binName) => removeBin(path131.join(globalBinDir, binName))));
  const hashLink = getHashLink(globalDir, pkg.hash);
  const oldInstallDir = pkg.installDir;
  await symlinkDir(installDir, hashLink, { overwrite: true });
  if (isSubdir(globalDir, oldInstallDir)) {
    await fs73.promises.rm(oldInstallDir, { recursive: true, force: true });
  }
  await linkBinsOfPackages(pkgs, globalBinDir, { excludeBins: binsToSkip });
  await opts2.updateResolutionPolicyManifest?.(resolutionPolicyViolations, globalDir);
}
var init_globalUpdate = __esm({
  "../global/commands/lib/globalUpdate.js"() {
    "use strict";
    init_lib42();
    init_lib102();
    init_lib101();
    init_is_subdir();
    init_dist4();
    init_checkGlobalBinConflicts();
    init_installGlobalPackages();
    init_promptApproveGlobalBuilds();
    init_readInstalledPackages();
  }
});

// ../lockfile/detect-dep-types/lib/index.js
function detectDepTypes(lockfile) {
  const dev = {};
  const devDepPaths = Object.values(lockfile.importers).map((deps) => resolvedDepsToDepPaths2(deps.devDependencies ?? {})).flat();
  const optionalDepPaths = Object.values(lockfile.importers).map((deps) => resolvedDepsToDepPaths2(deps.optionalDependencies ?? {})).flat();
  const prodDepPaths = Object.values(lockfile.importers).map((deps) => resolvedDepsToDepPaths2(deps.dependencies ?? {})).flat();
  const ctx = {
    packages: lockfile.packages ?? {},
    walked: /* @__PURE__ */ new Set(),
    notProdOnly: /* @__PURE__ */ new Set(),
    dev
  };
  detectDepTypesInSubGraph(ctx, devDepPaths, {
    dev: true
  });
  detectDepTypesInSubGraph(ctx, optionalDepPaths, {
    dev: false
  });
  detectDepTypesInSubGraph(ctx, prodDepPaths, {
    dev: false
  });
  return dev;
}
function detectDepTypesInSubGraph(ctx, depPaths, opts2) {
  for (const depPath of depPaths) {
    const key = `${depPath}:${opts2.dev.toString()}`;
    if (ctx.walked.has(key))
      continue;
    ctx.walked.add(key);
    if (!ctx.packages[depPath]) {
      continue;
    }
    if (opts2.dev) {
      ctx.notProdOnly.add(depPath);
      ctx.dev[depPath] = DepType.DevOnly;
    } else if (ctx.dev[depPath] === DepType.DevOnly) {
      ctx.dev[depPath] = DepType.DevAndProd;
    } else if (ctx.dev[depPath] === void 0 && !ctx.notProdOnly.has(depPath)) {
      ctx.dev[depPath] = DepType.ProdOnly;
    }
    const depLockfile = ctx.packages[depPath];
    const newDependencies = resolvedDepsToDepPaths2(depLockfile.dependencies ?? {});
    detectDepTypesInSubGraph(ctx, newDependencies, opts2);
    const newOptionalDependencies = resolvedDepsToDepPaths2(depLockfile.optionalDependencies ?? {});
    detectDepTypesInSubGraph(ctx, newOptionalDependencies, { dev: opts2.dev });
  }
}
function resolvedDepsToDepPaths2(deps) {
  return Object.entries(deps).map(([alias, ref]) => refToRelative(ref, alias)).filter((depPath) => depPath !== null);
}
var DepType;
var init_lib125 = __esm({
  "../lockfile/detect-dep-types/lib/index.js"() {
    "use strict";
    init_lib65();
    DepType = {
      DevOnly: 0,
      DevAndProd: 1,
      ProdOnly: 2
    };
  }
});

// ../deps/inspection/tree-builder/lib/getTreeNodeChildId.js
import path132 from "node:path";
function getTreeNodeChildId(opts2) {
  const depPath = refToRelative(opts2.dep.ref, opts2.dep.alias);
  if (depPath !== null) {
    return { type: "package", depPath };
  }
  switch (opts2.parentId.type) {
    case "importer": {
      const linkValue = opts2.dep.ref.slice("link:".length);
      const absoluteLinkedPath = path132.join(opts2.lockfileDir, opts2.parentId.importerId, linkValue);
      const childImporterId = getLockfileImporterId(opts2.lockfileDir, absoluteLinkedPath);
      const isLinkOutsideWorkspace = opts2.importers[childImporterId] == null;
      return isLinkOutsideWorkspace ? void 0 : { type: "importer", importerId: childImporterId };
    }
    case "package":
      return void 0;
  }
}
var init_getTreeNodeChildId = __esm({
  "../deps/inspection/tree-builder/lib/getTreeNodeChildId.js"() {
    "use strict";
    init_lib65();
    init_lib78();
  }
});

// ../deps/inspection/tree-builder/lib/TreeNodeId.js
function serializeTreeNodeId(treeNodeId) {
  switch (treeNodeId.type) {
    case "importer": {
      const { type: type4, importerId } = treeNodeId;
      return JSON.stringify({ type: type4, importerId });
    }
    case "package": {
      const { type: type4, depPath } = treeNodeId;
      return JSON.stringify({ type: type4, depPath });
    }
    default:
      throw new Error(`Unknown TreeNodeId type: ${treeNodeId.type}`);
  }
}
var init_TreeNodeId = __esm({
  "../deps/inspection/tree-builder/lib/TreeNodeId.js"() {
    "use strict";
  }
});

// ../deps/inspection/tree-builder/lib/buildDependencyGraph.js
function buildDependencyGraph(rootIds, opts2) {
  const graph = { nodes: /* @__PURE__ */ new Map() };
  const queue2 = [...rootIds];
  let queueIdx = 0;
  const visited = /* @__PURE__ */ new Set();
  while (queueIdx < queue2.length) {
    const nodeId = queue2[queueIdx++];
    const serialized = serializeTreeNodeId(nodeId);
    if (visited.has(serialized))
      continue;
    visited.add(serialized);
    const snapshot = getSnapshot(nodeId, opts2);
    if (!snapshot) {
      graph.nodes.set(serialized, { nodeId, edges: [], peers: /* @__PURE__ */ new Set() });
      continue;
    }
    const deps = nodeId.type === "importer" ? {
      ...opts2.include.dependencies !== false ? snapshot.dependencies : void 0,
      ...opts2.include.devDependencies !== false ? snapshot.devDependencies : void 0,
      ...opts2.include.optionalDependencies ? snapshot.optionalDependencies : void 0
    } : !opts2.include.optionalDependencies ? snapshot.dependencies : {
      ...snapshot.dependencies,
      ...snapshot.optionalDependencies
    };
    const peers = new Set(Object.keys(nodeId.type === "package" ? opts2.currentPackages[nodeId.depPath]?.peerDependencies ?? {} : {}));
    const edges = [];
    if (deps != null) {
      for (const alias in deps) {
        const rawRef = deps[alias];
        const ref = typeof rawRef === "string" ? rawRef : rawRef?.version;
        if (ref == null)
          continue;
        const targetNodeId = getTreeNodeChildId({
          parentId: nodeId,
          dep: { alias, ref },
          lockfileDir: opts2.lockfileDir,
          importers: opts2.importers
        });
        if (opts2.onlyProjects && targetNodeId?.type !== "importer") {
          continue;
        }
        const target2 = targetNodeId != null ? { id: serializeTreeNodeId(targetNodeId), nodeId: targetNodeId } : void 0;
        edges.push({ alias, ref, target: target2 });
        if (target2 && !visited.has(target2.id)) {
          queue2.push(target2.nodeId);
        }
      }
    }
    graph.nodes.set(serialized, { nodeId, edges, peers });
  }
  return graph;
}
function getSnapshot(treeNodeId, opts2) {
  switch (treeNodeId.type) {
    case "importer":
      return opts2.importers[treeNodeId.importerId];
    case "package":
      return opts2.currentPackages[treeNodeId.depPath];
  }
}
var init_buildDependencyGraph = __esm({
  "../deps/inspection/tree-builder/lib/buildDependencyGraph.js"() {
    "use strict";
    init_getTreeNodeChildId();
    init_TreeNodeId();
  }
});

// ../deps/inspection/tree-builder/lib/readManifestFromCafs.js
function readManifestFromCafs(storeDir, storeIndex, pkg) {
  try {
    const pkgId = `${pkg.name}@${pkg.version}`;
    const indexPath = storeIndexKey(pkg.integrity, pkgId);
    const pkgIndex = storeIndex.get(indexPath);
    if (!pkgIndex)
      return void 0;
    const pkgJsonEntry = pkgIndex.files.get("package.json");
    if (pkgJsonEntry) {
      const filePath = getFilePathByModeInCafs(storeDir, pkgJsonEntry.digest, pkgJsonEntry.mode);
      return loadJsonFileSync(filePath);
    }
  } catch {
  }
  return void 0;
}
var init_readManifestFromCafs = __esm({
  "../deps/inspection/tree-builder/lib/readManifestFromCafs.js"() {
    "use strict";
    init_lib81();
    init_lib16();
    init_load_json_file();
  }
});

// ../deps/inspection/tree-builder/lib/resolvePackagePath.js
import fs74 from "node:fs";
import path133 from "node:path";
function resolvePackagePath(opts2) {
  let fullPackagePath = path133.join(opts2.virtualStoreDir, depPathToFilename(opts2.depPath, opts2.virtualStoreDirMaxLength), "node_modules", opts2.name);
  const resolvedVirtualStoreDir = path133.resolve(opts2.virtualStoreDir);
  const resolvedModulesDir = opts2.modulesDir ? path133.resolve(opts2.modulesDir) : void 0;
  const isGlobalVirtualStore = resolvedModulesDir && !resolvedVirtualStoreDir.startsWith(resolvedModulesDir + path133.sep) && resolvedVirtualStoreDir !== resolvedModulesDir;
  if (isGlobalVirtualStore) {
    try {
      let nodeModulesDir;
      if (opts2.parentDir) {
        nodeModulesDir = path133.dirname(opts2.parentDir);
        if (path133.basename(nodeModulesDir).startsWith("@")) {
          nodeModulesDir = path133.dirname(nodeModulesDir);
        }
      } else if (opts2.modulesDir) {
        nodeModulesDir = opts2.modulesDir;
      } else {
        return fullPackagePath;
      }
      fullPackagePath = fs74.realpathSync(path133.join(nodeModulesDir, opts2.alias));
    } catch {
    }
  }
  return fullPackagePath;
}
var init_resolvePackagePath = __esm({
  "../deps/inspection/tree-builder/lib/resolvePackagePath.js"() {
    "use strict";
    init_lib65();
  }
});

// ../deps/inspection/tree-builder/lib/getPkgInfo.js
import path134 from "node:path";
function getPkgInfo(opts2) {
  let name;
  let version2;
  let resolved;
  let depType;
  let optional;
  let isSkipped = false;
  let isMissing = false;
  let integrity;
  const depPath = refToRelative(opts2.ref, opts2.alias);
  if (depPath) {
    let pkgSnapshot;
    if (opts2.currentPackages[depPath]) {
      pkgSnapshot = opts2.currentPackages[depPath];
      const parsed = nameVerFromPkgSnapshot(depPath, pkgSnapshot);
      name = parsed.name;
      version2 = parsed.version;
    } else {
      pkgSnapshot = opts2.wantedPackages[depPath];
      if (pkgSnapshot) {
        const parsed = nameVerFromPkgSnapshot(depPath, pkgSnapshot);
        name = parsed.name;
        version2 = parsed.version;
      } else {
        name = opts2.alias;
        version2 = opts2.ref;
      }
      isMissing = true;
      isSkipped = opts2.skipped.has(depPath);
    }
    if (pkgSnapshot) {
      resolved = pkgSnapshotToResolution(depPath, pkgSnapshot, opts2.registries).tarball;
      optional = pkgSnapshot.optional;
      if ("integrity" in pkgSnapshot.resolution) {
        integrity = pkgSnapshot.resolution.integrity;
      }
    }
    depType = opts2.depTypes[depPath];
  } else {
    name = opts2.alias;
    version2 = opts2.ref;
  }
  if (!version2) {
    version2 = opts2.ref;
  }
  const fullPackagePath = depPath ? resolvePackagePath({
    depPath,
    name,
    alias: opts2.alias,
    virtualStoreDir: opts2.virtualStoreDir ?? ".pnpm",
    virtualStoreDirMaxLength: opts2.virtualStoreDirMaxLength,
    modulesDir: opts2.modulesDir,
    parentDir: opts2.parentDir
  }) : path134.join(opts2.linkedPathBaseDir, opts2.ref.slice(5));
  if (version2.startsWith("link:") && opts2.rewriteLinkVersionDir) {
    version2 = `link:${(0, import_normalize_path9.default)(path134.relative(opts2.rewriteLinkVersionDir, fullPackagePath))}`;
  }
  const packageInfo = {
    alias: opts2.alias,
    isMissing,
    isPeer: Boolean(opts2.peers?.has(opts2.alias)),
    isSkipped,
    name,
    path: fullPackagePath,
    version: version2
  };
  if (resolved) {
    packageInfo.resolved = resolved;
  }
  if (optional === true) {
    packageInfo.optional = true;
  }
  if (depType === DepType.DevOnly) {
    packageInfo.dev = true;
  } else if (depType === DepType.ProdOnly) {
    packageInfo.dev = false;
  }
  return {
    pkgInfo: packageInfo,
    readManifest: () => {
      if (integrity && opts2.storeDir && opts2.storeIndex) {
        const manifest = readManifestFromCafs(opts2.storeDir, opts2.storeIndex, { integrity, name, version: version2 });
        if (manifest)
          return manifest;
      }
      return readPackageJsonFromDirSync(fullPackagePath);
    }
  };
}
var import_normalize_path9;
var init_getPkgInfo = __esm({
  "../deps/inspection/tree-builder/lib/getPkgInfo.js"() {
    "use strict";
    init_lib65();
    init_lib125();
    init_lib70();
    init_lib39();
    import_normalize_path9 = __toESM(require_normalize_path(), 1);
    init_readManifestFromCafs();
    init_resolvePackagePath();
  }
});

// ../deps/inspection/tree-builder/lib/peersSuffixHash.js
import crypto7 from "node:crypto";
function peersSuffixHashFromDepPath(depPath) {
  const { peerDepGraphHash } = parseDepPath(depPath);
  if (!peerDepGraphHash)
    return void 0;
  return crypto7.createHash("sha256").update(peerDepGraphHash).digest("hex").slice(0, 4);
}
var init_peersSuffixHash = __esm({
  "../deps/inspection/tree-builder/lib/peersSuffixHash.js"() {
    "use strict";
    init_lib65();
  }
});

// ../deps/inspection/tree-builder/lib/getTree.js
import path135 from "node:path";
function getTree(opts2, parentId) {
  const ancestors = /* @__PURE__ */ new Set();
  ancestors.add(serializeTreeNodeId(parentId));
  const ctx = {
    ...opts2,
    ancestors
  };
  const result2 = materializeChildren(ctx, parentId, opts2.maxDepth, opts2.parentDir);
  const circularAncestors = /* @__PURE__ */ new Set();
  if (opts2.parentDir) {
    circularAncestors.add(opts2.parentDir);
  }
  return fixCircularRefs(result2.nodes, circularAncestors);
}
function materializeCacheKey(nodeId, depth) {
  if (depth === Infinity)
    return nodeId;
  return `${nodeId}@d${depth}`;
}
function materializeChildren(ctx, parentId, maxDepth, parentDir) {
  if (maxDepth <= 0)
    return { nodes: [], count: 0, hasSearchMatch: false, searchMessages: [] };
  const parentSerialized = serializeTreeNodeId(parentId);
  const graphNode = ctx.graph.nodes.get(parentSerialized);
  if (!graphNode) {
    throw new Error(`Node ${parentSerialized} not found in the dependency graph`);
  }
  const childTreeMaxDepth = maxDepth - 1;
  const linkedPathBaseDir = parentId.type === "importer" ? path135.join(ctx.lockfileDir, parentId.importerId) : ctx.lockfileDir;
  const resultDependencies = [];
  let resultCount = 0;
  let resultHasSearchMatch = false;
  const resultSearchMessages = ctx.showDedupedSearchMatches ? [] : void 0;
  const sortedEdges = [...graphNode.edges].sort((a2, b) => (0, import_util14.lexCompare)(a2.alias, b.alias));
  for (const edge of sortedEdges) {
    if (ctx.onlyProjects && edge.target?.nodeId.type !== "importer") {
      continue;
    }
    const { pkgInfo: packageInfo, readManifest } = getPkgInfo({
      ...ctx,
      alias: edge.alias,
      ref: edge.ref,
      peers: graphNode.peers,
      linkedPathBaseDir,
      parentDir
    });
    const searchMatch = ctx.search?.({
      alias: edge.alias,
      name: packageInfo.name,
      version: packageInfo.version,
      readManifest
    });
    let newEntry = null;
    let childCount = 0;
    let dedupedHasSearchMatch = false;
    let dedupedSearchMessages = [];
    if (edge.target == null) {
      if (ctx.search == null || searchMatch) {
        newEntry = packageInfo;
      } else {
        continue;
      }
    } else {
      let dependencies;
      let childHasSearchMatch = false;
      let childSearchMessages = [];
      let dedupedCount;
      const circular = ctx.ancestors.has(edge.target.id);
      if (circular) {
        dependencies = [];
      } else {
        const cacheKey = materializeCacheKey(edge.target.id, childTreeMaxDepth);
        const cached = ctx.materializationCache.get(cacheKey);
        if (cached !== void 0) {
          dependencies = [];
          if (cached.count > 0) {
            dedupedCount = cached.count;
          }
          if (ctx.showDedupedSearchMatches) {
            dedupedHasSearchMatch = cached.hasSearchMatch;
            dedupedSearchMessages = cached.searchMessages;
          }
        } else {
          ctx.ancestors.add(edge.target.id);
          const childResult = materializeChildren(ctx, edge.target.nodeId, childTreeMaxDepth, packageInfo.path);
          ctx.ancestors.delete(edge.target.id);
          dependencies = childResult.nodes;
          childCount = childResult.count;
          childHasSearchMatch = childResult.hasSearchMatch;
          childSearchMessages = childResult.searchMessages;
          ctx.materializationCache.set(cacheKey, {
            count: childCount,
            hasSearchMatch: childHasSearchMatch,
            searchMessages: childSearchMessages
          });
        }
        if (childHasSearchMatch || dedupedHasSearchMatch) {
          resultHasSearchMatch = true;
        }
        resultSearchMessages?.push(...childSearchMessages, ...dedupedSearchMessages);
      }
      if (dependencies.length > 0) {
        newEntry = {
          ...packageInfo,
          dependencies
        };
      } else if (ctx.search == null || searchMatch || dedupedHasSearchMatch) {
        newEntry = packageInfo;
      } else {
        continue;
      }
      if (dedupedCount != null) {
        newEntry.deduped = true;
        newEntry.dedupedDependenciesCount = dedupedCount;
      }
      if (edge.target.nodeId.type === "package") {
        const peerHash = peersSuffixHashFromDepPath(edge.target.nodeId.depPath);
        if (peerHash != null) {
          newEntry.peersSuffixHash = peerHash;
        }
      }
    }
    if (searchMatch) {
      newEntry.searched = true;
      resultHasSearchMatch = true;
      if (typeof searchMatch === "string") {
        newEntry.searchMessage = searchMatch;
        resultSearchMessages?.push(searchMatch);
      }
    } else if (dedupedHasSearchMatch) {
      newEntry.searched = true;
      if (dedupedSearchMessages.length > 0) {
        newEntry.searchMessage = dedupedSearchMessages.join("\n");
      }
    }
    if (!newEntry.isPeer || !ctx.excludePeerDependencies || newEntry.dependencies?.length) {
      resultDependencies.push(newEntry);
      resultCount += 1 + (newEntry.dependencies?.length ? childCount : 0);
    }
  }
  return {
    count: resultCount,
    hasSearchMatch: resultHasSearchMatch,
    nodes: resultDependencies,
    searchMessages: resultSearchMessages ?? []
  };
}
function fixCircularRefs(nodes, ancestors) {
  let changed = false;
  const result2 = nodes.map((node) => {
    if (node.path && ancestors.has(node.path)) {
      changed = true;
      const { dependencies: _, deduped: _d, dedupedDependenciesCount: _c, ...rest } = node;
      return { ...rest, circular: true };
    }
    if (!node.dependencies?.length)
      return node;
    ancestors.add(node.path);
    const fixedDeps = fixCircularRefs(node.dependencies, ancestors);
    ancestors.delete(node.path);
    if (fixedDeps !== node.dependencies) {
      changed = true;
      return { ...node, dependencies: fixedDeps };
    }
    return node;
  });
  return changed ? result2 : nodes;
}
var import_util14;
var init_getTree = __esm({
  "../deps/inspection/tree-builder/lib/getTree.js"() {
    "use strict";
    import_util14 = __toESM(require_dist3(), 1);
    init_getPkgInfo();
    init_peersSuffixHash();
    init_TreeNodeId();
  }
});

// ../deps/inspection/tree-builder/lib/buildDependenciesTree.js
import path136 from "node:path";
async function buildDependenciesTree(projectPaths, maybeOpts) {
  if (!maybeOpts?.lockfileDir) {
    throw new TypeError("opts.lockfileDir is required");
  }
  const modulesDir = await realpathMissing(pathAbsolute(maybeOpts.modulesDir ?? "node_modules", maybeOpts.lockfileDir));
  const modules = await readModulesManifest(modulesDir);
  const registries = normalizeRegistries({
    ...maybeOpts?.registries,
    ...modules?.registries
  });
  const internalPnpmDir = path136.join(modulesDir, ".pnpm");
  const currentLockfile = await readCurrentLockfile(internalPnpmDir, { ignoreIncompatible: false });
  const wantedLockfile = await readWantedLockfile(maybeOpts.lockfileDir, { ignoreIncompatible: false });
  if (projectPaths == null) {
    projectPaths = Object.keys(wantedLockfile?.importers ?? {}).map((id) => path136.join(maybeOpts.lockfileDir, id));
  }
  const result2 = {};
  const lockfileToUse = maybeOpts.checkWantedLockfileOnly ? wantedLockfile : currentLockfile ?? wantedLockfile;
  if (!lockfileToUse) {
    for (const projectPath of projectPaths) {
      result2[projectPath] = {};
    }
    return result2;
  }
  const storeDir = modules?.storeDir;
  const storeIndex = storeDir ? new StoreIndex(storeDir) : void 0;
  const opts2 = {
    depth: maybeOpts.depth || 0,
    excludePeerDependencies: maybeOpts.excludePeerDependencies,
    include: maybeOpts.include ?? {
      dependencies: true,
      devDependencies: true,
      optionalDependencies: true
    },
    lockfileDir: maybeOpts.lockfileDir,
    checkWantedLockfileOnly: maybeOpts.checkWantedLockfileOnly,
    onlyProjects: maybeOpts.onlyProjects,
    registries,
    search: maybeOpts.search,
    showDedupedSearchMatches: maybeOpts.showDedupedSearchMatches ?? maybeOpts.search != null,
    skipped: new Set(modules?.skipped ?? []),
    storeDir,
    storeIndex,
    modulesDir,
    virtualStoreDir: modules?.virtualStoreDir,
    virtualStoreDirMaxLength: modules?.virtualStoreDirMaxLength ?? maybeOpts.virtualStoreDirMaxLength
  };
  const allRootIds = [];
  for (const projectPath of projectPaths) {
    const importerId = getLockfileImporterId(opts2.lockfileDir, projectPath);
    if (lockfileToUse.importers[importerId]) {
      allRootIds.push({ type: "importer", importerId });
    }
  }
  const sharedGraph = buildDependencyGraph(allRootIds, {
    currentPackages: lockfileToUse.packages ?? {},
    importers: lockfileToUse.importers,
    include: opts2.include,
    lockfileDir: opts2.lockfileDir,
    onlyProjects: opts2.onlyProjects
  });
  const sharedMaterializationCache = /* @__PURE__ */ new Map();
  const sharedDepTypes = detectDepTypes(lockfileToUse);
  const ctx = {
    currentLockfile: lockfileToUse,
    wantedLockfile,
    ...opts2,
    graph: sharedGraph,
    materializationCache: sharedMaterializationCache,
    depTypes: sharedDepTypes
  };
  const getHierarchy = dependenciesHierarchyForPackage.bind(null, ctx);
  const pairs2 = await Promise.all(projectPaths.map(async (projectPath) => {
    return [
      projectPath,
      await getHierarchy(projectPath)
    ];
  }));
  for (const [projectPath, dependenciesHierarchy] of pairs2) {
    result2[projectPath] = dependenciesHierarchy;
  }
  storeIndex?.close();
  return result2;
}
async function dependenciesHierarchyForPackage(opts2, projectPath) {
  const { currentLockfile, wantedLockfile } = opts2;
  const importerId = getLockfileImporterId(opts2.lockfileDir, projectPath);
  if (!currentLockfile.importers[importerId])
    return {};
  const modulesDir = opts2.modulesDir && path136.isAbsolute(opts2.modulesDir) ? opts2.modulesDir : path136.join(projectPath, opts2.modulesDir ?? "node_modules");
  const currentPackages = currentLockfile.packages ?? {};
  const wantedPackages = wantedLockfile?.packages ?? {};
  const result2 = {};
  const fieldMap = /* @__PURE__ */ new Map();
  for (const field of DEPENDENCIES_FIELDS.sort().filter((f) => opts2.include[f])) {
    result2[field] = [];
    const fieldDeps = currentLockfile.importers[importerId][field] ?? {};
    for (const alias in fieldDeps) {
      fieldMap.set(alias, field);
    }
  }
  const parentId = { type: "importer", importerId };
  const nodes = getTree({
    ...opts2,
    currentPackages,
    importers: currentLockfile.importers,
    rewriteLinkVersionDir: projectPath,
    maxDepth: opts2.depth + 1,
    wantedPackages,
    modulesDir
  }, parentId);
  for (const node of nodes) {
    const field = fieldMap.get(node.alias);
    if (field != null) {
      result2[field].push(node);
    }
  }
  if (!opts2.search) {
    const savedDeps = getAllDirectDependencies(currentLockfile.importers[importerId]);
    const unsavedDeps = (await readModulesDir(modulesDir) ?? []).filter((directDep) => !savedDeps[directDep]);
    if (unsavedDeps.length > 0)
      await Promise.all(unsavedDeps.map(async (unsavedDep) => {
        let pkgPath = path136.join(modulesDir, unsavedDep);
        let version2;
        try {
          pkgPath = await resolveLinkTarget(pkgPath);
          version2 = `link:${(0, import_normalize_path10.default)(path136.relative(projectPath, pkgPath))}`;
        } catch {
          const pkg2 = await safeReadPackageJsonFromDir(pkgPath);
          version2 = pkg2?.version ?? "undefined";
        }
        const pkg = {
          alias: unsavedDep,
          isMissing: false,
          isPeer: false,
          isSkipped: false,
          name: unsavedDep,
          path: pkgPath,
          version: version2
        };
        result2.unsavedDependencies = result2.unsavedDependencies ?? [];
        result2.unsavedDependencies.push(pkg);
      }));
  }
  return result2;
}
function getAllDirectDependencies(projectSnapshot) {
  return {
    ...projectSnapshot.dependencies,
    ...projectSnapshot.devDependencies,
    ...projectSnapshot.optionalDependencies
  };
}
var import_normalize_path10;
var init_buildDependenciesTree = __esm({
  "../deps/inspection/tree-builder/lib/buildDependenciesTree.js"() {
    "use strict";
    init_lib74();
    init_lib41();
    init_lib75();
    init_lib125();
    init_lib78();
    init_lib39();
    init_lib16();
    init_lib8();
    import_normalize_path10 = __toESM(require_normalize_path(), 1);
    init_path_absolute();
    init_realpath_missing();
    init_resolve_link_target();
    init_buildDependencyGraph();
    init_getTree();
  }
});

// ../deps/inspection/tree-builder/lib/createPackagesSearcher.js
function createPackagesSearcher(queries, finders) {
  const searchers = queries.map(parseSearchQuery).map((packageSelector) => search.bind(null, packageSelector));
  return (pkg) => {
    if (searchers.length > 0 && searchers.some((search2) => search2(pkg))) {
      return true;
    }
    if (finders == null)
      return false;
    const messages = [];
    let found = false;
    for (const finder2 of finders) {
      const result2 = finder2(pkg);
      if (result2) {
        found = true;
        if (typeof result2 === "string") {
          messages.push(result2);
        }
      }
    }
    if (messages.length)
      return messages.join("\n");
    return found;
  };
}
function search(packageSelector, { alias, name, version: version2 }) {
  const nameMatches = packageSelector.matchName(name) || packageSelector.matchName(alias);
  if (!nameMatches) {
    return false;
  }
  if (packageSelector.matchVersion == null) {
    return true;
  }
  return !version2.startsWith("link:") && packageSelector.matchVersion(version2);
}
function parseSearchQuery(query) {
  const parsed = (0, import_npm_package_arg3.default)(query);
  if (parsed.raw === parsed.name) {
    return { matchName: createMatcher(parsed.name) };
  }
  if (parsed.type !== "version" && parsed.type !== "range") {
    throw new Error(`Invalid query - ${query}. List can search only by version or range`);
  }
  return {
    matchName: createMatcher(parsed.name),
    matchVersion: (version2) => import_semver38.default.satisfies(version2, parsed.fetchSpec)
  };
}
var import_npm_package_arg3, import_semver38;
var init_createPackagesSearcher = __esm({
  "../deps/inspection/tree-builder/lib/createPackagesSearcher.js"() {
    "use strict";
    init_lib14();
    import_npm_package_arg3 = __toESM(require_npa(), 1);
    import_semver38 = __toESM(require_semver2(), 1);
  }
});

// ../deps/inspection/tree-builder/lib/buildDependentsTree.js
import path137 from "node:path";
async function buildDependentsTree(packages, projectPaths, opts2) {
  const modulesDir = await realpathMissing(path137.join(opts2.lockfileDir, opts2.modulesDir ?? "node_modules"));
  const modules = await readModulesManifest(modulesDir);
  const registries = normalizeRegistries({
    ...opts2.registries,
    ...modules?.registries
  });
  const storeDir = modules?.storeDir;
  const storeIndex = storeDir ? new StoreIndex(storeDir) : void 0;
  const virtualStoreDir = modules?.virtualStoreDir ?? path137.join(modulesDir, ".pnpm");
  const virtualStoreDirMaxLength = modules?.virtualStoreDirMaxLength ?? 120;
  const include = opts2.include ?? {
    dependencies: true,
    devDependencies: true,
    optionalDependencies: true
  };
  const allRootIds = [];
  for (const projectPath of projectPaths) {
    const importerId = getLockfileImporterId(opts2.lockfileDir, projectPath);
    if (opts2.lockfile.importers[importerId]) {
      allRootIds.push({ type: "importer", importerId });
    }
  }
  const graph = buildDependencyGraph(allRootIds, {
    currentPackages: opts2.lockfile.packages ?? {},
    importers: opts2.lockfile.importers,
    include,
    lockfileDir: opts2.lockfileDir
  });
  const reverseMap = invertGraph(graph);
  const search2 = createPackagesSearcher(packages, opts2.finders);
  const currentPackages = opts2.lockfile.packages ?? {};
  const resolvedPackageNodes = resolvePackageNodes(graph, currentPackages, {
    virtualStoreDir,
    virtualStoreDirMaxLength,
    modulesDir,
    registries,
    wantedPackages: currentPackages,
    storeDir,
    storeIndex
  });
  const trees = [];
  const ctx = {
    reverseMap,
    graph,
    importers: opts2.lockfile.importers,
    currentPackages,
    importerInfoMap: opts2.importerInfoMap,
    resolvedPackageNodes,
    nameFormatter: opts2.nameFormatter,
    visited: /* @__PURE__ */ new Set(),
    expanded: /* @__PURE__ */ new Set()
  };
  for (const [serialized, node] of graph.nodes) {
    if (node.nodeId.type !== "package")
      continue;
    const depPath = node.nodeId.depPath;
    const snapshot = currentPackages[depPath];
    if (snapshot == null)
      continue;
    const { name, version: version2 } = nameVerFromPkgSnapshot(depPath, snapshot);
    const pkgNode = resolvedPackageNodes.get(serialized);
    if (!pkgNode)
      continue;
    const readManifest = pkgNode.readManifest;
    let matched = search2({ alias: name, name, version: version2, readManifest });
    if (!matched) {
      const incomingEdges = reverseMap.get(serialized);
      if (incomingEdges) {
        for (const edge of incomingEdges) {
          if (edge.alias !== name) {
            matched = search2({ alias: edge.alias, name, version: version2, readManifest });
            if (matched)
              break;
          }
        }
      }
    }
    if (!matched)
      continue;
    ctx.visited = /* @__PURE__ */ new Set([serialized]);
    ctx.expanded = /* @__PURE__ */ new Set();
    const dependents = walkReverse(serialized, ctx);
    const peersSuffixHash = peersSuffixHashFromDepPath(depPath);
    const displayName = opts2.nameFormatter ? opts2.nameFormatter({ name, version: version2, manifest: readManifest() }) : void 0;
    const tree = {
      name,
      displayName,
      version: version2,
      path: pkgNode.path,
      peersSuffixHash,
      dependents
    };
    if (typeof matched === "string") {
      tree.searchMessage = matched;
    }
    trees.push(tree);
  }
  trees.sort((a2, b) => {
    const nameCmp = (0, import_util15.lexCompare)(a2.name, b.name);
    if (nameCmp !== 0)
      return nameCmp;
    const versionCmp = import_semver39.default.valid(a2.version) && import_semver39.default.valid(b.version) ? import_semver39.default.compare(a2.version, b.version) : (0, import_util15.lexCompare)(a2.version, b.version);
    if (versionCmp !== 0)
      return versionCmp;
    return (0, import_util15.lexCompare)(a2.peersSuffixHash ?? "", b.peersSuffixHash ?? "");
  });
  storeIndex?.close();
  return trees;
}
function invertGraph(graph) {
  const reverse3 = /* @__PURE__ */ new Map();
  for (const [parentSerialized, node] of graph.nodes) {
    for (const edge of node.edges) {
      if (edge.target == null)
        continue;
      const childSerialized = edge.target.id;
      let entries = reverse3.get(childSerialized);
      if (entries == null) {
        entries = [];
        reverse3.set(childSerialized, entries);
      }
      entries.push({
        parentSerialized,
        parentNodeId: node.nodeId,
        alias: edge.alias
      });
    }
  }
  return reverse3;
}
function resolvePackageNodes(graph, currentPackages, opts2) {
  const resolved = /* @__PURE__ */ new Map();
  function walk(serialized, parentDir) {
    const node = graph.nodes.get(serialized);
    if (!node)
      return;
    for (const edge of node.edges) {
      if (edge.target == null)
        continue;
      const childSerialized = edge.target.id;
      if (resolved.has(childSerialized))
        continue;
      if (edge.target.nodeId.type !== "package")
        continue;
      const { pkgInfo, readManifest } = getPkgInfo({
        ...opts2,
        alias: edge.alias,
        currentPackages,
        depTypes: {},
        linkedPathBaseDir: opts2.modulesDir,
        // This might need adjustment for linked deps?
        parentDir,
        ref: edge.target.nodeId.depPath,
        skipped: /* @__PURE__ */ new Set()
      });
      resolved.set(childSerialized, { path: pkgInfo.path, readManifest });
      walk(childSerialized, pkgInfo.path);
    }
  }
  for (const [serialized, node] of graph.nodes) {
    if (node.nodeId.type === "importer") {
      walk(serialized, void 0);
    }
  }
  return resolved;
}
function walkReverse(nodeId, ctx) {
  const reverseEdges = ctx.reverseMap.get(nodeId);
  if (reverseEdges == null || reverseEdges.length === 0)
    return [];
  const sortedEdges = [...reverseEdges].sort((a2, b) => {
    const cmp = (0, import_util15.lexCompare)(resolveParentName(a2, ctx), resolveParentName(b, ctx));
    if (cmp !== 0)
      return cmp;
    return (0, import_util15.lexCompare)(a2.parentSerialized, b.parentSerialized);
  });
  const dependents = [];
  for (const edge of sortedEdges) {
    if (ctx.visited.has(edge.parentSerialized)) {
      const parentNode = ctx.graph.nodes.get(edge.parentSerialized);
      if (parentNode?.nodeId.type === "importer") {
        const info = ctx.importerInfoMap.get(parentNode.nodeId.importerId);
        if (info) {
          dependents.push({
            name: info.name,
            version: info.version,
            circular: true
          });
        }
      } else if (parentNode?.nodeId.type === "package") {
        const snapshot = ctx.currentPackages[parentNode.nodeId.depPath];
        if (snapshot) {
          const { name, version: version2 } = nameVerFromPkgSnapshot(parentNode.nodeId.depPath, snapshot);
          const displayName = resolveDisplayName(edge.parentSerialized, name, version2, ctx);
          dependents.push({ name, displayName, version: version2, circular: true });
        }
      }
      continue;
    }
    const parentGraphNode = ctx.graph.nodes.get(edge.parentSerialized);
    if (parentGraphNode == null)
      continue;
    if (parentGraphNode.nodeId.type === "importer") {
      const importerId = parentGraphNode.nodeId.importerId;
      const info = ctx.importerInfoMap.get(importerId) ?? { name: importerId, version: "" };
      const depField = getDepFieldForAlias(edge.alias, ctx.importers[importerId]);
      dependents.push({
        name: info.name,
        version: info.version,
        depField
      });
    } else if (parentGraphNode.nodeId.type === "package") {
      const snapshot = ctx.currentPackages[parentGraphNode.nodeId.depPath];
      if (snapshot == null)
        continue;
      const { name, version: version2 } = nameVerFromPkgSnapshot(parentGraphNode.nodeId.depPath, snapshot);
      const peersSuffixHash = peersSuffixHashFromDepPath(parentGraphNode.nodeId.depPath);
      const displayName = resolveDisplayName(edge.parentSerialized, name, version2, ctx);
      if (ctx.expanded.has(edge.parentSerialized)) {
        dependents.push({ name, displayName, version: version2, peersSuffixHash, deduped: true });
        continue;
      }
      ctx.visited.add(edge.parentSerialized);
      ctx.expanded.add(edge.parentSerialized);
      const childDependents = walkReverse(edge.parentSerialized, ctx);
      ctx.visited.delete(edge.parentSerialized);
      dependents.push({
        name,
        displayName,
        version: version2,
        peersSuffixHash,
        dependents: childDependents.length > 0 ? childDependents : void 0
      });
    }
  }
  return dependents;
}
function resolveParentName(edge, ctx) {
  const graphNode = ctx.graph.nodes.get(edge.parentSerialized);
  if (graphNode == null)
    return "";
  if (graphNode.nodeId.type === "importer") {
    const info = ctx.importerInfoMap.get(graphNode.nodeId.importerId);
    return info?.name ?? graphNode.nodeId.importerId;
  }
  const snapshot = ctx.currentPackages[graphNode.nodeId.depPath];
  if (snapshot == null)
    return "";
  return nameVerFromPkgSnapshot(graphNode.nodeId.depPath, snapshot).name;
}
function resolveDisplayName(serialized, name, version2, ctx) {
  if (!ctx.nameFormatter)
    return void 0;
  const pkgNode = ctx.resolvedPackageNodes.get(serialized);
  if (!pkgNode)
    return void 0;
  return ctx.nameFormatter({ name, version: version2, manifest: pkgNode.readManifest() });
}
function getDepFieldForAlias(alias, importerSnapshot) {
  if (importerSnapshot.devDependencies?.[alias] != null)
    return "devDependencies";
  if (importerSnapshot.optionalDependencies?.[alias] != null)
    return "optionalDependencies";
  if (importerSnapshot.dependencies?.[alias] != null)
    return "dependencies";
  return void 0;
}
var import_util15, import_semver39;
var init_buildDependentsTree = __esm({
  "../deps/inspection/tree-builder/lib/buildDependentsTree.js"() {
    "use strict";
    init_lib74();
    init_lib75();
    init_lib78();
    init_lib70();
    init_lib16();
    import_util15 = __toESM(require_dist3(), 1);
    init_realpath_missing();
    import_semver39 = __toESM(require_semver2(), 1);
    init_buildDependencyGraph();
    init_createPackagesSearcher();
    init_getPkgInfo();
    init_peersSuffixHash();
  }
});

// ../deps/inspection/tree-builder/lib/DependencyNode.js
var init_DependencyNode = __esm({
  "../deps/inspection/tree-builder/lib/DependencyNode.js"() {
    "use strict";
  }
});

// ../deps/inspection/tree-builder/lib/index.js
var init_lib126 = __esm({
  "../deps/inspection/tree-builder/lib/index.js"() {
    "use strict";
    init_buildDependenciesTree();
    init_buildDependentsTree();
    init_createPackagesSearcher();
    init_DependencyNode();
  }
});

// ../text/tree-renderer/lib/index.js
function renderTree(node, opts2) {
  return render(opts2 ?? {}, { node, connector: "", prefix: "" });
}
function render(opts2, ctx) {
  const { connector, prefix } = ctx;
  let { node } = ctx;
  if (typeof node === "string")
    node = { label: node };
  const fmt = opts2.treeChars ?? identity4;
  const chr = opts2.unicode === false ? asciiChar : unicodeChar;
  const nodes = node.nodes ?? [];
  const lines = (node.label || "").split("\n");
  let result2 = (connector ? fmt(connector) : "") + lines[0] + "\n";
  const items = [];
  for (const child of nodes) {
    if (isGroup(child)) {
      for (const gn of child.nodes) {
        items.push({ node: typeof gn === "string" ? { label: gn } : gn, group: child.group });
      }
    } else {
      items.push({ node: typeof child === "string" ? { label: child } : child });
    }
  }
  const continuationChars = items.length ? chr("\u2502") + " " : "  ";
  for (let l = 1; l < lines.length; l++) {
    result2 += fmt(prefix + continuationChars) + lines[l] + "\n";
  }
  let currentGroup;
  for (let i2 = 0; i2 < items.length; i2++) {
    const item = items[i2];
    const last = i2 === items.length - 1;
    if (item.group !== currentGroup) {
      currentGroup = item.group;
      if (currentGroup != null) {
        result2 += fmt(prefix + chr("\u2502")) + "\n";
        result2 += fmt(prefix + chr("\u2502") + "   ") + currentGroup + "\n";
      }
    }
    const more = hasRenderableChildren(item.node.nodes);
    const childConnector = prefix + (last ? chr("\u2514") : chr("\u251C")) + chr("\u2500") + (more ? chr("\u252C") : chr("\u2500")) + " ";
    const childPrefix = prefix + (last ? "  " : chr("\u2502") + " ");
    result2 += render(opts2, {
      node: item.node,
      connector: childConnector,
      prefix: childPrefix
    });
  }
  return result2;
}
function hasRenderableChildren(nodes) {
  if (nodes == null)
    return false;
  for (const child of nodes) {
    if (isGroup(child)) {
      if (child.nodes.length > 0)
        return true;
    } else {
      return true;
    }
  }
  return false;
}
function isGroup(node) {
  return typeof node !== "string" && "group" in node;
}
function identity4(s) {
  return s;
}
function unicodeChar(s) {
  return s;
}
function asciiChar(s) {
  const chars = {
    "\u2502": "|",
    "\u2514": "`",
    "\u251C": "+",
    "\u2500": "-",
    "\u252C": "-"
  };
  return chars[s] ?? s;
}
var init_lib127 = __esm({
  "../text/tree-renderer/lib/index.js"() {
    "use strict";
  }
});

// ../deps/inspection/list/lib/readPkg.js
async function readPkg(pkgPath) {
  return limitPkgReads(async () => readPackageJson2(pkgPath));
}
var limitPkgReads;
var init_readPkg = __esm({
  "../deps/inspection/list/lib/readPkg.js"() {
    "use strict";
    init_lib39();
    init_p_limit();
    limitPkgReads = pLimit(4);
  }
});

// ../deps/inspection/list/lib/getPkgInfo.js
import path138 from "node:path";
async function getPkgInfo2(pkg) {
  let manifest;
  try {
    manifest = await readPkg(path138.join(pkg.path, "package.json"));
  } catch {
    manifest = {
      description: "[Could not find additional info about this dependency]"
    };
  }
  return {
    alias: pkg.alias,
    from: pkg.name,
    version: pkg.version,
    resolved: pkg.resolved,
    description: manifest.description,
    license: manifest.license,
    author: manifest.author,
    homepage: manifest.homepage,
    repository: (manifest.repository && (typeof manifest.repository === "string" ? manifest.repository : manifest.repository.url)) ?? void 0,
    path: pkg.path
  };
}
var init_getPkgInfo2 = __esm({
  "../deps/inspection/list/lib/getPkgInfo.js"() {
    "use strict";
    init_readPkg();
  }
});

// ../deps/inspection/list/lib/peerVariants.js
function nameAtVersion(name, version2, colorName) {
  if (!version2)
    return colorName ? colorName(name) : name;
  const styledName = colorName ? colorName(name) : name;
  return `${styledName}${source_default.gray(`@${version2}`)}`;
}
function peerHashSuffix(pkg, multiPeerPkgs) {
  if (!pkg.peersSuffixHash)
    return "";
  const key = `${pkg.name}@${pkg.version}`;
  const variantCount = multiPeerPkgs.get(key);
  if (variantCount == null)
    return "";
  return source_default.red(` peer#${pkg.peersSuffixHash} (${variantCount} variation${variantCount === 1 ? "" : "s"})`);
}
function collectHashes(hashesPerPkg, pkg) {
  if (!pkg.peersSuffixHash)
    return;
  const key = `${pkg.name}@${pkg.version}`;
  let hashes = hashesPerPkg.get(key);
  if (hashes == null) {
    hashes = /* @__PURE__ */ new Set();
    hashesPerPkg.set(key, hashes);
  }
  hashes.add(pkg.peersSuffixHash);
}
function filterMultiPeerEntries(hashesPerPkg) {
  const result2 = /* @__PURE__ */ new Map();
  for (const [key, hashes] of hashesPerPkg) {
    if (hashes.size > 1) {
      result2.set(key, hashes.size);
    }
  }
  return result2;
}
var DEDUPED_LABEL;
var init_peerVariants = __esm({
  "../deps/inspection/list/lib/peerVariants.js"() {
    "use strict";
    init_source2();
    DEDUPED_LABEL = source_default.dim(" [deduped]");
  }
});

// ../deps/inspection/list/lib/renderDependentsTree.js
async function renderDependentsTree(trees, opts2) {
  if (trees.length === 0)
    return "";
  const multiPeerPkgs = findMultiPeerPackages(trees);
  const output = (await Promise.all(trees.map(async (result2) => {
    const rootLabelParts = [source_default.bold(nameAtVersion(result2.displayName ?? result2.name, result2.version)) + peerHashSuffix(result2, multiPeerPkgs)];
    if (result2.searchMessage) {
      rootLabelParts.push(result2.searchMessage);
    }
    if (opts2.long && result2.path) {
      const pkg = await getPkgInfo2({ name: result2.name, version: result2.version, path: result2.path, alias: void 0 });
      if (pkg.description) {
        rootLabelParts.push(pkg.description);
      }
      if (pkg.repository) {
        rootLabelParts.push(pkg.repository);
      }
      if (pkg.homepage) {
        rootLabelParts.push(pkg.homepage);
      }
      rootLabelParts.push(pkg.path);
    }
    const rootLabel = rootLabelParts.join("\n");
    if (result2.dependents.length === 0) {
      return rootLabel;
    }
    const childNodes = dependentsToTreeNodes(result2.dependents, multiPeerPkgs, 0, opts2.depth);
    const tree = { label: rootLabel, nodes: childNodes };
    return trimTrailingNewlines(renderTree(tree, { treeChars: source_default.dim }));
  }))).join("\n\n");
  const summary = whySummary(trees);
  return summary ? `${output}

${summary}` : output;
}
function whySummary(trees) {
  if (trees.length === 0)
    return "";
  const byName = /* @__PURE__ */ new Map();
  for (const tree of trees) {
    const displayedName = tree.displayName ?? tree.name;
    let entry = byName.get(displayedName);
    if (entry == null) {
      entry = { versions: /* @__PURE__ */ new Set(), count: 0 };
      byName.set(displayedName, entry);
    }
    entry.versions.add(tree.version);
    entry.count++;
  }
  const lines = [];
  for (const [name, info] of byName) {
    const parts = [`${info.versions.size} version${info.versions.size === 1 ? "" : "s"}`];
    if (info.count > info.versions.size) {
      parts.push(`${info.count} instances`);
    }
    lines.push(`Found ${parts.join(", ")} of ${name}`);
  }
  return source_default.dim(lines.join("\n"));
}
function findMultiPeerPackages(trees) {
  const hashesPerPkg = /* @__PURE__ */ new Map();
  function walkDependents(dependents) {
    for (const dep of dependents) {
      collectHashes(hashesPerPkg, dep);
      if (dep.dependents) {
        walkDependents(dep.dependents);
      }
    }
  }
  for (const tree of trees) {
    collectHashes(hashesPerPkg, tree);
    walkDependents(tree.dependents);
  }
  return filterMultiPeerEntries(hashesPerPkg);
}
function dependentsToTreeNodes(dependents, multiPeerPkgs, currentDepth, maxDepth) {
  return dependents.map((dep) => {
    let label;
    const displayedName = dep.displayName ?? dep.name;
    if (dep.depField != null) {
      label = source_default.bold(nameAtVersion(displayedName, dep.version)) + ` ${source_default.dim(`(${dep.depField})`)}`;
    } else {
      label = nameAtVersion(displayedName, dep.version);
      label += peerHashSuffix(dep, multiPeerPkgs);
    }
    if (dep.circular) {
      label += source_default.dim(" [circular]");
    }
    if (dep.deduped) {
      label += DEDUPED_LABEL;
    }
    const atDepthLimit = maxDepth != null && currentDepth + 1 >= maxDepth;
    const nodes = dep.dependents && !atDepthLimit ? dependentsToTreeNodes(dep.dependents, multiPeerPkgs, currentDepth + 1, maxDepth) : [];
    return { label, nodes };
  });
}
async function renderDependentsJson(trees, opts2) {
  let data = trees;
  if (opts2.long) {
    data = await Promise.all(trees.map(async (result2) => {
      if (!result2.path)
        return result2;
      const pkg = await getPkgInfo2({ name: result2.name, version: result2.version, path: result2.path, alias: void 0 });
      return {
        ...result2,
        description: pkg.description,
        repository: pkg.repository,
        homepage: pkg.homepage
      };
    }));
  }
  if (opts2.depth != null) {
    data = data.map((tree) => ({
      ...tree,
      dependents: truncateDependents(tree.dependents, 0, opts2.depth)
    }));
  }
  return JSON.stringify(data, null, 2);
}
function renderDependentsParseable(trees, opts2) {
  const lines = [];
  for (const result2 of trees) {
    const displayedName = result2.displayName ?? result2.name;
    const rootSegment = opts2.long && result2.path ? `${result2.path}:${plainNameAtVersion(displayedName, result2.version)}` : plainNameAtVersion(displayedName, result2.version);
    collectPaths(result2.dependents, [rootSegment], lines, 0, opts2.depth);
  }
  return lines.join("\n");
}
function collectPaths(dependents, currentPath, lines, currentDepth, maxDepth) {
  for (const dep of dependents) {
    const newPath = [...currentPath, plainNameAtVersion(dep.displayName ?? dep.name, dep.version)];
    const atDepthLimit = maxDepth != null && currentDepth + 1 >= maxDepth;
    if (dep.dependents && dep.dependents.length > 0 && !atDepthLimit) {
      collectPaths(dep.dependents, newPath, lines, currentDepth + 1, maxDepth);
    } else {
      lines.push([...newPath].reverse().join(" > "));
    }
  }
}
function truncateDependents(dependents, currentDepth, maxDepth) {
  return dependents.map((dep) => {
    if (dep.dependents && currentDepth + 1 < maxDepth) {
      return { ...dep, dependents: truncateDependents(dep.dependents, currentDepth + 1, maxDepth) };
    }
    const { dependents: _, ...rest } = dep;
    return rest;
  });
}
function plainNameAtVersion(name, version2) {
  return version2 ? `${name}@${version2}` : name;
}
function trimTrailingNewlines(s) {
  let end = s.length;
  while (end > 0 && s.charCodeAt(end - 1) === 10)
    end--;
  return end === s.length ? s : s.slice(0, end);
}
var init_renderDependentsTree = __esm({
  "../deps/inspection/list/lib/renderDependentsTree.js"() {
    "use strict";
    init_lib127();
    init_source2();
    init_getPkgInfo2();
    init_peerVariants();
  }
});

// ../deps/inspection/list/lib/renderJson.js
async function renderJson(pkgs, opts2) {
  const jsonArr = await Promise.all(pkgs.map(async (pkg) => {
    const jsonObj = {
      name: pkg.name,
      version: pkg.version,
      path: pkg.path,
      private: !!pkg.private
    };
    Object.assign(jsonObj, Object.fromEntries(await Promise.all([...DEPENDENCIES_FIELDS.sort(), "unsavedDependencies"].filter((dependenciesField) => pkg[dependenciesField]?.length).map(async (dependenciesField) => [
      dependenciesField,
      await toJsonResult(pkg[dependenciesField], { long: opts2.long })
    ]))));
    return jsonObj;
  }));
  return JSON.stringify(jsonArr, null, 2);
}
async function toJsonResult(entryNodes, opts2) {
  const dependencies = {};
  await Promise.all(sortPackages(entryNodes).map(async (node) => {
    const subDependencies = await toJsonResult(node.dependencies ?? [], opts2);
    const dep = opts2.long ? await getPkgInfo2(node) : {
      alias: node.alias,
      from: node.name,
      version: node.version,
      resolved: node.resolved,
      path: node.path
    };
    if (Object.keys(subDependencies).length > 0) {
      dep.dependencies = subDependencies;
    }
    if (node.deduped) {
      dep.deduped = true;
      if (node.dedupedDependenciesCount) {
        dep.dedupedDependenciesCount = node.dedupedDependenciesCount;
      }
    }
    if (!dep.resolved) {
      delete dep.resolved;
    }
    delete dep.alias;
    dependencies[node.alias] = dep;
  }));
  return dependencies;
}
var sortPackages;
var init_renderJson = __esm({
  "../deps/inspection/list/lib/renderJson.js"() {
    "use strict";
    init_lib8();
    init_es();
    init_getPkgInfo2();
    sortPackages = sortBy_default(path_default(["pkg", "alias"]));
  }
});

// ../deps/inspection/list/lib/renderParseable.js
async function renderParseable(pkgs, opts2) {
  const depPaths = /* @__PURE__ */ new Set();
  return pkgs.map(renderParseableForPackage.bind(null, depPaths, opts2)).filter((p) => p.length !== 0).join("\n");
}
function renderParseableForPackage(depPaths, opts2, pkg) {
  const rootAlreadySeen = depPaths.has(pkg.path);
  depPaths.add(pkg.path);
  const allDeps = [
    ...pkg.optionalDependencies ?? [],
    ...pkg.dependencies ?? [],
    ...pkg.devDependencies ?? [],
    ...pkg.unsavedDependencies ?? []
  ];
  const pkgs = sortPackages2(flatten(depPaths, allDeps));
  if (rootAlreadySeen && pkgs.length === 0)
    return "";
  if (!opts2.alwaysPrintRootPackage && pkgs.length === 0 && allDeps.length === 0)
    return "";
  if (opts2.long) {
    let firstLine = pkg.path;
    if (pkg.name) {
      firstLine += `:${pkg.name}`;
      if (pkg.version) {
        firstLine += `@${pkg.version}`;
      }
      if (pkg.private) {
        firstLine += ":PRIVATE";
      }
    }
    return [
      ...rootAlreadySeen ? [] : [firstLine],
      ...pkgs.map((pkgNode) => {
        const node = pkgNode;
        if (node.alias !== node.name) {
          if (!node.version.includes("@")) {
            return `${node.path}:${node.alias} npm:${node.name}@${node.version}`;
          }
          return `${node.path}:${node.alias} ${node.version}`;
        }
        if (node.version.includes("@")) {
          return `${node.path}:${node.version}`;
        }
        return `${node.path}:${node.name}@${node.version}`;
      })
    ].join("\n");
  }
  return [
    ...rootAlreadySeen ? [] : [pkg.path],
    ...pkgs.map((pkg2) => pkg2.path)
  ].join("\n");
}
function flatten(depPaths, nodes) {
  let packages = [];
  for (const node of nodes) {
    if (!depPaths.has(node.path)) {
      depPaths.add(node.path);
      packages.push(node);
    }
    if (node.dependencies?.length) {
      packages = packages.concat(flatten(depPaths, node.dependencies));
    }
  }
  return packages;
}
var sortPackages2;
var init_renderParseable = __esm({
  "../deps/inspection/list/lib/renderParseable.js"() {
    "use strict";
    init_es();
    sortPackages2 = sortBy_default(prop_default("name"));
  }
});

// ../deps/inspection/list/lib/renderTree.js
import path139 from "node:path";
async function renderTree2(packages, opts2) {
  const multiPeerPkgs = findMultiPeerPackages2(packages);
  const output = (await Promise.all(packages.map(async (pkg) => renderTreeForPackage(pkg, opts2, multiPeerPkgs)))).filter(Boolean).join("\n\n");
  const legend = opts2.depth > -1 && output ? LEGEND : "";
  const summary = opts2.showSummary && opts2.depth > -1 && output ? `

${listSummary(packages)}` : "";
  return `${legend}${output}${summary}`;
}
async function renderTreeForPackage(pkg, opts2, multiPeerPkgs) {
  if (!opts2.alwaysPrintRootPackage && !pkg.dependencies?.length && !pkg.devDependencies?.length && !pkg.optionalDependencies?.length && (!opts2.showExtraneous || !pkg.unsavedDependencies?.length))
    return "";
  let label = "";
  if (pkg.name) {
    label += nameAtVersion(pkg.name, pkg.version ?? "");
    label += " ";
  }
  label += source_default.dim(pkg.path);
  if (pkg.private) {
    label += source_default.dim(" (PRIVATE)");
  }
  const dependenciesFields = [
    ...DEPENDENCIES_FIELDS.sort()
  ];
  if (opts2.showExtraneous) {
    dependenciesFields.push("unsavedDependencies");
  }
  const childNodes = (await Promise.all(dependenciesFields.map(async (dependenciesField) => {
    if (!pkg[dependenciesField]?.length)
      return null;
    const depsLabel = source_default.cyanBright(dependenciesField !== "unsavedDependencies" ? `${dependenciesField}:` : "not saved (you should add these dependencies to package.json if you need them):");
    const gPkgColor = dependenciesField === "unsavedDependencies" ? () => NOT_SAVED_DEP_CLR : getPkgColor;
    const depNodes = await toArchyTree(gPkgColor, pkg[dependenciesField], {
      long: opts2.long,
      modules: path139.join(pkg.path, "node_modules"),
      multiPeerPkgs
    });
    return { group: depsLabel, nodes: depNodes };
  }))).filter((n2) => n2 != null);
  const rootLabel = source_default.bold(label);
  if (childNodes.length === 0) {
    return rootLabel;
  }
  const tree = { label: rootLabel, nodes: childNodes };
  return renderTree(tree, { treeChars: source_default.dim }).trimEnd();
}
async function toArchyTree(getPkgColor2, entryNodes, opts2) {
  const sorted = [...entryNodes].sort((a2, b) => (0, import_util16.lexCompare)(a2.name, b.name));
  return Promise.all(sorted.map(async (node) => {
    const nodes = node.deduped ? [] : await toArchyTree(getPkgColor2, node.dependencies ?? [], opts2);
    const labelLines = [
      printLabel(getPkgColor2, opts2.multiPeerPkgs, node)
    ];
    if (node.searchMessage) {
      labelLines.push(node.searchMessage);
    }
    if (opts2.long) {
      const pkg = await getPkgInfo2(node);
      if (pkg.description) {
        labelLines.push(pkg.description);
      }
      if (pkg.repository) {
        labelLines.push(pkg.repository);
      }
      if (pkg.homepage) {
        labelLines.push(pkg.homepage);
      }
      if (pkg.path) {
        labelLines.push(pkg.path);
      }
    }
    return {
      label: labelLines.join("\n"),
      nodes
    };
  }));
}
function printLabel(getPkgColor2, multiPeerPkgs, node) {
  const color = getPkgColor2(node);
  let txt;
  if (node.alias !== node.name) {
    if (!node.version.includes("@")) {
      txt = `${color(node.alias)}${source_default.gray(`@npm:${node.name}@${node.version}`)}`;
    } else {
      txt = `${color(node.alias)}${source_default.gray(`@${node.version}`)}`;
    }
  } else {
    txt = nameAtVersion(node.name, node.version, color);
  }
  if (node.isPeer) {
    txt += " peer";
  }
  if (node.isSkipped) {
    txt += " skipped";
  }
  if (multiPeerPkgs) {
    txt += peerHashSuffix(node, multiPeerPkgs);
  }
  if (node.deduped) {
    txt += DEDUPED_LABEL;
  }
  return node.searched ? source_default.bold(txt) : txt;
}
function getPkgColor(node) {
  if (node.dev === true)
    return DEV_DEP_ONLY_CLR;
  if (node.optional)
    return OPTIONAL_DEP_CLR;
  return PROD_DEP_CLR;
}
function findMultiPeerPackages2(packages) {
  const hashesPerPkg = /* @__PURE__ */ new Map();
  function walk(nodes) {
    for (const node of nodes) {
      collectHashes(hashesPerPkg, node);
      if (node.dependencies) {
        walk(node.dependencies);
      }
    }
  }
  for (const pkg of packages) {
    for (const field of DEPENDENCIES_FIELDS) {
      if (pkg[field]) {
        walk(pkg[field]);
      }
    }
  }
  return filterMultiPeerEntries(hashesPerPkg);
}
function listSummary(packages) {
  let total = 0;
  function walk(nodes) {
    for (const node of nodes) {
      total++;
      if (node.dependencies) {
        walk(node.dependencies);
      }
    }
  }
  for (const pkg of packages) {
    for (const field of DEPENDENCIES_FIELDS) {
      if (pkg[field]) {
        walk(pkg[field]);
      }
    }
  }
  const parts = [`${total} package${total === 1 ? "" : "s"}`];
  if (packages.length > 1) {
    parts.push(`${packages.length} projects`);
  }
  return source_default.dim(parts.join(" in "));
}
var import_util16, DEV_DEP_ONLY_CLR, PROD_DEP_CLR, OPTIONAL_DEP_CLR, NOT_SAVED_DEP_CLR, LEGEND;
var init_renderTree = __esm({
  "../deps/inspection/list/lib/renderTree.js"() {
    "use strict";
    init_lib127();
    init_lib8();
    import_util16 = __toESM(require_dist3(), 1);
    init_source2();
    init_getPkgInfo2();
    init_peerVariants();
    DEV_DEP_ONLY_CLR = source_default.yellow;
    PROD_DEP_CLR = (s) => s;
    OPTIONAL_DEP_CLR = source_default.blue;
    NOT_SAVED_DEP_CLR = source_default.red;
    LEGEND = `Legend: ${PROD_DEP_CLR("production dependency")}, ${OPTIONAL_DEP_CLR("optional only")}, ${DEV_DEP_ONLY_CLR("dev only")}

`;
  }
});

// ../deps/inspection/list/lib/index.js
import path140 from "node:path";
async function searchForPackages(packages, projectPaths, opts2) {
  const search2 = createPackagesSearcher(packages, opts2.finders);
  return Promise.all(Object.entries(await buildDependenciesTree(projectPaths, {
    depth: opts2.depth,
    excludePeerDependencies: opts2.excludePeerDependencies,
    include: opts2.include,
    lockfileDir: opts2.lockfileDir,
    checkWantedLockfileOnly: opts2.checkWantedLockfileOnly,
    onlyProjects: opts2.onlyProjects,
    registries: opts2.registries,
    search: search2,
    showDedupedSearchMatches: true,
    modulesDir: opts2.modulesDir,
    virtualStoreDirMaxLength: opts2.virtualStoreDirMaxLength
  })).map(async ([projectPath, buildDependenciesTree2]) => {
    const entryPkg = await safeReadProjectManifestOnly(projectPath) ?? {};
    return {
      name: entryPkg.name,
      version: entryPkg.version,
      private: entryPkg.private,
      path: projectPath,
      ...buildDependenciesTree2
    };
  }));
}
async function listForPackages(packages, projectPaths, maybeOpts) {
  const opts2 = { ...DEFAULTS, ...maybeOpts };
  const pkgs = await searchForPackages(packages, projectPaths, opts2);
  const print = getPrinter(opts2.reportAs);
  return print(pkgs, {
    alwaysPrintRootPackage: opts2.alwaysPrintRootPackage,
    depth: opts2.depth,
    long: opts2.long,
    search: Boolean(packages.length),
    showExtraneous: opts2.showExtraneous,
    showSummary: opts2.showSummary
  });
}
async function list(projectPaths, maybeOpts) {
  const opts2 = { ...DEFAULTS, ...maybeOpts };
  const pkgs = await Promise.all(Object.entries(opts2.depth === -1 ? projectPaths.reduce((acc, projectPath) => {
    acc[projectPath] = {};
    return acc;
  }, {}) : await buildDependenciesTree(projectPaths, {
    depth: opts2.depth,
    excludePeerDependencies: maybeOpts?.excludePeerDependencies,
    include: maybeOpts?.include,
    lockfileDir: maybeOpts?.lockfileDir,
    checkWantedLockfileOnly: maybeOpts?.checkWantedLockfileOnly,
    onlyProjects: maybeOpts?.onlyProjects,
    registries: opts2.registries,
    modulesDir: opts2.modulesDir,
    virtualStoreDirMaxLength: opts2.virtualStoreDirMaxLength
  })).map(async ([projectPath, dependenciesHierarchy]) => {
    const entryPkg = await safeReadProjectManifestOnly(projectPath) ?? {};
    return {
      name: entryPkg.name,
      version: entryPkg.version,
      private: entryPkg.private,
      path: projectPath,
      ...dependenciesHierarchy
    };
  }));
  const print = getPrinter(opts2.reportAs);
  return print(pkgs, {
    alwaysPrintRootPackage: opts2.alwaysPrintRootPackage,
    depth: opts2.depth,
    long: opts2.long,
    search: false,
    showExtraneous: opts2.showExtraneous,
    showSummary: opts2.showSummary
  });
}
function getPrinter(reportAs) {
  switch (reportAs) {
    case "parseable":
      return renderParseable;
    case "json":
      return renderJson;
    case "tree":
      return renderTree2;
  }
}
async function whyForPackages(packages, projectPaths, opts2) {
  const reportAs = opts2.reportAs ?? "tree";
  const long = opts2.long ?? false;
  const depth = opts2.depth;
  const importerInfoMap = /* @__PURE__ */ new Map();
  const modulesDir = opts2.modulesDir ?? "node_modules";
  const lockfile = opts2.checkWantedLockfileOnly ? await readWantedLockfile(opts2.lockfileDir, { ignoreIncompatible: false }) : await readCurrentLockfile(path140.join(opts2.lockfileDir, modulesDir, ".pnpm"), { ignoreIncompatible: false }) ?? await readWantedLockfile(opts2.lockfileDir, { ignoreIncompatible: false });
  if (!lockfile)
    return "";
  const importerIds = Object.keys(lockfile.importers);
  const manifests = await Promise.all(importerIds.map((importerId) => safeReadProjectManifestOnly(path140.join(opts2.lockfileDir, importerId))));
  for (let i2 = 0; i2 < importerIds.length; i2++) {
    const importerId = importerIds[i2];
    const manifest = manifests[i2];
    importerInfoMap.set(importerId, {
      name: manifest?.name ?? (importerId === "." ? "the root project" : importerId),
      version: manifest?.version ?? ""
    });
  }
  const trees = await buildDependentsTree(packages, projectPaths, {
    lockfileDir: opts2.lockfileDir,
    include: opts2.include,
    modulesDir: opts2.modulesDir,
    registries: opts2.registries,
    finders: opts2.finders,
    importerInfoMap,
    lockfile
  });
  switch (reportAs) {
    case "json":
      return renderDependentsJson(trees, { long, depth });
    case "parseable":
      return renderDependentsParseable(trees, { long, depth });
    case "tree":
      return renderDependentsTree(trees, { long, depth });
  }
}
var DEFAULTS;
var init_lib128 = __esm({
  "../deps/inspection/list/lib/index.js"() {
    "use strict";
    init_lib126();
    init_lib78();
    init_lib13();
    init_renderDependentsTree();
    init_renderJson();
    init_renderParseable();
    init_renderTree();
    DEFAULTS = {
      alwaysPrintRootPackage: true,
      depth: 0,
      long: false,
      registries: void 0,
      reportAs: "tree",
      showExtraneous: true
    };
  }
});

// ../global/commands/lib/listGlobalPackages.js
import path141 from "node:path";
function findGlobalInstallDirs(globalPkgDir, params) {
  const packages = scanGlobalPackages(globalPkgDir);
  const matches2 = params.length > 0 ? createMatcher(params) : () => true;
  const installDirs = /* @__PURE__ */ new Set();
  for (const pkg of packages) {
    for (const alias of Object.keys(pkg.dependencies)) {
      if (matches2(alias)) {
        installDirs.add(pkg.installDir);
        break;
      }
    }
  }
  return [...installDirs];
}
async function listGlobalPackages(globalPkgDir, params, opts2 = {}) {
  const reportAs = opts2.reportAs ?? "tree";
  const long = opts2.long ?? false;
  const packages = scanGlobalPackages(globalPkgDir);
  const allDetails = await Promise.all(packages.map((pkg) => getGlobalPackageDetails(pkg)));
  const matches2 = params.length > 0 ? createMatcher(params) : () => true;
  const dependencies = [];
  for (let i2 = 0; i2 < packages.length; i2++) {
    const installDir = packages[i2].installDir;
    for (const installed of allDetails[i2]) {
      if (!matches2(installed.alias))
        continue;
      dependencies.push({
        alias: installed.alias,
        name: installed.manifest.name,
        version: installed.version,
        path: path141.join(installDir, "node_modules", installed.alias),
        isPeer: false,
        isSkipped: false,
        isMissing: false
      });
    }
  }
  dependencies.sort((a2, b) => (0, import_util17.lexCompare)(a2.alias, b.alias));
  if (dependencies.length === 0) {
    if (reportAs === "json") {
      return JSON.stringify([{ path: globalPkgDir, private: true, dependencies: {} }], null, 2);
    }
    if (reportAs === "parseable") {
      return globalPkgDir;
    }
    return params.length > 0 ? "No matching global packages found" : "No global packages found";
  }
  const hierarchy = [{
    path: globalPkgDir,
    private: true,
    dependencies
  }];
  switch (reportAs) {
    case "json":
      return renderJson(hierarchy, { depth: 0, long, search: false });
    case "parseable":
      return renderParseable(hierarchy, { depth: 0, long, alwaysPrintRootPackage: true, search: false });
    case "tree":
      return renderTree2(hierarchy, {
        alwaysPrintRootPackage: false,
        depth: 0,
        long,
        search: false,
        showExtraneous: false
      });
  }
}
var import_util17;
var init_listGlobalPackages = __esm({
  "../global/commands/lib/listGlobalPackages.js"() {
    "use strict";
    init_lib14();
    init_lib128();
    init_lib101();
    import_util17 = __toESM(require_dist3(), 1);
  }
});

// ../global/commands/lib/index.js
var init_lib129 = __esm({
  "../global/commands/lib/index.js"() {
    "use strict";
    init_checkGlobalBinConflicts();
    init_globalAdd();
    init_globalRemove();
    init_globalUpdate();
    init_installGlobalPackages();
    init_listGlobalPackages();
  }
});

// ../installing/env-installer/lib/parseIntegrity.js
function parseIntegrity(pkgName, pkgSpec) {
  const sepIndex = pkgSpec.indexOf("+");
  if (sepIndex === -1) {
    throw new PnpmError("CONFIG_DEP_NO_INTEGRITY", `Your config dependency called "${pkgName}" doesn't have an integrity checksum`, {
      hint: `Integrity checksum should be inlined in the version specifier. For example:

pnpm-workspace.yaml:
configDependencies:
  my-config: "1.0.0+sha512-Xg0tn4HcfTijTwfDwYlvVCl43V6h4KyVVX2aEm4qdO/PC6L2YvzLHFdmxhoeSA3eslcE6+ZVXHgWwopXYLNq4Q=="
`
    });
  }
  const version2 = pkgSpec.substring(0, sepIndex);
  const integrity = pkgSpec.substring(sepIndex + 1);
  return { version: version2, integrity };
}
var init_parseIntegrity = __esm({
  "../installing/env-installer/lib/parseIntegrity.js"() {
    "use strict";
    init_lib2();
  }
});

// ../installing/env-installer/lib/migrateConfigDeps.js
async function migrateConfigDepsToLockfile(configDeps, opts2) {
  const envLockfile = createEnvLockfile();
  const cleanSpecifiers = {};
  const normalizedDeps = {};
  for (const [pkgName, pkgSpec] of Object.entries(configDeps)) {
    const registry = pickRegistryForPackage(opts2.registries, pkgName);
    if (typeof pkgSpec === "object") {
      const { version: version2, integrity } = parseIntegrity(pkgName, pkgSpec.integrity);
      const tarball = pkgSpec.tarball ?? src_default(pkgName, version2, { registry });
      cleanSpecifiers[pkgName] = version2;
      const pkgKey = `${pkgName}@${version2}`;
      envLockfile.importers["."].configDependencies[pkgName] = {
        specifier: version2,
        version: version2
      };
      envLockfile.packages[pkgKey] = {
        resolution: toLockfileResolution({ name: pkgName, version: version2 }, { integrity, tarball }, registry)
      };
      envLockfile.snapshots[pkgKey] = {};
      normalizedDeps[pkgName] = {
        version: version2,
        resolution: { integrity, tarball }
      };
      continue;
    }
    if (typeof pkgSpec === "string") {
      if (!pkgSpec.includes("+")) {
        throw new PnpmError("CONFIG_DEP_MISSING_LOCKFILE", `Config dependency "${pkgName}" is already in clean-specifier form (${pkgSpec}) but no pnpm-lock.yaml was found to resolve it. Please generate and commit pnpm-lock.yaml (for example by running \`pnpm install\` in the workspace root) before attempting to migrate configDependencies.`);
      }
      const { version: version2, integrity } = parseIntegrity(pkgName, pkgSpec);
      const tarball = src_default(pkgName, version2, { registry });
      cleanSpecifiers[pkgName] = version2;
      const pkgKey = `${pkgName}@${version2}`;
      envLockfile.importers["."].configDependencies[pkgName] = {
        specifier: version2,
        version: version2
      };
      envLockfile.packages[pkgKey] = {
        resolution: { integrity }
      };
      envLockfile.snapshots[pkgKey] = {};
      normalizedDeps[pkgName] = {
        version: version2,
        resolution: { integrity, tarball }
      };
    }
  }
  await Promise.all([
    writeEnvLockfile(opts2.rootDir, envLockfile),
    writeSettings({
      rootProjectManifestDir: opts2.rootDir,
      workspaceDir: opts2.rootDir,
      updatedSettings: {
        configDependencies: cleanSpecifiers
      }
    })
  ]);
  return normalizedDeps;
}
var init_migrateConfigDeps = __esm({
  "../installing/env-installer/lib/migrateConfigDeps.js"() {
    "use strict";
    init_lib15();
    init_lib100();
    init_lib2();
    init_lib78();
    init_lib70();
    init_lib68();
    init_parseIntegrity();
  }
});

// ../installing/env-installer/lib/installConfigDeps.js
import fs75 from "node:fs";
import path142 from "node:path";
async function installConfigDeps(configDepsOrLockfile, opts2) {
  const normalizedDeps = await normalizeForInstall(configDepsOrLockfile, opts2);
  const globalVirtualStoreDir = path142.join(opts2.storeDir, "links");
  const configModulesDir = path142.join(opts2.rootDir, "node_modules/.pnpm-config");
  const existingConfigDeps = await readModulesDir(configModulesDir) ?? [];
  let startedEmitted = false;
  const reportStarted = () => {
    if (startedEmitted)
      return;
    startedEmitted = true;
    installingConfigDepsLogger.debug({ status: "started" });
  };
  await Promise.all(existingConfigDeps.map(async (existingConfigDep) => {
    if (!normalizedDeps[existingConfigDep]) {
      reportStarted();
      await rimraf(path142.join(configModulesDir, existingConfigDep));
    }
  }));
  const installedConfigDeps = [];
  await Promise.all(Object.entries(normalizedDeps).map(async ([pkgName, pkg]) => {
    const configDepPath = path142.join(configModulesDir, pkgName);
    const fullPkgId = `${pkgName}@${pkg.version}:${pkg.resolution.integrity}`;
    const optionalSubdepIds = {};
    for (const subdep of pkg.optionalSubdeps ?? []) {
      optionalSubdepIds[subdep.name] = `${subdep.name}@${subdep.version}:${subdep.resolution.integrity}`;
    }
    const relPath = calcGlobalVirtualStorePathWithSubdeps(fullPkgId, pkgName, pkg.version, optionalSubdepIds);
    const pkgDirInGlobalVirtualStore = path142.join(globalVirtualStoreDir, relPath, "node_modules", pkgName);
    const parentSymlinkAlreadyCorrect = existingConfigDeps.includes(pkgName) && await symlinkPointsTo(configDepPath, pkgDirInGlobalVirtualStore);
    if (!fs75.existsSync(path142.join(pkgDirInGlobalVirtualStore, "package.json"))) {
      reportStarted();
      const { fetching } = await opts2.store.fetchPackage({
        force: true,
        lockfileDir: opts2.rootDir,
        pkg: {
          id: `${pkgName}@${pkg.version}`,
          resolution: pkg.resolution
        }
      });
      const { files: filesResponse } = await fetching();
      await opts2.store.importPackage(pkgDirInGlobalVirtualStore, {
        force: true,
        requiresBuild: false,
        filesResponse
      });
    }
    if (pkg.optionalSubdeps?.length) {
      await installOptionalSubdeps({
        parentName: pkgName,
        parentVersion: pkg.version,
        subdeps: pkg.optionalSubdeps,
        // path.dirname would land in the scope subdir for scoped parents; use
        // the leaf's node_modules root so sibling symlinks resolve correctly.
        parentNodeModulesDir: path142.join(globalVirtualStoreDir, relPath, "node_modules"),
        globalVirtualStoreDir,
        rootDir: opts2.rootDir,
        store: opts2.store,
        reportStarted
      });
    }
    if (parentSymlinkAlreadyCorrect) {
      return;
    }
    reportStarted();
    if (existingConfigDeps.includes(pkgName)) {
      await rimraf(configDepPath);
    }
    await fs75.promises.mkdir(path142.dirname(configDepPath), { recursive: true });
    await symlinkDir(pkgDirInGlobalVirtualStore, configDepPath);
    installedConfigDeps.push({
      name: pkgName,
      version: pkg.version
    });
  }));
  if (installedConfigDeps.length) {
    installingConfigDepsLogger.debug({ status: "done", deps: installedConfigDeps });
  }
}
async function normalizeForInstall(configDepsOrLockfile, opts2) {
  if (isEnvLockfile(configDepsOrLockfile)) {
    return normalizeFromLockfile(configDepsOrLockfile, opts2.registries);
  }
  const envLockfile = await readEnvLockfile(opts2.rootDir);
  if (envLockfile) {
    return normalizeFromLockfile(envLockfile, opts2.registries);
  }
  if (opts2.frozenLockfile) {
    throw new PnpmError("FROZEN_LOCKFILE_WITH_OUTDATED_LOCKFILE", 'Cannot migrate configDependencies with "frozen-lockfile" because the lockfile is not up to date');
  }
  return migrateConfigDepsToLockfile(configDepsOrLockfile, opts2);
}
function isEnvLockfile(obj) {
  return "lockfileVersion" in obj && "importers" in obj && obj.importers != null && typeof obj.importers === "object" && "packages" in obj && obj.packages != null && typeof obj.packages === "object" && "snapshots" in obj && obj.snapshots != null && typeof obj.snapshots === "object";
}
function normalizeFromLockfile(lockfile, registries) {
  const deps = {};
  const configDeps = lockfile.importers["."]?.configDependencies ?? {};
  for (const [pkgName, { version: version2 }] of Object.entries(configDeps)) {
    const pkgKey = `${pkgName}@${version2}`;
    const pkgInfo = lockfile.packages[pkgKey];
    if (!pkgInfo) {
      throw new PnpmError("ENV_LOCKFILE_CORRUPTED", `pnpm-lock.yaml is corrupted or incomplete: missing packages entry for "${pkgKey}" referenced from importers['.'].configDependencies`);
    }
    const resolution = pkgInfo.resolution;
    if (!resolution.integrity) {
      throw new PnpmError("ENV_LOCKFILE_CORRUPTED", `pnpm-lock.yaml is corrupted or incomplete: missing integrity for "${pkgKey}"`);
    }
    const registry = pickRegistryForPackage(registries, pkgName);
    const snapshot = lockfile.snapshots[pkgKey];
    const optionalSubdeps = snapshot?.optionalDependencies ? readOptionalSubdepsFromLockfile(pkgName, snapshot.optionalDependencies, lockfile, registries) : void 0;
    deps[pkgName] = {
      version: version2,
      resolution: {
        integrity: resolution.integrity,
        tarball: resolution.tarball ?? src_default(pkgName, version2, { registry })
      },
      optionalSubdeps
    };
  }
  return deps;
}
function readOptionalSubdepsFromLockfile(parentName, optionalDeps, lockfile, registries) {
  const subdeps = [];
  for (const [subdepName, subdepVersion] of Object.entries(optionalDeps)) {
    const subdepKey = `${subdepName}@${subdepVersion}`;
    const subdepInfo = lockfile.packages[subdepKey];
    if (!subdepInfo) {
      throw new PnpmError("ENV_LOCKFILE_CORRUPTED", `pnpm-lock.yaml is corrupted or incomplete: missing packages entry for "${subdepKey}" referenced from optionalDependencies of config dependency "${parentName}"`);
    }
    const subdepResolution = subdepInfo.resolution;
    if (!subdepResolution.integrity) {
      throw new PnpmError("ENV_LOCKFILE_CORRUPTED", `pnpm-lock.yaml is corrupted or incomplete: missing integrity for "${subdepKey}"`);
    }
    const registry = pickRegistryForPackage(registries, subdepName);
    subdeps.push({
      name: subdepName,
      version: subdepVersion,
      resolution: {
        integrity: subdepResolution.integrity,
        tarball: subdepResolution.tarball ?? src_default(subdepName, subdepVersion, { registry })
      },
      os: subdepInfo.os,
      cpu: subdepInfo.cpu,
      libc: subdepInfo.libc
    });
  }
  return subdeps;
}
async function installOptionalSubdeps(opts2) {
  const parentLogInfo = { id: `${opts2.parentName}@${opts2.parentVersion}`, name: opts2.parentName, version: opts2.parentVersion };
  const compatibleSubdeps = opts2.subdeps.filter((subdep) => {
    if (!subdep.os && !subdep.cpu && !subdep.libc)
      return true;
    const error = checkPackage(`${subdep.name}@${subdep.version}`, { os: subdep.os, cpu: subdep.cpu, libc: subdep.libc }, {});
    if (error == null)
      return true;
    skippedOptionalDependencyLogger.debug({
      details: error.toString(),
      package: { id: `${subdep.name}@${subdep.version}`, name: subdep.name, version: subdep.version },
      parents: [parentLogInfo],
      prefix: opts2.rootDir,
      reason: error.code === "ERR_PNPM_UNSUPPORTED_ENGINE" ? "unsupported_engine" : "unsupported_platform"
    });
    return false;
  });
  const expectedSiblings = /* @__PURE__ */ new Set([opts2.parentName, ...compatibleSubdeps.map((s) => s.name)]);
  const existingSiblings = await readModulesDir(opts2.parentNodeModulesDir) ?? [];
  const orphanSiblings = existingSiblings.filter((name) => !expectedSiblings.has(name));
  if (orphanSiblings.length > 0) {
    opts2.reportStarted();
  }
  await Promise.all(orphanSiblings.map((name) => rimraf(path142.join(opts2.parentNodeModulesDir, name))));
  await Promise.all(compatibleSubdeps.map(async (subdep) => {
    const subdepFullPkgId = `${subdep.name}@${subdep.version}:${subdep.resolution.integrity}`;
    const subdepRelPath = calcLeafGlobalVirtualStorePath(subdepFullPkgId, subdep.name, subdep.version);
    const subdepDirInGlobalVirtualStore = path142.join(opts2.globalVirtualStoreDir, subdepRelPath, "node_modules", subdep.name);
    if (!fs75.existsSync(path142.join(subdepDirInGlobalVirtualStore, "package.json"))) {
      opts2.reportStarted();
      const { fetching } = await opts2.store.fetchPackage({
        force: true,
        lockfileDir: opts2.rootDir,
        pkg: {
          id: `${subdep.name}@${subdep.version}`,
          resolution: subdep.resolution
        }
      });
      const { files: filesResponse } = await fetching();
      await opts2.store.importPackage(subdepDirInGlobalVirtualStore, {
        force: true,
        requiresBuild: false,
        filesResponse
      });
    }
    const linkPath = path142.join(opts2.parentNodeModulesDir, subdep.name);
    if (await symlinkPointsTo(linkPath, subdepDirInGlobalVirtualStore)) {
      return;
    }
    opts2.reportStarted();
    await fs75.promises.mkdir(path142.dirname(linkPath), { recursive: true });
    await symlinkDir(subdepDirInGlobalVirtualStore, linkPath);
  }));
}
async function symlinkPointsTo(linkPath, expectedTarget) {
  try {
    const [linkReal, targetReal] = await Promise.all([
      fs75.promises.realpath(linkPath),
      fs75.promises.realpath(expectedTarget)
    ]);
    return linkReal === targetReal;
  } catch {
    return false;
  }
}
var init_installConfigDeps = __esm({
  "../installing/env-installer/lib/installConfigDeps.js"() {
    "use strict";
    init_lib28();
    init_lib15();
    init_lib6();
    init_lib72();
    init_lib2();
    init_lib41();
    init_lib78();
    init_rimraf();
    init_lib68();
    init_dist4();
    init_migrateConfigDeps();
  }
});

// ../installing/env-installer/lib/pruneEnvLockfile.js
function convertToLockfileEnvObject(envLockfile) {
  return convertToLockfileObject({
    lockfileVersion: envLockfile.lockfileVersion,
    importers: {
      ".": {
        dependencies: {
          ...envLockfile.importers["."].configDependencies,
          ...envLockfile.importers["."].packageManagerDependencies ?? {}
        }
      }
    },
    packages: envLockfile.packages,
    snapshots: envLockfile.snapshots
  });
}
function pruneEnvLockfile(envLockfile) {
  const lockfileObject = convertToLockfileEnvObject(envLockfile);
  const pruned = pruneSharedLockfile(lockfileObject);
  const prunedFile = convertToLockfileFile(pruned);
  envLockfile.packages = prunedFile.packages ?? {};
  envLockfile.snapshots = prunedFile.snapshots ?? {};
}
var init_pruneEnvLockfile = __esm({
  "../installing/env-installer/lib/pruneEnvLockfile.js"() {
    "use strict";
    init_lib78();
    init_lib107();
  }
});

// ../installing/env-installer/lib/resolveOptionalSubdeps.js
import util36 from "node:util";
async function resolveOptionalSubdeps(parentName, parentManifest, opts2) {
  const optionalDeps = parentManifest.optionalDependencies;
  if (!optionalDeps || Object.keys(optionalDeps).length === 0) {
    return void 0;
  }
  const resolved = {};
  await Promise.all(Object.entries(optionalDeps).map(async ([subdepName, subdepSpec]) => {
    if (import_semver40.default.valid(subdepSpec) == null) {
      throw new PnpmError("CONFIG_DEP_OPTIONAL_NOT_EXACT", `Cannot install "${subdepName}@${subdepSpec}" as an optionalDependency of config dependency "${parentName}": only exact versions are supported (got "${subdepSpec}")`);
    }
    let resolution;
    try {
      resolution = await opts2.resolveFromNpm({ alias: subdepName, bareSpecifier: subdepSpec, optional: true }, {
        lockfileDir: opts2.lockfileDir,
        preferredVersions: {},
        projectDir: opts2.lockfileDir
      });
    } catch (err) {
      if (util36.types.isNativeError(err) && "code" in err && err.code === "ERR_PNPM_TRUST_DOWNGRADE") {
        throw err;
      }
      skippedOptionalDependencyLogger.debug({
        details: util36.types.isNativeError(err) ? err.toString() : String(err),
        package: {
          name: subdepName,
          // No resolved version yet; surface the requested specifier so log
          // consumers that format `${name}@${version}` don't render `@undefined`.
          version: subdepSpec,
          bareSpecifier: subdepSpec
        },
        parents: [{ id: `${parentName}@${parentManifest.version}`, name: parentName, version: parentManifest.version }],
        prefix: opts2.lockfileDir,
        reason: "resolution_failure"
      });
      return;
    }
    if (resolution?.resolution == null || !("integrity" in resolution.resolution) || typeof resolution.resolution.integrity !== "string" || !resolution.resolution.integrity || resolution.manifest == null) {
      throw new PnpmError("BAD_CONFIG_DEP", `Cannot resolve optionalDependency "${subdepName}" of config dependency "${parentName}" because it has no integrity`);
    }
    const subdepVersion = resolution.manifest.version;
    const registry = pickRegistryForPackage(opts2.registries, subdepName);
    const subdepKey = `${subdepName}@${subdepVersion}`;
    opts2.envLockfile.packages[subdepKey] = {
      resolution: toLockfileResolution({ name: subdepName, version: subdepVersion }, resolution.resolution, registry),
      ...pickPlatformFields(resolution.manifest)
    };
    if (opts2.envLockfile.snapshots[subdepKey] == null) {
      opts2.envLockfile.snapshots[subdepKey] = { optional: true };
    }
    resolved[subdepName] = subdepVersion;
  }));
  return Object.keys(resolved).length > 0 ? resolved : void 0;
}
function pickPlatformFields(manifest) {
  const out = {};
  if (manifest.os?.length)
    out.os = manifest.os;
  if (manifest.cpu?.length)
    out.cpu = manifest.cpu;
  if (manifest.libc?.length)
    out.libc = manifest.libc;
  return out;
}
var import_semver40;
var init_resolveOptionalSubdeps = __esm({
  "../installing/env-installer/lib/resolveOptionalSubdeps.js"() {
    "use strict";
    init_lib15();
    init_lib6();
    init_lib2();
    init_lib70();
    import_semver40 = __toESM(require_semver2(), 1);
  }
});

// ../installing/env-installer/lib/resolveAndInstallConfigDeps.js
async function resolveAndInstallConfigDeps(configDeps, opts2) {
  const envLockfile = await readEnvLockfile(opts2.rootDir) ?? createEnvLockfile();
  const lockfileConfigDeps = envLockfile.importers["."].configDependencies;
  const depsToResolve = [];
  let lockfileChanged = false;
  for (const [name, value] of Object.entries(configDeps)) {
    if (typeof value === "object") {
      if (!lockfileConfigDeps[name]) {
        const registry = pickRegistryForPackage(opts2.registries, name);
        const { version: version2, integrity } = parseIntegrity(name, value.integrity);
        const tarball = value.tarball ?? src_default(name, version2, { registry });
        const pkgKey = `${name}@${version2}`;
        lockfileConfigDeps[name] = { specifier: version2, version: version2 };
        envLockfile.packages[pkgKey] = {
          resolution: toLockfileResolution({ name, version: version2 }, { integrity, tarball }, registry)
        };
        envLockfile.snapshots[pkgKey] = {};
        lockfileChanged = true;
      }
      continue;
    }
    if (value.includes("+")) {
      if (!lockfileConfigDeps[name]) {
        const registry = pickRegistryForPackage(opts2.registries, name);
        const { version: version2, integrity } = parseIntegrity(name, value);
        const tarball = src_default(name, version2, { registry });
        const pkgKey = `${name}@${version2}`;
        lockfileConfigDeps[name] = { specifier: version2, version: version2 };
        envLockfile.packages[pkgKey] = {
          resolution: toLockfileResolution({ name, version: version2 }, { integrity, tarball }, registry)
        };
        envLockfile.snapshots[pkgKey] = {};
        lockfileChanged = true;
      }
      continue;
    }
    const specifier = value;
    const existing = lockfileConfigDeps[name];
    if (existing && existing.specifier === specifier) {
      const pkgKey = `${name}@${existing.version}`;
      if (envLockfile.packages[pkgKey])
        continue;
    }
    depsToResolve.push({ name, specifier });
  }
  if (opts2.frozenLockfile && (lockfileChanged || depsToResolve.length > 0)) {
    throw new PnpmError("FROZEN_LOCKFILE_WITH_OUTDATED_LOCKFILE", 'Cannot update configDependencies with "frozen-lockfile" because the lockfile is not up to date');
  }
  if (depsToResolve.length === 0) {
    if (lockfileChanged) {
      await writeEnvLockfile(opts2.rootDir, envLockfile);
    }
    await installConfigDeps(envLockfile, opts2);
    return;
  }
  const fetch2 = createFetchFromRegistry(opts2);
  const getAuthHeader = createGetAuthHeaderByURI(opts2.configByUri ?? {}, opts2.registries?.default);
  const { resolveFromNpm } = createNpmResolver(fetch2, getAuthHeader, opts2);
  await Promise.all(depsToResolve.map(async ({ name, specifier }) => {
    const resolution = await resolveFromNpm({ alias: name, bareSpecifier: specifier }, {
      lockfileDir: opts2.rootDir,
      preferredVersions: {},
      projectDir: opts2.rootDir
    });
    if (resolution?.resolution == null || !("integrity" in resolution.resolution) || typeof resolution.resolution.integrity !== "string" || !resolution.resolution.integrity) {
      throw new PnpmError("BAD_CONFIG_DEP", `Cannot resolve ${name}@${specifier} as a configuration dependency because it has no integrity`);
    }
    const version2 = resolution.manifest.version;
    const registry = pickRegistryForPackage(opts2.registries, name);
    const pkgKey = `${name}@${version2}`;
    lockfileConfigDeps[name] = {
      specifier,
      version: version2
    };
    envLockfile.packages[pkgKey] = {
      resolution: toLockfileResolution({ name, version: version2 }, resolution.resolution, registry)
    };
    const optionalSubdeps = await resolveOptionalSubdeps(name, resolution.manifest, {
      envLockfile,
      lockfileDir: opts2.rootDir,
      registries: opts2.registries,
      resolveFromNpm
    });
    envLockfile.snapshots[pkgKey] = optionalSubdeps ? { optionalDependencies: optionalSubdeps } : {};
  }));
  pruneEnvLockfile(envLockfile);
  await writeEnvLockfile(opts2.rootDir, envLockfile);
  await installConfigDeps(envLockfile, opts2);
}
var init_resolveAndInstallConfigDeps = __esm({
  "../installing/env-installer/lib/resolveAndInstallConfigDeps.js"() {
    "use strict";
    init_lib15();
    init_lib2();
    init_lib78();
    init_lib70();
    init_lib48();
    init_lib49();
    init_lib24();
    init_lib68();
    init_installConfigDeps();
    init_parseIntegrity();
    init_pruneEnvLockfile();
    init_resolveOptionalSubdeps();
  }
});

// ../installing/env-installer/lib/resolveConfigDeps.js
async function resolveConfigDeps(configDeps, opts2) {
  if (opts2.frozenLockfile) {
    throw new PnpmError("FROZEN_LOCKFILE_WITH_OUTDATED_LOCKFILE", 'Cannot resolve configDependencies with "frozen-lockfile" because the lockfile is not up to date');
  }
  const fetch2 = createFetchFromRegistry(opts2);
  const getAuthHeader = createGetAuthHeaderByURI(opts2.configByUri ?? {}, opts2.registries?.default);
  const { resolveFromNpm } = createNpmResolver(fetch2, getAuthHeader, opts2);
  const configDependencySpecifiers = extractSpecifiers(opts2.configDependencies);
  const envLockfile = await readEnvLockfile(opts2.rootDir) ?? createEnvLockfile();
  await Promise.all(configDeps.map(async (configDep) => {
    const wantedDep = parseWantedDependency(configDep);
    if (!wantedDep.alias) {
      throw new PnpmError("BAD_CONFIG_DEP", `Cannot install ${configDep} as configuration dependency`);
    }
    const resolution = await resolveFromNpm(wantedDep, {
      lockfileDir: opts2.rootDir,
      preferredVersions: {},
      projectDir: opts2.rootDir
    });
    if (resolution?.resolution == null || !("integrity" in resolution.resolution) || typeof resolution.resolution.integrity !== "string" || !resolution.resolution.integrity) {
      throw new PnpmError("BAD_CONFIG_DEP", `Cannot install ${configDep} as configuration dependency because it has no integrity`);
    }
    const pkgName = wantedDep.alias;
    const version2 = resolution.manifest.version;
    const registry = pickRegistryForPackage(opts2.registries, pkgName);
    configDependencySpecifiers[pkgName] = wantedDep.bareSpecifier ?? version2;
    const pkgKey = `${pkgName}@${version2}`;
    envLockfile.importers["."].configDependencies[pkgName] = {
      specifier: configDependencySpecifiers[pkgName],
      version: version2
    };
    envLockfile.packages[pkgKey] = {
      resolution: toLockfileResolution({ name: pkgName, version: version2 }, resolution.resolution, registry)
    };
    const optionalSubdeps = await resolveOptionalSubdeps(pkgName, resolution.manifest, {
      envLockfile,
      lockfileDir: opts2.rootDir,
      registries: opts2.registries,
      resolveFromNpm
    });
    envLockfile.snapshots[pkgKey] = optionalSubdeps ? { optionalDependencies: optionalSubdeps } : {};
  }));
  pruneEnvLockfile(envLockfile);
  await Promise.all([
    writeSettings({
      ...opts2,
      rootProjectManifestDir: opts2.rootDir,
      workspaceDir: opts2.rootDir,
      updatedSettings: {
        configDependencies: configDependencySpecifiers
      }
    }),
    writeEnvLockfile(opts2.rootDir, envLockfile)
  ]);
  await installConfigDeps(envLockfile, opts2);
}
function extractSpecifiers(configDependencies) {
  if (!configDependencies)
    return {};
  const specifiers = {};
  for (const [name, value] of Object.entries(configDependencies)) {
    if (typeof value === "object") {
      const sepIndex = value.integrity.indexOf("+");
      specifiers[name] = sepIndex !== -1 ? value.integrity.substring(0, sepIndex) : value.integrity;
    } else {
      const sepIndex = value.indexOf("+");
      specifiers[name] = sepIndex !== -1 ? value.substring(0, sepIndex) : value;
    }
  }
  return specifiers;
}
var init_resolveConfigDeps = __esm({
  "../installing/env-installer/lib/resolveConfigDeps.js"() {
    "use strict";
    init_lib15();
    init_lib100();
    init_lib2();
    init_lib78();
    init_lib70();
    init_lib48();
    init_lib49();
    init_lib24();
    init_lib96();
    init_installConfigDeps();
    init_pruneEnvLockfile();
    init_resolveOptionalSubdeps();
  }
});

// ../installing/env-installer/lib/resolveManifestDependencies.js
import path143 from "node:path";
async function resolveManifestDependencies(manifest, opts2) {
  const dir = opts2.dir;
  const emptyLockfile = {
    lockfileVersion: LOCKFILE_VERSION,
    importers: {
      ["."]: { specifiers: {} }
    }
  };
  const wantedDependencies = getWantedDependencies(manifest).map((dep) => ({ ...dep, updateSpec: true }));
  const { newLockfile, waitTillAllFetchingsFinish } = await resolveDependencies2([
    {
      id: ".",
      manifest,
      modulesDir: path143.join(opts2.dir, "node_modules"),
      rootDir: dir,
      wantedDependencies,
      binsDir: path143.join(opts2.dir, "node_modules", ".bin"),
      updatePackageManifest: false
    }
  ], {
    allowedDeprecatedVersions: {},
    allowUnusedPatches: true,
    currentLockfile: emptyLockfile,
    defaultUpdateDepth: 0,
    dryRun: true,
    engineStrict: false,
    force: false,
    forceFullResolution: true,
    hooks: {},
    lockfileDir: opts2.dir,
    nodeVersion: process.version,
    pnpmVersion: "",
    preferWorkspacePackages: false,
    preserveWorkspaceProtocol: false,
    registries: opts2.registries,
    saveWorkspaceProtocol: false,
    storeController: opts2.storeController,
    tag: "latest",
    virtualStoreDir: path143.join(opts2.dir, "node_modules", ".pnpm"),
    globalVirtualStoreDir: path143.join(opts2.storeDir, "links"),
    virtualStoreDirMaxLength: 120,
    wantedLockfile: emptyLockfile,
    workspacePackages: /* @__PURE__ */ new Map(),
    peersSuffixMaxLength: 1e3,
    allProjectIds: ["."]
  });
  await waitTillAllFetchingsFinish();
  return newLockfile;
}
var init_resolveManifestDependencies = __esm({
  "../installing/env-installer/lib/resolveManifestDependencies.js"() {
    "use strict";
    init_lib();
    init_lib108();
  }
});

// ../installing/env-installer/lib/resolvePackageManagerIntegrities.js
function isPackageManagerResolved(envLockfile, pnpmVersion) {
  if (!envLockfile)
    return false;
  const pmDeps = envLockfile.importers["."].packageManagerDependencies;
  return pmDeps != null && pmDeps["pnpm"]?.version === pnpmVersion && pmDeps["@pnpm/exe"]?.version === pnpmVersion;
}
async function resolvePackageManagerIntegrities(pnpmVersion, opts2) {
  const save = opts2.save ?? true;
  const envLockfile = opts2.envLockfile ?? (save ? await readEnvLockfile(opts2.rootDir) : void 0) ?? createEnvLockfile();
  if (isPackageManagerResolved(envLockfile, pnpmVersion)) {
    return envLockfile;
  }
  const lockfile = await resolveManifestDependencies({
    dependencies: {
      "pnpm": pnpmVersion,
      "@pnpm/exe": pnpmVersion
    }
  }, {
    dir: opts2.rootDir,
    registries: opts2.registries,
    storeController: opts2.storeController,
    storeDir: opts2.storeDir
  });
  if (lockfile.packages) {
    const importer = lockfile.importers["."];
    const packageManagerDependencies = {};
    for (const [name, version2] of Object.entries(importer.dependencies ?? {})) {
      packageManagerDependencies[name] = {
        specifier: importer.specifiers[name],
        version: version2
      };
    }
    envLockfile.importers["."].packageManagerDependencies = packageManagerDependencies;
    const merged = convertToLockfileEnvObject(envLockfile);
    for (const [depPath, pkg] of Object.entries(lockfile.packages)) {
      merged.packages[depPath] = pkg;
    }
    const pruned = pruneSharedLockfile(merged);
    const prunedFile = convertToLockfileFile(pruned);
    envLockfile.packages = prunedFile.packages ?? {};
    envLockfile.snapshots = prunedFile.snapshots ?? {};
    if (save) {
      await writeEnvLockfile(opts2.rootDir, envLockfile);
    }
  }
  return envLockfile;
}
var init_resolvePackageManagerIntegrities = __esm({
  "../installing/env-installer/lib/resolvePackageManagerIntegrities.js"() {
    "use strict";
    init_lib78();
    init_lib107();
    init_pruneEnvLockfile();
    init_resolveManifestDependencies();
  }
});

// ../installing/env-installer/lib/index.js
var init_lib130 = __esm({
  "../installing/env-installer/lib/index.js"() {
    "use strict";
    init_installConfigDeps();
    init_resolveAndInstallConfigDeps();
    init_resolveConfigDeps();
    init_resolvePackageManagerIntegrities();
  }
});

// ../installing/commands/lib/getFetchFullMetadata.js
var getFetchFullMetadata;
var init_getFetchFullMetadata = __esm({
  "../installing/commands/lib/getFetchFullMetadata.js"() {
    "use strict";
    getFetchFullMetadata = (opts2) => opts2.supportedArchitectures?.libc && true;
  }
});

// ../workspace/state/lib/filePath.js
import path144 from "node:path";
var getFilePath;
var init_filePath = __esm({
  "../workspace/state/lib/filePath.js"() {
    "use strict";
    getFilePath = (workspaceDir) => path144.join(workspaceDir, "node_modules", ".pnpm-workspace-state-v1.json");
  }
});

// ../workspace/state/lib/loadWorkspaceState.js
import fs76 from "node:fs";
import util37 from "node:util";
function loadWorkspaceState(workspaceDir) {
  logger.debug({ msg: "loading workspace state" });
  const cacheFile = getFilePath(workspaceDir);
  let cacheFileContent;
  try {
    cacheFileContent = fs76.readFileSync(cacheFile, "utf-8");
  } catch (error) {
    if (util37.types.isNativeError(error) && "code" in error && error.code === "ENOENT") {
      return void 0;
    }
    throw error;
  }
  return JSON.parse(cacheFileContent);
}
var init_loadWorkspaceState = __esm({
  "../workspace/state/lib/loadWorkspaceState.js"() {
    "use strict";
    init_lib3();
    init_filePath();
  }
});

// ../workspace/state/lib/types.js
var WORKSPACE_STATE_SETTING_KEYS;
var init_types3 = __esm({
  "../workspace/state/lib/types.js"() {
    "use strict";
    WORKSPACE_STATE_SETTING_KEYS = [
      "allowBuilds",
      "autoInstallPeers",
      "catalogs",
      "dedupeDirectDeps",
      "dedupeInjectedDeps",
      "dedupePeerDependents",
      "dedupePeers",
      "dev",
      "excludeLinksFromLockfile",
      "hoistPattern",
      "hoistWorkspacePackages",
      "ignoredOptionalDependencies",
      "injectWorkspacePackages",
      "linkWorkspacePackages",
      // The lockfile-resolution verifier short-circuits on a per-lockfile
      // cache that's keyed by these policy settings; if any of them
      // changes (turning a policy on, shrinking an exclude list, etc.) the
      // workspace state needs to look stale so `optimisticRepeatInstall`
      // doesn't skip the verifier fan-out.
      "minimumReleaseAge",
      "minimumReleaseAgeStrict",
      "minimumReleaseAgeExclude",
      "minimumReleaseAgeIgnoreMissingTime",
      "nodeLinker",
      "optional",
      "overrides",
      "packageExtensions",
      "patchedDependencies",
      "peersSuffixMaxLength",
      "preferWorkspacePackages",
      "production",
      "publicHoistPattern",
      "trustPolicy",
      "trustPolicyExclude",
      "trustPolicyIgnoreAfter",
      "workspacePackagePatterns"
    ];
  }
});

// ../workspace/state/lib/createWorkspaceState.js
var createWorkspaceState;
var init_createWorkspaceState = __esm({
  "../workspace/state/lib/createWorkspaceState.js"() {
    "use strict";
    init_es();
    init_types3();
    createWorkspaceState = (opts2) => ({
      lastValidatedTimestamp: Date.now(),
      projects: Object.fromEntries(opts2.allProjects.map((project) => [
        project.rootDir,
        {
          name: project.manifest.name,
          version: project.manifest.version
        }
      ])),
      pnpmfiles: opts2.pnpmfiles,
      settings: pick_default(WORKSPACE_STATE_SETTING_KEYS, opts2.settings),
      filteredInstall: opts2.filteredInstall,
      configDependencies: opts2.configDependencies
    });
  }
});

// ../workspace/state/lib/updateWorkspaceState.js
import fs77 from "node:fs";
import path145 from "node:path";
async function updateWorkspaceState(opts2) {
  logger.debug({ msg: "updating workspace state" });
  const workspaceState = createWorkspaceState(opts2);
  const workspaceStateJSON = JSON.stringify(workspaceState, void 0, 2) + "\n";
  const cacheFile = getFilePath(opts2.workspaceDir);
  await fs77.promises.mkdir(path145.dirname(cacheFile), { recursive: true });
  await fs77.promises.writeFile(cacheFile, workspaceStateJSON);
}
var init_updateWorkspaceState = __esm({
  "../workspace/state/lib/updateWorkspaceState.js"() {
    "use strict";
    init_lib3();
    init_createWorkspaceState();
    init_filePath();
  }
});

// ../workspace/state/lib/index.js
var init_lib131 = __esm({
  "../workspace/state/lib/index.js"() {
    "use strict";
    init_loadWorkspaceState();
    init_types3();
    init_updateWorkspaceState();
  }
});

// ../deps/status/lib/assertLockfilesEqual.js
function assertLockfilesEqual(currentLockfile, wantedLockfile, wantedLockfileDir) {
  if (!currentLockfile) {
    for (const [name, snapshot] of Object.entries(wantedLockfile.importers)) {
      if (!equals_default(snapshot.specifiers, {})) {
        throw new PnpmError("RUN_CHECK_DEPS_NO_DEPS", `Project ${name} requires dependencies but none was installed.`, {
          hint: "Run `pnpm install` to install dependencies"
        });
      }
    }
  } else if (!equals_default(currentLockfile, wantedLockfile)) {
    throw new PnpmError("RUN_CHECK_DEPS_OUTDATED_DEPS", `The installed dependencies in the modules directory is not up-to-date with the lockfile in ${wantedLockfileDir}.`, {
      hint: "Run `pnpm install` to update dependencies."
    });
  }
}
var init_assertLockfilesEqual = __esm({
  "../deps/status/lib/assertLockfilesEqual.js"() {
    "use strict";
    init_lib2();
    init_es();
  }
});

// ../deps/status/lib/safeStat.js
import fs78 from "node:fs";
import util38 from "node:util";
async function safeStat(filePath) {
  try {
    return await fs78.promises.stat(filePath);
  } catch (error) {
    if (util38.types.isNativeError(error) && "code" in error && error.code === "ENOENT") {
      return void 0;
    }
    throw error;
  }
}
function safeStatSync(filePath) {
  try {
    return fs78.statSync(filePath);
  } catch (error) {
    if (util38.types.isNativeError(error) && "code" in error && error.code === "ENOENT") {
      return void 0;
    }
    throw error;
  }
}
var init_safeStat = __esm({
  "../deps/status/lib/safeStat.js"() {
    "use strict";
  }
});

// ../deps/status/lib/statManifestFile.js
import path146 from "node:path";
async function statManifestFile(projectRootDir) {
  const attempts = await Promise.all(MANIFEST_BASE_NAMES.map((baseName) => {
    const manifestPath = path146.join(projectRootDir, baseName);
    return safeStat(manifestPath);
  }));
  return attempts.find((stats) => stats != null);
}
var init_statManifestFile = __esm({
  "../deps/status/lib/statManifestFile.js"() {
    "use strict";
    init_lib();
    init_safeStat();
  }
});

// ../deps/status/lib/checkDepsStatus.js
import fs79 from "node:fs";
import path147 from "node:path";
import util39 from "node:util";
async function checkDepsStatus(opts2) {
  const workspaceState = loadWorkspaceState(opts2.workspaceDir ?? opts2.rootProjectManifestDir);
  if (!workspaceState) {
    return {
      upToDate: false,
      issue: "Cannot check whether dependencies are outdated",
      workspaceState
    };
  }
  try {
    return await _checkDepsStatus(opts2, workspaceState);
  } catch (error) {
    if (util39.types.isNativeError(error) && "code" in error && String(error.code).startsWith("ERR_PNPM_RUN_CHECK_DEPS_")) {
      return {
        upToDate: false,
        issue: error.message,
        workspaceState
      };
    }
    return {
      upToDate: void 0,
      issue: util39.types.isNativeError(error) ? error.message : void 0,
      workspaceState
    };
  }
}
async function _checkDepsStatus(opts2, workspaceState) {
  const { allProjects, autoInstallPeers, injectWorkspacePackages, catalogs, excludeLinksFromLockfile, linkWorkspacePackages, lockfileDir, nodeLinker, patchedDependencies, rootProjectManifest, rootProjectManifestDir, sharedWorkspaceLockfile, workspaceDir } = opts2;
  if (nodeLinker === "pnp") {
    (0, import_logger76.globalWarn)("verify-deps-before-run does not work with node-linker=pnp");
    return { upToDate: true, workspaceState: void 0 };
  }
  if (opts2.ignoreFilteredInstallCache && workspaceState.filteredInstall) {
    return { upToDate: void 0, workspaceState };
  }
  if (workspaceState.settings) {
    const ignoredSettings = new Set(opts2.ignoredWorkspaceStateSettings);
    ignoredSettings.add("catalogs");
    for (const [settingName, settingValue] of Object.entries(workspaceState.settings)) {
      if (ignoredSettings.has(settingName))
        continue;
      const currentSettingValue = settingName === "allowBuilds" ? opts2.allowBuilds ?? {} : opts2[settingName];
      if (!equals_default(settingValue, currentSettingValue)) {
        return {
          upToDate: false,
          issue: `The value of the ${settingName} setting has changed`,
          workspaceState
        };
      }
    }
    if (!ignoredSettings.has("allowBuilds") && workspaceState.settings.allowBuilds == null && opts2.allowBuilds != null && !isEmpty_default(opts2.allowBuilds)) {
      return {
        upToDate: false,
        issue: "The value of the allowBuilds setting has changed",
        workspaceState
      };
    }
  }
  if ((opts2.configDependencies != null || workspaceState.configDependencies != null) && !equals_default(opts2.configDependencies ?? {}, workspaceState.configDependencies ?? {})) {
    return {
      upToDate: false,
      issue: "Configuration dependencies are not up to date",
      workspaceState
    };
  }
  const conflictedLockfileDir = findConflictedLockfileDir(getWantedLockfileDirs({
    allProjects,
    lockfileDir,
    rootProjectManifestDir,
    sharedWorkspaceLockfile,
    workspaceDir
  }), workspaceState.lastValidatedTimestamp);
  if (conflictedLockfileDir != null) {
    return {
      upToDate: false,
      issue: `The lockfile in ${conflictedLockfileDir} has merge conflicts`,
      workspaceState
    };
  }
  if (allProjects && workspaceDir) {
    if (!equals_default(filter_default((value) => value != null, workspaceState.settings.catalogs ?? {}), filter_default((value) => value != null, catalogs ?? {}))) {
      return {
        upToDate: false,
        issue: "Catalogs cache outdated",
        workspaceState
      };
    }
    if (allProjects.length !== Object.keys(workspaceState.projects).length || !allProjects.every((currentProject) => {
      const prevProject = workspaceState.projects[currentProject.rootDir];
      if (!prevProject)
        return false;
      return prevProject.name === currentProject.manifest.name && (prevProject.version ?? "0.0.0") === (currentProject.manifest.version ?? "0.0.0");
    })) {
      return {
        upToDate: false,
        issue: "The workspace structure has changed since last install",
        workspaceState
      };
    }
    let statModulesDir;
    if (nodeLinker === "hoisted") {
      const statsPromise = safeStat(path147.join(rootProjectManifestDir, "node_modules"));
      statModulesDir = () => statsPromise;
    } else {
      const _nodeLinkerTypeGuard = nodeLinker;
      statModulesDir = (project) => safeStat(path147.join(project.rootDir, "node_modules"));
    }
    const allManifestStats = await Promise.all(allProjects.map(async (project) => {
      const modulesDirStatsPromise = statModulesDir(project);
      const manifestStats = await statManifestFile(project.rootDir);
      if (!manifestStats) {
        throw new Error(`Cannot find one of ${MANIFEST_BASE_NAMES.join(", ")} in ${project.rootDir}`);
      }
      return {
        project,
        manifestStats,
        modulesDirStats: await modulesDirStatsPromise
      };
    }));
    if (!workspaceState.filteredInstall) {
      for (const { modulesDirStats, project } of allManifestStats) {
        if (modulesDirStats)
          continue;
        if (isEmpty_default({
          ...project.manifest.dependencies,
          ...project.manifest.devDependencies
        }))
          continue;
        const id = project.manifest.name ?? project.rootDir;
        return {
          upToDate: false,
          issue: `Workspace package ${id} has dependencies but does not have a modules directory`,
          workspaceState
        };
      }
    }
    const issue = await patchesOrHooksAreModified({
      patchedDependencies,
      rootDir: rootProjectManifestDir,
      lastValidatedTimestamp: workspaceState.lastValidatedTimestamp,
      currentPnpmfiles: opts2.pnpmfile,
      previousPnpmfiles: workspaceState.pnpmfiles
    });
    if (issue) {
      return { upToDate: false, issue, workspaceState };
    }
    const modifiedProjects = allManifestStats.filter(({ manifestStats }) => manifestStats.mtime.valueOf() > workspaceState.lastValidatedTimestamp);
    if (modifiedProjects.length === 0) {
      import_logger76.logger.debug({ msg: "No manifest files were modified since the last validation. Exiting check." });
      return { upToDate: true, workspaceState };
    }
    import_logger76.logger.debug({ msg: "Some manifest files were modified since the last validation. Continuing check." });
    let readWantedLockfileAndDir;
    if (sharedWorkspaceLockfile) {
      let wantedLockfileStats;
      try {
        wantedLockfileStats = fs79.statSync(path147.join(workspaceDir, WANTED_LOCKFILE));
      } catch (error) {
        if (util39.types.isNativeError(error) && "code" in error && error.code === "ENOENT") {
          return throwLockfileNotFound(workspaceDir);
        } else {
          throw error;
        }
      }
      const wantedLockfilePromise = readWantedLockfile(workspaceDir, { ignoreIncompatible: false });
      if (wantedLockfileStats.mtime.valueOf() > workspaceState.lastValidatedTimestamp) {
        const currentLockfile = await readCurrentLockfile(path147.join(workspaceDir, "node_modules/.pnpm"), { ignoreIncompatible: false });
        const wantedLockfile = await wantedLockfilePromise ?? throwLockfileNotFound(workspaceDir);
        assertLockfilesEqual(currentLockfile, wantedLockfile, workspaceDir);
      }
      readWantedLockfileAndDir = async () => ({
        wantedLockfile: await wantedLockfilePromise ?? throwLockfileNotFound(workspaceDir),
        wantedLockfileDir: workspaceDir
      });
    } else {
      readWantedLockfileAndDir = async (wantedLockfileDir) => {
        const wantedLockfilePromise = readWantedLockfile(wantedLockfileDir, { ignoreIncompatible: false });
        const wantedLockfileStats = await safeStat(path147.join(wantedLockfileDir, WANTED_LOCKFILE));
        if (!wantedLockfileStats)
          return throwLockfileNotFound(wantedLockfileDir);
        if (wantedLockfileStats.mtime.valueOf() > workspaceState.lastValidatedTimestamp) {
          const currentLockfile = await readCurrentLockfile(path147.join(wantedLockfileDir, "node_modules/.pnpm"), { ignoreIncompatible: false });
          const wantedLockfile = await wantedLockfilePromise ?? throwLockfileNotFound(wantedLockfileDir);
          assertLockfilesEqual(currentLockfile, wantedLockfile, wantedLockfileDir);
        }
        return {
          wantedLockfile: await wantedLockfilePromise ?? throwLockfileNotFound(wantedLockfileDir),
          wantedLockfileDir
        };
      };
    }
    const getProjectId = sharedWorkspaceLockfile ? (project) => getLockfileImporterId(workspaceDir, project.rootDir) : () => ".";
    const getWorkspacePackages = once_default(arrayOfWorkspacePackagesToMap.bind(null, allProjects));
    const getManifestsByDir = once_default(() => getWorkspacePackagesByDirectory(getWorkspacePackages()));
    const assertCtx = {
      autoInstallPeers,
      injectWorkspacePackages,
      config: opts2,
      excludeLinksFromLockfile,
      linkWorkspacePackages,
      getManifestsByDir,
      getWorkspacePackages,
      rootDir: workspaceDir
    };
    try {
      await Promise.all(modifiedProjects.map(async ({ project }) => {
        const { wantedLockfile, wantedLockfileDir } = await readWantedLockfileAndDir(project.rootDir);
        await assertWantedLockfileUpToDate(assertCtx, {
          projectDir: project.rootDir,
          projectId: getProjectId(project),
          projectManifest: project.manifest,
          wantedLockfile,
          wantedLockfileDir
        });
      }));
    } catch (err) {
      return {
        upToDate: false,
        issue: util39.types.isNativeError(err) && "message" in err ? err.message : void 0,
        workspaceState
      };
    }
    await updateWorkspaceState({
      allProjects,
      workspaceDir,
      pnpmfiles: workspaceState.pnpmfiles,
      settings: opts2,
      filteredInstall: workspaceState.filteredInstall
    });
    return { upToDate: true, workspaceState };
  }
  if (!allProjects) {
    const workspaceRoot = workspaceDir ?? rootProjectManifestDir;
    const workspaceManifest = await readWorkspaceManifest(workspaceRoot);
    if (workspaceManifest ?? workspaceDir) {
      const allProjects2 = await findWorkspaceProjectsNoCheck(rootProjectManifestDir, {
        patterns: workspaceManifest?.packages
      });
      return checkDepsStatus({
        ...opts2,
        allProjects: allProjects2
      });
    }
  } else {
    throw new Error("Impossible variant: allProjects is defined but workspaceDir is undefined");
  }
  if (rootProjectManifest && rootProjectManifestDir) {
    const internalPnpmDir = path147.join(rootProjectManifestDir, "node_modules", ".pnpm");
    const currentLockfilePromise = readCurrentLockfile(internalPnpmDir, { ignoreIncompatible: false });
    const wantedLockfilePromise = readWantedLockfile(rootProjectManifestDir, { ignoreIncompatible: false });
    const [currentLockfileStats, wantedLockfileStats, manifestStats] = await Promise.all([
      safeStat(path147.join(internalPnpmDir, "lock.yaml")),
      safeStat(path147.join(rootProjectManifestDir, WANTED_LOCKFILE)),
      statManifestFile(rootProjectManifestDir)
    ]);
    if (!wantedLockfileStats)
      return throwLockfileNotFound(rootProjectManifestDir);
    const issue = await patchesOrHooksAreModified({
      patchedDependencies,
      rootDir: rootProjectManifestDir,
      lastValidatedTimestamp: wantedLockfileStats.mtime.valueOf(),
      currentPnpmfiles: opts2.pnpmfile,
      previousPnpmfiles: workspaceState.pnpmfiles
    });
    if (issue) {
      return { upToDate: false, issue, workspaceState };
    }
    if (currentLockfileStats && wantedLockfileStats.mtime.valueOf() > currentLockfileStats.mtime.valueOf()) {
      const currentLockfile = await currentLockfilePromise;
      const wantedLockfile = await wantedLockfilePromise ?? throwLockfileNotFound(rootProjectManifestDir);
      assertLockfilesEqual(currentLockfile, wantedLockfile, rootProjectManifestDir);
    }
    if (!manifestStats) {
      throw new Error(`Cannot find one of ${MANIFEST_BASE_NAMES.join(", ")} in ${rootProjectManifestDir}`);
    }
    if (manifestStats.mtime.valueOf() > wantedLockfileStats.mtime.valueOf()) {
      import_logger76.logger.debug({ msg: "The manifest is newer than the lockfile. Continuing check." });
      try {
        await assertWantedLockfileUpToDate({
          autoInstallPeers,
          injectWorkspacePackages,
          config: opts2,
          excludeLinksFromLockfile,
          linkWorkspacePackages,
          getManifestsByDir: () => ({}),
          getWorkspacePackages: () => void 0,
          rootDir: rootProjectManifestDir
        }, {
          projectDir: rootProjectManifestDir,
          projectId: ".",
          projectManifest: rootProjectManifest,
          wantedLockfile: await wantedLockfilePromise ?? throwLockfileNotFound(rootProjectManifestDir),
          wantedLockfileDir: rootProjectManifestDir
        });
      } catch (err) {
        return {
          upToDate: false,
          issue: util39.types.isNativeError(err) && "message" in err ? err.message : void 0,
          workspaceState
        };
      }
    } else if (currentLockfileStats) {
      import_logger76.logger.debug({ msg: "The manifest file is not newer than the lockfile. Exiting check." });
    } else {
      const wantedLockfile = await wantedLockfilePromise ?? throwLockfileNotFound(rootProjectManifestDir);
      if (!isEmpty_default(wantedLockfile.packages ?? {})) {
        throw new PnpmError("RUN_CHECK_DEPS_NO_DEPS", "The lockfile requires dependencies but none were installed", {
          hint: "Run `pnpm install` to install dependencies"
        });
      }
    }
    return { upToDate: true, workspaceState };
  }
  (0, import_logger76.globalWarn)("Skipping check.");
  return { upToDate: void 0, workspaceState };
}
async function assertWantedLockfileUpToDate(ctx, opts2) {
  const { autoInstallPeers, config, excludeLinksFromLockfile, linkWorkspacePackages, getManifestsByDir, getWorkspacePackages } = ctx;
  const { projectDir, projectId, projectManifest, wantedLockfile, wantedLockfileDir } = opts2;
  const [patchedDependencies, pnpmfileChecksum] = await Promise.all([
    calcPatchHashes(config.patchedDependencies ?? {}),
    config.hooks?.calculatePnpmfileChecksum?.()
  ]);
  const outdatedLockfileSettingName = getOutdatedLockfileSetting(wantedLockfile, {
    catalogs: config.catalogs,
    autoInstallPeers: config.autoInstallPeers,
    injectWorkspacePackages: config.injectWorkspacePackages,
    excludeLinksFromLockfile: config.excludeLinksFromLockfile,
    peersSuffixMaxLength: config.peersSuffixMaxLength,
    overrides: createOverridesMapFromParsed(parseOverrides(config.overrides ?? {}, config.catalogs)),
    ignoredOptionalDependencies: config.ignoredOptionalDependencies?.sort(),
    packageExtensionsChecksum: hashObjectNullableWithPrefix(config.packageExtensions),
    patchedDependencies,
    pnpmfileChecksum
  });
  if (outdatedLockfileSettingName) {
    throw new PnpmError("RUN_CHECK_DEPS_OUTDATED_LOCKFILE", `Setting ${outdatedLockfileSettingName} of lockfile in ${wantedLockfileDir} is outdated`, {
      hint: "Run `pnpm install` to update the lockfile"
    });
  }
  if (!satisfiesPackageManifest({
    autoInstallPeers,
    excludeLinksFromLockfile
  }, wantedLockfile.importers[projectId], projectManifest).satisfies) {
    throw new PnpmError("RUN_CHECK_DEPS_UNSATISFIED_PKG_MANIFEST", `The lockfile in ${wantedLockfileDir} does not satisfy project of id ${projectId}`, {
      hint: "Run `pnpm install` to update the lockfile"
    });
  }
  if (!await linkedPackagesAreUpToDate({
    linkWorkspacePackages: !!linkWorkspacePackages,
    lockfileDir: wantedLockfileDir,
    manifestsByDir: getManifestsByDir(),
    workspacePackages: getWorkspacePackages(),
    lockfilePackages: wantedLockfile.packages
  }, {
    dir: projectDir,
    manifest: projectManifest,
    snapshot: wantedLockfile.importers[projectId]
  })) {
    throw new PnpmError("RUN_CHECK_DEPS_LINKED_PKGS_OUTDATED", `The linked packages by ${projectDir} is outdated`, {
      hint: "Run `pnpm install` to update the packages"
    });
  }
}
function throwLockfileNotFound(wantedLockfileDir) {
  throw new PnpmError("RUN_CHECK_DEPS_LOCKFILE_NOT_FOUND", `Cannot find a lockfile in ${wantedLockfileDir}`, {
    hint: "Run `pnpm install` to create the lockfile"
  });
}
function getWantedLockfileDirs(opts2) {
  if (opts2.allProjects && opts2.workspaceDir && opts2.sharedWorkspaceLockfile === false) {
    return [...new Set(opts2.allProjects.map(({ rootDir }) => rootDir))];
  }
  return [opts2.lockfileDir ?? opts2.workspaceDir ?? opts2.rootProjectManifestDir];
}
function findConflictedLockfileDir(lockfileDirs, lastValidatedTimestamp) {
  for (const lockfileDir of lockfileDirs) {
    let mtime;
    try {
      mtime = fs79.statSync(path147.join(lockfileDir, WANTED_LOCKFILE)).mtime.valueOf();
    } catch (err) {
      if (util39.types.isNativeError(err) && "code" in err && err.code === "ENOENT")
        continue;
      throw err;
    }
    if (mtime <= lastValidatedTimestamp)
      continue;
    if (wantedLockfileHasMergeConflictsSync(lockfileDir))
      return lockfileDir;
  }
  return void 0;
}
async function patchesOrHooksAreModified(opts2) {
  if (opts2.patchedDependencies) {
    const allPatchStats = await Promise.all(Object.values(opts2.patchedDependencies).map((patchFile) => {
      return safeStat(patchFile);
    }));
    if (allPatchStats.some((patch) => patch && patch.mtime.valueOf() > opts2.lastValidatedTimestamp)) {
      return "Patches were modified";
    }
  }
  if (!equals_default(opts2.currentPnpmfiles, opts2.previousPnpmfiles)) {
    return "The list of pnpmfiles changed.";
  }
  for (const pnpmfilePath of opts2.currentPnpmfiles) {
    const pnpmfileStats = safeStatSync(pnpmfilePath);
    if (pnpmfileStats == null) {
      return `pnpmfile at "${pnpmfilePath}" was removed`;
    }
    if (pnpmfileStats.mtime.valueOf() > opts2.lastValidatedTimestamp) {
      return `pnpmfile at "${pnpmfilePath}" was modified`;
    }
  }
  return void 0;
}
var import_logger76;
var init_checkDepsStatus = __esm({
  "../deps/status/lib/checkDepsStatus.js"() {
    "use strict";
    init_lib97();
    init_lib();
    init_lib67();
    init_lib2();
    init_lib87();
    init_lib78();
    init_lib122();
    init_lib121();
    import_logger76 = __toESM(require_lib21(), 1);
    init_lib30();
    init_lib131();
    init_lib31();
    init_es();
    init_assertLockfilesEqual();
    init_safeStat();
    init_statManifestFile();
  }
});

// ../deps/status/lib/index.js
var init_lib132 = __esm({
  "../deps/status/lib/index.js"() {
    "use strict";
    init_checkDepsStatus();
    init_lib131();
  }
});

// ../installing/commands/lib/getPinnedVersion.js
function getPinnedVersion(opts2) {
  if (opts2.saveExact === true || opts2.savePrefix === "")
    return "patch";
  return opts2.savePrefix === "~" ? "minor" : "major";
}
var init_getPinnedVersion = __esm({
  "../installing/commands/lib/getPinnedVersion.js"() {
    "use strict";
  }
});

// ../installing/commands/lib/getSaveType.js
function getSaveType(opts2) {
  if (opts2.saveDev === true || opts2.savePeer)
    return "devDependencies";
  if (opts2.saveOptional)
    return "optionalDependencies";
  if (opts2.saveProd)
    return "dependencies";
  return void 0;
}
var init_getSaveType = __esm({
  "../installing/commands/lib/getSaveType.js"() {
    "use strict";
  }
});

// ../installing/commands/lib/handleIgnoredBuilds.js
async function handleIgnoredBuilds(opts2, ignoredBuilds) {
  if (!ignoredBuilds?.size)
    return;
  await writeIgnoredBuildsToAllowBuilds(opts2, ignoredBuilds);
  if (opts2.strictDepBuilds) {
    throw new IgnoredBuildsError(ignoredBuilds);
  }
}
async function writeIgnoredBuildsToAllowBuilds(opts2, ignoredBuilds) {
  const packageNames = packageNamesFromIgnoredBuilds(ignoredBuilds);
  const newEntries = {};
  for (const name of packageNames) {
    if (opts2.allowBuilds?.[name] == null) {
      newEntries[name] = "set this to true or false";
    }
  }
  if (Object.keys(newEntries).length && opts2.rootProjectManifestDir) {
    await writeSettings({
      rootProjectManifestDir: opts2.rootProjectManifestDir,
      workspaceDir: opts2.workspaceDir ?? opts2.rootProjectManifestDir,
      updatedSettings: {
        allowBuilds: { ...opts2.allowBuilds, ...newEntries }
      }
    });
  }
}
function packageNamesFromIgnoredBuilds(ignoredBuilds) {
  return Array.from(new Set(Array.from(ignoredBuilds).map((dp) => parse6(dp).name ?? dp))).sort(import_util18.lexCompare);
}
var import_util18;
var init_handleIgnoredBuilds = __esm({
  "../installing/commands/lib/handleIgnoredBuilds.js"() {
    "use strict";
    init_lib100();
    init_lib65();
    init_lib124();
    import_util18 = __toESM(require_dist3(), 1);
  }
});

// ../installing/commands/lib/policyHandlers.js
function setupPolicyHandlers(opts2) {
  const handlers = [];
  const minimumReleaseAge = createMinimumReleaseAgeHandler(opts2);
  if (minimumReleaseAge)
    handlers.push(minimumReleaseAge);
  if (handlers.length === 0)
    return void 0;
  return {
    handleResolutionPolicyViolations: async (violations) => {
      for (const handler77 of handlers) {
        if (handler77.handleResolutionPolicyViolations) {
          await handler77.handleResolutionPolicyViolations(violations);
        }
      }
    },
    pickManifestUpdates: (violations) => {
      const merged = {};
      let any = false;
      for (const handler77 of handlers) {
        if (!handler77.pickManifestUpdates)
          continue;
        const patch = handler77.pickManifestUpdates(violations);
        if (patch == null)
          continue;
        for (const [key, value] of Object.entries(patch)) {
          if (value == null)
            continue;
          merged[key] = value;
          any = true;
        }
      }
      return any ? merged : void 0;
    }
  };
}
function createMinimumReleaseAgeHandler(opts2) {
  if (!opts2.minimumReleaseAge)
    return void 0;
  const strictMode = opts2.minimumReleaseAgeStrict === true;
  const persistenceEnabled = opts2.save !== false;
  const inCi = opts2.ci ?? import_ci_info2.isCI;
  const canPrompt = !inCi && Boolean(process.stdin.isTTY);
  return {
    handleResolutionPolicyViolations: async (violations) => {
      if (!strictMode)
        return;
      const immature = filterImmatureViolations(violations);
      if (immature.length === 0)
        return;
      if (!persistenceEnabled) {
        throw new PnpmError("STRICT_MIN_RELEASE_AGE_REQUIRES_SAVE", "minimumReleaseAgeStrict cannot be combined with --no-save: approval would require writing to minimumReleaseAgeExclude in pnpm-workspace.yaml, which --no-save prevents.", {
          hint: "Drop --no-save so the exclude list can be persisted, or set minimumReleaseAgeStrict: false to let the install proceed without prompting (the lockfile would still trigger the auto-collect on the next normal install)."
        });
      }
      if (canPrompt) {
        await promptForApproval(immature);
      } else {
        throw failOnImmature(immature);
      }
    },
    pickManifestUpdates: (violations) => {
      const entries = pickImmatureEntries(violations, strictMode);
      return entries ? { addedMinimumReleaseAgeExcludes: entries } : void 0;
    }
  };
}
function filterImmatureViolations(violations) {
  return violations.filter((v) => v.code === MINIMUM_RELEASE_AGE_VIOLATION_CODE);
}
function pickImmatureEntries(violations, promptRequired) {
  const immature = filterImmatureViolations(violations);
  if (immature.length === 0)
    return void 0;
  const sorted = [...new Set(immature.map((v) => `${v.name}@${v.version}`))].sort();
  const reason = promptRequired ? "(approved at the prompt)" : "(loose mode allowed these immature versions)";
  globalInfo(`Added ${sorted.length} ${sorted.length === 1 ? "entry" : "entries"} to minimumReleaseAgeExclude in pnpm-workspace.yaml ${reason}:
  ${sorted.join("\n  ")}`);
  return sorted;
}
function failOnImmature(immature) {
  const sorted = [...immature].sort((a2, b) => `${a2.name}@${a2.version}`.localeCompare(`${b.name}@${b.version}`));
  const list2 = sorted.map((v) => `  ${v.name}@${v.version} ${v.reason}`).join("\n");
  return new PnpmError("NO_MATURE_MATCHING_VERSION", `${sorted.length} ${sorted.length === 1 ? "version does" : "versions do"} not meet the minimumReleaseAge constraint:
${list2}`, {
    hint: "Run the install interactively to approve these picks, or add them to minimumReleaseAgeExclude in pnpm-workspace.yaml, or wait for the packages to mature past the configured cutoff."
  });
}
async function promptForApproval(immature) {
  const sorted = [...immature].sort((a2, b) => `${a2.name}@${a2.version}`.localeCompare(`${b.name}@${b.version}`));
  const message = `${sorted.length} ${sorted.length === 1 ? "version does" : "versions do"} not meet the minimumReleaseAge constraint:
` + sorted.map((v) => `  ${v.name}@${v.version}`).join("\n") + "\nAdd to minimumReleaseAgeExclude in pnpm-workspace.yaml and proceed with the install?";
  const answer = await import_enquirer3.default.prompt({
    type: "confirm",
    name: "confirmed",
    message,
    initial: false
  });
  if (!answer.confirmed) {
    throw new PnpmError("MINIMUM_RELEASE_AGE_DENIED", "Aborted: the immature versions were not approved.", {
      hint: "Re-run the install without `minimumReleaseAgeStrict: true` to allow these versions, or wait for the packages to mature past the configured cutoff."
    });
  }
}
var import_ci_info2, import_enquirer3;
var init_policyHandlers = __esm({
  "../installing/commands/lib/policyHandlers.js"() {
    "use strict";
    init_lib2();
    init_lib3();
    init_lib24();
    import_ci_info2 = __toESM(require_ci_info(), 1);
    import_enquirer3 = __toESM(require_enquirer(), 1);
  }
});

// ../hooks/pnpmfile/lib/requirePnpmfile.js
import fs80 from "node:fs";
import { createRequire as createRequire6 } from "node:module";
import path148 from "node:path";
import { pathToFileURL } from "node:url";
import util40 from "node:util";
async function requirePnpmfile(pnpmFilePath, prefix) {
  try {
    let pnpmfile;
    if (pnpmFilePath.endsWith(".mjs")) {
      const url7 = pathToFileURL(path148.resolve(pnpmFilePath)).href;
      pnpmfile = await import(url7);
    } else {
      pnpmfile = require3(pnpmFilePath);
    }
    if (typeof pnpmfile === "undefined") {
      logger.warn({
        message: `Ignoring the pnpmfile at "${pnpmFilePath}". It exports "undefined".`,
        prefix
      });
      return { pnpmfileModule: void 0 };
    }
    if (pnpmfile?.hooks?.readPackage && typeof pnpmfile.hooks.readPackage !== "function") {
      throw new TypeError("hooks.readPackage should be a function");
    }
    if (pnpmfile?.hooks?.readPackage) {
      const readPackage = pnpmfile.hooks.readPackage;
      pnpmfile.hooks.readPackage = async function(pkg, ...args) {
        pkg.dependencies = pkg.dependencies ?? {};
        pkg.devDependencies = pkg.devDependencies ?? {};
        pkg.optionalDependencies = pkg.optionalDependencies ?? {};
        pkg.peerDependencies = pkg.peerDependencies ?? {};
        const newPkg = await readPackage(pkg, ...args);
        if (!newPkg) {
          throw new BadReadPackageHookError(pnpmFilePath, "readPackage hook did not return a package manifest object.");
        }
        const dependencies = ["dependencies", "devDependencies", "optionalDependencies", "peerDependencies"];
        for (const dep of dependencies) {
          if (newPkg[dep] != null && (typeof newPkg[dep] !== "object" || Array.isArray(newPkg[dep]))) {
            throw new BadReadPackageHookError(pnpmFilePath, `readPackage hook returned package manifest object's property '${dep}' must be an object.`);
          }
        }
        return newPkg;
      };
      if (pnpmfile?.hooks?.beforePacking && typeof pnpmfile.hooks.beforePacking !== "function") {
        throw new TypeError("hooks.beforePacking should be a function");
      }
    }
    return { pnpmfileModule: pnpmfile };
  } catch (err) {
    if (err instanceof SyntaxError) {
      console.error(source_default.red(`A syntax error in the "${pnpmFilePath}"
`));
      console.error(err);
      process.exit(1);
    }
    if (!util40.types.isNativeError(err)) {
      throw new PnpmFileFailError(pnpmFilePath, toError(err));
    }
    if (!("code" in err && (err.code === "MODULE_NOT_FOUND" || err.code === "ERR_MODULE_NOT_FOUND")) || pnpmFileExistsSync(pnpmFilePath)) {
      throw new PnpmFileFailError(pnpmFilePath, err);
    }
    return void 0;
  }
}
function pnpmFileExistsSync(pnpmFilePath) {
  const pnpmFileRealName = pnpmFilePath.endsWith(".cjs") || pnpmFilePath.endsWith(".mjs") ? pnpmFilePath : `${pnpmFilePath}.cjs`;
  return fs80.existsSync(pnpmFileRealName);
}
function toError(err) {
  if (err instanceof Error)
    return err;
  try {
    return new Error(String(err), { cause: err });
  } catch {
    return new Error("[non-Error value thrown]", { cause: err });
  }
}
var require3, BadReadPackageHookError, PnpmFileFailError;
var init_requirePnpmfile = __esm({
  "../hooks/pnpmfile/lib/requirePnpmfile.js"() {
    "use strict";
    init_lib2();
    init_lib3();
    init_source2();
    require3 = createRequire6(import.meta.url);
    BadReadPackageHookError = class extends PnpmError {
      pnpmfile;
      constructor(pnpmfile, message) {
        super("BAD_READ_PACKAGE_HOOK_RESULT", `${message} Hook imported via ${pnpmfile}`);
        this.pnpmfile = pnpmfile;
      }
    };
    PnpmFileFailError = class extends PnpmError {
      pnpmfile;
      originalError;
      constructor(pnpmfile, originalError) {
        super("PNPMFILE_FAIL", `Error during pnpmfile execution. pnpmfile: "${pnpmfile}". Error: "${originalError.message}".`);
        this.pnpmfile = pnpmfile;
        this.originalError = originalError;
      }
    };
  }
});

// ../hooks/pnpmfile/lib/requireHooks.js
async function requireHooks(prefix, opts2) {
  const pnpmfiles = [];
  if (opts2.globalPnpmfile) {
    pnpmfiles.push({
      path: opts2.globalPnpmfile,
      includeInChecksum: false
    });
  }
  const entries = [];
  const loadedFiles = [];
  if (opts2.tryLoadDefaultPnpmfile) {
    const mjsPath = pathAbsolute(".pnpmfile.mjs", prefix);
    const mjsResult = await requirePnpmfile(mjsPath, prefix);
    if (mjsResult != null) {
      loadedFiles.push(mjsPath);
      entries.push({
        file: mjsPath,
        includeInChecksum: true,
        hooks: mjsResult.pnpmfileModule?.hooks,
        finders: mjsResult.pnpmfileModule?.finders,
        resolvers: mjsResult.pnpmfileModule?.resolvers,
        fetchers: mjsResult.pnpmfileModule?.fetchers
      });
    } else {
      pnpmfiles.push({
        path: ".pnpmfile.cjs",
        includeInChecksum: true,
        optional: true
      });
    }
  }
  if (opts2.pnpmfiles) {
    for (const pnpmfile of opts2.pnpmfiles) {
      pnpmfiles.push({
        path: pnpmfile,
        includeInChecksum: true
      });
    }
  }
  await Promise.all(pnpmfiles.map(async ({ path: path218, includeInChecksum, optional }) => {
    const file = pathAbsolute(path218, prefix);
    if (!loadedFiles.includes(file)) {
      loadedFiles.push(file);
      const requirePnpmfileResult = await requirePnpmfile(file, prefix);
      if (requirePnpmfileResult != null) {
        entries.push({
          file,
          includeInChecksum,
          hooks: requirePnpmfileResult.pnpmfileModule?.hooks,
          finders: requirePnpmfileResult.pnpmfileModule?.finders,
          resolvers: requirePnpmfileResult.pnpmfileModule?.resolvers,
          fetchers: requirePnpmfileResult.pnpmfileModule?.fetchers
        });
      } else if (!optional) {
        throw new PnpmError("PNPMFILE_NOT_FOUND", `pnpmfile at "${file}" is not found`);
      }
    }
  }));
  const mergedFinders = {};
  const cookedHooks = {
    readPackage: [],
    beforePacking: [],
    preResolution: [],
    afterAllResolved: [],
    filterLog: [],
    updateConfig: []
  };
  if (entries.some((entry) => entry.hooks != null)) {
    cookedHooks.calculatePnpmfileChecksum = async () => {
      const filesToIncludeInHash = [];
      for (const { includeInChecksum, file } of entries) {
        if (includeInChecksum) {
          filesToIncludeInHash.push(file);
        }
      }
      filesToIncludeInHash.sort();
      return createHashFromMultipleFiles(filesToIncludeInHash);
    };
  }
  let importProvider;
  const finderProviders = {};
  for (const { hooks, file, finders } of entries) {
    if (finders != null) {
      for (const [finderName, finder2] of Object.entries(finders)) {
        if (mergedFinders[finderName] != null) {
          const firstDefinedIn = finderProviders[finderName];
          throw new PnpmError("DUPLICATE_FINDER", `Finder "${finderName}" defined in both ${firstDefinedIn} and ${file}`);
        }
        mergedFinders[finderName] = finder2;
        finderProviders[finderName] = file;
      }
    }
    const fileHooks = hooks ?? {};
    if (fileHooks.readPackage) {
      const fn = fileHooks.readPackage;
      const context = createReadPackageHookContext(file, prefix, "readPackage");
      cookedHooks.readPackage.push((pkg, _dir) => fn(pkg, context));
    }
    if (fileHooks.beforePacking) {
      const fn = fileHooks.beforePacking;
      const context = createReadPackageHookContext(file, prefix, "beforePacking");
      cookedHooks.beforePacking.push((pkg, dir) => fn(pkg, dir, context));
    }
    if (fileHooks.afterAllResolved) {
      const fn = fileHooks.afterAllResolved;
      const context = createReadPackageHookContext(file, prefix, "afterAllResolved");
      cookedHooks.afterAllResolved.push((lockfile) => fn(lockfile, context));
    }
    if (fileHooks.filterLog) {
      cookedHooks.filterLog.push(fileHooks.filterLog);
    }
    if (fileHooks.updateConfig) {
      const updateConfig = fileHooks.updateConfig;
      cookedHooks.updateConfig.push((config) => {
        const updated = updateConfig(config);
        if (updated == null) {
          throw new PnpmError("CONFIG_IS_UNDEFINED", "The updateConfig hook returned undefined");
        }
        return updated;
      });
    }
    if (fileHooks.preResolution) {
      const preRes = fileHooks.preResolution;
      cookedHooks.preResolution.push((ctx) => preRes(ctx, createPreResolutionHookLogger(prefix)));
    }
    if (fileHooks.importPackage) {
      if (importProvider) {
        throw new PnpmError("MULTIPLE_IMPORT_PACKAGE", `importPackage hook defined in both ${importProvider} and ${file}`);
      }
      importProvider = file;
      cookedHooks.importPackage = fileHooks.importPackage;
    }
  }
  for (const { resolvers, fetchers } of entries) {
    if (resolvers) {
      cookedHooks.customResolvers = cookedHooks.customResolvers ?? [];
      cookedHooks.customResolvers.push(...resolvers);
    }
    if (fetchers) {
      cookedHooks.customFetchers = cookedHooks.customFetchers ?? [];
      cookedHooks.customFetchers.push(...fetchers);
    }
  }
  return {
    hooks: cookedHooks,
    finders: mergedFinders,
    resolvedPnpmfilePaths: entries.map(({ file }) => file)
  };
}
function createReadPackageHookContext(calledFrom, prefix, hook) {
  return {
    log: (message) => {
      hookLogger.debug({ from: calledFrom, hook, message, prefix });
    }
  };
}
function createPreResolutionHookLogger(prefix) {
  const hook = "preResolution";
  const from5 = "pnpmfile";
  return {
    info: (message) => {
      hookLogger.info({ message, prefix, hook, from: from5 });
    },
    warn: (message) => {
      hookLogger.warn({ message, prefix, hook, from: from5 });
    }
  };
}
var init_requireHooks = __esm({
  "../hooks/pnpmfile/lib/requireHooks.js"() {
    "use strict";
    init_lib6();
    init_lib20();
    init_lib2();
    init_path_absolute();
    init_requirePnpmfile();
  }
});

// ../hooks/pnpmfile/lib/index.js
var init_lib133 = __esm({
  "../hooks/pnpmfile/lib/index.js"() {
    "use strict";
    init_requireHooks();
    init_requirePnpmfile();
  }
});

// ../installing/commands/lib/updateWorkspaceDependencies.js
function updateToWorkspacePackagesFromManifest(manifest, include, workspacePackages) {
  const allDeps = {
    ...include.devDependencies ? manifest.devDependencies : {},
    ...include.dependencies ? manifest.dependencies : {},
    ...include.optionalDependencies ? manifest.optionalDependencies : {}
  };
  return Object.keys(allDeps).filter((depName) => workspacePackages.has(depName)).map((depName) => `${depName}@workspace:*`);
}
function createWorkspaceSpecs(specs, workspacePackages) {
  return specs.map((spec) => {
    const parsed = parseWantedDependency(spec);
    if (!parsed.alias)
      throw new PnpmError("NO_PKG_NAME_IN_SPEC", `Cannot update/install from workspace through "${spec}"`);
    if (!workspacePackages.has(parsed.alias))
      throw new PnpmError("WORKSPACE_PACKAGE_NOT_FOUND", `"${parsed.alias}" not found in the workspace`);
    if (!parsed.bareSpecifier)
      return `${parsed.alias}@workspace:*`;
    if (parsed.bareSpecifier.startsWith("workspace:"))
      return spec;
    return `${parsed.alias}@workspace:${parsed.bareSpecifier}`;
  });
}
var init_updateWorkspaceDependencies = __esm({
  "../installing/commands/lib/updateWorkspaceDependencies.js"() {
    "use strict";
    init_lib2();
    init_lib96();
  }
});

// ../installing/commands/lib/recursive.js
import { promises as fs81 } from "node:fs";
import path149 from "node:path";
async function recursive(allProjects, params, opts2, cmdFullName) {
  if (allProjects.length === 0) {
    return false;
  }
  const pkgs = Object.values(opts2.selectedProjectsGraph).map((wsPkg) => wsPkg.package);
  if (pkgs.length === 0) {
    return false;
  }
  const manifestsByPath = getManifestsByPath(allProjects);
  const throwOnFail = throwOnCommandFail.bind(null, `pnpm recursive ${cmdFullName}`);
  const store = opts2.storeControllerAndDir ?? await createStoreController(opts2);
  const workspacePackages = arrayOfWorkspacePackagesToMap(allProjects);
  const targetDependenciesField = getSaveType(opts2);
  const policyHandlers = setupPolicyHandlers(opts2);
  const installOpts = Object.assign(opts2, {
    allProjects: getAllProjects(manifestsByPath, opts2.allProjectsGraph, opts2.sort),
    linkWorkspacePackagesDepth: opts2.linkWorkspacePackages === "deep" ? Infinity : opts2.linkWorkspacePackages ? 0 : -1,
    ownLifecycleHooksStdio: "pipe",
    peer: opts2.savePeer,
    pruneLockfileImporters: opts2.pruneLockfileImporters ?? ((opts2.ignoredPackages == null || opts2.ignoredPackages.size === 0) && pkgs.length === allProjects.length),
    saveCatalogName: opts2.saveCatalogName,
    skipRuntimes: opts2.runtime === false,
    storeController: store.ctrl,
    storeDir: store.dir,
    targetDependenciesField,
    resolutionVerifiers: store.resolutionVerifiers,
    workspacePackages,
    handleResolutionPolicyViolations: policyHandlers?.handleResolutionPolicyViolations
  });
  const result2 = {};
  const projectConfigRecord = createProjectConfigRecord(opts2);
  const getProjectConfig = projectConfigRecord ? (manifest) => manifest.name ? projectConfigRecord[manifest.name] : void 0 : () => void 0;
  const updateToLatest = opts2.update && opts2.latest;
  const includeDirect = opts2.includeDirect ?? {
    dependencies: true,
    devDependencies: true,
    optionalDependencies: true
  };
  let updateMatch;
  if (cmdFullName === "update") {
    if (params.length === 0) {
      const ignoreDeps = opts2.updateConfig?.ignoreDependencies;
      if (ignoreDeps?.length) {
        params = makeIgnorePatterns(ignoreDeps);
      }
    }
    updateMatch = params.length ? createMatcher2(params) : null;
  } else {
    updateMatch = null;
  }
  if (opts2.lockfileDir && ["add", "install", "remove", "update", "import"].includes(cmdFullName)) {
    let importers = getImporters(opts2);
    const calculatedRepositoryRoot = await fs81.realpath(calculateRepositoryRoot(opts2.workspaceDir, importers.map((x) => x.rootDir)));
    const isFromWorkspace = isSubdir.bind(null, calculatedRepositoryRoot);
    importers = await pFilter(importers, async ({ rootDirRealPath }) => isFromWorkspace(rootDirRealPath));
    if (importers.length === 0)
      return true;
    let mutation;
    switch (cmdFullName) {
      case "remove":
        mutation = "uninstallSome";
        break;
      case "import":
        mutation = "install";
        break;
      default:
        mutation = params.length === 0 && !updateToLatest ? "install" : "installSome";
        break;
    }
    const mutatedImporters = [];
    await Promise.all(importers.map(async ({ rootDir }) => {
      const { manifest } = manifestsByPath[rootDir];
      const localConfig = getProjectConfig(manifest) ?? {};
      const modulesDir = localConfig.modulesDir ?? opts2.modulesDir;
      let currentInput = [...params];
      if (updateMatch != null) {
        currentInput = matchDependencies(updateMatch, manifest, includeDirect);
        if (currentInput.length === 0 && (typeof opts2.depth === "undefined" || opts2.depth <= 0)) {
          installOpts.pruneLockfileImporters = false;
          return;
        }
      }
      if (updateToLatest && (!params || params.length === 0)) {
        currentInput = Object.keys(filterDependenciesByType(manifest, includeDirect));
      }
      if (opts2.workspace) {
        if (!currentInput || currentInput.length === 0) {
          currentInput = updateToWorkspacePackagesFromManifest(manifest, includeDirect, workspacePackages);
        } else {
          currentInput = createWorkspaceSpecs(currentInput, workspacePackages);
        }
      }
      switch (mutation) {
        case "uninstallSome":
          mutatedImporters.push({
            dependencyNames: currentInput,
            modulesDir,
            mutation,
            rootDir,
            targetDependenciesField
          });
          return;
        case "installSome":
          mutatedImporters.push({
            allowNew: cmdFullName === "install" || cmdFullName === "add",
            dependencySelectors: currentInput,
            modulesDir,
            mutation,
            peer: opts2.savePeer,
            pinnedVersion: getPinnedVersion({
              saveExact: typeof localConfig.saveExact === "boolean" ? localConfig.saveExact : opts2.saveExact,
              savePrefix: typeof localConfig.savePrefix === "string" ? localConfig.savePrefix : opts2.savePrefix
            }),
            rootDir,
            targetDependenciesField,
            update: opts2.update,
            updateMatching: opts2.updateMatching,
            updatePackageManifest: opts2.updatePackageManifest,
            updateToLatest: opts2.latest
          });
          return;
        case "install":
          mutatedImporters.push({
            modulesDir,
            mutation,
            pruneDirectDependencies: opts2.pruneDirectDependencies,
            rootDir,
            update: opts2.update,
            updateMatching: opts2.updateMatching,
            updatePackageManifest: opts2.updatePackageManifest,
            updateToLatest: opts2.latest
          });
      }
    }));
    if (!opts2.selectedProjectsGraph[opts2.workspaceDir] && manifestsByPath[opts2.workspaceDir] != null) {
      mutatedImporters.push({
        mutation: "install",
        rootDir: opts2.workspaceDir
      });
    }
    if (mutatedImporters.length === 0 && cmdFullName === "update" && opts2.depth === 0) {
      throw new PnpmError("NO_PACKAGE_IN_DEPENDENCIES", "None of the specified packages were found in the dependencies of any of the projects.");
    }
    const { updatedCatalogs: updatedCatalogs2, updatedProjects: mutatedPkgs, ignoredBuilds, resolutionPolicyViolations } = await mutateModules(mutatedImporters, {
      ...installOpts,
      storeController: store.ctrl,
      resolutionVerifiers: store.resolutionVerifiers
    });
    if (opts2.save !== false) {
      const policyUpdates = policyHandlers?.pickManifestUpdates(resolutionPolicyViolations);
      const promises = mutatedPkgs.map(async ({ originalManifest, manifest, rootDir }) => {
        return manifestsByPath[rootDir].writeProjectManifest(originalManifest ?? manifest);
      });
      promises.push(updateWorkspaceManifest(opts2.workspaceDir, {
        updatedCatalogs: updatedCatalogs2,
        cleanupUnusedCatalogs: opts2.cleanupUnusedCatalogs,
        allProjects,
        ...policyUpdates
      }));
      await Promise.all(promises);
    }
    await handleIgnoredBuilds(opts2, ignoredBuilds);
    return true;
  }
  const pkgPaths = Object.keys(opts2.selectedProjectsGraph).sort();
  let updatedCatalogs;
  const allIgnoredBuilds = /* @__PURE__ */ new Set();
  const allResolutionPolicyViolations = [];
  const limitInstallation = pLimit(getWorkspaceConcurrency(opts2.workspaceConcurrency));
  await Promise.all(pkgPaths.map(async (rootDir) => limitInstallation(async () => {
    const hooks = opts2.ignorePnpmfile ? {} : await (async () => {
      const { hooks: pnpmfileHooks } = await requireHooks(rootDir, opts2);
      return {
        ...opts2.hooks,
        ...pnpmfileHooks,
        afterAllResolved: [...pnpmfileHooks.afterAllResolved ?? [], ...opts2.hooks?.afterAllResolved ?? []],
        readPackage: [...pnpmfileHooks.readPackage ?? [], ...opts2.hooks?.readPackage ?? []]
      };
    })();
    try {
      if (opts2.ignoredPackages?.has(rootDir)) {
        return;
      }
      result2[rootDir] = { status: "running" };
      const { manifest, writeProjectManifest: writeProjectManifest2 } = manifestsByPath[rootDir];
      let currentInput = [...params];
      if (updateMatch != null) {
        currentInput = matchDependencies(updateMatch, manifest, includeDirect);
        if (currentInput.length === 0)
          return;
      }
      if (updateToLatest && (!params || params.length === 0)) {
        currentInput = Object.keys(filterDependenciesByType(manifest, includeDirect));
      }
      if (opts2.workspace) {
        if (!currentInput || currentInput.length === 0) {
          currentInput = updateToWorkspacePackagesFromManifest(manifest, includeDirect, workspacePackages);
        } else {
          currentInput = createWorkspaceSpecs(currentInput, workspacePackages);
        }
      }
      let action;
      switch (cmdFullName) {
        case "remove":
          action = async (manifest2, opts3) => {
            const mutationResult = await mutateModules([
              {
                dependencyNames: currentInput,
                mutation: "uninstallSome",
                rootDir
              }
            ], opts3);
            return {
              updatedCatalogs: void 0,
              // there's no reason to add new or update catalogs on `pnpm remove`
              updatedManifest: mutationResult.updatedProjects[0].manifest,
              ignoredBuilds: mutationResult.ignoredBuilds,
              resolutionPolicyViolations: mutationResult.resolutionPolicyViolations
            };
          };
          break;
        default:
          action = currentInput.length === 0 ? install : async (manifest2, opts3) => addDependenciesToPackage(manifest2, currentInput, opts3);
          break;
      }
      const localConfig = getProjectConfig(manifest) ?? {};
      const { updatedCatalogs: newCatalogsAddition, updatedManifest: newManifest, ignoredBuilds, resolutionPolicyViolations } = await action(manifest, {
        ...installOpts,
        ...localConfig,
        ...opts2.allProjectsGraph[rootDir]?.package,
        bin: path149.join(rootDir, "node_modules", ".bin"),
        dir: rootDir,
        hooks,
        ignoreScripts: true,
        pinnedVersion: getPinnedVersion({
          saveExact: typeof localConfig.saveExact === "boolean" ? localConfig.saveExact : opts2.saveExact,
          savePrefix: typeof localConfig.savePrefix === "string" ? localConfig.savePrefix : opts2.savePrefix
        }),
        configByUri: installOpts.configByUri,
        storeController: store.ctrl,
        resolutionVerifiers: store.resolutionVerifiers
      });
      if (opts2.save !== false) {
        await writeProjectManifest2(newManifest);
        if (newCatalogsAddition) {
          updatedCatalogs ??= {};
          Object.assign(updatedCatalogs, newCatalogsAddition);
        }
      }
      if (ignoredBuilds?.size) {
        for (const depPath of ignoredBuilds) {
          allIgnoredBuilds.add(depPath);
        }
      }
      if (resolutionPolicyViolations?.length) {
        for (const violation of resolutionPolicyViolations) {
          allResolutionPolicyViolations.push(violation);
        }
      }
      result2[rootDir].status = "passed";
    } catch (err) {
      logger.info(err);
      if (!opts2.bail) {
        result2[rootDir] = {
          status: "failure",
          error: err,
          message: err.message,
          prefix: rootDir
        };
        return;
      }
      err["prefix"] = rootDir;
      throw err;
    }
  })));
  await handleIgnoredBuilds(opts2, allIgnoredBuilds.size ? allIgnoredBuilds : void 0);
  if (opts2.save !== false) {
    await updateWorkspaceManifest(opts2.workspaceDir, {
      updatedCatalogs,
      cleanupUnusedCatalogs: opts2.cleanupUnusedCatalogs,
      allProjects,
      ...policyHandlers?.pickManifestUpdates(allResolutionPolicyViolations)
    });
  }
  if (!opts2.lockfileOnly && !opts2.ignoreScripts && (cmdFullName === "add" || cmdFullName === "install" || cmdFullName === "update")) {
    await opts2.rebuildHandler?.({
      ...opts2,
      pending: opts2.pending === true,
      skipIfHasSideEffectsCache: true
    }, []);
  }
  throwOnFail(result2);
  if (!Object.values(result2).filter(({ status }) => status === "passed").length && cmdFullName === "update" && opts2.depth === 0) {
    throw new PnpmError("NO_PACKAGE_IN_DEPENDENCIES", "None of the specified packages were found in the dependencies of any of the projects.");
  }
  return true;
}
function calculateRepositoryRoot(workspaceDir, projectDirs) {
  let relativeRepoRoot = ".";
  for (const rootDir of projectDirs) {
    const relativePartRegExp = new RegExp(`^(\\.\\.\\${path149.sep})+`);
    const relativePartMatch = relativePartRegExp.exec(path149.relative(workspaceDir, rootDir));
    if (relativePartMatch != null) {
      const relativePart = relativePartMatch[0];
      if (relativePart.length > relativeRepoRoot.length) {
        relativeRepoRoot = relativePart;
      }
    }
  }
  return path149.resolve(workspaceDir, relativeRepoRoot);
}
function matchDependencies(match, manifest, include) {
  const deps = Object.keys(filterDependenciesByType(manifest, include));
  const matchedDeps = [];
  for (const dep of deps) {
    const spec = match(dep);
    if (spec === null)
      continue;
    matchedDeps.push(spec ? `${dep}@${spec}` : dep);
  }
  return matchedDeps;
}
function createMatcher2(params) {
  const patterns = [];
  const specs = [];
  for (const param of params) {
    const { pattern, versionSpec } = parseUpdateParam(param);
    patterns.push(pattern);
    specs.push(versionSpec ?? "");
  }
  const matcher = createMatcherWithIndex(patterns);
  return (depName) => {
    const index = matcher(depName);
    if (index === -1)
      return null;
    return specs[index];
  };
}
function parseUpdateParam(param) {
  const atIndex = param.indexOf("@", param[0] === "!" ? 2 : 1);
  if (atIndex === -1) {
    return {
      pattern: param,
      versionSpec: void 0
    };
  }
  return {
    pattern: param.slice(0, atIndex),
    versionSpec: param.slice(atIndex + 1)
  };
}
function makeIgnorePatterns(ignoredDependencies) {
  return ignoredDependencies.map((depName) => `!${depName}`);
}
function getAllProjects(manifestsByPath, allProjectsGraph, sort) {
  const chunks = sort !== false ? sortProjects(allProjectsGraph) : [Object.keys(allProjectsGraph).sort()];
  return chunks.map((prefixes, buildIndex) => prefixes.map((rootDir) => {
    const { rootDirRealPath, modulesDir } = allProjectsGraph[rootDir].package;
    return {
      buildIndex,
      manifest: manifestsByPath[rootDir].manifest,
      rootDir,
      rootDirRealPath,
      modulesDir
    };
  })).flat();
}
function getManifestsByPath(projects) {
  const manifestsByPath = {};
  for (const { rootDir, manifest, writeProjectManifest: writeProjectManifest2 } of projects) {
    manifestsByPath[rootDir] = { manifest, writeProjectManifest: writeProjectManifest2 };
  }
  return manifestsByPath;
}
function getImporters(opts2) {
  let rootDirs = Object.keys(opts2.selectedProjectsGraph);
  if (opts2.ignoredPackages != null) {
    rootDirs = rootDirs.filter((rootDir) => !opts2.ignoredPackages.has(rootDir));
  }
  return rootDirs.map((rootDir) => ({ rootDir, rootDirRealPath: opts2.selectedProjectsGraph[rootDir].package.rootDirRealPath }));
}
var init_recursive2 = __esm({
  "../installing/commands/lib/recursive.js"() {
    "use strict";
    init_lib29();
    init_lib14();
    init_lib61();
    init_lib2();
    init_lib133();
    init_lib87();
    init_lib124();
    init_lib3();
    init_lib9();
    init_lib90();
    init_lib93();
    init_lib99();
    init_is_subdir();
    init_p_filter();
    init_p_limit();
    init_getPinnedVersion();
    init_getSaveType();
    init_handleIgnoredBuilds();
    init_policyHandlers();
    init_updateWorkspaceDependencies();
  }
});

// ../installing/commands/lib/runPacquet.js
import { spawn as spawn3 } from "node:child_process";
import fs82 from "node:fs";
import { createRequire as createRequire7 } from "node:module";
import path150 from "node:path";
import readline2 from "node:readline";
function makeRunPacquet(opts2) {
  return async (callOpts) => {
    const pacquetBin = resolvePacquetBin(opts2.lockfileDir, opts2.packageName);
    const forwardedFlags = opts2.isInstallCommand ? collectForwardedFlags(opts2.argv) : [];
    const args = ["--reporter=ndjson", "install", "--frozen-lockfile", "--ignore-manifest-check", ...forwardedFlags];
    const droppedFlags = opts2.isInstallCommand ? [] : collectDroppedFlags(opts2.argv);
    if (droppedFlags.length > 0) {
      logger.warn({
        message: `The following CLI flags are not forwarded to pacquet and may not be honored: ${droppedFlags.join(" ")}. Move the equivalent settings into pnpm-workspace.yaml (or .npmrc for auth/registry) if pacquet needs them.`,
        prefix: opts2.lockfileDir
      });
    }
    const banner = [
      source_default.magentaBright("\u25B6 Using pacquet for this install"),
      source_default.gray("  pacquet is pnpm's Rust install engine (preview); declared in configDependencies.")
    ].join("\n");
    logger.info({ message: banner, prefix: opts2.lockfileDir });
    const child = spawn3(pacquetBin, args, {
      cwd: opts2.lockfileDir,
      stdio: ["ignore", "inherit", "pipe"]
    });
    const filterResolved = callOpts?.filterResolvedProgress === true;
    const rl = readline2.createInterface({ input: child.stderr, crlfDelay: Infinity });
    rl.on("line", (line) => {
      if (!line)
        return;
      let parsed;
      try {
        parsed = JSON.parse(line);
      } catch {
        process.stderr.write(`${line}
`);
        return;
      }
      if (filterResolved && typeof parsed === "object" && parsed !== null && parsed.name === "pnpm:progress" && parsed.status === "resolved") {
        return;
      }
      streamParserWritable.write(`${line}
`);
    });
    await new Promise((resolve3, reject3) => {
      child.once("error", reject3);
      child.once("close", (code) => {
        rl.close();
        if (code === 0) {
          resolve3();
          return;
        }
        reject3(new PnpmError("PACQUET_INSTALL_FAILED", `pacquet exited with code ${code ?? "null"}`));
      });
    });
  };
}
function resolvePacquetBin(lockfileDir, packageName) {
  const ext = process.platform === "win32" ? ".exe" : "";
  const pacquetPkg = fs82.realpathSync(path150.join(lockfileDir, "node_modules/.pnpm-config", packageName, "package.json"));
  return createRequire7(pacquetPkg).resolve(`@pacquet/${process.platform}-${process.arch}/pacquet${ext}`);
}
function collectForwardedFlags(argv2) {
  const result2 = [];
  let positionalIdx = 0;
  for (let i2 = 0; i2 < argv2.original.length; i2++) {
    const arg = argv2.original[i2];
    if (positionalIdx < argv2.remain.length && arg === argv2.remain[positionalIdx]) {
      positionalIdx++;
      continue;
    }
    if (isAlwaysInjected(arg))
      continue;
    if (arg.startsWith("--reporter="))
      continue;
    if (arg === "--reporter") {
      i2++;
      continue;
    }
    result2.push(arg);
  }
  return result2;
}
function isAlwaysInjected(arg) {
  for (const name of ALWAYS_INJECTED_FLAGS) {
    if (arg === `--${name}` || arg === `--no-${name}`)
      return true;
    if (arg.startsWith(`--${name}=`) || arg.startsWith(`--no-${name}=`))
      return true;
  }
  return false;
}
function collectDroppedFlags(argv2) {
  const result2 = [];
  for (let i2 = 0; i2 < argv2.original.length; i2++) {
    const arg = argv2.original[i2];
    if (!arg.startsWith("-"))
      continue;
    if (isAlwaysInjected(arg))
      continue;
    if (arg.startsWith("--config."))
      continue;
    if (arg.startsWith("--reporter="))
      continue;
    if (arg === "--reporter") {
      i2++;
      continue;
    }
    result2.push(arg);
  }
  return result2;
}
var streamParserWritable, ALWAYS_INJECTED_FLAGS;
var init_runPacquet = __esm({
  "../installing/commands/lib/runPacquet.js"() {
    "use strict";
    init_lib2();
    init_lib3();
    init_source2();
    streamParserWritable = streamParser;
    ALWAYS_INJECTED_FLAGS = ["frozen-lockfile", "ignore-manifest-check"];
  }
});

// ../installing/commands/lib/installDeps.js
import path151 from "node:path";
async function installDeps(opts2, params) {
  if (!opts2.update && !opts2.dedupe && params.length === 0 && opts2.optimisticRepeatInstall) {
    const { upToDate } = await checkDepsStatus({
      ...opts2,
      ignoreFilteredInstallCache: true
    });
    if (upToDate) {
      if (opts2.hooks?.customResolvers?.some((r) => r.shouldRefreshResolution)) {
        logger.warn({
          message: "shouldRefreshResolution hooks were skipped because optimisticRepeatInstall is enabled.",
          prefix: opts2.dir
        });
      }
      globalInfo("Already up to date");
      return;
    }
  }
  if (opts2.workspace) {
    if (opts2.latest) {
      throw new PnpmError("BAD_OPTIONS", "Cannot use --latest with --workspace simultaneously");
    }
    if (!opts2.workspaceDir) {
      throw new PnpmError("WORKSPACE_OPTION_OUTSIDE_WORKSPACE", "--workspace can only be used inside a workspace");
    }
    if (!opts2.linkWorkspacePackages && !opts2.saveWorkspaceProtocol) {
      opts2.saveWorkspaceProtocol = true;
    }
    opts2["preserveWorkspaceProtocol"] = !opts2.linkWorkspacePackages;
  }
  const store = await createStoreController(opts2);
  const pacquetConfigDepName = opts2.configDependencies?.["@pnpm/pacquet"] != null ? "@pnpm/pacquet" : opts2.configDependencies?.pacquet != null ? "pacquet" : void 0;
  const runPacquet = pacquetConfigDepName != null ? makeRunPacquet({
    lockfileDir: opts2.lockfileDir ?? opts2.dir,
    packageName: pacquetConfigDepName,
    argv: { original: opts2.argv.original, remain: opts2.argv.remain ?? [] },
    isInstallCommand: opts2.isInstallCommand === true
  }) : void 0;
  const includeDirect = opts2.includeDirect ?? {
    dependencies: true,
    devDependencies: true,
    optionalDependencies: true
  };
  const allProjects = opts2.allProjects ?? (opts2.workspaceDir ? await findWorkspaceProjects(opts2.workspaceDir, { ...opts2, patterns: opts2.workspacePackagePatterns }) : []);
  if (opts2.runtimeOnFail) {
    for (const project of allProjects) {
      applyRuntimeOnFailOverride(project.manifest, opts2.runtimeOnFail);
    }
  }
  if (opts2.workspaceDir) {
    const selectedProjectsGraph = opts2.selectedProjectsGraph ?? selectProjectByDir(allProjects, opts2.dir);
    if (selectedProjectsGraph != null) {
      const sequencedGraph = sequenceGraph(selectedProjectsGraph);
      if (!opts2.ignoreWorkspaceCycles && !sequencedGraph.safe) {
        const cyclicDependenciesInfo = sequencedGraph.cycles.length > 0 ? `: ${sequencedGraph.cycles.map((deps) => deps.join(", ")).join("; ")}` : "";
        if (opts2.disallowWorkspaceCycles) {
          throw new PnpmError("DISALLOW_WORKSPACE_CYCLES", `There are cyclic workspace dependencies${cyclicDependenciesInfo}`);
        }
        logger.warn({
          message: `There are cyclic workspace dependencies${cyclicDependenciesInfo}`,
          prefix: opts2.workspaceDir
        });
      }
      const allProjectsGraph = opts2.allProjectsGraph ?? createProjectsGraph(allProjects, {
        linkWorkspacePackages: Boolean(opts2.linkWorkspacePackages)
      }).graph;
      await recursiveInstallThenUpdateWorkspaceState(allProjects, params, {
        ...opts2,
        preferredVersions: opts2.packageVulnerabilityAudit ? preferNonvulnerablePackageVersions(opts2.packageVulnerabilityAudit) : void 0,
        allProjectsGraph,
        selectedProjectsGraph,
        storeControllerAndDir: store,
        workspaceDir: opts2.workspaceDir,
        runPacquet
      }, opts2.update ? "update" : params.length === 0 ? "install" : "add");
      return;
    }
  }
  params = params.filter(Boolean);
  const dir = opts2.dir || process.cwd();
  let workspacePackages;
  if (opts2.workspaceDir) {
    workspacePackages = arrayOfWorkspacePackagesToMap(allProjects);
  }
  let { manifest, writeProjectManifest: writeProjectManifest2 } = await tryReadProjectManifest2(opts2.dir, opts2);
  if (manifest === null) {
    if (opts2.update === true || params.length === 0) {
      throw new PnpmError("NO_PKG_MANIFEST", `No package.json found in ${opts2.dir}`);
    }
    manifest = {};
  } else if (opts2.runtimeOnFail) {
    applyRuntimeOnFailOverride(manifest, opts2.runtimeOnFail);
  }
  const policyHandlers = setupPolicyHandlers(opts2);
  const installOpts = {
    ...opts2,
    // In case installation is done in a multi-package repository
    // The dependencies should be built first,
    // so ignoring scripts for now
    ignoreScripts: !!workspacePackages || opts2.ignoreScripts,
    linkWorkspacePackagesDepth: opts2.linkWorkspacePackages === "deep" ? Infinity : opts2.linkWorkspacePackages ? 0 : -1,
    sideEffectsCacheRead: opts2.sideEffectsCache ?? opts2.sideEffectsCacheReadonly,
    sideEffectsCacheWrite: opts2.sideEffectsCache,
    skipRuntimes: opts2.runtime === false,
    storeController: store.ctrl,
    storeDir: store.dir,
    resolutionVerifiers: store.resolutionVerifiers,
    workspacePackages,
    preferredVersions: opts2.packageVulnerabilityAudit ? preferNonvulnerablePackageVersions(opts2.packageVulnerabilityAudit) : void 0,
    handleResolutionPolicyViolations: policyHandlers?.handleResolutionPolicyViolations,
    runPacquet
  };
  let updateMatch;
  let updatePackageManifest = opts2.updatePackageManifest;
  let updateMatching;
  if (opts2.update) {
    if (params.length === 0) {
      const ignoreDeps = opts2.updateConfig?.ignoreDependencies;
      if (ignoreDeps?.length) {
        params = makeIgnorePatterns(ignoreDeps);
      }
    }
    updateMatch = params.length ? createMatcher2(params) : null;
  } else {
    updateMatch = null;
  }
  if (opts2.packageVulnerabilityAudit != null) {
    updateMatch = null;
    const { packageVulnerabilityAudit } = opts2;
    updateMatching = (pkgName, version2) => version2 != null && packageVulnerabilityAudit.isVulnerable(pkgName, version2);
  }
  if (updateMatch != null) {
    params = matchDependencies(updateMatch, manifest, includeDirect);
    if (params.length === 0) {
      if (opts2.latest)
        return;
      if (opts2.depth === 0) {
        throw new PnpmError("NO_PACKAGE_IN_DEPENDENCIES", "None of the specified packages were found in the dependencies.");
      }
      updatePackageManifest = false;
      updateMatching = (pkgName) => updateMatch(pkgName) != null;
    }
  }
  if (opts2.update && opts2.latest && (!params || params.length === 0)) {
    params = Object.keys(filterDependenciesByType(manifest, includeDirect));
  }
  if (opts2.workspace) {
    if (!params || params.length === 0) {
      params = updateToWorkspacePackagesFromManifest(manifest, includeDirect, workspacePackages);
    } else {
      params = createWorkspaceSpecs(params, workspacePackages);
    }
  }
  if (params?.length) {
    const mutatedProject = {
      allowNew: opts2.allowNew,
      binsDir: opts2.bin,
      dependencySelectors: params,
      manifest,
      mutation: "installSome",
      peer: opts2.savePeer,
      pinnedVersion: getPinnedVersion(opts2),
      rootDir: opts2.dir,
      targetDependenciesField: getSaveType(opts2)
    };
    const { updatedCatalogs: updatedCatalogs2, updatedProject, ignoredBuilds: ignoredBuilds2, resolutionPolicyViolations: resolutionPolicyViolations2 } = await mutateModulesInSingleProject(mutatedProject, installOpts);
    if (opts2.save !== false) {
      const policyUpdates = policyHandlers?.pickManifestUpdates(resolutionPolicyViolations2);
      await Promise.all([
        writeProjectManifest2(updatedProject.manifest),
        updateWorkspaceManifest(opts2.workspaceDir ?? opts2.dir, {
          updatedCatalogs: updatedCatalogs2,
          cleanupUnusedCatalogs: opts2.cleanupUnusedCatalogs,
          allProjects: opts2.allProjects,
          ...policyUpdates
        })
      ]);
    }
    if (!opts2.lockfileOnly) {
      await updateWorkspaceState({
        allProjects,
        settings: opts2,
        workspaceDir: opts2.workspaceDir ?? opts2.lockfileDir ?? opts2.dir,
        pnpmfiles: opts2.pnpmfile,
        filteredInstall: allProjects.length !== Object.keys(opts2.selectedProjectsGraph ?? {}).length,
        configDependencies: opts2.configDependencies
      });
    }
    await handleIgnoredBuilds(opts2, ignoredBuilds2);
    return;
  }
  const { updatedCatalogs, updatedManifest, ignoredBuilds, resolutionPolicyViolations } = await install(manifest, {
    ...installOpts,
    updatePackageManifest,
    updateMatching
  });
  if (opts2.save !== false) {
    const policyUpdates = policyHandlers?.pickManifestUpdates(resolutionPolicyViolations);
    if (opts2.update === true) {
      await Promise.all([
        writeProjectManifest2(updatedManifest),
        updateWorkspaceManifest(opts2.workspaceDir ?? opts2.dir, {
          updatedCatalogs,
          cleanupUnusedCatalogs: opts2.cleanupUnusedCatalogs,
          allProjects,
          ...policyUpdates
        })
      ]);
    } else if (policyUpdates != null) {
      await updateWorkspaceManifest(opts2.workspaceDir ?? opts2.dir, policyUpdates);
    }
  }
  await handleIgnoredBuilds(opts2, ignoredBuilds);
  if (opts2.linkWorkspacePackages && opts2.workspaceDir) {
    const { selectedProjectsGraph } = await filterProjectsBySelectorObjects(allProjects, [
      {
        excludeSelf: true,
        includeDependencies: true,
        parentDir: dir
      }
    ], {
      workspaceDir: opts2.workspaceDir
    });
    await recursiveInstallThenUpdateWorkspaceState(allProjects, [], {
      ...opts2,
      ...OVERWRITE_UPDATE_OPTIONS,
      allProjectsGraph: opts2.allProjectsGraph,
      selectedProjectsGraph,
      workspaceDir: opts2.workspaceDir,
      // Otherwise TypeScript doesn't understand that is not undefined
      runPacquet
    }, "install");
    if (opts2.ignoreScripts)
      return;
    await buildProjects([
      {
        buildIndex: 0,
        manifest: await readProjectManifestOnly2(opts2.dir, opts2),
        rootDir: opts2.dir
      }
    ], {
      ...opts2,
      pending: true,
      storeController: store.ctrl,
      storeDir: store.dir,
      skipIfHasSideEffectsCache: true
    });
  } else {
    if (!opts2.lockfileOnly) {
      await updateWorkspaceState({
        allProjects,
        settings: opts2,
        workspaceDir: opts2.workspaceDir ?? opts2.lockfileDir ?? opts2.dir,
        pnpmfiles: opts2.pnpmfile,
        filteredInstall: allProjects.length !== Object.keys(opts2.selectedProjectsGraph ?? {}).length,
        configDependencies: opts2.configDependencies
      });
    }
  }
}
function selectProjectByDir(projects, searchedDir) {
  const project = projects.find(({ rootDir }) => path151.relative(rootDir, searchedDir) === "");
  if (project == null)
    return void 0;
  return { [searchedDir]: { dependencies: [], package: project } };
}
async function recursiveInstallThenUpdateWorkspaceState(allProjects, params, opts2, cmdFullName) {
  const recursiveResult = await recursive(allProjects, params, opts2, cmdFullName);
  if (!opts2.lockfileOnly) {
    await updateWorkspaceState({
      allProjects,
      settings: opts2,
      workspaceDir: opts2.workspaceDir,
      pnpmfiles: opts2.pnpmfile,
      filteredInstall: allProjects.length !== Object.keys(opts2.selectedProjectsGraph ?? {}).length,
      configDependencies: opts2.configDependencies
    });
  }
  return recursiveResult;
}
function severityStringToNumber(severity) {
  switch (severity) {
    case "low":
      return 0;
    case "moderate":
      return 1;
    case "high":
      return 2;
    case "critical":
      return 3;
    default:
      return -1;
  }
}
function getVulnerabilityPenalty(severity) {
  switch (severity) {
    case "low":
      return -1100;
    // 100 more than DIRECT_DEP_SELECTOR_WEIGHT from @pnpm/resolving.resolver-base
    case "moderate":
      return -2e3;
    case "high":
      return -3e3;
    case "critical":
      return -4e3;
    // Treat unrecognized severity as the lowest severity
    default:
      return -1100;
  }
}
function preferNonvulnerablePackageVersions(packageVulnerabilityAudit) {
  const preferredVersions = {};
  for (const [packageName, vulnerabilities] of packageVulnerabilityAudit.getVulnerabilities()) {
    const vulnerableRanges = /* @__PURE__ */ new Map();
    for (const vuln of vulnerabilities) {
      const existingSeverity = vulnerableRanges.get(vuln.versionRange);
      if (existingSeverity == null) {
        vulnerableRanges.set(vuln.versionRange, vuln.severity);
        continue;
      }
      if (severityStringToNumber(vuln.severity) > severityStringToNumber(existingSeverity)) {
        vulnerableRanges.set(vuln.versionRange, vuln.severity);
      }
    }
    const preferredVersionSelectors = {};
    for (const [vulnRange, severity] of vulnerableRanges) {
      if (vulnRange === "__proto__" || vulnRange === "constructor" || vulnRange === "prototype") {
        continue;
      }
      preferredVersionSelectors[vulnRange] = {
        selectorType: "range",
        weight: getVulnerabilityPenalty(severity)
      };
    }
    preferredVersions[packageName] = preferredVersionSelectors;
  }
  return preferredVersions;
}
var OVERWRITE_UPDATE_OPTIONS;
var init_installDeps = __esm({
  "../installing/commands/lib/installDeps.js"() {
    "use strict";
    init_lib91();
    init_lib29();
    init_lib132();
    init_lib2();
    init_lib87();
    init_lib124();
    init_lib3();
    init_lib9();
    init_lib90();
    init_lib32();
    init_lib25();
    init_lib30();
    init_lib93();
    init_lib131();
    init_lib99();
    init_getPinnedVersion();
    init_getSaveType();
    init_handleIgnoredBuilds();
    init_policyHandlers();
    init_recursive2();
    init_runPacquet();
    init_updateWorkspaceDependencies();
    OVERWRITE_UPDATE_OPTIONS = {
      allowNew: true,
      update: false
    };
  }
});

// ../installing/commands/lib/resolutionPolicyManifest.js
function createGlobalPolicyCallbacks(opts2) {
  const policyHandlers = setupPolicyHandlers(opts2);
  if (policyHandlers == null)
    return {};
  return {
    handleResolutionPolicyViolations: policyHandlers.handleResolutionPolicyViolations,
    updateResolutionPolicyManifest: async (violations, dir) => {
      const policyUpdates = policyHandlers.pickManifestUpdates(violations);
      if (policyUpdates != null) {
        await updateWorkspaceManifest(dir, policyUpdates);
      }
    }
  };
}
var init_resolutionPolicyManifest = __esm({
  "../installing/commands/lib/resolutionPolicyManifest.js"() {
    "use strict";
    init_lib99();
    init_policyHandlers();
  }
});

// ../installing/commands/lib/add.js
var add_exports = {};
__export(add_exports, {
  cliOptionsTypes: () => cliOptionsTypes4,
  commandNames: () => commandNames4,
  handler: () => handler4,
  help: () => help4,
  rcOptionsTypes: () => rcOptionsTypes4,
  shorthands: () => shorthands
});
function rcOptionsTypes4() {
  return pick_default([
    "cache-dir",
    "cpu",
    "child-concurrency",
    "dangerously-allow-all-builds",
    "engine-strict",
    "fetch-retries",
    "fetch-retry-factor",
    "fetch-retry-maxtimeout",
    "fetch-retry-mintimeout",
    "fetch-timeout",
    "force",
    "global-bin-dir",
    "global-dir",
    "global-pnpmfile",
    "global",
    "hoist",
    "hoist-pattern",
    "https-proxy",
    "ignore-pnpmfile",
    "ignore-scripts",
    "ignore-workspace-root-check",
    "libc",
    "link-workspace-packages",
    "lockfile-dir",
    "lockfile-only",
    "lockfile",
    "modules-dir",
    "network-concurrency",
    "node-linker",
    "noproxy",
    "npm-path",
    "os",
    "package-import-method",
    "pnpmfile",
    "prefer-offline",
    "production",
    "proxy",
    "public-hoist-pattern",
    "registry",
    "reporter",
    "save-catalog-name",
    "save-dev",
    "save-exact",
    "save-optional",
    "save-peer",
    "save-prefix",
    "save-prod",
    "save-workspace-protocol",
    "shamefully-hoist",
    "shared-workspace-lockfile",
    "side-effects-cache-readonly",
    "side-effects-cache",
    "store-dir",
    "strict-peer-dependencies",
    "trust-lockfile",
    "trust-policy",
    "trust-policy-exclude",
    "trust-policy-ignore-after",
    "unsafe-perm",
    "offline",
    "only",
    "optional",
    "verify-store-integrity",
    "virtual-store-dir"
  ], types2);
}
function cliOptionsTypes4() {
  return {
    ...rcOptionsTypes4(),
    "allow-build": [String, Array],
    recursive: Boolean,
    save: Boolean,
    workspace: Boolean,
    config: Boolean
  };
}
function help4() {
  return renderHelp({
    description: "Installs a package and any packages that it depends on.",
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: "Save package to your `dependencies`. The default behavior",
            name: "--save-prod",
            shortAlias: "-p"
          },
          {
            description: "Save package to your `devDependencies`",
            name: "--save-dev",
            shortAlias: "-d"
          },
          {
            description: "Save package to your `optionalDependencies`",
            name: "--save-optional",
            shortAlias: "-o"
          },
          {
            description: "Save package to your `peerDependencies` and `devDependencies`",
            name: "--save-peer"
          },
          {
            description: "Save package to the default catalog",
            name: "--save-catalog"
          },
          {
            description: "Save package to the specified catalog",
            name: "--save-catalog-name=<name>"
          },
          {
            description: "Install exact version",
            name: "--[no-]save-exact",
            shortAlias: "-e"
          },
          {
            description: 'Save packages from the workspace with a "workspace:" protocol. True by default',
            name: "--[no-]save-workspace-protocol"
          },
          {
            description: "Install as a global package",
            name: "--global",
            shortAlias: "-g"
          },
          {
            description: 'Run installation recursively in every package found in subdirectories or in every workspace package, when executed inside a workspace. For options that may be used with `-r`, see "pnpm help recursive"',
            name: "--recursive",
            shortAlias: "-r"
          },
          {
            description: "Only adds the new dependency if it is found in the workspace",
            name: "--workspace"
          },
          {
            description: "Save the dependency to configurational dependencies",
            name: "--config"
          },
          OPTIONS.ignoreScripts,
          OPTIONS.offline,
          OPTIONS.preferOffline,
          {
            description: "The registry to use for the installation",
            name: "--registry <url>"
          },
          OPTIONS.storeDir,
          OPTIONS.virtualStoreDir,
          OPTIONS.globalDir,
          ...UNIVERSAL_OPTIONS,
          {
            description: "A list of package names that are allowed to run postinstall scripts during installation",
            name: "--allow-build"
          }
        ]
      },
      FILTERING
    ],
    url: docsUrl("add"),
    usages: [
      "pnpm add <name>",
      "pnpm add <name>@<tag>",
      "pnpm add <name>@<version>",
      "pnpm add <name>@<version range>",
      "pnpm add <git host>:<git user>/<repo name>",
      "pnpm add <git repo url>",
      "pnpm add <tarball file>",
      "pnpm add <tarball url>",
      "pnpm add <dir>"
    ]
  });
}
async function handler4(opts2, params, commands2) {
  if (opts2.cliOptions["save"] === false) {
    throw new PnpmError("OPTION_NOT_SUPPORTED", 'The "add" command currently does not support the no-save option');
  }
  if (!params || params.length === 0) {
    throw new PnpmError("MISSING_PACKAGE_NAME", "`pnpm add` requires the package name");
  }
  if (opts2.config) {
    const store = await createStoreController(opts2);
    await resolveConfigDeps(params, {
      ...opts2,
      store: store.ctrl,
      storeDir: store.dir,
      rootDir: opts2.workspaceDir ?? opts2.rootProjectManifestDir
    });
    return;
  }
  if (!opts2.recursive && opts2.workspaceDir === opts2.dir && !opts2.ignoreWorkspaceRootCheck && !opts2.workspaceRoot && opts2.workspacePackagePatterns && opts2.workspacePackagePatterns.length > 1) {
    throw new PnpmError("ADDING_TO_ROOT", "Running this command will add the dependency to the workspace root, which might not be what you want - if you really meant it, make it explicit by running this command again with the -w flag (or --workspace-root). If you don't want to see this warning anymore, you may set the ignore-workspace-root-check setting to true.");
  }
  if (opts2.global) {
    if (!opts2.bin) {
      throw new PnpmError("NO_GLOBAL_BIN_DIR", "Unable to find the global bin directory", {
        hint: 'Run "pnpm setup" to create it automatically, or set the global-bin-dir setting, or the PNPM_HOME env variable. The global bin directory should be in the PATH.'
      });
    }
    if (params.includes("pnpm") || params.includes("@pnpm/exe")) {
      throw new PnpmError("GLOBAL_PNPM_INSTALL", 'Use the "pnpm self-update" command to install or update pnpm');
    }
    return handleGlobalAdd({
      ...opts2,
      ...createGlobalPolicyCallbacks(opts2)
    }, params, commands2 ?? {});
  }
  const include = {
    dependencies: opts2.production !== false,
    devDependencies: opts2.dev !== false,
    optionalDependencies: opts2.optional !== false
  };
  if (opts2.allowBuild?.length) {
    if (opts2.argv.original.includes("--allow-build")) {
      throw new PnpmError("ALLOW_BUILD_MISSING_PACKAGE", "The --allow-build flag is missing a package name. Please specify the package name(s) that are allowed to run installation scripts.");
    }
    if (opts2.allowBuilds) {
      const disallowedBuilds = Object.entries(opts2.allowBuilds).filter(([, value]) => value === false).map(([pkg]) => pkg);
      const overlapDependencies = disallowedBuilds.filter((dep) => opts2.allowBuild?.includes(dep));
      if (overlapDependencies.length) {
        throw new PnpmError("OVERRIDING_IGNORED_BUILT_DEPENDENCIES", `The following dependencies are ignored by the root project, but are allowed to be built by the current command: ${overlapDependencies.join(", ")}`, {
          hint: "If you are sure you want to allow those dependencies to run installation scripts, remove them from the allowBuilds list (or change their value to true)."
        });
      }
    }
    const allowBuilds = {};
    for (const pkg of opts2.allowBuild) {
      allowBuilds[pkg] = true;
    }
    if (opts2.rootProjectManifestDir) {
      opts2.rootProjectManifest = opts2.rootProjectManifest ?? {};
      await writeSettings({
        ...opts2,
        workspaceDir: opts2.workspaceDir ?? opts2.rootProjectManifestDir,
        updatedSettings: {
          allowBuilds
        }
      });
    }
    const mergedAllowBuilds = { ...opts2.allowBuilds };
    for (const pkg of opts2.allowBuild) {
      mergedAllowBuilds[pkg] = true;
    }
    return installDeps({
      ...opts2,
      allowBuilds: mergedAllowBuilds,
      rebuildHandler: commands2?.rebuild,
      fetchFullMetadata: getFetchFullMetadata(opts2),
      include,
      includeDirect: include
    }, params);
  }
  return installDeps({
    ...opts2,
    rebuildHandler: commands2?.rebuild,
    fetchFullMetadata: getFetchFullMetadata(opts2),
    include,
    includeDirect: include
  }, params);
}
var shorthands, commandNames4;
var init_add3 = __esm({
  "../installing/commands/lib/add.js"() {
    "use strict";
    init_lib92();
    init_lib29();
    init_lib61();
    init_lib100();
    init_lib2();
    init_lib129();
    init_lib130();
    init_lib90();
    init_es();
    init_lib63();
    init_getFetchFullMetadata();
    init_installDeps();
    init_resolutionPolicyManifest();
    shorthands = {
      "save-catalog": "--save-catalog-name=default",
      d: "--save-dev",
      e: "--save-exact",
      o: "--save-optional",
      p: "--save-prod"
    };
    commandNames4 = ["add"];
  }
});

// ../installing/dedupe/check/lib/DedupeCheckIssuesError.js
var DedupeCheckIssuesError;
var init_DedupeCheckIssuesError = __esm({
  "../installing/dedupe/check/lib/DedupeCheckIssuesError.js"() {
    "use strict";
    init_lib2();
    DedupeCheckIssuesError = class extends PnpmError {
      dedupeCheckIssues;
      constructor(dedupeCheckIssues) {
        super("DEDUPE_CHECK_ISSUES", "Dedupe --check found changes to the lockfile");
        this.dedupeCheckIssues = dedupeCheckIssues;
      }
    };
  }
});

// ../installing/dedupe/check/lib/dedupeDiffCheck.js
function dedupeDiffCheck(prev, next2) {
  const issues = {
    importerIssuesByImporterId: diffSnapshots(prev.importers, next2.importers, DEPENDENCIES_FIELDS),
    packageIssuesByDepPath: diffSnapshots(prev.packages ?? {}, next2.packages ?? {}, PACKAGE_SNAPSHOT_DEP_FIELDS)
  };
  const changesCount = countChangedSnapshots(issues.importerIssuesByImporterId) + countChangedSnapshots(issues.packageIssuesByDepPath);
  if (changesCount > 0) {
    throw new DedupeCheckIssuesError(issues);
  }
}
function diffSnapshots(prev, next2, fields) {
  const removed = [];
  const updated = {};
  for (const [id, prevSnapshot] of Object.entries(prev)) {
    const nextSnapshot = next2[id];
    if (nextSnapshot == null) {
      removed.push(id);
      continue;
    }
    const updates = {};
    for (const dependencyField of fields) {
      Object.assign(updates, getResolutionUpdates(prevSnapshot[dependencyField] ?? {}, nextSnapshot[dependencyField] ?? {}));
    }
    if (Object.keys(updates).length > 0) {
      updated[id] = updates;
    }
  }
  const added = Object.keys(next2).filter((id) => prev[id] == null);
  return { added, removed, updated };
}
function getResolutionUpdates(prev, next2) {
  const updates = {};
  for (const [alias, prevResolution] of Object.entries(prev)) {
    const nextResolution = next2[alias];
    if (prevResolution === nextResolution) {
      continue;
    }
    updates[alias] = nextResolution == null ? { type: "removed", prev: prevResolution } : { type: "updated", prev: prevResolution, next: nextResolution };
  }
  const newAliases = Object.entries(next2).filter(([alias]) => prev[alias] == null);
  for (const [alias, nextResolution] of newAliases) {
    updates[alias] = { type: "added", next: nextResolution };
  }
  return updates;
}
function countChangedSnapshots(snapshotChanges) {
  return snapshotChanges.added.length + snapshotChanges.removed.length + Object.keys(snapshotChanges.updated).length;
}
var PACKAGE_SNAPSHOT_DEP_FIELDS;
var init_dedupeDiffCheck = __esm({
  "../installing/dedupe/check/lib/dedupeDiffCheck.js"() {
    "use strict";
    init_lib8();
    init_DedupeCheckIssuesError();
    PACKAGE_SNAPSHOT_DEP_FIELDS = ["dependencies", "optionalDependencies"];
  }
});

// ../installing/dedupe/check/lib/index.js
var init_lib134 = __esm({
  "../installing/dedupe/check/lib/index.js"() {
    "use strict";
    init_DedupeCheckIssuesError();
    init_dedupeDiffCheck();
  }
});

// ../installing/commands/lib/install.js
var install_exports = {};
__export(install_exports, {
  cliOptionsTypes: () => cliOptionsTypes5,
  commandNames: () => commandNames5,
  handler: () => handler5,
  help: () => help5,
  rcOptionsTypes: () => rcOptionsTypes5,
  recursiveByDefault: () => recursiveByDefault,
  shorthands: () => shorthands2
});
function rcOptionsTypes5() {
  return pick_default([
    "cache-dir",
    "child-concurrency",
    "cpu",
    "dangerously-allow-all-builds",
    "dev",
    "engine-strict",
    "fetch-retries",
    "fetch-retry-factor",
    "fetch-retry-maxtimeout",
    "fetch-retry-mintimeout",
    "fetch-timeout",
    "frozen-lockfile",
    "global-dir",
    "global-pnpmfile",
    "global",
    "hoist",
    "hoist-pattern",
    "https-proxy",
    "ignore-pnpmfile",
    "ignore-scripts",
    "optimistic-repeat-install",
    "os",
    "libc",
    "link-workspace-packages",
    "lockfile-dir",
    "lockfile-only",
    "lockfile",
    "merge-git-branch-lockfiles",
    "merge-git-branch-lockfiles-branch-pattern",
    "modules-dir",
    "network-concurrency",
    "node-linker",
    "noproxy",
    "package-import-method",
    "agent",
    "pnpmfile",
    "prefer-frozen-lockfile",
    "prefer-offline",
    "production",
    "proxy",
    "public-hoist-pattern",
    "registry",
    "reporter",
    "runtime",
    "save-workspace-protocol",
    "scripts-prepend-node-path",
    "shamefully-hoist",
    "shared-workspace-lockfile",
    "side-effects-cache-readonly",
    "side-effects-cache",
    "store-dir",
    "strict-peer-dependencies",
    "trust-lockfile",
    "trust-policy",
    "trust-policy-exclude",
    "trust-policy-ignore-after",
    "offline",
    "only",
    "optional",
    "unsafe-perm",
    "verify-store-integrity",
    "virtual-store-dir",
    "virtual-store-only"
  ], types2);
}
function help5() {
  return renderHelp({
    aliases: ["i"],
    description: "Installs all dependencies of the project in the current working directory. When executed inside a workspace, installs all dependencies of all projects.",
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: 'Run installation recursively in every package found in subdirectories. For options that may be used with `-r`, see "pnpm help recursive"',
            name: "--recursive",
            shortAlias: "-r"
          },
          OPTIONS.ignoreScripts,
          OPTIONS.offline,
          OPTIONS.preferOffline,
          OPTIONS.globalDir,
          {
            description: "Packages in `devDependencies` won't be installed",
            name: "--prod",
            shortAlias: "-P"
          },
          {
            description: "Only `devDependencies` are installed",
            name: "--dev",
            shortAlias: "-D"
          },
          {
            description: "Skip reinstall if the workspace state is up-to-date",
            name: "--optimistic-repeat-install"
          },
          {
            description: "`optionalDependencies` are not installed",
            name: "--no-optional"
          },
          {
            description: "Skip installing runtime entries (e.g. Node.js downloaded via `devEngines.runtime`). The lockfile is left untouched, so frozen installs still validate; only the runtime fetch and bin-linking are skipped. Useful in CI matrices where the runtime is provisioned externally.",
            name: "--no-runtime"
          },
          {
            description: `Don't read or generate a \`${WANTED_LOCKFILE}\` file`,
            name: "--no-lockfile"
          },
          {
            description: `Dependencies are not downloaded. Only \`${WANTED_LOCKFILE}\` is updated`,
            name: "--lockfile-only"
          },
          {
            description: "Don't generate a lockfile and fail if an update is needed. This setting is on by default in CI environments, so use --no-frozen-lockfile if you need to disable it for some reason",
            name: "--[no-]frozen-lockfile"
          },
          {
            description: `If the available \`${WANTED_LOCKFILE}\` satisfies the \`package.json\` then perform a headless installation`,
            name: "--prefer-frozen-lockfile"
          },
          {
            description: `The directory in which the ${WANTED_LOCKFILE} of the package will be created. Several projects may share a single lockfile.`,
            name: "--lockfile-dir <dir>"
          },
          {
            description: "Fix broken lockfile entries automatically",
            name: "--fix-lockfile"
          },
          {
            description: "Merge lockfiles were generated on git branch",
            name: "--merge-git-branch-lockfiles"
          },
          {
            description: "The directory in which dependencies will be installed (instead of node_modules)",
            name: "--modules-dir <dir>"
          },
          {
            description: "Dependencies inside the modules directory will have access only to their listed dependencies",
            name: "--no-hoist"
          },
          {
            description: "All the subdeps will be hoisted into the root node_modules. Your code will have access to them",
            name: "--shamefully-hoist"
          },
          {
            description: "Hoist all dependencies matching the pattern to `node_modules/.pnpm/node_modules`. The default pattern is * and matches everything. Hoisted packages can be required by any dependencies, so it is an emulation of a flat node_modules",
            name: "--hoist-pattern <pattern>"
          },
          {
            description: "Hoist all dependencies matching the pattern to the root of the modules directory",
            name: "--public-hoist-pattern <pattern>"
          },
          OPTIONS.storeDir,
          OPTIONS.virtualStoreDir,
          {
            description: "Maximum number of concurrent network requests",
            name: "--network-concurrency <number>"
          },
          {
            description: "Controls the number of child processes run parallelly to build node modules",
            name: "--child-concurrency <number>"
          },
          {
            description: "Disable pnpm hooks defined in .pnpmfile.cjs",
            name: "--ignore-pnpmfile"
          },
          {
            description: "Ignore pnpm-workspace.yaml if exists in the parent directory, and treat the installation as normal non-workspace installation.",
            name: "--ignore-workspace"
          },
          {
            description: "If false, doesn't check whether packages in the store were mutated",
            name: "--[no-]verify-store-integrity"
          },
          {
            description: "Fail on missing or invalid peer dependencies",
            name: "--strict-peer-dependencies"
          },
          {
            description: "Fail when a package's trust level is downgraded (e.g., from a trusted publisher to provenance only or no trust evidence)",
            name: "--trust-policy no-downgrade"
          },
          {
            description: "Exclude specific packages from trust policy checks",
            name: "--trust-policy-exclude <package-spec>"
          },
          {
            description: "Ignore trust downgrades for packages published more than specified minutes ago",
            name: "--trust-policy-ignore-after <minutes>"
          },
          {
            description: "Trust the lockfile and skip the supply-chain verification step that re-applies minimumReleaseAge / trustPolicy to each lockfile entry. Use only when the lockfile is part of the trusted base (closed-source projects, CI runs against an already-verified lockfile)",
            name: "--trust-lockfile"
          },
          {
            description: "Clones/hardlinks or copies packages. The selected method depends from the file system",
            name: "--package-import-method auto"
          },
          {
            description: "Hardlink packages from the store",
            name: "--package-import-method hardlink"
          },
          {
            description: "Copy packages from the store",
            name: "--package-import-method copy"
          },
          {
            description: "Clone (aka copy-on-write) packages from the store",
            name: "--package-import-method clone"
          },
          {
            description: "Force reinstall dependencies: refetch packages modified in store, recreate a lockfile and/or modules directory created by a non-compatible version of pnpm. Install all optionalDependencies even when they don't satisfy the current environment(cpu, os, arch)",
            name: "--force"
          },
          {
            description: "Use or cache the results of (pre/post)install hooks",
            name: "--side-effects-cache"
          },
          {
            description: "Only use the side effects cache if present, do not create it for new packages",
            name: "--side-effects-cache-readonly"
          },
          {
            description: "Re-runs resolution: useful for printing out peer dependency issues",
            name: "--resolution-only"
          },
          ...UNIVERSAL_OPTIONS
        ]
      },
      OUTPUT_OPTIONS,
      FILTERING
    ],
    url: docsUrl("install"),
    usages: ["pnpm install [options]"]
  });
}
async function handler5(opts2, _params, commands2) {
  if (opts2.global && !opts2._calledFromLink) {
    throw new PnpmError("GLOBAL_INSTALL_NOT_SUPPORTED", '"pnpm install -g" is not supported. Use "pnpm add -g <pkg>" to install global packages.');
  }
  const include = {
    dependencies: opts2.production !== false,
    devDependencies: opts2.dev !== false,
    optionalDependencies: opts2.optional !== false
  };
  const installDepsOptions = {
    ...opts2,
    rebuildHandler: commands2?.rebuild,
    frozenLockfileIfExists: opts2.frozenLockfileIfExists ?? (opts2.ci && !opts2.lockfileOnly && typeof opts2.frozenLockfile === "undefined" && typeof opts2.preferFrozenLockfile === "undefined"),
    include,
    includeDirect: include,
    fetchFullMetadata: getFetchFullMetadata(opts2),
    isInstallCommand: true
  };
  if (opts2.resolutionOnly) {
    installDepsOptions.lockfileOnly = true;
    installDepsOptions.forceFullResolution = true;
  }
  return installDeps(installDepsOptions, []);
}
var cliOptionsTypes5, shorthands2, commandNames5, recursiveByDefault;
var init_install2 = __esm({
  "../installing/commands/lib/install.js"() {
    "use strict";
    init_lib92();
    init_lib29();
    init_lib61();
    init_lib();
    init_lib2();
    init_es();
    init_lib63();
    init_getFetchFullMetadata();
    init_installDeps();
    cliOptionsTypes5 = () => ({
      ...rcOptionsTypes5(),
      ...pick_default(["force"], types2),
      "fix-lockfile": Boolean,
      "resolution-only": Boolean,
      recursive: Boolean,
      // `--no-save` lets `pnpm install` skip writing to package.json /
      // pnpm-workspace.yaml. Without registering it here, nopt drops the
      // flag, `opts.save` stays undefined, and the auto-add path treats
      // it as "save enabled".
      save: Boolean
    });
    shorthands2 = {
      D: "--dev",
      P: "--production"
    };
    commandNames5 = ["install", "i"];
    recursiveByDefault = true;
  }
});

// ../installing/commands/lib/dedupe.js
var dedupe_exports = {};
__export(dedupe_exports, {
  cliOptionsTypes: () => cliOptionsTypes6,
  commandNames: () => commandNames6,
  handler: () => handler6,
  help: () => help6,
  rcOptionsTypes: () => rcOptionsTypes6,
  recursiveByDefault: () => recursiveByDefault2
});
function rcOptionsTypes6() {
  return omit_default(["frozen-lockfile"], rcOptionsTypes5());
}
function cliOptionsTypes6() {
  return {
    ...rcOptionsTypes6(),
    check: Boolean
  };
}
function help6() {
  return renderHelp({
    description: "Perform an install removing older dependencies in the lockfile if a newer version can be used.",
    descriptionLists: [
      {
        title: "Options",
        list: [
          ...UNIVERSAL_OPTIONS,
          {
            description: "Check if running dedupe would result in changes without installing packages or editing the lockfile. Exits with a non-zero status code if changes are possible.",
            name: "--check"
          },
          OPTIONS.ignoreScripts,
          OPTIONS.offline,
          OPTIONS.preferOffline,
          OPTIONS.storeDir,
          OPTIONS.virtualStoreDir,
          OPTIONS.globalDir
        ]
      }
    ],
    url: docsUrl("dedupe"),
    usages: ["pnpm dedupe"]
  });
}
async function handler6(opts2, _params, commands2) {
  const include = {
    dependencies: opts2.production !== false,
    devDependencies: opts2.dev !== false,
    optionalDependencies: opts2.optional !== false
  };
  return installDeps({
    ...opts2,
    rebuildHandler: commands2?.rebuild,
    dedupe: true,
    include,
    includeDirect: include,
    lockfileCheck: opts2.check ? dedupeDiffCheck : void 0
  }, []);
}
var commandNames6, recursiveByDefault2;
var init_dedupe = __esm({
  "../installing/commands/lib/dedupe.js"() {
    "use strict";
    init_lib92();
    init_lib29();
    init_lib134();
    init_es();
    init_lib63();
    init_install2();
    init_installDeps();
    commandNames6 = ["dedupe"];
    recursiveByDefault2 = true;
  }
});

// ../installing/commands/lib/fetch.js
var fetch_exports = {};
__export(fetch_exports, {
  cliOptionsTypes: () => cliOptionsTypes5,
  commandNames: () => commandNames7,
  handler: () => handler7,
  help: () => help7,
  rcOptionsTypes: () => rcOptionsTypes7,
  shorthands: () => shorthands3
});
function help7() {
  return renderHelp({
    description: "Fetch packages from a lockfile into virtual store, package manifest is ignored. WARNING! This is an experimental command. Breaking changes may be introduced in non-major versions of the CLI",
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: "Only development packages will be fetched",
            name: "--dev",
            shortAlias: "-D"
          },
          {
            description: "Development packages will not be fetched",
            name: "--prod",
            shortAlias: "-P"
          },
          ...UNIVERSAL_OPTIONS
        ]
      }
    ],
    url: docsUrl("fetch"),
    usages: ["pnpm fetch [--dev | --prod]"]
  });
}
async function handler7(opts2) {
  const store = await createStoreController(opts2);
  const include = {
    dependencies: opts2.production !== false,
    devDependencies: opts2.dev !== false,
    // when including optional deps, production is also required when perform headless install
    optionalDependencies: opts2.production !== false
  };
  await mutateModulesInSingleProject({
    manifest: {},
    mutation: "install",
    pruneDirectDependencies: true,
    rootDir: process.cwd()
  }, {
    ...opts2,
    ignorePackageManifest: true,
    ignoreLocalPackages: true,
    include,
    modulesCacheMaxAge: 0,
    pruneStore: true,
    storeController: store.ctrl,
    storeDir: store.dir,
    resolutionVerifiers: store.resolutionVerifiers,
    // Hoisting is skipped anyway,
    // so we store these empty patterns in node_modules/.modules.yaml
    // to let the subsequent install know that hoisting should be performed.
    hoistPattern: [],
    publicHoistPattern: [],
    // virtualStoreOnly skips post-import linking (symlinks, bins, hoisting)
    // even if ignorePackageManifest handling changes in the future.
    virtualStoreOnly: true,
    // Ensure fetch can populate the virtual store even when the user has
    // enable-modules-dir=false in their config — fetch always needs node_modules/.pnpm
    // (unless GVS is active, in which case enableModulesDir doesn't matter).
    enableModulesDir: true
  });
}
var rcOptionsTypes7, shorthands3, commandNames7;
var init_fetch3 = __esm({
  "../installing/commands/lib/fetch.js"() {
    "use strict";
    init_lib92();
    init_lib29();
    init_lib124();
    init_lib90();
    init_lib63();
    init_install2();
    rcOptionsTypes7 = cliOptionsTypes5;
    shorthands3 = {
      D: "--dev",
      P: "--production"
    };
    commandNames7 = ["fetch"];
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/tinylogic/2.0.0/aed296968f4f4760d5039fdac7c793d1d722216ddb2bce5d314ad2f74f791cf9/node_modules/tinylogic/grammar.js
var require_grammar = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/tinylogic/2.0.0/aed296968f4f4760d5039fdac7c793d1d722216ddb2bce5d314ad2f74f791cf9/node_modules/tinylogic/grammar.js"(exports2, module2) {
    "use strict";
    function peg$subclass(child, parent) {
      function ctor() {
        this.constructor = child;
      }
      ctor.prototype = parent.prototype;
      child.prototype = new ctor();
    }
    function peg$SyntaxError(message, expected, found, location) {
      this.message = message;
      this.expected = expected;
      this.found = found;
      this.location = location;
      this.name = "SyntaxError";
      if (typeof Error.captureStackTrace === "function") {
        Error.captureStackTrace(this, peg$SyntaxError);
      }
    }
    peg$subclass(peg$SyntaxError, Error);
    peg$SyntaxError.buildMessage = function(expected, found) {
      var DESCRIBE_EXPECTATION_FNS = {
        literal: function(expectation) {
          return '"' + literalEscape(expectation.text) + '"';
        },
        "class": function(expectation) {
          var escapedParts = "", i2;
          for (i2 = 0; i2 < expectation.parts.length; i2++) {
            escapedParts += expectation.parts[i2] instanceof Array ? classEscape(expectation.parts[i2][0]) + "-" + classEscape(expectation.parts[i2][1]) : classEscape(expectation.parts[i2]);
          }
          return "[" + (expectation.inverted ? "^" : "") + escapedParts + "]";
        },
        any: function(expectation) {
          return "any character";
        },
        end: function(expectation) {
          return "end of input";
        },
        other: function(expectation) {
          return expectation.description;
        }
      };
      function hex(ch) {
        return ch.charCodeAt(0).toString(16).toUpperCase();
      }
      function literalEscape(s) {
        return s.replace(/\\/g, "\\\\").replace(/"/g, '\\"').replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(ch) {
          return "\\x0" + hex(ch);
        }).replace(/[\x10-\x1F\x7F-\x9F]/g, function(ch) {
          return "\\x" + hex(ch);
        });
      }
      function classEscape(s) {
        return s.replace(/\\/g, "\\\\").replace(/\]/g, "\\]").replace(/\^/g, "\\^").replace(/-/g, "\\-").replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(ch) {
          return "\\x0" + hex(ch);
        }).replace(/[\x10-\x1F\x7F-\x9F]/g, function(ch) {
          return "\\x" + hex(ch);
        });
      }
      function describeExpectation(expectation) {
        return DESCRIBE_EXPECTATION_FNS[expectation.type](expectation);
      }
      function describeExpected(expected2) {
        var descriptions = new Array(expected2.length), i2, j2;
        for (i2 = 0; i2 < expected2.length; i2++) {
          descriptions[i2] = describeExpectation(expected2[i2]);
        }
        descriptions.sort();
        if (descriptions.length > 0) {
          for (i2 = 1, j2 = 1; i2 < descriptions.length; i2++) {
            if (descriptions[i2 - 1] !== descriptions[i2]) {
              descriptions[j2] = descriptions[i2];
              j2++;
            }
          }
          descriptions.length = j2;
        }
        switch (descriptions.length) {
          case 1:
            return descriptions[0];
          case 2:
            return descriptions[0] + " or " + descriptions[1];
          default:
            return descriptions.slice(0, -1).join(", ") + ", or " + descriptions[descriptions.length - 1];
        }
      }
      function describeFound(found2) {
        return found2 ? '"' + literalEscape(found2) + '"' : "end of input";
      }
      return "Expected " + describeExpected(expected) + " but " + describeFound(found) + " found.";
    };
    function peg$parse(input, options) {
      options = options !== void 0 ? options : {};
      var peg$FAILED = {}, peg$startRuleFunctions = { Expression: peg$parseExpression }, peg$startRuleFunction = peg$parseExpression, peg$c0 = "|", peg$c1 = peg$literalExpectation("|", false), peg$c2 = "&", peg$c3 = peg$literalExpectation("&", false), peg$c4 = "^", peg$c5 = peg$literalExpectation("^", false), peg$c6 = function(head2, tail2) {
        return !!tail2.reduce((result2, element) => {
          switch (element[1]) {
            case "|":
              return result2 | element[3];
            case "&":
              return result2 & element[3];
            case "^":
              return result2 ^ element[3];
          }
        }, head2);
      }, peg$c7 = "!", peg$c8 = peg$literalExpectation("!", false), peg$c9 = function(term) {
        return !term;
      }, peg$c10 = "(", peg$c11 = peg$literalExpectation("(", false), peg$c12 = ")", peg$c13 = peg$literalExpectation(")", false), peg$c14 = function(expr) {
        return expr;
      }, peg$c15 = /^[^ \t\n\r()!|&\^]/, peg$c16 = peg$classExpectation([" ", "	", "\n", "\r", "(", ")", "!", "|", "&", "^"], true, false), peg$c17 = function(token) {
        return options.queryPattern.test(token);
      }, peg$c18 = function(token) {
        return options.checkFn(token);
      }, peg$c19 = peg$otherExpectation("whitespace"), peg$c20 = /^[ \t\n\r]/, peg$c21 = peg$classExpectation([" ", "	", "\n", "\r"], false, false), peg$currPos = 0, peg$savedPos = 0, peg$posDetailsCache = [{ line: 1, column: 1 }], peg$maxFailPos = 0, peg$maxFailExpected = [], peg$silentFails = 0, peg$result;
      if ("startRule" in options) {
        if (!(options.startRule in peg$startRuleFunctions)) {
          throw new Error(`Can't start parsing from rule "` + options.startRule + '".');
        }
        peg$startRuleFunction = peg$startRuleFunctions[options.startRule];
      }
      function text() {
        return input.substring(peg$savedPos, peg$currPos);
      }
      function location() {
        return peg$computeLocation(peg$savedPos, peg$currPos);
      }
      function expected(description, location2) {
        location2 = location2 !== void 0 ? location2 : peg$computeLocation(peg$savedPos, peg$currPos);
        throw peg$buildStructuredError(
          [peg$otherExpectation(description)],
          input.substring(peg$savedPos, peg$currPos),
          location2
        );
      }
      function error(message, location2) {
        location2 = location2 !== void 0 ? location2 : peg$computeLocation(peg$savedPos, peg$currPos);
        throw peg$buildSimpleError(message, location2);
      }
      function peg$literalExpectation(text2, ignoreCase) {
        return { type: "literal", text: text2, ignoreCase };
      }
      function peg$classExpectation(parts, inverted, ignoreCase) {
        return { type: "class", parts, inverted, ignoreCase };
      }
      function peg$anyExpectation() {
        return { type: "any" };
      }
      function peg$endExpectation() {
        return { type: "end" };
      }
      function peg$otherExpectation(description) {
        return { type: "other", description };
      }
      function peg$computePosDetails(pos) {
        var details = peg$posDetailsCache[pos], p;
        if (details) {
          return details;
        } else {
          p = pos - 1;
          while (!peg$posDetailsCache[p]) {
            p--;
          }
          details = peg$posDetailsCache[p];
          details = {
            line: details.line,
            column: details.column
          };
          while (p < pos) {
            if (input.charCodeAt(p) === 10) {
              details.line++;
              details.column = 1;
            } else {
              details.column++;
            }
            p++;
          }
          peg$posDetailsCache[pos] = details;
          return details;
        }
      }
      function peg$computeLocation(startPos, endPos) {
        var startPosDetails = peg$computePosDetails(startPos), endPosDetails = peg$computePosDetails(endPos);
        return {
          start: {
            offset: startPos,
            line: startPosDetails.line,
            column: startPosDetails.column
          },
          end: {
            offset: endPos,
            line: endPosDetails.line,
            column: endPosDetails.column
          }
        };
      }
      function peg$fail(expected2) {
        if (peg$currPos < peg$maxFailPos) {
          return;
        }
        if (peg$currPos > peg$maxFailPos) {
          peg$maxFailPos = peg$currPos;
          peg$maxFailExpected = [];
        }
        peg$maxFailExpected.push(expected2);
      }
      function peg$buildSimpleError(message, location2) {
        return new peg$SyntaxError(message, null, null, location2);
      }
      function peg$buildStructuredError(expected2, found, location2) {
        return new peg$SyntaxError(
          peg$SyntaxError.buildMessage(expected2, found),
          expected2,
          found,
          location2
        );
      }
      function peg$parseExpression() {
        var s0, s1, s2, s3, s4, s5, s6, s7;
        s0 = peg$currPos;
        s1 = peg$parseTerm();
        if (s1 !== peg$FAILED) {
          s2 = [];
          s3 = peg$currPos;
          s4 = peg$parse_();
          if (s4 !== peg$FAILED) {
            if (input.charCodeAt(peg$currPos) === 124) {
              s5 = peg$c0;
              peg$currPos++;
            } else {
              s5 = peg$FAILED;
              if (peg$silentFails === 0) {
                peg$fail(peg$c1);
              }
            }
            if (s5 === peg$FAILED) {
              if (input.charCodeAt(peg$currPos) === 38) {
                s5 = peg$c2;
                peg$currPos++;
              } else {
                s5 = peg$FAILED;
                if (peg$silentFails === 0) {
                  peg$fail(peg$c3);
                }
              }
              if (s5 === peg$FAILED) {
                if (input.charCodeAt(peg$currPos) === 94) {
                  s5 = peg$c4;
                  peg$currPos++;
                } else {
                  s5 = peg$FAILED;
                  if (peg$silentFails === 0) {
                    peg$fail(peg$c5);
                  }
                }
              }
            }
            if (s5 !== peg$FAILED) {
              s6 = peg$parse_();
              if (s6 !== peg$FAILED) {
                s7 = peg$parseTerm();
                if (s7 !== peg$FAILED) {
                  s4 = [s4, s5, s6, s7];
                  s3 = s4;
                } else {
                  peg$currPos = s3;
                  s3 = peg$FAILED;
                }
              } else {
                peg$currPos = s3;
                s3 = peg$FAILED;
              }
            } else {
              peg$currPos = s3;
              s3 = peg$FAILED;
            }
          } else {
            peg$currPos = s3;
            s3 = peg$FAILED;
          }
          while (s3 !== peg$FAILED) {
            s2.push(s3);
            s3 = peg$currPos;
            s4 = peg$parse_();
            if (s4 !== peg$FAILED) {
              if (input.charCodeAt(peg$currPos) === 124) {
                s5 = peg$c0;
                peg$currPos++;
              } else {
                s5 = peg$FAILED;
                if (peg$silentFails === 0) {
                  peg$fail(peg$c1);
                }
              }
              if (s5 === peg$FAILED) {
                if (input.charCodeAt(peg$currPos) === 38) {
                  s5 = peg$c2;
                  peg$currPos++;
                } else {
                  s5 = peg$FAILED;
                  if (peg$silentFails === 0) {
                    peg$fail(peg$c3);
                  }
                }
                if (s5 === peg$FAILED) {
                  if (input.charCodeAt(peg$currPos) === 94) {
                    s5 = peg$c4;
                    peg$currPos++;
                  } else {
                    s5 = peg$FAILED;
                    if (peg$silentFails === 0) {
                      peg$fail(peg$c5);
                    }
                  }
                }
              }
              if (s5 !== peg$FAILED) {
                s6 = peg$parse_();
                if (s6 !== peg$FAILED) {
                  s7 = peg$parseTerm();
                  if (s7 !== peg$FAILED) {
                    s4 = [s4, s5, s6, s7];
                    s3 = s4;
                  } else {
                    peg$currPos = s3;
                    s3 = peg$FAILED;
                  }
                } else {
                  peg$currPos = s3;
                  s3 = peg$FAILED;
                }
              } else {
                peg$currPos = s3;
                s3 = peg$FAILED;
              }
            } else {
              peg$currPos = s3;
              s3 = peg$FAILED;
            }
          }
          if (s2 !== peg$FAILED) {
            peg$savedPos = s0;
            s1 = peg$c6(s1, s2);
            s0 = s1;
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        return s0;
      }
      function peg$parseTerm() {
        var s0, s1, s2, s3, s4, s5;
        s0 = peg$currPos;
        if (input.charCodeAt(peg$currPos) === 33) {
          s1 = peg$c7;
          peg$currPos++;
        } else {
          s1 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c8);
          }
        }
        if (s1 !== peg$FAILED) {
          s2 = peg$parseTerm();
          if (s2 !== peg$FAILED) {
            peg$savedPos = s0;
            s1 = peg$c9(s2);
            s0 = s1;
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        if (s0 === peg$FAILED) {
          s0 = peg$currPos;
          if (input.charCodeAt(peg$currPos) === 40) {
            s1 = peg$c10;
            peg$currPos++;
          } else {
            s1 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c11);
            }
          }
          if (s1 !== peg$FAILED) {
            s2 = peg$parse_();
            if (s2 !== peg$FAILED) {
              s3 = peg$parseExpression();
              if (s3 !== peg$FAILED) {
                s4 = peg$parse_();
                if (s4 !== peg$FAILED) {
                  if (input.charCodeAt(peg$currPos) === 41) {
                    s5 = peg$c12;
                    peg$currPos++;
                  } else {
                    s5 = peg$FAILED;
                    if (peg$silentFails === 0) {
                      peg$fail(peg$c13);
                    }
                  }
                  if (s5 !== peg$FAILED) {
                    peg$savedPos = s0;
                    s1 = peg$c14(s3);
                    s0 = s1;
                  } else {
                    peg$currPos = s0;
                    s0 = peg$FAILED;
                  }
                } else {
                  peg$currPos = s0;
                  s0 = peg$FAILED;
                }
              } else {
                peg$currPos = s0;
                s0 = peg$FAILED;
              }
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
          if (s0 === peg$FAILED) {
            s0 = peg$parseToken();
          }
        }
        return s0;
      }
      function peg$parseToken() {
        var s0, s1, s2, s3, s4;
        s0 = peg$currPos;
        s1 = peg$parse_();
        if (s1 !== peg$FAILED) {
          s2 = peg$currPos;
          s3 = [];
          if (peg$c15.test(input.charAt(peg$currPos))) {
            s4 = input.charAt(peg$currPos);
            peg$currPos++;
          } else {
            s4 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c16);
            }
          }
          if (s4 !== peg$FAILED) {
            while (s4 !== peg$FAILED) {
              s3.push(s4);
              if (peg$c15.test(input.charAt(peg$currPos))) {
                s4 = input.charAt(peg$currPos);
                peg$currPos++;
              } else {
                s4 = peg$FAILED;
                if (peg$silentFails === 0) {
                  peg$fail(peg$c16);
                }
              }
            }
          } else {
            s3 = peg$FAILED;
          }
          if (s3 !== peg$FAILED) {
            s2 = input.substring(s2, peg$currPos);
          } else {
            s2 = s3;
          }
          if (s2 !== peg$FAILED) {
            peg$savedPos = peg$currPos;
            s3 = peg$c17(s2);
            if (s3) {
              s3 = void 0;
            } else {
              s3 = peg$FAILED;
            }
            if (s3 !== peg$FAILED) {
              peg$savedPos = s0;
              s1 = peg$c18(s2);
              s0 = s1;
            } else {
              peg$currPos = s0;
              s0 = peg$FAILED;
            }
          } else {
            peg$currPos = s0;
            s0 = peg$FAILED;
          }
        } else {
          peg$currPos = s0;
          s0 = peg$FAILED;
        }
        return s0;
      }
      function peg$parse_() {
        var s0, s1;
        peg$silentFails++;
        s0 = [];
        if (peg$c20.test(input.charAt(peg$currPos))) {
          s1 = input.charAt(peg$currPos);
          peg$currPos++;
        } else {
          s1 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c21);
          }
        }
        while (s1 !== peg$FAILED) {
          s0.push(s1);
          if (peg$c20.test(input.charAt(peg$currPos))) {
            s1 = input.charAt(peg$currPos);
            peg$currPos++;
          } else {
            s1 = peg$FAILED;
            if (peg$silentFails === 0) {
              peg$fail(peg$c21);
            }
          }
        }
        peg$silentFails--;
        if (s0 === peg$FAILED) {
          s1 = peg$FAILED;
          if (peg$silentFails === 0) {
            peg$fail(peg$c19);
          }
        }
        return s0;
      }
      peg$result = peg$startRuleFunction();
      if (peg$result !== peg$FAILED && peg$currPos === input.length) {
        return peg$result;
      } else {
        if (peg$result !== peg$FAILED && peg$currPos < input.length) {
          peg$fail(peg$endExpectation());
        }
        throw peg$buildStructuredError(
          peg$maxFailExpected,
          peg$maxFailPos < input.length ? input.charAt(peg$maxFailPos) : null,
          peg$maxFailPos < input.length ? peg$computeLocation(peg$maxFailPos, peg$maxFailPos + 1) : peg$computeLocation(peg$maxFailPos, peg$maxFailPos)
        );
      }
    }
    module2.exports = {
      SyntaxError: peg$SyntaxError,
      parse: peg$parse
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/tinylogic/2.0.0/aed296968f4f4760d5039fdac7c793d1d722216ddb2bce5d314ad2f74f791cf9/node_modules/tinylogic/index.js
var require_tinylogic = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/tinylogic/2.0.0/aed296968f4f4760d5039fdac7c793d1d722216ddb2bce5d314ad2f74f791cf9/node_modules/tinylogic/index.js"(exports2) {
    var { parse: parse7 } = require_grammar();
    exports2.makeParser = (queryPattern = /[a-z]+/) => {
      return (str2, checkFn) => parse7(str2, { queryPattern, checkFn });
    };
    exports2.parse = exports2.makeParser();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/core/4.5.0/1c6edf299c560e75f87368abe07278b2427232b51d92ec1973cdc6be0abe38bc/node_modules/@yarnpkg/core/lib/MessageName.js
var require_MessageName = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/core/4.5.0/1c6edf299c560e75f87368abe07278b2427232b51d92ec1973cdc6be0abe38bc/node_modules/@yarnpkg/core/lib/MessageName.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.MessageName = void 0;
    exports2.stringifyMessageName = stringifyMessageName;
    exports2.parseMessageName = parseMessageName;
    var MessageName;
    (function(MessageName2) {
      MessageName2[MessageName2["UNNAMED"] = 0] = "UNNAMED";
      MessageName2[MessageName2["EXCEPTION"] = 1] = "EXCEPTION";
      MessageName2[MessageName2["MISSING_PEER_DEPENDENCY"] = 2] = "MISSING_PEER_DEPENDENCY";
      MessageName2[MessageName2["CYCLIC_DEPENDENCIES"] = 3] = "CYCLIC_DEPENDENCIES";
      MessageName2[MessageName2["DISABLED_BUILD_SCRIPTS"] = 4] = "DISABLED_BUILD_SCRIPTS";
      MessageName2[MessageName2["BUILD_DISABLED"] = 5] = "BUILD_DISABLED";
      MessageName2[MessageName2["SOFT_LINK_BUILD"] = 6] = "SOFT_LINK_BUILD";
      MessageName2[MessageName2["MUST_BUILD"] = 7] = "MUST_BUILD";
      MessageName2[MessageName2["MUST_REBUILD"] = 8] = "MUST_REBUILD";
      MessageName2[MessageName2["BUILD_FAILED"] = 9] = "BUILD_FAILED";
      MessageName2[MessageName2["RESOLVER_NOT_FOUND"] = 10] = "RESOLVER_NOT_FOUND";
      MessageName2[MessageName2["FETCHER_NOT_FOUND"] = 11] = "FETCHER_NOT_FOUND";
      MessageName2[MessageName2["LINKER_NOT_FOUND"] = 12] = "LINKER_NOT_FOUND";
      MessageName2[MessageName2["FETCH_NOT_CACHED"] = 13] = "FETCH_NOT_CACHED";
      MessageName2[MessageName2["YARN_IMPORT_FAILED"] = 14] = "YARN_IMPORT_FAILED";
      MessageName2[MessageName2["REMOTE_INVALID"] = 15] = "REMOTE_INVALID";
      MessageName2[MessageName2["REMOTE_NOT_FOUND"] = 16] = "REMOTE_NOT_FOUND";
      MessageName2[MessageName2["RESOLUTION_PACK"] = 17] = "RESOLUTION_PACK";
      MessageName2[MessageName2["CACHE_CHECKSUM_MISMATCH"] = 18] = "CACHE_CHECKSUM_MISMATCH";
      MessageName2[MessageName2["UNUSED_CACHE_ENTRY"] = 19] = "UNUSED_CACHE_ENTRY";
      MessageName2[MessageName2["MISSING_LOCKFILE_ENTRY"] = 20] = "MISSING_LOCKFILE_ENTRY";
      MessageName2[MessageName2["WORKSPACE_NOT_FOUND"] = 21] = "WORKSPACE_NOT_FOUND";
      MessageName2[MessageName2["TOO_MANY_MATCHING_WORKSPACES"] = 22] = "TOO_MANY_MATCHING_WORKSPACES";
      MessageName2[MessageName2["CONSTRAINTS_MISSING_DEPENDENCY"] = 23] = "CONSTRAINTS_MISSING_DEPENDENCY";
      MessageName2[MessageName2["CONSTRAINTS_INCOMPATIBLE_DEPENDENCY"] = 24] = "CONSTRAINTS_INCOMPATIBLE_DEPENDENCY";
      MessageName2[MessageName2["CONSTRAINTS_EXTRANEOUS_DEPENDENCY"] = 25] = "CONSTRAINTS_EXTRANEOUS_DEPENDENCY";
      MessageName2[MessageName2["CONSTRAINTS_INVALID_DEPENDENCY"] = 26] = "CONSTRAINTS_INVALID_DEPENDENCY";
      MessageName2[MessageName2["CANT_SUGGEST_RESOLUTIONS"] = 27] = "CANT_SUGGEST_RESOLUTIONS";
      MessageName2[MessageName2["FROZEN_LOCKFILE_EXCEPTION"] = 28] = "FROZEN_LOCKFILE_EXCEPTION";
      MessageName2[MessageName2["CROSS_DRIVE_VIRTUAL_LOCAL"] = 29] = "CROSS_DRIVE_VIRTUAL_LOCAL";
      MessageName2[MessageName2["FETCH_FAILED"] = 30] = "FETCH_FAILED";
      MessageName2[MessageName2["DANGEROUS_NODE_MODULES"] = 31] = "DANGEROUS_NODE_MODULES";
      MessageName2[MessageName2["NODE_GYP_INJECTED"] = 32] = "NODE_GYP_INJECTED";
      MessageName2[MessageName2["AUTHENTICATION_NOT_FOUND"] = 33] = "AUTHENTICATION_NOT_FOUND";
      MessageName2[MessageName2["INVALID_CONFIGURATION_KEY"] = 34] = "INVALID_CONFIGURATION_KEY";
      MessageName2[MessageName2["NETWORK_ERROR"] = 35] = "NETWORK_ERROR";
      MessageName2[MessageName2["LIFECYCLE_SCRIPT"] = 36] = "LIFECYCLE_SCRIPT";
      MessageName2[MessageName2["CONSTRAINTS_MISSING_FIELD"] = 37] = "CONSTRAINTS_MISSING_FIELD";
      MessageName2[MessageName2["CONSTRAINTS_INCOMPATIBLE_FIELD"] = 38] = "CONSTRAINTS_INCOMPATIBLE_FIELD";
      MessageName2[MessageName2["CONSTRAINTS_EXTRANEOUS_FIELD"] = 39] = "CONSTRAINTS_EXTRANEOUS_FIELD";
      MessageName2[MessageName2["CONSTRAINTS_INVALID_FIELD"] = 40] = "CONSTRAINTS_INVALID_FIELD";
      MessageName2[MessageName2["AUTHENTICATION_INVALID"] = 41] = "AUTHENTICATION_INVALID";
      MessageName2[MessageName2["PROLOG_UNKNOWN_ERROR"] = 42] = "PROLOG_UNKNOWN_ERROR";
      MessageName2[MessageName2["PROLOG_SYNTAX_ERROR"] = 43] = "PROLOG_SYNTAX_ERROR";
      MessageName2[MessageName2["PROLOG_EXISTENCE_ERROR"] = 44] = "PROLOG_EXISTENCE_ERROR";
      MessageName2[MessageName2["STACK_OVERFLOW_RESOLUTION"] = 45] = "STACK_OVERFLOW_RESOLUTION";
      MessageName2[MessageName2["AUTOMERGE_FAILED_TO_PARSE"] = 46] = "AUTOMERGE_FAILED_TO_PARSE";
      MessageName2[MessageName2["AUTOMERGE_IMMUTABLE"] = 47] = "AUTOMERGE_IMMUTABLE";
      MessageName2[MessageName2["AUTOMERGE_SUCCESS"] = 48] = "AUTOMERGE_SUCCESS";
      MessageName2[MessageName2["AUTOMERGE_REQUIRED"] = 49] = "AUTOMERGE_REQUIRED";
      MessageName2[MessageName2["DEPRECATED_CLI_SETTINGS"] = 50] = "DEPRECATED_CLI_SETTINGS";
      MessageName2[MessageName2["PLUGIN_NAME_NOT_FOUND"] = 51] = "PLUGIN_NAME_NOT_FOUND";
      MessageName2[MessageName2["INVALID_PLUGIN_REFERENCE"] = 52] = "INVALID_PLUGIN_REFERENCE";
      MessageName2[MessageName2["CONSTRAINTS_AMBIGUITY"] = 53] = "CONSTRAINTS_AMBIGUITY";
      MessageName2[MessageName2["CACHE_OUTSIDE_PROJECT"] = 54] = "CACHE_OUTSIDE_PROJECT";
      MessageName2[MessageName2["IMMUTABLE_INSTALL"] = 55] = "IMMUTABLE_INSTALL";
      MessageName2[MessageName2["IMMUTABLE_CACHE"] = 56] = "IMMUTABLE_CACHE";
      MessageName2[MessageName2["INVALID_MANIFEST"] = 57] = "INVALID_MANIFEST";
      MessageName2[MessageName2["PACKAGE_PREPARATION_FAILED"] = 58] = "PACKAGE_PREPARATION_FAILED";
      MessageName2[MessageName2["INVALID_RANGE_PEER_DEPENDENCY"] = 59] = "INVALID_RANGE_PEER_DEPENDENCY";
      MessageName2[MessageName2["INCOMPATIBLE_PEER_DEPENDENCY"] = 60] = "INCOMPATIBLE_PEER_DEPENDENCY";
      MessageName2[MessageName2["DEPRECATED_PACKAGE"] = 61] = "DEPRECATED_PACKAGE";
      MessageName2[MessageName2["INCOMPATIBLE_OS"] = 62] = "INCOMPATIBLE_OS";
      MessageName2[MessageName2["INCOMPATIBLE_CPU"] = 63] = "INCOMPATIBLE_CPU";
      MessageName2[MessageName2["FROZEN_ARTIFACT_EXCEPTION"] = 64] = "FROZEN_ARTIFACT_EXCEPTION";
      MessageName2[MessageName2["TELEMETRY_NOTICE"] = 65] = "TELEMETRY_NOTICE";
      MessageName2[MessageName2["PATCH_HUNK_FAILED"] = 66] = "PATCH_HUNK_FAILED";
      MessageName2[MessageName2["INVALID_CONFIGURATION_VALUE"] = 67] = "INVALID_CONFIGURATION_VALUE";
      MessageName2[MessageName2["UNUSED_PACKAGE_EXTENSION"] = 68] = "UNUSED_PACKAGE_EXTENSION";
      MessageName2[MessageName2["REDUNDANT_PACKAGE_EXTENSION"] = 69] = "REDUNDANT_PACKAGE_EXTENSION";
      MessageName2[MessageName2["AUTO_NM_SUCCESS"] = 70] = "AUTO_NM_SUCCESS";
      MessageName2[MessageName2["NM_CANT_INSTALL_EXTERNAL_SOFT_LINK"] = 71] = "NM_CANT_INSTALL_EXTERNAL_SOFT_LINK";
      MessageName2[MessageName2["NM_PRESERVE_SYMLINKS_REQUIRED"] = 72] = "NM_PRESERVE_SYMLINKS_REQUIRED";
      MessageName2[MessageName2["UPDATE_LOCKFILE_ONLY_SKIP_LINK"] = 73] = "UPDATE_LOCKFILE_ONLY_SKIP_LINK";
      MessageName2[MessageName2["NM_HARDLINKS_MODE_DOWNGRADED"] = 74] = "NM_HARDLINKS_MODE_DOWNGRADED";
      MessageName2[MessageName2["PROLOG_INSTANTIATION_ERROR"] = 75] = "PROLOG_INSTANTIATION_ERROR";
      MessageName2[MessageName2["INCOMPATIBLE_ARCHITECTURE"] = 76] = "INCOMPATIBLE_ARCHITECTURE";
      MessageName2[MessageName2["GHOST_ARCHITECTURE"] = 77] = "GHOST_ARCHITECTURE";
      MessageName2[MessageName2["RESOLUTION_MISMATCH"] = 78] = "RESOLUTION_MISMATCH";
      MessageName2[MessageName2["PROLOG_LIMIT_EXCEEDED"] = 79] = "PROLOG_LIMIT_EXCEEDED";
      MessageName2[MessageName2["NETWORK_DISABLED"] = 80] = "NETWORK_DISABLED";
      MessageName2[MessageName2["NETWORK_UNSAFE_HTTP"] = 81] = "NETWORK_UNSAFE_HTTP";
      MessageName2[MessageName2["RESOLUTION_FAILED"] = 82] = "RESOLUTION_FAILED";
      MessageName2[MessageName2["AUTOMERGE_GIT_ERROR"] = 83] = "AUTOMERGE_GIT_ERROR";
      MessageName2[MessageName2["CONSTRAINTS_CHECK_FAILED"] = 84] = "CONSTRAINTS_CHECK_FAILED";
      MessageName2[MessageName2["UPDATED_RESOLUTION_RECORD"] = 85] = "UPDATED_RESOLUTION_RECORD";
      MessageName2[MessageName2["EXPLAIN_PEER_DEPENDENCIES_CTA"] = 86] = "EXPLAIN_PEER_DEPENDENCIES_CTA";
      MessageName2[MessageName2["MIGRATION_SUCCESS"] = 87] = "MIGRATION_SUCCESS";
      MessageName2[MessageName2["VERSION_NOTICE"] = 88] = "VERSION_NOTICE";
      MessageName2[MessageName2["TIPS_NOTICE"] = 89] = "TIPS_NOTICE";
      MessageName2[MessageName2["OFFLINE_MODE_ENABLED"] = 90] = "OFFLINE_MODE_ENABLED";
      MessageName2[MessageName2["INVALID_PROVENANCE_ENVIRONMENT"] = 91] = "INVALID_PROVENANCE_ENVIRONMENT";
    })(MessageName || (exports2.MessageName = MessageName = {}));
    function stringifyMessageName(name) {
      return `YN${name.toString(10).padStart(4, `0`)}`;
    }
    function parseMessageName(messageName) {
      const parsed = Number(messageName.slice(2));
      if (typeof MessageName[parsed] === `undefined`)
        throw new Error(`Unknown message name: "${messageName}"`);
      return parsed;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/castArray.js
var require_castArray = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/castArray.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function castArray(value) {
      if (arguments.length === 0) {
        return [];
      }
      return Array.isArray(value) ? value : [value];
    }
    exports2.castArray = castArray;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/chunk.js
var require_chunk = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/chunk.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function chunk(arr, size) {
      if (!Number.isInteger(size) || size <= 0) {
        throw new Error("Size must be an integer greater than zero.");
      }
      const chunkLength = Math.ceil(arr.length / size);
      const result2 = Array(chunkLength);
      for (let index = 0; index < chunkLength; index++) {
        const start = index * size;
        const end = start + size;
        result2[index] = arr.slice(start, end);
      }
      return result2;
    }
    exports2.chunk = chunk;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/toArray.js
var require_toArray = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/toArray.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function toArray2(value) {
      return Array.isArray(value) ? value : Array.from(value);
    }
    exports2.toArray = toArray2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isLength.js
var require_isLength = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isLength.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isLength(value) {
      return Number.isSafeInteger(value) && value >= 0;
    }
    exports2.isLength = isLength;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isArrayLike.js
var require_isArrayLike = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isArrayLike.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isLength = require_isLength();
    function isArrayLike2(value) {
      return value != null && typeof value !== "function" && isLength.isLength(value.length);
    }
    exports2.isArrayLike = isArrayLike2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/chunk.js
var require_chunk2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/chunk.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var chunk$1 = require_chunk();
    var toArray2 = require_toArray();
    var isArrayLike2 = require_isArrayLike();
    function chunk(arr, size = 1) {
      size = Math.max(Math.floor(size), 0);
      if (size === 0 || !isArrayLike2.isArrayLike(arr)) {
        return [];
      }
      return chunk$1.chunk(toArray2.toArray(arr), size);
    }
    exports2.chunk = chunk;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/compact.js
var require_compact = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/compact.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function compact(arr) {
      const result2 = [];
      for (let i2 = 0; i2 < arr.length; i2++) {
        const item = arr[i2];
        if (item) {
          result2.push(item);
        }
      }
      return result2;
    }
    exports2.compact = compact;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/compact.js
var require_compact2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/compact.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var compact$1 = require_compact();
    var isArrayLike2 = require_isArrayLike();
    function compact(arr) {
      if (!isArrayLike2.isArrayLike(arr)) {
        return [];
      }
      return compact$1.compact(Array.from(arr));
    }
    exports2.compact = compact;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/flatten.js
var require_flatten = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/flatten.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function flatten2(arr, depth = 1) {
      const result2 = [];
      const flooredDepth = Math.floor(depth);
      const recursive2 = (arr2, currentDepth) => {
        for (let i2 = 0; i2 < arr2.length; i2++) {
          const item = arr2[i2];
          if (Array.isArray(item) && currentDepth < flooredDepth) {
            recursive2(item, currentDepth + 1);
          } else {
            result2.push(item);
          }
        }
      };
      recursive2(arr, 0);
      return result2;
    }
    exports2.flatten = flatten2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/concat.js
var require_concat = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/concat.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var flatten2 = require_flatten();
    function concat(...values) {
      return flatten2.flatten(values);
    }
    exports2.concat = concat;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/function/identity.js
var require_identity2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/function/identity.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function identity5(x) {
      return x;
    }
    exports2.identity = identity5;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/_internal/isUnsafeProperty.js
var require_isUnsafeProperty = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/_internal/isUnsafeProperty.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isUnsafeProperty(key) {
      return key === "__proto__";
    }
    exports2.isUnsafeProperty = isUnsafeProperty;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/isDeepKey.js
var require_isDeepKey = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/isDeepKey.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isDeepKey(key) {
      switch (typeof key) {
        case "number":
        case "symbol": {
          return false;
        }
        case "string": {
          return key.includes(".") || key.includes("[") || key.includes("]");
        }
      }
    }
    exports2.isDeepKey = isDeepKey;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/toKey.js
var require_toKey = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/toKey.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function toKey(value) {
      if (typeof value === "string" || typeof value === "symbol") {
        return value;
      }
      if (Object.is(value?.valueOf?.(), -0)) {
        return "-0";
      }
      return String(value);
    }
    exports2.toKey = toKey;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/toString.js
var require_toString = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/toString.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function toString4(value) {
      if (value == null) {
        return "";
      }
      if (typeof value === "string") {
        return value;
      }
      if (Array.isArray(value)) {
        return value.map(toString4).join(",");
      }
      const result2 = String(value);
      if (result2 === "0" && Object.is(Number(value), -0)) {
        return "-0";
      }
      return result2;
    }
    exports2.toString = toString4;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/toPath.js
var require_toPath = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/toPath.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var toString4 = require_toString();
    var toKey = require_toKey();
    function toPath4(deepKey) {
      if (Array.isArray(deepKey)) {
        return deepKey.map(toKey.toKey);
      }
      if (typeof deepKey === "symbol") {
        return [deepKey];
      }
      deepKey = toString4.toString(deepKey);
      const result2 = [];
      const length = deepKey.length;
      if (length === 0) {
        return result2;
      }
      let index = 0;
      let key = "";
      let quoteChar = "";
      let bracket = false;
      if (deepKey.charCodeAt(0) === 46) {
        result2.push("");
        index++;
      }
      while (index < length) {
        const char = deepKey[index];
        if (quoteChar) {
          if (char === "\\" && index + 1 < length) {
            index++;
            key += deepKey[index];
          } else if (char === quoteChar) {
            quoteChar = "";
          } else {
            key += char;
          }
        } else if (bracket) {
          if (char === '"' || char === "'") {
            quoteChar = char;
          } else if (char === "]") {
            bracket = false;
            result2.push(key);
            key = "";
          } else {
            key += char;
          }
        } else {
          if (char === "[") {
            bracket = true;
            if (key) {
              result2.push(key);
              key = "";
            }
          } else if (char === ".") {
            if (key) {
              result2.push(key);
              key = "";
            }
          } else {
            key += char;
          }
        }
        index++;
      }
      if (key) {
        result2.push(key);
      }
      return result2;
    }
    exports2.toPath = toPath4;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/get.js
var require_get2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/get.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isUnsafeProperty = require_isUnsafeProperty();
    var isDeepKey = require_isDeepKey();
    var toKey = require_toKey();
    var toPath4 = require_toPath();
    function get(object, path218, defaultValue) {
      if (object == null) {
        return defaultValue;
      }
      switch (typeof path218) {
        case "string": {
          if (isUnsafeProperty.isUnsafeProperty(path218)) {
            return defaultValue;
          }
          const result2 = object[path218];
          if (result2 === void 0) {
            if (isDeepKey.isDeepKey(path218)) {
              return get(object, toPath4.toPath(path218), defaultValue);
            } else {
              return defaultValue;
            }
          }
          return result2;
        }
        case "number":
        case "symbol": {
          if (typeof path218 === "number") {
            path218 = toKey.toKey(path218);
          }
          const result2 = object[path218];
          if (result2 === void 0) {
            return defaultValue;
          }
          return result2;
        }
        default: {
          if (Array.isArray(path218)) {
            return getWithPath(object, path218, defaultValue);
          }
          if (Object.is(path218?.valueOf(), -0)) {
            path218 = "-0";
          } else {
            path218 = String(path218);
          }
          if (isUnsafeProperty.isUnsafeProperty(path218)) {
            return defaultValue;
          }
          const result2 = object[path218];
          if (result2 === void 0) {
            return defaultValue;
          }
          return result2;
        }
      }
    }
    function getWithPath(object, path218, defaultValue) {
      if (path218.length === 0) {
        return defaultValue;
      }
      let current = object;
      for (let index = 0; index < path218.length; index++) {
        if (current == null) {
          return defaultValue;
        }
        if (isUnsafeProperty.isUnsafeProperty(path218[index])) {
          return defaultValue;
        }
        current = current[path218[index]];
      }
      if (current === void 0) {
        return defaultValue;
      }
      return current;
    }
    exports2.get = get;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/property.js
var require_property = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/property.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var get = require_get2();
    function property(path218) {
      return function(object) {
        return get.get(object, path218);
      };
    }
    exports2.property = property;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isObject.js
var require_isObject = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isObject.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isObject4(value) {
      return value !== null && (typeof value === "object" || typeof value === "function");
    }
    exports2.isObject = isObject4;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isPrimitive.js
var require_isPrimitive = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isPrimitive.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isPrimitive2(value) {
      return value == null || typeof value !== "object" && typeof value !== "function";
    }
    exports2.isPrimitive = isPrimitive2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/_internal/isEqualsSameValueZero.js
var require_isEqualsSameValueZero = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/_internal/isEqualsSameValueZero.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isEqualsSameValueZero(value, other) {
      return value === other || Number.isNaN(value) && Number.isNaN(other);
    }
    exports2.isEqualsSameValueZero = isEqualsSameValueZero;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isMatchWith.js
var require_isMatchWith = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isMatchWith.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isObject4 = require_isObject();
    var isPrimitive2 = require_isPrimitive();
    var isEqualsSameValueZero = require_isEqualsSameValueZero();
    function isMatchWith(target2, source, compare2) {
      if (typeof compare2 !== "function") {
        return isMatchWith(target2, source, () => void 0);
      }
      return isMatchWithInternal(target2, source, function doesMatch(objValue, srcValue, key, object, source2, stack) {
        const isEqual2 = compare2(objValue, srcValue, key, object, source2, stack);
        if (isEqual2 !== void 0) {
          return Boolean(isEqual2);
        }
        return isMatchWithInternal(objValue, srcValue, doesMatch, stack);
      }, /* @__PURE__ */ new Map());
    }
    function isMatchWithInternal(target2, source, compare2, stack) {
      if (source === target2) {
        return true;
      }
      switch (typeof source) {
        case "object": {
          return isObjectMatch(target2, source, compare2, stack);
        }
        case "function": {
          const sourceKeys = Object.keys(source);
          if (sourceKeys.length > 0) {
            return isMatchWithInternal(target2, { ...source }, compare2, stack);
          }
          return isEqualsSameValueZero.isEqualsSameValueZero(target2, source);
        }
        default: {
          if (!isObject4.isObject(target2)) {
            return isEqualsSameValueZero.isEqualsSameValueZero(target2, source);
          }
          if (typeof source === "string") {
            return source === "";
          }
          return true;
        }
      }
    }
    function isObjectMatch(target2, source, compare2, stack) {
      if (source == null) {
        return true;
      }
      if (Array.isArray(source)) {
        return isArrayMatch(target2, source, compare2, stack);
      }
      if (source instanceof Map) {
        return isMapMatch(target2, source, compare2, stack);
      }
      if (source instanceof Set) {
        return isSetMatch(target2, source, compare2, stack);
      }
      const keys4 = Object.keys(source);
      if (target2 == null || isPrimitive2.isPrimitive(target2)) {
        return keys4.length === 0;
      }
      if (keys4.length === 0) {
        return true;
      }
      if (stack?.has(source)) {
        return stack.get(source) === target2;
      }
      stack?.set(source, target2);
      try {
        for (let i2 = 0; i2 < keys4.length; i2++) {
          const key = keys4[i2];
          if (!isPrimitive2.isPrimitive(target2) && !(key in target2)) {
            return false;
          }
          if (source[key] === void 0 && target2[key] !== void 0) {
            return false;
          }
          if (source[key] === null && target2[key] !== null) {
            return false;
          }
          const isEqual2 = compare2(target2[key], source[key], key, target2, source, stack);
          if (!isEqual2) {
            return false;
          }
        }
        return true;
      } finally {
        stack?.delete(source);
      }
    }
    function isMapMatch(target2, source, compare2, stack) {
      if (source.size === 0) {
        return true;
      }
      if (!(target2 instanceof Map)) {
        return false;
      }
      for (const [key, sourceValue] of source.entries()) {
        const targetValue = target2.get(key);
        const isEqual2 = compare2(targetValue, sourceValue, key, target2, source, stack);
        if (isEqual2 === false) {
          return false;
        }
      }
      return true;
    }
    function isArrayMatch(target2, source, compare2, stack) {
      if (source.length === 0) {
        return true;
      }
      if (!Array.isArray(target2)) {
        return false;
      }
      const countedIndex = /* @__PURE__ */ new Set();
      for (let i2 = 0; i2 < source.length; i2++) {
        const sourceItem = source[i2];
        let found = false;
        for (let j2 = 0; j2 < target2.length; j2++) {
          if (countedIndex.has(j2)) {
            continue;
          }
          const targetItem = target2[j2];
          let matches2 = false;
          const isEqual2 = compare2(targetItem, sourceItem, i2, target2, source, stack);
          if (isEqual2) {
            matches2 = true;
          }
          if (matches2) {
            countedIndex.add(j2);
            found = true;
            break;
          }
        }
        if (!found) {
          return false;
        }
      }
      return true;
    }
    function isSetMatch(target2, source, compare2, stack) {
      if (source.size === 0) {
        return true;
      }
      if (!(target2 instanceof Set)) {
        return false;
      }
      return isArrayMatch([...target2], [...source], compare2, stack);
    }
    exports2.isMatchWith = isMatchWith;
    exports2.isSetMatch = isSetMatch;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isMatch.js
var require_isMatch = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isMatch.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isMatchWith = require_isMatchWith();
    function isMatch(target2, source) {
      return isMatchWith.isMatchWith(target2, source, () => void 0);
    }
    exports2.isMatch = isMatch;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/getSymbols.js
var require_getSymbols = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/getSymbols.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function getSymbols(object) {
      return Object.getOwnPropertySymbols(object).filter((symbol) => Object.prototype.propertyIsEnumerable.call(object, symbol));
    }
    exports2.getSymbols = getSymbols;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/getTag.js
var require_getTag = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/getTag.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function getTag(value) {
      if (value == null) {
        return value === void 0 ? "[object Undefined]" : "[object Null]";
      }
      return Object.prototype.toString.call(value);
    }
    exports2.getTag = getTag;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/tags.js
var require_tags2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/tags.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var regexpTag = "[object RegExp]";
    var stringTag = "[object String]";
    var numberTag = "[object Number]";
    var booleanTag = "[object Boolean]";
    var argumentsTag = "[object Arguments]";
    var symbolTag = "[object Symbol]";
    var dateTag = "[object Date]";
    var mapTag = "[object Map]";
    var setTag = "[object Set]";
    var arrayTag = "[object Array]";
    var functionTag = "[object Function]";
    var arrayBufferTag = "[object ArrayBuffer]";
    var objectTag = "[object Object]";
    var errorTag = "[object Error]";
    var dataViewTag = "[object DataView]";
    var uint8ArrayTag = "[object Uint8Array]";
    var uint8ClampedArrayTag = "[object Uint8ClampedArray]";
    var uint16ArrayTag = "[object Uint16Array]";
    var uint32ArrayTag = "[object Uint32Array]";
    var bigUint64ArrayTag = "[object BigUint64Array]";
    var int8ArrayTag = "[object Int8Array]";
    var int16ArrayTag = "[object Int16Array]";
    var int32ArrayTag = "[object Int32Array]";
    var bigInt64ArrayTag = "[object BigInt64Array]";
    var float32ArrayTag = "[object Float32Array]";
    var float64ArrayTag = "[object Float64Array]";
    exports2.argumentsTag = argumentsTag;
    exports2.arrayBufferTag = arrayBufferTag;
    exports2.arrayTag = arrayTag;
    exports2.bigInt64ArrayTag = bigInt64ArrayTag;
    exports2.bigUint64ArrayTag = bigUint64ArrayTag;
    exports2.booleanTag = booleanTag;
    exports2.dataViewTag = dataViewTag;
    exports2.dateTag = dateTag;
    exports2.errorTag = errorTag;
    exports2.float32ArrayTag = float32ArrayTag;
    exports2.float64ArrayTag = float64ArrayTag;
    exports2.functionTag = functionTag;
    exports2.int16ArrayTag = int16ArrayTag;
    exports2.int32ArrayTag = int32ArrayTag;
    exports2.int8ArrayTag = int8ArrayTag;
    exports2.mapTag = mapTag;
    exports2.numberTag = numberTag;
    exports2.objectTag = objectTag;
    exports2.regexpTag = regexpTag;
    exports2.setTag = setTag;
    exports2.stringTag = stringTag;
    exports2.symbolTag = symbolTag;
    exports2.uint16ArrayTag = uint16ArrayTag;
    exports2.uint32ArrayTag = uint32ArrayTag;
    exports2.uint8ArrayTag = uint8ArrayTag;
    exports2.uint8ClampedArrayTag = uint8ClampedArrayTag;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/_internal/globalThis.js
var require_globalThis = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/_internal/globalThis.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var globalThis_ = typeof globalThis === "object" && globalThis || typeof window === "object" && window || typeof self === "object" && self || typeof global === "object" && global || /* @__PURE__ */ (function() {
      return this;
    })() || Function("return this")();
    exports2.globalThis = globalThis_;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isBuffer.js
var require_isBuffer = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isBuffer.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var globalThis2 = require_globalThis();
    function isBuffer(x) {
      return typeof globalThis2.globalThis.Buffer !== "undefined" && globalThis2.globalThis.Buffer.isBuffer(x);
    }
    exports2.isBuffer = isBuffer;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isTypedArray.js
var require_isTypedArray = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isTypedArray.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isTypedArray(x) {
      return ArrayBuffer.isView(x) && !(x instanceof DataView);
    }
    exports2.isTypedArray = isTypedArray;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/object/cloneDeepWith.js
var require_cloneDeepWith = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/object/cloneDeepWith.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var getSymbols = require_getSymbols();
    var getTag = require_getTag();
    var tags = require_tags2();
    var isBuffer = require_isBuffer();
    var isPrimitive2 = require_isPrimitive();
    var isTypedArray = require_isTypedArray();
    function cloneDeepWith(obj, cloneValue) {
      return cloneDeepWithImpl(obj, void 0, obj, /* @__PURE__ */ new Map(), cloneValue);
    }
    function cloneDeepWithImpl(valueToClone, keyToClone, objectToClone, stack = /* @__PURE__ */ new Map(), cloneValue = void 0) {
      const cloned = cloneValue?.(valueToClone, keyToClone, objectToClone, stack);
      if (cloned !== void 0) {
        return cloned;
      }
      if (isPrimitive2.isPrimitive(valueToClone)) {
        return valueToClone;
      }
      if (stack.has(valueToClone)) {
        return stack.get(valueToClone);
      }
      if (Array.isArray(valueToClone)) {
        const result2 = new Array(valueToClone.length);
        stack.set(valueToClone, result2);
        for (let i2 = 0; i2 < valueToClone.length; i2++) {
          result2[i2] = cloneDeepWithImpl(valueToClone[i2], i2, objectToClone, stack, cloneValue);
        }
        if (Object.hasOwn(valueToClone, "index")) {
          result2.index = valueToClone.index;
        }
        if (Object.hasOwn(valueToClone, "input")) {
          result2.input = valueToClone.input;
        }
        return result2;
      }
      if (valueToClone instanceof Date) {
        return new Date(valueToClone.getTime());
      }
      if (valueToClone instanceof RegExp) {
        const result2 = new RegExp(valueToClone.source, valueToClone.flags);
        result2.lastIndex = valueToClone.lastIndex;
        return result2;
      }
      if (valueToClone instanceof Map) {
        const result2 = /* @__PURE__ */ new Map();
        stack.set(valueToClone, result2);
        for (const [key, value] of valueToClone) {
          result2.set(key, cloneDeepWithImpl(value, key, objectToClone, stack, cloneValue));
        }
        return result2;
      }
      if (valueToClone instanceof Set) {
        const result2 = /* @__PURE__ */ new Set();
        stack.set(valueToClone, result2);
        for (const value of valueToClone) {
          result2.add(cloneDeepWithImpl(value, void 0, objectToClone, stack, cloneValue));
        }
        return result2;
      }
      if (isBuffer.isBuffer(valueToClone)) {
        return valueToClone.subarray();
      }
      if (isTypedArray.isTypedArray(valueToClone)) {
        const result2 = new (Object.getPrototypeOf(valueToClone)).constructor(valueToClone.length);
        stack.set(valueToClone, result2);
        for (let i2 = 0; i2 < valueToClone.length; i2++) {
          result2[i2] = cloneDeepWithImpl(valueToClone[i2], i2, objectToClone, stack, cloneValue);
        }
        return result2;
      }
      if (valueToClone instanceof ArrayBuffer || typeof SharedArrayBuffer !== "undefined" && valueToClone instanceof SharedArrayBuffer) {
        return valueToClone.slice(0);
      }
      if (valueToClone instanceof DataView) {
        const result2 = new DataView(valueToClone.buffer.slice(0), valueToClone.byteOffset, valueToClone.byteLength);
        stack.set(valueToClone, result2);
        copyProperties(result2, valueToClone, objectToClone, stack, cloneValue);
        return result2;
      }
      if (typeof File !== "undefined" && valueToClone instanceof File) {
        const result2 = new File([valueToClone], valueToClone.name, {
          type: valueToClone.type
        });
        stack.set(valueToClone, result2);
        copyProperties(result2, valueToClone, objectToClone, stack, cloneValue);
        return result2;
      }
      if (typeof Blob !== "undefined" && valueToClone instanceof Blob) {
        const result2 = new Blob([valueToClone], { type: valueToClone.type });
        stack.set(valueToClone, result2);
        copyProperties(result2, valueToClone, objectToClone, stack, cloneValue);
        return result2;
      }
      if (valueToClone instanceof Error) {
        const result2 = structuredClone(valueToClone);
        stack.set(valueToClone, result2);
        result2.message = valueToClone.message;
        result2.name = valueToClone.name;
        result2.stack = valueToClone.stack;
        result2.cause = valueToClone.cause;
        result2.constructor = valueToClone.constructor;
        copyProperties(result2, valueToClone, objectToClone, stack, cloneValue);
        return result2;
      }
      if (valueToClone instanceof Boolean) {
        const result2 = new Boolean(valueToClone.valueOf());
        stack.set(valueToClone, result2);
        copyProperties(result2, valueToClone, objectToClone, stack, cloneValue);
        return result2;
      }
      if (valueToClone instanceof Number) {
        const result2 = new Number(valueToClone.valueOf());
        stack.set(valueToClone, result2);
        copyProperties(result2, valueToClone, objectToClone, stack, cloneValue);
        return result2;
      }
      if (valueToClone instanceof String) {
        const result2 = new String(valueToClone.valueOf());
        stack.set(valueToClone, result2);
        copyProperties(result2, valueToClone, objectToClone, stack, cloneValue);
        return result2;
      }
      if (typeof valueToClone === "object" && isCloneableObject(valueToClone)) {
        const result2 = Object.create(Object.getPrototypeOf(valueToClone));
        stack.set(valueToClone, result2);
        copyProperties(result2, valueToClone, objectToClone, stack, cloneValue);
        return result2;
      }
      return valueToClone;
    }
    function copyProperties(target2, source, objectToClone = target2, stack, cloneValue) {
      const keys4 = [...Object.keys(source), ...getSymbols.getSymbols(source)];
      for (let i2 = 0; i2 < keys4.length; i2++) {
        const key = keys4[i2];
        const descriptor = Object.getOwnPropertyDescriptor(target2, key);
        if (descriptor == null || descriptor.writable) {
          target2[key] = cloneDeepWithImpl(source[key], key, objectToClone, stack, cloneValue);
        }
      }
    }
    function isCloneableObject(object) {
      switch (getTag.getTag(object)) {
        case tags.argumentsTag:
        case tags.arrayTag:
        case tags.arrayBufferTag:
        case tags.dataViewTag:
        case tags.booleanTag:
        case tags.dateTag:
        case tags.float32ArrayTag:
        case tags.float64ArrayTag:
        case tags.int8ArrayTag:
        case tags.int16ArrayTag:
        case tags.int32ArrayTag:
        case tags.mapTag:
        case tags.numberTag:
        case tags.objectTag:
        case tags.regexpTag:
        case tags.setTag:
        case tags.stringTag:
        case tags.symbolTag:
        case tags.uint8ArrayTag:
        case tags.uint8ClampedArrayTag:
        case tags.uint16ArrayTag:
        case tags.uint32ArrayTag: {
          return true;
        }
        default: {
          return false;
        }
      }
    }
    exports2.cloneDeepWith = cloneDeepWith;
    exports2.cloneDeepWithImpl = cloneDeepWithImpl;
    exports2.copyProperties = copyProperties;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/object/cloneDeep.js
var require_cloneDeep = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/object/cloneDeep.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var cloneDeepWith = require_cloneDeepWith();
    function cloneDeep(obj) {
      return cloneDeepWith.cloneDeepWithImpl(obj, void 0, obj, /* @__PURE__ */ new Map(), void 0);
    }
    exports2.cloneDeep = cloneDeep;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/matches.js
var require_matches = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/matches.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isMatch = require_isMatch();
    var cloneDeep = require_cloneDeep();
    function matches2(source) {
      source = cloneDeep.cloneDeep(source);
      return (target2) => {
        return isMatch.isMatch(target2, source);
      };
    }
    exports2.matches = matches2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/cloneDeepWith.js
var require_cloneDeepWith2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/cloneDeepWith.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var cloneDeepWith$1 = require_cloneDeepWith();
    var getTag = require_getTag();
    var tags = require_tags2();
    function cloneDeepWith(obj, customizer) {
      return cloneDeepWith$1.cloneDeepWith(obj, (value, key, object, stack) => {
        const cloned = customizer?.(value, key, object, stack);
        if (cloned !== void 0) {
          return cloned;
        }
        if (typeof obj !== "object") {
          return void 0;
        }
        if (getTag.getTag(obj) === tags.objectTag && typeof obj.constructor !== "function") {
          const result2 = {};
          stack.set(obj, result2);
          cloneDeepWith$1.copyProperties(result2, obj, object, stack);
          return result2;
        }
        switch (Object.prototype.toString.call(obj)) {
          case tags.numberTag:
          case tags.stringTag:
          case tags.booleanTag: {
            const result2 = new obj.constructor(obj?.valueOf());
            cloneDeepWith$1.copyProperties(result2, obj);
            return result2;
          }
          case tags.argumentsTag: {
            const result2 = {};
            cloneDeepWith$1.copyProperties(result2, obj);
            result2.length = obj.length;
            result2[Symbol.iterator] = obj[Symbol.iterator];
            return result2;
          }
          default: {
            return void 0;
          }
        }
      });
    }
    exports2.cloneDeepWith = cloneDeepWith;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/cloneDeep.js
var require_cloneDeep2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/cloneDeep.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var cloneDeepWith = require_cloneDeepWith2();
    function cloneDeep(obj) {
      return cloneDeepWith.cloneDeepWith(obj);
    }
    exports2.cloneDeep = cloneDeep;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/isIndex.js
var require_isIndex = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/isIndex.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var IS_UNSIGNED_INTEGER = /^(?:0|[1-9]\d*)$/;
    function isIndex(value, length = Number.MAX_SAFE_INTEGER) {
      switch (typeof value) {
        case "number": {
          return Number.isInteger(value) && value >= 0 && value < length;
        }
        case "symbol": {
          return false;
        }
        case "string": {
          return IS_UNSIGNED_INTEGER.test(value);
        }
      }
    }
    exports2.isIndex = isIndex;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isArguments.js
var require_isArguments = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isArguments.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var getTag = require_getTag();
    function isArguments(value) {
      return value !== null && typeof value === "object" && getTag.getTag(value) === "[object Arguments]";
    }
    exports2.isArguments = isArguments;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/has.js
var require_has = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/has.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isDeepKey = require_isDeepKey();
    var isIndex = require_isIndex();
    var isArguments = require_isArguments();
    var toPath4 = require_toPath();
    function has(object, path218) {
      let resolvedPath;
      if (Array.isArray(path218)) {
        resolvedPath = path218;
      } else if (typeof path218 === "string" && isDeepKey.isDeepKey(path218) && object?.[path218] == null) {
        resolvedPath = toPath4.toPath(path218);
      } else {
        resolvedPath = [path218];
      }
      if (resolvedPath.length === 0) {
        return false;
      }
      let current = object;
      for (let i2 = 0; i2 < resolvedPath.length; i2++) {
        const key = resolvedPath[i2];
        if (current == null || !Object.hasOwn(current, key)) {
          const isSparseIndex = (Array.isArray(current) || isArguments.isArguments(current)) && isIndex.isIndex(key) && key < current.length;
          if (!isSparseIndex) {
            return false;
          }
        }
        current = current[key];
      }
      return true;
    }
    exports2.has = has;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/matchesProperty.js
var require_matchesProperty = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/matchesProperty.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isMatch = require_isMatch();
    var toKey = require_toKey();
    var cloneDeep = require_cloneDeep2();
    var get = require_get2();
    var has = require_has();
    function matchesProperty(property, source) {
      switch (typeof property) {
        case "object": {
          if (Object.is(property?.valueOf(), -0)) {
            property = "-0";
          }
          break;
        }
        case "number": {
          property = toKey.toKey(property);
          break;
        }
      }
      source = cloneDeep.cloneDeep(source);
      return function(target2) {
        const result2 = get.get(target2, property);
        if (result2 === void 0) {
          return has.has(target2, property);
        }
        if (source === void 0) {
          return result2 === void 0;
        }
        return isMatch.isMatch(result2, source);
      };
    }
    exports2.matchesProperty = matchesProperty;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/iteratee.js
var require_iteratee = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/iteratee.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var identity5 = require_identity2();
    var property = require_property();
    var matches2 = require_matches();
    var matchesProperty = require_matchesProperty();
    function iteratee(value) {
      if (value == null) {
        return identity5.identity;
      }
      switch (typeof value) {
        case "function": {
          return value;
        }
        case "object": {
          if (Array.isArray(value) && value.length === 2) {
            return matchesProperty.matchesProperty(value[0], value[1]);
          }
          return matches2.matches(value);
        }
        case "string":
        case "symbol":
        case "number": {
          return property.property(value);
        }
      }
    }
    exports2.iteratee = iteratee;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/countBy.js
var require_countBy = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/countBy.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isArrayLike2 = require_isArrayLike();
    var iteratee = require_iteratee();
    function countBy(collection, iteratee$1) {
      if (collection == null) {
        return {};
      }
      const array = isArrayLike2.isArrayLike(collection) ? Array.from(collection) : Object.values(collection);
      const mapper = iteratee.iteratee(iteratee$1 ?? void 0);
      const result2 = /* @__PURE__ */ Object.create(null);
      for (let i2 = 0; i2 < array.length; i2++) {
        const item = array[i2];
        const key = mapper(item);
        result2[key] = (result2[key] ?? 0) + 1;
      }
      return result2;
    }
    exports2.countBy = countBy;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/difference.js
var require_difference = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/difference.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function difference3(firstArr, secondArr) {
      const secondSet = new Set(secondArr);
      return firstArr.filter((item) => !secondSet.has(item));
    }
    exports2.difference = difference3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isObjectLike.js
var require_isObjectLike = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isObjectLike.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isObjectLike(value) {
      return typeof value === "object" && value !== null;
    }
    exports2.isObjectLike = isObjectLike;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isArrayLikeObject.js
var require_isArrayLikeObject = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isArrayLikeObject.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isArrayLike2 = require_isArrayLike();
    var isObjectLike = require_isObjectLike();
    function isArrayLikeObject(value) {
      return isObjectLike.isObjectLike(value) && isArrayLike2.isArrayLike(value);
    }
    exports2.isArrayLikeObject = isArrayLikeObject;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/difference.js
var require_difference2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/difference.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var difference$1 = require_difference();
    var toArray2 = require_toArray();
    var isArrayLikeObject = require_isArrayLikeObject();
    function difference3(arr, ...values) {
      if (!isArrayLikeObject.isArrayLikeObject(arr)) {
        return [];
      }
      const arr1 = toArray2.toArray(arr);
      const arr2 = [];
      for (let i2 = 0; i2 < values.length; i2++) {
        const value = values[i2];
        if (isArrayLikeObject.isArrayLikeObject(value)) {
          arr2.push(...Array.from(value));
        }
      }
      return difference$1.difference(arr1, arr2);
    }
    exports2.difference = difference3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/last.js
var require_last = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/last.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function last(arr) {
      return arr[arr.length - 1];
    }
    exports2.last = last;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/last.js
var require_last2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/last.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var last$1 = require_last();
    var toArray2 = require_toArray();
    var isArrayLike2 = require_isArrayLike();
    function last(array) {
      if (!isArrayLike2.isArrayLike(array)) {
        return void 0;
      }
      return last$1.last(toArray2.toArray(array));
    }
    exports2.last = last;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/differenceBy.js
var require_differenceBy = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/differenceBy.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function differenceBy(firstArr, secondArr, mapper) {
      const mappedSecondSet = new Set(secondArr.map((item) => mapper(item)));
      return firstArr.filter((item) => {
        return !mappedSecondSet.has(mapper(item));
      });
    }
    exports2.differenceBy = differenceBy;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/flattenArrayLike.js
var require_flattenArrayLike = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/flattenArrayLike.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isArrayLikeObject = require_isArrayLikeObject();
    function flattenArrayLike(values) {
      const result2 = [];
      for (let i2 = 0; i2 < values.length; i2++) {
        const arrayLike = values[i2];
        if (!isArrayLikeObject.isArrayLikeObject(arrayLike)) {
          continue;
        }
        for (let j2 = 0; j2 < arrayLike.length; j2++) {
          result2.push(arrayLike[j2]);
        }
      }
      return result2;
    }
    exports2.flattenArrayLike = flattenArrayLike;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/differenceBy.js
var require_differenceBy2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/differenceBy.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var last = require_last2();
    var difference3 = require_difference();
    var differenceBy$1 = require_differenceBy();
    var flattenArrayLike = require_flattenArrayLike();
    var isArrayLikeObject = require_isArrayLikeObject();
    var iteratee = require_iteratee();
    function differenceBy(arr, ..._values) {
      if (!isArrayLikeObject.isArrayLikeObject(arr)) {
        return [];
      }
      const iteratee$1 = last.last(_values);
      const values = flattenArrayLike.flattenArrayLike(_values);
      if (isArrayLikeObject.isArrayLikeObject(iteratee$1)) {
        return difference3.difference(Array.from(arr), values);
      }
      return differenceBy$1.differenceBy(Array.from(arr), values, iteratee.iteratee(iteratee$1));
    }
    exports2.differenceBy = differenceBy;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/differenceWith.js
var require_differenceWith = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/differenceWith.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function differenceWith(firstArr, secondArr, areItemsEqual) {
      return firstArr.filter((firstItem) => {
        return secondArr.every((secondItem) => {
          return !areItemsEqual(firstItem, secondItem);
        });
      });
    }
    exports2.differenceWith = differenceWith;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/differenceWith.js
var require_differenceWith2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/differenceWith.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var last = require_last2();
    var difference3 = require_difference();
    var differenceWith$1 = require_differenceWith();
    var flattenArrayLike = require_flattenArrayLike();
    var isArrayLikeObject = require_isArrayLikeObject();
    function differenceWith(array, ...values) {
      if (!isArrayLikeObject.isArrayLikeObject(array)) {
        return [];
      }
      const comparator = last.last(values);
      const flattenedValues = flattenArrayLike.flattenArrayLike(values);
      if (typeof comparator === "function") {
        return differenceWith$1.differenceWith(Array.from(array), flattenedValues, comparator);
      }
      return difference3.difference(Array.from(array), flattenedValues);
    }
    exports2.differenceWith = differenceWith;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/drop.js
var require_drop = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/drop.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function drop(arr, itemsCount) {
      itemsCount = Math.max(itemsCount, 0);
      return arr.slice(itemsCount);
    }
    exports2.drop = drop;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isSymbol.js
var require_isSymbol = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isSymbol.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isSymbol(value) {
      return typeof value === "symbol" || value instanceof Symbol;
    }
    exports2.isSymbol = isSymbol;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/toNumber.js
var require_toNumber = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/toNumber.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isSymbol = require_isSymbol();
    function toNumber(value) {
      if (isSymbol.isSymbol(value)) {
        return NaN;
      }
      return Number(value);
    }
    exports2.toNumber = toNumber;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/toFinite.js
var require_toFinite = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/toFinite.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var toNumber = require_toNumber();
    function toFinite(value) {
      if (!value) {
        return value === 0 ? value : 0;
      }
      value = toNumber.toNumber(value);
      if (value === Infinity || value === -Infinity) {
        const sign = value < 0 ? -1 : 1;
        return sign * Number.MAX_VALUE;
      }
      return value === value ? value : 0;
    }
    exports2.toFinite = toFinite;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/toInteger.js
var require_toInteger = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/toInteger.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var toFinite = require_toFinite();
    function toInteger(value) {
      const finite = toFinite.toFinite(value);
      const remainder = finite % 1;
      return remainder ? finite - remainder : finite;
    }
    exports2.toInteger = toInteger;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/drop.js
var require_drop2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/drop.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var drop$1 = require_drop();
    var toArray2 = require_toArray();
    var isArrayLike2 = require_isArrayLike();
    var toInteger = require_toInteger();
    function drop(collection, itemsCount = 1, guard) {
      if (!isArrayLike2.isArrayLike(collection)) {
        return [];
      }
      itemsCount = guard ? 1 : toInteger.toInteger(itemsCount);
      return drop$1.drop(toArray2.toArray(collection), itemsCount);
    }
    exports2.drop = drop;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/dropRight.js
var require_dropRight = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/dropRight.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function dropRight(arr, itemsCount) {
      itemsCount = Math.min(-itemsCount, 0);
      if (itemsCount === 0) {
        return arr.slice();
      }
      return arr.slice(0, itemsCount);
    }
    exports2.dropRight = dropRight;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/dropRight.js
var require_dropRight2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/dropRight.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var dropRight$1 = require_dropRight();
    var toArray2 = require_toArray();
    var isArrayLike2 = require_isArrayLike();
    var toInteger = require_toInteger();
    function dropRight(collection, itemsCount = 1, guard) {
      if (!isArrayLike2.isArrayLike(collection)) {
        return [];
      }
      itemsCount = guard ? 1 : toInteger.toInteger(itemsCount);
      return dropRight$1.dropRight(toArray2.toArray(collection), itemsCount);
    }
    exports2.dropRight = dropRight;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/dropRightWhile.js
var require_dropRightWhile = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/dropRightWhile.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function dropRightWhile(arr, canContinueDropping) {
      for (let i2 = arr.length - 1; i2 >= 0; i2--) {
        if (!canContinueDropping(arr[i2], i2, arr)) {
          return arr.slice(0, i2 + 1);
        }
      }
      return [];
    }
    exports2.dropRightWhile = dropRightWhile;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/dropRightWhile.js
var require_dropRightWhile2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/dropRightWhile.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var dropRightWhile$1 = require_dropRightWhile();
    var identity5 = require_identity2();
    var property = require_property();
    var isArrayLike2 = require_isArrayLike();
    var matches2 = require_matches();
    var matchesProperty = require_matchesProperty();
    function dropRightWhile(arr, predicate = identity5.identity) {
      if (!isArrayLike2.isArrayLike(arr)) {
        return [];
      }
      return dropRightWhileImpl(Array.from(arr), predicate);
    }
    function dropRightWhileImpl(arr, predicate) {
      switch (typeof predicate) {
        case "function": {
          return dropRightWhile$1.dropRightWhile(arr, (item, index, arr2) => Boolean(predicate(item, index, arr2)));
        }
        case "object": {
          if (Array.isArray(predicate) && predicate.length === 2) {
            const key = predicate[0];
            const value = predicate[1];
            return dropRightWhile$1.dropRightWhile(arr, matchesProperty.matchesProperty(key, value));
          } else {
            return dropRightWhile$1.dropRightWhile(arr, matches2.matches(predicate));
          }
        }
        case "symbol":
        case "number":
        case "string": {
          return dropRightWhile$1.dropRightWhile(arr, property.property(predicate));
        }
      }
    }
    exports2.dropRightWhile = dropRightWhile;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/dropWhile.js
var require_dropWhile = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/dropWhile.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function dropWhile(arr, canContinueDropping) {
      const dropEndIndex = arr.findIndex((item, index, arr2) => !canContinueDropping(item, index, arr2));
      if (dropEndIndex === -1) {
        return [];
      }
      return arr.slice(dropEndIndex);
    }
    exports2.dropWhile = dropWhile;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/dropWhile.js
var require_dropWhile2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/dropWhile.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var dropWhile$1 = require_dropWhile();
    var identity5 = require_identity2();
    var toArray2 = require_toArray();
    var property = require_property();
    var isArrayLike2 = require_isArrayLike();
    var matches2 = require_matches();
    var matchesProperty = require_matchesProperty();
    function dropWhile(arr, predicate = identity5.identity) {
      if (!isArrayLike2.isArrayLike(arr)) {
        return [];
      }
      return dropWhileImpl(toArray2.toArray(arr), predicate);
    }
    function dropWhileImpl(arr, predicate) {
      switch (typeof predicate) {
        case "function": {
          return dropWhile$1.dropWhile(arr, (item, index, arr2) => Boolean(predicate(item, index, arr2)));
        }
        case "object": {
          if (Array.isArray(predicate) && predicate.length === 2) {
            const key = predicate[0];
            const value = predicate[1];
            return dropWhile$1.dropWhile(arr, matchesProperty.matchesProperty(key, value));
          } else {
            return dropWhile$1.dropWhile(arr, matches2.matches(predicate));
          }
        }
        case "number":
        case "symbol":
        case "string": {
          return dropWhile$1.dropWhile(arr, property.property(predicate));
        }
      }
    }
    exports2.dropWhile = dropWhile;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/math/range.js
var require_range2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/math/range.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function range(start, end, step2 = 1) {
      if (end == null) {
        end = start;
        start = 0;
      }
      if (!Number.isInteger(step2) || step2 === 0) {
        throw new Error(`The step value must be a non-zero integer.`);
      }
      const length = Math.max(Math.ceil((end - start) / step2), 0);
      const result2 = new Array(length);
      for (let i2 = 0; i2 < length; i2++) {
        result2[i2] = start + i2 * step2;
      }
      return result2;
    }
    exports2.range = range;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/forEach.js
var require_forEach = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/forEach.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var identity5 = require_identity2();
    var range = require_range2();
    var isArrayLike2 = require_isArrayLike();
    function forEach(collection, callback2 = identity5.identity) {
      if (!collection) {
        return collection;
      }
      const keys4 = isArrayLike2.isArrayLike(collection) || Array.isArray(collection) ? range.range(0, collection.length) : Object.keys(collection);
      for (let i2 = 0; i2 < keys4.length; i2++) {
        const key = keys4[i2];
        const value = collection[key];
        const result2 = callback2(value, key, collection);
        if (result2 === false) {
          break;
        }
      }
      return collection;
    }
    exports2.forEach = forEach;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/forEachRight.js
var require_forEachRight = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/forEachRight.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var identity5 = require_identity2();
    var range = require_range2();
    var isArrayLike2 = require_isArrayLike();
    function forEachRight(collection, callback2 = identity5.identity) {
      if (!collection) {
        return collection;
      }
      const keys4 = isArrayLike2.isArrayLike(collection) ? range.range(0, collection.length) : Object.keys(collection);
      for (let i2 = keys4.length - 1; i2 >= 0; i2--) {
        const key = keys4[i2];
        const value = collection[key];
        const result2 = callback2(value, key, collection);
        if (result2 === false) {
          break;
        }
      }
      return collection;
    }
    exports2.forEachRight = forEachRight;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/isIterateeCall.js
var require_isIterateeCall = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/isIterateeCall.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isIndex = require_isIndex();
    var isArrayLike2 = require_isArrayLike();
    var isObject4 = require_isObject();
    var isEqualsSameValueZero = require_isEqualsSameValueZero();
    function isIterateeCall(value, index, object) {
      if (!isObject4.isObject(object)) {
        return false;
      }
      if (typeof index === "number" && isArrayLike2.isArrayLike(object) && isIndex.isIndex(index) && index < object.length || typeof index === "string" && index in object) {
        return isEqualsSameValueZero.isEqualsSameValueZero(object[index], value);
      }
      return false;
    }
    exports2.isIterateeCall = isIterateeCall;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/every.js
var require_every = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/every.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var identity5 = require_identity2();
    var isIterateeCall = require_isIterateeCall();
    var property = require_property();
    var isArrayLike2 = require_isArrayLike();
    var matches2 = require_matches();
    var matchesProperty = require_matchesProperty();
    function every(source, doesMatch, guard) {
      if (!source) {
        return true;
      }
      if (guard && isIterateeCall.isIterateeCall(source, doesMatch, guard)) {
        doesMatch = void 0;
      }
      if (!doesMatch) {
        doesMatch = identity5.identity;
      }
      let predicate;
      switch (typeof doesMatch) {
        case "function": {
          predicate = doesMatch;
          break;
        }
        case "object": {
          if (Array.isArray(doesMatch) && doesMatch.length === 2) {
            const key = doesMatch[0];
            const value = doesMatch[1];
            predicate = matchesProperty.matchesProperty(key, value);
          } else {
            predicate = matches2.matches(doesMatch);
          }
          break;
        }
        case "symbol":
        case "number":
        case "string": {
          predicate = property.property(doesMatch);
        }
      }
      if (!isArrayLike2.isArrayLike(source)) {
        const keys4 = Object.keys(source);
        for (let i2 = 0; i2 < keys4.length; i2++) {
          const key = keys4[i2];
          const value = source[key];
          if (!predicate(value, key, source)) {
            return false;
          }
        }
        return true;
      }
      for (let i2 = 0; i2 < source.length; i2++) {
        if (!predicate(source[i2], i2, source)) {
          return false;
        }
      }
      return true;
    }
    exports2.every = every;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/fill.js
var require_fill = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/fill.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function fill(array, value, start = 0, end = array.length) {
      const length = array.length;
      const finalStart = Math.max(start >= 0 ? start : length + start, 0);
      const finalEnd = Math.min(end >= 0 ? end : length + end, length);
      for (let i2 = finalStart; i2 < finalEnd; i2++) {
        array[i2] = value;
      }
      return array;
    }
    exports2.fill = fill;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isString.js
var require_isString = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isString.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isString(value) {
      return typeof value === "string" || value instanceof String;
    }
    exports2.isString = isString;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/fill.js
var require_fill2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/fill.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var fill$1 = require_fill();
    var isArrayLike2 = require_isArrayLike();
    var isString = require_isString();
    function fill(array, value, start = 0, end = array ? array.length : 0) {
      if (!isArrayLike2.isArrayLike(array)) {
        return [];
      }
      if (isString.isString(array)) {
        return array;
      }
      start = Math.floor(start);
      end = Math.floor(end);
      if (!start) {
        start = 0;
      }
      if (!end) {
        end = 0;
      }
      return fill$1.fill(array, value, start, end);
    }
    exports2.fill = fill;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/filter.js
var require_filter = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/filter.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var identity5 = require_identity2();
    var isArrayLike2 = require_isArrayLike();
    var iteratee = require_iteratee();
    function filter14(source, predicate = identity5.identity) {
      if (!source) {
        return [];
      }
      predicate = iteratee.iteratee(predicate);
      if (!Array.isArray(source)) {
        const result3 = [];
        const keys4 = Object.keys(source);
        const length2 = isArrayLike2.isArrayLike(source) ? source.length : keys4.length;
        for (let i2 = 0; i2 < length2; i2++) {
          const key = keys4[i2];
          const value = source[key];
          if (predicate(value, key, source)) {
            result3.push(value);
          }
        }
        return result3;
      }
      const result2 = [];
      const length = source.length;
      for (let i2 = 0; i2 < length; i2++) {
        const value = source[i2];
        if (predicate(value, i2, source)) {
          result2.push(value);
        }
      }
      return result2;
    }
    exports2.filter = filter14;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/find.js
var require_find = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/find.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var identity5 = require_identity2();
    var iteratee = require_iteratee();
    function find(source, _doesMatch = identity5.identity, fromIndex = 0) {
      if (!source) {
        return void 0;
      }
      if (fromIndex < 0) {
        fromIndex = Math.max(source.length + fromIndex, 0);
      }
      const doesMatch = iteratee.iteratee(_doesMatch);
      if (!Array.isArray(source)) {
        const keys4 = Object.keys(source);
        for (let i2 = fromIndex; i2 < keys4.length; i2++) {
          const key = keys4[i2];
          const value = source[key];
          if (doesMatch(value, key, source)) {
            return value;
          }
        }
        return void 0;
      }
      return source.slice(fromIndex).find(doesMatch);
    }
    exports2.find = find;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/identity.js
var require_identity3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/identity.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function identity5(x) {
      return x;
    }
    exports2.identity = identity5;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/findIndex.js
var require_findIndex = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/findIndex.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var identity5 = require_identity3();
    var property = require_property();
    var matches2 = require_matches();
    var matchesProperty = require_matchesProperty();
    function findIndex(arr, doesMatch = identity5.identity, fromIndex = 0) {
      if (!arr) {
        return -1;
      }
      if (fromIndex < 0) {
        fromIndex = Math.max(arr.length + fromIndex, 0);
      }
      const subArray = Array.from(arr).slice(fromIndex);
      let index = -1;
      switch (typeof doesMatch) {
        case "function": {
          index = subArray.findIndex(doesMatch);
          break;
        }
        case "object": {
          if (Array.isArray(doesMatch) && doesMatch.length === 2) {
            const key = doesMatch[0];
            const value = doesMatch[1];
            index = subArray.findIndex(matchesProperty.matchesProperty(key, value));
          } else {
            index = subArray.findIndex(matches2.matches(doesMatch));
          }
          break;
        }
        case "number":
        case "symbol":
        case "string": {
          index = subArray.findIndex(property.property(doesMatch));
        }
      }
      return index === -1 ? -1 : index + fromIndex;
    }
    exports2.findIndex = findIndex;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/findLast.js
var require_findLast = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/findLast.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var identity5 = require_identity2();
    var iteratee = require_iteratee();
    var toInteger = require_toInteger();
    function findLast(source, _doesMatch = identity5.identity, fromIndex) {
      if (!source) {
        return void 0;
      }
      const length = Array.isArray(source) ? source.length : Object.keys(source).length;
      fromIndex = toInteger.toInteger(fromIndex ?? length - 1);
      if (fromIndex < 0) {
        fromIndex = Math.max(length + fromIndex, 0);
      } else {
        fromIndex = Math.min(fromIndex, length - 1);
      }
      const doesMatch = iteratee.iteratee(_doesMatch);
      if (!Array.isArray(source)) {
        const keys4 = Object.keys(source);
        for (let i2 = fromIndex; i2 >= 0; i2--) {
          const key = keys4[i2];
          const value = source[key];
          if (doesMatch(value, key, source)) {
            return value;
          }
        }
        return void 0;
      }
      return source.slice(0, fromIndex + 1).findLast(doesMatch);
    }
    exports2.findLast = findLast;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/findLastIndex.js
var require_findLastIndex = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/findLastIndex.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var identity5 = require_identity2();
    var toArray2 = require_toArray();
    var property = require_property();
    var matches2 = require_matches();
    var matchesProperty = require_matchesProperty();
    function findLastIndex(arr, doesMatch = identity5.identity, fromIndex = arr ? arr.length - 1 : 0) {
      if (!arr) {
        return -1;
      }
      if (fromIndex < 0) {
        fromIndex = Math.max(arr.length + fromIndex, 0);
      } else {
        fromIndex = Math.min(fromIndex, arr.length - 1);
      }
      const subArray = toArray2.toArray(arr).slice(0, fromIndex + 1);
      switch (typeof doesMatch) {
        case "function": {
          return subArray.findLastIndex(doesMatch);
        }
        case "object": {
          if (Array.isArray(doesMatch) && doesMatch.length === 2) {
            const key = doesMatch[0];
            const value = doesMatch[1];
            return subArray.findLastIndex(matchesProperty.matchesProperty(key, value));
          } else {
            return subArray.findLastIndex(matches2.matches(doesMatch));
          }
        }
        case "number":
        case "symbol":
        case "string": {
          return subArray.findLastIndex(property.property(doesMatch));
        }
      }
    }
    exports2.findLastIndex = findLastIndex;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/head.js
var require_head = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/head.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function head2(arr) {
      return arr[0];
    }
    exports2.head = head2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/head.js
var require_head2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/head.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var head$1 = require_head();
    var toArray2 = require_toArray();
    var isArrayLike2 = require_isArrayLike();
    function head2(arr) {
      if (!isArrayLike2.isArrayLike(arr)) {
        return void 0;
      }
      return head$1.head(toArray2.toArray(arr));
    }
    exports2.head = head2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/flatten.js
var require_flatten2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/flatten.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isArrayLike2 = require_isArrayLike();
    function flatten2(value, depth = 1) {
      const result2 = [];
      const flooredDepth = Math.floor(depth);
      if (!isArrayLike2.isArrayLike(value)) {
        return result2;
      }
      const recursive2 = (arr, currentDepth) => {
        for (let i2 = 0; i2 < arr.length; i2++) {
          const item = arr[i2];
          if (currentDepth < flooredDepth && (Array.isArray(item) || Boolean(item?.[Symbol.isConcatSpreadable]) || item !== null && typeof item === "object" && Object.prototype.toString.call(item) === "[object Arguments]")) {
            if (Array.isArray(item)) {
              recursive2(item, currentDepth + 1);
            } else {
              recursive2(Array.from(item), currentDepth + 1);
            }
          } else {
            result2.push(item);
          }
        }
      };
      recursive2(Array.from(value), 0);
      return result2;
    }
    exports2.flatten = flatten2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/flattenDepth.js
var require_flattenDepth = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/flattenDepth.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var flatten2 = require_flatten2();
    function flattenDepth(array, depth = 1) {
      return flatten2.flatten(array, depth);
    }
    exports2.flattenDepth = flattenDepth;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/map.js
var require_map3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/map.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var identity5 = require_identity2();
    var range = require_range2();
    var isArrayLike2 = require_isArrayLike();
    var iteratee = require_iteratee();
    function map26(collection, _iteratee) {
      if (!collection) {
        return [];
      }
      const keys4 = isArrayLike2.isArrayLike(collection) || Array.isArray(collection) ? range.range(0, collection.length) : Object.keys(collection);
      const iteratee$1 = iteratee.iteratee(_iteratee ?? identity5.identity);
      const result2 = new Array(keys4.length);
      for (let i2 = 0; i2 < keys4.length; i2++) {
        const key = keys4[i2];
        const value = collection[key];
        result2[i2] = iteratee$1(value, key, collection);
      }
      return result2;
    }
    exports2.map = map26;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isNil.js
var require_isNil = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isNil.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isNil(x) {
      return x == null;
    }
    exports2.isNil = isNil;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/flatMap.js
var require_flatMap = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/flatMap.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var flattenDepth = require_flattenDepth();
    var map26 = require_map3();
    var isNil = require_isNil();
    function flatMap(collection, iteratee) {
      if (isNil.isNil(collection)) {
        return [];
      }
      const mapped = isNil.isNil(iteratee) ? map26.map(collection) : map26.map(collection, iteratee);
      return flattenDepth.flattenDepth(mapped, 1);
    }
    exports2.flatMap = flatMap;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/flatMapDepth.js
var require_flatMapDepth = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/flatMapDepth.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var flatten2 = require_flatten2();
    var map26 = require_map3();
    var identity5 = require_identity2();
    var iteratee = require_iteratee();
    function flatMapDepth(collection, iteratee$1 = identity5.identity, depth = 1) {
      if (collection == null) {
        return [];
      }
      const iterateeFn = iteratee.iteratee(iteratee$1);
      const mapped = map26.map(collection, iterateeFn);
      return flatten2.flatten(mapped, depth);
    }
    exports2.flatMapDepth = flatMapDepth;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/flatMapDeep.js
var require_flatMapDeep = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/flatMapDeep.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var flatMapDepth = require_flatMapDepth();
    function flatMapDeep(collection, iteratee) {
      return flatMapDepth.flatMapDepth(collection, iteratee, Infinity);
    }
    exports2.flatMapDeep = flatMapDeep;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/flattenDeep.js
var require_flattenDeep = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/flattenDeep.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var flattenDepth = require_flattenDepth();
    function flattenDeep(value) {
      return flattenDepth.flattenDepth(value, Infinity);
    }
    exports2.flattenDeep = flattenDeep;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/groupBy.js
var require_groupBy = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/groupBy.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function groupBy4(arr, getKeyFromItem) {
      const result2 = {};
      for (let i2 = 0; i2 < arr.length; i2++) {
        const item = arr[i2];
        const key = getKeyFromItem(item, i2, arr);
        if (!Object.hasOwn(result2, key)) {
          result2[key] = [];
        }
        result2[key].push(item);
      }
      return result2;
    }
    exports2.groupBy = groupBy4;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/groupBy.js
var require_groupBy2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/groupBy.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var groupBy$1 = require_groupBy();
    var identity5 = require_identity2();
    var isArrayLike2 = require_isArrayLike();
    var iteratee = require_iteratee();
    function groupBy4(source, _getKeyFromItem) {
      if (source == null) {
        return {};
      }
      const items = isArrayLike2.isArrayLike(source) ? Array.from(source) : Object.values(source);
      const getKeyFromItem = iteratee.iteratee(_getKeyFromItem ?? identity5.identity);
      return groupBy$1.groupBy(items, getKeyFromItem);
    }
    exports2.groupBy = groupBy4;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/includes.js
var require_includes = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/includes.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isString = require_isString();
    var isEqualsSameValueZero = require_isEqualsSameValueZero();
    var toInteger = require_toInteger();
    function includes(source, target2, fromIndex, guard) {
      if (source == null) {
        return false;
      }
      if (guard || !fromIndex) {
        fromIndex = 0;
      } else {
        fromIndex = toInteger.toInteger(fromIndex);
      }
      if (isString.isString(source)) {
        if (fromIndex > source.length || target2 instanceof RegExp) {
          return false;
        }
        if (fromIndex < 0) {
          fromIndex = Math.max(0, source.length + fromIndex);
        }
        return source.includes(target2, fromIndex);
      }
      if (Array.isArray(source)) {
        return source.includes(target2, fromIndex);
      }
      const keys4 = Object.keys(source);
      if (fromIndex < 0) {
        fromIndex = Math.max(0, keys4.length + fromIndex);
      }
      for (let i2 = fromIndex; i2 < keys4.length; i2++) {
        const value = Reflect.get(source, keys4[i2]);
        if (isEqualsSameValueZero.isEqualsSameValueZero(value, target2)) {
          return true;
        }
      }
      return false;
    }
    exports2.includes = includes;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/indexOf.js
var require_indexOf = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/indexOf.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isArrayLike2 = require_isArrayLike();
    function indexOf2(array, searchElement, fromIndex) {
      if (!isArrayLike2.isArrayLike(array)) {
        return -1;
      }
      if (Number.isNaN(searchElement)) {
        fromIndex = fromIndex ?? 0;
        if (fromIndex < 0) {
          fromIndex = Math.max(0, array.length + fromIndex);
        }
        for (let i2 = fromIndex; i2 < array.length; i2++) {
          if (Number.isNaN(array[i2])) {
            return i2;
          }
        }
        return -1;
      }
      return Array.from(array).indexOf(searchElement, fromIndex);
    }
    exports2.indexOf = indexOf2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/initial.js
var require_initial = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/initial.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function initial(arr) {
      return arr.slice(0, -1);
    }
    exports2.initial = initial;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/initial.js
var require_initial2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/initial.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var initial$1 = require_initial();
    var isArrayLike2 = require_isArrayLike();
    function initial(arr) {
      if (!isArrayLike2.isArrayLike(arr)) {
        return [];
      }
      return initial$1.initial(Array.from(arr));
    }
    exports2.initial = initial;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/intersection.js
var require_intersection = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/intersection.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function intersection(firstArr, secondArr) {
      const secondSet = new Set(secondArr);
      return firstArr.filter((item) => secondSet.has(item));
    }
    exports2.intersection = intersection;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/uniq.js
var require_uniq = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/uniq.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function uniq3(arr) {
      return [...new Set(arr)];
    }
    exports2.uniq = uniq3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/intersection.js
var require_intersection2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/intersection.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var intersection$1 = require_intersection();
    var uniq3 = require_uniq();
    var isArrayLikeObject = require_isArrayLikeObject();
    function intersection(...arrays) {
      if (arrays.length === 0) {
        return [];
      }
      if (!isArrayLikeObject.isArrayLikeObject(arrays[0])) {
        return [];
      }
      let result2 = uniq3.uniq(Array.from(arrays[0]));
      for (let i2 = 1; i2 < arrays.length; i2++) {
        const array = arrays[i2];
        if (!isArrayLikeObject.isArrayLikeObject(array)) {
          return [];
        }
        result2 = intersection$1.intersection(result2, Array.from(array));
      }
      return result2;
    }
    exports2.intersection = intersection;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/intersectionBy.js
var require_intersectionBy = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/intersectionBy.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function intersectionBy(firstArr, secondArr, mapper) {
      const result2 = [];
      const mappedSecondSet = new Set(secondArr.map(mapper));
      for (let i2 = 0; i2 < firstArr.length; i2++) {
        const item = firstArr[i2];
        const mappedItem = mapper(item);
        if (mappedSecondSet.has(mappedItem)) {
          result2.push(item);
          mappedSecondSet.delete(mappedItem);
        }
      }
      return result2;
    }
    exports2.intersectionBy = intersectionBy;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/intersectionBy.js
var require_intersectionBy2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/intersectionBy.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var intersectionBy$1 = require_intersectionBy();
    var last = require_last();
    var uniq3 = require_uniq();
    var identity5 = require_identity2();
    var property = require_property();
    var isArrayLikeObject = require_isArrayLikeObject();
    function intersectionBy(array, ...values) {
      if (!isArrayLikeObject.isArrayLikeObject(array)) {
        return [];
      }
      const lastValue = last.last(values);
      if (lastValue === void 0) {
        return Array.from(array);
      }
      let result2 = uniq3.uniq(Array.from(array));
      const count2 = isArrayLikeObject.isArrayLikeObject(lastValue) ? values.length : values.length - 1;
      for (let i2 = 0; i2 < count2; ++i2) {
        const value = values[i2];
        if (!isArrayLikeObject.isArrayLikeObject(value)) {
          return [];
        }
        if (isArrayLikeObject.isArrayLikeObject(lastValue)) {
          result2 = intersectionBy$1.intersectionBy(result2, Array.from(value), identity5.identity);
        } else if (typeof lastValue === "function") {
          result2 = intersectionBy$1.intersectionBy(result2, Array.from(value), (value2) => lastValue(value2));
        } else if (typeof lastValue === "string") {
          result2 = intersectionBy$1.intersectionBy(result2, Array.from(value), property.property(lastValue));
        }
      }
      return result2;
    }
    exports2.intersectionBy = intersectionBy;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/intersectionWith.js
var require_intersectionWith = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/intersectionWith.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function intersectionWith(firstArr, secondArr, areItemsEqual) {
      return firstArr.filter((firstItem) => {
        return secondArr.some((secondItem) => {
          return areItemsEqual(firstItem, secondItem);
        });
      });
    }
    exports2.intersectionWith = intersectionWith;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/uniq.js
var require_uniq2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/uniq.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var uniq$1 = require_uniq();
    var isArrayLike2 = require_isArrayLike();
    function uniq3(arr) {
      if (!isArrayLike2.isArrayLike(arr)) {
        return [];
      }
      return uniq$1.uniq(Array.from(arr));
    }
    exports2.uniq = uniq3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/intersectionWith.js
var require_intersectionWith2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/intersectionWith.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var last = require_last2();
    var intersectionWith$1 = require_intersectionWith();
    var uniq3 = require_uniq2();
    var isEqualsSameValueZero = require_isEqualsSameValueZero();
    function intersectionWith(firstArr, ...otherArrs) {
      if (firstArr == null) {
        return [];
      }
      const _comparator = last.last(otherArrs);
      let comparator = isEqualsSameValueZero.isEqualsSameValueZero;
      let uniq$1 = uniq3.uniq;
      if (typeof _comparator === "function") {
        comparator = _comparator;
        uniq$1 = uniqPreserve0;
        otherArrs.pop();
      }
      let result2 = uniq$1(Array.from(firstArr));
      for (let i2 = 0; i2 < otherArrs.length; ++i2) {
        const otherArr = otherArrs[i2];
        if (otherArr == null) {
          return [];
        }
        result2 = intersectionWith$1.intersectionWith(result2, Array.from(otherArr), comparator);
      }
      return result2;
    }
    function uniqPreserve0(arr) {
      const result2 = [];
      const added = /* @__PURE__ */ new Set();
      for (let i2 = 0; i2 < arr.length; i2++) {
        const item = arr[i2];
        if (added.has(item)) {
          continue;
        }
        result2.push(item);
        added.add(item);
      }
      return result2;
    }
    exports2.intersectionWith = intersectionWith;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isFunction.js
var require_isFunction = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isFunction.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isFunction(value) {
      return typeof value === "function";
    }
    exports2.isFunction = isFunction;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/invokeMap.js
var require_invokeMap = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/invokeMap.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    require_globalThis();
    var isFunction = require_isFunction();
    var isNil = require_isNil();
    var get = require_get2();
    var isArrayLike2 = require_isArrayLike();
    function invokeMap(collection, path218, ...args) {
      if (isNil.isNil(collection)) {
        return [];
      }
      const values = isArrayLike2.isArrayLike(collection) ? Array.from(collection) : Object.values(collection);
      const result2 = [];
      for (let i2 = 0; i2 < values.length; i2++) {
        const value = values[i2];
        if (isFunction.isFunction(path218)) {
          result2.push(path218.apply(value, args));
          continue;
        }
        const method = get.get(value, path218);
        let thisContext = value;
        if (Array.isArray(path218)) {
          const pathExceptLast = path218.slice(0, -1);
          if (pathExceptLast.length > 0) {
            thisContext = get.get(value, pathExceptLast);
          }
        } else if (typeof path218 === "string" && path218.includes(".")) {
          const parts = path218.split(".");
          const pathExceptLast = parts.slice(0, -1).join(".");
          thisContext = get.get(value, pathExceptLast);
        }
        result2.push(method == null ? void 0 : method.apply(thisContext, args));
      }
      return result2;
    }
    exports2.invokeMap = invokeMap;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/join.js
var require_join = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/join.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isArrayLike2 = require_isArrayLike();
    function join3(array, separator) {
      if (!isArrayLike2.isArrayLike(array)) {
        return "";
      }
      return Array.from(array).join(separator);
    }
    exports2.join = join3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/reduce.js
var require_reduce = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/reduce.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var identity5 = require_identity2();
    var range = require_range2();
    var isArrayLike2 = require_isArrayLike();
    function reduce4(collection, iteratee = identity5.identity, accumulator) {
      if (!collection) {
        return accumulator;
      }
      let keys4;
      let startIndex = 0;
      if (isArrayLike2.isArrayLike(collection)) {
        keys4 = range.range(0, collection.length);
        if (accumulator == null && collection.length > 0) {
          accumulator = collection[0];
          startIndex += 1;
        }
      } else {
        keys4 = Object.keys(collection);
        if (accumulator == null) {
          accumulator = collection[keys4[0]];
          startIndex += 1;
        }
      }
      for (let i2 = startIndex; i2 < keys4.length; i2++) {
        const key = keys4[i2];
        const value = collection[key];
        accumulator = iteratee(accumulator, value, key, collection);
      }
      return accumulator;
    }
    exports2.reduce = reduce4;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/keyBy.js
var require_keyBy = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/keyBy.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var reduce4 = require_reduce();
    var identity5 = require_identity2();
    var isArrayLike2 = require_isArrayLike();
    var isObjectLike = require_isObjectLike();
    var iteratee = require_iteratee();
    function keyBy(collection, iteratee$1) {
      if (!isArrayLike2.isArrayLike(collection) && !isObjectLike.isObjectLike(collection)) {
        return {};
      }
      const keyFn = iteratee.iteratee(iteratee$1 ?? identity5.identity);
      return reduce4.reduce(collection, (result2, value) => {
        const key = keyFn(value);
        result2[key] = value;
        return result2;
      }, {});
    }
    exports2.keyBy = keyBy;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/lastIndexOf.js
var require_lastIndexOf = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/lastIndexOf.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isArrayLike2 = require_isArrayLike();
    function lastIndexOf(array, searchElement, fromIndex) {
      if (!isArrayLike2.isArrayLike(array) || array.length === 0) {
        return -1;
      }
      const length = array.length;
      let index = fromIndex ?? length - 1;
      if (fromIndex != null) {
        index = index < 0 ? Math.max(length + index, 0) : Math.min(index, length - 1);
      }
      if (Number.isNaN(searchElement)) {
        for (let i2 = index; i2 >= 0; i2--) {
          if (Number.isNaN(array[i2])) {
            return i2;
          }
        }
      }
      return Array.from(array).lastIndexOf(searchElement, index);
    }
    exports2.lastIndexOf = lastIndexOf;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/nth.js
var require_nth = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/nth.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isArrayLikeObject = require_isArrayLikeObject();
    var toInteger = require_toInteger();
    function nth3(array, n2 = 0) {
      if (!isArrayLikeObject.isArrayLikeObject(array) || array.length === 0) {
        return void 0;
      }
      n2 = toInteger.toInteger(n2);
      if (n2 < 0) {
        n2 += array.length;
      }
      return array[n2];
    }
    exports2.nth = nth3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/compareValues.js
var require_compareValues = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/compareValues.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function getPriority(a2) {
      if (typeof a2 === "symbol") {
        return 1;
      }
      if (a2 === null) {
        return 2;
      }
      if (a2 === void 0) {
        return 3;
      }
      if (a2 !== a2) {
        return 4;
      }
      return 0;
    }
    var compareValues = (a2, b, order) => {
      if (a2 !== b) {
        const aPriority = getPriority(a2);
        const bPriority = getPriority(b);
        if (aPriority === bPriority && aPriority === 0) {
          if (a2 < b) {
            return order === "desc" ? 1 : -1;
          }
          if (a2 > b) {
            return order === "desc" ? -1 : 1;
          }
        }
        return order === "desc" ? bPriority - aPriority : aPriority - bPriority;
      }
      return 0;
    };
    exports2.compareValues = compareValues;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/isKey.js
var require_isKey = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/isKey.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isSymbol = require_isSymbol();
    var regexIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/;
    var regexIsPlainProp = /^\w*$/;
    function isKey(value, object) {
      if (Array.isArray(value)) {
        return false;
      }
      if (typeof value === "number" || typeof value === "boolean" || value == null || isSymbol.isSymbol(value)) {
        return true;
      }
      return typeof value === "string" && (regexIsPlainProp.test(value) || !regexIsDeepProp.test(value)) || object != null && Object.hasOwn(object, value);
    }
    exports2.isKey = isKey;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/orderBy.js
var require_orderBy = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/orderBy.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var compareValues = require_compareValues();
    var isKey = require_isKey();
    var toPath4 = require_toPath();
    function orderBy(collection, criteria, orders, guard) {
      if (collection == null) {
        return [];
      }
      orders = guard ? void 0 : orders;
      if (!Array.isArray(collection)) {
        collection = Object.values(collection);
      }
      if (!Array.isArray(criteria)) {
        criteria = criteria == null ? [null] : [criteria];
      }
      if (criteria.length === 0) {
        criteria = [null];
      }
      if (!Array.isArray(orders)) {
        orders = orders == null ? [] : [orders];
      }
      orders = orders.map((order) => String(order));
      const getValueByNestedPath = (object, path218) => {
        let target2 = object;
        for (let i2 = 0; i2 < path218.length && target2 != null; ++i2) {
          target2 = target2[path218[i2]];
        }
        return target2;
      };
      const getValueByCriterion = (criterion, object) => {
        if (object == null || criterion == null) {
          return object;
        }
        if (typeof criterion === "object" && "key" in criterion) {
          if (Object.hasOwn(object, criterion.key)) {
            return object[criterion.key];
          }
          return getValueByNestedPath(object, criterion.path);
        }
        if (typeof criterion === "function") {
          return criterion(object);
        }
        if (Array.isArray(criterion)) {
          return getValueByNestedPath(object, criterion);
        }
        if (typeof object === "object") {
          return object[criterion];
        }
        return object;
      };
      const preparedCriteria = criteria.map((criterion) => {
        if (Array.isArray(criterion) && criterion.length === 1) {
          criterion = criterion[0];
        }
        if (criterion == null || typeof criterion === "function" || Array.isArray(criterion) || isKey.isKey(criterion)) {
          return criterion;
        }
        return { key: criterion, path: toPath4.toPath(criterion) };
      });
      const preparedCollection = collection.map((item) => ({
        original: item,
        criteria: preparedCriteria.map((criterion) => getValueByCriterion(criterion, item))
      }));
      return preparedCollection.slice().sort((a2, b) => {
        for (let i2 = 0; i2 < preparedCriteria.length; i2++) {
          const comparedResult = compareValues.compareValues(a2.criteria[i2], b.criteria[i2], orders[i2]);
          if (comparedResult !== 0) {
            return comparedResult;
          }
        }
        return 0;
      }).map((item) => item.original);
    }
    exports2.orderBy = orderBy;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/partition.js
var require_partition = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/partition.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var identity5 = require_identity2();
    var isArrayLike2 = require_isArrayLike();
    var iteratee = require_iteratee();
    function partition3(source, predicate = identity5.identity) {
      if (!source) {
        return [[], []];
      }
      const collection = isArrayLike2.isArrayLike(source) ? source : Object.values(source);
      predicate = iteratee.iteratee(predicate);
      const matched = [];
      const unmatched = [];
      for (let i2 = 0; i2 < collection.length; i2++) {
        const value = collection[i2];
        if (predicate(value)) {
          matched.push(value);
        } else {
          unmatched.push(value);
        }
      }
      return [matched, unmatched];
    }
    exports2.partition = partition3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/pull.js
var require_pull = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/pull.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function pull(arr, valuesToRemove) {
      const valuesSet = new Set(valuesToRemove);
      let resultIndex = 0;
      for (let i2 = 0; i2 < arr.length; i2++) {
        if (valuesSet.has(arr[i2])) {
          continue;
        }
        if (!Object.hasOwn(arr, i2)) {
          delete arr[resultIndex++];
          continue;
        }
        arr[resultIndex++] = arr[i2];
      }
      arr.length = resultIndex;
      return arr;
    }
    exports2.pull = pull;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/pull.js
var require_pull2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/pull.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var pull$1 = require_pull();
    function pull(arr, ...valuesToRemove) {
      return pull$1.pull(arr, valuesToRemove);
    }
    exports2.pull = pull;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/pullAll.js
var require_pullAll = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/pullAll.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var pull = require_pull();
    function pullAll(arr, valuesToRemove = []) {
      return pull.pull(arr, Array.from(valuesToRemove));
    }
    exports2.pullAll = pullAll;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/pullAllBy.js
var require_pullAllBy = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/pullAllBy.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var iteratee = require_iteratee();
    function pullAllBy(arr, valuesToRemove, _getValue) {
      const getValue = iteratee.iteratee(_getValue);
      const valuesSet = new Set(Array.from(valuesToRemove).map((x) => getValue(x)));
      let resultIndex = 0;
      for (let i2 = 0; i2 < arr.length; i2++) {
        const value = getValue(arr[i2]);
        if (valuesSet.has(value)) {
          continue;
        }
        if (!Object.hasOwn(arr, i2)) {
          delete arr[resultIndex++];
          continue;
        }
        arr[resultIndex++] = arr[i2];
      }
      arr.length = resultIndex;
      return arr;
    }
    exports2.pullAllBy = pullAllBy;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/copyArray.js
var require_copyArray = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/copyArray.js"(exports2, module2) {
    "use strict";
    function copyArray(source, array) {
      const length = source.length;
      if (array == null) {
        array = Array(length);
      }
      for (let i2 = 0; i2 < length; i2++) {
        array[i2] = source[i2];
      }
      return array;
    }
    module2.exports = copyArray;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/pullAllWith.js
var require_pullAllWith = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/pullAllWith.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var copyArray = require_copyArray();
    var isEqualsSameValueZero = require_isEqualsSameValueZero();
    function pullAllWith(array, values, comparator) {
      if (array?.length == null || values?.length == null) {
        return array;
      }
      if (array === values) {
        values = copyArray(values);
      }
      let resultLength = 0;
      if (comparator == null) {
        comparator = (a2, b) => isEqualsSameValueZero.isEqualsSameValueZero(a2, b);
      }
      const valuesArray = Array.isArray(values) ? values : Array.from(values);
      const hasUndefined = valuesArray.includes(void 0);
      for (let i2 = 0; i2 < array.length; i2++) {
        if (i2 in array) {
          const shouldRemove = valuesArray.some((value) => comparator(array[i2], value));
          if (!shouldRemove) {
            array[resultLength++] = array[i2];
          }
          continue;
        }
        if (!hasUndefined) {
          delete array[resultLength++];
        }
      }
      array.length = resultLength;
      return array;
    }
    exports2.pullAllWith = pullAllWith;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/at.js
var require_at = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/at.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var get = require_get2();
    var isArrayLike2 = require_isArrayLike();
    var isString = require_isString();
    function at(object, ...paths3) {
      if (paths3.length === 0) {
        return [];
      }
      const allPaths = [];
      for (let i2 = 0; i2 < paths3.length; i2++) {
        const path218 = paths3[i2];
        if (!isArrayLike2.isArrayLike(path218) || isString.isString(path218)) {
          allPaths.push(path218);
          continue;
        }
        for (let j2 = 0; j2 < path218.length; j2++) {
          allPaths.push(path218[j2]);
        }
      }
      const result2 = [];
      for (let i2 = 0; i2 < allPaths.length; i2++) {
        result2.push(get.get(object, allPaths[i2]));
      }
      return result2;
    }
    exports2.at = at;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/unset.js
var require_unset = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/unset.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var get = require_get2();
    var isUnsafeProperty = require_isUnsafeProperty();
    var isDeepKey = require_isDeepKey();
    var toKey = require_toKey();
    var toPath4 = require_toPath();
    function unset(obj, path218) {
      if (obj == null) {
        return true;
      }
      switch (typeof path218) {
        case "symbol":
        case "number":
        case "object": {
          if (Array.isArray(path218)) {
            return unsetWithPath(obj, path218);
          }
          if (typeof path218 === "number") {
            path218 = toKey.toKey(path218);
          } else if (typeof path218 === "object") {
            if (Object.is(path218?.valueOf(), -0)) {
              path218 = "-0";
            } else {
              path218 = String(path218);
            }
          }
          if (isUnsafeProperty.isUnsafeProperty(path218)) {
            return false;
          }
          if (obj?.[path218] === void 0) {
            return true;
          }
          try {
            delete obj[path218];
            return true;
          } catch {
            return false;
          }
        }
        case "string": {
          if (obj?.[path218] === void 0 && isDeepKey.isDeepKey(path218)) {
            return unsetWithPath(obj, toPath4.toPath(path218));
          }
          if (isUnsafeProperty.isUnsafeProperty(path218)) {
            return false;
          }
          try {
            delete obj[path218];
            return true;
          } catch {
            return false;
          }
        }
      }
    }
    function unsetWithPath(obj, path218) {
      const parent = path218.length === 1 ? obj : get.get(obj, path218.slice(0, -1));
      const lastKey = path218[path218.length - 1];
      if (parent?.[lastKey] === void 0) {
        return true;
      }
      if (isUnsafeProperty.isUnsafeProperty(lastKey)) {
        return false;
      }
      try {
        delete parent[lastKey];
        return true;
      } catch {
        return false;
      }
    }
    exports2.unset = unset;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isArray.js
var require_isArray = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isArray.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isArray(value) {
      return Array.isArray(value);
    }
    exports2.isArray = isArray;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/pullAt.js
var require_pullAt = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/pullAt.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var flattenDepth = require_flattenDepth();
    var isIndex = require_isIndex();
    var isKey = require_isKey();
    var toKey = require_toKey();
    var at = require_at();
    var unset = require_unset();
    var isArray = require_isArray();
    var toPath4 = require_toPath();
    function pullAt(array, ..._indices) {
      const indices = flattenDepth.flattenDepth(_indices, 1);
      if (!array) {
        return Array(indices.length);
      }
      const result2 = at.at(array, indices);
      const indicesToPull = indices.map((index) => isIndex.isIndex(index, array.length) ? Number(index) : index).sort((a2, b) => b - a2);
      for (const index of new Set(indicesToPull)) {
        if (isIndex.isIndex(index, array.length)) {
          Array.prototype.splice.call(array, index, 1);
          continue;
        }
        if (isKey.isKey(index, array)) {
          delete array[toKey.toKey(index)];
          continue;
        }
        const path218 = isArray.isArray(index) ? index : toPath4.toPath(index);
        unset.unset(array, path218);
      }
      return result2;
    }
    exports2.pullAt = pullAt;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/reduceRight.js
var require_reduceRight = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/reduceRight.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var identity5 = require_identity2();
    var range = require_range2();
    var isArrayLike2 = require_isArrayLike();
    function reduceRight(collection, iteratee = identity5.identity, accumulator) {
      if (!collection) {
        return accumulator;
      }
      let keys4;
      let startIndex;
      if (isArrayLike2.isArrayLike(collection)) {
        keys4 = range.range(0, collection.length).reverse();
        if (accumulator == null && collection.length > 0) {
          accumulator = collection[collection.length - 1];
          startIndex = 1;
        } else {
          startIndex = 0;
        }
      } else {
        keys4 = Object.keys(collection).reverse();
        if (accumulator == null) {
          accumulator = collection[keys4[0]];
          startIndex = 1;
        } else {
          startIndex = 0;
        }
      }
      for (let i2 = startIndex; i2 < keys4.length; i2++) {
        const key = keys4[i2];
        const value = collection[key];
        accumulator = iteratee(accumulator, value, key, collection);
      }
      return accumulator;
    }
    exports2.reduceRight = reduceRight;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/negate.js
var require_negate = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/negate.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function negate(func) {
      if (typeof func !== "function") {
        throw new TypeError("Expected a function");
      }
      return function(...args) {
        return !func.apply(this, args);
      };
    }
    exports2.negate = negate;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/reject.js
var require_reject = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/reject.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var filter14 = require_filter();
    var identity5 = require_identity2();
    var negate = require_negate();
    var iteratee = require_iteratee();
    function reject3(source, predicate = identity5.identity) {
      return filter14.filter(source, negate.negate(iteratee.iteratee(predicate)));
    }
    exports2.reject = reject3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/remove.js
var require_remove3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/remove.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function remove(arr, shouldRemoveElement) {
      const originalArr = arr.slice();
      const removed = [];
      let resultIndex = 0;
      for (let i2 = 0; i2 < arr.length; i2++) {
        if (shouldRemoveElement(arr[i2], i2, originalArr)) {
          removed.push(arr[i2]);
          continue;
        }
        if (!Object.hasOwn(arr, i2)) {
          delete arr[resultIndex++];
          continue;
        }
        arr[resultIndex++] = arr[i2];
      }
      arr.length = resultIndex;
      return removed;
    }
    exports2.remove = remove;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/remove.js
var require_remove4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/remove.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var remove$1 = require_remove3();
    var identity5 = require_identity2();
    var iteratee = require_iteratee();
    function remove(arr, shouldRemoveElement = identity5.identity) {
      return remove$1.remove(arr, iteratee.iteratee(shouldRemoveElement));
    }
    exports2.remove = remove;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/reverse.js
var require_reverse2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/reverse.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function reverse3(array) {
      if (array == null) {
        return array;
      }
      return array.reverse();
    }
    exports2.reverse = reverse3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/sample.js
var require_sample = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/sample.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function sample(arr) {
      const randomIndex = Math.floor(Math.random() * arr.length);
      return arr[randomIndex];
    }
    exports2.sample = sample;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/sample.js
var require_sample2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/sample.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var sample$1 = require_sample();
    var toArray2 = require_toArray();
    var isArrayLike2 = require_isArrayLike();
    function sample(collection) {
      if (collection == null) {
        return void 0;
      }
      if (isArrayLike2.isArrayLike(collection)) {
        return sample$1.sample(toArray2.toArray(collection));
      }
      return sample$1.sample(Object.values(collection));
    }
    exports2.sample = sample;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/math/random.js
var require_random = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/math/random.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function random(minimum, maximum) {
      if (maximum == null) {
        maximum = minimum;
        minimum = 0;
      }
      if (minimum >= maximum) {
        throw new Error("Invalid input: The maximum value must be greater than the minimum value.");
      }
      return Math.random() * (maximum - minimum) + minimum;
    }
    exports2.random = random;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/math/randomInt.js
var require_randomInt = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/math/randomInt.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var random = require_random();
    function randomInt(minimum, maximum) {
      return Math.floor(random.random(minimum, maximum));
    }
    exports2.randomInt = randomInt;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/sampleSize.js
var require_sampleSize = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/sampleSize.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var randomInt = require_randomInt();
    function sampleSize(array, size) {
      if (size > array.length) {
        throw new Error("Size must be less than or equal to the length of array.");
      }
      const result2 = new Array(size);
      const selected = /* @__PURE__ */ new Set();
      for (let step2 = array.length - size, resultIndex = 0; step2 < array.length; step2++, resultIndex++) {
        let index = randomInt.randomInt(0, step2 + 1);
        if (selected.has(index)) {
          index = step2;
        }
        selected.add(index);
        result2[resultIndex] = array[index];
      }
      return result2;
    }
    exports2.sampleSize = sampleSize;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/clamp.js
var require_clamp = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/clamp.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var toNumber = require_toNumber();
    function clamp2(value, bound1, bound2) {
      if (bound2 === void 0) {
        bound2 = bound1;
        bound1 = void 0;
      }
      if (bound2 !== void 0) {
        bound2 = toNumber.toNumber(bound2);
        value = Math.min(value, Number.isNaN(bound2) ? 0 : bound2);
      }
      if (bound1 !== void 0) {
        bound1 = toNumber.toNumber(bound1);
        value = Math.max(value, Number.isNaN(bound1) ? 0 : bound1);
      }
      return value;
    }
    exports2.clamp = clamp2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isMap.js
var require_isMap = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isMap.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isMap(value) {
      return value instanceof Map;
    }
    exports2.isMap = isMap;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isMap.js
var require_isMap2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isMap.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isMap$1 = require_isMap();
    function isMap(value) {
      return isMap$1.isMap(value);
    }
    exports2.isMap = isMap;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/toArray.js
var require_toArray2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/toArray.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isArrayLike2 = require_isArrayLike();
    var isMap = require_isMap2();
    function toArray2(value) {
      if (value == null) {
        return [];
      }
      if (isArrayLike2.isArrayLike(value) || isMap.isMap(value)) {
        return Array.from(value);
      }
      if (typeof value === "object") {
        return Object.values(value);
      }
      return [];
    }
    exports2.toArray = toArray2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/sampleSize.js
var require_sampleSize2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/sampleSize.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var sampleSize$1 = require_sampleSize();
    var isIterateeCall = require_isIterateeCall();
    var clamp2 = require_clamp();
    var toArray2 = require_toArray2();
    var toInteger = require_toInteger();
    function sampleSize(collection, size, guard) {
      const arrayCollection = toArray2.toArray(collection);
      if (guard ? isIterateeCall.isIterateeCall(collection, size, guard) : size === void 0) {
        size = 1;
      } else {
        size = clamp2.clamp(toInteger.toInteger(size), 0, arrayCollection.length);
      }
      return sampleSize$1.sampleSize(arrayCollection, size);
    }
    exports2.sampleSize = sampleSize;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/shuffle.js
var require_shuffle = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/shuffle.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function shuffle(arr) {
      const result2 = arr.slice();
      for (let i2 = result2.length - 1; i2 >= 1; i2--) {
        const j2 = Math.floor(Math.random() * (i2 + 1));
        [result2[i2], result2[j2]] = [result2[j2], result2[i2]];
      }
      return result2;
    }
    exports2.shuffle = shuffle;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/values.js
var require_values = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/values.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function values(object) {
      if (object == null) {
        return [];
      }
      return Object.values(object);
    }
    exports2.values = values;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isNil.js
var require_isNil2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isNil.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isNil(x) {
      return x == null;
    }
    exports2.isNil = isNil;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/shuffle.js
var require_shuffle2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/shuffle.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var shuffle$1 = require_shuffle();
    var values = require_values();
    var isArray = require_isArray();
    var isArrayLike2 = require_isArrayLike();
    var isNil = require_isNil2();
    var isObjectLike = require_isObjectLike();
    function shuffle(collection) {
      if (isNil.isNil(collection)) {
        return [];
      }
      if (isArray.isArray(collection)) {
        return shuffle$1.shuffle(collection);
      }
      if (isArrayLike2.isArrayLike(collection)) {
        return shuffle$1.shuffle(Array.from(collection));
      }
      if (isObjectLike.isObjectLike(collection)) {
        return shuffle$1.shuffle(values.values(collection));
      }
      return [];
    }
    exports2.shuffle = shuffle;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/size.js
var require_size = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/size.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isNil = require_isNil();
    function size(target2) {
      if (isNil.isNil(target2)) {
        return 0;
      }
      if (target2 instanceof Map || target2 instanceof Set) {
        return target2.size;
      }
      return Object.keys(target2).length;
    }
    exports2.size = size;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/slice.js
var require_slice = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/slice.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isIterateeCall = require_isIterateeCall();
    var isArrayLike2 = require_isArrayLike();
    var toInteger = require_toInteger();
    function slice3(array, start, end) {
      if (!isArrayLike2.isArrayLike(array)) {
        return [];
      }
      const length = array.length;
      if (end === void 0) {
        end = length;
      } else if (typeof end !== "number" && isIterateeCall.isIterateeCall(array, start, end)) {
        start = 0;
        end = length;
      }
      start = toInteger.toInteger(start);
      end = toInteger.toInteger(end);
      if (start < 0) {
        start = Math.max(length + start, 0);
      } else {
        start = Math.min(start, length);
      }
      if (end < 0) {
        end = Math.max(length + end, 0);
      } else {
        end = Math.min(end, length);
      }
      const resultLength = Math.max(end - start, 0);
      const result2 = new Array(resultLength);
      for (let i2 = 0; i2 < resultLength; ++i2) {
        result2[i2] = array[start + i2];
      }
      return result2;
    }
    exports2.slice = slice3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/some.js
var require_some = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/some.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var identity5 = require_identity2();
    var property = require_property();
    var matches2 = require_matches();
    var matchesProperty = require_matchesProperty();
    function some(source, predicate, guard) {
      if (!source) {
        return false;
      }
      if (guard != null) {
        predicate = void 0;
      }
      if (predicate == null) {
        predicate = identity5.identity;
      }
      const values = Array.isArray(source) ? source : Object.values(source);
      switch (typeof predicate) {
        case "function": {
          if (!Array.isArray(source)) {
            const keys4 = Object.keys(source);
            for (let i2 = 0; i2 < keys4.length; i2++) {
              const key = keys4[i2];
              const value = source[key];
              if (predicate(value, key, source)) {
                return true;
              }
            }
            return false;
          }
          for (let i2 = 0; i2 < source.length; i2++) {
            if (predicate(source[i2], i2, source)) {
              return true;
            }
          }
          return false;
        }
        case "object": {
          if (Array.isArray(predicate) && predicate.length === 2) {
            const key = predicate[0];
            const value = predicate[1];
            const matchFunc = matchesProperty.matchesProperty(key, value);
            if (Array.isArray(source)) {
              for (let i2 = 0; i2 < source.length; i2++) {
                if (matchFunc(source[i2])) {
                  return true;
                }
              }
              return false;
            }
            return values.some(matchFunc);
          } else {
            const matchFunc = matches2.matches(predicate);
            if (Array.isArray(source)) {
              for (let i2 = 0; i2 < source.length; i2++) {
                if (matchFunc(source[i2])) {
                  return true;
                }
              }
              return false;
            }
            return values.some(matchFunc);
          }
        }
        case "number":
        case "symbol":
        case "string": {
          const propFunc = property.property(predicate);
          if (Array.isArray(source)) {
            for (let i2 = 0; i2 < source.length; i2++) {
              if (propFunc(source[i2])) {
                return true;
              }
            }
            return false;
          }
          return values.some(propFunc);
        }
      }
    }
    exports2.some = some;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/sortBy.js
var require_sortBy = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/sortBy.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var orderBy = require_orderBy();
    var flatten2 = require_flatten();
    var isIterateeCall = require_isIterateeCall();
    function sortBy3(collection, ...criteria) {
      const length = criteria.length;
      if (length > 1 && isIterateeCall.isIterateeCall(collection, criteria[0], criteria[1])) {
        criteria = [];
      } else if (length > 2 && isIterateeCall.isIterateeCall(criteria[0], criteria[1], criteria[2])) {
        criteria = [criteria[0]];
      }
      return orderBy.orderBy(collection, flatten2.flatten(criteria), ["asc"]);
    }
    exports2.sortBy = sortBy3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isNull.js
var require_isNull = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isNull.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isNull2(x) {
      return x === null;
    }
    exports2.isNull = isNull2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isUndefined.js
var require_isUndefined = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isUndefined.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isUndefined(x) {
      return x === void 0;
    }
    exports2.isUndefined = isUndefined;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isNaN.js
var require_isNaN = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isNaN.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isNaN2(value) {
      return Number.isNaN(value);
    }
    exports2.isNaN = isNaN2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/sortedIndexBy.js
var require_sortedIndexBy = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/sortedIndexBy.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isNull2 = require_isNull();
    var isUndefined = require_isUndefined();
    var identity5 = require_identity3();
    var isNaN2 = require_isNaN();
    var isNil = require_isNil2();
    var isSymbol = require_isSymbol();
    var iteratee = require_iteratee();
    var MAX_ARRAY_LENGTH = 4294967295;
    var MAX_ARRAY_INDEX = MAX_ARRAY_LENGTH - 1;
    function sortedIndexBy(array, value, iteratee$1 = identity5.identity, retHighest) {
      if (isNil.isNil(array) || array.length === 0) {
        return 0;
      }
      let low = 0;
      let high = array.length;
      const iterateeFunction = iteratee.iteratee(iteratee$1);
      const transformedValue = iterateeFunction(value);
      const valIsNaN = isNaN2.isNaN(transformedValue);
      const valIsNull = isNull2.isNull(transformedValue);
      const valIsSymbol = isSymbol.isSymbol(transformedValue);
      const valIsUndefined = isUndefined.isUndefined(transformedValue);
      while (low < high) {
        let setLow;
        const mid = Math.floor((low + high) / 2);
        const computed = iterateeFunction(array[mid]);
        const othIsDefined = !isUndefined.isUndefined(computed);
        const othIsNull = isNull2.isNull(computed);
        const othIsReflexive = !isNaN2.isNaN(computed);
        const othIsSymbol = isSymbol.isSymbol(computed);
        if (valIsNaN) {
          setLow = retHighest || othIsReflexive;
        } else if (valIsUndefined) {
          setLow = othIsReflexive && (retHighest || othIsDefined);
        } else if (valIsNull) {
          setLow = othIsReflexive && othIsDefined && (retHighest || !othIsNull);
        } else if (valIsSymbol) {
          setLow = othIsReflexive && othIsDefined && !othIsNull && (retHighest || !othIsSymbol);
        } else if (othIsNull || othIsSymbol) {
          setLow = false;
        } else {
          setLow = retHighest ? computed <= transformedValue : computed < transformedValue;
        }
        if (setLow) {
          low = mid + 1;
        } else {
          high = mid;
        }
      }
      return Math.min(high, MAX_ARRAY_INDEX);
    }
    exports2.sortedIndexBy = sortedIndexBy;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isSymbol.js
var require_isSymbol2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isSymbol.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isSymbol(value) {
      return typeof value === "symbol";
    }
    exports2.isSymbol = isSymbol;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isNumber.js
var require_isNumber = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isNumber.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isNumber(value) {
      return typeof value === "number" || value instanceof Number;
    }
    exports2.isNumber = isNumber;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/sortedIndex.js
var require_sortedIndex = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/sortedIndex.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var sortedIndexBy = require_sortedIndexBy();
    var isNil = require_isNil();
    var isNull2 = require_isNull();
    var isSymbol = require_isSymbol2();
    var isNumber = require_isNumber();
    var MAX_ARRAY_LENGTH = 4294967295;
    var HALF_MAX_ARRAY_LENGTH = MAX_ARRAY_LENGTH >>> 1;
    function sortedIndex(array, value) {
      if (isNil.isNil(array)) {
        return 0;
      }
      let low = 0;
      let high = array.length;
      if (isNumber.isNumber(value) && value === value && high <= HALF_MAX_ARRAY_LENGTH) {
        while (low < high) {
          const mid = low + high >>> 1;
          const compute = array[mid];
          if (!isNull2.isNull(compute) && !isSymbol.isSymbol(compute) && compute < value) {
            low = mid + 1;
          } else {
            high = mid;
          }
        }
        return high;
      }
      return sortedIndexBy.sortedIndexBy(array, value, (value2) => value2);
    }
    exports2.sortedIndex = sortedIndex;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/sortedIndexOf.js
var require_sortedIndexOf = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/sortedIndexOf.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var sortedIndex = require_sortedIndex();
    var isEqualsSameValueZero = require_isEqualsSameValueZero();
    function sortedIndexOf(array, value) {
      if (!array?.length) {
        return -1;
      }
      const index = sortedIndex.sortedIndex(array, value);
      if (index < array.length && isEqualsSameValueZero.isEqualsSameValueZero(array[index], value)) {
        return index;
      }
      return -1;
    }
    exports2.sortedIndexOf = sortedIndexOf;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/sortedLastIndexBy.js
var require_sortedLastIndexBy = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/sortedLastIndexBy.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var sortedIndexBy = require_sortedIndexBy();
    function sortedLastIndexBy(array, value, iteratee) {
      return sortedIndexBy.sortedIndexBy(array, value, iteratee, true);
    }
    exports2.sortedLastIndexBy = sortedLastIndexBy;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/sortedLastIndex.js
var require_sortedLastIndex = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/sortedLastIndex.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var sortedLastIndexBy = require_sortedLastIndexBy();
    var isNil = require_isNil();
    var isNull2 = require_isNull();
    var isSymbol = require_isSymbol2();
    var isNumber = require_isNumber();
    var MAX_ARRAY_LENGTH = 4294967295;
    var HALF_MAX_ARRAY_LENGTH = MAX_ARRAY_LENGTH >>> 1;
    function sortedLastIndex(array, value) {
      if (isNil.isNil(array)) {
        return 0;
      }
      let high = array.length;
      if (!isNumber.isNumber(value) || Number.isNaN(value) || high > HALF_MAX_ARRAY_LENGTH) {
        return sortedLastIndexBy.sortedLastIndexBy(array, value, (value2) => value2);
      }
      let low = 0;
      while (low < high) {
        const mid = low + high >>> 1;
        const compute = array[mid];
        if (!isNull2.isNull(compute) && !isSymbol.isSymbol(compute) && compute <= value) {
          low = mid + 1;
        } else {
          high = mid;
        }
      }
      return high;
    }
    exports2.sortedLastIndex = sortedLastIndex;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/sortedLastIndexOf.js
var require_sortedLastIndexOf = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/sortedLastIndexOf.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var sortedLastIndex = require_sortedLastIndex();
    var isEqualsSameValueZero = require_isEqualsSameValueZero();
    function sortedLastIndexOf(array, value) {
      if (!array?.length) {
        return -1;
      }
      const index = sortedLastIndex.sortedLastIndex(array, value) - 1;
      if (index >= 0 && isEqualsSameValueZero.isEqualsSameValueZero(array[index], value)) {
        return index;
      }
      return -1;
    }
    exports2.sortedLastIndexOf = sortedLastIndexOf;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/tail.js
var require_tail = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/tail.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function tail2(arr) {
      return arr.slice(1);
    }
    exports2.tail = tail2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/tail.js
var require_tail2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/tail.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var tail$1 = require_tail();
    var toArray2 = require_toArray();
    var isArrayLike2 = require_isArrayLike();
    function tail2(arr) {
      if (!isArrayLike2.isArrayLike(arr)) {
        return [];
      }
      return tail$1.tail(toArray2.toArray(arr));
    }
    exports2.tail = tail2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/take.js
var require_take = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/take.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var toInteger = require_toInteger();
    function take10(arr, count2, guard) {
      count2 = guard || count2 === void 0 ? 1 : toInteger.toInteger(count2);
      return arr.slice(0, count2);
    }
    exports2.take = take10;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/take.js
var require_take2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/take.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var take$1 = require_take();
    var toArray2 = require_toArray();
    var isArrayLike2 = require_isArrayLike();
    var toInteger = require_toInteger();
    function take10(arr, count2 = 1, guard) {
      count2 = guard ? 1 : toInteger.toInteger(count2);
      if (count2 < 1 || !isArrayLike2.isArrayLike(arr)) {
        return [];
      }
      return take$1.take(toArray2.toArray(arr), count2);
    }
    exports2.take = take10;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/takeRight.js
var require_takeRight = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/takeRight.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var toInteger = require_toInteger();
    function takeRight(arr, count2, guard) {
      count2 = guard || count2 === void 0 ? 1 : toInteger.toInteger(count2);
      if (count2 <= 0 || arr.length === 0) {
        return [];
      }
      return arr.slice(-count2);
    }
    exports2.takeRight = takeRight;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/takeRight.js
var require_takeRight2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/takeRight.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var takeRight$1 = require_takeRight();
    var toArray2 = require_toArray();
    var isArrayLike2 = require_isArrayLike();
    var toInteger = require_toInteger();
    function takeRight(arr, count2 = 1, guard) {
      count2 = guard ? 1 : toInteger.toInteger(count2);
      if (count2 <= 0 || !isArrayLike2.isArrayLike(arr)) {
        return [];
      }
      return takeRight$1.takeRight(toArray2.toArray(arr), count2);
    }
    exports2.takeRight = takeRight;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/function/negate.js
var require_negate2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/function/negate.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function negate(func) {
      return ((...args) => !func(...args));
    }
    exports2.negate = negate;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/takeRightWhile.js
var require_takeRightWhile = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/takeRightWhile.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var identity5 = require_identity2();
    var negate = require_negate2();
    var toArray2 = require_toArray();
    var isArrayLikeObject = require_isArrayLikeObject();
    var iteratee = require_iteratee();
    function takeRightWhile(_array, predicate) {
      if (!isArrayLikeObject.isArrayLikeObject(_array)) {
        return [];
      }
      const array = toArray2.toArray(_array);
      const index = array.findLastIndex(negate.negate(iteratee.iteratee(predicate ?? identity5.identity)));
      return array.slice(index + 1);
    }
    exports2.takeRightWhile = takeRightWhile;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/takeWhile.js
var require_takeWhile = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/takeWhile.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var toArray2 = require_toArray();
    var identity5 = require_identity3();
    var negate = require_negate();
    var isArrayLikeObject = require_isArrayLikeObject();
    var iteratee = require_iteratee();
    function takeWhile2(array, predicate) {
      if (!isArrayLikeObject.isArrayLikeObject(array)) {
        return [];
      }
      const _array = toArray2.toArray(array);
      const index = _array.findIndex(negate.negate(iteratee.iteratee(predicate ?? identity5.identity)));
      return index === -1 ? _array : _array.slice(0, index);
    }
    exports2.takeWhile = takeWhile2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/union.js
var require_union = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/union.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var flatMapDepth = require_flatMapDepth();
    var uniq3 = require_uniq();
    var isArrayLikeObject = require_isArrayLikeObject();
    function union2(...arrays) {
      const validArrays = arrays.filter(isArrayLikeObject.isArrayLikeObject);
      const flattened = flatMapDepth.flatMapDepth(validArrays, (v) => Array.from(v), 1);
      return uniq3.uniq(flattened);
    }
    exports2.union = union2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/uniqBy.js
var require_uniqBy = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/uniqBy.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function uniqBy2(arr, mapper) {
      const map26 = /* @__PURE__ */ new Map();
      for (let i2 = 0; i2 < arr.length; i2++) {
        const item = arr[i2];
        const key = mapper(item, i2, arr);
        if (!map26.has(key)) {
          map26.set(key, item);
        }
      }
      return Array.from(map26.values());
    }
    exports2.uniqBy = uniqBy2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/function/ary.js
var require_ary = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/function/ary.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function ary(func, n2) {
      return function(...args) {
        return func.apply(this, args.slice(0, n2));
      };
    }
    exports2.ary = ary;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/unionBy.js
var require_unionBy = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/unionBy.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var last = require_last();
    var uniq3 = require_uniq();
    var uniqBy2 = require_uniqBy();
    var ary = require_ary();
    var flattenArrayLike = require_flattenArrayLike();
    var isArrayLikeObject = require_isArrayLikeObject();
    var iteratee = require_iteratee();
    function unionBy(...values) {
      const lastValue = last.last(values);
      const flattened = flattenArrayLike.flattenArrayLike(values);
      if (isArrayLikeObject.isArrayLikeObject(lastValue) || lastValue == null) {
        return uniq3.uniq(flattened);
      }
      return uniqBy2.uniqBy(flattened, ary.ary(iteratee.iteratee(lastValue), 1));
    }
    exports2.unionBy = unionBy;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/uniqWith.js
var require_uniqWith = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/uniqWith.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function uniqWith(arr, areItemsEqual) {
      const result2 = [];
      for (let i2 = 0; i2 < arr.length; i2++) {
        const item = arr[i2];
        const isUniq = result2.every((v) => !areItemsEqual(v, item));
        if (isUniq) {
          result2.push(item);
        }
      }
      return result2;
    }
    exports2.uniqWith = uniqWith;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/unionWith.js
var require_unionWith = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/unionWith.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var last = require_last();
    var uniq3 = require_uniq();
    var uniqWith = require_uniqWith();
    var flattenArrayLike = require_flattenArrayLike();
    var isArrayLikeObject = require_isArrayLikeObject();
    function unionWith(...values) {
      const lastValue = last.last(values);
      const flattened = flattenArrayLike.flattenArrayLike(values);
      if (isArrayLikeObject.isArrayLikeObject(lastValue) || lastValue == null) {
        return uniq3.uniq(flattened);
      }
      return uniqWith.uniqWith(flattened, lastValue);
    }
    exports2.unionWith = unionWith;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/uniqBy.js
var require_uniqBy2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/uniqBy.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var uniqBy$1 = require_uniqBy();
    var ary = require_ary();
    var identity5 = require_identity2();
    var isArrayLikeObject = require_isArrayLikeObject();
    var iteratee = require_iteratee();
    function uniqBy2(array, iteratee$1 = identity5.identity) {
      if (!isArrayLikeObject.isArrayLikeObject(array)) {
        return [];
      }
      return uniqBy$1.uniqBy(Array.from(array), ary.ary(iteratee.iteratee(iteratee$1), 1));
    }
    exports2.uniqBy = uniqBy2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/uniqWith.js
var require_uniqWith2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/uniqWith.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var uniqWith$1 = require_uniqWith();
    var uniq3 = require_uniq2();
    var isArrayLike2 = require_isArrayLike();
    function uniqWith(arr, comparator) {
      if (!isArrayLike2.isArrayLike(arr)) {
        return [];
      }
      return typeof comparator === "function" ? uniqWith$1.uniqWith(Array.from(arr), comparator) : uniq3.uniq(Array.from(arr));
    }
    exports2.uniqWith = uniqWith;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/unzip.js
var require_unzip = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/unzip.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function unzip(zipped) {
      let maxLen = 0;
      for (let i2 = 0; i2 < zipped.length; i2++) {
        if (zipped[i2].length > maxLen) {
          maxLen = zipped[i2].length;
        }
      }
      const result2 = new Array(maxLen);
      for (let i2 = 0; i2 < maxLen; i2++) {
        result2[i2] = new Array(zipped.length);
        for (let j2 = 0; j2 < zipped.length; j2++) {
          result2[i2][j2] = zipped[j2][i2];
        }
      }
      return result2;
    }
    exports2.unzip = unzip;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/unzip.js
var require_unzip2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/unzip.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var unzip$1 = require_unzip();
    var isArray = require_isArray();
    var isArrayLikeObject = require_isArrayLikeObject();
    function unzip(array) {
      if (!isArrayLikeObject.isArrayLikeObject(array) || !array.length) {
        return [];
      }
      array = isArray.isArray(array) ? array : Array.from(array);
      array = array.filter((item) => isArrayLikeObject.isArrayLikeObject(item));
      return unzip$1.unzip(array);
    }
    exports2.unzip = unzip;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/unzipWith.js
var require_unzipWith = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/unzipWith.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var unzip = require_unzip();
    var isArray = require_isArray();
    var isArrayLikeObject = require_isArrayLikeObject();
    function unzipWith(array, iteratee) {
      if (!isArrayLikeObject.isArrayLikeObject(array) || !array.length) {
        return [];
      }
      const unzipped = isArray.isArray(array) ? unzip.unzip(array) : unzip.unzip(Array.from(array, (value) => Array.from(value)));
      if (!iteratee) {
        return unzipped;
      }
      const result2 = new Array(unzipped.length);
      for (let i2 = 0; i2 < unzipped.length; i2++) {
        const value = unzipped[i2];
        result2[i2] = iteratee(...value);
      }
      return result2;
    }
    exports2.unzipWith = unzipWith;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/without.js
var require_without = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/without.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var difference3 = require_difference();
    function without2(array, ...values) {
      return difference3.difference(array, values);
    }
    exports2.without = without2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/without.js
var require_without2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/without.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var without$1 = require_without();
    var isArrayLikeObject = require_isArrayLikeObject();
    function without2(array, ...values) {
      if (!isArrayLikeObject.isArrayLikeObject(array)) {
        return [];
      }
      return without$1.without(Array.from(array), ...values);
    }
    exports2.without = without2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/xor.js
var require_xor = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/xor.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isArrayLikeObject = require_isArrayLikeObject();
    var toArray2 = require_toArray2();
    function xor(...arrays) {
      const itemCounts = /* @__PURE__ */ new Map();
      for (let i2 = 0; i2 < arrays.length; i2++) {
        const array = arrays[i2];
        if (!isArrayLikeObject.isArrayLikeObject(array)) {
          continue;
        }
        const itemSet = new Set(toArray2.toArray(array));
        for (const item of itemSet) {
          if (!itemCounts.has(item)) {
            itemCounts.set(item, 1);
          } else {
            itemCounts.set(item, itemCounts.get(item) + 1);
          }
        }
      }
      const result2 = [];
      for (const [item, count2] of itemCounts) {
        if (count2 === 1) {
          result2.push(item);
        }
      }
      return result2;
    }
    exports2.xor = xor;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/windowed.js
var require_windowed = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/windowed.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function windowed(arr, size, step2 = 1, { partialWindows = false } = {}) {
      if (size <= 0 || !Number.isInteger(size)) {
        throw new Error("Size must be a positive integer.");
      }
      if (step2 <= 0 || !Number.isInteger(step2)) {
        throw new Error("Step must be a positive integer.");
      }
      const result2 = [];
      const end = partialWindows ? arr.length : arr.length - size + 1;
      for (let i2 = 0; i2 < end; i2 += step2) {
        result2.push(arr.slice(i2, i2 + size));
      }
      return result2;
    }
    exports2.windowed = windowed;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/xorBy.js
var require_xorBy = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/xorBy.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var differenceBy = require_differenceBy2();
    var intersectionBy = require_intersectionBy2();
    var last = require_last2();
    var unionBy = require_unionBy();
    var windowed = require_windowed();
    var identity5 = require_identity2();
    var isArrayLikeObject = require_isArrayLikeObject();
    var iteratee = require_iteratee();
    function xorBy(...values) {
      const lastValue = last.last(values);
      let mapper = identity5.identity;
      if (!isArrayLikeObject.isArrayLikeObject(lastValue) && lastValue != null) {
        mapper = iteratee.iteratee(lastValue);
        values = values.slice(0, -1);
      }
      const arrays = values.filter(isArrayLikeObject.isArrayLikeObject);
      const union2 = unionBy.unionBy(...arrays, mapper);
      const intersections = windowed.windowed(arrays, 2).map(([arr1, arr2]) => intersectionBy.intersectionBy(arr1, arr2, mapper));
      return differenceBy.differenceBy(union2, unionBy.unionBy(...intersections, mapper), mapper);
    }
    exports2.xorBy = xorBy;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/xorWith.js
var require_xorWith = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/xorWith.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var differenceWith = require_differenceWith2();
    var intersectionWith = require_intersectionWith2();
    var last = require_last2();
    var unionWith = require_unionWith();
    var windowed = require_windowed();
    var isArrayLikeObject = require_isArrayLikeObject();
    function xorWith(...values) {
      const lastValue = last.last(values);
      let comparator = (a2, b) => a2 === b;
      if (typeof lastValue === "function") {
        comparator = lastValue;
        values = values.slice(0, -1);
      }
      const arrays = values.filter(isArrayLikeObject.isArrayLikeObject);
      const union2 = unionWith.unionWith(...arrays, comparator);
      const intersections = windowed.windowed(arrays, 2).map(([arr1, arr2]) => intersectionWith.intersectionWith(arr1, arr2, comparator));
      return differenceWith.differenceWith(union2, unionWith.unionWith(...intersections, comparator), comparator);
    }
    exports2.xorWith = xorWith;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/zip.js
var require_zip = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/zip.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function zip(...arrs) {
      let rowCount = 0;
      for (let i2 = 0; i2 < arrs.length; i2++) {
        if (arrs[i2].length > rowCount) {
          rowCount = arrs[i2].length;
        }
      }
      const columnCount = arrs.length;
      const result2 = Array(rowCount);
      for (let i2 = 0; i2 < rowCount; ++i2) {
        const row = Array(columnCount);
        for (let j2 = 0; j2 < columnCount; ++j2) {
          row[j2] = arrs[j2][i2];
        }
        result2[i2] = row;
      }
      return result2;
    }
    exports2.zip = zip;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/zip.js
var require_zip2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/zip.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var zip$1 = require_zip();
    var isArrayLikeObject = require_isArrayLikeObject();
    function zip(...arrays) {
      if (!arrays.length) {
        return [];
      }
      return zip$1.zip(...arrays.filter((group) => isArrayLikeObject.isArrayLikeObject(group)));
    }
    exports2.zip = zip;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/assignValue.js
var require_assignValue = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/assignValue.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isEqualsSameValueZero = require_isEqualsSameValueZero();
    var assignValue = (object, key, value) => {
      const objValue = object[key];
      if (!(Object.hasOwn(object, key) && isEqualsSameValueZero.isEqualsSameValueZero(objValue, value)) || value === void 0 && !(key in object)) {
        object[key] = value;
      }
    };
    exports2.assignValue = assignValue;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/zipObject.js
var require_zipObject = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/zipObject.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var assignValue = require_assignValue();
    function zipObject(keys4 = [], values = []) {
      const result2 = {};
      for (let i2 = 0; i2 < keys4.length; i2++) {
        assignValue.assignValue(result2, keys4[i2], values[i2]);
      }
      return result2;
    }
    exports2.zipObject = zipObject;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/updateWith.js
var require_updateWith = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/updateWith.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var get = require_get2();
    var isUnsafeProperty = require_isUnsafeProperty();
    var assignValue = require_assignValue();
    var isIndex = require_isIndex();
    var isKey = require_isKey();
    var toKey = require_toKey();
    var isObject4 = require_isObject();
    var toPath4 = require_toPath();
    function updateWith(obj, path218, updater, customizer) {
      if (obj == null && !isObject4.isObject(obj)) {
        return obj;
      }
      let resolvedPath;
      if (isKey.isKey(path218, obj)) {
        resolvedPath = [path218];
      } else if (Array.isArray(path218)) {
        resolvedPath = path218;
      } else {
        resolvedPath = toPath4.toPath(path218);
      }
      const updateValue = updater(get.get(obj, resolvedPath));
      let current = obj;
      for (let i2 = 0; i2 < resolvedPath.length && current != null; i2++) {
        const key = toKey.toKey(resolvedPath[i2]);
        if (isUnsafeProperty.isUnsafeProperty(key)) {
          continue;
        }
        let newValue;
        if (i2 === resolvedPath.length - 1) {
          newValue = updateValue;
        } else {
          const objValue = current[key];
          const customizerResult = customizer?.(objValue, key, obj);
          newValue = customizerResult !== void 0 ? customizerResult : isObject4.isObject(objValue) ? objValue : isIndex.isIndex(resolvedPath[i2 + 1]) ? [] : {};
        }
        assignValue.assignValue(current, key, newValue);
        current = current[key];
      }
      return obj;
    }
    exports2.updateWith = updateWith;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/set.js
var require_set3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/set.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var updateWith = require_updateWith();
    function set2(obj, path218, value) {
      return updateWith.updateWith(obj, path218, () => value, () => void 0);
    }
    exports2.set = set2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/zipObjectDeep.js
var require_zipObjectDeep = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/zipObjectDeep.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var zip = require_zip();
    var set2 = require_set3();
    var isArrayLike2 = require_isArrayLike();
    function zipObjectDeep(keys4, values) {
      const result2 = {};
      if (!isArrayLike2.isArrayLike(keys4)) {
        return result2;
      }
      if (!isArrayLike2.isArrayLike(values)) {
        values = [];
      }
      const zipped = zip.zip(Array.from(keys4), Array.from(values));
      for (let i2 = 0; i2 < zipped.length; i2++) {
        const [key, value] = zipped[i2];
        if (key != null) {
          set2.set(result2, key, value);
        }
      }
      return result2;
    }
    exports2.zipObjectDeep = zipObjectDeep;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/zipWith.js
var require_zipWith = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/array/zipWith.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var unzip = require_unzip2();
    var isFunction = require_isFunction();
    function zipWith3(...combine) {
      let iteratee = combine.pop();
      if (!isFunction.isFunction(iteratee)) {
        combine.push(iteratee);
        iteratee = void 0;
      }
      if (!combine?.length) {
        return [];
      }
      const result2 = unzip.unzip(combine);
      if (iteratee == null) {
        return result2;
      }
      return result2.map((group) => iteratee(...group));
    }
    exports2.zipWith = zipWith3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/after.js
var require_after = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/after.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var toInteger = require_toInteger();
    function after(n2, func) {
      if (typeof func !== "function") {
        throw new TypeError("Expected a function");
      }
      n2 = toInteger.toInteger(n2);
      return function(...args) {
        if (--n2 < 1) {
          return func.apply(this, args);
        }
      };
    }
    exports2.after = after;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/ary.js
var require_ary2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/ary.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var ary$1 = require_ary();
    function ary(func, n2 = func.length, guard) {
      if (guard) {
        n2 = func.length;
      }
      if (Number.isNaN(n2) || n2 < 0) {
        n2 = 0;
      }
      return ary$1.ary(func, n2);
    }
    exports2.ary = ary;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/attempt.js
var require_attempt = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/attempt.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function attempt(func, ...args) {
      try {
        return func(...args);
      } catch (e) {
        return e instanceof Error ? e : new Error(e);
      }
    }
    exports2.attempt = attempt;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/before.js
var require_before = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/before.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var toInteger = require_toInteger();
    function before(n2, func) {
      if (typeof func !== "function") {
        throw new TypeError("Expected a function");
      }
      let result2;
      n2 = toInteger.toInteger(n2);
      return function(...args) {
        if (--n2 > 0) {
          result2 = func.apply(this, args);
        }
        if (n2 <= 1 && func) {
          func = void 0;
        }
        return result2;
      };
    }
    exports2.before = before;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/bind.js
var require_bind = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/bind.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function bind3(func, thisObj, ...partialArgs) {
      const bound = function(...providedArgs) {
        const args = [];
        let startIndex = 0;
        for (let i2 = 0; i2 < partialArgs.length; i2++) {
          const arg = partialArgs[i2];
          if (arg === bind3.placeholder) {
            args.push(providedArgs[startIndex++]);
          } else {
            args.push(arg);
          }
        }
        for (let i2 = startIndex; i2 < providedArgs.length; i2++) {
          args.push(providedArgs[i2]);
        }
        if (this instanceof bound) {
          return new func(...args);
        }
        return func.apply(thisObj, args);
      };
      return bound;
    }
    var bindPlaceholder = /* @__PURE__ */ Symbol("bind.placeholder");
    bind3.placeholder = bindPlaceholder;
    exports2.bind = bind3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/bindKey.js
var require_bindKey = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/bindKey.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function bindKey(object, key, ...partialArgs) {
      const bound = function(...providedArgs) {
        const args = [];
        let startIndex = 0;
        for (let i2 = 0; i2 < partialArgs.length; i2++) {
          const arg = partialArgs[i2];
          if (arg === bindKey.placeholder) {
            args.push(providedArgs[startIndex++]);
          } else {
            args.push(arg);
          }
        }
        for (let i2 = startIndex; i2 < providedArgs.length; i2++) {
          args.push(providedArgs[i2]);
        }
        if (this instanceof bound) {
          return new object[key](...args);
        }
        return object[key].apply(object, args);
      };
      return bound;
    }
    var bindKeyPlaceholder = /* @__PURE__ */ Symbol("bindKey.placeholder");
    bindKey.placeholder = bindKeyPlaceholder;
    exports2.bindKey = bindKey;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/curry.js
var require_curry = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/curry.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function curry(func, arity = func.length, guard) {
      arity = guard ? func.length : arity;
      arity = Number.parseInt(arity, 10);
      if (Number.isNaN(arity) || arity < 1) {
        arity = 0;
      }
      const wrapper = function(...partialArgs) {
        const holders = partialArgs.filter((item) => item === curry.placeholder);
        const length = partialArgs.length - holders.length;
        if (length < arity) {
          return makeCurry(func, arity - length, partialArgs);
        }
        if (this instanceof wrapper) {
          return new func(...partialArgs);
        }
        return func.apply(this, partialArgs);
      };
      wrapper.placeholder = curryPlaceholder;
      return wrapper;
    }
    function makeCurry(func, arity, partialArgs) {
      function wrapper(...providedArgs) {
        const holders = providedArgs.filter((item) => item === curry.placeholder);
        const length = providedArgs.length - holders.length;
        providedArgs = composeArgs(providedArgs, partialArgs);
        if (length < arity) {
          return makeCurry(func, arity - length, providedArgs);
        }
        if (this instanceof wrapper) {
          return new func(...providedArgs);
        }
        return func.apply(this, providedArgs);
      }
      wrapper.placeholder = curryPlaceholder;
      return wrapper;
    }
    function composeArgs(providedArgs, partialArgs) {
      const args = [];
      let startIndex = 0;
      for (let i2 = 0; i2 < partialArgs.length; i2++) {
        const arg = partialArgs[i2];
        if (arg === curry.placeholder && startIndex < providedArgs.length) {
          args.push(providedArgs[startIndex++]);
        } else {
          args.push(arg);
        }
      }
      for (let i2 = startIndex; i2 < providedArgs.length; i2++) {
        args.push(providedArgs[i2]);
      }
      return args;
    }
    var curryPlaceholder = /* @__PURE__ */ Symbol("curry.placeholder");
    curry.placeholder = curryPlaceholder;
    exports2.curry = curry;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/curryRight.js
var require_curryRight = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/curryRight.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function curryRight(func, arity = func.length, guard) {
      arity = guard ? func.length : arity;
      arity = Number.parseInt(arity, 10);
      if (Number.isNaN(arity) || arity < 1) {
        arity = 0;
      }
      const wrapper = function(...partialArgs) {
        const holders = partialArgs.filter((item) => item === curryRight.placeholder);
        const length = partialArgs.length - holders.length;
        if (length < arity) {
          return makeCurryRight(func, arity - length, partialArgs);
        }
        if (this instanceof wrapper) {
          return new func(...partialArgs);
        }
        return func.apply(this, partialArgs);
      };
      wrapper.placeholder = curryRightPlaceholder;
      return wrapper;
    }
    function makeCurryRight(func, arity, partialArgs) {
      function wrapper(...providedArgs) {
        const holders = providedArgs.filter((item) => item === curryRight.placeholder);
        const length = providedArgs.length - holders.length;
        providedArgs = composeArgs(providedArgs, partialArgs);
        if (length < arity) {
          return makeCurryRight(func, arity - length, providedArgs);
        }
        if (this instanceof wrapper) {
          return new func(...providedArgs);
        }
        return func.apply(this, providedArgs);
      }
      wrapper.placeholder = curryRightPlaceholder;
      return wrapper;
    }
    function composeArgs(providedArgs, partialArgs) {
      const placeholderLength = partialArgs.filter((arg) => arg === curryRight.placeholder).length;
      const rangeLength = Math.max(providedArgs.length - placeholderLength, 0);
      const args = [];
      let providedIndex = 0;
      for (let i2 = 0; i2 < rangeLength; i2++) {
        args.push(providedArgs[providedIndex++]);
      }
      for (let i2 = 0; i2 < partialArgs.length; i2++) {
        const arg = partialArgs[i2];
        if (arg === curryRight.placeholder) {
          if (providedIndex < providedArgs.length) {
            args.push(providedArgs[providedIndex++]);
          } else {
            args.push(arg);
          }
        } else {
          args.push(arg);
        }
      }
      return args;
    }
    var curryRightPlaceholder = /* @__PURE__ */ Symbol("curryRight.placeholder");
    curryRight.placeholder = curryRightPlaceholder;
    exports2.curryRight = curryRight;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/function/debounce.js
var require_debounce = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/function/debounce.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function debounce(func, debounceMs, { signal, edges } = {}) {
      let pendingThis = void 0;
      let pendingArgs = null;
      const leading = edges != null && edges.includes("leading");
      const trailing = edges == null || edges.includes("trailing");
      const invoke = () => {
        if (pendingArgs !== null) {
          func.apply(pendingThis, pendingArgs);
          pendingThis = void 0;
          pendingArgs = null;
        }
      };
      const onTimerEnd = () => {
        if (trailing) {
          invoke();
        }
        cancel();
      };
      let timeoutId = null;
      const schedule = () => {
        if (timeoutId != null) {
          clearTimeout(timeoutId);
        }
        timeoutId = setTimeout(() => {
          timeoutId = null;
          onTimerEnd();
        }, debounceMs);
      };
      const cancelTimer = () => {
        if (timeoutId !== null) {
          clearTimeout(timeoutId);
          timeoutId = null;
        }
      };
      const cancel = () => {
        cancelTimer();
        pendingThis = void 0;
        pendingArgs = null;
      };
      const flush = () => {
        invoke();
      };
      const debounced = function(...args) {
        if (signal?.aborted) {
          return;
        }
        pendingThis = this;
        pendingArgs = args;
        const isFirstCall = timeoutId == null;
        schedule();
        if (leading && isFirstCall) {
          invoke();
        }
      };
      debounced.schedule = schedule;
      debounced.cancel = cancel;
      debounced.flush = flush;
      signal?.addEventListener("abort", cancel, { once: true });
      return debounced;
    }
    exports2.debounce = debounce;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/debounce.js
var require_debounce2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/debounce.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var debounce$1 = require_debounce();
    function debounce(func, debounceMs = 0, options = {}) {
      if (typeof options !== "object") {
        options = {};
      }
      const { leading = false, trailing = true, maxWait } = options;
      const edges = Array(2);
      if (leading) {
        edges[0] = "leading";
      }
      if (trailing) {
        edges[1] = "trailing";
      }
      let result2 = void 0;
      let pendingAt = null;
      const _debounced = debounce$1.debounce(function(...args) {
        result2 = func.apply(this, args);
        pendingAt = null;
      }, debounceMs, { edges });
      const debounced = function(...args) {
        if (maxWait != null) {
          if (pendingAt === null) {
            pendingAt = Date.now();
          }
          if (Date.now() - pendingAt >= maxWait) {
            result2 = func.apply(this, args);
            pendingAt = Date.now();
            _debounced.cancel();
            _debounced.schedule();
            return result2;
          }
        }
        _debounced.apply(this, args);
        return result2;
      };
      const flush = () => {
        _debounced.flush();
        return result2;
      };
      debounced.cancel = _debounced.cancel;
      debounced.flush = flush;
      return debounced;
    }
    exports2.debounce = debounce;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/defer.js
var require_defer = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/defer.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function defer(func, ...args) {
      if (typeof func !== "function") {
        throw new TypeError("Expected a function");
      }
      return setTimeout(func, 1, ...args);
    }
    exports2.defer = defer;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/delay.js
var require_delay = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/delay.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var toNumber = require_toNumber();
    function delay(func, wait, ...args) {
      if (typeof func !== "function") {
        throw new TypeError("Expected a function");
      }
      return setTimeout(func, toNumber.toNumber(wait) || 0, ...args);
    }
    exports2.delay = delay;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/flip.js
var require_flip = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/flip.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function flip3(func) {
      return function(...args) {
        return func.apply(this, args.reverse());
      };
    }
    exports2.flip = flip3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/function/flow.js
var require_flow = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/function/flow.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function flow(...funcs) {
      return function(...args) {
        let result2 = funcs.length ? funcs[0].apply(this, args) : args[0];
        for (let i2 = 1; i2 < funcs.length; i2++) {
          result2 = funcs[i2].call(this, result2);
        }
        return result2;
      };
    }
    exports2.flow = flow;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/flow.js
var require_flow2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/flow.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var flatten2 = require_flatten();
    var flow$1 = require_flow();
    function flow(...funcs) {
      const flattenFuncs = flatten2.flatten(funcs, 1);
      if (flattenFuncs.some((func) => typeof func !== "function")) {
        throw new TypeError("Expected a function");
      }
      return flow$1.flow(...flattenFuncs);
    }
    exports2.flow = flow;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/function/flowRight.js
var require_flowRight = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/function/flowRight.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var flow = require_flow();
    function flowRight(...funcs) {
      return flow.flow(...funcs.reverse());
    }
    exports2.flowRight = flowRight;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/flowRight.js
var require_flowRight2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/flowRight.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var flatten2 = require_flatten();
    var flowRight$1 = require_flowRight();
    function flowRight(...funcs) {
      const flattenFuncs = flatten2.flatten(funcs, 1);
      if (flattenFuncs.some((func) => typeof func !== "function")) {
        throw new TypeError("Expected a function");
      }
      return flowRight$1.flowRight(...flattenFuncs);
    }
    exports2.flowRight = flowRight;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/memoize.js
var require_memoize = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/memoize.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function memoize2(func, resolver) {
      if (typeof func !== "function" || resolver != null && typeof resolver !== "function") {
        throw new TypeError("Expected a function");
      }
      const memoized = function(...args) {
        const key = resolver ? resolver.apply(this, args) : args[0];
        const cache = memoized.cache;
        if (cache.has(key)) {
          return cache.get(key);
        }
        const result2 = func.apply(this, args);
        memoized.cache = cache.set(key, result2) || cache;
        return result2;
      };
      const CacheConstructor = memoize2.Cache || Map;
      memoized.cache = new CacheConstructor();
      return memoized;
    }
    memoize2.Cache = Map;
    exports2.memoize = memoize2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/nthArg.js
var require_nthArg = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/nthArg.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var toInteger = require_toInteger();
    function nthArg(n2 = 0) {
      return function(...args) {
        return args.at(toInteger.toInteger(n2));
      };
    }
    exports2.nthArg = nthArg;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/function/once.js
var require_once = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/function/once.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function once11(func) {
      let called = false;
      let cache;
      return function(...args) {
        if (!called) {
          called = true;
          cache = func(...args);
        }
        return cache;
      };
    }
    exports2.once = once11;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/once.js
var require_once2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/once.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var once$1 = require_once();
    function once11(func) {
      return once$1.once(func);
    }
    exports2.once = once11;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/overArgs.js
var require_overArgs = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/overArgs.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var identity5 = require_identity2();
    var iteratee = require_iteratee();
    function overArgs(func, ..._transforms) {
      if (typeof func !== "function") {
        throw new TypeError("Expected a function");
      }
      const transforms = _transforms.flat();
      return function(...args) {
        const length = Math.min(args.length, transforms.length);
        const transformedArgs = [...args];
        for (let i2 = 0; i2 < length; i2++) {
          const transform2 = iteratee.iteratee(transforms[i2] ?? identity5.identity);
          transformedArgs[i2] = transform2.call(this, args[i2]);
        }
        return func.apply(this, transformedArgs);
      };
    }
    exports2.overArgs = overArgs;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/function/partial.js
var require_partial2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/function/partial.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function partial(func, ...partialArgs) {
      return partialImpl(func, placeholderSymbol, ...partialArgs);
    }
    function partialImpl(func, placeholder, ...partialArgs) {
      const partialed = function(...providedArgs) {
        let providedArgsIndex = 0;
        const substitutedArgs = partialArgs.slice().map((arg) => arg === placeholder ? providedArgs[providedArgsIndex++] : arg);
        const remainingArgs = providedArgs.slice(providedArgsIndex);
        return func.apply(this, substitutedArgs.concat(remainingArgs));
      };
      if (func.prototype) {
        partialed.prototype = Object.create(func.prototype);
      }
      return partialed;
    }
    var placeholderSymbol = /* @__PURE__ */ Symbol("partial.placeholder");
    partial.placeholder = placeholderSymbol;
    exports2.partial = partial;
    exports2.partialImpl = partialImpl;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/partial.js
var require_partial3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/partial.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var partial$1 = require_partial2();
    function partial(func, ...partialArgs) {
      return partial$1.partialImpl(func, partial.placeholder, ...partialArgs);
    }
    partial.placeholder = /* @__PURE__ */ Symbol("compat.partial.placeholder");
    exports2.partial = partial;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/function/partialRight.js
var require_partialRight = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/function/partialRight.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function partialRight(func, ...partialArgs) {
      return partialRightImpl(func, placeholderSymbol, ...partialArgs);
    }
    function partialRightImpl(func, placeholder, ...partialArgs) {
      const partialedRight = function(...providedArgs) {
        const placeholderLength = partialArgs.filter((arg) => arg === placeholder).length;
        const rangeLength = Math.max(providedArgs.length - placeholderLength, 0);
        const remainingArgs = providedArgs.slice(0, rangeLength);
        let providedArgsIndex = rangeLength;
        const substitutedArgs = partialArgs.slice().map((arg) => arg === placeholder ? providedArgs[providedArgsIndex++] : arg);
        return func.apply(this, remainingArgs.concat(substitutedArgs));
      };
      if (func.prototype) {
        partialedRight.prototype = Object.create(func.prototype);
      }
      return partialedRight;
    }
    var placeholderSymbol = /* @__PURE__ */ Symbol("partialRight.placeholder");
    partialRight.placeholder = placeholderSymbol;
    exports2.partialRight = partialRight;
    exports2.partialRightImpl = partialRightImpl;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/partialRight.js
var require_partialRight2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/partialRight.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var partialRight$1 = require_partialRight();
    function partialRight(func, ...partialArgs) {
      return partialRight$1.partialRightImpl(func, partialRight.placeholder, ...partialArgs);
    }
    partialRight.placeholder = /* @__PURE__ */ Symbol("compat.partialRight.placeholder");
    exports2.partialRight = partialRight;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/rearg.js
var require_rearg = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/rearg.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var flatten2 = require_flatten2();
    function rearg(func, ...indices) {
      const flattenIndices = flatten2.flatten(indices);
      return function(...args) {
        const reorderedArgs = flattenIndices.map((i2) => args[i2]).slice(0, args.length);
        for (let i2 = reorderedArgs.length; i2 < args.length; i2++) {
          reorderedArgs.push(args[i2]);
        }
        return func.apply(this, reorderedArgs);
      };
    }
    exports2.rearg = rearg;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/function/rest.js
var require_rest = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/function/rest.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function rest(func, startIndex = func.length - 1) {
      return function(...args) {
        const rest2 = args.slice(startIndex);
        const params = args.slice(0, startIndex);
        while (params.length < startIndex) {
          params.push(void 0);
        }
        return func.apply(this, [...params, rest2]);
      };
    }
    exports2.rest = rest;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/rest.js
var require_rest2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/rest.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var rest$1 = require_rest();
    function rest(func, start = func.length - 1) {
      start = Number.parseInt(start, 10);
      if (Number.isNaN(start) || start < 0) {
        start = func.length - 1;
      }
      return rest$1.rest(func, start);
    }
    exports2.rest = rest;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/spread.js
var require_spread = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/spread.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function spread(func, argsIndex = 0) {
      argsIndex = Number.parseInt(argsIndex, 10);
      if (Number.isNaN(argsIndex) || argsIndex < 0) {
        argsIndex = 0;
      }
      return function(...args) {
        const array = args[argsIndex];
        const params = args.slice(0, argsIndex);
        if (array) {
          params.push(...array);
        }
        return func.apply(this, params);
      };
    }
    exports2.spread = spread;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/throttle.js
var require_throttle = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/throttle.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var debounce = require_debounce2();
    function throttle2(func, throttleMs = 0, options = {}) {
      const { leading = true, trailing = true } = options;
      return debounce.debounce(func, throttleMs, {
        leading,
        maxWait: throttleMs,
        trailing
      });
    }
    exports2.throttle = throttle2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/unary.js
var require_unary = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/unary.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var ary = require_ary2();
    function unary(func) {
      return ary.ary(func, 1);
    }
    exports2.unary = unary;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/wrap.js
var require_wrap = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/wrap.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var identity5 = require_identity2();
    var isFunction = require_isFunction();
    function wrap(value, wrapper) {
      return function(...args) {
        const wrapFn = isFunction.isFunction(wrapper) ? wrapper : identity5.identity;
        return wrapFn.apply(this, [value, ...args]);
      };
    }
    exports2.wrap = wrap;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/add.js
var require_add = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/add.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var toNumber = require_toNumber();
    var toString4 = require_toString();
    function add(value, other) {
      if (value === void 0 && other === void 0) {
        return 0;
      }
      if (value === void 0 || other === void 0) {
        return value ?? other;
      }
      if (typeof value === "string" || typeof other === "string") {
        value = toString4.toString(value);
        other = toString4.toString(other);
      } else {
        value = toNumber.toNumber(value);
        other = toNumber.toNumber(other);
      }
      return value + other;
    }
    exports2.add = add;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/decimalAdjust.js
var require_decimalAdjust = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/decimalAdjust.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function decimalAdjust(type4, number, precision = 0) {
      number = Number(number);
      if (Object.is(number, -0)) {
        number = "-0";
      }
      precision = Math.min(Number.parseInt(precision, 10), 292);
      if (precision) {
        const [magnitude, exponent = 0] = number.toString().split("e");
        let adjustedValue = Math[type4](Number(`${magnitude}e${Number(exponent) + precision}`));
        if (Object.is(adjustedValue, -0)) {
          adjustedValue = "-0";
        }
        const [newMagnitude, newExponent = 0] = adjustedValue.toString().split("e");
        return Number(`${newMagnitude}e${Number(newExponent) - precision}`);
      }
      return Math[type4](Number(number));
    }
    exports2.decimalAdjust = decimalAdjust;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/ceil.js
var require_ceil = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/ceil.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var decimalAdjust = require_decimalAdjust();
    function ceil(number, precision = 0) {
      return decimalAdjust.decimalAdjust("ceil", number, precision);
    }
    exports2.ceil = ceil;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/divide.js
var require_divide = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/divide.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var toNumber = require_toNumber();
    var toString4 = require_toString();
    function divide2(value, other) {
      if (value === void 0 && other === void 0) {
        return 1;
      }
      if (value === void 0 || other === void 0) {
        return value ?? other;
      }
      if (typeof value === "string" || typeof other === "string") {
        value = toString4.toString(value);
        other = toString4.toString(other);
      } else {
        value = toNumber.toNumber(value);
        other = toNumber.toNumber(other);
      }
      return value / other;
    }
    exports2.divide = divide2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/floor.js
var require_floor = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/floor.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var decimalAdjust = require_decimalAdjust();
    function floor(number, precision = 0) {
      return decimalAdjust.decimalAdjust("floor", number, precision);
    }
    exports2.floor = floor;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/math/inRange.js
var require_inRange = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/math/inRange.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function inRange(value, minimum, maximum) {
      if (maximum == null) {
        maximum = minimum;
        minimum = 0;
      }
      if (minimum >= maximum) {
        throw new Error("The maximum value must be greater than the minimum value.");
      }
      return minimum <= value && value < maximum;
    }
    exports2.inRange = inRange;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/inRange.js
var require_inRange2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/inRange.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var inRange$1 = require_inRange();
    function inRange(value, minimum, maximum) {
      if (!minimum) {
        minimum = 0;
      }
      if (maximum != null && !maximum) {
        maximum = 0;
      }
      if (minimum != null && typeof minimum !== "number") {
        minimum = Number(minimum);
      }
      if (maximum == null && minimum === 0) {
        return false;
      }
      if (maximum != null && typeof maximum !== "number") {
        maximum = Number(maximum);
      }
      if (maximum != null && minimum > maximum) {
        [minimum, maximum] = [maximum, minimum];
      }
      if (minimum === maximum) {
        return false;
      }
      return inRange$1.inRange(value, minimum, maximum);
    }
    exports2.inRange = inRange;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/max.js
var require_max = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/max.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function max3(items) {
      if (!items || items.length === 0) {
        return void 0;
      }
      let maxResult = void 0;
      for (let i2 = 0; i2 < items.length; i2++) {
        const current = items[i2];
        if (current == null || Number.isNaN(current) || typeof current === "symbol") {
          continue;
        }
        if (maxResult === void 0 || current > maxResult) {
          maxResult = current;
        }
      }
      return maxResult;
    }
    exports2.max = max3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/maxBy.js
var require_maxBy = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/maxBy.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function maxBy(items, getValue) {
      if (items.length === 0) {
        return void 0;
      }
      let maxElement = items[0];
      let max3 = getValue(maxElement, 0, items);
      for (let i2 = 1; i2 < items.length; i2++) {
        const element = items[i2];
        const value = getValue(element, i2, items);
        if (value > max3) {
          max3 = value;
          maxElement = element;
        }
      }
      return maxElement;
    }
    exports2.maxBy = maxBy;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/maxBy.js
var require_maxBy2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/maxBy.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var maxBy$1 = require_maxBy();
    var identity5 = require_identity2();
    var iteratee = require_iteratee();
    function maxBy(items, iteratee$1) {
      if (items == null) {
        return void 0;
      }
      return maxBy$1.maxBy(Array.from(items), iteratee.iteratee(iteratee$1 ?? identity5.identity));
    }
    exports2.maxBy = maxBy;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/sumBy.js
var require_sumBy = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/sumBy.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var iteratee = require_iteratee();
    function sumBy(array, iteratee$1) {
      if (!array || !array.length) {
        return 0;
      }
      if (iteratee$1 != null) {
        iteratee$1 = iteratee.iteratee(iteratee$1);
      }
      let result2 = void 0;
      for (let i2 = 0; i2 < array.length; i2++) {
        const current = iteratee$1 ? iteratee$1(array[i2]) : array[i2];
        if (current !== void 0) {
          if (result2 === void 0) {
            result2 = current;
          } else {
            result2 += current;
          }
        }
      }
      return result2;
    }
    exports2.sumBy = sumBy;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/sum.js
var require_sum = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/sum.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var sumBy = require_sumBy();
    function sum(array) {
      return sumBy.sumBy(array);
    }
    exports2.sum = sum;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/mean.js
var require_mean = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/mean.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var sum = require_sum();
    function mean(nums) {
      const length = nums ? nums.length : 0;
      return length === 0 ? NaN : sum.sum(nums) / length;
    }
    exports2.mean = mean;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/math/sumBy.js
var require_sumBy2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/math/sumBy.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function sumBy(items, getValue) {
      let result2 = 0;
      for (let i2 = 0; i2 < items.length; i2++) {
        result2 += getValue(items[i2], i2);
      }
      return result2;
    }
    exports2.sumBy = sumBy;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/math/meanBy.js
var require_meanBy = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/math/meanBy.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var sumBy = require_sumBy2();
    function meanBy(items, getValue) {
      return sumBy.sumBy(items, (item) => getValue(item)) / items.length;
    }
    exports2.meanBy = meanBy;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/meanBy.js
var require_meanBy2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/meanBy.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var identity5 = require_identity2();
    var meanBy$1 = require_meanBy();
    var iteratee = require_iteratee();
    function meanBy(items, iteratee$1) {
      if (items == null) {
        return NaN;
      }
      return meanBy$1.meanBy(Array.from(items), iteratee.iteratee(iteratee$1 ?? identity5.identity));
    }
    exports2.meanBy = meanBy;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/min.js
var require_min = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/min.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function min(items) {
      if (!items || items.length === 0) {
        return void 0;
      }
      let minResult = void 0;
      for (let i2 = 0; i2 < items.length; i2++) {
        const current = items[i2];
        if (current == null || Number.isNaN(current) || typeof current === "symbol") {
          continue;
        }
        if (minResult === void 0 || current < minResult) {
          minResult = current;
        }
      }
      return minResult;
    }
    exports2.min = min;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/minBy.js
var require_minBy = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/array/minBy.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function minBy(items, getValue) {
      if (items.length === 0) {
        return void 0;
      }
      let minElement = items[0];
      let min = getValue(minElement, 0, items);
      for (let i2 = 1; i2 < items.length; i2++) {
        const element = items[i2];
        const value = getValue(element, i2, items);
        if (value < min) {
          min = value;
          minElement = element;
        }
      }
      return minElement;
    }
    exports2.minBy = minBy;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/minBy.js
var require_minBy2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/minBy.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var minBy$1 = require_minBy();
    var identity5 = require_identity2();
    var iteratee = require_iteratee();
    function minBy(items, iteratee$1) {
      if (items == null) {
        return void 0;
      }
      return minBy$1.minBy(Array.from(items), iteratee.iteratee(iteratee$1 ?? identity5.identity));
    }
    exports2.minBy = minBy;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/multiply.js
var require_multiply = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/multiply.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var toNumber = require_toNumber();
    var toString4 = require_toString();
    function multiply(value, other) {
      if (value === void 0 && other === void 0) {
        return 1;
      }
      if (value === void 0 || other === void 0) {
        return value ?? other;
      }
      if (typeof value === "string" || typeof other === "string") {
        value = toString4.toString(value);
        other = toString4.toString(other);
      } else {
        value = toNumber.toNumber(value);
        other = toNumber.toNumber(other);
      }
      return value * other;
    }
    exports2.multiply = multiply;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/parseInt.js
var require_parseInt = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/parseInt.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function parseInt2(string, radix = 0, guard) {
      if (guard) {
        radix = 0;
      }
      return Number.parseInt(string, radix);
    }
    exports2.parseInt = parseInt2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/random.js
var require_random2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/random.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var clamp2 = require_clamp();
    var random$1 = require_random();
    var randomInt = require_randomInt();
    function random(...args) {
      let minimum = 0;
      let maximum = 1;
      let floating = false;
      switch (args.length) {
        case 1: {
          if (typeof args[0] === "boolean") {
            floating = args[0];
          } else {
            maximum = args[0];
          }
          break;
        }
        case 2: {
          if (typeof args[1] === "boolean") {
            maximum = args[0];
            floating = args[1];
          } else {
            minimum = args[0];
            maximum = args[1];
          }
        }
        case 3: {
          if (typeof args[2] === "object" && args[2] != null && args[2][args[1]] === args[0]) {
            minimum = 0;
            maximum = args[0];
            floating = false;
          } else {
            minimum = args[0];
            maximum = args[1];
            floating = args[2];
          }
        }
      }
      if (typeof minimum !== "number") {
        minimum = Number(minimum);
      }
      if (typeof maximum !== "number") {
        minimum = Number(maximum);
      }
      if (!minimum) {
        minimum = 0;
      }
      if (!maximum) {
        maximum = 0;
      }
      if (minimum > maximum) {
        [minimum, maximum] = [maximum, minimum];
      }
      minimum = clamp2.clamp(minimum, -Number.MAX_SAFE_INTEGER, Number.MAX_SAFE_INTEGER);
      maximum = clamp2.clamp(maximum, -Number.MAX_SAFE_INTEGER, Number.MAX_SAFE_INTEGER);
      if (minimum === maximum) {
        return minimum;
      }
      if (floating) {
        return random$1.random(minimum, maximum + 1);
      } else {
        return randomInt.randomInt(minimum, maximum + 1);
      }
    }
    exports2.random = random;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/range.js
var require_range3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/range.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isIterateeCall = require_isIterateeCall();
    var toFinite = require_toFinite();
    function range(start, end, step2) {
      if (step2 && typeof step2 !== "number" && isIterateeCall.isIterateeCall(start, end, step2)) {
        end = step2 = void 0;
      }
      start = toFinite.toFinite(start);
      if (end === void 0) {
        end = start;
        start = 0;
      } else {
        end = toFinite.toFinite(end);
      }
      step2 = step2 === void 0 ? start < end ? 1 : -1 : toFinite.toFinite(step2);
      const length = Math.max(Math.ceil((end - start) / (step2 || 1)), 0);
      const result2 = new Array(length);
      for (let index = 0; index < length; index++) {
        result2[index] = start;
        start += step2;
      }
      return result2;
    }
    exports2.range = range;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/rangeRight.js
var require_rangeRight = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/rangeRight.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isIterateeCall = require_isIterateeCall();
    var toFinite = require_toFinite();
    function rangeRight(start, end, step2) {
      if (step2 && typeof step2 !== "number" && isIterateeCall.isIterateeCall(start, end, step2)) {
        end = step2 = void 0;
      }
      start = toFinite.toFinite(start);
      if (end === void 0) {
        end = start;
        start = 0;
      } else {
        end = toFinite.toFinite(end);
      }
      step2 = step2 === void 0 ? start < end ? 1 : -1 : toFinite.toFinite(step2);
      const length = Math.max(Math.ceil((end - start) / (step2 || 1)), 0);
      const result2 = new Array(length);
      for (let index = length - 1; index >= 0; index--) {
        result2[index] = start;
        start += step2;
      }
      return result2;
    }
    exports2.rangeRight = rangeRight;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/round.js
var require_round = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/round.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var decimalAdjust = require_decimalAdjust();
    function round(number, precision = 0) {
      return decimalAdjust.decimalAdjust("round", number, precision);
    }
    exports2.round = round;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/subtract.js
var require_subtract = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/math/subtract.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var toNumber = require_toNumber();
    var toString4 = require_toString();
    function subtract(value, other) {
      if (value === void 0 && other === void 0) {
        return 0;
      }
      if (value === void 0 || other === void 0) {
        return value ?? other;
      }
      if (typeof value === "string" || typeof other === "string") {
        value = toString4.toString(value);
        other = toString4.toString(other);
      } else {
        value = toNumber.toNumber(value);
        other = toNumber.toNumber(other);
      }
      return value - other;
    }
    exports2.subtract = subtract;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isPlainObject.js
var require_isPlainObject = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isPlainObject.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isPlainObject4(value) {
      if (!value || typeof value !== "object") {
        return false;
      }
      const proto2 = Object.getPrototypeOf(value);
      const hasObjectPrototype = proto2 === null || proto2 === Object.prototype || Object.getPrototypeOf(proto2) === null;
      if (!hasObjectPrototype) {
        return false;
      }
      return Object.prototype.toString.call(value) === "[object Object]";
    }
    exports2.isPlainObject = isPlainObject4;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isEqualWith.js
var require_isEqualWith = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isEqualWith.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isBuffer = require_isBuffer();
    var isPlainObject4 = require_isPlainObject();
    var getSymbols = require_getSymbols();
    var getTag = require_getTag();
    var tags = require_tags2();
    var isEqualsSameValueZero = require_isEqualsSameValueZero();
    function isEqualWith(a2, b, areValuesEqual) {
      return isEqualWithImpl(a2, b, void 0, void 0, void 0, void 0, areValuesEqual);
    }
    function isEqualWithImpl(a2, b, property, aParent, bParent, stack, areValuesEqual) {
      const result2 = areValuesEqual(a2, b, property, aParent, bParent, stack);
      if (result2 !== void 0) {
        return result2;
      }
      if (typeof a2 === typeof b) {
        switch (typeof a2) {
          case "bigint":
          case "string":
          case "boolean":
          case "symbol":
          case "undefined": {
            return a2 === b;
          }
          case "number": {
            return a2 === b || Object.is(a2, b);
          }
          case "function": {
            return a2 === b;
          }
          case "object": {
            return areObjectsEqual(a2, b, stack, areValuesEqual);
          }
        }
      }
      return areObjectsEqual(a2, b, stack, areValuesEqual);
    }
    function areObjectsEqual(a2, b, stack, areValuesEqual) {
      if (Object.is(a2, b)) {
        return true;
      }
      let aTag = getTag.getTag(a2);
      let bTag = getTag.getTag(b);
      if (aTag === tags.argumentsTag) {
        aTag = tags.objectTag;
      }
      if (bTag === tags.argumentsTag) {
        bTag = tags.objectTag;
      }
      if (aTag !== bTag) {
        return false;
      }
      switch (aTag) {
        case tags.stringTag:
          return a2.toString() === b.toString();
        case tags.numberTag: {
          const x = a2.valueOf();
          const y = b.valueOf();
          return isEqualsSameValueZero.isEqualsSameValueZero(x, y);
        }
        case tags.booleanTag:
        case tags.dateTag:
        case tags.symbolTag:
          return Object.is(a2.valueOf(), b.valueOf());
        case tags.regexpTag: {
          return a2.source === b.source && a2.flags === b.flags;
        }
        case tags.functionTag: {
          return a2 === b;
        }
      }
      stack = stack ?? /* @__PURE__ */ new Map();
      const aStack = stack.get(a2);
      const bStack = stack.get(b);
      if (aStack != null && bStack != null) {
        return aStack === b;
      }
      stack.set(a2, b);
      stack.set(b, a2);
      try {
        switch (aTag) {
          case tags.mapTag: {
            if (a2.size !== b.size) {
              return false;
            }
            for (const [key, value] of a2.entries()) {
              if (!b.has(key) || !isEqualWithImpl(value, b.get(key), key, a2, b, stack, areValuesEqual)) {
                return false;
              }
            }
            return true;
          }
          case tags.setTag: {
            if (a2.size !== b.size) {
              return false;
            }
            const aValues = Array.from(a2.values());
            const bValues = Array.from(b.values());
            for (let i2 = 0; i2 < aValues.length; i2++) {
              const aValue = aValues[i2];
              const index = bValues.findIndex((bValue) => {
                return isEqualWithImpl(aValue, bValue, void 0, a2, b, stack, areValuesEqual);
              });
              if (index === -1) {
                return false;
              }
              bValues.splice(index, 1);
            }
            return true;
          }
          case tags.arrayTag:
          case tags.uint8ArrayTag:
          case tags.uint8ClampedArrayTag:
          case tags.uint16ArrayTag:
          case tags.uint32ArrayTag:
          case tags.bigUint64ArrayTag:
          case tags.int8ArrayTag:
          case tags.int16ArrayTag:
          case tags.int32ArrayTag:
          case tags.bigInt64ArrayTag:
          case tags.float32ArrayTag:
          case tags.float64ArrayTag: {
            if (isBuffer.isBuffer(a2) !== isBuffer.isBuffer(b)) {
              return false;
            }
            if (a2.length !== b.length) {
              return false;
            }
            for (let i2 = 0; i2 < a2.length; i2++) {
              if (!isEqualWithImpl(a2[i2], b[i2], i2, a2, b, stack, areValuesEqual)) {
                return false;
              }
            }
            return true;
          }
          case tags.arrayBufferTag: {
            if (a2.byteLength !== b.byteLength) {
              return false;
            }
            return areObjectsEqual(new Uint8Array(a2), new Uint8Array(b), stack, areValuesEqual);
          }
          case tags.dataViewTag: {
            if (a2.byteLength !== b.byteLength || a2.byteOffset !== b.byteOffset) {
              return false;
            }
            return areObjectsEqual(new Uint8Array(a2), new Uint8Array(b), stack, areValuesEqual);
          }
          case tags.errorTag: {
            return a2.name === b.name && a2.message === b.message;
          }
          case tags.objectTag: {
            const areEqualInstances = areObjectsEqual(a2.constructor, b.constructor, stack, areValuesEqual) || isPlainObject4.isPlainObject(a2) && isPlainObject4.isPlainObject(b);
            if (!areEqualInstances) {
              return false;
            }
            const aKeys = [...Object.keys(a2), ...getSymbols.getSymbols(a2)];
            const bKeys = [...Object.keys(b), ...getSymbols.getSymbols(b)];
            if (aKeys.length !== bKeys.length) {
              return false;
            }
            for (let i2 = 0; i2 < aKeys.length; i2++) {
              const propKey = aKeys[i2];
              const aProp = a2[propKey];
              if (!Object.hasOwn(b, propKey)) {
                return false;
              }
              const bProp = b[propKey];
              if (!isEqualWithImpl(aProp, bProp, propKey, a2, b, stack, areValuesEqual)) {
                return false;
              }
            }
            return true;
          }
          default: {
            return false;
          }
        }
      } finally {
        stack.delete(a2);
        stack.delete(b);
      }
    }
    exports2.isEqualWith = isEqualWith;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/function/noop.js
var require_noop = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/function/noop.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function noop5() {
    }
    exports2.noop = noop5;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isEqual.js
var require_isEqual = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isEqual.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isEqualWith = require_isEqualWith();
    var noop5 = require_noop();
    function isEqual2(a2, b) {
      return isEqualWith.isEqualWith(a2, b, noop5.noop);
    }
    exports2.isEqual = isEqual2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/noop.js
var require_noop2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/function/noop.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function noop5(..._) {
    }
    exports2.noop = noop5;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/isPrototype.js
var require_isPrototype = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/isPrototype.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isPrototype(value) {
      const constructor = value?.constructor;
      const prototype = typeof constructor === "function" ? constructor.prototype : Object.prototype;
      return value === prototype;
    }
    exports2.isPrototype = isPrototype;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isTypedArray.js
var require_isTypedArray2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isTypedArray.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isTypedArray$1 = require_isTypedArray();
    function isTypedArray(x) {
      return isTypedArray$1.isTypedArray(x);
    }
    exports2.isTypedArray = isTypedArray;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/times.js
var require_times = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/times.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var toInteger = require_toInteger();
    function times3(n2, getValue) {
      n2 = toInteger.toInteger(n2);
      if (n2 < 1 || !Number.isSafeInteger(n2)) {
        return [];
      }
      const result2 = new Array(n2);
      for (let i2 = 0; i2 < n2; i2++) {
        result2[i2] = typeof getValue === "function" ? getValue(i2) : i2;
      }
      return result2;
    }
    exports2.times = times3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/keys.js
var require_keys = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/keys.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isBuffer = require_isBuffer();
    var isPrototype = require_isPrototype();
    var isArrayLike2 = require_isArrayLike();
    var isTypedArray = require_isTypedArray2();
    var times3 = require_times();
    function keys4(object) {
      if (isArrayLike2.isArrayLike(object)) {
        return arrayLikeKeys(object);
      }
      const result2 = Object.keys(Object(object));
      if (!isPrototype.isPrototype(object)) {
        return result2;
      }
      return result2.filter((key) => key !== "constructor");
    }
    function arrayLikeKeys(object) {
      const indices = times3.times(object.length, (index) => `${index}`);
      const filteredKeys = new Set(indices);
      if (isBuffer.isBuffer(object)) {
        filteredKeys.add("offset");
        filteredKeys.add("parent");
      }
      if (isTypedArray.isTypedArray(object)) {
        filteredKeys.add("buffer");
        filteredKeys.add("byteLength");
        filteredKeys.add("byteOffset");
      }
      const inheritedKeys = Object.keys(object).filter((key) => !filteredKeys.has(key));
      if (Array.isArray(object)) {
        return [...indices, ...inheritedKeys];
      }
      return [...indices.filter((index) => Object.hasOwn(object, index)), ...inheritedKeys];
    }
    exports2.keys = keys4;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/assign.js
var require_assign = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/assign.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var keys4 = require_keys();
    var isEqualsSameValueZero = require_isEqualsSameValueZero();
    function assign(object, ...sources) {
      for (let i2 = 0; i2 < sources.length; i2++) {
        assignImpl(object, sources[i2]);
      }
      return object;
    }
    function assignImpl(object, source) {
      const keys$1 = keys4.keys(source);
      for (let i2 = 0; i2 < keys$1.length; i2++) {
        const key = keys$1[i2];
        if (!(key in object) || !isEqualsSameValueZero.isEqualsSameValueZero(object[key], source[key])) {
          object[key] = source[key];
        }
      }
    }
    exports2.assign = assign;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/keysIn.js
var require_keysIn = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/keysIn.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isBuffer = require_isBuffer();
    var isPrototype = require_isPrototype();
    var isArrayLike2 = require_isArrayLike();
    var isTypedArray = require_isTypedArray2();
    var times3 = require_times();
    function keysIn(object) {
      if (object == null) {
        return [];
      }
      switch (typeof object) {
        case "object":
        case "function": {
          if (isArrayLike2.isArrayLike(object)) {
            return arrayLikeKeysIn(object);
          }
          if (isPrototype.isPrototype(object)) {
            return prototypeKeysIn(object);
          }
          return keysInImpl(object);
        }
        default: {
          return keysInImpl(Object(object));
        }
      }
    }
    function keysInImpl(object) {
      const result2 = [];
      for (const key in object) {
        result2.push(key);
      }
      return result2;
    }
    function prototypeKeysIn(object) {
      const keys4 = keysInImpl(object);
      return keys4.filter((key) => key !== "constructor");
    }
    function arrayLikeKeysIn(object) {
      const indices = times3.times(object.length, (index) => `${index}`);
      const filteredKeys = new Set(indices);
      if (isBuffer.isBuffer(object)) {
        filteredKeys.add("offset");
        filteredKeys.add("parent");
      }
      if (isTypedArray.isTypedArray(object)) {
        filteredKeys.add("buffer");
        filteredKeys.add("byteLength");
        filteredKeys.add("byteOffset");
      }
      const inheritedKeys = keysInImpl(object).filter((key) => !filteredKeys.has(key));
      if (Array.isArray(object)) {
        return [...indices, ...inheritedKeys];
      }
      return [...indices.filter((index) => Object.hasOwn(object, index)), ...inheritedKeys];
    }
    exports2.keysIn = keysIn;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/assignIn.js
var require_assignIn = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/assignIn.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var keysIn = require_keysIn();
    var isEqualsSameValueZero = require_isEqualsSameValueZero();
    function assignIn(object, ...sources) {
      for (let i2 = 0; i2 < sources.length; i2++) {
        assignInImpl(object, sources[i2]);
      }
      return object;
    }
    function assignInImpl(object, source) {
      const keys4 = keysIn.keysIn(source);
      for (let i2 = 0; i2 < keys4.length; i2++) {
        const key = keys4[i2];
        if (!(key in object) || !isEqualsSameValueZero.isEqualsSameValueZero(object[key], source[key])) {
          object[key] = source[key];
        }
      }
    }
    exports2.assignIn = assignIn;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/assignInWith.js
var require_assignInWith = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/assignInWith.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var keysIn = require_keysIn();
    var isEqualsSameValueZero = require_isEqualsSameValueZero();
    function assignInWith(object, ...sources) {
      let getValueToAssign = sources[sources.length - 1];
      if (typeof getValueToAssign === "function") {
        sources.pop();
      } else {
        getValueToAssign = void 0;
      }
      for (let i2 = 0; i2 < sources.length; i2++) {
        assignInWithImpl(object, sources[i2], getValueToAssign);
      }
      return object;
    }
    function assignInWithImpl(object, source, getValueToAssign) {
      const keys4 = keysIn.keysIn(source);
      for (let i2 = 0; i2 < keys4.length; i2++) {
        const key = keys4[i2];
        const objValue = object[key];
        const srcValue = source[key];
        const newValue = getValueToAssign?.(objValue, srcValue, key, object, source) ?? srcValue;
        if (!(key in object) || !isEqualsSameValueZero.isEqualsSameValueZero(objValue, newValue)) {
          object[key] = newValue;
        }
      }
    }
    exports2.assignInWith = assignInWith;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/assignWith.js
var require_assignWith = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/assignWith.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var keys4 = require_keys();
    var isEqualsSameValueZero = require_isEqualsSameValueZero();
    function assignWith(object, ...sources) {
      let getValueToAssign = sources[sources.length - 1];
      if (typeof getValueToAssign === "function") {
        sources.pop();
      } else {
        getValueToAssign = void 0;
      }
      for (let i2 = 0; i2 < sources.length; i2++) {
        assignWithImpl(object, sources[i2], getValueToAssign);
      }
      return object;
    }
    function assignWithImpl(object, source, getValueToAssign) {
      const keys$1 = keys4.keys(source);
      for (let i2 = 0; i2 < keys$1.length; i2++) {
        const key = keys$1[i2];
        const objValue = object[key];
        const srcValue = source[key];
        const newValue = getValueToAssign?.(objValue, srcValue, key, object, source) ?? srcValue;
        if (!(key in object) || !isEqualsSameValueZero.isEqualsSameValueZero(objValue, newValue)) {
          object[key] = newValue;
        }
      }
    }
    exports2.assignWith = assignWith;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/clone.js
var require_clone2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/clone.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isPrimitive2 = require_isPrimitive();
    var getTag = require_getTag();
    var tags = require_tags2();
    var isArray = require_isArray();
    var isTypedArray = require_isTypedArray2();
    function clone3(obj) {
      if (isPrimitive2.isPrimitive(obj)) {
        return obj;
      }
      const tag = getTag.getTag(obj);
      if (!isCloneableObject(obj)) {
        return {};
      }
      if (isArray.isArray(obj)) {
        const result3 = Array.from(obj);
        if (obj.length > 0 && typeof obj[0] === "string" && Object.hasOwn(obj, "index")) {
          result3.index = obj.index;
          result3.input = obj.input;
        }
        return result3;
      }
      if (isTypedArray.isTypedArray(obj)) {
        const typedArray = obj;
        const Ctor = typedArray.constructor;
        return new Ctor(typedArray.buffer, typedArray.byteOffset, typedArray.length);
      }
      if (tag === tags.arrayBufferTag) {
        return new ArrayBuffer(obj.byteLength);
      }
      if (tag === tags.dataViewTag) {
        const dataView2 = obj;
        const buffer3 = dataView2.buffer;
        const byteOffset = dataView2.byteOffset;
        const byteLength = dataView2.byteLength;
        const clonedBuffer = new ArrayBuffer(byteLength);
        const srcView = new Uint8Array(buffer3, byteOffset, byteLength);
        const destView = new Uint8Array(clonedBuffer);
        destView.set(srcView);
        return new DataView(clonedBuffer);
      }
      if (tag === tags.booleanTag || tag === tags.numberTag || tag === tags.stringTag) {
        const Ctor = obj.constructor;
        const clone4 = new Ctor(obj.valueOf());
        if (tag === tags.stringTag) {
          cloneStringObjectProperties(clone4, obj);
        } else {
          copyOwnProperties(clone4, obj);
        }
        return clone4;
      }
      if (tag === tags.dateTag) {
        return new Date(Number(obj));
      }
      if (tag === tags.regexpTag) {
        const regExp = obj;
        const clone4 = new RegExp(regExp.source, regExp.flags);
        clone4.lastIndex = regExp.lastIndex;
        return clone4;
      }
      if (tag === tags.symbolTag) {
        return Object(Symbol.prototype.valueOf.call(obj));
      }
      if (tag === tags.mapTag) {
        const map26 = obj;
        const result3 = /* @__PURE__ */ new Map();
        map26.forEach((obj2, key) => {
          result3.set(key, obj2);
        });
        return result3;
      }
      if (tag === tags.setTag) {
        const set2 = obj;
        const result3 = /* @__PURE__ */ new Set();
        set2.forEach((obj2) => {
          result3.add(obj2);
        });
        return result3;
      }
      if (tag === tags.argumentsTag) {
        const args = obj;
        const result3 = {};
        copyOwnProperties(result3, args);
        result3.length = args.length;
        result3[Symbol.iterator] = args[Symbol.iterator];
        return result3;
      }
      const result2 = {};
      copyPrototype(result2, obj);
      copyOwnProperties(result2, obj);
      copySymbolProperties(result2, obj);
      return result2;
    }
    function isCloneableObject(object) {
      switch (getTag.getTag(object)) {
        case tags.argumentsTag:
        case tags.arrayTag:
        case tags.arrayBufferTag:
        case tags.dataViewTag:
        case tags.booleanTag:
        case tags.dateTag:
        case tags.float32ArrayTag:
        case tags.float64ArrayTag:
        case tags.int8ArrayTag:
        case tags.int16ArrayTag:
        case tags.int32ArrayTag:
        case tags.mapTag:
        case tags.numberTag:
        case tags.objectTag:
        case tags.regexpTag:
        case tags.setTag:
        case tags.stringTag:
        case tags.symbolTag:
        case tags.uint8ArrayTag:
        case tags.uint8ClampedArrayTag:
        case tags.uint16ArrayTag:
        case tags.uint32ArrayTag: {
          return true;
        }
        default: {
          return false;
        }
      }
    }
    function copyOwnProperties(target2, source) {
      for (const key in source) {
        if (Object.hasOwn(source, key)) {
          target2[key] = source[key];
        }
      }
    }
    function copySymbolProperties(target2, source) {
      const symbols = Object.getOwnPropertySymbols(source);
      for (let i2 = 0; i2 < symbols.length; i2++) {
        const symbol = symbols[i2];
        if (Object.prototype.propertyIsEnumerable.call(source, symbol)) {
          target2[symbol] = source[symbol];
        }
      }
    }
    function cloneStringObjectProperties(target2, source) {
      const stringLength2 = source.valueOf().length;
      for (const key in source) {
        if (Object.hasOwn(source, key) && (Number.isNaN(Number(key)) || Number(key) >= stringLength2)) {
          target2[key] = source[key];
        }
      }
    }
    function copyPrototype(target2, source) {
      const proto2 = Object.getPrototypeOf(source);
      if (proto2 !== null) {
        const Ctor = source.constructor;
        if (typeof Ctor === "function") {
          Object.setPrototypeOf(target2, proto2);
        }
      }
    }
    exports2.clone = clone3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/cloneWith.js
var require_cloneWith = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/cloneWith.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var clone3 = require_clone2();
    function cloneWith(value, customizer) {
      if (!customizer) {
        return clone3.clone(value);
      }
      const result2 = customizer(value);
      if (result2 !== void 0) {
        return result2;
      }
      return clone3.clone(value);
    }
    exports2.cloneWith = cloneWith;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/create.js
var require_create = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/create.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var keys4 = require_keys();
    var assignValue = require_assignValue();
    var isObject4 = require_isObject();
    function create(prototype, properties) {
      const proto2 = isObject4.isObject(prototype) ? Object.create(prototype) : {};
      if (properties != null) {
        const propsKeys = keys4.keys(properties);
        for (let i2 = 0; i2 < propsKeys.length; i2++) {
          const key = propsKeys[i2];
          const propsValue = properties[key];
          assignValue.assignValue(proto2, key, propsValue);
        }
      }
      return proto2;
    }
    exports2.create = create;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/defaults.js
var require_defaults = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/defaults.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isNil = require_isNil();
    var isIterateeCall = require_isIterateeCall();
    var isEqualsSameValueZero = require_isEqualsSameValueZero();
    function defaults4(object, ...sources) {
      object = Object(object);
      const objectProto = Object.prototype;
      let length = sources.length;
      const guard = length > 2 ? sources[2] : void 0;
      if (guard && isIterateeCall.isIterateeCall(sources[0], sources[1], guard)) {
        length = 1;
      }
      for (let i2 = 0; i2 < length; i2++) {
        if (isNil.isNil(sources[i2])) {
          continue;
        }
        const source = sources[i2];
        const keys4 = Object.keys(source);
        for (let j2 = 0; j2 < keys4.length; j2++) {
          const key = keys4[j2];
          const value = object[key];
          if (value === void 0 || !Object.hasOwn(object, key) && isEqualsSameValueZero.isEqualsSameValueZero(value, objectProto[key])) {
            object[key] = source[key];
          }
        }
      }
      return object;
    }
    exports2.defaults = defaults4;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isPlainObject.js
var require_isPlainObject2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isPlainObject.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isPlainObject4(object) {
      if (typeof object !== "object") {
        return false;
      }
      if (object == null) {
        return false;
      }
      if (Object.getPrototypeOf(object) === null) {
        return true;
      }
      if (Object.prototype.toString.call(object) !== "[object Object]") {
        const tag = object[Symbol.toStringTag];
        if (tag == null) {
          return false;
        }
        const isTagReadonly = !Object.getOwnPropertyDescriptor(object, Symbol.toStringTag)?.writable;
        if (isTagReadonly) {
          return false;
        }
        return object.toString() === `[object ${tag}]`;
      }
      let proto2 = object;
      while (Object.getPrototypeOf(proto2) !== null) {
        proto2 = Object.getPrototypeOf(proto2);
      }
      return Object.getPrototypeOf(object) === proto2;
    }
    exports2.isPlainObject = isPlainObject4;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/defaultsDeep.js
var require_defaultsDeep = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/defaultsDeep.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isPlainObject4 = require_isPlainObject2();
    function defaultsDeep(target2, ...sources) {
      target2 = Object(target2);
      for (let i2 = 0; i2 < sources.length; i2++) {
        const source = sources[i2];
        if (source != null) {
          defaultsDeepRecursive(target2, source, /* @__PURE__ */ new WeakMap());
        }
      }
      return target2;
    }
    function defaultsDeepRecursive(target2, source, stack) {
      for (const key in source) {
        const sourceValue = source[key];
        const targetValue = target2[key];
        if (targetValue === void 0 || !Object.hasOwn(target2, key)) {
          target2[key] = handleMissingProperty(sourceValue, stack);
          continue;
        }
        if (stack.get(sourceValue) === targetValue) {
          continue;
        }
        handleExistingProperty(targetValue, sourceValue, stack);
      }
    }
    function handleMissingProperty(sourceValue, stack) {
      if (stack.has(sourceValue)) {
        return stack.get(sourceValue);
      }
      if (isPlainObject4.isPlainObject(sourceValue)) {
        const newObj = {};
        stack.set(sourceValue, newObj);
        defaultsDeepRecursive(newObj, sourceValue, stack);
        return newObj;
      }
      return sourceValue;
    }
    function handleExistingProperty(targetValue, sourceValue, stack) {
      if (isPlainObject4.isPlainObject(targetValue) && isPlainObject4.isPlainObject(sourceValue)) {
        stack.set(sourceValue, targetValue);
        defaultsDeepRecursive(targetValue, sourceValue, stack);
        return;
      }
      if (Array.isArray(targetValue) && Array.isArray(sourceValue)) {
        stack.set(sourceValue, targetValue);
        mergeArrays(targetValue, sourceValue, stack);
      }
    }
    function mergeArrays(targetArray, sourceArray, stack) {
      const minLength = Math.min(sourceArray.length, targetArray.length);
      for (let i2 = 0; i2 < minLength; i2++) {
        if (isPlainObject4.isPlainObject(targetArray[i2]) && isPlainObject4.isPlainObject(sourceArray[i2])) {
          defaultsDeepRecursive(targetArray[i2], sourceArray[i2], stack);
        }
      }
      for (let i2 = minLength; i2 < sourceArray.length; i2++) {
        targetArray.push(sourceArray[i2]);
      }
    }
    exports2.defaultsDeep = defaultsDeep;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/object/findKey.js
var require_findKey = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/object/findKey.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function findKey(obj, predicate) {
      const keys4 = Object.keys(obj);
      return keys4.find((key) => predicate(obj[key], key, obj));
    }
    exports2.findKey = findKey;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/findKey.js
var require_findKey2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/findKey.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var findKey$1 = require_findKey();
    var identity5 = require_identity3();
    var isObject4 = require_isObject();
    var iteratee = require_iteratee();
    function findKey(obj, predicate) {
      if (!isObject4.isObject(obj)) {
        return void 0;
      }
      const iteratee$1 = iteratee.iteratee(predicate ?? identity5.identity);
      return findKey$1.findKey(obj, iteratee$1);
    }
    exports2.findKey = findKey;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/findLastKey.js
var require_findLastKey = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/findLastKey.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var identity5 = require_identity3();
    var isObject4 = require_isObject();
    var iteratee = require_iteratee();
    function findLastKey(obj, predicate) {
      if (!isObject4.isObject(obj)) {
        return void 0;
      }
      const iteratee$1 = iteratee.iteratee(predicate ?? identity5.identity);
      const keys4 = Object.keys(obj);
      return keys4.findLast((key) => iteratee$1(obj[key], key, obj));
    }
    exports2.findLastKey = findLastKey;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/forIn.js
var require_forIn = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/forIn.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var identity5 = require_identity2();
    function forIn(object, iteratee = identity5.identity) {
      if (object == null) {
        return object;
      }
      for (const key in object) {
        const result2 = iteratee(object[key], key, object);
        if (result2 === false) {
          break;
        }
      }
      return object;
    }
    exports2.forIn = forIn;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/forInRight.js
var require_forInRight = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/forInRight.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var identity5 = require_identity2();
    function forInRight(object, iteratee = identity5.identity) {
      if (object == null) {
        return object;
      }
      const keys4 = [];
      for (const key in object) {
        keys4.push(key);
      }
      for (let i2 = keys4.length - 1; i2 >= 0; i2--) {
        const key = keys4[i2];
        const result2 = iteratee(object[key], key, object);
        if (result2 === false) {
          break;
        }
      }
      return object;
    }
    exports2.forInRight = forInRight;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/forOwn.js
var require_forOwn = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/forOwn.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var keys4 = require_keys();
    var identity5 = require_identity2();
    function forOwn(object, iteratee = identity5.identity) {
      if (object == null) {
        return object;
      }
      const iterable = Object(object);
      const keys$1 = keys4.keys(object);
      for (let i2 = 0; i2 < keys$1.length; ++i2) {
        const key = keys$1[i2];
        if (iteratee(iterable[key], key, iterable) === false) {
          break;
        }
      }
      return object;
    }
    exports2.forOwn = forOwn;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/forOwnRight.js
var require_forOwnRight = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/forOwnRight.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var keys4 = require_keys();
    var identity5 = require_identity2();
    function forOwnRight(object, iteratee = identity5.identity) {
      if (object == null) {
        return object;
      }
      const iterable = Object(object);
      const keys$1 = keys4.keys(object);
      for (let i2 = keys$1.length - 1; i2 >= 0; --i2) {
        const key = keys$1[i2];
        if (iteratee(iterable[key], key, iterable) === false) {
          break;
        }
      }
      return object;
    }
    exports2.forOwnRight = forOwnRight;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/fromPairs.js
var require_fromPairs = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/fromPairs.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isArrayLike2 = require_isArrayLike();
    function fromPairs(pairs2) {
      if (!isArrayLike2.isArrayLike(pairs2)) {
        return {};
      }
      const result2 = {};
      for (let i2 = 0; i2 < pairs2.length; i2++) {
        const [key, value] = pairs2[i2];
        result2[key] = value;
      }
      return result2;
    }
    exports2.fromPairs = fromPairs;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/functions.js
var require_functions = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/functions.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var keys4 = require_keys();
    function functions(object) {
      if (object == null) {
        return [];
      }
      return keys4.keys(object).filter((key) => typeof object[key] === "function");
    }
    exports2.functions = functions;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/functionsIn.js
var require_functionsIn = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/functionsIn.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isFunction = require_isFunction();
    function functionsIn(object) {
      if (object == null) {
        return [];
      }
      const result2 = [];
      for (const key in object) {
        if (isFunction.isFunction(object[key])) {
          result2.push(key);
        }
      }
      return result2;
    }
    exports2.functionsIn = functionsIn;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/hasIn.js
var require_hasIn = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/hasIn.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isDeepKey = require_isDeepKey();
    var isIndex = require_isIndex();
    var isArguments = require_isArguments();
    var toPath4 = require_toPath();
    function hasIn(object, path218) {
      if (object == null) {
        return false;
      }
      let resolvedPath;
      if (Array.isArray(path218)) {
        resolvedPath = path218;
      } else if (typeof path218 === "string" && isDeepKey.isDeepKey(path218) && object[path218] == null) {
        resolvedPath = toPath4.toPath(path218);
      } else {
        resolvedPath = [path218];
      }
      if (resolvedPath.length === 0) {
        return false;
      }
      let current = object;
      for (let i2 = 0; i2 < resolvedPath.length; i2++) {
        const key = resolvedPath[i2];
        if (current == null || !(key in Object(current))) {
          const isSparseIndex = (Array.isArray(current) || isArguments.isArguments(current)) && isIndex.isIndex(key) && key < current.length;
          if (!isSparseIndex) {
            return false;
          }
        }
        current = current[key];
      }
      return true;
    }
    exports2.hasIn = hasIn;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/object/invert.js
var require_invert = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/object/invert.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function invert(obj) {
      const result2 = {};
      const keys4 = Object.keys(obj);
      for (let i2 = 0; i2 < keys4.length; i2++) {
        const key = keys4[i2];
        const value = obj[key];
        result2[value] = key;
      }
      return result2;
    }
    exports2.invert = invert;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/invert.js
var require_invert2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/invert.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var invert$1 = require_invert();
    function invert(obj) {
      return invert$1.invert(obj);
    }
    exports2.invert = invert;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/invertBy.js
var require_invertBy = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/invertBy.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var identity5 = require_identity2();
    var isNil = require_isNil();
    var iteratee = require_iteratee();
    function invertBy(object, iteratee$1) {
      const result2 = {};
      if (isNil.isNil(object)) {
        return result2;
      }
      if (iteratee$1 == null) {
        iteratee$1 = identity5.identity;
      }
      const keys4 = Object.keys(object);
      const getString = iteratee.iteratee(iteratee$1);
      for (let i2 = 0; i2 < keys4.length; i2++) {
        const key = keys4[i2];
        const value = object[key];
        const valueStr = getString(value);
        if (Array.isArray(result2[valueStr])) {
          result2[valueStr].push(key);
        } else {
          result2[valueStr] = [key];
        }
      }
      return result2;
    }
    exports2.invertBy = invertBy;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/object/mapKeys.js
var require_mapKeys = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/object/mapKeys.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function mapKeys(object, getNewKey) {
      const result2 = {};
      const keys4 = Object.keys(object);
      for (let i2 = 0; i2 < keys4.length; i2++) {
        const key = keys4[i2];
        const value = object[key];
        result2[getNewKey(value, key, object)] = value;
      }
      return result2;
    }
    exports2.mapKeys = mapKeys;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/mapKeys.js
var require_mapKeys2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/mapKeys.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var identity5 = require_identity2();
    var mapKeys$1 = require_mapKeys();
    var iteratee = require_iteratee();
    function mapKeys(object, getNewKey = identity5.identity) {
      if (object == null) {
        return {};
      }
      return mapKeys$1.mapKeys(object, iteratee.iteratee(getNewKey));
    }
    exports2.mapKeys = mapKeys;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/object/mapValues.js
var require_mapValues = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/object/mapValues.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function mapValues2(object, getNewValue) {
      const result2 = {};
      const keys4 = Object.keys(object);
      for (let i2 = 0; i2 < keys4.length; i2++) {
        const key = keys4[i2];
        const value = object[key];
        result2[key] = getNewValue(value, key, object);
      }
      return result2;
    }
    exports2.mapValues = mapValues2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/mapValues.js
var require_mapValues2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/mapValues.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var identity5 = require_identity2();
    var mapValues$1 = require_mapValues();
    var iteratee = require_iteratee();
    function mapValues2(object, getNewValue = identity5.identity) {
      if (object == null) {
        return {};
      }
      return mapValues$1.mapValues(object, iteratee.iteratee(getNewValue));
    }
    exports2.mapValues = mapValues2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/object/clone.js
var require_clone3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/object/clone.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isPrimitive2 = require_isPrimitive();
    var isTypedArray = require_isTypedArray();
    function clone3(obj) {
      if (isPrimitive2.isPrimitive(obj)) {
        return obj;
      }
      if (Array.isArray(obj) || isTypedArray.isTypedArray(obj) || obj instanceof ArrayBuffer || typeof SharedArrayBuffer !== "undefined" && obj instanceof SharedArrayBuffer) {
        return obj.slice(0);
      }
      const prototype = Object.getPrototypeOf(obj);
      if (prototype == null) {
        return Object.assign(Object.create(prototype), obj);
      }
      const Constructor = prototype.constructor;
      if (obj instanceof Date || obj instanceof Map || obj instanceof Set) {
        return new Constructor(obj);
      }
      if (obj instanceof RegExp) {
        const newRegExp = new Constructor(obj);
        newRegExp.lastIndex = obj.lastIndex;
        return newRegExp;
      }
      if (obj instanceof DataView) {
        return new Constructor(obj.buffer.slice(0));
      }
      if (obj instanceof Error) {
        let newError;
        if (obj instanceof AggregateError) {
          newError = new Constructor(obj.errors, obj.message, { cause: obj.cause });
        } else {
          newError = new Constructor(obj.message, { cause: obj.cause });
        }
        newError.stack = obj.stack;
        Object.assign(newError, obj);
        return newError;
      }
      if (typeof File !== "undefined" && obj instanceof File) {
        const newFile = new Constructor([obj], obj.name, { type: obj.type, lastModified: obj.lastModified });
        return newFile;
      }
      if (typeof obj === "object") {
        const newObject = Object.create(prototype);
        return Object.assign(newObject, obj);
      }
      return obj;
    }
    exports2.clone = clone3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/mergeWith.js
var require_mergeWith = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/mergeWith.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var cloneDeep = require_cloneDeep2();
    var isUnsafeProperty = require_isUnsafeProperty();
    var clone3 = require_clone3();
    var isBuffer = require_isBuffer();
    var isPrimitive2 = require_isPrimitive();
    var getSymbols = require_getSymbols();
    var isArguments = require_isArguments();
    var isArrayLikeObject = require_isArrayLikeObject();
    var isObjectLike = require_isObjectLike();
    var isPlainObject4 = require_isPlainObject2();
    var isTypedArray = require_isTypedArray2();
    function mergeWith(object, ...otherArgs) {
      const sources = otherArgs.slice(0, -1);
      const merge7 = otherArgs[otherArgs.length - 1];
      let result2 = object;
      for (let i2 = 0; i2 < sources.length; i2++) {
        const source = sources[i2];
        result2 = mergeWithDeep(result2, source, merge7, /* @__PURE__ */ new Map());
      }
      return result2;
    }
    function mergeWithDeep(target2, source, merge7, stack) {
      if (isPrimitive2.isPrimitive(target2)) {
        target2 = Object(target2);
      }
      if (source == null || typeof source !== "object") {
        return target2;
      }
      if (stack.has(source)) {
        return clone3.clone(stack.get(source));
      }
      stack.set(source, target2);
      if (Array.isArray(source)) {
        source = source.slice();
        for (let i2 = 0; i2 < source.length; i2++) {
          source[i2] = source[i2] ?? void 0;
        }
      }
      const sourceKeys = [...Object.keys(source), ...getSymbols.getSymbols(source)];
      for (let i2 = 0; i2 < sourceKeys.length; i2++) {
        const key = sourceKeys[i2];
        if (isUnsafeProperty.isUnsafeProperty(key)) {
          continue;
        }
        let sourceValue = source[key];
        let targetValue = target2[key];
        if (isArguments.isArguments(sourceValue)) {
          sourceValue = { ...sourceValue };
        }
        if (isArguments.isArguments(targetValue)) {
          targetValue = { ...targetValue };
        }
        if (isBuffer.isBuffer(sourceValue)) {
          sourceValue = cloneDeep.cloneDeep(sourceValue);
        }
        if (Array.isArray(sourceValue)) {
          if (Array.isArray(targetValue)) {
            const cloned = [];
            const targetKeys = Reflect.ownKeys(targetValue);
            for (let i3 = 0; i3 < targetKeys.length; i3++) {
              const targetKey = targetKeys[i3];
              cloned[targetKey] = targetValue[targetKey];
            }
            targetValue = cloned;
          } else if (isArrayLikeObject.isArrayLikeObject(targetValue)) {
            const cloned = [];
            for (let i3 = 0; i3 < targetValue.length; i3++) {
              cloned[i3] = targetValue[i3];
            }
            targetValue = cloned;
          } else {
            targetValue = [];
          }
        }
        const merged = merge7(targetValue, sourceValue, key, target2, source, stack);
        if (merged !== void 0) {
          target2[key] = merged;
        } else if (Array.isArray(sourceValue)) {
          target2[key] = mergeWithDeep(targetValue, sourceValue, merge7, stack);
        } else if (isObjectLike.isObjectLike(targetValue) && isObjectLike.isObjectLike(sourceValue) && (isPlainObject4.isPlainObject(targetValue) || isPlainObject4.isPlainObject(sourceValue) || isTypedArray.isTypedArray(targetValue) || isTypedArray.isTypedArray(sourceValue))) {
          target2[key] = mergeWithDeep(targetValue, sourceValue, merge7, stack);
        } else if (targetValue == null && isPlainObject4.isPlainObject(sourceValue)) {
          target2[key] = mergeWithDeep({}, sourceValue, merge7, stack);
        } else if (targetValue == null && isTypedArray.isTypedArray(sourceValue)) {
          target2[key] = cloneDeep.cloneDeep(sourceValue);
        } else if (targetValue === void 0 || sourceValue !== void 0) {
          target2[key] = sourceValue;
        }
      }
      return target2;
    }
    exports2.mergeWith = mergeWith;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/merge.js
var require_merge4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/merge.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var mergeWith = require_mergeWith();
    var noop5 = require_noop();
    function merge7(object, ...sources) {
      return mergeWith.mergeWith(object, ...sources, noop5.noop);
    }
    exports2.merge = merge7;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/getSymbolsIn.js
var require_getSymbolsIn = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/getSymbolsIn.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var getSymbols = require_getSymbols();
    function getSymbolsIn(object) {
      const result2 = [];
      while (object) {
        result2.push(...getSymbols.getSymbols(object));
        object = Object.getPrototypeOf(object);
      }
      return result2;
    }
    exports2.getSymbolsIn = getSymbolsIn;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/omit.js
var require_omit = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/omit.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var cloneDeepWith = require_cloneDeepWith2();
    var keysIn = require_keysIn();
    var unset = require_unset();
    var getSymbolsIn = require_getSymbolsIn();
    var isDeepKey = require_isDeepKey();
    var flatten2 = require_flatten2();
    var isPlainObject4 = require_isPlainObject2();
    function omit3(obj, ...keysArr) {
      if (obj == null) {
        return {};
      }
      keysArr = flatten2.flatten(keysArr);
      const result2 = cloneInOmit(obj, keysArr);
      for (let i2 = 0; i2 < keysArr.length; i2++) {
        let keys4 = keysArr[i2];
        switch (typeof keys4) {
          case "object": {
            if (!Array.isArray(keys4)) {
              keys4 = Array.from(keys4);
            }
            for (let j2 = 0; j2 < keys4.length; j2++) {
              const key = keys4[j2];
              unset.unset(result2, key);
            }
            break;
          }
          case "string":
          case "symbol":
          case "number": {
            unset.unset(result2, keys4);
            break;
          }
        }
      }
      return result2;
    }
    function cloneInOmit(obj, keys4) {
      const hasDeepKey = keys4.some((key) => Array.isArray(key) || isDeepKey.isDeepKey(key));
      if (hasDeepKey) {
        return deepCloneInOmit(obj);
      }
      return shallowCloneInOmit(obj);
    }
    function shallowCloneInOmit(obj) {
      const result2 = {};
      const keysToCopy = [...keysIn.keysIn(obj), ...getSymbolsIn.getSymbolsIn(obj)];
      for (let i2 = 0; i2 < keysToCopy.length; i2++) {
        const key = keysToCopy[i2];
        result2[key] = obj[key];
      }
      return result2;
    }
    function deepCloneInOmit(obj) {
      const result2 = {};
      const keysToCopy = [...keysIn.keysIn(obj), ...getSymbolsIn.getSymbolsIn(obj)];
      for (let i2 = 0; i2 < keysToCopy.length; i2++) {
        const key = keysToCopy[i2];
        result2[key] = cloneDeepWith.cloneDeepWith(obj[key], (valueToClone) => {
          if (isPlainObject4.isPlainObject(valueToClone)) {
            return void 0;
          }
          return valueToClone;
        });
      }
      return result2;
    }
    exports2.omit = omit3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/omitBy.js
var require_omitBy = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/omitBy.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var keysIn = require_keysIn();
    var range = require_range2();
    var getSymbolsIn = require_getSymbolsIn();
    var identity5 = require_identity3();
    var isArrayLike2 = require_isArrayLike();
    var isSymbol = require_isSymbol();
    var iteratee = require_iteratee();
    function omitBy(object, shouldOmit) {
      if (object == null) {
        return {};
      }
      const result2 = {};
      const predicate = iteratee.iteratee(shouldOmit ?? identity5.identity);
      const keys4 = isArrayLike2.isArrayLike(object) ? range.range(0, object.length) : [...keysIn.keysIn(object), ...getSymbolsIn.getSymbolsIn(object)];
      for (let i2 = 0; i2 < keys4.length; i2++) {
        const key = isSymbol.isSymbol(keys4[i2]) ? keys4[i2] : keys4[i2].toString();
        const value = object[key];
        if (!predicate(value, key, object)) {
          result2[key] = value;
        }
      }
      return result2;
    }
    exports2.omitBy = omitBy;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/pick.js
var require_pick = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/pick.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var get = require_get2();
    var has = require_has();
    var set2 = require_set3();
    var isArrayLike2 = require_isArrayLike();
    var isNil = require_isNil2();
    function pick3(obj, ...keysArr) {
      if (isNil.isNil(obj)) {
        return {};
      }
      const result2 = {};
      for (let i2 = 0; i2 < keysArr.length; i2++) {
        let keys4 = keysArr[i2];
        switch (typeof keys4) {
          case "object": {
            if (!Array.isArray(keys4)) {
              if (isArrayLike2.isArrayLike(keys4)) {
                keys4 = Array.from(keys4);
              } else {
                keys4 = [keys4];
              }
            }
            break;
          }
          case "string":
          case "symbol":
          case "number": {
            keys4 = [keys4];
            break;
          }
        }
        for (const key of keys4) {
          const value = get.get(obj, key);
          if (value === void 0 && !has.has(obj, key)) {
            continue;
          }
          if (typeof key === "string" && Object.hasOwn(obj, key)) {
            result2[key] = value;
          } else {
            set2.set(result2, key, value);
          }
        }
      }
      return result2;
    }
    exports2.pick = pick3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/pickBy.js
var require_pickBy = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/pickBy.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var keysIn = require_keysIn();
    var range = require_range2();
    var getSymbolsIn = require_getSymbolsIn();
    var identity5 = require_identity3();
    var isArrayLike2 = require_isArrayLike();
    var isSymbol = require_isSymbol();
    var iteratee = require_iteratee();
    function pickBy3(obj, shouldPick) {
      if (obj == null) {
        return {};
      }
      const predicate = iteratee.iteratee(shouldPick ?? identity5.identity);
      const result2 = {};
      const keys4 = isArrayLike2.isArrayLike(obj) ? range.range(0, obj.length) : [...keysIn.keysIn(obj), ...getSymbolsIn.getSymbolsIn(obj)];
      for (let i2 = 0; i2 < keys4.length; i2++) {
        const key = isSymbol.isSymbol(keys4[i2]) ? keys4[i2] : keys4[i2].toString();
        const value = obj[key];
        if (predicate(value, key, obj)) {
          result2[key] = value;
        }
      }
      return result2;
    }
    exports2.pickBy = pickBy3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/propertyOf.js
var require_propertyOf = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/propertyOf.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var get = require_get2();
    function propertyOf(object) {
      return function(path218) {
        return get.get(object, path218);
      };
    }
    exports2.propertyOf = propertyOf;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/result.js
var require_result = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/result.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isKey = require_isKey();
    var toKey = require_toKey();
    var toPath4 = require_toPath();
    var toString4 = require_toString();
    function result2(object, path218, defaultValue) {
      if (isKey.isKey(path218, object)) {
        path218 = [path218];
      } else if (!Array.isArray(path218)) {
        path218 = toPath4.toPath(toString4.toString(path218));
      }
      const pathLength = Math.max(path218.length, 1);
      for (let index = 0; index < pathLength; index++) {
        const value = object == null ? void 0 : object[toKey.toKey(path218[index])];
        if (value === void 0) {
          return typeof defaultValue === "function" ? defaultValue.call(object) : defaultValue;
        }
        object = typeof value === "function" ? value.call(object) : value;
      }
      return object;
    }
    exports2.result = result2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/setWith.js
var require_setWith = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/setWith.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var updateWith = require_updateWith();
    function setWith(obj, path218, value, customizer) {
      let customizerFn;
      if (typeof customizer === "function") {
        customizerFn = customizer;
      } else {
        customizerFn = () => void 0;
      }
      return updateWith.updateWith(obj, path218, () => value, customizerFn);
    }
    exports2.setWith = setWith;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/toDefaulted.js
var require_toDefaulted = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/toDefaulted.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var cloneDeep = require_cloneDeep2();
    var defaults4 = require_defaults();
    function toDefaulted(object, ...sources) {
      const cloned = cloneDeep.cloneDeep(object);
      return defaults4.defaults(cloned, ...sources);
    }
    exports2.toDefaulted = toDefaulted;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/mapToEntries.js
var require_mapToEntries = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/mapToEntries.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function mapToEntries(map26) {
      const arr = new Array(map26.size);
      const keys4 = map26.keys();
      const values = map26.values();
      for (let i2 = 0; i2 < arr.length; i2++) {
        arr[i2] = [keys4.next().value, values.next().value];
      }
      return arr;
    }
    exports2.mapToEntries = mapToEntries;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/setToEntries.js
var require_setToEntries = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/setToEntries.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function setToEntries(set2) {
      const arr = new Array(set2.size);
      const values = set2.values();
      for (let i2 = 0; i2 < arr.length; i2++) {
        const value = values.next().value;
        arr[i2] = [value, value];
      }
      return arr;
    }
    exports2.setToEntries = setToEntries;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/toPairs.js
var require_toPairs = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/toPairs.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var keys4 = require_keys();
    var mapToEntries = require_mapToEntries();
    var setToEntries = require_setToEntries();
    function toPairs(object) {
      if (object == null) {
        return [];
      }
      if (object instanceof Set) {
        return setToEntries.setToEntries(object);
      }
      if (object instanceof Map) {
        return mapToEntries.mapToEntries(object);
      }
      const keys$1 = keys4.keys(object);
      const result2 = new Array(keys$1.length);
      for (let i2 = 0; i2 < keys$1.length; i2++) {
        const key = keys$1[i2];
        const value = object[key];
        result2[i2] = [key, value];
      }
      return result2;
    }
    exports2.toPairs = toPairs;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/toPairsIn.js
var require_toPairsIn = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/toPairsIn.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var keysIn = require_keysIn();
    var mapToEntries = require_mapToEntries();
    var setToEntries = require_setToEntries();
    function toPairsIn(object) {
      if (object == null) {
        return [];
      }
      if (object instanceof Set) {
        return setToEntries.setToEntries(object);
      }
      if (object instanceof Map) {
        return mapToEntries.mapToEntries(object);
      }
      const keys4 = keysIn.keysIn(object);
      const result2 = new Array(keys4.length);
      for (let i2 = 0; i2 < keys4.length; i2++) {
        const key = keys4[i2];
        const value = object[key];
        result2[i2] = [key, value];
      }
      return result2;
    }
    exports2.toPairsIn = toPairsIn;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isBuffer.js
var require_isBuffer2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isBuffer.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isBuffer$1 = require_isBuffer();
    function isBuffer(x) {
      return isBuffer$1.isBuffer(x);
    }
    exports2.isBuffer = isBuffer;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/transform.js
var require_transform = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/transform.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var identity5 = require_identity2();
    var isFunction = require_isFunction();
    var forEach = require_forEach();
    var isBuffer = require_isBuffer2();
    var isObject4 = require_isObject();
    var isTypedArray = require_isTypedArray2();
    var iteratee = require_iteratee();
    function transform2(object, iteratee$1 = identity5.identity, accumulator) {
      const isArrayOrBufferOrTypedArray = Array.isArray(object) || isBuffer.isBuffer(object) || isTypedArray.isTypedArray(object);
      iteratee$1 = iteratee.iteratee(iteratee$1);
      if (accumulator == null) {
        if (isArrayOrBufferOrTypedArray) {
          accumulator = [];
        } else if (isObject4.isObject(object) && isFunction.isFunction(object.constructor)) {
          accumulator = Object.create(Object.getPrototypeOf(object));
        } else {
          accumulator = {};
        }
      }
      if (object == null) {
        return accumulator;
      }
      forEach.forEach(object, (value, key, object2) => iteratee$1(accumulator, value, key, object2));
      return accumulator;
    }
    exports2.transform = transform2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/update.js
var require_update = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/update.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var updateWith = require_updateWith();
    function update2(obj, path218, updater) {
      return updateWith.updateWith(obj, path218, updater, () => void 0);
    }
    exports2.update = update2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/valuesIn.js
var require_valuesIn = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/object/valuesIn.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var keysIn = require_keysIn();
    function valuesIn(object) {
      const keys4 = keysIn.keysIn(object);
      const result2 = new Array(keys4.length);
      for (let i2 = 0; i2 < keys4.length; i2++) {
        const key = keys4[i2];
        result2[i2] = object[key];
      }
      return result2;
    }
    exports2.valuesIn = valuesIn;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isFunction.js
var require_isFunction2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isFunction.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isFunction(value) {
      return typeof value === "function";
    }
    exports2.isFunction = isFunction;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isLength.js
var require_isLength2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isLength.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isLength(value) {
      return Number.isSafeInteger(value) && value >= 0;
    }
    exports2.isLength = isLength;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isNative.js
var require_isNative = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isNative.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var functionToString = Function.prototype.toString;
    var REGEXP_SYNTAX_CHARS = /[\\^$.*+?()[\]{}|]/g;
    var IS_NATIVE_FUNCTION_REGEXP = RegExp(`^${functionToString.call(Object.prototype.hasOwnProperty).replace(REGEXP_SYNTAX_CHARS, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?")}$`);
    function isNative(value) {
      if (typeof value !== "function") {
        return false;
      }
      if (globalThis?.["__core-js_shared__"] != null) {
        throw new Error("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");
      }
      return IS_NATIVE_FUNCTION_REGEXP.test(functionToString.call(value));
    }
    exports2.isNative = isNative;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isNull.js
var require_isNull2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isNull.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isNull2(value) {
      return value === null;
    }
    exports2.isNull = isNull2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isUndefined.js
var require_isUndefined2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isUndefined.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isUndefined$1 = require_isUndefined();
    function isUndefined(x) {
      return isUndefined$1.isUndefined(x);
    }
    exports2.isUndefined = isUndefined;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/conformsTo.js
var require_conformsTo = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/conformsTo.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function conformsTo(target2, source) {
      if (source == null) {
        return true;
      }
      if (target2 == null) {
        return Object.keys(source).length === 0;
      }
      const keys4 = Object.keys(source);
      for (let i2 = 0; i2 < keys4.length; i2++) {
        const key = keys4[i2];
        const predicate = source[key];
        const value = target2[key];
        if (value === void 0 && !(key in target2)) {
          return false;
        }
        if (typeof predicate === "function" && !predicate(value)) {
          return false;
        }
      }
      return true;
    }
    exports2.conformsTo = conformsTo;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/conforms.js
var require_conforms = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/conforms.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var conformsTo = require_conformsTo();
    var cloneDeep = require_cloneDeep();
    function conforms(source) {
      source = cloneDeep.cloneDeep(source);
      return function(object) {
        return conformsTo.conformsTo(object, source);
      };
    }
    exports2.conforms = conforms;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isArrayBuffer.js
var require_isArrayBuffer = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isArrayBuffer.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isArrayBuffer2(value) {
      return value instanceof ArrayBuffer;
    }
    exports2.isArrayBuffer = isArrayBuffer2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isArrayBuffer.js
var require_isArrayBuffer2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isArrayBuffer.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isArrayBuffer$1 = require_isArrayBuffer();
    function isArrayBuffer2(value) {
      return isArrayBuffer$1.isArrayBuffer(value);
    }
    exports2.isArrayBuffer = isArrayBuffer2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isBoolean.js
var require_isBoolean = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isBoolean.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isBoolean2(value) {
      return typeof value === "boolean" || value instanceof Boolean;
    }
    exports2.isBoolean = isBoolean2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isDate.js
var require_isDate = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isDate.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isDate(value) {
      return value instanceof Date;
    }
    exports2.isDate = isDate;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isDate.js
var require_isDate2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isDate.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isDate$1 = require_isDate();
    function isDate(value) {
      return isDate$1.isDate(value);
    }
    exports2.isDate = isDate;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isElement.js
var require_isElement = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isElement.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isObjectLike = require_isObjectLike();
    var isPlainObject4 = require_isPlainObject2();
    function isElement(value) {
      return isObjectLike.isObjectLike(value) && value.nodeType === 1 && !isPlainObject4.isPlainObject(value);
    }
    exports2.isElement = isElement;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isEmpty.js
var require_isEmpty = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isEmpty.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isArguments = require_isArguments();
    var isArrayLike2 = require_isArrayLike();
    var isTypedArray = require_isTypedArray2();
    var isBuffer = require_isBuffer();
    var isPrototype = require_isPrototype();
    function isEmpty4(value) {
      if (value == null) {
        return true;
      }
      if (isArrayLike2.isArrayLike(value)) {
        if (typeof value.splice !== "function" && typeof value !== "string" && !isBuffer.isBuffer(value) && !isTypedArray.isTypedArray(value) && !isArguments.isArguments(value)) {
          return false;
        }
        return value.length === 0;
      }
      if (typeof value === "object") {
        if (value instanceof Map || value instanceof Set) {
          return value.size === 0;
        }
        const keys4 = Object.keys(value);
        if (isPrototype.isPrototype(value)) {
          return keys4.filter((x) => x !== "constructor").length === 0;
        }
        return keys4.length === 0;
      }
      return true;
    }
    exports2.isEmpty = isEmpty4;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/function/after.js
var require_after2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/function/after.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function after(n2, func) {
      if (!Number.isInteger(n2) || n2 < 0) {
        throw new Error(`n must be a non-negative integer.`);
      }
      let counter = 0;
      return (...args) => {
        if (++counter >= n2) {
          return func(...args);
        }
        return void 0;
      };
    }
    exports2.after = after;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isEqualWith.js
var require_isEqualWith2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isEqualWith.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var after = require_after2();
    var isEqualWith$1 = require_isEqualWith();
    function isEqualWith(a2, b, areValuesEqual) {
      if (typeof areValuesEqual !== "function") {
        areValuesEqual = () => void 0;
      }
      return isEqualWith$1.isEqualWith(a2, b, (...args) => {
        const result2 = areValuesEqual(...args);
        if (result2 !== void 0) {
          return Boolean(result2);
        }
        if (a2 instanceof Map && b instanceof Map) {
          return isEqualWith(Array.from(a2), Array.from(b), after.after(2, areValuesEqual));
        }
        if (a2 instanceof Set && b instanceof Set) {
          return isEqualWith(Array.from(a2), Array.from(b), after.after(2, areValuesEqual));
        }
      });
    }
    exports2.isEqualWith = isEqualWith;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isError.js
var require_isError = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isError.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var getTag = require_getTag();
    function isError(value) {
      return getTag.getTag(value) === "[object Error]";
    }
    exports2.isError = isError;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isFinite.js
var require_isFinite = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isFinite.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isFinite2(value) {
      return Number.isFinite(value);
    }
    exports2.isFinite = isFinite2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isInteger.js
var require_isInteger = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isInteger.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isInteger2(value) {
      return Number.isInteger(value);
    }
    exports2.isInteger = isInteger2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isRegExp.js
var require_isRegExp = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isRegExp.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isRegExp(value) {
      return value instanceof RegExp;
    }
    exports2.isRegExp = isRegExp;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isRegExp.js
var require_isRegExp2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isRegExp.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isRegExp$1 = require_isRegExp();
    function isRegExp(value) {
      return isRegExp$1.isRegExp(value);
    }
    exports2.isRegExp = isRegExp;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isSafeInteger.js
var require_isSafeInteger = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isSafeInteger.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isSafeInteger(value) {
      return Number.isSafeInteger(value);
    }
    exports2.isSafeInteger = isSafeInteger;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isSet.js
var require_isSet = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isSet.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isSet(value) {
      return value instanceof Set;
    }
    exports2.isSet = isSet;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isSet.js
var require_isSet2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isSet.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isSet$1 = require_isSet();
    function isSet(value) {
      return isSet$1.isSet(value);
    }
    exports2.isSet = isSet;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isWeakMap.js
var require_isWeakMap = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isWeakMap.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isWeakMap(value) {
      return value instanceof WeakMap;
    }
    exports2.isWeakMap = isWeakMap;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isWeakMap.js
var require_isWeakMap2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isWeakMap.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isWeakMap$1 = require_isWeakMap();
    function isWeakMap(value) {
      return isWeakMap$1.isWeakMap(value);
    }
    exports2.isWeakMap = isWeakMap;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isWeakSet.js
var require_isWeakSet = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/predicate/isWeakSet.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function isWeakSet(value) {
      return value instanceof WeakSet;
    }
    exports2.isWeakSet = isWeakSet;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isWeakSet.js
var require_isWeakSet2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/predicate/isWeakSet.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isWeakSet$1 = require_isWeakSet();
    function isWeakSet(value) {
      return isWeakSet$1.isWeakSet(value);
    }
    exports2.isWeakSet = isWeakSet;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/string/capitalize.js
var require_capitalize = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/string/capitalize.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function capitalize(str2) {
      return str2.charAt(0).toUpperCase() + str2.slice(1).toLowerCase();
    }
    exports2.capitalize = capitalize;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/capitalize.js
var require_capitalize2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/capitalize.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var capitalize$1 = require_capitalize();
    var toString4 = require_toString();
    function capitalize(str2) {
      return capitalize$1.capitalize(toString4.toString(str2));
    }
    exports2.capitalize = capitalize;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/bindAll.js
var require_bindAll = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/bindAll.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isFunction = require_isFunction();
    var isArray = require_isArray();
    var isObject4 = require_isObject();
    var toString4 = require_toString();
    function bindAll(object, ...methodNames) {
      if (object == null) {
        return object;
      }
      if (!isObject4.isObject(object)) {
        return object;
      }
      if (isArray.isArray(object) && methodNames.length === 0) {
        return object;
      }
      const methods = [];
      for (let i2 = 0; i2 < methodNames.length; i2++) {
        const name = methodNames[i2];
        if (isArray.isArray(name)) {
          methods.push(...name);
        } else if (name && typeof name === "object" && "length" in name) {
          methods.push(...Array.from(name));
        } else {
          methods.push(name);
        }
      }
      if (methods.length === 0) {
        return object;
      }
      for (let i2 = 0; i2 < methods.length; i2++) {
        const key = methods[i2];
        const stringKey = toString4.toString(key);
        const func = object[stringKey];
        if (isFunction.isFunction(func)) {
          object[stringKey] = func.bind(object);
        }
      }
      return object;
    }
    exports2.bindAll = bindAll;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/string/deburr.js
var require_deburr = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/string/deburr.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var deburrMap = /* @__PURE__ */ new Map([
      ["\xC6", "Ae"],
      ["\xD0", "D"],
      ["\xD8", "O"],
      ["\xDE", "Th"],
      ["\xDF", "ss"],
      ["\xE6", "ae"],
      ["\xF0", "d"],
      ["\xF8", "o"],
      ["\xFE", "th"],
      ["\u0110", "D"],
      ["\u0111", "d"],
      ["\u0126", "H"],
      ["\u0127", "h"],
      ["\u0131", "i"],
      ["\u0132", "IJ"],
      ["\u0133", "ij"],
      ["\u0138", "k"],
      ["\u013F", "L"],
      ["\u0140", "l"],
      ["\u0141", "L"],
      ["\u0142", "l"],
      ["\u0149", "'n"],
      ["\u014A", "N"],
      ["\u014B", "n"],
      ["\u0152", "Oe"],
      ["\u0153", "oe"],
      ["\u0166", "T"],
      ["\u0167", "t"],
      ["\u017F", "s"]
    ]);
    function deburr2(str2) {
      str2 = str2.normalize("NFD");
      let result2 = "";
      for (let i2 = 0; i2 < str2.length; i2++) {
        const char = str2[i2];
        if (char >= "\u0300" && char <= "\u036F" || char >= "\uFE20" && char <= "\uFE23") {
          continue;
        }
        result2 += deburrMap.get(char) ?? char;
      }
      return result2;
    }
    exports2.deburr = deburr2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/deburr.js
var require_deburr2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/deburr.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var deburr$1 = require_deburr();
    var toString4 = require_toString();
    function deburr2(str2) {
      return deburr$1.deburr(toString4.toString(str2));
    }
    exports2.deburr = deburr2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/string/words.js
var require_words = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/string/words.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var CASE_SPLIT_PATTERN = /\p{Lu}?\p{Ll}+|[0-9]+|\p{Lu}+(?!\p{Ll})|\p{Emoji_Presentation}|\p{Extended_Pictographic}|\p{L}+/gu;
    function words(str2) {
      return Array.from(str2.match(CASE_SPLIT_PATTERN) ?? []);
    }
    exports2.CASE_SPLIT_PATTERN = CASE_SPLIT_PATTERN;
    exports2.words = words;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/string/camelCase.js
var require_camelCase = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/string/camelCase.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var capitalize = require_capitalize();
    var words = require_words();
    function camelCase2(str2) {
      const words$1 = words.words(str2);
      if (words$1.length === 0) {
        return "";
      }
      const [first, ...rest] = words$1;
      return `${first.toLowerCase()}${rest.map((word) => capitalize.capitalize(word)).join("")}`;
    }
    exports2.camelCase = camelCase2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/normalizeForCase.js
var require_normalizeForCase = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/normalizeForCase.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var toString4 = require_toString();
    function normalizeForCase(str2) {
      if (typeof str2 !== "string") {
        str2 = toString4.toString(str2);
      }
      return str2.replace(/['\u2019]/g, "");
    }
    exports2.normalizeForCase = normalizeForCase;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/camelCase.js
var require_camelCase2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/camelCase.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var deburr2 = require_deburr2();
    var camelCase$1 = require_camelCase();
    var normalizeForCase = require_normalizeForCase();
    function camelCase2(str2) {
      return camelCase$1.camelCase(normalizeForCase.normalizeForCase(deburr2.deburr(str2)));
    }
    exports2.camelCase = camelCase2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/endsWith.js
var require_endsWith = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/endsWith.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function endsWith(str2, target2, position3) {
      if (str2 == null || target2 == null) {
        return false;
      }
      if (position3 == null) {
        position3 = str2.length;
      }
      return str2.endsWith(target2, position3);
    }
    exports2.endsWith = endsWith;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/string/escape.js
var require_escape3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/string/escape.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var htmlEscapes = {
      "&": "&amp;",
      "<": "&lt;",
      ">": "&gt;",
      '"': "&quot;",
      "'": "&#39;"
    };
    function escape(str2) {
      return str2.replace(/[&<>"']/g, (match) => htmlEscapes[match]);
    }
    exports2.escape = escape;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/escape.js
var require_escape4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/escape.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var escape$1 = require_escape3();
    var toString4 = require_toString();
    function escape(string) {
      return escape$1.escape(toString4.toString(string));
    }
    exports2.escape = escape;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/string/escapeRegExp.js
var require_escapeRegExp = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/string/escapeRegExp.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function escapeRegExp3(str2) {
      return str2.replace(/[\\^$.*+?()[\]{}|]/g, "\\$&");
    }
    exports2.escapeRegExp = escapeRegExp3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/escapeRegExp.js
var require_escapeRegExp2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/escapeRegExp.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var escapeRegExp$1 = require_escapeRegExp();
    var toString4 = require_toString();
    function escapeRegExp3(str2) {
      return escapeRegExp$1.escapeRegExp(toString4.toString(str2));
    }
    exports2.escapeRegExp = escapeRegExp3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/string/kebabCase.js
var require_kebabCase = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/string/kebabCase.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var words = require_words();
    function kebabCase6(str2) {
      const words$1 = words.words(str2);
      return words$1.map((word) => word.toLowerCase()).join("-");
    }
    exports2.kebabCase = kebabCase6;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/kebabCase.js
var require_kebabCase2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/kebabCase.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var deburr2 = require_deburr2();
    var kebabCase$1 = require_kebabCase();
    var normalizeForCase = require_normalizeForCase();
    function kebabCase6(str2) {
      return kebabCase$1.kebabCase(normalizeForCase.normalizeForCase(deburr2.deburr(str2)));
    }
    exports2.kebabCase = kebabCase6;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/string/lowerCase.js
var require_lowerCase = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/string/lowerCase.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var words = require_words();
    function lowerCase(str2) {
      const words$1 = words.words(str2);
      return words$1.map((word) => word.toLowerCase()).join(" ");
    }
    exports2.lowerCase = lowerCase;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/lowerCase.js
var require_lowerCase2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/lowerCase.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var deburr2 = require_deburr2();
    var lowerCase$1 = require_lowerCase();
    var normalizeForCase = require_normalizeForCase();
    function lowerCase(str2) {
      return lowerCase$1.lowerCase(normalizeForCase.normalizeForCase(deburr2.deburr(str2)));
    }
    exports2.lowerCase = lowerCase;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/string/lowerFirst.js
var require_lowerFirst = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/string/lowerFirst.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function lowerFirst(str2) {
      return str2.substring(0, 1).toLowerCase() + str2.substring(1);
    }
    exports2.lowerFirst = lowerFirst;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/lowerFirst.js
var require_lowerFirst2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/lowerFirst.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var lowerFirst$1 = require_lowerFirst();
    var toString4 = require_toString();
    function lowerFirst(str2) {
      return lowerFirst$1.lowerFirst(toString4.toString(str2));
    }
    exports2.lowerFirst = lowerFirst;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/string/pad.js
var require_pad = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/string/pad.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function pad3(str2, length, chars = " ") {
      return str2.padStart(Math.floor((length - str2.length) / 2) + str2.length, chars).padEnd(length, chars);
    }
    exports2.pad = pad3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/pad.js
var require_pad2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/pad.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var pad$1 = require_pad();
    var toString4 = require_toString();
    function pad3(str2, length, chars) {
      return pad$1.pad(toString4.toString(str2), length, chars);
    }
    exports2.pad = pad3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/padEnd.js
var require_padEnd = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/padEnd.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var toString4 = require_toString();
    function padEnd(str2, length = 0, chars = " ") {
      return toString4.toString(str2).padEnd(length, chars);
    }
    exports2.padEnd = padEnd;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/padStart.js
var require_padStart = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/padStart.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var toString4 = require_toString();
    function padStart2(str2, length = 0, chars = " ") {
      return toString4.toString(str2).padStart(length, chars);
    }
    exports2.padStart = padStart2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/MAX_SAFE_INTEGER.js
var require_MAX_SAFE_INTEGER = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/MAX_SAFE_INTEGER.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER;
    exports2.MAX_SAFE_INTEGER = MAX_SAFE_INTEGER;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/repeat.js
var require_repeat = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/repeat.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isIterateeCall = require_isIterateeCall();
    var MAX_SAFE_INTEGER = require_MAX_SAFE_INTEGER();
    var toInteger = require_toInteger();
    var toString4 = require_toString();
    function repeat4(str2, n2, guard) {
      if (guard ? isIterateeCall.isIterateeCall(str2, n2, guard) : n2 === void 0) {
        n2 = 1;
      } else {
        n2 = toInteger.toInteger(n2);
      }
      if (n2 < 1 || n2 > MAX_SAFE_INTEGER.MAX_SAFE_INTEGER) {
        return "";
      }
      return toString4.toString(str2).repeat(n2);
    }
    exports2.repeat = repeat4;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/replace.js
var require_replace = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/replace.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var toString4 = require_toString();
    function replace(target2, pattern, replacement) {
      if (arguments.length < 3) {
        return toString4.toString(target2);
      }
      return toString4.toString(target2).replace(pattern, replacement);
    }
    exports2.replace = replace;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/string/snakeCase.js
var require_snakeCase = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/string/snakeCase.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var words = require_words();
    function snakeCase(str2) {
      const words$1 = words.words(str2);
      return words$1.map((word) => word.toLowerCase()).join("_");
    }
    exports2.snakeCase = snakeCase;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/snakeCase.js
var require_snakeCase2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/snakeCase.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var deburr2 = require_deburr2();
    var snakeCase$1 = require_snakeCase();
    var normalizeForCase = require_normalizeForCase();
    function snakeCase(str2) {
      return snakeCase$1.snakeCase(normalizeForCase.normalizeForCase(deburr2.deburr(str2)));
    }
    exports2.snakeCase = snakeCase;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/split.js
var require_split = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/split.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var toString4 = require_toString();
    function split2(string, separator, limit) {
      return toString4.toString(string).split(separator, limit);
    }
    exports2.split = split2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/startCase.js
var require_startCase = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/startCase.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var deburr2 = require_deburr2();
    var words = require_words();
    var normalizeForCase = require_normalizeForCase();
    function startCase(str2) {
      const words$1 = words.words(normalizeForCase.normalizeForCase(deburr2.deburr(str2)).trim());
      let result2 = "";
      for (let i2 = 0; i2 < words$1.length; i2++) {
        const word = words$1[i2];
        if (result2) {
          result2 += " ";
        }
        if (word === word.toUpperCase()) {
          result2 += word;
        } else {
          result2 += word[0].toUpperCase() + word.slice(1).toLowerCase();
        }
      }
      return result2;
    }
    exports2.startCase = startCase;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/startsWith.js
var require_startsWith = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/startsWith.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function startsWith(str2, target2, position3) {
      if (str2 == null || target2 == null) {
        return false;
      }
      if (position3 == null) {
        position3 = 0;
      }
      return str2.startsWith(target2, position3);
    }
    exports2.startsWith = startsWith;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/template.js
var require_template = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/template.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var escape = require_escape4();
    var attempt = require_attempt();
    var defaults4 = require_defaults();
    var toString4 = require_toString();
    var esTemplateRegExp = /\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g;
    var unEscapedRegExp = /['\n\r\u2028\u2029\\]/g;
    var noMatchExp = /($^)/;
    var escapeMap = /* @__PURE__ */ new Map([
      ["\\", "\\"],
      ["'", "'"],
      ["\n", "n"],
      ["\r", "r"],
      ["\u2028", "u2028"],
      ["\u2029", "u2029"]
    ]);
    function escapeString2(match) {
      return `\\${escapeMap.get(match)}`;
    }
    var defaultInterpolateRegExp = /<%=([\s\S]+?)%>/g;
    var templateSettings = {
      escape: /<%-([\s\S]+?)%>/g,
      evaluate: /<%([\s\S]+?)%>/g,
      interpolate: defaultInterpolateRegExp,
      variable: "",
      imports: {
        _: {
          escape: escape.escape,
          template
        }
      }
    };
    function template(string, options, guard) {
      string = toString4.toString(string);
      if (guard) {
        options = templateSettings;
      }
      options = defaults4.defaults({ ...options }, templateSettings);
      const delimitersRegExp = new RegExp([
        options.escape?.source ?? noMatchExp.source,
        options.interpolate?.source ?? noMatchExp.source,
        options.interpolate === defaultInterpolateRegExp ? esTemplateRegExp.source : noMatchExp.source,
        options.evaluate?.source ?? noMatchExp.source,
        "$"
      ].join("|"), "g");
      let lastIndex = 0;
      let isEvaluated = false;
      let source = `__p += ''`;
      for (const match of string.matchAll(delimitersRegExp)) {
        const [fullMatch, escapeValue, interpolateValue, esTemplateValue, evaluateValue] = match;
        const { index } = match;
        source += ` + '${string.slice(lastIndex, index).replace(unEscapedRegExp, escapeString2)}'`;
        if (escapeValue) {
          source += ` + _.escape(${escapeValue})`;
        }
        if (interpolateValue) {
          source += ` + ((${interpolateValue}) == null ? '' : ${interpolateValue})`;
        } else if (esTemplateValue) {
          source += ` + ((${esTemplateValue}) == null ? '' : ${esTemplateValue})`;
        }
        if (evaluateValue) {
          source += `;
${evaluateValue};
 __p += ''`;
          isEvaluated = true;
        }
        lastIndex = index + fullMatch.length;
      }
      const imports = defaults4.defaults({ ...options.imports }, templateSettings.imports);
      const importsKeys = Object.keys(imports);
      const importValues = Object.values(imports);
      const sourceURL = `//# sourceURL=${options.sourceURL ? String(options.sourceURL).replace(/[\r\n]/g, " ") : `es-toolkit.templateSource[${Date.now()}]`}
`;
      const compiledFunction = `function(${options.variable || "obj"}) {
    let __p = '';
    ${options.variable ? "" : "if (obj == null) { obj = {}; }"}
    ${isEvaluated ? `function print() { __p += Array.prototype.join.call(arguments, ''); }` : ""}
    ${options.variable ? source : `with(obj) {
${source}
}`}
    return __p;
  }`;
      const result2 = attempt.attempt(() => new Function(...importsKeys, `${sourceURL}return ${compiledFunction}`)(...importValues));
      result2.source = compiledFunction;
      if (result2 instanceof Error) {
        throw result2;
      }
      return result2;
    }
    exports2.template = template;
    exports2.templateSettings = templateSettings;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/toLower.js
var require_toLower = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/toLower.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var toString4 = require_toString();
    function toLower(value) {
      return toString4.toString(value).toLowerCase();
    }
    exports2.toLower = toLower;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/toUpper.js
var require_toUpper = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/toUpper.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var toString4 = require_toString();
    function toUpper(value) {
      return toString4.toString(value).toUpperCase();
    }
    exports2.toUpper = toUpper;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/string/trimEnd.js
var require_trimEnd = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/string/trimEnd.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function trimEnd(str2, chars) {
      if (chars === void 0) {
        return str2.trimEnd();
      }
      let endIndex = str2.length;
      switch (typeof chars) {
        case "string": {
          if (chars.length !== 1) {
            throw new Error(`The 'chars' parameter should be a single character string.`);
          }
          while (endIndex > 0 && str2[endIndex - 1] === chars) {
            endIndex--;
          }
          break;
        }
        case "object": {
          while (endIndex > 0 && chars.includes(str2[endIndex - 1])) {
            endIndex--;
          }
        }
      }
      return str2.substring(0, endIndex);
    }
    exports2.trimEnd = trimEnd;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/string/trimStart.js
var require_trimStart = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/string/trimStart.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function trimStart(str2, chars) {
      if (chars === void 0) {
        return str2.trimStart();
      }
      let startIndex = 0;
      switch (typeof chars) {
        case "string": {
          while (startIndex < str2.length && str2[startIndex] === chars) {
            startIndex++;
          }
          break;
        }
        case "object": {
          while (startIndex < str2.length && chars.includes(str2[startIndex])) {
            startIndex++;
          }
        }
      }
      return str2.substring(startIndex);
    }
    exports2.trimStart = trimStart;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/string/trim.js
var require_trim = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/string/trim.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var trimEnd = require_trimEnd();
    var trimStart = require_trimStart();
    function trim(str2, chars) {
      if (chars === void 0) {
        return str2.trim();
      }
      return trimStart.trimStart(trimEnd.trimEnd(str2, chars), chars);
    }
    exports2.trim = trim;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/trim.js
var require_trim2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/trim.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var trim$1 = require_trim();
    function trim(str2, chars, guard) {
      if (str2 == null) {
        return "";
      }
      if (guard != null || chars == null) {
        return str2.toString().trim();
      }
      switch (typeof chars) {
        case "object": {
          if (Array.isArray(chars)) {
            return trim$1.trim(str2, chars.flatMap((x) => x.toString().split("")));
          } else {
            return trim$1.trim(str2, chars.toString().split(""));
          }
        }
        default: {
          return trim$1.trim(str2, chars.toString().split(""));
        }
      }
    }
    exports2.trim = trim;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/trimEnd.js
var require_trimEnd2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/trimEnd.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var trimEnd$1 = require_trimEnd();
    function trimEnd(str2, chars, guard) {
      if (str2 == null) {
        return "";
      }
      if (guard != null || chars == null) {
        return str2.toString().trimEnd();
      }
      return trimEnd$1.trimEnd(str2, chars.toString().split(""));
    }
    exports2.trimEnd = trimEnd;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/trimStart.js
var require_trimStart2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/trimStart.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var trimStart$1 = require_trimStart();
    function trimStart(str2, chars, guard) {
      if (str2 == null) {
        return "";
      }
      if (guard != null || chars == null) {
        return str2.toString().trimStart();
      }
      return trimStart$1.trimStart(str2, chars.toString().split(""));
    }
    exports2.trimStart = trimStart;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/truncate.js
var require_truncate3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/truncate.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var isObject4 = require_isObject();
    var regexMultiByte = /[\u200d\ud800-\udfff\u0300-\u036f\ufe20-\ufe2f\u20d0-\u20ff\ufe0e\ufe0f]/;
    function truncate(string, options) {
      string = string != null ? `${string}` : "";
      let length = 30;
      let omission = "...";
      if (isObject4.isObject(options)) {
        length = parseLength(options.length);
        omission = "omission" in options ? `${options.omission}` : "...";
      }
      let i2 = string.length;
      const lengthOmission = Array.from(omission).length;
      const lengthBase = Math.max(length - lengthOmission, 0);
      let strArray = void 0;
      const unicode = regexMultiByte.test(string);
      if (unicode) {
        strArray = Array.from(string);
        i2 = strArray.length;
      }
      if (length >= i2) {
        return string;
      }
      if (i2 <= lengthOmission) {
        return omission;
      }
      let base = strArray === void 0 ? string.slice(0, lengthBase) : strArray?.slice(0, lengthBase).join("");
      const separator = options?.separator;
      if (!separator) {
        base += omission;
        return base;
      }
      const search2 = separator instanceof RegExp ? separator.source : separator;
      const flags = "u" + (separator instanceof RegExp ? separator.flags.replace("u", "") : "");
      const withoutSeparator = new RegExp(`(?<result>.*(?:(?!${search2}).))(?:${search2})`, flags).exec(base);
      return (!withoutSeparator?.groups ? base : withoutSeparator.groups.result) + omission;
    }
    function parseLength(length) {
      if (length == null) {
        return 30;
      }
      if (length <= 0) {
        return 0;
      }
      return length;
    }
    exports2.truncate = truncate;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/string/unescape.js
var require_unescape2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/string/unescape.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var htmlUnescapes = {
      "&amp;": "&",
      "&lt;": "<",
      "&gt;": ">",
      "&quot;": '"',
      "&#39;": "'"
    };
    function unescape2(str2) {
      return str2.replace(/&(?:amp|lt|gt|quot|#(0+)?39);/g, (match) => htmlUnescapes[match] || "'");
    }
    exports2.unescape = unescape2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/unescape.js
var require_unescape3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/unescape.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var unescape$1 = require_unescape2();
    var toString4 = require_toString();
    function unescape2(str2) {
      return unescape$1.unescape(toString4.toString(str2));
    }
    exports2.unescape = unescape2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/string/upperCase.js
var require_upperCase = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/string/upperCase.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var words = require_words();
    function upperCase(str2) {
      const words$1 = words.words(str2);
      let result2 = "";
      for (let i2 = 0; i2 < words$1.length; i2++) {
        result2 += words$1[i2].toUpperCase();
        if (i2 < words$1.length - 1) {
          result2 += " ";
        }
      }
      return result2;
    }
    exports2.upperCase = upperCase;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/upperCase.js
var require_upperCase2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/upperCase.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var deburr2 = require_deburr2();
    var upperCase$1 = require_upperCase();
    var normalizeForCase = require_normalizeForCase();
    function upperCase(str2) {
      return upperCase$1.upperCase(normalizeForCase.normalizeForCase(deburr2.deburr(str2)));
    }
    exports2.upperCase = upperCase;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/string/upperFirst.js
var require_upperFirst = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/string/upperFirst.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function upperFirst(str2) {
      return str2.substring(0, 1).toUpperCase() + str2.substring(1);
    }
    exports2.upperFirst = upperFirst;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/upperFirst.js
var require_upperFirst2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/upperFirst.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var upperFirst$1 = require_upperFirst();
    var toString4 = require_toString();
    function upperFirst(str2) {
      return upperFirst$1.upperFirst(toString4.toString(str2));
    }
    exports2.upperFirst = upperFirst;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/words.js
var require_words2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/string/words.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var toString4 = require_toString();
    var rNonCharLatin = "\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\xd7\\xf7";
    var rUnicodeUpper = "\\p{Lu}";
    var rUnicodeLower = "\\p{Ll}";
    var rMisc = "(?:[\\p{Lm}\\p{Lo}]\\p{M}*)";
    var rNumber = "\\d";
    var rUnicodeOptContrLower = "(?:['\u2019](?:d|ll|m|re|s|t|ve))?";
    var rUnicodeOptContrUpper = "(?:['\u2019](?:D|LL|M|RE|S|T|VE))?";
    var rUnicodeBreak = `[\\p{Z}\\p{P}${rNonCharLatin}]`;
    var rUnicodeMiscUpper = `(?:${rUnicodeUpper}|${rMisc})`;
    var rUnicodeMiscLower = `(?:${rUnicodeLower}|${rMisc})`;
    var rUnicodeWord = RegExp([
      `${rUnicodeUpper}?${rUnicodeLower}+${rUnicodeOptContrLower}(?=${rUnicodeBreak}|${rUnicodeUpper}|$)`,
      `${rUnicodeMiscUpper}+${rUnicodeOptContrUpper}(?=${rUnicodeBreak}|${rUnicodeUpper}${rUnicodeMiscLower}|$)`,
      `${rUnicodeUpper}?${rUnicodeMiscLower}+${rUnicodeOptContrLower}`,
      `${rUnicodeUpper}+${rUnicodeOptContrUpper}`,
      `${rNumber}*(?:1ST|2ND|3RD|(?![123])${rNumber}TH)(?=\\b|[a-z_])`,
      `${rNumber}*(?:1st|2nd|3rd|(?![123])${rNumber}th)(?=\\b|[A-Z_])`,
      `${rNumber}+`,
      "\\p{Emoji_Presentation}",
      "\\p{Extended_Pictographic}"
    ].join("|"), "gu");
    function words(str2, pattern = rUnicodeWord, guard) {
      const input = toString4.toString(str2);
      if (guard) {
        pattern = rUnicodeWord;
      }
      if (typeof pattern === "number") {
        pattern = pattern.toString();
      }
      const words2 = Array.from(input.match(pattern) ?? []);
      return words2.filter((x) => x !== "");
    }
    exports2.words = words;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/cond.js
var require_cond = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/cond.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var iteratee = require_iteratee();
    var isFunction = require_isFunction();
    function cond(pairs2) {
      const length = pairs2.length;
      const processedPairs = pairs2.map((pair) => {
        const predicate = pair[0];
        const func = pair[1];
        if (!isFunction.isFunction(func)) {
          throw new TypeError("Expected a function");
        }
        return [iteratee.iteratee(predicate), func];
      });
      return function(...args) {
        for (let i2 = 0; i2 < length; i2++) {
          const pair = processedPairs[i2];
          const predicate = pair[0];
          const func = pair[1];
          if (predicate.apply(this, args)) {
            return func.apply(this, args);
          }
        }
      };
    }
    exports2.cond = cond;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/constant.js
var require_constant = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/constant.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function constant(value) {
      return () => value;
    }
    exports2.constant = constant;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/defaultTo.js
var require_defaultTo = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/defaultTo.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function defaultTo(value, defaultValue) {
      if (value == null || Number.isNaN(value)) {
        return defaultValue;
      }
      return value;
    }
    exports2.defaultTo = defaultTo;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/gt.js
var require_gt2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/gt.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var toNumber = require_toNumber();
    function gt(value, other) {
      if (typeof value === "string" && typeof other === "string") {
        return value > other;
      }
      return toNumber.toNumber(value) > toNumber.toNumber(other);
    }
    exports2.gt = gt;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/gte.js
var require_gte2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/gte.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var toNumber = require_toNumber();
    function gte(value, other) {
      if (typeof value === "string" && typeof other === "string") {
        return value >= other;
      }
      return toNumber.toNumber(value) >= toNumber.toNumber(other);
    }
    exports2.gte = gte;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/invoke.js
var require_invoke = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/invoke.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var toPath4 = require_toPath();
    var toKey = require_toKey();
    var last = require_last2();
    var get = require_get2();
    function invoke(object, path218, ...args) {
      args = args.flat(1);
      if (object == null) {
        return;
      }
      switch (typeof path218) {
        case "string": {
          if (typeof object === "object" && Object.hasOwn(object, path218)) {
            return invokeImpl(object, [path218], args);
          }
          return invokeImpl(object, toPath4.toPath(path218), args);
        }
        case "number":
        case "symbol": {
          return invokeImpl(object, [path218], args);
        }
        default: {
          if (Array.isArray(path218)) {
            return invokeImpl(object, path218, args);
          } else {
            return invokeImpl(object, [path218], args);
          }
        }
      }
    }
    function invokeImpl(object, path218, args) {
      const parent = get.get(object, path218.slice(0, -1), object);
      if (parent == null) {
        return void 0;
      }
      let lastKey = last.last(path218);
      const lastValue = lastKey?.valueOf();
      if (typeof lastValue === "number") {
        lastKey = toKey.toKey(lastValue);
      } else {
        lastKey = String(lastKey);
      }
      const func = get.get(parent, lastKey);
      return func?.apply(parent, args);
    }
    exports2.invoke = invoke;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/lt.js
var require_lt2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/lt.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var toNumber = require_toNumber();
    function lt(value, other) {
      if (typeof value === "string" && typeof other === "string") {
        return value < other;
      }
      return toNumber.toNumber(value) < toNumber.toNumber(other);
    }
    exports2.lt = lt;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/lte.js
var require_lte2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/lte.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var toNumber = require_toNumber();
    function lte(value, other) {
      if (typeof value === "string" && typeof other === "string") {
        return value <= other;
      }
      return toNumber.toNumber(value) <= toNumber.toNumber(other);
    }
    exports2.lte = lte;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/method.js
var require_method = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/method.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var invoke = require_invoke();
    function method(path218, ...args) {
      return function(object) {
        return invoke.invoke(object, path218, args);
      };
    }
    exports2.method = method;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/methodOf.js
var require_methodOf = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/methodOf.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var invoke = require_invoke();
    function methodOf(object, ...args) {
      return function(path218) {
        return invoke.invoke(object, path218, args);
      };
    }
    exports2.methodOf = methodOf;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/now.js
var require_now = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/now.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function now() {
      return Date.now();
    }
    exports2.now = now;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/over.js
var require_over = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/over.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var iteratee = require_iteratee();
    function over(...iteratees) {
      if (iteratees.length === 1 && Array.isArray(iteratees[0])) {
        iteratees = iteratees[0];
      }
      const funcs = iteratees.map((item) => iteratee.iteratee(item));
      return function(...args) {
        return funcs.map((func) => func.apply(this, args));
      };
    }
    exports2.over = over;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/overEvery.js
var require_overEvery = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/overEvery.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var iteratee = require_iteratee();
    function overEvery(...predicates) {
      return function(...values) {
        for (let i2 = 0; i2 < predicates.length; ++i2) {
          const predicate = predicates[i2];
          if (!Array.isArray(predicate)) {
            if (!iteratee.iteratee(predicate).apply(this, values)) {
              return false;
            }
            continue;
          }
          for (let j2 = 0; j2 < predicate.length; ++j2) {
            if (!iteratee.iteratee(predicate[j2]).apply(this, values)) {
              return false;
            }
          }
        }
        return true;
      };
    }
    exports2.overEvery = overEvery;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/overSome.js
var require_overSome = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/overSome.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var iteratee = require_iteratee();
    function overSome(...predicates) {
      return function(...values) {
        for (let i2 = 0; i2 < predicates.length; ++i2) {
          const predicate = predicates[i2];
          if (!Array.isArray(predicate)) {
            if (iteratee.iteratee(predicate).apply(this, values)) {
              return true;
            }
            continue;
          }
          for (let j2 = 0; j2 < predicate.length; ++j2) {
            if (iteratee.iteratee(predicate[j2]).apply(this, values)) {
              return true;
            }
          }
        }
        return false;
      };
    }
    exports2.overSome = overSome;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/stubArray.js
var require_stubArray = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/stubArray.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function stubArray() {
      return [];
    }
    exports2.stubArray = stubArray;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/stubFalse.js
var require_stubFalse = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/stubFalse.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function stubFalse() {
      return false;
    }
    exports2.stubFalse = stubFalse;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/stubObject.js
var require_stubObject = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/stubObject.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function stubObject() {
      return {};
    }
    exports2.stubObject = stubObject;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/stubString.js
var require_stubString = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/stubString.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function stubString() {
      return "";
    }
    exports2.stubString = stubString;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/stubTrue.js
var require_stubTrue = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/stubTrue.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    function stubTrue() {
      return true;
    }
    exports2.stubTrue = stubTrue;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/MAX_ARRAY_LENGTH.js
var require_MAX_ARRAY_LENGTH = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/_internal/MAX_ARRAY_LENGTH.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var MAX_ARRAY_LENGTH = 4294967295;
    exports2.MAX_ARRAY_LENGTH = MAX_ARRAY_LENGTH;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/toLength.js
var require_toLength = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/toLength.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var MAX_ARRAY_LENGTH = require_MAX_ARRAY_LENGTH();
    var clamp2 = require_clamp();
    function toLength(value) {
      if (value == null) {
        return 0;
      }
      const length = Math.floor(Number(value));
      return clamp2.clamp(length, 0, MAX_ARRAY_LENGTH.MAX_ARRAY_LENGTH);
    }
    exports2.toLength = toLength;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/toPlainObject.js
var require_toPlainObject = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/toPlainObject.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var keysIn = require_keysIn();
    function toPlainObject(value) {
      const plainObject = {};
      const valueKeys = keysIn.keysIn(value);
      for (let i2 = 0; i2 < valueKeys.length; i2++) {
        const key = valueKeys[i2];
        const objValue = value[key];
        if (key === "__proto__") {
          Object.defineProperty(plainObject, key, {
            configurable: true,
            enumerable: true,
            value: objValue,
            writable: true
          });
        } else {
          plainObject[key] = objValue;
        }
      }
      return plainObject;
    }
    exports2.toPlainObject = toPlainObject;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/toSafeInteger.js
var require_toSafeInteger = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/toSafeInteger.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var toInteger = require_toInteger();
    var MAX_SAFE_INTEGER = require_MAX_SAFE_INTEGER();
    var clamp2 = require_clamp();
    function toSafeInteger(value) {
      if (value == null) {
        return 0;
      }
      return clamp2.clamp(toInteger.toInteger(value), -MAX_SAFE_INTEGER.MAX_SAFE_INTEGER, MAX_SAFE_INTEGER.MAX_SAFE_INTEGER);
    }
    exports2.toSafeInteger = toSafeInteger;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/uniqueId.js
var require_uniqueId = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/util/uniqueId.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var idCounter = 0;
    function uniqueId(prefix = "") {
      const id = ++idCounter;
      return `${prefix}${id}`;
    }
    exports2.uniqueId = uniqueId;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/compat.js
var require_compat = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/compat.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var castArray = require_castArray();
    var chunk = require_chunk2();
    var compact = require_compact2();
    var concat = require_concat();
    var countBy = require_countBy();
    var difference3 = require_difference2();
    var differenceBy = require_differenceBy2();
    var differenceWith = require_differenceWith2();
    var drop = require_drop2();
    var dropRight = require_dropRight2();
    var dropRightWhile = require_dropRightWhile2();
    var dropWhile = require_dropWhile2();
    var forEach = require_forEach();
    var forEachRight = require_forEachRight();
    var every = require_every();
    var fill = require_fill2();
    var filter14 = require_filter();
    var find = require_find();
    var findIndex = require_findIndex();
    var findLast = require_findLast();
    var findLastIndex = require_findLastIndex();
    var head2 = require_head2();
    var flatMap = require_flatMap();
    var flatMapDeep = require_flatMapDeep();
    var flatMapDepth = require_flatMapDepth();
    var flatten2 = require_flatten2();
    var flattenDeep = require_flattenDeep();
    var flattenDepth = require_flattenDepth();
    var groupBy4 = require_groupBy2();
    var includes = require_includes();
    var indexOf2 = require_indexOf();
    var initial = require_initial2();
    var intersection = require_intersection2();
    var intersectionBy = require_intersectionBy2();
    var intersectionWith = require_intersectionWith2();
    var invokeMap = require_invokeMap();
    var join3 = require_join();
    var keyBy = require_keyBy();
    var last = require_last2();
    var lastIndexOf = require_lastIndexOf();
    var map26 = require_map3();
    var nth3 = require_nth();
    var orderBy = require_orderBy();
    var partition3 = require_partition();
    var pull = require_pull2();
    var pullAll = require_pullAll();
    var pullAllBy = require_pullAllBy();
    var pullAllWith = require_pullAllWith();
    var pullAt = require_pullAt();
    var reduce4 = require_reduce();
    var reduceRight = require_reduceRight();
    var reject3 = require_reject();
    var remove = require_remove4();
    var reverse3 = require_reverse2();
    var sample = require_sample2();
    var sampleSize = require_sampleSize2();
    var shuffle = require_shuffle2();
    var size = require_size();
    var slice3 = require_slice();
    var some = require_some();
    var sortBy3 = require_sortBy();
    var sortedIndex = require_sortedIndex();
    var sortedIndexBy = require_sortedIndexBy();
    var sortedIndexOf = require_sortedIndexOf();
    var sortedLastIndex = require_sortedLastIndex();
    var sortedLastIndexBy = require_sortedLastIndexBy();
    var sortedLastIndexOf = require_sortedLastIndexOf();
    var tail2 = require_tail2();
    var take10 = require_take2();
    var takeRight = require_takeRight2();
    var takeRightWhile = require_takeRightWhile();
    var takeWhile2 = require_takeWhile();
    var union2 = require_union();
    var unionBy = require_unionBy();
    var unionWith = require_unionWith();
    var uniq3 = require_uniq2();
    var uniqBy2 = require_uniqBy2();
    var uniqWith = require_uniqWith2();
    var unzip = require_unzip2();
    var unzipWith = require_unzipWith();
    var without2 = require_without2();
    var xor = require_xor();
    var xorBy = require_xorBy();
    var xorWith = require_xorWith();
    var zip = require_zip2();
    var zipObject = require_zipObject();
    var zipObjectDeep = require_zipObjectDeep();
    var zipWith3 = require_zipWith();
    var after = require_after();
    var ary = require_ary2();
    var attempt = require_attempt();
    var before = require_before();
    var bind3 = require_bind();
    var bindKey = require_bindKey();
    var curry = require_curry();
    var curryRight = require_curryRight();
    var debounce = require_debounce2();
    var defer = require_defer();
    var delay = require_delay();
    var flip3 = require_flip();
    var flow = require_flow2();
    var flowRight = require_flowRight2();
    var memoize2 = require_memoize();
    var negate = require_negate();
    var nthArg = require_nthArg();
    var once11 = require_once2();
    var overArgs = require_overArgs();
    var partial = require_partial3();
    var partialRight = require_partialRight2();
    var rearg = require_rearg();
    var rest = require_rest2();
    var spread = require_spread();
    var throttle2 = require_throttle();
    var unary = require_unary();
    var wrap = require_wrap();
    var add = require_add();
    var ceil = require_ceil();
    var clamp2 = require_clamp();
    var divide2 = require_divide();
    var floor = require_floor();
    var inRange = require_inRange2();
    var max3 = require_max();
    var maxBy = require_maxBy2();
    var mean = require_mean();
    var meanBy = require_meanBy2();
    var min = require_min();
    var minBy = require_minBy2();
    var multiply = require_multiply();
    var parseInt2 = require_parseInt();
    var random = require_random2();
    var range = require_range3();
    var rangeRight = require_rangeRight();
    var round = require_round();
    var subtract = require_subtract();
    var sum = require_sum();
    var sumBy = require_sumBy();
    var isEqual2 = require_isEqual();
    var identity5 = require_identity3();
    var noop5 = require_noop2();
    var assign = require_assign();
    var assignIn = require_assignIn();
    var assignInWith = require_assignInWith();
    var assignWith = require_assignWith();
    var at = require_at();
    var clone3 = require_clone2();
    var cloneDeep = require_cloneDeep2();
    var cloneDeepWith = require_cloneDeepWith2();
    var cloneWith = require_cloneWith();
    var create = require_create();
    var defaults4 = require_defaults();
    var defaultsDeep = require_defaultsDeep();
    var findKey = require_findKey2();
    var findLastKey = require_findLastKey();
    var forIn = require_forIn();
    var forInRight = require_forInRight();
    var forOwn = require_forOwn();
    var forOwnRight = require_forOwnRight();
    var fromPairs = require_fromPairs();
    var functions = require_functions();
    var functionsIn = require_functionsIn();
    var get = require_get2();
    var has = require_has();
    var hasIn = require_hasIn();
    var invert = require_invert2();
    var invertBy = require_invertBy();
    var keys4 = require_keys();
    var keysIn = require_keysIn();
    var mapKeys = require_mapKeys2();
    var mapValues2 = require_mapValues2();
    var merge7 = require_merge4();
    var mergeWith = require_mergeWith();
    var omit3 = require_omit();
    var omitBy = require_omitBy();
    var pick3 = require_pick();
    var pickBy3 = require_pickBy();
    var property = require_property();
    var propertyOf = require_propertyOf();
    var result2 = require_result();
    var set2 = require_set3();
    var setWith = require_setWith();
    var toDefaulted = require_toDefaulted();
    var toPairs = require_toPairs();
    var toPairsIn = require_toPairsIn();
    var transform2 = require_transform();
    var unset = require_unset();
    var update2 = require_update();
    var updateWith = require_updateWith();
    var values = require_values();
    var valuesIn = require_valuesIn();
    var isFunction = require_isFunction2();
    var isLength = require_isLength2();
    var isMatchWith = require_isMatchWith();
    var isNative = require_isNative();
    var isNull2 = require_isNull2();
    var isUndefined = require_isUndefined2();
    var conforms = require_conforms();
    var conformsTo = require_conformsTo();
    var isArguments = require_isArguments();
    var isArray = require_isArray();
    var isArrayBuffer2 = require_isArrayBuffer2();
    var isArrayLike2 = require_isArrayLike();
    var isArrayLikeObject = require_isArrayLikeObject();
    var isBoolean2 = require_isBoolean();
    var isBuffer = require_isBuffer2();
    var isDate = require_isDate2();
    var isElement = require_isElement();
    var isEmpty4 = require_isEmpty();
    var isEqualWith = require_isEqualWith2();
    var isError = require_isError();
    var isFinite2 = require_isFinite();
    var isInteger2 = require_isInteger();
    var isMap = require_isMap2();
    var isMatch = require_isMatch();
    var isNaN2 = require_isNaN();
    var isNil = require_isNil2();
    var isNumber = require_isNumber();
    var isObject4 = require_isObject();
    var isObjectLike = require_isObjectLike();
    var isPlainObject4 = require_isPlainObject2();
    var isRegExp = require_isRegExp2();
    var isSafeInteger = require_isSafeInteger();
    var isSet = require_isSet2();
    var isString = require_isString();
    var isSymbol = require_isSymbol();
    var isTypedArray = require_isTypedArray2();
    var isWeakMap = require_isWeakMap2();
    var isWeakSet = require_isWeakSet2();
    var matches2 = require_matches();
    var matchesProperty = require_matchesProperty();
    var capitalize = require_capitalize2();
    var bindAll = require_bindAll();
    var camelCase2 = require_camelCase2();
    var deburr2 = require_deburr2();
    var endsWith = require_endsWith();
    var escape = require_escape4();
    var escapeRegExp3 = require_escapeRegExp2();
    var kebabCase6 = require_kebabCase2();
    var lowerCase = require_lowerCase2();
    var lowerFirst = require_lowerFirst2();
    var pad3 = require_pad2();
    var padEnd = require_padEnd();
    var padStart2 = require_padStart();
    var repeat4 = require_repeat();
    var replace = require_replace();
    var snakeCase = require_snakeCase2();
    var split2 = require_split();
    var startCase = require_startCase();
    var startsWith = require_startsWith();
    var template = require_template();
    var toLower = require_toLower();
    var toUpper = require_toUpper();
    var trim = require_trim2();
    var trimEnd = require_trimEnd2();
    var trimStart = require_trimStart2();
    var truncate = require_truncate3();
    var unescape2 = require_unescape3();
    var upperCase = require_upperCase2();
    var upperFirst = require_upperFirst2();
    var words = require_words2();
    var cond = require_cond();
    var constant = require_constant();
    var defaultTo = require_defaultTo();
    var isEqualsSameValueZero = require_isEqualsSameValueZero();
    var gt = require_gt2();
    var gte = require_gte2();
    var invoke = require_invoke();
    var iteratee = require_iteratee();
    var lt = require_lt2();
    var lte = require_lte2();
    var method = require_method();
    var methodOf = require_methodOf();
    var now = require_now();
    var over = require_over();
    var overEvery = require_overEvery();
    var overSome = require_overSome();
    var stubArray = require_stubArray();
    var stubFalse = require_stubFalse();
    var stubObject = require_stubObject();
    var stubString = require_stubString();
    var stubTrue = require_stubTrue();
    var times3 = require_times();
    var toArray2 = require_toArray2();
    var toFinite = require_toFinite();
    var toInteger = require_toInteger();
    var toLength = require_toLength();
    var toNumber = require_toNumber();
    var toPath4 = require_toPath();
    var toPlainObject = require_toPlainObject();
    var toSafeInteger = require_toSafeInteger();
    var toString4 = require_toString();
    var uniqueId = require_uniqueId();
    exports2.castArray = castArray.castArray;
    exports2.chunk = chunk.chunk;
    exports2.compact = compact.compact;
    exports2.concat = concat.concat;
    exports2.countBy = countBy.countBy;
    exports2.difference = difference3.difference;
    exports2.differenceBy = differenceBy.differenceBy;
    exports2.differenceWith = differenceWith.differenceWith;
    exports2.drop = drop.drop;
    exports2.dropRight = dropRight.dropRight;
    exports2.dropRightWhile = dropRightWhile.dropRightWhile;
    exports2.dropWhile = dropWhile.dropWhile;
    exports2.each = forEach.forEach;
    exports2.forEach = forEach.forEach;
    exports2.eachRight = forEachRight.forEachRight;
    exports2.forEachRight = forEachRight.forEachRight;
    exports2.every = every.every;
    exports2.fill = fill.fill;
    exports2.filter = filter14.filter;
    exports2.find = find.find;
    exports2.findIndex = findIndex.findIndex;
    exports2.findLast = findLast.findLast;
    exports2.findLastIndex = findLastIndex.findLastIndex;
    exports2.first = head2.head;
    exports2.head = head2.head;
    exports2.flatMap = flatMap.flatMap;
    exports2.flatMapDeep = flatMapDeep.flatMapDeep;
    exports2.flatMapDepth = flatMapDepth.flatMapDepth;
    exports2.flatten = flatten2.flatten;
    exports2.flattenDeep = flattenDeep.flattenDeep;
    exports2.flattenDepth = flattenDepth.flattenDepth;
    exports2.groupBy = groupBy4.groupBy;
    exports2.includes = includes.includes;
    exports2.indexOf = indexOf2.indexOf;
    exports2.initial = initial.initial;
    exports2.intersection = intersection.intersection;
    exports2.intersectionBy = intersectionBy.intersectionBy;
    exports2.intersectionWith = intersectionWith.intersectionWith;
    exports2.invokeMap = invokeMap.invokeMap;
    exports2.join = join3.join;
    exports2.keyBy = keyBy.keyBy;
    exports2.last = last.last;
    exports2.lastIndexOf = lastIndexOf.lastIndexOf;
    exports2.map = map26.map;
    exports2.nth = nth3.nth;
    exports2.orderBy = orderBy.orderBy;
    exports2.partition = partition3.partition;
    exports2.pull = pull.pull;
    exports2.pullAll = pullAll.pullAll;
    exports2.pullAllBy = pullAllBy.pullAllBy;
    exports2.pullAllWith = pullAllWith.pullAllWith;
    exports2.pullAt = pullAt.pullAt;
    exports2.reduce = reduce4.reduce;
    exports2.reduceRight = reduceRight.reduceRight;
    exports2.reject = reject3.reject;
    exports2.remove = remove.remove;
    exports2.reverse = reverse3.reverse;
    exports2.sample = sample.sample;
    exports2.sampleSize = sampleSize.sampleSize;
    exports2.shuffle = shuffle.shuffle;
    exports2.size = size.size;
    exports2.slice = slice3.slice;
    exports2.some = some.some;
    exports2.sortBy = sortBy3.sortBy;
    exports2.sortedIndex = sortedIndex.sortedIndex;
    exports2.sortedIndexBy = sortedIndexBy.sortedIndexBy;
    exports2.sortedIndexOf = sortedIndexOf.sortedIndexOf;
    exports2.sortedLastIndex = sortedLastIndex.sortedLastIndex;
    exports2.sortedLastIndexBy = sortedLastIndexBy.sortedLastIndexBy;
    exports2.sortedLastIndexOf = sortedLastIndexOf.sortedLastIndexOf;
    exports2.tail = tail2.tail;
    exports2.take = take10.take;
    exports2.takeRight = takeRight.takeRight;
    exports2.takeRightWhile = takeRightWhile.takeRightWhile;
    exports2.takeWhile = takeWhile2.takeWhile;
    exports2.union = union2.union;
    exports2.unionBy = unionBy.unionBy;
    exports2.unionWith = unionWith.unionWith;
    exports2.uniq = uniq3.uniq;
    exports2.uniqBy = uniqBy2.uniqBy;
    exports2.uniqWith = uniqWith.uniqWith;
    exports2.unzip = unzip.unzip;
    exports2.unzipWith = unzipWith.unzipWith;
    exports2.without = without2.without;
    exports2.xor = xor.xor;
    exports2.xorBy = xorBy.xorBy;
    exports2.xorWith = xorWith.xorWith;
    exports2.zip = zip.zip;
    exports2.zipObject = zipObject.zipObject;
    exports2.zipObjectDeep = zipObjectDeep.zipObjectDeep;
    exports2.zipWith = zipWith3.zipWith;
    exports2.after = after.after;
    exports2.ary = ary.ary;
    exports2.attempt = attempt.attempt;
    exports2.before = before.before;
    exports2.bind = bind3.bind;
    exports2.bindKey = bindKey.bindKey;
    exports2.curry = curry.curry;
    exports2.curryRight = curryRight.curryRight;
    exports2.debounce = debounce.debounce;
    exports2.defer = defer.defer;
    exports2.delay = delay.delay;
    exports2.flip = flip3.flip;
    exports2.flow = flow.flow;
    exports2.flowRight = flowRight.flowRight;
    exports2.memoize = memoize2.memoize;
    exports2.negate = negate.negate;
    exports2.nthArg = nthArg.nthArg;
    exports2.once = once11.once;
    exports2.overArgs = overArgs.overArgs;
    exports2.partial = partial.partial;
    exports2.partialRight = partialRight.partialRight;
    exports2.rearg = rearg.rearg;
    exports2.rest = rest.rest;
    exports2.spread = spread.spread;
    exports2.throttle = throttle2.throttle;
    exports2.unary = unary.unary;
    exports2.wrap = wrap.wrap;
    exports2.add = add.add;
    exports2.ceil = ceil.ceil;
    exports2.clamp = clamp2.clamp;
    exports2.divide = divide2.divide;
    exports2.floor = floor.floor;
    exports2.inRange = inRange.inRange;
    exports2.max = max3.max;
    exports2.maxBy = maxBy.maxBy;
    exports2.mean = mean.mean;
    exports2.meanBy = meanBy.meanBy;
    exports2.min = min.min;
    exports2.minBy = minBy.minBy;
    exports2.multiply = multiply.multiply;
    exports2.parseInt = parseInt2.parseInt;
    exports2.random = random.random;
    exports2.range = range.range;
    exports2.rangeRight = rangeRight.rangeRight;
    exports2.round = round.round;
    exports2.subtract = subtract.subtract;
    exports2.sum = sum.sum;
    exports2.sumBy = sumBy.sumBy;
    exports2.isEqual = isEqual2.isEqual;
    exports2.identity = identity5.identity;
    exports2.noop = noop5.noop;
    exports2.assign = assign.assign;
    exports2.assignIn = assignIn.assignIn;
    exports2.extend = assignIn.assignIn;
    exports2.assignInWith = assignInWith.assignInWith;
    exports2.extendWith = assignInWith.assignInWith;
    exports2.assignWith = assignWith.assignWith;
    exports2.at = at.at;
    exports2.clone = clone3.clone;
    exports2.cloneDeep = cloneDeep.cloneDeep;
    exports2.cloneDeepWith = cloneDeepWith.cloneDeepWith;
    exports2.cloneWith = cloneWith.cloneWith;
    exports2.create = create.create;
    exports2.defaults = defaults4.defaults;
    exports2.defaultsDeep = defaultsDeep.defaultsDeep;
    exports2.findKey = findKey.findKey;
    exports2.findLastKey = findLastKey.findLastKey;
    exports2.forIn = forIn.forIn;
    exports2.forInRight = forInRight.forInRight;
    exports2.forOwn = forOwn.forOwn;
    exports2.forOwnRight = forOwnRight.forOwnRight;
    exports2.fromPairs = fromPairs.fromPairs;
    exports2.functions = functions.functions;
    exports2.functionsIn = functionsIn.functionsIn;
    exports2.get = get.get;
    exports2.has = has.has;
    exports2.hasIn = hasIn.hasIn;
    exports2.invert = invert.invert;
    exports2.invertBy = invertBy.invertBy;
    exports2.keys = keys4.keys;
    exports2.keysIn = keysIn.keysIn;
    exports2.mapKeys = mapKeys.mapKeys;
    exports2.mapValues = mapValues2.mapValues;
    exports2.merge = merge7.merge;
    exports2.mergeWith = mergeWith.mergeWith;
    exports2.omit = omit3.omit;
    exports2.omitBy = omitBy.omitBy;
    exports2.pick = pick3.pick;
    exports2.pickBy = pickBy3.pickBy;
    exports2.property = property.property;
    exports2.propertyOf = propertyOf.propertyOf;
    exports2.result = result2.result;
    exports2.set = set2.set;
    exports2.setWith = setWith.setWith;
    exports2.toDefaulted = toDefaulted.toDefaulted;
    exports2.toPairs = toPairs.toPairs;
    exports2.toPairsIn = toPairsIn.toPairsIn;
    exports2.transform = transform2.transform;
    exports2.unset = unset.unset;
    exports2.update = update2.update;
    exports2.updateWith = updateWith.updateWith;
    exports2.values = values.values;
    exports2.valuesIn = valuesIn.valuesIn;
    exports2.isFunction = isFunction.isFunction;
    exports2.isLength = isLength.isLength;
    exports2.isMatchWith = isMatchWith.isMatchWith;
    exports2.isNative = isNative.isNative;
    exports2.isNull = isNull2.isNull;
    exports2.isUndefined = isUndefined.isUndefined;
    exports2.conforms = conforms.conforms;
    exports2.conformsTo = conformsTo.conformsTo;
    exports2.isArguments = isArguments.isArguments;
    exports2.isArray = isArray.isArray;
    exports2.isArrayBuffer = isArrayBuffer2.isArrayBuffer;
    exports2.isArrayLike = isArrayLike2.isArrayLike;
    exports2.isArrayLikeObject = isArrayLikeObject.isArrayLikeObject;
    exports2.isBoolean = isBoolean2.isBoolean;
    exports2.isBuffer = isBuffer.isBuffer;
    exports2.isDate = isDate.isDate;
    exports2.isElement = isElement.isElement;
    exports2.isEmpty = isEmpty4.isEmpty;
    exports2.isEqualWith = isEqualWith.isEqualWith;
    exports2.isError = isError.isError;
    exports2.isFinite = isFinite2.isFinite;
    exports2.isInteger = isInteger2.isInteger;
    exports2.isMap = isMap.isMap;
    exports2.isMatch = isMatch.isMatch;
    exports2.isNaN = isNaN2.isNaN;
    exports2.isNil = isNil.isNil;
    exports2.isNumber = isNumber.isNumber;
    exports2.isObject = isObject4.isObject;
    exports2.isObjectLike = isObjectLike.isObjectLike;
    exports2.isPlainObject = isPlainObject4.isPlainObject;
    exports2.isRegExp = isRegExp.isRegExp;
    exports2.isSafeInteger = isSafeInteger.isSafeInteger;
    exports2.isSet = isSet.isSet;
    exports2.isString = isString.isString;
    exports2.isSymbol = isSymbol.isSymbol;
    exports2.isTypedArray = isTypedArray.isTypedArray;
    exports2.isWeakMap = isWeakMap.isWeakMap;
    exports2.isWeakSet = isWeakSet.isWeakSet;
    exports2.matches = matches2.matches;
    exports2.matchesProperty = matchesProperty.matchesProperty;
    exports2.capitalize = capitalize.capitalize;
    exports2.bindAll = bindAll.bindAll;
    exports2.camelCase = camelCase2.camelCase;
    exports2.deburr = deburr2.deburr;
    exports2.endsWith = endsWith.endsWith;
    exports2.escape = escape.escape;
    exports2.escapeRegExp = escapeRegExp3.escapeRegExp;
    exports2.kebabCase = kebabCase6.kebabCase;
    exports2.lowerCase = lowerCase.lowerCase;
    exports2.lowerFirst = lowerFirst.lowerFirst;
    exports2.pad = pad3.pad;
    exports2.padEnd = padEnd.padEnd;
    exports2.padStart = padStart2.padStart;
    exports2.repeat = repeat4.repeat;
    exports2.replace = replace.replace;
    exports2.snakeCase = snakeCase.snakeCase;
    exports2.split = split2.split;
    exports2.startCase = startCase.startCase;
    exports2.startsWith = startsWith.startsWith;
    exports2.template = template.template;
    exports2.templateSettings = template.templateSettings;
    exports2.toLower = toLower.toLower;
    exports2.toUpper = toUpper.toUpper;
    exports2.trim = trim.trim;
    exports2.trimEnd = trimEnd.trimEnd;
    exports2.trimStart = trimStart.trimStart;
    exports2.truncate = truncate.truncate;
    exports2.unescape = unescape2.unescape;
    exports2.upperCase = upperCase.upperCase;
    exports2.upperFirst = upperFirst.upperFirst;
    exports2.words = words.words;
    exports2.cond = cond.cond;
    exports2.constant = constant.constant;
    exports2.defaultTo = defaultTo.defaultTo;
    exports2.eq = isEqualsSameValueZero.isEqualsSameValueZero;
    exports2.gt = gt.gt;
    exports2.gte = gte.gte;
    exports2.invoke = invoke.invoke;
    exports2.iteratee = iteratee.iteratee;
    exports2.lt = lt.lt;
    exports2.lte = lte.lte;
    exports2.method = method.method;
    exports2.methodOf = methodOf.methodOf;
    exports2.now = now.now;
    exports2.over = over.over;
    exports2.overEvery = overEvery.overEvery;
    exports2.overSome = overSome.overSome;
    exports2.stubArray = stubArray.stubArray;
    exports2.stubFalse = stubFalse.stubFalse;
    exports2.stubObject = stubObject.stubObject;
    exports2.stubString = stubString.stubString;
    exports2.stubTrue = stubTrue.stubTrue;
    exports2.times = times3.times;
    exports2.toArray = toArray2.toArray;
    exports2.toFinite = toFinite.toFinite;
    exports2.toInteger = toInteger.toInteger;
    exports2.toLength = toLength.toLength;
    exports2.toNumber = toNumber.toNumber;
    exports2.toPath = toPath4.toPath;
    exports2.toPlainObject = toPlainObject.toPlainObject;
    exports2.toSafeInteger = toSafeInteger.toSafeInteger;
    exports2.toString = toString4.toString;
    exports2.uniqueId = uniqueId.uniqueId;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/toolkit.js
var require_toolkit = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/toolkit.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" });
    var compat = require_compat();
    var toolkit = ((value) => {
      return value;
    });
    Object.assign(toolkit, compat);
    toolkit.partial.placeholder = toolkit;
    toolkit.partialRight.placeholder = toolkit;
    exports2.toolkit = toolkit;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/index.js
var require_compat2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-toolkit/1.46.1/73838f58f86c2ad14764f1a9ffd037c9ac5a0e00c73220f4615797d8bcb8ef82/node_modules/es-toolkit/dist/compat/index.js"(exports2) {
    "use strict";
    Object.defineProperties(exports2, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
    var castArray = require_castArray();
    var chunk = require_chunk2();
    var compact = require_compact2();
    var concat = require_concat();
    var countBy = require_countBy();
    var difference3 = require_difference2();
    var differenceBy = require_differenceBy2();
    var differenceWith = require_differenceWith2();
    var drop = require_drop2();
    var dropRight = require_dropRight2();
    var dropRightWhile = require_dropRightWhile2();
    var dropWhile = require_dropWhile2();
    var forEach = require_forEach();
    var forEachRight = require_forEachRight();
    var every = require_every();
    var fill = require_fill2();
    var filter14 = require_filter();
    var find = require_find();
    var findIndex = require_findIndex();
    var findLast = require_findLast();
    var findLastIndex = require_findLastIndex();
    var head2 = require_head2();
    var flatMap = require_flatMap();
    var flatMapDeep = require_flatMapDeep();
    var flatMapDepth = require_flatMapDepth();
    var flatten2 = require_flatten2();
    var flattenDeep = require_flattenDeep();
    var flattenDepth = require_flattenDepth();
    var groupBy4 = require_groupBy2();
    var includes = require_includes();
    var indexOf2 = require_indexOf();
    var initial = require_initial2();
    var intersection = require_intersection2();
    var intersectionBy = require_intersectionBy2();
    var intersectionWith = require_intersectionWith2();
    var invokeMap = require_invokeMap();
    var join3 = require_join();
    var keyBy = require_keyBy();
    var last = require_last2();
    var lastIndexOf = require_lastIndexOf();
    var map26 = require_map3();
    var nth3 = require_nth();
    var orderBy = require_orderBy();
    var partition3 = require_partition();
    var pull = require_pull2();
    var pullAll = require_pullAll();
    var pullAllBy = require_pullAllBy();
    var pullAllWith = require_pullAllWith();
    var pullAt = require_pullAt();
    var reduce4 = require_reduce();
    var reduceRight = require_reduceRight();
    var reject3 = require_reject();
    var remove = require_remove4();
    var reverse3 = require_reverse2();
    var sample = require_sample2();
    var sampleSize = require_sampleSize2();
    var shuffle = require_shuffle2();
    var size = require_size();
    var slice3 = require_slice();
    var some = require_some();
    var sortBy3 = require_sortBy();
    var sortedIndex = require_sortedIndex();
    var sortedIndexBy = require_sortedIndexBy();
    var sortedIndexOf = require_sortedIndexOf();
    var sortedLastIndex = require_sortedLastIndex();
    var sortedLastIndexBy = require_sortedLastIndexBy();
    var sortedLastIndexOf = require_sortedLastIndexOf();
    var tail2 = require_tail2();
    var take10 = require_take2();
    var takeRight = require_takeRight2();
    var takeRightWhile = require_takeRightWhile();
    var takeWhile2 = require_takeWhile();
    var union2 = require_union();
    var unionBy = require_unionBy();
    var unionWith = require_unionWith();
    var uniq3 = require_uniq2();
    var uniqBy2 = require_uniqBy2();
    var uniqWith = require_uniqWith2();
    var unzip = require_unzip2();
    var unzipWith = require_unzipWith();
    var without2 = require_without2();
    var xor = require_xor();
    var xorBy = require_xorBy();
    var xorWith = require_xorWith();
    var zip = require_zip2();
    var zipObject = require_zipObject();
    var zipObjectDeep = require_zipObjectDeep();
    var zipWith3 = require_zipWith();
    var after = require_after();
    var ary = require_ary2();
    var attempt = require_attempt();
    var before = require_before();
    var bind3 = require_bind();
    var bindKey = require_bindKey();
    var curry = require_curry();
    var curryRight = require_curryRight();
    var debounce = require_debounce2();
    var defer = require_defer();
    var delay = require_delay();
    var flip3 = require_flip();
    var flow = require_flow2();
    var flowRight = require_flowRight2();
    var memoize2 = require_memoize();
    var negate = require_negate();
    var nthArg = require_nthArg();
    var once11 = require_once2();
    var overArgs = require_overArgs();
    var partial = require_partial3();
    var partialRight = require_partialRight2();
    var rearg = require_rearg();
    var rest = require_rest2();
    var spread = require_spread();
    var throttle2 = require_throttle();
    var unary = require_unary();
    var wrap = require_wrap();
    var add = require_add();
    var ceil = require_ceil();
    var clamp2 = require_clamp();
    var divide2 = require_divide();
    var floor = require_floor();
    var inRange = require_inRange2();
    var max3 = require_max();
    var maxBy = require_maxBy2();
    var mean = require_mean();
    var meanBy = require_meanBy2();
    var min = require_min();
    var minBy = require_minBy2();
    var multiply = require_multiply();
    var parseInt2 = require_parseInt();
    var random = require_random2();
    var range = require_range3();
    var rangeRight = require_rangeRight();
    var round = require_round();
    var subtract = require_subtract();
    var sum = require_sum();
    var sumBy = require_sumBy();
    var isEqual2 = require_isEqual();
    var identity5 = require_identity3();
    var noop5 = require_noop2();
    var assign = require_assign();
    var assignIn = require_assignIn();
    var assignInWith = require_assignInWith();
    var assignWith = require_assignWith();
    var at = require_at();
    var clone3 = require_clone2();
    var cloneDeep = require_cloneDeep2();
    var cloneDeepWith = require_cloneDeepWith2();
    var cloneWith = require_cloneWith();
    var create = require_create();
    var defaults4 = require_defaults();
    var defaultsDeep = require_defaultsDeep();
    var findKey = require_findKey2();
    var findLastKey = require_findLastKey();
    var forIn = require_forIn();
    var forInRight = require_forInRight();
    var forOwn = require_forOwn();
    var forOwnRight = require_forOwnRight();
    var fromPairs = require_fromPairs();
    var functions = require_functions();
    var functionsIn = require_functionsIn();
    var get = require_get2();
    var has = require_has();
    var hasIn = require_hasIn();
    var invert = require_invert2();
    var invertBy = require_invertBy();
    var keys4 = require_keys();
    var keysIn = require_keysIn();
    var mapKeys = require_mapKeys2();
    var mapValues2 = require_mapValues2();
    var merge7 = require_merge4();
    var mergeWith = require_mergeWith();
    var omit3 = require_omit();
    var omitBy = require_omitBy();
    var pick3 = require_pick();
    var pickBy3 = require_pickBy();
    var property = require_property();
    var propertyOf = require_propertyOf();
    var result2 = require_result();
    var set2 = require_set3();
    var setWith = require_setWith();
    var toDefaulted = require_toDefaulted();
    var toPairs = require_toPairs();
    var toPairsIn = require_toPairsIn();
    var transform2 = require_transform();
    var unset = require_unset();
    var update2 = require_update();
    var updateWith = require_updateWith();
    var values = require_values();
    var valuesIn = require_valuesIn();
    var isFunction = require_isFunction2();
    var isLength = require_isLength2();
    var isMatchWith = require_isMatchWith();
    var isNative = require_isNative();
    var isNull2 = require_isNull2();
    var isUndefined = require_isUndefined2();
    var conforms = require_conforms();
    var conformsTo = require_conformsTo();
    var isArguments = require_isArguments();
    var isArray = require_isArray();
    var isArrayBuffer2 = require_isArrayBuffer2();
    var isArrayLike2 = require_isArrayLike();
    var isArrayLikeObject = require_isArrayLikeObject();
    var isBoolean2 = require_isBoolean();
    var isBuffer = require_isBuffer2();
    var isDate = require_isDate2();
    var isElement = require_isElement();
    var isEmpty4 = require_isEmpty();
    var isEqualWith = require_isEqualWith2();
    var isError = require_isError();
    var isFinite2 = require_isFinite();
    var isInteger2 = require_isInteger();
    var isMap = require_isMap2();
    var isMatch = require_isMatch();
    var isNaN2 = require_isNaN();
    var isNil = require_isNil2();
    var isNumber = require_isNumber();
    var isObject4 = require_isObject();
    var isObjectLike = require_isObjectLike();
    var isPlainObject4 = require_isPlainObject2();
    var isRegExp = require_isRegExp2();
    var isSafeInteger = require_isSafeInteger();
    var isSet = require_isSet2();
    var isString = require_isString();
    var isSymbol = require_isSymbol();
    var isTypedArray = require_isTypedArray2();
    var isWeakMap = require_isWeakMap2();
    var isWeakSet = require_isWeakSet2();
    var matches2 = require_matches();
    var matchesProperty = require_matchesProperty();
    var capitalize = require_capitalize2();
    var bindAll = require_bindAll();
    var camelCase2 = require_camelCase2();
    var deburr2 = require_deburr2();
    var endsWith = require_endsWith();
    var escape = require_escape4();
    var escapeRegExp3 = require_escapeRegExp2();
    var kebabCase6 = require_kebabCase2();
    var lowerCase = require_lowerCase2();
    var lowerFirst = require_lowerFirst2();
    var pad3 = require_pad2();
    var padEnd = require_padEnd();
    var padStart2 = require_padStart();
    var repeat4 = require_repeat();
    var replace = require_replace();
    var snakeCase = require_snakeCase2();
    var split2 = require_split();
    var startCase = require_startCase();
    var startsWith = require_startsWith();
    var template = require_template();
    var toLower = require_toLower();
    var toUpper = require_toUpper();
    var trim = require_trim2();
    var trimEnd = require_trimEnd2();
    var trimStart = require_trimStart2();
    var truncate = require_truncate3();
    var unescape2 = require_unescape3();
    var upperCase = require_upperCase2();
    var upperFirst = require_upperFirst2();
    var words = require_words2();
    var cond = require_cond();
    var constant = require_constant();
    var defaultTo = require_defaultTo();
    var isEqualsSameValueZero = require_isEqualsSameValueZero();
    var gt = require_gt2();
    var gte = require_gte2();
    var invoke = require_invoke();
    var iteratee = require_iteratee();
    var lt = require_lt2();
    var lte = require_lte2();
    var method = require_method();
    var methodOf = require_methodOf();
    var now = require_now();
    var over = require_over();
    var overEvery = require_overEvery();
    var overSome = require_overSome();
    var stubArray = require_stubArray();
    var stubFalse = require_stubFalse();
    var stubObject = require_stubObject();
    var stubString = require_stubString();
    var stubTrue = require_stubTrue();
    var times3 = require_times();
    var toArray2 = require_toArray2();
    var toFinite = require_toFinite();
    var toInteger = require_toInteger();
    var toLength = require_toLength();
    var toNumber = require_toNumber();
    var toPath4 = require_toPath();
    var toPlainObject = require_toPlainObject();
    var toSafeInteger = require_toSafeInteger();
    var toString4 = require_toString();
    var uniqueId = require_uniqueId();
    var toolkit = require_toolkit();
    exports2.castArray = castArray.castArray;
    exports2.chunk = chunk.chunk;
    exports2.compact = compact.compact;
    exports2.concat = concat.concat;
    exports2.countBy = countBy.countBy;
    exports2.difference = difference3.difference;
    exports2.differenceBy = differenceBy.differenceBy;
    exports2.differenceWith = differenceWith.differenceWith;
    exports2.drop = drop.drop;
    exports2.dropRight = dropRight.dropRight;
    exports2.dropRightWhile = dropRightWhile.dropRightWhile;
    exports2.dropWhile = dropWhile.dropWhile;
    exports2.each = forEach.forEach;
    exports2.forEach = forEach.forEach;
    exports2.eachRight = forEachRight.forEachRight;
    exports2.forEachRight = forEachRight.forEachRight;
    exports2.every = every.every;
    exports2.fill = fill.fill;
    exports2.filter = filter14.filter;
    exports2.find = find.find;
    exports2.findIndex = findIndex.findIndex;
    exports2.findLast = findLast.findLast;
    exports2.findLastIndex = findLastIndex.findLastIndex;
    exports2.first = head2.head;
    exports2.head = head2.head;
    exports2.flatMap = flatMap.flatMap;
    exports2.flatMapDeep = flatMapDeep.flatMapDeep;
    exports2.flatMapDepth = flatMapDepth.flatMapDepth;
    exports2.flatten = flatten2.flatten;
    exports2.flattenDeep = flattenDeep.flattenDeep;
    exports2.flattenDepth = flattenDepth.flattenDepth;
    exports2.groupBy = groupBy4.groupBy;
    exports2.includes = includes.includes;
    exports2.indexOf = indexOf2.indexOf;
    exports2.initial = initial.initial;
    exports2.intersection = intersection.intersection;
    exports2.intersectionBy = intersectionBy.intersectionBy;
    exports2.intersectionWith = intersectionWith.intersectionWith;
    exports2.invokeMap = invokeMap.invokeMap;
    exports2.join = join3.join;
    exports2.keyBy = keyBy.keyBy;
    exports2.last = last.last;
    exports2.lastIndexOf = lastIndexOf.lastIndexOf;
    exports2.map = map26.map;
    exports2.nth = nth3.nth;
    exports2.orderBy = orderBy.orderBy;
    exports2.partition = partition3.partition;
    exports2.pull = pull.pull;
    exports2.pullAll = pullAll.pullAll;
    exports2.pullAllBy = pullAllBy.pullAllBy;
    exports2.pullAllWith = pullAllWith.pullAllWith;
    exports2.pullAt = pullAt.pullAt;
    exports2.reduce = reduce4.reduce;
    exports2.reduceRight = reduceRight.reduceRight;
    exports2.reject = reject3.reject;
    exports2.remove = remove.remove;
    exports2.reverse = reverse3.reverse;
    exports2.sample = sample.sample;
    exports2.sampleSize = sampleSize.sampleSize;
    exports2.shuffle = shuffle.shuffle;
    exports2.size = size.size;
    exports2.slice = slice3.slice;
    exports2.some = some.some;
    exports2.sortBy = sortBy3.sortBy;
    exports2.sortedIndex = sortedIndex.sortedIndex;
    exports2.sortedIndexBy = sortedIndexBy.sortedIndexBy;
    exports2.sortedIndexOf = sortedIndexOf.sortedIndexOf;
    exports2.sortedLastIndex = sortedLastIndex.sortedLastIndex;
    exports2.sortedLastIndexBy = sortedLastIndexBy.sortedLastIndexBy;
    exports2.sortedLastIndexOf = sortedLastIndexOf.sortedLastIndexOf;
    exports2.tail = tail2.tail;
    exports2.take = take10.take;
    exports2.takeRight = takeRight.takeRight;
    exports2.takeRightWhile = takeRightWhile.takeRightWhile;
    exports2.takeWhile = takeWhile2.takeWhile;
    exports2.union = union2.union;
    exports2.unionBy = unionBy.unionBy;
    exports2.unionWith = unionWith.unionWith;
    exports2.uniq = uniq3.uniq;
    exports2.uniqBy = uniqBy2.uniqBy;
    exports2.uniqWith = uniqWith.uniqWith;
    exports2.unzip = unzip.unzip;
    exports2.unzipWith = unzipWith.unzipWith;
    exports2.without = without2.without;
    exports2.xor = xor.xor;
    exports2.xorBy = xorBy.xorBy;
    exports2.xorWith = xorWith.xorWith;
    exports2.zip = zip.zip;
    exports2.zipObject = zipObject.zipObject;
    exports2.zipObjectDeep = zipObjectDeep.zipObjectDeep;
    exports2.zipWith = zipWith3.zipWith;
    exports2.after = after.after;
    exports2.ary = ary.ary;
    exports2.attempt = attempt.attempt;
    exports2.before = before.before;
    exports2.bind = bind3.bind;
    exports2.bindKey = bindKey.bindKey;
    exports2.curry = curry.curry;
    exports2.curryRight = curryRight.curryRight;
    exports2.debounce = debounce.debounce;
    exports2.defer = defer.defer;
    exports2.delay = delay.delay;
    exports2.flip = flip3.flip;
    exports2.flow = flow.flow;
    exports2.flowRight = flowRight.flowRight;
    exports2.memoize = memoize2.memoize;
    exports2.negate = negate.negate;
    exports2.nthArg = nthArg.nthArg;
    exports2.once = once11.once;
    exports2.overArgs = overArgs.overArgs;
    exports2.partial = partial.partial;
    exports2.partialRight = partialRight.partialRight;
    exports2.rearg = rearg.rearg;
    exports2.rest = rest.rest;
    exports2.spread = spread.spread;
    exports2.throttle = throttle2.throttle;
    exports2.unary = unary.unary;
    exports2.wrap = wrap.wrap;
    exports2.add = add.add;
    exports2.ceil = ceil.ceil;
    exports2.clamp = clamp2.clamp;
    exports2.divide = divide2.divide;
    exports2.floor = floor.floor;
    exports2.inRange = inRange.inRange;
    exports2.max = max3.max;
    exports2.maxBy = maxBy.maxBy;
    exports2.mean = mean.mean;
    exports2.meanBy = meanBy.meanBy;
    exports2.min = min.min;
    exports2.minBy = minBy.minBy;
    exports2.multiply = multiply.multiply;
    exports2.parseInt = parseInt2.parseInt;
    exports2.random = random.random;
    exports2.range = range.range;
    exports2.rangeRight = rangeRight.rangeRight;
    exports2.round = round.round;
    exports2.subtract = subtract.subtract;
    exports2.sum = sum.sum;
    exports2.sumBy = sumBy.sumBy;
    exports2.isEqual = isEqual2.isEqual;
    exports2.identity = identity5.identity;
    exports2.noop = noop5.noop;
    exports2.assign = assign.assign;
    exports2.assignIn = assignIn.assignIn;
    exports2.extend = assignIn.assignIn;
    exports2.assignInWith = assignInWith.assignInWith;
    exports2.extendWith = assignInWith.assignInWith;
    exports2.assignWith = assignWith.assignWith;
    exports2.at = at.at;
    exports2.clone = clone3.clone;
    exports2.cloneDeep = cloneDeep.cloneDeep;
    exports2.cloneDeepWith = cloneDeepWith.cloneDeepWith;
    exports2.cloneWith = cloneWith.cloneWith;
    exports2.create = create.create;
    exports2.defaults = defaults4.defaults;
    exports2.defaultsDeep = defaultsDeep.defaultsDeep;
    exports2.findKey = findKey.findKey;
    exports2.findLastKey = findLastKey.findLastKey;
    exports2.forIn = forIn.forIn;
    exports2.forInRight = forInRight.forInRight;
    exports2.forOwn = forOwn.forOwn;
    exports2.forOwnRight = forOwnRight.forOwnRight;
    exports2.fromPairs = fromPairs.fromPairs;
    exports2.functions = functions.functions;
    exports2.functionsIn = functionsIn.functionsIn;
    exports2.get = get.get;
    exports2.has = has.has;
    exports2.hasIn = hasIn.hasIn;
    exports2.invert = invert.invert;
    exports2.invertBy = invertBy.invertBy;
    exports2.keys = keys4.keys;
    exports2.keysIn = keysIn.keysIn;
    exports2.mapKeys = mapKeys.mapKeys;
    exports2.mapValues = mapValues2.mapValues;
    exports2.merge = merge7.merge;
    exports2.mergeWith = mergeWith.mergeWith;
    exports2.omit = omit3.omit;
    exports2.omitBy = omitBy.omitBy;
    exports2.pick = pick3.pick;
    exports2.pickBy = pickBy3.pickBy;
    exports2.property = property.property;
    exports2.propertyOf = propertyOf.propertyOf;
    exports2.result = result2.result;
    exports2.set = set2.set;
    exports2.setWith = setWith.setWith;
    exports2.toDefaulted = toDefaulted.toDefaulted;
    exports2.toPairs = toPairs.toPairs;
    exports2.toPairsIn = toPairsIn.toPairsIn;
    exports2.transform = transform2.transform;
    exports2.unset = unset.unset;
    exports2.update = update2.update;
    exports2.updateWith = updateWith.updateWith;
    exports2.values = values.values;
    exports2.valuesIn = valuesIn.valuesIn;
    exports2.isFunction = isFunction.isFunction;
    exports2.isLength = isLength.isLength;
    exports2.isMatchWith = isMatchWith.isMatchWith;
    exports2.isNative = isNative.isNative;
    exports2.isNull = isNull2.isNull;
    exports2.isUndefined = isUndefined.isUndefined;
    exports2.conforms = conforms.conforms;
    exports2.conformsTo = conformsTo.conformsTo;
    exports2.isArguments = isArguments.isArguments;
    exports2.isArray = isArray.isArray;
    exports2.isArrayBuffer = isArrayBuffer2.isArrayBuffer;
    exports2.isArrayLike = isArrayLike2.isArrayLike;
    exports2.isArrayLikeObject = isArrayLikeObject.isArrayLikeObject;
    exports2.isBoolean = isBoolean2.isBoolean;
    exports2.isBuffer = isBuffer.isBuffer;
    exports2.isDate = isDate.isDate;
    exports2.isElement = isElement.isElement;
    exports2.isEmpty = isEmpty4.isEmpty;
    exports2.isEqualWith = isEqualWith.isEqualWith;
    exports2.isError = isError.isError;
    exports2.isFinite = isFinite2.isFinite;
    exports2.isInteger = isInteger2.isInteger;
    exports2.isMap = isMap.isMap;
    exports2.isMatch = isMatch.isMatch;
    exports2.isNaN = isNaN2.isNaN;
    exports2.isNil = isNil.isNil;
    exports2.isNumber = isNumber.isNumber;
    exports2.isObject = isObject4.isObject;
    exports2.isObjectLike = isObjectLike.isObjectLike;
    exports2.isPlainObject = isPlainObject4.isPlainObject;
    exports2.isRegExp = isRegExp.isRegExp;
    exports2.isSafeInteger = isSafeInteger.isSafeInteger;
    exports2.isSet = isSet.isSet;
    exports2.isString = isString.isString;
    exports2.isSymbol = isSymbol.isSymbol;
    exports2.isTypedArray = isTypedArray.isTypedArray;
    exports2.isWeakMap = isWeakMap.isWeakMap;
    exports2.isWeakSet = isWeakSet.isWeakSet;
    exports2.matches = matches2.matches;
    exports2.matchesProperty = matchesProperty.matchesProperty;
    exports2.capitalize = capitalize.capitalize;
    exports2.bindAll = bindAll.bindAll;
    exports2.camelCase = camelCase2.camelCase;
    exports2.deburr = deburr2.deburr;
    exports2.endsWith = endsWith.endsWith;
    exports2.escape = escape.escape;
    exports2.escapeRegExp = escapeRegExp3.escapeRegExp;
    exports2.kebabCase = kebabCase6.kebabCase;
    exports2.lowerCase = lowerCase.lowerCase;
    exports2.lowerFirst = lowerFirst.lowerFirst;
    exports2.pad = pad3.pad;
    exports2.padEnd = padEnd.padEnd;
    exports2.padStart = padStart2.padStart;
    exports2.repeat = repeat4.repeat;
    exports2.replace = replace.replace;
    exports2.snakeCase = snakeCase.snakeCase;
    exports2.split = split2.split;
    exports2.startCase = startCase.startCase;
    exports2.startsWith = startsWith.startsWith;
    exports2.template = template.template;
    exports2.templateSettings = template.templateSettings;
    exports2.toLower = toLower.toLower;
    exports2.toUpper = toUpper.toUpper;
    exports2.trim = trim.trim;
    exports2.trimEnd = trimEnd.trimEnd;
    exports2.trimStart = trimStart.trimStart;
    exports2.truncate = truncate.truncate;
    exports2.unescape = unescape2.unescape;
    exports2.upperCase = upperCase.upperCase;
    exports2.upperFirst = upperFirst.upperFirst;
    exports2.words = words.words;
    exports2.cond = cond.cond;
    exports2.constant = constant.constant;
    exports2.defaultTo = defaultTo.defaultTo;
    exports2.eq = isEqualsSameValueZero.isEqualsSameValueZero;
    exports2.gt = gt.gt;
    exports2.gte = gte.gte;
    exports2.invoke = invoke.invoke;
    exports2.iteratee = iteratee.iteratee;
    exports2.lt = lt.lt;
    exports2.lte = lte.lte;
    exports2.method = method.method;
    exports2.methodOf = methodOf.methodOf;
    exports2.now = now.now;
    exports2.over = over.over;
    exports2.overEvery = overEvery.overEvery;
    exports2.overSome = overSome.overSome;
    exports2.stubArray = stubArray.stubArray;
    exports2.stubFalse = stubFalse.stubFalse;
    exports2.stubObject = stubObject.stubObject;
    exports2.stubString = stubString.stubString;
    exports2.stubTrue = stubTrue.stubTrue;
    exports2.times = times3.times;
    exports2.toArray = toArray2.toArray;
    exports2.toFinite = toFinite.toFinite;
    exports2.toInteger = toInteger.toInteger;
    exports2.toLength = toLength.toLength;
    exports2.toNumber = toNumber.toNumber;
    exports2.toPath = toPath4.toPath;
    exports2.toPlainObject = toPlainObject.toPlainObject;
    exports2.toSafeInteger = toSafeInteger.toSafeInteger;
    exports2.toString = toString4.toString;
    exports2.uniqueId = uniqueId.uniqueId;
    exports2.default = toolkit.toolkit;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/p-try/2.2.0/2a3bb7d4662d1588ddca99166b04df704262848dc4df90020be8ece38fdef888/node_modules/p-try/index.js
var require_p_try = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/p-try/2.2.0/2a3bb7d4662d1588ddca99166b04df704262848dc4df90020be8ece38fdef888/node_modules/p-try/index.js"(exports2, module2) {
    "use strict";
    var pTry = (fn, ...arguments_) => new Promise((resolve3) => {
      resolve3(fn(...arguments_));
    });
    module2.exports = pTry;
    module2.exports.default = pTry;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/p-limit/2.3.0/cf2c24bf5ef53ffc442b94247bda1b5aa1ab0ac9b3dbe0892cad298d4be0eb79/node_modules/p-limit/index.js
var require_p_limit2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/p-limit/2.3.0/cf2c24bf5ef53ffc442b94247bda1b5aa1ab0ac9b3dbe0892cad298d4be0eb79/node_modules/p-limit/index.js"(exports2, module2) {
    "use strict";
    var pTry = require_p_try();
    var pLimit3 = (concurrency) => {
      if (!((Number.isInteger(concurrency) || concurrency === Infinity) && concurrency > 0)) {
        return Promise.reject(new TypeError("Expected `concurrency` to be a number from 1 and up"));
      }
      const queue2 = [];
      let activeCount = 0;
      const next2 = () => {
        activeCount--;
        if (queue2.length > 0) {
          queue2.shift()();
        }
      };
      const run = (fn, resolve3, ...args) => {
        activeCount++;
        const result2 = pTry(fn, ...args);
        resolve3(result2);
        result2.then(next2, next2);
      };
      const enqueue = (fn, resolve3, ...args) => {
        if (activeCount < concurrency) {
          run(fn, resolve3, ...args);
        } else {
          queue2.push(run.bind(null, fn, resolve3, ...args));
        }
      };
      const generator = (fn, ...args) => new Promise((resolve3) => enqueue(fn, resolve3, ...args));
      Object.defineProperties(generator, {
        activeCount: {
          get: () => activeCount
        },
        pendingCount: {
          get: () => queue2.length
        },
        clearQueue: {
          value: () => {
            queue2.length = 0;
          }
        }
      });
      return generator;
    };
    module2.exports = pLimit3;
    module2.exports.default = pLimit3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/core/4.5.0/1c6edf299c560e75f87368abe07278b2427232b51d92ec1973cdc6be0abe38bc/node_modules/@yarnpkg/core/lib/miscUtils.js
var require_miscUtils = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/core/4.5.0/1c6edf299c560e75f87368abe07278b2427232b51d92ec1973cdc6be0abe38bc/node_modules/@yarnpkg/core/lib/miscUtils.js"(exports, module) {
    "use strict";
    Object.defineProperty(exports, "__esModule", { value: true });
    exports.CachingStrategy = exports.DefaultStream = exports.AsyncActions = exports.BufferStream = void 0;
    exports.isTaggedYarnVersion = isTaggedYarnVersion;
    exports.plural = plural;
    exports.escapeRegExp = escapeRegExp;
    exports.overrideType = overrideType;
    exports.assertNever = assertNever;
    exports.validateEnum = validateEnum;
    exports.mapAndFilter = mapAndFilter;
    exports.mapAndFind = mapAndFind;
    exports.isIndexableObject = isIndexableObject;
    exports.allSettledSafe = allSettledSafe;
    exports.convertMapsToIndexableObjects = convertMapsToIndexableObjects;
    exports.getFactoryWithDefault = getFactoryWithDefault;
    exports.getArrayWithDefault = getArrayWithDefault;
    exports.getSetWithDefault = getSetWithDefault;
    exports.getMapWithDefault = getMapWithDefault;
    exports.releaseAfterUseAsync = releaseAfterUseAsync;
    exports.prettifyAsyncErrors = prettifyAsyncErrors;
    exports.prettifySyncErrors = prettifySyncErrors;
    exports.bufferStream = bufferStream;
    exports.makeDeferred = makeDeferred;
    exports.dynamicRequire = dynamicRequire;
    exports.sortMap = sortMap;
    exports.buildIgnorePattern = buildIgnorePattern;
    exports.replaceEnvVariables = replaceEnvVariables;
    exports.parseBoolean = parseBoolean;
    exports.parseOptionalBoolean = parseOptionalBoolean;
    exports.tryParseOptionalBoolean = tryParseOptionalBoolean;
    exports.isPathLike = isPathLike;
    exports.mergeIntoTarget = mergeIntoTarget;
    exports.toMerged = toMerged;
    exports.groupBy = groupBy;
    exports.parseInt = parseInt;
    exports.parseDuration = parseDuration;
    var tslib_1 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
    var fslib_1 = require_lib12();
    var clipanion_1 = require_advanced();
    var compat_1 = require_compat2();
    var micromatch_1 = tslib_1.__importDefault(require_micromatch());
    var p_limit_1 = tslib_1.__importDefault(require_p_limit2());
    var semver_1 = tslib_1.__importDefault(require_semver2());
    var stream_1 = __require("stream");
    function isTaggedYarnVersion(version2) {
      return !!(semver_1.default.valid(version2) && version2.match(/^[^-]+(-rc\.[0-9]+)?$/));
    }
    function plural(n2, { one, more, zero = more }) {
      return n2 === 0 ? zero : n2 === 1 ? one : more;
    }
    function escapeRegExp(str2) {
      return str2.replace(/[.*+?^${}()|[\]\\]/g, `\\$&`);
    }
    function overrideType(val) {
    }
    function assertNever(arg) {
      throw new Error(`Assertion failed: Unexpected object '${arg}'`);
    }
    function validateEnum(def, value) {
      const values = Object.values(def);
      if (!values.includes(value))
        throw new clipanion_1.UsageError(`Invalid value for enumeration: ${JSON.stringify(value)} (expected one of ${values.map((value2) => JSON.stringify(value2)).join(`, `)})`);
      return value;
    }
    function mapAndFilter(iterable, cb) {
      const output = [];
      for (const value of iterable) {
        const out = cb(value);
        if (out !== mapAndFilterSkip) {
          output.push(out);
        }
      }
      return output;
    }
    var mapAndFilterSkip = /* @__PURE__ */ Symbol();
    mapAndFilter.skip = mapAndFilterSkip;
    function mapAndFind(iterable, cb) {
      for (const value of iterable) {
        const out = cb(value);
        if (out !== mapAndFindSkip) {
          return out;
        }
      }
      return void 0;
    }
    var mapAndFindSkip = /* @__PURE__ */ Symbol();
    mapAndFind.skip = mapAndFindSkip;
    function isIndexableObject(value) {
      return typeof value === `object` && value !== null;
    }
    async function allSettledSafe(promises) {
      const results = await Promise.allSettled(promises);
      const values = [];
      for (const result2 of results) {
        if (result2.status === `rejected`) {
          throw result2.reason;
        } else {
          values.push(result2.value);
        }
      }
      return values;
    }
    function convertMapsToIndexableObjects(arg) {
      if (arg instanceof Map)
        arg = Object.fromEntries(arg);
      if (isIndexableObject(arg)) {
        for (const key of Object.keys(arg)) {
          const value = arg[key];
          if (isIndexableObject(value)) {
            arg[key] = convertMapsToIndexableObjects(value);
          }
        }
      }
      return arg;
    }
    function getFactoryWithDefault(map26, key, factory) {
      let value = map26.get(key);
      if (typeof value === `undefined`)
        map26.set(key, value = factory());
      return value;
    }
    function getArrayWithDefault(map26, key) {
      let value = map26.get(key);
      if (typeof value === `undefined`)
        map26.set(key, value = []);
      return value;
    }
    function getSetWithDefault(map26, key) {
      let value = map26.get(key);
      if (typeof value === `undefined`)
        map26.set(key, value = /* @__PURE__ */ new Set());
      return value;
    }
    function getMapWithDefault(map26, key) {
      let value = map26.get(key);
      if (typeof value === `undefined`)
        map26.set(key, value = /* @__PURE__ */ new Map());
      return value;
    }
    async function releaseAfterUseAsync(fn, cleanup) {
      if (cleanup == null)
        return await fn();
      try {
        return await fn();
      } finally {
        await cleanup();
      }
    }
    async function prettifyAsyncErrors(fn, update2) {
      try {
        return await fn();
      } catch (error) {
        error.message = update2(error.message);
        throw error;
      }
    }
    function prettifySyncErrors(fn, update2) {
      try {
        return fn();
      } catch (error) {
        error.message = update2(error.message);
        throw error;
      }
    }
    async function bufferStream(stream2) {
      return await new Promise((resolve3, reject3) => {
        const chunks = [];
        stream2.on(`error`, (error) => {
          reject3(error);
        });
        stream2.on(`data`, (chunk) => {
          chunks.push(chunk);
        });
        stream2.on(`end`, () => {
          resolve3(Buffer.concat(chunks));
        });
      });
    }
    var BufferStream = class extends stream_1.Transform {
      constructor() {
        super(...arguments);
        this.chunks = [];
      }
      _transform(chunk, encoding, cb) {
        if (encoding !== `buffer` || !Buffer.isBuffer(chunk))
          throw new Error(`Assertion failed: BufferStream only accept buffers`);
        this.chunks.push(chunk);
        cb(null, null);
      }
      _flush(cb) {
        cb(null, Buffer.concat(this.chunks));
      }
    };
    exports.BufferStream = BufferStream;
    function makeDeferred() {
      let resolve3;
      let reject3;
      const promise2 = new Promise((resolveFn, rejectFn) => {
        resolve3 = resolveFn;
        reject3 = rejectFn;
      });
      return { promise: promise2, resolve: resolve3, reject: reject3 };
    }
    var AsyncActions = class {
      constructor(limit) {
        this.deferred = /* @__PURE__ */ new Map();
        this.promises = /* @__PURE__ */ new Map();
        this.limit = (0, p_limit_1.default)(limit);
      }
      set(key, factory) {
        let deferred = this.deferred.get(key);
        if (typeof deferred === `undefined`)
          this.deferred.set(key, deferred = makeDeferred());
        const promise2 = this.limit(() => factory());
        this.promises.set(key, promise2);
        promise2.then(() => {
          if (this.promises.get(key) === promise2) {
            deferred.resolve();
          }
        }, (err) => {
          if (this.promises.get(key) === promise2) {
            deferred.reject(err);
          }
        });
        return deferred.promise;
      }
      reduce(key, factory) {
        const promise2 = this.promises.get(key) ?? Promise.resolve();
        this.set(key, () => factory(promise2));
      }
      async wait() {
        await Promise.all(this.promises.values());
      }
    };
    exports.AsyncActions = AsyncActions;
    var DefaultStream = class extends stream_1.Transform {
      constructor(ifEmpty = Buffer.alloc(0)) {
        super();
        this.active = true;
        this.ifEmpty = ifEmpty;
      }
      _transform(chunk, encoding, cb) {
        if (encoding !== `buffer` || !Buffer.isBuffer(chunk))
          throw new Error(`Assertion failed: DefaultStream only accept buffers`);
        this.active = false;
        cb(null, chunk);
      }
      _flush(cb) {
        if (this.active && this.ifEmpty.length > 0) {
          cb(null, this.ifEmpty);
        } else {
          cb(null);
        }
      }
    };
    exports.DefaultStream = DefaultStream;
    var realRequire = eval(`require`);
    function dynamicRequireNode(path218) {
      return realRequire(fslib_1.npath.fromPortablePath(path218));
    }
    function dynamicRequireNoCache(path) {
      const physicalPath = fslib_1.npath.fromPortablePath(path);
      const currentCacheEntry = realRequire.cache[physicalPath];
      delete realRequire.cache[physicalPath];
      let result;
      try {
        result = dynamicRequireNode(physicalPath);
        const freshCacheEntry = realRequire.cache[physicalPath];
        const dynamicModule = eval(`module`);
        const freshCacheIndex = dynamicModule.children.indexOf(freshCacheEntry);
        if (freshCacheIndex !== -1) {
          dynamicModule.children.splice(freshCacheIndex, 1);
        }
      } finally {
        realRequire.cache[physicalPath] = currentCacheEntry;
      }
      return result;
    }
    var dynamicRequireFsTimeCache = /* @__PURE__ */ new Map();
    function dynamicRequireFsTime(path218) {
      const cachedInstance = dynamicRequireFsTimeCache.get(path218);
      const stat2 = fslib_1.xfs.statSync(path218);
      if (cachedInstance?.mtime === stat2.mtimeMs)
        return cachedInstance.instance;
      const instance = dynamicRequireNoCache(path218);
      dynamicRequireFsTimeCache.set(path218, { mtime: stat2.mtimeMs, instance });
      return instance;
    }
    var CachingStrategy;
    (function(CachingStrategy2) {
      CachingStrategy2[CachingStrategy2["NoCache"] = 0] = "NoCache";
      CachingStrategy2[CachingStrategy2["FsTime"] = 1] = "FsTime";
      CachingStrategy2[CachingStrategy2["Node"] = 2] = "Node";
    })(CachingStrategy || (exports.CachingStrategy = CachingStrategy = {}));
    function dynamicRequire(path218, { cachingStrategy = CachingStrategy.Node } = {}) {
      switch (cachingStrategy) {
        case CachingStrategy.NoCache:
          return dynamicRequireNoCache(path218);
        case CachingStrategy.FsTime:
          return dynamicRequireFsTime(path218);
        case CachingStrategy.Node:
          return dynamicRequireNode(path218);
        default: {
          throw new Error(`Unsupported caching strategy`);
        }
      }
    }
    function sortMap(values, mappers) {
      const asArray = Array.from(values);
      if (!Array.isArray(mappers))
        mappers = [mappers];
      const stringified = [];
      for (const mapper of mappers)
        stringified.push(asArray.map((value) => mapper(value)));
      const indices = asArray.map((_, index) => index);
      indices.sort((a2, b) => {
        for (const layer of stringified) {
          const comparison = layer[a2] < layer[b] ? -1 : layer[a2] > layer[b] ? 1 : 0;
          if (comparison !== 0) {
            return comparison;
          }
        }
        return 0;
      });
      return indices.map((index) => {
        return asArray[index];
      });
    }
    function buildIgnorePattern(ignorePatterns) {
      if (ignorePatterns.length === 0)
        return null;
      return ignorePatterns.map((pattern) => {
        return `(${micromatch_1.default.makeRe(pattern, {
          windows: false,
          dot: true
        }).source})`;
      }).join(`|`);
    }
    function replaceEnvVariables(value, { env: env3 }) {
      const regex2 = /\\?\${(?<variableName>[\d\w_]+)(?<colon>:)?(?:-(?<fallback>[^}]*))?}/g;
      return value.replace(regex2, (match, ...args) => {
        if (match.startsWith(`\\`))
          return match.slice(1);
        const { variableName, colon, fallback } = args[args.length - 1];
        const variableExist = Object.hasOwn(env3, variableName);
        const variableValue = env3[variableName];
        if (variableValue)
          return variableValue;
        if (variableExist && !colon)
          return variableValue;
        if (fallback != null)
          return fallback;
        throw new clipanion_1.UsageError(`Environment variable not found (${variableName})`);
      });
    }
    function parseBoolean(value) {
      switch (value) {
        case `true`:
        case `1`:
        case 1:
        case true: {
          return true;
        }
        case `false`:
        case `0`:
        case 0:
        case false: {
          return false;
        }
        default: {
          throw new Error(`Couldn't parse "${value}" as a boolean`);
        }
      }
    }
    function parseOptionalBoolean(value) {
      if (typeof value === `undefined`)
        return value;
      return parseBoolean(value);
    }
    function tryParseOptionalBoolean(value) {
      try {
        return parseOptionalBoolean(value);
      } catch {
        return null;
      }
    }
    function isPathLike(value) {
      if (fslib_1.npath.isAbsolute(value) || value.match(/^(\.{1,2}|~)\//))
        return true;
      return false;
    }
    function mergeIntoTarget(target2, ...sources) {
      const wrap = (value2) => ({ value: value2 });
      const wrappedTarget = wrap(target2);
      const wrappedSources = sources.map((source) => wrap(source));
      const { value } = (0, compat_1.mergeWith)(wrappedTarget, ...wrappedSources, (targetValue, sourceValue) => {
        if (Array.isArray(targetValue) && Array.isArray(sourceValue)) {
          for (const sourceItem of sourceValue) {
            if (!targetValue.find((targetItem) => (0, compat_1.isEqual)(targetItem, sourceItem))) {
              targetValue.push(sourceItem);
            }
          }
          return targetValue;
        }
        return void 0;
      });
      return value;
    }
    function toMerged(...sources) {
      return mergeIntoTarget({}, ...sources);
    }
    function groupBy(items, key) {
      const groups = /* @__PURE__ */ Object.create(null);
      for (const item of items) {
        const groupKey = item[key];
        groups[groupKey] ??= [];
        groups[groupKey].push(item);
      }
      return groups;
    }
    function parseInt(val) {
      return typeof val === `string` ? Number.parseInt(val, 10) : val;
    }
    var DURATION_UNITS = {
      ms: 1,
      s: 1e3,
      m: 60 * 1e3,
      h: 60 * 60 * 1e3,
      d: 24 * 60 * 60 * 1e3,
      w: 7 * 24 * 60 * 60 * 1e3
    };
    var DURATION_REGEXP = new RegExp(`^(?<num>\\d*\\.?\\d+)(?<unit>${Object.keys(DURATION_UNITS).join(`|`)})?$`);
    function parseDuration(value, unit) {
      const match = DURATION_REGEXP.exec(value)?.groups;
      if (!match)
        throw new Error(`Couldn't parse "${value}" as a duration`);
      if (match.unit === void 0)
        return parseFloat(match.num);
      const multiplier = DURATION_UNITS[match.unit];
      if (!multiplier)
        throw new Error(`Invalid duration unit "${match.unit}"`);
      return parseFloat(match.num) * multiplier / DURATION_UNITS[unit];
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/core/4.5.0/1c6edf299c560e75f87368abe07278b2427232b51d92ec1973cdc6be0abe38bc/node_modules/@yarnpkg/core/lib/types.js
var require_types2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/core/4.5.0/1c6edf299c560e75f87368abe07278b2427232b51d92ec1973cdc6be0abe38bc/node_modules/@yarnpkg/core/lib/types.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.PackageExtensionStatus = exports2.PackageExtensionType = exports2.LinkType = void 0;
    var LinkType;
    (function(LinkType2) {
      LinkType2["HARD"] = "HARD";
      LinkType2["SOFT"] = "SOFT";
    })(LinkType || (exports2.LinkType = LinkType = {}));
    var PackageExtensionType;
    (function(PackageExtensionType2) {
      PackageExtensionType2["Dependency"] = "Dependency";
      PackageExtensionType2["PeerDependency"] = "PeerDependency";
      PackageExtensionType2["PeerDependencyMeta"] = "PeerDependencyMeta";
    })(PackageExtensionType || (exports2.PackageExtensionType = PackageExtensionType = {}));
    var PackageExtensionStatus;
    (function(PackageExtensionStatus2) {
      PackageExtensionStatus2["Inactive"] = "inactive";
      PackageExtensionStatus2["Redundant"] = "redundant";
      PackageExtensionStatus2["Active"] = "active";
    })(PackageExtensionStatus || (exports2.PackageExtensionStatus = PackageExtensionStatus = {}));
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/core/4.5.0/1c6edf299c560e75f87368abe07278b2427232b51d92ec1973cdc6be0abe38bc/node_modules/@yarnpkg/core/lib/formatUtils.js
var require_formatUtils = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/core/4.5.0/1c6edf299c560e75f87368abe07278b2427232b51d92ec1973cdc6be0abe38bc/node_modules/@yarnpkg/core/lib/formatUtils.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.LogLevel = exports2.supportsHyperlinks = exports2.supportsColor = exports2.Style = exports2.Type = exports2.stripAnsi = void 0;
    exports2.tuple = tuple;
    exports2.applyStyle = applyStyle2;
    exports2.applyColor = applyColor;
    exports2.applyHyperlink = applyHyperlink;
    exports2.pretty = pretty;
    exports2.prettyList = prettyList;
    exports2.json = json2;
    exports2.jsonOrPretty = jsonOrPretty;
    exports2.mark = mark;
    exports2.prettyField = prettyField;
    exports2.prettyTruncatedLocatorList = prettyTruncatedLocatorList;
    exports2.addLogFilterSupport = addLogFilterSupport;
    var tslib_12 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
    var fslib_12 = require_lib12();
    var chalk_1 = tslib_12.__importDefault(require_source2());
    var ci_info_1 = tslib_12.__importDefault(require_ci_info());
    var clipanion_12 = require_advanced();
    var micromatch_12 = tslib_12.__importDefault(require_micromatch());
    var strip_ansi_1 = tslib_12.__importDefault(require_strip_ansi());
    exports2.stripAnsi = strip_ansi_1.default;
    var MessageName_1 = require_MessageName();
    var miscUtils = tslib_12.__importStar(require_miscUtils());
    var structUtils2 = tslib_12.__importStar(require_structUtils());
    var types_1 = require_types2();
    exports2.Type = {
      NO_HINT: `NO_HINT`,
      ID: `ID`,
      NULL: `NULL`,
      SCOPE: `SCOPE`,
      NAME: `NAME`,
      RANGE: `RANGE`,
      REFERENCE: `REFERENCE`,
      NUMBER: `NUMBER`,
      STRING: `STRING`,
      BOOLEAN: `BOOLEAN`,
      PATH: `PATH`,
      URL: `URL`,
      ADDED: `ADDED`,
      REMOVED: `REMOVED`,
      CODE: `CODE`,
      INSPECT: `INSPECT`,
      DURATION: `DURATION`,
      SIZE: `SIZE`,
      SIZE_DIFF: `SIZE_DIFF`,
      IDENT: `IDENT`,
      DESCRIPTOR: `DESCRIPTOR`,
      LOCATOR: `LOCATOR`,
      RESOLUTION: `RESOLUTION`,
      DEPENDENT: `DEPENDENT`,
      PACKAGE_EXTENSION: `PACKAGE_EXTENSION`,
      SETTING: `SETTING`,
      MARKDOWN: `MARKDOWN`,
      MARKDOWN_INLINE: `MARKDOWN_INLINE`
    };
    var Style;
    (function(Style2) {
      Style2[Style2["BOLD"] = 2] = "BOLD";
    })(Style || (exports2.Style = Style = {}));
    var chalkOptions = ci_info_1.default.GITHUB_ACTIONS ? { level: 2 } : chalk_1.default.supportsColor ? { level: chalk_1.default.supportsColor.level } : { level: 0 };
    exports2.supportsColor = chalkOptions.level !== 0;
    exports2.supportsHyperlinks = exports2.supportsColor && !ci_info_1.default.GITHUB_ACTIONS && !ci_info_1.default.CIRCLE && !ci_info_1.default.GITLAB;
    var chalkInstance = new chalk_1.default.Instance(chalkOptions);
    var colors = /* @__PURE__ */ new Map([
      [exports2.Type.NO_HINT, null],
      [exports2.Type.NULL, [`#a853b5`, 129]],
      [exports2.Type.SCOPE, [`#d75f00`, 166]],
      [exports2.Type.NAME, [`#d7875f`, 173]],
      [exports2.Type.RANGE, [`#00afaf`, 37]],
      [exports2.Type.REFERENCE, [`#87afff`, 111]],
      [exports2.Type.NUMBER, [`#ffd700`, 220]],
      [exports2.Type.STRING, [`#b4bd68`, 32]],
      [exports2.Type.BOOLEAN, [`#faa023`, 209]],
      [exports2.Type.PATH, [`#d75fd7`, 170]],
      [exports2.Type.URL, [`#d75fd7`, 170]],
      [exports2.Type.ADDED, [`#5faf00`, 70]],
      [exports2.Type.REMOVED, [`#ff3131`, 160]],
      [exports2.Type.CODE, [`#87afff`, 111]],
      [exports2.Type.SIZE, [`#ffd700`, 220]]
    ]);
    var validateTransform = (spec) => spec;
    function sizeToText(size) {
      const thresholds = [`KiB`, `MiB`, `GiB`, `TiB`];
      let power = thresholds.length;
      while (power > 1 && size < 1024 ** power)
        power -= 1;
      const factor = 1024 ** power;
      const value = Math.floor(size * 100 / factor) / 100;
      return `${value} ${thresholds[power - 1]}`;
    }
    function prettyObject(configuration, value) {
      if (Array.isArray(value)) {
        if (value.length === 0) {
          return applyColor(configuration, `[]`, exports2.Type.CODE);
        } else {
          return applyColor(configuration, `[ `, exports2.Type.CODE) + value.map((item) => prettyObject(configuration, item)).join(`, `) + applyColor(configuration, ` ]`, exports2.Type.CODE);
        }
      }
      if (typeof value === `string`)
        return applyColor(configuration, JSON.stringify(value), exports2.Type.STRING);
      if (typeof value === `number`)
        return applyColor(configuration, JSON.stringify(value), exports2.Type.NUMBER);
      if (typeof value === `boolean`)
        return applyColor(configuration, JSON.stringify(value), exports2.Type.BOOLEAN);
      if (value === null)
        return applyColor(configuration, `null`, exports2.Type.NULL);
      if (typeof value === `object` && Object.getPrototypeOf(value) === Object.prototype) {
        const entries = Object.entries(value);
        if (entries.length === 0) {
          return applyColor(configuration, `{}`, exports2.Type.CODE);
        } else {
          return applyColor(configuration, `{ `, exports2.Type.CODE) + entries.map(([key, value2]) => `${prettyObject(configuration, key)}: ${prettyObject(configuration, value2)}`).join(`, `) + applyColor(configuration, ` }`, exports2.Type.CODE);
        }
      }
      if (typeof value === `undefined`)
        return applyColor(configuration, `undefined`, exports2.Type.NULL);
      throw new Error(`Assertion failed: The value doesn't seem to be a valid JSON object`);
    }
    var transforms = {
      [exports2.Type.ID]: validateTransform({
        pretty: (configuration, value) => {
          if (typeof value === `number`) {
            return applyColor(configuration, `${value}`, exports2.Type.NUMBER);
          } else {
            return applyColor(configuration, value, exports2.Type.CODE);
          }
        },
        json: (id) => {
          return id;
        }
      }),
      [exports2.Type.INSPECT]: validateTransform({
        pretty: (configuration, value) => {
          return prettyObject(configuration, value);
        },
        json: (value) => {
          return value;
        }
      }),
      [exports2.Type.NUMBER]: validateTransform({
        pretty: (configuration, value) => {
          return applyColor(configuration, `${value}`, exports2.Type.NUMBER);
        },
        json: (value) => {
          return value;
        }
      }),
      [exports2.Type.IDENT]: validateTransform({
        pretty: (configuration, ident) => {
          return structUtils2.prettyIdent(configuration, ident);
        },
        json: (ident) => {
          return structUtils2.stringifyIdent(ident);
        }
      }),
      [exports2.Type.LOCATOR]: validateTransform({
        pretty: (configuration, locator) => {
          return structUtils2.prettyLocator(configuration, locator);
        },
        json: (locator) => {
          return structUtils2.stringifyLocator(locator);
        }
      }),
      [exports2.Type.DESCRIPTOR]: validateTransform({
        pretty: (configuration, descriptor) => {
          return structUtils2.prettyDescriptor(configuration, descriptor);
        },
        json: (descriptor) => {
          return structUtils2.stringifyDescriptor(descriptor);
        }
      }),
      [exports2.Type.RESOLUTION]: validateTransform({
        pretty: (configuration, { descriptor, locator }) => {
          return structUtils2.prettyResolution(configuration, descriptor, locator);
        },
        json: ({ descriptor, locator }) => {
          return {
            descriptor: structUtils2.stringifyDescriptor(descriptor),
            locator: locator !== null ? structUtils2.stringifyLocator(locator) : null
          };
        }
      }),
      [exports2.Type.DEPENDENT]: validateTransform({
        pretty: (configuration, { locator, descriptor }) => {
          return structUtils2.prettyDependent(configuration, locator, descriptor);
        },
        json: ({ locator, descriptor }) => {
          return {
            locator: structUtils2.stringifyLocator(locator),
            descriptor: structUtils2.stringifyDescriptor(descriptor)
          };
        }
      }),
      [exports2.Type.PACKAGE_EXTENSION]: validateTransform({
        pretty: (configuration, packageExtension) => {
          switch (packageExtension.type) {
            case types_1.PackageExtensionType.Dependency:
              return `${structUtils2.prettyIdent(configuration, packageExtension.parentDescriptor)} \u27A4 ${applyColor(configuration, `dependencies`, exports2.Type.CODE)} \u27A4 ${structUtils2.prettyIdent(configuration, packageExtension.descriptor)}`;
            case types_1.PackageExtensionType.PeerDependency:
              return `${structUtils2.prettyIdent(configuration, packageExtension.parentDescriptor)} \u27A4 ${applyColor(configuration, `peerDependencies`, exports2.Type.CODE)} \u27A4 ${structUtils2.prettyIdent(configuration, packageExtension.descriptor)}`;
            case types_1.PackageExtensionType.PeerDependencyMeta:
              return `${structUtils2.prettyIdent(configuration, packageExtension.parentDescriptor)} \u27A4 ${applyColor(configuration, `peerDependenciesMeta`, exports2.Type.CODE)} \u27A4 ${structUtils2.prettyIdent(configuration, structUtils2.parseIdent(packageExtension.selector))} \u27A4 ${applyColor(configuration, packageExtension.key, exports2.Type.CODE)}`;
            default:
              throw new Error(`Assertion failed: Unsupported package extension type: ${packageExtension.type}`);
          }
        },
        json: (packageExtension) => {
          switch (packageExtension.type) {
            case types_1.PackageExtensionType.Dependency:
              return `${structUtils2.stringifyIdent(packageExtension.parentDescriptor)} > ${structUtils2.stringifyIdent(packageExtension.descriptor)}`;
            case types_1.PackageExtensionType.PeerDependency:
              return `${structUtils2.stringifyIdent(packageExtension.parentDescriptor)} >> ${structUtils2.stringifyIdent(packageExtension.descriptor)}`;
            case types_1.PackageExtensionType.PeerDependencyMeta:
              return `${structUtils2.stringifyIdent(packageExtension.parentDescriptor)} >> ${packageExtension.selector} / ${packageExtension.key}`;
            default:
              throw new Error(`Assertion failed: Unsupported package extension type: ${packageExtension.type}`);
          }
        }
      }),
      [exports2.Type.SETTING]: validateTransform({
        pretty: (configuration, settingName) => {
          configuration.get(settingName);
          return applyHyperlink(configuration, applyColor(configuration, settingName, exports2.Type.CODE), `https://yarnpkg.com/configuration/yarnrc#${settingName}`);
        },
        json: (settingName) => {
          return settingName;
        }
      }),
      [exports2.Type.DURATION]: validateTransform({
        pretty: (configuration, duration) => {
          if (duration > 1e3 * 60) {
            const minutes = Math.floor(duration / 1e3 / 60);
            const seconds = Math.ceil((duration - minutes * 60 * 1e3) / 1e3);
            return seconds === 0 ? `${minutes}m` : `${minutes}m ${seconds}s`;
          } else {
            const seconds = Math.floor(duration / 1e3);
            const milliseconds = duration - seconds * 1e3;
            return milliseconds === 0 ? `${seconds}s` : `${seconds}s ${milliseconds}ms`;
          }
        },
        json: (duration) => {
          return duration;
        }
      }),
      [exports2.Type.SIZE]: validateTransform({
        pretty: (configuration, size) => {
          return applyColor(configuration, sizeToText(size), exports2.Type.NUMBER);
        },
        json: (size) => {
          return size;
        }
      }),
      [exports2.Type.SIZE_DIFF]: validateTransform({
        pretty: (configuration, size) => {
          const sign = size >= 0 ? `+` : `-`;
          const type4 = sign === `+` ? exports2.Type.REMOVED : exports2.Type.ADDED;
          return applyColor(configuration, `${sign} ${sizeToText(Math.max(Math.abs(size), 1))}`, type4);
        },
        json: (size) => {
          return size;
        }
      }),
      [exports2.Type.PATH]: validateTransform({
        pretty: (configuration, filePath) => {
          return applyColor(configuration, fslib_12.npath.fromPortablePath(filePath), exports2.Type.PATH);
        },
        json: (filePath) => {
          return fslib_12.npath.fromPortablePath(filePath);
        }
      }),
      [exports2.Type.MARKDOWN]: validateTransform({
        pretty: (configuration, { text, format: format2, paragraphs }) => {
          return (0, clipanion_12.formatMarkdownish)(text, { format: format2, paragraphs });
        },
        json: ({ text }) => {
          return text;
        }
      }),
      [exports2.Type.MARKDOWN_INLINE]: validateTransform({
        pretty: (configuration, text) => {
          text = text.replace(/(`+)((?:.|[\n])*?)\1/g, ($0, $1, $2) => {
            return pretty(configuration, $1 + $2 + $1, exports2.Type.CODE);
          });
          text = text.replace(/(\*\*)((?:.|[\n])*?)\1/g, ($0, $1, $2) => {
            return applyStyle2(configuration, $2, Style.BOLD);
          });
          return text;
        },
        json: (text) => {
          return text;
        }
      })
    };
    function tuple(formatType, value) {
      return [value, formatType];
    }
    function applyStyle2(configuration, text, flags) {
      if (!configuration.get(`enableColors`))
        return text;
      if (flags & Style.BOLD)
        text = chalk_1.default.bold(text);
      return text;
    }
    function applyColor(configuration, value, formatType) {
      if (!configuration.get(`enableColors`))
        return value;
      const colorSpec = colors.get(formatType);
      if (colorSpec === null)
        return value;
      const color = typeof colorSpec === `undefined` ? formatType : chalkOptions.level >= 3 ? colorSpec[0] : colorSpec[1];
      const fn = typeof color === `number` ? chalkInstance.ansi256(color) : color.startsWith(`#`) ? chalkInstance.hex(color) : chalkInstance[color];
      if (typeof fn !== `function`)
        throw new Error(`Invalid format type ${color}`);
      return fn(value);
    }
    var isKonsole = !!process.env.KONSOLE_VERSION;
    function applyHyperlink(configuration, text, href) {
      if (!configuration.get(`enableHyperlinks`))
        return text;
      if (isKonsole)
        return `\x1B]8;;${href}\x1B\\${text}\x1B]8;;\x1B\\`;
      return `\x1B]8;;${href}\x07${text}\x1B]8;;\x07`;
    }
    function pretty(configuration, value, formatType) {
      if (value === null)
        return applyColor(configuration, `null`, exports2.Type.NULL);
      if (Object.hasOwn(transforms, formatType)) {
        const transform2 = transforms[formatType];
        const typedTransform = transform2;
        return typedTransform.pretty(configuration, value);
      }
      if (typeof value !== `string`)
        throw new Error(`Assertion failed: Expected the value to be a string, got ${typeof value}`);
      return applyColor(configuration, value, formatType);
    }
    function prettyList(configuration, values, formatType, { separator = `, ` } = {}) {
      return [...values].map((value) => pretty(configuration, value, formatType)).join(separator);
    }
    function json2(value, formatType) {
      if (value === null)
        return null;
      if (Object.hasOwn(transforms, formatType)) {
        miscUtils.overrideType(formatType);
        return transforms[formatType].json(value);
      }
      if (typeof value !== `string`)
        throw new Error(`Assertion failed: Expected the value to be a string, got ${typeof value}`);
      return value;
    }
    function jsonOrPretty(outputJson, configuration, [value, formatType]) {
      return outputJson ? json2(value, formatType) : pretty(configuration, value, formatType);
    }
    function mark(configuration) {
      return {
        Check: applyColor(configuration, `\u2713`, `green`),
        Cross: applyColor(configuration, `\u2718`, `red`),
        Question: applyColor(configuration, `?`, `cyan`)
      };
    }
    function prettyField(configuration, { label, value: [value, formatType] }) {
      return `${pretty(configuration, label, exports2.Type.CODE)}: ${pretty(configuration, value, formatType)}`;
    }
    function prettyTruncatedLocatorList(configuration, locators, recommendedLength) {
      const named = [];
      const locatorsCopy = [...locators];
      let remainingLength = recommendedLength;
      while (locatorsCopy.length > 0) {
        const locator = locatorsCopy[0];
        const asString = `${structUtils2.prettyLocator(configuration, locator)}, `;
        const asLength = structUtils2.prettyLocatorNoColors(locator).length + 2;
        if (named.length > 0 && remainingLength < asLength)
          break;
        named.push([asString, asLength]);
        remainingLength -= asLength;
        locatorsCopy.shift();
      }
      if (locatorsCopy.length === 0)
        return named.map(([str2]) => str2).join(``).slice(0, -2);
      const mark2 = `X`.repeat(locatorsCopy.length.toString().length);
      const suffix = `and ${mark2} more.`;
      let otherCount = locatorsCopy.length;
      while (named.length > 1 && remainingLength < suffix.length) {
        remainingLength += named[named.length - 1][1];
        otherCount += 1;
        named.pop();
      }
      return [
        named.map(([str2]) => str2).join(``),
        suffix.replace(mark2, pretty(configuration, otherCount, exports2.Type.NUMBER))
      ].join(``);
    }
    var LogLevel;
    (function(LogLevel2) {
      LogLevel2["Error"] = "error";
      LogLevel2["Warning"] = "warning";
      LogLevel2["Info"] = "info";
      LogLevel2["Discard"] = "discard";
    })(LogLevel || (exports2.LogLevel = LogLevel = {}));
    function addLogFilterSupport(report3, { configuration }) {
      const logFilters = configuration.get(`logFilters`);
      const logFiltersByCode = /* @__PURE__ */ new Map();
      const logFiltersByText = /* @__PURE__ */ new Map();
      const logFiltersByPatternMatcher = [];
      for (const filter14 of logFilters) {
        const level = filter14.get(`level`);
        if (typeof level === `undefined`)
          continue;
        const code = filter14.get(`code`);
        if (typeof code !== `undefined`)
          logFiltersByCode.set(code, level);
        const text = filter14.get(`text`);
        if (typeof text !== `undefined`)
          logFiltersByText.set(text, level);
        const pattern = filter14.get(`pattern`);
        if (typeof pattern !== `undefined`) {
          logFiltersByPatternMatcher.push([micromatch_12.default.matcher(pattern, { contains: true }), level]);
        }
      }
      logFiltersByPatternMatcher.reverse();
      const findLogLevel = (name, text, defaultLevel) => {
        if (name === null || name === MessageName_1.MessageName.UNNAMED)
          return defaultLevel;
        const strippedText = logFiltersByText.size > 0 || logFiltersByPatternMatcher.length > 0 ? (0, strip_ansi_1.default)(text) : text;
        if (logFiltersByText.size > 0) {
          const level = logFiltersByText.get(strippedText);
          if (typeof level !== `undefined`) {
            return level ?? defaultLevel;
          }
        }
        if (logFiltersByPatternMatcher.length > 0) {
          for (const [filterMatcher, filterLevel] of logFiltersByPatternMatcher) {
            if (filterMatcher(strippedText)) {
              return filterLevel ?? defaultLevel;
            }
          }
        }
        if (logFiltersByCode.size > 0) {
          const level = logFiltersByCode.get((0, MessageName_1.stringifyMessageName)(name));
          if (typeof level !== `undefined`) {
            return level ?? defaultLevel;
          }
        }
        return defaultLevel;
      };
      const reportInfo = report3.reportInfo;
      const reportWarning = report3.reportWarning;
      const reportError2 = report3.reportError;
      const routeMessage = function(report4, name, text, level) {
        switch (findLogLevel(name, text, level)) {
          case LogLevel.Info:
            {
              reportInfo.call(report4, name, text);
            }
            break;
          case LogLevel.Warning:
            {
              reportWarning.call(report4, name ?? MessageName_1.MessageName.UNNAMED, text);
            }
            break;
          case LogLevel.Error:
            {
              reportError2.call(report4, name ?? MessageName_1.MessageName.UNNAMED, text);
            }
            break;
        }
      };
      report3.reportInfo = function(...args) {
        return routeMessage(this, ...args, LogLevel.Info);
      };
      report3.reportWarning = function(...args) {
        return routeMessage(this, ...args, LogLevel.Warning);
      };
      report3.reportError = function(...args) {
        return routeMessage(this, ...args, LogLevel.Error);
      };
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/core/4.5.0/1c6edf299c560e75f87368abe07278b2427232b51d92ec1973cdc6be0abe38bc/node_modules/@yarnpkg/core/lib/hashUtils.js
var require_hashUtils = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/core/4.5.0/1c6edf299c560e75f87368abe07278b2427232b51d92ec1973cdc6be0abe38bc/node_modules/@yarnpkg/core/lib/hashUtils.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.makeHash = makeHash;
    exports2.checksumFile = checksumFile;
    exports2.checksumPattern = checksumPattern;
    var tslib_12 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
    var fslib_12 = require_lib12();
    var crypto_1 = __require("crypto");
    var fast_glob_1 = tslib_12.__importDefault(require_out4());
    function makeHash(...args) {
      const hash2 = (0, crypto_1.createHash)(`sha512`);
      let acc = ``;
      for (const arg of args) {
        if (typeof arg === `string`) {
          acc += arg;
        } else if (arg) {
          if (acc) {
            hash2.update(acc);
            acc = ``;
          }
          hash2.update(arg);
        }
      }
      if (acc)
        hash2.update(acc);
      return hash2.digest(`hex`);
    }
    async function checksumFile(path218, { baseFs, algorithm } = { baseFs: fslib_12.xfs, algorithm: `sha512` }) {
      const fd = await baseFs.openPromise(path218, `r`);
      try {
        const CHUNK_SIZE = 65536;
        const chunk = Buffer.allocUnsafeSlow(CHUNK_SIZE);
        const hash2 = (0, crypto_1.createHash)(algorithm);
        let bytesRead = 0;
        while ((bytesRead = await baseFs.readPromise(fd, chunk, 0, CHUNK_SIZE)) !== 0)
          hash2.update(bytesRead === CHUNK_SIZE ? chunk : chunk.slice(0, bytesRead));
        return hash2.digest(`hex`);
      } finally {
        await baseFs.closePromise(fd);
      }
    }
    async function checksumPattern(pattern, { cwd }) {
      const dirListing = await (0, fast_glob_1.default)(pattern, {
        cwd: fslib_12.npath.fromPortablePath(cwd),
        onlyDirectories: true
      });
      const dirPatterns = dirListing.map((entry) => {
        return `${entry}/**/*`;
      });
      const listing = await (0, fast_glob_1.default)([pattern, ...dirPatterns], {
        cwd: fslib_12.npath.fromPortablePath(cwd),
        onlyFiles: false
      });
      listing.sort();
      const hashes = await Promise.all(listing.map(async (entry) => {
        const parts = [Buffer.from(entry)];
        const p = fslib_12.ppath.join(cwd, fslib_12.npath.toPortablePath(entry));
        const stat2 = await fslib_12.xfs.lstatPromise(p);
        if (stat2.isSymbolicLink())
          parts.push(Buffer.from(await fslib_12.xfs.readlinkPromise(p)));
        else if (stat2.isFile())
          parts.push(await fslib_12.xfs.readFilePromise(p));
        return parts.join(`\0`);
      }));
      const hash2 = (0, crypto_1.createHash)(`sha512`);
      for (const sub of hashes)
        hash2.update(sub);
      return hash2.digest(`hex`);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/core/4.5.0/1c6edf299c560e75f87368abe07278b2427232b51d92ec1973cdc6be0abe38bc/node_modules/@yarnpkg/core/lib/structUtils.js
var require_structUtils = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/core/4.5.0/1c6edf299c560e75f87368abe07278b2427232b51d92ec1973cdc6be0abe38bc/node_modules/@yarnpkg/core/lib/structUtils.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.makeIdent = makeIdent;
    exports2.makeDescriptor = makeDescriptor;
    exports2.makeLocator = makeLocator;
    exports2.convertToIdent = convertToIdent;
    exports2.convertDescriptorToLocator = convertDescriptorToLocator;
    exports2.convertLocatorToDescriptor = convertLocatorToDescriptor;
    exports2.convertPackageToLocator = convertPackageToLocator;
    exports2.renamePackage = renamePackage;
    exports2.copyPackage = copyPackage;
    exports2.virtualizeDescriptor = virtualizeDescriptor;
    exports2.virtualizePackage = virtualizePackage;
    exports2.isVirtualDescriptor = isVirtualDescriptor;
    exports2.isVirtualLocator = isVirtualLocator;
    exports2.devirtualizeDescriptor = devirtualizeDescriptor;
    exports2.devirtualizeLocator = devirtualizeLocator;
    exports2.ensureDevirtualizedDescriptor = ensureDevirtualizedDescriptor;
    exports2.ensureDevirtualizedLocator = ensureDevirtualizedLocator;
    exports2.bindDescriptor = bindDescriptor;
    exports2.bindLocator = bindLocator;
    exports2.areIdentsEqual = areIdentsEqual;
    exports2.areDescriptorsEqual = areDescriptorsEqual;
    exports2.areLocatorsEqual = areLocatorsEqual;
    exports2.areVirtualPackagesEquivalent = areVirtualPackagesEquivalent;
    exports2.parseIdent = parseIdent;
    exports2.tryParseIdent = tryParseIdent;
    exports2.parseDescriptor = parseDescriptor;
    exports2.tryParseDescriptor = tryParseDescriptor;
    exports2.parseLocator = parseLocator;
    exports2.tryParseLocator = tryParseLocator;
    exports2.parseRange = parseRange2;
    exports2.tryParseRange = tryParseRange;
    exports2.parseFileStyleRange = parseFileStyleRange;
    exports2.makeRange = makeRange;
    exports2.convertToManifestRange = convertToManifestRange;
    exports2.stringifyIdent = stringifyIdent;
    exports2.wrapIdentIntoScope = wrapIdentIntoScope;
    exports2.unwrapIdentFromScope = unwrapIdentFromScope;
    exports2.stringifyDescriptor = stringifyDescriptor;
    exports2.stringifyLocator = stringifyLocator;
    exports2.slugifyIdent = slugifyIdent;
    exports2.slugifyLocator = slugifyLocator;
    exports2.prettyIdent = prettyIdent;
    exports2.prettyRange = prettyRange;
    exports2.prettyDescriptor = prettyDescriptor;
    exports2.prettyReference = prettyReference;
    exports2.prettyLocator = prettyLocator;
    exports2.prettyLocatorNoColors = prettyLocatorNoColors;
    exports2.sortDescriptors = sortDescriptors;
    exports2.prettyWorkspace = prettyWorkspace;
    exports2.prettyResolution = prettyResolution;
    exports2.prettyDependent = prettyDependent;
    exports2.getIdentVendorPath = getIdentVendorPath;
    exports2.isPackageCompatible = isPackageCompatible;
    exports2.allPeerRequests = allPeerRequests;
    var tslib_12 = (init_tslib_es6(), __toCommonJS(tslib_es6_exports));
    var querystring_1 = tslib_12.__importDefault(__require("querystring"));
    var semver_12 = tslib_12.__importDefault(require_semver2());
    var tinylogic_1 = require_tinylogic();
    var formatUtils = tslib_12.__importStar(require_formatUtils());
    var hashUtils = tslib_12.__importStar(require_hashUtils());
    var miscUtils = tslib_12.__importStar(require_miscUtils());
    var structUtils2 = tslib_12.__importStar(require_structUtils());
    var VIRTUAL_PROTOCOL = `virtual:`;
    var VIRTUAL_ABBREVIATE = 5;
    var CONDITION_REGEX = /(os|cpu|libc)=([a-z0-9_-]+)/;
    var conditionParser = (0, tinylogic_1.makeParser)(CONDITION_REGEX);
    function makeIdent(scope, name) {
      if (scope?.startsWith(`@`))
        throw new Error(`Invalid scope: don't prefix it with '@'`);
      return { identHash: hashUtils.makeHash(scope, name), scope, name };
    }
    function makeDescriptor(ident, range) {
      return { identHash: ident.identHash, scope: ident.scope, name: ident.name, descriptorHash: hashUtils.makeHash(ident.identHash, range), range };
    }
    function makeLocator(ident, reference) {
      return { identHash: ident.identHash, scope: ident.scope, name: ident.name, locatorHash: hashUtils.makeHash(ident.identHash, reference), reference };
    }
    function convertToIdent(source) {
      return { identHash: source.identHash, scope: source.scope, name: source.name };
    }
    function convertDescriptorToLocator(descriptor) {
      return { identHash: descriptor.identHash, scope: descriptor.scope, name: descriptor.name, locatorHash: descriptor.descriptorHash, reference: descriptor.range };
    }
    function convertLocatorToDescriptor(locator) {
      return { identHash: locator.identHash, scope: locator.scope, name: locator.name, descriptorHash: locator.locatorHash, range: locator.reference };
    }
    function convertPackageToLocator(pkg) {
      return { identHash: pkg.identHash, scope: pkg.scope, name: pkg.name, locatorHash: pkg.locatorHash, reference: pkg.reference };
    }
    function renamePackage(pkg, locator) {
      return {
        identHash: locator.identHash,
        scope: locator.scope,
        name: locator.name,
        locatorHash: locator.locatorHash,
        reference: locator.reference,
        version: pkg.version,
        languageName: pkg.languageName,
        linkType: pkg.linkType,
        conditions: pkg.conditions,
        dependencies: new Map(pkg.dependencies),
        peerDependencies: new Map(pkg.peerDependencies),
        dependenciesMeta: new Map(pkg.dependenciesMeta),
        peerDependenciesMeta: new Map(pkg.peerDependenciesMeta),
        bin: new Map(pkg.bin)
      };
    }
    function copyPackage(pkg) {
      return renamePackage(pkg, pkg);
    }
    function virtualizeDescriptor(descriptor, entropy) {
      if (entropy.includes(`#`))
        throw new Error(`Invalid entropy`);
      return makeDescriptor(descriptor, `virtual:${entropy}#${descriptor.range}`);
    }
    function virtualizePackage(pkg, entropy) {
      if (entropy.includes(`#`))
        throw new Error(`Invalid entropy`);
      return renamePackage(pkg, makeLocator(pkg, `virtual:${entropy}#${pkg.reference}`));
    }
    function isVirtualDescriptor(descriptor) {
      return descriptor.range.startsWith(VIRTUAL_PROTOCOL);
    }
    function isVirtualLocator(locator) {
      return locator.reference.startsWith(VIRTUAL_PROTOCOL);
    }
    var VIRTUAL_PREFIX_REGEXP = /^[^#]*#/;
    function devirtualizeDescriptor(descriptor) {
      if (!isVirtualDescriptor(descriptor))
        throw new Error(`Not a virtual descriptor`);
      return makeDescriptor(descriptor, descriptor.range.replace(VIRTUAL_PREFIX_REGEXP, ``));
    }
    function devirtualizeLocator(locator) {
      if (!isVirtualLocator(locator))
        throw new Error(`Not a virtual descriptor`);
      return makeLocator(locator, locator.reference.replace(VIRTUAL_PREFIX_REGEXP, ``));
    }
    function ensureDevirtualizedDescriptor(descriptor) {
      if (!isVirtualDescriptor(descriptor))
        return descriptor;
      return makeDescriptor(descriptor, descriptor.range.replace(VIRTUAL_PREFIX_REGEXP, ``));
    }
    function ensureDevirtualizedLocator(locator) {
      if (!isVirtualLocator(locator))
        return locator;
      return makeLocator(locator, locator.reference.replace(VIRTUAL_PREFIX_REGEXP, ``));
    }
    function bindDescriptor(descriptor, params) {
      if (descriptor.range.includes(`::`))
        return descriptor;
      return makeDescriptor(descriptor, `${descriptor.range}::${querystring_1.default.stringify(params)}`);
    }
    function bindLocator(locator, params) {
      if (locator.reference.includes(`::`))
        return locator;
      return makeLocator(locator, `${locator.reference}::${querystring_1.default.stringify(params)}`);
    }
    function areIdentsEqual(a2, b) {
      return a2.identHash === b.identHash;
    }
    function areDescriptorsEqual(a2, b) {
      return a2.descriptorHash === b.descriptorHash;
    }
    function areLocatorsEqual(a2, b) {
      return a2.locatorHash === b.locatorHash;
    }
    function areVirtualPackagesEquivalent(a2, b) {
      if (!isVirtualLocator(a2))
        throw new Error(`Invalid package type`);
      if (!isVirtualLocator(b))
        throw new Error(`Invalid package type`);
      if (!areIdentsEqual(a2, b))
        return false;
      if (a2.dependencies.size !== b.dependencies.size)
        return false;
      for (const dependencyDescriptorA of a2.dependencies.values()) {
        const dependencyDescriptorB = b.dependencies.get(dependencyDescriptorA.identHash);
        if (!dependencyDescriptorB)
          return false;
        if (!areDescriptorsEqual(dependencyDescriptorA, dependencyDescriptorB)) {
          return false;
        }
      }
      return true;
    }
    function parseIdent(string) {
      const ident = tryParseIdent(string);
      if (!ident)
        throw new Error(`Invalid ident (${string})`);
      return ident;
    }
    var IDENT_REGEXP = /^(?:@([^/]+?)\/)?([^@/]+)$/;
    function tryParseIdent(string) {
      const match = string.match(IDENT_REGEXP);
      if (!match)
        return null;
      const [, scope, name] = match;
      const realScope = typeof scope !== `undefined` ? scope : null;
      return makeIdent(realScope, name);
    }
    function parseDescriptor(string, strict = false) {
      const descriptor = tryParseDescriptor(string, strict);
      if (!descriptor)
        throw new Error(`Invalid descriptor (${string})`);
      return descriptor;
    }
    var DESCRIPTOR_REGEX_STRICT = /^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))$/;
    var DESCRIPTOR_REGEX_LOOSE = /^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))?$/;
    function tryParseDescriptor(string, strict = false) {
      const match = strict ? string.match(DESCRIPTOR_REGEX_STRICT) : string.match(DESCRIPTOR_REGEX_LOOSE);
      if (!match)
        return null;
      const [, scope, name, range] = match;
      if (range === `unknown`)
        throw new Error(`Invalid range (${string})`);
      const realScope = typeof scope !== `undefined` ? scope : null;
      const realRange = typeof range !== `undefined` ? range : `unknown`;
      return makeDescriptor(makeIdent(realScope, name), realRange);
    }
    function parseLocator(string, strict = false) {
      const locator = tryParseLocator(string, strict);
      if (!locator)
        throw new Error(`Invalid locator (${string})`);
      return locator;
    }
    var LOCATOR_REGEX_STRICT = /^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))$/;
    var LOCATOR_REGEX_LOOSE = /^(?:@([^/]+?)\/)?([^@/]+?)(?:@(.+))?$/;
    function tryParseLocator(string, strict = false) {
      const match = strict ? string.match(LOCATOR_REGEX_STRICT) : string.match(LOCATOR_REGEX_LOOSE);
      if (!match)
        return null;
      const [, scope, name, reference] = match;
      if (reference === `unknown`)
        throw new Error(`Invalid reference (${string})`);
      const realScope = typeof scope !== `undefined` ? scope : null;
      const realReference = typeof reference !== `undefined` ? reference : `unknown`;
      return makeLocator(makeIdent(realScope, name), realReference);
    }
    var RANGE_REGEX = /^([^#:]*:)?((?:(?!::)[^#])*)(?:#((?:(?!::).)*))?(?:::(.*))?$/;
    function parseRange2(range, opts2) {
      const match = range.match(RANGE_REGEX);
      if (match === null)
        throw new Error(`Invalid range (${range})`);
      const protocol = typeof match[1] !== `undefined` ? match[1] : null;
      if (typeof opts2?.requireProtocol === `string` && protocol !== opts2.requireProtocol)
        throw new Error(`Invalid protocol (${protocol})`);
      else if (opts2?.requireProtocol && protocol === null)
        throw new Error(`Missing protocol (${protocol})`);
      const source = typeof match[3] !== `undefined` ? decodeURIComponent(match[2]) : null;
      if (opts2?.requireSource && source === null)
        throw new Error(`Missing source (${range})`);
      const rawSelector = typeof match[3] !== `undefined` ? decodeURIComponent(match[3]) : decodeURIComponent(match[2]);
      const selector = opts2?.parseSelector ? querystring_1.default.parse(rawSelector) : rawSelector;
      const params = typeof match[4] !== `undefined` ? querystring_1.default.parse(match[4]) : null;
      return {
        // @ts-expect-error - reason TBS
        protocol,
        // @ts-expect-error - reason TBS
        source,
        // @ts-expect-error - reason TBS
        selector,
        // @ts-expect-error - reason TBS
        params
      };
    }
    function tryParseRange(range, opts2) {
      try {
        return parseRange2(range, opts2);
      } catch {
        return null;
      }
    }
    function parseFileStyleRange(range, { protocol }) {
      const { selector, params } = parseRange2(range, {
        requireProtocol: protocol,
        requireBindings: true
      });
      if (typeof params.locator !== `string`)
        throw new Error(`Assertion failed: Invalid bindings for ${range}`);
      const parentLocator = parseLocator(params.locator, true);
      const path218 = selector;
      return { parentLocator, path: path218 };
    }
    function encodeUnsafeCharacters(str2) {
      str2 = str2.replaceAll(`%`, `%25`);
      str2 = str2.replaceAll(`:`, `%3A`);
      str2 = str2.replaceAll(`#`, `%23`);
      return str2;
    }
    function hasParams(params) {
      if (params === null)
        return false;
      return Object.entries(params).length > 0;
    }
    function makeRange({ protocol, source, selector, params }) {
      let range = ``;
      if (protocol !== null)
        range += `${protocol}`;
      if (source !== null)
        range += `${encodeUnsafeCharacters(source)}#`;
      range += encodeUnsafeCharacters(selector);
      if (hasParams(params))
        range += `::${querystring_1.default.stringify(params)}`;
      return range;
    }
    function convertToManifestRange(range) {
      const { params, protocol, source, selector } = parseRange2(range);
      for (const name in params)
        if (name.startsWith(`__`))
          delete params[name];
      return makeRange({ protocol, source, params, selector });
    }
    function stringifyIdent(ident) {
      if (ident.scope) {
        return `@${ident.scope}/${ident.name}`;
      } else {
        return `${ident.name}`;
      }
    }
    function wrapIdentIntoScope(ident, scope) {
      if (ident.scope) {
        return structUtils2.makeIdent(scope, `${ident.scope}__${ident.name}`);
      } else {
        return structUtils2.makeIdent(scope, ident.name);
      }
    }
    function unwrapIdentFromScope(ident, scope) {
      if (ident.scope !== scope)
        return ident;
      const underscoreUnderscore = ident.name.indexOf(`__`);
      if (underscoreUnderscore === -1)
        return makeIdent(null, ident.name);
      const innerScope = ident.name.slice(0, underscoreUnderscore);
      const innerName = ident.name.slice(underscoreUnderscore + 2);
      return makeIdent(innerScope, innerName);
    }
    function stringifyDescriptor(descriptor) {
      if (descriptor.scope) {
        return `@${descriptor.scope}/${descriptor.name}@${descriptor.range}`;
      } else {
        return `${descriptor.name}@${descriptor.range}`;
      }
    }
    function stringifyLocator(locator) {
      if (locator.scope) {
        return `@${locator.scope}/${locator.name}@${locator.reference}`;
      } else {
        return `${locator.name}@${locator.reference}`;
      }
    }
    function slugifyIdent(ident) {
      if (ident.scope !== null) {
        return `@${ident.scope}-${ident.name}`;
      } else {
        return ident.name;
      }
    }
    var TRAILING_COLON_REGEX = /:$/;
    function slugifyLocator(locator) {
      const { protocol, selector } = parseRange2(locator.reference);
      const humanProtocol = protocol !== null ? protocol.replace(TRAILING_COLON_REGEX, ``) : `exotic`;
      const humanVersion = semver_12.default.valid(selector);
      const humanReference = humanVersion !== null ? `${humanProtocol}-${humanVersion}` : `${humanProtocol}`;
      const hashTruncate = 10;
      const slug = locator.scope ? `${slugifyIdent(locator)}-${humanReference}-${locator.locatorHash.slice(0, hashTruncate)}` : `${slugifyIdent(locator)}-${humanReference}-${locator.locatorHash.slice(0, hashTruncate)}`;
      return slug;
    }
    function prettyIdent(configuration, ident) {
      if (ident.scope) {
        return `${formatUtils.pretty(configuration, `@${ident.scope}/`, formatUtils.Type.SCOPE)}${formatUtils.pretty(configuration, ident.name, formatUtils.Type.NAME)}`;
      } else {
        return `${formatUtils.pretty(configuration, ident.name, formatUtils.Type.NAME)}`;
      }
    }
    var POST_QS_REGEX = /\?.*/;
    function prettyRangeNoColors(range) {
      if (range.startsWith(VIRTUAL_PROTOCOL)) {
        const nested = prettyRangeNoColors(range.substring(range.indexOf(`#`) + 1));
        const abbrev = range.substring(VIRTUAL_PROTOCOL.length, VIRTUAL_PROTOCOL.length + VIRTUAL_ABBREVIATE);
        return false ? `${nested} (virtual:${abbrev})` : `${nested} [${abbrev}]`;
      } else {
        return range.replace(POST_QS_REGEX, `?[...]`);
      }
    }
    function prettyRange(configuration, range) {
      return `${formatUtils.pretty(configuration, prettyRangeNoColors(range), formatUtils.Type.RANGE)}`;
    }
    function prettyDescriptor(configuration, descriptor) {
      return `${prettyIdent(configuration, descriptor)}${formatUtils.pretty(configuration, `@`, formatUtils.Type.RANGE)}${prettyRange(configuration, descriptor.range)}`;
    }
    function prettyReference(configuration, reference) {
      return `${formatUtils.pretty(configuration, prettyRangeNoColors(reference), formatUtils.Type.REFERENCE)}`;
    }
    function prettyLocator(configuration, locator) {
      return `${prettyIdent(configuration, locator)}${formatUtils.pretty(configuration, `@`, formatUtils.Type.REFERENCE)}${prettyReference(configuration, locator.reference)}`;
    }
    function prettyLocatorNoColors(locator) {
      return `${stringifyIdent(locator)}@${prettyRangeNoColors(locator.reference)}`;
    }
    function sortDescriptors(descriptors2) {
      return miscUtils.sortMap(descriptors2, [
        (descriptor) => stringifyIdent(descriptor),
        (descriptor) => descriptor.range
      ]);
    }
    function prettyWorkspace(configuration, workspace) {
      return prettyIdent(configuration, workspace.anchoredLocator);
    }
    function prettyResolution(configuration, descriptor, locator) {
      const devirtualizedDescriptor = isVirtualDescriptor(descriptor) ? devirtualizeDescriptor(descriptor) : descriptor;
      if (locator === null) {
        return `${structUtils2.prettyDescriptor(configuration, devirtualizedDescriptor)} \u2192 ${formatUtils.mark(configuration).Cross}`;
      } else if (devirtualizedDescriptor.identHash === locator.identHash) {
        return `${structUtils2.prettyDescriptor(configuration, devirtualizedDescriptor)} \u2192 ${prettyReference(configuration, locator.reference)}`;
      } else {
        return `${structUtils2.prettyDescriptor(configuration, devirtualizedDescriptor)} \u2192 ${prettyLocator(configuration, locator)}`;
      }
    }
    function prettyDependent(configuration, locator, descriptor) {
      if (descriptor === null) {
        return `${prettyLocator(configuration, locator)}`;
      } else {
        return `${prettyLocator(configuration, locator)} (via ${structUtils2.prettyRange(configuration, descriptor.range)})`;
      }
    }
    function getIdentVendorPath(ident) {
      return `node_modules/${stringifyIdent(ident)}`;
    }
    function isPackageCompatible(pkg, architectures) {
      if (!pkg.conditions)
        return true;
      return conditionParser(pkg.conditions, (specifier) => {
        const [, name, value] = specifier.match(CONDITION_REGEX);
        const supported = architectures[name];
        return supported ? supported.includes(value) : true;
      });
    }
    function allPeerRequests(root) {
      const requests = /* @__PURE__ */ new Set();
      if (`children` in root) {
        requests.add(root);
      } else {
        for (const request of root.requests.values()) {
          requests.add(request);
        }
      }
      for (const request of requests) {
        for (const child of request.children.values()) {
          requests.add(child);
        }
      }
      return requests;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@yarnpkg/lockfile/1.1.0/a6760263c10e399a7648eb84b389ff99b8a9ccb6c649c37d8ca7eeedb5968553/node_modules/@yarnpkg/lockfile/index.js
var require_lockfile = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@yarnpkg/lockfile/1.1.0/a6760263c10e399a7648eb84b389ff99b8a9ccb6c649c37d8ca7eeedb5968553/node_modules/@yarnpkg/lockfile/index.js"(exports2, module2) {
    module2.exports = /******/
    (function(modules) {
      var installedModules = {};
      function __webpack_require__2(moduleId) {
        if (installedModules[moduleId]) {
          return installedModules[moduleId].exports;
        }
        var module3 = installedModules[moduleId] = {
          /******/
          i: moduleId,
          /******/
          l: false,
          /******/
          exports: {}
          /******/
        };
        modules[moduleId].call(module3.exports, module3, module3.exports, __webpack_require__2);
        module3.l = true;
        return module3.exports;
      }
      __webpack_require__2.m = modules;
      __webpack_require__2.c = installedModules;
      __webpack_require__2.i = function(value) {
        return value;
      };
      __webpack_require__2.d = function(exports3, name, getter) {
        if (!__webpack_require__2.o(exports3, name)) {
          Object.defineProperty(exports3, name, {
            /******/
            configurable: false,
            /******/
            enumerable: true,
            /******/
            get: getter
            /******/
          });
        }
      };
      __webpack_require__2.n = function(module3) {
        var getter = module3 && module3.__esModule ? (
          /******/
          function getDefault() {
            return module3["default"];
          }
        ) : (
          /******/
          function getModuleExports() {
            return module3;
          }
        );
        __webpack_require__2.d(getter, "a", getter);
        return getter;
      };
      __webpack_require__2.o = function(object, property) {
        return Object.prototype.hasOwnProperty.call(object, property);
      };
      __webpack_require__2.p = "";
      return __webpack_require__2(__webpack_require__2.s = 14);
    })([
      /* 0 */
      /***/
      (function(module3, exports3) {
        module3.exports = __require("path");
      }),
      /* 1 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        exports3.__esModule = true;
        var _promise = __webpack_require__2(173);
        var _promise2 = _interopRequireDefault(_promise);
        function _interopRequireDefault(obj) {
          return obj && obj.__esModule ? obj : { default: obj };
        }
        exports3.default = function(fn) {
          return function() {
            var gen = fn.apply(this, arguments);
            return new _promise2.default(function(resolve3, reject3) {
              function step2(key, arg) {
                try {
                  var info = gen[key](arg);
                  var value = info.value;
                } catch (error) {
                  reject3(error);
                  return;
                }
                if (info.done) {
                  resolve3(value);
                } else {
                  return _promise2.default.resolve(value).then(function(value2) {
                    step2("next", value2);
                  }, function(err) {
                    step2("throw", err);
                  });
                }
              }
              return step2("next");
            });
          };
        };
      }),
      /* 2 */
      /***/
      (function(module3, exports3) {
        module3.exports = __require("util");
      }),
      /* 3 */
      /***/
      (function(module3, exports3) {
        module3.exports = __require("fs");
      }),
      /* 4 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        Object.defineProperty(exports3, "__esModule", {
          value: true
        });
        class MessageError extends Error {
          constructor(msg, code) {
            super(msg);
            this.code = code;
          }
        }
        exports3.MessageError = MessageError;
        class ProcessSpawnError extends MessageError {
          constructor(msg, code, process17) {
            super(msg, code);
            this.process = process17;
          }
        }
        exports3.ProcessSpawnError = ProcessSpawnError;
        class SecurityError extends MessageError {
        }
        exports3.SecurityError = SecurityError;
        class ProcessTermError extends MessageError {
        }
        exports3.ProcessTermError = ProcessTermError;
        class ResponseError2 extends Error {
          constructor(msg, responseCode) {
            super(msg);
            this.responseCode = responseCode;
          }
        }
        exports3.ResponseError = ResponseError2;
      }),
      /* 5 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        Object.defineProperty(exports3, "__esModule", {
          value: true
        });
        exports3.getFirstSuitableFolder = exports3.readFirstAvailableStream = exports3.makeTempDir = exports3.hardlinksWork = exports3.writeFilePreservingEol = exports3.getFileSizeOnDisk = exports3.walk = exports3.symlink = exports3.find = exports3.readJsonAndFile = exports3.readJson = exports3.readFileAny = exports3.hardlinkBulk = exports3.copyBulk = exports3.unlink = exports3.glob = exports3.link = exports3.chmod = exports3.lstat = exports3.exists = exports3.mkdirp = exports3.stat = exports3.access = exports3.rename = exports3.readdir = exports3.realpath = exports3.readlink = exports3.writeFile = exports3.open = exports3.readFileBuffer = exports3.lockQueue = exports3.constants = void 0;
        var _asyncToGenerator2;
        function _load_asyncToGenerator() {
          return _asyncToGenerator2 = _interopRequireDefault(__webpack_require__2(1));
        }
        let buildActionsForCopy = (() => {
          var _ref = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (queue2, events, possibleExtraneous, reporter) {
            let build2 = (() => {
              var _ref5 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (data) {
                const src2 = data.src, dest = data.dest, type4 = data.type;
                const onFresh = data.onFresh || noop5;
                const onDone = data.onDone || noop5;
                if (files.has(dest.toLowerCase())) {
                  reporter.verbose(`The case-insensitive file ${dest} shouldn't be copied twice in one bulk copy`);
                } else {
                  files.add(dest.toLowerCase());
                }
                if (type4 === "symlink") {
                  yield mkdirp((_path || _load_path()).default.dirname(dest));
                  onFresh();
                  actions.symlink.push({
                    dest,
                    linkname: src2
                  });
                  onDone();
                  return;
                }
                if (events.ignoreBasenames.indexOf((_path || _load_path()).default.basename(src2)) >= 0) {
                  return;
                }
                const srcStat = yield lstat(src2);
                let srcFiles;
                if (srcStat.isDirectory()) {
                  srcFiles = yield readdir3(src2);
                }
                let destStat;
                try {
                  destStat = yield lstat(dest);
                } catch (e) {
                  if (e.code !== "ENOENT") {
                    throw e;
                  }
                }
                if (destStat) {
                  const bothSymlinks = srcStat.isSymbolicLink() && destStat.isSymbolicLink();
                  const bothFolders = srcStat.isDirectory() && destStat.isDirectory();
                  const bothFiles = srcStat.isFile() && destStat.isFile();
                  if (bothFiles && artifactFiles.has(dest)) {
                    onDone();
                    reporter.verbose(reporter.lang("verboseFileSkipArtifact", src2));
                    return;
                  }
                  if (bothFiles && srcStat.size === destStat.size && (0, (_fsNormalized || _load_fsNormalized()).fileDatesEqual)(srcStat.mtime, destStat.mtime)) {
                    onDone();
                    reporter.verbose(reporter.lang("verboseFileSkip", src2, dest, srcStat.size, +srcStat.mtime));
                    return;
                  }
                  if (bothSymlinks) {
                    const srcReallink = yield readlink(src2);
                    if (srcReallink === (yield readlink(dest))) {
                      onDone();
                      reporter.verbose(reporter.lang("verboseFileSkipSymlink", src2, dest, srcReallink));
                      return;
                    }
                  }
                  if (bothFolders) {
                    const destFiles = yield readdir3(dest);
                    invariant(srcFiles, "src files not initialised");
                    for (var _iterator4 = destFiles, _isArray4 = Array.isArray(_iterator4), _i4 = 0, _iterator4 = _isArray4 ? _iterator4 : _iterator4[Symbol.iterator](); ; ) {
                      var _ref6;
                      if (_isArray4) {
                        if (_i4 >= _iterator4.length) break;
                        _ref6 = _iterator4[_i4++];
                      } else {
                        _i4 = _iterator4.next();
                        if (_i4.done) break;
                        _ref6 = _i4.value;
                      }
                      const file = _ref6;
                      if (srcFiles.indexOf(file) < 0) {
                        const loc = (_path || _load_path()).default.join(dest, file);
                        possibleExtraneous.add(loc);
                        if ((yield lstat(loc)).isDirectory()) {
                          for (var _iterator5 = yield readdir3(loc), _isArray5 = Array.isArray(_iterator5), _i5 = 0, _iterator5 = _isArray5 ? _iterator5 : _iterator5[Symbol.iterator](); ; ) {
                            var _ref7;
                            if (_isArray5) {
                              if (_i5 >= _iterator5.length) break;
                              _ref7 = _iterator5[_i5++];
                            } else {
                              _i5 = _iterator5.next();
                              if (_i5.done) break;
                              _ref7 = _i5.value;
                            }
                            const file2 = _ref7;
                            possibleExtraneous.add((_path || _load_path()).default.join(loc, file2));
                          }
                        }
                      }
                    }
                  }
                }
                if (destStat && destStat.isSymbolicLink()) {
                  yield (0, (_fsNormalized || _load_fsNormalized()).unlink)(dest);
                  destStat = null;
                }
                if (srcStat.isSymbolicLink()) {
                  onFresh();
                  const linkname = yield readlink(src2);
                  actions.symlink.push({
                    dest,
                    linkname
                  });
                  onDone();
                } else if (srcStat.isDirectory()) {
                  if (!destStat) {
                    reporter.verbose(reporter.lang("verboseFileFolder", dest));
                    yield mkdirp(dest);
                  }
                  const destParts = dest.split((_path || _load_path()).default.sep);
                  while (destParts.length) {
                    files.add(destParts.join((_path || _load_path()).default.sep).toLowerCase());
                    destParts.pop();
                  }
                  invariant(srcFiles, "src files not initialised");
                  let remaining = srcFiles.length;
                  if (!remaining) {
                    onDone();
                  }
                  for (var _iterator6 = srcFiles, _isArray6 = Array.isArray(_iterator6), _i6 = 0, _iterator6 = _isArray6 ? _iterator6 : _iterator6[Symbol.iterator](); ; ) {
                    var _ref8;
                    if (_isArray6) {
                      if (_i6 >= _iterator6.length) break;
                      _ref8 = _iterator6[_i6++];
                    } else {
                      _i6 = _iterator6.next();
                      if (_i6.done) break;
                      _ref8 = _i6.value;
                    }
                    const file = _ref8;
                    queue2.push({
                      dest: (_path || _load_path()).default.join(dest, file),
                      onFresh,
                      onDone: (function(_onDone) {
                        function onDone2() {
                          return _onDone.apply(this, arguments);
                        }
                        onDone2.toString = function() {
                          return _onDone.toString();
                        };
                        return onDone2;
                      })(function() {
                        if (--remaining === 0) {
                          onDone();
                        }
                      }),
                      src: (_path || _load_path()).default.join(src2, file)
                    });
                  }
                } else if (srcStat.isFile()) {
                  onFresh();
                  actions.file.push({
                    src: src2,
                    dest,
                    atime: srcStat.atime,
                    mtime: srcStat.mtime,
                    mode: srcStat.mode
                  });
                  onDone();
                } else {
                  throw new Error(`unsure how to copy this: ${src2}`);
                }
              });
              return function build3(_x5) {
                return _ref5.apply(this, arguments);
              };
            })();
            const artifactFiles = new Set(events.artifactFiles || []);
            const files = /* @__PURE__ */ new Set();
            for (var _iterator = queue2, _isArray2 = Array.isArray(_iterator), _i = 0, _iterator = _isArray2 ? _iterator : _iterator[Symbol.iterator](); ; ) {
              var _ref2;
              if (_isArray2) {
                if (_i >= _iterator.length) break;
                _ref2 = _iterator[_i++];
              } else {
                _i = _iterator.next();
                if (_i.done) break;
                _ref2 = _i.value;
              }
              const item = _ref2;
              const onDone = item.onDone;
              item.onDone = function() {
                events.onProgress(item.dest);
                if (onDone) {
                  onDone();
                }
              };
            }
            events.onStart(queue2.length);
            const actions = {
              file: [],
              symlink: [],
              link: []
            };
            while (queue2.length) {
              const items = queue2.splice(0, CONCURRENT_QUEUE_ITEMS);
              yield Promise.all(items.map(build2));
            }
            for (var _iterator2 = artifactFiles, _isArray22 = Array.isArray(_iterator2), _i2 = 0, _iterator2 = _isArray22 ? _iterator2 : _iterator2[Symbol.iterator](); ; ) {
              var _ref3;
              if (_isArray22) {
                if (_i2 >= _iterator2.length) break;
                _ref3 = _iterator2[_i2++];
              } else {
                _i2 = _iterator2.next();
                if (_i2.done) break;
                _ref3 = _i2.value;
              }
              const file = _ref3;
              if (possibleExtraneous.has(file)) {
                reporter.verbose(reporter.lang("verboseFilePhantomExtraneous", file));
                possibleExtraneous.delete(file);
              }
            }
            for (var _iterator3 = possibleExtraneous, _isArray3 = Array.isArray(_iterator3), _i3 = 0, _iterator3 = _isArray3 ? _iterator3 : _iterator3[Symbol.iterator](); ; ) {
              var _ref4;
              if (_isArray3) {
                if (_i3 >= _iterator3.length) break;
                _ref4 = _iterator3[_i3++];
              } else {
                _i3 = _iterator3.next();
                if (_i3.done) break;
                _ref4 = _i3.value;
              }
              const loc = _ref4;
              if (files.has(loc.toLowerCase())) {
                possibleExtraneous.delete(loc);
              }
            }
            return actions;
          });
          return function buildActionsForCopy2(_x, _x2, _x3, _x4) {
            return _ref.apply(this, arguments);
          };
        })();
        let buildActionsForHardlink = (() => {
          var _ref9 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (queue2, events, possibleExtraneous, reporter) {
            let build2 = (() => {
              var _ref13 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (data) {
                const src2 = data.src, dest = data.dest;
                const onFresh = data.onFresh || noop5;
                const onDone = data.onDone || noop5;
                if (files.has(dest.toLowerCase())) {
                  onDone();
                  return;
                }
                files.add(dest.toLowerCase());
                if (events.ignoreBasenames.indexOf((_path || _load_path()).default.basename(src2)) >= 0) {
                  return;
                }
                const srcStat = yield lstat(src2);
                let srcFiles;
                if (srcStat.isDirectory()) {
                  srcFiles = yield readdir3(src2);
                }
                const destExists = yield exists(dest);
                if (destExists) {
                  const destStat = yield lstat(dest);
                  const bothSymlinks = srcStat.isSymbolicLink() && destStat.isSymbolicLink();
                  const bothFolders = srcStat.isDirectory() && destStat.isDirectory();
                  const bothFiles = srcStat.isFile() && destStat.isFile();
                  if (srcStat.mode !== destStat.mode) {
                    try {
                      yield access2(dest, srcStat.mode);
                    } catch (err) {
                      reporter.verbose(err);
                    }
                  }
                  if (bothFiles && artifactFiles.has(dest)) {
                    onDone();
                    reporter.verbose(reporter.lang("verboseFileSkipArtifact", src2));
                    return;
                  }
                  if (bothFiles && srcStat.ino !== null && srcStat.ino === destStat.ino) {
                    onDone();
                    reporter.verbose(reporter.lang("verboseFileSkip", src2, dest, srcStat.ino));
                    return;
                  }
                  if (bothSymlinks) {
                    const srcReallink = yield readlink(src2);
                    if (srcReallink === (yield readlink(dest))) {
                      onDone();
                      reporter.verbose(reporter.lang("verboseFileSkipSymlink", src2, dest, srcReallink));
                      return;
                    }
                  }
                  if (bothFolders) {
                    const destFiles = yield readdir3(dest);
                    invariant(srcFiles, "src files not initialised");
                    for (var _iterator10 = destFiles, _isArray10 = Array.isArray(_iterator10), _i10 = 0, _iterator10 = _isArray10 ? _iterator10 : _iterator10[Symbol.iterator](); ; ) {
                      var _ref14;
                      if (_isArray10) {
                        if (_i10 >= _iterator10.length) break;
                        _ref14 = _iterator10[_i10++];
                      } else {
                        _i10 = _iterator10.next();
                        if (_i10.done) break;
                        _ref14 = _i10.value;
                      }
                      const file = _ref14;
                      if (srcFiles.indexOf(file) < 0) {
                        const loc = (_path || _load_path()).default.join(dest, file);
                        possibleExtraneous.add(loc);
                        if ((yield lstat(loc)).isDirectory()) {
                          for (var _iterator11 = yield readdir3(loc), _isArray11 = Array.isArray(_iterator11), _i11 = 0, _iterator11 = _isArray11 ? _iterator11 : _iterator11[Symbol.iterator](); ; ) {
                            var _ref15;
                            if (_isArray11) {
                              if (_i11 >= _iterator11.length) break;
                              _ref15 = _iterator11[_i11++];
                            } else {
                              _i11 = _iterator11.next();
                              if (_i11.done) break;
                              _ref15 = _i11.value;
                            }
                            const file2 = _ref15;
                            possibleExtraneous.add((_path || _load_path()).default.join(loc, file2));
                          }
                        }
                      }
                    }
                  }
                }
                if (srcStat.isSymbolicLink()) {
                  onFresh();
                  const linkname = yield readlink(src2);
                  actions.symlink.push({
                    dest,
                    linkname
                  });
                  onDone();
                } else if (srcStat.isDirectory()) {
                  reporter.verbose(reporter.lang("verboseFileFolder", dest));
                  yield mkdirp(dest);
                  const destParts = dest.split((_path || _load_path()).default.sep);
                  while (destParts.length) {
                    files.add(destParts.join((_path || _load_path()).default.sep).toLowerCase());
                    destParts.pop();
                  }
                  invariant(srcFiles, "src files not initialised");
                  let remaining = srcFiles.length;
                  if (!remaining) {
                    onDone();
                  }
                  for (var _iterator12 = srcFiles, _isArray12 = Array.isArray(_iterator12), _i12 = 0, _iterator12 = _isArray12 ? _iterator12 : _iterator12[Symbol.iterator](); ; ) {
                    var _ref16;
                    if (_isArray12) {
                      if (_i12 >= _iterator12.length) break;
                      _ref16 = _iterator12[_i12++];
                    } else {
                      _i12 = _iterator12.next();
                      if (_i12.done) break;
                      _ref16 = _i12.value;
                    }
                    const file = _ref16;
                    queue2.push({
                      onFresh,
                      src: (_path || _load_path()).default.join(src2, file),
                      dest: (_path || _load_path()).default.join(dest, file),
                      onDone: (function(_onDone2) {
                        function onDone2() {
                          return _onDone2.apply(this, arguments);
                        }
                        onDone2.toString = function() {
                          return _onDone2.toString();
                        };
                        return onDone2;
                      })(function() {
                        if (--remaining === 0) {
                          onDone();
                        }
                      })
                    });
                  }
                } else if (srcStat.isFile()) {
                  onFresh();
                  actions.link.push({
                    src: src2,
                    dest,
                    removeDest: destExists
                  });
                  onDone();
                } else {
                  throw new Error(`unsure how to copy this: ${src2}`);
                }
              });
              return function build3(_x10) {
                return _ref13.apply(this, arguments);
              };
            })();
            const artifactFiles = new Set(events.artifactFiles || []);
            const files = /* @__PURE__ */ new Set();
            for (var _iterator7 = queue2, _isArray7 = Array.isArray(_iterator7), _i7 = 0, _iterator7 = _isArray7 ? _iterator7 : _iterator7[Symbol.iterator](); ; ) {
              var _ref10;
              if (_isArray7) {
                if (_i7 >= _iterator7.length) break;
                _ref10 = _iterator7[_i7++];
              } else {
                _i7 = _iterator7.next();
                if (_i7.done) break;
                _ref10 = _i7.value;
              }
              const item = _ref10;
              const onDone = item.onDone || noop5;
              item.onDone = function() {
                events.onProgress(item.dest);
                onDone();
              };
            }
            events.onStart(queue2.length);
            const actions = {
              file: [],
              symlink: [],
              link: []
            };
            while (queue2.length) {
              const items = queue2.splice(0, CONCURRENT_QUEUE_ITEMS);
              yield Promise.all(items.map(build2));
            }
            for (var _iterator8 = artifactFiles, _isArray8 = Array.isArray(_iterator8), _i8 = 0, _iterator8 = _isArray8 ? _iterator8 : _iterator8[Symbol.iterator](); ; ) {
              var _ref11;
              if (_isArray8) {
                if (_i8 >= _iterator8.length) break;
                _ref11 = _iterator8[_i8++];
              } else {
                _i8 = _iterator8.next();
                if (_i8.done) break;
                _ref11 = _i8.value;
              }
              const file = _ref11;
              if (possibleExtraneous.has(file)) {
                reporter.verbose(reporter.lang("verboseFilePhantomExtraneous", file));
                possibleExtraneous.delete(file);
              }
            }
            for (var _iterator9 = possibleExtraneous, _isArray9 = Array.isArray(_iterator9), _i9 = 0, _iterator9 = _isArray9 ? _iterator9 : _iterator9[Symbol.iterator](); ; ) {
              var _ref12;
              if (_isArray9) {
                if (_i9 >= _iterator9.length) break;
                _ref12 = _iterator9[_i9++];
              } else {
                _i9 = _iterator9.next();
                if (_i9.done) break;
                _ref12 = _i9.value;
              }
              const loc = _ref12;
              if (files.has(loc.toLowerCase())) {
                possibleExtraneous.delete(loc);
              }
            }
            return actions;
          });
          return function buildActionsForHardlink2(_x6, _x7, _x8, _x9) {
            return _ref9.apply(this, arguments);
          };
        })();
        let copyBulk = exports3.copyBulk = (() => {
          var _ref17 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (queue2, reporter, _events) {
            const events = {
              onStart: _events && _events.onStart || noop5,
              onProgress: _events && _events.onProgress || noop5,
              possibleExtraneous: _events ? _events.possibleExtraneous : /* @__PURE__ */ new Set(),
              ignoreBasenames: _events && _events.ignoreBasenames || [],
              artifactFiles: _events && _events.artifactFiles || []
            };
            const actions = yield buildActionsForCopy(queue2, events, events.possibleExtraneous, reporter);
            events.onStart(actions.file.length + actions.symlink.length + actions.link.length);
            const fileActions = actions.file;
            const currentlyWriting = /* @__PURE__ */ new Map();
            yield (_promise || _load_promise()).queue(fileActions, (() => {
              var _ref18 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (data) {
                let writePromise;
                while (writePromise = currentlyWriting.get(data.dest)) {
                  yield writePromise;
                }
                reporter.verbose(reporter.lang("verboseFileCopy", data.src, data.dest));
                const copier = (0, (_fsNormalized || _load_fsNormalized()).copyFile)(data, function() {
                  return currentlyWriting.delete(data.dest);
                });
                currentlyWriting.set(data.dest, copier);
                events.onProgress(data.dest);
                return copier;
              });
              return function(_x14) {
                return _ref18.apply(this, arguments);
              };
            })(), CONCURRENT_QUEUE_ITEMS);
            const symlinkActions = actions.symlink;
            yield (_promise || _load_promise()).queue(symlinkActions, function(data) {
              const linkname = (_path || _load_path()).default.resolve((_path || _load_path()).default.dirname(data.dest), data.linkname);
              reporter.verbose(reporter.lang("verboseFileSymlink", data.dest, linkname));
              return symlink(linkname, data.dest);
            });
          });
          return function copyBulk2(_x11, _x12, _x13) {
            return _ref17.apply(this, arguments);
          };
        })();
        let hardlinkBulk = exports3.hardlinkBulk = (() => {
          var _ref19 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (queue2, reporter, _events) {
            const events = {
              onStart: _events && _events.onStart || noop5,
              onProgress: _events && _events.onProgress || noop5,
              possibleExtraneous: _events ? _events.possibleExtraneous : /* @__PURE__ */ new Set(),
              artifactFiles: _events && _events.artifactFiles || [],
              ignoreBasenames: []
            };
            const actions = yield buildActionsForHardlink(queue2, events, events.possibleExtraneous, reporter);
            events.onStart(actions.file.length + actions.symlink.length + actions.link.length);
            const fileActions = actions.link;
            yield (_promise || _load_promise()).queue(fileActions, (() => {
              var _ref20 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (data) {
                reporter.verbose(reporter.lang("verboseFileLink", data.src, data.dest));
                if (data.removeDest) {
                  yield (0, (_fsNormalized || _load_fsNormalized()).unlink)(data.dest);
                }
                yield link2(data.src, data.dest);
              });
              return function(_x18) {
                return _ref20.apply(this, arguments);
              };
            })(), CONCURRENT_QUEUE_ITEMS);
            const symlinkActions = actions.symlink;
            yield (_promise || _load_promise()).queue(symlinkActions, function(data) {
              const linkname = (_path || _load_path()).default.resolve((_path || _load_path()).default.dirname(data.dest), data.linkname);
              reporter.verbose(reporter.lang("verboseFileSymlink", data.dest, linkname));
              return symlink(linkname, data.dest);
            });
          });
          return function hardlinkBulk2(_x15, _x16, _x17) {
            return _ref19.apply(this, arguments);
          };
        })();
        let readFileAny = exports3.readFileAny = (() => {
          var _ref21 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (files) {
            for (var _iterator13 = files, _isArray13 = Array.isArray(_iterator13), _i13 = 0, _iterator13 = _isArray13 ? _iterator13 : _iterator13[Symbol.iterator](); ; ) {
              var _ref22;
              if (_isArray13) {
                if (_i13 >= _iterator13.length) break;
                _ref22 = _iterator13[_i13++];
              } else {
                _i13 = _iterator13.next();
                if (_i13.done) break;
                _ref22 = _i13.value;
              }
              const file = _ref22;
              if (yield exists(file)) {
                return readFile4(file);
              }
            }
            return null;
          });
          return function readFileAny2(_x19) {
            return _ref21.apply(this, arguments);
          };
        })();
        let readJson = exports3.readJson = (() => {
          var _ref23 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (loc) {
            return (yield readJsonAndFile(loc)).object;
          });
          return function readJson2(_x20) {
            return _ref23.apply(this, arguments);
          };
        })();
        let readJsonAndFile = exports3.readJsonAndFile = (() => {
          var _ref24 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (loc) {
            const file = yield readFile4(loc);
            try {
              return {
                object: (0, (_map2 || _load_map()).default)(JSON.parse(stripBOM(file))),
                content: file
              };
            } catch (err) {
              err.message = `${loc}: ${err.message}`;
              throw err;
            }
          });
          return function readJsonAndFile2(_x21) {
            return _ref24.apply(this, arguments);
          };
        })();
        let find = exports3.find = (() => {
          var _ref25 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (filename, dir) {
            const parts = dir.split((_path || _load_path()).default.sep);
            while (parts.length) {
              const loc = parts.concat(filename).join((_path || _load_path()).default.sep);
              if (yield exists(loc)) {
                return loc;
              } else {
                parts.pop();
              }
            }
            return false;
          });
          return function find2(_x22, _x23) {
            return _ref25.apply(this, arguments);
          };
        })();
        let symlink = exports3.symlink = (() => {
          var _ref26 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (src2, dest) {
            try {
              const stats = yield lstat(dest);
              if (stats.isSymbolicLink()) {
                const resolved = yield realpath3(dest);
                if (resolved === src2) {
                  return;
                }
              }
            } catch (err) {
              if (err.code !== "ENOENT") {
                throw err;
              }
            }
            yield (0, (_fsNormalized || _load_fsNormalized()).unlink)(dest);
            if (process.platform === "win32") {
              yield fsSymlink(src2, dest, "junction");
            } else {
              let relative2;
              try {
                relative2 = (_path || _load_path()).default.relative((_fs || _load_fs()).default.realpathSync((_path || _load_path()).default.dirname(dest)), (_fs || _load_fs()).default.realpathSync(src2));
              } catch (err) {
                if (err.code !== "ENOENT") {
                  throw err;
                }
                relative2 = (_path || _load_path()).default.relative((_path || _load_path()).default.dirname(dest), src2);
              }
              yield fsSymlink(relative2 || ".", dest);
            }
          });
          return function symlink2(_x24, _x25) {
            return _ref26.apply(this, arguments);
          };
        })();
        let walk = exports3.walk = (() => {
          var _ref27 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (dir, relativeDir, ignoreBasenames = /* @__PURE__ */ new Set()) {
            let files = [];
            let filenames = yield readdir3(dir);
            if (ignoreBasenames.size) {
              filenames = filenames.filter(function(name) {
                return !ignoreBasenames.has(name);
              });
            }
            for (var _iterator14 = filenames, _isArray14 = Array.isArray(_iterator14), _i14 = 0, _iterator14 = _isArray14 ? _iterator14 : _iterator14[Symbol.iterator](); ; ) {
              var _ref28;
              if (_isArray14) {
                if (_i14 >= _iterator14.length) break;
                _ref28 = _iterator14[_i14++];
              } else {
                _i14 = _iterator14.next();
                if (_i14.done) break;
                _ref28 = _i14.value;
              }
              const name = _ref28;
              const relative2 = relativeDir ? (_path || _load_path()).default.join(relativeDir, name) : name;
              const loc = (_path || _load_path()).default.join(dir, name);
              const stat3 = yield lstat(loc);
              files.push({
                relative: relative2,
                basename: name,
                absolute: loc,
                mtime: +stat3.mtime
              });
              if (stat3.isDirectory()) {
                files = files.concat(yield walk(loc, relative2, ignoreBasenames));
              }
            }
            return files;
          });
          return function walk2(_x26, _x27) {
            return _ref27.apply(this, arguments);
          };
        })();
        let getFileSizeOnDisk = exports3.getFileSizeOnDisk = (() => {
          var _ref29 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (loc) {
            const stat3 = yield lstat(loc);
            const size = stat3.size, blockSize = stat3.blksize;
            return Math.ceil(size / blockSize) * blockSize;
          });
          return function getFileSizeOnDisk2(_x28) {
            return _ref29.apply(this, arguments);
          };
        })();
        let getEolFromFile = (() => {
          var _ref30 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (path218) {
            if (!(yield exists(path218))) {
              return void 0;
            }
            const buffer3 = yield readFileBuffer(path218);
            for (let i2 = 0; i2 < buffer3.length; ++i2) {
              if (buffer3[i2] === cr) {
                return "\r\n";
              }
              if (buffer3[i2] === lf) {
                return "\n";
              }
            }
            return void 0;
          });
          return function getEolFromFile2(_x29) {
            return _ref30.apply(this, arguments);
          };
        })();
        let writeFilePreservingEol = exports3.writeFilePreservingEol = (() => {
          var _ref31 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (path218, data) {
            const eol = (yield getEolFromFile(path218)) || (_os || _load_os()).default.EOL;
            if (eol !== "\n") {
              data = data.replace(/\n/g, eol);
            }
            yield writeFile3(path218, data);
          });
          return function writeFilePreservingEol2(_x30, _x31) {
            return _ref31.apply(this, arguments);
          };
        })();
        let hardlinksWork = exports3.hardlinksWork = (() => {
          var _ref32 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (dir) {
            const filename = "test-file" + Math.random();
            const file = (_path || _load_path()).default.join(dir, filename);
            const fileLink = (_path || _load_path()).default.join(dir, filename + "-link");
            try {
              yield writeFile3(file, "test");
              yield link2(file, fileLink);
            } catch (err) {
              return false;
            } finally {
              yield (0, (_fsNormalized || _load_fsNormalized()).unlink)(file);
              yield (0, (_fsNormalized || _load_fsNormalized()).unlink)(fileLink);
            }
            return true;
          });
          return function hardlinksWork2(_x32) {
            return _ref32.apply(this, arguments);
          };
        })();
        let makeTempDir = exports3.makeTempDir = (() => {
          var _ref33 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (prefix) {
            const dir = (_path || _load_path()).default.join((_os || _load_os()).default.tmpdir(), `yarn-${prefix || ""}-${Date.now()}-${Math.random()}`);
            yield (0, (_fsNormalized || _load_fsNormalized()).unlink)(dir);
            yield mkdirp(dir);
            return dir;
          });
          return function makeTempDir2(_x33) {
            return _ref33.apply(this, arguments);
          };
        })();
        let readFirstAvailableStream = exports3.readFirstAvailableStream = (() => {
          var _ref34 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (paths3) {
            for (var _iterator15 = paths3, _isArray15 = Array.isArray(_iterator15), _i15 = 0, _iterator15 = _isArray15 ? _iterator15 : _iterator15[Symbol.iterator](); ; ) {
              var _ref35;
              if (_isArray15) {
                if (_i15 >= _iterator15.length) break;
                _ref35 = _iterator15[_i15++];
              } else {
                _i15 = _iterator15.next();
                if (_i15.done) break;
                _ref35 = _i15.value;
              }
              const path218 = _ref35;
              try {
                const fd = yield open5(path218, "r");
                return (_fs || _load_fs()).default.createReadStream(path218, { fd });
              } catch (err) {
              }
            }
            return null;
          });
          return function readFirstAvailableStream2(_x34) {
            return _ref34.apply(this, arguments);
          };
        })();
        let getFirstSuitableFolder = exports3.getFirstSuitableFolder = (() => {
          var _ref36 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (paths3, mode = constants5.W_OK | constants5.X_OK) {
            const result2 = {
              skipped: [],
              folder: null
            };
            for (var _iterator16 = paths3, _isArray16 = Array.isArray(_iterator16), _i16 = 0, _iterator16 = _isArray16 ? _iterator16 : _iterator16[Symbol.iterator](); ; ) {
              var _ref37;
              if (_isArray16) {
                if (_i16 >= _iterator16.length) break;
                _ref37 = _iterator16[_i16++];
              } else {
                _i16 = _iterator16.next();
                if (_i16.done) break;
                _ref37 = _i16.value;
              }
              const folder = _ref37;
              try {
                yield mkdirp(folder);
                yield access2(folder, mode);
                result2.folder = folder;
                return result2;
              } catch (error) {
                result2.skipped.push({
                  error,
                  folder
                });
              }
            }
            return result2;
          });
          return function getFirstSuitableFolder2(_x35) {
            return _ref36.apply(this, arguments);
          };
        })();
        exports3.copy = copy2;
        exports3.readFile = readFile4;
        exports3.readFileRaw = readFileRaw;
        exports3.normalizeOS = normalizeOS;
        var _fs;
        function _load_fs() {
          return _fs = _interopRequireDefault(__webpack_require__2(3));
        }
        var _glob;
        function _load_glob() {
          return _glob = _interopRequireDefault(__webpack_require__2(75));
        }
        var _os;
        function _load_os() {
          return _os = _interopRequireDefault(__webpack_require__2(36));
        }
        var _path;
        function _load_path() {
          return _path = _interopRequireDefault(__webpack_require__2(0));
        }
        var _blockingQueue;
        function _load_blockingQueue() {
          return _blockingQueue = _interopRequireDefault(__webpack_require__2(84));
        }
        var _promise;
        function _load_promise() {
          return _promise = _interopRequireWildcard(__webpack_require__2(40));
        }
        var _promise2;
        function _load_promise2() {
          return _promise2 = __webpack_require__2(40);
        }
        var _map2;
        function _load_map() {
          return _map2 = _interopRequireDefault(__webpack_require__2(20));
        }
        var _fsNormalized;
        function _load_fsNormalized() {
          return _fsNormalized = __webpack_require__2(164);
        }
        function _interopRequireWildcard(obj) {
          if (obj && obj.__esModule) {
            return obj;
          } else {
            var newObj = {};
            if (obj != null) {
              for (var key in obj) {
                if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key];
              }
            }
            newObj.default = obj;
            return newObj;
          }
        }
        function _interopRequireDefault(obj) {
          return obj && obj.__esModule ? obj : { default: obj };
        }
        const constants5 = exports3.constants = typeof (_fs || _load_fs()).default.constants !== "undefined" ? (_fs || _load_fs()).default.constants : {
          R_OK: (_fs || _load_fs()).default.R_OK,
          W_OK: (_fs || _load_fs()).default.W_OK,
          X_OK: (_fs || _load_fs()).default.X_OK
        };
        const lockQueue = exports3.lockQueue = new (_blockingQueue || _load_blockingQueue()).default("fs lock");
        const readFileBuffer = exports3.readFileBuffer = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.readFile);
        const open5 = exports3.open = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.open);
        const writeFile3 = exports3.writeFile = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.writeFile);
        const readlink = exports3.readlink = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.readlink);
        const realpath3 = exports3.realpath = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.realpath);
        const readdir3 = exports3.readdir = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.readdir);
        const rename = exports3.rename = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.rename);
        const access2 = exports3.access = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.access);
        const stat2 = exports3.stat = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.stat);
        const mkdirp = exports3.mkdirp = (0, (_promise2 || _load_promise2()).promisify)(__webpack_require__2(116));
        const exists = exports3.exists = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.exists, true);
        const lstat = exports3.lstat = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.lstat);
        const chmod = exports3.chmod = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.chmod);
        const link2 = exports3.link = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.link);
        const glob2 = exports3.glob = (0, (_promise2 || _load_promise2()).promisify)((_glob || _load_glob()).default);
        exports3.unlink = (_fsNormalized || _load_fsNormalized()).unlink;
        const CONCURRENT_QUEUE_ITEMS = (_fs || _load_fs()).default.copyFile ? 128 : 4;
        const fsSymlink = (0, (_promise2 || _load_promise2()).promisify)((_fs || _load_fs()).default.symlink);
        const invariant = __webpack_require__2(7);
        const stripBOM = __webpack_require__2(122);
        const noop5 = () => {
        };
        function copy2(src2, dest, reporter) {
          return copyBulk([{ src: src2, dest }], reporter);
        }
        function _readFile(loc, encoding) {
          return new Promise((resolve3, reject3) => {
            (_fs || _load_fs()).default.readFile(loc, encoding, function(err, content) {
              if (err) {
                reject3(err);
              } else {
                resolve3(content);
              }
            });
          });
        }
        function readFile4(loc) {
          return _readFile(loc, "utf8").then(normalizeOS);
        }
        function readFileRaw(loc) {
          return _readFile(loc, "binary");
        }
        function normalizeOS(body) {
          return body.replace(/\r\n/g, "\n");
        }
        const cr = "\r".charCodeAt(0);
        const lf = "\n".charCodeAt(0);
      }),
      /* 6 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        Object.defineProperty(exports3, "__esModule", {
          value: true
        });
        exports3.getPathKey = getPathKey;
        const os15 = __webpack_require__2(36);
        const path218 = __webpack_require__2(0);
        const userHome = __webpack_require__2(45).default;
        var _require = __webpack_require__2(171);
        const getCacheDir2 = _require.getCacheDir, getConfigDir2 = _require.getConfigDir, getDataDir2 = _require.getDataDir;
        const isWebpackBundle = __webpack_require__2(227);
        const DEPENDENCY_TYPES = exports3.DEPENDENCY_TYPES = ["devDependencies", "dependencies", "optionalDependencies", "peerDependencies"];
        const RESOLUTIONS = exports3.RESOLUTIONS = "resolutions";
        const MANIFEST_FIELDS = exports3.MANIFEST_FIELDS = [RESOLUTIONS, ...DEPENDENCY_TYPES];
        const SUPPORTED_NODE_VERSIONS = exports3.SUPPORTED_NODE_VERSIONS = "^4.8.0 || ^5.7.0 || ^6.2.2 || >=8.0.0";
        const YARN_REGISTRY = exports3.YARN_REGISTRY = "https://registry.yarnpkg.com";
        const YARN_DOCS = exports3.YARN_DOCS = "https://yarnpkg.com/en/docs/cli/";
        const YARN_INSTALLER_SH = exports3.YARN_INSTALLER_SH = "https://yarnpkg.com/install.sh";
        const YARN_INSTALLER_MSI = exports3.YARN_INSTALLER_MSI = "https://yarnpkg.com/latest.msi";
        const SELF_UPDATE_VERSION_URL = exports3.SELF_UPDATE_VERSION_URL = "https://yarnpkg.com/latest-version";
        const CACHE_VERSION = exports3.CACHE_VERSION = 2;
        const LOCKFILE_VERSION2 = exports3.LOCKFILE_VERSION = 1;
        const NETWORK_CONCURRENCY = exports3.NETWORK_CONCURRENCY = 8;
        const NETWORK_TIMEOUT = exports3.NETWORK_TIMEOUT = 30 * 1e3;
        const CHILD_CONCURRENCY = exports3.CHILD_CONCURRENCY = 5;
        const REQUIRED_PACKAGE_KEYS = exports3.REQUIRED_PACKAGE_KEYS = ["name", "version", "_uid"];
        function getPreferredCacheDirectories() {
          const preferredCacheDirectories = [getCacheDir2()];
          if (process.getuid) {
            preferredCacheDirectories.push(path218.join(os15.tmpdir(), `.yarn-cache-${process.getuid()}`));
          }
          preferredCacheDirectories.push(path218.join(os15.tmpdir(), `.yarn-cache`));
          return preferredCacheDirectories;
        }
        const PREFERRED_MODULE_CACHE_DIRECTORIES = exports3.PREFERRED_MODULE_CACHE_DIRECTORIES = getPreferredCacheDirectories();
        const CONFIG_DIRECTORY = exports3.CONFIG_DIRECTORY = getConfigDir2();
        const DATA_DIRECTORY = exports3.DATA_DIRECTORY = getDataDir2();
        const LINK_REGISTRY_DIRECTORY = exports3.LINK_REGISTRY_DIRECTORY = path218.join(DATA_DIRECTORY, "link");
        const GLOBAL_MODULE_DIRECTORY = exports3.GLOBAL_MODULE_DIRECTORY = path218.join(DATA_DIRECTORY, "global");
        const NODE_BIN_PATH = exports3.NODE_BIN_PATH = process.execPath;
        const YARN_BIN_PATH = exports3.YARN_BIN_PATH = getYarnBinPath();
        function getYarnBinPath() {
          if (isWebpackBundle) {
            return __filename;
          } else {
            return path218.join(__dirname, "..", "bin", "yarn.js");
          }
        }
        const NODE_MODULES_FOLDER = exports3.NODE_MODULES_FOLDER = "node_modules";
        const NODE_PACKAGE_JSON = exports3.NODE_PACKAGE_JSON = "package.json";
        const POSIX_GLOBAL_PREFIX = exports3.POSIX_GLOBAL_PREFIX = `${process.env.DESTDIR || ""}/usr/local`;
        const FALLBACK_GLOBAL_PREFIX = exports3.FALLBACK_GLOBAL_PREFIX = path218.join(userHome, ".yarn");
        const META_FOLDER = exports3.META_FOLDER = ".yarn-meta";
        const INTEGRITY_FILENAME = exports3.INTEGRITY_FILENAME = ".yarn-integrity";
        const LOCKFILE_FILENAME = exports3.LOCKFILE_FILENAME = "yarn.lock";
        const METADATA_FILENAME = exports3.METADATA_FILENAME = ".yarn-metadata.json";
        const TARBALL_FILENAME = exports3.TARBALL_FILENAME = ".yarn-tarball.tgz";
        const CLEAN_FILENAME = exports3.CLEAN_FILENAME = ".yarnclean";
        const NPM_LOCK_FILENAME = exports3.NPM_LOCK_FILENAME = "package-lock.json";
        const NPM_SHRINKWRAP_FILENAME = exports3.NPM_SHRINKWRAP_FILENAME = "npm-shrinkwrap.json";
        const DEFAULT_INDENT = exports3.DEFAULT_INDENT = "  ";
        const SINGLE_INSTANCE_PORT = exports3.SINGLE_INSTANCE_PORT = 31997;
        const SINGLE_INSTANCE_FILENAME = exports3.SINGLE_INSTANCE_FILENAME = ".yarn-single-instance";
        const ENV_PATH_KEY = exports3.ENV_PATH_KEY = getPathKey(process.platform, process.env);
        function getPathKey(platform3, env3) {
          let pathKey2 = "PATH";
          if (platform3 === "win32") {
            pathKey2 = "Path";
            for (const key in env3) {
              if (key.toLowerCase() === "path") {
                pathKey2 = key;
              }
            }
          }
          return pathKey2;
        }
        const VERSION_COLOR_SCHEME = exports3.VERSION_COLOR_SCHEME = {
          major: "red",
          premajor: "red",
          minor: "yellow",
          preminor: "yellow",
          patch: "green",
          prepatch: "green",
          prerelease: "red",
          unchanged: "white",
          unknown: "red"
        };
      }),
      /* 7 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        var NODE_ENV = process.env.NODE_ENV;
        var invariant = function(condition, format2, a2, b, c3, d, e, f) {
          if (NODE_ENV !== "production") {
            if (format2 === void 0) {
              throw new Error("invariant requires an error message argument");
            }
          }
          if (!condition) {
            var error;
            if (format2 === void 0) {
              error = new Error(
                "Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings."
              );
            } else {
              var args = [a2, b, c3, d, e, f];
              var argIndex = 0;
              error = new Error(
                format2.replace(/%s/g, function() {
                  return args[argIndex++];
                })
              );
              error.name = "Invariant Violation";
            }
            error.framesToPop = 1;
            throw error;
          }
        };
        module3.exports = invariant;
      }),
      ,
      /* 9 */
      /***/
      (function(module3, exports3) {
        module3.exports = __require("crypto");
      }),
      ,
      /* 11 */
      /***/
      (function(module3, exports3) {
        var global3 = module3.exports = typeof window != "undefined" && window.Math == Math ? window : typeof self != "undefined" && self.Math == Math ? self : Function("return this")();
        if (typeof __g == "number") __g = global3;
      }),
      /* 12 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        Object.defineProperty(exports3, "__esModule", {
          value: true
        });
        exports3.sortAlpha = sortAlpha;
        exports3.entries = entries;
        exports3.removePrefix = removePrefix;
        exports3.removeSuffix = removeSuffix3;
        exports3.addSuffix = addSuffix;
        exports3.hyphenate = hyphenate;
        exports3.camelCase = camelCase2;
        exports3.compareSortedArrays = compareSortedArrays;
        exports3.sleep = sleep;
        const _camelCase = __webpack_require__2(176);
        function sortAlpha(a2, b) {
          const shortLen = Math.min(a2.length, b.length);
          for (let i2 = 0; i2 < shortLen; i2++) {
            const aChar = a2.charCodeAt(i2);
            const bChar = b.charCodeAt(i2);
            if (aChar !== bChar) {
              return aChar - bChar;
            }
          }
          return a2.length - b.length;
        }
        function entries(obj) {
          const entries2 = [];
          if (obj) {
            for (const key in obj) {
              entries2.push([key, obj[key]]);
            }
          }
          return entries2;
        }
        function removePrefix(pattern, prefix) {
          if (pattern.startsWith(prefix)) {
            pattern = pattern.slice(prefix.length);
          }
          return pattern;
        }
        function removeSuffix3(pattern, suffix) {
          if (pattern.endsWith(suffix)) {
            return pattern.slice(0, -suffix.length);
          }
          return pattern;
        }
        function addSuffix(pattern, suffix) {
          if (!pattern.endsWith(suffix)) {
            return pattern + suffix;
          }
          return pattern;
        }
        function hyphenate(str2) {
          return str2.replace(/[A-Z]/g, (match) => {
            return "-" + match.charAt(0).toLowerCase();
          });
        }
        function camelCase2(str2) {
          if (/[A-Z]/.test(str2)) {
            return null;
          } else {
            return _camelCase(str2);
          }
        }
        function compareSortedArrays(array1, array2) {
          if (array1.length !== array2.length) {
            return false;
          }
          for (let i2 = 0, len = array1.length; i2 < len; i2++) {
            if (array1[i2] !== array2[i2]) {
              return false;
            }
          }
          return true;
        }
        function sleep(ms) {
          return new Promise((resolve3) => {
            setTimeout(resolve3, ms);
          });
        }
      }),
      /* 13 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var store = __webpack_require__2(107)("wks");
        var uid = __webpack_require__2(111);
        var Symbol2 = __webpack_require__2(11).Symbol;
        var USE_SYMBOL = typeof Symbol2 == "function";
        var $exports = module3.exports = function(name) {
          return store[name] || (store[name] = USE_SYMBOL && Symbol2[name] || (USE_SYMBOL ? Symbol2 : uid)("Symbol." + name));
        };
        $exports.store = store;
      }),
      /* 14 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        Object.defineProperty(exports3, "__esModule", {
          value: true
        });
        exports3.stringify = exports3.parse = void 0;
        var _asyncToGenerator2;
        function _load_asyncToGenerator() {
          return _asyncToGenerator2 = _interopRequireDefault(__webpack_require__2(1));
        }
        var _parse;
        function _load_parse() {
          return _parse = __webpack_require__2(81);
        }
        Object.defineProperty(exports3, "parse", {
          enumerable: true,
          get: function get() {
            return _interopRequireDefault(_parse || _load_parse()).default;
          }
        });
        var _stringify;
        function _load_stringify() {
          return _stringify = __webpack_require__2(150);
        }
        Object.defineProperty(exports3, "stringify", {
          enumerable: true,
          get: function get() {
            return _interopRequireDefault(_stringify || _load_stringify()).default;
          }
        });
        exports3.implodeEntry = implodeEntry;
        exports3.explodeEntry = explodeEntry;
        var _misc;
        function _load_misc() {
          return _misc = __webpack_require__2(12);
        }
        var _normalizePattern;
        function _load_normalizePattern() {
          return _normalizePattern = __webpack_require__2(29);
        }
        var _parse2;
        function _load_parse2() {
          return _parse2 = _interopRequireDefault(__webpack_require__2(81));
        }
        var _constants;
        function _load_constants() {
          return _constants = __webpack_require__2(6);
        }
        var _fs;
        function _load_fs() {
          return _fs = _interopRequireWildcard(__webpack_require__2(5));
        }
        function _interopRequireWildcard(obj) {
          if (obj && obj.__esModule) {
            return obj;
          } else {
            var newObj = {};
            if (obj != null) {
              for (var key in obj) {
                if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key];
              }
            }
            newObj.default = obj;
            return newObj;
          }
        }
        function _interopRequireDefault(obj) {
          return obj && obj.__esModule ? obj : { default: obj };
        }
        const invariant = __webpack_require__2(7);
        const path218 = __webpack_require__2(0);
        const ssri6 = __webpack_require__2(55);
        function getName(pattern) {
          return (0, (_normalizePattern || _load_normalizePattern()).normalizePattern)(pattern).name;
        }
        function blankObjectUndefined(obj) {
          return obj && Object.keys(obj).length ? obj : void 0;
        }
        function keyForRemote(remote) {
          return remote.resolved || (remote.reference && remote.hash ? `${remote.reference}#${remote.hash}` : null);
        }
        function serializeIntegrity(integrity) {
          return integrity.toString().split(" ").sort().join(" ");
        }
        function implodeEntry(pattern, obj) {
          const inferredName = getName(pattern);
          const integrity = obj.integrity ? serializeIntegrity(obj.integrity) : "";
          const imploded = {
            name: inferredName === obj.name ? void 0 : obj.name,
            version: obj.version,
            uid: obj.uid === obj.version ? void 0 : obj.uid,
            resolved: obj.resolved,
            registry: obj.registry === "npm" ? void 0 : obj.registry,
            dependencies: blankObjectUndefined(obj.dependencies),
            optionalDependencies: blankObjectUndefined(obj.optionalDependencies),
            permissions: blankObjectUndefined(obj.permissions),
            prebuiltVariants: blankObjectUndefined(obj.prebuiltVariants)
          };
          if (integrity) {
            imploded.integrity = integrity;
          }
          return imploded;
        }
        function explodeEntry(pattern, obj) {
          obj.optionalDependencies = obj.optionalDependencies || {};
          obj.dependencies = obj.dependencies || {};
          obj.uid = obj.uid || obj.version;
          obj.permissions = obj.permissions || {};
          obj.registry = obj.registry || "npm";
          obj.name = obj.name || getName(pattern);
          const integrity = obj.integrity;
          if (integrity && integrity.isIntegrity) {
            obj.integrity = ssri6.parse(integrity);
          }
          return obj;
        }
        class Lockfile {
          constructor({ cache, source, parseResultType } = {}) {
            this.source = source || "";
            this.cache = cache;
            this.parseResultType = parseResultType;
          }
          // source string if the `cache` was parsed
          // if true, we're parsing an old yarn file and need to update integrity fields
          hasEntriesExistWithoutIntegrity() {
            if (!this.cache) {
              return false;
            }
            for (const key in this.cache) {
              if (!/^.*@(file:|http)/.test(key) && this.cache[key] && !this.cache[key].integrity) {
                return true;
              }
            }
            return false;
          }
          static fromDirectory(dir, reporter) {
            return (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* () {
              const lockfileLoc = path218.join(dir, (_constants || _load_constants()).LOCKFILE_FILENAME);
              let lockfile;
              let rawLockfile = "";
              let parseResult;
              if (yield (_fs || _load_fs()).exists(lockfileLoc)) {
                rawLockfile = yield (_fs || _load_fs()).readFile(lockfileLoc);
                parseResult = (0, (_parse2 || _load_parse2()).default)(rawLockfile, lockfileLoc);
                if (reporter) {
                  if (parseResult.type === "merge") {
                    reporter.info(reporter.lang("lockfileMerged"));
                  } else if (parseResult.type === "conflict") {
                    reporter.warn(reporter.lang("lockfileConflict"));
                  }
                }
                lockfile = parseResult.object;
              } else if (reporter) {
                reporter.info(reporter.lang("noLockfileFound"));
              }
              return new Lockfile({ cache: lockfile, source: rawLockfile, parseResultType: parseResult && parseResult.type });
            })();
          }
          getLocked(pattern) {
            const cache = this.cache;
            if (!cache) {
              return void 0;
            }
            const shrunk = pattern in cache && cache[pattern];
            if (typeof shrunk === "string") {
              return this.getLocked(shrunk);
            } else if (shrunk) {
              explodeEntry(pattern, shrunk);
              return shrunk;
            }
            return void 0;
          }
          removePattern(pattern) {
            const cache = this.cache;
            if (!cache) {
              return;
            }
            delete cache[pattern];
          }
          getLockfile(patterns) {
            const lockfile = {};
            const seen = /* @__PURE__ */ new Map();
            const sortedPatternsKeys = Object.keys(patterns).sort((_misc || _load_misc()).sortAlpha);
            for (var _iterator = sortedPatternsKeys, _isArray2 = Array.isArray(_iterator), _i = 0, _iterator = _isArray2 ? _iterator : _iterator[Symbol.iterator](); ; ) {
              var _ref;
              if (_isArray2) {
                if (_i >= _iterator.length) break;
                _ref = _iterator[_i++];
              } else {
                _i = _iterator.next();
                if (_i.done) break;
                _ref = _i.value;
              }
              const pattern = _ref;
              const pkg = patterns[pattern];
              const remote = pkg._remote, ref = pkg._reference;
              invariant(ref, "Package is missing a reference");
              invariant(remote, "Package is missing a remote");
              const remoteKey = keyForRemote(remote);
              const seenPattern = remoteKey && seen.get(remoteKey);
              if (seenPattern) {
                lockfile[pattern] = seenPattern;
                if (!seenPattern.name && getName(pattern) !== pkg.name) {
                  seenPattern.name = pkg.name;
                }
                continue;
              }
              const obj = implodeEntry(pattern, {
                name: pkg.name,
                version: pkg.version,
                uid: pkg._uid,
                resolved: remote.resolved,
                integrity: remote.integrity,
                registry: remote.registry,
                dependencies: pkg.dependencies,
                peerDependencies: pkg.peerDependencies,
                optionalDependencies: pkg.optionalDependencies,
                permissions: ref.permissions,
                prebuiltVariants: pkg.prebuiltVariants
              });
              lockfile[pattern] = obj;
              if (remoteKey) {
                seen.set(remoteKey, obj);
              }
            }
            return lockfile;
          }
        }
        exports3.default = Lockfile;
      }),
      ,
      ,
      /* 17 */
      /***/
      (function(module3, exports3) {
        module3.exports = __require("stream");
      }),
      ,
      ,
      /* 20 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        Object.defineProperty(exports3, "__esModule", {
          value: true
        });
        exports3.default = nullify;
        function nullify(obj = {}) {
          if (Array.isArray(obj)) {
            for (var _iterator = obj, _isArray2 = Array.isArray(_iterator), _i = 0, _iterator = _isArray2 ? _iterator : _iterator[Symbol.iterator](); ; ) {
              var _ref;
              if (_isArray2) {
                if (_i >= _iterator.length) break;
                _ref = _iterator[_i++];
              } else {
                _i = _iterator.next();
                if (_i.done) break;
                _ref = _i.value;
              }
              const item = _ref;
              nullify(item);
            }
          } else if (obj !== null && typeof obj === "object" || typeof obj === "function") {
            Object.setPrototypeOf(obj, null);
            if (typeof obj === "object") {
              for (const key in obj) {
                nullify(obj[key]);
              }
            }
          }
          return obj;
        }
      }),
      ,
      /* 22 */
      /***/
      (function(module3, exports3) {
        module3.exports = __require("assert");
      }),
      /* 23 */
      /***/
      (function(module3, exports3) {
        var core2 = module3.exports = { version: "2.5.7" };
        if (typeof __e == "number") __e = core2;
      }),
      ,
      ,
      ,
      /* 27 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var isObject4 = __webpack_require__2(34);
        module3.exports = function(it) {
          if (!isObject4(it)) throw TypeError(it + " is not an object!");
          return it;
        };
      }),
      ,
      /* 29 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        Object.defineProperty(exports3, "__esModule", {
          value: true
        });
        exports3.normalizePattern = normalizePattern2;
        function normalizePattern2(pattern) {
          let hasVersion = false;
          let range = "latest";
          let name = pattern;
          let isScoped = false;
          if (name[0] === "@") {
            isScoped = true;
            name = name.slice(1);
          }
          const parts = name.split("@");
          if (parts.length > 1) {
            name = parts.shift();
            range = parts.join("@");
            if (range) {
              hasVersion = true;
            } else {
              range = "*";
            }
          }
          if (isScoped) {
            name = `@${name}`;
          }
          return { name, range, hasVersion };
        }
      }),
      ,
      /* 31 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var dP = __webpack_require__2(50);
        var createDesc = __webpack_require__2(106);
        module3.exports = __webpack_require__2(33) ? function(object, key, value) {
          return dP.f(object, key, createDesc(1, value));
        } : function(object, key, value) {
          object[key] = value;
          return object;
        };
      }),
      /* 32 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var buffer3 = __webpack_require__2(63);
        var Buffer5 = buffer3.Buffer;
        function copyProps(src2, dst) {
          for (var key in src2) {
            dst[key] = src2[key];
          }
        }
        if (Buffer5.from && Buffer5.alloc && Buffer5.allocUnsafe && Buffer5.allocUnsafeSlow) {
          module3.exports = buffer3;
        } else {
          copyProps(buffer3, exports3);
          exports3.Buffer = SafeBuffer;
        }
        function SafeBuffer(arg, encodingOrOffset, length) {
          return Buffer5(arg, encodingOrOffset, length);
        }
        copyProps(Buffer5, SafeBuffer);
        SafeBuffer.from = function(arg, encodingOrOffset, length) {
          if (typeof arg === "number") {
            throw new TypeError("Argument must not be a number");
          }
          return Buffer5(arg, encodingOrOffset, length);
        };
        SafeBuffer.alloc = function(size, fill, encoding) {
          if (typeof size !== "number") {
            throw new TypeError("Argument must be a number");
          }
          var buf = Buffer5(size);
          if (fill !== void 0) {
            if (typeof encoding === "string") {
              buf.fill(fill, encoding);
            } else {
              buf.fill(fill);
            }
          } else {
            buf.fill(0);
          }
          return buf;
        };
        SafeBuffer.allocUnsafe = function(size) {
          if (typeof size !== "number") {
            throw new TypeError("Argument must be a number");
          }
          return Buffer5(size);
        };
        SafeBuffer.allocUnsafeSlow = function(size) {
          if (typeof size !== "number") {
            throw new TypeError("Argument must be a number");
          }
          return buffer3.SlowBuffer(size);
        };
      }),
      /* 33 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        module3.exports = !__webpack_require__2(85)(function() {
          return Object.defineProperty({}, "a", { get: function() {
            return 7;
          } }).a != 7;
        });
      }),
      /* 34 */
      /***/
      (function(module3, exports3) {
        module3.exports = function(it) {
          return typeof it === "object" ? it !== null : typeof it === "function";
        };
      }),
      /* 35 */
      /***/
      (function(module3, exports3) {
        module3.exports = {};
      }),
      /* 36 */
      /***/
      (function(module3, exports3) {
        module3.exports = __require("os");
      }),
      ,
      ,
      ,
      /* 40 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        Object.defineProperty(exports3, "__esModule", {
          value: true
        });
        exports3.wait = wait;
        exports3.promisify = promisify8;
        exports3.queue = queue2;
        function wait(delay) {
          return new Promise((resolve3) => {
            setTimeout(resolve3, delay);
          });
        }
        function promisify8(fn, firstData) {
          return function(...args) {
            return new Promise(function(resolve3, reject3) {
              args.push(function(err, ...result2) {
                let res = result2;
                if (result2.length <= 1) {
                  res = result2[0];
                }
                if (firstData) {
                  res = err;
                  err = null;
                }
                if (err) {
                  reject3(err);
                } else {
                  resolve3(res);
                }
              });
              fn.apply(null, args);
            });
          };
        }
        function queue2(arr, promiseProducer, concurrency = Infinity) {
          concurrency = Math.min(concurrency, arr.length);
          arr = arr.slice();
          const results = [];
          let total = arr.length;
          if (!total) {
            return Promise.resolve(results);
          }
          return new Promise((resolve3, reject3) => {
            for (let i2 = 0; i2 < concurrency; i2++) {
              next2();
            }
            function next2() {
              const item = arr.shift();
              const promise2 = promiseProducer(item);
              promise2.then(function(result2) {
                results.push(result2);
                total--;
                if (total === 0) {
                  resolve3(results);
                } else {
                  if (arr.length) {
                    next2();
                  }
                }
              }, reject3);
            }
          });
        }
      }),
      /* 41 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var global3 = __webpack_require__2(11);
        var core2 = __webpack_require__2(23);
        var ctx = __webpack_require__2(48);
        var hide = __webpack_require__2(31);
        var has = __webpack_require__2(49);
        var PROTOTYPE = "prototype";
        var $export = function(type4, name, source) {
          var IS_FORCED = type4 & $export.F;
          var IS_GLOBAL = type4 & $export.G;
          var IS_STATIC = type4 & $export.S;
          var IS_PROTO = type4 & $export.P;
          var IS_BIND = type4 & $export.B;
          var IS_WRAP = type4 & $export.W;
          var exports4 = IS_GLOBAL ? core2 : core2[name] || (core2[name] = {});
          var expProto = exports4[PROTOTYPE];
          var target2 = IS_GLOBAL ? global3 : IS_STATIC ? global3[name] : (global3[name] || {})[PROTOTYPE];
          var key, own, out;
          if (IS_GLOBAL) source = name;
          for (key in source) {
            own = !IS_FORCED && target2 && target2[key] !== void 0;
            if (own && has(exports4, key)) continue;
            out = own ? target2[key] : source[key];
            exports4[key] = IS_GLOBAL && typeof target2[key] != "function" ? source[key] : IS_BIND && own ? ctx(out, global3) : IS_WRAP && target2[key] == out ? (function(C) {
              var F = function(a2, b, c3) {
                if (this instanceof C) {
                  switch (arguments.length) {
                    case 0:
                      return new C();
                    case 1:
                      return new C(a2);
                    case 2:
                      return new C(a2, b);
                  }
                  return new C(a2, b, c3);
                }
                return C.apply(this, arguments);
              };
              F[PROTOTYPE] = C[PROTOTYPE];
              return F;
            })(out) : IS_PROTO && typeof out == "function" ? ctx(Function.call, out) : out;
            if (IS_PROTO) {
              (exports4.virtual || (exports4.virtual = {}))[key] = out;
              if (type4 & $export.R && expProto && !expProto[key]) hide(expProto, key, out);
            }
          }
        };
        $export.F = 1;
        $export.G = 2;
        $export.S = 4;
        $export.P = 8;
        $export.B = 16;
        $export.W = 32;
        $export.U = 64;
        $export.R = 128;
        module3.exports = $export;
      }),
      /* 42 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        try {
          var util56 = __webpack_require__2(2);
          if (typeof util56.inherits !== "function") throw "";
          module3.exports = util56.inherits;
        } catch (e) {
          module3.exports = __webpack_require__2(224);
        }
      }),
      ,
      ,
      /* 45 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        Object.defineProperty(exports3, "__esModule", {
          value: true
        });
        exports3.home = void 0;
        var _rootUser;
        function _load_rootUser() {
          return _rootUser = _interopRequireDefault(__webpack_require__2(169));
        }
        function _interopRequireDefault(obj) {
          return obj && obj.__esModule ? obj : { default: obj };
        }
        const path218 = __webpack_require__2(0);
        const home = exports3.home = __webpack_require__2(36).homedir();
        const userHomeDir = (_rootUser || _load_rootUser()).default ? path218.resolve("/usr/local/share") : home;
        exports3.default = userHomeDir;
      }),
      /* 46 */
      /***/
      (function(module3, exports3) {
        module3.exports = function(it) {
          if (typeof it != "function") throw TypeError(it + " is not a function!");
          return it;
        };
      }),
      /* 47 */
      /***/
      (function(module3, exports3) {
        var toString4 = {}.toString;
        module3.exports = function(it) {
          return toString4.call(it).slice(8, -1);
        };
      }),
      /* 48 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var aFunction = __webpack_require__2(46);
        module3.exports = function(fn, that, length) {
          aFunction(fn);
          if (that === void 0) return fn;
          switch (length) {
            case 1:
              return function(a2) {
                return fn.call(that, a2);
              };
            case 2:
              return function(a2, b) {
                return fn.call(that, a2, b);
              };
            case 3:
              return function(a2, b, c3) {
                return fn.call(that, a2, b, c3);
              };
          }
          return function() {
            return fn.apply(that, arguments);
          };
        };
      }),
      /* 49 */
      /***/
      (function(module3, exports3) {
        var hasOwnProperty2 = {}.hasOwnProperty;
        module3.exports = function(it, key) {
          return hasOwnProperty2.call(it, key);
        };
      }),
      /* 50 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var anObject = __webpack_require__2(27);
        var IE8_DOM_DEFINE = __webpack_require__2(184);
        var toPrimitive = __webpack_require__2(201);
        var dP = Object.defineProperty;
        exports3.f = __webpack_require__2(33) ? Object.defineProperty : function defineProperty(O2, P2, Attributes) {
          anObject(O2);
          P2 = toPrimitive(P2, true);
          anObject(Attributes);
          if (IE8_DOM_DEFINE) try {
            return dP(O2, P2, Attributes);
          } catch (e) {
          }
          if ("get" in Attributes || "set" in Attributes) throw TypeError("Accessors not supported!");
          if ("value" in Attributes) O2[P2] = Attributes.value;
          return O2;
        };
      }),
      ,
      ,
      ,
      /* 54 */
      /***/
      (function(module3, exports3) {
        module3.exports = __require("events");
      }),
      /* 55 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        const Buffer5 = __webpack_require__2(32).Buffer;
        const crypto11 = __webpack_require__2(9);
        const Transform2 = __webpack_require__2(17).Transform;
        const SPEC_ALGORITHMS = ["sha256", "sha384", "sha512"];
        const BASE64_REGEX = /^[a-z0-9+/]+(?:=?=?)$/i;
        const SRI_REGEX = /^([^-]+)-([^?]+)([?\S*]*)$/;
        const STRICT_SRI_REGEX = /^([^-]+)-([A-Za-z0-9+/=]{44,88})(\?[\x21-\x7E]*)*$/;
        const VCHAR_REGEX = /^[\x21-\x7E]+$/;
        class Hash {
          get isHash() {
            return true;
          }
          constructor(hash2, opts2) {
            const strict = !!(opts2 && opts2.strict);
            this.source = hash2.trim();
            const match = this.source.match(
              strict ? STRICT_SRI_REGEX : SRI_REGEX
            );
            if (!match) {
              return;
            }
            if (strict && !SPEC_ALGORITHMS.some((a2) => a2 === match[1])) {
              return;
            }
            this.algorithm = match[1];
            this.digest = match[2];
            const rawOpts = match[3];
            this.options = rawOpts ? rawOpts.slice(1).split("?") : [];
          }
          hexDigest() {
            return this.digest && Buffer5.from(this.digest, "base64").toString("hex");
          }
          toJSON() {
            return this.toString();
          }
          toString(opts2) {
            if (opts2 && opts2.strict) {
              if (!// The spec has very restricted productions for algorithms.
              // https://www.w3.org/TR/CSP2/#source-list-syntax
              (SPEC_ALGORITHMS.some((x) => x === this.algorithm) && // Usually, if someone insists on using a "different" base64, we
              // leave it as-is, since there's multiple standards, and the
              // specified is not a URL-safe variant.
              // https://www.w3.org/TR/CSP2/#base64_value
              this.digest.match(BASE64_REGEX) && // Option syntax is strictly visual chars.
              // https://w3c.github.io/webappsec-subresource-integrity/#grammardef-option-expression
              // https://tools.ietf.org/html/rfc5234#appendix-B.1
              (this.options || []).every((opt) => opt.match(VCHAR_REGEX)))) {
                return "";
              }
            }
            const options = this.options && this.options.length ? `?${this.options.join("?")}` : "";
            return `${this.algorithm}-${this.digest}${options}`;
          }
        }
        class Integrity {
          get isIntegrity() {
            return true;
          }
          toJSON() {
            return this.toString();
          }
          toString(opts2) {
            opts2 = opts2 || {};
            let sep2 = opts2.sep || " ";
            if (opts2.strict) {
              sep2 = sep2.replace(/\S+/g, " ");
            }
            return Object.keys(this).map((k2) => {
              return this[k2].map((hash2) => {
                return Hash.prototype.toString.call(hash2, opts2);
              }).filter((x) => x.length).join(sep2);
            }).filter((x) => x.length).join(sep2);
          }
          concat(integrity, opts2) {
            const other = typeof integrity === "string" ? integrity : stringify(integrity, opts2);
            return parse7(`${this.toString(opts2)} ${other}`, opts2);
          }
          hexDigest() {
            return parse7(this, { single: true }).hexDigest();
          }
          match(integrity, opts2) {
            const other = parse7(integrity, opts2);
            const algo = other.pickAlgorithm(opts2);
            return this[algo] && other[algo] && this[algo].find(
              (hash2) => other[algo].find(
                (otherhash) => hash2.digest === otherhash.digest
              )
            ) || false;
          }
          pickAlgorithm(opts2) {
            const pickAlgorithm = opts2 && opts2.pickAlgorithm || getPrioritizedHash;
            const keys4 = Object.keys(this);
            if (!keys4.length) {
              throw new Error(`No algorithms available for ${JSON.stringify(this.toString())}`);
            }
            return keys4.reduce((acc, algo) => {
              return pickAlgorithm(acc, algo) || acc;
            });
          }
        }
        module3.exports.parse = parse7;
        function parse7(sri, opts2) {
          opts2 = opts2 || {};
          if (typeof sri === "string") {
            return _parse(sri, opts2);
          } else if (sri.algorithm && sri.digest) {
            const fullSri = new Integrity();
            fullSri[sri.algorithm] = [sri];
            return _parse(stringify(fullSri, opts2), opts2);
          } else {
            return _parse(stringify(sri, opts2), opts2);
          }
        }
        function _parse(integrity, opts2) {
          if (opts2.single) {
            return new Hash(integrity, opts2);
          }
          return integrity.trim().split(/\s+/).reduce((acc, string) => {
            const hash2 = new Hash(string, opts2);
            if (hash2.algorithm && hash2.digest) {
              const algo = hash2.algorithm;
              if (!acc[algo]) {
                acc[algo] = [];
              }
              acc[algo].push(hash2);
            }
            return acc;
          }, new Integrity());
        }
        module3.exports.stringify = stringify;
        function stringify(obj, opts2) {
          if (obj.algorithm && obj.digest) {
            return Hash.prototype.toString.call(obj, opts2);
          } else if (typeof obj === "string") {
            return stringify(parse7(obj, opts2), opts2);
          } else {
            return Integrity.prototype.toString.call(obj, opts2);
          }
        }
        module3.exports.fromHex = fromHex;
        function fromHex(hexDigest, algorithm, opts2) {
          const optString = opts2 && opts2.options && opts2.options.length ? `?${opts2.options.join("?")}` : "";
          return parse7(
            `${algorithm}-${Buffer5.from(hexDigest, "hex").toString("base64")}${optString}`,
            opts2
          );
        }
        module3.exports.fromData = fromData;
        function fromData(data, opts2) {
          opts2 = opts2 || {};
          const algorithms = opts2.algorithms || ["sha512"];
          const optString = opts2.options && opts2.options.length ? `?${opts2.options.join("?")}` : "";
          return algorithms.reduce((acc, algo) => {
            const digest = crypto11.createHash(algo).update(data).digest("base64");
            const hash2 = new Hash(
              `${algo}-${digest}${optString}`,
              opts2
            );
            if (hash2.algorithm && hash2.digest) {
              const algo2 = hash2.algorithm;
              if (!acc[algo2]) {
                acc[algo2] = [];
              }
              acc[algo2].push(hash2);
            }
            return acc;
          }, new Integrity());
        }
        module3.exports.fromStream = fromStream;
        function fromStream(stream2, opts2) {
          opts2 = opts2 || {};
          const P2 = opts2.Promise || Promise;
          const istream = integrityStream(opts2);
          return new P2((resolve3, reject3) => {
            stream2.pipe(istream);
            stream2.on("error", reject3);
            istream.on("error", reject3);
            let sri;
            istream.on("integrity", (s) => {
              sri = s;
            });
            istream.on("end", () => resolve3(sri));
            istream.on("data", () => {
            });
          });
        }
        module3.exports.checkData = checkData;
        function checkData(data, sri, opts2) {
          opts2 = opts2 || {};
          sri = parse7(sri, opts2);
          if (!Object.keys(sri).length) {
            if (opts2.error) {
              throw Object.assign(
                new Error("No valid integrity hashes to check against"),
                {
                  code: "EINTEGRITY"
                }
              );
            } else {
              return false;
            }
          }
          const algorithm = sri.pickAlgorithm(opts2);
          const digest = crypto11.createHash(algorithm).update(data).digest("base64");
          const newSri = parse7({ algorithm, digest });
          const match = newSri.match(sri, opts2);
          if (match || !opts2.error) {
            return match;
          } else if (typeof opts2.size === "number" && data.length !== opts2.size) {
            const err = new Error(`data size mismatch when checking ${sri}.
  Wanted: ${opts2.size}
  Found: ${data.length}`);
            err.code = "EBADSIZE";
            err.found = data.length;
            err.expected = opts2.size;
            err.sri = sri;
            throw err;
          } else {
            const err = new Error(`Integrity checksum failed when using ${algorithm}: Wanted ${sri}, but got ${newSri}. (${data.length} bytes)`);
            err.code = "EINTEGRITY";
            err.found = newSri;
            err.expected = sri;
            err.algorithm = algorithm;
            err.sri = sri;
            throw err;
          }
        }
        module3.exports.checkStream = checkStream;
        function checkStream(stream2, sri, opts2) {
          opts2 = opts2 || {};
          const P2 = opts2.Promise || Promise;
          const checker = integrityStream(Object.assign({}, opts2, {
            integrity: sri
          }));
          return new P2((resolve3, reject3) => {
            stream2.pipe(checker);
            stream2.on("error", reject3);
            checker.on("error", reject3);
            let sri2;
            checker.on("verified", (s) => {
              sri2 = s;
            });
            checker.on("end", () => resolve3(sri2));
            checker.on("data", () => {
            });
          });
        }
        module3.exports.integrityStream = integrityStream;
        function integrityStream(opts2) {
          opts2 = opts2 || {};
          const sri = opts2.integrity && parse7(opts2.integrity, opts2);
          const goodSri = sri && Object.keys(sri).length;
          const algorithm = goodSri && sri.pickAlgorithm(opts2);
          const digests = goodSri && sri[algorithm];
          const algorithms = Array.from(
            new Set(
              (opts2.algorithms || ["sha512"]).concat(algorithm ? [algorithm] : [])
            )
          );
          const hashes = algorithms.map(crypto11.createHash);
          let streamSize = 0;
          const stream2 = new Transform2({
            transform(chunk, enc, cb) {
              streamSize += chunk.length;
              hashes.forEach((h2) => h2.update(chunk, enc));
              cb(null, chunk, enc);
            }
          }).on("end", () => {
            const optString = opts2.options && opts2.options.length ? `?${opts2.options.join("?")}` : "";
            const newSri = parse7(hashes.map((h2, i2) => {
              return `${algorithms[i2]}-${h2.digest("base64")}${optString}`;
            }).join(" "), opts2);
            const match = goodSri && newSri.match(sri, opts2);
            if (typeof opts2.size === "number" && streamSize !== opts2.size) {
              const err = new Error(`stream size mismatch when checking ${sri}.
  Wanted: ${opts2.size}
  Found: ${streamSize}`);
              err.code = "EBADSIZE";
              err.found = streamSize;
              err.expected = opts2.size;
              err.sri = sri;
              stream2.emit("error", err);
            } else if (opts2.integrity && !match) {
              const err = new Error(`${sri} integrity checksum failed when using ${algorithm}: wanted ${digests} but got ${newSri}. (${streamSize} bytes)`);
              err.code = "EINTEGRITY";
              err.found = newSri;
              err.expected = digests;
              err.algorithm = algorithm;
              err.sri = sri;
              stream2.emit("error", err);
            } else {
              stream2.emit("size", streamSize);
              stream2.emit("integrity", newSri);
              match && stream2.emit("verified", match);
            }
          });
          return stream2;
        }
        module3.exports.create = createIntegrity;
        function createIntegrity(opts2) {
          opts2 = opts2 || {};
          const algorithms = opts2.algorithms || ["sha512"];
          const optString = opts2.options && opts2.options.length ? `?${opts2.options.join("?")}` : "";
          const hashes = algorithms.map(crypto11.createHash);
          return {
            update: function(chunk, enc) {
              hashes.forEach((h2) => h2.update(chunk, enc));
              return this;
            },
            digest: function(enc) {
              const integrity = algorithms.reduce((acc, algo) => {
                const digest = hashes.shift().digest("base64");
                const hash2 = new Hash(
                  `${algo}-${digest}${optString}`,
                  opts2
                );
                if (hash2.algorithm && hash2.digest) {
                  const algo2 = hash2.algorithm;
                  if (!acc[algo2]) {
                    acc[algo2] = [];
                  }
                  acc[algo2].push(hash2);
                }
                return acc;
              }, new Integrity());
              return integrity;
            }
          };
        }
        const NODE_HASHES = new Set(crypto11.getHashes());
        const DEFAULT_PRIORITY = [
          "md5",
          "whirlpool",
          "sha1",
          "sha224",
          "sha256",
          "sha384",
          "sha512",
          // TODO - it's unclear _which_ of these Node will actually use as its name
          //        for the algorithm, so we guesswork it based on the OpenSSL names.
          "sha3",
          "sha3-256",
          "sha3-384",
          "sha3-512",
          "sha3_256",
          "sha3_384",
          "sha3_512"
        ].filter((algo) => NODE_HASHES.has(algo));
        function getPrioritizedHash(algo1, algo2) {
          return DEFAULT_PRIORITY.indexOf(algo1.toLowerCase()) >= DEFAULT_PRIORITY.indexOf(algo2.toLowerCase()) ? algo1 : algo2;
        }
      }),
      ,
      ,
      ,
      ,
      /* 60 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        module3.exports = minimatch;
        minimatch.Minimatch = Minimatch;
        var path218 = { sep: "/" };
        try {
          path218 = __webpack_require__2(0);
        } catch (er) {
        }
        var GLOBSTAR = minimatch.GLOBSTAR = Minimatch.GLOBSTAR = {};
        var expand = __webpack_require__2(175);
        var plTypes = {
          "!": { open: "(?:(?!(?:", close: "))[^/]*?)" },
          "?": { open: "(?:", close: ")?" },
          "+": { open: "(?:", close: ")+" },
          "*": { open: "(?:", close: ")*" },
          "@": { open: "(?:", close: ")" }
        };
        var qmark = "[^/]";
        var star = qmark + "*?";
        var twoStarDot = "(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?";
        var twoStarNoDot = "(?:(?!(?:\\/|^)\\.).)*?";
        var reSpecials = charSet("().*{}+?[]^$\\!");
        function charSet(s) {
          return s.split("").reduce(function(set2, c3) {
            set2[c3] = true;
            return set2;
          }, {});
        }
        var slashSplit = /\/+/;
        minimatch.filter = filter14;
        function filter14(pattern, options) {
          options = options || {};
          return function(p, i2, list2) {
            return minimatch(p, pattern, options);
          };
        }
        function ext(a2, b) {
          a2 = a2 || {};
          b = b || {};
          var t2 = {};
          Object.keys(b).forEach(function(k2) {
            t2[k2] = b[k2];
          });
          Object.keys(a2).forEach(function(k2) {
            t2[k2] = a2[k2];
          });
          return t2;
        }
        minimatch.defaults = function(def) {
          if (!def || !Object.keys(def).length) return minimatch;
          var orig = minimatch;
          var m = function minimatch2(p, pattern, options) {
            return orig.minimatch(p, pattern, ext(def, options));
          };
          m.Minimatch = function Minimatch2(pattern, options) {
            return new orig.Minimatch(pattern, ext(def, options));
          };
          return m;
        };
        Minimatch.defaults = function(def) {
          if (!def || !Object.keys(def).length) return Minimatch;
          return minimatch.defaults(def).Minimatch;
        };
        function minimatch(p, pattern, options) {
          if (typeof pattern !== "string") {
            throw new TypeError("glob pattern string required");
          }
          if (!options) options = {};
          if (!options.nocomment && pattern.charAt(0) === "#") {
            return false;
          }
          if (pattern.trim() === "") return p === "";
          return new Minimatch(pattern, options).match(p);
        }
        function Minimatch(pattern, options) {
          if (!(this instanceof Minimatch)) {
            return new Minimatch(pattern, options);
          }
          if (typeof pattern !== "string") {
            throw new TypeError("glob pattern string required");
          }
          if (!options) options = {};
          pattern = pattern.trim();
          if (path218.sep !== "/") {
            pattern = pattern.split(path218.sep).join("/");
          }
          this.options = options;
          this.set = [];
          this.pattern = pattern;
          this.regexp = null;
          this.negate = false;
          this.comment = false;
          this.empty = false;
          this.make();
        }
        Minimatch.prototype.debug = function() {
        };
        Minimatch.prototype.make = make;
        function make() {
          if (this._made) return;
          var pattern = this.pattern;
          var options = this.options;
          if (!options.nocomment && pattern.charAt(0) === "#") {
            this.comment = true;
            return;
          }
          if (!pattern) {
            this.empty = true;
            return;
          }
          this.parseNegate();
          var set2 = this.globSet = this.braceExpand();
          if (options.debug) this.debug = console.error;
          this.debug(this.pattern, set2);
          set2 = this.globParts = set2.map(function(s) {
            return s.split(slashSplit);
          });
          this.debug(this.pattern, set2);
          set2 = set2.map(function(s, si, set3) {
            return s.map(this.parse, this);
          }, this);
          this.debug(this.pattern, set2);
          set2 = set2.filter(function(s) {
            return s.indexOf(false) === -1;
          });
          this.debug(this.pattern, set2);
          this.set = set2;
        }
        Minimatch.prototype.parseNegate = parseNegate;
        function parseNegate() {
          var pattern = this.pattern;
          var negate = false;
          var options = this.options;
          var negateOffset = 0;
          if (options.nonegate) return;
          for (var i2 = 0, l = pattern.length; i2 < l && pattern.charAt(i2) === "!"; i2++) {
            negate = !negate;
            negateOffset++;
          }
          if (negateOffset) this.pattern = pattern.substr(negateOffset);
          this.negate = negate;
        }
        minimatch.braceExpand = function(pattern, options) {
          return braceExpand(pattern, options);
        };
        Minimatch.prototype.braceExpand = braceExpand;
        function braceExpand(pattern, options) {
          if (!options) {
            if (this instanceof Minimatch) {
              options = this.options;
            } else {
              options = {};
            }
          }
          pattern = typeof pattern === "undefined" ? this.pattern : pattern;
          if (typeof pattern === "undefined") {
            throw new TypeError("undefined pattern");
          }
          if (options.nobrace || !pattern.match(/\{.*\}/)) {
            return [pattern];
          }
          return expand(pattern);
        }
        Minimatch.prototype.parse = parse7;
        var SUBPARSE = {};
        function parse7(pattern, isSub) {
          if (pattern.length > 1024 * 64) {
            throw new TypeError("pattern is too long");
          }
          var options = this.options;
          if (!options.noglobstar && pattern === "**") return GLOBSTAR;
          if (pattern === "") return "";
          var re = "";
          var hasMagic = !!options.nocase;
          var escaping = false;
          var patternListStack = [];
          var negativeLists = [];
          var stateChar;
          var inClass = false;
          var reClassStart = -1;
          var classStart = -1;
          var patternStart = pattern.charAt(0) === "." ? "" : options.dot ? "(?!(?:^|\\/)\\.{1,2}(?:$|\\/))" : "(?!\\.)";
          var self2 = this;
          function clearStateChar() {
            if (stateChar) {
              switch (stateChar) {
                case "*":
                  re += star;
                  hasMagic = true;
                  break;
                case "?":
                  re += qmark;
                  hasMagic = true;
                  break;
                default:
                  re += "\\" + stateChar;
                  break;
              }
              self2.debug("clearStateChar %j %j", stateChar, re);
              stateChar = false;
            }
          }
          for (var i2 = 0, len = pattern.length, c3; i2 < len && (c3 = pattern.charAt(i2)); i2++) {
            this.debug("%s	%s %s %j", pattern, i2, re, c3);
            if (escaping && reSpecials[c3]) {
              re += "\\" + c3;
              escaping = false;
              continue;
            }
            switch (c3) {
              case "/":
                return false;
              case "\\":
                clearStateChar();
                escaping = true;
                continue;
              // the various stateChar values
              // for the "extglob" stuff.
              case "?":
              case "*":
              case "+":
              case "@":
              case "!":
                this.debug("%s	%s %s %j <-- stateChar", pattern, i2, re, c3);
                if (inClass) {
                  this.debug("  in class");
                  if (c3 === "!" && i2 === classStart + 1) c3 = "^";
                  re += c3;
                  continue;
                }
                self2.debug("call clearStateChar %j", stateChar);
                clearStateChar();
                stateChar = c3;
                if (options.noext) clearStateChar();
                continue;
              case "(":
                if (inClass) {
                  re += "(";
                  continue;
                }
                if (!stateChar) {
                  re += "\\(";
                  continue;
                }
                patternListStack.push({
                  type: stateChar,
                  start: i2 - 1,
                  reStart: re.length,
                  open: plTypes[stateChar].open,
                  close: plTypes[stateChar].close
                });
                re += stateChar === "!" ? "(?:(?!(?:" : "(?:";
                this.debug("plType %j %j", stateChar, re);
                stateChar = false;
                continue;
              case ")":
                if (inClass || !patternListStack.length) {
                  re += "\\)";
                  continue;
                }
                clearStateChar();
                hasMagic = true;
                var pl = patternListStack.pop();
                re += pl.close;
                if (pl.type === "!") {
                  negativeLists.push(pl);
                }
                pl.reEnd = re.length;
                continue;
              case "|":
                if (inClass || !patternListStack.length || escaping) {
                  re += "\\|";
                  escaping = false;
                  continue;
                }
                clearStateChar();
                re += "|";
                continue;
              // these are mostly the same in regexp and glob
              case "[":
                clearStateChar();
                if (inClass) {
                  re += "\\" + c3;
                  continue;
                }
                inClass = true;
                classStart = i2;
                reClassStart = re.length;
                re += c3;
                continue;
              case "]":
                if (i2 === classStart + 1 || !inClass) {
                  re += "\\" + c3;
                  escaping = false;
                  continue;
                }
                if (inClass) {
                  var cs = pattern.substring(classStart + 1, i2);
                  try {
                    RegExp("[" + cs + "]");
                  } catch (er) {
                    var sp = this.parse(cs, SUBPARSE);
                    re = re.substr(0, reClassStart) + "\\[" + sp[0] + "\\]";
                    hasMagic = hasMagic || sp[1];
                    inClass = false;
                    continue;
                  }
                }
                hasMagic = true;
                inClass = false;
                re += c3;
                continue;
              default:
                clearStateChar();
                if (escaping) {
                  escaping = false;
                } else if (reSpecials[c3] && !(c3 === "^" && inClass)) {
                  re += "\\";
                }
                re += c3;
            }
          }
          if (inClass) {
            cs = pattern.substr(classStart + 1);
            sp = this.parse(cs, SUBPARSE);
            re = re.substr(0, reClassStart) + "\\[" + sp[0];
            hasMagic = hasMagic || sp[1];
          }
          for (pl = patternListStack.pop(); pl; pl = patternListStack.pop()) {
            var tail2 = re.slice(pl.reStart + pl.open.length);
            this.debug("setting tail", re, pl);
            tail2 = tail2.replace(/((?:\\{2}){0,64})(\\?)\|/g, function(_, $1, $2) {
              if (!$2) {
                $2 = "\\";
              }
              return $1 + $1 + $2 + "|";
            });
            this.debug("tail=%j\n   %s", tail2, tail2, pl, re);
            var t2 = pl.type === "*" ? star : pl.type === "?" ? qmark : "\\" + pl.type;
            hasMagic = true;
            re = re.slice(0, pl.reStart) + t2 + "\\(" + tail2;
          }
          clearStateChar();
          if (escaping) {
            re += "\\\\";
          }
          var addPatternStart = false;
          switch (re.charAt(0)) {
            case ".":
            case "[":
            case "(":
              addPatternStart = true;
          }
          for (var n2 = negativeLists.length - 1; n2 > -1; n2--) {
            var nl = negativeLists[n2];
            var nlBefore = re.slice(0, nl.reStart);
            var nlFirst = re.slice(nl.reStart, nl.reEnd - 8);
            var nlLast = re.slice(nl.reEnd - 8, nl.reEnd);
            var nlAfter = re.slice(nl.reEnd);
            nlLast += nlAfter;
            var openParensBefore = nlBefore.split("(").length - 1;
            var cleanAfter = nlAfter;
            for (i2 = 0; i2 < openParensBefore; i2++) {
              cleanAfter = cleanAfter.replace(/\)[+*?]?/, "");
            }
            nlAfter = cleanAfter;
            var dollar = "";
            if (nlAfter === "" && isSub !== SUBPARSE) {
              dollar = "$";
            }
            var newRe = nlBefore + nlFirst + nlAfter + dollar + nlLast;
            re = newRe;
          }
          if (re !== "" && hasMagic) {
            re = "(?=.)" + re;
          }
          if (addPatternStart) {
            re = patternStart + re;
          }
          if (isSub === SUBPARSE) {
            return [re, hasMagic];
          }
          if (!hasMagic) {
            return globUnescape(pattern);
          }
          var flags = options.nocase ? "i" : "";
          try {
            var regExp = new RegExp("^" + re + "$", flags);
          } catch (er) {
            return new RegExp("$.");
          }
          regExp._glob = pattern;
          regExp._src = re;
          return regExp;
        }
        minimatch.makeRe = function(pattern, options) {
          return new Minimatch(pattern, options || {}).makeRe();
        };
        Minimatch.prototype.makeRe = makeRe;
        function makeRe() {
          if (this.regexp || this.regexp === false) return this.regexp;
          var set2 = this.set;
          if (!set2.length) {
            this.regexp = false;
            return this.regexp;
          }
          var options = this.options;
          var twoStar = options.noglobstar ? star : options.dot ? twoStarDot : twoStarNoDot;
          var flags = options.nocase ? "i" : "";
          var re = set2.map(function(pattern) {
            return pattern.map(function(p) {
              return p === GLOBSTAR ? twoStar : typeof p === "string" ? regExpEscape(p) : p._src;
            }).join("\\/");
          }).join("|");
          re = "^(?:" + re + ")$";
          if (this.negate) re = "^(?!" + re + ").*$";
          try {
            this.regexp = new RegExp(re, flags);
          } catch (ex) {
            this.regexp = false;
          }
          return this.regexp;
        }
        minimatch.match = function(list2, pattern, options) {
          options = options || {};
          var mm = new Minimatch(pattern, options);
          list2 = list2.filter(function(f) {
            return mm.match(f);
          });
          if (mm.options.nonull && !list2.length) {
            list2.push(pattern);
          }
          return list2;
        };
        Minimatch.prototype.match = match;
        function match(f, partial) {
          this.debug("match", f, this.pattern);
          if (this.comment) return false;
          if (this.empty) return f === "";
          if (f === "/" && partial) return true;
          var options = this.options;
          if (path218.sep !== "/") {
            f = f.split(path218.sep).join("/");
          }
          f = f.split(slashSplit);
          this.debug(this.pattern, "split", f);
          var set2 = this.set;
          this.debug(this.pattern, "set", set2);
          var filename;
          var i2;
          for (i2 = f.length - 1; i2 >= 0; i2--) {
            filename = f[i2];
            if (filename) break;
          }
          for (i2 = 0; i2 < set2.length; i2++) {
            var pattern = set2[i2];
            var file = f;
            if (options.matchBase && pattern.length === 1) {
              file = [filename];
            }
            var hit = this.matchOne(file, pattern, partial);
            if (hit) {
              if (options.flipNegate) return true;
              return !this.negate;
            }
          }
          if (options.flipNegate) return false;
          return this.negate;
        }
        Minimatch.prototype.matchOne = function(file, pattern, partial) {
          var options = this.options;
          this.debug(
            "matchOne",
            { "this": this, file, pattern }
          );
          this.debug("matchOne", file.length, pattern.length);
          for (var fi = 0, pi = 0, fl = file.length, pl = pattern.length; fi < fl && pi < pl; fi++, pi++) {
            this.debug("matchOne loop");
            var p = pattern[pi];
            var f = file[fi];
            this.debug(pattern, p, f);
            if (p === false) return false;
            if (p === GLOBSTAR) {
              this.debug("GLOBSTAR", [pattern, p, f]);
              var fr = fi;
              var pr = pi + 1;
              if (pr === pl) {
                this.debug("** at the end");
                for (; fi < fl; fi++) {
                  if (file[fi] === "." || file[fi] === ".." || !options.dot && file[fi].charAt(0) === ".") return false;
                }
                return true;
              }
              while (fr < fl) {
                var swallowee = file[fr];
                this.debug("\nglobstar while", file, fr, pattern, pr, swallowee);
                if (this.matchOne(file.slice(fr), pattern.slice(pr), partial)) {
                  this.debug("globstar found match!", fr, fl, swallowee);
                  return true;
                } else {
                  if (swallowee === "." || swallowee === ".." || !options.dot && swallowee.charAt(0) === ".") {
                    this.debug("dot detected!", file, fr, pattern, pr);
                    break;
                  }
                  this.debug("globstar swallow a segment, and continue");
                  fr++;
                }
              }
              if (partial) {
                this.debug("\n>>> no match, partial?", file, fr, pattern, pr);
                if (fr === fl) return true;
              }
              return false;
            }
            var hit;
            if (typeof p === "string") {
              if (options.nocase) {
                hit = f.toLowerCase() === p.toLowerCase();
              } else {
                hit = f === p;
              }
              this.debug("string match", p, f, hit);
            } else {
              hit = f.match(p);
              this.debug("pattern match", p, f, hit);
            }
            if (!hit) return false;
          }
          if (fi === fl && pi === pl) {
            return true;
          } else if (fi === fl) {
            return partial;
          } else if (pi === pl) {
            var emptyFileEnd = fi === fl - 1 && file[fi] === "";
            return emptyFileEnd;
          }
          throw new Error("wtf?");
        };
        function globUnescape(s) {
          return s.replace(/\\(.)/g, "$1");
        }
        function regExpEscape(s) {
          return s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
        }
      }),
      /* 61 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var wrappy = __webpack_require__2(123);
        module3.exports = wrappy(once11);
        module3.exports.strict = wrappy(onceStrict);
        once11.proto = once11(function() {
          Object.defineProperty(Function.prototype, "once", {
            value: function() {
              return once11(this);
            },
            configurable: true
          });
          Object.defineProperty(Function.prototype, "onceStrict", {
            value: function() {
              return onceStrict(this);
            },
            configurable: true
          });
        });
        function once11(fn) {
          var f = function() {
            if (f.called) return f.value;
            f.called = true;
            return f.value = fn.apply(this, arguments);
          };
          f.called = false;
          return f;
        }
        function onceStrict(fn) {
          var f = function() {
            if (f.called)
              throw new Error(f.onceError);
            f.called = true;
            return f.value = fn.apply(this, arguments);
          };
          var name = fn.name || "Function wrapped with `once`";
          f.onceError = name + " shouldn't be called more than once";
          f.called = false;
          return f;
        }
      }),
      ,
      /* 63 */
      /***/
      (function(module3, exports3) {
        module3.exports = __require("buffer");
      }),
      ,
      ,
      ,
      /* 67 */
      /***/
      (function(module3, exports3) {
        module3.exports = function(it) {
          if (it == void 0) throw TypeError("Can't call method on  " + it);
          return it;
        };
      }),
      /* 68 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var isObject4 = __webpack_require__2(34);
        var document2 = __webpack_require__2(11).document;
        var is = isObject4(document2) && isObject4(document2.createElement);
        module3.exports = function(it) {
          return is ? document2.createElement(it) : {};
        };
      }),
      /* 69 */
      /***/
      (function(module3, exports3) {
        module3.exports = true;
      }),
      /* 70 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        var aFunction = __webpack_require__2(46);
        function PromiseCapability(C) {
          var resolve3, reject3;
          this.promise = new C(function($$resolve, $$reject) {
            if (resolve3 !== void 0 || reject3 !== void 0) throw TypeError("Bad Promise constructor");
            resolve3 = $$resolve;
            reject3 = $$reject;
          });
          this.resolve = aFunction(resolve3);
          this.reject = aFunction(reject3);
        }
        module3.exports.f = function(C) {
          return new PromiseCapability(C);
        };
      }),
      /* 71 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var def = __webpack_require__2(50).f;
        var has = __webpack_require__2(49);
        var TAG = __webpack_require__2(13)("toStringTag");
        module3.exports = function(it, tag, stat2) {
          if (it && !has(it = stat2 ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
        };
      }),
      /* 72 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var shared = __webpack_require__2(107)("keys");
        var uid = __webpack_require__2(111);
        module3.exports = function(key) {
          return shared[key] || (shared[key] = uid(key));
        };
      }),
      /* 73 */
      /***/
      (function(module3, exports3) {
        var ceil = Math.ceil;
        var floor = Math.floor;
        module3.exports = function(it) {
          return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
        };
      }),
      /* 74 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var IObject = __webpack_require__2(131);
        var defined = __webpack_require__2(67);
        module3.exports = function(it) {
          return IObject(defined(it));
        };
      }),
      /* 75 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        module3.exports = glob2;
        var fs111 = __webpack_require__2(3);
        var rp = __webpack_require__2(114);
        var minimatch = __webpack_require__2(60);
        var Minimatch = minimatch.Minimatch;
        var inherits = __webpack_require__2(42);
        var EE = __webpack_require__2(54).EventEmitter;
        var path218 = __webpack_require__2(0);
        var assert13 = __webpack_require__2(22);
        var isAbsolute3 = __webpack_require__2(76);
        var globSync = __webpack_require__2(218);
        var common3 = __webpack_require__2(115);
        var alphasort = common3.alphasort;
        var alphasorti = common3.alphasorti;
        var setopts = common3.setopts;
        var ownProp = common3.ownProp;
        var inflight = __webpack_require__2(223);
        var util56 = __webpack_require__2(2);
        var childrenIgnored = common3.childrenIgnored;
        var isIgnored = common3.isIgnored;
        var once11 = __webpack_require__2(61);
        function glob2(pattern, options, cb) {
          if (typeof options === "function") cb = options, options = {};
          if (!options) options = {};
          if (options.sync) {
            if (cb)
              throw new TypeError("callback provided to sync glob");
            return globSync(pattern, options);
          }
          return new Glob(pattern, options, cb);
        }
        glob2.sync = globSync;
        var GlobSync = glob2.GlobSync = globSync.GlobSync;
        glob2.glob = glob2;
        function extend3(origin, add) {
          if (add === null || typeof add !== "object") {
            return origin;
          }
          var keys4 = Object.keys(add);
          var i2 = keys4.length;
          while (i2--) {
            origin[keys4[i2]] = add[keys4[i2]];
          }
          return origin;
        }
        glob2.hasMagic = function(pattern, options_) {
          var options = extend3({}, options_);
          options.noprocess = true;
          var g = new Glob(pattern, options);
          var set2 = g.minimatch.set;
          if (!pattern)
            return false;
          if (set2.length > 1)
            return true;
          for (var j2 = 0; j2 < set2[0].length; j2++) {
            if (typeof set2[0][j2] !== "string")
              return true;
          }
          return false;
        };
        glob2.Glob = Glob;
        inherits(Glob, EE);
        function Glob(pattern, options, cb) {
          if (typeof options === "function") {
            cb = options;
            options = null;
          }
          if (options && options.sync) {
            if (cb)
              throw new TypeError("callback provided to sync glob");
            return new GlobSync(pattern, options);
          }
          if (!(this instanceof Glob))
            return new Glob(pattern, options, cb);
          setopts(this, pattern, options);
          this._didRealPath = false;
          var n2 = this.minimatch.set.length;
          this.matches = new Array(n2);
          if (typeof cb === "function") {
            cb = once11(cb);
            this.on("error", cb);
            this.on("end", function(matches2) {
              cb(null, matches2);
            });
          }
          var self2 = this;
          this._processing = 0;
          this._emitQueue = [];
          this._processQueue = [];
          this.paused = false;
          if (this.noprocess)
            return this;
          if (n2 === 0)
            return done();
          var sync3 = true;
          for (var i2 = 0; i2 < n2; i2++) {
            this._process(this.minimatch.set[i2], i2, false, done);
          }
          sync3 = false;
          function done() {
            --self2._processing;
            if (self2._processing <= 0) {
              if (sync3) {
                process.nextTick(function() {
                  self2._finish();
                });
              } else {
                self2._finish();
              }
            }
          }
        }
        Glob.prototype._finish = function() {
          assert13(this instanceof Glob);
          if (this.aborted)
            return;
          if (this.realpath && !this._didRealpath)
            return this._realpath();
          common3.finish(this);
          this.emit("end", this.found);
        };
        Glob.prototype._realpath = function() {
          if (this._didRealpath)
            return;
          this._didRealpath = true;
          var n2 = this.matches.length;
          if (n2 === 0)
            return this._finish();
          var self2 = this;
          for (var i2 = 0; i2 < this.matches.length; i2++)
            this._realpathSet(i2, next2);
          function next2() {
            if (--n2 === 0)
              self2._finish();
          }
        };
        Glob.prototype._realpathSet = function(index, cb) {
          var matchset = this.matches[index];
          if (!matchset)
            return cb();
          var found = Object.keys(matchset);
          var self2 = this;
          var n2 = found.length;
          if (n2 === 0)
            return cb();
          var set2 = this.matches[index] = /* @__PURE__ */ Object.create(null);
          found.forEach(function(p, i2) {
            p = self2._makeAbs(p);
            rp.realpath(p, self2.realpathCache, function(er, real) {
              if (!er)
                set2[real] = true;
              else if (er.syscall === "stat")
                set2[p] = true;
              else
                self2.emit("error", er);
              if (--n2 === 0) {
                self2.matches[index] = set2;
                cb();
              }
            });
          });
        };
        Glob.prototype._mark = function(p) {
          return common3.mark(this, p);
        };
        Glob.prototype._makeAbs = function(f) {
          return common3.makeAbs(this, f);
        };
        Glob.prototype.abort = function() {
          this.aborted = true;
          this.emit("abort");
        };
        Glob.prototype.pause = function() {
          if (!this.paused) {
            this.paused = true;
            this.emit("pause");
          }
        };
        Glob.prototype.resume = function() {
          if (this.paused) {
            this.emit("resume");
            this.paused = false;
            if (this._emitQueue.length) {
              var eq = this._emitQueue.slice(0);
              this._emitQueue.length = 0;
              for (var i2 = 0; i2 < eq.length; i2++) {
                var e = eq[i2];
                this._emitMatch(e[0], e[1]);
              }
            }
            if (this._processQueue.length) {
              var pq = this._processQueue.slice(0);
              this._processQueue.length = 0;
              for (var i2 = 0; i2 < pq.length; i2++) {
                var p = pq[i2];
                this._processing--;
                this._process(p[0], p[1], p[2], p[3]);
              }
            }
          }
        };
        Glob.prototype._process = function(pattern, index, inGlobStar, cb) {
          assert13(this instanceof Glob);
          assert13(typeof cb === "function");
          if (this.aborted)
            return;
          this._processing++;
          if (this.paused) {
            this._processQueue.push([pattern, index, inGlobStar, cb]);
            return;
          }
          var n2 = 0;
          while (typeof pattern[n2] === "string") {
            n2++;
          }
          var prefix;
          switch (n2) {
            // if not, then this is rather simple
            case pattern.length:
              this._processSimple(pattern.join("/"), index, cb);
              return;
            case 0:
              prefix = null;
              break;
            default:
              prefix = pattern.slice(0, n2).join("/");
              break;
          }
          var remain = pattern.slice(n2);
          var read2;
          if (prefix === null)
            read2 = ".";
          else if (isAbsolute3(prefix) || isAbsolute3(pattern.join("/"))) {
            if (!prefix || !isAbsolute3(prefix))
              prefix = "/" + prefix;
            read2 = prefix;
          } else
            read2 = prefix;
          var abs = this._makeAbs(read2);
          if (childrenIgnored(this, read2))
            return cb();
          var isGlobStar = remain[0] === minimatch.GLOBSTAR;
          if (isGlobStar)
            this._processGlobStar(prefix, read2, abs, remain, index, inGlobStar, cb);
          else
            this._processReaddir(prefix, read2, abs, remain, index, inGlobStar, cb);
        };
        Glob.prototype._processReaddir = function(prefix, read2, abs, remain, index, inGlobStar, cb) {
          var self2 = this;
          this._readdir(abs, inGlobStar, function(er, entries) {
            return self2._processReaddir2(prefix, read2, abs, remain, index, inGlobStar, entries, cb);
          });
        };
        Glob.prototype._processReaddir2 = function(prefix, read2, abs, remain, index, inGlobStar, entries, cb) {
          if (!entries)
            return cb();
          var pn = remain[0];
          var negate = !!this.minimatch.negate;
          var rawGlob = pn._glob;
          var dotOk = this.dot || rawGlob.charAt(0) === ".";
          var matchedEntries = [];
          for (var i2 = 0; i2 < entries.length; i2++) {
            var e = entries[i2];
            if (e.charAt(0) !== "." || dotOk) {
              var m;
              if (negate && !prefix) {
                m = !e.match(pn);
              } else {
                m = e.match(pn);
              }
              if (m)
                matchedEntries.push(e);
            }
          }
          var len = matchedEntries.length;
          if (len === 0)
            return cb();
          if (remain.length === 1 && !this.mark && !this.stat) {
            if (!this.matches[index])
              this.matches[index] = /* @__PURE__ */ Object.create(null);
            for (var i2 = 0; i2 < len; i2++) {
              var e = matchedEntries[i2];
              if (prefix) {
                if (prefix !== "/")
                  e = prefix + "/" + e;
                else
                  e = prefix + e;
              }
              if (e.charAt(0) === "/" && !this.nomount) {
                e = path218.join(this.root, e);
              }
              this._emitMatch(index, e);
            }
            return cb();
          }
          remain.shift();
          for (var i2 = 0; i2 < len; i2++) {
            var e = matchedEntries[i2];
            var newPattern;
            if (prefix) {
              if (prefix !== "/")
                e = prefix + "/" + e;
              else
                e = prefix + e;
            }
            this._process([e].concat(remain), index, inGlobStar, cb);
          }
          cb();
        };
        Glob.prototype._emitMatch = function(index, e) {
          if (this.aborted)
            return;
          if (isIgnored(this, e))
            return;
          if (this.paused) {
            this._emitQueue.push([index, e]);
            return;
          }
          var abs = isAbsolute3(e) ? e : this._makeAbs(e);
          if (this.mark)
            e = this._mark(e);
          if (this.absolute)
            e = abs;
          if (this.matches[index][e])
            return;
          if (this.nodir) {
            var c3 = this.cache[abs];
            if (c3 === "DIR" || Array.isArray(c3))
              return;
          }
          this.matches[index][e] = true;
          var st = this.statCache[abs];
          if (st)
            this.emit("stat", e, st);
          this.emit("match", e);
        };
        Glob.prototype._readdirInGlobStar = function(abs, cb) {
          if (this.aborted)
            return;
          if (this.follow)
            return this._readdir(abs, false, cb);
          var lstatkey = "lstat\0" + abs;
          var self2 = this;
          var lstatcb = inflight(lstatkey, lstatcb_);
          if (lstatcb)
            fs111.lstat(abs, lstatcb);
          function lstatcb_(er, lstat) {
            if (er && er.code === "ENOENT")
              return cb();
            var isSym = lstat && lstat.isSymbolicLink();
            self2.symlinks[abs] = isSym;
            if (!isSym && lstat && !lstat.isDirectory()) {
              self2.cache[abs] = "FILE";
              cb();
            } else
              self2._readdir(abs, false, cb);
          }
        };
        Glob.prototype._readdir = function(abs, inGlobStar, cb) {
          if (this.aborted)
            return;
          cb = inflight("readdir\0" + abs + "\0" + inGlobStar, cb);
          if (!cb)
            return;
          if (inGlobStar && !ownProp(this.symlinks, abs))
            return this._readdirInGlobStar(abs, cb);
          if (ownProp(this.cache, abs)) {
            var c3 = this.cache[abs];
            if (!c3 || c3 === "FILE")
              return cb();
            if (Array.isArray(c3))
              return cb(null, c3);
          }
          var self2 = this;
          fs111.readdir(abs, readdirCb(this, abs, cb));
        };
        function readdirCb(self2, abs, cb) {
          return function(er, entries) {
            if (er)
              self2._readdirError(abs, er, cb);
            else
              self2._readdirEntries(abs, entries, cb);
          };
        }
        Glob.prototype._readdirEntries = function(abs, entries, cb) {
          if (this.aborted)
            return;
          if (!this.mark && !this.stat) {
            for (var i2 = 0; i2 < entries.length; i2++) {
              var e = entries[i2];
              if (abs === "/")
                e = abs + e;
              else
                e = abs + "/" + e;
              this.cache[e] = true;
            }
          }
          this.cache[abs] = entries;
          return cb(null, entries);
        };
        Glob.prototype._readdirError = function(f, er, cb) {
          if (this.aborted)
            return;
          switch (er.code) {
            case "ENOTSUP":
            // https://github.com/isaacs/node-glob/issues/205
            case "ENOTDIR":
              var abs = this._makeAbs(f);
              this.cache[abs] = "FILE";
              if (abs === this.cwdAbs) {
                var error = new Error(er.code + " invalid cwd " + this.cwd);
                error.path = this.cwd;
                error.code = er.code;
                this.emit("error", error);
                this.abort();
              }
              break;
            case "ENOENT":
            // not terribly unusual
            case "ELOOP":
            case "ENAMETOOLONG":
            case "UNKNOWN":
              this.cache[this._makeAbs(f)] = false;
              break;
            default:
              this.cache[this._makeAbs(f)] = false;
              if (this.strict) {
                this.emit("error", er);
                this.abort();
              }
              if (!this.silent)
                console.error("glob error", er);
              break;
          }
          return cb();
        };
        Glob.prototype._processGlobStar = function(prefix, read2, abs, remain, index, inGlobStar, cb) {
          var self2 = this;
          this._readdir(abs, inGlobStar, function(er, entries) {
            self2._processGlobStar2(prefix, read2, abs, remain, index, inGlobStar, entries, cb);
          });
        };
        Glob.prototype._processGlobStar2 = function(prefix, read2, abs, remain, index, inGlobStar, entries, cb) {
          if (!entries)
            return cb();
          var remainWithoutGlobStar = remain.slice(1);
          var gspref = prefix ? [prefix] : [];
          var noGlobStar = gspref.concat(remainWithoutGlobStar);
          this._process(noGlobStar, index, false, cb);
          var isSym = this.symlinks[abs];
          var len = entries.length;
          if (isSym && inGlobStar)
            return cb();
          for (var i2 = 0; i2 < len; i2++) {
            var e = entries[i2];
            if (e.charAt(0) === "." && !this.dot)
              continue;
            var instead = gspref.concat(entries[i2], remainWithoutGlobStar);
            this._process(instead, index, true, cb);
            var below = gspref.concat(entries[i2], remain);
            this._process(below, index, true, cb);
          }
          cb();
        };
        Glob.prototype._processSimple = function(prefix, index, cb) {
          var self2 = this;
          this._stat(prefix, function(er, exists) {
            self2._processSimple2(prefix, index, er, exists, cb);
          });
        };
        Glob.prototype._processSimple2 = function(prefix, index, er, exists, cb) {
          if (!this.matches[index])
            this.matches[index] = /* @__PURE__ */ Object.create(null);
          if (!exists)
            return cb();
          if (prefix && isAbsolute3(prefix) && !this.nomount) {
            var trail = /[\/\\]$/.test(prefix);
            if (prefix.charAt(0) === "/") {
              prefix = path218.join(this.root, prefix);
            } else {
              prefix = path218.resolve(this.root, prefix);
              if (trail)
                prefix += "/";
            }
          }
          if (process.platform === "win32")
            prefix = prefix.replace(/\\/g, "/");
          this._emitMatch(index, prefix);
          cb();
        };
        Glob.prototype._stat = function(f, cb) {
          var abs = this._makeAbs(f);
          var needDir = f.slice(-1) === "/";
          if (f.length > this.maxLength)
            return cb();
          if (!this.stat && ownProp(this.cache, abs)) {
            var c3 = this.cache[abs];
            if (Array.isArray(c3))
              c3 = "DIR";
            if (!needDir || c3 === "DIR")
              return cb(null, c3);
            if (needDir && c3 === "FILE")
              return cb();
          }
          var exists;
          var stat2 = this.statCache[abs];
          if (stat2 !== void 0) {
            if (stat2 === false)
              return cb(null, stat2);
            else {
              var type4 = stat2.isDirectory() ? "DIR" : "FILE";
              if (needDir && type4 === "FILE")
                return cb();
              else
                return cb(null, type4, stat2);
            }
          }
          var self2 = this;
          var statcb = inflight("stat\0" + abs, lstatcb_);
          if (statcb)
            fs111.lstat(abs, statcb);
          function lstatcb_(er, lstat) {
            if (lstat && lstat.isSymbolicLink()) {
              return fs111.stat(abs, function(er2, stat3) {
                if (er2)
                  self2._stat2(f, abs, null, lstat, cb);
                else
                  self2._stat2(f, abs, er2, stat3, cb);
              });
            } else {
              self2._stat2(f, abs, er, lstat, cb);
            }
          }
        };
        Glob.prototype._stat2 = function(f, abs, er, stat2, cb) {
          if (er && (er.code === "ENOENT" || er.code === "ENOTDIR")) {
            this.statCache[abs] = false;
            return cb();
          }
          var needDir = f.slice(-1) === "/";
          this.statCache[abs] = stat2;
          if (abs.slice(-1) === "/" && stat2 && !stat2.isDirectory())
            return cb(null, false, stat2);
          var c3 = true;
          if (stat2)
            c3 = stat2.isDirectory() ? "DIR" : "FILE";
          this.cache[abs] = this.cache[abs] || c3;
          if (needDir && c3 === "FILE")
            return cb();
          return cb(null, c3, stat2);
        };
      }),
      /* 76 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        function posix2(path218) {
          return path218.charAt(0) === "/";
        }
        function win32(path218) {
          var splitDeviceRe = /^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?([\\\/])?([\s\S]*?)$/;
          var result2 = splitDeviceRe.exec(path218);
          var device = result2[1] || "";
          var isUnc = Boolean(device && device.charAt(1) !== ":");
          return Boolean(result2[2] || isUnc);
        }
        module3.exports = process.platform === "win32" ? win32 : posix2;
        module3.exports.posix = posix2;
        module3.exports.win32 = win32;
      }),
      ,
      ,
      /* 79 */
      /***/
      (function(module3, exports3) {
        module3.exports = __require("tty");
      }),
      ,
      /* 81 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        Object.defineProperty(exports3, "__esModule", {
          value: true
        });
        exports3.default = function(str2, fileLoc = "lockfile") {
          str2 = (0, (_stripBom || _load_stripBom()).default)(str2);
          return hasMergeConflicts(str2) ? parseWithConflict(str2, fileLoc) : { type: "success", object: parse7(str2, fileLoc) };
        };
        var _util;
        function _load_util() {
          return _util = _interopRequireDefault(__webpack_require__2(2));
        }
        var _invariant;
        function _load_invariant() {
          return _invariant = _interopRequireDefault(__webpack_require__2(7));
        }
        var _stripBom;
        function _load_stripBom() {
          return _stripBom = _interopRequireDefault(__webpack_require__2(122));
        }
        var _constants;
        function _load_constants() {
          return _constants = __webpack_require__2(6);
        }
        var _errors;
        function _load_errors() {
          return _errors = __webpack_require__2(4);
        }
        var _map2;
        function _load_map() {
          return _map2 = _interopRequireDefault(__webpack_require__2(20));
        }
        function _interopRequireDefault(obj) {
          return obj && obj.__esModule ? obj : { default: obj };
        }
        const VERSION_REGEX = /^yarn lockfile v(\d+)$/;
        const TOKEN_TYPES = {
          boolean: "BOOLEAN",
          string: "STRING",
          identifier: "IDENTIFIER",
          eof: "EOF",
          colon: "COLON",
          newline: "NEWLINE",
          comment: "COMMENT",
          indent: "INDENT",
          invalid: "INVALID",
          number: "NUMBER",
          comma: "COMMA"
        };
        const VALID_PROP_VALUE_TOKENS = [TOKEN_TYPES.boolean, TOKEN_TYPES.string, TOKEN_TYPES.number];
        function isValidPropValueToken(token) {
          return VALID_PROP_VALUE_TOKENS.indexOf(token.type) >= 0;
        }
        function* tokenise(input) {
          let lastNewline = false;
          let line = 1;
          let col = 0;
          function buildToken(type4, value) {
            return { line, col, type: type4, value };
          }
          while (input.length) {
            let chop = 0;
            if (input[0] === "\n" || input[0] === "\r") {
              chop++;
              if (input[1] === "\n") {
                chop++;
              }
              line++;
              col = 0;
              yield buildToken(TOKEN_TYPES.newline);
            } else if (input[0] === "#") {
              chop++;
              let val = "";
              while (input[chop] !== "\n") {
                val += input[chop];
                chop++;
              }
              yield buildToken(TOKEN_TYPES.comment, val);
            } else if (input[0] === " ") {
              if (lastNewline) {
                let indent = "";
                for (let i2 = 0; input[i2] === " "; i2++) {
                  indent += input[i2];
                }
                if (indent.length % 2) {
                  throw new TypeError("Invalid number of spaces");
                } else {
                  chop = indent.length;
                  yield buildToken(TOKEN_TYPES.indent, indent.length / 2);
                }
              } else {
                chop++;
              }
            } else if (input[0] === '"') {
              let val = "";
              for (let i2 = 0; ; i2++) {
                const currentChar = input[i2];
                val += currentChar;
                if (i2 > 0 && currentChar === '"') {
                  const isEscaped = input[i2 - 1] === "\\" && input[i2 - 2] !== "\\";
                  if (!isEscaped) {
                    break;
                  }
                }
              }
              chop = val.length;
              try {
                yield buildToken(TOKEN_TYPES.string, JSON.parse(val));
              } catch (err) {
                if (err instanceof SyntaxError) {
                  yield buildToken(TOKEN_TYPES.invalid);
                } else {
                  throw err;
                }
              }
            } else if (/^[0-9]/.test(input)) {
              let val = "";
              for (let i2 = 0; /^[0-9]$/.test(input[i2]); i2++) {
                val += input[i2];
              }
              chop = val.length;
              yield buildToken(TOKEN_TYPES.number, +val);
            } else if (/^true/.test(input)) {
              yield buildToken(TOKEN_TYPES.boolean, true);
              chop = 4;
            } else if (/^false/.test(input)) {
              yield buildToken(TOKEN_TYPES.boolean, false);
              chop = 5;
            } else if (input[0] === ":") {
              yield buildToken(TOKEN_TYPES.colon);
              chop++;
            } else if (input[0] === ",") {
              yield buildToken(TOKEN_TYPES.comma);
              chop++;
            } else if (/^[a-zA-Z\/-]/g.test(input)) {
              let name = "";
              for (let i2 = 0; i2 < input.length; i2++) {
                const char = input[i2];
                if (char === ":" || char === " " || char === "\n" || char === "\r" || char === ",") {
                  break;
                } else {
                  name += char;
                }
              }
              chop = name.length;
              yield buildToken(TOKEN_TYPES.string, name);
            } else {
              yield buildToken(TOKEN_TYPES.invalid);
            }
            if (!chop) {
              yield buildToken(TOKEN_TYPES.invalid);
            }
            col += chop;
            lastNewline = input[0] === "\n" || input[0] === "\r" && input[1] === "\n";
            input = input.slice(chop);
          }
          yield buildToken(TOKEN_TYPES.eof);
        }
        class Parser {
          constructor(input, fileLoc = "lockfile") {
            this.comments = [];
            this.tokens = tokenise(input);
            this.fileLoc = fileLoc;
          }
          onComment(token) {
            const value = token.value;
            (0, (_invariant || _load_invariant()).default)(typeof value === "string", "expected token value to be a string");
            const comment = value.trim();
            const versionMatch = comment.match(VERSION_REGEX);
            if (versionMatch) {
              const version2 = +versionMatch[1];
              if (version2 > (_constants || _load_constants()).LOCKFILE_VERSION) {
                throw new (_errors || _load_errors()).MessageError(`Can't install from a lockfile of version ${version2} as you're on an old yarn version that only supports versions up to ${(_constants || _load_constants()).LOCKFILE_VERSION}. Run \`$ yarn self-update\` to upgrade to the latest version.`);
              }
            }
            this.comments.push(comment);
          }
          next() {
            const item = this.tokens.next();
            (0, (_invariant || _load_invariant()).default)(item, "expected a token");
            const done = item.done, value = item.value;
            if (done || !value) {
              throw new Error("No more tokens");
            } else if (value.type === TOKEN_TYPES.comment) {
              this.onComment(value);
              return this.next();
            } else {
              return this.token = value;
            }
          }
          unexpected(msg = "Unexpected token") {
            throw new SyntaxError(`${msg} ${this.token.line}:${this.token.col} in ${this.fileLoc}`);
          }
          expect(tokType) {
            if (this.token.type === tokType) {
              this.next();
            } else {
              this.unexpected();
            }
          }
          eat(tokType) {
            if (this.token.type === tokType) {
              this.next();
              return true;
            } else {
              return false;
            }
          }
          parse(indent = 0) {
            const obj = (0, (_map2 || _load_map()).default)();
            while (true) {
              const propToken = this.token;
              if (propToken.type === TOKEN_TYPES.newline) {
                const nextToken = this.next();
                if (!indent) {
                  continue;
                }
                if (nextToken.type !== TOKEN_TYPES.indent) {
                  break;
                }
                if (nextToken.value === indent) {
                  this.next();
                } else {
                  break;
                }
              } else if (propToken.type === TOKEN_TYPES.indent) {
                if (propToken.value === indent) {
                  this.next();
                } else {
                  break;
                }
              } else if (propToken.type === TOKEN_TYPES.eof) {
                break;
              } else if (propToken.type === TOKEN_TYPES.string) {
                const key = propToken.value;
                (0, (_invariant || _load_invariant()).default)(key, "Expected a key");
                const keys4 = [key];
                this.next();
                while (this.token.type === TOKEN_TYPES.comma) {
                  this.next();
                  const keyToken = this.token;
                  if (keyToken.type !== TOKEN_TYPES.string) {
                    this.unexpected("Expected string");
                  }
                  const key2 = keyToken.value;
                  (0, (_invariant || _load_invariant()).default)(key2, "Expected a key");
                  keys4.push(key2);
                  this.next();
                }
                const valToken = this.token;
                if (valToken.type === TOKEN_TYPES.colon) {
                  this.next();
                  const val = this.parse(indent + 1);
                  for (var _iterator = keys4, _isArray2 = Array.isArray(_iterator), _i = 0, _iterator = _isArray2 ? _iterator : _iterator[Symbol.iterator](); ; ) {
                    var _ref;
                    if (_isArray2) {
                      if (_i >= _iterator.length) break;
                      _ref = _iterator[_i++];
                    } else {
                      _i = _iterator.next();
                      if (_i.done) break;
                      _ref = _i.value;
                    }
                    const key2 = _ref;
                    obj[key2] = val;
                  }
                  if (indent && this.token.type !== TOKEN_TYPES.indent) {
                    break;
                  }
                } else if (isValidPropValueToken(valToken)) {
                  for (var _iterator2 = keys4, _isArray22 = Array.isArray(_iterator2), _i2 = 0, _iterator2 = _isArray22 ? _iterator2 : _iterator2[Symbol.iterator](); ; ) {
                    var _ref2;
                    if (_isArray22) {
                      if (_i2 >= _iterator2.length) break;
                      _ref2 = _iterator2[_i2++];
                    } else {
                      _i2 = _iterator2.next();
                      if (_i2.done) break;
                      _ref2 = _i2.value;
                    }
                    const key2 = _ref2;
                    obj[key2] = valToken.value;
                  }
                  this.next();
                } else {
                  this.unexpected("Invalid value type");
                }
              } else {
                this.unexpected(`Unknown token: ${(_util || _load_util()).default.inspect(propToken)}`);
              }
            }
            return obj;
          }
        }
        const MERGE_CONFLICT_ANCESTOR = "|||||||";
        const MERGE_CONFLICT_END2 = ">>>>>>>";
        const MERGE_CONFLICT_SEP = "=======";
        const MERGE_CONFLICT_START = "<<<<<<<";
        function extractConflictVariants(str2) {
          const variants = [[], []];
          const lines = str2.split(/\r?\n/g);
          let skip = false;
          while (lines.length) {
            const line = lines.shift();
            if (line.startsWith(MERGE_CONFLICT_START)) {
              while (lines.length) {
                const conflictLine = lines.shift();
                if (conflictLine === MERGE_CONFLICT_SEP) {
                  skip = false;
                  break;
                } else if (skip || conflictLine.startsWith(MERGE_CONFLICT_ANCESTOR)) {
                  skip = true;
                  continue;
                } else {
                  variants[0].push(conflictLine);
                }
              }
              while (lines.length) {
                const conflictLine = lines.shift();
                if (conflictLine.startsWith(MERGE_CONFLICT_END2)) {
                  break;
                } else {
                  variants[1].push(conflictLine);
                }
              }
            } else {
              variants[0].push(line);
              variants[1].push(line);
            }
          }
          return [variants[0].join("\n"), variants[1].join("\n")];
        }
        function hasMergeConflicts(str2) {
          return str2.includes(MERGE_CONFLICT_START) && str2.includes(MERGE_CONFLICT_SEP) && str2.includes(MERGE_CONFLICT_END2);
        }
        function parse7(str2, fileLoc) {
          const parser = new Parser(str2, fileLoc);
          parser.next();
          return parser.parse();
        }
        function parseWithConflict(str2, fileLoc) {
          const variants = extractConflictVariants(str2);
          try {
            return { type: "merge", object: Object.assign({}, parse7(variants[0], fileLoc), parse7(variants[1], fileLoc)) };
          } catch (err) {
            if (err instanceof SyntaxError) {
              return { type: "conflict", object: {} };
            } else {
              throw err;
            }
          }
        }
      }),
      ,
      ,
      /* 84 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        Object.defineProperty(exports3, "__esModule", {
          value: true
        });
        var _map2;
        function _load_map() {
          return _map2 = _interopRequireDefault(__webpack_require__2(20));
        }
        function _interopRequireDefault(obj) {
          return obj && obj.__esModule ? obj : { default: obj };
        }
        const debug = __webpack_require__2(212)("yarn");
        class BlockingQueue {
          constructor(alias, maxConcurrency = Infinity) {
            this.concurrencyQueue = [];
            this.maxConcurrency = maxConcurrency;
            this.runningCount = 0;
            this.warnedStuck = false;
            this.alias = alias;
            this.first = true;
            this.running = (0, (_map2 || _load_map()).default)();
            this.queue = (0, (_map2 || _load_map()).default)();
            this.stuckTick = this.stuckTick.bind(this);
          }
          stillActive() {
            if (this.stuckTimer) {
              clearTimeout(this.stuckTimer);
            }
            this.stuckTimer = setTimeout(this.stuckTick, 5e3);
            this.stuckTimer.unref && this.stuckTimer.unref();
          }
          stuckTick() {
            if (this.runningCount === 1) {
              this.warnedStuck = true;
              debug(`The ${JSON.stringify(this.alias)} blocking queue may be stuck. 5 seconds without any activity with 1 worker: ${Object.keys(this.running)[0]}`);
            }
          }
          push(key, factory) {
            if (this.first) {
              this.first = false;
            } else {
              this.stillActive();
            }
            return new Promise((resolve3, reject3) => {
              const queue2 = this.queue[key] = this.queue[key] || [];
              queue2.push({ factory, resolve: resolve3, reject: reject3 });
              if (!this.running[key]) {
                this.shift(key);
              }
            });
          }
          shift(key) {
            if (this.running[key]) {
              delete this.running[key];
              this.runningCount--;
              if (this.stuckTimer) {
                clearTimeout(this.stuckTimer);
                this.stuckTimer = null;
              }
              if (this.warnedStuck) {
                this.warnedStuck = false;
                debug(`${JSON.stringify(this.alias)} blocking queue finally resolved. Nothing to worry about.`);
              }
            }
            const queue2 = this.queue[key];
            if (!queue2) {
              return;
            }
            var _queue$shift = queue2.shift();
            const resolve3 = _queue$shift.resolve, reject3 = _queue$shift.reject, factory = _queue$shift.factory;
            if (!queue2.length) {
              delete this.queue[key];
            }
            const next2 = () => {
              this.shift(key);
              this.shiftConcurrencyQueue();
            };
            const run = () => {
              this.running[key] = true;
              this.runningCount++;
              factory().then(function(val) {
                resolve3(val);
                next2();
                return null;
              }).catch(function(err) {
                reject3(err);
                next2();
              });
            };
            this.maybePushConcurrencyQueue(run);
          }
          maybePushConcurrencyQueue(run) {
            if (this.runningCount < this.maxConcurrency) {
              run();
            } else {
              this.concurrencyQueue.push(run);
            }
          }
          shiftConcurrencyQueue() {
            if (this.runningCount < this.maxConcurrency) {
              const fn = this.concurrencyQueue.shift();
              if (fn) {
                fn();
              }
            }
          }
        }
        exports3.default = BlockingQueue;
      }),
      /* 85 */
      /***/
      (function(module3, exports3) {
        module3.exports = function(exec) {
          try {
            return !!exec();
          } catch (e) {
            return true;
          }
        };
      }),
      ,
      ,
      ,
      ,
      ,
      ,
      ,
      ,
      ,
      ,
      ,
      ,
      ,
      ,
      /* 100 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var cof = __webpack_require__2(47);
        var TAG = __webpack_require__2(13)("toStringTag");
        var ARG = cof(/* @__PURE__ */ (function() {
          return arguments;
        })()) == "Arguments";
        var tryGet = function(it, key) {
          try {
            return it[key];
          } catch (e) {
          }
        };
        module3.exports = function(it) {
          var O2, T2, B;
          return it === void 0 ? "Undefined" : it === null ? "Null" : typeof (T2 = tryGet(O2 = Object(it), TAG)) == "string" ? T2 : ARG ? cof(O2) : (B = cof(O2)) == "Object" && typeof O2.callee == "function" ? "Arguments" : B;
        };
      }),
      /* 101 */
      /***/
      (function(module3, exports3) {
        module3.exports = "constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",");
      }),
      /* 102 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var document2 = __webpack_require__2(11).document;
        module3.exports = document2 && document2.documentElement;
      }),
      /* 103 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        var LIBRARY = __webpack_require__2(69);
        var $export = __webpack_require__2(41);
        var redefine = __webpack_require__2(197);
        var hide = __webpack_require__2(31);
        var Iterators = __webpack_require__2(35);
        var $iterCreate = __webpack_require__2(188);
        var setToStringTag = __webpack_require__2(71);
        var getPrototypeOf = __webpack_require__2(194);
        var ITERATOR = __webpack_require__2(13)("iterator");
        var BUGGY = !([].keys && "next" in [].keys());
        var FF_ITERATOR = "@@iterator";
        var KEYS = "keys";
        var VALUES = "values";
        var returnThis = function() {
          return this;
        };
        module3.exports = function(Base, NAME, Constructor, next2, DEFAULT, IS_SET, FORCED) {
          $iterCreate(Constructor, NAME, next2);
          var getMethod = function(kind) {
            if (!BUGGY && kind in proto2) return proto2[kind];
            switch (kind) {
              case KEYS:
                return function keys4() {
                  return new Constructor(this, kind);
                };
              case VALUES:
                return function values() {
                  return new Constructor(this, kind);
                };
            }
            return function entries() {
              return new Constructor(this, kind);
            };
          };
          var TAG = NAME + " Iterator";
          var DEF_VALUES = DEFAULT == VALUES;
          var VALUES_BUG = false;
          var proto2 = Base.prototype;
          var $native = proto2[ITERATOR] || proto2[FF_ITERATOR] || DEFAULT && proto2[DEFAULT];
          var $default = $native || getMethod(DEFAULT);
          var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod("entries") : void 0;
          var $anyNative = NAME == "Array" ? proto2.entries || $native : $native;
          var methods, key, IteratorPrototype;
          if ($anyNative) {
            IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));
            if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {
              setToStringTag(IteratorPrototype, TAG, true);
              if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != "function") hide(IteratorPrototype, ITERATOR, returnThis);
            }
          }
          if (DEF_VALUES && $native && $native.name !== VALUES) {
            VALUES_BUG = true;
            $default = function values() {
              return $native.call(this);
            };
          }
          if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto2[ITERATOR])) {
            hide(proto2, ITERATOR, $default);
          }
          Iterators[NAME] = $default;
          Iterators[TAG] = returnThis;
          if (DEFAULT) {
            methods = {
              values: DEF_VALUES ? $default : getMethod(VALUES),
              keys: IS_SET ? $default : getMethod(KEYS),
              entries: $entries
            };
            if (FORCED) for (key in methods) {
              if (!(key in proto2)) redefine(proto2, key, methods[key]);
            }
            else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
          }
          return methods;
        };
      }),
      /* 104 */
      /***/
      (function(module3, exports3) {
        module3.exports = function(exec) {
          try {
            return { e: false, v: exec() };
          } catch (e) {
            return { e: true, v: e };
          }
        };
      }),
      /* 105 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var anObject = __webpack_require__2(27);
        var isObject4 = __webpack_require__2(34);
        var newPromiseCapability = __webpack_require__2(70);
        module3.exports = function(C, x) {
          anObject(C);
          if (isObject4(x) && x.constructor === C) return x;
          var promiseCapability = newPromiseCapability.f(C);
          var resolve3 = promiseCapability.resolve;
          resolve3(x);
          return promiseCapability.promise;
        };
      }),
      /* 106 */
      /***/
      (function(module3, exports3) {
        module3.exports = function(bitmap, value) {
          return {
            enumerable: !(bitmap & 1),
            configurable: !(bitmap & 2),
            writable: !(bitmap & 4),
            value
          };
        };
      }),
      /* 107 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var core2 = __webpack_require__2(23);
        var global3 = __webpack_require__2(11);
        var SHARED = "__core-js_shared__";
        var store = global3[SHARED] || (global3[SHARED] = {});
        (module3.exports = function(key, value) {
          return store[key] || (store[key] = value !== void 0 ? value : {});
        })("versions", []).push({
          version: core2.version,
          mode: __webpack_require__2(69) ? "pure" : "global",
          copyright: "\xA9 2018 Denis Pushkarev (zloirock.ru)"
        });
      }),
      /* 108 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var anObject = __webpack_require__2(27);
        var aFunction = __webpack_require__2(46);
        var SPECIES = __webpack_require__2(13)("species");
        module3.exports = function(O2, D2) {
          var C = anObject(O2).constructor;
          var S2;
          return C === void 0 || (S2 = anObject(C)[SPECIES]) == void 0 ? D2 : aFunction(S2);
        };
      }),
      /* 109 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var ctx = __webpack_require__2(48);
        var invoke = __webpack_require__2(185);
        var html = __webpack_require__2(102);
        var cel = __webpack_require__2(68);
        var global3 = __webpack_require__2(11);
        var process17 = global3.process;
        var setTask = global3.setImmediate;
        var clearTask = global3.clearImmediate;
        var MessageChannel = global3.MessageChannel;
        var Dispatch = global3.Dispatch;
        var counter = 0;
        var queue2 = {};
        var ONREADYSTATECHANGE = "onreadystatechange";
        var defer, channel, port;
        var run = function() {
          var id = +this;
          if (queue2.hasOwnProperty(id)) {
            var fn = queue2[id];
            delete queue2[id];
            fn();
          }
        };
        var listener = function(event) {
          run.call(event.data);
        };
        if (!setTask || !clearTask) {
          setTask = function setImmediate3(fn) {
            var args = [];
            var i2 = 1;
            while (arguments.length > i2) args.push(arguments[i2++]);
            queue2[++counter] = function() {
              invoke(typeof fn == "function" ? fn : Function(fn), args);
            };
            defer(counter);
            return counter;
          };
          clearTask = function clearImmediate2(id) {
            delete queue2[id];
          };
          if (__webpack_require__2(47)(process17) == "process") {
            defer = function(id) {
              process17.nextTick(ctx(run, id, 1));
            };
          } else if (Dispatch && Dispatch.now) {
            defer = function(id) {
              Dispatch.now(ctx(run, id, 1));
            };
          } else if (MessageChannel) {
            channel = new MessageChannel();
            port = channel.port2;
            channel.port1.onmessage = listener;
            defer = ctx(port.postMessage, port, 1);
          } else if (global3.addEventListener && typeof postMessage == "function" && !global3.importScripts) {
            defer = function(id) {
              global3.postMessage(id + "", "*");
            };
            global3.addEventListener("message", listener, false);
          } else if (ONREADYSTATECHANGE in cel("script")) {
            defer = function(id) {
              html.appendChild(cel("script"))[ONREADYSTATECHANGE] = function() {
                html.removeChild(this);
                run.call(id);
              };
            };
          } else {
            defer = function(id) {
              setTimeout(ctx(run, id, 1), 0);
            };
          }
        }
        module3.exports = {
          set: setTask,
          clear: clearTask
        };
      }),
      /* 110 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var toInteger = __webpack_require__2(73);
        var min = Math.min;
        module3.exports = function(it) {
          return it > 0 ? min(toInteger(it), 9007199254740991) : 0;
        };
      }),
      /* 111 */
      /***/
      (function(module3, exports3) {
        var id = 0;
        var px = Math.random();
        module3.exports = function(key) {
          return "Symbol(".concat(key === void 0 ? "" : key, ")_", (++id + px).toString(36));
        };
      }),
      /* 112 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        exports3 = module3.exports = createDebug.debug = createDebug["default"] = createDebug;
        exports3.coerce = coerce;
        exports3.disable = disable;
        exports3.enable = enable;
        exports3.enabled = enabled;
        exports3.humanize = __webpack_require__2(229);
        exports3.instances = [];
        exports3.names = [];
        exports3.skips = [];
        exports3.formatters = {};
        function selectColor(namespace) {
          var hash2 = 0, i2;
          for (i2 in namespace) {
            hash2 = (hash2 << 5) - hash2 + namespace.charCodeAt(i2);
            hash2 |= 0;
          }
          return exports3.colors[Math.abs(hash2) % exports3.colors.length];
        }
        function createDebug(namespace) {
          var prevTime;
          function debug() {
            if (!debug.enabled) return;
            var self2 = debug;
            var curr = +/* @__PURE__ */ new Date();
            var ms = curr - (prevTime || curr);
            self2.diff = ms;
            self2.prev = prevTime;
            self2.curr = curr;
            prevTime = curr;
            var args = new Array(arguments.length);
            for (var i2 = 0; i2 < args.length; i2++) {
              args[i2] = arguments[i2];
            }
            args[0] = exports3.coerce(args[0]);
            if ("string" !== typeof args[0]) {
              args.unshift("%O");
            }
            var index = 0;
            args[0] = args[0].replace(/%([a-zA-Z%])/g, function(match, format2) {
              if (match === "%%") return match;
              index++;
              var formatter = exports3.formatters[format2];
              if ("function" === typeof formatter) {
                var val = args[index];
                match = formatter.call(self2, val);
                args.splice(index, 1);
                index--;
              }
              return match;
            });
            exports3.formatArgs.call(self2, args);
            var logFn = debug.log || exports3.log || console.log.bind(console);
            logFn.apply(self2, args);
          }
          debug.namespace = namespace;
          debug.enabled = exports3.enabled(namespace);
          debug.useColors = exports3.useColors();
          debug.color = selectColor(namespace);
          debug.destroy = destroy;
          if ("function" === typeof exports3.init) {
            exports3.init(debug);
          }
          exports3.instances.push(debug);
          return debug;
        }
        function destroy() {
          var index = exports3.instances.indexOf(this);
          if (index !== -1) {
            exports3.instances.splice(index, 1);
            return true;
          } else {
            return false;
          }
        }
        function enable(namespaces) {
          exports3.save(namespaces);
          exports3.names = [];
          exports3.skips = [];
          var i2;
          var split2 = (typeof namespaces === "string" ? namespaces : "").split(/[\s,]+/);
          var len = split2.length;
          for (i2 = 0; i2 < len; i2++) {
            if (!split2[i2]) continue;
            namespaces = split2[i2].replace(/\*/g, ".*?");
            if (namespaces[0] === "-") {
              exports3.skips.push(new RegExp("^" + namespaces.substr(1) + "$"));
            } else {
              exports3.names.push(new RegExp("^" + namespaces + "$"));
            }
          }
          for (i2 = 0; i2 < exports3.instances.length; i2++) {
            var instance = exports3.instances[i2];
            instance.enabled = exports3.enabled(instance.namespace);
          }
        }
        function disable() {
          exports3.enable("");
        }
        function enabled(name) {
          if (name[name.length - 1] === "*") {
            return true;
          }
          var i2, len;
          for (i2 = 0, len = exports3.skips.length; i2 < len; i2++) {
            if (exports3.skips[i2].test(name)) {
              return false;
            }
          }
          for (i2 = 0, len = exports3.names.length; i2 < len; i2++) {
            if (exports3.names[i2].test(name)) {
              return true;
            }
          }
          return false;
        }
        function coerce(val) {
          if (val instanceof Error) return val.stack || val.message;
          return val;
        }
      }),
      ,
      /* 114 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        module3.exports = realpath3;
        realpath3.realpath = realpath3;
        realpath3.sync = realpathSync2;
        realpath3.realpathSync = realpathSync2;
        realpath3.monkeypatch = monkeypatch;
        realpath3.unmonkeypatch = unmonkeypatch;
        var fs111 = __webpack_require__2(3);
        var origRealpath = fs111.realpath;
        var origRealpathSync = fs111.realpathSync;
        var version2 = process.version;
        var ok = /^v[0-5]\./.test(version2);
        var old = __webpack_require__2(217);
        function newError(er) {
          return er && er.syscall === "realpath" && (er.code === "ELOOP" || er.code === "ENOMEM" || er.code === "ENAMETOOLONG");
        }
        function realpath3(p, cache, cb) {
          if (ok) {
            return origRealpath(p, cache, cb);
          }
          if (typeof cache === "function") {
            cb = cache;
            cache = null;
          }
          origRealpath(p, cache, function(er, result2) {
            if (newError(er)) {
              old.realpath(p, cache, cb);
            } else {
              cb(er, result2);
            }
          });
        }
        function realpathSync2(p, cache) {
          if (ok) {
            return origRealpathSync(p, cache);
          }
          try {
            return origRealpathSync(p, cache);
          } catch (er) {
            if (newError(er)) {
              return old.realpathSync(p, cache);
            } else {
              throw er;
            }
          }
        }
        function monkeypatch() {
          fs111.realpath = realpath3;
          fs111.realpathSync = realpathSync2;
        }
        function unmonkeypatch() {
          fs111.realpath = origRealpath;
          fs111.realpathSync = origRealpathSync;
        }
      }),
      /* 115 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        exports3.alphasort = alphasort;
        exports3.alphasorti = alphasorti;
        exports3.setopts = setopts;
        exports3.ownProp = ownProp;
        exports3.makeAbs = makeAbs;
        exports3.finish = finish;
        exports3.mark = mark;
        exports3.isIgnored = isIgnored;
        exports3.childrenIgnored = childrenIgnored;
        function ownProp(obj, field) {
          return Object.prototype.hasOwnProperty.call(obj, field);
        }
        var path218 = __webpack_require__2(0);
        var minimatch = __webpack_require__2(60);
        var isAbsolute3 = __webpack_require__2(76);
        var Minimatch = minimatch.Minimatch;
        function alphasorti(a2, b) {
          return a2.toLowerCase().localeCompare(b.toLowerCase());
        }
        function alphasort(a2, b) {
          return a2.localeCompare(b);
        }
        function setupIgnores(self2, options) {
          self2.ignore = options.ignore || [];
          if (!Array.isArray(self2.ignore))
            self2.ignore = [self2.ignore];
          if (self2.ignore.length) {
            self2.ignore = self2.ignore.map(ignoreMap);
          }
        }
        function ignoreMap(pattern) {
          var gmatcher = null;
          if (pattern.slice(-3) === "/**") {
            var gpattern = pattern.replace(/(\/\*\*)+$/, "");
            gmatcher = new Minimatch(gpattern, { dot: true });
          }
          return {
            matcher: new Minimatch(pattern, { dot: true }),
            gmatcher
          };
        }
        function setopts(self2, pattern, options) {
          if (!options)
            options = {};
          if (options.matchBase && -1 === pattern.indexOf("/")) {
            if (options.noglobstar) {
              throw new Error("base matching requires globstar");
            }
            pattern = "**/" + pattern;
          }
          self2.silent = !!options.silent;
          self2.pattern = pattern;
          self2.strict = options.strict !== false;
          self2.realpath = !!options.realpath;
          self2.realpathCache = options.realpathCache || /* @__PURE__ */ Object.create(null);
          self2.follow = !!options.follow;
          self2.dot = !!options.dot;
          self2.mark = !!options.mark;
          self2.nodir = !!options.nodir;
          if (self2.nodir)
            self2.mark = true;
          self2.sync = !!options.sync;
          self2.nounique = !!options.nounique;
          self2.nonull = !!options.nonull;
          self2.nosort = !!options.nosort;
          self2.nocase = !!options.nocase;
          self2.stat = !!options.stat;
          self2.noprocess = !!options.noprocess;
          self2.absolute = !!options.absolute;
          self2.maxLength = options.maxLength || Infinity;
          self2.cache = options.cache || /* @__PURE__ */ Object.create(null);
          self2.statCache = options.statCache || /* @__PURE__ */ Object.create(null);
          self2.symlinks = options.symlinks || /* @__PURE__ */ Object.create(null);
          setupIgnores(self2, options);
          self2.changedCwd = false;
          var cwd = process.cwd();
          if (!ownProp(options, "cwd"))
            self2.cwd = cwd;
          else {
            self2.cwd = path218.resolve(options.cwd);
            self2.changedCwd = self2.cwd !== cwd;
          }
          self2.root = options.root || path218.resolve(self2.cwd, "/");
          self2.root = path218.resolve(self2.root);
          if (process.platform === "win32")
            self2.root = self2.root.replace(/\\/g, "/");
          self2.cwdAbs = isAbsolute3(self2.cwd) ? self2.cwd : makeAbs(self2, self2.cwd);
          if (process.platform === "win32")
            self2.cwdAbs = self2.cwdAbs.replace(/\\/g, "/");
          self2.nomount = !!options.nomount;
          options.nonegate = true;
          options.nocomment = true;
          self2.minimatch = new Minimatch(pattern, options);
          self2.options = self2.minimatch.options;
        }
        function finish(self2) {
          var nou = self2.nounique;
          var all = nou ? [] : /* @__PURE__ */ Object.create(null);
          for (var i2 = 0, l = self2.matches.length; i2 < l; i2++) {
            var matches2 = self2.matches[i2];
            if (!matches2 || Object.keys(matches2).length === 0) {
              if (self2.nonull) {
                var literal = self2.minimatch.globSet[i2];
                if (nou)
                  all.push(literal);
                else
                  all[literal] = true;
              }
            } else {
              var m = Object.keys(matches2);
              if (nou)
                all.push.apply(all, m);
              else
                m.forEach(function(m2) {
                  all[m2] = true;
                });
            }
          }
          if (!nou)
            all = Object.keys(all);
          if (!self2.nosort)
            all = all.sort(self2.nocase ? alphasorti : alphasort);
          if (self2.mark) {
            for (var i2 = 0; i2 < all.length; i2++) {
              all[i2] = self2._mark(all[i2]);
            }
            if (self2.nodir) {
              all = all.filter(function(e) {
                var notDir = !/\/$/.test(e);
                var c3 = self2.cache[e] || self2.cache[makeAbs(self2, e)];
                if (notDir && c3)
                  notDir = c3 !== "DIR" && !Array.isArray(c3);
                return notDir;
              });
            }
          }
          if (self2.ignore.length)
            all = all.filter(function(m2) {
              return !isIgnored(self2, m2);
            });
          self2.found = all;
        }
        function mark(self2, p) {
          var abs = makeAbs(self2, p);
          var c3 = self2.cache[abs];
          var m = p;
          if (c3) {
            var isDir = c3 === "DIR" || Array.isArray(c3);
            var slash = p.slice(-1) === "/";
            if (isDir && !slash)
              m += "/";
            else if (!isDir && slash)
              m = m.slice(0, -1);
            if (m !== p) {
              var mabs = makeAbs(self2, m);
              self2.statCache[mabs] = self2.statCache[abs];
              self2.cache[mabs] = self2.cache[abs];
            }
          }
          return m;
        }
        function makeAbs(self2, f) {
          var abs = f;
          if (f.charAt(0) === "/") {
            abs = path218.join(self2.root, f);
          } else if (isAbsolute3(f) || f === "") {
            abs = f;
          } else if (self2.changedCwd) {
            abs = path218.resolve(self2.cwd, f);
          } else {
            abs = path218.resolve(f);
          }
          if (process.platform === "win32")
            abs = abs.replace(/\\/g, "/");
          return abs;
        }
        function isIgnored(self2, path219) {
          if (!self2.ignore.length)
            return false;
          return self2.ignore.some(function(item) {
            return item.matcher.match(path219) || !!(item.gmatcher && item.gmatcher.match(path219));
          });
        }
        function childrenIgnored(self2, path219) {
          if (!self2.ignore.length)
            return false;
          return self2.ignore.some(function(item) {
            return !!(item.gmatcher && item.gmatcher.match(path219));
          });
        }
      }),
      /* 116 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var path218 = __webpack_require__2(0);
        var fs111 = __webpack_require__2(3);
        var _0777 = parseInt("0777", 8);
        module3.exports = mkdirP.mkdirp = mkdirP.mkdirP = mkdirP;
        function mkdirP(p, opts2, f, made) {
          if (typeof opts2 === "function") {
            f = opts2;
            opts2 = {};
          } else if (!opts2 || typeof opts2 !== "object") {
            opts2 = { mode: opts2 };
          }
          var mode = opts2.mode;
          var xfs = opts2.fs || fs111;
          if (mode === void 0) {
            mode = _0777 & ~process.umask();
          }
          if (!made) made = null;
          var cb = f || function() {
          };
          p = path218.resolve(p);
          xfs.mkdir(p, mode, function(er) {
            if (!er) {
              made = made || p;
              return cb(null, made);
            }
            switch (er.code) {
              case "ENOENT":
                mkdirP(path218.dirname(p), opts2, function(er2, made2) {
                  if (er2) cb(er2, made2);
                  else mkdirP(p, opts2, cb, made2);
                });
                break;
              // In the case of any other error, just see if there's a dir
              // there already.  If so, then hooray!  If not, then something
              // is borked.
              default:
                xfs.stat(p, function(er2, stat2) {
                  if (er2 || !stat2.isDirectory()) cb(er, made);
                  else cb(null, made);
                });
                break;
            }
          });
        }
        mkdirP.sync = function sync3(p, opts2, made) {
          if (!opts2 || typeof opts2 !== "object") {
            opts2 = { mode: opts2 };
          }
          var mode = opts2.mode;
          var xfs = opts2.fs || fs111;
          if (mode === void 0) {
            mode = _0777 & ~process.umask();
          }
          if (!made) made = null;
          p = path218.resolve(p);
          try {
            xfs.mkdirSync(p, mode);
            made = made || p;
          } catch (err0) {
            switch (err0.code) {
              case "ENOENT":
                made = sync3(path218.dirname(p), opts2, made);
                sync3(p, opts2, made);
                break;
              // In the case of any other error, just see if there's a dir
              // there already.  If so, then hooray!  If not, then something
              // is borked.
              default:
                var stat2;
                try {
                  stat2 = xfs.statSync(p);
                } catch (err1) {
                  throw err0;
                }
                if (!stat2.isDirectory()) throw err0;
                break;
            }
          }
          return made;
        };
      }),
      ,
      ,
      ,
      ,
      ,
      /* 122 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        module3.exports = (x) => {
          if (typeof x !== "string") {
            throw new TypeError("Expected a string, got " + typeof x);
          }
          if (x.charCodeAt(0) === 65279) {
            return x.slice(1);
          }
          return x;
        };
      }),
      /* 123 */
      /***/
      (function(module3, exports3) {
        module3.exports = wrappy;
        function wrappy(fn, cb) {
          if (fn && cb) return wrappy(fn)(cb);
          if (typeof fn !== "function")
            throw new TypeError("need wrapper function");
          Object.keys(fn).forEach(function(k2) {
            wrapper[k2] = fn[k2];
          });
          return wrapper;
          function wrapper() {
            var args = new Array(arguments.length);
            for (var i2 = 0; i2 < args.length; i2++) {
              args[i2] = arguments[i2];
            }
            var ret2 = fn.apply(this, args);
            var cb2 = args[args.length - 1];
            if (typeof ret2 === "function" && ret2 !== cb2) {
              Object.keys(cb2).forEach(function(k2) {
                ret2[k2] = cb2[k2];
              });
            }
            return ret2;
          }
        }
      }),
      ,
      ,
      ,
      ,
      ,
      ,
      ,
      /* 131 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var cof = __webpack_require__2(47);
        module3.exports = Object("z").propertyIsEnumerable(0) ? Object : function(it) {
          return cof(it) == "String" ? it.split("") : Object(it);
        };
      }),
      /* 132 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var $keys = __webpack_require__2(195);
        var enumBugKeys = __webpack_require__2(101);
        module3.exports = Object.keys || function keys4(O2) {
          return $keys(O2, enumBugKeys);
        };
      }),
      /* 133 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var defined = __webpack_require__2(67);
        module3.exports = function(it) {
          return Object(defined(it));
        };
      }),
      ,
      ,
      ,
      ,
      ,
      ,
      ,
      ,
      ,
      ,
      ,
      /* 145 */
      /***/
      (function(module3, exports3) {
        module3.exports = { "name": "yarn", "installationMethod": "unknown", "version": "1.10.0-0", "license": "BSD-2-Clause", "preferGlobal": true, "description": "\u{1F4E6}\u{1F408} Fast, reliable, and secure dependency management.", "dependencies": { "@zkochan/cmd-shim": "^2.2.4", "babel-runtime": "^6.26.0", "bytes": "^3.0.0", "camelcase": "^4.0.0", "chalk": "^2.1.0", "commander": "^2.9.0", "death": "^1.0.0", "debug": "^3.0.0", "deep-equal": "^1.0.1", "detect-indent": "^5.0.0", "dnscache": "^1.0.1", "glob": "^7.1.1", "gunzip-maybe": "^1.4.0", "hash-for-dep": "^1.2.3", "imports-loader": "^0.8.0", "ini": "^1.3.4", "inquirer": "^3.0.1", "invariant": "^2.2.0", "is-builtin-module": "^2.0.0", "is-ci": "^1.0.10", "is-webpack-bundle": "^1.0.0", "leven": "^2.0.0", "loud-rejection": "^1.2.0", "micromatch": "^2.3.11", "mkdirp": "^0.5.1", "node-emoji": "^1.6.1", "normalize-url": "^2.0.0", "npm-logical-tree": "^1.2.1", "object-path": "^0.11.2", "proper-lockfile": "^2.0.0", "puka": "^1.0.0", "read": "^1.0.7", "request": "^2.87.0", "request-capture-har": "^1.2.2", "rimraf": "^2.5.0", "semver": "^5.1.0", "ssri": "^5.3.0", "strip-ansi": "^4.0.0", "strip-bom": "^3.0.0", "tar-fs": "^1.16.0", "tar-stream": "^1.6.1", "uuid": "^3.0.1", "v8-compile-cache": "^2.0.0", "validate-npm-package-license": "^3.0.3", "yn": "^2.0.0" }, "devDependencies": { "babel-core": "^6.26.0", "babel-eslint": "^7.2.3", "babel-loader": "^6.2.5", "babel-plugin-array-includes": "^2.0.3", "babel-plugin-transform-builtin-extend": "^1.1.2", "babel-plugin-transform-inline-imports-commonjs": "^1.0.0", "babel-plugin-transform-runtime": "^6.4.3", "babel-preset-env": "^1.6.0", "babel-preset-flow": "^6.23.0", "babel-preset-stage-0": "^6.0.0", "babylon": "^6.5.0", "commitizen": "^2.9.6", "cz-conventional-changelog": "^2.0.0", "eslint": "^4.3.0", "eslint-config-fb-strict": "^22.0.0", "eslint-plugin-babel": "^5.0.0", "eslint-plugin-flowtype": "^2.35.0", "eslint-plugin-jasmine": "^2.6.2", "eslint-plugin-jest": "^21.0.0", "eslint-plugin-jsx-a11y": "^6.0.2", "eslint-plugin-prefer-object-spread": "^1.2.1", "eslint-plugin-prettier": "^2.1.2", "eslint-plugin-react": "^7.1.0", "eslint-plugin-relay": "^0.0.24", "eslint-plugin-yarn-internal": "file:scripts/eslint-rules", "execa": "^0.10.0", "flow-bin": "^0.66.0", "git-release-notes": "^3.0.0", "gulp": "^3.9.0", "gulp-babel": "^7.0.0", "gulp-if": "^2.0.1", "gulp-newer": "^1.0.0", "gulp-plumber": "^1.0.1", "gulp-sourcemaps": "^2.2.0", "gulp-util": "^3.0.7", "gulp-watch": "^5.0.0", "jest": "^22.4.4", "jsinspect": "^0.12.6", "minimatch": "^3.0.4", "mock-stdin": "^0.3.0", "prettier": "^1.5.2", "temp": "^0.8.3", "webpack": "^2.1.0-beta.25", "yargs": "^6.3.0" }, "resolutions": { "sshpk": "^1.14.2" }, "engines": { "node": ">=4.0.0" }, "repository": "yarnpkg/yarn", "bin": { "yarn": "./bin/yarn.js", "yarnpkg": "./bin/yarn.js" }, "scripts": { "build": "gulp build", "build-bundle": "node ./scripts/build-webpack.js", "build-chocolatey": "powershell ./scripts/build-chocolatey.ps1", "build-deb": "./scripts/build-deb.sh", "build-dist": "bash ./scripts/build-dist.sh", "build-win-installer": "scripts\\build-windows-installer.bat", "changelog": "git-release-notes $(git describe --tags --abbrev=0 $(git describe --tags --abbrev=0)^)..$(git describe --tags --abbrev=0) scripts/changelog.md", "dupe-check": "yarn jsinspect ./src", "lint": "eslint . && flow check", "pkg-tests": "yarn --cwd packages/pkg-tests jest yarn.test.js", "prettier": "eslint src __tests__ --fix", "release-branch": "./scripts/release-branch.sh", "test": "yarn lint && yarn test-only", "test-only": "node --max_old_space_size=4096 node_modules/jest/bin/jest.js --verbose", "test-only-debug": "node --inspect-brk --max_old_space_size=4096 node_modules/jest/bin/jest.js --runInBand --verbose", "test-coverage": "node --max_old_space_size=4096 node_modules/jest/bin/jest.js --coverage --verbose", "watch": "gulp watch", "commit": "git-cz" }, "jest": { "collectCoverageFrom": ["src/**/*.js"], "testEnvironment": "node", "modulePathIgnorePatterns": ["__tests__/fixtures/", "packages/pkg-tests/pkg-tests-fixtures", "dist/"], "testPathIgnorePatterns": ["__tests__/(fixtures|__mocks__)/", "updates/", "_(temp|mock|install|init|helpers).js$", "packages/pkg-tests"] }, "config": { "commitizen": { "path": "./node_modules/cz-conventional-changelog" } } };
      }),
      ,
      ,
      ,
      ,
      /* 150 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        Object.defineProperty(exports3, "__esModule", {
          value: true
        });
        exports3.default = stringify;
        var _misc;
        function _load_misc() {
          return _misc = __webpack_require__2(12);
        }
        var _constants;
        function _load_constants() {
          return _constants = __webpack_require__2(6);
        }
        var _package;
        function _load_package() {
          return _package = __webpack_require__2(145);
        }
        const NODE_VERSION = process.version;
        function shouldWrapKey(str2) {
          return str2.indexOf("true") === 0 || str2.indexOf("false") === 0 || /[:\s\n\\",\[\]]/g.test(str2) || /^[0-9]/g.test(str2) || !/^[a-zA-Z]/g.test(str2);
        }
        function maybeWrap(str2) {
          if (typeof str2 === "boolean" || typeof str2 === "number" || shouldWrapKey(str2)) {
            return JSON.stringify(str2);
          } else {
            return str2;
          }
        }
        const priorities = {
          name: 1,
          version: 2,
          uid: 3,
          resolved: 4,
          integrity: 5,
          registry: 6,
          dependencies: 7
        };
        function priorityThenAlphaSort(a2, b) {
          if (priorities[a2] || priorities[b]) {
            return (priorities[a2] || 100) > (priorities[b] || 100) ? 1 : -1;
          } else {
            return (0, (_misc || _load_misc()).sortAlpha)(a2, b);
          }
        }
        function _stringify(obj, options) {
          if (typeof obj !== "object") {
            throw new TypeError();
          }
          const indent = options.indent;
          const lines = [];
          const keys4 = Object.keys(obj).sort(priorityThenAlphaSort);
          let addedKeys = [];
          for (let i2 = 0; i2 < keys4.length; i2++) {
            const key = keys4[i2];
            const val = obj[key];
            if (val == null || addedKeys.indexOf(key) >= 0) {
              continue;
            }
            const valKeys = [key];
            if (typeof val === "object") {
              for (let j2 = i2 + 1; j2 < keys4.length; j2++) {
                const key2 = keys4[j2];
                if (val === obj[key2]) {
                  valKeys.push(key2);
                }
              }
            }
            const keyLine = valKeys.sort((_misc || _load_misc()).sortAlpha).map(maybeWrap).join(", ");
            if (typeof val === "string" || typeof val === "boolean" || typeof val === "number") {
              lines.push(`${keyLine} ${maybeWrap(val)}`);
            } else if (typeof val === "object") {
              lines.push(`${keyLine}:
${_stringify(val, { indent: indent + "  " })}` + (options.topLevel ? "\n" : ""));
            } else {
              throw new TypeError();
            }
            addedKeys = addedKeys.concat(valKeys);
          }
          return indent + lines.join(`
${indent}`);
        }
        function stringify(obj, noHeader, enableVersions) {
          const val = _stringify(obj, {
            indent: "",
            topLevel: true
          });
          if (noHeader) {
            return val;
          }
          const lines = [];
          lines.push("# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.");
          lines.push(`# yarn lockfile v${(_constants || _load_constants()).LOCKFILE_VERSION}`);
          if (enableVersions) {
            lines.push(`# yarn v${(_package || _load_package()).version}`);
            lines.push(`# node ${NODE_VERSION}`);
          }
          lines.push("\n");
          lines.push(val);
          return lines.join("\n");
        }
      }),
      ,
      ,
      ,
      ,
      ,
      ,
      ,
      ,
      ,
      ,
      ,
      ,
      ,
      /* 164 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        Object.defineProperty(exports3, "__esModule", {
          value: true
        });
        exports3.fileDatesEqual = exports3.copyFile = exports3.unlink = void 0;
        var _asyncToGenerator2;
        function _load_asyncToGenerator() {
          return _asyncToGenerator2 = _interopRequireDefault(__webpack_require__2(1));
        }
        let fixTimes = (() => {
          var _ref3 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (fd, dest, data) {
            const doOpen = fd === void 0;
            let openfd = fd ? fd : -1;
            if (disableTimestampCorrection === void 0) {
              const destStat = yield lstat(dest);
              disableTimestampCorrection = fileDatesEqual(destStat.mtime, data.mtime);
            }
            if (disableTimestampCorrection) {
              return;
            }
            if (doOpen) {
              try {
                openfd = yield open5(dest, "a", data.mode);
              } catch (er) {
                try {
                  openfd = yield open5(dest, "r", data.mode);
                } catch (err) {
                  return;
                }
              }
            }
            try {
              if (openfd) {
                yield futimes(openfd, data.atime, data.mtime);
              }
            } catch (er) {
            } finally {
              if (doOpen && openfd) {
                yield close(openfd);
              }
            }
          });
          return function fixTimes2(_x7, _x8, _x9) {
            return _ref3.apply(this, arguments);
          };
        })();
        var _fs;
        function _load_fs() {
          return _fs = _interopRequireDefault(__webpack_require__2(3));
        }
        var _promise;
        function _load_promise() {
          return _promise = __webpack_require__2(40);
        }
        function _interopRequireDefault(obj) {
          return obj && obj.__esModule ? obj : { default: obj };
        }
        let disableTimestampCorrection = void 0;
        const readFileBuffer = (0, (_promise || _load_promise()).promisify)((_fs || _load_fs()).default.readFile);
        const close = (0, (_promise || _load_promise()).promisify)((_fs || _load_fs()).default.close);
        const lstat = (0, (_promise || _load_promise()).promisify)((_fs || _load_fs()).default.lstat);
        const open5 = (0, (_promise || _load_promise()).promisify)((_fs || _load_fs()).default.open);
        const futimes = (0, (_promise || _load_promise()).promisify)((_fs || _load_fs()).default.futimes);
        const write = (0, (_promise || _load_promise()).promisify)((_fs || _load_fs()).default.write);
        const unlink = exports3.unlink = (0, (_promise || _load_promise()).promisify)(__webpack_require__2(233));
        const copyFile = exports3.copyFile = (() => {
          var _ref = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (data, cleanup) {
            try {
              yield unlink(data.dest);
              yield copyFilePoly(data.src, data.dest, 0, data);
            } finally {
              if (cleanup) {
                cleanup();
              }
            }
          });
          return function copyFile2(_x, _x2) {
            return _ref.apply(this, arguments);
          };
        })();
        const copyFilePoly = (src2, dest, flags, data) => {
          if ((_fs || _load_fs()).default.copyFile) {
            return new Promise((resolve3, reject3) => (_fs || _load_fs()).default.copyFile(src2, dest, flags, (err) => {
              if (err) {
                reject3(err);
              } else {
                fixTimes(void 0, dest, data).then(() => resolve3()).catch((ex) => reject3(ex));
              }
            }));
          } else {
            return copyWithBuffer(src2, dest, flags, data);
          }
        };
        const copyWithBuffer = (() => {
          var _ref2 = (0, (_asyncToGenerator2 || _load_asyncToGenerator()).default)(function* (src2, dest, flags, data) {
            const fd = yield open5(dest, "w", data.mode);
            try {
              const buffer3 = yield readFileBuffer(src2);
              yield write(fd, buffer3, 0, buffer3.length);
              yield fixTimes(fd, dest, data);
            } finally {
              yield close(fd);
            }
          });
          return function copyWithBuffer2(_x3, _x4, _x5, _x6) {
            return _ref2.apply(this, arguments);
          };
        })();
        const fileDatesEqual = exports3.fileDatesEqual = (a2, b) => {
          const aTime = a2.getTime();
          const bTime = b.getTime();
          if (process.platform !== "win32") {
            return aTime === bTime;
          }
          if (Math.abs(aTime - bTime) <= 1) {
            return true;
          }
          const aTimeSec = Math.floor(aTime / 1e3);
          const bTimeSec = Math.floor(bTime / 1e3);
          if (aTime - aTimeSec * 1e3 === 0 || bTime - bTimeSec * 1e3 === 0) {
            return aTimeSec === bTimeSec;
          }
          return aTime === bTime;
        };
      }),
      ,
      ,
      ,
      ,
      /* 169 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        Object.defineProperty(exports3, "__esModule", {
          value: true
        });
        exports3.isFakeRoot = isFakeRoot;
        exports3.isRootUser = isRootUser;
        function getUid() {
          if (process.platform !== "win32" && process.getuid) {
            return process.getuid();
          }
          return null;
        }
        exports3.default = isRootUser(getUid()) && !isFakeRoot();
        function isFakeRoot() {
          return Boolean(process.env.FAKEROOTKEY);
        }
        function isRootUser(uid) {
          return uid === 0;
        }
      }),
      ,
      /* 171 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        Object.defineProperty(exports3, "__esModule", {
          value: true
        });
        exports3.getDataDir = getDataDir2;
        exports3.getCacheDir = getCacheDir2;
        exports3.getConfigDir = getConfigDir2;
        const path218 = __webpack_require__2(0);
        const userHome = __webpack_require__2(45).default;
        const FALLBACK_CONFIG_DIR = path218.join(userHome, ".config", "yarn");
        const FALLBACK_CACHE_DIR = path218.join(userHome, ".cache", "yarn");
        function getDataDir2() {
          if (process.platform === "win32") {
            const WIN32_APPDATA_DIR = getLocalAppDataDir();
            return WIN32_APPDATA_DIR == null ? FALLBACK_CONFIG_DIR : path218.join(WIN32_APPDATA_DIR, "Data");
          } else if (process.env.XDG_DATA_HOME) {
            return path218.join(process.env.XDG_DATA_HOME, "yarn");
          } else {
            return FALLBACK_CONFIG_DIR;
          }
        }
        function getCacheDir2() {
          if (process.platform === "win32") {
            return path218.join(getLocalAppDataDir() || path218.join(userHome, "AppData", "Local", "Yarn"), "Cache");
          } else if (process.env.XDG_CACHE_HOME) {
            return path218.join(process.env.XDG_CACHE_HOME, "yarn");
          } else if (process.platform === "darwin") {
            return path218.join(userHome, "Library", "Caches", "Yarn");
          } else {
            return FALLBACK_CACHE_DIR;
          }
        }
        function getConfigDir2() {
          if (process.platform === "win32") {
            const WIN32_APPDATA_DIR = getLocalAppDataDir();
            return WIN32_APPDATA_DIR == null ? FALLBACK_CONFIG_DIR : path218.join(WIN32_APPDATA_DIR, "Config");
          } else if (process.env.XDG_CONFIG_HOME) {
            return path218.join(process.env.XDG_CONFIG_HOME, "yarn");
          } else {
            return FALLBACK_CONFIG_DIR;
          }
        }
        function getLocalAppDataDir() {
          return process.env.LOCALAPPDATA ? path218.join(process.env.LOCALAPPDATA, "Yarn") : null;
        }
      }),
      ,
      /* 173 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        module3.exports = { "default": __webpack_require__2(179), __esModule: true };
      }),
      /* 174 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        module3.exports = balanced;
        function balanced(a2, b, str2) {
          if (a2 instanceof RegExp) a2 = maybeMatch(a2, str2);
          if (b instanceof RegExp) b = maybeMatch(b, str2);
          var r = range(a2, b, str2);
          return r && {
            start: r[0],
            end: r[1],
            pre: str2.slice(0, r[0]),
            body: str2.slice(r[0] + a2.length, r[1]),
            post: str2.slice(r[1] + b.length)
          };
        }
        function maybeMatch(reg, str2) {
          var m = str2.match(reg);
          return m ? m[0] : null;
        }
        balanced.range = range;
        function range(a2, b, str2) {
          var begs, beg, left, right, result2;
          var ai = str2.indexOf(a2);
          var bi = str2.indexOf(b, ai + 1);
          var i2 = ai;
          if (ai >= 0 && bi > 0) {
            begs = [];
            left = str2.length;
            while (i2 >= 0 && !result2) {
              if (i2 == ai) {
                begs.push(i2);
                ai = str2.indexOf(a2, i2 + 1);
              } else if (begs.length == 1) {
                result2 = [begs.pop(), bi];
              } else {
                beg = begs.pop();
                if (beg < left) {
                  left = beg;
                  right = bi;
                }
                bi = str2.indexOf(b, i2 + 1);
              }
              i2 = ai < bi && ai >= 0 ? ai : bi;
            }
            if (begs.length) {
              result2 = [left, right];
            }
          }
          return result2;
        }
      }),
      /* 175 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var concatMap = __webpack_require__2(178);
        var balanced = __webpack_require__2(174);
        module3.exports = expandTop;
        var escSlash = "\0SLASH" + Math.random() + "\0";
        var escOpen = "\0OPEN" + Math.random() + "\0";
        var escClose = "\0CLOSE" + Math.random() + "\0";
        var escComma = "\0COMMA" + Math.random() + "\0";
        var escPeriod = "\0PERIOD" + Math.random() + "\0";
        function numeric(str2) {
          return parseInt(str2, 10) == str2 ? parseInt(str2, 10) : str2.charCodeAt(0);
        }
        function escapeBraces(str2) {
          return str2.split("\\\\").join(escSlash).split("\\{").join(escOpen).split("\\}").join(escClose).split("\\,").join(escComma).split("\\.").join(escPeriod);
        }
        function unescapeBraces(str2) {
          return str2.split(escSlash).join("\\").split(escOpen).join("{").split(escClose).join("}").split(escComma).join(",").split(escPeriod).join(".");
        }
        function parseCommaParts(str2) {
          if (!str2)
            return [""];
          var parts = [];
          var m = balanced("{", "}", str2);
          if (!m)
            return str2.split(",");
          var pre = m.pre;
          var body = m.body;
          var post = m.post;
          var p = pre.split(",");
          p[p.length - 1] += "{" + body + "}";
          var postParts = parseCommaParts(post);
          if (post.length) {
            p[p.length - 1] += postParts.shift();
            p.push.apply(p, postParts);
          }
          parts.push.apply(parts, p);
          return parts;
        }
        function expandTop(str2) {
          if (!str2)
            return [];
          if (str2.substr(0, 2) === "{}") {
            str2 = "\\{\\}" + str2.substr(2);
          }
          return expand(escapeBraces(str2), true).map(unescapeBraces);
        }
        function identity5(e) {
          return e;
        }
        function embrace(str2) {
          return "{" + str2 + "}";
        }
        function isPadded(el) {
          return /^-?0\d/.test(el);
        }
        function lte(i2, y) {
          return i2 <= y;
        }
        function gte(i2, y) {
          return i2 >= y;
        }
        function expand(str2, isTop) {
          var expansions = [];
          var m = balanced("{", "}", str2);
          if (!m || /\$$/.test(m.pre)) return [str2];
          var isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body);
          var isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body);
          var isSequence = isNumericSequence || isAlphaSequence;
          var isOptions = m.body.indexOf(",") >= 0;
          if (!isSequence && !isOptions) {
            if (m.post.match(/,.*\}/)) {
              str2 = m.pre + "{" + m.body + escClose + m.post;
              return expand(str2);
            }
            return [str2];
          }
          var n2;
          if (isSequence) {
            n2 = m.body.split(/\.\./);
          } else {
            n2 = parseCommaParts(m.body);
            if (n2.length === 1) {
              n2 = expand(n2[0], false).map(embrace);
              if (n2.length === 1) {
                var post = m.post.length ? expand(m.post, false) : [""];
                return post.map(function(p) {
                  return m.pre + n2[0] + p;
                });
              }
            }
          }
          var pre = m.pre;
          var post = m.post.length ? expand(m.post, false) : [""];
          var N;
          if (isSequence) {
            var x = numeric(n2[0]);
            var y = numeric(n2[1]);
            var width = Math.max(n2[0].length, n2[1].length);
            var incr = n2.length == 3 ? Math.abs(numeric(n2[2])) : 1;
            var test = lte;
            var reverse3 = y < x;
            if (reverse3) {
              incr *= -1;
              test = gte;
            }
            var pad3 = n2.some(isPadded);
            N = [];
            for (var i2 = x; test(i2, y); i2 += incr) {
              var c3;
              if (isAlphaSequence) {
                c3 = String.fromCharCode(i2);
                if (c3 === "\\")
                  c3 = "";
              } else {
                c3 = String(i2);
                if (pad3) {
                  var need = width - c3.length;
                  if (need > 0) {
                    var z = new Array(need + 1).join("0");
                    if (i2 < 0)
                      c3 = "-" + z + c3.slice(1);
                    else
                      c3 = z + c3;
                  }
                }
              }
              N.push(c3);
            }
          } else {
            N = concatMap(n2, function(el) {
              return expand(el, false);
            });
          }
          for (var j2 = 0; j2 < N.length; j2++) {
            for (var k2 = 0; k2 < post.length; k2++) {
              var expansion = pre + N[j2] + post[k2];
              if (!isTop || isSequence || expansion)
                expansions.push(expansion);
            }
          }
          return expansions;
        }
      }),
      /* 176 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        function preserveCamelCase2(str2) {
          let isLastCharLower = false;
          let isLastCharUpper = false;
          let isLastLastCharUpper = false;
          for (let i2 = 0; i2 < str2.length; i2++) {
            const c3 = str2[i2];
            if (isLastCharLower && /[a-zA-Z]/.test(c3) && c3.toUpperCase() === c3) {
              str2 = str2.substr(0, i2) + "-" + str2.substr(i2);
              isLastCharLower = false;
              isLastLastCharUpper = isLastCharUpper;
              isLastCharUpper = true;
              i2++;
            } else if (isLastCharUpper && isLastLastCharUpper && /[a-zA-Z]/.test(c3) && c3.toLowerCase() === c3) {
              str2 = str2.substr(0, i2 - 1) + "-" + str2.substr(i2 - 1);
              isLastLastCharUpper = isLastCharUpper;
              isLastCharUpper = false;
              isLastCharLower = true;
            } else {
              isLastCharLower = c3.toLowerCase() === c3;
              isLastLastCharUpper = isLastCharUpper;
              isLastCharUpper = c3.toUpperCase() === c3;
            }
          }
          return str2;
        }
        module3.exports = function(str2) {
          if (arguments.length > 1) {
            str2 = Array.from(arguments).map((x) => x.trim()).filter((x) => x.length).join("-");
          } else {
            str2 = str2.trim();
          }
          if (str2.length === 0) {
            return "";
          }
          if (str2.length === 1) {
            return str2.toLowerCase();
          }
          if (/^[a-z0-9]+$/.test(str2)) {
            return str2;
          }
          const hasUpperCase = str2 !== str2.toLowerCase();
          if (hasUpperCase) {
            str2 = preserveCamelCase2(str2);
          }
          return str2.replace(/^[_.\- ]+/, "").toLowerCase().replace(/[_.\- ]+(\w|$)/g, (m, p1) => p1.toUpperCase());
        };
      }),
      ,
      /* 178 */
      /***/
      (function(module3, exports3) {
        module3.exports = function(xs, fn) {
          var res = [];
          for (var i2 = 0; i2 < xs.length; i2++) {
            var x = fn(xs[i2], i2);
            if (isArray(x)) res.push.apply(res, x);
            else res.push(x);
          }
          return res;
        };
        var isArray = Array.isArray || function(xs) {
          return Object.prototype.toString.call(xs) === "[object Array]";
        };
      }),
      /* 179 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        __webpack_require__2(205);
        __webpack_require__2(207);
        __webpack_require__2(210);
        __webpack_require__2(206);
        __webpack_require__2(208);
        __webpack_require__2(209);
        module3.exports = __webpack_require__2(23).Promise;
      }),
      /* 180 */
      /***/
      (function(module3, exports3) {
        module3.exports = function() {
        };
      }),
      /* 181 */
      /***/
      (function(module3, exports3) {
        module3.exports = function(it, Constructor, name, forbiddenField) {
          if (!(it instanceof Constructor) || forbiddenField !== void 0 && forbiddenField in it) {
            throw TypeError(name + ": incorrect invocation!");
          }
          return it;
        };
      }),
      /* 182 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var toIObject = __webpack_require__2(74);
        var toLength = __webpack_require__2(110);
        var toAbsoluteIndex = __webpack_require__2(200);
        module3.exports = function(IS_INCLUDES) {
          return function($this, el, fromIndex) {
            var O2 = toIObject($this);
            var length = toLength(O2.length);
            var index = toAbsoluteIndex(fromIndex, length);
            var value;
            if (IS_INCLUDES && el != el) while (length > index) {
              value = O2[index++];
              if (value != value) return true;
            }
            else for (; length > index; index++) if (IS_INCLUDES || index in O2) {
              if (O2[index] === el) return IS_INCLUDES || index || 0;
            }
            return !IS_INCLUDES && -1;
          };
        };
      }),
      /* 183 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var ctx = __webpack_require__2(48);
        var call = __webpack_require__2(187);
        var isArrayIter = __webpack_require__2(186);
        var anObject = __webpack_require__2(27);
        var toLength = __webpack_require__2(110);
        var getIterFn = __webpack_require__2(203);
        var BREAK = {};
        var RETURN = {};
        var exports3 = module3.exports = function(iterable, entries, fn, that, ITERATOR) {
          var iterFn = ITERATOR ? function() {
            return iterable;
          } : getIterFn(iterable);
          var f = ctx(fn, that, entries ? 2 : 1);
          var index = 0;
          var length, step2, iterator, result2;
          if (typeof iterFn != "function") throw TypeError(iterable + " is not iterable!");
          if (isArrayIter(iterFn)) for (length = toLength(iterable.length); length > index; index++) {
            result2 = entries ? f(anObject(step2 = iterable[index])[0], step2[1]) : f(iterable[index]);
            if (result2 === BREAK || result2 === RETURN) return result2;
          }
          else for (iterator = iterFn.call(iterable); !(step2 = iterator.next()).done; ) {
            result2 = call(iterator, f, step2.value, entries);
            if (result2 === BREAK || result2 === RETURN) return result2;
          }
        };
        exports3.BREAK = BREAK;
        exports3.RETURN = RETURN;
      }),
      /* 184 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        module3.exports = !__webpack_require__2(33) && !__webpack_require__2(85)(function() {
          return Object.defineProperty(__webpack_require__2(68)("div"), "a", { get: function() {
            return 7;
          } }).a != 7;
        });
      }),
      /* 185 */
      /***/
      (function(module3, exports3) {
        module3.exports = function(fn, args, that) {
          var un = that === void 0;
          switch (args.length) {
            case 0:
              return un ? fn() : fn.call(that);
            case 1:
              return un ? fn(args[0]) : fn.call(that, args[0]);
            case 2:
              return un ? fn(args[0], args[1]) : fn.call(that, args[0], args[1]);
            case 3:
              return un ? fn(args[0], args[1], args[2]) : fn.call(that, args[0], args[1], args[2]);
            case 4:
              return un ? fn(args[0], args[1], args[2], args[3]) : fn.call(that, args[0], args[1], args[2], args[3]);
          }
          return fn.apply(that, args);
        };
      }),
      /* 186 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var Iterators = __webpack_require__2(35);
        var ITERATOR = __webpack_require__2(13)("iterator");
        var ArrayProto = Array.prototype;
        module3.exports = function(it) {
          return it !== void 0 && (Iterators.Array === it || ArrayProto[ITERATOR] === it);
        };
      }),
      /* 187 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var anObject = __webpack_require__2(27);
        module3.exports = function(iterator, fn, value, entries) {
          try {
            return entries ? fn(anObject(value)[0], value[1]) : fn(value);
          } catch (e) {
            var ret2 = iterator["return"];
            if (ret2 !== void 0) anObject(ret2.call(iterator));
            throw e;
          }
        };
      }),
      /* 188 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        var create = __webpack_require__2(192);
        var descriptor = __webpack_require__2(106);
        var setToStringTag = __webpack_require__2(71);
        var IteratorPrototype = {};
        __webpack_require__2(31)(IteratorPrototype, __webpack_require__2(13)("iterator"), function() {
          return this;
        });
        module3.exports = function(Constructor, NAME, next2) {
          Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next2) });
          setToStringTag(Constructor, NAME + " Iterator");
        };
      }),
      /* 189 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var ITERATOR = __webpack_require__2(13)("iterator");
        var SAFE_CLOSING = false;
        try {
          var riter = [7][ITERATOR]();
          riter["return"] = function() {
            SAFE_CLOSING = true;
          };
          Array.from(riter, function() {
            throw 2;
          });
        } catch (e) {
        }
        module3.exports = function(exec, skipClosing) {
          if (!skipClosing && !SAFE_CLOSING) return false;
          var safe = false;
          try {
            var arr = [7];
            var iter = arr[ITERATOR]();
            iter.next = function() {
              return { done: safe = true };
            };
            arr[ITERATOR] = function() {
              return iter;
            };
            exec(arr);
          } catch (e) {
          }
          return safe;
        };
      }),
      /* 190 */
      /***/
      (function(module3, exports3) {
        module3.exports = function(done, value) {
          return { value, done: !!done };
        };
      }),
      /* 191 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var global3 = __webpack_require__2(11);
        var macrotask = __webpack_require__2(109).set;
        var Observer = global3.MutationObserver || global3.WebKitMutationObserver;
        var process17 = global3.process;
        var Promise2 = global3.Promise;
        var isNode2 = __webpack_require__2(47)(process17) == "process";
        module3.exports = function() {
          var head2, last, notify;
          var flush = function() {
            var parent, fn;
            if (isNode2 && (parent = process17.domain)) parent.exit();
            while (head2) {
              fn = head2.fn;
              head2 = head2.next;
              try {
                fn();
              } catch (e) {
                if (head2) notify();
                else last = void 0;
                throw e;
              }
            }
            last = void 0;
            if (parent) parent.enter();
          };
          if (isNode2) {
            notify = function() {
              process17.nextTick(flush);
            };
          } else if (Observer && !(global3.navigator && global3.navigator.standalone)) {
            var toggle = true;
            var node = document.createTextNode("");
            new Observer(flush).observe(node, { characterData: true });
            notify = function() {
              node.data = toggle = !toggle;
            };
          } else if (Promise2 && Promise2.resolve) {
            var promise2 = Promise2.resolve(void 0);
            notify = function() {
              promise2.then(flush);
            };
          } else {
            notify = function() {
              macrotask.call(global3, flush);
            };
          }
          return function(fn) {
            var task = { fn, next: void 0 };
            if (last) last.next = task;
            if (!head2) {
              head2 = task;
              notify();
            }
            last = task;
          };
        };
      }),
      /* 192 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var anObject = __webpack_require__2(27);
        var dPs = __webpack_require__2(193);
        var enumBugKeys = __webpack_require__2(101);
        var IE_PROTO = __webpack_require__2(72)("IE_PROTO");
        var Empty = function() {
        };
        var PROTOTYPE = "prototype";
        var createDict = function() {
          var iframe = __webpack_require__2(68)("iframe");
          var i2 = enumBugKeys.length;
          var lt = "<";
          var gt = ">";
          var iframeDocument;
          iframe.style.display = "none";
          __webpack_require__2(102).appendChild(iframe);
          iframe.src = "javascript:";
          iframeDocument = iframe.contentWindow.document;
          iframeDocument.open();
          iframeDocument.write(lt + "script" + gt + "document.F=Object" + lt + "/script" + gt);
          iframeDocument.close();
          createDict = iframeDocument.F;
          while (i2--) delete createDict[PROTOTYPE][enumBugKeys[i2]];
          return createDict();
        };
        module3.exports = Object.create || function create(O2, Properties) {
          var result2;
          if (O2 !== null) {
            Empty[PROTOTYPE] = anObject(O2);
            result2 = new Empty();
            Empty[PROTOTYPE] = null;
            result2[IE_PROTO] = O2;
          } else result2 = createDict();
          return Properties === void 0 ? result2 : dPs(result2, Properties);
        };
      }),
      /* 193 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var dP = __webpack_require__2(50);
        var anObject = __webpack_require__2(27);
        var getKeys = __webpack_require__2(132);
        module3.exports = __webpack_require__2(33) ? Object.defineProperties : function defineProperties(O2, Properties) {
          anObject(O2);
          var keys4 = getKeys(Properties);
          var length = keys4.length;
          var i2 = 0;
          var P2;
          while (length > i2) dP.f(O2, P2 = keys4[i2++], Properties[P2]);
          return O2;
        };
      }),
      /* 194 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var has = __webpack_require__2(49);
        var toObject = __webpack_require__2(133);
        var IE_PROTO = __webpack_require__2(72)("IE_PROTO");
        var ObjectProto = Object.prototype;
        module3.exports = Object.getPrototypeOf || function(O2) {
          O2 = toObject(O2);
          if (has(O2, IE_PROTO)) return O2[IE_PROTO];
          if (typeof O2.constructor == "function" && O2 instanceof O2.constructor) {
            return O2.constructor.prototype;
          }
          return O2 instanceof Object ? ObjectProto : null;
        };
      }),
      /* 195 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var has = __webpack_require__2(49);
        var toIObject = __webpack_require__2(74);
        var arrayIndexOf = __webpack_require__2(182)(false);
        var IE_PROTO = __webpack_require__2(72)("IE_PROTO");
        module3.exports = function(object, names) {
          var O2 = toIObject(object);
          var i2 = 0;
          var result2 = [];
          var key;
          for (key in O2) if (key != IE_PROTO) has(O2, key) && result2.push(key);
          while (names.length > i2) if (has(O2, key = names[i2++])) {
            ~arrayIndexOf(result2, key) || result2.push(key);
          }
          return result2;
        };
      }),
      /* 196 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var hide = __webpack_require__2(31);
        module3.exports = function(target2, src2, safe) {
          for (var key in src2) {
            if (safe && target2[key]) target2[key] = src2[key];
            else hide(target2, key, src2[key]);
          }
          return target2;
        };
      }),
      /* 197 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        module3.exports = __webpack_require__2(31);
      }),
      /* 198 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        var global3 = __webpack_require__2(11);
        var core2 = __webpack_require__2(23);
        var dP = __webpack_require__2(50);
        var DESCRIPTORS = __webpack_require__2(33);
        var SPECIES = __webpack_require__2(13)("species");
        module3.exports = function(KEY) {
          var C = typeof core2[KEY] == "function" ? core2[KEY] : global3[KEY];
          if (DESCRIPTORS && C && !C[SPECIES]) dP.f(C, SPECIES, {
            configurable: true,
            get: function() {
              return this;
            }
          });
        };
      }),
      /* 199 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var toInteger = __webpack_require__2(73);
        var defined = __webpack_require__2(67);
        module3.exports = function(TO_STRING) {
          return function(that, pos) {
            var s = String(defined(that));
            var i2 = toInteger(pos);
            var l = s.length;
            var a2, b;
            if (i2 < 0 || i2 >= l) return TO_STRING ? "" : void 0;
            a2 = s.charCodeAt(i2);
            return a2 < 55296 || a2 > 56319 || i2 + 1 === l || (b = s.charCodeAt(i2 + 1)) < 56320 || b > 57343 ? TO_STRING ? s.charAt(i2) : a2 : TO_STRING ? s.slice(i2, i2 + 2) : (a2 - 55296 << 10) + (b - 56320) + 65536;
          };
        };
      }),
      /* 200 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var toInteger = __webpack_require__2(73);
        var max3 = Math.max;
        var min = Math.min;
        module3.exports = function(index, length) {
          index = toInteger(index);
          return index < 0 ? max3(index + length, 0) : min(index, length);
        };
      }),
      /* 201 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var isObject4 = __webpack_require__2(34);
        module3.exports = function(it, S2) {
          if (!isObject4(it)) return it;
          var fn, val;
          if (S2 && typeof (fn = it.toString) == "function" && !isObject4(val = fn.call(it))) return val;
          if (typeof (fn = it.valueOf) == "function" && !isObject4(val = fn.call(it))) return val;
          if (!S2 && typeof (fn = it.toString) == "function" && !isObject4(val = fn.call(it))) return val;
          throw TypeError("Can't convert object to primitive value");
        };
      }),
      /* 202 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var global3 = __webpack_require__2(11);
        var navigator2 = global3.navigator;
        module3.exports = navigator2 && navigator2.userAgent || "";
      }),
      /* 203 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var classof = __webpack_require__2(100);
        var ITERATOR = __webpack_require__2(13)("iterator");
        var Iterators = __webpack_require__2(35);
        module3.exports = __webpack_require__2(23).getIteratorMethod = function(it) {
          if (it != void 0) return it[ITERATOR] || it["@@iterator"] || Iterators[classof(it)];
        };
      }),
      /* 204 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        var addToUnscopables = __webpack_require__2(180);
        var step2 = __webpack_require__2(190);
        var Iterators = __webpack_require__2(35);
        var toIObject = __webpack_require__2(74);
        module3.exports = __webpack_require__2(103)(Array, "Array", function(iterated, kind) {
          this._t = toIObject(iterated);
          this._i = 0;
          this._k = kind;
        }, function() {
          var O2 = this._t;
          var kind = this._k;
          var index = this._i++;
          if (!O2 || index >= O2.length) {
            this._t = void 0;
            return step2(1);
          }
          if (kind == "keys") return step2(0, index);
          if (kind == "values") return step2(0, O2[index]);
          return step2(0, [index, O2[index]]);
        }, "values");
        Iterators.Arguments = Iterators.Array;
        addToUnscopables("keys");
        addToUnscopables("values");
        addToUnscopables("entries");
      }),
      /* 205 */
      /***/
      (function(module3, exports3) {
      }),
      /* 206 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        var LIBRARY = __webpack_require__2(69);
        var global3 = __webpack_require__2(11);
        var ctx = __webpack_require__2(48);
        var classof = __webpack_require__2(100);
        var $export = __webpack_require__2(41);
        var isObject4 = __webpack_require__2(34);
        var aFunction = __webpack_require__2(46);
        var anInstance = __webpack_require__2(181);
        var forOf = __webpack_require__2(183);
        var speciesConstructor = __webpack_require__2(108);
        var task = __webpack_require__2(109).set;
        var microtask = __webpack_require__2(191)();
        var newPromiseCapabilityModule = __webpack_require__2(70);
        var perform = __webpack_require__2(104);
        var userAgent = __webpack_require__2(202);
        var promiseResolve = __webpack_require__2(105);
        var PROMISE = "Promise";
        var TypeError2 = global3.TypeError;
        var process17 = global3.process;
        var versions = process17 && process17.versions;
        var v8 = versions && versions.v8 || "";
        var $Promise = global3[PROMISE];
        var isNode2 = classof(process17) == "process";
        var empty4 = function() {
        };
        var Internal, newGenericPromiseCapability, OwnPromiseCapability, Wrapper;
        var newPromiseCapability = newGenericPromiseCapability = newPromiseCapabilityModule.f;
        var USE_NATIVE = !!(function() {
          try {
            var promise2 = $Promise.resolve(1);
            var FakePromise = (promise2.constructor = {})[__webpack_require__2(13)("species")] = function(exec) {
              exec(empty4, empty4);
            };
            return (isNode2 || typeof PromiseRejectionEvent == "function") && promise2.then(empty4) instanceof FakePromise && v8.indexOf("6.6") !== 0 && userAgent.indexOf("Chrome/66") === -1;
          } catch (e) {
          }
        })();
        var isThenable = function(it) {
          var then;
          return isObject4(it) && typeof (then = it.then) == "function" ? then : false;
        };
        var notify = function(promise2, isReject) {
          if (promise2._n) return;
          promise2._n = true;
          var chain3 = promise2._c;
          microtask(function() {
            var value = promise2._v;
            var ok = promise2._s == 1;
            var i2 = 0;
            var run = function(reaction) {
              var handler77 = ok ? reaction.ok : reaction.fail;
              var resolve3 = reaction.resolve;
              var reject3 = reaction.reject;
              var domain = reaction.domain;
              var result2, then, exited;
              try {
                if (handler77) {
                  if (!ok) {
                    if (promise2._h == 2) onHandleUnhandled(promise2);
                    promise2._h = 1;
                  }
                  if (handler77 === true) result2 = value;
                  else {
                    if (domain) domain.enter();
                    result2 = handler77(value);
                    if (domain) {
                      domain.exit();
                      exited = true;
                    }
                  }
                  if (result2 === reaction.promise) {
                    reject3(TypeError2("Promise-chain cycle"));
                  } else if (then = isThenable(result2)) {
                    then.call(result2, resolve3, reject3);
                  } else resolve3(result2);
                } else reject3(value);
              } catch (e) {
                if (domain && !exited) domain.exit();
                reject3(e);
              }
            };
            while (chain3.length > i2) run(chain3[i2++]);
            promise2._c = [];
            promise2._n = false;
            if (isReject && !promise2._h) onUnhandled(promise2);
          });
        };
        var onUnhandled = function(promise2) {
          task.call(global3, function() {
            var value = promise2._v;
            var unhandled = isUnhandled(promise2);
            var result2, handler77, console2;
            if (unhandled) {
              result2 = perform(function() {
                if (isNode2) {
                  process17.emit("unhandledRejection", value, promise2);
                } else if (handler77 = global3.onunhandledrejection) {
                  handler77({ promise: promise2, reason: value });
                } else if ((console2 = global3.console) && console2.error) {
                  console2.error("Unhandled promise rejection", value);
                }
              });
              promise2._h = isNode2 || isUnhandled(promise2) ? 2 : 1;
            }
            promise2._a = void 0;
            if (unhandled && result2.e) throw result2.v;
          });
        };
        var isUnhandled = function(promise2) {
          return promise2._h !== 1 && (promise2._a || promise2._c).length === 0;
        };
        var onHandleUnhandled = function(promise2) {
          task.call(global3, function() {
            var handler77;
            if (isNode2) {
              process17.emit("rejectionHandled", promise2);
            } else if (handler77 = global3.onrejectionhandled) {
              handler77({ promise: promise2, reason: promise2._v });
            }
          });
        };
        var $reject = function(value) {
          var promise2 = this;
          if (promise2._d) return;
          promise2._d = true;
          promise2 = promise2._w || promise2;
          promise2._v = value;
          promise2._s = 2;
          if (!promise2._a) promise2._a = promise2._c.slice();
          notify(promise2, true);
        };
        var $resolve = function(value) {
          var promise2 = this;
          var then;
          if (promise2._d) return;
          promise2._d = true;
          promise2 = promise2._w || promise2;
          try {
            if (promise2 === value) throw TypeError2("Promise can't be resolved itself");
            if (then = isThenable(value)) {
              microtask(function() {
                var wrapper = { _w: promise2, _d: false };
                try {
                  then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1));
                } catch (e) {
                  $reject.call(wrapper, e);
                }
              });
            } else {
              promise2._v = value;
              promise2._s = 1;
              notify(promise2, false);
            }
          } catch (e) {
            $reject.call({ _w: promise2, _d: false }, e);
          }
        };
        if (!USE_NATIVE) {
          $Promise = function Promise2(executor) {
            anInstance(this, $Promise, PROMISE, "_h");
            aFunction(executor);
            Internal.call(this);
            try {
              executor(ctx($resolve, this, 1), ctx($reject, this, 1));
            } catch (err) {
              $reject.call(this, err);
            }
          };
          Internal = function Promise2(executor) {
            this._c = [];
            this._a = void 0;
            this._s = 0;
            this._d = false;
            this._v = void 0;
            this._h = 0;
            this._n = false;
          };
          Internal.prototype = __webpack_require__2(196)($Promise.prototype, {
            // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected)
            then: function then(onFulfilled, onRejected) {
              var reaction = newPromiseCapability(speciesConstructor(this, $Promise));
              reaction.ok = typeof onFulfilled == "function" ? onFulfilled : true;
              reaction.fail = typeof onRejected == "function" && onRejected;
              reaction.domain = isNode2 ? process17.domain : void 0;
              this._c.push(reaction);
              if (this._a) this._a.push(reaction);
              if (this._s) notify(this, false);
              return reaction.promise;
            },
            // 25.4.5.1 Promise.prototype.catch(onRejected)
            "catch": function(onRejected) {
              return this.then(void 0, onRejected);
            }
          });
          OwnPromiseCapability = function() {
            var promise2 = new Internal();
            this.promise = promise2;
            this.resolve = ctx($resolve, promise2, 1);
            this.reject = ctx($reject, promise2, 1);
          };
          newPromiseCapabilityModule.f = newPromiseCapability = function(C) {
            return C === $Promise || C === Wrapper ? new OwnPromiseCapability(C) : newGenericPromiseCapability(C);
          };
        }
        $export($export.G + $export.W + $export.F * !USE_NATIVE, { Promise: $Promise });
        __webpack_require__2(71)($Promise, PROMISE);
        __webpack_require__2(198)(PROMISE);
        Wrapper = __webpack_require__2(23)[PROMISE];
        $export($export.S + $export.F * !USE_NATIVE, PROMISE, {
          // 25.4.4.5 Promise.reject(r)
          reject: function reject3(r) {
            var capability = newPromiseCapability(this);
            var $$reject = capability.reject;
            $$reject(r);
            return capability.promise;
          }
        });
        $export($export.S + $export.F * (LIBRARY || !USE_NATIVE), PROMISE, {
          // 25.4.4.6 Promise.resolve(x)
          resolve: function resolve3(x) {
            return promiseResolve(LIBRARY && this === Wrapper ? $Promise : this, x);
          }
        });
        $export($export.S + $export.F * !(USE_NATIVE && __webpack_require__2(189)(function(iter) {
          $Promise.all(iter)["catch"](empty4);
        })), PROMISE, {
          // 25.4.4.1 Promise.all(iterable)
          all: function all(iterable) {
            var C = this;
            var capability = newPromiseCapability(C);
            var resolve3 = capability.resolve;
            var reject3 = capability.reject;
            var result2 = perform(function() {
              var values = [];
              var index = 0;
              var remaining = 1;
              forOf(iterable, false, function(promise2) {
                var $index = index++;
                var alreadyCalled = false;
                values.push(void 0);
                remaining++;
                C.resolve(promise2).then(function(value) {
                  if (alreadyCalled) return;
                  alreadyCalled = true;
                  values[$index] = value;
                  --remaining || resolve3(values);
                }, reject3);
              });
              --remaining || resolve3(values);
            });
            if (result2.e) reject3(result2.v);
            return capability.promise;
          },
          // 25.4.4.4 Promise.race(iterable)
          race: function race(iterable) {
            var C = this;
            var capability = newPromiseCapability(C);
            var reject3 = capability.reject;
            var result2 = perform(function() {
              forOf(iterable, false, function(promise2) {
                C.resolve(promise2).then(capability.resolve, reject3);
              });
            });
            if (result2.e) reject3(result2.v);
            return capability.promise;
          }
        });
      }),
      /* 207 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        var $at = __webpack_require__2(199)(true);
        __webpack_require__2(103)(String, "String", function(iterated) {
          this._t = String(iterated);
          this._i = 0;
        }, function() {
          var O2 = this._t;
          var index = this._i;
          var point;
          if (index >= O2.length) return { value: void 0, done: true };
          point = $at(O2, index);
          this._i += point.length;
          return { value: point, done: false };
        });
      }),
      /* 208 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        var $export = __webpack_require__2(41);
        var core2 = __webpack_require__2(23);
        var global3 = __webpack_require__2(11);
        var speciesConstructor = __webpack_require__2(108);
        var promiseResolve = __webpack_require__2(105);
        $export($export.P + $export.R, "Promise", { "finally": function(onFinally) {
          var C = speciesConstructor(this, core2.Promise || global3.Promise);
          var isFunction = typeof onFinally == "function";
          return this.then(
            isFunction ? function(x) {
              return promiseResolve(C, onFinally()).then(function() {
                return x;
              });
            } : onFinally,
            isFunction ? function(e) {
              return promiseResolve(C, onFinally()).then(function() {
                throw e;
              });
            } : onFinally
          );
        } });
      }),
      /* 209 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        var $export = __webpack_require__2(41);
        var newPromiseCapability = __webpack_require__2(70);
        var perform = __webpack_require__2(104);
        $export($export.S, "Promise", { "try": function(callbackfn) {
          var promiseCapability = newPromiseCapability.f(this);
          var result2 = perform(callbackfn);
          (result2.e ? promiseCapability.reject : promiseCapability.resolve)(result2.v);
          return promiseCapability.promise;
        } });
      }),
      /* 210 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        __webpack_require__2(204);
        var global3 = __webpack_require__2(11);
        var hide = __webpack_require__2(31);
        var Iterators = __webpack_require__2(35);
        var TO_STRING_TAG = __webpack_require__2(13)("toStringTag");
        var DOMIterables = "CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(",");
        for (var i2 = 0; i2 < DOMIterables.length; i2++) {
          var NAME = DOMIterables[i2];
          var Collection = global3[NAME];
          var proto2 = Collection && Collection.prototype;
          if (proto2 && !proto2[TO_STRING_TAG]) hide(proto2, TO_STRING_TAG, NAME);
          Iterators[NAME] = Iterators.Array;
        }
      }),
      /* 211 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        exports3 = module3.exports = __webpack_require__2(112);
        exports3.log = log3;
        exports3.formatArgs = formatArgs;
        exports3.save = save;
        exports3.load = load3;
        exports3.useColors = useColors;
        exports3.storage = "undefined" != typeof chrome && "undefined" != typeof chrome.storage ? chrome.storage.local : localstorage();
        exports3.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"
        ];
        function useColors() {
          if (typeof window !== "undefined" && window.process && window.process.type === "renderer") {
            return true;
          }
          if (typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)) {
            return false;
          }
          return typeof document !== "undefined" && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance || // is firebug? http://stackoverflow.com/a/398120/376773
          typeof window !== "undefined" && window.console && (window.console.firebug || window.console.exception && window.console.table) || // is firefox >= v31?
          // https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages
          typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31 || // double check webkit in userAgent just in case we are in a worker
          typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/);
        }
        exports3.formatters.j = function(v) {
          try {
            return JSON.stringify(v);
          } catch (err) {
            return "[UnexpectedJSONParseError]: " + err.message;
          }
        };
        function formatArgs(args) {
          var useColors2 = this.useColors;
          args[0] = (useColors2 ? "%c" : "") + this.namespace + (useColors2 ? " %c" : " ") + args[0] + (useColors2 ? "%c " : " ") + "+" + exports3.humanize(this.diff);
          if (!useColors2) return;
          var c3 = "color: " + this.color;
          args.splice(1, 0, c3, "color: inherit");
          var index = 0;
          var lastC = 0;
          args[0].replace(/%[a-zA-Z%]/g, function(match) {
            if ("%%" === match) return;
            index++;
            if ("%c" === match) {
              lastC = index;
            }
          });
          args.splice(lastC, 0, c3);
        }
        function log3() {
          return "object" === typeof console && console.log && Function.prototype.apply.call(console.log, console, arguments);
        }
        function save(namespaces) {
          try {
            if (null == namespaces) {
              exports3.storage.removeItem("debug");
            } else {
              exports3.storage.debug = namespaces;
            }
          } catch (e) {
          }
        }
        function load3() {
          var r;
          try {
            r = exports3.storage.debug;
          } catch (e) {
          }
          if (!r && typeof process !== "undefined" && "env" in process) {
            r = process.env.DEBUG;
          }
          return r;
        }
        exports3.enable(load3());
        function localstorage() {
          try {
            return window.localStorage;
          } catch (e) {
          }
        }
      }),
      /* 212 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        if (typeof process === "undefined" || process.type === "renderer") {
          module3.exports = __webpack_require__2(211);
        } else {
          module3.exports = __webpack_require__2(213);
        }
      }),
      /* 213 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var tty5 = __webpack_require__2(79);
        var util56 = __webpack_require__2(2);
        exports3 = module3.exports = __webpack_require__2(112);
        exports3.init = init2;
        exports3.log = log3;
        exports3.formatArgs = formatArgs;
        exports3.save = save;
        exports3.load = load3;
        exports3.useColors = useColors;
        exports3.colors = [6, 2, 3, 4, 5, 1];
        try {
          var supportsColor3 = __webpack_require__2(239);
          if (supportsColor3 && supportsColor3.level >= 2) {
            exports3.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
            ];
          }
        } catch (err) {
        }
        exports3.inspectOpts = Object.keys(process.env).filter(function(key) {
          return /^debug_/i.test(key);
        }).reduce(function(obj, key) {
          var prop3 = key.substring(6).toLowerCase().replace(/_([a-z])/g, function(_, k2) {
            return k2.toUpperCase();
          });
          var val = process.env[key];
          if (/^(yes|on|true|enabled)$/i.test(val)) val = true;
          else if (/^(no|off|false|disabled)$/i.test(val)) val = false;
          else if (val === "null") val = null;
          else val = Number(val);
          obj[prop3] = val;
          return obj;
        }, {});
        function useColors() {
          return "colors" in exports3.inspectOpts ? Boolean(exports3.inspectOpts.colors) : tty5.isatty(process.stderr.fd);
        }
        exports3.formatters.o = function(v) {
          this.inspectOpts.colors = this.useColors;
          return util56.inspect(v, this.inspectOpts).split("\n").map(function(str2) {
            return str2.trim();
          }).join(" ");
        };
        exports3.formatters.O = function(v) {
          this.inspectOpts.colors = this.useColors;
          return util56.inspect(v, this.inspectOpts);
        };
        function formatArgs(args) {
          var name = this.namespace;
          var useColors2 = this.useColors;
          if (useColors2) {
            var c3 = this.color;
            var colorCode = "\x1B[3" + (c3 < 8 ? c3 : "8;5;" + c3);
            var prefix = "  " + colorCode + ";1m" + name + " \x1B[0m";
            args[0] = prefix + args[0].split("\n").join("\n" + prefix);
            args.push(colorCode + "m+" + exports3.humanize(this.diff) + "\x1B[0m");
          } else {
            args[0] = getDate() + name + " " + args[0];
          }
        }
        function getDate() {
          if (exports3.inspectOpts.hideDate) {
            return "";
          } else {
            return (/* @__PURE__ */ new Date()).toISOString() + " ";
          }
        }
        function log3() {
          return process.stderr.write(util56.format.apply(util56, arguments) + "\n");
        }
        function save(namespaces) {
          if (null == namespaces) {
            delete process.env.DEBUG;
          } else {
            process.env.DEBUG = namespaces;
          }
        }
        function load3() {
          return process.env.DEBUG;
        }
        function init2(debug) {
          debug.inspectOpts = {};
          var keys4 = Object.keys(exports3.inspectOpts);
          for (var i2 = 0; i2 < keys4.length; i2++) {
            debug.inspectOpts[keys4[i2]] = exports3.inspectOpts[keys4[i2]];
          }
        }
        exports3.enable(load3());
      }),
      ,
      ,
      ,
      /* 217 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var pathModule = __webpack_require__2(0);
        var isWindows15 = process.platform === "win32";
        var fs111 = __webpack_require__2(3);
        var DEBUG = process.env.NODE_DEBUG && /fs/.test(process.env.NODE_DEBUG);
        function rethrow() {
          var callback2;
          if (DEBUG) {
            var backtrace = new Error();
            callback2 = debugCallback;
          } else
            callback2 = missingCallback;
          return callback2;
          function debugCallback(err) {
            if (err) {
              backtrace.message = err.message;
              err = backtrace;
              missingCallback(err);
            }
          }
          function missingCallback(err) {
            if (err) {
              if (process.throwDeprecation)
                throw err;
              else if (!process.noDeprecation) {
                var msg = "fs: missing callback " + (err.stack || err.message);
                if (process.traceDeprecation)
                  console.trace(msg);
                else
                  console.error(msg);
              }
            }
          }
        }
        function maybeCallback(cb) {
          return typeof cb === "function" ? cb : rethrow();
        }
        var normalize11 = pathModule.normalize;
        if (isWindows15) {
          var nextPartRe = /(.*?)(?:[\/\\]+|$)/g;
        } else {
          var nextPartRe = /(.*?)(?:[\/]+|$)/g;
        }
        if (isWindows15) {
          var splitRootRe = /^(?:[a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/][^\\\/]+)?[\\\/]*/;
        } else {
          var splitRootRe = /^[\/]*/;
        }
        exports3.realpathSync = function realpathSync2(p, cache) {
          p = pathModule.resolve(p);
          if (cache && Object.prototype.hasOwnProperty.call(cache, p)) {
            return cache[p];
          }
          var original = p, seenLinks = {}, knownHard = {};
          var pos;
          var current;
          var base;
          var previous;
          start();
          function start() {
            var m = splitRootRe.exec(p);
            pos = m[0].length;
            current = m[0];
            base = m[0];
            previous = "";
            if (isWindows15 && !knownHard[base]) {
              fs111.lstatSync(base);
              knownHard[base] = true;
            }
          }
          while (pos < p.length) {
            nextPartRe.lastIndex = pos;
            var result2 = nextPartRe.exec(p);
            previous = current;
            current += result2[0];
            base = previous + result2[1];
            pos = nextPartRe.lastIndex;
            if (knownHard[base] || cache && cache[base] === base) {
              continue;
            }
            var resolvedLink;
            if (cache && Object.prototype.hasOwnProperty.call(cache, base)) {
              resolvedLink = cache[base];
            } else {
              var stat2 = fs111.lstatSync(base);
              if (!stat2.isSymbolicLink()) {
                knownHard[base] = true;
                if (cache) cache[base] = base;
                continue;
              }
              var linkTarget = null;
              if (!isWindows15) {
                var id = stat2.dev.toString(32) + ":" + stat2.ino.toString(32);
                if (seenLinks.hasOwnProperty(id)) {
                  linkTarget = seenLinks[id];
                }
              }
              if (linkTarget === null) {
                fs111.statSync(base);
                linkTarget = fs111.readlinkSync(base);
              }
              resolvedLink = pathModule.resolve(previous, linkTarget);
              if (cache) cache[base] = resolvedLink;
              if (!isWindows15) seenLinks[id] = linkTarget;
            }
            p = pathModule.resolve(resolvedLink, p.slice(pos));
            start();
          }
          if (cache) cache[original] = p;
          return p;
        };
        exports3.realpath = function realpath3(p, cache, cb) {
          if (typeof cb !== "function") {
            cb = maybeCallback(cache);
            cache = null;
          }
          p = pathModule.resolve(p);
          if (cache && Object.prototype.hasOwnProperty.call(cache, p)) {
            return process.nextTick(cb.bind(null, null, cache[p]));
          }
          var original = p, seenLinks = {}, knownHard = {};
          var pos;
          var current;
          var base;
          var previous;
          start();
          function start() {
            var m = splitRootRe.exec(p);
            pos = m[0].length;
            current = m[0];
            base = m[0];
            previous = "";
            if (isWindows15 && !knownHard[base]) {
              fs111.lstat(base, function(err) {
                if (err) return cb(err);
                knownHard[base] = true;
                LOOP();
              });
            } else {
              process.nextTick(LOOP);
            }
          }
          function LOOP() {
            if (pos >= p.length) {
              if (cache) cache[original] = p;
              return cb(null, p);
            }
            nextPartRe.lastIndex = pos;
            var result2 = nextPartRe.exec(p);
            previous = current;
            current += result2[0];
            base = previous + result2[1];
            pos = nextPartRe.lastIndex;
            if (knownHard[base] || cache && cache[base] === base) {
              return process.nextTick(LOOP);
            }
            if (cache && Object.prototype.hasOwnProperty.call(cache, base)) {
              return gotResolvedLink(cache[base]);
            }
            return fs111.lstat(base, gotStat);
          }
          function gotStat(err, stat2) {
            if (err) return cb(err);
            if (!stat2.isSymbolicLink()) {
              knownHard[base] = true;
              if (cache) cache[base] = base;
              return process.nextTick(LOOP);
            }
            if (!isWindows15) {
              var id = stat2.dev.toString(32) + ":" + stat2.ino.toString(32);
              if (seenLinks.hasOwnProperty(id)) {
                return gotTarget(null, seenLinks[id], base);
              }
            }
            fs111.stat(base, function(err2) {
              if (err2) return cb(err2);
              fs111.readlink(base, function(err3, target2) {
                if (!isWindows15) seenLinks[id] = target2;
                gotTarget(err3, target2);
              });
            });
          }
          function gotTarget(err, target2, base2) {
            if (err) return cb(err);
            var resolvedLink = pathModule.resolve(previous, target2);
            if (cache) cache[base2] = resolvedLink;
            gotResolvedLink(resolvedLink);
          }
          function gotResolvedLink(resolvedLink) {
            p = pathModule.resolve(resolvedLink, p.slice(pos));
            start();
          }
        };
      }),
      /* 218 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        module3.exports = globSync;
        globSync.GlobSync = GlobSync;
        var fs111 = __webpack_require__2(3);
        var rp = __webpack_require__2(114);
        var minimatch = __webpack_require__2(60);
        var Minimatch = minimatch.Minimatch;
        var Glob = __webpack_require__2(75).Glob;
        var util56 = __webpack_require__2(2);
        var path218 = __webpack_require__2(0);
        var assert13 = __webpack_require__2(22);
        var isAbsolute3 = __webpack_require__2(76);
        var common3 = __webpack_require__2(115);
        var alphasort = common3.alphasort;
        var alphasorti = common3.alphasorti;
        var setopts = common3.setopts;
        var ownProp = common3.ownProp;
        var childrenIgnored = common3.childrenIgnored;
        var isIgnored = common3.isIgnored;
        function globSync(pattern, options) {
          if (typeof options === "function" || arguments.length === 3)
            throw new TypeError("callback provided to sync glob\nSee: https://github.com/isaacs/node-glob/issues/167");
          return new GlobSync(pattern, options).found;
        }
        function GlobSync(pattern, options) {
          if (!pattern)
            throw new Error("must provide pattern");
          if (typeof options === "function" || arguments.length === 3)
            throw new TypeError("callback provided to sync glob\nSee: https://github.com/isaacs/node-glob/issues/167");
          if (!(this instanceof GlobSync))
            return new GlobSync(pattern, options);
          setopts(this, pattern, options);
          if (this.noprocess)
            return this;
          var n2 = this.minimatch.set.length;
          this.matches = new Array(n2);
          for (var i2 = 0; i2 < n2; i2++) {
            this._process(this.minimatch.set[i2], i2, false);
          }
          this._finish();
        }
        GlobSync.prototype._finish = function() {
          assert13(this instanceof GlobSync);
          if (this.realpath) {
            var self2 = this;
            this.matches.forEach(function(matchset, index) {
              var set2 = self2.matches[index] = /* @__PURE__ */ Object.create(null);
              for (var p in matchset) {
                try {
                  p = self2._makeAbs(p);
                  var real = rp.realpathSync(p, self2.realpathCache);
                  set2[real] = true;
                } catch (er) {
                  if (er.syscall === "stat")
                    set2[self2._makeAbs(p)] = true;
                  else
                    throw er;
                }
              }
            });
          }
          common3.finish(this);
        };
        GlobSync.prototype._process = function(pattern, index, inGlobStar) {
          assert13(this instanceof GlobSync);
          var n2 = 0;
          while (typeof pattern[n2] === "string") {
            n2++;
          }
          var prefix;
          switch (n2) {
            // if not, then this is rather simple
            case pattern.length:
              this._processSimple(pattern.join("/"), index);
              return;
            case 0:
              prefix = null;
              break;
            default:
              prefix = pattern.slice(0, n2).join("/");
              break;
          }
          var remain = pattern.slice(n2);
          var read2;
          if (prefix === null)
            read2 = ".";
          else if (isAbsolute3(prefix) || isAbsolute3(pattern.join("/"))) {
            if (!prefix || !isAbsolute3(prefix))
              prefix = "/" + prefix;
            read2 = prefix;
          } else
            read2 = prefix;
          var abs = this._makeAbs(read2);
          if (childrenIgnored(this, read2))
            return;
          var isGlobStar = remain[0] === minimatch.GLOBSTAR;
          if (isGlobStar)
            this._processGlobStar(prefix, read2, abs, remain, index, inGlobStar);
          else
            this._processReaddir(prefix, read2, abs, remain, index, inGlobStar);
        };
        GlobSync.prototype._processReaddir = function(prefix, read2, abs, remain, index, inGlobStar) {
          var entries = this._readdir(abs, inGlobStar);
          if (!entries)
            return;
          var pn = remain[0];
          var negate = !!this.minimatch.negate;
          var rawGlob = pn._glob;
          var dotOk = this.dot || rawGlob.charAt(0) === ".";
          var matchedEntries = [];
          for (var i2 = 0; i2 < entries.length; i2++) {
            var e = entries[i2];
            if (e.charAt(0) !== "." || dotOk) {
              var m;
              if (negate && !prefix) {
                m = !e.match(pn);
              } else {
                m = e.match(pn);
              }
              if (m)
                matchedEntries.push(e);
            }
          }
          var len = matchedEntries.length;
          if (len === 0)
            return;
          if (remain.length === 1 && !this.mark && !this.stat) {
            if (!this.matches[index])
              this.matches[index] = /* @__PURE__ */ Object.create(null);
            for (var i2 = 0; i2 < len; i2++) {
              var e = matchedEntries[i2];
              if (prefix) {
                if (prefix.slice(-1) !== "/")
                  e = prefix + "/" + e;
                else
                  e = prefix + e;
              }
              if (e.charAt(0) === "/" && !this.nomount) {
                e = path218.join(this.root, e);
              }
              this._emitMatch(index, e);
            }
            return;
          }
          remain.shift();
          for (var i2 = 0; i2 < len; i2++) {
            var e = matchedEntries[i2];
            var newPattern;
            if (prefix)
              newPattern = [prefix, e];
            else
              newPattern = [e];
            this._process(newPattern.concat(remain), index, inGlobStar);
          }
        };
        GlobSync.prototype._emitMatch = function(index, e) {
          if (isIgnored(this, e))
            return;
          var abs = this._makeAbs(e);
          if (this.mark)
            e = this._mark(e);
          if (this.absolute) {
            e = abs;
          }
          if (this.matches[index][e])
            return;
          if (this.nodir) {
            var c3 = this.cache[abs];
            if (c3 === "DIR" || Array.isArray(c3))
              return;
          }
          this.matches[index][e] = true;
          if (this.stat)
            this._stat(e);
        };
        GlobSync.prototype._readdirInGlobStar = function(abs) {
          if (this.follow)
            return this._readdir(abs, false);
          var entries;
          var lstat;
          var stat2;
          try {
            lstat = fs111.lstatSync(abs);
          } catch (er) {
            if (er.code === "ENOENT") {
              return null;
            }
          }
          var isSym = lstat && lstat.isSymbolicLink();
          this.symlinks[abs] = isSym;
          if (!isSym && lstat && !lstat.isDirectory())
            this.cache[abs] = "FILE";
          else
            entries = this._readdir(abs, false);
          return entries;
        };
        GlobSync.prototype._readdir = function(abs, inGlobStar) {
          var entries;
          if (inGlobStar && !ownProp(this.symlinks, abs))
            return this._readdirInGlobStar(abs);
          if (ownProp(this.cache, abs)) {
            var c3 = this.cache[abs];
            if (!c3 || c3 === "FILE")
              return null;
            if (Array.isArray(c3))
              return c3;
          }
          try {
            return this._readdirEntries(abs, fs111.readdirSync(abs));
          } catch (er) {
            this._readdirError(abs, er);
            return null;
          }
        };
        GlobSync.prototype._readdirEntries = function(abs, entries) {
          if (!this.mark && !this.stat) {
            for (var i2 = 0; i2 < entries.length; i2++) {
              var e = entries[i2];
              if (abs === "/")
                e = abs + e;
              else
                e = abs + "/" + e;
              this.cache[e] = true;
            }
          }
          this.cache[abs] = entries;
          return entries;
        };
        GlobSync.prototype._readdirError = function(f, er) {
          switch (er.code) {
            case "ENOTSUP":
            // https://github.com/isaacs/node-glob/issues/205
            case "ENOTDIR":
              var abs = this._makeAbs(f);
              this.cache[abs] = "FILE";
              if (abs === this.cwdAbs) {
                var error = new Error(er.code + " invalid cwd " + this.cwd);
                error.path = this.cwd;
                error.code = er.code;
                throw error;
              }
              break;
            case "ENOENT":
            // not terribly unusual
            case "ELOOP":
            case "ENAMETOOLONG":
            case "UNKNOWN":
              this.cache[this._makeAbs(f)] = false;
              break;
            default:
              this.cache[this._makeAbs(f)] = false;
              if (this.strict)
                throw er;
              if (!this.silent)
                console.error("glob error", er);
              break;
          }
        };
        GlobSync.prototype._processGlobStar = function(prefix, read2, abs, remain, index, inGlobStar) {
          var entries = this._readdir(abs, inGlobStar);
          if (!entries)
            return;
          var remainWithoutGlobStar = remain.slice(1);
          var gspref = prefix ? [prefix] : [];
          var noGlobStar = gspref.concat(remainWithoutGlobStar);
          this._process(noGlobStar, index, false);
          var len = entries.length;
          var isSym = this.symlinks[abs];
          if (isSym && inGlobStar)
            return;
          for (var i2 = 0; i2 < len; i2++) {
            var e = entries[i2];
            if (e.charAt(0) === "." && !this.dot)
              continue;
            var instead = gspref.concat(entries[i2], remainWithoutGlobStar);
            this._process(instead, index, true);
            var below = gspref.concat(entries[i2], remain);
            this._process(below, index, true);
          }
        };
        GlobSync.prototype._processSimple = function(prefix, index) {
          var exists = this._stat(prefix);
          if (!this.matches[index])
            this.matches[index] = /* @__PURE__ */ Object.create(null);
          if (!exists)
            return;
          if (prefix && isAbsolute3(prefix) && !this.nomount) {
            var trail = /[\/\\]$/.test(prefix);
            if (prefix.charAt(0) === "/") {
              prefix = path218.join(this.root, prefix);
            } else {
              prefix = path218.resolve(this.root, prefix);
              if (trail)
                prefix += "/";
            }
          }
          if (process.platform === "win32")
            prefix = prefix.replace(/\\/g, "/");
          this._emitMatch(index, prefix);
        };
        GlobSync.prototype._stat = function(f) {
          var abs = this._makeAbs(f);
          var needDir = f.slice(-1) === "/";
          if (f.length > this.maxLength)
            return false;
          if (!this.stat && ownProp(this.cache, abs)) {
            var c3 = this.cache[abs];
            if (Array.isArray(c3))
              c3 = "DIR";
            if (!needDir || c3 === "DIR")
              return c3;
            if (needDir && c3 === "FILE")
              return false;
          }
          var exists;
          var stat2 = this.statCache[abs];
          if (!stat2) {
            var lstat;
            try {
              lstat = fs111.lstatSync(abs);
            } catch (er) {
              if (er && (er.code === "ENOENT" || er.code === "ENOTDIR")) {
                this.statCache[abs] = false;
                return false;
              }
            }
            if (lstat && lstat.isSymbolicLink()) {
              try {
                stat2 = fs111.statSync(abs);
              } catch (er) {
                stat2 = lstat;
              }
            } else {
              stat2 = lstat;
            }
          }
          this.statCache[abs] = stat2;
          var c3 = true;
          if (stat2)
            c3 = stat2.isDirectory() ? "DIR" : "FILE";
          this.cache[abs] = this.cache[abs] || c3;
          if (needDir && c3 === "FILE")
            return false;
          return c3;
        };
        GlobSync.prototype._mark = function(p) {
          return common3.mark(this, p);
        };
        GlobSync.prototype._makeAbs = function(f) {
          return common3.makeAbs(this, f);
        };
      }),
      ,
      ,
      /* 221 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        module3.exports = function(flag, argv2) {
          argv2 = argv2 || process.argv;
          var terminatorPos = argv2.indexOf("--");
          var prefix = /^--/.test(flag) ? "" : "--";
          var pos = argv2.indexOf(prefix + flag);
          return pos !== -1 && (terminatorPos !== -1 ? pos < terminatorPos : true);
        };
      }),
      ,
      /* 223 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        var wrappy = __webpack_require__2(123);
        var reqs = /* @__PURE__ */ Object.create(null);
        var once11 = __webpack_require__2(61);
        module3.exports = wrappy(inflight);
        function inflight(key, cb) {
          if (reqs[key]) {
            reqs[key].push(cb);
            return null;
          } else {
            reqs[key] = [cb];
            return makeres(key);
          }
        }
        function makeres(key) {
          return once11(function RES() {
            var cbs = reqs[key];
            var len = cbs.length;
            var args = slice3(arguments);
            try {
              for (var i2 = 0; i2 < len; i2++) {
                cbs[i2].apply(null, args);
              }
            } finally {
              if (cbs.length > len) {
                cbs.splice(0, len);
                process.nextTick(function() {
                  RES.apply(null, args);
                });
              } else {
                delete reqs[key];
              }
            }
          });
        }
        function slice3(args) {
          var length = args.length;
          var array = [];
          for (var i2 = 0; i2 < length; i2++) array[i2] = args[i2];
          return array;
        }
      }),
      /* 224 */
      /***/
      (function(module3, exports3) {
        if (typeof Object.create === "function") {
          module3.exports = function inherits(ctor, superCtor) {
            ctor.super_ = superCtor;
            ctor.prototype = Object.create(superCtor.prototype, {
              constructor: {
                value: ctor,
                enumerable: false,
                writable: true,
                configurable: true
              }
            });
          };
        } else {
          module3.exports = function inherits(ctor, superCtor) {
            ctor.super_ = superCtor;
            var TempCtor = function() {
            };
            TempCtor.prototype = superCtor.prototype;
            ctor.prototype = new TempCtor();
            ctor.prototype.constructor = ctor;
          };
        }
      }),
      ,
      ,
      /* 227 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        module3.exports = typeof __webpack_require__2 !== "undefined";
      }),
      ,
      /* 229 */
      /***/
      (function(module3, exports3) {
        var s = 1e3;
        var m = s * 60;
        var h2 = m * 60;
        var d = h2 * 24;
        var y = d * 365.25;
        module3.exports = function(val, options) {
          options = options || {};
          var type4 = typeof val;
          if (type4 === "string" && val.length > 0) {
            return parse7(val);
          } else if (type4 === "number" && isNaN(val) === false) {
            return options.long ? fmtLong(val) : fmtShort(val);
          }
          throw new Error(
            "val is not a non-empty string or a valid number. val=" + JSON.stringify(val)
          );
        };
        function parse7(str2) {
          str2 = String(str2);
          if (str2.length > 100) {
            return;
          }
          var match = /^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(
            str2
          );
          if (!match) {
            return;
          }
          var n2 = parseFloat(match[1]);
          var type4 = (match[2] || "ms").toLowerCase();
          switch (type4) {
            case "years":
            case "year":
            case "yrs":
            case "yr":
            case "y":
              return n2 * y;
            case "days":
            case "day":
            case "d":
              return n2 * d;
            case "hours":
            case "hour":
            case "hrs":
            case "hr":
            case "h":
              return n2 * h2;
            case "minutes":
            case "minute":
            case "mins":
            case "min":
            case "m":
              return n2 * m;
            case "seconds":
            case "second":
            case "secs":
            case "sec":
            case "s":
              return n2 * s;
            case "milliseconds":
            case "millisecond":
            case "msecs":
            case "msec":
            case "ms":
              return n2;
            default:
              return void 0;
          }
        }
        function fmtShort(ms) {
          if (ms >= d) {
            return Math.round(ms / d) + "d";
          }
          if (ms >= h2) {
            return Math.round(ms / h2) + "h";
          }
          if (ms >= m) {
            return Math.round(ms / m) + "m";
          }
          if (ms >= s) {
            return Math.round(ms / s) + "s";
          }
          return ms + "ms";
        }
        function fmtLong(ms) {
          return plural2(ms, d, "day") || plural2(ms, h2, "hour") || plural2(ms, m, "minute") || plural2(ms, s, "second") || ms + " ms";
        }
        function plural2(ms, n2, name) {
          if (ms < n2) {
            return;
          }
          if (ms < n2 * 1.5) {
            return Math.floor(ms / n2) + " " + name;
          }
          return Math.ceil(ms / n2) + " " + name + "s";
        }
      }),
      ,
      ,
      ,
      /* 233 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        module3.exports = rimraf2;
        rimraf2.sync = rimrafSync2;
        var assert13 = __webpack_require__2(22);
        var path218 = __webpack_require__2(0);
        var fs111 = __webpack_require__2(3);
        var glob2 = __webpack_require__2(75);
        var _0666 = parseInt("666", 8);
        var defaultGlobOpts = {
          nosort: true,
          silent: true
        };
        var timeout = 0;
        var isWindows15 = process.platform === "win32";
        function defaults4(options) {
          var methods = [
            "unlink",
            "chmod",
            "stat",
            "lstat",
            "rmdir",
            "readdir"
          ];
          methods.forEach(function(m) {
            options[m] = options[m] || fs111[m];
            m = m + "Sync";
            options[m] = options[m] || fs111[m];
          });
          options.maxBusyTries = options.maxBusyTries || 3;
          options.emfileWait = options.emfileWait || 1e3;
          if (options.glob === false) {
            options.disableGlob = true;
          }
          options.disableGlob = options.disableGlob || false;
          options.glob = options.glob || defaultGlobOpts;
        }
        function rimraf2(p, options, cb) {
          if (typeof options === "function") {
            cb = options;
            options = {};
          }
          assert13(p, "rimraf: missing path");
          assert13.equal(typeof p, "string", "rimraf: path should be a string");
          assert13.equal(typeof cb, "function", "rimraf: callback function required");
          assert13(options, "rimraf: invalid options argument provided");
          assert13.equal(typeof options, "object", "rimraf: options should be object");
          defaults4(options);
          var busyTries = 0;
          var errState = null;
          var n2 = 0;
          if (options.disableGlob || !glob2.hasMagic(p))
            return afterGlob(null, [p]);
          options.lstat(p, function(er, stat2) {
            if (!er)
              return afterGlob(null, [p]);
            glob2(p, options.glob, afterGlob);
          });
          function next2(er) {
            errState = errState || er;
            if (--n2 === 0)
              cb(errState);
          }
          function afterGlob(er, results) {
            if (er)
              return cb(er);
            n2 = results.length;
            if (n2 === 0)
              return cb();
            results.forEach(function(p2) {
              rimraf_(p2, options, function CB(er2) {
                if (er2) {
                  if ((er2.code === "EBUSY" || er2.code === "ENOTEMPTY" || er2.code === "EPERM") && busyTries < options.maxBusyTries) {
                    busyTries++;
                    var time = busyTries * 100;
                    return setTimeout(function() {
                      rimraf_(p2, options, CB);
                    }, time);
                  }
                  if (er2.code === "EMFILE" && timeout < options.emfileWait) {
                    return setTimeout(function() {
                      rimraf_(p2, options, CB);
                    }, timeout++);
                  }
                  if (er2.code === "ENOENT") er2 = null;
                }
                timeout = 0;
                next2(er2);
              });
            });
          }
        }
        function rimraf_(p, options, cb) {
          assert13(p);
          assert13(options);
          assert13(typeof cb === "function");
          options.lstat(p, function(er, st) {
            if (er && er.code === "ENOENT")
              return cb(null);
            if (er && er.code === "EPERM" && isWindows15)
              fixWinEPERM(p, options, er, cb);
            if (st && st.isDirectory())
              return rmdir(p, options, er, cb);
            options.unlink(p, function(er2) {
              if (er2) {
                if (er2.code === "ENOENT")
                  return cb(null);
                if (er2.code === "EPERM")
                  return isWindows15 ? fixWinEPERM(p, options, er2, cb) : rmdir(p, options, er2, cb);
                if (er2.code === "EISDIR")
                  return rmdir(p, options, er2, cb);
              }
              return cb(er2);
            });
          });
        }
        function fixWinEPERM(p, options, er, cb) {
          assert13(p);
          assert13(options);
          assert13(typeof cb === "function");
          if (er)
            assert13(er instanceof Error);
          options.chmod(p, _0666, function(er2) {
            if (er2)
              cb(er2.code === "ENOENT" ? null : er);
            else
              options.stat(p, function(er3, stats) {
                if (er3)
                  cb(er3.code === "ENOENT" ? null : er);
                else if (stats.isDirectory())
                  rmdir(p, options, er, cb);
                else
                  options.unlink(p, cb);
              });
          });
        }
        function fixWinEPERMSync(p, options, er) {
          assert13(p);
          assert13(options);
          if (er)
            assert13(er instanceof Error);
          try {
            options.chmodSync(p, _0666);
          } catch (er2) {
            if (er2.code === "ENOENT")
              return;
            else
              throw er;
          }
          try {
            var stats = options.statSync(p);
          } catch (er3) {
            if (er3.code === "ENOENT")
              return;
            else
              throw er;
          }
          if (stats.isDirectory())
            rmdirSync(p, options, er);
          else
            options.unlinkSync(p);
        }
        function rmdir(p, options, originalEr, cb) {
          assert13(p);
          assert13(options);
          if (originalEr)
            assert13(originalEr instanceof Error);
          assert13(typeof cb === "function");
          options.rmdir(p, function(er) {
            if (er && (er.code === "ENOTEMPTY" || er.code === "EEXIST" || er.code === "EPERM"))
              rmkids(p, options, cb);
            else if (er && er.code === "ENOTDIR")
              cb(originalEr);
            else
              cb(er);
          });
        }
        function rmkids(p, options, cb) {
          assert13(p);
          assert13(options);
          assert13(typeof cb === "function");
          options.readdir(p, function(er, files) {
            if (er)
              return cb(er);
            var n2 = files.length;
            if (n2 === 0)
              return options.rmdir(p, cb);
            var errState;
            files.forEach(function(f) {
              rimraf2(path218.join(p, f), options, function(er2) {
                if (errState)
                  return;
                if (er2)
                  return cb(errState = er2);
                if (--n2 === 0)
                  options.rmdir(p, cb);
              });
            });
          });
        }
        function rimrafSync2(p, options) {
          options = options || {};
          defaults4(options);
          assert13(p, "rimraf: missing path");
          assert13.equal(typeof p, "string", "rimraf: path should be a string");
          assert13(options, "rimraf: missing options");
          assert13.equal(typeof options, "object", "rimraf: options should be object");
          var results;
          if (options.disableGlob || !glob2.hasMagic(p)) {
            results = [p];
          } else {
            try {
              options.lstatSync(p);
              results = [p];
            } catch (er) {
              results = glob2.sync(p, options.glob);
            }
          }
          if (!results.length)
            return;
          for (var i2 = 0; i2 < results.length; i2++) {
            var p = results[i2];
            try {
              var st = options.lstatSync(p);
            } catch (er) {
              if (er.code === "ENOENT")
                return;
              if (er.code === "EPERM" && isWindows15)
                fixWinEPERMSync(p, options, er);
            }
            try {
              if (st && st.isDirectory())
                rmdirSync(p, options, null);
              else
                options.unlinkSync(p);
            } catch (er) {
              if (er.code === "ENOENT")
                return;
              if (er.code === "EPERM")
                return isWindows15 ? fixWinEPERMSync(p, options, er) : rmdirSync(p, options, er);
              if (er.code !== "EISDIR")
                throw er;
              rmdirSync(p, options, er);
            }
          }
        }
        function rmdirSync(p, options, originalEr) {
          assert13(p);
          assert13(options);
          if (originalEr)
            assert13(originalEr instanceof Error);
          try {
            options.rmdirSync(p);
          } catch (er) {
            if (er.code === "ENOENT")
              return;
            if (er.code === "ENOTDIR")
              throw originalEr;
            if (er.code === "ENOTEMPTY" || er.code === "EEXIST" || er.code === "EPERM")
              rmkidsSync(p, options);
          }
        }
        function rmkidsSync(p, options) {
          assert13(p);
          assert13(options);
          options.readdirSync(p).forEach(function(f) {
            rimrafSync2(path218.join(p, f), options);
          });
          var retries = isWindows15 ? 100 : 1;
          var i2 = 0;
          do {
            var threw = true;
            try {
              var ret2 = options.rmdirSync(p, options);
              threw = false;
              return ret2;
            } finally {
              if (++i2 < retries && threw)
                continue;
            }
          } while (true);
        }
      }),
      ,
      ,
      ,
      ,
      ,
      /* 239 */
      /***/
      (function(module3, exports3, __webpack_require__2) {
        "use strict";
        var hasFlag4 = __webpack_require__2(221);
        var support = function(level) {
          if (level === 0) {
            return false;
          }
          return {
            level,
            hasBasic: true,
            has256: level >= 2,
            has16m: level >= 3
          };
        };
        var supportLevel = (function() {
          if (hasFlag4("no-color") || hasFlag4("no-colors") || hasFlag4("color=false")) {
            return 0;
          }
          if (hasFlag4("color=16m") || hasFlag4("color=full") || hasFlag4("color=truecolor")) {
            return 3;
          }
          if (hasFlag4("color=256")) {
            return 2;
          }
          if (hasFlag4("color") || hasFlag4("colors") || hasFlag4("color=true") || hasFlag4("color=always")) {
            return 1;
          }
          if (process.stdout && !process.stdout.isTTY) {
            return 0;
          }
          if (process.platform === "win32") {
            return 1;
          }
          if ("CI" in process.env) {
            if ("TRAVIS" in process.env || process.env.CI === "Travis") {
              return 1;
            }
            return 0;
          }
          if ("TEAMCITY_VERSION" in process.env) {
            return process.env.TEAMCITY_VERSION.match(/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/) === null ? 0 : 1;
          }
          if (/^(screen|xterm)-256(?:color)?/.test(process.env.TERM)) {
            return 2;
          }
          if (/^screen|^xterm|^vt100|color|ansi|cygwin|linux/i.test(process.env.TERM)) {
            return 1;
          }
          if ("COLORTERM" in process.env) {
            return 1;
          }
          if (process.env.TERM === "dumb") {
            return 0;
          }
          return 0;
        })();
        if (supportLevel === 0 && "FORCE_COLOR" in process.env) {
          supportLevel = 1;
        }
        module3.exports = process && support(supportLevel);
      })
      /******/
    ]);
  }
});

// ../installing/commands/lib/import/yarnUtil.js
var BUILTIN_PLACEHOLDER, MULTIPLE_KEYS_REGEXP, keyNormalizer, yarnLockFileKeyNormalizer;
var init_yarnUtil = __esm({
  "../installing/commands/lib/import/yarnUtil.js"() {
    "use strict";
    BUILTIN_PLACEHOLDER = "builtin";
    MULTIPLE_KEYS_REGEXP = / *, */;
    keyNormalizer = (parseDescriptor, parseRange2) => (rawDescriptor) => {
      const descriptors2 = [rawDescriptor];
      const descriptor = parseDescriptor(rawDescriptor);
      const name = `${descriptor.scope ? "@" + descriptor.scope + "/" : ""}${descriptor.name}`;
      const range = parseRange2(descriptor.range);
      const protocol = range.protocol;
      switch (protocol) {
        case "npm:":
        case "file:":
          descriptors2.push(`${name}@${range.selector}`);
          descriptors2.push(`${name}@${protocol}${range.selector}`);
          break;
        case "git:":
        case "git+ssh:":
        case "git+http:":
        case "git+https:":
        case "github:":
          if (range.source) {
            descriptors2.push(`${name}@${protocol}${range.source}${range.selector ? "#" + range.selector : ""}`);
          } else {
            descriptors2.push(`${name}@${protocol}${range.selector}`);
          }
          break;
        case "patch:":
          if (range.source && range.selector.startsWith(BUILTIN_PLACEHOLDER)) {
            descriptors2.push(range.source);
          } else {
            descriptors2.push(`${name}@${protocol}${range.source}${range.selector ? "#" + range.selector : ""}`);
          }
          break;
        case null:
        case void 0:
          if (range.source) {
            descriptors2.push(`${name}@${range.source}#${range.selector}`);
          } else {
            descriptors2.push(`${name}@${range.selector}`);
          }
          break;
        case "http:":
        case "https:":
        case "link:":
        case "portal:":
        case "exec:":
        case "workspace:":
        case "virtual:":
        default:
          descriptors2.push(`${name}@${protocol}${range.selector}`);
          break;
      }
      return descriptors2;
    };
    yarnLockFileKeyNormalizer = (parseDescriptor, parseRange2) => (fullDescriptor) => {
      const allKeys = fullDescriptor.split(MULTIPLE_KEYS_REGEXP).map(keyNormalizer(parseDescriptor, parseRange2));
      return new Set(allKeys.flat(5));
    };
  }
});

// ../installing/commands/lib/import/index.js
var import_exports2 = {};
__export(import_exports2, {
  cliOptionsTypes: () => cliOptionsTypes7,
  commandNames: () => commandNames8,
  handler: () => handler8,
  help: () => help8,
  rcOptionsTypes: () => rcOptionsTypes8,
  recursiveByDefault: () => recursiveByDefault3
});
import fs83 from "node:fs";
import path152 from "node:path";
function cliOptionsTypes7() {
  return {};
}
function help8() {
  return renderHelp({
    description: `Generates ${WANTED_LOCKFILE} from an npm package-lock.json (or npm-shrinkwrap.json, yarn.lock) file.`,
    url: docsUrl("import"),
    usages: [
      "pnpm import"
    ]
  });
}
async function handler8(opts2, params) {
  await rimraf(path152.join(opts2.dir, WANTED_LOCKFILE));
  const versionsByPackageNames = {};
  let preferredVersions = {};
  if (fs83.existsSync(path152.join(opts2.dir, "yarn.lock"))) {
    const yarnPackageLockFile = await readYarnLockFile(opts2.dir);
    getAllVersionsFromYarnLockFile(yarnPackageLockFile, versionsByPackageNames);
  } else if (fs83.existsSync(path152.join(opts2.dir, "package-lock.json")) || fs83.existsSync(path152.join(opts2.dir, "npm-shrinkwrap.json"))) {
    const npmPackageLock = await readNpmLockfile(opts2.dir);
    if (npmPackageLock.lockfileVersion < 3) {
      getAllVersionsByPackageNamesPreV3(npmPackageLock, versionsByPackageNames);
    } else {
      getAllVersionsByPackageNames(npmPackageLock, versionsByPackageNames);
    }
  } else {
    throw new PnpmError("LOCKFILE_NOT_FOUND", "No lockfile found");
  }
  preferredVersions = getPreferredVersions(versionsByPackageNames);
  if (opts2.workspaceDir) {
    const allProjects = opts2.allProjects ?? await findWorkspaceProjects(opts2.workspaceDir, {
      ...opts2,
      patterns: opts2.workspacePackagePatterns
    });
    const selectedProjectsGraph = opts2.selectedProjectsGraph ?? selectProjectByDir2(allProjects, opts2.dir);
    if (selectedProjectsGraph != null) {
      const sequencedGraph = sequenceGraph(selectedProjectsGraph);
      if (!opts2.ignoreWorkspaceCycles && !sequencedGraph.safe) {
        const cyclicDependenciesInfo = sequencedGraph.cycles.length > 0 ? `: ${sequencedGraph.cycles.map((deps) => deps.join(", ")).join("; ")}` : "";
        if (opts2.disallowWorkspaceCycles) {
          throw new PnpmError("DISALLOW_WORKSPACE_CYCLES", `There are cyclic workspace dependencies${cyclicDependenciesInfo}`);
        }
        logger.warn({
          message: `There are cyclic workspace dependencies${cyclicDependenciesInfo}`,
          prefix: opts2.workspaceDir
        });
      }
      await recursive(
        allProjects,
        params,
        // @ts-expect-error
        {
          ...opts2,
          lockfileOnly: true,
          selectedProjectsGraph,
          preferredVersions,
          workspaceDir: opts2.workspaceDir
        },
        "import"
      );
    }
    return;
  }
  const store = await createStoreController(opts2);
  const manifest = await readProjectManifestOnly(opts2.dir);
  const installOpts = {
    ...opts2,
    lockfileOnly: true,
    preferredVersions,
    storeController: store.ctrl,
    storeDir: store.dir,
    resolutionVerifiers: store.resolutionVerifiers
  };
  await install(manifest, installOpts);
}
async function readYarnLockFile(dir) {
  try {
    const yarnLockFile = await lib_default.readFile(path152.join(dir, "yarn.lock"), "utf8");
    const yarnLockFileType = getYarnLockfileType(yarnLockFile);
    if (yarnLockFileType === YarnLockType.yarn) {
      const lockJsonFile = (0, import_lockfile62.parse)(yarnLockFile);
      if (lockJsonFile.type === "success") {
        return lockJsonFile.object;
      } else {
        throw new PnpmError("YARN_LOCKFILE_PARSE_FAILED", `Yarn.lock file was ${lockJsonFile.type}`);
      }
    } else if (yarnLockFileType === YarnLockType.yarn2) {
      const lockJsonFile = parseYarn2Lock(yarnLockFile);
      if (lockJsonFile.type === YarnLockType.yarn2) {
        return lockJsonFile.object;
      }
    }
  } catch (err) {
    if (err["code"] !== "ENOENT")
      throw err;
  }
  throw new PnpmError("YARN_LOCKFILE_NOT_FOUND", "No yarn.lock found");
}
function parseYarn2Lock(lockFileContents) {
  const parseYarnLock = (0, import_parsers.parseSyml)(lockFileContents);
  delete parseYarnLock.__metadata;
  const dependencies = {};
  const { parseDescriptor, parseRange: parseRange2 } = structUtils;
  const keyNormalizer2 = yarnLockFileKeyNormalizer(parseDescriptor, parseRange2);
  for (const fullDescriptor in parseYarnLock) {
    const versionData = parseYarnLock[fullDescriptor];
    for (const descriptor of keyNormalizer2(fullDescriptor)) {
      dependencies[descriptor] = versionData;
    }
  }
  return {
    object: dependencies,
    type: YarnLockType.yarn2
  };
}
async function readNpmLockfile(dir) {
  try {
    return await loadJsonFile(path152.join(dir, "package-lock.json"));
  } catch (err) {
    if (err["code"] !== "ENOENT")
      throw err;
  }
  try {
    return await loadJsonFile(path152.join(dir, "npm-shrinkwrap.json"));
  } catch (err) {
    if (err["code"] !== "ENOENT")
      throw err;
  }
  throw new PnpmError("NPM_LOCKFILE_NOT_FOUND", "No package-lock.json or npm-shrinkwrap.json found");
}
function getPreferredVersions(versionsByPackageNames) {
  const preferredVersions = map_default((versions) => Object.fromEntries(Array.from(versions).map((version2) => [version2, "version"])), versionsByPackageNames);
  return preferredVersions;
}
function getAllVersionsByPackageNamesPreV3(npmPackageLock, versionsByPackageNames) {
  if (npmPackageLock.dependencies == null)
    return;
  for (const [packageName, { version: version2 }] of Object.entries(npmPackageLock.dependencies)) {
    if (!versionsByPackageNames[packageName]) {
      versionsByPackageNames[packageName] = /* @__PURE__ */ new Set();
    }
    versionsByPackageNames[packageName].add(version2);
  }
  for (const dep of Object.values(npmPackageLock.dependencies)) {
    getAllVersionsByPackageNamesPreV3(dep, versionsByPackageNames);
  }
}
function getAllVersionsByPackageNames(pkg, versionsByPackageNames) {
  if (pkg.dependencies) {
    extractDependencies(versionsByPackageNames, pkg.dependencies);
  }
  if ("packages" in pkg && pkg.packages) {
    extractDependencies(versionsByPackageNames, pkg.packages);
  }
}
function extractDependencies(versionsByPackageNames, dependencies) {
  for (let [pkgName, pkgDetails] of Object.entries(dependencies)) {
    if (pkgName.includes("node_modules")) {
      pkgName = pkgName.substring(pkgName.lastIndexOf("node_modules/") + 13);
    }
    if (!versionsByPackageNames[pkgName]) {
      versionsByPackageNames[pkgName] = /* @__PURE__ */ new Set();
    }
    if (pkgDetails.version) {
      versionsByPackageNames[pkgName].add(pkgDetails.version);
    }
    if (pkgDetails.packages) {
      extractDependencies(versionsByPackageNames, pkgDetails.packages);
    }
    if (pkgDetails.dependencies) {
      for (const [pkgName1, version2] of Object.entries(pkgDetails.dependencies)) {
        if (!versionsByPackageNames[pkgName1]) {
          versionsByPackageNames[pkgName1] = /* @__PURE__ */ new Set();
        }
        versionsByPackageNames[pkgName1].add(version2);
      }
    }
  }
}
function getAllVersionsFromYarnLockFile(yarnPackageLock, versionsByPackageNames) {
  for (const [packageName, { version: version2 }] of Object.entries(yarnPackageLock)) {
    const pkgName = packageName.substring(0, packageName.lastIndexOf("@"));
    if (!versionsByPackageNames[pkgName]) {
      versionsByPackageNames[pkgName] = /* @__PURE__ */ new Set();
    }
    versionsByPackageNames[pkgName].add(version2);
  }
}
function selectProjectByDir2(projects, searchedDir) {
  const project = projects.find(({ rootDir }) => path152.relative(rootDir, searchedDir) === "");
  if (project == null)
    return void 0;
  return { [searchedDir]: { dependencies: [], package: project } };
}
function getYarnLockfileType(lockFileContents) {
  return lockFileContents.includes("__metadata") ? YarnLockType.yarn2 : YarnLockType.yarn;
}
var structUtils, import_lockfile62, import_parsers, YarnLockType, rcOptionsTypes8, commandNames8, recursiveByDefault3;
var init_import = __esm({
  "../installing/commands/lib/import/index.js"() {
    "use strict";
    init_lib29();
    init_lib();
    init_lib2();
    init_lib12();
    init_lib124();
    init_lib3();
    init_lib90();
    init_lib13();
    init_lib30();
    init_lib93();
    structUtils = __toESM(require_structUtils(), 1);
    import_lockfile62 = __toESM(require_lockfile(), 1);
    import_parsers = __toESM(require_lib13(), 1);
    init_rimraf();
    init_load_json_file();
    init_es();
    init_lib63();
    init_recursive2();
    init_yarnUtil();
    YarnLockType = {
      yarn: "yarn",
      yarn2: "yarn2"
    };
    rcOptionsTypes8 = cliOptionsTypes7;
    commandNames8 = ["import"];
    recursiveByDefault3 = true;
  }
});

// ../installing/commands/lib/createProjectManifestWriter.js
import path153 from "node:path";
import util41 from "node:util";
async function createProjectManifestWriter(projectDir) {
  try {
    const { writeProjectManifest: writeProjectManifest2 } = await readProjectManifest(projectDir);
    return writeProjectManifest2;
  } catch (err) {
    if (util41.types.isNativeError(err) && "code" in err && err.code === "ERR_PNPM_NO_IMPORTER_MANIFEST_FOUND") {
      return writeProjectManifest.bind(null, path153.join(projectDir, "package.json"));
    }
    throw err;
  }
}
var init_createProjectManifestWriter = __esm({
  "../installing/commands/lib/createProjectManifestWriter.js"() {
    "use strict";
    init_lib13();
    init_lib11();
  }
});

// ../installing/commands/lib/link.js
var link_exports = {};
__export(link_exports, {
  cliOptionsTypes: () => cliOptionsTypes8,
  commandNames: () => commandNames9,
  handler: () => handler9,
  help: () => help9,
  rcOptionsTypes: () => rcOptionsTypes9
});
import path154 from "node:path";
function cliOptionsTypes8() {
  return pick_default([
    "global-dir",
    "global",
    "only",
    "package-import-method",
    "production",
    "registry",
    "reporter",
    "save-dev",
    "save-exact",
    "save-optional",
    "save-prefix",
    "unsafe-perm"
  ], types2);
}
function help9() {
  return renderHelp({
    aliases: ["ln"],
    descriptionLists: [
      {
        title: "Options",
        list: UNIVERSAL_OPTIONS
      }
    ],
    url: docsUrl("link"),
    usages: [
      "pnpm link <dir>"
    ]
  });
}
async function checkPeerDeps(linkCwdDir, opts2) {
  const { manifest } = await tryReadProjectManifest2(linkCwdDir, opts2);
  if (manifest?.peerDependencies && Object.keys(manifest.peerDependencies).length > 0) {
    const packageName = manifest.name ?? path154.basename(linkCwdDir);
    const peerDeps = Object.entries(manifest.peerDependencies).map(([key, value]) => `  - ${key}@${String(value)}`).join(", ");
    logger.warn({
      message: `The package ${packageName}, which you have just pnpm linked, has the following peerDependencies specified in its package.json:

${peerDeps}

The linked in dependency will not resolve the peer dependencies from the target node_modules.
This might cause issues in your project. To resolve this, you may use the "file:" protocol to reference the local dependency.`,
      prefix: opts2.dir
    });
  }
}
async function handler9(opts2, params) {
  if (params == null || params.length === 0) {
    throw new PnpmError("LINK_BAD_PARAMS", "You must provide a parameter. Usage: pnpm link <dir>");
  }
  let workspacePackagesArr;
  let workspacePackages;
  if (opts2.workspaceDir) {
    workspacePackagesArr = await findWorkspaceProjects(opts2.workspaceDir, {
      ...opts2,
      patterns: opts2.workspacePackagePatterns
    });
    workspacePackages = arrayOfWorkspacePackagesToMap(workspacePackagesArr);
  } else {
    workspacePackages = /* @__PURE__ */ new Map();
  }
  const linkOpts = Object.assign(opts2, {
    targetDependenciesField: getSaveType(opts2),
    workspacePackages,
    binsDir: opts2.bin
  });
  const writeProjectManifest2 = await createProjectManifestWriter(opts2.rootProjectManifestDir);
  const [pkgPaths, pkgNames] = partition_default((inp) => isFilespec2.test(inp), params);
  if (pkgNames.length > 0) {
    throw new PnpmError("LINK_BAD_PARAMS", `Cannot link by package name. Use a relative or absolute path instead, e.g. "pnpm link ./${pkgNames[0]}"`);
  }
  const newManifest = opts2.rootProjectManifest ?? {};
  await Promise.all(pkgPaths.map(async (dir) => {
    await addLinkToManifest(opts2, newManifest, dir, opts2.rootProjectManifestDir);
    await checkPeerDeps(dir, opts2);
  }));
  await writeProjectManifest2(newManifest);
  await handler5({
    ...linkOpts,
    _calledFromLink: true,
    frozenLockfileIfExists: false,
    rootProjectManifest: newManifest
  });
}
async function addLinkToManifest(opts2, manifest, linkedDepDir, manifestDir) {
  const { manifest: linkedManifest } = await tryReadProjectManifest2(linkedDepDir, opts2);
  const linkedPkgName = linkedManifest?.name ?? path154.basename(linkedDepDir);
  const linkedPkgSpec = `link:${(0, import_normalize_path11.default)(path154.relative(manifestDir, linkedDepDir))}`;
  opts2.overrides = {
    ...opts2.overrides,
    [linkedPkgName]: linkedPkgSpec
  };
  await writeSettings({
    ...opts2,
    workspaceDir: opts2.workspaceDir ?? opts2.rootProjectManifestDir,
    updatedSettings: {
      overrides: opts2.overrides
    }
  });
  if (DEPENDENCIES_FIELDS.every((depField) => manifest[depField]?.[linkedPkgName] == null)) {
    manifest.dependencies = manifest.dependencies ?? {};
    manifest.dependencies[linkedPkgName] = linkedPkgSpec;
  }
}
var import_normalize_path11, isWindows11, isFilespec2, rcOptionsTypes9, commandNames9;
var init_link2 = __esm({
  "../installing/commands/lib/link.js"() {
    "use strict";
    init_lib92();
    init_lib29();
    init_lib61();
    init_lib100();
    init_lib2();
    init_lib87();
    init_lib3();
    init_lib8();
    init_lib30();
    import_normalize_path11 = __toESM(require_normalize_path(), 1);
    init_es();
    init_lib63();
    init_createProjectManifestWriter();
    init_getSaveType();
    init_install2();
    isWindows11 = process.platform === "win32" || global["FAKE_WINDOWS"];
    isFilespec2 = isWindows11 ? /^(?:[./\\]|~\/|[a-z]:)/i : /^(?:[./]|~\/|[a-z]:)/i;
    rcOptionsTypes9 = cliOptionsTypes8;
    commandNames9 = ["link", "ln"];
  }
});

// ../installing/commands/lib/prune.js
var prune_exports = {};
__export(prune_exports, {
  cliOptionsTypes: () => cliOptionsTypes9,
  commandNames: () => commandNames10,
  handler: () => handler10,
  help: () => help10,
  rcOptionsTypes: () => rcOptionsTypes10
});
function cliOptionsTypes9() {
  return pick_default([
    "dev",
    "optional",
    "production",
    "ignore-scripts"
  ], types2);
}
function help10() {
  return renderHelp({
    description: "Removes extraneous packages",
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: "Remove the packages specified in `devDependencies`",
            name: "--prod"
          },
          {
            description: "Remove the packages specified in `optionalDependencies`",
            name: "--no-optional"
          },
          OPTIONS.ignoreScripts,
          ...UNIVERSAL_OPTIONS
        ]
      }
    ],
    url: docsUrl("prune"),
    usages: ["pnpm prune [--prod]"]
  });
}
async function handler10(opts2) {
  return handler5({
    ...opts2,
    modulesCacheMaxAge: 0,
    pruneDirectDependencies: true,
    pruneStore: true
  });
}
var rcOptionsTypes10, commandNames10;
var init_prune3 = __esm({
  "../installing/commands/lib/prune.js"() {
    "use strict";
    init_lib92();
    init_lib29();
    init_lib61();
    init_es();
    init_lib63();
    init_install2();
    rcOptionsTypes10 = cliOptionsTypes9;
    commandNames10 = ["prune"];
  }
});

// ../installing/commands/lib/remove.js
var remove_exports = {};
__export(remove_exports, {
  cliOptionsTypes: () => cliOptionsTypes10,
  commandNames: () => commandNames11,
  completion: () => completion,
  handler: () => handler11,
  help: () => help11,
  rcOptionsTypes: () => rcOptionsTypes11
});
function rcOptionsTypes11() {
  return pick_default([
    "cache-dir",
    "global-dir",
    "global-pnpmfile",
    "global",
    "lockfile-dir",
    "lockfile-only",
    "lockfile",
    "node-linker",
    "package-import-method",
    "pnpmfile",
    "reporter",
    "save-dev",
    "save-optional",
    "save-prod",
    "shared-workspace-lockfile",
    "store-dir",
    "strict-peer-dependencies",
    "virtual-store-dir"
  ], types2);
}
function help11() {
  return renderHelp({
    aliases: ["rm", "uninstall", "un"],
    description: "Removes packages from `node_modules` and from the project's `package.json`.",
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: 'Remove from every package found in subdirectories or from every workspace package, when executed inside a workspace. For options that may be used with `-r`, see "pnpm help recursive"',
            name: "--recursive",
            shortAlias: "-r"
          },
          {
            description: 'Remove the dependency only from "devDependencies"',
            name: "--save-dev",
            shortAlias: "-D"
          },
          {
            description: 'Remove the dependency only from "optionalDependencies"',
            name: "--save-optional",
            shortAlias: "-O"
          },
          {
            description: 'Remove the dependency only from "dependencies"',
            name: "--save-prod",
            shortAlias: "-P"
          },
          OPTIONS.globalDir,
          ...UNIVERSAL_OPTIONS
        ]
      },
      FILTERING
    ],
    url: docsUrl("remove"),
    usages: ["pnpm remove <pkg>[@<version>]..."]
  });
}
async function handler11(opts2, params) {
  if (params.length === 0)
    throw new PnpmError("MUST_REMOVE_SOMETHING", "At least one dependency name should be specified for removal");
  if (opts2.global) {
    if (!opts2.bin) {
      throw new PnpmError("NO_GLOBAL_BIN_DIR", "Unable to find the global bin directory", {
        hint: 'Run "pnpm setup" to create it automatically, or set the global-bin-dir setting, or the PNPM_HOME env variable. The global bin directory should be in the PATH.'
      });
    }
    return handleGlobalRemove(opts2, params);
  }
  const include = {
    dependencies: opts2.production !== false,
    devDependencies: opts2.dev !== false,
    optionalDependencies: opts2.optional !== false
  };
  const store = await createStoreController(opts2);
  if (opts2.recursive && opts2.allProjects != null && opts2.selectedProjectsGraph != null && opts2.workspaceDir) {
    await recursive(opts2.allProjects, params, {
      ...opts2,
      allProjectsGraph: opts2.allProjectsGraph,
      include,
      selectedProjectsGraph: opts2.selectedProjectsGraph,
      storeControllerAndDir: store,
      workspaceDir: opts2.workspaceDir
    }, "remove");
    return;
  }
  const removeOpts = Object.assign(opts2, {
    linkWorkspacePackagesDepth: opts2.linkWorkspacePackages === "deep" ? Infinity : opts2.linkWorkspacePackages ? 0 : -1,
    storeController: store.ctrl,
    storeDir: store.dir,
    resolutionVerifiers: store.resolutionVerifiers,
    include
  });
  const allProjects = opts2.allProjects ?? (opts2.workspaceDir ? await findWorkspaceProjects(opts2.workspaceDir, { ...opts2, patterns: opts2.workspacePackagePatterns }) : void 0);
  removeOpts["workspacePackages"] = allProjects ? arrayOfWorkspacePackagesToMap(allProjects) : void 0;
  const targetDependenciesField = getSaveType(opts2);
  const { manifest: currentManifest, writeProjectManifest: writeProjectManifest2 } = await readProjectManifest2(opts2.dir, opts2);
  const availableDependencies = Object.keys(targetDependenciesField === void 0 ? getAllDependenciesFromManifest2(currentManifest) : currentManifest[targetDependenciesField] ?? {});
  const nonMatchedDependencies = without_default(availableDependencies, params);
  if (nonMatchedDependencies.length !== 0) {
    throw new RemoveMissingDepsError({
      availableDependencies,
      nonMatchedDependencies,
      targetDependenciesField
    });
  }
  const mutationResult = await mutateModulesInSingleProject({
    binsDir: opts2.bin,
    dependencyNames: params,
    manifest: currentManifest,
    mutation: "uninstallSome",
    rootDir: opts2.dir,
    targetDependenciesField
  }, removeOpts);
  await writeProjectManifest2(mutationResult.updatedProject.manifest);
  const updatedProjects = [];
  if (allProjects != null) {
    for (const project of allProjects) {
      if (project.rootDir === mutationResult.updatedProject.rootDir) {
        updatedProjects.push({
          ...project,
          manifest: mutationResult.updatedProject.manifest
        });
      } else {
        updatedProjects.push(project);
      }
    }
  }
  await updateWorkspaceManifest(opts2.workspaceDir ?? opts2.dir, {
    cleanupUnusedCatalogs: opts2.cleanupUnusedCatalogs,
    allProjects: updatedProjects
  });
}
var RemoveMissingDepsError, cliOptionsTypes10, commandNames11, completion;
var init_remove2 = __esm({
  "../installing/commands/lib/remove.js"() {
    "use strict";
    init_lib92();
    init_lib29();
    init_lib61();
    init_lib2();
    init_lib129();
    init_lib87();
    init_lib124();
    init_lib9();
    init_lib90();
    init_lib30();
    init_lib99();
    init_es();
    init_lib63();
    init_getSaveType();
    init_recursive2();
    RemoveMissingDepsError = class extends PnpmError {
      constructor(opts2) {
        let message = "Cannot remove ";
        message += `${opts2.nonMatchedDependencies.map((dep) => `'${dep}'`).join(", ")}: `;
        if (opts2.availableDependencies.length > 0) {
          message += `no such ${opts2.nonMatchedDependencies.length > 1 ? "dependencies" : "dependency"} `;
          message += `found${opts2.targetDependenciesField ? ` in '${opts2.targetDependenciesField}'` : ""}`;
          const hint = `Available dependencies: ${opts2.availableDependencies.join(", ")}`;
          super("CANNOT_REMOVE_MISSING_DEPS", message, { hint });
          return;
        }
        message += opts2.targetDependenciesField ? `project has no '${opts2.targetDependenciesField}'` : "project has no dependencies of any kind";
        super("CANNOT_REMOVE_MISSING_DEPS", message);
      }
    };
    cliOptionsTypes10 = () => ({
      ...rcOptionsTypes11(),
      ...pick_default(["force"], types2),
      recursive: Boolean
    });
    commandNames11 = ["remove", "uninstall", "rm", "un", "uni"];
    completion = async (cliOpts) => {
      return readDepNameCompletions(cliOpts.dir);
    };
  }
});

// ../installing/commands/lib/unlink.js
var unlink_exports = {};
__export(unlink_exports, {
  cliOptionsTypes: () => cliOptionsTypes11,
  commandNames: () => commandNames12,
  handler: () => handler12,
  help: () => help12,
  rcOptionsTypes: () => rcOptionsTypes12
});
function help12() {
  return renderHelp({
    aliases: ["dislink"],
    description: "Removes the link created by `pnpm link` and reinstalls package if it is saved in `package.json`",
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: 'Unlink in every package found in subdirectories or in every workspace package, when executed inside a workspace. For options that may be used with `-r`, see "pnpm help recursive"',
            name: "--recursive",
            shortAlias: "-r"
          },
          ...UNIVERSAL_OPTIONS
        ]
      }
    ],
    url: docsUrl("unlink"),
    usages: [
      "pnpm unlink (in package dir)",
      "pnpm unlink <pkg>..."
    ]
  });
}
async function handler12(opts2, params) {
  if (!opts2.overrides)
    return "Nothing to unlink";
  if (!params || params.length === 0) {
    for (const selector in opts2.overrides) {
      if (opts2.overrides[selector].startsWith("link:")) {
        delete opts2.overrides[selector];
      }
    }
  } else {
    for (const selector in opts2.overrides) {
      if (opts2.overrides[selector].startsWith("link:") && params.includes(selector)) {
        delete opts2.overrides[selector];
      }
    }
  }
  await writeSettings({
    workspaceDir: opts2.workspaceDir ?? opts2.rootProjectManifestDir,
    rootProjectManifestDir: opts2.rootProjectManifestDir,
    updatedSettings: {
      overrides: opts2.overrides
    }
  });
  await handler5(opts2);
  return void 0;
}
var cliOptionsTypes11, rcOptionsTypes12, commandNames12;
var init_unlink = __esm({
  "../installing/commands/lib/unlink.js"() {
    "use strict";
    init_lib92();
    init_lib29();
    init_lib100();
    init_lib63();
    init_install2();
    cliOptionsTypes11 = cliOptionsTypes5;
    rcOptionsTypes12 = rcOptionsTypes5;
    commandNames12 = ["unlink", "dislink"];
  }
});

// ../deps/inspection/outdated/lib/createManifestGetter.js
var init_createManifestGetter = __esm({
  "../deps/inspection/outdated/lib/createManifestGetter.js"() {
    "use strict";
    init_lib23();
    init_lib57();
  }
});

// ../deps/inspection/outdated/lib/outdated.js
async function outdated(opts2) {
  if (packageHasNoDeps(opts2.manifest))
    return [];
  if (opts2.wantedLockfile == null) {
    throw new PnpmError("OUTDATED_NO_LOCKFILE", `No lockfile in directory "${opts2.lockfileDir}". Run \`pnpm install\` to generate one.`);
  }
  async function getOverriddenManifest() {
    const overrides = opts2.currentLockfile?.overrides ?? opts2.wantedLockfile?.overrides;
    if (overrides) {
      const readPackageHook = createReadPackageHook({
        lockfileDir: opts2.lockfileDir,
        overrides: parseOverrides(overrides, opts2.catalogs ?? {})
      });
      const manifest = await readPackageHook?.(opts2.manifest, opts2.lockfileDir);
      if (manifest)
        return manifest;
    }
    return opts2.manifest;
  }
  const allDeps = getAllDependenciesFromManifest2(await getOverriddenManifest());
  const importerId = getLockfileImporterId(opts2.lockfileDir, opts2.prefix);
  const currentLockfile = opts2.currentLockfile ?? { lockfileVersion: LOCKFILE_VERSION, importers: { [importerId]: { specifiers: {} } } };
  const outdated2 = [];
  const ignoreDependenciesMatcher = opts2.ignoreDependencies?.length ? createMatcher(opts2.ignoreDependencies) : void 0;
  const resolveOpts = {
    lockfileDir: opts2.lockfileDir,
    preferredVersions: {},
    projectDir: opts2.prefix,
    publishedBy: opts2.publishedBy,
    publishedByExclude: opts2.publishedByExclude
  };
  await Promise.all(DEPENDENCIES_FIELDS.map(async (depType) => {
    if (opts2.include?.[depType] === false || opts2.wantedLockfile.importers[importerId][depType] == null)
      return;
    let pkgs = Object.keys(opts2.wantedLockfile.importers[importerId][depType]);
    if (opts2.match != null) {
      pkgs = pkgs.filter((pkgName) => opts2.match(pkgName));
    }
    const _replaceCatalogProtocolIfNecessary = replaceCatalogProtocolIfNecessary.bind(null, opts2.catalogs ?? {});
    await Promise.all(pkgs.map(async (alias) => {
      if (!allDeps[alias])
        return;
      const wantedRef = opts2.wantedLockfile.importers[importerId][depType][alias];
      if (ignoreDependenciesMatcher?.(alias))
        return;
      const currentRef = currentLockfile.importers[importerId]?.[depType]?.[alias];
      const wantedRelative = refToRelative(wantedRef, alias);
      const currentRelative = currentRef ? refToRelative(currentRef, alias) : null;
      const wantedSnapshot = wantedRelative != null ? opts2.wantedLockfile.packages?.[wantedRelative] : void 0;
      const currentSnapshot = currentRelative != null ? currentLockfile.packages?.[currentRelative] : void 0;
      const packageName = (wantedRelative != null ? parse6(wantedRelative).name : void 0) ?? alias;
      const bareSpecifier = _replaceCatalogProtocolIfNecessary({ alias, bareSpecifier: allDeps[alias] });
      const info = await opts2.resolveLatest({ wantedDependency: { alias, bareSpecifier }, compatible: opts2.compatible }, resolveOpts);
      if (info == null)
        return;
      const wanted = displayVersion(wantedRef, wantedRelative, wantedSnapshot?.version);
      const current = currentRef ? displayVersion(currentRef, currentRelative, currentSnapshot?.version) : void 0;
      const { latestManifest } = info;
      if (latestManifest == null) {
        if (wanted !== current) {
          outdated2.push({
            alias,
            belongsTo: depType,
            current,
            latestManifest: void 0,
            packageName,
            wanted,
            workspace: opts2.manifest.name
          });
        }
        return;
      }
      if (!current) {
        outdated2.push({
          alias,
          belongsTo: depType,
          latestManifest,
          packageName,
          wanted,
          workspace: opts2.manifest.name
        });
        return;
      }
      if (wanted !== current || isLowerVersion(wanted, latestManifest.version) || latestManifest.deprecated) {
        outdated2.push({
          alias,
          belongsTo: depType,
          current,
          latestManifest,
          packageName,
          wanted,
          workspace: opts2.manifest.name
        });
      }
    }));
  }));
  return outdated2.sort((pkg1, pkg2) => pkg1.packageName.localeCompare(pkg2.packageName));
}
function packageHasNoDeps(manifest) {
  return (manifest.dependencies == null || isEmpty3(manifest.dependencies)) && (manifest.devDependencies == null || isEmpty3(manifest.devDependencies)) && (manifest.optionalDependencies == null || isEmpty3(manifest.optionalDependencies));
}
function isEmpty3(obj) {
  return Object.keys(obj).length === 0;
}
function displayVersion(ref, relativeDepPath, snapshotVersion) {
  if (relativeDepPath != null) {
    const parsed = parse6(relativeDepPath);
    if (parsed.version != null)
      return parsed.version;
    if (parsed.nonSemverVersion?.includes("/"))
      return ref;
  }
  return snapshotVersion ?? ref;
}
function isLowerVersion(current, latest) {
  if (!import_semver41.default.valid(current) || !import_semver41.default.valid(latest))
    return false;
  return import_semver41.default.lt(current, latest);
}
function replaceCatalogProtocolIfNecessary(catalogs, wantedDependency) {
  return matchCatalogResolveResult(resolveFromCatalog(catalogs, wantedDependency), {
    unused: () => wantedDependency.bareSpecifier,
    found: (found) => found.resolution.specifier,
    misconfiguration: (misconfiguration) => {
      throw misconfiguration.error;
    }
  });
}
var import_semver41;
var init_outdated = __esm({
  "../deps/inspection/outdated/lib/outdated.js"() {
    "use strict";
    init_lib95();
    init_lib14();
    init_lib97();
    init_lib();
    init_lib65();
    init_lib2();
    init_lib103();
    init_lib78();
    init_lib9();
    init_lib8();
    import_semver41 = __toESM(require_semver2(), 1);
    init_createManifestGetter();
  }
});

// ../deps/inspection/outdated/lib/outdatedDepsOfProjects.js
import path155 from "node:path";
async function outdatedDepsOfProjects(pkgs, args, opts2) {
  if (!opts2.lockfileDir) {
    return unnest_default(await Promise.all(pkgs.map(async (pkg) => outdatedDepsOfProjects([pkg], args, { ...opts2, lockfileDir: pkg.rootDir }))));
  }
  const lockfileDir = opts2.lockfileDir ?? opts2.dir;
  const internalPnpmDir = path155.join(path155.join(lockfileDir, "node_modules/.pnpm"));
  const currentLockfile = await readCurrentLockfile(internalPnpmDir, { ignoreIncompatible: false });
  const wantedLockfile = await readWantedLockfile(lockfileDir, { ignoreIncompatible: false }) ?? currentLockfile;
  const { publishedBy, publishedByExclude } = getPublishedByPolicy(opts2);
  const { resolveLatest } = createResolver2({
    ...opts2,
    configByUri: opts2.configByUri,
    filterMetadata: false,
    fullMetadata: opts2.fullMetadata === true || Boolean(opts2.minimumReleaseAge),
    ignoreMissingTimeField: opts2.minimumReleaseAgeIgnoreMissingTime
  });
  return Promise.all(pkgs.map(async ({ rootDir, manifest }) => {
    const match = args.length > 0 && createMatcher(args) || void 0;
    return outdated({
      catalogs: opts2.catalogs,
      compatible: opts2.compatible,
      currentLockfile,
      resolveLatest,
      ignoreDependencies: opts2.ignoreDependencies,
      include: opts2.include,
      lockfileDir,
      manifest,
      match,
      minimumReleaseAge: opts2.minimumReleaseAge,
      minimumReleaseAgeExclude: opts2.minimumReleaseAgeExclude,
      prefix: rootDir,
      publishedBy,
      publishedByExclude,
      wantedLockfile
    });
  }));
}
var init_outdatedDepsOfProjects = __esm({
  "../deps/inspection/outdated/lib/outdatedDepsOfProjects.js"() {
    "use strict";
    init_lib14();
    init_lib23();
    init_lib57();
    init_lib78();
    init_es();
    init_outdated();
  }
});

// ../deps/inspection/outdated/lib/index.js
var init_lib135 = __esm({
  "../deps/inspection/outdated/lib/index.js"() {
    "use strict";
    init_outdatedDepsOfProjects();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/colorize-semver-diff/2.0.0/f68166d46b526acb1b73c4e1c33bacdb1d0352eb5841882d6946716d5d9f09c4/node_modules/@pnpm/colorize-semver-diff/lib/index.js
function colorizeSemverDiff(semverDiff2) {
  if (!semverDiff2) {
    throw new TypeError("semverDiff must be defined");
  }
  if (typeof semverDiff2.change !== "string") {
    throw new TypeError("semverDiff.change must be defined");
  }
  const highlight2 = DIFF_COLORS[semverDiff2.change] ?? source_default.redBright.bold;
  const same = joinVersionTuples(semverDiff2.diff[0], 0);
  const other = highlight2(joinVersionTuples(semverDiff2.diff[1], semverDiff2.diff[0].length));
  if (!same)
    return other;
  if (!other)
    return same;
  return semverDiff2.diff[0].length === 3 ? `${same}-${other}` : `${same}.${other}`;
}
function joinVersionTuples(versionTuples, startIndex) {
  const neededForSemver = 3 - startIndex;
  if (versionTuples.length <= neededForSemver || neededForSemver <= 0) {
    return versionTuples.join(".");
  }
  return `${versionTuples.slice(0, neededForSemver).join(".")}-${versionTuples.slice(neededForSemver).join(".")}`;
}
var DIFF_COLORS;
var init_lib136 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/colorize-semver-diff/2.0.0/f68166d46b526acb1b73c4e1c33bacdb1d0352eb5841882d6946716d5d9f09c4/node_modules/@pnpm/colorize-semver-diff/lib/index.js"() {
    init_source2();
    DIFF_COLORS = {
      feature: source_default.yellowBright.bold,
      fix: source_default.greenBright.bold
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/semver-diff/2.0.0/075eb938870e3d83aaa464075b007aee43a20c770e559aba20e1154b6e584296/node_modules/@pnpm/semver-diff/lib/index.js
function semverDiff(version1, version2) {
  if (version1 === version2) {
    return {
      change: null,
      diff: [parseVersion(version1), []]
    };
  }
  const [version1Prefix, version1Semver] = parsePrefix(version1);
  const [version2Prefix, version2Semver] = parsePrefix(version2);
  if (version1Prefix !== version2Prefix) {
    const { change: change2 } = semverDiff(version1Semver, version2Semver);
    return {
      change: change2,
      diff: [[], parseVersion(version2)]
    };
  }
  const version1Tuples = parseVersion(version1);
  const version2Tuples = parseVersion(version2);
  const same = [];
  let change = "unknown";
  const maxTuples = Math.max(version1Tuples.length, version2Tuples.length);
  const unstable = version1Tuples[0] === "0" || version2Tuples[0] === "0" || maxTuples > 3;
  for (let i2 = 0; i2 < maxTuples; i2++) {
    if (version1Tuples[i2] === version2Tuples[i2]) {
      same.push(version1Tuples[i2]);
      continue;
    }
    if (!unstable) {
      change = SEMVER_CHANGE_BY_TUPLE_NUMBER[i2] ?? "unknown";
    }
    return {
      change,
      diff: [same, version2Tuples.slice(i2)]
    };
  }
  return {
    change,
    diff: [same, []]
  };
}
function parsePrefix(version2) {
  if (version2.startsWith("~") || version2.startsWith("^")) {
    return [version2[0], version2.slice(1)];
  }
  return ["", version2];
}
function parseVersion(version2) {
  const dashIndex = version2.indexOf("-");
  let normalVersion;
  let prereleaseVersion;
  if (dashIndex === -1) {
    normalVersion = version2;
  } else {
    normalVersion = version2.slice(0, dashIndex);
    prereleaseVersion = version2.slice(dashIndex + 1);
  }
  return [
    ...normalVersion.split("."),
    ...prereleaseVersion !== void 0 ? prereleaseVersion.split(".") : []
  ];
}
var SEMVER_CHANGE_BY_TUPLE_NUMBER;
var init_lib137 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/semver-diff/2.0.0/075eb938870e3d83aaa464075b007aee43a20c770e559aba20e1154b6e584296/node_modules/@pnpm/semver-diff/lib/index.js"() {
    SEMVER_CHANGE_BY_TUPLE_NUMBER = ["breaking", "feature", "fix"];
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/grapheme-splitter/1.0.4/2e7a99905bbc9ab70d78be72b6034f403b1054cdd82e275b3982ea3412506b93/node_modules/grapheme-splitter/index.js
var require_grapheme_splitter = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/grapheme-splitter/1.0.4/2e7a99905bbc9ab70d78be72b6034f403b1054cdd82e275b3982ea3412506b93/node_modules/grapheme-splitter/index.js"(exports2, module2) {
    function GraphemeSplitter() {
      var CR2 = 0, LF2 = 1, Control = 2, Extend = 3, Regional_Indicator = 4, SpacingMark = 5, L2 = 6, V = 7, T2 = 8, LV = 9, LVT = 10, Other = 11, Prepend = 12, E_Base = 13, E_Modifier = 14, ZWJ = 15, Glue_After_Zwj = 16, E_Base_GAZ = 17;
      var NotBreak = 0, BreakStart = 1, Break = 2, BreakLastRegional = 3, BreakPenultimateRegional = 4;
      function isSurrogate(str2, pos) {
        return 55296 <= str2.charCodeAt(pos) && str2.charCodeAt(pos) <= 56319 && 56320 <= str2.charCodeAt(pos + 1) && str2.charCodeAt(pos + 1) <= 57343;
      }
      function codePointAt2(str2, idx) {
        if (idx === void 0) {
          idx = 0;
        }
        var code = str2.charCodeAt(idx);
        if (55296 <= code && code <= 56319 && idx < str2.length - 1) {
          var hi = code;
          var low = str2.charCodeAt(idx + 1);
          if (56320 <= low && low <= 57343) {
            return (hi - 55296) * 1024 + (low - 56320) + 65536;
          }
          return hi;
        }
        if (56320 <= code && code <= 57343 && idx >= 1) {
          var hi = str2.charCodeAt(idx - 1);
          var low = code;
          if (55296 <= hi && hi <= 56319) {
            return (hi - 55296) * 1024 + (low - 56320) + 65536;
          }
          return low;
        }
        return code;
      }
      function shouldBreak(start, mid, end) {
        var all = [start].concat(mid).concat([end]);
        var previous = all[all.length - 2];
        var next2 = end;
        var eModifierIndex = all.lastIndexOf(E_Modifier);
        if (eModifierIndex > 1 && all.slice(1, eModifierIndex).every(function(c3) {
          return c3 == Extend;
        }) && [Extend, E_Base, E_Base_GAZ].indexOf(start) == -1) {
          return Break;
        }
        var rIIndex = all.lastIndexOf(Regional_Indicator);
        if (rIIndex > 0 && all.slice(1, rIIndex).every(function(c3) {
          return c3 == Regional_Indicator;
        }) && [Prepend, Regional_Indicator].indexOf(previous) == -1) {
          if (all.filter(function(c3) {
            return c3 == Regional_Indicator;
          }).length % 2 == 1) {
            return BreakLastRegional;
          } else {
            return BreakPenultimateRegional;
          }
        }
        if (previous == CR2 && next2 == LF2) {
          return NotBreak;
        } else if (previous == Control || previous == CR2 || previous == LF2) {
          if (next2 == E_Modifier && mid.every(function(c3) {
            return c3 == Extend;
          })) {
            return Break;
          } else {
            return BreakStart;
          }
        } else if (next2 == Control || next2 == CR2 || next2 == LF2) {
          return BreakStart;
        } else if (previous == L2 && (next2 == L2 || next2 == V || next2 == LV || next2 == LVT)) {
          return NotBreak;
        } else if ((previous == LV || previous == V) && (next2 == V || next2 == T2)) {
          return NotBreak;
        } else if ((previous == LVT || previous == T2) && next2 == T2) {
          return NotBreak;
        } else if (next2 == Extend || next2 == ZWJ) {
          return NotBreak;
        } else if (next2 == SpacingMark) {
          return NotBreak;
        } else if (previous == Prepend) {
          return NotBreak;
        }
        var previousNonExtendIndex = all.indexOf(Extend) != -1 ? all.lastIndexOf(Extend) - 1 : all.length - 2;
        if ([E_Base, E_Base_GAZ].indexOf(all[previousNonExtendIndex]) != -1 && all.slice(previousNonExtendIndex + 1, -1).every(function(c3) {
          return c3 == Extend;
        }) && next2 == E_Modifier) {
          return NotBreak;
        }
        if (previous == ZWJ && [Glue_After_Zwj, E_Base_GAZ].indexOf(next2) != -1) {
          return NotBreak;
        }
        if (mid.indexOf(Regional_Indicator) != -1) {
          return Break;
        }
        if (previous == Regional_Indicator && next2 == Regional_Indicator) {
          return NotBreak;
        }
        return BreakStart;
      }
      this.nextBreak = function(string, index) {
        if (index === void 0) {
          index = 0;
        }
        if (index < 0) {
          return 0;
        }
        if (index >= string.length - 1) {
          return string.length;
        }
        var prev = getGraphemeBreakProperty(codePointAt2(string, index));
        var mid = [];
        for (var i2 = index + 1; i2 < string.length; i2++) {
          if (isSurrogate(string, i2 - 1)) {
            continue;
          }
          var next2 = getGraphemeBreakProperty(codePointAt2(string, i2));
          if (shouldBreak(prev, mid, next2)) {
            return i2;
          }
          mid.push(next2);
        }
        return string.length;
      };
      this.splitGraphemes = function(str2) {
        var res = [];
        var index = 0;
        var brk;
        while ((brk = this.nextBreak(str2, index)) < str2.length) {
          res.push(str2.slice(index, brk));
          index = brk;
        }
        if (index < str2.length) {
          res.push(str2.slice(index));
        }
        return res;
      };
      this.iterateGraphemes = function(str2) {
        var index = 0;
        var res = {
          next: (function() {
            var value;
            var brk;
            if ((brk = this.nextBreak(str2, index)) < str2.length) {
              value = str2.slice(index, brk);
              index = brk;
              return { value, done: false };
            }
            if (index < str2.length) {
              value = str2.slice(index);
              index = str2.length;
              return { value, done: false };
            }
            return { value: void 0, done: true };
          }).bind(this)
        };
        if (typeof Symbol !== "undefined" && Symbol.iterator) {
          res[Symbol.iterator] = function() {
            return res;
          };
        }
        return res;
      };
      this.countGraphemes = function(str2) {
        var count2 = 0;
        var index = 0;
        var brk;
        while ((brk = this.nextBreak(str2, index)) < str2.length) {
          index = brk;
          count2++;
        }
        if (index < str2.length) {
          count2++;
        }
        return count2;
      };
      function getGraphemeBreakProperty(code) {
        if (1536 <= code && code <= 1541 || // Cf   [6] ARABIC NUMBER SIGN..ARABIC NUMBER MARK ABOVE
        1757 == code || // Cf       ARABIC END OF AYAH
        1807 == code || // Cf       SYRIAC ABBREVIATION MARK
        2274 == code || // Cf       ARABIC DISPUTED END OF AYAH
        3406 == code || // Lo       MALAYALAM LETTER DOT REPH
        69821 == code || // Cf       KAITHI NUMBER SIGN
        70082 <= code && code <= 70083 || // Lo   [2] SHARADA SIGN JIHVAMULIYA..SHARADA SIGN UPADHMANIYA
        72250 == code || // Lo       ZANABAZAR SQUARE CLUSTER-INITIAL LETTER RA
        72326 <= code && code <= 72329 || // Lo   [4] SOYOMBO CLUSTER-INITIAL LETTER RA..SOYOMBO CLUSTER-INITIAL LETTER SA
        73030 == code) {
          return Prepend;
        }
        if (13 == code) {
          return CR2;
        }
        if (10 == code) {
          return LF2;
        }
        if (0 <= code && code <= 9 || // Cc  [10] <control-0000>..<control-0009>
        11 <= code && code <= 12 || // Cc   [2] <control-000B>..<control-000C>
        14 <= code && code <= 31 || // Cc  [18] <control-000E>..<control-001F>
        127 <= code && code <= 159 || // Cc  [33] <control-007F>..<control-009F>
        173 == code || // Cf       SOFT HYPHEN
        1564 == code || // Cf       ARABIC LETTER MARK
        6158 == code || // Cf       MONGOLIAN VOWEL SEPARATOR
        8203 == code || // Cf       ZERO WIDTH SPACE
        8206 <= code && code <= 8207 || // Cf   [2] LEFT-TO-RIGHT MARK..RIGHT-TO-LEFT MARK
        8232 == code || // Zl       LINE SEPARATOR
        8233 == code || // Zp       PARAGRAPH SEPARATOR
        8234 <= code && code <= 8238 || // Cf   [5] LEFT-TO-RIGHT EMBEDDING..RIGHT-TO-LEFT OVERRIDE
        8288 <= code && code <= 8292 || // Cf   [5] WORD JOINER..INVISIBLE PLUS
        8293 == code || // Cn       <reserved-2065>
        8294 <= code && code <= 8303 || // Cf  [10] LEFT-TO-RIGHT ISOLATE..NOMINAL DIGIT SHAPES
        55296 <= code && code <= 57343 || // Cs [2048] <surrogate-D800>..<surrogate-DFFF>
        65279 == code || // Cf       ZERO WIDTH NO-BREAK SPACE
        65520 <= code && code <= 65528 || // Cn   [9] <reserved-FFF0>..<reserved-FFF8>
        65529 <= code && code <= 65531 || // Cf   [3] INTERLINEAR ANNOTATION ANCHOR..INTERLINEAR ANNOTATION TERMINATOR
        113824 <= code && code <= 113827 || // Cf   [4] SHORTHAND FORMAT LETTER OVERLAP..SHORTHAND FORMAT UP STEP
        119155 <= code && code <= 119162 || // Cf   [8] MUSICAL SYMBOL BEGIN BEAM..MUSICAL SYMBOL END PHRASE
        917504 == code || // Cn       <reserved-E0000>
        917505 == code || // Cf       LANGUAGE TAG
        917506 <= code && code <= 917535 || // Cn  [30] <reserved-E0002>..<reserved-E001F>
        917632 <= code && code <= 917759 || // Cn [128] <reserved-E0080>..<reserved-E00FF>
        918e3 <= code && code <= 921599) {
          return Control;
        }
        if (768 <= code && code <= 879 || // Mn [112] COMBINING GRAVE ACCENT..COMBINING LATIN SMALL LETTER X
        1155 <= code && code <= 1159 || // Mn   [5] COMBINING CYRILLIC TITLO..COMBINING CYRILLIC POKRYTIE
        1160 <= code && code <= 1161 || // Me   [2] COMBINING CYRILLIC HUNDRED THOUSANDS SIGN..COMBINING CYRILLIC MILLIONS SIGN
        1425 <= code && code <= 1469 || // Mn  [45] HEBREW ACCENT ETNAHTA..HEBREW POINT METEG
        1471 == code || // Mn       HEBREW POINT RAFE
        1473 <= code && code <= 1474 || // Mn   [2] HEBREW POINT SHIN DOT..HEBREW POINT SIN DOT
        1476 <= code && code <= 1477 || // Mn   [2] HEBREW MARK UPPER DOT..HEBREW MARK LOWER DOT
        1479 == code || // Mn       HEBREW POINT QAMATS QATAN
        1552 <= code && code <= 1562 || // Mn  [11] ARABIC SIGN SALLALLAHOU ALAYHE WASSALLAM..ARABIC SMALL KASRA
        1611 <= code && code <= 1631 || // Mn  [21] ARABIC FATHATAN..ARABIC WAVY HAMZA BELOW
        1648 == code || // Mn       ARABIC LETTER SUPERSCRIPT ALEF
        1750 <= code && code <= 1756 || // Mn   [7] ARABIC SMALL HIGH LIGATURE SAD WITH LAM WITH ALEF MAKSURA..ARABIC SMALL HIGH SEEN
        1759 <= code && code <= 1764 || // Mn   [6] ARABIC SMALL HIGH ROUNDED ZERO..ARABIC SMALL HIGH MADDA
        1767 <= code && code <= 1768 || // Mn   [2] ARABIC SMALL HIGH YEH..ARABIC SMALL HIGH NOON
        1770 <= code && code <= 1773 || // Mn   [4] ARABIC EMPTY CENTRE LOW STOP..ARABIC SMALL LOW MEEM
        1809 == code || // Mn       SYRIAC LETTER SUPERSCRIPT ALAPH
        1840 <= code && code <= 1866 || // Mn  [27] SYRIAC PTHAHA ABOVE..SYRIAC BARREKH
        1958 <= code && code <= 1968 || // Mn  [11] THAANA ABAFILI..THAANA SUKUN
        2027 <= code && code <= 2035 || // Mn   [9] NKO COMBINING SHORT HIGH TONE..NKO COMBINING DOUBLE DOT ABOVE
        2070 <= code && code <= 2073 || // Mn   [4] SAMARITAN MARK IN..SAMARITAN MARK DAGESH
        2075 <= code && code <= 2083 || // Mn   [9] SAMARITAN MARK EPENTHETIC YUT..SAMARITAN VOWEL SIGN A
        2085 <= code && code <= 2087 || // Mn   [3] SAMARITAN VOWEL SIGN SHORT A..SAMARITAN VOWEL SIGN U
        2089 <= code && code <= 2093 || // Mn   [5] SAMARITAN VOWEL SIGN LONG I..SAMARITAN MARK NEQUDAA
        2137 <= code && code <= 2139 || // Mn   [3] MANDAIC AFFRICATION MARK..MANDAIC GEMINATION MARK
        2260 <= code && code <= 2273 || // Mn  [14] ARABIC SMALL HIGH WORD AR-RUB..ARABIC SMALL HIGH SIGN SAFHA
        2275 <= code && code <= 2306 || // Mn  [32] ARABIC TURNED DAMMA BELOW..DEVANAGARI SIGN ANUSVARA
        2362 == code || // Mn       DEVANAGARI VOWEL SIGN OE
        2364 == code || // Mn       DEVANAGARI SIGN NUKTA
        2369 <= code && code <= 2376 || // Mn   [8] DEVANAGARI VOWEL SIGN U..DEVANAGARI VOWEL SIGN AI
        2381 == code || // Mn       DEVANAGARI SIGN VIRAMA
        2385 <= code && code <= 2391 || // Mn   [7] DEVANAGARI STRESS SIGN UDATTA..DEVANAGARI VOWEL SIGN UUE
        2402 <= code && code <= 2403 || // Mn   [2] DEVANAGARI VOWEL SIGN VOCALIC L..DEVANAGARI VOWEL SIGN VOCALIC LL
        2433 == code || // Mn       BENGALI SIGN CANDRABINDU
        2492 == code || // Mn       BENGALI SIGN NUKTA
        2494 == code || // Mc       BENGALI VOWEL SIGN AA
        2497 <= code && code <= 2500 || // Mn   [4] BENGALI VOWEL SIGN U..BENGALI VOWEL SIGN VOCALIC RR
        2509 == code || // Mn       BENGALI SIGN VIRAMA
        2519 == code || // Mc       BENGALI AU LENGTH MARK
        2530 <= code && code <= 2531 || // Mn   [2] BENGALI VOWEL SIGN VOCALIC L..BENGALI VOWEL SIGN VOCALIC LL
        2561 <= code && code <= 2562 || // Mn   [2] GURMUKHI SIGN ADAK BINDI..GURMUKHI SIGN BINDI
        2620 == code || // Mn       GURMUKHI SIGN NUKTA
        2625 <= code && code <= 2626 || // Mn   [2] GURMUKHI VOWEL SIGN U..GURMUKHI VOWEL SIGN UU
        2631 <= code && code <= 2632 || // Mn   [2] GURMUKHI VOWEL SIGN EE..GURMUKHI VOWEL SIGN AI
        2635 <= code && code <= 2637 || // Mn   [3] GURMUKHI VOWEL SIGN OO..GURMUKHI SIGN VIRAMA
        2641 == code || // Mn       GURMUKHI SIGN UDAAT
        2672 <= code && code <= 2673 || // Mn   [2] GURMUKHI TIPPI..GURMUKHI ADDAK
        2677 == code || // Mn       GURMUKHI SIGN YAKASH
        2689 <= code && code <= 2690 || // Mn   [2] GUJARATI SIGN CANDRABINDU..GUJARATI SIGN ANUSVARA
        2748 == code || // Mn       GUJARATI SIGN NUKTA
        2753 <= code && code <= 2757 || // Mn   [5] GUJARATI VOWEL SIGN U..GUJARATI VOWEL SIGN CANDRA E
        2759 <= code && code <= 2760 || // Mn   [2] GUJARATI VOWEL SIGN E..GUJARATI VOWEL SIGN AI
        2765 == code || // Mn       GUJARATI SIGN VIRAMA
        2786 <= code && code <= 2787 || // Mn   [2] GUJARATI VOWEL SIGN VOCALIC L..GUJARATI VOWEL SIGN VOCALIC LL
        2810 <= code && code <= 2815 || // Mn   [6] GUJARATI SIGN SUKUN..GUJARATI SIGN TWO-CIRCLE NUKTA ABOVE
        2817 == code || // Mn       ORIYA SIGN CANDRABINDU
        2876 == code || // Mn       ORIYA SIGN NUKTA
        2878 == code || // Mc       ORIYA VOWEL SIGN AA
        2879 == code || // Mn       ORIYA VOWEL SIGN I
        2881 <= code && code <= 2884 || // Mn   [4] ORIYA VOWEL SIGN U..ORIYA VOWEL SIGN VOCALIC RR
        2893 == code || // Mn       ORIYA SIGN VIRAMA
        2902 == code || // Mn       ORIYA AI LENGTH MARK
        2903 == code || // Mc       ORIYA AU LENGTH MARK
        2914 <= code && code <= 2915 || // Mn   [2] ORIYA VOWEL SIGN VOCALIC L..ORIYA VOWEL SIGN VOCALIC LL
        2946 == code || // Mn       TAMIL SIGN ANUSVARA
        3006 == code || // Mc       TAMIL VOWEL SIGN AA
        3008 == code || // Mn       TAMIL VOWEL SIGN II
        3021 == code || // Mn       TAMIL SIGN VIRAMA
        3031 == code || // Mc       TAMIL AU LENGTH MARK
        3072 == code || // Mn       TELUGU SIGN COMBINING CANDRABINDU ABOVE
        3134 <= code && code <= 3136 || // Mn   [3] TELUGU VOWEL SIGN AA..TELUGU VOWEL SIGN II
        3142 <= code && code <= 3144 || // Mn   [3] TELUGU VOWEL SIGN E..TELUGU VOWEL SIGN AI
        3146 <= code && code <= 3149 || // Mn   [4] TELUGU VOWEL SIGN O..TELUGU SIGN VIRAMA
        3157 <= code && code <= 3158 || // Mn   [2] TELUGU LENGTH MARK..TELUGU AI LENGTH MARK
        3170 <= code && code <= 3171 || // Mn   [2] TELUGU VOWEL SIGN VOCALIC L..TELUGU VOWEL SIGN VOCALIC LL
        3201 == code || // Mn       KANNADA SIGN CANDRABINDU
        3260 == code || // Mn       KANNADA SIGN NUKTA
        3263 == code || // Mn       KANNADA VOWEL SIGN I
        3266 == code || // Mc       KANNADA VOWEL SIGN UU
        3270 == code || // Mn       KANNADA VOWEL SIGN E
        3276 <= code && code <= 3277 || // Mn   [2] KANNADA VOWEL SIGN AU..KANNADA SIGN VIRAMA
        3285 <= code && code <= 3286 || // Mc   [2] KANNADA LENGTH MARK..KANNADA AI LENGTH MARK
        3298 <= code && code <= 3299 || // Mn   [2] KANNADA VOWEL SIGN VOCALIC L..KANNADA VOWEL SIGN VOCALIC LL
        3328 <= code && code <= 3329 || // Mn   [2] MALAYALAM SIGN COMBINING ANUSVARA ABOVE..MALAYALAM SIGN CANDRABINDU
        3387 <= code && code <= 3388 || // Mn   [2] MALAYALAM SIGN VERTICAL BAR VIRAMA..MALAYALAM SIGN CIRCULAR VIRAMA
        3390 == code || // Mc       MALAYALAM VOWEL SIGN AA
        3393 <= code && code <= 3396 || // Mn   [4] MALAYALAM VOWEL SIGN U..MALAYALAM VOWEL SIGN VOCALIC RR
        3405 == code || // Mn       MALAYALAM SIGN VIRAMA
        3415 == code || // Mc       MALAYALAM AU LENGTH MARK
        3426 <= code && code <= 3427 || // Mn   [2] MALAYALAM VOWEL SIGN VOCALIC L..MALAYALAM VOWEL SIGN VOCALIC LL
        3530 == code || // Mn       SINHALA SIGN AL-LAKUNA
        3535 == code || // Mc       SINHALA VOWEL SIGN AELA-PILLA
        3538 <= code && code <= 3540 || // Mn   [3] SINHALA VOWEL SIGN KETTI IS-PILLA..SINHALA VOWEL SIGN KETTI PAA-PILLA
        3542 == code || // Mn       SINHALA VOWEL SIGN DIGA PAA-PILLA
        3551 == code || // Mc       SINHALA VOWEL SIGN GAYANUKITTA
        3633 == code || // Mn       THAI CHARACTER MAI HAN-AKAT
        3636 <= code && code <= 3642 || // Mn   [7] THAI CHARACTER SARA I..THAI CHARACTER PHINTHU
        3655 <= code && code <= 3662 || // Mn   [8] THAI CHARACTER MAITAIKHU..THAI CHARACTER YAMAKKAN
        3761 == code || // Mn       LAO VOWEL SIGN MAI KAN
        3764 <= code && code <= 3769 || // Mn   [6] LAO VOWEL SIGN I..LAO VOWEL SIGN UU
        3771 <= code && code <= 3772 || // Mn   [2] LAO VOWEL SIGN MAI KON..LAO SEMIVOWEL SIGN LO
        3784 <= code && code <= 3789 || // Mn   [6] LAO TONE MAI EK..LAO NIGGAHITA
        3864 <= code && code <= 3865 || // Mn   [2] TIBETAN ASTROLOGICAL SIGN -KHYUD PA..TIBETAN ASTROLOGICAL SIGN SDONG TSHUGS
        3893 == code || // Mn       TIBETAN MARK NGAS BZUNG NYI ZLA
        3895 == code || // Mn       TIBETAN MARK NGAS BZUNG SGOR RTAGS
        3897 == code || // Mn       TIBETAN MARK TSA -PHRU
        3953 <= code && code <= 3966 || // Mn  [14] TIBETAN VOWEL SIGN AA..TIBETAN SIGN RJES SU NGA RO
        3968 <= code && code <= 3972 || // Mn   [5] TIBETAN VOWEL SIGN REVERSED I..TIBETAN MARK HALANTA
        3974 <= code && code <= 3975 || // Mn   [2] TIBETAN SIGN LCI RTAGS..TIBETAN SIGN YANG RTAGS
        3981 <= code && code <= 3991 || // Mn  [11] TIBETAN SUBJOINED SIGN LCE TSA CAN..TIBETAN SUBJOINED LETTER JA
        3993 <= code && code <= 4028 || // Mn  [36] TIBETAN SUBJOINED LETTER NYA..TIBETAN SUBJOINED LETTER FIXED-FORM RA
        4038 == code || // Mn       TIBETAN SYMBOL PADMA GDAN
        4141 <= code && code <= 4144 || // Mn   [4] MYANMAR VOWEL SIGN I..MYANMAR VOWEL SIGN UU
        4146 <= code && code <= 4151 || // Mn   [6] MYANMAR VOWEL SIGN AI..MYANMAR SIGN DOT BELOW
        4153 <= code && code <= 4154 || // Mn   [2] MYANMAR SIGN VIRAMA..MYANMAR SIGN ASAT
        4157 <= code && code <= 4158 || // Mn   [2] MYANMAR CONSONANT SIGN MEDIAL WA..MYANMAR CONSONANT SIGN MEDIAL HA
        4184 <= code && code <= 4185 || // Mn   [2] MYANMAR VOWEL SIGN VOCALIC L..MYANMAR VOWEL SIGN VOCALIC LL
        4190 <= code && code <= 4192 || // Mn   [3] MYANMAR CONSONANT SIGN MON MEDIAL NA..MYANMAR CONSONANT SIGN MON MEDIAL LA
        4209 <= code && code <= 4212 || // Mn   [4] MYANMAR VOWEL SIGN GEBA KAREN I..MYANMAR VOWEL SIGN KAYAH EE
        4226 == code || // Mn       MYANMAR CONSONANT SIGN SHAN MEDIAL WA
        4229 <= code && code <= 4230 || // Mn   [2] MYANMAR VOWEL SIGN SHAN E ABOVE..MYANMAR VOWEL SIGN SHAN FINAL Y
        4237 == code || // Mn       MYANMAR SIGN SHAN COUNCIL EMPHATIC TONE
        4253 == code || // Mn       MYANMAR VOWEL SIGN AITON AI
        4957 <= code && code <= 4959 || // Mn   [3] ETHIOPIC COMBINING GEMINATION AND VOWEL LENGTH MARK..ETHIOPIC COMBINING GEMINATION MARK
        5906 <= code && code <= 5908 || // Mn   [3] TAGALOG VOWEL SIGN I..TAGALOG SIGN VIRAMA
        5938 <= code && code <= 5940 || // Mn   [3] HANUNOO VOWEL SIGN I..HANUNOO SIGN PAMUDPOD
        5970 <= code && code <= 5971 || // Mn   [2] BUHID VOWEL SIGN I..BUHID VOWEL SIGN U
        6002 <= code && code <= 6003 || // Mn   [2] TAGBANWA VOWEL SIGN I..TAGBANWA VOWEL SIGN U
        6068 <= code && code <= 6069 || // Mn   [2] KHMER VOWEL INHERENT AQ..KHMER VOWEL INHERENT AA
        6071 <= code && code <= 6077 || // Mn   [7] KHMER VOWEL SIGN I..KHMER VOWEL SIGN UA
        6086 == code || // Mn       KHMER SIGN NIKAHIT
        6089 <= code && code <= 6099 || // Mn  [11] KHMER SIGN MUUSIKATOAN..KHMER SIGN BATHAMASAT
        6109 == code || // Mn       KHMER SIGN ATTHACAN
        6155 <= code && code <= 6157 || // Mn   [3] MONGOLIAN FREE VARIATION SELECTOR ONE..MONGOLIAN FREE VARIATION SELECTOR THREE
        6277 <= code && code <= 6278 || // Mn   [2] MONGOLIAN LETTER ALI GALI BALUDA..MONGOLIAN LETTER ALI GALI THREE BALUDA
        6313 == code || // Mn       MONGOLIAN LETTER ALI GALI DAGALGA
        6432 <= code && code <= 6434 || // Mn   [3] LIMBU VOWEL SIGN A..LIMBU VOWEL SIGN U
        6439 <= code && code <= 6440 || // Mn   [2] LIMBU VOWEL SIGN E..LIMBU VOWEL SIGN O
        6450 == code || // Mn       LIMBU SMALL LETTER ANUSVARA
        6457 <= code && code <= 6459 || // Mn   [3] LIMBU SIGN MUKPHRENG..LIMBU SIGN SA-I
        6679 <= code && code <= 6680 || // Mn   [2] BUGINESE VOWEL SIGN I..BUGINESE VOWEL SIGN U
        6683 == code || // Mn       BUGINESE VOWEL SIGN AE
        6742 == code || // Mn       TAI THAM CONSONANT SIGN MEDIAL LA
        6744 <= code && code <= 6750 || // Mn   [7] TAI THAM SIGN MAI KANG LAI..TAI THAM CONSONANT SIGN SA
        6752 == code || // Mn       TAI THAM SIGN SAKOT
        6754 == code || // Mn       TAI THAM VOWEL SIGN MAI SAT
        6757 <= code && code <= 6764 || // Mn   [8] TAI THAM VOWEL SIGN I..TAI THAM VOWEL SIGN OA BELOW
        6771 <= code && code <= 6780 || // Mn  [10] TAI THAM VOWEL SIGN OA ABOVE..TAI THAM SIGN KHUEN-LUE KARAN
        6783 == code || // Mn       TAI THAM COMBINING CRYPTOGRAMMIC DOT
        6832 <= code && code <= 6845 || // Mn  [14] COMBINING DOUBLED CIRCUMFLEX ACCENT..COMBINING PARENTHESES BELOW
        6846 == code || // Me       COMBINING PARENTHESES OVERLAY
        6912 <= code && code <= 6915 || // Mn   [4] BALINESE SIGN ULU RICEM..BALINESE SIGN SURANG
        6964 == code || // Mn       BALINESE SIGN REREKAN
        6966 <= code && code <= 6970 || // Mn   [5] BALINESE VOWEL SIGN ULU..BALINESE VOWEL SIGN RA REPA
        6972 == code || // Mn       BALINESE VOWEL SIGN LA LENGA
        6978 == code || // Mn       BALINESE VOWEL SIGN PEPET
        7019 <= code && code <= 7027 || // Mn   [9] BALINESE MUSICAL SYMBOL COMBINING TEGEH..BALINESE MUSICAL SYMBOL COMBINING GONG
        7040 <= code && code <= 7041 || // Mn   [2] SUNDANESE SIGN PANYECEK..SUNDANESE SIGN PANGLAYAR
        7074 <= code && code <= 7077 || // Mn   [4] SUNDANESE CONSONANT SIGN PANYAKRA..SUNDANESE VOWEL SIGN PANYUKU
        7080 <= code && code <= 7081 || // Mn   [2] SUNDANESE VOWEL SIGN PAMEPET..SUNDANESE VOWEL SIGN PANEULEUNG
        7083 <= code && code <= 7085 || // Mn   [3] SUNDANESE SIGN VIRAMA..SUNDANESE CONSONANT SIGN PASANGAN WA
        7142 == code || // Mn       BATAK SIGN TOMPI
        7144 <= code && code <= 7145 || // Mn   [2] BATAK VOWEL SIGN PAKPAK E..BATAK VOWEL SIGN EE
        7149 == code || // Mn       BATAK VOWEL SIGN KARO O
        7151 <= code && code <= 7153 || // Mn   [3] BATAK VOWEL SIGN U FOR SIMALUNGUN SA..BATAK CONSONANT SIGN H
        7212 <= code && code <= 7219 || // Mn   [8] LEPCHA VOWEL SIGN E..LEPCHA CONSONANT SIGN T
        7222 <= code && code <= 7223 || // Mn   [2] LEPCHA SIGN RAN..LEPCHA SIGN NUKTA
        7376 <= code && code <= 7378 || // Mn   [3] VEDIC TONE KARSHANA..VEDIC TONE PRENKHA
        7380 <= code && code <= 7392 || // Mn  [13] VEDIC SIGN YAJURVEDIC MIDLINE SVARITA..VEDIC TONE RIGVEDIC KASHMIRI INDEPENDENT SVARITA
        7394 <= code && code <= 7400 || // Mn   [7] VEDIC SIGN VISARGA SVARITA..VEDIC SIGN VISARGA ANUDATTA WITH TAIL
        7405 == code || // Mn       VEDIC SIGN TIRYAK
        7412 == code || // Mn       VEDIC TONE CANDRA ABOVE
        7416 <= code && code <= 7417 || // Mn   [2] VEDIC TONE RING ABOVE..VEDIC TONE DOUBLE RING ABOVE
        7616 <= code && code <= 7673 || // Mn  [58] COMBINING DOTTED GRAVE ACCENT..COMBINING WIDE INVERTED BRIDGE BELOW
        7675 <= code && code <= 7679 || // Mn   [5] COMBINING DELETION MARK..COMBINING RIGHT ARROWHEAD AND DOWN ARROWHEAD BELOW
        8204 == code || // Cf       ZERO WIDTH NON-JOINER
        8400 <= code && code <= 8412 || // Mn  [13] COMBINING LEFT HARPOON ABOVE..COMBINING FOUR DOTS ABOVE
        8413 <= code && code <= 8416 || // Me   [4] COMBINING ENCLOSING CIRCLE..COMBINING ENCLOSING CIRCLE BACKSLASH
        8417 == code || // Mn       COMBINING LEFT RIGHT ARROW ABOVE
        8418 <= code && code <= 8420 || // Me   [3] COMBINING ENCLOSING SCREEN..COMBINING ENCLOSING UPWARD POINTING TRIANGLE
        8421 <= code && code <= 8432 || // Mn  [12] COMBINING REVERSE SOLIDUS OVERLAY..COMBINING ASTERISK ABOVE
        11503 <= code && code <= 11505 || // Mn   [3] COPTIC COMBINING NI ABOVE..COPTIC COMBINING SPIRITUS LENIS
        11647 == code || // Mn       TIFINAGH CONSONANT JOINER
        11744 <= code && code <= 11775 || // Mn  [32] COMBINING CYRILLIC LETTER BE..COMBINING CYRILLIC LETTER IOTIFIED BIG YUS
        12330 <= code && code <= 12333 || // Mn   [4] IDEOGRAPHIC LEVEL TONE MARK..IDEOGRAPHIC ENTERING TONE MARK
        12334 <= code && code <= 12335 || // Mc   [2] HANGUL SINGLE DOT TONE MARK..HANGUL DOUBLE DOT TONE MARK
        12441 <= code && code <= 12442 || // Mn   [2] COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK..COMBINING KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK
        42607 == code || // Mn       COMBINING CYRILLIC VZMET
        42608 <= code && code <= 42610 || // Me   [3] COMBINING CYRILLIC TEN MILLIONS SIGN..COMBINING CYRILLIC THOUSAND MILLIONS SIGN
        42612 <= code && code <= 42621 || // Mn  [10] COMBINING CYRILLIC LETTER UKRAINIAN IE..COMBINING CYRILLIC PAYEROK
        42654 <= code && code <= 42655 || // Mn   [2] COMBINING CYRILLIC LETTER EF..COMBINING CYRILLIC LETTER IOTIFIED E
        42736 <= code && code <= 42737 || // Mn   [2] BAMUM COMBINING MARK KOQNDON..BAMUM COMBINING MARK TUKWENTIS
        43010 == code || // Mn       SYLOTI NAGRI SIGN DVISVARA
        43014 == code || // Mn       SYLOTI NAGRI SIGN HASANTA
        43019 == code || // Mn       SYLOTI NAGRI SIGN ANUSVARA
        43045 <= code && code <= 43046 || // Mn   [2] SYLOTI NAGRI VOWEL SIGN U..SYLOTI NAGRI VOWEL SIGN E
        43204 <= code && code <= 43205 || // Mn   [2] SAURASHTRA SIGN VIRAMA..SAURASHTRA SIGN CANDRABINDU
        43232 <= code && code <= 43249 || // Mn  [18] COMBINING DEVANAGARI DIGIT ZERO..COMBINING DEVANAGARI SIGN AVAGRAHA
        43302 <= code && code <= 43309 || // Mn   [8] KAYAH LI VOWEL UE..KAYAH LI TONE CALYA PLOPHU
        43335 <= code && code <= 43345 || // Mn  [11] REJANG VOWEL SIGN I..REJANG CONSONANT SIGN R
        43392 <= code && code <= 43394 || // Mn   [3] JAVANESE SIGN PANYANGGA..JAVANESE SIGN LAYAR
        43443 == code || // Mn       JAVANESE SIGN CECAK TELU
        43446 <= code && code <= 43449 || // Mn   [4] JAVANESE VOWEL SIGN WULU..JAVANESE VOWEL SIGN SUKU MENDUT
        43452 == code || // Mn       JAVANESE VOWEL SIGN PEPET
        43493 == code || // Mn       MYANMAR SIGN SHAN SAW
        43561 <= code && code <= 43566 || // Mn   [6] CHAM VOWEL SIGN AA..CHAM VOWEL SIGN OE
        43569 <= code && code <= 43570 || // Mn   [2] CHAM VOWEL SIGN AU..CHAM VOWEL SIGN UE
        43573 <= code && code <= 43574 || // Mn   [2] CHAM CONSONANT SIGN LA..CHAM CONSONANT SIGN WA
        43587 == code || // Mn       CHAM CONSONANT SIGN FINAL NG
        43596 == code || // Mn       CHAM CONSONANT SIGN FINAL M
        43644 == code || // Mn       MYANMAR SIGN TAI LAING TONE-2
        43696 == code || // Mn       TAI VIET MAI KANG
        43698 <= code && code <= 43700 || // Mn   [3] TAI VIET VOWEL I..TAI VIET VOWEL U
        43703 <= code && code <= 43704 || // Mn   [2] TAI VIET MAI KHIT..TAI VIET VOWEL IA
        43710 <= code && code <= 43711 || // Mn   [2] TAI VIET VOWEL AM..TAI VIET TONE MAI EK
        43713 == code || // Mn       TAI VIET TONE MAI THO
        43756 <= code && code <= 43757 || // Mn   [2] MEETEI MAYEK VOWEL SIGN UU..MEETEI MAYEK VOWEL SIGN AAI
        43766 == code || // Mn       MEETEI MAYEK VIRAMA
        44005 == code || // Mn       MEETEI MAYEK VOWEL SIGN ANAP
        44008 == code || // Mn       MEETEI MAYEK VOWEL SIGN UNAP
        44013 == code || // Mn       MEETEI MAYEK APUN IYEK
        64286 == code || // Mn       HEBREW POINT JUDEO-SPANISH VARIKA
        65024 <= code && code <= 65039 || // Mn  [16] VARIATION SELECTOR-1..VARIATION SELECTOR-16
        65056 <= code && code <= 65071 || // Mn  [16] COMBINING LIGATURE LEFT HALF..COMBINING CYRILLIC TITLO RIGHT HALF
        65438 <= code && code <= 65439 || // Lm   [2] HALFWIDTH KATAKANA VOICED SOUND MARK..HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK
        66045 == code || // Mn       PHAISTOS DISC SIGN COMBINING OBLIQUE STROKE
        66272 == code || // Mn       COPTIC EPACT THOUSANDS MARK
        66422 <= code && code <= 66426 || // Mn   [5] COMBINING OLD PERMIC LETTER AN..COMBINING OLD PERMIC LETTER SII
        68097 <= code && code <= 68099 || // Mn   [3] KHAROSHTHI VOWEL SIGN I..KHAROSHTHI VOWEL SIGN VOCALIC R
        68101 <= code && code <= 68102 || // Mn   [2] KHAROSHTHI VOWEL SIGN E..KHAROSHTHI VOWEL SIGN O
        68108 <= code && code <= 68111 || // Mn   [4] KHAROSHTHI VOWEL LENGTH MARK..KHAROSHTHI SIGN VISARGA
        68152 <= code && code <= 68154 || // Mn   [3] KHAROSHTHI SIGN BAR ABOVE..KHAROSHTHI SIGN DOT BELOW
        68159 == code || // Mn       KHAROSHTHI VIRAMA
        68325 <= code && code <= 68326 || // Mn   [2] MANICHAEAN ABBREVIATION MARK ABOVE..MANICHAEAN ABBREVIATION MARK BELOW
        69633 == code || // Mn       BRAHMI SIGN ANUSVARA
        69688 <= code && code <= 69702 || // Mn  [15] BRAHMI VOWEL SIGN AA..BRAHMI VIRAMA
        69759 <= code && code <= 69761 || // Mn   [3] BRAHMI NUMBER JOINER..KAITHI SIGN ANUSVARA
        69811 <= code && code <= 69814 || // Mn   [4] KAITHI VOWEL SIGN U..KAITHI VOWEL SIGN AI
        69817 <= code && code <= 69818 || // Mn   [2] KAITHI SIGN VIRAMA..KAITHI SIGN NUKTA
        69888 <= code && code <= 69890 || // Mn   [3] CHAKMA SIGN CANDRABINDU..CHAKMA SIGN VISARGA
        69927 <= code && code <= 69931 || // Mn   [5] CHAKMA VOWEL SIGN A..CHAKMA VOWEL SIGN UU
        69933 <= code && code <= 69940 || // Mn   [8] CHAKMA VOWEL SIGN AI..CHAKMA MAAYYAA
        70003 == code || // Mn       MAHAJANI SIGN NUKTA
        70016 <= code && code <= 70017 || // Mn   [2] SHARADA SIGN CANDRABINDU..SHARADA SIGN ANUSVARA
        70070 <= code && code <= 70078 || // Mn   [9] SHARADA VOWEL SIGN U..SHARADA VOWEL SIGN O
        70090 <= code && code <= 70092 || // Mn   [3] SHARADA SIGN NUKTA..SHARADA EXTRA SHORT VOWEL MARK
        70191 <= code && code <= 70193 || // Mn   [3] KHOJKI VOWEL SIGN U..KHOJKI VOWEL SIGN AI
        70196 == code || // Mn       KHOJKI SIGN ANUSVARA
        70198 <= code && code <= 70199 || // Mn   [2] KHOJKI SIGN NUKTA..KHOJKI SIGN SHADDA
        70206 == code || // Mn       KHOJKI SIGN SUKUN
        70367 == code || // Mn       KHUDAWADI SIGN ANUSVARA
        70371 <= code && code <= 70378 || // Mn   [8] KHUDAWADI VOWEL SIGN U..KHUDAWADI SIGN VIRAMA
        70400 <= code && code <= 70401 || // Mn   [2] GRANTHA SIGN COMBINING ANUSVARA ABOVE..GRANTHA SIGN CANDRABINDU
        70460 == code || // Mn       GRANTHA SIGN NUKTA
        70462 == code || // Mc       GRANTHA VOWEL SIGN AA
        70464 == code || // Mn       GRANTHA VOWEL SIGN II
        70487 == code || // Mc       GRANTHA AU LENGTH MARK
        70502 <= code && code <= 70508 || // Mn   [7] COMBINING GRANTHA DIGIT ZERO..COMBINING GRANTHA DIGIT SIX
        70512 <= code && code <= 70516 || // Mn   [5] COMBINING GRANTHA LETTER A..COMBINING GRANTHA LETTER PA
        70712 <= code && code <= 70719 || // Mn   [8] NEWA VOWEL SIGN U..NEWA VOWEL SIGN AI
        70722 <= code && code <= 70724 || // Mn   [3] NEWA SIGN VIRAMA..NEWA SIGN ANUSVARA
        70726 == code || // Mn       NEWA SIGN NUKTA
        70832 == code || // Mc       TIRHUTA VOWEL SIGN AA
        70835 <= code && code <= 70840 || // Mn   [6] TIRHUTA VOWEL SIGN U..TIRHUTA VOWEL SIGN VOCALIC LL
        70842 == code || // Mn       TIRHUTA VOWEL SIGN SHORT E
        70845 == code || // Mc       TIRHUTA VOWEL SIGN SHORT O
        70847 <= code && code <= 70848 || // Mn   [2] TIRHUTA SIGN CANDRABINDU..TIRHUTA SIGN ANUSVARA
        70850 <= code && code <= 70851 || // Mn   [2] TIRHUTA SIGN VIRAMA..TIRHUTA SIGN NUKTA
        71087 == code || // Mc       SIDDHAM VOWEL SIGN AA
        71090 <= code && code <= 71093 || // Mn   [4] SIDDHAM VOWEL SIGN U..SIDDHAM VOWEL SIGN VOCALIC RR
        71100 <= code && code <= 71101 || // Mn   [2] SIDDHAM SIGN CANDRABINDU..SIDDHAM SIGN ANUSVARA
        71103 <= code && code <= 71104 || // Mn   [2] SIDDHAM SIGN VIRAMA..SIDDHAM SIGN NUKTA
        71132 <= code && code <= 71133 || // Mn   [2] SIDDHAM VOWEL SIGN ALTERNATE U..SIDDHAM VOWEL SIGN ALTERNATE UU
        71219 <= code && code <= 71226 || // Mn   [8] MODI VOWEL SIGN U..MODI VOWEL SIGN AI
        71229 == code || // Mn       MODI SIGN ANUSVARA
        71231 <= code && code <= 71232 || // Mn   [2] MODI SIGN VIRAMA..MODI SIGN ARDHACANDRA
        71339 == code || // Mn       TAKRI SIGN ANUSVARA
        71341 == code || // Mn       TAKRI VOWEL SIGN AA
        71344 <= code && code <= 71349 || // Mn   [6] TAKRI VOWEL SIGN U..TAKRI VOWEL SIGN AU
        71351 == code || // Mn       TAKRI SIGN NUKTA
        71453 <= code && code <= 71455 || // Mn   [3] AHOM CONSONANT SIGN MEDIAL LA..AHOM CONSONANT SIGN MEDIAL LIGATING RA
        71458 <= code && code <= 71461 || // Mn   [4] AHOM VOWEL SIGN I..AHOM VOWEL SIGN UU
        71463 <= code && code <= 71467 || // Mn   [5] AHOM VOWEL SIGN AW..AHOM SIGN KILLER
        72193 <= code && code <= 72198 || // Mn   [6] ZANABAZAR SQUARE VOWEL SIGN I..ZANABAZAR SQUARE VOWEL SIGN O
        72201 <= code && code <= 72202 || // Mn   [2] ZANABAZAR SQUARE VOWEL SIGN REVERSED I..ZANABAZAR SQUARE VOWEL LENGTH MARK
        72243 <= code && code <= 72248 || // Mn   [6] ZANABAZAR SQUARE FINAL CONSONANT MARK..ZANABAZAR SQUARE SIGN ANUSVARA
        72251 <= code && code <= 72254 || // Mn   [4] ZANABAZAR SQUARE CLUSTER-FINAL LETTER YA..ZANABAZAR SQUARE CLUSTER-FINAL LETTER VA
        72263 == code || // Mn       ZANABAZAR SQUARE SUBJOINER
        72273 <= code && code <= 72278 || // Mn   [6] SOYOMBO VOWEL SIGN I..SOYOMBO VOWEL SIGN OE
        72281 <= code && code <= 72283 || // Mn   [3] SOYOMBO VOWEL SIGN VOCALIC R..SOYOMBO VOWEL LENGTH MARK
        72330 <= code && code <= 72342 || // Mn  [13] SOYOMBO FINAL CONSONANT SIGN G..SOYOMBO SIGN ANUSVARA
        72344 <= code && code <= 72345 || // Mn   [2] SOYOMBO GEMINATION MARK..SOYOMBO SUBJOINER
        72752 <= code && code <= 72758 || // Mn   [7] BHAIKSUKI VOWEL SIGN I..BHAIKSUKI VOWEL SIGN VOCALIC L
        72760 <= code && code <= 72765 || // Mn   [6] BHAIKSUKI VOWEL SIGN E..BHAIKSUKI SIGN ANUSVARA
        72767 == code || // Mn       BHAIKSUKI SIGN VIRAMA
        72850 <= code && code <= 72871 || // Mn  [22] MARCHEN SUBJOINED LETTER KA..MARCHEN SUBJOINED LETTER ZA
        72874 <= code && code <= 72880 || // Mn   [7] MARCHEN SUBJOINED LETTER RA..MARCHEN VOWEL SIGN AA
        72882 <= code && code <= 72883 || // Mn   [2] MARCHEN VOWEL SIGN U..MARCHEN VOWEL SIGN E
        72885 <= code && code <= 72886 || // Mn   [2] MARCHEN SIGN ANUSVARA..MARCHEN SIGN CANDRABINDU
        73009 <= code && code <= 73014 || // Mn   [6] MASARAM GONDI VOWEL SIGN AA..MASARAM GONDI VOWEL SIGN VOCALIC R
        73018 == code || // Mn       MASARAM GONDI VOWEL SIGN E
        73020 <= code && code <= 73021 || // Mn   [2] MASARAM GONDI VOWEL SIGN AI..MASARAM GONDI VOWEL SIGN O
        73023 <= code && code <= 73029 || // Mn   [7] MASARAM GONDI VOWEL SIGN AU..MASARAM GONDI VIRAMA
        73031 == code || // Mn       MASARAM GONDI RA-KARA
        92912 <= code && code <= 92916 || // Mn   [5] BASSA VAH COMBINING HIGH TONE..BASSA VAH COMBINING HIGH-LOW TONE
        92976 <= code && code <= 92982 || // Mn   [7] PAHAWH HMONG MARK CIM TUB..PAHAWH HMONG MARK CIM TAUM
        94095 <= code && code <= 94098 || // Mn   [4] MIAO TONE RIGHT..MIAO TONE BELOW
        113821 <= code && code <= 113822 || // Mn   [2] DUPLOYAN THICK LETTER SELECTOR..DUPLOYAN DOUBLE MARK
        119141 == code || // Mc       MUSICAL SYMBOL COMBINING STEM
        119143 <= code && code <= 119145 || // Mn   [3] MUSICAL SYMBOL COMBINING TREMOLO-1..MUSICAL SYMBOL COMBINING TREMOLO-3
        119150 <= code && code <= 119154 || // Mc   [5] MUSICAL SYMBOL COMBINING FLAG-1..MUSICAL SYMBOL COMBINING FLAG-5
        119163 <= code && code <= 119170 || // Mn   [8] MUSICAL SYMBOL COMBINING ACCENT..MUSICAL SYMBOL COMBINING LOURE
        119173 <= code && code <= 119179 || // Mn   [7] MUSICAL SYMBOL COMBINING DOIT..MUSICAL SYMBOL COMBINING TRIPLE TONGUE
        119210 <= code && code <= 119213 || // Mn   [4] MUSICAL SYMBOL COMBINING DOWN BOW..MUSICAL SYMBOL COMBINING SNAP PIZZICATO
        119362 <= code && code <= 119364 || // Mn   [3] COMBINING GREEK MUSICAL TRISEME..COMBINING GREEK MUSICAL PENTASEME
        121344 <= code && code <= 121398 || // Mn  [55] SIGNWRITING HEAD RIM..SIGNWRITING AIR SUCKING IN
        121403 <= code && code <= 121452 || // Mn  [50] SIGNWRITING MOUTH CLOSED NEUTRAL..SIGNWRITING EXCITEMENT
        121461 == code || // Mn       SIGNWRITING UPPER BODY TILTING FROM HIP JOINTS
        121476 == code || // Mn       SIGNWRITING LOCATION HEAD NECK
        121499 <= code && code <= 121503 || // Mn   [5] SIGNWRITING FILL MODIFIER-2..SIGNWRITING FILL MODIFIER-6
        121505 <= code && code <= 121519 || // Mn  [15] SIGNWRITING ROTATION MODIFIER-2..SIGNWRITING ROTATION MODIFIER-16
        122880 <= code && code <= 122886 || // Mn   [7] COMBINING GLAGOLITIC LETTER AZU..COMBINING GLAGOLITIC LETTER ZHIVETE
        122888 <= code && code <= 122904 || // Mn  [17] COMBINING GLAGOLITIC LETTER ZEMLJA..COMBINING GLAGOLITIC LETTER HERU
        122907 <= code && code <= 122913 || // Mn   [7] COMBINING GLAGOLITIC LETTER SHTA..COMBINING GLAGOLITIC LETTER YATI
        122915 <= code && code <= 122916 || // Mn   [2] COMBINING GLAGOLITIC LETTER YU..COMBINING GLAGOLITIC LETTER SMALL YUS
        122918 <= code && code <= 122922 || // Mn   [5] COMBINING GLAGOLITIC LETTER YO..COMBINING GLAGOLITIC LETTER FITA
        125136 <= code && code <= 125142 || // Mn   [7] MENDE KIKAKUI COMBINING NUMBER TEENS..MENDE KIKAKUI COMBINING NUMBER MILLIONS
        125252 <= code && code <= 125258 || // Mn   [7] ADLAM ALIF LENGTHENER..ADLAM NUKTA
        917536 <= code && code <= 917631 || // Cf  [96] TAG SPACE..CANCEL TAG
        917760 <= code && code <= 917999) {
          return Extend;
        }
        if (127462 <= code && code <= 127487) {
          return Regional_Indicator;
        }
        if (2307 == code || // Mc       DEVANAGARI SIGN VISARGA
        2363 == code || // Mc       DEVANAGARI VOWEL SIGN OOE
        2366 <= code && code <= 2368 || // Mc   [3] DEVANAGARI VOWEL SIGN AA..DEVANAGARI VOWEL SIGN II
        2377 <= code && code <= 2380 || // Mc   [4] DEVANAGARI VOWEL SIGN CANDRA O..DEVANAGARI VOWEL SIGN AU
        2382 <= code && code <= 2383 || // Mc   [2] DEVANAGARI VOWEL SIGN PRISHTHAMATRA E..DEVANAGARI VOWEL SIGN AW
        2434 <= code && code <= 2435 || // Mc   [2] BENGALI SIGN ANUSVARA..BENGALI SIGN VISARGA
        2495 <= code && code <= 2496 || // Mc   [2] BENGALI VOWEL SIGN I..BENGALI VOWEL SIGN II
        2503 <= code && code <= 2504 || // Mc   [2] BENGALI VOWEL SIGN E..BENGALI VOWEL SIGN AI
        2507 <= code && code <= 2508 || // Mc   [2] BENGALI VOWEL SIGN O..BENGALI VOWEL SIGN AU
        2563 == code || // Mc       GURMUKHI SIGN VISARGA
        2622 <= code && code <= 2624 || // Mc   [3] GURMUKHI VOWEL SIGN AA..GURMUKHI VOWEL SIGN II
        2691 == code || // Mc       GUJARATI SIGN VISARGA
        2750 <= code && code <= 2752 || // Mc   [3] GUJARATI VOWEL SIGN AA..GUJARATI VOWEL SIGN II
        2761 == code || // Mc       GUJARATI VOWEL SIGN CANDRA O
        2763 <= code && code <= 2764 || // Mc   [2] GUJARATI VOWEL SIGN O..GUJARATI VOWEL SIGN AU
        2818 <= code && code <= 2819 || // Mc   [2] ORIYA SIGN ANUSVARA..ORIYA SIGN VISARGA
        2880 == code || // Mc       ORIYA VOWEL SIGN II
        2887 <= code && code <= 2888 || // Mc   [2] ORIYA VOWEL SIGN E..ORIYA VOWEL SIGN AI
        2891 <= code && code <= 2892 || // Mc   [2] ORIYA VOWEL SIGN O..ORIYA VOWEL SIGN AU
        3007 == code || // Mc       TAMIL VOWEL SIGN I
        3009 <= code && code <= 3010 || // Mc   [2] TAMIL VOWEL SIGN U..TAMIL VOWEL SIGN UU
        3014 <= code && code <= 3016 || // Mc   [3] TAMIL VOWEL SIGN E..TAMIL VOWEL SIGN AI
        3018 <= code && code <= 3020 || // Mc   [3] TAMIL VOWEL SIGN O..TAMIL VOWEL SIGN AU
        3073 <= code && code <= 3075 || // Mc   [3] TELUGU SIGN CANDRABINDU..TELUGU SIGN VISARGA
        3137 <= code && code <= 3140 || // Mc   [4] TELUGU VOWEL SIGN U..TELUGU VOWEL SIGN VOCALIC RR
        3202 <= code && code <= 3203 || // Mc   [2] KANNADA SIGN ANUSVARA..KANNADA SIGN VISARGA
        3262 == code || // Mc       KANNADA VOWEL SIGN AA
        3264 <= code && code <= 3265 || // Mc   [2] KANNADA VOWEL SIGN II..KANNADA VOWEL SIGN U
        3267 <= code && code <= 3268 || // Mc   [2] KANNADA VOWEL SIGN VOCALIC R..KANNADA VOWEL SIGN VOCALIC RR
        3271 <= code && code <= 3272 || // Mc   [2] KANNADA VOWEL SIGN EE..KANNADA VOWEL SIGN AI
        3274 <= code && code <= 3275 || // Mc   [2] KANNADA VOWEL SIGN O..KANNADA VOWEL SIGN OO
        3330 <= code && code <= 3331 || // Mc   [2] MALAYALAM SIGN ANUSVARA..MALAYALAM SIGN VISARGA
        3391 <= code && code <= 3392 || // Mc   [2] MALAYALAM VOWEL SIGN I..MALAYALAM VOWEL SIGN II
        3398 <= code && code <= 3400 || // Mc   [3] MALAYALAM VOWEL SIGN E..MALAYALAM VOWEL SIGN AI
        3402 <= code && code <= 3404 || // Mc   [3] MALAYALAM VOWEL SIGN O..MALAYALAM VOWEL SIGN AU
        3458 <= code && code <= 3459 || // Mc   [2] SINHALA SIGN ANUSVARAYA..SINHALA SIGN VISARGAYA
        3536 <= code && code <= 3537 || // Mc   [2] SINHALA VOWEL SIGN KETTI AEDA-PILLA..SINHALA VOWEL SIGN DIGA AEDA-PILLA
        3544 <= code && code <= 3550 || // Mc   [7] SINHALA VOWEL SIGN GAETTA-PILLA..SINHALA VOWEL SIGN KOMBUVA HAA GAYANUKITTA
        3570 <= code && code <= 3571 || // Mc   [2] SINHALA VOWEL SIGN DIGA GAETTA-PILLA..SINHALA VOWEL SIGN DIGA GAYANUKITTA
        3635 == code || // Lo       THAI CHARACTER SARA AM
        3763 == code || // Lo       LAO VOWEL SIGN AM
        3902 <= code && code <= 3903 || // Mc   [2] TIBETAN SIGN YAR TSHES..TIBETAN SIGN MAR TSHES
        3967 == code || // Mc       TIBETAN SIGN RNAM BCAD
        4145 == code || // Mc       MYANMAR VOWEL SIGN E
        4155 <= code && code <= 4156 || // Mc   [2] MYANMAR CONSONANT SIGN MEDIAL YA..MYANMAR CONSONANT SIGN MEDIAL RA
        4182 <= code && code <= 4183 || // Mc   [2] MYANMAR VOWEL SIGN VOCALIC R..MYANMAR VOWEL SIGN VOCALIC RR
        4228 == code || // Mc       MYANMAR VOWEL SIGN SHAN E
        6070 == code || // Mc       KHMER VOWEL SIGN AA
        6078 <= code && code <= 6085 || // Mc   [8] KHMER VOWEL SIGN OE..KHMER VOWEL SIGN AU
        6087 <= code && code <= 6088 || // Mc   [2] KHMER SIGN REAHMUK..KHMER SIGN YUUKALEAPINTU
        6435 <= code && code <= 6438 || // Mc   [4] LIMBU VOWEL SIGN EE..LIMBU VOWEL SIGN AU
        6441 <= code && code <= 6443 || // Mc   [3] LIMBU SUBJOINED LETTER YA..LIMBU SUBJOINED LETTER WA
        6448 <= code && code <= 6449 || // Mc   [2] LIMBU SMALL LETTER KA..LIMBU SMALL LETTER NGA
        6451 <= code && code <= 6456 || // Mc   [6] LIMBU SMALL LETTER TA..LIMBU SMALL LETTER LA
        6681 <= code && code <= 6682 || // Mc   [2] BUGINESE VOWEL SIGN E..BUGINESE VOWEL SIGN O
        6741 == code || // Mc       TAI THAM CONSONANT SIGN MEDIAL RA
        6743 == code || // Mc       TAI THAM CONSONANT SIGN LA TANG LAI
        6765 <= code && code <= 6770 || // Mc   [6] TAI THAM VOWEL SIGN OY..TAI THAM VOWEL SIGN THAM AI
        6916 == code || // Mc       BALINESE SIGN BISAH
        6965 == code || // Mc       BALINESE VOWEL SIGN TEDUNG
        6971 == code || // Mc       BALINESE VOWEL SIGN RA REPA TEDUNG
        6973 <= code && code <= 6977 || // Mc   [5] BALINESE VOWEL SIGN LA LENGA TEDUNG..BALINESE VOWEL SIGN TALING REPA TEDUNG
        6979 <= code && code <= 6980 || // Mc   [2] BALINESE VOWEL SIGN PEPET TEDUNG..BALINESE ADEG ADEG
        7042 == code || // Mc       SUNDANESE SIGN PANGWISAD
        7073 == code || // Mc       SUNDANESE CONSONANT SIGN PAMINGKAL
        7078 <= code && code <= 7079 || // Mc   [2] SUNDANESE VOWEL SIGN PANAELAENG..SUNDANESE VOWEL SIGN PANOLONG
        7082 == code || // Mc       SUNDANESE SIGN PAMAAEH
        7143 == code || // Mc       BATAK VOWEL SIGN E
        7146 <= code && code <= 7148 || // Mc   [3] BATAK VOWEL SIGN I..BATAK VOWEL SIGN O
        7150 == code || // Mc       BATAK VOWEL SIGN U
        7154 <= code && code <= 7155 || // Mc   [2] BATAK PANGOLAT..BATAK PANONGONAN
        7204 <= code && code <= 7211 || // Mc   [8] LEPCHA SUBJOINED LETTER YA..LEPCHA VOWEL SIGN UU
        7220 <= code && code <= 7221 || // Mc   [2] LEPCHA CONSONANT SIGN NYIN-DO..LEPCHA CONSONANT SIGN KANG
        7393 == code || // Mc       VEDIC TONE ATHARVAVEDIC INDEPENDENT SVARITA
        7410 <= code && code <= 7411 || // Mc   [2] VEDIC SIGN ARDHAVISARGA..VEDIC SIGN ROTATED ARDHAVISARGA
        7415 == code || // Mc       VEDIC SIGN ATIKRAMA
        43043 <= code && code <= 43044 || // Mc   [2] SYLOTI NAGRI VOWEL SIGN A..SYLOTI NAGRI VOWEL SIGN I
        43047 == code || // Mc       SYLOTI NAGRI VOWEL SIGN OO
        43136 <= code && code <= 43137 || // Mc   [2] SAURASHTRA SIGN ANUSVARA..SAURASHTRA SIGN VISARGA
        43188 <= code && code <= 43203 || // Mc  [16] SAURASHTRA CONSONANT SIGN HAARU..SAURASHTRA VOWEL SIGN AU
        43346 <= code && code <= 43347 || // Mc   [2] REJANG CONSONANT SIGN H..REJANG VIRAMA
        43395 == code || // Mc       JAVANESE SIGN WIGNYAN
        43444 <= code && code <= 43445 || // Mc   [2] JAVANESE VOWEL SIGN TARUNG..JAVANESE VOWEL SIGN TOLONG
        43450 <= code && code <= 43451 || // Mc   [2] JAVANESE VOWEL SIGN TALING..JAVANESE VOWEL SIGN DIRGA MURE
        43453 <= code && code <= 43456 || // Mc   [4] JAVANESE CONSONANT SIGN KERET..JAVANESE PANGKON
        43567 <= code && code <= 43568 || // Mc   [2] CHAM VOWEL SIGN O..CHAM VOWEL SIGN AI
        43571 <= code && code <= 43572 || // Mc   [2] CHAM CONSONANT SIGN YA..CHAM CONSONANT SIGN RA
        43597 == code || // Mc       CHAM CONSONANT SIGN FINAL H
        43755 == code || // Mc       MEETEI MAYEK VOWEL SIGN II
        43758 <= code && code <= 43759 || // Mc   [2] MEETEI MAYEK VOWEL SIGN AU..MEETEI MAYEK VOWEL SIGN AAU
        43765 == code || // Mc       MEETEI MAYEK VOWEL SIGN VISARGA
        44003 <= code && code <= 44004 || // Mc   [2] MEETEI MAYEK VOWEL SIGN ONAP..MEETEI MAYEK VOWEL SIGN INAP
        44006 <= code && code <= 44007 || // Mc   [2] MEETEI MAYEK VOWEL SIGN YENAP..MEETEI MAYEK VOWEL SIGN SOUNAP
        44009 <= code && code <= 44010 || // Mc   [2] MEETEI MAYEK VOWEL SIGN CHEINAP..MEETEI MAYEK VOWEL SIGN NUNG
        44012 == code || // Mc       MEETEI MAYEK LUM IYEK
        69632 == code || // Mc       BRAHMI SIGN CANDRABINDU
        69634 == code || // Mc       BRAHMI SIGN VISARGA
        69762 == code || // Mc       KAITHI SIGN VISARGA
        69808 <= code && code <= 69810 || // Mc   [3] KAITHI VOWEL SIGN AA..KAITHI VOWEL SIGN II
        69815 <= code && code <= 69816 || // Mc   [2] KAITHI VOWEL SIGN O..KAITHI VOWEL SIGN AU
        69932 == code || // Mc       CHAKMA VOWEL SIGN E
        70018 == code || // Mc       SHARADA SIGN VISARGA
        70067 <= code && code <= 70069 || // Mc   [3] SHARADA VOWEL SIGN AA..SHARADA VOWEL SIGN II
        70079 <= code && code <= 70080 || // Mc   [2] SHARADA VOWEL SIGN AU..SHARADA SIGN VIRAMA
        70188 <= code && code <= 70190 || // Mc   [3] KHOJKI VOWEL SIGN AA..KHOJKI VOWEL SIGN II
        70194 <= code && code <= 70195 || // Mc   [2] KHOJKI VOWEL SIGN O..KHOJKI VOWEL SIGN AU
        70197 == code || // Mc       KHOJKI SIGN VIRAMA
        70368 <= code && code <= 70370 || // Mc   [3] KHUDAWADI VOWEL SIGN AA..KHUDAWADI VOWEL SIGN II
        70402 <= code && code <= 70403 || // Mc   [2] GRANTHA SIGN ANUSVARA..GRANTHA SIGN VISARGA
        70463 == code || // Mc       GRANTHA VOWEL SIGN I
        70465 <= code && code <= 70468 || // Mc   [4] GRANTHA VOWEL SIGN U..GRANTHA VOWEL SIGN VOCALIC RR
        70471 <= code && code <= 70472 || // Mc   [2] GRANTHA VOWEL SIGN EE..GRANTHA VOWEL SIGN AI
        70475 <= code && code <= 70477 || // Mc   [3] GRANTHA VOWEL SIGN OO..GRANTHA SIGN VIRAMA
        70498 <= code && code <= 70499 || // Mc   [2] GRANTHA VOWEL SIGN VOCALIC L..GRANTHA VOWEL SIGN VOCALIC LL
        70709 <= code && code <= 70711 || // Mc   [3] NEWA VOWEL SIGN AA..NEWA VOWEL SIGN II
        70720 <= code && code <= 70721 || // Mc   [2] NEWA VOWEL SIGN O..NEWA VOWEL SIGN AU
        70725 == code || // Mc       NEWA SIGN VISARGA
        70833 <= code && code <= 70834 || // Mc   [2] TIRHUTA VOWEL SIGN I..TIRHUTA VOWEL SIGN II
        70841 == code || // Mc       TIRHUTA VOWEL SIGN E
        70843 <= code && code <= 70844 || // Mc   [2] TIRHUTA VOWEL SIGN AI..TIRHUTA VOWEL SIGN O
        70846 == code || // Mc       TIRHUTA VOWEL SIGN AU
        70849 == code || // Mc       TIRHUTA SIGN VISARGA
        71088 <= code && code <= 71089 || // Mc   [2] SIDDHAM VOWEL SIGN I..SIDDHAM VOWEL SIGN II
        71096 <= code && code <= 71099 || // Mc   [4] SIDDHAM VOWEL SIGN E..SIDDHAM VOWEL SIGN AU
        71102 == code || // Mc       SIDDHAM SIGN VISARGA
        71216 <= code && code <= 71218 || // Mc   [3] MODI VOWEL SIGN AA..MODI VOWEL SIGN II
        71227 <= code && code <= 71228 || // Mc   [2] MODI VOWEL SIGN O..MODI VOWEL SIGN AU
        71230 == code || // Mc       MODI SIGN VISARGA
        71340 == code || // Mc       TAKRI SIGN VISARGA
        71342 <= code && code <= 71343 || // Mc   [2] TAKRI VOWEL SIGN I..TAKRI VOWEL SIGN II
        71350 == code || // Mc       TAKRI SIGN VIRAMA
        71456 <= code && code <= 71457 || // Mc   [2] AHOM VOWEL SIGN A..AHOM VOWEL SIGN AA
        71462 == code || // Mc       AHOM VOWEL SIGN E
        72199 <= code && code <= 72200 || // Mc   [2] ZANABAZAR SQUARE VOWEL SIGN AI..ZANABAZAR SQUARE VOWEL SIGN AU
        72249 == code || // Mc       ZANABAZAR SQUARE SIGN VISARGA
        72279 <= code && code <= 72280 || // Mc   [2] SOYOMBO VOWEL SIGN AI..SOYOMBO VOWEL SIGN AU
        72343 == code || // Mc       SOYOMBO SIGN VISARGA
        72751 == code || // Mc       BHAIKSUKI VOWEL SIGN AA
        72766 == code || // Mc       BHAIKSUKI SIGN VISARGA
        72873 == code || // Mc       MARCHEN SUBJOINED LETTER YA
        72881 == code || // Mc       MARCHEN VOWEL SIGN I
        72884 == code || // Mc       MARCHEN VOWEL SIGN O
        94033 <= code && code <= 94078 || // Mc  [46] MIAO SIGN ASPIRATION..MIAO VOWEL SIGN NG
        119142 == code || // Mc       MUSICAL SYMBOL COMBINING SPRECHGESANG STEM
        119149 == code) {
          return SpacingMark;
        }
        if (4352 <= code && code <= 4447 || // Lo  [96] HANGUL CHOSEONG KIYEOK..HANGUL CHOSEONG FILLER
        43360 <= code && code <= 43388) {
          return L2;
        }
        if (4448 <= code && code <= 4519 || // Lo  [72] HANGUL JUNGSEONG FILLER..HANGUL JUNGSEONG O-YAE
        55216 <= code && code <= 55238) {
          return V;
        }
        if (4520 <= code && code <= 4607 || // Lo  [88] HANGUL JONGSEONG KIYEOK..HANGUL JONGSEONG SSANGNIEUN
        55243 <= code && code <= 55291) {
          return T2;
        }
        if (44032 == code || // Lo       HANGUL SYLLABLE GA
        44060 == code || // Lo       HANGUL SYLLABLE GAE
        44088 == code || // Lo       HANGUL SYLLABLE GYA
        44116 == code || // Lo       HANGUL SYLLABLE GYAE
        44144 == code || // Lo       HANGUL SYLLABLE GEO
        44172 == code || // Lo       HANGUL SYLLABLE GE
        44200 == code || // Lo       HANGUL SYLLABLE GYEO
        44228 == code || // Lo       HANGUL SYLLABLE GYE
        44256 == code || // Lo       HANGUL SYLLABLE GO
        44284 == code || // Lo       HANGUL SYLLABLE GWA
        44312 == code || // Lo       HANGUL SYLLABLE GWAE
        44340 == code || // Lo       HANGUL SYLLABLE GOE
        44368 == code || // Lo       HANGUL SYLLABLE GYO
        44396 == code || // Lo       HANGUL SYLLABLE GU
        44424 == code || // Lo       HANGUL SYLLABLE GWEO
        44452 == code || // Lo       HANGUL SYLLABLE GWE
        44480 == code || // Lo       HANGUL SYLLABLE GWI
        44508 == code || // Lo       HANGUL SYLLABLE GYU
        44536 == code || // Lo       HANGUL SYLLABLE GEU
        44564 == code || // Lo       HANGUL SYLLABLE GYI
        44592 == code || // Lo       HANGUL SYLLABLE GI
        44620 == code || // Lo       HANGUL SYLLABLE GGA
        44648 == code || // Lo       HANGUL SYLLABLE GGAE
        44676 == code || // Lo       HANGUL SYLLABLE GGYA
        44704 == code || // Lo       HANGUL SYLLABLE GGYAE
        44732 == code || // Lo       HANGUL SYLLABLE GGEO
        44760 == code || // Lo       HANGUL SYLLABLE GGE
        44788 == code || // Lo       HANGUL SYLLABLE GGYEO
        44816 == code || // Lo       HANGUL SYLLABLE GGYE
        44844 == code || // Lo       HANGUL SYLLABLE GGO
        44872 == code || // Lo       HANGUL SYLLABLE GGWA
        44900 == code || // Lo       HANGUL SYLLABLE GGWAE
        44928 == code || // Lo       HANGUL SYLLABLE GGOE
        44956 == code || // Lo       HANGUL SYLLABLE GGYO
        44984 == code || // Lo       HANGUL SYLLABLE GGU
        45012 == code || // Lo       HANGUL SYLLABLE GGWEO
        45040 == code || // Lo       HANGUL SYLLABLE GGWE
        45068 == code || // Lo       HANGUL SYLLABLE GGWI
        45096 == code || // Lo       HANGUL SYLLABLE GGYU
        45124 == code || // Lo       HANGUL SYLLABLE GGEU
        45152 == code || // Lo       HANGUL SYLLABLE GGYI
        45180 == code || // Lo       HANGUL SYLLABLE GGI
        45208 == code || // Lo       HANGUL SYLLABLE NA
        45236 == code || // Lo       HANGUL SYLLABLE NAE
        45264 == code || // Lo       HANGUL SYLLABLE NYA
        45292 == code || // Lo       HANGUL SYLLABLE NYAE
        45320 == code || // Lo       HANGUL SYLLABLE NEO
        45348 == code || // Lo       HANGUL SYLLABLE NE
        45376 == code || // Lo       HANGUL SYLLABLE NYEO
        45404 == code || // Lo       HANGUL SYLLABLE NYE
        45432 == code || // Lo       HANGUL SYLLABLE NO
        45460 == code || // Lo       HANGUL SYLLABLE NWA
        45488 == code || // Lo       HANGUL SYLLABLE NWAE
        45516 == code || // Lo       HANGUL SYLLABLE NOE
        45544 == code || // Lo       HANGUL SYLLABLE NYO
        45572 == code || // Lo       HANGUL SYLLABLE NU
        45600 == code || // Lo       HANGUL SYLLABLE NWEO
        45628 == code || // Lo       HANGUL SYLLABLE NWE
        45656 == code || // Lo       HANGUL SYLLABLE NWI
        45684 == code || // Lo       HANGUL SYLLABLE NYU
        45712 == code || // Lo       HANGUL SYLLABLE NEU
        45740 == code || // Lo       HANGUL SYLLABLE NYI
        45768 == code || // Lo       HANGUL SYLLABLE NI
        45796 == code || // Lo       HANGUL SYLLABLE DA
        45824 == code || // Lo       HANGUL SYLLABLE DAE
        45852 == code || // Lo       HANGUL SYLLABLE DYA
        45880 == code || // Lo       HANGUL SYLLABLE DYAE
        45908 == code || // Lo       HANGUL SYLLABLE DEO
        45936 == code || // Lo       HANGUL SYLLABLE DE
        45964 == code || // Lo       HANGUL SYLLABLE DYEO
        45992 == code || // Lo       HANGUL SYLLABLE DYE
        46020 == code || // Lo       HANGUL SYLLABLE DO
        46048 == code || // Lo       HANGUL SYLLABLE DWA
        46076 == code || // Lo       HANGUL SYLLABLE DWAE
        46104 == code || // Lo       HANGUL SYLLABLE DOE
        46132 == code || // Lo       HANGUL SYLLABLE DYO
        46160 == code || // Lo       HANGUL SYLLABLE DU
        46188 == code || // Lo       HANGUL SYLLABLE DWEO
        46216 == code || // Lo       HANGUL SYLLABLE DWE
        46244 == code || // Lo       HANGUL SYLLABLE DWI
        46272 == code || // Lo       HANGUL SYLLABLE DYU
        46300 == code || // Lo       HANGUL SYLLABLE DEU
        46328 == code || // Lo       HANGUL SYLLABLE DYI
        46356 == code || // Lo       HANGUL SYLLABLE DI
        46384 == code || // Lo       HANGUL SYLLABLE DDA
        46412 == code || // Lo       HANGUL SYLLABLE DDAE
        46440 == code || // Lo       HANGUL SYLLABLE DDYA
        46468 == code || // Lo       HANGUL SYLLABLE DDYAE
        46496 == code || // Lo       HANGUL SYLLABLE DDEO
        46524 == code || // Lo       HANGUL SYLLABLE DDE
        46552 == code || // Lo       HANGUL SYLLABLE DDYEO
        46580 == code || // Lo       HANGUL SYLLABLE DDYE
        46608 == code || // Lo       HANGUL SYLLABLE DDO
        46636 == code || // Lo       HANGUL SYLLABLE DDWA
        46664 == code || // Lo       HANGUL SYLLABLE DDWAE
        46692 == code || // Lo       HANGUL SYLLABLE DDOE
        46720 == code || // Lo       HANGUL SYLLABLE DDYO
        46748 == code || // Lo       HANGUL SYLLABLE DDU
        46776 == code || // Lo       HANGUL SYLLABLE DDWEO
        46804 == code || // Lo       HANGUL SYLLABLE DDWE
        46832 == code || // Lo       HANGUL SYLLABLE DDWI
        46860 == code || // Lo       HANGUL SYLLABLE DDYU
        46888 == code || // Lo       HANGUL SYLLABLE DDEU
        46916 == code || // Lo       HANGUL SYLLABLE DDYI
        46944 == code || // Lo       HANGUL SYLLABLE DDI
        46972 == code || // Lo       HANGUL SYLLABLE RA
        47e3 == code || // Lo       HANGUL SYLLABLE RAE
        47028 == code || // Lo       HANGUL SYLLABLE RYA
        47056 == code || // Lo       HANGUL SYLLABLE RYAE
        47084 == code || // Lo       HANGUL SYLLABLE REO
        47112 == code || // Lo       HANGUL SYLLABLE RE
        47140 == code || // Lo       HANGUL SYLLABLE RYEO
        47168 == code || // Lo       HANGUL SYLLABLE RYE
        47196 == code || // Lo       HANGUL SYLLABLE RO
        47224 == code || // Lo       HANGUL SYLLABLE RWA
        47252 == code || // Lo       HANGUL SYLLABLE RWAE
        47280 == code || // Lo       HANGUL SYLLABLE ROE
        47308 == code || // Lo       HANGUL SYLLABLE RYO
        47336 == code || // Lo       HANGUL SYLLABLE RU
        47364 == code || // Lo       HANGUL SYLLABLE RWEO
        47392 == code || // Lo       HANGUL SYLLABLE RWE
        47420 == code || // Lo       HANGUL SYLLABLE RWI
        47448 == code || // Lo       HANGUL SYLLABLE RYU
        47476 == code || // Lo       HANGUL SYLLABLE REU
        47504 == code || // Lo       HANGUL SYLLABLE RYI
        47532 == code || // Lo       HANGUL SYLLABLE RI
        47560 == code || // Lo       HANGUL SYLLABLE MA
        47588 == code || // Lo       HANGUL SYLLABLE MAE
        47616 == code || // Lo       HANGUL SYLLABLE MYA
        47644 == code || // Lo       HANGUL SYLLABLE MYAE
        47672 == code || // Lo       HANGUL SYLLABLE MEO
        47700 == code || // Lo       HANGUL SYLLABLE ME
        47728 == code || // Lo       HANGUL SYLLABLE MYEO
        47756 == code || // Lo       HANGUL SYLLABLE MYE
        47784 == code || // Lo       HANGUL SYLLABLE MO
        47812 == code || // Lo       HANGUL SYLLABLE MWA
        47840 == code || // Lo       HANGUL SYLLABLE MWAE
        47868 == code || // Lo       HANGUL SYLLABLE MOE
        47896 == code || // Lo       HANGUL SYLLABLE MYO
        47924 == code || // Lo       HANGUL SYLLABLE MU
        47952 == code || // Lo       HANGUL SYLLABLE MWEO
        47980 == code || // Lo       HANGUL SYLLABLE MWE
        48008 == code || // Lo       HANGUL SYLLABLE MWI
        48036 == code || // Lo       HANGUL SYLLABLE MYU
        48064 == code || // Lo       HANGUL SYLLABLE MEU
        48092 == code || // Lo       HANGUL SYLLABLE MYI
        48120 == code || // Lo       HANGUL SYLLABLE MI
        48148 == code || // Lo       HANGUL SYLLABLE BA
        48176 == code || // Lo       HANGUL SYLLABLE BAE
        48204 == code || // Lo       HANGUL SYLLABLE BYA
        48232 == code || // Lo       HANGUL SYLLABLE BYAE
        48260 == code || // Lo       HANGUL SYLLABLE BEO
        48288 == code || // Lo       HANGUL SYLLABLE BE
        48316 == code || // Lo       HANGUL SYLLABLE BYEO
        48344 == code || // Lo       HANGUL SYLLABLE BYE
        48372 == code || // Lo       HANGUL SYLLABLE BO
        48400 == code || // Lo       HANGUL SYLLABLE BWA
        48428 == code || // Lo       HANGUL SYLLABLE BWAE
        48456 == code || // Lo       HANGUL SYLLABLE BOE
        48484 == code || // Lo       HANGUL SYLLABLE BYO
        48512 == code || // Lo       HANGUL SYLLABLE BU
        48540 == code || // Lo       HANGUL SYLLABLE BWEO
        48568 == code || // Lo       HANGUL SYLLABLE BWE
        48596 == code || // Lo       HANGUL SYLLABLE BWI
        48624 == code || // Lo       HANGUL SYLLABLE BYU
        48652 == code || // Lo       HANGUL SYLLABLE BEU
        48680 == code || // Lo       HANGUL SYLLABLE BYI
        48708 == code || // Lo       HANGUL SYLLABLE BI
        48736 == code || // Lo       HANGUL SYLLABLE BBA
        48764 == code || // Lo       HANGUL SYLLABLE BBAE
        48792 == code || // Lo       HANGUL SYLLABLE BBYA
        48820 == code || // Lo       HANGUL SYLLABLE BBYAE
        48848 == code || // Lo       HANGUL SYLLABLE BBEO
        48876 == code || // Lo       HANGUL SYLLABLE BBE
        48904 == code || // Lo       HANGUL SYLLABLE BBYEO
        48932 == code || // Lo       HANGUL SYLLABLE BBYE
        48960 == code || // Lo       HANGUL SYLLABLE BBO
        48988 == code || // Lo       HANGUL SYLLABLE BBWA
        49016 == code || // Lo       HANGUL SYLLABLE BBWAE
        49044 == code || // Lo       HANGUL SYLLABLE BBOE
        49072 == code || // Lo       HANGUL SYLLABLE BBYO
        49100 == code || // Lo       HANGUL SYLLABLE BBU
        49128 == code || // Lo       HANGUL SYLLABLE BBWEO
        49156 == code || // Lo       HANGUL SYLLABLE BBWE
        49184 == code || // Lo       HANGUL SYLLABLE BBWI
        49212 == code || // Lo       HANGUL SYLLABLE BBYU
        49240 == code || // Lo       HANGUL SYLLABLE BBEU
        49268 == code || // Lo       HANGUL SYLLABLE BBYI
        49296 == code || // Lo       HANGUL SYLLABLE BBI
        49324 == code || // Lo       HANGUL SYLLABLE SA
        49352 == code || // Lo       HANGUL SYLLABLE SAE
        49380 == code || // Lo       HANGUL SYLLABLE SYA
        49408 == code || // Lo       HANGUL SYLLABLE SYAE
        49436 == code || // Lo       HANGUL SYLLABLE SEO
        49464 == code || // Lo       HANGUL SYLLABLE SE
        49492 == code || // Lo       HANGUL SYLLABLE SYEO
        49520 == code || // Lo       HANGUL SYLLABLE SYE
        49548 == code || // Lo       HANGUL SYLLABLE SO
        49576 == code || // Lo       HANGUL SYLLABLE SWA
        49604 == code || // Lo       HANGUL SYLLABLE SWAE
        49632 == code || // Lo       HANGUL SYLLABLE SOE
        49660 == code || // Lo       HANGUL SYLLABLE SYO
        49688 == code || // Lo       HANGUL SYLLABLE SU
        49716 == code || // Lo       HANGUL SYLLABLE SWEO
        49744 == code || // Lo       HANGUL SYLLABLE SWE
        49772 == code || // Lo       HANGUL SYLLABLE SWI
        49800 == code || // Lo       HANGUL SYLLABLE SYU
        49828 == code || // Lo       HANGUL SYLLABLE SEU
        49856 == code || // Lo       HANGUL SYLLABLE SYI
        49884 == code || // Lo       HANGUL SYLLABLE SI
        49912 == code || // Lo       HANGUL SYLLABLE SSA
        49940 == code || // Lo       HANGUL SYLLABLE SSAE
        49968 == code || // Lo       HANGUL SYLLABLE SSYA
        49996 == code || // Lo       HANGUL SYLLABLE SSYAE
        50024 == code || // Lo       HANGUL SYLLABLE SSEO
        50052 == code || // Lo       HANGUL SYLLABLE SSE
        50080 == code || // Lo       HANGUL SYLLABLE SSYEO
        50108 == code || // Lo       HANGUL SYLLABLE SSYE
        50136 == code || // Lo       HANGUL SYLLABLE SSO
        50164 == code || // Lo       HANGUL SYLLABLE SSWA
        50192 == code || // Lo       HANGUL SYLLABLE SSWAE
        50220 == code || // Lo       HANGUL SYLLABLE SSOE
        50248 == code || // Lo       HANGUL SYLLABLE SSYO
        50276 == code || // Lo       HANGUL SYLLABLE SSU
        50304 == code || // Lo       HANGUL SYLLABLE SSWEO
        50332 == code || // Lo       HANGUL SYLLABLE SSWE
        50360 == code || // Lo       HANGUL SYLLABLE SSWI
        50388 == code || // Lo       HANGUL SYLLABLE SSYU
        50416 == code || // Lo       HANGUL SYLLABLE SSEU
        50444 == code || // Lo       HANGUL SYLLABLE SSYI
        50472 == code || // Lo       HANGUL SYLLABLE SSI
        50500 == code || // Lo       HANGUL SYLLABLE A
        50528 == code || // Lo       HANGUL SYLLABLE AE
        50556 == code || // Lo       HANGUL SYLLABLE YA
        50584 == code || // Lo       HANGUL SYLLABLE YAE
        50612 == code || // Lo       HANGUL SYLLABLE EO
        50640 == code || // Lo       HANGUL SYLLABLE E
        50668 == code || // Lo       HANGUL SYLLABLE YEO
        50696 == code || // Lo       HANGUL SYLLABLE YE
        50724 == code || // Lo       HANGUL SYLLABLE O
        50752 == code || // Lo       HANGUL SYLLABLE WA
        50780 == code || // Lo       HANGUL SYLLABLE WAE
        50808 == code || // Lo       HANGUL SYLLABLE OE
        50836 == code || // Lo       HANGUL SYLLABLE YO
        50864 == code || // Lo       HANGUL SYLLABLE U
        50892 == code || // Lo       HANGUL SYLLABLE WEO
        50920 == code || // Lo       HANGUL SYLLABLE WE
        50948 == code || // Lo       HANGUL SYLLABLE WI
        50976 == code || // Lo       HANGUL SYLLABLE YU
        51004 == code || // Lo       HANGUL SYLLABLE EU
        51032 == code || // Lo       HANGUL SYLLABLE YI
        51060 == code || // Lo       HANGUL SYLLABLE I
        51088 == code || // Lo       HANGUL SYLLABLE JA
        51116 == code || // Lo       HANGUL SYLLABLE JAE
        51144 == code || // Lo       HANGUL SYLLABLE JYA
        51172 == code || // Lo       HANGUL SYLLABLE JYAE
        51200 == code || // Lo       HANGUL SYLLABLE JEO
        51228 == code || // Lo       HANGUL SYLLABLE JE
        51256 == code || // Lo       HANGUL SYLLABLE JYEO
        51284 == code || // Lo       HANGUL SYLLABLE JYE
        51312 == code || // Lo       HANGUL SYLLABLE JO
        51340 == code || // Lo       HANGUL SYLLABLE JWA
        51368 == code || // Lo       HANGUL SYLLABLE JWAE
        51396 == code || // Lo       HANGUL SYLLABLE JOE
        51424 == code || // Lo       HANGUL SYLLABLE JYO
        51452 == code || // Lo       HANGUL SYLLABLE JU
        51480 == code || // Lo       HANGUL SYLLABLE JWEO
        51508 == code || // Lo       HANGUL SYLLABLE JWE
        51536 == code || // Lo       HANGUL SYLLABLE JWI
        51564 == code || // Lo       HANGUL SYLLABLE JYU
        51592 == code || // Lo       HANGUL SYLLABLE JEU
        51620 == code || // Lo       HANGUL SYLLABLE JYI
        51648 == code || // Lo       HANGUL SYLLABLE JI
        51676 == code || // Lo       HANGUL SYLLABLE JJA
        51704 == code || // Lo       HANGUL SYLLABLE JJAE
        51732 == code || // Lo       HANGUL SYLLABLE JJYA
        51760 == code || // Lo       HANGUL SYLLABLE JJYAE
        51788 == code || // Lo       HANGUL SYLLABLE JJEO
        51816 == code || // Lo       HANGUL SYLLABLE JJE
        51844 == code || // Lo       HANGUL SYLLABLE JJYEO
        51872 == code || // Lo       HANGUL SYLLABLE JJYE
        51900 == code || // Lo       HANGUL SYLLABLE JJO
        51928 == code || // Lo       HANGUL SYLLABLE JJWA
        51956 == code || // Lo       HANGUL SYLLABLE JJWAE
        51984 == code || // Lo       HANGUL SYLLABLE JJOE
        52012 == code || // Lo       HANGUL SYLLABLE JJYO
        52040 == code || // Lo       HANGUL SYLLABLE JJU
        52068 == code || // Lo       HANGUL SYLLABLE JJWEO
        52096 == code || // Lo       HANGUL SYLLABLE JJWE
        52124 == code || // Lo       HANGUL SYLLABLE JJWI
        52152 == code || // Lo       HANGUL SYLLABLE JJYU
        52180 == code || // Lo       HANGUL SYLLABLE JJEU
        52208 == code || // Lo       HANGUL SYLLABLE JJYI
        52236 == code || // Lo       HANGUL SYLLABLE JJI
        52264 == code || // Lo       HANGUL SYLLABLE CA
        52292 == code || // Lo       HANGUL SYLLABLE CAE
        52320 == code || // Lo       HANGUL SYLLABLE CYA
        52348 == code || // Lo       HANGUL SYLLABLE CYAE
        52376 == code || // Lo       HANGUL SYLLABLE CEO
        52404 == code || // Lo       HANGUL SYLLABLE CE
        52432 == code || // Lo       HANGUL SYLLABLE CYEO
        52460 == code || // Lo       HANGUL SYLLABLE CYE
        52488 == code || // Lo       HANGUL SYLLABLE CO
        52516 == code || // Lo       HANGUL SYLLABLE CWA
        52544 == code || // Lo       HANGUL SYLLABLE CWAE
        52572 == code || // Lo       HANGUL SYLLABLE COE
        52600 == code || // Lo       HANGUL SYLLABLE CYO
        52628 == code || // Lo       HANGUL SYLLABLE CU
        52656 == code || // Lo       HANGUL SYLLABLE CWEO
        52684 == code || // Lo       HANGUL SYLLABLE CWE
        52712 == code || // Lo       HANGUL SYLLABLE CWI
        52740 == code || // Lo       HANGUL SYLLABLE CYU
        52768 == code || // Lo       HANGUL SYLLABLE CEU
        52796 == code || // Lo       HANGUL SYLLABLE CYI
        52824 == code || // Lo       HANGUL SYLLABLE CI
        52852 == code || // Lo       HANGUL SYLLABLE KA
        52880 == code || // Lo       HANGUL SYLLABLE KAE
        52908 == code || // Lo       HANGUL SYLLABLE KYA
        52936 == code || // Lo       HANGUL SYLLABLE KYAE
        52964 == code || // Lo       HANGUL SYLLABLE KEO
        52992 == code || // Lo       HANGUL SYLLABLE KE
        53020 == code || // Lo       HANGUL SYLLABLE KYEO
        53048 == code || // Lo       HANGUL SYLLABLE KYE
        53076 == code || // Lo       HANGUL SYLLABLE KO
        53104 == code || // Lo       HANGUL SYLLABLE KWA
        53132 == code || // Lo       HANGUL SYLLABLE KWAE
        53160 == code || // Lo       HANGUL SYLLABLE KOE
        53188 == code || // Lo       HANGUL SYLLABLE KYO
        53216 == code || // Lo       HANGUL SYLLABLE KU
        53244 == code || // Lo       HANGUL SYLLABLE KWEO
        53272 == code || // Lo       HANGUL SYLLABLE KWE
        53300 == code || // Lo       HANGUL SYLLABLE KWI
        53328 == code || // Lo       HANGUL SYLLABLE KYU
        53356 == code || // Lo       HANGUL SYLLABLE KEU
        53384 == code || // Lo       HANGUL SYLLABLE KYI
        53412 == code || // Lo       HANGUL SYLLABLE KI
        53440 == code || // Lo       HANGUL SYLLABLE TA
        53468 == code || // Lo       HANGUL SYLLABLE TAE
        53496 == code || // Lo       HANGUL SYLLABLE TYA
        53524 == code || // Lo       HANGUL SYLLABLE TYAE
        53552 == code || // Lo       HANGUL SYLLABLE TEO
        53580 == code || // Lo       HANGUL SYLLABLE TE
        53608 == code || // Lo       HANGUL SYLLABLE TYEO
        53636 == code || // Lo       HANGUL SYLLABLE TYE
        53664 == code || // Lo       HANGUL SYLLABLE TO
        53692 == code || // Lo       HANGUL SYLLABLE TWA
        53720 == code || // Lo       HANGUL SYLLABLE TWAE
        53748 == code || // Lo       HANGUL SYLLABLE TOE
        53776 == code || // Lo       HANGUL SYLLABLE TYO
        53804 == code || // Lo       HANGUL SYLLABLE TU
        53832 == code || // Lo       HANGUL SYLLABLE TWEO
        53860 == code || // Lo       HANGUL SYLLABLE TWE
        53888 == code || // Lo       HANGUL SYLLABLE TWI
        53916 == code || // Lo       HANGUL SYLLABLE TYU
        53944 == code || // Lo       HANGUL SYLLABLE TEU
        53972 == code || // Lo       HANGUL SYLLABLE TYI
        54e3 == code || // Lo       HANGUL SYLLABLE TI
        54028 == code || // Lo       HANGUL SYLLABLE PA
        54056 == code || // Lo       HANGUL SYLLABLE PAE
        54084 == code || // Lo       HANGUL SYLLABLE PYA
        54112 == code || // Lo       HANGUL SYLLABLE PYAE
        54140 == code || // Lo       HANGUL SYLLABLE PEO
        54168 == code || // Lo       HANGUL SYLLABLE PE
        54196 == code || // Lo       HANGUL SYLLABLE PYEO
        54224 == code || // Lo       HANGUL SYLLABLE PYE
        54252 == code || // Lo       HANGUL SYLLABLE PO
        54280 == code || // Lo       HANGUL SYLLABLE PWA
        54308 == code || // Lo       HANGUL SYLLABLE PWAE
        54336 == code || // Lo       HANGUL SYLLABLE POE
        54364 == code || // Lo       HANGUL SYLLABLE PYO
        54392 == code || // Lo       HANGUL SYLLABLE PU
        54420 == code || // Lo       HANGUL SYLLABLE PWEO
        54448 == code || // Lo       HANGUL SYLLABLE PWE
        54476 == code || // Lo       HANGUL SYLLABLE PWI
        54504 == code || // Lo       HANGUL SYLLABLE PYU
        54532 == code || // Lo       HANGUL SYLLABLE PEU
        54560 == code || // Lo       HANGUL SYLLABLE PYI
        54588 == code || // Lo       HANGUL SYLLABLE PI
        54616 == code || // Lo       HANGUL SYLLABLE HA
        54644 == code || // Lo       HANGUL SYLLABLE HAE
        54672 == code || // Lo       HANGUL SYLLABLE HYA
        54700 == code || // Lo       HANGUL SYLLABLE HYAE
        54728 == code || // Lo       HANGUL SYLLABLE HEO
        54756 == code || // Lo       HANGUL SYLLABLE HE
        54784 == code || // Lo       HANGUL SYLLABLE HYEO
        54812 == code || // Lo       HANGUL SYLLABLE HYE
        54840 == code || // Lo       HANGUL SYLLABLE HO
        54868 == code || // Lo       HANGUL SYLLABLE HWA
        54896 == code || // Lo       HANGUL SYLLABLE HWAE
        54924 == code || // Lo       HANGUL SYLLABLE HOE
        54952 == code || // Lo       HANGUL SYLLABLE HYO
        54980 == code || // Lo       HANGUL SYLLABLE HU
        55008 == code || // Lo       HANGUL SYLLABLE HWEO
        55036 == code || // Lo       HANGUL SYLLABLE HWE
        55064 == code || // Lo       HANGUL SYLLABLE HWI
        55092 == code || // Lo       HANGUL SYLLABLE HYU
        55120 == code || // Lo       HANGUL SYLLABLE HEU
        55148 == code || // Lo       HANGUL SYLLABLE HYI
        55176 == code) {
          return LV;
        }
        if (44033 <= code && code <= 44059 || // Lo  [27] HANGUL SYLLABLE GAG..HANGUL SYLLABLE GAH
        44061 <= code && code <= 44087 || // Lo  [27] HANGUL SYLLABLE GAEG..HANGUL SYLLABLE GAEH
        44089 <= code && code <= 44115 || // Lo  [27] HANGUL SYLLABLE GYAG..HANGUL SYLLABLE GYAH
        44117 <= code && code <= 44143 || // Lo  [27] HANGUL SYLLABLE GYAEG..HANGUL SYLLABLE GYAEH
        44145 <= code && code <= 44171 || // Lo  [27] HANGUL SYLLABLE GEOG..HANGUL SYLLABLE GEOH
        44173 <= code && code <= 44199 || // Lo  [27] HANGUL SYLLABLE GEG..HANGUL SYLLABLE GEH
        44201 <= code && code <= 44227 || // Lo  [27] HANGUL SYLLABLE GYEOG..HANGUL SYLLABLE GYEOH
        44229 <= code && code <= 44255 || // Lo  [27] HANGUL SYLLABLE GYEG..HANGUL SYLLABLE GYEH
        44257 <= code && code <= 44283 || // Lo  [27] HANGUL SYLLABLE GOG..HANGUL SYLLABLE GOH
        44285 <= code && code <= 44311 || // Lo  [27] HANGUL SYLLABLE GWAG..HANGUL SYLLABLE GWAH
        44313 <= code && code <= 44339 || // Lo  [27] HANGUL SYLLABLE GWAEG..HANGUL SYLLABLE GWAEH
        44341 <= code && code <= 44367 || // Lo  [27] HANGUL SYLLABLE GOEG..HANGUL SYLLABLE GOEH
        44369 <= code && code <= 44395 || // Lo  [27] HANGUL SYLLABLE GYOG..HANGUL SYLLABLE GYOH
        44397 <= code && code <= 44423 || // Lo  [27] HANGUL SYLLABLE GUG..HANGUL SYLLABLE GUH
        44425 <= code && code <= 44451 || // Lo  [27] HANGUL SYLLABLE GWEOG..HANGUL SYLLABLE GWEOH
        44453 <= code && code <= 44479 || // Lo  [27] HANGUL SYLLABLE GWEG..HANGUL SYLLABLE GWEH
        44481 <= code && code <= 44507 || // Lo  [27] HANGUL SYLLABLE GWIG..HANGUL SYLLABLE GWIH
        44509 <= code && code <= 44535 || // Lo  [27] HANGUL SYLLABLE GYUG..HANGUL SYLLABLE GYUH
        44537 <= code && code <= 44563 || // Lo  [27] HANGUL SYLLABLE GEUG..HANGUL SYLLABLE GEUH
        44565 <= code && code <= 44591 || // Lo  [27] HANGUL SYLLABLE GYIG..HANGUL SYLLABLE GYIH
        44593 <= code && code <= 44619 || // Lo  [27] HANGUL SYLLABLE GIG..HANGUL SYLLABLE GIH
        44621 <= code && code <= 44647 || // Lo  [27] HANGUL SYLLABLE GGAG..HANGUL SYLLABLE GGAH
        44649 <= code && code <= 44675 || // Lo  [27] HANGUL SYLLABLE GGAEG..HANGUL SYLLABLE GGAEH
        44677 <= code && code <= 44703 || // Lo  [27] HANGUL SYLLABLE GGYAG..HANGUL SYLLABLE GGYAH
        44705 <= code && code <= 44731 || // Lo  [27] HANGUL SYLLABLE GGYAEG..HANGUL SYLLABLE GGYAEH
        44733 <= code && code <= 44759 || // Lo  [27] HANGUL SYLLABLE GGEOG..HANGUL SYLLABLE GGEOH
        44761 <= code && code <= 44787 || // Lo  [27] HANGUL SYLLABLE GGEG..HANGUL SYLLABLE GGEH
        44789 <= code && code <= 44815 || // Lo  [27] HANGUL SYLLABLE GGYEOG..HANGUL SYLLABLE GGYEOH
        44817 <= code && code <= 44843 || // Lo  [27] HANGUL SYLLABLE GGYEG..HANGUL SYLLABLE GGYEH
        44845 <= code && code <= 44871 || // Lo  [27] HANGUL SYLLABLE GGOG..HANGUL SYLLABLE GGOH
        44873 <= code && code <= 44899 || // Lo  [27] HANGUL SYLLABLE GGWAG..HANGUL SYLLABLE GGWAH
        44901 <= code && code <= 44927 || // Lo  [27] HANGUL SYLLABLE GGWAEG..HANGUL SYLLABLE GGWAEH
        44929 <= code && code <= 44955 || // Lo  [27] HANGUL SYLLABLE GGOEG..HANGUL SYLLABLE GGOEH
        44957 <= code && code <= 44983 || // Lo  [27] HANGUL SYLLABLE GGYOG..HANGUL SYLLABLE GGYOH
        44985 <= code && code <= 45011 || // Lo  [27] HANGUL SYLLABLE GGUG..HANGUL SYLLABLE GGUH
        45013 <= code && code <= 45039 || // Lo  [27] HANGUL SYLLABLE GGWEOG..HANGUL SYLLABLE GGWEOH
        45041 <= code && code <= 45067 || // Lo  [27] HANGUL SYLLABLE GGWEG..HANGUL SYLLABLE GGWEH
        45069 <= code && code <= 45095 || // Lo  [27] HANGUL SYLLABLE GGWIG..HANGUL SYLLABLE GGWIH
        45097 <= code && code <= 45123 || // Lo  [27] HANGUL SYLLABLE GGYUG..HANGUL SYLLABLE GGYUH
        45125 <= code && code <= 45151 || // Lo  [27] HANGUL SYLLABLE GGEUG..HANGUL SYLLABLE GGEUH
        45153 <= code && code <= 45179 || // Lo  [27] HANGUL SYLLABLE GGYIG..HANGUL SYLLABLE GGYIH
        45181 <= code && code <= 45207 || // Lo  [27] HANGUL SYLLABLE GGIG..HANGUL SYLLABLE GGIH
        45209 <= code && code <= 45235 || // Lo  [27] HANGUL SYLLABLE NAG..HANGUL SYLLABLE NAH
        45237 <= code && code <= 45263 || // Lo  [27] HANGUL SYLLABLE NAEG..HANGUL SYLLABLE NAEH
        45265 <= code && code <= 45291 || // Lo  [27] HANGUL SYLLABLE NYAG..HANGUL SYLLABLE NYAH
        45293 <= code && code <= 45319 || // Lo  [27] HANGUL SYLLABLE NYAEG..HANGUL SYLLABLE NYAEH
        45321 <= code && code <= 45347 || // Lo  [27] HANGUL SYLLABLE NEOG..HANGUL SYLLABLE NEOH
        45349 <= code && code <= 45375 || // Lo  [27] HANGUL SYLLABLE NEG..HANGUL SYLLABLE NEH
        45377 <= code && code <= 45403 || // Lo  [27] HANGUL SYLLABLE NYEOG..HANGUL SYLLABLE NYEOH
        45405 <= code && code <= 45431 || // Lo  [27] HANGUL SYLLABLE NYEG..HANGUL SYLLABLE NYEH
        45433 <= code && code <= 45459 || // Lo  [27] HANGUL SYLLABLE NOG..HANGUL SYLLABLE NOH
        45461 <= code && code <= 45487 || // Lo  [27] HANGUL SYLLABLE NWAG..HANGUL SYLLABLE NWAH
        45489 <= code && code <= 45515 || // Lo  [27] HANGUL SYLLABLE NWAEG..HANGUL SYLLABLE NWAEH
        45517 <= code && code <= 45543 || // Lo  [27] HANGUL SYLLABLE NOEG..HANGUL SYLLABLE NOEH
        45545 <= code && code <= 45571 || // Lo  [27] HANGUL SYLLABLE NYOG..HANGUL SYLLABLE NYOH
        45573 <= code && code <= 45599 || // Lo  [27] HANGUL SYLLABLE NUG..HANGUL SYLLABLE NUH
        45601 <= code && code <= 45627 || // Lo  [27] HANGUL SYLLABLE NWEOG..HANGUL SYLLABLE NWEOH
        45629 <= code && code <= 45655 || // Lo  [27] HANGUL SYLLABLE NWEG..HANGUL SYLLABLE NWEH
        45657 <= code && code <= 45683 || // Lo  [27] HANGUL SYLLABLE NWIG..HANGUL SYLLABLE NWIH
        45685 <= code && code <= 45711 || // Lo  [27] HANGUL SYLLABLE NYUG..HANGUL SYLLABLE NYUH
        45713 <= code && code <= 45739 || // Lo  [27] HANGUL SYLLABLE NEUG..HANGUL SYLLABLE NEUH
        45741 <= code && code <= 45767 || // Lo  [27] HANGUL SYLLABLE NYIG..HANGUL SYLLABLE NYIH
        45769 <= code && code <= 45795 || // Lo  [27] HANGUL SYLLABLE NIG..HANGUL SYLLABLE NIH
        45797 <= code && code <= 45823 || // Lo  [27] HANGUL SYLLABLE DAG..HANGUL SYLLABLE DAH
        45825 <= code && code <= 45851 || // Lo  [27] HANGUL SYLLABLE DAEG..HANGUL SYLLABLE DAEH
        45853 <= code && code <= 45879 || // Lo  [27] HANGUL SYLLABLE DYAG..HANGUL SYLLABLE DYAH
        45881 <= code && code <= 45907 || // Lo  [27] HANGUL SYLLABLE DYAEG..HANGUL SYLLABLE DYAEH
        45909 <= code && code <= 45935 || // Lo  [27] HANGUL SYLLABLE DEOG..HANGUL SYLLABLE DEOH
        45937 <= code && code <= 45963 || // Lo  [27] HANGUL SYLLABLE DEG..HANGUL SYLLABLE DEH
        45965 <= code && code <= 45991 || // Lo  [27] HANGUL SYLLABLE DYEOG..HANGUL SYLLABLE DYEOH
        45993 <= code && code <= 46019 || // Lo  [27] HANGUL SYLLABLE DYEG..HANGUL SYLLABLE DYEH
        46021 <= code && code <= 46047 || // Lo  [27] HANGUL SYLLABLE DOG..HANGUL SYLLABLE DOH
        46049 <= code && code <= 46075 || // Lo  [27] HANGUL SYLLABLE DWAG..HANGUL SYLLABLE DWAH
        46077 <= code && code <= 46103 || // Lo  [27] HANGUL SYLLABLE DWAEG..HANGUL SYLLABLE DWAEH
        46105 <= code && code <= 46131 || // Lo  [27] HANGUL SYLLABLE DOEG..HANGUL SYLLABLE DOEH
        46133 <= code && code <= 46159 || // Lo  [27] HANGUL SYLLABLE DYOG..HANGUL SYLLABLE DYOH
        46161 <= code && code <= 46187 || // Lo  [27] HANGUL SYLLABLE DUG..HANGUL SYLLABLE DUH
        46189 <= code && code <= 46215 || // Lo  [27] HANGUL SYLLABLE DWEOG..HANGUL SYLLABLE DWEOH
        46217 <= code && code <= 46243 || // Lo  [27] HANGUL SYLLABLE DWEG..HANGUL SYLLABLE DWEH
        46245 <= code && code <= 46271 || // Lo  [27] HANGUL SYLLABLE DWIG..HANGUL SYLLABLE DWIH
        46273 <= code && code <= 46299 || // Lo  [27] HANGUL SYLLABLE DYUG..HANGUL SYLLABLE DYUH
        46301 <= code && code <= 46327 || // Lo  [27] HANGUL SYLLABLE DEUG..HANGUL SYLLABLE DEUH
        46329 <= code && code <= 46355 || // Lo  [27] HANGUL SYLLABLE DYIG..HANGUL SYLLABLE DYIH
        46357 <= code && code <= 46383 || // Lo  [27] HANGUL SYLLABLE DIG..HANGUL SYLLABLE DIH
        46385 <= code && code <= 46411 || // Lo  [27] HANGUL SYLLABLE DDAG..HANGUL SYLLABLE DDAH
        46413 <= code && code <= 46439 || // Lo  [27] HANGUL SYLLABLE DDAEG..HANGUL SYLLABLE DDAEH
        46441 <= code && code <= 46467 || // Lo  [27] HANGUL SYLLABLE DDYAG..HANGUL SYLLABLE DDYAH
        46469 <= code && code <= 46495 || // Lo  [27] HANGUL SYLLABLE DDYAEG..HANGUL SYLLABLE DDYAEH
        46497 <= code && code <= 46523 || // Lo  [27] HANGUL SYLLABLE DDEOG..HANGUL SYLLABLE DDEOH
        46525 <= code && code <= 46551 || // Lo  [27] HANGUL SYLLABLE DDEG..HANGUL SYLLABLE DDEH
        46553 <= code && code <= 46579 || // Lo  [27] HANGUL SYLLABLE DDYEOG..HANGUL SYLLABLE DDYEOH
        46581 <= code && code <= 46607 || // Lo  [27] HANGUL SYLLABLE DDYEG..HANGUL SYLLABLE DDYEH
        46609 <= code && code <= 46635 || // Lo  [27] HANGUL SYLLABLE DDOG..HANGUL SYLLABLE DDOH
        46637 <= code && code <= 46663 || // Lo  [27] HANGUL SYLLABLE DDWAG..HANGUL SYLLABLE DDWAH
        46665 <= code && code <= 46691 || // Lo  [27] HANGUL SYLLABLE DDWAEG..HANGUL SYLLABLE DDWAEH
        46693 <= code && code <= 46719 || // Lo  [27] HANGUL SYLLABLE DDOEG..HANGUL SYLLABLE DDOEH
        46721 <= code && code <= 46747 || // Lo  [27] HANGUL SYLLABLE DDYOG..HANGUL SYLLABLE DDYOH
        46749 <= code && code <= 46775 || // Lo  [27] HANGUL SYLLABLE DDUG..HANGUL SYLLABLE DDUH
        46777 <= code && code <= 46803 || // Lo  [27] HANGUL SYLLABLE DDWEOG..HANGUL SYLLABLE DDWEOH
        46805 <= code && code <= 46831 || // Lo  [27] HANGUL SYLLABLE DDWEG..HANGUL SYLLABLE DDWEH
        46833 <= code && code <= 46859 || // Lo  [27] HANGUL SYLLABLE DDWIG..HANGUL SYLLABLE DDWIH
        46861 <= code && code <= 46887 || // Lo  [27] HANGUL SYLLABLE DDYUG..HANGUL SYLLABLE DDYUH
        46889 <= code && code <= 46915 || // Lo  [27] HANGUL SYLLABLE DDEUG..HANGUL SYLLABLE DDEUH
        46917 <= code && code <= 46943 || // Lo  [27] HANGUL SYLLABLE DDYIG..HANGUL SYLLABLE DDYIH
        46945 <= code && code <= 46971 || // Lo  [27] HANGUL SYLLABLE DDIG..HANGUL SYLLABLE DDIH
        46973 <= code && code <= 46999 || // Lo  [27] HANGUL SYLLABLE RAG..HANGUL SYLLABLE RAH
        47001 <= code && code <= 47027 || // Lo  [27] HANGUL SYLLABLE RAEG..HANGUL SYLLABLE RAEH
        47029 <= code && code <= 47055 || // Lo  [27] HANGUL SYLLABLE RYAG..HANGUL SYLLABLE RYAH
        47057 <= code && code <= 47083 || // Lo  [27] HANGUL SYLLABLE RYAEG..HANGUL SYLLABLE RYAEH
        47085 <= code && code <= 47111 || // Lo  [27] HANGUL SYLLABLE REOG..HANGUL SYLLABLE REOH
        47113 <= code && code <= 47139 || // Lo  [27] HANGUL SYLLABLE REG..HANGUL SYLLABLE REH
        47141 <= code && code <= 47167 || // Lo  [27] HANGUL SYLLABLE RYEOG..HANGUL SYLLABLE RYEOH
        47169 <= code && code <= 47195 || // Lo  [27] HANGUL SYLLABLE RYEG..HANGUL SYLLABLE RYEH
        47197 <= code && code <= 47223 || // Lo  [27] HANGUL SYLLABLE ROG..HANGUL SYLLABLE ROH
        47225 <= code && code <= 47251 || // Lo  [27] HANGUL SYLLABLE RWAG..HANGUL SYLLABLE RWAH
        47253 <= code && code <= 47279 || // Lo  [27] HANGUL SYLLABLE RWAEG..HANGUL SYLLABLE RWAEH
        47281 <= code && code <= 47307 || // Lo  [27] HANGUL SYLLABLE ROEG..HANGUL SYLLABLE ROEH
        47309 <= code && code <= 47335 || // Lo  [27] HANGUL SYLLABLE RYOG..HANGUL SYLLABLE RYOH
        47337 <= code && code <= 47363 || // Lo  [27] HANGUL SYLLABLE RUG..HANGUL SYLLABLE RUH
        47365 <= code && code <= 47391 || // Lo  [27] HANGUL SYLLABLE RWEOG..HANGUL SYLLABLE RWEOH
        47393 <= code && code <= 47419 || // Lo  [27] HANGUL SYLLABLE RWEG..HANGUL SYLLABLE RWEH
        47421 <= code && code <= 47447 || // Lo  [27] HANGUL SYLLABLE RWIG..HANGUL SYLLABLE RWIH
        47449 <= code && code <= 47475 || // Lo  [27] HANGUL SYLLABLE RYUG..HANGUL SYLLABLE RYUH
        47477 <= code && code <= 47503 || // Lo  [27] HANGUL SYLLABLE REUG..HANGUL SYLLABLE REUH
        47505 <= code && code <= 47531 || // Lo  [27] HANGUL SYLLABLE RYIG..HANGUL SYLLABLE RYIH
        47533 <= code && code <= 47559 || // Lo  [27] HANGUL SYLLABLE RIG..HANGUL SYLLABLE RIH
        47561 <= code && code <= 47587 || // Lo  [27] HANGUL SYLLABLE MAG..HANGUL SYLLABLE MAH
        47589 <= code && code <= 47615 || // Lo  [27] HANGUL SYLLABLE MAEG..HANGUL SYLLABLE MAEH
        47617 <= code && code <= 47643 || // Lo  [27] HANGUL SYLLABLE MYAG..HANGUL SYLLABLE MYAH
        47645 <= code && code <= 47671 || // Lo  [27] HANGUL SYLLABLE MYAEG..HANGUL SYLLABLE MYAEH
        47673 <= code && code <= 47699 || // Lo  [27] HANGUL SYLLABLE MEOG..HANGUL SYLLABLE MEOH
        47701 <= code && code <= 47727 || // Lo  [27] HANGUL SYLLABLE MEG..HANGUL SYLLABLE MEH
        47729 <= code && code <= 47755 || // Lo  [27] HANGUL SYLLABLE MYEOG..HANGUL SYLLABLE MYEOH
        47757 <= code && code <= 47783 || // Lo  [27] HANGUL SYLLABLE MYEG..HANGUL SYLLABLE MYEH
        47785 <= code && code <= 47811 || // Lo  [27] HANGUL SYLLABLE MOG..HANGUL SYLLABLE MOH
        47813 <= code && code <= 47839 || // Lo  [27] HANGUL SYLLABLE MWAG..HANGUL SYLLABLE MWAH
        47841 <= code && code <= 47867 || // Lo  [27] HANGUL SYLLABLE MWAEG..HANGUL SYLLABLE MWAEH
        47869 <= code && code <= 47895 || // Lo  [27] HANGUL SYLLABLE MOEG..HANGUL SYLLABLE MOEH
        47897 <= code && code <= 47923 || // Lo  [27] HANGUL SYLLABLE MYOG..HANGUL SYLLABLE MYOH
        47925 <= code && code <= 47951 || // Lo  [27] HANGUL SYLLABLE MUG..HANGUL SYLLABLE MUH
        47953 <= code && code <= 47979 || // Lo  [27] HANGUL SYLLABLE MWEOG..HANGUL SYLLABLE MWEOH
        47981 <= code && code <= 48007 || // Lo  [27] HANGUL SYLLABLE MWEG..HANGUL SYLLABLE MWEH
        48009 <= code && code <= 48035 || // Lo  [27] HANGUL SYLLABLE MWIG..HANGUL SYLLABLE MWIH
        48037 <= code && code <= 48063 || // Lo  [27] HANGUL SYLLABLE MYUG..HANGUL SYLLABLE MYUH
        48065 <= code && code <= 48091 || // Lo  [27] HANGUL SYLLABLE MEUG..HANGUL SYLLABLE MEUH
        48093 <= code && code <= 48119 || // Lo  [27] HANGUL SYLLABLE MYIG..HANGUL SYLLABLE MYIH
        48121 <= code && code <= 48147 || // Lo  [27] HANGUL SYLLABLE MIG..HANGUL SYLLABLE MIH
        48149 <= code && code <= 48175 || // Lo  [27] HANGUL SYLLABLE BAG..HANGUL SYLLABLE BAH
        48177 <= code && code <= 48203 || // Lo  [27] HANGUL SYLLABLE BAEG..HANGUL SYLLABLE BAEH
        48205 <= code && code <= 48231 || // Lo  [27] HANGUL SYLLABLE BYAG..HANGUL SYLLABLE BYAH
        48233 <= code && code <= 48259 || // Lo  [27] HANGUL SYLLABLE BYAEG..HANGUL SYLLABLE BYAEH
        48261 <= code && code <= 48287 || // Lo  [27] HANGUL SYLLABLE BEOG..HANGUL SYLLABLE BEOH
        48289 <= code && code <= 48315 || // Lo  [27] HANGUL SYLLABLE BEG..HANGUL SYLLABLE BEH
        48317 <= code && code <= 48343 || // Lo  [27] HANGUL SYLLABLE BYEOG..HANGUL SYLLABLE BYEOH
        48345 <= code && code <= 48371 || // Lo  [27] HANGUL SYLLABLE BYEG..HANGUL SYLLABLE BYEH
        48373 <= code && code <= 48399 || // Lo  [27] HANGUL SYLLABLE BOG..HANGUL SYLLABLE BOH
        48401 <= code && code <= 48427 || // Lo  [27] HANGUL SYLLABLE BWAG..HANGUL SYLLABLE BWAH
        48429 <= code && code <= 48455 || // Lo  [27] HANGUL SYLLABLE BWAEG..HANGUL SYLLABLE BWAEH
        48457 <= code && code <= 48483 || // Lo  [27] HANGUL SYLLABLE BOEG..HANGUL SYLLABLE BOEH
        48485 <= code && code <= 48511 || // Lo  [27] HANGUL SYLLABLE BYOG..HANGUL SYLLABLE BYOH
        48513 <= code && code <= 48539 || // Lo  [27] HANGUL SYLLABLE BUG..HANGUL SYLLABLE BUH
        48541 <= code && code <= 48567 || // Lo  [27] HANGUL SYLLABLE BWEOG..HANGUL SYLLABLE BWEOH
        48569 <= code && code <= 48595 || // Lo  [27] HANGUL SYLLABLE BWEG..HANGUL SYLLABLE BWEH
        48597 <= code && code <= 48623 || // Lo  [27] HANGUL SYLLABLE BWIG..HANGUL SYLLABLE BWIH
        48625 <= code && code <= 48651 || // Lo  [27] HANGUL SYLLABLE BYUG..HANGUL SYLLABLE BYUH
        48653 <= code && code <= 48679 || // Lo  [27] HANGUL SYLLABLE BEUG..HANGUL SYLLABLE BEUH
        48681 <= code && code <= 48707 || // Lo  [27] HANGUL SYLLABLE BYIG..HANGUL SYLLABLE BYIH
        48709 <= code && code <= 48735 || // Lo  [27] HANGUL SYLLABLE BIG..HANGUL SYLLABLE BIH
        48737 <= code && code <= 48763 || // Lo  [27] HANGUL SYLLABLE BBAG..HANGUL SYLLABLE BBAH
        48765 <= code && code <= 48791 || // Lo  [27] HANGUL SYLLABLE BBAEG..HANGUL SYLLABLE BBAEH
        48793 <= code && code <= 48819 || // Lo  [27] HANGUL SYLLABLE BBYAG..HANGUL SYLLABLE BBYAH
        48821 <= code && code <= 48847 || // Lo  [27] HANGUL SYLLABLE BBYAEG..HANGUL SYLLABLE BBYAEH
        48849 <= code && code <= 48875 || // Lo  [27] HANGUL SYLLABLE BBEOG..HANGUL SYLLABLE BBEOH
        48877 <= code && code <= 48903 || // Lo  [27] HANGUL SYLLABLE BBEG..HANGUL SYLLABLE BBEH
        48905 <= code && code <= 48931 || // Lo  [27] HANGUL SYLLABLE BBYEOG..HANGUL SYLLABLE BBYEOH
        48933 <= code && code <= 48959 || // Lo  [27] HANGUL SYLLABLE BBYEG..HANGUL SYLLABLE BBYEH
        48961 <= code && code <= 48987 || // Lo  [27] HANGUL SYLLABLE BBOG..HANGUL SYLLABLE BBOH
        48989 <= code && code <= 49015 || // Lo  [27] HANGUL SYLLABLE BBWAG..HANGUL SYLLABLE BBWAH
        49017 <= code && code <= 49043 || // Lo  [27] HANGUL SYLLABLE BBWAEG..HANGUL SYLLABLE BBWAEH
        49045 <= code && code <= 49071 || // Lo  [27] HANGUL SYLLABLE BBOEG..HANGUL SYLLABLE BBOEH
        49073 <= code && code <= 49099 || // Lo  [27] HANGUL SYLLABLE BBYOG..HANGUL SYLLABLE BBYOH
        49101 <= code && code <= 49127 || // Lo  [27] HANGUL SYLLABLE BBUG..HANGUL SYLLABLE BBUH
        49129 <= code && code <= 49155 || // Lo  [27] HANGUL SYLLABLE BBWEOG..HANGUL SYLLABLE BBWEOH
        49157 <= code && code <= 49183 || // Lo  [27] HANGUL SYLLABLE BBWEG..HANGUL SYLLABLE BBWEH
        49185 <= code && code <= 49211 || // Lo  [27] HANGUL SYLLABLE BBWIG..HANGUL SYLLABLE BBWIH
        49213 <= code && code <= 49239 || // Lo  [27] HANGUL SYLLABLE BBYUG..HANGUL SYLLABLE BBYUH
        49241 <= code && code <= 49267 || // Lo  [27] HANGUL SYLLABLE BBEUG..HANGUL SYLLABLE BBEUH
        49269 <= code && code <= 49295 || // Lo  [27] HANGUL SYLLABLE BBYIG..HANGUL SYLLABLE BBYIH
        49297 <= code && code <= 49323 || // Lo  [27] HANGUL SYLLABLE BBIG..HANGUL SYLLABLE BBIH
        49325 <= code && code <= 49351 || // Lo  [27] HANGUL SYLLABLE SAG..HANGUL SYLLABLE SAH
        49353 <= code && code <= 49379 || // Lo  [27] HANGUL SYLLABLE SAEG..HANGUL SYLLABLE SAEH
        49381 <= code && code <= 49407 || // Lo  [27] HANGUL SYLLABLE SYAG..HANGUL SYLLABLE SYAH
        49409 <= code && code <= 49435 || // Lo  [27] HANGUL SYLLABLE SYAEG..HANGUL SYLLABLE SYAEH
        49437 <= code && code <= 49463 || // Lo  [27] HANGUL SYLLABLE SEOG..HANGUL SYLLABLE SEOH
        49465 <= code && code <= 49491 || // Lo  [27] HANGUL SYLLABLE SEG..HANGUL SYLLABLE SEH
        49493 <= code && code <= 49519 || // Lo  [27] HANGUL SYLLABLE SYEOG..HANGUL SYLLABLE SYEOH
        49521 <= code && code <= 49547 || // Lo  [27] HANGUL SYLLABLE SYEG..HANGUL SYLLABLE SYEH
        49549 <= code && code <= 49575 || // Lo  [27] HANGUL SYLLABLE SOG..HANGUL SYLLABLE SOH
        49577 <= code && code <= 49603 || // Lo  [27] HANGUL SYLLABLE SWAG..HANGUL SYLLABLE SWAH
        49605 <= code && code <= 49631 || // Lo  [27] HANGUL SYLLABLE SWAEG..HANGUL SYLLABLE SWAEH
        49633 <= code && code <= 49659 || // Lo  [27] HANGUL SYLLABLE SOEG..HANGUL SYLLABLE SOEH
        49661 <= code && code <= 49687 || // Lo  [27] HANGUL SYLLABLE SYOG..HANGUL SYLLABLE SYOH
        49689 <= code && code <= 49715 || // Lo  [27] HANGUL SYLLABLE SUG..HANGUL SYLLABLE SUH
        49717 <= code && code <= 49743 || // Lo  [27] HANGUL SYLLABLE SWEOG..HANGUL SYLLABLE SWEOH
        49745 <= code && code <= 49771 || // Lo  [27] HANGUL SYLLABLE SWEG..HANGUL SYLLABLE SWEH
        49773 <= code && code <= 49799 || // Lo  [27] HANGUL SYLLABLE SWIG..HANGUL SYLLABLE SWIH
        49801 <= code && code <= 49827 || // Lo  [27] HANGUL SYLLABLE SYUG..HANGUL SYLLABLE SYUH
        49829 <= code && code <= 49855 || // Lo  [27] HANGUL SYLLABLE SEUG..HANGUL SYLLABLE SEUH
        49857 <= code && code <= 49883 || // Lo  [27] HANGUL SYLLABLE SYIG..HANGUL SYLLABLE SYIH
        49885 <= code && code <= 49911 || // Lo  [27] HANGUL SYLLABLE SIG..HANGUL SYLLABLE SIH
        49913 <= code && code <= 49939 || // Lo  [27] HANGUL SYLLABLE SSAG..HANGUL SYLLABLE SSAH
        49941 <= code && code <= 49967 || // Lo  [27] HANGUL SYLLABLE SSAEG..HANGUL SYLLABLE SSAEH
        49969 <= code && code <= 49995 || // Lo  [27] HANGUL SYLLABLE SSYAG..HANGUL SYLLABLE SSYAH
        49997 <= code && code <= 50023 || // Lo  [27] HANGUL SYLLABLE SSYAEG..HANGUL SYLLABLE SSYAEH
        50025 <= code && code <= 50051 || // Lo  [27] HANGUL SYLLABLE SSEOG..HANGUL SYLLABLE SSEOH
        50053 <= code && code <= 50079 || // Lo  [27] HANGUL SYLLABLE SSEG..HANGUL SYLLABLE SSEH
        50081 <= code && code <= 50107 || // Lo  [27] HANGUL SYLLABLE SSYEOG..HANGUL SYLLABLE SSYEOH
        50109 <= code && code <= 50135 || // Lo  [27] HANGUL SYLLABLE SSYEG..HANGUL SYLLABLE SSYEH
        50137 <= code && code <= 50163 || // Lo  [27] HANGUL SYLLABLE SSOG..HANGUL SYLLABLE SSOH
        50165 <= code && code <= 50191 || // Lo  [27] HANGUL SYLLABLE SSWAG..HANGUL SYLLABLE SSWAH
        50193 <= code && code <= 50219 || // Lo  [27] HANGUL SYLLABLE SSWAEG..HANGUL SYLLABLE SSWAEH
        50221 <= code && code <= 50247 || // Lo  [27] HANGUL SYLLABLE SSOEG..HANGUL SYLLABLE SSOEH
        50249 <= code && code <= 50275 || // Lo  [27] HANGUL SYLLABLE SSYOG..HANGUL SYLLABLE SSYOH
        50277 <= code && code <= 50303 || // Lo  [27] HANGUL SYLLABLE SSUG..HANGUL SYLLABLE SSUH
        50305 <= code && code <= 50331 || // Lo  [27] HANGUL SYLLABLE SSWEOG..HANGUL SYLLABLE SSWEOH
        50333 <= code && code <= 50359 || // Lo  [27] HANGUL SYLLABLE SSWEG..HANGUL SYLLABLE SSWEH
        50361 <= code && code <= 50387 || // Lo  [27] HANGUL SYLLABLE SSWIG..HANGUL SYLLABLE SSWIH
        50389 <= code && code <= 50415 || // Lo  [27] HANGUL SYLLABLE SSYUG..HANGUL SYLLABLE SSYUH
        50417 <= code && code <= 50443 || // Lo  [27] HANGUL SYLLABLE SSEUG..HANGUL SYLLABLE SSEUH
        50445 <= code && code <= 50471 || // Lo  [27] HANGUL SYLLABLE SSYIG..HANGUL SYLLABLE SSYIH
        50473 <= code && code <= 50499 || // Lo  [27] HANGUL SYLLABLE SSIG..HANGUL SYLLABLE SSIH
        50501 <= code && code <= 50527 || // Lo  [27] HANGUL SYLLABLE AG..HANGUL SYLLABLE AH
        50529 <= code && code <= 50555 || // Lo  [27] HANGUL SYLLABLE AEG..HANGUL SYLLABLE AEH
        50557 <= code && code <= 50583 || // Lo  [27] HANGUL SYLLABLE YAG..HANGUL SYLLABLE YAH
        50585 <= code && code <= 50611 || // Lo  [27] HANGUL SYLLABLE YAEG..HANGUL SYLLABLE YAEH
        50613 <= code && code <= 50639 || // Lo  [27] HANGUL SYLLABLE EOG..HANGUL SYLLABLE EOH
        50641 <= code && code <= 50667 || // Lo  [27] HANGUL SYLLABLE EG..HANGUL SYLLABLE EH
        50669 <= code && code <= 50695 || // Lo  [27] HANGUL SYLLABLE YEOG..HANGUL SYLLABLE YEOH
        50697 <= code && code <= 50723 || // Lo  [27] HANGUL SYLLABLE YEG..HANGUL SYLLABLE YEH
        50725 <= code && code <= 50751 || // Lo  [27] HANGUL SYLLABLE OG..HANGUL SYLLABLE OH
        50753 <= code && code <= 50779 || // Lo  [27] HANGUL SYLLABLE WAG..HANGUL SYLLABLE WAH
        50781 <= code && code <= 50807 || // Lo  [27] HANGUL SYLLABLE WAEG..HANGUL SYLLABLE WAEH
        50809 <= code && code <= 50835 || // Lo  [27] HANGUL SYLLABLE OEG..HANGUL SYLLABLE OEH
        50837 <= code && code <= 50863 || // Lo  [27] HANGUL SYLLABLE YOG..HANGUL SYLLABLE YOH
        50865 <= code && code <= 50891 || // Lo  [27] HANGUL SYLLABLE UG..HANGUL SYLLABLE UH
        50893 <= code && code <= 50919 || // Lo  [27] HANGUL SYLLABLE WEOG..HANGUL SYLLABLE WEOH
        50921 <= code && code <= 50947 || // Lo  [27] HANGUL SYLLABLE WEG..HANGUL SYLLABLE WEH
        50949 <= code && code <= 50975 || // Lo  [27] HANGUL SYLLABLE WIG..HANGUL SYLLABLE WIH
        50977 <= code && code <= 51003 || // Lo  [27] HANGUL SYLLABLE YUG..HANGUL SYLLABLE YUH
        51005 <= code && code <= 51031 || // Lo  [27] HANGUL SYLLABLE EUG..HANGUL SYLLABLE EUH
        51033 <= code && code <= 51059 || // Lo  [27] HANGUL SYLLABLE YIG..HANGUL SYLLABLE YIH
        51061 <= code && code <= 51087 || // Lo  [27] HANGUL SYLLABLE IG..HANGUL SYLLABLE IH
        51089 <= code && code <= 51115 || // Lo  [27] HANGUL SYLLABLE JAG..HANGUL SYLLABLE JAH
        51117 <= code && code <= 51143 || // Lo  [27] HANGUL SYLLABLE JAEG..HANGUL SYLLABLE JAEH
        51145 <= code && code <= 51171 || // Lo  [27] HANGUL SYLLABLE JYAG..HANGUL SYLLABLE JYAH
        51173 <= code && code <= 51199 || // Lo  [27] HANGUL SYLLABLE JYAEG..HANGUL SYLLABLE JYAEH
        51201 <= code && code <= 51227 || // Lo  [27] HANGUL SYLLABLE JEOG..HANGUL SYLLABLE JEOH
        51229 <= code && code <= 51255 || // Lo  [27] HANGUL SYLLABLE JEG..HANGUL SYLLABLE JEH
        51257 <= code && code <= 51283 || // Lo  [27] HANGUL SYLLABLE JYEOG..HANGUL SYLLABLE JYEOH
        51285 <= code && code <= 51311 || // Lo  [27] HANGUL SYLLABLE JYEG..HANGUL SYLLABLE JYEH
        51313 <= code && code <= 51339 || // Lo  [27] HANGUL SYLLABLE JOG..HANGUL SYLLABLE JOH
        51341 <= code && code <= 51367 || // Lo  [27] HANGUL SYLLABLE JWAG..HANGUL SYLLABLE JWAH
        51369 <= code && code <= 51395 || // Lo  [27] HANGUL SYLLABLE JWAEG..HANGUL SYLLABLE JWAEH
        51397 <= code && code <= 51423 || // Lo  [27] HANGUL SYLLABLE JOEG..HANGUL SYLLABLE JOEH
        51425 <= code && code <= 51451 || // Lo  [27] HANGUL SYLLABLE JYOG..HANGUL SYLLABLE JYOH
        51453 <= code && code <= 51479 || // Lo  [27] HANGUL SYLLABLE JUG..HANGUL SYLLABLE JUH
        51481 <= code && code <= 51507 || // Lo  [27] HANGUL SYLLABLE JWEOG..HANGUL SYLLABLE JWEOH
        51509 <= code && code <= 51535 || // Lo  [27] HANGUL SYLLABLE JWEG..HANGUL SYLLABLE JWEH
        51537 <= code && code <= 51563 || // Lo  [27] HANGUL SYLLABLE JWIG..HANGUL SYLLABLE JWIH
        51565 <= code && code <= 51591 || // Lo  [27] HANGUL SYLLABLE JYUG..HANGUL SYLLABLE JYUH
        51593 <= code && code <= 51619 || // Lo  [27] HANGUL SYLLABLE JEUG..HANGUL SYLLABLE JEUH
        51621 <= code && code <= 51647 || // Lo  [27] HANGUL SYLLABLE JYIG..HANGUL SYLLABLE JYIH
        51649 <= code && code <= 51675 || // Lo  [27] HANGUL SYLLABLE JIG..HANGUL SYLLABLE JIH
        51677 <= code && code <= 51703 || // Lo  [27] HANGUL SYLLABLE JJAG..HANGUL SYLLABLE JJAH
        51705 <= code && code <= 51731 || // Lo  [27] HANGUL SYLLABLE JJAEG..HANGUL SYLLABLE JJAEH
        51733 <= code && code <= 51759 || // Lo  [27] HANGUL SYLLABLE JJYAG..HANGUL SYLLABLE JJYAH
        51761 <= code && code <= 51787 || // Lo  [27] HANGUL SYLLABLE JJYAEG..HANGUL SYLLABLE JJYAEH
        51789 <= code && code <= 51815 || // Lo  [27] HANGUL SYLLABLE JJEOG..HANGUL SYLLABLE JJEOH
        51817 <= code && code <= 51843 || // Lo  [27] HANGUL SYLLABLE JJEG..HANGUL SYLLABLE JJEH
        51845 <= code && code <= 51871 || // Lo  [27] HANGUL SYLLABLE JJYEOG..HANGUL SYLLABLE JJYEOH
        51873 <= code && code <= 51899 || // Lo  [27] HANGUL SYLLABLE JJYEG..HANGUL SYLLABLE JJYEH
        51901 <= code && code <= 51927 || // Lo  [27] HANGUL SYLLABLE JJOG..HANGUL SYLLABLE JJOH
        51929 <= code && code <= 51955 || // Lo  [27] HANGUL SYLLABLE JJWAG..HANGUL SYLLABLE JJWAH
        51957 <= code && code <= 51983 || // Lo  [27] HANGUL SYLLABLE JJWAEG..HANGUL SYLLABLE JJWAEH
        51985 <= code && code <= 52011 || // Lo  [27] HANGUL SYLLABLE JJOEG..HANGUL SYLLABLE JJOEH
        52013 <= code && code <= 52039 || // Lo  [27] HANGUL SYLLABLE JJYOG..HANGUL SYLLABLE JJYOH
        52041 <= code && code <= 52067 || // Lo  [27] HANGUL SYLLABLE JJUG..HANGUL SYLLABLE JJUH
        52069 <= code && code <= 52095 || // Lo  [27] HANGUL SYLLABLE JJWEOG..HANGUL SYLLABLE JJWEOH
        52097 <= code && code <= 52123 || // Lo  [27] HANGUL SYLLABLE JJWEG..HANGUL SYLLABLE JJWEH
        52125 <= code && code <= 52151 || // Lo  [27] HANGUL SYLLABLE JJWIG..HANGUL SYLLABLE JJWIH
        52153 <= code && code <= 52179 || // Lo  [27] HANGUL SYLLABLE JJYUG..HANGUL SYLLABLE JJYUH
        52181 <= code && code <= 52207 || // Lo  [27] HANGUL SYLLABLE JJEUG..HANGUL SYLLABLE JJEUH
        52209 <= code && code <= 52235 || // Lo  [27] HANGUL SYLLABLE JJYIG..HANGUL SYLLABLE JJYIH
        52237 <= code && code <= 52263 || // Lo  [27] HANGUL SYLLABLE JJIG..HANGUL SYLLABLE JJIH
        52265 <= code && code <= 52291 || // Lo  [27] HANGUL SYLLABLE CAG..HANGUL SYLLABLE CAH
        52293 <= code && code <= 52319 || // Lo  [27] HANGUL SYLLABLE CAEG..HANGUL SYLLABLE CAEH
        52321 <= code && code <= 52347 || // Lo  [27] HANGUL SYLLABLE CYAG..HANGUL SYLLABLE CYAH
        52349 <= code && code <= 52375 || // Lo  [27] HANGUL SYLLABLE CYAEG..HANGUL SYLLABLE CYAEH
        52377 <= code && code <= 52403 || // Lo  [27] HANGUL SYLLABLE CEOG..HANGUL SYLLABLE CEOH
        52405 <= code && code <= 52431 || // Lo  [27] HANGUL SYLLABLE CEG..HANGUL SYLLABLE CEH
        52433 <= code && code <= 52459 || // Lo  [27] HANGUL SYLLABLE CYEOG..HANGUL SYLLABLE CYEOH
        52461 <= code && code <= 52487 || // Lo  [27] HANGUL SYLLABLE CYEG..HANGUL SYLLABLE CYEH
        52489 <= code && code <= 52515 || // Lo  [27] HANGUL SYLLABLE COG..HANGUL SYLLABLE COH
        52517 <= code && code <= 52543 || // Lo  [27] HANGUL SYLLABLE CWAG..HANGUL SYLLABLE CWAH
        52545 <= code && code <= 52571 || // Lo  [27] HANGUL SYLLABLE CWAEG..HANGUL SYLLABLE CWAEH
        52573 <= code && code <= 52599 || // Lo  [27] HANGUL SYLLABLE COEG..HANGUL SYLLABLE COEH
        52601 <= code && code <= 52627 || // Lo  [27] HANGUL SYLLABLE CYOG..HANGUL SYLLABLE CYOH
        52629 <= code && code <= 52655 || // Lo  [27] HANGUL SYLLABLE CUG..HANGUL SYLLABLE CUH
        52657 <= code && code <= 52683 || // Lo  [27] HANGUL SYLLABLE CWEOG..HANGUL SYLLABLE CWEOH
        52685 <= code && code <= 52711 || // Lo  [27] HANGUL SYLLABLE CWEG..HANGUL SYLLABLE CWEH
        52713 <= code && code <= 52739 || // Lo  [27] HANGUL SYLLABLE CWIG..HANGUL SYLLABLE CWIH
        52741 <= code && code <= 52767 || // Lo  [27] HANGUL SYLLABLE CYUG..HANGUL SYLLABLE CYUH
        52769 <= code && code <= 52795 || // Lo  [27] HANGUL SYLLABLE CEUG..HANGUL SYLLABLE CEUH
        52797 <= code && code <= 52823 || // Lo  [27] HANGUL SYLLABLE CYIG..HANGUL SYLLABLE CYIH
        52825 <= code && code <= 52851 || // Lo  [27] HANGUL SYLLABLE CIG..HANGUL SYLLABLE CIH
        52853 <= code && code <= 52879 || // Lo  [27] HANGUL SYLLABLE KAG..HANGUL SYLLABLE KAH
        52881 <= code && code <= 52907 || // Lo  [27] HANGUL SYLLABLE KAEG..HANGUL SYLLABLE KAEH
        52909 <= code && code <= 52935 || // Lo  [27] HANGUL SYLLABLE KYAG..HANGUL SYLLABLE KYAH
        52937 <= code && code <= 52963 || // Lo  [27] HANGUL SYLLABLE KYAEG..HANGUL SYLLABLE KYAEH
        52965 <= code && code <= 52991 || // Lo  [27] HANGUL SYLLABLE KEOG..HANGUL SYLLABLE KEOH
        52993 <= code && code <= 53019 || // Lo  [27] HANGUL SYLLABLE KEG..HANGUL SYLLABLE KEH
        53021 <= code && code <= 53047 || // Lo  [27] HANGUL SYLLABLE KYEOG..HANGUL SYLLABLE KYEOH
        53049 <= code && code <= 53075 || // Lo  [27] HANGUL SYLLABLE KYEG..HANGUL SYLLABLE KYEH
        53077 <= code && code <= 53103 || // Lo  [27] HANGUL SYLLABLE KOG..HANGUL SYLLABLE KOH
        53105 <= code && code <= 53131 || // Lo  [27] HANGUL SYLLABLE KWAG..HANGUL SYLLABLE KWAH
        53133 <= code && code <= 53159 || // Lo  [27] HANGUL SYLLABLE KWAEG..HANGUL SYLLABLE KWAEH
        53161 <= code && code <= 53187 || // Lo  [27] HANGUL SYLLABLE KOEG..HANGUL SYLLABLE KOEH
        53189 <= code && code <= 53215 || // Lo  [27] HANGUL SYLLABLE KYOG..HANGUL SYLLABLE KYOH
        53217 <= code && code <= 53243 || // Lo  [27] HANGUL SYLLABLE KUG..HANGUL SYLLABLE KUH
        53245 <= code && code <= 53271 || // Lo  [27] HANGUL SYLLABLE KWEOG..HANGUL SYLLABLE KWEOH
        53273 <= code && code <= 53299 || // Lo  [27] HANGUL SYLLABLE KWEG..HANGUL SYLLABLE KWEH
        53301 <= code && code <= 53327 || // Lo  [27] HANGUL SYLLABLE KWIG..HANGUL SYLLABLE KWIH
        53329 <= code && code <= 53355 || // Lo  [27] HANGUL SYLLABLE KYUG..HANGUL SYLLABLE KYUH
        53357 <= code && code <= 53383 || // Lo  [27] HANGUL SYLLABLE KEUG..HANGUL SYLLABLE KEUH
        53385 <= code && code <= 53411 || // Lo  [27] HANGUL SYLLABLE KYIG..HANGUL SYLLABLE KYIH
        53413 <= code && code <= 53439 || // Lo  [27] HANGUL SYLLABLE KIG..HANGUL SYLLABLE KIH
        53441 <= code && code <= 53467 || // Lo  [27] HANGUL SYLLABLE TAG..HANGUL SYLLABLE TAH
        53469 <= code && code <= 53495 || // Lo  [27] HANGUL SYLLABLE TAEG..HANGUL SYLLABLE TAEH
        53497 <= code && code <= 53523 || // Lo  [27] HANGUL SYLLABLE TYAG..HANGUL SYLLABLE TYAH
        53525 <= code && code <= 53551 || // Lo  [27] HANGUL SYLLABLE TYAEG..HANGUL SYLLABLE TYAEH
        53553 <= code && code <= 53579 || // Lo  [27] HANGUL SYLLABLE TEOG..HANGUL SYLLABLE TEOH
        53581 <= code && code <= 53607 || // Lo  [27] HANGUL SYLLABLE TEG..HANGUL SYLLABLE TEH
        53609 <= code && code <= 53635 || // Lo  [27] HANGUL SYLLABLE TYEOG..HANGUL SYLLABLE TYEOH
        53637 <= code && code <= 53663 || // Lo  [27] HANGUL SYLLABLE TYEG..HANGUL SYLLABLE TYEH
        53665 <= code && code <= 53691 || // Lo  [27] HANGUL SYLLABLE TOG..HANGUL SYLLABLE TOH
        53693 <= code && code <= 53719 || // Lo  [27] HANGUL SYLLABLE TWAG..HANGUL SYLLABLE TWAH
        53721 <= code && code <= 53747 || // Lo  [27] HANGUL SYLLABLE TWAEG..HANGUL SYLLABLE TWAEH
        53749 <= code && code <= 53775 || // Lo  [27] HANGUL SYLLABLE TOEG..HANGUL SYLLABLE TOEH
        53777 <= code && code <= 53803 || // Lo  [27] HANGUL SYLLABLE TYOG..HANGUL SYLLABLE TYOH
        53805 <= code && code <= 53831 || // Lo  [27] HANGUL SYLLABLE TUG..HANGUL SYLLABLE TUH
        53833 <= code && code <= 53859 || // Lo  [27] HANGUL SYLLABLE TWEOG..HANGUL SYLLABLE TWEOH
        53861 <= code && code <= 53887 || // Lo  [27] HANGUL SYLLABLE TWEG..HANGUL SYLLABLE TWEH
        53889 <= code && code <= 53915 || // Lo  [27] HANGUL SYLLABLE TWIG..HANGUL SYLLABLE TWIH
        53917 <= code && code <= 53943 || // Lo  [27] HANGUL SYLLABLE TYUG..HANGUL SYLLABLE TYUH
        53945 <= code && code <= 53971 || // Lo  [27] HANGUL SYLLABLE TEUG..HANGUL SYLLABLE TEUH
        53973 <= code && code <= 53999 || // Lo  [27] HANGUL SYLLABLE TYIG..HANGUL SYLLABLE TYIH
        54001 <= code && code <= 54027 || // Lo  [27] HANGUL SYLLABLE TIG..HANGUL SYLLABLE TIH
        54029 <= code && code <= 54055 || // Lo  [27] HANGUL SYLLABLE PAG..HANGUL SYLLABLE PAH
        54057 <= code && code <= 54083 || // Lo  [27] HANGUL SYLLABLE PAEG..HANGUL SYLLABLE PAEH
        54085 <= code && code <= 54111 || // Lo  [27] HANGUL SYLLABLE PYAG..HANGUL SYLLABLE PYAH
        54113 <= code && code <= 54139 || // Lo  [27] HANGUL SYLLABLE PYAEG..HANGUL SYLLABLE PYAEH
        54141 <= code && code <= 54167 || // Lo  [27] HANGUL SYLLABLE PEOG..HANGUL SYLLABLE PEOH
        54169 <= code && code <= 54195 || // Lo  [27] HANGUL SYLLABLE PEG..HANGUL SYLLABLE PEH
        54197 <= code && code <= 54223 || // Lo  [27] HANGUL SYLLABLE PYEOG..HANGUL SYLLABLE PYEOH
        54225 <= code && code <= 54251 || // Lo  [27] HANGUL SYLLABLE PYEG..HANGUL SYLLABLE PYEH
        54253 <= code && code <= 54279 || // Lo  [27] HANGUL SYLLABLE POG..HANGUL SYLLABLE POH
        54281 <= code && code <= 54307 || // Lo  [27] HANGUL SYLLABLE PWAG..HANGUL SYLLABLE PWAH
        54309 <= code && code <= 54335 || // Lo  [27] HANGUL SYLLABLE PWAEG..HANGUL SYLLABLE PWAEH
        54337 <= code && code <= 54363 || // Lo  [27] HANGUL SYLLABLE POEG..HANGUL SYLLABLE POEH
        54365 <= code && code <= 54391 || // Lo  [27] HANGUL SYLLABLE PYOG..HANGUL SYLLABLE PYOH
        54393 <= code && code <= 54419 || // Lo  [27] HANGUL SYLLABLE PUG..HANGUL SYLLABLE PUH
        54421 <= code && code <= 54447 || // Lo  [27] HANGUL SYLLABLE PWEOG..HANGUL SYLLABLE PWEOH
        54449 <= code && code <= 54475 || // Lo  [27] HANGUL SYLLABLE PWEG..HANGUL SYLLABLE PWEH
        54477 <= code && code <= 54503 || // Lo  [27] HANGUL SYLLABLE PWIG..HANGUL SYLLABLE PWIH
        54505 <= code && code <= 54531 || // Lo  [27] HANGUL SYLLABLE PYUG..HANGUL SYLLABLE PYUH
        54533 <= code && code <= 54559 || // Lo  [27] HANGUL SYLLABLE PEUG..HANGUL SYLLABLE PEUH
        54561 <= code && code <= 54587 || // Lo  [27] HANGUL SYLLABLE PYIG..HANGUL SYLLABLE PYIH
        54589 <= code && code <= 54615 || // Lo  [27] HANGUL SYLLABLE PIG..HANGUL SYLLABLE PIH
        54617 <= code && code <= 54643 || // Lo  [27] HANGUL SYLLABLE HAG..HANGUL SYLLABLE HAH
        54645 <= code && code <= 54671 || // Lo  [27] HANGUL SYLLABLE HAEG..HANGUL SYLLABLE HAEH
        54673 <= code && code <= 54699 || // Lo  [27] HANGUL SYLLABLE HYAG..HANGUL SYLLABLE HYAH
        54701 <= code && code <= 54727 || // Lo  [27] HANGUL SYLLABLE HYAEG..HANGUL SYLLABLE HYAEH
        54729 <= code && code <= 54755 || // Lo  [27] HANGUL SYLLABLE HEOG..HANGUL SYLLABLE HEOH
        54757 <= code && code <= 54783 || // Lo  [27] HANGUL SYLLABLE HEG..HANGUL SYLLABLE HEH
        54785 <= code && code <= 54811 || // Lo  [27] HANGUL SYLLABLE HYEOG..HANGUL SYLLABLE HYEOH
        54813 <= code && code <= 54839 || // Lo  [27] HANGUL SYLLABLE HYEG..HANGUL SYLLABLE HYEH
        54841 <= code && code <= 54867 || // Lo  [27] HANGUL SYLLABLE HOG..HANGUL SYLLABLE HOH
        54869 <= code && code <= 54895 || // Lo  [27] HANGUL SYLLABLE HWAG..HANGUL SYLLABLE HWAH
        54897 <= code && code <= 54923 || // Lo  [27] HANGUL SYLLABLE HWAEG..HANGUL SYLLABLE HWAEH
        54925 <= code && code <= 54951 || // Lo  [27] HANGUL SYLLABLE HOEG..HANGUL SYLLABLE HOEH
        54953 <= code && code <= 54979 || // Lo  [27] HANGUL SYLLABLE HYOG..HANGUL SYLLABLE HYOH
        54981 <= code && code <= 55007 || // Lo  [27] HANGUL SYLLABLE HUG..HANGUL SYLLABLE HUH
        55009 <= code && code <= 55035 || // Lo  [27] HANGUL SYLLABLE HWEOG..HANGUL SYLLABLE HWEOH
        55037 <= code && code <= 55063 || // Lo  [27] HANGUL SYLLABLE HWEG..HANGUL SYLLABLE HWEH
        55065 <= code && code <= 55091 || // Lo  [27] HANGUL SYLLABLE HWIG..HANGUL SYLLABLE HWIH
        55093 <= code && code <= 55119 || // Lo  [27] HANGUL SYLLABLE HYUG..HANGUL SYLLABLE HYUH
        55121 <= code && code <= 55147 || // Lo  [27] HANGUL SYLLABLE HEUG..HANGUL SYLLABLE HEUH
        55149 <= code && code <= 55175 || // Lo  [27] HANGUL SYLLABLE HYIG..HANGUL SYLLABLE HYIH
        55177 <= code && code <= 55203) {
          return LVT;
        }
        if (9757 == code || // So       WHITE UP POINTING INDEX
        9977 == code || // So       PERSON WITH BALL
        9994 <= code && code <= 9997 || // So   [4] RAISED FIST..WRITING HAND
        127877 == code || // So       FATHER CHRISTMAS
        127938 <= code && code <= 127940 || // So   [3] SNOWBOARDER..SURFER
        127943 == code || // So       HORSE RACING
        127946 <= code && code <= 127948 || // So   [3] SWIMMER..GOLFER
        128066 <= code && code <= 128067 || // So   [2] EAR..NOSE
        128070 <= code && code <= 128080 || // So  [11] WHITE UP POINTING BACKHAND INDEX..OPEN HANDS SIGN
        128110 == code || // So       POLICE OFFICER
        128112 <= code && code <= 128120 || // So   [9] BRIDE WITH VEIL..PRINCESS
        128124 == code || // So       BABY ANGEL
        128129 <= code && code <= 128131 || // So   [3] INFORMATION DESK PERSON..DANCER
        128133 <= code && code <= 128135 || // So   [3] NAIL POLISH..HAIRCUT
        128170 == code || // So       FLEXED BICEPS
        128372 <= code && code <= 128373 || // So   [2] MAN IN BUSINESS SUIT LEVITATING..SLEUTH OR SPY
        128378 == code || // So       MAN DANCING
        128400 == code || // So       RAISED HAND WITH FINGERS SPLAYED
        128405 <= code && code <= 128406 || // So   [2] REVERSED HAND WITH MIDDLE FINGER EXTENDED..RAISED HAND WITH PART BETWEEN MIDDLE AND RING FINGERS
        128581 <= code && code <= 128583 || // So   [3] FACE WITH NO GOOD GESTURE..PERSON BOWING DEEPLY
        128587 <= code && code <= 128591 || // So   [5] HAPPY PERSON RAISING ONE HAND..PERSON WITH FOLDED HANDS
        128675 == code || // So       ROWBOAT
        128692 <= code && code <= 128694 || // So   [3] BICYCLIST..PEDESTRIAN
        128704 == code || // So       BATH
        128716 == code || // So       SLEEPING ACCOMMODATION
        129304 <= code && code <= 129308 || // So   [5] SIGN OF THE HORNS..RIGHT-FACING FIST
        129310 <= code && code <= 129311 || // So   [2] HAND WITH INDEX AND MIDDLE FINGERS CROSSED..I LOVE YOU HAND SIGN
        129318 == code || // So       FACE PALM
        129328 <= code && code <= 129337 || // So  [10] PREGNANT WOMAN..JUGGLING
        129341 <= code && code <= 129342 || // So   [2] WATER POLO..HANDBALL
        129489 <= code && code <= 129501) {
          return E_Base;
        }
        if (127995 <= code && code <= 127999) {
          return E_Modifier;
        }
        if (8205 == code) {
          return ZWJ;
        }
        if (9792 == code || // So       FEMALE SIGN
        9794 == code || // So       MALE SIGN
        9877 <= code && code <= 9878 || // So   [2] STAFF OF AESCULAPIUS..SCALES
        9992 == code || // So       AIRPLANE
        10084 == code || // So       HEAVY BLACK HEART
        127752 == code || // So       RAINBOW
        127806 == code || // So       EAR OF RICE
        127859 == code || // So       COOKING
        127891 == code || // So       GRADUATION CAP
        127908 == code || // So       MICROPHONE
        127912 == code || // So       ARTIST PALETTE
        127979 == code || // So       SCHOOL
        127981 == code || // So       FACTORY
        128139 == code || // So       KISS MARK
        128187 <= code && code <= 128188 || // So   [2] PERSONAL COMPUTER..BRIEFCASE
        128295 == code || // So       WRENCH
        128300 == code || // So       MICROSCOPE
        128488 == code || // So       LEFT SPEECH BUBBLE
        128640 == code || // So       ROCKET
        128658 == code) {
          return Glue_After_Zwj;
        }
        if (128102 <= code && code <= 128105) {
          return E_Base_GAZ;
        }
        return Other;
      }
      return this;
    }
    if (typeof module2 != "undefined" && module2.exports) {
      module2.exports = GraphemeSplitter;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/slice-ansi/1.1.3/e0f39b6e7a9f1e4f0c30b0d7f92981584fb472d1135663735ccbf37591c88a62/node_modules/@pnpm/slice-ansi/index.js
var require_slice_ansi2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/slice-ansi/1.1.3/e0f39b6e7a9f1e4f0c30b0d7f92981584fb472d1135663735ccbf37591c88a62/node_modules/@pnpm/slice-ansi/index.js"(exports2, module2) {
    var ANSI_SEQUENCE = /^([\s\S]*?)(\x1b\[[^m]+m|\x1b\]8;;[\s\S]*?(\x1b\\|\u0007))/;
    var splitGraphemes;
    function getSplitter() {
      if (splitGraphemes)
        return splitGraphemes;
      const GraphemeSplitter = require_grapheme_splitter();
      const splitter = new GraphemeSplitter();
      return splitGraphemes = (text) => splitter.splitGraphemes(text);
    }
    module2.exports = (orig, at = 0, until = orig.length) => {
      if (at < 0 || until < 0)
        throw new RangeError(`Negative indices aren't supported by this implementation`);
      const length = until - at;
      let output = ``;
      let skipped = 0;
      let visible = 0;
      while (orig.length > 0) {
        const lookup = orig.match(ANSI_SEQUENCE) || [orig, orig, void 0];
        let graphemes = getSplitter()(lookup[1]);
        const skipping = Math.min(at - skipped, graphemes.length);
        graphemes = graphemes.slice(skipping);
        const displaying = Math.min(length - visible, graphemes.length);
        output += graphemes.slice(0, displaying).join(``);
        skipped += skipping;
        visible += displaying;
        if (typeof lookup[2] !== `undefined`)
          output += lookup[2];
        orig = orig.slice(lookup[0].length);
      }
      return output;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/getBorderCharacters.js
var require_getBorderCharacters2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/getBorderCharacters.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.getBorderCharacters = void 0;
    var getBorderCharacters4 = (name) => {
      if (name === "honeywell") {
        return {
          topBody: "\u2550",
          topJoin: "\u2564",
          topLeft: "\u2554",
          topRight: "\u2557",
          bottomBody: "\u2550",
          bottomJoin: "\u2567",
          bottomLeft: "\u255A",
          bottomRight: "\u255D",
          bodyLeft: "\u2551",
          bodyRight: "\u2551",
          bodyJoin: "\u2502",
          headerJoin: "\u252C",
          joinBody: "\u2500",
          joinLeft: "\u255F",
          joinRight: "\u2562",
          joinJoin: "\u253C",
          joinMiddleDown: "\u252C",
          joinMiddleUp: "\u2534",
          joinMiddleLeft: "\u2524",
          joinMiddleRight: "\u251C"
        };
      }
      if (name === "norc") {
        return {
          topBody: "\u2500",
          topJoin: "\u252C",
          topLeft: "\u250C",
          topRight: "\u2510",
          bottomBody: "\u2500",
          bottomJoin: "\u2534",
          bottomLeft: "\u2514",
          bottomRight: "\u2518",
          bodyLeft: "\u2502",
          bodyRight: "\u2502",
          bodyJoin: "\u2502",
          headerJoin: "\u252C",
          joinBody: "\u2500",
          joinLeft: "\u251C",
          joinRight: "\u2524",
          joinJoin: "\u253C",
          joinMiddleDown: "\u252C",
          joinMiddleUp: "\u2534",
          joinMiddleLeft: "\u2524",
          joinMiddleRight: "\u251C"
        };
      }
      if (name === "ramac") {
        return {
          topBody: "-",
          topJoin: "+",
          topLeft: "+",
          topRight: "+",
          bottomBody: "-",
          bottomJoin: "+",
          bottomLeft: "+",
          bottomRight: "+",
          bodyLeft: "|",
          bodyRight: "|",
          bodyJoin: "|",
          headerJoin: "+",
          joinBody: "-",
          joinLeft: "|",
          joinRight: "|",
          joinJoin: "|",
          joinMiddleDown: "+",
          joinMiddleUp: "+",
          joinMiddleLeft: "+",
          joinMiddleRight: "+"
        };
      }
      if (name === "void") {
        return {
          topBody: "",
          topJoin: "",
          topLeft: "",
          topRight: "",
          bottomBody: "",
          bottomJoin: "",
          bottomLeft: "",
          bottomRight: "",
          bodyLeft: "",
          bodyRight: "",
          bodyJoin: "",
          headerJoin: "",
          joinBody: "",
          joinLeft: "",
          joinRight: "",
          joinJoin: "",
          joinMiddleDown: "",
          joinMiddleUp: "",
          joinMiddleLeft: "",
          joinMiddleRight: ""
        };
      }
      throw new Error('Unknown border template "' + name + '".');
    };
    exports2.getBorderCharacters = getBorderCharacters4;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/utils.js
var require_utils16 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/utils.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.isCellInRange = exports2.areCellEqual = exports2.calculateRangeCoordinate = exports2.findOriginalRowIndex = exports2.flatten = exports2.extractTruncates = exports2.sumArray = exports2.sequence = exports2.distributeUnevenly = exports2.countSpaceSequence = exports2.groupBySizes = exports2.makeBorderConfig = exports2.splitAnsi = exports2.normalizeString = void 0;
    var slice_ansi_1 = __importDefault2(require_slice_ansi2());
    var string_width_1 = __importDefault2(require_string_width());
    var strip_ansi_1 = __importDefault2(require_strip_ansi());
    var getBorderCharacters_1 = require_getBorderCharacters2();
    var normalizeString2 = (input) => {
      return input.replace(/\r\n/g, "\n");
    };
    exports2.normalizeString = normalizeString2;
    var splitAnsi = (input) => {
      const lengths = (0, strip_ansi_1.default)(input).split("\n").map(string_width_1.default);
      const result2 = [];
      let startIndex = 0;
      lengths.forEach((length) => {
        result2.push(length === 0 ? "" : (0, slice_ansi_1.default)(input, startIndex, startIndex + length));
        startIndex += length + 1;
      });
      return result2;
    };
    exports2.splitAnsi = splitAnsi;
    var makeBorderConfig = (border) => {
      return {
        ...(0, getBorderCharacters_1.getBorderCharacters)("honeywell"),
        ...border
      };
    };
    exports2.makeBorderConfig = makeBorderConfig;
    var groupBySizes = (array, sizes) => {
      let startIndex = 0;
      return sizes.map((size) => {
        const group = array.slice(startIndex, startIndex + size);
        startIndex += size;
        return group;
      });
    };
    exports2.groupBySizes = groupBySizes;
    var countSpaceSequence = (input) => {
      return input.match(/\s+/g)?.length ?? 0;
    };
    exports2.countSpaceSequence = countSpaceSequence;
    var distributeUnevenly = (sum, length) => {
      const result2 = Array.from({ length }).fill(Math.floor(sum / length));
      return result2.map((element, index) => {
        return element + (index < sum % length ? 1 : 0);
      });
    };
    exports2.distributeUnevenly = distributeUnevenly;
    var sequence = (start, end) => {
      return Array.from({ length: end - start + 1 }, (_, index) => {
        return index + start;
      });
    };
    exports2.sequence = sequence;
    var sumArray = (array) => {
      return array.reduce((accumulator, element) => {
        return accumulator + element;
      }, 0);
    };
    exports2.sumArray = sumArray;
    var extractTruncates = (config) => {
      return config.columns.map(({ truncate }) => {
        return truncate;
      });
    };
    exports2.extractTruncates = extractTruncates;
    var flatten2 = (array) => {
      return [].concat(...array);
    };
    exports2.flatten = flatten2;
    var findOriginalRowIndex = (mappedRowHeights, mappedRowIndex) => {
      const rowIndexMapping = (0, exports2.flatten)(mappedRowHeights.map((height, index) => {
        return Array.from({ length: height }, () => {
          return index;
        });
      }));
      return rowIndexMapping[mappedRowIndex];
    };
    exports2.findOriginalRowIndex = findOriginalRowIndex;
    var calculateRangeCoordinate = (spanningCellConfig) => {
      const { row, col, colSpan = 1, rowSpan = 1 } = spanningCellConfig;
      return {
        bottomRight: {
          col: col + colSpan - 1,
          row: row + rowSpan - 1
        },
        topLeft: {
          col,
          row
        }
      };
    };
    exports2.calculateRangeCoordinate = calculateRangeCoordinate;
    var areCellEqual = (cell1, cell2) => {
      return cell1.row === cell2.row && cell1.col === cell2.col;
    };
    exports2.areCellEqual = areCellEqual;
    var isCellInRange = (cell, { topLeft, bottomRight }) => {
      return topLeft.row <= cell.row && cell.row <= bottomRight.row && topLeft.col <= cell.col && cell.col <= bottomRight.col;
    };
    exports2.isCellInRange = isCellInRange;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/alignString.js
var require_alignString2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/alignString.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.alignString = void 0;
    var string_width_1 = __importDefault2(require_string_width());
    var utils_1 = require_utils16();
    var alignLeft = (subject, width) => {
      return subject + " ".repeat(width);
    };
    var alignRight = (subject, width) => {
      return " ".repeat(width) + subject;
    };
    var alignCenter = (subject, width) => {
      return " ".repeat(Math.floor(width / 2)) + subject + " ".repeat(Math.ceil(width / 2));
    };
    var alignJustify = (subject, width) => {
      const spaceSequenceCount = (0, utils_1.countSpaceSequence)(subject);
      if (spaceSequenceCount === 0) {
        return alignLeft(subject, width);
      }
      const addingSpaces = (0, utils_1.distributeUnevenly)(width, spaceSequenceCount);
      if (Math.max(...addingSpaces) > 3) {
        return alignLeft(subject, width);
      }
      let spaceSequenceIndex = 0;
      return subject.replace(/\s+/g, (groupSpace) => {
        return groupSpace + " ".repeat(addingSpaces[spaceSequenceIndex++]);
      });
    };
    var alignString = (subject, containerWidth, alignment) => {
      const subjectWidth = (0, string_width_1.default)(subject);
      if (subjectWidth === containerWidth) {
        return subject;
      }
      if (subjectWidth > containerWidth) {
        throw new Error("Subject parameter value width cannot be greater than the container width.");
      }
      if (subjectWidth === 0) {
        return " ".repeat(containerWidth);
      }
      const availableWidth = containerWidth - subjectWidth;
      if (alignment === "left") {
        return alignLeft(subject, availableWidth);
      }
      if (alignment === "right") {
        return alignRight(subject, availableWidth);
      }
      if (alignment === "justify") {
        return alignJustify(subject, availableWidth);
      }
      return alignCenter(subject, availableWidth);
    };
    exports2.alignString = alignString;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/alignTableData.js
var require_alignTableData2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/alignTableData.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.alignTableData = void 0;
    var alignString_1 = require_alignString2();
    var alignTableData = (rows, config) => {
      return rows.map((row, rowIndex) => {
        return row.map((cell, cellIndex) => {
          const { width, alignment } = config.columns[cellIndex];
          const containingRange = config.spanningCellManager?.getContainingRange({
            col: cellIndex,
            row: rowIndex
          }, { mapped: true });
          if (containingRange) {
            return cell;
          }
          return (0, alignString_1.alignString)(cell, width, alignment);
        });
      });
    };
    exports2.alignTableData = alignTableData;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/wrapString.js
var require_wrapString2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/wrapString.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.wrapString = void 0;
    var slice_ansi_1 = __importDefault2(require_slice_ansi2());
    var string_width_1 = __importDefault2(require_string_width());
    var wrapString = (subject, size) => {
      let subjectSlice = subject;
      const chunks = [];
      do {
        chunks.push((0, slice_ansi_1.default)(subjectSlice, 0, size));
        subjectSlice = (0, slice_ansi_1.default)(subjectSlice, size).trim();
      } while ((0, string_width_1.default)(subjectSlice));
      return chunks;
    };
    exports2.wrapString = wrapString;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/wrapWord.js
var require_wrapWord2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/wrapWord.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.wrapWord = void 0;
    var slice_ansi_1 = __importDefault2(require_slice_ansi2());
    var strip_ansi_1 = __importDefault2(require_strip_ansi());
    var calculateStringLengths = (input, size) => {
      let subject = (0, strip_ansi_1.default)(input);
      const chunks = [];
      const re = new RegExp("(^.{1," + String(Math.max(size, 1)) + "}(\\s+|$))|(^.{1," + String(Math.max(size - 1, 1)) + "}(\\\\|/|_|\\.|,|;|-))");
      do {
        let chunk;
        const match = re.exec(subject);
        if (match) {
          chunk = match[0];
          subject = subject.slice(chunk.length);
          const trimmedLength = chunk.trim().length;
          const offset = chunk.length - trimmedLength;
          chunks.push([trimmedLength, offset]);
        } else {
          chunk = subject.slice(0, size);
          subject = subject.slice(size);
          chunks.push([chunk.length, 0]);
        }
      } while (subject.length);
      return chunks;
    };
    var wrapWord = (input, size) => {
      const result2 = [];
      let startIndex = 0;
      calculateStringLengths(input, size).forEach(([length, offset]) => {
        result2.push((0, slice_ansi_1.default)(input, startIndex, startIndex + length));
        startIndex += length + offset;
      });
      return result2;
    };
    exports2.wrapWord = wrapWord;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/wrapCell.js
var require_wrapCell2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/wrapCell.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.wrapCell = void 0;
    var utils_1 = require_utils16();
    var wrapString_1 = require_wrapString2();
    var wrapWord_1 = require_wrapWord2();
    var wrapCell = (cellValue, cellWidth, useWrapWord) => {
      const cellLines = (0, utils_1.splitAnsi)(cellValue);
      for (let lineNr = 0; lineNr < cellLines.length; ) {
        let lineChunks;
        if (useWrapWord) {
          lineChunks = (0, wrapWord_1.wrapWord)(cellLines[lineNr], cellWidth);
        } else {
          lineChunks = (0, wrapString_1.wrapString)(cellLines[lineNr], cellWidth);
        }
        cellLines.splice(lineNr, 1, ...lineChunks);
        lineNr += lineChunks.length;
      }
      return cellLines;
    };
    exports2.wrapCell = wrapCell;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/calculateCellHeight.js
var require_calculateCellHeight2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/calculateCellHeight.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.calculateCellHeight = void 0;
    var wrapCell_1 = require_wrapCell2();
    var calculateCellHeight = (value, columnWidth, useWrapWord = false) => {
      return (0, wrapCell_1.wrapCell)(value, columnWidth, useWrapWord).length;
    };
    exports2.calculateCellHeight = calculateCellHeight;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/calculateRowHeights.js
var require_calculateRowHeights2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/calculateRowHeights.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.calculateRowHeights = void 0;
    var calculateCellHeight_1 = require_calculateCellHeight2();
    var utils_1 = require_utils16();
    var calculateRowHeights = (rows, config) => {
      const rowHeights = [];
      for (const [rowIndex, row] of rows.entries()) {
        let rowHeight = 1;
        row.forEach((cell, cellIndex) => {
          const containingRange = config.spanningCellManager?.getContainingRange({
            col: cellIndex,
            row: rowIndex
          });
          if (!containingRange) {
            const cellHeight = (0, calculateCellHeight_1.calculateCellHeight)(cell, config.columns[cellIndex].width, config.columns[cellIndex].wrapWord);
            rowHeight = Math.max(rowHeight, cellHeight);
            return;
          }
          const { topLeft, bottomRight, height } = containingRange;
          if (rowIndex === bottomRight.row) {
            const totalOccupiedSpanningCellHeight = (0, utils_1.sumArray)(rowHeights.slice(topLeft.row));
            const totalHorizontalBorderHeight = bottomRight.row - topLeft.row;
            const totalHiddenHorizontalBorderHeight = (0, utils_1.sequence)(topLeft.row + 1, bottomRight.row).filter((horizontalBorderIndex) => {
              return !config.drawHorizontalLine?.(horizontalBorderIndex, rows.length);
            }).length;
            const cellHeight = height - totalOccupiedSpanningCellHeight - totalHorizontalBorderHeight + totalHiddenHorizontalBorderHeight;
            rowHeight = Math.max(rowHeight, cellHeight);
          }
        });
        rowHeights.push(rowHeight);
      }
      return rowHeights;
    };
    exports2.calculateRowHeights = calculateRowHeights;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/drawContent.js
var require_drawContent2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/drawContent.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.drawContent = void 0;
    var drawContent = (parameters) => {
      const { contents, separatorGetter, drawSeparator, spanningCellManager, rowIndex, elementType } = parameters;
      const contentSize = contents.length;
      const result2 = [];
      if (drawSeparator(0, contentSize)) {
        result2.push(separatorGetter(0, contentSize));
      }
      contents.forEach((content, contentIndex) => {
        if (!elementType || elementType === "border" || elementType === "row") {
          result2.push(content);
        }
        if (elementType === "cell" && rowIndex === void 0) {
          result2.push(content);
        }
        if (elementType === "cell" && rowIndex !== void 0) {
          const containingRange = spanningCellManager?.getContainingRange({
            col: contentIndex,
            row: rowIndex
          });
          if (!containingRange || contentIndex === containingRange.topLeft.col) {
            result2.push(content);
          }
        }
        if (contentIndex + 1 < contentSize && drawSeparator(contentIndex + 1, contentSize)) {
          const separator = separatorGetter(contentIndex + 1, contentSize);
          if (elementType === "cell" && rowIndex !== void 0) {
            const currentCell = {
              col: contentIndex + 1,
              row: rowIndex
            };
            const containingRange = spanningCellManager?.getContainingRange(currentCell);
            if (!containingRange || containingRange.topLeft.col === currentCell.col) {
              result2.push(separator);
            }
          } else {
            result2.push(separator);
          }
        }
      });
      if (drawSeparator(contentSize, contentSize)) {
        result2.push(separatorGetter(contentSize, contentSize));
      }
      return result2.join("");
    };
    exports2.drawContent = drawContent;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/drawBorder.js
var require_drawBorder2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/drawBorder.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.createTableBorderGetter = exports2.drawBorderBottom = exports2.drawBorderJoin = exports2.drawBorderTop = exports2.drawBorder = exports2.createSeparatorGetter = exports2.drawBorderSegments = void 0;
    var drawContent_1 = require_drawContent2();
    var drawBorderSegments = (columnWidths, parameters) => {
      const { separator, horizontalBorderIndex, spanningCellManager } = parameters;
      return columnWidths.map((columnWidth, columnIndex) => {
        const normalSegment = separator.body.repeat(columnWidth);
        if (horizontalBorderIndex === void 0) {
          return normalSegment;
        }
        const range = spanningCellManager?.getContainingRange({
          col: columnIndex,
          row: horizontalBorderIndex
        });
        if (!range) {
          return normalSegment;
        }
        const { topLeft } = range;
        if (horizontalBorderIndex === topLeft.row) {
          return normalSegment;
        }
        if (columnIndex !== topLeft.col) {
          return "";
        }
        return range.extractBorderContent(horizontalBorderIndex);
      });
    };
    exports2.drawBorderSegments = drawBorderSegments;
    var createSeparatorGetter = (dependencies) => {
      const { separator, spanningCellManager, horizontalBorderIndex, rowCount } = dependencies;
      return (verticalBorderIndex, columnCount) => {
        const inSameRange = spanningCellManager?.inSameRange;
        if (horizontalBorderIndex !== void 0 && inSameRange) {
          const topCell = {
            col: verticalBorderIndex,
            row: horizontalBorderIndex - 1
          };
          const leftCell = {
            col: verticalBorderIndex - 1,
            row: horizontalBorderIndex
          };
          const oppositeCell = {
            col: verticalBorderIndex - 1,
            row: horizontalBorderIndex - 1
          };
          const currentCell = {
            col: verticalBorderIndex,
            row: horizontalBorderIndex
          };
          const pairs2 = [
            [oppositeCell, topCell],
            [topCell, currentCell],
            [currentCell, leftCell],
            [leftCell, oppositeCell]
          ];
          if (verticalBorderIndex === 0) {
            if (inSameRange(currentCell, topCell) && separator.bodyJoinOuter) {
              return separator.bodyJoinOuter;
            }
            return separator.left;
          }
          if (verticalBorderIndex === columnCount) {
            if (inSameRange(oppositeCell, leftCell) && separator.bodyJoinOuter) {
              return separator.bodyJoinOuter;
            }
            return separator.right;
          }
          if (horizontalBorderIndex === 0) {
            if (inSameRange(currentCell, leftCell)) {
              return separator.body;
            }
            return separator.join;
          }
          if (horizontalBorderIndex === rowCount) {
            if (inSameRange(topCell, oppositeCell)) {
              return separator.body;
            }
            return separator.join;
          }
          const sameRangeCount = pairs2.map((pair) => {
            return inSameRange(...pair);
          }).filter(Boolean).length;
          if (sameRangeCount === 0) {
            return separator.join;
          }
          if (sameRangeCount === 4) {
            return "";
          }
          if (sameRangeCount === 2) {
            if (inSameRange(...pairs2[1]) && inSameRange(...pairs2[3]) && separator.bodyJoinInner) {
              return separator.bodyJoinInner;
            }
            return separator.body;
          }
          if (sameRangeCount === 1) {
            if (!separator.joinRight || !separator.joinLeft || !separator.joinUp || !separator.joinDown) {
              throw new Error(`Can not get border separator for position [${horizontalBorderIndex}, ${verticalBorderIndex}]`);
            }
            if (inSameRange(...pairs2[0])) {
              return separator.joinDown;
            }
            if (inSameRange(...pairs2[1])) {
              return separator.joinLeft;
            }
            if (inSameRange(...pairs2[2])) {
              return separator.joinUp;
            }
            return separator.joinRight;
          }
          throw new Error("Invalid case");
        }
        if (verticalBorderIndex === 0) {
          return separator.left;
        }
        if (verticalBorderIndex === columnCount) {
          return separator.right;
        }
        return separator.join;
      };
    };
    exports2.createSeparatorGetter = createSeparatorGetter;
    var drawBorder = (columnWidths, parameters) => {
      const borderSegments = (0, exports2.drawBorderSegments)(columnWidths, parameters);
      const { drawVerticalLine, horizontalBorderIndex, spanningCellManager } = parameters;
      return (0, drawContent_1.drawContent)({
        contents: borderSegments,
        drawSeparator: drawVerticalLine,
        elementType: "border",
        rowIndex: horizontalBorderIndex,
        separatorGetter: (0, exports2.createSeparatorGetter)(parameters),
        spanningCellManager
      }) + "\n";
    };
    exports2.drawBorder = drawBorder;
    var drawBorderTop = (columnWidths, parameters) => {
      const { border } = parameters;
      const result2 = (0, exports2.drawBorder)(columnWidths, {
        ...parameters,
        separator: {
          body: border.topBody,
          join: border.topJoin,
          left: border.topLeft,
          right: border.topRight
        }
      });
      if (result2 === "\n") {
        return "";
      }
      return result2;
    };
    exports2.drawBorderTop = drawBorderTop;
    var drawBorderJoin = (columnWidths, parameters) => {
      const { border } = parameters;
      return (0, exports2.drawBorder)(columnWidths, {
        ...parameters,
        separator: {
          body: border.joinBody,
          bodyJoinInner: border.bodyJoin,
          bodyJoinOuter: border.bodyLeft,
          join: border.joinJoin,
          joinDown: border.joinMiddleDown,
          joinLeft: border.joinMiddleLeft,
          joinRight: border.joinMiddleRight,
          joinUp: border.joinMiddleUp,
          left: border.joinLeft,
          right: border.joinRight
        }
      });
    };
    exports2.drawBorderJoin = drawBorderJoin;
    var drawBorderBottom = (columnWidths, parameters) => {
      const { border } = parameters;
      return (0, exports2.drawBorder)(columnWidths, {
        ...parameters,
        separator: {
          body: border.bottomBody,
          join: border.bottomJoin,
          left: border.bottomLeft,
          right: border.bottomRight
        }
      });
    };
    exports2.drawBorderBottom = drawBorderBottom;
    var createTableBorderGetter = (columnWidths, parameters) => {
      return (index, size) => {
        const drawBorderParameters = {
          ...parameters,
          horizontalBorderIndex: index
        };
        if (index === 0) {
          return (0, exports2.drawBorderTop)(columnWidths, drawBorderParameters);
        } else if (index === size) {
          return (0, exports2.drawBorderBottom)(columnWidths, drawBorderParameters);
        }
        return (0, exports2.drawBorderJoin)(columnWidths, drawBorderParameters);
      };
    };
    exports2.createTableBorderGetter = createTableBorderGetter;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/drawRow.js
var require_drawRow2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/drawRow.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.drawRow = void 0;
    var drawContent_1 = require_drawContent2();
    var drawRow = (row, config) => {
      const { border, drawVerticalLine, rowIndex, spanningCellManager } = config;
      return (0, drawContent_1.drawContent)({
        contents: row,
        drawSeparator: drawVerticalLine,
        elementType: "cell",
        rowIndex,
        separatorGetter: (index, columnCount) => {
          if (index === 0) {
            return border.bodyLeft;
          }
          if (index === columnCount) {
            return border.bodyRight;
          }
          return border.bodyJoin;
        },
        spanningCellManager
      }) + "\n";
    };
    exports2.drawRow = drawRow;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/generated/validators.js
var require_validators2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/generated/validators.js"(exports2) {
    "use strict";
    exports2["config.json"] = validate43;
    var schema13 = {
      "$id": "config.json",
      "$schema": "http://json-schema.org/draft-07/schema#",
      "type": "object",
      "properties": {
        "border": {
          "$ref": "shared.json#/definitions/borders"
        },
        "header": {
          "type": "object",
          "properties": {
            "content": {
              "type": "string"
            },
            "alignment": {
              "$ref": "shared.json#/definitions/alignment"
            },
            "wrapWord": {
              "type": "boolean"
            },
            "truncate": {
              "type": "integer"
            },
            "paddingLeft": {
              "type": "integer"
            },
            "paddingRight": {
              "type": "integer"
            }
          },
          "required": ["content"],
          "additionalProperties": false
        },
        "columns": {
          "$ref": "shared.json#/definitions/columns"
        },
        "columnDefault": {
          "$ref": "shared.json#/definitions/column"
        },
        "drawVerticalLine": {
          "typeof": "function"
        },
        "drawHorizontalLine": {
          "typeof": "function"
        },
        "singleLine": {
          "typeof": "boolean"
        },
        "spanningCells": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "col": {
                "type": "integer",
                "minimum": 0
              },
              "row": {
                "type": "integer",
                "minimum": 0
              },
              "colSpan": {
                "type": "integer",
                "minimum": 1
              },
              "rowSpan": {
                "type": "integer",
                "minimum": 1
              },
              "alignment": {
                "$ref": "shared.json#/definitions/alignment"
              },
              "verticalAlignment": {
                "$ref": "shared.json#/definitions/verticalAlignment"
              },
              "wrapWord": {
                "type": "boolean"
              },
              "truncate": {
                "type": "integer"
              },
              "paddingLeft": {
                "type": "integer"
              },
              "paddingRight": {
                "type": "integer"
              }
            },
            "required": ["row", "col"],
            "additionalProperties": false
          }
        }
      },
      "additionalProperties": false
    };
    var schema15 = {
      "type": "object",
      "properties": {
        "topBody": {
          "$ref": "#/definitions/border"
        },
        "topJoin": {
          "$ref": "#/definitions/border"
        },
        "topLeft": {
          "$ref": "#/definitions/border"
        },
        "topRight": {
          "$ref": "#/definitions/border"
        },
        "bottomBody": {
          "$ref": "#/definitions/border"
        },
        "bottomJoin": {
          "$ref": "#/definitions/border"
        },
        "bottomLeft": {
          "$ref": "#/definitions/border"
        },
        "bottomRight": {
          "$ref": "#/definitions/border"
        },
        "bodyLeft": {
          "$ref": "#/definitions/border"
        },
        "bodyRight": {
          "$ref": "#/definitions/border"
        },
        "bodyJoin": {
          "$ref": "#/definitions/border"
        },
        "headerJoin": {
          "$ref": "#/definitions/border"
        },
        "joinBody": {
          "$ref": "#/definitions/border"
        },
        "joinLeft": {
          "$ref": "#/definitions/border"
        },
        "joinRight": {
          "$ref": "#/definitions/border"
        },
        "joinJoin": {
          "$ref": "#/definitions/border"
        },
        "joinMiddleUp": {
          "$ref": "#/definitions/border"
        },
        "joinMiddleDown": {
          "$ref": "#/definitions/border"
        },
        "joinMiddleLeft": {
          "$ref": "#/definitions/border"
        },
        "joinMiddleRight": {
          "$ref": "#/definitions/border"
        }
      },
      "additionalProperties": false
    };
    var func4 = Object.prototype.hasOwnProperty;
    function validate46(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) {
      let vErrors = null;
      let errors2 = 0;
      if (typeof data !== "string") {
        const err0 = {
          instancePath,
          schemaPath: "#/type",
          keyword: "type",
          params: {
            type: "string"
          },
          message: "must be string"
        };
        if (vErrors === null) {
          vErrors = [err0];
        } else {
          vErrors.push(err0);
        }
        errors2++;
      }
      validate46.errors = vErrors;
      return errors2 === 0;
    }
    function validate45(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) {
      let vErrors = null;
      let errors2 = 0;
      if (data && typeof data == "object" && !Array.isArray(data)) {
        for (const key0 in data) {
          if (!func4.call(schema15.properties, key0)) {
            const err0 = {
              instancePath,
              schemaPath: "#/additionalProperties",
              keyword: "additionalProperties",
              params: {
                additionalProperty: key0
              },
              message: "must NOT have additional properties"
            };
            if (vErrors === null) {
              vErrors = [err0];
            } else {
              vErrors.push(err0);
            }
            errors2++;
          }
        }
        if (data.topBody !== void 0) {
          if (!validate46(data.topBody, {
            instancePath: instancePath + "/topBody",
            parentData: data,
            parentDataProperty: "topBody",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.topJoin !== void 0) {
          if (!validate46(data.topJoin, {
            instancePath: instancePath + "/topJoin",
            parentData: data,
            parentDataProperty: "topJoin",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.topLeft !== void 0) {
          if (!validate46(data.topLeft, {
            instancePath: instancePath + "/topLeft",
            parentData: data,
            parentDataProperty: "topLeft",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.topRight !== void 0) {
          if (!validate46(data.topRight, {
            instancePath: instancePath + "/topRight",
            parentData: data,
            parentDataProperty: "topRight",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.bottomBody !== void 0) {
          if (!validate46(data.bottomBody, {
            instancePath: instancePath + "/bottomBody",
            parentData: data,
            parentDataProperty: "bottomBody",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.bottomJoin !== void 0) {
          if (!validate46(data.bottomJoin, {
            instancePath: instancePath + "/bottomJoin",
            parentData: data,
            parentDataProperty: "bottomJoin",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.bottomLeft !== void 0) {
          if (!validate46(data.bottomLeft, {
            instancePath: instancePath + "/bottomLeft",
            parentData: data,
            parentDataProperty: "bottomLeft",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.bottomRight !== void 0) {
          if (!validate46(data.bottomRight, {
            instancePath: instancePath + "/bottomRight",
            parentData: data,
            parentDataProperty: "bottomRight",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.bodyLeft !== void 0) {
          if (!validate46(data.bodyLeft, {
            instancePath: instancePath + "/bodyLeft",
            parentData: data,
            parentDataProperty: "bodyLeft",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.bodyRight !== void 0) {
          if (!validate46(data.bodyRight, {
            instancePath: instancePath + "/bodyRight",
            parentData: data,
            parentDataProperty: "bodyRight",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.bodyJoin !== void 0) {
          if (!validate46(data.bodyJoin, {
            instancePath: instancePath + "/bodyJoin",
            parentData: data,
            parentDataProperty: "bodyJoin",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.headerJoin !== void 0) {
          if (!validate46(data.headerJoin, {
            instancePath: instancePath + "/headerJoin",
            parentData: data,
            parentDataProperty: "headerJoin",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.joinBody !== void 0) {
          if (!validate46(data.joinBody, {
            instancePath: instancePath + "/joinBody",
            parentData: data,
            parentDataProperty: "joinBody",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.joinLeft !== void 0) {
          if (!validate46(data.joinLeft, {
            instancePath: instancePath + "/joinLeft",
            parentData: data,
            parentDataProperty: "joinLeft",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.joinRight !== void 0) {
          if (!validate46(data.joinRight, {
            instancePath: instancePath + "/joinRight",
            parentData: data,
            parentDataProperty: "joinRight",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.joinJoin !== void 0) {
          if (!validate46(data.joinJoin, {
            instancePath: instancePath + "/joinJoin",
            parentData: data,
            parentDataProperty: "joinJoin",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.joinMiddleUp !== void 0) {
          if (!validate46(data.joinMiddleUp, {
            instancePath: instancePath + "/joinMiddleUp",
            parentData: data,
            parentDataProperty: "joinMiddleUp",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.joinMiddleDown !== void 0) {
          if (!validate46(data.joinMiddleDown, {
            instancePath: instancePath + "/joinMiddleDown",
            parentData: data,
            parentDataProperty: "joinMiddleDown",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.joinMiddleLeft !== void 0) {
          if (!validate46(data.joinMiddleLeft, {
            instancePath: instancePath + "/joinMiddleLeft",
            parentData: data,
            parentDataProperty: "joinMiddleLeft",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.joinMiddleRight !== void 0) {
          if (!validate46(data.joinMiddleRight, {
            instancePath: instancePath + "/joinMiddleRight",
            parentData: data,
            parentDataProperty: "joinMiddleRight",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
      } else {
        const err1 = {
          instancePath,
          schemaPath: "#/type",
          keyword: "type",
          params: {
            type: "object"
          },
          message: "must be object"
        };
        if (vErrors === null) {
          vErrors = [err1];
        } else {
          vErrors.push(err1);
        }
        errors2++;
      }
      validate45.errors = vErrors;
      return errors2 === 0;
    }
    var schema17 = {
      "type": "string",
      "enum": ["left", "right", "center", "justify"]
    };
    function validate68(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) {
      let vErrors = null;
      let errors2 = 0;
      if (typeof data !== "string") {
        const err0 = {
          instancePath,
          schemaPath: "#/type",
          keyword: "type",
          params: {
            type: "string"
          },
          message: "must be string"
        };
        if (vErrors === null) {
          vErrors = [err0];
        } else {
          vErrors.push(err0);
        }
        errors2++;
      }
      if (!(data === "left" || data === "right" || data === "center" || data === "justify")) {
        const err1 = {
          instancePath,
          schemaPath: "#/enum",
          keyword: "enum",
          params: {
            allowedValues: schema17.enum
          },
          message: "must be equal to one of the allowed values"
        };
        if (vErrors === null) {
          vErrors = [err1];
        } else {
          vErrors.push(err1);
        }
        errors2++;
      }
      validate68.errors = vErrors;
      return errors2 === 0;
    }
    var pattern0 = new RegExp("^[0-9]+$", "u");
    function validate72(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) {
      let vErrors = null;
      let errors2 = 0;
      if (typeof data !== "string") {
        const err0 = {
          instancePath,
          schemaPath: "#/type",
          keyword: "type",
          params: {
            type: "string"
          },
          message: "must be string"
        };
        if (vErrors === null) {
          vErrors = [err0];
        } else {
          vErrors.push(err0);
        }
        errors2++;
      }
      if (!(data === "left" || data === "right" || data === "center" || data === "justify")) {
        const err1 = {
          instancePath,
          schemaPath: "#/enum",
          keyword: "enum",
          params: {
            allowedValues: schema17.enum
          },
          message: "must be equal to one of the allowed values"
        };
        if (vErrors === null) {
          vErrors = [err1];
        } else {
          vErrors.push(err1);
        }
        errors2++;
      }
      validate72.errors = vErrors;
      return errors2 === 0;
    }
    var schema21 = {
      "type": "string",
      "enum": ["top", "middle", "bottom"]
    };
    function validate74(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) {
      let vErrors = null;
      let errors2 = 0;
      if (typeof data !== "string") {
        const err0 = {
          instancePath,
          schemaPath: "#/type",
          keyword: "type",
          params: {
            type: "string"
          },
          message: "must be string"
        };
        if (vErrors === null) {
          vErrors = [err0];
        } else {
          vErrors.push(err0);
        }
        errors2++;
      }
      if (!(data === "top" || data === "middle" || data === "bottom")) {
        const err1 = {
          instancePath,
          schemaPath: "#/enum",
          keyword: "enum",
          params: {
            allowedValues: schema21.enum
          },
          message: "must be equal to one of the allowed values"
        };
        if (vErrors === null) {
          vErrors = [err1];
        } else {
          vErrors.push(err1);
        }
        errors2++;
      }
      validate74.errors = vErrors;
      return errors2 === 0;
    }
    function validate71(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) {
      let vErrors = null;
      let errors2 = 0;
      if (data && typeof data == "object" && !Array.isArray(data)) {
        for (const key0 in data) {
          if (!(key0 === "alignment" || key0 === "verticalAlignment" || key0 === "width" || key0 === "wrapWord" || key0 === "truncate" || key0 === "paddingLeft" || key0 === "paddingRight")) {
            const err0 = {
              instancePath,
              schemaPath: "#/additionalProperties",
              keyword: "additionalProperties",
              params: {
                additionalProperty: key0
              },
              message: "must NOT have additional properties"
            };
            if (vErrors === null) {
              vErrors = [err0];
            } else {
              vErrors.push(err0);
            }
            errors2++;
          }
        }
        if (data.alignment !== void 0) {
          if (!validate72(data.alignment, {
            instancePath: instancePath + "/alignment",
            parentData: data,
            parentDataProperty: "alignment",
            rootData
          })) {
            vErrors = vErrors === null ? validate72.errors : vErrors.concat(validate72.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.verticalAlignment !== void 0) {
          if (!validate74(data.verticalAlignment, {
            instancePath: instancePath + "/verticalAlignment",
            parentData: data,
            parentDataProperty: "verticalAlignment",
            rootData
          })) {
            vErrors = vErrors === null ? validate74.errors : vErrors.concat(validate74.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.width !== void 0) {
          let data2 = data.width;
          if (!(typeof data2 == "number" && (!(data2 % 1) && !isNaN(data2)) && isFinite(data2))) {
            const err1 = {
              instancePath: instancePath + "/width",
              schemaPath: "#/properties/width/type",
              keyword: "type",
              params: {
                type: "integer"
              },
              message: "must be integer"
            };
            if (vErrors === null) {
              vErrors = [err1];
            } else {
              vErrors.push(err1);
            }
            errors2++;
          }
          if (typeof data2 == "number" && isFinite(data2)) {
            if (data2 < 1 || isNaN(data2)) {
              const err2 = {
                instancePath: instancePath + "/width",
                schemaPath: "#/properties/width/minimum",
                keyword: "minimum",
                params: {
                  comparison: ">=",
                  limit: 1
                },
                message: "must be >= 1"
              };
              if (vErrors === null) {
                vErrors = [err2];
              } else {
                vErrors.push(err2);
              }
              errors2++;
            }
          }
        }
        if (data.wrapWord !== void 0) {
          if (typeof data.wrapWord !== "boolean") {
            const err3 = {
              instancePath: instancePath + "/wrapWord",
              schemaPath: "#/properties/wrapWord/type",
              keyword: "type",
              params: {
                type: "boolean"
              },
              message: "must be boolean"
            };
            if (vErrors === null) {
              vErrors = [err3];
            } else {
              vErrors.push(err3);
            }
            errors2++;
          }
        }
        if (data.truncate !== void 0) {
          let data4 = data.truncate;
          if (!(typeof data4 == "number" && (!(data4 % 1) && !isNaN(data4)) && isFinite(data4))) {
            const err4 = {
              instancePath: instancePath + "/truncate",
              schemaPath: "#/properties/truncate/type",
              keyword: "type",
              params: {
                type: "integer"
              },
              message: "must be integer"
            };
            if (vErrors === null) {
              vErrors = [err4];
            } else {
              vErrors.push(err4);
            }
            errors2++;
          }
        }
        if (data.paddingLeft !== void 0) {
          let data5 = data.paddingLeft;
          if (!(typeof data5 == "number" && (!(data5 % 1) && !isNaN(data5)) && isFinite(data5))) {
            const err5 = {
              instancePath: instancePath + "/paddingLeft",
              schemaPath: "#/properties/paddingLeft/type",
              keyword: "type",
              params: {
                type: "integer"
              },
              message: "must be integer"
            };
            if (vErrors === null) {
              vErrors = [err5];
            } else {
              vErrors.push(err5);
            }
            errors2++;
          }
        }
        if (data.paddingRight !== void 0) {
          let data6 = data.paddingRight;
          if (!(typeof data6 == "number" && (!(data6 % 1) && !isNaN(data6)) && isFinite(data6))) {
            const err6 = {
              instancePath: instancePath + "/paddingRight",
              schemaPath: "#/properties/paddingRight/type",
              keyword: "type",
              params: {
                type: "integer"
              },
              message: "must be integer"
            };
            if (vErrors === null) {
              vErrors = [err6];
            } else {
              vErrors.push(err6);
            }
            errors2++;
          }
        }
      } else {
        const err7 = {
          instancePath,
          schemaPath: "#/type",
          keyword: "type",
          params: {
            type: "object"
          },
          message: "must be object"
        };
        if (vErrors === null) {
          vErrors = [err7];
        } else {
          vErrors.push(err7);
        }
        errors2++;
      }
      validate71.errors = vErrors;
      return errors2 === 0;
    }
    function validate70(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) {
      let vErrors = null;
      let errors2 = 0;
      const _errs0 = errors2;
      let valid0 = false;
      let passing0 = null;
      const _errs1 = errors2;
      if (data && typeof data == "object" && !Array.isArray(data)) {
        for (const key0 in data) {
          if (!pattern0.test(key0)) {
            const err0 = {
              instancePath,
              schemaPath: "#/oneOf/0/additionalProperties",
              keyword: "additionalProperties",
              params: {
                additionalProperty: key0
              },
              message: "must NOT have additional properties"
            };
            if (vErrors === null) {
              vErrors = [err0];
            } else {
              vErrors.push(err0);
            }
            errors2++;
          }
        }
        for (const key1 in data) {
          if (pattern0.test(key1)) {
            if (!validate71(data[key1], {
              instancePath: instancePath + "/" + key1.replace(/~/g, "~0").replace(/\//g, "~1"),
              parentData: data,
              parentDataProperty: key1,
              rootData
            })) {
              vErrors = vErrors === null ? validate71.errors : vErrors.concat(validate71.errors);
              errors2 = vErrors.length;
            }
          }
        }
      } else {
        const err1 = {
          instancePath,
          schemaPath: "#/oneOf/0/type",
          keyword: "type",
          params: {
            type: "object"
          },
          message: "must be object"
        };
        if (vErrors === null) {
          vErrors = [err1];
        } else {
          vErrors.push(err1);
        }
        errors2++;
      }
      var _valid0 = _errs1 === errors2;
      if (_valid0) {
        valid0 = true;
        passing0 = 0;
      }
      const _errs5 = errors2;
      if (Array.isArray(data)) {
        const len0 = data.length;
        for (let i0 = 0; i0 < len0; i0++) {
          if (!validate71(data[i0], {
            instancePath: instancePath + "/" + i0,
            parentData: data,
            parentDataProperty: i0,
            rootData
          })) {
            vErrors = vErrors === null ? validate71.errors : vErrors.concat(validate71.errors);
            errors2 = vErrors.length;
          }
        }
      } else {
        const err2 = {
          instancePath,
          schemaPath: "#/oneOf/1/type",
          keyword: "type",
          params: {
            type: "array"
          },
          message: "must be array"
        };
        if (vErrors === null) {
          vErrors = [err2];
        } else {
          vErrors.push(err2);
        }
        errors2++;
      }
      var _valid0 = _errs5 === errors2;
      if (_valid0 && valid0) {
        valid0 = false;
        passing0 = [passing0, 1];
      } else {
        if (_valid0) {
          valid0 = true;
          passing0 = 1;
        }
      }
      if (!valid0) {
        const err3 = {
          instancePath,
          schemaPath: "#/oneOf",
          keyword: "oneOf",
          params: {
            passingSchemas: passing0
          },
          message: "must match exactly one schema in oneOf"
        };
        if (vErrors === null) {
          vErrors = [err3];
        } else {
          vErrors.push(err3);
        }
        errors2++;
      } else {
        errors2 = _errs0;
        if (vErrors !== null) {
          if (_errs0) {
            vErrors.length = _errs0;
          } else {
            vErrors = null;
          }
        }
      }
      validate70.errors = vErrors;
      return errors2 === 0;
    }
    function validate79(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) {
      let vErrors = null;
      let errors2 = 0;
      if (data && typeof data == "object" && !Array.isArray(data)) {
        for (const key0 in data) {
          if (!(key0 === "alignment" || key0 === "verticalAlignment" || key0 === "width" || key0 === "wrapWord" || key0 === "truncate" || key0 === "paddingLeft" || key0 === "paddingRight")) {
            const err0 = {
              instancePath,
              schemaPath: "#/additionalProperties",
              keyword: "additionalProperties",
              params: {
                additionalProperty: key0
              },
              message: "must NOT have additional properties"
            };
            if (vErrors === null) {
              vErrors = [err0];
            } else {
              vErrors.push(err0);
            }
            errors2++;
          }
        }
        if (data.alignment !== void 0) {
          if (!validate72(data.alignment, {
            instancePath: instancePath + "/alignment",
            parentData: data,
            parentDataProperty: "alignment",
            rootData
          })) {
            vErrors = vErrors === null ? validate72.errors : vErrors.concat(validate72.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.verticalAlignment !== void 0) {
          if (!validate74(data.verticalAlignment, {
            instancePath: instancePath + "/verticalAlignment",
            parentData: data,
            parentDataProperty: "verticalAlignment",
            rootData
          })) {
            vErrors = vErrors === null ? validate74.errors : vErrors.concat(validate74.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.width !== void 0) {
          let data2 = data.width;
          if (!(typeof data2 == "number" && (!(data2 % 1) && !isNaN(data2)) && isFinite(data2))) {
            const err1 = {
              instancePath: instancePath + "/width",
              schemaPath: "#/properties/width/type",
              keyword: "type",
              params: {
                type: "integer"
              },
              message: "must be integer"
            };
            if (vErrors === null) {
              vErrors = [err1];
            } else {
              vErrors.push(err1);
            }
            errors2++;
          }
          if (typeof data2 == "number" && isFinite(data2)) {
            if (data2 < 1 || isNaN(data2)) {
              const err2 = {
                instancePath: instancePath + "/width",
                schemaPath: "#/properties/width/minimum",
                keyword: "minimum",
                params: {
                  comparison: ">=",
                  limit: 1
                },
                message: "must be >= 1"
              };
              if (vErrors === null) {
                vErrors = [err2];
              } else {
                vErrors.push(err2);
              }
              errors2++;
            }
          }
        }
        if (data.wrapWord !== void 0) {
          if (typeof data.wrapWord !== "boolean") {
            const err3 = {
              instancePath: instancePath + "/wrapWord",
              schemaPath: "#/properties/wrapWord/type",
              keyword: "type",
              params: {
                type: "boolean"
              },
              message: "must be boolean"
            };
            if (vErrors === null) {
              vErrors = [err3];
            } else {
              vErrors.push(err3);
            }
            errors2++;
          }
        }
        if (data.truncate !== void 0) {
          let data4 = data.truncate;
          if (!(typeof data4 == "number" && (!(data4 % 1) && !isNaN(data4)) && isFinite(data4))) {
            const err4 = {
              instancePath: instancePath + "/truncate",
              schemaPath: "#/properties/truncate/type",
              keyword: "type",
              params: {
                type: "integer"
              },
              message: "must be integer"
            };
            if (vErrors === null) {
              vErrors = [err4];
            } else {
              vErrors.push(err4);
            }
            errors2++;
          }
        }
        if (data.paddingLeft !== void 0) {
          let data5 = data.paddingLeft;
          if (!(typeof data5 == "number" && (!(data5 % 1) && !isNaN(data5)) && isFinite(data5))) {
            const err5 = {
              instancePath: instancePath + "/paddingLeft",
              schemaPath: "#/properties/paddingLeft/type",
              keyword: "type",
              params: {
                type: "integer"
              },
              message: "must be integer"
            };
            if (vErrors === null) {
              vErrors = [err5];
            } else {
              vErrors.push(err5);
            }
            errors2++;
          }
        }
        if (data.paddingRight !== void 0) {
          let data6 = data.paddingRight;
          if (!(typeof data6 == "number" && (!(data6 % 1) && !isNaN(data6)) && isFinite(data6))) {
            const err6 = {
              instancePath: instancePath + "/paddingRight",
              schemaPath: "#/properties/paddingRight/type",
              keyword: "type",
              params: {
                type: "integer"
              },
              message: "must be integer"
            };
            if (vErrors === null) {
              vErrors = [err6];
            } else {
              vErrors.push(err6);
            }
            errors2++;
          }
        }
      } else {
        const err7 = {
          instancePath,
          schemaPath: "#/type",
          keyword: "type",
          params: {
            type: "object"
          },
          message: "must be object"
        };
        if (vErrors === null) {
          vErrors = [err7];
        } else {
          vErrors.push(err7);
        }
        errors2++;
      }
      validate79.errors = vErrors;
      return errors2 === 0;
    }
    function validate84(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) {
      let vErrors = null;
      let errors2 = 0;
      if (typeof data !== "string") {
        const err0 = {
          instancePath,
          schemaPath: "#/type",
          keyword: "type",
          params: {
            type: "string"
          },
          message: "must be string"
        };
        if (vErrors === null) {
          vErrors = [err0];
        } else {
          vErrors.push(err0);
        }
        errors2++;
      }
      if (!(data === "top" || data === "middle" || data === "bottom")) {
        const err1 = {
          instancePath,
          schemaPath: "#/enum",
          keyword: "enum",
          params: {
            allowedValues: schema21.enum
          },
          message: "must be equal to one of the allowed values"
        };
        if (vErrors === null) {
          vErrors = [err1];
        } else {
          vErrors.push(err1);
        }
        errors2++;
      }
      validate84.errors = vErrors;
      return errors2 === 0;
    }
    function validate43(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) {
      ;
      let vErrors = null;
      let errors2 = 0;
      if (data && typeof data == "object" && !Array.isArray(data)) {
        for (const key0 in data) {
          if (!(key0 === "border" || key0 === "header" || key0 === "columns" || key0 === "columnDefault" || key0 === "drawVerticalLine" || key0 === "drawHorizontalLine" || key0 === "singleLine" || key0 === "spanningCells")) {
            const err0 = {
              instancePath,
              schemaPath: "#/additionalProperties",
              keyword: "additionalProperties",
              params: {
                additionalProperty: key0
              },
              message: "must NOT have additional properties"
            };
            if (vErrors === null) {
              vErrors = [err0];
            } else {
              vErrors.push(err0);
            }
            errors2++;
          }
        }
        if (data.border !== void 0) {
          if (!validate45(data.border, {
            instancePath: instancePath + "/border",
            parentData: data,
            parentDataProperty: "border",
            rootData
          })) {
            vErrors = vErrors === null ? validate45.errors : vErrors.concat(validate45.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.header !== void 0) {
          let data1 = data.header;
          if (data1 && typeof data1 == "object" && !Array.isArray(data1)) {
            if (data1.content === void 0) {
              const err1 = {
                instancePath: instancePath + "/header",
                schemaPath: "#/properties/header/required",
                keyword: "required",
                params: {
                  missingProperty: "content"
                },
                message: "must have required property 'content'"
              };
              if (vErrors === null) {
                vErrors = [err1];
              } else {
                vErrors.push(err1);
              }
              errors2++;
            }
            for (const key1 in data1) {
              if (!(key1 === "content" || key1 === "alignment" || key1 === "wrapWord" || key1 === "truncate" || key1 === "paddingLeft" || key1 === "paddingRight")) {
                const err2 = {
                  instancePath: instancePath + "/header",
                  schemaPath: "#/properties/header/additionalProperties",
                  keyword: "additionalProperties",
                  params: {
                    additionalProperty: key1
                  },
                  message: "must NOT have additional properties"
                };
                if (vErrors === null) {
                  vErrors = [err2];
                } else {
                  vErrors.push(err2);
                }
                errors2++;
              }
            }
            if (data1.content !== void 0) {
              if (typeof data1.content !== "string") {
                const err3 = {
                  instancePath: instancePath + "/header/content",
                  schemaPath: "#/properties/header/properties/content/type",
                  keyword: "type",
                  params: {
                    type: "string"
                  },
                  message: "must be string"
                };
                if (vErrors === null) {
                  vErrors = [err3];
                } else {
                  vErrors.push(err3);
                }
                errors2++;
              }
            }
            if (data1.alignment !== void 0) {
              if (!validate68(data1.alignment, {
                instancePath: instancePath + "/header/alignment",
                parentData: data1,
                parentDataProperty: "alignment",
                rootData
              })) {
                vErrors = vErrors === null ? validate68.errors : vErrors.concat(validate68.errors);
                errors2 = vErrors.length;
              }
            }
            if (data1.wrapWord !== void 0) {
              if (typeof data1.wrapWord !== "boolean") {
                const err4 = {
                  instancePath: instancePath + "/header/wrapWord",
                  schemaPath: "#/properties/header/properties/wrapWord/type",
                  keyword: "type",
                  params: {
                    type: "boolean"
                  },
                  message: "must be boolean"
                };
                if (vErrors === null) {
                  vErrors = [err4];
                } else {
                  vErrors.push(err4);
                }
                errors2++;
              }
            }
            if (data1.truncate !== void 0) {
              let data5 = data1.truncate;
              if (!(typeof data5 == "number" && (!(data5 % 1) && !isNaN(data5)) && isFinite(data5))) {
                const err5 = {
                  instancePath: instancePath + "/header/truncate",
                  schemaPath: "#/properties/header/properties/truncate/type",
                  keyword: "type",
                  params: {
                    type: "integer"
                  },
                  message: "must be integer"
                };
                if (vErrors === null) {
                  vErrors = [err5];
                } else {
                  vErrors.push(err5);
                }
                errors2++;
              }
            }
            if (data1.paddingLeft !== void 0) {
              let data6 = data1.paddingLeft;
              if (!(typeof data6 == "number" && (!(data6 % 1) && !isNaN(data6)) && isFinite(data6))) {
                const err6 = {
                  instancePath: instancePath + "/header/paddingLeft",
                  schemaPath: "#/properties/header/properties/paddingLeft/type",
                  keyword: "type",
                  params: {
                    type: "integer"
                  },
                  message: "must be integer"
                };
                if (vErrors === null) {
                  vErrors = [err6];
                } else {
                  vErrors.push(err6);
                }
                errors2++;
              }
            }
            if (data1.paddingRight !== void 0) {
              let data7 = data1.paddingRight;
              if (!(typeof data7 == "number" && (!(data7 % 1) && !isNaN(data7)) && isFinite(data7))) {
                const err7 = {
                  instancePath: instancePath + "/header/paddingRight",
                  schemaPath: "#/properties/header/properties/paddingRight/type",
                  keyword: "type",
                  params: {
                    type: "integer"
                  },
                  message: "must be integer"
                };
                if (vErrors === null) {
                  vErrors = [err7];
                } else {
                  vErrors.push(err7);
                }
                errors2++;
              }
            }
          } else {
            const err8 = {
              instancePath: instancePath + "/header",
              schemaPath: "#/properties/header/type",
              keyword: "type",
              params: {
                type: "object"
              },
              message: "must be object"
            };
            if (vErrors === null) {
              vErrors = [err8];
            } else {
              vErrors.push(err8);
            }
            errors2++;
          }
        }
        if (data.columns !== void 0) {
          if (!validate70(data.columns, {
            instancePath: instancePath + "/columns",
            parentData: data,
            parentDataProperty: "columns",
            rootData
          })) {
            vErrors = vErrors === null ? validate70.errors : vErrors.concat(validate70.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.columnDefault !== void 0) {
          if (!validate79(data.columnDefault, {
            instancePath: instancePath + "/columnDefault",
            parentData: data,
            parentDataProperty: "columnDefault",
            rootData
          })) {
            vErrors = vErrors === null ? validate79.errors : vErrors.concat(validate79.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.drawVerticalLine !== void 0) {
          if (typeof data.drawVerticalLine != "function") {
            const err9 = {
              instancePath: instancePath + "/drawVerticalLine",
              schemaPath: "#/properties/drawVerticalLine/typeof",
              keyword: "typeof",
              params: {},
              message: 'must pass "typeof" keyword validation'
            };
            if (vErrors === null) {
              vErrors = [err9];
            } else {
              vErrors.push(err9);
            }
            errors2++;
          }
        }
        if (data.drawHorizontalLine !== void 0) {
          if (typeof data.drawHorizontalLine != "function") {
            const err10 = {
              instancePath: instancePath + "/drawHorizontalLine",
              schemaPath: "#/properties/drawHorizontalLine/typeof",
              keyword: "typeof",
              params: {},
              message: 'must pass "typeof" keyword validation'
            };
            if (vErrors === null) {
              vErrors = [err10];
            } else {
              vErrors.push(err10);
            }
            errors2++;
          }
        }
        if (data.singleLine !== void 0) {
          if (typeof data.singleLine != "boolean") {
            const err11 = {
              instancePath: instancePath + "/singleLine",
              schemaPath: "#/properties/singleLine/typeof",
              keyword: "typeof",
              params: {},
              message: 'must pass "typeof" keyword validation'
            };
            if (vErrors === null) {
              vErrors = [err11];
            } else {
              vErrors.push(err11);
            }
            errors2++;
          }
        }
        if (data.spanningCells !== void 0) {
          let data13 = data.spanningCells;
          if (Array.isArray(data13)) {
            const len0 = data13.length;
            for (let i0 = 0; i0 < len0; i0++) {
              let data14 = data13[i0];
              if (data14 && typeof data14 == "object" && !Array.isArray(data14)) {
                if (data14.row === void 0) {
                  const err12 = {
                    instancePath: instancePath + "/spanningCells/" + i0,
                    schemaPath: "#/properties/spanningCells/items/required",
                    keyword: "required",
                    params: {
                      missingProperty: "row"
                    },
                    message: "must have required property 'row'"
                  };
                  if (vErrors === null) {
                    vErrors = [err12];
                  } else {
                    vErrors.push(err12);
                  }
                  errors2++;
                }
                if (data14.col === void 0) {
                  const err13 = {
                    instancePath: instancePath + "/spanningCells/" + i0,
                    schemaPath: "#/properties/spanningCells/items/required",
                    keyword: "required",
                    params: {
                      missingProperty: "col"
                    },
                    message: "must have required property 'col'"
                  };
                  if (vErrors === null) {
                    vErrors = [err13];
                  } else {
                    vErrors.push(err13);
                  }
                  errors2++;
                }
                for (const key2 in data14) {
                  if (!func4.call(schema13.properties.spanningCells.items.properties, key2)) {
                    const err14 = {
                      instancePath: instancePath + "/spanningCells/" + i0,
                      schemaPath: "#/properties/spanningCells/items/additionalProperties",
                      keyword: "additionalProperties",
                      params: {
                        additionalProperty: key2
                      },
                      message: "must NOT have additional properties"
                    };
                    if (vErrors === null) {
                      vErrors = [err14];
                    } else {
                      vErrors.push(err14);
                    }
                    errors2++;
                  }
                }
                if (data14.col !== void 0) {
                  let data15 = data14.col;
                  if (!(typeof data15 == "number" && (!(data15 % 1) && !isNaN(data15)) && isFinite(data15))) {
                    const err15 = {
                      instancePath: instancePath + "/spanningCells/" + i0 + "/col",
                      schemaPath: "#/properties/spanningCells/items/properties/col/type",
                      keyword: "type",
                      params: {
                        type: "integer"
                      },
                      message: "must be integer"
                    };
                    if (vErrors === null) {
                      vErrors = [err15];
                    } else {
                      vErrors.push(err15);
                    }
                    errors2++;
                  }
                  if (typeof data15 == "number" && isFinite(data15)) {
                    if (data15 < 0 || isNaN(data15)) {
                      const err16 = {
                        instancePath: instancePath + "/spanningCells/" + i0 + "/col",
                        schemaPath: "#/properties/spanningCells/items/properties/col/minimum",
                        keyword: "minimum",
                        params: {
                          comparison: ">=",
                          limit: 0
                        },
                        message: "must be >= 0"
                      };
                      if (vErrors === null) {
                        vErrors = [err16];
                      } else {
                        vErrors.push(err16);
                      }
                      errors2++;
                    }
                  }
                }
                if (data14.row !== void 0) {
                  let data16 = data14.row;
                  if (!(typeof data16 == "number" && (!(data16 % 1) && !isNaN(data16)) && isFinite(data16))) {
                    const err17 = {
                      instancePath: instancePath + "/spanningCells/" + i0 + "/row",
                      schemaPath: "#/properties/spanningCells/items/properties/row/type",
                      keyword: "type",
                      params: {
                        type: "integer"
                      },
                      message: "must be integer"
                    };
                    if (vErrors === null) {
                      vErrors = [err17];
                    } else {
                      vErrors.push(err17);
                    }
                    errors2++;
                  }
                  if (typeof data16 == "number" && isFinite(data16)) {
                    if (data16 < 0 || isNaN(data16)) {
                      const err18 = {
                        instancePath: instancePath + "/spanningCells/" + i0 + "/row",
                        schemaPath: "#/properties/spanningCells/items/properties/row/minimum",
                        keyword: "minimum",
                        params: {
                          comparison: ">=",
                          limit: 0
                        },
                        message: "must be >= 0"
                      };
                      if (vErrors === null) {
                        vErrors = [err18];
                      } else {
                        vErrors.push(err18);
                      }
                      errors2++;
                    }
                  }
                }
                if (data14.colSpan !== void 0) {
                  let data17 = data14.colSpan;
                  if (!(typeof data17 == "number" && (!(data17 % 1) && !isNaN(data17)) && isFinite(data17))) {
                    const err19 = {
                      instancePath: instancePath + "/spanningCells/" + i0 + "/colSpan",
                      schemaPath: "#/properties/spanningCells/items/properties/colSpan/type",
                      keyword: "type",
                      params: {
                        type: "integer"
                      },
                      message: "must be integer"
                    };
                    if (vErrors === null) {
                      vErrors = [err19];
                    } else {
                      vErrors.push(err19);
                    }
                    errors2++;
                  }
                  if (typeof data17 == "number" && isFinite(data17)) {
                    if (data17 < 1 || isNaN(data17)) {
                      const err20 = {
                        instancePath: instancePath + "/spanningCells/" + i0 + "/colSpan",
                        schemaPath: "#/properties/spanningCells/items/properties/colSpan/minimum",
                        keyword: "minimum",
                        params: {
                          comparison: ">=",
                          limit: 1
                        },
                        message: "must be >= 1"
                      };
                      if (vErrors === null) {
                        vErrors = [err20];
                      } else {
                        vErrors.push(err20);
                      }
                      errors2++;
                    }
                  }
                }
                if (data14.rowSpan !== void 0) {
                  let data18 = data14.rowSpan;
                  if (!(typeof data18 == "number" && (!(data18 % 1) && !isNaN(data18)) && isFinite(data18))) {
                    const err21 = {
                      instancePath: instancePath + "/spanningCells/" + i0 + "/rowSpan",
                      schemaPath: "#/properties/spanningCells/items/properties/rowSpan/type",
                      keyword: "type",
                      params: {
                        type: "integer"
                      },
                      message: "must be integer"
                    };
                    if (vErrors === null) {
                      vErrors = [err21];
                    } else {
                      vErrors.push(err21);
                    }
                    errors2++;
                  }
                  if (typeof data18 == "number" && isFinite(data18)) {
                    if (data18 < 1 || isNaN(data18)) {
                      const err22 = {
                        instancePath: instancePath + "/spanningCells/" + i0 + "/rowSpan",
                        schemaPath: "#/properties/spanningCells/items/properties/rowSpan/minimum",
                        keyword: "minimum",
                        params: {
                          comparison: ">=",
                          limit: 1
                        },
                        message: "must be >= 1"
                      };
                      if (vErrors === null) {
                        vErrors = [err22];
                      } else {
                        vErrors.push(err22);
                      }
                      errors2++;
                    }
                  }
                }
                if (data14.alignment !== void 0) {
                  if (!validate68(data14.alignment, {
                    instancePath: instancePath + "/spanningCells/" + i0 + "/alignment",
                    parentData: data14,
                    parentDataProperty: "alignment",
                    rootData
                  })) {
                    vErrors = vErrors === null ? validate68.errors : vErrors.concat(validate68.errors);
                    errors2 = vErrors.length;
                  }
                }
                if (data14.verticalAlignment !== void 0) {
                  if (!validate84(data14.verticalAlignment, {
                    instancePath: instancePath + "/spanningCells/" + i0 + "/verticalAlignment",
                    parentData: data14,
                    parentDataProperty: "verticalAlignment",
                    rootData
                  })) {
                    vErrors = vErrors === null ? validate84.errors : vErrors.concat(validate84.errors);
                    errors2 = vErrors.length;
                  }
                }
                if (data14.wrapWord !== void 0) {
                  if (typeof data14.wrapWord !== "boolean") {
                    const err23 = {
                      instancePath: instancePath + "/spanningCells/" + i0 + "/wrapWord",
                      schemaPath: "#/properties/spanningCells/items/properties/wrapWord/type",
                      keyword: "type",
                      params: {
                        type: "boolean"
                      },
                      message: "must be boolean"
                    };
                    if (vErrors === null) {
                      vErrors = [err23];
                    } else {
                      vErrors.push(err23);
                    }
                    errors2++;
                  }
                }
                if (data14.truncate !== void 0) {
                  let data22 = data14.truncate;
                  if (!(typeof data22 == "number" && (!(data22 % 1) && !isNaN(data22)) && isFinite(data22))) {
                    const err24 = {
                      instancePath: instancePath + "/spanningCells/" + i0 + "/truncate",
                      schemaPath: "#/properties/spanningCells/items/properties/truncate/type",
                      keyword: "type",
                      params: {
                        type: "integer"
                      },
                      message: "must be integer"
                    };
                    if (vErrors === null) {
                      vErrors = [err24];
                    } else {
                      vErrors.push(err24);
                    }
                    errors2++;
                  }
                }
                if (data14.paddingLeft !== void 0) {
                  let data23 = data14.paddingLeft;
                  if (!(typeof data23 == "number" && (!(data23 % 1) && !isNaN(data23)) && isFinite(data23))) {
                    const err25 = {
                      instancePath: instancePath + "/spanningCells/" + i0 + "/paddingLeft",
                      schemaPath: "#/properties/spanningCells/items/properties/paddingLeft/type",
                      keyword: "type",
                      params: {
                        type: "integer"
                      },
                      message: "must be integer"
                    };
                    if (vErrors === null) {
                      vErrors = [err25];
                    } else {
                      vErrors.push(err25);
                    }
                    errors2++;
                  }
                }
                if (data14.paddingRight !== void 0) {
                  let data24 = data14.paddingRight;
                  if (!(typeof data24 == "number" && (!(data24 % 1) && !isNaN(data24)) && isFinite(data24))) {
                    const err26 = {
                      instancePath: instancePath + "/spanningCells/" + i0 + "/paddingRight",
                      schemaPath: "#/properties/spanningCells/items/properties/paddingRight/type",
                      keyword: "type",
                      params: {
                        type: "integer"
                      },
                      message: "must be integer"
                    };
                    if (vErrors === null) {
                      vErrors = [err26];
                    } else {
                      vErrors.push(err26);
                    }
                    errors2++;
                  }
                }
              } else {
                const err27 = {
                  instancePath: instancePath + "/spanningCells/" + i0,
                  schemaPath: "#/properties/spanningCells/items/type",
                  keyword: "type",
                  params: {
                    type: "object"
                  },
                  message: "must be object"
                };
                if (vErrors === null) {
                  vErrors = [err27];
                } else {
                  vErrors.push(err27);
                }
                errors2++;
              }
            }
          } else {
            const err28 = {
              instancePath: instancePath + "/spanningCells",
              schemaPath: "#/properties/spanningCells/type",
              keyword: "type",
              params: {
                type: "array"
              },
              message: "must be array"
            };
            if (vErrors === null) {
              vErrors = [err28];
            } else {
              vErrors.push(err28);
            }
            errors2++;
          }
        }
      } else {
        const err29 = {
          instancePath,
          schemaPath: "#/type",
          keyword: "type",
          params: {
            type: "object"
          },
          message: "must be object"
        };
        if (vErrors === null) {
          vErrors = [err29];
        } else {
          vErrors.push(err29);
        }
        errors2++;
      }
      validate43.errors = vErrors;
      return errors2 === 0;
    }
    exports2["streamConfig.json"] = validate86;
    function validate87(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) {
      let vErrors = null;
      let errors2 = 0;
      if (data && typeof data == "object" && !Array.isArray(data)) {
        for (const key0 in data) {
          if (!func4.call(schema15.properties, key0)) {
            const err0 = {
              instancePath,
              schemaPath: "#/additionalProperties",
              keyword: "additionalProperties",
              params: {
                additionalProperty: key0
              },
              message: "must NOT have additional properties"
            };
            if (vErrors === null) {
              vErrors = [err0];
            } else {
              vErrors.push(err0);
            }
            errors2++;
          }
        }
        if (data.topBody !== void 0) {
          if (!validate46(data.topBody, {
            instancePath: instancePath + "/topBody",
            parentData: data,
            parentDataProperty: "topBody",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.topJoin !== void 0) {
          if (!validate46(data.topJoin, {
            instancePath: instancePath + "/topJoin",
            parentData: data,
            parentDataProperty: "topJoin",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.topLeft !== void 0) {
          if (!validate46(data.topLeft, {
            instancePath: instancePath + "/topLeft",
            parentData: data,
            parentDataProperty: "topLeft",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.topRight !== void 0) {
          if (!validate46(data.topRight, {
            instancePath: instancePath + "/topRight",
            parentData: data,
            parentDataProperty: "topRight",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.bottomBody !== void 0) {
          if (!validate46(data.bottomBody, {
            instancePath: instancePath + "/bottomBody",
            parentData: data,
            parentDataProperty: "bottomBody",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.bottomJoin !== void 0) {
          if (!validate46(data.bottomJoin, {
            instancePath: instancePath + "/bottomJoin",
            parentData: data,
            parentDataProperty: "bottomJoin",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.bottomLeft !== void 0) {
          if (!validate46(data.bottomLeft, {
            instancePath: instancePath + "/bottomLeft",
            parentData: data,
            parentDataProperty: "bottomLeft",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.bottomRight !== void 0) {
          if (!validate46(data.bottomRight, {
            instancePath: instancePath + "/bottomRight",
            parentData: data,
            parentDataProperty: "bottomRight",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.bodyLeft !== void 0) {
          if (!validate46(data.bodyLeft, {
            instancePath: instancePath + "/bodyLeft",
            parentData: data,
            parentDataProperty: "bodyLeft",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.bodyRight !== void 0) {
          if (!validate46(data.bodyRight, {
            instancePath: instancePath + "/bodyRight",
            parentData: data,
            parentDataProperty: "bodyRight",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.bodyJoin !== void 0) {
          if (!validate46(data.bodyJoin, {
            instancePath: instancePath + "/bodyJoin",
            parentData: data,
            parentDataProperty: "bodyJoin",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.headerJoin !== void 0) {
          if (!validate46(data.headerJoin, {
            instancePath: instancePath + "/headerJoin",
            parentData: data,
            parentDataProperty: "headerJoin",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.joinBody !== void 0) {
          if (!validate46(data.joinBody, {
            instancePath: instancePath + "/joinBody",
            parentData: data,
            parentDataProperty: "joinBody",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.joinLeft !== void 0) {
          if (!validate46(data.joinLeft, {
            instancePath: instancePath + "/joinLeft",
            parentData: data,
            parentDataProperty: "joinLeft",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.joinRight !== void 0) {
          if (!validate46(data.joinRight, {
            instancePath: instancePath + "/joinRight",
            parentData: data,
            parentDataProperty: "joinRight",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.joinJoin !== void 0) {
          if (!validate46(data.joinJoin, {
            instancePath: instancePath + "/joinJoin",
            parentData: data,
            parentDataProperty: "joinJoin",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.joinMiddleUp !== void 0) {
          if (!validate46(data.joinMiddleUp, {
            instancePath: instancePath + "/joinMiddleUp",
            parentData: data,
            parentDataProperty: "joinMiddleUp",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.joinMiddleDown !== void 0) {
          if (!validate46(data.joinMiddleDown, {
            instancePath: instancePath + "/joinMiddleDown",
            parentData: data,
            parentDataProperty: "joinMiddleDown",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.joinMiddleLeft !== void 0) {
          if (!validate46(data.joinMiddleLeft, {
            instancePath: instancePath + "/joinMiddleLeft",
            parentData: data,
            parentDataProperty: "joinMiddleLeft",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.joinMiddleRight !== void 0) {
          if (!validate46(data.joinMiddleRight, {
            instancePath: instancePath + "/joinMiddleRight",
            parentData: data,
            parentDataProperty: "joinMiddleRight",
            rootData
          })) {
            vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
            errors2 = vErrors.length;
          }
        }
      } else {
        const err1 = {
          instancePath,
          schemaPath: "#/type",
          keyword: "type",
          params: {
            type: "object"
          },
          message: "must be object"
        };
        if (vErrors === null) {
          vErrors = [err1];
        } else {
          vErrors.push(err1);
        }
        errors2++;
      }
      validate87.errors = vErrors;
      return errors2 === 0;
    }
    function validate109(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) {
      let vErrors = null;
      let errors2 = 0;
      const _errs0 = errors2;
      let valid0 = false;
      let passing0 = null;
      const _errs1 = errors2;
      if (data && typeof data == "object" && !Array.isArray(data)) {
        for (const key0 in data) {
          if (!pattern0.test(key0)) {
            const err0 = {
              instancePath,
              schemaPath: "#/oneOf/0/additionalProperties",
              keyword: "additionalProperties",
              params: {
                additionalProperty: key0
              },
              message: "must NOT have additional properties"
            };
            if (vErrors === null) {
              vErrors = [err0];
            } else {
              vErrors.push(err0);
            }
            errors2++;
          }
        }
        for (const key1 in data) {
          if (pattern0.test(key1)) {
            if (!validate71(data[key1], {
              instancePath: instancePath + "/" + key1.replace(/~/g, "~0").replace(/\//g, "~1"),
              parentData: data,
              parentDataProperty: key1,
              rootData
            })) {
              vErrors = vErrors === null ? validate71.errors : vErrors.concat(validate71.errors);
              errors2 = vErrors.length;
            }
          }
        }
      } else {
        const err1 = {
          instancePath,
          schemaPath: "#/oneOf/0/type",
          keyword: "type",
          params: {
            type: "object"
          },
          message: "must be object"
        };
        if (vErrors === null) {
          vErrors = [err1];
        } else {
          vErrors.push(err1);
        }
        errors2++;
      }
      var _valid0 = _errs1 === errors2;
      if (_valid0) {
        valid0 = true;
        passing0 = 0;
      }
      const _errs5 = errors2;
      if (Array.isArray(data)) {
        const len0 = data.length;
        for (let i0 = 0; i0 < len0; i0++) {
          if (!validate71(data[i0], {
            instancePath: instancePath + "/" + i0,
            parentData: data,
            parentDataProperty: i0,
            rootData
          })) {
            vErrors = vErrors === null ? validate71.errors : vErrors.concat(validate71.errors);
            errors2 = vErrors.length;
          }
        }
      } else {
        const err2 = {
          instancePath,
          schemaPath: "#/oneOf/1/type",
          keyword: "type",
          params: {
            type: "array"
          },
          message: "must be array"
        };
        if (vErrors === null) {
          vErrors = [err2];
        } else {
          vErrors.push(err2);
        }
        errors2++;
      }
      var _valid0 = _errs5 === errors2;
      if (_valid0 && valid0) {
        valid0 = false;
        passing0 = [passing0, 1];
      } else {
        if (_valid0) {
          valid0 = true;
          passing0 = 1;
        }
      }
      if (!valid0) {
        const err3 = {
          instancePath,
          schemaPath: "#/oneOf",
          keyword: "oneOf",
          params: {
            passingSchemas: passing0
          },
          message: "must match exactly one schema in oneOf"
        };
        if (vErrors === null) {
          vErrors = [err3];
        } else {
          vErrors.push(err3);
        }
        errors2++;
      } else {
        errors2 = _errs0;
        if (vErrors !== null) {
          if (_errs0) {
            vErrors.length = _errs0;
          } else {
            vErrors = null;
          }
        }
      }
      validate109.errors = vErrors;
      return errors2 === 0;
    }
    function validate113(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) {
      let vErrors = null;
      let errors2 = 0;
      if (data && typeof data == "object" && !Array.isArray(data)) {
        for (const key0 in data) {
          if (!(key0 === "alignment" || key0 === "verticalAlignment" || key0 === "width" || key0 === "wrapWord" || key0 === "truncate" || key0 === "paddingLeft" || key0 === "paddingRight")) {
            const err0 = {
              instancePath,
              schemaPath: "#/additionalProperties",
              keyword: "additionalProperties",
              params: {
                additionalProperty: key0
              },
              message: "must NOT have additional properties"
            };
            if (vErrors === null) {
              vErrors = [err0];
            } else {
              vErrors.push(err0);
            }
            errors2++;
          }
        }
        if (data.alignment !== void 0) {
          if (!validate72(data.alignment, {
            instancePath: instancePath + "/alignment",
            parentData: data,
            parentDataProperty: "alignment",
            rootData
          })) {
            vErrors = vErrors === null ? validate72.errors : vErrors.concat(validate72.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.verticalAlignment !== void 0) {
          if (!validate74(data.verticalAlignment, {
            instancePath: instancePath + "/verticalAlignment",
            parentData: data,
            parentDataProperty: "verticalAlignment",
            rootData
          })) {
            vErrors = vErrors === null ? validate74.errors : vErrors.concat(validate74.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.width !== void 0) {
          let data2 = data.width;
          if (!(typeof data2 == "number" && (!(data2 % 1) && !isNaN(data2)) && isFinite(data2))) {
            const err1 = {
              instancePath: instancePath + "/width",
              schemaPath: "#/properties/width/type",
              keyword: "type",
              params: {
                type: "integer"
              },
              message: "must be integer"
            };
            if (vErrors === null) {
              vErrors = [err1];
            } else {
              vErrors.push(err1);
            }
            errors2++;
          }
          if (typeof data2 == "number" && isFinite(data2)) {
            if (data2 < 1 || isNaN(data2)) {
              const err2 = {
                instancePath: instancePath + "/width",
                schemaPath: "#/properties/width/minimum",
                keyword: "minimum",
                params: {
                  comparison: ">=",
                  limit: 1
                },
                message: "must be >= 1"
              };
              if (vErrors === null) {
                vErrors = [err2];
              } else {
                vErrors.push(err2);
              }
              errors2++;
            }
          }
        }
        if (data.wrapWord !== void 0) {
          if (typeof data.wrapWord !== "boolean") {
            const err3 = {
              instancePath: instancePath + "/wrapWord",
              schemaPath: "#/properties/wrapWord/type",
              keyword: "type",
              params: {
                type: "boolean"
              },
              message: "must be boolean"
            };
            if (vErrors === null) {
              vErrors = [err3];
            } else {
              vErrors.push(err3);
            }
            errors2++;
          }
        }
        if (data.truncate !== void 0) {
          let data4 = data.truncate;
          if (!(typeof data4 == "number" && (!(data4 % 1) && !isNaN(data4)) && isFinite(data4))) {
            const err4 = {
              instancePath: instancePath + "/truncate",
              schemaPath: "#/properties/truncate/type",
              keyword: "type",
              params: {
                type: "integer"
              },
              message: "must be integer"
            };
            if (vErrors === null) {
              vErrors = [err4];
            } else {
              vErrors.push(err4);
            }
            errors2++;
          }
        }
        if (data.paddingLeft !== void 0) {
          let data5 = data.paddingLeft;
          if (!(typeof data5 == "number" && (!(data5 % 1) && !isNaN(data5)) && isFinite(data5))) {
            const err5 = {
              instancePath: instancePath + "/paddingLeft",
              schemaPath: "#/properties/paddingLeft/type",
              keyword: "type",
              params: {
                type: "integer"
              },
              message: "must be integer"
            };
            if (vErrors === null) {
              vErrors = [err5];
            } else {
              vErrors.push(err5);
            }
            errors2++;
          }
        }
        if (data.paddingRight !== void 0) {
          let data6 = data.paddingRight;
          if (!(typeof data6 == "number" && (!(data6 % 1) && !isNaN(data6)) && isFinite(data6))) {
            const err6 = {
              instancePath: instancePath + "/paddingRight",
              schemaPath: "#/properties/paddingRight/type",
              keyword: "type",
              params: {
                type: "integer"
              },
              message: "must be integer"
            };
            if (vErrors === null) {
              vErrors = [err6];
            } else {
              vErrors.push(err6);
            }
            errors2++;
          }
        }
      } else {
        const err7 = {
          instancePath,
          schemaPath: "#/type",
          keyword: "type",
          params: {
            type: "object"
          },
          message: "must be object"
        };
        if (vErrors === null) {
          vErrors = [err7];
        } else {
          vErrors.push(err7);
        }
        errors2++;
      }
      validate113.errors = vErrors;
      return errors2 === 0;
    }
    function validate86(data, { instancePath = "", parentData, parentDataProperty, rootData = data } = {}) {
      ;
      let vErrors = null;
      let errors2 = 0;
      if (data && typeof data == "object" && !Array.isArray(data)) {
        if (data.columnDefault === void 0) {
          const err0 = {
            instancePath,
            schemaPath: "#/required",
            keyword: "required",
            params: {
              missingProperty: "columnDefault"
            },
            message: "must have required property 'columnDefault'"
          };
          if (vErrors === null) {
            vErrors = [err0];
          } else {
            vErrors.push(err0);
          }
          errors2++;
        }
        if (data.columnCount === void 0) {
          const err1 = {
            instancePath,
            schemaPath: "#/required",
            keyword: "required",
            params: {
              missingProperty: "columnCount"
            },
            message: "must have required property 'columnCount'"
          };
          if (vErrors === null) {
            vErrors = [err1];
          } else {
            vErrors.push(err1);
          }
          errors2++;
        }
        for (const key0 in data) {
          if (!(key0 === "border" || key0 === "columns" || key0 === "columnDefault" || key0 === "columnCount" || key0 === "drawVerticalLine")) {
            const err2 = {
              instancePath,
              schemaPath: "#/additionalProperties",
              keyword: "additionalProperties",
              params: {
                additionalProperty: key0
              },
              message: "must NOT have additional properties"
            };
            if (vErrors === null) {
              vErrors = [err2];
            } else {
              vErrors.push(err2);
            }
            errors2++;
          }
        }
        if (data.border !== void 0) {
          if (!validate87(data.border, {
            instancePath: instancePath + "/border",
            parentData: data,
            parentDataProperty: "border",
            rootData
          })) {
            vErrors = vErrors === null ? validate87.errors : vErrors.concat(validate87.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.columns !== void 0) {
          if (!validate109(data.columns, {
            instancePath: instancePath + "/columns",
            parentData: data,
            parentDataProperty: "columns",
            rootData
          })) {
            vErrors = vErrors === null ? validate109.errors : vErrors.concat(validate109.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.columnDefault !== void 0) {
          if (!validate113(data.columnDefault, {
            instancePath: instancePath + "/columnDefault",
            parentData: data,
            parentDataProperty: "columnDefault",
            rootData
          })) {
            vErrors = vErrors === null ? validate113.errors : vErrors.concat(validate113.errors);
            errors2 = vErrors.length;
          }
        }
        if (data.columnCount !== void 0) {
          let data3 = data.columnCount;
          if (!(typeof data3 == "number" && (!(data3 % 1) && !isNaN(data3)) && isFinite(data3))) {
            const err3 = {
              instancePath: instancePath + "/columnCount",
              schemaPath: "#/properties/columnCount/type",
              keyword: "type",
              params: {
                type: "integer"
              },
              message: "must be integer"
            };
            if (vErrors === null) {
              vErrors = [err3];
            } else {
              vErrors.push(err3);
            }
            errors2++;
          }
          if (typeof data3 == "number" && isFinite(data3)) {
            if (data3 < 1 || isNaN(data3)) {
              const err4 = {
                instancePath: instancePath + "/columnCount",
                schemaPath: "#/properties/columnCount/minimum",
                keyword: "minimum",
                params: {
                  comparison: ">=",
                  limit: 1
                },
                message: "must be >= 1"
              };
              if (vErrors === null) {
                vErrors = [err4];
              } else {
                vErrors.push(err4);
              }
              errors2++;
            }
          }
        }
        if (data.drawVerticalLine !== void 0) {
          if (typeof data.drawVerticalLine != "function") {
            const err5 = {
              instancePath: instancePath + "/drawVerticalLine",
              schemaPath: "#/properties/drawVerticalLine/typeof",
              keyword: "typeof",
              params: {},
              message: 'must pass "typeof" keyword validation'
            };
            if (vErrors === null) {
              vErrors = [err5];
            } else {
              vErrors.push(err5);
            }
            errors2++;
          }
        }
      } else {
        const err6 = {
          instancePath,
          schemaPath: "#/type",
          keyword: "type",
          params: {
            type: "object"
          },
          message: "must be object"
        };
        if (vErrors === null) {
          vErrors = [err6];
        } else {
          vErrors.push(err6);
        }
        errors2++;
      }
      validate86.errors = vErrors;
      return errors2 === 0;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/validateConfig.js
var require_validateConfig2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/validateConfig.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.validateConfig = void 0;
    var validators_1 = __importDefault2(require_validators2());
    var validateConfig = (schemaId, config) => {
      const validate2 = validators_1.default[schemaId];
      if (!validate2(config) && validate2.errors) {
        const errors2 = validate2.errors.map((error) => {
          return {
            message: error.message,
            params: error.params,
            schemaPath: error.schemaPath
          };
        });
        console.log("config", config);
        console.log("errors", errors2);
        throw new Error("Invalid config.");
      }
    };
    exports2.validateConfig = validateConfig;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/makeStreamConfig.js
var require_makeStreamConfig2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/makeStreamConfig.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.makeStreamConfig = void 0;
    var utils_1 = require_utils16();
    var validateConfig_1 = require_validateConfig2();
    var makeColumnsConfig = (columnCount, columns = {}, columnDefault) => {
      return Array.from({ length: columnCount }).map((_, index) => {
        return {
          alignment: "left",
          paddingLeft: 1,
          paddingRight: 1,
          truncate: Number.POSITIVE_INFINITY,
          verticalAlignment: "top",
          wrapWord: false,
          ...columnDefault,
          ...columns[index]
        };
      });
    };
    var makeStreamConfig = (config) => {
      (0, validateConfig_1.validateConfig)("streamConfig.json", config);
      if (config.columnDefault.width === void 0) {
        throw new Error("Must provide config.columnDefault.width when creating a stream.");
      }
      return {
        drawVerticalLine: () => {
          return true;
        },
        ...config,
        border: (0, utils_1.makeBorderConfig)(config.border),
        columns: makeColumnsConfig(config.columnCount, config.columns, config.columnDefault)
      };
    };
    exports2.makeStreamConfig = makeStreamConfig;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/mapDataUsingRowHeights.js
var require_mapDataUsingRowHeights2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/mapDataUsingRowHeights.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.mapDataUsingRowHeights = exports2.padCellVertically = void 0;
    var utils_1 = require_utils16();
    var wrapCell_1 = require_wrapCell2();
    var createEmptyStrings = (length) => {
      return new Array(length).fill("");
    };
    var padCellVertically = (lines, rowHeight, verticalAlignment) => {
      const availableLines = rowHeight - lines.length;
      if (verticalAlignment === "top") {
        return [...lines, ...createEmptyStrings(availableLines)];
      }
      if (verticalAlignment === "bottom") {
        return [...createEmptyStrings(availableLines), ...lines];
      }
      return [
        ...createEmptyStrings(Math.floor(availableLines / 2)),
        ...lines,
        ...createEmptyStrings(Math.ceil(availableLines / 2))
      ];
    };
    exports2.padCellVertically = padCellVertically;
    var mapDataUsingRowHeights = (unmappedRows, rowHeights, config) => {
      const nColumns = unmappedRows[0].length;
      const mappedRows = unmappedRows.map((unmappedRow, unmappedRowIndex) => {
        const outputRowHeight = rowHeights[unmappedRowIndex];
        const outputRow = Array.from({ length: outputRowHeight }, () => {
          return new Array(nColumns).fill("");
        });
        unmappedRow.forEach((cell, cellIndex) => {
          const containingRange = config.spanningCellManager?.getContainingRange({
            col: cellIndex,
            row: unmappedRowIndex
          });
          if (containingRange) {
            containingRange.extractCellContent(unmappedRowIndex).forEach((cellLine, cellLineIndex) => {
              outputRow[cellLineIndex][cellIndex] = cellLine;
            });
            return;
          }
          const cellLines = (0, wrapCell_1.wrapCell)(cell, config.columns[cellIndex].width, config.columns[cellIndex].wrapWord);
          const paddedCellLines = (0, exports2.padCellVertically)(cellLines, outputRowHeight, config.columns[cellIndex].verticalAlignment);
          paddedCellLines.forEach((cellLine, cellLineIndex) => {
            outputRow[cellLineIndex][cellIndex] = cellLine;
          });
        });
        return outputRow;
      });
      return (0, utils_1.flatten)(mappedRows);
    };
    exports2.mapDataUsingRowHeights = mapDataUsingRowHeights;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/padTableData.js
var require_padTableData2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/padTableData.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.padTableData = exports2.padString = void 0;
    var padString = (input, paddingLeft, paddingRight) => {
      return " ".repeat(paddingLeft) + input + " ".repeat(paddingRight);
    };
    exports2.padString = padString;
    var padTableData = (rows, config) => {
      return rows.map((cells, rowIndex) => {
        return cells.map((cell, cellIndex) => {
          const containingRange = config.spanningCellManager?.getContainingRange({
            col: cellIndex,
            row: rowIndex
          }, { mapped: true });
          if (containingRange) {
            return cell;
          }
          const { paddingLeft, paddingRight } = config.columns[cellIndex];
          return (0, exports2.padString)(cell, paddingLeft, paddingRight);
        });
      });
    };
    exports2.padTableData = padTableData;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/stringifyTableData.js
var require_stringifyTableData2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/stringifyTableData.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.stringifyTableData = void 0;
    var utils_1 = require_utils16();
    var stringifyTableData = (rows) => {
      return rows.map((cells) => {
        return cells.map((cell) => {
          return (0, utils_1.normalizeString)(String(cell));
        });
      });
    };
    exports2.stringifyTableData = stringifyTableData;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/truncateTableData.js
var require_truncateTableData2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/truncateTableData.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.truncateTableData = exports2.truncateString = void 0;
    var lodash_truncate_1 = __importDefault2(require_lodash3());
    var truncateString = (input, length) => {
      return (0, lodash_truncate_1.default)(input, {
        length,
        omission: "\u2026"
      });
    };
    exports2.truncateString = truncateString;
    var truncateTableData = (rows, truncates) => {
      return rows.map((cells) => {
        return cells.map((cell, cellIndex) => {
          return (0, exports2.truncateString)(cell, truncates[cellIndex]);
        });
      });
    };
    exports2.truncateTableData = truncateTableData;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/createStream.js
var require_createStream2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/createStream.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.createStream = void 0;
    var alignTableData_1 = require_alignTableData2();
    var calculateRowHeights_1 = require_calculateRowHeights2();
    var drawBorder_1 = require_drawBorder2();
    var drawRow_1 = require_drawRow2();
    var makeStreamConfig_1 = require_makeStreamConfig2();
    var mapDataUsingRowHeights_1 = require_mapDataUsingRowHeights2();
    var padTableData_1 = require_padTableData2();
    var stringifyTableData_1 = require_stringifyTableData2();
    var truncateTableData_1 = require_truncateTableData2();
    var utils_1 = require_utils16();
    var prepareData = (data, config) => {
      let rows = (0, stringifyTableData_1.stringifyTableData)(data);
      rows = (0, truncateTableData_1.truncateTableData)(rows, (0, utils_1.extractTruncates)(config));
      const rowHeights = (0, calculateRowHeights_1.calculateRowHeights)(rows, config);
      rows = (0, mapDataUsingRowHeights_1.mapDataUsingRowHeights)(rows, rowHeights, config);
      rows = (0, alignTableData_1.alignTableData)(rows, config);
      rows = (0, padTableData_1.padTableData)(rows, config);
      return rows;
    };
    var create = (row, columnWidths, config) => {
      const rows = prepareData([row], config);
      const body = rows.map((literalRow) => {
        return (0, drawRow_1.drawRow)(literalRow, config);
      }).join("");
      let output;
      output = "";
      output += (0, drawBorder_1.drawBorderTop)(columnWidths, config);
      output += body;
      output += (0, drawBorder_1.drawBorderBottom)(columnWidths, config);
      output = output.trimEnd();
      process.stdout.write(output);
    };
    var append = (row, columnWidths, config) => {
      const rows = prepareData([row], config);
      const body = rows.map((literalRow) => {
        return (0, drawRow_1.drawRow)(literalRow, config);
      }).join("");
      let output = "";
      const bottom = (0, drawBorder_1.drawBorderBottom)(columnWidths, config);
      if (bottom !== "\n") {
        output = "\r\x1B[K";
      }
      output += (0, drawBorder_1.drawBorderJoin)(columnWidths, config);
      output += body;
      output += bottom;
      output = output.trimEnd();
      process.stdout.write(output);
    };
    var createStream = (userConfig) => {
      const config = (0, makeStreamConfig_1.makeStreamConfig)(userConfig);
      const columnWidths = Object.values(config.columns).map((column) => {
        return column.width + column.paddingLeft + column.paddingRight;
      });
      let empty4 = true;
      return {
        write: (row) => {
          if (row.length !== config.columnCount) {
            throw new Error("Row cell count does not match the config.columnCount.");
          }
          if (empty4) {
            empty4 = false;
            create(row, columnWidths, config);
          } else {
            append(row, columnWidths, config);
          }
        }
      };
    };
    exports2.createStream = createStream;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/calculateOutputColumnWidths.js
var require_calculateOutputColumnWidths2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/calculateOutputColumnWidths.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.calculateOutputColumnWidths = void 0;
    var calculateOutputColumnWidths = (config) => {
      return config.columns.map((col) => {
        return col.paddingLeft + col.width + col.paddingRight;
      });
    };
    exports2.calculateOutputColumnWidths = calculateOutputColumnWidths;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/drawTable.js
var require_drawTable2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/drawTable.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.drawTable = void 0;
    var drawBorder_1 = require_drawBorder2();
    var drawContent_1 = require_drawContent2();
    var drawRow_1 = require_drawRow2();
    var utils_1 = require_utils16();
    var drawTable = (rows, outputColumnWidths, rowHeights, config) => {
      const { drawHorizontalLine, singleLine } = config;
      const contents = (0, utils_1.groupBySizes)(rows, rowHeights).map((group, groupIndex) => {
        return group.map((row) => {
          return (0, drawRow_1.drawRow)(row, {
            ...config,
            rowIndex: groupIndex
          });
        }).join("");
      });
      return (0, drawContent_1.drawContent)({
        contents,
        drawSeparator: (index, size) => {
          if (index === 0 || index === size) {
            return drawHorizontalLine(index, size);
          }
          return !singleLine && drawHorizontalLine(index, size);
        },
        elementType: "row",
        rowIndex: -1,
        separatorGetter: (0, drawBorder_1.createTableBorderGetter)(outputColumnWidths, {
          ...config,
          rowCount: contents.length
        }),
        spanningCellManager: config.spanningCellManager
      });
    };
    exports2.drawTable = drawTable;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/injectHeaderConfig.js
var require_injectHeaderConfig2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/injectHeaderConfig.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.injectHeaderConfig = void 0;
    var injectHeaderConfig = (rows, config) => {
      let spanningCellConfig = config.spanningCells ?? [];
      const headerConfig = config.header;
      const adjustedRows = [...rows];
      if (headerConfig) {
        spanningCellConfig = spanningCellConfig.map(({ row, ...rest }) => {
          return {
            ...rest,
            row: row + 1
          };
        });
        const { content, ...headerStyles } = headerConfig;
        spanningCellConfig.unshift({
          alignment: "center",
          col: 0,
          colSpan: rows[0].length,
          paddingLeft: 1,
          paddingRight: 1,
          row: 0,
          wrapWord: false,
          ...headerStyles
        });
        adjustedRows.unshift([content, ...Array.from({ length: rows[0].length - 1 }).fill("")]);
      }
      return [
        adjustedRows,
        spanningCellConfig
      ];
    };
    exports2.injectHeaderConfig = injectHeaderConfig;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/calculateMaximumColumnWidths.js
var require_calculateMaximumColumnWidths2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/calculateMaximumColumnWidths.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.calculateMaximumColumnWidths = exports2.calculateMaximumCellWidth = void 0;
    var string_width_1 = __importDefault2(require_string_width());
    var utils_1 = require_utils16();
    var calculateMaximumCellWidth = (cell) => {
      return Math.max(...cell.split("\n").map(string_width_1.default));
    };
    exports2.calculateMaximumCellWidth = calculateMaximumCellWidth;
    var calculateMaximumColumnWidths = (rows, spanningCellConfigs = []) => {
      const columnWidths = new Array(rows[0].length).fill(0);
      const rangeCoordinates = spanningCellConfigs.map(utils_1.calculateRangeCoordinate);
      const isSpanningCell = (rowIndex, columnIndex) => {
        return rangeCoordinates.some((rangeCoordinate) => {
          return (0, utils_1.isCellInRange)({
            col: columnIndex,
            row: rowIndex
          }, rangeCoordinate);
        });
      };
      rows.forEach((row, rowIndex) => {
        row.forEach((cell, cellIndex) => {
          if (isSpanningCell(rowIndex, cellIndex)) {
            return;
          }
          columnWidths[cellIndex] = Math.max(columnWidths[cellIndex], (0, exports2.calculateMaximumCellWidth)(cell));
        });
      });
      return columnWidths;
    };
    exports2.calculateMaximumColumnWidths = calculateMaximumColumnWidths;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/alignSpanningCell.js
var require_alignSpanningCell2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/alignSpanningCell.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.alignVerticalRangeContent = exports2.wrapRangeContent = void 0;
    var string_width_1 = __importDefault2(require_string_width());
    var alignString_1 = require_alignString2();
    var mapDataUsingRowHeights_1 = require_mapDataUsingRowHeights2();
    var padTableData_1 = require_padTableData2();
    var truncateTableData_1 = require_truncateTableData2();
    var utils_1 = require_utils16();
    var wrapCell_1 = require_wrapCell2();
    var wrapRangeContent = (rangeConfig, rangeWidth, context) => {
      const { topLeft, paddingRight, paddingLeft, truncate, wrapWord, alignment } = rangeConfig;
      const originalContent = context.rows[topLeft.row][topLeft.col];
      const contentWidth = rangeWidth - paddingLeft - paddingRight;
      return (0, wrapCell_1.wrapCell)((0, truncateTableData_1.truncateString)(originalContent, truncate), contentWidth, wrapWord).map((line) => {
        const alignedLine = (0, alignString_1.alignString)(line, contentWidth, alignment);
        return (0, padTableData_1.padString)(alignedLine, paddingLeft, paddingRight);
      });
    };
    exports2.wrapRangeContent = wrapRangeContent;
    var alignVerticalRangeContent = (range, content, context) => {
      const { rows, drawHorizontalLine, rowHeights } = context;
      const { topLeft, bottomRight, verticalAlignment } = range;
      if (rowHeights.length === 0) {
        return [];
      }
      const totalCellHeight = (0, utils_1.sumArray)(rowHeights.slice(topLeft.row, bottomRight.row + 1));
      const totalBorderHeight = bottomRight.row - topLeft.row;
      const hiddenHorizontalBorderCount = (0, utils_1.sequence)(topLeft.row + 1, bottomRight.row).filter((horizontalBorderIndex) => {
        return !drawHorizontalLine(horizontalBorderIndex, rows.length);
      }).length;
      const availableRangeHeight = totalCellHeight + totalBorderHeight - hiddenHorizontalBorderCount;
      return (0, mapDataUsingRowHeights_1.padCellVertically)(content, availableRangeHeight, verticalAlignment).map((line) => {
        if (line.length === 0) {
          return " ".repeat((0, string_width_1.default)(content[0]));
        }
        return line;
      });
    };
    exports2.alignVerticalRangeContent = alignVerticalRangeContent;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/calculateSpanningCellWidth.js
var require_calculateSpanningCellWidth2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/calculateSpanningCellWidth.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.calculateSpanningCellWidth = void 0;
    var utils_1 = require_utils16();
    var calculateSpanningCellWidth = (rangeConfig, dependencies) => {
      const { columnsConfig, drawVerticalLine } = dependencies;
      const { topLeft, bottomRight } = rangeConfig;
      const totalWidth = (0, utils_1.sumArray)(columnsConfig.slice(topLeft.col, bottomRight.col + 1).map(({ width }) => {
        return width;
      }));
      const totalPadding = topLeft.col === bottomRight.col ? columnsConfig[topLeft.col].paddingRight + columnsConfig[bottomRight.col].paddingLeft : (0, utils_1.sumArray)(columnsConfig.slice(topLeft.col, bottomRight.col + 1).map(({ paddingLeft, paddingRight }) => {
        return paddingLeft + paddingRight;
      }));
      const totalBorderWidths = bottomRight.col - topLeft.col;
      const totalHiddenVerticalBorders = (0, utils_1.sequence)(topLeft.col + 1, bottomRight.col).filter((verticalBorderIndex) => {
        return !drawVerticalLine(verticalBorderIndex, columnsConfig.length);
      }).length;
      return totalWidth + totalPadding + totalBorderWidths - totalHiddenVerticalBorders;
    };
    exports2.calculateSpanningCellWidth = calculateSpanningCellWidth;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/makeRangeConfig.js
var require_makeRangeConfig2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/makeRangeConfig.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.makeRangeConfig = void 0;
    var utils_1 = require_utils16();
    var makeRangeConfig = (spanningCellConfig, columnsConfig) => {
      const { topLeft, bottomRight } = (0, utils_1.calculateRangeCoordinate)(spanningCellConfig);
      const cellConfig = {
        ...columnsConfig[topLeft.col],
        ...spanningCellConfig,
        paddingRight: spanningCellConfig.paddingRight ?? columnsConfig[bottomRight.col].paddingRight
      };
      return {
        ...cellConfig,
        bottomRight,
        topLeft
      };
    };
    exports2.makeRangeConfig = makeRangeConfig;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/spanningCellManager.js
var require_spanningCellManager2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/spanningCellManager.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.createSpanningCellManager = void 0;
    var alignSpanningCell_1 = require_alignSpanningCell2();
    var calculateSpanningCellWidth_1 = require_calculateSpanningCellWidth2();
    var makeRangeConfig_1 = require_makeRangeConfig2();
    var utils_1 = require_utils16();
    var findRangeConfig = (cell, rangeConfigs) => {
      return rangeConfigs.find((rangeCoordinate) => {
        return (0, utils_1.isCellInRange)(cell, rangeCoordinate);
      });
    };
    var getContainingRange = (rangeConfig, context) => {
      const width = (0, calculateSpanningCellWidth_1.calculateSpanningCellWidth)(rangeConfig, context);
      const wrappedContent = (0, alignSpanningCell_1.wrapRangeContent)(rangeConfig, width, context);
      const alignedContent = (0, alignSpanningCell_1.alignVerticalRangeContent)(rangeConfig, wrappedContent, context);
      const getCellContent = (rowIndex) => {
        const { topLeft } = rangeConfig;
        const { drawHorizontalLine, rowHeights } = context;
        const totalWithinHorizontalBorderHeight = rowIndex - topLeft.row;
        const totalHiddenHorizontalBorderHeight = (0, utils_1.sequence)(topLeft.row + 1, rowIndex).filter((index) => {
          return !drawHorizontalLine?.(index, rowHeights.length);
        }).length;
        const offset = (0, utils_1.sumArray)(rowHeights.slice(topLeft.row, rowIndex)) + totalWithinHorizontalBorderHeight - totalHiddenHorizontalBorderHeight;
        return alignedContent.slice(offset, offset + rowHeights[rowIndex]);
      };
      const getBorderContent = (borderIndex) => {
        const { topLeft } = rangeConfig;
        const offset = (0, utils_1.sumArray)(context.rowHeights.slice(topLeft.row, borderIndex)) + (borderIndex - topLeft.row - 1);
        return alignedContent[offset];
      };
      return {
        ...rangeConfig,
        extractBorderContent: getBorderContent,
        extractCellContent: getCellContent,
        height: wrappedContent.length,
        width
      };
    };
    var inSameRange = (cell1, cell2, ranges) => {
      const range1 = findRangeConfig(cell1, ranges);
      const range2 = findRangeConfig(cell2, ranges);
      if (range1 && range2) {
        return (0, utils_1.areCellEqual)(range1.topLeft, range2.topLeft);
      }
      return false;
    };
    var hashRange = (range) => {
      const { row, col } = range.topLeft;
      return `${row}/${col}`;
    };
    var createSpanningCellManager = (parameters) => {
      const { spanningCellConfigs, columnsConfig } = parameters;
      const ranges = spanningCellConfigs.map((config) => {
        return (0, makeRangeConfig_1.makeRangeConfig)(config, columnsConfig);
      });
      const rangeCache = {};
      let rowHeights = [];
      return {
        getContainingRange: (cell, options) => {
          const originalRow = options?.mapped ? (0, utils_1.findOriginalRowIndex)(rowHeights, cell.row) : cell.row;
          const range = findRangeConfig({
            ...cell,
            row: originalRow
          }, ranges);
          if (!range) {
            return void 0;
          }
          if (rowHeights.length === 0) {
            return getContainingRange(range, {
              ...parameters,
              rowHeights
            });
          }
          const hash2 = hashRange(range);
          rangeCache[hash2] ?? (rangeCache[hash2] = getContainingRange(range, {
            ...parameters,
            rowHeights
          }));
          return rangeCache[hash2];
        },
        inSameRange: (cell1, cell2) => {
          return inSameRange(cell1, cell2, ranges);
        },
        rowHeights,
        setRowHeights: (_rowHeights) => {
          rowHeights = _rowHeights;
        }
      };
    };
    exports2.createSpanningCellManager = createSpanningCellManager;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/validateSpanningCellConfig.js
var require_validateSpanningCellConfig2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/validateSpanningCellConfig.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.validateSpanningCellConfig = void 0;
    var utils_1 = require_utils16();
    var inRange = (start, end, value) => {
      return start <= value && value <= end;
    };
    var validateSpanningCellConfig = (rows, configs) => {
      const [nRow, nCol] = [rows.length, rows[0].length];
      configs.forEach((config, configIndex) => {
        const { colSpan, rowSpan } = config;
        if (colSpan === void 0 && rowSpan === void 0) {
          throw new Error(`Expect at least colSpan or rowSpan is provided in config.spanningCells[${configIndex}]`);
        }
        if (colSpan !== void 0 && colSpan < 1) {
          throw new Error(`Expect colSpan is not equal zero, instead got: ${colSpan} in config.spanningCells[${configIndex}]`);
        }
        if (rowSpan !== void 0 && rowSpan < 1) {
          throw new Error(`Expect rowSpan is not equal zero, instead got: ${rowSpan} in config.spanningCells[${configIndex}]`);
        }
      });
      const rangeCoordinates = configs.map(utils_1.calculateRangeCoordinate);
      rangeCoordinates.forEach(({ topLeft, bottomRight }, rangeIndex) => {
        if (!inRange(0, nCol - 1, topLeft.col) || !inRange(0, nRow - 1, topLeft.row) || !inRange(0, nCol - 1, bottomRight.col) || !inRange(0, nRow - 1, bottomRight.row)) {
          throw new Error(`Some cells in config.spanningCells[${rangeIndex}] are out of the table`);
        }
      });
      const configOccupy = Array.from({ length: nRow }, () => {
        return Array.from({ length: nCol });
      });
      rangeCoordinates.forEach(({ topLeft, bottomRight }, rangeIndex) => {
        (0, utils_1.sequence)(topLeft.row, bottomRight.row).forEach((row) => {
          (0, utils_1.sequence)(topLeft.col, bottomRight.col).forEach((col) => {
            if (configOccupy[row][col] !== void 0) {
              throw new Error(`Spanning cells in config.spanningCells[${configOccupy[row][col]}] and config.spanningCells[${rangeIndex}] are overlap each other`);
            }
            configOccupy[row][col] = rangeIndex;
          });
        });
      });
    };
    exports2.validateSpanningCellConfig = validateSpanningCellConfig;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/makeTableConfig.js
var require_makeTableConfig2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/makeTableConfig.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.makeTableConfig = void 0;
    var calculateMaximumColumnWidths_1 = require_calculateMaximumColumnWidths2();
    var spanningCellManager_1 = require_spanningCellManager2();
    var utils_1 = require_utils16();
    var validateConfig_1 = require_validateConfig2();
    var validateSpanningCellConfig_1 = require_validateSpanningCellConfig2();
    var makeColumnsConfig = (rows, columns, columnDefault, spanningCellConfigs) => {
      const columnWidths = (0, calculateMaximumColumnWidths_1.calculateMaximumColumnWidths)(rows, spanningCellConfigs);
      return rows[0].map((_, columnIndex) => {
        return {
          alignment: "left",
          paddingLeft: 1,
          paddingRight: 1,
          truncate: Number.POSITIVE_INFINITY,
          verticalAlignment: "top",
          width: columnWidths[columnIndex],
          wrapWord: false,
          ...columnDefault,
          ...columns?.[columnIndex]
        };
      });
    };
    var makeTableConfig = (rows, config = {}, injectedSpanningCellConfig) => {
      (0, validateConfig_1.validateConfig)("config.json", config);
      (0, validateSpanningCellConfig_1.validateSpanningCellConfig)(rows, config.spanningCells ?? []);
      const spanningCellConfigs = injectedSpanningCellConfig ?? config.spanningCells ?? [];
      const columnsConfig = makeColumnsConfig(rows, config.columns, config.columnDefault, spanningCellConfigs);
      const drawVerticalLine = config.drawVerticalLine ?? (() => {
        return true;
      });
      const drawHorizontalLine = config.drawHorizontalLine ?? (() => {
        return true;
      });
      return {
        ...config,
        border: (0, utils_1.makeBorderConfig)(config.border),
        columns: columnsConfig,
        drawHorizontalLine,
        drawVerticalLine,
        singleLine: config.singleLine ?? false,
        spanningCellManager: (0, spanningCellManager_1.createSpanningCellManager)({
          columnsConfig,
          drawHorizontalLine,
          drawVerticalLine,
          rows,
          spanningCellConfigs
        })
      };
    };
    exports2.makeTableConfig = makeTableConfig;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/validateTableData.js
var require_validateTableData2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/validateTableData.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.validateTableData = void 0;
    var utils_1 = require_utils16();
    var validateTableData = (rows) => {
      if (!Array.isArray(rows)) {
        throw new TypeError("Table data must be an array.");
      }
      if (rows.length === 0) {
        throw new Error("Table must define at least one row.");
      }
      if (rows[0].length === 0) {
        throw new Error("Table must define at least one column.");
      }
      const columnNumber = rows[0].length;
      for (const row of rows) {
        if (!Array.isArray(row)) {
          throw new TypeError("Table row data must be an array.");
        }
        if (row.length !== columnNumber) {
          throw new Error("Table must have a consistent number of cells.");
        }
        for (const cell of row) {
          if (/[\u0001-\u0006\u0008\u0009\u000B-\u001A]/.test((0, utils_1.normalizeString)(String(cell)))) {
            throw new Error("Table data must not contain control characters.");
          }
        }
      }
    };
    exports2.validateTableData = validateTableData;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/table.js
var require_table2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/table.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.table = void 0;
    var alignTableData_1 = require_alignTableData2();
    var calculateOutputColumnWidths_1 = require_calculateOutputColumnWidths2();
    var calculateRowHeights_1 = require_calculateRowHeights2();
    var drawTable_1 = require_drawTable2();
    var injectHeaderConfig_1 = require_injectHeaderConfig2();
    var makeTableConfig_1 = require_makeTableConfig2();
    var mapDataUsingRowHeights_1 = require_mapDataUsingRowHeights2();
    var padTableData_1 = require_padTableData2();
    var stringifyTableData_1 = require_stringifyTableData2();
    var truncateTableData_1 = require_truncateTableData2();
    var utils_1 = require_utils16();
    var validateTableData_1 = require_validateTableData2();
    var table9 = (data, userConfig = {}) => {
      (0, validateTableData_1.validateTableData)(data);
      let rows = (0, stringifyTableData_1.stringifyTableData)(data);
      const [injectedRows, injectedSpanningCellConfig] = (0, injectHeaderConfig_1.injectHeaderConfig)(rows, userConfig);
      const config = (0, makeTableConfig_1.makeTableConfig)(injectedRows, userConfig, injectedSpanningCellConfig);
      rows = (0, truncateTableData_1.truncateTableData)(injectedRows, (0, utils_1.extractTruncates)(config));
      const rowHeights = (0, calculateRowHeights_1.calculateRowHeights)(rows, config);
      config.spanningCellManager.setRowHeights(rowHeights);
      rows = (0, mapDataUsingRowHeights_1.mapDataUsingRowHeights)(rows, rowHeights, config);
      rows = (0, alignTableData_1.alignTableData)(rows, config);
      rows = (0, padTableData_1.padTableData)(rows, config);
      const outputColumnWidths = (0, calculateOutputColumnWidths_1.calculateOutputColumnWidths)(config);
      return (0, drawTable_1.drawTable)(rows, outputColumnWidths, rowHeights, config);
    };
    exports2.table = table9;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/types/api.js
var require_api3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/types/api.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/index.js
var require_src2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/table/2.0.1/92a2c127d140c2d79d6668d3e3708f9a06003ae72edf403ffa72d9257d270f2b/node_modules/@zkochan/table/dist/src/index.js"(exports2) {
    "use strict";
    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      Object.defineProperty(o2, k22, { enumerable: true, get: function() {
        return m[k2];
      } });
    }) : (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      o2[k22] = m[k2];
    }));
    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.getBorderCharacters = exports2.createStream = exports2.table = void 0;
    var createStream_1 = require_createStream2();
    Object.defineProperty(exports2, "createStream", { enumerable: true, get: function() {
      return createStream_1.createStream;
    } });
    var getBorderCharacters_1 = require_getBorderCharacters2();
    Object.defineProperty(exports2, "getBorderCharacters", { enumerable: true, get: function() {
      return getBorderCharacters_1.getBorderCharacters;
    } });
    var table_1 = require_table2();
    Object.defineProperty(exports2, "table", { enumerable: true, get: function() {
      return table_1.table;
    } });
    __exportStar2(require_api3(), exports2);
  }
});

// ../installing/commands/lib/update/getUpdateChoices.js
import { stripVTControlCharacters as stripVTControlCharacters2 } from "node:util";
function getUpdateChoices(outdatedPkgsOfProjects, workspacesEnabled) {
  if (isEmpty_default(outdatedPkgsOfProjects)) {
    return [];
  }
  const pkgUniqueKey = (outdatedPkg) => {
    return JSON.stringify([outdatedPkg.packageName, outdatedPkg.latestManifest?.version, outdatedPkg.current]);
  };
  const dedupeAndGroupPkgs = pipe(uniqBy_default((outdatedPkg) => pkgUniqueKey(outdatedPkg)), groupBy_default((outdatedPkg) => outdatedPkg.belongsTo));
  const groupPkgsByType = dedupeAndGroupPkgs(outdatedPkgsOfProjects);
  const headerRow = {
    Package: true,
    Current: true,
    " ": true,
    Target: true,
    Workspace: workspacesEnabled,
    URL: true
  };
  const header = Object.keys(pickBy_default(and_default, headerRow));
  const finalChoices = [];
  for (const [depGroup, choiceRows] of Object.entries(groupPkgsByType)) {
    if (choiceRows.length === 0)
      continue;
    const rawChoices = [];
    for (const choice of choiceRows) {
      if (choice.latestManifest != null && choice.latestManifest.version !== choice.current) {
        rawChoices.push(buildPkgChoice(choice, workspacesEnabled));
      }
    }
    if (rawChoices.length === 0)
      continue;
    rawChoices.unshift({
      raw: header,
      name: "",
      disabled: true
    });
    const renderedTable = alignColumns(pluck_default("raw", rawChoices)).filter(Boolean);
    const choices = rawChoices.map((outdatedPkg, i2) => {
      if (i2 === 0) {
        return {
          name: renderedTable[i2],
          value: "",
          disabled: true,
          hint: ""
        };
      }
      return {
        name: outdatedPkg.name,
        message: renderedTable[i2],
        value: outdatedPkg.name
      };
    });
    finalChoices.push({ name: `[${depGroup}]`, choices, message: depGroup });
  }
  return finalChoices;
}
function buildPkgChoice(outdatedPkg, workspacesEnabled) {
  const sdiff = semverDiff(outdatedPkg.wanted, outdatedPkg.latestManifest.version);
  const nextVersion = sdiff.change === null ? outdatedPkg.latestManifest.version : colorizeSemverDiff(sdiff);
  const label = outdatedPkg.packageName;
  const raw = [
    label,
    outdatedPkg.current ?? "",
    "\u276F",
    nextVersion
  ];
  if (workspacesEnabled) {
    raw.push(outdatedPkg.workspace ?? "");
  }
  raw.push(getPkgUrl(outdatedPkg));
  return {
    raw,
    name: outdatedPkg.packageName
  };
}
function getPkgUrl(pkg) {
  if (pkg.latestManifest?.homepage) {
    return pkg.latestManifest?.homepage;
  }
  if (typeof pkg.latestManifest?.repository !== "string") {
    if (pkg.latestManifest?.repository?.url) {
      return pkg.latestManifest?.repository?.url;
    }
  }
  return "";
}
function alignColumns(rows) {
  return (0, import_table2.table)(rows, {
    border: (0, import_table2.getBorderCharacters)("void"),
    columnDefault: {
      paddingLeft: 0,
      paddingRight: 1,
      wrapWord: true
    },
    columns: {
      0: { width: 50, truncate: 100 },
      1: { width: getColumnWidth(rows, 1, 15), alignment: "right" },
      3: { width: getColumnWidth(rows, 3, 15) },
      4: { paddingLeft: 2 },
      5: { paddingLeft: 2 }
    },
    drawHorizontalLine: () => false
  }).split("\n");
}
function getColumnWidth(rows, columnIndex, minWidth) {
  return rows.reduce((max3, row) => {
    if (row[columnIndex] == null)
      return max3;
    return Math.max(max3, stripVTControlCharacters2(row[columnIndex]).length);
  }, minWidth);
}
var import_table2;
var init_getUpdateChoices = __esm({
  "../installing/commands/lib/update/getUpdateChoices.js"() {
    "use strict";
    init_lib136();
    init_lib137();
    import_table2 = __toESM(require_src2(), 1);
    init_es();
  }
});

// ../installing/commands/lib/update/index.js
var update_exports = {};
__export(update_exports, {
  cliOptionsTypes: () => cliOptionsTypes12,
  commandNames: () => commandNames13,
  completion: () => completion2,
  handler: () => handler13,
  help: () => help13,
  rcOptionsTypes: () => rcOptionsTypes13,
  shorthands: () => shorthands4
});
function rcOptionsTypes13() {
  return pick_default([
    "cache-dir",
    "dangerously-allow-all-builds",
    "depth",
    "dev",
    "engine-strict",
    "fetch-retries",
    "fetch-retry-factor",
    "fetch-retry-maxtimeout",
    "fetch-retry-mintimeout",
    "fetch-timeout",
    "force",
    "global-dir",
    "global-pnpmfile",
    "global",
    "https-proxy",
    "ignore-pnpmfile",
    "ignore-scripts",
    "lockfile-dir",
    "lockfile-only",
    "lockfile",
    "lockfile-include-tarball-url",
    "network-concurrency",
    "noproxy",
    "npm-path",
    "offline",
    "only",
    "optional",
    "package-import-method",
    "pnpmfile",
    "prefer-offline",
    "production",
    "proxy",
    "registry",
    "reporter",
    "save",
    "save-exact",
    "save-prefix",
    "save-workspace-protocol",
    "scripts-prepend-node-path",
    "shamefully-hoist",
    "shared-workspace-lockfile",
    "side-effects-cache-readonly",
    "side-effects-cache",
    "store-dir",
    "unsafe-perm"
  ], types2);
}
function cliOptionsTypes12() {
  return {
    ...rcOptionsTypes13(),
    interactive: Boolean,
    latest: Boolean,
    recursive: Boolean,
    workspace: Boolean
  };
}
function help13() {
  return renderHelp({
    aliases: ["up", "upgrade"],
    description: 'Updates packages to their latest version based on the specified range. You can use "*" in package name to update all packages with the same pattern.',
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: 'Update in every package found in subdirectories or every workspace package, when executed inside a workspace. For options that may be used with `-r`, see "pnpm help recursive"',
            name: "--recursive",
            shortAlias: "-r"
          },
          {
            description: "Update globally installed packages",
            name: "--global",
            shortAlias: "-g"
          },
          {
            description: "How deep should levels of dependencies be inspected. Infinity is default. 0 would mean top-level dependencies only",
            name: "--depth <number>"
          },
          {
            description: "Ignore version ranges in package.json",
            name: "--latest",
            shortAlias: "-L"
          },
          {
            description: 'Update packages only in "dependencies" and "optionalDependencies"',
            name: "--prod",
            shortAlias: "-P"
          },
          {
            description: 'Update packages only in "devDependencies"',
            name: "--dev",
            shortAlias: "-D"
          },
          {
            description: `Don't update packages in "optionalDependencies"`,
            name: "--no-optional"
          },
          {
            description: "Tries to link all packages from the workspace. Versions are updated to match the versions of packages inside the workspace. If specific packages are updated, the command will fail if any of the updated dependencies is not found inside the workspace",
            name: "--workspace"
          },
          {
            description: "Show outdated dependencies and select which ones to update",
            name: "--interactive",
            shortAlias: "-i"
          },
          OPTIONS.globalDir,
          ...UNIVERSAL_OPTIONS
        ]
      },
      FILTERING
    ],
    url: docsUrl("update"),
    usages: ["pnpm update [-g] [<pkg>...]"]
  });
}
async function handler13(opts2, params = [], commands2) {
  if (opts2.global) {
    if (!opts2.bin) {
      throw new PnpmError("NO_GLOBAL_BIN_DIR", "Unable to find the global bin directory", {
        hint: 'Run "pnpm setup" to create it automatically, or set the global-bin-dir setting, or the PNPM_HOME env variable. The global bin directory should be in the PATH.'
      });
    }
    return handleGlobalUpdate({
      ...opts2,
      ...createGlobalPolicyCallbacks(opts2)
    }, params, commands2 ?? {});
  }
  const rebuildHandler = commands2?.rebuild;
  if (opts2.interactive) {
    return interactiveUpdate(params, opts2, rebuildHandler);
  }
  return update(params, opts2, rebuildHandler);
}
async function interactiveUpdate(input, opts2, rebuildHandler) {
  const include = makeIncludeDependenciesFromCLI(opts2.cliOptions);
  const projects = opts2.selectedProjectsGraph != null ? Object.values(opts2.selectedProjectsGraph).map((wsPkg) => wsPkg.package) : [
    {
      rootDir: opts2.dir,
      manifest: await readProjectManifestOnly2(opts2.dir, opts2)
    }
  ];
  const outdatedPkgsOfProjects = await outdatedDepsOfProjects(projects, input, {
    ...opts2,
    compatible: opts2.latest !== true,
    ignoreDependencies: opts2.updateConfig?.ignoreDependencies,
    include,
    retry: {
      factor: opts2.fetchRetryFactor,
      maxTimeout: opts2.fetchRetryMaxtimeout,
      minTimeout: opts2.fetchRetryMintimeout,
      retries: opts2.fetchRetries
    },
    timeout: opts2.fetchTimeout
  });
  const workspacesEnabled = !!opts2.workspaceDir;
  const choices = getUpdateChoices(unnest_default(outdatedPkgsOfProjects), workspacesEnabled);
  if (choices.length === 0) {
    if (opts2.latest) {
      return "All of your dependencies are already up to date";
    }
    return "All of your dependencies are already up to date inside the specified ranges. Use the --latest option to update the ranges in package.json";
  }
  const { updateDependencies } = await import_enquirer4.default.prompt({
    choices,
    footer: "\nEnter to start updating. Ctrl-c to cancel.",
    indicator(state, choice) {
      return ` ${choice.enabled ? "\u25CF" : "\u25CB"}`;
    },
    message: `Choose which packages to update (Press ${source_default.cyan("<space>")} to select, ${source_default.cyan("<a>")} to toggle all, ${source_default.cyan("<i>")} to invert selection)`,
    name: "updateDependencies",
    pointer: "\u276F",
    result() {
      return this.selected;
    },
    format() {
      if (!this.state.submitted || this.state.cancelled)
        return "";
      if (Array.isArray(this.selected)) {
        return this.selected.filter((choice) => !/^\[.+\]$/.test(choice.name)).map((choice) => this.styles.primary(choice.name)).join(", ");
      }
      return this.styles.primary(this.selected.name);
    },
    styles: {
      dark: source_default.reset,
      em: source_default.bgBlack.whiteBright,
      success: source_default.reset
    },
    type: "multiselect",
    validate(value) {
      if (value.length === 0) {
        return "You must choose at least one package.";
      }
      return true;
    },
    // For Vim users (related: https://github.com/enquirer/enquirer/pull/163)
    j() {
      return this.down();
    },
    k() {
      return this.up();
    },
    cancel() {
      globalInfo("Update canceled");
      process.exit(0);
    }
  });
  const updatePkgNames = pluck_default("value", updateDependencies);
  return update(updatePkgNames, opts2, rebuildHandler);
}
async function update(dependencies, opts2, rebuildHandler) {
  if (opts2.latest) {
    const dependenciesWithTags = dependencies.filter((name) => parseUpdateParam(name).versionSpec != null);
    if (dependenciesWithTags.length) {
      throw new PnpmError("LATEST_WITH_SPEC", `Specs are not allowed to be used with --latest (${dependenciesWithTags.join(", ")})`);
    }
  }
  const includeDirect = makeIncludeDependenciesFromCLI(opts2.cliOptions);
  const include = {
    dependencies: true,
    devDependencies: true,
    optionalDependencies: true
  };
  const depth = opts2.depth ?? Infinity;
  let updateMatching;
  if (opts2.packageVulnerabilityAudit != null) {
    const { packageVulnerabilityAudit } = opts2;
    updateMatching = (pkgName, version2) => version2 != null && packageVulnerabilityAudit.isVulnerable(pkgName, version2);
  } else if (dependencies.length > 0 && dependencies.every((dep) => !dep.substring(1).includes("@")) && depth > 0 && !opts2.latest) {
    updateMatching = createMatcher(dependencies);
  }
  return installDeps({
    ...opts2,
    rebuildHandler,
    allowNew: false,
    depth,
    ignoreCurrentSpecifiers: false,
    include,
    includeDirect,
    update: true,
    updateToLatest: opts2.latest,
    updateMatching,
    updatePackageManifest: opts2.save !== false,
    resolutionMode: opts2.save === false ? "highest" : opts2.resolutionMode
  }, dependencies);
}
function makeIncludeDependenciesFromCLI(opts2) {
  return {
    dependencies: opts2.production === true || opts2.dev !== true && opts2.optional !== true,
    devDependencies: opts2.dev === true || opts2.production !== true && opts2.optional !== true,
    optionalDependencies: opts2.optional === true || opts2.production !== true && opts2.dev !== true
  };
}
var import_enquirer4, shorthands4, commandNames13, completion2;
var init_update2 = __esm({
  "../installing/commands/lib/update/index.js"() {
    "use strict";
    init_lib92();
    init_lib29();
    init_lib14();
    init_lib61();
    init_lib135();
    init_lib2();
    init_lib129();
    init_lib3();
    init_source2();
    import_enquirer4 = __toESM(require_enquirer(), 1);
    init_es();
    init_lib63();
    init_installDeps();
    init_recursive2();
    init_resolutionPolicyManifest();
    init_getUpdateChoices();
    shorthands4 = {
      D: "--dev",
      P: "--production"
    };
    commandNames13 = ["update", "up", "upgrade"];
    completion2 = async (cliOpts) => {
      return readDepNameCompletions(cliOpts.dir);
    };
  }
});

// ../installing/commands/lib/index.js
var init_lib138 = __esm({
  "../installing/commands/lib/index.js"() {
    "use strict";
    init_add3();
    init_dedupe();
    init_fetch3();
    init_import();
    init_install2();
    init_link2();
    init_prune3();
    init_remove2();
    init_unlink();
    init_update2();
  }
});

// ../building/commands/lib/policy/getAutomaticallyIgnoredBuilds.js
import path156 from "node:path";
async function getAutomaticallyIgnoredBuilds(opts2) {
  const modulesDir = getModulesDir(opts2);
  const modulesManifest = await readModulesManifest(modulesDir);
  let automaticallyIgnoredBuilds;
  if (modulesManifest?.ignoredBuilds) {
    const ignoredPkgNames = /* @__PURE__ */ new Set();
    for (const depPath of modulesManifest.ignoredBuilds) {
      ignoredPkgNames.add(parse6(depPath).name ?? depPath);
    }
    automaticallyIgnoredBuilds = Array.from(ignoredPkgNames);
  } else {
    automaticallyIgnoredBuilds = null;
  }
  return {
    automaticallyIgnoredBuilds,
    modulesDir,
    modulesManifest
  };
}
function getModulesDir(opts2) {
  return opts2.modulesDir ?? path156.join(opts2.lockfileDir ?? opts2.dir, "node_modules");
}
var init_getAutomaticallyIgnoredBuilds = __esm({
  "../building/commands/lib/policy/getAutomaticallyIgnoredBuilds.js"() {
    "use strict";
    init_lib65();
    init_lib75();
  }
});

// ../building/commands/lib/policy/approveBuilds.js
var approveBuilds_exports = {};
__export(approveBuilds_exports, {
  cliOptionsTypes: () => cliOptionsTypes13,
  commandNames: () => commandNames14,
  handler: () => handler14,
  help: () => help14,
  rcOptionsTypes: () => rcOptionsTypes14,
  recursiveByDefault: () => recursiveByDefault4
});
function help14() {
  return renderHelp({
    description: "Approve dependencies for running scripts during installation",
    usages: [
      "pnpm approve-builds",
      "pnpm approve-builds [<pkg> ...] [!<pkg> ...]"
    ],
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: "Approve all pending dependencies without interactive prompts",
            name: "--all"
          }
        ]
      }
    ]
  });
}
function cliOptionsTypes13() {
  return {
    all: Boolean,
    global: Boolean
  };
}
function rcOptionsTypes14() {
  return {};
}
async function handler14(opts2, params = [], commands2) {
  if (opts2.global) {
    throw new PnpmError("APPROVE_BUILDS_NOT_SUPPORTED_WITH_GLOBAL", '"approve-builds" is not supported with global packages', {
      hint: 'Use --allow-build when installing globally, e.g. "pnpm add -g --allow-build=<pkg> <pkg>". pnpm will also prompt to allow builds interactively during global install.'
    });
  }
  if (opts2.all && params.length) {
    throw new PnpmError("APPROVE_BUILDS_ALL_WITH_ARGS", "Cannot use --all with positional arguments");
  }
  const { automaticallyIgnoredBuilds, modulesDir, modulesManifest } = await getAutomaticallyIgnoredBuilds(opts2);
  if (!automaticallyIgnoredBuilds?.length) {
    globalInfo("There are no packages awaiting approval");
    return;
  }
  const denied = [];
  const approved = [];
  const unknown = [];
  for (const p of params) {
    const name = p.startsWith("!") ? p.slice(1) : p;
    if (!automaticallyIgnoredBuilds.includes(name)) {
      unknown.push(name);
    } else if (p.startsWith("!")) {
      denied.push(name);
    } else {
      approved.push(name);
    }
  }
  if (unknown.length) {
    throw new PnpmError("APPROVE_BUILDS_UNKNOWN_PACKAGES", `The following packages are not awaiting approval: ${unknown.join(", ")}`);
  }
  const contradictions = approved.filter((p) => denied.includes(p));
  if (contradictions.length) {
    throw new PnpmError("APPROVE_BUILDS_CONTRADICTING_ARGS", `The following packages are both approved and denied: ${contradictions.join(", ")}`);
  }
  let buildPackages = [];
  if (params.length) {
    buildPackages = sortUniqueStrings([...approved]);
  } else if (opts2.all) {
    buildPackages = sortUniqueStrings([...automaticallyIgnoredBuilds]);
  } else {
    const { result: result2 } = await import_enquirer5.default.prompt({
      choices: sortUniqueStrings([...automaticallyIgnoredBuilds]),
      indicator(state, choice) {
        return ` ${choice.enabled ? "\u25CF" : "\u25CB"}`;
      },
      message: `Choose which packages to build (Press ${source_default.cyan("<space>")} to select, ${source_default.cyan("<a>")} to toggle all, ${source_default.cyan("<i>")} to invert selection)`,
      name: "result",
      pointer: "\u276F",
      result() {
        return this.selected;
      },
      styles: {
        dark: source_default.reset,
        em: source_default.bgBlack.whiteBright,
        success: source_default.reset
      },
      type: "multiselect",
      // For Vim users (related: https://github.com/enquirer/enquirer/pull/163)
      j() {
        return this.down();
      },
      k() {
        return this.up();
      },
      cancel() {
        process.exit(0);
      }
    });
    buildPackages = result2.map(({ value }) => value);
  }
  const allowBuilds = { ...opts2.allowBuilds };
  if (params.length) {
    for (const pkg of approved) {
      allowBuilds[pkg] = true;
    }
    for (const pkg of denied) {
      allowBuilds[pkg] = false;
    }
  } else {
    const ignoredPackages = automaticallyIgnoredBuilds.filter((automaticallyIgnoredBuild) => !buildPackages.includes(automaticallyIgnoredBuild));
    for (const pkg of ignoredPackages) {
      allowBuilds[pkg] = false;
    }
    for (const pkg of buildPackages) {
      allowBuilds[pkg] = true;
    }
  }
  if (!opts2.all && !params.length) {
    if (buildPackages.length) {
      const confirmed = await import_enquirer5.default.prompt({
        type: "confirm",
        name: "build",
        message: `The next packages will now be built: ${buildPackages.join(", ")}.
Do you approve?`,
        initial: false
      });
      if (!confirmed.build) {
        return;
      }
    } else {
      globalInfo("All packages were added to allowBuilds with value false.");
    }
  }
  await writeSettings({
    ...opts2,
    workspaceDir: opts2.settingsDir ?? opts2.workspaceDir ?? opts2.rootProjectManifestDir,
    updatedSettings: { allowBuilds }
  });
  if (modulesManifest?.ignoredBuilds) {
    if (params.length) {
      const decided = /* @__PURE__ */ new Set([...approved, ...denied]);
      for (const depPath of Array.from(modulesManifest.ignoredBuilds)) {
        const name = parse6(depPath).name ?? depPath;
        if (decided.has(name)) {
          modulesManifest.ignoredBuilds.delete(depPath);
        }
      }
      if (!modulesManifest.ignoredBuilds.size) {
        delete modulesManifest.ignoredBuilds;
      }
    } else {
      delete modulesManifest.ignoredBuilds;
    }
    await writeModulesManifest(modulesDir, modulesManifest);
  }
  if (buildPackages.length) {
    if (opts2.enableGlobalVirtualStore) {
      await install_exports.handler({
        ...opts2,
        allowBuilds,
        frozenLockfile: true,
        optimisticRepeatInstall: false
      }, [], commands2);
      return;
    }
    return rebuild_exports.handler({
      ...opts2,
      allowBuilds
    }, buildPackages);
  }
}
function sortUniqueStrings(array) {
  return Array.from(new Set(array)).sort(import_util19.lexCompare);
}
var import_util19, import_enquirer5, commandNames14, recursiveByDefault4;
var init_approveBuilds = __esm({
  "../building/commands/lib/policy/approveBuilds.js"() {
    "use strict";
    init_lib100();
    init_lib65();
    init_lib2();
    init_lib138();
    init_lib75();
    init_lib3();
    import_util19 = __toESM(require_dist3(), 1);
    init_source2();
    import_enquirer5 = __toESM(require_enquirer(), 1);
    init_lib63();
    init_build();
    init_getAutomaticallyIgnoredBuilds();
    commandNames14 = ["approve-builds"];
    recursiveByDefault4 = true;
  }
});

// ../building/commands/lib/policy/ignoredBuilds.js
var ignoredBuilds_exports = {};
__export(ignoredBuilds_exports, {
  cliOptionsTypes: () => cliOptionsTypes14,
  commandNames: () => commandNames15,
  handler: () => handler15,
  help: () => help15,
  rcOptionsTypes: () => rcOptionsTypes15
});
function help15() {
  return renderHelp({
    description: "Print the list of packages with blocked build scripts",
    usages: []
  });
}
function cliOptionsTypes14() {
  return {};
}
function rcOptionsTypes15() {
  return {};
}
async function handler15(opts2) {
  const disallowedBuilds = opts2.allowBuilds ? Object.entries(opts2.allowBuilds).filter(([, value]) => value === false).map(([pkg]) => pkg) : [];
  let { automaticallyIgnoredBuilds } = await getAutomaticallyIgnoredBuilds(opts2);
  if (automaticallyIgnoredBuilds) {
    automaticallyIgnoredBuilds = automaticallyIgnoredBuilds.filter((automaticallyIgnoredBuild) => !disallowedBuilds.includes(automaticallyIgnoredBuild));
  }
  let output = "Automatically ignored builds during installation:\n";
  if (automaticallyIgnoredBuilds == null) {
    output += "  Cannot identify as no node_modules found";
  } else if (automaticallyIgnoredBuilds.length === 0) {
    output += "  None";
  } else {
    output += `  ${automaticallyIgnoredBuilds.join("\n  ")}
hint: To allow the execution of build scripts for a package, add its name to "allowBuilds" and set to "true", then run "pnpm rebuild".
hint: For example:
hint: allowBuilds:
hint:   esbuild: true
hint: If you don't want to build a package, set it to "false" instead.`;
  }
  output += "\n";
  if (disallowedBuilds.length) {
    output += `
Explicitly ignored package builds (via allowBuilds):
  ${disallowedBuilds.join("\n  ")}
`;
  }
  return output;
}
var commandNames15;
var init_ignoredBuilds = __esm({
  "../building/commands/lib/policy/ignoredBuilds.js"() {
    "use strict";
    init_lib63();
    init_getAutomaticallyIgnoredBuilds();
    commandNames15 = ["ignored-builds"];
  }
});

// ../building/commands/lib/policy/index.js
var init_policy = __esm({
  "../building/commands/lib/policy/index.js"() {
    "use strict";
    init_approveBuilds();
    init_ignoredBuilds();
    init_getAutomaticallyIgnoredBuilds();
  }
});

// ../building/commands/lib/index.js
var init_lib139 = __esm({
  "../building/commands/lib/index.js"() {
    "use strict";
    init_build();
    init_policy();
  }
});

// ../cache/api/lib/cacheList.js
import fs84 from "node:fs";
async function cacheListRegistries(opts2) {
  return fs84.readdirSync(opts2.cacheDir).sort().join("\n");
}
async function cacheList(opts2, filter14) {
  const metaFiles = await findMetadataFiles(opts2, filter14);
  return metaFiles.sort().join("\n");
}
async function findMetadataFiles(opts2, filter14) {
  const prefix = opts2.registry ? `${(0, import_encode_registry2.default)(opts2.registry)}` : "*";
  const patterns = filter14.length ? filter14.map((filter15) => `${prefix}/${filter15}.jsonl`) : [`${prefix}/**`];
  const metaFiles = await glob(patterns, {
    cwd: opts2.cacheDir,
    expandDirectories: false
  });
  return metaFiles;
}
var import_encode_registry2;
var init_cacheList = __esm({
  "../cache/api/lib/cacheList.js"() {
    "use strict";
    import_encode_registry2 = __toESM(require_encode_registry(), 1);
    init_dist3();
  }
});

// ../cache/api/lib/cacheDelete.js
import fs85 from "node:fs";
import path157 from "node:path";
async function cacheDelete(opts2, filter14) {
  const metaFiles = await findMetadataFiles(opts2, filter14);
  for (const metaFile of metaFiles) {
    fs85.unlinkSync(path157.join(opts2.cacheDir, metaFile));
  }
  return metaFiles.sort().join("\n");
}
var init_cacheDelete = __esm({
  "../cache/api/lib/cacheDelete.js"() {
    "use strict";
    init_cacheList();
  }
});

// ../cache/api/lib/cacheView.js
import fs86 from "node:fs";
import path158 from "node:path";
async function cacheView(opts2, packageName) {
  const prefix = opts2.registry ? `${(0, import_encode_registry3.default)(opts2.registry)}` : "*";
  const metaFilePaths = (await glob(`${prefix}/${packageName}.jsonl`, {
    cwd: opts2.cacheDir,
    expandDirectories: false
  })).sort();
  const metaFilesByPath = {};
  const storeIndex = new StoreIndex(opts2.storeDir);
  try {
    for (const filePath of metaFilePaths) {
      let metaObject;
      const fullPath = path158.join(opts2.cacheDir, filePath);
      let mtime;
      try {
        const raw = fs86.readFileSync(fullPath, "utf8");
        mtime = fs86.statSync(fullPath).mtime;
        const newlineIdx = raw.indexOf("\n");
        if (newlineIdx !== -1) {
          metaObject = JSON.parse(raw.slice(newlineIdx + 1));
        } else {
          metaObject = JSON.parse(raw);
        }
      } catch {
        continue;
      }
      if (!metaObject)
        continue;
      const cachedVersions = [];
      const nonCachedVersions = [];
      for (const [version2, manifest] of Object.entries(metaObject.versions)) {
        if (!manifest.dist.integrity)
          continue;
        const key = storeIndexKey(manifest.dist.integrity, `${manifest.name}@${manifest.version}`);
        if (storeIndex.has(key)) {
          cachedVersions.push(version2);
        } else {
          nonCachedVersions.push(version2);
        }
      }
      let registryName = filePath;
      while (path158.dirname(registryName) !== ".") {
        registryName = path158.dirname(registryName);
      }
      metaFilesByPath[registryName.replaceAll("+", ":")] = {
        cachedVersions,
        nonCachedVersions,
        cachedAt: mtime?.toString(),
        distTags: metaObject["dist-tags"]
      };
    }
  } finally {
    storeIndex.close();
  }
  return JSON.stringify(metaFilesByPath, null, 2);
}
var import_encode_registry3;
var init_cacheView = __esm({
  "../cache/api/lib/cacheView.js"() {
    "use strict";
    init_lib16();
    import_encode_registry3 = __toESM(require_encode_registry(), 1);
    init_dist3();
  }
});

// ../cache/api/lib/index.js
var init_lib140 = __esm({
  "../cache/api/lib/index.js"() {
    "use strict";
    init_cacheDelete();
    init_cacheList();
    init_cacheView();
  }
});

// ../cache/commands/lib/cache.cmd.js
var cache_cmd_exports = {};
__export(cache_cmd_exports, {
  cliOptionsTypes: () => cliOptionsTypes15,
  commandNames: () => commandNames16,
  handler: () => handler16,
  help: () => help16,
  rcOptionsTypes: () => rcOptionsTypes16
});
import path159 from "node:path";
function cliOptionsTypes15() {
  return {
    ...pick_default([
      "registry",
      "store-dir"
    ], types2)
  };
}
function help16() {
  return renderHelp({
    description: "Inspect and manage the metadata cache",
    descriptionLists: [
      {
        title: "Commands",
        list: [
          {
            description: "Lists the available packages metadata cache. Supports filtering by glob",
            name: "list"
          },
          {
            description: "Lists all registries that have their metadata cache locally",
            name: "list-registries"
          },
          {
            description: "Views information from the specified package's cache",
            name: "view"
          },
          {
            description: "Deletes metadata cache for the specified package(s). Supports patterns",
            name: "delete"
          }
        ]
      }
    ],
    url: docsUrl("cache"),
    usages: ["pnpm cache <command>"]
  });
}
async function handler16(opts2, params) {
  const cacheType = opts2.resolutionMode === "time-based" && !opts2.registrySupportsTimeField ? FULL_FILTERED_META_DIR : ABBREVIATED_META_DIR;
  const cacheDir = path159.join(opts2.cacheDir, cacheType);
  switch (params[0]) {
    case "list-registries":
      return cacheListRegistries({
        ...opts2,
        cacheDir
      });
    case "list":
      return cacheList({
        ...opts2,
        cacheDir,
        registry: opts2.cliOptions["registry"]
      }, params.slice(1));
    case "delete":
      return cacheDelete({
        ...opts2,
        cacheDir,
        registry: opts2.cliOptions["registry"]
      }, params.slice(1));
    case "view": {
      if (!params[1]) {
        throw new PnpmError("MISSING_PACKAGE_NAME", "`pnpm cache view` requires the package name");
      }
      if (params.length > 2) {
        throw new PnpmError("TOO_MANY_PARAMS", "`pnpm cache view` only accepts one package name");
      }
      const storeDir = await getStorePath({
        pkgRoot: process.cwd(),
        storePath: opts2.storeDir,
        pnpmHomeDir: opts2.pnpmHomeDir
      });
      return cacheView({
        ...opts2,
        cacheDir,
        storeDir,
        registry: opts2.cliOptions["registry"]
      }, params[1]);
    }
    default:
      return help16();
  }
}
var rcOptionsTypes16, commandNames16;
var init_cache_cmd = __esm({
  "../cache/commands/lib/cache.cmd.js"() {
    "use strict";
    init_lib140();
    init_lib29();
    init_lib61();
    init_lib();
    init_lib2();
    init_lib89();
    init_es();
    init_lib63();
    rcOptionsTypes16 = cliOptionsTypes15;
    commandNames16 = ["cache"];
  }
});

// ../cache/commands/lib/index.js
var init_lib141 = __esm({
  "../cache/commands/lib/index.js"() {
    "use strict";
    init_cache_cmd();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/tabtab/0.5.4/ebaaa9d9aba06cd15b978169271ba6083e460efcd0e95ca81a738997105629e7/node_modules/@pnpm/tabtab/lib/constants.js
var require_constants17 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/tabtab/0.5.4/ebaaa9d9aba06cd15b978169271ba6083e460efcd0e95ca81a738997105629e7/node_modules/@pnpm/tabtab/lib/constants.js"(exports2, module2) {
    var COMPLETION_DIR = "~/.config/tabtab";
    var SUPPORTED_SHELLS3 = (
      /** @type {const} */
      ["bash", "fish", "pwsh", "zsh"]
    );
    var SHELL_LOCATIONS = (
      /** @type {const} */
      {
        bash: "~/.bashrc",
        zsh: "~/.zshrc",
        fish: "~/.config/fish/config.fish",
        pwsh: "~/Documents/PowerShell/Microsoft.PowerShell_profile.ps1"
      }
    );
    var COMPLETION_FILE_EXT = (
      /** @type {const} */
      {
        bash: "bash",
        fish: "fish",
        pwsh: "ps1",
        zsh: "zsh"
      }
    );
    module2.exports = {
      COMPLETION_DIR,
      SUPPORTED_SHELLS: SUPPORTED_SHELLS3,
      SHELL_LOCATIONS,
      COMPLETION_FILE_EXT
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/ms/2.1.3/e0f4c72e735898d92cc164c858cbd0c7b6ed2ec2b4d6da5e8a20fedffeed95cd/node_modules/ms/index.js
var require_ms = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/ms/2.1.3/e0f4c72e735898d92cc164c858cbd0c7b6ed2ec2b4d6da5e8a20fedffeed95cd/node_modules/ms/index.js"(exports2, module2) {
    var s = 1e3;
    var m = s * 60;
    var h2 = m * 60;
    var d = h2 * 24;
    var w = d * 7;
    var y = d * 365.25;
    module2.exports = function(val, options) {
      options = options || {};
      var type4 = typeof val;
      if (type4 === "string" && val.length > 0) {
        return parse7(val);
      } else if (type4 === "number" && isFinite(val)) {
        return options.long ? fmtLong(val) : fmtShort(val);
      }
      throw new Error(
        "val is not a non-empty string or a valid number. val=" + JSON.stringify(val)
      );
    };
    function parse7(str2) {
      str2 = String(str2);
      if (str2.length > 100) {
        return;
      }
      var match = /^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(
        str2
      );
      if (!match) {
        return;
      }
      var n2 = parseFloat(match[1]);
      var type4 = (match[2] || "ms").toLowerCase();
      switch (type4) {
        case "years":
        case "year":
        case "yrs":
        case "yr":
        case "y":
          return n2 * y;
        case "weeks":
        case "week":
        case "w":
          return n2 * w;
        case "days":
        case "day":
        case "d":
          return n2 * d;
        case "hours":
        case "hour":
        case "hrs":
        case "hr":
        case "h":
          return n2 * h2;
        case "minutes":
        case "minute":
        case "mins":
        case "min":
        case "m":
          return n2 * m;
        case "seconds":
        case "second":
        case "secs":
        case "sec":
        case "s":
          return n2 * s;
        case "milliseconds":
        case "millisecond":
        case "msecs":
        case "msec":
        case "ms":
          return n2;
        default:
          return void 0;
      }
    }
    function fmtShort(ms) {
      var msAbs = Math.abs(ms);
      if (msAbs >= d) {
        return Math.round(ms / d) + "d";
      }
      if (msAbs >= h2) {
        return Math.round(ms / h2) + "h";
      }
      if (msAbs >= m) {
        return Math.round(ms / m) + "m";
      }
      if (msAbs >= s) {
        return Math.round(ms / s) + "s";
      }
      return ms + "ms";
    }
    function fmtLong(ms) {
      var msAbs = Math.abs(ms);
      if (msAbs >= d) {
        return plural2(ms, msAbs, d, "day");
      }
      if (msAbs >= h2) {
        return plural2(ms, msAbs, h2, "hour");
      }
      if (msAbs >= m) {
        return plural2(ms, msAbs, m, "minute");
      }
      if (msAbs >= s) {
        return plural2(ms, msAbs, s, "second");
      }
      return ms + " ms";
    }
    function plural2(ms, msAbs, n2, name) {
      var isPlural = msAbs >= n2 * 1.5;
      return Math.round(ms / n2) + " " + name + (isPlural ? "s" : "");
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/debug/4.4.3/41cb78134838751fb9b527872630ff31e379649df2077af49e49be74255b86ef/node_modules/debug/src/common.js
var require_common5 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/debug/4.4.3/41cb78134838751fb9b527872630ff31e379649df2077af49e49be74255b86ef/node_modules/debug/src/common.js"(exports2, module2) {
    function setup(env3) {
      createDebug.debug = createDebug;
      createDebug.default = createDebug;
      createDebug.coerce = coerce;
      createDebug.disable = disable;
      createDebug.enable = enable;
      createDebug.enabled = enabled;
      createDebug.humanize = require_ms();
      createDebug.destroy = destroy;
      Object.keys(env3).forEach((key) => {
        createDebug[key] = env3[key];
      });
      createDebug.names = [];
      createDebug.skips = [];
      createDebug.formatters = {};
      function selectColor(namespace) {
        let hash2 = 0;
        for (let i2 = 0; i2 < namespace.length; i2++) {
          hash2 = (hash2 << 5) - hash2 + namespace.charCodeAt(i2);
          hash2 |= 0;
        }
        return createDebug.colors[Math.abs(hash2) % createDebug.colors.length];
      }
      createDebug.selectColor = selectColor;
      function createDebug(namespace) {
        let prevTime;
        let enableOverride = null;
        let namespacesCache;
        let enabledCache;
        function debug(...args) {
          if (!debug.enabled) {
            return;
          }
          const self2 = debug;
          const curr = Number(/* @__PURE__ */ new Date());
          const ms = curr - (prevTime || curr);
          self2.diff = ms;
          self2.prev = prevTime;
          self2.curr = curr;
          prevTime = curr;
          args[0] = createDebug.coerce(args[0]);
          if (typeof args[0] !== "string") {
            args.unshift("%O");
          }
          let index = 0;
          args[0] = args[0].replace(/%([a-zA-Z%])/g, (match, format2) => {
            if (match === "%%") {
              return "%";
            }
            index++;
            const formatter = createDebug.formatters[format2];
            if (typeof formatter === "function") {
              const val = args[index];
              match = formatter.call(self2, val);
              args.splice(index, 1);
              index--;
            }
            return match;
          });
          createDebug.formatArgs.call(self2, args);
          const logFn = self2.log || createDebug.log;
          logFn.apply(self2, args);
        }
        debug.namespace = namespace;
        debug.useColors = createDebug.useColors();
        debug.color = createDebug.selectColor(namespace);
        debug.extend = extend3;
        debug.destroy = createDebug.destroy;
        Object.defineProperty(debug, "enabled", {
          enumerable: true,
          configurable: false,
          get: () => {
            if (enableOverride !== null) {
              return enableOverride;
            }
            if (namespacesCache !== createDebug.namespaces) {
              namespacesCache = createDebug.namespaces;
              enabledCache = createDebug.enabled(namespace);
            }
            return enabledCache;
          },
          set: (v) => {
            enableOverride = v;
          }
        });
        if (typeof createDebug.init === "function") {
          createDebug.init(debug);
        }
        return debug;
      }
      function extend3(namespace, delimiter) {
        const newDebug = createDebug(this.namespace + (typeof delimiter === "undefined" ? ":" : delimiter) + namespace);
        newDebug.log = this.log;
        return newDebug;
      }
      function enable(namespaces) {
        createDebug.save(namespaces);
        createDebug.namespaces = namespaces;
        createDebug.names = [];
        createDebug.skips = [];
        const split2 = (typeof namespaces === "string" ? namespaces : "").trim().replace(/\s+/g, ",").split(",").filter(Boolean);
        for (const ns of split2) {
          if (ns[0] === "-") {
            createDebug.skips.push(ns.slice(1));
          } else {
            createDebug.names.push(ns);
          }
        }
      }
      function matchesTemplate(search2, template) {
        let searchIndex = 0;
        let templateIndex = 0;
        let starIndex = -1;
        let matchIndex = 0;
        while (searchIndex < search2.length) {
          if (templateIndex < template.length && (template[templateIndex] === search2[searchIndex] || template[templateIndex] === "*")) {
            if (template[templateIndex] === "*") {
              starIndex = templateIndex;
              matchIndex = searchIndex;
              templateIndex++;
            } else {
              searchIndex++;
              templateIndex++;
            }
          } else if (starIndex !== -1) {
            templateIndex = starIndex + 1;
            matchIndex++;
            searchIndex = matchIndex;
          } else {
            return false;
          }
        }
        while (templateIndex < template.length && template[templateIndex] === "*") {
          templateIndex++;
        }
        return templateIndex === template.length;
      }
      function disable() {
        const namespaces = [
          ...createDebug.names,
          ...createDebug.skips.map((namespace) => "-" + namespace)
        ].join(",");
        createDebug.enable("");
        return namespaces;
      }
      function enabled(name) {
        for (const skip of createDebug.skips) {
          if (matchesTemplate(name, skip)) {
            return false;
          }
        }
        for (const ns of createDebug.names) {
          if (matchesTemplate(name, ns)) {
            return true;
          }
        }
        return false;
      }
      function coerce(val) {
        if (val instanceof Error) {
          return val.stack || val.message;
        }
        return val;
      }
      function destroy() {
        console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");
      }
      createDebug.enable(createDebug.load());
      return createDebug;
    }
    module2.exports = setup;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/debug/4.4.3/41cb78134838751fb9b527872630ff31e379649df2077af49e49be74255b86ef/node_modules/debug/src/browser.js
var require_browser = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/debug/4.4.3/41cb78134838751fb9b527872630ff31e379649df2077af49e49be74255b86ef/node_modules/debug/src/browser.js"(exports2, module2) {
    exports2.formatArgs = formatArgs;
    exports2.save = save;
    exports2.load = load3;
    exports2.useColors = useColors;
    exports2.storage = localstorage();
    exports2.destroy = /* @__PURE__ */ (() => {
      let warned = false;
      return () => {
        if (!warned) {
          warned = true;
          console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");
        }
      };
    })();
    exports2.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"
    ];
    function useColors() {
      if (typeof window !== "undefined" && window.process && (window.process.type === "renderer" || window.process.__nwjs)) {
        return true;
      }
      if (typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)) {
        return false;
      }
      let m;
      return typeof document !== "undefined" && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance || // Is firebug? http://stackoverflow.com/a/398120/376773
      typeof window !== "undefined" && window.console && (window.console.firebug || window.console.exception && window.console.table) || // Is firefox >= v31?
      // https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages
      typeof navigator !== "undefined" && navigator.userAgent && (m = navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)) && parseInt(m[1], 10) >= 31 || // Double check webkit in userAgent just in case we are in a worker
      typeof navigator !== "undefined" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/);
    }
    function formatArgs(args) {
      args[0] = (this.useColors ? "%c" : "") + this.namespace + (this.useColors ? " %c" : " ") + args[0] + (this.useColors ? "%c " : " ") + "+" + module2.exports.humanize(this.diff);
      if (!this.useColors) {
        return;
      }
      const c3 = "color: " + this.color;
      args.splice(1, 0, c3, "color: inherit");
      let index = 0;
      let lastC = 0;
      args[0].replace(/%[a-zA-Z%]/g, (match) => {
        if (match === "%%") {
          return;
        }
        index++;
        if (match === "%c") {
          lastC = index;
        }
      });
      args.splice(lastC, 0, c3);
    }
    exports2.log = console.debug || console.log || (() => {
    });
    function save(namespaces) {
      try {
        if (namespaces) {
          exports2.storage.setItem("debug", namespaces);
        } else {
          exports2.storage.removeItem("debug");
        }
      } catch (error) {
      }
    }
    function load3() {
      let r;
      try {
        r = exports2.storage.getItem("debug") || exports2.storage.getItem("DEBUG");
      } catch (error) {
      }
      if (!r && typeof process !== "undefined" && "env" in process) {
        r = process.env.DEBUG;
      }
      return r;
    }
    function localstorage() {
      try {
        return localStorage;
      } catch (error) {
      }
    }
    module2.exports = require_common5()(exports2);
    var { formatters } = module2.exports;
    formatters.j = function(v) {
      try {
        return JSON.stringify(v);
      } catch (error) {
        return "[UnexpectedJSONParseError]: " + error.message;
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/debug/4.4.3/41cb78134838751fb9b527872630ff31e379649df2077af49e49be74255b86ef/node_modules/debug/src/node.js
var require_node = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/debug/4.4.3/41cb78134838751fb9b527872630ff31e379649df2077af49e49be74255b86ef/node_modules/debug/src/node.js"(exports2, module2) {
    var tty5 = __require("tty");
    var util56 = __require("util");
    exports2.init = init2;
    exports2.log = log3;
    exports2.formatArgs = formatArgs;
    exports2.save = save;
    exports2.load = load3;
    exports2.useColors = useColors;
    exports2.destroy = util56.deprecate(
      () => {
      },
      "Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."
    );
    exports2.colors = [6, 2, 3, 4, 5, 1];
    try {
      const supportsColor3 = __require("supports-color");
      if (supportsColor3 && (supportsColor3.stderr || supportsColor3).level >= 2) {
        exports2.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
        ];
      }
    } catch (error) {
    }
    exports2.inspectOpts = Object.keys(process.env).filter((key) => {
      return /^debug_/i.test(key);
    }).reduce((obj, key) => {
      const prop3 = key.substring(6).toLowerCase().replace(/_([a-z])/g, (_, k2) => {
        return k2.toUpperCase();
      });
      let val = process.env[key];
      if (/^(yes|on|true|enabled)$/i.test(val)) {
        val = true;
      } else if (/^(no|off|false|disabled)$/i.test(val)) {
        val = false;
      } else if (val === "null") {
        val = null;
      } else {
        val = Number(val);
      }
      obj[prop3] = val;
      return obj;
    }, {});
    function useColors() {
      return "colors" in exports2.inspectOpts ? Boolean(exports2.inspectOpts.colors) : tty5.isatty(process.stderr.fd);
    }
    function formatArgs(args) {
      const { namespace: name, useColors: useColors2 } = this;
      if (useColors2) {
        const c3 = this.color;
        const colorCode = "\x1B[3" + (c3 < 8 ? c3 : "8;5;" + c3);
        const prefix = `  ${colorCode};1m${name} \x1B[0m`;
        args[0] = prefix + args[0].split("\n").join("\n" + prefix);
        args.push(colorCode + "m+" + module2.exports.humanize(this.diff) + "\x1B[0m");
      } else {
        args[0] = getDate() + name + " " + args[0];
      }
    }
    function getDate() {
      if (exports2.inspectOpts.hideDate) {
        return "";
      }
      return (/* @__PURE__ */ new Date()).toISOString() + " ";
    }
    function log3(...args) {
      return process.stderr.write(util56.formatWithOptions(exports2.inspectOpts, ...args) + "\n");
    }
    function save(namespaces) {
      if (namespaces) {
        process.env.DEBUG = namespaces;
      } else {
        delete process.env.DEBUG;
      }
    }
    function load3() {
      return process.env.DEBUG;
    }
    function init2(debug) {
      debug.inspectOpts = {};
      const keys4 = Object.keys(exports2.inspectOpts);
      for (let i2 = 0; i2 < keys4.length; i2++) {
        debug.inspectOpts[keys4[i2]] = exports2.inspectOpts[keys4[i2]];
      }
    }
    module2.exports = require_common5()(exports2);
    var { formatters } = module2.exports;
    formatters.o = function(v) {
      this.inspectOpts.colors = this.useColors;
      return util56.inspect(v, this.inspectOpts).split("\n").map((str2) => str2.trim()).join(" ");
    };
    formatters.O = function(v) {
      this.inspectOpts.colors = this.useColors;
      return util56.inspect(v, this.inspectOpts);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/debug/4.4.3/41cb78134838751fb9b527872630ff31e379649df2077af49e49be74255b86ef/node_modules/debug/src/index.js
var require_src3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/debug/4.4.3/41cb78134838751fb9b527872630ff31e379649df2077af49e49be74255b86ef/node_modules/debug/src/index.js"(exports2, module2) {
    if (typeof process === "undefined" || process.type === "renderer" || process.browser === true || process.__nwjs) {
      module2.exports = require_browser();
    } else {
      module2.exports = require_node();
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/tabtab/0.5.4/ebaaa9d9aba06cd15b978169271ba6083e460efcd0e95ca81a738997105629e7/node_modules/@pnpm/tabtab/lib/utils/tabtabDebug.js
var require_tabtabDebug = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/tabtab/0.5.4/ebaaa9d9aba06cd15b978169271ba6083e460efcd0e95ca81a738997105629e7/node_modules/@pnpm/tabtab/lib/utils/tabtabDebug.js"(exports2, module2) {
    var fs111 = __require("fs");
    var util56 = __require("util");
    var tabtabDebug = (name) => {
      let debug = require_src3()(name);
      if (process.env.TABTAB_DEBUG) {
        const file = process.env.TABTAB_DEBUG;
        const stream2 = fs111.createWriteStream(file, {
          flags: "a+"
        });
        const log3 = (...args) => {
          args = args.map((arg) => {
            if (typeof arg === "string") return arg;
            return JSON.stringify(arg);
          });
          const str2 = `${util56.format(...args)}
`;
          stream2.write(str2);
        };
        if (process.env.COMP_LINE) {
          debug = log3;
        } else {
          debug.log = log3;
        }
      }
      return debug;
    };
    module2.exports = tabtabDebug;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/tabtab/0.5.4/ebaaa9d9aba06cd15b978169271ba6083e460efcd0e95ca81a738997105629e7/node_modules/@pnpm/tabtab/lib/prompt.js
var require_prompt2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/tabtab/0.5.4/ebaaa9d9aba06cd15b978169271ba6083e460efcd0e95ca81a738997105629e7/node_modules/@pnpm/tabtab/lib/prompt.js"(exports2, module2) {
    var enquirer12 = require_enquirer();
    var path218 = __require("path");
    var { SUPPORTED_SHELLS: SUPPORTED_SHELLS3, SHELL_LOCATIONS } = require_constants17();
    var debug = require_tabtabDebug()("tabtab:prompt");
    var prompt = async () => {
      const questions = [
        {
          type: "select",
          name: "shell",
          message: "Which Shell do you use ?",
          choices: SUPPORTED_SHELLS3,
          default: "bash"
        }
      ];
      const { shell } = (
        /** @type {{ shell: SupportedShell }} */
        await enquirer12.prompt(questions)
      );
      debug("answers", shell);
      if (!(shell in SHELL_LOCATIONS)) {
        throw new Error(`Unsupported shell: ${shell}`);
      }
      const location = SHELL_LOCATIONS[
        /** @type {SupportedShell} */
        shell
      ];
      debug(`Will install completion to ${location}`);
      const initialAnswer = { location, shell };
      const { locationOK } = (
        /** @type {{ locationOK: Boolean }} */
        await enquirer12.prompt({
          type: "confirm",
          name: "locationOK",
          message: `We will install completion to ${location}, is it ok ?`
        })
      );
      if (locationOK) {
        debug("location is ok, return", initialAnswer);
        return initialAnswer;
      }
      const { userLocation } = (
        /** @type {{ userLocation: String }} */
        await enquirer12.prompt({
          name: "userLocation",
          message: "Which path then ? Must be absolute.",
          type: "input",
          validate: (input) => {
            debug("Validating input", input);
            return path218.isAbsolute(input);
          }
        })
      );
      console.log(`Very well, we will install using ${userLocation}`);
      return { shell, location: userLocation };
    };
    module2.exports = prompt;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/untildify/4.0.0/e6d5d8325be308b02ddca4fe90e858e75c1834baef5bf832c644a23c40d2956b/node_modules/untildify/index.js
var require_untildify = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/untildify/4.0.0/e6d5d8325be308b02ddca4fe90e858e75c1834baef5bf832c644a23c40d2956b/node_modules/untildify/index.js"(exports2, module2) {
    "use strict";
    var os15 = __require("os");
    var homeDirectory = os15.homedir();
    module2.exports = (pathWithTilde) => {
      if (typeof pathWithTilde !== "string") {
        throw new TypeError(`Expected a string, got ${typeof pathWithTilde}`);
      }
      return homeDirectory ? pathWithTilde.replace(/^~(?=$|\/|\\)/, homeDirectory) : pathWithTilde;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/tabtab/0.5.4/ebaaa9d9aba06cd15b978169271ba6083e460efcd0e95ca81a738997105629e7/node_modules/@pnpm/tabtab/lib/utils/exists.js
var require_exists = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/tabtab/0.5.4/ebaaa9d9aba06cd15b978169271ba6083e460efcd0e95ca81a738997105629e7/node_modules/@pnpm/tabtab/lib/utils/exists.js"(exports2, module2) {
    var fs111 = __require("fs");
    var untildify = require_untildify();
    var { promisify: promisify8 } = __require("util");
    var readFile4 = promisify8(fs111.readFile);
    module2.exports = async (file) => {
      let fileExists;
      try {
        await readFile4(untildify(file));
        fileExists = true;
      } catch (err) {
        fileExists = false;
      }
      return fileExists;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/tabtab/0.5.4/ebaaa9d9aba06cd15b978169271ba6083e460efcd0e95ca81a738997105629e7/node_modules/@pnpm/tabtab/lib/utils/index.js
var require_utils17 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/tabtab/0.5.4/ebaaa9d9aba06cd15b978169271ba6083e460efcd0e95ca81a738997105629e7/node_modules/@pnpm/tabtab/lib/utils/index.js"(exports2, module2) {
    var tabtabDebug = require_tabtabDebug();
    var exists = require_exists();
    module2.exports = {
      tabtabDebug,
      exists
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/tabtab/0.5.4/ebaaa9d9aba06cd15b978169271ba6083e460efcd0e95ca81a738997105629e7/node_modules/@pnpm/tabtab/lib/filename.js
var require_filename = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/tabtab/0.5.4/ebaaa9d9aba06cd15b978169271ba6083e460efcd0e95ca81a738997105629e7/node_modules/@pnpm/tabtab/lib/filename.js"(exports2, module2) {
    var { COMPLETION_FILE_EXT } = require_constants17();
    var templateFileName = (shell) => {
      const ext = COMPLETION_FILE_EXT[shell];
      if (!ext) {
        throw new Error(`Unsupported shell: ${shell}`);
      }
      return `completion.${ext}`;
    };
    var completionFileName = (name, shell) => {
      const ext = COMPLETION_FILE_EXT[shell];
      if (!ext) {
        throw new Error(`Unsupported shell: ${shell}`);
      }
      return `${name}.${ext}`;
    };
    var tabtabFileName = (shell) => {
      const ext = COMPLETION_FILE_EXT[shell];
      if (!ext) {
        throw new Error(`Unsupported shell: ${shell}`);
      }
      return `__tabtab.${ext}`;
    };
    module2.exports = {
      templateFileName,
      completionFileName,
      tabtabFileName
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/tabtab/0.5.4/ebaaa9d9aba06cd15b978169271ba6083e460efcd0e95ca81a738997105629e7/node_modules/@pnpm/tabtab/lib/installer.js
var require_installer = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/tabtab/0.5.4/ebaaa9d9aba06cd15b978169271ba6083e460efcd0e95ca81a738997105629e7/node_modules/@pnpm/tabtab/lib/installer.js"(exports2, module2) {
    var fs111 = __require("fs");
    var path218 = __require("path");
    var untildify = require_untildify();
    var { promisify: promisify8 } = __require("util");
    var { tabtabDebug, exists } = require_utils17();
    var { SUPPORTED_SHELLS: SUPPORTED_SHELLS3 } = require_constants17();
    var debug = tabtabDebug("tabtab:installer");
    var readFile4 = promisify8(fs111.readFile);
    var writeFile3 = promisify8(fs111.writeFile);
    var unlink = promisify8(fs111.unlink);
    var mkdir2 = promisify8(fs111.mkdir);
    var {
      SHELL_LOCATIONS,
      COMPLETION_DIR
    } = require_constants17();
    var {
      templateFileName,
      completionFileName,
      tabtabFileName
    } = require_filename();
    var scriptFromShell = (shell) => path218.join(__dirname, "templates", templateFileName(shell));
    var locationFromShell = (shell) => {
      const location = SHELL_LOCATIONS[shell];
      if (!location) {
        throw new Error(`Unsupported shell: ${shell}`);
      }
      return untildify(location);
    };
    var sourceLineForShell = (scriptname, shell) => {
      scriptname = scriptname.replaceAll("\\", "/");
      if (shell === "fish") {
        return `[ -f ${scriptname} ]; and . ${scriptname}; or true`;
      }
      if (shell === "zsh") {
        return `[[ -f ${scriptname} ]] && . ${scriptname} || true`;
      }
      if (shell === "pwsh") {
        return `if (Test-Path ${scriptname}) { . ${scriptname} }`;
      }
      if (shell === "bash") {
        return `[ -f ${scriptname} ] && . ${scriptname} || true`;
      }
      throw new Error(`Unsupported shell: ${shell}`);
    };
    var isInShellConfig = (filename) => [
      SHELL_LOCATIONS.bash,
      SHELL_LOCATIONS.zsh,
      SHELL_LOCATIONS.fish,
      SHELL_LOCATIONS.pwsh,
      untildify(SHELL_LOCATIONS.bash),
      untildify(SHELL_LOCATIONS.zsh),
      untildify(SHELL_LOCATIONS.fish),
      untildify(SHELL_LOCATIONS.pwsh)
    ].includes(filename);
    var checkFilenameForLine = async (filename, line) => {
      debug('Check filename (%s) for "%s"', filename, line);
      let filecontent = "";
      try {
        filecontent = await readFile4(untildify(filename), "utf8");
      } catch (err) {
        if (err.code !== "ENOENT") {
          console.error(
            "Got an error while trying to read from %s file",
            filename,
            err
          );
          return false;
        }
      }
      return !!filecontent.match(`${line}`);
    };
    var writeLineToFilename = ({ filename, scriptname, name, shell }) => new Promise((resolve3, reject3) => {
      const filepath = untildify(filename);
      debug("Creating directory for %s file", filepath);
      mkdir2(path218.dirname(filepath), { recursive: true }).then(() => {
        const stream2 = fs111.createWriteStream(filepath, { flags: "a" });
        stream2.on("error", reject3);
        stream2.on("finish", () => resolve3());
        debug("Writing to shell configuration file (%s)", filename);
        debug("scriptname:", scriptname);
        const inShellConfig = isInShellConfig(filename);
        if (inShellConfig) {
          stream2.write(`
# tabtab source for packages`);
        } else {
          stream2.write(`
# tabtab source for ${name} package`);
        }
        stream2.write("\n# uninstall by removing these lines");
        stream2.write(`
${sourceLineForShell(scriptname, shell)}`);
        stream2.end("\n");
        console.log('=> Added tabtab source line in "%s" file', filename);
      }).catch((err) => {
        console.error("mkdirp ERROR", err);
        reject3(err);
      });
    });
    var writeToShellConfig = async ({ location, name, shell }) => {
      const scriptname = path218.join(
        COMPLETION_DIR,
        shell,
        tabtabFileName(shell)
      );
      const filename = location;
      const existing = await checkFilenameForLine(filename, scriptname);
      if (existing) {
        return console.log("=> Tabtab line already exists in %s file", filename);
      }
      return writeLineToFilename({
        filename,
        scriptname,
        name,
        shell
      });
    };
    var writeToTabtabScript = async ({ name, shell }) => {
      const filename = path218.join(
        COMPLETION_DIR,
        shell,
        tabtabFileName(shell)
      );
      const scriptname = path218.join(
        COMPLETION_DIR,
        shell,
        completionFileName(name, shell)
      );
      const existing = await checkFilenameForLine(filename, scriptname);
      if (existing) {
        return console.log("=> Tabtab line already exists in %s file", filename);
      }
      return writeLineToFilename({ filename, scriptname, name, shell });
    };
    var getCompletionScript2 = async ({ name, completer, shell }) => {
      const templatePath = scriptFromShell(shell);
      const templateContent = await readFile4(templatePath, "utf8");
      const scriptContent = templateContent.replaceAll("{pkgname}", name).replaceAll("{completer}", completer).replaceAll(/\r?\n/g, "\n");
      return scriptContent;
    };
    var writeToCompletionScript = async ({ name, completer, shell }) => {
      const filename = untildify(
        path218.join(COMPLETION_DIR, shell, completionFileName(name, shell))
      );
      try {
        const filecontent = await getCompletionScript2({ name, completer, shell });
        debug("Writing completion script to", filename);
        await mkdir2(path218.dirname(filename), { recursive: true });
        await writeFile3(filename, filecontent);
        console.log("=> Wrote completion script to %s file", filename);
      } catch (err) {
        console.error("ERROR:", err);
      }
    };
    var install2 = async (options) => {
      debug("Install with options", options);
      if (!options) {
        throw new Error("options is required");
      }
      if (!options.name) {
        throw new Error("options.name is required");
      }
      if (!options.completer) {
        throw new Error("options.completer is required");
      }
      if (!options.location) {
        throw new Error("options.location is required");
      }
      await Promise.all([
        writeToShellConfig(options),
        writeToTabtabScript(options),
        writeToCompletionScript(options)
      ]);
      const { location, name } = options;
      console.log(`
    => Tabtab source line added to ${location} for ${name} package.

    Make sure to reload your SHELL.
  `);
    };
    var removeLinesFromFilename = async (filename, name) => {
      debug("Removing lines from %s file, looking for %s package", filename, name);
      if (!await exists(filename)) {
        return debug("File %s does not exist", filename);
      }
      const filecontent = await readFile4(filename, "utf8");
      const lines = filecontent.split(/\r?\n/);
      const sourceLine1 = `# tabtab source for packages`;
      const sourceLine2 = `# tabtab source for ${name} package`;
      const hasLine1 = filecontent.includes(sourceLine1);
      if (!hasLine1) {
        debug("File %s does not include the line: %s", filename, sourceLine1);
      }
      const hasLine2 = filecontent.includes(sourceLine2);
      if (!hasLine2) {
        debug("File %s does not include the line: %s", filename, sourceLine2);
      }
      const hasLine = hasLine1 || hasLine2;
      if (!hasLine) {
        return debug("File %s does not include either line", filename);
      }
      let lineIndex = -1;
      const buffer3 = lines.map((line, index) => {
        const match = line.match(sourceLine1) ?? line.match(sourceLine2);
        if (match) {
          lineIndex = index;
        } else if (lineIndex + 3 <= index) {
          lineIndex = -1;
        }
        return lineIndex === -1 ? line : "";
      }).map((line, index, array) => {
        const next2 = array[index + 1];
        if (line === "" && next2 === "") {
          return;
        }
        return line;
      }).filter((line) => line !== void 0).join("\n").trim();
      await writeFile3(filename, buffer3);
      console.log("=> Removed tabtab source lines from %s file", filename);
    };
    var uninstall = async (options) => {
      debug("Uninstall with options", options);
      if (!options) {
        throw new Error("options is required");
      }
      const { name, shell } = options;
      if (!name) {
        throw new Error("Unable to uninstall if options.name is missing");
      }
      if (!shell) {
        await Promise.all(SUPPORTED_SHELLS3.map((shell2) => uninstall({ name, shell: shell2 })));
        return;
      }
      const completionScript = untildify(
        path218.join(COMPLETION_DIR, shell, completionFileName(name, shell))
      );
      if (await exists(completionScript)) {
        await unlink(completionScript);
        console.log("=> Removed completion script (%s)", completionScript);
      }
      const tabtabScript = untildify(
        path218.join(
          COMPLETION_DIR,
          shell,
          tabtabFileName(shell)
        )
      );
      await removeLinesFromFilename(tabtabScript, name);
      const isEmpty4 = (await readFile4(tabtabScript, "utf8")).trim() === "";
      if (isEmpty4) {
        const shellScript = locationFromShell(shell);
        debug(
          "File %s is empty. Removing source line from %s file",
          tabtabScript,
          shellScript
        );
        await removeLinesFromFilename(shellScript, name);
      }
      console.log("=> Uninstalled completion for %s package", name);
    };
    module2.exports = {
      install: install2,
      uninstall,
      checkFilenameForLine,
      getCompletionScript: getCompletionScript2,
      writeToShellConfig,
      writeToTabtabScript,
      writeToCompletionScript,
      writeLineToFilename
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/tabtab/0.5.4/ebaaa9d9aba06cd15b978169271ba6083e460efcd0e95ca81a738997105629e7/node_modules/@pnpm/tabtab/lib/index.js
var require_lib25 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/tabtab/0.5.4/ebaaa9d9aba06cd15b978169271ba6083e460efcd0e95ca81a738997105629e7/node_modules/@pnpm/tabtab/lib/index.js"(exports2, module2) {
    var path218 = __require("path");
    var { SUPPORTED_SHELLS: SUPPORTED_SHELLS3, SHELL_LOCATIONS } = require_constants17();
    var prompt = require_prompt2();
    var installer = require_installer();
    var { tabtabDebug } = require_utils17();
    var debug = tabtabDebug("tabtab");
    var isShellSupported2 = (shell) => (
      /** @type {ReadonlyArray.<String>} */
      SUPPORTED_SHELLS3.includes(shell)
    );
    var getShellFromEnv2 = (env3) => {
      if (!env3.SHELL) {
        throw new TypeError("SHELL cannot be empty");
      }
      const shell = path218.basename(env3.SHELL);
      if (!isShellSupported2(shell)) {
        const supportedValues = SUPPORTED_SHELLS3.map((x) => `'${x}'`).join(", ");
        throw new TypeError(`SHELL was set to an invalid value (${env3.SHELL}). Supported values are: ${supportedValues}`);
      }
      return shell;
    };
    var getCompletionScript2 = async ({ name, completer, shell }) => {
      if (!name) throw new TypeError("options.name is required");
      if (!completer) throw new TypeError("options.completer is required");
      if (!shell) throw new TypeError("options.shell is required");
      const completionScriptContent = await installer.getCompletionScript({ name, completer, shell });
      return completionScriptContent;
    };
    var install2 = async (options) => {
      const { name, completer } = options;
      if (!name) throw new TypeError("options.name is required");
      if (!completer) throw new TypeError("options.completer is required");
      if (options.shell) {
        const location2 = SHELL_LOCATIONS[options.shell];
        if (!location2) {
          throw new Error(`Couldn't find shell location for ${options.shell}`);
        }
        await installer.install({
          name,
          completer,
          location: location2,
          shell: options.shell
        });
        return;
      }
      const { location, shell } = await prompt();
      await installer.install({
        name,
        completer,
        location,
        shell
      });
    };
    var uninstall = async (options) => {
      const { name, shell } = options;
      if (!name) throw new TypeError("options.name is required");
      try {
        await installer.uninstall({ name, shell });
      } catch (err) {
        console.error("ERROR while uninstalling", err);
      }
    };
    var parseEnv = (env3) => {
      if (!env3) {
        throw new Error("parseEnv: You must pass in an environment object.");
      }
      debug(
        "Parsing env. CWORD: %s, COMP_POINT: %s, COMP_LINE: %s",
        env3.COMP_CWORD,
        env3.COMP_POINT,
        env3.COMP_LINE
      );
      let cword = Number(env3.COMP_CWORD);
      let point = Number(env3.COMP_POINT);
      const line = env3.COMP_LINE || "";
      if (Number.isNaN(cword)) cword = 0;
      if (Number.isNaN(point)) point = 0;
      const partial = line.slice(0, point);
      const parts = line.split(" ");
      const prev = parts.slice(0, -1).slice(-1)[0];
      const last = parts.slice(-1).join("");
      const lastPartial = partial.split(" ").slice(-1).join("");
      let complete2 = true;
      if (!env3.COMP_CWORD || !env3.COMP_POINT || !env3.COMP_LINE) {
        complete2 = false;
      }
      return {
        complete: complete2,
        words: cword,
        point,
        line,
        partial,
        last,
        lastPartial,
        prev
      };
    };
    var completionItem = (item, shell) => {
      debug("completion item", item);
      if (typeof item === "object") return item;
      let name = item;
      let description = "";
      const matching = /^(.*?)(\\)?:(.*)$/.exec(item);
      if (matching) {
        [, name, , description] = matching;
      }
      if (shell === "zsh" && /\\/.test(item)) {
        name += "\\";
      }
      return {
        name,
        description
      };
    };
    var log3 = (args, shell, logToConsole = console.log) => {
      if (!Array.isArray(args)) {
        throw new Error("log: Invalid arguments, must be an array");
      }
      let lines = args.map((item) => completionItem(item, shell)).map((item) => {
        const { name: rawName, description: rawDescription } = item;
        const name = shell === "zsh" ? rawName?.replaceAll(":", "\\:") : rawName;
        const description = shell === "zsh" ? rawDescription?.replaceAll(":", "\\:") : rawDescription;
        let str2 = name;
        if (shell === "zsh" && description) {
          str2 = `${name}:${description}`;
        } else if ((shell === "fish" || shell === "pwsh") && description) {
          str2 = `${name}	${description}`;
        }
        return str2;
      });
      if (shell === "bash") {
        const env3 = parseEnv(process.env);
        lines = lines.filter((arg) => arg.indexOf(env3.last) === 0);
      }
      for (const line of lines) {
        logToConsole(`${line}`);
      }
    };
    var logFiles = () => {
      console.log("__tabtab_complete_files__");
    };
    module2.exports = {
      SUPPORTED_SHELLS: SUPPORTED_SHELLS3,
      getShellFromEnv: getShellFromEnv2,
      isShellSupported: isShellSupported2,
      getCompletionScript: getCompletionScript2,
      install: install2,
      uninstall,
      parseEnv,
      log: log3,
      logFiles
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/split-cmd/1.1.0/3f9d27442300e1f1f730905e83374cdbde9ad409b74d058e50e548721f0a27b2/node_modules/split-cmd/index.modern.mjs
function t(t2) {
  if ("string" != typeof t2) throw new Error("Command must be a string");
  const n2 = t2.match(/[^"\s]+|"(?:\\"|[^"])*"/g);
  return n2 ? n2.map(function(t3) {
    return '"' === t3.charAt(0) && '"' === t3.charAt(t3.length - 1) ? t3.slice(1, -1) : t3;
  }) : [];
}
var init_index_modern = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/split-cmd/1.1.0/3f9d27442300e1f1f730905e83374cdbde9ad409b74d058e50e548721f0a27b2/node_modules/split-cmd/index.modern.mjs"() {
  }
});

// ../workspace/root-finder/lib/index.js
import fs87 from "node:fs";
import path160 from "node:path";
async function findWorkspaceDir(cwd) {
  const workspaceManifestDirEnvVar = process.env[WORKSPACE_DIR_ENV_VAR] ?? process.env[WORKSPACE_DIR_ENV_VAR.toLowerCase()];
  const workspaceManifestLocation = workspaceManifestDirEnvVar ? path160.join(workspaceManifestDirEnvVar, WORKSPACE_MANIFEST_FILENAME2) : await findUp([WORKSPACE_MANIFEST_FILENAME2, ...INVALID_WORKSPACE_MANIFEST_FILENAME], { cwd: await getRealPath(cwd) });
  if (workspaceManifestLocation && path160.basename(workspaceManifestLocation) !== WORKSPACE_MANIFEST_FILENAME2) {
    throw new PnpmError("BAD_WORKSPACE_MANIFEST_NAME", `The workspace manifest file should be named "pnpm-workspace.yaml". File found: ${workspaceManifestLocation}`);
  }
  return workspaceManifestLocation && path160.dirname(workspaceManifestLocation);
}
async function getRealPath(path218) {
  return new Promise((resolve3) => {
    fs87.realpath.native(path218, function(err, resolvedPath) {
      resolve3(err !== null ? path218 : resolvedPath);
    });
  });
}
var WORKSPACE_DIR_ENV_VAR, WORKSPACE_MANIFEST_FILENAME2, INVALID_WORKSPACE_MANIFEST_FILENAME;
var init_lib142 = __esm({
  "../workspace/root-finder/lib/index.js"() {
    "use strict";
    init_lib2();
    init_find_up();
    WORKSPACE_DIR_ENV_VAR = "NPM_CONFIG_WORKSPACE_DIR";
    WORKSPACE_MANIFEST_FILENAME2 = "pnpm-workspace.yaml";
    INVALID_WORKSPACE_MANIFEST_FILENAME = [
      "pnpm-workspaces.yaml",
      "pnpm-workspaces.yml",
      "pnpm-workspace.yml",
      ".pnpm-workspace.yaml",
      ".pnpm-workspace.yml",
      ".pnpm-workspaces.yaml",
      ".pnpm-workspaces.yml"
    ];
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/abbrev/1.1.1/cf72007512c1bd439c4ca860661dd1303b3842cecfcc579eb6350b948982855c/node_modules/abbrev/abbrev.js
var require_abbrev = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/abbrev/1.1.1/cf72007512c1bd439c4ca860661dd1303b3842cecfcc579eb6350b948982855c/node_modules/abbrev/abbrev.js"(exports2, module2) {
    module2.exports = exports2 = abbrev.abbrev = abbrev;
    abbrev.monkeyPatch = monkeyPatch;
    function monkeyPatch() {
      Object.defineProperty(Array.prototype, "abbrev", {
        value: function() {
          return abbrev(this);
        },
        enumerable: false,
        configurable: true,
        writable: true
      });
      Object.defineProperty(Object.prototype, "abbrev", {
        value: function() {
          return abbrev(Object.keys(this));
        },
        enumerable: false,
        configurable: true,
        writable: true
      });
    }
    function abbrev(list2) {
      if (arguments.length !== 1 || !Array.isArray(list2)) {
        list2 = Array.prototype.slice.call(arguments, 0);
      }
      for (var i2 = 0, l = list2.length, args = []; i2 < l; i2++) {
        args[i2] = typeof list2[i2] === "string" ? list2[i2] : String(list2[i2]);
      }
      args = args.sort(lexSort);
      var abbrevs = {}, prev = "";
      for (var i2 = 0, l = args.length; i2 < l; i2++) {
        var current = args[i2], next2 = args[i2 + 1] || "", nextMatches = true, prevMatches = true;
        if (current === next2) continue;
        for (var j2 = 0, cl = current.length; j2 < cl; j2++) {
          var curChar = current.charAt(j2);
          nextMatches = nextMatches && curChar === next2.charAt(j2);
          prevMatches = prevMatches && curChar === prev.charAt(j2);
          if (!nextMatches && !prevMatches) {
            j2++;
            break;
          }
        }
        prev = current;
        if (j2 === cl) {
          abbrevs[current] = current;
          continue;
        }
        for (var a2 = current.substr(0, j2); j2 <= cl; j2++) {
          abbrevs[a2] = current;
          a2 += current.charAt(j2);
        }
      }
      return abbrevs;
    }
    function lexSort(a2, b) {
      return a2 === b ? 0 : a2 > b ? 1 : -1;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/nopt/0.3.1/21583819d7d55a8477778d38daf7443140d483b22ad6063ba4ff9f481d01b43a/node_modules/@pnpm/nopt/lib/nopt.js
var require_nopt = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/nopt/0.3.1/21583819d7d55a8477778d38daf7443140d483b22ad6063ba4ff9f481d01b43a/node_modules/@pnpm/nopt/lib/nopt.js"(exports2, module2) {
    var debug = process.env.DEBUG_NOPT || process.env.NOPT_DEBUG ? function() {
      console.error.apply(console, arguments);
    } : function() {
    };
    var url7 = __require("url");
    var path218 = __require("path");
    var Stream = __require("stream").Stream;
    var abbrev = require_abbrev();
    var os15 = __require("os");
    URL.parse ??= (input, base) => {
      try {
        const url8 = new URL(input, base);
        return url8;
      } catch {
        return null;
      }
    };
    module2.exports = exports2 = nopt3;
    exports2.clean = clean;
    exports2.typeDefs = {
      String: { type: String, validate: validateString },
      Boolean: { type: Boolean, validate: validateBoolean },
      url: { type: url7, validate: validateUrl },
      Number: { type: Number, validate: validateNumber },
      path: { type: path218, validate: validatePath },
      Stream: { type: Stream, validate: validateStream2 },
      Date: { type: Date, validate: validateDate }
    };
    function nopt3(types3, shorthands21, args, slice3, opts2) {
      args = args || process.argv;
      types3 = types3 || {};
      shorthands21 = shorthands21 || {};
      if (typeof slice3 !== "number") slice3 = 2;
      debug(types3, shorthands21, args, slice3);
      args = args.slice(slice3);
      var data = {}, key, argv2 = {
        remain: [],
        cooked: args,
        original: args.slice(0)
      };
      parse7(args, data, argv2.remain, types3, shorthands21, opts2);
      clean(data, types3, exports2.typeDefs);
      data.argv = argv2;
      Object.defineProperty(data.argv, "toString", { value: function() {
        return this.original.map(JSON.stringify).join(" ");
      }, enumerable: false });
      return data;
    }
    function clean(data, types3, typeDefs) {
      typeDefs = typeDefs || exports2.typeDefs;
      var remove = {}, typeDefault = [false, true, null, String, Array];
      Object.keys(data).forEach(function(k2) {
        if (k2 === "argv") return;
        var val = data[k2], isArray = Array.isArray(val), type4 = types3[k2];
        if (!isArray) val = [val];
        if (!type4) type4 = typeDefault;
        if (type4 === Array) type4 = typeDefault.concat(Array);
        if (!Array.isArray(type4)) type4 = [type4];
        debug("val=%j", val);
        debug("types=", type4);
        val = val.map(function(val2) {
          if (typeof val2 === "string") {
            debug("string %j", val2);
            val2 = val2.trim();
            if (val2 === "null" && ~type4.indexOf(null) || val2 === "true" && (~type4.indexOf(true) || ~type4.indexOf(Boolean)) || val2 === "false" && (~type4.indexOf(false) || ~type4.indexOf(Boolean))) {
              val2 = JSON.parse(val2);
              debug("jsonable %j", val2);
            } else if (~type4.indexOf(Number) && !isNaN(val2)) {
              debug("convert to number", val2);
              val2 = +val2;
            } else if (~type4.indexOf(Date) && !isNaN(Date.parse(val2))) {
              debug("convert to date", val2);
              val2 = new Date(val2);
            }
          }
          if (!types3.hasOwnProperty(k2)) {
            return val2;
          }
          if (val2 === false && ~type4.indexOf(null) && !(~type4.indexOf(false) || ~type4.indexOf(Boolean))) {
            val2 = null;
          }
          var d = {};
          d[k2] = val2;
          debug("prevalidated val", d, val2, types3[k2]);
          if (!validate2(d, k2, val2, types3[k2], typeDefs)) {
            if (exports2.invalidHandler) {
              exports2.invalidHandler(k2, val2, types3[k2], data);
            } else if (exports2.invalidHandler !== false) {
              debug("invalid: " + k2 + "=" + val2, types3[k2]);
            }
            return remove;
          }
          debug("validated val", d, val2, types3[k2]);
          return d[k2];
        }).filter(function(val2) {
          return val2 !== remove;
        });
        if (!val.length && type4.indexOf(Array) === -1) {
          debug("VAL HAS NO LENGTH, DELETE IT", val, k2, type4.indexOf(Array));
          delete data[k2];
        } else if (isArray) {
          debug(isArray, data[k2], val);
          data[k2] = val;
        } else data[k2] = val[0];
        debug("k=%s val=%j", k2, val, data[k2]);
      });
    }
    function validateString(data, k2, val) {
      data[k2] = String(val);
    }
    function validatePath(data, k2, val) {
      if (val === true) return false;
      if (val === null) return true;
      val = String(val);
      var isWin2 = process.platform === "win32", homePattern = isWin2 ? /^~(\/|\\)/ : /^~\//, home = os15.homedir();
      if (home && val.match(homePattern)) {
        data[k2] = path218.resolve(home, val.substr(2));
      } else {
        data[k2] = path218.resolve(val);
      }
      return true;
    }
    function validateNumber(data, k2, val) {
      debug("validate Number %j %j %j", k2, val, isNaN(val));
      if (isNaN(val)) return false;
      data[k2] = +val;
    }
    function validateDate(data, k2, val) {
      var s = Date.parse(val);
      debug("validate Date %j %j %j", k2, val, s);
      if (isNaN(s)) return false;
      data[k2] = new Date(val);
    }
    function validateBoolean(data, k2, val) {
      if (val instanceof Boolean) val = val.valueOf();
      else if (typeof val === "string") {
        if (!isNaN(val)) val = !!+val;
        else if (val === "null" || val === "false") val = false;
        else val = true;
      } else val = !!val;
      data[k2] = val;
    }
    function validateUrl(data, k2, val) {
      val = URL.parse(String(val));
      if (!val) return false;
      data[k2] = val.href;
    }
    function validateStream2(data, k2, val) {
      if (!(val instanceof Stream)) return false;
      data[k2] = val;
    }
    function validate2(data, k2, val, type4, typeDefs) {
      if (Array.isArray(type4)) {
        for (var i2 = 0, l = type4.length; i2 < l; i2++) {
          if (type4[i2] === Array) continue;
          if (validate2(data, k2, val, type4[i2], typeDefs)) return true;
        }
        delete data[k2];
        return false;
      }
      if (type4 === Array) return true;
      if (type4 !== type4) {
        debug("Poison NaN", k2, val, type4);
        delete data[k2];
        return false;
      }
      if (val === type4) {
        debug("Explicitly allowed %j", val);
        data[k2] = val;
        return true;
      }
      var ok = false, types3 = Object.keys(typeDefs);
      for (var i2 = 0, l = types3.length; i2 < l; i2++) {
        debug("test type %j %j %j", k2, val, types3[i2]);
        var t2 = typeDefs[types3[i2]];
        if (t2 && (type4 && type4.name && t2.type && t2.type.name ? type4.name === t2.type.name : type4 === t2.type)) {
          var d = {};
          ok = false !== t2.validate(d, k2, val);
          val = d[k2];
          if (ok) {
            data[k2] = val;
            break;
          }
        }
      }
      debug("OK? %j (%j %j %j)", ok, k2, val, types3[i2]);
      if (!ok) delete data[k2];
      return ok;
    }
    function parse7(args, data, remain, types3, shorthands21, opts2) {
      debug("parse", args, data, remain);
      var escapeArgs = new Set(opts2 && opts2.escapeArgs ? opts2.escapeArgs : []);
      var key = null, abbrevs = abbrev(Object.keys(types3)), shortAbbr = abbrev(Object.keys(shorthands21));
      for (var i2 = 0; i2 < args.length; i2++) {
        var arg = args[i2];
        debug("arg", arg);
        if (arg.match(/^-{2,}$/)) {
          remain.push.apply(remain, args.slice(i2 + 1));
          args[i2] = "--";
          break;
        }
        if (escapeArgs.has(arg)) {
          remain.push.apply(remain, args.slice(i2));
          break;
        }
        var hadEq = false;
        if (arg.charAt(0) === "-" && arg.length > 1) {
          var at = arg.indexOf("=");
          if (at > -1) {
            hadEq = true;
            var v = arg.substr(at + 1);
            arg = arg.substr(0, at);
            args.splice(i2, 1, arg, v);
          }
          var shRes = resolveShort(arg, shorthands21, shortAbbr, abbrevs);
          debug("arg=%j shRes=%j", arg, shRes);
          if (shRes) {
            debug(arg, shRes);
            args.splice.apply(args, [i2, 1].concat(shRes));
            if (arg !== shRes[0]) {
              i2--;
              continue;
            }
          }
          arg = arg.replace(/^-+/, "");
          var no = null;
          while (arg.toLowerCase().indexOf("no-") === 0) {
            no = !no;
            arg = arg.substr(3);
          }
          if (abbrevs[arg]) arg = abbrevs[arg];
          var argType = types3[arg];
          var isTypeArray = Array.isArray(argType);
          if (isTypeArray && argType.length === 1) {
            isTypeArray = false;
            argType = argType[0];
          }
          var isArray = argType === Array || isTypeArray && argType.indexOf(Array) !== -1;
          if (!types3.hasOwnProperty(arg) && data.hasOwnProperty(arg)) {
            if (!Array.isArray(data[arg]))
              data[arg] = [data[arg]];
            isArray = true;
          }
          var val, la = args[i2 + 1];
          var isBool = typeof no === "boolean" || argType === Boolean || isTypeArray && argType.indexOf(Boolean) !== -1 || typeof argType === "undefined" && !hadEq || la === "false" && (argType === null || isTypeArray && ~argType.indexOf(null));
          if (isBool) {
            val = !no;
            if (la === "true" || la === "false") {
              val = JSON.parse(la);
              la = null;
              if (no) val = !val;
              i2++;
            }
            if (isTypeArray && la) {
              if (~argType.indexOf(la)) {
                val = la;
                i2++;
              } else if (la === "null" && ~argType.indexOf(null)) {
                val = null;
                i2++;
              } else if (!la.match(/^-{2,}[^-]/) && !isNaN(la) && ~argType.indexOf(Number)) {
                val = +la;
                i2++;
              } else if (!la.match(/^-[^-]/) && ~argType.indexOf(String)) {
                val = la;
                i2++;
              }
            }
            if (isArray) (data[arg] = data[arg] || []).push(val);
            else data[arg] = val;
            continue;
          }
          if (argType === String) {
            if (la === void 0) {
              la = "";
            } else if (la.match(/^-{1,2}[^-]+/)) {
              la = "";
              i2--;
            }
          }
          if (la && la.match(/^-{2,}$/)) {
            la = void 0;
            i2--;
          }
          val = la === void 0 ? true : la;
          if (isArray) (data[arg] = data[arg] || []).push(val);
          else data[arg] = val;
          i2++;
          continue;
        }
        remain.push(arg);
      }
    }
    function resolveShort(arg, shorthands21, shortAbbr, abbrevs) {
      arg = arg.replace(/^-+/, "");
      if (abbrevs[arg] === arg)
        return null;
      if (shorthands21[arg]) {
        if (shorthands21[arg] && !Array.isArray(shorthands21[arg]))
          shorthands21[arg] = shorthands21[arg].split(/\s+/);
        return shorthands21[arg];
      }
      var singles = shorthands21.___singles;
      if (!singles) {
        singles = Object.keys(shorthands21).filter(function(s) {
          return s.length === 1;
        }).reduce(function(l, r) {
          l[r] = true;
          return l;
        }, {});
        shorthands21.___singles = singles;
        debug("shorthand singles", singles);
      }
      var chrs = arg.split("").filter(function(c3) {
        return singles[c3];
      });
      if (chrs.join("") === arg) return chrs.map(function(c3) {
        return shorthands21[c3];
      }).reduce(function(l, r) {
        return l.concat(r);
      }, []);
      if (abbrevs[arg] && !shorthands21[arg])
        return null;
      if (shortAbbr[arg])
        arg = shortAbbr[arg];
      if (shorthands21[arg] && !Array.isArray(shorthands21[arg]))
        shorthands21[arg] = shorthands21[arg].split(/\s+/);
      return shorthands21[arg];
    }
  }
});

// ../cli/commands/lib/completion/getOptionType.js
function getOptionCompletions(optionTypes, shorthands21, option) {
  const optionType = getOptionType(optionTypes, shorthands21, option);
  return optionTypeToCompletion(optionType);
}
function optionTypeToCompletion(optionType) {
  switch (optionType) {
    // In this case the option is complete
    case void 0:
    case Boolean:
      return void 0;
    // In this case, anything may be the option value
    case String:
    case Number:
      return [];
  }
  if (!Array.isArray(optionType))
    return [];
  if (optionType.length === 1) {
    return optionTypeToCompletion(optionType);
  }
  return optionType.filter((ot) => typeof ot === "string");
}
function getOptionType(optionTypes, shorthands21, option) {
  const allBools = Object.fromEntries(Object.keys(optionTypes).map((optionName) => [optionName, Boolean]));
  const result2 = omit_default(["argv"], (0, import_nopt.default)(allBools, shorthands21, [option], 0));
  return optionTypes[Object.entries(result2)[0]?.[0]];
}
function getLastOption(completionCtx) {
  if (isOption(completionCtx.prev))
    return completionCtx.prev;
  if (completionCtx.lastPartial === "" || completionCtx.words <= 1)
    return null;
  const words = completionCtx.line.slice(0, completionCtx.point).trim().split(/\s+/);
  const lastWord = words[words.length - 2];
  return isOption(lastWord) ? lastWord : null;
}
function isOption(word) {
  return word.startsWith("--") && word.length >= 3 || word[0] === "-" && word.length >= 2;
}
function currentTypedWordType(completionCtx) {
  if (completionCtx.partial.endsWith(" "))
    return null;
  return completionCtx.lastPartial[0] === "-" ? "option" : "value";
}
var import_nopt;
var init_getOptionType = __esm({
  "../cli/commands/lib/completion/getOptionType.js"() {
    "use strict";
    import_nopt = __toESM(require_nopt(), 1);
    init_es();
  }
});

// ../cli/commands/lib/completion/optionTypesToCompletions.js
function optionTypesToCompletions(optionTypes) {
  const completions = [];
  for (const [name, typeObj] of Object.entries(optionTypes)) {
    if (typeObj === Boolean) {
      completions.push({ name: `--${name}` });
      completions.push({ name: `--no-${name}` });
    } else {
      completions.push({ name: `--${name}` });
    }
  }
  return completions;
}
var init_optionTypesToCompletions = __esm({
  "../cli/commands/lib/completion/optionTypesToCompletions.js"() {
    "use strict";
  }
});

// ../cli/commands/lib/completion/complete.js
async function complete(ctx, input) {
  if (input.options.version)
    return [];
  const optionTypes = {
    ...ctx.universalOptionsTypes,
    ...(input.cmd && ctx.cliOptionsTypesByCommandName[input.cmd]?.()) ?? {}
  };
  if (input.currentTypedWordType !== "option") {
    if (input.lastOption === "--filter") {
      const workspaceDir = await findWorkspaceDir(process.cwd()) ?? process.cwd();
      const workspaceManifest = await readWorkspaceManifest(workspaceDir);
      const allProjects = await findWorkspaceProjects(workspaceDir, {
        patterns: workspaceManifest?.packages,
        supportedArchitectures: {
          os: ["current"],
          cpu: ["current"],
          libc: ["current"]
        }
      });
      return allProjects.map(({ manifest }) => ({ name: manifest.name })).filter((item) => !!item.name);
    } else if (input.lastOption) {
      const optionCompletions = getOptionCompletions(
        optionTypes,
        // eslint-disable-line
        {
          ...ctx.universalShorthands,
          ...input.cmd ? ctx.shorthandsByCommandName[input.cmd] : {}
        },
        input.lastOption
      );
      if (optionCompletions !== void 0) {
        return optionCompletions.map((name) => ({ name }));
      }
    }
  }
  let completions = [];
  if (input.currentTypedWordType !== "option") {
    if (!input.cmd || input.currentTypedWordType === "value" && !ctx.completionByCommandName[input.cmd]) {
      completions = ctx.initialCompletion();
    } else if (ctx.completionByCommandName[input.cmd]) {
      try {
        completions = await ctx.completionByCommandName[input.cmd](input.options, input.params);
      } catch {
      }
    }
  }
  if (input.currentTypedWordType === "value") {
    return completions;
  }
  if (!input.cmd) {
    return [
      ...completions,
      ...optionTypesToCompletions(optionTypes),
      { name: "--version" }
    ];
  }
  return [
    ...completions,
    ...optionTypesToCompletions(optionTypes)
    // eslint-disable-line
  ];
}
var init_complete2 = __esm({
  "../cli/commands/lib/completion/complete.js"() {
    "use strict";
    init_lib30();
    init_lib142();
    init_lib31();
    init_getOptionType();
    init_optionTypesToCompletions();
  }
});

// ../cli/commands/lib/completion/completionServer.js
function createCompletionServer(opts2) {
  return async () => {
    const shell = (0, import_tabtab.getShellFromEnv)(process.env);
    const env3 = import_tabtab2.default.parseEnv(process.env);
    if (!env3.complete)
      return;
    const inputArgv = t(stripPartialWord(env3)).slice(1);
    if (inputArgv.includes("--"))
      return;
    const { params, options, cmd } = await opts2.parseCliArgs(inputArgv);
    import_tabtab2.default.log(await complete(opts2, {
      cmd,
      currentTypedWordType: currentTypedWordType(env3),
      lastOption: getLastOption(env3),
      options,
      params
    }), shell);
  };
}
function stripPartialWord(env3) {
  if (env3.lastPartial.length > 0) {
    return env3.partial.slice(0, -env3.lastPartial.length);
  }
  return env3.partial;
}
var import_tabtab, import_tabtab2;
var init_completionServer = __esm({
  "../cli/commands/lib/completion/completionServer.js"() {
    "use strict";
    import_tabtab = __toESM(require_lib25(), 1);
    import_tabtab2 = __toESM(require_lib25(), 1);
    init_index_modern();
    init_complete2();
    init_getOptionType();
  }
});

// ../cli/commands/lib/completion/getShell.js
function getShellFromString(shell) {
  shell = shell?.trim();
  if (!shell) {
    throw new PnpmError("MISSING_SHELL_NAME", "`pnpm completion` requires a shell name");
  }
  if (!(0, import_tabtab3.isShellSupported)(shell)) {
    throw new PnpmError("UNSUPPORTED_SHELL", `'${shell}' is not supported`, {
      hint: `Supported shells are: ${import_tabtab3.SUPPORTED_SHELLS.join(", ")}`
    });
  }
  return shell;
}
function getShellFromParams(params) {
  const [shell, ...rest] = params;
  if (rest.length) {
    throw new PnpmError("REDUNDANT_PARAMETERS", `The ${rest.length} parameters after shell is not necessary`);
  }
  return getShellFromString(shell);
}
var import_tabtab3;
var init_getShell = __esm({
  "../cli/commands/lib/completion/getShell.js"() {
    "use strict";
    init_lib2();
    import_tabtab3 = __toESM(require_lib25(), 1);
  }
});

// ../cli/commands/lib/completion/generateCompletion.js
var generateCompletion_exports = {};
__export(generateCompletion_exports, {
  cliOptionsTypes: () => cliOptionsTypes16,
  commandNames: () => commandNames17,
  createCompletionGenerator: () => createCompletionGenerator,
  handler: () => handler17,
  help: () => help17,
  rcOptionsTypes: () => rcOptionsTypes17,
  skipPackageManagerCheck: () => skipPackageManagerCheck
});
function help17() {
  return renderHelp({
    description: "Print shell completion code to stdout",
    url: "https://pnpm.io/completion",
    usages: import_tabtab4.SUPPORTED_SHELLS.map((shell) => `pnpm completion ${shell}`)
  });
}
function createCompletionGenerator(ctx) {
  return async function handler77(_opts, params) {
    const shell = getShellFromParams(params);
    const output = await (0, import_tabtab4.getCompletionScript)({ name: "pnpm", completer: "pnpm", shell });
    ctx.log(output);
  };
}
var import_tabtab4, commandNames17, skipPackageManagerCheck, rcOptionsTypes17, cliOptionsTypes16, handler17;
var init_generateCompletion = __esm({
  "../cli/commands/lib/completion/generateCompletion.js"() {
    "use strict";
    import_tabtab4 = __toESM(require_lib25(), 1);
    init_lib63();
    init_getShell();
    commandNames17 = ["completion"];
    skipPackageManagerCheck = true;
    rcOptionsTypes17 = () => ({});
    cliOptionsTypes16 = () => ({});
    handler17 = createCompletionGenerator({
      log: console.log
    });
  }
});

// ../cli/commands/lib/index.js
var init_lib143 = __esm({
  "../cli/commands/lib/index.js"() {
    "use strict";
    init_completionServer();
    init_generateCompletion();
  }
});

// ../object/property-path/lib/token/combine.js
var combineParsers;
var init_combine = __esm({
  "../object/property-path/lib/token/combine.js"() {
    "use strict";
    combineParsers = (parsers) => (source) => {
      for (const parse7 of parsers) {
        const parseResult = parse7(source);
        if (parseResult)
          return parseResult;
      }
      return void 0;
    };
  }
});

// ../object/property-path/lib/token/ExactToken.js
var createExactTokenParser, parseDotOperator, parseOpenBracket, parseCloseBracket;
var init_ExactToken = __esm({
  "../object/property-path/lib/token/ExactToken.js"() {
    "use strict";
    createExactTokenParser = (content) => (source) => source.startsWith(content) ? [{ type: "exact", content }, source.slice(content.length)] : void 0;
    parseDotOperator = createExactTokenParser(".");
    parseOpenBracket = createExactTokenParser("[");
    parseCloseBracket = createExactTokenParser("]");
  }
});

// ../object/property-path/lib/token/Identifier.js
var parseIdentifier;
var init_Identifier = __esm({
  "../object/property-path/lib/token/Identifier.js"() {
    "use strict";
    parseIdentifier = (source) => {
      if (source === "")
        return void 0;
      const firstChar = source[0];
      if (!/[a-z_]/i.test(firstChar))
        return void 0;
      let content = firstChar;
      source = source.slice(1);
      while (source !== "") {
        const char = source[0];
        if (!/\w/.test(char))
          break;
        source = source.slice(1);
        content += char;
      }
      return [{ type: "identifier", content }, source];
    };
  }
});

// ../object/property-path/lib/token/ParseErrorBase.js
var ParseErrorBase;
var init_ParseErrorBase = __esm({
  "../object/property-path/lib/token/ParseErrorBase.js"() {
    "use strict";
    init_lib2();
    ParseErrorBase = class extends PnpmError {
    };
  }
});

// ../object/property-path/lib/token/NumericLiteral.js
var UnsupportedNumericSuffix, parseNumericLiteral;
var init_NumericLiteral = __esm({
  "../object/property-path/lib/token/NumericLiteral.js"() {
    "use strict";
    init_ParseErrorBase();
    UnsupportedNumericSuffix = class extends ParseErrorBase {
      suffix;
      constructor(suffix) {
        super("UNSUPPORTED_NUMERIC_LITERAL_SUFFIX", `Numeric suffix ${JSON.stringify(suffix)} is not supported`);
        this.suffix = suffix;
      }
    };
    parseNumericLiteral = (source) => {
      if (source === "")
        return void 0;
      const firstChar = source[0];
      if (firstChar < "0" || firstChar > "9")
        return void 0;
      let numberString = firstChar;
      source = source.slice(1);
      while (source !== "") {
        const char = source[0];
        if (/[0-9.]/.test(char)) {
          numberString += char;
          source = source.slice(1);
          continue;
        }
        if (/[a-z]/i.test(char)) {
          throw new UnsupportedNumericSuffix(char);
        }
        break;
      }
      return [{ type: "numeric-literal", content: Number(numberString) }, source];
    };
  }
});

// ../object/property-path/lib/token/StringLiteral.js
var STRING_LITERAL_ESCAPES, UnsupportedEscapeSequenceError, IncompleteStringLiteralError, parseStringLiteral2;
var init_StringLiteral = __esm({
  "../object/property-path/lib/token/StringLiteral.js"() {
    "use strict";
    init_ParseErrorBase();
    STRING_LITERAL_ESCAPES = {
      "\\": "\\",
      "'": "'",
      '"': '"',
      b: "\b",
      n: "\n",
      r: "\r",
      t: "	"
    };
    UnsupportedEscapeSequenceError = class extends ParseErrorBase {
      sequence;
      constructor(sequence) {
        super("UNSUPPORTED_STRING_LITERAL_ESCAPE_SEQUENCE", `pnpm's string literal doesn't support ${JSON.stringify("\\" + sequence)}`);
        this.sequence = sequence;
      }
    };
    IncompleteStringLiteralError = class extends ParseErrorBase {
      expectedQuote;
      constructor(expectedQuote) {
        super("INCOMPLETE_STRING_LITERAL", `Input ends without closing quote (${expectedQuote})`);
        this.expectedQuote = expectedQuote;
      }
    };
    parseStringLiteral2 = (source) => {
      let quote2;
      if (source[0] === '"') {
        quote2 = '"';
      } else if (source[0] === "'") {
        quote2 = "'";
      } else {
        return void 0;
      }
      source = source.slice(1);
      let content = "";
      let escaped = false;
      while (source !== "") {
        const char = source[0];
        source = source.slice(1);
        if (escaped) {
          escaped = false;
          const realChar = STRING_LITERAL_ESCAPES[char];
          if (!realChar) {
            throw new UnsupportedEscapeSequenceError(char);
          }
          content += realChar;
          continue;
        }
        if (char === quote2) {
          return [{ type: "string-literal", quote: quote2, content }, source];
        }
        if (char === "\\") {
          escaped = true;
          continue;
        }
        content += char;
      }
      throw new IncompleteStringLiteralError(quote2);
    };
  }
});

// ../object/property-path/lib/token/Whitespace.js
var WHITESPACE, parseWhitespace;
var init_Whitespace = __esm({
  "../object/property-path/lib/token/Whitespace.js"() {
    "use strict";
    WHITESPACE = { type: "whitespace" };
    parseWhitespace = (source) => {
      const remaining = source.trimStart();
      return remaining === source ? void 0 : [WHITESPACE, remaining];
    };
  }
});

// ../object/property-path/lib/token/tokenize.js
function* tokenize(source) {
  while (source !== "") {
    const parseResult = parseToken(source);
    if (!parseResult)
      break;
    const [token, remaining] = parseResult;
    yield token;
    if (source.length <= remaining.length) {
      throw new Error(`Something went wrong! the remaining string (${remaining}) is supposed to be less than the source string (${source})`);
    }
    source = remaining;
  }
}
var parseExpectedToken, parseUnexpectedToken, parseToken;
var init_tokenize = __esm({
  "../object/property-path/lib/token/tokenize.js"() {
    "use strict";
    init_combine();
    init_ExactToken();
    init_Identifier();
    init_NumericLiteral();
    init_StringLiteral();
    init_Whitespace();
    parseExpectedToken = combineParsers([
      parseDotOperator,
      parseOpenBracket,
      parseCloseBracket,
      parseIdentifier,
      parseNumericLiteral,
      parseStringLiteral2,
      parseWhitespace
    ]);
    parseUnexpectedToken = (source) => [{ type: "unexpected", content: source.slice(0, 1) }, source.slice(1)];
    parseToken = combineParsers([parseExpectedToken, parseUnexpectedToken]);
  }
});

// ../object/property-path/lib/token/types.js
var init_types4 = __esm({
  "../object/property-path/lib/token/types.js"() {
    "use strict";
  }
});

// ../object/property-path/lib/token/index.js
var init_token = __esm({
  "../object/property-path/lib/token/index.js"() {
    "use strict";
    init_combine();
    init_ExactToken();
    init_Identifier();
    init_NumericLiteral();
    init_ParseErrorBase();
    init_StringLiteral();
    init_tokenize();
    init_types4();
    init_Whitespace();
  }
});

// ../object/property-path/lib/parse.js
import assert10 from "node:assert/strict";
function* parsePropertyPath(propertyPath) {
  let stack;
  for (const token of tokenize(propertyPath)) {
    if (token.type === "exact" && token.content === ".") {
      if (!stack) {
        stack = token;
        continue;
      }
      throw new UnexpectedTokenError(token);
    }
    if (token.type === "exact" && token.content === "[") {
      if (!stack) {
        stack = token;
        continue;
      }
      throw new UnexpectedTokenError(token);
    }
    if (token.type === "exact" && token.content === "]") {
      if (!Array.isArray(stack))
        throw new UnexpectedTokenError(token);
      const [openBracket, literal] = stack;
      assert10.equal(openBracket.type, "exact");
      assert10.equal(openBracket.content, "[");
      assert10(literal.type === "numeric-literal" || literal.type === "string-literal");
      yield literal.content;
      stack = void 0;
      continue;
    }
    if (token.type === "identifier") {
      if (!stack || "type" in stack && stack.type === "exact" && stack.content === ".") {
        stack = void 0;
        yield token.content;
        continue;
      }
      throw new UnexpectedIdentifierError(token);
    }
    if (token.type === "numeric-literal" || token.type === "string-literal") {
      if (stack && "type" in stack && stack.type === "exact" && stack.content === "[") {
        stack = [stack, token];
        continue;
      }
      throw new UnexpectedLiteralError(token);
    }
    if (token.type === "whitespace")
      continue;
    if (token.type === "unexpected")
      throw new UnexpectedTokenError(token);
    const _typeGuard = token;
  }
  if (stack)
    throw new UnexpectedEndOfInputError();
}
var UnexpectedTokenError, UnexpectedIdentifierError, UnexpectedLiteralError, UnexpectedEndOfInputError;
var init_parse = __esm({
  "../object/property-path/lib/parse.js"() {
    "use strict";
    init_lib2();
    init_token();
    UnexpectedTokenError = class extends PnpmError {
      token;
      constructor(token) {
        super("UNEXPECTED_TOKEN_IN_PROPERTY_PATH", `Unexpected token ${JSON.stringify(token.content)} in property path`);
        this.token = token;
      }
    };
    UnexpectedIdentifierError = class extends PnpmError {
      token;
      constructor(token) {
        super("UNEXPECTED_IDENTIFIER_IN_PROPERTY_PATH", `Unexpected identifier ${token.content} in property path`);
        this.token = token;
      }
    };
    UnexpectedLiteralError = class extends PnpmError {
      token;
      constructor(token) {
        super("UNEXPECTED_LITERAL_IN_PROPERTY_PATH", `Unexpected literal ${JSON.stringify(token.content)} in property path`);
        this.token = token;
      }
    };
    UnexpectedEndOfInputError = class extends PnpmError {
      constructor() {
        super("UNEXPECTED_END_OF_PROPERTY_PATH", "The property path does not end properly");
      }
    };
  }
});

// ../object/property-path/lib/unsafeKeys.js
function rejectUnsafeKeys(propertyPath) {
  for (const segment of propertyPath) {
    if (typeof segment === "string" && UNSAFE_KEYS.has(segment)) {
      throw new UnsafePropertyPathKeyError(segment);
    }
  }
}
var UNSAFE_KEYS, UnsafePropertyPathKeyError;
var init_unsafeKeys = __esm({
  "../object/property-path/lib/unsafeKeys.js"() {
    "use strict";
    init_lib2();
    UNSAFE_KEYS = /* @__PURE__ */ new Set(["__proto__", "constructor", "prototype"]);
    UnsafePropertyPathKeyError = class extends PnpmError {
      key;
      constructor(key) {
        super("UNSAFE_PROPERTY_PATH_KEY", `Key "${key}" is not allowed in a property path`);
        this.key = key;
      }
    };
  }
});

// ../object/property-path/lib/delete.js
function deleteObjectValueByPropertyPath(object, propertyPath) {
  const path218 = Array.from(propertyPath);
  if (path218.length === 0)
    return;
  rejectUnsafeKeys(path218);
  let obj = object;
  for (let i2 = 0; i2 < path218.length - 1; i2++) {
    const key = path218[i2];
    if (typeof obj !== "object" || obj === null || !Object.hasOwn(obj, key) || Array.isArray(obj) && typeof key !== "number") {
      return;
    }
    obj = obj[key];
  }
  if (typeof obj !== "object" || obj === null)
    return;
  const lastKey = path218[path218.length - 1];
  if (Array.isArray(obj) && isArrayIndex(lastKey)) {
    obj.splice(Number(lastKey), 1);
    return;
  }
  delete obj[lastKey];
}
function isArrayIndex(key) {
  if (typeof key === "number")
    return Number.isInteger(key) && key >= 0;
  if (!/^(?:0|[1-9]\d*)$/.test(key))
    return false;
  return Number.isSafeInteger(Number(key));
}
var deleteObjectValueByPropertyPathString;
var init_delete = __esm({
  "../object/property-path/lib/delete.js"() {
    "use strict";
    init_parse();
    init_unsafeKeys();
    deleteObjectValueByPropertyPathString = (object, propertyPath) => deleteObjectValueByPropertyPath(object, parsePropertyPath(propertyPath));
  }
});

// ../object/property-path/lib/get.js
function getObjectValueByPropertyPath(object, propertyPath) {
  for (const name of propertyPath) {
    if (typeof object !== "object" || object == null || !Object.hasOwn(object, name) || Array.isArray(object) && typeof name !== "number")
      return void 0;
    object = object[name];
  }
  return object;
}
var getObjectValueByPropertyPathString;
var init_get = __esm({
  "../object/property-path/lib/get.js"() {
    "use strict";
    init_parse();
    getObjectValueByPropertyPathString = (object, propertyPath) => getObjectValueByPropertyPath(object, parsePropertyPath(propertyPath));
  }
});

// ../object/property-path/lib/set.js
function setObjectValueByPropertyPath(object, propertyPath, value) {
  const path218 = Array.from(propertyPath);
  if (path218.length === 0)
    throw new EmptyPropertyPathError();
  rejectUnsafeKeys(path218);
  let obj = object;
  for (let i2 = 0; i2 < path218.length - 1; i2++) {
    const key = path218[i2];
    const current = obj[key];
    const needsArray = typeof path218[i2 + 1] === "number";
    const isContainer = typeof current === "object" && current !== null;
    if (!isContainer || Array.isArray(current) !== needsArray) {
      const replacement = needsArray ? [] : {};
      defineOwnProperty(obj, key, replacement);
      obj = replacement;
    } else {
      obj = current;
    }
  }
  defineOwnProperty(obj, path218[path218.length - 1], value);
}
function defineOwnProperty(obj, key, value) {
  Object.defineProperty(obj, key, {
    value,
    writable: true,
    enumerable: true,
    configurable: true
  });
}
var EmptyPropertyPathError, setObjectValueByPropertyPathString;
var init_set2 = __esm({
  "../object/property-path/lib/set.js"() {
    "use strict";
    init_lib2();
    init_parse();
    init_unsafeKeys();
    EmptyPropertyPathError = class extends PnpmError {
      constructor() {
        super("EMPTY_PROPERTY_PATH", "Cannot set a value with an empty property path");
      }
    };
    setObjectValueByPropertyPathString = (object, propertyPath, value) => setObjectValueByPropertyPath(object, parsePropertyPath(propertyPath), value);
  }
});

// ../object/property-path/lib/index.js
var init_lib144 = __esm({
  "../object/property-path/lib/index.js"() {
    "use strict";
    init_delete();
    init_get();
    init_parse();
    init_set2();
    init_token();
    init_unsafeKeys();
  }
});

// ../config/commands/lib/protectedSettings.js
function censorProtectedSettings(config) {
  config = { ...config };
  for (const key in config) {
    if (isSettingProtected(key)) {
      config[key] = "(protected)";
    }
  }
  return config;
}
var PROTECTED_SUFFICES, isSettingProtected;
var init_protectedSettings = __esm({
  "../config/commands/lib/protectedSettings.js"() {
    "use strict";
    PROTECTED_SUFFICES = [
      "_auth",
      "_authToken",
      "username",
      "_password"
    ];
    isSettingProtected = (key) => key.startsWith("//") ? PROTECTED_SUFFICES.some((suffix) => key.endsWith(`:${suffix}`)) : PROTECTED_SUFFICES.includes(key);
  }
});

// ../config/commands/lib/configToRecord.js
function configToRecord(config, explicitlySetKeys) {
  const result2 = {};
  for (const kebabKey of Object.keys(types2)) {
    const camelKey = camelCase(kebabKey, { locale: "en-US" });
    if (!explicitlySetKeys.has(camelKey))
      continue;
    const value = config[camelKey];
    if (value !== void 0) {
      result2[camelKey] = value;
    }
  }
  for (const [key, value] of Object.entries(config)) {
    if (value === void 0 || NON_SETTING_CONFIG_KEYS.has(key))
      continue;
    if (!(key in result2) && explicitlySetKeys.has(key)) {
      result2[key] = value;
    }
  }
  for (const [key, value] of Object.entries(config.authConfig)) {
    if (!(key in result2)) {
      result2[key] = value;
    }
  }
  if (config.userAgent) {
    result2.userAgent = config.userAgent;
  }
  return censorProtectedSettings(sortDirectKeys(result2));
}
var NON_SETTING_CONFIG_KEYS;
var init_configToRecord = __esm({
  "../config/commands/lib/configToRecord.js"() {
    "use strict";
    init_lib61();
    init_lib76();
    init_camelcase();
    init_protectedSettings();
    NON_SETTING_CONFIG_KEYS = /* @__PURE__ */ new Set([
      "authConfig",
      "configByUri"
    ]);
  }
});

// ../config/commands/lib/parseConfigPropertyPath.js
function* parseConfigPropertyPath(propertyPath) {
  const iter = parsePropertyPath(propertyPath);
  const first = iter.next();
  if (first.done)
    return;
  yield typeof first.value === "number" ? first.value : camelCase(first.value, { locale: "en-US" });
  yield* iter;
}
var init_parseConfigPropertyPath = __esm({
  "../config/commands/lib/parseConfigPropertyPath.js"() {
    "use strict";
    init_lib144();
    init_camelcase();
  }
});

// ../config/commands/lib/configGet.js
function configGet(opts2, key) {
  const isScopedKey = key.startsWith("@");
  const configResult = lookupConfig(opts2, key, isScopedKey) ?? (isPropertyPath(key) ? lookupByPropertyPath(opts2, key) : { value: void 0 });
  const output = displayConfig(configResult?.value, opts2);
  return { output, exitCode: 0 };
}
function lookupConfig(opts2, key, isScopedKey) {
  if (isScopedKey) {
    if (key.endsWith(":registry")) {
      const scope = key.slice(0, key.length - ":registry".length);
      const merged = opts2._config.registries?.[scope];
      if (merged !== void 0) {
        return { value: merged };
      }
    }
    return { value: opts2.authConfig[key] };
  }
  const kebabKey = isCamelCase(key) ? (0, import_lodash4.default)(key) : key;
  if (Object.hasOwn(types2, kebabKey)) {
    const camelKey2 = camelCase(kebabKey, { locale: "en-US" });
    const explicit = opts2._context.explicitlySetKeys;
    if (!explicit || explicit.has(camelKey2)) {
      return { value: opts2._config[camelKey2] };
    }
    if (kebabKey in opts2.authConfig) {
      return { value: opts2.authConfig[kebabKey] };
    }
    return { value: void 0 };
  }
  if (isIniConfigKey(key)) {
    return { value: opts2.authConfig[key] };
  }
  const camelKey = camelCase(key, { locale: "en-US" });
  const record = configToRecord(opts2._config, opts2._context.explicitlySetKeys);
  if (Object.hasOwn(record, camelKey)) {
    return { value: record[camelKey] };
  }
  return void 0;
}
function lookupByPropertyPath(opts2, propertyPath) {
  const parsedPropertyPath = Array.from(parseConfigPropertyPath(propertyPath));
  if (parsedPropertyPath.length === 0) {
    return { value: configToRecord(opts2._config, opts2._context.explicitlySetKeys) };
  }
  const record = configToRecord(opts2._config, opts2._context.explicitlySetKeys);
  return {
    value: getObjectValueByPropertyPath(record, parsedPropertyPath)
  };
}
function isPropertyPath(key) {
  return key === "" || key.includes(".") || key.includes("[");
}
function displayConfig(config, opts2) {
  if (Boolean(opts2.json) || Array.isArray(config)) {
    return JSON.stringify(config, void 0, 2);
  }
  if (typeof config === "object" && config != null) {
    return JSON.stringify(config, void 0, 2);
  }
  return String(config);
}
var import_lodash4;
var init_configGet = __esm({
  "../config/commands/lib/configGet.js"() {
    "use strict";
    init_lib61();
    init_lib144();
    init_lib60();
    init_camelcase();
    import_lodash4 = __toESM(require_lodash2(), 1);
    init_configToRecord();
    init_parseConfigPropertyPath();
  }
});

// ../config/commands/lib/configList.js
async function configList(opts2) {
  return JSON.stringify(configToRecord(opts2._config, opts2._context.explicitlySetKeys), void 0, 2);
}
var init_configList = __esm({
  "../config/commands/lib/configList.js"() {
    "use strict";
    init_configToRecord();
  }
});

// ../config/commands/lib/getConfigFileInfo.js
function getConfigFileInfo(key, opts2) {
  key = (0, import_lodash5.default)(key);
  const configDir = opts2.global ? opts2.configDir : opts2.dir;
  if (isIniConfigKey(key)) {
    const configFileName = opts2.global ? "auth.ini" : ".npmrc";
    return { configDir, configFileName };
  } else {
    const configFileName = opts2.global ? GLOBAL_CONFIG_YAML_FILENAME : WORKSPACE_MANIFEST_FILENAME;
    return { configDir, configFileName };
  }
}
var import_lodash5;
var init_getConfigFileInfo = __esm({
  "../config/commands/lib/getConfigFileInfo.js"() {
    "use strict";
    init_lib61();
    init_lib();
    import_lodash5 = __toESM(require_lodash2(), 1);
  }
});

// ../config/commands/lib/configSet.js
import path161 from "node:path";
import util42 from "node:util";
async function configSet(opts2, key, valueParam) {
  let isAuthSetting = isIniConfigKey(key);
  if (!isAuthSetting) {
    key = validateSimpleKey(key);
    isAuthSetting = isIniConfigKey(key);
  }
  let value = valueParam;
  if (valueParam != null && opts2.json) {
    value = JSON.parse(valueParam);
  }
  if (isAuthSetting) {
    const configPath2 = opts2.global ? path161.join(opts2.configDir, "auth.ini") : path161.join(opts2.dir, ".npmrc");
    if (value != null && typeof value !== "string" && isStringOnlyIniKey(key)) {
      throw new PnpmError("CONFIG_SET_AUTH_NON_STRING", `Cannot set ${key} to a non-string value (${JSON.stringify(value)})`);
    }
    const settings = await safeReadIniFile2(configPath2);
    if (value == null) {
      if (settings[key] == null)
        return;
      delete settings[key];
    } else {
      settings[key] = value;
    }
    await writeIniFile(configPath2, settings);
    return;
  }
  const { configDir, configFileName } = getConfigFileInfo(key, opts2);
  const configPath = path161.join(configDir, configFileName);
  switch (configFileName) {
    case GLOBAL_CONFIG_YAML_FILENAME:
    case WORKSPACE_MANIFEST_FILENAME: {
      if (configFileName === GLOBAL_CONFIG_YAML_FILENAME) {
        key = validateYamlConfigKey(key);
      }
      key = validateWorkspaceKey(key);
      await updateWorkspaceManifest(configDir, {
        fileName: configFileName,
        updatedFields: {
          [key]: castField(value, (0, import_lodash6.default)(key))
        }
      });
      break;
    }
    case "auth.ini":
    case ".npmrc": {
      const settings = await safeReadIniFile2(configPath);
      key = validateIniConfigKey(key);
      if (value == null) {
        if (settings[key] == null)
          return;
        delete settings[key];
      } else {
        settings[key] = value;
      }
      await writeIniFile(configPath, settings);
      break;
    }
    default: {
      const _typeGuard = configFileName;
      throw new Error(`Unhandled case: ${JSON.stringify(_typeGuard)}`);
    }
  }
}
function castField(value, key) {
  if (typeof value !== "string") {
    return value;
  }
  const type4 = types2[key];
  const typeList = Array.isArray(type4) ? type4 : [type4];
  const isNumber = typeList.includes(Number);
  value = value.trim();
  switch (value) {
    case "true": {
      return true;
    }
    case "false": {
      return false;
    }
    case "null": {
      return null;
    }
    case "undefined": {
      return void 0;
    }
  }
  if (isNumber && !isNaN(value)) {
    value = Number(value);
  }
  return value;
}
function validateSimpleKey(key) {
  if (isStrictlyKebabCase(key))
    return key;
  const iter = parsePropertyPath(key);
  const first = iter.next();
  if (first.done)
    throw new ConfigSetKeyEmptyKeyError();
  const second = iter.next();
  if (!second.done)
    throw new ConfigSetDeepKeyError();
  return first.value.toString();
}
function validateIniConfigKey(key) {
  const kebabKey = (0, import_lodash6.default)(key);
  if (Object.hasOwn(types2, kebabKey)) {
    return kebabKey;
  }
  throw new ConfigSetUnsupportedIniConfigKeyError(key);
}
function validateWorkspaceKey(key) {
  if (Object.hasOwn(types2, key))
    return camelCase(key);
  if (!isCamelCase(key))
    throw new ConfigSetUnsupportedWorkspaceKeyError(key);
  return key;
}
function isStringOnlyIniKey(key) {
  if (STRING_ONLY_INI_KEYS.includes(key))
    return true;
  if (key.startsWith("@"))
    return true;
  if (key.startsWith("//"))
    return true;
  return false;
}
async function safeReadIniFile2(configPath) {
  try {
    return await readIniFile(configPath);
  } catch (err) {
    if (util42.types.isNativeError(err) && "code" in err && err.code === "ENOENT")
      return {};
    throw err;
  }
}
function validateYamlConfigKey(key) {
  const kebabKey = (0, import_lodash6.default)(key);
  if (!isConfigFileKey(kebabKey)) {
    throw new ConfigSetUnsupportedYamlConfigKeyError(key);
  }
  return kebabKey;
}
var import_lodash6, ConfigSetKeyEmptyKeyError, ConfigSetDeepKeyError, ConfigSetUnsupportedIniConfigKeyError, ConfigSetUnsupportedWorkspaceKeyError, STRING_ONLY_INI_KEYS, ConfigSetUnsupportedYamlConfigKeyError;
var init_configSet = __esm({
  "../config/commands/lib/configSet.js"() {
    "use strict";
    init_lib61();
    init_lib();
    init_lib2();
    init_lib144();
    init_lib60();
    init_lib99();
    init_camelcase();
    import_lodash6 = __toESM(require_lodash2(), 1);
    init_read_ini_file();
    init_write_ini_file();
    init_getConfigFileInfo();
    ConfigSetKeyEmptyKeyError = class extends PnpmError {
      constructor() {
        super("CONFIG_SET_EMPTY_KEY", "Cannot set config with an empty key");
      }
    };
    ConfigSetDeepKeyError = class extends PnpmError {
      constructor() {
        super("CONFIG_SET_DEEP_KEY", "Setting deep property path is not supported");
      }
    };
    ConfigSetUnsupportedIniConfigKeyError = class extends PnpmError {
      key;
      constructor(key) {
        super("CONFIG_SET_UNSUPPORTED_INI_CONFIG_KEY", `Key ${JSON.stringify(key)} isn't supported by INI config files`, {
          hint: `Add ${JSON.stringify(camelCase(key))} to the project workspace manifest instead`
        });
        this.key = key;
      }
    };
    ConfigSetUnsupportedWorkspaceKeyError = class extends PnpmError {
      key;
      constructor(key) {
        super("CONFIG_SET_UNSUPPORTED_WORKSPACE_KEY", `The key ${JSON.stringify(key)} isn't supported by the workspace manifest`, {
          hint: `Try ${JSON.stringify(camelCase(key))}`
        });
        this.key = key;
      }
    };
    STRING_ONLY_INI_KEYS = ["_auth", "_authToken", "_password", "username", "registry"];
    ConfigSetUnsupportedYamlConfigKeyError = class extends PnpmError {
      key;
      constructor(key) {
        super("CONFIG_SET_UNSUPPORTED_YAML_CONFIG_KEY", `The key ${JSON.stringify(key)} isn't supported by the global config.yaml file`, {
          hint: "Try setting them instead to the local pnpm-workspace.yaml file"
        });
        this.key = key;
      }
    };
  }
});

// ../config/commands/lib/config.js
var config_exports = {};
__export(config_exports, {
  cliOptionsTypes: () => cliOptionsTypes17,
  commandNames: () => commandNames18,
  handler: () => handler18,
  help: () => help18,
  rcOptionsTypes: () => rcOptionsTypes18
});
function rcOptionsTypes18() {
  return {};
}
function cliOptionsTypes17() {
  return {
    global: Boolean,
    location: ["global", "project"],
    json: Boolean
  };
}
function help18() {
  return renderHelp({
    description: "Manage the pnpm configuration files.",
    descriptionLists: [
      {
        title: "Commands",
        list: [
          {
            description: "Set the config key to the value provided",
            name: "set"
          },
          {
            description: "Print the config value for the provided key",
            name: "get"
          },
          {
            description: "Remove the config key from the config file",
            name: "delete"
          },
          {
            description: "Show all the config settings",
            name: "list"
          }
        ]
      },
      {
        title: "Options",
        list: [
          {
            description: "Sets the configuration in the global config file",
            name: "--global",
            shortAlias: "-g"
          },
          {
            description: 'When set to "project", the pnpm-workspace.yaml file will be used if it exists. If only .npmrc exists, it will be used. If neither exists, a pnpm-workspace.yaml file will be created.',
            name: "--location <project|global>"
          },
          {
            description: "Show all types of values in JSON format (not just objects and arrays)",
            name: "--json"
          }
        ]
      }
    ],
    url: docsUrl("config"),
    usages: [
      "pnpm config set <key> <value>",
      "pnpm config get <key>",
      "pnpm config get --json <key>",
      "pnpm config delete <key>",
      "pnpm config list"
    ]
  });
}
async function handler18(opts2, params) {
  if (params.length === 0) {
    throw new PnpmError("CONFIG_NO_SUBCOMMAND", "Please specify the subcommand", {
      hint: help18()
    });
  }
  if (opts2.location) {
    opts2.global = opts2.location === "global";
  } else if (opts2.cliOptions["global"] == null) {
    opts2.global = true;
  }
  switch (params[0]) {
    case "set":
    case "delete": {
      if (!params[1]) {
        throw new PnpmError("CONFIG_NO_PARAMS", `\`pnpm config ${params[0]}\` requires the config key`);
      }
      if (params[0] === "set") {
        let [key, value] = params.slice(1);
        if (value == null) {
          const parts = key.split("=");
          key = parts.shift();
          value = parts.join("=");
        }
        return configSet(opts2, key, value ?? "");
      } else {
        return configSet(opts2, params[1], null);
      }
    }
    case "get": {
      if (params[1]) {
        return configGet(opts2, params[1]);
      } else {
        return configList(opts2);
      }
    }
    case "list": {
      return configList(opts2);
    }
    default: {
      throw new PnpmError("CONFIG_UNKNOWN_SUBCOMMAND", "This subcommand is not known");
    }
  }
}
var commandNames18;
var init_config2 = __esm({
  "../config/commands/lib/config.js"() {
    "use strict";
    init_lib29();
    init_lib2();
    init_lib63();
    init_configGet();
    init_configList();
    init_configSet();
    commandNames18 = ["config", "c"];
  }
});

// ../config/commands/lib/get.js
var get_exports = {};
__export(get_exports, {
  cliOptionsTypes: () => cliOptionsTypes18,
  commandNames: () => commandNames19,
  handler: () => handler19,
  help: () => help19,
  rcOptionsTypes: () => rcOptionsTypes19
});
async function handler19(opts2, params) {
  return handler18(opts2, ["get", ...params]);
}
var rcOptionsTypes19, cliOptionsTypes18, help19, commandNames19;
var init_get2 = __esm({
  "../config/commands/lib/get.js"() {
    "use strict";
    init_config2();
    rcOptionsTypes19 = rcOptionsTypes18;
    cliOptionsTypes18 = cliOptionsTypes17;
    help19 = help18;
    commandNames19 = ["get"];
  }
});

// ../config/commands/lib/set.js
var set_exports = {};
__export(set_exports, {
  cliOptionsTypes: () => cliOptionsTypes19,
  commandNames: () => commandNames20,
  handler: () => handler20,
  help: () => help20,
  rcOptionsTypes: () => rcOptionsTypes20
});
async function handler20(opts2, params) {
  return handler18(opts2, ["set", ...params]);
}
var rcOptionsTypes20, cliOptionsTypes19, help20, commandNames20;
var init_set3 = __esm({
  "../config/commands/lib/set.js"() {
    "use strict";
    init_config2();
    rcOptionsTypes20 = rcOptionsTypes18;
    cliOptionsTypes19 = cliOptionsTypes17;
    help20 = help18;
    commandNames20 = ["set"];
  }
});

// ../config/commands/lib/index.js
var init_lib145 = __esm({
  "../config/commands/lib/index.js"() {
    "use strict";
    init_config2();
    init_get2();
    init_set3();
  }
});

// ../deps/compliance/audit/lib/lockfileToAuditIndex.js
function lockfileToAuditRequest(lockfile, opts2) {
  const importerIds = Object.keys(lockfile.importers);
  const importerWalkers = lockfileWalkerGroupImporterSteps(lockfile, importerIds, { include: opts2.include });
  const depTypes = opts2.depTypes ?? detectDepTypes(lockfile);
  const optionalOnly = opts2.optionalOnly ?? collectOptionalOnlyDepPaths(lockfile, opts2.include);
  const request = /* @__PURE__ */ Object.create(null);
  const versionStatesByName = /* @__PURE__ */ Object.create(null);
  let totalDependencies = 0;
  let dependencies = 0;
  let devDependencies = 0;
  let optionalDependencies = 0;
  const registerOccurrence = (o2) => {
    let versionStates = versionStatesByName[o2.name];
    if (!versionStates) {
      versionStates = /* @__PURE__ */ new Map();
      versionStatesByName[o2.name] = versionStates;
      request[o2.name] = [];
    }
    const state = versionStates.get(o2.version);
    if (!state) {
      versionStates.set(o2.version, { devOnly: o2.devOnly, optionalOnly: o2.optionalOnly });
      request[o2.name].push(o2.version);
      totalDependencies++;
      if (o2.devOnly)
        devDependencies++;
      if (o2.optionalOnly)
        optionalDependencies++;
      if (!o2.devOnly && !o2.optionalOnly)
        dependencies++;
      return;
    }
    const wasProduction = !state.devOnly && !state.optionalOnly;
    if (state.devOnly && !o2.devOnly) {
      state.devOnly = false;
      devDependencies--;
    }
    if (state.optionalOnly && !o2.optionalOnly) {
      state.optionalOnly = false;
      optionalDependencies--;
    }
    if (!wasProduction && !state.devOnly && !state.optionalOnly) {
      dependencies++;
    }
  };
  const makeVisitor = (graphDepTypes, graphOptionalOnly) => {
    const visit = (step2) => {
      for (const { depPath, pkgSnapshot, next: next2 } of step2.dependencies) {
        const { name, version: version2 } = nameVerFromPkgSnapshot(depPath, pkgSnapshot);
        if (version2) {
          registerOccurrence({
            name,
            version: version2,
            devOnly: graphDepTypes[depPath] === DepType.DevOnly,
            optionalOnly: graphOptionalOnly.has(depPath)
          });
        }
        visit(next2());
      }
    };
    return visit;
  };
  const visitMain = makeVisitor(depTypes, optionalOnly);
  for (const importerWalker of importerWalkers) {
    visitMain(importerWalker.step);
  }
  if (opts2.envLockfile) {
    const envLockfileObject = envLockfileToLockfileObject(opts2.envLockfile);
    const envDepTypes = detectDepTypes(envLockfileObject);
    const envOptionalOnly = collectOptionalOnlyDepPaths(envLockfileObject, opts2.include);
    const visitEnv = makeVisitor(envDepTypes, envOptionalOnly);
    for (const { step: step2 } of lockfileWalkerGroupImporterSteps(envLockfileObject, Object.keys(envLockfileObject.importers), { include: opts2.include })) {
      visitEnv(step2);
    }
  }
  return { request, totalDependencies, dependencies, devDependencies, optionalDependencies };
}
function buildAuditPathIndex(lockfile, vulnerableNames, opts2) {
  const paths3 = /* @__PURE__ */ Object.create(null);
  const depTypes = opts2.depTypes ?? detectDepTypes(lockfile);
  const optionalOnly = opts2.optionalOnly ?? collectOptionalOnlyDepPaths(lockfile, opts2.include);
  walkForPaths({
    lockfile,
    vulnerableNames,
    paths: paths3,
    depTypes,
    optionalOnly,
    include: opts2.include,
    importerSegmentOf: (importerId) => importerId.replace(/\//g, "__")
  });
  if (opts2.envLockfile) {
    const envLockfileObject = envLockfileToLockfileObject(opts2.envLockfile);
    walkForPaths({
      lockfile: envLockfileObject,
      vulnerableNames,
      paths: paths3,
      depTypes: detectDepTypes(envLockfileObject),
      optionalOnly: collectOptionalOnlyDepPaths(envLockfileObject, opts2.include),
      include: opts2.include,
      importerSegmentOf: (importerId) => importerId
    });
  }
  return paths3;
}
function walkForPaths(ctx) {
  const { lockfile, vulnerableNames, paths: paths3, depTypes, optionalOnly, include, importerSegmentOf } = ctx;
  const includeDeps = include?.dependencies !== false;
  const includeDevDeps = include?.devDependencies !== false;
  const includeOptDeps = include?.optionalDependencies !== false;
  const packages = lockfile.packages ?? {};
  const inTrail = /* @__PURE__ */ new Set();
  const visit = (edge, trail) => {
    if (inTrail.has(edge.depPath))
      return;
    const pkgSnapshot = packages[edge.depPath];
    if (pkgSnapshot == null)
      return;
    const { name, version: version2 } = nameVerFromPkgSnapshot(edge.depPath, pkgSnapshot);
    const resolvedName = name ?? edge.name;
    const fullPath = [...trail, resolvedName];
    if (version2 && vulnerableNames.has(resolvedName)) {
      recordPath(paths3, resolvedName, version2, fullPath.join(">"), depTypes[edge.depPath] === DepType.DevOnly, optionalOnly.has(edge.depPath));
    }
    inTrail.add(edge.depPath);
    try {
      for (const child of resolvedDepsToNamedDepPaths(pkgSnapshot.dependencies ?? {})) {
        visit(child, fullPath);
      }
      if (includeOptDeps) {
        for (const child of resolvedDepsToNamedDepPaths(pkgSnapshot.optionalDependencies ?? {})) {
          visit(child, fullPath);
        }
      }
    } finally {
      inTrail.delete(edge.depPath);
    }
  };
  for (const [importerId, importer] of Object.entries(lockfile.importers)) {
    const trail = [importerSegmentOf(importerId)];
    const roots = [];
    if (includeDeps)
      roots.push(...resolvedDepsToNamedDepPaths(importer.dependencies ?? {}));
    if (includeDevDeps)
      roots.push(...resolvedDepsToNamedDepPaths(importer.devDependencies ?? {}));
    if (includeOptDeps)
      roots.push(...resolvedDepsToNamedDepPaths(importer.optionalDependencies ?? {}));
    for (const root of roots) {
      visit(root, trail);
    }
  }
}
function recordPath(paths3, name, version2, joined, isDev, isOptional) {
  let byVersion = paths3[name];
  if (!byVersion) {
    byVersion = /* @__PURE__ */ new Map();
    paths3[name] = byVersion;
  }
  const info = byVersion.get(version2);
  if (!info) {
    byVersion.set(version2, { paths: [joined], dev: isDev, optional: isOptional });
    return;
  }
  if (!isDev)
    info.dev = false;
  if (!isOptional)
    info.optional = false;
  if (info.paths.length >= MAX_PATHS_PER_FINDING)
    return;
  if (info.paths.includes(joined))
    return;
  info.paths.push(joined);
}
function resolvedDepsToNamedDepPaths(deps) {
  const result2 = [];
  for (const [alias, ref] of Object.entries(deps)) {
    const depPath = refToRelative(ref, alias);
    if (depPath != null)
      result2.push({ name: alias, depPath });
  }
  return result2;
}
function collectOptionalOnlyDepPaths(lockfile, include) {
  const includeDeps = include?.dependencies !== false;
  const includeDevDeps = include?.devDependencies !== false;
  const includeOptDeps = include?.optionalDependencies !== false;
  const withoutOptional = /* @__PURE__ */ new Set();
  const withOptional = /* @__PURE__ */ new Set();
  for (const importer of Object.values(lockfile.importers)) {
    const nonOptionalRoots = [
      ...includeDeps ? resolvedDepsToDepPaths3(importer.dependencies ?? {}) : [],
      ...includeDevDeps ? resolvedDepsToDepPaths3(importer.devDependencies ?? {}) : []
    ];
    const allRoots = [
      ...nonOptionalRoots,
      ...includeOptDeps ? resolvedDepsToDepPaths3(importer.optionalDependencies ?? {}) : []
    ];
    walkReachable(lockfile, nonOptionalRoots, withoutOptional, false);
    walkReachable(lockfile, allRoots, withOptional, includeOptDeps);
  }
  const result2 = /* @__PURE__ */ new Set();
  for (const depPath of withOptional) {
    if (!withoutOptional.has(depPath))
      result2.add(depPath);
  }
  return result2;
}
function walkReachable(lockfile, depPaths, seen, includeOptionalEdges) {
  const packages = lockfile.packages ?? {};
  for (const depPath of depPaths) {
    if (seen.has(depPath))
      continue;
    seen.add(depPath);
    const snapshot = packages[depPath];
    if (!snapshot)
      continue;
    walkReachable(lockfile, resolvedDepsToDepPaths3(snapshot.dependencies ?? {}), seen, includeOptionalEdges);
    if (includeOptionalEdges) {
      walkReachable(lockfile, resolvedDepsToDepPaths3(snapshot.optionalDependencies ?? {}), seen, includeOptionalEdges);
    }
  }
}
function resolvedDepsToDepPaths3(deps) {
  return Object.entries(deps).map(([alias, ref]) => refToRelative(ref, alias)).filter((depPath) => depPath !== null);
}
function envLockfileToLockfileObject(envLockfile) {
  const envImporter = envLockfile.importers["."];
  const importers = {};
  if (Object.keys(envImporter.configDependencies).length > 0) {
    importers["configDependencies"] = { dependencies: envImporter.configDependencies };
  }
  if (envImporter.packageManagerDependencies) {
    importers["packageManagerDependencies"] = { dependencies: envImporter.packageManagerDependencies };
  }
  return convertToLockfileObject({
    lockfileVersion: envLockfile.lockfileVersion,
    importers,
    packages: envLockfile.packages,
    snapshots: envLockfile.snapshots
  });
}
var MAX_PATHS_PER_FINDING;
var init_lockfileToAuditIndex = __esm({
  "../deps/compliance/audit/lib/lockfileToAuditIndex.js"() {
    "use strict";
    init_lib65();
    init_lib125();
    init_lib78();
    init_lib70();
    init_lib88();
    MAX_PATHS_PER_FINDING = 100;
  }
});

// ../deps/compliance/audit/lib/types.js
var init_types5 = __esm({
  "../deps/compliance/audit/lib/types.js"() {
    "use strict";
  }
});

// ../deps/compliance/audit/lib/index.js
async function audit(lockfile, getAuthHeader, opts2) {
  const depTypes = detectDepTypes(lockfile);
  const optionalOnly = collectOptionalOnlyDepPaths(lockfile, opts2.include);
  const auditRequest = lockfileToAuditRequest(lockfile, { envLockfile: opts2.envLockfile, include: opts2.include, depTypes, optionalOnly });
  const registry = opts2.registry.endsWith("/") ? opts2.registry : `${opts2.registry}/`;
  const auditUrl = `${registry}-/npm/v1/security/advisories/bulk`;
  const authHeaderValue = getAuthHeader(registry);
  const requestHeaders = {
    "Content-Type": "application/json",
    ...getAuthHeaders(authHeaderValue)
  };
  const res = await fetchWithDispatcher(auditUrl, {
    dispatcherOptions: opts2.dispatcherOptions ?? {},
    body: JSON.stringify(auditRequest.request),
    headers: requestHeaders,
    method: "POST",
    retry: opts2.retry,
    timeout: opts2.timeout
  });
  if (res.status === 200) {
    const rawBody = await res.text();
    let body;
    try {
      body = JSON.parse(rawBody);
    } catch (err) {
      const reason = err instanceof Error ? err.message : String(err);
      throw new PnpmError("AUDIT_BAD_RESPONSE", `The audit endpoint (at ${auditUrl}) returned invalid JSON: ${reason}. Response body: ${rawBody.slice(0, 500)}`);
    }
    if (!isBulkResponseShape(body)) {
      throw new PnpmError("AUDIT_BAD_RESPONSE", `The audit endpoint (at ${auditUrl}) returned an unexpected body. Expected an object keyed by package name; got: ${JSON.stringify(body)?.slice(0, 500) ?? String(body)}`);
    }
    const vulnerableNames = new Set(Object.keys(body));
    let auditPathIndex = {};
    if (vulnerableNames.size > 0) {
      auditPathIndex = buildAuditPathIndex(lockfile, vulnerableNames, { envLockfile: opts2.envLockfile, include: opts2.include, depTypes, optionalOnly });
    }
    return bulkResponseToAuditReport(body, auditRequest, auditPathIndex);
  }
  if (res.status === 404) {
    throw new AuditEndpointNotExistsError(auditUrl);
  }
  throw new PnpmError("AUDIT_BAD_RESPONSE", `The audit endpoint (at ${auditUrl}) responded with ${res.status}: ${await res.text()}`);
}
function bulkResponseToAuditReport(bulk, auditRequest, auditPathIndex) {
  const advisories = /* @__PURE__ */ Object.create(null);
  const vulnerabilities = { info: 0, low: 0, moderate: 0, high: 0, critical: 0 };
  for (const [moduleName, packageAdvisories] of Object.entries(bulk)) {
    const byVersion = auditPathIndex[moduleName];
    for (const adv of packageAdvisories) {
      if (typeof adv.id !== "number" || !Number.isFinite(adv.id))
        continue;
      if (!isKnownSeverity(adv.severity))
        continue;
      const findings = buildFindings(adv, byVersion);
      if (findings.length === 0)
        continue;
      advisories[String(adv.id)] = normalizeAdvisory(adv, moduleName, findings);
      vulnerabilities[adv.severity] += 1;
    }
  }
  return {
    advisories,
    metadata: {
      vulnerabilities,
      dependencies: auditRequest.dependencies,
      devDependencies: auditRequest.devDependencies,
      optionalDependencies: auditRequest.optionalDependencies,
      totalDependencies: auditRequest.totalDependencies
    }
  };
}
function buildFindings(adv, byVersion) {
  if (byVersion == null)
    return [];
  const findings = [];
  for (const [version2, info] of byVersion) {
    if (satisfiesSafe(version2, adv.vulnerable_versions)) {
      findings.push({
        version: version2,
        paths: info.paths,
        dev: info.dev,
        optional: info.optional,
        bundled: false
      });
    }
  }
  return findings;
}
function isKnownSeverity(severity) {
  return typeof severity === "string" && KNOWN_SEVERITIES.has(severity);
}
function isBulkResponseShape(body) {
  if (typeof body !== "object" || body === null || Array.isArray(body))
    return false;
  return Object.values(body).every((packageAdvisories) => Array.isArray(packageAdvisories) && packageAdvisories.every((advisory) => typeof advisory === "object" && advisory !== null && !Array.isArray(advisory) && typeof advisory.vulnerable_versions === "string"));
}
function satisfiesSafe(version2, range) {
  try {
    return import_semver42.default.satisfies(version2, range, { includePrerelease: true, loose: true });
  } catch {
    return false;
  }
}
function normalizeAdvisory(adv, moduleName, findings) {
  const cwe = Array.isArray(adv.cwe) ? adv.cwe.join(", ") : adv.cwe;
  return {
    findings,
    id: adv.id,
    title: adv.title ?? "",
    module_name: moduleName,
    vulnerable_versions: adv.vulnerable_versions,
    patched_versions: inferPatchedVersions(adv.vulnerable_versions),
    severity: adv.severity,
    cwe: cwe ?? "",
    github_advisory_id: deriveGithubAdvisoryId(adv.url),
    url: adv.url ?? ""
  };
}
function inferPatchedVersions(vulnerableRange) {
  const trimmed = vulnerableRange.trim();
  const ltMatch = trimmed.match(/(?:^|\s)<\s*(\d+\.\d+\.\d[\w\-.+]*)\s*$/);
  if (ltMatch)
    return `>=${ltMatch[1]}`;
  const lteMatch = trimmed.match(/(?:^|\s)<=\s*(\d+\.\d+\.\d[\w\-.+]*)\s*$/);
  if (lteMatch) {
    const next2 = import_semver42.default.inc(lteMatch[1], "patch");
    if (next2)
      return `>=${next2}`;
  }
  return void 0;
}
function deriveGithubAdvisoryId(url7) {
  if (!url7)
    return "";
  const match = url7.match(/\/(GHSA-[\w-]+)/i);
  return match ? normalizeGhsaId(match[1]) : "";
}
function normalizeGhsaId(ghsaId) {
  const trimmed = ghsaId.trim();
  const dash = trimmed.indexOf("-");
  if (dash < 0)
    return trimmed.toUpperCase();
  return trimmed.slice(0, dash).toUpperCase() + trimmed.slice(dash).toLowerCase();
}
function getAuthHeaders(authHeaderValue) {
  const headers = {};
  if (authHeaderValue) {
    headers["authorization"] = authHeaderValue;
  }
  return headers;
}
var import_semver42, KNOWN_SEVERITIES, AuditEndpointNotExistsError;
var init_lib146 = __esm({
  "../deps/compliance/audit/lib/index.js"() {
    "use strict";
    init_lib2();
    init_lib125();
    init_lib49();
    import_semver42 = __toESM(require_semver2(), 1);
    init_lockfileToAuditIndex();
    init_lockfileToAuditIndex();
    init_types5();
    KNOWN_SEVERITIES = /* @__PURE__ */ new Set(["info", "low", "moderate", "high", "critical"]);
    AuditEndpointNotExistsError = class extends PnpmError {
      constructor(endpoint) {
        const message = `The audit endpoint (at ${endpoint}) doesn't exist.`;
        super("AUDIT_ENDPOINT_NOT_EXISTS", message, {
          hint: "This issue is probably because you are using a private npm registry and that endpoint doesn't have an implementation of audit."
        });
      }
    };
  }
});

// ../deps/compliance/commands/lib/audit/auditContext.js
async function loadAuditContext(opts2) {
  const lockfileDir = opts2.lockfileDir ?? opts2.dir;
  const lockfile = await readWantedLockfile(lockfileDir, { ignoreIncompatible: true });
  if (lockfile == null) {
    throw new PnpmError("AUDIT_NO_LOCKFILE", `No ${WANTED_LOCKFILE} found: Cannot audit a project without a lockfile`);
  }
  const envLockfile = await readEnvLockfile(opts2.workspaceDir ?? lockfileDir);
  return {
    envLockfile,
    include: {
      dependencies: opts2.production !== false,
      devDependencies: opts2.dev !== false,
      optionalDependencies: opts2.optional !== false
    },
    lockfile,
    lockfileDir
  };
}
function createAuditNetworkOptions(opts2) {
  return {
    ca: opts2.ca,
    cert: opts2.cert,
    configByUri: opts2.configByUri,
    fetchTimeout: opts2.fetchTimeout,
    httpProxy: opts2.httpProxy,
    httpsProxy: opts2.httpsProxy,
    key: opts2.key,
    localAddress: opts2.localAddress,
    maxSockets: opts2.maxSockets,
    noProxy: opts2.noProxy,
    retry: {
      factor: opts2.fetchRetryFactor,
      maxTimeout: opts2.fetchRetryMaxtimeout,
      minTimeout: opts2.fetchRetryMintimeout,
      retries: opts2.fetchRetries
    },
    strictSsl: opts2.strictSsl
  };
}
var init_auditContext = __esm({
  "../deps/compliance/commands/lib/audit/auditContext.js"() {
    "use strict";
    init_lib();
    init_lib2();
    init_lib78();
  }
});

// ../deps/compliance/commands/lib/audit/fix.js
async function fix(auditReport, opts2) {
  const fixableAdvisories = getFixableAdvisories(Object.values(auditReport.advisories), opts2.auditConfig?.ignoreGhsas);
  const vulnOverrides = createOverrides(fixableAdvisories);
  if (Object.values(vulnOverrides).length === 0)
    return { vulnOverrides, addedAgeExcludes: [] };
  const addedAgeExcludes = opts2.minimumReleaseAge ? createMinimumReleaseAgeExcludes(fixableAdvisories) : [];
  await writeSettings({
    updatedOverrides: vulnOverrides,
    addedMinimumReleaseAgeExcludes: addedAgeExcludes.length > 0 ? addedAgeExcludes : void 0,
    rootProjectManifest: opts2.rootProjectManifest,
    rootProjectManifestDir: opts2.rootProjectManifestDir,
    workspaceDir: opts2.workspaceDir ?? opts2.rootProjectManifestDir
  });
  return { vulnOverrides, addedAgeExcludes };
}
function getFixableAdvisories(advisories, ignoreGhsas) {
  if (ignoreGhsas) {
    const ignored = new Set(ignoreGhsas.map(normalizeGhsaId));
    advisories = advisories.filter(({ github_advisory_id: ghsaId }) => !ghsaId || !ignored.has(normalizeGhsaId(ghsaId)));
  }
  return advisories.filter(({ patched_versions: patchedVersions }) => patchedVersions != null);
}
function createOverrides(advisories) {
  const entries = [];
  for (const advisory of advisories) {
    if (!advisory.patched_versions)
      continue;
    entries.push([`${advisory.module_name}@${advisory.vulnerable_versions}`, caretRangeForPatched(advisory.patched_versions)]);
  }
  return sortDirectKeys(Object.fromEntries(entries));
}
function caretRangeForPatched(patchedRange) {
  const min = import_semver43.default.minVersion(patchedRange);
  return min ? `^${min.version}` : patchedRange;
}
function createMinimumReleaseAgeExcludes(advisories) {
  const excludes = /* @__PURE__ */ new Set();
  for (const advisory of advisories) {
    const patchedVersions = advisory.patched_versions;
    if (!patchedVersions)
      continue;
    const minVersion = import_semver43.default.minVersion(patchedVersions);
    if (minVersion) {
      excludes.add(`${advisory.module_name}@${minVersion.version}`);
    }
  }
  return Array.from(excludes);
}
var import_semver43;
var init_fix = __esm({
  "../deps/compliance/commands/lib/audit/fix.js"() {
    "use strict";
    init_lib100();
    init_lib146();
    init_lib76();
    import_semver43 = __toESM(require_semver2(), 1);
  }
});

// ../deps/compliance/commands/lib/audit/lockfileToPackages.js
function lockfileToPackages(lockfile, opts2) {
  const importerWalkers = lockfileWalkerGroupImporterSteps(lockfile, Object.keys(lockfile.importers), { include: opts2?.include });
  const packages = /* @__PURE__ */ new Map();
  for (const importerWalker of importerWalkers) {
    addPackages(packages, importerWalker.step);
  }
  return packages;
}
function addPackages(packages, step2) {
  for (const { depPath, pkgSnapshot, next: next2 } of step2.dependencies) {
    const { name, version: version2 } = nameVerFromPkgSnapshot(depPath, pkgSnapshot);
    if (version2 != null) {
      if (!packages.has(name)) {
        packages.set(name, /* @__PURE__ */ new Set());
      }
      packages.get(name).add(version2);
    }
    addPackages(packages, next2());
  }
}
var init_lockfileToPackages = __esm({
  "../deps/compliance/commands/lib/audit/lockfileToPackages.js"() {
    "use strict";
    init_lib70();
    init_lib88();
  }
});

// ../deps/compliance/commands/lib/audit/fixWithUpdate.js
async function fixWithUpdate(auditReport, opts2) {
  const vulnerabilitiesByPackage = /* @__PURE__ */ new Map();
  const unfixableVulnerabilities = /* @__PURE__ */ new Map();
  for (const advisory of Object.values(auditReport.advisories)) {
    let packageVulnerabilities = vulnerabilitiesByPackage.get(advisory.module_name);
    if (!packageVulnerabilities) {
      packageVulnerabilities = [];
      vulnerabilitiesByPackage.set(advisory.module_name, packageVulnerabilities);
    }
    const severity = advisory.severity;
    const versionRange = advisory.vulnerable_versions;
    if (versionRange === ">=0.0.0" || versionRange === "*") {
      let unfixableForPackage = unfixableVulnerabilities.get(advisory.module_name);
      if (!unfixableForPackage) {
        unfixableForPackage = /* @__PURE__ */ new Set();
        unfixableVulnerabilities.set(advisory.module_name, unfixableForPackage);
      }
      unfixableForPackage.add(advisory.id);
      continue;
    }
    packageVulnerabilities.push({
      vulnerability: {
        versionRange,
        severity
      },
      id: advisory.id
    });
  }
  const packageVulnerabilityAudit = {
    isVulnerable(packageName, version2) {
      const vulnerabilities = vulnerabilitiesByPackage.get(packageName);
      if (!vulnerabilities)
        return false;
      for (const vulnerabilityWithRange of vulnerabilities) {
        let { semverRange } = vulnerabilityWithRange;
        if (!semverRange) {
          semverRange = new import_semver44.default.Range(vulnerabilityWithRange.vulnerability.versionRange);
          vulnerabilityWithRange.semverRange = semverRange;
        }
        if (import_semver44.default.satisfies(version2, semverRange)) {
          return true;
        }
      }
      return false;
    },
    getVulnerabilities() {
      const allVulnerabilities = /* @__PURE__ */ new Map();
      for (const [pkgName, vulnerabilities] of vulnerabilitiesByPackage) {
        allVulnerabilities.set(pkgName, vulnerabilities.map((v) => v.vulnerability));
      }
      return allVulnerabilities;
    }
  };
  const addedAgeExcludes = opts2.minimumReleaseAge ? createMinimumReleaseAgeExcludes(Object.values(auditReport.advisories)) : [];
  const updateOpts = { ...opts2 };
  if (addedAgeExcludes.length > 0) {
    const existing = updateOpts.minimumReleaseAgeExclude ?? [];
    updateOpts.minimumReleaseAgeExclude = [...existing, ...addedAgeExcludes];
    await writeSettings({
      addedMinimumReleaseAgeExcludes: addedAgeExcludes,
      rootProjectManifest: opts2.rootProjectManifest,
      rootProjectManifestDir: opts2.rootProjectManifestDir,
      workspaceDir: opts2.workspaceDir ?? opts2.rootProjectManifestDir
    });
  }
  await update_exports.handler({
    ...updateOpts,
    packageVulnerabilityAudit
  }, []);
  const lockfileDir = opts2.lockfileDir ?? opts2.dir;
  const lockfile = await readWantedLockfile(lockfileDir, { ignoreIncompatible: true });
  if (lockfile == null) {
    throw new PnpmError("AUDIT_NO_LOCKFILE", `No ${WANTED_LOCKFILE} found after update: Cannot report fixed vulnerabilities`);
  }
  const updatedPackages = lockfileToPackages(lockfile, { include: opts2.include });
  const fixed = [];
  const remaining = [];
  for (const [pkgName, vulnerabilities] of vulnerabilitiesByPackage) {
    const updatedVersions = updatedPackages.get(pkgName);
    if (!updatedVersions) {
      fixed.push(...vulnerabilities.map((v) => v.id));
      continue;
    }
    for (const vulnerability of vulnerabilities) {
      let wasFixed = true;
      for (const updatedVersion of updatedVersions) {
        let { semverRange } = vulnerability;
        if (!semverRange) {
          semverRange = new import_semver44.default.Range(vulnerability.vulnerability.versionRange);
          vulnerability.semverRange = semverRange;
        }
        if (import_semver44.default.satisfies(updatedVersion, semverRange)) {
          wasFixed = false;
          break;
        }
      }
      if (wasFixed) {
        fixed.push(vulnerability.id);
      } else {
        remaining.push(vulnerability.id);
      }
    }
  }
  for (const [pkgName, unfixableIds] of unfixableVulnerabilities) {
    if (updatedPackages.has(pkgName)) {
      remaining.push(...unfixableIds);
    } else {
      fixed.push(...unfixableIds);
    }
  }
  return { fixed, remaining, addedAgeExcludes };
}
var import_semver44;
var init_fixWithUpdate = __esm({
  "../deps/compliance/commands/lib/audit/fixWithUpdate.js"() {
    "use strict";
    init_lib100();
    init_lib();
    init_lib2();
    init_lib138();
    init_lib78();
    import_semver44 = __toESM(require_semver2(), 1);
    init_fix();
    init_lockfileToPackages();
  }
});

// ../deps/compliance/commands/lib/audit/getAuditFixChoices.js
function getAuditFixChoices(advisories) {
  if (advisories.length === 0) {
    return [];
  }
  const fixable = advisories.filter(({ patched_versions: p }) => p != null);
  if (fixable.length === 0) {
    return [];
  }
  const deduped = dedupeByFixKey(fixable);
  const grouped = groupBy_default((a2) => a2.severity, deduped);
  const finalChoices = [];
  for (const severity of SEVERITY_ORDER) {
    const groupAdvisories = grouped[severity];
    if (!groupAdvisories?.length)
      continue;
    const rows = [
      { raw: COLUMN_HEADER, key: "", disabled: true }
    ];
    for (const advisory of groupAdvisories) {
      const key = `${advisory.module_name}@${advisory.vulnerable_versions}`;
      rows.push({
        raw: [
          advisory.module_name,
          advisory.vulnerable_versions,
          advisory.patched_versions ? caretRangeForPatched(advisory.patched_versions) : "",
          advisory.github_advisory_id ?? ""
        ],
        key
      });
    }
    const rendered = alignColumns2(rows.map((r) => r.raw));
    const choices = rows.map((row, i2) => {
      if (i2 === 0) {
        return {
          name: rendered[i2],
          value: "",
          disabled: true,
          hint: ""
        };
      }
      return {
        name: row.key,
        message: rendered[i2],
        value: row.key
      };
    });
    finalChoices.push({
      name: `[${severity}]`,
      choices,
      message: AUDIT_COLOR[severity](severity)
    });
  }
  return finalChoices;
}
function alignColumns2(rows) {
  return (0, import_table3.table)(rows, {
    border: (0, import_table3.getBorderCharacters)("void"),
    columnDefault: {
      paddingLeft: 0,
      paddingRight: 2
    },
    drawHorizontalLine: () => false
  }).split("\n").filter((line) => line.trim() !== "");
}
function dedupeByFixKey(advisories) {
  const byKey = /* @__PURE__ */ new Map();
  for (const advisory of advisories) {
    const key = `${advisory.module_name}@${advisory.vulnerable_versions}`;
    const existing = byKey.get(key);
    if (!existing) {
      byKey.set(key, advisory);
      continue;
    }
    const keepSeverity = SEVERITY_RANK[advisory.severity] > SEVERITY_RANK[existing.severity] ? advisory.severity : existing.severity;
    const mergedId = existing.github_advisory_id && advisory.github_advisory_id && existing.github_advisory_id !== advisory.github_advisory_id ? `${existing.github_advisory_id}, ${advisory.github_advisory_id}` : existing.github_advisory_id || advisory.github_advisory_id;
    byKey.set(key, {
      ...existing,
      severity: keepSeverity,
      github_advisory_id: mergedId
    });
  }
  return Array.from(byKey.values());
}
var import_table3, AUDIT_COLOR, SEVERITY_ORDER, SEVERITY_RANK, COLUMN_HEADER;
var init_getAuditFixChoices = __esm({
  "../deps/compliance/commands/lib/audit/getAuditFixChoices.js"() {
    "use strict";
    import_table3 = __toESM(require_src2(), 1);
    init_source2();
    init_es();
    init_fix();
    AUDIT_COLOR = {
      info: source_default.dim,
      low: source_default.bold,
      moderate: source_default.bold.yellow,
      high: source_default.bold.red,
      critical: source_default.bold.red
    };
    SEVERITY_ORDER = ["critical", "high", "moderate", "low", "info"];
    SEVERITY_RANK = {
      info: 0,
      low: 1,
      moderate: 2,
      high: 3,
      critical: 4
    };
    COLUMN_HEADER = ["Package", "Vulnerable", "Patched", "Advisories"];
  }
});

// ../deps/compliance/commands/lib/audit/ignore.js
async function ignore(opts2) {
  const currentGhsas = (opts2?.auditConfig?.ignoreGhsas ?? []).map(normalizeGhsaId);
  const currentUniqueGhsas = new Set(currentGhsas);
  const advisoriesWithNoResolutions = filterAdvisoriesWithNoResolutions(Object.values(opts2.auditReport.advisories));
  if (opts2.ignoreUnfixable) {
    for (const advisory of advisoriesWithNoResolutions) {
      if (!advisory.github_advisory_id) {
        throw new PnpmError("AUDIT_MISSING_GHSA", `Cannot ignore advisory ${advisory.id} (${advisory.module_name}): the registry did not provide a GHSA id or a resolvable url.`);
      }
      currentUniqueGhsas.add(normalizeGhsaId(advisory.github_advisory_id));
    }
  } else if (opts2.ignore) {
    for (const ghsa of opts2.ignore) {
      currentUniqueGhsas.add(normalizeGhsaId(ghsa));
    }
  }
  const newIgnoreGhsas = currentUniqueGhsas.size > 0 ? Array.from(currentUniqueGhsas) : void 0;
  const diffGhsas = difference_default(newIgnoreGhsas ?? [], currentGhsas);
  await writeSettings({
    ...opts2,
    updatedSettings: {
      auditConfig: {
        ...opts2.auditConfig,
        ignoreGhsas: newIgnoreGhsas
      }
    }
  });
  return [...diffGhsas];
}
function filterAdvisoriesWithNoResolutions(advisories) {
  return advisories.filter(({ patched_versions: patchedVersions }) => patchedVersions == null);
}
var init_ignore = __esm({
  "../deps/compliance/commands/lib/audit/ignore.js"() {
    "use strict";
    init_lib100();
    init_lib146();
    init_lib2();
    init_es();
  }
});

// ../deps/security/signatures/lib/verifySignatures.js
import crypto8 from "node:crypto";
import url5 from "node:url";
import util43 from "node:util";
async function verifySignatures(packages, getAuthHeader, opts2) {
  const registries = new Set(packages.map(({ registry }) => registry));
  const keysByRegistry = await getKeysByRegistry(registries, getAuthHeader, opts2);
  const result2 = {
    audited: 0,
    invalid: [],
    missing: [],
    verified: 0
  };
  const packumentCache = /* @__PURE__ */ new Map();
  const limit = pLimit(opts2.networkConcurrency ?? 16);
  await Promise.all(packages.map((pkg) => limit(async () => {
    const keys4 = keysByRegistry.get(pkg.registry) ?? [];
    if (keys4.length === 0)
      return;
    let version2;
    let publishedAt;
    try {
      const packument = await getPackument(pkg, getAuthHeader, opts2, packumentCache);
      if (!packument)
        return;
      result2.audited++;
      version2 = packument.versions?.[pkg.version];
      publishedAt = packument.time?.[pkg.version];
    } catch (err) {
      result2.invalid.push({ ...pkg, reason: util43.types.isNativeError(err) ? err.message : String(err) });
      return;
    }
    const integrity = version2?.dist?.integrity;
    const resolved = version2?.dist?.tarball;
    const rawSignatures = version2?.dist?.signatures;
    if (rawSignatures != null && !Array.isArray(rawSignatures)) {
      result2.invalid.push({ ...pkg, integrity, resolved, reason: `Malformed registry signatures metadata for ${pkg.name}@${pkg.version}` });
      return;
    }
    const signatures = rawSignatures ?? [];
    if (!signatures.every(isPackageSignature)) {
      result2.invalid.push({ ...pkg, integrity, resolved, reason: `Malformed registry signatures metadata for ${pkg.name}@${pkg.version}` });
      return;
    }
    if (!version2) {
      result2.invalid.push({ ...pkg, reason: `Missing registry metadata for ${pkg.name}@${pkg.version}` });
      return;
    }
    if (!integrity) {
      result2.missing.push({ ...pkg, resolved });
      return;
    }
    if (signatures.length === 0) {
      result2.missing.push({ ...pkg, integrity, resolved });
      return;
    }
    const issue = verifyPackageSignatures({ ...pkg, integrity, publishedAt, resolved, signatures }, keys4);
    if (issue) {
      result2.invalid.push(issue);
      return;
    }
    result2.verified++;
  })));
  result2.invalid.sort(sortIssue);
  result2.missing.sort(sortIssue);
  return result2;
}
async function getKeysByRegistry(registries, getAuthHeader, opts2) {
  const keysByRegistry = /* @__PURE__ */ new Map();
  await Promise.all(Array.from(registries, async (registry) => {
    const keys4 = await fetchRegistryKeys(registry, getAuthHeader, opts2);
    keysByRegistry.set(registry, keys4);
  }));
  return keysByRegistry;
}
async function fetchRegistryKeys(registry, getAuthHeader, opts2) {
  const registryUrl = registry.endsWith("/") ? registry : `${registry}/`;
  const keysUrl = new url5.URL("-/npm/v1/keys", registryUrl).toString();
  const fetchFromRegistry = createFetchFromRegistry(opts2);
  const response = await fetchFromRegistry(keysUrl, {
    authHeaderValue: getAuthHeader(registryUrl),
    method: "GET",
    retry: opts2.retry,
    timeout: opts2.timeout
  });
  if (response.status === 404 || response.status === 400) {
    return [];
  }
  if (response.status !== 200) {
    const code = "AUDIT_SIGNATURE_KEYS_FETCH_FAIL";
    const message = `The registry keys endpoint (at ${response.url}) responded with ${response.status}: ${await response.text()}`;
    throw new PnpmError(code, message);
  }
  const body = await parseJsonResponse(response, "AUDIT_SIGNATURE_KEYS_FETCH_FAIL", "The registry keys endpoint");
  if (!isRegistryKeysResponse(body)) {
    const code = "AUDIT_SIGNATURE_KEYS_FETCH_FAIL";
    const message = `The registry keys endpoint (at ${response.url}) returned an unexpected body. Expected an object with a keys array; got: ${JSON.stringify(body)?.slice(0, 500) ?? String(body)}`;
    throw new PnpmError(code, message);
  }
  return body.keys.filter(({ keytype, scheme }) => keytype === "ecdsa-sha2-nistp256" && scheme === "ecdsa-sha2-nistp256");
}
async function getPackument(pkg, getAuthHeader, opts2, packumentCache) {
  const cacheKey = `${pkg.registry}:${pkg.name}`;
  let packument = packumentCache.get(cacheKey);
  if (!packument) {
    packument = fetchPackument(pkg, getAuthHeader, opts2);
    packumentCache.set(cacheKey, packument);
  }
  return packument;
}
async function fetchPackument(pkg, getAuthHeader, opts2) {
  const registryUrl = pkg.registry.endsWith("/") ? pkg.registry : `${pkg.registry}/`;
  const packumentUrl = toUri2(pkg.name, registryUrl);
  const fetchFromRegistry = createFetchFromRegistry(opts2);
  const response = await fetchFromRegistry(packumentUrl, {
    authHeaderValue: getAuthHeader(registryUrl),
    fullMetadata: true,
    method: "GET",
    retry: opts2.retry,
    timeout: opts2.timeout
  });
  if (response.status === 404) {
    return void 0;
  }
  if (response.status !== 200) {
    const code = "AUDIT_SIGNATURE_PACKUMENT_FETCH_FAIL";
    const message = `The packument endpoint (at ${response.url}) responded with ${response.status}: ${await response.text()}`;
    throw new PnpmError(code, message);
  }
  const body = await parseJsonResponse(response, "AUDIT_SIGNATURE_PACKUMENT_FETCH_FAIL", "The packument endpoint");
  if (!isPackument(body)) {
    const code = "AUDIT_SIGNATURE_PACKUMENT_FETCH_FAIL";
    const message = `The packument endpoint (at ${response.url}) returned an unexpected body. Expected an object with versions; got: ${JSON.stringify(body)?.slice(0, 500) ?? String(body)}`;
    throw new PnpmError(code, message);
  }
  return body;
}
function verifyPackageSignatures(pkg, keys4) {
  const message = `${pkg.name}@${pkg.version}:${pkg.integrity}`;
  const publishedTime = pkg.publishedAt ? Date.parse(pkg.publishedAt) : void 0;
  for (const signature of pkg.signatures) {
    const key = keys4.find(({ keyid }) => keyid === signature.keyid);
    if (!key) {
      const reason = `${pkg.name}@${pkg.version} has a registry signature with keyid ${signature.keyid} but no corresponding public key can be found`;
      return toSignatureIssue(pkg, reason);
    }
    if (key.expires && publishedTime != null && publishedTime >= Date.parse(key.expires)) {
      const reason = `${pkg.name}@${pkg.version} has a registry signature with keyid ${signature.keyid} but the corresponding public key has expired ${key.expires}`;
      return toSignatureIssue(pkg, reason);
    }
    const verifier = crypto8.createVerify("SHA256");
    verifier.write(message);
    verifier.end();
    const pem = `-----BEGIN PUBLIC KEY-----
${key.key}
-----END PUBLIC KEY-----`;
    let verified;
    try {
      verified = verifier.verify(pem, signature.sig, "base64");
    } catch {
      verified = false;
    }
    if (!verified) {
      const reason = `${pkg.name}@${pkg.version} has an invalid registry signature with keyid ${signature.keyid}`;
      return toSignatureIssue(pkg, reason);
    }
  }
  return void 0;
}
function toSignatureIssue(pkg, reason) {
  return {
    integrity: pkg.integrity,
    name: pkg.name,
    reason,
    registry: pkg.registry,
    resolved: pkg.resolved,
    version: pkg.version
  };
}
async function parseJsonResponse(response, errorCode, endpointDescription) {
  const rawBody = await response.text();
  try {
    return JSON.parse(rawBody);
  } catch (err) {
    const reason = util43.types.isNativeError(err) ? err.message : String(err);
    throw new PnpmError(errorCode, `${endpointDescription} (at ${response.url}) returned invalid JSON: ${reason}. Response body: ${rawBody.slice(0, 500)}`);
  }
}
function toUri2(pkgName, registry) {
  let encodedName;
  if (pkgName[0] === "@") {
    encodedName = `@${encodeURIComponent(pkgName.slice(1))}`;
  } else {
    encodedName = encodeURIComponent(pkgName);
  }
  return new url5.URL(encodedName, registry.endsWith("/") ? registry : `${registry}/`).toString();
}
function isRegistryKeysResponse(body) {
  return typeof body === "object" && body != null && Array.isArray(body.keys) && body.keys.every((key) => typeof key === "object" && key != null && typeof key.keyid === "string" && typeof key.keytype === "string" && typeof key.scheme === "string" && typeof key.key === "string" && (key.expires == null || typeof key.expires === "string"));
}
function isPackument(body) {
  return typeof body === "object" && body != null && typeof body.versions === "object" && body.versions != null;
}
function isPackageSignature(signature) {
  return typeof signature === "object" && signature != null && typeof signature.keyid === "string" && typeof signature.sig === "string";
}
function sortIssue(a2, b) {
  return `${a2.name}@${a2.version}`.localeCompare(`${b.name}@${b.version}`);
}
var init_verifySignatures = __esm({
  "../deps/security/signatures/lib/verifySignatures.js"() {
    "use strict";
    init_lib2();
    init_lib49();
    init_p_limit();
  }
});

// ../deps/security/signatures/lib/index.js
var init_lib147 = __esm({
  "../deps/security/signatures/lib/index.js"() {
    "use strict";
    init_verifySignatures();
  }
});

// ../deps/compliance/commands/lib/audit/signatures.js
async function auditSignatures(opts2) {
  const { envLockfile, include, lockfile } = await loadAuditContext(opts2);
  const auditRequest = lockfileToAuditRequest(lockfile, { envLockfile, include });
  const packages = Object.entries(auditRequest.request).flatMap(([name, versions]) => versions.map((version2) => ({ name, registry: pickRegistryForPackage(opts2.registries, name), version: version2 })));
  if (packages.length === 0) {
    throw new PnpmError("AUDIT_NO_PACKAGES", "No installed packages found to audit");
  }
  const getAuthHeader = createGetAuthHeaderByURI(opts2.configByUri, opts2.registries?.default);
  const networkOptions = createAuditNetworkOptions(opts2);
  const result2 = await verifySignatures(packages, getAuthHeader, {
    ca: networkOptions.ca,
    cert: networkOptions.cert,
    configByUri: networkOptions.configByUri,
    httpProxy: networkOptions.httpProxy,
    httpsProxy: networkOptions.httpsProxy,
    key: networkOptions.key,
    localAddress: networkOptions.localAddress,
    maxSockets: networkOptions.maxSockets,
    networkConcurrency: opts2.networkConcurrency,
    noProxy: networkOptions.noProxy,
    retry: networkOptions.retry,
    strictSsl: networkOptions.strictSsl,
    timeout: networkOptions.fetchTimeout
  });
  return {
    exitCode: result2.invalid.length > 0 || result2.missing.length > 0 ? 1 : 0,
    output: opts2.json ? JSON.stringify(result2, null, 2) : renderSignatureVerificationResult(result2)
  };
}
function renderSignatureVerificationResult(result2) {
  const lines = [];
  lines.push(`audited ${result2.audited} package${result2.audited === 1 ? "" : "s"}`);
  lines.push("");
  if (result2.verified > 0) {
    lines.push(`${result2.verified} package${result2.verified === 1 ? " has a" : "s have"} ${source_default.bold("verified")} registry signature${result2.verified === 1 ? "" : "s"}`);
    lines.push("");
  }
  if (result2.missing.length > 0) {
    lines.push(`${result2.missing.length} package${result2.missing.length === 1 ? " is" : "s are"} ${source_default.redBright("missing")} registry signature${result2.missing.length === 1 ? "" : "s"} but the registry is providing signing keys:`);
    lines.push("");
    lines.push((0, import_table4.table)(result2.missing.map(({ name, registry, version: version2 }) => [source_default.red(`${name}@${version2}`), registry]), TABLE_OPTIONS));
    lines.push("");
  }
  if (result2.invalid.length > 0) {
    lines.push(`${result2.invalid.length} package${result2.invalid.length === 1 ? " has an" : "s have"} ${source_default.redBright("invalid")} registry signature${result2.invalid.length === 1 ? "" : "s"}:`);
    lines.push("");
    lines.push((0, import_table4.table)(result2.invalid.map(({ name, reason, registry, version: version2 }) => [source_default.red(`${name}@${version2}`), registry, reason ?? "Invalid registry signature"]), TABLE_OPTIONS));
    lines.push("");
    lines.push(result2.invalid.length === 1 ? "Someone might have tampered with this package since it was published on the registry!" : "Someone might have tampered with these packages since they were published on the registry!");
    lines.push("");
  }
  if (result2.audited === 0 && result2.invalid.length === 0 && result2.missing.length === 0 && result2.verified === 0) {
    lines.push("No dependencies were installed from a registry with signing keys");
    lines.push("");
  }
  return lines.join("\n");
}
var import_table4;
var init_signatures = __esm({
  "../deps/compliance/commands/lib/audit/signatures.js"() {
    "use strict";
    init_lib29();
    init_lib15();
    init_lib146();
    init_lib147();
    init_lib2();
    init_lib48();
    import_table4 = __toESM(require_src2(), 1);
    init_source2();
    init_auditContext();
  }
});

// ../deps/compliance/commands/lib/audit/audit.js
var audit_exports = {};
__export(audit_exports, {
  cliOptionsTypes: () => cliOptionsTypes20,
  commandNames: () => commandNames21,
  formatFixWithUpdateOutput: () => formatFixWithUpdateOutput,
  handler: () => handler21,
  help: () => help21,
  rcOptionsTypes: () => rcOptionsTypes21,
  recursiveByDefault: () => recursiveByDefault5,
  shorthands: () => shorthands5
});
function rcOptionsTypes21() {
  return {
    ...update_exports.rcOptionsTypes(),
    ...pick_default([
      "dev",
      "json",
      "only",
      "optional",
      "production",
      "registry"
    ], types2),
    "audit-level": ["info", "low", "moderate", "high", "critical"],
    // For fix, use String instead of a list of allowed string values.
    // Otherwise, an unexpected value will get coerced to true because of the Boolean type.
    fix: [String, Boolean],
    "ignore-registry-errors": Boolean,
    ignore: [String, Array],
    "ignore-unfixable": Boolean
  };
}
function cliOptionsTypes20() {
  return {
    ...pick_default([
      "recursive",
      "workspace"
    ], update_exports.cliOptionsTypes()),
    ...rcOptionsTypes21(),
    interactive: Boolean
  };
}
function help21() {
  return renderHelp({
    description: "Checks for known security issues with the installed packages.",
    descriptionLists: [
      {
        title: "Commands",
        list: [
          {
            description: "Verify ECDSA registry signatures for installed packages from registries that provide signing keys at /-/npm/v1/keys.",
            name: "signatures"
          }
        ]
      },
      {
        title: "Options",
        list: [
          {
            description: 'Fix the audited vulnerabilities using the specified method: "override" or "update". "override" adds overrides to the package.json file in order to force non-vulnerable versions of the dependencies. "update" attempts to update the vulnerable packages in the lockfile to non-vulnerable versions. If no method is specified, "override" is used by default.',
            name: "--fix [method]"
          },
          {
            description: "Output audit report in JSON format",
            name: "--json"
          },
          {
            description: "Only print advisories with severity greater than or equal to one of the following: info|low|moderate|high|critical. Default: low",
            name: "--audit-level <severity>"
          },
          {
            description: 'Only audit "devDependencies"',
            name: "--dev",
            shortAlias: "-D"
          },
          {
            description: 'Only audit "dependencies" and "optionalDependencies"',
            name: "--prod",
            shortAlias: "-P"
          },
          {
            description: `Don't audit "optionalDependencies"`,
            name: "--no-optional"
          },
          {
            description: "Use exit code 0 if the registry responds with an error. Useful when audit checks are used in CI. A build should not fail because the registry has issues.",
            name: "--ignore-registry-errors"
          },
          {
            description: "Ignore a vulnerability by its GitHub advisory ID (e.g. GHSA-xxxx-xxxx-xxxx)",
            name: "--ignore <vulnerability>"
          },
          {
            description: "Ignore all vulnerabilities for which no fix exists",
            name: "--ignore-unfixable"
          },
          {
            description: "Show vulnerabilities and select which ones to fix interactively",
            name: "--interactive",
            shortAlias: "-i"
          }
        ]
      }
    ],
    url: docsUrl("audit"),
    usages: ["pnpm audit [options]", "pnpm audit signatures [options]"]
  });
}
async function handler21(opts2, params = []) {
  if (params.length > 0) {
    if (params[0] === "signatures") {
      if (params.length > 1) {
        throw new PnpmError("AUDIT_UNKNOWN_SUBCOMMAND", `Unknown audit subcommand: ${params.slice(0, 2).join(" ")}`);
      }
      return auditSignatures(opts2);
    }
    throw new PnpmError("AUDIT_UNKNOWN_SUBCOMMAND", `Unknown audit subcommand: ${params[0]}`);
  }
  const { envLockfile, include, lockfile } = await loadAuditContext(opts2);
  const networkOptions = createAuditNetworkOptions(opts2);
  let auditReport;
  const getAuthHeader = createGetAuthHeaderByURI(opts2.configByUri, opts2.registries?.default);
  try {
    auditReport = await audit(lockfile, getAuthHeader, {
      dispatcherOptions: {
        ca: networkOptions.ca,
        cert: networkOptions.cert,
        httpProxy: networkOptions.httpProxy,
        httpsProxy: networkOptions.httpsProxy,
        key: networkOptions.key,
        localAddress: networkOptions.localAddress,
        maxSockets: networkOptions.maxSockets,
        noProxy: networkOptions.noProxy,
        strictSsl: networkOptions.strictSsl,
        timeout: networkOptions.fetchTimeout
      },
      envLockfile,
      include,
      registry: opts2.registries.default,
      retry: networkOptions.retry,
      timeout: networkOptions.fetchTimeout
    });
  } catch (err) {
    if (opts2.ignoreRegistryErrors) {
      return {
        exitCode: 0,
        output: err.message
      };
    }
    throw err;
  }
  let fixMethod;
  if (opts2.fix === "update" || opts2.fix === "override") {
    fixMethod = opts2.fix;
  } else if (opts2.fix === true || opts2.interactive && !opts2.fix) {
    fixMethod = DEFAULT_FIX_METHOD;
  } else if (!opts2.fix) {
    fixMethod = void 0;
  } else {
    throw new PnpmError("INVALID_FIX_OPTION", `Invalid value for --fix: ${opts2.fix}. Should be one of "override" or "update"`);
  }
  if (fixMethod != null) {
    let filteredAuditReport = {
      ...auditReport,
      advisories: filterAdvisoriesForFix(auditReport.advisories, opts2)
    };
    if (opts2.interactive) {
      filteredAuditReport = await interactiveAuditFix(filteredAuditReport);
    }
    if (fixMethod === "update") {
      const result2 = await fixWithUpdate(filteredAuditReport, { ...opts2, include });
      let output3 = formatFixWithUpdateOutput(result2, filteredAuditReport);
      if (result2.addedAgeExcludes.length > 0) {
        output3 += `
${result2.addedAgeExcludes.length} entries were added to minimumReleaseAgeExclude to allow installing the patched versions:
${result2.addedAgeExcludes.join("\n")}
`;
      }
      return {
        exitCode: result2.remaining.length > 0 ? 1 : 0,
        output: output3
      };
    }
    const { vulnOverrides, addedAgeExcludes } = await fix(filteredAuditReport, opts2);
    if (Object.values(vulnOverrides).length === 0) {
      return {
        exitCode: 0,
        output: "No fixes were made"
      };
    }
    let output2 = `${Object.values(vulnOverrides).length} overrides were added to pnpm-workspace.yaml to fix vulnerabilities.
Run "pnpm install" to apply the fixes.

The added overrides:
${JSON.stringify(vulnOverrides, null, 2)}`;
    if (addedAgeExcludes.length > 0) {
      output2 += `

${addedAgeExcludes.length} entries were added to minimumReleaseAgeExclude to allow installing the patched versions:
${addedAgeExcludes.join("\n")}`;
    }
    return {
      exitCode: 0,
      output: output2
    };
  }
  if (opts2.ignore !== void 0 || opts2.ignoreUnfixable) {
    const newIgnores = await ignore({
      auditConfig: opts2.auditConfig,
      auditReport,
      ignore: opts2.ignore,
      ignoreUnfixable: opts2.ignoreUnfixable === true,
      dir: opts2.dir,
      rootProjectManifest: opts2.rootProjectManifest,
      rootProjectManifestDir: opts2.rootProjectManifestDir,
      workspaceDir: opts2.workspaceDir ?? opts2.rootProjectManifestDir
    });
    if (newIgnores.length === 0) {
      return {
        exitCode: 0,
        output: "No new vulnerabilities were ignored"
      };
    }
    return {
      exitCode: 0,
      output: `${newIgnores.length} new vulnerabilities were ignored:
${newIgnores.join("\n")}`
    };
  }
  const vulnerabilities = auditReport.metadata.vulnerabilities;
  const ignoredVulnerabilities = {
    info: 0,
    low: 0,
    moderate: 0,
    high: 0,
    critical: 0
  };
  const totalVulnerabilityCount = Object.values(vulnerabilities).reduce((sum, vulnerabilitiesCount) => sum + vulnerabilitiesCount, 0);
  const ignoreGhsas = opts2.auditConfig?.ignoreGhsas;
  if (ignoreGhsas?.length) {
    const ignoreSet = new Set(ignoreGhsas.map(normalizeGhsaId));
    auditReport.advisories = pickBy_default(({ github_advisory_id: githubAdvisoryId, severity }) => {
      if (!ignoreSet.has(normalizeGhsaId(githubAdvisoryId))) {
        return true;
      }
      ignoredVulnerabilities[severity] += 1;
      return false;
    }, auditReport.advisories);
  }
  const auditLevel = AUDIT_LEVEL_NUMBER[opts2.auditLevel ?? "low"];
  const advisoryEntries = Object.entries(auditReport.advisories).filter(([, { severity }]) => AUDIT_LEVEL_NUMBER[severity] >= auditLevel);
  if (opts2.json) {
    const advisories = Object.fromEntries(advisoryEntries);
    return {
      exitCode: Object.keys(advisories).length > 0 ? 1 : 0,
      output: JSON.stringify({ ...auditReport, advisories }, null, 2)
    };
  }
  let output = "";
  advisoryEntries.sort(([, a1], [, a2]) => AUDIT_LEVEL_NUMBER[a2.severity] - AUDIT_LEVEL_NUMBER[a1.severity]);
  for (const [, advisory] of advisoryEntries) {
    const paths3 = advisory.findings.map(({ paths: paths4 }) => paths4).flat();
    output += (0, import_table5.table)([
      [AUDIT_COLOR2[advisory.severity](advisory.severity), source_default.bold(advisory.title)],
      ["Package", advisory.module_name],
      ["Vulnerable versions", advisory.vulnerable_versions],
      ["Patched versions", advisory.patched_versions ?? "(unknown)"],
      [
        "Paths",
        (paths3.length > MAX_PATHS_COUNT ? paths3.slice(0, MAX_PATHS_COUNT).concat([
          `... Found ${paths3.length} paths, run \`pnpm why ${advisory.module_name}\` for more information`
        ]) : paths3).join("\n\n")
      ],
      ["More info", advisory.url]
    ], AUDIT_TABLE_OPTIONS);
  }
  return {
    exitCode: output ? 1 : 0,
    output: `${output}${reportSummary(auditReport.metadata.vulnerabilities, totalVulnerabilityCount, ignoredVulnerabilities)}`
  };
}
function reportSummary(vulnerabilities, totalVulnerabilityCount, ignoredVulnerabilities) {
  if (totalVulnerabilityCount === 0)
    return "No known vulnerabilities found\n";
  return `${source_default.red(totalVulnerabilityCount)} vulnerabilities found
Severity: ${Object.entries(vulnerabilities).filter(([_auditLevel, vulnerabilitiesCount]) => vulnerabilitiesCount > 0).map(([auditLevel, vulnerabilitiesCount]) => AUDIT_COLOR2[auditLevel](`${vulnerabilitiesCount} ${auditLevel}${ignoredVulnerabilities[auditLevel] > 0 ? ` (${ignoredVulnerabilities[auditLevel]} ignored)` : ""}`)).join(" | ")}`;
}
function formatFixWithUpdateOutput(result2, auditReport) {
  const output = [];
  function sortBySeverity(ids) {
    return ids.map((id) => ({ id, advisory: auditReport.advisories[id] })).sort((a2, b) => {
      const aValue = a2.advisory ? AUDIT_LEVEL_NUMBER[a2.advisory.severity] : -1;
      const bValue = b.advisory ? AUDIT_LEVEL_NUMBER[b.advisory.severity] : -1;
      return bValue - aValue;
    });
  }
  const fixed = sortBySeverity(result2.fixed);
  const remaining = sortBySeverity(result2.remaining);
  const fixedString = fixed.length === 1 ? "vulnerability was fixed" : "vulnerabilities were fixed";
  const remainingString = remaining.length === 1 ? "vulnerability remains" : "vulnerabilities remain";
  output.push(`${source_default.green(fixed.length)} ${fixedString}, ${source_default.red(remaining.length)} ${remainingString}.`);
  function summarizeAdvisory(fixed2, { id, advisory }) {
    if (advisory) {
      const color = fixed2 ? source_default.green : AUDIT_COLOR2[advisory.severity];
      return `- (${color(advisory.severity)}) "${color(advisory.title)}" ${source_default.blue(advisory.module_name)}`;
    }
    return `- Advisory with ID ${id} (details not found in the audit report)`;
  }
  if (fixed.length > 0) {
    output.push("\nThe fixed vulnerabilities are:");
    for (const f of fixed) {
      output.push(summarizeAdvisory(true, f));
    }
  }
  if (remaining.length > 0) {
    output.push("\nThe remaining vulnerabilities are:");
    for (const r of remaining) {
      output.push(summarizeAdvisory(false, r));
    }
  }
  output.push("");
  return output.join("\n");
}
function filterAdvisoriesForFix(advisories, opts2) {
  const auditLevel = AUDIT_LEVEL_NUMBER[opts2.auditLevel ?? "low"];
  const ignoreGhsas = opts2.auditConfig?.ignoreGhsas;
  const ignoreGhsaSet = ignoreGhsas?.length ? new Set(ignoreGhsas.map(normalizeGhsaId)) : void 0;
  return Object.fromEntries(Object.entries(advisories).filter(([, { severity, github_advisory_id: ghsaId }]) => {
    if (AUDIT_LEVEL_NUMBER[severity] < auditLevel)
      return false;
    if (ignoreGhsaSet && ghsaId && ignoreGhsaSet.has(normalizeGhsaId(ghsaId)))
      return false;
    return true;
  }));
}
async function interactiveAuditFix(auditReport) {
  const choices = getAuditFixChoices(Object.values(auditReport.advisories));
  if (choices.length === 0) {
    return auditReport;
  }
  const { selectedVulnerabilities } = await import_enquirer6.default.prompt({
    choices,
    footer: "\nEnter to start fixing. Ctrl-c to cancel.",
    indicator(state, choice) {
      return ` ${choice.enabled ? "\u25CF" : "\u25CB"}`;
    },
    message: `Choose which vulnerabilities to fix (Press ${source_default.cyan("<space>")} to select, ${source_default.cyan("<a>")} to toggle all, ${source_default.cyan("<i>")} to invert selection)`,
    name: "selectedVulnerabilities",
    pointer: "\u276F",
    result() {
      return this.selected;
    },
    format() {
      if (!this.state.submitted || this.state.cancelled)
        return "";
      if (Array.isArray(this.selected)) {
        return this.selected.filter((choice) => !/^\[.+\]$/.test(choice.name)).map((choice) => this.styles.primary(choice.name)).join(", ");
      }
      return this.styles.primary(this.selected.name);
    },
    styles: {
      dark: source_default.reset,
      em: source_default.bgBlack.whiteBright,
      success: source_default.reset
    },
    type: "multiselect",
    validate(value) {
      if (value.length === 0) {
        return "You must choose at least one vulnerability.";
      }
      return true;
    },
    j() {
      return this.down();
    },
    k() {
      return this.up();
    },
    cancel() {
      globalInfo("Audit fix canceled");
      process.exit(0);
    }
  });
  const selectedKeys = new Set(selectedVulnerabilities.map((c3) => c3.value));
  const selectedAdvisories = Object.fromEntries(Object.entries(auditReport.advisories).filter(([, advisory]) => selectedKeys.has(`${advisory.module_name}@${advisory.vulnerable_versions}`)));
  return { ...auditReport, advisories: selectedAdvisories };
}
var import_table5, import_enquirer6, AUDIT_LEVEL_NUMBER, AUDIT_COLOR2, AUDIT_TABLE_OPTIONS, MAX_PATHS_COUNT, shorthands5, commandNames21, recursiveByDefault5, DEFAULT_FIX_METHOD;
var init_audit = __esm({
  "../deps/compliance/commands/lib/audit/audit.js"() {
    "use strict";
    init_lib29();
    init_lib61();
    init_lib146();
    init_lib2();
    init_lib138();
    init_lib3();
    init_lib48();
    import_table5 = __toESM(require_src2(), 1);
    init_source2();
    import_enquirer6 = __toESM(require_enquirer(), 1);
    init_es();
    init_lib63();
    init_auditContext();
    init_fix();
    init_fixWithUpdate();
    init_getAuditFixChoices();
    init_ignore();
    init_signatures();
    AUDIT_LEVEL_NUMBER = {
      info: 0,
      low: 1,
      moderate: 2,
      high: 3,
      critical: 4
    };
    AUDIT_COLOR2 = {
      info: source_default.dim,
      low: source_default.bold,
      moderate: source_default.bold.yellow,
      high: source_default.bold.red,
      critical: source_default.bold.red
    };
    AUDIT_TABLE_OPTIONS = {
      ...TABLE_OPTIONS,
      columns: {
        1: {
          width: 54,
          // = table width of 80
          wrapWord: true
        }
      }
    };
    MAX_PATHS_COUNT = 3;
    shorthands5 = {
      D: "--dev",
      P: "--production"
    };
    commandNames21 = ["audit"];
    recursiveByDefault5 = true;
    DEFAULT_FIX_METHOD = "override";
  }
});

// ../deps/compliance/commands/lib/audit/index.js
var init_audit2 = __esm({
  "../deps/compliance/commands/lib/audit/index.js"() {
    "use strict";
    init_audit();
  }
});

// ../deps/compliance/license-resolver/lib/parseLicenseFromManifest.js
function parseLicenseFromManifest(manifest) {
  return parseLicenseField(manifest.license) ?? parseLicenseField(manifest.licenses);
}
function parseLicenseField(field) {
  if (typeof field === "string")
    return field || void 0;
  if (Array.isArray(field)) {
    const types3 = field.map(extractLicenseType).filter((t2) => !!t2);
    if (types3.length === 0)
      return void 0;
    if (types3.length === 1)
      return types3[0];
    return `(${types3.join(" OR ")})`;
  }
  if (field && typeof field === "object") {
    return extractLicenseType(field);
  }
  return void 0;
}
function extractLicenseType(entry) {
  if (typeof entry === "string")
    return entry || void 0;
  if (!entry || typeof entry !== "object")
    return void 0;
  const { type: type4, name } = entry;
  if (typeof type4 === "string" && type4)
    return type4;
  if (typeof name === "string" && name)
    return name;
  return void 0;
}
var init_parseLicenseFromManifest = __esm({
  "../deps/compliance/license-resolver/lib/parseLicenseFromManifest.js"() {
    "use strict";
  }
});

// ../deps/compliance/license-resolver/lib/index.js
import { access, readFile as readFile2 } from "node:fs/promises";
import path162 from "node:path";
function isSpdxLicenseExpression(value) {
  if (!value)
    return false;
  return value.replace(/^\(|\)$/g, "").split(/\s+OR\s+/i).every((id) => SPDX_LICENSE_IDS.has(id.trim()));
}
async function resolveLicense({ manifest, files }) {
  const manifestLicense = parseLicenseFromManifest(manifest);
  if (manifestLicense && !/see license/i.test(manifestLicense)) {
    return { name: manifestLicense };
  }
  const licenseFileName = LICENSE_FILES.find((f) => files.has(f));
  if (licenseFileName) {
    const licenseFilePath = files.get(licenseFileName);
    const licenseContent = (await readFile2(licenseFilePath)).toString("utf-8");
    const name = detectLicenseFromText(licenseContent) ?? "Unknown";
    return { name, licenseFile: licenseContent };
  }
  return manifestLicense ? { name: manifestLicense } : void 0;
}
async function resolveLicenseFromDir({ manifest, dir }) {
  const files = /* @__PURE__ */ new Map();
  await Promise.all(LICENSE_FILES.map(async (name) => {
    const filePath = path162.join(dir, name);
    try {
      await access(filePath);
      files.set(name, filePath);
    } catch {
    }
  }));
  return resolveLicense({ manifest, files });
}
function detectLicenseFromText(content) {
  if (!content)
    return void 0;
  const match = content.match(LICENSE_NAME_PATTERN);
  if (!match)
    return void 0;
  return [...new Set(match)].join(" OR ");
}
function escapeRegExp2(value) {
  return value.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
}
var LICENSE_FILES, SPDX_LICENSE_IDS, LICENSE_NAMES, LICENSE_NAME_PATTERN;
var init_lib148 = __esm({
  "../deps/compliance/license-resolver/lib/index.js"() {
    "use strict";
    init_parseLicenseFromManifest();
    init_parseLicenseFromManifest();
    LICENSE_FILES = [
      "LICENSE",
      "LICENCE",
      "LICENSE.md",
      "LICENCE.md",
      "LICENSE.txt",
      "LICENCE.txt",
      "MIT-LICENSE.txt",
      "MIT-LICENSE.md",
      "MIT-LICENSE"
    ];
    SPDX_LICENSE_IDS = /* @__PURE__ */ new Set([
      "Apache-1.1",
      "Apache-2.0",
      "BSD-4-Clause",
      "BSD-3-Clause",
      "BSD-2-Clause",
      "0BSD",
      "CC0-1.0",
      "CDDL-1.0",
      "EPL-1.0",
      "GPL-2.0-only",
      "GPL-3.0-only",
      "ISC",
      "LGPL-3.0-only",
      "LGPL-2.1-only",
      "MIT",
      "MPL-1.1",
      "MPL-2.0",
      "OFL-1.1",
      "PSF-2.0",
      "WTFPL",
      "Zlib"
    ]);
    LICENSE_NAMES = [
      "Apache1_1",
      "Apache-1.1",
      "Apache 1.1",
      "Apache2",
      "Apache-2.0",
      "Apache 2.0",
      "BSD",
      "BSD-4-Clause",
      "CC01",
      "CC0-1.0",
      "CC0 1.0",
      "CDDL1",
      "CDDL-1.0",
      "Common Development and Distribution License 1.0",
      "EPL1",
      "EPL-1.0",
      "Eclipse Public License 1.0",
      "GPLv2",
      "GPL-2.0-only",
      "GPLv3",
      "GPL-3.0-only",
      "ISC",
      "LGPL",
      "LGPL-3.0-only",
      "LGPL2_1",
      "LGPL-2.1-only",
      "MIT",
      "MPL1_1",
      "MPL-1.1",
      "Mozilla Public License 1.1",
      "MPL2",
      "MPL-2.0",
      "Mozilla Public License 2.0",
      "NewBSD",
      "BSD-3-Clause",
      "New BSD",
      "OFL",
      "OFL-1.1",
      "SIL OPEN FONT LICENSE Version 1.1",
      "Python",
      "PSF-2.0",
      "Python Software Foundation License",
      "Ruby",
      "SimplifiedBSD",
      "BSD-2-Clause",
      "Simplified BSD",
      "WTFPL",
      "0BSD",
      "BSD Zero Clause License",
      "Zlib",
      "zlib/libpng license"
    ];
    LICENSE_NAME_PATTERN = new RegExp(`\\b(${LICENSE_NAMES.map(escapeRegExp2).join("|")})\\b`, "gi");
  }
});

// ../store/pkg-finder/lib/index.js
import path163 from "node:path";
async function readPackageFileMap(packageResolution, packageId, opts2) {
  if (packageResolution.type === "directory") {
    const localInfo = await fetchFromDir(path163.join(opts2.lockfileDir, packageResolution.directory), {});
    return localInfo.filesMap;
  }
  let pkgIndexFilePath;
  if (!packageResolution.type && "tarball" in packageResolution && packageResolution.tarball || packageResolution.type === "git") {
    pkgIndexFilePath = pickStoreIndexKey(packageResolution, packageId, { built: true });
  } else {
    return void 0;
  }
  const pkgFilesIndex = opts2.storeIndex.get(pkgIndexFilePath);
  if (!pkgFilesIndex) {
    const err = new Error(`ENOENT: package index not found for '${pkgIndexFilePath}'`);
    err.code = "ENOENT";
    err.path = pkgIndexFilePath;
    throw err;
  }
  const { files: indexFiles } = pkgFilesIndex;
  const files = /* @__PURE__ */ new Map();
  for (const [name, info] of indexFiles) {
    files.set(name, getFilePathByModeInCafs(opts2.storeDir, info.digest, info.mode));
  }
  return files;
}
var init_lib149 = __esm({
  "../store/pkg-finder/lib/index.js"() {
    "use strict";
    init_lib38();
    init_lib81();
    init_lib16();
  }
});

// ../deps/compliance/license-scanner/lib/getPkgInfo.js
import path164 from "node:path";
async function getPkgInfo3(pkg, opts2) {
  const packageResolution = pkgSnapshotToResolution(pkg.depPath, pkg.snapshot, pkg.registries);
  let files;
  try {
    const result2 = await readPackageFileMap(packageResolution, pkg.id, {
      storeDir: opts2.storeDir,
      storeIndex: opts2.storeIndex,
      lockfileDir: opts2.dir,
      virtualStoreDirMaxLength: opts2.virtualStoreDirMaxLength
    });
    if (!result2) {
      throw new PnpmError("UNSUPPORTED_PACKAGE_TYPE", `Unsupported package resolution type for ${pkg.id}`);
    }
    files = result2;
  } catch (err) {
    if (err.code === "ENOENT") {
      throw new PnpmError("MISSING_PACKAGE_INDEX_FILE", `Failed to find package index file for ${pkg.id} (at ${err.path}), please consider running 'pnpm install'`);
    }
    throw err;
  }
  const manifestPath = files.get("package.json");
  if (!manifestPath) {
    throw new PnpmError("MISSING_PACKAGE_INDEX_FILE", `Failed to find package.json in index for ${pkg.id}, please consider running 'pnpm install'`);
  }
  const manifest = await readPackageJson2(manifestPath);
  const modulesDir = opts2.modulesDir ?? "node_modules";
  const virtualStoreDir = pathAbsolute(opts2.virtualStoreDir ?? path164.join(modulesDir, ".pnpm"), opts2.dir);
  const packageModulePath = path164.join(virtualStoreDir, depPathToFilename(pkg.depPath, opts2.virtualStoreDirMaxLength), modulesDir, manifest.name);
  const licenseInfo = await resolveLicense({ manifest, files });
  const packageInfo = {
    from: manifest.name,
    path: packageModulePath,
    name: manifest.name,
    version: manifest.version,
    description: manifest.description,
    license: licenseInfo?.name ?? "Unknown",
    licenseContents: licenseInfo?.licenseFile,
    author: (manifest.author && (typeof manifest.author === "string" ? manifest.author : manifest.author.name)) ?? void 0,
    homepage: manifest.homepage,
    repository: (manifest.repository && (typeof manifest.repository === "string" ? manifest.repository : manifest.repository.url)) ?? void 0
  };
  return packageInfo;
}
var limitPkgReads2;
var init_getPkgInfo3 = __esm({
  "../deps/compliance/license-scanner/lib/getPkgInfo.js"() {
    "use strict";
    init_lib148();
    init_lib65();
    init_lib2();
    init_lib70();
    init_lib39();
    init_lib149();
    init_p_limit();
    init_path_absolute();
    limitPkgReads2 = pLimit(4);
  }
});

// ../deps/compliance/license-scanner/lib/lockfileToLicenseNodeTree.js
async function lockfileToLicenseNode(step2, options) {
  const dependencies = Object.fromEntries((await Promise.all(step2.dependencies.map(async (dependency) => {
    const { depPath, pkgSnapshot, next: next2 } = dependency;
    const { name, version: version2 } = nameVerFromPkgSnapshot(depPath, pkgSnapshot);
    const packageInstallable = packageIsInstallable(pkgSnapshot.id ?? depPath, {
      name,
      version: version2,
      cpu: pkgSnapshot.cpu,
      os: pkgSnapshot.os,
      libc: pkgSnapshot.libc
    }, {
      optional: pkgSnapshot.optional ?? false,
      lockfileDir: options.dir,
      supportedArchitectures: options.supportedArchitectures
    });
    if (!packageInstallable) {
      return null;
    }
    const packageInfo = await getPkgInfo3({
      id: packageIdFromSnapshot(depPath, pkgSnapshot),
      name,
      version: version2,
      depPath,
      snapshot: pkgSnapshot,
      registries: options.registries
    }, {
      storeDir: options.storeDir,
      storeIndex: options.storeIndex,
      virtualStoreDir: options.virtualStoreDir,
      virtualStoreDirMaxLength: options.virtualStoreDirMaxLength,
      dir: options.dir,
      modulesDir: options.modulesDir ?? "node_modules"
    });
    const subdeps = await lockfileToLicenseNode(next2(), options);
    const dep = {
      name,
      dev: options.depTypes[depPath] === DepType.DevOnly,
      integrity: pkgSnapshot.resolution.integrity,
      version: version2,
      license: packageInfo.license,
      licenseContents: packageInfo.licenseContents,
      author: packageInfo.author,
      homepage: packageInfo.homepage,
      description: packageInfo.description,
      repository: packageInfo.repository,
      dir: packageInfo.path
    };
    if (Object.keys(subdeps).length > 0) {
      dep.dependencies = subdeps;
      dep.requires = toRequires(subdeps);
    }
    return [name, dep];
  }))).filter(Boolean));
  return dependencies;
}
async function lockfileToLicenseNodeTree(lockfile, opts2) {
  const importerWalkers = lockfileWalkerGroupImporterSteps(lockfile, opts2.includedImporterIds ?? Object.keys(lockfile.importers), { include: opts2?.include });
  const depTypes = detectDepTypes(lockfile);
  const storeIndex = new StoreIndex(opts2.storeDir);
  const dependencies = Object.fromEntries(await Promise.all(importerWalkers.map(async (importerWalker) => {
    const importerDeps = await lockfileToLicenseNode(importerWalker.step, {
      storeDir: opts2.storeDir,
      storeIndex,
      virtualStoreDir: opts2.virtualStoreDir,
      virtualStoreDirMaxLength: opts2.virtualStoreDirMaxLength,
      modulesDir: opts2.modulesDir,
      dir: opts2.dir,
      registries: opts2.registries,
      supportedArchitectures: opts2.supportedArchitectures,
      depTypes
    });
    return [importerWalker.importerId, {
      dependencies: importerDeps,
      requires: toRequires(importerDeps),
      version: "0.0.0",
      license: void 0
    }];
  })));
  storeIndex.close();
  const licenseNodeTree = {
    name: void 0,
    version: void 0,
    dependencies,
    dev: false,
    integrity: void 0,
    requires: toRequires(dependencies)
  };
  return licenseNodeTree;
}
function toRequires(licenseNodesByDepName) {
  return map_default((licenseNode) => licenseNode.version, licenseNodesByDepName);
}
var init_lockfileToLicenseNodeTree = __esm({
  "../deps/compliance/license-scanner/lib/lockfileToLicenseNodeTree.js"() {
    "use strict";
    init_lib28();
    init_lib125();
    init_lib70();
    init_lib88();
    init_lib16();
    init_es();
    init_getPkgInfo3();
  }
});

// ../deps/compliance/license-scanner/lib/licenses.js
function getDependenciesFromLicenseNode(licenseNode) {
  if (!licenseNode.dependencies) {
    return [];
  }
  let dependencies = [];
  for (const dependencyName in licenseNode.dependencies) {
    const dependencyNode = licenseNode.dependencies[dependencyName];
    const dependenciesOfNode = getDependenciesFromLicenseNode(dependencyNode);
    dependencies = [
      ...dependencies,
      ...dependenciesOfNode,
      {
        belongsTo: dependencyNode.dev ? "devDependencies" : "dependencies",
        version: dependencyNode.version,
        name: dependencyName,
        license: dependencyNode.license,
        licenseContents: dependencyNode.licenseContents,
        author: dependencyNode.author,
        homepage: dependencyNode.homepage,
        description: dependencyNode.description,
        repository: dependencyNode.repository,
        path: dependencyNode.dir
      }
    ];
  }
  return dependencies;
}
async function findDependencyLicenses(opts2) {
  if (opts2.wantedLockfile == null) {
    throw new PnpmError("LICENSES_NO_LOCKFILE", `No lockfile in directory "${opts2.lockfileDir}". Run \`pnpm install\` to generate one.`);
  }
  const depTypes = detectDepTypes(opts2.wantedLockfile);
  const licenseNodeTree = await lockfileToLicenseNodeTree(opts2.wantedLockfile, {
    dir: opts2.lockfileDir,
    modulesDir: opts2.modulesDir,
    storeDir: opts2.storeDir,
    virtualStoreDir: opts2.virtualStoreDir,
    virtualStoreDirMaxLength: opts2.virtualStoreDirMaxLength,
    include: opts2.include,
    registries: opts2.registries,
    includedImporterIds: opts2.includedImporterIds,
    supportedArchitectures: opts2.supportedArchitectures,
    depTypes
  });
  const licensePackages = /* @__PURE__ */ new Map();
  for (const dependencyName in licenseNodeTree.dependencies) {
    const licenseNode = licenseNodeTree.dependencies[dependencyName];
    const dependenciesOfNode = getDependenciesFromLicenseNode(licenseNode);
    for (const dependencyNode of dependenciesOfNode) {
      const mapKey = `${dependencyNode.name}@${dependencyNode.version}`;
      const existingVersion = licensePackages.get(mapKey)?.version;
      if (existingVersion === void 0) {
        licensePackages.set(mapKey, dependencyNode);
      }
    }
  }
  const projectDependencies = Array.from(licensePackages.values());
  return Array.from(projectDependencies).sort((pkg1, pkg2) => pkg1.name.localeCompare(pkg2.name) || import_semver45.default.compare(pkg1.version, pkg2.version));
}
var import_semver45;
var init_licenses = __esm({
  "../deps/compliance/license-scanner/lib/licenses.js"() {
    "use strict";
    init_lib2();
    init_lib125();
    import_semver45 = __toESM(require_semver2(), 1);
    init_lockfileToLicenseNodeTree();
  }
});

// ../deps/compliance/license-scanner/lib/index.js
var init_lib150 = __esm({
  "../deps/compliance/license-scanner/lib/index.js"() {
    "use strict";
    init_licenses();
  }
});

// ../deps/compliance/commands/lib/licenses/outputRenderer.js
function sortLicensesPackages(licensePackages) {
  return sortWith_default([
    (o1, o2) => o1.license.localeCompare(o2.license)
  ], licensePackages);
}
function renderPackageName({ belongsTo, name: packageName }) {
  switch (belongsTo) {
    case "devDependencies":
      return `${packageName} ${source_default.dim("(dev)")}`;
    case "optionalDependencies":
      return `${packageName} ${source_default.dim("(optional)")}`;
    default:
      return packageName;
  }
}
function renderPackageLicense({ license }) {
  const output = license ?? "Unknown";
  return output;
}
function renderDetails(licensePackage) {
  const outputs = [];
  if (licensePackage.author) {
    outputs.push(licensePackage.author);
  }
  if (licensePackage.description) {
    outputs.push(licensePackage.description);
  }
  if (licensePackage.homepage) {
    outputs.push(licensePackage.homepage);
  }
  return outputs.join("\n");
}
function renderLicences(licensesMap, opts2) {
  if (opts2.json) {
    return { output: renderLicensesJson(licensesMap), exitCode: 0 };
  }
  return { output: renderLicensesTable(licensesMap, opts2), exitCode: 0 };
}
function renderLicensesJson(licensePackages) {
  const data = licensePackages.map((item) => pick_default(["name", "version", "path", "license", "author", "homepage", "description"], item));
  const output = {};
  const groupedByLicense = groupBy_default((item) => item.license, data);
  for (const license in groupedByLicense) {
    const outputList = [];
    const groupedByName = groupBy_default((item) => item.name, groupedByLicense[license] ?? []);
    for (const inputList of Object.values(groupedByName)) {
      if (inputList == null)
        continue;
      inputList.sort((a2, b) => import_semver46.default.compare(a2.version, b.version));
      const versions = inputList.map((item) => item.version);
      const paths3 = inputList.map((item) => item.path ?? null);
      const lastInputItem = inputList.at(-1);
      const outputItem = {
        name: lastInputItem.name,
        versions,
        paths: paths3,
        ...omit_default(["name", "version", "path"], lastInputItem)
      };
      outputList.push(outputItem);
    }
    output[license] = outputList;
  }
  return JSON.stringify(output, null, 2);
}
function renderLicensesTable(licensePackages, opts2) {
  const columnNames = ["Package", "License"];
  const columnFns = [renderPackageName, renderPackageLicense];
  if (opts2.long) {
    columnNames.push("Details");
    columnFns.push(renderDetails);
  }
  for (let i2 = 0; i2 < columnNames.length; i2++)
    columnNames[i2] = source_default.blueBright(columnNames[i2]);
  const data = [
    columnNames,
    ...deduplicateLicensesPackages(sortLicensesPackages(licensePackages)).map((licensePkg) => columnFns.map((fn) => fn(licensePkg)))
  ];
  let detailsColumnMaxWidth = 40;
  let packageColumnMaxWidth = 0;
  let licenseColumnMaxWidth = 0;
  if (opts2.long) {
    detailsColumnMaxWidth = licensePackages.reduce((max3, pkg) => Math.max(max3, pkg.homepage?.length ?? 0), 0);
    for (let i2 = 1; i2 < data.length; i2++) {
      const row = data[i2];
      const detailsLineCount = row[2].split("\n").length;
      const linesNumber = Math.max(0, detailsLineCount - 1);
      row[0] += "\n ".repeat(linesNumber);
      row[1] += "\n ".repeat(linesNumber);
      packageColumnMaxWidth = Math.max(packageColumnMaxWidth, row[0].length);
      licenseColumnMaxWidth = Math.max(licenseColumnMaxWidth, row[1].length);
    }
    const remainColumnWidth = process.stdout.columns - packageColumnMaxWidth - licenseColumnMaxWidth - 20;
    if (detailsColumnMaxWidth > remainColumnWidth) {
      detailsColumnMaxWidth = remainColumnWidth;
    }
    detailsColumnMaxWidth = Math.max(detailsColumnMaxWidth, 40);
  }
  try {
    return (0, import_table6.table)(data, {
      ...TABLE_OPTIONS,
      columns: {
        ...TABLE_OPTIONS.columns,
        2: {
          width: detailsColumnMaxWidth,
          wrapWord: true
        }
      }
    });
  } catch {
    return (0, import_table6.table)(data, TABLE_OPTIONS);
  }
}
function deduplicateLicensesPackages(licensePackages) {
  const result2 = [];
  const rowEqual = (a2, b) => a2.name === b.name && a2.license === b.license;
  const hasRow = (row) => result2.some((x) => rowEqual(row, x));
  for (const row of licensePackages.reverse()) {
    if (!hasRow(row))
      result2.unshift(row);
  }
  return result2;
}
var import_table6, import_semver46;
var init_outputRenderer = __esm({
  "../deps/compliance/commands/lib/licenses/outputRenderer.js"() {
    "use strict";
    init_lib29();
    import_table6 = __toESM(require_src2(), 1);
    init_source2();
    init_es();
    import_semver46 = __toESM(require_semver2(), 1);
  }
});

// ../deps/compliance/commands/lib/licenses/licensesList.js
import path165 from "node:path";
async function licensesList(opts2) {
  const lockfile = await readWantedLockfile(opts2.lockfileDir ?? opts2.dir, {
    ignoreIncompatible: true
  });
  if (lockfile == null) {
    throw new PnpmError("LICENSES_NO_LOCKFILE", `No ${WANTED_LOCKFILE} found: Cannot check a project without a lockfile`);
  }
  const include = {
    dependencies: opts2.production !== false,
    devDependencies: opts2.dev !== false,
    optionalDependencies: opts2.optional !== false
  };
  const manifest = await readProjectManifestOnly2(opts2.dir);
  const includedImporterIds = opts2.selectedProjectsGraph ? Object.keys(opts2.selectedProjectsGraph).map((path218) => getLockfileImporterId(opts2.lockfileDir ?? opts2.dir, path218)) : void 0;
  const storeDir = await getStorePath({
    pkgRoot: opts2.dir,
    storePath: opts2.storeDir,
    pnpmHomeDir: opts2.pnpmHomeDir
  });
  const licensePackages = await findDependencyLicenses({
    include,
    lockfileDir: opts2.lockfileDir ?? opts2.dir,
    storeDir,
    virtualStoreDir: opts2.virtualStoreDir ?? path165.join(opts2.modulesDir ?? "node_modules", ".pnpm"),
    virtualStoreDirMaxLength: opts2.virtualStoreDirMaxLength,
    modulesDir: opts2.modulesDir,
    registries: opts2.registries,
    wantedLockfile: lockfile,
    manifest,
    includedImporterIds,
    supportedArchitectures: opts2.supportedArchitectures
  });
  if (licensePackages.length === 0)
    return { output: "No licenses in packages found", exitCode: 0 };
  return renderLicences(licensePackages, opts2);
}
var init_licensesList = __esm({
  "../deps/compliance/commands/lib/licenses/licensesList.js"() {
    "use strict";
    init_lib29();
    init_lib();
    init_lib150();
    init_lib2();
    init_lib78();
    init_lib89();
    init_outputRenderer();
  }
});

// ../deps/compliance/commands/lib/licenses/licenses.js
var licenses_exports = {};
__export(licenses_exports, {
  cliOptionsTypes: () => cliOptionsTypes21,
  commandNames: () => commandNames22,
  completion: () => completion3,
  handler: () => handler22,
  help: () => help22,
  rcOptionsTypes: () => rcOptionsTypes22,
  shorthands: () => shorthands6
});
function rcOptionsTypes22() {
  return {
    ...pick_default(["dev", "global-dir", "global", "json", "long", "optional", "production"], types2),
    compatible: Boolean,
    table: Boolean
  };
}
function help22() {
  return renderHelp({
    description: "Check the licenses of the installed packages.",
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: "Show more details (such as a link to the repo) are not displayed. To display the details, pass this option.",
            name: "--long"
          },
          {
            description: "Show information in JSON format",
            name: "--json"
          },
          {
            description: 'Check only "dependencies" and "optionalDependencies"',
            name: "--prod",
            shortAlias: "-P"
          },
          {
            description: 'Check only "devDependencies"',
            name: "--dev",
            shortAlias: "-D"
          },
          {
            description: `Don't check "optionalDependencies"`,
            name: "--no-optional"
          }
        ]
      },
      FILTERING
    ],
    url: docsUrl("licenses"),
    usages: [
      "pnpm licenses ls",
      "pnpm licenses ls --long",
      "pnpm licenses list",
      "pnpm licenses list --long"
    ]
  });
}
async function handler22(opts2, params = []) {
  if (params.length === 0) {
    throw new PnpmError("LICENCES_NO_SUBCOMMAND", "Please specify the subcommand", {
      hint: help22()
    });
  }
  switch (params[0]) {
    case "list":
    case "ls":
      return licensesList(opts2);
    default: {
      throw new PnpmError("LICENSES_UNKNOWN_SUBCOMMAND", "This subcommand is not known");
    }
  }
}
var cliOptionsTypes21, shorthands6, commandNames22, completion3;
var init_licenses2 = __esm({
  "../deps/compliance/commands/lib/licenses/licenses.js"() {
    "use strict";
    init_lib92();
    init_lib29();
    init_lib61();
    init_lib2();
    init_es();
    init_lib63();
    init_licensesList();
    cliOptionsTypes21 = () => ({
      ...rcOptionsTypes22(),
      recursive: Boolean
    });
    shorthands6 = {
      D: "--dev",
      P: "--production"
    };
    commandNames22 = ["licenses"];
    completion3 = async (cliOpts) => {
      return readDepNameCompletions(cliOpts.dir);
    };
  }
});

// ../deps/compliance/commands/lib/licenses/index.js
var init_licenses3 = __esm({
  "../deps/compliance/commands/lib/licenses/index.js"() {
    "use strict";
    init_licenses2();
  }
});

// ../deps/compliance/sbom/lib/getPkgMetadata.js
async function getPkgMetadata(depPath, snapshot, registries, opts2) {
  return limitMetadataReads(() => getPkgMetadataUnclamped(depPath, snapshot, registries, opts2));
}
async function getPkgMetadataUnclamped(depPath, snapshot, registries, opts2) {
  const id = packageIdFromSnapshot(depPath, snapshot);
  const resolution = pkgSnapshotToResolution(depPath, snapshot, registries);
  let files;
  try {
    const result2 = await readPackageFileMap(resolution, id, opts2);
    if (!result2)
      return {};
    files = result2;
  } catch {
    return {};
  }
  const manifestPath = files.get("package.json");
  if (!manifestPath)
    return {};
  const manifest = await readPackageJson2(manifestPath);
  return extractMetadata(manifest, files);
}
async function extractMetadata(manifest, files) {
  const license = await resolveLicense({ manifest, files });
  return {
    license: serializableLicense(license),
    description: manifest.description,
    author: parseAuthorField(manifest.author),
    homepage: manifest.homepage,
    repository: parseRepositoryField(manifest.repository)
  };
}
function serializableLicense(license) {
  if (!license || license.name === "Unknown")
    return void 0;
  if (license.licenseFile && !isSpdxLicenseExpression(license.name))
    return void 0;
  return license.name;
}
function parseAuthorField(field) {
  if (!field)
    return void 0;
  if (typeof field === "string")
    return field;
  if (typeof field === "object" && "name" in field) {
    return field.name;
  }
  return void 0;
}
function parseRepositoryField(field) {
  if (!field)
    return void 0;
  if (typeof field === "string")
    return field;
  if (typeof field === "object" && "url" in field) {
    return field.url;
  }
  return void 0;
}
var limitMetadataReads;
var init_getPkgMetadata = __esm({
  "../deps/compliance/sbom/lib/getPkgMetadata.js"() {
    "use strict";
    init_lib148();
    init_lib70();
    init_lib39();
    init_lib149();
    init_p_limit();
    limitMetadataReads = pLimit(4);
  }
});

// ../deps/compliance/sbom/lib/purl.js
function encodePurlName(name) {
  if (name.startsWith("@")) {
    return `%40${name.slice(1)}`;
  }
  return name;
}
function buildPurl(opts2) {
  if (opts2.nonSemverVersion) {
    const encodedUrl = encodeURIComponent(opts2.nonSemverVersion);
    return `pkg:npm/${encodePurlName(opts2.name)}@${encodeURIComponent(opts2.version)}?vcs_url=${encodedUrl}`;
  }
  return `pkg:npm/${encodePurlName(opts2.name)}@${opts2.version}`;
}
var init_purl = __esm({
  "../deps/compliance/sbom/lib/purl.js"() {
    "use strict";
  }
});

// ../deps/compliance/sbom/lib/collectComponents.js
async function collectSbomComponents(opts2) {
  const depTypes = detectDepTypes(opts2.lockfile);
  const importerIds = opts2.includedImporterIds ?? Object.keys(opts2.lockfile.importers);
  const importerWalkers = lockfileWalkerGroupImporterSteps(opts2.lockfile, importerIds, { include: opts2.include });
  const componentsMap = /* @__PURE__ */ new Map();
  const relationships = [];
  const rootPurl = `pkg:npm/${encodePurlName(opts2.rootName)}@${opts2.rootVersion}`;
  const storeIndex = !opts2.lockfileOnly && opts2.storeDir ? new StoreIndex(opts2.storeDir) : void 0;
  const metadataOpts = storeIndex && opts2.storeDir ? {
    storeDir: opts2.storeDir,
    storeIndex,
    lockfileDir: opts2.lockfileDir,
    virtualStoreDirMaxLength: opts2.virtualStoreDirMaxLength ?? 120
  } : void 0;
  await Promise.all(importerWalkers.map(async ({ step: step2 }) => {
    await walkStep(step2, rootPurl, depTypes, componentsMap, relationships, opts2, metadataOpts);
  }));
  storeIndex?.close();
  return {
    rootComponent: {
      name: opts2.rootName,
      version: opts2.rootVersion,
      type: opts2.sbomType ?? "library",
      license: opts2.rootLicense,
      description: opts2.rootDescription,
      author: opts2.rootAuthor,
      repository: opts2.rootRepository
    },
    components: Array.from(componentsMap.values()),
    relationships
  };
}
async function walkStep(step2, parentPurl, depTypes, componentsMap, relationships, opts2, metadataOpts) {
  await Promise.all(step2.dependencies.map(async (dep) => {
    const { depPath, pkgSnapshot, next: next2 } = dep;
    const { name, version: version2, nonSemverVersion } = nameVerFromPkgSnapshot(depPath, pkgSnapshot);
    if (!name || !version2)
      return;
    const purl = buildPurl({ name, version: version2, nonSemverVersion: nonSemverVersion ?? void 0 });
    relationships.push({ from: parentPurl, to: purl });
    if (componentsMap.has(purl))
      return;
    const integrity = pkgSnapshot.resolution.integrity;
    const resolution = pkgSnapshotToResolution(depPath, pkgSnapshot, opts2.registries);
    const tarballUrl = resolution.tarball ?? gitDownloadUrl(resolution);
    let metadata = {};
    if (metadataOpts) {
      metadata = await getPkgMetadata(depPath, pkgSnapshot, opts2.registries, metadataOpts);
    }
    const component = {
      name,
      version: version2,
      purl,
      depPath,
      depType: depTypes[depPath] ?? DepType.ProdOnly,
      integrity,
      tarballUrl,
      ...metadata
    };
    componentsMap.set(purl, component);
    const subStep = next2();
    await walkStep(subStep, purl, depTypes, componentsMap, relationships, opts2, metadataOpts);
  }));
}
function gitDownloadUrl(resolution) {
  if (resolution.type !== "git")
    return void 0;
  const needsGitPlusPrefix = resolution.repo.includes("://") && !resolution.repo.startsWith("git+");
  const prefix = needsGitPlusPrefix ? "git+" : "";
  return `${prefix}${resolution.repo}#${resolution.commit}`;
}
var init_collectComponents = __esm({
  "../deps/compliance/sbom/lib/collectComponents.js"() {
    "use strict";
    init_lib125();
    init_lib70();
    init_lib88();
    init_lib16();
    init_getPkgMetadata();
    init_purl();
  }
});

// ../deps/compliance/sbom/lib/integrity.js
function integrityToHashes(integrity) {
  if (!integrity)
    return [];
  const parsed = import_ssri5.default.parse(integrity);
  const hashes = [];
  for (const [algo, entries] of Object.entries(parsed)) {
    if (!entries?.length)
      continue;
    for (const entry of entries) {
      const hexDigest = Buffer.from(entry.digest, "base64").toString("hex");
      hashes.push({
        algorithm: normalizeShaAlgorithm(algo),
        digest: hexDigest
      });
    }
  }
  return hashes;
}
function normalizeShaAlgorithm(algo) {
  switch (algo) {
    case "sha1":
      return "SHA-1";
    case "sha256":
      return "SHA-256";
    case "sha384":
      return "SHA-384";
    case "sha512":
      return "SHA-512";
    default:
      return algo.toUpperCase();
  }
}
var import_ssri5;
var init_integrity = __esm({
  "../deps/compliance/sbom/lib/integrity.js"() {
    "use strict";
    import_ssri5 = __toESM(require_lib6(), 1);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@cyclonedx/cyclonedx-library/10.0.0/122db718be7f6ee5339161e246575a9f3081f79a125263f84d67ad9e8ca66f80/node_modules/@cyclonedx/cyclonedx-library/res/schema/spdx.SNAPSHOT.schema.json
var require_spdx_SNAPSHOT_schema = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@cyclonedx/cyclonedx-library/10.0.0/122db718be7f6ee5339161e246575a9f3081f79a125263f84d67ad9e8ca66f80/node_modules/@cyclonedx/cyclonedx-library/res/schema/spdx.SNAPSHOT.schema.json"(exports2, module2) {
    module2.exports = {
      $schema: "http://json-schema.org/draft-07/schema#",
      $id: "http://cyclonedx.org/schema/spdx.schema.json",
      $comment: "v1.1-3.28.0",
      type: "string",
      enum: [
        "0BSD",
        "3D-Slicer-1.0",
        "AAL",
        "Abstyles",
        "AdaCore-doc",
        "Adobe-2006",
        "Adobe-Display-PostScript",
        "Adobe-Glyph",
        "Adobe-Utopia",
        "ADSL",
        "Advanced-Cryptics-Dictionary",
        "AFL-1.1",
        "AFL-1.2",
        "AFL-2.0",
        "AFL-2.1",
        "AFL-3.0",
        "Afmparse",
        "AGPL-1.0",
        "AGPL-1.0-only",
        "AGPL-1.0-or-later",
        "AGPL-3.0",
        "AGPL-3.0-only",
        "AGPL-3.0-or-later",
        "Aladdin",
        "ALGLIB-Documentation",
        "AMD-newlib",
        "AMDPLPA",
        "AML",
        "AML-glslang",
        "AMPAS",
        "ANTLR-PD",
        "ANTLR-PD-fallback",
        "any-OSI",
        "any-OSI-perl-modules",
        "Apache-1.0",
        "Apache-1.1",
        "Apache-2.0",
        "APAFML",
        "APL-1.0",
        "App-s2p",
        "APSL-1.0",
        "APSL-1.1",
        "APSL-1.2",
        "APSL-2.0",
        "Arphic-1999",
        "Artistic-1.0",
        "Artistic-1.0-cl8",
        "Artistic-1.0-Perl",
        "Artistic-2.0",
        "Artistic-dist",
        "Aspell-RU",
        "ASWF-Digital-Assets-1.0",
        "ASWF-Digital-Assets-1.1",
        "Baekmuk",
        "Bahyph",
        "Barr",
        "bcrypt-Solar-Designer",
        "Beerware",
        "Bitstream-Charter",
        "Bitstream-Vera",
        "BitTorrent-1.0",
        "BitTorrent-1.1",
        "blessing",
        "BlueOak-1.0.0",
        "Boehm-GC",
        "Boehm-GC-without-fee",
        "BOLA-1.1",
        "Borceux",
        "Brian-Gladman-2-Clause",
        "Brian-Gladman-3-Clause",
        "BSD-1-Clause",
        "BSD-2-Clause",
        "BSD-2-Clause-Darwin",
        "BSD-2-Clause-first-lines",
        "BSD-2-Clause-FreeBSD",
        "BSD-2-Clause-NetBSD",
        "BSD-2-Clause-Patent",
        "BSD-2-Clause-pkgconf-disclaimer",
        "BSD-2-Clause-Views",
        "BSD-3-Clause",
        "BSD-3-Clause-acpica",
        "BSD-3-Clause-Attribution",
        "BSD-3-Clause-Clear",
        "BSD-3-Clause-flex",
        "BSD-3-Clause-HP",
        "BSD-3-Clause-LBNL",
        "BSD-3-Clause-Modification",
        "BSD-3-Clause-No-Military-License",
        "BSD-3-Clause-No-Nuclear-License",
        "BSD-3-Clause-No-Nuclear-License-2014",
        "BSD-3-Clause-No-Nuclear-Warranty",
        "BSD-3-Clause-Open-MPI",
        "BSD-3-Clause-Sun",
        "BSD-3-Clause-Tso",
        "BSD-4-Clause",
        "BSD-4-Clause-Shortened",
        "BSD-4-Clause-UC",
        "BSD-4.3RENO",
        "BSD-4.3TAHOE",
        "BSD-Advertising-Acknowledgement",
        "BSD-Attribution-HPND-disclaimer",
        "BSD-Inferno-Nettverk",
        "BSD-Mark-Modifications",
        "BSD-Protection",
        "BSD-Source-beginning-file",
        "BSD-Source-Code",
        "BSD-Systemics",
        "BSD-Systemics-W3Works",
        "BSL-1.0",
        "Buddy",
        "BUSL-1.1",
        "bzip2-1.0.5",
        "bzip2-1.0.6",
        "C-UDA-1.0",
        "CAL-1.0",
        "CAL-1.0-Combined-Work-Exception",
        "Caldera",
        "Caldera-no-preamble",
        "CAPEC-tou",
        "Catharon",
        "CATOSL-1.1",
        "CC-BY-1.0",
        "CC-BY-2.0",
        "CC-BY-2.5",
        "CC-BY-2.5-AU",
        "CC-BY-3.0",
        "CC-BY-3.0-AT",
        "CC-BY-3.0-AU",
        "CC-BY-3.0-DE",
        "CC-BY-3.0-IGO",
        "CC-BY-3.0-NL",
        "CC-BY-3.0-US",
        "CC-BY-4.0",
        "CC-BY-NC-1.0",
        "CC-BY-NC-2.0",
        "CC-BY-NC-2.5",
        "CC-BY-NC-3.0",
        "CC-BY-NC-3.0-DE",
        "CC-BY-NC-4.0",
        "CC-BY-NC-ND-1.0",
        "CC-BY-NC-ND-2.0",
        "CC-BY-NC-ND-2.5",
        "CC-BY-NC-ND-3.0",
        "CC-BY-NC-ND-3.0-DE",
        "CC-BY-NC-ND-3.0-IGO",
        "CC-BY-NC-ND-4.0",
        "CC-BY-NC-SA-1.0",
        "CC-BY-NC-SA-2.0",
        "CC-BY-NC-SA-2.0-DE",
        "CC-BY-NC-SA-2.0-FR",
        "CC-BY-NC-SA-2.0-UK",
        "CC-BY-NC-SA-2.5",
        "CC-BY-NC-SA-3.0",
        "CC-BY-NC-SA-3.0-DE",
        "CC-BY-NC-SA-3.0-IGO",
        "CC-BY-NC-SA-4.0",
        "CC-BY-ND-1.0",
        "CC-BY-ND-2.0",
        "CC-BY-ND-2.5",
        "CC-BY-ND-3.0",
        "CC-BY-ND-3.0-DE",
        "CC-BY-ND-4.0",
        "CC-BY-SA-1.0",
        "CC-BY-SA-2.0",
        "CC-BY-SA-2.0-UK",
        "CC-BY-SA-2.1-JP",
        "CC-BY-SA-2.5",
        "CC-BY-SA-3.0",
        "CC-BY-SA-3.0-AT",
        "CC-BY-SA-3.0-DE",
        "CC-BY-SA-3.0-IGO",
        "CC-BY-SA-4.0",
        "CC-PDDC",
        "CC-PDM-1.0",
        "CC-SA-1.0",
        "CC0-1.0",
        "CDDL-1.0",
        "CDDL-1.1",
        "CDL-1.0",
        "CDLA-Permissive-1.0",
        "CDLA-Permissive-2.0",
        "CDLA-Sharing-1.0",
        "CECILL-1.0",
        "CECILL-1.1",
        "CECILL-2.0",
        "CECILL-2.1",
        "CECILL-B",
        "CECILL-C",
        "CERN-OHL-1.1",
        "CERN-OHL-1.2",
        "CERN-OHL-P-2.0",
        "CERN-OHL-S-2.0",
        "CERN-OHL-W-2.0",
        "CFITSIO",
        "check-cvs",
        "checkmk",
        "ClArtistic",
        "Clips",
        "CMU-Mach",
        "CMU-Mach-nodoc",
        "CNRI-Jython",
        "CNRI-Python",
        "CNRI-Python-GPL-Compatible",
        "COIL-1.0",
        "Community-Spec-1.0",
        "Condor-1.1",
        "copyleft-next-0.3.0",
        "copyleft-next-0.3.1",
        "Cornell-Lossless-JPEG",
        "CPAL-1.0",
        "CPL-1.0",
        "CPOL-1.02",
        "Cronyx",
        "Crossword",
        "CryptoSwift",
        "CrystalStacker",
        "CUA-OPL-1.0",
        "Cube",
        "curl",
        "cve-tou",
        "D-FSL-1.0",
        "DEC-3-Clause",
        "diffmark",
        "DL-DE-BY-2.0",
        "DL-DE-ZERO-2.0",
        "DOC",
        "DocBook-DTD",
        "DocBook-Schema",
        "DocBook-Stylesheet",
        "DocBook-XML",
        "Dotseqn",
        "DRL-1.0",
        "DRL-1.1",
        "DSDP",
        "dtoa",
        "dvipdfm",
        "ECL-1.0",
        "ECL-2.0",
        "eCos-2.0",
        "EFL-1.0",
        "EFL-2.0",
        "eGenix",
        "Elastic-2.0",
        "Entessa",
        "EPICS",
        "EPL-1.0",
        "EPL-2.0",
        "ErlPL-1.1",
        "ESA-PL-permissive-2.4",
        "ESA-PL-strong-copyleft-2.4",
        "ESA-PL-weak-copyleft-2.4",
        "etalab-2.0",
        "EUDatagrid",
        "EUPL-1.0",
        "EUPL-1.1",
        "EUPL-1.2",
        "Eurosym",
        "Fair",
        "FBM",
        "FDK-AAC",
        "Ferguson-Twofish",
        "Frameworx-1.0",
        "FreeBSD-DOC",
        "FreeImage",
        "FSFAP",
        "FSFAP-no-warranty-disclaimer",
        "FSFUL",
        "FSFULLR",
        "FSFULLRSD",
        "FSFULLRWD",
        "FSL-1.1-ALv2",
        "FSL-1.1-MIT",
        "FTL",
        "Furuseth",
        "fwlw",
        "Game-Programming-Gems",
        "GCR-docs",
        "GD",
        "generic-xts",
        "GFDL-1.1",
        "GFDL-1.1-invariants-only",
        "GFDL-1.1-invariants-or-later",
        "GFDL-1.1-no-invariants-only",
        "GFDL-1.1-no-invariants-or-later",
        "GFDL-1.1-only",
        "GFDL-1.1-or-later",
        "GFDL-1.2",
        "GFDL-1.2-invariants-only",
        "GFDL-1.2-invariants-or-later",
        "GFDL-1.2-no-invariants-only",
        "GFDL-1.2-no-invariants-or-later",
        "GFDL-1.2-only",
        "GFDL-1.2-or-later",
        "GFDL-1.3",
        "GFDL-1.3-invariants-only",
        "GFDL-1.3-invariants-or-later",
        "GFDL-1.3-no-invariants-only",
        "GFDL-1.3-no-invariants-or-later",
        "GFDL-1.3-only",
        "GFDL-1.3-or-later",
        "Giftware",
        "GL2PS",
        "Glide",
        "Glulxe",
        "GLWTPL",
        "gnuplot",
        "GPL-1.0",
        "GPL-1.0+",
        "GPL-1.0-only",
        "GPL-1.0-or-later",
        "GPL-2.0",
        "GPL-2.0+",
        "GPL-2.0-only",
        "GPL-2.0-or-later",
        "GPL-2.0-with-autoconf-exception",
        "GPL-2.0-with-bison-exception",
        "GPL-2.0-with-classpath-exception",
        "GPL-2.0-with-font-exception",
        "GPL-2.0-with-GCC-exception",
        "GPL-3.0",
        "GPL-3.0+",
        "GPL-3.0-only",
        "GPL-3.0-or-later",
        "GPL-3.0-with-autoconf-exception",
        "GPL-3.0-with-GCC-exception",
        "Graphics-Gems",
        "gSOAP-1.3b",
        "gtkbook",
        "Gutmann",
        "HaskellReport",
        "HDF5",
        "hdparm",
        "HIDAPI",
        "Hippocratic-2.1",
        "HP-1986",
        "HP-1989",
        "HPND",
        "HPND-DEC",
        "HPND-doc",
        "HPND-doc-sell",
        "HPND-export-US",
        "HPND-export-US-acknowledgement",
        "HPND-export-US-modify",
        "HPND-export2-US",
        "HPND-Fenneberg-Livingston",
        "HPND-INRIA-IMAG",
        "HPND-Intel",
        "HPND-Kevlin-Henney",
        "HPND-Markus-Kuhn",
        "HPND-merchantability-variant",
        "HPND-MIT-disclaimer",
        "HPND-Netrek",
        "HPND-Pbmplus",
        "HPND-sell-MIT-disclaimer-xserver",
        "HPND-sell-regexpr",
        "HPND-sell-variant",
        "HPND-sell-variant-critical-systems",
        "HPND-sell-variant-MIT-disclaimer",
        "HPND-sell-variant-MIT-disclaimer-rev",
        "HPND-SMC",
        "HPND-UC",
        "HPND-UC-export-US",
        "HTMLTIDY",
        "hyphen-bulgarian",
        "IBM-pibs",
        "ICU",
        "IEC-Code-Components-EULA",
        "IJG",
        "IJG-short",
        "ImageMagick",
        "iMatix",
        "Imlib2",
        "Info-ZIP",
        "Inner-Net-2.0",
        "InnoSetup",
        "Intel",
        "Intel-ACPI",
        "Interbase-1.0",
        "IPA",
        "IPL-1.0",
        "ISC",
        "ISC-Veillard",
        "ISO-permission",
        "Jam",
        "JasPer-2.0",
        "jove",
        "JPL-image",
        "JPNIC",
        "JSON",
        "Kastrup",
        "Kazlib",
        "Knuth-CTAN",
        "LAL-1.2",
        "LAL-1.3",
        "Latex2e",
        "Latex2e-translated-notice",
        "Leptonica",
        "LGPL-2.0",
        "LGPL-2.0+",
        "LGPL-2.0-only",
        "LGPL-2.0-or-later",
        "LGPL-2.1",
        "LGPL-2.1+",
        "LGPL-2.1-only",
        "LGPL-2.1-or-later",
        "LGPL-3.0",
        "LGPL-3.0+",
        "LGPL-3.0-only",
        "LGPL-3.0-or-later",
        "LGPLLR",
        "Libpng",
        "libpng-1.6.35",
        "libpng-2.0",
        "libselinux-1.0",
        "libtiff",
        "libutil-David-Nugent",
        "LiLiQ-P-1.1",
        "LiLiQ-R-1.1",
        "LiLiQ-Rplus-1.1",
        "Linux-man-pages-1-para",
        "Linux-man-pages-copyleft",
        "Linux-man-pages-copyleft-2-para",
        "Linux-man-pages-copyleft-var",
        "Linux-OpenIB",
        "LOOP",
        "LPD-document",
        "LPL-1.0",
        "LPL-1.02",
        "LPPL-1.0",
        "LPPL-1.1",
        "LPPL-1.2",
        "LPPL-1.3a",
        "LPPL-1.3c",
        "lsof",
        "Lucida-Bitmap-Fonts",
        "LZMA-SDK-9.11-to-9.20",
        "LZMA-SDK-9.22",
        "Mackerras-3-Clause",
        "Mackerras-3-Clause-acknowledgment",
        "magaz",
        "mailprio",
        "MakeIndex",
        "man2html",
        "Martin-Birgmeier",
        "McPhee-slideshow",
        "metamail",
        "Minpack",
        "MIPS",
        "MirOS",
        "MIT",
        "MIT-0",
        "MIT-advertising",
        "MIT-Click",
        "MIT-CMU",
        "MIT-enna",
        "MIT-feh",
        "MIT-Festival",
        "MIT-Khronos-old",
        "MIT-Modern-Variant",
        "MIT-open-group",
        "MIT-STK",
        "MIT-testregex",
        "MIT-Wu",
        "MITNFA",
        "MMIXware",
        "MMPL-1.0.1",
        "Motosoto",
        "MPEG-SSG",
        "mpi-permissive",
        "mpich2",
        "MPL-1.0",
        "MPL-1.1",
        "MPL-2.0",
        "MPL-2.0-no-copyleft-exception",
        "mplus",
        "MS-LPL",
        "MS-PL",
        "MS-RL",
        "MTLL",
        "MulanPSL-1.0",
        "MulanPSL-2.0",
        "Multics",
        "Mup",
        "NAIST-2003",
        "NASA-1.3",
        "Naumen",
        "NBPL-1.0",
        "NCBI-PD",
        "NCGL-UK-2.0",
        "NCL",
        "NCSA",
        "Net-SNMP",
        "NetCDF",
        "Newsletr",
        "NGPL",
        "ngrep",
        "NICTA-1.0",
        "NIST-PD",
        "NIST-PD-fallback",
        "NIST-PD-TNT",
        "NIST-Software",
        "NLOD-1.0",
        "NLOD-2.0",
        "NLPL",
        "Nokia",
        "NOSL",
        "Noweb",
        "NPL-1.0",
        "NPL-1.1",
        "NPOSL-3.0",
        "NRL",
        "NTIA-PD",
        "NTP",
        "NTP-0",
        "Nunit",
        "O-UDA-1.0",
        "OAR",
        "OCCT-PL",
        "OCLC-2.0",
        "ODbL-1.0",
        "ODC-By-1.0",
        "OFFIS",
        "OFL-1.0",
        "OFL-1.0-no-RFN",
        "OFL-1.0-RFN",
        "OFL-1.1",
        "OFL-1.1-no-RFN",
        "OFL-1.1-RFN",
        "OGC-1.0",
        "OGDL-Taiwan-1.0",
        "OGL-Canada-2.0",
        "OGL-UK-1.0",
        "OGL-UK-2.0",
        "OGL-UK-3.0",
        "OGTSL",
        "OLDAP-1.1",
        "OLDAP-1.2",
        "OLDAP-1.3",
        "OLDAP-1.4",
        "OLDAP-2.0",
        "OLDAP-2.0.1",
        "OLDAP-2.1",
        "OLDAP-2.2",
        "OLDAP-2.2.1",
        "OLDAP-2.2.2",
        "OLDAP-2.3",
        "OLDAP-2.4",
        "OLDAP-2.5",
        "OLDAP-2.6",
        "OLDAP-2.7",
        "OLDAP-2.8",
        "OLFL-1.3",
        "OML",
        "OpenMDW-1.0",
        "OpenPBS-2.3",
        "OpenSSL",
        "OpenSSL-standalone",
        "OpenVision",
        "OPL-1.0",
        "OPL-UK-3.0",
        "OPUBL-1.0",
        "OSC-1.0",
        "OSET-PL-2.1",
        "OSL-1.0",
        "OSL-1.1",
        "OSL-2.0",
        "OSL-2.1",
        "OSL-3.0",
        "OSSP",
        "PADL",
        "ParaType-Free-Font-1.3",
        "Parity-6.0.0",
        "Parity-7.0.0",
        "PDDL-1.0",
        "PHP-3.0",
        "PHP-3.01",
        "Pixar",
        "pkgconf",
        "Plexus",
        "pnmstitch",
        "PolyForm-Noncommercial-1.0.0",
        "PolyForm-Small-Business-1.0.0",
        "PostgreSQL",
        "PPL",
        "PSF-2.0",
        "psfrag",
        "psutils",
        "Python-2.0",
        "Python-2.0.1",
        "python-ldap",
        "Qhull",
        "QPL-1.0",
        "QPL-1.0-INRIA-2004",
        "radvd",
        "Rdisc",
        "RHeCos-1.1",
        "RPL-1.1",
        "RPL-1.5",
        "RPSL-1.0",
        "RSA-MD",
        "RSCPL",
        "Ruby",
        "Ruby-pty",
        "SAX-PD",
        "SAX-PD-2.0",
        "Saxpath",
        "SCEA",
        "SchemeReport",
        "Sendmail",
        "Sendmail-8.23",
        "Sendmail-Open-Source-1.1",
        "SGI-B-1.0",
        "SGI-B-1.1",
        "SGI-B-2.0",
        "SGI-OpenGL",
        "SGMLUG-PM",
        "SGP4",
        "SHL-0.5",
        "SHL-0.51",
        "SimPL-2.0",
        "SISSL",
        "SISSL-1.2",
        "SL",
        "Sleepycat",
        "SMAIL-GPL",
        "SMLNJ",
        "SMPPL",
        "SNIA",
        "snprintf",
        "SOFA",
        "softSurfer",
        "Soundex",
        "Spencer-86",
        "Spencer-94",
        "Spencer-99",
        "SPL-1.0",
        "ssh-keyscan",
        "SSH-OpenSSH",
        "SSH-short",
        "SSLeay-standalone",
        "SSPL-1.0",
        "StandardML-NJ",
        "SugarCRM-1.1.3",
        "SUL-1.0",
        "Sun-PPP",
        "Sun-PPP-2000",
        "SunPro",
        "SWL",
        "swrule",
        "Symlinks",
        "TAPR-OHL-1.0",
        "TCL",
        "TCP-wrappers",
        "TekHVC",
        "TermReadKey",
        "TGPPL-1.0",
        "ThirdEye",
        "threeparttable",
        "TMate",
        "TORQUE-1.1",
        "TOSL",
        "TPDL",
        "TPL-1.0",
        "TrustedQSL",
        "TTWL",
        "TTYP0",
        "TU-Berlin-1.0",
        "TU-Berlin-2.0",
        "Ubuntu-font-1.0",
        "UCAR",
        "UCL-1.0",
        "ulem",
        "UMich-Merit",
        "Unicode-3.0",
        "Unicode-DFS-2015",
        "Unicode-DFS-2016",
        "Unicode-TOU",
        "UnixCrypt",
        "Unlicense",
        "Unlicense-libtelnet",
        "Unlicense-libwhirlpool",
        "UnRAR",
        "UPL-1.0",
        "URT-RLE",
        "Vim",
        "Vixie-Cron",
        "VOSTROM",
        "VSL-1.0",
        "W3C",
        "W3C-19980720",
        "W3C-20150513",
        "w3m",
        "Watcom-1.0",
        "Widget-Workshop",
        "WordNet",
        "Wsuipa",
        "WTFNMFPL",
        "WTFPL",
        "wwl",
        "wxWindows",
        "X11",
        "X11-distribute-modifications-variant",
        "X11-no-permit-persons",
        "X11-swapped",
        "Xdebug-1.03",
        "Xerox",
        "Xfig",
        "XFree86-1.1",
        "xinetd",
        "xkeyboard-config-Zinoviev",
        "xlock",
        "Xnet",
        "xpp",
        "XSkat",
        "xzoom",
        "YPL-1.0",
        "YPL-1.1",
        "Zed",
        "Zeeff",
        "Zend-2.0",
        "Zimbra-1.3",
        "Zimbra-1.4",
        "Zlib",
        "zlib-acknowledgement",
        "ZPL-1.1",
        "ZPL-2.0",
        "ZPL-2.1",
        "389-exception",
        "Asterisk-exception",
        "Asterisk-linking-protocols-exception",
        "Autoconf-exception-2.0",
        "Autoconf-exception-3.0",
        "Autoconf-exception-generic",
        "Autoconf-exception-generic-3.0",
        "Autoconf-exception-macro",
        "Bison-exception-1.24",
        "Bison-exception-2.2",
        "Bootloader-exception",
        "CGAL-linking-exception",
        "Classpath-exception-2.0",
        "Classpath-exception-2.0-short",
        "CLISP-exception-2.0",
        "cryptsetup-OpenSSL-exception",
        "Digia-Qt-LGPL-exception-1.1",
        "DigiRule-FOSS-exception",
        "eCos-exception-2.0",
        "erlang-otp-linking-exception",
        "Fawkes-Runtime-exception",
        "FLTK-exception",
        "fmt-exception",
        "Font-exception-2.0",
        "freertos-exception-2.0",
        "GCC-exception-2.0",
        "GCC-exception-2.0-note",
        "GCC-exception-3.1",
        "Gmsh-exception",
        "GNAT-exception",
        "GNOME-examples-exception",
        "GNU-compiler-exception",
        "gnu-javamail-exception",
        "GPL-3.0-389-ds-base-exception",
        "GPL-3.0-interface-exception",
        "GPL-3.0-linking-exception",
        "GPL-3.0-linking-source-exception",
        "GPL-CC-1.0",
        "GStreamer-exception-2005",
        "GStreamer-exception-2008",
        "harbour-exception",
        "i2p-gpl-java-exception",
        "Independent-modules-exception",
        "KiCad-libraries-exception",
        "kvirc-openssl-exception",
        "LGPL-3.0-linking-exception",
        "libpri-OpenH323-exception",
        "Libtool-exception",
        "Linux-syscall-note",
        "LLGPL",
        "LLVM-exception",
        "LZMA-exception",
        "mif-exception",
        "mxml-exception",
        "Nokia-Qt-exception-1.1",
        "OCaml-LGPL-linking-exception",
        "OCCT-exception-1.0",
        "OpenJDK-assembly-exception-1.0",
        "openvpn-openssl-exception",
        "PCRE2-exception",
        "polyparse-exception",
        "PS-or-PDF-font-exception-20170817",
        "QPL-1.0-INRIA-2004-exception",
        "Qt-GPL-exception-1.0",
        "Qt-LGPL-exception-1.1",
        "Qwt-exception-1.0",
        "romic-exception",
        "RRDtool-FLOSS-exception-2.0",
        "rsync-linking-exception",
        "SANE-exception",
        "SHL-2.0",
        "SHL-2.1",
        "Simple-Library-Usage-exception",
        "sqlitestudio-OpenSSL-exception",
        "stunnel-exception",
        "SWI-exception",
        "Swift-exception",
        "Texinfo-exception",
        "u-boot-exception-2.0",
        "UBDL-exception",
        "Universal-FOSS-exception-1.0",
        "vsftpd-openssl-exception",
        "WxWindows-exception-3.1",
        "x11vnc-openssl-exception"
      ],
      "meta:enum": {
        "0BSD": "BSD Zero Clause License",
        "3D-Slicer-1.0": "3D Slicer License v1.0",
        AAL: "Attribution Assurance License",
        Abstyles: "Abstyles License",
        "AdaCore-doc": "AdaCore Doc License",
        "Adobe-2006": "Adobe Systems Incorporated Source Code License Agreement",
        "Adobe-Display-PostScript": "Adobe Display PostScript License",
        "Adobe-Glyph": "Adobe Glyph List License",
        "Adobe-Utopia": "Adobe Utopia Font License",
        ADSL: "Amazon Digital Services License",
        "Advanced-Cryptics-Dictionary": "Advanced Cryptics Dictionary License",
        "AFL-1.1": "Academic Free License v1.1",
        "AFL-1.2": "Academic Free License v1.2",
        "AFL-2.0": "Academic Free License v2.0",
        "AFL-2.1": "Academic Free License v2.1",
        "AFL-3.0": "Academic Free License v3.0",
        Afmparse: "Afmparse License",
        "AGPL-1.0": "Affero General Public License v1.0",
        "AGPL-1.0-only": "Affero General Public License v1.0 only",
        "AGPL-1.0-or-later": "Affero General Public License v1.0 or later",
        "AGPL-3.0": "GNU Affero General Public License v3.0",
        "AGPL-3.0-only": "GNU Affero General Public License v3.0 only",
        "AGPL-3.0-or-later": "GNU Affero General Public License v3.0 or later",
        Aladdin: "Aladdin Free Public License",
        "ALGLIB-Documentation": "ALGLIB Documentation License",
        "AMD-newlib": "AMD newlib License",
        AMDPLPA: "AMD's plpa_map.c License",
        AML: "Apple MIT License",
        "AML-glslang": "AML glslang variant License",
        AMPAS: "Academy of Motion Picture Arts and Sciences BSD",
        "ANTLR-PD": "ANTLR Software Rights Notice",
        "ANTLR-PD-fallback": "ANTLR Software Rights Notice with license fallback",
        "any-OSI": "Any OSI License",
        "any-OSI-perl-modules": "Any OSI License - Perl Modules",
        "Apache-1.0": "Apache License 1.0",
        "Apache-1.1": "Apache License 1.1",
        "Apache-2.0": "Apache License 2.0",
        APAFML: "Adobe Postscript AFM License",
        "APL-1.0": "Adaptive Public License 1.0",
        "App-s2p": "App::s2p License",
        "APSL-1.0": "Apple Public Source License 1.0",
        "APSL-1.1": "Apple Public Source License 1.1",
        "APSL-1.2": "Apple Public Source License 1.2",
        "APSL-2.0": "Apple Public Source License 2.0",
        "Arphic-1999": "Arphic Public License",
        "Artistic-1.0": "Artistic License 1.0",
        "Artistic-1.0-cl8": "Artistic License 1.0 w/clause 8",
        "Artistic-1.0-Perl": "Artistic License 1.0 (Perl)",
        "Artistic-2.0": "Artistic License 2.0",
        "Artistic-dist": "Artistic License 1.0 (dist)",
        "Aspell-RU": "Aspell Russian License",
        "ASWF-Digital-Assets-1.0": "ASWF Digital Assets License version 1.0",
        "ASWF-Digital-Assets-1.1": "ASWF Digital Assets License 1.1",
        Baekmuk: "Baekmuk License",
        Bahyph: "Bahyph License",
        Barr: "Barr License",
        "bcrypt-Solar-Designer": "bcrypt Solar Designer License",
        Beerware: "Beerware License",
        "Bitstream-Charter": "Bitstream Charter Font License",
        "Bitstream-Vera": "Bitstream Vera Font License",
        "BitTorrent-1.0": "BitTorrent Open Source License v1.0",
        "BitTorrent-1.1": "BitTorrent Open Source License v1.1",
        blessing: "SQLite Blessing",
        "BlueOak-1.0.0": "Blue Oak Model License 1.0.0",
        "Boehm-GC": "Boehm-Demers-Weiser GC License",
        "Boehm-GC-without-fee": "Boehm-Demers-Weiser GC License (without fee)",
        "BOLA-1.1": "Buena Onda License Agreement v1.1",
        Borceux: "Borceux license",
        "Brian-Gladman-2-Clause": "Brian Gladman 2-Clause License",
        "Brian-Gladman-3-Clause": "Brian Gladman 3-Clause License",
        "BSD-1-Clause": "BSD 1-Clause License",
        "BSD-2-Clause": 'BSD 2-Clause "Simplified" License',
        "BSD-2-Clause-Darwin": "BSD 2-Clause - Ian Darwin variant",
        "BSD-2-Clause-first-lines": "BSD 2-Clause - first lines requirement",
        "BSD-2-Clause-FreeBSD": "BSD 2-Clause FreeBSD License",
        "BSD-2-Clause-NetBSD": "BSD 2-Clause NetBSD License",
        "BSD-2-Clause-Patent": "BSD-2-Clause Plus Patent License",
        "BSD-2-Clause-pkgconf-disclaimer": "BSD 2-Clause pkgconf disclaimer variant",
        "BSD-2-Clause-Views": "BSD 2-Clause with views sentence",
        "BSD-3-Clause": 'BSD 3-Clause "New" or "Revised" License',
        "BSD-3-Clause-acpica": "BSD 3-Clause acpica variant",
        "BSD-3-Clause-Attribution": "BSD with attribution",
        "BSD-3-Clause-Clear": "BSD 3-Clause Clear License",
        "BSD-3-Clause-flex": "BSD 3-Clause Flex variant",
        "BSD-3-Clause-HP": "Hewlett-Packard BSD variant license",
        "BSD-3-Clause-LBNL": "Lawrence Berkeley National Labs BSD variant license",
        "BSD-3-Clause-Modification": "BSD 3-Clause Modification",
        "BSD-3-Clause-No-Military-License": "BSD 3-Clause No Military License",
        "BSD-3-Clause-No-Nuclear-License": "BSD 3-Clause No Nuclear License",
        "BSD-3-Clause-No-Nuclear-License-2014": "BSD 3-Clause No Nuclear License 2014",
        "BSD-3-Clause-No-Nuclear-Warranty": "BSD 3-Clause No Nuclear Warranty",
        "BSD-3-Clause-Open-MPI": "BSD 3-Clause Open MPI variant",
        "BSD-3-Clause-Sun": "BSD 3-Clause Sun Microsystems",
        "BSD-3-Clause-Tso": "BSD 3-Clause Tso variant",
        "BSD-4-Clause": 'BSD 4-Clause "Original" or "Old" License',
        "BSD-4-Clause-Shortened": "BSD 4 Clause Shortened",
        "BSD-4-Clause-UC": "BSD-4-Clause (University of California-Specific)",
        "BSD-4.3RENO": "BSD 4.3 RENO License",
        "BSD-4.3TAHOE": "BSD 4.3 TAHOE License",
        "BSD-Advertising-Acknowledgement": "BSD Advertising Acknowledgement License",
        "BSD-Attribution-HPND-disclaimer": "BSD with Attribution and HPND disclaimer",
        "BSD-Inferno-Nettverk": "BSD-Inferno-Nettverk",
        "BSD-Mark-Modifications": "BSD Mark Modifications License",
        "BSD-Protection": "BSD Protection License",
        "BSD-Source-beginning-file": "BSD Source Code Attribution - beginning of file variant",
        "BSD-Source-Code": "BSD Source Code Attribution",
        "BSD-Systemics": "Systemics BSD variant license",
        "BSD-Systemics-W3Works": "Systemics W3Works BSD variant license",
        "BSL-1.0": "Boost Software License 1.0",
        Buddy: "Buddy License",
        "BUSL-1.1": "Business Source License 1.1",
        "bzip2-1.0.5": "bzip2 and libbzip2 License v1.0.5",
        "bzip2-1.0.6": "bzip2 and libbzip2 License v1.0.6",
        "C-UDA-1.0": "Computational Use of Data Agreement v1.0",
        "CAL-1.0": "Cryptographic Autonomy License 1.0",
        "CAL-1.0-Combined-Work-Exception": "Cryptographic Autonomy License 1.0 (Combined Work Exception)",
        Caldera: "Caldera License",
        "Caldera-no-preamble": "Caldera License (without preamble)",
        "CAPEC-tou": "Common Attack    Pattern Enumeration and Classification License",
        Catharon: "Catharon License",
        "CATOSL-1.1": "Computer Associates Trusted Open Source License 1.1",
        "CC-BY-1.0": "Creative Commons Attribution 1.0 Generic",
        "CC-BY-2.0": "Creative Commons Attribution 2.0 Generic",
        "CC-BY-2.5": "Creative Commons Attribution 2.5 Generic",
        "CC-BY-2.5-AU": "Creative Commons Attribution 2.5 Australia",
        "CC-BY-3.0": "Creative Commons Attribution 3.0 Unported",
        "CC-BY-3.0-AT": "Creative Commons Attribution 3.0 Austria",
        "CC-BY-3.0-AU": "Creative Commons Attribution 3.0 Australia",
        "CC-BY-3.0-DE": "Creative Commons Attribution 3.0 Germany",
        "CC-BY-3.0-IGO": "Creative Commons Attribution 3.0 IGO",
        "CC-BY-3.0-NL": "Creative Commons Attribution 3.0 Netherlands",
        "CC-BY-3.0-US": "Creative Commons Attribution 3.0 United States",
        "CC-BY-4.0": "Creative Commons Attribution 4.0 International",
        "CC-BY-NC-1.0": "Creative Commons Attribution Non Commercial 1.0 Generic",
        "CC-BY-NC-2.0": "Creative Commons Attribution Non Commercial 2.0 Generic",
        "CC-BY-NC-2.5": "Creative Commons Attribution Non Commercial 2.5 Generic",
        "CC-BY-NC-3.0": "Creative Commons Attribution Non Commercial 3.0 Unported",
        "CC-BY-NC-3.0-DE": "Creative Commons Attribution Non Commercial 3.0 Germany",
        "CC-BY-NC-4.0": "Creative Commons Attribution Non Commercial 4.0 International",
        "CC-BY-NC-ND-1.0": "Creative Commons Attribution Non Commercial No Derivatives 1.0 Generic",
        "CC-BY-NC-ND-2.0": "Creative Commons Attribution Non Commercial No Derivatives 2.0 Generic",
        "CC-BY-NC-ND-2.5": "Creative Commons Attribution Non Commercial No Derivatives 2.5 Generic",
        "CC-BY-NC-ND-3.0": "Creative Commons Attribution Non Commercial No Derivatives 3.0 Unported",
        "CC-BY-NC-ND-3.0-DE": "Creative Commons Attribution Non Commercial No Derivatives 3.0 Germany",
        "CC-BY-NC-ND-3.0-IGO": "Creative Commons Attribution Non Commercial No Derivatives 3.0 IGO",
        "CC-BY-NC-ND-4.0": "Creative Commons Attribution Non Commercial No Derivatives 4.0 International",
        "CC-BY-NC-SA-1.0": "Creative Commons Attribution Non Commercial Share Alike 1.0 Generic",
        "CC-BY-NC-SA-2.0": "Creative Commons Attribution Non Commercial Share Alike 2.0 Generic",
        "CC-BY-NC-SA-2.0-DE": "Creative Commons Attribution Non Commercial Share Alike 2.0 Germany",
        "CC-BY-NC-SA-2.0-FR": "Creative Commons Attribution-NonCommercial-ShareAlike 2.0 France",
        "CC-BY-NC-SA-2.0-UK": "Creative Commons Attribution Non Commercial Share Alike 2.0 England and Wales",
        "CC-BY-NC-SA-2.5": "Creative Commons Attribution Non Commercial Share Alike 2.5 Generic",
        "CC-BY-NC-SA-3.0": "Creative Commons Attribution Non Commercial Share Alike 3.0 Unported",
        "CC-BY-NC-SA-3.0-DE": "Creative Commons Attribution Non Commercial Share Alike 3.0 Germany",
        "CC-BY-NC-SA-3.0-IGO": "Creative Commons Attribution Non Commercial Share Alike 3.0 IGO",
        "CC-BY-NC-SA-4.0": "Creative Commons Attribution Non Commercial Share Alike 4.0 International",
        "CC-BY-ND-1.0": "Creative Commons Attribution No Derivatives 1.0 Generic",
        "CC-BY-ND-2.0": "Creative Commons Attribution No Derivatives 2.0 Generic",
        "CC-BY-ND-2.5": "Creative Commons Attribution No Derivatives 2.5 Generic",
        "CC-BY-ND-3.0": "Creative Commons Attribution No Derivatives 3.0 Unported",
        "CC-BY-ND-3.0-DE": "Creative Commons Attribution No Derivatives 3.0 Germany",
        "CC-BY-ND-4.0": "Creative Commons Attribution No Derivatives 4.0 International",
        "CC-BY-SA-1.0": "Creative Commons Attribution Share Alike 1.0 Generic",
        "CC-BY-SA-2.0": "Creative Commons Attribution Share Alike 2.0 Generic",
        "CC-BY-SA-2.0-UK": "Creative Commons Attribution Share Alike 2.0 England and Wales",
        "CC-BY-SA-2.1-JP": "Creative Commons Attribution Share Alike 2.1 Japan",
        "CC-BY-SA-2.5": "Creative Commons Attribution Share Alike 2.5 Generic",
        "CC-BY-SA-3.0": "Creative Commons Attribution Share Alike 3.0 Unported",
        "CC-BY-SA-3.0-AT": "Creative Commons Attribution Share Alike 3.0 Austria",
        "CC-BY-SA-3.0-DE": "Creative Commons Attribution Share Alike 3.0 Germany",
        "CC-BY-SA-3.0-IGO": "Creative Commons Attribution-ShareAlike 3.0 IGO",
        "CC-BY-SA-4.0": "Creative Commons Attribution Share Alike 4.0 International",
        "CC-PDDC": "Creative Commons Public Domain Dedication and Certification",
        "CC-PDM-1.0": "Creative    Commons Public Domain Mark 1.0 Universal",
        "CC-SA-1.0": "Creative Commons Share Alike 1.0 Generic",
        "CC0-1.0": "Creative Commons Zero v1.0 Universal",
        "CDDL-1.0": "Common Development and Distribution License 1.0",
        "CDDL-1.1": "Common Development and Distribution License 1.1",
        "CDL-1.0": "Common Documentation License 1.0",
        "CDLA-Permissive-1.0": "Community Data License Agreement Permissive 1.0",
        "CDLA-Permissive-2.0": "Community Data License Agreement Permissive 2.0",
        "CDLA-Sharing-1.0": "Community Data License Agreement Sharing 1.0",
        "CECILL-1.0": "CeCILL Free Software License Agreement v1.0",
        "CECILL-1.1": "CeCILL Free Software License Agreement v1.1",
        "CECILL-2.0": "CeCILL Free Software License Agreement v2.0",
        "CECILL-2.1": "CeCILL Free Software License Agreement v2.1",
        "CECILL-B": "CeCILL-B Free Software License Agreement",
        "CECILL-C": "CeCILL-C Free Software License Agreement",
        "CERN-OHL-1.1": "CERN Open Hardware Licence v1.1",
        "CERN-OHL-1.2": "CERN Open Hardware Licence v1.2",
        "CERN-OHL-P-2.0": "CERN Open Hardware Licence Version 2 - Permissive",
        "CERN-OHL-S-2.0": "CERN Open Hardware Licence Version 2 - Strongly Reciprocal",
        "CERN-OHL-W-2.0": "CERN Open Hardware Licence Version 2 - Weakly Reciprocal",
        CFITSIO: "CFITSIO License",
        "check-cvs": "check-cvs License",
        checkmk: "Checkmk License",
        ClArtistic: "Clarified Artistic License",
        Clips: "Clips License",
        "CMU-Mach": "CMU Mach License",
        "CMU-Mach-nodoc": "CMU    Mach - no notices-in-documentation variant",
        "CNRI-Jython": "CNRI Jython License",
        "CNRI-Python": "CNRI Python License",
        "CNRI-Python-GPL-Compatible": "CNRI Python Open Source GPL Compatible License Agreement",
        "COIL-1.0": "Copyfree Open Innovation License",
        "Community-Spec-1.0": "Community Specification License 1.0",
        "Condor-1.1": "Condor Public License v1.1",
        "copyleft-next-0.3.0": "copyleft-next 0.3.0",
        "copyleft-next-0.3.1": "copyleft-next 0.3.1",
        "Cornell-Lossless-JPEG": "Cornell Lossless JPEG License",
        "CPAL-1.0": "Common Public Attribution License 1.0",
        "CPL-1.0": "Common Public License 1.0",
        "CPOL-1.02": "Code Project Open License 1.02",
        Cronyx: "Cronyx License",
        Crossword: "Crossword License",
        CryptoSwift: "CryptoSwift License",
        CrystalStacker: "CrystalStacker License",
        "CUA-OPL-1.0": "CUA Office Public License v1.0",
        Cube: "Cube License",
        curl: "curl License",
        "cve-tou": "Common Vulnerability Enumeration ToU License",
        "D-FSL-1.0": "Deutsche Freie Software Lizenz",
        "DEC-3-Clause": "DEC 3-Clause License",
        diffmark: "diffmark license",
        "DL-DE-BY-2.0": "Data licence Germany \u2013 attribution \u2013 version 2.0",
        "DL-DE-ZERO-2.0": "Data licence Germany \u2013 zero \u2013 version 2.0",
        DOC: "DOC License",
        "DocBook-DTD": "DocBook DTD License",
        "DocBook-Schema": "DocBook Schema License",
        "DocBook-Stylesheet": "DocBook Stylesheet License",
        "DocBook-XML": "DocBook XML License",
        Dotseqn: "Dotseqn License",
        "DRL-1.0": "Detection Rule License 1.0",
        "DRL-1.1": "Detection Rule License 1.1",
        DSDP: "DSDP License",
        dtoa: "David M. Gay dtoa License",
        dvipdfm: "dvipdfm License",
        "ECL-1.0": "Educational Community License v1.0",
        "ECL-2.0": "Educational Community License v2.0",
        "eCos-2.0": "eCos license version 2.0",
        "EFL-1.0": "Eiffel Forum License v1.0",
        "EFL-2.0": "Eiffel Forum License v2.0",
        eGenix: "eGenix.com Public License 1.1.0",
        "Elastic-2.0": "Elastic License 2.0",
        Entessa: "Entessa Public License v1.0",
        EPICS: "EPICS Open License",
        "EPL-1.0": "Eclipse Public License 1.0",
        "EPL-2.0": "Eclipse Public License 2.0",
        "ErlPL-1.1": "Erlang Public License v1.1",
        "ESA-PL-permissive-2.4": "European Space Agency Public License \u2013 v2.4 \u2013 Permissive (Type 3)",
        "ESA-PL-strong-copyleft-2.4": "European Space Agency Public License (ESA-PL) - V2.4 - Strong Copyleft (Type 1)",
        "ESA-PL-weak-copyleft-2.4": "European Space Agency Public License \u2013 v2.4 \u2013 Weak Copyleft (Type 2)",
        "etalab-2.0": "Etalab Open License 2.0",
        EUDatagrid: "EU DataGrid Software License",
        "EUPL-1.0": "European Union Public License 1.0",
        "EUPL-1.1": "European Union Public License 1.1",
        "EUPL-1.2": "European Union Public License 1.2",
        Eurosym: "Eurosym License",
        Fair: "Fair License",
        FBM: "Fuzzy Bitmap License",
        "FDK-AAC": "Fraunhofer FDK AAC Codec Library",
        "Ferguson-Twofish": "Ferguson Twofish License",
        "Frameworx-1.0": "Frameworx Open License 1.0",
        "FreeBSD-DOC": "FreeBSD Documentation License",
        FreeImage: "FreeImage Public License v1.0",
        FSFAP: "FSF All Permissive License",
        "FSFAP-no-warranty-disclaimer": "FSF All Permissive License (without Warranty)",
        FSFUL: "FSF Unlimited License",
        FSFULLR: "FSF Unlimited License (with License Retention)",
        FSFULLRSD: "FSF Unlimited License (with License Retention and Short Disclaimer)",
        FSFULLRWD: "FSF Unlimited License (With License Retention and Warranty Disclaimer)",
        "FSL-1.1-ALv2": "Functional Source License, Version 1.1, ALv2 Future License",
        "FSL-1.1-MIT": "Functional Source License, Version 1.1, MIT Future License",
        FTL: "Freetype Project License",
        Furuseth: "Furuseth License",
        fwlw: "fwlw License",
        "Game-Programming-Gems": "Game Programming Gems License",
        "GCR-docs": "Gnome GCR Documentation License",
        GD: "GD License",
        "generic-xts": "Generic XTS License",
        "GFDL-1.1": "GNU Free Documentation License v1.1",
        "GFDL-1.1-invariants-only": "GNU Free Documentation License v1.1 only - invariants",
        "GFDL-1.1-invariants-or-later": "GNU Free Documentation License v1.1 or later - invariants",
        "GFDL-1.1-no-invariants-only": "GNU Free Documentation License v1.1 only - no invariants",
        "GFDL-1.1-no-invariants-or-later": "GNU Free Documentation License v1.1 or later - no invariants",
        "GFDL-1.1-only": "GNU Free Documentation License v1.1 only",
        "GFDL-1.1-or-later": "GNU Free Documentation License v1.1 or later",
        "GFDL-1.2": "GNU Free Documentation License v1.2",
        "GFDL-1.2-invariants-only": "GNU Free Documentation License v1.2 only - invariants",
        "GFDL-1.2-invariants-or-later": "GNU Free Documentation License v1.2 or later - invariants",
        "GFDL-1.2-no-invariants-only": "GNU Free Documentation License v1.2 only - no invariants",
        "GFDL-1.2-no-invariants-or-later": "GNU Free Documentation License v1.2 or later - no invariants",
        "GFDL-1.2-only": "GNU Free Documentation License v1.2 only",
        "GFDL-1.2-or-later": "GNU Free Documentation License v1.2 or later",
        "GFDL-1.3": "GNU Free Documentation License v1.3",
        "GFDL-1.3-invariants-only": "GNU Free Documentation License v1.3 only - invariants",
        "GFDL-1.3-invariants-or-later": "GNU Free Documentation License v1.3 or later - invariants",
        "GFDL-1.3-no-invariants-only": "GNU Free Documentation License v1.3 only - no invariants",
        "GFDL-1.3-no-invariants-or-later": "GNU Free Documentation License v1.3 or later - no invariants",
        "GFDL-1.3-only": "GNU Free Documentation License v1.3 only",
        "GFDL-1.3-or-later": "GNU Free Documentation License v1.3 or later",
        Giftware: "Giftware License",
        GL2PS: "GL2PS License",
        Glide: "3dfx Glide License",
        Glulxe: "Glulxe License",
        GLWTPL: "Good Luck With That Public License",
        gnuplot: "gnuplot License",
        "GPL-1.0": "GNU General Public License v1.0 only",
        "GPL-1.0+": "GNU General Public License v1.0 or later",
        "GPL-1.0-only": "GNU General Public License v1.0 only",
        "GPL-1.0-or-later": "GNU General Public License v1.0 or later",
        "GPL-2.0": "GNU General Public License v2.0 only",
        "GPL-2.0+": "GNU General Public License v2.0 or later",
        "GPL-2.0-only": "GNU General Public License v2.0 only",
        "GPL-2.0-or-later": "GNU General Public License v2.0 or later",
        "GPL-2.0-with-autoconf-exception": "GNU General Public License v2.0 w/Autoconf exception",
        "GPL-2.0-with-bison-exception": "GNU General Public License v2.0 w/Bison exception",
        "GPL-2.0-with-classpath-exception": "GNU General Public License v2.0 w/Classpath exception",
        "GPL-2.0-with-font-exception": "GNU General Public License v2.0 w/Font exception",
        "GPL-2.0-with-GCC-exception": "GNU General Public License v2.0 w/GCC Runtime Library exception",
        "GPL-3.0": "GNU General Public License v3.0 only",
        "GPL-3.0+": "GNU General Public License v3.0 or later",
        "GPL-3.0-only": "GNU General Public License v3.0 only",
        "GPL-3.0-or-later": "GNU General Public License v3.0 or later",
        "GPL-3.0-with-autoconf-exception": "GNU General Public License v3.0 w/Autoconf exception",
        "GPL-3.0-with-GCC-exception": "GNU General Public License v3.0 w/GCC Runtime Library exception",
        "Graphics-Gems": "Graphics Gems License",
        "gSOAP-1.3b": "gSOAP Public License v1.3b",
        gtkbook: "gtkbook License",
        Gutmann: "Gutmann License",
        HaskellReport: "Haskell Language Report License",
        HDF5: "HDF5 License",
        hdparm: "hdparm License",
        HIDAPI: "HIDAPI License",
        "Hippocratic-2.1": "Hippocratic License 2.1",
        "HP-1986": "Hewlett-Packard 1986 License",
        "HP-1989": "Hewlett-Packard 1989 License",
        HPND: "Historical Permission Notice and Disclaimer",
        "HPND-DEC": "Historical Permission Notice and Disclaimer - DEC variant",
        "HPND-doc": "Historical Permission Notice and Disclaimer - documentation variant",
        "HPND-doc-sell": "Historical Permission Notice and Disclaimer - documentation sell variant",
        "HPND-export-US": "HPND with US Government export control warning",
        "HPND-export-US-acknowledgement": "HPND with US Government export control warning and acknowledgment",
        "HPND-export-US-modify": "HPND with US Government export control warning and modification rqmt",
        "HPND-export2-US": "HPND with US Government export control and 2 disclaimers",
        "HPND-Fenneberg-Livingston": "Historical Permission Notice and Disclaimer - Fenneberg-Livingston variant",
        "HPND-INRIA-IMAG": "Historical Permission Notice and Disclaimer    - INRIA-IMAG variant",
        "HPND-Intel": "Historical Permission Notice and Disclaimer - Intel variant",
        "HPND-Kevlin-Henney": "Historical Permission Notice and Disclaimer - Kevlin Henney variant",
        "HPND-Markus-Kuhn": "Historical Permission Notice and Disclaimer - Markus Kuhn variant",
        "HPND-merchantability-variant": "Historical Permission Notice and Disclaimer - merchantability variant",
        "HPND-MIT-disclaimer": "Historical Permission Notice and Disclaimer with MIT disclaimer",
        "HPND-Netrek": "Historical Permission Notice and Disclaimer - Netrek variant",
        "HPND-Pbmplus": "Historical Permission Notice and Disclaimer - Pbmplus variant",
        "HPND-sell-MIT-disclaimer-xserver": "Historical Permission Notice and Disclaimer - sell xserver variant with MIT disclaimer",
        "HPND-sell-regexpr": "Historical Permission Notice and Disclaimer - sell regexpr variant",
        "HPND-sell-variant": "Historical Permission Notice and Disclaimer - sell variant",
        "HPND-sell-variant-critical-systems": "HPND - sell variant with safety critical systems clause",
        "HPND-sell-variant-MIT-disclaimer": "HPND sell variant with MIT disclaimer",
        "HPND-sell-variant-MIT-disclaimer-rev": "HPND sell variant with MIT disclaimer - reverse",
        "HPND-SMC": "Historical Permission Notice and Disclaimer - SMC variant",
        "HPND-UC": "Historical Permission Notice and Disclaimer - University of California variant",
        "HPND-UC-export-US": "Historical Permission Notice and Disclaimer - University of California, US export warning",
        HTMLTIDY: "HTML Tidy License",
        "hyphen-bulgarian": "hyphen-bulgarian License",
        "IBM-pibs": "IBM PowerPC Initialization and Boot Software",
        ICU: "ICU License",
        "IEC-Code-Components-EULA": "IEC    Code Components End-user licence agreement",
        IJG: "Independent JPEG Group License",
        "IJG-short": "Independent JPEG Group License - short",
        ImageMagick: "ImageMagick License",
        iMatix: "iMatix Standard Function Library Agreement",
        Imlib2: "Imlib2 License",
        "Info-ZIP": "Info-ZIP License",
        "Inner-Net-2.0": "Inner Net License v2.0",
        InnoSetup: "Inno Setup License",
        Intel: "Intel Open Source License",
        "Intel-ACPI": "Intel ACPI Software License Agreement",
        "Interbase-1.0": "Interbase Public License v1.0",
        IPA: "IPA Font License",
        "IPL-1.0": "IBM Public License v1.0",
        ISC: "ISC License",
        "ISC-Veillard": "ISC Veillard variant",
        "ISO-permission": "ISO permission notice",
        Jam: "Jam License",
        "JasPer-2.0": "JasPer License",
        jove: "Jove License",
        "JPL-image": "JPL Image Use Policy",
        JPNIC: "Japan Network Information Center License",
        JSON: "JSON License",
        Kastrup: "Kastrup License",
        Kazlib: "Kazlib License",
        "Knuth-CTAN": "Knuth CTAN License",
        "LAL-1.2": "Licence Art Libre 1.2",
        "LAL-1.3": "Licence Art Libre 1.3",
        Latex2e: "Latex2e License",
        "Latex2e-translated-notice": "Latex2e with translated notice permission",
        Leptonica: "Leptonica License",
        "LGPL-2.0": "GNU Library General Public License v2 only",
        "LGPL-2.0+": "GNU Library General Public License v2 or later",
        "LGPL-2.0-only": "GNU Library General Public License v2 only",
        "LGPL-2.0-or-later": "GNU Library General Public License v2 or later",
        "LGPL-2.1": "GNU Lesser General Public License v2.1 only",
        "LGPL-2.1+": "GNU Lesser General Public License v2.1 or later",
        "LGPL-2.1-only": "GNU Lesser General Public License v2.1 only",
        "LGPL-2.1-or-later": "GNU Lesser General Public License v2.1 or later",
        "LGPL-3.0": "GNU Lesser General Public License v3.0 only",
        "LGPL-3.0+": "GNU Lesser General Public License v3.0 or later",
        "LGPL-3.0-only": "GNU Lesser General Public License v3.0 only",
        "LGPL-3.0-or-later": "GNU Lesser General Public License v3.0 or later",
        LGPLLR: "Lesser General Public License For Linguistic Resources",
        Libpng: "libpng License",
        "libpng-1.6.35": "PNG Reference Library License v1 (for libpng 0.5 through 1.6.35)",
        "libpng-2.0": "PNG Reference Library version 2",
        "libselinux-1.0": "libselinux public domain notice",
        libtiff: "libtiff License",
        "libutil-David-Nugent": "libutil David Nugent License",
        "LiLiQ-P-1.1": "Licence Libre du Qu\xE9bec \u2013 Permissive version 1.1",
        "LiLiQ-R-1.1": "Licence Libre du Qu\xE9bec \u2013 R\xE9ciprocit\xE9 version 1.1",
        "LiLiQ-Rplus-1.1": "Licence Libre du Qu\xE9bec \u2013 R\xE9ciprocit\xE9 forte version 1.1",
        "Linux-man-pages-1-para": "Linux man-pages - 1 paragraph",
        "Linux-man-pages-copyleft": "Linux man-pages Copyleft",
        "Linux-man-pages-copyleft-2-para": "Linux man-pages Copyleft - 2 paragraphs",
        "Linux-man-pages-copyleft-var": "Linux man-pages Copyleft Variant",
        "Linux-OpenIB": "Linux Kernel Variant of OpenIB.org license",
        LOOP: "Common Lisp LOOP License",
        "LPD-document": "LPD Documentation License",
        "LPL-1.0": "Lucent Public License Version 1.0",
        "LPL-1.02": "Lucent Public License v1.02",
        "LPPL-1.0": "LaTeX Project Public License v1.0",
        "LPPL-1.1": "LaTeX Project Public License v1.1",
        "LPPL-1.2": "LaTeX Project Public License v1.2",
        "LPPL-1.3a": "LaTeX Project Public License v1.3a",
        "LPPL-1.3c": "LaTeX Project Public License v1.3c",
        lsof: "lsof License",
        "Lucida-Bitmap-Fonts": "Lucida Bitmap Fonts License",
        "LZMA-SDK-9.11-to-9.20": "LZMA SDK License (versions 9.11 to 9.20)",
        "LZMA-SDK-9.22": "LZMA SDK License (versions 9.22 and beyond)",
        "Mackerras-3-Clause": "Mackerras 3-Clause License",
        "Mackerras-3-Clause-acknowledgment": "Mackerras 3-Clause - acknowledgment variant",
        magaz: "magaz License",
        mailprio: "mailprio License",
        MakeIndex: "MakeIndex License",
        man2html: "man2html License",
        "Martin-Birgmeier": "Martin Birgmeier License",
        "McPhee-slideshow": "McPhee Slideshow License",
        metamail: "metamail License",
        Minpack: "Minpack License",
        MIPS: "MIPS License",
        MirOS: "The MirOS Licence",
        MIT: "MIT License",
        "MIT-0": "MIT No Attribution",
        "MIT-advertising": "Enlightenment License (e16)",
        "MIT-Click": "MIT Click License",
        "MIT-CMU": "CMU License",
        "MIT-enna": "enna License",
        "MIT-feh": "feh License",
        "MIT-Festival": "MIT Festival Variant",
        "MIT-Khronos-old": "MIT Khronos - old variant",
        "MIT-Modern-Variant": "MIT License Modern Variant",
        "MIT-open-group": "MIT Open Group variant",
        "MIT-STK": "MIT-STK License",
        "MIT-testregex": "MIT testregex Variant",
        "MIT-Wu": "MIT Tom Wu Variant",
        MITNFA: "MIT +no-false-attribs license",
        MMIXware: "MMIXware License",
        "MMPL-1.0.1": "Minecraft Mod Public License v1.0.1",
        Motosoto: "Motosoto License",
        "MPEG-SSG": "MPEG Software Simulation",
        "mpi-permissive": "mpi Permissive License",
        mpich2: "mpich2 License",
        "MPL-1.0": "Mozilla Public License 1.0",
        "MPL-1.1": "Mozilla Public License 1.1",
        "MPL-2.0": "Mozilla Public License 2.0",
        "MPL-2.0-no-copyleft-exception": "Mozilla Public License 2.0 (no copyleft exception)",
        mplus: "mplus Font License",
        "MS-LPL": "Microsoft Limited Public License",
        "MS-PL": "Microsoft Public License",
        "MS-RL": "Microsoft Reciprocal License",
        MTLL: "Matrix Template Library License",
        "MulanPSL-1.0": "Mulan Permissive Software License, Version 1",
        "MulanPSL-2.0": "Mulan Permissive Software License, Version 2",
        Multics: "Multics License",
        Mup: "Mup License",
        "NAIST-2003": "Nara Institute of Science and Technology License (2003)",
        "NASA-1.3": "NASA Open Source Agreement 1.3",
        Naumen: "Naumen Public License",
        "NBPL-1.0": "Net Boolean Public License v1",
        "NCBI-PD": "NCBI Public Domain Notice",
        "NCGL-UK-2.0": "Non-Commercial Government Licence",
        NCL: "NCL Source Code License",
        NCSA: "University of Illinois/NCSA Open Source License",
        "Net-SNMP": "Net-SNMP License",
        NetCDF: "NetCDF license",
        Newsletr: "Newsletr License",
        NGPL: "Nethack General Public License",
        ngrep: "ngrep License",
        "NICTA-1.0": "NICTA Public Software License, Version 1.0",
        "NIST-PD": "NIST Public Domain Notice",
        "NIST-PD-fallback": "NIST Public Domain Notice with license fallback",
        "NIST-PD-TNT": "NIST    Public Domain Notice TNT variant",
        "NIST-Software": "NIST Software License",
        "NLOD-1.0": "Norwegian Licence for Open Government Data (NLOD) 1.0",
        "NLOD-2.0": "Norwegian Licence for Open Government Data (NLOD) 2.0",
        NLPL: "No Limit Public License",
        Nokia: "Nokia Open Source License",
        NOSL: "Netizen Open Source License",
        Noweb: "Noweb License",
        "NPL-1.0": "Netscape Public License v1.0",
        "NPL-1.1": "Netscape Public License v1.1",
        "NPOSL-3.0": "Non-Profit Open Software License 3.0",
        NRL: "NRL License",
        "NTIA-PD": "NTIA Public Domain Notice",
        NTP: "NTP License",
        "NTP-0": "NTP No Attribution",
        Nunit: "Nunit License",
        "O-UDA-1.0": "Open Use of Data Agreement v1.0",
        OAR: "OAR License",
        "OCCT-PL": "Open CASCADE Technology Public License",
        "OCLC-2.0": "OCLC Research Public License 2.0",
        "ODbL-1.0": "Open Data Commons Open Database License v1.0",
        "ODC-By-1.0": "Open Data Commons Attribution License v1.0",
        OFFIS: "OFFIS License",
        "OFL-1.0": "SIL Open Font License 1.0",
        "OFL-1.0-no-RFN": "SIL Open Font License 1.0 with no Reserved Font Name",
        "OFL-1.0-RFN": "SIL Open Font License 1.0 with Reserved Font Name",
        "OFL-1.1": "SIL Open Font License 1.1",
        "OFL-1.1-no-RFN": "SIL Open Font License 1.1 with no Reserved Font Name",
        "OFL-1.1-RFN": "SIL Open Font License 1.1 with Reserved Font Name",
        "OGC-1.0": "OGC Software License, Version 1.0",
        "OGDL-Taiwan-1.0": "Taiwan Open Government Data License, version 1.0",
        "OGL-Canada-2.0": "Open Government Licence - Canada",
        "OGL-UK-1.0": "Open Government Licence v1.0",
        "OGL-UK-2.0": "Open Government Licence v2.0",
        "OGL-UK-3.0": "Open Government Licence v3.0",
        OGTSL: "Open Group Test Suite License",
        "OLDAP-1.1": "Open LDAP Public License v1.1",
        "OLDAP-1.2": "Open LDAP Public License v1.2",
        "OLDAP-1.3": "Open LDAP Public License v1.3",
        "OLDAP-1.4": "Open LDAP Public License v1.4",
        "OLDAP-2.0": "Open LDAP Public License v2.0 (or possibly 2.0A and 2.0B)",
        "OLDAP-2.0.1": "Open LDAP Public License v2.0.1",
        "OLDAP-2.1": "Open LDAP Public License v2.1",
        "OLDAP-2.2": "Open LDAP Public License v2.2",
        "OLDAP-2.2.1": "Open LDAP Public License v2.2.1",
        "OLDAP-2.2.2": "Open LDAP Public License 2.2.2",
        "OLDAP-2.3": "Open LDAP Public License v2.3",
        "OLDAP-2.4": "Open LDAP Public License v2.4",
        "OLDAP-2.5": "Open LDAP Public License v2.5",
        "OLDAP-2.6": "Open LDAP Public License v2.6",
        "OLDAP-2.7": "Open LDAP Public License v2.7",
        "OLDAP-2.8": "Open LDAP Public License v2.8",
        "OLFL-1.3": "Open Logistics Foundation License Version 1.3",
        OML: "Open Market License",
        "OpenMDW-1.0": "OpenMDW License Agreement v1.0",
        "OpenPBS-2.3": "OpenPBS v2.3 Software License",
        OpenSSL: "OpenSSL License",
        "OpenSSL-standalone": "OpenSSL License - standalone",
        OpenVision: "OpenVision License",
        "OPL-1.0": "Open Public License v1.0",
        "OPL-UK-3.0": "United    Kingdom Open Parliament Licence v3.0",
        "OPUBL-1.0": "Open Publication License v1.0",
        "OSC-1.0": "OSC License 1.0",
        "OSET-PL-2.1": "OSET Public License version 2.1",
        "OSL-1.0": "Open Software License 1.0",
        "OSL-1.1": "Open Software License 1.1",
        "OSL-2.0": "Open Software License 2.0",
        "OSL-2.1": "Open Software License 2.1",
        "OSL-3.0": "Open Software License 3.0",
        OSSP: "OSSP License",
        PADL: "PADL License",
        "ParaType-Free-Font-1.3": "ParaType Free Font Licensing Agreement v1.3",
        "Parity-6.0.0": "The Parity Public License 6.0.0",
        "Parity-7.0.0": "The Parity Public License 7.0.0",
        "PDDL-1.0": "Open Data Commons Public Domain Dedication & License 1.0",
        "PHP-3.0": "PHP License v3.0",
        "PHP-3.01": "PHP License v3.01",
        Pixar: "Pixar License",
        pkgconf: "pkgconf License",
        Plexus: "Plexus Classworlds License",
        pnmstitch: "pnmstitch License",
        "PolyForm-Noncommercial-1.0.0": "PolyForm Noncommercial License 1.0.0",
        "PolyForm-Small-Business-1.0.0": "PolyForm Small Business License 1.0.0",
        PostgreSQL: "PostgreSQL License",
        PPL: "Peer Production License",
        "PSF-2.0": "Python Software Foundation License 2.0",
        psfrag: "psfrag License",
        psutils: "psutils License",
        "Python-2.0": "Python License 2.0",
        "Python-2.0.1": "Python License 2.0.1",
        "python-ldap": "Python ldap License",
        Qhull: "Qhull License",
        "QPL-1.0": "Q Public License 1.0",
        "QPL-1.0-INRIA-2004": "Q Public License 1.0 - INRIA 2004 variant",
        radvd: "radvd License",
        Rdisc: "Rdisc License",
        "RHeCos-1.1": "Red Hat eCos Public License v1.1",
        "RPL-1.1": "Reciprocal Public License 1.1",
        "RPL-1.5": "Reciprocal Public License 1.5",
        "RPSL-1.0": "RealNetworks Public Source License v1.0",
        "RSA-MD": "RSA Message-Digest License",
        RSCPL: "Ricoh Source Code Public License",
        Ruby: "Ruby License",
        "Ruby-pty": "Ruby pty extension license",
        "SAX-PD": "Sax Public Domain Notice",
        "SAX-PD-2.0": "Sax Public Domain Notice 2.0",
        Saxpath: "Saxpath License",
        SCEA: "SCEA Shared Source License",
        SchemeReport: "Scheme Language Report License",
        Sendmail: "Sendmail License",
        "Sendmail-8.23": "Sendmail License 8.23",
        "Sendmail-Open-Source-1.1": "Sendmail Open Source License v1.1",
        "SGI-B-1.0": "SGI Free Software License B v1.0",
        "SGI-B-1.1": "SGI Free Software License B v1.1",
        "SGI-B-2.0": "SGI Free Software License B v2.0",
        "SGI-OpenGL": "SGI OpenGL License",
        "SGMLUG-PM": "SGMLUG Parser Materials License",
        SGP4: "SGP4 Permission Notice",
        "SHL-0.5": "Solderpad Hardware License v0.5",
        "SHL-0.51": "Solderpad Hardware License, Version 0.51",
        "SimPL-2.0": "Simple Public License 2.0",
        SISSL: "Sun Industry Standards Source License v1.1",
        "SISSL-1.2": "Sun Industry Standards Source License v1.2",
        SL: "SL License",
        Sleepycat: "Sleepycat License",
        "SMAIL-GPL": "SMAIL General Public License",
        SMLNJ: "Standard ML of New Jersey License",
        SMPPL: "Secure Messaging Protocol Public License",
        SNIA: "SNIA Public License 1.1",
        snprintf: "snprintf License",
        SOFA: "SOFA Software License",
        softSurfer: "softSurfer License",
        Soundex: "Soundex License",
        "Spencer-86": "Spencer License 86",
        "Spencer-94": "Spencer License 94",
        "Spencer-99": "Spencer License 99",
        "SPL-1.0": "Sun Public License v1.0",
        "ssh-keyscan": "ssh-keyscan License",
        "SSH-OpenSSH": "SSH OpenSSH license",
        "SSH-short": "SSH short notice",
        "SSLeay-standalone": "SSLeay License - standalone",
        "SSPL-1.0": "Server Side Public License, v 1",
        "StandardML-NJ": "Standard ML of New Jersey License",
        "SugarCRM-1.1.3": "SugarCRM Public License v1.1.3",
        "SUL-1.0": "Sustainable Use License v1.0",
        "Sun-PPP": "Sun PPP License",
        "Sun-PPP-2000": "Sun PPP License (2000)",
        SunPro: "SunPro License",
        SWL: "Scheme Widget Library (SWL) Software License Agreement",
        swrule: "swrule License",
        Symlinks: "Symlinks License",
        "TAPR-OHL-1.0": "TAPR Open Hardware License v1.0",
        TCL: "TCL/TK License",
        "TCP-wrappers": "TCP Wrappers License",
        TekHVC: "TekHVC License",
        TermReadKey: "TermReadKey License",
        "TGPPL-1.0": "Transitive Grace Period Public Licence 1.0",
        ThirdEye: "ThirdEye License",
        threeparttable: "threeparttable License",
        TMate: "TMate Open Source License",
        "TORQUE-1.1": "TORQUE v2.5+ Software License v1.1",
        TOSL: "Trusster Open Source License",
        TPDL: "Time::ParseDate License",
        "TPL-1.0": "THOR Public License 1.0",
        TrustedQSL: "TrustedQSL License",
        TTWL: "Text-Tabs+Wrap License",
        TTYP0: "TTYP0 License",
        "TU-Berlin-1.0": "Technische Universitaet Berlin License 1.0",
        "TU-Berlin-2.0": "Technische Universitaet Berlin License 2.0",
        "Ubuntu-font-1.0": "Ubuntu Font Licence v1.0",
        UCAR: "UCAR License",
        "UCL-1.0": "Upstream Compatibility License v1.0",
        ulem: "ulem License",
        "UMich-Merit": "Michigan/Merit Networks License",
        "Unicode-3.0": "Unicode License v3",
        "Unicode-DFS-2015": "Unicode License Agreement - Data Files and Software (2015)",
        "Unicode-DFS-2016": "Unicode License Agreement - Data Files and Software (2016)",
        "Unicode-TOU": "Unicode Terms of Use",
        UnixCrypt: "UnixCrypt License",
        Unlicense: "The Unlicense",
        "Unlicense-libtelnet": "Unlicense - libtelnet variant",
        "Unlicense-libwhirlpool": "Unlicense - libwhirlpool variant",
        UnRAR: "UnRAR License",
        "UPL-1.0": "Universal Permissive License v1.0",
        "URT-RLE": "Utah Raster Toolkit Run Length Encoded License",
        Vim: "Vim License",
        "Vixie-Cron": "Vixie Cron License",
        VOSTROM: "VOSTROM Public License for Open Source",
        "VSL-1.0": "Vovida Software License v1.0",
        W3C: "W3C Software Notice and License (2002-12-31)",
        "W3C-19980720": "W3C Software Notice and License (1998-07-20)",
        "W3C-20150513": "W3C Software Notice and Document License (2015-05-13)",
        w3m: "w3m License",
        "Watcom-1.0": "Sybase Open Watcom Public License 1.0",
        "Widget-Workshop": "Widget Workshop License",
        WordNet: "WordNet License",
        Wsuipa: "Wsuipa License",
        WTFNMFPL: "Do What The F*ck You Want To But It's Not My Fault Public License",
        WTFPL: "Do What The F*ck You Want To Public License",
        wwl: "WWL License",
        wxWindows: "wxWindows Library License",
        X11: "X11 License",
        "X11-distribute-modifications-variant": "X11 License Distribution Modification Variant",
        "X11-no-permit-persons": "X11 no permit persons clause",
        "X11-swapped": "X11 swapped final paragraphs",
        "Xdebug-1.03": "Xdebug License v 1.03",
        Xerox: "Xerox License",
        Xfig: "Xfig License",
        "XFree86-1.1": "XFree86 License 1.1",
        xinetd: "xinetd License",
        "xkeyboard-config-Zinoviev": "xkeyboard-config Zinoviev License",
        xlock: "xlock License",
        Xnet: "X.Net License",
        xpp: "XPP License",
        XSkat: "XSkat License",
        xzoom: "xzoom License",
        "YPL-1.0": "Yahoo! Public License v1.0",
        "YPL-1.1": "Yahoo! Public License v1.1",
        Zed: "Zed License",
        Zeeff: "Zeeff License",
        "Zend-2.0": "Zend License v2.0",
        "Zimbra-1.3": "Zimbra Public License v1.3",
        "Zimbra-1.4": "Zimbra Public License v1.4",
        Zlib: "zlib License",
        "zlib-acknowledgement": "zlib/libpng License with Acknowledgement",
        "ZPL-1.1": "Zope Public License 1.1",
        "ZPL-2.0": "Zope Public License 2.0",
        "ZPL-2.1": "Zope Public License 2.1",
        "389-exception": "389 Directory Server Exception",
        "Asterisk-exception": "Asterisk exception",
        "Asterisk-linking-protocols-exception": "Asterisk linking protocols exception",
        "Autoconf-exception-2.0": "Autoconf exception 2.0",
        "Autoconf-exception-3.0": "Autoconf exception 3.0",
        "Autoconf-exception-generic": "Autoconf generic exception",
        "Autoconf-exception-generic-3.0": "Autoconf generic exception for GPL-3.0",
        "Autoconf-exception-macro": "Autoconf macro exception",
        "Bison-exception-1.24": "Bison exception 1.24",
        "Bison-exception-2.2": "Bison exception 2.2",
        "Bootloader-exception": "Bootloader Distribution Exception",
        "CGAL-linking-exception": "CGAL Linking Exception",
        "Classpath-exception-2.0": "Classpath exception 2.0",
        "Classpath-exception-2.0-short": "Classpath exception 2.0 - short",
        "CLISP-exception-2.0": "CLISP exception 2.0",
        "cryptsetup-OpenSSL-exception": "cryptsetup OpenSSL exception",
        "Digia-Qt-LGPL-exception-1.1": "Digia Qt LGPL Exception version 1.1",
        "DigiRule-FOSS-exception": "DigiRule FOSS License Exception",
        "eCos-exception-2.0": "eCos exception 2.0",
        "erlang-otp-linking-exception": "Erlang/OTP Linking Exception",
        "Fawkes-Runtime-exception": "Fawkes Runtime Exception",
        "FLTK-exception": "FLTK exception",
        "fmt-exception": "fmt exception",
        "Font-exception-2.0": "Font exception 2.0",
        "freertos-exception-2.0": "FreeRTOS Exception 2.0",
        "GCC-exception-2.0": "GCC Runtime Library exception 2.0",
        "GCC-exception-2.0-note": "GCC    Runtime Library exception 2.0 - note variant",
        "GCC-exception-3.1": "GCC Runtime Library exception 3.1",
        "Gmsh-exception": "Gmsh exception",
        "GNAT-exception": "GNAT exception",
        "GNOME-examples-exception": "GNOME examples exception",
        "GNU-compiler-exception": "GNU Compiler Exception",
        "gnu-javamail-exception": "GNU JavaMail exception",
        "GPL-3.0-389-ds-base-exception": "GPL-3.0 389 DS Base Exception",
        "GPL-3.0-interface-exception": "GPL-3.0 Interface Exception",
        "GPL-3.0-linking-exception": "GPL-3.0 Linking Exception",
        "GPL-3.0-linking-source-exception": "GPL-3.0 Linking Exception (with Corresponding Source)",
        "GPL-CC-1.0": "GPL Cooperation Commitment 1.0",
        "GStreamer-exception-2005": "GStreamer Exception (2005)",
        "GStreamer-exception-2008": "GStreamer Exception (2008)",
        "harbour-exception": "harbour exception",
        "i2p-gpl-java-exception": "i2p GPL+Java Exception",
        "Independent-modules-exception": "Independent Module Linking exception",
        "KiCad-libraries-exception": "KiCad Libraries Exception",
        "kvirc-openssl-exception": "kvirc OpenSSL Exception",
        "LGPL-3.0-linking-exception": "LGPL-3.0 Linking Exception",
        "libpri-OpenH323-exception": "libpri OpenH323 exception",
        "Libtool-exception": "Libtool Exception",
        "Linux-syscall-note": "Linux Syscall Note",
        LLGPL: "LLGPL Preamble",
        "LLVM-exception": "LLVM Exception",
        "LZMA-exception": "LZMA exception",
        "mif-exception": "Macros and Inline Functions Exception",
        "mxml-exception": "mxml Exception",
        "Nokia-Qt-exception-1.1": "Nokia Qt LGPL exception 1.1",
        "OCaml-LGPL-linking-exception": "OCaml LGPL Linking Exception",
        "OCCT-exception-1.0": "Open CASCADE Exception 1.0",
        "OpenJDK-assembly-exception-1.0": "OpenJDK Assembly exception 1.0",
        "openvpn-openssl-exception": "OpenVPN OpenSSL Exception",
        "PCRE2-exception": "PCRE2 exception",
        "polyparse-exception": "Polyparse Exception",
        "PS-or-PDF-font-exception-20170817": "PS/PDF font exception (2017-08-17)",
        "QPL-1.0-INRIA-2004-exception": "INRIA QPL 1.0 2004 variant exception",
        "Qt-GPL-exception-1.0": "Qt GPL exception 1.0",
        "Qt-LGPL-exception-1.1": "Qt LGPL exception 1.1",
        "Qwt-exception-1.0": "Qwt exception 1.0",
        "romic-exception": "Romic Exception",
        "RRDtool-FLOSS-exception-2.0": "RRDtool FLOSS exception 2.0",
        "rsync-linking-exception": "rsync Linking Exception",
        "SANE-exception": "SANE Exception",
        "SHL-2.0": "Solderpad Hardware License v2.0",
        "SHL-2.1": "Solderpad Hardware License v2.1",
        "Simple-Library-Usage-exception": "Simple Library Usage Exception",
        "sqlitestudio-OpenSSL-exception": "sqlitestudio OpenSSL exception",
        "stunnel-exception": "stunnel Exception",
        "SWI-exception": "SWI exception",
        "Swift-exception": "Swift Exception",
        "Texinfo-exception": "Texinfo exception",
        "u-boot-exception-2.0": "U-Boot exception 2.0",
        "UBDL-exception": "Unmodified Binary Distribution exception",
        "Universal-FOSS-exception-1.0": "Universal FOSS Exception, Version 1.0",
        "vsftpd-openssl-exception": "vsftpd OpenSSL exception",
        "WxWindows-exception-3.1": "WxWindows Library Exception 3.1",
        "x11vnc-openssl-exception": "x11vnc OpenSSL Exception"
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@cyclonedx/cyclonedx-library/10.0.0/122db718be7f6ee5339161e246575a9f3081f79a125263f84d67ad9e8ca66f80/node_modules/@cyclonedx/cyclonedx-library/dist.node/spdx.js
var require_spdx = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@cyclonedx/cyclonedx-library/10.0.0/122db718be7f6ee5339161e246575a9f3081f79a125263f84d67ad9e8ca66f80/node_modules/@cyclonedx/cyclonedx-library/dist.node/spdx.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.isSupportedSpdxId = isSupportedSpdxId2;
    exports2.fixupSpdxId = fixupSpdxId2;
    var spdx_SNAPSHOT_schema_json_1 = require_spdx_SNAPSHOT_schema();
    var spdxIds = new Set(spdx_SNAPSHOT_schema_json_1.enum);
    var spdxLowerToActual = Object.freeze(Object.fromEntries(spdx_SNAPSHOT_schema_json_1.enum.map((spdxId) => [spdxId.toLowerCase(), spdxId])));
    function isSupportedSpdxId2(value) {
      return spdxIds.has(value);
    }
    function fixupSpdxId2(value) {
      return typeof value === "string" && value.length > 0 ? spdxLowerToActual[value.toLowerCase()] : void 0;
    }
  }
});

// ../deps/compliance/sbom/lib/license.js
function classifyLicense(license) {
  const fixedId = (0, import_SPDX.fixupSpdxId)(license);
  if (fixedId != null && (0, import_SPDX.isSupportedSpdxId)(fixedId)) {
    return { license: { id: fixedId } };
  }
  if (isSpdxExpression(license)) {
    return { expression: license };
  }
  return { license: { name: license } };
}
function isSpdxExpression(license) {
  return /\b(?:AND|OR|WITH)\b/.test(license);
}
var import_SPDX;
var init_license = __esm({
  "../deps/compliance/sbom/lib/license.js"() {
    "use strict";
    import_SPDX = __toESM(require_spdx(), 1);
  }
});

// ../deps/compliance/sbom/lib/serializeCycloneDx.js
import crypto9 from "node:crypto";
function serializeCycloneDx(result2, opts2) {
  const { rootComponent, components, relationships } = result2;
  const rootBomRef = `pkg:npm/${encodePurlName(rootComponent.name)}@${rootComponent.version}`;
  const bomComponents = components.map((comp) => {
    const { group, name } = splitScopedName(comp.name);
    const cdxComp = {
      type: "library",
      name,
      version: comp.version,
      purl: comp.purl,
      "bom-ref": comp.purl
    };
    if (group) {
      cdxComp.group = group;
    }
    if (comp.description) {
      cdxComp.description = comp.description;
    }
    if (comp.author) {
      cdxComp.authors = [{ name: comp.author }];
    }
    if (comp.license) {
      cdxComp.licenses = [classifyLicense(comp.license)];
    }
    const externalRefs = [];
    if (comp.tarballUrl) {
      const hashes = integrityToHashes(comp.integrity);
      const distRef = {
        type: "distribution",
        url: comp.tarballUrl
      };
      if (hashes.length > 0) {
        distRef.hashes = hashes.map((h2) => ({
          alg: h2.algorithm,
          content: h2.digest
        }));
      }
      externalRefs.push(distRef);
    }
    if (comp.homepage) {
      externalRefs.push({
        type: "website",
        url: comp.homepage
      });
    }
    if (comp.repository) {
      externalRefs.push({
        type: "vcs",
        url: comp.repository
      });
    }
    if (externalRefs.length > 0) {
      cdxComp.externalReferences = externalRefs;
    }
    return cdxComp;
  });
  const depMap = /* @__PURE__ */ new Map();
  depMap.set(rootBomRef, []);
  for (const comp of components) {
    depMap.set(comp.purl, []);
  }
  for (const rel of relationships) {
    const deps = depMap.get(rel.from);
    if (deps) {
      deps.push(rel.to);
    }
  }
  const bomDependencies = Array.from(depMap.entries()).map(([ref, dependsOn]) => ({
    ref,
    dependsOn: [...new Set(dependsOn)]
  }));
  const { group: rootGroup, name: rootName } = splitScopedName(rootComponent.name);
  const rootCdxComponent = {
    type: rootComponent.type,
    name: rootName,
    version: rootComponent.version,
    purl: rootBomRef,
    "bom-ref": rootBomRef
  };
  if (rootGroup) {
    rootCdxComponent.group = rootGroup;
  }
  if (rootComponent.author) {
    rootCdxComponent.authors = [{ name: rootComponent.author }];
  }
  if (rootComponent.license) {
    rootCdxComponent.licenses = [classifyLicense(rootComponent.license)];
  }
  if (rootComponent.description) {
    rootCdxComponent.description = rootComponent.description;
  }
  if (rootComponent.repository) {
    rootCdxComponent.externalReferences = [{
      type: "vcs",
      url: rootComponent.repository
    }];
  }
  const toolComponents = [];
  if (opts2?.pnpmVersion) {
    toolComponents.push({
      type: "application",
      name: "pnpm",
      version: opts2.pnpmVersion
    });
  }
  const metadata = {
    timestamp: (/* @__PURE__ */ new Date()).toISOString(),
    lifecycles: [{ phase: opts2?.lockfileOnly ? "pre-build" : "build" }],
    tools: { components: toolComponents },
    component: rootCdxComponent
  };
  if (opts2?.sbomAuthors?.length) {
    metadata.authors = opts2.sbomAuthors.map((name) => ({ name }));
  }
  if (opts2?.sbomSupplier) {
    metadata.supplier = { name: opts2.sbomSupplier };
  }
  const version2 = opts2?.specVersion || "1.7";
  const bom = {
    $schema: `http://cyclonedx.org/schema/bom-${version2}.schema.json`,
    bomFormat: "CycloneDX",
    specVersion: version2,
    serialNumber: `urn:uuid:${crypto9.randomUUID()}`,
    version: 1,
    metadata,
    components: bomComponents,
    dependencies: bomDependencies
  };
  return JSON.stringify(bom, null, 2);
}
function splitScopedName(fullName) {
  if (fullName.startsWith("@")) {
    const slashIdx = fullName.indexOf("/");
    if (slashIdx > 0) {
      return { group: fullName.slice(0, slashIdx), name: fullName.slice(slashIdx + 1) };
    }
  }
  return { group: void 0, name: fullName };
}
var init_serializeCycloneDx = __esm({
  "../deps/compliance/sbom/lib/serializeCycloneDx.js"() {
    "use strict";
    init_integrity();
    init_license();
    init_purl();
  }
});

// ../deps/compliance/sbom/lib/serializeSpdx.js
import crypto10 from "node:crypto";
function serializeSpdx(result2) {
  const { rootComponent, components, relationships } = result2;
  const rootSpdxId = "SPDXRef-RootPackage";
  const documentNamespace = `https://spdx.org/spdxdocs/${sanitizeSpdxId(rootComponent.name)}-${rootComponent.version}-${crypto10.randomUUID()}`;
  const rootPurl = `pkg:npm/${encodePurlName(rootComponent.name)}@${rootComponent.version}`;
  const rootPackage = {
    SPDXID: rootSpdxId,
    name: rootComponent.name,
    versionInfo: rootComponent.version,
    downloadLocation: "NOASSERTION",
    filesAnalyzed: false,
    primaryPackagePurpose: rootComponent.type === "application" ? "APPLICATION" : "LIBRARY",
    externalRefs: [
      {
        referenceCategory: "PACKAGE-MANAGER",
        referenceType: "purl",
        referenceLocator: rootPurl
      }
    ]
  };
  if (rootComponent.license) {
    rootPackage.licenseConcluded = rootComponent.license;
    rootPackage.licenseDeclared = rootComponent.license;
  } else {
    rootPackage.licenseConcluded = "NOASSERTION";
    rootPackage.licenseDeclared = "NOASSERTION";
  }
  rootPackage.copyrightText = "NOASSERTION";
  if (rootComponent.description) {
    rootPackage.description = rootComponent.description;
  }
  if (rootComponent.author) {
    rootPackage.supplier = `Person: ${rootComponent.author}`;
  }
  if (rootComponent.repository) {
    rootPackage.homepage = rootComponent.repository;
  }
  const purlToSpdxId = /* @__PURE__ */ new Map();
  purlToSpdxId.set(rootPurl, rootSpdxId);
  const spdxPackages = components.map((comp, idx) => {
    const spdxId = `SPDXRef-Package-${sanitizeSpdxId(comp.name)}-${sanitizeSpdxId(comp.version)}-${idx}`;
    purlToSpdxId.set(comp.purl, spdxId);
    const pkg = {
      SPDXID: spdxId,
      name: comp.name,
      versionInfo: comp.version,
      downloadLocation: comp.tarballUrl ?? "NOASSERTION",
      filesAnalyzed: false,
      externalRefs: [
        {
          referenceCategory: "PACKAGE-MANAGER",
          referenceType: "purl",
          referenceLocator: comp.purl
        }
      ]
    };
    if (comp.license) {
      pkg.licenseConcluded = comp.license;
      pkg.licenseDeclared = comp.license;
    } else {
      pkg.licenseConcluded = "NOASSERTION";
      pkg.licenseDeclared = "NOASSERTION";
    }
    pkg.copyrightText = "NOASSERTION";
    if (comp.description) {
      pkg.description = comp.description;
    }
    if (comp.homepage) {
      pkg.homepage = comp.homepage;
    }
    if (comp.author) {
      pkg.supplier = `Person: ${comp.author}`;
    }
    const hashes = integrityToHashes(comp.integrity);
    if (hashes.length > 0) {
      pkg.checksums = hashes.map((h2) => ({
        algorithm: spdxHashAlgorithm(h2.algorithm),
        checksumValue: h2.digest
      }));
    }
    return pkg;
  });
  const spdxRelationships = [
    {
      spdxElementId: "SPDXRef-DOCUMENT",
      relatedSpdxElement: rootSpdxId,
      relationshipType: "DESCRIBES"
    }
  ];
  const seenRelationships = /* @__PURE__ */ new Set();
  for (const rel of relationships) {
    const fromId = purlToSpdxId.get(rel.from);
    const toId = purlToSpdxId.get(rel.to);
    if (fromId && toId) {
      const key = `${fromId}|${toId}`;
      if (seenRelationships.has(key))
        continue;
      seenRelationships.add(key);
      spdxRelationships.push({
        spdxElementId: fromId,
        relatedSpdxElement: toId,
        relationshipType: "DEPENDS_ON"
      });
    }
  }
  const doc = {
    spdxVersion: "SPDX-2.3",
    dataLicense: "CC0-1.0",
    SPDXID: "SPDXRef-DOCUMENT",
    name: rootComponent.name,
    documentNamespace,
    creationInfo: {
      created: (/* @__PURE__ */ new Date()).toISOString(),
      creators: [
        "Tool: pnpm"
      ]
    },
    packages: [rootPackage, ...spdxPackages],
    relationships: spdxRelationships
  };
  return JSON.stringify(doc, null, 2);
}
function sanitizeSpdxId(value) {
  return value.replace(/[^a-z0-9.-]/gi, "-");
}
function spdxHashAlgorithm(algo) {
  switch (algo) {
    case "SHA-1":
      return "SHA1";
    case "SHA-256":
      return "SHA256";
    case "SHA-384":
      return "SHA384";
    case "SHA-512":
      return "SHA512";
    default:
      return algo;
  }
}
var init_serializeSpdx = __esm({
  "../deps/compliance/sbom/lib/serializeSpdx.js"() {
    "use strict";
    init_integrity();
    init_purl();
  }
});

// ../deps/compliance/sbom/lib/index.js
var init_lib151 = __esm({
  "../deps/compliance/sbom/lib/index.js"() {
    "use strict";
    init_collectComponents();
    init_integrity();
    init_purl();
    init_serializeCycloneDx();
    init_serializeSpdx();
  }
});

// ../deps/compliance/commands/lib/sbom/sbom.js
var sbom_exports = {};
__export(sbom_exports, {
  cliOptionsTypes: () => cliOptionsTypes22,
  commandNames: () => commandNames23,
  handler: () => handler23,
  help: () => help23,
  rcOptionsTypes: () => rcOptionsTypes23,
  shorthands: () => shorthands7
});
function rcOptionsTypes23() {
  return pick_default(["dev", "global-dir", "global", "optional", "production", "store-dir"], types2);
}
function help23() {
  return renderHelp({
    description: "Generate a Software Bill of Materials (SBOM) for the project.",
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: "The SBOM output format (required)",
            name: "--sbom-format <cyclonedx|spdx>"
          },
          {
            description: "The component type for the root package (default: library)",
            name: "--sbom-type <library|application>"
          },
          {
            description: "The CycloneDX specification version (1.5, 1.6, or 1.7; default: 1.7)",
            name: "--sbom-spec-version <version>"
          },
          {
            description: "Only use lockfile data (skip reading from the store)",
            name: "--lockfile-only"
          },
          {
            description: "Comma-separated list of SBOM authors (CycloneDX metadata.authors)",
            name: "--sbom-authors <names>"
          },
          {
            description: "SBOM supplier name (CycloneDX metadata.supplier)",
            name: "--sbom-supplier <name>"
          },
          {
            description: 'Only include "dependencies" and "optionalDependencies"',
            name: "--prod",
            shortAlias: "-P"
          },
          {
            description: 'Only include "devDependencies"',
            name: "--dev",
            shortAlias: "-D"
          },
          {
            description: `Don't include "optionalDependencies"`,
            name: "--no-optional"
          }
        ]
      },
      FILTERING
    ],
    url: docsUrl("sbom"),
    usages: [
      "pnpm sbom --sbom-format cyclonedx",
      "pnpm sbom --sbom-format spdx",
      "pnpm sbom --sbom-format cyclonedx --lockfile-only",
      "pnpm sbom --sbom-format spdx --prod"
    ]
  });
}
async function handler23(opts2, _params = []) {
  if (!opts2.sbomFormat) {
    throw new PnpmError("SBOM_NO_FORMAT", "The --sbom-format option is required. Use --sbom-format cyclonedx or --sbom-format spdx.", { hint: help23() });
  }
  const format2 = opts2.sbomFormat.toLowerCase();
  if (format2 !== "cyclonedx" && format2 !== "spdx") {
    throw new PnpmError("SBOM_INVALID_FORMAT", `Invalid SBOM format "${opts2.sbomFormat}". Use "cyclonedx" or "spdx".`);
  }
  const sbomType = validateSbomType(opts2.sbomType);
  const sbomSpecVersion = validateSbomSpecVersion(opts2.sbomSpecVersion, format2);
  const lockfile = await readWantedLockfile(opts2.lockfileDir ?? opts2.dir, {
    ignoreIncompatible: true
  });
  if (lockfile == null) {
    throw new PnpmError("SBOM_NO_LOCKFILE", `No ${WANTED_LOCKFILE} found: Cannot generate SBOM without a lockfile`);
  }
  const include = {
    dependencies: opts2.production !== false,
    devDependencies: opts2.dev !== false,
    optionalDependencies: opts2.optional !== false
  };
  const manifest = await readProjectManifestOnly2(opts2.dir);
  const rootName = manifest.name ?? "unknown";
  const rootVersion = manifest.version ?? "0.0.0";
  const rootLicenseInfo = await resolveLicenseFromDir({ manifest, dir: opts2.dir });
  const rootLicense = rootLicenseInfo && rootLicenseInfo.name !== "Unknown" && (!rootLicenseInfo.licenseFile || isSpdxLicenseExpression(rootLicenseInfo.name)) ? rootLicenseInfo.name : void 0;
  const rootAuthor = typeof manifest.author === "string" ? manifest.author : manifest.author?.name;
  const rootRepository = typeof manifest.repository === "string" ? manifest.repository : manifest.repository?.url;
  const includedImporterIds = opts2.selectedProjectsGraph ? Object.keys(opts2.selectedProjectsGraph).map((p) => getLockfileImporterId(opts2.lockfileDir ?? opts2.dir, p)) : void 0;
  let storeDir;
  if (!opts2.lockfileOnly) {
    storeDir = await getStorePath({
      pkgRoot: opts2.dir,
      storePath: opts2.storeDir,
      pnpmHomeDir: opts2.pnpmHomeDir
    });
  }
  const result2 = await collectSbomComponents({
    lockfile,
    rootName,
    rootVersion,
    rootLicense,
    rootDescription: manifest.description,
    rootAuthor,
    rootRepository,
    sbomType,
    include,
    registries: opts2.registries,
    lockfileDir: opts2.lockfileDir ?? opts2.dir,
    includedImporterIds,
    lockfileOnly: opts2.lockfileOnly,
    storeDir,
    virtualStoreDirMaxLength: opts2.virtualStoreDirMaxLength
  });
  const output = format2 === "cyclonedx" ? serializeCycloneDx(result2, {
    pnpmVersion: packageManager.version,
    lockfileOnly: opts2.lockfileOnly,
    sbomAuthors: opts2.sbomAuthors?.split(",").map((s) => s.trim()).filter(Boolean),
    sbomSupplier: opts2.sbomSupplier,
    specVersion: sbomSpecVersion
  }) : serializeSpdx(result2);
  return { output, exitCode: 0 };
}
function validateSbomType(value) {
  if (!value || value === "library")
    return "library";
  if (value === "application")
    return "application";
  throw new PnpmError("SBOM_INVALID_TYPE", `Invalid SBOM type "${value}". Use "library" or "application".`);
}
function validateSbomSpecVersion(value, format2) {
  if (value == null)
    return void 0;
  if (format2 !== "cyclonedx") {
    throw new PnpmError("SBOM_SPEC_VERSION_UNSUPPORTED_FORMAT", "The --sbom-spec-version option is only supported with --sbom-format cyclonedx.");
  }
  const normalized = value.trim();
  if (!SUPPORTED_CYCLONEDX_SPEC_VERSIONS.includes(normalized)) {
    throw new PnpmError("SBOM_INVALID_SPEC_VERSION", `Invalid CycloneDX spec version "${value}". Supported versions: ${SUPPORTED_CYCLONEDX_SPEC_VERSIONS.join(", ")}.`);
  }
  return normalized;
}
var cliOptionsTypes22, shorthands7, commandNames23, SUPPORTED_CYCLONEDX_SPEC_VERSIONS;
var init_sbom = __esm({
  "../deps/compliance/commands/lib/sbom/sbom.js"() {
    "use strict";
    init_lib92();
    init_lib5();
    init_lib29();
    init_lib61();
    init_lib();
    init_lib148();
    init_lib151();
    init_lib2();
    init_lib78();
    init_lib89();
    init_es();
    init_lib63();
    cliOptionsTypes22 = () => ({
      ...rcOptionsTypes23(),
      recursive: Boolean,
      "sbom-format": String,
      "sbom-type": String,
      "sbom-spec-version": String,
      "sbom-authors": String,
      "sbom-supplier": String,
      "lockfile-only": Boolean
    });
    shorthands7 = {
      D: "--dev",
      P: "--production"
    };
    commandNames23 = ["sbom"];
    SUPPORTED_CYCLONEDX_SPEC_VERSIONS = ["1.5", "1.6", "1.7"];
  }
});

// ../deps/compliance/commands/lib/sbom/index.js
var init_sbom2 = __esm({
  "../deps/compliance/commands/lib/sbom/index.js"() {
    "use strict";
    init_sbom();
  }
});

// ../deps/compliance/commands/lib/index.js
var init_lib152 = __esm({
  "../deps/compliance/commands/lib/index.js"() {
    "use strict";
    init_audit2();
    init_licenses3();
    init_sbom2();
  }
});

// ../deps/inspection/commands/lib/fetchPackageInfo.js
async function fetchPackageInfo(opts2, packageSpec) {
  let parsed;
  try {
    parsed = (0, import_npm_package_arg4.default)(packageSpec);
  } catch {
    throw new PnpmError("INVALID_PACKAGE_NAME", `Invalid package name: "${packageSpec}"`);
  }
  if (!parsed.registry) {
    throw new PnpmError("INVALID_PACKAGE_NAME", `Invalid package name: "${packageSpec}". This command only supports registry packages.`);
  }
  const subSpec = parsed.type === "alias" ? parsed.subSpec : parsed;
  const packageName = subSpec?.name;
  if (!packageName) {
    throw new PnpmError("INVALID_PACKAGE_NAME", `Invalid package name: "${packageSpec}"`);
  }
  const specType = subSpec?.type ?? "tag";
  const spec = {
    name: packageName,
    fetchSpec: subSpec?.fetchSpec ?? "latest",
    type: specType
  };
  const registry = pickRegistryForPackage(opts2.registries, packageName);
  const fetchFromRegistry = createFetchFromRegistry(opts2);
  const getAuthHeader = createGetAuthHeaderByURI(opts2.configByUri ?? {}, opts2.registries?.default);
  const fetchResult = await fetchMetadataFromFromRegistry({
    fetch: fetchFromRegistry,
    retry: {
      factor: opts2.fetchRetryFactor,
      maxTimeout: opts2.fetchRetryMaxtimeout,
      minTimeout: opts2.fetchRetryMintimeout,
      retries: opts2.fetchRetries
    },
    timeout: opts2.fetchTimeout ?? 6e4,
    fetchWarnTimeoutMs: 1e4
  }, packageName, {
    registry,
    authHeaderValue: getAuthHeader(registry),
    fullMetadata: true
  });
  if (fetchResult.notModified) {
    throw new PnpmError("UNEXPECTED_304", `Unexpected 304 response for ${packageName}`);
  }
  const { meta: metadata } = fetchResult;
  const data = pickPackageFromMeta(pickVersionByVersionRange, { preferredVersionSelectors: void 0 }, metadata, spec);
  if (!data) {
    throw new PnpmError("PACKAGE_NOT_FOUND", `No matching version found for ${packageName}@${spec.fetchSpec}`);
  }
  const versions = metadata.versions ? Object.keys(metadata.versions) : [];
  const depsCount = data.dependencies ? Object.keys(data.dependencies).length : 0;
  const distTags = metadata["dist-tags"];
  return {
    ...data,
    author: typeof data.author === "object" ? data.author.name : data.author,
    versions,
    versionsCount: versions.length > 0 ? versions.length : void 0,
    depsCount: depsCount > 0 ? depsCount : void 0,
    distTags,
    "dist-tags": distTags,
    time: metadata.time
  };
}
var import_npm_package_arg4;
var init_fetchPackageInfo = __esm({
  "../deps/inspection/commands/lib/fetchPackageInfo.js"() {
    "use strict";
    init_lib15();
    init_lib2();
    init_lib48();
    init_lib49();
    import_npm_package_arg4 = __toESM(require_npa(), 1);
    init_lib24();
  }
});

// ../deps/inspection/commands/lib/bugs/index.js
var bugs_exports = {};
__export(bugs_exports, {
  cliOptionsTypes: () => cliOptionsTypes23,
  commandNames: () => commandNames24,
  handler: () => handler24,
  help: () => help24,
  rcOptionsTypes: () => rcOptionsTypes24
});
function rcOptionsTypes24() {
  return pick_default(["registry"], types2);
}
function cliOptionsTypes23() {
  return rcOptionsTypes24();
}
function help24() {
  return renderHelp({
    description: "Opens the URL of the package's bug tracker in a browser.",
    url: docsUrl("bugs"),
    usages: ["pnpm bugs [<pkgname> [<pkgname> ...]]"]
  });
}
async function handler24(opts2, params) {
  const urls = params.length === 0 ? [await getBugsUrlFromCurrentProject(opts2)] : await Promise.all(params.map((spec) => getBugsUrlFromRegistry(opts2, spec)));
  for (const url7 of urls) {
    await (0, import_open2.default)(url7);
  }
}
async function getBugsUrlFromCurrentProject(opts2) {
  const manifest = await readProjectManifestOnly2(opts2.dir, {
    engineStrict: opts2.engineStrict,
    nodeVersion: opts2.nodeVersion,
    supportedArchitectures: opts2.supportedArchitectures
  });
  const url7 = pickBugsUrl({ bugs: manifest.bugs, repository: manifest.repository });
  if (!url7) {
    throw new PnpmError("NO_BUGS_URL", 'The current project does not have a bug tracker URL. Add a "bugs" or "repository" field to its manifest.');
  }
  return url7;
}
async function getBugsUrlFromRegistry(opts2, packageSpec) {
  const info = await fetchPackageInfo(opts2, packageSpec);
  const url7 = pickBugsUrl({ bugs: info.bugs, repository: info.repository });
  if (!url7) {
    throw new PnpmError("NO_BUGS_URL", `The package "${info.name}" does not have a bug tracker URL.`);
  }
  return url7;
}
function pickBugsUrl(manifest) {
  if (manifest.bugs) {
    const bugsUrl = typeof manifest.bugs === "string" ? manifest.bugs : manifest.bugs.url;
    if (bugsUrl && isHttpUrl(bugsUrl))
      return bugsUrl;
  }
  if (manifest.repository) {
    const repoUrl = typeof manifest.repository === "string" ? manifest.repository : manifest.repository.url;
    if (repoUrl)
      return repositoryToIssuesUrl(repoUrl);
  }
  return void 0;
}
function repositoryToIssuesUrl(rawUrl) {
  const hosted = import_hosted_git_info2.default.fromUrl(rawUrl);
  if (hosted != null) {
    const url7 = hosted.bugs();
    if (url7 && isHttpUrl(url7))
      return url7;
  }
  let parsed;
  try {
    parsed = new URL(rawUrl.replace(/^git\+/, ""));
  } catch {
    return void 0;
  }
  if (parsed.protocol !== "http:" && parsed.protocol !== "https:")
    return void 0;
  parsed.search = "";
  parsed.hash = "";
  parsed.pathname = parsed.pathname.replace(/\/+$/, "").replace(/\.git$/, "") + "/issues";
  return parsed.toString();
}
function isHttpUrl(value) {
  try {
    const { protocol } = new URL(value);
    return protocol === "http:" || protocol === "https:";
  } catch {
    return false;
  }
}
var import_hosted_git_info2, import_open2, commandNames24;
var init_bugs = __esm({
  "../deps/inspection/commands/lib/bugs/index.js"() {
    "use strict";
    init_lib29();
    init_lib61();
    init_lib2();
    import_hosted_git_info2 = __toESM(require_hosted_git_info2(), 1);
    import_open2 = __toESM(require_open(), 1);
    init_es();
    init_lib63();
    init_fetchPackageInfo();
    commandNames24 = ["bugs"];
  }
});

// ../deps/inspection/commands/lib/docs/index.js
var docs_exports = {};
__export(docs_exports, {
  cliOptionsTypes: () => cliOptionsTypes24,
  commandNames: () => commandNames25,
  handler: () => handler25,
  help: () => help25,
  rcOptionsTypes: () => rcOptionsTypes25
});
function rcOptionsTypes25() {
  return pick_default(["registry"], types2);
}
function cliOptionsTypes24() {
  return rcOptionsTypes25();
}
function help25() {
  return renderHelp({
    description: "Open the documentation of a package.",
    usages: [
      "pnpm docs <package-name>",
      "pnpm docs <package-name>@<version>",
      "pnpm home <package-name>"
    ]
  });
}
async function handler25(opts2, params) {
  const packageSpec = params[0];
  if (!packageSpec) {
    throw new PnpmError("MISSING_PACKAGE_NAME", "Package name is required. Usage: pnpm docs <package-name>");
  }
  const info = await fetchPackageInfo(opts2, packageSpec);
  const url7 = isHttpUrl2(info.homepage) ? info.homepage : `https://npmx.dev/package/${info.name}`;
  await (0, import_open3.default)(url7);
}
function isHttpUrl2(value) {
  if (typeof value !== "string" || value === "")
    return false;
  try {
    const { protocol } = new URL(value);
    return protocol === "http:" || protocol === "https:";
  } catch {
    return false;
  }
}
var import_open3, commandNames25;
var init_docs = __esm({
  "../deps/inspection/commands/lib/docs/index.js"() {
    "use strict";
    init_lib61();
    init_lib2();
    import_open3 = __toESM(require_open(), 1);
    init_es();
    init_lib63();
    init_fetchPackageInfo();
    commandNames25 = ["docs", "home"];
  }
});

// ../deps/inspection/commands/lib/listing/common.js
function computeInclude(opts2) {
  return {
    dependencies: opts2.production !== false,
    devDependencies: opts2.dev !== false,
    optionalDependencies: opts2.optional !== false
  };
}
function resolveFinders(opts2) {
  const finders = [];
  if (opts2.findBy) {
    for (const finderName of opts2.findBy) {
      if (opts2.finders?.[finderName] == null) {
        throw new PnpmError("FINDER_NOT_FOUND", `No finder with name ${finderName} is found`);
      }
      finders.push(opts2.finders[finderName]);
    }
  }
  return finders;
}
function determineReportAs(opts2) {
  return opts2.parseable ? "parseable" : opts2.json ? "json" : "tree";
}
var shorthands8, BASE_RC_OPTION_KEYS, SHARED_CLI_HELP_OPTIONS;
var init_common = __esm({
  "../deps/inspection/commands/lib/listing/common.js"() {
    "use strict";
    init_lib2();
    shorthands8 = {
      D: "--dev",
      P: "--production"
    };
    BASE_RC_OPTION_KEYS = [
      "dev",
      "global-dir",
      "global",
      "json",
      "long",
      "only",
      "optional",
      "parseable",
      "production"
    ];
    SHARED_CLI_HELP_OPTIONS = [
      {
        description: 'Perform command on every package in subdirectories or on every workspace package, when executed inside a workspace. For options that may be used with `-r`, see "pnpm help recursive"',
        name: "--recursive",
        shortAlias: "-r"
      },
      {
        description: "Show extended information",
        name: "--long"
      },
      {
        description: "Show parseable output instead of tree view",
        name: "--parseable"
      },
      {
        description: "Show information in JSON format",
        name: "--json"
      },
      {
        description: "List packages in the global install prefix instead of in the current project",
        name: "--global",
        shortAlias: "-g"
      },
      {
        description: "Display only the dependency graph for packages in `dependencies` and `optionalDependencies`",
        name: "--prod",
        shortAlias: "-P"
      },
      {
        description: "Display only the dependency graph for packages in `devDependencies`",
        name: "--dev",
        shortAlias: "-D"
      },
      {
        description: "Don't display packages from `optionalDependencies`",
        name: "--no-optional"
      }
    ];
  }
});

// ../deps/inspection/commands/lib/listing/recursive.js
import assert11 from "node:assert";
import util44 from "node:util";
async function listRecursive(pkgs, params, opts2) {
  const depth = opts2.depth ?? 0;
  if (opts2.lockfileDir) {
    return render2(pkgs.map((pkg) => pkg.rootDir), params, {
      ...opts2,
      alwaysPrintRootPackage: depth === -1,
      lockfileDir: opts2.lockfileDir
    });
  }
  const outputs = (await Promise.all(pkgs.map(async ({ rootDir }) => {
    try {
      return await render2([rootDir], params, {
        ...opts2,
        alwaysPrintRootPackage: depth === -1,
        lockfileDir: opts2.lockfileDir ?? rootDir
      });
    } catch (err) {
      assert11(util44.types.isNativeError(err));
      const errWithPrefix = Object.assign(err, {
        prefix: rootDir
      });
      import_logger87.logger.info(errWithPrefix);
      throw errWithPrefix;
    }
  }))).filter(Boolean);
  if (outputs.length === 0)
    return "";
  const joiner = typeof depth === "number" && depth > -1 ? "\n\n" : "\n";
  return outputs.join(joiner);
}
var import_logger87;
var init_recursive3 = __esm({
  "../deps/inspection/commands/lib/listing/recursive.js"() {
    "use strict";
    import_logger87 = __toESM(require_lib21(), 1);
    init_list();
  }
});

// ../deps/inspection/commands/lib/listing/list.js
var list_exports = {};
__export(list_exports, {
  EXCLUDE_PEERS_HELP: () => EXCLUDE_PEERS_HELP,
  cliOptionsTypes: () => cliOptionsTypes25,
  commandNames: () => commandNames26,
  handler: () => handler26,
  help: () => help26,
  rcOptionsTypes: () => rcOptionsTypes26,
  recursiveByDefault: () => recursiveByDefault6,
  render: () => render2,
  shorthands: () => shorthands8
});
function rcOptionsTypes26() {
  return pick_default([
    ...BASE_RC_OPTION_KEYS,
    "depth",
    "lockfile-only"
  ], types2);
}
function help26() {
  return renderHelp({
    aliases: ["list", "ls", "la", "ll"],
    description: "When run as ll or la, it shows extended information by default. All dependencies are printed by default. Search by patterns is supported. For example: pnpm ls babel-* eslint-*",
    descriptionLists: [
      {
        title: "Options",
        list: [
          ...SHARED_CLI_HELP_OPTIONS,
          {
            description: "Max display depth of the dependency tree",
            name: "--depth <number>"
          },
          {
            description: "Display only direct dependencies",
            name: "--depth 0"
          },
          {
            description: "Display only projects. Useful in a monorepo. `pnpm ls -r --depth -1` lists all projects in a monorepo",
            name: "--depth -1"
          },
          {
            description: "Display only dependencies that are also projects within the workspace",
            name: "--only-projects"
          },
          {
            description: "List packages from the lockfile only, without checking node_modules.",
            name: "--lockfile-only"
          },
          EXCLUDE_PEERS_HELP,
          OPTIONS.globalDir,
          ...UNIVERSAL_OPTIONS
        ]
      },
      FILTERING
    ],
    url: docsUrl("list"),
    usages: [
      "pnpm ls [<pkg> ...]"
    ]
  });
}
async function handler26(opts2, params) {
  const include = computeInclude(opts2);
  const depth = opts2.cliOptions?.["depth"] ?? 0;
  if (opts2.global && opts2.globalPkgDir) {
    if (depth > 0) {
      const allInstallDirs = findGlobalInstallDirs(opts2.globalPkgDir, []);
      if (allInstallDirs.length === 1) {
        return render2([allInstallDirs[0]], params, {
          ...opts2,
          depth,
          include,
          lockfileDir: allInstallDirs[0],
          checkWantedLockfileOnly: opts2.lockfileOnly,
          onlyProjects: opts2.cliOptions?.["only-projects"] ?? opts2.onlyProjects
        });
      }
      const matchingInstallDirs = findGlobalInstallDirs(opts2.globalPkgDir, params);
      if (matchingInstallDirs.length > 1 || matchingInstallDirs.length === 0 && allInstallDirs.length > 0) {
        throw new PnpmError("GLOBAL_LS_DEPTH_NOT_SUPPORTED", "Cannot list a merged dependency tree across multiple global packages. Each global package is installed in an isolated directory with its own lockfile, so transitive dependencies cannot be coherently merged. Filter to a single global package by its top-level name, or omit --depth.");
      }
      if (matchingInstallDirs.length === 1) {
        return render2([matchingInstallDirs[0]], [], {
          ...opts2,
          depth,
          include,
          lockfileDir: matchingInstallDirs[0],
          checkWantedLockfileOnly: opts2.lockfileOnly,
          onlyProjects: opts2.cliOptions?.["only-projects"] ?? opts2.onlyProjects
        });
      }
    }
    return listGlobalPackages(opts2.globalPkgDir, params, {
      long: opts2.long,
      reportAs: determineReportAs(opts2)
    });
  }
  if (opts2.recursive && opts2.selectedProjectsGraph != null) {
    const pkgs = Object.values(opts2.selectedProjectsGraph).map((wsPkg) => wsPkg.package);
    return listRecursive(pkgs, params, { ...opts2, depth, include, checkWantedLockfileOnly: opts2.lockfileOnly, onlyProjects: opts2.cliOptions?.["only-projects"] ?? opts2.onlyProjects });
  }
  return render2([opts2.dir], params, {
    ...opts2,
    depth,
    include,
    lockfileDir: opts2.lockfileDir ?? opts2.dir,
    checkWantedLockfileOnly: opts2.lockfileOnly,
    onlyProjects: opts2.cliOptions?.["only-projects"] ?? opts2.onlyProjects
  });
}
async function render2(prefixes, params, opts2) {
  const finders = resolveFinders(opts2);
  const listOpts = {
    alwaysPrintRootPackage: opts2.alwaysPrintRootPackage,
    depth: opts2.depth ?? 0,
    excludePeerDependencies: opts2.excludePeers,
    include: opts2.include,
    lockfileDir: opts2.lockfileDir,
    checkWantedLockfileOnly: opts2.checkWantedLockfileOnly,
    long: opts2.long,
    onlyProjects: opts2.onlyProjects,
    reportAs: determineReportAs(opts2),
    showExtraneous: false,
    showSummary: true,
    modulesDir: opts2.modulesDir,
    virtualStoreDirMaxLength: opts2.virtualStoreDirMaxLength,
    finders
  };
  return params.length > 0 || listOpts.finders.length > 0 ? listForPackages(params, prefixes, listOpts) : list(prefixes, listOpts);
}
var EXCLUDE_PEERS_HELP, cliOptionsTypes25, commandNames26, recursiveByDefault6;
var init_list = __esm({
  "../deps/inspection/commands/lib/listing/list.js"() {
    "use strict";
    init_lib92();
    init_lib29();
    init_lib61();
    init_lib128();
    init_lib2();
    init_lib129();
    init_es();
    init_lib63();
    init_common();
    init_recursive3();
    init_common();
    EXCLUDE_PEERS_HELP = {
      description: "Exclude peer dependencies",
      name: "--exclude-peers"
    };
    cliOptionsTypes25 = () => ({
      ...rcOptionsTypes26(),
      "exclude-peers": Boolean,
      "only-projects": Boolean,
      recursive: Boolean,
      "find-by": [String, Array]
    });
    commandNames26 = ["list", "ls"];
    recursiveByDefault6 = true;
  }
});

// ../deps/inspection/commands/lib/listing/ll.js
var ll_exports = {};
__export(ll_exports, {
  cliOptionsTypes: () => cliOptionsTypes26,
  commandNames: () => commandNames27,
  handler: () => handler27,
  help: () => help27,
  rcOptionsTypes: () => rcOptionsTypes27,
  recursiveByDefault: () => recursiveByDefault7
});
function cliOptionsTypes26() {
  return omit_default(["long"], cliOptionsTypes25());
}
async function handler27(opts2, params) {
  return handler26({ ...opts2, long: true }, params);
}
var commandNames27, recursiveByDefault7, rcOptionsTypes27, help27;
var init_ll = __esm({
  "../deps/inspection/commands/lib/listing/ll.js"() {
    "use strict";
    init_es();
    init_list();
    commandNames27 = ["ll", "la"];
    recursiveByDefault7 = true;
    rcOptionsTypes27 = rcOptionsTypes26;
    help27 = help26;
  }
});

// ../deps/inspection/commands/lib/listing/why.js
var why_exports = {};
__export(why_exports, {
  cliOptionsTypes: () => cliOptionsTypes27,
  commandNames: () => commandNames28,
  handler: () => handler28,
  help: () => help28,
  rcOptionsTypes: () => rcOptionsTypes28,
  recursiveByDefault: () => recursiveByDefault8,
  shorthands: () => shorthands8
});
function rcOptionsTypes28() {
  return pick_default([...BASE_RC_OPTION_KEYS, "depth"], types2);
}
function help28() {
  return renderHelp({
    description: `Shows the packages that depend on <pkg>
For example: pnpm why babel-* eslint-*`,
    descriptionLists: [
      {
        title: "Options",
        list: [
          ...SHARED_CLI_HELP_OPTIONS,
          {
            description: "Max display depth of the reverse dependency tree",
            name: "--depth <number>"
          },
          EXCLUDE_PEERS_HELP,
          OPTIONS.globalDir,
          ...UNIVERSAL_OPTIONS
        ]
      },
      FILTERING
    ],
    url: docsUrl("why"),
    usages: [
      "pnpm why <pkg> ..."
    ]
  });
}
async function handler28(opts2, params) {
  if (params.length === 0 && opts2.findBy == null) {
    throw new PnpmError("MISSING_PACKAGE_NAME", "`pnpm why` requires the package name or --find-by=<finder-name>");
  }
  const include = computeInclude(opts2);
  const finders = resolveFinders(opts2);
  const lockfileDir = opts2.lockfileDir ?? opts2.dir;
  const reportAs = determineReportAs(opts2);
  const depth = opts2.cliOptions?.["depth"];
  const projectPaths = opts2.recursive && opts2.selectedProjectsGraph ? Object.keys(opts2.selectedProjectsGraph) : [opts2.dir];
  return whyForPackages(params, projectPaths, {
    depth,
    include,
    long: opts2.long,
    lockfileDir,
    reportAs,
    modulesDir: opts2.modulesDir,
    checkWantedLockfileOnly: opts2.lockfileOnly,
    finders
  });
}
var cliOptionsTypes27, commandNames28, recursiveByDefault8;
var init_why = __esm({
  "../deps/inspection/commands/lib/listing/why.js"() {
    "use strict";
    init_lib92();
    init_lib29();
    init_lib61();
    init_lib128();
    init_lib2();
    init_es();
    init_lib63();
    init_common();
    init_list();
    init_common();
    cliOptionsTypes27 = () => ({
      ...rcOptionsTypes28(),
      "exclude-peers": Boolean,
      recursive: Boolean,
      "find-by": [String, Array]
    });
    commandNames28 = ["why"];
    recursiveByDefault8 = true;
  }
});

// ../deps/inspection/commands/lib/listing/index.js
var init_listing = __esm({
  "../deps/inspection/commands/lib/listing/index.js"() {
    "use strict";
    init_list();
    init_ll();
    init_why();
  }
});

// ../deps/inspection/commands/lib/outdated/utils.js
function sortBySemverChange(outdated1, outdated2) {
  return pkgPriority(outdated1) - pkgPriority(outdated2);
}
function pkgPriority(pkg) {
  switch (pkg.change) {
    case null:
      return 0;
    case "fix":
      return 1;
    case "feature":
      return 2;
    case "breaking":
      return 3;
    default:
      return 4;
  }
}
var NAME_COMPARATOR, DEFAULT_COMPARATORS;
var init_utils2 = __esm({
  "../deps/inspection/commands/lib/outdated/utils.js"() {
    "use strict";
    NAME_COMPARATOR = (o1, o2) => o1.packageName.localeCompare(o2.packageName);
    DEFAULT_COMPARATORS = [
      sortBySemverChange,
      NAME_COMPARATOR,
      (o1, o2) => o1.current && o2.current ? o1.current.localeCompare(o2.current) : 0
      // eslint-disable-line @typescript-eslint/explicit-module-boundary-types
    ];
  }
});

// ../deps/inspection/commands/lib/outdated/recursive.js
async function outdatedRecursive(pkgs, params, opts2) {
  const outdatedMap = {};
  const outdatedPackagesByProject = await outdatedDepsOfProjects(pkgs, params, {
    ...opts2,
    fullMetadata: opts2.long,
    ignoreDependencies: opts2.updateConfig?.ignoreDependencies,
    minimumReleaseAge: opts2.minimumReleaseAge,
    minimumReleaseAgeExclude: opts2.minimumReleaseAgeExclude,
    retry: {
      factor: opts2.fetchRetryFactor,
      maxTimeout: opts2.fetchRetryMaxtimeout,
      minTimeout: opts2.fetchRetryMintimeout,
      retries: opts2.fetchRetries
    },
    timeout: opts2.fetchTimeout
  });
  for (let i2 = 0; i2 < outdatedPackagesByProject.length; i2++) {
    const { rootDir, manifest } = pkgs[i2];
    for (const outdatedPkg of outdatedPackagesByProject[i2]) {
      const key = JSON.stringify([outdatedPkg.packageName, outdatedPkg.current, outdatedPkg.belongsTo]);
      if (!outdatedMap[key]) {
        outdatedMap[key] = { ...outdatedPkg, dependentPkgs: [] };
      }
      outdatedMap[key].dependentPkgs.push({ location: rootDir, manifest });
    }
  }
  let output;
  switch (opts2.format ?? "table") {
    case "table": {
      output = renderOutdatedTable(outdatedMap, opts2);
      break;
    }
    case "list": {
      output = renderOutdatedList(outdatedMap, opts2);
      break;
    }
    case "json": {
      output = renderOutdatedJSON(outdatedMap, opts2);
      break;
    }
    default: {
      throw new PnpmError("BAD_OUTDATED_FORMAT", `Unsupported format: ${opts2.format?.toString() ?? "undefined"}`);
    }
  }
  return {
    output,
    exitCode: isEmpty_default(outdatedMap) ? 0 : 1
  };
}
function renderOutdatedTable(outdatedMap, opts2) {
  if (isEmpty_default(outdatedMap))
    return "";
  const columnNames = [
    "Package",
    "Current",
    "Latest",
    "Dependents"
  ];
  const columnFns = [
    renderPackageName2,
    renderCurrent,
    renderLatest,
    dependentPackages
  ];
  if (opts2.long) {
    columnNames.push("Details");
    columnFns.push(renderDetails2);
  }
  for (let i2 = 0; i2 < columnNames.length; i2++)
    columnNames[i2] = source_default.blueBright(columnNames[i2]);
  const data = [
    columnNames,
    ...sortOutdatedPackages(Object.values(outdatedMap)).map((outdatedPkg) => columnFns.map((fn) => fn(outdatedPkg)))
  ];
  return (0, import_table7.table)(data, {
    ...TABLE_OPTIONS,
    columns: {
      ...TABLE_OPTIONS.columns,
      // Dependents column:
      3: {
        width: getCellWidth(data, 3, 30),
        wrapWord: true
      }
    }
  });
}
function renderOutdatedList(outdatedMap, opts2) {
  if (isEmpty_default(outdatedMap))
    return "";
  return sortOutdatedPackages(Object.values(outdatedMap)).map((outdatedPkg) => {
    let info = `${source_default.bold(renderPackageName2(outdatedPkg))}
${renderCurrent(outdatedPkg)} ${source_default.grey("=>")} ${renderLatest(outdatedPkg)}`;
    const dependents = dependentPackages(outdatedPkg);
    if (dependents) {
      info += `
${source_default.bold(outdatedPkg.dependentPkgs.length > 1 ? "Dependents:" : "Dependent:")} ${dependents}`;
    }
    if (opts2.long) {
      const details = renderDetails2(outdatedPkg);
      if (details) {
        info += `
${details}`;
      }
    }
    return info;
  }).join("\n\n") + "\n";
}
function renderOutdatedJSON(outdatedMap, opts2) {
  const outdatedPackagesJSON = sortOutdatedPackages(Object.values(outdatedMap)).reduce((acc, outdatedPkg) => {
    acc[outdatedPkg.packageName] = {
      current: outdatedPkg.current,
      latest: outdatedPkg.latestManifest?.version,
      wanted: outdatedPkg.wanted,
      isDeprecated: Boolean(outdatedPkg.latestManifest?.deprecated),
      dependencyType: outdatedPkg.belongsTo,
      dependentPackages: outdatedPkg.dependentPkgs.map(({ manifest, location }) => ({ name: manifest.name, location }))
    };
    if (opts2.long) {
      acc[outdatedPkg.packageName].latestManifest = outdatedPkg.latestManifest;
    }
    return acc;
  }, {});
  return JSON.stringify(outdatedPackagesJSON, null, 2);
}
function dependentPackages({ dependentPkgs }) {
  return dependentPkgs.map(({ manifest, location }) => manifest.name ?? location).sort().join(", ");
}
function sortOutdatedPackages(outdatedPackages) {
  return sortWith_default(COMPARATORS, outdatedPackages.map(toOutdatedWithVersionDiff));
}
var import_table7, DEP_PRIORITY, COMPARATORS;
var init_recursive4 = __esm({
  "../deps/inspection/commands/lib/outdated/recursive.js"() {
    "use strict";
    init_lib29();
    init_lib135();
    init_lib2();
    import_table7 = __toESM(require_src2(), 1);
    init_source2();
    init_es();
    init_outdated2();
    init_utils2();
    DEP_PRIORITY = {
      dependencies: 1,
      devDependencies: 2,
      optionalDependencies: 0
    };
    COMPARATORS = [
      ...DEFAULT_COMPARATORS,
      (o1, o2) => DEP_PRIORITY[o1.belongsTo] - DEP_PRIORITY[o2.belongsTo]
    ];
  }
});

// ../deps/inspection/commands/lib/outdated/outdated.js
var outdated_exports = {};
__export(outdated_exports, {
  cliOptionsTypes: () => cliOptionsTypes28,
  commandNames: () => commandNames29,
  completion: () => completion4,
  getCellWidth: () => getCellWidth,
  handler: () => handler29,
  help: () => help29,
  rcOptionsTypes: () => rcOptionsTypes29,
  renderCurrent: () => renderCurrent,
  renderDetails: () => renderDetails2,
  renderLatest: () => renderLatest,
  renderPackageName: () => renderPackageName2,
  shorthands: () => shorthands9,
  toOutdatedWithVersionDiff: () => toOutdatedWithVersionDiff
});
import { stripVTControlCharacters as stripAnsi } from "node:util";
function rcOptionsTypes29() {
  return {
    ...pick_default([
      "depth",
      "dev",
      "global-dir",
      "global",
      "long",
      "optional",
      "production"
    ], types2),
    compatible: Boolean,
    format: ["table", "list", "json"],
    "sort-by": "name"
  };
}
function help29() {
  return renderHelp({
    description: `Check for outdated packages. The check can be limited to a subset of the installed packages by providing arguments (patterns are supported).

Examples:
pnpm outdated
pnpm outdated --long
pnpm outdated gulp-* @babel/core`,
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: "Print only versions that satisfy specs in package.json",
            name: "--compatible"
          },
          {
            description: "By default, details about the outdated packages (such as a link to the repo) are not displayed. To display the details, pass this option.",
            name: "--long"
          },
          {
            description: 'Check for outdated dependencies in every package found in subdirectories or in every workspace package, when executed inside a workspace. For options that may be used with `-r`, see "pnpm help recursive"',
            name: "--recursive",
            shortAlias: "-r"
          },
          {
            description: "Prints the outdated packages in a list. Good for small consoles",
            name: "--no-table"
          },
          {
            description: 'Check only "dependencies" and "optionalDependencies"',
            name: "--prod",
            shortAlias: "-P"
          },
          {
            description: 'Check only "devDependencies"',
            name: "--dev",
            shortAlias: "-D"
          },
          {
            description: `Don't check "optionalDependencies"`,
            name: "--no-optional"
          },
          {
            description: 'Prints the outdated dependencies in the given format. Default is "table". Supported options: "table, list, json"',
            name: "--format <format>"
          },
          {
            description: "Specify the sorting method. Currently only `name` is supported.",
            name: "--sort-by"
          },
          OPTIONS.globalDir,
          ...UNIVERSAL_OPTIONS
        ]
      },
      FILTERING
    ],
    url: docsUrl("outdated"),
    usages: ["pnpm outdated [<pkg> ...]"]
  });
}
async function handler29(opts2, params = []) {
  const include = {
    dependencies: opts2.production !== false,
    devDependencies: opts2.dev !== false,
    optionalDependencies: opts2.optional !== false
  };
  if (opts2.recursive && opts2.selectedProjectsGraph != null) {
    const pkgs = Object.values(opts2.selectedProjectsGraph).map((wsPkg) => wsPkg.package);
    return outdatedRecursive(pkgs, params, { ...opts2, include });
  }
  let packages;
  if (opts2.global && opts2.globalPkgDir) {
    const globalPackages = scanGlobalPackages(opts2.globalPkgDir);
    packages = await Promise.all(globalPackages.map(async (pkg) => ({
      rootDir: pkg.installDir,
      manifest: await readProjectManifestOnly2(pkg.installDir, opts2)
    })));
  } else {
    const manifest = await readProjectManifestOnly2(opts2.dir, opts2);
    packages = [
      {
        rootDir: opts2.dir,
        manifest
      }
    ];
  }
  const outdatedPerProject = await outdatedDepsOfProjects(packages, params, {
    ...opts2,
    fullMetadata: opts2.long,
    ignoreDependencies: opts2.updateConfig?.ignoreDependencies,
    include,
    minimumReleaseAge: opts2.minimumReleaseAge,
    minimumReleaseAgeExclude: opts2.minimumReleaseAgeExclude,
    retry: {
      factor: opts2.fetchRetryFactor,
      maxTimeout: opts2.fetchRetryMaxtimeout,
      minTimeout: opts2.fetchRetryMintimeout,
      retries: opts2.fetchRetries
    },
    timeout: opts2.fetchTimeout
  });
  const outdatedPackages = outdatedPerProject.flat();
  let output;
  switch (opts2.format ?? "table") {
    case "table": {
      output = renderOutdatedTable2(outdatedPackages, opts2);
      break;
    }
    case "list": {
      output = renderOutdatedList2(outdatedPackages, opts2);
      break;
    }
    case "json": {
      output = renderOutdatedJSON2(outdatedPackages, opts2);
      break;
    }
    default: {
      throw new PnpmError("BAD_OUTDATED_FORMAT", `Unsupported format: ${opts2.format?.toString() ?? "undefined"}`);
    }
  }
  return {
    output,
    exitCode: outdatedPackages.length === 0 ? 0 : 1
  };
}
function renderOutdatedTable2(outdatedPackages, opts2) {
  if (outdatedPackages.length === 0)
    return "";
  const columnNames = [
    "Package",
    "Current",
    "Latest"
  ];
  const columnFns = [
    renderPackageName2,
    renderCurrent,
    renderLatest
  ];
  if (opts2.long) {
    columnNames.push("Details");
    columnFns.push(renderDetails2);
  }
  for (let i2 = 0; i2 < columnNames.length; i2++)
    columnNames[i2] = source_default.blueBright(columnNames[i2]);
  const data = [
    columnNames,
    ...sortOutdatedPackages2(outdatedPackages, { sortBy: opts2.sortBy }).map((outdatedPkg) => columnFns.map((fn) => fn(outdatedPkg)))
  ];
  const tableOptions = {
    ...TABLE_OPTIONS
  };
  if (opts2.long) {
    const detailsColumnMaxWidth = outdatedPackages.filter((pkg) => pkg.latestManifest && !pkg.latestManifest.deprecated).reduce((maxWidth, pkg) => {
      const cellWidth = pkg.latestManifest?.homepage?.length ?? 0;
      return Math.max(maxWidth, cellWidth);
    }, 40);
    tableOptions.columns = {
      // Detail column:
      3: {
        width: detailsColumnMaxWidth,
        wrapWord: true
      }
    };
  }
  return (0, import_table8.table)(data, tableOptions);
}
function renderOutdatedList2(outdatedPackages, opts2) {
  if (outdatedPackages.length === 0)
    return "";
  return sortOutdatedPackages2(outdatedPackages, { sortBy: opts2.sortBy }).map((outdatedPkg) => {
    let info = `${source_default.bold(renderPackageName2(outdatedPkg))}
${renderCurrent(outdatedPkg)} ${source_default.grey("=>")} ${renderLatest(outdatedPkg)}`;
    if (opts2.long) {
      const details = renderDetails2(outdatedPkg);
      if (details) {
        info += `
${details}`;
      }
    }
    return info;
  }).join("\n\n") + "\n";
}
function renderOutdatedJSON2(outdatedPackages, opts2) {
  const outdatedPackagesJSON = sortOutdatedPackages2(outdatedPackages, { sortBy: opts2.sortBy }).reduce((acc, outdatedPkg) => {
    acc[outdatedPkg.packageName] = {
      current: outdatedPkg.current,
      latest: outdatedPkg.latestManifest?.version,
      wanted: outdatedPkg.wanted,
      isDeprecated: Boolean(outdatedPkg.latestManifest?.deprecated),
      dependencyType: outdatedPkg.belongsTo
    };
    if (opts2.long) {
      acc[outdatedPkg.packageName].latestManifest = outdatedPkg.latestManifest;
    }
    return acc;
  }, {});
  return JSON.stringify(outdatedPackagesJSON, null, 2);
}
function sortOutdatedPackages2(outdatedPackages, opts2) {
  const sortBy3 = opts2?.sortBy;
  const comparators = sortBy3 === "name" ? [NAME_COMPARATOR] : DEFAULT_COMPARATORS;
  return sortWith_default(comparators, outdatedPackages.map(toOutdatedWithVersionDiff));
}
function getCellWidth(data, columnNumber, maxWidth) {
  const maxCellWidth = data.reduce((cellWidth, row) => {
    const cellLines = stripAnsi(row[columnNumber]).split("\n");
    const currentCellWidth = cellLines.reduce((lineWidth, line) => {
      return Math.max(lineWidth, line.length);
    }, 0);
    return Math.max(cellWidth, currentCellWidth);
  }, 0);
  return Math.min(maxWidth, maxCellWidth);
}
function toOutdatedWithVersionDiff(outdated2) {
  if (outdated2.latestManifest != null) {
    return {
      ...outdated2,
      ...semverDiff(outdated2.wanted, outdated2.latestManifest.version)
    };
  }
  return {
    ...outdated2,
    change: "unknown"
  };
}
function renderPackageName2({ belongsTo, packageName }) {
  switch (belongsTo) {
    case "devDependencies":
      return `${packageName} ${source_default.dim("(dev)")}`;
    case "optionalDependencies":
      return `${packageName} ${source_default.dim("(optional)")}`;
    default:
      return packageName;
  }
}
function renderCurrent({ current, wanted }) {
  const output = current ?? "missing";
  if (current === wanted)
    return output;
  return `${output} (wanted ${wanted})`;
}
function renderLatest(outdatedPkg) {
  const { latestManifest, change, diff } = outdatedPkg;
  if (latestManifest == null)
    return "";
  if (change === null || diff == null) {
    return latestManifest.deprecated ? source_default.redBright.bold("Deprecated") : latestManifest.version;
  }
  const versionText = colorizeSemverDiff({ change, diff });
  if (latestManifest.deprecated) {
    return `${versionText} ${source_default.redBright("(deprecated)")}`;
  }
  return versionText;
}
function renderDetails2({ latestManifest }) {
  if (latestManifest == null)
    return "";
  const outputs = [];
  if (latestManifest.deprecated) {
    outputs.push(source_default.redBright(latestManifest.deprecated));
  }
  if (latestManifest.homepage) {
    outputs.push(source_default.underline(latestManifest.homepage));
  }
  return outputs.join("\n");
}
var import_table8, cliOptionsTypes28, shorthands9, commandNames29, completion4;
var init_outdated2 = __esm({
  "../deps/inspection/commands/lib/outdated/outdated.js"() {
    "use strict";
    init_lib92();
    init_lib29();
    init_lib136();
    init_lib61();
    init_lib135();
    init_lib2();
    init_lib101();
    init_lib137();
    import_table8 = __toESM(require_src2(), 1);
    init_source2();
    init_es();
    init_lib63();
    init_recursive4();
    init_utils2();
    cliOptionsTypes28 = () => ({
      ...rcOptionsTypes29(),
      recursive: Boolean
    });
    shorthands9 = {
      D: "--dev",
      P: "--production",
      table: "--format=table",
      "no-table": "--format=list",
      json: "--format=json"
    };
    commandNames29 = ["outdated"];
    completion4 = async (cliOpts) => {
      return readDepNameCompletions(cliOpts.dir);
    };
  }
});

// ../deps/inspection/commands/lib/outdated/index.js
var init_outdated3 = __esm({
  "../deps/inspection/commands/lib/outdated/index.js"() {
    "use strict";
    init_outdated2();
  }
});

// ../deps/inspection/peers-checker/lib/checkPeerDependencies.js
import path166 from "node:path";
async function checkPeerDependencies(projectPaths, opts2) {
  const modulesDir = opts2.modulesDir ?? "node_modules";
  const lockfile = opts2.checkWantedLockfileOnly ? await readWantedLockfile(opts2.lockfileDir, { ignoreIncompatible: false }) : await readCurrentLockfile(path166.join(opts2.lockfileDir, modulesDir, ".pnpm"), { ignoreIncompatible: false }) ?? await readWantedLockfile(opts2.lockfileDir, { ignoreIncompatible: false });
  if (!lockfile)
    return {};
  const issues = checkPeerDependenciesFromLockfile(projectPaths, lockfile, opts2.lockfileDir);
  if (opts2.peerDependencyRules) {
    return filterPeerDependencyIssues2(issues, opts2.peerDependencyRules);
  }
  return issues;
}
function checkPeerDependenciesFromLockfile(projectPaths, lockfile, lockfileDir) {
  const packages = lockfile.packages ?? {};
  const importerIds = projectPaths.map((p) => getLockfileImporterId(lockfileDir, p));
  const walkerSteps = lockfileWalkerGroupImporterSteps(lockfile, importerIds);
  const result2 = {};
  for (const { importerId, step: step2 } of walkerSteps) {
    const projectIssues = {
      bad: {},
      missing: {},
      conflicts: [],
      intersections: {}
    };
    walkStep2(step2, packages, [], projectIssues);
    const merged = mergePeers2(projectIssues.missing);
    projectIssues.conflicts = merged.conflicts;
    projectIssues.intersections = merged.intersections;
    result2[importerId] = projectIssues;
  }
  return result2;
}
function walkStep2(step2, packages, parents, issues) {
  for (const { depPath, pkgSnapshot, next: next2 } of step2.dependencies) {
    const parsed = parse6(depPath);
    const pkgName = parsed.name ?? depPath;
    const pkgVersion = pkgSnapshot.version ?? parsed.version ?? "";
    const currentParents = [...parents, { name: pkgName, version: pkgVersion }];
    if (pkgSnapshot.peerDependencies) {
      for (const [peerName, peerRange] of Object.entries(pkgSnapshot.peerDependencies)) {
        const isOptional = pkgSnapshot.peerDependenciesMeta?.[peerName]?.optional === true;
        const resolvedPeerRef = pkgSnapshot.dependencies?.[peerName] ?? pkgSnapshot.optionalDependencies?.[peerName];
        if (!resolvedPeerRef) {
          if (!isOptional) {
            if (!issues.missing[peerName])
              issues.missing[peerName] = [];
            issues.missing[peerName].push({
              parents: currentParents,
              optional: isOptional,
              wantedRange: peerRange
            });
          }
        } else {
          const peerVersion = extractVersion(resolvedPeerRef, peerName, packages);
          if (peerVersion && !satisfies2(peerVersion, peerRange)) {
            if (!issues.bad[peerName])
              issues.bad[peerName] = [];
            issues.bad[peerName].push({
              parents: currentParents,
              optional: isOptional,
              wantedRange: peerRange,
              foundVersion: peerVersion,
              resolvedFrom: []
            });
          }
        }
      }
    }
    walkStep2(next2(), packages, currentParents, issues);
  }
}
function extractVersion(ref, alias, packages) {
  const depPath = refToRelative(ref, alias);
  if (depPath && packages[depPath]) {
    const parsed2 = parse6(depPath);
    return packages[depPath].version ?? parsed2.version;
  }
  const parsed = parse6(`${alias}@${ref}`);
  return parsed.version;
}
function satisfies2(version2, range) {
  if (range === "*")
    return true;
  return import_semver47.default.satisfies(version2, range, { includePrerelease: true });
}
function filterPeerDependencyIssues2(peerDependencyIssuesByProjects, rules) {
  const ignoreMissingMatcher = createMatcher([...new Set(rules.ignoreMissing ?? [])]);
  const allowAnyMatcher = createMatcher([...new Set(rules.allowAny ?? [])]);
  const { matchAll: allowedVersionsMatchAll, byParent: allowedVersionsByParent } = parseAllowedVersions2(rules.allowedVersions ?? {});
  const result2 = {};
  for (const [projectId, { bad, missing, conflicts, intersections }] of Object.entries(peerDependencyIssuesByProjects)) {
    const filteredMissing = {};
    const filteredBad = {};
    const filteredIntersections = {};
    for (const [peerName, issues] of Object.entries(missing)) {
      if (ignoreMissingMatcher(peerName) || issues.every(({ optional }) => optional))
        continue;
      filteredMissing[peerName] = issues;
      if (intersections[peerName]) {
        filteredIntersections[peerName] = intersections[peerName];
      }
    }
    for (const [peerName, issues] of Object.entries(bad)) {
      if (allowAnyMatcher(peerName))
        continue;
      const remaining = issues.filter((issue) => {
        if (allowedVersionsMatchAll[peerName]?.some((range) => import_semver47.default.satisfies(issue.foundVersion, range)))
          return false;
        const declaringParent = issue.parents.at(-1);
        if (declaringParent && allowedVersionsByParent[declaringParent.name]?.[peerName]?.some((range) => import_semver47.default.satisfies(issue.foundVersion, range)))
          return false;
        return true;
      });
      if (remaining.length > 0) {
        filteredBad[peerName] = remaining;
      }
    }
    result2[projectId] = {
      bad: filteredBad,
      missing: filteredMissing,
      conflicts,
      intersections: filteredIntersections
    };
  }
  return result2;
}
function parseAllowedVersions2(allowedVersions) {
  let overrides;
  try {
    overrides = parseOverrides(allowedVersions);
  } catch (err) {
    throw new PnpmError("INVALID_ALLOWED_VERSION_SELECTOR", `${err.message} in pnpm.peerDependencyRules.allowedVersions`);
  }
  const matchAll = {};
  const byParent = {};
  for (const { parentPkg, targetPkg, newBareSpecifier } of overrides) {
    const ranges = newBareSpecifier.split("||").map((v) => v.trim());
    if (parentPkg) {
      if (!byParent[parentPkg.name])
        byParent[parentPkg.name] = {};
      byParent[parentPkg.name][targetPkg.name] = ranges;
    } else {
      matchAll[targetPkg.name] = ranges;
    }
  }
  return { matchAll, byParent };
}
function mergePeers2(missingPeers) {
  const conflicts = [];
  const intersections = {};
  for (const [peerName, issues] of Object.entries(missingPeers)) {
    if (issues.every(({ optional }) => optional))
      continue;
    if (issues.length === 1) {
      intersections[peerName] = issues[0].wantedRange;
      continue;
    }
    const ranges = [...new Set(issues.map(({ wantedRange }) => wantedRange))];
    if (ranges.length === 1) {
      intersections[peerName] = ranges[0];
      continue;
    }
    const intersection = safeIntersect2(ranges);
    if (intersection === null) {
      conflicts.push(peerName);
    } else {
      intersections[peerName] = intersection;
    }
  }
  return { conflicts, intersections };
}
function safeIntersect2(ranges) {
  try {
    return (0, import_semver_range_intersect2.intersect)(...ranges);
  } catch {
    return null;
  }
}
var import_semver47, import_semver_range_intersect2;
var init_checkPeerDependencies = __esm({
  "../deps/inspection/peers-checker/lib/checkPeerDependencies.js"() {
    "use strict";
    init_lib14();
    init_lib97();
    init_lib65();
    init_lib2();
    init_lib78();
    init_lib88();
    import_semver47 = __toESM(require_semver2(), 1);
    import_semver_range_intersect2 = __toESM(require_dist7(), 1);
  }
});

// ../deps/inspection/peers-checker/lib/index.js
var init_lib153 = __esm({
  "../deps/inspection/peers-checker/lib/index.js"() {
    "use strict";
    init_checkPeerDependencies();
  }
});

// ../deps/inspection/peers-issues-renderer/lib/index.js
function renderPeerIssues(issuesByProjects) {
  const sections = [];
  for (const [, { bad, missing, conflicts, intersections }] of Object.entries(issuesByProjects)) {
    for (const [peerName, issues] of Object.entries(bad)) {
      const header = `${source_default.yellowBright("\u2715 unmet peer")} ${source_default.bold(peerName)}`;
      for (const [foundVersion, group] of groupByFoundVersion(issues)) {
        const installed = `  ${source_default.cyan("Installed:")} ${source_default.dim(foundVersion)}`;
        sections.push(`${header}
${installed}
${formatRequiredBy(group)}`);
      }
    }
    for (const [peerName, issues] of Object.entries(missing)) {
      if (!intersections[peerName] && !conflicts.includes(peerName))
        continue;
      const conflict = conflicts.includes(peerName);
      const header = conflict ? `${source_default.red("\u2715 conflicting peer")} ${source_default.bold(peerName)}` : `${source_default.red("\u2715 missing peer")} ${source_default.bold(peerName)}`;
      sections.push(`${header}
${formatRequiredBy(issues)}`);
    }
  }
  if (sections.length === 0)
    return "";
  return sections.join("\n\n");
}
function formatRequiredBy(issues) {
  const byRange = /* @__PURE__ */ new Map();
  for (const issue of issues) {
    const declaring = issue.parents[issue.parents.length - 1];
    const pkg = declaring ? `${declaring.name}@${declaring.version}` : "<unknown>";
    if (!byRange.has(issue.wantedRange)) {
      byRange.set(issue.wantedRange, /* @__PURE__ */ new Set());
    }
    byRange.get(issue.wantedRange).add(pkg);
  }
  const lines = [`  ${source_default.cyan("Wanted:")}`];
  for (const [range, pkgs] of byRange) {
    lines.push(`    ${source_default.cyanBright(formatRange(range))}${source_default.cyan(":")}`);
    for (const pkg of pkgs) {
      lines.push(`      ${source_default.dim(pkg)}`);
    }
  }
  return lines.join("\n");
}
function formatRange(range) {
  if (range.includes(" ") || range === "*") {
    return `"${range}"`;
  }
  return range;
}
function groupByFoundVersion(issues) {
  const groups = /* @__PURE__ */ new Map();
  for (const issue of issues) {
    const list2 = groups.get(issue.foundVersion);
    if (list2) {
      list2.push(issue);
    } else {
      groups.set(issue.foundVersion, [issue]);
    }
  }
  return groups;
}
var init_lib154 = __esm({
  "../deps/inspection/peers-issues-renderer/lib/index.js"() {
    "use strict";
    init_source2();
  }
});

// ../deps/inspection/commands/lib/peers.js
var peers_exports = {};
__export(peers_exports, {
  cliOptionsTypes: () => cliOptionsTypes29,
  commandNames: () => commandNames30,
  handler: () => handler30,
  help: () => help30,
  rcOptionsTypes: () => rcOptionsTypes30,
  recursiveByDefault: () => recursiveByDefault9,
  shorthands: () => shorthands10
});
function rcOptionsTypes30() {
  return pick_default([
    "json",
    "lockfile-only"
  ], types2);
}
function help30() {
  return renderHelp({
    description: "Commands for inspecting peer dependency relationships.",
    descriptionLists: [
      {
        title: "Commands",
        list: [
          {
            description: "Checks for unmet or missing peer dependency issues by reading the lockfile. Exits with a non-zero exit code when issues are found.",
            name: "check"
          }
        ]
      },
      {
        title: "Options",
        list: [
          {
            description: "Show information in JSON format",
            name: "--json"
          },
          {
            description: "Check the lockfile only, without reading node_modules.",
            name: "--lockfile-only"
          },
          ...UNIVERSAL_OPTIONS
        ]
      },
      FILTERING
    ],
    url: docsUrl("peers"),
    usages: [
      "pnpm peers <command>"
    ]
  });
}
async function handler30(opts2, params) {
  switch (params[0]) {
    case "check":
    case void 0:
      return checkCmd(opts2);
    default:
      return { output: help30(), exitCode: 1 };
  }
}
async function checkCmd(opts2) {
  const lockfileDir = opts2.lockfileDir ?? opts2.dir;
  const projectPaths = opts2.recursive && opts2.selectedProjectsGraph ? Object.keys(opts2.selectedProjectsGraph) : [opts2.dir];
  const issues = await checkPeerDependencies(projectPaths, {
    lockfileDir,
    checkWantedLockfileOnly: opts2.lockfileOnly,
    modulesDir: opts2.modulesDir,
    peerDependencyRules: opts2.peerDependencyRules
  });
  const noIssues = hasNoIssues(issues);
  const json2 = opts2.json ?? opts2.cliOptions?.["json"];
  if (json2) {
    return {
      output: JSON.stringify(issues, null, 2),
      exitCode: noIssues ? 0 : 1
    };
  }
  if (noIssues) {
    return { output: "No peer dependency issues found", exitCode: 0 };
  }
  return {
    output: `Issues with peer dependencies found

${renderPeerIssues(issues)}`,
    exitCode: 1
  };
}
function hasNoIssues(issues) {
  return Object.values(issues).every((projectIssues) => isEmpty_default(projectIssues.bad) && isEmpty_default(projectIssues.missing));
}
var cliOptionsTypes29, shorthands10, commandNames30, recursiveByDefault9;
var init_peers = __esm({
  "../deps/inspection/commands/lib/peers.js"() {
    "use strict";
    init_lib92();
    init_lib29();
    init_lib61();
    init_lib153();
    init_lib154();
    init_es();
    init_lib63();
    cliOptionsTypes29 = () => ({
      ...rcOptionsTypes30(),
      recursive: Boolean
    });
    shorthands10 = {};
    commandNames30 = ["peers"];
    recursiveByDefault9 = true;
  }
});

// ../deps/inspection/commands/lib/repo/index.js
var repo_exports = {};
__export(repo_exports, {
  cliOptionsTypes: () => cliOptionsTypes30,
  commandNames: () => commandNames31,
  handler: () => handler31,
  help: () => help31,
  rcOptionsTypes: () => rcOptionsTypes31
});
function rcOptionsTypes31() {
  return pick_default(["registry"], types2);
}
function cliOptionsTypes30() {
  return rcOptionsTypes31();
}
function help31() {
  return renderHelp({
    description: "Opens the URL of the package's repository in a browser.",
    url: docsUrl("repo"),
    usages: ["pnpm repo [<pkgname> [<pkgname> ...]]"]
  });
}
async function handler31(opts2, params) {
  const urls = params.length === 0 ? [await getRepoUrlFromCurrentProject(opts2)] : await Promise.all(params.map((spec) => getRepoUrlFromRegistry(opts2, spec)));
  for (const url7 of urls) {
    await (0, import_open4.default)(url7);
  }
}
async function getRepoUrlFromCurrentProject(opts2) {
  const manifest = await readProjectManifestOnly2(opts2.dir, {
    engineStrict: opts2.engineStrict,
    nodeVersion: opts2.nodeVersion,
    supportedArchitectures: opts2.supportedArchitectures
  });
  const url7 = pickRepoUrl(manifest.repository);
  if (!url7) {
    throw new PnpmError("NO_REPO_URL", 'The current project does not have a repository URL. Add a "repository" field to its manifest.');
  }
  return url7;
}
async function getRepoUrlFromRegistry(opts2, packageSpec) {
  const info = await fetchPackageInfo(opts2, packageSpec);
  const url7 = pickRepoUrl(info.repository);
  if (!url7) {
    throw new PnpmError("NO_REPO_URL", `The package "${info.name}" does not have a repository URL.`);
  }
  return url7;
}
function pickRepoUrl(repository) {
  if (!repository)
    return void 0;
  const repoUrl = typeof repository === "string" ? repository : repository.url;
  if (!repoUrl)
    return void 0;
  const directory = typeof repository === "object" ? repository.directory : void 0;
  return repositoryToWebUrl(repoUrl, directory);
}
function repositoryToWebUrl(rawUrl, directory) {
  const hosted = import_hosted_git_info3.default.fromUrl(rawUrl);
  if (hosted != null) {
    const url7 = directory ? hosted.browse(directory) : hosted.browse();
    if (url7 && isHttpUrl3(url7)) {
      return url7;
    }
  }
  let parsed;
  try {
    parsed = new URL(rawUrl.replace(/^git\+/, ""));
  } catch {
    return void 0;
  }
  if (parsed.protocol !== "http:" && parsed.protocol !== "https:")
    return void 0;
  parsed.search = "";
  parsed.hash = "";
  parsed.pathname = parsed.pathname.replace(/\/+$/, "").replace(/\.git$/, "");
  if (directory) {
    parsed.pathname += `/tree/HEAD/${directory.replace(/^\//, "")}`;
  }
  return parsed.toString();
}
function isHttpUrl3(value) {
  try {
    const { protocol } = new URL(value);
    return protocol === "http:" || protocol === "https:";
  } catch {
    return false;
  }
}
var import_hosted_git_info3, import_open4, commandNames31;
var init_repo = __esm({
  "../deps/inspection/commands/lib/repo/index.js"() {
    "use strict";
    init_lib29();
    init_lib61();
    init_lib2();
    import_hosted_git_info3 = __toESM(require_hosted_git_info2(), 1);
    import_open4 = __toESM(require_open(), 1);
    init_es();
    init_lib63();
    init_fetchPackageInfo();
    commandNames31 = ["repo"];
  }
});

// ../deps/inspection/commands/lib/view/index.js
var view_exports = {};
__export(view_exports, {
  cliOptionsTypes: () => cliOptionsTypes31,
  commandNames: () => commandNames32,
  handler: () => handler32,
  help: () => help32,
  rcOptionsTypes: () => rcOptionsTypes32
});
function rcOptionsTypes32() {
  return pick_default(["registry"], types2);
}
function cliOptionsTypes31() {
  return {
    ...rcOptionsTypes32(),
    json: Boolean
  };
}
function help32() {
  return renderHelp({
    description: "View package information from the registry without using npm CLI.",
    usages: [
      "pnpm view <package-name>",
      "pnpm view <package-name>@<version>",
      "pnpm view <package-name> [<field>[.subfield]...]"
    ],
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: "Show information in JSON format",
            name: "--json"
          }
        ]
      }
    ]
  });
}
async function handler32(opts2, params) {
  const packageSpec = params[0];
  if (!packageSpec) {
    throw new PnpmError("MISSING_PACKAGE_NAME", "Package name is required. Usage: pnpm view <package-name>");
  }
  const fields = params.slice(1);
  const info = await fetchPackageInfo(opts2, packageSpec);
  if (fields.length > 0) {
    const selectedFields = {};
    for (const field of fields) {
      selectedFields[field] = getNestedProperty(info, field);
    }
    if (opts2.json) {
      if (fields.length === 1) {
        return JSON.stringify(selectedFields[fields[0]], null, 2);
      }
      return JSON.stringify(selectedFields, null, 2);
    }
    if (fields.length === 1) {
      const value = selectedFields[fields[0]];
      return formatFieldValue(value);
    }
    const lines2 = fields.map((field) => {
      const value = selectedFields[field];
      if (typeof value === "object" && value !== null) {
        return `${field} = ${JSON.stringify(value)}`;
      }
      if (typeof value === "string") {
        return `${field} = '${value}'`;
      }
      return `${field} = ${formatFieldValue(value)}`;
    });
    return lines2.join("\n");
  }
  if (opts2.json) {
    return JSON.stringify(info, null, 2);
  }
  const headerParts = [];
  if (info.name && info.version) {
    headerParts.push(source_default.cyan(`${info.name}@${info.version}`));
  }
  if (info.license) {
    headerParts.push(source_default.green(info.license));
  }
  if (info.depsCount !== void 0) {
    headerParts.push(`deps: ${source_default.cyan(info.depsCount)}`);
  } else {
    headerParts.push("deps: none");
  }
  if (info.versionsCount !== void 0) {
    headerParts.push(`versions: ${source_default.cyan(info.versionsCount)}`);
  }
  const lines = [headerParts.join(" | ")];
  if (info.description) {
    lines.push(info.description);
  }
  if (info.homepage) {
    lines.push(source_default.underline.blue(info.homepage));
  }
  if (info.keywords && info.keywords.length > 0) {
    lines.push("");
    lines.push(`keywords: ${source_default.cyan(info.keywords.join(", "))}`);
  }
  if (info.dist) {
    lines.push("");
    lines.push(source_default.bold("dist"));
    if (info.dist.tarball) {
      lines.push(`.tarball: ${source_default.underline.blue(info.dist.tarball)}`);
    }
    if (info.dist.shasum) {
      lines.push(`.shasum: ${source_default.green(info.dist.shasum)}`);
    }
    if (info.dist.integrity) {
      lines.push(`.integrity: ${source_default.green(info.dist.integrity)}`);
    }
    if (info.dist.unpackedSize != null) {
      lines.push(`.unpackedSize: ${source_default.blue(formatBytes(info.dist.unpackedSize))}`);
    }
  }
  if (info.dependencies && Object.keys(info.dependencies).length > 0) {
    lines.push("");
    lines.push("dependencies:");
    const depEntries = Object.entries(info.dependencies).map(([name, version2]) => `${source_default.blue(name)}: ${version2}`);
    lines.push(depEntries.join(", "));
  }
  if (info.maintainers && info.maintainers.length > 0) {
    lines.push("");
    lines.push("maintainers:");
    for (const maintainer of info.maintainers) {
      const email = maintainer.email;
      const name = email ? `${source_default.blue(maintainer.name)} <${source_default.dim(email)}>` : source_default.blue(maintainer.name);
      lines.push(`- ${name}`);
    }
  }
  if (info.distTags && Object.keys(info.distTags).length > 0) {
    lines.push("");
    lines.push(source_default.bold("dist-tags:"));
    for (const [tag, tagVersion] of Object.entries(info.distTags)) {
      lines.push(`${source_default.blue(tag)}: ${tagVersion}`);
    }
  }
  const publishedInfo = getPublishedInfo(info);
  if (publishedInfo) {
    lines.push("");
    lines.push(publishedInfo);
  }
  return lines.join("\n");
}
function formatBytes(bytes) {
  if (bytes === 0)
    return "0 B";
  const k2 = 1024;
  const sizes = ["B", "kB", "MB", "GB", "TB", "PB"];
  const i2 = Math.min(Math.floor(Math.log(bytes) / Math.log(k2)), sizes.length - 1);
  return Math.round(bytes / Math.pow(k2, i2) * 100) / 100 + " " + sizes[i2];
}
function getNestedProperty(obj, path218) {
  return path218.split(".").reduce((acc, part) => {
    if (typeof acc === "object" && acc !== null) {
      return acc[part];
    }
    return void 0;
  }, obj);
}
function formatFieldValue(value) {
  if (value === null || value === void 0) {
    return "";
  }
  if (typeof value === "object") {
    return JSON.stringify(value, null, 2);
  }
  return String(value);
}
function getPublishedInfo(info) {
  if (!info.version || !info.time) {
    return null;
  }
  const publishedTime = info.time[info.version];
  if (!publishedTime) {
    return null;
  }
  const publishedDate = new Date(publishedTime);
  if (isNaN(publishedDate.getTime())) {
    return null;
  }
  const timeAgo = formatTimeAgo(publishedDate) ?? "just now";
  const publisher = getPublisher(info);
  if (publisher) {
    return `published ${source_default.cyan(timeAgo)} by ${publisher}`;
  }
  return `published ${source_default.cyan(timeAgo)}`;
}
function getPublisher(info) {
  if (info._npmUser?.name) {
    const email = info._npmUser.email;
    return email ? `${source_default.blue(info._npmUser.name)} <${source_default.dim(email)}>` : source_default.blue(info._npmUser.name);
  }
  if (info.maintainers && info.maintainers.length > 0) {
    const first = info.maintainers[0];
    const email = first.email;
    const name = email ? `${source_default.blue(first.name)} <${source_default.dim(email)}>` : source_default.blue(first.name);
    if (info.maintainers.length === 1) {
      return name;
    }
    return `${name} et al.`;
  }
  if (info.author) {
    return String(info.author);
  }
  return null;
}
var commandNames32;
var init_view2 = __esm({
  "../deps/inspection/commands/lib/view/index.js"() {
    "use strict";
    init_lib61();
    init_lib2();
    init_lib24();
    init_source2();
    init_es();
    init_lib63();
    init_fetchPackageInfo();
    commandNames32 = ["view", "info", "show", "v"];
  }
});

// ../deps/inspection/commands/lib/index.js
var init_lib155 = __esm({
  "../deps/inspection/commands/lib/index.js"() {
    "use strict";
    init_bugs();
    init_docs();
    init_listing();
    init_outdated3();
    init_peers();
    init_repo();
    init_view2();
  }
});

// ../engine/pm/commands/lib/self-updater/installPnpm.js
import fs88 from "node:fs";
import path167 from "node:path";
import util45 from "node:util";
async function installPnpm(pnpmVersion, opts2) {
  const currentPkgName = getCurrentPackageName();
  const wantedLockfile = opts2.envLockfile ? buildLockfileFromEnvLockfile(opts2.envLockfile, currentPkgName, pnpmVersion) : void 0;
  const result2 = await installPnpmToGlobalDir(opts2, currentPkgName, pnpmVersion, wantedLockfile);
  return {
    alreadyExisted: result2.alreadyExisted,
    baseDir: result2.installDir,
    binDir: result2.binDir
  };
}
async function installPnpmToStore(pnpmVersion, opts2) {
  const currentPkgName = getCurrentPackageName();
  const wantedLockfile = buildLockfileFromEnvLockfile(opts2.envLockfile, currentPkgName, pnpmVersion);
  const globalVirtualStoreDir = path167.join(opts2.storeDir, "links");
  const pnpmGvsPath = findPnpmGvsPath(wantedLockfile, currentPkgName, globalVirtualStoreDir, PNPM_ALLOW_BUILDS);
  const pnpmPkgDir = path167.join(pnpmGvsPath, "node_modules", currentPkgName);
  const binDir = path167.join(pnpmGvsPath, "bin");
  if (fs88.existsSync(path167.join(pnpmPkgDir, "package.json"))) {
    if (!fs88.existsSync(binDir)) {
      await linkBins(path167.join(pnpmGvsPath, "node_modules"), binDir, { warn: noop4 });
    }
    return { binDir };
  }
  const tmpInstallDir = path167.join(opts2.storeDir, ".tmp", `pnpm-${pnpmVersion}-${Date.now()}`);
  fs88.mkdirSync(tmpInstallDir, { recursive: true });
  try {
    await installFromLockfile(tmpInstallDir, binDir, {
      wantedLockfile,
      allowBuilds: PNPM_ALLOW_BUILDS,
      storeController: opts2.storeController,
      storeDir: opts2.storeDir,
      registries: opts2.registries,
      virtualStoreDirMaxLength: opts2.virtualStoreDirMaxLength,
      packageManager: opts2.packageManager
    });
    linkExePlatformBinary(pnpmGvsPath);
    await linkBins(path167.join(pnpmGvsPath, "node_modules"), binDir, { warn: noop4 });
    return { binDir };
  } finally {
    try {
      fs88.rmSync(tmpInstallDir, { recursive: true, force: true });
    } catch {
    }
  }
}
function noop4(_message) {
}
function findPnpmGvsPath(lockfile, pkgName, globalVirtualStoreDir, allowBuilds) {
  const graph = lockfileToDepGraph(lockfile);
  const pkgMetaIterator = iteratePkgMeta(lockfile, graph);
  const allowBuild = createAllowBuildFunction({ allowBuilds });
  for (const { hash: hash2, pkgMeta } of iterateHashedGraphNodes(graph, pkgMetaIterator, allowBuild)) {
    if (pkgMeta.name === pkgName) {
      return path167.join(globalVirtualStoreDir, hash2);
    }
  }
  throw new Error(`Could not find ${pkgName} in lockfile`);
}
async function installPnpmToGlobalDir(opts2, pkgName, version2, wantedLockfile) {
  const globalDir = opts2.globalPkgDir;
  cleanOrphanedInstallDirs(globalDir);
  const existing = findGlobalPackage(globalDir, pkgName);
  if (existing) {
    const pkgJsonPath = path167.join(existing.installDir, "node_modules", pkgName, "package.json");
    try {
      const pkgJson2 = JSON.parse(fs88.readFileSync(pkgJsonPath, "utf8"));
      if (pkgJson2.version === version2) {
        const binDir2 = path167.join(existing.installDir, "bin");
        return { alreadyExisted: true, installDir: existing.installDir, binDir: binDir2 };
      }
    } catch {
    }
  }
  const installDir = createInstallDir(globalDir);
  const binDir = path167.join(installDir, "bin");
  try {
    if (wantedLockfile != null && opts2.storeController != null && opts2.storeDir != null) {
      await installFromLockfile(installDir, binDir, {
        wantedLockfile,
        allowBuilds: PNPM_ALLOW_BUILDS,
        storeController: opts2.storeController,
        storeDir: opts2.storeDir,
        registries: opts2.registries,
        virtualStoreDirMaxLength: opts2.virtualStoreDirMaxLength,
        packageManager: opts2.packageManager
      });
      await registerProject(opts2.storeDir, installDir);
    } else {
      await installFromResolution(installDir, opts2, [`${pkgName}@${version2}`]);
    }
    linkExePlatformBinary(installDir);
    await linkBins(path167.join(installDir, "node_modules"), binDir, { warn: noop4 });
    const pkgJson2 = JSON.parse(fs88.readFileSync(path167.join(installDir, "package.json"), "utf8"));
    const aliases = Object.keys(pkgJson2.dependencies ?? {});
    const cacheHash = createGlobalCacheKey({ aliases, registries: opts2.registries });
    const hashLink = getHashLink(globalDir, cacheHash);
    await symlinkDir(installDir, hashLink, { overwrite: true });
    return { alreadyExisted: false, installDir, binDir };
  } catch (err) {
    try {
      fs88.rmSync(installDir, { recursive: true, force: true });
    } catch {
    }
    throw err;
  }
}
async function installFromLockfile(installDir, binDir, opts2) {
  const rootImporter = opts2.wantedLockfile.importers["."];
  const dependencies = rootImporter?.dependencies ?? {};
  fs88.writeFileSync(path167.join(installDir, "package.json"), JSON.stringify({ dependencies }));
  await headlessInstall({
    wantedLockfile: opts2.wantedLockfile,
    lockfileDir: installDir,
    storeController: opts2.storeController,
    storeDir: opts2.storeDir,
    registries: opts2.registries,
    enableGlobalVirtualStore: true,
    globalVirtualStoreDir: path167.join(opts2.storeDir, "links"),
    allowBuilds: opts2.allowBuilds,
    ignoreScripts: true,
    force: false,
    engineStrict: false,
    currentEngine: {
      pnpmVersion: opts2.packageManager?.version ?? ""
    },
    include: {
      dependencies: true,
      devDependencies: false,
      optionalDependencies: true
    },
    selectedProjectDirs: [installDir],
    allProjects: {
      [installDir]: {
        binsDir: binDir,
        buildIndex: 0,
        manifest: { dependencies },
        modulesDir: path167.join(installDir, "node_modules"),
        id: ".",
        rootDir: installDir
      }
    },
    hoistedDependencies: {},
    virtualStoreDirMaxLength: opts2.virtualStoreDirMaxLength,
    sideEffectsCacheRead: false,
    sideEffectsCacheWrite: false,
    configByUri: {},
    unsafePerm: false,
    userAgent: "",
    packageManager: opts2.packageManager ?? { name: "pnpm", version: "" },
    pruneStore: false,
    pendingBuilds: [],
    skipped: /* @__PURE__ */ new Set()
  });
}
async function installFromResolution(installDir, opts2, params) {
  const include = {
    dependencies: true,
    devDependencies: false,
    optionalDependencies: true
  };
  const fetchFullMetadata = Boolean(opts2.supportedArchitectures?.libc);
  await installGlobalPackages({
    ...opts2,
    global: false,
    bin: path167.join(installDir, "node_modules/.bin"),
    dir: installDir,
    lockfileDir: installDir,
    rootProjectManifestDir: installDir,
    rootProjectManifest: void 0,
    saveProd: true,
    saveDev: false,
    saveOptional: false,
    savePeer: false,
    workspaceDir: void 0,
    sharedWorkspaceLockfile: false,
    lockfileOnly: false,
    fetchFullMetadata,
    include,
    includeDirect: include,
    allowBuilds: {}
  }, params);
}
function exePlatformPkgDirName(platform3, arch, libcFamily) {
  const normalizedArch = platform3 === "win32" && arch === "ia32" ? "x86" : arch;
  return `${legacyOsSegment(platform3, libcFamily)}-${normalizedArch}`;
}
function legacyOsSegment(platform3, libcFamily) {
  switch (platform3) {
    case "darwin":
      return "macos";
    case "win32":
      return "win";
    case "linux":
      return libcFamily === "musl" ? "linuxstatic" : "linux";
    default:
      return platform3;
  }
}
function exePlatformPkgDirNameNext(platform3, arch, libcFamily) {
  const normalizedArch = platform3 === "win32" && arch === "ia32" ? "x86" : arch;
  const libcSuffix = platform3 === "linux" && libcFamily === "musl" ? "-musl" : "";
  return `exe.${platform3}-${normalizedArch}${libcSuffix}`;
}
function linkExePlatformBinary(installDir) {
  const exePkgDir = path167.join(installDir, "node_modules", "@pnpm", "exe");
  if (!fs88.existsSync(exePkgDir))
    return;
  const exeRealDir = fs88.realpathSync(exePkgDir);
  const platform3 = process.platform;
  const arch = process.arch;
  const libcFamily = (0, import_detect_libc4.familySync)();
  const executable = platform3 === "win32" ? "pnpm.exe" : "pnpm";
  const candidateDirNames = [
    exePlatformPkgDirName(platform3, arch, libcFamily),
    exePlatformPkgDirNameNext(platform3, arch, libcFamily)
  ];
  let src2;
  for (const dirName of candidateDirNames) {
    const candidate = path167.join(path167.dirname(exeRealDir), dirName, executable);
    if (fs88.existsSync(candidate)) {
      src2 = candidate;
      break;
    }
  }
  if (src2 == null)
    return;
  const dest = path167.join(exePkgDir, executable);
  forceLink(src2, dest);
  if (platform3 === "win32") {
    for (const alias of ["pn", "pnpx", "pnx"]) {
      forceLink(src2, path167.join(exePkgDir, `${alias}.exe`));
    }
    const exePkgJsonPath = path167.join(exePkgDir, "package.json");
    const exePkg = JSON.parse(fs88.readFileSync(exePkgJsonPath, "utf8"));
    exePkg.bin.pnpm = "pnpm.exe";
    exePkg.bin.pn = "pn.exe";
    exePkg.bin.pnpx = "pnpx.exe";
    exePkg.bin.pnx = "pnx.exe";
    fs88.writeFileSync(exePkgJsonPath, JSON.stringify(exePkg, null, 2));
  }
}
function forceLink(src2, dest) {
  try {
    fs88.unlinkSync(dest);
  } catch (err) {
    if (!util45.types.isNativeError(err) || !("code" in err) || err.code !== "ENOENT") {
      throw err;
    }
  }
  fs88.linkSync(src2, dest);
  fs88.chmodSync(dest, 493);
}
function buildLockfileFromEnvLockfile(envLockfile, pkgName, version2) {
  const dependencies = {};
  dependencies[pkgName] = version2;
  const packages = {};
  for (const [depPath, snapshot] of Object.entries(envLockfile.snapshots)) {
    packages[depPath] = {
      ...snapshot,
      ...envLockfile.packages[depPath]
    };
  }
  return {
    lockfileVersion: envLockfile.lockfileVersion,
    importers: {
      ["."]: {
        specifiers: { [pkgName]: version2 },
        dependencies
      }
    },
    packages
  };
}
var import_detect_libc4, PNPM_ALLOW_BUILDS;
var init_installPnpm = __esm({
  "../engine/pm/commands/lib/self-updater/installPnpm.js"() {
    "use strict";
    init_lib42();
    init_lib66();
    init_lib5();
    init_lib72();
    init_lib129();
    init_lib101();
    init_lib119();
    init_lib86();
    import_detect_libc4 = __toESM(require_detect_libc(), 1);
    init_dist4();
    PNPM_ALLOW_BUILDS = { "@pnpm/exe": true };
  }
});

// ../engine/pm/commands/lib/self-updater/selfUpdate.js
var selfUpdate_exports = {};
__export(selfUpdate_exports, {
  cliOptionsTypes: () => cliOptionsTypes32,
  commandNames: () => commandNames33,
  handler: () => handler33,
  help: () => help33,
  rcOptionsTypes: () => rcOptionsTypes33,
  skipPackageManagerCheck: () => skipPackageManagerCheck2
});
import fs89 from "node:fs";
import path168 from "node:path";
function rcOptionsTypes33() {
  return pick_default([], types2);
}
function cliOptionsTypes32() {
  return {
    ...rcOptionsTypes33()
  };
}
function help33() {
  return renderHelp({
    description: "Updates pnpm to the latest version (or the one specified)",
    descriptionLists: [],
    url: docsUrl("self-update"),
    usages: [
      "pnpm self-update",
      "pnpm self-update 9",
      "pnpm self-update next-10",
      "pnpm self-update 9.10.0"
    ]
  });
}
async function handler33(opts2, params) {
  if (isExecutedByCorepack()) {
    throw new PnpmError("CANT_SELF_UPDATE_IN_COREPACK", "You should update pnpm with corepack");
  }
  globalInfo("Checking for updates...");
  const { resolve: baseResolve } = createResolver2({
    ...opts2,
    configByUri: opts2.configByUri,
    ignoreMissingTimeField: opts2.minimumReleaseAgeIgnoreMissingTime
  });
  const strictResolution = Boolean(opts2.minimumReleaseAge) && opts2.minimumReleaseAgeStrict === true || opts2.trustPolicy === "no-downgrade";
  const resolve3 = strictResolution ? makeResolutionStrict(baseResolve) : baseResolve;
  const pkgName = "pnpm";
  const { publishedBy, publishedByExclude } = getPublishedByPolicy(opts2);
  const isImplicitLatest = params.length === 0;
  const bareSpecifier = params[0] ?? "latest";
  const resolution = await resolve3({ alias: pkgName, bareSpecifier }, {
    lockfileDir: opts2.lockfileDir ?? opts2.dir,
    preferredVersions: {},
    projectDir: opts2.dir,
    publishedBy,
    publishedByExclude
  });
  if (!resolution?.manifest) {
    throw new PnpmError("CANNOT_RESOLVE_PNPM", `Cannot find "${bareSpecifier}" version of pnpm`);
  }
  const targetVersion = resolution.manifest.version;
  let previousVersion;
  if (opts2.wantedPackageManager?.name === packageManager.name) {
    if (opts2.wantedPackageManager.version !== targetVersion) {
      previousVersion = opts2.wantedPackageManager.version;
    }
  } else if (packageManager.version !== targetVersion) {
    previousVersion = packageManager.version;
  }
  const previousMajor = previousVersion != null ? import_semver48.default.coerce(previousVersion)?.major : void 0;
  const targetMajor = import_semver48.default.major(targetVersion);
  if (previousMajor != null && targetMajor > previousMajor) {
    const hint = MAJOR_UPGRADE_HINTS[targetMajor];
    if (hint)
      globalWarn(hint);
  }
  if (opts2.wantedPackageManager?.name === packageManager.name) {
    if (opts2.wantedPackageManager?.version !== resolution.manifest.version) {
      if (isImplicitLatest) {
        const projectCurrentVersion = await readProjectPinnedPnpmVersion(opts2.rootProjectManifestDir, opts2.wantedPackageManager?.version);
        if (projectCurrentVersion != null && import_semver48.default.lt(resolution.manifest.version, projectCurrentVersion)) {
          return `The current project is set to use pnpm v${projectCurrentVersion}, which is newer than the "latest" version on the registry (v${resolution.manifest.version}). No update performed. Run "pnpm self-update latest" to downgrade.`;
        }
      }
      const { manifest, writeProjectManifest: writeProjectManifest2 } = await readProjectManifest(opts2.rootProjectManifestDir);
      if (manifest.devEngines?.packageManager) {
        let manifestChanged = false;
        const legacyPm = manifest.packageManager != null ? parsePackageManager(manifest.packageManager) : void 0;
        const legacyPinsPnpm = legacyPm?.name === "pnpm" && legacyPm.version != null;
        const devEnginesPm = manifest.devEngines.packageManager;
        const pnpmEntry = Array.isArray(devEnginesPm) ? devEnginesPm.find((e) => e.name === "pnpm") : devEnginesPm.name === "pnpm" ? devEnginesPm : void 0;
        if (pnpmEntry) {
          const updated = legacyPinsPnpm ? resolution.manifest.version : updateVersionConstraint(pnpmEntry.version, resolution.manifest.version);
          if (updated !== pnpmEntry.version) {
            pnpmEntry.version = updated;
            manifestChanged = true;
          }
        }
        if (legacyPinsPnpm) {
          const newLegacy = `pnpm@${resolution.manifest.version}`;
          if (manifest.packageManager !== newLegacy) {
            manifest.packageManager = newLegacy;
            manifestChanged = true;
          }
        }
        if (manifestChanged)
          await writeProjectManifest2(manifest);
        const store2 = await createStoreController(opts2);
        await resolvePackageManagerIntegrities(resolution.manifest.version, {
          registries: opts2.registries,
          rootDir: opts2.rootProjectManifestDir,
          storeController: store2.ctrl,
          storeDir: store2.dir
        });
      } else {
        manifest.packageManager = `pnpm@${resolution.manifest.version}`;
        await writeProjectManifest2(manifest);
      }
      return `The current project has been updated to use pnpm v${resolution.manifest.version}`;
    } else {
      return `The current project is already set to use pnpm v${resolution.manifest.version}`;
    }
  }
  if (resolution.manifest.version === packageManager.version) {
    return `The currently active ${packageManager.name} v${packageManager.version} is already "${bareSpecifier}" and doesn't need an update`;
  }
  if (isImplicitLatest && import_semver48.default.lt(resolution.manifest.version, packageManager.version)) {
    return `The currently active ${packageManager.name} v${packageManager.version} is newer than the "latest" version on the registry (v${resolution.manifest.version}). No update performed. Run "pnpm self-update latest" to downgrade.`;
  }
  globalInfo(`Switching pnpm from v${packageManager.version} to v${resolution.manifest.version}...`);
  const store = await createStoreController(opts2);
  const envLockfile = await resolvePackageManagerIntegrities(resolution.manifest.version, {
    registries: opts2.registries,
    rootDir: opts2.pnpmHomeDir,
    storeController: store.ctrl,
    storeDir: store.dir
  });
  const { baseDir, alreadyExisted } = await installPnpm(resolution.manifest.version, {
    ...opts2,
    envLockfile,
    storeController: store.ctrl,
    storeDir: store.dir
  });
  await linkBins(path168.join(baseDir, "node_modules"), path168.join(opts2.pnpmHomeDir, "bin"), { warn: globalWarn });
  if (hasLegacyHomeDirShim(opts2.pnpmHomeDir)) {
    await linkBins(path168.join(baseDir, "node_modules"), opts2.pnpmHomeDir, { warn: globalWarn });
    globalWarn('Detected a pnpm v10 installation layout at PNPM_HOME. The pnpm shims at PNPM_HOME have been refreshed so the new version is active, but pnpm v11 expects bins in PNPM_HOME/bin. Run "pnpm setup" to migrate your PATH to the v11 layout.');
  }
  if (alreadyExisted) {
    return `The ${bareSpecifier} version, v${resolution.manifest.version}, is already present on the system. It was activated by linking it from ${baseDir}.`;
  }
  return `Successfully updated pnpm to v${resolution.manifest.version}`;
}
function hasLegacyHomeDirShim(pnpmHomeDir) {
  for (const name of ["pnpm", "pnpm.cmd"]) {
    if (fs89.existsSync(path168.join(pnpmHomeDir, name)))
      return true;
  }
  return false;
}
function updateVersionConstraint(current, newVersion) {
  if (current == null)
    return newVersion;
  if (import_semver48.default.satisfies(newVersion, current, { includePrerelease: true }))
    return current;
  const pinnedVersion = whichVersionIsPinned(current);
  if (pinnedVersion == null) {
    return `^${newVersion}`;
  }
  return versionSpecFromPinned(newVersion, pinnedVersion);
}
function versionSpecFromPinned(version2, pinnedVersion) {
  switch (pinnedVersion) {
    case "none":
    case "major":
      return `^${version2}`;
    case "minor":
      return `~${version2}`;
    case "patch":
      return version2;
  }
}
async function readProjectPinnedPnpmVersion(rootProjectManifestDir, spec) {
  let lockfilePinned;
  try {
    const envLockfile = await readEnvLockfile(rootProjectManifestDir);
    lockfilePinned = envLockfile?.importers["."].packageManagerDependencies?.pnpm?.version;
  } catch {
  }
  let specMin;
  if (spec != null) {
    try {
      specMin = import_semver48.default.minVersion(spec)?.version;
    } catch {
    }
  }
  if (lockfilePinned != null && specMin != null) {
    return import_semver48.default.gt(lockfilePinned, specMin) ? lockfilePinned : specMin;
  }
  return lockfilePinned ?? specMin;
}
var import_semver48, commandNames33, MAJOR_UPGRADE_HINTS, skipPackageManagerCheck2;
var init_selfUpdate = __esm({
  "../engine/pm/commands/lib/self-updater/selfUpdate.js"() {
    "use strict";
    init_lib42();
    init_lib5();
    init_lib29();
    init_lib61();
    init_lib23();
    init_lib2();
    init_lib57();
    init_lib130();
    init_lib78();
    init_lib3();
    init_lib24();
    init_lib90();
    init_lib13();
    init_es();
    init_lib63();
    import_semver48 = __toESM(require_semver2(), 1);
    init_installPnpm();
    commandNames33 = ["self-update"];
    MAJOR_UPGRADE_HINTS = {
      11: "pnpm v11 removed or renamed several v10 settings. See https://pnpm.io/11.x/migration for migration instructions."
    };
    skipPackageManagerCheck2 = true;
  }
});

// ../engine/pm/commands/lib/self-updater/index.js
var init_self_updater = __esm({
  "../engine/pm/commands/lib/self-updater/index.js"() {
    "use strict";
    init_selfUpdate();
    init_installPnpm();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/os.env.path-extender-posix/3.0.0/beaa82d02bc0c0317263c510cb09e9b07c329cc6430bddf96b36840e21cd00af/node_modules/@pnpm/os.env.path-extender-posix/dist/path-extender-posix.js
var require_path_extender_posix = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/os.env.path-extender-posix/3.0.0/beaa82d02bc0c0317263c510cb09e9b07c329cc6430bddf96b36840e21cd00af/node_modules/@pnpm/os.env.path-extender-posix/dist/path-extender-posix.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.addDirToPosixEnvPath = void 0;
    var fs_1 = __importDefault2(__require("fs"));
    var os_1 = __importDefault2(__require("os"));
    var path_1 = __importDefault2(__require("path"));
    var error_1 = require_lib17();
    var BadShellSectionError = class extends error_1.PnpmError {
      constructor(opts2) {
        super("BAD_SHELL_SECTION", `The config file at "${opts2.configFile} already contains a ${opts2.configSectionName} section but with other configuration`);
        this.current = opts2.current;
        this.wanted = opts2.wanted;
      }
    };
    async function addDirToPosixEnvPath(dir, opts2) {
      const currentShell = detectCurrentShell();
      return await updateShell(currentShell, dir, opts2);
    }
    exports2.addDirToPosixEnvPath = addDirToPosixEnvPath;
    function detectCurrentShell() {
      if (process.env.ZSH_VERSION)
        return "zsh";
      if (process.env.BASH_VERSION)
        return "bash";
      if (process.env.FISH_VERSION)
        return "fish";
      if (process.env.NU_VERSION)
        return "nu";
      return typeof process.env.SHELL === "string" ? path_1.default.basename(process.env.SHELL) : null;
    }
    async function updateShell(currentShell, pnpmHomeDir, opts2) {
      switch (currentShell) {
        case "bash":
        case "zsh":
        case "ksh":
        case "dash":
        case "sh": {
          return setupShell(currentShell, pnpmHomeDir, opts2);
        }
        case "fish": {
          return setupFishShell(pnpmHomeDir, opts2);
        }
        case "nu": {
          return setupNuShell(pnpmHomeDir, opts2);
        }
      }
      const supportedShellsMsg = "Supported shell languages are bash, zsh, fish, ksh, dash, sh, and nushell.";
      if (!currentShell)
        throw new error_1.PnpmError("UNKNOWN_SHELL", "Could not infer shell type.", {
          hint: `Set the SHELL environment variable to your active shell.
${supportedShellsMsg}`
        });
      throw new error_1.PnpmError("UNSUPPORTED_SHELL", `Can't setup configuration for "${currentShell}" shell`, {
        hint: supportedShellsMsg
      });
    }
    async function setupShell(shell, dir, opts2) {
      const configFile = getConfigFilePath(shell);
      let newSettings;
      const _createPathValue = createPathValue.bind(null, opts2.position ?? "start");
      if (opts2.proxyVarName) {
        const pathRef = opts2.proxyVarSubDir ? `$${opts2.proxyVarName}/${opts2.proxyVarSubDir}` : `$${opts2.proxyVarName}`;
        newSettings = `export ${opts2.proxyVarName}="${dir}"
case ":$PATH:" in
  *":${pathRef}:"*) ;;
  *) export PATH="${_createPathValue(pathRef)}" ;;
esac`;
      } else {
        newSettings = `case ":$PATH:" in
  *":${dir}:"*) ;;
  *) export PATH="${_createPathValue(dir)}" ;;
esac`;
      }
      const content = wrapSettings(opts2.configSectionName, newSettings);
      const { changeType, oldSettings } = await updateShellConfig(configFile, content, opts2);
      return {
        configFile: {
          path: configFile,
          changeType
        },
        oldSettings,
        newSettings
      };
    }
    function getConfigFilePath(shell) {
      switch (shell) {
        case "zsh":
          return path_1.default.join(process.env.ZDOTDIR || os_1.default.homedir(), `.${shell}rc`);
        case "dash":
        case "sh": {
          if (!process.env.ENV) {
            throw new error_1.PnpmError("NO_SHELL_CONFIG", `Cannot find a config file for ${shell}. The ENV environment variable is not set.`);
          }
          return process.env.ENV;
        }
        default:
          return path_1.default.join(os_1.default.homedir(), `.${shell}rc`);
      }
    }
    function createPathValue(position3, dir) {
      return position3 === "start" ? `${dir}:$PATH` : `$PATH:${dir}`;
    }
    async function setupFishShell(dir, opts2) {
      const configFile = path_1.default.join(os_1.default.homedir(), ".config/fish/config.fish");
      let newSettings;
      const _createPathValue = createFishPathValue.bind(null, opts2.position ?? "start");
      if (opts2.proxyVarName) {
        const pathRef = opts2.proxyVarSubDir ? `$${opts2.proxyVarName}/${opts2.proxyVarSubDir}` : `$${opts2.proxyVarName}`;
        const matchPattern = opts2.proxyVarSubDir ? `"${pathRef}"` : pathRef;
        newSettings = `set -gx ${opts2.proxyVarName} "${dir}"
if not string match -q -- ${matchPattern} $PATH
  set -gx PATH ${_createPathValue(pathRef)}
end`;
      } else {
        newSettings = `if not string match -q -- "${dir}" $PATH
  set -gx PATH ${_createPathValue(dir)}
end`;
      }
      const content = wrapSettings(opts2.configSectionName, newSettings);
      const { changeType, oldSettings } = await updateShellConfig(configFile, content, opts2);
      return {
        configFile: {
          path: configFile,
          changeType
        },
        oldSettings,
        newSettings
      };
    }
    async function setupNuShell(dir, opts2) {
      const configFile = path_1.default.join(os_1.default.homedir(), ".config/nushell/env.nu");
      let newSettings;
      const addingCommand = (opts2.position ?? "start") === "start" ? "prepend" : "append";
      if (opts2.proxyVarName) {
        const pathRef = opts2.proxyVarSubDir ? `($env.${opts2.proxyVarName} | path join "${opts2.proxyVarSubDir}")` : `$env.${opts2.proxyVarName}`;
        newSettings = `$env.${opts2.proxyVarName} = "${dir}"
$env.PATH = ($env.PATH | split row (char esep) | ${addingCommand} ${pathRef} )`;
      } else {
        newSettings = `$env.PATH = ($env.PATH | split row (char esep) | ${addingCommand} ${dir} )`;
      }
      const content = wrapSettings(opts2.configSectionName, newSettings);
      const { changeType, oldSettings } = await updateShellConfig(configFile, content, opts2);
      return {
        configFile: {
          path: configFile,
          changeType
        },
        oldSettings,
        newSettings
      };
    }
    function wrapSettings(sectionName, settings) {
      return `# ${sectionName}
${settings}
# ${sectionName} end`;
    }
    function createFishPathValue(position3, dir) {
      return position3 === "start" ? `"${dir}" $PATH` : `$PATH "${dir}"`;
    }
    async function updateShellConfig(configFile, newContent, opts2) {
      if (!fs_1.default.existsSync(configFile)) {
        await fs_1.default.promises.mkdir(path_1.default.dirname(configFile), { recursive: true });
        await fs_1.default.promises.writeFile(configFile, `${newContent}
`, "utf8");
        return {
          changeType: "created",
          oldSettings: ""
        };
      }
      const configContent = await fs_1.default.promises.readFile(configFile, "utf8");
      const match = new RegExp(`# ${opts2.configSectionName}
([\\s\\S]*)
# ${opts2.configSectionName} end`, "g").exec(configContent);
      if (!match) {
        await fs_1.default.promises.appendFile(configFile, `
${newContent}
`, "utf8");
        return {
          changeType: "appended",
          oldSettings: ""
        };
      }
      const oldSettings = match[1];
      if (match[0] !== newContent) {
        if (!opts2.overwrite) {
          throw new BadShellSectionError({
            configSectionName: opts2.configSectionName,
            current: match[0],
            wanted: newContent,
            configFile
          });
        }
        const newConfigContent = replaceSection(configContent, newContent, opts2.configSectionName);
        await fs_1.default.promises.writeFile(configFile, newConfigContent, "utf8");
        return {
          changeType: "modified",
          oldSettings
        };
      }
      return {
        changeType: "skipped",
        oldSettings
      };
    }
    function replaceSection(originalContent, newSection, sectionName) {
      return originalContent.replace(new RegExp(`# ${sectionName}[\\s\\S]*# ${sectionName} end`, "g"), newSection);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/os.env.path-extender-posix/3.0.0/beaa82d02bc0c0317263c510cb09e9b07c329cc6430bddf96b36840e21cd00af/node_modules/@pnpm/os.env.path-extender-posix/dist/index.js
var require_dist8 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/os.env.path-extender-posix/3.0.0/beaa82d02bc0c0317263c510cb09e9b07c329cc6430bddf96b36840e21cd00af/node_modules/@pnpm/os.env.path-extender-posix/dist/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.addDirToPosixEnvPath = void 0;
    var path_extender_posix_1 = require_path_extender_posix();
    Object.defineProperty(exports2, "addDirToPosixEnvPath", { enumerable: true, get: function() {
      return path_extender_posix_1.addDirToPosixEnvPath;
    } });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-object-atoms/1.1.2/d35853a81d27e2407e673cab2a7f5b5c86ed5c9d9f30d58425b71f0d1f70d1c9/node_modules/es-object-atoms/index.js
var require_es_object_atoms = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-object-atoms/1.1.2/d35853a81d27e2407e673cab2a7f5b5c86ed5c9d9f30d58425b71f0d1f70d1c9/node_modules/es-object-atoms/index.js"(exports2, module2) {
    "use strict";
    module2.exports = Object;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-errors/1.3.0/24993ac1c6e95a2b909d66d53cf24fe67e51ef7cbac7b8368110586e0aaf2463/node_modules/es-errors/index.js
var require_es_errors = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-errors/1.3.0/24993ac1c6e95a2b909d66d53cf24fe67e51ef7cbac7b8368110586e0aaf2463/node_modules/es-errors/index.js"(exports2, module2) {
    "use strict";
    module2.exports = Error;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-errors/1.3.0/24993ac1c6e95a2b909d66d53cf24fe67e51ef7cbac7b8368110586e0aaf2463/node_modules/es-errors/eval.js
var require_eval = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-errors/1.3.0/24993ac1c6e95a2b909d66d53cf24fe67e51ef7cbac7b8368110586e0aaf2463/node_modules/es-errors/eval.js"(exports2, module2) {
    "use strict";
    module2.exports = EvalError;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-errors/1.3.0/24993ac1c6e95a2b909d66d53cf24fe67e51ef7cbac7b8368110586e0aaf2463/node_modules/es-errors/range.js
var require_range4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-errors/1.3.0/24993ac1c6e95a2b909d66d53cf24fe67e51ef7cbac7b8368110586e0aaf2463/node_modules/es-errors/range.js"(exports2, module2) {
    "use strict";
    module2.exports = RangeError;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-errors/1.3.0/24993ac1c6e95a2b909d66d53cf24fe67e51ef7cbac7b8368110586e0aaf2463/node_modules/es-errors/ref.js
var require_ref = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-errors/1.3.0/24993ac1c6e95a2b909d66d53cf24fe67e51ef7cbac7b8368110586e0aaf2463/node_modules/es-errors/ref.js"(exports2, module2) {
    "use strict";
    module2.exports = ReferenceError;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-errors/1.3.0/24993ac1c6e95a2b909d66d53cf24fe67e51ef7cbac7b8368110586e0aaf2463/node_modules/es-errors/syntax.js
var require_syntax = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-errors/1.3.0/24993ac1c6e95a2b909d66d53cf24fe67e51ef7cbac7b8368110586e0aaf2463/node_modules/es-errors/syntax.js"(exports2, module2) {
    "use strict";
    module2.exports = SyntaxError;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-errors/1.3.0/24993ac1c6e95a2b909d66d53cf24fe67e51ef7cbac7b8368110586e0aaf2463/node_modules/es-errors/type.js
var require_type3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-errors/1.3.0/24993ac1c6e95a2b909d66d53cf24fe67e51ef7cbac7b8368110586e0aaf2463/node_modules/es-errors/type.js"(exports2, module2) {
    "use strict";
    module2.exports = TypeError;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-errors/1.3.0/24993ac1c6e95a2b909d66d53cf24fe67e51ef7cbac7b8368110586e0aaf2463/node_modules/es-errors/uri.js
var require_uri = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-errors/1.3.0/24993ac1c6e95a2b909d66d53cf24fe67e51ef7cbac7b8368110586e0aaf2463/node_modules/es-errors/uri.js"(exports2, module2) {
    "use strict";
    module2.exports = URIError;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/abs.js
var require_abs = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/abs.js"(exports2, module2) {
    "use strict";
    module2.exports = Math.abs;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/floor.js
var require_floor2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/floor.js"(exports2, module2) {
    "use strict";
    module2.exports = Math.floor;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/max.js
var require_max2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/max.js"(exports2, module2) {
    "use strict";
    module2.exports = Math.max;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/min.js
var require_min2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/min.js"(exports2, module2) {
    "use strict";
    module2.exports = Math.min;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/pow.js
var require_pow = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/pow.js"(exports2, module2) {
    "use strict";
    module2.exports = Math.pow;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/round.js
var require_round2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/round.js"(exports2, module2) {
    "use strict";
    module2.exports = Math.round;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/isNaN.js
var require_isNaN2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/isNaN.js"(exports2, module2) {
    "use strict";
    module2.exports = Number.isNaN || function isNaN2(a2) {
      return a2 !== a2;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/sign.js
var require_sign = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/sign.js"(exports2, module2) {
    "use strict";
    var $isNaN = require_isNaN2();
    module2.exports = function sign(number) {
      if ($isNaN(number) || number === 0) {
        return number;
      }
      return number < 0 ? -1 : 1;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/gopd/1.2.0/f83db696149e1f92e61b84fd56d397b4a9d56d819d173c63633a270d168f3c88/node_modules/gopd/gOPD.js
var require_gOPD = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/gopd/1.2.0/f83db696149e1f92e61b84fd56d397b4a9d56d819d173c63633a270d168f3c88/node_modules/gopd/gOPD.js"(exports2, module2) {
    "use strict";
    module2.exports = Object.getOwnPropertyDescriptor;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/gopd/1.2.0/f83db696149e1f92e61b84fd56d397b4a9d56d819d173c63633a270d168f3c88/node_modules/gopd/index.js
var require_gopd = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/gopd/1.2.0/f83db696149e1f92e61b84fd56d397b4a9d56d819d173c63633a270d168f3c88/node_modules/gopd/index.js"(exports2, module2) {
    "use strict";
    var $gOPD = require_gOPD();
    if ($gOPD) {
      try {
        $gOPD([], "length");
      } catch (e) {
        $gOPD = null;
      }
    }
    module2.exports = $gOPD;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-define-property/1.0.1/ee5c44fd2919d2411289ae5b1c29479563f4e47f76066129b6b05b6d740f0ae7/node_modules/es-define-property/index.js
var require_es_define_property = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-define-property/1.0.1/ee5c44fd2919d2411289ae5b1c29479563f4e47f76066129b6b05b6d740f0ae7/node_modules/es-define-property/index.js"(exports2, module2) {
    "use strict";
    var $defineProperty = Object.defineProperty || false;
    if ($defineProperty) {
      try {
        $defineProperty({}, "a", { value: 1 });
      } catch (e) {
        $defineProperty = false;
      }
    }
    module2.exports = $defineProperty;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/has-symbols/1.1.0/939c5c72561d9447674a7f37519fa93acf88f422db90655c3f29274aed5082a9/node_modules/has-symbols/shams.js
var require_shams = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/has-symbols/1.1.0/939c5c72561d9447674a7f37519fa93acf88f422db90655c3f29274aed5082a9/node_modules/has-symbols/shams.js"(exports2, module2) {
    "use strict";
    module2.exports = function hasSymbols() {
      if (typeof Symbol !== "function" || typeof Object.getOwnPropertySymbols !== "function") {
        return false;
      }
      if (typeof Symbol.iterator === "symbol") {
        return true;
      }
      var obj = {};
      var sym = /* @__PURE__ */ Symbol("test");
      var symObj = Object(sym);
      if (typeof sym === "string") {
        return false;
      }
      if (Object.prototype.toString.call(sym) !== "[object Symbol]") {
        return false;
      }
      if (Object.prototype.toString.call(symObj) !== "[object Symbol]") {
        return false;
      }
      var symVal = 42;
      obj[sym] = symVal;
      for (var _ in obj) {
        return false;
      }
      if (typeof Object.keys === "function" && Object.keys(obj).length !== 0) {
        return false;
      }
      if (typeof Object.getOwnPropertyNames === "function" && Object.getOwnPropertyNames(obj).length !== 0) {
        return false;
      }
      var syms = Object.getOwnPropertySymbols(obj);
      if (syms.length !== 1 || syms[0] !== sym) {
        return false;
      }
      if (!Object.prototype.propertyIsEnumerable.call(obj, sym)) {
        return false;
      }
      if (typeof Object.getOwnPropertyDescriptor === "function") {
        var descriptor = (
          /** @type {PropertyDescriptor} */
          Object.getOwnPropertyDescriptor(obj, sym)
        );
        if (descriptor.value !== symVal || descriptor.enumerable !== true) {
          return false;
        }
      }
      return true;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/has-symbols/1.1.0/939c5c72561d9447674a7f37519fa93acf88f422db90655c3f29274aed5082a9/node_modules/has-symbols/index.js
var require_has_symbols = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/has-symbols/1.1.0/939c5c72561d9447674a7f37519fa93acf88f422db90655c3f29274aed5082a9/node_modules/has-symbols/index.js"(exports2, module2) {
    "use strict";
    var origSymbol = typeof Symbol !== "undefined" && Symbol;
    var hasSymbolSham = require_shams();
    module2.exports = function hasNativeSymbols() {
      if (typeof origSymbol !== "function") {
        return false;
      }
      if (typeof Symbol !== "function") {
        return false;
      }
      if (typeof origSymbol("foo") !== "symbol") {
        return false;
      }
      if (typeof /* @__PURE__ */ Symbol("bar") !== "symbol") {
        return false;
      }
      return hasSymbolSham();
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/get-proto/1.0.1/c319adda50fbebe4927d68fed4a69f8edb8dbc48270c5911efa8a1c1ce746368/node_modules/get-proto/Reflect.getPrototypeOf.js
var require_Reflect_getPrototypeOf = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/get-proto/1.0.1/c319adda50fbebe4927d68fed4a69f8edb8dbc48270c5911efa8a1c1ce746368/node_modules/get-proto/Reflect.getPrototypeOf.js"(exports2, module2) {
    "use strict";
    module2.exports = typeof Reflect !== "undefined" && Reflect.getPrototypeOf || null;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/get-proto/1.0.1/c319adda50fbebe4927d68fed4a69f8edb8dbc48270c5911efa8a1c1ce746368/node_modules/get-proto/Object.getPrototypeOf.js
var require_Object_getPrototypeOf = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/get-proto/1.0.1/c319adda50fbebe4927d68fed4a69f8edb8dbc48270c5911efa8a1c1ce746368/node_modules/get-proto/Object.getPrototypeOf.js"(exports2, module2) {
    "use strict";
    var $Object = require_es_object_atoms();
    module2.exports = $Object.getPrototypeOf || null;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/function-bind/1.1.2/1ee678fc4cb7ca74adda07d426fb4315247838415d6fbaf0ac6ac13ade3bc4e2/node_modules/function-bind/implementation.js
var require_implementation = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/function-bind/1.1.2/1ee678fc4cb7ca74adda07d426fb4315247838415d6fbaf0ac6ac13ade3bc4e2/node_modules/function-bind/implementation.js"(exports2, module2) {
    "use strict";
    var ERROR_MESSAGE = "Function.prototype.bind called on incompatible ";
    var toStr = Object.prototype.toString;
    var max3 = Math.max;
    var funcType = "[object Function]";
    var concatty = function concatty2(a2, b) {
      var arr = [];
      for (var i2 = 0; i2 < a2.length; i2 += 1) {
        arr[i2] = a2[i2];
      }
      for (var j2 = 0; j2 < b.length; j2 += 1) {
        arr[j2 + a2.length] = b[j2];
      }
      return arr;
    };
    var slicy = function slicy2(arrLike, offset) {
      var arr = [];
      for (var i2 = offset || 0, j2 = 0; i2 < arrLike.length; i2 += 1, j2 += 1) {
        arr[j2] = arrLike[i2];
      }
      return arr;
    };
    var joiny = function(arr, joiner) {
      var str2 = "";
      for (var i2 = 0; i2 < arr.length; i2 += 1) {
        str2 += arr[i2];
        if (i2 + 1 < arr.length) {
          str2 += joiner;
        }
      }
      return str2;
    };
    module2.exports = function bind3(that) {
      var target2 = this;
      if (typeof target2 !== "function" || toStr.apply(target2) !== funcType) {
        throw new TypeError(ERROR_MESSAGE + target2);
      }
      var args = slicy(arguments, 1);
      var bound;
      var binder = function() {
        if (this instanceof bound) {
          var result2 = target2.apply(
            this,
            concatty(args, arguments)
          );
          if (Object(result2) === result2) {
            return result2;
          }
          return this;
        }
        return target2.apply(
          that,
          concatty(args, arguments)
        );
      };
      var boundLength = max3(0, target2.length - args.length);
      var boundArgs = [];
      for (var i2 = 0; i2 < boundLength; i2++) {
        boundArgs[i2] = "$" + i2;
      }
      bound = Function("binder", "return function (" + joiny(boundArgs, ",") + "){ return binder.apply(this,arguments); }")(binder);
      if (target2.prototype) {
        var Empty = function Empty2() {
        };
        Empty.prototype = target2.prototype;
        bound.prototype = new Empty();
        Empty.prototype = null;
      }
      return bound;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/function-bind/1.1.2/1ee678fc4cb7ca74adda07d426fb4315247838415d6fbaf0ac6ac13ade3bc4e2/node_modules/function-bind/index.js
var require_function_bind = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/function-bind/1.1.2/1ee678fc4cb7ca74adda07d426fb4315247838415d6fbaf0ac6ac13ade3bc4e2/node_modules/function-bind/index.js"(exports2, module2) {
    "use strict";
    var implementation = require_implementation();
    module2.exports = Function.prototype.bind || implementation;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/call-bind-apply-helpers/1.0.2/ec36d394337159da41576a129a9a2daa51e1bab3d7431da59057bf4df92aa13a/node_modules/call-bind-apply-helpers/functionCall.js
var require_functionCall = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/call-bind-apply-helpers/1.0.2/ec36d394337159da41576a129a9a2daa51e1bab3d7431da59057bf4df92aa13a/node_modules/call-bind-apply-helpers/functionCall.js"(exports2, module2) {
    "use strict";
    module2.exports = Function.prototype.call;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/call-bind-apply-helpers/1.0.2/ec36d394337159da41576a129a9a2daa51e1bab3d7431da59057bf4df92aa13a/node_modules/call-bind-apply-helpers/functionApply.js
var require_functionApply = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/call-bind-apply-helpers/1.0.2/ec36d394337159da41576a129a9a2daa51e1bab3d7431da59057bf4df92aa13a/node_modules/call-bind-apply-helpers/functionApply.js"(exports2, module2) {
    "use strict";
    module2.exports = Function.prototype.apply;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/call-bind-apply-helpers/1.0.2/ec36d394337159da41576a129a9a2daa51e1bab3d7431da59057bf4df92aa13a/node_modules/call-bind-apply-helpers/reflectApply.js
var require_reflectApply = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/call-bind-apply-helpers/1.0.2/ec36d394337159da41576a129a9a2daa51e1bab3d7431da59057bf4df92aa13a/node_modules/call-bind-apply-helpers/reflectApply.js"(exports2, module2) {
    "use strict";
    module2.exports = typeof Reflect !== "undefined" && Reflect && Reflect.apply;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/call-bind-apply-helpers/1.0.2/ec36d394337159da41576a129a9a2daa51e1bab3d7431da59057bf4df92aa13a/node_modules/call-bind-apply-helpers/actualApply.js
var require_actualApply = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/call-bind-apply-helpers/1.0.2/ec36d394337159da41576a129a9a2daa51e1bab3d7431da59057bf4df92aa13a/node_modules/call-bind-apply-helpers/actualApply.js"(exports2, module2) {
    "use strict";
    var bind3 = require_function_bind();
    var $apply = require_functionApply();
    var $call = require_functionCall();
    var $reflectApply = require_reflectApply();
    module2.exports = $reflectApply || bind3.call($call, $apply);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/call-bind-apply-helpers/1.0.2/ec36d394337159da41576a129a9a2daa51e1bab3d7431da59057bf4df92aa13a/node_modules/call-bind-apply-helpers/index.js
var require_call_bind_apply_helpers = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/call-bind-apply-helpers/1.0.2/ec36d394337159da41576a129a9a2daa51e1bab3d7431da59057bf4df92aa13a/node_modules/call-bind-apply-helpers/index.js"(exports2, module2) {
    "use strict";
    var bind3 = require_function_bind();
    var $TypeError = require_type3();
    var $call = require_functionCall();
    var $actualApply = require_actualApply();
    module2.exports = function callBindBasic(args) {
      if (args.length < 1 || typeof args[0] !== "function") {
        throw new $TypeError("a function is required");
      }
      return $actualApply(bind3, $call, args);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/dunder-proto/1.0.1/31970353ac79f0c3444d11fa987ef18a78aaf8876aa75cf3776a7b90c2b1d926/node_modules/dunder-proto/get.js
var require_get3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/dunder-proto/1.0.1/31970353ac79f0c3444d11fa987ef18a78aaf8876aa75cf3776a7b90c2b1d926/node_modules/dunder-proto/get.js"(exports2, module2) {
    "use strict";
    var callBind = require_call_bind_apply_helpers();
    var gOPD = require_gopd();
    var hasProtoAccessor;
    try {
      hasProtoAccessor = /** @type {{ __proto__?: typeof Array.prototype }} */
      [].__proto__ === Array.prototype;
    } catch (e) {
      if (!e || typeof e !== "object" || !("code" in e) || e.code !== "ERR_PROTO_ACCESS") {
        throw e;
      }
    }
    var desc = !!hasProtoAccessor && gOPD && gOPD(
      Object.prototype,
      /** @type {keyof typeof Object.prototype} */
      "__proto__"
    );
    var $Object = Object;
    var $getPrototypeOf = $Object.getPrototypeOf;
    module2.exports = desc && typeof desc.get === "function" ? callBind([desc.get]) : typeof $getPrototypeOf === "function" ? (
      /** @type {import('./get')} */
      function getDunder(value) {
        return $getPrototypeOf(value == null ? value : $Object(value));
      }
    ) : false;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/get-proto/1.0.1/c319adda50fbebe4927d68fed4a69f8edb8dbc48270c5911efa8a1c1ce746368/node_modules/get-proto/index.js
var require_get_proto = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/get-proto/1.0.1/c319adda50fbebe4927d68fed4a69f8edb8dbc48270c5911efa8a1c1ce746368/node_modules/get-proto/index.js"(exports2, module2) {
    "use strict";
    var reflectGetProto = require_Reflect_getPrototypeOf();
    var originalGetProto = require_Object_getPrototypeOf();
    var getDunderProto = require_get3();
    module2.exports = reflectGetProto ? function getProto(O2) {
      return reflectGetProto(O2);
    } : originalGetProto ? function getProto(O2) {
      if (!O2 || typeof O2 !== "object" && typeof O2 !== "function") {
        throw new TypeError("getProto: not an object");
      }
      return originalGetProto(O2);
    } : getDunderProto ? function getProto(O2) {
      return getDunderProto(O2);
    } : null;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/hasown/2.0.3/1d084f0bfe3088e6ff3c7254b2d36bd212daeb053bf7c8ba076d4e8d3018d115/node_modules/hasown/index.js
var require_hasown = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/hasown/2.0.3/1d084f0bfe3088e6ff3c7254b2d36bd212daeb053bf7c8ba076d4e8d3018d115/node_modules/hasown/index.js"(exports2, module2) {
    "use strict";
    var call = Function.prototype.call;
    var $hasOwn = Object.prototype.hasOwnProperty;
    var bind3 = require_function_bind();
    module2.exports = bind3.call(call, $hasOwn);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/get-intrinsic/1.3.0/454c8309a413261c0f2d794732361cfd26dae0216e91f4ac12284b023851feee/node_modules/get-intrinsic/index.js
var require_get_intrinsic = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/get-intrinsic/1.3.0/454c8309a413261c0f2d794732361cfd26dae0216e91f4ac12284b023851feee/node_modules/get-intrinsic/index.js"(exports2, module2) {
    "use strict";
    var undefined2;
    var $Object = require_es_object_atoms();
    var $Error = require_es_errors();
    var $EvalError = require_eval();
    var $RangeError = require_range4();
    var $ReferenceError = require_ref();
    var $SyntaxError = require_syntax();
    var $TypeError = require_type3();
    var $URIError = require_uri();
    var abs = require_abs();
    var floor = require_floor2();
    var max3 = require_max2();
    var min = require_min2();
    var pow = require_pow();
    var round = require_round2();
    var sign = require_sign();
    var $Function = Function;
    var getEvalledConstructor = function(expressionSyntax) {
      try {
        return $Function('"use strict"; return (' + expressionSyntax + ").constructor;")();
      } catch (e) {
      }
    };
    var $gOPD = require_gopd();
    var $defineProperty = require_es_define_property();
    var throwTypeError = function() {
      throw new $TypeError();
    };
    var ThrowTypeError = $gOPD ? (function() {
      try {
        arguments.callee;
        return throwTypeError;
      } catch (calleeThrows) {
        try {
          return $gOPD(arguments, "callee").get;
        } catch (gOPDthrows) {
          return throwTypeError;
        }
      }
    })() : throwTypeError;
    var hasSymbols = require_has_symbols()();
    var getProto = require_get_proto();
    var $ObjectGPO = require_Object_getPrototypeOf();
    var $ReflectGPO = require_Reflect_getPrototypeOf();
    var $apply = require_functionApply();
    var $call = require_functionCall();
    var needsEval = {};
    var TypedArray = typeof Uint8Array === "undefined" || !getProto ? undefined2 : getProto(Uint8Array);
    var INTRINSICS = {
      __proto__: null,
      "%AggregateError%": typeof AggregateError === "undefined" ? undefined2 : AggregateError,
      "%Array%": Array,
      "%ArrayBuffer%": typeof ArrayBuffer === "undefined" ? undefined2 : ArrayBuffer,
      "%ArrayIteratorPrototype%": hasSymbols && getProto ? getProto([][Symbol.iterator]()) : undefined2,
      "%AsyncFromSyncIteratorPrototype%": undefined2,
      "%AsyncFunction%": needsEval,
      "%AsyncGenerator%": needsEval,
      "%AsyncGeneratorFunction%": needsEval,
      "%AsyncIteratorPrototype%": needsEval,
      "%Atomics%": typeof Atomics === "undefined" ? undefined2 : Atomics,
      "%BigInt%": typeof BigInt === "undefined" ? undefined2 : BigInt,
      "%BigInt64Array%": typeof BigInt64Array === "undefined" ? undefined2 : BigInt64Array,
      "%BigUint64Array%": typeof BigUint64Array === "undefined" ? undefined2 : BigUint64Array,
      "%Boolean%": Boolean,
      "%DataView%": typeof DataView === "undefined" ? undefined2 : DataView,
      "%Date%": Date,
      "%decodeURI%": decodeURI,
      "%decodeURIComponent%": decodeURIComponent,
      "%encodeURI%": encodeURI,
      "%encodeURIComponent%": encodeURIComponent,
      "%Error%": $Error,
      "%eval%": eval,
      // eslint-disable-line no-eval
      "%EvalError%": $EvalError,
      "%Float16Array%": typeof Float16Array === "undefined" ? undefined2 : Float16Array,
      "%Float32Array%": typeof Float32Array === "undefined" ? undefined2 : Float32Array,
      "%Float64Array%": typeof Float64Array === "undefined" ? undefined2 : Float64Array,
      "%FinalizationRegistry%": typeof FinalizationRegistry === "undefined" ? undefined2 : FinalizationRegistry,
      "%Function%": $Function,
      "%GeneratorFunction%": needsEval,
      "%Int8Array%": typeof Int8Array === "undefined" ? undefined2 : Int8Array,
      "%Int16Array%": typeof Int16Array === "undefined" ? undefined2 : Int16Array,
      "%Int32Array%": typeof Int32Array === "undefined" ? undefined2 : Int32Array,
      "%isFinite%": isFinite,
      "%isNaN%": isNaN,
      "%IteratorPrototype%": hasSymbols && getProto ? getProto(getProto([][Symbol.iterator]())) : undefined2,
      "%JSON%": typeof JSON === "object" ? JSON : undefined2,
      "%Map%": typeof Map === "undefined" ? undefined2 : Map,
      "%MapIteratorPrototype%": typeof Map === "undefined" || !hasSymbols || !getProto ? undefined2 : getProto((/* @__PURE__ */ new Map())[Symbol.iterator]()),
      "%Math%": Math,
      "%Number%": Number,
      "%Object%": $Object,
      "%Object.getOwnPropertyDescriptor%": $gOPD,
      "%parseFloat%": parseFloat,
      "%parseInt%": parseInt,
      "%Promise%": typeof Promise === "undefined" ? undefined2 : Promise,
      "%Proxy%": typeof Proxy === "undefined" ? undefined2 : Proxy,
      "%RangeError%": $RangeError,
      "%ReferenceError%": $ReferenceError,
      "%Reflect%": typeof Reflect === "undefined" ? undefined2 : Reflect,
      "%RegExp%": RegExp,
      "%Set%": typeof Set === "undefined" ? undefined2 : Set,
      "%SetIteratorPrototype%": typeof Set === "undefined" || !hasSymbols || !getProto ? undefined2 : getProto((/* @__PURE__ */ new Set())[Symbol.iterator]()),
      "%SharedArrayBuffer%": typeof SharedArrayBuffer === "undefined" ? undefined2 : SharedArrayBuffer,
      "%String%": String,
      "%StringIteratorPrototype%": hasSymbols && getProto ? getProto(""[Symbol.iterator]()) : undefined2,
      "%Symbol%": hasSymbols ? Symbol : undefined2,
      "%SyntaxError%": $SyntaxError,
      "%ThrowTypeError%": ThrowTypeError,
      "%TypedArray%": TypedArray,
      "%TypeError%": $TypeError,
      "%Uint8Array%": typeof Uint8Array === "undefined" ? undefined2 : Uint8Array,
      "%Uint8ClampedArray%": typeof Uint8ClampedArray === "undefined" ? undefined2 : Uint8ClampedArray,
      "%Uint16Array%": typeof Uint16Array === "undefined" ? undefined2 : Uint16Array,
      "%Uint32Array%": typeof Uint32Array === "undefined" ? undefined2 : Uint32Array,
      "%URIError%": $URIError,
      "%WeakMap%": typeof WeakMap === "undefined" ? undefined2 : WeakMap,
      "%WeakRef%": typeof WeakRef === "undefined" ? undefined2 : WeakRef,
      "%WeakSet%": typeof WeakSet === "undefined" ? undefined2 : WeakSet,
      "%Function.prototype.call%": $call,
      "%Function.prototype.apply%": $apply,
      "%Object.defineProperty%": $defineProperty,
      "%Object.getPrototypeOf%": $ObjectGPO,
      "%Math.abs%": abs,
      "%Math.floor%": floor,
      "%Math.max%": max3,
      "%Math.min%": min,
      "%Math.pow%": pow,
      "%Math.round%": round,
      "%Math.sign%": sign,
      "%Reflect.getPrototypeOf%": $ReflectGPO
    };
    if (getProto) {
      try {
        null.error;
      } catch (e) {
        errorProto = getProto(getProto(e));
        INTRINSICS["%Error.prototype%"] = errorProto;
      }
    }
    var errorProto;
    var doEval = function doEval2(name) {
      var value;
      if (name === "%AsyncFunction%") {
        value = getEvalledConstructor("async function () {}");
      } else if (name === "%GeneratorFunction%") {
        value = getEvalledConstructor("function* () {}");
      } else if (name === "%AsyncGeneratorFunction%") {
        value = getEvalledConstructor("async function* () {}");
      } else if (name === "%AsyncGenerator%") {
        var fn = doEval2("%AsyncGeneratorFunction%");
        if (fn) {
          value = fn.prototype;
        }
      } else if (name === "%AsyncIteratorPrototype%") {
        var gen = doEval2("%AsyncGenerator%");
        if (gen && getProto) {
          value = getProto(gen.prototype);
        }
      }
      INTRINSICS[name] = value;
      return value;
    };
    var LEGACY_ALIASES = {
      __proto__: null,
      "%ArrayBufferPrototype%": ["ArrayBuffer", "prototype"],
      "%ArrayPrototype%": ["Array", "prototype"],
      "%ArrayProto_entries%": ["Array", "prototype", "entries"],
      "%ArrayProto_forEach%": ["Array", "prototype", "forEach"],
      "%ArrayProto_keys%": ["Array", "prototype", "keys"],
      "%ArrayProto_values%": ["Array", "prototype", "values"],
      "%AsyncFunctionPrototype%": ["AsyncFunction", "prototype"],
      "%AsyncGenerator%": ["AsyncGeneratorFunction", "prototype"],
      "%AsyncGeneratorPrototype%": ["AsyncGeneratorFunction", "prototype", "prototype"],
      "%BooleanPrototype%": ["Boolean", "prototype"],
      "%DataViewPrototype%": ["DataView", "prototype"],
      "%DatePrototype%": ["Date", "prototype"],
      "%ErrorPrototype%": ["Error", "prototype"],
      "%EvalErrorPrototype%": ["EvalError", "prototype"],
      "%Float32ArrayPrototype%": ["Float32Array", "prototype"],
      "%Float64ArrayPrototype%": ["Float64Array", "prototype"],
      "%FunctionPrototype%": ["Function", "prototype"],
      "%Generator%": ["GeneratorFunction", "prototype"],
      "%GeneratorPrototype%": ["GeneratorFunction", "prototype", "prototype"],
      "%Int8ArrayPrototype%": ["Int8Array", "prototype"],
      "%Int16ArrayPrototype%": ["Int16Array", "prototype"],
      "%Int32ArrayPrototype%": ["Int32Array", "prototype"],
      "%JSONParse%": ["JSON", "parse"],
      "%JSONStringify%": ["JSON", "stringify"],
      "%MapPrototype%": ["Map", "prototype"],
      "%NumberPrototype%": ["Number", "prototype"],
      "%ObjectPrototype%": ["Object", "prototype"],
      "%ObjProto_toString%": ["Object", "prototype", "toString"],
      "%ObjProto_valueOf%": ["Object", "prototype", "valueOf"],
      "%PromisePrototype%": ["Promise", "prototype"],
      "%PromiseProto_then%": ["Promise", "prototype", "then"],
      "%Promise_all%": ["Promise", "all"],
      "%Promise_reject%": ["Promise", "reject"],
      "%Promise_resolve%": ["Promise", "resolve"],
      "%RangeErrorPrototype%": ["RangeError", "prototype"],
      "%ReferenceErrorPrototype%": ["ReferenceError", "prototype"],
      "%RegExpPrototype%": ["RegExp", "prototype"],
      "%SetPrototype%": ["Set", "prototype"],
      "%SharedArrayBufferPrototype%": ["SharedArrayBuffer", "prototype"],
      "%StringPrototype%": ["String", "prototype"],
      "%SymbolPrototype%": ["Symbol", "prototype"],
      "%SyntaxErrorPrototype%": ["SyntaxError", "prototype"],
      "%TypedArrayPrototype%": ["TypedArray", "prototype"],
      "%TypeErrorPrototype%": ["TypeError", "prototype"],
      "%Uint8ArrayPrototype%": ["Uint8Array", "prototype"],
      "%Uint8ClampedArrayPrototype%": ["Uint8ClampedArray", "prototype"],
      "%Uint16ArrayPrototype%": ["Uint16Array", "prototype"],
      "%Uint32ArrayPrototype%": ["Uint32Array", "prototype"],
      "%URIErrorPrototype%": ["URIError", "prototype"],
      "%WeakMapPrototype%": ["WeakMap", "prototype"],
      "%WeakSetPrototype%": ["WeakSet", "prototype"]
    };
    var bind3 = require_function_bind();
    var hasOwn = require_hasown();
    var $concat = bind3.call($call, Array.prototype.concat);
    var $spliceApply = bind3.call($apply, Array.prototype.splice);
    var $replace = bind3.call($call, String.prototype.replace);
    var $strSlice = bind3.call($call, String.prototype.slice);
    var $exec = bind3.call($call, RegExp.prototype.exec);
    var rePropName = /[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g;
    var reEscapeChar = /\\(\\)?/g;
    var stringToPath = function stringToPath2(string) {
      var first = $strSlice(string, 0, 1);
      var last = $strSlice(string, -1);
      if (first === "%" && last !== "%") {
        throw new $SyntaxError("invalid intrinsic syntax, expected closing `%`");
      } else if (last === "%" && first !== "%") {
        throw new $SyntaxError("invalid intrinsic syntax, expected opening `%`");
      }
      var result2 = [];
      $replace(string, rePropName, function(match, number, quote2, subString) {
        result2[result2.length] = quote2 ? $replace(subString, reEscapeChar, "$1") : number || match;
      });
      return result2;
    };
    var getBaseIntrinsic = function getBaseIntrinsic2(name, allowMissing) {
      var intrinsicName = name;
      var alias;
      if (hasOwn(LEGACY_ALIASES, intrinsicName)) {
        alias = LEGACY_ALIASES[intrinsicName];
        intrinsicName = "%" + alias[0] + "%";
      }
      if (hasOwn(INTRINSICS, intrinsicName)) {
        var value = INTRINSICS[intrinsicName];
        if (value === needsEval) {
          value = doEval(intrinsicName);
        }
        if (typeof value === "undefined" && !allowMissing) {
          throw new $TypeError("intrinsic " + name + " exists, but is not available. Please file an issue!");
        }
        return {
          alias,
          name: intrinsicName,
          value
        };
      }
      throw new $SyntaxError("intrinsic " + name + " does not exist!");
    };
    module2.exports = function GetIntrinsic(name, allowMissing) {
      if (typeof name !== "string" || name.length === 0) {
        throw new $TypeError("intrinsic name must be a non-empty string");
      }
      if (arguments.length > 1 && typeof allowMissing !== "boolean") {
        throw new $TypeError('"allowMissing" argument must be a boolean');
      }
      if ($exec(/^%?[^%]*%?$/, name) === null) {
        throw new $SyntaxError("`%` may not be present anywhere but at the beginning and end of the intrinsic name");
      }
      var parts = stringToPath(name);
      var intrinsicBaseName = parts.length > 0 ? parts[0] : "";
      var intrinsic = getBaseIntrinsic("%" + intrinsicBaseName + "%", allowMissing);
      var intrinsicRealName = intrinsic.name;
      var value = intrinsic.value;
      var skipFurtherCaching = false;
      var alias = intrinsic.alias;
      if (alias) {
        intrinsicBaseName = alias[0];
        $spliceApply(parts, $concat([0, 1], alias));
      }
      for (var i2 = 1, isOwn = true; i2 < parts.length; i2 += 1) {
        var part = parts[i2];
        var first = $strSlice(part, 0, 1);
        var last = $strSlice(part, -1);
        if ((first === '"' || first === "'" || first === "`" || (last === '"' || last === "'" || last === "`")) && first !== last) {
          throw new $SyntaxError("property names with quotes must have matching quotes");
        }
        if (part === "constructor" || !isOwn) {
          skipFurtherCaching = true;
        }
        intrinsicBaseName += "." + part;
        intrinsicRealName = "%" + intrinsicBaseName + "%";
        if (hasOwn(INTRINSICS, intrinsicRealName)) {
          value = INTRINSICS[intrinsicRealName];
        } else if (value != null) {
          if (!(part in value)) {
            if (!allowMissing) {
              throw new $TypeError("base intrinsic for " + name + " exists, but the property is not available.");
            }
            return void undefined2;
          }
          if ($gOPD && i2 + 1 >= parts.length) {
            var desc = $gOPD(value, part);
            isOwn = !!desc;
            if (isOwn && "get" in desc && !("originalValue" in desc.get)) {
              value = desc.get;
            } else {
              value = value[part];
            }
          } else {
            isOwn = hasOwn(value, part);
            value = value[part];
          }
          if (isOwn && !skipFurtherCaching) {
            INTRINSICS[intrinsicRealName] = value;
          }
        }
      }
      return value;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/define-data-property/1.1.4/cc7c98ca6a3e90a428d5047c4769761611ef1ac50c23cc259097e2e551d5af0c/node_modules/define-data-property/index.js
var require_define_data_property = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/define-data-property/1.1.4/cc7c98ca6a3e90a428d5047c4769761611ef1ac50c23cc259097e2e551d5af0c/node_modules/define-data-property/index.js"(exports2, module2) {
    "use strict";
    var $defineProperty = require_es_define_property();
    var $SyntaxError = require_syntax();
    var $TypeError = require_type3();
    var gopd = require_gopd();
    module2.exports = function defineDataProperty(obj, property, value) {
      if (!obj || typeof obj !== "object" && typeof obj !== "function") {
        throw new $TypeError("`obj` must be an object or a function`");
      }
      if (typeof property !== "string" && typeof property !== "symbol") {
        throw new $TypeError("`property` must be a string or a symbol`");
      }
      if (arguments.length > 3 && typeof arguments[3] !== "boolean" && arguments[3] !== null) {
        throw new $TypeError("`nonEnumerable`, if provided, must be a boolean or null");
      }
      if (arguments.length > 4 && typeof arguments[4] !== "boolean" && arguments[4] !== null) {
        throw new $TypeError("`nonWritable`, if provided, must be a boolean or null");
      }
      if (arguments.length > 5 && typeof arguments[5] !== "boolean" && arguments[5] !== null) {
        throw new $TypeError("`nonConfigurable`, if provided, must be a boolean or null");
      }
      if (arguments.length > 6 && typeof arguments[6] !== "boolean") {
        throw new $TypeError("`loose`, if provided, must be a boolean");
      }
      var nonEnumerable = arguments.length > 3 ? arguments[3] : null;
      var nonWritable = arguments.length > 4 ? arguments[4] : null;
      var nonConfigurable = arguments.length > 5 ? arguments[5] : null;
      var loose = arguments.length > 6 ? arguments[6] : false;
      var desc = !!gopd && gopd(obj, property);
      if ($defineProperty) {
        $defineProperty(obj, property, {
          configurable: nonConfigurable === null && desc ? desc.configurable : !nonConfigurable,
          enumerable: nonEnumerable === null && desc ? desc.enumerable : !nonEnumerable,
          value,
          writable: nonWritable === null && desc ? desc.writable : !nonWritable
        });
      } else if (loose || !nonEnumerable && !nonWritable && !nonConfigurable) {
        obj[property] = value;
      } else {
        throw new $SyntaxError("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.");
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/has-property-descriptors/1.0.2/f43ec73a676512c6f4ab797b0b36c4c1982d903414c5df6277d6cf1d09662148/node_modules/has-property-descriptors/index.js
var require_has_property_descriptors = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/has-property-descriptors/1.0.2/f43ec73a676512c6f4ab797b0b36c4c1982d903414c5df6277d6cf1d09662148/node_modules/has-property-descriptors/index.js"(exports2, module2) {
    "use strict";
    var $defineProperty = require_es_define_property();
    var hasPropertyDescriptors = function hasPropertyDescriptors2() {
      return !!$defineProperty;
    };
    hasPropertyDescriptors.hasArrayLengthDefineBug = function hasArrayLengthDefineBug() {
      if (!$defineProperty) {
        return null;
      }
      try {
        return $defineProperty([], "length", { value: 1 }).length !== 1;
      } catch (e) {
        return true;
      }
    };
    module2.exports = hasPropertyDescriptors;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/set-function-length/1.2.2/047f63fdf91bbeed3a9d0ef69b7f90b85484ad95aad5f0445078e974faa63757/node_modules/set-function-length/index.js
var require_set_function_length = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/set-function-length/1.2.2/047f63fdf91bbeed3a9d0ef69b7f90b85484ad95aad5f0445078e974faa63757/node_modules/set-function-length/index.js"(exports2, module2) {
    "use strict";
    var GetIntrinsic = require_get_intrinsic();
    var define2 = require_define_data_property();
    var hasDescriptors = require_has_property_descriptors()();
    var gOPD = require_gopd();
    var $TypeError = require_type3();
    var $floor = GetIntrinsic("%Math.floor%");
    module2.exports = function setFunctionLength(fn, length) {
      if (typeof fn !== "function") {
        throw new $TypeError("`fn` is not a function");
      }
      if (typeof length !== "number" || length < 0 || length > 4294967295 || $floor(length) !== length) {
        throw new $TypeError("`length` must be a positive 32-bit integer");
      }
      var loose = arguments.length > 2 && !!arguments[2];
      var functionLengthIsConfigurable = true;
      var functionLengthIsWritable = true;
      if ("length" in fn && gOPD) {
        var desc = gOPD(fn, "length");
        if (desc && !desc.configurable) {
          functionLengthIsConfigurable = false;
        }
        if (desc && !desc.writable) {
          functionLengthIsWritable = false;
        }
      }
      if (functionLengthIsConfigurable || functionLengthIsWritable || !loose) {
        if (hasDescriptors) {
          define2(
            /** @type {Parameters<define>[0]} */
            fn,
            "length",
            length,
            true,
            true
          );
        } else {
          define2(
            /** @type {Parameters<define>[0]} */
            fn,
            "length",
            length
          );
        }
      }
      return fn;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/call-bind-apply-helpers/1.0.2/ec36d394337159da41576a129a9a2daa51e1bab3d7431da59057bf4df92aa13a/node_modules/call-bind-apply-helpers/applyBind.js
var require_applyBind = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/call-bind-apply-helpers/1.0.2/ec36d394337159da41576a129a9a2daa51e1bab3d7431da59057bf4df92aa13a/node_modules/call-bind-apply-helpers/applyBind.js"(exports2, module2) {
    "use strict";
    var bind3 = require_function_bind();
    var $apply = require_functionApply();
    var actualApply = require_actualApply();
    module2.exports = function applyBind() {
      return actualApply(bind3, $apply, arguments);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/call-bind/1.0.9/92fbdf7efc6a29dd2955850c911cdad9d3928d506f7c9c89f6972b2b28dd5a80/node_modules/call-bind/index.js
var require_call_bind = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/call-bind/1.0.9/92fbdf7efc6a29dd2955850c911cdad9d3928d506f7c9c89f6972b2b28dd5a80/node_modules/call-bind/index.js"(exports2, module2) {
    "use strict";
    var setFunctionLength = require_set_function_length();
    var $defineProperty = require_es_define_property();
    var callBindBasic = require_call_bind_apply_helpers();
    var applyBind = require_applyBind();
    module2.exports = function callBind(originalFunction) {
      var func = callBindBasic(arguments);
      var adjustedLength = 1 + originalFunction.length - (arguments.length - 1);
      return setFunctionLength(
        func,
        adjustedLength > 0 ? adjustedLength : 0,
        true
      );
    };
    if ($defineProperty) {
      $defineProperty(module2.exports, "apply", { value: applyBind });
    } else {
      module2.exports.apply = applyBind;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/object-keys/1.1.1/58477a00855acdcf562413483b00ceca079f637e0816908fc5ef653c014cfe3b/node_modules/object-keys/isArguments.js
var require_isArguments2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/object-keys/1.1.1/58477a00855acdcf562413483b00ceca079f637e0816908fc5ef653c014cfe3b/node_modules/object-keys/isArguments.js"(exports2, module2) {
    "use strict";
    var toStr = Object.prototype.toString;
    module2.exports = function isArguments(value) {
      var str2 = toStr.call(value);
      var isArgs = str2 === "[object Arguments]";
      if (!isArgs) {
        isArgs = str2 !== "[object Array]" && value !== null && typeof value === "object" && typeof value.length === "number" && value.length >= 0 && toStr.call(value.callee) === "[object Function]";
      }
      return isArgs;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/object-keys/1.1.1/58477a00855acdcf562413483b00ceca079f637e0816908fc5ef653c014cfe3b/node_modules/object-keys/implementation.js
var require_implementation2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/object-keys/1.1.1/58477a00855acdcf562413483b00ceca079f637e0816908fc5ef653c014cfe3b/node_modules/object-keys/implementation.js"(exports2, module2) {
    "use strict";
    var keysShim;
    if (!Object.keys) {
      has = Object.prototype.hasOwnProperty;
      toStr = Object.prototype.toString;
      isArgs = require_isArguments2();
      isEnumerable = Object.prototype.propertyIsEnumerable;
      hasDontEnumBug = !isEnumerable.call({ toString: null }, "toString");
      hasProtoEnumBug = isEnumerable.call(function() {
      }, "prototype");
      dontEnums = [
        "toString",
        "toLocaleString",
        "valueOf",
        "hasOwnProperty",
        "isPrototypeOf",
        "propertyIsEnumerable",
        "constructor"
      ];
      equalsConstructorPrototype = function(o2) {
        var ctor = o2.constructor;
        return ctor && ctor.prototype === o2;
      };
      excludedKeys = {
        $applicationCache: true,
        $console: true,
        $external: true,
        $frame: true,
        $frameElement: true,
        $frames: true,
        $innerHeight: true,
        $innerWidth: true,
        $onmozfullscreenchange: true,
        $onmozfullscreenerror: true,
        $outerHeight: true,
        $outerWidth: true,
        $pageXOffset: true,
        $pageYOffset: true,
        $parent: true,
        $scrollLeft: true,
        $scrollTop: true,
        $scrollX: true,
        $scrollY: true,
        $self: true,
        $webkitIndexedDB: true,
        $webkitStorageInfo: true,
        $window: true
      };
      hasAutomationEqualityBug = (function() {
        if (typeof window === "undefined") {
          return false;
        }
        for (var k2 in window) {
          try {
            if (!excludedKeys["$" + k2] && has.call(window, k2) && window[k2] !== null && typeof window[k2] === "object") {
              try {
                equalsConstructorPrototype(window[k2]);
              } catch (e) {
                return true;
              }
            }
          } catch (e) {
            return true;
          }
        }
        return false;
      })();
      equalsConstructorPrototypeIfNotBuggy = function(o2) {
        if (typeof window === "undefined" || !hasAutomationEqualityBug) {
          return equalsConstructorPrototype(o2);
        }
        try {
          return equalsConstructorPrototype(o2);
        } catch (e) {
          return false;
        }
      };
      keysShim = function keys4(object) {
        var isObject4 = object !== null && typeof object === "object";
        var isFunction = toStr.call(object) === "[object Function]";
        var isArguments = isArgs(object);
        var isString = isObject4 && toStr.call(object) === "[object String]";
        var theKeys = [];
        if (!isObject4 && !isFunction && !isArguments) {
          throw new TypeError("Object.keys called on a non-object");
        }
        var skipProto = hasProtoEnumBug && isFunction;
        if (isString && object.length > 0 && !has.call(object, 0)) {
          for (var i2 = 0; i2 < object.length; ++i2) {
            theKeys.push(String(i2));
          }
        }
        if (isArguments && object.length > 0) {
          for (var j2 = 0; j2 < object.length; ++j2) {
            theKeys.push(String(j2));
          }
        } else {
          for (var name in object) {
            if (!(skipProto && name === "prototype") && has.call(object, name)) {
              theKeys.push(String(name));
            }
          }
        }
        if (hasDontEnumBug) {
          var skipConstructor = equalsConstructorPrototypeIfNotBuggy(object);
          for (var k2 = 0; k2 < dontEnums.length; ++k2) {
            if (!(skipConstructor && dontEnums[k2] === "constructor") && has.call(object, dontEnums[k2])) {
              theKeys.push(dontEnums[k2]);
            }
          }
        }
        return theKeys;
      };
    }
    var has;
    var toStr;
    var isArgs;
    var isEnumerable;
    var hasDontEnumBug;
    var hasProtoEnumBug;
    var dontEnums;
    var equalsConstructorPrototype;
    var excludedKeys;
    var hasAutomationEqualityBug;
    var equalsConstructorPrototypeIfNotBuggy;
    module2.exports = keysShim;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/object-keys/1.1.1/58477a00855acdcf562413483b00ceca079f637e0816908fc5ef653c014cfe3b/node_modules/object-keys/index.js
var require_object_keys = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/object-keys/1.1.1/58477a00855acdcf562413483b00ceca079f637e0816908fc5ef653c014cfe3b/node_modules/object-keys/index.js"(exports2, module2) {
    "use strict";
    var slice3 = Array.prototype.slice;
    var isArgs = require_isArguments2();
    var origKeys = Object.keys;
    var keysShim = origKeys ? function keys4(o2) {
      return origKeys(o2);
    } : require_implementation2();
    var originalKeys = Object.keys;
    keysShim.shim = function shimObjectKeys() {
      if (Object.keys) {
        var keysWorksWithArguments = (function() {
          var args = Object.keys(arguments);
          return args && args.length === arguments.length;
        })(1, 2);
        if (!keysWorksWithArguments) {
          Object.keys = function keys4(object) {
            if (isArgs(object)) {
              return originalKeys(slice3.call(object));
            }
            return originalKeys(object);
          };
        }
      } else {
        Object.keys = keysShim;
      }
      return Object.keys || keysShim;
    };
    module2.exports = keysShim;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/define-properties/1.2.1/47c44c4cec973fb176b237c32638f21b4613cdc783af4a9d6c893574415bb1ca/node_modules/define-properties/index.js
var require_define_properties = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/define-properties/1.2.1/47c44c4cec973fb176b237c32638f21b4613cdc783af4a9d6c893574415bb1ca/node_modules/define-properties/index.js"(exports2, module2) {
    "use strict";
    var keys4 = require_object_keys();
    var hasSymbols = typeof Symbol === "function" && typeof /* @__PURE__ */ Symbol("foo") === "symbol";
    var toStr = Object.prototype.toString;
    var concat = Array.prototype.concat;
    var defineDataProperty = require_define_data_property();
    var isFunction = function(fn) {
      return typeof fn === "function" && toStr.call(fn) === "[object Function]";
    };
    var supportsDescriptors = require_has_property_descriptors()();
    var defineProperty = function(object, name, value, predicate) {
      if (name in object) {
        if (predicate === true) {
          if (object[name] === value) {
            return;
          }
        } else if (!isFunction(predicate) || !predicate()) {
          return;
        }
      }
      if (supportsDescriptors) {
        defineDataProperty(object, name, value, true);
      } else {
        defineDataProperty(object, name, value);
      }
    };
    var defineProperties = function(object, map26) {
      var predicates = arguments.length > 2 ? arguments[2] : {};
      var props3 = keys4(map26);
      if (hasSymbols) {
        props3 = concat.call(props3, Object.getOwnPropertySymbols(map26));
      }
      for (var i2 = 0; i2 < props3.length; i2 += 1) {
        defineProperty(object, props3[i2], map26[props3[i2]], predicates[props3[i2]]);
      }
    };
    defineProperties.supportsDescriptors = !!supportsDescriptors;
    module2.exports = defineProperties;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/call-bound/1.0.4/1268594d9b1c4207d08064a21355feaf306f17b39db50cfbdd2ca879ccfe4cf9/node_modules/call-bound/index.js
var require_call_bound = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/call-bound/1.0.4/1268594d9b1c4207d08064a21355feaf306f17b39db50cfbdd2ca879ccfe4cf9/node_modules/call-bound/index.js"(exports2, module2) {
    "use strict";
    var GetIntrinsic = require_get_intrinsic();
    var callBindBasic = require_call_bind_apply_helpers();
    var $indexOf = callBindBasic([GetIntrinsic("%String.prototype.indexOf%")]);
    module2.exports = function callBoundIntrinsic(name, allowMissing) {
      var intrinsic = (
        /** @type {(this: unknown, ...args: unknown[]) => unknown} */
        GetIntrinsic(name, !!allowMissing)
      );
      if (typeof intrinsic === "function" && $indexOf(name, ".prototype.") > -1) {
        return callBindBasic(
          /** @type {const} */
          [intrinsic]
        );
      }
      return intrinsic;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/helpers/IsArray.js
var require_IsArray = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/helpers/IsArray.js"(exports2, module2) {
    "use strict";
    var GetIntrinsic = require_get_intrinsic();
    var $Array = GetIntrinsic("%Array%");
    var toStr = !$Array.isArray && require_call_bound()("Object.prototype.toString");
    module2.exports = $Array.isArray || function IsArray(argument) {
      return toStr(argument) === "[object Array]";
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/IsArray.js
var require_IsArray2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/IsArray.js"(exports2, module2) {
    "use strict";
    module2.exports = require_IsArray();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/Call.js
var require_Call = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/Call.js"(exports2, module2) {
    "use strict";
    var GetIntrinsic = require_get_intrinsic();
    var callBound = require_call_bound();
    var $TypeError = require_type3();
    var IsArray = require_IsArray2();
    var $apply = GetIntrinsic("%Reflect.apply%", true) || callBound("Function.prototype.apply");
    module2.exports = function Call(F, V) {
      var argumentsList = arguments.length > 2 ? arguments[2] : [];
      if (!IsArray(argumentsList)) {
        throw new $TypeError("Assertion failed: optional `argumentsList`, if provided, must be a List");
      }
      return $apply(F, V, argumentsList);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/object-inspect/1.13.4/14f7d528809a692dc6ab35c97cd514983e8be8ec48eb7abed298493a4800b7d3/node_modules/object-inspect/util.inspect.js
var require_util_inspect = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/object-inspect/1.13.4/14f7d528809a692dc6ab35c97cd514983e8be8ec48eb7abed298493a4800b7d3/node_modules/object-inspect/util.inspect.js"(exports2, module2) {
    module2.exports = __require("util").inspect;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/object-inspect/1.13.4/14f7d528809a692dc6ab35c97cd514983e8be8ec48eb7abed298493a4800b7d3/node_modules/object-inspect/index.js
var require_object_inspect = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/object-inspect/1.13.4/14f7d528809a692dc6ab35c97cd514983e8be8ec48eb7abed298493a4800b7d3/node_modules/object-inspect/index.js"(exports2, module2) {
    var hasMap = typeof Map === "function" && Map.prototype;
    var mapSizeDescriptor = Object.getOwnPropertyDescriptor && hasMap ? Object.getOwnPropertyDescriptor(Map.prototype, "size") : null;
    var mapSize = hasMap && mapSizeDescriptor && typeof mapSizeDescriptor.get === "function" ? mapSizeDescriptor.get : null;
    var mapForEach = hasMap && Map.prototype.forEach;
    var hasSet = typeof Set === "function" && Set.prototype;
    var setSizeDescriptor = Object.getOwnPropertyDescriptor && hasSet ? Object.getOwnPropertyDescriptor(Set.prototype, "size") : null;
    var setSize = hasSet && setSizeDescriptor && typeof setSizeDescriptor.get === "function" ? setSizeDescriptor.get : null;
    var setForEach = hasSet && Set.prototype.forEach;
    var hasWeakMap = typeof WeakMap === "function" && WeakMap.prototype;
    var weakMapHas = hasWeakMap ? WeakMap.prototype.has : null;
    var hasWeakSet = typeof WeakSet === "function" && WeakSet.prototype;
    var weakSetHas = hasWeakSet ? WeakSet.prototype.has : null;
    var hasWeakRef = typeof WeakRef === "function" && WeakRef.prototype;
    var weakRefDeref = hasWeakRef ? WeakRef.prototype.deref : null;
    var booleanValueOf = Boolean.prototype.valueOf;
    var objectToString3 = Object.prototype.toString;
    var functionToString = Function.prototype.toString;
    var $match = String.prototype.match;
    var $slice = String.prototype.slice;
    var $replace = String.prototype.replace;
    var $toUpperCase = String.prototype.toUpperCase;
    var $toLowerCase = String.prototype.toLowerCase;
    var $test = RegExp.prototype.test;
    var $concat = Array.prototype.concat;
    var $join = Array.prototype.join;
    var $arrSlice = Array.prototype.slice;
    var $floor = Math.floor;
    var bigIntValueOf = typeof BigInt === "function" ? BigInt.prototype.valueOf : null;
    var gOPS = Object.getOwnPropertySymbols;
    var symToString = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? Symbol.prototype.toString : null;
    var hasShammedSymbols = typeof Symbol === "function" && typeof Symbol.iterator === "object";
    var toStringTag = typeof Symbol === "function" && Symbol.toStringTag && (typeof Symbol.toStringTag === hasShammedSymbols ? "object" : "symbol") ? Symbol.toStringTag : null;
    var isEnumerable = Object.prototype.propertyIsEnumerable;
    var gPO = (typeof Reflect === "function" ? Reflect.getPrototypeOf : Object.getPrototypeOf) || ([].__proto__ === Array.prototype ? function(O2) {
      return O2.__proto__;
    } : null);
    function addNumericSeparator(num, str2) {
      if (num === Infinity || num === -Infinity || num !== num || num && num > -1e3 && num < 1e3 || $test.call(/e/, str2)) {
        return str2;
      }
      var sepRegex = /[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;
      if (typeof num === "number") {
        var int2 = num < 0 ? -$floor(-num) : $floor(num);
        if (int2 !== num) {
          var intStr = String(int2);
          var dec = $slice.call(str2, intStr.length + 1);
          return $replace.call(intStr, sepRegex, "$&_") + "." + $replace.call($replace.call(dec, /([0-9]{3})/g, "$&_"), /_$/, "");
        }
      }
      return $replace.call(str2, sepRegex, "$&_");
    }
    var utilInspect = require_util_inspect();
    var inspectCustom = utilInspect.custom;
    var inspectSymbol = isSymbol(inspectCustom) ? inspectCustom : null;
    var quotes = {
      __proto__: null,
      "double": '"',
      single: "'"
    };
    var quoteREs = {
      __proto__: null,
      "double": /(["\\])/g,
      single: /(['\\])/g
    };
    module2.exports = function inspect_(obj, options, depth, seen) {
      var opts2 = options || {};
      if (has(opts2, "quoteStyle") && !has(quotes, opts2.quoteStyle)) {
        throw new TypeError('option "quoteStyle" must be "single" or "double"');
      }
      if (has(opts2, "maxStringLength") && (typeof opts2.maxStringLength === "number" ? opts2.maxStringLength < 0 && opts2.maxStringLength !== Infinity : opts2.maxStringLength !== null)) {
        throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');
      }
      var customInspect = has(opts2, "customInspect") ? opts2.customInspect : true;
      if (typeof customInspect !== "boolean" && customInspect !== "symbol") {
        throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`");
      }
      if (has(opts2, "indent") && opts2.indent !== null && opts2.indent !== "	" && !(parseInt(opts2.indent, 10) === opts2.indent && opts2.indent > 0)) {
        throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`');
      }
      if (has(opts2, "numericSeparator") && typeof opts2.numericSeparator !== "boolean") {
        throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');
      }
      var numericSeparator = opts2.numericSeparator;
      if (typeof obj === "undefined") {
        return "undefined";
      }
      if (obj === null) {
        return "null";
      }
      if (typeof obj === "boolean") {
        return obj ? "true" : "false";
      }
      if (typeof obj === "string") {
        return inspectString(obj, opts2);
      }
      if (typeof obj === "number") {
        if (obj === 0) {
          return Infinity / obj > 0 ? "0" : "-0";
        }
        var str2 = String(obj);
        return numericSeparator ? addNumericSeparator(obj, str2) : str2;
      }
      if (typeof obj === "bigint") {
        var bigIntStr = String(obj) + "n";
        return numericSeparator ? addNumericSeparator(obj, bigIntStr) : bigIntStr;
      }
      var maxDepth = typeof opts2.depth === "undefined" ? 5 : opts2.depth;
      if (typeof depth === "undefined") {
        depth = 0;
      }
      if (depth >= maxDepth && maxDepth > 0 && typeof obj === "object") {
        return isArray(obj) ? "[Array]" : "[Object]";
      }
      var indent = getIndent(opts2, depth);
      if (typeof seen === "undefined") {
        seen = [];
      } else if (indexOf2(seen, obj) >= 0) {
        return "[Circular]";
      }
      function inspect3(value, from5, noIndent) {
        if (from5) {
          seen = $arrSlice.call(seen);
          seen.push(from5);
        }
        if (noIndent) {
          var newOpts = {
            depth: opts2.depth
          };
          if (has(opts2, "quoteStyle")) {
            newOpts.quoteStyle = opts2.quoteStyle;
          }
          return inspect_(value, newOpts, depth + 1, seen);
        }
        return inspect_(value, opts2, depth + 1, seen);
      }
      if (typeof obj === "function" && !isRegExp(obj)) {
        var name = nameOf(obj);
        var keys4 = arrObjKeys(obj, inspect3);
        return "[Function" + (name ? ": " + name : " (anonymous)") + "]" + (keys4.length > 0 ? " { " + $join.call(keys4, ", ") + " }" : "");
      }
      if (isSymbol(obj)) {
        var symString = hasShammedSymbols ? $replace.call(String(obj), /^(Symbol\(.*\))_[^)]*$/, "$1") : symToString.call(obj);
        return typeof obj === "object" && !hasShammedSymbols ? markBoxed(symString) : symString;
      }
      if (isElement(obj)) {
        var s = "<" + $toLowerCase.call(String(obj.nodeName));
        var attrs = obj.attributes || [];
        for (var i2 = 0; i2 < attrs.length; i2++) {
          s += " " + attrs[i2].name + "=" + wrapQuotes(quote2(attrs[i2].value), "double", opts2);
        }
        s += ">";
        if (obj.childNodes && obj.childNodes.length) {
          s += "...";
        }
        s += "</" + $toLowerCase.call(String(obj.nodeName)) + ">";
        return s;
      }
      if (isArray(obj)) {
        if (obj.length === 0) {
          return "[]";
        }
        var xs = arrObjKeys(obj, inspect3);
        if (indent && !singleLineValues(xs)) {
          return "[" + indentedJoin(xs, indent) + "]";
        }
        return "[ " + $join.call(xs, ", ") + " ]";
      }
      if (isError(obj)) {
        var parts = arrObjKeys(obj, inspect3);
        if (!("cause" in Error.prototype) && "cause" in obj && !isEnumerable.call(obj, "cause")) {
          return "{ [" + String(obj) + "] " + $join.call($concat.call("[cause]: " + inspect3(obj.cause), parts), ", ") + " }";
        }
        if (parts.length === 0) {
          return "[" + String(obj) + "]";
        }
        return "{ [" + String(obj) + "] " + $join.call(parts, ", ") + " }";
      }
      if (typeof obj === "object" && customInspect) {
        if (inspectSymbol && typeof obj[inspectSymbol] === "function" && utilInspect) {
          return utilInspect(obj, { depth: maxDepth - depth });
        } else if (customInspect !== "symbol" && typeof obj.inspect === "function") {
          return obj.inspect();
        }
      }
      if (isMap(obj)) {
        var mapParts = [];
        if (mapForEach) {
          mapForEach.call(obj, function(value, key) {
            mapParts.push(inspect3(key, obj, true) + " => " + inspect3(value, obj));
          });
        }
        return collectionOf("Map", mapSize.call(obj), mapParts, indent);
      }
      if (isSet(obj)) {
        var setParts = [];
        if (setForEach) {
          setForEach.call(obj, function(value) {
            setParts.push(inspect3(value, obj));
          });
        }
        return collectionOf("Set", setSize.call(obj), setParts, indent);
      }
      if (isWeakMap(obj)) {
        return weakCollectionOf("WeakMap");
      }
      if (isWeakSet(obj)) {
        return weakCollectionOf("WeakSet");
      }
      if (isWeakRef(obj)) {
        return weakCollectionOf("WeakRef");
      }
      if (isNumber(obj)) {
        return markBoxed(inspect3(Number(obj)));
      }
      if (isBigInt(obj)) {
        return markBoxed(inspect3(bigIntValueOf.call(obj)));
      }
      if (isBoolean2(obj)) {
        return markBoxed(booleanValueOf.call(obj));
      }
      if (isString(obj)) {
        return markBoxed(inspect3(String(obj)));
      }
      if (typeof window !== "undefined" && obj === window) {
        return "{ [object Window] }";
      }
      if (typeof globalThis !== "undefined" && obj === globalThis || typeof global !== "undefined" && obj === global) {
        return "{ [object globalThis] }";
      }
      if (!isDate(obj) && !isRegExp(obj)) {
        var ys = arrObjKeys(obj, inspect3);
        var isPlainObject4 = gPO ? gPO(obj) === Object.prototype : obj instanceof Object || obj.constructor === Object;
        var protoTag = obj instanceof Object ? "" : "null prototype";
        var stringTag = !isPlainObject4 && toStringTag && Object(obj) === obj && toStringTag in obj ? $slice.call(toStr(obj), 8, -1) : protoTag ? "Object" : "";
        var constructorTag = isPlainObject4 || typeof obj.constructor !== "function" ? "" : obj.constructor.name ? obj.constructor.name + " " : "";
        var tag = constructorTag + (stringTag || protoTag ? "[" + $join.call($concat.call([], stringTag || [], protoTag || []), ": ") + "] " : "");
        if (ys.length === 0) {
          return tag + "{}";
        }
        if (indent) {
          return tag + "{" + indentedJoin(ys, indent) + "}";
        }
        return tag + "{ " + $join.call(ys, ", ") + " }";
      }
      return String(obj);
    };
    function wrapQuotes(s, defaultStyle, opts2) {
      var style = opts2.quoteStyle || defaultStyle;
      var quoteChar = quotes[style];
      return quoteChar + s + quoteChar;
    }
    function quote2(s) {
      return $replace.call(String(s), /"/g, "&quot;");
    }
    function canTrustToString(obj) {
      return !toStringTag || !(typeof obj === "object" && (toStringTag in obj || typeof obj[toStringTag] !== "undefined"));
    }
    function isArray(obj) {
      return toStr(obj) === "[object Array]" && canTrustToString(obj);
    }
    function isDate(obj) {
      return toStr(obj) === "[object Date]" && canTrustToString(obj);
    }
    function isRegExp(obj) {
      return toStr(obj) === "[object RegExp]" && canTrustToString(obj);
    }
    function isError(obj) {
      return toStr(obj) === "[object Error]" && canTrustToString(obj);
    }
    function isString(obj) {
      return toStr(obj) === "[object String]" && canTrustToString(obj);
    }
    function isNumber(obj) {
      return toStr(obj) === "[object Number]" && canTrustToString(obj);
    }
    function isBoolean2(obj) {
      return toStr(obj) === "[object Boolean]" && canTrustToString(obj);
    }
    function isSymbol(obj) {
      if (hasShammedSymbols) {
        return obj && typeof obj === "object" && obj instanceof Symbol;
      }
      if (typeof obj === "symbol") {
        return true;
      }
      if (!obj || typeof obj !== "object" || !symToString) {
        return false;
      }
      try {
        symToString.call(obj);
        return true;
      } catch (e) {
      }
      return false;
    }
    function isBigInt(obj) {
      if (!obj || typeof obj !== "object" || !bigIntValueOf) {
        return false;
      }
      try {
        bigIntValueOf.call(obj);
        return true;
      } catch (e) {
      }
      return false;
    }
    var hasOwn = Object.prototype.hasOwnProperty || function(key) {
      return key in this;
    };
    function has(obj, key) {
      return hasOwn.call(obj, key);
    }
    function toStr(obj) {
      return objectToString3.call(obj);
    }
    function nameOf(f) {
      if (f.name) {
        return f.name;
      }
      var m = $match.call(functionToString.call(f), /^function\s*([\w$]+)/);
      if (m) {
        return m[1];
      }
      return null;
    }
    function indexOf2(xs, x) {
      if (xs.indexOf) {
        return xs.indexOf(x);
      }
      for (var i2 = 0, l = xs.length; i2 < l; i2++) {
        if (xs[i2] === x) {
          return i2;
        }
      }
      return -1;
    }
    function isMap(x) {
      if (!mapSize || !x || typeof x !== "object") {
        return false;
      }
      try {
        mapSize.call(x);
        try {
          setSize.call(x);
        } catch (s) {
          return true;
        }
        return x instanceof Map;
      } catch (e) {
      }
      return false;
    }
    function isWeakMap(x) {
      if (!weakMapHas || !x || typeof x !== "object") {
        return false;
      }
      try {
        weakMapHas.call(x, weakMapHas);
        try {
          weakSetHas.call(x, weakSetHas);
        } catch (s) {
          return true;
        }
        return x instanceof WeakMap;
      } catch (e) {
      }
      return false;
    }
    function isWeakRef(x) {
      if (!weakRefDeref || !x || typeof x !== "object") {
        return false;
      }
      try {
        weakRefDeref.call(x);
        return true;
      } catch (e) {
      }
      return false;
    }
    function isSet(x) {
      if (!setSize || !x || typeof x !== "object") {
        return false;
      }
      try {
        setSize.call(x);
        try {
          mapSize.call(x);
        } catch (m) {
          return true;
        }
        return x instanceof Set;
      } catch (e) {
      }
      return false;
    }
    function isWeakSet(x) {
      if (!weakSetHas || !x || typeof x !== "object") {
        return false;
      }
      try {
        weakSetHas.call(x, weakSetHas);
        try {
          weakMapHas.call(x, weakMapHas);
        } catch (s) {
          return true;
        }
        return x instanceof WeakSet;
      } catch (e) {
      }
      return false;
    }
    function isElement(x) {
      if (!x || typeof x !== "object") {
        return false;
      }
      if (typeof HTMLElement !== "undefined" && x instanceof HTMLElement) {
        return true;
      }
      return typeof x.nodeName === "string" && typeof x.getAttribute === "function";
    }
    function inspectString(str2, opts2) {
      if (str2.length > opts2.maxStringLength) {
        var remaining = str2.length - opts2.maxStringLength;
        var trailer = "... " + remaining + " more character" + (remaining > 1 ? "s" : "");
        return inspectString($slice.call(str2, 0, opts2.maxStringLength), opts2) + trailer;
      }
      var quoteRE = quoteREs[opts2.quoteStyle || "single"];
      quoteRE.lastIndex = 0;
      var s = $replace.call($replace.call(str2, quoteRE, "\\$1"), /[\x00-\x1f]/g, lowbyte);
      return wrapQuotes(s, "single", opts2);
    }
    function lowbyte(c3) {
      var n2 = c3.charCodeAt(0);
      var x = {
        8: "b",
        9: "t",
        10: "n",
        12: "f",
        13: "r"
      }[n2];
      if (x) {
        return "\\" + x;
      }
      return "\\x" + (n2 < 16 ? "0" : "") + $toUpperCase.call(n2.toString(16));
    }
    function markBoxed(str2) {
      return "Object(" + str2 + ")";
    }
    function weakCollectionOf(type4) {
      return type4 + " { ? }";
    }
    function collectionOf(type4, size, entries, indent) {
      var joinedEntries = indent ? indentedJoin(entries, indent) : $join.call(entries, ", ");
      return type4 + " (" + size + ") {" + joinedEntries + "}";
    }
    function singleLineValues(xs) {
      for (var i2 = 0; i2 < xs.length; i2++) {
        if (indexOf2(xs[i2], "\n") >= 0) {
          return false;
        }
      }
      return true;
    }
    function getIndent(opts2, depth) {
      var baseIndent;
      if (opts2.indent === "	") {
        baseIndent = "	";
      } else if (typeof opts2.indent === "number" && opts2.indent > 0) {
        baseIndent = $join.call(Array(opts2.indent + 1), " ");
      } else {
        return null;
      }
      return {
        base: baseIndent,
        prev: $join.call(Array(depth + 1), baseIndent)
      };
    }
    function indentedJoin(xs, indent) {
      if (xs.length === 0) {
        return "";
      }
      var lineJoiner = "\n" + indent.prev + indent.base;
      return lineJoiner + $join.call(xs, "," + lineJoiner) + "\n" + indent.prev;
    }
    function arrObjKeys(obj, inspect3) {
      var isArr = isArray(obj);
      var xs = [];
      if (isArr) {
        xs.length = obj.length;
        for (var i2 = 0; i2 < obj.length; i2++) {
          xs[i2] = has(obj, i2) ? inspect3(obj[i2], obj) : "";
        }
      }
      var syms = typeof gOPS === "function" ? gOPS(obj) : [];
      var symMap;
      if (hasShammedSymbols) {
        symMap = {};
        for (var k2 = 0; k2 < syms.length; k2++) {
          symMap["$" + syms[k2]] = syms[k2];
        }
      }
      for (var key in obj) {
        if (!has(obj, key)) {
          continue;
        }
        if (isArr && String(Number(key)) === key && key < obj.length) {
          continue;
        }
        if (hasShammedSymbols && symMap["$" + key] instanceof Symbol) {
          continue;
        } else if ($test.call(/[^\w$]/, key)) {
          xs.push(inspect3(key, obj) + ": " + inspect3(obj[key], obj));
        } else {
          xs.push(key + ": " + inspect3(obj[key], obj));
        }
      }
      if (typeof gOPS === "function") {
        for (var j2 = 0; j2 < syms.length; j2++) {
          if (isEnumerable.call(obj, syms[j2])) {
            xs.push("[" + inspect3(syms[j2]) + "]: " + inspect3(obj[syms[j2]], obj));
          }
        }
      }
      return xs;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/helpers/isPropertyKey.js
var require_isPropertyKey = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/helpers/isPropertyKey.js"(exports2, module2) {
    "use strict";
    module2.exports = function isPropertyKey(argument) {
      return typeof argument === "string" || typeof argument === "symbol";
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-object-atoms/1.1.2/d35853a81d27e2407e673cab2a7f5b5c86ed5c9d9f30d58425b71f0d1f70d1c9/node_modules/es-object-atoms/isObject.js
var require_isObject2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-object-atoms/1.1.2/d35853a81d27e2407e673cab2a7f5b5c86ed5c9d9f30d58425b71f0d1f70d1c9/node_modules/es-object-atoms/isObject.js"(exports2, module2) {
    "use strict";
    module2.exports = function isObject4(x) {
      return !!x && (typeof x === "function" || typeof x === "object");
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/Get.js
var require_Get = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/Get.js"(exports2, module2) {
    "use strict";
    var $TypeError = require_type3();
    var inspect3 = require_object_inspect();
    var isPropertyKey = require_isPropertyKey();
    var isObject4 = require_isObject2();
    module2.exports = function Get(O2, P2) {
      if (!isObject4(O2)) {
        throw new $TypeError("Assertion failed: Type(O) is not Object");
      }
      if (!isPropertyKey(P2)) {
        throw new $TypeError("Assertion failed: P is not a Property Key, got " + inspect3(P2));
      }
      return O2[P2];
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/GetV.js
var require_GetV = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/GetV.js"(exports2, module2) {
    "use strict";
    var $TypeError = require_type3();
    var inspect3 = require_object_inspect();
    var isPropertyKey = require_isPropertyKey();
    module2.exports = function GetV(V, P2) {
      if (!isPropertyKey(P2)) {
        throw new $TypeError("Assertion failed: P is not a Property Key, got " + inspect3(P2));
      }
      return V[P2];
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/is-callable/1.2.7/0fa81dff8334465c4588283759a800b3c5e1f70e612527b15e53953a569322cc/node_modules/is-callable/index.js
var require_is_callable = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/is-callable/1.2.7/0fa81dff8334465c4588283759a800b3c5e1f70e612527b15e53953a569322cc/node_modules/is-callable/index.js"(exports2, module2) {
    "use strict";
    var fnToStr = Function.prototype.toString;
    var reflectApply = typeof Reflect === "object" && Reflect !== null && Reflect.apply;
    var badArrayLike;
    var isCallableMarker;
    if (typeof reflectApply === "function" && typeof Object.defineProperty === "function") {
      try {
        badArrayLike = Object.defineProperty({}, "length", {
          get: function() {
            throw isCallableMarker;
          }
        });
        isCallableMarker = {};
        reflectApply(function() {
          throw 42;
        }, null, badArrayLike);
      } catch (_) {
        if (_ !== isCallableMarker) {
          reflectApply = null;
        }
      }
    } else {
      reflectApply = null;
    }
    var constructorRegex = /^\s*class\b/;
    var isES6ClassFn = function isES6ClassFunction(value) {
      try {
        var fnStr = fnToStr.call(value);
        return constructorRegex.test(fnStr);
      } catch (e) {
        return false;
      }
    };
    var tryFunctionObject = function tryFunctionToStr(value) {
      try {
        if (isES6ClassFn(value)) {
          return false;
        }
        fnToStr.call(value);
        return true;
      } catch (e) {
        return false;
      }
    };
    var toStr = Object.prototype.toString;
    var objectClass = "[object Object]";
    var fnClass = "[object Function]";
    var genClass = "[object GeneratorFunction]";
    var ddaClass = "[object HTMLAllCollection]";
    var ddaClass2 = "[object HTML document.all class]";
    var ddaClass3 = "[object HTMLCollection]";
    var hasToStringTag = typeof Symbol === "function" && !!Symbol.toStringTag;
    var isIE68 = !(0 in [,]);
    var isDDA = function isDocumentDotAll() {
      return false;
    };
    if (typeof document === "object") {
      all = document.all;
      if (toStr.call(all) === toStr.call(document.all)) {
        isDDA = function isDocumentDotAll(value) {
          if ((isIE68 || !value) && (typeof value === "undefined" || typeof value === "object")) {
            try {
              var str2 = toStr.call(value);
              return (str2 === ddaClass || str2 === ddaClass2 || str2 === ddaClass3 || str2 === objectClass) && value("") == null;
            } catch (e) {
            }
          }
          return false;
        };
      }
    }
    var all;
    module2.exports = reflectApply ? function isCallable(value) {
      if (isDDA(value)) {
        return true;
      }
      if (!value) {
        return false;
      }
      if (typeof value !== "function" && typeof value !== "object") {
        return false;
      }
      try {
        reflectApply(value, null, badArrayLike);
      } catch (e) {
        if (e !== isCallableMarker) {
          return false;
        }
      }
      return !isES6ClassFn(value) && tryFunctionObject(value);
    } : function isCallable(value) {
      if (isDDA(value)) {
        return true;
      }
      if (!value) {
        return false;
      }
      if (typeof value !== "function" && typeof value !== "object") {
        return false;
      }
      if (hasToStringTag) {
        return tryFunctionObject(value);
      }
      if (isES6ClassFn(value)) {
        return false;
      }
      var strClass = toStr.call(value);
      if (strClass !== fnClass && strClass !== genClass && !/^\[object HTML/.test(strClass)) {
        return false;
      }
      return tryFunctionObject(value);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/IsCallable.js
var require_IsCallable = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/IsCallable.js"(exports2, module2) {
    "use strict";
    module2.exports = require_is_callable();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/GetMethod.js
var require_GetMethod = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/GetMethod.js"(exports2, module2) {
    "use strict";
    var $TypeError = require_type3();
    var GetV = require_GetV();
    var IsCallable = require_IsCallable();
    var isPropertyKey = require_isPropertyKey();
    var inspect3 = require_object_inspect();
    module2.exports = function GetMethod(O2, P2) {
      if (!isPropertyKey(P2)) {
        throw new $TypeError("Assertion failed: P is not a Property Key");
      }
      var func = GetV(O2, P2);
      if (func == null) {
        return void 0;
      }
      if (!IsCallable(func)) {
        throw new $TypeError(inspect3(P2) + " is not a function: " + inspect3(func));
      }
      return func;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/has-tostringtag/1.0.2/6c12594cd679ae455e293e034a8799789c6cb9306591e6ef64c95927f1324bc1/node_modules/has-tostringtag/shams.js
var require_shams2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/has-tostringtag/1.0.2/6c12594cd679ae455e293e034a8799789c6cb9306591e6ef64c95927f1324bc1/node_modules/has-tostringtag/shams.js"(exports2, module2) {
    "use strict";
    var hasSymbols = require_shams();
    module2.exports = function hasToStringTagShams() {
      return hasSymbols() && !!Symbol.toStringTag;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/is-regex/1.2.1/1e91ae37e627136fc546105b5ac6f34d591f8b0cf1fd517bd3a48951cfad5c20/node_modules/is-regex/index.js
var require_is_regex = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/is-regex/1.2.1/1e91ae37e627136fc546105b5ac6f34d591f8b0cf1fd517bd3a48951cfad5c20/node_modules/is-regex/index.js"(exports2, module2) {
    "use strict";
    var callBound = require_call_bound();
    var hasToStringTag = require_shams2()();
    var hasOwn = require_hasown();
    var gOPD = require_gopd();
    var fn;
    if (hasToStringTag) {
      $exec = callBound("RegExp.prototype.exec");
      isRegexMarker = {};
      throwRegexMarker = function() {
        throw isRegexMarker;
      };
      badStringifier = {
        toString: throwRegexMarker,
        valueOf: throwRegexMarker
      };
      if (typeof Symbol.toPrimitive === "symbol") {
        badStringifier[Symbol.toPrimitive] = throwRegexMarker;
      }
      fn = function isRegex(value) {
        if (!value || typeof value !== "object") {
          return false;
        }
        var descriptor = (
          /** @type {NonNullable<typeof gOPD>} */
          gOPD(
            /** @type {{ lastIndex?: unknown }} */
            value,
            "lastIndex"
          )
        );
        var hasLastIndexDataProperty = descriptor && hasOwn(descriptor, "value");
        if (!hasLastIndexDataProperty) {
          return false;
        }
        try {
          $exec(
            value,
            /** @type {string} */
            /** @type {unknown} */
            badStringifier
          );
        } catch (e) {
          return e === isRegexMarker;
        }
      };
    } else {
      $toString = callBound("Object.prototype.toString");
      regexClass = "[object RegExp]";
      fn = function isRegex(value) {
        if (!value || typeof value !== "object" && typeof value !== "function") {
          return false;
        }
        return $toString(value) === regexClass;
      };
    }
    var $exec;
    var isRegexMarker;
    var throwRegexMarker;
    var badStringifier;
    var $toString;
    var regexClass;
    module2.exports = fn;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/ToBoolean.js
var require_ToBoolean = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/ToBoolean.js"(exports2, module2) {
    "use strict";
    module2.exports = function ToBoolean(value) {
      return !!value;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/IsRegExp.js
var require_IsRegExp = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/IsRegExp.js"(exports2, module2) {
    "use strict";
    var GetIntrinsic = require_get_intrinsic();
    var $match = GetIntrinsic("%Symbol.match%", true);
    var hasRegExpMatcher = require_is_regex();
    var isObject4 = require_isObject2();
    var ToBoolean = require_ToBoolean();
    module2.exports = function IsRegExp(argument) {
      if (!isObject4(argument)) {
        return false;
      }
      if ($match) {
        var isRegExp = argument[$match];
        if (typeof isRegExp !== "undefined") {
          return ToBoolean(isRegExp);
        }
      }
      return hasRegExpMatcher(argument);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/ToString.js
var require_ToString = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/ToString.js"(exports2, module2) {
    "use strict";
    var GetIntrinsic = require_get_intrinsic();
    var $String = GetIntrinsic("%String%");
    var $TypeError = require_type3();
    module2.exports = function ToString(argument) {
      if (typeof argument === "symbol") {
        throw new $TypeError("Cannot convert a Symbol value to a string");
      }
      return $String(argument);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-object-atoms/1.1.2/d35853a81d27e2407e673cab2a7f5b5c86ed5c9d9f30d58425b71f0d1f70d1c9/node_modules/es-object-atoms/RequireObjectCoercible.js
var require_RequireObjectCoercible = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-object-atoms/1.1.2/d35853a81d27e2407e673cab2a7f5b5c86ed5c9d9f30d58425b71f0d1f70d1c9/node_modules/es-object-atoms/RequireObjectCoercible.js"(exports2, module2) {
    "use strict";
    var $TypeError = require_type3();
    module2.exports = function RequireObjectCoercible(value) {
      if (value == null) {
        throw new $TypeError(arguments.length > 0 && arguments[1] || "Cannot call method on " + value);
      }
      return value;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/functions-have-names/1.2.3/3deecccf3db8e1d426dbdb5d31d7dbe08f5ce2f712e422af9697224f0af8218f/node_modules/functions-have-names/index.js
var require_functions_have_names = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/functions-have-names/1.2.3/3deecccf3db8e1d426dbdb5d31d7dbe08f5ce2f712e422af9697224f0af8218f/node_modules/functions-have-names/index.js"(exports2, module2) {
    "use strict";
    var functionsHaveNames = function functionsHaveNames2() {
      return typeof function f() {
      }.name === "string";
    };
    var gOPD = Object.getOwnPropertyDescriptor;
    if (gOPD) {
      try {
        gOPD([], "length");
      } catch (e) {
        gOPD = null;
      }
    }
    functionsHaveNames.functionsHaveConfigurableNames = function functionsHaveConfigurableNames() {
      if (!functionsHaveNames() || !gOPD) {
        return false;
      }
      var desc = gOPD(function() {
      }, "name");
      return !!desc && !!desc.configurable;
    };
    var $bind = Function.prototype.bind;
    functionsHaveNames.boundFunctionsHaveNames = function boundFunctionsHaveNames() {
      return functionsHaveNames() && typeof $bind === "function" && function f() {
      }.bind().name !== "";
    };
    module2.exports = functionsHaveNames;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/set-function-name/2.0.2/7e2b9052ca8b042810f228f8573b15fff76f7f6c7a7d893c9548940dd071980e/node_modules/set-function-name/index.js
var require_set_function_name = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/set-function-name/2.0.2/7e2b9052ca8b042810f228f8573b15fff76f7f6c7a7d893c9548940dd071980e/node_modules/set-function-name/index.js"(exports2, module2) {
    "use strict";
    var define2 = require_define_data_property();
    var hasDescriptors = require_has_property_descriptors()();
    var functionsHaveConfigurableNames = require_functions_have_names().functionsHaveConfigurableNames();
    var $TypeError = require_type3();
    module2.exports = function setFunctionName(fn, name) {
      if (typeof fn !== "function") {
        throw new $TypeError("`fn` is not a function");
      }
      var loose = arguments.length > 2 && !!arguments[2];
      if (!loose || functionsHaveConfigurableNames) {
        if (hasDescriptors) {
          define2(
            /** @type {Parameters<define>[0]} */
            fn,
            "name",
            name,
            true,
            true
          );
        } else {
          define2(
            /** @type {Parameters<define>[0]} */
            fn,
            "name",
            name
          );
        }
      }
      return fn;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/regexp.prototype.flags/1.5.4/59a74c1955197fc01db0ffebf0c5b2070e63d26a33e11a68fed12a793fe4e57f/node_modules/regexp.prototype.flags/implementation.js
var require_implementation3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/regexp.prototype.flags/1.5.4/59a74c1955197fc01db0ffebf0c5b2070e63d26a33e11a68fed12a793fe4e57f/node_modules/regexp.prototype.flags/implementation.js"(exports2, module2) {
    "use strict";
    var setFunctionName = require_set_function_name();
    var $TypeError = require_type3();
    var $Object = Object;
    module2.exports = setFunctionName(function flags() {
      if (this == null || this !== $Object(this)) {
        throw new $TypeError("RegExp.prototype.flags getter called on non-object");
      }
      var result2 = "";
      if (this.hasIndices) {
        result2 += "d";
      }
      if (this.global) {
        result2 += "g";
      }
      if (this.ignoreCase) {
        result2 += "i";
      }
      if (this.multiline) {
        result2 += "m";
      }
      if (this.dotAll) {
        result2 += "s";
      }
      if (this.unicode) {
        result2 += "u";
      }
      if (this.unicodeSets) {
        result2 += "v";
      }
      if (this.sticky) {
        result2 += "y";
      }
      return result2;
    }, "get flags", true);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/regexp.prototype.flags/1.5.4/59a74c1955197fc01db0ffebf0c5b2070e63d26a33e11a68fed12a793fe4e57f/node_modules/regexp.prototype.flags/polyfill.js
var require_polyfill = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/regexp.prototype.flags/1.5.4/59a74c1955197fc01db0ffebf0c5b2070e63d26a33e11a68fed12a793fe4e57f/node_modules/regexp.prototype.flags/polyfill.js"(exports2, module2) {
    "use strict";
    var implementation = require_implementation3();
    var supportsDescriptors = require_define_properties().supportsDescriptors;
    var $gOPD = Object.getOwnPropertyDescriptor;
    module2.exports = function getPolyfill() {
      if (supportsDescriptors && /a/mig.flags === "gim") {
        var descriptor = $gOPD(RegExp.prototype, "flags");
        if (descriptor && typeof descriptor.get === "function" && "dotAll" in RegExp.prototype && "hasIndices" in RegExp.prototype) {
          var calls = "";
          var o2 = {};
          Object.defineProperty(o2, "hasIndices", {
            get: function() {
              calls += "d";
            }
          });
          Object.defineProperty(o2, "sticky", {
            get: function() {
              calls += "y";
            }
          });
          descriptor.get.call(o2);
          if (calls === "dy") {
            return descriptor.get;
          }
        }
      }
      return implementation;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/regexp.prototype.flags/1.5.4/59a74c1955197fc01db0ffebf0c5b2070e63d26a33e11a68fed12a793fe4e57f/node_modules/regexp.prototype.flags/shim.js
var require_shim = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/regexp.prototype.flags/1.5.4/59a74c1955197fc01db0ffebf0c5b2070e63d26a33e11a68fed12a793fe4e57f/node_modules/regexp.prototype.flags/shim.js"(exports2, module2) {
    "use strict";
    var supportsDescriptors = require_define_properties().supportsDescriptors;
    var getPolyfill = require_polyfill();
    var gOPD = require_gopd();
    var defineProperty = Object.defineProperty;
    var $TypeError = require_es_errors();
    var getProto = require_get_proto();
    var regex2 = /a/;
    module2.exports = function shimFlags() {
      if (!supportsDescriptors || !getProto) {
        throw new $TypeError("RegExp.prototype.flags requires a true ES5 environment that supports property descriptors");
      }
      var polyfill = getPolyfill();
      var proto2 = getProto(regex2);
      var descriptor = gOPD(proto2, "flags");
      if (!descriptor || descriptor.get !== polyfill) {
        defineProperty(proto2, "flags", {
          configurable: true,
          enumerable: false,
          get: polyfill
        });
      }
      return polyfill;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/regexp.prototype.flags/1.5.4/59a74c1955197fc01db0ffebf0c5b2070e63d26a33e11a68fed12a793fe4e57f/node_modules/regexp.prototype.flags/index.js
var require_regexp_prototype = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/regexp.prototype.flags/1.5.4/59a74c1955197fc01db0ffebf0c5b2070e63d26a33e11a68fed12a793fe4e57f/node_modules/regexp.prototype.flags/index.js"(exports2, module2) {
    "use strict";
    var define2 = require_define_properties();
    var callBind = require_call_bind();
    var implementation = require_implementation3();
    var getPolyfill = require_polyfill();
    var shim = require_shim();
    var flagsBound = callBind(getPolyfill());
    define2(flagsBound, {
      getPolyfill,
      implementation,
      shim
    });
    module2.exports = flagsBound;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/helpers/isLeadingSurrogate.js
var require_isLeadingSurrogate = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/helpers/isLeadingSurrogate.js"(exports2, module2) {
    "use strict";
    module2.exports = function isLeadingSurrogate(charCode) {
      return typeof charCode === "number" && charCode >= 55296 && charCode <= 56319;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/helpers/isTrailingSurrogate.js
var require_isTrailingSurrogate = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/helpers/isTrailingSurrogate.js"(exports2, module2) {
    "use strict";
    module2.exports = function isTrailingSurrogate(charCode) {
      return typeof charCode === "number" && charCode >= 56320 && charCode <= 57343;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/UTF16SurrogatePairToCodePoint.js
var require_UTF16SurrogatePairToCodePoint = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/UTF16SurrogatePairToCodePoint.js"(exports2, module2) {
    "use strict";
    var GetIntrinsic = require_get_intrinsic();
    var $TypeError = require_type3();
    var $fromCharCode = GetIntrinsic("%String.fromCharCode%");
    var isLeadingSurrogate = require_isLeadingSurrogate();
    var isTrailingSurrogate = require_isTrailingSurrogate();
    module2.exports = function UTF16SurrogatePairToCodePoint(lead, trail) {
      if (!isLeadingSurrogate(lead) || !isTrailingSurrogate(trail)) {
        throw new $TypeError("Assertion failed: `lead` must be a leading surrogate char code, and `trail` must be a trailing surrogate char code");
      }
      return $fromCharCode(lead) + $fromCharCode(trail);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/CodePointAt.js
var require_CodePointAt = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/CodePointAt.js"(exports2, module2) {
    "use strict";
    var $TypeError = require_type3();
    var callBound = require_call_bound();
    var isLeadingSurrogate = require_isLeadingSurrogate();
    var isTrailingSurrogate = require_isTrailingSurrogate();
    var UTF16SurrogatePairToCodePoint = require_UTF16SurrogatePairToCodePoint();
    var $charAt = callBound("String.prototype.charAt");
    var $charCodeAt = callBound("String.prototype.charCodeAt");
    module2.exports = function CodePointAt(string, position3) {
      if (typeof string !== "string") {
        throw new $TypeError("Assertion failed: `string` must be a String");
      }
      var size = string.length;
      if (position3 < 0 || position3 >= size) {
        throw new $TypeError("Assertion failed: `position` must be >= 0, and < the length of `string`");
      }
      var first = $charCodeAt(string, position3);
      var cp = $charAt(string, position3);
      var firstIsLeading = isLeadingSurrogate(first);
      var firstIsTrailing = isTrailingSurrogate(first);
      if (!firstIsLeading && !firstIsTrailing) {
        return {
          "[[CodePoint]]": cp,
          "[[CodeUnitCount]]": 1,
          "[[IsUnpairedSurrogate]]": false
        };
      }
      if (firstIsTrailing || position3 + 1 === size) {
        return {
          "[[CodePoint]]": cp,
          "[[CodeUnitCount]]": 1,
          "[[IsUnpairedSurrogate]]": true
        };
      }
      var second = $charCodeAt(string, position3 + 1);
      if (!isTrailingSurrogate(second)) {
        return {
          "[[CodePoint]]": cp,
          "[[CodeUnitCount]]": 1,
          "[[IsUnpairedSurrogate]]": true
        };
      }
      return {
        "[[CodePoint]]": UTF16SurrogatePairToCodePoint(first, second),
        "[[CodeUnitCount]]": 2,
        "[[IsUnpairedSurrogate]]": false
      };
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/isFinite.js
var require_isFinite2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/isFinite.js"(exports2, module2) {
    "use strict";
    var $isNaN = require_isNaN2();
    module2.exports = function isFinite2(x) {
      return (typeof x === "number" || typeof x === "bigint") && !$isNaN(x) && x !== Infinity && x !== -Infinity;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/isInteger.js
var require_isInteger2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/isInteger.js"(exports2, module2) {
    "use strict";
    var $abs = require_abs();
    var $floor = require_floor2();
    var $isNaN = require_isNaN2();
    var $isFinite = require_isFinite2();
    module2.exports = function isInteger2(argument) {
      if (typeof argument !== "number" || $isNaN(argument) || !$isFinite(argument)) {
        return false;
      }
      var absValue = $abs(argument);
      return $floor(absValue) === absValue;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/constants/maxSafeInteger.js
var require_maxSafeInteger = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/math-intrinsics/1.1.0/eb7290b0383a2a7d69eefb42bf190b3fe17b17b46f85a94b9ea9af2e1a55cb40/node_modules/math-intrinsics/constants/maxSafeInteger.js"(exports2, module2) {
    "use strict";
    module2.exports = /** @type {import('./maxSafeInteger')} */
    Number.MAX_SAFE_INTEGER || 9007199254740991;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/AdvanceStringIndex.js
var require_AdvanceStringIndex = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/AdvanceStringIndex.js"(exports2, module2) {
    "use strict";
    var CodePointAt = require_CodePointAt();
    var $TypeError = require_type3();
    var isInteger2 = require_isInteger2();
    var MAX_SAFE_INTEGER = require_maxSafeInteger();
    module2.exports = function AdvanceStringIndex(S2, index, unicode) {
      if (typeof S2 !== "string") {
        throw new $TypeError("Assertion failed: `S` must be a String");
      }
      if (!isInteger2(index) || index < 0 || index > MAX_SAFE_INTEGER) {
        throw new $TypeError("Assertion failed: `length` must be an integer >= 0 and <= 2**53");
      }
      if (typeof unicode !== "boolean") {
        throw new $TypeError("Assertion failed: `unicode` must be a Boolean");
      }
      if (!unicode) {
        return index + 1;
      }
      var length = S2.length;
      if (index + 1 >= length) {
        return index + 1;
      }
      var cp = CodePointAt(S2, index);
      return index + cp["[[CodeUnitCount]]"];
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/CreateIterResultObject.js
var require_CreateIterResultObject = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/CreateIterResultObject.js"(exports2, module2) {
    "use strict";
    var $TypeError = require_type3();
    module2.exports = function CreateIterResultObject(value, done) {
      if (typeof done !== "boolean") {
        throw new $TypeError("Assertion failed: Type(done) is not Boolean");
      }
      return {
        value,
        done
      };
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/helpers/records/property-descriptor.js
var require_property_descriptor = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/helpers/records/property-descriptor.js"(exports2, module2) {
    "use strict";
    var $TypeError = require_type3();
    var hasOwn = require_hasown();
    var allowed = {
      __proto__: null,
      "[[Configurable]]": true,
      "[[Enumerable]]": true,
      "[[Get]]": true,
      "[[Set]]": true,
      "[[Value]]": true,
      "[[Writable]]": true
    };
    module2.exports = function isPropertyDescriptor(Desc) {
      if (!Desc || typeof Desc !== "object") {
        return false;
      }
      for (var key in Desc) {
        if (hasOwn(Desc, key) && !allowed[key]) {
          return false;
        }
      }
      var isData = hasOwn(Desc, "[[Value]]") || hasOwn(Desc, "[[Writable]]");
      var IsAccessor = hasOwn(Desc, "[[Get]]") || hasOwn(Desc, "[[Set]]");
      if (isData && IsAccessor) {
        throw new $TypeError("Property Descriptors may not be both accessor and data descriptors");
      }
      return true;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/helpers/DefineOwnProperty.js
var require_DefineOwnProperty = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/helpers/DefineOwnProperty.js"(exports2, module2) {
    "use strict";
    var hasPropertyDescriptors = require_has_property_descriptors();
    var $defineProperty = require_es_define_property();
    var hasArrayLengthDefineBug = hasPropertyDescriptors.hasArrayLengthDefineBug();
    var isArray = hasArrayLengthDefineBug && require_IsArray();
    var callBound = require_call_bound();
    var $isEnumerable = callBound("Object.prototype.propertyIsEnumerable");
    module2.exports = function DefineOwnProperty(IsDataDescriptor, SameValue, FromPropertyDescriptor, O2, P2, desc) {
      if (!$defineProperty) {
        if (!IsDataDescriptor(desc)) {
          return false;
        }
        if (!desc["[[Configurable]]"] || !desc["[[Writable]]"]) {
          return false;
        }
        if (P2 in O2 && $isEnumerable(O2, P2) !== !!desc["[[Enumerable]]"]) {
          return false;
        }
        var V = desc["[[Value]]"];
        O2[P2] = V;
        return SameValue(O2[P2], V);
      }
      if (hasArrayLengthDefineBug && P2 === "length" && "[[Value]]" in desc && isArray(O2) && O2.length !== desc["[[Value]]"]) {
        O2.length = desc["[[Value]]"];
        return O2.length === desc["[[Value]]"];
      }
      $defineProperty(O2, P2, FromPropertyDescriptor(desc));
      return true;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/helpers/fromPropertyDescriptor.js
var require_fromPropertyDescriptor = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/helpers/fromPropertyDescriptor.js"(exports2, module2) {
    "use strict";
    module2.exports = function fromPropertyDescriptor(Desc) {
      if (typeof Desc === "undefined") {
        return Desc;
      }
      var obj = {};
      if ("[[Value]]" in Desc) {
        obj.value = Desc["[[Value]]"];
      }
      if ("[[Writable]]" in Desc) {
        obj.writable = !!Desc["[[Writable]]"];
      }
      if ("[[Get]]" in Desc) {
        obj.get = Desc["[[Get]]"];
      }
      if ("[[Set]]" in Desc) {
        obj.set = Desc["[[Set]]"];
      }
      if ("[[Enumerable]]" in Desc) {
        obj.enumerable = !!Desc["[[Enumerable]]"];
      }
      if ("[[Configurable]]" in Desc) {
        obj.configurable = !!Desc["[[Configurable]]"];
      }
      return obj;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/FromPropertyDescriptor.js
var require_FromPropertyDescriptor = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/FromPropertyDescriptor.js"(exports2, module2) {
    "use strict";
    var $TypeError = require_type3();
    var isPropertyDescriptor = require_property_descriptor();
    var fromPropertyDescriptor = require_fromPropertyDescriptor();
    module2.exports = function FromPropertyDescriptor(Desc) {
      if (typeof Desc !== "undefined" && !isPropertyDescriptor(Desc)) {
        throw new $TypeError("Assertion failed: `Desc` must be a Property Descriptor");
      }
      return fromPropertyDescriptor(Desc);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/IsDataDescriptor.js
var require_IsDataDescriptor = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/IsDataDescriptor.js"(exports2, module2) {
    "use strict";
    var $TypeError = require_type3();
    var hasOwn = require_hasown();
    var isPropertyDescriptor = require_property_descriptor();
    module2.exports = function IsDataDescriptor(Desc) {
      if (typeof Desc === "undefined") {
        return false;
      }
      if (!isPropertyDescriptor(Desc)) {
        throw new $TypeError("Assertion failed: `Desc` must be a Property Descriptor");
      }
      if (!hasOwn(Desc, "[[Value]]") && !hasOwn(Desc, "[[Writable]]")) {
        return false;
      }
      return true;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/SameValue.js
var require_SameValue = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/SameValue.js"(exports2, module2) {
    "use strict";
    var $isNaN = require_isNaN2();
    module2.exports = function SameValue(x, y) {
      if (x === y) {
        if (x === 0) {
          return 1 / x === 1 / y;
        }
        return true;
      }
      return $isNaN(x) && $isNaN(y);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/ToPropertyDescriptor.js
var require_ToPropertyDescriptor = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/ToPropertyDescriptor.js"(exports2, module2) {
    "use strict";
    var hasOwn = require_hasown();
    var $TypeError = require_type3();
    var isObject4 = require_isObject2();
    var IsCallable = require_IsCallable();
    var ToBoolean = require_ToBoolean();
    module2.exports = function ToPropertyDescriptor(Obj) {
      if (!isObject4(Obj)) {
        throw new $TypeError("ToPropertyDescriptor requires an object");
      }
      var desc = {};
      if (hasOwn(Obj, "enumerable")) {
        desc["[[Enumerable]]"] = ToBoolean(Obj.enumerable);
      }
      if (hasOwn(Obj, "configurable")) {
        desc["[[Configurable]]"] = ToBoolean(Obj.configurable);
      }
      if (hasOwn(Obj, "value")) {
        desc["[[Value]]"] = Obj.value;
      }
      if (hasOwn(Obj, "writable")) {
        desc["[[Writable]]"] = ToBoolean(Obj.writable);
      }
      if (hasOwn(Obj, "get")) {
        var getter = Obj.get;
        if (typeof getter !== "undefined" && !IsCallable(getter)) {
          throw new $TypeError("getter must be a function");
        }
        desc["[[Get]]"] = getter;
      }
      if (hasOwn(Obj, "set")) {
        var setter = Obj.set;
        if (typeof setter !== "undefined" && !IsCallable(setter)) {
          throw new $TypeError("setter must be a function");
        }
        desc["[[Set]]"] = setter;
      }
      if ((hasOwn(desc, "[[Get]]") || hasOwn(desc, "[[Set]]")) && (hasOwn(desc, "[[Value]]") || hasOwn(desc, "[[Writable]]"))) {
        throw new $TypeError("Invalid property descriptor. Cannot both specify accessors and a value or writable attribute");
      }
      return desc;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/DefinePropertyOrThrow.js
var require_DefinePropertyOrThrow = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/DefinePropertyOrThrow.js"(exports2, module2) {
    "use strict";
    var $TypeError = require_type3();
    var isObject4 = require_isObject2();
    var isPropertyDescriptor = require_property_descriptor();
    var DefineOwnProperty = require_DefineOwnProperty();
    var FromPropertyDescriptor = require_FromPropertyDescriptor();
    var IsDataDescriptor = require_IsDataDescriptor();
    var isPropertyKey = require_isPropertyKey();
    var SameValue = require_SameValue();
    var ToPropertyDescriptor = require_ToPropertyDescriptor();
    module2.exports = function DefinePropertyOrThrow(O2, P2, desc) {
      if (!isObject4(O2)) {
        throw new $TypeError("Assertion failed: Type(O) is not Object");
      }
      if (!isPropertyKey(P2)) {
        throw new $TypeError("Assertion failed: P is not a Property Key");
      }
      var Desc = isPropertyDescriptor(desc) ? desc : ToPropertyDescriptor(desc);
      if (!isPropertyDescriptor(Desc)) {
        throw new $TypeError("Assertion failed: Desc is not a valid Property Descriptor");
      }
      return DefineOwnProperty(
        IsDataDescriptor,
        SameValue,
        FromPropertyDescriptor,
        O2,
        P2,
        Desc
      );
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/helpers/isPrimitive.js
var require_isPrimitive2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/helpers/isPrimitive.js"(exports2, module2) {
    "use strict";
    module2.exports = function isPrimitive2(value) {
      return value === null || typeof value !== "function" && typeof value !== "object";
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/IsExtensible.js
var require_IsExtensible = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/IsExtensible.js"(exports2, module2) {
    "use strict";
    var GetIntrinsic = require_get_intrinsic();
    var $preventExtensions = GetIntrinsic("%Object.preventExtensions%", true);
    var $isExtensible = GetIntrinsic("%Object.isExtensible%", true);
    var isPrimitive2 = require_isPrimitive2();
    module2.exports = $preventExtensions ? function IsExtensible(obj) {
      return !isPrimitive2(obj) && $isExtensible(obj);
    } : function IsExtensible(obj) {
      return !isPrimitive2(obj);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/DefineMethodProperty.js
var require_DefineMethodProperty = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/DefineMethodProperty.js"(exports2, module2) {
    "use strict";
    var $TypeError = require_type3();
    var isObject4 = require_isObject2();
    var DefinePropertyOrThrow = require_DefinePropertyOrThrow();
    var IsExtensible = require_IsExtensible();
    var isPropertyKey = require_isPropertyKey();
    module2.exports = function DefineMethodProperty(homeObject, key, closure, enumerable) {
      if (!isObject4(homeObject)) {
        throw new $TypeError("Assertion failed: `homeObject` is not an Object");
      }
      if (!isPropertyKey(key)) {
        throw new $TypeError("Assertion failed: `key` is not a Property Key or a Private Name");
      }
      if (typeof closure !== "function") {
        throw new $TypeError("Assertion failed: `closure` is not a function");
      }
      if (typeof enumerable !== "boolean") {
        throw new $TypeError("Assertion failed: `enumerable` is not a Boolean");
      }
      if (!IsExtensible(homeObject)) {
        throw new $TypeError("Assertion failed: `homeObject` is not an ordinary, extensible object, with no non-configurable properties");
      }
      var desc = {
        // step 3.a
        "[[Value]]": closure,
        "[[Writable]]": true,
        "[[Enumerable]]": enumerable,
        "[[Configurable]]": true
      };
      DefinePropertyOrThrow(homeObject, key, desc);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/helpers/forEach.js
var require_forEach2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/helpers/forEach.js"(exports2, module2) {
    "use strict";
    module2.exports = function forEach(array, callback2) {
      for (var i2 = 0; i2 < array.length; i2 += 1) {
        callback2(array[i2], i2, array);
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/side-channel-list/1.0.1/eef57ddc90ee97d95113ce76dda93cbda2f5cdbc875b86e48e85572f3fcaa1fa/node_modules/side-channel-list/index.js
var require_side_channel_list = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/side-channel-list/1.0.1/eef57ddc90ee97d95113ce76dda93cbda2f5cdbc875b86e48e85572f3fcaa1fa/node_modules/side-channel-list/index.js"(exports2, module2) {
    "use strict";
    var inspect3 = require_object_inspect();
    var $TypeError = require_type3();
    var listGetNode = function(list2, key, isDelete) {
      var prev = list2;
      var curr;
      for (; (curr = prev.next) != null; prev = curr) {
        if (curr.key === key) {
          prev.next = curr.next;
          if (!isDelete) {
            curr.next = /** @type {NonNullable<typeof list.next>} */
            list2.next;
            list2.next = curr;
          }
          return curr;
        }
      }
    };
    var listGet = function(objects, key) {
      if (!objects) {
        return void 0;
      }
      var node = listGetNode(objects, key);
      return node && node.value;
    };
    var listSet = function(objects, key, value) {
      var node = listGetNode(objects, key);
      if (node) {
        node.value = value;
      } else {
        objects.next = /** @type {import('./list.d.ts').ListNode<typeof value, typeof key>} */
        {
          // eslint-disable-line no-param-reassign, no-extra-parens
          key,
          next: objects.next,
          value
        };
      }
    };
    var listHas = function(objects, key) {
      if (!objects) {
        return false;
      }
      return !!listGetNode(objects, key);
    };
    var listDelete = function(objects, key) {
      if (objects) {
        return listGetNode(objects, key, true);
      }
    };
    module2.exports = function getSideChannelList() {
      var $o;
      var channel = {
        assert: function(key) {
          if (!channel.has(key)) {
            throw new $TypeError("Side channel does not contain " + inspect3(key));
          }
        },
        "delete": function(key) {
          var deletedNode = listDelete($o, key);
          if (deletedNode && $o && !$o.next) {
            $o = void 0;
          }
          return !!deletedNode;
        },
        get: function(key) {
          return listGet($o, key);
        },
        has: function(key) {
          return listHas($o, key);
        },
        set: function(key, value) {
          if (!$o) {
            $o = {
              next: void 0
            };
          }
          listSet(
            /** @type {NonNullable<typeof $o>} */
            $o,
            key,
            value
          );
        }
      };
      return channel;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/side-channel-map/1.0.1/36a56e3caccc492e030ea0afa575585bd57cc350d76cc435b44dfe7ab8f7717e/node_modules/side-channel-map/index.js
var require_side_channel_map = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/side-channel-map/1.0.1/36a56e3caccc492e030ea0afa575585bd57cc350d76cc435b44dfe7ab8f7717e/node_modules/side-channel-map/index.js"(exports2, module2) {
    "use strict";
    var GetIntrinsic = require_get_intrinsic();
    var callBound = require_call_bound();
    var inspect3 = require_object_inspect();
    var $TypeError = require_type3();
    var $Map = GetIntrinsic("%Map%", true);
    var $mapGet = callBound("Map.prototype.get", true);
    var $mapSet = callBound("Map.prototype.set", true);
    var $mapHas = callBound("Map.prototype.has", true);
    var $mapDelete = callBound("Map.prototype.delete", true);
    var $mapSize = callBound("Map.prototype.size", true);
    module2.exports = !!$Map && /** @type {Exclude<import('.'), false>} */
    function getSideChannelMap() {
      var $m;
      var channel = {
        assert: function(key) {
          if (!channel.has(key)) {
            throw new $TypeError("Side channel does not contain " + inspect3(key));
          }
        },
        "delete": function(key) {
          if ($m) {
            var result2 = $mapDelete($m, key);
            if ($mapSize($m) === 0) {
              $m = void 0;
            }
            return result2;
          }
          return false;
        },
        get: function(key) {
          if ($m) {
            return $mapGet($m, key);
          }
        },
        has: function(key) {
          if ($m) {
            return $mapHas($m, key);
          }
          return false;
        },
        set: function(key, value) {
          if (!$m) {
            $m = new $Map();
          }
          $mapSet($m, key, value);
        }
      };
      return channel;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/side-channel-weakmap/1.0.2/6e0e9908a01084a1617ee10b99567dda2b2150b488b744559448d735648ad51c/node_modules/side-channel-weakmap/index.js
var require_side_channel_weakmap = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/side-channel-weakmap/1.0.2/6e0e9908a01084a1617ee10b99567dda2b2150b488b744559448d735648ad51c/node_modules/side-channel-weakmap/index.js"(exports2, module2) {
    "use strict";
    var GetIntrinsic = require_get_intrinsic();
    var callBound = require_call_bound();
    var inspect3 = require_object_inspect();
    var getSideChannelMap = require_side_channel_map();
    var $TypeError = require_type3();
    var $WeakMap = GetIntrinsic("%WeakMap%", true);
    var $weakMapGet = callBound("WeakMap.prototype.get", true);
    var $weakMapSet = callBound("WeakMap.prototype.set", true);
    var $weakMapHas = callBound("WeakMap.prototype.has", true);
    var $weakMapDelete = callBound("WeakMap.prototype.delete", true);
    module2.exports = $WeakMap ? (
      /** @type {Exclude<import('.'), false>} */
      function getSideChannelWeakMap() {
        var $wm;
        var $m;
        var channel = {
          assert: function(key) {
            if (!channel.has(key)) {
              throw new $TypeError("Side channel does not contain " + inspect3(key));
            }
          },
          "delete": function(key) {
            if ($WeakMap && key && (typeof key === "object" || typeof key === "function")) {
              if ($wm) {
                return $weakMapDelete($wm, key);
              }
            } else if (getSideChannelMap) {
              if ($m) {
                return $m["delete"](key);
              }
            }
            return false;
          },
          get: function(key) {
            if ($WeakMap && key && (typeof key === "object" || typeof key === "function")) {
              if ($wm) {
                return $weakMapGet($wm, key);
              }
            }
            return $m && $m.get(key);
          },
          has: function(key) {
            if ($WeakMap && key && (typeof key === "object" || typeof key === "function")) {
              if ($wm) {
                return $weakMapHas($wm, key);
              }
            }
            return !!$m && $m.has(key);
          },
          set: function(key, value) {
            if ($WeakMap && key && (typeof key === "object" || typeof key === "function")) {
              if (!$wm) {
                $wm = new $WeakMap();
              }
              $weakMapSet($wm, key, value);
            } else if (getSideChannelMap) {
              if (!$m) {
                $m = getSideChannelMap();
              }
              $m.set(key, value);
            }
          }
        };
        return channel;
      }
    ) : getSideChannelMap;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/side-channel/1.1.0/3f3435d9da1f1bf9cabdeeb8245595366af57ba61c419151ad34852113955adc/node_modules/side-channel/index.js
var require_side_channel = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/side-channel/1.1.0/3f3435d9da1f1bf9cabdeeb8245595366af57ba61c419151ad34852113955adc/node_modules/side-channel/index.js"(exports2, module2) {
    "use strict";
    var $TypeError = require_type3();
    var inspect3 = require_object_inspect();
    var getSideChannelList = require_side_channel_list();
    var getSideChannelMap = require_side_channel_map();
    var getSideChannelWeakMap = require_side_channel_weakmap();
    var makeChannel = getSideChannelWeakMap || getSideChannelMap || getSideChannelList;
    module2.exports = function getSideChannel() {
      var $channelData;
      var channel = {
        assert: function(key) {
          if (!channel.has(key)) {
            throw new $TypeError("Side channel does not contain " + inspect3(key));
          }
        },
        "delete": function(key) {
          return !!$channelData && $channelData["delete"](key);
        },
        get: function(key) {
          return $channelData && $channelData.get(key);
        },
        has: function(key) {
          return !!$channelData && $channelData.has(key);
        },
        set: function(key, value) {
          if (!$channelData) {
            $channelData = makeChannel();
          }
          $channelData.set(key, value);
        }
      };
      return channel;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/internal-slot/1.1.0/e3ef2b59aef123b0d23768943cf7a3ccd42b227f76d6e4b65e6e72407615a0ab/node_modules/internal-slot/index.js
var require_internal_slot = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/internal-slot/1.1.0/e3ef2b59aef123b0d23768943cf7a3ccd42b227f76d6e4b65e6e72407615a0ab/node_modules/internal-slot/index.js"(exports2, module2) {
    "use strict";
    var hasOwn = require_hasown();
    var channel = require_side_channel()();
    var $TypeError = require_type3();
    var SLOT = {
      assert: function(O2, slot) {
        if (!O2 || typeof O2 !== "object" && typeof O2 !== "function") {
          throw new $TypeError("`O` is not an object");
        }
        if (typeof slot !== "string") {
          throw new $TypeError("`slot` must be a string");
        }
        channel.assert(O2);
        if (!SLOT.has(O2, slot)) {
          throw new $TypeError("`" + slot + "` is not present on `O`");
        }
      },
      get: function(O2, slot) {
        if (!O2 || typeof O2 !== "object" && typeof O2 !== "function") {
          throw new $TypeError("`O` is not an object");
        }
        if (typeof slot !== "string") {
          throw new $TypeError("`slot` must be a string");
        }
        var slots = channel.get(O2);
        return slots && slots[
          /** @type {SaltedInternalSlot} */
          "$" + slot
        ];
      },
      has: function(O2, slot) {
        if (!O2 || typeof O2 !== "object" && typeof O2 !== "function") {
          throw new $TypeError("`O` is not an object");
        }
        if (typeof slot !== "string") {
          throw new $TypeError("`slot` must be a string");
        }
        var slots = channel.get(O2);
        return !!slots && hasOwn(
          slots,
          /** @type {SaltedInternalSlot} */
          "$" + slot
        );
      },
      set: function(O2, slot, V) {
        if (!O2 || typeof O2 !== "object" && typeof O2 !== "function") {
          throw new $TypeError("`O` is not an object");
        }
        if (typeof slot !== "string") {
          throw new $TypeError("`slot` must be a string");
        }
        var slots = channel.get(O2);
        if (!slots) {
          slots = {};
          channel.set(O2, slots);
        }
        slots[
          /** @type {SaltedInternalSlot} */
          "$" + slot
        ] = V;
      }
    };
    if (Object.freeze) {
      Object.freeze(SLOT);
    }
    module2.exports = SLOT;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/has-proto/1.2.0/de8970d26fb60753e9daa3de299a4af5e0b792e814f8e9962ba0fbd7e27e4bdb/node_modules/has-proto/index.js
var require_has_proto = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/has-proto/1.2.0/de8970d26fb60753e9daa3de299a4af5e0b792e814f8e9962ba0fbd7e27e4bdb/node_modules/has-proto/index.js"(exports2, module2) {
    "use strict";
    var test = {
      __proto__: null,
      foo: {}
    };
    var result2 = { __proto__: test }.foo === test.foo && !(test instanceof Object);
    module2.exports = function hasProto() {
      return result2;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/OrdinaryObjectCreate.js
var require_OrdinaryObjectCreate = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/OrdinaryObjectCreate.js"(exports2, module2) {
    "use strict";
    var GetIntrinsic = require_get_intrinsic();
    var $ObjectCreate = GetIntrinsic("%Object.create%", true);
    var $TypeError = require_type3();
    var $SyntaxError = require_syntax();
    var isObject4 = require_isObject2();
    var IsArray = require_IsArray2();
    var forEach = require_forEach2();
    var SLOT = require_internal_slot();
    var hasProto = require_has_proto()();
    module2.exports = function OrdinaryObjectCreate(proto2) {
      if (proto2 !== null && !isObject4(proto2)) {
        throw new $TypeError("Assertion failed: `proto` must be null or an object");
      }
      var additionalInternalSlotsList = arguments.length < 2 ? [] : arguments[1];
      if (!IsArray(additionalInternalSlotsList)) {
        throw new $TypeError("Assertion failed: `additionalInternalSlotsList` must be an Array");
      }
      var O2;
      if (hasProto) {
        O2 = { __proto__: proto2 };
      } else if ($ObjectCreate) {
        O2 = $ObjectCreate(proto2);
      } else {
        if (proto2 === null) {
          throw new $SyntaxError("native Object.create support is required to create null objects");
        }
        var T2 = function T3() {
        };
        T2.prototype = proto2;
        O2 = new T2();
      }
      if (additionalInternalSlotsList.length > 0) {
        forEach(additionalInternalSlotsList, function(slot) {
          SLOT.set(O2, slot, void 0);
        });
      }
      return O2;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/RegExpExec.js
var require_RegExpExec = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/RegExpExec.js"(exports2, module2) {
    "use strict";
    var $TypeError = require_type3();
    var isObject4 = require_isObject2();
    var regexExec = require_call_bound()("RegExp.prototype.exec");
    var Call = require_Call();
    var Get = require_Get();
    var IsCallable = require_IsCallable();
    module2.exports = function RegExpExec(R2, S2) {
      if (!isObject4(R2)) {
        throw new $TypeError("Assertion failed: `R` must be an Object");
      }
      if (typeof S2 !== "string") {
        throw new $TypeError("Assertion failed: `S` must be a String");
      }
      var exec = Get(R2, "exec");
      if (IsCallable(exec)) {
        var result2 = Call(exec, R2, [S2]);
        if (result2 === null || isObject4(result2)) {
          return result2;
        }
        throw new $TypeError('"exec" method must return `null` or an Object');
      }
      return regexExec(R2, S2);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/Set.js
var require_Set = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/Set.js"(exports2, module2) {
    "use strict";
    var $TypeError = require_type3();
    var isObject4 = require_isObject2();
    var isPropertyKey = require_isPropertyKey();
    var SameValue = require_SameValue();
    var noThrowOnStrictViolation = (function() {
      try {
        delete [].length;
        return true;
      } catch (e) {
        return false;
      }
    })();
    module2.exports = function Set2(O2, P2, V, Throw) {
      if (!isObject4(O2)) {
        throw new $TypeError("Assertion failed: `O` must be an Object");
      }
      if (!isPropertyKey(P2)) {
        throw new $TypeError("Assertion failed: `P` must be a Property Key");
      }
      if (typeof Throw !== "boolean") {
        throw new $TypeError("Assertion failed: `Throw` must be a Boolean");
      }
      if (Throw) {
        O2[P2] = V;
        if (noThrowOnStrictViolation && !SameValue(O2[P2], V)) {
          throw new $TypeError("Attempted to assign to readonly property.");
        }
        return true;
      }
      try {
        O2[P2] = V;
        return noThrowOnStrictViolation ? SameValue(O2[P2], V) : true;
      } catch (e) {
        return false;
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-to-primitive/1.3.0/8be72c4ef6a8f611b7a2b2ddd0002df72797bece3252ba9c406d61741b24c499/node_modules/es-to-primitive/helpers/isPrimitive.js
var require_isPrimitive3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-to-primitive/1.3.0/8be72c4ef6a8f611b7a2b2ddd0002df72797bece3252ba9c406d61741b24c499/node_modules/es-to-primitive/helpers/isPrimitive.js"(exports2, module2) {
    "use strict";
    module2.exports = function isPrimitive2(value) {
      return value === null || typeof value !== "function" && typeof value !== "object";
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/is-date-object/1.1.0/47dd32536b3850a532b7795e2c0fe72f4bc784ef5ae41c0992e0a36b6d28fca9/node_modules/is-date-object/index.js
var require_is_date_object = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/is-date-object/1.1.0/47dd32536b3850a532b7795e2c0fe72f4bc784ef5ae41c0992e0a36b6d28fca9/node_modules/is-date-object/index.js"(exports2, module2) {
    "use strict";
    var callBound = require_call_bound();
    var getDay = callBound("Date.prototype.getDay");
    var tryDateObject = function tryDateGetDayCall(value) {
      try {
        getDay(value);
        return true;
      } catch (e) {
        return false;
      }
    };
    var toStr = callBound("Object.prototype.toString");
    var dateClass = "[object Date]";
    var hasToStringTag = require_shams2()();
    module2.exports = function isDateObject(value) {
      if (typeof value !== "object" || value === null) {
        return false;
      }
      return hasToStringTag ? tryDateObject(value) : toStr(value) === dateClass;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/safe-regex-test/1.1.0/6f27a10cd744448d7d25bfc1d67f08212c5e9d50ce85ad4f9b64bf59a4fe8831/node_modules/safe-regex-test/index.js
var require_safe_regex_test = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/safe-regex-test/1.1.0/6f27a10cd744448d7d25bfc1d67f08212c5e9d50ce85ad4f9b64bf59a4fe8831/node_modules/safe-regex-test/index.js"(exports2, module2) {
    "use strict";
    var callBound = require_call_bound();
    var isRegex = require_is_regex();
    var $exec = callBound("RegExp.prototype.exec");
    var $TypeError = require_type3();
    module2.exports = function regexTester(regex2) {
      if (!isRegex(regex2)) {
        throw new $TypeError("`regex` must be a RegExp");
      }
      return function test(s) {
        return $exec(regex2, s) !== null;
      };
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/is-symbol/1.1.1/8db60e7e33d6bda44e120c819aac0d4284c68cb8a603d96addfe57894b0d99e0/node_modules/is-symbol/index.js
var require_is_symbol = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/is-symbol/1.1.1/8db60e7e33d6bda44e120c819aac0d4284c68cb8a603d96addfe57894b0d99e0/node_modules/is-symbol/index.js"(exports2, module2) {
    "use strict";
    var callBound = require_call_bound();
    var $toString = callBound("Object.prototype.toString");
    var hasSymbols = require_has_symbols()();
    var safeRegexTest = require_safe_regex_test();
    if (hasSymbols) {
      $symToStr = callBound("Symbol.prototype.toString");
      isSymString = safeRegexTest(/^Symbol\(.*\)$/);
      isSymbolObject = function isRealSymbolObject(value) {
        if (typeof value.valueOf() !== "symbol") {
          return false;
        }
        return isSymString($symToStr(value));
      };
      module2.exports = function isSymbol(value) {
        if (typeof value === "symbol") {
          return true;
        }
        if (!value || typeof value !== "object" || $toString(value) !== "[object Symbol]") {
          return false;
        }
        try {
          return isSymbolObject(value);
        } catch (e) {
          return false;
        }
      };
    } else {
      module2.exports = function isSymbol(value) {
        return false;
      };
    }
    var $symToStr;
    var isSymString;
    var isSymbolObject;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-to-primitive/1.3.0/8be72c4ef6a8f611b7a2b2ddd0002df72797bece3252ba9c406d61741b24c499/node_modules/es-to-primitive/es2015.js
var require_es2015 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-to-primitive/1.3.0/8be72c4ef6a8f611b7a2b2ddd0002df72797bece3252ba9c406d61741b24c499/node_modules/es-to-primitive/es2015.js"(exports2, module2) {
    "use strict";
    var hasSymbols = typeof Symbol === "function" && typeof Symbol.iterator === "symbol";
    var isPrimitive2 = require_isPrimitive3();
    var isCallable = require_is_callable();
    var isDate = require_is_date_object();
    var isSymbol = require_is_symbol();
    var ordinaryToPrimitive = function OrdinaryToPrimitive(O2, hint) {
      if (typeof O2 === "undefined" || O2 === null) {
        throw new TypeError("Cannot call method on " + O2);
      }
      if (typeof hint !== "string" || hint !== "number" && hint !== "string") {
        throw new TypeError('hint must be "string" or "number"');
      }
      var methodNames = hint === "string" ? ["toString", "valueOf"] : ["valueOf", "toString"];
      var method, result2, i2;
      for (i2 = 0; i2 < methodNames.length; ++i2) {
        method = O2[methodNames[i2]];
        if (isCallable(method)) {
          result2 = method.call(O2);
          if (isPrimitive2(result2)) {
            return result2;
          }
        }
      }
      throw new TypeError("No default value");
    };
    var GetMethod = function GetMethod2(O2, P2) {
      var func = O2[P2];
      if (func !== null && typeof func !== "undefined") {
        if (!isCallable(func)) {
          throw new TypeError(func + " returned for property " + String(P2) + " of object " + O2 + " is not a function");
        }
        return func;
      }
      return void 0;
    };
    module2.exports = function ToPrimitive(input) {
      if (isPrimitive2(input)) {
        return input;
      }
      var hint = "default";
      if (arguments.length > 1) {
        if (arguments[1] === String) {
          hint = "string";
        } else if (arguments[1] === Number) {
          hint = "number";
        }
      }
      var exoticToPrim;
      if (hasSymbols) {
        if (Symbol.toPrimitive) {
          exoticToPrim = GetMethod(
            /** @type {Record<PropertyKey, unknown>} */
            input,
            Symbol.toPrimitive
          );
        } else if (isSymbol(input)) {
          exoticToPrim = Symbol.prototype.valueOf;
        }
      }
      if (typeof exoticToPrim !== "undefined") {
        var result2 = exoticToPrim.call(input, hint);
        if (isPrimitive2(result2)) {
          return result2;
        }
        throw new TypeError("unable to convert exotic object to primitive");
      }
      if (hint === "default" && (isDate(input) || isSymbol(input))) {
        hint = "string";
      }
      return ordinaryToPrimitive(
        /** @type {object} */
        input,
        hint === "default" ? "number" : hint
      );
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/ToPrimitive.js
var require_ToPrimitive = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/ToPrimitive.js"(exports2, module2) {
    "use strict";
    var toPrimitive = require_es2015();
    module2.exports = function ToPrimitive(input) {
      if (arguments.length > 1) {
        return toPrimitive(input, arguments[1]);
      }
      return toPrimitive(input);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/string.prototype.trim/1.2.10/06982b8759adb1d456d7c3ee934d55f4b6d3e958e87f9519a9fe580d88e8c482/node_modules/string.prototype.trim/implementation.js
var require_implementation4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/string.prototype.trim/1.2.10/06982b8759adb1d456d7c3ee934d55f4b6d3e958e87f9519a9fe580d88e8c482/node_modules/string.prototype.trim/implementation.js"(exports2, module2) {
    "use strict";
    var RequireObjectCoercible = require_RequireObjectCoercible();
    var ToString = require_ToString();
    var callBound = require_call_bound();
    var $replace = callBound("String.prototype.replace");
    var mvsIsWS = /^\s$/.test("\u180E");
    var leftWhitespace = mvsIsWS ? /^[\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF]+/ : /^[\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF]+/;
    var rightWhitespace = mvsIsWS ? /[\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF]+$/ : /[\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF]+$/;
    module2.exports = function trim() {
      var S2 = ToString(RequireObjectCoercible(this));
      return $replace($replace(S2, leftWhitespace, ""), rightWhitespace, "");
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/string.prototype.trim/1.2.10/06982b8759adb1d456d7c3ee934d55f4b6d3e958e87f9519a9fe580d88e8c482/node_modules/string.prototype.trim/polyfill.js
var require_polyfill2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/string.prototype.trim/1.2.10/06982b8759adb1d456d7c3ee934d55f4b6d3e958e87f9519a9fe580d88e8c482/node_modules/string.prototype.trim/polyfill.js"(exports2, module2) {
    "use strict";
    var implementation = require_implementation4();
    var zeroWidthSpace = "\u200B";
    var mongolianVowelSeparator = "\u180E";
    module2.exports = function getPolyfill() {
      if (String.prototype.trim && zeroWidthSpace.trim() === zeroWidthSpace && mongolianVowelSeparator.trim() === mongolianVowelSeparator && ("_" + mongolianVowelSeparator).trim() === "_" + mongolianVowelSeparator && (mongolianVowelSeparator + "_").trim() === mongolianVowelSeparator + "_") {
        return String.prototype.trim;
      }
      return implementation;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/string.prototype.trim/1.2.10/06982b8759adb1d456d7c3ee934d55f4b6d3e958e87f9519a9fe580d88e8c482/node_modules/string.prototype.trim/shim.js
var require_shim2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/string.prototype.trim/1.2.10/06982b8759adb1d456d7c3ee934d55f4b6d3e958e87f9519a9fe580d88e8c482/node_modules/string.prototype.trim/shim.js"(exports2, module2) {
    "use strict";
    var supportsDescriptors = require_has_property_descriptors()();
    var defineDataProperty = require_define_data_property();
    var getPolyfill = require_polyfill2();
    module2.exports = function shimStringTrim() {
      var polyfill = getPolyfill();
      if (String.prototype.trim !== polyfill) {
        if (supportsDescriptors) {
          defineDataProperty(String.prototype, "trim", polyfill, true);
        } else {
          defineDataProperty(String.prototype, "trim", polyfill);
        }
      }
      return polyfill;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/string.prototype.trim/1.2.10/06982b8759adb1d456d7c3ee934d55f4b6d3e958e87f9519a9fe580d88e8c482/node_modules/string.prototype.trim/index.js
var require_string_prototype = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/string.prototype.trim/1.2.10/06982b8759adb1d456d7c3ee934d55f4b6d3e958e87f9519a9fe580d88e8c482/node_modules/string.prototype.trim/index.js"(exports2, module2) {
    "use strict";
    var callBind = require_call_bind();
    var define2 = require_define_properties();
    var RequireObjectCoercible = require_RequireObjectCoercible();
    var implementation = require_implementation4();
    var getPolyfill = require_polyfill2();
    var shim = require_shim2();
    var bound = callBind(getPolyfill());
    var boundMethod = function trim(receiver) {
      RequireObjectCoercible(receiver);
      return bound(receiver);
    };
    define2(boundMethod, {
      getPolyfill,
      implementation,
      shim
    });
    module2.exports = boundMethod;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/StringToNumber.js
var require_StringToNumber = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/StringToNumber.js"(exports2, module2) {
    "use strict";
    var GetIntrinsic = require_get_intrinsic();
    var $RegExp = GetIntrinsic("%RegExp%");
    var $TypeError = require_type3();
    var $parseInteger = GetIntrinsic("%parseInt%");
    var callBound = require_call_bound();
    var regexTester = require_safe_regex_test();
    var $strSlice = callBound("String.prototype.slice");
    var isBinary2 = regexTester(/^0b[01]+$/i);
    var isOctal = regexTester(/^0o[0-7]+$/i);
    var isInvalidHexLiteral = regexTester(/^[-+]0x[0-9a-f]+$/i);
    var nonWS = ["\x85", "\u200B", "\uFFFE"].join("");
    var nonWSregex = new $RegExp("[" + nonWS + "]", "g");
    var hasNonWS = regexTester(nonWSregex);
    var $trim = require_string_prototype();
    module2.exports = function StringToNumber(argument) {
      if (typeof argument !== "string") {
        throw new $TypeError("Assertion failed: `argument` is not a String");
      }
      if (isBinary2(argument)) {
        return +$parseInteger($strSlice(argument, 2), 2);
      }
      if (isOctal(argument)) {
        return +$parseInteger($strSlice(argument, 2), 8);
      }
      if (hasNonWS(argument) || isInvalidHexLiteral(argument)) {
        return NaN;
      }
      var trimmed = $trim(argument);
      if (trimmed !== argument) {
        return StringToNumber(trimmed);
      }
      return +argument;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/ToNumber.js
var require_ToNumber = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/ToNumber.js"(exports2, module2) {
    "use strict";
    var GetIntrinsic = require_get_intrinsic();
    var $TypeError = require_type3();
    var $Number = GetIntrinsic("%Number%");
    var isPrimitive2 = require_isPrimitive2();
    var ToPrimitive = require_ToPrimitive();
    var StringToNumber = require_StringToNumber();
    module2.exports = function ToNumber(argument) {
      var value = isPrimitive2(argument) ? argument : ToPrimitive(argument, $Number);
      if (typeof value === "symbol") {
        throw new $TypeError("Cannot convert a Symbol value to a number");
      }
      if (typeof value === "bigint") {
        throw new $TypeError("Conversion from 'BigInt' to 'number' is not allowed.");
      }
      if (typeof value === "string") {
        return StringToNumber(value);
      }
      return +value;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/floor.js
var require_floor3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/floor.js"(exports2, module2) {
    "use strict";
    var $floor = require_floor2();
    module2.exports = function floor(x) {
      if (typeof x === "bigint") {
        return x;
      }
      return $floor(x);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/truncate.js
var require_truncate4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/truncate.js"(exports2, module2) {
    "use strict";
    var floor = require_floor3();
    var $TypeError = require_type3();
    module2.exports = function truncate(x) {
      if (typeof x !== "number" && typeof x !== "bigint") {
        throw new $TypeError("argument must be a Number or a BigInt");
      }
      var result2 = x < 0 ? -floor(-x) : floor(x);
      return result2 === 0 ? 0 : result2;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/ToIntegerOrInfinity.js
var require_ToIntegerOrInfinity = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/ToIntegerOrInfinity.js"(exports2, module2) {
    "use strict";
    var ToNumber = require_ToNumber();
    var truncate = require_truncate4();
    var $isNaN = require_isNaN2();
    var $isFinite = require_isFinite2();
    module2.exports = function ToIntegerOrInfinity(value) {
      var number = ToNumber(value);
      if ($isNaN(number) || number === 0) {
        return 0;
      }
      if (!$isFinite(number)) {
        return number;
      }
      return truncate(number);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/ToLength.js
var require_ToLength = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/ToLength.js"(exports2, module2) {
    "use strict";
    var MAX_SAFE_INTEGER = require_maxSafeInteger();
    var ToIntegerOrInfinity = require_ToIntegerOrInfinity();
    module2.exports = function ToLength(argument) {
      var len = ToIntegerOrInfinity(argument);
      if (len <= 0) {
        return 0;
      }
      if (len > MAX_SAFE_INTEGER) {
        return MAX_SAFE_INTEGER;
      }
      return len;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-set-tostringtag/2.1.0/54a527da28200ba51cfe16921c81c4eb600d98341af2e984d8d2fb0af029084a/node_modules/es-set-tostringtag/index.js
var require_es_set_tostringtag = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-set-tostringtag/2.1.0/54a527da28200ba51cfe16921c81c4eb600d98341af2e984d8d2fb0af029084a/node_modules/es-set-tostringtag/index.js"(exports2, module2) {
    "use strict";
    var GetIntrinsic = require_get_intrinsic();
    var $defineProperty = GetIntrinsic("%Object.defineProperty%", true);
    var hasToStringTag = require_shams2()();
    var hasOwn = require_hasown();
    var $TypeError = require_type3();
    var toStringTag = hasToStringTag ? Symbol.toStringTag : null;
    module2.exports = function setToStringTag(object, value) {
      var overrideIfSet = arguments.length > 2 && !!arguments[2] && arguments[2].force;
      var nonConfigurable = arguments.length > 2 && !!arguments[2] && arguments[2].nonConfigurable;
      if (typeof overrideIfSet !== "undefined" && typeof overrideIfSet !== "boolean" || typeof nonConfigurable !== "undefined" && typeof nonConfigurable !== "boolean") {
        throw new $TypeError("if provided, the `overrideIfSet` and `nonConfigurable` options must be booleans");
      }
      if (toStringTag && (overrideIfSet || !hasOwn(object, toStringTag))) {
        if ($defineProperty) {
          $defineProperty(object, toStringTag, {
            configurable: !nonConfigurable,
            enumerable: false,
            value,
            writable: false
          });
        } else {
          object[toStringTag] = value;
        }
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/CreateRegExpStringIterator.js
var require_CreateRegExpStringIterator = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/CreateRegExpStringIterator.js"(exports2, module2) {
    "use strict";
    var GetIntrinsic = require_get_intrinsic();
    var hasSymbols = require_has_symbols()();
    var $TypeError = require_type3();
    var isObject4 = require_isObject2();
    var IteratorPrototype = GetIntrinsic("%IteratorPrototype%", true);
    var AdvanceStringIndex = require_AdvanceStringIndex();
    var CreateIterResultObject = require_CreateIterResultObject();
    var DefineMethodProperty = require_DefineMethodProperty();
    var Get = require_Get();
    var OrdinaryObjectCreate = require_OrdinaryObjectCreate();
    var RegExpExec = require_RegExpExec();
    var Set2 = require_Set();
    var ToLength = require_ToLength();
    var ToString = require_ToString();
    var SLOT = require_internal_slot();
    var setToStringTag = require_es_set_tostringtag();
    var RegExpStringIterator = function RegExpStringIterator2(R2, S2, global3, fullUnicode) {
      if (typeof S2 !== "string") {
        throw new $TypeError("`S` must be a string");
      }
      if (typeof global3 !== "boolean") {
        throw new $TypeError("`global` must be a boolean");
      }
      if (typeof fullUnicode !== "boolean") {
        throw new $TypeError("`fullUnicode` must be a boolean");
      }
      SLOT.set(this, "[[IteratingRegExp]]", R2);
      SLOT.set(this, "[[IteratedString]]", S2);
      SLOT.set(this, "[[Global]]", global3);
      SLOT.set(this, "[[Unicode]]", fullUnicode);
      SLOT.set(this, "[[Done]]", false);
    };
    if (IteratorPrototype) {
      RegExpStringIterator.prototype = OrdinaryObjectCreate(IteratorPrototype);
    }
    var RegExpStringIteratorNext = function next2() {
      var O2 = this;
      if (!isObject4(O2)) {
        throw new $TypeError("receiver must be an object");
      }
      if (!(O2 instanceof RegExpStringIterator) || !SLOT.has(O2, "[[IteratingRegExp]]") || !SLOT.has(O2, "[[IteratedString]]") || !SLOT.has(O2, "[[Global]]") || !SLOT.has(O2, "[[Unicode]]") || !SLOT.has(O2, "[[Done]]")) {
        throw new $TypeError('"this" value must be a RegExpStringIterator instance');
      }
      if (SLOT.get(O2, "[[Done]]")) {
        return CreateIterResultObject(void 0, true);
      }
      var R2 = SLOT.get(O2, "[[IteratingRegExp]]");
      var S2 = SLOT.get(O2, "[[IteratedString]]");
      var global3 = SLOT.get(O2, "[[Global]]");
      var fullUnicode = SLOT.get(O2, "[[Unicode]]");
      var match = RegExpExec(R2, S2);
      if (match === null) {
        SLOT.set(O2, "[[Done]]", true);
        return CreateIterResultObject(void 0, true);
      }
      if (global3) {
        var matchStr = ToString(Get(match, "0"));
        if (matchStr === "") {
          var thisIndex = ToLength(Get(R2, "lastIndex"));
          var nextIndex = AdvanceStringIndex(S2, thisIndex, fullUnicode);
          Set2(R2, "lastIndex", nextIndex, true);
        }
        return CreateIterResultObject(match, false);
      }
      SLOT.set(O2, "[[Done]]", true);
      return CreateIterResultObject(match, false);
    };
    DefineMethodProperty(RegExpStringIterator.prototype, "next", RegExpStringIteratorNext, false);
    if (hasSymbols) {
      setToStringTag(RegExpStringIterator.prototype, "RegExp String Iterator");
      if (Symbol.iterator && typeof RegExpStringIterator.prototype[Symbol.iterator] !== "function") {
        iteratorFn = function SymbolIterator() {
          return this;
        };
        DefineMethodProperty(RegExpStringIterator.prototype, Symbol.iterator, iteratorFn, false);
      }
    }
    var iteratorFn;
    module2.exports = function CreateRegExpStringIterator(R2, S2, global3, fullUnicode) {
      return new RegExpStringIterator(R2, S2, global3, fullUnicode);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/GetIntrinsic.js
var require_GetIntrinsic = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/GetIntrinsic.js"(exports2, module2) {
    "use strict";
    module2.exports = require_get_intrinsic();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/IsConstructor.js
var require_IsConstructor = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/IsConstructor.js"(exports2, module2) {
    "use strict";
    var GetIntrinsic = require_GetIntrinsic();
    var $construct = GetIntrinsic("%Reflect.construct%", true);
    var DefinePropertyOrThrow = require_DefinePropertyOrThrow();
    try {
      DefinePropertyOrThrow({}, "", { "[[Get]]": function() {
      } });
    } catch (e) {
      DefinePropertyOrThrow = null;
    }
    if (DefinePropertyOrThrow && $construct) {
      isConstructorMarker = {};
      badArrayLike = {};
      DefinePropertyOrThrow(badArrayLike, "length", {
        "[[Get]]": function() {
          throw isConstructorMarker;
        },
        "[[Enumerable]]": true
      });
      module2.exports = function IsConstructor(argument) {
        try {
          $construct(argument, badArrayLike);
        } catch (err) {
          return err === isConstructorMarker;
        }
      };
    } else {
      module2.exports = function IsConstructor(argument) {
        return typeof argument === "function" && !!argument.prototype;
      };
    }
    var isConstructorMarker;
    var badArrayLike;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/SpeciesConstructor.js
var require_SpeciesConstructor = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/SpeciesConstructor.js"(exports2, module2) {
    "use strict";
    var GetIntrinsic = require_get_intrinsic();
    var $species = GetIntrinsic("%Symbol.species%", true);
    var $TypeError = require_type3();
    var isObject4 = require_isObject2();
    var IsConstructor = require_IsConstructor();
    module2.exports = function SpeciesConstructor(O2, defaultConstructor) {
      if (!isObject4(O2)) {
        throw new $TypeError("Assertion failed: Type(O) is not Object");
      }
      var C = O2.constructor;
      if (typeof C === "undefined") {
        return defaultConstructor;
      }
      if (!isObject4(C)) {
        throw new $TypeError("O.constructor is not an Object");
      }
      var S2 = $species ? C[$species] : void 0;
      if (S2 == null) {
        return defaultConstructor;
      }
      if (IsConstructor(S2)) {
        return S2;
      }
      throw new $TypeError("no constructor found");
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/5/Type.js
var require_Type = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/5/Type.js"(exports2, module2) {
    "use strict";
    var isObject4 = require_isObject2();
    module2.exports = function Type2(x) {
      if (x === null) {
        return "Null";
      }
      if (typeof x === "undefined") {
        return "Undefined";
      }
      if (isObject4(x)) {
        return "Object";
      }
      if (typeof x === "number") {
        return "Number";
      }
      if (typeof x === "boolean") {
        return "Boolean";
      }
      if (typeof x === "string") {
        return "String";
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/Type.js
var require_Type2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/es-abstract/1.24.2/aa781929b93d823f6f3ee2e9bec770d9abbfe1ec3097088e65952676702626f2/node_modules/es-abstract/2024/Type.js"(exports2, module2) {
    "use strict";
    var ES5Type = require_Type();
    module2.exports = function Type2(x) {
      if (typeof x === "symbol") {
        return "Symbol";
      }
      if (typeof x === "bigint") {
        return "BigInt";
      }
      return ES5Type(x);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/string.prototype.matchall/4.0.12/d222abae6fa6926a0a0a0fc907896ab05efadca8f998457b4caf0d930cceb8a1/node_modules/string.prototype.matchall/regexp-matchall.js
var require_regexp_matchall = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/string.prototype.matchall/4.0.12/d222abae6fa6926a0a0a0fc907896ab05efadca8f998457b4caf0d930cceb8a1/node_modules/string.prototype.matchall/regexp-matchall.js"(exports2, module2) {
    "use strict";
    var CreateRegExpStringIterator = require_CreateRegExpStringIterator();
    var Get = require_Get();
    var Set2 = require_Set();
    var SpeciesConstructor = require_SpeciesConstructor();
    var ToLength = require_ToLength();
    var ToString = require_ToString();
    var Type2 = require_Type2();
    var flagsGetter = require_regexp_prototype();
    var setFunctionName = require_set_function_name();
    var callBound = require_call_bound();
    var GetIntrinsic = require_get_intrinsic();
    var $TypeError = require_type3();
    var $indexOf = callBound("String.prototype.indexOf");
    var OrigRegExp = GetIntrinsic("%RegExp%");
    var supportsConstructingWithFlags = "flags" in OrigRegExp.prototype;
    var constructRegexWithFlags = function constructRegex(C, R2) {
      var matcher;
      var flags = "flags" in R2 ? Get(R2, "flags") : ToString(flagsGetter(R2));
      if (supportsConstructingWithFlags && typeof flags === "string") {
        matcher = new C(R2, flags);
      } else if (C === OrigRegExp) {
        matcher = new C(R2.source, flags);
      } else {
        matcher = new C(R2, flags);
      }
      return { flags, matcher };
    };
    var regexMatchAll = setFunctionName(function SymbolMatchAll(string) {
      var R2 = this;
      if (Type2(R2) !== "Object") {
        throw new $TypeError('"this" value must be an Object');
      }
      var S2 = ToString(string);
      var C = SpeciesConstructor(R2, OrigRegExp);
      var tmp = constructRegexWithFlags(C, R2);
      var flags = tmp.flags;
      var matcher = tmp.matcher;
      var lastIndex = ToLength(Get(R2, "lastIndex"));
      Set2(matcher, "lastIndex", lastIndex, true);
      var global3 = $indexOf(flags, "g") > -1;
      var fullUnicode = $indexOf(flags, "u") > -1;
      return CreateRegExpStringIterator(matcher, S2, global3, fullUnicode);
    }, "[Symbol.matchAll]", true);
    module2.exports = regexMatchAll;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/string.prototype.matchall/4.0.12/d222abae6fa6926a0a0a0fc907896ab05efadca8f998457b4caf0d930cceb8a1/node_modules/string.prototype.matchall/polyfill-regexp-matchall.js
var require_polyfill_regexp_matchall = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/string.prototype.matchall/4.0.12/d222abae6fa6926a0a0a0fc907896ab05efadca8f998457b4caf0d930cceb8a1/node_modules/string.prototype.matchall/polyfill-regexp-matchall.js"(exports2, module2) {
    "use strict";
    var hasSymbols = require_has_symbols()();
    var regexpMatchAll = require_regexp_matchall();
    module2.exports = function getRegExpMatchAllPolyfill() {
      if (!hasSymbols || typeof Symbol.matchAll !== "symbol" || typeof RegExp.prototype[Symbol.matchAll] !== "function") {
        return regexpMatchAll;
      }
      return RegExp.prototype[Symbol.matchAll];
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/string.prototype.matchall/4.0.12/d222abae6fa6926a0a0a0fc907896ab05efadca8f998457b4caf0d930cceb8a1/node_modules/string.prototype.matchall/implementation.js
var require_implementation5 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/string.prototype.matchall/4.0.12/d222abae6fa6926a0a0a0fc907896ab05efadca8f998457b4caf0d930cceb8a1/node_modules/string.prototype.matchall/implementation.js"(exports2, module2) {
    "use strict";
    var Call = require_Call();
    var Get = require_Get();
    var GetMethod = require_GetMethod();
    var IsRegExp = require_IsRegExp();
    var ToString = require_ToString();
    var RequireObjectCoercible = require_RequireObjectCoercible();
    var callBound = require_call_bound();
    var hasSymbols = require_has_symbols()();
    var flagsGetter = require_regexp_prototype();
    var GetIntrinsic = require_get_intrinsic();
    var $TypeError = require_type3();
    var $RegExp = GetIntrinsic("%RegExp%");
    var $indexOf = callBound("String.prototype.indexOf");
    var regexpMatchAllPolyfill = require_polyfill_regexp_matchall();
    var getMatcher = function getMatcher2(regexp) {
      var matcherPolyfill = regexpMatchAllPolyfill();
      if (hasSymbols && typeof Symbol.matchAll === "symbol") {
        var matcher = GetMethod(regexp, Symbol.matchAll);
        if (matcher === $RegExp.prototype[Symbol.matchAll] && matcher !== matcherPolyfill) {
          return matcherPolyfill;
        }
        return matcher;
      }
      if (IsRegExp(regexp)) {
        return matcherPolyfill;
      }
    };
    module2.exports = function matchAll(regexp) {
      var O2 = RequireObjectCoercible(this);
      if (typeof regexp !== "undefined" && regexp !== null) {
        var isRegExp = IsRegExp(regexp);
        if (isRegExp) {
          var flags = "flags" in regexp ? Get(regexp, "flags") : flagsGetter(regexp);
          RequireObjectCoercible(flags);
          if ($indexOf(ToString(flags), "g") < 0) {
            throw new $TypeError("matchAll requires a global regular expression");
          }
        }
        var matcher = getMatcher(regexp);
        if (typeof matcher !== "undefined") {
          return Call(matcher, regexp, [O2]);
        }
      }
      var S2 = ToString(O2);
      var rx = new $RegExp(regexp, "g");
      return Call(getMatcher(rx), rx, [S2]);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/string.prototype.matchall/4.0.12/d222abae6fa6926a0a0a0fc907896ab05efadca8f998457b4caf0d930cceb8a1/node_modules/string.prototype.matchall/polyfill.js
var require_polyfill3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/string.prototype.matchall/4.0.12/d222abae6fa6926a0a0a0fc907896ab05efadca8f998457b4caf0d930cceb8a1/node_modules/string.prototype.matchall/polyfill.js"(exports2, module2) {
    "use strict";
    var implementation = require_implementation5();
    module2.exports = function getPolyfill() {
      if (String.prototype.matchAll) {
        try {
          "".matchAll(RegExp.prototype);
        } catch (e) {
          return String.prototype.matchAll;
        }
      }
      return implementation;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/string.prototype.matchall/4.0.12/d222abae6fa6926a0a0a0fc907896ab05efadca8f998457b4caf0d930cceb8a1/node_modules/string.prototype.matchall/shim.js
var require_shim3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/string.prototype.matchall/4.0.12/d222abae6fa6926a0a0a0fc907896ab05efadca8f998457b4caf0d930cceb8a1/node_modules/string.prototype.matchall/shim.js"(exports2, module2) {
    "use strict";
    var define2 = require_define_properties();
    var hasSymbols = require_has_symbols()();
    var gOPD = require_gopd();
    var getPolyfill = require_polyfill3();
    var regexpMatchAllPolyfill = require_polyfill_regexp_matchall();
    var defineP = Object.defineProperty;
    module2.exports = function shimMatchAll() {
      var polyfill = getPolyfill();
      define2(
        String.prototype,
        { matchAll: polyfill },
        { matchAll: function() {
          return String.prototype.matchAll !== polyfill;
        } }
      );
      if (hasSymbols) {
        var symbol = Symbol.matchAll || (Symbol["for"] ? Symbol["for"]("Symbol.matchAll") : /* @__PURE__ */ Symbol("Symbol.matchAll"));
        define2(
          Symbol,
          { matchAll: symbol },
          { matchAll: function() {
            return Symbol.matchAll !== symbol;
          } }
        );
        if (defineP && gOPD) {
          var desc = gOPD(Symbol, symbol);
          if (!desc || desc.configurable) {
            defineP(Symbol, symbol, {
              configurable: false,
              enumerable: false,
              value: symbol,
              writable: false
            });
          }
        }
        var regexpMatchAll = regexpMatchAllPolyfill();
        var func = {};
        func[symbol] = regexpMatchAll;
        var predicate = {};
        predicate[symbol] = function() {
          return RegExp.prototype[symbol] !== regexpMatchAll;
        };
        define2(RegExp.prototype, func, predicate);
      }
      return polyfill;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/string.prototype.matchall/4.0.12/d222abae6fa6926a0a0a0fc907896ab05efadca8f998457b4caf0d930cceb8a1/node_modules/string.prototype.matchall/index.js
var require_string_prototype2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/string.prototype.matchall/4.0.12/d222abae6fa6926a0a0a0fc907896ab05efadca8f998457b4caf0d930cceb8a1/node_modules/string.prototype.matchall/index.js"(exports2, module2) {
    "use strict";
    var callBind = require_call_bind();
    var define2 = require_define_properties();
    var implementation = require_implementation5();
    var getPolyfill = require_polyfill3();
    var shim = require_shim3();
    var boundMatchAll = callBind(implementation);
    define2(boundMatchAll, {
      getPolyfill,
      implementation,
      shim
    });
    module2.exports = boundMatchAll;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/strip-final-newline/2.0.0/2c0ee6fd926adbf0c99bc5709a4241ee954e61534a646d9259c579bba4f1915f/node_modules/strip-final-newline/index.js
var require_strip_final_newline = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/strip-final-newline/2.0.0/2c0ee6fd926adbf0c99bc5709a4241ee954e61534a646d9259c579bba4f1915f/node_modules/strip-final-newline/index.js"(exports2, module2) {
    "use strict";
    module2.exports = (input) => {
      const LF2 = typeof input === "string" ? "\n" : "\n".charCodeAt();
      const CR2 = typeof input === "string" ? "\r" : "\r".charCodeAt();
      if (input[input.length - 1] === LF2) {
        input = input.slice(0, input.length - 1);
      }
      if (input[input.length - 1] === CR2) {
        input = input.slice(0, input.length - 1);
      }
      return input;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/npm-run-path/4.0.1/790b7737eb354bc6a99b7c833987eddc3119975e5622b7482bf4a095e53103d5/node_modules/npm-run-path/index.js
var require_npm_run_path = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/npm-run-path/4.0.1/790b7737eb354bc6a99b7c833987eddc3119975e5622b7482bf4a095e53103d5/node_modules/npm-run-path/index.js"(exports2, module2) {
    "use strict";
    var path218 = __require("path");
    var pathKey2 = require_path_key();
    var npmRunPath2 = (options) => {
      options = {
        cwd: process.cwd(),
        path: process.env[pathKey2()],
        execPath: process.execPath,
        ...options
      };
      let previous;
      let cwdPath = path218.resolve(options.cwd);
      const result2 = [];
      while (previous !== cwdPath) {
        result2.push(path218.join(cwdPath, "node_modules/.bin"));
        previous = cwdPath;
        cwdPath = path218.resolve(cwdPath, "..");
      }
      const execPathDir = path218.resolve(options.cwd, options.execPath, "..");
      result2.push(execPathDir);
      return result2.concat(options.path).join(path218.delimiter);
    };
    module2.exports = npmRunPath2;
    module2.exports.default = npmRunPath2;
    module2.exports.env = (options) => {
      options = {
        env: process.env,
        ...options
      };
      const env3 = { ...options.env };
      const path219 = pathKey2({ env: env3 });
      options.path = env3[path219];
      env3[path219] = module2.exports(options);
      return env3;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/mimic-fn/2.1.0/661fe86562ed40cbf3a8de1ddde06d94ead5d33b1f8957ecfc185e96daabcb71/node_modules/mimic-fn/index.js
var require_mimic_fn2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/mimic-fn/2.1.0/661fe86562ed40cbf3a8de1ddde06d94ead5d33b1f8957ecfc185e96daabcb71/node_modules/mimic-fn/index.js"(exports2, module2) {
    "use strict";
    var mimicFn = (to, from5) => {
      for (const prop3 of Reflect.ownKeys(from5)) {
        Object.defineProperty(to, prop3, Object.getOwnPropertyDescriptor(from5, prop3));
      }
      return to;
    };
    module2.exports = mimicFn;
    module2.exports.default = mimicFn;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/onetime/5.1.2/3b3396ba47d4c8f2008b9953f98a652de8e9d76595c92aaa3d9cb4ae786b2098/node_modules/onetime/index.js
var require_onetime = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/onetime/5.1.2/3b3396ba47d4c8f2008b9953f98a652de8e9d76595c92aaa3d9cb4ae786b2098/node_modules/onetime/index.js"(exports2, module2) {
    "use strict";
    var mimicFn = require_mimic_fn2();
    var calledFunctions = /* @__PURE__ */ new WeakMap();
    var onetime = (function_, options = {}) => {
      if (typeof function_ !== "function") {
        throw new TypeError("Expected a function");
      }
      let returnValue;
      let callCount = 0;
      const functionName = function_.displayName || function_.name || "<anonymous>";
      const onetime2 = function(...arguments_) {
        calledFunctions.set(onetime2, ++callCount);
        if (callCount === 1) {
          returnValue = function_.apply(this, arguments_);
          function_ = null;
        } else if (options.throw === true) {
          throw new Error(`Function \`${functionName}\` can only be called once`);
        }
        return returnValue;
      };
      mimicFn(onetime2, function_);
      calledFunctions.set(onetime2, callCount);
      return onetime2;
    };
    module2.exports = onetime;
    module2.exports.default = onetime;
    module2.exports.callCount = (function_) => {
      if (!calledFunctions.has(function_)) {
        throw new Error(`The given function \`${function_.name}\` is not wrapped by the \`onetime\` package`);
      }
      return calledFunctions.get(function_);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/human-signals/2.1.0/37f6712f9c648b03511f8d0440097c44c1dc5f305107499d0bfb9ea79e2c4ee0/node_modules/human-signals/build/src/core.js
var require_core6 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/human-signals/2.1.0/37f6712f9c648b03511f8d0440097c44c1dc5f305107499d0bfb9ea79e2c4ee0/node_modules/human-signals/build/src/core.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.SIGNALS = void 0;
    var SIGNALS2 = [
      {
        name: "SIGHUP",
        number: 1,
        action: "terminate",
        description: "Terminal closed",
        standard: "posix"
      },
      {
        name: "SIGINT",
        number: 2,
        action: "terminate",
        description: "User interruption with CTRL-C",
        standard: "ansi"
      },
      {
        name: "SIGQUIT",
        number: 3,
        action: "core",
        description: "User interruption with CTRL-\\",
        standard: "posix"
      },
      {
        name: "SIGILL",
        number: 4,
        action: "core",
        description: "Invalid machine instruction",
        standard: "ansi"
      },
      {
        name: "SIGTRAP",
        number: 5,
        action: "core",
        description: "Debugger breakpoint",
        standard: "posix"
      },
      {
        name: "SIGABRT",
        number: 6,
        action: "core",
        description: "Aborted",
        standard: "ansi"
      },
      {
        name: "SIGIOT",
        number: 6,
        action: "core",
        description: "Aborted",
        standard: "bsd"
      },
      {
        name: "SIGBUS",
        number: 7,
        action: "core",
        description: "Bus error due to misaligned, non-existing address or paging error",
        standard: "bsd"
      },
      {
        name: "SIGEMT",
        number: 7,
        action: "terminate",
        description: "Command should be emulated but is not implemented",
        standard: "other"
      },
      {
        name: "SIGFPE",
        number: 8,
        action: "core",
        description: "Floating point arithmetic error",
        standard: "ansi"
      },
      {
        name: "SIGKILL",
        number: 9,
        action: "terminate",
        description: "Forced termination",
        standard: "posix",
        forced: true
      },
      {
        name: "SIGUSR1",
        number: 10,
        action: "terminate",
        description: "Application-specific signal",
        standard: "posix"
      },
      {
        name: "SIGSEGV",
        number: 11,
        action: "core",
        description: "Segmentation fault",
        standard: "ansi"
      },
      {
        name: "SIGUSR2",
        number: 12,
        action: "terminate",
        description: "Application-specific signal",
        standard: "posix"
      },
      {
        name: "SIGPIPE",
        number: 13,
        action: "terminate",
        description: "Broken pipe or socket",
        standard: "posix"
      },
      {
        name: "SIGALRM",
        number: 14,
        action: "terminate",
        description: "Timeout or timer",
        standard: "posix"
      },
      {
        name: "SIGTERM",
        number: 15,
        action: "terminate",
        description: "Termination",
        standard: "ansi"
      },
      {
        name: "SIGSTKFLT",
        number: 16,
        action: "terminate",
        description: "Stack is empty or overflowed",
        standard: "other"
      },
      {
        name: "SIGCHLD",
        number: 17,
        action: "ignore",
        description: "Child process terminated, paused or unpaused",
        standard: "posix"
      },
      {
        name: "SIGCLD",
        number: 17,
        action: "ignore",
        description: "Child process terminated, paused or unpaused",
        standard: "other"
      },
      {
        name: "SIGCONT",
        number: 18,
        action: "unpause",
        description: "Unpaused",
        standard: "posix",
        forced: true
      },
      {
        name: "SIGSTOP",
        number: 19,
        action: "pause",
        description: "Paused",
        standard: "posix",
        forced: true
      },
      {
        name: "SIGTSTP",
        number: 20,
        action: "pause",
        description: 'Paused using CTRL-Z or "suspend"',
        standard: "posix"
      },
      {
        name: "SIGTTIN",
        number: 21,
        action: "pause",
        description: "Background process cannot read terminal input",
        standard: "posix"
      },
      {
        name: "SIGBREAK",
        number: 21,
        action: "terminate",
        description: "User interruption with CTRL-BREAK",
        standard: "other"
      },
      {
        name: "SIGTTOU",
        number: 22,
        action: "pause",
        description: "Background process cannot write to terminal output",
        standard: "posix"
      },
      {
        name: "SIGURG",
        number: 23,
        action: "ignore",
        description: "Socket received out-of-band data",
        standard: "bsd"
      },
      {
        name: "SIGXCPU",
        number: 24,
        action: "core",
        description: "Process timed out",
        standard: "bsd"
      },
      {
        name: "SIGXFSZ",
        number: 25,
        action: "core",
        description: "File too big",
        standard: "bsd"
      },
      {
        name: "SIGVTALRM",
        number: 26,
        action: "terminate",
        description: "Timeout or timer",
        standard: "bsd"
      },
      {
        name: "SIGPROF",
        number: 27,
        action: "terminate",
        description: "Timeout or timer",
        standard: "bsd"
      },
      {
        name: "SIGWINCH",
        number: 28,
        action: "ignore",
        description: "Terminal window size changed",
        standard: "bsd"
      },
      {
        name: "SIGIO",
        number: 29,
        action: "terminate",
        description: "I/O is available",
        standard: "other"
      },
      {
        name: "SIGPOLL",
        number: 29,
        action: "terminate",
        description: "Watched event",
        standard: "other"
      },
      {
        name: "SIGINFO",
        number: 29,
        action: "ignore",
        description: "Request for process information",
        standard: "other"
      },
      {
        name: "SIGPWR",
        number: 30,
        action: "terminate",
        description: "Device running out of power",
        standard: "systemv"
      },
      {
        name: "SIGSYS",
        number: 31,
        action: "core",
        description: "Invalid system call",
        standard: "other"
      },
      {
        name: "SIGUNUSED",
        number: 31,
        action: "terminate",
        description: "Invalid system call",
        standard: "other"
      }
    ];
    exports2.SIGNALS = SIGNALS2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/human-signals/2.1.0/37f6712f9c648b03511f8d0440097c44c1dc5f305107499d0bfb9ea79e2c4ee0/node_modules/human-signals/build/src/realtime.js
var require_realtime = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/human-signals/2.1.0/37f6712f9c648b03511f8d0440097c44c1dc5f305107499d0bfb9ea79e2c4ee0/node_modules/human-signals/build/src/realtime.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.SIGRTMAX = exports2.getRealtimeSignals = void 0;
    var getRealtimeSignals2 = function() {
      const length = SIGRTMAX2 - SIGRTMIN2 + 1;
      return Array.from({ length }, getRealtimeSignal2);
    };
    exports2.getRealtimeSignals = getRealtimeSignals2;
    var getRealtimeSignal2 = function(value, index) {
      return {
        name: `SIGRT${index + 1}`,
        number: SIGRTMIN2 + index,
        action: "terminate",
        description: "Application-specific signal (realtime)",
        standard: "posix"
      };
    };
    var SIGRTMIN2 = 34;
    var SIGRTMAX2 = 64;
    exports2.SIGRTMAX = SIGRTMAX2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/human-signals/2.1.0/37f6712f9c648b03511f8d0440097c44c1dc5f305107499d0bfb9ea79e2c4ee0/node_modules/human-signals/build/src/signals.js
var require_signals3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/human-signals/2.1.0/37f6712f9c648b03511f8d0440097c44c1dc5f305107499d0bfb9ea79e2c4ee0/node_modules/human-signals/build/src/signals.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.getSignals = void 0;
    var _os = __require("os");
    var _core = require_core6();
    var _realtime = require_realtime();
    var getSignals2 = function() {
      const realtimeSignals = (0, _realtime.getRealtimeSignals)();
      const signals2 = [..._core.SIGNALS, ...realtimeSignals].map(normalizeSignal3);
      return signals2;
    };
    exports2.getSignals = getSignals2;
    var normalizeSignal3 = function({
      name,
      number: defaultNumber,
      description,
      action,
      forced = false,
      standard
    }) {
      const {
        signals: { [name]: constantSignal }
      } = _os.constants;
      const supported = constantSignal !== void 0;
      const number = supported ? constantSignal : defaultNumber;
      return { name, number, description, supported, action, forced, standard };
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/human-signals/2.1.0/37f6712f9c648b03511f8d0440097c44c1dc5f305107499d0bfb9ea79e2c4ee0/node_modules/human-signals/build/src/main.js
var require_main2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/human-signals/2.1.0/37f6712f9c648b03511f8d0440097c44c1dc5f305107499d0bfb9ea79e2c4ee0/node_modules/human-signals/build/src/main.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.signalsByNumber = exports2.signalsByName = void 0;
    var _os = __require("os");
    var _signals = require_signals3();
    var _realtime = require_realtime();
    var getSignalsByName2 = function() {
      const signals2 = (0, _signals.getSignals)();
      return signals2.reduce(getSignalByName2, {});
    };
    var getSignalByName2 = function(signalByNameMemo, { name, number, description, supported, action, forced, standard }) {
      return {
        ...signalByNameMemo,
        [name]: { name, number, description, supported, action, forced, standard }
      };
    };
    var signalsByName2 = getSignalsByName2();
    exports2.signalsByName = signalsByName2;
    var getSignalsByNumber2 = function() {
      const signals2 = (0, _signals.getSignals)();
      const length = _realtime.SIGRTMAX + 1;
      const signalsA = Array.from({ length }, (value, number) => getSignalByNumber2(number, signals2));
      return Object.assign({}, ...signalsA);
    };
    var getSignalByNumber2 = function(number, signals2) {
      const signal = findSignalByNumber2(number, signals2);
      if (signal === void 0) {
        return {};
      }
      const { name, description, supported, action, forced, standard } = signal;
      return {
        [number]: {
          name,
          number,
          description,
          supported,
          action,
          forced,
          standard
        }
      };
    };
    var findSignalByNumber2 = function(number, signals2) {
      const signal = signals2.find(({ name }) => _os.constants.signals[name] === number);
      if (signal !== void 0) {
        return signal;
      }
      return signals2.find((signalA) => signalA.number === number);
    };
    var signalsByNumber2 = getSignalsByNumber2();
    exports2.signalsByNumber = signalsByNumber2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/5.1.1/62699bd39e784a61ca7e36e367cd0c01479cb83b35e41d0c0cac26ec31616a9b/node_modules/execa/lib/error.js
var require_error2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/5.1.1/62699bd39e784a61ca7e36e367cd0c01479cb83b35e41d0c0cac26ec31616a9b/node_modules/execa/lib/error.js"(exports2, module2) {
    "use strict";
    var { signalsByName: signalsByName2 } = require_main2();
    var getErrorPrefix2 = ({ timedOut, timeout, errorCode, signal, signalDescription, exitCode, isCanceled }) => {
      if (timedOut) {
        return `timed out after ${timeout} milliseconds`;
      }
      if (isCanceled) {
        return "was canceled";
      }
      if (errorCode !== void 0) {
        return `failed with ${errorCode}`;
      }
      if (signal !== void 0) {
        return `was killed with ${signal} (${signalDescription})`;
      }
      if (exitCode !== void 0) {
        return `failed with exit code ${exitCode}`;
      }
      return "failed";
    };
    var makeError2 = ({
      stdout,
      stderr,
      all,
      error,
      signal,
      exitCode,
      command,
      escapedCommand,
      timedOut,
      isCanceled,
      killed,
      parsed: { options: { timeout } }
    }) => {
      exitCode = exitCode === null ? void 0 : exitCode;
      signal = signal === null ? void 0 : signal;
      const signalDescription = signal === void 0 ? void 0 : signalsByName2[signal].description;
      const errorCode = error && error.code;
      const prefix = getErrorPrefix2({ timedOut, timeout, errorCode, signal, signalDescription, exitCode, isCanceled });
      const execaMessage = `Command ${prefix}: ${command}`;
      const isError = Object.prototype.toString.call(error) === "[object Error]";
      const shortMessage = isError ? `${execaMessage}
${error.message}` : execaMessage;
      const message = [shortMessage, stderr, stdout].filter(Boolean).join("\n");
      if (isError) {
        error.originalMessage = error.message;
        error.message = message;
      } else {
        error = new Error(message);
      }
      error.shortMessage = shortMessage;
      error.command = command;
      error.escapedCommand = escapedCommand;
      error.exitCode = exitCode;
      error.signal = signal;
      error.signalDescription = signalDescription;
      error.stdout = stdout;
      error.stderr = stderr;
      if (all !== void 0) {
        error.all = all;
      }
      if ("bufferedData" in error) {
        delete error.bufferedData;
      }
      error.failed = true;
      error.timedOut = Boolean(timedOut);
      error.isCanceled = isCanceled;
      error.killed = killed && !timedOut;
      return error;
    };
    module2.exports = makeError2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/5.1.1/62699bd39e784a61ca7e36e367cd0c01479cb83b35e41d0c0cac26ec31616a9b/node_modules/execa/lib/stdio.js
var require_stdio = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/5.1.1/62699bd39e784a61ca7e36e367cd0c01479cb83b35e41d0c0cac26ec31616a9b/node_modules/execa/lib/stdio.js"(exports2, module2) {
    "use strict";
    var aliases = ["stdin", "stdout", "stderr"];
    var hasAlias2 = (options) => aliases.some((alias) => options[alias] !== void 0);
    var normalizeStdio = (options) => {
      if (!options) {
        return;
      }
      const { stdio } = options;
      if (stdio === void 0) {
        return aliases.map((alias) => options[alias]);
      }
      if (hasAlias2(options)) {
        throw new Error(`It's not possible to provide \`stdio\` in combination with one of ${aliases.map((alias) => `\`${alias}\``).join(", ")}`);
      }
      if (typeof stdio === "string") {
        return stdio;
      }
      if (!Array.isArray(stdio)) {
        throw new TypeError(`Expected \`stdio\` to be of type \`string\` or \`Array\`, got \`${typeof stdio}\``);
      }
      const length = Math.max(stdio.length, aliases.length);
      return Array.from({ length }, (value, index) => stdio[index]);
    };
    module2.exports = normalizeStdio;
    module2.exports.node = (options) => {
      const stdio = normalizeStdio(options);
      if (stdio === "ipc") {
        return "ipc";
      }
      if (stdio === void 0 || typeof stdio === "string") {
        return [stdio, stdio, stdio, "ipc"];
      }
      if (stdio.includes("ipc")) {
        return stdio;
      }
      return [...stdio, "ipc"];
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/5.1.1/62699bd39e784a61ca7e36e367cd0c01479cb83b35e41d0c0cac26ec31616a9b/node_modules/execa/lib/kill.js
var require_kill = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/5.1.1/62699bd39e784a61ca7e36e367cd0c01479cb83b35e41d0c0cac26ec31616a9b/node_modules/execa/lib/kill.js"(exports2, module2) {
    "use strict";
    var os15 = __require("os");
    var onExit2 = require_signal_exit();
    var DEFAULT_FORCE_KILL_TIMEOUT2 = 1e3 * 5;
    var spawnedKill = (kill, signal = "SIGTERM", options = {}) => {
      const killResult = kill(signal);
      setKillTimeout2(kill, signal, options, killResult);
      return killResult;
    };
    var setKillTimeout2 = (kill, signal, options, killResult) => {
      if (!shouldForceKill(signal, options, killResult)) {
        return;
      }
      const timeout = getForceKillAfterTimeout(options);
      const t2 = setTimeout(() => {
        kill("SIGKILL");
      }, timeout);
      if (t2.unref) {
        t2.unref();
      }
    };
    var shouldForceKill = (signal, { forceKillAfterTimeout }, killResult) => {
      return isSigterm(signal) && forceKillAfterTimeout !== false && killResult;
    };
    var isSigterm = (signal) => {
      return signal === os15.constants.signals.SIGTERM || typeof signal === "string" && signal.toUpperCase() === "SIGTERM";
    };
    var getForceKillAfterTimeout = ({ forceKillAfterTimeout = true }) => {
      if (forceKillAfterTimeout === true) {
        return DEFAULT_FORCE_KILL_TIMEOUT2;
      }
      if (!Number.isFinite(forceKillAfterTimeout) || forceKillAfterTimeout < 0) {
        throw new TypeError(`Expected the \`forceKillAfterTimeout\` option to be a non-negative integer, got \`${forceKillAfterTimeout}\` (${typeof forceKillAfterTimeout})`);
      }
      return forceKillAfterTimeout;
    };
    var spawnedCancel = (spawned, context) => {
      const killResult = spawned.kill();
      if (killResult) {
        context.isCanceled = true;
      }
    };
    var timeoutKill = (spawned, signal, reject3) => {
      spawned.kill(signal);
      reject3(Object.assign(new Error("Timed out"), { timedOut: true, signal }));
    };
    var setupTimeout = (spawned, { timeout, killSignal = "SIGTERM" }, spawnedPromise) => {
      if (timeout === 0 || timeout === void 0) {
        return spawnedPromise;
      }
      let timeoutId;
      const timeoutPromise = new Promise((resolve3, reject3) => {
        timeoutId = setTimeout(() => {
          timeoutKill(spawned, killSignal, reject3);
        }, timeout);
      });
      const safeSpawnedPromise = spawnedPromise.finally(() => {
        clearTimeout(timeoutId);
      });
      return Promise.race([timeoutPromise, safeSpawnedPromise]);
    };
    var validateTimeout2 = ({ timeout }) => {
      if (timeout !== void 0 && (!Number.isFinite(timeout) || timeout < 0)) {
        throw new TypeError(`Expected the \`timeout\` option to be a non-negative integer, got \`${timeout}\` (${typeof timeout})`);
      }
    };
    var setExitHandler = async (spawned, { cleanup, detached }, timedPromise) => {
      if (!cleanup || detached) {
        return timedPromise;
      }
      const removeExitHandler = onExit2(() => {
        spawned.kill();
      });
      return timedPromise.finally(() => {
        removeExitHandler();
      });
    };
    module2.exports = {
      spawnedKill,
      spawnedCancel,
      setupTimeout,
      validateTimeout: validateTimeout2,
      setExitHandler
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/is-stream/2.0.1/43a2859fe2e1c051e1d7631b16be73251bcfca844f9202a3d169e5d6c6166c2a/node_modules/is-stream/index.js
var require_is_stream = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/is-stream/2.0.1/43a2859fe2e1c051e1d7631b16be73251bcfca844f9202a3d169e5d6c6166c2a/node_modules/is-stream/index.js"(exports2, module2) {
    "use strict";
    var isStream3 = (stream2) => stream2 !== null && typeof stream2 === "object" && typeof stream2.pipe === "function";
    isStream3.writable = (stream2) => isStream3(stream2) && stream2.writable !== false && typeof stream2._write === "function" && typeof stream2._writableState === "object";
    isStream3.readable = (stream2) => isStream3(stream2) && stream2.readable !== false && typeof stream2._read === "function" && typeof stream2._readableState === "object";
    isStream3.duplex = (stream2) => isStream3.writable(stream2) && isStream3.readable(stream2);
    isStream3.transform = (stream2) => isStream3.duplex(stream2) && typeof stream2._transform === "function";
    module2.exports = isStream3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/get-stream/6.0.1/ed221139473d56f3d5fd32143fdfac5cd645d3304b8043a719062c0a5d0300de/node_modules/get-stream/buffer-stream.js
var require_buffer_stream = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/get-stream/6.0.1/ed221139473d56f3d5fd32143fdfac5cd645d3304b8043a719062c0a5d0300de/node_modules/get-stream/buffer-stream.js"(exports2, module2) {
    "use strict";
    var { PassThrough: PassThroughStream2 } = __require("stream");
    module2.exports = (options) => {
      options = { ...options };
      const { array } = options;
      let { encoding } = options;
      const isBuffer = encoding === "buffer";
      let objectMode = false;
      if (array) {
        objectMode = !(encoding || isBuffer);
      } else {
        encoding = encoding || "utf8";
      }
      if (isBuffer) {
        encoding = null;
      }
      const stream2 = new PassThroughStream2({ objectMode });
      if (encoding) {
        stream2.setEncoding(encoding);
      }
      let length = 0;
      const chunks = [];
      stream2.on("data", (chunk) => {
        chunks.push(chunk);
        if (objectMode) {
          length = chunks.length;
        } else {
          length += chunk.length;
        }
      });
      stream2.getBufferedValue = () => {
        if (array) {
          return chunks;
        }
        return isBuffer ? Buffer.concat(chunks, length) : chunks.join("");
      };
      stream2.getBufferedLength = () => length;
      return stream2;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/get-stream/6.0.1/ed221139473d56f3d5fd32143fdfac5cd645d3304b8043a719062c0a5d0300de/node_modules/get-stream/index.js
var require_get_stream = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/get-stream/6.0.1/ed221139473d56f3d5fd32143fdfac5cd645d3304b8043a719062c0a5d0300de/node_modules/get-stream/index.js"(exports2, module2) {
    "use strict";
    var { constants: BufferConstants } = __require("buffer");
    var stream2 = __require("stream");
    var { promisify: promisify8 } = __require("util");
    var bufferStream2 = require_buffer_stream();
    var streamPipelinePromisified = promisify8(stream2.pipeline);
    var MaxBufferError2 = class extends Error {
      constructor() {
        super("maxBuffer exceeded");
        this.name = "MaxBufferError";
      }
    };
    async function getStream(inputStream, options) {
      if (!inputStream) {
        throw new Error("Expected a stream");
      }
      options = {
        maxBuffer: Infinity,
        ...options
      };
      const { maxBuffer } = options;
      const stream3 = bufferStream2(options);
      await new Promise((resolve3, reject3) => {
        const rejectPromise = (error) => {
          if (error && stream3.getBufferedLength() <= BufferConstants.MAX_LENGTH) {
            error.bufferedData = stream3.getBufferedValue();
          }
          reject3(error);
        };
        (async () => {
          try {
            await streamPipelinePromisified(inputStream, stream3);
            resolve3();
          } catch (error) {
            rejectPromise(error);
          }
        })();
        stream3.on("data", () => {
          if (stream3.getBufferedLength() > maxBuffer) {
            rejectPromise(new MaxBufferError2());
          }
        });
      });
      return stream3.getBufferedValue();
    }
    module2.exports = getStream;
    module2.exports.buffer = (stream3, options) => getStream(stream3, { ...options, encoding: "buffer" });
    module2.exports.array = (stream3, options) => getStream(stream3, { ...options, array: true });
    module2.exports.MaxBufferError = MaxBufferError2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/merge-stream/2.0.0/e7755731ccbfb409bfbce4d8871909d4330f91365aad9aecb163a88f2a9196bb/node_modules/merge-stream/index.js
var require_merge_stream = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/merge-stream/2.0.0/e7755731ccbfb409bfbce4d8871909d4330f91365aad9aecb163a88f2a9196bb/node_modules/merge-stream/index.js"(exports2, module2) {
    "use strict";
    var { PassThrough: PassThrough3 } = __require("stream");
    module2.exports = function() {
      var sources = [];
      var output = new PassThrough3({ objectMode: true });
      output.setMaxListeners(0);
      output.add = add;
      output.isEmpty = isEmpty4;
      output.on("unpipe", remove);
      Array.prototype.slice.call(arguments).forEach(add);
      return output;
      function add(source) {
        if (Array.isArray(source)) {
          source.forEach(add);
          return this;
        }
        sources.push(source);
        source.once("end", remove.bind(null, source));
        source.once("error", output.emit.bind(output, "error"));
        source.pipe(output, { end: false });
        return this;
      }
      function isEmpty4() {
        return sources.length == 0;
      }
      function remove(source) {
        sources = sources.filter(function(it) {
          return it !== source;
        });
        if (!sources.length && output.readable) {
          output.end();
        }
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/5.1.1/62699bd39e784a61ca7e36e367cd0c01479cb83b35e41d0c0cac26ec31616a9b/node_modules/execa/lib/stream.js
var require_stream5 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/5.1.1/62699bd39e784a61ca7e36e367cd0c01479cb83b35e41d0c0cac26ec31616a9b/node_modules/execa/lib/stream.js"(exports2, module2) {
    "use strict";
    var isStream3 = require_is_stream();
    var getStream = require_get_stream();
    var mergeStream = require_merge_stream();
    var handleInput = (spawned, input) => {
      if (input === void 0 || spawned.stdin === void 0) {
        return;
      }
      if (isStream3(input)) {
        input.pipe(spawned.stdin);
      } else {
        spawned.stdin.end(input);
      }
    };
    var makeAllStream2 = (spawned, { all }) => {
      if (!all || !spawned.stdout && !spawned.stderr) {
        return;
      }
      const mixed = mergeStream();
      if (spawned.stdout) {
        mixed.add(spawned.stdout);
      }
      if (spawned.stderr) {
        mixed.add(spawned.stderr);
      }
      return mixed;
    };
    var getBufferedData2 = async (stream2, streamPromise) => {
      if (!stream2) {
        return;
      }
      stream2.destroy();
      try {
        return await streamPromise;
      } catch (error) {
        return error.bufferedData;
      }
    };
    var getStreamPromise = (stream2, { encoding, buffer: buffer3, maxBuffer }) => {
      if (!stream2 || !buffer3) {
        return;
      }
      if (encoding) {
        return getStream(stream2, { encoding, maxBuffer });
      }
      return getStream.buffer(stream2, { maxBuffer });
    };
    var getSpawnedResult = async ({ stdout, stderr, all }, { encoding, buffer: buffer3, maxBuffer }, processDone) => {
      const stdoutPromise = getStreamPromise(stdout, { encoding, buffer: buffer3, maxBuffer });
      const stderrPromise = getStreamPromise(stderr, { encoding, buffer: buffer3, maxBuffer });
      const allPromise = getStreamPromise(all, { encoding, buffer: buffer3, maxBuffer: maxBuffer * 2 });
      try {
        return await Promise.all([processDone, stdoutPromise, stderrPromise, allPromise]);
      } catch (error) {
        return Promise.all([
          { error, signal: error.signal, timedOut: error.timedOut },
          getBufferedData2(stdout, stdoutPromise),
          getBufferedData2(stderr, stderrPromise),
          getBufferedData2(all, allPromise)
        ]);
      }
    };
    var validateInputSync = ({ input }) => {
      if (isStream3(input)) {
        throw new TypeError("The `input` option cannot be a stream in sync mode");
      }
    };
    module2.exports = {
      handleInput,
      makeAllStream: makeAllStream2,
      getSpawnedResult,
      validateInputSync
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/5.1.1/62699bd39e784a61ca7e36e367cd0c01479cb83b35e41d0c0cac26ec31616a9b/node_modules/execa/lib/promise.js
var require_promise2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/5.1.1/62699bd39e784a61ca7e36e367cd0c01479cb83b35e41d0c0cac26ec31616a9b/node_modules/execa/lib/promise.js"(exports2, module2) {
    "use strict";
    var nativePromisePrototype2 = (async () => {
    })().constructor.prototype;
    var descriptors2 = ["then", "catch", "finally"].map((property) => [
      property,
      Reflect.getOwnPropertyDescriptor(nativePromisePrototype2, property)
    ]);
    var mergePromise2 = (spawned, promise2) => {
      for (const [property, descriptor] of descriptors2) {
        const value = typeof promise2 === "function" ? (...args) => Reflect.apply(descriptor.value, promise2(), args) : descriptor.value.bind(promise2);
        Reflect.defineProperty(spawned, property, { ...descriptor, value });
      }
      return spawned;
    };
    var getSpawnedPromise = (spawned) => {
      return new Promise((resolve3, reject3) => {
        spawned.on("exit", (exitCode, signal) => {
          resolve3({ exitCode, signal });
        });
        spawned.on("error", (error) => {
          reject3(error);
        });
        if (spawned.stdin) {
          spawned.stdin.on("error", (error) => {
            reject3(error);
          });
        }
      });
    };
    module2.exports = {
      mergePromise: mergePromise2,
      getSpawnedPromise
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/5.1.1/62699bd39e784a61ca7e36e367cd0c01479cb83b35e41d0c0cac26ec31616a9b/node_modules/execa/lib/command.js
var require_command = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/5.1.1/62699bd39e784a61ca7e36e367cd0c01479cb83b35e41d0c0cac26ec31616a9b/node_modules/execa/lib/command.js"(exports2, module2) {
    "use strict";
    var normalizeArgs = (file, args = []) => {
      if (!Array.isArray(args)) {
        return [file];
      }
      return [file, ...args];
    };
    var NO_ESCAPE_REGEXP2 = /^[\w.-]+$/;
    var DOUBLE_QUOTES_REGEXP = /"/g;
    var escapeArg = (arg) => {
      if (typeof arg !== "string" || NO_ESCAPE_REGEXP2.test(arg)) {
        return arg;
      }
      return `"${arg.replace(DOUBLE_QUOTES_REGEXP, '\\"')}"`;
    };
    var joinCommand2 = (file, args) => {
      return normalizeArgs(file, args).join(" ");
    };
    var getEscapedCommand = (file, args) => {
      return normalizeArgs(file, args).map((arg) => escapeArg(arg)).join(" ");
    };
    var SPACES_REGEXP2 = / +/g;
    var parseCommand2 = (command) => {
      const tokens = [];
      for (const token of command.trim().split(SPACES_REGEXP2)) {
        const previousToken = tokens[tokens.length - 1];
        if (previousToken && previousToken.endsWith("\\")) {
          tokens[tokens.length - 1] = `${previousToken.slice(0, -1)} ${token}`;
        } else {
          tokens.push(token);
        }
      }
      return tokens;
    };
    module2.exports = {
      joinCommand: joinCommand2,
      getEscapedCommand,
      parseCommand: parseCommand2
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/execa/5.1.1/62699bd39e784a61ca7e36e367cd0c01479cb83b35e41d0c0cac26ec31616a9b/node_modules/execa/index.js
var require_execa = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/execa/5.1.1/62699bd39e784a61ca7e36e367cd0c01479cb83b35e41d0c0cac26ec31616a9b/node_modules/execa/index.js"(exports2, module2) {
    "use strict";
    var path218 = __require("path");
    var childProcess = __require("child_process");
    var crossSpawn3 = require_cross_spawn();
    var stripFinalNewline2 = require_strip_final_newline();
    var npmRunPath2 = require_npm_run_path();
    var onetime = require_onetime();
    var makeError2 = require_error2();
    var normalizeStdio = require_stdio();
    var { spawnedKill, spawnedCancel, setupTimeout, validateTimeout: validateTimeout2, setExitHandler } = require_kill();
    var { handleInput, getSpawnedResult, makeAllStream: makeAllStream2, validateInputSync } = require_stream5();
    var { mergePromise: mergePromise2, getSpawnedPromise } = require_promise2();
    var { joinCommand: joinCommand2, parseCommand: parseCommand2, getEscapedCommand } = require_command();
    var DEFAULT_MAX_BUFFER = 1e3 * 1e3 * 100;
    var getEnv2 = ({ env: envOption, extendEnv, preferLocal, localDir, execPath: execPath2 }) => {
      const env3 = extendEnv ? { ...process.env, ...envOption } : envOption;
      if (preferLocal) {
        return npmRunPath2.env({ env: env3, cwd: localDir, execPath: execPath2 });
      }
      return env3;
    };
    var handleArguments = (file, args, options = {}) => {
      const parsed = crossSpawn3._parse(file, args, options);
      file = parsed.command;
      args = parsed.args;
      options = parsed.options;
      options = {
        maxBuffer: DEFAULT_MAX_BUFFER,
        buffer: true,
        stripFinalNewline: true,
        extendEnv: true,
        preferLocal: false,
        localDir: options.cwd || process.cwd(),
        execPath: process.execPath,
        encoding: "utf8",
        reject: true,
        cleanup: true,
        all: false,
        windowsHide: true,
        ...options
      };
      options.env = getEnv2(options);
      options.stdio = normalizeStdio(options);
      if (process.platform === "win32" && path218.basename(file, ".exe") === "cmd") {
        args.unshift("/q");
      }
      return { file, args, options, parsed };
    };
    var handleOutput = (options, value, error) => {
      if (typeof value !== "string" && !Buffer.isBuffer(value)) {
        return error === void 0 ? void 0 : "";
      }
      if (options.stripFinalNewline) {
        return stripFinalNewline2(value);
      }
      return value;
    };
    var execa2 = (file, args, options) => {
      const parsed = handleArguments(file, args, options);
      const command = joinCommand2(file, args);
      const escapedCommand = getEscapedCommand(file, args);
      validateTimeout2(parsed.options);
      let spawned;
      try {
        spawned = childProcess.spawn(parsed.file, parsed.args, parsed.options);
      } catch (error) {
        const dummySpawned = new childProcess.ChildProcess();
        const errorPromise = Promise.reject(makeError2({
          error,
          stdout: "",
          stderr: "",
          all: "",
          command,
          escapedCommand,
          parsed,
          timedOut: false,
          isCanceled: false,
          killed: false
        }));
        return mergePromise2(dummySpawned, errorPromise);
      }
      const spawnedPromise = getSpawnedPromise(spawned);
      const timedPromise = setupTimeout(spawned, parsed.options, spawnedPromise);
      const processDone = setExitHandler(spawned, parsed.options, timedPromise);
      const context = { isCanceled: false };
      spawned.kill = spawnedKill.bind(null, spawned.kill.bind(spawned));
      spawned.cancel = spawnedCancel.bind(null, spawned, context);
      const handlePromise2 = async () => {
        const [{ error, exitCode, signal, timedOut }, stdoutResult, stderrResult, allResult] = await getSpawnedResult(spawned, parsed.options, processDone);
        const stdout = handleOutput(parsed.options, stdoutResult);
        const stderr = handleOutput(parsed.options, stderrResult);
        const all = handleOutput(parsed.options, allResult);
        if (error || exitCode !== 0 || signal !== null) {
          const returnedError = makeError2({
            error,
            exitCode,
            signal,
            stdout,
            stderr,
            all,
            command,
            escapedCommand,
            parsed,
            timedOut,
            isCanceled: context.isCanceled,
            killed: spawned.killed
          });
          if (!parsed.options.reject) {
            return returnedError;
          }
          throw returnedError;
        }
        return {
          command,
          escapedCommand,
          exitCode: 0,
          stdout,
          stderr,
          all,
          failed: false,
          timedOut: false,
          isCanceled: false,
          killed: false
        };
      };
      const handlePromiseOnce = onetime(handlePromise2);
      handleInput(spawned, parsed.options.input);
      spawned.all = makeAllStream2(spawned, parsed.options);
      return mergePromise2(spawned, handlePromiseOnce);
    };
    module2.exports = execa2;
    module2.exports.sync = (file, args, options) => {
      const parsed = handleArguments(file, args, options);
      const command = joinCommand2(file, args);
      const escapedCommand = getEscapedCommand(file, args);
      validateInputSync(parsed.options);
      let result2;
      try {
        result2 = childProcess.spawnSync(parsed.file, parsed.args, parsed.options);
      } catch (error) {
        throw makeError2({
          error,
          stdout: "",
          stderr: "",
          all: "",
          command,
          escapedCommand,
          parsed,
          timedOut: false,
          isCanceled: false,
          killed: false
        });
      }
      const stdout = handleOutput(parsed.options, result2.stdout, result2.error);
      const stderr = handleOutput(parsed.options, result2.stderr, result2.error);
      if (result2.error || result2.status !== 0 || result2.signal !== null) {
        const error = makeError2({
          stdout,
          stderr,
          error: result2.error,
          signal: result2.signal,
          exitCode: result2.status,
          command,
          escapedCommand,
          parsed,
          timedOut: result2.error && result2.error.code === "ETIMEDOUT",
          isCanceled: false,
          killed: result2.signal !== null
        });
        if (!parsed.options.reject) {
          return error;
        }
        throw error;
      }
      return {
        command,
        escapedCommand,
        exitCode: 0,
        stdout,
        stderr,
        failed: false,
        timedOut: false,
        isCanceled: false,
        killed: false
      };
    };
    module2.exports.command = (command, options) => {
      const [file, ...args] = parseCommand2(command);
      return execa2(file, args, options);
    };
    module2.exports.commandSync = (command, options) => {
      const [file, ...args] = parseCommand2(command);
      return execa2.sync(file, args, options);
    };
    module2.exports.node = (scriptPath, args, options = {}) => {
      if (args && !Array.isArray(args) && typeof args === "object") {
        options = args;
        args = [];
      }
      const stdio = normalizeStdio.node(options);
      const defaultExecArgv = process.execArgv.filter((arg) => !arg.startsWith("--inspect"));
      const {
        nodePath = process.execPath,
        nodeOptions = defaultExecArgv
      } = options;
      return execa2(
        nodePath,
        [
          ...nodeOptions,
          scriptPath,
          ...Array.isArray(args) ? args : []
        ],
        {
          ...options,
          stdin: void 0,
          stdout: void 0,
          stderr: void 0,
          stdio,
          shell: false
        }
      );
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/safe-execa/0.1.4/fa3d7b48397c472dbcf0ba513516be9e0e9d7511b95d7ef25b34193cee2ad466/node_modules/safe-execa/lib/index.js
var require_lib26 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/safe-execa/0.1.4/fa3d7b48397c472dbcf0ba513516be9e0e9d7511b95d7ef25b34193cee2ad466/node_modules/safe-execa/lib/index.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.sync = void 0;
    var which_1 = __importDefault2(require_which());
    var execa_1 = __importDefault2(require_execa());
    var path_name_1 = __importDefault2(require_path_name());
    var pathCache2 = /* @__PURE__ */ new Map();
    function sync3(file, args, options) {
      var _a;
      try {
        which_1.default.sync(file, { path: (_a = options === null || options === void 0 ? void 0 : options.cwd) !== null && _a !== void 0 ? _a : process.cwd() });
      } catch (err) {
        if (err.code === "ENOENT") {
          return execa_1.default.sync(file, args, options);
        }
      }
      const fileAbsolutePath = getCommandAbsolutePathSync2(file, options);
      return execa_1.default.sync(fileAbsolutePath, args, options);
    }
    exports2.sync = sync3;
    function getCommandAbsolutePathSync2(file, options) {
      var _a, _b;
      if (file.includes("\\") || file.includes("/"))
        return file;
      const path218 = (_b = (_a = options === null || options === void 0 ? void 0 : options.env) === null || _a === void 0 ? void 0 : _a[path_name_1.default]) !== null && _b !== void 0 ? _b : process.env[path_name_1.default];
      const key = JSON.stringify([path218, file]);
      let fileAbsolutePath = pathCache2.get(key);
      if (fileAbsolutePath == null) {
        fileAbsolutePath = which_1.default.sync(file, { path: path218 });
        pathCache2.set(key, fileAbsolutePath);
      }
      if (fileAbsolutePath == null) {
        throw new Error(`Couldn't find ${file}`);
      }
      return fileAbsolutePath;
    }
    function default_1(file, args, options) {
      var _a;
      try {
        which_1.default.sync(file, { path: (_a = options === null || options === void 0 ? void 0 : options.cwd) !== null && _a !== void 0 ? _a : process.cwd() });
      } catch (err) {
        if (err.code === "ENOENT") {
          return (0, execa_1.default)(file, args, options);
        }
      }
      const fileAbsolutePath = getCommandAbsolutePathSync2(file, options);
      return (0, execa_1.default)(fileAbsolutePath, args, options);
    }
    exports2.default = default_1;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/os.env.path-extender-windows/3.0.0/696b0d57c6776b3db170ac3663c05d422c72752a3c1ed2c795b8f424c835ef72/node_modules/@pnpm/os.env.path-extender-windows/dist/path-extender-windows.js
var require_path_extender_windows = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/os.env.path-extender-windows/3.0.0/696b0d57c6776b3db170ac3663c05d422c72752a3c1ed2c795b8f424c835ef72/node_modules/@pnpm/os.env.path-extender-windows/dist/path-extender-windows.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.addDirToWindowsEnvPath = void 0;
    var error_1 = require_lib17();
    var string_prototype_matchall_1 = __importDefault2(require_string_prototype2());
    var path_1 = __require("path");
    var safe_execa_1 = __importDefault2(require_lib26());
    var BadEnvVariableError = class extends error_1.PnpmError {
      constructor({ envName, wantedValue, currentValue }) {
        super("BAD_ENV_FOUND", `Currently '${envName}' is set to '${wantedValue}'`);
        this.envName = envName;
        this.wantedValue = wantedValue;
        this.currentValue = currentValue;
      }
    };
    var REG_KEY = "HKEY_CURRENT_USER\\Environment";
    async function addDirToWindowsEnvPath(dir, opts2) {
      const chcpResult = await (0, safe_execa_1.default)("chcp");
      const cpMatch = /\d+/.exec(chcpResult.stdout) ?? [];
      if (cpMatch.length === 0) {
        throw new error_1.PnpmError("CHCP", `exec chcp failed: ${chcpResult.stderr}`);
      }
      const cpBak = parseInt(cpMatch[0]);
      if (chcpResult.failed || !(cpBak > 0)) {
        throw new error_1.PnpmError("CHCP", `exec chcp failed: ${cpBak}, ${chcpResult.stderr}`);
      }
      await (0, safe_execa_1.default)("chcp", ["65001"]);
      try {
        const report3 = await _addDirToWindowsEnvPath(dir, opts2);
        await refreshEnvVars();
        return report3;
      } finally {
        await (0, safe_execa_1.default)("chcp", [cpBak.toString()]);
      }
    }
    exports2.addDirToWindowsEnvPath = addDirToWindowsEnvPath;
    async function _addDirToWindowsEnvPath(dir, opts2 = {}) {
      const addedDir = path_1.win32.normalize(dir);
      const registryOutput = await getRegistryOutput();
      const changes = [];
      if (opts2.proxyVarName) {
        changes.push(await updateEnvVariable(registryOutput, opts2.proxyVarName, addedDir, {
          expandableString: false,
          overwrite: opts2.overwriteProxyVar ?? false
        }));
        const pathEntry = opts2.proxyVarSubDir ? `%${opts2.proxyVarName}%${path_1.win32.sep}${opts2.proxyVarSubDir}` : `%${opts2.proxyVarName}%`;
        changes.push(await addToPath(registryOutput, pathEntry, opts2.position));
      } else {
        changes.push(await addToPath(registryOutput, addedDir, opts2.position));
      }
      return changes;
    }
    async function updateEnvVariable(registryOutput, name, value, opts2) {
      const currentValue = await getEnvValueFromRegistry(registryOutput, name);
      if (currentValue && !opts2.overwrite) {
        if (currentValue !== value) {
          throw new BadEnvVariableError({ envName: name, currentValue, wantedValue: value });
        }
        return { variable: name, action: "skipped", oldValue: currentValue, newValue: value };
      } else {
        await setEnvVarInRegistry(name, value, { expandableString: opts2.expandableString });
        return { variable: name, action: "updated", oldValue: currentValue, newValue: value };
      }
    }
    async function addToPath(registryOutput, addedDir, position3 = "start") {
      const variable = "Path";
      const pathData = await getEnvValueFromRegistry(registryOutput, variable);
      if (pathData === void 0 || pathData == null || pathData.trim() === "") {
        throw new error_1.PnpmError("NO_PATH", '"Path" environment variable is not found in the registry');
      } else if (pathData.split(path_1.win32.delimiter).includes(addedDir)) {
        return { action: "skipped", variable, oldValue: pathData, newValue: pathData };
      } else {
        const newPathValue = position3 === "start" ? `${addedDir}${path_1.win32.delimiter}${pathData}` : `${pathData}${path_1.win32.delimiter}${addedDir}`;
        await setEnvVarInRegistry("Path", newPathValue, { expandableString: true });
        return { action: "updated", variable, oldValue: pathData, newValue: newPathValue };
      }
    }
    var EXEC_OPTS = { windowsHide: false };
    async function getRegistryOutput() {
      try {
        const queryResult = await (0, safe_execa_1.default)("reg", ["query", REG_KEY], EXEC_OPTS);
        return queryResult.stdout;
      } catch (err) {
        throw new error_1.PnpmError("REG_READ", "win32 registry environment values could not be retrieved");
      }
    }
    async function getEnvValueFromRegistry(registryOutput, envVarName) {
      const regexp = new RegExp(`^ {4}(?<name>${envVarName}) {4}(?<type>\\w+) {4}(?<data>.*)$`, "gim");
      const match = Array.from((0, string_prototype_matchall_1.default)(registryOutput, regexp))[0];
      return match?.groups.data;
    }
    async function setEnvVarInRegistry(envVarName, envVarValue, opts2) {
      const regType = opts2.expandableString ? "REG_EXPAND_SZ" : "REG_SZ";
      try {
        await (0, safe_execa_1.default)("reg", ["add", REG_KEY, "/v", envVarName, "/t", regType, "/d", envVarValue, "/f"], EXEC_OPTS);
      } catch (err) {
        throw new error_1.PnpmError("FAILED_SET_ENV", `Failed to set "${envVarName}" to "${envVarValue}": ${err.stderr}`);
      }
    }
    async function refreshEnvVars() {
      const TEMP_ENV_VAR = "REFRESH_ENV_VARS";
      await (0, safe_execa_1.default)("setx", [TEMP_ENV_VAR, "1"], EXEC_OPTS);
      await (0, safe_execa_1.default)("reg", ["delete", REG_KEY, "/v", TEMP_ENV_VAR, "/f"], EXEC_OPTS);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/os.env.path-extender-windows/3.0.0/696b0d57c6776b3db170ac3663c05d422c72752a3c1ed2c795b8f424c835ef72/node_modules/@pnpm/os.env.path-extender-windows/dist/index.js
var require_dist9 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/os.env.path-extender-windows/3.0.0/696b0d57c6776b3db170ac3663c05d422c72752a3c1ed2c795b8f424c835ef72/node_modules/@pnpm/os.env.path-extender-windows/dist/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.addDirToWindowsEnvPath = void 0;
    var path_extender_windows_1 = require_path_extender_windows();
    Object.defineProperty(exports2, "addDirToWindowsEnvPath", { enumerable: true, get: function() {
      return path_extender_windows_1.addDirToWindowsEnvPath;
    } });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/os.env.path-extender/3.0.0/1dfa6810f5a522ff090b6cd93d722d29fcd67750bc25a29a2d947739cfddd445/node_modules/@pnpm/os.env.path-extender/dist/path-extender.js
var require_path_extender = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/os.env.path-extender/3.0.0/1dfa6810f5a522ff090b6cd93d722d29fcd67750bc25a29a2d947739cfddd445/node_modules/@pnpm/os.env.path-extender/dist/path-extender.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.renderWindowsReport = exports2.addDirToEnvPath = void 0;
    var error_1 = require_lib17();
    var os_env_path_extender_posix_1 = require_dist8();
    var os_env_path_extender_windows_1 = require_dist9();
    async function addDirToEnvPath2(dir, opts2) {
      if (opts2.proxyVarSubDir) {
        if (opts2.proxyVarSubDir.startsWith("/") || opts2.proxyVarSubDir.startsWith("\\") || opts2.proxyVarSubDir.includes("..") || /[;%"'`$<>&|\n\r]/.test(opts2.proxyVarSubDir)) {
          throw new error_1.PnpmError("INVALID_SUBDIR", `Invalid proxyVarSubDir: "${opts2.proxyVarSubDir}"`);
        }
      }
      if (process.platform === "win32") {
        return renderWindowsReport(await (0, os_env_path_extender_windows_1.addDirToWindowsEnvPath)(dir, {
          position: opts2.position,
          proxyVarName: opts2.proxyVarName,
          proxyVarSubDir: opts2.proxyVarSubDir,
          overwriteProxyVar: opts2.overwrite
        }));
      }
      return (0, os_env_path_extender_posix_1.addDirToPosixEnvPath)(dir, opts2);
    }
    exports2.addDirToEnvPath = addDirToEnvPath2;
    function renderWindowsReport(changedEnvVariables) {
      const oldSettings = [];
      const newSettings = [];
      for (const changedEnvVariable of changedEnvVariables) {
        if (changedEnvVariable.oldValue) {
          oldSettings.push(`${changedEnvVariable.variable}=${changedEnvVariable.oldValue}`);
        }
        if (changedEnvVariable.newValue) {
          newSettings.push(`${changedEnvVariable.variable}=${changedEnvVariable.newValue}`);
        }
      }
      return {
        oldSettings: oldSettings.join("\n"),
        newSettings: newSettings.join("\n")
      };
    }
    exports2.renderWindowsReport = renderWindowsReport;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/os.env.path-extender/3.0.0/1dfa6810f5a522ff090b6cd93d722d29fcd67750bc25a29a2d947739cfddd445/node_modules/@pnpm/os.env.path-extender/dist/index.js
var require_dist10 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/os.env.path-extender/3.0.0/1dfa6810f5a522ff090b6cd93d722d29fcd67750bc25a29a2d947739cfddd445/node_modules/@pnpm/os.env.path-extender/dist/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.addDirToEnvPath = void 0;
    var path_extender_1 = require_path_extender();
    Object.defineProperty(exports2, "addDirToEnvPath", { enumerable: true, get: function() {
      return path_extender_1.addDirToEnvPath;
    } });
  }
});

// ../engine/pm/commands/lib/setup/setup.js
var setup_exports = {};
__export(setup_exports, {
  cliOptionsTypes: () => cliOptionsTypes33,
  commandNames: () => commandNames34,
  handler: () => handler34,
  help: () => help34,
  overridableByScript: () => overridableByScript2,
  rcOptionsTypes: () => rcOptionsTypes34,
  shorthands: () => shorthands11
});
import { spawnSync as spawnSync3 } from "node:child_process";
import fs90 from "node:fs";
import path169 from "node:path";
function help34() {
  return renderHelp({
    description: "Sets up pnpm",
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: "Override the PNPM_HOME env variable in case it already exists",
            name: "--force",
            shortAlias: "-f"
          }
        ]
      }
    ],
    url: docsUrl("setup"),
    usages: ["pnpm setup"]
  });
}
function getExecPath() {
  if (detectIfCurrentPkgIsExecutable()) {
    return process.execPath;
  }
  return process.argv[1] ?? process.cwd();
}
function installCliGlobally(execPath2, pnpmHomeDir) {
  const execDir = path169.dirname(execPath2);
  const execName = path169.basename(execPath2);
  const pkgJsonPath = path169.join(execDir, "package.json");
  let createdPkgJson = false;
  if (!fs90.existsSync(pkgJsonPath)) {
    fs90.writeFileSync(pkgJsonPath, JSON.stringify({
      name: "@pnpm/exe",
      version: packageManager.version,
      bin: { pnpm: execName, pn: execName }
    }));
    createdPkgJson = true;
  }
  logger.info({
    message: `Installing pnpm CLI globally from ${execDir}`,
    prefix: process.cwd()
  });
  try {
    const binDir = path169.join(pnpmHomeDir, "bin");
    const { status, error } = spawnSync3(execPath2, ["add", "-g", `file:${execDir}`], {
      stdio: "inherit",
      env: {
        ...process.env,
        PNPM_HOME: pnpmHomeDir,
        [import_path_name3.default]: `${binDir}${path169.delimiter}${process.env[import_path_name3.default] ?? ""}`
      }
    });
    if (error)
      throw error;
    if (status !== 0) {
      throw new Error(`Failed to install pnpm globally (exit code ${status})`);
    }
  } finally {
    if (createdPkgJson) {
      fs90.unlinkSync(pkgJsonPath);
    }
  }
}
function createAliasScripts(targetDir) {
  fs90.mkdirSync(targetDir, { recursive: true });
  createShellScript(targetDir, "pn", "pnpm");
  createShellScript(targetDir, "pnpx", "pnpm dlx");
  createShellScript(targetDir, "pnx", "pnpm dlx");
}
function createShellScript(targetDir, name, command) {
  const shellScript = `#!/bin/sh
exec ${command} "$@"
`;
  fs90.writeFileSync(path169.join(targetDir, name), shellScript, { mode: 493 });
  if (process.platform === "win32") {
    fs90.writeFileSync(path169.join(targetDir, `${name}.cmd`), `@echo off
${command} %*
`);
    fs90.writeFileSync(path169.join(targetDir, `${name}.ps1`), `${command} @args
`);
  }
}
async function handler34(opts2) {
  const execPath2 = getExecPath();
  const binDir = path169.join(opts2.pnpmHomeDir, "bin");
  if (execPath2.match(/\.[cm]?js$/) == null) {
    installCliGlobally(execPath2, opts2.pnpmHomeDir);
    createAliasScripts(binDir);
  }
  try {
    const report3 = await (0, import_os_env.addDirToEnvPath)(opts2.pnpmHomeDir, {
      configSectionName: "pnpm",
      proxyVarName: "PNPM_HOME",
      proxyVarSubDir: "bin",
      overwrite: opts2.force,
      position: "start"
    });
    return renderSetupOutput(report3);
  } catch (err) {
    switch (err.code) {
      case "ERR_PNPM_BAD_ENV_FOUND":
        err.hint = "If you want to override the existing env variable, use the --force option";
        break;
      case "ERR_PNPM_BAD_SHELL_SECTION":
        err.hint = "If you want to override the existing configuration section, use the --force option";
        break;
    }
    throw err;
  }
}
function renderSetupOutput(report3) {
  if (report3.oldSettings === report3.newSettings) {
    return "No changes to the environment were made. Everything is already up to date.";
  }
  const output = [];
  if (report3.configFile) {
    output.push(reportConfigChange(report3.configFile));
  }
  output.push(`Next configuration changes were made:
${report3.newSettings}`);
  if (report3.configFile == null) {
    output.push("Setup complete. Open a new terminal to start using pnpm.");
  } else if (report3.configFile.changeType !== "skipped") {
    output.push(`To start using pnpm, run:
source ${report3.configFile.path}
`);
  }
  return output.join("\n\n");
}
function reportConfigChange(configReport) {
  switch (configReport.changeType) {
    case "created":
      return `Created ${configReport.path}`;
    case "appended":
      return `Appended new lines to ${configReport.path}`;
    case "modified":
      return `Replaced configuration in ${configReport.path}`;
    case "skipped":
      return `Configuration already up to date in ${configReport.path}`;
  }
}
var import_os_env, import_path_name3, rcOptionsTypes34, cliOptionsTypes33, shorthands11, commandNames34, overridableByScript2;
var init_setup2 = __esm({
  "../engine/pm/commands/lib/setup/setup.js"() {
    "use strict";
    init_lib5();
    init_lib29();
    init_lib3();
    import_os_env = __toESM(require_dist10(), 1);
    import_path_name3 = __toESM(require_path_name(), 1);
    init_lib63();
    rcOptionsTypes34 = () => ({});
    cliOptionsTypes33 = () => ({
      force: Boolean
    });
    shorthands11 = {};
    commandNames34 = ["setup"];
    overridableByScript2 = true;
  }
});

// ../engine/pm/commands/lib/setup/index.js
var init_setup3 = __esm({
  "../engine/pm/commands/lib/setup/index.js"() {
    "use strict";
    init_setup2();
  }
});

// ../shell/path/lib/index.js
import path170 from "node:path";
function prependDirsToPath(prependDirs, env3 = process.env) {
  const prepend = prependDirs.join(path170.delimiter);
  const envPath = env3[import_path_name4.default];
  if (envPath != null && (envPath === prepend || envPath.startsWith(`${prepend}${path170.delimiter}`))) {
    return {
      name: import_path_name4.default,
      value: envPath,
      updated: false
    };
  }
  return {
    name: import_path_name4.default,
    value: [
      prepend,
      ...envPath != null ? [envPath] : []
    ].join(path170.delimiter),
    updated: true
  };
}
var import_path_name4;
var init_lib156 = __esm({
  "../shell/path/lib/index.js"() {
    "use strict";
    import_path_name4 = __toESM(require_path_name(), 1);
  }
});

// ../engine/pm/commands/lib/with/with.js
var with_exports = {};
__export(with_exports, {
  cliOptionsTypes: () => cliOptionsTypes34,
  commandNames: () => commandNames35,
  handler: () => handler35,
  help: () => help35,
  rcOptionsTypes: () => rcOptionsTypes35,
  skipPackageManagerCheck: () => skipPackageManagerCheck3
});
import fs91 from "node:fs";
import path171 from "node:path";
function cliOptionsTypes34() {
  return pick_default([], types2);
}
function help35() {
  return renderHelp({
    description: 'Run pnpm with a specific version (or the currently running one), ignoring the "packageManager" and "devEngines.packageManager" fields of the project manifest.',
    descriptionLists: [],
    url: docsUrl("with"),
    usages: [
      "pnpm with current <pnpm args>",
      "pnpm with <version> <pnpm args>",
      "pnpm with next install",
      "pnpm with 10 install"
    ]
  });
}
async function handler35(opts2, params) {
  if (params.length === 0) {
    throw new PnpmError("MISSING_WITH_SPEC", "Missing version argument. Usage: pnpm with <version|current> <args...>");
  }
  if (isExecutedByCorepack()) {
    throw new PnpmError("CANT_USE_WITH_IN_COREPACK", 'The "pnpm with" command does not work under corepack');
  }
  const [spec, ...args] = params;
  fs91.mkdirSync(opts2.pnpmHomeDir, { recursive: true });
  const store = await createStoreController(opts2);
  let binDir;
  try {
    const envLockfile = await resolvePackageManagerIntegrities(spec, {
      rootDir: opts2.pnpmHomeDir,
      registries: opts2.registries,
      storeController: store.ctrl,
      storeDir: store.dir
    });
    const resolvedVersion = envLockfile.importers["."].packageManagerDependencies?.["pnpm"]?.version;
    if (!resolvedVersion) {
      throw new PnpmError("CANNOT_RESOLVE_PNPM", `Cannot resolve pnpm version for "${spec}"`);
    }
    ;
    ({ binDir } = await installPnpmToStore(resolvedVersion, {
      envLockfile,
      storeController: store.ctrl,
      storeDir: store.dir,
      registries: opts2.registries,
      virtualStoreDirMaxLength: opts2.virtualStoreDirMaxLength,
      packageManager: { name: packageManager.name, version: packageManager.version }
    }));
  } finally {
    await store.ctrl.close();
  }
  const pnpmEnv = prependDirsToPath([binDir]);
  const spawnEnv = {
    ...process.env,
    [pnpmEnv.name]: pnpmEnv.value,
    COREPACK_ROOT: process.env.COREPACK_ROOT ?? "pnpm-with",
    pnpm_config_pm_on_fail: "ignore"
  };
  const pnpmBinPath = path171.join(binDir, "pnpm");
  const { status, signal, error } = import_cross_spawn2.default.sync(pnpmBinPath, args, {
    stdio: "inherit",
    env: spawnEnv
  });
  if (error)
    throw error;
  if (signal) {
    process.kill(process.pid, signal);
    return { exitCode: 1 };
  }
  return { exitCode: status ?? 0 };
}
var import_cross_spawn2, commandNames35, skipPackageManagerCheck3, rcOptionsTypes35;
var init_with = __esm({
  "../engine/pm/commands/lib/with/with.js"() {
    "use strict";
    init_lib5();
    init_lib29();
    init_lib61();
    init_lib2();
    init_lib130();
    init_lib156();
    init_lib90();
    import_cross_spawn2 = __toESM(require_cross_spawn(), 1);
    init_es();
    init_lib63();
    init_installPnpm();
    commandNames35 = ["with"];
    skipPackageManagerCheck3 = true;
    rcOptionsTypes35 = cliOptionsTypes34;
  }
});

// ../engine/pm/commands/lib/with/index.js
var init_with2 = __esm({
  "../engine/pm/commands/lib/with/index.js"() {
    "use strict";
    init_with();
  }
});

// ../engine/pm/commands/lib/index.js
var init_lib157 = __esm({
  "../engine/pm/commands/lib/index.js"() {
    "use strict";
    init_self_updater();
    init_installPnpm();
    init_setup3();
    init_with2();
  }
});

// ../engine/runtime/commands/lib/env/envList.js
async function envList(opts2, params) {
  const nodeVersionList = await listRemoteVersions(opts2, params[0]);
  return nodeVersionList.reverse().join("\n");
}
async function listRemoteVersions(opts2, versionSpec) {
  const fetch2 = createFetchFromRegistry(opts2);
  const { releaseChannel, versionSpecifier } = versionSpec ? parseNodeSpecifier(versionSpec) : { releaseChannel: "release", versionSpecifier: "" };
  const nodeMirrorBaseUrl = getNodeMirror(opts2.nodeDownloadMirrors, releaseChannel);
  return resolveNodeVersions(fetch2, versionSpecifier, nodeMirrorBaseUrl);
}
var init_envList = __esm({
  "../engine/runtime/commands/lib/env/envList.js"() {
    "use strict";
    init_lib34();
    init_lib49();
  }
});

// ../exec/pnpm-cli-runner/lib/index.js
import path172 from "node:path";
function runPnpmCli(command, { cwd, reporter }) {
  const execOpts = {
    cwd,
    stdio: "inherit"
  };
  const cliCommand = reporter ? [...command, `--reporter=${reporter}`] : command;
  const execFileName = path172.basename(process.execPath).toLowerCase();
  if (execFileName === "pnpm" || execFileName === "pnpm.exe") {
    sync(process.execPath, cliCommand, execOpts);
  } else if (path172.basename(process.argv[1]) === "pnpm.mjs") {
    sync(process.execPath, [process.argv[1], ...cliCommand], execOpts);
  } else {
    sync("pnpm", cliCommand, execOpts);
  }
}
var init_lib158 = __esm({
  "../exec/pnpm-cli-runner/lib/index.js"() {
    "use strict";
    init_lib26();
  }
});

// ../engine/runtime/commands/lib/env/envUse.js
async function envUse(opts2, params) {
  globalWarn('"pnpm env use" is deprecated. Use "pnpm runtime set node <version> -g" instead.');
  if (!opts2.global) {
    throw new PnpmError("NOT_IMPLEMENTED_YET", '"pnpm env use <version>" can only be used with the "--global" option currently');
  }
  const version2 = params[0]?.trim();
  if (!version2) {
    throw new PnpmError("MISSING_NODE_VERSION", '"pnpm env use --global <version>" requires a Node.js version to be specified');
  }
  const args = ["add", "--global", `node@runtime:${version2}`];
  if (opts2.bin)
    args.push("--global-bin-dir", opts2.bin);
  if (opts2.storeDir)
    args.push("--store-dir", opts2.storeDir);
  if (opts2.cacheDir)
    args.push("--cache-dir", opts2.cacheDir);
  runPnpmCli(args, { cwd: opts2.pnpmHomeDir });
}
var init_envUse = __esm({
  "../engine/runtime/commands/lib/env/envUse.js"() {
    "use strict";
    init_lib2();
    init_lib158();
    init_lib3();
  }
});

// ../engine/runtime/commands/lib/env/env.js
var env_exports = {};
__export(env_exports, {
  cliOptionsTypes: () => cliOptionsTypes35,
  commandNames: () => commandNames36,
  handler: () => handler36,
  help: () => help36,
  rcOptionsTypes: () => rcOptionsTypes36,
  skipPackageManagerCheck: () => skipPackageManagerCheck4
});
function rcOptionsTypes36() {
  return {};
}
function cliOptionsTypes35() {
  return {
    global: Boolean,
    remote: Boolean
  };
}
function help36() {
  return renderHelp({
    description: "Manage Node.js versions.",
    descriptionLists: [
      {
        title: "Commands",
        list: [
          {
            description: "Installs the specified version of Node.js. The npm CLI bundled with the given Node.js version gets installed as well. This sets this version of Node.js as the current version.",
            name: "use"
          },
          {
            description: "List remote Node.js versions available to install.",
            name: "list",
            shortAlias: "ls"
          }
        ]
      },
      {
        title: "Options",
        list: [
          {
            description: "Manages Node.js versions globally",
            name: "--global",
            shortAlias: "-g"
          }
        ]
      }
    ],
    url: docsUrl("env"),
    usages: [
      "pnpm env use --global 24",
      "pnpm env use --global lts",
      "pnpm env use --global krypton",
      "pnpm env use --global latest",
      "pnpm env use --global rc/24",
      "pnpm env list",
      "pnpm env list 24",
      "pnpm env list lts",
      "pnpm env list krypton",
      "pnpm env list latest",
      "pnpm env list rc/24"
    ]
  });
}
async function handler36(opts2, params) {
  if (params.length === 0) {
    throw new PnpmError("ENV_NO_SUBCOMMAND", "Please specify the subcommand", {
      hint: help36()
    });
  }
  if (opts2.global && !opts2.bin) {
    throw new PnpmError("CANNOT_MANAGE_NODE", "Unable to manage Node.js because pnpm was not installed using the standalone installation script", {
      hint: "If you want to manage Node.js with pnpm, you need to remove any Node.js that was installed by other tools, then install pnpm using one of the standalone scripts that are provided on the installation page: https://pnpm.io/installation"
    });
  }
  switch (params[0]) {
    case "use": {
      await envUse(opts2, params.slice(1));
      return;
    }
    case "list":
    case "ls": {
      return envList(opts2, params.slice(1));
    }
    default: {
      throw new PnpmError("ENV_UNKNOWN_SUBCOMMAND", "This subcommand is not known");
    }
  }
}
var skipPackageManagerCheck4, commandNames36;
var init_env2 = __esm({
  "../engine/runtime/commands/lib/env/env.js"() {
    "use strict";
    init_lib29();
    init_lib2();
    init_lib63();
    init_envList();
    init_envUse();
    skipPackageManagerCheck4 = true;
    commandNames36 = ["env"];
  }
});

// ../engine/runtime/commands/lib/env/index.js
var init_env3 = __esm({
  "../engine/runtime/commands/lib/env/index.js"() {
    "use strict";
    init_env2();
  }
});

// ../engine/runtime/commands/lib/runtime/runtime.js
var runtime_exports = {};
__export(runtime_exports, {
  cliOptionsTypes: () => cliOptionsTypes36,
  commandNames: () => commandNames37,
  handler: () => handler37,
  help: () => help37,
  rcOptionsTypes: () => rcOptionsTypes37,
  skipPackageManagerCheck: () => skipPackageManagerCheck5
});
function rcOptionsTypes37() {
  return {};
}
function cliOptionsTypes36() {
  return {
    global: Boolean
  };
}
function help37() {
  return renderHelp({
    description: "Manage runtimes.",
    descriptionLists: [
      {
        title: "Commands",
        list: [
          {
            description: "Installs the specified version of a runtime (e.g. node, deno, bun).",
            name: "set"
          }
        ]
      },
      {
        title: "Options",
        list: [
          {
            description: "Installs the runtime globally",
            name: "--global",
            shortAlias: "-g"
          }
        ]
      }
    ],
    url: docsUrl("runtime"),
    usages: [
      "pnpm runtime set node 22 -g",
      "pnpm runtime set node lts -g",
      "pnpm runtime set node rc/22 -g",
      "pnpm runtime set deno 2 -g",
      "pnpm runtime set bun latest -g"
    ]
  });
}
async function handler37(opts2, params) {
  if (params.length === 0) {
    throw new PnpmError("RUNTIME_NO_SUBCOMMAND", "Please specify the subcommand", {
      hint: help37()
    });
  }
  switch (params[0]) {
    case "set": {
      runtimeSet(opts2, params.slice(1));
      return;
    }
    default: {
      throw new PnpmError("RUNTIME_UNKNOWN_SUBCOMMAND", `Unknown subcommand: ${params[0]}`, {
        hint: help37()
      });
    }
  }
}
function runtimeSet(opts2, params) {
  const runtimeName = params[0]?.trim();
  if (!runtimeName) {
    throw new PnpmError("MISSING_RUNTIME_NAME", '"pnpm runtime set <name> <version>" requires a runtime name (e.g. node, deno, bun)');
  }
  const versionSpec = params[1]?.trim();
  const args = ["add", `${runtimeName}@runtime:${versionSpec ?? ""}`];
  if (opts2.global) {
    args.push("--global");
    if (opts2.bin)
      args.push("--global-bin-dir", opts2.bin);
  } else {
    args.push("--ignore-workspace-root-check");
  }
  if (opts2.storeDir)
    args.push("--store-dir", opts2.storeDir);
  if (opts2.cacheDir)
    args.push("--cache-dir", opts2.cacheDir);
  runPnpmCli(args, { cwd: opts2.global ? opts2.pnpmHomeDir : opts2.dir });
}
var skipPackageManagerCheck5, commandNames37;
var init_runtime = __esm({
  "../engine/runtime/commands/lib/runtime/runtime.js"() {
    "use strict";
    init_lib29();
    init_lib2();
    init_lib158();
    init_lib63();
    skipPackageManagerCheck5 = true;
    commandNames37 = ["runtime", "rt"];
  }
});

// ../engine/runtime/commands/lib/runtime/index.js
var init_runtime2 = __esm({
  "../engine/runtime/commands/lib/runtime/index.js"() {
    "use strict";
    init_runtime();
  }
});

// ../engine/runtime/commands/lib/index.js
var init_lib159 = __esm({
  "../engine/runtime/commands/lib/index.js"() {
    "use strict";
    init_env3();
    init_runtime2();
  }
});

// ../exec/commands/lib/makeEnv.js
import path173 from "node:path";
function makeEnv2(opts2) {
  for (const prependPath of opts2.prependPaths) {
    if (prependPath.includes(path173.delimiter)) {
      throw new PnpmError("BAD_PATH_DIR", `Cannot add ${prependPath} to PATH because it contains the path delimiter character (${path173.delimiter})`);
    }
  }
  const pathEnv = prependDirsToPath(opts2.prependPaths);
  return {
    ...process.env,
    ...opts2.extraEnv,
    npm_config_user_agent: opts2.userAgent ?? "pnpm",
    [pathEnv.name]: pathEnv.value
  };
}
var init_makeEnv = __esm({
  "../exec/commands/lib/makeEnv.js"() {
    "use strict";
    init_lib2();
    init_lib156();
  }
});

// ../exec/commands/lib/dlx.js
var dlx_exports = {};
__export(dlx_exports, {
  cliOptionsTypes: () => cliOptionsTypes37,
  commandNames: () => commandNames38,
  createCacheKey: () => createCacheKey,
  handler: () => handler38,
  help: () => help38,
  rcOptionsTypes: () => rcOptionsTypes38,
  shorthands: () => shorthands12,
  skipPackageManagerCheck: () => skipPackageManagerCheck6
});
import fs92, {} from "node:fs";
import path174 from "node:path";
import util46 from "node:util";
function rcOptionsTypes38() {
  return {
    ...pick_default([
      "cpu",
      "libc",
      "os"
    ], types2),
    "shell-mode": Boolean
  };
}
function help38() {
  return renderHelp({
    description: "Run a package in a temporary environment.",
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: "The package to install before running the command",
            name: "--package"
          },
          {
            description: "A list of package names that are allowed to run postinstall scripts during installation",
            name: "--allow-build"
          },
          {
            description: "Runs the script inside of a shell. Uses /bin/sh on UNIX and \\cmd.exe on Windows.",
            name: "--shell-mode",
            shortAlias: "-c"
          }
        ]
      },
      OUTPUT_OPTIONS
    ],
    url: docsUrl("dlx"),
    usages: ["pnpm dlx <command> [args...]"]
  });
}
async function handler38(opts2, [command, ...args], commands2) {
  if (!command && (!opts2.package || opts2.package.length === 0)) {
    return { exitCode: 1, output: help38() };
  }
  const pkgs = opts2.package ?? [command];
  const fullMetadata = (opts2.resolutionMode === "time-based" || opts2.trustPolicy === "no-downgrade" || Boolean(opts2.minimumReleaseAge)) && !opts2.registrySupportsTimeField;
  const catalogResolver = resolveFromCatalog.bind(null, opts2.catalogs ?? {});
  const { resolve: baseResolve } = createResolver2({
    ...opts2,
    configByUri: opts2.configByUri,
    fullMetadata,
    filterMetadata: fullMetadata,
    ignoreMissingTimeField: opts2.minimumReleaseAgeIgnoreMissingTime,
    retry: {
      factor: opts2.fetchRetryFactor,
      maxTimeout: opts2.fetchRetryMaxtimeout,
      minTimeout: opts2.fetchRetryMintimeout,
      retries: opts2.fetchRetries
    },
    timeout: opts2.fetchTimeout
  });
  const strictResolution = Boolean(opts2.minimumReleaseAge) && opts2.minimumReleaseAgeStrict === true || opts2.trustPolicy === "no-downgrade";
  const resolve3 = strictResolution ? makeResolutionStrict(baseResolve) : baseResolve;
  const resolvedPkgAliases = [];
  const { publishedBy, publishedByExclude } = getPublishedByPolicy(opts2);
  const resolvedPkgs = await Promise.all(pkgs.map(async (pkg) => {
    const { alias, bareSpecifier } = parseWantedDependency(pkg) || {};
    if (alias == null)
      return pkg;
    const resolvedBareSpecifier = bareSpecifier != null ? resolveCatalogProtocol(catalogResolver, alias, bareSpecifier) : bareSpecifier;
    resolvedPkgAliases.push(alias);
    const resolved = await resolve3({ alias, bareSpecifier: resolvedBareSpecifier }, {
      lockfileDir: opts2.lockfileDir ?? opts2.dir,
      preferredVersions: {},
      projectDir: opts2.dir,
      publishedBy,
      publishedByExclude
    });
    return resolved.id;
  }));
  let { cacheLink, cacheExists, cachedDir } = findCache({
    packages: resolvedPkgs,
    dlxCacheMaxAge: opts2.dlxCacheMaxAge,
    cacheDir: opts2.cacheDir,
    registries: opts2.registries,
    allowBuild: opts2.allowBuild,
    supportedArchitectures: opts2.supportedArchitectures
  });
  if (!cacheExists) {
    const allowBuilds = Object.fromEntries([...resolvedPkgAliases, ...opts2.allowBuild ?? []].map((pkg) => [pkg, true]));
    try {
      fs92.mkdirSync(cachedDir, { recursive: true });
      await add_exports.handler({
        ...opts2,
        // Mirror the global install flow: dlx prompts via `approve-builds`
        // when transitive deps have skipped build scripts, so it must not let
        // strictDepBuilds (the v11 default) turn that into a hard error.
        // Without this, `pnpm dlx <pkg>` cannot launch packages whose bin
        // depends on a postinstall step (e.g. native modules).
        strictDepBuilds: false,
        enableGlobalVirtualStore: opts2.enableGlobalVirtualStore ?? true,
        bin: path174.join(cachedDir, "node_modules/.bin"),
        dir: cachedDir,
        lockfileDir: cachedDir,
        allowBuilds,
        rootProjectManifestDir: cachedDir,
        saveProd: true,
        // dlx will be looking for the package in the "dependencies" field!
        saveDev: false,
        saveOptional: false,
        savePeer: false,
        symlink: true,
        workspaceDir: void 0
      }, resolvedPkgs);
      await promptApproveDlxBuilds({ cachedDir, allowBuilds, inheritedOpts: opts2 }, commands2);
      try {
        await symlinkDir(cachedDir, cacheLink, { overwrite: true });
      } catch (error) {
        if (!util46.types.isNativeError(error) || !("code" in error) || error.code !== "EBUSY" && error.code !== "EEXIST" && error.code !== "EPERM") {
          throw error;
        }
      }
    } catch (err) {
      const completedDir = getValidCacheDir(cacheLink, opts2.dlxCacheMaxAge);
      if (completedDir != null) {
        cachedDir = completedDir;
      } else {
        await fs92.promises.rm(cachedDir, { recursive: true, force: true });
        throw err;
      }
    }
  }
  const binsDir = path174.join(cachedDir, "node_modules/.bin");
  const env3 = makeEnv2({
    userAgent: opts2.userAgent,
    prependPaths: [binsDir, ...opts2.extraBinPaths]
  });
  const binName = opts2.package ? command : await getBinName(cachedDir, opts2);
  try {
    await safeExeca(binName, args, {
      cwd: process.cwd(),
      env: env3,
      stdio: "inherit",
      shell: opts2.shellMode ?? false
    });
  } catch (err) {
    if (util46.types.isNativeError(err) && "exitCode" in err && err.exitCode != null) {
      return {
        exitCode: err.exitCode
      };
    }
    throw err;
  }
  return { exitCode: 0 };
}
async function getPkgName(pkgDir) {
  const manifest = await readPackageJsonFromDir(pkgDir);
  const dependencyNames = Object.keys(manifest.dependencies ?? {});
  if (dependencyNames.length === 0) {
    throw new PnpmError("DLX_NO_DEP", 'dlx was unable to find the installed dependency in "dependencies"');
  }
  return dependencyNames[0];
}
async function getBinName(cachedDir, opts2) {
  const pkgName = await getPkgName(cachedDir);
  const pkgDir = path174.join(cachedDir, "node_modules", pkgName);
  let manifest;
  try {
    manifest = await readProjectManifestOnly2(pkgDir, opts2);
  } catch (err) {
    if (util46.types.isNativeError(err) && "code" in err && err.code === "ERR_PNPM_NO_IMPORTER_MANIFEST_FOUND") {
      return scopeless(pkgName);
    }
    throw err;
  }
  const bins = await getBinsFromPackageManifest(manifest, pkgDir);
  if (bins.length === 0) {
    throw new PnpmError("DLX_NO_BIN", `No binaries found in ${pkgName}`);
  }
  if (bins.length === 1) {
    return bins[0].name;
  }
  const scopelessPkgName = scopeless(manifest.name);
  const defaultBin = bins.find(({ name }) => name === scopelessPkgName);
  if (defaultBin)
    return defaultBin.name;
  const binNames = bins.map(({ name }) => name);
  throw new PnpmError("DLX_MULTIPLE_BINS", `Could not determine executable to run. ${pkgName} has multiple binaries: ${binNames.join(", ")}`, {
    hint: `Try one of the following:
${binNames.map((name) => `pnpm --package=${pkgName} dlx ${name}`).join("\n")}
`
  });
}
function scopeless(pkgName) {
  if (pkgName[0] === "@") {
    return pkgName.split("/")[1];
  }
  return pkgName;
}
async function promptApproveDlxBuilds(opts2, commands2) {
  if (!commands2?.["approve-builds"])
    return;
  const autoApproveForTests = process.env[AUTO_APPROVE_FOR_TESTS_ENV2] === "1";
  if (!autoApproveForTests && !process.stdin.isTTY)
    return;
  const { automaticallyIgnoredBuilds } = await getAutomaticallyIgnoredBuilds({
    dir: opts2.cachedDir,
    lockfileDir: opts2.cachedDir
  });
  if (!automaticallyIgnoredBuilds?.length)
    return;
  await commands2["approve-builds"]({
    ...opts2.inheritedOpts,
    dir: opts2.cachedDir,
    lockfileDir: opts2.cachedDir,
    rootProjectManifestDir: opts2.cachedDir,
    modulesDir: void 0,
    workspaceDir: void 0,
    allProjects: void 0,
    selectedProjectsGraph: void 0,
    workspacePackagePatterns: void 0,
    rootProjectManifest: void 0,
    global: false,
    pending: false,
    allowBuilds: opts2.allowBuilds,
    all: autoApproveForTests ? true : void 0
  }, [], commands2);
}
function findCache(opts2) {
  const dlxCommandCacheDir = createDlxCommandCacheDir(opts2);
  const cacheLink = path174.join(dlxCommandCacheDir, "pkg");
  const cachedDir = getValidCacheDir(cacheLink, opts2.dlxCacheMaxAge);
  return {
    cacheLink,
    cachedDir: cachedDir ?? getPrepareDir(dlxCommandCacheDir),
    cacheExists: cachedDir != null
  };
}
function createDlxCommandCacheDir(opts2) {
  const dlxCacheDir = path174.resolve(opts2.cacheDir, "dlx");
  const cacheKey = createCacheKey(opts2);
  const cachePath = path174.join(dlxCacheDir, cacheKey);
  fs92.mkdirSync(cachePath, { recursive: true });
  return cachePath;
}
function createCacheKey(opts2) {
  const sortedPkgs = [...opts2.packages].sort(import_util20.lexCompare);
  const sortedRegistries = Object.entries(opts2.registries).sort(([k1], [k2]) => (0, import_util20.lexCompare)(k1, k2));
  const args = [sortedPkgs, sortedRegistries];
  if (opts2.allowBuild?.length) {
    args.push({ allowBuild: opts2.allowBuild.sort(import_util20.lexCompare) });
  }
  if (opts2.supportedArchitectures) {
    const supportedArchitecturesKeys = ["cpu", "libc", "os"];
    for (const key of supportedArchitecturesKeys) {
      const value = opts2.supportedArchitectures[key];
      if (!value?.length)
        continue;
      args.push({
        supportedArchitectures: {
          [key]: [...new Set(value)].sort(import_util20.lexCompare)
        }
      });
    }
  }
  const hashStr = JSON.stringify(args);
  return createHexHash(hashStr);
}
function getValidCacheDir(cacheLink, dlxCacheMaxAge) {
  let stats;
  let target2;
  try {
    stats = fs92.lstatSync(cacheLink);
    if (stats.isSymbolicLink()) {
      target2 = fs92.realpathSync(cacheLink);
      if (!target2)
        return void 0;
    } else {
      return void 0;
    }
  } catch (err) {
    if (util46.types.isNativeError(err) && "code" in err && err.code === "ENOENT") {
      return void 0;
    }
    throw err;
  }
  const isValid = stats.mtime.getTime() + dlxCacheMaxAge * 6e4 >= (/* @__PURE__ */ new Date()).getTime();
  return isValid ? target2 : void 0;
}
function getPrepareDir(cachePath) {
  const name = `${(/* @__PURE__ */ new Date()).getTime().toString(16)}-${process.pid.toString(16)}`;
  return path174.join(cachePath, name);
}
function resolveCatalogProtocol(catalogResolver, alias, bareSpecifier) {
  const result2 = catalogResolver({ alias, bareSpecifier });
  switch (result2.type) {
    case "found":
      return result2.resolution.specifier;
    case "unused":
      return bareSpecifier;
    case "misconfiguration":
      throw result2.error;
  }
}
var import_util20, skipPackageManagerCheck6, commandNames38, AUTO_APPROVE_FOR_TESTS_ENV2, shorthands12, cliOptionsTypes37;
var init_dlx = __esm({
  "../exec/commands/lib/dlx.js"() {
    "use strict";
    init_lib40();
    init_lib139();
    init_lib95();
    init_lib92();
    init_lib29();
    init_lib61();
    init_lib23();
    init_lib20();
    init_lib2();
    init_lib57();
    init_lib138();
    init_lib39();
    init_lib96();
    import_util20 = __toESM(require_dist3(), 1);
    init_lib26();
    init_es();
    init_lib63();
    init_dist4();
    init_makeEnv();
    skipPackageManagerCheck6 = true;
    commandNames38 = ["dlx"];
    AUTO_APPROVE_FOR_TESTS_ENV2 = "PNPM_AUTO_APPROVE_BUILDS_FOR_TESTS";
    shorthands12 = {
      c: "--shell-mode"
    };
    cliOptionsTypes37 = () => ({
      ...rcOptionsTypes38(),
      package: [String, Array],
      "allow-build": [String, Array]
    });
  }
});

// ../exec/commands/lib/create.js
var create_exports = {};
__export(create_exports, {
  cliOptionsTypes: () => cliOptionsTypes38,
  commandNames: () => commandNames39,
  handler: () => handler39,
  help: () => help39,
  rcOptionsTypes: () => rcOptionsTypes39
});
async function handler39(_opts, params, commands2) {
  if (params[0] === "--help" || params[0] === "-h") {
    return help39();
  }
  const [packageName, ...packageArgs] = params;
  if (packageName === void 0) {
    throw new PnpmError("MISSING_ARGS", "Missing the template package name.\nThe correct usage is `pnpm create <name>` with <name> substituted for a package name.");
  }
  const createPackageName = convertToCreateName(packageName);
  return handler38(_opts, [createPackageName, ...packageArgs], commands2);
}
function rcOptionsTypes39() {
  return {};
}
function cliOptionsTypes38() {
  return {
    ...rcOptionsTypes39(),
    "allow-build": [String, Array]
  };
}
function help39() {
  return renderHelp({
    description: "Creates a project from a `create-*` starter kit.",
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: "A list of package names that are allowed to run postinstall scripts during installation",
            name: "--allow-build"
          }
        ]
      }
    ],
    url: docsUrl("create"),
    usages: [
      "pnpm create <name>",
      "pnpm create <name-without-create>",
      "pnpm create <@scope>"
    ]
  });
}
function convertToCreateName(packageName) {
  if (packageName[0] === "@") {
    const preferredVersionPosition = packageName.indexOf("@", 1);
    let preferredVersion = "";
    if (preferredVersionPosition > -1) {
      preferredVersion = packageName.substring(preferredVersionPosition);
      packageName = packageName.substring(0, preferredVersionPosition);
    }
    const [scope, scopedPackage = ""] = packageName.split("/");
    if (scopedPackage === "") {
      return `${scope}/create${preferredVersion}`;
    } else {
      return `${scope}/${ensureCreatePrefixed(scopedPackage)}${preferredVersion}`;
    }
  } else {
    return ensureCreatePrefixed(packageName);
  }
}
function ensureCreatePrefixed(packageName) {
  if (packageName.startsWith(CREATE_PREFIX)) {
    return packageName;
  } else {
    return `${CREATE_PREFIX}${packageName}`;
  }
}
var commandNames39, CREATE_PREFIX;
var init_create2 = __esm({
  "../exec/commands/lib/create.js"() {
    "use strict";
    init_lib29();
    init_lib2();
    init_lib63();
    init_dlx();
    commandNames39 = ["create"];
    CREATE_PREFIX = "create-";
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/which/3.0.1/4fd9e3d906a2cdd0e41519cdc727bd23122799ded6f6ffd91efc6236ecd0b5f1/node_modules/@pnpm/which/lib/index.js
var require_lib27 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/which/3.0.1/4fd9e3d906a2cdd0e41519cdc727bd23122799ded6f6ffd91efc6236ecd0b5f1/node_modules/@pnpm/which/lib/index.js"(exports2, module2) {
    var isexe = require_isexe();
    var { join: join3, delimiter, sep: sep2, posix: posix2 } = __require("path");
    var isWindows15 = process.platform === "win32";
    var rSlash = new RegExp(`[${posix2.sep}${sep2 === posix2.sep ? "" : sep2}]`.replace(/(\\)/g, "\\$1"));
    var rRel = new RegExp(`^\\.${rSlash.source}`);
    var getNotFoundError = (cmd) => Object.assign(new Error(`not found: ${cmd}`), { code: "ENOENT" });
    var getPathInfo = (cmd, {
      path: optPath = process.env.PATH,
      pathExt: optPathExt = process.env.PATHEXT,
      delimiter: optDelimiter = delimiter
    }) => {
      const pathEnv = cmd.match(rSlash) ? [""] : (optPath || /* istanbul ignore next: very unusual */
      "").split(optDelimiter);
      if (isWindows15) {
        const pathExtExe = optPathExt || [".EXE", ".CMD", ".BAT", ".COM"].join(optDelimiter);
        const pathExt = pathExtExe.split(optDelimiter).reduce((acc, item) => {
          acc.push(item);
          acc.push(item.toLowerCase());
          return acc;
        }, []);
        if (cmd.includes(".") && pathExt[0] !== "") {
          pathExt.unshift("");
        }
        return { pathEnv, pathExt, pathExtExe };
      }
      return { pathEnv, pathExt: [""] };
    };
    var getPathPart = (raw, cmd) => {
      const pathPart = /^".*"$/.test(raw) ? raw.slice(1, -1) : raw;
      const prefix = !pathPart && rRel.test(cmd) ? cmd.slice(0, 2) : "";
      return prefix + join3(pathPart, cmd);
    };
    var which4 = async (cmd, opt = {}) => {
      const { pathEnv, pathExt, pathExtExe } = getPathInfo(cmd, opt);
      const found = [];
      for (const envPart of pathEnv) {
        const p = getPathPart(envPart, cmd);
        for (const ext of pathExt) {
          const withExt = p + ext;
          const is = await isexe(withExt, { pathExt: pathExtExe, ignoreErrors: true });
          if (is) {
            if (!opt.all) {
              return withExt;
            }
            found.push(withExt);
          }
        }
      }
      if (opt.all && found.length) {
        return found;
      }
      if (opt.nothrow) {
        return null;
      }
      throw getNotFoundError(cmd);
    };
    var whichSync = (cmd, opt = {}) => {
      const { pathEnv, pathExt, pathExtExe } = getPathInfo(cmd, opt);
      const found = [];
      for (const pathEnvPart of pathEnv) {
        const p = getPathPart(pathEnvPart, cmd);
        for (const ext of pathExt) {
          const withExt = p + ext;
          const is = isexe.sync(withExt, { pathExt: pathExtExe, ignoreErrors: true });
          if (is) {
            if (!opt.all) {
              return withExt;
            }
            found.push(withExt);
          }
        }
      }
      if (opt.all && found.length) {
        return found;
      }
      if (opt.nothrow) {
        return null;
      }
      throw getNotFoundError(cmd);
    };
    module2.exports = which4;
    which4.sync = whichSync;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fastest-levenshtein/1.0.16/1a94efea91b7386c22954849b2fc2ef2b19eb064efc7e850d2fd39ccbe7520c6/node_modules/fastest-levenshtein/mod.js
var require_mod = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fastest-levenshtein/1.0.16/1a94efea91b7386c22954849b2fc2ef2b19eb064efc7e850d2fd39ccbe7520c6/node_modules/fastest-levenshtein/mod.js"(exports2) {
    "use strict";
    exports2.__esModule = true;
    exports2.distance = exports2.closest = void 0;
    var peq = new Uint32Array(65536);
    var myers_32 = function(a2, b) {
      var n2 = a2.length;
      var m = b.length;
      var lst = 1 << n2 - 1;
      var pv = -1;
      var mv = 0;
      var sc = n2;
      var i2 = n2;
      while (i2--) {
        peq[a2.charCodeAt(i2)] |= 1 << i2;
      }
      for (i2 = 0; i2 < m; i2++) {
        var eq = peq[b.charCodeAt(i2)];
        var xv = eq | mv;
        eq |= (eq & pv) + pv ^ pv;
        mv |= ~(eq | pv);
        pv &= eq;
        if (mv & lst) {
          sc++;
        }
        if (pv & lst) {
          sc--;
        }
        mv = mv << 1 | 1;
        pv = pv << 1 | ~(xv | mv);
        mv &= xv;
      }
      i2 = n2;
      while (i2--) {
        peq[a2.charCodeAt(i2)] = 0;
      }
      return sc;
    };
    var myers_x = function(b, a2) {
      var n2 = a2.length;
      var m = b.length;
      var mhc = [];
      var phc = [];
      var hsize = Math.ceil(n2 / 32);
      var vsize = Math.ceil(m / 32);
      for (var i2 = 0; i2 < hsize; i2++) {
        phc[i2] = -1;
        mhc[i2] = 0;
      }
      var j2 = 0;
      for (; j2 < vsize - 1; j2++) {
        var mv_1 = 0;
        var pv_1 = -1;
        var start_1 = j2 * 32;
        var vlen_1 = Math.min(32, m) + start_1;
        for (var k2 = start_1; k2 < vlen_1; k2++) {
          peq[b.charCodeAt(k2)] |= 1 << k2;
        }
        for (var i2 = 0; i2 < n2; i2++) {
          var eq = peq[a2.charCodeAt(i2)];
          var pb = phc[i2 / 32 | 0] >>> i2 & 1;
          var mb = mhc[i2 / 32 | 0] >>> i2 & 1;
          var xv = eq | mv_1;
          var xh = ((eq | mb) & pv_1) + pv_1 ^ pv_1 | eq | mb;
          var ph = mv_1 | ~(xh | pv_1);
          var mh = pv_1 & xh;
          if (ph >>> 31 ^ pb) {
            phc[i2 / 32 | 0] ^= 1 << i2;
          }
          if (mh >>> 31 ^ mb) {
            mhc[i2 / 32 | 0] ^= 1 << i2;
          }
          ph = ph << 1 | pb;
          mh = mh << 1 | mb;
          pv_1 = mh | ~(xv | ph);
          mv_1 = ph & xv;
        }
        for (var k2 = start_1; k2 < vlen_1; k2++) {
          peq[b.charCodeAt(k2)] = 0;
        }
      }
      var mv = 0;
      var pv = -1;
      var start = j2 * 32;
      var vlen = Math.min(32, m - start) + start;
      for (var k2 = start; k2 < vlen; k2++) {
        peq[b.charCodeAt(k2)] |= 1 << k2;
      }
      var score = m;
      for (var i2 = 0; i2 < n2; i2++) {
        var eq = peq[a2.charCodeAt(i2)];
        var pb = phc[i2 / 32 | 0] >>> i2 & 1;
        var mb = mhc[i2 / 32 | 0] >>> i2 & 1;
        var xv = eq | mv;
        var xh = ((eq | mb) & pv) + pv ^ pv | eq | mb;
        var ph = mv | ~(xh | pv);
        var mh = pv & xh;
        score += ph >>> m - 1 & 1;
        score -= mh >>> m - 1 & 1;
        if (ph >>> 31 ^ pb) {
          phc[i2 / 32 | 0] ^= 1 << i2;
        }
        if (mh >>> 31 ^ mb) {
          mhc[i2 / 32 | 0] ^= 1 << i2;
        }
        ph = ph << 1 | pb;
        mh = mh << 1 | mb;
        pv = mh | ~(xv | ph);
        mv = ph & xv;
      }
      for (var k2 = start; k2 < vlen; k2++) {
        peq[b.charCodeAt(k2)] = 0;
      }
      return score;
    };
    var distance2 = function(a2, b) {
      if (a2.length < b.length) {
        var tmp = b;
        b = a2;
        a2 = tmp;
      }
      if (b.length === 0) {
        return a2.length;
      }
      if (a2.length <= 32) {
        return myers_32(a2, b);
      }
      return myers_x(a2, b);
    };
    exports2.distance = distance2;
    var closest = function(str2, arr) {
      var min_distance = Infinity;
      var min_index = 0;
      for (var i2 = 0; i2 < arr.length; i2++) {
        var dist = distance2(str2, arr[i2]);
        if (dist < min_distance) {
          min_distance = dist;
          min_index = i2;
        }
      }
      return arr[min_index];
    };
    exports2.closest = closest;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/lodash.deburr/4.1.0/ca2f7301f9c053aa259a3cd44916c60cafd853a7e5b31a0ff10c0e73833b586c/node_modules/lodash.deburr/index.js
var require_lodash4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/lodash.deburr/4.1.0/ca2f7301f9c053aa259a3cd44916c60cafd853a7e5b31a0ff10c0e73833b586c/node_modules/lodash.deburr/index.js"(exports2, module2) {
    var INFINITY = 1 / 0;
    var symbolTag = "[object Symbol]";
    var reLatin = /[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g;
    var rsComboMarksRange = "\\u0300-\\u036f\\ufe20-\\ufe23";
    var rsComboSymbolsRange = "\\u20d0-\\u20f0";
    var rsCombo = "[" + rsComboMarksRange + rsComboSymbolsRange + "]";
    var reComboMark = RegExp(rsCombo, "g");
    var deburredLetters = {
      // Latin-1 Supplement block.
      "\xC0": "A",
      "\xC1": "A",
      "\xC2": "A",
      "\xC3": "A",
      "\xC4": "A",
      "\xC5": "A",
      "\xE0": "a",
      "\xE1": "a",
      "\xE2": "a",
      "\xE3": "a",
      "\xE4": "a",
      "\xE5": "a",
      "\xC7": "C",
      "\xE7": "c",
      "\xD0": "D",
      "\xF0": "d",
      "\xC8": "E",
      "\xC9": "E",
      "\xCA": "E",
      "\xCB": "E",
      "\xE8": "e",
      "\xE9": "e",
      "\xEA": "e",
      "\xEB": "e",
      "\xCC": "I",
      "\xCD": "I",
      "\xCE": "I",
      "\xCF": "I",
      "\xEC": "i",
      "\xED": "i",
      "\xEE": "i",
      "\xEF": "i",
      "\xD1": "N",
      "\xF1": "n",
      "\xD2": "O",
      "\xD3": "O",
      "\xD4": "O",
      "\xD5": "O",
      "\xD6": "O",
      "\xD8": "O",
      "\xF2": "o",
      "\xF3": "o",
      "\xF4": "o",
      "\xF5": "o",
      "\xF6": "o",
      "\xF8": "o",
      "\xD9": "U",
      "\xDA": "U",
      "\xDB": "U",
      "\xDC": "U",
      "\xF9": "u",
      "\xFA": "u",
      "\xFB": "u",
      "\xFC": "u",
      "\xDD": "Y",
      "\xFD": "y",
      "\xFF": "y",
      "\xC6": "Ae",
      "\xE6": "ae",
      "\xDE": "Th",
      "\xFE": "th",
      "\xDF": "ss",
      // Latin Extended-A block.
      "\u0100": "A",
      "\u0102": "A",
      "\u0104": "A",
      "\u0101": "a",
      "\u0103": "a",
      "\u0105": "a",
      "\u0106": "C",
      "\u0108": "C",
      "\u010A": "C",
      "\u010C": "C",
      "\u0107": "c",
      "\u0109": "c",
      "\u010B": "c",
      "\u010D": "c",
      "\u010E": "D",
      "\u0110": "D",
      "\u010F": "d",
      "\u0111": "d",
      "\u0112": "E",
      "\u0114": "E",
      "\u0116": "E",
      "\u0118": "E",
      "\u011A": "E",
      "\u0113": "e",
      "\u0115": "e",
      "\u0117": "e",
      "\u0119": "e",
      "\u011B": "e",
      "\u011C": "G",
      "\u011E": "G",
      "\u0120": "G",
      "\u0122": "G",
      "\u011D": "g",
      "\u011F": "g",
      "\u0121": "g",
      "\u0123": "g",
      "\u0124": "H",
      "\u0126": "H",
      "\u0125": "h",
      "\u0127": "h",
      "\u0128": "I",
      "\u012A": "I",
      "\u012C": "I",
      "\u012E": "I",
      "\u0130": "I",
      "\u0129": "i",
      "\u012B": "i",
      "\u012D": "i",
      "\u012F": "i",
      "\u0131": "i",
      "\u0134": "J",
      "\u0135": "j",
      "\u0136": "K",
      "\u0137": "k",
      "\u0138": "k",
      "\u0139": "L",
      "\u013B": "L",
      "\u013D": "L",
      "\u013F": "L",
      "\u0141": "L",
      "\u013A": "l",
      "\u013C": "l",
      "\u013E": "l",
      "\u0140": "l",
      "\u0142": "l",
      "\u0143": "N",
      "\u0145": "N",
      "\u0147": "N",
      "\u014A": "N",
      "\u0144": "n",
      "\u0146": "n",
      "\u0148": "n",
      "\u014B": "n",
      "\u014C": "O",
      "\u014E": "O",
      "\u0150": "O",
      "\u014D": "o",
      "\u014F": "o",
      "\u0151": "o",
      "\u0154": "R",
      "\u0156": "R",
      "\u0158": "R",
      "\u0155": "r",
      "\u0157": "r",
      "\u0159": "r",
      "\u015A": "S",
      "\u015C": "S",
      "\u015E": "S",
      "\u0160": "S",
      "\u015B": "s",
      "\u015D": "s",
      "\u015F": "s",
      "\u0161": "s",
      "\u0162": "T",
      "\u0164": "T",
      "\u0166": "T",
      "\u0163": "t",
      "\u0165": "t",
      "\u0167": "t",
      "\u0168": "U",
      "\u016A": "U",
      "\u016C": "U",
      "\u016E": "U",
      "\u0170": "U",
      "\u0172": "U",
      "\u0169": "u",
      "\u016B": "u",
      "\u016D": "u",
      "\u016F": "u",
      "\u0171": "u",
      "\u0173": "u",
      "\u0174": "W",
      "\u0175": "w",
      "\u0176": "Y",
      "\u0177": "y",
      "\u0178": "Y",
      "\u0179": "Z",
      "\u017B": "Z",
      "\u017D": "Z",
      "\u017A": "z",
      "\u017C": "z",
      "\u017E": "z",
      "\u0132": "IJ",
      "\u0133": "ij",
      "\u0152": "Oe",
      "\u0153": "oe",
      "\u0149": "'n",
      "\u017F": "ss"
    };
    var freeGlobal = typeof global == "object" && global && global.Object === Object && global;
    var freeSelf = typeof self == "object" && self && self.Object === Object && self;
    var root = freeGlobal || freeSelf || Function("return this")();
    function basePropertyOf(object) {
      return function(key) {
        return object == null ? void 0 : object[key];
      };
    }
    var deburrLetter = basePropertyOf(deburredLetters);
    var objectProto = Object.prototype;
    var objectToString3 = objectProto.toString;
    var Symbol2 = root.Symbol;
    var symbolProto = Symbol2 ? Symbol2.prototype : void 0;
    var symbolToString = symbolProto ? symbolProto.toString : void 0;
    function baseToString(value) {
      if (typeof value == "string") {
        return value;
      }
      if (isSymbol(value)) {
        return symbolToString ? symbolToString.call(value) : "";
      }
      var result2 = value + "";
      return result2 == "0" && 1 / value == -INFINITY ? "-0" : result2;
    }
    function isObjectLike(value) {
      return !!value && typeof value == "object";
    }
    function isSymbol(value) {
      return typeof value == "symbol" || isObjectLike(value) && objectToString3.call(value) == symbolTag;
    }
    function toString4(value) {
      return value == null ? "" : baseToString(value);
    }
    function deburr2(string) {
      string = toString4(string);
      return string && string.replace(reLatin, deburrLetter).replace(reComboMark, "");
    }
    module2.exports = deburr2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/didyoumean2/7.0.4/00bb61a1956dfcbaf3362ec944bfbb0d49a725391078bb4fd3a0a371f176973b/node_modules/didyoumean2/dist/index.mjs
function didYouMean(input, matchList, options) {
  const optionsWithDefaults = fillDefaultOptions(options);
  const {
    returnType,
    threshold,
    thresholdType
  } = optionsWithDefaults;
  const normalizedInput = normalizeString(input, optionsWithDefaults);
  let checkIfMatched;
  let scoreProcessor;
  switch (thresholdType) {
    case ThresholdTypeEnums.EDIT_DISTANCE:
      checkIfMatched = (score) => score <= threshold;
      scoreProcessor = (matchItem) => (0, import_fastest_levenshtein.distance)(normalizedInput, matchItemProcessor(matchItem, optionsWithDefaults));
      break;
    case ThresholdTypeEnums.SIMILARITY:
      checkIfMatched = (score) => score >= threshold;
      scoreProcessor = (matchItem) => getSimilarity(normalizedInput, matchItemProcessor(matchItem, optionsWithDefaults));
      break;
  }
  const matchedIndexes = [];
  switch (returnType) {
    case ReturnTypeEnums.ALL_CLOSEST_MATCHES:
    case ReturnTypeEnums.FIRST_CLOSEST_MATCH: {
      const scores = [];
      let marginValue;
      switch (thresholdType) {
        case ThresholdTypeEnums.EDIT_DISTANCE:
          marginValue = Number.POSITIVE_INFINITY;
          for (const matchItem of matchList) {
            const score = scoreProcessor(matchItem);
            if (marginValue > score) marginValue = score;
            scores.push(score);
          }
          break;
        case ThresholdTypeEnums.SIMILARITY:
          marginValue = 0;
          for (const matchItem of matchList) {
            const score = scoreProcessor(matchItem);
            if (marginValue < score) marginValue = score;
            scores.push(score);
          }
          break;
      }
      for (const [i2, score] of scores.entries()) {
        if (checkIfMatched(score) && score === marginValue) {
          matchedIndexes.push(i2);
        }
      }
      break;
    }
    case ReturnTypeEnums.ALL_MATCHES:
      for (const [i2, matchItem] of matchList.entries()) {
        const score = scoreProcessor(matchItem);
        if (checkIfMatched(score)) {
          matchedIndexes.push(i2);
        }
      }
      break;
    case ReturnTypeEnums.ALL_SORTED_MATCHES: {
      const unsortedResults = [];
      for (const [i2, matchItem] of matchList.entries()) {
        const score = scoreProcessor(matchItem);
        if (checkIfMatched(score)) {
          unsortedResults.push({
            score,
            index: i2
          });
        }
      }
      switch (thresholdType) {
        case ThresholdTypeEnums.EDIT_DISTANCE:
          unsortedResults.sort((a2, b) => a2.score - b.score);
          break;
        case ThresholdTypeEnums.SIMILARITY:
          unsortedResults.sort((a2, b) => b.score - a2.score);
          break;
      }
      for (const unsortedResult of unsortedResults) {
        matchedIndexes.push(unsortedResult.index);
      }
      break;
    }
    case ReturnTypeEnums.FIRST_MATCH:
      for (const [i2, matchItem] of matchList.entries()) {
        const score = scoreProcessor(matchItem);
        if (checkIfMatched(score)) {
          matchedIndexes.push(i2);
          break;
        }
      }
      break;
  }
  return resultProcessor(matchList, matchedIndexes, returnType);
}
var import_fastest_levenshtein, import_lodash7, ReturnTypeEnums, ThresholdTypeEnums, fillDefaultOptions, getSimilarity, normalizeString, getMatchItemStr, matchItemProcessor, resultProcessor;
var init_dist10 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/didyoumean2/7.0.4/00bb61a1956dfcbaf3362ec944bfbb0d49a725391078bb4fd3a0a371f176973b/node_modules/didyoumean2/dist/index.mjs"() {
    import_fastest_levenshtein = __toESM(require_mod(), 1);
    import_lodash7 = __toESM(require_lodash4(), 1);
    ReturnTypeEnums = /* @__PURE__ */ (function(ReturnTypeEnums2) {
      ReturnTypeEnums2["ALL_CLOSEST_MATCHES"] = "all-closest-matches";
      ReturnTypeEnums2["ALL_MATCHES"] = "all-matches";
      ReturnTypeEnums2["ALL_SORTED_MATCHES"] = "all-sorted-matches";
      ReturnTypeEnums2["FIRST_CLOSEST_MATCH"] = "first-closest-match";
      ReturnTypeEnums2["FIRST_MATCH"] = "first-match";
      return ReturnTypeEnums2;
    })({});
    ThresholdTypeEnums = /* @__PURE__ */ (function(ThresholdTypeEnums2) {
      ThresholdTypeEnums2["EDIT_DISTANCE"] = "edit-distance";
      ThresholdTypeEnums2["SIMILARITY"] = "similarity";
      return ThresholdTypeEnums2;
    })({});
    fillDefaultOptions = (options) => {
      const optionsWithDefaultValues = {
        caseSensitive: false,
        deburr: true,
        matchPath: [],
        returnType: ReturnTypeEnums.FIRST_CLOSEST_MATCH,
        thresholdType: ThresholdTypeEnums.SIMILARITY,
        trimSpaces: true,
        ...options
      };
      if (!Object.values(ReturnTypeEnums).includes(optionsWithDefaultValues.returnType)) {
        throw new TypeError("unknown returnType");
      }
      if (!Object.values(ThresholdTypeEnums).includes(optionsWithDefaultValues.thresholdType)) {
        throw new TypeError("unknown thresholdType");
      }
      switch (optionsWithDefaultValues.thresholdType) {
        case ThresholdTypeEnums.EDIT_DISTANCE:
          return {
            threshold: 20,
            ...optionsWithDefaultValues
          };
        case ThresholdTypeEnums.SIMILARITY:
          return {
            threshold: 0.4,
            ...optionsWithDefaultValues
          };
      }
    };
    getSimilarity = (a2, b) => {
      if (!a2 || !b) return 0;
      if (a2 === b) return 1;
      const editDistance = (0, import_fastest_levenshtein.distance)(a2, b);
      const longestLength = Math.max(a2.length, b.length);
      return (longestLength - editDistance) / longestLength;
    };
    normalizeString = (str2, options) => {
      let s = str2;
      if (options.trimSpaces) {
        s = s.trim().replaceAll(/\s+/gu, " ");
      }
      if (options.deburr) {
        s = (0, import_lodash7.default)(s);
      }
      if (!options.caseSensitive) {
        s = s.toLowerCase();
      }
      return s;
    };
    getMatchItemStr = (matchItem, matchPath) => {
      const matchItemStr = matchPath.length > 0 ? matchPath.reduce((acc, prop3) => {
        return acc?.[prop3];
      }, matchItem) : matchItem;
      if (typeof matchItemStr !== "string") return "";
      return matchItemStr;
    };
    matchItemProcessor = (matchItem, options) => {
      const {
        matchPath
      } = options;
      const matchItemStr = getMatchItemStr(matchItem, matchPath);
      return normalizeString(matchItemStr, options);
    };
    resultProcessor = (matchList, matchedIndexes, returnType) => {
      switch (returnType) {
        case ReturnTypeEnums.ALL_CLOSEST_MATCHES:
        case ReturnTypeEnums.ALL_MATCHES:
        case ReturnTypeEnums.ALL_SORTED_MATCHES:
          return matchedIndexes.map((matchedIndex) => matchList[matchedIndex]);
        case ReturnTypeEnums.FIRST_CLOSEST_MATCH:
        case ReturnTypeEnums.FIRST_MATCH: {
          const matchedIndex = matchedIndexes[0];
          if (matchedIndex === void 0) return null;
          return matchList[matchedIndex];
        }
      }
    };
  }
});

// ../exec/commands/lib/buildCommandNotFoundHint.js
import { readdirSync as readdirSync2 } from "node:fs";
import path175 from "node:path";
function getNearestProgram({ dir, modulesDir, programName, workspaceDir }) {
  try {
    const binDir = path175.join(dir, modulesDir, ".bin");
    const programList = readProgramsFromDir(binDir);
    if (workspaceDir && workspaceDir !== dir) {
      const workspaceBinDir = path175.join(workspaceDir, modulesDir, ".bin");
      programList.push(...readProgramsFromDir(workspaceBinDir));
    }
    return getNearest(programName, programList);
  } catch {
    return null;
  }
}
function readProgramsFromDir(binDir) {
  const files = readdirSync2(binDir);
  if (process.platform !== "win32")
    return files;
  const executableExtensions = [".cmd", ".bat", ".ps1", ".exe", ".com"];
  return files.map((fullName) => {
    const { name, ext } = path175.parse(fullName);
    return executableExtensions.includes(ext.toLowerCase()) ? name : fullName;
  });
}
function buildCommandNotFoundHint(scriptName, scripts) {
  let hint = `Command "${scriptName}" not found.`;
  const nearestCommand = getNearestScript(scriptName, scripts);
  if (nearestCommand) {
    hint += ` Did you mean "pnpm run ${nearestCommand}"?`;
  }
  return hint;
}
function getNearestScript(scriptName, scripts) {
  return getNearest(scriptName, Object.keys(scripts ?? []));
}
function getNearest(name, list2) {
  if (list2 == null || list2.length === 0)
    return null;
  return didYouMean(name, list2, {
    returnType: ReturnTypeEnums.FIRST_CLOSEST_MATCH
  });
}
var init_buildCommandNotFoundHint = __esm({
  "../exec/commands/lib/buildCommandNotFoundHint.js"() {
    "use strict";
    init_dist10();
  }
});

// ../exec/commands/lib/existsInDir.js
import fs93 from "node:fs";
import path176 from "node:path";
function existsInDir(entityName, dir) {
  const entityPath = path176.join(dir, entityName);
  if (fs93.existsSync(entityPath))
    return entityPath;
  return void 0;
}
var init_existsInDir = __esm({
  "../exec/commands/lib/existsInDir.js"() {
    "use strict";
  }
});

// ../workspace/injected-deps-syncer/lib/DirPatcher.js
import fs94 from "node:fs";
import path177 from "node:path";
import util47 from "node:util";
function diffDir(oldIndex, newIndex) {
  const oldPaths = Object.keys(oldIndex).sort(comparePaths);
  const newPaths = Object.keys(newIndex).sort(comparePaths);
  const removed = oldPaths.filter((path218) => !(path218 in newIndex)).map((path218) => ({ path: path218, oldValue: oldIndex[path218] }));
  const added = newPaths.filter((path218) => !(path218 in oldIndex)).map((path218) => ({ path: path218, newValue: newIndex[path218] }));
  const modified = oldPaths.filter((path218) => path218 in newIndex && oldIndex[path218] !== newIndex[path218]).map((path218) => ({ path: path218, oldValue: oldIndex[path218], newValue: newIndex[path218] }));
  return { added, removed, modified };
}
async function applyPatch2(optimizedDirPatch, sourceDir, targetDir) {
  async function addRecursive(sourcePath, targetPath, value) {
    if (value === DIR) {
      await fs94.promises.mkdir(targetPath, { recursive: true });
    } else if (typeof value === "number") {
      fs94.mkdirSync(path177.dirname(targetPath), { recursive: true });
      await fs94.promises.link(sourcePath, targetPath);
    } else {
      const _ = value;
    }
  }
  async function removeRecursive(targetPath) {
    try {
      await fs94.promises.rm(targetPath, { recursive: true, force: true });
    } catch (error) {
      if (!util47.types.isNativeError(error) || !("code" in error) || error.code !== "ENOENT") {
        throw error;
      }
    }
  }
  const adding = Promise.all(optimizedDirPatch.added.map(async (item) => {
    const sourcePath = path177.join(sourceDir, item.path);
    const targetPath = path177.join(targetDir, item.path);
    await addRecursive(sourcePath, targetPath, item.newValue);
  }));
  const removing = Promise.all(optimizedDirPatch.removed.map(async (item) => {
    const targetPath = path177.join(targetDir, item.path);
    await removeRecursive(targetPath);
  }));
  const modifying = Promise.all(optimizedDirPatch.modified.map(async (item) => {
    const sourcePath = path177.join(sourceDir, item.path);
    const targetPath = path177.join(targetDir, item.path);
    if (item.oldValue === item.newValue)
      return;
    await removeRecursive(targetPath);
    await addRecursive(sourcePath, targetPath, item.newValue);
  }));
  await Promise.all([adding, removing, modifying]);
}
async function extendFilesMap({ filesMap, filesStats }) {
  const result2 = {
    ".": DIR
  };
  function addInodeAndAncestors(relativePath, value) {
    if (relativePath && relativePath !== "." && !result2[relativePath]) {
      result2[relativePath] = value;
      addInodeAndAncestors(path177.dirname(relativePath), DIR);
    }
  }
  await Promise.all(Array.from(filesMap.entries()).map(async ([relativePath, realPath]) => {
    const stats = filesStats?.[relativePath] ?? await fs94.promises.stat(realPath);
    if (stats.isFile()) {
      addInodeAndAncestors(relativePath, stats.ino);
    } else if (stats.isDirectory()) {
      addInodeAndAncestors(relativePath, DIR);
    } else {
      throw new PnpmError("UNSUPPORTED_INODE_TYPE", `Filesystem inode at ${realPath} is neither a file, a directory, or a symbolic link`);
    }
  }));
  return result2;
}
var DIR, comparePaths, DirPatcher;
var init_DirPatcher = __esm({
  "../workspace/injected-deps-syncer/lib/DirPatcher.js"() {
    "use strict";
    init_lib2();
    init_lib38();
    DIR = /* @__PURE__ */ Symbol("Path is a directory");
    comparePaths = (a2, b) => a2.split(/\\|\//).length - b.split(/\\|\//).length || a2.localeCompare(b);
    DirPatcher = class {
      sourceDir;
      targetDir;
      patch;
      constructor(patch, sourceDir, targetDir) {
        this.patch = patch;
        this.sourceDir = sourceDir;
        this.targetDir = targetDir;
      }
      static async fromMultipleTargets(sourceDir, targetDirs) {
        const fetchOptions = {
          resolveSymlinks: false
        };
        async function loadMap(dir) {
          const fetchResult = await fetchFromDir(dir, fetchOptions);
          return [await extendFilesMap(fetchResult), dir];
        }
        const [[sourceMap], targetPairs] = await Promise.all([
          loadMap(sourceDir),
          Promise.all(targetDirs.map(loadMap))
        ]);
        return targetPairs.map(([targetMap, targetDir]) => {
          const diff = diffDir(targetMap, sourceMap);
          diff.removed.reverse();
          return new this(diff, sourceDir, targetDir);
        });
      }
      async apply() {
        await applyPatch2(this.patch, this.sourceDir, this.targetDir);
      }
    };
  }
});

// ../workspace/injected-deps-syncer/lib/index.js
import path178 from "node:path";
async function syncInjectedDeps(opts2) {
  if (!opts2.pkgName) {
    logger5.debug({
      reason: "no-name",
      message: `Skipping sync of ${opts2.pkgRootDir} as an injected dependency because, without a name, it cannot be a dependency`,
      opts: opts2
    });
    return;
  }
  if (!opts2.workspaceDir) {
    throw new PnpmError("NO_WORKSPACE_DIR", "Cannot update injected dependencies without workspace dir");
  }
  const pkgRootDir = path178.resolve(opts2.workspaceDir, opts2.pkgRootDir);
  const modulesDir = path178.resolve(opts2.workspaceDir, "node_modules");
  const modules = await readModulesManifest(modulesDir);
  if (!modules?.injectedDeps) {
    logger5.debug({
      reason: "no-injected-deps",
      message: "Skipping sync of injected dependencies because none were detected",
      opts: opts2
    });
    return;
  }
  const injectedDepKey = (0, import_normalize_path12.default)(path178.relative(opts2.workspaceDir, pkgRootDir), true);
  const targetDirs = modules.injectedDeps[injectedDepKey];
  if (!targetDirs || targetDirs.length === 0) {
    logger5.debug({
      reason: "no-injected-deps",
      message: `There are no injected dependencies from ${opts2.pkgRootDir}`,
      opts: opts2
    });
    return;
  }
  const patchers = await DirPatcher.fromMultipleTargets(pkgRootDir, targetDirs.map((targetDir) => path178.resolve(opts2.workspaceDir, targetDir)));
  await Promise.all(patchers.map((patcher) => patcher.apply()));
  await syncBinLinks(pkgRootDir, targetDirs, opts2.workspaceDir);
}
async function syncBinLinks(pkgRootDir, targetDirs, workspaceDir) {
  const manifest = await safeReadPackageJsonFromDir(pkgRootDir);
  if (!manifest?.bin || !manifest?.name) {
    return;
  }
  const binLinkPromises = targetDirs.map(async (targetDir) => {
    const resolvedTargetDir = path178.resolve(workspaceDir, targetDir);
    const parentNodeModulesDir = path178.dirname(resolvedTargetDir);
    const binDir = path178.join(parentNodeModulesDir, ".bin");
    await linkBinsOfPackages([{
      manifest,
      location: resolvedTargetDir
    }], binDir, {});
  });
  const allProjects = await findWorkspaceProjectsNoCheck(workspaceDir, {});
  const consumerLinkPromises = allProjects.map(async (project) => {
    const projectNodeModules = path178.join(project.rootDir, "node_modules");
    const projectBinDir = path178.join(projectNodeModules, ".bin");
    await linkBins(projectNodeModules, projectBinDir, {
      allowExoticManifests: true,
      projectManifest: project.manifest,
      warn: (msg) => {
        console.warn(`[linkBins warning] ${msg}`);
      }
    });
  });
  await Promise.all([...binLinkPromises, ...consumerLinkPromises]);
}
var import_normalize_path12, logger5;
var init_lib160 = __esm({
  "../workspace/injected-deps-syncer/lib/index.js"() {
    "use strict";
    init_lib42();
    init_lib2();
    init_lib75();
    init_lib3();
    init_lib39();
    init_lib30();
    import_normalize_path12 = __toESM(require_normalize_path(), 1);
    init_DirPatcher();
    logger5 = logger("skip-sync-injected-deps");
  }
});

// ../exec/commands/lib/hiddenScripts.js
function throwOrFilterHiddenScripts(specifiedScripts, scriptName) {
  if (specifiedScripts.length === 0)
    return specifiedScripts;
  const hidden2 = specifiedScripts.filter((s) => s.startsWith("."));
  if (hidden2.length === 0)
    return specifiedScripts;
  if (scriptName.startsWith(".")) {
    throw new PnpmError("HIDDEN_SCRIPT", `Script "${scriptName}" is hidden and cannot be run directly`, {
      hint: 'Scripts starting with "." are hidden and can only be called from other scripts.'
    });
  }
  const visible = specifiedScripts.filter((s) => !s.startsWith("."));
  if (visible.length > 0)
    return visible;
  throw new PnpmError("HIDDEN_SCRIPT", `All matched scripts are hidden and cannot be run directly: ${hidden2.join(", ")}`, {
    hint: 'Scripts starting with "." are hidden and can only be called from other scripts.'
  });
}
var init_hiddenScripts = __esm({
  "../exec/commands/lib/hiddenScripts.js"() {
    "use strict";
    init_lib2();
  }
});

// ../exec/commands/lib/runDepsStatusCheck.js
async function runDepsStatusCheck(opts2) {
  const ignoredWorkspaceStateSettings = ["dev", "optional", "production"];
  opts2.ignoredWorkspaceStateSettings = ignoredWorkspaceStateSettings;
  const { upToDate, issue, workspaceState } = await checkDepsStatus(opts2);
  if (upToDate)
    return;
  const command = ["install", ...createInstallArgs(workspaceState?.settings)];
  const install2 = runPnpmCli.bind(null, command, { cwd: opts2.dir, reporter: opts2.reporter });
  switch (opts2.verifyDepsBeforeRun) {
    case "install":
      install2();
      break;
    case "prompt": {
      if (!process.stdin.isTTY) {
        throw new PnpmError("VERIFY_DEPS_BEFORE_RUN", issue ?? "Your node_modules are out of sync with your lockfile", {
          hint: 'Run "pnpm install" before running scripts. The "verifyDepsBeforeRun: prompt" setting cannot prompt for confirmation in non-interactive environments.'
        });
      }
      let confirmed;
      try {
        confirmed = await import_enquirer7.default.prompt({
          type: "confirm",
          name: "runInstall",
          message: `Your "node_modules" directory is out of sync with the "pnpm-lock.yaml" file. This can lead to issues during scripts execution.

Would you like to run "pnpm ${command.join(" ")}" to update your "node_modules"?`,
          initial: true
        });
      } catch {
        process.exit(1);
      }
      if (confirmed.runInstall) {
        install2();
      }
      break;
    }
    case "error":
      throw new PnpmError("VERIFY_DEPS_BEFORE_RUN", issue ?? "Your node_modules are out of sync with your lockfile", {
        hint: 'Run "pnpm install"'
      });
    case "warn":
      globalWarn(`Your node_modules are out of sync with your lockfile. ${issue}`);
      break;
  }
}
function createInstallArgs(opts2) {
  const args = [];
  if (!opts2)
    return args;
  const { dev, optional, production } = opts2;
  if (production && !dev) {
    args.push("--production");
  } else if (dev && !production) {
    args.push("--dev");
  }
  if (!optional) {
    args.push("--no-optional");
  }
  return args;
}
var import_enquirer7;
var init_runDepsStatusCheck = __esm({
  "../exec/commands/lib/runDepsStatusCheck.js"() {
    "use strict";
    init_lib132();
    init_lib2();
    init_lib158();
    init_lib3();
    import_enquirer7 = __toESM(require_enquirer(), 1);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/ci-info/3.9.0/97768b0390b3e5872d2e24d63fe9cc36a3ff993b5d18f29c8b61a53bfe70d148/node_modules/ci-info/vendors.json
var require_vendors2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/ci-info/3.9.0/97768b0390b3e5872d2e24d63fe9cc36a3ff993b5d18f29c8b61a53bfe70d148/node_modules/ci-info/vendors.json"(exports2, module2) {
    module2.exports = [
      {
        name: "Appcircle",
        constant: "APPCIRCLE",
        env: "AC_APPCIRCLE"
      },
      {
        name: "AppVeyor",
        constant: "APPVEYOR",
        env: "APPVEYOR",
        pr: "APPVEYOR_PULL_REQUEST_NUMBER"
      },
      {
        name: "AWS CodeBuild",
        constant: "CODEBUILD",
        env: "CODEBUILD_BUILD_ARN"
      },
      {
        name: "Azure Pipelines",
        constant: "AZURE_PIPELINES",
        env: "TF_BUILD",
        pr: {
          BUILD_REASON: "PullRequest"
        }
      },
      {
        name: "Bamboo",
        constant: "BAMBOO",
        env: "bamboo_planKey"
      },
      {
        name: "Bitbucket Pipelines",
        constant: "BITBUCKET",
        env: "BITBUCKET_COMMIT",
        pr: "BITBUCKET_PR_ID"
      },
      {
        name: "Bitrise",
        constant: "BITRISE",
        env: "BITRISE_IO",
        pr: "BITRISE_PULL_REQUEST"
      },
      {
        name: "Buddy",
        constant: "BUDDY",
        env: "BUDDY_WORKSPACE_ID",
        pr: "BUDDY_EXECUTION_PULL_REQUEST_ID"
      },
      {
        name: "Buildkite",
        constant: "BUILDKITE",
        env: "BUILDKITE",
        pr: {
          env: "BUILDKITE_PULL_REQUEST",
          ne: "false"
        }
      },
      {
        name: "CircleCI",
        constant: "CIRCLE",
        env: "CIRCLECI",
        pr: "CIRCLE_PULL_REQUEST"
      },
      {
        name: "Cirrus CI",
        constant: "CIRRUS",
        env: "CIRRUS_CI",
        pr: "CIRRUS_PR"
      },
      {
        name: "Codefresh",
        constant: "CODEFRESH",
        env: "CF_BUILD_ID",
        pr: {
          any: [
            "CF_PULL_REQUEST_NUMBER",
            "CF_PULL_REQUEST_ID"
          ]
        }
      },
      {
        name: "Codemagic",
        constant: "CODEMAGIC",
        env: "CM_BUILD_ID",
        pr: "CM_PULL_REQUEST"
      },
      {
        name: "Codeship",
        constant: "CODESHIP",
        env: {
          CI_NAME: "codeship"
        }
      },
      {
        name: "Drone",
        constant: "DRONE",
        env: "DRONE",
        pr: {
          DRONE_BUILD_EVENT: "pull_request"
        }
      },
      {
        name: "dsari",
        constant: "DSARI",
        env: "DSARI"
      },
      {
        name: "Expo Application Services",
        constant: "EAS",
        env: "EAS_BUILD"
      },
      {
        name: "Gerrit",
        constant: "GERRIT",
        env: "GERRIT_PROJECT"
      },
      {
        name: "GitHub Actions",
        constant: "GITHUB_ACTIONS",
        env: "GITHUB_ACTIONS",
        pr: {
          GITHUB_EVENT_NAME: "pull_request"
        }
      },
      {
        name: "GitLab CI",
        constant: "GITLAB",
        env: "GITLAB_CI",
        pr: "CI_MERGE_REQUEST_ID"
      },
      {
        name: "GoCD",
        constant: "GOCD",
        env: "GO_PIPELINE_LABEL"
      },
      {
        name: "Google Cloud Build",
        constant: "GOOGLE_CLOUD_BUILD",
        env: "BUILDER_OUTPUT"
      },
      {
        name: "Harness CI",
        constant: "HARNESS",
        env: "HARNESS_BUILD_ID"
      },
      {
        name: "Heroku",
        constant: "HEROKU",
        env: {
          env: "NODE",
          includes: "/app/.heroku/node/bin/node"
        }
      },
      {
        name: "Hudson",
        constant: "HUDSON",
        env: "HUDSON_URL"
      },
      {
        name: "Jenkins",
        constant: "JENKINS",
        env: [
          "JENKINS_URL",
          "BUILD_ID"
        ],
        pr: {
          any: [
            "ghprbPullId",
            "CHANGE_ID"
          ]
        }
      },
      {
        name: "LayerCI",
        constant: "LAYERCI",
        env: "LAYERCI",
        pr: "LAYERCI_PULL_REQUEST"
      },
      {
        name: "Magnum CI",
        constant: "MAGNUM",
        env: "MAGNUM"
      },
      {
        name: "Netlify CI",
        constant: "NETLIFY",
        env: "NETLIFY",
        pr: {
          env: "PULL_REQUEST",
          ne: "false"
        }
      },
      {
        name: "Nevercode",
        constant: "NEVERCODE",
        env: "NEVERCODE",
        pr: {
          env: "NEVERCODE_PULL_REQUEST",
          ne: "false"
        }
      },
      {
        name: "ReleaseHub",
        constant: "RELEASEHUB",
        env: "RELEASE_BUILD_ID"
      },
      {
        name: "Render",
        constant: "RENDER",
        env: "RENDER",
        pr: {
          IS_PULL_REQUEST: "true"
        }
      },
      {
        name: "Sail CI",
        constant: "SAIL",
        env: "SAILCI",
        pr: "SAIL_PULL_REQUEST_NUMBER"
      },
      {
        name: "Screwdriver",
        constant: "SCREWDRIVER",
        env: "SCREWDRIVER",
        pr: {
          env: "SD_PULL_REQUEST",
          ne: "false"
        }
      },
      {
        name: "Semaphore",
        constant: "SEMAPHORE",
        env: "SEMAPHORE",
        pr: "PULL_REQUEST_NUMBER"
      },
      {
        name: "Shippable",
        constant: "SHIPPABLE",
        env: "SHIPPABLE",
        pr: {
          IS_PULL_REQUEST: "true"
        }
      },
      {
        name: "Solano CI",
        constant: "SOLANO",
        env: "TDDIUM",
        pr: "TDDIUM_PR_ID"
      },
      {
        name: "Sourcehut",
        constant: "SOURCEHUT",
        env: {
          CI_NAME: "sourcehut"
        }
      },
      {
        name: "Strider CD",
        constant: "STRIDER",
        env: "STRIDER"
      },
      {
        name: "TaskCluster",
        constant: "TASKCLUSTER",
        env: [
          "TASK_ID",
          "RUN_ID"
        ]
      },
      {
        name: "TeamCity",
        constant: "TEAMCITY",
        env: "TEAMCITY_VERSION"
      },
      {
        name: "Travis CI",
        constant: "TRAVIS",
        env: "TRAVIS",
        pr: {
          env: "TRAVIS_PULL_REQUEST",
          ne: "false"
        }
      },
      {
        name: "Vercel",
        constant: "VERCEL",
        env: {
          any: [
            "NOW_BUILDER",
            "VERCEL"
          ]
        },
        pr: "VERCEL_GIT_PULL_REQUEST_ID"
      },
      {
        name: "Visual Studio App Center",
        constant: "APPCENTER",
        env: "APPCENTER_BUILD_ID"
      },
      {
        name: "Woodpecker",
        constant: "WOODPECKER",
        env: {
          CI: "woodpecker"
        },
        pr: {
          CI_BUILD_EVENT: "pull_request"
        }
      },
      {
        name: "Xcode Cloud",
        constant: "XCODE_CLOUD",
        env: "CI_XCODE_PROJECT",
        pr: "CI_PULL_REQUEST_NUMBER"
      },
      {
        name: "Xcode Server",
        constant: "XCODE_SERVER",
        env: "XCS"
      }
    ];
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/ci-info/3.9.0/97768b0390b3e5872d2e24d63fe9cc36a3ff993b5d18f29c8b61a53bfe70d148/node_modules/ci-info/index.js
var require_ci_info2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/ci-info/3.9.0/97768b0390b3e5872d2e24d63fe9cc36a3ff993b5d18f29c8b61a53bfe70d148/node_modules/ci-info/index.js"(exports2) {
    "use strict";
    var vendors = require_vendors2();
    var env3 = process.env;
    Object.defineProperty(exports2, "_vendors", {
      value: vendors.map(function(v) {
        return v.constant;
      })
    });
    exports2.name = null;
    exports2.isPR = null;
    vendors.forEach(function(vendor) {
      const envs = Array.isArray(vendor.env) ? vendor.env : [vendor.env];
      const isCI3 = envs.every(function(obj) {
        return checkEnv(obj);
      });
      exports2[vendor.constant] = isCI3;
      if (!isCI3) {
        return;
      }
      exports2.name = vendor.name;
      switch (typeof vendor.pr) {
        case "string":
          exports2.isPR = !!env3[vendor.pr];
          break;
        case "object":
          if ("env" in vendor.pr) {
            exports2.isPR = vendor.pr.env in env3 && env3[vendor.pr.env] !== vendor.pr.ne;
          } else if ("any" in vendor.pr) {
            exports2.isPR = vendor.pr.any.some(function(key) {
              return !!env3[key];
            });
          } else {
            exports2.isPR = checkEnv(vendor.pr);
          }
          break;
        default:
          exports2.isPR = null;
      }
    });
    exports2.isCI = !!(env3.CI !== "false" && // Bypass all checks if CI env is explicitly set to 'false'
    (env3.BUILD_ID || // Jenkins, Cloudbees
    env3.BUILD_NUMBER || // Jenkins, TeamCity
    env3.CI || // Travis CI, CircleCI, Cirrus CI, Gitlab CI, Appveyor, CodeShip, dsari
    env3.CI_APP_ID || // Appflow
    env3.CI_BUILD_ID || // Appflow
    env3.CI_BUILD_NUMBER || // Appflow
    env3.CI_NAME || // Codeship and others
    env3.CONTINUOUS_INTEGRATION || // Travis CI, Cirrus CI
    env3.RUN_ID || // TaskCluster, dsari
    exports2.name || false));
    function checkEnv(obj) {
      if (typeof obj === "string") return !!env3[obj];
      if ("env" in obj) {
        return env3[obj.env] && env3[obj.env].includes(obj.includes);
      }
      if ("any" in obj) {
        return obj.any.some(function(k2) {
          return !!env3[k2];
        });
      }
      return Object.keys(obj).every(function(k2) {
        return env3[k2] === obj[k2];
      });
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/log.group/3.0.2/98a2ba440af6d14691e2f19cce3a342256e034e6bf645cf75cbab405292c0f63/node_modules/@pnpm/log.group/dist/group.js
var require_group = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/log.group/3.0.2/98a2ba440af6d14691e2f19cce3a342256e034e6bf645cf75cbab405292c0f63/node_modules/@pnpm/log.group/dist/group.js"(exports2) {
    "use strict";
    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      var desc = Object.getOwnPropertyDescriptor(m, k2);
      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
        desc = { enumerable: true, get: function() {
          return m[k2];
        } };
      }
      Object.defineProperty(o2, k22, desc);
    }) : (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      o2[k22] = m[k2];
    }));
    var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o2, v) {
      Object.defineProperty(o2, "default", { enumerable: true, value: v });
    }) : function(o2, v) {
      o2["default"] = v;
    });
    var __importStar2 = exports2 && exports2.__importStar || function(mod) {
      if (mod && mod.__esModule) return mod;
      var result2 = {};
      if (mod != null) {
        for (var k2 in mod) if (k2 !== "default" && Object.prototype.hasOwnProperty.call(mod, k2)) __createBinding2(result2, mod, k2);
      }
      __setModuleDefault2(result2, mod);
      return result2;
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.groupStart = void 0;
    var ci_info_1 = __importStar2(require_ci_info2());
    var id = 0;
    function groupStart2(groupName) {
      if (!ci_info_1.isCI)
        return void 0;
      const labels = getLabels(groupName);
      if (labels) {
        process.stdout.write(labels.start);
        return () => {
          process.stdout.write(labels.end);
        };
      }
      return void 0;
    }
    exports2.groupStart = groupStart2;
    function getLabels(groupName) {
      if (ci_info_1.default.GITHUB_ACTIONS) {
        return {
          start: `::group::${groupName}\r
`,
          end: "::endgroup::\r\n"
        };
      } else if (ci_info_1.default.GITLAB) {
        id++;
        return {
          start: `section_start:${Math.floor(Date.now() / 1e3)}:${id}\\r\\e[0K${groupName}\r
`,
          end: `section_end:${Math.floor(Date.now() / 1e3)}:${id}\\r\\e[0K`
        };
      } else if (ci_info_1.default.TRAVIS) {
        return {
          start: `travis_fold:start:${groupName}\r
`,
          end: `travis_fold:end:${groupName}\r
`
        };
      } else if (ci_info_1.default.AZURE_PIPELINES) {
        return {
          start: `##[group]${groupName}\r
`,
          end: "##[endgroup]\r\n"
        };
      } else if (ci_info_1.default.BUILDKITE) {
        return {
          start: `--- ${groupName}\r
`,
          end: "\r\n"
        };
      }
      return null;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@pnpm/log.group/3.0.2/98a2ba440af6d14691e2f19cce3a342256e034e6bf645cf75cbab405292c0f63/node_modules/@pnpm/log.group/dist/index.js
var require_dist11 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@pnpm/log.group/3.0.2/98a2ba440af6d14691e2f19cce3a342256e034e6bf645cf75cbab405292c0f63/node_modules/@pnpm/log.group/dist/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.groupStart = void 0;
    var group_1 = require_group();
    Object.defineProperty(exports2, "groupStart", { enumerable: true, get: function() {
      return group_1.groupStart;
    } });
  }
});

// ../exec/commands/lib/regexpCommand.js
function tryBuildRegExpFromCommand(command) {
  const regExpDetectRegExpScriptCommand = /^\/((?:\\\/|[^/])+)\/([dgimuvys]*)$/;
  const match = command.match(regExpDetectRegExpScriptCommand);
  if (!match) {
    return null;
  }
  if (match[2]) {
    throw new PnpmError("UNSUPPORTED_SCRIPT_COMMAND_FORMAT", "RegExp flags are not supported in script command selector");
  }
  try {
    return new RegExp(match[1]);
  } catch {
    return null;
  }
}
var init_regexpCommand = __esm({
  "../exec/commands/lib/regexpCommand.js"() {
    "use strict";
    init_lib2();
  }
});

// ../exec/commands/lib/runRecursive.js
import assert12 from "node:assert";
import path179 from "node:path";
import util48 from "node:util";
async function runRecursive(params, opts2) {
  const [scriptName, ...passedThruArgs] = params;
  if (!scriptName) {
    throw new PnpmError("SCRIPT_NAME_IS_REQUIRED", "You must specify the script you want to run");
  }
  let hasCommand = 0;
  const sortedPackageChunks = opts2.sort ? sortProjects(opts2.selectedProjectsGraph) : [Object.keys(opts2.selectedProjectsGraph).sort()];
  let packageChunks = opts2.reverse ? sortedPackageChunks.reverse() : sortedPackageChunks;
  if (opts2.resumeFrom) {
    packageChunks = getResumedPackageChunks({
      resumeFrom: opts2.resumeFrom,
      chunks: packageChunks,
      selectedProjectsGraph: opts2.selectedProjectsGraph
    });
  }
  const limitRun = pLimit(getWorkspaceConcurrency(opts2.workspaceConcurrency));
  const stdio = !opts2.stream && (opts2.workspaceConcurrency === 1 || packageChunks.length === 1 && packageChunks[0].length === 1) ? "inherit" : "pipe";
  const existsPnp = existsInDir.bind(null, ".pnp.cjs");
  const workspacePnpPath = opts2.workspaceDir && existsPnp(opts2.workspaceDir);
  const requiredScripts = opts2.requiredScripts ?? [];
  if (requiredScripts.includes(scriptName)) {
    const missingScriptPackages = packageChunks.flat().map((prefix) => opts2.selectedProjectsGraph[prefix]).filter((pkg) => getSpecifiedScripts(pkg.package.manifest.scripts ?? {}, scriptName).length < 1).map((pkg) => pkg.package.manifest.name ?? pkg.package.rootDir);
    if (missingScriptPackages.length) {
      throw new PnpmError("RECURSIVE_RUN_NO_SCRIPT", `Missing script "${scriptName}" in packages: ${missingScriptPackages.join(", ")}`);
    }
  }
  const result2 = createEmptyRecursiveSummary(packageChunks);
  for (const chunk of packageChunks) {
    const selectedScripts = chunk.map((prefix) => {
      const pkg = opts2.selectedProjectsGraph[prefix];
      const specifiedScripts = getSpecifiedScripts(pkg.package.manifest.scripts ?? {}, scriptName);
      if (!specifiedScripts.length) {
        result2[prefix].status = "skipped";
      }
      return specifiedScripts.map((script) => ({ prefix, scriptName: script }));
    }).flat();
    await Promise.all(selectedScripts.map(async ({ prefix, scriptName: scriptName2 }) => limitRun(async () => {
      const pkg = opts2.selectedProjectsGraph[prefix];
      if (!pkg.package.manifest.scripts?.[scriptName2] || process.env.npm_lifecycle_event === scriptName2 && process.env.PNPM_SCRIPT_SRC_DIR === prefix) {
        return;
      }
      if (!process.env.npm_lifecycle_event) {
        throwOrFilterHiddenScripts([scriptName2], scriptName2);
      }
      result2[prefix].status = "running";
      const startTime = process.hrtime();
      hasCommand++;
      try {
        const lifecycleOpts = {
          depPath: prefix,
          extraBinPaths: opts2.extraBinPaths,
          extraEnv: opts2.extraEnv,
          pkgRoot: prefix,
          userAgent: opts2.userAgent,
          rootModulesDir: await realpathMissing(path179.join(prefix, "node_modules")),
          scriptsPrependNodePath: opts2.scriptsPrependNodePath,
          scriptShell: opts2.scriptShell,
          silent: opts2.reporter === "silent",
          shellEmulator: opts2.shellEmulator,
          stdio,
          unsafePerm: true
          // when running scripts explicitly, assume that they're trusted.
        };
        const pnpPath = workspacePnpPath ?? existsPnp(prefix);
        if (pnpPath) {
          lifecycleOpts.extraEnv = {
            ...lifecycleOpts.extraEnv,
            ...makeNodeRequireOption(pnpPath)
          };
        }
        const runScriptOptions = {
          enablePrePostScripts: opts2.enablePrePostScripts ?? false,
          syncInjectedDepsAfterScripts: opts2.syncInjectedDepsAfterScripts,
          workspaceDir: opts2.workspaceDir
        };
        const _runScript = runScript.bind(null, { manifest: pkg.package.manifest, lifecycleOpts, runScriptOptions, passedThruArgs });
        const groupEnd = Boolean(lifecycleOpts.silent) || getWorkspaceConcurrency(opts2.workspaceConcurrency) > 1 ? void 0 : (0, import_log6.groupStart)(formatSectionName({
          name: pkg.package.manifest.name,
          script: scriptName2,
          version: pkg.package.manifest.version,
          prefix: path179.normalize(path179.relative(opts2.workspaceDir, prefix))
        }));
        await _runScript(scriptName2);
        groupEnd?.();
        result2[prefix].status = "passed";
        result2[prefix].duration = getExecutionDuration(startTime);
      } catch (err) {
        assert12(util48.types.isNativeError(err));
        result2[prefix] = {
          status: "failure",
          duration: getExecutionDuration(startTime),
          error: err,
          message: err.message,
          prefix
        };
        if (!opts2.bail) {
          return;
        }
        Object.assign(err, {
          code: "ERR_PNPM_RECURSIVE_RUN_FIRST_FAIL",
          prefix
        });
        if (opts2.reportSummary) {
          await writeRecursiveSummary({
            dir: opts2.workspaceDir ?? opts2.dir,
            summary: result2
          });
        }
        throw err;
      }
    })));
  }
  if (scriptName !== "test" && !hasCommand && !opts2.ifPresent) {
    const allPackagesAreSelected = Object.keys(opts2.selectedProjectsGraph).length === opts2.allProjects.length;
    if (allPackagesAreSelected) {
      throw new PnpmError("RECURSIVE_RUN_NO_SCRIPT", `None of the packages has a "${scriptName}" script`);
    } else {
      throw new PnpmError("RECURSIVE_RUN_NO_SCRIPT", `None of the selected packages has a "${scriptName}" script`);
    }
  }
  if (opts2.reportSummary) {
    await writeRecursiveSummary({
      dir: opts2.workspaceDir ?? opts2.dir,
      summary: result2
    });
  }
  throwOnCommandFail("pnpm recursive run", result2);
}
function formatSectionName({ script, name, version: version2, prefix }) {
  return `${name ?? "unknown"}${version2 ? `@${version2}` : ""} ${script ? `: ${script}` : ""} ${prefix}`;
}
function getSpecifiedScripts(scripts, scriptName) {
  if (scripts[scriptName]) {
    return [scriptName];
  }
  const scriptSelector = tryBuildRegExpFromCommand(scriptName);
  if (scriptSelector) {
    const scriptKeys = Object.keys(scripts);
    return scriptKeys.filter((script) => script.match(scriptSelector));
  }
  return [];
}
var import_log6;
var init_runRecursive = __esm({
  "../exec/commands/lib/runRecursive.js"() {
    "use strict";
    init_lib29();
    init_lib61();
    init_lib2();
    init_lib44();
    import_log6 = __toESM(require_dist11(), 1);
    init_lib93();
    init_p_limit();
    init_realpath_missing();
    init_exec();
    init_existsInDir();
    init_hiddenScripts();
    init_regexpCommand();
    init_run();
  }
});

// ../exec/commands/lib/run.js
var run_exports = {};
__export(run_exports, {
  IF_PRESENT_OPTION: () => IF_PRESENT_OPTION,
  IF_PRESENT_OPTION_HELP: () => IF_PRESENT_OPTION_HELP,
  PARALLEL_OPTION_HELP: () => PARALLEL_OPTION_HELP,
  REPORTER_HIDE_PREFIX_HELP: () => REPORTER_HIDE_PREFIX_HELP,
  REPORT_SUMMARY_OPTION_HELP: () => REPORT_SUMMARY_OPTION_HELP,
  RESUME_FROM_OPTION_HELP: () => RESUME_FROM_OPTION_HELP,
  SEQUENTIAL_OPTION_HELP: () => SEQUENTIAL_OPTION_HELP,
  cliOptionsTypes: () => cliOptionsTypes39,
  commandNames: () => commandNames40,
  completion: () => completion5,
  handler: () => handler41,
  help: () => help40,
  rcOptionsTypes: () => rcOptionsTypes40,
  runScript: () => runScript,
  shorthands: () => shorthands13
});
import path180 from "node:path";
function rcOptionsTypes40() {
  return {
    ...pick_default([
      "npm-path"
    ], types2)
  };
}
function cliOptionsTypes39() {
  return {
    ...pick_default([
      "bail",
      "sort",
      "unsafe-perm",
      "workspace-concurrency",
      "scripts-prepend-node-path"
    ], types2),
    ...IF_PRESENT_OPTION,
    recursive: Boolean,
    reverse: Boolean,
    "resume-from": String,
    "report-summary": Boolean,
    "reporter-hide-prefix": Boolean
  };
}
function help40() {
  return renderHelp({
    aliases: ["run-script"],
    description: "Runs a defined package script.",
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: 'Run the defined package script in every package found in subdirectories or every workspace package, when executed inside a workspace. For options that may be used with `-r`, see "pnpm help recursive"',
            name: "--recursive",
            shortAlias: "-r"
          },
          {
            description: "The command will exit with a 0 exit code even if the script fails",
            name: "--no-bail"
          },
          IF_PRESENT_OPTION_HELP,
          PARALLEL_OPTION_HELP,
          RESUME_FROM_OPTION_HELP,
          ...UNIVERSAL_OPTIONS,
          SEQUENTIAL_OPTION_HELP,
          REPORT_SUMMARY_OPTION_HELP,
          REPORTER_HIDE_PREFIX_HELP
        ]
      },
      FILTERING
    ],
    url: docsUrl("run"),
    usages: ["pnpm run <command> [<args>...]"]
  });
}
async function handler41(opts2, params) {
  let dir;
  if (opts2.fallbackCommandUsed && (params[0] === "t" || params[0] === "tst")) {
    params[0] = "test";
  }
  const [scriptName, ...passedThruArgs] = params;
  if (opts2.verifyDepsBeforeRun) {
    await runDepsStatusCheck(opts2);
  }
  if (opts2.nodeOptions) {
    opts2.extraEnv = {
      ...opts2.extraEnv,
      NODE_OPTIONS: opts2.nodeOptions
    };
  }
  if (opts2.recursive) {
    if (scriptName || Object.keys(opts2.selectedProjectsGraph).length > 1) {
      return runRecursive(params, opts2);
    }
    dir = Object.keys(opts2.selectedProjectsGraph)[0];
  } else {
    dir = opts2.dir;
  }
  const manifest = await readProjectManifestOnly2(dir, opts2);
  if (!scriptName) {
    const rootManifest = opts2.workspaceDir && opts2.workspaceDir !== dir ? (await tryReadProjectManifest2(opts2.workspaceDir, opts2)).manifest : void 0;
    return printProjectCommands(manifest, rootManifest ?? void 0);
  }
  let specifiedScripts = getSpecifiedScripts2(manifest.scripts ?? {}, scriptName);
  if (!process.env.npm_lifecycle_event) {
    specifiedScripts = throwOrFilterHiddenScripts(specifiedScripts, scriptName);
  }
  if (specifiedScripts.length < 1) {
    if (opts2.ifPresent)
      return;
    if (opts2.fallbackCommandUsed) {
      if (opts2.argv == null)
        throw new Error("Could not fallback because opts.argv.original was not passed to the script runner");
      const params2 = opts2.argv.original.slice(1);
      while (params2.length > 0 && params2[0][0] === "-" && params2[0] !== "--") {
        params2.shift();
      }
      if (params2.length > 0 && params2[0] === "--") {
        params2.shift();
      }
      if (params2.length === 0) {
        throw new PnpmError("UNEXPECTED_BEHAVIOR", "Params should not be an empty array", {
          hint: "This was a bug caused by programmer error. Please report it"
        });
      }
      return handler40({
        selectedProjectsGraph: {},
        implicitlyFellbackFromRun: true,
        ...opts2
      }, params2);
    }
    if (opts2.workspaceDir) {
      const { manifest: rootManifest } = await tryReadProjectManifest2(opts2.workspaceDir, opts2);
      if (getSpecifiedScripts2(rootManifest?.scripts ?? {}, scriptName).length > 0 && specifiedScripts.length < 1) {
        throw new PnpmError("NO_SCRIPT", `Missing script: ${scriptName}`, {
          hint: `But script matched with ${scriptName} is present in the root of the workspace,
so you may run "pnpm -w run ${scriptName}"`
        });
      }
    }
    throw new PnpmError("NO_SCRIPT", `Missing script: ${scriptName}`, {
      hint: buildCommandNotFoundHint(scriptName, manifest.scripts)
    });
  }
  const concurrency = getWorkspaceConcurrency(opts2.workspaceConcurrency);
  const lifecycleOpts = {
    depPath: dir,
    extraBinPaths: opts2.extraBinPaths,
    extraEnv: opts2.extraEnv,
    pkgRoot: dir,
    rootModulesDir: await realpathMissing(path180.join(dir, "node_modules")),
    scriptsPrependNodePath: opts2.scriptsPrependNodePath,
    scriptShell: opts2.scriptShell,
    silent: opts2.reporter === "silent",
    shellEmulator: opts2.shellEmulator,
    stdio: specifiedScripts.length > 1 && concurrency > 1 ? "pipe" : "inherit",
    unsafePerm: true,
    // when running scripts explicitly, assume that they're trusted.
    userAgent: opts2.userAgent
  };
  const existsPnp = existsInDir.bind(null, ".pnp.cjs");
  const pnpPath = (opts2.workspaceDir && existsPnp(opts2.workspaceDir)) ?? existsPnp(dir);
  if (pnpPath) {
    lifecycleOpts.extraEnv = {
      ...lifecycleOpts.extraEnv,
      ...makeNodeRequireOption(pnpPath)
    };
  }
  try {
    const limitRun = pLimit(concurrency);
    const runScriptOptions = {
      enablePrePostScripts: opts2.enablePrePostScripts ?? false,
      syncInjectedDepsAfterScripts: opts2.syncInjectedDepsAfterScripts,
      workspaceDir: opts2.workspaceDir
    };
    const _runScript = runScript.bind(null, { manifest, lifecycleOpts, runScriptOptions, passedThruArgs });
    await Promise.all(specifiedScripts.map((script) => limitRun(() => _runScript(script))));
  } catch (err) {
    if (opts2.bail !== false) {
      throw err;
    }
  }
  return void 0;
}
function printProjectCommands(manifest, rootManifest) {
  const lifecycleScripts = [];
  const otherScripts = [];
  for (const [scriptName, script] of Object.entries(manifest.scripts ?? {})) {
    if (scriptName.startsWith("."))
      continue;
    if (ALL_LIFECYCLE_SCRIPTS.has(scriptName)) {
      lifecycleScripts.push([scriptName, script]);
    } else {
      otherScripts.push([scriptName, script]);
    }
  }
  if (lifecycleScripts.length === 0 && otherScripts.length === 0) {
    return "There are no scripts specified.";
  }
  let output = "";
  if (lifecycleScripts.length > 0) {
    output += `Lifecycle scripts:
${renderCommands(lifecycleScripts)}`;
  }
  if (otherScripts.length > 0) {
    if (output !== "")
      output += "\n\n";
    output += `Commands available via "pnpm run":
${renderCommands(otherScripts)}`;
  }
  if (rootManifest?.scripts == null) {
    return output;
  }
  const rootScripts = Object.entries(rootManifest.scripts);
  if (rootScripts.length === 0) {
    return output;
  }
  if (output !== "")
    output += "\n\n";
  output += `Commands of the root workspace project (to run them, use "pnpm -w run"):
${renderCommands(rootScripts)}`;
  return output;
}
async function runScript(opts2, scriptName) {
  if (opts2.runScriptOptions.enablePrePostScripts && opts2.manifest.scripts?.[`pre${scriptName}`] && !opts2.manifest.scripts[scriptName].includes(`pre${scriptName}`)) {
    await runLifecycleHook(`pre${scriptName}`, opts2.manifest, opts2.lifecycleOpts);
  }
  await runLifecycleHook(scriptName, opts2.manifest, { ...opts2.lifecycleOpts, args: opts2.passedThruArgs });
  if (opts2.runScriptOptions.enablePrePostScripts && opts2.manifest.scripts?.[`post${scriptName}`] && !opts2.manifest.scripts[scriptName].includes(`post${scriptName}`)) {
    await runLifecycleHook(`post${scriptName}`, opts2.manifest, opts2.lifecycleOpts);
  }
  if (opts2.runScriptOptions.syncInjectedDepsAfterScripts?.includes(scriptName)) {
    await syncInjectedDeps({
      pkgName: opts2.manifest.name,
      pkgRootDir: opts2.lifecycleOpts.pkgRoot,
      workspaceDir: opts2.runScriptOptions.workspaceDir
    });
  }
}
function renderCommands(commands2) {
  return commands2.map(([scriptName, script]) => `  ${scriptName}
    ${script}`).join("\n");
}
function getSpecifiedScripts2(scripts, scriptName) {
  const specifiedSelector = getSpecifiedScripts(scripts, scriptName);
  if (specifiedSelector.length > 0) {
    return specifiedSelector;
  }
  if (scriptName === "start") {
    return [scriptName];
  }
  return [];
}
var IF_PRESENT_OPTION, IF_PRESENT_OPTION_HELP, PARALLEL_OPTION_HELP, RESUME_FROM_OPTION_HELP, SEQUENTIAL_OPTION_HELP, REPORT_SUMMARY_OPTION_HELP, REPORTER_HIDE_PREFIX_HELP, shorthands13, completion5, commandNames40, ALL_LIFECYCLE_SCRIPTS;
var init_run = __esm({
  "../exec/commands/lib/run.js"() {
    "use strict";
    init_lib92();
    init_lib29();
    init_lib61();
    init_lib2();
    init_lib44();
    init_lib160();
    init_p_limit();
    init_es();
    init_realpath_missing();
    init_lib63();
    init_buildCommandNotFoundHint();
    init_exec();
    init_existsInDir();
    init_hiddenScripts();
    init_runDepsStatusCheck();
    init_runRecursive();
    IF_PRESENT_OPTION = {
      "if-present": Boolean
    };
    IF_PRESENT_OPTION_HELP = {
      description: "Avoid exiting with a non-zero exit code when the script is undefined",
      name: "--if-present"
    };
    PARALLEL_OPTION_HELP = {
      description: "Completely disregard concurrency and topological sorting, running a given script immediately in all matching packages with prefixed streaming output. This is the preferred flag for long-running processes such as watch run over many packages.",
      name: "--parallel"
    };
    RESUME_FROM_OPTION_HELP = {
      description: "Command executed from given package",
      name: "--resume-from"
    };
    SEQUENTIAL_OPTION_HELP = {
      description: "Run the specified scripts one by one",
      name: "--sequential"
    };
    REPORT_SUMMARY_OPTION_HELP = {
      description: 'Save the execution results of every package to "pnpm-exec-summary.json". Useful to inspect the execution time and status of each package.',
      name: "--report-summary"
    };
    REPORTER_HIDE_PREFIX_HELP = {
      description: "Hide project name prefix from output of running scripts. Useful when running in CI like GitHub Actions and the output from a script may create an annotation.",
      name: "--reporter-hide-prefix"
    };
    shorthands13 = {
      parallel: [
        "--workspace-concurrency=Infinity",
        "--no-sort",
        "--stream",
        "--recursive"
      ],
      sequential: [
        "--workspace-concurrency=1"
      ]
    };
    completion5 = async (cliOpts, params) => {
      if (params.length > 0) {
        return [];
      }
      const manifest = await readProjectManifestOnly2(cliOpts.dir ?? process.cwd(), cliOpts);
      return Object.keys(manifest.scripts ?? {}).map((name) => ({ name }));
    };
    commandNames40 = ["run", "run-script"];
    ALL_LIFECYCLE_SCRIPTS = /* @__PURE__ */ new Set([
      "prepublish",
      "prepare",
      "prepublishOnly",
      "prepack",
      "postpack",
      "publish",
      "postpublish",
      "preinstall",
      "install",
      "postinstall",
      "preuninstall",
      "uninstall",
      "postuninstall",
      "preversion",
      "version",
      "postversion",
      "pretest",
      "test",
      "posttest",
      "prestop",
      "stop",
      "poststop",
      "prestart",
      "start",
      "poststart",
      "prerestart",
      "restart",
      "postrestart",
      "preshrinkwrap",
      "shrinkwrap",
      "postshrinkwrap"
    ]);
  }
});

// ../exec/commands/lib/exec.js
var exec_exports = {};
__export(exec_exports, {
  cliOptionsTypes: () => cliOptionsTypes40,
  commandNames: () => commandNames41,
  createEmptyRecursiveSummary: () => createEmptyRecursiveSummary,
  getExecutionDuration: () => getExecutionDuration,
  getResumedPackageChunks: () => getResumedPackageChunks,
  handler: () => handler40,
  help: () => help41,
  rcOptionsTypes: () => rcOptionsTypes41,
  shorthands: () => shorthands14,
  writeRecursiveSummary: () => writeRecursiveSummary
});
import path181 from "node:path";
function rcOptionsTypes41() {
  return {
    ...pick_default([
      "bail",
      "sort",
      "unsafe-perm",
      "workspace-concurrency",
      "reporter-hide-prefix"
    ], types2),
    "shell-mode": Boolean,
    "resume-from": String,
    "report-summary": Boolean
  };
}
function help41() {
  return renderHelp({
    description: "Run a shell command in the context of a project.",
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: "Do not hide project name prefix from output of recursively running command.",
            name: "--no-reporter-hide-prefix"
          },
          PARALLEL_OPTION_HELP,
          {
            description: 'Run the shell command in every package found in subdirectories or every workspace package, when executed inside a workspace. For options that may be used with `-r`, see "pnpm help recursive"',
            name: "--recursive",
            shortAlias: "-r"
          },
          {
            description: "If exist, runs file inside of a shell. Uses /bin/sh on UNIX and \\cmd.exe on Windows. The shell should understand the -c switch on UNIX or /d /s /c on Windows.",
            name: "--shell-mode",
            shortAlias: "-c"
          },
          RESUME_FROM_OPTION_HELP,
          REPORT_SUMMARY_OPTION_HELP,
          ...UNIVERSAL_OPTIONS
        ]
      },
      FILTERING
    ],
    url: docsUrl("exec"),
    usages: ["pnpm [-r] [-c] exec <command> [args...]"]
  });
}
function getResumedPackageChunks({ resumeFrom, chunks, selectedProjectsGraph }) {
  const resumeFromPackagePrefix = Object.keys(selectedProjectsGraph).find((prefix) => selectedProjectsGraph[prefix]?.package.manifest.name === resumeFrom);
  if (!resumeFromPackagePrefix) {
    throw new PnpmError("RESUME_FROM_NOT_FOUND", `Cannot find package ${resumeFrom}. Could not determine where to resume from.`);
  }
  const chunkPosition = chunks.findIndex((chunk) => chunk.includes(resumeFromPackagePrefix));
  return chunks.slice(chunkPosition);
}
async function writeRecursiveSummary(opts2) {
  await writeJsonFile(path181.join(opts2.dir, "pnpm-exec-summary.json"), {
    executionStatus: opts2.summary
  });
}
function createEmptyRecursiveSummary(chunks) {
  const acc = {};
  for (const prefix of chunks.flat()) {
    acc[prefix] = { status: "queued" };
  }
  return acc;
}
function getExecutionDuration(start) {
  const end = process.hrtime(start);
  return (end[0] * 1e9 + end[1]) / 1e6;
}
async function handler40(opts2, params) {
  if (params[0] === "--") {
    params.shift();
  }
  if (!params[0]) {
    throw new PnpmError("EXEC_MISSING_COMMAND", "'pnpm exec' requires a command to run");
  }
  const limitRun = pLimit(getWorkspaceConcurrency(opts2.workspaceConcurrency));
  if (opts2.verifyDepsBeforeRun) {
    await runDepsStatusCheck(opts2);
  }
  let chunks;
  if (opts2.recursive) {
    chunks = opts2.sort ? sortProjects(opts2.selectedProjectsGraph) : [Object.keys(opts2.selectedProjectsGraph).sort()];
    if (opts2.reverse) {
      chunks = chunks.reverse();
    }
  } else {
    chunks = [[opts2.cliOptions.dir ?? process.cwd()]];
    const project = await tryReadProjectManifest(opts2.dir);
    if (project.manifest != null) {
      opts2.selectedProjectsGraph = {
        [opts2.dir]: {
          dependencies: [],
          package: {
            ...project,
            rootDir: opts2.dir,
            rootDirRealPath: opts2.dir
          }
        }
      };
    }
  }
  if (!opts2.selectedProjectsGraph) {
    throw new PnpmError("RECURSIVE_EXEC_NO_PACKAGE", "No package found in this workspace");
  }
  if (opts2.resumeFrom) {
    chunks = getResumedPackageChunks({
      resumeFrom: opts2.resumeFrom,
      chunks,
      selectedProjectsGraph: opts2.selectedProjectsGraph
    });
  }
  const result2 = createEmptyRecursiveSummary(chunks);
  const existsPnp = existsInDir.bind(null, ".pnp.cjs");
  const workspacePnpPath = opts2.workspaceDir && existsPnp(opts2.workspaceDir);
  let exitCode = 0;
  const prependPaths = [
    "./node_modules/.bin",
    ...opts2.extraBinPaths ?? []
  ];
  const reporterShowPrefix = opts2.recursive && opts2.reporterHidePrefix === false;
  for (const chunk of chunks) {
    await Promise.all(chunk.map(async (prefix) => limitRun(async () => {
      result2[prefix].status = "running";
      const startTime = process.hrtime();
      try {
        const pnpPath = workspacePnpPath ?? existsPnp(prefix);
        const extraEnv = {
          ...opts2.extraEnv,
          ...pnpPath ? makeNodeRequireOption(pnpPath) : {}
        };
        const env3 = makeEnv2({
          extraEnv: {
            ...extraEnv,
            PNPM_PACKAGE_NAME: opts2.selectedProjectsGraph[prefix]?.package.manifest.name,
            ...opts2.nodeOptions ? { NODE_OPTIONS: opts2.nodeOptions } : {}
          },
          prependPaths,
          userAgent: opts2.userAgent
        });
        const [cmd, ...args] = params;
        if (reporterShowPrefix) {
          const manifest = await readProjectManifestOnly2(prefix);
          const child = safeExeca(cmd, args, {
            cwd: prefix,
            env: env3,
            stdio: "pipe",
            shell: opts2.shellMode ?? false
          });
          const lifecycleOpts = {
            wd: prefix,
            depPath: manifest.name ?? path181.relative(opts2.dir, prefix),
            stage: "(exec)"
          };
          const logFn = (stdio) => (data) => {
            for (const line of String(data).split("\n")) {
              lifecycleLogger.debug({
                ...lifecycleOpts,
                stdio,
                line
              });
            }
          };
          child.stdout.on("data", logFn("stdout"));
          child.stderr.on("data", logFn("stderr"));
          await new Promise((resolve3) => {
            void child.once("close", (exitCode2) => {
              lifecycleLogger.debug({
                ...lifecycleOpts,
                exitCode: exitCode2 ?? 1,
                optional: false
              });
              resolve3();
            });
          });
          await child;
        } else {
          await safeExeca(cmd, args, {
            cwd: prefix,
            env: env3,
            stdio: "inherit",
            shell: opts2.shellMode ?? false
          });
        }
        result2[prefix].status = "passed";
        result2[prefix].duration = getExecutionDuration(startTime);
      } catch (err) {
        if (isErrorCommandNotFound(params[0], err, prefix, prependPaths)) {
          err.message = `Command "${params[0]}" not found`;
          err.hint = await createExecCommandNotFoundHint(params[0], {
            implicitlyFellbackFromRun: opts2.implicitlyFellbackFromRun ?? false,
            dir: opts2.dir,
            workspaceDir: opts2.workspaceDir,
            modulesDir: opts2.modulesDir ?? "node_modules"
          });
        } else if (!opts2.recursive && typeof err.exitCode === "number") {
          exitCode = err.exitCode;
          return;
        }
        logger.info(err);
        result2[prefix] = {
          status: "failure",
          duration: getExecutionDuration(startTime),
          error: err,
          message: err.message,
          prefix
        };
        if (!opts2.bail) {
          return;
        }
        if (!err["code"]?.startsWith("ERR_PNPM_")) {
          err["code"] = "ERR_PNPM_RECURSIVE_EXEC_FIRST_FAIL";
        }
        err["prefix"] = prefix;
        if (opts2.reportSummary) {
          await writeRecursiveSummary({
            dir: opts2.lockfileDir ?? opts2.dir,
            summary: result2
          });
        }
        throw err;
      }
    })));
  }
  if (opts2.reportSummary) {
    await writeRecursiveSummary({
      dir: opts2.lockfileDir ?? opts2.dir,
      summary: result2
    });
  }
  throwOnCommandFail("pnpm recursive exec", result2);
  return { exitCode };
}
async function createExecCommandNotFoundHint(programName, opts2) {
  if (opts2.implicitlyFellbackFromRun) {
    let nearestScript;
    try {
      nearestScript = getNearestScript(programName, (await readProjectManifestOnly2(opts2.dir)).scripts);
    } catch {
    }
    if (nearestScript) {
      return `Did you mean "pnpm ${nearestScript}"?`;
    }
    const nearestProgram2 = getNearestProgram({
      programName,
      dir: opts2.dir,
      workspaceDir: opts2.workspaceDir,
      modulesDir: opts2.modulesDir
    });
    if (nearestProgram2) {
      return `Did you mean "pnpm ${nearestProgram2}"?`;
    }
    return void 0;
  }
  const nearestProgram = getNearestProgram({
    programName,
    dir: opts2.dir,
    workspaceDir: opts2.workspaceDir,
    modulesDir: opts2.modulesDir
  });
  if (nearestProgram) {
    return `Did you mean "pnpm exec ${nearestProgram}"?`;
  }
  return void 0;
}
function isErrorCommandNotFound(command, error, prefix, prependPaths) {
  if (error.originalMessage === `spawn ${command} ENOENT`) {
    return true;
  }
  if (process.platform === "win32") {
    const absolutePrependPaths = prependPaths.map((p) => path181.resolve(prefix, p));
    const { value: searchPath } = prependDirsToPath(absolutePrependPaths);
    return !import_which3.default.sync(command, { nothrow: true, path: searchPath });
  }
  return false;
}
var import_which3, shorthands14, commandNames41, cliOptionsTypes40;
var init_exec = __esm({
  "../exec/commands/lib/exec.js"() {
    "use strict";
    init_lib92();
    init_lib29();
    init_lib61();
    init_lib6();
    init_lib2();
    init_lib44();
    init_lib3();
    init_lib156();
    init_lib13();
    init_lib93();
    init_lib26();
    init_p_limit();
    init_es();
    init_lib63();
    import_which3 = __toESM(require_lib27(), 1);
    init_write_json_file();
    init_buildCommandNotFoundHint();
    init_existsInDir();
    init_makeEnv();
    init_run();
    init_runDepsStatusCheck();
    shorthands14 = {
      parallel: shorthands13.parallel,
      c: "--shell-mode"
    };
    commandNames41 = ["exec"];
    cliOptionsTypes40 = () => ({
      ...rcOptionsTypes41(),
      recursive: Boolean,
      reverse: Boolean
    });
  }
});

// ../exec/commands/lib/restart.js
var restart_exports = {};
__export(restart_exports, {
  cliOptionsTypes: () => cliOptionsTypes41,
  commandNames: () => commandNames42,
  handler: () => handler42,
  help: () => help42,
  rcOptionsTypes: () => rcOptionsTypes42
});
function rcOptionsTypes42() {
  return {
    ...pick_default([
      "npm-path"
    ], types2)
  };
}
function cliOptionsTypes41() {
  return IF_PRESENT_OPTION;
}
function help42() {
  return renderHelp({
    description: `Restarts a package. Runs a package's "stop", "restart", and "start" scripts, and associated pre- and post- scripts.`,
    descriptionLists: [
      {
        title: "Options",
        list: [
          IF_PRESENT_OPTION_HELP
        ]
      }
    ],
    usages: ["pnpm restart [-- <args>...]"]
  });
}
async function handler42(opts2, params) {
  await handler41(opts2, ["stop", ...params]);
  await handler41(opts2, ["restart", ...params]);
  await handler41(opts2, ["start", ...params]);
}
var commandNames42;
var init_restart = __esm({
  "../exec/commands/lib/restart.js"() {
    "use strict";
    init_lib61();
    init_es();
    init_lib63();
    init_run();
    commandNames42 = ["restart"];
  }
});

// ../exec/commands/lib/index.js
var init_lib161 = __esm({
  "../exec/commands/lib/index.js"() {
    "use strict";
    init_create2();
    init_dlx();
    init_exec();
    init_restart();
    init_run();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/environment/1.1.0/675e07dac9042e2346cd9a637e6a3cbd31b101f23b0a81d3db44c1dfbf92c7d0/node_modules/environment/index.js
var isBrowser, isNode, isBun, isDeno, isElectron, isJsDom, isWebWorker, isDedicatedWorker, isSharedWorker, isServiceWorker, platform2, isMacOs, isWindows12, isLinux, isIos, isAndroid;
var init_environment = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/environment/1.1.0/675e07dac9042e2346cd9a637e6a3cbd31b101f23b0a81d3db44c1dfbf92c7d0/node_modules/environment/index.js"() {
    isBrowser = globalThis.window?.document !== void 0;
    isNode = globalThis.process?.versions?.node !== void 0;
    isBun = globalThis.process?.versions?.bun !== void 0;
    isDeno = globalThis.Deno?.version?.deno !== void 0;
    isElectron = globalThis.process?.versions?.electron !== void 0;
    isJsDom = globalThis.navigator?.userAgent?.includes("jsdom") === true;
    isWebWorker = typeof WorkerGlobalScope !== "undefined" && globalThis instanceof WorkerGlobalScope;
    isDedicatedWorker = typeof DedicatedWorkerGlobalScope !== "undefined" && globalThis instanceof DedicatedWorkerGlobalScope;
    isSharedWorker = typeof SharedWorkerGlobalScope !== "undefined" && globalThis instanceof SharedWorkerGlobalScope;
    isServiceWorker = typeof ServiceWorkerGlobalScope !== "undefined" && globalThis instanceof ServiceWorkerGlobalScope;
    platform2 = globalThis.navigator?.userAgentData?.platform;
    isMacOs = platform2 === "macOS" || globalThis.navigator?.platform === "MacIntel" || globalThis.navigator?.userAgent?.includes(" Mac ") === true || globalThis.process?.platform === "darwin";
    isWindows12 = platform2 === "Windows" || globalThis.navigator?.platform === "Win32" || globalThis.process?.platform === "win32";
    isLinux = platform2 === "Linux" || globalThis.navigator?.platform?.startsWith("Linux") === true || globalThis.navigator?.userAgent?.includes(" Linux ") === true || globalThis.process?.platform === "linux";
    isIos = platform2 === "iOS" || globalThis.navigator?.platform === "MacIntel" && globalThis.navigator?.maxTouchPoints > 1 || /iPad|iPhone|iPod/.test(globalThis.navigator?.platform);
    isAndroid = platform2 === "Android" || globalThis.navigator?.platform === "Android" || globalThis.navigator?.userAgent?.includes(" Android ") === true || globalThis.process?.platform === "android";
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/ansi-escapes/7.3.0/62b6e83f9a34721332f143e06a960e160f36fd158f241c4844ff3f49276b7b68/node_modules/ansi-escapes/base.js
var base_exports2 = {};
__export(base_exports2, {
  ConEmu: () => ConEmu,
  beep: () => beep,
  beginSynchronizedOutput: () => beginSynchronizedOutput,
  clearScreen: () => clearScreen,
  clearTerminal: () => clearTerminal,
  clearViewport: () => clearViewport,
  cursorBackward: () => cursorBackward,
  cursorDown: () => cursorDown,
  cursorForward: () => cursorForward,
  cursorGetPosition: () => cursorGetPosition,
  cursorHide: () => cursorHide,
  cursorLeft: () => cursorLeft,
  cursorMove: () => cursorMove,
  cursorNextLine: () => cursorNextLine,
  cursorPrevLine: () => cursorPrevLine,
  cursorRestorePosition: () => cursorRestorePosition,
  cursorSavePosition: () => cursorSavePosition,
  cursorShow: () => cursorShow,
  cursorTo: () => cursorTo,
  cursorUp: () => cursorUp,
  endSynchronizedOutput: () => endSynchronizedOutput,
  enterAlternativeScreen: () => enterAlternativeScreen,
  eraseDown: () => eraseDown,
  eraseEndLine: () => eraseEndLine,
  eraseLine: () => eraseLine,
  eraseLines: () => eraseLines,
  eraseScreen: () => eraseScreen,
  eraseStartLine: () => eraseStartLine,
  eraseUp: () => eraseUp,
  exitAlternativeScreen: () => exitAlternativeScreen,
  iTerm: () => iTerm,
  image: () => image,
  link: () => link,
  scrollDown: () => scrollDown,
  scrollUp: () => scrollUp,
  setCwd: () => setCwd,
  synchronizedOutput: () => synchronizedOutput
});
import process13 from "node:process";
import os11 from "node:os";
var ESC, OSC, BEL, SEP2, isTerminalApp, isWindows13, isTmux, cwdFunction, wrapOsc, cursorTo, cursorMove, cursorUp, cursorDown, cursorForward, cursorBackward, cursorLeft, cursorSavePosition, cursorRestorePosition, cursorGetPosition, cursorNextLine, cursorPrevLine, cursorHide, cursorShow, eraseLines, eraseEndLine, eraseStartLine, eraseLine, eraseDown, eraseUp, eraseScreen, scrollUp, scrollDown, clearScreen, clearViewport, isOldWindows, clearTerminal, enterAlternativeScreen, exitAlternativeScreen, beginSynchronizedOutput, endSynchronizedOutput, synchronizedOutput, beep, link, image, iTerm, ConEmu, setCwd;
var init_base2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/ansi-escapes/7.3.0/62b6e83f9a34721332f143e06a960e160f36fd158f241c4844ff3f49276b7b68/node_modules/ansi-escapes/base.js"() {
    init_environment();
    ESC = "\x1B[";
    OSC = "\x1B]";
    BEL = "\x07";
    SEP2 = ";";
    isTerminalApp = !isBrowser && process13.env.TERM_PROGRAM === "Apple_Terminal";
    isWindows13 = !isBrowser && process13.platform === "win32";
    isTmux = !isBrowser && (process13.env.TERM?.startsWith("screen") || process13.env.TERM?.startsWith("tmux") || process13.env.TMUX !== void 0);
    cwdFunction = isBrowser ? () => {
      throw new Error("`process.cwd()` only works in Node.js, not the browser.");
    } : process13.cwd;
    wrapOsc = (sequence) => {
      if (isTmux) {
        return "\x1BPtmux;" + sequence.replaceAll("\x1B", "\x1B\x1B") + "\x1B\\";
      }
      return sequence;
    };
    cursorTo = (x, y) => {
      if (typeof x !== "number") {
        throw new TypeError("The `x` argument is required");
      }
      if (typeof y !== "number") {
        return ESC + (x + 1) + "G";
      }
      return ESC + (y + 1) + SEP2 + (x + 1) + "H";
    };
    cursorMove = (x, y) => {
      if (typeof x !== "number") {
        throw new TypeError("The `x` argument is required");
      }
      let returnValue = "";
      if (x < 0) {
        returnValue += ESC + -x + "D";
      } else if (x > 0) {
        returnValue += ESC + x + "C";
      }
      if (y < 0) {
        returnValue += ESC + -y + "A";
      } else if (y > 0) {
        returnValue += ESC + y + "B";
      }
      return returnValue;
    };
    cursorUp = (count2 = 1) => ESC + count2 + "A";
    cursorDown = (count2 = 1) => ESC + count2 + "B";
    cursorForward = (count2 = 1) => ESC + count2 + "C";
    cursorBackward = (count2 = 1) => ESC + count2 + "D";
    cursorLeft = ESC + "G";
    cursorSavePosition = isTerminalApp ? "\x1B7" : ESC + "s";
    cursorRestorePosition = isTerminalApp ? "\x1B8" : ESC + "u";
    cursorGetPosition = ESC + "6n";
    cursorNextLine = ESC + "E";
    cursorPrevLine = ESC + "F";
    cursorHide = ESC + "?25l";
    cursorShow = ESC + "?25h";
    eraseLines = (count2) => {
      let clear = "";
      for (let i2 = 0; i2 < count2; i2++) {
        clear += eraseLine + (i2 < count2 - 1 ? cursorUp() : "");
      }
      if (count2) {
        clear += cursorLeft;
      }
      return clear;
    };
    eraseEndLine = ESC + "K";
    eraseStartLine = ESC + "1K";
    eraseLine = ESC + "2K";
    eraseDown = ESC + "J";
    eraseUp = ESC + "1J";
    eraseScreen = ESC + "2J";
    scrollUp = ESC + "S";
    scrollDown = ESC + "T";
    clearScreen = "\x1Bc";
    clearViewport = `${eraseScreen}${ESC}H`;
    isOldWindows = () => {
      if (isBrowser || !isWindows13) {
        return false;
      }
      const parts = os11.release().split(".");
      const major = Number(parts[0]);
      const build2 = Number(parts[2] ?? 0);
      if (major < 10) {
        return true;
      }
      if (major === 10 && build2 < 10586) {
        return true;
      }
      return false;
    };
    clearTerminal = isOldWindows() ? `${eraseScreen}${ESC}0f` : `${eraseScreen}${ESC}3J${ESC}H`;
    enterAlternativeScreen = ESC + "?1049h";
    exitAlternativeScreen = ESC + "?1049l";
    beginSynchronizedOutput = ESC + "?2026h";
    endSynchronizedOutput = ESC + "?2026l";
    synchronizedOutput = (text) => beginSynchronizedOutput + text + endSynchronizedOutput;
    beep = BEL;
    link = (text, url7) => {
      const openLink = wrapOsc(`${OSC}8${SEP2}${SEP2}${url7}${BEL}`);
      const closeLink = wrapOsc(`${OSC}8${SEP2}${SEP2}${BEL}`);
      return openLink + text + closeLink;
    };
    image = (data, options = {}) => {
      let returnValue = `${OSC}1337;File=inline=1`;
      if (options.width) {
        returnValue += `;width=${options.width}`;
      }
      if (options.height) {
        returnValue += `;height=${options.height}`;
      }
      if (options.preserveAspectRatio === false) {
        returnValue += ";preserveAspectRatio=0";
      }
      const imageBuffer = Buffer.from(data);
      return wrapOsc(returnValue + `;size=${imageBuffer.byteLength}:` + imageBuffer.toString("base64") + BEL);
    };
    iTerm = {
      setCwd: (cwd = cwdFunction()) => wrapOsc(`${OSC}50;CurrentDir=${cwd}${BEL}`),
      annotation(message, options = {}) {
        let returnValue = `${OSC}1337;`;
        const hasX = options.x !== void 0;
        const hasY = options.y !== void 0;
        if ((hasX || hasY) && !(hasX && hasY && options.length !== void 0)) {
          throw new Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");
        }
        message = message.replaceAll("|", "");
        returnValue += options.isHidden ? "AddHiddenAnnotation=" : "AddAnnotation=";
        if (options.length > 0) {
          returnValue += (hasX ? [message, options.length, options.x, options.y] : [options.length, message]).join("|");
        } else {
          returnValue += message;
        }
        return wrapOsc(returnValue + BEL);
      }
    };
    ConEmu = {
      setCwd: (cwd = cwdFunction()) => wrapOsc(`${OSC}9;9;${cwd}${BEL}`)
    };
    setCwd = (cwd = cwdFunction()) => iTerm.setCwd(cwd) + ConEmu.setCwd(cwd);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/ansi-escapes/7.3.0/62b6e83f9a34721332f143e06a960e160f36fd158f241c4844ff3f49276b7b68/node_modules/ansi-escapes/index.js
var init_ansi_escapes = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/ansi-escapes/7.3.0/62b6e83f9a34721332f143e06a960e160f36fd158f241c4844ff3f49276b7b68/node_modules/ansi-escapes/index.js"() {
    init_base2();
    init_base2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/supports-color/10.2.2/d7b50f591c2c70caab44b381b07a2ac38e77d341cd4354f5d48cfc70624c8800/node_modules/supports-color/index.js
import process14 from "node:process";
import os12 from "node:os";
import tty4 from "node:tty";
function hasFlag2(flag, argv2 = globalThis.Deno ? globalThis.Deno.args : process14.argv) {
  const prefix = flag.startsWith("-") ? "" : flag.length === 1 ? "-" : "--";
  const position3 = argv2.indexOf(prefix + flag);
  const terminatorPosition = argv2.indexOf("--");
  return position3 !== -1 && (terminatorPosition === -1 || position3 < terminatorPosition);
}
function envForceColor2() {
  if (!("FORCE_COLOR" in env2)) {
    return;
  }
  if (env2.FORCE_COLOR === "true") {
    return 1;
  }
  if (env2.FORCE_COLOR === "false") {
    return 0;
  }
  if (env2.FORCE_COLOR.length === 0) {
    return 1;
  }
  const level = Math.min(Number.parseInt(env2.FORCE_COLOR, 10), 3);
  if (![0, 1, 2, 3].includes(level)) {
    return;
  }
  return level;
}
function translateLevel2(level) {
  if (level === 0) {
    return false;
  }
  return {
    level,
    hasBasic: true,
    has256: level >= 2,
    has16m: level >= 3
  };
}
function _supportsColor2(haveStream, { streamIsTTY, sniffFlags = true } = {}) {
  const noFlagForceColor = envForceColor2();
  if (noFlagForceColor !== void 0) {
    flagForceColor2 = noFlagForceColor;
  }
  const forceColor = sniffFlags ? flagForceColor2 : noFlagForceColor;
  if (forceColor === 0) {
    return 0;
  }
  if (sniffFlags) {
    if (hasFlag2("color=16m") || hasFlag2("color=full") || hasFlag2("color=truecolor")) {
      return 3;
    }
    if (hasFlag2("color=256")) {
      return 2;
    }
  }
  if ("TF_BUILD" in env2 && "AGENT_NAME" in env2) {
    return 1;
  }
  if (haveStream && !streamIsTTY && forceColor === void 0) {
    return 0;
  }
  const min = forceColor || 0;
  if (env2.TERM === "dumb") {
    return min;
  }
  if (process14.platform === "win32") {
    const osRelease = os12.release().split(".");
    if (Number(osRelease[0]) >= 10 && Number(osRelease[2]) >= 10586) {
      return Number(osRelease[2]) >= 14931 ? 3 : 2;
    }
    return 1;
  }
  if ("CI" in env2) {
    if (["GITHUB_ACTIONS", "GITEA_ACTIONS", "CIRCLECI"].some((key) => key in env2)) {
      return 3;
    }
    if (["TRAVIS", "APPVEYOR", "GITLAB_CI", "BUILDKITE", "DRONE"].some((sign) => sign in env2) || env2.CI_NAME === "codeship") {
      return 1;
    }
    return min;
  }
  if ("TEAMCITY_VERSION" in env2) {
    return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(env2.TEAMCITY_VERSION) ? 1 : 0;
  }
  if (env2.COLORTERM === "truecolor") {
    return 3;
  }
  if (env2.TERM === "xterm-kitty") {
    return 3;
  }
  if (env2.TERM === "xterm-ghostty") {
    return 3;
  }
  if (env2.TERM === "wezterm") {
    return 3;
  }
  if ("TERM_PROGRAM" in env2) {
    const version2 = Number.parseInt((env2.TERM_PROGRAM_VERSION || "").split(".")[0], 10);
    switch (env2.TERM_PROGRAM) {
      case "iTerm.app": {
        return version2 >= 3 ? 3 : 2;
      }
      case "Apple_Terminal": {
        return 2;
      }
    }
  }
  if (/-256(color)?$/i.test(env2.TERM)) {
    return 2;
  }
  if (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env2.TERM)) {
    return 1;
  }
  if ("COLORTERM" in env2) {
    return 1;
  }
  return min;
}
function createSupportsColor2(stream2, options = {}) {
  const level = _supportsColor2(stream2, {
    streamIsTTY: stream2 && stream2.isTTY,
    ...options
  });
  return translateLevel2(level);
}
var env2, flagForceColor2, supportsColor2;
var init_supports_color2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/supports-color/10.2.2/d7b50f591c2c70caab44b381b07a2ac38e77d341cd4354f5d48cfc70624c8800/node_modules/supports-color/index.js"() {
    ({ env: env2 } = process14);
    if (hasFlag2("no-color") || hasFlag2("no-colors") || hasFlag2("color=false") || hasFlag2("color=never")) {
      flagForceColor2 = 0;
    } else if (hasFlag2("color") || hasFlag2("colors") || hasFlag2("color=true") || hasFlag2("color=always")) {
      flagForceColor2 = 1;
    }
    supportsColor2 = {
      stdout: createSupportsColor2({ isTTY: tty4.isatty(1) }),
      stderr: createSupportsColor2({ isTTY: tty4.isatty(2) })
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/has-flag/5.0.1/673edecc2e2469b1f29821316680ead7c540327937f392e0a7d409de8210053e/node_modules/has-flag/index.js
import process15 from "process";
function hasFlag3(flag, argv2 = process15.argv) {
  const prefix = flag.startsWith("-") ? "" : flag.length === 1 ? "-" : "--";
  const position3 = argv2.indexOf(prefix + flag);
  const terminatorPosition = argv2.indexOf("--");
  return position3 !== -1 && (terminatorPosition === -1 || position3 < terminatorPosition);
}
var init_has_flag = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/has-flag/5.0.1/673edecc2e2469b1f29821316680ead7c540327937f392e0a7d409de8210053e/node_modules/has-flag/index.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/supports-hyperlinks/4.4.0/2769f05ecd6227abb9c70c9138c79631b64322ecd7b24bfb50da5178153c182a/node_modules/supports-hyperlinks/index.js
import process16 from "node:process";
function parseVersion2(versionString = "") {
  if (/^\d{3,4}$/.test(versionString)) {
    const match = /(\d{1,2})(\d{2})/.exec(versionString) ?? [];
    return {
      major: 0,
      minor: Number.parseInt(match[1], 10),
      patch: Number.parseInt(match[2], 10)
    };
  }
  const versions = (versionString ?? "").split(".").map((n2) => Number.parseInt(n2, 10));
  return {
    major: versions[0],
    minor: versions[1],
    patch: versions[2]
  };
}
function createSupportsHyperlinks(stream2) {
  const {
    CI,
    CURSOR_TRACE_ID,
    FORCE_HYPERLINK,
    NETLIFY,
    TEAMCITY_VERSION,
    TERM_PROGRAM,
    TERM_PROGRAM_VERSION,
    VTE_VERSION,
    TERM
  } = process16.env;
  if (FORCE_HYPERLINK) {
    return !(FORCE_HYPERLINK.length > 0 && Number.parseInt(FORCE_HYPERLINK, 10) === 0);
  }
  if (hasFlag3("no-hyperlink") || hasFlag3("no-hyperlinks") || hasFlag3("hyperlink=false") || hasFlag3("hyperlink=never")) {
    return false;
  }
  if (hasFlag3("hyperlink=true") || hasFlag3("hyperlink=always")) {
    return true;
  }
  if (NETLIFY) {
    return true;
  }
  if (!createSupportsColor2(stream2)) {
    return false;
  }
  if (stream2 && !stream2.isTTY) {
    return false;
  }
  if ("WT_SESSION" in process16.env) {
    return true;
  }
  if (process16.platform === "win32") {
    return false;
  }
  if (CI) {
    return false;
  }
  if (TEAMCITY_VERSION) {
    return false;
  }
  if (TERM_PROGRAM) {
    const version2 = parseVersion2(TERM_PROGRAM_VERSION);
    switch (TERM_PROGRAM) {
      case "iTerm.app": {
        if (version2.major === 3) {
          return version2.minor >= 1;
        }
        return version2.major > 3;
      }
      case "WezTerm": {
        if (/^0-unstable-\d{4}-\d{2}-\d{2}$/.test(TERM_PROGRAM_VERSION)) {
          const date = TERM_PROGRAM_VERSION.slice("0-unstable-".length);
          return date >= "2020-06-20";
        }
        return version2.major >= 20200620;
      }
      case "vscode": {
        if (CURSOR_TRACE_ID) {
          return true;
        }
        return version2.major > 1 || version2.major === 1 && version2.minor >= 72;
      }
      case "ghostty": {
        return true;
      }
      case "zed": {
        return true;
      }
    }
  }
  if (VTE_VERSION) {
    if (VTE_VERSION === "0.50.0") {
      return false;
    }
    const version2 = parseVersion2(VTE_VERSION);
    return version2.major > 0 || version2.minor >= 50;
  }
  switch (TERM) {
    case "alacritty": {
      return true;
    }
    case "xterm-kitty": {
      return true;
    }
  }
  return false;
}
var supportsHyperlinks, supports_hyperlinks_default;
var init_supports_hyperlinks = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/supports-hyperlinks/4.4.0/2769f05ecd6227abb9c70c9138c79631b64322ecd7b24bfb50da5178153c182a/node_modules/supports-hyperlinks/index.js"() {
    init_supports_color2();
    init_has_flag();
    supportsHyperlinks = {
      stdout: createSupportsHyperlinks(process16.stdout),
      stderr: createSupportsHyperlinks(process16.stderr)
    };
    supports_hyperlinks_default = supportsHyperlinks;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/terminal-link/5.0.0/59c45c43c61cb01a7568c746b459f85a0176e6e0709e1f4300cbce4e6632aedb/node_modules/terminal-link/index.js
function terminalLink(text, url7, { target: target2 = "stdout", ...options } = {}) {
  if (!supports_hyperlinks_default[target2]) {
    if (options.fallback === false) {
      return text;
    }
    if (typeof options.fallback === "function") {
      return options.fallback(text, url7);
    }
    return `${text} ${url7}`;
  }
  return base_exports2.link(text, url7);
}
var init_terminal_link = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/terminal-link/5.0.0/59c45c43c61cb01a7568c746b459f85a0176e6e0709e1f4300cbce4e6632aedb/node_modules/terminal-link/index.js"() {
    init_ansi_escapes();
    init_supports_hyperlinks();
    terminalLink.isSupported = supports_hyperlinks_default.stdout;
    terminalLink.stderr = (text, url7, options = {}) => terminalLink(text, url7, { target: "stderr", ...options });
    terminalLink.stderr.isSupported = supports_hyperlinks_default.stderr;
  }
});

// ../patching/commands/lib/getEditDirPath.js
import path182 from "node:path";
function getEditDirPath(param, patchedDep, opts2) {
  const editDirName = getEditDirNameFromParsedDep(patchedDep) ?? param;
  return path182.join(opts2.modulesDir, ".pnpm_patches", editDirName);
}
function getEditDirNameFromParsedDep(patchedDep) {
  if (patchedDep.alias && patchedDep.bareSpecifier) {
    const bareSpecifier = patchedDep.bareSpecifier.replace(/[\\/:*?"<>|]+/g, "+");
    return `${patchedDep.alias}@${bareSpecifier}`;
  }
  if (patchedDep.alias) {
    return patchedDep.alias;
  }
  return void 0;
}
var init_getEditDirPath = __esm({
  "../patching/commands/lib/getEditDirPath.js"() {
    "use strict";
  }
});

// ../patching/commands/lib/getPatchedDependency.js
import path183 from "node:path";
async function getPatchedDependency(rawDependency, opts2) {
  const dep = parseWantedDependency(rawDependency);
  const { versions, preferredVersions } = await getVersionsFromLockfile(dep, opts2);
  if (!preferredVersions.length) {
    throw new PnpmError("PATCH_VERSION_NOT_FOUND", `Can not find ${rawDependency} in project ${opts2.lockfileDir}, ${versions.length ? `you can specify currently installed version: ${versions.map(({ version: version2 }) => version2).join(", ")}.` : `did you forget to install ${rawDependency}?`}`);
  }
  dep.alias = dep.alias ?? rawDependency;
  if (preferredVersions.length > 1) {
    const { version: version2, applyToAll } = await import_enquirer8.default.prompt([{
      type: "select",
      name: "version",
      message: "Choose which version to patch",
      choices: preferredVersions.map((preferred) => ({
        name: preferred.version,
        message: preferred.version,
        value: preferred.gitTarballUrl ?? preferred.version,
        hint: preferred.gitTarballUrl ? "Git Hosted" : void 0
      })),
      result(selected) {
        const selectedVersion = preferredVersions.find((preferred) => preferred.version === selected);
        return selectedVersion.gitTarballUrl ?? selected;
      }
    }, {
      type: "confirm",
      name: "applyToAll",
      message: "Apply this patch to all versions?"
    }]);
    return {
      ...dep,
      applyToAll,
      bareSpecifier: version2
    };
  } else {
    const preferred = preferredVersions[0];
    if (preferred.gitTarballUrl) {
      return {
        ...opts2,
        applyToAll: false,
        bareSpecifier: preferred.gitTarballUrl
      };
    }
    return {
      ...dep,
      applyToAll: !dep.bareSpecifier,
      bareSpecifier: preferred.version
    };
  }
}
function isPkgPrNewUrl(url7) {
  return url7.startsWith("https://pkg.pr.new/");
}
async function getVersionsFromLockfile(dep, opts2) {
  const modulesDir = await realpathMissing(path183.join(opts2.lockfileDir, opts2.modulesDir ?? "node_modules"));
  const lockfile = await readCurrentLockfile(path183.join(modulesDir, ".pnpm"), {
    ignoreIncompatible: true
  }) ?? null;
  if (!lockfile) {
    throw new PnpmError("PATCH_NO_LOCKFILE", "The modules directory is not ready for patching", {
      hint: "Run pnpm install first"
    });
  }
  const pkgName = dep.alias && dep.bareSpecifier ? dep.alias : dep.bareSpecifier ?? dep.alias;
  const versions = Object.entries(lockfile.packages ?? {}).map(([depPath, pkgSnapshot]) => {
    const tarball = pkgSnapshot.resolution?.tarball ?? "";
    return {
      ...nameVerFromPkgSnapshot(depPath, pkgSnapshot),
      gitTarballUrl: isGitHostedPkgUrl(tarball) || isPkgPrNewUrl(tarball) ? tarball : void 0
    };
  }).filter(({ name }) => name === pkgName).sort((v1, v2) => import_semver49.default.compare(v1.version, v2.version));
  return {
    versions,
    preferredVersions: versions.filter(({ version: version2 }) => dep.alias && dep.bareSpecifier ? import_semver49.default.satisfies(version2, dep.bareSpecifier) : true)
  };
}
var import_enquirer8, import_semver49;
var init_getPatchedDependency = __esm({
  "../patching/commands/lib/getPatchedDependency.js"() {
    "use strict";
    init_lib2();
    init_lib80();
    init_lib78();
    init_lib70();
    init_lib96();
    import_enquirer8 = __toESM(require_enquirer(), 1);
    init_realpath_missing();
    import_semver49 = __toESM(require_semver2(), 1);
  }
});

// ../patching/commands/lib/stateFile.js
import fs95 from "node:fs";
import path184 from "node:path";
import util49 from "node:util";
function readEditDirState(opts2) {
  const state = readStateFile(opts2.modulesDir);
  if (!state)
    return void 0;
  const key = createEditDirKey(opts2);
  return state[key];
}
function writeEditDirState(opts2) {
  modifyStateFile(opts2.modulesDir, (state) => {
    const key = createEditDirKey(opts2);
    state[key] = {
      patchedPkg: opts2.patchedPkg,
      applyToAll: opts2.applyToAll
    };
  });
}
function modifyStateFile(modulesDir, modifyState) {
  const filePath = getStateFilePath(modulesDir);
  let state = readStateFile(modulesDir);
  if (!state) {
    state = {};
    fs95.mkdirSync(path184.dirname(filePath), { recursive: true });
  }
  modifyState(state);
  fs95.writeFileSync(filePath, JSON.stringify(state, void 0, 2));
}
function readStateFile(modulesDir) {
  let fileContent;
  try {
    fileContent = fs95.readFileSync(getStateFilePath(modulesDir), "utf-8");
  } catch (err) {
    if (util49.types.isNativeError(err) && "code" in err && err.code === "ENOENT") {
      return void 0;
    }
    throw err;
  }
  return JSON.parse(fileContent);
}
function getStateFilePath(modulesDir) {
  return path184.join(modulesDir, ".pnpm_patches", "state.json");
}
var createEditDirKey;
var init_stateFile = __esm({
  "../patching/commands/lib/stateFile.js"() {
    "use strict";
    createEditDirKey = (opts2) => opts2.editDir;
  }
});

// ../patching/commands/lib/writePackage.js
async function writePackage(dep, dest, opts2) {
  const store = await createStoreController({
    ...opts2,
    packageImportMethod: "clone-or-copy"
  });
  const pkgResponse = await store.ctrl.requestPackage(dep, {
    downloadPriority: 1,
    lockfileDir: opts2.dir,
    preferredVersions: {},
    projectDir: opts2.dir
  });
  const { files } = await pkgResponse.fetching();
  await store.ctrl.importPackage(dest, {
    filesResponse: files,
    force: true
  });
}
var init_writePackage = __esm({
  "../patching/commands/lib/writePackage.js"() {
    "use strict";
    init_lib90();
  }
});

// ../patching/commands/lib/patch.js
var patch_exports = {};
__export(patch_exports, {
  cliOptionsTypes: () => cliOptionsTypes42,
  commandNames: () => commandNames43,
  handler: () => handler43,
  help: () => help43,
  rcOptionsTypes: () => rcOptionsTypes43,
  recursiveByDefault: () => recursiveByDefault10,
  shorthands: () => shorthands15
});
import fs96 from "node:fs";
import path185 from "node:path";
function rcOptionsTypes43() {
  return pick_default([], types2);
}
function cliOptionsTypes42() {
  return { ...rcOptionsTypes43(), "edit-dir": String, "ignore-existing": Boolean };
}
function help43() {
  return renderHelp({
    description: "Prepare a package for patching",
    descriptionLists: [{
      title: "Options",
      list: [
        {
          description: "The package that needs to be modified will be extracted to this directory",
          name: "--edit-dir"
        },
        {
          description: "Ignore existing patch files when patching",
          name: "--ignore-existing"
        }
      ]
    }],
    url: docsUrl("patch"),
    usages: ["pnpm patch <pkg name>@<version>"]
  });
}
async function handler43(opts2, params) {
  if (opts2.editDir && fs96.existsSync(opts2.editDir) && fs96.readdirSync(opts2.editDir).length > 0) {
    throw new PnpmError("PATCH_EDIT_DIR_EXISTS", `The target directory already exists: '${opts2.editDir}'`);
  }
  if (!params[0]) {
    throw new PnpmError("MISSING_PACKAGE_NAME", "`pnpm patch` requires the package name");
  }
  const lockfileDir = opts2.lockfileDir ?? opts2.dir ?? process.cwd();
  const patchedDep = await getPatchedDependency(params[0], {
    lockfileDir,
    modulesDir: opts2.modulesDir,
    virtualStoreDir: opts2.virtualStoreDir
  });
  const quote2 = (0, import_is_windows9.default)() ? '"' : "'";
  const modulesDir = path185.join(lockfileDir, opts2.modulesDir ?? "node_modules");
  const editDir = opts2.editDir ? path185.resolve(opts2.dir, opts2.editDir) : getEditDirPath(params[0], patchedDep, { modulesDir });
  if (fs96.existsSync(editDir) && fs96.readdirSync(editDir).length !== 0) {
    throw new PnpmError("EDIT_DIR_NOT_EMPTY", `The directory ${editDir} is not empty`, {
      hint: "Either run `pnpm patch-commit " + quote2 + editDir + quote2 + "` to commit or delete it then run `pnpm patch` to recreate it"
    });
  }
  await writePackage(patchedDep, editDir, opts2);
  writeEditDirState({
    editDir,
    modulesDir,
    patchedPkg: params[0],
    applyToAll: patchedDep.applyToAll
  });
  if (!opts2.ignoreExisting && opts2.patchedDependencies) {
    tryPatchWithExistingPatchFile({
      patchedDep,
      patchedDir: editDir,
      patchedDependencies: opts2.patchedDependencies,
      lockfileDir
    });
  }
  return `Patch: You can now edit the package at:

  ${terminalLink(source_default.blue(editDir), "file://" + editDir, { fallback: false })}

To commit your changes, run:

  ${source_default.green(`pnpm patch-commit ${quote2}${editDir}${quote2}`)}

`;
}
function tryPatchWithExistingPatchFile({ patchedDep: { applyToAll, alias, bareSpecifier }, patchedDir, patchedDependencies, lockfileDir }) {
  if (!alias)
    return;
  let existingPatchFile;
  if (bareSpecifier) {
    existingPatchFile = patchedDependencies[`${alias}@${bareSpecifier}`];
  }
  if (!existingPatchFile && applyToAll) {
    existingPatchFile = patchedDependencies[alias];
  }
  if (!existingPatchFile) {
    return;
  }
  const existingPatchFilePath = path185.resolve(lockfileDir, existingPatchFile);
  if (!fs96.existsSync(existingPatchFilePath)) {
    throw new PnpmError("PATCH_FILE_NOT_FOUND", `Unable to find patch file ${existingPatchFilePath}`);
  }
  applyPatchToDir({ patchedDir, patchFilePath: existingPatchFilePath });
}
var import_is_windows9, shorthands15, commandNames43, recursiveByDefault10;
var init_patch = __esm({
  "../patching/commands/lib/patch.js"() {
    "use strict";
    init_lib29();
    init_lib61();
    init_lib2();
    init_lib109();
    init_source2();
    import_is_windows9 = __toESM(require_is_windows(), 1);
    init_es();
    init_lib63();
    init_terminal_link();
    init_getEditDirPath();
    init_getPatchedDependency();
    init_stateFile();
    init_writePackage();
    shorthands15 = {
      d: "--edit-dir"
    };
    commandNames43 = ["patch"];
    recursiveByDefault10 = true;
  }
});

// ../patching/commands/lib/updatePatchedDependencies.js
import path186 from "node:path";
async function updatePatchedDependencies(patchedDependencies, opts2) {
  const workspaceDir = opts2.workspaceDir ?? opts2.rootProjectManifestDir;
  for (const [patchName, patchPath] of Object.entries(patchedDependencies)) {
    if (path186.isAbsolute(patchPath)) {
      patchedDependencies[patchName] = (0, import_normalize_path13.default)(path186.relative(workspaceDir, patchPath));
    }
  }
  await writeSettings({
    ...opts2,
    workspaceDir,
    updatedSettings: {
      patchedDependencies: Object.keys(patchedDependencies).length ? patchedDependencies : void 0
    }
  });
}
var import_normalize_path13;
var init_updatePatchedDependencies = __esm({
  "../patching/commands/lib/updatePatchedDependencies.js"() {
    "use strict";
    init_lib100();
    import_normalize_path13 = __toESM(require_normalize_path(), 1);
  }
});

// ../patching/commands/lib/patchCommit.js
var patchCommit_exports = {};
__export(patchCommit_exports, {
  cliOptionsTypes: () => cliOptionsTypes43,
  commandNames: () => commandNames44,
  handler: () => handler44,
  help: () => help44,
  rcOptionsTypes: () => rcOptionsTypes44,
  recursiveByDefault: () => recursiveByDefault11
});
import fs97 from "node:fs";
import path187 from "node:path";
function cliOptionsTypes43() {
  return pick_default(["patches-dir"], types2);
}
function help44() {
  return renderHelp({
    description: "Generate a patch out of a directory",
    descriptionLists: [{
      title: "Options",
      list: [
        {
          description: "The generated patch file will be saved to this directory",
          name: "--patches-dir"
        }
      ]
    }],
    url: docsUrl("patch-commit"),
    usages: ["pnpm patch-commit <patchDir>"]
  });
}
async function handler44(opts2, params) {
  const userDir = params[0];
  const lockfileDir = opts2.lockfileDir ?? opts2.dir ?? process.cwd();
  const patchesDirName = (0, import_normalize_path14.default)(path187.normalize(opts2.patchesDir ?? "patches"));
  const patchesDir = path187.join(lockfileDir, patchesDirName);
  const patchedPkgManifest = await readPackageJsonFromDir(userDir);
  const editDir = path187.resolve(opts2.dir, userDir);
  const stateValue = readEditDirState({
    editDir,
    modulesDir: path187.join(lockfileDir, opts2.modulesDir ?? "node_modules")
  });
  if (!stateValue) {
    throw new PnpmError("INVALID_PATCH_DIR", `${userDir} is not a valid patch directory`, {
      hint: "A valid patch directory should be created by `pnpm patch`"
    });
  }
  const { applyToAll } = stateValue;
  const nameAndVersion = `${patchedPkgManifest.name}@${patchedPkgManifest.version}`;
  const patchKey = applyToAll ? patchedPkgManifest.name : nameAndVersion;
  let gitTarballUrl;
  if (!applyToAll) {
    gitTarballUrl = await getGitTarballUrlFromLockfile({
      alias: patchedPkgManifest.name,
      bareSpecifier: patchedPkgManifest.version || void 0
    }, {
      lockfileDir,
      modulesDir: opts2.modulesDir,
      virtualStoreDir: opts2.virtualStoreDir
    });
  }
  const patchedPkg = parseWantedDependency(gitTarballUrl ? `${patchedPkgManifest.name}@${gitTarballUrl}` : nameAndVersion);
  const patchedPkgDir = await preparePkgFilesForDiff(userDir);
  const patchContent = await getPatchContent({
    patchedPkg,
    patchedPkgDir,
    tmpName: createShortHash(editDir)
  }, opts2);
  if (patchedPkgDir !== userDir) {
    fs97.rmSync(patchedPkgDir, { recursive: true });
  }
  if (!patchContent.length) {
    return `No changes were found to the following directory: ${userDir}`;
  }
  await fs97.promises.mkdir(patchesDir, { recursive: true });
  const patchFileName = patchKey.replace("/", "__");
  await fs97.promises.writeFile(path187.join(patchesDir, `${patchFileName}.patch`), patchContent, "utf8");
  const patchedDependencies = {
    ...opts2.patchedDependencies,
    [patchKey]: `${patchesDirName}/${patchFileName}.patch`
  };
  await updatePatchedDependencies(patchedDependencies, {
    ...opts2,
    workspaceDir: opts2.workspaceDir ?? opts2.rootProjectManifestDir
  });
  return install_exports.handler({
    ...opts2,
    patchedDependencies,
    frozenLockfile: false
  });
}
async function getPatchContent(ctx, opts2) {
  const storeDir = await getStorePath({
    pkgRoot: opts2.dir,
    storePath: opts2.storeDir,
    pnpmHomeDir: opts2.pnpmHomeDir
  });
  const srcDir = path187.join(storeDir, "tmp", "patch-commit", ctx.tmpName);
  await writePackage(ctx.patchedPkg, srcDir, opts2);
  const patchContent = await diffFolders(srcDir, ctx.patchedPkgDir);
  try {
    fs97.rmSync(srcDir, { recursive: true });
  } catch (error) {
    globalWarn(`Failed to clean up temporary directory at ${srcDir} with error: ${String(error)}`);
  }
  return patchContent;
}
async function diffFolders(folderA, folderB) {
  const folderAN = folderA.replace(/\\/g, "/");
  const folderBN = folderB.replace(/\\/g, "/");
  let stdout;
  let stderr;
  try {
    const result2 = await safeExeca("git", ["-c", "core.safecrlf=false", "diff", "--src-prefix=a/", "--dst-prefix=b/", "--ignore-cr-at-eol", "--irreversible-delete", "--full-index", "--no-index", "--text", "--no-ext-diff", "--no-color", folderAN, folderBN], {
      cwd: process.cwd(),
      env: {
        ...process.env,
        // #region Predictable output
        // These variables aim to ignore the global git config so we get predictable output
        // https://git-scm.com/docs/git#Documentation/git.txt-codeGITCONFIGNOSYSTEMcode
        GIT_CONFIG_NOSYSTEM: "1",
        // Redirect the global git config to /dev/null instead of setting
        // HOME to an empty string. An empty HOME causes git to resolve '~' as
        // '/' (root), which triggers a "Permission denied" warning when git
        // tries to access '/.config/git/attributes', making pnpm throw an
        // error because any stderr output is treated as a failure.
        // We do not set XDG_CONFIG_HOME to avoid the same issue: an empty
        // value would make git resolve paths like /git/config and /git/attributes.
        // We use '/dev/null' literally instead of os.devNull because on Windows
        // os.devNull is '\\.\nul', which git cannot open as a config file path
        // (fatal: unable to access '\\.\nul': Invalid argument). Git for Windows
        // translates '/dev/null' correctly via its MSYS2 layer.
        GIT_CONFIG_GLOBAL: "/dev/null"
        // #endregion
      },
      stripFinalNewline: false
    });
    stdout = result2.stdout;
    stderr = result2.stderr;
  } catch (err) {
    stdout = err.stdout;
    stderr = err.stderr;
  }
  if (stderr.length > 0)
    throw new Error(`Unable to diff directories. Make sure you have a recent version of 'git' available in PATH.
The following error was reported by 'git':
${stderr}`);
  return stdout.replace(new RegExp(`(a|b)(${escapeStringRegexp(`/${removeTrailingAndLeadingSlash(folderAN)}/`)})`, "g"), "$1/").replace(new RegExp(`(a|b)${escapeStringRegexp(`/${removeTrailingAndLeadingSlash(folderBN)}/`)}`, "g"), "$1/").replace(new RegExp(escapeStringRegexp(`${folderAN}/`), "g"), "").replace(new RegExp(escapeStringRegexp(`${folderBN}/`), "g"), "").replace(/\n\\ No newline at end of file\n$/, "\n").replace(/^diff --git a\/.*\.DS_Store b\/.*\.DS_Store[\s\S]+?(?=^diff --git)/gm, "").replace(/^diff --git a\/.*\.DS_Store b\/.*\.DS_Store[\s\S]*$/gm, "");
}
function removeTrailingAndLeadingSlash(p) {
  if (p[0] === "/" || p.endsWith("/")) {
    return p.replace(/^\/|\/$/g, "");
  }
  return p;
}
async function preparePkgFilesForDiff(src2) {
  const files = Array.from(new Set((await packlist(src2)).map((f) => path187.join(f))));
  if (await areAllFilesInPkg(files, src2)) {
    return src2;
  }
  const dest = `${src2}_tmp`;
  await makeEmptyDir(dest);
  await Promise.all(files.map(async (file) => {
    const srcFile = path187.join(src2, file);
    const destFile = path187.join(dest, file);
    const destDir = path187.dirname(destFile);
    await fs97.promises.mkdir(destDir, { recursive: true });
    await fs97.promises.link(srcFile, destFile);
  }));
  return dest;
}
async function areAllFilesInPkg(files, basePath) {
  const allFiles = await glob("**", {
    cwd: basePath,
    expandDirectories: false
  });
  return equals_default(allFiles.sort(), files.sort());
}
async function getGitTarballUrlFromLockfile(dep, opts2) {
  const { preferredVersions } = await getVersionsFromLockfile(dep, opts2);
  return preferredVersions[0]?.gitTarballUrl;
}
var import_normalize_path14, rcOptionsTypes44, commandNames44, recursiveByDefault11;
var init_patchCommit = __esm({
  "../patching/commands/lib/patchCommit.js"() {
    "use strict";
    init_lib29();
    init_lib61();
    init_lib20();
    init_lib2();
    init_lib37();
    init_lib138();
    init_lib3();
    init_lib39();
    init_lib96();
    init_lib89();
    init_escape_string_regexp();
    init_make_empty_dir();
    import_normalize_path14 = __toESM(require_normalize_path(), 1);
    init_es();
    init_lib63();
    init_lib26();
    init_dist3();
    init_getPatchedDependency();
    init_stateFile();
    init_updatePatchedDependencies();
    init_writePackage();
    rcOptionsTypes44 = cliOptionsTypes43;
    commandNames44 = ["patch-commit"];
    recursiveByDefault11 = true;
  }
});

// ../patching/commands/lib/patchRemove.js
var patchRemove_exports = {};
__export(patchRemove_exports, {
  cliOptionsTypes: () => cliOptionsTypes44,
  commandNames: () => commandNames45,
  handler: () => handler45,
  help: () => help45,
  rcOptionsTypes: () => rcOptionsTypes45,
  recursiveByDefault: () => recursiveByDefault12
});
import fs98 from "node:fs/promises";
import path188 from "node:path";
function rcOptionsTypes45() {
  return pick_default([], types2);
}
function cliOptionsTypes44() {
  return { ...rcOptionsTypes45() };
}
function help45() {
  return renderHelp({
    description: "Remove existing patch files",
    url: docsUrl("patch-remove"),
    usages: ["pnpm patch-remove [pkg...]"]
  });
}
async function handler45(opts2, params) {
  let patchesToRemove = params;
  const patchedDependencies = opts2.patchedDependencies ?? {};
  if (!params.length) {
    const allPatches = Object.keys(patchedDependencies);
    if (allPatches.length) {
      ({ patches: patchesToRemove } = await import_enquirer9.default.prompt({
        type: "multiselect",
        name: "patches",
        message: "Select the patch to be removed",
        choices: allPatches,
        validate(value) {
          return value.length === 0 ? "Select at least one option." : true;
        }
      }));
    }
  }
  if (!patchesToRemove.length) {
    throw new PnpmError("NO_PATCHES_TO_REMOVE", "There are no patches that need to be removed");
  }
  for (const patch of patchesToRemove) {
    if (!Object.hasOwn(patchedDependencies, patch)) {
      throw new PnpmError("PATCH_NOT_FOUND", `Patch "${patch}" not found in patched dependencies`);
    }
  }
  const patchesDirs = /* @__PURE__ */ new Set();
  await Promise.all(patchesToRemove.map(async (patch) => {
    if (Object.hasOwn(patchedDependencies, patch)) {
      const patchFile = patchedDependencies[patch];
      patchesDirs.add(path188.dirname(patchFile));
      await fs98.rm(patchFile, { force: true });
      delete patchedDependencies[patch];
    }
  }));
  await Promise.all(Array.from(patchesDirs).map(async (dir) => {
    try {
      const files = await fs98.readdir(dir);
      if (!files.length) {
        await fs98.rmdir(dir);
      }
    } catch {
    }
  }));
  await updatePatchedDependencies(patchedDependencies, {
    ...opts2,
    workspaceDir: opts2.workspaceDir ?? opts2.rootProjectManifestDir
  });
  return install_exports.handler(opts2);
}
var import_enquirer9, commandNames45, recursiveByDefault12;
var init_patchRemove = __esm({
  "../patching/commands/lib/patchRemove.js"() {
    "use strict";
    init_lib29();
    init_lib61();
    init_lib2();
    init_lib138();
    import_enquirer9 = __toESM(require_enquirer(), 1);
    init_es();
    init_lib63();
    init_updatePatchedDependencies();
    commandNames45 = ["patch-remove"];
    recursiveByDefault12 = true;
  }
});

// ../patching/commands/lib/index.js
var init_lib162 = __esm({
  "../patching/commands/lib/index.js"() {
    "use strict";
    init_patch();
    init_patchCommit();
    init_patchRemove();
    init_patch();
    init_patchRemove();
  }
});

// ../pkg-manifest/commands/lib/pkg.js
var pkg_exports = {};
__export(pkg_exports, {
  cliOptionsTypes: () => cliOptionsTypes45,
  commandNames: () => commandNames46,
  handler: () => handler46,
  help: () => help46,
  rcOptionsTypes: () => rcOptionsTypes46
});
import path189 from "node:path";
function cliOptionsTypes45() {
  const types3 = types2;
  return {
    dir: types3["dir"],
    json: Boolean,
    recursive: Boolean
  };
}
async function handler46(opts2, params) {
  if (params.length === 0) {
    throw new PnpmError("PKG_MISSING_SUBCOMMAND", "Missing subcommand", {
      hint: help46()
    });
  }
  if (params[0] === "--help" || params[0] === "-h") {
    return help46();
  }
  const [subcmd, ...args] = params;
  if (opts2.recursive) {
    return handleRecursiveCommand(opts2, subcmd, args);
  }
  return runSubcommand(opts2, subcmd, args);
}
async function runSubcommand(opts2, subcmd, args) {
  switch (subcmd) {
    case "get":
      return pkgGet(opts2, args);
    case "set":
      return pkgSet(opts2, args);
    case "delete":
      return pkgDelete(opts2, args);
    case "fix":
      return pkgFix(opts2);
    default:
      throw new PnpmError("PKG_UNKNOWN_SUBCOMMAND", `Unknown subcommand "${subcmd}"`, {
        hint: help46()
      });
  }
}
async function handleRecursiveCommand(opts2, subcmd, args) {
  const workspaceDir = opts2.workspaceDir;
  if (!workspaceDir) {
    throw new PnpmError("PKG_RECURSIVE_NO_ROOT", "Cannot run recursively outside of a workspace");
  }
  const selectedProjects = opts2.selectedProjectsGraph == null ? [] : Object.values(opts2.selectedProjectsGraph);
  if (selectedProjects.length === 0) {
    throw new PnpmError("PKG_RECURSIVE_NO_PACKAGES", "No workspace packages were selected");
  }
  if (subcmd === "get") {
    const entries = await Promise.all(selectedProjects.map(async ({ package: pkg }) => {
      const manifest = await readProjectManifestOnly2(pkg.rootDir);
      const pkgName = String(manifest.name ?? path189.relative(workspaceDir, pkg.rootDir));
      return [pkgName, selectFromManifest(manifest, args)];
    }));
    return JSON.stringify(Object.fromEntries(entries), void 0, 2);
  }
  await Promise.all(selectedProjects.map(({ package: pkg }) => runSubcommand({ ...opts2, dir: pkg.rootDir }, subcmd, args)));
}
async function pkgGet(opts2, args) {
  const manifest = await readProjectManifestOnly2(opts2.dir);
  if (args.length === 1) {
    const value = getObjectValueByPropertyPathString(manifest, args[0]);
    if (value === void 0)
      return "";
    if (opts2.json)
      return JSON.stringify(value, void 0, 2);
    return typeof value === "string" ? value : JSON.stringify(value, void 0, 2);
  }
  return JSON.stringify(selectFromManifest(manifest, args), void 0, 2);
}
function selectFromManifest(manifest, args) {
  if (args.length === 0)
    return manifest;
  const result2 = {};
  for (const key of args) {
    result2[key] = getObjectValueByPropertyPathString(manifest, key);
  }
  return result2;
}
async function pkgSet(opts2, args) {
  if (args.length === 0) {
    throw new PnpmError("PKG_SET_MISSING_ARGS", "Missing key=value pairs", {
      hint: help46()
    });
  }
  const { manifest, writeProjectManifest: writeProjectManifest2 } = await readProjectManifest2(opts2.dir);
  for (const arg of args) {
    const eqIndex = arg.indexOf("=");
    if (eqIndex === -1) {
      throw new PnpmError("PKG_SET_INVALID_ARG", `Invalid argument "${arg}". Expected key=value format`, {
        hint: "Example: pnpm pkg set name=my-package"
      });
    }
    const key = arg.slice(0, eqIndex);
    let value = arg.slice(eqIndex + 1);
    if (opts2.json) {
      try {
        value = JSON.parse(value);
      } catch {
        throw new PnpmError("PKG_SET_JSON_PARSE", `Failed to parse value as JSON: "${value}"`);
      }
    }
    setObjectValueByPropertyPathString(manifest, key, value);
  }
  await writeProjectManifest2(manifest);
}
async function pkgDelete(opts2, args) {
  if (args.length === 0) {
    throw new PnpmError("PKG_DELETE_MISSING_ARGS", "Missing keys to delete", {
      hint: help46()
    });
  }
  const { manifest, writeProjectManifest: writeProjectManifest2 } = await readProjectManifest2(opts2.dir);
  for (const key of args) {
    deleteObjectValueByPropertyPathString(manifest, key);
  }
  await writeProjectManifest2(manifest);
}
async function pkgFix(opts2) {
  const { manifest, writeProjectManifest: writeProjectManifest2 } = await readProjectManifest2(opts2.dir);
  const m = manifest;
  if ("name" in m && typeof m.name !== "string") {
    delete m.name;
  }
  if ("version" in m && typeof m.version !== "string") {
    delete m.version;
  }
  for (const field of ["dependencies", "devDependencies", "optionalDependencies", "peerDependencies", "scripts"]) {
    if (field in m && !isPlainObject3(m[field])) {
      delete m[field];
    }
  }
  if ("bin" in m && typeof m.bin !== "string" && !isPlainObject3(m.bin)) {
    delete m.bin;
  }
  await writeProjectManifest2(manifest);
}
function isPlainObject3(value) {
  return typeof value === "object" && value !== null && !Array.isArray(value);
}
function help46() {
  return renderHelp({
    description: "Manages your package.json",
    descriptionLists: [
      {
        title: "Commands",
        list: [
          {
            description: "Retrieves a value from package.json",
            name: "get [<key> [<key> ...]]"
          },
          {
            description: "Sets a value in package.json",
            name: "set <key>=<value> [<key>=<value> ...]"
          },
          {
            description: "Deletes a key from package.json",
            name: "delete <key> [<key> ...]"
          },
          {
            description: "Auto corrects common errors in package.json",
            name: "fix"
          }
        ]
      },
      {
        title: "Options",
        list: [
          {
            description: "When setting, parse the value as JSON. When getting a single key, return its JSON-encoded form instead of the raw value",
            name: "--json"
          },
          {
            description: "Run on every workspace project or every project selected by a filter",
            name: "--recursive",
            shortAlias: "-r"
          }
        ]
      }
    ],
    url: docsUrl("pkg"),
    usages: [
      "pnpm pkg get [<key> [<key> ...]]",
      "pnpm pkg set <key>=<value> [<key>=<value> ...]",
      "pnpm pkg delete <key> [<key> ...]",
      "pnpm pkg fix",
      "pnpm pkg set <key>=<value> --json",
      "pnpm -r pkg get name",
      "pnpm --filter <selector> pkg get name",
      "pnpm -r pkg set version=1.0.0"
    ]
  });
}
var rcOptionsTypes46, commandNames46;
var init_pkg = __esm({
  "../pkg-manifest/commands/lib/pkg.js"() {
    "use strict";
    init_lib29();
    init_lib61();
    init_lib2();
    init_lib144();
    init_lib63();
    rcOptionsTypes46 = cliOptionsTypes45;
    commandNames46 = ["pkg"];
  }
});

// ../pkg-manifest/commands/lib/setScript.js
var setScript_exports = {};
__export(setScript_exports, {
  cliOptionsTypes: () => cliOptionsTypes46,
  commandNames: () => commandNames47,
  handler: () => handler47,
  help: () => help47,
  rcOptionsTypes: () => rcOptionsTypes47
});
function cliOptionsTypes46() {
  const types3 = types2;
  return { dir: types3["dir"] };
}
async function handler47(opts2, params) {
  if (params.length < 2) {
    throw new PnpmError("SET_SCRIPT_MISSING_ARGS", "Missing script name or command", {
      hint: help47()
    });
  }
  const [name, ...commandParts] = params;
  const command = commandParts.join(" ");
  const { manifest, writeProjectManifest: writeProjectManifest2 } = await readProjectManifest2(opts2.dir);
  setObjectValueByPropertyPath(manifest, ["scripts", name], command);
  await writeProjectManifest2(manifest);
}
function help47() {
  return renderHelp({
    description: "Set a script in package.json",
    usages: ["pnpm set-script <name> <command>"],
    url: docsUrl("set-script")
  });
}
var rcOptionsTypes47, commandNames47;
var init_setScript = __esm({
  "../pkg-manifest/commands/lib/setScript.js"() {
    "use strict";
    init_lib29();
    init_lib61();
    init_lib2();
    init_lib144();
    init_lib63();
    rcOptionsTypes47 = cliOptionsTypes46;
    commandNames47 = ["set-script", "ss"];
  }
});

// ../pkg-manifest/commands/lib/index.js
var init_lib163 = __esm({
  "../pkg-manifest/commands/lib/index.js"() {
    "use strict";
    init_pkg();
    init_setScript();
  }
});

// ../registry-access/commands/lib/common.js
function rcOptionsTypes48() {
  return pick_default([
    "registry"
  ], types2);
}
function parsePackageSpec(spec) {
  let parsed;
  try {
    parsed = (0, import_npm_package_arg5.default)(spec);
  } catch {
    throw new PnpmError("INVALID_PACKAGE_SPEC", `Invalid package spec: ${spec}`);
  }
  if (!parsed.name || !parsed.escapedName) {
    throw new PnpmError("INVALID_PACKAGE_SPEC", `Invalid package spec: ${spec}`);
  }
  const versionRange = parsed.rawSpec || void 0;
  return { name: parsed.name, escapedName: parsed.escapedName, versionRange };
}
function normalizeRegistryUrl7(registryUrl) {
  return registryUrl.endsWith("/") ? registryUrl : `${registryUrl}/`;
}
var import_npm_package_arg5;
var init_common2 = __esm({
  "../registry-access/commands/lib/common.js"() {
    "use strict";
    init_lib61();
    init_lib2();
    import_npm_package_arg5 = __toESM(require_npa(), 1);
    init_es();
  }
});

// ../registry-access/commands/lib/deprecation/common.js
function cliOptionsTypes47() {
  return {
    ...rcOptionsTypes48(),
    otp: String
  };
}
async function updateDeprecation(opts2, { deprecated, packageName, versionRange }) {
  const registryUrl = pickRegistryForPackage(opts2.registries ?? { default: "https://registry.npmjs.org/" }, packageName);
  const getAuthHeader = createGetAuthHeaderByURI(opts2.configByUri ?? {}, registryUrl);
  const authHeader = getAuthHeader(registryUrl);
  const packageUrl = new URL((0, import_npm_package_arg6.default)(packageName).escapedName, registryUrl).href;
  const fetchFromRegistry = createFetchFromRegistry(opts2);
  const getResponse = await fetchFromRegistry(packageUrl, {
    authHeaderValue: authHeader,
    fullMetadata: true
  });
  if (!getResponse.ok) {
    if (getResponse.status === 404) {
      throw new PnpmError("PACKAGE_NOT_FOUND", `Package "${packageName}" not found in registry`);
    }
    throw new PnpmError("REGISTRY_ERROR", `Failed to fetch package info: ${getResponse.status} ${getResponse.statusText}`);
  }
  const pkg = await getResponse.json();
  if (!pkg.versions || Object.keys(pkg.versions).length === 0) {
    throw new PnpmError("NO_VERSIONS", `Package "${packageName}" has no versions`);
  }
  const versionsToUpdate = versionRange ? getVersionsMatchingRange(pkg.versions, versionRange) : Object.keys(pkg.versions);
  if (versionsToUpdate.length === 0) {
    throw new PnpmError("NO_MATCHING_VERSIONS", `No versions match "${versionRange}"`);
  }
  if (deprecated == null) {
    const deprecatedVersions = versionsToUpdate.filter((ver) => pkg.versions[ver].deprecated);
    if (deprecatedVersions.length === 0) {
      throw new PnpmError("NOT_DEPRECATED", `No deprecated versions found in "${packageName}"${versionRange ? ` matching "${versionRange}"` : ""}`);
    }
  }
  for (const ver of versionsToUpdate) {
    pkg.versions[ver].deprecated = deprecated ?? "";
  }
  const otp = opts2.cliOptions?.otp;
  const putResponse = await fetchFromRegistry(packageUrl, {
    authHeaderValue: authHeader,
    method: "PUT",
    headers: {
      "content-type": "application/json",
      ...otp ? { "npm-otp": otp } : {}
    },
    body: JSON.stringify(pkg)
  });
  if (!putResponse.ok) {
    const verb = deprecated != null ? "deprecate" : "undeprecate";
    const errorBody = await putResponse.text();
    if (putResponse.status === 401) {
      throw new PnpmError("UNAUTHORIZED", `You must be logged in to ${verb} packages. ${errorBody}`);
    }
    if (putResponse.status === 403) {
      throw new PnpmError("FORBIDDEN", `You do not have permission to ${verb} this package. ${errorBody}`);
    }
    throw new PnpmError("REGISTRY_ERROR", `Failed to ${verb} package: ${putResponse.status} ${putResponse.statusText}. ${errorBody}`);
  }
  return `Successfully ${deprecated != null ? "deprecated" : "un-deprecated"} ${versionsToUpdate.length} version(s) of ${packageName}`;
}
function getVersionsMatchingRange(versions, range) {
  return Object.keys(versions).filter((v) => import_semver50.default.satisfies(v, range));
}
var import_npm_package_arg6, import_semver50;
var init_common3 = __esm({
  "../registry-access/commands/lib/deprecation/common.js"() {
    "use strict";
    init_lib15();
    init_lib2();
    init_lib48();
    init_lib49();
    import_npm_package_arg6 = __toESM(require_npa(), 1);
    import_semver50 = __toESM(require_semver2(), 1);
    init_common2();
  }
});

// ../registry-access/commands/lib/deprecation/deprecate.js
var deprecate_exports = {};
__export(deprecate_exports, {
  cliOptionsTypes: () => cliOptionsTypes47,
  commandNames: () => commandNames48,
  handler: () => handler48,
  help: () => help48,
  rcOptionsTypes: () => rcOptionsTypes48
});
function help48() {
  return renderHelp({
    description: "Deprecates a version of a package in the registry.",
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: "The base URL of the npm registry.",
            name: "--registry <url>"
          },
          {
            description: "When publishing packages that require two-factor authentication, this option can specify a one-time password.",
            name: "--otp"
          }
        ]
      }
    ],
    url: docsUrl("deprecate"),
    usages: [
      "pnpm deprecate <package>[@<version>] <message>"
    ]
  });
}
async function handler48(opts2, params) {
  if (params.length === 0) {
    throw new PnpmError("DEPRECATE_REQUIRED", "Package name is required");
  }
  const packageSpec = params[0];
  const deprecated = params.slice(1).join(" ");
  if (deprecated === "") {
    throw new PnpmError("DEPRECATE_MESSAGE_REQUIRED", "Deprecation message is required. To un-deprecate, use the undeprecate command.");
  }
  const { name, versionRange } = parsePackageSpec(packageSpec);
  return updateDeprecation(opts2, { deprecated, packageName: name, versionRange });
}
var commandNames48;
var init_deprecate = __esm({
  "../registry-access/commands/lib/deprecation/deprecate.js"() {
    "use strict";
    init_lib29();
    init_lib2();
    init_lib63();
    init_common3();
    commandNames48 = ["deprecate"];
  }
});

// ../registry-access/commands/lib/deprecation/undeprecate.js
var undeprecate_exports = {};
__export(undeprecate_exports, {
  cliOptionsTypes: () => cliOptionsTypes47,
  commandNames: () => commandNames49,
  handler: () => handler49,
  help: () => help49,
  rcOptionsTypes: () => rcOptionsTypes48
});
function help49() {
  return renderHelp({
    description: "Removes deprecation from a version of a package in the registry. Only works on already deprecated versions.",
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: "The base URL of the npm registry.",
            name: "--registry <url>"
          },
          {
            description: "When publishing packages that require two-factor authentication, this option can specify a one-time password.",
            name: "--otp"
          }
        ]
      }
    ],
    url: docsUrl("undeprecate"),
    usages: [
      "pnpm undeprecate <package>[@<version>]"
    ]
  });
}
async function handler49(opts2, params) {
  if (params.length === 0) {
    throw new PnpmError("UNDEPRECATE_REQUIRED", "Package name is required");
  }
  if (params.length > 1) {
    throw new PnpmError("UNDEPRECATE_NO_MESSAGE", "The undeprecate command does not accept a message.");
  }
  const { name, versionRange } = parsePackageSpec(params[0]);
  return updateDeprecation(opts2, { deprecated: void 0, packageName: name, versionRange });
}
var commandNames49;
var init_undeprecate = __esm({
  "../registry-access/commands/lib/deprecation/undeprecate.js"() {
    "use strict";
    init_lib29();
    init_lib2();
    init_lib63();
    init_common3();
    commandNames49 = ["undeprecate"];
  }
});

// ../registry-access/commands/lib/distTag.js
var distTag_exports = {};
__export(distTag_exports, {
  cliOptionsTypes: () => cliOptionsTypes48,
  commandNames: () => commandNames50,
  handler: () => handler50,
  help: () => help50,
  rcOptionsTypes: () => rcOptionsTypes48
});
function cliOptionsTypes48() {
  return {
    ...rcOptionsTypes48(),
    otp: String
  };
}
function help50() {
  return renderHelp({
    description: "Manages distribution tags for a package.",
    descriptionLists: [
      {
        title: "Commands",
        list: [
          {
            description: "List all dist-tags for a package. Default if no subcommand is given.",
            name: "ls"
          },
          {
            description: "Add a dist-tag to a specific version of a package.",
            name: "add"
          },
          {
            description: "Remove a dist-tag from a package.",
            name: "rm"
          }
        ]
      },
      {
        title: "Options",
        list: [
          {
            description: "The base URL of the npm registry.",
            name: "--registry <url>"
          },
          {
            description: "When publishing packages that require two-factor authentication, this option can specify a one-time password.",
            name: "--otp"
          }
        ]
      }
    ],
    url: docsUrl("dist-tag"),
    usages: [
      "pnpm dist-tag ls [<package>]",
      "pnpm dist-tag add <package>@<version> [<tag>]",
      "pnpm dist-tag rm <package> <tag>"
    ]
  });
}
async function handler50(opts2, params) {
  const subcommand = params[0];
  if (subcommand === "add") {
    return distTagAdd(opts2, params.slice(1));
  }
  if (subcommand === "rm") {
    return distTagRm(opts2, params.slice(1));
  }
  if (subcommand === "ls" || subcommand === "list") {
    return distTagLs(opts2, params.slice(1));
  }
  return distTagLs(opts2, params);
}
async function distTagLs(opts2, params) {
  if (params.length === 0) {
    throw new PnpmError("DIST_TAG_LS_PACKAGE_REQUIRED", "Package name is required");
  }
  const packageName = params[0];
  const registryUrl = pickRegistryForPackage(opts2.registries ?? { default: "https://registry.npmjs.org/" }, packageName);
  const authHeader = getAuthHeaderForRegistry(opts2.configByUri, registryUrl);
  const fetchFromRegistry = createFetchFromRegistry(opts2);
  const distTags = await fetchDistTags(packageName, registryUrl, fetchFromRegistry, authHeader);
  const lines = [];
  for (const [tag, version2] of Object.entries(distTags).sort(([a2], [b]) => a2.localeCompare(b))) {
    lines.push(`${tag}: ${version2}`);
  }
  return lines.join("\n");
}
async function distTagAdd(opts2, params) {
  if (params.length === 0) {
    throw new PnpmError("DIST_TAG_ADD_SPEC_REQUIRED", "Package name and version are required (e.g., pnpm dist-tag add pkg@1.0.0 latest)");
  }
  const { name: packageName, versionRange: version2 } = parsePackageSpec(params[0]);
  if (!version2) {
    throw new PnpmError("DIST_TAG_ADD_VERSION_REQUIRED", "Version is required (e.g., pnpm dist-tag add pkg@1.0.0 latest)");
  }
  if (!import_semver51.default.valid(version2)) {
    throw new PnpmError("DIST_TAG_ADD_INVALID_VERSION", `Version must be an exact semver version, got "${version2}"`);
  }
  const tag = params[1] ?? "latest";
  const registryUrl = pickRegistryForPackage(opts2.registries ?? { default: "https://registry.npmjs.org/" }, packageName);
  const authHeader = getAuthHeaderForRegistry(opts2.configByUri, registryUrl);
  const fetchFromRegistry = createFetchFromRegistry(opts2);
  const otp = opts2.cliOptions?.otp;
  const distTagUrl = getDistTagUrl(packageName, registryUrl, tag);
  const response = await fetchFromRegistry(distTagUrl, {
    authHeaderValue: authHeader,
    method: "PUT",
    headers: {
      "content-type": "application/json",
      ...otp ? { "npm-otp": otp } : {}
    },
    body: JSON.stringify(version2)
  });
  if (!response.ok) {
    await throwRegistryError(response, `set dist-tag "${tag}" on`);
  }
  return `+${tag}: ${packageName}@${version2}`;
}
async function distTagRm(opts2, params) {
  if (params.length < 2) {
    throw new PnpmError("DIST_TAG_RM_ARGS_REQUIRED", "Package name and tag are required (e.g., pnpm dist-tag rm pkg tag)");
  }
  const packageName = params[0];
  const tag = params[1];
  if (tag === "latest") {
    throw new PnpmError("DIST_TAG_RM_LATEST", 'Removing the "latest" dist-tag is not allowed');
  }
  const registryUrl = pickRegistryForPackage(opts2.registries ?? { default: "https://registry.npmjs.org/" }, packageName);
  const authHeader = getAuthHeaderForRegistry(opts2.configByUri, registryUrl);
  const fetchFromRegistry = createFetchFromRegistry(opts2);
  const otp = opts2.cliOptions?.otp;
  const distTags = await fetchDistTags(packageName, registryUrl, fetchFromRegistry, authHeader);
  if (!(tag in distTags)) {
    throw new PnpmError("DIST_TAG_NOT_FOUND", `dist-tag "${tag}" is not set on package "${packageName}"`);
  }
  const distTagUrl = getDistTagUrl(packageName, registryUrl, tag);
  const response = await fetchFromRegistry(distTagUrl, {
    authHeaderValue: authHeader,
    method: "DELETE",
    headers: {
      ...otp ? { "npm-otp": otp } : {}
    }
  });
  if (!response.ok) {
    await throwRegistryError(response, `remove dist-tag "${tag}" from`);
  }
  return `-${tag}: ${packageName}@${distTags[tag]}`;
}
function getAuthHeaderForRegistry(configByUri, registryUrl) {
  const getAuthHeader = createGetAuthHeaderByURI(configByUri ?? {}, registryUrl);
  return getAuthHeader(registryUrl);
}
function getDistTagUrl(packageName, registryUrl, tag) {
  const encodedName = (0, import_npm_package_arg7.default)(packageName).escapedName;
  return new URL(`-/package/${encodedName}/dist-tags/${encodeURIComponent(tag)}`, registryUrl).href;
}
async function fetchDistTags(packageName, registryUrl, fetchFromRegistry, authHeader) {
  const encodedName = (0, import_npm_package_arg7.default)(packageName).escapedName;
  const distTagsUrl = new URL(`-/package/${encodedName}/dist-tags`, registryUrl).href;
  const response = await fetchFromRegistry(distTagsUrl, {
    authHeaderValue: authHeader
  });
  if (!response.ok) {
    if (response.status === 404) {
      throw new PnpmError("PACKAGE_NOT_FOUND", `Package "${packageName}" not found in registry`);
    }
    throw new PnpmError("REGISTRY_ERROR", `Failed to fetch package info: ${response.status} ${response.statusText}`);
  }
  return await response.json();
}
async function throwRegistryError(response, action) {
  const errorBody = await response.text();
  if (response.status === 401) {
    throw new PnpmError("UNAUTHORIZED", `You must be logged in to ${action} packages. ${errorBody}`);
  }
  if (response.status === 403) {
    throw new PnpmError("FORBIDDEN", `You do not have permission to ${action} this package. ${errorBody}`);
  }
  throw new PnpmError("REGISTRY_ERROR", `Failed to ${action} package: ${response.status} ${response.statusText}. ${errorBody}`);
}
var import_npm_package_arg7, import_semver51, commandNames50;
var init_distTag = __esm({
  "../registry-access/commands/lib/distTag.js"() {
    "use strict";
    init_lib29();
    init_lib15();
    init_lib2();
    init_lib48();
    init_lib49();
    import_npm_package_arg7 = __toESM(require_npa(), 1);
    init_lib63();
    import_semver51 = __toESM(require_semver2(), 1);
    init_common2();
    commandNames50 = ["dist-tag", "dist-tags"];
  }
});

// ../registry-access/commands/lib/owner.js
var owner_exports = {};
__export(owner_exports, {
  cliOptionsTypes: () => cliOptionsTypes49,
  commandNames: () => commandNames51,
  handler: () => handler51,
  help: () => help51,
  rcOptionsTypes: () => rcOptionsTypes48
});
function cliOptionsTypes49() {
  return {
    ...rcOptionsTypes48(),
    otp: String
  };
}
function help51() {
  return renderHelp({
    description: "Manages package owners on the registry.",
    descriptionLists: [
      {
        title: "Commands",
        list: [
          {
            description: "List all owners of a package. Default if no subcommand is given.",
            name: "ls"
          },
          {
            description: "Add an owner to a package.",
            name: "add"
          },
          {
            description: "Remove an owner from a package.",
            name: "rm"
          }
        ]
      },
      {
        title: "Options",
        list: [
          {
            description: "The base URL of the npm registry.",
            name: "--registry <url>"
          },
          {
            description: "When publishing packages that require two-factor authentication, this option can specify a one-time password.",
            name: "--otp"
          }
        ]
      }
    ],
    url: docsUrl("owner"),
    usages: [
      "pnpm owner ls <package>",
      "pnpm owner add <package> <user>",
      "pnpm owner rm <package> <user>"
    ]
  });
}
async function handler51(opts2, params) {
  switch (params[0]) {
    case "add":
      return ownerAdd(opts2, params.slice(1));
    case "rm":
      return ownerRm(opts2, params.slice(1));
    case "ls":
    case "list":
      return ownerLs(opts2, params.slice(1));
    default:
      return ownerLs(opts2, params);
  }
}
async function ownerLs(opts2, params) {
  if (params.length === 0) {
    throw new PnpmError("OWNER_LS_PACKAGE_REQUIRED", "Package name is required");
  }
  const { name: packageName, escapedName } = parsePackageSpec(params[0]);
  const registryUrl = pickRegistryForPackage(opts2.registries ?? { default: "https://registry.npmjs.org/" }, packageName);
  const authHeader = getAuthHeaderForRegistry2(opts2.configByUri, registryUrl);
  const fetchFromRegistry = createFetchFromRegistry(opts2);
  const owners = await fetchOwners(packageName, escapedName, registryUrl, fetchFromRegistry, authHeader);
  const lines = [];
  for (const owner of owners) {
    lines.push(`${owner.username} <${owner.email}>`);
  }
  return lines.join("\n");
}
async function ownerAdd(opts2, params) {
  if (params.length < 2) {
    throw new PnpmError("OWNER_ADD_ARGS_REQUIRED", "Package name and owner are required (e.g., pnpm owner add pkg username)");
  }
  const { name: packageName, escapedName } = parsePackageSpec(params[0]);
  const owner = params[1];
  const registryUrl = pickRegistryForPackage(opts2.registries ?? { default: "https://registry.npmjs.org/" }, packageName);
  const authHeader = getAuthHeaderForRegistry2(opts2.configByUri, registryUrl);
  const fetchFromRegistry = createFetchFromRegistry(opts2);
  const otp = opts2.cliOptions?.otp;
  const ownerUrl = getOwnerUrl(escapedName, registryUrl);
  const response = await fetchFromRegistry(ownerUrl, {
    authHeaderValue: authHeader,
    method: "PUT",
    headers: {
      "content-type": "application/json",
      ...otp ? { "npm-otp": otp } : {}
    },
    body: JSON.stringify({ user: owner })
  });
  if (!response.ok) {
    await throwRegistryError2(response, `add owner "${owner}" to`);
  }
  return `+${owner}: ${packageName}`;
}
async function ownerRm(opts2, params) {
  if (params.length < 2) {
    throw new PnpmError("OWNER_RM_ARGS_REQUIRED", "Package name and owner are required (e.g., pnpm owner rm pkg username)");
  }
  const { name: packageName, escapedName } = parsePackageSpec(params[0]);
  const owner = params[1];
  const registryUrl = pickRegistryForPackage(opts2.registries ?? { default: "https://registry.npmjs.org/" }, packageName);
  const authHeader = getAuthHeaderForRegistry2(opts2.configByUri, registryUrl);
  const fetchFromRegistry = createFetchFromRegistry(opts2);
  const otp = opts2.cliOptions?.otp;
  const ownerUrl = getOwnerUrl(escapedName, registryUrl, owner);
  const response = await fetchFromRegistry(ownerUrl, {
    authHeaderValue: authHeader,
    method: "DELETE",
    headers: {
      ...otp ? { "npm-otp": otp } : {}
    }
  });
  if (!response.ok) {
    await throwRegistryError2(response, `remove owner "${owner}" from`);
  }
  return `-${owner}: ${packageName}`;
}
function getAuthHeaderForRegistry2(configByUri, registryUrl) {
  const getAuthHeader = createGetAuthHeaderByURI(configByUri ?? {}, registryUrl);
  return getAuthHeader(registryUrl);
}
function getOwnerUrl(escapedName, registryUrl, owner) {
  const base = new URL(`-/package/${escapedName}/owners`, registryUrl).href;
  if (owner) {
    return `${base}/${encodeURIComponent(owner)}`;
  }
  return base;
}
async function fetchOwners(packageName, escapedName, registryUrl, fetchFromRegistry, authHeader) {
  const ownersUrl = new URL(`-/package/${escapedName}/owners`, registryUrl).href;
  const response = await fetchFromRegistry(ownersUrl, {
    authHeaderValue: authHeader
  });
  if (!response.ok) {
    if (response.status === 404) {
      throw new PnpmError("PACKAGE_NOT_FOUND", `Package "${packageName}" not found in registry`);
    }
    throw new PnpmError("REGISTRY_ERROR", `Failed to fetch owners: ${response.status} ${response.statusText}`);
  }
  return await response.json();
}
async function throwRegistryError2(response, action) {
  const errorBody = await response.text();
  if (response.status === 401) {
    throw new PnpmError("UNAUTHORIZED", `You must be logged in to ${action} packages. ${errorBody}`);
  }
  if (response.status === 403) {
    throw new PnpmError("FORBIDDEN", `You do not have permission to ${action} this package. ${errorBody}`);
  }
  if (response.status === 404) {
    throw new PnpmError("PACKAGE_NOT_FOUND", `Package not found in registry. ${errorBody}`);
  }
  throw new PnpmError("REGISTRY_ERROR", `Failed to ${action} package: ${response.status} ${response.statusText}. ${errorBody}`);
}
var commandNames51;
var init_owner = __esm({
  "../registry-access/commands/lib/owner.js"() {
    "use strict";
    init_lib29();
    init_lib15();
    init_lib2();
    init_lib48();
    init_lib49();
    init_lib63();
    init_common2();
    commandNames51 = ["owner", "owners"];
  }
});

// ../registry-access/commands/lib/ping.js
var ping_exports = {};
__export(ping_exports, {
  cliOptionsTypes: () => cliOptionsTypes50,
  commandNames: () => commandNames52,
  handler: () => handler52,
  help: () => help52,
  rcOptionsTypes: () => rcOptionsTypes49
});
import util50 from "node:util";
function cliOptionsTypes50() {
  return {
    ...rcOptionsTypes48()
  };
}
function rcOptionsTypes49() {
  return rcOptionsTypes48();
}
function help52() {
  return renderHelp({
    description: "Test connectivity to the configured registry.",
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: "Test a specific registry URL",
            name: "--registry <url>"
          }
        ]
      }
    ],
    url: docsUrl("ping"),
    usages: ["pnpm ping [--registry <url>]"]
  });
}
async function handler52(opts2) {
  const registryUrl = opts2.registry ?? "https://registry.npmjs.org/";
  const normalizedRegistryUrl = registryUrl.endsWith("/") ? registryUrl : `${registryUrl}/`;
  const pingUrlObject = new URL("./-/ping", normalizedRegistryUrl);
  pingUrlObject.searchParams.set("write", "true");
  const pingUrl = pingUrlObject.toString();
  const getAuthHeader = createGetAuthHeaderByURI(opts2.configByUri ?? {}, normalizedRegistryUrl);
  const authHeaderValue = getAuthHeader(normalizedRegistryUrl);
  const fetchFromRegistry = createFetchFromRegistry(opts2);
  const start = Date.now();
  let response;
  try {
    response = await fetchFromRegistry(pingUrl, {
      retry: { retries: 0 },
      authHeaderValue
    });
  } catch (err) {
    const errorMessage = util50.types.isNativeError(err) ? err.message : String(err);
    throw new PnpmError("PING_ERROR", `Failed to reach registry: ${errorMessage}`);
  }
  if (!response.ok) {
    throw new PnpmError("PING_ERROR", `Failed to reach registry: ${response.status} ${response.statusText}`.trimEnd());
  }
  const body = await response.text();
  const time = Date.now() - start;
  let details = "";
  if (body) {
    try {
      const parsed = JSON.parse(body);
      if (parsed && typeof parsed === "object" && Object.keys(parsed).length > 0) {
        details = JSON.stringify(parsed, null, 2);
      }
    } catch {
    }
  }
  const lines = [`PING ${registryUrl}`, `PONG ${time}ms`];
  if (details)
    lines.push(`PONG ${details}`);
  return lines.join("\n");
}
var commandNames52;
var init_ping = __esm({
  "../registry-access/commands/lib/ping.js"() {
    "use strict";
    init_lib29();
    init_lib2();
    init_lib48();
    init_lib49();
    init_lib63();
    init_common2();
    commandNames52 = ["ping"];
  }
});

// ../registry-access/commands/lib/search.js
var search_exports = {};
__export(search_exports, {
  cliOptionsTypes: () => cliOptionsTypes51,
  commandNames: () => commandNames53,
  handler: () => handler53,
  help: () => help53,
  rcOptionsTypes: () => rcOptionsTypes48
});
function cliOptionsTypes51() {
  return {
    ...rcOptionsTypes48(),
    json: Boolean,
    "search-limit": Number
  };
}
function help53() {
  return renderHelp({
    description: "Search for packages in the registry.",
    url: docsUrl("search"),
    usages: [
      "pnpm search <keyword> ..."
    ],
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: "Show search results in JSON format",
            name: "--json"
          },
          {
            description: "Maximum number of results to show (default: 20)",
            name: "--search-limit <number>"
          }
        ]
      }
    ]
  });
}
async function handler53(opts2, params) {
  const query = params.join(" ");
  if (!query) {
    throw new PnpmError("MISSING_SEARCH_QUERY", "Search query is required. Usage: pnpm search <keyword>");
  }
  const registry = opts2.registries?.default ?? "https://registry.npmjs.org/";
  const registryUrl = new URL(registry);
  if (!registryUrl.pathname.endsWith("/")) {
    registryUrl.pathname = `${registryUrl.pathname}/`;
  }
  const searchUrl = new URL("./-/v1/search", registryUrl);
  searchUrl.searchParams.set("text", query);
  searchUrl.searchParams.set("size", (opts2.searchLimit ?? 20).toString());
  const fetchFromRegistry = createFetchFromRegistry(opts2);
  const getAuthHeader = createGetAuthHeaderByURI(opts2.configByUri ?? {}, opts2.registries?.default);
  const response = await fetchFromRegistry(searchUrl.toString(), {
    authHeaderValue: getAuthHeader(registry)
  });
  if (!response.ok) {
    const errorBody = (await response.text()).trim();
    throw new PnpmError("SEARCH_FAILED", errorBody ? `Search failed with status ${response.status}: ${response.statusText}. ${errorBody}` : `Search failed with status ${response.status}: ${response.statusText}`);
  }
  const data = await response.json();
  if (opts2.json) {
    return JSON.stringify(data.objects.map((obj) => obj.package), null, 2);
  }
  if (data.objects.length === 0) {
    return "No packages found";
  }
  return data.objects.map((obj) => formatPackage(obj.package)).join("\n\n");
}
function formatPackage(pkg) {
  const author = typeof pkg.author === "object" ? pkg.author.name : pkg.author ?? pkg.publisher?.username ?? "";
  const date = pkg.date ? pkg.date.split("T")[0] : "";
  const lines = [
    source_default.bold(pkg.name)
  ];
  if (pkg.description) {
    lines.push(pkg.description);
  }
  const versionLine = [`Version ${pkg.version}`];
  if (date)
    versionLine.push(`published ${date}`);
  if (author)
    versionLine.push(`by ${author}`);
  lines.push(versionLine.join(" "));
  if (pkg.maintainers?.length) {
    lines.push(`Maintainers: ${pkg.maintainers.map((m) => m.username).join(", ")}`);
  }
  if (pkg.keywords?.length) {
    lines.push(`Keywords: ${pkg.keywords.join(", ")}`);
  }
  lines.push(source_default.blueBright(`https://npmx.dev/package/${pkg.name}`));
  return lines.join("\n");
}
var commandNames53;
var init_search = __esm({
  "../registry-access/commands/lib/search.js"() {
    "use strict";
    init_lib29();
    init_lib2();
    init_lib48();
    init_lib49();
    init_source2();
    init_lib63();
    init_common2();
    commandNames53 = ["search", "s", "se", "find"];
  }
});

// ../registry-access/commands/lib/whoami.js
var whoami_exports = {};
__export(whoami_exports, {
  cliOptionsTypes: () => cliOptionsTypes52,
  commandNames: () => commandNames54,
  fetchWhoami: () => fetchWhoami,
  handler: () => handler54,
  help: () => help54,
  rcOptionsTypes: () => rcOptionsTypes50
});
function cliOptionsTypes52() {
  return {
    ...rcOptionsTypes48()
  };
}
function rcOptionsTypes50() {
  return rcOptionsTypes48();
}
function help54() {
  return renderHelp({
    description: "Displays your pnpm username.",
    url: docsUrl("whoami"),
    usages: ["pnpm whoami"]
  });
}
async function handler54(opts2) {
  const registryUrl = normalizeRegistryUrl7(opts2.registries?.default ?? "https://registry.npmjs.org/");
  const getAuthHeader = createGetAuthHeaderByURI(opts2.configByUri ?? {}, registryUrl);
  const authHeader = getAuthHeader(registryUrl);
  if (!authHeader) {
    throw new PnpmError("WHOAMI_UNAUTHORIZED", "You must be logged in to use whoami");
  }
  return fetchWhoami(registryUrl, createFetchFromRegistry(opts2), authHeader);
}
async function fetchWhoami(registryUrl, fetchFromRegistry, authHeader) {
  const whoamiUrl = new URL("./-/whoami", normalizeRegistryUrl7(registryUrl)).href;
  const response = await fetchFromRegistry(whoamiUrl, {
    authHeaderValue: authHeader
  });
  if (!response.ok) {
    throw new PnpmError("WHOAMI_FAILED", `Failed to find the current user: ${response.status} ${response.statusText}`);
  }
  const { username } = await response.json();
  return username;
}
var commandNames54;
var init_whoami = __esm({
  "../registry-access/commands/lib/whoami.js"() {
    "use strict";
    init_lib29();
    init_lib2();
    init_lib48();
    init_lib49();
    init_lib63();
    init_common2();
    commandNames54 = ["whoami"];
  }
});

// ../registry-access/commands/lib/star/common.js
function cliOptionsTypes53() {
  return {
    ...rcOptionsTypes48()
  };
}
function rcOptionsTypes51() {
  return rcOptionsTypes48();
}
async function performStarAction(opts2, { packageName, star }) {
  const { escapedName } = parsePackageSpec(packageName);
  const registryUrl = normalizeRegistryUrl7(pickRegistryForPackage(opts2.registries ?? { default: "https://registry.npmjs.org/" }, packageName));
  const authHeader = getAuthHeaderForRegistry3(opts2.configByUri, registryUrl);
  const action = star ? "star" : "unstar";
  if (!authHeader) {
    throw new PnpmError("STAR_UNAUTHORIZED", `You must be logged in to ${action} packages`);
  }
  const fetchFromRegistry = createFetchFromRegistry(opts2);
  const method = star ? "PUT" : "DELETE";
  const starUrl = new URL("./-/user/v1/star", registryUrl).href;
  let response = await fetchFromRegistry(starUrl, {
    authHeaderValue: authHeader,
    method,
    headers: {
      "content-type": "application/json"
    },
    body: JSON.stringify({ name: packageName, package: packageName })
  });
  if (!response.ok) {
    const altStarUrl = new URL(`./-/user/package/${escapedName}/star`, registryUrl).href;
    response = await fetchFromRegistry(altStarUrl, {
      authHeaderValue: authHeader,
      method,
      headers: {
        "content-type": "application/json"
      }
    });
  }
  if (!response.ok) {
    if (response.status === 404 || response.status === 405 || response.status === 400 || response.status === 500) {
      return performLegacyStarAction({ packageName, escapedName, star, registryUrl, authHeader, fetchFromRegistry });
    }
    const errorBody = await response.text();
    throw new PnpmError("REGISTRY_ERROR", `Failed to ${action} package: ${response.status} ${response.statusText}. ${errorBody}`);
  }
}
async function performLegacyStarAction(args) {
  const { packageName, escapedName, star, registryUrl, authHeader, fetchFromRegistry } = args;
  const action = star ? "star" : "unstar";
  const username = await fetchWhoami(registryUrl, fetchFromRegistry, authHeader);
  const pkgUrl = new URL(`./${escapedName}`, registryUrl).href;
  const response = await fetchFromRegistry(pkgUrl, {
    authHeaderValue: authHeader,
    fullMetadata: true
  });
  if (!response.ok) {
    if (response.status === 404) {
      throw new PnpmError("PACKAGE_NOT_FOUND", `Package "${packageName}" not found in registry`);
    }
    throw new PnpmError("REGISTRY_ERROR", `Failed to fetch package info: ${response.status} ${response.statusText}`);
  }
  const pkgData = await response.json();
  pkgData.users = pkgData.users || {};
  if (star) {
    pkgData.users[username] = true;
  } else {
    delete pkgData.users[username];
  }
  const updateUrl = pkgData._rev ? `${pkgUrl}/-rev/${pkgData._rev}` : pkgUrl;
  const updateResponse = await fetchFromRegistry(updateUrl, {
    authHeaderValue: authHeader,
    method: "PUT",
    headers: {
      "content-type": "application/json"
    },
    body: JSON.stringify(pkgData)
  });
  if (!updateResponse.ok) {
    const errorBody = await updateResponse.text();
    throw new PnpmError("REGISTRY_ERROR", `Failed to ${action} package (legacy): ${updateResponse.status} ${updateResponse.statusText}. ${errorBody}`);
  }
}
function getAuthHeaderForRegistry3(configByUri, registryUrl) {
  const getAuthHeader = createGetAuthHeaderByURI(configByUri ?? {}, registryUrl);
  return getAuthHeader(registryUrl);
}
var init_common4 = __esm({
  "../registry-access/commands/lib/star/common.js"() {
    "use strict";
    init_lib15();
    init_lib2();
    init_lib48();
    init_lib49();
    init_common2();
    init_whoami();
  }
});

// ../registry-access/commands/lib/star/star.js
var star_exports = {};
__export(star_exports, {
  cliOptionsTypes: () => cliOptionsTypes53,
  commandNames: () => commandNames55,
  handler: () => handler55,
  help: () => help55,
  rcOptionsTypes: () => rcOptionsTypes51
});
function help55() {
  return renderHelp({
    description: "Marks a package as a favorite.",
    url: docsUrl("star"),
    usages: ["pnpm star <package>"]
  });
}
async function handler55(opts2, params) {
  if (params.length === 0) {
    throw new PnpmError("STAR_PACKAGE_REQUIRED", "Package name is required");
  }
  await performStarAction(opts2, { packageName: params[0], star: true });
}
var commandNames55;
var init_star = __esm({
  "../registry-access/commands/lib/star/star.js"() {
    "use strict";
    init_lib29();
    init_lib2();
    init_lib63();
    init_common4();
    commandNames55 = ["star"];
  }
});

// ../registry-access/commands/lib/star/stars.js
var stars_exports = {};
__export(stars_exports, {
  cliOptionsTypes: () => cliOptionsTypes53,
  commandNames: () => commandNames56,
  handler: () => handler56,
  help: () => help56,
  rcOptionsTypes: () => rcOptionsTypes51
});
function help56() {
  return renderHelp({
    description: "Lists all packages starred by a specific user.",
    url: docsUrl("stars"),
    usages: ["pnpm stars [<user>]"]
  });
}
async function handler56(opts2, params) {
  const registryUrl = normalizeRegistryUrl7(opts2.registries?.default ?? "https://registry.npmjs.org/");
  const fetchFromRegistry = createFetchFromRegistry(opts2);
  const authHeader = getAuthHeaderForRegistry3(opts2.configByUri, registryUrl);
  let username = params[0];
  if (!username) {
    if (!authHeader) {
      throw new PnpmError("STARS_UNAUTHORIZED", "You must be logged in to list your starred packages");
    }
    username = await fetchWhoami(registryUrl, fetchFromRegistry, authHeader);
  }
  if (!params[0]) {
    const starUrl = new URL("./-/user/v1/star", registryUrl).href;
    const response2 = await fetchFromRegistry(starUrl, {
      authHeaderValue: authHeader
    });
    if (response2.ok) {
      const starsData2 = await response2.json();
      if (Array.isArray(starsData2))
        return starsData2.join("\n");
      if (typeof starsData2 === "object" && starsData2 !== null) {
        return Object.keys(starsData2).join("\n");
      }
    }
  }
  const starsUrl = new URL(`./-/user/${encodeURIComponent(username)}/stars`, registryUrl).href;
  let response = await fetchFromRegistry(starsUrl, {
    authHeaderValue: authHeader
  });
  if (!response.ok) {
    const utilStarsUrl = new URL(`./-/util/user/${encodeURIComponent(username)}/stars`, registryUrl).href;
    response = await fetchFromRegistry(utilStarsUrl, {
      authHeaderValue: authHeader
    });
  }
  if (!response.ok) {
    if (response.status === 404) {
      throw new PnpmError("USER_NOT_FOUND", `User "${username}" not found`);
    }
    throw new PnpmError("REGISTRY_ERROR", `Failed to fetch stars: ${response.status} ${response.statusText}`);
  }
  const starsData = await response.json();
  return Object.keys(starsData).join("\n");
}
var commandNames56;
var init_stars = __esm({
  "../registry-access/commands/lib/star/stars.js"() {
    "use strict";
    init_lib29();
    init_lib2();
    init_lib49();
    init_lib63();
    init_common2();
    init_whoami();
    init_common4();
    commandNames56 = ["stars"];
  }
});

// ../registry-access/commands/lib/star/unstar.js
var unstar_exports = {};
__export(unstar_exports, {
  cliOptionsTypes: () => cliOptionsTypes53,
  commandNames: () => commandNames57,
  handler: () => handler57,
  help: () => help57,
  rcOptionsTypes: () => rcOptionsTypes51
});
function help57() {
  return renderHelp({
    description: "Removes a package from your favorites.",
    url: docsUrl("unstar"),
    usages: ["pnpm unstar <package>"]
  });
}
async function handler57(opts2, params) {
  if (params.length === 0) {
    throw new PnpmError("UNSTAR_PACKAGE_REQUIRED", "Package name is required");
  }
  await performStarAction(opts2, { packageName: params[0], star: false });
}
var commandNames57;
var init_unstar = __esm({
  "../registry-access/commands/lib/star/unstar.js"() {
    "use strict";
    init_lib29();
    init_lib2();
    init_lib63();
    init_common4();
    commandNames57 = ["unstar"];
  }
});

// ../registry-access/commands/lib/unpublish.js
var unpublish_exports = {};
__export(unpublish_exports, {
  cliOptionsTypes: () => cliOptionsTypes54,
  commandNames: () => commandNames58,
  handler: () => handler58,
  help: () => help58,
  rcOptionsTypes: () => rcOptionsTypes48
});
function cliOptionsTypes54() {
  return {
    ...rcOptionsTypes48(),
    force: Boolean,
    otp: String
  };
}
function help58() {
  return renderHelp({
    description: "Removes a package from the registry.",
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: "The base URL of the npm registry.",
            name: "--registry <url>"
          },
          {
            description: "When publishing packages that require two-factor authentication, this option can specify a one-time password.",
            name: "--otp"
          },
          {
            description: "Removes the package from the registry regardless of what version is currently published. Without this flag, pnpm will refuse to unpublish an entire package.",
            name: "--force"
          }
        ]
      }
    ],
    url: docsUrl("unpublish"),
    usages: [
      "pnpm unpublish [<package>[@<version>]]"
    ]
  });
}
async function handler58(opts2, params) {
  if (params.length === 0) {
    throw new PnpmError("UNPUBLISH_REQUIRED", "Package name is required");
  }
  const packageSpec = params[0];
  const { name, versionRange } = parsePackageSpec(packageSpec);
  return unpublishPackage(name, versionRange, opts2);
}
async function unpublishPackage(packageName, versionRange, opts2) {
  const registryUrl = pickRegistryForPackage(opts2.registries ?? { default: "https://registry.npmjs.org/" }, packageName);
  const getAuthHeader = createGetAuthHeaderByURI(opts2.configByUri ?? {}, registryUrl);
  const authHeader = getAuthHeader(registryUrl);
  const packageUrl = new URL((0, import_npm_package_arg8.default)(packageName).escapedName, registryUrl).href;
  const fetchFromRegistry = createFetchFromRegistry(opts2);
  const pkg = await fetchPackument2(packageUrl, fetchFromRegistry, authHeader);
  const allVersions = pkg.versions;
  if (!allVersions || Object.keys(allVersions).length === 0) {
    throw new PnpmError("NO_VERSIONS", `Package "${packageName}" has no versions`);
  }
  const otp = opts2.cliOptions?.otp;
  if (!versionRange) {
    return unpublishAll(packageUrl, pkg, fetchFromRegistry, authHeader, otp, opts2.cliOptions);
  }
  const versionsToUnpublish = getVersionsMatchingRange2(allVersions, versionRange);
  if (versionsToUnpublish.length === 0) {
    throw new PnpmError("NO_MATCHING_VERSIONS", `No versions match "${versionRange}"`);
  }
  if (versionsToUnpublish.length === Object.keys(allVersions).length) {
    return unpublishAll(packageUrl, pkg, fetchFromRegistry, authHeader, otp, opts2.cliOptions);
  }
  return unpublishVersions(packageUrl, registryUrl, pkg, versionsToUnpublish, fetchFromRegistry, authHeader, otp);
}
async function fetchPackument2(packageUrl, fetchFromRegistry, authHeader) {
  const response = await fetchFromRegistry(packageUrl, {
    authHeaderValue: authHeader,
    fullMetadata: true
  });
  if (!response.ok) {
    if (response.status === 404) {
      const url7 = new URL(packageUrl);
      const packageName = decodeURIComponent(url7.pathname.split("/").pop());
      throw new PnpmError("PACKAGE_NOT_FOUND", `Package "${packageName}" not found in registry`);
    }
    throw new PnpmError("REGISTRY_ERROR", `Failed to fetch package info: ${response.status} ${response.statusText}`);
  }
  return await response.json();
}
async function unpublishVersions(packageUrl, registryUrl, pkg, versions, fetchFromRegistry, authHeader, otp) {
  const tarballs = [];
  for (const version2 of versions) {
    const versionData = pkg.versions[version2];
    if (versionData?.dist?.tarball) {
      tarballs.push(versionData.dist.tarball);
    }
    delete pkg.versions[version2];
  }
  const removedSet = new Set(versions);
  const latestVer = pkg["dist-tags"].latest;
  for (const tag of Object.keys(pkg["dist-tags"])) {
    if (removedSet.has(pkg["dist-tags"][tag])) {
      delete pkg["dist-tags"][tag];
    }
  }
  if (latestVer && removedSet.has(latestVer)) {
    const remaining = Object.keys(pkg.versions).sort(import_semver52.default.compareLoose);
    if (remaining.length > 0) {
      pkg["dist-tags"].latest = remaining[remaining.length - 1];
    }
  }
  delete pkg._revisions;
  delete pkg._attachments;
  const putResponse = await fetchFromRegistry(`${packageUrl}/-rev/${pkg._rev}`, {
    authHeaderValue: authHeader,
    method: "PUT",
    headers: {
      "content-type": "application/json",
      ...otp ? { "npm-otp": otp } : {}
    },
    body: JSON.stringify(pkg)
  });
  if (!putResponse.ok) {
    await throwRegistryError3(putResponse, "unpublish");
  }
  const registryOrigin = new URL(registryUrl).origin;
  for (const tarball of tarballs) {
    const updated = await fetchPackument2(packageUrl, fetchFromRegistry, authHeader);
    const tarballPathname = getTarballPathname(tarball, registryUrl);
    const deleteResponse = await fetchFromRegistry(`${registryOrigin}/${tarballPathname}/-rev/${updated._rev}`, {
      authHeaderValue: authHeader,
      method: "DELETE",
      headers: {
        ...otp ? { "npm-otp": otp } : {}
      }
    });
    if (!deleteResponse.ok && deleteResponse.status !== 404) {
      await throwRegistryError3(deleteResponse, "unpublish");
    }
  }
  return `Successfully unpublished ${versions.length} version(s) of ${pkg.name}`;
}
async function unpublishAll(packageUrl, pkg, fetchFromRegistry, authHeader, otp, cliOptions) {
  const packageName = pkg.name;
  const versionCount = Object.keys(pkg.versions).length;
  const force = cliOptions?.force ?? false;
  if (!force) {
    const versionsList = Object.keys(pkg.versions).join(", ");
    throw new PnpmError("UNPUBLISH_CONFIRM", `Run pnpm unpublish --force to remove all published versions of ${packageName} (${versionsList}) from the registry.
This is a protection mechanism to prevent accidental unpublish of packages with many versions.
If you want to unpublish a specific version, run pnpm unpublish ${packageName}@<version>`);
  }
  const deleteResponse = await fetchFromRegistry(`${packageUrl}/-rev/${pkg._rev}`, {
    authHeaderValue: authHeader,
    method: "DELETE",
    headers: {
      ...otp ? { "npm-otp": otp } : {}
    }
  });
  if (!deleteResponse.ok) {
    if (deleteResponse.status === 405) {
      throw new PnpmError("UNPUBLISH_FORBIDDEN", "This package cannot be completely unpublished. Deprecate it instead or contact npm support.");
    }
    await throwRegistryError3(deleteResponse, "unpublish");
  }
  return `Successfully unpublished all ${versionCount} version(s) of ${packageName}`;
}
async function throwRegistryError3(response, verb) {
  if (response.status === 401) {
    throw new PnpmError("UNAUTHORIZED", `You must be logged in to ${verb} packages`);
  }
  if (response.status === 403) {
    throw new PnpmError("FORBIDDEN", `You do not have permission to ${verb} this package`);
  }
  const errorBody = await response.text();
  throw new PnpmError("REGISTRY_ERROR", `Failed to ${verb} package: ${response.status} ${response.statusText}. ${errorBody}`);
}
function getTarballPathname(tarballUrl, registryUrl) {
  const registryPath = new URL(registryUrl).pathname.slice(1);
  let tarballPath = new URL(tarballUrl).pathname.slice(1);
  if (registryPath && tarballPath.startsWith(registryPath)) {
    tarballPath = tarballPath.slice(registryPath.length);
  }
  return tarballPath;
}
function getVersionsMatchingRange2(versions, range) {
  return Object.keys(versions).filter((v) => import_semver52.default.satisfies(v, range));
}
var import_npm_package_arg8, import_semver52, commandNames58;
var init_unpublish = __esm({
  "../registry-access/commands/lib/unpublish.js"() {
    "use strict";
    init_lib29();
    init_lib15();
    init_lib2();
    init_lib48();
    init_lib49();
    import_npm_package_arg8 = __toESM(require_npa(), 1);
    init_lib63();
    import_semver52 = __toESM(require_semver2(), 1);
    init_common2();
    commandNames58 = ["unpublish"];
  }
});

// ../registry-access/commands/lib/index.js
var init_lib164 = __esm({
  "../registry-access/commands/lib/index.js"() {
    "use strict";
    init_deprecate();
    init_undeprecate();
    init_distTag();
    init_owner();
    init_ping();
    init_search();
    init_star();
    init_stars();
    init_unstar();
    init_unpublish();
    init_whoami();
  }
});

// ../fs/is-empty-dir-or-nothing/lib/index.js
import fs99 from "node:fs";
function isEmptyDirOrNothing(path218) {
  try {
    const pathStat = fs99.statSync(path218);
    if (pathStat.isFile()) {
      return false;
    }
    return isDirEmpty(path218);
  } catch (error) {
    if (error && typeof error === "object" && "code" in error && error.code === "ENOENT") {
      return true;
    }
    return false;
  }
}
function isDirEmpty(path218) {
  const files = fs99.readdirSync(path218);
  return files.length === 0;
}
var init_lib165 = __esm({
  "../fs/is-empty-dir-or-nothing/lib/index.js"() {
    "use strict";
  }
});

// ../releasing/commands/lib/deploy/createDeployFiles.js
import path190 from "node:path";
import url6 from "node:url";
function createDeployFiles({ allProjects, deployDir, lockfile, lockfileDir, patchedDependencies, selectedProjectManifest, projectId, rootProjectManifestDir, allowBuilds }) {
  const deployedProjectRealPath = path190.resolve(lockfileDir, projectId);
  const inputSnapshot = lockfile.importers[projectId];
  const targetSnapshot = {
    ...inputSnapshot,
    specifiers: {},
    dependencies: {},
    devDependencies: {},
    optionalDependencies: {}
  };
  const targetPackageSnapshots = {};
  for (const name in lockfile.packages) {
    const inputDepPath = name;
    const inputSnapshot2 = lockfile.packages[inputDepPath];
    const resolveResult = resolveLinkOrFile(inputDepPath, {
      lockfileDir,
      projectRootDirRealPath: rootProjectManifestDir
    });
    const outputDepPath = resolveResult ? createFileUrlDepPath(resolveResult, allProjects) : inputDepPath;
    targetPackageSnapshots[outputDepPath] = convertPackageSnapshot(inputSnapshot2, {
      allProjects,
      deployDir,
      deployedProjectRealPath,
      lockfileDir,
      projectRootDirRealPath: rootProjectManifestDir
    });
  }
  for (const importerPath in lockfile.importers) {
    if (importerPath === projectId)
      continue;
    const projectSnapshot = lockfile.importers[importerPath];
    const projectRootDirRealPath = path190.resolve(lockfileDir, importerPath);
    const packageSnapshot = convertProjectSnapshotToPackageSnapshot(projectSnapshot, {
      allProjects,
      deployDir,
      lockfileDir,
      deployedProjectRealPath,
      projectRootDirRealPath
    });
    const depPath = createFileUrlDepPath({ resolvedPath: projectRootDirRealPath }, allProjects);
    targetPackageSnapshots[depPath] = packageSnapshot;
  }
  for (const field of DEPENDENCIES_FIELD) {
    const targetDependencies = targetSnapshot[field] ?? {};
    const targetSpecifiers = targetSnapshot.specifiers;
    const inputDependencies = inputSnapshot[field] ?? {};
    for (const name in inputDependencies) {
      const version2 = inputDependencies[name];
      const resolveResult = resolveLinkOrFile(version2, {
        lockfileDir,
        projectRootDirRealPath: path190.resolve(lockfileDir, projectId)
      });
      if (!resolveResult) {
        targetSpecifiers[name] = targetDependencies[name] = version2;
        continue;
      }
      targetSpecifiers[name] = targetDependencies[name] = resolveResult.resolvedPath === deployedProjectRealPath ? "link:." : createFileUrlDepPath(resolveResult, allProjects);
    }
  }
  const result2 = {
    lockfile: {
      ...lockfile,
      patchedDependencies: void 0,
      overrides: void 0,
      // the effects of the overrides should already be part of the package snapshots
      packageExtensionsChecksum: void 0,
      // the effects of the package extensions should already be part of the package snapshots
      pnpmfileChecksum: void 0,
      // the effects of the pnpmfile should already be part of the package snapshots
      settings: {
        ...lockfile.settings,
        injectWorkspacePackages: void 0
        // the effects of injecting workspace packages should already be part of the lockfile
      },
      importers: {
        ["."]: targetSnapshot
      },
      packages: targetPackageSnapshots
    },
    manifest: {
      ...selectedProjectManifest,
      dependencies: targetSnapshot.dependencies,
      devDependencies: targetSnapshot.devDependencies,
      optionalDependencies: targetSnapshot.optionalDependencies
    }
  };
  if (lockfile.patchedDependencies && patchedDependencies) {
    result2.lockfile.patchedDependencies = { ...lockfile.patchedDependencies };
    const deployManifestPatchedDeps = {};
    for (const name in patchedDependencies) {
      const absolutePath = patchedDependencies[name];
      const relativePath = (0, import_normalize_path15.default)(path190.relative(deployDir, absolutePath));
      deployManifestPatchedDeps[name] = relativePath;
    }
    result2.workspaceManifest = {
      ...result2.workspaceManifest,
      patchedDependencies: deployManifestPatchedDeps
    };
  }
  if (allowBuilds) {
    result2.workspaceManifest = {
      ...result2.workspaceManifest,
      allowBuilds
    };
  }
  return result2;
}
function convertPackageSnapshot(inputSnapshot, opts2) {
  const inputResolution = inputSnapshot.resolution;
  let outputResolution;
  if ("integrity" in inputResolution) {
    outputResolution = inputResolution;
  } else if ("tarball" in inputResolution && typeof inputResolution.tarball === "string") {
    outputResolution = { ...inputResolution };
    if (inputResolution.tarball.startsWith("file:")) {
      const inputPath = inputResolution.tarball.slice("file:".length);
      const resolvedPath = path190.resolve(opts2.lockfileDir, inputPath);
      const outputPath = (0, import_normalize_path15.default)(path190.relative(opts2.deployDir, resolvedPath));
      outputResolution.tarball = `file:${outputPath}`;
      if ("path" in inputResolution && typeof inputResolution.path === "string") {
        outputResolution.path = outputPath;
      }
    }
  } else if (inputResolution.type === "directory") {
    const dirResolution = inputResolution;
    const resolvedPath = path190.resolve(opts2.lockfileDir, dirResolution.directory);
    const directory = (0, import_normalize_path15.default)(path190.relative(opts2.deployDir, resolvedPath));
    outputResolution = { ...dirResolution, directory };
  } else if (inputResolution.type === "git" || inputResolution.type === "variations") {
    outputResolution = inputResolution;
  } else if (inputResolution.type && typeof inputResolution.type === "string") {
    outputResolution = inputResolution;
  } else {
    throw new Error(`Unknown resolution type: ${JSON.stringify(inputResolution)}`);
  }
  return {
    ...inputSnapshot,
    resolution: outputResolution,
    dependencies: convertResolvedDependencies(inputSnapshot.dependencies, opts2),
    optionalDependencies: convertResolvedDependencies(inputSnapshot.optionalDependencies, opts2)
  };
}
function convertProjectSnapshotToPackageSnapshot(projectSnapshot, opts2) {
  const resolution = {
    type: "directory",
    directory: (0, import_normalize_path15.default)(path190.relative(opts2.deployDir, opts2.projectRootDirRealPath))
  };
  const dependencies = convertResolvedDependencies(projectSnapshot.dependencies, opts2);
  const optionalDependencies = convertResolvedDependencies(projectSnapshot.optionalDependencies, opts2);
  return {
    dependencies,
    optionalDependencies,
    resolution
  };
}
function convertResolvedDependencies(input, opts2) {
  if (!input)
    return void 0;
  const output = {};
  for (const key in input) {
    const version2 = input[key];
    const resolveResult = resolveLinkOrFile(version2, opts2);
    if (!resolveResult) {
      output[key] = version2;
      continue;
    }
    if (resolveResult.resolvedPath === opts2.deployedProjectRealPath) {
      output[key] = "link:.";
      continue;
    }
    output[key] = createFileUrlDepPath(resolveResult, opts2.allProjects);
  }
  return output;
}
function resolveLinkOrFile(pkgVer, opts2) {
  const { lockfileDir, projectRootDirRealPath } = opts2;
  function resolveScheme(scheme, base) {
    if (!pkgVer.startsWith(scheme))
      return void 0;
    const { id, peerDepGraphHash: suffix } = parseDepPath(pkgVer.slice(scheme.length));
    const resolvedPath = path190.resolve(base, id);
    return { scheme, resolvedPath, suffix };
  }
  const resolveSchemeResult = resolveScheme("file:", lockfileDir) ?? resolveScheme("link:", projectRootDirRealPath);
  if (resolveSchemeResult)
    return resolveSchemeResult;
  const { nonSemverVersion, patchHash, peerDepGraphHash, version: version2 } = parse6(pkgVer);
  if (!nonSemverVersion)
    return void 0;
  if (version2) {
    throw new Error(`Something goes wrong, version should be undefined but isn't: ${version2}`);
  }
  const parseResult = resolveLinkOrFile(nonSemverVersion, opts2);
  if (!parseResult)
    return void 0;
  if (parseResult.suffix) {
    throw new Error(`Something goes wrong, suffix should be undefined but isn't: ${parseResult.suffix}`);
  }
  parseResult.suffix = `${patchHash ?? ""}${peerDepGraphHash ?? ""}`;
  return parseResult;
}
function createFileUrlDepPath({ resolvedPath, suffix }, allProjects) {
  const depFileUrl = url6.pathToFileURL(resolvedPath).toString();
  const project = allProjects.find((project2) => project2.rootDirRealPath === resolvedPath);
  const name = project?.manifest.name ?? path190.basename(resolvedPath);
  return `${name}@${depFileUrl}${suffix ?? ""}`;
}
var import_normalize_path15, DEPENDENCIES_FIELD;
var init_createDeployFiles = __esm({
  "../releasing/commands/lib/deploy/createDeployFiles.js"() {
    "use strict";
    init_lib65();
    import_normalize_path15 = __toESM(require_normalize_path(), 1);
    DEPENDENCIES_FIELD = ["dependencies", "devDependencies", "optionalDependencies"];
  }
});

// ../releasing/commands/lib/deploy/deployHook.js
function deployHook(pkg) {
  pkg.dependenciesMeta = pkg.dependenciesMeta ?? {};
  for (const depField of DEPENDENCIES_FIELDS) {
    for (const [depName, depVersion] of Object.entries(pkg[depField] ?? {})) {
      if (depVersion.startsWith("workspace:")) {
        pkg.dependenciesMeta[depName] = {
          injected: true
        };
      }
    }
  }
  return pkg;
}
var init_deployHook = __esm({
  "../releasing/commands/lib/deploy/deployHook.js"() {
    "use strict";
    init_lib8();
  }
});

// ../releasing/commands/lib/deploy/deploy.js
var deploy_exports = {};
__export(deploy_exports, {
  cliOptionsTypes: () => cliOptionsTypes55,
  commandNames: () => commandNames59,
  handler: () => handler59,
  help: () => help59,
  overridableByScript: () => overridableByScript3,
  rcOptionsTypes: () => rcOptionsTypes52,
  shorthands: () => shorthands16
});
import fs100 from "node:fs";
import path191 from "node:path";
function rcOptionsTypes52() {
  return {
    ...install_exports.rcOptionsTypes(),
    ...DEPLOY_OWN_OPTIONS
  };
}
function cliOptionsTypes55() {
  return {
    ...install_exports.cliOptionsTypes(),
    ...DEPLOY_OWN_OPTIONS
  };
}
function help59() {
  return renderHelp({
    description: "Experimental! Deploy a package from a workspace",
    url: docsUrl("deploy"),
    usages: ["pnpm --filter=<deployed project name> deploy <target directory>"],
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: "Packages in `devDependencies` won't be installed",
            name: "--prod",
            shortAlias: "-P"
          },
          {
            description: "Only `devDependencies` are installed",
            name: "--dev",
            shortAlias: "-D"
          },
          {
            description: "`optionalDependencies` are not installed",
            name: "--no-optional"
          },
          {
            description: "Force legacy deploy implementation",
            name: "--legacy"
          }
        ]
      },
      FILTERING
    ]
  });
}
async function handler59(opts2, params) {
  if (!opts2.workspaceDir) {
    let hint;
    if (opts2.rootProjectManifest?.scripts?.["deploy"] != null) {
      hint = 'Maybe you wanted to invoke "pnpm run deploy"';
    }
    throw new PnpmError("CANNOT_DEPLOY", "A deploy is only possible from inside a workspace", { hint });
  }
  const selectedProjects = Object.values(opts2.selectedProjectsGraph ?? {});
  if (selectedProjects.length === 0) {
    throw new PnpmError("NOTHING_TO_DEPLOY", "No project was selected for deployment");
  }
  if (selectedProjects.length > 1) {
    throw new PnpmError("CANNOT_DEPLOY_MANY", "Cannot deploy more than 1 project");
  }
  if (params.length !== 1) {
    throw new PnpmError("INVALID_DEPLOY_TARGET", "This command requires one parameter");
  }
  const selectedProject = selectedProjects[0].package;
  const deployDirParam = params[0];
  const deployDir = path191.isAbsolute(deployDirParam) ? deployDirParam : path191.join(opts2.dir, deployDirParam);
  if (!isEmptyDirOrNothing(deployDir)) {
    if (!opts2.force) {
      throw new PnpmError("DEPLOY_DIR_NOT_EMPTY", `Deploy path ${deployDir} is not empty`);
    }
    logger.warn({ message: "using --force, deleting deploy path", prefix: deployDir });
  }
  await rimraf(deployDir);
  await fs100.promises.mkdir(deployDir, { recursive: true });
  const includeOnlyPackageFiles = !opts2.deployAllFiles;
  await copyProject(selectedProject.rootDir, deployDir, { includeOnlyPackageFiles });
  if (opts2.sharedWorkspaceLockfile) {
    const warning = opts2.forceLegacyDeploy ? "Shared workspace lockfile detected but configuration forces legacy deploy implementation." : await deployFromSharedLockfile(opts2, selectedProject, deployDir);
    if (warning) {
      globalWarn(warning);
    } else {
      return;
    }
  }
  const deployedProject = opts2.allProjects?.find(({ rootDir }) => rootDir === selectedProject.rootDir);
  if (deployedProject) {
    deployedProject.modulesDir = path191.relative(selectedProject.rootDir, path191.join(deployDir, "node_modules"));
  }
  await install_exports.handler({
    ...opts2,
    confirmModulesPurge: false,
    // Deploy doesn't work with dedupePeerDependents=true currently as for deploy
    // we need to select a single project for install, while dedupePeerDependents
    // doesn't work with filters right now.
    // Related issue: https://github.com/pnpm/pnpm/issues/6858
    dedupePeerDependents: false,
    // If enabled, dedupe-injected-deps will symlink workspace packages in the
    // deployed dir to their original (non-deployed) directory in an attempt to
    // dedupe workspace packages that don't need to be injected. The deployed
    // dir shouldn't have symlinks to the original workspace. Disable
    // dedupe-injected-deps to always inject workspace packages since copying is
    // desirable.
    dedupeInjectedDeps: false,
    // Compute the wanted lockfile correctly by setting pruneLockfileImporters.
    // Since pnpm deploy only installs dependencies for a single selected
    // project, other projects in the "importers" lockfile section will be
    // empty when node-linker=hoisted.
    //
    // For example, when deploying project-1, project-2 may not be populated,
    // even if it has dependencies.
    //
    //   importers:
    //     project-1:
    //       dependencies:
    //         foo:
    //           specifier: ^1.0.0
    //           version: ^1.0.0
    //     project-2: {}
    //
    // Avoid including these empty importers in the in-memory wanted lockfile.
    // This is important when node-linker=hoisted to prevent project-2 from
    // being included in the hoisted install. If project-2 is errantly hoisted
    // to the root node_modules dir, downstream logic will fail to inject it to
    // the deploy directory. It's also just weird to include empty importers
    // that don't matter to the filtered lockfile generated for pnpm deploy.
    pruneLockfileImporters: true,
    // The node_modules for a pnpm deploy should be self-contained. The global
    // virtual store would create symlinks outside of the deploy directory.
    enableGlobalVirtualStore: false,
    depth: Infinity,
    hooks: {
      ...opts2.hooks,
      readPackage: [
        ...opts2.hooks?.readPackage ?? [],
        deployHook
      ]
    },
    frozenLockfile: false,
    preferFrozenLockfile: false,
    // Deploy doesn't work currently with hoisted node_modules.
    // TODO: make it work as we need to prefer packages from the lockfile during deployment.
    useLockfile: opts2.nodeLinker !== "hoisted",
    saveLockfile: false,
    virtualStoreDir: path191.join(deployDir, "node_modules/.pnpm"),
    modulesDir: path191.relative(opts2.workspaceDir, path191.join(deployDir, "node_modules")),
    includeOnlyPackageFiles
  });
}
async function copyProject(src2, dest, opts2) {
  const { filesMap } = await fetchFromDir(src2, opts2);
  const importPkg = createIndexedPkgImporter("clone-or-copy");
  importPkg(dest, { filesMap, force: true, resolvedFrom: "local-dir" });
}
async function deployFromSharedLockfile(opts2, selectedProject, deployDir) {
  if (!opts2.injectWorkspacePackages) {
    throw new PnpmError("DEPLOY_NONINJECTED_WORKSPACE", 'By default, starting from pnpm v10, we only deploy from workspaces that have "inject-workspace-packages=true" set', {
      hint: 'If you want to deploy without using injected dependencies, run "pnpm deploy" with the "--legacy" flag or set "force-legacy-deploy" to true'
    });
  }
  const { allProjects, lockfileDir, rootProjectManifestDir, workspaceDir } = opts2;
  if (!allProjects)
    throw new Error("opts.allProjects is undefined.");
  if (!lockfileDir)
    throw new Error("opts.lockfileDir is undefined.");
  if (!workspaceDir)
    throw new Error("opts.workspaceDir is undefined.");
  const lockfile = await readWantedLockfile(lockfileDir, { ignoreIncompatible: false });
  if (!lockfile) {
    return "Shared lockfile not found. Falling back to installing without a lockfile.";
  }
  const projectId = getLockfileImporterId(lockfileDir, selectedProject.rootDir);
  const deployFiles = createDeployFiles({
    allProjects,
    deployDir,
    lockfile,
    lockfileDir,
    patchedDependencies: opts2.patchedDependencies,
    selectedProjectManifest: selectedProject.manifest,
    projectId,
    rootProjectManifestDir,
    allowBuilds: opts2.allowBuilds
  });
  const filesToWrite = [
    fs100.promises.writeFile(path191.join(deployDir, "package.json"), JSON.stringify(deployFiles.manifest, void 0, 2) + "\n"),
    writeWantedLockfile(deployDir, deployFiles.lockfile)
  ];
  if (deployFiles.workspaceManifest) {
    filesToWrite.push(writeYamlFile(path191.join(deployDir, WORKSPACE_MANIFEST_FILENAME), deployFiles.workspaceManifest));
  }
  await Promise.all(filesToWrite);
  try {
    await install_exports.handler({
      ...opts2,
      allProjects: void 0,
      allProjectsGraph: void 0,
      selectedProjectsGraph: void 0,
      rootProjectManifest: deployFiles.manifest,
      // The node_modules for a pnpm deploy should be self-contained. The global
      // virtual store would create symlinks outside of the deploy directory.
      enableGlobalVirtualStore: false,
      rootProjectManifestDir: deployDir,
      dir: deployDir,
      lockfileDir: deployDir,
      workspaceDir: void 0,
      virtualStoreDir: void 0,
      modulesDir: void 0,
      confirmModulesPurge: false,
      frozenLockfile: true,
      injectWorkspacePackages: void 0,
      // the effects of injecting workspace packages should already be part of the package snapshots
      overrides: void 0,
      // the effects of the overrides should already be part of the package snapshots
      packageExtensions: void 0,
      // the effects of the package extensions should already be part of the package snapshots
      configDependencies: void 0,
      // configDependencies (e.g. pacquet) are not installed into the deploy dir, so the install engine they designate isn't on disk to invoke
      hooks: {
        ...opts2.hooks,
        readPackage: [
          ...opts2.hooks?.readPackage ?? [],
          deployHook
        ],
        calculatePnpmfileChecksum: void 0
        // the effects of the pnpmfile should already be part of the package snapshots
      }
    });
  } catch (error) {
    globalWarn(`Deployment with a shared lockfile has failed. If this is a bug, please report it at <https://github.com/pnpm/pnpm/issues>.
As a workaround, add the following to pnpm-workspace.yaml:

  forceLegacyDeploy: true`);
    throw error;
  }
  return void 0;
}
var FORCE_LEGACY_DEPLOY, shorthands16, DEPLOY_OWN_OPTIONS, commandNames59, overridableByScript3;
var init_deploy = __esm({
  "../releasing/commands/lib/deploy/deploy.js"() {
    "use strict";
    init_lib92();
    init_lib29();
    init_lib61();
    init_lib();
    init_lib2();
    init_lib38();
    init_lib83();
    init_lib165();
    init_lib138();
    init_lib78();
    init_lib3();
    init_rimraf();
    init_es();
    init_lib63();
    init_write_yaml_file();
    init_createDeployFiles();
    init_deployHook();
    FORCE_LEGACY_DEPLOY = "force-legacy-deploy";
    shorthands16 = {
      ...install_exports.shorthands,
      legacy: [`--config.${FORCE_LEGACY_DEPLOY}=true`]
    };
    DEPLOY_OWN_OPTIONS = pick_default([FORCE_LEGACY_DEPLOY], types2);
    commandNames59 = ["deploy"];
    overridableByScript3 = true;
  }
});

// ../releasing/commands/lib/deploy/index.js
var init_deploy2 = __esm({
  "../releasing/commands/lib/deploy/index.js"() {
    "use strict";
    init_deploy();
  }
});

// ../releasing/commands/lib/pack-app/packApp.js
var packApp_exports = {};
__export(packApp_exports, {
  cliOptionsTypes: () => cliOptionsTypes56,
  commandNames: () => commandNames60,
  handler: () => handler60,
  help: () => help60,
  rcOptionsTypes: () => rcOptionsTypes53,
  shorthands: () => shorthands17
});
import fs101 from "node:fs";
import { mkdir, mkdtemp, readFile as readFile3, rm as rm2, writeFile as writeFile2 } from "node:fs/promises";
import os13 from "node:os";
import path192 from "node:path";
function rcOptionsTypes53() {
  return {};
}
function cliOptionsTypes56() {
  return {
    entry: String,
    target: [String, Array],
    runtime: String,
    "output-dir": String,
    "output-name": String
  };
}
function help60() {
  return renderHelp({
    description: `Pack a CommonJS entry file into a standalone executable for one or more target platforms.

The executable embeds a Node.js binary via the Node.js Single Executable Applications API.
Requires Node.js v${MIN_BUILDER_VERSION.major}.${MIN_BUILDER_VERSION.minor}+ to perform the injection. SEA blobs are not compatible across Node.js minor releases, so the builder Node.js must match the embedded runtime version exactly. The running Node.js is used when it already matches; otherwise a host-arch Node.js of the embedded runtime version is downloaded automatically.

Defaults for --entry, --target, --runtime, --output-dir, and --output-name can be set in the package.json under "pnpm.app". CLI flags override the config; --target entirely replaces the configured list so you can narrow it at invocation time.`,
    url: docsUrl("pack-app"),
    usages: [
      "pnpm pack-app --entry dist/index.cjs --target linux-x64 --target win32-x64",
      `pnpm pack-app --entry dist/index.cjs --target linux-x64-musl --runtime node@${MIN_BUILDER_VERSION.major}`
    ],
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: "Path to the CJS entry file to embed in the executable",
            name: "--entry"
          },
          {
            description: `Target to build for. May be specified multiple times. Supported: ${SUPPORTED_TARGETS}`,
            name: "--target",
            shortAlias: "-t"
          },
          {
            description: `Runtime to embed in the output executables, as a "<name>@<version>" spec (e.g. "node@${MIN_BUILDER_VERSION.major}", "node@${MIN_BUILDER_VERSION.major}.${MIN_BUILDER_VERSION.minor}.0"). Only "node" is supported today, and the version must be >= v${MIN_BUILDER_VERSION.major}.${MIN_BUILDER_VERSION.minor} (the minimum that supports --build-sea). Defaults to the running Node.js version.`,
            name: "--runtime"
          },
          {
            description: 'Output directory for the built executables. Defaults to "dist-app".',
            name: "--output-dir",
            shortAlias: "-o"
          },
          {
            description: "Name for the output executable (without extension). Defaults to the unscoped package name.",
            name: "--output-name"
          }
        ]
      }
    ]
  });
}
async function handler60(opts2, params) {
  const project = await readProjectAppConfig(opts2.dir);
  const entryPath = opts2.entry ?? params[0] ?? project.app?.entry;
  if (!entryPath) {
    throw new PnpmError("PACK_APP_MISSING_ENTRY", '"pnpm pack-app" requires a CJS entry file \u2014 pass --entry <path> or set "pnpm.app.entry" in package.json.');
  }
  const resolvedEntry = path192.resolve(opts2.dir, entryPath);
  let entryStat;
  try {
    entryStat = fs101.statSync(resolvedEntry);
  } catch {
    throw new PnpmError("PACK_APP_ENTRY_NOT_FOUND", `Entry file not found: ${resolvedEntry}`);
  }
  if (!entryStat.isFile()) {
    throw new PnpmError("PACK_APP_ENTRY_NOT_FILE", `Entry path must be a regular file: ${resolvedEntry}`);
  }
  const cliTargets = opts2.target == null ? void 0 : Array.isArray(opts2.target) ? opts2.target : [opts2.target];
  const rawTargets = cliTargets ?? project.app?.targets ?? [];
  if (rawTargets.length === 0) {
    throw new PnpmError("PACK_APP_MISSING_TARGET", `"pnpm pack-app" requires at least one target \u2014 pass --target <triplet> or set "pnpm.app.targets" in package.json. Supported: ${SUPPORTED_TARGETS}`);
  }
  const targets = rawTargets.map(parseTarget);
  const runtimeSpec = opts2.runtime ?? project.app?.runtime ?? `node@${process.version.slice(1)}`;
  const { version: requestedNodeSpec } = parseRuntime(runtimeSpec);
  const outputDir = path192.resolve(opts2.dir, opts2.outputDir ?? project.app?.outputDir ?? "dist-app");
  await mkdir(outputDir, { recursive: true });
  const outputName = validateOutputName(opts2.outputName ?? project.app?.outputName ?? deriveOutputNameFromPackage(project, opts2.dir));
  const fetch2 = createFetchFromRegistry(opts2);
  const buildRoot = path192.join(opts2.pnpmHomeDir, "pack-app");
  const resolvedTargetVersion = await resolveVersion(fetch2, requestedNodeSpec, opts2.nodeDownloadMirrors);
  const builderBin = await resolveBuilderBinary({
    buildRoot,
    targetVersion: resolvedTargetVersion
  });
  const results = [];
  for (const target2 of targets) {
    const embeddedNodeBin = await ensureNodeRuntime({
      buildRoot,
      version: resolvedTargetVersion,
      platform: target2.platform,
      arch: target2.arch,
      libc: target2.libc
    });
    const targetOutputDir = path192.join(outputDir, target2.raw);
    await mkdir(targetOutputDir, { recursive: true });
    const outputFile = target2.platform === "win32" ? path192.join(targetOutputDir, `${outputName}.exe`) : path192.join(targetOutputDir, outputName);
    const seaConfig = {
      main: resolvedEntry,
      output: outputFile,
      executable: embeddedNodeBin,
      disableExperimentalSEAWarning: true,
      useCodeCache: false,
      useSnapshot: false
    };
    const tmpConfigDir = await mkdtemp(path192.join(os13.tmpdir(), "pnpm-pack-app-"));
    const configPath = path192.join(tmpConfigDir, "sea-config.json");
    await writeFile2(configPath, JSON.stringify(seaConfig, null, 2), { flag: "wx" });
    try {
      await safeExeca(builderBin, ["--build-sea", configPath], { stdio: "inherit" });
    } finally {
      await rm2(tmpConfigDir, { recursive: true, force: true }).catch(() => {
      });
    }
    await adHocSignMacBinary(target2, outputFile);
    results.push(`  ${target2.raw}: ${outputFile} (Node.js ${resolvedTargetVersion})`);
  }
  return `Built ${targets.length} executable${targets.length === 1 ? "" : "s"}:
${results.join("\n")}`;
}
async function resolveBuilderBinary(ctx) {
  if (runningNodeCanBuildSea() && process.version === `v${ctx.targetVersion}`) {
    return process.execPath;
  }
  if (!builderVersionCanBuildSea(ctx.targetVersion)) {
    throw new PnpmError("PACK_APP_RUNTIME_TOO_OLD", `The embedded runtime "node@${ctx.targetVersion}" is older than Node.js v${MIN_BUILDER_VERSION.major}.${MIN_BUILDER_VERSION.minor}, which is the minimum version that supports --build-sea.`, { hint: `Pass --runtime node@${MIN_BUILDER_VERSION.major}.${MIN_BUILDER_VERSION.minor}.0 (or newer) or set "pnpm.app.runtime" in package.json.` });
  }
  return ensureNodeRuntime({
    buildRoot: ctx.buildRoot,
    version: ctx.targetVersion,
    platform: process.platform,
    arch: process.arch,
    // Pin libc to the host's. Otherwise a caller that had set
    // supportedArchitectures.libc=musl in their config would cause the
    // glibc host to download a musl Node that it cannot execute.
    libc: hostLinuxLibc()
  });
}
function hostLinuxLibc() {
  if (process.platform !== "linux")
    return void 0;
  const family = (0, import_detect_libc5.familySync)();
  return family === "musl" ? "musl" : "glibc";
}
function runningNodeCanBuildSea() {
  return builderVersionCanBuildSea(process.version.slice(1));
}
function builderVersionCanBuildSea(version2) {
  const [majorStr, minorStr] = version2.split(".");
  const major = Number(majorStr);
  const minor = Number(minorStr);
  return major > MIN_BUILDER_VERSION.major || major === MIN_BUILDER_VERSION.major && minor >= MIN_BUILDER_VERSION.minor;
}
async function ensureNodeRuntime(opts2) {
  const libc = opts2.platform === "linux" ? opts2.libc ?? "glibc" : opts2.libc;
  const targetId = [opts2.platform, opts2.arch, libc].filter(Boolean).join("-");
  const installDir = path192.join(opts2.buildRoot, `${targetId}-${opts2.version}`);
  const nodeDir = path192.join(installDir, "node_modules", "node");
  const binaryPath = nodeBinaryPath(nodeDir, opts2.platform);
  if (fs101.existsSync(binaryPath))
    return binaryPath;
  await mkdir(installDir, { recursive: true });
  await writeFile2(path192.join(installDir, "package.json"), `${JSON.stringify({ name: `pnpm-pack-app-${targetId}`, private: true }, null, 2)}
`);
  const args = [
    "add",
    "--ignore-scripts",
    "--ignore-workspace",
    `--os=${opts2.platform}`,
    `--cpu=${opts2.arch}`
  ];
  if (libc != null) {
    args.push(`--libc=${libc}`);
  }
  args.push(`node@runtime:${opts2.version}`);
  runPnpmCli(args, { cwd: installDir });
  if (!fs101.existsSync(binaryPath)) {
    throw new PnpmError("PACK_APP_NODE_BINARY_MISSING", `Expected Node.js binary at ${binaryPath} after installing node@runtime:${opts2.version}, but it was not found.`);
  }
  return binaryPath;
}
function nodeBinaryPath(nodeDir, platform3) {
  return platform3 === "win32" ? path192.join(nodeDir, "node.exe") : path192.join(nodeDir, "bin", "node");
}
async function resolveVersion(fetch2, specifier, nodeDownloadMirrors) {
  const { releaseChannel, versionSpecifier } = parseNodeSpecifier(specifier);
  const nodeMirrorBaseUrl = getNodeMirror(nodeDownloadMirrors, releaseChannel);
  const version2 = await resolveNodeVersion(fetch2, versionSpecifier, nodeMirrorBaseUrl);
  if (!version2) {
    throw new PnpmError("PACK_APP_NODE_VERSION_NOT_FOUND", `Could not find a Node.js version that satisfies "${specifier}"`);
  }
  return version2;
}
function parseTarget(raw) {
  const match = TARGET_PATTERN.exec(raw);
  if (!match) {
    throw new PnpmError("PACK_APP_INVALID_TARGET", `Invalid target: "${raw}". Expected format: <os>-<arch>[-<libc>] where <os> is ${SUPPORTED_OS.join("|")}, <arch> is x64|arm64, optional <libc> is musl (linux only).`);
  }
  const [, platform3, arch, libc] = match;
  if (libc === "musl" && platform3 !== "linux") {
    throw new PnpmError("PACK_APP_INVALID_TARGET", `The "musl" libc suffix is only valid for linux targets (got "${raw}").`);
  }
  return { raw, platform: platform3, arch, libc: libc || void 0 };
}
function parseRuntime(spec) {
  const match = RUNTIME_PATTERN.exec(spec);
  if (!match) {
    throw new PnpmError("PACK_APP_INVALID_RUNTIME", `Invalid runtime "${spec}". Expected format: <name>@<version> (supported runtimes: ${SUPPORTED_RUNTIMES.join(", ")}; e.g. "node@${MIN_BUILDER_VERSION.major}.${MIN_BUILDER_VERSION.minor}.0").`);
  }
  return { name: match[1], version: match[2] };
}
function validateOutputName(name) {
  if (name !== path192.basename(name) || name === "" || name === "." || name === ".." || name.includes("/") || name.includes("\\") || INVALID_FILENAME_CHARS.test(name) || RESERVED_WINDOWS_NAME.test(name) || /[. ]$/.test(name)) {
    throw new PnpmError("PACK_APP_INVALID_OUTPUT_NAME", `Invalid --output-name "${name}". The name must be a plain filename without path separators, Windows-reserved names (e.g. CON, NUL), characters like <>:"|?* or NUL, and must not end in a dot or space.`);
  }
  return name;
}
async function readProjectAppConfig(dir) {
  let raw;
  try {
    raw = await readFile3(path192.join(dir, "package.json"), "utf8");
  } catch {
    return {};
  }
  let manifest;
  try {
    manifest = JSON.parse(raw);
  } catch (err) {
    throw new PnpmError("PACK_APP_INVALID_PACKAGE_JSON", `Failed to parse ${path192.join(dir, "package.json")}: ${err.message}`);
  }
  if (!isObject3(manifest))
    return {};
  const name = typeof manifest.name === "string" && manifest.name !== "" ? manifest.name : void 0;
  const pnpmField = isObject3(manifest.pnpm) ? manifest.pnpm : void 0;
  const appField = pnpmField && isObject3(pnpmField.app) ? pnpmField.app : void 0;
  if (!appField)
    return { name };
  return { name, app: validateAppConfig(appField) };
}
function validateAppConfig(raw) {
  const known = /* @__PURE__ */ new Set(["entry", "targets", "runtime", "outputDir", "outputName"]);
  for (const key of Object.keys(raw)) {
    if (!known.has(key)) {
      throw new PnpmError("PACK_APP_INVALID_CONFIG", `Unknown "pnpm.app.${key}" setting in package.json. Allowed keys: ${Array.from(known).join(", ")}.`);
    }
  }
  const config = {};
  if (raw.entry != null) {
    if (typeof raw.entry !== "string") {
      throw new PnpmError("PACK_APP_INVALID_CONFIG", '"pnpm.app.entry" must be a string.');
    }
    config.entry = raw.entry;
  }
  if (raw.targets != null) {
    if (!Array.isArray(raw.targets) || !raw.targets.every((t2) => typeof t2 === "string")) {
      throw new PnpmError("PACK_APP_INVALID_CONFIG", '"pnpm.app.targets" must be an array of strings.');
    }
    config.targets = raw.targets;
  }
  if (raw.runtime != null) {
    if (typeof raw.runtime !== "string") {
      throw new PnpmError("PACK_APP_INVALID_CONFIG", '"pnpm.app.runtime" must be a string.');
    }
    config.runtime = raw.runtime;
  }
  if (raw.outputDir != null) {
    if (typeof raw.outputDir !== "string") {
      throw new PnpmError("PACK_APP_INVALID_CONFIG", '"pnpm.app.outputDir" must be a string.');
    }
    config.outputDir = raw.outputDir;
  }
  if (raw.outputName != null) {
    if (typeof raw.outputName !== "string") {
      throw new PnpmError("PACK_APP_INVALID_CONFIG", '"pnpm.app.outputName" must be a string.');
    }
    config.outputName = raw.outputName;
  }
  return config;
}
function deriveOutputNameFromPackage(project, dir) {
  if (!project.name) {
    throw new PnpmError("PACK_APP_NO_OUTPUT_NAME", `Could not determine the output name: package.json in ${dir} has no "name" field.`, { hint: 'Pass --output-name <name> or set "pnpm.app.outputName" in package.json.' });
  }
  return project.name.replace(/^@[^/]+\//, "");
}
function isObject3(value) {
  return value != null && typeof value === "object" && !Array.isArray(value);
}
async function adHocSignMacBinary(target2, outputFile) {
  if (target2.platform !== "darwin")
    return;
  if (process.platform === "darwin") {
    await safeExeca("codesign", ["--sign", "-", outputFile], { stdio: "inherit" });
    return;
  }
  if (process.platform === "linux") {
    try {
      await safeExeca("ldid", ["-S", outputFile], { stdio: "inherit" });
    } catch {
      throw new PnpmError("PACK_APP_MACOS_SIGN_FAILED", `Cross-compiled macOS binary at ${outputFile} could not be ad-hoc signed with "ldid".`, { hint: 'Install ldid (https://github.com/ProcursusTeam/ldid) or re-sign the binary on macOS with "codesign --sign - <file>".' });
    }
    return;
  }
  throw new PnpmError("PACK_APP_MACOS_SIGN_UNSUPPORTED_HOST", `Cannot ad-hoc sign the macOS binary at ${outputFile} on a ${process.platform} host.`, { hint: 'Build macOS targets on a macOS or Linux host, or re-sign the produced binary yourself with "codesign --sign -" on macOS.' });
}
var import_detect_libc5, MIN_BUILDER_VERSION, SUPPORTED_OS, SUPPORTED_TARGETS, commandNames60, shorthands17, TARGET_PATTERN, SUPPORTED_RUNTIMES, RUNTIME_PATTERN, INVALID_FILENAME_CHARS, RESERVED_WINDOWS_NAME;
var init_packApp = __esm({
  "../releasing/commands/lib/pack-app/packApp.js"() {
    "use strict";
    init_lib29();
    init_lib34();
    init_lib2();
    init_lib158();
    init_lib49();
    import_detect_libc5 = __toESM(require_detect_libc(), 1);
    init_lib26();
    init_lib63();
    MIN_BUILDER_VERSION = { major: 25, minor: 5 };
    SUPPORTED_OS = ["linux", "darwin", "win32"];
    SUPPORTED_TARGETS = "linux-x64, linux-x64-musl, linux-arm64, linux-arm64-musl, darwin-x64, darwin-arm64, win32-x64, win32-arm64";
    commandNames60 = ["pack-app"];
    shorthands17 = {
      t: "--target",
      o: "--output-dir"
    };
    TARGET_PATTERN = /^(linux|darwin|win32)-(x64|arm64)(?:-(musl))?$/;
    SUPPORTED_RUNTIMES = ["node"];
    RUNTIME_PATTERN = /^(node)@(.+)$/;
    INVALID_FILENAME_CHARS = /[<>:"|?*\0]/;
    RESERVED_WINDOWS_NAME = /^(?:con|prn|aux|nul|com[1-9]|lpt[1-9])(?:\..*)?$/i;
  }
});

// ../releasing/commands/lib/pack-app/index.js
var init_pack_app = __esm({
  "../releasing/commands/lib/pack-app/index.js"() {
    "use strict";
    init_packApp();
  }
});

// ../releasing/exportable-manifest/lib/overridePublishConfig.js
function overridePublishConfig(publishManifest) {
  const { publishConfig } = publishManifest;
  if (!publishConfig)
    return;
  for (const key in publishConfig) {
    if (!PUBLISH_CONFIG_WHITELIST.has(key))
      continue;
    const value = publishConfig[key];
    publishManifest[key] = value;
    delete publishConfig[key];
  }
  if (isEmpty_default(publishConfig)) {
    delete publishManifest.publishConfig;
  }
}
var PUBLISH_CONFIG_WHITELIST;
var init_overridePublishConfig = __esm({
  "../releasing/exportable-manifest/lib/overridePublishConfig.js"() {
    "use strict";
    init_es();
    PUBLISH_CONFIG_WHITELIST = /* @__PURE__ */ new Set([
      // manifest fields that may make sense to overwrite
      "bin",
      "engines",
      "type",
      "imports",
      // https://github.com/stereobooster/package.json#package-bundlers
      "main",
      "module",
      "typings",
      "types",
      "exports",
      "browser",
      "esnext",
      "es2015",
      "unpkg",
      "umd:main",
      // These are useful to hide in order to avoid warnings during local development
      "os",
      "cpu",
      "libc",
      // https://www.typescriptlang.org/docs/handbook/declaration-files/publishing.html#version-selection-with-typesversions
      "typesVersions"
    ]);
  }
});

// ../releasing/exportable-manifest/lib/transform/bin.js
function transformBin(manifest) {
  if (manifest.bin == null || typeof manifest.bin === "object")
    return manifest;
  const { bin, ...rest } = manifest;
  return {
    ...rest,
    bin: normalizeBinObject(manifest.name, bin)
  };
}
function normalizeBinObject(pkgName, bin) {
  if (typeof bin === "object")
    return bin;
  const binName = normalizeBinName(pkgName);
  return { [binName]: bin };
}
function normalizeBinName(name) {
  if (name[0] !== "@")
    return name;
  const slashIndex = name.indexOf("/");
  if (slashIndex < 0) {
    throw new InvalidScopedPackageNameError(name);
  }
  return name.slice(slashIndex + 1);
}
var InvalidScopedPackageNameError;
var init_bin = __esm({
  "../releasing/exportable-manifest/lib/transform/bin.js"() {
    "use strict";
    init_lib2();
    InvalidScopedPackageNameError = class extends PnpmError {
      invalidName;
      constructor(invalidName) {
        super("INVALID_SCOPED_PACKAGE_NAME", `The name ${JSON.stringify(invalidName)} is not a valid scoped package name`);
        this.invalidName = invalidName;
      }
    };
  }
});

// ../releasing/exportable-manifest/lib/transform/peerDependenciesMeta.js
function transformPeerDependenciesMeta(manifest) {
  if (!manifest.peerDependenciesMeta)
    return manifest;
  const inputPeerDepsMeta = manifest.peerDependenciesMeta;
  const outputPeerDepsMeta = {};
  for (const key in inputPeerDepsMeta) {
    const { optional, ...rest } = inputPeerDepsMeta[key];
    outputPeerDepsMeta[key] = {
      ...rest,
      optional: optional ?? false
    };
  }
  return {
    ...manifest,
    peerDependenciesMeta: outputPeerDepsMeta
  };
}
var init_peerDependenciesMeta = __esm({
  "../releasing/exportable-manifest/lib/transform/peerDependenciesMeta.js"() {
    "use strict";
  }
});

// ../releasing/exportable-manifest/lib/transform/requiredFields.js
function transformRequiredFields(manifest) {
  if (!manifest.name)
    throw new MissingRequiredFieldError("name");
  if (!manifest.version)
    throw new MissingRequiredFieldError("version");
  return manifest;
}
var MissingRequiredFieldError;
var init_requiredFields = __esm({
  "../releasing/exportable-manifest/lib/transform/requiredFields.js"() {
    "use strict";
    init_lib2();
    MissingRequiredFieldError = class extends PnpmError {
      field;
      constructor(field) {
        super("MISSING_REQUIRED_FIELD", `Missing required field ${JSON.stringify(field)}`);
        this.field = field;
      }
    };
  }
});

// ../releasing/exportable-manifest/lib/transform/index.js
var transform;
var init_transform = __esm({
  "../releasing/exportable-manifest/lib/transform/index.js"() {
    "use strict";
    init_es();
    init_bin();
    init_peerDependenciesMeta();
    init_requiredFields();
    transform = pipe(transformRequiredFields, transformBin, transformPeerDependenciesMeta);
  }
});

// ../releasing/exportable-manifest/lib/index.js
import path193 from "node:path";
async function createExportableManifest(dir, originalManifest, opts2) {
  let publishManifest;
  if (opts2.skipManifestObfuscation) {
    publishManifest = omit_default(["pnpm"], clone_default(originalManifest));
  } else {
    publishManifest = omit_default(["scripts", "packageManager", "pnpm"], originalManifest);
    if (originalManifest.scripts != null) {
      publishManifest.scripts = omit_default(PREPUBLISH_SCRIPTS2, originalManifest.scripts);
    }
  }
  const catalogResolver = resolveFromCatalog.bind(null, opts2.catalogs);
  const replaceCatalogProtocol = resolveCatalogProtocol2.bind(null, catalogResolver);
  const convertDependencyForPublish = combineConverters(replaceWorkspaceProtocol, replaceCatalogProtocol, replaceJsrProtocol);
  await Promise.all(["dependencies", "devDependencies", "optionalDependencies"].map(async (depsField) => {
    const deps = await makePublishDependencies(dir, originalManifest[depsField], {
      modulesDir: opts2?.modulesDir,
      convertDependencyForPublish
    });
    if (deps != null) {
      publishManifest[depsField] = deps;
    }
  }));
  const peerDependencies = originalManifest.peerDependencies;
  if (peerDependencies) {
    const convertPeersForPublish = combineConverters(replaceWorkspaceProtocolPeerDependency, replaceCatalogProtocol, replaceJsrProtocol);
    publishManifest.peerDependencies = await makePublishDependencies(dir, peerDependencies, {
      modulesDir: opts2?.modulesDir,
      convertDependencyForPublish: convertPeersForPublish
    });
  }
  overridePublishConfig(publishManifest);
  if (opts2?.readmeFile) {
    publishManifest.readme ??= opts2.readmeFile;
  }
  for (const hook of opts2?.hooks?.beforePacking ?? []) {
    publishManifest = await hook(publishManifest, dir) ?? publishManifest;
  }
  return transform(publishManifest);
}
function combineConverters(...converters) {
  return async (depName, depSpec, dir, modulesDir) => {
    let bareSpecifier = depSpec;
    for (const converter of converters) {
      bareSpecifier = await converter(depName, bareSpecifier, dir, modulesDir);
    }
    return bareSpecifier;
  };
}
async function makePublishDependencies(dir, dependencies, { modulesDir, convertDependencyForPublish }) {
  if (dependencies == null)
    return dependencies;
  const publishDependencies = await pMapValues(async (depSpec, depName) => convertDependencyForPublish(depName, depSpec, dir, modulesDir), dependencies);
  return publishDependencies;
}
async function readAndCheckManifest(depName, dependencyDir) {
  const { manifest } = await tryReadProjectManifest(dependencyDir);
  if (!manifest?.name || !manifest?.version) {
    throw new PnpmError("CANNOT_RESOLVE_WORKSPACE_PROTOCOL", `Cannot resolve workspace protocol of dependency "${depName}" because this dependency is not installed. Try running "pnpm install".`);
  }
  return manifest;
}
function resolveCatalogProtocol2(catalogResolver, alias, bareSpecifier) {
  const result2 = catalogResolver({ alias, bareSpecifier });
  switch (result2.type) {
    case "found":
      return result2.resolution.specifier;
    case "unused":
      return bareSpecifier;
    case "misconfiguration":
      throw result2.error;
  }
}
async function replaceWorkspaceProtocol(depName, depSpec, dir, modulesDir) {
  if (!depSpec.startsWith("workspace:")) {
    return depSpec;
  }
  const versionAliasSpecParts = /^workspace:(?:(.+)@)?([\^~*])?$/.exec(depSpec);
  if (versionAliasSpecParts != null) {
    modulesDir = modulesDir ?? path193.join(dir, "node_modules");
    const manifest = await readAndCheckManifest(depName, path193.join(modulesDir, depName));
    const specifierSuffix = versionAliasSpecParts[2];
    const semverRangeToken = specifierSuffix === "^" || specifierSuffix === "~" ? specifierSuffix : "";
    if (depName !== manifest.name) {
      return `npm:${manifest.name}@${semverRangeToken}${manifest.version}`;
    }
    return `${semverRangeToken}${manifest.version}`;
  }
  if (depSpec.startsWith("workspace:./") || depSpec.startsWith("workspace:../")) {
    const manifest = await readAndCheckManifest(depName, path193.join(dir, depSpec.slice(10)));
    if (manifest.name === depName)
      return `${manifest.version}`;
    return `npm:${manifest.name}@${manifest.version}`;
  }
  depSpec = depSpec.slice(10);
  if (depSpec.includes("@")) {
    return `npm:${depSpec}`;
  }
  return depSpec;
}
async function replaceWorkspaceProtocolPeerDependency(depName, depSpec, dir, modulesDir) {
  if (!depSpec.includes("workspace:")) {
    return depSpec;
  }
  const workspaceSemverRegex = /workspace:([\^~*]|>=|>|<=|<)?((\d+|[xX*])(\.(\d+|[xX*])){0,2})?/;
  const versionAliasSpecParts = workspaceSemverRegex.exec(depSpec);
  if (versionAliasSpecParts != null) {
    const [, semverRangGroup = "", version2] = versionAliasSpecParts;
    if (version2) {
      return depSpec.replace("workspace:", "");
    }
    modulesDir = modulesDir ?? path193.join(dir, "node_modules");
    const manifest = await readAndCheckManifest(depName, path193.join(modulesDir, depName));
    const semverRangeToken = semverRangGroup !== "*" ? semverRangGroup : "";
    return depSpec.replace(workspaceSemverRegex, `${semverRangeToken}${manifest.version}`);
  }
  return depSpec.replace("workspace:", "");
}
async function replaceJsrProtocol(depName, depSpec) {
  const spec = parseJsrSpecifier(depSpec, depName);
  if (spec == null) {
    return depSpec;
  }
  return createNpmAliasedSpecifier(spec.npmPkgName, spec.versionSelector);
}
function createNpmAliasedSpecifier(npmPkgName, versionSelector) {
  const npmPkgSpecifier = `npm:${npmPkgName}`;
  if (!versionSelector) {
    return npmPkgSpecifier;
  }
  return `${npmPkgSpecifier}@${versionSelector}`;
}
var PREPUBLISH_SCRIPTS2;
var init_lib166 = __esm({
  "../releasing/exportable-manifest/lib/index.js"() {
    "use strict";
    init_lib95();
    init_lib2();
    init_lib18();
    init_lib13();
    init_lib120();
    init_es();
    init_overridePublishConfig();
    init_transform();
    PREPUBLISH_SCRIPTS2 = [
      "prepublishOnly",
      "prepack",
      "prepare",
      "postpack",
      "publish",
      "postpublish"
    ];
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/events-universal/1.0.1/25319d72b576acee8499a33cc292c5783842396a9864cf0a14352a1742003de2/node_modules/events-universal/default.js
var require_default = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/events-universal/1.0.1/25319d72b576acee8499a33cc292c5783842396a9864cf0a14352a1742003de2/node_modules/events-universal/default.js"(exports2, module2) {
    module2.exports = __require("events");
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fast-fifo/1.3.2/b6533611649aa221ffbeec4e18526a92a2e7afdceb5d452fc8af48f0e80b0f3f/node_modules/fast-fifo/fixed-size.js
var require_fixed_size = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fast-fifo/1.3.2/b6533611649aa221ffbeec4e18526a92a2e7afdceb5d452fc8af48f0e80b0f3f/node_modules/fast-fifo/fixed-size.js"(exports2, module2) {
    module2.exports = class FixedFIFO {
      constructor(hwm) {
        if (!(hwm > 0) || (hwm - 1 & hwm) !== 0) throw new Error("Max size for a FixedFIFO should be a power of two");
        this.buffer = new Array(hwm);
        this.mask = hwm - 1;
        this.top = 0;
        this.btm = 0;
        this.next = null;
      }
      clear() {
        this.top = this.btm = 0;
        this.next = null;
        this.buffer.fill(void 0);
      }
      push(data) {
        if (this.buffer[this.top] !== void 0) return false;
        this.buffer[this.top] = data;
        this.top = this.top + 1 & this.mask;
        return true;
      }
      shift() {
        const last = this.buffer[this.btm];
        if (last === void 0) return void 0;
        this.buffer[this.btm] = void 0;
        this.btm = this.btm + 1 & this.mask;
        return last;
      }
      peek() {
        return this.buffer[this.btm];
      }
      isEmpty() {
        return this.buffer[this.btm] === void 0;
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fast-fifo/1.3.2/b6533611649aa221ffbeec4e18526a92a2e7afdceb5d452fc8af48f0e80b0f3f/node_modules/fast-fifo/index.js
var require_fast_fifo = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fast-fifo/1.3.2/b6533611649aa221ffbeec4e18526a92a2e7afdceb5d452fc8af48f0e80b0f3f/node_modules/fast-fifo/index.js"(exports2, module2) {
    var FixedFIFO = require_fixed_size();
    module2.exports = class FastFIFO {
      constructor(hwm) {
        this.hwm = hwm || 16;
        this.head = new FixedFIFO(this.hwm);
        this.tail = this.head;
        this.length = 0;
      }
      clear() {
        this.head = this.tail;
        this.head.clear();
        this.length = 0;
      }
      push(val) {
        this.length++;
        if (!this.head.push(val)) {
          const prev = this.head;
          this.head = prev.next = new FixedFIFO(2 * this.head.buffer.length);
          this.head.push(val);
        }
      }
      shift() {
        if (this.length !== 0) this.length--;
        const val = this.tail.shift();
        if (val === void 0 && this.tail.next) {
          const next2 = this.tail.next;
          this.tail.next = null;
          this.tail = next2;
          return this.tail.shift();
        }
        return val;
      }
      peek() {
        const val = this.tail.peek();
        if (val === void 0 && this.tail.next) return this.tail.next.peek();
        return val;
      }
      isEmpty() {
        return this.length === 0;
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/b4a/1.8.1/030010a2f1bfe2d9ee726c26dd8a10daba27251ddf27640b9142025f9233e7c1/node_modules/b4a/index.js
var require_b4a = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/b4a/1.8.1/030010a2f1bfe2d9ee726c26dd8a10daba27251ddf27640b9142025f9233e7c1/node_modules/b4a/index.js"(exports2, module2) {
    function isBuffer(value) {
      return Buffer.isBuffer(value) || value instanceof Uint8Array;
    }
    function isEncoding(encoding) {
      return Buffer.isEncoding(encoding);
    }
    function alloc(size, fill2, encoding) {
      return Buffer.alloc(size, fill2, encoding);
    }
    function allocUnsafe(size) {
      return Buffer.allocUnsafe(size);
    }
    function allocUnsafeSlow(size) {
      return Buffer.allocUnsafeSlow(size);
    }
    function byteLength(string, encoding) {
      return Buffer.byteLength(string, encoding);
    }
    function compare2(a2, b) {
      return Buffer.compare(a2, b);
    }
    function concat(buffers, totalLength) {
      return Buffer.concat(buffers, totalLength);
    }
    function copy2(source, target2, targetStart, start, end) {
      return toBuffer(source).copy(target2, targetStart, start, end);
    }
    function equals3(a2, b) {
      return toBuffer(a2).equals(b);
    }
    function fill(buffer3, value, offset, end, encoding) {
      return toBuffer(buffer3).fill(value, offset, end, encoding);
    }
    function from5(value, encodingOrOffset, length) {
      return Buffer.from(value, encodingOrOffset, length);
    }
    function includes(buffer3, value, byteOffset, encoding) {
      return toBuffer(buffer3).includes(value, byteOffset, encoding);
    }
    function indexOf2(buffer3, value, byfeOffset, encoding) {
      return toBuffer(buffer3).indexOf(value, byfeOffset, encoding);
    }
    function lastIndexOf(buffer3, value, byteOffset, encoding) {
      return toBuffer(buffer3).lastIndexOf(value, byteOffset, encoding);
    }
    function swap16(buffer3) {
      return toBuffer(buffer3).swap16();
    }
    function swap32(buffer3) {
      return toBuffer(buffer3).swap32();
    }
    function swap64(buffer3) {
      return toBuffer(buffer3).swap64();
    }
    function toBuffer(buffer3) {
      if (Buffer.isBuffer(buffer3)) return buffer3;
      return Buffer.from(buffer3.buffer, buffer3.byteOffset, buffer3.byteLength);
    }
    function toString4(buffer3, encoding, start, end) {
      return toBuffer(buffer3).toString(encoding, start, end);
    }
    function write(buffer3, string, offset, length, encoding) {
      return toBuffer(buffer3).write(string, offset, length, encoding);
    }
    function readDoubleBE(buffer3, offset) {
      return toBuffer(buffer3).readDoubleBE(offset);
    }
    function readDoubleLE(buffer3, offset) {
      return toBuffer(buffer3).readDoubleLE(offset);
    }
    function readFloatBE(buffer3, offset) {
      return toBuffer(buffer3).readFloatBE(offset);
    }
    function readFloatLE(buffer3, offset) {
      return toBuffer(buffer3).readFloatLE(offset);
    }
    function readInt32BE(buffer3, offset) {
      return toBuffer(buffer3).readInt32BE(offset);
    }
    function readInt32LE(buffer3, offset) {
      return toBuffer(buffer3).readInt32LE(offset);
    }
    function readUInt32BE(buffer3, offset) {
      return toBuffer(buffer3).readUInt32BE(offset);
    }
    function readUInt32LE(buffer3, offset) {
      return toBuffer(buffer3).readUInt32LE(offset);
    }
    function writeDoubleBE(buffer3, value, offset) {
      return toBuffer(buffer3).writeDoubleBE(value, offset);
    }
    function writeDoubleLE(buffer3, value, offset) {
      return toBuffer(buffer3).writeDoubleLE(value, offset);
    }
    function writeFloatBE(buffer3, value, offset) {
      return toBuffer(buffer3).writeFloatBE(value, offset);
    }
    function writeFloatLE(buffer3, value, offset) {
      return toBuffer(buffer3).writeFloatLE(value, offset);
    }
    function writeInt32BE(buffer3, value, offset) {
      return toBuffer(buffer3).writeInt32BE(value, offset);
    }
    function writeInt32LE(buffer3, value, offset) {
      return toBuffer(buffer3).writeInt32LE(value, offset);
    }
    function writeUInt32BE(buffer3, value, offset) {
      return toBuffer(buffer3).writeUInt32BE(value, offset);
    }
    function writeUInt32LE(buffer3, value, offset) {
      return toBuffer(buffer3).writeUInt32LE(value, offset);
    }
    module2.exports = {
      isBuffer,
      isEncoding,
      alloc,
      allocUnsafe,
      allocUnsafeSlow,
      byteLength,
      compare: compare2,
      concat,
      copy: copy2,
      equals: equals3,
      fill,
      from: from5,
      includes,
      indexOf: indexOf2,
      lastIndexOf,
      swap16,
      swap32,
      swap64,
      toBuffer,
      toString: toString4,
      write,
      readDoubleBE,
      readDoubleLE,
      readFloatBE,
      readFloatLE,
      readInt32BE,
      readInt32LE,
      readUInt32BE,
      readUInt32LE,
      writeDoubleBE,
      writeDoubleLE,
      writeFloatBE,
      writeFloatLE,
      writeInt32BE,
      writeInt32LE,
      writeUInt32BE,
      writeUInt32LE
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/text-decoder/1.2.7/b3213d62c3bf59365d2d9a8f1e39dc74e32ec82e9e2d2d94f58e46d62515a050/node_modules/text-decoder/lib/pass-through-decoder.js
var require_pass_through_decoder = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/text-decoder/1.2.7/b3213d62c3bf59365d2d9a8f1e39dc74e32ec82e9e2d2d94f58e46d62515a050/node_modules/text-decoder/lib/pass-through-decoder.js"(exports2, module2) {
    var b4a = require_b4a();
    module2.exports = class PassThroughDecoder {
      constructor(encoding) {
        this.encoding = encoding;
      }
      get remaining() {
        return 0;
      }
      decode(data) {
        return b4a.toString(data, this.encoding);
      }
      flush() {
        return "";
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/text-decoder/1.2.7/b3213d62c3bf59365d2d9a8f1e39dc74e32ec82e9e2d2d94f58e46d62515a050/node_modules/text-decoder/lib/utf8-decoder.js
var require_utf8_decoder = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/text-decoder/1.2.7/b3213d62c3bf59365d2d9a8f1e39dc74e32ec82e9e2d2d94f58e46d62515a050/node_modules/text-decoder/lib/utf8-decoder.js"(exports2, module2) {
    var b4a = require_b4a();
    module2.exports = class UTF8Decoder {
      constructor() {
        this._reset();
      }
      get remaining() {
        return this.bytesSeen;
      }
      decode(data) {
        if (data.byteLength === 0) return "";
        if (this.bytesNeeded === 0 && trailingIncomplete(data, 0) === 0) {
          this.bytesSeen = trailingBytesSeen(data);
          return b4a.toString(data, "utf8");
        }
        let result2 = "";
        let start = 0;
        if (this.bytesNeeded > 0) {
          while (start < data.byteLength) {
            const byte = data[start];
            if (byte < this.lowerBoundary || byte > this.upperBoundary) {
              result2 += "\uFFFD";
              this._reset();
              break;
            }
            this.lowerBoundary = 128;
            this.upperBoundary = 191;
            this.codePoint = this.codePoint << 6 | byte & 63;
            this.bytesSeen++;
            start++;
            if (this.bytesSeen === this.bytesNeeded) {
              result2 += String.fromCodePoint(this.codePoint);
              this._reset();
              break;
            }
          }
          if (this.bytesNeeded > 0) return result2;
        }
        const trailing = trailingIncomplete(data, start);
        const end = data.byteLength - trailing;
        if (end > start) result2 += b4a.toString(data, "utf8", start, end);
        for (let i2 = end; i2 < data.byteLength; i2++) {
          const byte = data[i2];
          if (this.bytesNeeded === 0) {
            if (byte <= 127) {
              this.bytesSeen = 0;
              result2 += String.fromCharCode(byte);
            } else if (byte >= 194 && byte <= 223) {
              this.bytesNeeded = 2;
              this.bytesSeen = 1;
              this.codePoint = byte & 31;
            } else if (byte >= 224 && byte <= 239) {
              if (byte === 224) this.lowerBoundary = 160;
              else if (byte === 237) this.upperBoundary = 159;
              this.bytesNeeded = 3;
              this.bytesSeen = 1;
              this.codePoint = byte & 15;
            } else if (byte >= 240 && byte <= 244) {
              if (byte === 240) this.lowerBoundary = 144;
              else if (byte === 244) this.upperBoundary = 143;
              this.bytesNeeded = 4;
              this.bytesSeen = 1;
              this.codePoint = byte & 7;
            } else {
              this.bytesSeen = 1;
              result2 += "\uFFFD";
            }
            continue;
          }
          if (byte < this.lowerBoundary || byte > this.upperBoundary) {
            result2 += "\uFFFD";
            i2--;
            this._reset();
            continue;
          }
          this.lowerBoundary = 128;
          this.upperBoundary = 191;
          this.codePoint = this.codePoint << 6 | byte & 63;
          this.bytesSeen++;
          if (this.bytesSeen === this.bytesNeeded) {
            result2 += String.fromCodePoint(this.codePoint);
            this._reset();
          }
        }
        return result2;
      }
      flush() {
        const result2 = this.bytesNeeded > 0 ? "\uFFFD" : "";
        this._reset();
        return result2;
      }
      _reset() {
        this.codePoint = 0;
        this.bytesNeeded = 0;
        this.bytesSeen = 0;
        this.lowerBoundary = 128;
        this.upperBoundary = 191;
      }
    };
    function trailingIncomplete(data, start) {
      const len = data.byteLength;
      if (len <= start) return 0;
      const limit = Math.max(start, len - 4);
      let i2 = len - 1;
      while (i2 > limit && (data[i2] & 192) === 128) i2--;
      if (i2 < start) return 0;
      const byte = data[i2];
      let needed;
      if (byte <= 127) return 0;
      if (byte >= 194 && byte <= 223) needed = 2;
      else if (byte >= 224 && byte <= 239) needed = 3;
      else if (byte >= 240 && byte <= 244) needed = 4;
      else return 0;
      const available = len - i2;
      return available < needed ? available : 0;
    }
    function trailingBytesSeen(data) {
      const len = data.byteLength;
      if (len === 0) return 0;
      const last = data[len - 1];
      if (last <= 127) return 0;
      if ((last & 192) !== 128) return 1;
      const limit = Math.max(0, len - 4);
      let i2 = len - 2;
      while (i2 >= limit && (data[i2] & 192) === 128) i2--;
      if (i2 < 0) return 1;
      const first = data[i2];
      let needed;
      if (first >= 194 && first <= 223) needed = 2;
      else if (first >= 224 && first <= 239) needed = 3;
      else if (first >= 240 && first <= 244) needed = 4;
      else return 1;
      if (len - i2 !== needed) return 1;
      if (needed >= 3) {
        const second = data[i2 + 1];
        if (first === 224 && second < 160) return 1;
        if (first === 237 && second > 159) return 1;
        if (first === 240 && second < 144) return 1;
        if (first === 244 && second > 143) return 1;
      }
      return 0;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/text-decoder/1.2.7/b3213d62c3bf59365d2d9a8f1e39dc74e32ec82e9e2d2d94f58e46d62515a050/node_modules/text-decoder/index.js
var require_text_decoder = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/text-decoder/1.2.7/b3213d62c3bf59365d2d9a8f1e39dc74e32ec82e9e2d2d94f58e46d62515a050/node_modules/text-decoder/index.js"(exports2, module2) {
    var PassThroughDecoder = require_pass_through_decoder();
    var UTF8Decoder = require_utf8_decoder();
    module2.exports = class TextDecoder {
      constructor(encoding = "utf8") {
        this.encoding = normalizeEncoding(encoding);
        switch (this.encoding) {
          case "utf8":
            this.decoder = new UTF8Decoder();
            break;
          case "utf16le":
          case "base64":
            throw new Error("Unsupported encoding: " + this.encoding);
          default:
            this.decoder = new PassThroughDecoder(this.encoding);
        }
      }
      get remaining() {
        return this.decoder.remaining;
      }
      push(data) {
        if (typeof data === "string") return data;
        return this.decoder.decode(data);
      }
      // For Node.js compatibility
      write(data) {
        return this.push(data);
      }
      end(data) {
        let result2 = "";
        if (data) result2 = this.push(data);
        result2 += this.decoder.flush();
        return result2;
      }
    };
    function normalizeEncoding(encoding) {
      encoding = encoding.toLowerCase();
      switch (encoding) {
        case "utf8":
        case "utf-8":
          return "utf8";
        case "ucs2":
        case "ucs-2":
        case "utf16le":
        case "utf-16le":
          return "utf16le";
        case "latin1":
        case "binary":
          return "latin1";
        case "base64":
        case "ascii":
        case "hex":
          return encoding;
        default:
          throw new Error("Unknown encoding: " + encoding);
      }
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/streamx/2.25.0/c8bafe11c58183b27f42f16d4cefcfbe0e1a9447435771ae0795575e4988eaef/node_modules/streamx/index.js
var require_streamx = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/streamx/2.25.0/c8bafe11c58183b27f42f16d4cefcfbe0e1a9447435771ae0795575e4988eaef/node_modules/streamx/index.js"(exports2, module2) {
    var { EventEmitter: EventEmitter4 } = require_default();
    var STREAM_DESTROYED = new Error("Stream was destroyed");
    var PREMATURE_CLOSE = new Error("Premature close");
    var FIFO = require_fast_fifo();
    var TextDecoder2 = require_text_decoder();
    var qmt = typeof queueMicrotask === "undefined" ? (fn) => global.process.nextTick(fn) : queueMicrotask;
    var MAX = (1 << 29) - 1;
    var OPENING = 1;
    var PREDESTROYING = 2;
    var DESTROYING = 4;
    var DESTROYED = 8;
    var NOT_OPENING = MAX ^ OPENING;
    var NOT_PREDESTROYING = MAX ^ PREDESTROYING;
    var READ_ACTIVE = 1 << 4;
    var READ_UPDATING = 2 << 4;
    var READ_PRIMARY = 4 << 4;
    var READ_QUEUED = 8 << 4;
    var READ_RESUMED = 16 << 4;
    var READ_PIPE_DRAINED = 32 << 4;
    var READ_ENDING = 64 << 4;
    var READ_EMIT_DATA = 128 << 4;
    var READ_EMIT_READABLE = 256 << 4;
    var READ_EMITTED_READABLE = 512 << 4;
    var READ_DONE = 1024 << 4;
    var READ_NEXT_TICK = 2048 << 4;
    var READ_NEEDS_PUSH = 4096 << 4;
    var READ_READ_AHEAD = 8192 << 4;
    var READ_FLOWING = READ_RESUMED | READ_PIPE_DRAINED;
    var READ_ACTIVE_AND_NEEDS_PUSH = READ_ACTIVE | READ_NEEDS_PUSH;
    var READ_PRIMARY_AND_ACTIVE = READ_PRIMARY | READ_ACTIVE;
    var READ_EMIT_READABLE_AND_QUEUED = READ_EMIT_READABLE | READ_QUEUED;
    var READ_RESUMED_READ_AHEAD = READ_RESUMED | READ_READ_AHEAD;
    var READ_NOT_ACTIVE = MAX ^ READ_ACTIVE;
    var READ_NON_PRIMARY = MAX ^ READ_PRIMARY;
    var READ_NON_PRIMARY_AND_PUSHED = MAX ^ (READ_PRIMARY | READ_NEEDS_PUSH);
    var READ_PUSHED = MAX ^ READ_NEEDS_PUSH;
    var READ_PAUSED = MAX ^ READ_RESUMED;
    var READ_NOT_QUEUED = MAX ^ (READ_QUEUED | READ_EMITTED_READABLE);
    var READ_NOT_ENDING = MAX ^ READ_ENDING;
    var READ_PIPE_NOT_DRAINED = MAX ^ READ_FLOWING;
    var READ_NOT_NEXT_TICK = MAX ^ READ_NEXT_TICK;
    var READ_NOT_UPDATING = MAX ^ READ_UPDATING;
    var READ_NO_READ_AHEAD = MAX ^ READ_READ_AHEAD;
    var READ_PAUSED_NO_READ_AHEAD = MAX ^ READ_RESUMED_READ_AHEAD;
    var WRITE_ACTIVE = 1 << 18;
    var WRITE_UPDATING = 2 << 18;
    var WRITE_PRIMARY = 4 << 18;
    var WRITE_QUEUED = 8 << 18;
    var WRITE_UNDRAINED = 16 << 18;
    var WRITE_DONE = 32 << 18;
    var WRITE_EMIT_DRAIN = 64 << 18;
    var WRITE_NEXT_TICK = 128 << 18;
    var WRITE_WRITING = 256 << 18;
    var WRITE_FINISHING = 512 << 18;
    var WRITE_CORKED = 1024 << 18;
    var WRITE_NOT_ACTIVE = MAX ^ (WRITE_ACTIVE | WRITE_WRITING);
    var WRITE_NON_PRIMARY = MAX ^ WRITE_PRIMARY;
    var WRITE_NOT_FINISHING = MAX ^ (WRITE_ACTIVE | WRITE_FINISHING);
    var WRITE_DRAINED = MAX ^ WRITE_UNDRAINED;
    var WRITE_NOT_QUEUED = MAX ^ WRITE_QUEUED;
    var WRITE_NOT_NEXT_TICK = MAX ^ WRITE_NEXT_TICK;
    var WRITE_NOT_UPDATING = MAX ^ WRITE_UPDATING;
    var WRITE_NOT_CORKED = MAX ^ WRITE_CORKED;
    var ACTIVE = READ_ACTIVE | WRITE_ACTIVE;
    var NOT_ACTIVE = MAX ^ ACTIVE;
    var DONE = READ_DONE | WRITE_DONE;
    var DESTROY_STATUS = DESTROYING | DESTROYED | PREDESTROYING;
    var OPEN_STATUS = DESTROY_STATUS | OPENING;
    var AUTO_DESTROY = DESTROY_STATUS | DONE;
    var NON_PRIMARY = WRITE_NON_PRIMARY & READ_NON_PRIMARY;
    var ACTIVE_OR_TICKING = WRITE_NEXT_TICK | READ_NEXT_TICK;
    var TICKING = ACTIVE_OR_TICKING & NOT_ACTIVE;
    var IS_OPENING = OPEN_STATUS | TICKING;
    var READ_PRIMARY_STATUS = OPEN_STATUS | READ_ENDING | READ_DONE;
    var READ_STATUS = OPEN_STATUS | READ_DONE | READ_QUEUED;
    var READ_ENDING_STATUS = OPEN_STATUS | READ_ENDING | READ_QUEUED;
    var READ_READABLE_STATUS = OPEN_STATUS | READ_EMIT_READABLE | READ_QUEUED | READ_EMITTED_READABLE;
    var SHOULD_NOT_READ = OPEN_STATUS | READ_ACTIVE | READ_ENDING | READ_DONE | READ_NEEDS_PUSH | READ_READ_AHEAD;
    var READ_BACKPRESSURE_STATUS = DESTROY_STATUS | READ_ENDING | READ_DONE;
    var READ_UPDATE_SYNC_STATUS = READ_UPDATING | OPEN_STATUS | READ_NEXT_TICK | READ_PRIMARY;
    var READ_NEXT_TICK_OR_OPENING = READ_NEXT_TICK | OPENING;
    var WRITE_PRIMARY_STATUS = OPEN_STATUS | WRITE_FINISHING | WRITE_DONE;
    var WRITE_QUEUED_AND_UNDRAINED = WRITE_QUEUED | WRITE_UNDRAINED;
    var WRITE_QUEUED_AND_ACTIVE = WRITE_QUEUED | WRITE_ACTIVE;
    var WRITE_DRAIN_STATUS = WRITE_QUEUED | WRITE_UNDRAINED | OPEN_STATUS | WRITE_ACTIVE;
    var WRITE_STATUS = OPEN_STATUS | WRITE_ACTIVE | WRITE_QUEUED | WRITE_CORKED;
    var WRITE_PRIMARY_AND_ACTIVE = WRITE_PRIMARY | WRITE_ACTIVE;
    var WRITE_ACTIVE_AND_WRITING = WRITE_ACTIVE | WRITE_WRITING;
    var WRITE_FINISHING_STATUS = OPEN_STATUS | WRITE_FINISHING | WRITE_QUEUED_AND_ACTIVE | WRITE_DONE;
    var WRITE_BACKPRESSURE_STATUS = WRITE_UNDRAINED | DESTROY_STATUS | WRITE_FINISHING | WRITE_DONE;
    var WRITE_UPDATE_SYNC_STATUS = WRITE_UPDATING | OPEN_STATUS | WRITE_NEXT_TICK | WRITE_PRIMARY;
    var WRITE_DROP_DATA = WRITE_FINISHING | WRITE_DONE | DESTROY_STATUS;
    var asyncIterator = Symbol.asyncIterator || /* @__PURE__ */ Symbol("asyncIterator");
    var WritableState = class {
      constructor(stream2, { highWaterMark = 16384, map: map26 = null, mapWritable, byteLength, byteLengthWritable } = {}) {
        this.stream = stream2;
        this.queue = new FIFO();
        this.highWaterMark = highWaterMark;
        this.buffered = 0;
        this.error = null;
        this.pipeline = null;
        this.drains = null;
        this.byteLength = byteLengthWritable || byteLength || defaultByteLength;
        this.map = mapWritable || map26;
        this.afterWrite = afterWrite.bind(this);
        this.afterUpdateNextTick = updateWriteNT.bind(this);
      }
      get ending() {
        return (this.stream._duplexState & WRITE_FINISHING) !== 0;
      }
      get ended() {
        return (this.stream._duplexState & WRITE_DONE) !== 0;
      }
      push(data) {
        if ((this.stream._duplexState & WRITE_DROP_DATA) !== 0) return false;
        if (this.map !== null) data = this.map(data);
        this.buffered += this.byteLength(data);
        this.queue.push(data);
        if (this.buffered < this.highWaterMark) {
          this.stream._duplexState |= WRITE_QUEUED;
          return true;
        }
        this.stream._duplexState |= WRITE_QUEUED_AND_UNDRAINED;
        return false;
      }
      shift() {
        const data = this.queue.shift();
        this.buffered -= this.byteLength(data);
        if (this.buffered === 0) this.stream._duplexState &= WRITE_NOT_QUEUED;
        return data;
      }
      end(data) {
        if (typeof data === "function") this.stream.once("finish", data);
        else if (data !== void 0 && data !== null) this.push(data);
        this.stream._duplexState = (this.stream._duplexState | WRITE_FINISHING) & WRITE_NON_PRIMARY;
      }
      autoBatch(data, cb) {
        const buffer3 = [];
        const stream2 = this.stream;
        buffer3.push(data);
        while ((stream2._duplexState & WRITE_STATUS) === WRITE_QUEUED_AND_ACTIVE) {
          buffer3.push(stream2._writableState.shift());
        }
        if ((stream2._duplexState & OPEN_STATUS) !== 0) return cb(null);
        stream2._writev(buffer3, cb);
      }
      update() {
        const stream2 = this.stream;
        stream2._duplexState |= WRITE_UPDATING;
        do {
          while ((stream2._duplexState & WRITE_STATUS) === WRITE_QUEUED) {
            const data = this.shift();
            stream2._duplexState |= WRITE_ACTIVE_AND_WRITING;
            stream2._write(data, this.afterWrite);
          }
          if ((stream2._duplexState & WRITE_PRIMARY_AND_ACTIVE) === 0) this.updateNonPrimary();
        } while (this.continueUpdate() === true);
        stream2._duplexState &= WRITE_NOT_UPDATING;
      }
      updateNonPrimary() {
        const stream2 = this.stream;
        if ((stream2._duplexState & WRITE_FINISHING_STATUS) === WRITE_FINISHING) {
          stream2._duplexState = stream2._duplexState | WRITE_ACTIVE;
          stream2._final(afterFinal.bind(this));
          return;
        }
        if ((stream2._duplexState & DESTROY_STATUS) === DESTROYING) {
          if ((stream2._duplexState & ACTIVE_OR_TICKING) === 0) {
            stream2._duplexState |= ACTIVE;
            stream2._destroy(afterDestroy.bind(this));
          }
          return;
        }
        if ((stream2._duplexState & IS_OPENING) === OPENING) {
          stream2._duplexState = (stream2._duplexState | ACTIVE) & NOT_OPENING;
          stream2._open(afterOpen.bind(this));
        }
      }
      continueUpdate() {
        if ((this.stream._duplexState & WRITE_NEXT_TICK) === 0) return false;
        this.stream._duplexState &= WRITE_NOT_NEXT_TICK;
        return true;
      }
      updateCallback() {
        if ((this.stream._duplexState & WRITE_UPDATE_SYNC_STATUS) === WRITE_PRIMARY) this.update();
        else this.updateNextTick();
      }
      updateNextTick() {
        if ((this.stream._duplexState & WRITE_NEXT_TICK) !== 0) return;
        this.stream._duplexState |= WRITE_NEXT_TICK;
        if ((this.stream._duplexState & WRITE_UPDATING) === 0) qmt(this.afterUpdateNextTick);
      }
    };
    var ReadableState = class {
      constructor(stream2, { highWaterMark = 16384, map: map26 = null, mapReadable, byteLength, byteLengthReadable } = {}) {
        this.stream = stream2;
        this.queue = new FIFO();
        this.highWaterMark = highWaterMark === 0 ? 1 : highWaterMark;
        this.buffered = 0;
        this.readAhead = highWaterMark > 0;
        this.error = null;
        this.pipeline = null;
        this.byteLength = byteLengthReadable || byteLength || defaultByteLength;
        this.map = mapReadable || map26;
        this.pipeTo = null;
        this.afterRead = afterRead.bind(this);
        this.afterUpdateNextTick = updateReadNT.bind(this);
      }
      get ending() {
        return (this.stream._duplexState & READ_ENDING) !== 0;
      }
      get ended() {
        return (this.stream._duplexState & READ_DONE) !== 0;
      }
      pipe(pipeTo, cb) {
        if (this.pipeTo !== null) throw new Error("Can only pipe to one destination");
        if (typeof cb !== "function") cb = null;
        this.stream._duplexState |= READ_PIPE_DRAINED;
        this.pipeTo = pipeTo;
        this.pipeline = new Pipeline(this.stream, pipeTo, cb);
        if (cb) this.stream.on("error", noop5);
        if (isStreamx(pipeTo)) {
          pipeTo._writableState.pipeline = this.pipeline;
          if (cb) pipeTo.on("error", noop5);
          pipeTo.on("finish", this.pipeline.finished.bind(this.pipeline));
        } else {
          const onerror = this.pipeline.done.bind(this.pipeline, pipeTo);
          const onclose = this.pipeline.done.bind(this.pipeline, pipeTo, null);
          pipeTo.on("error", onerror);
          pipeTo.on("close", onclose);
          pipeTo.on("finish", this.pipeline.finished.bind(this.pipeline));
        }
        pipeTo.on("drain", afterDrain.bind(this));
        this.stream.emit("piping", pipeTo);
        pipeTo.emit("pipe", this.stream);
      }
      push(data) {
        const stream2 = this.stream;
        if (data === null) {
          this.highWaterMark = 0;
          stream2._duplexState = (stream2._duplexState | READ_ENDING) & READ_NON_PRIMARY_AND_PUSHED;
          return false;
        }
        if (this.map !== null) {
          data = this.map(data);
          if (data === null) {
            stream2._duplexState &= READ_PUSHED;
            return this.buffered < this.highWaterMark;
          }
        }
        this.buffered += this.byteLength(data);
        this.queue.push(data);
        stream2._duplexState = (stream2._duplexState | READ_QUEUED) & READ_PUSHED;
        return this.buffered < this.highWaterMark;
      }
      shift() {
        const data = this.queue.shift();
        this.buffered -= this.byteLength(data);
        if (this.buffered === 0) this.stream._duplexState &= READ_NOT_QUEUED;
        return data;
      }
      unshift(data) {
        const pending = [this.map !== null ? this.map(data) : data];
        while (this.buffered > 0) pending.push(this.shift());
        for (let i2 = 0; i2 < pending.length - 1; i2++) {
          const data2 = pending[i2];
          this.buffered += this.byteLength(data2);
          this.queue.push(data2);
        }
        this.push(pending[pending.length - 1]);
      }
      read() {
        const stream2 = this.stream;
        if ((stream2._duplexState & READ_STATUS) === READ_QUEUED) {
          const data = this.shift();
          if (this.pipeTo !== null && this.pipeTo.write(data) === false)
            stream2._duplexState &= READ_PIPE_NOT_DRAINED;
          if ((stream2._duplexState & READ_EMIT_DATA) !== 0) stream2.emit("data", data);
          return data;
        }
        if (this.readAhead === false) {
          stream2._duplexState |= READ_READ_AHEAD;
          this.updateNextTick();
        }
        return null;
      }
      drain() {
        const stream2 = this.stream;
        while ((stream2._duplexState & READ_STATUS) === READ_QUEUED && (stream2._duplexState & READ_FLOWING) !== 0) {
          const data = this.shift();
          if (this.pipeTo !== null && this.pipeTo.write(data) === false)
            stream2._duplexState &= READ_PIPE_NOT_DRAINED;
          if ((stream2._duplexState & READ_EMIT_DATA) !== 0) stream2.emit("data", data);
        }
      }
      update() {
        const stream2 = this.stream;
        stream2._duplexState |= READ_UPDATING;
        do {
          this.drain();
          while (this.buffered < this.highWaterMark && (stream2._duplexState & SHOULD_NOT_READ) === READ_READ_AHEAD) {
            stream2._duplexState |= READ_ACTIVE_AND_NEEDS_PUSH;
            stream2._read(this.afterRead);
            this.drain();
          }
          if ((stream2._duplexState & READ_READABLE_STATUS) === READ_EMIT_READABLE_AND_QUEUED) {
            stream2._duplexState |= READ_EMITTED_READABLE;
            stream2.emit("readable");
          }
          if ((stream2._duplexState & READ_PRIMARY_AND_ACTIVE) === 0) this.updateNonPrimary();
        } while (this.continueUpdate() === true);
        stream2._duplexState &= READ_NOT_UPDATING;
      }
      updateNonPrimary() {
        const stream2 = this.stream;
        if ((stream2._duplexState & READ_ENDING_STATUS) === READ_ENDING) {
          stream2._duplexState = (stream2._duplexState | READ_DONE) & READ_NOT_ENDING;
          stream2.emit("end");
          if ((stream2._duplexState & AUTO_DESTROY) === DONE) stream2._duplexState |= DESTROYING;
          if (this.pipeTo !== null) this.pipeTo.end();
        }
        if ((stream2._duplexState & DESTROY_STATUS) === DESTROYING) {
          if ((stream2._duplexState & ACTIVE_OR_TICKING) === 0) {
            stream2._duplexState |= ACTIVE;
            stream2._destroy(afterDestroy.bind(this));
          }
          return;
        }
        if ((stream2._duplexState & IS_OPENING) === OPENING) {
          stream2._duplexState = (stream2._duplexState | ACTIVE) & NOT_OPENING;
          stream2._open(afterOpen.bind(this));
        }
      }
      continueUpdate() {
        if ((this.stream._duplexState & READ_NEXT_TICK) === 0) return false;
        this.stream._duplexState &= READ_NOT_NEXT_TICK;
        return true;
      }
      updateCallback() {
        if ((this.stream._duplexState & READ_UPDATE_SYNC_STATUS) === READ_PRIMARY) this.update();
        else this.updateNextTick();
      }
      updateNextTickIfOpen() {
        if ((this.stream._duplexState & READ_NEXT_TICK_OR_OPENING) !== 0) return;
        this.stream._duplexState |= READ_NEXT_TICK;
        if ((this.stream._duplexState & READ_UPDATING) === 0) qmt(this.afterUpdateNextTick);
      }
      updateNextTick() {
        if ((this.stream._duplexState & READ_NEXT_TICK) !== 0) return;
        this.stream._duplexState |= READ_NEXT_TICK;
        if ((this.stream._duplexState & READ_UPDATING) === 0) qmt(this.afterUpdateNextTick);
      }
    };
    var TransformState = class {
      constructor(stream2) {
        this.data = null;
        this.afterTransform = afterTransform.bind(stream2);
        this.afterFinal = null;
      }
    };
    var Pipeline = class {
      constructor(src2, dst, cb) {
        this.from = src2;
        this.to = dst;
        this.afterPipe = cb;
        this.error = null;
        this.pipeToFinished = false;
      }
      finished() {
        this.pipeToFinished = true;
      }
      done(stream2, err) {
        if (err) this.error = err;
        if (stream2 === this.to) {
          this.to = null;
          if (this.from !== null) {
            if ((this.from._duplexState & READ_DONE) === 0 || !this.pipeToFinished) {
              this.from.destroy(this.error || new Error("Writable stream closed prematurely"));
            }
            return;
          }
        }
        if (stream2 === this.from) {
          this.from = null;
          if (this.to !== null) {
            if ((stream2._duplexState & READ_DONE) === 0) {
              this.to.destroy(this.error || new Error("Readable stream closed before ending"));
            }
            return;
          }
        }
        if (this.afterPipe !== null) this.afterPipe(this.error);
        this.to = this.from = this.afterPipe = null;
      }
    };
    function afterDrain() {
      this.stream._duplexState |= READ_PIPE_DRAINED;
      this.updateCallback();
    }
    function afterFinal(err) {
      const stream2 = this.stream;
      if (err) stream2.destroy(err);
      if ((stream2._duplexState & DESTROY_STATUS) === 0) {
        stream2._duplexState |= WRITE_DONE;
        stream2.emit("finish");
      }
      if ((stream2._duplexState & AUTO_DESTROY) === DONE) {
        stream2._duplexState |= DESTROYING;
      }
      stream2._duplexState &= WRITE_NOT_FINISHING;
      if ((stream2._duplexState & WRITE_UPDATING) === 0) this.update();
      else this.updateNextTick();
    }
    function afterDestroy(err) {
      const stream2 = this.stream;
      if (!err && this.error !== STREAM_DESTROYED) err = this.error;
      if (err) stream2.emit("error", err);
      stream2._duplexState |= DESTROYED;
      stream2.emit("close");
      const rs = stream2._readableState;
      const ws = stream2._writableState;
      if (rs !== null && rs.pipeline !== null) rs.pipeline.done(stream2, err);
      if (ws !== null) {
        while (ws.drains !== null && ws.drains.length > 0) ws.drains.shift().resolve(false);
        if (ws.pipeline !== null) ws.pipeline.done(stream2, err);
      }
    }
    function afterWrite(err) {
      const stream2 = this.stream;
      if (err) stream2.destroy(err);
      stream2._duplexState &= WRITE_NOT_ACTIVE;
      if (this.drains !== null) tickDrains(this.drains);
      if ((stream2._duplexState & WRITE_DRAIN_STATUS) === WRITE_UNDRAINED) {
        stream2._duplexState &= WRITE_DRAINED;
        if ((stream2._duplexState & WRITE_EMIT_DRAIN) === WRITE_EMIT_DRAIN) {
          stream2.emit("drain");
        }
      }
      this.updateCallback();
    }
    function afterRead(err) {
      if (err) this.stream.destroy(err);
      this.stream._duplexState &= READ_NOT_ACTIVE;
      if (this.readAhead === false && (this.stream._duplexState & READ_RESUMED) === 0)
        this.stream._duplexState &= READ_NO_READ_AHEAD;
      this.updateCallback();
    }
    function updateReadNT() {
      if ((this.stream._duplexState & READ_UPDATING) === 0) {
        this.stream._duplexState &= READ_NOT_NEXT_TICK;
        this.update();
      }
    }
    function updateWriteNT() {
      if ((this.stream._duplexState & WRITE_UPDATING) === 0) {
        this.stream._duplexState &= WRITE_NOT_NEXT_TICK;
        this.update();
      }
    }
    function tickDrains(drains) {
      for (let i2 = 0; i2 < drains.length; i2++) {
        if (--drains[i2].writes === 0) {
          drains.shift().resolve(true);
          i2--;
        }
      }
    }
    function afterOpen(err) {
      const stream2 = this.stream;
      if (err) stream2.destroy(err);
      if ((stream2._duplexState & DESTROYING) === 0) {
        if ((stream2._duplexState & READ_PRIMARY_STATUS) === 0) stream2._duplexState |= READ_PRIMARY;
        if ((stream2._duplexState & WRITE_PRIMARY_STATUS) === 0) stream2._duplexState |= WRITE_PRIMARY;
        stream2.emit("open");
      }
      stream2._duplexState &= NOT_ACTIVE;
      if (stream2._writableState !== null) {
        stream2._writableState.updateCallback();
      }
      if (stream2._readableState !== null) {
        stream2._readableState.updateCallback();
      }
    }
    function afterTransform(err, data) {
      if (data !== void 0 && data !== null) this.push(data);
      this._writableState.afterWrite(err);
    }
    function newListener(name) {
      if (this._readableState !== null) {
        if (name === "data") {
          this._duplexState |= READ_EMIT_DATA | READ_RESUMED_READ_AHEAD;
          this._readableState.updateNextTick();
        }
        if (name === "readable") {
          this._duplexState |= READ_EMIT_READABLE;
          this._readableState.updateNextTick();
        }
      }
      if (this._writableState !== null) {
        if (name === "drain") {
          this._duplexState |= WRITE_EMIT_DRAIN;
          this._writableState.updateNextTick();
        }
      }
    }
    var Stream = class extends EventEmitter4 {
      constructor(opts2) {
        super();
        this._duplexState = 0;
        this._readableState = null;
        this._writableState = null;
        if (opts2) {
          if (opts2.open) this._open = opts2.open;
          if (opts2.destroy) this._destroy = opts2.destroy;
          if (opts2.predestroy) this._predestroy = opts2.predestroy;
          if (opts2.signal) {
            opts2.signal.addEventListener("abort", abort.bind(this));
          }
        }
        this.on("newListener", newListener);
      }
      _open(cb) {
        cb(null);
      }
      _destroy(cb) {
        cb(null);
      }
      _predestroy() {
      }
      get readable() {
        return this._readableState !== null ? true : void 0;
      }
      get writable() {
        return this._writableState !== null ? true : void 0;
      }
      get destroyed() {
        return (this._duplexState & DESTROYED) !== 0;
      }
      get destroying() {
        return (this._duplexState & DESTROY_STATUS) !== 0;
      }
      destroy(err) {
        if ((this._duplexState & DESTROY_STATUS) === 0) {
          if (!err) err = STREAM_DESTROYED;
          this._duplexState = (this._duplexState | DESTROYING) & NON_PRIMARY;
          if (this._readableState !== null) {
            this._readableState.highWaterMark = 0;
            this._readableState.error = err;
          }
          if (this._writableState !== null) {
            this._writableState.highWaterMark = 0;
            this._writableState.error = err;
          }
          this._duplexState |= PREDESTROYING;
          this._predestroy();
          this._duplexState &= NOT_PREDESTROYING;
          if (this._readableState !== null) this._readableState.updateNextTick();
          if (this._writableState !== null) this._writableState.updateNextTick();
        }
      }
    };
    var Readable4 = class _Readable extends Stream {
      constructor(opts2) {
        super(opts2);
        this._duplexState |= OPENING | WRITE_DONE | READ_READ_AHEAD;
        this._readableState = new ReadableState(this, opts2);
        if (opts2) {
          if (this._readableState.readAhead === false) this._duplexState &= READ_NO_READ_AHEAD;
          if (opts2.read) this._read = opts2.read;
          if (opts2.eagerOpen) this._readableState.updateNextTick();
          if (opts2.encoding) this.setEncoding(opts2.encoding);
        }
      }
      setEncoding(encoding) {
        const dec = new TextDecoder2(encoding);
        const map26 = this._readableState.map || echo;
        this._readableState.map = mapOrSkip;
        return this;
        function mapOrSkip(data) {
          const next2 = dec.push(data);
          return next2 === "" && (data.byteLength !== 0 || dec.remaining > 0) ? null : map26(next2);
        }
      }
      _read(cb) {
        cb(null);
      }
      pipe(dest, cb) {
        this._readableState.updateNextTick();
        this._readableState.pipe(dest, cb);
        return dest;
      }
      read() {
        this._readableState.updateNextTick();
        return this._readableState.read();
      }
      push(data) {
        this._readableState.updateNextTickIfOpen();
        return this._readableState.push(data);
      }
      unshift(data) {
        this._readableState.updateNextTickIfOpen();
        return this._readableState.unshift(data);
      }
      resume() {
        this._duplexState |= READ_RESUMED_READ_AHEAD;
        this._readableState.updateNextTick();
        return this;
      }
      pause() {
        this._duplexState &= this._readableState.readAhead === false ? READ_PAUSED_NO_READ_AHEAD : READ_PAUSED;
        return this;
      }
      static _fromAsyncIterator(ite, opts2) {
        let destroy;
        const rs = new _Readable({
          ...opts2,
          read(cb) {
            ite.next().then(push).then(cb.bind(null, null)).catch(cb);
          },
          predestroy() {
            destroy = ite.return();
          },
          destroy(cb) {
            if (!destroy) return cb(null);
            destroy.then(cb.bind(null, null)).catch(cb);
          }
        });
        return rs;
        function push(data) {
          if (data.done) rs.push(null);
          else rs.push(data.value);
        }
      }
      static from(data, opts2) {
        if (isReadStreamx(data)) return data;
        if (data[asyncIterator]) return this._fromAsyncIterator(data[asyncIterator](), opts2);
        if (!Array.isArray(data)) data = data === void 0 ? [] : [data];
        let i2 = 0;
        return new _Readable({
          ...opts2,
          read(cb) {
            this.push(i2 === data.length ? null : data[i2++]);
            cb(null);
          }
        });
      }
      static isBackpressured(rs) {
        return (rs._duplexState & READ_BACKPRESSURE_STATUS) !== 0 || rs._readableState.buffered >= rs._readableState.highWaterMark;
      }
      static isPaused(rs) {
        return (rs._duplexState & READ_RESUMED) === 0;
      }
      [asyncIterator]() {
        const stream2 = this;
        let error = null;
        let promiseResolve = null;
        let promiseReject = null;
        this.on("error", (err) => {
          error = err;
        });
        this.on("readable", onreadable);
        this.on("close", onclose);
        return {
          [asyncIterator]() {
            return this;
          },
          next() {
            return new Promise(function(resolve3, reject3) {
              promiseResolve = resolve3;
              promiseReject = reject3;
              const data = stream2.read();
              if (data !== null) ondata(data);
              else if ((stream2._duplexState & DESTROYED) !== 0) ondata(null);
            });
          },
          return() {
            return destroy(null);
          },
          throw(err) {
            return destroy(err);
          }
        };
        function onreadable() {
          if (promiseResolve !== null) ondata(stream2.read());
        }
        function onclose() {
          if (promiseResolve !== null) ondata(null);
        }
        function ondata(data) {
          if (promiseReject === null) return;
          if (error) promiseReject(error);
          else if (data === null && (stream2._duplexState & READ_DONE) === 0)
            promiseReject(STREAM_DESTROYED);
          else promiseResolve({ value: data, done: data === null });
          promiseReject = promiseResolve = null;
        }
        function destroy(err) {
          stream2.destroy(err);
          return new Promise((resolve3, reject3) => {
            if (stream2._duplexState & DESTROYED) return resolve3({ value: void 0, done: true });
            stream2.once("close", function() {
              if (err) reject3(err);
              else resolve3({ value: void 0, done: true });
            });
          });
        }
      }
    };
    var Writable4 = class extends Stream {
      constructor(opts2) {
        super(opts2);
        this._duplexState |= OPENING | READ_DONE;
        this._writableState = new WritableState(this, opts2);
        if (opts2) {
          if (opts2.writev) this._writev = opts2.writev;
          if (opts2.write) this._write = opts2.write;
          if (opts2.final) this._final = opts2.final;
          if (opts2.eagerOpen) this._writableState.updateNextTick();
        }
      }
      cork() {
        this._duplexState |= WRITE_CORKED;
      }
      uncork() {
        this._duplexState &= WRITE_NOT_CORKED;
        this._writableState.updateNextTick();
      }
      _writev(batch, cb) {
        cb(null);
      }
      _write(data, cb) {
        this._writableState.autoBatch(data, cb);
      }
      _final(cb) {
        cb(null);
      }
      static isBackpressured(ws) {
        return (ws._duplexState & WRITE_BACKPRESSURE_STATUS) !== 0;
      }
      static drained(ws) {
        if (ws.destroyed) return Promise.resolve(false);
        const state = ws._writableState;
        const pending = isWritev(ws) ? Math.min(1, state.queue.length) : state.queue.length;
        const writes = pending + (ws._duplexState & WRITE_WRITING ? 1 : 0);
        if (writes === 0) return Promise.resolve(true);
        if (state.drains === null) state.drains = [];
        return new Promise((resolve3) => {
          state.drains.push({ writes, resolve: resolve3 });
        });
      }
      write(data) {
        this._writableState.updateNextTick();
        return this._writableState.push(data);
      }
      end(data) {
        this._writableState.updateNextTick();
        this._writableState.end(data);
        return this;
      }
    };
    var Duplex4 = class extends Readable4 {
      // and Writable
      constructor(opts2) {
        super(opts2);
        this._duplexState = OPENING | this._duplexState & READ_READ_AHEAD;
        this._writableState = new WritableState(this, opts2);
        if (opts2) {
          if (opts2.writev) this._writev = opts2.writev;
          if (opts2.write) this._write = opts2.write;
          if (opts2.final) this._final = opts2.final;
        }
      }
      cork() {
        this._duplexState |= WRITE_CORKED;
      }
      uncork() {
        this._duplexState &= WRITE_NOT_CORKED;
        this._writableState.updateNextTick();
      }
      _writev(batch, cb) {
        cb(null);
      }
      _write(data, cb) {
        this._writableState.autoBatch(data, cb);
      }
      _final(cb) {
        cb(null);
      }
      write(data) {
        this._writableState.updateNextTick();
        return this._writableState.push(data);
      }
      end(data) {
        this._writableState.updateNextTick();
        this._writableState.end(data);
        return this;
      }
    };
    var Transform2 = class extends Duplex4 {
      constructor(opts2) {
        super(opts2);
        this._transformState = new TransformState(this);
        if (opts2) {
          if (opts2.transform) this._transform = opts2.transform;
          if (opts2.flush) this._flush = opts2.flush;
        }
      }
      _write(data, cb) {
        if (this._readableState.buffered >= this._readableState.highWaterMark) {
          this._transformState.data = data;
        } else {
          this._transform(data, this._transformState.afterTransform);
        }
      }
      _read(cb) {
        if (this._transformState.data !== null) {
          const data = this._transformState.data;
          this._transformState.data = null;
          cb(null);
          this._transform(data, this._transformState.afterTransform);
        } else {
          cb(null);
        }
      }
      destroy(err) {
        super.destroy(err);
        if (this._transformState.data !== null) {
          this._transformState.data = null;
          this._transformState.afterTransform();
        }
      }
      _transform(data, cb) {
        cb(null, data);
      }
      _flush(cb) {
        cb(null);
      }
      _final(cb) {
        this._transformState.afterFinal = cb;
        this._flush(transformAfterFlush.bind(this));
      }
    };
    var PassThrough3 = class extends Transform2 {
    };
    function transformAfterFlush(err, data) {
      const cb = this._transformState.afterFinal;
      if (err) return cb(err);
      if (data !== null && data !== void 0) this.push(data);
      this.push(null);
      cb(null);
    }
    function pipelinePromise(...streams) {
      return new Promise((resolve3, reject3) => {
        return pipeline2(...streams, (err) => {
          if (err) return reject3(err);
          resolve3();
        });
      });
    }
    function pipeline2(stream2, ...streams) {
      const all = Array.isArray(stream2) ? [...stream2, ...streams] : [stream2, ...streams];
      const done = all.length && typeof all[all.length - 1] === "function" ? all.pop() : null;
      if (all.length < 2) throw new Error("Pipeline requires at least 2 streams");
      let src2 = all[0];
      let dest = null;
      let error = null;
      for (let i2 = 1; i2 < all.length; i2++) {
        dest = all[i2];
        if (isStreamx(src2)) {
          src2.pipe(dest, onerror);
        } else {
          errorHandle(src2, true, i2 > 1, onerror);
          src2.pipe(dest);
        }
        src2 = dest;
      }
      if (done) {
        let fin = false;
        const autoDestroy = isStreamx(dest) || !!(dest._writableState && dest._writableState.autoDestroy);
        dest.on("error", (err) => {
          if (error === null) error = err;
        });
        dest.on("finish", () => {
          fin = true;
          if (!autoDestroy) done(error);
        });
        if (autoDestroy) {
          dest.on("close", () => done(error || (fin ? null : PREMATURE_CLOSE)));
        }
      }
      return dest;
      function errorHandle(s, rd, wr, onerror2) {
        s.on("error", onerror2);
        s.on("close", onclose);
        function onclose() {
          if (rd && s._readableState && !s._readableState.ended) return onerror2(PREMATURE_CLOSE);
          if (wr && s._writableState && !s._writableState.ended) return onerror2(PREMATURE_CLOSE);
        }
      }
      function onerror(err) {
        if (!err || error) return;
        error = err;
        for (const s of all) {
          s.destroy(err);
        }
      }
    }
    function echo(s) {
      return s;
    }
    function isStream3(stream2) {
      return !!stream2._readableState || !!stream2._writableState;
    }
    function isStreamx(stream2) {
      return typeof stream2._duplexState === "number" && isStream3(stream2);
    }
    function isEnding(stream2) {
      return !!stream2._readableState && stream2._readableState.ending;
    }
    function isEnded(stream2) {
      return !!stream2._readableState && stream2._readableState.ended;
    }
    function isFinishing(stream2) {
      return !!stream2._writableState && stream2._writableState.ending;
    }
    function isFinished(stream2) {
      return !!stream2._writableState && stream2._writableState.ended;
    }
    function getStreamError(stream2, opts2 = {}) {
      const err = stream2._readableState && stream2._readableState.error || stream2._writableState && stream2._writableState.error;
      return !opts2.all && err === STREAM_DESTROYED ? null : err;
    }
    function isReadStreamx(stream2) {
      return isStreamx(stream2) && stream2.readable;
    }
    function isDisturbed(stream2) {
      return (stream2._duplexState & OPENING) !== OPENING || (stream2._duplexState & DESTROYING) === DESTROYING || (stream2._duplexState & ACTIVE_OR_TICKING) !== 0;
    }
    function isTypedArray(data) {
      return typeof data === "object" && data !== null && typeof data.byteLength === "number";
    }
    function defaultByteLength(data) {
      return isTypedArray(data) ? data.byteLength : 1024;
    }
    function noop5() {
    }
    function abort() {
      this.destroy(new Error("Stream aborted."));
    }
    function isWritev(s) {
      return s._writev !== Writable4.prototype._writev && s._writev !== Duplex4.prototype._writev;
    }
    module2.exports = {
      pipeline: pipeline2,
      pipelinePromise,
      isStream: isStream3,
      isStreamx,
      isEnding,
      isEnded,
      isFinishing,
      isFinished,
      isDisturbed,
      getStreamError,
      Stream,
      Writable: Writable4,
      Readable: Readable4,
      Duplex: Duplex4,
      Transform: Transform2,
      // Export PassThrough for compatibility with Node.js core's stream module
      PassThrough: PassThrough3
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/tar-stream/3.2.0/236ce27fb2d25c6701cb7de29a1179b3c829a7e19999fcea60495e4904776d02/node_modules/tar-stream/headers.js
var require_headers3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/tar-stream/3.2.0/236ce27fb2d25c6701cb7de29a1179b3c829a7e19999fcea60495e4904776d02/node_modules/tar-stream/headers.js"(exports2) {
    var b4a = require_b4a();
    var ZEROS = "0000000000000000000";
    var SEVENS = "7777777777777777777";
    var ZERO_OFFSET = "0".charCodeAt(0);
    var USTAR_MAGIC = b4a.from([117, 115, 116, 97, 114, 0]);
    var USTAR_VER = b4a.from([ZERO_OFFSET, ZERO_OFFSET]);
    var GNU_MAGIC = b4a.from([117, 115, 116, 97, 114, 32]);
    var GNU_VER = b4a.from([32, 0]);
    var MASK = 4095;
    var MAGIC_OFFSET = 257;
    var VERSION_OFFSET = 263;
    exports2.decodeLongPath = function decodeLongPath(buf, encoding) {
      return decodeStr(buf, 0, buf.length, encoding);
    };
    exports2.encodePax = function encodePax(opts2) {
      let result2 = "";
      if (opts2.name) result2 += addLength(" path=" + opts2.name + "\n");
      if (opts2.linkname) result2 += addLength(" linkpath=" + opts2.linkname + "\n");
      const pax = opts2.pax;
      if (pax) {
        for (const key in pax) {
          result2 += addLength(" " + key + "=" + pax[key] + "\n");
        }
      }
      return b4a.from(result2);
    };
    exports2.decodePax = function decodePax(buf) {
      const result2 = {};
      while (buf.length) {
        let i2 = 0;
        while (i2 < buf.length && buf[i2] !== 32) i2++;
        const len = parseInt(b4a.toString(buf.subarray(0, i2)), 10);
        if (!len) return result2;
        const b = b4a.toString(buf.subarray(i2 + 1, len - 1));
        const keyIndex = b.indexOf("=");
        if (keyIndex === -1) return result2;
        result2[b.slice(0, keyIndex)] = b.slice(keyIndex + 1);
        buf = buf.subarray(len);
      }
      return result2;
    };
    exports2.encode = function encode2(opts2) {
      const buf = b4a.alloc(512);
      let name = opts2.name;
      let prefix = "";
      if (opts2.typeflag === 5 && name[name.length - 1] !== "/") name += "/";
      if (b4a.byteLength(name) !== name.length) return null;
      while (b4a.byteLength(name) > 100) {
        const i2 = name.indexOf("/");
        if (i2 === -1) return null;
        prefix += prefix ? "/" + name.slice(0, i2) : name.slice(0, i2);
        name = name.slice(i2 + 1);
      }
      if (b4a.byteLength(name) > 100 || b4a.byteLength(prefix) > 155) return null;
      if (opts2.linkname && b4a.byteLength(opts2.linkname) > 100) return null;
      b4a.write(buf, name);
      b4a.write(buf, encodeOct(opts2.mode & MASK, 6), 100);
      b4a.write(buf, encodeOct(opts2.uid, 6), 108);
      b4a.write(buf, encodeOct(opts2.gid, 6), 116);
      encodeSize(opts2.size, buf, 124);
      b4a.write(buf, encodeOct(opts2.mtime.getTime() / 1e3 | 0, 11), 136);
      buf[156] = ZERO_OFFSET + toTypeflag(opts2.type);
      if (opts2.linkname) b4a.write(buf, opts2.linkname, 157);
      b4a.copy(USTAR_MAGIC, buf, MAGIC_OFFSET);
      b4a.copy(USTAR_VER, buf, VERSION_OFFSET);
      if (opts2.uname) b4a.write(buf, opts2.uname, 265);
      if (opts2.gname) b4a.write(buf, opts2.gname, 297);
      b4a.write(buf, encodeOct(opts2.devmajor || 0, 6), 329);
      b4a.write(buf, encodeOct(opts2.devminor || 0, 6), 337);
      if (prefix) b4a.write(buf, prefix, 345);
      b4a.write(buf, encodeOct(cksum(buf), 6), 148);
      return buf;
    };
    exports2.decode = function decode2(buf, filenameEncoding, allowUnknownFormat) {
      let typeflag = buf[156] === 0 ? 0 : buf[156] - ZERO_OFFSET;
      let name = decodeStr(buf, 0, 100, filenameEncoding);
      const mode = decodeOct(buf, 100, 8);
      const uid = decodeOct(buf, 108, 8);
      const gid = decodeOct(buf, 116, 8);
      const size = decodeOct(buf, 124, 12);
      const mtime = decodeOct(buf, 136, 12);
      const type4 = toType(typeflag);
      const linkname = buf[157] === 0 ? null : decodeStr(buf, 157, 100, filenameEncoding);
      const uname = decodeStr(buf, 265, 32);
      const gname = decodeStr(buf, 297, 32);
      const devmajor = decodeOct(buf, 329, 8);
      const devminor = decodeOct(buf, 337, 8);
      const c3 = cksum(buf);
      if (c3 === 8 * 32) return null;
      if (c3 !== decodeOct(buf, 148, 8)) throw new Error("Invalid tar header. Maybe the tar is corrupted or it needs to be gunzipped?");
      if (isUSTAR(buf)) {
        if (buf[345]) name = decodeStr(buf, 345, 155, filenameEncoding) + "/" + name;
      } else if (isGNU(buf)) {
      } else {
        if (!allowUnknownFormat) {
          throw new Error("Invalid tar header: unknown format.");
        }
      }
      if (typeflag === 0 && name && name[name.length - 1] === "/") typeflag = 5;
      return {
        name,
        mode,
        uid,
        gid,
        size,
        byteOffset: 0,
        mtime: new Date(1e3 * mtime),
        type: type4,
        linkname,
        uname,
        gname,
        devmajor,
        devminor,
        pax: null
      };
    };
    function isUSTAR(buf) {
      return b4a.equals(USTAR_MAGIC, buf.subarray(MAGIC_OFFSET, MAGIC_OFFSET + 6));
    }
    function isGNU(buf) {
      return b4a.equals(GNU_MAGIC, buf.subarray(MAGIC_OFFSET, MAGIC_OFFSET + 6)) && b4a.equals(GNU_VER, buf.subarray(VERSION_OFFSET, VERSION_OFFSET + 2));
    }
    function clamp2(index, len, defaultValue) {
      if (typeof index !== "number") return defaultValue;
      index = ~~index;
      if (index >= len) return len;
      if (index >= 0) return index;
      index += len;
      if (index >= 0) return index;
      return 0;
    }
    function toType(flag) {
      switch (flag) {
        case 0:
          return "file";
        case 1:
          return "link";
        case 2:
          return "symlink";
        case 3:
          return "character-device";
        case 4:
          return "block-device";
        case 5:
          return "directory";
        case 6:
          return "fifo";
        case 7:
          return "contiguous-file";
        case 72:
          return "pax-header";
        case 55:
          return "pax-global-header";
        case 27:
          return "gnu-long-link-path";
        case 28:
        case 30:
          return "gnu-long-path";
      }
      return null;
    }
    function toTypeflag(flag) {
      switch (flag) {
        case "file":
          return 0;
        case "link":
          return 1;
        case "symlink":
          return 2;
        case "character-device":
          return 3;
        case "block-device":
          return 4;
        case "directory":
          return 5;
        case "fifo":
          return 6;
        case "contiguous-file":
          return 7;
        case "pax-header":
          return 72;
      }
      return 0;
    }
    function indexOf2(block, num, offset, end) {
      for (; offset < end; offset++) {
        if (block[offset] === num) return offset;
      }
      return end;
    }
    function cksum(block) {
      let sum = 8 * 32;
      for (let i2 = 0; i2 < 148; i2++) sum += block[i2];
      for (let j2 = 156; j2 < 512; j2++) sum += block[j2];
      return sum;
    }
    function encodeOct(val, n2) {
      val = val.toString(8);
      if (val.length > n2) return SEVENS.slice(0, n2) + " ";
      return ZEROS.slice(0, n2 - val.length) + val + " ";
    }
    function encodeSizeBin(num, buf, off) {
      buf[off] = 128;
      for (let i2 = 11; i2 > 0; i2--) {
        buf[off + i2] = num & 255;
        num = Math.floor(num / 256);
      }
    }
    function encodeSize(num, buf, off) {
      if (num.toString(8).length > 11) {
        encodeSizeBin(num, buf, off);
      } else {
        b4a.write(buf, encodeOct(num, 11), off);
      }
    }
    function parse256(buf) {
      let positive;
      if (buf[0] === 128) positive = true;
      else if (buf[0] === 255) positive = false;
      else return null;
      const tuple = [];
      let i2;
      for (i2 = buf.length - 1; i2 > 0; i2--) {
        const byte = buf[i2];
        if (positive) tuple.push(byte);
        else tuple.push(255 - byte);
      }
      let sum = 0;
      const l = tuple.length;
      for (i2 = 0; i2 < l; i2++) {
        sum += tuple[i2] * Math.pow(256, i2);
      }
      return positive ? sum : -1 * sum;
    }
    function decodeOct(val, offset, length) {
      val = val.subarray(offset, offset + length);
      offset = 0;
      if (val[offset] & 128) {
        return parse256(val);
      } else {
        while (offset < val.length && val[offset] === 32) offset++;
        const end = clamp2(indexOf2(val, 32, offset, val.length), val.length, val.length);
        while (offset < end && val[offset] === 0) offset++;
        if (end === offset) return 0;
        return parseInt(b4a.toString(val.subarray(offset, end)), 8);
      }
    }
    function decodeStr(val, offset, length, encoding) {
      return b4a.toString(val.subarray(offset, indexOf2(val, 0, offset, offset + length)), encoding);
    }
    function addLength(str2) {
      const len = b4a.byteLength(str2);
      let digits = Math.floor(Math.log(len) / Math.log(10)) + 1;
      if (len + digits >= Math.pow(10, digits)) digits++;
      return len + digits + str2;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/tar-stream/3.2.0/236ce27fb2d25c6701cb7de29a1179b3c829a7e19999fcea60495e4904776d02/node_modules/tar-stream/extract.js
var require_extract = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/tar-stream/3.2.0/236ce27fb2d25c6701cb7de29a1179b3c829a7e19999fcea60495e4904776d02/node_modules/tar-stream/extract.js"(exports2, module2) {
    var { Writable: Writable4, Readable: Readable4, getStreamError } = require_streamx();
    var FIFO = require_fast_fifo();
    var b4a = require_b4a();
    var headers = require_headers3();
    var EMPTY2 = b4a.alloc(0);
    var MAX_HEADER_SIZE = 4 * 1024 * 1024;
    var BufferList = class {
      constructor() {
        this.buffered = 0;
        this.shifted = 0;
        this.queue = new FIFO();
        this._offset = 0;
      }
      push(buffer3) {
        this.buffered += buffer3.byteLength;
        this.queue.push(buffer3);
      }
      shiftFirst(size) {
        return this.buffered === 0 ? null : this._next(size);
      }
      shift(size) {
        if (size > this.buffered) return null;
        if (size === 0) return EMPTY2;
        let chunk = this._next(size);
        if (size === chunk.byteLength) return chunk;
        const chunks = [chunk];
        while ((size -= chunk.byteLength) > 0) {
          chunk = this._next(size);
          chunks.push(chunk);
        }
        return b4a.concat(chunks);
      }
      _next(size) {
        const buf = this.queue.peek();
        const rem = buf.byteLength - this._offset;
        if (size >= rem) {
          const sub = this._offset ? buf.subarray(this._offset, buf.byteLength) : buf;
          this.queue.shift();
          this._offset = 0;
          this.buffered -= rem;
          this.shifted += rem;
          return sub;
        }
        this.buffered -= size;
        this.shifted += size;
        return buf.subarray(this._offset, this._offset += size);
      }
    };
    var Source = class extends Readable4 {
      constructor(self2, header, offset) {
        super();
        this.header = header;
        this.offset = offset;
        this._parent = self2;
      }
      _read(cb) {
        if (this.header.size === 0) {
          this.push(null);
        }
        if (this._parent._stream === this) {
          this._parent._update();
        }
        cb(null);
      }
      _predestroy() {
        this._parent.destroy(getStreamError(this));
      }
      _detach() {
        if (this._parent._stream === this) {
          this._parent._stream = null;
          this._parent._missing = overflow(this.header.size);
          this._parent._update();
        }
      }
      _destroy(cb) {
        this._detach();
        cb(null);
      }
    };
    var Extract = class extends Writable4 {
      constructor(opts2) {
        super(opts2);
        if (!opts2) opts2 = {};
        this._buffer = new BufferList();
        this._offset = 0;
        this._header = null;
        this._stream = null;
        this._missing = 0;
        this._longHeader = false;
        this._callback = noop5;
        this._locked = false;
        this._finished = false;
        this._pax = null;
        this._paxGlobal = null;
        this._gnuLongPath = null;
        this._gnuLongLinkPath = null;
        this._filenameEncoding = opts2.filenameEncoding || "utf-8";
        this._allowUnknownFormat = !!opts2.allowUnknownFormat;
        this._unlockBound = this._unlock.bind(this);
      }
      _unlock(err) {
        this._locked = false;
        if (err) {
          this.destroy(err);
          this._continueWrite(err);
          return;
        }
        this._update();
      }
      _consumeHeader() {
        if (this._locked) return false;
        this._offset = this._buffer.shifted;
        try {
          this._header = headers.decode(this._buffer.shift(512), this._filenameEncoding, this._allowUnknownFormat);
        } catch (err) {
          this._continueWrite(err);
          return false;
        }
        if (!this._header) return true;
        this._header.byteOffset = this._buffer.shifted;
        switch (this._header.type) {
          case "gnu-long-path":
          case "gnu-long-link-path":
          case "pax-global-header":
          case "pax-header":
            this._longHeader = true;
            this._missing = this._header.size;
            if (this._missing > MAX_HEADER_SIZE) {
              this._continueWrite(new Error("Header exceeds max size"));
              return false;
            }
            return true;
        }
        this._locked = true;
        this._applyLongHeaders();
        if (!(this._header.size >= 0)) {
          this._continueWrite(new Error("Invalid header"));
          return false;
        }
        if (this._header.size === 0 || this._header.type === "directory") {
          this.emit("entry", this._header, this._createStream(), this._unlockBound);
          return true;
        }
        this._stream = this._createStream();
        this._missing = this._header.size;
        this.emit("entry", this._header, this._stream, this._unlockBound);
        return true;
      }
      _applyLongHeaders() {
        if (this._gnuLongPath) {
          this._header.name = this._gnuLongPath;
          this._gnuLongPath = null;
        }
        if (this._gnuLongLinkPath) {
          this._header.linkname = this._gnuLongLinkPath;
          this._gnuLongLinkPath = null;
        }
        if (this._pax) {
          if (this._pax.path) this._header.name = this._pax.path;
          if (this._pax.linkpath) this._header.linkname = this._pax.linkpath;
          if (this._pax.size) this._header.size = parseInt(this._pax.size, 10);
          this._header.pax = this._pax;
          this._pax = null;
        }
      }
      _decodeLongHeader(buf) {
        switch (this._header.type) {
          case "gnu-long-path":
            this._gnuLongPath = headers.decodeLongPath(buf, this._filenameEncoding);
            break;
          case "gnu-long-link-path":
            this._gnuLongLinkPath = headers.decodeLongPath(buf, this._filenameEncoding);
            break;
          case "pax-global-header":
            this._paxGlobal = headers.decodePax(buf);
            break;
          case "pax-header":
            this._pax = this._paxGlobal === null ? headers.decodePax(buf) : Object.assign({}, this._paxGlobal, headers.decodePax(buf));
            break;
        }
      }
      _consumeLongHeader() {
        this._longHeader = false;
        this._missing = overflow(this._header.size);
        const buf = this._buffer.shift(this._header.size);
        try {
          this._decodeLongHeader(buf);
        } catch (err) {
          this._continueWrite(err);
          return false;
        }
        return true;
      }
      _consumeStream() {
        const buf = this._buffer.shiftFirst(this._missing);
        if (buf === null) return false;
        this._missing -= buf.byteLength;
        const drained = this._stream.push(buf);
        if (this._missing === 0) {
          this._stream.push(null);
          if (drained) this._stream._detach();
          return drained && this._locked === false;
        }
        return drained;
      }
      _createStream() {
        return new Source(this, this._header, this._offset);
      }
      _update() {
        while (this._buffer.buffered > 0 && !this.destroying) {
          if (this._missing > 0) {
            if (this._stream !== null) {
              if (this._consumeStream() === false) return;
              continue;
            }
            if (this._longHeader === true) {
              if (this._missing > this._buffer.buffered) break;
              if (this._consumeLongHeader() === false) return false;
              continue;
            }
            const ignore2 = this._buffer.shiftFirst(this._missing);
            if (ignore2 !== null) this._missing -= ignore2.byteLength;
            continue;
          }
          if (this._buffer.buffered < 512) break;
          if (this._stream !== null || this._consumeHeader() === false) return;
        }
        this._continueWrite(null);
      }
      _continueWrite(err) {
        const cb = this._callback;
        this._callback = noop5;
        cb(err);
      }
      _write(data, cb) {
        this._callback = cb;
        this._buffer.push(data);
        this._update();
      }
      _final(cb) {
        this._finished = this._missing === 0 && this._buffer.buffered === 0;
        cb(this._finished ? null : new Error("Unexpected end of data"));
      }
      _predestroy() {
        this._continueWrite(null);
      }
      _destroy(cb) {
        if (this._stream) this._stream.destroy(getStreamError(this));
        cb(null);
      }
      [Symbol.asyncIterator]() {
        let error = null;
        let promiseResolve = null;
        let promiseReject = null;
        let entryStream = null;
        let entryCallback = null;
        const extract = this;
        this.on("entry", onentry);
        this.on("error", (err) => {
          error = err;
        });
        this.on("close", onclose);
        return {
          [Symbol.asyncIterator]() {
            return this;
          },
          next() {
            return new Promise(onnext);
          },
          return() {
            return destroy(null);
          },
          throw(err) {
            return destroy(err);
          }
        };
        function consumeCallback(err) {
          if (!entryCallback) return;
          const cb = entryCallback;
          entryCallback = null;
          cb(err);
        }
        function onnext(resolve3, reject3) {
          if (error) {
            return reject3(error);
          }
          if (entryStream) {
            resolve3({ value: entryStream, done: false });
            entryStream = null;
            return;
          }
          promiseResolve = resolve3;
          promiseReject = reject3;
          consumeCallback(null);
          if (extract._finished && promiseResolve) {
            promiseResolve({ value: void 0, done: true });
            promiseResolve = promiseReject = null;
          }
        }
        function onentry(header, stream2, callback2) {
          entryCallback = callback2;
          stream2.on("error", noop5);
          if (promiseResolve) {
            promiseResolve({ value: stream2, done: false });
            promiseResolve = promiseReject = null;
          } else {
            entryStream = stream2;
          }
        }
        function onclose() {
          consumeCallback(error);
          if (!promiseResolve) return;
          if (error) promiseReject(error);
          else promiseResolve({ value: void 0, done: true });
          promiseResolve = promiseReject = null;
        }
        function destroy(err) {
          extract.destroy(err);
          consumeCallback(err);
          return new Promise((resolve3, reject3) => {
            if (extract.destroyed) return resolve3({ value: void 0, done: true });
            extract.once("close", function() {
              if (err) reject3(err);
              else resolve3({ value: void 0, done: true });
            });
          });
        }
      }
    };
    module2.exports = function extract(opts2) {
      return new Extract(opts2);
    };
    function noop5() {
    }
    function overflow(size) {
      size &= 511;
      return size && 512 - size;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/tar-stream/3.2.0/236ce27fb2d25c6701cb7de29a1179b3c829a7e19999fcea60495e4904776d02/node_modules/tar-stream/constants.js
var require_constants18 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/tar-stream/3.2.0/236ce27fb2d25c6701cb7de29a1179b3c829a7e19999fcea60495e4904776d02/node_modules/tar-stream/constants.js"(exports2, module2) {
    var constants5 = {
      // just for envs without fs
      S_IFMT: 61440,
      S_IFDIR: 16384,
      S_IFCHR: 8192,
      S_IFBLK: 24576,
      S_IFIFO: 4096,
      S_IFLNK: 40960
    };
    try {
      module2.exports = __require("fs").constants || constants5;
    } catch {
      module2.exports = constants5;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/tar-stream/3.2.0/236ce27fb2d25c6701cb7de29a1179b3c829a7e19999fcea60495e4904776d02/node_modules/tar-stream/pack.js
var require_pack = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/tar-stream/3.2.0/236ce27fb2d25c6701cb7de29a1179b3c829a7e19999fcea60495e4904776d02/node_modules/tar-stream/pack.js"(exports2, module2) {
    var { Readable: Readable4, Writable: Writable4, getStreamError } = require_streamx();
    var b4a = require_b4a();
    var constants5 = require_constants18();
    var headers = require_headers3();
    var DMODE = 493;
    var FMODE = 420;
    var END_OF_TAR = b4a.alloc(1024);
    var Sink = class extends Writable4 {
      constructor(pack2, header, callback2) {
        super({ mapWritable, eagerOpen: true });
        this.written = 0;
        this.header = header;
        this._callback = callback2;
        this._linkname = null;
        this._isLinkname = header.type === "symlink" && !header.linkname;
        this._isVoid = header.type !== "file" && header.type !== "contiguous-file";
        this._finished = false;
        this._pack = pack2;
        this._openCallback = null;
        if (this._pack._stream === null) this._pack._stream = this;
        else this._pack._pending.push(this);
      }
      _open(cb) {
        this._openCallback = cb;
        if (this._pack._stream === this) this._continueOpen();
      }
      _continuePack(err) {
        if (this._callback === null) return;
        const callback2 = this._callback;
        this._callback = null;
        callback2(err);
      }
      _continueOpen() {
        if (this._pack._stream === null) this._pack._stream = this;
        const cb = this._openCallback;
        this._openCallback = null;
        if (cb === null) return;
        if (this._pack.destroying) return cb(new Error("pack stream destroyed"));
        if (this._pack._finalized) return cb(new Error("pack stream is already finalized"));
        this._pack._stream = this;
        if (!this._isLinkname) {
          this._pack._encode(this.header);
        }
        if (this._isVoid) {
          this._finish();
          this._continuePack(null);
        }
        cb(null);
      }
      _write(data, cb) {
        if (this._isLinkname) {
          this._linkname = this._linkname ? b4a.concat([this._linkname, data]) : data;
          return cb(null);
        }
        if (this._isVoid) {
          if (data.byteLength > 0) {
            return cb(new Error("No body allowed for this entry"));
          }
          return cb();
        }
        this.written += data.byteLength;
        if (this._pack.push(data)) return cb();
        this._pack._drain = cb;
      }
      _finish() {
        if (this._finished) return;
        this._finished = true;
        if (this._isLinkname) {
          this.header.linkname = this._linkname ? b4a.toString(this._linkname, "utf-8") : "";
          this._pack._encode(this.header);
        }
        overflow(this._pack, this.header.size);
        this._pack._done(this);
      }
      _final(cb) {
        if (this.written !== this.header.size) {
          return cb(new Error("Size mismatch"));
        }
        this._finish();
        cb(null);
      }
      _getError() {
        return getStreamError(this) || new Error("tar entry destroyed");
      }
      _predestroy() {
        this._pack.destroy(this._getError());
      }
      _destroy(cb) {
        this._pack._done(this);
        this._continuePack(this._finished ? null : this._getError());
        cb();
      }
    };
    var Pack = class extends Readable4 {
      constructor(opts2) {
        super(opts2);
        this._drain = noop5;
        this._finalized = false;
        this._finalizing = false;
        this._pending = [];
        this._stream = null;
      }
      entry(header, buffer3, callback2) {
        if (this._finalized || this.destroying) throw new Error("already finalized or destroyed");
        if (typeof buffer3 === "function") {
          callback2 = buffer3;
          buffer3 = null;
        }
        if (!callback2) callback2 = noop5;
        if (!header.size || header.type === "symlink") header.size = 0;
        if (!header.type) header.type = modeToType(header.mode);
        if (!header.mode) header.mode = header.type === "directory" ? DMODE : FMODE;
        if (!header.uid) header.uid = 0;
        if (!header.gid) header.gid = 0;
        if (!header.mtime) header.mtime = /* @__PURE__ */ new Date();
        if (typeof buffer3 === "string") buffer3 = b4a.from(buffer3);
        const sink = new Sink(this, header, callback2);
        if (b4a.isBuffer(buffer3)) {
          header.size = buffer3.byteLength;
          sink.write(buffer3);
          sink.end();
          return sink;
        }
        if (sink._isVoid) {
          return sink;
        }
        return sink;
      }
      finalize() {
        if (this._stream || this._pending.length > 0) {
          this._finalizing = true;
          return;
        }
        if (this._finalized) return;
        this._finalized = true;
        this.push(END_OF_TAR);
        this.push(null);
      }
      _done(stream2) {
        if (stream2 !== this._stream) return;
        this._stream = null;
        if (this._finalizing) this.finalize();
        if (this._pending.length) this._pending.shift()._continueOpen();
      }
      _encode(header) {
        if (!header.pax) {
          const buf = headers.encode(header);
          if (buf) {
            this.push(buf);
            return;
          }
        }
        this._encodePax(header);
      }
      _encodePax(header) {
        const paxHeader = headers.encodePax({
          name: header.name,
          linkname: header.linkname,
          pax: header.pax
        });
        const newHeader = {
          name: "PaxHeader",
          mode: header.mode,
          uid: header.uid,
          gid: header.gid,
          size: paxHeader.byteLength,
          mtime: header.mtime,
          type: "pax-header",
          linkname: header.linkname && "PaxHeader",
          uname: header.uname,
          gname: header.gname,
          devmajor: header.devmajor,
          devminor: header.devminor
        };
        this.push(headers.encode(newHeader));
        this.push(paxHeader);
        overflow(this, paxHeader.byteLength);
        newHeader.size = header.size;
        newHeader.type = header.type;
        this.push(headers.encode(newHeader));
      }
      _doDrain() {
        const drain = this._drain;
        this._drain = noop5;
        drain();
      }
      _predestroy() {
        const err = getStreamError(this);
        if (this._stream) this._stream.destroy(err);
        while (this._pending.length) {
          const stream2 = this._pending.shift();
          stream2.destroy(err);
          stream2._continueOpen();
        }
        this._doDrain();
      }
      _read(cb) {
        this._doDrain();
        cb();
      }
    };
    module2.exports = function pack2(opts2) {
      return new Pack(opts2);
    };
    function modeToType(mode) {
      switch (mode & constants5.S_IFMT) {
        case constants5.S_IFBLK:
          return "block-device";
        case constants5.S_IFCHR:
          return "character-device";
        case constants5.S_IFDIR:
          return "directory";
        case constants5.S_IFIFO:
          return "fifo";
        case constants5.S_IFLNK:
          return "symlink";
      }
      return "file";
    }
    function noop5() {
    }
    function overflow(self2, size) {
      size &= 511;
      if (size) self2.push(END_OF_TAR.subarray(0, 512 - size));
    }
    function mapWritable(buf) {
      return b4a.isBuffer(buf) ? buf : b4a.from(buf);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/tar-stream/3.2.0/236ce27fb2d25c6701cb7de29a1179b3c829a7e19999fcea60495e4904776d02/node_modules/tar-stream/index.js
var require_tar_stream = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/tar-stream/3.2.0/236ce27fb2d25c6701cb7de29a1179b3c829a7e19999fcea60495e4904776d02/node_modules/tar-stream/index.js"(exports2) {
    exports2.extract = require_extract();
    exports2.pack = require_pack();
  }
});

// ../releasing/commands/lib/publish/extractManifestFromPacked.js
import fs102 from "node:fs";
import path194 from "node:path";
import { createGunzip } from "node:zlib";
async function extractManifestFromPacked(tarballPath) {
  const extract = import_tar_stream.default.extract();
  const gunzip = createGunzip();
  const tarballStream = fs102.createReadStream(tarballPath);
  let cleanedUp = false;
  function cleanup() {
    if (cleanedUp)
      return;
    cleanedUp = true;
    extract.destroy();
    gunzip.destroy();
    tarballStream.destroy();
  }
  const promise2 = new Promise((resolve3, reject3) => {
    function handleError(error) {
      cleanup();
      reject3(error);
    }
    tarballStream.once("error", handleError);
    gunzip.once("error", handleError);
    let manifestFound = false;
    extract.on("entry", (header, stream2, next2) => {
      const normalizedPath = path194.normalize(header.name).replaceAll("\\", "/");
      if (normalizedPath !== "package/package.json") {
        stream2.once("end", next2);
        stream2.resume();
        return;
      }
      manifestFound = true;
      const chunks = [];
      stream2.on("data", (chunk) => {
        chunks.push(chunk);
      });
      stream2.once("end", () => {
        try {
          const text = Buffer.concat(chunks).toString();
          cleanup();
          resolve3(text);
        } catch (error) {
          handleError(error);
        }
      });
      stream2.once("error", handleError);
    });
    extract.once("finish", () => {
      cleanup();
      if (!manifestFound) {
        reject3(new PublishArchiveMissingManifestError(tarballPath));
      }
    });
    extract.once("error", handleError);
  });
  tarballStream.pipe(gunzip).pipe(extract);
  return JSON.parse(await promise2);
}
var import_tar_stream, TARBALL_SUFFIXES, isTarballPath, PublishArchiveMissingManifestError;
var init_extractManifestFromPacked = __esm({
  "../releasing/commands/lib/publish/extractManifestFromPacked.js"() {
    "use strict";
    init_lib2();
    import_tar_stream = __toESM(require_tar_stream(), 1);
    TARBALL_SUFFIXES = [".tar.gz", ".tgz"];
    isTarballPath = (path218) => TARBALL_SUFFIXES.some((suffix) => path218.endsWith(suffix));
    PublishArchiveMissingManifestError = class extends PnpmError {
      tarballPath;
      constructor(tarballPath) {
        super("PUBLISH_ARCHIVE_MISSING_MANIFEST", `The archive ${tarballPath} does not contain package/package.json`);
        this.tarballPath = tarballPath;
      }
    };
  }
});

// ../releasing/commands/lib/publish/otpEnv.js
var ENV_KEY, optionsWithOtpEnv;
var init_otpEnv = __esm({
  "../releasing/commands/lib/publish/otpEnv.js"() {
    "use strict";
    ENV_KEY = "PNPM_CONFIG_OTP";
    optionsWithOtpEnv = (opts2, { [ENV_KEY]: otp }) => Boolean(opts2.otp) || !otp ? opts2 : { ...opts2, otp };
  }
});

// ../releasing/commands/lib/tarball/publishSummary.js
function extractBundledDependencies(manifest) {
  const raw = manifest.bundledDependencies ?? manifest.bundleDependencies;
  if (!raw)
    return [];
  if (Array.isArray(raw))
    return raw.filter((name) => typeof name === "string");
  if (raw === true)
    return Object.keys(manifest.dependencies ?? {});
  return [];
}
var init_publishSummary = __esm({
  "../releasing/commands/lib/tarball/publishSummary.js"() {
    "use strict";
  }
});

// ../releasing/commands/lib/publish/displayError.js
function displayError(error) {
  if (typeof error !== "object" || !error)
    return JSON.stringify(error);
  let code;
  let body;
  if ("code" in error && typeof error.code === "string") {
    code = error.code;
  } else if ("name" in error && typeof error.name === "string") {
    code = error.name;
  }
  if ("message" in error && typeof error.message === "string") {
    body = error.message;
  }
  if (code && body)
    return `${code}: ${body}`;
  if (code)
    return code;
  if (body)
    return body;
  return JSON.stringify(error);
}
var init_displayError = __esm({
  "../releasing/commands/lib/publish/displayError.js"() {
    "use strict";
  }
});

// ../releasing/commands/lib/publish/executeTokenHelper.js
function executeTokenHelper2([cmd, ...args], opts2) {
  const execResult = sync(cmd, args, {
    stdio: "pipe"
  });
  const stderr = execResult.stderr?.toString() ?? "";
  if (stderr.trim()) {
    for (const line of stderr.trimEnd().split("\n")) {
      opts2.globalWarn(`(tokenHelper stderr) ${line}`);
    }
  }
  const token = (execResult.stdout?.toString() ?? "").trim();
  return token.replace(/^Bearer\s+/i, "");
}
var init_executeTokenHelper = __esm({
  "../releasing/commands/lib/publish/executeTokenHelper.js"() {
    "use strict";
    init_lib26();
  }
});

// ../releasing/commands/lib/publish/FailedToPublishError.js
async function createFailedToPublishError(pack2, fetchResponse) {
  const { status, statusText } = fetchResponse;
  let text;
  try {
    text = await fetchResponse.text();
  } catch {
    text = "";
  }
  return new FailedToPublishError({ pack: pack2, status, statusText, text });
}
var FailedToPublishError;
var init_FailedToPublishError = __esm({
  "../releasing/commands/lib/publish/FailedToPublishError.js"() {
    "use strict";
    init_lib2();
    FailedToPublishError = class extends PnpmError {
      pack;
      status;
      statusText;
      text;
      constructor(opts2) {
        const { pack: pack2, status, statusText, text } = opts2;
        const { name, version: version2 } = pack2.publishedManifest;
        const statusDisplay = statusText ? `${status} ${statusText}` : status;
        const trimmedText = text.trim();
        let message = `Failed to publish package ${name}@${version2} (status ${statusDisplay})`;
        if (trimmedText.includes("\n")) {
          message += "\nDetails:\n";
          for (const line of text.trimEnd().split("\n")) {
            message += `    ${line}
`;
          }
        } else if (trimmedText) {
          message += `: ${trimmedText}`;
        }
        super("FAILED_TO_PUBLISH", message);
        this.pack = pack2;
        this.status = status;
        this.statusText = statusText;
        this.text = text;
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/npm-registry-fetch/19.1.1/79a25a680f68d9ed82ba96692e4648cccb7968b0efd1562d4faa92a3ec85fc7d/node_modules/npm-registry-fetch/lib/errors.js
var require_errors7 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/npm-registry-fetch/19.1.1/79a25a680f68d9ed82ba96692e4648cccb7968b0efd1562d4faa92a3ec85fc7d/node_modules/npm-registry-fetch/lib/errors.js"(exports2, module2) {
    "use strict";
    var { URL: URL7 } = __require("node:url");
    function packageName(href) {
      try {
        let basePath = new URL7(href).pathname.slice(1);
        if (!basePath.match(/^-/)) {
          basePath = basePath.split("/");
          var index = basePath.indexOf("_rewrite");
          if (index === -1) {
            index = basePath.length - 1;
          } else {
            index++;
          }
          return decodeURIComponent(basePath[index]);
        }
      } catch {
      }
    }
    var HttpErrorBase = class extends Error {
      constructor(method, res, body, spec) {
        super();
        this.name = this.constructor.name;
        this.headers = typeof res.headers?.raw === "function" ? res.headers.raw() : res.headers;
        this.statusCode = res.status;
        this.code = `E${res.status}`;
        this.method = method;
        this.uri = res.url;
        this.body = body;
        this.pkgid = spec ? spec.toString() : packageName(res.url);
        Error.captureStackTrace(this, this.constructor);
      }
    };
    var HttpErrorGeneral = class extends HttpErrorBase {
      constructor(method, res, body, spec) {
        super(method, res, body, spec);
        this.message = `${res.status} ${res.statusText} - ${this.method.toUpperCase()} ${this.spec || this.uri}${body && body.error ? " - " + body.error : ""}`;
      }
    };
    var HttpErrorAuthOTP = class extends HttpErrorBase {
      constructor(method, res, body, spec) {
        super(method, res, body, spec);
        this.message = "OTP required for authentication";
        this.code = "EOTP";
      }
    };
    var HttpErrorAuthIPAddress = class extends HttpErrorBase {
      constructor(method, res, body, spec) {
        super(method, res, body, spec);
        this.message = "Login is not allowed from your IP address";
        this.code = "EAUTHIP";
      }
    };
    var HttpErrorAuthUnknown = class extends HttpErrorBase {
      constructor(method, res, body, spec) {
        super(method, res, body, spec);
        this.message = "Unable to authenticate, need: " + res.headers.get("www-authenticate");
      }
    };
    module2.exports = {
      HttpErrorBase,
      HttpErrorGeneral,
      HttpErrorAuthOTP,
      HttpErrorAuthIPAddress,
      HttpErrorAuthUnknown
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/minizlib/3.1.0/c3412b7eb83e1106e4af887256fe062e781d4534763bcd53ad4c91261a49ff69/node_modules/minizlib/dist/commonjs/constants.js
var require_constants19 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/minizlib/3.1.0/c3412b7eb83e1106e4af887256fe062e781d4534763bcd53ad4c91261a49ff69/node_modules/minizlib/dist/commonjs/constants.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.constants = void 0;
    var zlib_1 = __importDefault2(__require("zlib"));
    var realZlibConstants = zlib_1.default.constants || { ZLIB_VERNUM: 4736 };
    exports2.constants = Object.freeze(Object.assign(/* @__PURE__ */ Object.create(null), {
      Z_NO_FLUSH: 0,
      Z_PARTIAL_FLUSH: 1,
      Z_SYNC_FLUSH: 2,
      Z_FULL_FLUSH: 3,
      Z_FINISH: 4,
      Z_BLOCK: 5,
      Z_OK: 0,
      Z_STREAM_END: 1,
      Z_NEED_DICT: 2,
      Z_ERRNO: -1,
      Z_STREAM_ERROR: -2,
      Z_DATA_ERROR: -3,
      Z_MEM_ERROR: -4,
      Z_BUF_ERROR: -5,
      Z_VERSION_ERROR: -6,
      Z_NO_COMPRESSION: 0,
      Z_BEST_SPEED: 1,
      Z_BEST_COMPRESSION: 9,
      Z_DEFAULT_COMPRESSION: -1,
      Z_FILTERED: 1,
      Z_HUFFMAN_ONLY: 2,
      Z_RLE: 3,
      Z_FIXED: 4,
      Z_DEFAULT_STRATEGY: 0,
      DEFLATE: 1,
      INFLATE: 2,
      GZIP: 3,
      GUNZIP: 4,
      DEFLATERAW: 5,
      INFLATERAW: 6,
      UNZIP: 7,
      BROTLI_DECODE: 8,
      BROTLI_ENCODE: 9,
      Z_MIN_WINDOWBITS: 8,
      Z_MAX_WINDOWBITS: 15,
      Z_DEFAULT_WINDOWBITS: 15,
      Z_MIN_CHUNK: 64,
      Z_MAX_CHUNK: Infinity,
      Z_DEFAULT_CHUNK: 16384,
      Z_MIN_MEMLEVEL: 1,
      Z_MAX_MEMLEVEL: 9,
      Z_DEFAULT_MEMLEVEL: 8,
      Z_MIN_LEVEL: -1,
      Z_MAX_LEVEL: 9,
      Z_DEFAULT_LEVEL: -1,
      BROTLI_OPERATION_PROCESS: 0,
      BROTLI_OPERATION_FLUSH: 1,
      BROTLI_OPERATION_FINISH: 2,
      BROTLI_OPERATION_EMIT_METADATA: 3,
      BROTLI_MODE_GENERIC: 0,
      BROTLI_MODE_TEXT: 1,
      BROTLI_MODE_FONT: 2,
      BROTLI_DEFAULT_MODE: 0,
      BROTLI_MIN_QUALITY: 0,
      BROTLI_MAX_QUALITY: 11,
      BROTLI_DEFAULT_QUALITY: 11,
      BROTLI_MIN_WINDOW_BITS: 10,
      BROTLI_MAX_WINDOW_BITS: 24,
      BROTLI_LARGE_MAX_WINDOW_BITS: 30,
      BROTLI_DEFAULT_WINDOW: 22,
      BROTLI_MIN_INPUT_BLOCK_BITS: 16,
      BROTLI_MAX_INPUT_BLOCK_BITS: 24,
      BROTLI_PARAM_MODE: 0,
      BROTLI_PARAM_QUALITY: 1,
      BROTLI_PARAM_LGWIN: 2,
      BROTLI_PARAM_LGBLOCK: 3,
      BROTLI_PARAM_DISABLE_LITERAL_CONTEXT_MODELING: 4,
      BROTLI_PARAM_SIZE_HINT: 5,
      BROTLI_PARAM_LARGE_WINDOW: 6,
      BROTLI_PARAM_NPOSTFIX: 7,
      BROTLI_PARAM_NDIRECT: 8,
      BROTLI_DECODER_RESULT_ERROR: 0,
      BROTLI_DECODER_RESULT_SUCCESS: 1,
      BROTLI_DECODER_RESULT_NEEDS_MORE_INPUT: 2,
      BROTLI_DECODER_RESULT_NEEDS_MORE_OUTPUT: 3,
      BROTLI_DECODER_PARAM_DISABLE_RING_BUFFER_REALLOCATION: 0,
      BROTLI_DECODER_PARAM_LARGE_WINDOW: 1,
      BROTLI_DECODER_NO_ERROR: 0,
      BROTLI_DECODER_SUCCESS: 1,
      BROTLI_DECODER_NEEDS_MORE_INPUT: 2,
      BROTLI_DECODER_NEEDS_MORE_OUTPUT: 3,
      BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_NIBBLE: -1,
      BROTLI_DECODER_ERROR_FORMAT_RESERVED: -2,
      BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_META_NIBBLE: -3,
      BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_ALPHABET: -4,
      BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_SAME: -5,
      BROTLI_DECODER_ERROR_FORMAT_CL_SPACE: -6,
      BROTLI_DECODER_ERROR_FORMAT_HUFFMAN_SPACE: -7,
      BROTLI_DECODER_ERROR_FORMAT_CONTEXT_MAP_REPEAT: -8,
      BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_1: -9,
      BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_2: -10,
      BROTLI_DECODER_ERROR_FORMAT_TRANSFORM: -11,
      BROTLI_DECODER_ERROR_FORMAT_DICTIONARY: -12,
      BROTLI_DECODER_ERROR_FORMAT_WINDOW_BITS: -13,
      BROTLI_DECODER_ERROR_FORMAT_PADDING_1: -14,
      BROTLI_DECODER_ERROR_FORMAT_PADDING_2: -15,
      BROTLI_DECODER_ERROR_FORMAT_DISTANCE: -16,
      BROTLI_DECODER_ERROR_DICTIONARY_NOT_SET: -19,
      BROTLI_DECODER_ERROR_INVALID_ARGUMENTS: -20,
      BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MODES: -21,
      BROTLI_DECODER_ERROR_ALLOC_TREE_GROUPS: -22,
      BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MAP: -25,
      BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_1: -26,
      BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_2: -27,
      BROTLI_DECODER_ERROR_ALLOC_BLOCK_TYPE_TREES: -30,
      BROTLI_DECODER_ERROR_UNREACHABLE: -31
    }, realZlibConstants));
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/minizlib/3.1.0/c3412b7eb83e1106e4af887256fe062e781d4534763bcd53ad4c91261a49ff69/node_modules/minizlib/dist/commonjs/index.js
var require_commonjs5 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/minizlib/3.1.0/c3412b7eb83e1106e4af887256fe062e781d4534763bcd53ad4c91261a49ff69/node_modules/minizlib/dist/commonjs/index.js"(exports2) {
    "use strict";
    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      var desc2 = Object.getOwnPropertyDescriptor(m, k2);
      if (!desc2 || ("get" in desc2 ? !m.__esModule : desc2.writable || desc2.configurable)) {
        desc2 = { enumerable: true, get: function() {
          return m[k2];
        } };
      }
      Object.defineProperty(o2, k22, desc2);
    }) : (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      o2[k22] = m[k2];
    }));
    var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o2, v) {
      Object.defineProperty(o2, "default", { enumerable: true, value: v });
    }) : function(o2, v) {
      o2["default"] = v;
    });
    var __importStar2 = exports2 && exports2.__importStar || /* @__PURE__ */ (function() {
      var ownKeys2 = function(o2) {
        ownKeys2 = Object.getOwnPropertyNames || function(o3) {
          var ar = [];
          for (var k2 in o3) if (Object.prototype.hasOwnProperty.call(o3, k2)) ar[ar.length] = k2;
          return ar;
        };
        return ownKeys2(o2);
      };
      return function(mod) {
        if (mod && mod.__esModule) return mod;
        var result2 = {};
        if (mod != null) {
          for (var k2 = ownKeys2(mod), i2 = 0; i2 < k2.length; i2++) if (k2[i2] !== "default") __createBinding2(result2, mod, k2[i2]);
        }
        __setModuleDefault2(result2, mod);
        return result2;
      };
    })();
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.ZstdDecompress = exports2.ZstdCompress = exports2.BrotliDecompress = exports2.BrotliCompress = exports2.Unzip = exports2.InflateRaw = exports2.DeflateRaw = exports2.Gunzip = exports2.Gzip = exports2.Inflate = exports2.Deflate = exports2.Zlib = exports2.ZlibError = exports2.constants = void 0;
    var assert_1 = __importDefault2(__require("assert"));
    var buffer_1 = __require("buffer");
    var minipass_1 = require_commonjs();
    var realZlib = __importStar2(__require("zlib"));
    var constants_js_1 = require_constants19();
    var constants_js_2 = require_constants19();
    Object.defineProperty(exports2, "constants", { enumerable: true, get: function() {
      return constants_js_2.constants;
    } });
    var OriginalBufferConcat = buffer_1.Buffer.concat;
    var desc = Object.getOwnPropertyDescriptor(buffer_1.Buffer, "concat");
    var noop5 = (args) => args;
    var passthroughBufferConcat = desc?.writable === true || desc?.set !== void 0 ? (makeNoOp) => {
      buffer_1.Buffer.concat = makeNoOp ? noop5 : OriginalBufferConcat;
    } : (_) => {
    };
    var _superWrite = /* @__PURE__ */ Symbol("_superWrite");
    var ZlibError = class extends Error {
      code;
      errno;
      constructor(err, origin) {
        super("zlib: " + err.message, { cause: err });
        this.code = err.code;
        this.errno = err.errno;
        if (!this.code)
          this.code = "ZLIB_ERROR";
        this.message = "zlib: " + err.message;
        Error.captureStackTrace(this, origin ?? this.constructor);
      }
      get name() {
        return "ZlibError";
      }
    };
    exports2.ZlibError = ZlibError;
    var _flushFlag = /* @__PURE__ */ Symbol("flushFlag");
    var ZlibBase = class extends minipass_1.Minipass {
      #sawError = false;
      #ended = false;
      #flushFlag;
      #finishFlushFlag;
      #fullFlushFlag;
      #handle;
      #onError;
      get sawError() {
        return this.#sawError;
      }
      get handle() {
        return this.#handle;
      }
      /* c8 ignore start */
      get flushFlag() {
        return this.#flushFlag;
      }
      /* c8 ignore stop */
      constructor(opts2, mode) {
        if (!opts2 || typeof opts2 !== "object")
          throw new TypeError("invalid options for ZlibBase constructor");
        super(opts2);
        this.#flushFlag = opts2.flush ?? 0;
        this.#finishFlushFlag = opts2.finishFlush ?? 0;
        this.#fullFlushFlag = opts2.fullFlushFlag ?? 0;
        if (typeof realZlib[mode] !== "function") {
          throw new TypeError("Compression method not supported: " + mode);
        }
        try {
          this.#handle = new realZlib[mode](opts2);
        } catch (er) {
          throw new ZlibError(er, this.constructor);
        }
        this.#onError = (err) => {
          if (this.#sawError)
            return;
          this.#sawError = true;
          this.close();
          this.emit("error", err);
        };
        this.#handle?.on("error", (er) => this.#onError(new ZlibError(er)));
        this.once("end", () => this.close);
      }
      close() {
        if (this.#handle) {
          this.#handle.close();
          this.#handle = void 0;
          this.emit("close");
        }
      }
      reset() {
        if (!this.#sawError) {
          (0, assert_1.default)(this.#handle, "zlib binding closed");
          return this.#handle.reset?.();
        }
      }
      flush(flushFlag) {
        if (this.ended)
          return;
        if (typeof flushFlag !== "number")
          flushFlag = this.#fullFlushFlag;
        this.write(Object.assign(buffer_1.Buffer.alloc(0), { [_flushFlag]: flushFlag }));
      }
      end(chunk, encoding, cb) {
        if (typeof chunk === "function") {
          cb = chunk;
          encoding = void 0;
          chunk = void 0;
        }
        if (typeof encoding === "function") {
          cb = encoding;
          encoding = void 0;
        }
        if (chunk) {
          if (encoding)
            this.write(chunk, encoding);
          else
            this.write(chunk);
        }
        this.flush(this.#finishFlushFlag);
        this.#ended = true;
        return super.end(cb);
      }
      get ended() {
        return this.#ended;
      }
      // overridden in the gzip classes to do portable writes
      [_superWrite](data) {
        return super.write(data);
      }
      write(chunk, encoding, cb) {
        if (typeof encoding === "function")
          cb = encoding, encoding = "utf8";
        if (typeof chunk === "string")
          chunk = buffer_1.Buffer.from(chunk, encoding);
        if (this.#sawError)
          return;
        (0, assert_1.default)(this.#handle, "zlib binding closed");
        const nativeHandle = this.#handle._handle;
        const originalNativeClose = nativeHandle.close;
        nativeHandle.close = () => {
        };
        const originalClose = this.#handle.close;
        this.#handle.close = () => {
        };
        passthroughBufferConcat(true);
        let result2 = void 0;
        try {
          const flushFlag = typeof chunk[_flushFlag] === "number" ? chunk[_flushFlag] : this.#flushFlag;
          result2 = this.#handle._processChunk(chunk, flushFlag);
          passthroughBufferConcat(false);
        } catch (err) {
          passthroughBufferConcat(false);
          this.#onError(new ZlibError(err, this.write));
        } finally {
          if (this.#handle) {
            ;
            this.#handle._handle = nativeHandle;
            nativeHandle.close = originalNativeClose;
            this.#handle.close = originalClose;
            this.#handle.removeAllListeners("error");
          }
        }
        if (this.#handle)
          this.#handle.on("error", (er) => this.#onError(new ZlibError(er, this.write)));
        let writeReturn;
        if (result2) {
          if (Array.isArray(result2) && result2.length > 0) {
            const r = result2[0];
            writeReturn = this[_superWrite](buffer_1.Buffer.from(r));
            for (let i2 = 1; i2 < result2.length; i2++) {
              writeReturn = this[_superWrite](result2[i2]);
            }
          } else {
            writeReturn = this[_superWrite](buffer_1.Buffer.from(result2));
          }
        }
        if (cb)
          cb();
        return writeReturn;
      }
    };
    var Zlib = class extends ZlibBase {
      #level;
      #strategy;
      constructor(opts2, mode) {
        opts2 = opts2 || {};
        opts2.flush = opts2.flush || constants_js_1.constants.Z_NO_FLUSH;
        opts2.finishFlush = opts2.finishFlush || constants_js_1.constants.Z_FINISH;
        opts2.fullFlushFlag = constants_js_1.constants.Z_FULL_FLUSH;
        super(opts2, mode);
        this.#level = opts2.level;
        this.#strategy = opts2.strategy;
      }
      params(level, strategy) {
        if (this.sawError)
          return;
        if (!this.handle)
          throw new Error("cannot switch params when binding is closed");
        if (!this.handle.params)
          throw new Error("not supported in this implementation");
        if (this.#level !== level || this.#strategy !== strategy) {
          this.flush(constants_js_1.constants.Z_SYNC_FLUSH);
          (0, assert_1.default)(this.handle, "zlib binding closed");
          const origFlush = this.handle.flush;
          this.handle.flush = (flushFlag, cb) => {
            if (typeof flushFlag === "function") {
              cb = flushFlag;
              flushFlag = this.flushFlag;
            }
            this.flush(flushFlag);
            cb?.();
          };
          try {
            ;
            this.handle.params(level, strategy);
          } finally {
            this.handle.flush = origFlush;
          }
          if (this.handle) {
            this.#level = level;
            this.#strategy = strategy;
          }
        }
      }
    };
    exports2.Zlib = Zlib;
    var Deflate = class extends Zlib {
      constructor(opts2) {
        super(opts2, "Deflate");
      }
    };
    exports2.Deflate = Deflate;
    var Inflate = class extends Zlib {
      constructor(opts2) {
        super(opts2, "Inflate");
      }
    };
    exports2.Inflate = Inflate;
    var Gzip = class extends Zlib {
      #portable;
      constructor(opts2) {
        super(opts2, "Gzip");
        this.#portable = opts2 && !!opts2.portable;
      }
      [_superWrite](data) {
        if (!this.#portable)
          return super[_superWrite](data);
        this.#portable = false;
        data[9] = 255;
        return super[_superWrite](data);
      }
    };
    exports2.Gzip = Gzip;
    var Gunzip = class extends Zlib {
      constructor(opts2) {
        super(opts2, "Gunzip");
      }
    };
    exports2.Gunzip = Gunzip;
    var DeflateRaw = class extends Zlib {
      constructor(opts2) {
        super(opts2, "DeflateRaw");
      }
    };
    exports2.DeflateRaw = DeflateRaw;
    var InflateRaw = class extends Zlib {
      constructor(opts2) {
        super(opts2, "InflateRaw");
      }
    };
    exports2.InflateRaw = InflateRaw;
    var Unzip = class extends Zlib {
      constructor(opts2) {
        super(opts2, "Unzip");
      }
    };
    exports2.Unzip = Unzip;
    var Brotli = class extends ZlibBase {
      constructor(opts2, mode) {
        opts2 = opts2 || {};
        opts2.flush = opts2.flush || constants_js_1.constants.BROTLI_OPERATION_PROCESS;
        opts2.finishFlush = opts2.finishFlush || constants_js_1.constants.BROTLI_OPERATION_FINISH;
        opts2.fullFlushFlag = constants_js_1.constants.BROTLI_OPERATION_FLUSH;
        super(opts2, mode);
      }
    };
    var BrotliCompress = class extends Brotli {
      constructor(opts2) {
        super(opts2, "BrotliCompress");
      }
    };
    exports2.BrotliCompress = BrotliCompress;
    var BrotliDecompress = class extends Brotli {
      constructor(opts2) {
        super(opts2, "BrotliDecompress");
      }
    };
    exports2.BrotliDecompress = BrotliDecompress;
    var Zstd = class extends ZlibBase {
      constructor(opts2, mode) {
        opts2 = opts2 || {};
        opts2.flush = opts2.flush || constants_js_1.constants.ZSTD_e_continue;
        opts2.finishFlush = opts2.finishFlush || constants_js_1.constants.ZSTD_e_end;
        opts2.fullFlushFlag = constants_js_1.constants.ZSTD_e_flush;
        super(opts2, mode);
      }
    };
    var ZstdCompress = class extends Zstd {
      constructor(opts2) {
        super(opts2, "ZstdCompress");
      }
    };
    exports2.ZstdCompress = ZstdCompress;
    var ZstdDecompress = class extends Zstd {
      constructor(opts2) {
        super(opts2, "ZstdDecompress");
      }
    };
    exports2.ZstdDecompress = ZstdDecompress;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/minipass-sized/2.0.0/1173ef7f10a8f86e8b2a40679a0e7b68099fa8e042f0b188a8a0652a0673df74/node_modules/minipass-sized/dist/commonjs/index.js
var require_commonjs6 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/minipass-sized/2.0.0/1173ef7f10a8f86e8b2a40679a0e7b68099fa8e042f0b188a8a0652a0673df74/node_modules/minipass-sized/dist/commonjs/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.MinipassSized = exports2.SizeError = void 0;
    var minipass_1 = require_commonjs();
    var isBufferEncoding = (enc) => typeof enc === "string";
    var SizeError = class extends Error {
      expect;
      found;
      code = "EBADSIZE";
      constructor(found, expect, from5) {
        super(`Bad data size: expected ${expect} bytes, but got ${found}`);
        this.expect = expect;
        this.found = found;
        Error.captureStackTrace(this, from5 ?? this.constructor);
      }
      get name() {
        return "SizeError";
      }
    };
    exports2.SizeError = SizeError;
    var MinipassSized = class extends minipass_1.Minipass {
      found = 0;
      expect;
      constructor(options) {
        const size = options?.size;
        if (typeof size !== "number" || size > Number.MAX_SAFE_INTEGER || isNaN(size) || size < 0 || !isFinite(size) || size !== Math.floor(size)) {
          throw new Error("invalid expected size: " + size);
        }
        super(options);
        if (options.objectMode) {
          throw new TypeError(`${this.constructor.name} streams only work with string and buffer data`);
        }
        this.expect = size;
      }
      write(chunk, encoding, cb) {
        const buffer3 = Buffer.isBuffer(chunk) ? chunk : typeof chunk === "string" ? Buffer.from(chunk, isBufferEncoding(encoding) ? encoding : "utf8") : chunk;
        if (typeof encoding === "function") {
          cb = encoding;
          encoding = null;
        }
        if (!Buffer.isBuffer(buffer3)) {
          this.emit("error", new TypeError(`${this.constructor.name} streams only work with string and buffer data`));
          return false;
        }
        this.found += buffer3.length;
        if (this.found > this.expect)
          this.emit("error", new SizeError(this.found, this.expect));
        return super.write(chunk, encoding, cb);
      }
      emit(ev, ...args) {
        if (ev === "end") {
          if (this.found !== this.expect) {
            this.emit("error", new SizeError(this.found, this.expect, this.emit));
          }
        }
        return super.emit(ev, ...args);
      }
    };
    exports2.MinipassSized = MinipassSized;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/minipass-fetch/5.0.2/978147c7548903dce150bb2aa306f85d2be434f08575794e83259f0028783374/node_modules/minipass-fetch/lib/blob.js
var require_blob = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/minipass-fetch/5.0.2/978147c7548903dce150bb2aa306f85d2be434f08575794e83259f0028783374/node_modules/minipass-fetch/lib/blob.js"(exports2, module2) {
    "use strict";
    var { Minipass } = require_commonjs();
    var TYPE = /* @__PURE__ */ Symbol("type");
    var BUFFER = /* @__PURE__ */ Symbol("buffer");
    var Blob2 = class _Blob {
      constructor(blobParts, options) {
        this[TYPE] = "";
        const buffers = [];
        let size = 0;
        if (blobParts) {
          const a2 = blobParts;
          const length = Number(a2.length);
          for (let i2 = 0; i2 < length; i2++) {
            const element = a2[i2];
            const buffer3 = element instanceof Buffer ? element : ArrayBuffer.isView(element) ? Buffer.from(element.buffer, element.byteOffset, element.byteLength) : element instanceof ArrayBuffer ? Buffer.from(element) : element instanceof _Blob ? element[BUFFER] : typeof element === "string" ? Buffer.from(element) : Buffer.from(String(element));
            size += buffer3.length;
            buffers.push(buffer3);
          }
        }
        this[BUFFER] = Buffer.concat(buffers, size);
        const type4 = options && options.type !== void 0 && String(options.type).toLowerCase();
        if (type4 && !/[^\u0020-\u007E]/.test(type4)) {
          this[TYPE] = type4;
        }
      }
      get size() {
        return this[BUFFER].length;
      }
      get type() {
        return this[TYPE];
      }
      text() {
        return Promise.resolve(this[BUFFER].toString());
      }
      arrayBuffer() {
        const buf = this[BUFFER];
        const off = buf.byteOffset;
        const len = buf.byteLength;
        const ab = buf.buffer.slice(off, off + len);
        return Promise.resolve(ab);
      }
      stream() {
        return new Minipass().end(this[BUFFER]);
      }
      slice(start, end, type4) {
        const size = this.size;
        const relativeStart = start === void 0 ? 0 : start < 0 ? Math.max(size + start, 0) : Math.min(start, size);
        const relativeEnd = end === void 0 ? size : end < 0 ? Math.max(size + end, 0) : Math.min(end, size);
        const span = Math.max(relativeEnd - relativeStart, 0);
        const buffer3 = this[BUFFER];
        const slicedBuffer = buffer3.slice(
          relativeStart,
          relativeStart + span
        );
        const blob = new _Blob([], { type: type4 });
        blob[BUFFER] = slicedBuffer;
        return blob;
      }
      get [Symbol.toStringTag]() {
        return "Blob";
      }
      static get BUFFER() {
        return BUFFER;
      }
    };
    Object.defineProperties(Blob2.prototype, {
      size: { enumerable: true },
      type: { enumerable: true }
    });
    module2.exports = Blob2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/minipass-fetch/5.0.2/978147c7548903dce150bb2aa306f85d2be434f08575794e83259f0028783374/node_modules/minipass-fetch/lib/fetch-error.js
var require_fetch_error = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/minipass-fetch/5.0.2/978147c7548903dce150bb2aa306f85d2be434f08575794e83259f0028783374/node_modules/minipass-fetch/lib/fetch-error.js"(exports2, module2) {
    "use strict";
    var FetchError2 = class extends Error {
      constructor(message, type4, systemError) {
        super(message);
        this.code = "FETCH_ERROR";
        if (systemError) {
          Object.assign(this, systemError);
        }
        this.errno = this.code;
        this.type = this.code === "EBADSIZE" && this.found > this.expect ? "max-size" : type4;
        this.message = message;
        Error.captureStackTrace(this, this.constructor);
      }
      get name() {
        return "FetchError";
      }
      // don't allow name to be overwritten
      set name(n2) {
      }
      get [Symbol.toStringTag]() {
        return "FetchError";
      }
    };
    module2.exports = FetchError2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/safer-buffer/2.1.2/7aea9b095994aca14d0c650f31af95178b10047e65f9fd03884a27cdb72c2c20/node_modules/safer-buffer/safer.js
var require_safer = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/safer-buffer/2.1.2/7aea9b095994aca14d0c650f31af95178b10047e65f9fd03884a27cdb72c2c20/node_modules/safer-buffer/safer.js"(exports2, module2) {
    "use strict";
    var buffer3 = __require("buffer");
    var Buffer5 = buffer3.Buffer;
    var safer = {};
    var key;
    for (key in buffer3) {
      if (!buffer3.hasOwnProperty(key)) continue;
      if (key === "SlowBuffer" || key === "Buffer") continue;
      safer[key] = buffer3[key];
    }
    var Safer = safer.Buffer = {};
    for (key in Buffer5) {
      if (!Buffer5.hasOwnProperty(key)) continue;
      if (key === "allocUnsafe" || key === "allocUnsafeSlow") continue;
      Safer[key] = Buffer5[key];
    }
    safer.Buffer.prototype = Buffer5.prototype;
    if (!Safer.from || Safer.from === Uint8Array.from) {
      Safer.from = function(value, encodingOrOffset, length) {
        if (typeof value === "number") {
          throw new TypeError('The "value" argument must not be of type number. Received type ' + typeof value);
        }
        if (value && typeof value.length === "undefined") {
          throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof value);
        }
        return Buffer5(value, encodingOrOffset, length);
      };
    }
    if (!Safer.alloc) {
      Safer.alloc = function(size, fill, encoding) {
        if (typeof size !== "number") {
          throw new TypeError('The "size" argument must be of type number. Received type ' + typeof size);
        }
        if (size < 0 || size >= 2 * (1 << 30)) {
          throw new RangeError('The value "' + size + '" is invalid for option "size"');
        }
        var buf = Buffer5(size);
        if (!fill || fill.length === 0) {
          buf.fill(0);
        } else if (typeof encoding === "string") {
          buf.fill(fill, encoding);
        } else {
          buf.fill(fill);
        }
        return buf;
      };
    }
    if (!safer.kStringMaxLength) {
      try {
        safer.kStringMaxLength = process.binding("buffer").kStringMaxLength;
      } catch (e) {
      }
    }
    if (!safer.constants) {
      safer.constants = {
        MAX_LENGTH: safer.kMaxLength
      };
      if (safer.kStringMaxLength) {
        safer.constants.MAX_STRING_LENGTH = safer.kStringMaxLength;
      }
    }
    module2.exports = safer;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/lib/bom-handling.js
var require_bom_handling = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/lib/bom-handling.js"(exports2) {
    "use strict";
    var BOMChar = "\uFEFF";
    exports2.PrependBOM = PrependBOMWrapper;
    function PrependBOMWrapper(encoder, options) {
      this.encoder = encoder;
      this.addBOM = true;
    }
    PrependBOMWrapper.prototype.write = function(str2) {
      if (this.addBOM) {
        str2 = BOMChar + str2;
        this.addBOM = false;
      }
      return this.encoder.write(str2);
    };
    PrependBOMWrapper.prototype.end = function() {
      return this.encoder.end();
    };
    exports2.StripBOM = StripBOMWrapper;
    function StripBOMWrapper(decoder2, options) {
      this.decoder = decoder2;
      this.pass = false;
      this.options = options || {};
    }
    StripBOMWrapper.prototype.write = function(buf) {
      var res = this.decoder.write(buf);
      if (this.pass || !res) {
        return res;
      }
      if (res[0] === BOMChar) {
        res = res.slice(1);
        if (typeof this.options.stripBOM === "function") {
          this.options.stripBOM();
        }
      }
      this.pass = true;
      return res;
    };
    StripBOMWrapper.prototype.end = function() {
      return this.decoder.end();
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/lib/helpers/merge-exports.js
var require_merge_exports = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/lib/helpers/merge-exports.js"(exports2, module2) {
    "use strict";
    var hasOwn = typeof Object.hasOwn === "undefined" ? Function.call.bind(Object.prototype.hasOwnProperty) : Object.hasOwn;
    function mergeModules(target2, module3) {
      for (var key in module3) {
        if (hasOwn(module3, key)) {
          target2[key] = module3[key];
        }
      }
    }
    module2.exports = mergeModules;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/internal.js
var require_internal = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/internal.js"(exports2, module2) {
    "use strict";
    var Buffer5 = require_safer().Buffer;
    module2.exports = {
      // Encodings
      utf8: { type: "_internal", bomAware: true },
      cesu8: { type: "_internal", bomAware: true },
      unicode11utf8: "utf8",
      ucs2: { type: "_internal", bomAware: true },
      utf16le: "ucs2",
      binary: { type: "_internal" },
      base64: { type: "_internal" },
      hex: { type: "_internal" },
      // Codec.
      _internal: InternalCodec
    };
    function InternalCodec(codecOptions, iconv) {
      this.enc = codecOptions.encodingName;
      this.bomAware = codecOptions.bomAware;
      if (this.enc === "base64") {
        this.encoder = InternalEncoderBase64;
      } else if (this.enc === "utf8") {
        this.encoder = InternalEncoderUtf8;
      } else if (this.enc === "cesu8") {
        this.enc = "utf8";
        this.encoder = InternalEncoderCesu8;
        if (Buffer5.from("eda0bdedb2a9", "hex").toString() !== "\u{1F4A9}") {
          this.decoder = InternalDecoderCesu8;
          this.defaultCharUnicode = iconv.defaultCharUnicode;
        }
      }
    }
    InternalCodec.prototype.encoder = InternalEncoder;
    InternalCodec.prototype.decoder = InternalDecoder;
    var StringDecoder3 = __require("string_decoder").StringDecoder;
    function InternalDecoder(options, codec) {
      this.decoder = new StringDecoder3(codec.enc);
    }
    InternalDecoder.prototype.write = function(buf) {
      if (!Buffer5.isBuffer(buf)) {
        buf = Buffer5.from(buf);
      }
      return this.decoder.write(buf);
    };
    InternalDecoder.prototype.end = function() {
      return this.decoder.end();
    };
    function InternalEncoder(options, codec) {
      this.enc = codec.enc;
    }
    InternalEncoder.prototype.write = function(str2) {
      return Buffer5.from(str2, this.enc);
    };
    InternalEncoder.prototype.end = function() {
    };
    function InternalEncoderBase64(options, codec) {
      this.prevStr = "";
    }
    InternalEncoderBase64.prototype.write = function(str2) {
      str2 = this.prevStr + str2;
      var completeQuads = str2.length - str2.length % 4;
      this.prevStr = str2.slice(completeQuads);
      str2 = str2.slice(0, completeQuads);
      return Buffer5.from(str2, "base64");
    };
    InternalEncoderBase64.prototype.end = function() {
      return Buffer5.from(this.prevStr, "base64");
    };
    function InternalEncoderCesu8(options, codec) {
    }
    InternalEncoderCesu8.prototype.write = function(str2) {
      var buf = Buffer5.alloc(str2.length * 3);
      var bufIdx = 0;
      for (var i2 = 0; i2 < str2.length; i2++) {
        var charCode = str2.charCodeAt(i2);
        if (charCode < 128) {
          buf[bufIdx++] = charCode;
        } else if (charCode < 2048) {
          buf[bufIdx++] = 192 + (charCode >>> 6);
          buf[bufIdx++] = 128 + (charCode & 63);
        } else {
          buf[bufIdx++] = 224 + (charCode >>> 12);
          buf[bufIdx++] = 128 + (charCode >>> 6 & 63);
          buf[bufIdx++] = 128 + (charCode & 63);
        }
      }
      return buf.slice(0, bufIdx);
    };
    InternalEncoderCesu8.prototype.end = function() {
    };
    function InternalDecoderCesu8(options, codec) {
      this.acc = 0;
      this.contBytes = 0;
      this.accBytes = 0;
      this.defaultCharUnicode = codec.defaultCharUnicode;
    }
    InternalDecoderCesu8.prototype.write = function(buf) {
      var acc = this.acc;
      var contBytes = this.contBytes;
      var accBytes = this.accBytes;
      var res = "";
      for (var i2 = 0; i2 < buf.length; i2++) {
        var curByte = buf[i2];
        if ((curByte & 192) !== 128) {
          if (contBytes > 0) {
            res += this.defaultCharUnicode;
            contBytes = 0;
          }
          if (curByte < 128) {
            res += String.fromCharCode(curByte);
          } else if (curByte < 224) {
            acc = curByte & 31;
            contBytes = 1;
            accBytes = 1;
          } else if (curByte < 240) {
            acc = curByte & 15;
            contBytes = 2;
            accBytes = 1;
          } else {
            res += this.defaultCharUnicode;
          }
        } else {
          if (contBytes > 0) {
            acc = acc << 6 | curByte & 63;
            contBytes--;
            accBytes++;
            if (contBytes === 0) {
              if (accBytes === 2 && acc < 128 && acc > 0) {
                res += this.defaultCharUnicode;
              } else if (accBytes === 3 && acc < 2048) {
                res += this.defaultCharUnicode;
              } else {
                res += String.fromCharCode(acc);
              }
            }
          } else {
            res += this.defaultCharUnicode;
          }
        }
      }
      this.acc = acc;
      this.contBytes = contBytes;
      this.accBytes = accBytes;
      return res;
    };
    InternalDecoderCesu8.prototype.end = function() {
      var res = 0;
      if (this.contBytes > 0) {
        res += this.defaultCharUnicode;
      }
      return res;
    };
    function InternalEncoderUtf8(options, codec) {
      this.highSurrogate = "";
    }
    InternalEncoderUtf8.prototype.write = function(str2) {
      if (this.highSurrogate) {
        str2 = this.highSurrogate + str2;
        this.highSurrogate = "";
      }
      if (str2.length > 0) {
        var charCode = str2.charCodeAt(str2.length - 1);
        if (charCode >= 55296 && charCode < 56320) {
          this.highSurrogate = str2[str2.length - 1];
          str2 = str2.slice(0, str2.length - 1);
        }
      }
      return Buffer5.from(str2, this.enc);
    };
    InternalEncoderUtf8.prototype.end = function() {
      if (this.highSurrogate) {
        var str2 = this.highSurrogate;
        this.highSurrogate = "";
        return Buffer5.from(str2, this.enc);
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/utf32.js
var require_utf32 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/utf32.js"(exports2) {
    "use strict";
    var Buffer5 = require_safer().Buffer;
    exports2._utf32 = Utf32Codec;
    function Utf32Codec(codecOptions, iconv) {
      this.iconv = iconv;
      this.bomAware = true;
      this.isLE = codecOptions.isLE;
    }
    exports2.utf32le = { type: "_utf32", isLE: true };
    exports2.utf32be = { type: "_utf32", isLE: false };
    exports2.ucs4le = "utf32le";
    exports2.ucs4be = "utf32be";
    Utf32Codec.prototype.encoder = Utf32Encoder;
    Utf32Codec.prototype.decoder = Utf32Decoder;
    function Utf32Encoder(options, codec) {
      this.isLE = codec.isLE;
      this.highSurrogate = 0;
    }
    Utf32Encoder.prototype.write = function(str2) {
      var src2 = Buffer5.from(str2, "ucs2");
      var dst = Buffer5.alloc(src2.length * 2);
      var write32 = this.isLE ? dst.writeUInt32LE : dst.writeUInt32BE;
      var offset = 0;
      for (var i2 = 0; i2 < src2.length; i2 += 2) {
        var code = src2.readUInt16LE(i2);
        var isHighSurrogate = code >= 55296 && code < 56320;
        var isLowSurrogate = code >= 56320 && code < 57344;
        if (this.highSurrogate) {
          if (isHighSurrogate || !isLowSurrogate) {
            write32.call(dst, this.highSurrogate, offset);
            offset += 4;
          } else {
            var codepoint = (this.highSurrogate - 55296 << 10 | code - 56320) + 65536;
            write32.call(dst, codepoint, offset);
            offset += 4;
            this.highSurrogate = 0;
            continue;
          }
        }
        if (isHighSurrogate) {
          this.highSurrogate = code;
        } else {
          write32.call(dst, code, offset);
          offset += 4;
          this.highSurrogate = 0;
        }
      }
      if (offset < dst.length) {
        dst = dst.slice(0, offset);
      }
      return dst;
    };
    Utf32Encoder.prototype.end = function() {
      if (!this.highSurrogate) {
        return;
      }
      var buf = Buffer5.alloc(4);
      if (this.isLE) {
        buf.writeUInt32LE(this.highSurrogate, 0);
      } else {
        buf.writeUInt32BE(this.highSurrogate, 0);
      }
      this.highSurrogate = 0;
      return buf;
    };
    function Utf32Decoder(options, codec) {
      this.isLE = codec.isLE;
      this.badChar = codec.iconv.defaultCharUnicode.charCodeAt(0);
      this.overflow = [];
    }
    Utf32Decoder.prototype.write = function(src2) {
      if (src2.length === 0) {
        return "";
      }
      var i2 = 0;
      var codepoint = 0;
      var dst = Buffer5.alloc(src2.length + 4);
      var offset = 0;
      var isLE = this.isLE;
      var overflow = this.overflow;
      var badChar = this.badChar;
      if (overflow.length > 0) {
        for (; i2 < src2.length && overflow.length < 4; i2++) {
          overflow.push(src2[i2]);
        }
        if (overflow.length === 4) {
          if (isLE) {
            codepoint = overflow[i2] | overflow[i2 + 1] << 8 | overflow[i2 + 2] << 16 | overflow[i2 + 3] << 24;
          } else {
            codepoint = overflow[i2 + 3] | overflow[i2 + 2] << 8 | overflow[i2 + 1] << 16 | overflow[i2] << 24;
          }
          overflow.length = 0;
          offset = _writeCodepoint(dst, offset, codepoint, badChar);
        }
      }
      for (; i2 < src2.length - 3; i2 += 4) {
        if (isLE) {
          codepoint = src2[i2] | src2[i2 + 1] << 8 | src2[i2 + 2] << 16 | src2[i2 + 3] << 24;
        } else {
          codepoint = src2[i2 + 3] | src2[i2 + 2] << 8 | src2[i2 + 1] << 16 | src2[i2] << 24;
        }
        offset = _writeCodepoint(dst, offset, codepoint, badChar);
      }
      for (; i2 < src2.length; i2++) {
        overflow.push(src2[i2]);
      }
      return dst.slice(0, offset).toString("ucs2");
    };
    function _writeCodepoint(dst, offset, codepoint, badChar) {
      if (codepoint < 0 || codepoint > 1114111) {
        codepoint = badChar;
      }
      if (codepoint >= 65536) {
        codepoint -= 65536;
        var high = 55296 | codepoint >> 10;
        dst[offset++] = high & 255;
        dst[offset++] = high >> 8;
        var codepoint = 56320 | codepoint & 1023;
      }
      dst[offset++] = codepoint & 255;
      dst[offset++] = codepoint >> 8;
      return offset;
    }
    Utf32Decoder.prototype.end = function() {
      this.overflow.length = 0;
    };
    exports2.utf32 = Utf32AutoCodec;
    exports2.ucs4 = "utf32";
    function Utf32AutoCodec(options, iconv) {
      this.iconv = iconv;
    }
    Utf32AutoCodec.prototype.encoder = Utf32AutoEncoder;
    Utf32AutoCodec.prototype.decoder = Utf32AutoDecoder;
    function Utf32AutoEncoder(options, codec) {
      options = options || {};
      if (options.addBOM === void 0) {
        options.addBOM = true;
      }
      this.encoder = codec.iconv.getEncoder(options.defaultEncoding || "utf-32le", options);
    }
    Utf32AutoEncoder.prototype.write = function(str2) {
      return this.encoder.write(str2);
    };
    Utf32AutoEncoder.prototype.end = function() {
      return this.encoder.end();
    };
    function Utf32AutoDecoder(options, codec) {
      this.decoder = null;
      this.initialBufs = [];
      this.initialBufsLen = 0;
      this.options = options || {};
      this.iconv = codec.iconv;
    }
    Utf32AutoDecoder.prototype.write = function(buf) {
      if (!this.decoder) {
        this.initialBufs.push(buf);
        this.initialBufsLen += buf.length;
        if (this.initialBufsLen < 32) {
          return "";
        }
        var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding);
        this.decoder = this.iconv.getDecoder(encoding, this.options);
        var resStr = "";
        for (var i2 = 0; i2 < this.initialBufs.length; i2++) {
          resStr += this.decoder.write(this.initialBufs[i2]);
        }
        this.initialBufs.length = this.initialBufsLen = 0;
        return resStr;
      }
      return this.decoder.write(buf);
    };
    Utf32AutoDecoder.prototype.end = function() {
      if (!this.decoder) {
        var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding);
        this.decoder = this.iconv.getDecoder(encoding, this.options);
        var resStr = "";
        for (var i2 = 0; i2 < this.initialBufs.length; i2++) {
          resStr += this.decoder.write(this.initialBufs[i2]);
        }
        var trail = this.decoder.end();
        if (trail) {
          resStr += trail;
        }
        this.initialBufs.length = this.initialBufsLen = 0;
        return resStr;
      }
      return this.decoder.end();
    };
    function detectEncoding(bufs, defaultEncoding) {
      var b = [];
      var charsProcessed = 0;
      var invalidLE = 0;
      var invalidBE = 0;
      var bmpCharsLE = 0;
      var bmpCharsBE = 0;
      outerLoop:
        for (var i2 = 0; i2 < bufs.length; i2++) {
          var buf = bufs[i2];
          for (var j2 = 0; j2 < buf.length; j2++) {
            b.push(buf[j2]);
            if (b.length === 4) {
              if (charsProcessed === 0) {
                if (b[0] === 255 && b[1] === 254 && b[2] === 0 && b[3] === 0) {
                  return "utf-32le";
                }
                if (b[0] === 0 && b[1] === 0 && b[2] === 254 && b[3] === 255) {
                  return "utf-32be";
                }
              }
              if (b[0] !== 0 || b[1] > 16) invalidBE++;
              if (b[3] !== 0 || b[2] > 16) invalidLE++;
              if (b[0] === 0 && b[1] === 0 && (b[2] !== 0 || b[3] !== 0)) bmpCharsBE++;
              if ((b[0] !== 0 || b[1] !== 0) && b[2] === 0 && b[3] === 0) bmpCharsLE++;
              b.length = 0;
              charsProcessed++;
              if (charsProcessed >= 100) {
                break outerLoop;
              }
            }
          }
        }
      if (bmpCharsBE - invalidBE > bmpCharsLE - invalidLE) return "utf-32be";
      if (bmpCharsBE - invalidBE < bmpCharsLE - invalidLE) return "utf-32le";
      return defaultEncoding || "utf-32le";
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/utf16.js
var require_utf16 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/utf16.js"(exports2) {
    "use strict";
    var Buffer5 = require_safer().Buffer;
    exports2.utf16be = Utf16BECodec;
    function Utf16BECodec() {
    }
    Utf16BECodec.prototype.encoder = Utf16BEEncoder;
    Utf16BECodec.prototype.decoder = Utf16BEDecoder;
    Utf16BECodec.prototype.bomAware = true;
    function Utf16BEEncoder() {
    }
    Utf16BEEncoder.prototype.write = function(str2) {
      var buf = Buffer5.from(str2, "ucs2");
      for (var i2 = 0; i2 < buf.length; i2 += 2) {
        var tmp = buf[i2];
        buf[i2] = buf[i2 + 1];
        buf[i2 + 1] = tmp;
      }
      return buf;
    };
    Utf16BEEncoder.prototype.end = function() {
    };
    function Utf16BEDecoder() {
      this.overflowByte = -1;
    }
    Utf16BEDecoder.prototype.write = function(buf) {
      if (buf.length == 0) {
        return "";
      }
      var buf2 = Buffer5.alloc(buf.length + 1);
      var i2 = 0;
      var j2 = 0;
      if (this.overflowByte !== -1) {
        buf2[0] = buf[0];
        buf2[1] = this.overflowByte;
        i2 = 1;
        j2 = 2;
      }
      for (; i2 < buf.length - 1; i2 += 2, j2 += 2) {
        buf2[j2] = buf[i2 + 1];
        buf2[j2 + 1] = buf[i2];
      }
      this.overflowByte = i2 == buf.length - 1 ? buf[buf.length - 1] : -1;
      return buf2.slice(0, j2).toString("ucs2");
    };
    Utf16BEDecoder.prototype.end = function() {
      this.overflowByte = -1;
    };
    exports2.utf16 = Utf16Codec;
    function Utf16Codec(codecOptions, iconv) {
      this.iconv = iconv;
    }
    Utf16Codec.prototype.encoder = Utf16Encoder;
    Utf16Codec.prototype.decoder = Utf16Decoder;
    function Utf16Encoder(options, codec) {
      options = options || {};
      if (options.addBOM === void 0) {
        options.addBOM = true;
      }
      this.encoder = codec.iconv.getEncoder("utf-16le", options);
    }
    Utf16Encoder.prototype.write = function(str2) {
      return this.encoder.write(str2);
    };
    Utf16Encoder.prototype.end = function() {
      return this.encoder.end();
    };
    function Utf16Decoder(options, codec) {
      this.decoder = null;
      this.initialBufs = [];
      this.initialBufsLen = 0;
      this.options = options || {};
      this.iconv = codec.iconv;
    }
    Utf16Decoder.prototype.write = function(buf) {
      if (!this.decoder) {
        this.initialBufs.push(buf);
        this.initialBufsLen += buf.length;
        if (this.initialBufsLen < 16) {
          return "";
        }
        var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding);
        this.decoder = this.iconv.getDecoder(encoding, this.options);
        var resStr = "";
        for (var i2 = 0; i2 < this.initialBufs.length; i2++) {
          resStr += this.decoder.write(this.initialBufs[i2]);
        }
        this.initialBufs.length = this.initialBufsLen = 0;
        return resStr;
      }
      return this.decoder.write(buf);
    };
    Utf16Decoder.prototype.end = function() {
      if (!this.decoder) {
        var encoding = detectEncoding(this.initialBufs, this.options.defaultEncoding);
        this.decoder = this.iconv.getDecoder(encoding, this.options);
        var resStr = "";
        for (var i2 = 0; i2 < this.initialBufs.length; i2++) {
          resStr += this.decoder.write(this.initialBufs[i2]);
        }
        var trail = this.decoder.end();
        if (trail) {
          resStr += trail;
        }
        this.initialBufs.length = this.initialBufsLen = 0;
        return resStr;
      }
      return this.decoder.end();
    };
    function detectEncoding(bufs, defaultEncoding) {
      var b = [];
      var charsProcessed = 0;
      var asciiCharsLE = 0;
      var asciiCharsBE = 0;
      outerLoop:
        for (var i2 = 0; i2 < bufs.length; i2++) {
          var buf = bufs[i2];
          for (var j2 = 0; j2 < buf.length; j2++) {
            b.push(buf[j2]);
            if (b.length === 2) {
              if (charsProcessed === 0) {
                if (b[0] === 255 && b[1] === 254) return "utf-16le";
                if (b[0] === 254 && b[1] === 255) return "utf-16be";
              }
              if (b[0] === 0 && b[1] !== 0) asciiCharsBE++;
              if (b[0] !== 0 && b[1] === 0) asciiCharsLE++;
              b.length = 0;
              charsProcessed++;
              if (charsProcessed >= 100) {
                break outerLoop;
              }
            }
          }
        }
      if (asciiCharsBE > asciiCharsLE) return "utf-16be";
      if (asciiCharsBE < asciiCharsLE) return "utf-16le";
      return defaultEncoding || "utf-16le";
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/utf7.js
var require_utf7 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/utf7.js"(exports2) {
    "use strict";
    var Buffer5 = require_safer().Buffer;
    exports2.utf7 = Utf7Codec;
    exports2.unicode11utf7 = "utf7";
    function Utf7Codec(codecOptions, iconv) {
      this.iconv = iconv;
    }
    Utf7Codec.prototype.encoder = Utf7Encoder;
    Utf7Codec.prototype.decoder = Utf7Decoder;
    Utf7Codec.prototype.bomAware = true;
    var nonDirectChars = /[^A-Za-z0-9'\(\),-\.\/:\? \n\r\t]+/g;
    function Utf7Encoder(options, codec) {
      this.iconv = codec.iconv;
    }
    Utf7Encoder.prototype.write = function(str2) {
      return Buffer5.from(str2.replace(nonDirectChars, function(chunk) {
        return "+" + (chunk === "+" ? "" : this.iconv.encode(chunk, "utf16-be").toString("base64").replace(/=+$/, "")) + "-";
      }.bind(this)));
    };
    Utf7Encoder.prototype.end = function() {
    };
    function Utf7Decoder(options, codec) {
      this.iconv = codec.iconv;
      this.inBase64 = false;
      this.base64Accum = "";
    }
    var base64Regex = /[A-Za-z0-9\/+]/;
    var base64Chars = [];
    for (i2 = 0; i2 < 256; i2++) {
      base64Chars[i2] = base64Regex.test(String.fromCharCode(i2));
    }
    var i2;
    var plusChar = "+".charCodeAt(0);
    var minusChar = "-".charCodeAt(0);
    var andChar = "&".charCodeAt(0);
    Utf7Decoder.prototype.write = function(buf) {
      var res = "";
      var lastI = 0;
      var inBase64 = this.inBase64;
      var base64Accum = this.base64Accum;
      for (var i3 = 0; i3 < buf.length; i3++) {
        if (!inBase64) {
          if (buf[i3] == plusChar) {
            res += this.iconv.decode(buf.slice(lastI, i3), "ascii");
            lastI = i3 + 1;
            inBase64 = true;
          }
        } else {
          if (!base64Chars[buf[i3]]) {
            if (i3 == lastI && buf[i3] == minusChar) {
              res += "+";
            } else {
              var b64str = base64Accum + this.iconv.decode(buf.slice(lastI, i3), "ascii");
              res += this.iconv.decode(Buffer5.from(b64str, "base64"), "utf16-be");
            }
            if (buf[i3] != minusChar) {
              i3--;
            }
            lastI = i3 + 1;
            inBase64 = false;
            base64Accum = "";
          }
        }
      }
      if (!inBase64) {
        res += this.iconv.decode(buf.slice(lastI), "ascii");
      } else {
        var b64str = base64Accum + this.iconv.decode(buf.slice(lastI), "ascii");
        var canBeDecoded = b64str.length - b64str.length % 8;
        base64Accum = b64str.slice(canBeDecoded);
        b64str = b64str.slice(0, canBeDecoded);
        res += this.iconv.decode(Buffer5.from(b64str, "base64"), "utf16-be");
      }
      this.inBase64 = inBase64;
      this.base64Accum = base64Accum;
      return res;
    };
    Utf7Decoder.prototype.end = function() {
      var res = "";
      if (this.inBase64 && this.base64Accum.length > 0) {
        res = this.iconv.decode(Buffer5.from(this.base64Accum, "base64"), "utf16-be");
      }
      this.inBase64 = false;
      this.base64Accum = "";
      return res;
    };
    exports2.utf7imap = Utf7IMAPCodec;
    function Utf7IMAPCodec(codecOptions, iconv) {
      this.iconv = iconv;
    }
    Utf7IMAPCodec.prototype.encoder = Utf7IMAPEncoder;
    Utf7IMAPCodec.prototype.decoder = Utf7IMAPDecoder;
    Utf7IMAPCodec.prototype.bomAware = true;
    function Utf7IMAPEncoder(options, codec) {
      this.iconv = codec.iconv;
      this.inBase64 = false;
      this.base64Accum = Buffer5.alloc(6);
      this.base64AccumIdx = 0;
    }
    Utf7IMAPEncoder.prototype.write = function(str2) {
      var inBase64 = this.inBase64;
      var base64Accum = this.base64Accum;
      var base64AccumIdx = this.base64AccumIdx;
      var buf = Buffer5.alloc(str2.length * 5 + 10);
      var bufIdx = 0;
      for (var i3 = 0; i3 < str2.length; i3++) {
        var uChar = str2.charCodeAt(i3);
        if (uChar >= 32 && uChar <= 126) {
          if (inBase64) {
            if (base64AccumIdx > 0) {
              bufIdx += buf.write(base64Accum.slice(0, base64AccumIdx).toString("base64").replace(/\//g, ",").replace(/=+$/, ""), bufIdx);
              base64AccumIdx = 0;
            }
            buf[bufIdx++] = minusChar;
            inBase64 = false;
          }
          if (!inBase64) {
            buf[bufIdx++] = uChar;
            if (uChar === andChar) {
              buf[bufIdx++] = minusChar;
            }
          }
        } else {
          if (!inBase64) {
            buf[bufIdx++] = andChar;
            inBase64 = true;
          }
          if (inBase64) {
            base64Accum[base64AccumIdx++] = uChar >> 8;
            base64Accum[base64AccumIdx++] = uChar & 255;
            if (base64AccumIdx == base64Accum.length) {
              bufIdx += buf.write(base64Accum.toString("base64").replace(/\//g, ","), bufIdx);
              base64AccumIdx = 0;
            }
          }
        }
      }
      this.inBase64 = inBase64;
      this.base64AccumIdx = base64AccumIdx;
      return buf.slice(0, bufIdx);
    };
    Utf7IMAPEncoder.prototype.end = function() {
      var buf = Buffer5.alloc(10);
      var bufIdx = 0;
      if (this.inBase64) {
        if (this.base64AccumIdx > 0) {
          bufIdx += buf.write(this.base64Accum.slice(0, this.base64AccumIdx).toString("base64").replace(/\//g, ",").replace(/=+$/, ""), bufIdx);
          this.base64AccumIdx = 0;
        }
        buf[bufIdx++] = minusChar;
        this.inBase64 = false;
      }
      return buf.slice(0, bufIdx);
    };
    function Utf7IMAPDecoder(options, codec) {
      this.iconv = codec.iconv;
      this.inBase64 = false;
      this.base64Accum = "";
    }
    var base64IMAPChars = base64Chars.slice();
    base64IMAPChars[",".charCodeAt(0)] = true;
    Utf7IMAPDecoder.prototype.write = function(buf) {
      var res = "";
      var lastI = 0;
      var inBase64 = this.inBase64;
      var base64Accum = this.base64Accum;
      for (var i3 = 0; i3 < buf.length; i3++) {
        if (!inBase64) {
          if (buf[i3] == andChar) {
            res += this.iconv.decode(buf.slice(lastI, i3), "ascii");
            lastI = i3 + 1;
            inBase64 = true;
          }
        } else {
          if (!base64IMAPChars[buf[i3]]) {
            if (i3 == lastI && buf[i3] == minusChar) {
              res += "&";
            } else {
              var b64str = base64Accum + this.iconv.decode(buf.slice(lastI, i3), "ascii").replace(/,/g, "/");
              res += this.iconv.decode(Buffer5.from(b64str, "base64"), "utf16-be");
            }
            if (buf[i3] != minusChar) {
              i3--;
            }
            lastI = i3 + 1;
            inBase64 = false;
            base64Accum = "";
          }
        }
      }
      if (!inBase64) {
        res += this.iconv.decode(buf.slice(lastI), "ascii");
      } else {
        var b64str = base64Accum + this.iconv.decode(buf.slice(lastI), "ascii").replace(/,/g, "/");
        var canBeDecoded = b64str.length - b64str.length % 8;
        base64Accum = b64str.slice(canBeDecoded);
        b64str = b64str.slice(0, canBeDecoded);
        res += this.iconv.decode(Buffer5.from(b64str, "base64"), "utf16-be");
      }
      this.inBase64 = inBase64;
      this.base64Accum = base64Accum;
      return res;
    };
    Utf7IMAPDecoder.prototype.end = function() {
      var res = "";
      if (this.inBase64 && this.base64Accum.length > 0) {
        res = this.iconv.decode(Buffer5.from(this.base64Accum, "base64"), "utf16-be");
      }
      this.inBase64 = false;
      this.base64Accum = "";
      return res;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/sbcs-codec.js
var require_sbcs_codec = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/sbcs-codec.js"(exports2) {
    "use strict";
    var Buffer5 = require_safer().Buffer;
    exports2._sbcs = SBCSCodec;
    function SBCSCodec(codecOptions, iconv) {
      if (!codecOptions) {
        throw new Error("SBCS codec is called without the data.");
      }
      if (!codecOptions.chars || codecOptions.chars.length !== 128 && codecOptions.chars.length !== 256) {
        throw new Error("Encoding '" + codecOptions.type + "' has incorrect 'chars' (must be of len 128 or 256)");
      }
      if (codecOptions.chars.length === 128) {
        var asciiString = "";
        for (var i2 = 0; i2 < 128; i2++) {
          asciiString += String.fromCharCode(i2);
        }
        codecOptions.chars = asciiString + codecOptions.chars;
      }
      this.decodeBuf = Buffer5.from(codecOptions.chars, "ucs2");
      var encodeBuf = Buffer5.alloc(65536, iconv.defaultCharSingleByte.charCodeAt(0));
      for (var i2 = 0; i2 < codecOptions.chars.length; i2++) {
        encodeBuf[codecOptions.chars.charCodeAt(i2)] = i2;
      }
      this.encodeBuf = encodeBuf;
    }
    SBCSCodec.prototype.encoder = SBCSEncoder;
    SBCSCodec.prototype.decoder = SBCSDecoder;
    function SBCSEncoder(options, codec) {
      this.encodeBuf = codec.encodeBuf;
    }
    SBCSEncoder.prototype.write = function(str2) {
      var buf = Buffer5.alloc(str2.length);
      for (var i2 = 0; i2 < str2.length; i2++) {
        buf[i2] = this.encodeBuf[str2.charCodeAt(i2)];
      }
      return buf;
    };
    SBCSEncoder.prototype.end = function() {
    };
    function SBCSDecoder(options, codec) {
      this.decodeBuf = codec.decodeBuf;
    }
    SBCSDecoder.prototype.write = function(buf) {
      var decodeBuf = this.decodeBuf;
      var newBuf = Buffer5.alloc(buf.length * 2);
      var idx1 = 0;
      var idx2 = 0;
      for (var i2 = 0; i2 < buf.length; i2++) {
        idx1 = buf[i2] * 2;
        idx2 = i2 * 2;
        newBuf[idx2] = decodeBuf[idx1];
        newBuf[idx2 + 1] = decodeBuf[idx1 + 1];
      }
      return newBuf.toString("ucs2");
    };
    SBCSDecoder.prototype.end = function() {
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/sbcs-data.js
var require_sbcs_data = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/sbcs-data.js"(exports2, module2) {
    "use strict";
    module2.exports = {
      // Not supported by iconv, not sure why.
      10029: "maccenteuro",
      maccenteuro: {
        type: "_sbcs",
        chars: "\xC4\u0100\u0101\xC9\u0104\xD6\xDC\xE1\u0105\u010C\xE4\u010D\u0106\u0107\xE9\u0179\u017A\u010E\xED\u010F\u0112\u0113\u0116\xF3\u0117\xF4\xF6\xF5\xFA\u011A\u011B\xFC\u2020\xB0\u0118\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\u0119\xA8\u2260\u0123\u012E\u012F\u012A\u2264\u2265\u012B\u0136\u2202\u2211\u0142\u013B\u013C\u013D\u013E\u0139\u013A\u0145\u0146\u0143\xAC\u221A\u0144\u0147\u2206\xAB\xBB\u2026\xA0\u0148\u0150\xD5\u0151\u014C\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\u014D\u0154\u0155\u0158\u2039\u203A\u0159\u0156\u0157\u0160\u201A\u201E\u0161\u015A\u015B\xC1\u0164\u0165\xCD\u017D\u017E\u016A\xD3\xD4\u016B\u016E\xDA\u016F\u0170\u0171\u0172\u0173\xDD\xFD\u0137\u017B\u0141\u017C\u0122\u02C7"
      },
      808: "cp808",
      ibm808: "cp808",
      cp808: {
        type: "_sbcs",
        chars: "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\u20AC\u25A0\xA0"
      },
      mik: {
        type: "_sbcs",
        chars: "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2514\u2534\u252C\u251C\u2500\u253C\u2563\u2551\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2510\u2591\u2592\u2593\u2502\u2524\u2116\xA7\u2557\u255D\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
      },
      cp720: {
        type: "_sbcs",
        chars: "\x80\x81\xE9\xE2\x84\xE0\x86\xE7\xEA\xEB\xE8\xEF\xEE\x8D\x8E\x8F\x90\u0651\u0652\xF4\xA4\u0640\xFB\xF9\u0621\u0622\u0623\u0624\xA3\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0636\u0637\u0638\u0639\u063A\u0641\xB5\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u2261\u064B\u064C\u064D\u064E\u064F\u0650\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
      },
      // Aliases of generated encodings.
      ascii8bit: "ascii",
      usascii: "ascii",
      ansix34: "ascii",
      ansix341968: "ascii",
      ansix341986: "ascii",
      csascii: "ascii",
      cp367: "ascii",
      ibm367: "ascii",
      isoir6: "ascii",
      iso646us: "ascii",
      iso646irv: "ascii",
      us: "ascii",
      latin1: "iso88591",
      latin2: "iso88592",
      latin3: "iso88593",
      latin4: "iso88594",
      latin5: "iso88599",
      latin6: "iso885910",
      latin7: "iso885913",
      latin8: "iso885914",
      latin9: "iso885915",
      latin10: "iso885916",
      csisolatin1: "iso88591",
      csisolatin2: "iso88592",
      csisolatin3: "iso88593",
      csisolatin4: "iso88594",
      csisolatincyrillic: "iso88595",
      csisolatinarabic: "iso88596",
      csisolatingreek: "iso88597",
      csisolatinhebrew: "iso88598",
      csisolatin5: "iso88599",
      csisolatin6: "iso885910",
      l1: "iso88591",
      l2: "iso88592",
      l3: "iso88593",
      l4: "iso88594",
      l5: "iso88599",
      l6: "iso885910",
      l7: "iso885913",
      l8: "iso885914",
      l9: "iso885915",
      l10: "iso885916",
      isoir14: "iso646jp",
      isoir57: "iso646cn",
      isoir100: "iso88591",
      isoir101: "iso88592",
      isoir109: "iso88593",
      isoir110: "iso88594",
      isoir144: "iso88595",
      isoir127: "iso88596",
      isoir126: "iso88597",
      isoir138: "iso88598",
      isoir148: "iso88599",
      isoir157: "iso885910",
      isoir166: "tis620",
      isoir179: "iso885913",
      isoir199: "iso885914",
      isoir203: "iso885915",
      isoir226: "iso885916",
      cp819: "iso88591",
      ibm819: "iso88591",
      cyrillic: "iso88595",
      arabic: "iso88596",
      arabic8: "iso88596",
      ecma114: "iso88596",
      asmo708: "iso88596",
      greek: "iso88597",
      greek8: "iso88597",
      ecma118: "iso88597",
      elot928: "iso88597",
      hebrew: "iso88598",
      hebrew8: "iso88598",
      turkish: "iso88599",
      turkish8: "iso88599",
      thai: "iso885911",
      thai8: "iso885911",
      celtic: "iso885914",
      celtic8: "iso885914",
      isoceltic: "iso885914",
      tis6200: "tis620",
      tis62025291: "tis620",
      tis62025330: "tis620",
      1e4: "macroman",
      10006: "macgreek",
      10007: "maccyrillic",
      10079: "maciceland",
      10081: "macturkish",
      cspc8codepage437: "cp437",
      cspc775baltic: "cp775",
      cspc850multilingual: "cp850",
      cspcp852: "cp852",
      cspc862latinhebrew: "cp862",
      cpgr: "cp869",
      msee: "cp1250",
      mscyrl: "cp1251",
      msansi: "cp1252",
      msgreek: "cp1253",
      msturk: "cp1254",
      mshebr: "cp1255",
      msarab: "cp1256",
      winbaltrim: "cp1257",
      cp20866: "koi8r",
      20866: "koi8r",
      ibm878: "koi8r",
      cskoi8r: "koi8r",
      cp21866: "koi8u",
      21866: "koi8u",
      ibm1168: "koi8u",
      strk10482002: "rk1048",
      tcvn5712: "tcvn",
      tcvn57121: "tcvn",
      gb198880: "iso646cn",
      cn: "iso646cn",
      csiso14jisc6220ro: "iso646jp",
      jisc62201969ro: "iso646jp",
      jp: "iso646jp",
      cshproman8: "hproman8",
      r8: "hproman8",
      roman8: "hproman8",
      xroman8: "hproman8",
      ibm1051: "hproman8",
      mac: "macintosh",
      csmacintosh: "macintosh"
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/sbcs-data-generated.js
var require_sbcs_data_generated = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/sbcs-data-generated.js"(exports2, module2) {
    "use strict";
    module2.exports = {
      "437": "cp437",
      "737": "cp737",
      "775": "cp775",
      "850": "cp850",
      "852": "cp852",
      "855": "cp855",
      "856": "cp856",
      "857": "cp857",
      "858": "cp858",
      "860": "cp860",
      "861": "cp861",
      "862": "cp862",
      "863": "cp863",
      "864": "cp864",
      "865": "cp865",
      "866": "cp866",
      "869": "cp869",
      "874": "windows874",
      "922": "cp922",
      "1046": "cp1046",
      "1124": "cp1124",
      "1125": "cp1125",
      "1129": "cp1129",
      "1133": "cp1133",
      "1161": "cp1161",
      "1162": "cp1162",
      "1163": "cp1163",
      "1250": "windows1250",
      "1251": "windows1251",
      "1252": "windows1252",
      "1253": "windows1253",
      "1254": "windows1254",
      "1255": "windows1255",
      "1256": "windows1256",
      "1257": "windows1257",
      "1258": "windows1258",
      "28591": "iso88591",
      "28592": "iso88592",
      "28593": "iso88593",
      "28594": "iso88594",
      "28595": "iso88595",
      "28596": "iso88596",
      "28597": "iso88597",
      "28598": "iso88598",
      "28599": "iso88599",
      "28600": "iso885910",
      "28601": "iso885911",
      "28603": "iso885913",
      "28604": "iso885914",
      "28605": "iso885915",
      "28606": "iso885916",
      "windows874": {
        "type": "_sbcs",
        "chars": "\u20AC\uFFFD\uFFFD\uFFFD\uFFFD\u2026\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"
      },
      "win874": "windows874",
      "cp874": "windows874",
      "windows1250": {
        "type": "_sbcs",
        "chars": "\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\u0160\u2039\u015A\u0164\u017D\u0179\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0161\u203A\u015B\u0165\u017E\u017A\xA0\u02C7\u02D8\u0141\xA4\u0104\xA6\xA7\xA8\xA9\u015E\xAB\xAC\xAD\xAE\u017B\xB0\xB1\u02DB\u0142\xB4\xB5\xB6\xB7\xB8\u0105\u015F\xBB\u013D\u02DD\u013E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"
      },
      "win1250": "windows1250",
      "cp1250": "windows1250",
      "windows1251": {
        "type": "_sbcs",
        "chars": "\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u040C\u040B\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u045C\u045B\u045F\xA0\u040E\u045E\u0408\xA4\u0490\xA6\xA7\u0401\xA9\u0404\xAB\xAC\xAD\xAE\u0407\xB0\xB1\u0406\u0456\u0491\xB5\xB6\xB7\u0451\u2116\u0454\xBB\u0458\u0405\u0455\u0457\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"
      },
      "win1251": "windows1251",
      "cp1251": "windows1251",
      "windows1252": {
        "type": "_sbcs",
        "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\u017D\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\u017E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"
      },
      "win1252": "windows1252",
      "cp1252": "windows1252",
      "windows1253": {
        "type": "_sbcs",
        "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\u0385\u0386\xA3\xA4\xA5\xA6\xA7\xA8\xA9\uFFFD\xAB\xAC\xAD\xAE\u2015\xB0\xB1\xB2\xB3\u0384\xB5\xB6\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"
      },
      "win1253": "windows1253",
      "cp1253": "windows1253",
      "windows1254": {
        "type": "_sbcs",
        "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"
      },
      "win1254": "windows1254",
      "cp1254": "windows1254",
      "windows1255": {
        "type": "_sbcs",
        "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\xA0\xA1\xA2\xA3\u20AA\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\xBF\u05B0\u05B1\u05B2\u05B3\u05B4\u05B5\u05B6\u05B7\u05B8\u05B9\u05BA\u05BB\u05BC\u05BD\u05BE\u05BF\u05C0\u05C1\u05C2\u05C3\u05F0\u05F1\u05F2\u05F3\u05F4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"
      },
      "win1255": "windows1255",
      "cp1255": "windows1255",
      "windows1256": {
        "type": "_sbcs",
        "chars": "\u20AC\u067E\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0679\u2039\u0152\u0686\u0698\u0688\u06AF\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u06A9\u2122\u0691\u203A\u0153\u200C\u200D\u06BA\xA0\u060C\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\u06BE\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\u061B\xBB\xBC\xBD\xBE\u061F\u06C1\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\xD7\u0637\u0638\u0639\u063A\u0640\u0641\u0642\u0643\xE0\u0644\xE2\u0645\u0646\u0647\u0648\xE7\xE8\xE9\xEA\xEB\u0649\u064A\xEE\xEF\u064B\u064C\u064D\u064E\xF4\u064F\u0650\xF7\u0651\xF9\u0652\xFB\xFC\u200E\u200F\u06D2"
      },
      "win1256": "windows1256",
      "cp1256": "windows1256",
      "windows1257": {
        "type": "_sbcs",
        "chars": "\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021\uFFFD\u2030\uFFFD\u2039\uFFFD\xA8\u02C7\xB8\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\xAF\u02DB\uFFFD\xA0\uFFFD\xA2\xA3\xA4\uFFFD\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u02D9"
      },
      "win1257": "windows1257",
      "cp1257": "windows1257",
      "windows1258": {
        "type": "_sbcs",
        "chars": "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\uFFFD\u2039\u0152\uFFFD\uFFFD\uFFFD\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\uFFFD\u203A\u0153\uFFFD\uFFFD\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"
      },
      "win1258": "windows1258",
      "cp1258": "windows1258",
      "iso88591": {
        "type": "_sbcs",
        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"
      },
      "cp28591": "iso88591",
      "iso88592": {
        "type": "_sbcs",
        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u02D8\u0141\xA4\u013D\u015A\xA7\xA8\u0160\u015E\u0164\u0179\xAD\u017D\u017B\xB0\u0105\u02DB\u0142\xB4\u013E\u015B\u02C7\xB8\u0161\u015F\u0165\u017A\u02DD\u017E\u017C\u0154\xC1\xC2\u0102\xC4\u0139\u0106\xC7\u010C\xC9\u0118\xCB\u011A\xCD\xCE\u010E\u0110\u0143\u0147\xD3\xD4\u0150\xD6\xD7\u0158\u016E\xDA\u0170\xDC\xDD\u0162\xDF\u0155\xE1\xE2\u0103\xE4\u013A\u0107\xE7\u010D\xE9\u0119\xEB\u011B\xED\xEE\u010F\u0111\u0144\u0148\xF3\xF4\u0151\xF6\xF7\u0159\u016F\xFA\u0171\xFC\xFD\u0163\u02D9"
      },
      "cp28592": "iso88592",
      "iso88593": {
        "type": "_sbcs",
        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0126\u02D8\xA3\xA4\uFFFD\u0124\xA7\xA8\u0130\u015E\u011E\u0134\xAD\uFFFD\u017B\xB0\u0127\xB2\xB3\xB4\xB5\u0125\xB7\xB8\u0131\u015F\u011F\u0135\xBD\uFFFD\u017C\xC0\xC1\xC2\uFFFD\xC4\u010A\u0108\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\uFFFD\xD1\xD2\xD3\xD4\u0120\xD6\xD7\u011C\xD9\xDA\xDB\xDC\u016C\u015C\xDF\xE0\xE1\xE2\uFFFD\xE4\u010B\u0109\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\uFFFD\xF1\xF2\xF3\xF4\u0121\xF6\xF7\u011D\xF9\xFA\xFB\xFC\u016D\u015D\u02D9"
      },
      "cp28593": "iso88593",
      "iso88594": {
        "type": "_sbcs",
        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0138\u0156\xA4\u0128\u013B\xA7\xA8\u0160\u0112\u0122\u0166\xAD\u017D\xAF\xB0\u0105\u02DB\u0157\xB4\u0129\u013C\u02C7\xB8\u0161\u0113\u0123\u0167\u014A\u017E\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\u012A\u0110\u0145\u014C\u0136\xD4\xD5\xD6\xD7\xD8\u0172\xDA\xDB\xDC\u0168\u016A\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\u012B\u0111\u0146\u014D\u0137\xF4\xF5\xF6\xF7\xF8\u0173\xFA\xFB\xFC\u0169\u016B\u02D9"
      },
      "cp28594": "iso88594",
      "iso88595": {
        "type": "_sbcs",
        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0403\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0453\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F"
      },
      "cp28595": "iso88595",
      "iso88596": {
        "type": "_sbcs",
        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\uFFFD\uFFFD\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u060C\xAD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u061B\uFFFD\uFFFD\uFFFD\u061F\uFFFD\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\u0638\u0639\u063A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"
      },
      "cp28596": "iso88596",
      "iso88597": {
        "type": "_sbcs",
        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u2018\u2019\xA3\u20AC\u20AF\xA6\xA7\xA8\xA9\u037A\xAB\xAC\xAD\uFFFD\u2015\xB0\xB1\xB2\xB3\u0384\u0385\u0386\xB7\u0388\u0389\u038A\xBB\u038C\xBD\u038E\u038F\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD"
      },
      "cp28597": "iso88597",
      "iso88598": {
        "type": "_sbcs",
        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xD7\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xF7\xBB\xBC\xBD\xBE\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2017\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD"
      },
      "cp28598": "iso88598",
      "iso88599": {
        "type": "_sbcs",
        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u011E\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u0130\u015E\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u011F\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u0131\u015F\xFF"
      },
      "cp28599": "iso88599",
      "iso885910": {
        "type": "_sbcs",
        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0112\u0122\u012A\u0128\u0136\xA7\u013B\u0110\u0160\u0166\u017D\xAD\u016A\u014A\xB0\u0105\u0113\u0123\u012B\u0129\u0137\xB7\u013C\u0111\u0161\u0167\u017E\u2015\u016B\u014B\u0100\xC1\xC2\xC3\xC4\xC5\xC6\u012E\u010C\xC9\u0118\xCB\u0116\xCD\xCE\xCF\xD0\u0145\u014C\xD3\xD4\xD5\xD6\u0168\xD8\u0172\xDA\xDB\xDC\xDD\xDE\xDF\u0101\xE1\xE2\xE3\xE4\xE5\xE6\u012F\u010D\xE9\u0119\xEB\u0117\xED\xEE\xEF\xF0\u0146\u014D\xF3\xF4\xF5\xF6\u0169\xF8\u0173\xFA\xFB\xFC\xFD\xFE\u0138"
      },
      "cp28600": "iso885910",
      "iso885911": {
        "type": "_sbcs",
        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"
      },
      "cp28601": "iso885911",
      "iso885913": {
        "type": "_sbcs",
        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u201D\xA2\xA3\xA4\u201E\xA6\xA7\xD8\xA9\u0156\xAB\xAC\xAD\xAE\xC6\xB0\xB1\xB2\xB3\u201C\xB5\xB6\xB7\xF8\xB9\u0157\xBB\xBC\xBD\xBE\xE6\u0104\u012E\u0100\u0106\xC4\xC5\u0118\u0112\u010C\xC9\u0179\u0116\u0122\u0136\u012A\u013B\u0160\u0143\u0145\xD3\u014C\xD5\xD6\xD7\u0172\u0141\u015A\u016A\xDC\u017B\u017D\xDF\u0105\u012F\u0101\u0107\xE4\xE5\u0119\u0113\u010D\xE9\u017A\u0117\u0123\u0137\u012B\u013C\u0161\u0144\u0146\xF3\u014D\xF5\xF6\xF7\u0173\u0142\u015B\u016B\xFC\u017C\u017E\u2019"
      },
      "cp28603": "iso885913",
      "iso885914": {
        "type": "_sbcs",
        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u1E02\u1E03\xA3\u010A\u010B\u1E0A\xA7\u1E80\xA9\u1E82\u1E0B\u1EF2\xAD\xAE\u0178\u1E1E\u1E1F\u0120\u0121\u1E40\u1E41\xB6\u1E56\u1E81\u1E57\u1E83\u1E60\u1EF3\u1E84\u1E85\u1E61\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0174\xD1\xD2\xD3\xD4\xD5\xD6\u1E6A\xD8\xD9\xDA\xDB\xDC\xDD\u0176\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0175\xF1\xF2\xF3\xF4\xF5\xF6\u1E6B\xF8\xF9\xFA\xFB\xFC\xFD\u0177\xFF"
      },
      "cp28604": "iso885914",
      "iso885915": {
        "type": "_sbcs",
        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\u0160\xA7\u0161\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u017D\xB5\xB6\xB7\u017E\xB9\xBA\xBB\u0152\u0153\u0178\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\xD0\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\xDE\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"
      },
      "cp28605": "iso885915",
      "iso885916": {
        "type": "_sbcs",
        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0104\u0105\u0141\u20AC\u201E\u0160\xA7\u0161\xA9\u0218\xAB\u0179\xAD\u017A\u017B\xB0\xB1\u010C\u0142\u017D\u201D\xB6\xB7\u017E\u010D\u0219\xBB\u0152\u0153\u0178\u017C\xC0\xC1\xC2\u0102\xC4\u0106\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0110\u0143\xD2\xD3\xD4\u0150\xD6\u015A\u0170\xD9\xDA\xDB\xDC\u0118\u021A\xDF\xE0\xE1\xE2\u0103\xE4\u0107\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0111\u0144\xF2\xF3\xF4\u0151\xF6\u015B\u0171\xF9\xFA\xFB\xFC\u0119\u021B\xFF"
      },
      "cp28606": "iso885916",
      "cp437": {
        "type": "_sbcs",
        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
      },
      "ibm437": "cp437",
      "csibm437": "cp437",
      "cp737": {
        "type": "_sbcs",
        "chars": "\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0\u03A1\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u03C5\u03C6\u03C7\u03C8\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03C9\u03AC\u03AD\u03AE\u03CA\u03AF\u03CC\u03CD\u03CB\u03CE\u0386\u0388\u0389\u038A\u038C\u038E\u038F\xB1\u2265\u2264\u03AA\u03AB\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
      },
      "ibm737": "cp737",
      "csibm737": "cp737",
      "cp775": {
        "type": "_sbcs",
        "chars": "\u0106\xFC\xE9\u0101\xE4\u0123\xE5\u0107\u0142\u0113\u0156\u0157\u012B\u0179\xC4\xC5\xC9\xE6\xC6\u014D\xF6\u0122\xA2\u015A\u015B\xD6\xDC\xF8\xA3\xD8\xD7\xA4\u0100\u012A\xF3\u017B\u017C\u017A\u201D\xA6\xA9\xAE\xAC\xBD\xBC\u0141\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0104\u010C\u0118\u0116\u2563\u2551\u2557\u255D\u012E\u0160\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0172\u016A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u017D\u0105\u010D\u0119\u0117\u012F\u0161\u0173\u016B\u017E\u2518\u250C\u2588\u2584\u258C\u2590\u2580\xD3\xDF\u014C\u0143\xF5\xD5\xB5\u0144\u0136\u0137\u013B\u013C\u0146\u0112\u0145\u2019\xAD\xB1\u201C\xBE\xB6\xA7\xF7\u201E\xB0\u2219\xB7\xB9\xB3\xB2\u25A0\xA0"
      },
      "ibm775": "cp775",
      "csibm775": "cp775",
      "cp850": {
        "type": "_sbcs",
        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u0131\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"
      },
      "ibm850": "cp850",
      "csibm850": "cp850",
      "cp852": {
        "type": "_sbcs",
        "chars": "\xC7\xFC\xE9\xE2\xE4\u016F\u0107\xE7\u0142\xEB\u0150\u0151\xEE\u0179\xC4\u0106\xC9\u0139\u013A\xF4\xF6\u013D\u013E\u015A\u015B\xD6\xDC\u0164\u0165\u0141\xD7\u010D\xE1\xED\xF3\xFA\u0104\u0105\u017D\u017E\u0118\u0119\xAC\u017A\u010C\u015F\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\u011A\u015E\u2563\u2551\u2557\u255D\u017B\u017C\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u0102\u0103\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u0111\u0110\u010E\xCB\u010F\u0147\xCD\xCE\u011B\u2518\u250C\u2588\u2584\u0162\u016E\u2580\xD3\xDF\xD4\u0143\u0144\u0148\u0160\u0161\u0154\xDA\u0155\u0170\xFD\xDD\u0163\xB4\xAD\u02DD\u02DB\u02C7\u02D8\xA7\xF7\xB8\xB0\xA8\u02D9\u0171\u0158\u0159\u25A0\xA0"
      },
      "ibm852": "cp852",
      "csibm852": "cp852",
      "cp855": {
        "type": "_sbcs",
        "chars": "\u0452\u0402\u0453\u0403\u0451\u0401\u0454\u0404\u0455\u0405\u0456\u0406\u0457\u0407\u0458\u0408\u0459\u0409\u045A\u040A\u045B\u040B\u045C\u040C\u045E\u040E\u045F\u040F\u044E\u042E\u044A\u042A\u0430\u0410\u0431\u0411\u0446\u0426\u0434\u0414\u0435\u0415\u0444\u0424\u0433\u0413\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u0445\u0425\u0438\u0418\u2563\u2551\u2557\u255D\u0439\u0419\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u043A\u041A\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\u043B\u041B\u043C\u041C\u043D\u041D\u043E\u041E\u043F\u2518\u250C\u2588\u2584\u041F\u044F\u2580\u042F\u0440\u0420\u0441\u0421\u0442\u0422\u0443\u0423\u0436\u0416\u0432\u0412\u044C\u042C\u2116\xAD\u044B\u042B\u0437\u0417\u0448\u0428\u044D\u042D\u0449\u0429\u0447\u0427\xA7\u25A0\xA0"
      },
      "ibm855": "cp855",
      "csibm855": "cp855",
      "cp856": {
        "type": "_sbcs",
        "chars": "\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\uFFFD\xA3\uFFFD\xD7\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAE\xAC\xBD\xBC\uFFFD\xAB\xBB\u2591\u2592\u2593\u2502\u2524\uFFFD\uFFFD\uFFFD\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\uFFFD\uFFFD\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2518\u250C\u2588\u2584\xA6\uFFFD\u2580\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xB5\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"
      },
      "ibm856": "cp856",
      "csibm856": "cp856",
      "cp857": {
        "type": "_sbcs",
        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\u0131\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\u0130\xD6\xDC\xF8\xA3\xD8\u015E\u015F\xE1\xED\xF3\xFA\xF1\xD1\u011E\u011F\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xBA\xAA\xCA\xCB\xC8\uFFFD\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\uFFFD\xD7\xDA\xDB\xD9\xEC\xFF\xAF\xB4\xAD\xB1\uFFFD\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"
      },
      "ibm857": "cp857",
      "csibm857": "cp857",
      "cp858": {
        "type": "_sbcs",
        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\xD7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xAE\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\xC1\xC2\xC0\xA9\u2563\u2551\u2557\u255D\xA2\xA5\u2510\u2514\u2534\u252C\u251C\u2500\u253C\xE3\xC3\u255A\u2554\u2569\u2566\u2560\u2550\u256C\xA4\xF0\xD0\xCA\xCB\xC8\u20AC\xCD\xCE\xCF\u2518\u250C\u2588\u2584\xA6\xCC\u2580\xD3\xDF\xD4\xD2\xF5\xD5\xB5\xFE\xDE\xDA\xDB\xD9\xFD\xDD\xAF\xB4\xAD\xB1\u2017\xBE\xB6\xA7\xF7\xB8\xB0\xA8\xB7\xB9\xB3\xB2\u25A0\xA0"
      },
      "ibm858": "cp858",
      "csibm858": "cp858",
      "cp860": {
        "type": "_sbcs",
        "chars": "\xC7\xFC\xE9\xE2\xE3\xE0\xC1\xE7\xEA\xCA\xE8\xCD\xD4\xEC\xC3\xC2\xC9\xC0\xC8\xF4\xF5\xF2\xDA\xF9\xCC\xD5\xDC\xA2\xA3\xD9\u20A7\xD3\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\xD2\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
      },
      "ibm860": "cp860",
      "csibm860": "cp860",
      "cp861": {
        "type": "_sbcs",
        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xD0\xF0\xDE\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xFE\xFB\xDD\xFD\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xC1\xCD\xD3\xDA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
      },
      "ibm861": "cp861",
      "csibm861": "cp861",
      "cp862": {
        "type": "_sbcs",
        "chars": "\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7\u05E8\u05E9\u05EA\xA2\xA3\xA5\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
      },
      "ibm862": "cp862",
      "csibm862": "cp862",
      "cp863": {
        "type": "_sbcs",
        "chars": "\xC7\xFC\xE9\xE2\xC2\xE0\xB6\xE7\xEA\xEB\xE8\xEF\xEE\u2017\xC0\xA7\xC9\xC8\xCA\xF4\xCB\xCF\xFB\xF9\xA4\xD4\xDC\xA2\xA3\xD9\xDB\u0192\xA6\xB4\xF3\xFA\xA8\xB8\xB3\xAF\xCE\u2310\xAC\xBD\xBC\xBE\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
      },
      "ibm863": "cp863",
      "csibm863": "cp863",
      "cp864": {
        "type": "_sbcs",
        "chars": "\0\x07\b	\n\v\f\r\x1B !\"#$\u066A&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xB0\xB7\u2219\u221A\u2592\u2500\u2502\u253C\u2524\u252C\u251C\u2534\u2510\u250C\u2514\u2518\u03B2\u221E\u03C6\xB1\xBD\xBC\u2248\xAB\xBB\uFEF7\uFEF8\uFFFD\uFFFD\uFEFB\uFEFC\uFFFD\xA0\xAD\uFE82\xA3\xA4\uFE84\uFFFD\uFFFD\uFE8E\uFE8F\uFE95\uFE99\u060C\uFE9D\uFEA1\uFEA5\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\uFED1\u061B\uFEB1\uFEB5\uFEB9\u061F\xA2\uFE80\uFE81\uFE83\uFE85\uFECA\uFE8B\uFE8D\uFE91\uFE93\uFE97\uFE9B\uFE9F\uFEA3\uFEA7\uFEA9\uFEAB\uFEAD\uFEAF\uFEB3\uFEB7\uFEBB\uFEBF\uFEC1\uFEC5\uFECB\uFECF\xA6\xAC\xF7\xD7\uFEC9\u0640\uFED3\uFED7\uFEDB\uFEDF\uFEE3\uFEE7\uFEEB\uFEED\uFEEF\uFEF3\uFEBD\uFECC\uFECE\uFECD\uFEE1\uFE7D\u0651\uFEE5\uFEE9\uFEEC\uFEF0\uFEF2\uFED0\uFED5\uFEF5\uFEF6\uFEDD\uFED9\uFEF1\u25A0\uFFFD"
      },
      "ibm864": "cp864",
      "csibm864": "cp864",
      "cp865": {
        "type": "_sbcs",
        "chars": "\xC7\xFC\xE9\xE2\xE4\xE0\xE5\xE7\xEA\xEB\xE8\xEF\xEE\xEC\xC4\xC5\xC9\xE6\xC6\xF4\xF6\xF2\xFB\xF9\xFF\xD6\xDC\xF8\xA3\xD8\u20A7\u0192\xE1\xED\xF3\xFA\xF1\xD1\xAA\xBA\xBF\u2310\xAC\xBD\xBC\xA1\xAB\xA4\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u03B1\xDF\u0393\u03C0\u03A3\u03C3\xB5\u03C4\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229\u2261\xB1\u2265\u2264\u2320\u2321\xF7\u2248\xB0\u2219\xB7\u221A\u207F\xB2\u25A0\xA0"
      },
      "ibm865": "cp865",
      "csibm865": "cp865",
      "cp866": {
        "type": "_sbcs",
        "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E\xB0\u2219\xB7\u221A\u2116\xA4\u25A0\xA0"
      },
      "ibm866": "cp866",
      "csibm866": "cp866",
      "cp869": {
        "type": "_sbcs",
        "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0386\uFFFD\xB7\xAC\xA6\u2018\u2019\u0388\u2015\u0389\u038A\u03AA\u038C\uFFFD\uFFFD\u038E\u03AB\xA9\u038F\xB2\xB3\u03AC\xA3\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03CD\u0391\u0392\u0393\u0394\u0395\u0396\u0397\xBD\u0398\u0399\xAB\xBB\u2591\u2592\u2593\u2502\u2524\u039A\u039B\u039C\u039D\u2563\u2551\u2557\u255D\u039E\u039F\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u03A0\u03A1\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2\u03B3\u2518\u250C\u2588\u2584\u03B4\u03B5\u2580\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u0384\xAD\xB1\u03C5\u03C6\u03C7\xA7\u03C8\u0385\xB0\xA8\u03C9\u03CB\u03B0\u03CE\u25A0\xA0"
      },
      "ibm869": "cp869",
      "csibm869": "cp869",
      "cp922": {
        "type": "_sbcs",
        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\u203E\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\xC3\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\xCC\xCD\xCE\xCF\u0160\xD1\xD2\xD3\xD4\xD5\xD6\xD7\xD8\xD9\xDA\xDB\xDC\xDD\u017D\xDF\xE0\xE1\xE2\xE3\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\u0161\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\u017E\xFF"
      },
      "ibm922": "cp922",
      "csibm922": "cp922",
      "cp1046": {
        "type": "_sbcs",
        "chars": "\uFE88\xD7\xF7\uF8F6\uF8F5\uF8F4\uF8F7\uFE71\x88\u25A0\u2502\u2500\u2510\u250C\u2514\u2518\uFE79\uFE7B\uFE7D\uFE7F\uFE77\uFE8A\uFEF0\uFEF3\uFEF2\uFECE\uFECF\uFED0\uFEF6\uFEF8\uFEFA\uFEFC\xA0\uF8FA\uF8F9\uF8F8\xA4\uF8FB\uFE8B\uFE91\uFE97\uFE9B\uFE9F\uFEA3\u060C\xAD\uFEA7\uFEB3\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\uFEB7\u061B\uFEBB\uFEBF\uFECA\u061F\uFECB\u0621\u0622\u0623\u0624\u0625\u0626\u0627\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637\uFEC7\u0639\u063A\uFECC\uFE82\uFE84\uFE8E\uFED3\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\uFED7\uFEDB\uFEDF\uF8FC\uFEF5\uFEF7\uFEF9\uFEFB\uFEE3\uFEE7\uFEEC\uFEE9\uFFFD"
      },
      "ibm1046": "cp1046",
      "csibm1046": "cp1046",
      "cp1124": {
        "type": "_sbcs",
        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0401\u0402\u0490\u0404\u0405\u0406\u0407\u0408\u0409\u040A\u040B\u040C\xAD\u040E\u040F\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u2116\u0451\u0452\u0491\u0454\u0455\u0456\u0457\u0458\u0459\u045A\u045B\u045C\xA7\u045E\u045F"
      },
      "ibm1124": "cp1124",
      "csibm1124": "cp1124",
      "cp1125": {
        "type": "_sbcs",
        "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F\u0401\u0451\u0490\u0491\u0404\u0454\u0406\u0456\u0407\u0457\xB7\u221A\u2116\xA4\u25A0\xA0"
      },
      "ibm1125": "cp1125",
      "csibm1125": "cp1125",
      "cp1129": {
        "type": "_sbcs",
        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\u0153\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u0178\xB5\xB6\xB7\u0152\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"
      },
      "ibm1129": "cp1129",
      "csibm1129": "cp1129",
      "cp1133": {
        "type": "_sbcs",
        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E81\u0E82\u0E84\u0E87\u0E88\u0EAA\u0E8A\u0E8D\u0E94\u0E95\u0E96\u0E97\u0E99\u0E9A\u0E9B\u0E9C\u0E9D\u0E9E\u0E9F\u0EA1\u0EA2\u0EA3\u0EA5\u0EA7\u0EAB\u0EAD\u0EAE\uFFFD\uFFFD\uFFFD\u0EAF\u0EB0\u0EB2\u0EB3\u0EB4\u0EB5\u0EB6\u0EB7\u0EB8\u0EB9\u0EBC\u0EB1\u0EBB\u0EBD\uFFFD\uFFFD\uFFFD\u0EC0\u0EC1\u0EC2\u0EC3\u0EC4\u0EC8\u0EC9\u0ECA\u0ECB\u0ECC\u0ECD\u0EC6\uFFFD\u0EDC\u0EDD\u20AD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0ED0\u0ED1\u0ED2\u0ED3\u0ED4\u0ED5\u0ED6\u0ED7\u0ED8\u0ED9\uFFFD\uFFFD\xA2\xAC\xA6\uFFFD"
      },
      "ibm1133": "cp1133",
      "csibm1133": "cp1133",
      "cp1161": {
        "type": "_sbcs",
        "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E48\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\u0E49\u0E4A\u0E4B\u20AC\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\xA2\xAC\xA6\xA0"
      },
      "ibm1161": "cp1161",
      "csibm1161": "cp1161",
      "cp1162": {
        "type": "_sbcs",
        "chars": "\u20AC\x81\x82\x83\x84\u2026\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"
      },
      "ibm1162": "cp1162",
      "csibm1162": "cp1162",
      "cp1163": {
        "type": "_sbcs",
        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xA1\xA2\xA3\u20AC\xA5\xA6\xA7\u0153\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\u0178\xB5\xB6\xB7\u0152\xB9\xBA\xBB\xBC\xBD\xBE\xBF\xC0\xC1\xC2\u0102\xC4\xC5\xC6\xC7\xC8\xC9\xCA\xCB\u0300\xCD\xCE\xCF\u0110\xD1\u0309\xD3\xD4\u01A0\xD6\xD7\xD8\xD9\xDA\xDB\xDC\u01AF\u0303\xDF\xE0\xE1\xE2\u0103\xE4\xE5\xE6\xE7\xE8\xE9\xEA\xEB\u0301\xED\xEE\xEF\u0111\xF1\u0323\xF3\xF4\u01A1\xF6\xF7\xF8\xF9\xFA\xFB\xFC\u01B0\u20AB\xFF"
      },
      "ibm1163": "cp1163",
      "csibm1163": "cp1163",
      "maccroatian": {
        "type": "_sbcs",
        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\u0160\u2122\xB4\xA8\u2260\u017D\xD8\u221E\xB1\u2264\u2265\u2206\xB5\u2202\u2211\u220F\u0161\u222B\xAA\xBA\u2126\u017E\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u0106\xAB\u010C\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u0110\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\uFFFD\xA9\u2044\xA4\u2039\u203A\xC6\xBB\u2013\xB7\u201A\u201E\u2030\xC2\u0107\xC1\u010D\xC8\xCD\xCE\xCF\xCC\xD3\xD4\u0111\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u03C0\xCB\u02DA\xB8\xCA\xE6\u02C7"
      },
      "maccyrillic": {
        "type": "_sbcs",
        "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\xA2\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u2202\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\xA4"
      },
      "macgreek": {
        "type": "_sbcs",
        "chars": "\xC4\xB9\xB2\xC9\xB3\xD6\xDC\u0385\xE0\xE2\xE4\u0384\xA8\xE7\xE9\xE8\xEA\xEB\xA3\u2122\xEE\xEF\u2022\xBD\u2030\xF4\xF6\xA6\xAD\xF9\xFB\xFC\u2020\u0393\u0394\u0398\u039B\u039E\u03A0\xDF\xAE\xA9\u03A3\u03AA\xA7\u2260\xB0\u0387\u0391\xB1\u2264\u2265\xA5\u0392\u0395\u0396\u0397\u0399\u039A\u039C\u03A6\u03AB\u03A8\u03A9\u03AC\u039D\xAC\u039F\u03A1\u2248\u03A4\xAB\xBB\u2026\xA0\u03A5\u03A7\u0386\u0388\u0153\u2013\u2015\u201C\u201D\u2018\u2019\xF7\u0389\u038A\u038C\u038E\u03AD\u03AE\u03AF\u03CC\u038F\u03CD\u03B1\u03B2\u03C8\u03B4\u03B5\u03C6\u03B3\u03B7\u03B9\u03BE\u03BA\u03BB\u03BC\u03BD\u03BF\u03C0\u03CE\u03C1\u03C3\u03C4\u03B8\u03C9\u03C2\u03C7\u03C5\u03B6\u03CA\u03CB\u0390\u03B0\uFFFD"
      },
      "maciceland": {
        "type": "_sbcs",
        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\xDD\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\xD0\xF0\xDE\xFE\xFD\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"
      },
      "macroman": {
        "type": "_sbcs",
        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"
      },
      "macromania": {
        "type": "_sbcs",
        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\u0102\u015E\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\u0103\u015F\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\u0162\u0163\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"
      },
      "macthai": {
        "type": "_sbcs",
        "chars": "\xAB\xBB\u2026\uF88C\uF88F\uF892\uF895\uF898\uF88B\uF88E\uF891\uF894\uF897\u201C\u201D\uF899\uFFFD\u2022\uF884\uF889\uF885\uF886\uF887\uF888\uF88A\uF88D\uF890\uF893\uF896\u2018\u2019\uFFFD\xA0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFEFF\u200B\u2013\u2014\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u2122\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\xAE\xA9\uFFFD\uFFFD\uFFFD\uFFFD"
      },
      "macturkish": {
        "type": "_sbcs",
        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u011E\u011F\u0130\u0131\u015E\u015F\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\uFFFD\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"
      },
      "macukraine": {
        "type": "_sbcs",
        "chars": "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u2020\xB0\u0490\xA3\xA7\u2022\xB6\u0406\xAE\xA9\u2122\u0402\u0452\u2260\u0403\u0453\u221E\xB1\u2264\u2265\u0456\xB5\u0491\u0408\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A\u0458\u0405\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\u040B\u045B\u040C\u045C\u0455\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u201E\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\xA4"
      },
      "koi8r": {
        "type": "_sbcs",
        "chars": "\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u2553\u2554\u2555\u2556\u2557\u2558\u2559\u255A\u255B\u255C\u255D\u255E\u255F\u2560\u2561\u0401\u2562\u2563\u2564\u2565\u2566\u2567\u2568\u2569\u256A\u256B\u256C\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"
      },
      "koi8u": {
        "type": "_sbcs",
        "chars": "\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457\u2557\u2558\u2559\u255A\u255B\u0491\u255D\u255E\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407\u2566\u2567\u2568\u2569\u256A\u0490\u256C\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"
      },
      "koi8ru": {
        "type": "_sbcs",
        "chars": "\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248\u2264\u2265\xA0\u2321\xB0\xB2\xB7\xF7\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457\u2557\u2558\u2559\u255A\u255B\u0491\u045E\u255E\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407\u2566\u2567\u2568\u2569\u256A\u0490\u040E\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"
      },
      "koi8t": {
        "type": "_sbcs",
        "chars": "\u049B\u0493\u201A\u0492\u201E\u2026\u2020\u2021\uFFFD\u2030\u04B3\u2039\u04B2\u04B7\u04B6\uFFFD\u049A\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u04EF\u04EE\u0451\xA4\u04E3\xA6\xA7\uFFFD\uFFFD\uFFFD\xAB\xAC\xAD\xAE\uFFFD\xB0\xB1\xB2\u0401\uFFFD\u04E2\xB6\xB7\uFFFD\u2116\uFFFD\xBB\uFFFD\uFFFD\uFFFD\xA9\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A"
      },
      "armscii8": {
        "type": "_sbcs",
        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\uFFFD\u0587\u0589)(\xBB\xAB\u2014.\u055D,-\u058A\u2026\u055C\u055B\u055E\u0531\u0561\u0532\u0562\u0533\u0563\u0534\u0564\u0535\u0565\u0536\u0566\u0537\u0567\u0538\u0568\u0539\u0569\u053A\u056A\u053B\u056B\u053C\u056C\u053D\u056D\u053E\u056E\u053F\u056F\u0540\u0570\u0541\u0571\u0542\u0572\u0543\u0573\u0544\u0574\u0545\u0575\u0546\u0576\u0547\u0577\u0548\u0578\u0549\u0579\u054A\u057A\u054B\u057B\u054C\u057C\u054D\u057D\u054E\u057E\u054F\u057F\u0550\u0580\u0551\u0581\u0552\u0582\u0553\u0583\u0554\u0584\u0555\u0585\u0556\u0586\u055A\uFFFD"
      },
      "rk1048": {
        "type": "_sbcs",
        "chars": "\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021\u20AC\u2030\u0409\u2039\u040A\u049A\u04BA\u040F\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014\uFFFD\u2122\u0459\u203A\u045A\u049B\u04BB\u045F\xA0\u04B0\u04B1\u04D8\xA4\u04E8\xA6\xA7\u0401\xA9\u0492\xAB\xAC\xAD\xAE\u04AE\xB0\xB1\u0406\u0456\u04E9\xB5\xB6\xB7\u0451\u2116\u0493\xBB\u04D9\u04A2\u04A3\u04AF\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"
      },
      "tcvn": {
        "type": "_sbcs",
        "chars": "\0\xDA\u1EE4\u1EEA\u1EEC\u1EEE\x07\b	\n\v\f\r\u1EE8\u1EF0\u1EF2\u1EF6\u1EF8\xDD\u1EF4\x1B !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7F\xC0\u1EA2\xC3\xC1\u1EA0\u1EB6\u1EAC\xC8\u1EBA\u1EBC\xC9\u1EB8\u1EC6\xCC\u1EC8\u0128\xCD\u1ECA\xD2\u1ECE\xD5\xD3\u1ECC\u1ED8\u1EDC\u1EDE\u1EE0\u1EDA\u1EE2\xD9\u1EE6\u0168\xA0\u0102\xC2\xCA\xD4\u01A0\u01AF\u0110\u0103\xE2\xEA\xF4\u01A1\u01B0\u0111\u1EB0\u0300\u0309\u0303\u0301\u0323\xE0\u1EA3\xE3\xE1\u1EA1\u1EB2\u1EB1\u1EB3\u1EB5\u1EAF\u1EB4\u1EAE\u1EA6\u1EA8\u1EAA\u1EA4\u1EC0\u1EB7\u1EA7\u1EA9\u1EAB\u1EA5\u1EAD\xE8\u1EC2\u1EBB\u1EBD\xE9\u1EB9\u1EC1\u1EC3\u1EC5\u1EBF\u1EC7\xEC\u1EC9\u1EC4\u1EBE\u1ED2\u0129\xED\u1ECB\xF2\u1ED4\u1ECF\xF5\xF3\u1ECD\u1ED3\u1ED5\u1ED7\u1ED1\u1ED9\u1EDD\u1EDF\u1EE1\u1EDB\u1EE3\xF9\u1ED6\u1EE7\u0169\xFA\u1EE5\u1EEB\u1EED\u1EEF\u1EE9\u1EF1\u1EF3\u1EF7\u1EF9\xFD\u1EF5\u1ED0"
      },
      "georgianacademy": {
        "type": "_sbcs",
        "chars": "\x80\x81\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\x9D\x9E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\u10D0\u10D1\u10D2\u10D3\u10D4\u10D5\u10D6\u10D7\u10D8\u10D9\u10DA\u10DB\u10DC\u10DD\u10DE\u10DF\u10E0\u10E1\u10E2\u10E3\u10E4\u10E5\u10E6\u10E7\u10E8\u10E9\u10EA\u10EB\u10EC\u10ED\u10EE\u10EF\u10F0\u10F1\u10F2\u10F3\u10F4\u10F5\u10F6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"
      },
      "georgianps": {
        "type": "_sbcs",
        "chars": "\x80\x81\u201A\u0192\u201E\u2026\u2020\u2021\u02C6\u2030\u0160\u2039\u0152\x8D\x8E\x8F\x90\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u02DC\u2122\u0161\u203A\u0153\x9D\x9E\u0178\xA0\xA1\xA2\xA3\xA4\xA5\xA6\xA7\xA8\xA9\xAA\xAB\xAC\xAD\xAE\xAF\xB0\xB1\xB2\xB3\xB4\xB5\xB6\xB7\xB8\xB9\xBA\xBB\xBC\xBD\xBE\xBF\u10D0\u10D1\u10D2\u10D3\u10D4\u10D5\u10D6\u10F1\u10D7\u10D8\u10D9\u10DA\u10DB\u10DC\u10F2\u10DD\u10DE\u10DF\u10E0\u10E1\u10E2\u10F3\u10E3\u10E4\u10E5\u10E6\u10E7\u10E8\u10E9\u10EA\u10EB\u10EC\u10ED\u10EE\u10F4\u10EF\u10F0\u10F5\xE6\xE7\xE8\xE9\xEA\xEB\xEC\xED\xEE\xEF\xF0\xF1\xF2\xF3\xF4\xF5\xF6\xF7\xF8\xF9\xFA\xFB\xFC\xFD\xFE\xFF"
      },
      "pt154": {
        "type": "_sbcs",
        "chars": "\u0496\u0492\u04EE\u0493\u201E\u2026\u04B6\u04AE\u04B2\u04AF\u04A0\u04E2\u04A2\u049A\u04BA\u04B8\u0497\u2018\u2019\u201C\u201D\u2022\u2013\u2014\u04B3\u04B7\u04A1\u04E3\u04A3\u049B\u04BB\u04B9\xA0\u040E\u045E\u0408\u04E8\u0498\u04B0\xA7\u0401\xA9\u04D8\xAB\xAC\u04EF\xAE\u049C\xB0\u04B1\u0406\u0456\u0499\u04E9\xB6\xB7\u0451\u2116\u04D9\xBB\u0458\u04AA\u04AB\u049D\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F"
      },
      "viscii": {
        "type": "_sbcs",
        "chars": "\0\u1EB2\u1EB4\u1EAA\x07\b	\n\v\f\r\u1EF6\u1EF8\x1B\u1EF4 !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7F\u1EA0\u1EAE\u1EB0\u1EB6\u1EA4\u1EA6\u1EA8\u1EAC\u1EBC\u1EB8\u1EBE\u1EC0\u1EC2\u1EC4\u1EC6\u1ED0\u1ED2\u1ED4\u1ED6\u1ED8\u1EE2\u1EDA\u1EDC\u1EDE\u1ECA\u1ECE\u1ECC\u1EC8\u1EE6\u0168\u1EE4\u1EF2\xD5\u1EAF\u1EB1\u1EB7\u1EA5\u1EA7\u1EA9\u1EAD\u1EBD\u1EB9\u1EBF\u1EC1\u1EC3\u1EC5\u1EC7\u1ED1\u1ED3\u1ED5\u1ED7\u1EE0\u01A0\u1ED9\u1EDD\u1EDF\u1ECB\u1EF0\u1EE8\u1EEA\u1EEC\u01A1\u1EDB\u01AF\xC0\xC1\xC2\xC3\u1EA2\u0102\u1EB3\u1EB5\xC8\xC9\xCA\u1EBA\xCC\xCD\u0128\u1EF3\u0110\u1EE9\xD2\xD3\xD4\u1EA1\u1EF7\u1EEB\u1EED\xD9\xDA\u1EF9\u1EF5\xDD\u1EE1\u01B0\xE0\xE1\xE2\xE3\u1EA3\u0103\u1EEF\u1EAB\xE8\xE9\xEA\u1EBB\xEC\xED\u0129\u1EC9\u0111\u1EF1\xF2\xF3\xF4\xF5\u1ECF\u1ECD\u1EE5\xF9\xFA\u0169\u1EE7\xFD\u1EE3\u1EEE"
      },
      "iso646cn": {
        "type": "_sbcs",
        "chars": "\0\x07\b	\n\v\f\r\x1B !\"#\xA5%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"
      },
      "iso646jp": {
        "type": "_sbcs",
        "chars": "\0\x07\b	\n\v\f\r\x1B !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\xA5]^_`abcdefghijklmnopqrstuvwxyz{|}\u203E\x7F\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"
      },
      "hproman8": {
        "type": "_sbcs",
        "chars": "\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8A\x8B\x8C\x8D\x8E\x8F\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9A\x9B\x9C\x9D\x9E\x9F\xA0\xC0\xC2\xC8\xCA\xCB\xCE\xCF\xB4\u02CB\u02C6\xA8\u02DC\xD9\xDB\u20A4\xAF\xDD\xFD\xB0\xC7\xE7\xD1\xF1\xA1\xBF\xA4\xA3\xA5\xA7\u0192\xA2\xE2\xEA\xF4\xFB\xE1\xE9\xF3\xFA\xE0\xE8\xF2\xF9\xE4\xEB\xF6\xFC\xC5\xEE\xD8\xC6\xE5\xED\xF8\xE6\xC4\xEC\xD6\xDC\xC9\xEF\xDF\xD4\xC1\xC3\xE3\xD0\xF0\xCD\xCC\xD3\xD2\xD5\xF5\u0160\u0161\xDA\u0178\xFF\xDE\xFE\xB7\xB5\xB6\xBE\u2014\xBC\xBD\xAA\xBA\xAB\u25A0\xBB\xB1\uFFFD"
      },
      "macintosh": {
        "type": "_sbcs",
        "chars": "\xC4\xC5\xC7\xC9\xD1\xD6\xDC\xE1\xE0\xE2\xE4\xE3\xE5\xE7\xE9\xE8\xEA\xEB\xED\xEC\xEE\xEF\xF1\xF3\xF2\xF4\xF6\xF5\xFA\xF9\xFB\xFC\u2020\xB0\xA2\xA3\xA7\u2022\xB6\xDF\xAE\xA9\u2122\xB4\xA8\u2260\xC6\xD8\u221E\xB1\u2264\u2265\xA5\xB5\u2202\u2211\u220F\u03C0\u222B\xAA\xBA\u2126\xE6\xF8\xBF\xA1\xAC\u221A\u0192\u2248\u2206\xAB\xBB\u2026\xA0\xC0\xC3\xD5\u0152\u0153\u2013\u2014\u201C\u201D\u2018\u2019\xF7\u25CA\xFF\u0178\u2044\xA4\u2039\u203A\uFB01\uFB02\u2021\xB7\u201A\u201E\u2030\xC2\xCA\xC1\xCB\xC8\xCD\xCE\xCF\xCC\xD3\xD4\uFFFD\xD2\xDA\xDB\xD9\u0131\u02C6\u02DC\xAF\u02D8\u02D9\u02DA\xB8\u02DD\u02DB\u02C7"
      },
      "ascii": {
        "type": "_sbcs",
        "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD"
      },
      "tis620": {
        "type": "_sbcs",
        "chars": "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD"
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/dbcs-codec.js
var require_dbcs_codec = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/dbcs-codec.js"(exports2) {
    "use strict";
    var Buffer5 = require_safer().Buffer;
    exports2._dbcs = DBCSCodec;
    var UNASSIGNED = -1;
    var GB18030_CODE = -2;
    var SEQ_START = -10;
    var NODE_START = -1e3;
    var UNASSIGNED_NODE = new Array(256);
    var DEF_CHAR = -1;
    for (i2 = 0; i2 < 256; i2++) {
      UNASSIGNED_NODE[i2] = UNASSIGNED;
    }
    var i2;
    function DBCSCodec(codecOptions, iconv) {
      this.encodingName = codecOptions.encodingName;
      if (!codecOptions) {
        throw new Error("DBCS codec is called without the data.");
      }
      if (!codecOptions.table) {
        throw new Error("Encoding '" + this.encodingName + "' has no data.");
      }
      var mappingTable = codecOptions.table();
      this.decodeTables = [];
      this.decodeTables[0] = UNASSIGNED_NODE.slice(0);
      this.decodeTableSeq = [];
      for (var i3 = 0; i3 < mappingTable.length; i3++) {
        this._addDecodeChunk(mappingTable[i3]);
      }
      if (typeof codecOptions.gb18030 === "function") {
        this.gb18030 = codecOptions.gb18030();
        var commonThirdByteNodeIdx = this.decodeTables.length;
        this.decodeTables.push(UNASSIGNED_NODE.slice(0));
        var commonFourthByteNodeIdx = this.decodeTables.length;
        this.decodeTables.push(UNASSIGNED_NODE.slice(0));
        var firstByteNode = this.decodeTables[0];
        for (var i3 = 129; i3 <= 254; i3++) {
          var secondByteNode = this.decodeTables[NODE_START - firstByteNode[i3]];
          for (var j2 = 48; j2 <= 57; j2++) {
            if (secondByteNode[j2] === UNASSIGNED) {
              secondByteNode[j2] = NODE_START - commonThirdByteNodeIdx;
            } else if (secondByteNode[j2] > NODE_START) {
              throw new Error("gb18030 decode tables conflict at byte 2");
            }
            var thirdByteNode = this.decodeTables[NODE_START - secondByteNode[j2]];
            for (var k2 = 129; k2 <= 254; k2++) {
              if (thirdByteNode[k2] === UNASSIGNED) {
                thirdByteNode[k2] = NODE_START - commonFourthByteNodeIdx;
              } else if (thirdByteNode[k2] === NODE_START - commonFourthByteNodeIdx) {
                continue;
              } else if (thirdByteNode[k2] > NODE_START) {
                throw new Error("gb18030 decode tables conflict at byte 3");
              }
              var fourthByteNode = this.decodeTables[NODE_START - thirdByteNode[k2]];
              for (var l = 48; l <= 57; l++) {
                if (fourthByteNode[l] === UNASSIGNED) {
                  fourthByteNode[l] = GB18030_CODE;
                }
              }
            }
          }
        }
      }
      this.defaultCharUnicode = iconv.defaultCharUnicode;
      this.encodeTable = [];
      this.encodeTableSeq = [];
      var skipEncodeChars = {};
      if (codecOptions.encodeSkipVals) {
        for (var i3 = 0; i3 < codecOptions.encodeSkipVals.length; i3++) {
          var val = codecOptions.encodeSkipVals[i3];
          if (typeof val === "number") {
            skipEncodeChars[val] = true;
          } else {
            for (var j2 = val.from; j2 <= val.to; j2++) {
              skipEncodeChars[j2] = true;
            }
          }
        }
      }
      this._fillEncodeTable(0, 0, skipEncodeChars);
      if (codecOptions.encodeAdd) {
        for (var uChar in codecOptions.encodeAdd) {
          if (Object.prototype.hasOwnProperty.call(codecOptions.encodeAdd, uChar)) {
            this._setEncodeChar(uChar.charCodeAt(0), codecOptions.encodeAdd[uChar]);
          }
        }
      }
      this.defCharSB = this.encodeTable[0][iconv.defaultCharSingleByte.charCodeAt(0)];
      if (this.defCharSB === UNASSIGNED) this.defCharSB = this.encodeTable[0]["?"];
      if (this.defCharSB === UNASSIGNED) this.defCharSB = "?".charCodeAt(0);
    }
    DBCSCodec.prototype.encoder = DBCSEncoder;
    DBCSCodec.prototype.decoder = DBCSDecoder;
    DBCSCodec.prototype._getDecodeTrieNode = function(addr) {
      var bytes = [];
      for (; addr > 0; addr >>>= 8) {
        bytes.push(addr & 255);
      }
      if (bytes.length == 0) {
        bytes.push(0);
      }
      var node = this.decodeTables[0];
      for (var i3 = bytes.length - 1; i3 > 0; i3--) {
        var val = node[bytes[i3]];
        if (val == UNASSIGNED) {
          node[bytes[i3]] = NODE_START - this.decodeTables.length;
          this.decodeTables.push(node = UNASSIGNED_NODE.slice(0));
        } else if (val <= NODE_START) {
          node = this.decodeTables[NODE_START - val];
        } else {
          throw new Error("Overwrite byte in " + this.encodingName + ", addr: " + addr.toString(16));
        }
      }
      return node;
    };
    DBCSCodec.prototype._addDecodeChunk = function(chunk) {
      var curAddr = parseInt(chunk[0], 16);
      var writeTable = this._getDecodeTrieNode(curAddr);
      curAddr = curAddr & 255;
      for (var k2 = 1; k2 < chunk.length; k2++) {
        var part = chunk[k2];
        if (typeof part === "string") {
          for (var l = 0; l < part.length; ) {
            var code = part.charCodeAt(l++);
            if (code >= 55296 && code < 56320) {
              var codeTrail = part.charCodeAt(l++);
              if (codeTrail >= 56320 && codeTrail < 57344) {
                writeTable[curAddr++] = 65536 + (code - 55296) * 1024 + (codeTrail - 56320);
              } else {
                throw new Error("Incorrect surrogate pair in " + this.encodingName + " at chunk " + chunk[0]);
              }
            } else if (code > 4080 && code <= 4095) {
              var len = 4095 - code + 2;
              var seq2 = [];
              for (var m = 0; m < len; m++) {
                seq2.push(part.charCodeAt(l++));
              }
              writeTable[curAddr++] = SEQ_START - this.decodeTableSeq.length;
              this.decodeTableSeq.push(seq2);
            } else {
              writeTable[curAddr++] = code;
            }
          }
        } else if (typeof part === "number") {
          var charCode = writeTable[curAddr - 1] + 1;
          for (var l = 0; l < part; l++) {
            writeTable[curAddr++] = charCode++;
          }
        } else {
          throw new Error("Incorrect type '" + typeof part + "' given in " + this.encodingName + " at chunk " + chunk[0]);
        }
      }
      if (curAddr > 255) {
        throw new Error("Incorrect chunk in " + this.encodingName + " at addr " + chunk[0] + ": too long" + curAddr);
      }
    };
    DBCSCodec.prototype._getEncodeBucket = function(uCode) {
      var high = uCode >> 8;
      if (this.encodeTable[high] === void 0) {
        this.encodeTable[high] = UNASSIGNED_NODE.slice(0);
      }
      return this.encodeTable[high];
    };
    DBCSCodec.prototype._setEncodeChar = function(uCode, dbcsCode) {
      var bucket = this._getEncodeBucket(uCode);
      var low = uCode & 255;
      if (bucket[low] <= SEQ_START) {
        this.encodeTableSeq[SEQ_START - bucket[low]][DEF_CHAR] = dbcsCode;
      } else if (bucket[low] == UNASSIGNED) {
        bucket[low] = dbcsCode;
      }
    };
    DBCSCodec.prototype._setEncodeSequence = function(seq2, dbcsCode) {
      var uCode = seq2[0];
      var bucket = this._getEncodeBucket(uCode);
      var low = uCode & 255;
      var node;
      if (bucket[low] <= SEQ_START) {
        node = this.encodeTableSeq[SEQ_START - bucket[low]];
      } else {
        node = {};
        if (bucket[low] !== UNASSIGNED) node[DEF_CHAR] = bucket[low];
        bucket[low] = SEQ_START - this.encodeTableSeq.length;
        this.encodeTableSeq.push(node);
      }
      for (var j2 = 1; j2 < seq2.length - 1; j2++) {
        var oldVal = node[uCode];
        if (typeof oldVal === "object") {
          node = oldVal;
        } else {
          node = node[uCode] = {};
          if (oldVal !== void 0) {
            node[DEF_CHAR] = oldVal;
          }
        }
      }
      uCode = seq2[seq2.length - 1];
      node[uCode] = dbcsCode;
    };
    DBCSCodec.prototype._fillEncodeTable = function(nodeIdx, prefix, skipEncodeChars) {
      var node = this.decodeTables[nodeIdx];
      var hasValues = false;
      var subNodeEmpty = {};
      for (var i3 = 0; i3 < 256; i3++) {
        var uCode = node[i3];
        var mbCode = prefix + i3;
        if (skipEncodeChars[mbCode]) {
          continue;
        }
        if (uCode >= 0) {
          this._setEncodeChar(uCode, mbCode);
          hasValues = true;
        } else if (uCode <= NODE_START) {
          var subNodeIdx = NODE_START - uCode;
          if (!subNodeEmpty[subNodeIdx]) {
            var newPrefix = mbCode << 8 >>> 0;
            if (this._fillEncodeTable(subNodeIdx, newPrefix, skipEncodeChars)) {
              hasValues = true;
            } else {
              subNodeEmpty[subNodeIdx] = true;
            }
          }
        } else if (uCode <= SEQ_START) {
          this._setEncodeSequence(this.decodeTableSeq[SEQ_START - uCode], mbCode);
          hasValues = true;
        }
      }
      return hasValues;
    };
    function DBCSEncoder(options, codec) {
      this.leadSurrogate = -1;
      this.seqObj = void 0;
      this.encodeTable = codec.encodeTable;
      this.encodeTableSeq = codec.encodeTableSeq;
      this.defaultCharSingleByte = codec.defCharSB;
      this.gb18030 = codec.gb18030;
    }
    DBCSEncoder.prototype.write = function(str2) {
      var newBuf = Buffer5.alloc(str2.length * (this.gb18030 ? 4 : 3));
      var leadSurrogate = this.leadSurrogate;
      var seqObj = this.seqObj;
      var nextChar = -1;
      var i3 = 0;
      var j2 = 0;
      while (true) {
        if (nextChar === -1) {
          if (i3 == str2.length) break;
          var uCode = str2.charCodeAt(i3++);
        } else {
          var uCode = nextChar;
          nextChar = -1;
        }
        if (uCode >= 55296 && uCode < 57344) {
          if (uCode < 56320) {
            if (leadSurrogate === -1) {
              leadSurrogate = uCode;
              continue;
            } else {
              leadSurrogate = uCode;
              uCode = UNASSIGNED;
            }
          } else {
            if (leadSurrogate !== -1) {
              uCode = 65536 + (leadSurrogate - 55296) * 1024 + (uCode - 56320);
              leadSurrogate = -1;
            } else {
              uCode = UNASSIGNED;
            }
          }
        } else if (leadSurrogate !== -1) {
          nextChar = uCode;
          uCode = UNASSIGNED;
          leadSurrogate = -1;
        }
        var dbcsCode = UNASSIGNED;
        if (seqObj !== void 0 && uCode != UNASSIGNED) {
          var resCode = seqObj[uCode];
          if (typeof resCode === "object") {
            seqObj = resCode;
            continue;
          } else if (typeof resCode === "number") {
            dbcsCode = resCode;
          } else if (resCode == void 0) {
            resCode = seqObj[DEF_CHAR];
            if (resCode !== void 0) {
              dbcsCode = resCode;
              nextChar = uCode;
            } else {
            }
          }
          seqObj = void 0;
        } else if (uCode >= 0) {
          var subtable = this.encodeTable[uCode >> 8];
          if (subtable !== void 0) {
            dbcsCode = subtable[uCode & 255];
          }
          if (dbcsCode <= SEQ_START) {
            seqObj = this.encodeTableSeq[SEQ_START - dbcsCode];
            continue;
          }
          if (dbcsCode == UNASSIGNED && this.gb18030) {
            var idx = findIdx(this.gb18030.uChars, uCode);
            if (idx != -1) {
              var dbcsCode = this.gb18030.gbChars[idx] + (uCode - this.gb18030.uChars[idx]);
              newBuf[j2++] = 129 + Math.floor(dbcsCode / 12600);
              dbcsCode = dbcsCode % 12600;
              newBuf[j2++] = 48 + Math.floor(dbcsCode / 1260);
              dbcsCode = dbcsCode % 1260;
              newBuf[j2++] = 129 + Math.floor(dbcsCode / 10);
              dbcsCode = dbcsCode % 10;
              newBuf[j2++] = 48 + dbcsCode;
              continue;
            }
          }
        }
        if (dbcsCode === UNASSIGNED) {
          dbcsCode = this.defaultCharSingleByte;
        }
        if (dbcsCode < 256) {
          newBuf[j2++] = dbcsCode;
        } else if (dbcsCode < 65536) {
          newBuf[j2++] = dbcsCode >> 8;
          newBuf[j2++] = dbcsCode & 255;
        } else if (dbcsCode < 16777216) {
          newBuf[j2++] = dbcsCode >> 16;
          newBuf[j2++] = dbcsCode >> 8 & 255;
          newBuf[j2++] = dbcsCode & 255;
        } else {
          newBuf[j2++] = dbcsCode >>> 24;
          newBuf[j2++] = dbcsCode >>> 16 & 255;
          newBuf[j2++] = dbcsCode >>> 8 & 255;
          newBuf[j2++] = dbcsCode & 255;
        }
      }
      this.seqObj = seqObj;
      this.leadSurrogate = leadSurrogate;
      return newBuf.slice(0, j2);
    };
    DBCSEncoder.prototype.end = function() {
      if (this.leadSurrogate === -1 && this.seqObj === void 0) {
        return;
      }
      var newBuf = Buffer5.alloc(10);
      var j2 = 0;
      if (this.seqObj) {
        var dbcsCode = this.seqObj[DEF_CHAR];
        if (dbcsCode !== void 0) {
          if (dbcsCode < 256) {
            newBuf[j2++] = dbcsCode;
          } else {
            newBuf[j2++] = dbcsCode >> 8;
            newBuf[j2++] = dbcsCode & 255;
          }
        } else {
        }
        this.seqObj = void 0;
      }
      if (this.leadSurrogate !== -1) {
        newBuf[j2++] = this.defaultCharSingleByte;
        this.leadSurrogate = -1;
      }
      return newBuf.slice(0, j2);
    };
    DBCSEncoder.prototype.findIdx = findIdx;
    function DBCSDecoder(options, codec) {
      this.nodeIdx = 0;
      this.prevBytes = [];
      this.decodeTables = codec.decodeTables;
      this.decodeTableSeq = codec.decodeTableSeq;
      this.defaultCharUnicode = codec.defaultCharUnicode;
      this.gb18030 = codec.gb18030;
    }
    DBCSDecoder.prototype.write = function(buf) {
      var newBuf = Buffer5.alloc(buf.length * 2);
      var nodeIdx = this.nodeIdx;
      var prevBytes = this.prevBytes;
      var prevOffset = this.prevBytes.length;
      var seqStart = -this.prevBytes.length;
      var uCode;
      for (var i3 = 0, j2 = 0; i3 < buf.length; i3++) {
        var curByte = i3 >= 0 ? buf[i3] : prevBytes[i3 + prevOffset];
        var uCode = this.decodeTables[nodeIdx][curByte];
        if (uCode >= 0) {
        } else if (uCode === UNASSIGNED) {
          uCode = this.defaultCharUnicode.charCodeAt(0);
          i3 = seqStart;
        } else if (uCode === GB18030_CODE) {
          if (i3 >= 3) {
            var ptr = (buf[i3 - 3] - 129) * 12600 + (buf[i3 - 2] - 48) * 1260 + (buf[i3 - 1] - 129) * 10 + (curByte - 48);
          } else {
            var ptr = (prevBytes[i3 - 3 + prevOffset] - 129) * 12600 + ((i3 - 2 >= 0 ? buf[i3 - 2] : prevBytes[i3 - 2 + prevOffset]) - 48) * 1260 + ((i3 - 1 >= 0 ? buf[i3 - 1] : prevBytes[i3 - 1 + prevOffset]) - 129) * 10 + (curByte - 48);
          }
          var idx = findIdx(this.gb18030.gbChars, ptr);
          uCode = this.gb18030.uChars[idx] + ptr - this.gb18030.gbChars[idx];
        } else if (uCode <= NODE_START) {
          nodeIdx = NODE_START - uCode;
          continue;
        } else if (uCode <= SEQ_START) {
          var seq2 = this.decodeTableSeq[SEQ_START - uCode];
          for (var k2 = 0; k2 < seq2.length - 1; k2++) {
            uCode = seq2[k2];
            newBuf[j2++] = uCode & 255;
            newBuf[j2++] = uCode >> 8;
          }
          uCode = seq2[seq2.length - 1];
        } else {
          throw new Error("iconv-lite internal error: invalid decoding table value " + uCode + " at " + nodeIdx + "/" + curByte);
        }
        if (uCode >= 65536) {
          uCode -= 65536;
          var uCodeLead = 55296 | uCode >> 10;
          newBuf[j2++] = uCodeLead & 255;
          newBuf[j2++] = uCodeLead >> 8;
          uCode = 56320 | uCode & 1023;
        }
        newBuf[j2++] = uCode & 255;
        newBuf[j2++] = uCode >> 8;
        nodeIdx = 0;
        seqStart = i3 + 1;
      }
      this.nodeIdx = nodeIdx;
      this.prevBytes = seqStart >= 0 ? Array.prototype.slice.call(buf, seqStart) : prevBytes.slice(seqStart + prevOffset).concat(Array.prototype.slice.call(buf));
      return newBuf.slice(0, j2).toString("ucs2");
    };
    DBCSDecoder.prototype.end = function() {
      var ret2 = "";
      while (this.prevBytes.length > 0) {
        ret2 += this.defaultCharUnicode;
        var bytesArr = this.prevBytes.slice(1);
        this.prevBytes = [];
        this.nodeIdx = 0;
        if (bytesArr.length > 0) {
          ret2 += this.write(bytesArr);
        }
      }
      this.prevBytes = [];
      this.nodeIdx = 0;
      return ret2;
    };
    function findIdx(table9, val) {
      if (table9[0] > val) {
        return -1;
      }
      var l = 0;
      var r = table9.length;
      while (l < r - 1) {
        var mid = l + (r - l + 1 >> 1);
        if (table9[mid] <= val) {
          l = mid;
        } else {
          r = mid;
        }
      }
      return l;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/tables/shiftjis.json
var require_shiftjis = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/tables/shiftjis.json"(exports2, module2) {
    module2.exports = [
      ["0", "\0", 128],
      ["a1", "\uFF61", 62],
      ["8140", "\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008", 9, "\uFF0B\uFF0D\xB1\xD7"],
      ["8180", "\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],
      ["81b8", "\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],
      ["81c8", "\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],
      ["81da", "\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],
      ["81f0", "\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],
      ["81fc", "\u25EF"],
      ["824f", "\uFF10", 9],
      ["8260", "\uFF21", 25],
      ["8281", "\uFF41", 25],
      ["829f", "\u3041", 82],
      ["8340", "\u30A1", 62],
      ["8380", "\u30E0", 22],
      ["839f", "\u0391", 16, "\u03A3", 6],
      ["83bf", "\u03B1", 16, "\u03C3", 6],
      ["8440", "\u0410", 5, "\u0401\u0416", 25],
      ["8470", "\u0430", 5, "\u0451\u0436", 7],
      ["8480", "\u043E", 17],
      ["849f", "\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],
      ["8740", "\u2460", 19, "\u2160", 9],
      ["875f", "\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],
      ["877e", "\u337B"],
      ["8780", "\u301D\u301F\u2116\u33CD\u2121\u32A4", 4, "\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],
      ["889f", "\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],
      ["8940", "\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186"],
      ["8980", "\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],
      ["8a40", "\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B"],
      ["8a80", "\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],
      ["8b40", "\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551"],
      ["8b80", "\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],
      ["8c40", "\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8"],
      ["8c80", "\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],
      ["8d40", "\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D"],
      ["8d80", "\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],
      ["8e40", "\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62"],
      ["8e80", "\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],
      ["8f40", "\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3"],
      ["8f80", "\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],
      ["9040", "\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8"],
      ["9080", "\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],
      ["9140", "\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB"],
      ["9180", "\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],
      ["9240", "\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4"],
      ["9280", "\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],
      ["9340", "\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC"],
      ["9380", "\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],
      ["9440", "\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885"],
      ["9480", "\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],
      ["9540", "\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577"],
      ["9580", "\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],
      ["9640", "\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6"],
      ["9680", "\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],
      ["9740", "\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32"],
      ["9780", "\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],
      ["9840", "\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],
      ["989f", "\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],
      ["9940", "\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED"],
      ["9980", "\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],
      ["9a40", "\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638"],
      ["9a80", "\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],
      ["9b40", "\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80"],
      ["9b80", "\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],
      ["9c40", "\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060"],
      ["9c80", "\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],
      ["9d40", "\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B"],
      ["9d80", "\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],
      ["9e40", "\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E"],
      ["9e80", "\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],
      ["9f40", "\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF"],
      ["9f80", "\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],
      ["e040", "\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD"],
      ["e080", "\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],
      ["e140", "\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF"],
      ["e180", "\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],
      ["e240", "\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0"],
      ["e280", "\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],
      ["e340", "\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37"],
      ["e380", "\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],
      ["e440", "\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264"],
      ["e480", "\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],
      ["e540", "\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC"],
      ["e580", "\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],
      ["e640", "\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7"],
      ["e680", "\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],
      ["e740", "\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C"],
      ["e780", "\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],
      ["e840", "\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599"],
      ["e880", "\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],
      ["e940", "\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43"],
      ["e980", "\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],
      ["ea40", "\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF"],
      ["ea80", "\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0\u582F\u69C7\u9059\u7464\u51DC\u7199"],
      ["ed40", "\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F"],
      ["ed80", "\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],
      ["ee40", "\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559"],
      ["ee80", "\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],
      ["eeef", "\u2170", 9, "\uFFE2\uFFE4\uFF07\uFF02"],
      ["f040", "\uE000", 62],
      ["f080", "\uE03F", 124],
      ["f140", "\uE0BC", 62],
      ["f180", "\uE0FB", 124],
      ["f240", "\uE178", 62],
      ["f280", "\uE1B7", 124],
      ["f340", "\uE234", 62],
      ["f380", "\uE273", 124],
      ["f440", "\uE2F0", 62],
      ["f480", "\uE32F", 124],
      ["f540", "\uE3AC", 62],
      ["f580", "\uE3EB", 124],
      ["f640", "\uE468", 62],
      ["f680", "\uE4A7", 124],
      ["f740", "\uE524", 62],
      ["f780", "\uE563", 124],
      ["f840", "\uE5E0", 62],
      ["f880", "\uE61F", 124],
      ["f940", "\uE69C"],
      ["fa40", "\u2170", 9, "\u2160", 9, "\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u2235\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A"],
      ["fa80", "\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F"],
      ["fb40", "\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19"],
      ["fb80", "\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9"],
      ["fc40", "\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"]
    ];
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/tables/eucjp.json
var require_eucjp = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/tables/eucjp.json"(exports2, module2) {
    module2.exports = [
      ["0", "\0", 127],
      ["8ea1", "\uFF61", 62],
      ["a1a1", "\u3000\u3001\u3002\uFF0C\uFF0E\u30FB\uFF1A\uFF1B\uFF1F\uFF01\u309B\u309C\xB4\uFF40\xA8\uFF3E\uFFE3\uFF3F\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\u2015\u2010\uFF0F\uFF3C\uFF5E\u2225\uFF5C\u2026\u2025\u2018\u2019\u201C\u201D\uFF08\uFF09\u3014\u3015\uFF3B\uFF3D\uFF5B\uFF5D\u3008", 9, "\uFF0B\uFF0D\xB1\xD7\xF7\uFF1D\u2260\uFF1C\uFF1E\u2266\u2267\u221E\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFFE5\uFF04\uFFE0\uFFE1\uFF05\uFF03\uFF06\uFF0A\uFF20\xA7\u2606\u2605\u25CB\u25CF\u25CE\u25C7"],
      ["a2a1", "\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u203B\u3012\u2192\u2190\u2191\u2193\u3013"],
      ["a2ba", "\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229"],
      ["a2ca", "\u2227\u2228\uFFE2\u21D2\u21D4\u2200\u2203"],
      ["a2dc", "\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C"],
      ["a2f2", "\u212B\u2030\u266F\u266D\u266A\u2020\u2021\xB6"],
      ["a2fe", "\u25EF"],
      ["a3b0", "\uFF10", 9],
      ["a3c1", "\uFF21", 25],
      ["a3e1", "\uFF41", 25],
      ["a4a1", "\u3041", 82],
      ["a5a1", "\u30A1", 85],
      ["a6a1", "\u0391", 16, "\u03A3", 6],
      ["a6c1", "\u03B1", 16, "\u03C3", 6],
      ["a7a1", "\u0410", 5, "\u0401\u0416", 25],
      ["a7d1", "\u0430", 5, "\u0451\u0436", 25],
      ["a8a1", "\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542"],
      ["ada1", "\u2460", 19, "\u2160", 9],
      ["adc0", "\u3349\u3314\u3322\u334D\u3318\u3327\u3303\u3336\u3351\u3357\u330D\u3326\u3323\u332B\u334A\u333B\u339C\u339D\u339E\u338E\u338F\u33C4\u33A1"],
      ["addf", "\u337B\u301D\u301F\u2116\u33CD\u2121\u32A4", 4, "\u3231\u3232\u3239\u337E\u337D\u337C\u2252\u2261\u222B\u222E\u2211\u221A\u22A5\u2220\u221F\u22BF\u2235\u2229\u222A"],
      ["b0a1", "\u4E9C\u5516\u5A03\u963F\u54C0\u611B\u6328\u59F6\u9022\u8475\u831C\u7A50\u60AA\u63E1\u6E25\u65ED\u8466\u82A6\u9BF5\u6893\u5727\u65A1\u6271\u5B9B\u59D0\u867B\u98F4\u7D62\u7DBE\u9B8E\u6216\u7C9F\u88B7\u5B89\u5EB5\u6309\u6697\u6848\u95C7\u978D\u674F\u4EE5\u4F0A\u4F4D\u4F9D\u5049\u56F2\u5937\u59D4\u5A01\u5C09\u60DF\u610F\u6170\u6613\u6905\u70BA\u754F\u7570\u79FB\u7DAD\u7DEF\u80C3\u840E\u8863\u8B02\u9055\u907A\u533B\u4E95\u4EA5\u57DF\u80B2\u90C1\u78EF\u4E00\u58F1\u6EA2\u9038\u7A32\u8328\u828B\u9C2F\u5141\u5370\u54BD\u54E1\u56E0\u59FB\u5F15\u98F2\u6DEB\u80E4\u852D"],
      ["b1a1", "\u9662\u9670\u96A0\u97FB\u540B\u53F3\u5B87\u70CF\u7FBD\u8FC2\u96E8\u536F\u9D5C\u7ABA\u4E11\u7893\u81FC\u6E26\u5618\u5504\u6B1D\u851A\u9C3B\u59E5\u53A9\u6D66\u74DC\u958F\u5642\u4E91\u904B\u96F2\u834F\u990C\u53E1\u55B6\u5B30\u5F71\u6620\u66F3\u6804\u6C38\u6CF3\u6D29\u745B\u76C8\u7A4E\u9834\u82F1\u885B\u8A60\u92ED\u6DB2\u75AB\u76CA\u99C5\u60A6\u8B01\u8D8A\u95B2\u698E\u53AD\u5186\u5712\u5830\u5944\u5BB4\u5EF6\u6028\u63A9\u63F4\u6CBF\u6F14\u708E\u7114\u7159\u71D5\u733F\u7E01\u8276\u82D1\u8597\u9060\u925B\u9D1B\u5869\u65BC\u6C5A\u7525\u51F9\u592E\u5965\u5F80\u5FDC"],
      ["b2a1", "\u62BC\u65FA\u6A2A\u6B27\u6BB4\u738B\u7FC1\u8956\u9D2C\u9D0E\u9EC4\u5CA1\u6C96\u837B\u5104\u5C4B\u61B6\u81C6\u6876\u7261\u4E59\u4FFA\u5378\u6069\u6E29\u7A4F\u97F3\u4E0B\u5316\u4EEE\u4F55\u4F3D\u4FA1\u4F73\u52A0\u53EF\u5609\u590F\u5AC1\u5BB6\u5BE1\u79D1\u6687\u679C\u67B6\u6B4C\u6CB3\u706B\u73C2\u798D\u79BE\u7A3C\u7B87\u82B1\u82DB\u8304\u8377\u83EF\u83D3\u8766\u8AB2\u5629\u8CA8\u8FE6\u904E\u971E\u868A\u4FC4\u5CE8\u6211\u7259\u753B\u81E5\u82BD\u86FE\u8CC0\u96C5\u9913\u99D5\u4ECB\u4F1A\u89E3\u56DE\u584A\u58CA\u5EFB\u5FEB\u602A\u6094\u6062\u61D0\u6212\u62D0\u6539"],
      ["b3a1", "\u9B41\u6666\u68B0\u6D77\u7070\u754C\u7686\u7D75\u82A5\u87F9\u958B\u968E\u8C9D\u51F1\u52BE\u5916\u54B3\u5BB3\u5D16\u6168\u6982\u6DAF\u788D\u84CB\u8857\u8A72\u93A7\u9AB8\u6D6C\u99A8\u86D9\u57A3\u67FF\u86CE\u920E\u5283\u5687\u5404\u5ED3\u62E1\u64B9\u683C\u6838\u6BBB\u7372\u78BA\u7A6B\u899A\u89D2\u8D6B\u8F03\u90ED\u95A3\u9694\u9769\u5B66\u5CB3\u697D\u984D\u984E\u639B\u7B20\u6A2B\u6A7F\u68B6\u9C0D\u6F5F\u5272\u559D\u6070\u62EC\u6D3B\u6E07\u6ED1\u845B\u8910\u8F44\u4E14\u9C39\u53F6\u691B\u6A3A\u9784\u682A\u515C\u7AC3\u84B2\u91DC\u938C\u565B\u9D28\u6822\u8305\u8431"],
      ["b4a1", "\u7CA5\u5208\u82C5\u74E6\u4E7E\u4F83\u51A0\u5BD2\u520A\u52D8\u52E7\u5DFB\u559A\u582A\u59E6\u5B8C\u5B98\u5BDB\u5E72\u5E79\u60A3\u611F\u6163\u61BE\u63DB\u6562\u67D1\u6853\u68FA\u6B3E\u6B53\u6C57\u6F22\u6F97\u6F45\u74B0\u7518\u76E3\u770B\u7AFF\u7BA1\u7C21\u7DE9\u7F36\u7FF0\u809D\u8266\u839E\u89B3\u8ACC\u8CAB\u9084\u9451\u9593\u9591\u95A2\u9665\u97D3\u9928\u8218\u4E38\u542B\u5CB8\u5DCC\u73A9\u764C\u773C\u5CA9\u7FEB\u8D0B\u96C1\u9811\u9854\u9858\u4F01\u4F0E\u5371\u559C\u5668\u57FA\u5947\u5B09\u5BC4\u5C90\u5E0C\u5E7E\u5FCC\u63EE\u673A\u65D7\u65E2\u671F\u68CB\u68C4"],
      ["b5a1", "\u6A5F\u5E30\u6BC5\u6C17\u6C7D\u757F\u7948\u5B63\u7A00\u7D00\u5FBD\u898F\u8A18\u8CB4\u8D77\u8ECC\u8F1D\u98E2\u9A0E\u9B3C\u4E80\u507D\u5100\u5993\u5B9C\u622F\u6280\u64EC\u6B3A\u72A0\u7591\u7947\u7FA9\u87FB\u8ABC\u8B70\u63AC\u83CA\u97A0\u5409\u5403\u55AB\u6854\u6A58\u8A70\u7827\u6775\u9ECD\u5374\u5BA2\u811A\u8650\u9006\u4E18\u4E45\u4EC7\u4F11\u53CA\u5438\u5BAE\u5F13\u6025\u6551\u673D\u6C42\u6C72\u6CE3\u7078\u7403\u7A76\u7AAE\u7B08\u7D1A\u7CFE\u7D66\u65E7\u725B\u53BB\u5C45\u5DE8\u62D2\u62E0\u6319\u6E20\u865A\u8A31\u8DDD\u92F8\u6F01\u79A6\u9B5A\u4EA8\u4EAB\u4EAC"],
      ["b6a1", "\u4F9B\u4FA0\u50D1\u5147\u7AF6\u5171\u51F6\u5354\u5321\u537F\u53EB\u55AC\u5883\u5CE1\u5F37\u5F4A\u602F\u6050\u606D\u631F\u6559\u6A4B\u6CC1\u72C2\u72ED\u77EF\u80F8\u8105\u8208\u854E\u90F7\u93E1\u97FF\u9957\u9A5A\u4EF0\u51DD\u5C2D\u6681\u696D\u5C40\u66F2\u6975\u7389\u6850\u7C81\u50C5\u52E4\u5747\u5DFE\u9326\u65A4\u6B23\u6B3D\u7434\u7981\u79BD\u7B4B\u7DCA\u82B9\u83CC\u887F\u895F\u8B39\u8FD1\u91D1\u541F\u9280\u4E5D\u5036\u53E5\u533A\u72D7\u7396\u77E9\u82E6\u8EAF\u99C6\u99C8\u99D2\u5177\u611A\u865E\u55B0\u7A7A\u5076\u5BD3\u9047\u9685\u4E32\u6ADB\u91E7\u5C51\u5C48"],
      ["b7a1", "\u6398\u7A9F\u6C93\u9774\u8F61\u7AAA\u718A\u9688\u7C82\u6817\u7E70\u6851\u936C\u52F2\u541B\u85AB\u8A13\u7FA4\u8ECD\u90E1\u5366\u8888\u7941\u4FC2\u50BE\u5211\u5144\u5553\u572D\u73EA\u578B\u5951\u5F62\u5F84\u6075\u6176\u6167\u61A9\u63B2\u643A\u656C\u666F\u6842\u6E13\u7566\u7A3D\u7CFB\u7D4C\u7D99\u7E4B\u7F6B\u830E\u834A\u86CD\u8A08\u8A63\u8B66\u8EFD\u981A\u9D8F\u82B8\u8FCE\u9BE8\u5287\u621F\u6483\u6FC0\u9699\u6841\u5091\u6B20\u6C7A\u6F54\u7A74\u7D50\u8840\u8A23\u6708\u4EF6\u5039\u5026\u5065\u517C\u5238\u5263\u55A7\u570F\u5805\u5ACC\u5EFA\u61B2\u61F8\u62F3\u6372"],
      ["b8a1", "\u691C\u6A29\u727D\u72AC\u732E\u7814\u786F\u7D79\u770C\u80A9\u898B\u8B19\u8CE2\u8ED2\u9063\u9375\u967A\u9855\u9A13\u9E78\u5143\u539F\u53B3\u5E7B\u5F26\u6E1B\u6E90\u7384\u73FE\u7D43\u8237\u8A00\u8AFA\u9650\u4E4E\u500B\u53E4\u547C\u56FA\u59D1\u5B64\u5DF1\u5EAB\u5F27\u6238\u6545\u67AF\u6E56\u72D0\u7CCA\u88B4\u80A1\u80E1\u83F0\u864E\u8A87\u8DE8\u9237\u96C7\u9867\u9F13\u4E94\u4E92\u4F0D\u5348\u5449\u543E\u5A2F\u5F8C\u5FA1\u609F\u68A7\u6A8E\u745A\u7881\u8A9E\u8AA4\u8B77\u9190\u4E5E\u9BC9\u4EA4\u4F7C\u4FAF\u5019\u5016\u5149\u516C\u529F\u52B9\u52FE\u539A\u53E3\u5411"],
      ["b9a1", "\u540E\u5589\u5751\u57A2\u597D\u5B54\u5B5D\u5B8F\u5DE5\u5DE7\u5DF7\u5E78\u5E83\u5E9A\u5EB7\u5F18\u6052\u614C\u6297\u62D8\u63A7\u653B\u6602\u6643\u66F4\u676D\u6821\u6897\u69CB\u6C5F\u6D2A\u6D69\u6E2F\u6E9D\u7532\u7687\u786C\u7A3F\u7CE0\u7D05\u7D18\u7D5E\u7DB1\u8015\u8003\u80AF\u80B1\u8154\u818F\u822A\u8352\u884C\u8861\u8B1B\u8CA2\u8CFC\u90CA\u9175\u9271\u783F\u92FC\u95A4\u964D\u9805\u9999\u9AD8\u9D3B\u525B\u52AB\u53F7\u5408\u58D5\u62F7\u6FE0\u8C6A\u8F5F\u9EB9\u514B\u523B\u544A\u56FD\u7A40\u9177\u9D60\u9ED2\u7344\u6F09\u8170\u7511\u5FFD\u60DA\u9AA8\u72DB\u8FBC"],
      ["baa1", "\u6B64\u9803\u4ECA\u56F0\u5764\u58BE\u5A5A\u6068\u61C7\u660F\u6606\u6839\u68B1\u6DF7\u75D5\u7D3A\u826E\u9B42\u4E9B\u4F50\u53C9\u5506\u5D6F\u5DE6\u5DEE\u67FB\u6C99\u7473\u7802\u8A50\u9396\u88DF\u5750\u5EA7\u632B\u50B5\u50AC\u518D\u6700\u54C9\u585E\u59BB\u5BB0\u5F69\u624D\u63A1\u683D\u6B73\u6E08\u707D\u91C7\u7280\u7815\u7826\u796D\u658E\u7D30\u83DC\u88C1\u8F09\u969B\u5264\u5728\u6750\u7F6A\u8CA1\u51B4\u5742\u962A\u583A\u698A\u80B4\u54B2\u5D0E\u57FC\u7895\u9DFA\u4F5C\u524A\u548B\u643E\u6628\u6714\u67F5\u7A84\u7B56\u7D22\u932F\u685C\u9BAD\u7B39\u5319\u518A\u5237"],
      ["bba1", "\u5BDF\u62F6\u64AE\u64E6\u672D\u6BBA\u85A9\u96D1\u7690\u9BD6\u634C\u9306\u9BAB\u76BF\u6652\u4E09\u5098\u53C2\u5C71\u60E8\u6492\u6563\u685F\u71E6\u73CA\u7523\u7B97\u7E82\u8695\u8B83\u8CDB\u9178\u9910\u65AC\u66AB\u6B8B\u4ED5\u4ED4\u4F3A\u4F7F\u523A\u53F8\u53F2\u55E3\u56DB\u58EB\u59CB\u59C9\u59FF\u5B50\u5C4D\u5E02\u5E2B\u5FD7\u601D\u6307\u652F\u5B5C\u65AF\u65BD\u65E8\u679D\u6B62\u6B7B\u6C0F\u7345\u7949\u79C1\u7CF8\u7D19\u7D2B\u80A2\u8102\u81F3\u8996\u8A5E\u8A69\u8A66\u8A8C\u8AEE\u8CC7\u8CDC\u96CC\u98FC\u6B6F\u4E8B\u4F3C\u4F8D\u5150\u5B57\u5BFA\u6148\u6301\u6642"],
      ["bca1", "\u6B21\u6ECB\u6CBB\u723E\u74BD\u75D4\u78C1\u793A\u800C\u8033\u81EA\u8494\u8F9E\u6C50\u9E7F\u5F0F\u8B58\u9D2B\u7AFA\u8EF8\u5B8D\u96EB\u4E03\u53F1\u57F7\u5931\u5AC9\u5BA4\u6089\u6E7F\u6F06\u75BE\u8CEA\u5B9F\u8500\u7BE0\u5072\u67F4\u829D\u5C61\u854A\u7E1E\u820E\u5199\u5C04\u6368\u8D66\u659C\u716E\u793E\u7D17\u8005\u8B1D\u8ECA\u906E\u86C7\u90AA\u501F\u52FA\u5C3A\u6753\u707C\u7235\u914C\u91C8\u932B\u82E5\u5BC2\u5F31\u60F9\u4E3B\u53D6\u5B88\u624B\u6731\u6B8A\u72E9\u73E0\u7A2E\u816B\u8DA3\u9152\u9996\u5112\u53D7\u546A\u5BFF\u6388\u6A39\u7DAC\u9700\u56DA\u53CE\u5468"],
      ["bda1", "\u5B97\u5C31\u5DDE\u4FEE\u6101\u62FE\u6D32\u79C0\u79CB\u7D42\u7E4D\u7FD2\u81ED\u821F\u8490\u8846\u8972\u8B90\u8E74\u8F2F\u9031\u914B\u916C\u96C6\u919C\u4EC0\u4F4F\u5145\u5341\u5F93\u620E\u67D4\u6C41\u6E0B\u7363\u7E26\u91CD\u9283\u53D4\u5919\u5BBF\u6DD1\u795D\u7E2E\u7C9B\u587E\u719F\u51FA\u8853\u8FF0\u4FCA\u5CFB\u6625\u77AC\u7AE3\u821C\u99FF\u51C6\u5FAA\u65EC\u696F\u6B89\u6DF3\u6E96\u6F64\u76FE\u7D14\u5DE1\u9075\u9187\u9806\u51E6\u521D\u6240\u6691\u66D9\u6E1A\u5EB6\u7DD2\u7F72\u66F8\u85AF\u85F7\u8AF8\u52A9\u53D9\u5973\u5E8F\u5F90\u6055\u92E4\u9664\u50B7\u511F"],
      ["bea1", "\u52DD\u5320\u5347\u53EC\u54E8\u5546\u5531\u5617\u5968\u59BE\u5A3C\u5BB5\u5C06\u5C0F\u5C11\u5C1A\u5E84\u5E8A\u5EE0\u5F70\u627F\u6284\u62DB\u638C\u6377\u6607\u660C\u662D\u6676\u677E\u68A2\u6A1F\u6A35\u6CBC\u6D88\u6E09\u6E58\u713C\u7126\u7167\u75C7\u7701\u785D\u7901\u7965\u79F0\u7AE0\u7B11\u7CA7\u7D39\u8096\u83D6\u848B\u8549\u885D\u88F3\u8A1F\u8A3C\u8A54\u8A73\u8C61\u8CDE\u91A4\u9266\u937E\u9418\u969C\u9798\u4E0A\u4E08\u4E1E\u4E57\u5197\u5270\u57CE\u5834\u58CC\u5B22\u5E38\u60C5\u64FE\u6761\u6756\u6D44\u72B6\u7573\u7A63\u84B8\u8B72\u91B8\u9320\u5631\u57F4\u98FE"],
      ["bfa1", "\u62ED\u690D\u6B96\u71ED\u7E54\u8077\u8272\u89E6\u98DF\u8755\u8FB1\u5C3B\u4F38\u4FE1\u4FB5\u5507\u5A20\u5BDD\u5BE9\u5FC3\u614E\u632F\u65B0\u664B\u68EE\u699B\u6D78\u6DF1\u7533\u75B9\u771F\u795E\u79E6\u7D33\u81E3\u82AF\u85AA\u89AA\u8A3A\u8EAB\u8F9B\u9032\u91DD\u9707\u4EBA\u4EC1\u5203\u5875\u58EC\u5C0B\u751A\u5C3D\u814E\u8A0A\u8FC5\u9663\u976D\u7B25\u8ACF\u9808\u9162\u56F3\u53A8\u9017\u5439\u5782\u5E25\u63A8\u6C34\u708A\u7761\u7C8B\u7FE0\u8870\u9042\u9154\u9310\u9318\u968F\u745E\u9AC4\u5D07\u5D69\u6570\u67A2\u8DA8\u96DB\u636E\u6749\u6919\u83C5\u9817\u96C0\u88FE"],
      ["c0a1", "\u6F84\u647A\u5BF8\u4E16\u702C\u755D\u662F\u51C4\u5236\u52E2\u59D3\u5F81\u6027\u6210\u653F\u6574\u661F\u6674\u68F2\u6816\u6B63\u6E05\u7272\u751F\u76DB\u7CBE\u8056\u58F0\u88FD\u897F\u8AA0\u8A93\u8ACB\u901D\u9192\u9752\u9759\u6589\u7A0E\u8106\u96BB\u5E2D\u60DC\u621A\u65A5\u6614\u6790\u77F3\u7A4D\u7C4D\u7E3E\u810A\u8CAC\u8D64\u8DE1\u8E5F\u78A9\u5207\u62D9\u63A5\u6442\u6298\u8A2D\u7A83\u7BC0\u8AAC\u96EA\u7D76\u820C\u8749\u4ED9\u5148\u5343\u5360\u5BA3\u5C02\u5C16\u5DDD\u6226\u6247\u64B0\u6813\u6834\u6CC9\u6D45\u6D17\u67D3\u6F5C\u714E\u717D\u65CB\u7A7F\u7BAD\u7DDA"],
      ["c1a1", "\u7E4A\u7FA8\u817A\u821B\u8239\u85A6\u8A6E\u8CCE\u8DF5\u9078\u9077\u92AD\u9291\u9583\u9BAE\u524D\u5584\u6F38\u7136\u5168\u7985\u7E55\u81B3\u7CCE\u564C\u5851\u5CA8\u63AA\u66FE\u66FD\u695A\u72D9\u758F\u758E\u790E\u7956\u79DF\u7C97\u7D20\u7D44\u8607\u8A34\u963B\u9061\u9F20\u50E7\u5275\u53CC\u53E2\u5009\u55AA\u58EE\u594F\u723D\u5B8B\u5C64\u531D\u60E3\u60F3\u635C\u6383\u633F\u63BB\u64CD\u65E9\u66F9\u5DE3\u69CD\u69FD\u6F15\u71E5\u4E89\u75E9\u76F8\u7A93\u7CDF\u7DCF\u7D9C\u8061\u8349\u8358\u846C\u84BC\u85FB\u88C5\u8D70\u9001\u906D\u9397\u971C\u9A12\u50CF\u5897\u618E"],
      ["c2a1", "\u81D3\u8535\u8D08\u9020\u4FC3\u5074\u5247\u5373\u606F\u6349\u675F\u6E2C\u8DB3\u901F\u4FD7\u5C5E\u8CCA\u65CF\u7D9A\u5352\u8896\u5176\u63C3\u5B58\u5B6B\u5C0A\u640D\u6751\u905C\u4ED6\u591A\u592A\u6C70\u8A51\u553E\u5815\u59A5\u60F0\u6253\u67C1\u8235\u6955\u9640\u99C4\u9A28\u4F53\u5806\u5BFE\u8010\u5CB1\u5E2F\u5F85\u6020\u614B\u6234\u66FF\u6CF0\u6EDE\u80CE\u817F\u82D4\u888B\u8CB8\u9000\u902E\u968A\u9EDB\u9BDB\u4EE3\u53F0\u5927\u7B2C\u918D\u984C\u9DF9\u6EDD\u7027\u5353\u5544\u5B85\u6258\u629E\u62D3\u6CA2\u6FEF\u7422\u8A17\u9438\u6FC1\u8AFE\u8338\u51E7\u86F8\u53EA"],
      ["c3a1", "\u53E9\u4F46\u9054\u8FB0\u596A\u8131\u5DFD\u7AEA\u8FBF\u68DA\u8C37\u72F8\u9C48\u6A3D\u8AB0\u4E39\u5358\u5606\u5766\u62C5\u63A2\u65E6\u6B4E\u6DE1\u6E5B\u70AD\u77ED\u7AEF\u7BAA\u7DBB\u803D\u80C6\u86CB\u8A95\u935B\u56E3\u58C7\u5F3E\u65AD\u6696\u6A80\u6BB5\u7537\u8AC7\u5024\u77E5\u5730\u5F1B\u6065\u667A\u6C60\u75F4\u7A1A\u7F6E\u81F4\u8718\u9045\u99B3\u7BC9\u755C\u7AF9\u7B51\u84C4\u9010\u79E9\u7A92\u8336\u5AE1\u7740\u4E2D\u4EF2\u5B99\u5FE0\u62BD\u663C\u67F1\u6CE8\u866B\u8877\u8A3B\u914E\u92F3\u99D0\u6A17\u7026\u732A\u82E7\u8457\u8CAF\u4E01\u5146\u51CB\u558B\u5BF5"],
      ["c4a1", "\u5E16\u5E33\u5E81\u5F14\u5F35\u5F6B\u5FB4\u61F2\u6311\u66A2\u671D\u6F6E\u7252\u753A\u773A\u8074\u8139\u8178\u8776\u8ABF\u8ADC\u8D85\u8DF3\u929A\u9577\u9802\u9CE5\u52C5\u6357\u76F4\u6715\u6C88\u73CD\u8CC3\u93AE\u9673\u6D25\u589C\u690E\u69CC\u8FFD\u939A\u75DB\u901A\u585A\u6802\u63B4\u69FB\u4F43\u6F2C\u67D8\u8FBB\u8526\u7DB4\u9354\u693F\u6F70\u576A\u58F7\u5B2C\u7D2C\u722A\u540A\u91E3\u9DB4\u4EAD\u4F4E\u505C\u5075\u5243\u8C9E\u5448\u5824\u5B9A\u5E1D\u5E95\u5EAD\u5EF7\u5F1F\u608C\u62B5\u633A\u63D0\u68AF\u6C40\u7887\u798E\u7A0B\u7DE0\u8247\u8A02\u8AE6\u8E44\u9013"],
      ["c5a1", "\u90B8\u912D\u91D8\u9F0E\u6CE5\u6458\u64E2\u6575\u6EF4\u7684\u7B1B\u9069\u93D1\u6EBA\u54F2\u5FB9\u64A4\u8F4D\u8FED\u9244\u5178\u586B\u5929\u5C55\u5E97\u6DFB\u7E8F\u751C\u8CBC\u8EE2\u985B\u70B9\u4F1D\u6BBF\u6FB1\u7530\u96FB\u514E\u5410\u5835\u5857\u59AC\u5C60\u5F92\u6597\u675C\u6E21\u767B\u83DF\u8CED\u9014\u90FD\u934D\u7825\u783A\u52AA\u5EA6\u571F\u5974\u6012\u5012\u515A\u51AC\u51CD\u5200\u5510\u5854\u5858\u5957\u5B95\u5CF6\u5D8B\u60BC\u6295\u642D\u6771\u6843\u68BC\u68DF\u76D7\u6DD8\u6E6F\u6D9B\u706F\u71C8\u5F53\u75D8\u7977\u7B49\u7B54\u7B52\u7CD6\u7D71\u5230"],
      ["c6a1", "\u8463\u8569\u85E4\u8A0E\u8B04\u8C46\u8E0F\u9003\u900F\u9419\u9676\u982D\u9A30\u95D8\u50CD\u52D5\u540C\u5802\u5C0E\u61A7\u649E\u6D1E\u77B3\u7AE5\u80F4\u8404\u9053\u9285\u5CE0\u9D07\u533F\u5F97\u5FB3\u6D9C\u7279\u7763\u79BF\u7BE4\u6BD2\u72EC\u8AAD\u6803\u6A61\u51F8\u7A81\u6934\u5C4A\u9CF6\u82EB\u5BC5\u9149\u701E\u5678\u5C6F\u60C7\u6566\u6C8C\u8C5A\u9041\u9813\u5451\u66C7\u920D\u5948\u90A3\u5185\u4E4D\u51EA\u8599\u8B0E\u7058\u637A\u934B\u6962\u99B4\u7E04\u7577\u5357\u6960\u8EDF\u96E3\u6C5D\u4E8C\u5C3C\u5F10\u8FE9\u5302\u8CD1\u8089\u8679\u5EFF\u65E5\u4E73\u5165"],
      ["c7a1", "\u5982\u5C3F\u97EE\u4EFB\u598A\u5FCD\u8A8D\u6FE1\u79B0\u7962\u5BE7\u8471\u732B\u71B1\u5E74\u5FF5\u637B\u649A\u71C3\u7C98\u4E43\u5EFC\u4E4B\u57DC\u56A2\u60A9\u6FC3\u7D0D\u80FD\u8133\u81BF\u8FB2\u8997\u86A4\u5DF4\u628A\u64AD\u8987\u6777\u6CE2\u6D3E\u7436\u7834\u5A46\u7F75\u82AD\u99AC\u4FF3\u5EC3\u62DD\u6392\u6557\u676F\u76C3\u724C\u80CC\u80BA\u8F29\u914D\u500D\u57F9\u5A92\u6885\u6973\u7164\u72FD\u8CB7\u58F2\u8CE0\u966A\u9019\u877F\u79E4\u77E7\u8429\u4F2F\u5265\u535A\u62CD\u67CF\u6CCA\u767D\u7B94\u7C95\u8236\u8584\u8FEB\u66DD\u6F20\u7206\u7E1B\u83AB\u99C1\u9EA6"],
      ["c8a1", "\u51FD\u7BB1\u7872\u7BB8\u8087\u7B48\u6AE8\u5E61\u808C\u7551\u7560\u516B\u9262\u6E8C\u767A\u9197\u9AEA\u4F10\u7F70\u629C\u7B4F\u95A5\u9CE9\u567A\u5859\u86E4\u96BC\u4F34\u5224\u534A\u53CD\u53DB\u5E06\u642C\u6591\u677F\u6C3E\u6C4E\u7248\u72AF\u73ED\u7554\u7E41\u822C\u85E9\u8CA9\u7BC4\u91C6\u7169\u9812\u98EF\u633D\u6669\u756A\u76E4\u78D0\u8543\u86EE\u532A\u5351\u5426\u5983\u5E87\u5F7C\u60B2\u6249\u6279\u62AB\u6590\u6BD4\u6CCC\u75B2\u76AE\u7891\u79D8\u7DCB\u7F77\u80A5\u88AB\u8AB9\u8CBB\u907F\u975E\u98DB\u6A0B\u7C38\u5099\u5C3E\u5FAE\u6787\u6BD8\u7435\u7709\u7F8E"],
      ["c9a1", "\u9F3B\u67CA\u7A17\u5339\u758B\u9AED\u5F66\u819D\u83F1\u8098\u5F3C\u5FC5\u7562\u7B46\u903C\u6867\u59EB\u5A9B\u7D10\u767E\u8B2C\u4FF5\u5F6A\u6A19\u6C37\u6F02\u74E2\u7968\u8868\u8A55\u8C79\u5EDF\u63CF\u75C5\u79D2\u82D7\u9328\u92F2\u849C\u86ED\u9C2D\u54C1\u5F6C\u658C\u6D5C\u7015\u8CA7\u8CD3\u983B\u654F\u74F6\u4E0D\u4ED8\u57E0\u592B\u5A66\u5BCC\u51A8\u5E03\u5E9C\u6016\u6276\u6577\u65A7\u666E\u6D6E\u7236\u7B26\u8150\u819A\u8299\u8B5C\u8CA0\u8CE6\u8D74\u961C\u9644\u4FAE\u64AB\u6B66\u821E\u8461\u856A\u90E8\u5C01\u6953\u98A8\u847A\u8557\u4F0F\u526F\u5FA9\u5E45\u670D"],
      ["caa1", "\u798F\u8179\u8907\u8986\u6DF5\u5F17\u6255\u6CB8\u4ECF\u7269\u9B92\u5206\u543B\u5674\u58B3\u61A4\u626E\u711A\u596E\u7C89\u7CDE\u7D1B\u96F0\u6587\u805E\u4E19\u4F75\u5175\u5840\u5E63\u5E73\u5F0A\u67C4\u4E26\u853D\u9589\u965B\u7C73\u9801\u50FB\u58C1\u7656\u78A7\u5225\u77A5\u8511\u7B86\u504F\u5909\u7247\u7BC7\u7DE8\u8FBA\u8FD4\u904D\u4FBF\u52C9\u5A29\u5F01\u97AD\u4FDD\u8217\u92EA\u5703\u6355\u6B69\u752B\u88DC\u8F14\u7A42\u52DF\u5893\u6155\u620A\u66AE\u6BCD\u7C3F\u83E9\u5023\u4FF8\u5305\u5446\u5831\u5949\u5B9D\u5CF0\u5CEF\u5D29\u5E96\u62B1\u6367\u653E\u65B9\u670B"],
      ["cba1", "\u6CD5\u6CE1\u70F9\u7832\u7E2B\u80DE\u82B3\u840C\u84EC\u8702\u8912\u8A2A\u8C4A\u90A6\u92D2\u98FD\u9CF3\u9D6C\u4E4F\u4EA1\u508D\u5256\u574A\u59A8\u5E3D\u5FD8\u5FD9\u623F\u66B4\u671B\u67D0\u68D2\u5192\u7D21\u80AA\u81A8\u8B00\u8C8C\u8CBF\u927E\u9632\u5420\u982C\u5317\u50D5\u535C\u58A8\u64B2\u6734\u7267\u7766\u7A46\u91E6\u52C3\u6CA1\u6B86\u5800\u5E4C\u5954\u672C\u7FFB\u51E1\u76C6\u6469\u78E8\u9B54\u9EBB\u57CB\u59B9\u6627\u679A\u6BCE\u54E9\u69D9\u5E55\u819C\u6795\u9BAA\u67FE\u9C52\u685D\u4EA6\u4FE3\u53C8\u62B9\u672B\u6CAB\u8FC4\u4FAD\u7E6D\u9EBF\u4E07\u6162\u6E80"],
      ["cca1", "\u6F2B\u8513\u5473\u672A\u9B45\u5DF3\u7B95\u5CAC\u5BC6\u871C\u6E4A\u84D1\u7A14\u8108\u5999\u7C8D\u6C11\u7720\u52D9\u5922\u7121\u725F\u77DB\u9727\u9D61\u690B\u5A7F\u5A18\u51A5\u540D\u547D\u660E\u76DF\u8FF7\u9298\u9CF4\u59EA\u725D\u6EC5\u514D\u68C9\u7DBF\u7DEC\u9762\u9EBA\u6478\u6A21\u8302\u5984\u5B5F\u6BDB\u731B\u76F2\u7DB2\u8017\u8499\u5132\u6728\u9ED9\u76EE\u6762\u52FF\u9905\u5C24\u623B\u7C7E\u8CB0\u554F\u60B6\u7D0B\u9580\u5301\u4E5F\u51B6\u591C\u723A\u8036\u91CE\u5F25\u77E2\u5384\u5F79\u7D04\u85AC\u8A33\u8E8D\u9756\u67F3\u85AE\u9453\u6109\u6108\u6CB9\u7652"],
      ["cda1", "\u8AED\u8F38\u552F\u4F51\u512A\u52C7\u53CB\u5BA5\u5E7D\u60A0\u6182\u63D6\u6709\u67DA\u6E67\u6D8C\u7336\u7337\u7531\u7950\u88D5\u8A98\u904A\u9091\u90F5\u96C4\u878D\u5915\u4E88\u4F59\u4E0E\u8A89\u8F3F\u9810\u50AD\u5E7C\u5996\u5BB9\u5EB8\u63DA\u63FA\u64C1\u66DC\u694A\u69D8\u6D0B\u6EB6\u7194\u7528\u7AAF\u7F8A\u8000\u8449\u84C9\u8981\u8B21\u8E0A\u9065\u967D\u990A\u617E\u6291\u6B32\u6C83\u6D74\u7FCC\u7FFC\u6DC0\u7F85\u87BA\u88F8\u6765\u83B1\u983C\u96F7\u6D1B\u7D61\u843D\u916A\u4E71\u5375\u5D50\u6B04\u6FEB\u85CD\u862D\u89A7\u5229\u540F\u5C65\u674E\u68A8\u7406\u7483"],
      ["cea1", "\u75E2\u88CF\u88E1\u91CC\u96E2\u9678\u5F8B\u7387\u7ACB\u844E\u63A0\u7565\u5289\u6D41\u6E9C\u7409\u7559\u786B\u7C92\u9686\u7ADC\u9F8D\u4FB6\u616E\u65C5\u865C\u4E86\u4EAE\u50DA\u4E21\u51CC\u5BEE\u6599\u6881\u6DBC\u731F\u7642\u77AD\u7A1C\u7CE7\u826F\u8AD2\u907C\u91CF\u9675\u9818\u529B\u7DD1\u502B\u5398\u6797\u6DCB\u71D0\u7433\u81E8\u8F2A\u96A3\u9C57\u9E9F\u7460\u5841\u6D99\u7D2F\u985E\u4EE4\u4F36\u4F8B\u51B7\u52B1\u5DBA\u601C\u73B2\u793C\u82D3\u9234\u96B7\u96F6\u970A\u9E97\u9F62\u66A6\u6B74\u5217\u52A3\u70C8\u88C2\u5EC9\u604B\u6190\u6F23\u7149\u7C3E\u7DF4\u806F"],
      ["cfa1", "\u84EE\u9023\u932C\u5442\u9B6F\u6AD3\u7089\u8CC2\u8DEF\u9732\u52B4\u5A41\u5ECA\u5F04\u6717\u697C\u6994\u6D6A\u6F0F\u7262\u72FC\u7BED\u8001\u807E\u874B\u90CE\u516D\u9E93\u7984\u808B\u9332\u8AD6\u502D\u548C\u8A71\u6B6A\u8CC4\u8107\u60D1\u67A0\u9DF2\u4E99\u4E98\u9C10\u8A6B\u85C1\u8568\u6900\u6E7E\u7897\u8155"],
      ["d0a1", "\u5F0C\u4E10\u4E15\u4E2A\u4E31\u4E36\u4E3C\u4E3F\u4E42\u4E56\u4E58\u4E82\u4E85\u8C6B\u4E8A\u8212\u5F0D\u4E8E\u4E9E\u4E9F\u4EA0\u4EA2\u4EB0\u4EB3\u4EB6\u4ECE\u4ECD\u4EC4\u4EC6\u4EC2\u4ED7\u4EDE\u4EED\u4EDF\u4EF7\u4F09\u4F5A\u4F30\u4F5B\u4F5D\u4F57\u4F47\u4F76\u4F88\u4F8F\u4F98\u4F7B\u4F69\u4F70\u4F91\u4F6F\u4F86\u4F96\u5118\u4FD4\u4FDF\u4FCE\u4FD8\u4FDB\u4FD1\u4FDA\u4FD0\u4FE4\u4FE5\u501A\u5028\u5014\u502A\u5025\u5005\u4F1C\u4FF6\u5021\u5029\u502C\u4FFE\u4FEF\u5011\u5006\u5043\u5047\u6703\u5055\u5050\u5048\u505A\u5056\u506C\u5078\u5080\u509A\u5085\u50B4\u50B2"],
      ["d1a1", "\u50C9\u50CA\u50B3\u50C2\u50D6\u50DE\u50E5\u50ED\u50E3\u50EE\u50F9\u50F5\u5109\u5101\u5102\u5116\u5115\u5114\u511A\u5121\u513A\u5137\u513C\u513B\u513F\u5140\u5152\u514C\u5154\u5162\u7AF8\u5169\u516A\u516E\u5180\u5182\u56D8\u518C\u5189\u518F\u5191\u5193\u5195\u5196\u51A4\u51A6\u51A2\u51A9\u51AA\u51AB\u51B3\u51B1\u51B2\u51B0\u51B5\u51BD\u51C5\u51C9\u51DB\u51E0\u8655\u51E9\u51ED\u51F0\u51F5\u51FE\u5204\u520B\u5214\u520E\u5227\u522A\u522E\u5233\u5239\u524F\u5244\u524B\u524C\u525E\u5254\u526A\u5274\u5269\u5273\u527F\u527D\u528D\u5294\u5292\u5271\u5288\u5291\u8FA8"],
      ["d2a1", "\u8FA7\u52AC\u52AD\u52BC\u52B5\u52C1\u52CD\u52D7\u52DE\u52E3\u52E6\u98ED\u52E0\u52F3\u52F5\u52F8\u52F9\u5306\u5308\u7538\u530D\u5310\u530F\u5315\u531A\u5323\u532F\u5331\u5333\u5338\u5340\u5346\u5345\u4E17\u5349\u534D\u51D6\u535E\u5369\u536E\u5918\u537B\u5377\u5382\u5396\u53A0\u53A6\u53A5\u53AE\u53B0\u53B6\u53C3\u7C12\u96D9\u53DF\u66FC\u71EE\u53EE\u53E8\u53ED\u53FA\u5401\u543D\u5440\u542C\u542D\u543C\u542E\u5436\u5429\u541D\u544E\u548F\u5475\u548E\u545F\u5471\u5477\u5470\u5492\u547B\u5480\u5476\u5484\u5490\u5486\u54C7\u54A2\u54B8\u54A5\u54AC\u54C4\u54C8\u54A8"],
      ["d3a1", "\u54AB\u54C2\u54A4\u54BE\u54BC\u54D8\u54E5\u54E6\u550F\u5514\u54FD\u54EE\u54ED\u54FA\u54E2\u5539\u5540\u5563\u554C\u552E\u555C\u5545\u5556\u5557\u5538\u5533\u555D\u5599\u5580\u54AF\u558A\u559F\u557B\u557E\u5598\u559E\u55AE\u557C\u5583\u55A9\u5587\u55A8\u55DA\u55C5\u55DF\u55C4\u55DC\u55E4\u55D4\u5614\u55F7\u5616\u55FE\u55FD\u561B\u55F9\u564E\u5650\u71DF\u5634\u5636\u5632\u5638\u566B\u5664\u562F\u566C\u566A\u5686\u5680\u568A\u56A0\u5694\u568F\u56A5\u56AE\u56B6\u56B4\u56C2\u56BC\u56C1\u56C3\u56C0\u56C8\u56CE\u56D1\u56D3\u56D7\u56EE\u56F9\u5700\u56FF\u5704\u5709"],
      ["d4a1", "\u5708\u570B\u570D\u5713\u5718\u5716\u55C7\u571C\u5726\u5737\u5738\u574E\u573B\u5740\u574F\u5769\u57C0\u5788\u5761\u577F\u5789\u5793\u57A0\u57B3\u57A4\u57AA\u57B0\u57C3\u57C6\u57D4\u57D2\u57D3\u580A\u57D6\u57E3\u580B\u5819\u581D\u5872\u5821\u5862\u584B\u5870\u6BC0\u5852\u583D\u5879\u5885\u58B9\u589F\u58AB\u58BA\u58DE\u58BB\u58B8\u58AE\u58C5\u58D3\u58D1\u58D7\u58D9\u58D8\u58E5\u58DC\u58E4\u58DF\u58EF\u58FA\u58F9\u58FB\u58FC\u58FD\u5902\u590A\u5910\u591B\u68A6\u5925\u592C\u592D\u5932\u5938\u593E\u7AD2\u5955\u5950\u594E\u595A\u5958\u5962\u5960\u5967\u596C\u5969"],
      ["d5a1", "\u5978\u5981\u599D\u4F5E\u4FAB\u59A3\u59B2\u59C6\u59E8\u59DC\u598D\u59D9\u59DA\u5A25\u5A1F\u5A11\u5A1C\u5A09\u5A1A\u5A40\u5A6C\u5A49\u5A35\u5A36\u5A62\u5A6A\u5A9A\u5ABC\u5ABE\u5ACB\u5AC2\u5ABD\u5AE3\u5AD7\u5AE6\u5AE9\u5AD6\u5AFA\u5AFB\u5B0C\u5B0B\u5B16\u5B32\u5AD0\u5B2A\u5B36\u5B3E\u5B43\u5B45\u5B40\u5B51\u5B55\u5B5A\u5B5B\u5B65\u5B69\u5B70\u5B73\u5B75\u5B78\u6588\u5B7A\u5B80\u5B83\u5BA6\u5BB8\u5BC3\u5BC7\u5BC9\u5BD4\u5BD0\u5BE4\u5BE6\u5BE2\u5BDE\u5BE5\u5BEB\u5BF0\u5BF6\u5BF3\u5C05\u5C07\u5C08\u5C0D\u5C13\u5C20\u5C22\u5C28\u5C38\u5C39\u5C41\u5C46\u5C4E\u5C53"],
      ["d6a1", "\u5C50\u5C4F\u5B71\u5C6C\u5C6E\u4E62\u5C76\u5C79\u5C8C\u5C91\u5C94\u599B\u5CAB\u5CBB\u5CB6\u5CBC\u5CB7\u5CC5\u5CBE\u5CC7\u5CD9\u5CE9\u5CFD\u5CFA\u5CED\u5D8C\u5CEA\u5D0B\u5D15\u5D17\u5D5C\u5D1F\u5D1B\u5D11\u5D14\u5D22\u5D1A\u5D19\u5D18\u5D4C\u5D52\u5D4E\u5D4B\u5D6C\u5D73\u5D76\u5D87\u5D84\u5D82\u5DA2\u5D9D\u5DAC\u5DAE\u5DBD\u5D90\u5DB7\u5DBC\u5DC9\u5DCD\u5DD3\u5DD2\u5DD6\u5DDB\u5DEB\u5DF2\u5DF5\u5E0B\u5E1A\u5E19\u5E11\u5E1B\u5E36\u5E37\u5E44\u5E43\u5E40\u5E4E\u5E57\u5E54\u5E5F\u5E62\u5E64\u5E47\u5E75\u5E76\u5E7A\u9EBC\u5E7F\u5EA0\u5EC1\u5EC2\u5EC8\u5ED0\u5ECF"],
      ["d7a1", "\u5ED6\u5EE3\u5EDD\u5EDA\u5EDB\u5EE2\u5EE1\u5EE8\u5EE9\u5EEC\u5EF1\u5EF3\u5EF0\u5EF4\u5EF8\u5EFE\u5F03\u5F09\u5F5D\u5F5C\u5F0B\u5F11\u5F16\u5F29\u5F2D\u5F38\u5F41\u5F48\u5F4C\u5F4E\u5F2F\u5F51\u5F56\u5F57\u5F59\u5F61\u5F6D\u5F73\u5F77\u5F83\u5F82\u5F7F\u5F8A\u5F88\u5F91\u5F87\u5F9E\u5F99\u5F98\u5FA0\u5FA8\u5FAD\u5FBC\u5FD6\u5FFB\u5FE4\u5FF8\u5FF1\u5FDD\u60B3\u5FFF\u6021\u6060\u6019\u6010\u6029\u600E\u6031\u601B\u6015\u602B\u6026\u600F\u603A\u605A\u6041\u606A\u6077\u605F\u604A\u6046\u604D\u6063\u6043\u6064\u6042\u606C\u606B\u6059\u6081\u608D\u60E7\u6083\u609A"],
      ["d8a1", "\u6084\u609B\u6096\u6097\u6092\u60A7\u608B\u60E1\u60B8\u60E0\u60D3\u60B4\u5FF0\u60BD\u60C6\u60B5\u60D8\u614D\u6115\u6106\u60F6\u60F7\u6100\u60F4\u60FA\u6103\u6121\u60FB\u60F1\u610D\u610E\u6147\u613E\u6128\u6127\u614A\u613F\u613C\u612C\u6134\u613D\u6142\u6144\u6173\u6177\u6158\u6159\u615A\u616B\u6174\u616F\u6165\u6171\u615F\u615D\u6153\u6175\u6199\u6196\u6187\u61AC\u6194\u619A\u618A\u6191\u61AB\u61AE\u61CC\u61CA\u61C9\u61F7\u61C8\u61C3\u61C6\u61BA\u61CB\u7F79\u61CD\u61E6\u61E3\u61F6\u61FA\u61F4\u61FF\u61FD\u61FC\u61FE\u6200\u6208\u6209\u620D\u620C\u6214\u621B"],
      ["d9a1", "\u621E\u6221\u622A\u622E\u6230\u6232\u6233\u6241\u624E\u625E\u6263\u625B\u6260\u6268\u627C\u6282\u6289\u627E\u6292\u6293\u6296\u62D4\u6283\u6294\u62D7\u62D1\u62BB\u62CF\u62FF\u62C6\u64D4\u62C8\u62DC\u62CC\u62CA\u62C2\u62C7\u629B\u62C9\u630C\u62EE\u62F1\u6327\u6302\u6308\u62EF\u62F5\u6350\u633E\u634D\u641C\u634F\u6396\u638E\u6380\u63AB\u6376\u63A3\u638F\u6389\u639F\u63B5\u636B\u6369\u63BE\u63E9\u63C0\u63C6\u63E3\u63C9\u63D2\u63F6\u63C4\u6416\u6434\u6406\u6413\u6426\u6436\u651D\u6417\u6428\u640F\u6467\u646F\u6476\u644E\u652A\u6495\u6493\u64A5\u64A9\u6488\u64BC"],
      ["daa1", "\u64DA\u64D2\u64C5\u64C7\u64BB\u64D8\u64C2\u64F1\u64E7\u8209\u64E0\u64E1\u62AC\u64E3\u64EF\u652C\u64F6\u64F4\u64F2\u64FA\u6500\u64FD\u6518\u651C\u6505\u6524\u6523\u652B\u6534\u6535\u6537\u6536\u6538\u754B\u6548\u6556\u6555\u654D\u6558\u655E\u655D\u6572\u6578\u6582\u6583\u8B8A\u659B\u659F\u65AB\u65B7\u65C3\u65C6\u65C1\u65C4\u65CC\u65D2\u65DB\u65D9\u65E0\u65E1\u65F1\u6772\u660A\u6603\u65FB\u6773\u6635\u6636\u6634\u661C\u664F\u6644\u6649\u6641\u665E\u665D\u6664\u6667\u6668\u665F\u6662\u6670\u6683\u6688\u668E\u6689\u6684\u6698\u669D\u66C1\u66B9\u66C9\u66BE\u66BC"],
      ["dba1", "\u66C4\u66B8\u66D6\u66DA\u66E0\u663F\u66E6\u66E9\u66F0\u66F5\u66F7\u670F\u6716\u671E\u6726\u6727\u9738\u672E\u673F\u6736\u6741\u6738\u6737\u6746\u675E\u6760\u6759\u6763\u6764\u6789\u6770\u67A9\u677C\u676A\u678C\u678B\u67A6\u67A1\u6785\u67B7\u67EF\u67B4\u67EC\u67B3\u67E9\u67B8\u67E4\u67DE\u67DD\u67E2\u67EE\u67B9\u67CE\u67C6\u67E7\u6A9C\u681E\u6846\u6829\u6840\u684D\u6832\u684E\u68B3\u682B\u6859\u6863\u6877\u687F\u689F\u688F\u68AD\u6894\u689D\u689B\u6883\u6AAE\u68B9\u6874\u68B5\u68A0\u68BA\u690F\u688D\u687E\u6901\u68CA\u6908\u68D8\u6922\u6926\u68E1\u690C\u68CD"],
      ["dca1", "\u68D4\u68E7\u68D5\u6936\u6912\u6904\u68D7\u68E3\u6925\u68F9\u68E0\u68EF\u6928\u692A\u691A\u6923\u6921\u68C6\u6979\u6977\u695C\u6978\u696B\u6954\u697E\u696E\u6939\u6974\u693D\u6959\u6930\u6961\u695E\u695D\u6981\u696A\u69B2\u69AE\u69D0\u69BF\u69C1\u69D3\u69BE\u69CE\u5BE8\u69CA\u69DD\u69BB\u69C3\u69A7\u6A2E\u6991\u69A0\u699C\u6995\u69B4\u69DE\u69E8\u6A02\u6A1B\u69FF\u6B0A\u69F9\u69F2\u69E7\u6A05\u69B1\u6A1E\u69ED\u6A14\u69EB\u6A0A\u6A12\u6AC1\u6A23\u6A13\u6A44\u6A0C\u6A72\u6A36\u6A78\u6A47\u6A62\u6A59\u6A66\u6A48\u6A38\u6A22\u6A90\u6A8D\u6AA0\u6A84\u6AA2\u6AA3"],
      ["dda1", "\u6A97\u8617\u6ABB\u6AC3\u6AC2\u6AB8\u6AB3\u6AAC\u6ADE\u6AD1\u6ADF\u6AAA\u6ADA\u6AEA\u6AFB\u6B05\u8616\u6AFA\u6B12\u6B16\u9B31\u6B1F\u6B38\u6B37\u76DC\u6B39\u98EE\u6B47\u6B43\u6B49\u6B50\u6B59\u6B54\u6B5B\u6B5F\u6B61\u6B78\u6B79\u6B7F\u6B80\u6B84\u6B83\u6B8D\u6B98\u6B95\u6B9E\u6BA4\u6BAA\u6BAB\u6BAF\u6BB2\u6BB1\u6BB3\u6BB7\u6BBC\u6BC6\u6BCB\u6BD3\u6BDF\u6BEC\u6BEB\u6BF3\u6BEF\u9EBE\u6C08\u6C13\u6C14\u6C1B\u6C24\u6C23\u6C5E\u6C55\u6C62\u6C6A\u6C82\u6C8D\u6C9A\u6C81\u6C9B\u6C7E\u6C68\u6C73\u6C92\u6C90\u6CC4\u6CF1\u6CD3\u6CBD\u6CD7\u6CC5\u6CDD\u6CAE\u6CB1\u6CBE"],
      ["dea1", "\u6CBA\u6CDB\u6CEF\u6CD9\u6CEA\u6D1F\u884D\u6D36\u6D2B\u6D3D\u6D38\u6D19\u6D35\u6D33\u6D12\u6D0C\u6D63\u6D93\u6D64\u6D5A\u6D79\u6D59\u6D8E\u6D95\u6FE4\u6D85\u6DF9\u6E15\u6E0A\u6DB5\u6DC7\u6DE6\u6DB8\u6DC6\u6DEC\u6DDE\u6DCC\u6DE8\u6DD2\u6DC5\u6DFA\u6DD9\u6DE4\u6DD5\u6DEA\u6DEE\u6E2D\u6E6E\u6E2E\u6E19\u6E72\u6E5F\u6E3E\u6E23\u6E6B\u6E2B\u6E76\u6E4D\u6E1F\u6E43\u6E3A\u6E4E\u6E24\u6EFF\u6E1D\u6E38\u6E82\u6EAA\u6E98\u6EC9\u6EB7\u6ED3\u6EBD\u6EAF\u6EC4\u6EB2\u6ED4\u6ED5\u6E8F\u6EA5\u6EC2\u6E9F\u6F41\u6F11\u704C\u6EEC\u6EF8\u6EFE\u6F3F\u6EF2\u6F31\u6EEF\u6F32\u6ECC"],
      ["dfa1", "\u6F3E\u6F13\u6EF7\u6F86\u6F7A\u6F78\u6F81\u6F80\u6F6F\u6F5B\u6FF3\u6F6D\u6F82\u6F7C\u6F58\u6F8E\u6F91\u6FC2\u6F66\u6FB3\u6FA3\u6FA1\u6FA4\u6FB9\u6FC6\u6FAA\u6FDF\u6FD5\u6FEC\u6FD4\u6FD8\u6FF1\u6FEE\u6FDB\u7009\u700B\u6FFA\u7011\u7001\u700F\u6FFE\u701B\u701A\u6F74\u701D\u7018\u701F\u7030\u703E\u7032\u7051\u7063\u7099\u7092\u70AF\u70F1\u70AC\u70B8\u70B3\u70AE\u70DF\u70CB\u70DD\u70D9\u7109\u70FD\u711C\u7119\u7165\u7155\u7188\u7166\u7162\u714C\u7156\u716C\u718F\u71FB\u7184\u7195\u71A8\u71AC\u71D7\u71B9\u71BE\u71D2\u71C9\u71D4\u71CE\u71E0\u71EC\u71E7\u71F5\u71FC"],
      ["e0a1", "\u71F9\u71FF\u720D\u7210\u721B\u7228\u722D\u722C\u7230\u7232\u723B\u723C\u723F\u7240\u7246\u724B\u7258\u7274\u727E\u7282\u7281\u7287\u7292\u7296\u72A2\u72A7\u72B9\u72B2\u72C3\u72C6\u72C4\u72CE\u72D2\u72E2\u72E0\u72E1\u72F9\u72F7\u500F\u7317\u730A\u731C\u7316\u731D\u7334\u732F\u7329\u7325\u733E\u734E\u734F\u9ED8\u7357\u736A\u7368\u7370\u7378\u7375\u737B\u737A\u73C8\u73B3\u73CE\u73BB\u73C0\u73E5\u73EE\u73DE\u74A2\u7405\u746F\u7425\u73F8\u7432\u743A\u7455\u743F\u745F\u7459\u7441\u745C\u7469\u7470\u7463\u746A\u7476\u747E\u748B\u749E\u74A7\u74CA\u74CF\u74D4\u73F1"],
      ["e1a1", "\u74E0\u74E3\u74E7\u74E9\u74EE\u74F2\u74F0\u74F1\u74F8\u74F7\u7504\u7503\u7505\u750C\u750E\u750D\u7515\u7513\u751E\u7526\u752C\u753C\u7544\u754D\u754A\u7549\u755B\u7546\u755A\u7569\u7564\u7567\u756B\u756D\u7578\u7576\u7586\u7587\u7574\u758A\u7589\u7582\u7594\u759A\u759D\u75A5\u75A3\u75C2\u75B3\u75C3\u75B5\u75BD\u75B8\u75BC\u75B1\u75CD\u75CA\u75D2\u75D9\u75E3\u75DE\u75FE\u75FF\u75FC\u7601\u75F0\u75FA\u75F2\u75F3\u760B\u760D\u7609\u761F\u7627\u7620\u7621\u7622\u7624\u7634\u7630\u763B\u7647\u7648\u7646\u765C\u7658\u7661\u7662\u7668\u7669\u766A\u7667\u766C\u7670"],
      ["e2a1", "\u7672\u7676\u7678\u767C\u7680\u7683\u7688\u768B\u768E\u7696\u7693\u7699\u769A\u76B0\u76B4\u76B8\u76B9\u76BA\u76C2\u76CD\u76D6\u76D2\u76DE\u76E1\u76E5\u76E7\u76EA\u862F\u76FB\u7708\u7707\u7704\u7729\u7724\u771E\u7725\u7726\u771B\u7737\u7738\u7747\u775A\u7768\u776B\u775B\u7765\u777F\u777E\u7779\u778E\u778B\u7791\u77A0\u779E\u77B0\u77B6\u77B9\u77BF\u77BC\u77BD\u77BB\u77C7\u77CD\u77D7\u77DA\u77DC\u77E3\u77EE\u77FC\u780C\u7812\u7926\u7820\u792A\u7845\u788E\u7874\u7886\u787C\u789A\u788C\u78A3\u78B5\u78AA\u78AF\u78D1\u78C6\u78CB\u78D4\u78BE\u78BC\u78C5\u78CA\u78EC"],
      ["e3a1", "\u78E7\u78DA\u78FD\u78F4\u7907\u7912\u7911\u7919\u792C\u792B\u7940\u7960\u7957\u795F\u795A\u7955\u7953\u797A\u797F\u798A\u799D\u79A7\u9F4B\u79AA\u79AE\u79B3\u79B9\u79BA\u79C9\u79D5\u79E7\u79EC\u79E1\u79E3\u7A08\u7A0D\u7A18\u7A19\u7A20\u7A1F\u7980\u7A31\u7A3B\u7A3E\u7A37\u7A43\u7A57\u7A49\u7A61\u7A62\u7A69\u9F9D\u7A70\u7A79\u7A7D\u7A88\u7A97\u7A95\u7A98\u7A96\u7AA9\u7AC8\u7AB0\u7AB6\u7AC5\u7AC4\u7ABF\u9083\u7AC7\u7ACA\u7ACD\u7ACF\u7AD5\u7AD3\u7AD9\u7ADA\u7ADD\u7AE1\u7AE2\u7AE6\u7AED\u7AF0\u7B02\u7B0F\u7B0A\u7B06\u7B33\u7B18\u7B19\u7B1E\u7B35\u7B28\u7B36\u7B50"],
      ["e4a1", "\u7B7A\u7B04\u7B4D\u7B0B\u7B4C\u7B45\u7B75\u7B65\u7B74\u7B67\u7B70\u7B71\u7B6C\u7B6E\u7B9D\u7B98\u7B9F\u7B8D\u7B9C\u7B9A\u7B8B\u7B92\u7B8F\u7B5D\u7B99\u7BCB\u7BC1\u7BCC\u7BCF\u7BB4\u7BC6\u7BDD\u7BE9\u7C11\u7C14\u7BE6\u7BE5\u7C60\u7C00\u7C07\u7C13\u7BF3\u7BF7\u7C17\u7C0D\u7BF6\u7C23\u7C27\u7C2A\u7C1F\u7C37\u7C2B\u7C3D\u7C4C\u7C43\u7C54\u7C4F\u7C40\u7C50\u7C58\u7C5F\u7C64\u7C56\u7C65\u7C6C\u7C75\u7C83\u7C90\u7CA4\u7CAD\u7CA2\u7CAB\u7CA1\u7CA8\u7CB3\u7CB2\u7CB1\u7CAE\u7CB9\u7CBD\u7CC0\u7CC5\u7CC2\u7CD8\u7CD2\u7CDC\u7CE2\u9B3B\u7CEF\u7CF2\u7CF4\u7CF6\u7CFA\u7D06"],
      ["e5a1", "\u7D02\u7D1C\u7D15\u7D0A\u7D45\u7D4B\u7D2E\u7D32\u7D3F\u7D35\u7D46\u7D73\u7D56\u7D4E\u7D72\u7D68\u7D6E\u7D4F\u7D63\u7D93\u7D89\u7D5B\u7D8F\u7D7D\u7D9B\u7DBA\u7DAE\u7DA3\u7DB5\u7DC7\u7DBD\u7DAB\u7E3D\u7DA2\u7DAF\u7DDC\u7DB8\u7D9F\u7DB0\u7DD8\u7DDD\u7DE4\u7DDE\u7DFB\u7DF2\u7DE1\u7E05\u7E0A\u7E23\u7E21\u7E12\u7E31\u7E1F\u7E09\u7E0B\u7E22\u7E46\u7E66\u7E3B\u7E35\u7E39\u7E43\u7E37\u7E32\u7E3A\u7E67\u7E5D\u7E56\u7E5E\u7E59\u7E5A\u7E79\u7E6A\u7E69\u7E7C\u7E7B\u7E83\u7DD5\u7E7D\u8FAE\u7E7F\u7E88\u7E89\u7E8C\u7E92\u7E90\u7E93\u7E94\u7E96\u7E8E\u7E9B\u7E9C\u7F38\u7F3A"],
      ["e6a1", "\u7F45\u7F4C\u7F4D\u7F4E\u7F50\u7F51\u7F55\u7F54\u7F58\u7F5F\u7F60\u7F68\u7F69\u7F67\u7F78\u7F82\u7F86\u7F83\u7F88\u7F87\u7F8C\u7F94\u7F9E\u7F9D\u7F9A\u7FA3\u7FAF\u7FB2\u7FB9\u7FAE\u7FB6\u7FB8\u8B71\u7FC5\u7FC6\u7FCA\u7FD5\u7FD4\u7FE1\u7FE6\u7FE9\u7FF3\u7FF9\u98DC\u8006\u8004\u800B\u8012\u8018\u8019\u801C\u8021\u8028\u803F\u803B\u804A\u8046\u8052\u8058\u805A\u805F\u8062\u8068\u8073\u8072\u8070\u8076\u8079\u807D\u807F\u8084\u8086\u8085\u809B\u8093\u809A\u80AD\u5190\u80AC\u80DB\u80E5\u80D9\u80DD\u80C4\u80DA\u80D6\u8109\u80EF\u80F1\u811B\u8129\u8123\u812F\u814B"],
      ["e7a1", "\u968B\u8146\u813E\u8153\u8151\u80FC\u8171\u816E\u8165\u8166\u8174\u8183\u8188\u818A\u8180\u8182\u81A0\u8195\u81A4\u81A3\u815F\u8193\u81A9\u81B0\u81B5\u81BE\u81B8\u81BD\u81C0\u81C2\u81BA\u81C9\u81CD\u81D1\u81D9\u81D8\u81C8\u81DA\u81DF\u81E0\u81E7\u81FA\u81FB\u81FE\u8201\u8202\u8205\u8207\u820A\u820D\u8210\u8216\u8229\u822B\u8238\u8233\u8240\u8259\u8258\u825D\u825A\u825F\u8264\u8262\u8268\u826A\u826B\u822E\u8271\u8277\u8278\u827E\u828D\u8292\u82AB\u829F\u82BB\u82AC\u82E1\u82E3\u82DF\u82D2\u82F4\u82F3\u82FA\u8393\u8303\u82FB\u82F9\u82DE\u8306\u82DC\u8309\u82D9"],
      ["e8a1", "\u8335\u8334\u8316\u8332\u8331\u8340\u8339\u8350\u8345\u832F\u832B\u8317\u8318\u8385\u839A\u83AA\u839F\u83A2\u8396\u8323\u838E\u8387\u838A\u837C\u83B5\u8373\u8375\u83A0\u8389\u83A8\u83F4\u8413\u83EB\u83CE\u83FD\u8403\u83D8\u840B\u83C1\u83F7\u8407\u83E0\u83F2\u840D\u8422\u8420\u83BD\u8438\u8506\u83FB\u846D\u842A\u843C\u855A\u8484\u8477\u846B\u84AD\u846E\u8482\u8469\u8446\u842C\u846F\u8479\u8435\u84CA\u8462\u84B9\u84BF\u849F\u84D9\u84CD\u84BB\u84DA\u84D0\u84C1\u84C6\u84D6\u84A1\u8521\u84FF\u84F4\u8517\u8518\u852C\u851F\u8515\u8514\u84FC\u8540\u8563\u8558\u8548"],
      ["e9a1", "\u8541\u8602\u854B\u8555\u8580\u85A4\u8588\u8591\u858A\u85A8\u856D\u8594\u859B\u85EA\u8587\u859C\u8577\u857E\u8590\u85C9\u85BA\u85CF\u85B9\u85D0\u85D5\u85DD\u85E5\u85DC\u85F9\u860A\u8613\u860B\u85FE\u85FA\u8606\u8622\u861A\u8630\u863F\u864D\u4E55\u8654\u865F\u8667\u8671\u8693\u86A3\u86A9\u86AA\u868B\u868C\u86B6\u86AF\u86C4\u86C6\u86B0\u86C9\u8823\u86AB\u86D4\u86DE\u86E9\u86EC\u86DF\u86DB\u86EF\u8712\u8706\u8708\u8700\u8703\u86FB\u8711\u8709\u870D\u86F9\u870A\u8734\u873F\u8737\u873B\u8725\u8729\u871A\u8760\u875F\u8778\u874C\u874E\u8774\u8757\u8768\u876E\u8759"],
      ["eaa1", "\u8753\u8763\u876A\u8805\u87A2\u879F\u8782\u87AF\u87CB\u87BD\u87C0\u87D0\u96D6\u87AB\u87C4\u87B3\u87C7\u87C6\u87BB\u87EF\u87F2\u87E0\u880F\u880D\u87FE\u87F6\u87F7\u880E\u87D2\u8811\u8816\u8815\u8822\u8821\u8831\u8836\u8839\u8827\u883B\u8844\u8842\u8852\u8859\u885E\u8862\u886B\u8881\u887E\u889E\u8875\u887D\u88B5\u8872\u8882\u8897\u8892\u88AE\u8899\u88A2\u888D\u88A4\u88B0\u88BF\u88B1\u88C3\u88C4\u88D4\u88D8\u88D9\u88DD\u88F9\u8902\u88FC\u88F4\u88E8\u88F2\u8904\u890C\u890A\u8913\u8943\u891E\u8925\u892A\u892B\u8941\u8944\u893B\u8936\u8938\u894C\u891D\u8960\u895E"],
      ["eba1", "\u8966\u8964\u896D\u896A\u896F\u8974\u8977\u897E\u8983\u8988\u898A\u8993\u8998\u89A1\u89A9\u89A6\u89AC\u89AF\u89B2\u89BA\u89BD\u89BF\u89C0\u89DA\u89DC\u89DD\u89E7\u89F4\u89F8\u8A03\u8A16\u8A10\u8A0C\u8A1B\u8A1D\u8A25\u8A36\u8A41\u8A5B\u8A52\u8A46\u8A48\u8A7C\u8A6D\u8A6C\u8A62\u8A85\u8A82\u8A84\u8AA8\u8AA1\u8A91\u8AA5\u8AA6\u8A9A\u8AA3\u8AC4\u8ACD\u8AC2\u8ADA\u8AEB\u8AF3\u8AE7\u8AE4\u8AF1\u8B14\u8AE0\u8AE2\u8AF7\u8ADE\u8ADB\u8B0C\u8B07\u8B1A\u8AE1\u8B16\u8B10\u8B17\u8B20\u8B33\u97AB\u8B26\u8B2B\u8B3E\u8B28\u8B41\u8B4C\u8B4F\u8B4E\u8B49\u8B56\u8B5B\u8B5A\u8B6B"],
      ["eca1", "\u8B5F\u8B6C\u8B6F\u8B74\u8B7D\u8B80\u8B8C\u8B8E\u8B92\u8B93\u8B96\u8B99\u8B9A\u8C3A\u8C41\u8C3F\u8C48\u8C4C\u8C4E\u8C50\u8C55\u8C62\u8C6C\u8C78\u8C7A\u8C82\u8C89\u8C85\u8C8A\u8C8D\u8C8E\u8C94\u8C7C\u8C98\u621D\u8CAD\u8CAA\u8CBD\u8CB2\u8CB3\u8CAE\u8CB6\u8CC8\u8CC1\u8CE4\u8CE3\u8CDA\u8CFD\u8CFA\u8CFB\u8D04\u8D05\u8D0A\u8D07\u8D0F\u8D0D\u8D10\u9F4E\u8D13\u8CCD\u8D14\u8D16\u8D67\u8D6D\u8D71\u8D73\u8D81\u8D99\u8DC2\u8DBE\u8DBA\u8DCF\u8DDA\u8DD6\u8DCC\u8DDB\u8DCB\u8DEA\u8DEB\u8DDF\u8DE3\u8DFC\u8E08\u8E09\u8DFF\u8E1D\u8E1E\u8E10\u8E1F\u8E42\u8E35\u8E30\u8E34\u8E4A"],
      ["eda1", "\u8E47\u8E49\u8E4C\u8E50\u8E48\u8E59\u8E64\u8E60\u8E2A\u8E63\u8E55\u8E76\u8E72\u8E7C\u8E81\u8E87\u8E85\u8E84\u8E8B\u8E8A\u8E93\u8E91\u8E94\u8E99\u8EAA\u8EA1\u8EAC\u8EB0\u8EC6\u8EB1\u8EBE\u8EC5\u8EC8\u8ECB\u8EDB\u8EE3\u8EFC\u8EFB\u8EEB\u8EFE\u8F0A\u8F05\u8F15\u8F12\u8F19\u8F13\u8F1C\u8F1F\u8F1B\u8F0C\u8F26\u8F33\u8F3B\u8F39\u8F45\u8F42\u8F3E\u8F4C\u8F49\u8F46\u8F4E\u8F57\u8F5C\u8F62\u8F63\u8F64\u8F9C\u8F9F\u8FA3\u8FAD\u8FAF\u8FB7\u8FDA\u8FE5\u8FE2\u8FEA\u8FEF\u9087\u8FF4\u9005\u8FF9\u8FFA\u9011\u9015\u9021\u900D\u901E\u9016\u900B\u9027\u9036\u9035\u9039\u8FF8"],
      ["eea1", "\u904F\u9050\u9051\u9052\u900E\u9049\u903E\u9056\u9058\u905E\u9068\u906F\u9076\u96A8\u9072\u9082\u907D\u9081\u9080\u908A\u9089\u908F\u90A8\u90AF\u90B1\u90B5\u90E2\u90E4\u6248\u90DB\u9102\u9112\u9119\u9132\u9130\u914A\u9156\u9158\u9163\u9165\u9169\u9173\u9172\u918B\u9189\u9182\u91A2\u91AB\u91AF\u91AA\u91B5\u91B4\u91BA\u91C0\u91C1\u91C9\u91CB\u91D0\u91D6\u91DF\u91E1\u91DB\u91FC\u91F5\u91F6\u921E\u91FF\u9214\u922C\u9215\u9211\u925E\u9257\u9245\u9249\u9264\u9248\u9295\u923F\u924B\u9250\u929C\u9296\u9293\u929B\u925A\u92CF\u92B9\u92B7\u92E9\u930F\u92FA\u9344\u932E"],
      ["efa1", "\u9319\u9322\u931A\u9323\u933A\u9335\u933B\u935C\u9360\u937C\u936E\u9356\u93B0\u93AC\u93AD\u9394\u93B9\u93D6\u93D7\u93E8\u93E5\u93D8\u93C3\u93DD\u93D0\u93C8\u93E4\u941A\u9414\u9413\u9403\u9407\u9410\u9436\u942B\u9435\u9421\u943A\u9441\u9452\u9444\u945B\u9460\u9462\u945E\u946A\u9229\u9470\u9475\u9477\u947D\u945A\u947C\u947E\u9481\u947F\u9582\u9587\u958A\u9594\u9596\u9598\u9599\u95A0\u95A8\u95A7\u95AD\u95BC\u95BB\u95B9\u95BE\u95CA\u6FF6\u95C3\u95CD\u95CC\u95D5\u95D4\u95D6\u95DC\u95E1\u95E5\u95E2\u9621\u9628\u962E\u962F\u9642\u964C\u964F\u964B\u9677\u965C\u965E"],
      ["f0a1", "\u965D\u965F\u9666\u9672\u966C\u968D\u9698\u9695\u9697\u96AA\u96A7\u96B1\u96B2\u96B0\u96B4\u96B6\u96B8\u96B9\u96CE\u96CB\u96C9\u96CD\u894D\u96DC\u970D\u96D5\u96F9\u9704\u9706\u9708\u9713\u970E\u9711\u970F\u9716\u9719\u9724\u972A\u9730\u9739\u973D\u973E\u9744\u9746\u9748\u9742\u9749\u975C\u9760\u9764\u9766\u9768\u52D2\u976B\u9771\u9779\u9785\u977C\u9781\u977A\u9786\u978B\u978F\u9790\u979C\u97A8\u97A6\u97A3\u97B3\u97B4\u97C3\u97C6\u97C8\u97CB\u97DC\u97ED\u9F4F\u97F2\u7ADF\u97F6\u97F5\u980F\u980C\u9838\u9824\u9821\u9837\u983D\u9846\u984F\u984B\u986B\u986F\u9870"],
      ["f1a1", "\u9871\u9874\u9873\u98AA\u98AF\u98B1\u98B6\u98C4\u98C3\u98C6\u98E9\u98EB\u9903\u9909\u9912\u9914\u9918\u9921\u991D\u991E\u9924\u9920\u992C\u992E\u993D\u993E\u9942\u9949\u9945\u9950\u994B\u9951\u9952\u994C\u9955\u9997\u9998\u99A5\u99AD\u99AE\u99BC\u99DF\u99DB\u99DD\u99D8\u99D1\u99ED\u99EE\u99F1\u99F2\u99FB\u99F8\u9A01\u9A0F\u9A05\u99E2\u9A19\u9A2B\u9A37\u9A45\u9A42\u9A40\u9A43\u9A3E\u9A55\u9A4D\u9A5B\u9A57\u9A5F\u9A62\u9A65\u9A64\u9A69\u9A6B\u9A6A\u9AAD\u9AB0\u9ABC\u9AC0\u9ACF\u9AD1\u9AD3\u9AD4\u9ADE\u9ADF\u9AE2\u9AE3\u9AE6\u9AEF\u9AEB\u9AEE\u9AF4\u9AF1\u9AF7"],
      ["f2a1", "\u9AFB\u9B06\u9B18\u9B1A\u9B1F\u9B22\u9B23\u9B25\u9B27\u9B28\u9B29\u9B2A\u9B2E\u9B2F\u9B32\u9B44\u9B43\u9B4F\u9B4D\u9B4E\u9B51\u9B58\u9B74\u9B93\u9B83\u9B91\u9B96\u9B97\u9B9F\u9BA0\u9BA8\u9BB4\u9BC0\u9BCA\u9BB9\u9BC6\u9BCF\u9BD1\u9BD2\u9BE3\u9BE2\u9BE4\u9BD4\u9BE1\u9C3A\u9BF2\u9BF1\u9BF0\u9C15\u9C14\u9C09\u9C13\u9C0C\u9C06\u9C08\u9C12\u9C0A\u9C04\u9C2E\u9C1B\u9C25\u9C24\u9C21\u9C30\u9C47\u9C32\u9C46\u9C3E\u9C5A\u9C60\u9C67\u9C76\u9C78\u9CE7\u9CEC\u9CF0\u9D09\u9D08\u9CEB\u9D03\u9D06\u9D2A\u9D26\u9DAF\u9D23\u9D1F\u9D44\u9D15\u9D12\u9D41\u9D3F\u9D3E\u9D46\u9D48"],
      ["f3a1", "\u9D5D\u9D5E\u9D64\u9D51\u9D50\u9D59\u9D72\u9D89\u9D87\u9DAB\u9D6F\u9D7A\u9D9A\u9DA4\u9DA9\u9DB2\u9DC4\u9DC1\u9DBB\u9DB8\u9DBA\u9DC6\u9DCF\u9DC2\u9DD9\u9DD3\u9DF8\u9DE6\u9DED\u9DEF\u9DFD\u9E1A\u9E1B\u9E1E\u9E75\u9E79\u9E7D\u9E81\u9E88\u9E8B\u9E8C\u9E92\u9E95\u9E91\u9E9D\u9EA5\u9EA9\u9EB8\u9EAA\u9EAD\u9761\u9ECC\u9ECE\u9ECF\u9ED0\u9ED4\u9EDC\u9EDE\u9EDD\u9EE0\u9EE5\u9EE8\u9EEF\u9EF4\u9EF6\u9EF7\u9EF9\u9EFB\u9EFC\u9EFD\u9F07\u9F08\u76B7\u9F15\u9F21\u9F2C\u9F3E\u9F4A\u9F52\u9F54\u9F63\u9F5F\u9F60\u9F61\u9F66\u9F67\u9F6C\u9F6A\u9F77\u9F72\u9F76\u9F95\u9F9C\u9FA0"],
      ["f4a1", "\u582F\u69C7\u9059\u7464\u51DC\u7199"],
      ["f9a1", "\u7E8A\u891C\u9348\u9288\u84DC\u4FC9\u70BB\u6631\u68C8\u92F9\u66FB\u5F45\u4E28\u4EE1\u4EFC\u4F00\u4F03\u4F39\u4F56\u4F92\u4F8A\u4F9A\u4F94\u4FCD\u5040\u5022\u4FFF\u501E\u5046\u5070\u5042\u5094\u50F4\u50D8\u514A\u5164\u519D\u51BE\u51EC\u5215\u529C\u52A6\u52C0\u52DB\u5300\u5307\u5324\u5372\u5393\u53B2\u53DD\uFA0E\u549C\u548A\u54A9\u54FF\u5586\u5759\u5765\u57AC\u57C8\u57C7\uFA0F\uFA10\u589E\u58B2\u590B\u5953\u595B\u595D\u5963\u59A4\u59BA\u5B56\u5BC0\u752F\u5BD8\u5BEC\u5C1E\u5CA6\u5CBA\u5CF5\u5D27\u5D53\uFA11\u5D42\u5D6D\u5DB8\u5DB9\u5DD0\u5F21\u5F34\u5F67\u5FB7"],
      ["faa1", "\u5FDE\u605D\u6085\u608A\u60DE\u60D5\u6120\u60F2\u6111\u6137\u6130\u6198\u6213\u62A6\u63F5\u6460\u649D\u64CE\u654E\u6600\u6615\u663B\u6609\u662E\u661E\u6624\u6665\u6657\u6659\uFA12\u6673\u6699\u66A0\u66B2\u66BF\u66FA\u670E\uF929\u6766\u67BB\u6852\u67C0\u6801\u6844\u68CF\uFA13\u6968\uFA14\u6998\u69E2\u6A30\u6A6B\u6A46\u6A73\u6A7E\u6AE2\u6AE4\u6BD6\u6C3F\u6C5C\u6C86\u6C6F\u6CDA\u6D04\u6D87\u6D6F\u6D96\u6DAC\u6DCF\u6DF8\u6DF2\u6DFC\u6E39\u6E5C\u6E27\u6E3C\u6EBF\u6F88\u6FB5\u6FF5\u7005\u7007\u7028\u7085\u70AB\u710F\u7104\u715C\u7146\u7147\uFA15\u71C1\u71FE\u72B1"],
      ["fba1", "\u72BE\u7324\uFA16\u7377\u73BD\u73C9\u73D6\u73E3\u73D2\u7407\u73F5\u7426\u742A\u7429\u742E\u7462\u7489\u749F\u7501\u756F\u7682\u769C\u769E\u769B\u76A6\uFA17\u7746\u52AF\u7821\u784E\u7864\u787A\u7930\uFA18\uFA19\uFA1A\u7994\uFA1B\u799B\u7AD1\u7AE7\uFA1C\u7AEB\u7B9E\uFA1D\u7D48\u7D5C\u7DB7\u7DA0\u7DD6\u7E52\u7F47\u7FA1\uFA1E\u8301\u8362\u837F\u83C7\u83F6\u8448\u84B4\u8553\u8559\u856B\uFA1F\u85B0\uFA20\uFA21\u8807\u88F5\u8A12\u8A37\u8A79\u8AA7\u8ABE\u8ADF\uFA22\u8AF6\u8B53\u8B7F\u8CF0\u8CF4\u8D12\u8D76\uFA23\u8ECF\uFA24\uFA25\u9067\u90DE\uFA26\u9115\u9127\u91DA"],
      ["fca1", "\u91D7\u91DE\u91ED\u91EE\u91E4\u91E5\u9206\u9210\u920A\u923A\u9240\u923C\u924E\u9259\u9251\u9239\u9267\u92A7\u9277\u9278\u92E7\u92D7\u92D9\u92D0\uFA27\u92D5\u92E0\u92D3\u9325\u9321\u92FB\uFA28\u931E\u92FF\u931D\u9302\u9370\u9357\u93A4\u93C6\u93DE\u93F8\u9431\u9445\u9448\u9592\uF9DC\uFA29\u969D\u96AF\u9733\u973B\u9743\u974D\u974F\u9751\u9755\u9857\u9865\uFA2A\uFA2B\u9927\uFA2C\u999E\u9A4E\u9AD9\u9ADC\u9B75\u9B72\u9B8F\u9BB1\u9BBB\u9C00\u9D70\u9D6B\uFA2D\u9E19\u9ED1"],
      ["fcf1", "\u2170", 9, "\uFFE2\uFFE4\uFF07\uFF02"],
      ["8fa2af", "\u02D8\u02C7\xB8\u02D9\u02DD\xAF\u02DB\u02DA\uFF5E\u0384\u0385"],
      ["8fa2c2", "\xA1\xA6\xBF"],
      ["8fa2eb", "\xBA\xAA\xA9\xAE\u2122\xA4\u2116"],
      ["8fa6e1", "\u0386\u0388\u0389\u038A\u03AA"],
      ["8fa6e7", "\u038C"],
      ["8fa6e9", "\u038E\u03AB"],
      ["8fa6ec", "\u038F"],
      ["8fa6f1", "\u03AC\u03AD\u03AE\u03AF\u03CA\u0390\u03CC\u03C2\u03CD\u03CB\u03B0\u03CE"],
      ["8fa7c2", "\u0402", 10, "\u040E\u040F"],
      ["8fa7f2", "\u0452", 10, "\u045E\u045F"],
      ["8fa9a1", "\xC6\u0110"],
      ["8fa9a4", "\u0126"],
      ["8fa9a6", "\u0132"],
      ["8fa9a8", "\u0141\u013F"],
      ["8fa9ab", "\u014A\xD8\u0152"],
      ["8fa9af", "\u0166\xDE"],
      ["8fa9c1", "\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0142\u0140\u0149\u014B\xF8\u0153\xDF\u0167\xFE"],
      ["8faaa1", "\xC1\xC0\xC4\xC2\u0102\u01CD\u0100\u0104\xC5\xC3\u0106\u0108\u010C\xC7\u010A\u010E\xC9\xC8\xCB\xCA\u011A\u0116\u0112\u0118"],
      ["8faaba", "\u011C\u011E\u0122\u0120\u0124\xCD\xCC\xCF\xCE\u01CF\u0130\u012A\u012E\u0128\u0134\u0136\u0139\u013D\u013B\u0143\u0147\u0145\xD1\xD3\xD2\xD6\xD4\u01D1\u0150\u014C\xD5\u0154\u0158\u0156\u015A\u015C\u0160\u015E\u0164\u0162\xDA\xD9\xDC\xDB\u016C\u01D3\u0170\u016A\u0172\u016E\u0168\u01D7\u01DB\u01D9\u01D5\u0174\xDD\u0178\u0176\u0179\u017D\u017B"],
      ["8faba1", "\xE1\xE0\xE4\xE2\u0103\u01CE\u0101\u0105\xE5\xE3\u0107\u0109\u010D\xE7\u010B\u010F\xE9\xE8\xEB\xEA\u011B\u0117\u0113\u0119\u01F5\u011D\u011F"],
      ["8fabbd", "\u0121\u0125\xED\xEC\xEF\xEE\u01D0"],
      ["8fabc5", "\u012B\u012F\u0129\u0135\u0137\u013A\u013E\u013C\u0144\u0148\u0146\xF1\xF3\xF2\xF6\xF4\u01D2\u0151\u014D\xF5\u0155\u0159\u0157\u015B\u015D\u0161\u015F\u0165\u0163\xFA\xF9\xFC\xFB\u016D\u01D4\u0171\u016B\u0173\u016F\u0169\u01D8\u01DC\u01DA\u01D6\u0175\xFD\xFF\u0177\u017A\u017E\u017C"],
      ["8fb0a1", "\u4E02\u4E04\u4E05\u4E0C\u4E12\u4E1F\u4E23\u4E24\u4E28\u4E2B\u4E2E\u4E2F\u4E30\u4E35\u4E40\u4E41\u4E44\u4E47\u4E51\u4E5A\u4E5C\u4E63\u4E68\u4E69\u4E74\u4E75\u4E79\u4E7F\u4E8D\u4E96\u4E97\u4E9D\u4EAF\u4EB9\u4EC3\u4ED0\u4EDA\u4EDB\u4EE0\u4EE1\u4EE2\u4EE8\u4EEF\u4EF1\u4EF3\u4EF5\u4EFD\u4EFE\u4EFF\u4F00\u4F02\u4F03\u4F08\u4F0B\u4F0C\u4F12\u4F15\u4F16\u4F17\u4F19\u4F2E\u4F31\u4F60\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E\u4F40\u4F42\u4F48\u4F49\u4F4B\u4F4C\u4F52\u4F54\u4F56\u4F58\u4F5F\u4F63\u4F6A\u4F6C\u4F6E\u4F71\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F7E\u4F81\u4F82\u4F84"],
      ["8fb1a1", "\u4F85\u4F89\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F94\u4F97\u4F99\u4F9A\u4F9E\u4F9F\u4FB2\u4FB7\u4FB9\u4FBB\u4FBC\u4FBD\u4FBE\u4FC0\u4FC1\u4FC5\u4FC6\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FCF\u4FD2\u4FDC\u4FE0\u4FE2\u4FF0\u4FF2\u4FFC\u4FFD\u4FFF\u5000\u5001\u5004\u5007\u500A\u500C\u500E\u5010\u5013\u5017\u5018\u501B\u501C\u501D\u501E\u5022\u5027\u502E\u5030\u5032\u5033\u5035\u5040\u5041\u5042\u5045\u5046\u504A\u504C\u504E\u5051\u5052\u5053\u5057\u5059\u505F\u5060\u5062\u5063\u5066\u5067\u506A\u506D\u5070\u5071\u503B\u5081\u5083\u5084\u5086\u508A\u508E\u508F\u5090"],
      ["8fb2a1", "\u5092\u5093\u5094\u5096\u509B\u509C\u509E", 4, "\u50AA\u50AF\u50B0\u50B9\u50BA\u50BD\u50C0\u50C3\u50C4\u50C7\u50CC\u50CE\u50D0\u50D3\u50D4\u50D8\u50DC\u50DD\u50DF\u50E2\u50E4\u50E6\u50E8\u50E9\u50EF\u50F1\u50F6\u50FA\u50FE\u5103\u5106\u5107\u5108\u510B\u510C\u510D\u510E\u50F2\u5110\u5117\u5119\u511B\u511C\u511D\u511E\u5123\u5127\u5128\u512C\u512D\u512F\u5131\u5133\u5134\u5135\u5138\u5139\u5142\u514A\u514F\u5153\u5155\u5157\u5158\u515F\u5164\u5166\u517E\u5183\u5184\u518B\u518E\u5198\u519D\u51A1\u51A3\u51AD\u51B8\u51BA\u51BC\u51BE\u51BF\u51C2"],
      ["8fb3a1", "\u51C8\u51CF\u51D1\u51D2\u51D3\u51D5\u51D8\u51DE\u51E2\u51E5\u51EE\u51F2\u51F3\u51F4\u51F7\u5201\u5202\u5205\u5212\u5213\u5215\u5216\u5218\u5222\u5228\u5231\u5232\u5235\u523C\u5245\u5249\u5255\u5257\u5258\u525A\u525C\u525F\u5260\u5261\u5266\u526E\u5277\u5278\u5279\u5280\u5282\u5285\u528A\u528C\u5293\u5295\u5296\u5297\u5298\u529A\u529C\u52A4\u52A5\u52A6\u52A7\u52AF\u52B0\u52B6\u52B7\u52B8\u52BA\u52BB\u52BD\u52C0\u52C4\u52C6\u52C8\u52CC\u52CF\u52D1\u52D4\u52D6\u52DB\u52DC\u52E1\u52E5\u52E8\u52E9\u52EA\u52EC\u52F0\u52F1\u52F4\u52F6\u52F7\u5300\u5303\u530A\u530B"],
      ["8fb4a1", "\u530C\u5311\u5313\u5318\u531B\u531C\u531E\u531F\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u5330\u5332\u5335\u533C\u533D\u533E\u5342\u534C\u534B\u5359\u535B\u5361\u5363\u5365\u536C\u536D\u5372\u5379\u537E\u5383\u5387\u5388\u538E\u5393\u5394\u5399\u539D\u53A1\u53A4\u53AA\u53AB\u53AF\u53B2\u53B4\u53B5\u53B7\u53B8\u53BA\u53BD\u53C0\u53C5\u53CF\u53D2\u53D3\u53D5\u53DA\u53DD\u53DE\u53E0\u53E6\u53E7\u53F5\u5402\u5413\u541A\u5421\u5427\u5428\u542A\u542F\u5431\u5434\u5435\u5443\u5444\u5447\u544D\u544F\u545E\u5462\u5464\u5466\u5467\u5469\u546B\u546D\u546E\u5474\u547F"],
      ["8fb5a1", "\u5481\u5483\u5485\u5488\u5489\u548D\u5491\u5495\u5496\u549C\u549F\u54A1\u54A6\u54A7\u54A9\u54AA\u54AD\u54AE\u54B1\u54B7\u54B9\u54BA\u54BB\u54BF\u54C6\u54CA\u54CD\u54CE\u54E0\u54EA\u54EC\u54EF\u54F6\u54FC\u54FE\u54FF\u5500\u5501\u5505\u5508\u5509\u550C\u550D\u550E\u5515\u552A\u552B\u5532\u5535\u5536\u553B\u553C\u553D\u5541\u5547\u5549\u554A\u554D\u5550\u5551\u5558\u555A\u555B\u555E\u5560\u5561\u5564\u5566\u557F\u5581\u5582\u5586\u5588\u558E\u558F\u5591\u5592\u5593\u5594\u5597\u55A3\u55A4\u55AD\u55B2\u55BF\u55C1\u55C3\u55C6\u55C9\u55CB\u55CC\u55CE\u55D1\u55D2"],
      ["8fb6a1", "\u55D3\u55D7\u55D8\u55DB\u55DE\u55E2\u55E9\u55F6\u55FF\u5605\u5608\u560A\u560D", 5, "\u5619\u562C\u5630\u5633\u5635\u5637\u5639\u563B\u563C\u563D\u563F\u5640\u5641\u5643\u5644\u5646\u5649\u564B\u564D\u564F\u5654\u565E\u5660\u5661\u5662\u5663\u5666\u5669\u566D\u566F\u5671\u5672\u5675\u5684\u5685\u5688\u568B\u568C\u5695\u5699\u569A\u569D\u569E\u569F\u56A6\u56A7\u56A8\u56A9\u56AB\u56AC\u56AD\u56B1\u56B3\u56B7\u56BE\u56C5\u56C9\u56CA\u56CB\u56CF\u56D0\u56CC\u56CD\u56D9\u56DC\u56DD\u56DF\u56E1\u56E4", 4, "\u56F1\u56EB\u56ED"],
      ["8fb7a1", "\u56F6\u56F7\u5701\u5702\u5707\u570A\u570C\u5711\u5715\u571A\u571B\u571D\u5720\u5722\u5723\u5724\u5725\u5729\u572A\u572C\u572E\u572F\u5733\u5734\u573D\u573E\u573F\u5745\u5746\u574C\u574D\u5752\u5762\u5765\u5767\u5768\u576B\u576D", 4, "\u5773\u5774\u5775\u5777\u5779\u577A\u577B\u577C\u577E\u5781\u5783\u578C\u5794\u5797\u5799\u579A\u579C\u579D\u579E\u579F\u57A1\u5795\u57A7\u57A8\u57A9\u57AC\u57B8\u57BD\u57C7\u57C8\u57CC\u57CF\u57D5\u57DD\u57DE\u57E4\u57E6\u57E7\u57E9\u57ED\u57F0\u57F5\u57F6\u57F8\u57FD\u57FE\u57FF\u5803\u5804\u5808\u5809\u57E1"],
      ["8fb8a1", "\u580C\u580D\u581B\u581E\u581F\u5820\u5826\u5827\u582D\u5832\u5839\u583F\u5849\u584C\u584D\u584F\u5850\u5855\u585F\u5861\u5864\u5867\u5868\u5878\u587C\u587F\u5880\u5881\u5887\u5888\u5889\u588A\u588C\u588D\u588F\u5890\u5894\u5896\u589D\u58A0\u58A1\u58A2\u58A6\u58A9\u58B1\u58B2\u58C4\u58BC\u58C2\u58C8\u58CD\u58CE\u58D0\u58D2\u58D4\u58D6\u58DA\u58DD\u58E1\u58E2\u58E9\u58F3\u5905\u5906\u590B\u590C\u5912\u5913\u5914\u8641\u591D\u5921\u5923\u5924\u5928\u592F\u5930\u5933\u5935\u5936\u593F\u5943\u5946\u5952\u5953\u5959\u595B\u595D\u595E\u595F\u5961\u5963\u596B\u596D"],
      ["8fb9a1", "\u596F\u5972\u5975\u5976\u5979\u597B\u597C\u598B\u598C\u598E\u5992\u5995\u5997\u599F\u59A4\u59A7\u59AD\u59AE\u59AF\u59B0\u59B3\u59B7\u59BA\u59BC\u59C1\u59C3\u59C4\u59C8\u59CA\u59CD\u59D2\u59DD\u59DE\u59DF\u59E3\u59E4\u59E7\u59EE\u59EF\u59F1\u59F2\u59F4\u59F7\u5A00\u5A04\u5A0C\u5A0D\u5A0E\u5A12\u5A13\u5A1E\u5A23\u5A24\u5A27\u5A28\u5A2A\u5A2D\u5A30\u5A44\u5A45\u5A47\u5A48\u5A4C\u5A50\u5A55\u5A5E\u5A63\u5A65\u5A67\u5A6D\u5A77\u5A7A\u5A7B\u5A7E\u5A8B\u5A90\u5A93\u5A96\u5A99\u5A9C\u5A9E\u5A9F\u5AA0\u5AA2\u5AA7\u5AAC\u5AB1\u5AB2\u5AB3\u5AB5\u5AB8\u5ABA\u5ABB\u5ABF"],
      ["8fbaa1", "\u5AC4\u5AC6\u5AC8\u5ACF\u5ADA\u5ADC\u5AE0\u5AE5\u5AEA\u5AEE\u5AF5\u5AF6\u5AFD\u5B00\u5B01\u5B08\u5B17\u5B34\u5B19\u5B1B\u5B1D\u5B21\u5B25\u5B2D\u5B38\u5B41\u5B4B\u5B4C\u5B52\u5B56\u5B5E\u5B68\u5B6E\u5B6F\u5B7C\u5B7D\u5B7E\u5B7F\u5B81\u5B84\u5B86\u5B8A\u5B8E\u5B90\u5B91\u5B93\u5B94\u5B96\u5BA8\u5BA9\u5BAC\u5BAD\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBC\u5BC0\u5BC1\u5BCD\u5BCF\u5BD6", 4, "\u5BE0\u5BEF\u5BF1\u5BF4\u5BFD\u5C0C\u5C17\u5C1E\u5C1F\u5C23\u5C26\u5C29\u5C2B\u5C2C\u5C2E\u5C30\u5C32\u5C35\u5C36\u5C59\u5C5A\u5C5C\u5C62\u5C63\u5C67\u5C68\u5C69"],
      ["8fbba1", "\u5C6D\u5C70\u5C74\u5C75\u5C7A\u5C7B\u5C7C\u5C7D\u5C87\u5C88\u5C8A\u5C8F\u5C92\u5C9D\u5C9F\u5CA0\u5CA2\u5CA3\u5CA6\u5CAA\u5CB2\u5CB4\u5CB5\u5CBA\u5CC9\u5CCB\u5CD2\u5CDD\u5CD7\u5CEE\u5CF1\u5CF2\u5CF4\u5D01\u5D06\u5D0D\u5D12\u5D2B\u5D23\u5D24\u5D26\u5D27\u5D31\u5D34\u5D39\u5D3D\u5D3F\u5D42\u5D43\u5D46\u5D48\u5D55\u5D51\u5D59\u5D4A\u5D5F\u5D60\u5D61\u5D62\u5D64\u5D6A\u5D6D\u5D70\u5D79\u5D7A\u5D7E\u5D7F\u5D81\u5D83\u5D88\u5D8A\u5D92\u5D93\u5D94\u5D95\u5D99\u5D9B\u5D9F\u5DA0\u5DA7\u5DAB\u5DB0\u5DB4\u5DB8\u5DB9\u5DC3\u5DC7\u5DCB\u5DD0\u5DCE\u5DD8\u5DD9\u5DE0\u5DE4"],
      ["8fbca1", "\u5DE9\u5DF8\u5DF9\u5E00\u5E07\u5E0D\u5E12\u5E14\u5E15\u5E18\u5E1F\u5E20\u5E2E\u5E28\u5E32\u5E35\u5E3E\u5E4B\u5E50\u5E49\u5E51\u5E56\u5E58\u5E5B\u5E5C\u5E5E\u5E68\u5E6A", 4, "\u5E70\u5E80\u5E8B\u5E8E\u5EA2\u5EA4\u5EA5\u5EA8\u5EAA\u5EAC\u5EB1\u5EB3\u5EBD\u5EBE\u5EBF\u5EC6\u5ECC\u5ECB\u5ECE\u5ED1\u5ED2\u5ED4\u5ED5\u5EDC\u5EDE\u5EE5\u5EEB\u5F02\u5F06\u5F07\u5F08\u5F0E\u5F19\u5F1C\u5F1D\u5F21\u5F22\u5F23\u5F24\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F34\u5F36\u5F3B\u5F3D\u5F3F\u5F40\u5F44\u5F45\u5F47\u5F4D\u5F50\u5F54\u5F58\u5F5B\u5F60\u5F63\u5F64\u5F67"],
      ["8fbda1", "\u5F6F\u5F72\u5F74\u5F75\u5F78\u5F7A\u5F7D\u5F7E\u5F89\u5F8D\u5F8F\u5F96\u5F9C\u5F9D\u5FA2\u5FA7\u5FAB\u5FA4\u5FAC\u5FAF\u5FB0\u5FB1\u5FB8\u5FC4\u5FC7\u5FC8\u5FC9\u5FCB\u5FD0", 4, "\u5FDE\u5FE1\u5FE2\u5FE8\u5FE9\u5FEA\u5FEC\u5FED\u5FEE\u5FEF\u5FF2\u5FF3\u5FF6\u5FFA\u5FFC\u6007\u600A\u600D\u6013\u6014\u6017\u6018\u601A\u601F\u6024\u602D\u6033\u6035\u6040\u6047\u6048\u6049\u604C\u6051\u6054\u6056\u6057\u605D\u6061\u6067\u6071\u607E\u607F\u6082\u6086\u6088\u608A\u608E\u6091\u6093\u6095\u6098\u609D\u609E\u60A2\u60A4\u60A5\u60A8\u60B0\u60B1\u60B7"],
      ["8fbea1", "\u60BB\u60BE\u60C2\u60C4\u60C8\u60C9\u60CA\u60CB\u60CE\u60CF\u60D4\u60D5\u60D9\u60DB\u60DD\u60DE\u60E2\u60E5\u60F2\u60F5\u60F8\u60FC\u60FD\u6102\u6107\u610A\u610C\u6110", 4, "\u6116\u6117\u6119\u611C\u611E\u6122\u612A\u612B\u6130\u6131\u6135\u6136\u6137\u6139\u6141\u6145\u6146\u6149\u615E\u6160\u616C\u6172\u6178\u617B\u617C\u617F\u6180\u6181\u6183\u6184\u618B\u618D\u6192\u6193\u6197\u6198\u619C\u619D\u619F\u61A0\u61A5\u61A8\u61AA\u61AD\u61B8\u61B9\u61BC\u61C0\u61C1\u61C2\u61CE\u61CF\u61D5\u61DC\u61DD\u61DE\u61DF\u61E1\u61E2\u61E7\u61E9\u61E5"],
      ["8fbfa1", "\u61EC\u61ED\u61EF\u6201\u6203\u6204\u6207\u6213\u6215\u621C\u6220\u6222\u6223\u6227\u6229\u622B\u6239\u623D\u6242\u6243\u6244\u6246\u624C\u6250\u6251\u6252\u6254\u6256\u625A\u625C\u6264\u626D\u626F\u6273\u627A\u627D\u628D\u628E\u628F\u6290\u62A6\u62A8\u62B3\u62B6\u62B7\u62BA\u62BE\u62BF\u62C4\u62CE\u62D5\u62D6\u62DA\u62EA\u62F2\u62F4\u62FC\u62FD\u6303\u6304\u630A\u630B\u630D\u6310\u6313\u6316\u6318\u6329\u632A\u632D\u6335\u6336\u6339\u633C\u6341\u6342\u6343\u6344\u6346\u634A\u634B\u634E\u6352\u6353\u6354\u6358\u635B\u6365\u6366\u636C\u636D\u6371\u6374\u6375"],
      ["8fc0a1", "\u6378\u637C\u637D\u637F\u6382\u6384\u6387\u638A\u6390\u6394\u6395\u6399\u639A\u639E\u63A4\u63A6\u63AD\u63AE\u63AF\u63BD\u63C1\u63C5\u63C8\u63CE\u63D1\u63D3\u63D4\u63D5\u63DC\u63E0\u63E5\u63EA\u63EC\u63F2\u63F3\u63F5\u63F8\u63F9\u6409\u640A\u6410\u6412\u6414\u6418\u641E\u6420\u6422\u6424\u6425\u6429\u642A\u642F\u6430\u6435\u643D\u643F\u644B\u644F\u6451\u6452\u6453\u6454\u645A\u645B\u645C\u645D\u645F\u6460\u6461\u6463\u646D\u6473\u6474\u647B\u647D\u6485\u6487\u648F\u6490\u6491\u6498\u6499\u649B\u649D\u649F\u64A1\u64A3\u64A6\u64A8\u64AC\u64B3\u64BD\u64BE\u64BF"],
      ["8fc1a1", "\u64C4\u64C9\u64CA\u64CB\u64CC\u64CE\u64D0\u64D1\u64D5\u64D7\u64E4\u64E5\u64E9\u64EA\u64ED\u64F0\u64F5\u64F7\u64FB\u64FF\u6501\u6504\u6508\u6509\u650A\u650F\u6513\u6514\u6516\u6519\u651B\u651E\u651F\u6522\u6526\u6529\u652E\u6531\u653A\u653C\u653D\u6543\u6547\u6549\u6550\u6552\u6554\u655F\u6560\u6567\u656B\u657A\u657D\u6581\u6585\u658A\u6592\u6595\u6598\u659D\u65A0\u65A3\u65A6\u65AE\u65B2\u65B3\u65B4\u65BF\u65C2\u65C8\u65C9\u65CE\u65D0\u65D4\u65D6\u65D8\u65DF\u65F0\u65F2\u65F4\u65F5\u65F9\u65FE\u65FF\u6600\u6604\u6608\u6609\u660D\u6611\u6612\u6615\u6616\u661D"],
      ["8fc2a1", "\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6631\u6633\u6639\u6637\u6640\u6645\u6646\u664A\u664C\u6651\u664E\u6657\u6658\u6659\u665B\u665C\u6660\u6661\u66FB\u666A\u666B\u666C\u667E\u6673\u6675\u667F\u6677\u6678\u6679\u667B\u6680\u667C\u668B\u668C\u668D\u6690\u6692\u6699\u669A\u669B\u669C\u669F\u66A0\u66A4\u66AD\u66B1\u66B2\u66B5\u66BB\u66BF\u66C0\u66C2\u66C3\u66C8\u66CC\u66CE\u66CF\u66D4\u66DB\u66DF\u66E8\u66EB\u66EC\u66EE\u66FA\u6705\u6707\u670E\u6713\u6719\u671C\u6720\u6722\u6733\u673E\u6745\u6747\u6748\u674C\u6754\u6755\u675D"],
      ["8fc3a1", "\u6766\u676C\u676E\u6774\u6776\u677B\u6781\u6784\u678E\u678F\u6791\u6793\u6796\u6798\u6799\u679B\u67B0\u67B1\u67B2\u67B5\u67BB\u67BC\u67BD\u67F9\u67C0\u67C2\u67C3\u67C5\u67C8\u67C9\u67D2\u67D7\u67D9\u67DC\u67E1\u67E6\u67F0\u67F2\u67F6\u67F7\u6852\u6814\u6819\u681D\u681F\u6828\u6827\u682C\u682D\u682F\u6830\u6831\u6833\u683B\u683F\u6844\u6845\u684A\u684C\u6855\u6857\u6858\u685B\u686B\u686E", 4, "\u6875\u6879\u687A\u687B\u687C\u6882\u6884\u6886\u6888\u6896\u6898\u689A\u689C\u68A1\u68A3\u68A5\u68A9\u68AA\u68AE\u68B2\u68BB\u68C5\u68C8\u68CC\u68CF"],
      ["8fc4a1", "\u68D0\u68D1\u68D3\u68D6\u68D9\u68DC\u68DD\u68E5\u68E8\u68EA\u68EB\u68EC\u68ED\u68F0\u68F1\u68F5\u68F6\u68FB\u68FC\u68FD\u6906\u6909\u690A\u6910\u6911\u6913\u6916\u6917\u6931\u6933\u6935\u6938\u693B\u6942\u6945\u6949\u694E\u6957\u695B\u6963\u6964\u6965\u6966\u6968\u6969\u696C\u6970\u6971\u6972\u697A\u697B\u697F\u6980\u698D\u6992\u6996\u6998\u69A1\u69A5\u69A6\u69A8\u69AB\u69AD\u69AF\u69B7\u69B8\u69BA\u69BC\u69C5\u69C8\u69D1\u69D6\u69D7\u69E2\u69E5\u69EE\u69EF\u69F1\u69F3\u69F5\u69FE\u6A00\u6A01\u6A03\u6A0F\u6A11\u6A15\u6A1A\u6A1D\u6A20\u6A24\u6A28\u6A30\u6A32"],
      ["8fc5a1", "\u6A34\u6A37\u6A3B\u6A3E\u6A3F\u6A45\u6A46\u6A49\u6A4A\u6A4E\u6A50\u6A51\u6A52\u6A55\u6A56\u6A5B\u6A64\u6A67\u6A6A\u6A71\u6A73\u6A7E\u6A81\u6A83\u6A86\u6A87\u6A89\u6A8B\u6A91\u6A9B\u6A9D\u6A9E\u6A9F\u6AA5\u6AAB\u6AAF\u6AB0\u6AB1\u6AB4\u6ABD\u6ABE\u6ABF\u6AC6\u6AC9\u6AC8\u6ACC\u6AD0\u6AD4\u6AD5\u6AD6\u6ADC\u6ADD\u6AE4\u6AE7\u6AEC\u6AF0\u6AF1\u6AF2\u6AFC\u6AFD\u6B02\u6B03\u6B06\u6B07\u6B09\u6B0F\u6B10\u6B11\u6B17\u6B1B\u6B1E\u6B24\u6B28\u6B2B\u6B2C\u6B2F\u6B35\u6B36\u6B3B\u6B3F\u6B46\u6B4A\u6B4D\u6B52\u6B56\u6B58\u6B5D\u6B60\u6B67\u6B6B\u6B6E\u6B70\u6B75\u6B7D"],
      ["8fc6a1", "\u6B7E\u6B82\u6B85\u6B97\u6B9B\u6B9F\u6BA0\u6BA2\u6BA3\u6BA8\u6BA9\u6BAC\u6BAD\u6BAE\u6BB0\u6BB8\u6BB9\u6BBD\u6BBE\u6BC3\u6BC4\u6BC9\u6BCC\u6BD6\u6BDA\u6BE1\u6BE3\u6BE6\u6BE7\u6BEE\u6BF1\u6BF7\u6BF9\u6BFF\u6C02\u6C04\u6C05\u6C09\u6C0D\u6C0E\u6C10\u6C12\u6C19\u6C1F\u6C26\u6C27\u6C28\u6C2C\u6C2E\u6C33\u6C35\u6C36\u6C3A\u6C3B\u6C3F\u6C4A\u6C4B\u6C4D\u6C4F\u6C52\u6C54\u6C59\u6C5B\u6C5C\u6C6B\u6C6D\u6C6F\u6C74\u6C76\u6C78\u6C79\u6C7B\u6C85\u6C86\u6C87\u6C89\u6C94\u6C95\u6C97\u6C98\u6C9C\u6C9F\u6CB0\u6CB2\u6CB4\u6CC2\u6CC6\u6CCD\u6CCF\u6CD0\u6CD1\u6CD2\u6CD4\u6CD6"],
      ["8fc7a1", "\u6CDA\u6CDC\u6CE0\u6CE7\u6CE9\u6CEB\u6CEC\u6CEE\u6CF2\u6CF4\u6D04\u6D07\u6D0A\u6D0E\u6D0F\u6D11\u6D13\u6D1A\u6D26\u6D27\u6D28\u6C67\u6D2E\u6D2F\u6D31\u6D39\u6D3C\u6D3F\u6D57\u6D5E\u6D5F\u6D61\u6D65\u6D67\u6D6F\u6D70\u6D7C\u6D82\u6D87\u6D91\u6D92\u6D94\u6D96\u6D97\u6D98\u6DAA\u6DAC\u6DB4\u6DB7\u6DB9\u6DBD\u6DBF\u6DC4\u6DC8\u6DCA\u6DCE\u6DCF\u6DD6\u6DDB\u6DDD\u6DDF\u6DE0\u6DE2\u6DE5\u6DE9\u6DEF\u6DF0\u6DF4\u6DF6\u6DFC\u6E00\u6E04\u6E1E\u6E22\u6E27\u6E32\u6E36\u6E39\u6E3B\u6E3C\u6E44\u6E45\u6E48\u6E49\u6E4B\u6E4F\u6E51\u6E52\u6E53\u6E54\u6E57\u6E5C\u6E5D\u6E5E"],
      ["8fc8a1", "\u6E62\u6E63\u6E68\u6E73\u6E7B\u6E7D\u6E8D\u6E93\u6E99\u6EA0\u6EA7\u6EAD\u6EAE\u6EB1\u6EB3\u6EBB\u6EBF\u6EC0\u6EC1\u6EC3\u6EC7\u6EC8\u6ECA\u6ECD\u6ECE\u6ECF\u6EEB\u6EED\u6EEE\u6EF9\u6EFB\u6EFD\u6F04\u6F08\u6F0A\u6F0C\u6F0D\u6F16\u6F18\u6F1A\u6F1B\u6F26\u6F29\u6F2A\u6F2F\u6F30\u6F33\u6F36\u6F3B\u6F3C\u6F2D\u6F4F\u6F51\u6F52\u6F53\u6F57\u6F59\u6F5A\u6F5D\u6F5E\u6F61\u6F62\u6F68\u6F6C\u6F7D\u6F7E\u6F83\u6F87\u6F88\u6F8B\u6F8C\u6F8D\u6F90\u6F92\u6F93\u6F94\u6F96\u6F9A\u6F9F\u6FA0\u6FA5\u6FA6\u6FA7\u6FA8\u6FAE\u6FAF\u6FB0\u6FB5\u6FB6\u6FBC\u6FC5\u6FC7\u6FC8\u6FCA"],
      ["8fc9a1", "\u6FDA\u6FDE\u6FE8\u6FE9\u6FF0\u6FF5\u6FF9\u6FFC\u6FFD\u7000\u7005\u7006\u7007\u700D\u7017\u7020\u7023\u702F\u7034\u7037\u7039\u703C\u7043\u7044\u7048\u7049\u704A\u704B\u7054\u7055\u705D\u705E\u704E\u7064\u7065\u706C\u706E\u7075\u7076\u707E\u7081\u7085\u7086\u7094", 4, "\u709B\u70A4\u70AB\u70B0\u70B1\u70B4\u70B7\u70CA\u70D1\u70D3\u70D4\u70D5\u70D6\u70D8\u70DC\u70E4\u70FA\u7103", 4, "\u710B\u710C\u710F\u711E\u7120\u712B\u712D\u712F\u7130\u7131\u7138\u7141\u7145\u7146\u7147\u714A\u714B\u7150\u7152\u7157\u715A\u715C\u715E\u7160"],
      ["8fcaa1", "\u7168\u7179\u7180\u7185\u7187\u718C\u7192\u719A\u719B\u71A0\u71A2\u71AF\u71B0\u71B2\u71B3\u71BA\u71BF\u71C0\u71C1\u71C4\u71CB\u71CC\u71D3\u71D6\u71D9\u71DA\u71DC\u71F8\u71FE\u7200\u7207\u7208\u7209\u7213\u7217\u721A\u721D\u721F\u7224\u722B\u722F\u7234\u7238\u7239\u7241\u7242\u7243\u7245\u724E\u724F\u7250\u7253\u7255\u7256\u725A\u725C\u725E\u7260\u7263\u7268\u726B\u726E\u726F\u7271\u7277\u7278\u727B\u727C\u727F\u7284\u7289\u728D\u728E\u7293\u729B\u72A8\u72AD\u72AE\u72B1\u72B4\u72BE\u72C1\u72C7\u72C9\u72CC\u72D5\u72D6\u72D8\u72DF\u72E5\u72F3\u72F4\u72FA\u72FB"],
      ["8fcba1", "\u72FE\u7302\u7304\u7305\u7307\u730B\u730D\u7312\u7313\u7318\u7319\u731E\u7322\u7324\u7327\u7328\u732C\u7331\u7332\u7335\u733A\u733B\u733D\u7343\u734D\u7350\u7352\u7356\u7358\u735D\u735E\u735F\u7360\u7366\u7367\u7369\u736B\u736C\u736E\u736F\u7371\u7377\u7379\u737C\u7380\u7381\u7383\u7385\u7386\u738E\u7390\u7393\u7395\u7397\u7398\u739C\u739E\u739F\u73A0\u73A2\u73A5\u73A6\u73AA\u73AB\u73AD\u73B5\u73B7\u73B9\u73BC\u73BD\u73BF\u73C5\u73C6\u73C9\u73CB\u73CC\u73CF\u73D2\u73D3\u73D6\u73D9\u73DD\u73E1\u73E3\u73E6\u73E7\u73E9\u73F4\u73F5\u73F7\u73F9\u73FA\u73FB\u73FD"],
      ["8fcca1", "\u73FF\u7400\u7401\u7404\u7407\u740A\u7411\u741A\u741B\u7424\u7426\u7428", 9, "\u7439\u7440\u7443\u7444\u7446\u7447\u744B\u744D\u7451\u7452\u7457\u745D\u7462\u7466\u7467\u7468\u746B\u746D\u746E\u7471\u7472\u7480\u7481\u7485\u7486\u7487\u7489\u748F\u7490\u7491\u7492\u7498\u7499\u749A\u749C\u749F\u74A0\u74A1\u74A3\u74A6\u74A8\u74A9\u74AA\u74AB\u74AE\u74AF\u74B1\u74B2\u74B5\u74B9\u74BB\u74BF\u74C8\u74C9\u74CC\u74D0\u74D3\u74D8\u74DA\u74DB\u74DE\u74DF\u74E4\u74E8\u74EA\u74EB\u74EF\u74F4\u74FA\u74FB\u74FC\u74FF\u7506"],
      ["8fcda1", "\u7512\u7516\u7517\u7520\u7521\u7524\u7527\u7529\u752A\u752F\u7536\u7539\u753D\u753E\u753F\u7540\u7543\u7547\u7548\u754E\u7550\u7552\u7557\u755E\u755F\u7561\u756F\u7571\u7579", 5, "\u7581\u7585\u7590\u7592\u7593\u7595\u7599\u759C\u75A2\u75A4\u75B4\u75BA\u75BF\u75C0\u75C1\u75C4\u75C6\u75CC\u75CE\u75CF\u75D7\u75DC\u75DF\u75E0\u75E1\u75E4\u75E7\u75EC\u75EE\u75EF\u75F1\u75F9\u7600\u7602\u7603\u7604\u7607\u7608\u760A\u760C\u760F\u7612\u7613\u7615\u7616\u7619\u761B\u761C\u761D\u761E\u7623\u7625\u7626\u7629\u762D\u7632\u7633\u7635\u7638\u7639"],
      ["8fcea1", "\u763A\u763C\u764A\u7640\u7641\u7643\u7644\u7645\u7649\u764B\u7655\u7659\u765F\u7664\u7665\u766D\u766E\u766F\u7671\u7674\u7681\u7685\u768C\u768D\u7695\u769B\u769C\u769D\u769F\u76A0\u76A2", 6, "\u76AA\u76AD\u76BD\u76C1\u76C5\u76C9\u76CB\u76CC\u76CE\u76D4\u76D9\u76E0\u76E6\u76E8\u76EC\u76F0\u76F1\u76F6\u76F9\u76FC\u7700\u7706\u770A\u770E\u7712\u7714\u7715\u7717\u7719\u771A\u771C\u7722\u7728\u772D\u772E\u772F\u7734\u7735\u7736\u7739\u773D\u773E\u7742\u7745\u7746\u774A\u774D\u774E\u774F\u7752\u7756\u7757\u775C\u775E\u775F\u7760\u7762"],
      ["8fcfa1", "\u7764\u7767\u776A\u776C\u7770\u7772\u7773\u7774\u777A\u777D\u7780\u7784\u778C\u778D\u7794\u7795\u7796\u779A\u779F\u77A2\u77A7\u77AA\u77AE\u77AF\u77B1\u77B5\u77BE\u77C3\u77C9\u77D1\u77D2\u77D5\u77D9\u77DE\u77DF\u77E0\u77E4\u77E6\u77EA\u77EC\u77F0\u77F1\u77F4\u77F8\u77FB\u7805\u7806\u7809\u780D\u780E\u7811\u781D\u7821\u7822\u7823\u782D\u782E\u7830\u7835\u7837\u7843\u7844\u7847\u7848\u784C\u784E\u7852\u785C\u785E\u7860\u7861\u7863\u7864\u7868\u786A\u786E\u787A\u787E\u788A\u788F\u7894\u7898\u78A1\u789D\u789E\u789F\u78A4\u78A8\u78AC\u78AD\u78B0\u78B1\u78B2\u78B3"],
      ["8fd0a1", "\u78BB\u78BD\u78BF\u78C7\u78C8\u78C9\u78CC\u78CE\u78D2\u78D3\u78D5\u78D6\u78E4\u78DB\u78DF\u78E0\u78E1\u78E6\u78EA\u78F2\u78F3\u7900\u78F6\u78F7\u78FA\u78FB\u78FF\u7906\u790C\u7910\u791A\u791C\u791E\u791F\u7920\u7925\u7927\u7929\u792D\u7931\u7934\u7935\u793B\u793D\u793F\u7944\u7945\u7946\u794A\u794B\u794F\u7951\u7954\u7958\u795B\u795C\u7967\u7969\u796B\u7972\u7979\u797B\u797C\u797E\u798B\u798C\u7991\u7993\u7994\u7995\u7996\u7998\u799B\u799C\u79A1\u79A8\u79A9\u79AB\u79AF\u79B1\u79B4\u79B8\u79BB\u79C2\u79C4\u79C7\u79C8\u79CA\u79CF\u79D4\u79D6\u79DA\u79DD\u79DE"],
      ["8fd1a1", "\u79E0\u79E2\u79E5\u79EA\u79EB\u79ED\u79F1\u79F8\u79FC\u7A02\u7A03\u7A07\u7A09\u7A0A\u7A0C\u7A11\u7A15\u7A1B\u7A1E\u7A21\u7A27\u7A2B\u7A2D\u7A2F\u7A30\u7A34\u7A35\u7A38\u7A39\u7A3A\u7A44\u7A45\u7A47\u7A48\u7A4C\u7A55\u7A56\u7A59\u7A5C\u7A5D\u7A5F\u7A60\u7A65\u7A67\u7A6A\u7A6D\u7A75\u7A78\u7A7E\u7A80\u7A82\u7A85\u7A86\u7A8A\u7A8B\u7A90\u7A91\u7A94\u7A9E\u7AA0\u7AA3\u7AAC\u7AB3\u7AB5\u7AB9\u7ABB\u7ABC\u7AC6\u7AC9\u7ACC\u7ACE\u7AD1\u7ADB\u7AE8\u7AE9\u7AEB\u7AEC\u7AF1\u7AF4\u7AFB\u7AFD\u7AFE\u7B07\u7B14\u7B1F\u7B23\u7B27\u7B29\u7B2A\u7B2B\u7B2D\u7B2E\u7B2F\u7B30"],
      ["8fd2a1", "\u7B31\u7B34\u7B3D\u7B3F\u7B40\u7B41\u7B47\u7B4E\u7B55\u7B60\u7B64\u7B66\u7B69\u7B6A\u7B6D\u7B6F\u7B72\u7B73\u7B77\u7B84\u7B89\u7B8E\u7B90\u7B91\u7B96\u7B9B\u7B9E\u7BA0\u7BA5\u7BAC\u7BAF\u7BB0\u7BB2\u7BB5\u7BB6\u7BBA\u7BBB\u7BBC\u7BBD\u7BC2\u7BC5\u7BC8\u7BCA\u7BD4\u7BD6\u7BD7\u7BD9\u7BDA\u7BDB\u7BE8\u7BEA\u7BF2\u7BF4\u7BF5\u7BF8\u7BF9\u7BFA\u7BFC\u7BFE\u7C01\u7C02\u7C03\u7C04\u7C06\u7C09\u7C0B\u7C0C\u7C0E\u7C0F\u7C19\u7C1B\u7C20\u7C25\u7C26\u7C28\u7C2C\u7C31\u7C33\u7C34\u7C36\u7C39\u7C3A\u7C46\u7C4A\u7C55\u7C51\u7C52\u7C53\u7C59", 5],
      ["8fd3a1", "\u7C61\u7C63\u7C67\u7C69\u7C6D\u7C6E\u7C70\u7C72\u7C79\u7C7C\u7C7D\u7C86\u7C87\u7C8F\u7C94\u7C9E\u7CA0\u7CA6\u7CB0\u7CB6\u7CB7\u7CBA\u7CBB\u7CBC\u7CBF\u7CC4\u7CC7\u7CC8\u7CC9\u7CCD\u7CCF\u7CD3\u7CD4\u7CD5\u7CD7\u7CD9\u7CDA\u7CDD\u7CE6\u7CE9\u7CEB\u7CF5\u7D03\u7D07\u7D08\u7D09\u7D0F\u7D11\u7D12\u7D13\u7D16\u7D1D\u7D1E\u7D23\u7D26\u7D2A\u7D2D\u7D31\u7D3C\u7D3D\u7D3E\u7D40\u7D41\u7D47\u7D48\u7D4D\u7D51\u7D53\u7D57\u7D59\u7D5A\u7D5C\u7D5D\u7D65\u7D67\u7D6A\u7D70\u7D78\u7D7A\u7D7B\u7D7F\u7D81\u7D82\u7D83\u7D85\u7D86\u7D88\u7D8B\u7D8C\u7D8D\u7D91\u7D96\u7D97\u7D9D"],
      ["8fd4a1", "\u7D9E\u7DA6\u7DA7\u7DAA\u7DB3\u7DB6\u7DB7\u7DB9\u7DC2", 4, "\u7DCC\u7DCD\u7DCE\u7DD7\u7DD9\u7E00\u7DE2\u7DE5\u7DE6\u7DEA\u7DEB\u7DED\u7DF1\u7DF5\u7DF6\u7DF9\u7DFA\u7E08\u7E10\u7E11\u7E15\u7E17\u7E1C\u7E1D\u7E20\u7E27\u7E28\u7E2C\u7E2D\u7E2F\u7E33\u7E36\u7E3F\u7E44\u7E45\u7E47\u7E4E\u7E50\u7E52\u7E58\u7E5F\u7E61\u7E62\u7E65\u7E6B\u7E6E\u7E6F\u7E73\u7E78\u7E7E\u7E81\u7E86\u7E87\u7E8A\u7E8D\u7E91\u7E95\u7E98\u7E9A\u7E9D\u7E9E\u7F3C\u7F3B\u7F3D\u7F3E\u7F3F\u7F43\u7F44\u7F47\u7F4F\u7F52\u7F53\u7F5B\u7F5C\u7F5D\u7F61\u7F63\u7F64\u7F65\u7F66\u7F6D"],
      ["8fd5a1", "\u7F71\u7F7D\u7F7E\u7F7F\u7F80\u7F8B\u7F8D\u7F8F\u7F90\u7F91\u7F96\u7F97\u7F9C\u7FA1\u7FA2\u7FA6\u7FAA\u7FAD\u7FB4\u7FBC\u7FBF\u7FC0\u7FC3\u7FC8\u7FCE\u7FCF\u7FDB\u7FDF\u7FE3\u7FE5\u7FE8\u7FEC\u7FEE\u7FEF\u7FF2\u7FFA\u7FFD\u7FFE\u7FFF\u8007\u8008\u800A\u800D\u800E\u800F\u8011\u8013\u8014\u8016\u801D\u801E\u801F\u8020\u8024\u8026\u802C\u802E\u8030\u8034\u8035\u8037\u8039\u803A\u803C\u803E\u8040\u8044\u8060\u8064\u8066\u806D\u8071\u8075\u8081\u8088\u808E\u809C\u809E\u80A6\u80A7\u80AB\u80B8\u80B9\u80C8\u80CD\u80CF\u80D2\u80D4\u80D5\u80D7\u80D8\u80E0\u80ED\u80EE"],
      ["8fd6a1", "\u80F0\u80F2\u80F3\u80F6\u80F9\u80FA\u80FE\u8103\u810B\u8116\u8117\u8118\u811C\u811E\u8120\u8124\u8127\u812C\u8130\u8135\u813A\u813C\u8145\u8147\u814A\u814C\u8152\u8157\u8160\u8161\u8167\u8168\u8169\u816D\u816F\u8177\u8181\u8190\u8184\u8185\u8186\u818B\u818E\u8196\u8198\u819B\u819E\u81A2\u81AE\u81B2\u81B4\u81BB\u81CB\u81C3\u81C5\u81CA\u81CE\u81CF\u81D5\u81D7\u81DB\u81DD\u81DE\u81E1\u81E4\u81EB\u81EC\u81F0\u81F1\u81F2\u81F5\u81F6\u81F8\u81F9\u81FD\u81FF\u8200\u8203\u820F\u8213\u8214\u8219\u821A\u821D\u8221\u8222\u8228\u8232\u8234\u823A\u8243\u8244\u8245\u8246"],
      ["8fd7a1", "\u824B\u824E\u824F\u8251\u8256\u825C\u8260\u8263\u8267\u826D\u8274\u827B\u827D\u827F\u8280\u8281\u8283\u8284\u8287\u8289\u828A\u828E\u8291\u8294\u8296\u8298\u829A\u829B\u82A0\u82A1\u82A3\u82A4\u82A7\u82A8\u82A9\u82AA\u82AE\u82B0\u82B2\u82B4\u82B7\u82BA\u82BC\u82BE\u82BF\u82C6\u82D0\u82D5\u82DA\u82E0\u82E2\u82E4\u82E8\u82EA\u82ED\u82EF\u82F6\u82F7\u82FD\u82FE\u8300\u8301\u8307\u8308\u830A\u830B\u8354\u831B\u831D\u831E\u831F\u8321\u8322\u832C\u832D\u832E\u8330\u8333\u8337\u833A\u833C\u833D\u8342\u8343\u8344\u8347\u834D\u834E\u8351\u8355\u8356\u8357\u8370\u8378"],
      ["8fd8a1", "\u837D\u837F\u8380\u8382\u8384\u8386\u838D\u8392\u8394\u8395\u8398\u8399\u839B\u839C\u839D\u83A6\u83A7\u83A9\u83AC\u83BE\u83BF\u83C0\u83C7\u83C9\u83CF\u83D0\u83D1\u83D4\u83DD\u8353\u83E8\u83EA\u83F6\u83F8\u83F9\u83FC\u8401\u8406\u840A\u840F\u8411\u8415\u8419\u83AD\u842F\u8439\u8445\u8447\u8448\u844A\u844D\u844F\u8451\u8452\u8456\u8458\u8459\u845A\u845C\u8460\u8464\u8465\u8467\u846A\u8470\u8473\u8474\u8476\u8478\u847C\u847D\u8481\u8485\u8492\u8493\u8495\u849E\u84A6\u84A8\u84A9\u84AA\u84AF\u84B1\u84B4\u84BA\u84BD\u84BE\u84C0\u84C2\u84C7\u84C8\u84CC\u84CF\u84D3"],
      ["8fd9a1", "\u84DC\u84E7\u84EA\u84EF\u84F0\u84F1\u84F2\u84F7\u8532\u84FA\u84FB\u84FD\u8502\u8503\u8507\u850C\u850E\u8510\u851C\u851E\u8522\u8523\u8524\u8525\u8527\u852A\u852B\u852F\u8533\u8534\u8536\u853F\u8546\u854F", 4, "\u8556\u8559\u855C", 6, "\u8564\u856B\u856F\u8579\u857A\u857B\u857D\u857F\u8581\u8585\u8586\u8589\u858B\u858C\u858F\u8593\u8598\u859D\u859F\u85A0\u85A2\u85A5\u85A7\u85B4\u85B6\u85B7\u85B8\u85BC\u85BD\u85BE\u85BF\u85C2\u85C7\u85CA\u85CB\u85CE\u85AD\u85D8\u85DA\u85DF\u85E0\u85E6\u85E8\u85ED\u85F3\u85F6\u85FC"],
      ["8fdaa1", "\u85FF\u8600\u8604\u8605\u860D\u860E\u8610\u8611\u8612\u8618\u8619\u861B\u861E\u8621\u8627\u8629\u8636\u8638\u863A\u863C\u863D\u8640\u8642\u8646\u8652\u8653\u8656\u8657\u8658\u8659\u865D\u8660", 4, "\u8669\u866C\u866F\u8675\u8676\u8677\u867A\u868D\u8691\u8696\u8698\u869A\u869C\u86A1\u86A6\u86A7\u86A8\u86AD\u86B1\u86B3\u86B4\u86B5\u86B7\u86B8\u86B9\u86BF\u86C0\u86C1\u86C3\u86C5\u86D1\u86D2\u86D5\u86D7\u86DA\u86DC\u86E0\u86E3\u86E5\u86E7\u8688\u86FA\u86FC\u86FD\u8704\u8705\u8707\u870B\u870E\u870F\u8710\u8713\u8714\u8719\u871E\u871F\u8721\u8723"],
      ["8fdba1", "\u8728\u872E\u872F\u8731\u8732\u8739\u873A\u873C\u873D\u873E\u8740\u8743\u8745\u874D\u8758\u875D\u8761\u8764\u8765\u876F\u8771\u8772\u877B\u8783", 6, "\u878B\u878C\u8790\u8793\u8795\u8797\u8798\u8799\u879E\u87A0\u87A3\u87A7\u87AC\u87AD\u87AE\u87B1\u87B5\u87BE\u87BF\u87C1\u87C8\u87C9\u87CA\u87CE\u87D5\u87D6\u87D9\u87DA\u87DC\u87DF\u87E2\u87E3\u87E4\u87EA\u87EB\u87ED\u87F1\u87F3\u87F8\u87FA\u87FF\u8801\u8803\u8806\u8809\u880A\u880B\u8810\u8819\u8812\u8813\u8814\u8818\u881A\u881B\u881C\u881E\u881F\u8828\u882D\u882E\u8830\u8832\u8835"],
      ["8fdca1", "\u883A\u883C\u8841\u8843\u8845\u8848\u8849\u884A\u884B\u884E\u8851\u8855\u8856\u8858\u885A\u885C\u885F\u8860\u8864\u8869\u8871\u8879\u887B\u8880\u8898\u889A\u889B\u889C\u889F\u88A0\u88A8\u88AA\u88BA\u88BD\u88BE\u88C0\u88CA", 4, "\u88D1\u88D2\u88D3\u88DB\u88DE\u88E7\u88EF\u88F0\u88F1\u88F5\u88F7\u8901\u8906\u890D\u890E\u890F\u8915\u8916\u8918\u8919\u891A\u891C\u8920\u8926\u8927\u8928\u8930\u8931\u8932\u8935\u8939\u893A\u893E\u8940\u8942\u8945\u8946\u8949\u894F\u8952\u8957\u895A\u895B\u895C\u8961\u8962\u8963\u896B\u896E\u8970\u8973\u8975\u897A"],
      ["8fdda1", "\u897B\u897C\u897D\u8989\u898D\u8990\u8994\u8995\u899B\u899C\u899F\u89A0\u89A5\u89B0\u89B4\u89B5\u89B6\u89B7\u89BC\u89D4", 4, "\u89E5\u89E9\u89EB\u89ED\u89F1\u89F3\u89F6\u89F9\u89FD\u89FF\u8A04\u8A05\u8A07\u8A0F\u8A11\u8A12\u8A14\u8A15\u8A1E\u8A20\u8A22\u8A24\u8A26\u8A2B\u8A2C\u8A2F\u8A35\u8A37\u8A3D\u8A3E\u8A40\u8A43\u8A45\u8A47\u8A49\u8A4D\u8A4E\u8A53\u8A56\u8A57\u8A58\u8A5C\u8A5D\u8A61\u8A65\u8A67\u8A75\u8A76\u8A77\u8A79\u8A7A\u8A7B\u8A7E\u8A7F\u8A80\u8A83\u8A86\u8A8B\u8A8F\u8A90\u8A92\u8A96\u8A97\u8A99\u8A9F\u8AA7\u8AA9\u8AAE\u8AAF\u8AB3"],
      ["8fdea1", "\u8AB6\u8AB7\u8ABB\u8ABE\u8AC3\u8AC6\u8AC8\u8AC9\u8ACA\u8AD1\u8AD3\u8AD4\u8AD5\u8AD7\u8ADD\u8ADF\u8AEC\u8AF0\u8AF4\u8AF5\u8AF6\u8AFC\u8AFF\u8B05\u8B06\u8B0B\u8B11\u8B1C\u8B1E\u8B1F\u8B0A\u8B2D\u8B30\u8B37\u8B3C\u8B42", 4, "\u8B48\u8B52\u8B53\u8B54\u8B59\u8B4D\u8B5E\u8B63\u8B6D\u8B76\u8B78\u8B79\u8B7C\u8B7E\u8B81\u8B84\u8B85\u8B8B\u8B8D\u8B8F\u8B94\u8B95\u8B9C\u8B9E\u8B9F\u8C38\u8C39\u8C3D\u8C3E\u8C45\u8C47\u8C49\u8C4B\u8C4F\u8C51\u8C53\u8C54\u8C57\u8C58\u8C5B\u8C5D\u8C59\u8C63\u8C64\u8C66\u8C68\u8C69\u8C6D\u8C73\u8C75\u8C76\u8C7B\u8C7E\u8C86"],
      ["8fdfa1", "\u8C87\u8C8B\u8C90\u8C92\u8C93\u8C99\u8C9B\u8C9C\u8CA4\u8CB9\u8CBA\u8CC5\u8CC6\u8CC9\u8CCB\u8CCF\u8CD6\u8CD5\u8CD9\u8CDD\u8CE1\u8CE8\u8CEC\u8CEF\u8CF0\u8CF2\u8CF5\u8CF7\u8CF8\u8CFE\u8CFF\u8D01\u8D03\u8D09\u8D12\u8D17\u8D1B\u8D65\u8D69\u8D6C\u8D6E\u8D7F\u8D82\u8D84\u8D88\u8D8D\u8D90\u8D91\u8D95\u8D9E\u8D9F\u8DA0\u8DA6\u8DAB\u8DAC\u8DAF\u8DB2\u8DB5\u8DB7\u8DB9\u8DBB\u8DC0\u8DC5\u8DC6\u8DC7\u8DC8\u8DCA\u8DCE\u8DD1\u8DD4\u8DD5\u8DD7\u8DD9\u8DE4\u8DE5\u8DE7\u8DEC\u8DF0\u8DBC\u8DF1\u8DF2\u8DF4\u8DFD\u8E01\u8E04\u8E05\u8E06\u8E0B\u8E11\u8E14\u8E16\u8E20\u8E21\u8E22"],
      ["8fe0a1", "\u8E23\u8E26\u8E27\u8E31\u8E33\u8E36\u8E37\u8E38\u8E39\u8E3D\u8E40\u8E41\u8E4B\u8E4D\u8E4E\u8E4F\u8E54\u8E5B\u8E5C\u8E5D\u8E5E\u8E61\u8E62\u8E69\u8E6C\u8E6D\u8E6F\u8E70\u8E71\u8E79\u8E7A\u8E7B\u8E82\u8E83\u8E89\u8E90\u8E92\u8E95\u8E9A\u8E9B\u8E9D\u8E9E\u8EA2\u8EA7\u8EA9\u8EAD\u8EAE\u8EB3\u8EB5\u8EBA\u8EBB\u8EC0\u8EC1\u8EC3\u8EC4\u8EC7\u8ECF\u8ED1\u8ED4\u8EDC\u8EE8\u8EEE\u8EF0\u8EF1\u8EF7\u8EF9\u8EFA\u8EED\u8F00\u8F02\u8F07\u8F08\u8F0F\u8F10\u8F16\u8F17\u8F18\u8F1E\u8F20\u8F21\u8F23\u8F25\u8F27\u8F28\u8F2C\u8F2D\u8F2E\u8F34\u8F35\u8F36\u8F37\u8F3A\u8F40\u8F41"],
      ["8fe1a1", "\u8F43\u8F47\u8F4F\u8F51", 4, "\u8F58\u8F5D\u8F5E\u8F65\u8F9D\u8FA0\u8FA1\u8FA4\u8FA5\u8FA6\u8FB5\u8FB6\u8FB8\u8FBE\u8FC0\u8FC1\u8FC6\u8FCA\u8FCB\u8FCD\u8FD0\u8FD2\u8FD3\u8FD5\u8FE0\u8FE3\u8FE4\u8FE8\u8FEE\u8FF1\u8FF5\u8FF6\u8FFB\u8FFE\u9002\u9004\u9008\u900C\u9018\u901B\u9028\u9029\u902F\u902A\u902C\u902D\u9033\u9034\u9037\u903F\u9043\u9044\u904C\u905B\u905D\u9062\u9066\u9067\u906C\u9070\u9074\u9079\u9085\u9088\u908B\u908C\u908E\u9090\u9095\u9097\u9098\u9099\u909B\u90A0\u90A1\u90A2\u90A5\u90B0\u90B2\u90B3\u90B4\u90B6\u90BD\u90CC\u90BE\u90C3"],
      ["8fe2a1", "\u90C4\u90C5\u90C7\u90C8\u90D5\u90D7\u90D8\u90D9\u90DC\u90DD\u90DF\u90E5\u90D2\u90F6\u90EB\u90EF\u90F0\u90F4\u90FE\u90FF\u9100\u9104\u9105\u9106\u9108\u910D\u9110\u9114\u9116\u9117\u9118\u911A\u911C\u911E\u9120\u9125\u9122\u9123\u9127\u9129\u912E\u912F\u9131\u9134\u9136\u9137\u9139\u913A\u913C\u913D\u9143\u9147\u9148\u914F\u9153\u9157\u9159\u915A\u915B\u9161\u9164\u9167\u916D\u9174\u9179\u917A\u917B\u9181\u9183\u9185\u9186\u918A\u918E\u9191\u9193\u9194\u9195\u9198\u919E\u91A1\u91A6\u91A8\u91AC\u91AD\u91AE\u91B0\u91B1\u91B2\u91B3\u91B6\u91BB\u91BC\u91BD\u91BF"],
      ["8fe3a1", "\u91C2\u91C3\u91C5\u91D3\u91D4\u91D7\u91D9\u91DA\u91DE\u91E4\u91E5\u91E9\u91EA\u91EC", 5, "\u91F7\u91F9\u91FB\u91FD\u9200\u9201\u9204\u9205\u9206\u9207\u9209\u920A\u920C\u9210\u9212\u9213\u9216\u9218\u921C\u921D\u9223\u9224\u9225\u9226\u9228\u922E\u922F\u9230\u9233\u9235\u9236\u9238\u9239\u923A\u923C\u923E\u9240\u9242\u9243\u9246\u9247\u924A\u924D\u924E\u924F\u9251\u9258\u9259\u925C\u925D\u9260\u9261\u9265\u9267\u9268\u9269\u926E\u926F\u9270\u9275", 4, "\u927B\u927C\u927D\u927F\u9288\u9289\u928A\u928D\u928E\u9292\u9297"],
      ["8fe4a1", "\u9299\u929F\u92A0\u92A4\u92A5\u92A7\u92A8\u92AB\u92AF\u92B2\u92B6\u92B8\u92BA\u92BB\u92BC\u92BD\u92BF", 4, "\u92C5\u92C6\u92C7\u92C8\u92CB\u92CC\u92CD\u92CE\u92D0\u92D3\u92D5\u92D7\u92D8\u92D9\u92DC\u92DD\u92DF\u92E0\u92E1\u92E3\u92E5\u92E7\u92E8\u92EC\u92EE\u92F0\u92F9\u92FB\u92FF\u9300\u9302\u9308\u930D\u9311\u9314\u9315\u931C\u931D\u931E\u931F\u9321\u9324\u9325\u9327\u9329\u932A\u9333\u9334\u9336\u9337\u9347\u9348\u9349\u9350\u9351\u9352\u9355\u9357\u9358\u935A\u935E\u9364\u9365\u9367\u9369\u936A\u936D\u936F\u9370\u9371\u9373\u9374\u9376"],
      ["8fe5a1", "\u937A\u937D\u937F\u9380\u9381\u9382\u9388\u938A\u938B\u938D\u938F\u9392\u9395\u9398\u939B\u939E\u93A1\u93A3\u93A4\u93A6\u93A8\u93AB\u93B4\u93B5\u93B6\u93BA\u93A9\u93C1\u93C4\u93C5\u93C6\u93C7\u93C9", 4, "\u93D3\u93D9\u93DC\u93DE\u93DF\u93E2\u93E6\u93E7\u93F9\u93F7\u93F8\u93FA\u93FB\u93FD\u9401\u9402\u9404\u9408\u9409\u940D\u940E\u940F\u9415\u9416\u9417\u941F\u942E\u942F\u9431\u9432\u9433\u9434\u943B\u943F\u943D\u9443\u9445\u9448\u944A\u944C\u9455\u9459\u945C\u945F\u9461\u9463\u9468\u946B\u946D\u946E\u946F\u9471\u9472\u9484\u9483\u9578\u9579"],
      ["8fe6a1", "\u957E\u9584\u9588\u958C\u958D\u958E\u959D\u959E\u959F\u95A1\u95A6\u95A9\u95AB\u95AC\u95B4\u95B6\u95BA\u95BD\u95BF\u95C6\u95C8\u95C9\u95CB\u95D0\u95D1\u95D2\u95D3\u95D9\u95DA\u95DD\u95DE\u95DF\u95E0\u95E4\u95E6\u961D\u961E\u9622\u9624\u9625\u9626\u962C\u9631\u9633\u9637\u9638\u9639\u963A\u963C\u963D\u9641\u9652\u9654\u9656\u9657\u9658\u9661\u966E\u9674\u967B\u967C\u967E\u967F\u9681\u9682\u9683\u9684\u9689\u9691\u9696\u969A\u969D\u969F\u96A4\u96A5\u96A6\u96A9\u96AE\u96AF\u96B3\u96BA\u96CA\u96D2\u5DB2\u96D8\u96DA\u96DD\u96DE\u96DF\u96E9\u96EF\u96F1\u96FA\u9702"],
      ["8fe7a1", "\u9703\u9705\u9709\u971A\u971B\u971D\u9721\u9722\u9723\u9728\u9731\u9733\u9741\u9743\u974A\u974E\u974F\u9755\u9757\u9758\u975A\u975B\u9763\u9767\u976A\u976E\u9773\u9776\u9777\u9778\u977B\u977D\u977F\u9780\u9789\u9795\u9796\u9797\u9799\u979A\u979E\u979F\u97A2\u97AC\u97AE\u97B1\u97B2\u97B5\u97B6\u97B8\u97B9\u97BA\u97BC\u97BE\u97BF\u97C1\u97C4\u97C5\u97C7\u97C9\u97CA\u97CC\u97CD\u97CE\u97D0\u97D1\u97D4\u97D7\u97D8\u97D9\u97DD\u97DE\u97E0\u97DB\u97E1\u97E4\u97EF\u97F1\u97F4\u97F7\u97F8\u97FA\u9807\u980A\u9819\u980D\u980E\u9814\u9816\u981C\u981E\u9820\u9823\u9826"],
      ["8fe8a1", "\u982B\u982E\u982F\u9830\u9832\u9833\u9835\u9825\u983E\u9844\u9847\u984A\u9851\u9852\u9853\u9856\u9857\u9859\u985A\u9862\u9863\u9865\u9866\u986A\u986C\u98AB\u98AD\u98AE\u98B0\u98B4\u98B7\u98B8\u98BA\u98BB\u98BF\u98C2\u98C5\u98C8\u98CC\u98E1\u98E3\u98E5\u98E6\u98E7\u98EA\u98F3\u98F6\u9902\u9907\u9908\u9911\u9915\u9916\u9917\u991A\u991B\u991C\u991F\u9922\u9926\u9927\u992B\u9931", 4, "\u9939\u993A\u993B\u993C\u9940\u9941\u9946\u9947\u9948\u994D\u994E\u9954\u9958\u9959\u995B\u995C\u995E\u995F\u9960\u999B\u999D\u999F\u99A6\u99B0\u99B1\u99B2\u99B5"],
      ["8fe9a1", "\u99B9\u99BA\u99BD\u99BF\u99C3\u99C9\u99D3\u99D4\u99D9\u99DA\u99DC\u99DE\u99E7\u99EA\u99EB\u99EC\u99F0\u99F4\u99F5\u99F9\u99FD\u99FE\u9A02\u9A03\u9A04\u9A0B\u9A0C\u9A10\u9A11\u9A16\u9A1E\u9A20\u9A22\u9A23\u9A24\u9A27\u9A2D\u9A2E\u9A33\u9A35\u9A36\u9A38\u9A47\u9A41\u9A44\u9A4A\u9A4B\u9A4C\u9A4E\u9A51\u9A54\u9A56\u9A5D\u9AAA\u9AAC\u9AAE\u9AAF\u9AB2\u9AB4\u9AB5\u9AB6\u9AB9\u9ABB\u9ABE\u9ABF\u9AC1\u9AC3\u9AC6\u9AC8\u9ACE\u9AD0\u9AD2\u9AD5\u9AD6\u9AD7\u9ADB\u9ADC\u9AE0\u9AE4\u9AE5\u9AE7\u9AE9\u9AEC\u9AF2\u9AF3\u9AF5\u9AF9\u9AFA\u9AFD\u9AFF", 4],
      ["8feaa1", "\u9B04\u9B05\u9B08\u9B09\u9B0B\u9B0C\u9B0D\u9B0E\u9B10\u9B12\u9B16\u9B19\u9B1B\u9B1C\u9B20\u9B26\u9B2B\u9B2D\u9B33\u9B34\u9B35\u9B37\u9B39\u9B3A\u9B3D\u9B48\u9B4B\u9B4C\u9B55\u9B56\u9B57\u9B5B\u9B5E\u9B61\u9B63\u9B65\u9B66\u9B68\u9B6A", 4, "\u9B73\u9B75\u9B77\u9B78\u9B79\u9B7F\u9B80\u9B84\u9B85\u9B86\u9B87\u9B89\u9B8A\u9B8B\u9B8D\u9B8F\u9B90\u9B94\u9B9A\u9B9D\u9B9E\u9BA6\u9BA7\u9BA9\u9BAC\u9BB0\u9BB1\u9BB2\u9BB7\u9BB8\u9BBB\u9BBC\u9BBE\u9BBF\u9BC1\u9BC7\u9BC8\u9BCE\u9BD0\u9BD7\u9BD8\u9BDD\u9BDF\u9BE5\u9BE7\u9BEA\u9BEB\u9BEF\u9BF3\u9BF7\u9BF8"],
      ["8feba1", "\u9BF9\u9BFA\u9BFD\u9BFF\u9C00\u9C02\u9C0B\u9C0F\u9C11\u9C16\u9C18\u9C19\u9C1A\u9C1C\u9C1E\u9C22\u9C23\u9C26", 4, "\u9C31\u9C35\u9C36\u9C37\u9C3D\u9C41\u9C43\u9C44\u9C45\u9C49\u9C4A\u9C4E\u9C4F\u9C50\u9C53\u9C54\u9C56\u9C58\u9C5B\u9C5D\u9C5E\u9C5F\u9C63\u9C69\u9C6A\u9C5C\u9C6B\u9C68\u9C6E\u9C70\u9C72\u9C75\u9C77\u9C7B\u9CE6\u9CF2\u9CF7\u9CF9\u9D0B\u9D02\u9D11\u9D17\u9D18\u9D1C\u9D1D\u9D1E\u9D2F\u9D30\u9D32\u9D33\u9D34\u9D3A\u9D3C\u9D45\u9D3D\u9D42\u9D43\u9D47\u9D4A\u9D53\u9D54\u9D5F\u9D63\u9D62\u9D65\u9D69\u9D6A\u9D6B\u9D70\u9D76\u9D77\u9D7B"],
      ["8feca1", "\u9D7C\u9D7E\u9D83\u9D84\u9D86\u9D8A\u9D8D\u9D8E\u9D92\u9D93\u9D95\u9D96\u9D97\u9D98\u9DA1\u9DAA\u9DAC\u9DAE\u9DB1\u9DB5\u9DB9\u9DBC\u9DBF\u9DC3\u9DC7\u9DC9\u9DCA\u9DD4\u9DD5\u9DD6\u9DD7\u9DDA\u9DDE\u9DDF\u9DE0\u9DE5\u9DE7\u9DE9\u9DEB\u9DEE\u9DF0\u9DF3\u9DF4\u9DFE\u9E0A\u9E02\u9E07\u9E0E\u9E10\u9E11\u9E12\u9E15\u9E16\u9E19\u9E1C\u9E1D\u9E7A\u9E7B\u9E7C\u9E80\u9E82\u9E83\u9E84\u9E85\u9E87\u9E8E\u9E8F\u9E96\u9E98\u9E9B\u9E9E\u9EA4\u9EA8\u9EAC\u9EAE\u9EAF\u9EB0\u9EB3\u9EB4\u9EB5\u9EC6\u9EC8\u9ECB\u9ED5\u9EDF\u9EE4\u9EE7\u9EEC\u9EED\u9EEE\u9EF0\u9EF1\u9EF2\u9EF5"],
      ["8feda1", "\u9EF8\u9EFF\u9F02\u9F03\u9F09\u9F0F\u9F10\u9F11\u9F12\u9F14\u9F16\u9F17\u9F19\u9F1A\u9F1B\u9F1F\u9F22\u9F26\u9F2A\u9F2B\u9F2F\u9F31\u9F32\u9F34\u9F37\u9F39\u9F3A\u9F3C\u9F3D\u9F3F\u9F41\u9F43", 4, "\u9F53\u9F55\u9F56\u9F57\u9F58\u9F5A\u9F5D\u9F5E\u9F68\u9F69\u9F6D", 4, "\u9F73\u9F75\u9F7A\u9F7D\u9F8F\u9F90\u9F91\u9F92\u9F94\u9F96\u9F97\u9F9E\u9FA1\u9FA2\u9FA3\u9FA5"]
    ];
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/tables/cp936.json
var require_cp936 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/tables/cp936.json"(exports2, module2) {
    module2.exports = [
      ["0", "\0", 127, "\u20AC"],
      ["8140", "\u4E02\u4E04\u4E05\u4E06\u4E0F\u4E12\u4E17\u4E1F\u4E20\u4E21\u4E23\u4E26\u4E29\u4E2E\u4E2F\u4E31\u4E33\u4E35\u4E37\u4E3C\u4E40\u4E41\u4E42\u4E44\u4E46\u4E4A\u4E51\u4E55\u4E57\u4E5A\u4E5B\u4E62\u4E63\u4E64\u4E65\u4E67\u4E68\u4E6A", 5, "\u4E72\u4E74", 9, "\u4E7F", 6, "\u4E87\u4E8A"],
      ["8180", "\u4E90\u4E96\u4E97\u4E99\u4E9C\u4E9D\u4E9E\u4EA3\u4EAA\u4EAF\u4EB0\u4EB1\u4EB4\u4EB6\u4EB7\u4EB8\u4EB9\u4EBC\u4EBD\u4EBE\u4EC8\u4ECC\u4ECF\u4ED0\u4ED2\u4EDA\u4EDB\u4EDC\u4EE0\u4EE2\u4EE6\u4EE7\u4EE9\u4EED\u4EEE\u4EEF\u4EF1\u4EF4\u4EF8\u4EF9\u4EFA\u4EFC\u4EFE\u4F00\u4F02", 6, "\u4F0B\u4F0C\u4F12", 4, "\u4F1C\u4F1D\u4F21\u4F23\u4F28\u4F29\u4F2C\u4F2D\u4F2E\u4F31\u4F33\u4F35\u4F37\u4F39\u4F3B\u4F3E", 4, "\u4F44\u4F45\u4F47", 5, "\u4F52\u4F54\u4F56\u4F61\u4F62\u4F66\u4F68\u4F6A\u4F6B\u4F6D\u4F6E\u4F71\u4F72\u4F75\u4F77\u4F78\u4F79\u4F7A\u4F7D\u4F80\u4F81\u4F82\u4F85\u4F86\u4F87\u4F8A\u4F8C\u4F8E\u4F90\u4F92\u4F93\u4F95\u4F96\u4F98\u4F99\u4F9A\u4F9C\u4F9E\u4F9F\u4FA1\u4FA2"],
      ["8240", "\u4FA4\u4FAB\u4FAD\u4FB0", 4, "\u4FB6", 8, "\u4FC0\u4FC1\u4FC2\u4FC6\u4FC7\u4FC8\u4FC9\u4FCB\u4FCC\u4FCD\u4FD2", 4, "\u4FD9\u4FDB\u4FE0\u4FE2\u4FE4\u4FE5\u4FE7\u4FEB\u4FEC\u4FF0\u4FF2\u4FF4\u4FF5\u4FF6\u4FF7\u4FF9\u4FFB\u4FFC\u4FFD\u4FFF", 11],
      ["8280", "\u500B\u500E\u5010\u5011\u5013\u5015\u5016\u5017\u501B\u501D\u501E\u5020\u5022\u5023\u5024\u5027\u502B\u502F", 10, "\u503B\u503D\u503F\u5040\u5041\u5042\u5044\u5045\u5046\u5049\u504A\u504B\u504D\u5050", 4, "\u5056\u5057\u5058\u5059\u505B\u505D", 7, "\u5066", 5, "\u506D", 8, "\u5078\u5079\u507A\u507C\u507D\u5081\u5082\u5083\u5084\u5086\u5087\u5089\u508A\u508B\u508C\u508E", 20, "\u50A4\u50A6\u50AA\u50AB\u50AD", 4, "\u50B3", 6, "\u50BC"],
      ["8340", "\u50BD", 17, "\u50D0", 5, "\u50D7\u50D8\u50D9\u50DB", 10, "\u50E8\u50E9\u50EA\u50EB\u50EF\u50F0\u50F1\u50F2\u50F4\u50F6", 4, "\u50FC", 9, "\u5108"],
      ["8380", "\u5109\u510A\u510C", 5, "\u5113", 13, "\u5122", 28, "\u5142\u5147\u514A\u514C\u514E\u514F\u5150\u5152\u5153\u5157\u5158\u5159\u515B\u515D", 4, "\u5163\u5164\u5166\u5167\u5169\u516A\u516F\u5172\u517A\u517E\u517F\u5183\u5184\u5186\u5187\u518A\u518B\u518E\u518F\u5190\u5191\u5193\u5194\u5198\u519A\u519D\u519E\u519F\u51A1\u51A3\u51A6", 4, "\u51AD\u51AE\u51B4\u51B8\u51B9\u51BA\u51BE\u51BF\u51C1\u51C2\u51C3\u51C5\u51C8\u51CA\u51CD\u51CE\u51D0\u51D2", 5],
      ["8440", "\u51D8\u51D9\u51DA\u51DC\u51DE\u51DF\u51E2\u51E3\u51E5", 5, "\u51EC\u51EE\u51F1\u51F2\u51F4\u51F7\u51FE\u5204\u5205\u5209\u520B\u520C\u520F\u5210\u5213\u5214\u5215\u521C\u521E\u521F\u5221\u5222\u5223\u5225\u5226\u5227\u522A\u522C\u522F\u5231\u5232\u5234\u5235\u523C\u523E\u5244", 5, "\u524B\u524E\u524F\u5252\u5253\u5255\u5257\u5258"],
      ["8480", "\u5259\u525A\u525B\u525D\u525F\u5260\u5262\u5263\u5264\u5266\u5268\u526B\u526C\u526D\u526E\u5270\u5271\u5273", 9, "\u527E\u5280\u5283", 4, "\u5289", 6, "\u5291\u5292\u5294", 6, "\u529C\u52A4\u52A5\u52A6\u52A7\u52AE\u52AF\u52B0\u52B4", 9, "\u52C0\u52C1\u52C2\u52C4\u52C5\u52C6\u52C8\u52CA\u52CC\u52CD\u52CE\u52CF\u52D1\u52D3\u52D4\u52D5\u52D7\u52D9", 5, "\u52E0\u52E1\u52E2\u52E3\u52E5", 10, "\u52F1", 7, "\u52FB\u52FC\u52FD\u5301\u5302\u5303\u5304\u5307\u5309\u530A\u530B\u530C\u530E"],
      ["8540", "\u5311\u5312\u5313\u5314\u5318\u531B\u531C\u531E\u531F\u5322\u5324\u5325\u5327\u5328\u5329\u532B\u532C\u532D\u532F", 9, "\u533C\u533D\u5340\u5342\u5344\u5346\u534B\u534C\u534D\u5350\u5354\u5358\u5359\u535B\u535D\u5365\u5368\u536A\u536C\u536D\u5372\u5376\u5379\u537B\u537C\u537D\u537E\u5380\u5381\u5383\u5387\u5388\u538A\u538E\u538F"],
      ["8580", "\u5390", 4, "\u5396\u5397\u5399\u539B\u539C\u539E\u53A0\u53A1\u53A4\u53A7\u53AA\u53AB\u53AC\u53AD\u53AF", 6, "\u53B7\u53B8\u53B9\u53BA\u53BC\u53BD\u53BE\u53C0\u53C3", 4, "\u53CE\u53CF\u53D0\u53D2\u53D3\u53D5\u53DA\u53DC\u53DD\u53DE\u53E1\u53E2\u53E7\u53F4\u53FA\u53FE\u53FF\u5400\u5402\u5405\u5407\u540B\u5414\u5418\u5419\u541A\u541C\u5422\u5424\u5425\u542A\u5430\u5433\u5436\u5437\u543A\u543D\u543F\u5441\u5442\u5444\u5445\u5447\u5449\u544C\u544D\u544E\u544F\u5451\u545A\u545D", 4, "\u5463\u5465\u5467\u5469", 7, "\u5474\u5479\u547A\u547E\u547F\u5481\u5483\u5485\u5487\u5488\u5489\u548A\u548D\u5491\u5493\u5497\u5498\u549C\u549E\u549F\u54A0\u54A1"],
      ["8640", "\u54A2\u54A5\u54AE\u54B0\u54B2\u54B5\u54B6\u54B7\u54B9\u54BA\u54BC\u54BE\u54C3\u54C5\u54CA\u54CB\u54D6\u54D8\u54DB\u54E0", 4, "\u54EB\u54EC\u54EF\u54F0\u54F1\u54F4", 5, "\u54FB\u54FE\u5500\u5502\u5503\u5504\u5505\u5508\u550A", 4, "\u5512\u5513\u5515", 5, "\u551C\u551D\u551E\u551F\u5521\u5525\u5526"],
      ["8680", "\u5528\u5529\u552B\u552D\u5532\u5534\u5535\u5536\u5538\u5539\u553A\u553B\u553D\u5540\u5542\u5545\u5547\u5548\u554B", 4, "\u5551\u5552\u5553\u5554\u5557", 4, "\u555D\u555E\u555F\u5560\u5562\u5563\u5568\u5569\u556B\u556F", 5, "\u5579\u557A\u557D\u557F\u5585\u5586\u558C\u558D\u558E\u5590\u5592\u5593\u5595\u5596\u5597\u559A\u559B\u559E\u55A0", 6, "\u55A8", 8, "\u55B2\u55B4\u55B6\u55B8\u55BA\u55BC\u55BF", 4, "\u55C6\u55C7\u55C8\u55CA\u55CB\u55CE\u55CF\u55D0\u55D5\u55D7", 4, "\u55DE\u55E0\u55E2\u55E7\u55E9\u55ED\u55EE\u55F0\u55F1\u55F4\u55F6\u55F8", 4, "\u55FF\u5602\u5603\u5604\u5605"],
      ["8740", "\u5606\u5607\u560A\u560B\u560D\u5610", 7, "\u5619\u561A\u561C\u561D\u5620\u5621\u5622\u5625\u5626\u5628\u5629\u562A\u562B\u562E\u562F\u5630\u5633\u5635\u5637\u5638\u563A\u563C\u563D\u563E\u5640", 11, "\u564F", 4, "\u5655\u5656\u565A\u565B\u565D", 4],
      ["8780", "\u5663\u5665\u5666\u5667\u566D\u566E\u566F\u5670\u5672\u5673\u5674\u5675\u5677\u5678\u5679\u567A\u567D", 7, "\u5687", 6, "\u5690\u5691\u5692\u5694", 14, "\u56A4", 10, "\u56B0", 6, "\u56B8\u56B9\u56BA\u56BB\u56BD", 12, "\u56CB", 8, "\u56D5\u56D6\u56D8\u56D9\u56DC\u56E3\u56E5", 5, "\u56EC\u56EE\u56EF\u56F2\u56F3\u56F6\u56F7\u56F8\u56FB\u56FC\u5700\u5701\u5702\u5705\u5707\u570B", 6],
      ["8840", "\u5712", 9, "\u571D\u571E\u5720\u5721\u5722\u5724\u5725\u5726\u5727\u572B\u5731\u5732\u5734", 4, "\u573C\u573D\u573F\u5741\u5743\u5744\u5745\u5746\u5748\u5749\u574B\u5752", 4, "\u5758\u5759\u5762\u5763\u5765\u5767\u576C\u576E\u5770\u5771\u5772\u5774\u5775\u5778\u5779\u577A\u577D\u577E\u577F\u5780"],
      ["8880", "\u5781\u5787\u5788\u5789\u578A\u578D", 4, "\u5794", 6, "\u579C\u579D\u579E\u579F\u57A5\u57A8\u57AA\u57AC\u57AF\u57B0\u57B1\u57B3\u57B5\u57B6\u57B7\u57B9", 8, "\u57C4", 6, "\u57CC\u57CD\u57D0\u57D1\u57D3\u57D6\u57D7\u57DB\u57DC\u57DE\u57E1\u57E2\u57E3\u57E5", 7, "\u57EE\u57F0\u57F1\u57F2\u57F3\u57F5\u57F6\u57F7\u57FB\u57FC\u57FE\u57FF\u5801\u5803\u5804\u5805\u5808\u5809\u580A\u580C\u580E\u580F\u5810\u5812\u5813\u5814\u5816\u5817\u5818\u581A\u581B\u581C\u581D\u581F\u5822\u5823\u5825", 4, "\u582B", 4, "\u5831\u5832\u5833\u5834\u5836", 7],
      ["8940", "\u583E", 5, "\u5845", 6, "\u584E\u584F\u5850\u5852\u5853\u5855\u5856\u5857\u5859", 4, "\u585F", 5, "\u5866", 4, "\u586D", 16, "\u587F\u5882\u5884\u5886\u5887\u5888\u588A\u588B\u588C"],
      ["8980", "\u588D", 4, "\u5894", 4, "\u589B\u589C\u589D\u58A0", 7, "\u58AA", 17, "\u58BD\u58BE\u58BF\u58C0\u58C2\u58C3\u58C4\u58C6", 10, "\u58D2\u58D3\u58D4\u58D6", 13, "\u58E5", 5, "\u58ED\u58EF\u58F1\u58F2\u58F4\u58F5\u58F7\u58F8\u58FA", 7, "\u5903\u5905\u5906\u5908", 4, "\u590E\u5910\u5911\u5912\u5913\u5917\u5918\u591B\u591D\u591E\u5920\u5921\u5922\u5923\u5926\u5928\u592C\u5930\u5932\u5933\u5935\u5936\u593B"],
      ["8a40", "\u593D\u593E\u593F\u5940\u5943\u5945\u5946\u594A\u594C\u594D\u5950\u5952\u5953\u5959\u595B", 4, "\u5961\u5963\u5964\u5966", 12, "\u5975\u5977\u597A\u597B\u597C\u597E\u597F\u5980\u5985\u5989\u598B\u598C\u598E\u598F\u5990\u5991\u5994\u5995\u5998\u599A\u599B\u599C\u599D\u599F\u59A0\u59A1\u59A2\u59A6"],
      ["8a80", "\u59A7\u59AC\u59AD\u59B0\u59B1\u59B3", 5, "\u59BA\u59BC\u59BD\u59BF", 6, "\u59C7\u59C8\u59C9\u59CC\u59CD\u59CE\u59CF\u59D5\u59D6\u59D9\u59DB\u59DE", 4, "\u59E4\u59E6\u59E7\u59E9\u59EA\u59EB\u59ED", 11, "\u59FA\u59FC\u59FD\u59FE\u5A00\u5A02\u5A0A\u5A0B\u5A0D\u5A0E\u5A0F\u5A10\u5A12\u5A14\u5A15\u5A16\u5A17\u5A19\u5A1A\u5A1B\u5A1D\u5A1E\u5A21\u5A22\u5A24\u5A26\u5A27\u5A28\u5A2A", 6, "\u5A33\u5A35\u5A37", 4, "\u5A3D\u5A3E\u5A3F\u5A41", 4, "\u5A47\u5A48\u5A4B", 9, "\u5A56\u5A57\u5A58\u5A59\u5A5B", 5],
      ["8b40", "\u5A61\u5A63\u5A64\u5A65\u5A66\u5A68\u5A69\u5A6B", 8, "\u5A78\u5A79\u5A7B\u5A7C\u5A7D\u5A7E\u5A80", 17, "\u5A93", 6, "\u5A9C", 13, "\u5AAB\u5AAC"],
      ["8b80", "\u5AAD", 4, "\u5AB4\u5AB6\u5AB7\u5AB9", 4, "\u5ABF\u5AC0\u5AC3", 5, "\u5ACA\u5ACB\u5ACD", 4, "\u5AD3\u5AD5\u5AD7\u5AD9\u5ADA\u5ADB\u5ADD\u5ADE\u5ADF\u5AE2\u5AE4\u5AE5\u5AE7\u5AE8\u5AEA\u5AEC", 4, "\u5AF2", 22, "\u5B0A", 11, "\u5B18", 25, "\u5B33\u5B35\u5B36\u5B38", 7, "\u5B41", 6],
      ["8c40", "\u5B48", 7, "\u5B52\u5B56\u5B5E\u5B60\u5B61\u5B67\u5B68\u5B6B\u5B6D\u5B6E\u5B6F\u5B72\u5B74\u5B76\u5B77\u5B78\u5B79\u5B7B\u5B7C\u5B7E\u5B7F\u5B82\u5B86\u5B8A\u5B8D\u5B8E\u5B90\u5B91\u5B92\u5B94\u5B96\u5B9F\u5BA7\u5BA8\u5BA9\u5BAC\u5BAD\u5BAE\u5BAF\u5BB1\u5BB2\u5BB7\u5BBA\u5BBB\u5BBC\u5BC0\u5BC1\u5BC3\u5BC8\u5BC9\u5BCA\u5BCB\u5BCD\u5BCE\u5BCF"],
      ["8c80", "\u5BD1\u5BD4", 8, "\u5BE0\u5BE2\u5BE3\u5BE6\u5BE7\u5BE9", 4, "\u5BEF\u5BF1", 6, "\u5BFD\u5BFE\u5C00\u5C02\u5C03\u5C05\u5C07\u5C08\u5C0B\u5C0C\u5C0D\u5C0E\u5C10\u5C12\u5C13\u5C17\u5C19\u5C1B\u5C1E\u5C1F\u5C20\u5C21\u5C23\u5C26\u5C28\u5C29\u5C2A\u5C2B\u5C2D\u5C2E\u5C2F\u5C30\u5C32\u5C33\u5C35\u5C36\u5C37\u5C43\u5C44\u5C46\u5C47\u5C4C\u5C4D\u5C52\u5C53\u5C54\u5C56\u5C57\u5C58\u5C5A\u5C5B\u5C5C\u5C5D\u5C5F\u5C62\u5C64\u5C67", 6, "\u5C70\u5C72", 6, "\u5C7B\u5C7C\u5C7D\u5C7E\u5C80\u5C83", 4, "\u5C89\u5C8A\u5C8B\u5C8E\u5C8F\u5C92\u5C93\u5C95\u5C9D", 4, "\u5CA4", 4],
      ["8d40", "\u5CAA\u5CAE\u5CAF\u5CB0\u5CB2\u5CB4\u5CB6\u5CB9\u5CBA\u5CBB\u5CBC\u5CBE\u5CC0\u5CC2\u5CC3\u5CC5", 5, "\u5CCC", 5, "\u5CD3", 5, "\u5CDA", 6, "\u5CE2\u5CE3\u5CE7\u5CE9\u5CEB\u5CEC\u5CEE\u5CEF\u5CF1", 9, "\u5CFC", 4],
      ["8d80", "\u5D01\u5D04\u5D05\u5D08", 5, "\u5D0F", 4, "\u5D15\u5D17\u5D18\u5D19\u5D1A\u5D1C\u5D1D\u5D1F", 4, "\u5D25\u5D28\u5D2A\u5D2B\u5D2C\u5D2F", 4, "\u5D35", 7, "\u5D3F", 7, "\u5D48\u5D49\u5D4D", 10, "\u5D59\u5D5A\u5D5C\u5D5E", 10, "\u5D6A\u5D6D\u5D6E\u5D70\u5D71\u5D72\u5D73\u5D75", 12, "\u5D83", 21, "\u5D9A\u5D9B\u5D9C\u5D9E\u5D9F\u5DA0"],
      ["8e40", "\u5DA1", 21, "\u5DB8", 12, "\u5DC6", 6, "\u5DCE", 12, "\u5DDC\u5DDF\u5DE0\u5DE3\u5DE4\u5DEA\u5DEC\u5DED"],
      ["8e80", "\u5DF0\u5DF5\u5DF6\u5DF8", 4, "\u5DFF\u5E00\u5E04\u5E07\u5E09\u5E0A\u5E0B\u5E0D\u5E0E\u5E12\u5E13\u5E17\u5E1E", 7, "\u5E28", 4, "\u5E2F\u5E30\u5E32", 4, "\u5E39\u5E3A\u5E3E\u5E3F\u5E40\u5E41\u5E43\u5E46", 5, "\u5E4D", 6, "\u5E56", 4, "\u5E5C\u5E5D\u5E5F\u5E60\u5E63", 14, "\u5E75\u5E77\u5E79\u5E7E\u5E81\u5E82\u5E83\u5E85\u5E88\u5E89\u5E8C\u5E8D\u5E8E\u5E92\u5E98\u5E9B\u5E9D\u5EA1\u5EA2\u5EA3\u5EA4\u5EA8", 4, "\u5EAE", 4, "\u5EB4\u5EBA\u5EBB\u5EBC\u5EBD\u5EBF", 6],
      ["8f40", "\u5EC6\u5EC7\u5EC8\u5ECB", 5, "\u5ED4\u5ED5\u5ED7\u5ED8\u5ED9\u5EDA\u5EDC", 11, "\u5EE9\u5EEB", 8, "\u5EF5\u5EF8\u5EF9\u5EFB\u5EFC\u5EFD\u5F05\u5F06\u5F07\u5F09\u5F0C\u5F0D\u5F0E\u5F10\u5F12\u5F14\u5F16\u5F19\u5F1A\u5F1C\u5F1D\u5F1E\u5F21\u5F22\u5F23\u5F24"],
      ["8f80", "\u5F28\u5F2B\u5F2C\u5F2E\u5F30\u5F32", 6, "\u5F3B\u5F3D\u5F3E\u5F3F\u5F41", 14, "\u5F51\u5F54\u5F59\u5F5A\u5F5B\u5F5C\u5F5E\u5F5F\u5F60\u5F63\u5F65\u5F67\u5F68\u5F6B\u5F6E\u5F6F\u5F72\u5F74\u5F75\u5F76\u5F78\u5F7A\u5F7D\u5F7E\u5F7F\u5F83\u5F86\u5F8D\u5F8E\u5F8F\u5F91\u5F93\u5F94\u5F96\u5F9A\u5F9B\u5F9D\u5F9E\u5F9F\u5FA0\u5FA2", 5, "\u5FA9\u5FAB\u5FAC\u5FAF", 5, "\u5FB6\u5FB8\u5FB9\u5FBA\u5FBB\u5FBE", 4, "\u5FC7\u5FC8\u5FCA\u5FCB\u5FCE\u5FD3\u5FD4\u5FD5\u5FDA\u5FDB\u5FDC\u5FDE\u5FDF\u5FE2\u5FE3\u5FE5\u5FE6\u5FE8\u5FE9\u5FEC\u5FEF\u5FF0\u5FF2\u5FF3\u5FF4\u5FF6\u5FF7\u5FF9\u5FFA\u5FFC\u6007"],
      ["9040", "\u6008\u6009\u600B\u600C\u6010\u6011\u6013\u6017\u6018\u601A\u601E\u601F\u6022\u6023\u6024\u602C\u602D\u602E\u6030", 4, "\u6036", 4, "\u603D\u603E\u6040\u6044", 6, "\u604C\u604E\u604F\u6051\u6053\u6054\u6056\u6057\u6058\u605B\u605C\u605E\u605F\u6060\u6061\u6065\u6066\u606E\u6071\u6072\u6074\u6075\u6077\u607E\u6080"],
      ["9080", "\u6081\u6082\u6085\u6086\u6087\u6088\u608A\u608B\u608E\u608F\u6090\u6091\u6093\u6095\u6097\u6098\u6099\u609C\u609E\u60A1\u60A2\u60A4\u60A5\u60A7\u60A9\u60AA\u60AE\u60B0\u60B3\u60B5\u60B6\u60B7\u60B9\u60BA\u60BD", 7, "\u60C7\u60C8\u60C9\u60CC", 4, "\u60D2\u60D3\u60D4\u60D6\u60D7\u60D9\u60DB\u60DE\u60E1", 4, "\u60EA\u60F1\u60F2\u60F5\u60F7\u60F8\u60FB", 4, "\u6102\u6103\u6104\u6105\u6107\u610A\u610B\u610C\u6110", 4, "\u6116\u6117\u6118\u6119\u611B\u611C\u611D\u611E\u6121\u6122\u6125\u6128\u6129\u612A\u612C", 18, "\u6140", 6],
      ["9140", "\u6147\u6149\u614B\u614D\u614F\u6150\u6152\u6153\u6154\u6156", 6, "\u615E\u615F\u6160\u6161\u6163\u6164\u6165\u6166\u6169", 6, "\u6171\u6172\u6173\u6174\u6176\u6178", 18, "\u618C\u618D\u618F", 4, "\u6195"],
      ["9180", "\u6196", 6, "\u619E", 8, "\u61AA\u61AB\u61AD", 9, "\u61B8", 5, "\u61BF\u61C0\u61C1\u61C3", 4, "\u61C9\u61CC", 4, "\u61D3\u61D5", 16, "\u61E7", 13, "\u61F6", 8, "\u6200", 5, "\u6207\u6209\u6213\u6214\u6219\u621C\u621D\u621E\u6220\u6223\u6226\u6227\u6228\u6229\u622B\u622D\u622F\u6230\u6231\u6232\u6235\u6236\u6238", 4, "\u6242\u6244\u6245\u6246\u624A"],
      ["9240", "\u624F\u6250\u6255\u6256\u6257\u6259\u625A\u625C", 6, "\u6264\u6265\u6268\u6271\u6272\u6274\u6275\u6277\u6278\u627A\u627B\u627D\u6281\u6282\u6283\u6285\u6286\u6287\u6288\u628B", 5, "\u6294\u6299\u629C\u629D\u629E\u62A3\u62A6\u62A7\u62A9\u62AA\u62AD\u62AE\u62AF\u62B0\u62B2\u62B3\u62B4\u62B6\u62B7\u62B8\u62BA\u62BE\u62C0\u62C1"],
      ["9280", "\u62C3\u62CB\u62CF\u62D1\u62D5\u62DD\u62DE\u62E0\u62E1\u62E4\u62EA\u62EB\u62F0\u62F2\u62F5\u62F8\u62F9\u62FA\u62FB\u6300\u6303\u6304\u6305\u6306\u630A\u630B\u630C\u630D\u630F\u6310\u6312\u6313\u6314\u6315\u6317\u6318\u6319\u631C\u6326\u6327\u6329\u632C\u632D\u632E\u6330\u6331\u6333", 5, "\u633B\u633C\u633E\u633F\u6340\u6341\u6344\u6347\u6348\u634A\u6351\u6352\u6353\u6354\u6356", 7, "\u6360\u6364\u6365\u6366\u6368\u636A\u636B\u636C\u636F\u6370\u6372\u6373\u6374\u6375\u6378\u6379\u637C\u637D\u637E\u637F\u6381\u6383\u6384\u6385\u6386\u638B\u638D\u6391\u6393\u6394\u6395\u6397\u6399", 6, "\u63A1\u63A4\u63A6\u63AB\u63AF\u63B1\u63B2\u63B5\u63B6\u63B9\u63BB\u63BD\u63BF\u63C0"],
      ["9340", "\u63C1\u63C2\u63C3\u63C5\u63C7\u63C8\u63CA\u63CB\u63CC\u63D1\u63D3\u63D4\u63D5\u63D7", 6, "\u63DF\u63E2\u63E4", 4, "\u63EB\u63EC\u63EE\u63EF\u63F0\u63F1\u63F3\u63F5\u63F7\u63F9\u63FA\u63FB\u63FC\u63FE\u6403\u6404\u6406", 4, "\u640D\u640E\u6411\u6412\u6415", 5, "\u641D\u641F\u6422\u6423\u6424"],
      ["9380", "\u6425\u6427\u6428\u6429\u642B\u642E", 5, "\u6435", 4, "\u643B\u643C\u643E\u6440\u6442\u6443\u6449\u644B", 6, "\u6453\u6455\u6456\u6457\u6459", 4, "\u645F", 7, "\u6468\u646A\u646B\u646C\u646E", 9, "\u647B", 6, "\u6483\u6486\u6488", 8, "\u6493\u6494\u6497\u6498\u649A\u649B\u649C\u649D\u649F", 4, "\u64A5\u64A6\u64A7\u64A8\u64AA\u64AB\u64AF\u64B1\u64B2\u64B3\u64B4\u64B6\u64B9\u64BB\u64BD\u64BE\u64BF\u64C1\u64C3\u64C4\u64C6", 6, "\u64CF\u64D1\u64D3\u64D4\u64D5\u64D6\u64D9\u64DA"],
      ["9440", "\u64DB\u64DC\u64DD\u64DF\u64E0\u64E1\u64E3\u64E5\u64E7", 24, "\u6501", 7, "\u650A", 7, "\u6513", 4, "\u6519", 8],
      ["9480", "\u6522\u6523\u6524\u6526", 4, "\u652C\u652D\u6530\u6531\u6532\u6533\u6537\u653A\u653C\u653D\u6540", 4, "\u6546\u6547\u654A\u654B\u654D\u654E\u6550\u6552\u6553\u6554\u6557\u6558\u655A\u655C\u655F\u6560\u6561\u6564\u6565\u6567\u6568\u6569\u656A\u656D\u656E\u656F\u6571\u6573\u6575\u6576\u6578", 14, "\u6588\u6589\u658A\u658D\u658E\u658F\u6592\u6594\u6595\u6596\u6598\u659A\u659D\u659E\u65A0\u65A2\u65A3\u65A6\u65A8\u65AA\u65AC\u65AE\u65B1", 7, "\u65BA\u65BB\u65BE\u65BF\u65C0\u65C2\u65C7\u65C8\u65C9\u65CA\u65CD\u65D0\u65D1\u65D3\u65D4\u65D5\u65D8", 7, "\u65E1\u65E3\u65E4\u65EA\u65EB"],
      ["9540", "\u65F2\u65F3\u65F4\u65F5\u65F8\u65F9\u65FB", 4, "\u6601\u6604\u6605\u6607\u6608\u6609\u660B\u660D\u6610\u6611\u6612\u6616\u6617\u6618\u661A\u661B\u661C\u661E\u6621\u6622\u6623\u6624\u6626\u6629\u662A\u662B\u662C\u662E\u6630\u6632\u6633\u6637", 4, "\u663D\u663F\u6640\u6642\u6644", 6, "\u664D\u664E\u6650\u6651\u6658"],
      ["9580", "\u6659\u665B\u665C\u665D\u665E\u6660\u6662\u6663\u6665\u6667\u6669", 4, "\u6671\u6672\u6673\u6675\u6678\u6679\u667B\u667C\u667D\u667F\u6680\u6681\u6683\u6685\u6686\u6688\u6689\u668A\u668B\u668D\u668E\u668F\u6690\u6692\u6693\u6694\u6695\u6698", 4, "\u669E", 8, "\u66A9", 4, "\u66AF", 4, "\u66B5\u66B6\u66B7\u66B8\u66BA\u66BB\u66BC\u66BD\u66BF", 25, "\u66DA\u66DE", 7, "\u66E7\u66E8\u66EA", 5, "\u66F1\u66F5\u66F6\u66F8\u66FA\u66FB\u66FD\u6701\u6702\u6703"],
      ["9640", "\u6704\u6705\u6706\u6707\u670C\u670E\u670F\u6711\u6712\u6713\u6716\u6718\u6719\u671A\u671C\u671E\u6720", 5, "\u6727\u6729\u672E\u6730\u6732\u6733\u6736\u6737\u6738\u6739\u673B\u673C\u673E\u673F\u6741\u6744\u6745\u6747\u674A\u674B\u674D\u6752\u6754\u6755\u6757", 4, "\u675D\u6762\u6763\u6764\u6766\u6767\u676B\u676C\u676E\u6771\u6774\u6776"],
      ["9680", "\u6778\u6779\u677A\u677B\u677D\u6780\u6782\u6783\u6785\u6786\u6788\u678A\u678C\u678D\u678E\u678F\u6791\u6792\u6793\u6794\u6796\u6799\u679B\u679F\u67A0\u67A1\u67A4\u67A6\u67A9\u67AC\u67AE\u67B1\u67B2\u67B4\u67B9", 7, "\u67C2\u67C5", 9, "\u67D5\u67D6\u67D7\u67DB\u67DF\u67E1\u67E3\u67E4\u67E6\u67E7\u67E8\u67EA\u67EB\u67ED\u67EE\u67F2\u67F5", 7, "\u67FE\u6801\u6802\u6803\u6804\u6806\u680D\u6810\u6812\u6814\u6815\u6818", 4, "\u681E\u681F\u6820\u6822", 6, "\u682B", 6, "\u6834\u6835\u6836\u683A\u683B\u683F\u6847\u684B\u684D\u684F\u6852\u6856", 5],
      ["9740", "\u685C\u685D\u685E\u685F\u686A\u686C", 7, "\u6875\u6878", 8, "\u6882\u6884\u6887", 7, "\u6890\u6891\u6892\u6894\u6895\u6896\u6898", 9, "\u68A3\u68A4\u68A5\u68A9\u68AA\u68AB\u68AC\u68AE\u68B1\u68B2\u68B4\u68B6\u68B7\u68B8"],
      ["9780", "\u68B9", 6, "\u68C1\u68C3", 5, "\u68CA\u68CC\u68CE\u68CF\u68D0\u68D1\u68D3\u68D4\u68D6\u68D7\u68D9\u68DB", 4, "\u68E1\u68E2\u68E4", 9, "\u68EF\u68F2\u68F3\u68F4\u68F6\u68F7\u68F8\u68FB\u68FD\u68FE\u68FF\u6900\u6902\u6903\u6904\u6906", 4, "\u690C\u690F\u6911\u6913", 11, "\u6921\u6922\u6923\u6925", 7, "\u692E\u692F\u6931\u6932\u6933\u6935\u6936\u6937\u6938\u693A\u693B\u693C\u693E\u6940\u6941\u6943", 16, "\u6955\u6956\u6958\u6959\u695B\u695C\u695F"],
      ["9840", "\u6961\u6962\u6964\u6965\u6967\u6968\u6969\u696A\u696C\u696D\u696F\u6970\u6972", 4, "\u697A\u697B\u697D\u697E\u697F\u6981\u6983\u6985\u698A\u698B\u698C\u698E", 5, "\u6996\u6997\u6999\u699A\u699D", 9, "\u69A9\u69AA\u69AC\u69AE\u69AF\u69B0\u69B2\u69B3\u69B5\u69B6\u69B8\u69B9\u69BA\u69BC\u69BD"],
      ["9880", "\u69BE\u69BF\u69C0\u69C2", 7, "\u69CB\u69CD\u69CF\u69D1\u69D2\u69D3\u69D5", 5, "\u69DC\u69DD\u69DE\u69E1", 11, "\u69EE\u69EF\u69F0\u69F1\u69F3", 9, "\u69FE\u6A00", 9, "\u6A0B", 11, "\u6A19", 5, "\u6A20\u6A22", 5, "\u6A29\u6A2B\u6A2C\u6A2D\u6A2E\u6A30\u6A32\u6A33\u6A34\u6A36", 6, "\u6A3F", 4, "\u6A45\u6A46\u6A48", 7, "\u6A51", 6, "\u6A5A"],
      ["9940", "\u6A5C", 4, "\u6A62\u6A63\u6A64\u6A66", 10, "\u6A72", 6, "\u6A7A\u6A7B\u6A7D\u6A7E\u6A7F\u6A81\u6A82\u6A83\u6A85", 8, "\u6A8F\u6A92", 4, "\u6A98", 7, "\u6AA1", 5],
      ["9980", "\u6AA7\u6AA8\u6AAA\u6AAD", 114, "\u6B25\u6B26\u6B28", 6],
      ["9a40", "\u6B2F\u6B30\u6B31\u6B33\u6B34\u6B35\u6B36\u6B38\u6B3B\u6B3C\u6B3D\u6B3F\u6B40\u6B41\u6B42\u6B44\u6B45\u6B48\u6B4A\u6B4B\u6B4D", 11, "\u6B5A", 7, "\u6B68\u6B69\u6B6B", 13, "\u6B7A\u6B7D\u6B7E\u6B7F\u6B80\u6B85\u6B88"],
      ["9a80", "\u6B8C\u6B8E\u6B8F\u6B90\u6B91\u6B94\u6B95\u6B97\u6B98\u6B99\u6B9C", 4, "\u6BA2", 7, "\u6BAB", 7, "\u6BB6\u6BB8", 6, "\u6BC0\u6BC3\u6BC4\u6BC6", 4, "\u6BCC\u6BCE\u6BD0\u6BD1\u6BD8\u6BDA\u6BDC", 4, "\u6BE2", 7, "\u6BEC\u6BED\u6BEE\u6BF0\u6BF1\u6BF2\u6BF4\u6BF6\u6BF7\u6BF8\u6BFA\u6BFB\u6BFC\u6BFE", 6, "\u6C08", 4, "\u6C0E\u6C12\u6C17\u6C1C\u6C1D\u6C1E\u6C20\u6C23\u6C25\u6C2B\u6C2C\u6C2D\u6C31\u6C33\u6C36\u6C37\u6C39\u6C3A\u6C3B\u6C3C\u6C3E\u6C3F\u6C43\u6C44\u6C45\u6C48\u6C4B", 4, "\u6C51\u6C52\u6C53\u6C56\u6C58"],
      ["9b40", "\u6C59\u6C5A\u6C62\u6C63\u6C65\u6C66\u6C67\u6C6B", 4, "\u6C71\u6C73\u6C75\u6C77\u6C78\u6C7A\u6C7B\u6C7C\u6C7F\u6C80\u6C84\u6C87\u6C8A\u6C8B\u6C8D\u6C8E\u6C91\u6C92\u6C95\u6C96\u6C97\u6C98\u6C9A\u6C9C\u6C9D\u6C9E\u6CA0\u6CA2\u6CA8\u6CAC\u6CAF\u6CB0\u6CB4\u6CB5\u6CB6\u6CB7\u6CBA\u6CC0\u6CC1\u6CC2\u6CC3\u6CC6\u6CC7\u6CC8\u6CCB\u6CCD\u6CCE\u6CCF\u6CD1\u6CD2\u6CD8"],
      ["9b80", "\u6CD9\u6CDA\u6CDC\u6CDD\u6CDF\u6CE4\u6CE6\u6CE7\u6CE9\u6CEC\u6CED\u6CF2\u6CF4\u6CF9\u6CFF\u6D00\u6D02\u6D03\u6D05\u6D06\u6D08\u6D09\u6D0A\u6D0D\u6D0F\u6D10\u6D11\u6D13\u6D14\u6D15\u6D16\u6D18\u6D1C\u6D1D\u6D1F", 5, "\u6D26\u6D28\u6D29\u6D2C\u6D2D\u6D2F\u6D30\u6D34\u6D36\u6D37\u6D38\u6D3A\u6D3F\u6D40\u6D42\u6D44\u6D49\u6D4C\u6D50\u6D55\u6D56\u6D57\u6D58\u6D5B\u6D5D\u6D5F\u6D61\u6D62\u6D64\u6D65\u6D67\u6D68\u6D6B\u6D6C\u6D6D\u6D70\u6D71\u6D72\u6D73\u6D75\u6D76\u6D79\u6D7A\u6D7B\u6D7D", 4, "\u6D83\u6D84\u6D86\u6D87\u6D8A\u6D8B\u6D8D\u6D8F\u6D90\u6D92\u6D96", 4, "\u6D9C\u6DA2\u6DA5\u6DAC\u6DAD\u6DB0\u6DB1\u6DB3\u6DB4\u6DB6\u6DB7\u6DB9", 5, "\u6DC1\u6DC2\u6DC3\u6DC8\u6DC9\u6DCA"],
      ["9c40", "\u6DCD\u6DCE\u6DCF\u6DD0\u6DD2\u6DD3\u6DD4\u6DD5\u6DD7\u6DDA\u6DDB\u6DDC\u6DDF\u6DE2\u6DE3\u6DE5\u6DE7\u6DE8\u6DE9\u6DEA\u6DED\u6DEF\u6DF0\u6DF2\u6DF4\u6DF5\u6DF6\u6DF8\u6DFA\u6DFD", 7, "\u6E06\u6E07\u6E08\u6E09\u6E0B\u6E0F\u6E12\u6E13\u6E15\u6E18\u6E19\u6E1B\u6E1C\u6E1E\u6E1F\u6E22\u6E26\u6E27\u6E28\u6E2A\u6E2C\u6E2E\u6E30\u6E31\u6E33\u6E35"],
      ["9c80", "\u6E36\u6E37\u6E39\u6E3B", 7, "\u6E45", 7, "\u6E4F\u6E50\u6E51\u6E52\u6E55\u6E57\u6E59\u6E5A\u6E5C\u6E5D\u6E5E\u6E60", 10, "\u6E6C\u6E6D\u6E6F", 14, "\u6E80\u6E81\u6E82\u6E84\u6E87\u6E88\u6E8A", 4, "\u6E91", 6, "\u6E99\u6E9A\u6E9B\u6E9D\u6E9E\u6EA0\u6EA1\u6EA3\u6EA4\u6EA6\u6EA8\u6EA9\u6EAB\u6EAC\u6EAD\u6EAE\u6EB0\u6EB3\u6EB5\u6EB8\u6EB9\u6EBC\u6EBE\u6EBF\u6EC0\u6EC3\u6EC4\u6EC5\u6EC6\u6EC8\u6EC9\u6ECA\u6ECC\u6ECD\u6ECE\u6ED0\u6ED2\u6ED6\u6ED8\u6ED9\u6EDB\u6EDC\u6EDD\u6EE3\u6EE7\u6EEA", 5],
      ["9d40", "\u6EF0\u6EF1\u6EF2\u6EF3\u6EF5\u6EF6\u6EF7\u6EF8\u6EFA", 7, "\u6F03\u6F04\u6F05\u6F07\u6F08\u6F0A", 4, "\u6F10\u6F11\u6F12\u6F16", 9, "\u6F21\u6F22\u6F23\u6F25\u6F26\u6F27\u6F28\u6F2C\u6F2E\u6F30\u6F32\u6F34\u6F35\u6F37", 6, "\u6F3F\u6F40\u6F41\u6F42"],
      ["9d80", "\u6F43\u6F44\u6F45\u6F48\u6F49\u6F4A\u6F4C\u6F4E", 9, "\u6F59\u6F5A\u6F5B\u6F5D\u6F5F\u6F60\u6F61\u6F63\u6F64\u6F65\u6F67", 5, "\u6F6F\u6F70\u6F71\u6F73\u6F75\u6F76\u6F77\u6F79\u6F7B\u6F7D", 6, "\u6F85\u6F86\u6F87\u6F8A\u6F8B\u6F8F", 12, "\u6F9D\u6F9E\u6F9F\u6FA0\u6FA2", 4, "\u6FA8", 10, "\u6FB4\u6FB5\u6FB7\u6FB8\u6FBA", 5, "\u6FC1\u6FC3", 5, "\u6FCA", 6, "\u6FD3", 10, "\u6FDF\u6FE2\u6FE3\u6FE4\u6FE5"],
      ["9e40", "\u6FE6", 7, "\u6FF0", 32, "\u7012", 7, "\u701C", 6, "\u7024", 6],
      ["9e80", "\u702B", 9, "\u7036\u7037\u7038\u703A", 17, "\u704D\u704E\u7050", 13, "\u705F", 11, "\u706E\u7071\u7072\u7073\u7074\u7077\u7079\u707A\u707B\u707D\u7081\u7082\u7083\u7084\u7086\u7087\u7088\u708B\u708C\u708D\u708F\u7090\u7091\u7093\u7097\u7098\u709A\u709B\u709E", 12, "\u70B0\u70B2\u70B4\u70B5\u70B6\u70BA\u70BE\u70BF\u70C4\u70C5\u70C6\u70C7\u70C9\u70CB", 12, "\u70DA"],
      ["9f40", "\u70DC\u70DD\u70DE\u70E0\u70E1\u70E2\u70E3\u70E5\u70EA\u70EE\u70F0", 6, "\u70F8\u70FA\u70FB\u70FC\u70FE", 10, "\u710B", 4, "\u7111\u7112\u7114\u7117\u711B", 10, "\u7127", 7, "\u7132\u7133\u7134"],
      ["9f80", "\u7135\u7137", 13, "\u7146\u7147\u7148\u7149\u714B\u714D\u714F", 12, "\u715D\u715F", 4, "\u7165\u7169", 4, "\u716F\u7170\u7171\u7174\u7175\u7176\u7177\u7179\u717B\u717C\u717E", 5, "\u7185", 4, "\u718B\u718C\u718D\u718E\u7190\u7191\u7192\u7193\u7195\u7196\u7197\u719A", 4, "\u71A1", 6, "\u71A9\u71AA\u71AB\u71AD", 5, "\u71B4\u71B6\u71B7\u71B8\u71BA", 8, "\u71C4", 9, "\u71CF", 4],
      ["a040", "\u71D6", 9, "\u71E1\u71E2\u71E3\u71E4\u71E6\u71E8", 5, "\u71EF", 9, "\u71FA", 11, "\u7207", 19],
      ["a080", "\u721B\u721C\u721E", 9, "\u7229\u722B\u722D\u722E\u722F\u7232\u7233\u7234\u723A\u723C\u723E\u7240", 6, "\u7249\u724A\u724B\u724E\u724F\u7250\u7251\u7253\u7254\u7255\u7257\u7258\u725A\u725C\u725E\u7260\u7263\u7264\u7265\u7268\u726A\u726B\u726C\u726D\u7270\u7271\u7273\u7274\u7276\u7277\u7278\u727B\u727C\u727D\u7282\u7283\u7285", 4, "\u728C\u728E\u7290\u7291\u7293", 11, "\u72A0", 11, "\u72AE\u72B1\u72B2\u72B3\u72B5\u72BA", 6, "\u72C5\u72C6\u72C7\u72C9\u72CA\u72CB\u72CC\u72CF\u72D1\u72D3\u72D4\u72D5\u72D6\u72D8\u72DA\u72DB"],
      ["a1a1", "\u3000\u3001\u3002\xB7\u02C9\u02C7\xA8\u3003\u3005\u2014\uFF5E\u2016\u2026\u2018\u2019\u201C\u201D\u3014\u3015\u3008", 7, "\u3016\u3017\u3010\u3011\xB1\xD7\xF7\u2236\u2227\u2228\u2211\u220F\u222A\u2229\u2208\u2237\u221A\u22A5\u2225\u2220\u2312\u2299\u222B\u222E\u2261\u224C\u2248\u223D\u221D\u2260\u226E\u226F\u2264\u2265\u221E\u2235\u2234\u2642\u2640\xB0\u2032\u2033\u2103\uFF04\xA4\uFFE0\uFFE1\u2030\xA7\u2116\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u203B\u2192\u2190\u2191\u2193\u3013"],
      ["a2a1", "\u2170", 9],
      ["a2b1", "\u2488", 19, "\u2474", 19, "\u2460", 9],
      ["a2e5", "\u3220", 9],
      ["a2f1", "\u2160", 11],
      ["a3a1", "\uFF01\uFF02\uFF03\uFFE5\uFF05", 88, "\uFFE3"],
      ["a4a1", "\u3041", 82],
      ["a5a1", "\u30A1", 85],
      ["a6a1", "\u0391", 16, "\u03A3", 6],
      ["a6c1", "\u03B1", 16, "\u03C3", 6],
      ["a6e0", "\uFE35\uFE36\uFE39\uFE3A\uFE3F\uFE40\uFE3D\uFE3E\uFE41\uFE42\uFE43\uFE44"],
      ["a6ee", "\uFE3B\uFE3C\uFE37\uFE38\uFE31"],
      ["a6f4", "\uFE33\uFE34"],
      ["a7a1", "\u0410", 5, "\u0401\u0416", 25],
      ["a7d1", "\u0430", 5, "\u0451\u0436", 25],
      ["a840", "\u02CA\u02CB\u02D9\u2013\u2015\u2025\u2035\u2105\u2109\u2196\u2197\u2198\u2199\u2215\u221F\u2223\u2252\u2266\u2267\u22BF\u2550", 35, "\u2581", 6],
      ["a880", "\u2588", 7, "\u2593\u2594\u2595\u25BC\u25BD\u25E2\u25E3\u25E4\u25E5\u2609\u2295\u3012\u301D\u301E"],
      ["a8a1", "\u0101\xE1\u01CE\xE0\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA\u01DC\xFC\xEA\u0251"],
      ["a8bd", "\u0144\u0148"],
      ["a8c0", "\u0261"],
      ["a8c5", "\u3105", 36],
      ["a940", "\u3021", 8, "\u32A3\u338E\u338F\u339C\u339D\u339E\u33A1\u33C4\u33CE\u33D1\u33D2\u33D5\uFE30\uFFE2\uFFE4"],
      ["a959", "\u2121\u3231"],
      ["a95c", "\u2010"],
      ["a960", "\u30FC\u309B\u309C\u30FD\u30FE\u3006\u309D\u309E\uFE49", 9, "\uFE54\uFE55\uFE56\uFE57\uFE59", 8],
      ["a980", "\uFE62", 4, "\uFE68\uFE69\uFE6A\uFE6B"],
      ["a996", "\u3007"],
      ["a9a4", "\u2500", 75],
      ["aa40", "\u72DC\u72DD\u72DF\u72E2", 5, "\u72EA\u72EB\u72F5\u72F6\u72F9\u72FD\u72FE\u72FF\u7300\u7302\u7304", 5, "\u730B\u730C\u730D\u730F\u7310\u7311\u7312\u7314\u7318\u7319\u731A\u731F\u7320\u7323\u7324\u7326\u7327\u7328\u732D\u732F\u7330\u7332\u7333\u7335\u7336\u733A\u733B\u733C\u733D\u7340", 8],
      ["aa80", "\u7349\u734A\u734B\u734C\u734E\u734F\u7351\u7353\u7354\u7355\u7356\u7358", 7, "\u7361", 10, "\u736E\u7370\u7371"],
      ["ab40", "\u7372", 11, "\u737F", 4, "\u7385\u7386\u7388\u738A\u738C\u738D\u738F\u7390\u7392\u7393\u7394\u7395\u7397\u7398\u7399\u739A\u739C\u739D\u739E\u73A0\u73A1\u73A3", 5, "\u73AA\u73AC\u73AD\u73B1\u73B4\u73B5\u73B6\u73B8\u73B9\u73BC\u73BD\u73BE\u73BF\u73C1\u73C3", 4],
      ["ab80", "\u73CB\u73CC\u73CE\u73D2", 6, "\u73DA\u73DB\u73DC\u73DD\u73DF\u73E1\u73E2\u73E3\u73E4\u73E6\u73E8\u73EA\u73EB\u73EC\u73EE\u73EF\u73F0\u73F1\u73F3", 4],
      ["ac40", "\u73F8", 10, "\u7404\u7407\u7408\u740B\u740C\u740D\u740E\u7411", 8, "\u741C", 5, "\u7423\u7424\u7427\u7429\u742B\u742D\u742F\u7431\u7432\u7437", 4, "\u743D\u743E\u743F\u7440\u7442", 11],
      ["ac80", "\u744E", 6, "\u7456\u7458\u745D\u7460", 12, "\u746E\u746F\u7471", 4, "\u7478\u7479\u747A"],
      ["ad40", "\u747B\u747C\u747D\u747F\u7482\u7484\u7485\u7486\u7488\u7489\u748A\u748C\u748D\u748F\u7491", 10, "\u749D\u749F", 7, "\u74AA", 15, "\u74BB", 12],
      ["ad80", "\u74C8", 9, "\u74D3", 8, "\u74DD\u74DF\u74E1\u74E5\u74E7", 6, "\u74F0\u74F1\u74F2"],
      ["ae40", "\u74F3\u74F5\u74F8", 6, "\u7500\u7501\u7502\u7503\u7505", 7, "\u750E\u7510\u7512\u7514\u7515\u7516\u7517\u751B\u751D\u751E\u7520", 4, "\u7526\u7527\u752A\u752E\u7534\u7536\u7539\u753C\u753D\u753F\u7541\u7542\u7543\u7544\u7546\u7547\u7549\u754A\u754D\u7550\u7551\u7552\u7553\u7555\u7556\u7557\u7558"],
      ["ae80", "\u755D", 7, "\u7567\u7568\u7569\u756B", 6, "\u7573\u7575\u7576\u7577\u757A", 4, "\u7580\u7581\u7582\u7584\u7585\u7587"],
      ["af40", "\u7588\u7589\u758A\u758C\u758D\u758E\u7590\u7593\u7595\u7598\u759B\u759C\u759E\u75A2\u75A6", 4, "\u75AD\u75B6\u75B7\u75BA\u75BB\u75BF\u75C0\u75C1\u75C6\u75CB\u75CC\u75CE\u75CF\u75D0\u75D1\u75D3\u75D7\u75D9\u75DA\u75DC\u75DD\u75DF\u75E0\u75E1\u75E5\u75E9\u75EC\u75ED\u75EE\u75EF\u75F2\u75F3\u75F5\u75F6\u75F7\u75F8\u75FA\u75FB\u75FD\u75FE\u7602\u7604\u7606\u7607"],
      ["af80", "\u7608\u7609\u760B\u760D\u760E\u760F\u7611\u7612\u7613\u7614\u7616\u761A\u761C\u761D\u761E\u7621\u7623\u7627\u7628\u762C\u762E\u762F\u7631\u7632\u7636\u7637\u7639\u763A\u763B\u763D\u7641\u7642\u7644"],
      ["b040", "\u7645", 6, "\u764E", 5, "\u7655\u7657", 4, "\u765D\u765F\u7660\u7661\u7662\u7664", 6, "\u766C\u766D\u766E\u7670", 7, "\u7679\u767A\u767C\u767F\u7680\u7681\u7683\u7685\u7689\u768A\u768C\u768D\u768F\u7690\u7692\u7694\u7695\u7697\u7698\u769A\u769B"],
      ["b080", "\u769C", 7, "\u76A5", 8, "\u76AF\u76B0\u76B3\u76B5", 9, "\u76C0\u76C1\u76C3\u554A\u963F\u57C3\u6328\u54CE\u5509\u54C0\u7691\u764C\u853C\u77EE\u827E\u788D\u7231\u9698\u978D\u6C28\u5B89\u4FFA\u6309\u6697\u5CB8\u80FA\u6848\u80AE\u6602\u76CE\u51F9\u6556\u71AC\u7FF1\u8884\u50B2\u5965\u61CA\u6FB3\u82AD\u634C\u6252\u53ED\u5427\u7B06\u516B\u75A4\u5DF4\u62D4\u8DCB\u9776\u628A\u8019\u575D\u9738\u7F62\u7238\u767D\u67CF\u767E\u6446\u4F70\u8D25\u62DC\u7A17\u6591\u73ED\u642C\u6273\u822C\u9881\u677F\u7248\u626E\u62CC\u4F34\u74E3\u534A\u529E\u7ECA\u90A6\u5E2E\u6886\u699C\u8180\u7ED1\u68D2\u78C5\u868C\u9551\u508D\u8C24\u82DE\u80DE\u5305\u8912\u5265"],
      ["b140", "\u76C4\u76C7\u76C9\u76CB\u76CC\u76D3\u76D5\u76D9\u76DA\u76DC\u76DD\u76DE\u76E0", 4, "\u76E6", 7, "\u76F0\u76F3\u76F5\u76F6\u76F7\u76FA\u76FB\u76FD\u76FF\u7700\u7702\u7703\u7705\u7706\u770A\u770C\u770E", 10, "\u771B\u771C\u771D\u771E\u7721\u7723\u7724\u7725\u7727\u772A\u772B"],
      ["b180", "\u772C\u772E\u7730", 4, "\u7739\u773B\u773D\u773E\u773F\u7742\u7744\u7745\u7746\u7748", 7, "\u7752", 7, "\u775C\u8584\u96F9\u4FDD\u5821\u9971\u5B9D\u62B1\u62A5\u66B4\u8C79\u9C8D\u7206\u676F\u7891\u60B2\u5351\u5317\u8F88\u80CC\u8D1D\u94A1\u500D\u72C8\u5907\u60EB\u7119\u88AB\u5954\u82EF\u672C\u7B28\u5D29\u7EF7\u752D\u6CF5\u8E66\u8FF8\u903C\u9F3B\u6BD4\u9119\u7B14\u5F7C\u78A7\u84D6\u853D\u6BD5\u6BD9\u6BD6\u5E01\u5E87\u75F9\u95ED\u655D\u5F0A\u5FC5\u8F9F\u58C1\u81C2\u907F\u965B\u97AD\u8FB9\u7F16\u8D2C\u6241\u4FBF\u53D8\u535E\u8FA8\u8FA9\u8FAB\u904D\u6807\u5F6A\u8198\u8868\u9CD6\u618B\u522B\u762A\u5F6C\u658C\u6FD2\u6EE8\u5BBE\u6448\u5175\u51B0\u67C4\u4E19\u79C9\u997C\u70B3"],
      ["b240", "\u775D\u775E\u775F\u7760\u7764\u7767\u7769\u776A\u776D", 11, "\u777A\u777B\u777C\u7781\u7782\u7783\u7786", 5, "\u778F\u7790\u7793", 11, "\u77A1\u77A3\u77A4\u77A6\u77A8\u77AB\u77AD\u77AE\u77AF\u77B1\u77B2\u77B4\u77B6", 4],
      ["b280", "\u77BC\u77BE\u77C0", 12, "\u77CE", 8, "\u77D8\u77D9\u77DA\u77DD", 4, "\u77E4\u75C5\u5E76\u73BB\u83E0\u64AD\u62E8\u94B5\u6CE2\u535A\u52C3\u640F\u94C2\u7B94\u4F2F\u5E1B\u8236\u8116\u818A\u6E24\u6CCA\u9A73\u6355\u535C\u54FA\u8865\u57E0\u4E0D\u5E03\u6B65\u7C3F\u90E8\u6016\u64E6\u731C\u88C1\u6750\u624D\u8D22\u776C\u8E29\u91C7\u5F69\u83DC\u8521\u9910\u53C2\u8695\u6B8B\u60ED\u60E8\u707F\u82CD\u8231\u4ED3\u6CA7\u85CF\u64CD\u7CD9\u69FD\u66F9\u8349\u5395\u7B56\u4FA7\u518C\u6D4B\u5C42\u8E6D\u63D2\u53C9\u832C\u8336\u67E5\u78B4\u643D\u5BDF\u5C94\u5DEE\u8BE7\u62C6\u67F4\u8C7A\u6400\u63BA\u8749\u998B\u8C17\u7F20\u94F2\u4EA7\u9610\u98A4\u660C\u7316"],
      ["b340", "\u77E6\u77E8\u77EA\u77EF\u77F0\u77F1\u77F2\u77F4\u77F5\u77F7\u77F9\u77FA\u77FB\u77FC\u7803", 5, "\u780A\u780B\u780E\u780F\u7810\u7813\u7815\u7819\u781B\u781E\u7820\u7821\u7822\u7824\u7828\u782A\u782B\u782E\u782F\u7831\u7832\u7833\u7835\u7836\u783D\u783F\u7841\u7842\u7843\u7844\u7846\u7848\u7849\u784A\u784B\u784D\u784F\u7851\u7853\u7854\u7858\u7859\u785A"],
      ["b380", "\u785B\u785C\u785E", 11, "\u786F", 7, "\u7878\u7879\u787A\u787B\u787D", 6, "\u573A\u5C1D\u5E38\u957F\u507F\u80A0\u5382\u655E\u7545\u5531\u5021\u8D85\u6284\u949E\u671D\u5632\u6F6E\u5DE2\u5435\u7092\u8F66\u626F\u64A4\u63A3\u5F7B\u6F88\u90F4\u81E3\u8FB0\u5C18\u6668\u5FF1\u6C89\u9648\u8D81\u886C\u6491\u79F0\u57CE\u6A59\u6210\u5448\u4E58\u7A0B\u60E9\u6F84\u8BDA\u627F\u901E\u9A8B\u79E4\u5403\u75F4\u6301\u5319\u6C60\u8FDF\u5F1B\u9A70\u803B\u9F7F\u4F88\u5C3A\u8D64\u7FC5\u65A5\u70BD\u5145\u51B2\u866B\u5D07\u5BA0\u62BD\u916C\u7574\u8E0C\u7A20\u6101\u7B79\u4EC7\u7EF8\u7785\u4E11\u81ED\u521D\u51FA\u6A71\u53A8\u8E87\u9504\u96CF\u6EC1\u9664\u695A"],
      ["b440", "\u7884\u7885\u7886\u7888\u788A\u788B\u788F\u7890\u7892\u7894\u7895\u7896\u7899\u789D\u789E\u78A0\u78A2\u78A4\u78A6\u78A8", 7, "\u78B5\u78B6\u78B7\u78B8\u78BA\u78BB\u78BC\u78BD\u78BF\u78C0\u78C2\u78C3\u78C4\u78C6\u78C7\u78C8\u78CC\u78CD\u78CE\u78CF\u78D1\u78D2\u78D3\u78D6\u78D7\u78D8\u78DA", 9],
      ["b480", "\u78E4\u78E5\u78E6\u78E7\u78E9\u78EA\u78EB\u78ED", 4, "\u78F3\u78F5\u78F6\u78F8\u78F9\u78FB", 5, "\u7902\u7903\u7904\u7906", 6, "\u7840\u50A8\u77D7\u6410\u89E6\u5904\u63E3\u5DDD\u7A7F\u693D\u4F20\u8239\u5598\u4E32\u75AE\u7A97\u5E62\u5E8A\u95EF\u521B\u5439\u708A\u6376\u9524\u5782\u6625\u693F\u9187\u5507\u6DF3\u7EAF\u8822\u6233\u7EF0\u75B5\u8328\u78C1\u96CC\u8F9E\u6148\u74F7\u8BCD\u6B64\u523A\u8D50\u6B21\u806A\u8471\u56F1\u5306\u4ECE\u4E1B\u51D1\u7C97\u918B\u7C07\u4FC3\u8E7F\u7BE1\u7A9C\u6467\u5D14\u50AC\u8106\u7601\u7CB9\u6DEC\u7FE0\u6751\u5B58\u5BF8\u78CB\u64AE\u6413\u63AA\u632B\u9519\u642D\u8FBE\u7B54\u7629\u6253\u5927\u5446\u6B79\u50A3\u6234\u5E26\u6B86\u4EE3\u8D37\u888B\u5F85\u902E"],
      ["b540", "\u790D", 5, "\u7914", 9, "\u791F", 4, "\u7925", 14, "\u7935", 4, "\u793D\u793F\u7942\u7943\u7944\u7945\u7947\u794A", 8, "\u7954\u7955\u7958\u7959\u7961\u7963"],
      ["b580", "\u7964\u7966\u7969\u796A\u796B\u796C\u796E\u7970", 6, "\u7979\u797B", 4, "\u7982\u7983\u7986\u7987\u7988\u7989\u798B\u798C\u798D\u798E\u7990\u7991\u7992\u6020\u803D\u62C5\u4E39\u5355\u90F8\u63B8\u80C6\u65E6\u6C2E\u4F46\u60EE\u6DE1\u8BDE\u5F39\u86CB\u5F53\u6321\u515A\u8361\u6863\u5200\u6363\u8E48\u5012\u5C9B\u7977\u5BFC\u5230\u7A3B\u60BC\u9053\u76D7\u5FB7\u5F97\u7684\u8E6C\u706F\u767B\u7B49\u77AA\u51F3\u9093\u5824\u4F4E\u6EF4\u8FEA\u654C\u7B1B\u72C4\u6DA4\u7FDF\u5AE1\u62B5\u5E95\u5730\u8482\u7B2C\u5E1D\u5F1F\u9012\u7F14\u98A0\u6382\u6EC7\u7898\u70B9\u5178\u975B\u57AB\u7535\u4F43\u7538\u5E97\u60E6\u5960\u6DC0\u6BBF\u7889\u53FC\u96D5\u51CB\u5201\u6389\u540A\u9493\u8C03\u8DCC\u7239\u789F\u8776\u8FED\u8C0D\u53E0"],
      ["b640", "\u7993", 6, "\u799B", 11, "\u79A8", 10, "\u79B4", 4, "\u79BC\u79BF\u79C2\u79C4\u79C5\u79C7\u79C8\u79CA\u79CC\u79CE\u79CF\u79D0\u79D3\u79D4\u79D6\u79D7\u79D9", 5, "\u79E0\u79E1\u79E2\u79E5\u79E8\u79EA"],
      ["b680", "\u79EC\u79EE\u79F1", 6, "\u79F9\u79FA\u79FC\u79FE\u79FF\u7A01\u7A04\u7A05\u7A07\u7A08\u7A09\u7A0A\u7A0C\u7A0F", 4, "\u7A15\u7A16\u7A18\u7A19\u7A1B\u7A1C\u4E01\u76EF\u53EE\u9489\u9876\u9F0E\u952D\u5B9A\u8BA2\u4E22\u4E1C\u51AC\u8463\u61C2\u52A8\u680B\u4F97\u606B\u51BB\u6D1E\u515C\u6296\u6597\u9661\u8C46\u9017\u75D8\u90FD\u7763\u6BD2\u728A\u72EC\u8BFB\u5835\u7779\u8D4C\u675C\u9540\u809A\u5EA6\u6E21\u5992\u7AEF\u77ED\u953B\u6BB5\u65AD\u7F0E\u5806\u5151\u961F\u5BF9\u58A9\u5428\u8E72\u6566\u987F\u56E4\u949D\u76FE\u9041\u6387\u54C6\u591A\u593A\u579B\u8EB2\u6735\u8DFA\u8235\u5241\u60F0\u5815\u86FE\u5CE8\u9E45\u4FC4\u989D\u8BB9\u5A25\u6076\u5384\u627C\u904F\u9102\u997F\u6069\u800C\u513F\u8033\u5C14\u9975\u6D31\u4E8C"],
      ["b740", "\u7A1D\u7A1F\u7A21\u7A22\u7A24", 14, "\u7A34\u7A35\u7A36\u7A38\u7A3A\u7A3E\u7A40", 5, "\u7A47", 9, "\u7A52", 4, "\u7A58", 16],
      ["b780", "\u7A69", 6, "\u7A71\u7A72\u7A73\u7A75\u7A7B\u7A7C\u7A7D\u7A7E\u7A82\u7A85\u7A87\u7A89\u7A8A\u7A8B\u7A8C\u7A8E\u7A8F\u7A90\u7A93\u7A94\u7A99\u7A9A\u7A9B\u7A9E\u7AA1\u7AA2\u8D30\u53D1\u7F5A\u7B4F\u4F10\u4E4F\u9600\u6CD5\u73D0\u85E9\u5E06\u756A\u7FFB\u6A0A\u77FE\u9492\u7E41\u51E1\u70E6\u53CD\u8FD4\u8303\u8D29\u72AF\u996D\u6CDB\u574A\u82B3\u65B9\u80AA\u623F\u9632\u59A8\u4EFF\u8BBF\u7EBA\u653E\u83F2\u975E\u5561\u98DE\u80A5\u532A\u8BFD\u5420\u80BA\u5E9F\u6CB8\u8D39\u82AC\u915A\u5429\u6C1B\u5206\u7EB7\u575F\u711A\u6C7E\u7C89\u594B\u4EFD\u5FFF\u6124\u7CAA\u4E30\u5C01\u67AB\u8702\u5CF0\u950B\u98CE\u75AF\u70FD\u9022\u51AF\u7F1D\u8BBD\u5949\u51E4\u4F5B\u5426\u592B\u6577\u80A4\u5B75\u6276\u62C2\u8F90\u5E45\u6C1F\u7B26\u4F0F\u4FD8\u670D"],
      ["b840", "\u7AA3\u7AA4\u7AA7\u7AA9\u7AAA\u7AAB\u7AAE", 4, "\u7AB4", 10, "\u7AC0", 10, "\u7ACC", 9, "\u7AD7\u7AD8\u7ADA\u7ADB\u7ADC\u7ADD\u7AE1\u7AE2\u7AE4\u7AE7", 5, "\u7AEE\u7AF0\u7AF1\u7AF2\u7AF3"],
      ["b880", "\u7AF4", 4, "\u7AFB\u7AFC\u7AFE\u7B00\u7B01\u7B02\u7B05\u7B07\u7B09\u7B0C\u7B0D\u7B0E\u7B10\u7B12\u7B13\u7B16\u7B17\u7B18\u7B1A\u7B1C\u7B1D\u7B1F\u7B21\u7B22\u7B23\u7B27\u7B29\u7B2D\u6D6E\u6DAA\u798F\u88B1\u5F17\u752B\u629A\u8F85\u4FEF\u91DC\u65A7\u812F\u8151\u5E9C\u8150\u8D74\u526F\u8986\u8D4B\u590D\u5085\u4ED8\u961C\u7236\u8179\u8D1F\u5BCC\u8BA3\u9644\u5987\u7F1A\u5490\u5676\u560E\u8BE5\u6539\u6982\u9499\u76D6\u6E89\u5E72\u7518\u6746\u67D1\u7AFF\u809D\u8D76\u611F\u79C6\u6562\u8D63\u5188\u521A\u94A2\u7F38\u809B\u7EB2\u5C97\u6E2F\u6760\u7BD9\u768B\u9AD8\u818F\u7F94\u7CD5\u641E\u9550\u7A3F\u544A\u54E5\u6B4C\u6401\u6208\u9E3D\u80F3\u7599\u5272\u9769\u845B\u683C\u86E4\u9601\u9694\u94EC\u4E2A\u5404\u7ED9\u6839\u8DDF\u8015\u66F4\u5E9A\u7FB9"],
      ["b940", "\u7B2F\u7B30\u7B32\u7B34\u7B35\u7B36\u7B37\u7B39\u7B3B\u7B3D\u7B3F", 5, "\u7B46\u7B48\u7B4A\u7B4D\u7B4E\u7B53\u7B55\u7B57\u7B59\u7B5C\u7B5E\u7B5F\u7B61\u7B63", 10, "\u7B6F\u7B70\u7B73\u7B74\u7B76\u7B78\u7B7A\u7B7C\u7B7D\u7B7F\u7B81\u7B82\u7B83\u7B84\u7B86", 6, "\u7B8E\u7B8F"],
      ["b980", "\u7B91\u7B92\u7B93\u7B96\u7B98\u7B99\u7B9A\u7B9B\u7B9E\u7B9F\u7BA0\u7BA3\u7BA4\u7BA5\u7BAE\u7BAF\u7BB0\u7BB2\u7BB3\u7BB5\u7BB6\u7BB7\u7BB9", 7, "\u7BC2\u7BC3\u7BC4\u57C2\u803F\u6897\u5DE5\u653B\u529F\u606D\u9F9A\u4F9B\u8EAC\u516C\u5BAB\u5F13\u5DE9\u6C5E\u62F1\u8D21\u5171\u94A9\u52FE\u6C9F\u82DF\u72D7\u57A2\u6784\u8D2D\u591F\u8F9C\u83C7\u5495\u7B8D\u4F30\u6CBD\u5B64\u59D1\u9F13\u53E4\u86CA\u9AA8\u8C37\u80A1\u6545\u987E\u56FA\u96C7\u522E\u74DC\u5250\u5BE1\u6302\u8902\u4E56\u62D0\u602A\u68FA\u5173\u5B98\u51A0\u89C2\u7BA1\u9986\u7F50\u60EF\u704C\u8D2F\u5149\u5E7F\u901B\u7470\u89C4\u572D\u7845\u5F52\u9F9F\u95FA\u8F68\u9B3C\u8BE1\u7678\u6842\u67DC\u8DEA\u8D35\u523D\u8F8A\u6EDA\u68CD\u9505\u90ED\u56FD\u679C\u88F9\u8FC7\u54C8"],
      ["ba40", "\u7BC5\u7BC8\u7BC9\u7BCA\u7BCB\u7BCD\u7BCE\u7BCF\u7BD0\u7BD2\u7BD4", 4, "\u7BDB\u7BDC\u7BDE\u7BDF\u7BE0\u7BE2\u7BE3\u7BE4\u7BE7\u7BE8\u7BE9\u7BEB\u7BEC\u7BED\u7BEF\u7BF0\u7BF2", 4, "\u7BF8\u7BF9\u7BFA\u7BFB\u7BFD\u7BFF", 7, "\u7C08\u7C09\u7C0A\u7C0D\u7C0E\u7C10", 5, "\u7C17\u7C18\u7C19"],
      ["ba80", "\u7C1A", 4, "\u7C20", 5, "\u7C28\u7C29\u7C2B", 12, "\u7C39", 5, "\u7C42\u9AB8\u5B69\u6D77\u6C26\u4EA5\u5BB3\u9A87\u9163\u61A8\u90AF\u97E9\u542B\u6DB5\u5BD2\u51FD\u558A\u7F55\u7FF0\u64BC\u634D\u65F1\u61BE\u608D\u710A\u6C57\u6C49\u592F\u676D\u822A\u58D5\u568E\u8C6A\u6BEB\u90DD\u597D\u8017\u53F7\u6D69\u5475\u559D\u8377\u83CF\u6838\u79BE\u548C\u4F55\u5408\u76D2\u8C89\u9602\u6CB3\u6DB8\u8D6B\u8910\u9E64\u8D3A\u563F\u9ED1\u75D5\u5F88\u72E0\u6068\u54FC\u4EA8\u6A2A\u8861\u6052\u8F70\u54C4\u70D8\u8679\u9E3F\u6D2A\u5B8F\u5F18\u7EA2\u5589\u4FAF\u7334\u543C\u539A\u5019\u540E\u547C\u4E4E\u5FFD\u745A\u58F6\u846B\u80E1\u8774\u72D0\u7CCA\u6E56"],
      ["bb40", "\u7C43", 9, "\u7C4E", 36, "\u7C75", 5, "\u7C7E", 9],
      ["bb80", "\u7C88\u7C8A", 6, "\u7C93\u7C94\u7C96\u7C99\u7C9A\u7C9B\u7CA0\u7CA1\u7CA3\u7CA6\u7CA7\u7CA8\u7CA9\u7CAB\u7CAC\u7CAD\u7CAF\u7CB0\u7CB4", 4, "\u7CBA\u7CBB\u5F27\u864E\u552C\u62A4\u4E92\u6CAA\u6237\u82B1\u54D7\u534E\u733E\u6ED1\u753B\u5212\u5316\u8BDD\u69D0\u5F8A\u6000\u6DEE\u574F\u6B22\u73AF\u6853\u8FD8\u7F13\u6362\u60A3\u5524\u75EA\u8C62\u7115\u6DA3\u5BA6\u5E7B\u8352\u614C\u9EC4\u78FA\u8757\u7C27\u7687\u51F0\u60F6\u714C\u6643\u5E4C\u604D\u8C0E\u7070\u6325\u8F89\u5FBD\u6062\u86D4\u56DE\u6BC1\u6094\u6167\u5349\u60E0\u6666\u8D3F\u79FD\u4F1A\u70E9\u6C47\u8BB3\u8BF2\u7ED8\u8364\u660F\u5A5A\u9B42\u6D51\u6DF7\u8C41\u6D3B\u4F19\u706B\u83B7\u6216\u60D1\u970D\u8D27\u7978\u51FB\u573E\u57FA\u673A\u7578\u7A3D\u79EF\u7B95"],
      ["bc40", "\u7CBF\u7CC0\u7CC2\u7CC3\u7CC4\u7CC6\u7CC9\u7CCB\u7CCE", 6, "\u7CD8\u7CDA\u7CDB\u7CDD\u7CDE\u7CE1", 6, "\u7CE9", 5, "\u7CF0", 7, "\u7CF9\u7CFA\u7CFC", 13, "\u7D0B", 5],
      ["bc80", "\u7D11", 14, "\u7D21\u7D23\u7D24\u7D25\u7D26\u7D28\u7D29\u7D2A\u7D2C\u7D2D\u7D2E\u7D30", 6, "\u808C\u9965\u8FF9\u6FC0\u8BA5\u9E21\u59EC\u7EE9\u7F09\u5409\u6781\u68D8\u8F91\u7C4D\u96C6\u53CA\u6025\u75BE\u6C72\u5373\u5AC9\u7EA7\u6324\u51E0\u810A\u5DF1\u84DF\u6280\u5180\u5B63\u4F0E\u796D\u5242\u60B8\u6D4E\u5BC4\u5BC2\u8BA1\u8BB0\u65E2\u5FCC\u9645\u5993\u7EE7\u7EAA\u5609\u67B7\u5939\u4F73\u5BB6\u52A0\u835A\u988A\u8D3E\u7532\u94BE\u5047\u7A3C\u4EF7\u67B6\u9A7E\u5AC1\u6B7C\u76D1\u575A\u5C16\u7B3A\u95F4\u714E\u517C\u80A9\u8270\u5978\u7F04\u8327\u68C0\u67EC\u78B1\u7877\u62E3\u6361\u7B80\u4FED\u526A\u51CF\u8350\u69DB\u9274\u8DF5\u8D31\u89C1\u952E\u7BAD\u4EF6"],
      ["bd40", "\u7D37", 54, "\u7D6F", 7],
      ["bd80", "\u7D78", 32, "\u5065\u8230\u5251\u996F\u6E10\u6E85\u6DA7\u5EFA\u50F5\u59DC\u5C06\u6D46\u6C5F\u7586\u848B\u6868\u5956\u8BB2\u5320\u9171\u964D\u8549\u6912\u7901\u7126\u80F6\u4EA4\u90CA\u6D47\u9A84\u5A07\u56BC\u6405\u94F0\u77EB\u4FA5\u811A\u72E1\u89D2\u997A\u7F34\u7EDE\u527F\u6559\u9175\u8F7F\u8F83\u53EB\u7A96\u63ED\u63A5\u7686\u79F8\u8857\u9636\u622A\u52AB\u8282\u6854\u6770\u6377\u776B\u7AED\u6D01\u7ED3\u89E3\u59D0\u6212\u85C9\u82A5\u754C\u501F\u4ECB\u75A5\u8BEB\u5C4A\u5DFE\u7B4B\u65A4\u91D1\u4ECA\u6D25\u895F\u7D27\u9526\u4EC5\u8C28\u8FDB\u9773\u664B\u7981\u8FD1\u70EC\u6D78"],
      ["be40", "\u7D99", 12, "\u7DA7", 6, "\u7DAF", 42],
      ["be80", "\u7DDA", 32, "\u5C3D\u52B2\u8346\u5162\u830E\u775B\u6676\u9CB8\u4EAC\u60CA\u7CBE\u7CB3\u7ECF\u4E95\u8B66\u666F\u9888\u9759\u5883\u656C\u955C\u5F84\u75C9\u9756\u7ADF\u7ADE\u51C0\u70AF\u7A98\u63EA\u7A76\u7EA0\u7396\u97ED\u4E45\u7078\u4E5D\u9152\u53A9\u6551\u65E7\u81FC\u8205\u548E\u5C31\u759A\u97A0\u62D8\u72D9\u75BD\u5C45\u9A79\u83CA\u5C40\u5480\u77E9\u4E3E\u6CAE\u805A\u62D2\u636E\u5DE8\u5177\u8DDD\u8E1E\u952F\u4FF1\u53E5\u60E7\u70AC\u5267\u6350\u9E43\u5A1F\u5026\u7737\u5377\u7EE2\u6485\u652B\u6289\u6398\u5014\u7235\u89C9\u51B3\u8BC0\u7EDD\u5747\u83CC\u94A7\u519B\u541B\u5CFB"],
      ["bf40", "\u7DFB", 62],
      ["bf80", "\u7E3A\u7E3C", 4, "\u7E42", 4, "\u7E48", 21, "\u4FCA\u7AE3\u6D5A\u90E1\u9A8F\u5580\u5496\u5361\u54AF\u5F00\u63E9\u6977\u51EF\u6168\u520A\u582A\u52D8\u574E\u780D\u770B\u5EB7\u6177\u7CE0\u625B\u6297\u4EA2\u7095\u8003\u62F7\u70E4\u9760\u5777\u82DB\u67EF\u68F5\u78D5\u9897\u79D1\u58F3\u54B3\u53EF\u6E34\u514B\u523B\u5BA2\u8BFE\u80AF\u5543\u57A6\u6073\u5751\u542D\u7A7A\u6050\u5B54\u63A7\u62A0\u53E3\u6263\u5BC7\u67AF\u54ED\u7A9F\u82E6\u9177\u5E93\u88E4\u5938\u57AE\u630E\u8DE8\u80EF\u5757\u7B77\u4FA9\u5FEB\u5BBD\u6B3E\u5321\u7B50\u72C2\u6846\u77FF\u7736\u65F7\u51B5\u4E8F\u76D4\u5CBF\u7AA5\u8475\u594E\u9B41\u5080"],
      ["c040", "\u7E5E", 35, "\u7E83", 23, "\u7E9C\u7E9D\u7E9E"],
      ["c080", "\u7EAE\u7EB4\u7EBB\u7EBC\u7ED6\u7EE4\u7EEC\u7EF9\u7F0A\u7F10\u7F1E\u7F37\u7F39\u7F3B", 6, "\u7F43\u7F46", 9, "\u7F52\u7F53\u9988\u6127\u6E83\u5764\u6606\u6346\u56F0\u62EC\u6269\u5ED3\u9614\u5783\u62C9\u5587\u8721\u814A\u8FA3\u5566\u83B1\u6765\u8D56\u84DD\u5A6A\u680F\u62E6\u7BEE\u9611\u5170\u6F9C\u8C30\u63FD\u89C8\u61D2\u7F06\u70C2\u6EE5\u7405\u6994\u72FC\u5ECA\u90CE\u6717\u6D6A\u635E\u52B3\u7262\u8001\u4F6C\u59E5\u916A\u70D9\u6D9D\u52D2\u4E50\u96F7\u956D\u857E\u78CA\u7D2F\u5121\u5792\u64C2\u808B\u7C7B\u6CEA\u68F1\u695E\u51B7\u5398\u68A8\u7281\u9ECE\u7BF1\u72F8\u79BB\u6F13\u7406\u674E\u91CC\u9CA4\u793C\u8389\u8354\u540F\u6817\u4E3D\u5389\u52B1\u783E\u5386\u5229\u5088\u4F8B\u4FD0"],
      ["c140", "\u7F56\u7F59\u7F5B\u7F5C\u7F5D\u7F5E\u7F60\u7F63", 4, "\u7F6B\u7F6C\u7F6D\u7F6F\u7F70\u7F73\u7F75\u7F76\u7F77\u7F78\u7F7A\u7F7B\u7F7C\u7F7D\u7F7F\u7F80\u7F82", 7, "\u7F8B\u7F8D\u7F8F", 4, "\u7F95", 4, "\u7F9B\u7F9C\u7FA0\u7FA2\u7FA3\u7FA5\u7FA6\u7FA8", 6, "\u7FB1"],
      ["c180", "\u7FB3", 4, "\u7FBA\u7FBB\u7FBE\u7FC0\u7FC2\u7FC3\u7FC4\u7FC6\u7FC7\u7FC8\u7FC9\u7FCB\u7FCD\u7FCF", 4, "\u7FD6\u7FD7\u7FD9", 5, "\u7FE2\u7FE3\u75E2\u7ACB\u7C92\u6CA5\u96B6\u529B\u7483\u54E9\u4FE9\u8054\u83B2\u8FDE\u9570\u5EC9\u601C\u6D9F\u5E18\u655B\u8138\u94FE\u604B\u70BC\u7EC3\u7CAE\u51C9\u6881\u7CB1\u826F\u4E24\u8F86\u91CF\u667E\u4EAE\u8C05\u64A9\u804A\u50DA\u7597\u71CE\u5BE5\u8FBD\u6F66\u4E86\u6482\u9563\u5ED6\u6599\u5217\u88C2\u70C8\u52A3\u730E\u7433\u6797\u78F7\u9716\u4E34\u90BB\u9CDE\u6DCB\u51DB\u8D41\u541D\u62CE\u73B2\u83F1\u96F6\u9F84\u94C3\u4F36\u7F9A\u51CC\u7075\u9675\u5CAD\u9886\u53E6\u4EE4\u6E9C\u7409\u69B4\u786B\u998F\u7559\u5218\u7624\u6D41\u67F3\u516D\u9F99\u804B\u5499\u7B3C\u7ABF"],
      ["c240", "\u7FE4\u7FE7\u7FE8\u7FEA\u7FEB\u7FEC\u7FED\u7FEF\u7FF2\u7FF4", 6, "\u7FFD\u7FFE\u7FFF\u8002\u8007\u8008\u8009\u800A\u800E\u800F\u8011\u8013\u801A\u801B\u801D\u801E\u801F\u8021\u8023\u8024\u802B", 5, "\u8032\u8034\u8039\u803A\u803C\u803E\u8040\u8041\u8044\u8045\u8047\u8048\u8049\u804E\u804F\u8050\u8051\u8053\u8055\u8056\u8057"],
      ["c280", "\u8059\u805B", 13, "\u806B", 5, "\u8072", 11, "\u9686\u5784\u62E2\u9647\u697C\u5A04\u6402\u7BD3\u6F0F\u964B\u82A6\u5362\u9885\u5E90\u7089\u63B3\u5364\u864F\u9C81\u9E93\u788C\u9732\u8DEF\u8D42\u9E7F\u6F5E\u7984\u5F55\u9646\u622E\u9A74\u5415\u94DD\u4FA3\u65C5\u5C65\u5C61\u7F15\u8651\u6C2F\u5F8B\u7387\u6EE4\u7EFF\u5CE6\u631B\u5B6A\u6EE6\u5375\u4E71\u63A0\u7565\u62A1\u8F6E\u4F26\u4ED1\u6CA6\u7EB6\u8BBA\u841D\u87BA\u7F57\u903B\u9523\u7BA9\u9AA1\u88F8\u843D\u6D1B\u9A86\u7EDC\u5988\u9EBB\u739B\u7801\u8682\u9A6C\u9A82\u561B\u5417\u57CB\u4E70\u9EA6\u5356\u8FC8\u8109\u7792\u9992\u86EE\u6EE1\u8513\u66FC\u6162\u6F2B"],
      ["c340", "\u807E\u8081\u8082\u8085\u8088\u808A\u808D", 5, "\u8094\u8095\u8097\u8099\u809E\u80A3\u80A6\u80A7\u80A8\u80AC\u80B0\u80B3\u80B5\u80B6\u80B8\u80B9\u80BB\u80C5\u80C7", 4, "\u80CF", 6, "\u80D8\u80DF\u80E0\u80E2\u80E3\u80E6\u80EE\u80F5\u80F7\u80F9\u80FB\u80FE\u80FF\u8100\u8101\u8103\u8104\u8105\u8107\u8108\u810B"],
      ["c380", "\u810C\u8115\u8117\u8119\u811B\u811C\u811D\u811F", 12, "\u812D\u812E\u8130\u8133\u8134\u8135\u8137\u8139", 4, "\u813F\u8C29\u8292\u832B\u76F2\u6C13\u5FD9\u83BD\u732B\u8305\u951A\u6BDB\u77DB\u94C6\u536F\u8302\u5192\u5E3D\u8C8C\u8D38\u4E48\u73AB\u679A\u6885\u9176\u9709\u7164\u6CA1\u7709\u5A92\u9541\u6BCF\u7F8E\u6627\u5BD0\u59B9\u5A9A\u95E8\u95F7\u4EEC\u840C\u8499\u6AAC\u76DF\u9530\u731B\u68A6\u5B5F\u772F\u919A\u9761\u7CDC\u8FF7\u8C1C\u5F25\u7C73\u79D8\u89C5\u6CCC\u871C\u5BC6\u5E42\u68C9\u7720\u7EF5\u5195\u514D\u52C9\u5A29\u7F05\u9762\u82D7\u63CF\u7784\u85D0\u79D2\u6E3A\u5E99\u5999\u8511\u706D\u6C11\u62BF\u76BF\u654F\u60AF\u95FD\u660E\u879F\u9E23\u94ED\u540D\u547D\u8C2C\u6478"],
      ["c440", "\u8140", 5, "\u8147\u8149\u814D\u814E\u814F\u8152\u8156\u8157\u8158\u815B", 4, "\u8161\u8162\u8163\u8164\u8166\u8168\u816A\u816B\u816C\u816F\u8172\u8173\u8175\u8176\u8177\u8178\u8181\u8183", 4, "\u8189\u818B\u818C\u818D\u818E\u8190\u8192", 5, "\u8199\u819A\u819E", 4, "\u81A4\u81A5"],
      ["c480", "\u81A7\u81A9\u81AB", 7, "\u81B4", 5, "\u81BC\u81BD\u81BE\u81BF\u81C4\u81C5\u81C7\u81C8\u81C9\u81CB\u81CD", 6, "\u6479\u8611\u6A21\u819C\u78E8\u6469\u9B54\u62B9\u672B\u83AB\u58A8\u9ED8\u6CAB\u6F20\u5BDE\u964C\u8C0B\u725F\u67D0\u62C7\u7261\u4EA9\u59C6\u6BCD\u5893\u66AE\u5E55\u52DF\u6155\u6728\u76EE\u7766\u7267\u7A46\u62FF\u54EA\u5450\u94A0\u90A3\u5A1C\u7EB3\u6C16\u4E43\u5976\u8010\u5948\u5357\u7537\u96BE\u56CA\u6320\u8111\u607C\u95F9\u6DD6\u5462\u9981\u5185\u5AE9\u80FD\u59AE\u9713\u502A\u6CE5\u5C3C\u62DF\u4F60\u533F\u817B\u9006\u6EBA\u852B\u62C8\u5E74\u78BE\u64B5\u637B\u5FF5\u5A18\u917F\u9E1F\u5C3F\u634F\u8042\u5B7D\u556E\u954A\u954D\u6D85\u60A8\u67E0\u72DE\u51DD\u5B81"],
      ["c540", "\u81D4", 14, "\u81E4\u81E5\u81E6\u81E8\u81E9\u81EB\u81EE", 4, "\u81F5", 5, "\u81FD\u81FF\u8203\u8207", 4, "\u820E\u820F\u8211\u8213\u8215", 5, "\u821D\u8220\u8224\u8225\u8226\u8227\u8229\u822E\u8232\u823A\u823C\u823D\u823F"],
      ["c580", "\u8240\u8241\u8242\u8243\u8245\u8246\u8248\u824A\u824C\u824D\u824E\u8250", 7, "\u8259\u825B\u825C\u825D\u825E\u8260", 7, "\u8269\u62E7\u6CDE\u725B\u626D\u94AE\u7EBD\u8113\u6D53\u519C\u5F04\u5974\u52AA\u6012\u5973\u6696\u8650\u759F\u632A\u61E6\u7CEF\u8BFA\u54E6\u6B27\u9E25\u6BB4\u85D5\u5455\u5076\u6CA4\u556A\u8DB4\u722C\u5E15\u6015\u7436\u62CD\u6392\u724C\u5F98\u6E43\u6D3E\u6500\u6F58\u76D8\u78D0\u76FC\u7554\u5224\u53DB\u4E53\u5E9E\u65C1\u802A\u80D6\u629B\u5486\u5228\u70AE\u888D\u8DD1\u6CE1\u5478\u80DA\u57F9\u88F4\u8D54\u966A\u914D\u4F69\u6C9B\u55B7\u76C6\u7830\u62A8\u70F9\u6F8E\u5F6D\u84EC\u68DA\u787C\u7BF7\u81A8\u670B\u9E4F\u6367\u78B0\u576F\u7812\u9739\u6279\u62AB\u5288\u7435\u6BD7"],
      ["c640", "\u826A\u826B\u826C\u826D\u8271\u8275\u8276\u8277\u8278\u827B\u827C\u8280\u8281\u8283\u8285\u8286\u8287\u8289\u828C\u8290\u8293\u8294\u8295\u8296\u829A\u829B\u829E\u82A0\u82A2\u82A3\u82A7\u82B2\u82B5\u82B6\u82BA\u82BB\u82BC\u82BF\u82C0\u82C2\u82C3\u82C5\u82C6\u82C9\u82D0\u82D6\u82D9\u82DA\u82DD\u82E2\u82E7\u82E8\u82E9\u82EA\u82EC\u82ED\u82EE\u82F0\u82F2\u82F3\u82F5\u82F6\u82F8"],
      ["c680", "\u82FA\u82FC", 4, "\u830A\u830B\u830D\u8310\u8312\u8313\u8316\u8318\u8319\u831D", 9, "\u8329\u832A\u832E\u8330\u8332\u8337\u833B\u833D\u5564\u813E\u75B2\u76AE\u5339\u75DE\u50FB\u5C41\u8B6C\u7BC7\u504F\u7247\u9A97\u98D8\u6F02\u74E2\u7968\u6487\u77A5\u62FC\u9891\u8D2B\u54C1\u8058\u4E52\u576A\u82F9\u840D\u5E73\u51ED\u74F6\u8BC4\u5C4F\u5761\u6CFC\u9887\u5A46\u7834\u9B44\u8FEB\u7C95\u5256\u6251\u94FA\u4EC6\u8386\u8461\u83E9\u84B2\u57D4\u6734\u5703\u666E\u6D66\u8C31\u66DD\u7011\u671F\u6B3A\u6816\u621A\u59BB\u4E03\u51C4\u6F06\u67D2\u6C8F\u5176\u68CB\u5947\u6B67\u7566\u5D0E\u8110\u9F50\u65D7\u7948\u7941\u9A91\u8D77\u5C82\u4E5E\u4F01\u542F\u5951\u780C\u5668\u6C14\u8FC4\u5F03\u6C7D\u6CE3\u8BAB\u6390"],
      ["c740", "\u833E\u833F\u8341\u8342\u8344\u8345\u8348\u834A", 4, "\u8353\u8355", 4, "\u835D\u8362\u8370", 6, "\u8379\u837A\u837E", 6, "\u8387\u8388\u838A\u838B\u838C\u838D\u838F\u8390\u8391\u8394\u8395\u8396\u8397\u8399\u839A\u839D\u839F\u83A1", 6, "\u83AC\u83AD\u83AE"],
      ["c780", "\u83AF\u83B5\u83BB\u83BE\u83BF\u83C2\u83C3\u83C4\u83C6\u83C8\u83C9\u83CB\u83CD\u83CE\u83D0\u83D1\u83D2\u83D3\u83D5\u83D7\u83D9\u83DA\u83DB\u83DE\u83E2\u83E3\u83E4\u83E6\u83E7\u83E8\u83EB\u83EC\u83ED\u6070\u6D3D\u7275\u6266\u948E\u94C5\u5343\u8FC1\u7B7E\u4EDF\u8C26\u4E7E\u9ED4\u94B1\u94B3\u524D\u6F5C\u9063\u6D45\u8C34\u5811\u5D4C\u6B20\u6B49\u67AA\u545B\u8154\u7F8C\u5899\u8537\u5F3A\u62A2\u6A47\u9539\u6572\u6084\u6865\u77A7\u4E54\u4FA8\u5DE7\u9798\u64AC\u7FD8\u5CED\u4FCF\u7A8D\u5207\u8304\u4E14\u602F\u7A83\u94A6\u4FB5\u4EB2\u79E6\u7434\u52E4\u82B9\u64D2\u79BD\u5BDD\u6C81\u9752\u8F7B\u6C22\u503E\u537F\u6E05\u64CE\u6674\u6C30\u60C5\u9877\u8BF7\u5E86\u743C\u7A77\u79CB\u4E18\u90B1\u7403\u6C42\u56DA\u914B\u6CC5\u8D8B\u533A\u86C6\u66F2\u8EAF\u5C48\u9A71\u6E20"],
      ["c840", "\u83EE\u83EF\u83F3", 4, "\u83FA\u83FB\u83FC\u83FE\u83FF\u8400\u8402\u8405\u8407\u8408\u8409\u840A\u8410\u8412", 5, "\u8419\u841A\u841B\u841E", 5, "\u8429", 7, "\u8432", 5, "\u8439\u843A\u843B\u843E", 7, "\u8447\u8448\u8449"],
      ["c880", "\u844A", 6, "\u8452", 4, "\u8458\u845D\u845E\u845F\u8460\u8462\u8464", 4, "\u846A\u846E\u846F\u8470\u8472\u8474\u8477\u8479\u847B\u847C\u53D6\u5A36\u9F8B\u8DA3\u53BB\u5708\u98A7\u6743\u919B\u6CC9\u5168\u75CA\u62F3\u72AC\u5238\u529D\u7F3A\u7094\u7638\u5374\u9E4A\u69B7\u786E\u96C0\u88D9\u7FA4\u7136\u71C3\u5189\u67D3\u74E4\u58E4\u6518\u56B7\u8BA9\u9976\u6270\u7ED5\u60F9\u70ED\u58EC\u4EC1\u4EBA\u5FCD\u97E7\u4EFB\u8BA4\u5203\u598A\u7EAB\u6254\u4ECD\u65E5\u620E\u8338\u84C9\u8363\u878D\u7194\u6EB6\u5BB9\u7ED2\u5197\u63C9\u67D4\u8089\u8339\u8815\u5112\u5B7A\u5982\u8FB1\u4E73\u6C5D\u5165\u8925\u8F6F\u962E\u854A\u745E\u9510\u95F0\u6DA6\u82E5\u5F31\u6492\u6D12\u8428\u816E\u9CC3\u585E\u8D5B\u4E09\u53C1"],
      ["c940", "\u847D", 4, "\u8483\u8484\u8485\u8486\u848A\u848D\u848F", 7, "\u8498\u849A\u849B\u849D\u849E\u849F\u84A0\u84A2", 12, "\u84B0\u84B1\u84B3\u84B5\u84B6\u84B7\u84BB\u84BC\u84BE\u84C0\u84C2\u84C3\u84C5\u84C6\u84C7\u84C8\u84CB\u84CC\u84CE\u84CF\u84D2\u84D4\u84D5\u84D7"],
      ["c980", "\u84D8", 4, "\u84DE\u84E1\u84E2\u84E4\u84E7", 4, "\u84ED\u84EE\u84EF\u84F1", 10, "\u84FD\u84FE\u8500\u8501\u8502\u4F1E\u6563\u6851\u55D3\u4E27\u6414\u9A9A\u626B\u5AC2\u745F\u8272\u6DA9\u68EE\u50E7\u838E\u7802\u6740\u5239\u6C99\u7EB1\u50BB\u5565\u715E\u7B5B\u6652\u73CA\u82EB\u6749\u5C71\u5220\u717D\u886B\u95EA\u9655\u64C5\u8D61\u81B3\u5584\u6C55\u6247\u7F2E\u5892\u4F24\u5546\u8D4F\u664C\u4E0A\u5C1A\u88F3\u68A2\u634E\u7A0D\u70E7\u828D\u52FA\u97F6\u5C11\u54E8\u90B5\u7ECD\u5962\u8D4A\u86C7\u820C\u820D\u8D66\u6444\u5C04\u6151\u6D89\u793E\u8BBE\u7837\u7533\u547B\u4F38\u8EAB\u6DF1\u5A20\u7EC5\u795E\u6C88\u5BA1\u5A76\u751A\u80BE\u614E\u6E17\u58F0\u751F\u7525\u7272\u5347\u7EF3"],
      ["ca40", "\u8503", 8, "\u850D\u850E\u850F\u8510\u8512\u8514\u8515\u8516\u8518\u8519\u851B\u851C\u851D\u851E\u8520\u8522", 8, "\u852D", 9, "\u853E", 4, "\u8544\u8545\u8546\u8547\u854B", 10],
      ["ca80", "\u8557\u8558\u855A\u855B\u855C\u855D\u855F", 4, "\u8565\u8566\u8567\u8569", 8, "\u8573\u8575\u8576\u8577\u8578\u857C\u857D\u857F\u8580\u8581\u7701\u76DB\u5269\u80DC\u5723\u5E08\u5931\u72EE\u65BD\u6E7F\u8BD7\u5C38\u8671\u5341\u77F3\u62FE\u65F6\u4EC0\u98DF\u8680\u5B9E\u8BC6\u53F2\u77E2\u4F7F\u5C4E\u9A76\u59CB\u5F0F\u793A\u58EB\u4E16\u67FF\u4E8B\u62ED\u8A93\u901D\u52BF\u662F\u55DC\u566C\u9002\u4ED5\u4F8D\u91CA\u9970\u6C0F\u5E02\u6043\u5BA4\u89C6\u8BD5\u6536\u624B\u9996\u5B88\u5BFF\u6388\u552E\u53D7\u7626\u517D\u852C\u67A2\u68B3\u6B8A\u6292\u8F93\u53D4\u8212\u6DD1\u758F\u4E66\u8D4E\u5B70\u719F\u85AF\u6691\u66D9\u7F72\u8700\u9ECD\u9F20\u5C5E\u672F\u8FF0\u6811\u675F\u620D\u7AD6\u5885\u5EB6\u6570\u6F31"],
      ["cb40", "\u8582\u8583\u8586\u8588", 6, "\u8590", 10, "\u859D", 6, "\u85A5\u85A6\u85A7\u85A9\u85AB\u85AC\u85AD\u85B1", 5, "\u85B8\u85BA", 6, "\u85C2", 6, "\u85CA", 4, "\u85D1\u85D2"],
      ["cb80", "\u85D4\u85D6", 5, "\u85DD", 6, "\u85E5\u85E6\u85E7\u85E8\u85EA", 14, "\u6055\u5237\u800D\u6454\u8870\u7529\u5E05\u6813\u62F4\u971C\u53CC\u723D\u8C01\u6C34\u7761\u7A0E\u542E\u77AC\u987A\u821C\u8BF4\u7855\u6714\u70C1\u65AF\u6495\u5636\u601D\u79C1\u53F8\u4E1D\u6B7B\u8086\u5BFA\u55E3\u56DB\u4F3A\u4F3C\u9972\u5DF3\u677E\u8038\u6002\u9882\u9001\u5B8B\u8BBC\u8BF5\u641C\u8258\u64DE\u55FD\u82CF\u9165\u4FD7\u7D20\u901F\u7C9F\u50F3\u5851\u6EAF\u5BBF\u8BC9\u8083\u9178\u849C\u7B97\u867D\u968B\u968F\u7EE5\u9AD3\u788E\u5C81\u7A57\u9042\u96A7\u795F\u5B59\u635F\u7B0B\u84D1\u68AD\u5506\u7F29\u7410\u7D22\u9501\u6240\u584C\u4ED6\u5B83\u5979\u5854"],
      ["cc40", "\u85F9\u85FA\u85FC\u85FD\u85FE\u8600", 4, "\u8606", 10, "\u8612\u8613\u8614\u8615\u8617", 15, "\u8628\u862A", 13, "\u8639\u863A\u863B\u863D\u863E\u863F\u8640"],
      ["cc80", "\u8641", 11, "\u8652\u8653\u8655", 4, "\u865B\u865C\u865D\u865F\u8660\u8661\u8663", 7, "\u736D\u631E\u8E4B\u8E0F\u80CE\u82D4\u62AC\u53F0\u6CF0\u915E\u592A\u6001\u6C70\u574D\u644A\u8D2A\u762B\u6EE9\u575B\u6A80\u75F0\u6F6D\u8C2D\u8C08\u5766\u6BEF\u8892\u78B3\u63A2\u53F9\u70AD\u6C64\u5858\u642A\u5802\u68E0\u819B\u5510\u7CD6\u5018\u8EBA\u6DCC\u8D9F\u70EB\u638F\u6D9B\u6ED4\u7EE6\u8404\u6843\u9003\u6DD8\u9676\u8BA8\u5957\u7279\u85E4\u817E\u75BC\u8A8A\u68AF\u5254\u8E22\u9511\u63D0\u9898\u8E44\u557C\u4F53\u66FF\u568F\u60D5\u6D95\u5243\u5C49\u5929\u6DFB\u586B\u7530\u751C\u606C\u8214\u8146\u6311\u6761\u8FE2\u773A\u8DF3\u8D34\u94C1\u5E16\u5385\u542C\u70C3"],
      ["cd40", "\u866D\u866F\u8670\u8672", 6, "\u8683", 6, "\u868E", 4, "\u8694\u8696", 5, "\u869E", 4, "\u86A5\u86A6\u86AB\u86AD\u86AE\u86B2\u86B3\u86B7\u86B8\u86B9\u86BB", 4, "\u86C1\u86C2\u86C3\u86C5\u86C8\u86CC\u86CD\u86D2\u86D3\u86D5\u86D6\u86D7\u86DA\u86DC"],
      ["cd80", "\u86DD\u86E0\u86E1\u86E2\u86E3\u86E5\u86E6\u86E7\u86E8\u86EA\u86EB\u86EC\u86EF\u86F5\u86F6\u86F7\u86FA\u86FB\u86FC\u86FD\u86FF\u8701\u8704\u8705\u8706\u870B\u870C\u870E\u870F\u8710\u8711\u8714\u8716\u6C40\u5EF7\u505C\u4EAD\u5EAD\u633A\u8247\u901A\u6850\u916E\u77B3\u540C\u94DC\u5F64\u7AE5\u6876\u6345\u7B52\u7EDF\u75DB\u5077\u6295\u5934\u900F\u51F8\u79C3\u7A81\u56FE\u5F92\u9014\u6D82\u5C60\u571F\u5410\u5154\u6E4D\u56E2\u63A8\u9893\u817F\u8715\u892A\u9000\u541E\u5C6F\u81C0\u62D6\u6258\u8131\u9E35\u9640\u9A6E\u9A7C\u692D\u59A5\u62D3\u553E\u6316\u54C7\u86D9\u6D3C\u5A03\u74E6\u889C\u6B6A\u5916\u8C4C\u5F2F\u6E7E\u73A9\u987D\u4E38\u70F7\u5B8C\u7897\u633D\u665A\u7696\u60CB\u5B9B\u5A49\u4E07\u8155\u6C6A\u738B\u4EA1\u6789\u7F51\u5F80\u65FA\u671B\u5FD8\u5984\u5A01"],
      ["ce40", "\u8719\u871B\u871D\u871F\u8720\u8724\u8726\u8727\u8728\u872A\u872B\u872C\u872D\u872F\u8730\u8732\u8733\u8735\u8736\u8738\u8739\u873A\u873C\u873D\u8740", 6, "\u874A\u874B\u874D\u874F\u8750\u8751\u8752\u8754\u8755\u8756\u8758\u875A", 5, "\u8761\u8762\u8766", 7, "\u876F\u8771\u8772\u8773\u8775"],
      ["ce80", "\u8777\u8778\u8779\u877A\u877F\u8780\u8781\u8784\u8786\u8787\u8789\u878A\u878C\u878E", 4, "\u8794\u8795\u8796\u8798", 6, "\u87A0", 4, "\u5DCD\u5FAE\u5371\u97E6\u8FDD\u6845\u56F4\u552F\u60DF\u4E3A\u6F4D\u7EF4\u82C7\u840E\u59D4\u4F1F\u4F2A\u5C3E\u7EAC\u672A\u851A\u5473\u754F\u80C3\u5582\u9B4F\u4F4D\u6E2D\u8C13\u5C09\u6170\u536B\u761F\u6E29\u868A\u6587\u95FB\u7EB9\u543B\u7A33\u7D0A\u95EE\u55E1\u7FC1\u74EE\u631D\u8717\u6DA1\u7A9D\u6211\u65A1\u5367\u63E1\u6C83\u5DEB\u545C\u94A8\u4E4C\u6C61\u8BEC\u5C4B\u65E0\u829C\u68A7\u543E\u5434\u6BCB\u6B66\u4E94\u6342\u5348\u821E\u4F0D\u4FAE\u575E\u620A\u96FE\u6664\u7269\u52FF\u52A1\u609F\u8BEF\u6614\u7199\u6790\u897F\u7852\u77FD\u6670\u563B\u5438\u9521\u727A"],
      ["cf40", "\u87A5\u87A6\u87A7\u87A9\u87AA\u87AE\u87B0\u87B1\u87B2\u87B4\u87B6\u87B7\u87B8\u87B9\u87BB\u87BC\u87BE\u87BF\u87C1", 4, "\u87C7\u87C8\u87C9\u87CC", 4, "\u87D4", 6, "\u87DC\u87DD\u87DE\u87DF\u87E1\u87E2\u87E3\u87E4\u87E6\u87E7\u87E8\u87E9\u87EB\u87EC\u87ED\u87EF", 9],
      ["cf80", "\u87FA\u87FB\u87FC\u87FD\u87FF\u8800\u8801\u8802\u8804", 5, "\u880B", 7, "\u8814\u8817\u8818\u8819\u881A\u881C", 4, "\u8823\u7A00\u606F\u5E0C\u6089\u819D\u5915\u60DC\u7184\u70EF\u6EAA\u6C50\u7280\u6A84\u88AD\u5E2D\u4E60\u5AB3\u559C\u94E3\u6D17\u7CFB\u9699\u620F\u7EC6\u778E\u867E\u5323\u971E\u8F96\u6687\u5CE1\u4FA0\u72ED\u4E0B\u53A6\u590F\u5413\u6380\u9528\u5148\u4ED9\u9C9C\u7EA4\u54B8\u8D24\u8854\u8237\u95F2\u6D8E\u5F26\u5ACC\u663E\u9669\u73B0\u732E\u53BF\u817A\u9985\u7FA1\u5BAA\u9677\u9650\u7EBF\u76F8\u53A2\u9576\u9999\u7BB1\u8944\u6E58\u4E61\u7FD4\u7965\u8BE6\u60F3\u54CD\u4EAB\u9879\u5DF7\u6A61\u50CF\u5411\u8C61\u8427\u785D\u9704\u524A\u54EE\u56A3\u9500\u6D88\u5BB5\u6DC6\u6653"],
      ["d040", "\u8824", 13, "\u8833", 5, "\u883A\u883B\u883D\u883E\u883F\u8841\u8842\u8843\u8846", 5, "\u884E", 5, "\u8855\u8856\u8858\u885A", 6, "\u8866\u8867\u886A\u886D\u886F\u8871\u8873\u8874\u8875\u8876\u8878\u8879\u887A"],
      ["d080", "\u887B\u887C\u8880\u8883\u8886\u8887\u8889\u888A\u888C\u888E\u888F\u8890\u8891\u8893\u8894\u8895\u8897", 4, "\u889D", 4, "\u88A3\u88A5", 5, "\u5C0F\u5B5D\u6821\u8096\u5578\u7B11\u6548\u6954\u4E9B\u6B47\u874E\u978B\u534F\u631F\u643A\u90AA\u659C\u80C1\u8C10\u5199\u68B0\u5378\u87F9\u61C8\u6CC4\u6CFB\u8C22\u5C51\u85AA\u82AF\u950C\u6B23\u8F9B\u65B0\u5FFB\u5FC3\u4FE1\u8845\u661F\u8165\u7329\u60FA\u5174\u5211\u578B\u5F62\u90A2\u884C\u9192\u5E78\u674F\u6027\u59D3\u5144\u51F6\u80F8\u5308\u6C79\u96C4\u718A\u4F11\u4FEE\u7F9E\u673D\u55C5\u9508\u79C0\u8896\u7EE3\u589F\u620C\u9700\u865A\u5618\u987B\u5F90\u8BB8\u84C4\u9157\u53D9\u65ED\u5E8F\u755C\u6064\u7D6E\u5A7F\u7EEA\u7EED\u8F69\u55A7\u5BA3\u60AC\u65CB\u7384"],
      ["d140", "\u88AC\u88AE\u88AF\u88B0\u88B2", 4, "\u88B8\u88B9\u88BA\u88BB\u88BD\u88BE\u88BF\u88C0\u88C3\u88C4\u88C7\u88C8\u88CA\u88CB\u88CC\u88CD\u88CF\u88D0\u88D1\u88D3\u88D6\u88D7\u88DA", 4, "\u88E0\u88E1\u88E6\u88E7\u88E9", 6, "\u88F2\u88F5\u88F6\u88F7\u88FA\u88FB\u88FD\u88FF\u8900\u8901\u8903", 5],
      ["d180", "\u8909\u890B", 4, "\u8911\u8914", 4, "\u891C", 4, "\u8922\u8923\u8924\u8926\u8927\u8928\u8929\u892C\u892D\u892E\u892F\u8931\u8932\u8933\u8935\u8937\u9009\u7663\u7729\u7EDA\u9774\u859B\u5B66\u7A74\u96EA\u8840\u52CB\u718F\u5FAA\u65EC\u8BE2\u5BFB\u9A6F\u5DE1\u6B89\u6C5B\u8BAD\u8BAF\u900A\u8FC5\u538B\u62BC\u9E26\u9E2D\u5440\u4E2B\u82BD\u7259\u869C\u5D16\u8859\u6DAF\u96C5\u54D1\u4E9A\u8BB6\u7109\u54BD\u9609\u70DF\u6DF9\u76D0\u4E25\u7814\u8712\u5CA9\u5EF6\u8A00\u989C\u960E\u708E\u6CBF\u5944\u63A9\u773C\u884D\u6F14\u8273\u5830\u71D5\u538C\u781A\u96C1\u5501\u5F66\u7130\u5BB4\u8C1A\u9A8C\u6B83\u592E\u9E2F\u79E7\u6768\u626C\u4F6F\u75A1\u7F8A\u6D0B\u9633\u6C27\u4EF0\u75D2\u517B\u6837\u6F3E\u9080\u8170\u5996\u7476"],
      ["d240", "\u8938", 8, "\u8942\u8943\u8945", 24, "\u8960", 5, "\u8967", 19, "\u897C"],
      ["d280", "\u897D\u897E\u8980\u8982\u8984\u8985\u8987", 26, "\u6447\u5C27\u9065\u7A91\u8C23\u59DA\u54AC\u8200\u836F\u8981\u8000\u6930\u564E\u8036\u7237\u91CE\u51B6\u4E5F\u9875\u6396\u4E1A\u53F6\u66F3\u814B\u591C\u6DB2\u4E00\u58F9\u533B\u63D6\u94F1\u4F9D\u4F0A\u8863\u9890\u5937\u9057\u79FB\u4EEA\u80F0\u7591\u6C82\u5B9C\u59E8\u5F5D\u6905\u8681\u501A\u5DF2\u4E59\u77E3\u4EE5\u827A\u6291\u6613\u9091\u5C79\u4EBF\u5F79\u81C6\u9038\u8084\u75AB\u4EA6\u88D4\u610F\u6BC5\u5FC6\u4E49\u76CA\u6EA2\u8BE3\u8BAE\u8C0A\u8BD1\u5F02\u7FFC\u7FCC\u7ECE\u8335\u836B\u56E0\u6BB7\u97F3\u9634\u59FB\u541F\u94F6\u6DEB\u5BC5\u996E\u5C39\u5F15\u9690"],
      ["d340", "\u89A2", 30, "\u89C3\u89CD\u89D3\u89D4\u89D5\u89D7\u89D8\u89D9\u89DB\u89DD\u89DF\u89E0\u89E1\u89E2\u89E4\u89E7\u89E8\u89E9\u89EA\u89EC\u89ED\u89EE\u89F0\u89F1\u89F2\u89F4", 6],
      ["d380", "\u89FB", 4, "\u8A01", 5, "\u8A08", 21, "\u5370\u82F1\u6A31\u5A74\u9E70\u5E94\u7F28\u83B9\u8424\u8425\u8367\u8747\u8FCE\u8D62\u76C8\u5F71\u9896\u786C\u6620\u54DF\u62E5\u4F63\u81C3\u75C8\u5EB8\u96CD\u8E0A\u86F9\u548F\u6CF3\u6D8C\u6C38\u607F\u52C7\u7528\u5E7D\u4F18\u60A0\u5FE7\u5C24\u7531\u90AE\u94C0\u72B9\u6CB9\u6E38\u9149\u6709\u53CB\u53F3\u4F51\u91C9\u8BF1\u53C8\u5E7C\u8FC2\u6DE4\u4E8E\u76C2\u6986\u865E\u611A\u8206\u4F59\u4FDE\u903E\u9C7C\u6109\u6E1D\u6E14\u9685\u4E88\u5A31\u96E8\u4E0E\u5C7F\u79B9\u5B87\u8BED\u7FBD\u7389\u57DF\u828B\u90C1\u5401\u9047\u55BB\u5CEA\u5FA1\u6108\u6B32\u72F1\u80B2\u8A89"],
      ["d440", "\u8A1E", 31, "\u8A3F", 8, "\u8A49", 21],
      ["d480", "\u8A5F", 25, "\u8A7A", 6, "\u6D74\u5BD3\u88D5\u9884\u8C6B\u9A6D\u9E33\u6E0A\u51A4\u5143\u57A3\u8881\u539F\u63F4\u8F95\u56ED\u5458\u5706\u733F\u6E90\u7F18\u8FDC\u82D1\u613F\u6028\u9662\u66F0\u7EA6\u8D8A\u8DC3\u94A5\u5CB3\u7CA4\u6708\u60A6\u9605\u8018\u4E91\u90E7\u5300\u9668\u5141\u8FD0\u8574\u915D\u6655\u97F5\u5B55\u531D\u7838\u6742\u683D\u54C9\u707E\u5BB0\u8F7D\u518D\u5728\u54B1\u6512\u6682\u8D5E\u8D43\u810F\u846C\u906D\u7CDF\u51FF\u85FB\u67A3\u65E9\u6FA1\u86A4\u8E81\u566A\u9020\u7682\u7076\u71E5\u8D23\u62E9\u5219\u6CFD\u8D3C\u600E\u589E\u618E\u66FE\u8D60\u624E\u55B3\u6E23\u672D\u8F67"],
      ["d540", "\u8A81", 7, "\u8A8B", 7, "\u8A94", 46],
      ["d580", "\u8AC3", 32, "\u94E1\u95F8\u7728\u6805\u69A8\u548B\u4E4D\u70B8\u8BC8\u6458\u658B\u5B85\u7A84\u503A\u5BE8\u77BB\u6BE1\u8A79\u7C98\u6CBE\u76CF\u65A9\u8F97\u5D2D\u5C55\u8638\u6808\u5360\u6218\u7AD9\u6E5B\u7EFD\u6A1F\u7AE0\u5F70\u6F33\u5F20\u638C\u6DA8\u6756\u4E08\u5E10\u8D26\u4ED7\u80C0\u7634\u969C\u62DB\u662D\u627E\u6CBC\u8D75\u7167\u7F69\u5146\u8087\u53EC\u906E\u6298\u54F2\u86F0\u8F99\u8005\u9517\u8517\u8FD9\u6D59\u73CD\u659F\u771F\u7504\u7827\u81FB\u8D1E\u9488\u4FA6\u6795\u75B9\u8BCA\u9707\u632F\u9547\u9635\u84B8\u6323\u7741\u5F81\u72F0\u4E89\u6014\u6574\u62EF\u6B63\u653F"],
      ["d640", "\u8AE4", 34, "\u8B08", 27],
      ["d680", "\u8B24\u8B25\u8B27", 30, "\u5E27\u75C7\u90D1\u8BC1\u829D\u679D\u652F\u5431\u8718\u77E5\u80A2\u8102\u6C41\u4E4B\u7EC7\u804C\u76F4\u690D\u6B96\u6267\u503C\u4F84\u5740\u6307\u6B62\u8DBE\u53EA\u65E8\u7EB8\u5FD7\u631A\u63B7\u81F3\u81F4\u7F6E\u5E1C\u5CD9\u5236\u667A\u79E9\u7A1A\u8D28\u7099\u75D4\u6EDE\u6CBB\u7A92\u4E2D\u76C5\u5FE0\u949F\u8877\u7EC8\u79CD\u80BF\u91CD\u4EF2\u4F17\u821F\u5468\u5DDE\u6D32\u8BCC\u7CA5\u8F74\u8098\u5E1A\u5492\u76B1\u5B99\u663C\u9AA4\u73E0\u682A\u86DB\u6731\u732A\u8BF8\u8BDB\u9010\u7AF9\u70DB\u716E\u62C4\u77A9\u5631\u4E3B\u8457\u67F1\u52A9\u86C0\u8D2E\u94F8\u7B51"],
      ["d740", "\u8B46", 31, "\u8B67", 4, "\u8B6D", 25],
      ["d780", "\u8B87", 24, "\u8BAC\u8BB1\u8BBB\u8BC7\u8BD0\u8BEA\u8C09\u8C1E\u4F4F\u6CE8\u795D\u9A7B\u6293\u722A\u62FD\u4E13\u7816\u8F6C\u64B0\u8D5A\u7BC6\u6869\u5E84\u88C5\u5986\u649E\u58EE\u72B6\u690E\u9525\u8FFD\u8D58\u5760\u7F00\u8C06\u51C6\u6349\u62D9\u5353\u684C\u7422\u8301\u914C\u5544\u7740\u707C\u6D4A\u5179\u54A8\u8D44\u59FF\u6ECB\u6DC4\u5B5C\u7D2B\u4ED4\u7C7D\u6ED3\u5B50\u81EA\u6E0D\u5B57\u9B03\u68D5\u8E2A\u5B97\u7EFC\u603B\u7EB5\u90B9\u8D70\u594F\u63CD\u79DF\u8DB3\u5352\u65CF\u7956\u8BC5\u963B\u7EC4\u94BB\u7E82\u5634\u9189\u6700\u7F6A\u5C0A\u9075\u6628\u5DE6\u4F50\u67DE\u505A\u4F5C\u5750\u5EA7"],
      ["d840", "\u8C38", 8, "\u8C42\u8C43\u8C44\u8C45\u8C48\u8C4A\u8C4B\u8C4D", 7, "\u8C56\u8C57\u8C58\u8C59\u8C5B", 5, "\u8C63", 6, "\u8C6C", 6, "\u8C74\u8C75\u8C76\u8C77\u8C7B", 6, "\u8C83\u8C84\u8C86\u8C87"],
      ["d880", "\u8C88\u8C8B\u8C8D", 6, "\u8C95\u8C96\u8C97\u8C99", 20, "\u4E8D\u4E0C\u5140\u4E10\u5EFF\u5345\u4E15\u4E98\u4E1E\u9B32\u5B6C\u5669\u4E28\u79BA\u4E3F\u5315\u4E47\u592D\u723B\u536E\u6C10\u56DF\u80E4\u9997\u6BD3\u777E\u9F17\u4E36\u4E9F\u9F10\u4E5C\u4E69\u4E93\u8288\u5B5B\u556C\u560F\u4EC4\u538D\u539D\u53A3\u53A5\u53AE\u9765\u8D5D\u531A\u53F5\u5326\u532E\u533E\u8D5C\u5366\u5363\u5202\u5208\u520E\u522D\u5233\u523F\u5240\u524C\u525E\u5261\u525C\u84AF\u527D\u5282\u5281\u5290\u5293\u5182\u7F54\u4EBB\u4EC3\u4EC9\u4EC2\u4EE8\u4EE1\u4EEB\u4EDE\u4F1B\u4EF3\u4F22\u4F64\u4EF5\u4F25\u4F27\u4F09\u4F2B\u4F5E\u4F67\u6538\u4F5A\u4F5D"],
      ["d940", "\u8CAE", 62],
      ["d980", "\u8CED", 32, "\u4F5F\u4F57\u4F32\u4F3D\u4F76\u4F74\u4F91\u4F89\u4F83\u4F8F\u4F7E\u4F7B\u4FAA\u4F7C\u4FAC\u4F94\u4FE6\u4FE8\u4FEA\u4FC5\u4FDA\u4FE3\u4FDC\u4FD1\u4FDF\u4FF8\u5029\u504C\u4FF3\u502C\u500F\u502E\u502D\u4FFE\u501C\u500C\u5025\u5028\u507E\u5043\u5055\u5048\u504E\u506C\u507B\u50A5\u50A7\u50A9\u50BA\u50D6\u5106\u50ED\u50EC\u50E6\u50EE\u5107\u510B\u4EDD\u6C3D\u4F58\u4F65\u4FCE\u9FA0\u6C46\u7C74\u516E\u5DFD\u9EC9\u9998\u5181\u5914\u52F9\u530D\u8A07\u5310\u51EB\u5919\u5155\u4EA0\u5156\u4EB3\u886E\u88A4\u4EB5\u8114\u88D2\u7980\u5B34\u8803\u7FB8\u51AB\u51B1\u51BD\u51BC"],
      ["da40", "\u8D0E", 14, "\u8D20\u8D51\u8D52\u8D57\u8D5F\u8D65\u8D68\u8D69\u8D6A\u8D6C\u8D6E\u8D6F\u8D71\u8D72\u8D78", 8, "\u8D82\u8D83\u8D86\u8D87\u8D88\u8D89\u8D8C", 4, "\u8D92\u8D93\u8D95", 9, "\u8DA0\u8DA1"],
      ["da80", "\u8DA2\u8DA4", 12, "\u8DB2\u8DB6\u8DB7\u8DB9\u8DBB\u8DBD\u8DC0\u8DC1\u8DC2\u8DC5\u8DC7\u8DC8\u8DC9\u8DCA\u8DCD\u8DD0\u8DD2\u8DD3\u8DD4\u51C7\u5196\u51A2\u51A5\u8BA0\u8BA6\u8BA7\u8BAA\u8BB4\u8BB5\u8BB7\u8BC2\u8BC3\u8BCB\u8BCF\u8BCE\u8BD2\u8BD3\u8BD4\u8BD6\u8BD8\u8BD9\u8BDC\u8BDF\u8BE0\u8BE4\u8BE8\u8BE9\u8BEE\u8BF0\u8BF3\u8BF6\u8BF9\u8BFC\u8BFF\u8C00\u8C02\u8C04\u8C07\u8C0C\u8C0F\u8C11\u8C12\u8C14\u8C15\u8C16\u8C19\u8C1B\u8C18\u8C1D\u8C1F\u8C20\u8C21\u8C25\u8C27\u8C2A\u8C2B\u8C2E\u8C2F\u8C32\u8C33\u8C35\u8C36\u5369\u537A\u961D\u9622\u9621\u9631\u962A\u963D\u963C\u9642\u9649\u9654\u965F\u9667\u966C\u9672\u9674\u9688\u968D\u9697\u96B0\u9097\u909B\u909D\u9099\u90AC\u90A1\u90B4\u90B3\u90B6\u90BA"],
      ["db40", "\u8DD5\u8DD8\u8DD9\u8DDC\u8DE0\u8DE1\u8DE2\u8DE5\u8DE6\u8DE7\u8DE9\u8DED\u8DEE\u8DF0\u8DF1\u8DF2\u8DF4\u8DF6\u8DFC\u8DFE", 6, "\u8E06\u8E07\u8E08\u8E0B\u8E0D\u8E0E\u8E10\u8E11\u8E12\u8E13\u8E15", 7, "\u8E20\u8E21\u8E24", 4, "\u8E2B\u8E2D\u8E30\u8E32\u8E33\u8E34\u8E36\u8E37\u8E38\u8E3B\u8E3C\u8E3E"],
      ["db80", "\u8E3F\u8E43\u8E45\u8E46\u8E4C", 4, "\u8E53", 5, "\u8E5A", 11, "\u8E67\u8E68\u8E6A\u8E6B\u8E6E\u8E71\u90B8\u90B0\u90CF\u90C5\u90BE\u90D0\u90C4\u90C7\u90D3\u90E6\u90E2\u90DC\u90D7\u90DB\u90EB\u90EF\u90FE\u9104\u9122\u911E\u9123\u9131\u912F\u9139\u9143\u9146\u520D\u5942\u52A2\u52AC\u52AD\u52BE\u54FF\u52D0\u52D6\u52F0\u53DF\u71EE\u77CD\u5EF4\u51F5\u51FC\u9B2F\u53B6\u5F01\u755A\u5DEF\u574C\u57A9\u57A1\u587E\u58BC\u58C5\u58D1\u5729\u572C\u572A\u5733\u5739\u572E\u572F\u575C\u573B\u5742\u5769\u5785\u576B\u5786\u577C\u577B\u5768\u576D\u5776\u5773\u57AD\u57A4\u578C\u57B2\u57CF\u57A7\u57B4\u5793\u57A0\u57D5\u57D8\u57DA\u57D9\u57D2\u57B8\u57F4\u57EF\u57F8\u57E4\u57DD"],
      ["dc40", "\u8E73\u8E75\u8E77", 4, "\u8E7D\u8E7E\u8E80\u8E82\u8E83\u8E84\u8E86\u8E88", 6, "\u8E91\u8E92\u8E93\u8E95", 6, "\u8E9D\u8E9F", 11, "\u8EAD\u8EAE\u8EB0\u8EB1\u8EB3", 6, "\u8EBB", 7],
      ["dc80", "\u8EC3", 10, "\u8ECF", 21, "\u580B\u580D\u57FD\u57ED\u5800\u581E\u5819\u5844\u5820\u5865\u586C\u5881\u5889\u589A\u5880\u99A8\u9F19\u61FF\u8279\u827D\u827F\u828F\u828A\u82A8\u8284\u828E\u8291\u8297\u8299\u82AB\u82B8\u82BE\u82B0\u82C8\u82CA\u82E3\u8298\u82B7\u82AE\u82CB\u82CC\u82C1\u82A9\u82B4\u82A1\u82AA\u829F\u82C4\u82CE\u82A4\u82E1\u8309\u82F7\u82E4\u830F\u8307\u82DC\u82F4\u82D2\u82D8\u830C\u82FB\u82D3\u8311\u831A\u8306\u8314\u8315\u82E0\u82D5\u831C\u8351\u835B\u835C\u8308\u8392\u833C\u8334\u8331\u839B\u835E\u832F\u834F\u8347\u8343\u835F\u8340\u8317\u8360\u832D\u833A\u8333\u8366\u8365"],
      ["dd40", "\u8EE5", 62],
      ["dd80", "\u8F24", 32, "\u8368\u831B\u8369\u836C\u836A\u836D\u836E\u83B0\u8378\u83B3\u83B4\u83A0\u83AA\u8393\u839C\u8385\u837C\u83B6\u83A9\u837D\u83B8\u837B\u8398\u839E\u83A8\u83BA\u83BC\u83C1\u8401\u83E5\u83D8\u5807\u8418\u840B\u83DD\u83FD\u83D6\u841C\u8438\u8411\u8406\u83D4\u83DF\u840F\u8403\u83F8\u83F9\u83EA\u83C5\u83C0\u8426\u83F0\u83E1\u845C\u8451\u845A\u8459\u8473\u8487\u8488\u847A\u8489\u8478\u843C\u8446\u8469\u8476\u848C\u848E\u8431\u846D\u84C1\u84CD\u84D0\u84E6\u84BD\u84D3\u84CA\u84BF\u84BA\u84E0\u84A1\u84B9\u84B4\u8497\u84E5\u84E3\u850C\u750D\u8538\u84F0\u8539\u851F\u853A"],
      ["de40", "\u8F45", 32, "\u8F6A\u8F80\u8F8C\u8F92\u8F9D\u8FA0\u8FA1\u8FA2\u8FA4\u8FA5\u8FA6\u8FA7\u8FAA\u8FAC\u8FAD\u8FAE\u8FAF\u8FB2\u8FB3\u8FB4\u8FB5\u8FB7\u8FB8\u8FBA\u8FBB\u8FBC\u8FBF\u8FC0\u8FC3\u8FC6"],
      ["de80", "\u8FC9", 4, "\u8FCF\u8FD2\u8FD6\u8FD7\u8FDA\u8FE0\u8FE1\u8FE3\u8FE7\u8FEC\u8FEF\u8FF1\u8FF2\u8FF4\u8FF5\u8FF6\u8FFA\u8FFB\u8FFC\u8FFE\u8FFF\u9007\u9008\u900C\u900E\u9013\u9015\u9018\u8556\u853B\u84FF\u84FC\u8559\u8548\u8568\u8564\u855E\u857A\u77A2\u8543\u8572\u857B\u85A4\u85A8\u8587\u858F\u8579\u85AE\u859C\u8585\u85B9\u85B7\u85B0\u85D3\u85C1\u85DC\u85FF\u8627\u8605\u8629\u8616\u863C\u5EFE\u5F08\u593C\u5941\u8037\u5955\u595A\u5958\u530F\u5C22\u5C25\u5C2C\u5C34\u624C\u626A\u629F\u62BB\u62CA\u62DA\u62D7\u62EE\u6322\u62F6\u6339\u634B\u6343\u63AD\u63F6\u6371\u637A\u638E\u63B4\u636D\u63AC\u638A\u6369\u63AE\u63BC\u63F2\u63F8\u63E0\u63FF\u63C4\u63DE\u63CE\u6452\u63C6\u63BE\u6445\u6441\u640B\u641B\u6420\u640C\u6426\u6421\u645E\u6484\u646D\u6496"],
      ["df40", "\u9019\u901C\u9023\u9024\u9025\u9027", 5, "\u9030", 4, "\u9037\u9039\u903A\u903D\u903F\u9040\u9043\u9045\u9046\u9048", 4, "\u904E\u9054\u9055\u9056\u9059\u905A\u905C", 5, "\u9064\u9066\u9067\u9069\u906A\u906B\u906C\u906F", 4, "\u9076", 6, "\u907E\u9081"],
      ["df80", "\u9084\u9085\u9086\u9087\u9089\u908A\u908C", 4, "\u9092\u9094\u9096\u9098\u909A\u909C\u909E\u909F\u90A0\u90A4\u90A5\u90A7\u90A8\u90A9\u90AB\u90AD\u90B2\u90B7\u90BC\u90BD\u90BF\u90C0\u647A\u64B7\u64B8\u6499\u64BA\u64C0\u64D0\u64D7\u64E4\u64E2\u6509\u6525\u652E\u5F0B\u5FD2\u7519\u5F11\u535F\u53F1\u53FD\u53E9\u53E8\u53FB\u5412\u5416\u5406\u544B\u5452\u5453\u5454\u5456\u5443\u5421\u5457\u5459\u5423\u5432\u5482\u5494\u5477\u5471\u5464\u549A\u549B\u5484\u5476\u5466\u549D\u54D0\u54AD\u54C2\u54B4\u54D2\u54A7\u54A6\u54D3\u54D4\u5472\u54A3\u54D5\u54BB\u54BF\u54CC\u54D9\u54DA\u54DC\u54A9\u54AA\u54A4\u54DD\u54CF\u54DE\u551B\u54E7\u5520\u54FD\u5514\u54F3\u5522\u5523\u550F\u5511\u5527\u552A\u5567\u558F\u55B5\u5549\u556D\u5541\u5555\u553F\u5550\u553C"],
      ["e040", "\u90C2\u90C3\u90C6\u90C8\u90C9\u90CB\u90CC\u90CD\u90D2\u90D4\u90D5\u90D6\u90D8\u90D9\u90DA\u90DE\u90DF\u90E0\u90E3\u90E4\u90E5\u90E9\u90EA\u90EC\u90EE\u90F0\u90F1\u90F2\u90F3\u90F5\u90F6\u90F7\u90F9\u90FA\u90FB\u90FC\u90FF\u9100\u9101\u9103\u9105", 19, "\u911A\u911B\u911C"],
      ["e080", "\u911D\u911F\u9120\u9121\u9124", 10, "\u9130\u9132", 6, "\u913A", 8, "\u9144\u5537\u5556\u5575\u5576\u5577\u5533\u5530\u555C\u558B\u55D2\u5583\u55B1\u55B9\u5588\u5581\u559F\u557E\u55D6\u5591\u557B\u55DF\u55BD\u55BE\u5594\u5599\u55EA\u55F7\u55C9\u561F\u55D1\u55EB\u55EC\u55D4\u55E6\u55DD\u55C4\u55EF\u55E5\u55F2\u55F3\u55CC\u55CD\u55E8\u55F5\u55E4\u8F94\u561E\u5608\u560C\u5601\u5624\u5623\u55FE\u5600\u5627\u562D\u5658\u5639\u5657\u562C\u564D\u5662\u5659\u565C\u564C\u5654\u5686\u5664\u5671\u566B\u567B\u567C\u5685\u5693\u56AF\u56D4\u56D7\u56DD\u56E1\u56F5\u56EB\u56F9\u56FF\u5704\u570A\u5709\u571C\u5E0F\u5E19\u5E14\u5E11\u5E31\u5E3B\u5E3C"],
      ["e140", "\u9145\u9147\u9148\u9151\u9153\u9154\u9155\u9156\u9158\u9159\u915B\u915C\u915F\u9160\u9166\u9167\u9168\u916B\u916D\u9173\u917A\u917B\u917C\u9180", 4, "\u9186\u9188\u918A\u918E\u918F\u9193", 6, "\u919C", 5, "\u91A4", 5, "\u91AB\u91AC\u91B0\u91B1\u91B2\u91B3\u91B6\u91B7\u91B8\u91B9\u91BB"],
      ["e180", "\u91BC", 10, "\u91C8\u91CB\u91D0\u91D2", 9, "\u91DD", 8, "\u5E37\u5E44\u5E54\u5E5B\u5E5E\u5E61\u5C8C\u5C7A\u5C8D\u5C90\u5C96\u5C88\u5C98\u5C99\u5C91\u5C9A\u5C9C\u5CB5\u5CA2\u5CBD\u5CAC\u5CAB\u5CB1\u5CA3\u5CC1\u5CB7\u5CC4\u5CD2\u5CE4\u5CCB\u5CE5\u5D02\u5D03\u5D27\u5D26\u5D2E\u5D24\u5D1E\u5D06\u5D1B\u5D58\u5D3E\u5D34\u5D3D\u5D6C\u5D5B\u5D6F\u5D5D\u5D6B\u5D4B\u5D4A\u5D69\u5D74\u5D82\u5D99\u5D9D\u8C73\u5DB7\u5DC5\u5F73\u5F77\u5F82\u5F87\u5F89\u5F8C\u5F95\u5F99\u5F9C\u5FA8\u5FAD\u5FB5\u5FBC\u8862\u5F61\u72AD\u72B0\u72B4\u72B7\u72B8\u72C3\u72C1\u72CE\u72CD\u72D2\u72E8\u72EF\u72E9\u72F2\u72F4\u72F7\u7301\u72F3\u7303\u72FA"],
      ["e240", "\u91E6", 62],
      ["e280", "\u9225", 32, "\u72FB\u7317\u7313\u7321\u730A\u731E\u731D\u7315\u7322\u7339\u7325\u732C\u7338\u7331\u7350\u734D\u7357\u7360\u736C\u736F\u737E\u821B\u5925\u98E7\u5924\u5902\u9963\u9967", 5, "\u9974\u9977\u997D\u9980\u9984\u9987\u998A\u998D\u9990\u9991\u9993\u9994\u9995\u5E80\u5E91\u5E8B\u5E96\u5EA5\u5EA0\u5EB9\u5EB5\u5EBE\u5EB3\u8D53\u5ED2\u5ED1\u5EDB\u5EE8\u5EEA\u81BA\u5FC4\u5FC9\u5FD6\u5FCF\u6003\u5FEE\u6004\u5FE1\u5FE4\u5FFE\u6005\u6006\u5FEA\u5FED\u5FF8\u6019\u6035\u6026\u601B\u600F\u600D\u6029\u602B\u600A\u603F\u6021\u6078\u6079\u607B\u607A\u6042"],
      ["e340", "\u9246", 45, "\u9275", 16],
      ["e380", "\u9286", 7, "\u928F", 24, "\u606A\u607D\u6096\u609A\u60AD\u609D\u6083\u6092\u608C\u609B\u60EC\u60BB\u60B1\u60DD\u60D8\u60C6\u60DA\u60B4\u6120\u6126\u6115\u6123\u60F4\u6100\u610E\u612B\u614A\u6175\u61AC\u6194\u61A7\u61B7\u61D4\u61F5\u5FDD\u96B3\u95E9\u95EB\u95F1\u95F3\u95F5\u95F6\u95FC\u95FE\u9603\u9604\u9606\u9608\u960A\u960B\u960C\u960D\u960F\u9612\u9615\u9616\u9617\u9619\u961A\u4E2C\u723F\u6215\u6C35\u6C54\u6C5C\u6C4A\u6CA3\u6C85\u6C90\u6C94\u6C8C\u6C68\u6C69\u6C74\u6C76\u6C86\u6CA9\u6CD0\u6CD4\u6CAD\u6CF7\u6CF8\u6CF1\u6CD7\u6CB2\u6CE0\u6CD6\u6CFA\u6CEB\u6CEE\u6CB1\u6CD3\u6CEF\u6CFE"],
      ["e440", "\u92A8", 5, "\u92AF", 24, "\u92C9", 31],
      ["e480", "\u92E9", 32, "\u6D39\u6D27\u6D0C\u6D43\u6D48\u6D07\u6D04\u6D19\u6D0E\u6D2B\u6D4D\u6D2E\u6D35\u6D1A\u6D4F\u6D52\u6D54\u6D33\u6D91\u6D6F\u6D9E\u6DA0\u6D5E\u6D93\u6D94\u6D5C\u6D60\u6D7C\u6D63\u6E1A\u6DC7\u6DC5\u6DDE\u6E0E\u6DBF\u6DE0\u6E11\u6DE6\u6DDD\u6DD9\u6E16\u6DAB\u6E0C\u6DAE\u6E2B\u6E6E\u6E4E\u6E6B\u6EB2\u6E5F\u6E86\u6E53\u6E54\u6E32\u6E25\u6E44\u6EDF\u6EB1\u6E98\u6EE0\u6F2D\u6EE2\u6EA5\u6EA7\u6EBD\u6EBB\u6EB7\u6ED7\u6EB4\u6ECF\u6E8F\u6EC2\u6E9F\u6F62\u6F46\u6F47\u6F24\u6F15\u6EF9\u6F2F\u6F36\u6F4B\u6F74\u6F2A\u6F09\u6F29\u6F89\u6F8D\u6F8C\u6F78\u6F72\u6F7C\u6F7A\u6FD1"],
      ["e540", "\u930A", 51, "\u933F", 10],
      ["e580", "\u934A", 31, "\u936B\u6FC9\u6FA7\u6FB9\u6FB6\u6FC2\u6FE1\u6FEE\u6FDE\u6FE0\u6FEF\u701A\u7023\u701B\u7039\u7035\u704F\u705E\u5B80\u5B84\u5B95\u5B93\u5BA5\u5BB8\u752F\u9A9E\u6434\u5BE4\u5BEE\u8930\u5BF0\u8E47\u8B07\u8FB6\u8FD3\u8FD5\u8FE5\u8FEE\u8FE4\u8FE9\u8FE6\u8FF3\u8FE8\u9005\u9004\u900B\u9026\u9011\u900D\u9016\u9021\u9035\u9036\u902D\u902F\u9044\u9051\u9052\u9050\u9068\u9058\u9062\u905B\u66B9\u9074\u907D\u9082\u9088\u9083\u908B\u5F50\u5F57\u5F56\u5F58\u5C3B\u54AB\u5C50\u5C59\u5B71\u5C63\u5C66\u7FBC\u5F2A\u5F29\u5F2D\u8274\u5F3C\u9B3B\u5C6E\u5981\u5983\u598D\u59A9\u59AA\u59A3"],
      ["e640", "\u936C", 34, "\u9390", 27],
      ["e680", "\u93AC", 29, "\u93CB\u93CC\u93CD\u5997\u59CA\u59AB\u599E\u59A4\u59D2\u59B2\u59AF\u59D7\u59BE\u5A05\u5A06\u59DD\u5A08\u59E3\u59D8\u59F9\u5A0C\u5A09\u5A32\u5A34\u5A11\u5A23\u5A13\u5A40\u5A67\u5A4A\u5A55\u5A3C\u5A62\u5A75\u80EC\u5AAA\u5A9B\u5A77\u5A7A\u5ABE\u5AEB\u5AB2\u5AD2\u5AD4\u5AB8\u5AE0\u5AE3\u5AF1\u5AD6\u5AE6\u5AD8\u5ADC\u5B09\u5B17\u5B16\u5B32\u5B37\u5B40\u5C15\u5C1C\u5B5A\u5B65\u5B73\u5B51\u5B53\u5B62\u9A75\u9A77\u9A78\u9A7A\u9A7F\u9A7D\u9A80\u9A81\u9A85\u9A88\u9A8A\u9A90\u9A92\u9A93\u9A96\u9A98\u9A9B\u9A9C\u9A9D\u9A9F\u9AA0\u9AA2\u9AA3\u9AA5\u9AA7\u7E9F\u7EA1\u7EA3\u7EA5\u7EA8\u7EA9"],
      ["e740", "\u93CE", 7, "\u93D7", 54],
      ["e780", "\u940E", 32, "\u7EAD\u7EB0\u7EBE\u7EC0\u7EC1\u7EC2\u7EC9\u7ECB\u7ECC\u7ED0\u7ED4\u7ED7\u7EDB\u7EE0\u7EE1\u7EE8\u7EEB\u7EEE\u7EEF\u7EF1\u7EF2\u7F0D\u7EF6\u7EFA\u7EFB\u7EFE\u7F01\u7F02\u7F03\u7F07\u7F08\u7F0B\u7F0C\u7F0F\u7F11\u7F12\u7F17\u7F19\u7F1C\u7F1B\u7F1F\u7F21", 6, "\u7F2A\u7F2B\u7F2C\u7F2D\u7F2F", 4, "\u7F35\u5E7A\u757F\u5DDB\u753E\u9095\u738E\u7391\u73AE\u73A2\u739F\u73CF\u73C2\u73D1\u73B7\u73B3\u73C0\u73C9\u73C8\u73E5\u73D9\u987C\u740A\u73E9\u73E7\u73DE\u73BA\u73F2\u740F\u742A\u745B\u7426\u7425\u7428\u7430\u742E\u742C"],
      ["e840", "\u942F", 14, "\u943F", 43, "\u946C\u946D\u946E\u946F"],
      ["e880", "\u9470", 20, "\u9491\u9496\u9498\u94C7\u94CF\u94D3\u94D4\u94DA\u94E6\u94FB\u951C\u9520\u741B\u741A\u7441\u745C\u7457\u7455\u7459\u7477\u746D\u747E\u749C\u748E\u7480\u7481\u7487\u748B\u749E\u74A8\u74A9\u7490\u74A7\u74D2\u74BA\u97EA\u97EB\u97EC\u674C\u6753\u675E\u6748\u6769\u67A5\u6787\u676A\u6773\u6798\u67A7\u6775\u67A8\u679E\u67AD\u678B\u6777\u677C\u67F0\u6809\u67D8\u680A\u67E9\u67B0\u680C\u67D9\u67B5\u67DA\u67B3\u67DD\u6800\u67C3\u67B8\u67E2\u680E\u67C1\u67FD\u6832\u6833\u6860\u6861\u684E\u6862\u6844\u6864\u6883\u681D\u6855\u6866\u6841\u6867\u6840\u683E\u684A\u6849\u6829\u68B5\u688F\u6874\u6877\u6893\u686B\u68C2\u696E\u68FC\u691F\u6920\u68F9"],
      ["e940", "\u9527\u9533\u953D\u9543\u9548\u954B\u9555\u955A\u9560\u956E\u9574\u9575\u9577", 7, "\u9580", 42],
      ["e980", "\u95AB", 32, "\u6924\u68F0\u690B\u6901\u6957\u68E3\u6910\u6971\u6939\u6960\u6942\u695D\u6984\u696B\u6980\u6998\u6978\u6934\u69CC\u6987\u6988\u69CE\u6989\u6966\u6963\u6979\u699B\u69A7\u69BB\u69AB\u69AD\u69D4\u69B1\u69C1\u69CA\u69DF\u6995\u69E0\u698D\u69FF\u6A2F\u69ED\u6A17\u6A18\u6A65\u69F2\u6A44\u6A3E\u6AA0\u6A50\u6A5B\u6A35\u6A8E\u6A79\u6A3D\u6A28\u6A58\u6A7C\u6A91\u6A90\u6AA9\u6A97\u6AAB\u7337\u7352\u6B81\u6B82\u6B87\u6B84\u6B92\u6B93\u6B8D\u6B9A\u6B9B\u6BA1\u6BAA\u8F6B\u8F6D\u8F71\u8F72\u8F73\u8F75\u8F76\u8F78\u8F77\u8F79\u8F7A\u8F7C\u8F7E\u8F81\u8F82\u8F84\u8F87\u8F8B"],
      ["ea40", "\u95CC", 27, "\u95EC\u95FF\u9607\u9613\u9618\u961B\u961E\u9620\u9623", 6, "\u962B\u962C\u962D\u962F\u9630\u9637\u9638\u9639\u963A\u963E\u9641\u9643\u964A\u964E\u964F\u9651\u9652\u9653\u9656\u9657"],
      ["ea80", "\u9658\u9659\u965A\u965C\u965D\u965E\u9660\u9663\u9665\u9666\u966B\u966D", 4, "\u9673\u9678", 12, "\u9687\u9689\u968A\u8F8D\u8F8E\u8F8F\u8F98\u8F9A\u8ECE\u620B\u6217\u621B\u621F\u6222\u6221\u6225\u6224\u622C\u81E7\u74EF\u74F4\u74FF\u750F\u7511\u7513\u6534\u65EE\u65EF\u65F0\u660A\u6619\u6772\u6603\u6615\u6600\u7085\u66F7\u661D\u6634\u6631\u6636\u6635\u8006\u665F\u6654\u6641\u664F\u6656\u6661\u6657\u6677\u6684\u668C\u66A7\u669D\u66BE\u66DB\u66DC\u66E6\u66E9\u8D32\u8D33\u8D36\u8D3B\u8D3D\u8D40\u8D45\u8D46\u8D48\u8D49\u8D47\u8D4D\u8D55\u8D59\u89C7\u89CA\u89CB\u89CC\u89CE\u89CF\u89D0\u89D1\u726E\u729F\u725D\u7266\u726F\u727E\u727F\u7284\u728B\u728D\u728F\u7292\u6308\u6332\u63B0"],
      ["eb40", "\u968C\u968E\u9691\u9692\u9693\u9695\u9696\u969A\u969B\u969D", 9, "\u96A8", 7, "\u96B1\u96B2\u96B4\u96B5\u96B7\u96B8\u96BA\u96BB\u96BF\u96C2\u96C3\u96C8\u96CA\u96CB\u96D0\u96D1\u96D3\u96D4\u96D6", 9, "\u96E1", 6, "\u96EB"],
      ["eb80", "\u96EC\u96ED\u96EE\u96F0\u96F1\u96F2\u96F4\u96F5\u96F8\u96FA\u96FB\u96FC\u96FD\u96FF\u9702\u9703\u9705\u970A\u970B\u970C\u9710\u9711\u9712\u9714\u9715\u9717", 4, "\u971D\u971F\u9720\u643F\u64D8\u8004\u6BEA\u6BF3\u6BFD\u6BF5\u6BF9\u6C05\u6C07\u6C06\u6C0D\u6C15\u6C18\u6C19\u6C1A\u6C21\u6C29\u6C24\u6C2A\u6C32\u6535\u6555\u656B\u724D\u7252\u7256\u7230\u8662\u5216\u809F\u809C\u8093\u80BC\u670A\u80BD\u80B1\u80AB\u80AD\u80B4\u80B7\u80E7\u80E8\u80E9\u80EA\u80DB\u80C2\u80C4\u80D9\u80CD\u80D7\u6710\u80DD\u80EB\u80F1\u80F4\u80ED\u810D\u810E\u80F2\u80FC\u6715\u8112\u8C5A\u8136\u811E\u812C\u8118\u8132\u8148\u814C\u8153\u8174\u8159\u815A\u8171\u8160\u8169\u817C\u817D\u816D\u8167\u584D\u5AB5\u8188\u8182\u8191\u6ED5\u81A3\u81AA\u81CC\u6726\u81CA\u81BB"],
      ["ec40", "\u9721", 8, "\u972B\u972C\u972E\u972F\u9731\u9733", 4, "\u973A\u973B\u973C\u973D\u973F", 18, "\u9754\u9755\u9757\u9758\u975A\u975C\u975D\u975F\u9763\u9764\u9766\u9767\u9768\u976A", 7],
      ["ec80", "\u9772\u9775\u9777", 4, "\u977D", 7, "\u9786", 4, "\u978C\u978E\u978F\u9790\u9793\u9795\u9796\u9797\u9799", 4, "\u81C1\u81A6\u6B24\u6B37\u6B39\u6B43\u6B46\u6B59\u98D1\u98D2\u98D3\u98D5\u98D9\u98DA\u6BB3\u5F40\u6BC2\u89F3\u6590\u9F51\u6593\u65BC\u65C6\u65C4\u65C3\u65CC\u65CE\u65D2\u65D6\u7080\u709C\u7096\u709D\u70BB\u70C0\u70B7\u70AB\u70B1\u70E8\u70CA\u7110\u7113\u7116\u712F\u7131\u7173\u715C\u7168\u7145\u7172\u714A\u7178\u717A\u7198\u71B3\u71B5\u71A8\u71A0\u71E0\u71D4\u71E7\u71F9\u721D\u7228\u706C\u7118\u7166\u71B9\u623E\u623D\u6243\u6248\u6249\u793B\u7940\u7946\u7949\u795B\u795C\u7953\u795A\u7962\u7957\u7960\u796F\u7967\u797A\u7985\u798A\u799A\u79A7\u79B3\u5FD1\u5FD0"],
      ["ed40", "\u979E\u979F\u97A1\u97A2\u97A4", 6, "\u97AC\u97AE\u97B0\u97B1\u97B3\u97B5", 46],
      ["ed80", "\u97E4\u97E5\u97E8\u97EE", 4, "\u97F4\u97F7", 23, "\u603C\u605D\u605A\u6067\u6041\u6059\u6063\u60AB\u6106\u610D\u615D\u61A9\u619D\u61CB\u61D1\u6206\u8080\u807F\u6C93\u6CF6\u6DFC\u77F6\u77F8\u7800\u7809\u7817\u7818\u7811\u65AB\u782D\u781C\u781D\u7839\u783A\u783B\u781F\u783C\u7825\u782C\u7823\u7829\u784E\u786D\u7856\u7857\u7826\u7850\u7847\u784C\u786A\u789B\u7893\u789A\u7887\u789C\u78A1\u78A3\u78B2\u78B9\u78A5\u78D4\u78D9\u78C9\u78EC\u78F2\u7905\u78F4\u7913\u7924\u791E\u7934\u9F9B\u9EF9\u9EFB\u9EFC\u76F1\u7704\u770D\u76F9\u7707\u7708\u771A\u7722\u7719\u772D\u7726\u7735\u7738\u7750\u7751\u7747\u7743\u775A\u7768"],
      ["ee40", "\u980F", 62],
      ["ee80", "\u984E", 32, "\u7762\u7765\u777F\u778D\u777D\u7780\u778C\u7791\u779F\u77A0\u77B0\u77B5\u77BD\u753A\u7540\u754E\u754B\u7548\u755B\u7572\u7579\u7583\u7F58\u7F61\u7F5F\u8A48\u7F68\u7F74\u7F71\u7F79\u7F81\u7F7E\u76CD\u76E5\u8832\u9485\u9486\u9487\u948B\u948A\u948C\u948D\u948F\u9490\u9494\u9497\u9495\u949A\u949B\u949C\u94A3\u94A4\u94AB\u94AA\u94AD\u94AC\u94AF\u94B0\u94B2\u94B4\u94B6", 4, "\u94BC\u94BD\u94BF\u94C4\u94C8", 6, "\u94D0\u94D1\u94D2\u94D5\u94D6\u94D7\u94D9\u94D8\u94DB\u94DE\u94DF\u94E0\u94E2\u94E4\u94E5\u94E7\u94E8\u94EA"],
      ["ef40", "\u986F", 5, "\u988B\u988E\u9892\u9895\u9899\u98A3\u98A8", 37, "\u98CF\u98D0\u98D4\u98D6\u98D7\u98DB\u98DC\u98DD\u98E0", 4],
      ["ef80", "\u98E5\u98E6\u98E9", 30, "\u94E9\u94EB\u94EE\u94EF\u94F3\u94F4\u94F5\u94F7\u94F9\u94FC\u94FD\u94FF\u9503\u9502\u9506\u9507\u9509\u950A\u950D\u950E\u950F\u9512", 4, "\u9518\u951B\u951D\u951E\u951F\u9522\u952A\u952B\u9529\u952C\u9531\u9532\u9534\u9536\u9537\u9538\u953C\u953E\u953F\u9542\u9535\u9544\u9545\u9546\u9549\u954C\u954E\u954F\u9552\u9553\u9554\u9556\u9557\u9558\u9559\u955B\u955E\u955F\u955D\u9561\u9562\u9564", 8, "\u956F\u9571\u9572\u9573\u953A\u77E7\u77EC\u96C9\u79D5\u79ED\u79E3\u79EB\u7A06\u5D47\u7A03\u7A02\u7A1E\u7A14"],
      ["f040", "\u9908", 4, "\u990E\u990F\u9911", 28, "\u992F", 26],
      ["f080", "\u994A", 9, "\u9956", 12, "\u9964\u9966\u9973\u9978\u9979\u997B\u997E\u9982\u9983\u9989\u7A39\u7A37\u7A51\u9ECF\u99A5\u7A70\u7688\u768E\u7693\u7699\u76A4\u74DE\u74E0\u752C\u9E20\u9E22\u9E28", 4, "\u9E32\u9E31\u9E36\u9E38\u9E37\u9E39\u9E3A\u9E3E\u9E41\u9E42\u9E44\u9E46\u9E47\u9E48\u9E49\u9E4B\u9E4C\u9E4E\u9E51\u9E55\u9E57\u9E5A\u9E5B\u9E5C\u9E5E\u9E63\u9E66", 6, "\u9E71\u9E6D\u9E73\u7592\u7594\u7596\u75A0\u759D\u75AC\u75A3\u75B3\u75B4\u75B8\u75C4\u75B1\u75B0\u75C3\u75C2\u75D6\u75CD\u75E3\u75E8\u75E6\u75E4\u75EB\u75E7\u7603\u75F1\u75FC\u75FF\u7610\u7600\u7605\u760C\u7617\u760A\u7625\u7618\u7615\u7619"],
      ["f140", "\u998C\u998E\u999A", 10, "\u99A6\u99A7\u99A9", 47],
      ["f180", "\u99D9", 32, "\u761B\u763C\u7622\u7620\u7640\u762D\u7630\u763F\u7635\u7643\u763E\u7633\u764D\u765E\u7654\u765C\u7656\u766B\u766F\u7FCA\u7AE6\u7A78\u7A79\u7A80\u7A86\u7A88\u7A95\u7AA6\u7AA0\u7AAC\u7AA8\u7AAD\u7AB3\u8864\u8869\u8872\u887D\u887F\u8882\u88A2\u88C6\u88B7\u88BC\u88C9\u88E2\u88CE\u88E3\u88E5\u88F1\u891A\u88FC\u88E8\u88FE\u88F0\u8921\u8919\u8913\u891B\u890A\u8934\u892B\u8936\u8941\u8966\u897B\u758B\u80E5\u76B2\u76B4\u77DC\u8012\u8014\u8016\u801C\u8020\u8022\u8025\u8026\u8027\u8029\u8028\u8031\u800B\u8035\u8043\u8046\u804D\u8052\u8069\u8071\u8983\u9878\u9880\u9883"],
      ["f240", "\u99FA", 62],
      ["f280", "\u9A39", 32, "\u9889\u988C\u988D\u988F\u9894\u989A\u989B\u989E\u989F\u98A1\u98A2\u98A5\u98A6\u864D\u8654\u866C\u866E\u867F\u867A\u867C\u867B\u86A8\u868D\u868B\u86AC\u869D\u86A7\u86A3\u86AA\u8693\u86A9\u86B6\u86C4\u86B5\u86CE\u86B0\u86BA\u86B1\u86AF\u86C9\u86CF\u86B4\u86E9\u86F1\u86F2\u86ED\u86F3\u86D0\u8713\u86DE\u86F4\u86DF\u86D8\u86D1\u8703\u8707\u86F8\u8708\u870A\u870D\u8709\u8723\u873B\u871E\u8725\u872E\u871A\u873E\u8748\u8734\u8731\u8729\u8737\u873F\u8782\u8722\u877D\u877E\u877B\u8760\u8770\u874C\u876E\u878B\u8753\u8763\u877C\u8764\u8759\u8765\u8793\u87AF\u87A8\u87D2"],
      ["f340", "\u9A5A", 17, "\u9A72\u9A83\u9A89\u9A8D\u9A8E\u9A94\u9A95\u9A99\u9AA6\u9AA9", 6, "\u9AB2\u9AB3\u9AB4\u9AB5\u9AB9\u9ABB\u9ABD\u9ABE\u9ABF\u9AC3\u9AC4\u9AC6", 4, "\u9ACD\u9ACE\u9ACF\u9AD0\u9AD2\u9AD4\u9AD5\u9AD6\u9AD7\u9AD9\u9ADA\u9ADB\u9ADC"],
      ["f380", "\u9ADD\u9ADE\u9AE0\u9AE2\u9AE3\u9AE4\u9AE5\u9AE7\u9AE8\u9AE9\u9AEA\u9AEC\u9AEE\u9AF0", 8, "\u9AFA\u9AFC", 6, "\u9B04\u9B05\u9B06\u87C6\u8788\u8785\u87AD\u8797\u8783\u87AB\u87E5\u87AC\u87B5\u87B3\u87CB\u87D3\u87BD\u87D1\u87C0\u87CA\u87DB\u87EA\u87E0\u87EE\u8816\u8813\u87FE\u880A\u881B\u8821\u8839\u883C\u7F36\u7F42\u7F44\u7F45\u8210\u7AFA\u7AFD\u7B08\u7B03\u7B04\u7B15\u7B0A\u7B2B\u7B0F\u7B47\u7B38\u7B2A\u7B19\u7B2E\u7B31\u7B20\u7B25\u7B24\u7B33\u7B3E\u7B1E\u7B58\u7B5A\u7B45\u7B75\u7B4C\u7B5D\u7B60\u7B6E\u7B7B\u7B62\u7B72\u7B71\u7B90\u7BA6\u7BA7\u7BB8\u7BAC\u7B9D\u7BA8\u7B85\u7BAA\u7B9C\u7BA2\u7BAB\u7BB4\u7BD1\u7BC1\u7BCC\u7BDD\u7BDA\u7BE5\u7BE6\u7BEA\u7C0C\u7BFE\u7BFC\u7C0F\u7C16\u7C0B"],
      ["f440", "\u9B07\u9B09", 5, "\u9B10\u9B11\u9B12\u9B14", 10, "\u9B20\u9B21\u9B22\u9B24", 10, "\u9B30\u9B31\u9B33", 7, "\u9B3D\u9B3E\u9B3F\u9B40\u9B46\u9B4A\u9B4B\u9B4C\u9B4E\u9B50\u9B52\u9B53\u9B55", 5],
      ["f480", "\u9B5B", 32, "\u7C1F\u7C2A\u7C26\u7C38\u7C41\u7C40\u81FE\u8201\u8202\u8204\u81EC\u8844\u8221\u8222\u8223\u822D\u822F\u8228\u822B\u8238\u823B\u8233\u8234\u823E\u8244\u8249\u824B\u824F\u825A\u825F\u8268\u887E\u8885\u8888\u88D8\u88DF\u895E\u7F9D\u7F9F\u7FA7\u7FAF\u7FB0\u7FB2\u7C7C\u6549\u7C91\u7C9D\u7C9C\u7C9E\u7CA2\u7CB2\u7CBC\u7CBD\u7CC1\u7CC7\u7CCC\u7CCD\u7CC8\u7CC5\u7CD7\u7CE8\u826E\u66A8\u7FBF\u7FCE\u7FD5\u7FE5\u7FE1\u7FE6\u7FE9\u7FEE\u7FF3\u7CF8\u7D77\u7DA6\u7DAE\u7E47\u7E9B\u9EB8\u9EB4\u8D73\u8D84\u8D94\u8D91\u8DB1\u8D67\u8D6D\u8C47\u8C49\u914A\u9150\u914E\u914F\u9164"],
      ["f540", "\u9B7C", 62],
      ["f580", "\u9BBB", 32, "\u9162\u9161\u9170\u9169\u916F\u917D\u917E\u9172\u9174\u9179\u918C\u9185\u9190\u918D\u9191\u91A2\u91A3\u91AA\u91AD\u91AE\u91AF\u91B5\u91B4\u91BA\u8C55\u9E7E\u8DB8\u8DEB\u8E05\u8E59\u8E69\u8DB5\u8DBF\u8DBC\u8DBA\u8DC4\u8DD6\u8DD7\u8DDA\u8DDE\u8DCE\u8DCF\u8DDB\u8DC6\u8DEC\u8DF7\u8DF8\u8DE3\u8DF9\u8DFB\u8DE4\u8E09\u8DFD\u8E14\u8E1D\u8E1F\u8E2C\u8E2E\u8E23\u8E2F\u8E3A\u8E40\u8E39\u8E35\u8E3D\u8E31\u8E49\u8E41\u8E42\u8E51\u8E52\u8E4A\u8E70\u8E76\u8E7C\u8E6F\u8E74\u8E85\u8E8F\u8E94\u8E90\u8E9C\u8E9E\u8C78\u8C82\u8C8A\u8C85\u8C98\u8C94\u659B\u89D6\u89DE\u89DA\u89DC"],
      ["f640", "\u9BDC", 62],
      ["f680", "\u9C1B", 32, "\u89E5\u89EB\u89EF\u8A3E\u8B26\u9753\u96E9\u96F3\u96EF\u9706\u9701\u9708\u970F\u970E\u972A\u972D\u9730\u973E\u9F80\u9F83\u9F85", 5, "\u9F8C\u9EFE\u9F0B\u9F0D\u96B9\u96BC\u96BD\u96CE\u96D2\u77BF\u96E0\u928E\u92AE\u92C8\u933E\u936A\u93CA\u938F\u943E\u946B\u9C7F\u9C82\u9C85\u9C86\u9C87\u9C88\u7A23\u9C8B\u9C8E\u9C90\u9C91\u9C92\u9C94\u9C95\u9C9A\u9C9B\u9C9E", 5, "\u9CA5", 4, "\u9CAB\u9CAD\u9CAE\u9CB0", 7, "\u9CBA\u9CBB\u9CBC\u9CBD\u9CC4\u9CC5\u9CC6\u9CC7\u9CCA\u9CCB"],
      ["f740", "\u9C3C", 62],
      ["f780", "\u9C7B\u9C7D\u9C7E\u9C80\u9C83\u9C84\u9C89\u9C8A\u9C8C\u9C8F\u9C93\u9C96\u9C97\u9C98\u9C99\u9C9D\u9CAA\u9CAC\u9CAF\u9CB9\u9CBE", 4, "\u9CC8\u9CC9\u9CD1\u9CD2\u9CDA\u9CDB\u9CE0\u9CE1\u9CCC", 4, "\u9CD3\u9CD4\u9CD5\u9CD7\u9CD8\u9CD9\u9CDC\u9CDD\u9CDF\u9CE2\u977C\u9785\u9791\u9792\u9794\u97AF\u97AB\u97A3\u97B2\u97B4\u9AB1\u9AB0\u9AB7\u9E58\u9AB6\u9ABA\u9ABC\u9AC1\u9AC0\u9AC5\u9AC2\u9ACB\u9ACC\u9AD1\u9B45\u9B43\u9B47\u9B49\u9B48\u9B4D\u9B51\u98E8\u990D\u992E\u9955\u9954\u9ADF\u9AE1\u9AE6\u9AEF\u9AEB\u9AFB\u9AED\u9AF9\u9B08\u9B0F\u9B13\u9B1F\u9B23\u9EBD\u9EBE\u7E3B\u9E82\u9E87\u9E88\u9E8B\u9E92\u93D6\u9E9D\u9E9F\u9EDB\u9EDC\u9EDD\u9EE0\u9EDF\u9EE2\u9EE9\u9EE7\u9EE5\u9EEA\u9EEF\u9F22\u9F2C\u9F2F\u9F39\u9F37\u9F3D\u9F3E\u9F44"],
      ["f840", "\u9CE3", 62],
      ["f880", "\u9D22", 32],
      ["f940", "\u9D43", 62],
      ["f980", "\u9D82", 32],
      ["fa40", "\u9DA3", 62],
      ["fa80", "\u9DE2", 32],
      ["fb40", "\u9E03", 27, "\u9E24\u9E27\u9E2E\u9E30\u9E34\u9E3B\u9E3C\u9E40\u9E4D\u9E50\u9E52\u9E53\u9E54\u9E56\u9E59\u9E5D\u9E5F\u9E60\u9E61\u9E62\u9E65\u9E6E\u9E6F\u9E72\u9E74", 9, "\u9E80"],
      ["fb80", "\u9E81\u9E83\u9E84\u9E85\u9E86\u9E89\u9E8A\u9E8C", 5, "\u9E94", 8, "\u9E9E\u9EA0", 5, "\u9EA7\u9EA8\u9EA9\u9EAA"],
      ["fc40", "\u9EAB", 8, "\u9EB5\u9EB6\u9EB7\u9EB9\u9EBA\u9EBC\u9EBF", 4, "\u9EC5\u9EC6\u9EC7\u9EC8\u9ECA\u9ECB\u9ECC\u9ED0\u9ED2\u9ED3\u9ED5\u9ED6\u9ED7\u9ED9\u9EDA\u9EDE\u9EE1\u9EE3\u9EE4\u9EE6\u9EE8\u9EEB\u9EEC\u9EED\u9EEE\u9EF0", 8, "\u9EFA\u9EFD\u9EFF", 6],
      ["fc80", "\u9F06", 4, "\u9F0C\u9F0F\u9F11\u9F12\u9F14\u9F15\u9F16\u9F18\u9F1A", 5, "\u9F21\u9F23", 8, "\u9F2D\u9F2E\u9F30\u9F31"],
      ["fd40", "\u9F32", 4, "\u9F38\u9F3A\u9F3C\u9F3F", 4, "\u9F45", 10, "\u9F52", 38],
      ["fd80", "\u9F79", 5, "\u9F81\u9F82\u9F8D", 11, "\u9F9C\u9F9D\u9F9E\u9FA1", 4, "\uF92C\uF979\uF995\uF9E7\uF9F1"],
      ["fe40", "\uFA0C\uFA0D\uFA0E\uFA0F\uFA11\uFA13\uFA14\uFA18\uFA1F\uFA20\uFA21\uFA23\uFA24\uFA27\uFA28\uFA29"]
    ];
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/tables/gbk-added.json
var require_gbk_added = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/tables/gbk-added.json"(exports2, module2) {
    module2.exports = [
      ["a140", "\uE4C6", 62],
      ["a180", "\uE505", 32],
      ["a240", "\uE526", 62],
      ["a280", "\uE565", 32],
      ["a2ab", "\uE766", 5],
      ["a2e3", "\u20AC\uE76D"],
      ["a2ef", "\uE76E\uE76F"],
      ["a2fd", "\uE770\uE771"],
      ["a340", "\uE586", 62],
      ["a380", "\uE5C5", 31, "\u3000"],
      ["a440", "\uE5E6", 62],
      ["a480", "\uE625", 32],
      ["a4f4", "\uE772", 10],
      ["a540", "\uE646", 62],
      ["a580", "\uE685", 32],
      ["a5f7", "\uE77D", 7],
      ["a640", "\uE6A6", 62],
      ["a680", "\uE6E5", 32],
      ["a6b9", "\uE785", 7],
      ["a6d9", "\uE78D", 6],
      ["a6ec", "\uE794\uE795"],
      ["a6f3", "\uE796"],
      ["a6f6", "\uE797", 8],
      ["a740", "\uE706", 62],
      ["a780", "\uE745", 32],
      ["a7c2", "\uE7A0", 14],
      ["a7f2", "\uE7AF", 12],
      ["a896", "\uE7BC", 10],
      ["a8bc", "\u1E3F"],
      ["a8bf", "\u01F9"],
      ["a8c1", "\uE7C9\uE7CA\uE7CB\uE7CC"],
      ["a8ea", "\uE7CD", 20],
      ["a958", "\uE7E2"],
      ["a95b", "\uE7E3"],
      ["a95d", "\uE7E4\uE7E5\uE7E6"],
      ["a989", "\u303E\u2FF0", 11],
      ["a997", "\uE7F4", 12],
      ["a9f0", "\uE801", 14],
      ["aaa1", "\uE000", 93],
      ["aba1", "\uE05E", 93],
      ["aca1", "\uE0BC", 93],
      ["ada1", "\uE11A", 93],
      ["aea1", "\uE178", 93],
      ["afa1", "\uE1D6", 93],
      ["d7fa", "\uE810", 4],
      ["f8a1", "\uE234", 93],
      ["f9a1", "\uE292", 93],
      ["faa1", "\uE2F0", 93],
      ["fba1", "\uE34E", 93],
      ["fca1", "\uE3AC", 93],
      ["fda1", "\uE40A", 93],
      ["fe50", "\u2E81\uE816\uE817\uE818\u2E84\u3473\u3447\u2E88\u2E8B\uE81E\u359E\u361A\u360E\u2E8C\u2E97\u396E\u3918\uE826\u39CF\u39DF\u3A73\u39D0\uE82B\uE82C\u3B4E\u3C6E\u3CE0\u2EA7\uE831\uE832\u2EAA\u4056\u415F\u2EAE\u4337\u2EB3\u2EB6\u2EB7\uE83B\u43B1\u43AC\u2EBB\u43DD\u44D6\u4661\u464C\uE843"],
      ["fe80", "\u4723\u4729\u477C\u478D\u2ECA\u4947\u497A\u497D\u4982\u4983\u4985\u4986\u499F\u499B\u49B7\u49B6\uE854\uE855\u4CA3\u4C9F\u4CA0\u4CA1\u4C77\u4CA2\u4D13", 6, "\u4DAE\uE864\uE468", 93],
      ["8135f437", "\uE7C7"]
    ];
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json
var require_gb18030_ranges = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json"(exports2, module2) {
    module2.exports = { uChars: [128, 165, 169, 178, 184, 216, 226, 235, 238, 244, 248, 251, 253, 258, 276, 284, 300, 325, 329, 334, 364, 463, 465, 467, 469, 471, 473, 475, 477, 506, 594, 610, 712, 716, 730, 930, 938, 962, 970, 1026, 1104, 1106, 8209, 8215, 8218, 8222, 8231, 8241, 8244, 8246, 8252, 8365, 8452, 8454, 8458, 8471, 8482, 8556, 8570, 8596, 8602, 8713, 8720, 8722, 8726, 8731, 8737, 8740, 8742, 8748, 8751, 8760, 8766, 8777, 8781, 8787, 8802, 8808, 8816, 8854, 8858, 8870, 8896, 8979, 9322, 9372, 9548, 9588, 9616, 9622, 9634, 9652, 9662, 9672, 9676, 9680, 9702, 9735, 9738, 9793, 9795, 11906, 11909, 11913, 11917, 11928, 11944, 11947, 11951, 11956, 11960, 11964, 11979, 12284, 12292, 12312, 12319, 12330, 12351, 12436, 12447, 12535, 12543, 12586, 12842, 12850, 12964, 13200, 13215, 13218, 13253, 13263, 13267, 13270, 13384, 13428, 13727, 13839, 13851, 14617, 14703, 14801, 14816, 14964, 15183, 15471, 15585, 16471, 16736, 17208, 17325, 17330, 17374, 17623, 17997, 18018, 18212, 18218, 18301, 18318, 18760, 18811, 18814, 18820, 18823, 18844, 18848, 18872, 19576, 19620, 19738, 19887, 40870, 59244, 59336, 59367, 59413, 59417, 59423, 59431, 59437, 59443, 59452, 59460, 59478, 59493, 63789, 63866, 63894, 63976, 63986, 64016, 64018, 64021, 64025, 64034, 64037, 64042, 65074, 65093, 65107, 65112, 65127, 65132, 65375, 65510, 65536], gbChars: [0, 36, 38, 45, 50, 81, 89, 95, 96, 100, 103, 104, 105, 109, 126, 133, 148, 172, 175, 179, 208, 306, 307, 308, 309, 310, 311, 312, 313, 341, 428, 443, 544, 545, 558, 741, 742, 749, 750, 805, 819, 820, 7922, 7924, 7925, 7927, 7934, 7943, 7944, 7945, 7950, 8062, 8148, 8149, 8152, 8164, 8174, 8236, 8240, 8262, 8264, 8374, 8380, 8381, 8384, 8388, 8390, 8392, 8393, 8394, 8396, 8401, 8406, 8416, 8419, 8424, 8437, 8439, 8445, 8482, 8485, 8496, 8521, 8603, 8936, 8946, 9046, 9050, 9063, 9066, 9076, 9092, 9100, 9108, 9111, 9113, 9131, 9162, 9164, 9218, 9219, 11329, 11331, 11334, 11336, 11346, 11361, 11363, 11366, 11370, 11372, 11375, 11389, 11682, 11686, 11687, 11692, 11694, 11714, 11716, 11723, 11725, 11730, 11736, 11982, 11989, 12102, 12336, 12348, 12350, 12384, 12393, 12395, 12397, 12510, 12553, 12851, 12962, 12973, 13738, 13823, 13919, 13933, 14080, 14298, 14585, 14698, 15583, 15847, 16318, 16434, 16438, 16481, 16729, 17102, 17122, 17315, 17320, 17402, 17418, 17859, 17909, 17911, 17915, 17916, 17936, 17939, 17961, 18664, 18703, 18814, 18962, 19043, 33469, 33470, 33471, 33484, 33485, 33490, 33497, 33501, 33505, 33513, 33520, 33536, 33550, 37845, 37921, 37948, 38029, 38038, 38064, 38065, 38066, 38069, 38075, 38076, 38078, 39108, 39109, 39113, 39114, 39115, 39116, 39265, 39394, 189e3] };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/tables/cp949.json
var require_cp949 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/tables/cp949.json"(exports2, module2) {
    module2.exports = [
      ["0", "\0", 127],
      ["8141", "\uAC02\uAC03\uAC05\uAC06\uAC0B", 4, "\uAC18\uAC1E\uAC1F\uAC21\uAC22\uAC23\uAC25", 6, "\uAC2E\uAC32\uAC33\uAC34"],
      ["8161", "\uAC35\uAC36\uAC37\uAC3A\uAC3B\uAC3D\uAC3E\uAC3F\uAC41", 9, "\uAC4C\uAC4E", 5, "\uAC55"],
      ["8181", "\uAC56\uAC57\uAC59\uAC5A\uAC5B\uAC5D", 18, "\uAC72\uAC73\uAC75\uAC76\uAC79\uAC7B", 4, "\uAC82\uAC87\uAC88\uAC8D\uAC8E\uAC8F\uAC91\uAC92\uAC93\uAC95", 6, "\uAC9E\uACA2", 5, "\uACAB\uACAD\uACAE\uACB1", 6, "\uACBA\uACBE\uACBF\uACC0\uACC2\uACC3\uACC5\uACC6\uACC7\uACC9\uACCA\uACCB\uACCD", 7, "\uACD6\uACD8", 7, "\uACE2\uACE3\uACE5\uACE6\uACE9\uACEB\uACED\uACEE\uACF2\uACF4\uACF7", 4, "\uACFE\uACFF\uAD01\uAD02\uAD03\uAD05\uAD07", 4, "\uAD0E\uAD10\uAD12\uAD13"],
      ["8241", "\uAD14\uAD15\uAD16\uAD17\uAD19\uAD1A\uAD1B\uAD1D\uAD1E\uAD1F\uAD21", 7, "\uAD2A\uAD2B\uAD2E", 5],
      ["8261", "\uAD36\uAD37\uAD39\uAD3A\uAD3B\uAD3D", 6, "\uAD46\uAD48\uAD4A", 5, "\uAD51\uAD52\uAD53\uAD55\uAD56\uAD57"],
      ["8281", "\uAD59", 7, "\uAD62\uAD64", 7, "\uAD6E\uAD6F\uAD71\uAD72\uAD77\uAD78\uAD79\uAD7A\uAD7E\uAD80\uAD83", 4, "\uAD8A\uAD8B\uAD8D\uAD8E\uAD8F\uAD91", 10, "\uAD9E", 5, "\uADA5", 17, "\uADB8", 7, "\uADC2\uADC3\uADC5\uADC6\uADC7\uADC9", 6, "\uADD2\uADD4", 7, "\uADDD\uADDE\uADDF\uADE1\uADE2\uADE3\uADE5", 18],
      ["8341", "\uADFA\uADFB\uADFD\uADFE\uAE02", 5, "\uAE0A\uAE0C\uAE0E", 5, "\uAE15", 7],
      ["8361", "\uAE1D", 18, "\uAE32\uAE33\uAE35\uAE36\uAE39\uAE3B\uAE3C"],
      ["8381", "\uAE3D\uAE3E\uAE3F\uAE42\uAE44\uAE47\uAE48\uAE49\uAE4B\uAE4F\uAE51\uAE52\uAE53\uAE55\uAE57", 4, "\uAE5E\uAE62\uAE63\uAE64\uAE66\uAE67\uAE6A\uAE6B\uAE6D\uAE6E\uAE6F\uAE71", 6, "\uAE7A\uAE7E", 5, "\uAE86", 5, "\uAE8D", 46, "\uAEBF\uAEC1\uAEC2\uAEC3\uAEC5", 6, "\uAECE\uAED2", 5, "\uAEDA\uAEDB\uAEDD", 8],
      ["8441", "\uAEE6\uAEE7\uAEE9\uAEEA\uAEEC\uAEEE", 5, "\uAEF5\uAEF6\uAEF7\uAEF9\uAEFA\uAEFB\uAEFD", 8],
      ["8461", "\uAF06\uAF09\uAF0A\uAF0B\uAF0C\uAF0E\uAF0F\uAF11", 18],
      ["8481", "\uAF24", 7, "\uAF2E\uAF2F\uAF31\uAF33\uAF35", 6, "\uAF3E\uAF40\uAF44\uAF45\uAF46\uAF47\uAF4A", 5, "\uAF51", 10, "\uAF5E", 5, "\uAF66", 18, "\uAF7A", 5, "\uAF81\uAF82\uAF83\uAF85\uAF86\uAF87\uAF89", 6, "\uAF92\uAF93\uAF94\uAF96", 5, "\uAF9D", 26, "\uAFBA\uAFBB\uAFBD\uAFBE"],
      ["8541", "\uAFBF\uAFC1", 5, "\uAFCA\uAFCC\uAFCF", 4, "\uAFD5", 6, "\uAFDD", 4],
      ["8561", "\uAFE2", 5, "\uAFEA", 5, "\uAFF2\uAFF3\uAFF5\uAFF6\uAFF7\uAFF9", 6, "\uB002\uB003"],
      ["8581", "\uB005", 6, "\uB00D\uB00E\uB00F\uB011\uB012\uB013\uB015", 6, "\uB01E", 9, "\uB029", 26, "\uB046\uB047\uB049\uB04B\uB04D\uB04F\uB050\uB051\uB052\uB056\uB058\uB05A\uB05B\uB05C\uB05E", 29, "\uB07E\uB07F\uB081\uB082\uB083\uB085", 6, "\uB08E\uB090\uB092", 5, "\uB09B\uB09D\uB09E\uB0A3\uB0A4"],
      ["8641", "\uB0A5\uB0A6\uB0A7\uB0AA\uB0B0\uB0B2\uB0B6\uB0B7\uB0B9\uB0BA\uB0BB\uB0BD", 6, "\uB0C6\uB0CA", 5, "\uB0D2"],
      ["8661", "\uB0D3\uB0D5\uB0D6\uB0D7\uB0D9", 6, "\uB0E1\uB0E2\uB0E3\uB0E4\uB0E6", 10],
      ["8681", "\uB0F1", 22, "\uB10A\uB10D\uB10E\uB10F\uB111\uB114\uB115\uB116\uB117\uB11A\uB11E", 4, "\uB126\uB127\uB129\uB12A\uB12B\uB12D", 6, "\uB136\uB13A", 5, "\uB142\uB143\uB145\uB146\uB147\uB149", 6, "\uB152\uB153\uB156\uB157\uB159\uB15A\uB15B\uB15D\uB15E\uB15F\uB161", 22, "\uB17A\uB17B\uB17D\uB17E\uB17F\uB181\uB183", 4, "\uB18A\uB18C\uB18E\uB18F\uB190\uB191\uB195\uB196\uB197\uB199\uB19A\uB19B\uB19D"],
      ["8741", "\uB19E", 9, "\uB1A9", 15],
      ["8761", "\uB1B9", 18, "\uB1CD\uB1CE\uB1CF\uB1D1\uB1D2\uB1D3\uB1D5"],
      ["8781", "\uB1D6", 5, "\uB1DE\uB1E0", 7, "\uB1EA\uB1EB\uB1ED\uB1EE\uB1EF\uB1F1", 7, "\uB1FA\uB1FC\uB1FE", 5, "\uB206\uB207\uB209\uB20A\uB20D", 6, "\uB216\uB218\uB21A", 5, "\uB221", 18, "\uB235", 6, "\uB23D", 26, "\uB259\uB25A\uB25B\uB25D\uB25E\uB25F\uB261", 6, "\uB26A", 4],
      ["8841", "\uB26F", 4, "\uB276", 5, "\uB27D", 6, "\uB286\uB287\uB288\uB28A", 4],
      ["8861", "\uB28F\uB292\uB293\uB295\uB296\uB297\uB29B", 4, "\uB2A2\uB2A4\uB2A7\uB2A8\uB2A9\uB2AB\uB2AD\uB2AE\uB2AF\uB2B1\uB2B2\uB2B3\uB2B5\uB2B6\uB2B7"],
      ["8881", "\uB2B8", 15, "\uB2CA\uB2CB\uB2CD\uB2CE\uB2CF\uB2D1\uB2D3", 4, "\uB2DA\uB2DC\uB2DE\uB2DF\uB2E0\uB2E1\uB2E3\uB2E7\uB2E9\uB2EA\uB2F0\uB2F1\uB2F2\uB2F6\uB2FC\uB2FD\uB2FE\uB302\uB303\uB305\uB306\uB307\uB309", 6, "\uB312\uB316", 5, "\uB31D", 54, "\uB357\uB359\uB35A\uB35D\uB360\uB361\uB362\uB363"],
      ["8941", "\uB366\uB368\uB36A\uB36C\uB36D\uB36F\uB372\uB373\uB375\uB376\uB377\uB379", 6, "\uB382\uB386", 5, "\uB38D"],
      ["8961", "\uB38E\uB38F\uB391\uB392\uB393\uB395", 10, "\uB3A2", 5, "\uB3A9\uB3AA\uB3AB\uB3AD"],
      ["8981", "\uB3AE", 21, "\uB3C6\uB3C7\uB3C9\uB3CA\uB3CD\uB3CF\uB3D1\uB3D2\uB3D3\uB3D6\uB3D8\uB3DA\uB3DC\uB3DE\uB3DF\uB3E1\uB3E2\uB3E3\uB3E5\uB3E6\uB3E7\uB3E9", 18, "\uB3FD", 18, "\uB411", 6, "\uB419\uB41A\uB41B\uB41D\uB41E\uB41F\uB421", 6, "\uB42A\uB42C", 7, "\uB435", 15],
      ["8a41", "\uB445", 10, "\uB452\uB453\uB455\uB456\uB457\uB459", 6, "\uB462\uB464\uB466"],
      ["8a61", "\uB467", 4, "\uB46D", 18, "\uB481\uB482"],
      ["8a81", "\uB483", 4, "\uB489", 19, "\uB49E", 5, "\uB4A5\uB4A6\uB4A7\uB4A9\uB4AA\uB4AB\uB4AD", 7, "\uB4B6\uB4B8\uB4BA", 5, "\uB4C1\uB4C2\uB4C3\uB4C5\uB4C6\uB4C7\uB4C9", 6, "\uB4D1\uB4D2\uB4D3\uB4D4\uB4D6", 5, "\uB4DE\uB4DF\uB4E1\uB4E2\uB4E5\uB4E7", 4, "\uB4EE\uB4F0\uB4F2", 5, "\uB4F9", 26, "\uB516\uB517\uB519\uB51A\uB51D"],
      ["8b41", "\uB51E", 5, "\uB526\uB52B", 4, "\uB532\uB533\uB535\uB536\uB537\uB539", 6, "\uB542\uB546"],
      ["8b61", "\uB547\uB548\uB549\uB54A\uB54E\uB54F\uB551\uB552\uB553\uB555", 6, "\uB55E\uB562", 8],
      ["8b81", "\uB56B", 52, "\uB5A2\uB5A3\uB5A5\uB5A6\uB5A7\uB5A9\uB5AC\uB5AD\uB5AE\uB5AF\uB5B2\uB5B6", 4, "\uB5BE\uB5BF\uB5C1\uB5C2\uB5C3\uB5C5", 6, "\uB5CE\uB5D2", 5, "\uB5D9", 18, "\uB5ED", 18],
      ["8c41", "\uB600", 15, "\uB612\uB613\uB615\uB616\uB617\uB619", 4],
      ["8c61", "\uB61E", 6, "\uB626", 5, "\uB62D", 6, "\uB635", 5],
      ["8c81", "\uB63B", 12, "\uB649", 26, "\uB665\uB666\uB667\uB669", 50, "\uB69E\uB69F\uB6A1\uB6A2\uB6A3\uB6A5", 5, "\uB6AD\uB6AE\uB6AF\uB6B0\uB6B2", 16],
      ["8d41", "\uB6C3", 16, "\uB6D5", 8],
      ["8d61", "\uB6DE", 17, "\uB6F1\uB6F2\uB6F3\uB6F5\uB6F6\uB6F7\uB6F9\uB6FA"],
      ["8d81", "\uB6FB", 4, "\uB702\uB703\uB704\uB706", 33, "\uB72A\uB72B\uB72D\uB72E\uB731", 6, "\uB73A\uB73C", 7, "\uB745\uB746\uB747\uB749\uB74A\uB74B\uB74D", 6, "\uB756", 9, "\uB761\uB762\uB763\uB765\uB766\uB767\uB769", 6, "\uB772\uB774\uB776", 5, "\uB77E\uB77F\uB781\uB782\uB783\uB785", 6, "\uB78E\uB793\uB794\uB795\uB79A\uB79B\uB79D\uB79E"],
      ["8e41", "\uB79F\uB7A1", 6, "\uB7AA\uB7AE", 5, "\uB7B6\uB7B7\uB7B9", 8],
      ["8e61", "\uB7C2", 4, "\uB7C8\uB7CA", 19],
      ["8e81", "\uB7DE", 13, "\uB7EE\uB7EF\uB7F1\uB7F2\uB7F3\uB7F5", 6, "\uB7FE\uB802", 4, "\uB80A\uB80B\uB80D\uB80E\uB80F\uB811", 6, "\uB81A\uB81C\uB81E", 5, "\uB826\uB827\uB829\uB82A\uB82B\uB82D", 6, "\uB836\uB83A", 5, "\uB841\uB842\uB843\uB845", 11, "\uB852\uB854", 7, "\uB85E\uB85F\uB861\uB862\uB863\uB865", 6, "\uB86E\uB870\uB872", 5, "\uB879\uB87A\uB87B\uB87D", 7],
      ["8f41", "\uB885", 7, "\uB88E", 17],
      ["8f61", "\uB8A0", 7, "\uB8A9", 6, "\uB8B1\uB8B2\uB8B3\uB8B5\uB8B6\uB8B7\uB8B9", 4],
      ["8f81", "\uB8BE\uB8BF\uB8C2\uB8C4\uB8C6", 5, "\uB8CD\uB8CE\uB8CF\uB8D1\uB8D2\uB8D3\uB8D5", 7, "\uB8DE\uB8E0\uB8E2", 5, "\uB8EA\uB8EB\uB8ED\uB8EE\uB8EF\uB8F1", 6, "\uB8FA\uB8FC\uB8FE", 5, "\uB905", 18, "\uB919", 6, "\uB921", 26, "\uB93E\uB93F\uB941\uB942\uB943\uB945", 6, "\uB94D\uB94E\uB950\uB952", 5],
      ["9041", "\uB95A\uB95B\uB95D\uB95E\uB95F\uB961", 6, "\uB96A\uB96C\uB96E", 5, "\uB976\uB977\uB979\uB97A\uB97B\uB97D"],
      ["9061", "\uB97E", 5, "\uB986\uB988\uB98B\uB98C\uB98F", 15],
      ["9081", "\uB99F", 12, "\uB9AE\uB9AF\uB9B1\uB9B2\uB9B3\uB9B5", 6, "\uB9BE\uB9C0\uB9C2", 5, "\uB9CA\uB9CB\uB9CD\uB9D3", 4, "\uB9DA\uB9DC\uB9DF\uB9E0\uB9E2\uB9E6\uB9E7\uB9E9\uB9EA\uB9EB\uB9ED", 6, "\uB9F6\uB9FB", 4, "\uBA02", 5, "\uBA09", 11, "\uBA16", 33, "\uBA3A\uBA3B\uBA3D\uBA3E\uBA3F\uBA41\uBA43\uBA44\uBA45\uBA46"],
      ["9141", "\uBA47\uBA4A\uBA4C\uBA4F\uBA50\uBA51\uBA52\uBA56\uBA57\uBA59\uBA5A\uBA5B\uBA5D", 6, "\uBA66\uBA6A", 5],
      ["9161", "\uBA72\uBA73\uBA75\uBA76\uBA77\uBA79", 9, "\uBA86\uBA88\uBA89\uBA8A\uBA8B\uBA8D", 5],
      ["9181", "\uBA93", 20, "\uBAAA\uBAAD\uBAAE\uBAAF\uBAB1\uBAB3", 4, "\uBABA\uBABC\uBABE", 5, "\uBAC5\uBAC6\uBAC7\uBAC9", 14, "\uBADA", 33, "\uBAFD\uBAFE\uBAFF\uBB01\uBB02\uBB03\uBB05", 7, "\uBB0E\uBB10\uBB12", 5, "\uBB19\uBB1A\uBB1B\uBB1D\uBB1E\uBB1F\uBB21", 6],
      ["9241", "\uBB28\uBB2A\uBB2C", 7, "\uBB37\uBB39\uBB3A\uBB3F", 4, "\uBB46\uBB48\uBB4A\uBB4B\uBB4C\uBB4E\uBB51\uBB52"],
      ["9261", "\uBB53\uBB55\uBB56\uBB57\uBB59", 7, "\uBB62\uBB64", 7, "\uBB6D", 4],
      ["9281", "\uBB72", 21, "\uBB89\uBB8A\uBB8B\uBB8D\uBB8E\uBB8F\uBB91", 18, "\uBBA5\uBBA6\uBBA7\uBBA9\uBBAA\uBBAB\uBBAD", 6, "\uBBB5\uBBB6\uBBB8", 7, "\uBBC1\uBBC2\uBBC3\uBBC5\uBBC6\uBBC7\uBBC9", 6, "\uBBD1\uBBD2\uBBD4", 35, "\uBBFA\uBBFB\uBBFD\uBBFE\uBC01"],
      ["9341", "\uBC03", 4, "\uBC0A\uBC0E\uBC10\uBC12\uBC13\uBC19\uBC1A\uBC20\uBC21\uBC22\uBC23\uBC26\uBC28\uBC2A\uBC2B\uBC2C\uBC2E\uBC2F\uBC32\uBC33\uBC35"],
      ["9361", "\uBC36\uBC37\uBC39", 6, "\uBC42\uBC46\uBC47\uBC48\uBC4A\uBC4B\uBC4E\uBC4F\uBC51", 8],
      ["9381", "\uBC5A\uBC5B\uBC5C\uBC5E", 37, "\uBC86\uBC87\uBC89\uBC8A\uBC8D\uBC8F", 4, "\uBC96\uBC98\uBC9B", 4, "\uBCA2\uBCA3\uBCA5\uBCA6\uBCA9", 6, "\uBCB2\uBCB6", 5, "\uBCBE\uBCBF\uBCC1\uBCC2\uBCC3\uBCC5", 7, "\uBCCE\uBCD2\uBCD3\uBCD4\uBCD6\uBCD7\uBCD9\uBCDA\uBCDB\uBCDD", 22, "\uBCF7\uBCF9\uBCFA\uBCFB\uBCFD"],
      ["9441", "\uBCFE", 5, "\uBD06\uBD08\uBD0A", 5, "\uBD11\uBD12\uBD13\uBD15", 8],
      ["9461", "\uBD1E", 5, "\uBD25", 6, "\uBD2D", 12],
      ["9481", "\uBD3A", 5, "\uBD41", 6, "\uBD4A\uBD4B\uBD4D\uBD4E\uBD4F\uBD51", 6, "\uBD5A", 9, "\uBD65\uBD66\uBD67\uBD69", 22, "\uBD82\uBD83\uBD85\uBD86\uBD8B", 4, "\uBD92\uBD94\uBD96\uBD97\uBD98\uBD9B\uBD9D", 6, "\uBDA5", 10, "\uBDB1", 6, "\uBDB9", 24],
      ["9541", "\uBDD2\uBDD3\uBDD6\uBDD7\uBDD9\uBDDA\uBDDB\uBDDD", 11, "\uBDEA", 5, "\uBDF1"],
      ["9561", "\uBDF2\uBDF3\uBDF5\uBDF6\uBDF7\uBDF9", 6, "\uBE01\uBE02\uBE04\uBE06", 5, "\uBE0E\uBE0F\uBE11\uBE12\uBE13"],
      ["9581", "\uBE15", 6, "\uBE1E\uBE20", 35, "\uBE46\uBE47\uBE49\uBE4A\uBE4B\uBE4D\uBE4F", 4, "\uBE56\uBE58\uBE5C\uBE5D\uBE5E\uBE5F\uBE62\uBE63\uBE65\uBE66\uBE67\uBE69\uBE6B", 4, "\uBE72\uBE76", 4, "\uBE7E\uBE7F\uBE81\uBE82\uBE83\uBE85", 6, "\uBE8E\uBE92", 5, "\uBE9A", 13, "\uBEA9", 14],
      ["9641", "\uBEB8", 23, "\uBED2\uBED3"],
      ["9661", "\uBED5\uBED6\uBED9", 6, "\uBEE1\uBEE2\uBEE6", 5, "\uBEED", 8],
      ["9681", "\uBEF6", 10, "\uBF02", 5, "\uBF0A", 13, "\uBF1A\uBF1E", 33, "\uBF42\uBF43\uBF45\uBF46\uBF47\uBF49", 6, "\uBF52\uBF53\uBF54\uBF56", 44],
      ["9741", "\uBF83", 16, "\uBF95", 8],
      ["9761", "\uBF9E", 17, "\uBFB1", 7],
      ["9781", "\uBFB9", 11, "\uBFC6", 5, "\uBFCE\uBFCF\uBFD1\uBFD2\uBFD3\uBFD5", 6, "\uBFDD\uBFDE\uBFE0\uBFE2", 89, "\uC03D\uC03E\uC03F"],
      ["9841", "\uC040", 16, "\uC052", 5, "\uC059\uC05A\uC05B"],
      ["9861", "\uC05D\uC05E\uC05F\uC061", 6, "\uC06A", 15],
      ["9881", "\uC07A", 21, "\uC092\uC093\uC095\uC096\uC097\uC099", 6, "\uC0A2\uC0A4\uC0A6", 5, "\uC0AE\uC0B1\uC0B2\uC0B7", 4, "\uC0BE\uC0C2\uC0C3\uC0C4\uC0C6\uC0C7\uC0CA\uC0CB\uC0CD\uC0CE\uC0CF\uC0D1", 6, "\uC0DA\uC0DE", 5, "\uC0E6\uC0E7\uC0E9\uC0EA\uC0EB\uC0ED", 6, "\uC0F6\uC0F8\uC0FA", 5, "\uC101\uC102\uC103\uC105\uC106\uC107\uC109", 6, "\uC111\uC112\uC113\uC114\uC116", 5, "\uC121\uC122\uC125\uC128\uC129\uC12A\uC12B\uC12E"],
      ["9941", "\uC132\uC133\uC134\uC135\uC137\uC13A\uC13B\uC13D\uC13E\uC13F\uC141", 6, "\uC14A\uC14E", 5, "\uC156\uC157"],
      ["9961", "\uC159\uC15A\uC15B\uC15D", 6, "\uC166\uC16A", 5, "\uC171\uC172\uC173\uC175\uC176\uC177\uC179\uC17A\uC17B"],
      ["9981", "\uC17C", 8, "\uC186", 5, "\uC18F\uC191\uC192\uC193\uC195\uC197", 4, "\uC19E\uC1A0\uC1A2\uC1A3\uC1A4\uC1A6\uC1A7\uC1AA\uC1AB\uC1AD\uC1AE\uC1AF\uC1B1", 11, "\uC1BE", 5, "\uC1C5\uC1C6\uC1C7\uC1C9\uC1CA\uC1CB\uC1CD", 6, "\uC1D5\uC1D6\uC1D9", 6, "\uC1E1\uC1E2\uC1E3\uC1E5\uC1E6\uC1E7\uC1E9", 6, "\uC1F2\uC1F4", 7, "\uC1FE\uC1FF\uC201\uC202\uC203\uC205", 6, "\uC20E\uC210\uC212", 5, "\uC21A\uC21B\uC21D\uC21E\uC221\uC222\uC223"],
      ["9a41", "\uC224\uC225\uC226\uC227\uC22A\uC22C\uC22E\uC230\uC233\uC235", 16],
      ["9a61", "\uC246\uC247\uC249", 6, "\uC252\uC253\uC255\uC256\uC257\uC259", 6, "\uC261\uC262\uC263\uC264\uC266"],
      ["9a81", "\uC267", 4, "\uC26E\uC26F\uC271\uC272\uC273\uC275", 6, "\uC27E\uC280\uC282", 5, "\uC28A", 5, "\uC291", 6, "\uC299\uC29A\uC29C\uC29E", 5, "\uC2A6\uC2A7\uC2A9\uC2AA\uC2AB\uC2AE", 5, "\uC2B6\uC2B8\uC2BA", 33, "\uC2DE\uC2DF\uC2E1\uC2E2\uC2E5", 5, "\uC2EE\uC2F0\uC2F2\uC2F3\uC2F4\uC2F5\uC2F7\uC2FA\uC2FD\uC2FE\uC2FF\uC301", 6, "\uC30A\uC30B\uC30E\uC30F"],
      ["9b41", "\uC310\uC311\uC312\uC316\uC317\uC319\uC31A\uC31B\uC31D", 6, "\uC326\uC327\uC32A", 8],
      ["9b61", "\uC333", 17, "\uC346", 7],
      ["9b81", "\uC34E", 25, "\uC36A\uC36B\uC36D\uC36E\uC36F\uC371\uC373", 4, "\uC37A\uC37B\uC37E", 5, "\uC385\uC386\uC387\uC389\uC38A\uC38B\uC38D", 50, "\uC3C1", 22, "\uC3DA"],
      ["9c41", "\uC3DB\uC3DD\uC3DE\uC3E1\uC3E3", 4, "\uC3EA\uC3EB\uC3EC\uC3EE", 5, "\uC3F6\uC3F7\uC3F9", 5],
      ["9c61", "\uC3FF", 8, "\uC409", 6, "\uC411", 9],
      ["9c81", "\uC41B", 8, "\uC425", 6, "\uC42D\uC42E\uC42F\uC431\uC432\uC433\uC435", 6, "\uC43E", 9, "\uC449", 26, "\uC466\uC467\uC469\uC46A\uC46B\uC46D", 6, "\uC476\uC477\uC478\uC47A", 5, "\uC481", 18, "\uC495", 6, "\uC49D", 12],
      ["9d41", "\uC4AA", 13, "\uC4B9\uC4BA\uC4BB\uC4BD", 8],
      ["9d61", "\uC4C6", 25],
      ["9d81", "\uC4E0", 8, "\uC4EA", 5, "\uC4F2\uC4F3\uC4F5\uC4F6\uC4F7\uC4F9\uC4FB\uC4FC\uC4FD\uC4FE\uC502", 9, "\uC50D\uC50E\uC50F\uC511\uC512\uC513\uC515", 6, "\uC51D", 10, "\uC52A\uC52B\uC52D\uC52E\uC52F\uC531", 6, "\uC53A\uC53C\uC53E", 5, "\uC546\uC547\uC54B\uC54F\uC550\uC551\uC552\uC556\uC55A\uC55B\uC55C\uC55F\uC562\uC563\uC565\uC566\uC567\uC569", 6, "\uC572\uC576", 5, "\uC57E\uC57F\uC581\uC582\uC583\uC585\uC586\uC588\uC589\uC58A\uC58B\uC58E\uC590\uC592\uC593\uC594"],
      ["9e41", "\uC596\uC599\uC59A\uC59B\uC59D\uC59E\uC59F\uC5A1", 7, "\uC5AA", 9, "\uC5B6"],
      ["9e61", "\uC5B7\uC5BA\uC5BF", 4, "\uC5CB\uC5CD\uC5CF\uC5D2\uC5D3\uC5D5\uC5D6\uC5D7\uC5D9", 6, "\uC5E2\uC5E4\uC5E6\uC5E7"],
      ["9e81", "\uC5E8\uC5E9\uC5EA\uC5EB\uC5EF\uC5F1\uC5F2\uC5F3\uC5F5\uC5F8\uC5F9\uC5FA\uC5FB\uC602\uC603\uC604\uC609\uC60A\uC60B\uC60D\uC60E\uC60F\uC611", 6, "\uC61A\uC61D", 6, "\uC626\uC627\uC629\uC62A\uC62B\uC62F\uC631\uC632\uC636\uC638\uC63A\uC63C\uC63D\uC63E\uC63F\uC642\uC643\uC645\uC646\uC647\uC649", 6, "\uC652\uC656", 5, "\uC65E\uC65F\uC661", 10, "\uC66D\uC66E\uC670\uC672", 5, "\uC67A\uC67B\uC67D\uC67E\uC67F\uC681", 6, "\uC68A\uC68C\uC68E", 5, "\uC696\uC697\uC699\uC69A\uC69B\uC69D", 6, "\uC6A6"],
      ["9f41", "\uC6A8\uC6AA", 5, "\uC6B2\uC6B3\uC6B5\uC6B6\uC6B7\uC6BB", 4, "\uC6C2\uC6C4\uC6C6", 5, "\uC6CE"],
      ["9f61", "\uC6CF\uC6D1\uC6D2\uC6D3\uC6D5", 6, "\uC6DE\uC6DF\uC6E2", 5, "\uC6EA\uC6EB\uC6ED\uC6EE\uC6EF\uC6F1\uC6F2"],
      ["9f81", "\uC6F3", 4, "\uC6FA\uC6FB\uC6FC\uC6FE", 5, "\uC706\uC707\uC709\uC70A\uC70B\uC70D", 6, "\uC716\uC718\uC71A", 5, "\uC722\uC723\uC725\uC726\uC727\uC729", 6, "\uC732\uC734\uC736\uC738\uC739\uC73A\uC73B\uC73E\uC73F\uC741\uC742\uC743\uC745", 4, "\uC74B\uC74E\uC750\uC759\uC75A\uC75B\uC75D\uC75E\uC75F\uC761", 6, "\uC769\uC76A\uC76C", 7, "\uC776\uC777\uC779\uC77A\uC77B\uC77F\uC780\uC781\uC782\uC786\uC78B\uC78C\uC78D\uC78F\uC792\uC793\uC795\uC799\uC79B", 4, "\uC7A2\uC7A7", 4, "\uC7AE\uC7AF\uC7B1\uC7B2\uC7B3\uC7B5\uC7B6\uC7B7"],
      ["a041", "\uC7B8\uC7B9\uC7BA\uC7BB\uC7BE\uC7C2", 5, "\uC7CA\uC7CB\uC7CD\uC7CF\uC7D1", 6, "\uC7D9\uC7DA\uC7DB\uC7DC"],
      ["a061", "\uC7DE", 5, "\uC7E5\uC7E6\uC7E7\uC7E9\uC7EA\uC7EB\uC7ED", 13],
      ["a081", "\uC7FB", 4, "\uC802\uC803\uC805\uC806\uC807\uC809\uC80B", 4, "\uC812\uC814\uC817", 4, "\uC81E\uC81F\uC821\uC822\uC823\uC825", 6, "\uC82E\uC830\uC832", 5, "\uC839\uC83A\uC83B\uC83D\uC83E\uC83F\uC841", 6, "\uC84A\uC84B\uC84E", 5, "\uC855", 26, "\uC872\uC873\uC875\uC876\uC877\uC879\uC87B", 4, "\uC882\uC884\uC888\uC889\uC88A\uC88E", 5, "\uC895", 7, "\uC89E\uC8A0\uC8A2\uC8A3\uC8A4"],
      ["a141", "\uC8A5\uC8A6\uC8A7\uC8A9", 18, "\uC8BE\uC8BF\uC8C0\uC8C1"],
      ["a161", "\uC8C2\uC8C3\uC8C5\uC8C6\uC8C7\uC8C9\uC8CA\uC8CB\uC8CD", 6, "\uC8D6\uC8D8\uC8DA", 5, "\uC8E2\uC8E3\uC8E5"],
      ["a181", "\uC8E6", 14, "\uC8F6", 5, "\uC8FE\uC8FF\uC901\uC902\uC903\uC907", 4, "\uC90E\u3000\u3001\u3002\xB7\u2025\u2026\xA8\u3003\xAD\u2015\u2225\uFF3C\u223C\u2018\u2019\u201C\u201D\u3014\u3015\u3008", 9, "\xB1\xD7\xF7\u2260\u2264\u2265\u221E\u2234\xB0\u2032\u2033\u2103\u212B\uFFE0\uFFE1\uFFE5\u2642\u2640\u2220\u22A5\u2312\u2202\u2207\u2261\u2252\xA7\u203B\u2606\u2605\u25CB\u25CF\u25CE\u25C7\u25C6\u25A1\u25A0\u25B3\u25B2\u25BD\u25BC\u2192\u2190\u2191\u2193\u2194\u3013\u226A\u226B\u221A\u223D\u221D\u2235\u222B\u222C\u2208\u220B\u2286\u2287\u2282\u2283\u222A\u2229\u2227\u2228\uFFE2"],
      ["a241", "\uC910\uC912", 5, "\uC919", 18],
      ["a261", "\uC92D", 6, "\uC935", 18],
      ["a281", "\uC948", 7, "\uC952\uC953\uC955\uC956\uC957\uC959", 6, "\uC962\uC964", 7, "\uC96D\uC96E\uC96F\u21D2\u21D4\u2200\u2203\xB4\uFF5E\u02C7\u02D8\u02DD\u02DA\u02D9\xB8\u02DB\xA1\xBF\u02D0\u222E\u2211\u220F\xA4\u2109\u2030\u25C1\u25C0\u25B7\u25B6\u2664\u2660\u2661\u2665\u2667\u2663\u2299\u25C8\u25A3\u25D0\u25D1\u2592\u25A4\u25A5\u25A8\u25A7\u25A6\u25A9\u2668\u260F\u260E\u261C\u261E\xB6\u2020\u2021\u2195\u2197\u2199\u2196\u2198\u266D\u2669\u266A\u266C\u327F\u321C\u2116\u33C7\u2122\u33C2\u33D8\u2121\u20AC\xAE"],
      ["a341", "\uC971\uC972\uC973\uC975", 6, "\uC97D", 10, "\uC98A\uC98B\uC98D\uC98E\uC98F"],
      ["a361", "\uC991", 6, "\uC99A\uC99C\uC99E", 16],
      ["a381", "\uC9AF", 16, "\uC9C2\uC9C3\uC9C5\uC9C6\uC9C9\uC9CB", 4, "\uC9D2\uC9D4\uC9D7\uC9D8\uC9DB\uFF01", 58, "\uFFE6\uFF3D", 32, "\uFFE3"],
      ["a441", "\uC9DE\uC9DF\uC9E1\uC9E3\uC9E5\uC9E6\uC9E8\uC9E9\uC9EA\uC9EB\uC9EE\uC9F2", 5, "\uC9FA\uC9FB\uC9FD\uC9FE\uC9FF\uCA01\uCA02\uCA03\uCA04"],
      ["a461", "\uCA05\uCA06\uCA07\uCA0A\uCA0E", 5, "\uCA15\uCA16\uCA17\uCA19", 12],
      ["a481", "\uCA26\uCA27\uCA28\uCA2A", 28, "\u3131", 93],
      ["a541", "\uCA47", 4, "\uCA4E\uCA4F\uCA51\uCA52\uCA53\uCA55", 6, "\uCA5E\uCA62", 5, "\uCA69\uCA6A"],
      ["a561", "\uCA6B", 17, "\uCA7E", 5, "\uCA85\uCA86"],
      ["a581", "\uCA87", 16, "\uCA99", 14, "\u2170", 9],
      ["a5b0", "\u2160", 9],
      ["a5c1", "\u0391", 16, "\u03A3", 6],
      ["a5e1", "\u03B1", 16, "\u03C3", 6],
      ["a641", "\uCAA8", 19, "\uCABE\uCABF\uCAC1\uCAC2\uCAC3\uCAC5"],
      ["a661", "\uCAC6", 5, "\uCACE\uCAD0\uCAD2\uCAD4\uCAD5\uCAD6\uCAD7\uCADA", 5, "\uCAE1", 6],
      ["a681", "\uCAE8\uCAE9\uCAEA\uCAEB\uCAED", 6, "\uCAF5", 18, "\uCB09\uCB0A\u2500\u2502\u250C\u2510\u2518\u2514\u251C\u252C\u2524\u2534\u253C\u2501\u2503\u250F\u2513\u251B\u2517\u2523\u2533\u252B\u253B\u254B\u2520\u252F\u2528\u2537\u253F\u251D\u2530\u2525\u2538\u2542\u2512\u2511\u251A\u2519\u2516\u2515\u250E\u250D\u251E\u251F\u2521\u2522\u2526\u2527\u2529\u252A\u252D\u252E\u2531\u2532\u2535\u2536\u2539\u253A\u253D\u253E\u2540\u2541\u2543", 7],
      ["a741", "\uCB0B", 4, "\uCB11\uCB12\uCB13\uCB15\uCB16\uCB17\uCB19", 6, "\uCB22", 7],
      ["a761", "\uCB2A", 22, "\uCB42\uCB43\uCB44"],
      ["a781", "\uCB45\uCB46\uCB47\uCB4A\uCB4B\uCB4D\uCB4E\uCB4F\uCB51", 6, "\uCB5A\uCB5B\uCB5C\uCB5E", 5, "\uCB65", 7, "\u3395\u3396\u3397\u2113\u3398\u33C4\u33A3\u33A4\u33A5\u33A6\u3399", 9, "\u33CA\u338D\u338E\u338F\u33CF\u3388\u3389\u33C8\u33A7\u33A8\u33B0", 9, "\u3380", 4, "\u33BA", 5, "\u3390", 4, "\u2126\u33C0\u33C1\u338A\u338B\u338C\u33D6\u33C5\u33AD\u33AE\u33AF\u33DB\u33A9\u33AA\u33AB\u33AC\u33DD\u33D0\u33D3\u33C3\u33C9\u33DC\u33C6"],
      ["a841", "\uCB6D", 10, "\uCB7A", 14],
      ["a861", "\uCB89", 18, "\uCB9D", 6],
      ["a881", "\uCBA4", 19, "\uCBB9", 11, "\xC6\xD0\xAA\u0126"],
      ["a8a6", "\u0132"],
      ["a8a8", "\u013F\u0141\xD8\u0152\xBA\xDE\u0166\u014A"],
      ["a8b1", "\u3260", 27, "\u24D0", 25, "\u2460", 14, "\xBD\u2153\u2154\xBC\xBE\u215B\u215C\u215D\u215E"],
      ["a941", "\uCBC5", 14, "\uCBD5", 10],
      ["a961", "\uCBE0\uCBE1\uCBE2\uCBE3\uCBE5\uCBE6\uCBE8\uCBEA", 18],
      ["a981", "\uCBFD", 14, "\uCC0E\uCC0F\uCC11\uCC12\uCC13\uCC15", 6, "\uCC1E\uCC1F\uCC20\uCC23\uCC24\xE6\u0111\xF0\u0127\u0131\u0133\u0138\u0140\u0142\xF8\u0153\xDF\xFE\u0167\u014B\u0149\u3200", 27, "\u249C", 25, "\u2474", 14, "\xB9\xB2\xB3\u2074\u207F\u2081\u2082\u2083\u2084"],
      ["aa41", "\uCC25\uCC26\uCC2A\uCC2B\uCC2D\uCC2F\uCC31", 6, "\uCC3A\uCC3F", 4, "\uCC46\uCC47\uCC49\uCC4A\uCC4B\uCC4D\uCC4E"],
      ["aa61", "\uCC4F", 4, "\uCC56\uCC5A", 5, "\uCC61\uCC62\uCC63\uCC65\uCC67\uCC69", 6, "\uCC71\uCC72"],
      ["aa81", "\uCC73\uCC74\uCC76", 29, "\u3041", 82],
      ["ab41", "\uCC94\uCC95\uCC96\uCC97\uCC9A\uCC9B\uCC9D\uCC9E\uCC9F\uCCA1", 6, "\uCCAA\uCCAE", 5, "\uCCB6\uCCB7\uCCB9"],
      ["ab61", "\uCCBA\uCCBB\uCCBD", 6, "\uCCC6\uCCC8\uCCCA", 5, "\uCCD1\uCCD2\uCCD3\uCCD5", 5],
      ["ab81", "\uCCDB", 8, "\uCCE5", 6, "\uCCED\uCCEE\uCCEF\uCCF1", 12, "\u30A1", 85],
      ["ac41", "\uCCFE\uCCFF\uCD00\uCD02", 5, "\uCD0A\uCD0B\uCD0D\uCD0E\uCD0F\uCD11", 6, "\uCD1A\uCD1C\uCD1E\uCD1F\uCD20"],
      ["ac61", "\uCD21\uCD22\uCD23\uCD25\uCD26\uCD27\uCD29\uCD2A\uCD2B\uCD2D", 11, "\uCD3A", 4],
      ["ac81", "\uCD3F", 28, "\uCD5D\uCD5E\uCD5F\u0410", 5, "\u0401\u0416", 25],
      ["acd1", "\u0430", 5, "\u0451\u0436", 25],
      ["ad41", "\uCD61\uCD62\uCD63\uCD65", 6, "\uCD6E\uCD70\uCD72", 5, "\uCD79", 7],
      ["ad61", "\uCD81", 6, "\uCD89", 10, "\uCD96\uCD97\uCD99\uCD9A\uCD9B\uCD9D\uCD9E\uCD9F"],
      ["ad81", "\uCDA0\uCDA1\uCDA2\uCDA3\uCDA6\uCDA8\uCDAA", 5, "\uCDB1", 18, "\uCDC5"],
      ["ae41", "\uCDC6", 5, "\uCDCD\uCDCE\uCDCF\uCDD1", 16],
      ["ae61", "\uCDE2", 5, "\uCDE9\uCDEA\uCDEB\uCDED\uCDEE\uCDEF\uCDF1", 6, "\uCDFA\uCDFC\uCDFE", 4],
      ["ae81", "\uCE03\uCE05\uCE06\uCE07\uCE09\uCE0A\uCE0B\uCE0D", 6, "\uCE15\uCE16\uCE17\uCE18\uCE1A", 5, "\uCE22\uCE23\uCE25\uCE26\uCE27\uCE29\uCE2A\uCE2B"],
      ["af41", "\uCE2C\uCE2D\uCE2E\uCE2F\uCE32\uCE34\uCE36", 19],
      ["af61", "\uCE4A", 13, "\uCE5A\uCE5B\uCE5D\uCE5E\uCE62", 5, "\uCE6A\uCE6C"],
      ["af81", "\uCE6E", 5, "\uCE76\uCE77\uCE79\uCE7A\uCE7B\uCE7D", 6, "\uCE86\uCE88\uCE8A", 5, "\uCE92\uCE93\uCE95\uCE96\uCE97\uCE99"],
      ["b041", "\uCE9A", 5, "\uCEA2\uCEA6", 5, "\uCEAE", 12],
      ["b061", "\uCEBB", 5, "\uCEC2", 19],
      ["b081", "\uCED6", 13, "\uCEE6\uCEE7\uCEE9\uCEEA\uCEED", 6, "\uCEF6\uCEFA", 5, "\uAC00\uAC01\uAC04\uAC07\uAC08\uAC09\uAC0A\uAC10", 7, "\uAC19", 4, "\uAC20\uAC24\uAC2C\uAC2D\uAC2F\uAC30\uAC31\uAC38\uAC39\uAC3C\uAC40\uAC4B\uAC4D\uAC54\uAC58\uAC5C\uAC70\uAC71\uAC74\uAC77\uAC78\uAC7A\uAC80\uAC81\uAC83\uAC84\uAC85\uAC86\uAC89\uAC8A\uAC8B\uAC8C\uAC90\uAC94\uAC9C\uAC9D\uAC9F\uACA0\uACA1\uACA8\uACA9\uACAA\uACAC\uACAF\uACB0\uACB8\uACB9\uACBB\uACBC\uACBD\uACC1\uACC4\uACC8\uACCC\uACD5\uACD7\uACE0\uACE1\uACE4\uACE7\uACE8\uACEA\uACEC\uACEF\uACF0\uACF1\uACF3\uACF5\uACF6\uACFC\uACFD\uAD00\uAD04\uAD06"],
      ["b141", "\uCF02\uCF03\uCF05\uCF06\uCF07\uCF09", 6, "\uCF12\uCF14\uCF16", 5, "\uCF1D\uCF1E\uCF1F\uCF21\uCF22\uCF23"],
      ["b161", "\uCF25", 6, "\uCF2E\uCF32", 5, "\uCF39", 11],
      ["b181", "\uCF45", 14, "\uCF56\uCF57\uCF59\uCF5A\uCF5B\uCF5D", 6, "\uCF66\uCF68\uCF6A\uCF6B\uCF6C\uAD0C\uAD0D\uAD0F\uAD11\uAD18\uAD1C\uAD20\uAD29\uAD2C\uAD2D\uAD34\uAD35\uAD38\uAD3C\uAD44\uAD45\uAD47\uAD49\uAD50\uAD54\uAD58\uAD61\uAD63\uAD6C\uAD6D\uAD70\uAD73\uAD74\uAD75\uAD76\uAD7B\uAD7C\uAD7D\uAD7F\uAD81\uAD82\uAD88\uAD89\uAD8C\uAD90\uAD9C\uAD9D\uADA4\uADB7\uADC0\uADC1\uADC4\uADC8\uADD0\uADD1\uADD3\uADDC\uADE0\uADE4\uADF8\uADF9\uADFC\uADFF\uAE00\uAE01\uAE08\uAE09\uAE0B\uAE0D\uAE14\uAE30\uAE31\uAE34\uAE37\uAE38\uAE3A\uAE40\uAE41\uAE43\uAE45\uAE46\uAE4A\uAE4C\uAE4D\uAE4E\uAE50\uAE54\uAE56\uAE5C\uAE5D\uAE5F\uAE60\uAE61\uAE65\uAE68\uAE69\uAE6C\uAE70\uAE78"],
      ["b241", "\uCF6D\uCF6E\uCF6F\uCF72\uCF73\uCF75\uCF76\uCF77\uCF79", 6, "\uCF81\uCF82\uCF83\uCF84\uCF86", 5, "\uCF8D"],
      ["b261", "\uCF8E", 18, "\uCFA2", 5, "\uCFA9"],
      ["b281", "\uCFAA", 5, "\uCFB1", 18, "\uCFC5", 6, "\uAE79\uAE7B\uAE7C\uAE7D\uAE84\uAE85\uAE8C\uAEBC\uAEBD\uAEBE\uAEC0\uAEC4\uAECC\uAECD\uAECF\uAED0\uAED1\uAED8\uAED9\uAEDC\uAEE8\uAEEB\uAEED\uAEF4\uAEF8\uAEFC\uAF07\uAF08\uAF0D\uAF10\uAF2C\uAF2D\uAF30\uAF32\uAF34\uAF3C\uAF3D\uAF3F\uAF41\uAF42\uAF43\uAF48\uAF49\uAF50\uAF5C\uAF5D\uAF64\uAF65\uAF79\uAF80\uAF84\uAF88\uAF90\uAF91\uAF95\uAF9C\uAFB8\uAFB9\uAFBC\uAFC0\uAFC7\uAFC8\uAFC9\uAFCB\uAFCD\uAFCE\uAFD4\uAFDC\uAFE8\uAFE9\uAFF0\uAFF1\uAFF4\uAFF8\uB000\uB001\uB004\uB00C\uB010\uB014\uB01C\uB01D\uB028\uB044\uB045\uB048\uB04A\uB04C\uB04E\uB053\uB054\uB055\uB057\uB059"],
      ["b341", "\uCFCC", 19, "\uCFE2\uCFE3\uCFE5\uCFE6\uCFE7\uCFE9"],
      ["b361", "\uCFEA", 5, "\uCFF2\uCFF4\uCFF6", 5, "\uCFFD\uCFFE\uCFFF\uD001\uD002\uD003\uD005", 5],
      ["b381", "\uD00B", 5, "\uD012", 5, "\uD019", 19, "\uB05D\uB07C\uB07D\uB080\uB084\uB08C\uB08D\uB08F\uB091\uB098\uB099\uB09A\uB09C\uB09F\uB0A0\uB0A1\uB0A2\uB0A8\uB0A9\uB0AB", 4, "\uB0B1\uB0B3\uB0B4\uB0B5\uB0B8\uB0BC\uB0C4\uB0C5\uB0C7\uB0C8\uB0C9\uB0D0\uB0D1\uB0D4\uB0D8\uB0E0\uB0E5\uB108\uB109\uB10B\uB10C\uB110\uB112\uB113\uB118\uB119\uB11B\uB11C\uB11D\uB123\uB124\uB125\uB128\uB12C\uB134\uB135\uB137\uB138\uB139\uB140\uB141\uB144\uB148\uB150\uB151\uB154\uB155\uB158\uB15C\uB160\uB178\uB179\uB17C\uB180\uB182\uB188\uB189\uB18B\uB18D\uB192\uB193\uB194\uB198\uB19C\uB1A8\uB1CC\uB1D0\uB1D4\uB1DC\uB1DD"],
      ["b441", "\uD02E", 5, "\uD036\uD037\uD039\uD03A\uD03B\uD03D", 6, "\uD046\uD048\uD04A", 5],
      ["b461", "\uD051\uD052\uD053\uD055\uD056\uD057\uD059", 6, "\uD061", 10, "\uD06E\uD06F"],
      ["b481", "\uD071\uD072\uD073\uD075", 6, "\uD07E\uD07F\uD080\uD082", 18, "\uB1DF\uB1E8\uB1E9\uB1EC\uB1F0\uB1F9\uB1FB\uB1FD\uB204\uB205\uB208\uB20B\uB20C\uB214\uB215\uB217\uB219\uB220\uB234\uB23C\uB258\uB25C\uB260\uB268\uB269\uB274\uB275\uB27C\uB284\uB285\uB289\uB290\uB291\uB294\uB298\uB299\uB29A\uB2A0\uB2A1\uB2A3\uB2A5\uB2A6\uB2AA\uB2AC\uB2B0\uB2B4\uB2C8\uB2C9\uB2CC\uB2D0\uB2D2\uB2D8\uB2D9\uB2DB\uB2DD\uB2E2\uB2E4\uB2E5\uB2E6\uB2E8\uB2EB", 4, "\uB2F3\uB2F4\uB2F5\uB2F7", 4, "\uB2FF\uB300\uB301\uB304\uB308\uB310\uB311\uB313\uB314\uB315\uB31C\uB354\uB355\uB356\uB358\uB35B\uB35C\uB35E\uB35F\uB364\uB365"],
      ["b541", "\uD095", 14, "\uD0A6\uD0A7\uD0A9\uD0AA\uD0AB\uD0AD", 5],
      ["b561", "\uD0B3\uD0B6\uD0B8\uD0BA", 5, "\uD0C2\uD0C3\uD0C5\uD0C6\uD0C7\uD0CA", 5, "\uD0D2\uD0D6", 4],
      ["b581", "\uD0DB\uD0DE\uD0DF\uD0E1\uD0E2\uD0E3\uD0E5", 6, "\uD0EE\uD0F2", 5, "\uD0F9", 11, "\uB367\uB369\uB36B\uB36E\uB370\uB371\uB374\uB378\uB380\uB381\uB383\uB384\uB385\uB38C\uB390\uB394\uB3A0\uB3A1\uB3A8\uB3AC\uB3C4\uB3C5\uB3C8\uB3CB\uB3CC\uB3CE\uB3D0\uB3D4\uB3D5\uB3D7\uB3D9\uB3DB\uB3DD\uB3E0\uB3E4\uB3E8\uB3FC\uB410\uB418\uB41C\uB420\uB428\uB429\uB42B\uB434\uB450\uB451\uB454\uB458\uB460\uB461\uB463\uB465\uB46C\uB480\uB488\uB49D\uB4A4\uB4A8\uB4AC\uB4B5\uB4B7\uB4B9\uB4C0\uB4C4\uB4C8\uB4D0\uB4D5\uB4DC\uB4DD\uB4E0\uB4E3\uB4E4\uB4E6\uB4EC\uB4ED\uB4EF\uB4F1\uB4F8\uB514\uB515\uB518\uB51B\uB51C\uB524\uB525\uB527\uB528\uB529\uB52A\uB530\uB531\uB534\uB538"],
      ["b641", "\uD105", 7, "\uD10E", 17],
      ["b661", "\uD120", 15, "\uD132\uD133\uD135\uD136\uD137\uD139\uD13B\uD13C\uD13D\uD13E"],
      ["b681", "\uD13F\uD142\uD146", 5, "\uD14E\uD14F\uD151\uD152\uD153\uD155", 6, "\uD15E\uD160\uD162", 5, "\uD169\uD16A\uD16B\uD16D\uB540\uB541\uB543\uB544\uB545\uB54B\uB54C\uB54D\uB550\uB554\uB55C\uB55D\uB55F\uB560\uB561\uB5A0\uB5A1\uB5A4\uB5A8\uB5AA\uB5AB\uB5B0\uB5B1\uB5B3\uB5B4\uB5B5\uB5BB\uB5BC\uB5BD\uB5C0\uB5C4\uB5CC\uB5CD\uB5CF\uB5D0\uB5D1\uB5D8\uB5EC\uB610\uB611\uB614\uB618\uB625\uB62C\uB634\uB648\uB664\uB668\uB69C\uB69D\uB6A0\uB6A4\uB6AB\uB6AC\uB6B1\uB6D4\uB6F0\uB6F4\uB6F8\uB700\uB701\uB705\uB728\uB729\uB72C\uB72F\uB730\uB738\uB739\uB73B\uB744\uB748\uB74C\uB754\uB755\uB760\uB764\uB768\uB770\uB771\uB773\uB775\uB77C\uB77D\uB780\uB784\uB78C\uB78D\uB78F\uB790\uB791\uB792\uB796\uB797"],
      ["b741", "\uD16E", 13, "\uD17D", 6, "\uD185\uD186\uD187\uD189\uD18A"],
      ["b761", "\uD18B", 20, "\uD1A2\uD1A3\uD1A5\uD1A6\uD1A7"],
      ["b781", "\uD1A9", 6, "\uD1B2\uD1B4\uD1B6\uD1B7\uD1B8\uD1B9\uD1BB\uD1BD\uD1BE\uD1BF\uD1C1", 14, "\uB798\uB799\uB79C\uB7A0\uB7A8\uB7A9\uB7AB\uB7AC\uB7AD\uB7B4\uB7B5\uB7B8\uB7C7\uB7C9\uB7EC\uB7ED\uB7F0\uB7F4\uB7FC\uB7FD\uB7FF\uB800\uB801\uB807\uB808\uB809\uB80C\uB810\uB818\uB819\uB81B\uB81D\uB824\uB825\uB828\uB82C\uB834\uB835\uB837\uB838\uB839\uB840\uB844\uB851\uB853\uB85C\uB85D\uB860\uB864\uB86C\uB86D\uB86F\uB871\uB878\uB87C\uB88D\uB8A8\uB8B0\uB8B4\uB8B8\uB8C0\uB8C1\uB8C3\uB8C5\uB8CC\uB8D0\uB8D4\uB8DD\uB8DF\uB8E1\uB8E8\uB8E9\uB8EC\uB8F0\uB8F8\uB8F9\uB8FB\uB8FD\uB904\uB918\uB920\uB93C\uB93D\uB940\uB944\uB94C\uB94F\uB951\uB958\uB959\uB95C\uB960\uB968\uB969"],
      ["b841", "\uD1D0", 7, "\uD1D9", 17],
      ["b861", "\uD1EB", 8, "\uD1F5\uD1F6\uD1F7\uD1F9", 13],
      ["b881", "\uD208\uD20A", 5, "\uD211", 24, "\uB96B\uB96D\uB974\uB975\uB978\uB97C\uB984\uB985\uB987\uB989\uB98A\uB98D\uB98E\uB9AC\uB9AD\uB9B0\uB9B4\uB9BC\uB9BD\uB9BF\uB9C1\uB9C8\uB9C9\uB9CC\uB9CE", 4, "\uB9D8\uB9D9\uB9DB\uB9DD\uB9DE\uB9E1\uB9E3\uB9E4\uB9E5\uB9E8\uB9EC\uB9F4\uB9F5\uB9F7\uB9F8\uB9F9\uB9FA\uBA00\uBA01\uBA08\uBA15\uBA38\uBA39\uBA3C\uBA40\uBA42\uBA48\uBA49\uBA4B\uBA4D\uBA4E\uBA53\uBA54\uBA55\uBA58\uBA5C\uBA64\uBA65\uBA67\uBA68\uBA69\uBA70\uBA71\uBA74\uBA78\uBA83\uBA84\uBA85\uBA87\uBA8C\uBAA8\uBAA9\uBAAB\uBAAC\uBAB0\uBAB2\uBAB8\uBAB9\uBABB\uBABD\uBAC4\uBAC8\uBAD8\uBAD9\uBAFC"],
      ["b941", "\uD22A\uD22B\uD22E\uD22F\uD231\uD232\uD233\uD235", 6, "\uD23E\uD240\uD242", 5, "\uD249\uD24A\uD24B\uD24C"],
      ["b961", "\uD24D", 14, "\uD25D", 6, "\uD265\uD266\uD267\uD268"],
      ["b981", "\uD269", 22, "\uD282\uD283\uD285\uD286\uD287\uD289\uD28A\uD28B\uD28C\uBB00\uBB04\uBB0D\uBB0F\uBB11\uBB18\uBB1C\uBB20\uBB29\uBB2B\uBB34\uBB35\uBB36\uBB38\uBB3B\uBB3C\uBB3D\uBB3E\uBB44\uBB45\uBB47\uBB49\uBB4D\uBB4F\uBB50\uBB54\uBB58\uBB61\uBB63\uBB6C\uBB88\uBB8C\uBB90\uBBA4\uBBA8\uBBAC\uBBB4\uBBB7\uBBC0\uBBC4\uBBC8\uBBD0\uBBD3\uBBF8\uBBF9\uBBFC\uBBFF\uBC00\uBC02\uBC08\uBC09\uBC0B\uBC0C\uBC0D\uBC0F\uBC11\uBC14", 4, "\uBC1B", 4, "\uBC24\uBC25\uBC27\uBC29\uBC2D\uBC30\uBC31\uBC34\uBC38\uBC40\uBC41\uBC43\uBC44\uBC45\uBC49\uBC4C\uBC4D\uBC50\uBC5D\uBC84\uBC85\uBC88\uBC8B\uBC8C\uBC8E\uBC94\uBC95\uBC97"],
      ["ba41", "\uD28D\uD28E\uD28F\uD292\uD293\uD294\uD296", 5, "\uD29D\uD29E\uD29F\uD2A1\uD2A2\uD2A3\uD2A5", 6, "\uD2AD"],
      ["ba61", "\uD2AE\uD2AF\uD2B0\uD2B2", 5, "\uD2BA\uD2BB\uD2BD\uD2BE\uD2C1\uD2C3", 4, "\uD2CA\uD2CC", 5],
      ["ba81", "\uD2D2\uD2D3\uD2D5\uD2D6\uD2D7\uD2D9\uD2DA\uD2DB\uD2DD", 6, "\uD2E6", 9, "\uD2F2\uD2F3\uD2F5\uD2F6\uD2F7\uD2F9\uD2FA\uBC99\uBC9A\uBCA0\uBCA1\uBCA4\uBCA7\uBCA8\uBCB0\uBCB1\uBCB3\uBCB4\uBCB5\uBCBC\uBCBD\uBCC0\uBCC4\uBCCD\uBCCF\uBCD0\uBCD1\uBCD5\uBCD8\uBCDC\uBCF4\uBCF5\uBCF6\uBCF8\uBCFC\uBD04\uBD05\uBD07\uBD09\uBD10\uBD14\uBD24\uBD2C\uBD40\uBD48\uBD49\uBD4C\uBD50\uBD58\uBD59\uBD64\uBD68\uBD80\uBD81\uBD84\uBD87\uBD88\uBD89\uBD8A\uBD90\uBD91\uBD93\uBD95\uBD99\uBD9A\uBD9C\uBDA4\uBDB0\uBDB8\uBDD4\uBDD5\uBDD8\uBDDC\uBDE9\uBDF0\uBDF4\uBDF8\uBE00\uBE03\uBE05\uBE0C\uBE0D\uBE10\uBE14\uBE1C\uBE1D\uBE1F\uBE44\uBE45\uBE48\uBE4C\uBE4E\uBE54\uBE55\uBE57\uBE59\uBE5A\uBE5B\uBE60\uBE61\uBE64"],
      ["bb41", "\uD2FB", 4, "\uD302\uD304\uD306", 5, "\uD30F\uD311\uD312\uD313\uD315\uD317", 4, "\uD31E\uD322\uD323"],
      ["bb61", "\uD324\uD326\uD327\uD32A\uD32B\uD32D\uD32E\uD32F\uD331", 6, "\uD33A\uD33E", 5, "\uD346\uD347\uD348\uD349"],
      ["bb81", "\uD34A", 31, "\uBE68\uBE6A\uBE70\uBE71\uBE73\uBE74\uBE75\uBE7B\uBE7C\uBE7D\uBE80\uBE84\uBE8C\uBE8D\uBE8F\uBE90\uBE91\uBE98\uBE99\uBEA8\uBED0\uBED1\uBED4\uBED7\uBED8\uBEE0\uBEE3\uBEE4\uBEE5\uBEEC\uBF01\uBF08\uBF09\uBF18\uBF19\uBF1B\uBF1C\uBF1D\uBF40\uBF41\uBF44\uBF48\uBF50\uBF51\uBF55\uBF94\uBFB0\uBFC5\uBFCC\uBFCD\uBFD0\uBFD4\uBFDC\uBFDF\uBFE1\uC03C\uC051\uC058\uC05C\uC060\uC068\uC069\uC090\uC091\uC094\uC098\uC0A0\uC0A1\uC0A3\uC0A5\uC0AC\uC0AD\uC0AF\uC0B0\uC0B3\uC0B4\uC0B5\uC0B6\uC0BC\uC0BD\uC0BF\uC0C0\uC0C1\uC0C5\uC0C8\uC0C9\uC0CC\uC0D0\uC0D8\uC0D9\uC0DB\uC0DC\uC0DD\uC0E4"],
      ["bc41", "\uD36A", 17, "\uD37E\uD37F\uD381\uD382\uD383\uD385\uD386\uD387"],
      ["bc61", "\uD388\uD389\uD38A\uD38B\uD38E\uD392", 5, "\uD39A\uD39B\uD39D\uD39E\uD39F\uD3A1", 6, "\uD3AA\uD3AC\uD3AE"],
      ["bc81", "\uD3AF", 4, "\uD3B5\uD3B6\uD3B7\uD3B9\uD3BA\uD3BB\uD3BD", 6, "\uD3C6\uD3C7\uD3CA", 5, "\uD3D1", 5, "\uC0E5\uC0E8\uC0EC\uC0F4\uC0F5\uC0F7\uC0F9\uC100\uC104\uC108\uC110\uC115\uC11C", 4, "\uC123\uC124\uC126\uC127\uC12C\uC12D\uC12F\uC130\uC131\uC136\uC138\uC139\uC13C\uC140\uC148\uC149\uC14B\uC14C\uC14D\uC154\uC155\uC158\uC15C\uC164\uC165\uC167\uC168\uC169\uC170\uC174\uC178\uC185\uC18C\uC18D\uC18E\uC190\uC194\uC196\uC19C\uC19D\uC19F\uC1A1\uC1A5\uC1A8\uC1A9\uC1AC\uC1B0\uC1BD\uC1C4\uC1C8\uC1CC\uC1D4\uC1D7\uC1D8\uC1E0\uC1E4\uC1E8\uC1F0\uC1F1\uC1F3\uC1FC\uC1FD\uC200\uC204\uC20C\uC20D\uC20F\uC211\uC218\uC219\uC21C\uC21F\uC220\uC228\uC229\uC22B\uC22D"],
      ["bd41", "\uD3D7\uD3D9", 7, "\uD3E2\uD3E4", 7, "\uD3EE\uD3EF\uD3F1\uD3F2\uD3F3\uD3F5\uD3F6\uD3F7"],
      ["bd61", "\uD3F8\uD3F9\uD3FA\uD3FB\uD3FE\uD400\uD402", 5, "\uD409", 13],
      ["bd81", "\uD417", 5, "\uD41E", 25, "\uC22F\uC231\uC232\uC234\uC248\uC250\uC251\uC254\uC258\uC260\uC265\uC26C\uC26D\uC270\uC274\uC27C\uC27D\uC27F\uC281\uC288\uC289\uC290\uC298\uC29B\uC29D\uC2A4\uC2A5\uC2A8\uC2AC\uC2AD\uC2B4\uC2B5\uC2B7\uC2B9\uC2DC\uC2DD\uC2E0\uC2E3\uC2E4\uC2EB\uC2EC\uC2ED\uC2EF\uC2F1\uC2F6\uC2F8\uC2F9\uC2FB\uC2FC\uC300\uC308\uC309\uC30C\uC30D\uC313\uC314\uC315\uC318\uC31C\uC324\uC325\uC328\uC329\uC345\uC368\uC369\uC36C\uC370\uC372\uC378\uC379\uC37C\uC37D\uC384\uC388\uC38C\uC3C0\uC3D8\uC3D9\uC3DC\uC3DF\uC3E0\uC3E2\uC3E8\uC3E9\uC3ED\uC3F4\uC3F5\uC3F8\uC408\uC410\uC424\uC42C\uC430"],
      ["be41", "\uD438", 7, "\uD441\uD442\uD443\uD445", 14],
      ["be61", "\uD454", 7, "\uD45D\uD45E\uD45F\uD461\uD462\uD463\uD465", 7, "\uD46E\uD470\uD471\uD472"],
      ["be81", "\uD473", 4, "\uD47A\uD47B\uD47D\uD47E\uD481\uD483", 4, "\uD48A\uD48C\uD48E", 5, "\uD495", 8, "\uC434\uC43C\uC43D\uC448\uC464\uC465\uC468\uC46C\uC474\uC475\uC479\uC480\uC494\uC49C\uC4B8\uC4BC\uC4E9\uC4F0\uC4F1\uC4F4\uC4F8\uC4FA\uC4FF\uC500\uC501\uC50C\uC510\uC514\uC51C\uC528\uC529\uC52C\uC530\uC538\uC539\uC53B\uC53D\uC544\uC545\uC548\uC549\uC54A\uC54C\uC54D\uC54E\uC553\uC554\uC555\uC557\uC558\uC559\uC55D\uC55E\uC560\uC561\uC564\uC568\uC570\uC571\uC573\uC574\uC575\uC57C\uC57D\uC580\uC584\uC587\uC58C\uC58D\uC58F\uC591\uC595\uC597\uC598\uC59C\uC5A0\uC5A9\uC5B4\uC5B5\uC5B8\uC5B9\uC5BB\uC5BC\uC5BD\uC5BE\uC5C4", 6, "\uC5CC\uC5CE"],
      ["bf41", "\uD49E", 10, "\uD4AA", 14],
      ["bf61", "\uD4B9", 18, "\uD4CD\uD4CE\uD4CF\uD4D1\uD4D2\uD4D3\uD4D5"],
      ["bf81", "\uD4D6", 5, "\uD4DD\uD4DE\uD4E0", 7, "\uD4E9\uD4EA\uD4EB\uD4ED\uD4EE\uD4EF\uD4F1", 6, "\uD4F9\uD4FA\uD4FC\uC5D0\uC5D1\uC5D4\uC5D8\uC5E0\uC5E1\uC5E3\uC5E5\uC5EC\uC5ED\uC5EE\uC5F0\uC5F4\uC5F6\uC5F7\uC5FC", 5, "\uC605\uC606\uC607\uC608\uC60C\uC610\uC618\uC619\uC61B\uC61C\uC624\uC625\uC628\uC62C\uC62D\uC62E\uC630\uC633\uC634\uC635\uC637\uC639\uC63B\uC640\uC641\uC644\uC648\uC650\uC651\uC653\uC654\uC655\uC65C\uC65D\uC660\uC66C\uC66F\uC671\uC678\uC679\uC67C\uC680\uC688\uC689\uC68B\uC68D\uC694\uC695\uC698\uC69C\uC6A4\uC6A5\uC6A7\uC6A9\uC6B0\uC6B1\uC6B4\uC6B8\uC6B9\uC6BA\uC6C0\uC6C1\uC6C3\uC6C5\uC6CC\uC6CD\uC6D0\uC6D4\uC6DC\uC6DD\uC6E0\uC6E1\uC6E8"],
      ["c041", "\uD4FE", 5, "\uD505\uD506\uD507\uD509\uD50A\uD50B\uD50D", 6, "\uD516\uD518", 5],
      ["c061", "\uD51E", 25],
      ["c081", "\uD538\uD539\uD53A\uD53B\uD53E\uD53F\uD541\uD542\uD543\uD545", 6, "\uD54E\uD550\uD552", 5, "\uD55A\uD55B\uD55D\uD55E\uD55F\uD561\uD562\uD563\uC6E9\uC6EC\uC6F0\uC6F8\uC6F9\uC6FD\uC704\uC705\uC708\uC70C\uC714\uC715\uC717\uC719\uC720\uC721\uC724\uC728\uC730\uC731\uC733\uC735\uC737\uC73C\uC73D\uC740\uC744\uC74A\uC74C\uC74D\uC74F\uC751", 7, "\uC75C\uC760\uC768\uC76B\uC774\uC775\uC778\uC77C\uC77D\uC77E\uC783\uC784\uC785\uC787\uC788\uC789\uC78A\uC78E\uC790\uC791\uC794\uC796\uC797\uC798\uC79A\uC7A0\uC7A1\uC7A3\uC7A4\uC7A5\uC7A6\uC7AC\uC7AD\uC7B0\uC7B4\uC7BC\uC7BD\uC7BF\uC7C0\uC7C1\uC7C8\uC7C9\uC7CC\uC7CE\uC7D0\uC7D8\uC7DD\uC7E4\uC7E8\uC7EC\uC800\uC801\uC804\uC808\uC80A"],
      ["c141", "\uD564\uD566\uD567\uD56A\uD56C\uD56E", 5, "\uD576\uD577\uD579\uD57A\uD57B\uD57D", 6, "\uD586\uD58A\uD58B"],
      ["c161", "\uD58C\uD58D\uD58E\uD58F\uD591", 19, "\uD5A6\uD5A7"],
      ["c181", "\uD5A8", 31, "\uC810\uC811\uC813\uC815\uC816\uC81C\uC81D\uC820\uC824\uC82C\uC82D\uC82F\uC831\uC838\uC83C\uC840\uC848\uC849\uC84C\uC84D\uC854\uC870\uC871\uC874\uC878\uC87A\uC880\uC881\uC883\uC885\uC886\uC887\uC88B\uC88C\uC88D\uC894\uC89D\uC89F\uC8A1\uC8A8\uC8BC\uC8BD\uC8C4\uC8C8\uC8CC\uC8D4\uC8D5\uC8D7\uC8D9\uC8E0\uC8E1\uC8E4\uC8F5\uC8FC\uC8FD\uC900\uC904\uC905\uC906\uC90C\uC90D\uC90F\uC911\uC918\uC92C\uC934\uC950\uC951\uC954\uC958\uC960\uC961\uC963\uC96C\uC970\uC974\uC97C\uC988\uC989\uC98C\uC990\uC998\uC999\uC99B\uC99D\uC9C0\uC9C1\uC9C4\uC9C7\uC9C8\uC9CA\uC9D0\uC9D1\uC9D3"],
      ["c241", "\uD5CA\uD5CB\uD5CD\uD5CE\uD5CF\uD5D1\uD5D3", 4, "\uD5DA\uD5DC\uD5DE", 5, "\uD5E6\uD5E7\uD5E9\uD5EA\uD5EB\uD5ED\uD5EE"],
      ["c261", "\uD5EF", 4, "\uD5F6\uD5F8\uD5FA", 5, "\uD602\uD603\uD605\uD606\uD607\uD609", 6, "\uD612"],
      ["c281", "\uD616", 5, "\uD61D\uD61E\uD61F\uD621\uD622\uD623\uD625", 7, "\uD62E", 9, "\uD63A\uD63B\uC9D5\uC9D6\uC9D9\uC9DA\uC9DC\uC9DD\uC9E0\uC9E2\uC9E4\uC9E7\uC9EC\uC9ED\uC9EF\uC9F0\uC9F1\uC9F8\uC9F9\uC9FC\uCA00\uCA08\uCA09\uCA0B\uCA0C\uCA0D\uCA14\uCA18\uCA29\uCA4C\uCA4D\uCA50\uCA54\uCA5C\uCA5D\uCA5F\uCA60\uCA61\uCA68\uCA7D\uCA84\uCA98\uCABC\uCABD\uCAC0\uCAC4\uCACC\uCACD\uCACF\uCAD1\uCAD3\uCAD8\uCAD9\uCAE0\uCAEC\uCAF4\uCB08\uCB10\uCB14\uCB18\uCB20\uCB21\uCB41\uCB48\uCB49\uCB4C\uCB50\uCB58\uCB59\uCB5D\uCB64\uCB78\uCB79\uCB9C\uCBB8\uCBD4\uCBE4\uCBE7\uCBE9\uCC0C\uCC0D\uCC10\uCC14\uCC1C\uCC1D\uCC21\uCC22\uCC27\uCC28\uCC29\uCC2C\uCC2E\uCC30\uCC38\uCC39\uCC3B"],
      ["c341", "\uD63D\uD63E\uD63F\uD641\uD642\uD643\uD644\uD646\uD647\uD64A\uD64C\uD64E\uD64F\uD650\uD652\uD653\uD656\uD657\uD659\uD65A\uD65B\uD65D", 4],
      ["c361", "\uD662", 4, "\uD668\uD66A", 5, "\uD672\uD673\uD675", 11],
      ["c381", "\uD681\uD682\uD684\uD686", 5, "\uD68E\uD68F\uD691\uD692\uD693\uD695", 7, "\uD69E\uD6A0\uD6A2", 5, "\uD6A9\uD6AA\uCC3C\uCC3D\uCC3E\uCC44\uCC45\uCC48\uCC4C\uCC54\uCC55\uCC57\uCC58\uCC59\uCC60\uCC64\uCC66\uCC68\uCC70\uCC75\uCC98\uCC99\uCC9C\uCCA0\uCCA8\uCCA9\uCCAB\uCCAC\uCCAD\uCCB4\uCCB5\uCCB8\uCCBC\uCCC4\uCCC5\uCCC7\uCCC9\uCCD0\uCCD4\uCCE4\uCCEC\uCCF0\uCD01\uCD08\uCD09\uCD0C\uCD10\uCD18\uCD19\uCD1B\uCD1D\uCD24\uCD28\uCD2C\uCD39\uCD5C\uCD60\uCD64\uCD6C\uCD6D\uCD6F\uCD71\uCD78\uCD88\uCD94\uCD95\uCD98\uCD9C\uCDA4\uCDA5\uCDA7\uCDA9\uCDB0\uCDC4\uCDCC\uCDD0\uCDE8\uCDEC\uCDF0\uCDF8\uCDF9\uCDFB\uCDFD\uCE04\uCE08\uCE0C\uCE14\uCE19\uCE20\uCE21\uCE24\uCE28\uCE30\uCE31\uCE33\uCE35"],
      ["c441", "\uD6AB\uD6AD\uD6AE\uD6AF\uD6B1", 7, "\uD6BA\uD6BC", 7, "\uD6C6\uD6C7\uD6C9\uD6CA\uD6CB"],
      ["c461", "\uD6CD\uD6CE\uD6CF\uD6D0\uD6D2\uD6D3\uD6D5\uD6D6\uD6D8\uD6DA", 5, "\uD6E1\uD6E2\uD6E3\uD6E5\uD6E6\uD6E7\uD6E9", 4],
      ["c481", "\uD6EE\uD6EF\uD6F1\uD6F2\uD6F3\uD6F4\uD6F6", 5, "\uD6FE\uD6FF\uD701\uD702\uD703\uD705", 11, "\uD712\uD713\uD714\uCE58\uCE59\uCE5C\uCE5F\uCE60\uCE61\uCE68\uCE69\uCE6B\uCE6D\uCE74\uCE75\uCE78\uCE7C\uCE84\uCE85\uCE87\uCE89\uCE90\uCE91\uCE94\uCE98\uCEA0\uCEA1\uCEA3\uCEA4\uCEA5\uCEAC\uCEAD\uCEC1\uCEE4\uCEE5\uCEE8\uCEEB\uCEEC\uCEF4\uCEF5\uCEF7\uCEF8\uCEF9\uCF00\uCF01\uCF04\uCF08\uCF10\uCF11\uCF13\uCF15\uCF1C\uCF20\uCF24\uCF2C\uCF2D\uCF2F\uCF30\uCF31\uCF38\uCF54\uCF55\uCF58\uCF5C\uCF64\uCF65\uCF67\uCF69\uCF70\uCF71\uCF74\uCF78\uCF80\uCF85\uCF8C\uCFA1\uCFA8\uCFB0\uCFC4\uCFE0\uCFE1\uCFE4\uCFE8\uCFF0\uCFF1\uCFF3\uCFF5\uCFFC\uD000\uD004\uD011\uD018\uD02D\uD034\uD035\uD038\uD03C"],
      ["c541", "\uD715\uD716\uD717\uD71A\uD71B\uD71D\uD71E\uD71F\uD721", 6, "\uD72A\uD72C\uD72E", 5, "\uD736\uD737\uD739"],
      ["c561", "\uD73A\uD73B\uD73D", 6, "\uD745\uD746\uD748\uD74A", 5, "\uD752\uD753\uD755\uD75A", 4],
      ["c581", "\uD75F\uD762\uD764\uD766\uD767\uD768\uD76A\uD76B\uD76D\uD76E\uD76F\uD771\uD772\uD773\uD775", 6, "\uD77E\uD77F\uD780\uD782", 5, "\uD78A\uD78B\uD044\uD045\uD047\uD049\uD050\uD054\uD058\uD060\uD06C\uD06D\uD070\uD074\uD07C\uD07D\uD081\uD0A4\uD0A5\uD0A8\uD0AC\uD0B4\uD0B5\uD0B7\uD0B9\uD0C0\uD0C1\uD0C4\uD0C8\uD0C9\uD0D0\uD0D1\uD0D3\uD0D4\uD0D5\uD0DC\uD0DD\uD0E0\uD0E4\uD0EC\uD0ED\uD0EF\uD0F0\uD0F1\uD0F8\uD10D\uD130\uD131\uD134\uD138\uD13A\uD140\uD141\uD143\uD144\uD145\uD14C\uD14D\uD150\uD154\uD15C\uD15D\uD15F\uD161\uD168\uD16C\uD17C\uD184\uD188\uD1A0\uD1A1\uD1A4\uD1A8\uD1B0\uD1B1\uD1B3\uD1B5\uD1BA\uD1BC\uD1C0\uD1D8\uD1F4\uD1F8\uD207\uD209\uD210\uD22C\uD22D\uD230\uD234\uD23C\uD23D\uD23F\uD241\uD248\uD25C"],
      ["c641", "\uD78D\uD78E\uD78F\uD791", 6, "\uD79A\uD79C\uD79E", 5],
      ["c6a1", "\uD264\uD280\uD281\uD284\uD288\uD290\uD291\uD295\uD29C\uD2A0\uD2A4\uD2AC\uD2B1\uD2B8\uD2B9\uD2BC\uD2BF\uD2C0\uD2C2\uD2C8\uD2C9\uD2CB\uD2D4\uD2D8\uD2DC\uD2E4\uD2E5\uD2F0\uD2F1\uD2F4\uD2F8\uD300\uD301\uD303\uD305\uD30C\uD30D\uD30E\uD310\uD314\uD316\uD31C\uD31D\uD31F\uD320\uD321\uD325\uD328\uD329\uD32C\uD330\uD338\uD339\uD33B\uD33C\uD33D\uD344\uD345\uD37C\uD37D\uD380\uD384\uD38C\uD38D\uD38F\uD390\uD391\uD398\uD399\uD39C\uD3A0\uD3A8\uD3A9\uD3AB\uD3AD\uD3B4\uD3B8\uD3BC\uD3C4\uD3C5\uD3C8\uD3C9\uD3D0\uD3D8\uD3E1\uD3E3\uD3EC\uD3ED\uD3F0\uD3F4\uD3FC\uD3FD\uD3FF\uD401"],
      ["c7a1", "\uD408\uD41D\uD440\uD444\uD45C\uD460\uD464\uD46D\uD46F\uD478\uD479\uD47C\uD47F\uD480\uD482\uD488\uD489\uD48B\uD48D\uD494\uD4A9\uD4CC\uD4D0\uD4D4\uD4DC\uD4DF\uD4E8\uD4EC\uD4F0\uD4F8\uD4FB\uD4FD\uD504\uD508\uD50C\uD514\uD515\uD517\uD53C\uD53D\uD540\uD544\uD54C\uD54D\uD54F\uD551\uD558\uD559\uD55C\uD560\uD565\uD568\uD569\uD56B\uD56D\uD574\uD575\uD578\uD57C\uD584\uD585\uD587\uD588\uD589\uD590\uD5A5\uD5C8\uD5C9\uD5CC\uD5D0\uD5D2\uD5D8\uD5D9\uD5DB\uD5DD\uD5E4\uD5E5\uD5E8\uD5EC\uD5F4\uD5F5\uD5F7\uD5F9\uD600\uD601\uD604\uD608\uD610\uD611\uD613\uD614\uD615\uD61C\uD620"],
      ["c8a1", "\uD624\uD62D\uD638\uD639\uD63C\uD640\uD645\uD648\uD649\uD64B\uD64D\uD651\uD654\uD655\uD658\uD65C\uD667\uD669\uD670\uD671\uD674\uD683\uD685\uD68C\uD68D\uD690\uD694\uD69D\uD69F\uD6A1\uD6A8\uD6AC\uD6B0\uD6B9\uD6BB\uD6C4\uD6C5\uD6C8\uD6CC\uD6D1\uD6D4\uD6D7\uD6D9\uD6E0\uD6E4\uD6E8\uD6F0\uD6F5\uD6FC\uD6FD\uD700\uD704\uD711\uD718\uD719\uD71C\uD720\uD728\uD729\uD72B\uD72D\uD734\uD735\uD738\uD73C\uD744\uD747\uD749\uD750\uD751\uD754\uD756\uD757\uD758\uD759\uD760\uD761\uD763\uD765\uD769\uD76C\uD770\uD774\uD77C\uD77D\uD781\uD788\uD789\uD78C\uD790\uD798\uD799\uD79B\uD79D"],
      ["caa1", "\u4F3D\u4F73\u5047\u50F9\u52A0\u53EF\u5475\u54E5\u5609\u5AC1\u5BB6\u6687\u67B6\u67B7\u67EF\u6B4C\u73C2\u75C2\u7A3C\u82DB\u8304\u8857\u8888\u8A36\u8CC8\u8DCF\u8EFB\u8FE6\u99D5\u523B\u5374\u5404\u606A\u6164\u6BBC\u73CF\u811A\u89BA\u89D2\u95A3\u4F83\u520A\u58BE\u5978\u59E6\u5E72\u5E79\u61C7\u63C0\u6746\u67EC\u687F\u6F97\u764E\u770B\u78F5\u7A08\u7AFF\u7C21\u809D\u826E\u8271\u8AEB\u9593\u4E6B\u559D\u66F7\u6E34\u78A3\u7AED\u845B\u8910\u874E\u97A8\u52D8\u574E\u582A\u5D4C\u611F\u61BE\u6221\u6562\u67D1\u6A44\u6E1B\u7518\u75B3\u76E3\u77B0\u7D3A\u90AF\u9451\u9452\u9F95"],
      ["cba1", "\u5323\u5CAC\u7532\u80DB\u9240\u9598\u525B\u5808\u59DC\u5CA1\u5D17\u5EB7\u5F3A\u5F4A\u6177\u6C5F\u757A\u7586\u7CE0\u7D73\u7DB1\u7F8C\u8154\u8221\u8591\u8941\u8B1B\u92FC\u964D\u9C47\u4ECB\u4EF7\u500B\u51F1\u584F\u6137\u613E\u6168\u6539\u69EA\u6F11\u75A5\u7686\u76D6\u7B87\u82A5\u84CB\uF900\u93A7\u958B\u5580\u5BA2\u5751\uF901\u7CB3\u7FB9\u91B5\u5028\u53BB\u5C45\u5DE8\u62D2\u636E\u64DA\u64E7\u6E20\u70AC\u795B\u8DDD\u8E1E\uF902\u907D\u9245\u92F8\u4E7E\u4EF6\u5065\u5DFE\u5EFA\u6106\u6957\u8171\u8654\u8E47\u9375\u9A2B\u4E5E\u5091\u6770\u6840\u5109\u528D\u5292\u6AA2"],
      ["cca1", "\u77BC\u9210\u9ED4\u52AB\u602F\u8FF2\u5048\u61A9\u63ED\u64CA\u683C\u6A84\u6FC0\u8188\u89A1\u9694\u5805\u727D\u72AC\u7504\u7D79\u7E6D\u80A9\u898B\u8B74\u9063\u9D51\u6289\u6C7A\u6F54\u7D50\u7F3A\u8A23\u517C\u614A\u7B9D\u8B19\u9257\u938C\u4EAC\u4FD3\u501E\u50BE\u5106\u52C1\u52CD\u537F\u5770\u5883\u5E9A\u5F91\u6176\u61AC\u64CE\u656C\u666F\u66BB\u66F4\u6897\u6D87\u7085\u70F1\u749F\u74A5\u74CA\u75D9\u786C\u78EC\u7ADF\u7AF6\u7D45\u7D93\u8015\u803F\u811B\u8396\u8B66\u8F15\u9015\u93E1\u9803\u9838\u9A5A\u9BE8\u4FC2\u5553\u583A\u5951\u5B63\u5C46\u60B8\u6212\u6842\u68B0"],
      ["cda1", "\u68E8\u6EAA\u754C\u7678\u78CE\u7A3D\u7CFB\u7E6B\u7E7C\u8A08\u8AA1\u8C3F\u968E\u9DC4\u53E4\u53E9\u544A\u5471\u56FA\u59D1\u5B64\u5C3B\u5EAB\u62F7\u6537\u6545\u6572\u66A0\u67AF\u69C1\u6CBD\u75FC\u7690\u777E\u7A3F\u7F94\u8003\u80A1\u818F\u82E6\u82FD\u83F0\u85C1\u8831\u88B4\u8AA5\uF903\u8F9C\u932E\u96C7\u9867\u9AD8\u9F13\u54ED\u659B\u66F2\u688F\u7A40\u8C37\u9D60\u56F0\u5764\u5D11\u6606\u68B1\u68CD\u6EFE\u7428\u889E\u9BE4\u6C68\uF904\u9AA8\u4F9B\u516C\u5171\u529F\u5B54\u5DE5\u6050\u606D\u62F1\u63A7\u653B\u73D9\u7A7A\u86A3\u8CA2\u978F\u4E32\u5BE1\u6208\u679C\u74DC"],
      ["cea1", "\u79D1\u83D3\u8A87\u8AB2\u8DE8\u904E\u934B\u9846\u5ED3\u69E8\u85FF\u90ED\uF905\u51A0\u5B98\u5BEC\u6163\u68FA\u6B3E\u704C\u742F\u74D8\u7BA1\u7F50\u83C5\u89C0\u8CAB\u95DC\u9928\u522E\u605D\u62EC\u9002\u4F8A\u5149\u5321\u58D9\u5EE3\u66E0\u6D38\u709A\u72C2\u73D6\u7B50\u80F1\u945B\u5366\u639B\u7F6B\u4E56\u5080\u584A\u58DE\u602A\u6127\u62D0\u69D0\u9B41\u5B8F\u7D18\u80B1\u8F5F\u4EA4\u50D1\u54AC\u55AC\u5B0C\u5DA0\u5DE7\u652A\u654E\u6821\u6A4B\u72E1\u768E\u77EF\u7D5E\u7FF9\u81A0\u854E\u86DF\u8F03\u8F4E\u90CA\u9903\u9A55\u9BAB\u4E18\u4E45\u4E5D\u4EC7\u4FF1\u5177\u52FE"],
      ["cfa1", "\u5340\u53E3\u53E5\u548E\u5614\u5775\u57A2\u5BC7\u5D87\u5ED0\u61FC\u62D8\u6551\u67B8\u67E9\u69CB\u6B50\u6BC6\u6BEC\u6C42\u6E9D\u7078\u72D7\u7396\u7403\u77BF\u77E9\u7A76\u7D7F\u8009\u81FC\u8205\u820A\u82DF\u8862\u8B33\u8CFC\u8EC0\u9011\u90B1\u9264\u92B6\u99D2\u9A45\u9CE9\u9DD7\u9F9C\u570B\u5C40\u83CA\u97A0\u97AB\u9EB4\u541B\u7A98\u7FA4\u88D9\u8ECD\u90E1\u5800\u5C48\u6398\u7A9F\u5BAE\u5F13\u7A79\u7AAE\u828E\u8EAC\u5026\u5238\u52F8\u5377\u5708\u62F3\u6372\u6B0A\u6DC3\u7737\u53A5\u7357\u8568\u8E76\u95D5\u673A\u6AC3\u6F70\u8A6D\u8ECC\u994B\uF906\u6677\u6B78\u8CB4"],
      ["d0a1", "\u9B3C\uF907\u53EB\u572D\u594E\u63C6\u69FB\u73EA\u7845\u7ABA\u7AC5\u7CFE\u8475\u898F\u8D73\u9035\u95A8\u52FB\u5747\u7547\u7B60\u83CC\u921E\uF908\u6A58\u514B\u524B\u5287\u621F\u68D8\u6975\u9699\u50C5\u52A4\u52E4\u61C3\u65A4\u6839\u69FF\u747E\u7B4B\u82B9\u83EB\u89B2\u8B39\u8FD1\u9949\uF909\u4ECA\u5997\u64D2\u6611\u6A8E\u7434\u7981\u79BD\u82A9\u887E\u887F\u895F\uF90A\u9326\u4F0B\u53CA\u6025\u6271\u6C72\u7D1A\u7D66\u4E98\u5162\u77DC\u80AF\u4F01\u4F0E\u5176\u5180\u55DC\u5668\u573B\u57FA\u57FC\u5914\u5947\u5993\u5BC4\u5C90\u5D0E\u5DF1\u5E7E\u5FCC\u6280\u65D7\u65E3"],
      ["d1a1", "\u671E\u671F\u675E\u68CB\u68C4\u6A5F\u6B3A\u6C23\u6C7D\u6C82\u6DC7\u7398\u7426\u742A\u7482\u74A3\u7578\u757F\u7881\u78EF\u7941\u7947\u7948\u797A\u7B95\u7D00\u7DBA\u7F88\u8006\u802D\u808C\u8A18\u8B4F\u8C48\u8D77\u9321\u9324\u98E2\u9951\u9A0E\u9A0F\u9A65\u9E92\u7DCA\u4F76\u5409\u62EE\u6854\u91D1\u55AB\u513A\uF90B\uF90C\u5A1C\u61E6\uF90D\u62CF\u62FF\uF90E", 5, "\u90A3\uF914", 4, "\u8AFE\uF919\uF91A\uF91B\uF91C\u6696\uF91D\u7156\uF91E\uF91F\u96E3\uF920\u634F\u637A\u5357\uF921\u678F\u6960\u6E73\uF922\u7537\uF923\uF924\uF925"],
      ["d2a1", "\u7D0D\uF926\uF927\u8872\u56CA\u5A18\uF928", 4, "\u4E43\uF92D\u5167\u5948\u67F0\u8010\uF92E\u5973\u5E74\u649A\u79CA\u5FF5\u606C\u62C8\u637B\u5BE7\u5BD7\u52AA\uF92F\u5974\u5F29\u6012\uF930\uF931\uF932\u7459\uF933", 5, "\u99D1\uF939", 10, "\u6FC3\uF944\uF945\u81BF\u8FB2\u60F1\uF946\uF947\u8166\uF948\uF949\u5C3F\uF94A", 7, "\u5AE9\u8A25\u677B\u7D10\uF952", 5, "\u80FD\uF958\uF959\u5C3C\u6CE5\u533F\u6EBA\u591A\u8336"],
      ["d3a1", "\u4E39\u4EB6\u4F46\u55AE\u5718\u58C7\u5F56\u65B7\u65E6\u6A80\u6BB5\u6E4D\u77ED\u7AEF\u7C1E\u7DDE\u86CB\u8892\u9132\u935B\u64BB\u6FBE\u737A\u75B8\u9054\u5556\u574D\u61BA\u64D4\u66C7\u6DE1\u6E5B\u6F6D\u6FB9\u75F0\u8043\u81BD\u8541\u8983\u8AC7\u8B5A\u931F\u6C93\u7553\u7B54\u8E0F\u905D\u5510\u5802\u5858\u5E62\u6207\u649E\u68E0\u7576\u7CD6\u87B3\u9EE8\u4EE3\u5788\u576E\u5927\u5C0D\u5CB1\u5E36\u5F85\u6234\u64E1\u73B3\u81FA\u888B\u8CB8\u968A\u9EDB\u5B85\u5FB7\u60B3\u5012\u5200\u5230\u5716\u5835\u5857\u5C0E\u5C60\u5CF6\u5D8B\u5EA6\u5F92\u60BC\u6311\u6389\u6417\u6843"],
      ["d4a1", "\u68F9\u6AC2\u6DD8\u6E21\u6ED4\u6FE4\u71FE\u76DC\u7779\u79B1\u7A3B\u8404\u89A9\u8CED\u8DF3\u8E48\u9003\u9014\u9053\u90FD\u934D\u9676\u97DC\u6BD2\u7006\u7258\u72A2\u7368\u7763\u79BF\u7BE4\u7E9B\u8B80\u58A9\u60C7\u6566\u65FD\u66BE\u6C8C\u711E\u71C9\u8C5A\u9813\u4E6D\u7A81\u4EDD\u51AC\u51CD\u52D5\u540C\u61A7\u6771\u6850\u68DF\u6D1E\u6F7C\u75BC\u77B3\u7AE5\u80F4\u8463\u9285\u515C\u6597\u675C\u6793\u75D8\u7AC7\u8373\uF95A\u8C46\u9017\u982D\u5C6F\u81C0\u829A\u9041\u906F\u920D\u5F97\u5D9D\u6A59\u71C8\u767B\u7B49\u85E4\u8B04\u9127\u9A30\u5587\u61F6\uF95B\u7669\u7F85"],
      ["d5a1", "\u863F\u87BA\u88F8\u908F\uF95C\u6D1B\u70D9\u73DE\u7D61\u843D\uF95D\u916A\u99F1\uF95E\u4E82\u5375\u6B04\u6B12\u703E\u721B\u862D\u9E1E\u524C\u8FA3\u5D50\u64E5\u652C\u6B16\u6FEB\u7C43\u7E9C\u85CD\u8964\u89BD\u62C9\u81D8\u881F\u5ECA\u6717\u6D6A\u72FC\u7405\u746F\u8782\u90DE\u4F86\u5D0D\u5FA0\u840A\u51B7\u63A0\u7565\u4EAE\u5006\u5169\u51C9\u6881\u6A11\u7CAE\u7CB1\u7CE7\u826F\u8AD2\u8F1B\u91CF\u4FB6\u5137\u52F5\u5442\u5EEC\u616E\u623E\u65C5\u6ADA\u6FFE\u792A\u85DC\u8823\u95AD\u9A62\u9A6A\u9E97\u9ECE\u529B\u66C6\u6B77\u701D\u792B\u8F62\u9742\u6190\u6200\u6523\u6F23"],
      ["d6a1", "\u7149\u7489\u7DF4\u806F\u84EE\u8F26\u9023\u934A\u51BD\u5217\u52A3\u6D0C\u70C8\u88C2\u5EC9\u6582\u6BAE\u6FC2\u7C3E\u7375\u4EE4\u4F36\u56F9\uF95F\u5CBA\u5DBA\u601C\u73B2\u7B2D\u7F9A\u7FCE\u8046\u901E\u9234\u96F6\u9748\u9818\u9F61\u4F8B\u6FA7\u79AE\u91B4\u96B7\u52DE\uF960\u6488\u64C4\u6AD3\u6F5E\u7018\u7210\u76E7\u8001\u8606\u865C\u8DEF\u8F05\u9732\u9B6F\u9DFA\u9E75\u788C\u797F\u7DA0\u83C9\u9304\u9E7F\u9E93\u8AD6\u58DF\u5F04\u6727\u7027\u74CF\u7C60\u807E\u5121\u7028\u7262\u78CA\u8CC2\u8CDA\u8CF4\u96F7\u4E86\u50DA\u5BEE\u5ED6\u6599\u71CE\u7642\u77AD\u804A\u84FC"],
      ["d7a1", "\u907C\u9B27\u9F8D\u58D8\u5A41\u5C62\u6A13\u6DDA\u6F0F\u763B\u7D2F\u7E37\u851E\u8938\u93E4\u964B\u5289\u65D2\u67F3\u69B4\u6D41\u6E9C\u700F\u7409\u7460\u7559\u7624\u786B\u8B2C\u985E\u516D\u622E\u9678\u4F96\u502B\u5D19\u6DEA\u7DB8\u8F2A\u5F8B\u6144\u6817\uF961\u9686\u52D2\u808B\u51DC\u51CC\u695E\u7A1C\u7DBE\u83F1\u9675\u4FDA\u5229\u5398\u540F\u550E\u5C65\u60A7\u674E\u68A8\u6D6C\u7281\u72F8\u7406\u7483\uF962\u75E2\u7C6C\u7F79\u7FB8\u8389\u88CF\u88E1\u91CC\u91D0\u96E2\u9BC9\u541D\u6F7E\u71D0\u7498\u85FA\u8EAA\u96A3\u9C57\u9E9F\u6797\u6DCB\u7433\u81E8\u9716\u782C"],
      ["d8a1", "\u7ACB\u7B20\u7C92\u6469\u746A\u75F2\u78BC\u78E8\u99AC\u9B54\u9EBB\u5BDE\u5E55\u6F20\u819C\u83AB\u9088\u4E07\u534D\u5A29\u5DD2\u5F4E\u6162\u633D\u6669\u66FC\u6EFF\u6F2B\u7063\u779E\u842C\u8513\u883B\u8F13\u9945\u9C3B\u551C\u62B9\u672B\u6CAB\u8309\u896A\u977A\u4EA1\u5984\u5FD8\u5FD9\u671B\u7DB2\u7F54\u8292\u832B\u83BD\u8F1E\u9099\u57CB\u59B9\u5A92\u5BD0\u6627\u679A\u6885\u6BCF\u7164\u7F75\u8CB7\u8CE3\u9081\u9B45\u8108\u8C8A\u964C\u9A40\u9EA5\u5B5F\u6C13\u731B\u76F2\u76DF\u840C\u51AA\u8993\u514D\u5195\u52C9\u68C9\u6C94\u7704\u7720\u7DBF\u7DEC\u9762\u9EB5\u6EC5"],
      ["d9a1", "\u8511\u51A5\u540D\u547D\u660E\u669D\u6927\u6E9F\u76BF\u7791\u8317\u84C2\u879F\u9169\u9298\u9CF4\u8882\u4FAE\u5192\u52DF\u59C6\u5E3D\u6155\u6478\u6479\u66AE\u67D0\u6A21\u6BCD\u6BDB\u725F\u7261\u7441\u7738\u77DB\u8017\u82BC\u8305\u8B00\u8B28\u8C8C\u6728\u6C90\u7267\u76EE\u7766\u7A46\u9DA9\u6B7F\u6C92\u5922\u6726\u8499\u536F\u5893\u5999\u5EDF\u63CF\u6634\u6773\u6E3A\u732B\u7AD7\u82D7\u9328\u52D9\u5DEB\u61AE\u61CB\u620A\u62C7\u64AB\u65E0\u6959\u6B66\u6BCB\u7121\u73F7\u755D\u7E46\u821E\u8302\u856A\u8AA3\u8CBF\u9727\u9D61\u58A8\u9ED8\u5011\u520E\u543B\u554F\u6587"],
      ["daa1", "\u6C76\u7D0A\u7D0B\u805E\u868A\u9580\u96EF\u52FF\u6C95\u7269\u5473\u5A9A\u5C3E\u5D4B\u5F4C\u5FAE\u672A\u68B6\u6963\u6E3C\u6E44\u7709\u7C73\u7F8E\u8587\u8B0E\u8FF7\u9761\u9EF4\u5CB7\u60B6\u610D\u61AB\u654F\u65FB\u65FC\u6C11\u6CEF\u739F\u73C9\u7DE1\u9594\u5BC6\u871C\u8B10\u525D\u535A\u62CD\u640F\u64B2\u6734\u6A38\u6CCA\u73C0\u749E\u7B94\u7C95\u7E1B\u818A\u8236\u8584\u8FEB\u96F9\u99C1\u4F34\u534A\u53CD\u53DB\u62CC\u642C\u6500\u6591\u69C3\u6CEE\u6F58\u73ED\u7554\u7622\u76E4\u76FC\u78D0\u78FB\u792C\u7D46\u822C\u87E0\u8FD4\u9812\u98EF\u52C3\u62D4\u64A5\u6E24\u6F51"],
      ["dba1", "\u767C\u8DCB\u91B1\u9262\u9AEE\u9B43\u5023\u508D\u574A\u59A8\u5C28\u5E47\u5F77\u623F\u653E\u65B9\u65C1\u6609\u678B\u699C\u6EC2\u78C5\u7D21\u80AA\u8180\u822B\u82B3\u84A1\u868C\u8A2A\u8B17\u90A6\u9632\u9F90\u500D\u4FF3\uF963\u57F9\u5F98\u62DC\u6392\u676F\u6E43\u7119\u76C3\u80CC\u80DA\u88F4\u88F5\u8919\u8CE0\u8F29\u914D\u966A\u4F2F\u4F70\u5E1B\u67CF\u6822\u767D\u767E\u9B44\u5E61\u6A0A\u7169\u71D4\u756A\uF964\u7E41\u8543\u85E9\u98DC\u4F10\u7B4F\u7F70\u95A5\u51E1\u5E06\u68B5\u6C3E\u6C4E\u6CDB\u72AF\u7BC4\u8303\u6CD5\u743A\u50FB\u5288\u58C1\u64D8\u6A97\u74A7\u7656"],
      ["dca1", "\u78A7\u8617\u95E2\u9739\uF965\u535E\u5F01\u8B8A\u8FA8\u8FAF\u908A\u5225\u77A5\u9C49\u9F08\u4E19\u5002\u5175\u5C5B\u5E77\u661E\u663A\u67C4\u68C5\u70B3\u7501\u75C5\u79C9\u7ADD\u8F27\u9920\u9A08\u4FDD\u5821\u5831\u5BF6\u666E\u6B65\u6D11\u6E7A\u6F7D\u73E4\u752B\u83E9\u88DC\u8913\u8B5C\u8F14\u4F0F\u50D5\u5310\u535C\u5B93\u5FA9\u670D\u798F\u8179\u832F\u8514\u8907\u8986\u8F39\u8F3B\u99A5\u9C12\u672C\u4E76\u4FF8\u5949\u5C01\u5CEF\u5CF0\u6367\u68D2\u70FD\u71A2\u742B\u7E2B\u84EC\u8702\u9022\u92D2\u9CF3\u4E0D\u4ED8\u4FEF\u5085\u5256\u526F\u5426\u5490\u57E0\u592B\u5A66"],
      ["dda1", "\u5B5A\u5B75\u5BCC\u5E9C\uF966\u6276\u6577\u65A7\u6D6E\u6EA5\u7236\u7B26\u7C3F\u7F36\u8150\u8151\u819A\u8240\u8299\u83A9\u8A03\u8CA0\u8CE6\u8CFB\u8D74\u8DBA\u90E8\u91DC\u961C\u9644\u99D9\u9CE7\u5317\u5206\u5429\u5674\u58B3\u5954\u596E\u5FFF\u61A4\u626E\u6610\u6C7E\u711A\u76C6\u7C89\u7CDE\u7D1B\u82AC\u8CC1\u96F0\uF967\u4F5B\u5F17\u5F7F\u62C2\u5D29\u670B\u68DA\u787C\u7E43\u9D6C\u4E15\u5099\u5315\u532A\u5351\u5983\u5A62\u5E87\u60B2\u618A\u6249\u6279\u6590\u6787\u69A7\u6BD4\u6BD6\u6BD7\u6BD8\u6CB8\uF968\u7435\u75FA\u7812\u7891\u79D5\u79D8\u7C83\u7DCB\u7FE1\u80A5"],
      ["dea1", "\u813E\u81C2\u83F2\u871A\u88E8\u8AB9\u8B6C\u8CBB\u9119\u975E\u98DB\u9F3B\u56AC\u5B2A\u5F6C\u658C\u6AB3\u6BAF\u6D5C\u6FF1\u7015\u725D\u73AD\u8CA7\u8CD3\u983B\u6191\u6C37\u8058\u9A01\u4E4D\u4E8B\u4E9B\u4ED5\u4F3A\u4F3C\u4F7F\u4FDF\u50FF\u53F2\u53F8\u5506\u55E3\u56DB\u58EB\u5962\u5A11\u5BEB\u5BFA\u5C04\u5DF3\u5E2B\u5F99\u601D\u6368\u659C\u65AF\u67F6\u67FB\u68AD\u6B7B\u6C99\u6CD7\u6E23\u7009\u7345\u7802\u793E\u7940\u7960\u79C1\u7BE9\u7D17\u7D72\u8086\u820D\u838E\u84D1\u86C7\u88DF\u8A50\u8A5E\u8B1D\u8CDC\u8D66\u8FAD\u90AA\u98FC\u99DF\u9E9D\u524A\uF969\u6714\uF96A"],
      ["dfa1", "\u5098\u522A\u5C71\u6563\u6C55\u73CA\u7523\u759D\u7B97\u849C\u9178\u9730\u4E77\u6492\u6BBA\u715E\u85A9\u4E09\uF96B\u6749\u68EE\u6E17\u829F\u8518\u886B\u63F7\u6F81\u9212\u98AF\u4E0A\u50B7\u50CF\u511F\u5546\u55AA\u5617\u5B40\u5C19\u5CE0\u5E38\u5E8A\u5EA0\u5EC2\u60F3\u6851\u6A61\u6E58\u723D\u7240\u72C0\u76F8\u7965\u7BB1\u7FD4\u88F3\u89F4\u8A73\u8C61\u8CDE\u971C\u585E\u74BD\u8CFD\u55C7\uF96C\u7A61\u7D22\u8272\u7272\u751F\u7525\uF96D\u7B19\u5885\u58FB\u5DBC\u5E8F\u5EB6\u5F90\u6055\u6292\u637F\u654D\u6691\u66D9\u66F8\u6816\u68F2\u7280\u745E\u7B6E\u7D6E\u7DD6\u7F72"],
      ["e0a1", "\u80E5\u8212\u85AF\u897F\u8A93\u901D\u92E4\u9ECD\u9F20\u5915\u596D\u5E2D\u60DC\u6614\u6673\u6790\u6C50\u6DC5\u6F5F\u77F3\u78A9\u84C6\u91CB\u932B\u4ED9\u50CA\u5148\u5584\u5B0B\u5BA3\u6247\u657E\u65CB\u6E32\u717D\u7401\u7444\u7487\u74BF\u766C\u79AA\u7DDA\u7E55\u7FA8\u817A\u81B3\u8239\u861A\u87EC\u8A75\u8DE3\u9078\u9291\u9425\u994D\u9BAE\u5368\u5C51\u6954\u6CC4\u6D29\u6E2B\u820C\u859B\u893B\u8A2D\u8AAA\u96EA\u9F67\u5261\u66B9\u6BB2\u7E96\u87FE\u8D0D\u9583\u965D\u651D\u6D89\u71EE\uF96E\u57CE\u59D3\u5BAC\u6027\u60FA\u6210\u661F\u665F\u7329\u73F9\u76DB\u7701\u7B6C"],
      ["e1a1", "\u8056\u8072\u8165\u8AA0\u9192\u4E16\u52E2\u6B72\u6D17\u7A05\u7B39\u7D30\uF96F\u8CB0\u53EC\u562F\u5851\u5BB5\u5C0F\u5C11\u5DE2\u6240\u6383\u6414\u662D\u68B3\u6CBC\u6D88\u6EAF\u701F\u70A4\u71D2\u7526\u758F\u758E\u7619\u7B11\u7BE0\u7C2B\u7D20\u7D39\u852C\u856D\u8607\u8A34\u900D\u9061\u90B5\u92B7\u97F6\u9A37\u4FD7\u5C6C\u675F\u6D91\u7C9F\u7E8C\u8B16\u8D16\u901F\u5B6B\u5DFD\u640D\u84C0\u905C\u98E1\u7387\u5B8B\u609A\u677E\u6DDE\u8A1F\u8AA6\u9001\u980C\u5237\uF970\u7051\u788E\u9396\u8870\u91D7\u4FEE\u53D7\u55FD\u56DA\u5782\u58FD\u5AC2\u5B88\u5CAB\u5CC0\u5E25\u6101"],
      ["e2a1", "\u620D\u624B\u6388\u641C\u6536\u6578\u6A39\u6B8A\u6C34\u6D19\u6F31\u71E7\u72E9\u7378\u7407\u74B2\u7626\u7761\u79C0\u7A57\u7AEA\u7CB9\u7D8F\u7DAC\u7E61\u7F9E\u8129\u8331\u8490\u84DA\u85EA\u8896\u8AB0\u8B90\u8F38\u9042\u9083\u916C\u9296\u92B9\u968B\u96A7\u96A8\u96D6\u9700\u9808\u9996\u9AD3\u9B1A\u53D4\u587E\u5919\u5B70\u5BBF\u6DD1\u6F5A\u719F\u7421\u74B9\u8085\u83FD\u5DE1\u5F87\u5FAA\u6042\u65EC\u6812\u696F\u6A53\u6B89\u6D35\u6DF3\u73E3\u76FE\u77AC\u7B4D\u7D14\u8123\u821C\u8340\u84F4\u8563\u8A62\u8AC4\u9187\u931E\u9806\u99B4\u620C\u8853\u8FF0\u9265\u5D07\u5D27"],
      ["e3a1", "\u5D69\u745F\u819D\u8768\u6FD5\u62FE\u7FD2\u8936\u8972\u4E1E\u4E58\u50E7\u52DD\u5347\u627F\u6607\u7E69\u8805\u965E\u4F8D\u5319\u5636\u59CB\u5AA4\u5C38\u5C4E\u5C4D\u5E02\u5F11\u6043\u65BD\u662F\u6642\u67BE\u67F4\u731C\u77E2\u793A\u7FC5\u8494\u84CD\u8996\u8A66\u8A69\u8AE1\u8C55\u8C7A\u57F4\u5BD4\u5F0F\u606F\u62ED\u690D\u6B96\u6E5C\u7184\u7BD2\u8755\u8B58\u8EFE\u98DF\u98FE\u4F38\u4F81\u4FE1\u547B\u5A20\u5BB8\u613C\u65B0\u6668\u71FC\u7533\u795E\u7D33\u814E\u81E3\u8398\u85AA\u85CE\u8703\u8A0A\u8EAB\u8F9B\uF971\u8FC5\u5931\u5BA4\u5BE6\u6089\u5BE9\u5C0B\u5FC3\u6C81"],
      ["e4a1", "\uF972\u6DF1\u700B\u751A\u82AF\u8AF6\u4EC0\u5341\uF973\u96D9\u6C0F\u4E9E\u4FC4\u5152\u555E\u5A25\u5CE8\u6211\u7259\u82BD\u83AA\u86FE\u8859\u8A1D\u963F\u96C5\u9913\u9D09\u9D5D\u580A\u5CB3\u5DBD\u5E44\u60E1\u6115\u63E1\u6A02\u6E25\u9102\u9354\u984E\u9C10\u9F77\u5B89\u5CB8\u6309\u664F\u6848\u773C\u96C1\u978D\u9854\u9B9F\u65A1\u8B01\u8ECB\u95BC\u5535\u5CA9\u5DD6\u5EB5\u6697\u764C\u83F4\u95C7\u58D3\u62BC\u72CE\u9D28\u4EF0\u592E\u600F\u663B\u6B83\u79E7\u9D26\u5393\u54C0\u57C3\u5D16\u611B\u66D6\u6DAF\u788D\u827E\u9698\u9744\u5384\u627C\u6396\u6DB2\u7E0A\u814B\u984D"],
      ["e5a1", "\u6AFB\u7F4C\u9DAF\u9E1A\u4E5F\u503B\u51B6\u591C\u60F9\u63F6\u6930\u723A\u8036\uF974\u91CE\u5F31\uF975\uF976\u7D04\u82E5\u846F\u84BB\u85E5\u8E8D\uF977\u4F6F\uF978\uF979\u58E4\u5B43\u6059\u63DA\u6518\u656D\u6698\uF97A\u694A\u6A23\u6D0B\u7001\u716C\u75D2\u760D\u79B3\u7A70\uF97B\u7F8A\uF97C\u8944\uF97D\u8B93\u91C0\u967D\uF97E\u990A\u5704\u5FA1\u65BC\u6F01\u7600\u79A6\u8A9E\u99AD\u9B5A\u9F6C\u5104\u61B6\u6291\u6A8D\u81C6\u5043\u5830\u5F66\u7109\u8A00\u8AFA\u5B7C\u8616\u4FFA\u513C\u56B4\u5944\u63A9\u6DF9\u5DAA\u696D\u5186\u4E88\u4F59\uF97F\uF980\uF981\u5982\uF982"],
      ["e6a1", "\uF983\u6B5F\u6C5D\uF984\u74B5\u7916\uF985\u8207\u8245\u8339\u8F3F\u8F5D\uF986\u9918\uF987\uF988\uF989\u4EA6\uF98A\u57DF\u5F79\u6613\uF98B\uF98C\u75AB\u7E79\u8B6F\uF98D\u9006\u9A5B\u56A5\u5827\u59F8\u5A1F\u5BB4\uF98E\u5EF6\uF98F\uF990\u6350\u633B\uF991\u693D\u6C87\u6CBF\u6D8E\u6D93\u6DF5\u6F14\uF992\u70DF\u7136\u7159\uF993\u71C3\u71D5\uF994\u784F\u786F\uF995\u7B75\u7DE3\uF996\u7E2F\uF997\u884D\u8EDF\uF998\uF999\uF99A\u925B\uF99B\u9CF6\uF99C\uF99D\uF99E\u6085\u6D85\uF99F\u71B1\uF9A0\uF9A1\u95B1\u53AD\uF9A2\uF9A3\uF9A4\u67D3\uF9A5\u708E\u7130\u7430\u8276\u82D2"],
      ["e7a1", "\uF9A6\u95BB\u9AE5\u9E7D\u66C4\uF9A7\u71C1\u8449\uF9A8\uF9A9\u584B\uF9AA\uF9AB\u5DB8\u5F71\uF9AC\u6620\u668E\u6979\u69AE\u6C38\u6CF3\u6E36\u6F41\u6FDA\u701B\u702F\u7150\u71DF\u7370\uF9AD\u745B\uF9AE\u74D4\u76C8\u7A4E\u7E93\uF9AF\uF9B0\u82F1\u8A60\u8FCE\uF9B1\u9348\uF9B2\u9719\uF9B3\uF9B4\u4E42\u502A\uF9B5\u5208\u53E1\u66F3\u6C6D\u6FCA\u730A\u777F\u7A62\u82AE\u85DD\u8602\uF9B6\u88D4\u8A63\u8B7D\u8C6B\uF9B7\u92B3\uF9B8\u9713\u9810\u4E94\u4F0D\u4FC9\u50B2\u5348\u543E\u5433\u55DA\u5862\u58BA\u5967\u5A1B\u5BE4\u609F\uF9B9\u61CA\u6556\u65FF\u6664\u68A7\u6C5A\u6FB3"],
      ["e8a1", "\u70CF\u71AC\u7352\u7B7D\u8708\u8AA4\u9C32\u9F07\u5C4B\u6C83\u7344\u7389\u923A\u6EAB\u7465\u761F\u7A69\u7E15\u860A\u5140\u58C5\u64C1\u74EE\u7515\u7670\u7FC1\u9095\u96CD\u9954\u6E26\u74E6\u7AA9\u7AAA\u81E5\u86D9\u8778\u8A1B\u5A49\u5B8C\u5B9B\u68A1\u6900\u6D63\u73A9\u7413\u742C\u7897\u7DE9\u7FEB\u8118\u8155\u839E\u8C4C\u962E\u9811\u66F0\u5F80\u65FA\u6789\u6C6A\u738B\u502D\u5A03\u6B6A\u77EE\u5916\u5D6C\u5DCD\u7325\u754F\uF9BA\uF9BB\u50E5\u51F9\u582F\u592D\u5996\u59DA\u5BE5\uF9BC\uF9BD\u5DA2\u62D7\u6416\u6493\u64FE\uF9BE\u66DC\uF9BF\u6A48\uF9C0\u71FF\u7464\uF9C1"],
      ["e9a1", "\u7A88\u7AAF\u7E47\u7E5E\u8000\u8170\uF9C2\u87EF\u8981\u8B20\u9059\uF9C3\u9080\u9952\u617E\u6B32\u6D74\u7E1F\u8925\u8FB1\u4FD1\u50AD\u5197\u52C7\u57C7\u5889\u5BB9\u5EB8\u6142\u6995\u6D8C\u6E67\u6EB6\u7194\u7462\u7528\u752C\u8073\u8338\u84C9\u8E0A\u9394\u93DE\uF9C4\u4E8E\u4F51\u5076\u512A\u53C8\u53CB\u53F3\u5B87\u5BD3\u5C24\u611A\u6182\u65F4\u725B\u7397\u7440\u76C2\u7950\u7991\u79B9\u7D06\u7FBD\u828B\u85D5\u865E\u8FC2\u9047\u90F5\u91EA\u9685\u96E8\u96E9\u52D6\u5F67\u65ED\u6631\u682F\u715C\u7A36\u90C1\u980A\u4E91\uF9C5\u6A52\u6B9E\u6F90\u7189\u8018\u82B8\u8553"],
      ["eaa1", "\u904B\u9695\u96F2\u97FB\u851A\u9B31\u4E90\u718A\u96C4\u5143\u539F\u54E1\u5713\u5712\u57A3\u5A9B\u5AC4\u5BC3\u6028\u613F\u63F4\u6C85\u6D39\u6E72\u6E90\u7230\u733F\u7457\u82D1\u8881\u8F45\u9060\uF9C6\u9662\u9858\u9D1B\u6708\u8D8A\u925E\u4F4D\u5049\u50DE\u5371\u570D\u59D4\u5A01\u5C09\u6170\u6690\u6E2D\u7232\u744B\u7DEF\u80C3\u840E\u8466\u853F\u875F\u885B\u8918\u8B02\u9055\u97CB\u9B4F\u4E73\u4F91\u5112\u516A\uF9C7\u552F\u55A9\u5B7A\u5BA5\u5E7C\u5E7D\u5EBE\u60A0\u60DF\u6108\u6109\u63C4\u6538\u6709\uF9C8\u67D4\u67DA\uF9C9\u6961\u6962\u6CB9\u6D27\uF9CA\u6E38\uF9CB"],
      ["eba1", "\u6FE1\u7336\u7337\uF9CC\u745C\u7531\uF9CD\u7652\uF9CE\uF9CF\u7DAD\u81FE\u8438\u88D5\u8A98\u8ADB\u8AED\u8E30\u8E42\u904A\u903E\u907A\u9149\u91C9\u936E\uF9D0\uF9D1\u5809\uF9D2\u6BD3\u8089\u80B2\uF9D3\uF9D4\u5141\u596B\u5C39\uF9D5\uF9D6\u6F64\u73A7\u80E4\u8D07\uF9D7\u9217\u958F\uF9D8\uF9D9\uF9DA\uF9DB\u807F\u620E\u701C\u7D68\u878D\uF9DC\u57A0\u6069\u6147\u6BB7\u8ABE\u9280\u96B1\u4E59\u541F\u6DEB\u852D\u9670\u97F3\u98EE\u63D6\u6CE3\u9091\u51DD\u61C9\u81BA\u9DF9\u4F9D\u501A\u5100\u5B9C\u610F\u61FF\u64EC\u6905\u6BC5\u7591\u77E3\u7FA9\u8264\u858F\u87FB\u8863\u8ABC"],
      ["eca1", "\u8B70\u91AB\u4E8C\u4EE5\u4F0A\uF9DD\uF9DE\u5937\u59E8\uF9DF\u5DF2\u5F1B\u5F5B\u6021\uF9E0\uF9E1\uF9E2\uF9E3\u723E\u73E5\uF9E4\u7570\u75CD\uF9E5\u79FB\uF9E6\u800C\u8033\u8084\u82E1\u8351\uF9E7\uF9E8\u8CBD\u8CB3\u9087\uF9E9\uF9EA\u98F4\u990C\uF9EB\uF9EC\u7037\u76CA\u7FCA\u7FCC\u7FFC\u8B1A\u4EBA\u4EC1\u5203\u5370\uF9ED\u54BD\u56E0\u59FB\u5BC5\u5F15\u5FCD\u6E6E\uF9EE\uF9EF\u7D6A\u8335\uF9F0\u8693\u8A8D\uF9F1\u976D\u9777\uF9F2\uF9F3\u4E00\u4F5A\u4F7E\u58F9\u65E5\u6EA2\u9038\u93B0\u99B9\u4EFB\u58EC\u598A\u59D9\u6041\uF9F4\uF9F5\u7A14\uF9F6\u834F\u8CC3\u5165\u5344"],
      ["eda1", "\uF9F7\uF9F8\uF9F9\u4ECD\u5269\u5B55\u82BF\u4ED4\u523A\u54A8\u59C9\u59FF\u5B50\u5B57\u5B5C\u6063\u6148\u6ECB\u7099\u716E\u7386\u74F7\u75B5\u78C1\u7D2B\u8005\u81EA\u8328\u8517\u85C9\u8AEE\u8CC7\u96CC\u4F5C\u52FA\u56BC\u65AB\u6628\u707C\u70B8\u7235\u7DBD\u828D\u914C\u96C0\u9D72\u5B71\u68E7\u6B98\u6F7A\u76DE\u5C91\u66AB\u6F5B\u7BB4\u7C2A\u8836\u96DC\u4E08\u4ED7\u5320\u5834\u58BB\u58EF\u596C\u5C07\u5E33\u5E84\u5F35\u638C\u66B2\u6756\u6A1F\u6AA3\u6B0C\u6F3F\u7246\uF9FA\u7350\u748B\u7AE0\u7CA7\u8178\u81DF\u81E7\u838A\u846C\u8523\u8594\u85CF\u88DD\u8D13\u91AC\u9577"],
      ["eea1", "\u969C\u518D\u54C9\u5728\u5BB0\u624D\u6750\u683D\u6893\u6E3D\u6ED3\u707D\u7E21\u88C1\u8CA1\u8F09\u9F4B\u9F4E\u722D\u7B8F\u8ACD\u931A\u4F47\u4F4E\u5132\u5480\u59D0\u5E95\u62B5\u6775\u696E\u6A17\u6CAE\u6E1A\u72D9\u732A\u75BD\u7BB8\u7D35\u82E7\u83F9\u8457\u85F7\u8A5B\u8CAF\u8E87\u9019\u90B8\u96CE\u9F5F\u52E3\u540A\u5AE1\u5BC2\u6458\u6575\u6EF4\u72C4\uF9FB\u7684\u7A4D\u7B1B\u7C4D\u7E3E\u7FDF\u837B\u8B2B\u8CCA\u8D64\u8DE1\u8E5F\u8FEA\u8FF9\u9069\u93D1\u4F43\u4F7A\u50B3\u5168\u5178\u524D\u526A\u5861\u587C\u5960\u5C08\u5C55\u5EDB\u609B\u6230\u6813\u6BBF\u6C08\u6FB1"],
      ["efa1", "\u714E\u7420\u7530\u7538\u7551\u7672\u7B4C\u7B8B\u7BAD\u7BC6\u7E8F\u8A6E\u8F3E\u8F49\u923F\u9293\u9322\u942B\u96FB\u985A\u986B\u991E\u5207\u622A\u6298\u6D59\u7664\u7ACA\u7BC0\u7D76\u5360\u5CBE\u5E97\u6F38\u70B9\u7C98\u9711\u9B8E\u9EDE\u63A5\u647A\u8776\u4E01\u4E95\u4EAD\u505C\u5075\u5448\u59C3\u5B9A\u5E40\u5EAD\u5EF7\u5F81\u60C5\u633A\u653F\u6574\u65CC\u6676\u6678\u67FE\u6968\u6A89\u6B63\u6C40\u6DC0\u6DE8\u6E1F\u6E5E\u701E\u70A1\u738E\u73FD\u753A\u775B\u7887\u798E\u7A0B\u7A7D\u7CBE\u7D8E\u8247\u8A02\u8AEA\u8C9E\u912D\u914A\u91D8\u9266\u92CC\u9320\u9706\u9756"],
      ["f0a1", "\u975C\u9802\u9F0E\u5236\u5291\u557C\u5824\u5E1D\u5F1F\u608C\u63D0\u68AF\u6FDF\u796D\u7B2C\u81CD\u85BA\u88FD\u8AF8\u8E44\u918D\u9664\u969B\u973D\u984C\u9F4A\u4FCE\u5146\u51CB\u52A9\u5632\u5F14\u5F6B\u63AA\u64CD\u65E9\u6641\u66FA\u66F9\u671D\u689D\u68D7\u69FD\u6F15\u6F6E\u7167\u71E5\u722A\u74AA\u773A\u7956\u795A\u79DF\u7A20\u7A95\u7C97\u7CDF\u7D44\u7E70\u8087\u85FB\u86A4\u8A54\u8ABF\u8D99\u8E81\u9020\u906D\u91E3\u963B\u96D5\u9CE5\u65CF\u7C07\u8DB3\u93C3\u5B58\u5C0A\u5352\u62D9\u731D\u5027\u5B97\u5F9E\u60B0\u616B\u68D5\u6DD9\u742E\u7A2E\u7D42\u7D9C\u7E31\u816B"],
      ["f1a1", "\u8E2A\u8E35\u937E\u9418\u4F50\u5750\u5DE6\u5EA7\u632B\u7F6A\u4E3B\u4F4F\u4F8F\u505A\u59DD\u80C4\u546A\u5468\u55FE\u594F\u5B99\u5DDE\u5EDA\u665D\u6731\u67F1\u682A\u6CE8\u6D32\u6E4A\u6F8D\u70B7\u73E0\u7587\u7C4C\u7D02\u7D2C\u7DA2\u821F\u86DB\u8A3B\u8A85\u8D70\u8E8A\u8F33\u9031\u914E\u9152\u9444\u99D0\u7AF9\u7CA5\u4FCA\u5101\u51C6\u57C8\u5BEF\u5CFB\u6659\u6A3D\u6D5A\u6E96\u6FEC\u710C\u756F\u7AE3\u8822\u9021\u9075\u96CB\u99FF\u8301\u4E2D\u4EF2\u8846\u91CD\u537D\u6ADB\u696B\u6C41\u847A\u589E\u618E\u66FE\u62EF\u70DD\u7511\u75C7\u7E52\u84B8\u8B49\u8D08\u4E4B\u53EA"],
      ["f2a1", "\u54AB\u5730\u5740\u5FD7\u6301\u6307\u646F\u652F\u65E8\u667A\u679D\u67B3\u6B62\u6C60\u6C9A\u6F2C\u77E5\u7825\u7949\u7957\u7D19\u80A2\u8102\u81F3\u829D\u82B7\u8718\u8A8C\uF9FC\u8D04\u8DBE\u9072\u76F4\u7A19\u7A37\u7E54\u8077\u5507\u55D4\u5875\u632F\u6422\u6649\u664B\u686D\u699B\u6B84\u6D25\u6EB1\u73CD\u7468\u74A1\u755B\u75B9\u76E1\u771E\u778B\u79E6\u7E09\u7E1D\u81FB\u852F\u8897\u8A3A\u8CD1\u8EEB\u8FB0\u9032\u93AD\u9663\u9673\u9707\u4F84\u53F1\u59EA\u5AC9\u5E19\u684E\u74C6\u75BE\u79E9\u7A92\u81A3\u86ED\u8CEA\u8DCC\u8FED\u659F\u6715\uF9FD\u57F7\u6F57\u7DDD\u8F2F"],
      ["f3a1", "\u93F6\u96C6\u5FB5\u61F2\u6F84\u4E14\u4F98\u501F\u53C9\u55DF\u5D6F\u5DEE\u6B21\u6B64\u78CB\u7B9A\uF9FE\u8E49\u8ECA\u906E\u6349\u643E\u7740\u7A84\u932F\u947F\u9F6A\u64B0\u6FAF\u71E6\u74A8\u74DA\u7AC4\u7C12\u7E82\u7CB2\u7E98\u8B9A\u8D0A\u947D\u9910\u994C\u5239\u5BDF\u64E6\u672D\u7D2E\u50ED\u53C3\u5879\u6158\u6159\u61FA\u65AC\u7AD9\u8B92\u8B96\u5009\u5021\u5275\u5531\u5A3C\u5EE0\u5F70\u6134\u655E\u660C\u6636\u66A2\u69CD\u6EC4\u6F32\u7316\u7621\u7A93\u8139\u8259\u83D6\u84BC\u50B5\u57F0\u5BC0\u5BE8\u5F69\u63A1\u7826\u7DB5\u83DC\u8521\u91C7\u91F5\u518A\u67F5\u7B56"],
      ["f4a1", "\u8CAC\u51C4\u59BB\u60BD\u8655\u501C\uF9FF\u5254\u5C3A\u617D\u621A\u62D3\u64F2\u65A5\u6ECC\u7620\u810A\u8E60\u965F\u96BB\u4EDF\u5343\u5598\u5929\u5DDD\u64C5\u6CC9\u6DFA\u7394\u7A7F\u821B\u85A6\u8CE4\u8E10\u9077\u91E7\u95E1\u9621\u97C6\u51F8\u54F2\u5586\u5FB9\u64A4\u6F88\u7DB4\u8F1F\u8F4D\u9435\u50C9\u5C16\u6CBE\u6DFB\u751B\u77BB\u7C3D\u7C64\u8A79\u8AC2\u581E\u59BE\u5E16\u6377\u7252\u758A\u776B\u8ADC\u8CBC\u8F12\u5EF3\u6674\u6DF8\u807D\u83C1\u8ACB\u9751\u9BD6\uFA00\u5243\u66FF\u6D95\u6EEF\u7DE0\u8AE6\u902E\u905E\u9AD4\u521D\u527F\u54E8\u6194\u6284\u62DB\u68A2"],
      ["f5a1", "\u6912\u695A\u6A35\u7092\u7126\u785D\u7901\u790E\u79D2\u7A0D\u8096\u8278\u82D5\u8349\u8549\u8C82\u8D85\u9162\u918B\u91AE\u4FC3\u56D1\u71ED\u77D7\u8700\u89F8\u5BF8\u5FD6\u6751\u90A8\u53E2\u585A\u5BF5\u60A4\u6181\u6460\u7E3D\u8070\u8525\u9283\u64AE\u50AC\u5D14\u6700\u589C\u62BD\u63A8\u690E\u6978\u6A1E\u6E6B\u76BA\u79CB\u82BB\u8429\u8ACF\u8DA8\u8FFD\u9112\u914B\u919C\u9310\u9318\u939A\u96DB\u9A36\u9C0D\u4E11\u755C\u795D\u7AFA\u7B51\u7BC9\u7E2E\u84C4\u8E59\u8E74\u8EF8\u9010\u6625\u693F\u7443\u51FA\u672E\u9EDC\u5145\u5FE0\u6C96\u87F2\u885D\u8877\u60B4\u81B5\u8403"],
      ["f6a1", "\u8D05\u53D6\u5439\u5634\u5A36\u5C31\u708A\u7FE0\u805A\u8106\u81ED\u8DA3\u9189\u9A5F\u9DF2\u5074\u4EC4\u53A0\u60FB\u6E2C\u5C64\u4F88\u5024\u55E4\u5CD9\u5E5F\u6065\u6894\u6CBB\u6DC4\u71BE\u75D4\u75F4\u7661\u7A1A\u7A49\u7DC7\u7DFB\u7F6E\u81F4\u86A9\u8F1C\u96C9\u99B3\u9F52\u5247\u52C5\u98ED\u89AA\u4E03\u67D2\u6F06\u4FB5\u5BE2\u6795\u6C88\u6D78\u741B\u7827\u91DD\u937C\u87C4\u79E4\u7A31\u5FEB\u4ED6\u54A4\u553E\u58AE\u59A5\u60F0\u6253\u62D6\u6736\u6955\u8235\u9640\u99B1\u99DD\u502C\u5353\u5544\u577C\uFA01\u6258\uFA02\u64E2\u666B\u67DD\u6FC1\u6FEF\u7422\u7438\u8A17"],
      ["f7a1", "\u9438\u5451\u5606\u5766\u5F48\u619A\u6B4E\u7058\u70AD\u7DBB\u8A95\u596A\u812B\u63A2\u7708\u803D\u8CAA\u5854\u642D\u69BB\u5B95\u5E11\u6E6F\uFA03\u8569\u514C\u53F0\u592A\u6020\u614B\u6B86\u6C70\u6CF0\u7B1E\u80CE\u82D4\u8DC6\u90B0\u98B1\uFA04\u64C7\u6FA4\u6491\u6504\u514E\u5410\u571F\u8A0E\u615F\u6876\uFA05\u75DB\u7B52\u7D71\u901A\u5806\u69CC\u817F\u892A\u9000\u9839\u5078\u5957\u59AC\u6295\u900F\u9B2A\u615D\u7279\u95D6\u5761\u5A46\u5DF4\u628A\u64AD\u64FA\u6777\u6CE2\u6D3E\u722C\u7436\u7834\u7F77\u82AD\u8DDB\u9817\u5224\u5742\u677F\u7248\u74E3\u8CA9\u8FA6\u9211"],
      ["f8a1", "\u962A\u516B\u53ED\u634C\u4F69\u5504\u6096\u6557\u6C9B\u6D7F\u724C\u72FD\u7A17\u8987\u8C9D\u5F6D\u6F8E\u70F9\u81A8\u610E\u4FBF\u504F\u6241\u7247\u7BC7\u7DE8\u7FE9\u904D\u97AD\u9A19\u8CB6\u576A\u5E73\u67B0\u840D\u8A55\u5420\u5B16\u5E63\u5EE2\u5F0A\u6583\u80BA\u853D\u9589\u965B\u4F48\u5305\u530D\u530F\u5486\u54FA\u5703\u5E03\u6016\u629B\u62B1\u6355\uFA06\u6CE1\u6D66\u75B1\u7832\u80DE\u812F\u82DE\u8461\u84B2\u888D\u8912\u900B\u92EA\u98FD\u9B91\u5E45\u66B4\u66DD\u7011\u7206\uFA07\u4FF5\u527D\u5F6A\u6153\u6753\u6A19\u6F02\u74E2\u7968\u8868\u8C79\u98C7\u98C4\u9A43"],
      ["f9a1", "\u54C1\u7A1F\u6953\u8AF7\u8C4A\u98A8\u99AE\u5F7C\u62AB\u75B2\u76AE\u88AB\u907F\u9642\u5339\u5F3C\u5FC5\u6CCC\u73CC\u7562\u758B\u7B46\u82FE\u999D\u4E4F\u903C\u4E0B\u4F55\u53A6\u590F\u5EC8\u6630\u6CB3\u7455\u8377\u8766\u8CC0\u9050\u971E\u9C15\u58D1\u5B78\u8650\u8B14\u9DB4\u5BD2\u6068\u608D\u65F1\u6C57\u6F22\u6FA3\u701A\u7F55\u7FF0\u9591\u9592\u9650\u97D3\u5272\u8F44\u51FD\u542B\u54B8\u5563\u558A\u6ABB\u6DB5\u7DD8\u8266\u929C\u9677\u9E79\u5408\u54C8\u76D2\u86E4\u95A4\u95D4\u965C\u4EA2\u4F09\u59EE\u5AE6\u5DF7\u6052\u6297\u676D\u6841\u6C86\u6E2F\u7F38\u809B\u822A"],
      ["faa1", "\uFA08\uFA09\u9805\u4EA5\u5055\u54B3\u5793\u595A\u5B69\u5BB3\u61C8\u6977\u6D77\u7023\u87F9\u89E3\u8A72\u8AE7\u9082\u99ED\u9AB8\u52BE\u6838\u5016\u5E78\u674F\u8347\u884C\u4EAB\u5411\u56AE\u73E6\u9115\u97FF\u9909\u9957\u9999\u5653\u589F\u865B\u8A31\u61B2\u6AF6\u737B\u8ED2\u6B47\u96AA\u9A57\u5955\u7200\u8D6B\u9769\u4FD4\u5CF4\u5F26\u61F8\u665B\u6CEB\u70AB\u7384\u73B9\u73FE\u7729\u774D\u7D43\u7D62\u7E23\u8237\u8852\uFA0A\u8CE2\u9249\u986F\u5B51\u7A74\u8840\u9801\u5ACC\u4FE0\u5354\u593E\u5CFD\u633E\u6D79\u72F9\u8105\u8107\u83A2\u92CF\u9830\u4EA8\u5144\u5211\u578B"],
      ["fba1", "\u5F62\u6CC2\u6ECE\u7005\u7050\u70AF\u7192\u73E9\u7469\u834A\u87A2\u8861\u9008\u90A2\u93A3\u99A8\u516E\u5F57\u60E0\u6167\u66B3\u8559\u8E4A\u91AF\u978B\u4E4E\u4E92\u547C\u58D5\u58FA\u597D\u5CB5\u5F27\u6236\u6248\u660A\u6667\u6BEB\u6D69\u6DCF\u6E56\u6EF8\u6F94\u6FE0\u6FE9\u705D\u72D0\u7425\u745A\u74E0\u7693\u795C\u7CCA\u7E1E\u80E1\u82A6\u846B\u84BF\u864E\u865F\u8774\u8B77\u8C6A\u93AC\u9800\u9865\u60D1\u6216\u9177\u5A5A\u660F\u6DF7\u6E3E\u743F\u9B42\u5FFD\u60DA\u7B0F\u54C4\u5F18\u6C5E\u6CD3\u6D2A\u70D8\u7D05\u8679\u8A0C\u9D3B\u5316\u548C\u5B05\u6A3A\u706B\u7575"],
      ["fca1", "\u798D\u79BE\u82B1\u83EF\u8A71\u8B41\u8CA8\u9774\uFA0B\u64F4\u652B\u78BA\u78BB\u7A6B\u4E38\u559A\u5950\u5BA6\u5E7B\u60A3\u63DB\u6B61\u6665\u6853\u6E19\u7165\u74B0\u7D08\u9084\u9A69\u9C25\u6D3B\u6ED1\u733E\u8C41\u95CA\u51F0\u5E4C\u5FA8\u604D\u60F6\u6130\u614C\u6643\u6644\u69A5\u6CC1\u6E5F\u6EC9\u6F62\u714C\u749C\u7687\u7BC1\u7C27\u8352\u8757\u9051\u968D\u9EC3\u532F\u56DE\u5EFB\u5F8A\u6062\u6094\u61F7\u6666\u6703\u6A9C\u6DEE\u6FAE\u7070\u736A\u7E6A\u81BE\u8334\u86D4\u8AA8\u8CC4\u5283\u7372\u5B96\u6A6B\u9404\u54EE\u5686\u5B5D\u6548\u6585\u66C9\u689F\u6D8D\u6DC6"],
      ["fda1", "\u723B\u80B4\u9175\u9A4D\u4FAF\u5019\u539A\u540E\u543C\u5589\u55C5\u5E3F\u5F8C\u673D\u7166\u73DD\u9005\u52DB\u52F3\u5864\u58CE\u7104\u718F\u71FB\u85B0\u8A13\u6688\u85A8\u55A7\u6684\u714A\u8431\u5349\u5599\u6BC1\u5F59\u5FBD\u63EE\u6689\u7147\u8AF1\u8F1D\u9EBE\u4F11\u643A\u70CB\u7566\u8667\u6064\u8B4E\u9DF8\u5147\u51F6\u5308\u6D36\u80F8\u9ED1\u6615\u6B23\u7098\u75D5\u5403\u5C79\u7D07\u8A16\u6B20\u6B3D\u6B46\u5438\u6070\u6D3D\u7FD5\u8208\u50D6\u51DE\u559C\u566B\u56CD\u59EC\u5B09\u5E0C\u6199\u6198\u6231\u665E\u66E6\u7199\u71B9\u71BA\u72A7\u79A7\u7A00\u7FB2\u8A70"]
    ];
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/tables/cp950.json
var require_cp950 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/tables/cp950.json"(exports2, module2) {
    module2.exports = [
      ["0", "\0", 127],
      ["a140", "\u3000\uFF0C\u3001\u3002\uFF0E\u2027\uFF1B\uFF1A\uFF1F\uFF01\uFE30\u2026\u2025\uFE50\uFE51\uFE52\xB7\uFE54\uFE55\uFE56\uFE57\uFF5C\u2013\uFE31\u2014\uFE33\u2574\uFE34\uFE4F\uFF08\uFF09\uFE35\uFE36\uFF5B\uFF5D\uFE37\uFE38\u3014\u3015\uFE39\uFE3A\u3010\u3011\uFE3B\uFE3C\u300A\u300B\uFE3D\uFE3E\u3008\u3009\uFE3F\uFE40\u300C\u300D\uFE41\uFE42\u300E\u300F\uFE43\uFE44\uFE59\uFE5A"],
      ["a1a1", "\uFE5B\uFE5C\uFE5D\uFE5E\u2018\u2019\u201C\u201D\u301D\u301E\u2035\u2032\uFF03\uFF06\uFF0A\u203B\xA7\u3003\u25CB\u25CF\u25B3\u25B2\u25CE\u2606\u2605\u25C7\u25C6\u25A1\u25A0\u25BD\u25BC\u32A3\u2105\xAF\uFFE3\uFF3F\u02CD\uFE49\uFE4A\uFE4D\uFE4E\uFE4B\uFE4C\uFE5F\uFE60\uFE61\uFF0B\uFF0D\xD7\xF7\xB1\u221A\uFF1C\uFF1E\uFF1D\u2266\u2267\u2260\u221E\u2252\u2261\uFE62", 4, "\uFF5E\u2229\u222A\u22A5\u2220\u221F\u22BF\u33D2\u33D1\u222B\u222E\u2235\u2234\u2640\u2642\u2295\u2299\u2191\u2193\u2190\u2192\u2196\u2197\u2199\u2198\u2225\u2223\uFF0F"],
      ["a240", "\uFF3C\u2215\uFE68\uFF04\uFFE5\u3012\uFFE0\uFFE1\uFF05\uFF20\u2103\u2109\uFE69\uFE6A\uFE6B\u33D5\u339C\u339D\u339E\u33CE\u33A1\u338E\u338F\u33C4\xB0\u5159\u515B\u515E\u515D\u5161\u5163\u55E7\u74E9\u7CCE\u2581", 7, "\u258F\u258E\u258D\u258C\u258B\u258A\u2589\u253C\u2534\u252C\u2524\u251C\u2594\u2500\u2502\u2595\u250C\u2510\u2514\u2518\u256D"],
      ["a2a1", "\u256E\u2570\u256F\u2550\u255E\u256A\u2561\u25E2\u25E3\u25E5\u25E4\u2571\u2572\u2573\uFF10", 9, "\u2160", 9, "\u3021", 8, "\u5341\u5344\u5345\uFF21", 25, "\uFF41", 21],
      ["a340", "\uFF57\uFF58\uFF59\uFF5A\u0391", 16, "\u03A3", 6, "\u03B1", 16, "\u03C3", 6, "\u3105", 10],
      ["a3a1", "\u3110", 25, "\u02D9\u02C9\u02CA\u02C7\u02CB"],
      ["a3e1", "\u20AC"],
      ["a440", "\u4E00\u4E59\u4E01\u4E03\u4E43\u4E5D\u4E86\u4E8C\u4EBA\u513F\u5165\u516B\u51E0\u5200\u5201\u529B\u5315\u5341\u535C\u53C8\u4E09\u4E0B\u4E08\u4E0A\u4E2B\u4E38\u51E1\u4E45\u4E48\u4E5F\u4E5E\u4E8E\u4EA1\u5140\u5203\u52FA\u5343\u53C9\u53E3\u571F\u58EB\u5915\u5927\u5973\u5B50\u5B51\u5B53\u5BF8\u5C0F\u5C22\u5C38\u5C71\u5DDD\u5DE5\u5DF1\u5DF2\u5DF3\u5DFE\u5E72\u5EFE\u5F0B\u5F13\u624D"],
      ["a4a1", "\u4E11\u4E10\u4E0D\u4E2D\u4E30\u4E39\u4E4B\u5C39\u4E88\u4E91\u4E95\u4E92\u4E94\u4EA2\u4EC1\u4EC0\u4EC3\u4EC6\u4EC7\u4ECD\u4ECA\u4ECB\u4EC4\u5143\u5141\u5167\u516D\u516E\u516C\u5197\u51F6\u5206\u5207\u5208\u52FB\u52FE\u52FF\u5316\u5339\u5348\u5347\u5345\u535E\u5384\u53CB\u53CA\u53CD\u58EC\u5929\u592B\u592A\u592D\u5B54\u5C11\u5C24\u5C3A\u5C6F\u5DF4\u5E7B\u5EFF\u5F14\u5F15\u5FC3\u6208\u6236\u624B\u624E\u652F\u6587\u6597\u65A4\u65B9\u65E5\u66F0\u6708\u6728\u6B20\u6B62\u6B79\u6BCB\u6BD4\u6BDB\u6C0F\u6C34\u706B\u722A\u7236\u723B\u7247\u7259\u725B\u72AC\u738B\u4E19"],
      ["a540", "\u4E16\u4E15\u4E14\u4E18\u4E3B\u4E4D\u4E4F\u4E4E\u4EE5\u4ED8\u4ED4\u4ED5\u4ED6\u4ED7\u4EE3\u4EE4\u4ED9\u4EDE\u5145\u5144\u5189\u518A\u51AC\u51F9\u51FA\u51F8\u520A\u52A0\u529F\u5305\u5306\u5317\u531D\u4EDF\u534A\u5349\u5361\u5360\u536F\u536E\u53BB\u53EF\u53E4\u53F3\u53EC\u53EE\u53E9\u53E8\u53FC\u53F8\u53F5\u53EB\u53E6\u53EA\u53F2\u53F1\u53F0\u53E5\u53ED\u53FB\u56DB\u56DA\u5916"],
      ["a5a1", "\u592E\u5931\u5974\u5976\u5B55\u5B83\u5C3C\u5DE8\u5DE7\u5DE6\u5E02\u5E03\u5E73\u5E7C\u5F01\u5F18\u5F17\u5FC5\u620A\u6253\u6254\u6252\u6251\u65A5\u65E6\u672E\u672C\u672A\u672B\u672D\u6B63\u6BCD\u6C11\u6C10\u6C38\u6C41\u6C40\u6C3E\u72AF\u7384\u7389\u74DC\u74E6\u7518\u751F\u7528\u7529\u7530\u7531\u7532\u7533\u758B\u767D\u76AE\u76BF\u76EE\u77DB\u77E2\u77F3\u793A\u79BE\u7A74\u7ACB\u4E1E\u4E1F\u4E52\u4E53\u4E69\u4E99\u4EA4\u4EA6\u4EA5\u4EFF\u4F09\u4F19\u4F0A\u4F15\u4F0D\u4F10\u4F11\u4F0F\u4EF2\u4EF6\u4EFB\u4EF0\u4EF3\u4EFD\u4F01\u4F0B\u5149\u5147\u5146\u5148\u5168"],
      ["a640", "\u5171\u518D\u51B0\u5217\u5211\u5212\u520E\u5216\u52A3\u5308\u5321\u5320\u5370\u5371\u5409\u540F\u540C\u540A\u5410\u5401\u540B\u5404\u5411\u540D\u5408\u5403\u540E\u5406\u5412\u56E0\u56DE\u56DD\u5733\u5730\u5728\u572D\u572C\u572F\u5729\u5919\u591A\u5937\u5938\u5984\u5978\u5983\u597D\u5979\u5982\u5981\u5B57\u5B58\u5B87\u5B88\u5B85\u5B89\u5BFA\u5C16\u5C79\u5DDE\u5E06\u5E76\u5E74"],
      ["a6a1", "\u5F0F\u5F1B\u5FD9\u5FD6\u620E\u620C\u620D\u6210\u6263\u625B\u6258\u6536\u65E9\u65E8\u65EC\u65ED\u66F2\u66F3\u6709\u673D\u6734\u6731\u6735\u6B21\u6B64\u6B7B\u6C16\u6C5D\u6C57\u6C59\u6C5F\u6C60\u6C50\u6C55\u6C61\u6C5B\u6C4D\u6C4E\u7070\u725F\u725D\u767E\u7AF9\u7C73\u7CF8\u7F36\u7F8A\u7FBD\u8001\u8003\u800C\u8012\u8033\u807F\u8089\u808B\u808C\u81E3\u81EA\u81F3\u81FC\u820C\u821B\u821F\u826E\u8272\u827E\u866B\u8840\u884C\u8863\u897F\u9621\u4E32\u4EA8\u4F4D\u4F4F\u4F47\u4F57\u4F5E\u4F34\u4F5B\u4F55\u4F30\u4F50\u4F51\u4F3D\u4F3A\u4F38\u4F43\u4F54\u4F3C\u4F46\u4F63"],
      ["a740", "\u4F5C\u4F60\u4F2F\u4F4E\u4F36\u4F59\u4F5D\u4F48\u4F5A\u514C\u514B\u514D\u5175\u51B6\u51B7\u5225\u5224\u5229\u522A\u5228\u52AB\u52A9\u52AA\u52AC\u5323\u5373\u5375\u541D\u542D\u541E\u543E\u5426\u544E\u5427\u5446\u5443\u5433\u5448\u5442\u541B\u5429\u544A\u5439\u543B\u5438\u542E\u5435\u5436\u5420\u543C\u5440\u5431\u542B\u541F\u542C\u56EA\u56F0\u56E4\u56EB\u574A\u5751\u5740\u574D"],
      ["a7a1", "\u5747\u574E\u573E\u5750\u574F\u573B\u58EF\u593E\u599D\u5992\u59A8\u599E\u59A3\u5999\u5996\u598D\u59A4\u5993\u598A\u59A5\u5B5D\u5B5C\u5B5A\u5B5B\u5B8C\u5B8B\u5B8F\u5C2C\u5C40\u5C41\u5C3F\u5C3E\u5C90\u5C91\u5C94\u5C8C\u5DEB\u5E0C\u5E8F\u5E87\u5E8A\u5EF7\u5F04\u5F1F\u5F64\u5F62\u5F77\u5F79\u5FD8\u5FCC\u5FD7\u5FCD\u5FF1\u5FEB\u5FF8\u5FEA\u6212\u6211\u6284\u6297\u6296\u6280\u6276\u6289\u626D\u628A\u627C\u627E\u6279\u6273\u6292\u626F\u6298\u626E\u6295\u6293\u6291\u6286\u6539\u653B\u6538\u65F1\u66F4\u675F\u674E\u674F\u6750\u6751\u675C\u6756\u675E\u6749\u6746\u6760"],
      ["a840", "\u6753\u6757\u6B65\u6BCF\u6C42\u6C5E\u6C99\u6C81\u6C88\u6C89\u6C85\u6C9B\u6C6A\u6C7A\u6C90\u6C70\u6C8C\u6C68\u6C96\u6C92\u6C7D\u6C83\u6C72\u6C7E\u6C74\u6C86\u6C76\u6C8D\u6C94\u6C98\u6C82\u7076\u707C\u707D\u7078\u7262\u7261\u7260\u72C4\u72C2\u7396\u752C\u752B\u7537\u7538\u7682\u76EF\u77E3\u79C1\u79C0\u79BF\u7A76\u7CFB\u7F55\u8096\u8093\u809D\u8098\u809B\u809A\u80B2\u826F\u8292"],
      ["a8a1", "\u828B\u828D\u898B\u89D2\u8A00\u8C37\u8C46\u8C55\u8C9D\u8D64\u8D70\u8DB3\u8EAB\u8ECA\u8F9B\u8FB0\u8FC2\u8FC6\u8FC5\u8FC4\u5DE1\u9091\u90A2\u90AA\u90A6\u90A3\u9149\u91C6\u91CC\u9632\u962E\u9631\u962A\u962C\u4E26\u4E56\u4E73\u4E8B\u4E9B\u4E9E\u4EAB\u4EAC\u4F6F\u4F9D\u4F8D\u4F73\u4F7F\u4F6C\u4F9B\u4F8B\u4F86\u4F83\u4F70\u4F75\u4F88\u4F69\u4F7B\u4F96\u4F7E\u4F8F\u4F91\u4F7A\u5154\u5152\u5155\u5169\u5177\u5176\u5178\u51BD\u51FD\u523B\u5238\u5237\u523A\u5230\u522E\u5236\u5241\u52BE\u52BB\u5352\u5354\u5353\u5351\u5366\u5377\u5378\u5379\u53D6\u53D4\u53D7\u5473\u5475"],
      ["a940", "\u5496\u5478\u5495\u5480\u547B\u5477\u5484\u5492\u5486\u547C\u5490\u5471\u5476\u548C\u549A\u5462\u5468\u548B\u547D\u548E\u56FA\u5783\u5777\u576A\u5769\u5761\u5766\u5764\u577C\u591C\u5949\u5947\u5948\u5944\u5954\u59BE\u59BB\u59D4\u59B9\u59AE\u59D1\u59C6\u59D0\u59CD\u59CB\u59D3\u59CA\u59AF\u59B3\u59D2\u59C5\u5B5F\u5B64\u5B63\u5B97\u5B9A\u5B98\u5B9C\u5B99\u5B9B\u5C1A\u5C48\u5C45"],
      ["a9a1", "\u5C46\u5CB7\u5CA1\u5CB8\u5CA9\u5CAB\u5CB1\u5CB3\u5E18\u5E1A\u5E16\u5E15\u5E1B\u5E11\u5E78\u5E9A\u5E97\u5E9C\u5E95\u5E96\u5EF6\u5F26\u5F27\u5F29\u5F80\u5F81\u5F7F\u5F7C\u5FDD\u5FE0\u5FFD\u5FF5\u5FFF\u600F\u6014\u602F\u6035\u6016\u602A\u6015\u6021\u6027\u6029\u602B\u601B\u6216\u6215\u623F\u623E\u6240\u627F\u62C9\u62CC\u62C4\u62BF\u62C2\u62B9\u62D2\u62DB\u62AB\u62D3\u62D4\u62CB\u62C8\u62A8\u62BD\u62BC\u62D0\u62D9\u62C7\u62CD\u62B5\u62DA\u62B1\u62D8\u62D6\u62D7\u62C6\u62AC\u62CE\u653E\u65A7\u65BC\u65FA\u6614\u6613\u660C\u6606\u6602\u660E\u6600\u660F\u6615\u660A"],
      ["aa40", "\u6607\u670D\u670B\u676D\u678B\u6795\u6771\u679C\u6773\u6777\u6787\u679D\u6797\u676F\u6770\u677F\u6789\u677E\u6790\u6775\u679A\u6793\u677C\u676A\u6772\u6B23\u6B66\u6B67\u6B7F\u6C13\u6C1B\u6CE3\u6CE8\u6CF3\u6CB1\u6CCC\u6CE5\u6CB3\u6CBD\u6CBE\u6CBC\u6CE2\u6CAB\u6CD5\u6CD3\u6CB8\u6CC4\u6CB9\u6CC1\u6CAE\u6CD7\u6CC5\u6CF1\u6CBF\u6CBB\u6CE1\u6CDB\u6CCA\u6CAC\u6CEF\u6CDC\u6CD6\u6CE0"],
      ["aaa1", "\u7095\u708E\u7092\u708A\u7099\u722C\u722D\u7238\u7248\u7267\u7269\u72C0\u72CE\u72D9\u72D7\u72D0\u73A9\u73A8\u739F\u73AB\u73A5\u753D\u759D\u7599\u759A\u7684\u76C2\u76F2\u76F4\u77E5\u77FD\u793E\u7940\u7941\u79C9\u79C8\u7A7A\u7A79\u7AFA\u7CFE\u7F54\u7F8C\u7F8B\u8005\u80BA\u80A5\u80A2\u80B1\u80A1\u80AB\u80A9\u80B4\u80AA\u80AF\u81E5\u81FE\u820D\u82B3\u829D\u8299\u82AD\u82BD\u829F\u82B9\u82B1\u82AC\u82A5\u82AF\u82B8\u82A3\u82B0\u82BE\u82B7\u864E\u8671\u521D\u8868\u8ECB\u8FCE\u8FD4\u8FD1\u90B5\u90B8\u90B1\u90B6\u91C7\u91D1\u9577\u9580\u961C\u9640\u963F\u963B\u9644"],
      ["ab40", "\u9642\u96B9\u96E8\u9752\u975E\u4E9F\u4EAD\u4EAE\u4FE1\u4FB5\u4FAF\u4FBF\u4FE0\u4FD1\u4FCF\u4FDD\u4FC3\u4FB6\u4FD8\u4FDF\u4FCA\u4FD7\u4FAE\u4FD0\u4FC4\u4FC2\u4FDA\u4FCE\u4FDE\u4FB7\u5157\u5192\u5191\u51A0\u524E\u5243\u524A\u524D\u524C\u524B\u5247\u52C7\u52C9\u52C3\u52C1\u530D\u5357\u537B\u539A\u53DB\u54AC\u54C0\u54A8\u54CE\u54C9\u54B8\u54A6\u54B3\u54C7\u54C2\u54BD\u54AA\u54C1"],
      ["aba1", "\u54C4\u54C8\u54AF\u54AB\u54B1\u54BB\u54A9\u54A7\u54BF\u56FF\u5782\u578B\u57A0\u57A3\u57A2\u57CE\u57AE\u5793\u5955\u5951\u594F\u594E\u5950\u59DC\u59D8\u59FF\u59E3\u59E8\u5A03\u59E5\u59EA\u59DA\u59E6\u5A01\u59FB\u5B69\u5BA3\u5BA6\u5BA4\u5BA2\u5BA5\u5C01\u5C4E\u5C4F\u5C4D\u5C4B\u5CD9\u5CD2\u5DF7\u5E1D\u5E25\u5E1F\u5E7D\u5EA0\u5EA6\u5EFA\u5F08\u5F2D\u5F65\u5F88\u5F85\u5F8A\u5F8B\u5F87\u5F8C\u5F89\u6012\u601D\u6020\u6025\u600E\u6028\u604D\u6070\u6068\u6062\u6046\u6043\u606C\u606B\u606A\u6064\u6241\u62DC\u6316\u6309\u62FC\u62ED\u6301\u62EE\u62FD\u6307\u62F1\u62F7"],
      ["ac40", "\u62EF\u62EC\u62FE\u62F4\u6311\u6302\u653F\u6545\u65AB\u65BD\u65E2\u6625\u662D\u6620\u6627\u662F\u661F\u6628\u6631\u6624\u66F7\u67FF\u67D3\u67F1\u67D4\u67D0\u67EC\u67B6\u67AF\u67F5\u67E9\u67EF\u67C4\u67D1\u67B4\u67DA\u67E5\u67B8\u67CF\u67DE\u67F3\u67B0\u67D9\u67E2\u67DD\u67D2\u6B6A\u6B83\u6B86\u6BB5\u6BD2\u6BD7\u6C1F\u6CC9\u6D0B\u6D32\u6D2A\u6D41\u6D25\u6D0C\u6D31\u6D1E\u6D17"],
      ["aca1", "\u6D3B\u6D3D\u6D3E\u6D36\u6D1B\u6CF5\u6D39\u6D27\u6D38\u6D29\u6D2E\u6D35\u6D0E\u6D2B\u70AB\u70BA\u70B3\u70AC\u70AF\u70AD\u70B8\u70AE\u70A4\u7230\u7272\u726F\u7274\u72E9\u72E0\u72E1\u73B7\u73CA\u73BB\u73B2\u73CD\u73C0\u73B3\u751A\u752D\u754F\u754C\u754E\u754B\u75AB\u75A4\u75A5\u75A2\u75A3\u7678\u7686\u7687\u7688\u76C8\u76C6\u76C3\u76C5\u7701\u76F9\u76F8\u7709\u770B\u76FE\u76FC\u7707\u77DC\u7802\u7814\u780C\u780D\u7946\u7949\u7948\u7947\u79B9\u79BA\u79D1\u79D2\u79CB\u7A7F\u7A81\u7AFF\u7AFD\u7C7D\u7D02\u7D05\u7D00\u7D09\u7D07\u7D04\u7D06\u7F38\u7F8E\u7FBF\u8004"],
      ["ad40", "\u8010\u800D\u8011\u8036\u80D6\u80E5\u80DA\u80C3\u80C4\u80CC\u80E1\u80DB\u80CE\u80DE\u80E4\u80DD\u81F4\u8222\u82E7\u8303\u8305\u82E3\u82DB\u82E6\u8304\u82E5\u8302\u8309\u82D2\u82D7\u82F1\u8301\u82DC\u82D4\u82D1\u82DE\u82D3\u82DF\u82EF\u8306\u8650\u8679\u867B\u867A\u884D\u886B\u8981\u89D4\u8A08\u8A02\u8A03\u8C9E\u8CA0\u8D74\u8D73\u8DB4\u8ECD\u8ECC\u8FF0\u8FE6\u8FE2\u8FEA\u8FE5"],
      ["ada1", "\u8FED\u8FEB\u8FE4\u8FE8\u90CA\u90CE\u90C1\u90C3\u914B\u914A\u91CD\u9582\u9650\u964B\u964C\u964D\u9762\u9769\u97CB\u97ED\u97F3\u9801\u98A8\u98DB\u98DF\u9996\u9999\u4E58\u4EB3\u500C\u500D\u5023\u4FEF\u5026\u5025\u4FF8\u5029\u5016\u5006\u503C\u501F\u501A\u5012\u5011\u4FFA\u5000\u5014\u5028\u4FF1\u5021\u500B\u5019\u5018\u4FF3\u4FEE\u502D\u502A\u4FFE\u502B\u5009\u517C\u51A4\u51A5\u51A2\u51CD\u51CC\u51C6\u51CB\u5256\u525C\u5254\u525B\u525D\u532A\u537F\u539F\u539D\u53DF\u54E8\u5510\u5501\u5537\u54FC\u54E5\u54F2\u5506\u54FA\u5514\u54E9\u54ED\u54E1\u5509\u54EE\u54EA"],
      ["ae40", "\u54E6\u5527\u5507\u54FD\u550F\u5703\u5704\u57C2\u57D4\u57CB\u57C3\u5809\u590F\u5957\u5958\u595A\u5A11\u5A18\u5A1C\u5A1F\u5A1B\u5A13\u59EC\u5A20\u5A23\u5A29\u5A25\u5A0C\u5A09\u5B6B\u5C58\u5BB0\u5BB3\u5BB6\u5BB4\u5BAE\u5BB5\u5BB9\u5BB8\u5C04\u5C51\u5C55\u5C50\u5CED\u5CFD\u5CFB\u5CEA\u5CE8\u5CF0\u5CF6\u5D01\u5CF4\u5DEE\u5E2D\u5E2B\u5EAB\u5EAD\u5EA7\u5F31\u5F92\u5F91\u5F90\u6059"],
      ["aea1", "\u6063\u6065\u6050\u6055\u606D\u6069\u606F\u6084\u609F\u609A\u608D\u6094\u608C\u6085\u6096\u6247\u62F3\u6308\u62FF\u634E\u633E\u632F\u6355\u6342\u6346\u634F\u6349\u633A\u6350\u633D\u632A\u632B\u6328\u634D\u634C\u6548\u6549\u6599\u65C1\u65C5\u6642\u6649\u664F\u6643\u6652\u664C\u6645\u6641\u66F8\u6714\u6715\u6717\u6821\u6838\u6848\u6846\u6853\u6839\u6842\u6854\u6829\u68B3\u6817\u684C\u6851\u683D\u67F4\u6850\u6840\u683C\u6843\u682A\u6845\u6813\u6818\u6841\u6B8A\u6B89\u6BB7\u6C23\u6C27\u6C28\u6C26\u6C24\u6CF0\u6D6A\u6D95\u6D88\u6D87\u6D66\u6D78\u6D77\u6D59\u6D93"],
      ["af40", "\u6D6C\u6D89\u6D6E\u6D5A\u6D74\u6D69\u6D8C\u6D8A\u6D79\u6D85\u6D65\u6D94\u70CA\u70D8\u70E4\u70D9\u70C8\u70CF\u7239\u7279\u72FC\u72F9\u72FD\u72F8\u72F7\u7386\u73ED\u7409\u73EE\u73E0\u73EA\u73DE\u7554\u755D\u755C\u755A\u7559\u75BE\u75C5\u75C7\u75B2\u75B3\u75BD\u75BC\u75B9\u75C2\u75B8\u768B\u76B0\u76CA\u76CD\u76CE\u7729\u771F\u7720\u7728\u77E9\u7830\u7827\u7838\u781D\u7834\u7837"],
      ["afa1", "\u7825\u782D\u7820\u781F\u7832\u7955\u7950\u7960\u795F\u7956\u795E\u795D\u7957\u795A\u79E4\u79E3\u79E7\u79DF\u79E6\u79E9\u79D8\u7A84\u7A88\u7AD9\u7B06\u7B11\u7C89\u7D21\u7D17\u7D0B\u7D0A\u7D20\u7D22\u7D14\u7D10\u7D15\u7D1A\u7D1C\u7D0D\u7D19\u7D1B\u7F3A\u7F5F\u7F94\u7FC5\u7FC1\u8006\u8018\u8015\u8019\u8017\u803D\u803F\u80F1\u8102\u80F0\u8105\u80ED\u80F4\u8106\u80F8\u80F3\u8108\u80FD\u810A\u80FC\u80EF\u81ED\u81EC\u8200\u8210\u822A\u822B\u8228\u822C\u82BB\u832B\u8352\u8354\u834A\u8338\u8350\u8349\u8335\u8334\u834F\u8332\u8339\u8336\u8317\u8340\u8331\u8328\u8343"],
      ["b040", "\u8654\u868A\u86AA\u8693\u86A4\u86A9\u868C\u86A3\u869C\u8870\u8877\u8881\u8882\u887D\u8879\u8A18\u8A10\u8A0E\u8A0C\u8A15\u8A0A\u8A17\u8A13\u8A16\u8A0F\u8A11\u8C48\u8C7A\u8C79\u8CA1\u8CA2\u8D77\u8EAC\u8ED2\u8ED4\u8ECF\u8FB1\u9001\u9006\u8FF7\u9000\u8FFA\u8FF4\u9003\u8FFD\u9005\u8FF8\u9095\u90E1\u90DD\u90E2\u9152\u914D\u914C\u91D8\u91DD\u91D7\u91DC\u91D9\u9583\u9662\u9663\u9661"],
      ["b0a1", "\u965B\u965D\u9664\u9658\u965E\u96BB\u98E2\u99AC\u9AA8\u9AD8\u9B25\u9B32\u9B3C\u4E7E\u507A\u507D\u505C\u5047\u5043\u504C\u505A\u5049\u5065\u5076\u504E\u5055\u5075\u5074\u5077\u504F\u500F\u506F\u506D\u515C\u5195\u51F0\u526A\u526F\u52D2\u52D9\u52D8\u52D5\u5310\u530F\u5319\u533F\u5340\u533E\u53C3\u66FC\u5546\u556A\u5566\u5544\u555E\u5561\u5543\u554A\u5531\u5556\u554F\u5555\u552F\u5564\u5538\u552E\u555C\u552C\u5563\u5533\u5541\u5557\u5708\u570B\u5709\u57DF\u5805\u580A\u5806\u57E0\u57E4\u57FA\u5802\u5835\u57F7\u57F9\u5920\u5962\u5A36\u5A41\u5A49\u5A66\u5A6A\u5A40"],
      ["b140", "\u5A3C\u5A62\u5A5A\u5A46\u5A4A\u5B70\u5BC7\u5BC5\u5BC4\u5BC2\u5BBF\u5BC6\u5C09\u5C08\u5C07\u5C60\u5C5C\u5C5D\u5D07\u5D06\u5D0E\u5D1B\u5D16\u5D22\u5D11\u5D29\u5D14\u5D19\u5D24\u5D27\u5D17\u5DE2\u5E38\u5E36\u5E33\u5E37\u5EB7\u5EB8\u5EB6\u5EB5\u5EBE\u5F35\u5F37\u5F57\u5F6C\u5F69\u5F6B\u5F97\u5F99\u5F9E\u5F98\u5FA1\u5FA0\u5F9C\u607F\u60A3\u6089\u60A0\u60A8\u60CB\u60B4\u60E6\u60BD"],
      ["b1a1", "\u60C5\u60BB\u60B5\u60DC\u60BC\u60D8\u60D5\u60C6\u60DF\u60B8\u60DA\u60C7\u621A\u621B\u6248\u63A0\u63A7\u6372\u6396\u63A2\u63A5\u6377\u6367\u6398\u63AA\u6371\u63A9\u6389\u6383\u639B\u636B\u63A8\u6384\u6388\u6399\u63A1\u63AC\u6392\u638F\u6380\u637B\u6369\u6368\u637A\u655D\u6556\u6551\u6559\u6557\u555F\u654F\u6558\u6555\u6554\u659C\u659B\u65AC\u65CF\u65CB\u65CC\u65CE\u665D\u665A\u6664\u6668\u6666\u665E\u66F9\u52D7\u671B\u6881\u68AF\u68A2\u6893\u68B5\u687F\u6876\u68B1\u68A7\u6897\u68B0\u6883\u68C4\u68AD\u6886\u6885\u6894\u689D\u68A8\u689F\u68A1\u6882\u6B32\u6BBA"],
      ["b240", "\u6BEB\u6BEC\u6C2B\u6D8E\u6DBC\u6DF3\u6DD9\u6DB2\u6DE1\u6DCC\u6DE4\u6DFB\u6DFA\u6E05\u6DC7\u6DCB\u6DAF\u6DD1\u6DAE\u6DDE\u6DF9\u6DB8\u6DF7\u6DF5\u6DC5\u6DD2\u6E1A\u6DB5\u6DDA\u6DEB\u6DD8\u6DEA\u6DF1\u6DEE\u6DE8\u6DC6\u6DC4\u6DAA\u6DEC\u6DBF\u6DE6\u70F9\u7109\u710A\u70FD\u70EF\u723D\u727D\u7281\u731C\u731B\u7316\u7313\u7319\u7387\u7405\u740A\u7403\u7406\u73FE\u740D\u74E0\u74F6"],
      ["b2a1", "\u74F7\u751C\u7522\u7565\u7566\u7562\u7570\u758F\u75D4\u75D5\u75B5\u75CA\u75CD\u768E\u76D4\u76D2\u76DB\u7737\u773E\u773C\u7736\u7738\u773A\u786B\u7843\u784E\u7965\u7968\u796D\u79FB\u7A92\u7A95\u7B20\u7B28\u7B1B\u7B2C\u7B26\u7B19\u7B1E\u7B2E\u7C92\u7C97\u7C95\u7D46\u7D43\u7D71\u7D2E\u7D39\u7D3C\u7D40\u7D30\u7D33\u7D44\u7D2F\u7D42\u7D32\u7D31\u7F3D\u7F9E\u7F9A\u7FCC\u7FCE\u7FD2\u801C\u804A\u8046\u812F\u8116\u8123\u812B\u8129\u8130\u8124\u8202\u8235\u8237\u8236\u8239\u838E\u839E\u8398\u8378\u83A2\u8396\u83BD\u83AB\u8392\u838A\u8393\u8389\u83A0\u8377\u837B\u837C"],
      ["b340", "\u8386\u83A7\u8655\u5F6A\u86C7\u86C0\u86B6\u86C4\u86B5\u86C6\u86CB\u86B1\u86AF\u86C9\u8853\u889E\u8888\u88AB\u8892\u8896\u888D\u888B\u8993\u898F\u8A2A\u8A1D\u8A23\u8A25\u8A31\u8A2D\u8A1F\u8A1B\u8A22\u8C49\u8C5A\u8CA9\u8CAC\u8CAB\u8CA8\u8CAA\u8CA7\u8D67\u8D66\u8DBE\u8DBA\u8EDB\u8EDF\u9019\u900D\u901A\u9017\u9023\u901F\u901D\u9010\u9015\u901E\u9020\u900F\u9022\u9016\u901B\u9014"],
      ["b3a1", "\u90E8\u90ED\u90FD\u9157\u91CE\u91F5\u91E6\u91E3\u91E7\u91ED\u91E9\u9589\u966A\u9675\u9673\u9678\u9670\u9674\u9676\u9677\u966C\u96C0\u96EA\u96E9\u7AE0\u7ADF\u9802\u9803\u9B5A\u9CE5\u9E75\u9E7F\u9EA5\u9EBB\u50A2\u508D\u5085\u5099\u5091\u5080\u5096\u5098\u509A\u6700\u51F1\u5272\u5274\u5275\u5269\u52DE\u52DD\u52DB\u535A\u53A5\u557B\u5580\u55A7\u557C\u558A\u559D\u5598\u5582\u559C\u55AA\u5594\u5587\u558B\u5583\u55B3\u55AE\u559F\u553E\u55B2\u559A\u55BB\u55AC\u55B1\u557E\u5589\u55AB\u5599\u570D\u582F\u582A\u5834\u5824\u5830\u5831\u5821\u581D\u5820\u58F9\u58FA\u5960"],
      ["b440", "\u5A77\u5A9A\u5A7F\u5A92\u5A9B\u5AA7\u5B73\u5B71\u5BD2\u5BCC\u5BD3\u5BD0\u5C0A\u5C0B\u5C31\u5D4C\u5D50\u5D34\u5D47\u5DFD\u5E45\u5E3D\u5E40\u5E43\u5E7E\u5ECA\u5EC1\u5EC2\u5EC4\u5F3C\u5F6D\u5FA9\u5FAA\u5FA8\u60D1\u60E1\u60B2\u60B6\u60E0\u611C\u6123\u60FA\u6115\u60F0\u60FB\u60F4\u6168\u60F1\u610E\u60F6\u6109\u6100\u6112\u621F\u6249\u63A3\u638C\u63CF\u63C0\u63E9\u63C9\u63C6\u63CD"],
      ["b4a1", "\u63D2\u63E3\u63D0\u63E1\u63D6\u63ED\u63EE\u6376\u63F4\u63EA\u63DB\u6452\u63DA\u63F9\u655E\u6566\u6562\u6563\u6591\u6590\u65AF\u666E\u6670\u6674\u6676\u666F\u6691\u667A\u667E\u6677\u66FE\u66FF\u671F\u671D\u68FA\u68D5\u68E0\u68D8\u68D7\u6905\u68DF\u68F5\u68EE\u68E7\u68F9\u68D2\u68F2\u68E3\u68CB\u68CD\u690D\u6912\u690E\u68C9\u68DA\u696E\u68FB\u6B3E\u6B3A\u6B3D\u6B98\u6B96\u6BBC\u6BEF\u6C2E\u6C2F\u6C2C\u6E2F\u6E38\u6E54\u6E21\u6E32\u6E67\u6E4A\u6E20\u6E25\u6E23\u6E1B\u6E5B\u6E58\u6E24\u6E56\u6E6E\u6E2D\u6E26\u6E6F\u6E34\u6E4D\u6E3A\u6E2C\u6E43\u6E1D\u6E3E\u6ECB"],
      ["b540", "\u6E89\u6E19\u6E4E\u6E63\u6E44\u6E72\u6E69\u6E5F\u7119\u711A\u7126\u7130\u7121\u7136\u716E\u711C\u724C\u7284\u7280\u7336\u7325\u7334\u7329\u743A\u742A\u7433\u7422\u7425\u7435\u7436\u7434\u742F\u741B\u7426\u7428\u7525\u7526\u756B\u756A\u75E2\u75DB\u75E3\u75D9\u75D8\u75DE\u75E0\u767B\u767C\u7696\u7693\u76B4\u76DC\u774F\u77ED\u785D\u786C\u786F\u7A0D\u7A08\u7A0B\u7A05\u7A00\u7A98"],
      ["b5a1", "\u7A97\u7A96\u7AE5\u7AE3\u7B49\u7B56\u7B46\u7B50\u7B52\u7B54\u7B4D\u7B4B\u7B4F\u7B51\u7C9F\u7CA5\u7D5E\u7D50\u7D68\u7D55\u7D2B\u7D6E\u7D72\u7D61\u7D66\u7D62\u7D70\u7D73\u5584\u7FD4\u7FD5\u800B\u8052\u8085\u8155\u8154\u814B\u8151\u814E\u8139\u8146\u813E\u814C\u8153\u8174\u8212\u821C\u83E9\u8403\u83F8\u840D\u83E0\u83C5\u840B\u83C1\u83EF\u83F1\u83F4\u8457\u840A\u83F0\u840C\u83CC\u83FD\u83F2\u83CA\u8438\u840E\u8404\u83DC\u8407\u83D4\u83DF\u865B\u86DF\u86D9\u86ED\u86D4\u86DB\u86E4\u86D0\u86DE\u8857\u88C1\u88C2\u88B1\u8983\u8996\u8A3B\u8A60\u8A55\u8A5E\u8A3C\u8A41"],
      ["b640", "\u8A54\u8A5B\u8A50\u8A46\u8A34\u8A3A\u8A36\u8A56\u8C61\u8C82\u8CAF\u8CBC\u8CB3\u8CBD\u8CC1\u8CBB\u8CC0\u8CB4\u8CB7\u8CB6\u8CBF\u8CB8\u8D8A\u8D85\u8D81\u8DCE\u8DDD\u8DCB\u8DDA\u8DD1\u8DCC\u8DDB\u8DC6\u8EFB\u8EF8\u8EFC\u8F9C\u902E\u9035\u9031\u9038\u9032\u9036\u9102\u90F5\u9109\u90FE\u9163\u9165\u91CF\u9214\u9215\u9223\u9209\u921E\u920D\u9210\u9207\u9211\u9594\u958F\u958B\u9591"],
      ["b6a1", "\u9593\u9592\u958E\u968A\u968E\u968B\u967D\u9685\u9686\u968D\u9672\u9684\u96C1\u96C5\u96C4\u96C6\u96C7\u96EF\u96F2\u97CC\u9805\u9806\u9808\u98E7\u98EA\u98EF\u98E9\u98F2\u98ED\u99AE\u99AD\u9EC3\u9ECD\u9ED1\u4E82\u50AD\u50B5\u50B2\u50B3\u50C5\u50BE\u50AC\u50B7\u50BB\u50AF\u50C7\u527F\u5277\u527D\u52DF\u52E6\u52E4\u52E2\u52E3\u532F\u55DF\u55E8\u55D3\u55E6\u55CE\u55DC\u55C7\u55D1\u55E3\u55E4\u55EF\u55DA\u55E1\u55C5\u55C6\u55E5\u55C9\u5712\u5713\u585E\u5851\u5858\u5857\u585A\u5854\u586B\u584C\u586D\u584A\u5862\u5852\u584B\u5967\u5AC1\u5AC9\u5ACC\u5ABE\u5ABD\u5ABC"],
      ["b740", "\u5AB3\u5AC2\u5AB2\u5D69\u5D6F\u5E4C\u5E79\u5EC9\u5EC8\u5F12\u5F59\u5FAC\u5FAE\u611A\u610F\u6148\u611F\u60F3\u611B\u60F9\u6101\u6108\u614E\u614C\u6144\u614D\u613E\u6134\u6127\u610D\u6106\u6137\u6221\u6222\u6413\u643E\u641E\u642A\u642D\u643D\u642C\u640F\u641C\u6414\u640D\u6436\u6416\u6417\u6406\u656C\u659F\u65B0\u6697\u6689\u6687\u6688\u6696\u6684\u6698\u668D\u6703\u6994\u696D"],
      ["b7a1", "\u695A\u6977\u6960\u6954\u6975\u6930\u6982\u694A\u6968\u696B\u695E\u6953\u6979\u6986\u695D\u6963\u695B\u6B47\u6B72\u6BC0\u6BBF\u6BD3\u6BFD\u6EA2\u6EAF\u6ED3\u6EB6\u6EC2\u6E90\u6E9D\u6EC7\u6EC5\u6EA5\u6E98\u6EBC\u6EBA\u6EAB\u6ED1\u6E96\u6E9C\u6EC4\u6ED4\u6EAA\u6EA7\u6EB4\u714E\u7159\u7169\u7164\u7149\u7167\u715C\u716C\u7166\u714C\u7165\u715E\u7146\u7168\u7156\u723A\u7252\u7337\u7345\u733F\u733E\u746F\u745A\u7455\u745F\u745E\u7441\u743F\u7459\u745B\u745C\u7576\u7578\u7600\u75F0\u7601\u75F2\u75F1\u75FA\u75FF\u75F4\u75F3\u76DE\u76DF\u775B\u776B\u7766\u775E\u7763"],
      ["b840", "\u7779\u776A\u776C\u775C\u7765\u7768\u7762\u77EE\u788E\u78B0\u7897\u7898\u788C\u7889\u787C\u7891\u7893\u787F\u797A\u797F\u7981\u842C\u79BD\u7A1C\u7A1A\u7A20\u7A14\u7A1F\u7A1E\u7A9F\u7AA0\u7B77\u7BC0\u7B60\u7B6E\u7B67\u7CB1\u7CB3\u7CB5\u7D93\u7D79\u7D91\u7D81\u7D8F\u7D5B\u7F6E\u7F69\u7F6A\u7F72\u7FA9\u7FA8\u7FA4\u8056\u8058\u8086\u8084\u8171\u8170\u8178\u8165\u816E\u8173\u816B"],
      ["b8a1", "\u8179\u817A\u8166\u8205\u8247\u8482\u8477\u843D\u8431\u8475\u8466\u846B\u8449\u846C\u845B\u843C\u8435\u8461\u8463\u8469\u846D\u8446\u865E\u865C\u865F\u86F9\u8713\u8708\u8707\u8700\u86FE\u86FB\u8702\u8703\u8706\u870A\u8859\u88DF\u88D4\u88D9\u88DC\u88D8\u88DD\u88E1\u88CA\u88D5\u88D2\u899C\u89E3\u8A6B\u8A72\u8A73\u8A66\u8A69\u8A70\u8A87\u8A7C\u8A63\u8AA0\u8A71\u8A85\u8A6D\u8A62\u8A6E\u8A6C\u8A79\u8A7B\u8A3E\u8A68\u8C62\u8C8A\u8C89\u8CCA\u8CC7\u8CC8\u8CC4\u8CB2\u8CC3\u8CC2\u8CC5\u8DE1\u8DDF\u8DE8\u8DEF\u8DF3\u8DFA\u8DEA\u8DE4\u8DE6\u8EB2\u8F03\u8F09\u8EFE\u8F0A"],
      ["b940", "\u8F9F\u8FB2\u904B\u904A\u9053\u9042\u9054\u903C\u9055\u9050\u9047\u904F\u904E\u904D\u9051\u903E\u9041\u9112\u9117\u916C\u916A\u9169\u91C9\u9237\u9257\u9238\u923D\u9240\u923E\u925B\u924B\u9264\u9251\u9234\u9249\u924D\u9245\u9239\u923F\u925A\u9598\u9698\u9694\u9695\u96CD\u96CB\u96C9\u96CA\u96F7\u96FB\u96F9\u96F6\u9756\u9774\u9776\u9810\u9811\u9813\u980A\u9812\u980C\u98FC\u98F4"],
      ["b9a1", "\u98FD\u98FE\u99B3\u99B1\u99B4\u9AE1\u9CE9\u9E82\u9F0E\u9F13\u9F20\u50E7\u50EE\u50E5\u50D6\u50ED\u50DA\u50D5\u50CF\u50D1\u50F1\u50CE\u50E9\u5162\u51F3\u5283\u5282\u5331\u53AD\u55FE\u5600\u561B\u5617\u55FD\u5614\u5606\u5609\u560D\u560E\u55F7\u5616\u561F\u5608\u5610\u55F6\u5718\u5716\u5875\u587E\u5883\u5893\u588A\u5879\u5885\u587D\u58FD\u5925\u5922\u5924\u596A\u5969\u5AE1\u5AE6\u5AE9\u5AD7\u5AD6\u5AD8\u5AE3\u5B75\u5BDE\u5BE7\u5BE1\u5BE5\u5BE6\u5BE8\u5BE2\u5BE4\u5BDF\u5C0D\u5C62\u5D84\u5D87\u5E5B\u5E63\u5E55\u5E57\u5E54\u5ED3\u5ED6\u5F0A\u5F46\u5F70\u5FB9\u6147"],
      ["ba40", "\u613F\u614B\u6177\u6162\u6163\u615F\u615A\u6158\u6175\u622A\u6487\u6458\u6454\u64A4\u6478\u645F\u647A\u6451\u6467\u6434\u646D\u647B\u6572\u65A1\u65D7\u65D6\u66A2\u66A8\u669D\u699C\u69A8\u6995\u69C1\u69AE\u69D3\u69CB\u699B\u69B7\u69BB\u69AB\u69B4\u69D0\u69CD\u69AD\u69CC\u69A6\u69C3\u69A3\u6B49\u6B4C\u6C33\u6F33\u6F14\u6EFE\u6F13\u6EF4\u6F29\u6F3E\u6F20\u6F2C\u6F0F\u6F02\u6F22"],
      ["baa1", "\u6EFF\u6EEF\u6F06\u6F31\u6F38\u6F32\u6F23\u6F15\u6F2B\u6F2F\u6F88\u6F2A\u6EEC\u6F01\u6EF2\u6ECC\u6EF7\u7194\u7199\u717D\u718A\u7184\u7192\u723E\u7292\u7296\u7344\u7350\u7464\u7463\u746A\u7470\u746D\u7504\u7591\u7627\u760D\u760B\u7609\u7613\u76E1\u76E3\u7784\u777D\u777F\u7761\u78C1\u789F\u78A7\u78B3\u78A9\u78A3\u798E\u798F\u798D\u7A2E\u7A31\u7AAA\u7AA9\u7AED\u7AEF\u7BA1\u7B95\u7B8B\u7B75\u7B97\u7B9D\u7B94\u7B8F\u7BB8\u7B87\u7B84\u7CB9\u7CBD\u7CBE\u7DBB\u7DB0\u7D9C\u7DBD\u7DBE\u7DA0\u7DCA\u7DB4\u7DB2\u7DB1\u7DBA\u7DA2\u7DBF\u7DB5\u7DB8\u7DAD\u7DD2\u7DC7\u7DAC"],
      ["bb40", "\u7F70\u7FE0\u7FE1\u7FDF\u805E\u805A\u8087\u8150\u8180\u818F\u8188\u818A\u817F\u8182\u81E7\u81FA\u8207\u8214\u821E\u824B\u84C9\u84BF\u84C6\u84C4\u8499\u849E\u84B2\u849C\u84CB\u84B8\u84C0\u84D3\u8490\u84BC\u84D1\u84CA\u873F\u871C\u873B\u8722\u8725\u8734\u8718\u8755\u8737\u8729\u88F3\u8902\u88F4\u88F9\u88F8\u88FD\u88E8\u891A\u88EF\u8AA6\u8A8C\u8A9E\u8AA3\u8A8D\u8AA1\u8A93\u8AA4"],
      ["bba1", "\u8AAA\u8AA5\u8AA8\u8A98\u8A91\u8A9A\u8AA7\u8C6A\u8C8D\u8C8C\u8CD3\u8CD1\u8CD2\u8D6B\u8D99\u8D95\u8DFC\u8F14\u8F12\u8F15\u8F13\u8FA3\u9060\u9058\u905C\u9063\u9059\u905E\u9062\u905D\u905B\u9119\u9118\u911E\u9175\u9178\u9177\u9174\u9278\u9280\u9285\u9298\u9296\u927B\u9293\u929C\u92A8\u927C\u9291\u95A1\u95A8\u95A9\u95A3\u95A5\u95A4\u9699\u969C\u969B\u96CC\u96D2\u9700\u977C\u9785\u97F6\u9817\u9818\u98AF\u98B1\u9903\u9905\u990C\u9909\u99C1\u9AAF\u9AB0\u9AE6\u9B41\u9B42\u9CF4\u9CF6\u9CF3\u9EBC\u9F3B\u9F4A\u5104\u5100\u50FB\u50F5\u50F9\u5102\u5108\u5109\u5105\u51DC"],
      ["bc40", "\u5287\u5288\u5289\u528D\u528A\u52F0\u53B2\u562E\u563B\u5639\u5632\u563F\u5634\u5629\u5653\u564E\u5657\u5674\u5636\u562F\u5630\u5880\u589F\u589E\u58B3\u589C\u58AE\u58A9\u58A6\u596D\u5B09\u5AFB\u5B0B\u5AF5\u5B0C\u5B08\u5BEE\u5BEC\u5BE9\u5BEB\u5C64\u5C65\u5D9D\u5D94\u5E62\u5E5F\u5E61\u5EE2\u5EDA\u5EDF\u5EDD\u5EE3\u5EE0\u5F48\u5F71\u5FB7\u5FB5\u6176\u6167\u616E\u615D\u6155\u6182"],
      ["bca1", "\u617C\u6170\u616B\u617E\u61A7\u6190\u61AB\u618E\u61AC\u619A\u61A4\u6194\u61AE\u622E\u6469\u646F\u6479\u649E\u64B2\u6488\u6490\u64B0\u64A5\u6493\u6495\u64A9\u6492\u64AE\u64AD\u64AB\u649A\u64AC\u6499\u64A2\u64B3\u6575\u6577\u6578\u66AE\u66AB\u66B4\u66B1\u6A23\u6A1F\u69E8\u6A01\u6A1E\u6A19\u69FD\u6A21\u6A13\u6A0A\u69F3\u6A02\u6A05\u69ED\u6A11\u6B50\u6B4E\u6BA4\u6BC5\u6BC6\u6F3F\u6F7C\u6F84\u6F51\u6F66\u6F54\u6F86\u6F6D\u6F5B\u6F78\u6F6E\u6F8E\u6F7A\u6F70\u6F64\u6F97\u6F58\u6ED5\u6F6F\u6F60\u6F5F\u719F\u71AC\u71B1\u71A8\u7256\u729B\u734E\u7357\u7469\u748B\u7483"],
      ["bd40", "\u747E\u7480\u757F\u7620\u7629\u761F\u7624\u7626\u7621\u7622\u769A\u76BA\u76E4\u778E\u7787\u778C\u7791\u778B\u78CB\u78C5\u78BA\u78CA\u78BE\u78D5\u78BC\u78D0\u7A3F\u7A3C\u7A40\u7A3D\u7A37\u7A3B\u7AAF\u7AAE\u7BAD\u7BB1\u7BC4\u7BB4\u7BC6\u7BC7\u7BC1\u7BA0\u7BCC\u7CCA\u7DE0\u7DF4\u7DEF\u7DFB\u7DD8\u7DEC\u7DDD\u7DE8\u7DE3\u7DDA\u7DDE\u7DE9\u7D9E\u7DD9\u7DF2\u7DF9\u7F75\u7F77\u7FAF"],
      ["bda1", "\u7FE9\u8026\u819B\u819C\u819D\u81A0\u819A\u8198\u8517\u853D\u851A\u84EE\u852C\u852D\u8513\u8511\u8523\u8521\u8514\u84EC\u8525\u84FF\u8506\u8782\u8774\u8776\u8760\u8766\u8778\u8768\u8759\u8757\u874C\u8753\u885B\u885D\u8910\u8907\u8912\u8913\u8915\u890A\u8ABC\u8AD2\u8AC7\u8AC4\u8A95\u8ACB\u8AF8\u8AB2\u8AC9\u8AC2\u8ABF\u8AB0\u8AD6\u8ACD\u8AB6\u8AB9\u8ADB\u8C4C\u8C4E\u8C6C\u8CE0\u8CDE\u8CE6\u8CE4\u8CEC\u8CED\u8CE2\u8CE3\u8CDC\u8CEA\u8CE1\u8D6D\u8D9F\u8DA3\u8E2B\u8E10\u8E1D\u8E22\u8E0F\u8E29\u8E1F\u8E21\u8E1E\u8EBA\u8F1D\u8F1B\u8F1F\u8F29\u8F26\u8F2A\u8F1C\u8F1E"],
      ["be40", "\u8F25\u9069\u906E\u9068\u906D\u9077\u9130\u912D\u9127\u9131\u9187\u9189\u918B\u9183\u92C5\u92BB\u92B7\u92EA\u92AC\u92E4\u92C1\u92B3\u92BC\u92D2\u92C7\u92F0\u92B2\u95AD\u95B1\u9704\u9706\u9707\u9709\u9760\u978D\u978B\u978F\u9821\u982B\u981C\u98B3\u990A\u9913\u9912\u9918\u99DD\u99D0\u99DF\u99DB\u99D1\u99D5\u99D2\u99D9\u9AB7\u9AEE\u9AEF\u9B27\u9B45\u9B44\u9B77\u9B6F\u9D06\u9D09"],
      ["bea1", "\u9D03\u9EA9\u9EBE\u9ECE\u58A8\u9F52\u5112\u5118\u5114\u5110\u5115\u5180\u51AA\u51DD\u5291\u5293\u52F3\u5659\u566B\u5679\u5669\u5664\u5678\u566A\u5668\u5665\u5671\u566F\u566C\u5662\u5676\u58C1\u58BE\u58C7\u58C5\u596E\u5B1D\u5B34\u5B78\u5BF0\u5C0E\u5F4A\u61B2\u6191\u61A9\u618A\u61CD\u61B6\u61BE\u61CA\u61C8\u6230\u64C5\u64C1\u64CB\u64BB\u64BC\u64DA\u64C4\u64C7\u64C2\u64CD\u64BF\u64D2\u64D4\u64BE\u6574\u66C6\u66C9\u66B9\u66C4\u66C7\u66B8\u6A3D\u6A38\u6A3A\u6A59\u6A6B\u6A58\u6A39\u6A44\u6A62\u6A61\u6A4B\u6A47\u6A35\u6A5F\u6A48\u6B59\u6B77\u6C05\u6FC2\u6FB1\u6FA1"],
      ["bf40", "\u6FC3\u6FA4\u6FC1\u6FA7\u6FB3\u6FC0\u6FB9\u6FB6\u6FA6\u6FA0\u6FB4\u71BE\u71C9\u71D0\u71D2\u71C8\u71D5\u71B9\u71CE\u71D9\u71DC\u71C3\u71C4\u7368\u749C\u74A3\u7498\u749F\u749E\u74E2\u750C\u750D\u7634\u7638\u763A\u76E7\u76E5\u77A0\u779E\u779F\u77A5\u78E8\u78DA\u78EC\u78E7\u79A6\u7A4D\u7A4E\u7A46\u7A4C\u7A4B\u7ABA\u7BD9\u7C11\u7BC9\u7BE4\u7BDB\u7BE1\u7BE9\u7BE6\u7CD5\u7CD6\u7E0A"],
      ["bfa1", "\u7E11\u7E08\u7E1B\u7E23\u7E1E\u7E1D\u7E09\u7E10\u7F79\u7FB2\u7FF0\u7FF1\u7FEE\u8028\u81B3\u81A9\u81A8\u81FB\u8208\u8258\u8259\u854A\u8559\u8548\u8568\u8569\u8543\u8549\u856D\u856A\u855E\u8783\u879F\u879E\u87A2\u878D\u8861\u892A\u8932\u8925\u892B\u8921\u89AA\u89A6\u8AE6\u8AFA\u8AEB\u8AF1\u8B00\u8ADC\u8AE7\u8AEE\u8AFE\u8B01\u8B02\u8AF7\u8AED\u8AF3\u8AF6\u8AFC\u8C6B\u8C6D\u8C93\u8CF4\u8E44\u8E31\u8E34\u8E42\u8E39\u8E35\u8F3B\u8F2F\u8F38\u8F33\u8FA8\u8FA6\u9075\u9074\u9078\u9072\u907C\u907A\u9134\u9192\u9320\u9336\u92F8\u9333\u932F\u9322\u92FC\u932B\u9304\u931A"],
      ["c040", "\u9310\u9326\u9321\u9315\u932E\u9319\u95BB\u96A7\u96A8\u96AA\u96D5\u970E\u9711\u9716\u970D\u9713\u970F\u975B\u975C\u9766\u9798\u9830\u9838\u983B\u9837\u982D\u9839\u9824\u9910\u9928\u991E\u991B\u9921\u991A\u99ED\u99E2\u99F1\u9AB8\u9ABC\u9AFB\u9AED\u9B28\u9B91\u9D15\u9D23\u9D26\u9D28\u9D12\u9D1B\u9ED8\u9ED4\u9F8D\u9F9C\u512A\u511F\u5121\u5132\u52F5\u568E\u5680\u5690\u5685\u5687"],
      ["c0a1", "\u568F\u58D5\u58D3\u58D1\u58CE\u5B30\u5B2A\u5B24\u5B7A\u5C37\u5C68\u5DBC\u5DBA\u5DBD\u5DB8\u5E6B\u5F4C\u5FBD\u61C9\u61C2\u61C7\u61E6\u61CB\u6232\u6234\u64CE\u64CA\u64D8\u64E0\u64F0\u64E6\u64EC\u64F1\u64E2\u64ED\u6582\u6583\u66D9\u66D6\u6A80\u6A94\u6A84\u6AA2\u6A9C\u6ADB\u6AA3\u6A7E\u6A97\u6A90\u6AA0\u6B5C\u6BAE\u6BDA\u6C08\u6FD8\u6FF1\u6FDF\u6FE0\u6FDB\u6FE4\u6FEB\u6FEF\u6F80\u6FEC\u6FE1\u6FE9\u6FD5\u6FEE\u6FF0\u71E7\u71DF\u71EE\u71E6\u71E5\u71ED\u71EC\u71F4\u71E0\u7235\u7246\u7370\u7372\u74A9\u74B0\u74A6\u74A8\u7646\u7642\u764C\u76EA\u77B3\u77AA\u77B0\u77AC"],
      ["c140", "\u77A7\u77AD\u77EF\u78F7\u78FA\u78F4\u78EF\u7901\u79A7\u79AA\u7A57\u7ABF\u7C07\u7C0D\u7BFE\u7BF7\u7C0C\u7BE0\u7CE0\u7CDC\u7CDE\u7CE2\u7CDF\u7CD9\u7CDD\u7E2E\u7E3E\u7E46\u7E37\u7E32\u7E43\u7E2B\u7E3D\u7E31\u7E45\u7E41\u7E34\u7E39\u7E48\u7E35\u7E3F\u7E2F\u7F44\u7FF3\u7FFC\u8071\u8072\u8070\u806F\u8073\u81C6\u81C3\u81BA\u81C2\u81C0\u81BF\u81BD\u81C9\u81BE\u81E8\u8209\u8271\u85AA"],
      ["c1a1", "\u8584\u857E\u859C\u8591\u8594\u85AF\u859B\u8587\u85A8\u858A\u8667\u87C0\u87D1\u87B3\u87D2\u87C6\u87AB\u87BB\u87BA\u87C8\u87CB\u893B\u8936\u8944\u8938\u893D\u89AC\u8B0E\u8B17\u8B19\u8B1B\u8B0A\u8B20\u8B1D\u8B04\u8B10\u8C41\u8C3F\u8C73\u8CFA\u8CFD\u8CFC\u8CF8\u8CFB\u8DA8\u8E49\u8E4B\u8E48\u8E4A\u8F44\u8F3E\u8F42\u8F45\u8F3F\u907F\u907D\u9084\u9081\u9082\u9080\u9139\u91A3\u919E\u919C\u934D\u9382\u9328\u9375\u934A\u9365\u934B\u9318\u937E\u936C\u935B\u9370\u935A\u9354\u95CA\u95CB\u95CC\u95C8\u95C6\u96B1\u96B8\u96D6\u971C\u971E\u97A0\u97D3\u9846\u98B6\u9935\u9A01"],
      ["c240", "\u99FF\u9BAE\u9BAB\u9BAA\u9BAD\u9D3B\u9D3F\u9E8B\u9ECF\u9EDE\u9EDC\u9EDD\u9EDB\u9F3E\u9F4B\u53E2\u5695\u56AE\u58D9\u58D8\u5B38\u5F5D\u61E3\u6233\u64F4\u64F2\u64FE\u6506\u64FA\u64FB\u64F7\u65B7\u66DC\u6726\u6AB3\u6AAC\u6AC3\u6ABB\u6AB8\u6AC2\u6AAE\u6AAF\u6B5F\u6B78\u6BAF\u7009\u700B\u6FFE\u7006\u6FFA\u7011\u700F\u71FB\u71FC\u71FE\u71F8\u7377\u7375\u74A7\u74BF\u7515\u7656\u7658"],
      ["c2a1", "\u7652\u77BD\u77BF\u77BB\u77BC\u790E\u79AE\u7A61\u7A62\u7A60\u7AC4\u7AC5\u7C2B\u7C27\u7C2A\u7C1E\u7C23\u7C21\u7CE7\u7E54\u7E55\u7E5E\u7E5A\u7E61\u7E52\u7E59\u7F48\u7FF9\u7FFB\u8077\u8076\u81CD\u81CF\u820A\u85CF\u85A9\u85CD\u85D0\u85C9\u85B0\u85BA\u85B9\u85A6\u87EF\u87EC\u87F2\u87E0\u8986\u89B2\u89F4\u8B28\u8B39\u8B2C\u8B2B\u8C50\u8D05\u8E59\u8E63\u8E66\u8E64\u8E5F\u8E55\u8EC0\u8F49\u8F4D\u9087\u9083\u9088\u91AB\u91AC\u91D0\u9394\u938A\u9396\u93A2\u93B3\u93AE\u93AC\u93B0\u9398\u939A\u9397\u95D4\u95D6\u95D0\u95D5\u96E2\u96DC\u96D9\u96DB\u96DE\u9724\u97A3\u97A6"],
      ["c340", "\u97AD\u97F9\u984D\u984F\u984C\u984E\u9853\u98BA\u993E\u993F\u993D\u992E\u99A5\u9A0E\u9AC1\u9B03\u9B06\u9B4F\u9B4E\u9B4D\u9BCA\u9BC9\u9BFD\u9BC8\u9BC0\u9D51\u9D5D\u9D60\u9EE0\u9F15\u9F2C\u5133\u56A5\u58DE\u58DF\u58E2\u5BF5\u9F90\u5EEC\u61F2\u61F7\u61F6\u61F5\u6500\u650F\u66E0\u66DD\u6AE5\u6ADD\u6ADA\u6AD3\u701B\u701F\u7028\u701A\u701D\u7015\u7018\u7206\u720D\u7258\u72A2\u7378"],
      ["c3a1", "\u737A\u74BD\u74CA\u74E3\u7587\u7586\u765F\u7661\u77C7\u7919\u79B1\u7A6B\u7A69\u7C3E\u7C3F\u7C38\u7C3D\u7C37\u7C40\u7E6B\u7E6D\u7E79\u7E69\u7E6A\u7F85\u7E73\u7FB6\u7FB9\u7FB8\u81D8\u85E9\u85DD\u85EA\u85D5\u85E4\u85E5\u85F7\u87FB\u8805\u880D\u87F9\u87FE\u8960\u895F\u8956\u895E\u8B41\u8B5C\u8B58\u8B49\u8B5A\u8B4E\u8B4F\u8B46\u8B59\u8D08\u8D0A\u8E7C\u8E72\u8E87\u8E76\u8E6C\u8E7A\u8E74\u8F54\u8F4E\u8FAD\u908A\u908B\u91B1\u91AE\u93E1\u93D1\u93DF\u93C3\u93C8\u93DC\u93DD\u93D6\u93E2\u93CD\u93D8\u93E4\u93D7\u93E8\u95DC\u96B4\u96E3\u972A\u9727\u9761\u97DC\u97FB\u985E"],
      ["c440", "\u9858\u985B\u98BC\u9945\u9949\u9A16\u9A19\u9B0D\u9BE8\u9BE7\u9BD6\u9BDB\u9D89\u9D61\u9D72\u9D6A\u9D6C\u9E92\u9E97\u9E93\u9EB4\u52F8\u56A8\u56B7\u56B6\u56B4\u56BC\u58E4\u5B40\u5B43\u5B7D\u5BF6\u5DC9\u61F8\u61FA\u6518\u6514\u6519\u66E6\u6727\u6AEC\u703E\u7030\u7032\u7210\u737B\u74CF\u7662\u7665\u7926\u792A\u792C\u792B\u7AC7\u7AF6\u7C4C\u7C43\u7C4D\u7CEF\u7CF0\u8FAE\u7E7D\u7E7C"],
      ["c4a1", "\u7E82\u7F4C\u8000\u81DA\u8266\u85FB\u85F9\u8611\u85FA\u8606\u860B\u8607\u860A\u8814\u8815\u8964\u89BA\u89F8\u8B70\u8B6C\u8B66\u8B6F\u8B5F\u8B6B\u8D0F\u8D0D\u8E89\u8E81\u8E85\u8E82\u91B4\u91CB\u9418\u9403\u93FD\u95E1\u9730\u98C4\u9952\u9951\u99A8\u9A2B\u9A30\u9A37\u9A35\u9C13\u9C0D\u9E79\u9EB5\u9EE8\u9F2F\u9F5F\u9F63\u9F61\u5137\u5138\u56C1\u56C0\u56C2\u5914\u5C6C\u5DCD\u61FC\u61FE\u651D\u651C\u6595\u66E9\u6AFB\u6B04\u6AFA\u6BB2\u704C\u721B\u72A7\u74D6\u74D4\u7669\u77D3\u7C50\u7E8F\u7E8C\u7FBC\u8617\u862D\u861A\u8823\u8822\u8821\u881F\u896A\u896C\u89BD\u8B74"],
      ["c540", "\u8B77\u8B7D\u8D13\u8E8A\u8E8D\u8E8B\u8F5F\u8FAF\u91BA\u942E\u9433\u9435\u943A\u9438\u9432\u942B\u95E2\u9738\u9739\u9732\u97FF\u9867\u9865\u9957\u9A45\u9A43\u9A40\u9A3E\u9ACF\u9B54\u9B51\u9C2D\u9C25\u9DAF\u9DB4\u9DC2\u9DB8\u9E9D\u9EEF\u9F19\u9F5C\u9F66\u9F67\u513C\u513B\u56C8\u56CA\u56C9\u5B7F\u5DD4\u5DD2\u5F4E\u61FF\u6524\u6B0A\u6B61\u7051\u7058\u7380\u74E4\u758A\u766E\u766C"],
      ["c5a1", "\u79B3\u7C60\u7C5F\u807E\u807D\u81DF\u8972\u896F\u89FC\u8B80\u8D16\u8D17\u8E91\u8E93\u8F61\u9148\u9444\u9451\u9452\u973D\u973E\u97C3\u97C1\u986B\u9955\u9A55\u9A4D\u9AD2\u9B1A\u9C49\u9C31\u9C3E\u9C3B\u9DD3\u9DD7\u9F34\u9F6C\u9F6A\u9F94\u56CC\u5DD6\u6200\u6523\u652B\u652A\u66EC\u6B10\u74DA\u7ACA\u7C64\u7C63\u7C65\u7E93\u7E96\u7E94\u81E2\u8638\u863F\u8831\u8B8A\u9090\u908F\u9463\u9460\u9464\u9768\u986F\u995C\u9A5A\u9A5B\u9A57\u9AD3\u9AD4\u9AD1\u9C54\u9C57\u9C56\u9DE5\u9E9F\u9EF4\u56D1\u58E9\u652C\u705E\u7671\u7672\u77D7\u7F50\u7F88\u8836\u8839\u8862\u8B93\u8B92"],
      ["c640", "\u8B96\u8277\u8D1B\u91C0\u946A\u9742\u9748\u9744\u97C6\u9870\u9A5F\u9B22\u9B58\u9C5F\u9DF9\u9DFA\u9E7C\u9E7D\u9F07\u9F77\u9F72\u5EF3\u6B16\u7063\u7C6C\u7C6E\u883B\u89C0\u8EA1\u91C1\u9472\u9470\u9871\u995E\u9AD6\u9B23\u9ECC\u7064\u77DA\u8B9A\u9477\u97C9\u9A62\u9A65\u7E9C\u8B9C\u8EAA\u91C5\u947D\u947E\u947C\u9C77\u9C78\u9EF7\u8C54\u947F\u9E1A\u7228\u9A6A\u9B31\u9E1B\u9E1E\u7C72"],
      ["c940", "\u4E42\u4E5C\u51F5\u531A\u5382\u4E07\u4E0C\u4E47\u4E8D\u56D7\uFA0C\u5C6E\u5F73\u4E0F\u5187\u4E0E\u4E2E\u4E93\u4EC2\u4EC9\u4EC8\u5198\u52FC\u536C\u53B9\u5720\u5903\u592C\u5C10\u5DFF\u65E1\u6BB3\u6BCC\u6C14\u723F\u4E31\u4E3C\u4EE8\u4EDC\u4EE9\u4EE1\u4EDD\u4EDA\u520C\u531C\u534C\u5722\u5723\u5917\u592F\u5B81\u5B84\u5C12\u5C3B\u5C74\u5C73\u5E04\u5E80\u5E82\u5FC9\u6209\u6250\u6C15"],
      ["c9a1", "\u6C36\u6C43\u6C3F\u6C3B\u72AE\u72B0\u738A\u79B8\u808A\u961E\u4F0E\u4F18\u4F2C\u4EF5\u4F14\u4EF1\u4F00\u4EF7\u4F08\u4F1D\u4F02\u4F05\u4F22\u4F13\u4F04\u4EF4\u4F12\u51B1\u5213\u5209\u5210\u52A6\u5322\u531F\u534D\u538A\u5407\u56E1\u56DF\u572E\u572A\u5734\u593C\u5980\u597C\u5985\u597B\u597E\u5977\u597F\u5B56\u5C15\u5C25\u5C7C\u5C7A\u5C7B\u5C7E\u5DDF\u5E75\u5E84\u5F02\u5F1A\u5F74\u5FD5\u5FD4\u5FCF\u625C\u625E\u6264\u6261\u6266\u6262\u6259\u6260\u625A\u6265\u65EF\u65EE\u673E\u6739\u6738\u673B\u673A\u673F\u673C\u6733\u6C18\u6C46\u6C52\u6C5C\u6C4F\u6C4A\u6C54\u6C4B"],
      ["ca40", "\u6C4C\u7071\u725E\u72B4\u72B5\u738E\u752A\u767F\u7A75\u7F51\u8278\u827C\u8280\u827D\u827F\u864D\u897E\u9099\u9097\u9098\u909B\u9094\u9622\u9624\u9620\u9623\u4F56\u4F3B\u4F62\u4F49\u4F53\u4F64\u4F3E\u4F67\u4F52\u4F5F\u4F41\u4F58\u4F2D\u4F33\u4F3F\u4F61\u518F\u51B9\u521C\u521E\u5221\u52AD\u52AE\u5309\u5363\u5372\u538E\u538F\u5430\u5437\u542A\u5454\u5445\u5419\u541C\u5425\u5418"],
      ["caa1", "\u543D\u544F\u5441\u5428\u5424\u5447\u56EE\u56E7\u56E5\u5741\u5745\u574C\u5749\u574B\u5752\u5906\u5940\u59A6\u5998\u59A0\u5997\u598E\u59A2\u5990\u598F\u59A7\u59A1\u5B8E\u5B92\u5C28\u5C2A\u5C8D\u5C8F\u5C88\u5C8B\u5C89\u5C92\u5C8A\u5C86\u5C93\u5C95\u5DE0\u5E0A\u5E0E\u5E8B\u5E89\u5E8C\u5E88\u5E8D\u5F05\u5F1D\u5F78\u5F76\u5FD2\u5FD1\u5FD0\u5FED\u5FE8\u5FEE\u5FF3\u5FE1\u5FE4\u5FE3\u5FFA\u5FEF\u5FF7\u5FFB\u6000\u5FF4\u623A\u6283\u628C\u628E\u628F\u6294\u6287\u6271\u627B\u627A\u6270\u6281\u6288\u6277\u627D\u6272\u6274\u6537\u65F0\u65F4\u65F3\u65F2\u65F5\u6745\u6747"],
      ["cb40", "\u6759\u6755\u674C\u6748\u675D\u674D\u675A\u674B\u6BD0\u6C19\u6C1A\u6C78\u6C67\u6C6B\u6C84\u6C8B\u6C8F\u6C71\u6C6F\u6C69\u6C9A\u6C6D\u6C87\u6C95\u6C9C\u6C66\u6C73\u6C65\u6C7B\u6C8E\u7074\u707A\u7263\u72BF\u72BD\u72C3\u72C6\u72C1\u72BA\u72C5\u7395\u7397\u7393\u7394\u7392\u753A\u7539\u7594\u7595\u7681\u793D\u8034\u8095\u8099\u8090\u8092\u809C\u8290\u828F\u8285\u828E\u8291\u8293"],
      ["cba1", "\u828A\u8283\u8284\u8C78\u8FC9\u8FBF\u909F\u90A1\u90A5\u909E\u90A7\u90A0\u9630\u9628\u962F\u962D\u4E33\u4F98\u4F7C\u4F85\u4F7D\u4F80\u4F87\u4F76\u4F74\u4F89\u4F84\u4F77\u4F4C\u4F97\u4F6A\u4F9A\u4F79\u4F81\u4F78\u4F90\u4F9C\u4F94\u4F9E\u4F92\u4F82\u4F95\u4F6B\u4F6E\u519E\u51BC\u51BE\u5235\u5232\u5233\u5246\u5231\u52BC\u530A\u530B\u533C\u5392\u5394\u5487\u547F\u5481\u5491\u5482\u5488\u546B\u547A\u547E\u5465\u546C\u5474\u5466\u548D\u546F\u5461\u5460\u5498\u5463\u5467\u5464\u56F7\u56F9\u576F\u5772\u576D\u576B\u5771\u5770\u5776\u5780\u5775\u577B\u5773\u5774\u5762"],
      ["cc40", "\u5768\u577D\u590C\u5945\u59B5\u59BA\u59CF\u59CE\u59B2\u59CC\u59C1\u59B6\u59BC\u59C3\u59D6\u59B1\u59BD\u59C0\u59C8\u59B4\u59C7\u5B62\u5B65\u5B93\u5B95\u5C44\u5C47\u5CAE\u5CA4\u5CA0\u5CB5\u5CAF\u5CA8\u5CAC\u5C9F\u5CA3\u5CAD\u5CA2\u5CAA\u5CA7\u5C9D\u5CA5\u5CB6\u5CB0\u5CA6\u5E17\u5E14\u5E19\u5F28\u5F22\u5F23\u5F24\u5F54\u5F82\u5F7E\u5F7D\u5FDE\u5FE5\u602D\u6026\u6019\u6032\u600B"],
      ["cca1", "\u6034\u600A\u6017\u6033\u601A\u601E\u602C\u6022\u600D\u6010\u602E\u6013\u6011\u600C\u6009\u601C\u6214\u623D\u62AD\u62B4\u62D1\u62BE\u62AA\u62B6\u62CA\u62AE\u62B3\u62AF\u62BB\u62A9\u62B0\u62B8\u653D\u65A8\u65BB\u6609\u65FC\u6604\u6612\u6608\u65FB\u6603\u660B\u660D\u6605\u65FD\u6611\u6610\u66F6\u670A\u6785\u676C\u678E\u6792\u6776\u677B\u6798\u6786\u6784\u6774\u678D\u678C\u677A\u679F\u6791\u6799\u6783\u677D\u6781\u6778\u6779\u6794\u6B25\u6B80\u6B7E\u6BDE\u6C1D\u6C93\u6CEC\u6CEB\u6CEE\u6CD9\u6CB6\u6CD4\u6CAD\u6CE7\u6CB7\u6CD0\u6CC2\u6CBA\u6CC3\u6CC6\u6CED\u6CF2"],
      ["cd40", "\u6CD2\u6CDD\u6CB4\u6C8A\u6C9D\u6C80\u6CDE\u6CC0\u6D30\u6CCD\u6CC7\u6CB0\u6CF9\u6CCF\u6CE9\u6CD1\u7094\u7098\u7085\u7093\u7086\u7084\u7091\u7096\u7082\u709A\u7083\u726A\u72D6\u72CB\u72D8\u72C9\u72DC\u72D2\u72D4\u72DA\u72CC\u72D1\u73A4\u73A1\u73AD\u73A6\u73A2\u73A0\u73AC\u739D\u74DD\u74E8\u753F\u7540\u753E\u758C\u7598\u76AF\u76F3\u76F1\u76F0\u76F5\u77F8\u77FC\u77F9\u77FB\u77FA"],
      ["cda1", "\u77F7\u7942\u793F\u79C5\u7A78\u7A7B\u7AFB\u7C75\u7CFD\u8035\u808F\u80AE\u80A3\u80B8\u80B5\u80AD\u8220\u82A0\u82C0\u82AB\u829A\u8298\u829B\u82B5\u82A7\u82AE\u82BC\u829E\u82BA\u82B4\u82A8\u82A1\u82A9\u82C2\u82A4\u82C3\u82B6\u82A2\u8670\u866F\u866D\u866E\u8C56\u8FD2\u8FCB\u8FD3\u8FCD\u8FD6\u8FD5\u8FD7\u90B2\u90B4\u90AF\u90B3\u90B0\u9639\u963D\u963C\u963A\u9643\u4FCD\u4FC5\u4FD3\u4FB2\u4FC9\u4FCB\u4FC1\u4FD4\u4FDC\u4FD9\u4FBB\u4FB3\u4FDB\u4FC7\u4FD6\u4FBA\u4FC0\u4FB9\u4FEC\u5244\u5249\u52C0\u52C2\u533D\u537C\u5397\u5396\u5399\u5398\u54BA\u54A1\u54AD\u54A5\u54CF"],
      ["ce40", "\u54C3\u830D\u54B7\u54AE\u54D6\u54B6\u54C5\u54C6\u54A0\u5470\u54BC\u54A2\u54BE\u5472\u54DE\u54B0\u57B5\u579E\u579F\u57A4\u578C\u5797\u579D\u579B\u5794\u5798\u578F\u5799\u57A5\u579A\u5795\u58F4\u590D\u5953\u59E1\u59DE\u59EE\u5A00\u59F1\u59DD\u59FA\u59FD\u59FC\u59F6\u59E4\u59F2\u59F7\u59DB\u59E9\u59F3\u59F5\u59E0\u59FE\u59F4\u59ED\u5BA8\u5C4C\u5CD0\u5CD8\u5CCC\u5CD7\u5CCB\u5CDB"],
      ["cea1", "\u5CDE\u5CDA\u5CC9\u5CC7\u5CCA\u5CD6\u5CD3\u5CD4\u5CCF\u5CC8\u5CC6\u5CCE\u5CDF\u5CF8\u5DF9\u5E21\u5E22\u5E23\u5E20\u5E24\u5EB0\u5EA4\u5EA2\u5E9B\u5EA3\u5EA5\u5F07\u5F2E\u5F56\u5F86\u6037\u6039\u6054\u6072\u605E\u6045\u6053\u6047\u6049\u605B\u604C\u6040\u6042\u605F\u6024\u6044\u6058\u6066\u606E\u6242\u6243\u62CF\u630D\u630B\u62F5\u630E\u6303\u62EB\u62F9\u630F\u630C\u62F8\u62F6\u6300\u6313\u6314\u62FA\u6315\u62FB\u62F0\u6541\u6543\u65AA\u65BF\u6636\u6621\u6632\u6635\u661C\u6626\u6622\u6633\u662B\u663A\u661D\u6634\u6639\u662E\u670F\u6710\u67C1\u67F2\u67C8\u67BA"],
      ["cf40", "\u67DC\u67BB\u67F8\u67D8\u67C0\u67B7\u67C5\u67EB\u67E4\u67DF\u67B5\u67CD\u67B3\u67F7\u67F6\u67EE\u67E3\u67C2\u67B9\u67CE\u67E7\u67F0\u67B2\u67FC\u67C6\u67ED\u67CC\u67AE\u67E6\u67DB\u67FA\u67C9\u67CA\u67C3\u67EA\u67CB\u6B28\u6B82\u6B84\u6BB6\u6BD6\u6BD8\u6BE0\u6C20\u6C21\u6D28\u6D34\u6D2D\u6D1F\u6D3C\u6D3F\u6D12\u6D0A\u6CDA\u6D33\u6D04\u6D19\u6D3A\u6D1A\u6D11\u6D00\u6D1D\u6D42"],
      ["cfa1", "\u6D01\u6D18\u6D37\u6D03\u6D0F\u6D40\u6D07\u6D20\u6D2C\u6D08\u6D22\u6D09\u6D10\u70B7\u709F\u70BE\u70B1\u70B0\u70A1\u70B4\u70B5\u70A9\u7241\u7249\u724A\u726C\u7270\u7273\u726E\u72CA\u72E4\u72E8\u72EB\u72DF\u72EA\u72E6\u72E3\u7385\u73CC\u73C2\u73C8\u73C5\u73B9\u73B6\u73B5\u73B4\u73EB\u73BF\u73C7\u73BE\u73C3\u73C6\u73B8\u73CB\u74EC\u74EE\u752E\u7547\u7548\u75A7\u75AA\u7679\u76C4\u7708\u7703\u7704\u7705\u770A\u76F7\u76FB\u76FA\u77E7\u77E8\u7806\u7811\u7812\u7805\u7810\u780F\u780E\u7809\u7803\u7813\u794A\u794C\u794B\u7945\u7944\u79D5\u79CD\u79CF\u79D6\u79CE\u7A80"],
      ["d040", "\u7A7E\u7AD1\u7B00\u7B01\u7C7A\u7C78\u7C79\u7C7F\u7C80\u7C81\u7D03\u7D08\u7D01\u7F58\u7F91\u7F8D\u7FBE\u8007\u800E\u800F\u8014\u8037\u80D8\u80C7\u80E0\u80D1\u80C8\u80C2\u80D0\u80C5\u80E3\u80D9\u80DC\u80CA\u80D5\u80C9\u80CF\u80D7\u80E6\u80CD\u81FF\u8221\u8294\u82D9\u82FE\u82F9\u8307\u82E8\u8300\u82D5\u833A\u82EB\u82D6\u82F4\u82EC\u82E1\u82F2\u82F5\u830C\u82FB\u82F6\u82F0\u82EA"],
      ["d0a1", "\u82E4\u82E0\u82FA\u82F3\u82ED\u8677\u8674\u867C\u8673\u8841\u884E\u8867\u886A\u8869\u89D3\u8A04\u8A07\u8D72\u8FE3\u8FE1\u8FEE\u8FE0\u90F1\u90BD\u90BF\u90D5\u90C5\u90BE\u90C7\u90CB\u90C8\u91D4\u91D3\u9654\u964F\u9651\u9653\u964A\u964E\u501E\u5005\u5007\u5013\u5022\u5030\u501B\u4FF5\u4FF4\u5033\u5037\u502C\u4FF6\u4FF7\u5017\u501C\u5020\u5027\u5035\u502F\u5031\u500E\u515A\u5194\u5193\u51CA\u51C4\u51C5\u51C8\u51CE\u5261\u525A\u5252\u525E\u525F\u5255\u5262\u52CD\u530E\u539E\u5526\u54E2\u5517\u5512\u54E7\u54F3\u54E4\u551A\u54FF\u5504\u5508\u54EB\u5511\u5505\u54F1"],
      ["d140", "\u550A\u54FB\u54F7\u54F8\u54E0\u550E\u5503\u550B\u5701\u5702\u57CC\u5832\u57D5\u57D2\u57BA\u57C6\u57BD\u57BC\u57B8\u57B6\u57BF\u57C7\u57D0\u57B9\u57C1\u590E\u594A\u5A19\u5A16\u5A2D\u5A2E\u5A15\u5A0F\u5A17\u5A0A\u5A1E\u5A33\u5B6C\u5BA7\u5BAD\u5BAC\u5C03\u5C56\u5C54\u5CEC\u5CFF\u5CEE\u5CF1\u5CF7\u5D00\u5CF9\u5E29\u5E28\u5EA8\u5EAE\u5EAA\u5EAC\u5F33\u5F30\u5F67\u605D\u605A\u6067"],
      ["d1a1", "\u6041\u60A2\u6088\u6080\u6092\u6081\u609D\u6083\u6095\u609B\u6097\u6087\u609C\u608E\u6219\u6246\u62F2\u6310\u6356\u632C\u6344\u6345\u6336\u6343\u63E4\u6339\u634B\u634A\u633C\u6329\u6341\u6334\u6358\u6354\u6359\u632D\u6347\u6333\u635A\u6351\u6338\u6357\u6340\u6348\u654A\u6546\u65C6\u65C3\u65C4\u65C2\u664A\u665F\u6647\u6651\u6712\u6713\u681F\u681A\u6849\u6832\u6833\u683B\u684B\u684F\u6816\u6831\u681C\u6835\u682B\u682D\u682F\u684E\u6844\u6834\u681D\u6812\u6814\u6826\u6828\u682E\u684D\u683A\u6825\u6820\u6B2C\u6B2F\u6B2D\u6B31\u6B34\u6B6D\u8082\u6B88\u6BE6\u6BE4"],
      ["d240", "\u6BE8\u6BE3\u6BE2\u6BE7\u6C25\u6D7A\u6D63\u6D64\u6D76\u6D0D\u6D61\u6D92\u6D58\u6D62\u6D6D\u6D6F\u6D91\u6D8D\u6DEF\u6D7F\u6D86\u6D5E\u6D67\u6D60\u6D97\u6D70\u6D7C\u6D5F\u6D82\u6D98\u6D2F\u6D68\u6D8B\u6D7E\u6D80\u6D84\u6D16\u6D83\u6D7B\u6D7D\u6D75\u6D90\u70DC\u70D3\u70D1\u70DD\u70CB\u7F39\u70E2\u70D7\u70D2\u70DE\u70E0\u70D4\u70CD\u70C5\u70C6\u70C7\u70DA\u70CE\u70E1\u7242\u7278"],
      ["d2a1", "\u7277\u7276\u7300\u72FA\u72F4\u72FE\u72F6\u72F3\u72FB\u7301\u73D3\u73D9\u73E5\u73D6\u73BC\u73E7\u73E3\u73E9\u73DC\u73D2\u73DB\u73D4\u73DD\u73DA\u73D7\u73D8\u73E8\u74DE\u74DF\u74F4\u74F5\u7521\u755B\u755F\u75B0\u75C1\u75BB\u75C4\u75C0\u75BF\u75B6\u75BA\u768A\u76C9\u771D\u771B\u7710\u7713\u7712\u7723\u7711\u7715\u7719\u771A\u7722\u7727\u7823\u782C\u7822\u7835\u782F\u7828\u782E\u782B\u7821\u7829\u7833\u782A\u7831\u7954\u795B\u794F\u795C\u7953\u7952\u7951\u79EB\u79EC\u79E0\u79EE\u79ED\u79EA\u79DC\u79DE\u79DD\u7A86\u7A89\u7A85\u7A8B\u7A8C\u7A8A\u7A87\u7AD8\u7B10"],
      ["d340", "\u7B04\u7B13\u7B05\u7B0F\u7B08\u7B0A\u7B0E\u7B09\u7B12\u7C84\u7C91\u7C8A\u7C8C\u7C88\u7C8D\u7C85\u7D1E\u7D1D\u7D11\u7D0E\u7D18\u7D16\u7D13\u7D1F\u7D12\u7D0F\u7D0C\u7F5C\u7F61\u7F5E\u7F60\u7F5D\u7F5B\u7F96\u7F92\u7FC3\u7FC2\u7FC0\u8016\u803E\u8039\u80FA\u80F2\u80F9\u80F5\u8101\u80FB\u8100\u8201\u822F\u8225\u8333\u832D\u8344\u8319\u8351\u8325\u8356\u833F\u8341\u8326\u831C\u8322"],
      ["d3a1", "\u8342\u834E\u831B\u832A\u8308\u833C\u834D\u8316\u8324\u8320\u8337\u832F\u8329\u8347\u8345\u834C\u8353\u831E\u832C\u834B\u8327\u8348\u8653\u8652\u86A2\u86A8\u8696\u868D\u8691\u869E\u8687\u8697\u8686\u868B\u869A\u8685\u86A5\u8699\u86A1\u86A7\u8695\u8698\u868E\u869D\u8690\u8694\u8843\u8844\u886D\u8875\u8876\u8872\u8880\u8871\u887F\u886F\u8883\u887E\u8874\u887C\u8A12\u8C47\u8C57\u8C7B\u8CA4\u8CA3\u8D76\u8D78\u8DB5\u8DB7\u8DB6\u8ED1\u8ED3\u8FFE\u8FF5\u9002\u8FFF\u8FFB\u9004\u8FFC\u8FF6\u90D6\u90E0\u90D9\u90DA\u90E3\u90DF\u90E5\u90D8\u90DB\u90D7\u90DC\u90E4\u9150"],
      ["d440", "\u914E\u914F\u91D5\u91E2\u91DA\u965C\u965F\u96BC\u98E3\u9ADF\u9B2F\u4E7F\u5070\u506A\u5061\u505E\u5060\u5053\u504B\u505D\u5072\u5048\u504D\u5041\u505B\u504A\u5062\u5015\u5045\u505F\u5069\u506B\u5063\u5064\u5046\u5040\u506E\u5073\u5057\u5051\u51D0\u526B\u526D\u526C\u526E\u52D6\u52D3\u532D\u539C\u5575\u5576\u553C\u554D\u5550\u5534\u552A\u5551\u5562\u5536\u5535\u5530\u5552\u5545"],
      ["d4a1", "\u550C\u5532\u5565\u554E\u5539\u5548\u552D\u553B\u5540\u554B\u570A\u5707\u57FB\u5814\u57E2\u57F6\u57DC\u57F4\u5800\u57ED\u57FD\u5808\u57F8\u580B\u57F3\u57CF\u5807\u57EE\u57E3\u57F2\u57E5\u57EC\u57E1\u580E\u57FC\u5810\u57E7\u5801\u580C\u57F1\u57E9\u57F0\u580D\u5804\u595C\u5A60\u5A58\u5A55\u5A67\u5A5E\u5A38\u5A35\u5A6D\u5A50\u5A5F\u5A65\u5A6C\u5A53\u5A64\u5A57\u5A43\u5A5D\u5A52\u5A44\u5A5B\u5A48\u5A8E\u5A3E\u5A4D\u5A39\u5A4C\u5A70\u5A69\u5A47\u5A51\u5A56\u5A42\u5A5C\u5B72\u5B6E\u5BC1\u5BC0\u5C59\u5D1E\u5D0B\u5D1D\u5D1A\u5D20\u5D0C\u5D28\u5D0D\u5D26\u5D25\u5D0F"],
      ["d540", "\u5D30\u5D12\u5D23\u5D1F\u5D2E\u5E3E\u5E34\u5EB1\u5EB4\u5EB9\u5EB2\u5EB3\u5F36\u5F38\u5F9B\u5F96\u5F9F\u608A\u6090\u6086\u60BE\u60B0\u60BA\u60D3\u60D4\u60CF\u60E4\u60D9\u60DD\u60C8\u60B1\u60DB\u60B7\u60CA\u60BF\u60C3\u60CD\u60C0\u6332\u6365\u638A\u6382\u637D\u63BD\u639E\u63AD\u639D\u6397\u63AB\u638E\u636F\u6387\u6390\u636E\u63AF\u6375\u639C\u636D\u63AE\u637C\u63A4\u633B\u639F"],
      ["d5a1", "\u6378\u6385\u6381\u6391\u638D\u6370\u6553\u65CD\u6665\u6661\u665B\u6659\u665C\u6662\u6718\u6879\u6887\u6890\u689C\u686D\u686E\u68AE\u68AB\u6956\u686F\u68A3\u68AC\u68A9\u6875\u6874\u68B2\u688F\u6877\u6892\u687C\u686B\u6872\u68AA\u6880\u6871\u687E\u689B\u6896\u688B\u68A0\u6889\u68A4\u6878\u687B\u6891\u688C\u688A\u687D\u6B36\u6B33\u6B37\u6B38\u6B91\u6B8F\u6B8D\u6B8E\u6B8C\u6C2A\u6DC0\u6DAB\u6DB4\u6DB3\u6E74\u6DAC\u6DE9\u6DE2\u6DB7\u6DF6\u6DD4\u6E00\u6DC8\u6DE0\u6DDF\u6DD6\u6DBE\u6DE5\u6DDC\u6DDD\u6DDB\u6DF4\u6DCA\u6DBD\u6DED\u6DF0\u6DBA\u6DD5\u6DC2\u6DCF\u6DC9"],
      ["d640", "\u6DD0\u6DF2\u6DD3\u6DFD\u6DD7\u6DCD\u6DE3\u6DBB\u70FA\u710D\u70F7\u7117\u70F4\u710C\u70F0\u7104\u70F3\u7110\u70FC\u70FF\u7106\u7113\u7100\u70F8\u70F6\u710B\u7102\u710E\u727E\u727B\u727C\u727F\u731D\u7317\u7307\u7311\u7318\u730A\u7308\u72FF\u730F\u731E\u7388\u73F6\u73F8\u73F5\u7404\u7401\u73FD\u7407\u7400\u73FA\u73FC\u73FF\u740C\u740B\u73F4\u7408\u7564\u7563\u75CE\u75D2\u75CF"],
      ["d6a1", "\u75CB\u75CC\u75D1\u75D0\u768F\u7689\u76D3\u7739\u772F\u772D\u7731\u7732\u7734\u7733\u773D\u7725\u773B\u7735\u7848\u7852\u7849\u784D\u784A\u784C\u7826\u7845\u7850\u7964\u7967\u7969\u796A\u7963\u796B\u7961\u79BB\u79FA\u79F8\u79F6\u79F7\u7A8F\u7A94\u7A90\u7B35\u7B47\u7B34\u7B25\u7B30\u7B22\u7B24\u7B33\u7B18\u7B2A\u7B1D\u7B31\u7B2B\u7B2D\u7B2F\u7B32\u7B38\u7B1A\u7B23\u7C94\u7C98\u7C96\u7CA3\u7D35\u7D3D\u7D38\u7D36\u7D3A\u7D45\u7D2C\u7D29\u7D41\u7D47\u7D3E\u7D3F\u7D4A\u7D3B\u7D28\u7F63\u7F95\u7F9C\u7F9D\u7F9B\u7FCA\u7FCB\u7FCD\u7FD0\u7FD1\u7FC7\u7FCF\u7FC9\u801F"],
      ["d740", "\u801E\u801B\u8047\u8043\u8048\u8118\u8125\u8119\u811B\u812D\u811F\u812C\u811E\u8121\u8115\u8127\u811D\u8122\u8211\u8238\u8233\u823A\u8234\u8232\u8274\u8390\u83A3\u83A8\u838D\u837A\u8373\u83A4\u8374\u838F\u8381\u8395\u8399\u8375\u8394\u83A9\u837D\u8383\u838C\u839D\u839B\u83AA\u838B\u837E\u83A5\u83AF\u8388\u8397\u83B0\u837F\u83A6\u8387\u83AE\u8376\u839A\u8659\u8656\u86BF\u86B7"],
      ["d7a1", "\u86C2\u86C1\u86C5\u86BA\u86B0\u86C8\u86B9\u86B3\u86B8\u86CC\u86B4\u86BB\u86BC\u86C3\u86BD\u86BE\u8852\u8889\u8895\u88A8\u88A2\u88AA\u889A\u8891\u88A1\u889F\u8898\u88A7\u8899\u889B\u8897\u88A4\u88AC\u888C\u8893\u888E\u8982\u89D6\u89D9\u89D5\u8A30\u8A27\u8A2C\u8A1E\u8C39\u8C3B\u8C5C\u8C5D\u8C7D\u8CA5\u8D7D\u8D7B\u8D79\u8DBC\u8DC2\u8DB9\u8DBF\u8DC1\u8ED8\u8EDE\u8EDD\u8EDC\u8ED7\u8EE0\u8EE1\u9024\u900B\u9011\u901C\u900C\u9021\u90EF\u90EA\u90F0\u90F4\u90F2\u90F3\u90D4\u90EB\u90EC\u90E9\u9156\u9158\u915A\u9153\u9155\u91EC\u91F4\u91F1\u91F3\u91F8\u91E4\u91F9\u91EA"],
      ["d840", "\u91EB\u91F7\u91E8\u91EE\u957A\u9586\u9588\u967C\u966D\u966B\u9671\u966F\u96BF\u976A\u9804\u98E5\u9997\u509B\u5095\u5094\u509E\u508B\u50A3\u5083\u508C\u508E\u509D\u5068\u509C\u5092\u5082\u5087\u515F\u51D4\u5312\u5311\u53A4\u53A7\u5591\u55A8\u55A5\u55AD\u5577\u5645\u55A2\u5593\u5588\u558F\u55B5\u5581\u55A3\u5592\u55A4\u557D\u558C\u55A6\u557F\u5595\u55A1\u558E\u570C\u5829\u5837"],
      ["d8a1", "\u5819\u581E\u5827\u5823\u5828\u57F5\u5848\u5825\u581C\u581B\u5833\u583F\u5836\u582E\u5839\u5838\u582D\u582C\u583B\u5961\u5AAF\u5A94\u5A9F\u5A7A\u5AA2\u5A9E\u5A78\u5AA6\u5A7C\u5AA5\u5AAC\u5A95\u5AAE\u5A37\u5A84\u5A8A\u5A97\u5A83\u5A8B\u5AA9\u5A7B\u5A7D\u5A8C\u5A9C\u5A8F\u5A93\u5A9D\u5BEA\u5BCD\u5BCB\u5BD4\u5BD1\u5BCA\u5BCE\u5C0C\u5C30\u5D37\u5D43\u5D6B\u5D41\u5D4B\u5D3F\u5D35\u5D51\u5D4E\u5D55\u5D33\u5D3A\u5D52\u5D3D\u5D31\u5D59\u5D42\u5D39\u5D49\u5D38\u5D3C\u5D32\u5D36\u5D40\u5D45\u5E44\u5E41\u5F58\u5FA6\u5FA5\u5FAB\u60C9\u60B9\u60CC\u60E2\u60CE\u60C4\u6114"],
      ["d940", "\u60F2\u610A\u6116\u6105\u60F5\u6113\u60F8\u60FC\u60FE\u60C1\u6103\u6118\u611D\u6110\u60FF\u6104\u610B\u624A\u6394\u63B1\u63B0\u63CE\u63E5\u63E8\u63EF\u63C3\u649D\u63F3\u63CA\u63E0\u63F6\u63D5\u63F2\u63F5\u6461\u63DF\u63BE\u63DD\u63DC\u63C4\u63D8\u63D3\u63C2\u63C7\u63CC\u63CB\u63C8\u63F0\u63D7\u63D9\u6532\u6567\u656A\u6564\u655C\u6568\u6565\u658C\u659D\u659E\u65AE\u65D0\u65D2"],
      ["d9a1", "\u667C\u666C\u667B\u6680\u6671\u6679\u666A\u6672\u6701\u690C\u68D3\u6904\u68DC\u692A\u68EC\u68EA\u68F1\u690F\u68D6\u68F7\u68EB\u68E4\u68F6\u6913\u6910\u68F3\u68E1\u6907\u68CC\u6908\u6970\u68B4\u6911\u68EF\u68C6\u6914\u68F8\u68D0\u68FD\u68FC\u68E8\u690B\u690A\u6917\u68CE\u68C8\u68DD\u68DE\u68E6\u68F4\u68D1\u6906\u68D4\u68E9\u6915\u6925\u68C7\u6B39\u6B3B\u6B3F\u6B3C\u6B94\u6B97\u6B99\u6B95\u6BBD\u6BF0\u6BF2\u6BF3\u6C30\u6DFC\u6E46\u6E47\u6E1F\u6E49\u6E88\u6E3C\u6E3D\u6E45\u6E62\u6E2B\u6E3F\u6E41\u6E5D\u6E73\u6E1C\u6E33\u6E4B\u6E40\u6E51\u6E3B\u6E03\u6E2E\u6E5E"],
      ["da40", "\u6E68\u6E5C\u6E61\u6E31\u6E28\u6E60\u6E71\u6E6B\u6E39\u6E22\u6E30\u6E53\u6E65\u6E27\u6E78\u6E64\u6E77\u6E55\u6E79\u6E52\u6E66\u6E35\u6E36\u6E5A\u7120\u711E\u712F\u70FB\u712E\u7131\u7123\u7125\u7122\u7132\u711F\u7128\u713A\u711B\u724B\u725A\u7288\u7289\u7286\u7285\u728B\u7312\u730B\u7330\u7322\u7331\u7333\u7327\u7332\u732D\u7326\u7323\u7335\u730C\u742E\u742C\u7430\u742B\u7416"],
      ["daa1", "\u741A\u7421\u742D\u7431\u7424\u7423\u741D\u7429\u7420\u7432\u74FB\u752F\u756F\u756C\u75E7\u75DA\u75E1\u75E6\u75DD\u75DF\u75E4\u75D7\u7695\u7692\u76DA\u7746\u7747\u7744\u774D\u7745\u774A\u774E\u774B\u774C\u77DE\u77EC\u7860\u7864\u7865\u785C\u786D\u7871\u786A\u786E\u7870\u7869\u7868\u785E\u7862\u7974\u7973\u7972\u7970\u7A02\u7A0A\u7A03\u7A0C\u7A04\u7A99\u7AE6\u7AE4\u7B4A\u7B3B\u7B44\u7B48\u7B4C\u7B4E\u7B40\u7B58\u7B45\u7CA2\u7C9E\u7CA8\u7CA1\u7D58\u7D6F\u7D63\u7D53\u7D56\u7D67\u7D6A\u7D4F\u7D6D\u7D5C\u7D6B\u7D52\u7D54\u7D69\u7D51\u7D5F\u7D4E\u7F3E\u7F3F\u7F65"],
      ["db40", "\u7F66\u7FA2\u7FA0\u7FA1\u7FD7\u8051\u804F\u8050\u80FE\u80D4\u8143\u814A\u8152\u814F\u8147\u813D\u814D\u813A\u81E6\u81EE\u81F7\u81F8\u81F9\u8204\u823C\u823D\u823F\u8275\u833B\u83CF\u83F9\u8423\u83C0\u83E8\u8412\u83E7\u83E4\u83FC\u83F6\u8410\u83C6\u83C8\u83EB\u83E3\u83BF\u8401\u83DD\u83E5\u83D8\u83FF\u83E1\u83CB\u83CE\u83D6\u83F5\u83C9\u8409\u840F\u83DE\u8411\u8406\u83C2\u83F3"],
      ["dba1", "\u83D5\u83FA\u83C7\u83D1\u83EA\u8413\u83C3\u83EC\u83EE\u83C4\u83FB\u83D7\u83E2\u841B\u83DB\u83FE\u86D8\u86E2\u86E6\u86D3\u86E3\u86DA\u86EA\u86DD\u86EB\u86DC\u86EC\u86E9\u86D7\u86E8\u86D1\u8848\u8856\u8855\u88BA\u88D7\u88B9\u88B8\u88C0\u88BE\u88B6\u88BC\u88B7\u88BD\u88B2\u8901\u88C9\u8995\u8998\u8997\u89DD\u89DA\u89DB\u8A4E\u8A4D\u8A39\u8A59\u8A40\u8A57\u8A58\u8A44\u8A45\u8A52\u8A48\u8A51\u8A4A\u8A4C\u8A4F\u8C5F\u8C81\u8C80\u8CBA\u8CBE\u8CB0\u8CB9\u8CB5\u8D84\u8D80\u8D89\u8DD8\u8DD3\u8DCD\u8DC7\u8DD6\u8DDC\u8DCF\u8DD5\u8DD9\u8DC8\u8DD7\u8DC5\u8EEF\u8EF7\u8EFA"],
      ["dc40", "\u8EF9\u8EE6\u8EEE\u8EE5\u8EF5\u8EE7\u8EE8\u8EF6\u8EEB\u8EF1\u8EEC\u8EF4\u8EE9\u902D\u9034\u902F\u9106\u912C\u9104\u90FF\u90FC\u9108\u90F9\u90FB\u9101\u9100\u9107\u9105\u9103\u9161\u9164\u915F\u9162\u9160\u9201\u920A\u9225\u9203\u921A\u9226\u920F\u920C\u9200\u9212\u91FF\u91FD\u9206\u9204\u9227\u9202\u921C\u9224\u9219\u9217\u9205\u9216\u957B\u958D\u958C\u9590\u9687\u967E\u9688"],
      ["dca1", "\u9689\u9683\u9680\u96C2\u96C8\u96C3\u96F1\u96F0\u976C\u9770\u976E\u9807\u98A9\u98EB\u9CE6\u9EF9\u4E83\u4E84\u4EB6\u50BD\u50BF\u50C6\u50AE\u50C4\u50CA\u50B4\u50C8\u50C2\u50B0\u50C1\u50BA\u50B1\u50CB\u50C9\u50B6\u50B8\u51D7\u527A\u5278\u527B\u527C\u55C3\u55DB\u55CC\u55D0\u55CB\u55CA\u55DD\u55C0\u55D4\u55C4\u55E9\u55BF\u55D2\u558D\u55CF\u55D5\u55E2\u55D6\u55C8\u55F2\u55CD\u55D9\u55C2\u5714\u5853\u5868\u5864\u584F\u584D\u5849\u586F\u5855\u584E\u585D\u5859\u5865\u585B\u583D\u5863\u5871\u58FC\u5AC7\u5AC4\u5ACB\u5ABA\u5AB8\u5AB1\u5AB5\u5AB0\u5ABF\u5AC8\u5ABB\u5AC6"],
      ["dd40", "\u5AB7\u5AC0\u5ACA\u5AB4\u5AB6\u5ACD\u5AB9\u5A90\u5BD6\u5BD8\u5BD9\u5C1F\u5C33\u5D71\u5D63\u5D4A\u5D65\u5D72\u5D6C\u5D5E\u5D68\u5D67\u5D62\u5DF0\u5E4F\u5E4E\u5E4A\u5E4D\u5E4B\u5EC5\u5ECC\u5EC6\u5ECB\u5EC7\u5F40\u5FAF\u5FAD\u60F7\u6149\u614A\u612B\u6145\u6136\u6132\u612E\u6146\u612F\u614F\u6129\u6140\u6220\u9168\u6223\u6225\u6224\u63C5\u63F1\u63EB\u6410\u6412\u6409\u6420\u6424"],
      ["dda1", "\u6433\u6443\u641F\u6415\u6418\u6439\u6437\u6422\u6423\u640C\u6426\u6430\u6428\u6441\u6435\u642F\u640A\u641A\u6440\u6425\u6427\u640B\u63E7\u641B\u642E\u6421\u640E\u656F\u6592\u65D3\u6686\u668C\u6695\u6690\u668B\u668A\u6699\u6694\u6678\u6720\u6966\u695F\u6938\u694E\u6962\u6971\u693F\u6945\u696A\u6939\u6942\u6957\u6959\u697A\u6948\u6949\u6935\u696C\u6933\u693D\u6965\u68F0\u6978\u6934\u6969\u6940\u696F\u6944\u6976\u6958\u6941\u6974\u694C\u693B\u694B\u6937\u695C\u694F\u6951\u6932\u6952\u692F\u697B\u693C\u6B46\u6B45\u6B43\u6B42\u6B48\u6B41\u6B9B\uFA0D\u6BFB\u6BFC"],
      ["de40", "\u6BF9\u6BF7\u6BF8\u6E9B\u6ED6\u6EC8\u6E8F\u6EC0\u6E9F\u6E93\u6E94\u6EA0\u6EB1\u6EB9\u6EC6\u6ED2\u6EBD\u6EC1\u6E9E\u6EC9\u6EB7\u6EB0\u6ECD\u6EA6\u6ECF\u6EB2\u6EBE\u6EC3\u6EDC\u6ED8\u6E99\u6E92\u6E8E\u6E8D\u6EA4\u6EA1\u6EBF\u6EB3\u6ED0\u6ECA\u6E97\u6EAE\u6EA3\u7147\u7154\u7152\u7163\u7160\u7141\u715D\u7162\u7172\u7178\u716A\u7161\u7142\u7158\u7143\u714B\u7170\u715F\u7150\u7153"],
      ["dea1", "\u7144\u714D\u715A\u724F\u728D\u728C\u7291\u7290\u728E\u733C\u7342\u733B\u733A\u7340\u734A\u7349\u7444\u744A\u744B\u7452\u7451\u7457\u7440\u744F\u7450\u744E\u7442\u7446\u744D\u7454\u74E1\u74FF\u74FE\u74FD\u751D\u7579\u7577\u6983\u75EF\u760F\u7603\u75F7\u75FE\u75FC\u75F9\u75F8\u7610\u75FB\u75F6\u75ED\u75F5\u75FD\u7699\u76B5\u76DD\u7755\u775F\u7760\u7752\u7756\u775A\u7769\u7767\u7754\u7759\u776D\u77E0\u7887\u789A\u7894\u788F\u7884\u7895\u7885\u7886\u78A1\u7883\u7879\u7899\u7880\u7896\u787B\u797C\u7982\u797D\u7979\u7A11\u7A18\u7A19\u7A12\u7A17\u7A15\u7A22\u7A13"],
      ["df40", "\u7A1B\u7A10\u7AA3\u7AA2\u7A9E\u7AEB\u7B66\u7B64\u7B6D\u7B74\u7B69\u7B72\u7B65\u7B73\u7B71\u7B70\u7B61\u7B78\u7B76\u7B63\u7CB2\u7CB4\u7CAF\u7D88\u7D86\u7D80\u7D8D\u7D7F\u7D85\u7D7A\u7D8E\u7D7B\u7D83\u7D7C\u7D8C\u7D94\u7D84\u7D7D\u7D92\u7F6D\u7F6B\u7F67\u7F68\u7F6C\u7FA6\u7FA5\u7FA7\u7FDB\u7FDC\u8021\u8164\u8160\u8177\u815C\u8169\u815B\u8162\u8172\u6721\u815E\u8176\u8167\u816F"],
      ["dfa1", "\u8144\u8161\u821D\u8249\u8244\u8240\u8242\u8245\u84F1\u843F\u8456\u8476\u8479\u848F\u848D\u8465\u8451\u8440\u8486\u8467\u8430\u844D\u847D\u845A\u8459\u8474\u8473\u845D\u8507\u845E\u8437\u843A\u8434\u847A\u8443\u8478\u8432\u8445\u8429\u83D9\u844B\u842F\u8442\u842D\u845F\u8470\u8439\u844E\u844C\u8452\u846F\u84C5\u848E\u843B\u8447\u8436\u8433\u8468\u847E\u8444\u842B\u8460\u8454\u846E\u8450\u870B\u8704\u86F7\u870C\u86FA\u86D6\u86F5\u874D\u86F8\u870E\u8709\u8701\u86F6\u870D\u8705\u88D6\u88CB\u88CD\u88CE\u88DE\u88DB\u88DA\u88CC\u88D0\u8985\u899B\u89DF\u89E5\u89E4"],
      ["e040", "\u89E1\u89E0\u89E2\u89DC\u89E6\u8A76\u8A86\u8A7F\u8A61\u8A3F\u8A77\u8A82\u8A84\u8A75\u8A83\u8A81\u8A74\u8A7A\u8C3C\u8C4B\u8C4A\u8C65\u8C64\u8C66\u8C86\u8C84\u8C85\u8CCC\u8D68\u8D69\u8D91\u8D8C\u8D8E\u8D8F\u8D8D\u8D93\u8D94\u8D90\u8D92\u8DF0\u8DE0\u8DEC\u8DF1\u8DEE\u8DD0\u8DE9\u8DE3\u8DE2\u8DE7\u8DF2\u8DEB\u8DF4\u8F06\u8EFF\u8F01\u8F00\u8F05\u8F07\u8F08\u8F02\u8F0B\u9052\u903F"],
      ["e0a1", "\u9044\u9049\u903D\u9110\u910D\u910F\u9111\u9116\u9114\u910B\u910E\u916E\u916F\u9248\u9252\u9230\u923A\u9266\u9233\u9265\u925E\u9283\u922E\u924A\u9246\u926D\u926C\u924F\u9260\u9267\u926F\u9236\u9261\u9270\u9231\u9254\u9263\u9250\u9272\u924E\u9253\u924C\u9256\u9232\u959F\u959C\u959E\u959B\u9692\u9693\u9691\u9697\u96CE\u96FA\u96FD\u96F8\u96F5\u9773\u9777\u9778\u9772\u980F\u980D\u980E\u98AC\u98F6\u98F9\u99AF\u99B2\u99B0\u99B5\u9AAD\u9AAB\u9B5B\u9CEA\u9CED\u9CE7\u9E80\u9EFD\u50E6\u50D4\u50D7\u50E8\u50F3\u50DB\u50EA\u50DD\u50E4\u50D3\u50EC\u50F0\u50EF\u50E3\u50E0"],
      ["e140", "\u51D8\u5280\u5281\u52E9\u52EB\u5330\u53AC\u5627\u5615\u560C\u5612\u55FC\u560F\u561C\u5601\u5613\u5602\u55FA\u561D\u5604\u55FF\u55F9\u5889\u587C\u5890\u5898\u5886\u5881\u587F\u5874\u588B\u587A\u5887\u5891\u588E\u5876\u5882\u5888\u587B\u5894\u588F\u58FE\u596B\u5ADC\u5AEE\u5AE5\u5AD5\u5AEA\u5ADA\u5AED\u5AEB\u5AF3\u5AE2\u5AE0\u5ADB\u5AEC\u5ADE\u5ADD\u5AD9\u5AE8\u5ADF\u5B77\u5BE0"],
      ["e1a1", "\u5BE3\u5C63\u5D82\u5D80\u5D7D\u5D86\u5D7A\u5D81\u5D77\u5D8A\u5D89\u5D88\u5D7E\u5D7C\u5D8D\u5D79\u5D7F\u5E58\u5E59\u5E53\u5ED8\u5ED1\u5ED7\u5ECE\u5EDC\u5ED5\u5ED9\u5ED2\u5ED4\u5F44\u5F43\u5F6F\u5FB6\u612C\u6128\u6141\u615E\u6171\u6173\u6152\u6153\u6172\u616C\u6180\u6174\u6154\u617A\u615B\u6165\u613B\u616A\u6161\u6156\u6229\u6227\u622B\u642B\u644D\u645B\u645D\u6474\u6476\u6472\u6473\u647D\u6475\u6466\u64A6\u644E\u6482\u645E\u645C\u644B\u6453\u6460\u6450\u647F\u643F\u646C\u646B\u6459\u6465\u6477\u6573\u65A0\u66A1\u66A0\u669F\u6705\u6704\u6722\u69B1\u69B6\u69C9"],
      ["e240", "\u69A0\u69CE\u6996\u69B0\u69AC\u69BC\u6991\u6999\u698E\u69A7\u698D\u69A9\u69BE\u69AF\u69BF\u69C4\u69BD\u69A4\u69D4\u69B9\u69CA\u699A\u69CF\u69B3\u6993\u69AA\u69A1\u699E\u69D9\u6997\u6990\u69C2\u69B5\u69A5\u69C6\u6B4A\u6B4D\u6B4B\u6B9E\u6B9F\u6BA0\u6BC3\u6BC4\u6BFE\u6ECE\u6EF5\u6EF1\u6F03\u6F25\u6EF8\u6F37\u6EFB\u6F2E\u6F09\u6F4E\u6F19\u6F1A\u6F27\u6F18\u6F3B\u6F12\u6EED\u6F0A"],
      ["e2a1", "\u6F36\u6F73\u6EF9\u6EEE\u6F2D\u6F40\u6F30\u6F3C\u6F35\u6EEB\u6F07\u6F0E\u6F43\u6F05\u6EFD\u6EF6\u6F39\u6F1C\u6EFC\u6F3A\u6F1F\u6F0D\u6F1E\u6F08\u6F21\u7187\u7190\u7189\u7180\u7185\u7182\u718F\u717B\u7186\u7181\u7197\u7244\u7253\u7297\u7295\u7293\u7343\u734D\u7351\u734C\u7462\u7473\u7471\u7475\u7472\u7467\u746E\u7500\u7502\u7503\u757D\u7590\u7616\u7608\u760C\u7615\u7611\u760A\u7614\u76B8\u7781\u777C\u7785\u7782\u776E\u7780\u776F\u777E\u7783\u78B2\u78AA\u78B4\u78AD\u78A8\u787E\u78AB\u789E\u78A5\u78A0\u78AC\u78A2\u78A4\u7998\u798A\u798B\u7996\u7995\u7994\u7993"],
      ["e340", "\u7997\u7988\u7992\u7990\u7A2B\u7A4A\u7A30\u7A2F\u7A28\u7A26\u7AA8\u7AAB\u7AAC\u7AEE\u7B88\u7B9C\u7B8A\u7B91\u7B90\u7B96\u7B8D\u7B8C\u7B9B\u7B8E\u7B85\u7B98\u5284\u7B99\u7BA4\u7B82\u7CBB\u7CBF\u7CBC\u7CBA\u7DA7\u7DB7\u7DC2\u7DA3\u7DAA\u7DC1\u7DC0\u7DC5\u7D9D\u7DCE\u7DC4\u7DC6\u7DCB\u7DCC\u7DAF\u7DB9\u7D96\u7DBC\u7D9F\u7DA6\u7DAE\u7DA9\u7DA1\u7DC9\u7F73\u7FE2\u7FE3\u7FE5\u7FDE"],
      ["e3a1", "\u8024\u805D\u805C\u8189\u8186\u8183\u8187\u818D\u818C\u818B\u8215\u8497\u84A4\u84A1\u849F\u84BA\u84CE\u84C2\u84AC\u84AE\u84AB\u84B9\u84B4\u84C1\u84CD\u84AA\u849A\u84B1\u84D0\u849D\u84A7\u84BB\u84A2\u8494\u84C7\u84CC\u849B\u84A9\u84AF\u84A8\u84D6\u8498\u84B6\u84CF\u84A0\u84D7\u84D4\u84D2\u84DB\u84B0\u8491\u8661\u8733\u8723\u8728\u876B\u8740\u872E\u871E\u8721\u8719\u871B\u8743\u872C\u8741\u873E\u8746\u8720\u8732\u872A\u872D\u873C\u8712\u873A\u8731\u8735\u8742\u8726\u8727\u8738\u8724\u871A\u8730\u8711\u88F7\u88E7\u88F1\u88F2\u88FA\u88FE\u88EE\u88FC\u88F6\u88FB"],
      ["e440", "\u88F0\u88EC\u88EB\u899D\u89A1\u899F\u899E\u89E9\u89EB\u89E8\u8AAB\u8A99\u8A8B\u8A92\u8A8F\u8A96\u8C3D\u8C68\u8C69\u8CD5\u8CCF\u8CD7\u8D96\u8E09\u8E02\u8DFF\u8E0D\u8DFD\u8E0A\u8E03\u8E07\u8E06\u8E05\u8DFE\u8E00\u8E04\u8F10\u8F11\u8F0E\u8F0D\u9123\u911C\u9120\u9122\u911F\u911D\u911A\u9124\u9121\u911B\u917A\u9172\u9179\u9173\u92A5\u92A4\u9276\u929B\u927A\u92A0\u9294\u92AA\u928D"],
      ["e4a1", "\u92A6\u929A\u92AB\u9279\u9297\u927F\u92A3\u92EE\u928E\u9282\u9295\u92A2\u927D\u9288\u92A1\u928A\u9286\u928C\u9299\u92A7\u927E\u9287\u92A9\u929D\u928B\u922D\u969E\u96A1\u96FF\u9758\u977D\u977A\u977E\u9783\u9780\u9782\u977B\u9784\u9781\u977F\u97CE\u97CD\u9816\u98AD\u98AE\u9902\u9900\u9907\u999D\u999C\u99C3\u99B9\u99BB\u99BA\u99C2\u99BD\u99C7\u9AB1\u9AE3\u9AE7\u9B3E\u9B3F\u9B60\u9B61\u9B5F\u9CF1\u9CF2\u9CF5\u9EA7\u50FF\u5103\u5130\u50F8\u5106\u5107\u50F6\u50FE\u510B\u510C\u50FD\u510A\u528B\u528C\u52F1\u52EF\u5648\u5642\u564C\u5635\u5641\u564A\u5649\u5646\u5658"],
      ["e540", "\u565A\u5640\u5633\u563D\u562C\u563E\u5638\u562A\u563A\u571A\u58AB\u589D\u58B1\u58A0\u58A3\u58AF\u58AC\u58A5\u58A1\u58FF\u5AFF\u5AF4\u5AFD\u5AF7\u5AF6\u5B03\u5AF8\u5B02\u5AF9\u5B01\u5B07\u5B05\u5B0F\u5C67\u5D99\u5D97\u5D9F\u5D92\u5DA2\u5D93\u5D95\u5DA0\u5D9C\u5DA1\u5D9A\u5D9E\u5E69\u5E5D\u5E60\u5E5C\u7DF3\u5EDB\u5EDE\u5EE1\u5F49\u5FB2\u618B\u6183\u6179\u61B1\u61B0\u61A2\u6189"],
      ["e5a1", "\u619B\u6193\u61AF\u61AD\u619F\u6192\u61AA\u61A1\u618D\u6166\u61B3\u622D\u646E\u6470\u6496\u64A0\u6485\u6497\u649C\u648F\u648B\u648A\u648C\u64A3\u649F\u6468\u64B1\u6498\u6576\u657A\u6579\u657B\u65B2\u65B3\u66B5\u66B0\u66A9\u66B2\u66B7\u66AA\u66AF\u6A00\u6A06\u6A17\u69E5\u69F8\u6A15\u69F1\u69E4\u6A20\u69FF\u69EC\u69E2\u6A1B\u6A1D\u69FE\u6A27\u69F2\u69EE\u6A14\u69F7\u69E7\u6A40\u6A08\u69E6\u69FB\u6A0D\u69FC\u69EB\u6A09\u6A04\u6A18\u6A25\u6A0F\u69F6\u6A26\u6A07\u69F4\u6A16\u6B51\u6BA5\u6BA3\u6BA2\u6BA6\u6C01\u6C00\u6BFF\u6C02\u6F41\u6F26\u6F7E\u6F87\u6FC6\u6F92"],
      ["e640", "\u6F8D\u6F89\u6F8C\u6F62\u6F4F\u6F85\u6F5A\u6F96\u6F76\u6F6C\u6F82\u6F55\u6F72\u6F52\u6F50\u6F57\u6F94\u6F93\u6F5D\u6F00\u6F61\u6F6B\u6F7D\u6F67\u6F90\u6F53\u6F8B\u6F69\u6F7F\u6F95\u6F63\u6F77\u6F6A\u6F7B\u71B2\u71AF\u719B\u71B0\u71A0\u719A\u71A9\u71B5\u719D\u71A5\u719E\u71A4\u71A1\u71AA\u719C\u71A7\u71B3\u7298\u729A\u7358\u7352\u735E\u735F\u7360\u735D\u735B\u7361\u735A\u7359"],
      ["e6a1", "\u7362\u7487\u7489\u748A\u7486\u7481\u747D\u7485\u7488\u747C\u7479\u7508\u7507\u757E\u7625\u761E\u7619\u761D\u761C\u7623\u761A\u7628\u761B\u769C\u769D\u769E\u769B\u778D\u778F\u7789\u7788\u78CD\u78BB\u78CF\u78CC\u78D1\u78CE\u78D4\u78C8\u78C3\u78C4\u78C9\u799A\u79A1\u79A0\u799C\u79A2\u799B\u6B76\u7A39\u7AB2\u7AB4\u7AB3\u7BB7\u7BCB\u7BBE\u7BAC\u7BCE\u7BAF\u7BB9\u7BCA\u7BB5\u7CC5\u7CC8\u7CCC\u7CCB\u7DF7\u7DDB\u7DEA\u7DE7\u7DD7\u7DE1\u7E03\u7DFA\u7DE6\u7DF6\u7DF1\u7DF0\u7DEE\u7DDF\u7F76\u7FAC\u7FB0\u7FAD\u7FED\u7FEB\u7FEA\u7FEC\u7FE6\u7FE8\u8064\u8067\u81A3\u819F"],
      ["e740", "\u819E\u8195\u81A2\u8199\u8197\u8216\u824F\u8253\u8252\u8250\u824E\u8251\u8524\u853B\u850F\u8500\u8529\u850E\u8509\u850D\u851F\u850A\u8527\u851C\u84FB\u852B\u84FA\u8508\u850C\u84F4\u852A\u84F2\u8515\u84F7\u84EB\u84F3\u84FC\u8512\u84EA\u84E9\u8516\u84FE\u8528\u851D\u852E\u8502\u84FD\u851E\u84F6\u8531\u8526\u84E7\u84E8\u84F0\u84EF\u84F9\u8518\u8520\u8530\u850B\u8519\u852F\u8662"],
      ["e7a1", "\u8756\u8763\u8764\u8777\u87E1\u8773\u8758\u8754\u875B\u8752\u8761\u875A\u8751\u875E\u876D\u876A\u8750\u874E\u875F\u875D\u876F\u876C\u877A\u876E\u875C\u8765\u874F\u877B\u8775\u8762\u8767\u8769\u885A\u8905\u890C\u8914\u890B\u8917\u8918\u8919\u8906\u8916\u8911\u890E\u8909\u89A2\u89A4\u89A3\u89ED\u89F0\u89EC\u8ACF\u8AC6\u8AB8\u8AD3\u8AD1\u8AD4\u8AD5\u8ABB\u8AD7\u8ABE\u8AC0\u8AC5\u8AD8\u8AC3\u8ABA\u8ABD\u8AD9\u8C3E\u8C4D\u8C8F\u8CE5\u8CDF\u8CD9\u8CE8\u8CDA\u8CDD\u8CE7\u8DA0\u8D9C\u8DA1\u8D9B\u8E20\u8E23\u8E25\u8E24\u8E2E\u8E15\u8E1B\u8E16\u8E11\u8E19\u8E26\u8E27"],
      ["e840", "\u8E14\u8E12\u8E18\u8E13\u8E1C\u8E17\u8E1A\u8F2C\u8F24\u8F18\u8F1A\u8F20\u8F23\u8F16\u8F17\u9073\u9070\u906F\u9067\u906B\u912F\u912B\u9129\u912A\u9132\u9126\u912E\u9185\u9186\u918A\u9181\u9182\u9184\u9180\u92D0\u92C3\u92C4\u92C0\u92D9\u92B6\u92CF\u92F1\u92DF\u92D8\u92E9\u92D7\u92DD\u92CC\u92EF\u92C2\u92E8\u92CA\u92C8\u92CE\u92E6\u92CD\u92D5\u92C9\u92E0\u92DE\u92E7\u92D1\u92D3"],
      ["e8a1", "\u92B5\u92E1\u92C6\u92B4\u957C\u95AC\u95AB\u95AE\u95B0\u96A4\u96A2\u96D3\u9705\u9708\u9702\u975A\u978A\u978E\u9788\u97D0\u97CF\u981E\u981D\u9826\u9829\u9828\u9820\u981B\u9827\u98B2\u9908\u98FA\u9911\u9914\u9916\u9917\u9915\u99DC\u99CD\u99CF\u99D3\u99D4\u99CE\u99C9\u99D6\u99D8\u99CB\u99D7\u99CC\u9AB3\u9AEC\u9AEB\u9AF3\u9AF2\u9AF1\u9B46\u9B43\u9B67\u9B74\u9B71\u9B66\u9B76\u9B75\u9B70\u9B68\u9B64\u9B6C\u9CFC\u9CFA\u9CFD\u9CFF\u9CF7\u9D07\u9D00\u9CF9\u9CFB\u9D08\u9D05\u9D04\u9E83\u9ED3\u9F0F\u9F10\u511C\u5113\u5117\u511A\u5111\u51DE\u5334\u53E1\u5670\u5660\u566E"],
      ["e940", "\u5673\u5666\u5663\u566D\u5672\u565E\u5677\u571C\u571B\u58C8\u58BD\u58C9\u58BF\u58BA\u58C2\u58BC\u58C6\u5B17\u5B19\u5B1B\u5B21\u5B14\u5B13\u5B10\u5B16\u5B28\u5B1A\u5B20\u5B1E\u5BEF\u5DAC\u5DB1\u5DA9\u5DA7\u5DB5\u5DB0\u5DAE\u5DAA\u5DA8\u5DB2\u5DAD\u5DAF\u5DB4\u5E67\u5E68\u5E66\u5E6F\u5EE9\u5EE7\u5EE6\u5EE8\u5EE5\u5F4B\u5FBC\u619D\u61A8\u6196\u61C5\u61B4\u61C6\u61C1\u61CC\u61BA"],
      ["e9a1", "\u61BF\u61B8\u618C\u64D7\u64D6\u64D0\u64CF\u64C9\u64BD\u6489\u64C3\u64DB\u64F3\u64D9\u6533\u657F\u657C\u65A2\u66C8\u66BE\u66C0\u66CA\u66CB\u66CF\u66BD\u66BB\u66BA\u66CC\u6723\u6A34\u6A66\u6A49\u6A67\u6A32\u6A68\u6A3E\u6A5D\u6A6D\u6A76\u6A5B\u6A51\u6A28\u6A5A\u6A3B\u6A3F\u6A41\u6A6A\u6A64\u6A50\u6A4F\u6A54\u6A6F\u6A69\u6A60\u6A3C\u6A5E\u6A56\u6A55\u6A4D\u6A4E\u6A46\u6B55\u6B54\u6B56\u6BA7\u6BAA\u6BAB\u6BC8\u6BC7\u6C04\u6C03\u6C06\u6FAD\u6FCB\u6FA3\u6FC7\u6FBC\u6FCE\u6FC8\u6F5E\u6FC4\u6FBD\u6F9E\u6FCA\u6FA8\u7004\u6FA5\u6FAE\u6FBA\u6FAC\u6FAA\u6FCF\u6FBF\u6FB8"],
      ["ea40", "\u6FA2\u6FC9\u6FAB\u6FCD\u6FAF\u6FB2\u6FB0\u71C5\u71C2\u71BF\u71B8\u71D6\u71C0\u71C1\u71CB\u71D4\u71CA\u71C7\u71CF\u71BD\u71D8\u71BC\u71C6\u71DA\u71DB\u729D\u729E\u7369\u7366\u7367\u736C\u7365\u736B\u736A\u747F\u749A\u74A0\u7494\u7492\u7495\u74A1\u750B\u7580\u762F\u762D\u7631\u763D\u7633\u763C\u7635\u7632\u7630\u76BB\u76E6\u779A\u779D\u77A1\u779C\u779B\u77A2\u77A3\u7795\u7799"],
      ["eaa1", "\u7797\u78DD\u78E9\u78E5\u78EA\u78DE\u78E3\u78DB\u78E1\u78E2\u78ED\u78DF\u78E0\u79A4\u7A44\u7A48\u7A47\u7AB6\u7AB8\u7AB5\u7AB1\u7AB7\u7BDE\u7BE3\u7BE7\u7BDD\u7BD5\u7BE5\u7BDA\u7BE8\u7BF9\u7BD4\u7BEA\u7BE2\u7BDC\u7BEB\u7BD8\u7BDF\u7CD2\u7CD4\u7CD7\u7CD0\u7CD1\u7E12\u7E21\u7E17\u7E0C\u7E1F\u7E20\u7E13\u7E0E\u7E1C\u7E15\u7E1A\u7E22\u7E0B\u7E0F\u7E16\u7E0D\u7E14\u7E25\u7E24\u7F43\u7F7B\u7F7C\u7F7A\u7FB1\u7FEF\u802A\u8029\u806C\u81B1\u81A6\u81AE\u81B9\u81B5\u81AB\u81B0\u81AC\u81B4\u81B2\u81B7\u81A7\u81F2\u8255\u8256\u8257\u8556\u8545\u856B\u854D\u8553\u8561\u8558"],
      ["eb40", "\u8540\u8546\u8564\u8541\u8562\u8544\u8551\u8547\u8563\u853E\u855B\u8571\u854E\u856E\u8575\u8555\u8567\u8560\u858C\u8566\u855D\u8554\u8565\u856C\u8663\u8665\u8664\u879B\u878F\u8797\u8793\u8792\u8788\u8781\u8796\u8798\u8779\u8787\u87A3\u8785\u8790\u8791\u879D\u8784\u8794\u879C\u879A\u8789\u891E\u8926\u8930\u892D\u892E\u8927\u8931\u8922\u8929\u8923\u892F\u892C\u891F\u89F1\u8AE0"],
      ["eba1", "\u8AE2\u8AF2\u8AF4\u8AF5\u8ADD\u8B14\u8AE4\u8ADF\u8AF0\u8AC8\u8ADE\u8AE1\u8AE8\u8AFF\u8AEF\u8AFB\u8C91\u8C92\u8C90\u8CF5\u8CEE\u8CF1\u8CF0\u8CF3\u8D6C\u8D6E\u8DA5\u8DA7\u8E33\u8E3E\u8E38\u8E40\u8E45\u8E36\u8E3C\u8E3D\u8E41\u8E30\u8E3F\u8EBD\u8F36\u8F2E\u8F35\u8F32\u8F39\u8F37\u8F34\u9076\u9079\u907B\u9086\u90FA\u9133\u9135\u9136\u9193\u9190\u9191\u918D\u918F\u9327\u931E\u9308\u931F\u9306\u930F\u937A\u9338\u933C\u931B\u9323\u9312\u9301\u9346\u932D\u930E\u930D\u92CB\u931D\u92FA\u9325\u9313\u92F9\u92F7\u9334\u9302\u9324\u92FF\u9329\u9339\u9335\u932A\u9314\u930C"],
      ["ec40", "\u930B\u92FE\u9309\u9300\u92FB\u9316\u95BC\u95CD\u95BE\u95B9\u95BA\u95B6\u95BF\u95B5\u95BD\u96A9\u96D4\u970B\u9712\u9710\u9799\u9797\u9794\u97F0\u97F8\u9835\u982F\u9832\u9924\u991F\u9927\u9929\u999E\u99EE\u99EC\u99E5\u99E4\u99F0\u99E3\u99EA\u99E9\u99E7\u9AB9\u9ABF\u9AB4\u9ABB\u9AF6\u9AFA\u9AF9\u9AF7\u9B33\u9B80\u9B85\u9B87\u9B7C\u9B7E\u9B7B\u9B82\u9B93\u9B92\u9B90\u9B7A\u9B95"],
      ["eca1", "\u9B7D\u9B88\u9D25\u9D17\u9D20\u9D1E\u9D14\u9D29\u9D1D\u9D18\u9D22\u9D10\u9D19\u9D1F\u9E88\u9E86\u9E87\u9EAE\u9EAD\u9ED5\u9ED6\u9EFA\u9F12\u9F3D\u5126\u5125\u5122\u5124\u5120\u5129\u52F4\u5693\u568C\u568D\u5686\u5684\u5683\u567E\u5682\u567F\u5681\u58D6\u58D4\u58CF\u58D2\u5B2D\u5B25\u5B32\u5B23\u5B2C\u5B27\u5B26\u5B2F\u5B2E\u5B7B\u5BF1\u5BF2\u5DB7\u5E6C\u5E6A\u5FBE\u5FBB\u61C3\u61B5\u61BC\u61E7\u61E0\u61E5\u61E4\u61E8\u61DE\u64EF\u64E9\u64E3\u64EB\u64E4\u64E8\u6581\u6580\u65B6\u65DA\u66D2\u6A8D\u6A96\u6A81\u6AA5\u6A89\u6A9F\u6A9B\u6AA1\u6A9E\u6A87\u6A93\u6A8E"],
      ["ed40", "\u6A95\u6A83\u6AA8\u6AA4\u6A91\u6A7F\u6AA6\u6A9A\u6A85\u6A8C\u6A92\u6B5B\u6BAD\u6C09\u6FCC\u6FA9\u6FF4\u6FD4\u6FE3\u6FDC\u6FED\u6FE7\u6FE6\u6FDE\u6FF2\u6FDD\u6FE2\u6FE8\u71E1\u71F1\u71E8\u71F2\u71E4\u71F0\u71E2\u7373\u736E\u736F\u7497\u74B2\u74AB\u7490\u74AA\u74AD\u74B1\u74A5\u74AF\u7510\u7511\u7512\u750F\u7584\u7643\u7648\u7649\u7647\u76A4\u76E9\u77B5\u77AB\u77B2\u77B7\u77B6"],
      ["eda1", "\u77B4\u77B1\u77A8\u77F0\u78F3\u78FD\u7902\u78FB\u78FC\u78F2\u7905\u78F9\u78FE\u7904\u79AB\u79A8\u7A5C\u7A5B\u7A56\u7A58\u7A54\u7A5A\u7ABE\u7AC0\u7AC1\u7C05\u7C0F\u7BF2\u7C00\u7BFF\u7BFB\u7C0E\u7BF4\u7C0B\u7BF3\u7C02\u7C09\u7C03\u7C01\u7BF8\u7BFD\u7C06\u7BF0\u7BF1\u7C10\u7C0A\u7CE8\u7E2D\u7E3C\u7E42\u7E33\u9848\u7E38\u7E2A\u7E49\u7E40\u7E47\u7E29\u7E4C\u7E30\u7E3B\u7E36\u7E44\u7E3A\u7F45\u7F7F\u7F7E\u7F7D\u7FF4\u7FF2\u802C\u81BB\u81C4\u81CC\u81CA\u81C5\u81C7\u81BC\u81E9\u825B\u825A\u825C\u8583\u8580\u858F\u85A7\u8595\u85A0\u858B\u85A3\u857B\u85A4\u859A\u859E"],
      ["ee40", "\u8577\u857C\u8589\u85A1\u857A\u8578\u8557\u858E\u8596\u8586\u858D\u8599\u859D\u8581\u85A2\u8582\u8588\u8585\u8579\u8576\u8598\u8590\u859F\u8668\u87BE\u87AA\u87AD\u87C5\u87B0\u87AC\u87B9\u87B5\u87BC\u87AE\u87C9\u87C3\u87C2\u87CC\u87B7\u87AF\u87C4\u87CA\u87B4\u87B6\u87BF\u87B8\u87BD\u87DE\u87B2\u8935\u8933\u893C\u893E\u8941\u8952\u8937\u8942\u89AD\u89AF\u89AE\u89F2\u89F3\u8B1E"],
      ["eea1", "\u8B18\u8B16\u8B11\u8B05\u8B0B\u8B22\u8B0F\u8B12\u8B15\u8B07\u8B0D\u8B08\u8B06\u8B1C\u8B13\u8B1A\u8C4F\u8C70\u8C72\u8C71\u8C6F\u8C95\u8C94\u8CF9\u8D6F\u8E4E\u8E4D\u8E53\u8E50\u8E4C\u8E47\u8F43\u8F40\u9085\u907E\u9138\u919A\u91A2\u919B\u9199\u919F\u91A1\u919D\u91A0\u93A1\u9383\u93AF\u9364\u9356\u9347\u937C\u9358\u935C\u9376\u9349\u9350\u9351\u9360\u936D\u938F\u934C\u936A\u9379\u9357\u9355\u9352\u934F\u9371\u9377\u937B\u9361\u935E\u9363\u9367\u9380\u934E\u9359\u95C7\u95C0\u95C9\u95C3\u95C5\u95B7\u96AE\u96B0\u96AC\u9720\u971F\u9718\u971D\u9719\u979A\u97A1\u979C"],
      ["ef40", "\u979E\u979D\u97D5\u97D4\u97F1\u9841\u9844\u984A\u9849\u9845\u9843\u9925\u992B\u992C\u992A\u9933\u9932\u992F\u992D\u9931\u9930\u9998\u99A3\u99A1\u9A02\u99FA\u99F4\u99F7\u99F9\u99F8\u99F6\u99FB\u99FD\u99FE\u99FC\u9A03\u9ABE\u9AFE\u9AFD\u9B01\u9AFC\u9B48\u9B9A\u9BA8\u9B9E\u9B9B\u9BA6\u9BA1\u9BA5\u9BA4\u9B86\u9BA2\u9BA0\u9BAF\u9D33\u9D41\u9D67\u9D36\u9D2E\u9D2F\u9D31\u9D38\u9D30"],
      ["efa1", "\u9D45\u9D42\u9D43\u9D3E\u9D37\u9D40\u9D3D\u7FF5\u9D2D\u9E8A\u9E89\u9E8D\u9EB0\u9EC8\u9EDA\u9EFB\u9EFF\u9F24\u9F23\u9F22\u9F54\u9FA0\u5131\u512D\u512E\u5698\u569C\u5697\u569A\u569D\u5699\u5970\u5B3C\u5C69\u5C6A\u5DC0\u5E6D\u5E6E\u61D8\u61DF\u61ED\u61EE\u61F1\u61EA\u61F0\u61EB\u61D6\u61E9\u64FF\u6504\u64FD\u64F8\u6501\u6503\u64FC\u6594\u65DB\u66DA\u66DB\u66D8\u6AC5\u6AB9\u6ABD\u6AE1\u6AC6\u6ABA\u6AB6\u6AB7\u6AC7\u6AB4\u6AAD\u6B5E\u6BC9\u6C0B\u7007\u700C\u700D\u7001\u7005\u7014\u700E\u6FFF\u7000\u6FFB\u7026\u6FFC\u6FF7\u700A\u7201\u71FF\u71F9\u7203\u71FD\u7376"],
      ["f040", "\u74B8\u74C0\u74B5\u74C1\u74BE\u74B6\u74BB\u74C2\u7514\u7513\u765C\u7664\u7659\u7650\u7653\u7657\u765A\u76A6\u76BD\u76EC\u77C2\u77BA\u78FF\u790C\u7913\u7914\u7909\u7910\u7912\u7911\u79AD\u79AC\u7A5F\u7C1C\u7C29\u7C19\u7C20\u7C1F\u7C2D\u7C1D\u7C26\u7C28\u7C22\u7C25\u7C30\u7E5C\u7E50\u7E56\u7E63\u7E58\u7E62\u7E5F\u7E51\u7E60\u7E57\u7E53\u7FB5\u7FB3\u7FF7\u7FF8\u8075\u81D1\u81D2"],
      ["f0a1", "\u81D0\u825F\u825E\u85B4\u85C6\u85C0\u85C3\u85C2\u85B3\u85B5\u85BD\u85C7\u85C4\u85BF\u85CB\u85CE\u85C8\u85C5\u85B1\u85B6\u85D2\u8624\u85B8\u85B7\u85BE\u8669\u87E7\u87E6\u87E2\u87DB\u87EB\u87EA\u87E5\u87DF\u87F3\u87E4\u87D4\u87DC\u87D3\u87ED\u87D8\u87E3\u87A4\u87D7\u87D9\u8801\u87F4\u87E8\u87DD\u8953\u894B\u894F\u894C\u8946\u8950\u8951\u8949\u8B2A\u8B27\u8B23\u8B33\u8B30\u8B35\u8B47\u8B2F\u8B3C\u8B3E\u8B31\u8B25\u8B37\u8B26\u8B36\u8B2E\u8B24\u8B3B\u8B3D\u8B3A\u8C42\u8C75\u8C99\u8C98\u8C97\u8CFE\u8D04\u8D02\u8D00\u8E5C\u8E62\u8E60\u8E57\u8E56\u8E5E\u8E65\u8E67"],
      ["f140", "\u8E5B\u8E5A\u8E61\u8E5D\u8E69\u8E54\u8F46\u8F47\u8F48\u8F4B\u9128\u913A\u913B\u913E\u91A8\u91A5\u91A7\u91AF\u91AA\u93B5\u938C\u9392\u93B7\u939B\u939D\u9389\u93A7\u938E\u93AA\u939E\u93A6\u9395\u9388\u9399\u939F\u938D\u93B1\u9391\u93B2\u93A4\u93A8\u93B4\u93A3\u93A5\u95D2\u95D3\u95D1\u96B3\u96D7\u96DA\u5DC2\u96DF\u96D8\u96DD\u9723\u9722\u9725\u97AC\u97AE\u97A8\u97AB\u97A4\u97AA"],
      ["f1a1", "\u97A2\u97A5\u97D7\u97D9\u97D6\u97D8\u97FA\u9850\u9851\u9852\u98B8\u9941\u993C\u993A\u9A0F\u9A0B\u9A09\u9A0D\u9A04\u9A11\u9A0A\u9A05\u9A07\u9A06\u9AC0\u9ADC\u9B08\u9B04\u9B05\u9B29\u9B35\u9B4A\u9B4C\u9B4B\u9BC7\u9BC6\u9BC3\u9BBF\u9BC1\u9BB5\u9BB8\u9BD3\u9BB6\u9BC4\u9BB9\u9BBD\u9D5C\u9D53\u9D4F\u9D4A\u9D5B\u9D4B\u9D59\u9D56\u9D4C\u9D57\u9D52\u9D54\u9D5F\u9D58\u9D5A\u9E8E\u9E8C\u9EDF\u9F01\u9F00\u9F16\u9F25\u9F2B\u9F2A\u9F29\u9F28\u9F4C\u9F55\u5134\u5135\u5296\u52F7\u53B4\u56AB\u56AD\u56A6\u56A7\u56AA\u56AC\u58DA\u58DD\u58DB\u5912\u5B3D\u5B3E\u5B3F\u5DC3\u5E70"],
      ["f240", "\u5FBF\u61FB\u6507\u6510\u650D\u6509\u650C\u650E\u6584\u65DE\u65DD\u66DE\u6AE7\u6AE0\u6ACC\u6AD1\u6AD9\u6ACB\u6ADF\u6ADC\u6AD0\u6AEB\u6ACF\u6ACD\u6ADE\u6B60\u6BB0\u6C0C\u7019\u7027\u7020\u7016\u702B\u7021\u7022\u7023\u7029\u7017\u7024\u701C\u702A\u720C\u720A\u7207\u7202\u7205\u72A5\u72A6\u72A4\u72A3\u72A1\u74CB\u74C5\u74B7\u74C3\u7516\u7660\u77C9\u77CA\u77C4\u77F1\u791D\u791B"],
      ["f2a1", "\u7921\u791C\u7917\u791E\u79B0\u7A67\u7A68\u7C33\u7C3C\u7C39\u7C2C\u7C3B\u7CEC\u7CEA\u7E76\u7E75\u7E78\u7E70\u7E77\u7E6F\u7E7A\u7E72\u7E74\u7E68\u7F4B\u7F4A\u7F83\u7F86\u7FB7\u7FFD\u7FFE\u8078\u81D7\u81D5\u8264\u8261\u8263\u85EB\u85F1\u85ED\u85D9\u85E1\u85E8\u85DA\u85D7\u85EC\u85F2\u85F8\u85D8\u85DF\u85E3\u85DC\u85D1\u85F0\u85E6\u85EF\u85DE\u85E2\u8800\u87FA\u8803\u87F6\u87F7\u8809\u880C\u880B\u8806\u87FC\u8808\u87FF\u880A\u8802\u8962\u895A\u895B\u8957\u8961\u895C\u8958\u895D\u8959\u8988\u89B7\u89B6\u89F6\u8B50\u8B48\u8B4A\u8B40\u8B53\u8B56\u8B54\u8B4B\u8B55"],
      ["f340", "\u8B51\u8B42\u8B52\u8B57\u8C43\u8C77\u8C76\u8C9A\u8D06\u8D07\u8D09\u8DAC\u8DAA\u8DAD\u8DAB\u8E6D\u8E78\u8E73\u8E6A\u8E6F\u8E7B\u8EC2\u8F52\u8F51\u8F4F\u8F50\u8F53\u8FB4\u9140\u913F\u91B0\u91AD\u93DE\u93C7\u93CF\u93C2\u93DA\u93D0\u93F9\u93EC\u93CC\u93D9\u93A9\u93E6\u93CA\u93D4\u93EE\u93E3\u93D5\u93C4\u93CE\u93C0\u93D2\u93E7\u957D\u95DA\u95DB\u96E1\u9729\u972B\u972C\u9728\u9726"],
      ["f3a1", "\u97B3\u97B7\u97B6\u97DD\u97DE\u97DF\u985C\u9859\u985D\u9857\u98BF\u98BD\u98BB\u98BE\u9948\u9947\u9943\u99A6\u99A7\u9A1A\u9A15\u9A25\u9A1D\u9A24\u9A1B\u9A22\u9A20\u9A27\u9A23\u9A1E\u9A1C\u9A14\u9AC2\u9B0B\u9B0A\u9B0E\u9B0C\u9B37\u9BEA\u9BEB\u9BE0\u9BDE\u9BE4\u9BE6\u9BE2\u9BF0\u9BD4\u9BD7\u9BEC\u9BDC\u9BD9\u9BE5\u9BD5\u9BE1\u9BDA\u9D77\u9D81\u9D8A\u9D84\u9D88\u9D71\u9D80\u9D78\u9D86\u9D8B\u9D8C\u9D7D\u9D6B\u9D74\u9D75\u9D70\u9D69\u9D85\u9D73\u9D7B\u9D82\u9D6F\u9D79\u9D7F\u9D87\u9D68\u9E94\u9E91\u9EC0\u9EFC\u9F2D\u9F40\u9F41\u9F4D\u9F56\u9F57\u9F58\u5337\u56B2"],
      ["f440", "\u56B5\u56B3\u58E3\u5B45\u5DC6\u5DC7\u5EEE\u5EEF\u5FC0\u5FC1\u61F9\u6517\u6516\u6515\u6513\u65DF\u66E8\u66E3\u66E4\u6AF3\u6AF0\u6AEA\u6AE8\u6AF9\u6AF1\u6AEE\u6AEF\u703C\u7035\u702F\u7037\u7034\u7031\u7042\u7038\u703F\u703A\u7039\u7040\u703B\u7033\u7041\u7213\u7214\u72A8\u737D\u737C\u74BA\u76AB\u76AA\u76BE\u76ED\u77CC\u77CE\u77CF\u77CD\u77F2\u7925\u7923\u7927\u7928\u7924\u7929"],
      ["f4a1", "\u79B2\u7A6E\u7A6C\u7A6D\u7AF7\u7C49\u7C48\u7C4A\u7C47\u7C45\u7CEE\u7E7B\u7E7E\u7E81\u7E80\u7FBA\u7FFF\u8079\u81DB\u81D9\u820B\u8268\u8269\u8622\u85FF\u8601\u85FE\u861B\u8600\u85F6\u8604\u8609\u8605\u860C\u85FD\u8819\u8810\u8811\u8817\u8813\u8816\u8963\u8966\u89B9\u89F7\u8B60\u8B6A\u8B5D\u8B68\u8B63\u8B65\u8B67\u8B6D\u8DAE\u8E86\u8E88\u8E84\u8F59\u8F56\u8F57\u8F55\u8F58\u8F5A\u908D\u9143\u9141\u91B7\u91B5\u91B2\u91B3\u940B\u9413\u93FB\u9420\u940F\u9414\u93FE\u9415\u9410\u9428\u9419\u940D\u93F5\u9400\u93F7\u9407\u940E\u9416\u9412\u93FA\u9409\u93F8\u940A\u93FF"],
      ["f540", "\u93FC\u940C\u93F6\u9411\u9406\u95DE\u95E0\u95DF\u972E\u972F\u97B9\u97BB\u97FD\u97FE\u9860\u9862\u9863\u985F\u98C1\u98C2\u9950\u994E\u9959\u994C\u994B\u9953\u9A32\u9A34\u9A31\u9A2C\u9A2A\u9A36\u9A29\u9A2E\u9A38\u9A2D\u9AC7\u9ACA\u9AC6\u9B10\u9B12\u9B11\u9C0B\u9C08\u9BF7\u9C05\u9C12\u9BF8\u9C40\u9C07\u9C0E\u9C06\u9C17\u9C14\u9C09\u9D9F\u9D99\u9DA4\u9D9D\u9D92\u9D98\u9D90\u9D9B"],
      ["f5a1", "\u9DA0\u9D94\u9D9C\u9DAA\u9D97\u9DA1\u9D9A\u9DA2\u9DA8\u9D9E\u9DA3\u9DBF\u9DA9\u9D96\u9DA6\u9DA7\u9E99\u9E9B\u9E9A\u9EE5\u9EE4\u9EE7\u9EE6\u9F30\u9F2E\u9F5B\u9F60\u9F5E\u9F5D\u9F59\u9F91\u513A\u5139\u5298\u5297\u56C3\u56BD\u56BE\u5B48\u5B47\u5DCB\u5DCF\u5EF1\u61FD\u651B\u6B02\u6AFC\u6B03\u6AF8\u6B00\u7043\u7044\u704A\u7048\u7049\u7045\u7046\u721D\u721A\u7219\u737E\u7517\u766A\u77D0\u792D\u7931\u792F\u7C54\u7C53\u7CF2\u7E8A\u7E87\u7E88\u7E8B\u7E86\u7E8D\u7F4D\u7FBB\u8030\u81DD\u8618\u862A\u8626\u861F\u8623\u861C\u8619\u8627\u862E\u8621\u8620\u8629\u861E\u8625"],
      ["f640", "\u8829\u881D\u881B\u8820\u8824\u881C\u882B\u884A\u896D\u8969\u896E\u896B\u89FA\u8B79\u8B78\u8B45\u8B7A\u8B7B\u8D10\u8D14\u8DAF\u8E8E\u8E8C\u8F5E\u8F5B\u8F5D\u9146\u9144\u9145\u91B9\u943F\u943B\u9436\u9429\u943D\u943C\u9430\u9439\u942A\u9437\u942C\u9440\u9431\u95E5\u95E4\u95E3\u9735\u973A\u97BF\u97E1\u9864\u98C9\u98C6\u98C0\u9958\u9956\u9A39\u9A3D\u9A46\u9A44\u9A42\u9A41\u9A3A"],
      ["f6a1", "\u9A3F\u9ACD\u9B15\u9B17\u9B18\u9B16\u9B3A\u9B52\u9C2B\u9C1D\u9C1C\u9C2C\u9C23\u9C28\u9C29\u9C24\u9C21\u9DB7\u9DB6\u9DBC\u9DC1\u9DC7\u9DCA\u9DCF\u9DBE\u9DC5\u9DC3\u9DBB\u9DB5\u9DCE\u9DB9\u9DBA\u9DAC\u9DC8\u9DB1\u9DAD\u9DCC\u9DB3\u9DCD\u9DB2\u9E7A\u9E9C\u9EEB\u9EEE\u9EED\u9F1B\u9F18\u9F1A\u9F31\u9F4E\u9F65\u9F64\u9F92\u4EB9\u56C6\u56C5\u56CB\u5971\u5B4B\u5B4C\u5DD5\u5DD1\u5EF2\u6521\u6520\u6526\u6522\u6B0B\u6B08\u6B09\u6C0D\u7055\u7056\u7057\u7052\u721E\u721F\u72A9\u737F\u74D8\u74D5\u74D9\u74D7\u766D\u76AD\u7935\u79B4\u7A70\u7A71\u7C57\u7C5C\u7C59\u7C5B\u7C5A"],
      ["f740", "\u7CF4\u7CF1\u7E91\u7F4F\u7F87\u81DE\u826B\u8634\u8635\u8633\u862C\u8632\u8636\u882C\u8828\u8826\u882A\u8825\u8971\u89BF\u89BE\u89FB\u8B7E\u8B84\u8B82\u8B86\u8B85\u8B7F\u8D15\u8E95\u8E94\u8E9A\u8E92\u8E90\u8E96\u8E97\u8F60\u8F62\u9147\u944C\u9450\u944A\u944B\u944F\u9447\u9445\u9448\u9449\u9446\u973F\u97E3\u986A\u9869\u98CB\u9954\u995B\u9A4E\u9A53\u9A54\u9A4C\u9A4F\u9A48\u9A4A"],
      ["f7a1", "\u9A49\u9A52\u9A50\u9AD0\u9B19\u9B2B\u9B3B\u9B56\u9B55\u9C46\u9C48\u9C3F\u9C44\u9C39\u9C33\u9C41\u9C3C\u9C37\u9C34\u9C32\u9C3D\u9C36\u9DDB\u9DD2\u9DDE\u9DDA\u9DCB\u9DD0\u9DDC\u9DD1\u9DDF\u9DE9\u9DD9\u9DD8\u9DD6\u9DF5\u9DD5\u9DDD\u9EB6\u9EF0\u9F35\u9F33\u9F32\u9F42\u9F6B\u9F95\u9FA2\u513D\u5299\u58E8\u58E7\u5972\u5B4D\u5DD8\u882F\u5F4F\u6201\u6203\u6204\u6529\u6525\u6596\u66EB\u6B11\u6B12\u6B0F\u6BCA\u705B\u705A\u7222\u7382\u7381\u7383\u7670\u77D4\u7C67\u7C66\u7E95\u826C\u863A\u8640\u8639\u863C\u8631\u863B\u863E\u8830\u8832\u882E\u8833\u8976\u8974\u8973\u89FE"],
      ["f840", "\u8B8C\u8B8E\u8B8B\u8B88\u8C45\u8D19\u8E98\u8F64\u8F63\u91BC\u9462\u9455\u945D\u9457\u945E\u97C4\u97C5\u9800\u9A56\u9A59\u9B1E\u9B1F\u9B20\u9C52\u9C58\u9C50\u9C4A\u9C4D\u9C4B\u9C55\u9C59\u9C4C\u9C4E\u9DFB\u9DF7\u9DEF\u9DE3\u9DEB\u9DF8\u9DE4\u9DF6\u9DE1\u9DEE\u9DE6\u9DF2\u9DF0\u9DE2\u9DEC\u9DF4\u9DF3\u9DE8\u9DED\u9EC2\u9ED0\u9EF2\u9EF3\u9F06\u9F1C\u9F38\u9F37\u9F36\u9F43\u9F4F"],
      ["f8a1", "\u9F71\u9F70\u9F6E\u9F6F\u56D3\u56CD\u5B4E\u5C6D\u652D\u66ED\u66EE\u6B13\u705F\u7061\u705D\u7060\u7223\u74DB\u74E5\u77D5\u7938\u79B7\u79B6\u7C6A\u7E97\u7F89\u826D\u8643\u8838\u8837\u8835\u884B\u8B94\u8B95\u8E9E\u8E9F\u8EA0\u8E9D\u91BE\u91BD\u91C2\u946B\u9468\u9469\u96E5\u9746\u9743\u9747\u97C7\u97E5\u9A5E\u9AD5\u9B59\u9C63\u9C67\u9C66\u9C62\u9C5E\u9C60\u9E02\u9DFE\u9E07\u9E03\u9E06\u9E05\u9E00\u9E01\u9E09\u9DFF\u9DFD\u9E04\u9EA0\u9F1E\u9F46\u9F74\u9F75\u9F76\u56D4\u652E\u65B8\u6B18\u6B19\u6B17\u6B1A\u7062\u7226\u72AA\u77D8\u77D9\u7939\u7C69\u7C6B\u7CF6\u7E9A"],
      ["f940", "\u7E98\u7E9B\u7E99\u81E0\u81E1\u8646\u8647\u8648\u8979\u897A\u897C\u897B\u89FF\u8B98\u8B99\u8EA5\u8EA4\u8EA3\u946E\u946D\u946F\u9471\u9473\u9749\u9872\u995F\u9C68\u9C6E\u9C6D\u9E0B\u9E0D\u9E10\u9E0F\u9E12\u9E11\u9EA1\u9EF5\u9F09\u9F47\u9F78\u9F7B\u9F7A\u9F79\u571E\u7066\u7C6F\u883C\u8DB2\u8EA6\u91C3\u9474\u9478\u9476\u9475\u9A60\u9C74\u9C73\u9C71\u9C75\u9E14\u9E13\u9EF6\u9F0A"],
      ["f9a1", "\u9FA4\u7068\u7065\u7CF7\u866A\u883E\u883D\u883F\u8B9E\u8C9C\u8EA9\u8EC9\u974B\u9873\u9874\u98CC\u9961\u99AB\u9A64\u9A66\u9A67\u9B24\u9E15\u9E17\u9F48\u6207\u6B1E\u7227\u864C\u8EA8\u9482\u9480\u9481\u9A69\u9A68\u9B2E\u9E19\u7229\u864B\u8B9F\u9483\u9C79\u9EB7\u7675\u9A6B\u9C7A\u9E1D\u7069\u706A\u9EA4\u9F7E\u9F49\u9F98\u7881\u92B9\u88CF\u58BB\u6052\u7CA7\u5AFA\u2554\u2566\u2557\u2560\u256C\u2563\u255A\u2569\u255D\u2552\u2564\u2555\u255E\u256A\u2561\u2558\u2567\u255B\u2553\u2565\u2556\u255F\u256B\u2562\u2559\u2568\u255C\u2551\u2550\u256D\u256E\u2570\u256F\u2593"]
    ];
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/tables/big5-added.json
var require_big5_added = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/tables/big5-added.json"(exports2, module2) {
    module2.exports = [
      ["8740", "\u43F0\u4C32\u4603\u45A6\u4578\u{27267}\u4D77\u45B3\u{27CB1}\u4CE2\u{27CC5}\u3B95\u4736\u4744\u4C47\u4C40\u{242BF}\u{23617}\u{27352}\u{26E8B}\u{270D2}\u4C57\u{2A351}\u474F\u45DA\u4C85\u{27C6C}\u4D07\u4AA4\u46A1\u{26B23}\u7225\u{25A54}\u{21A63}\u{23E06}\u{23F61}\u664D\u56FB"],
      ["8767", "\u7D95\u591D\u{28BB9}\u3DF4\u9734\u{27BEF}\u5BDB\u{21D5E}\u5AA4\u3625\u{29EB0}\u5AD1\u5BB7\u5CFC\u676E\u8593\u{29945}\u7461\u749D\u3875\u{21D53}\u{2369E}\u{26021}\u3EEC"],
      ["87a1", "\u{258DE}\u3AF5\u7AFC\u9F97\u{24161}\u{2890D}\u{231EA}\u{20A8A}\u{2325E}\u430A\u8484\u9F96\u942F\u4930\u8613\u5896\u974A\u9218\u79D0\u7A32\u6660\u6A29\u889D\u744C\u7BC5\u6782\u7A2C\u524F\u9046\u34E6\u73C4\u{25DB9}\u74C6\u9FC7\u57B3\u492F\u544C\u4131\u{2368E}\u5818\u7A72\u{27B65}\u8B8F\u46AE\u{26E88}\u4181\u{25D99}\u7BAE\u{224BC}\u9FC8\u{224C1}\u{224C9}\u{224CC}\u9FC9\u8504\u{235BB}\u40B4\u9FCA\u44E1\u{2ADFF}\u62C1\u706E\u9FCB"],
      ["8840", "\u31C0", 4, "\u{2010C}\u31C5\u{200D1}\u{200CD}\u31C6\u31C7\u{200CB}\u{21FE8}\u31C8\u{200CA}\u31C9\u31CA\u31CB\u31CC\u{2010E}\u31CD\u31CE\u0100\xC1\u01CD\xC0\u0112\xC9\u011A\xC8\u014C\xD3\u01D1\xD2\u0FFF\xCA\u0304\u1EBE\u0FFF\xCA\u030C\u1EC0\xCA\u0101\xE1\u01CE\xE0\u0251\u0113\xE9\u011B\xE8\u012B\xED\u01D0\xEC\u014D\xF3\u01D2\xF2\u016B\xFA\u01D4\xF9\u01D6\u01D8\u01DA"],
      ["88a1", "\u01DC\xFC\u0FFF\xEA\u0304\u1EBF\u0FFF\xEA\u030C\u1EC1\xEA\u0261\u23DA\u23DB"],
      ["8940", "\u{2A3A9}\u{21145}"],
      ["8943", "\u650A"],
      ["8946", "\u4E3D\u6EDD\u9D4E\u91DF"],
      ["894c", "\u{27735}\u6491\u4F1A\u4F28\u4FA8\u5156\u5174\u519C\u51E4\u52A1\u52A8\u533B\u534E\u53D1\u53D8\u56E2\u58F0\u5904\u5907\u5932\u5934\u5B66\u5B9E\u5B9F\u5C9A\u5E86\u603B\u6589\u67FE\u6804\u6865\u6D4E\u70BC\u7535\u7EA4\u7EAC\u7EBA\u7EC7\u7ECF\u7EDF\u7F06\u7F37\u827A\u82CF\u836F\u89C6\u8BBE\u8BE2\u8F66\u8F67\u8F6E"],
      ["89a1", "\u7411\u7CFC\u7DCD\u6946\u7AC9\u5227"],
      ["89ab", "\u918C\u78B8\u915E\u80BC"],
      ["89b0", "\u8D0B\u80F6\u{209E7}"],
      ["89b5", "\u809F\u9EC7\u4CCD\u9DC9\u9E0C\u4C3E\u{29DF6}\u{2700E}\u9E0A\u{2A133}\u35C1"],
      ["89c1", "\u6E9A\u823E\u7519"],
      ["89c5", "\u4911\u9A6C\u9A8F\u9F99\u7987\u{2846C}\u{21DCA}\u{205D0}\u{22AE6}\u4E24\u4E81\u4E80\u4E87\u4EBF\u4EEB\u4F37\u344C\u4FBD\u3E48\u5003\u5088\u347D\u3493\u34A5\u5186\u5905\u51DB\u51FC\u5205\u4E89\u5279\u5290\u5327\u35C7\u53A9\u3551\u53B0\u3553\u53C2\u5423\u356D\u3572\u3681\u5493\u54A3\u54B4\u54B9\u54D0\u54EF\u5518\u5523\u5528\u3598\u553F\u35A5\u35BF\u55D7\u35C5"],
      ["8a40", "\u{27D84}\u5525"],
      ["8a43", "\u{20C42}\u{20D15}\u{2512B}\u5590\u{22CC6}\u39EC\u{20341}\u8E46\u{24DB8}\u{294E5}\u4053\u{280BE}\u777A\u{22C38}\u3A34\u47D5\u{2815D}\u{269F2}\u{24DEA}\u64DD\u{20D7C}\u{20FB4}\u{20CD5}\u{210F4}\u648D\u8E7E\u{20E96}\u{20C0B}\u{20F64}\u{22CA9}\u{28256}\u{244D3}"],
      ["8a64", "\u{20D46}\u{29A4D}\u{280E9}\u47F4\u{24EA7}\u{22CC2}\u9AB2\u3A67\u{295F4}\u3FED\u3506\u{252C7}\u{297D4}\u{278C8}\u{22D44}\u9D6E\u9815"],
      ["8a76", "\u43D9\u{260A5}\u64B4\u54E3\u{22D4C}\u{22BCA}\u{21077}\u39FB\u{2106F}"],
      ["8aa1", "\u{266DA}\u{26716}\u{279A0}\u64EA\u{25052}\u{20C43}\u8E68\u{221A1}\u{28B4C}\u{20731}"],
      ["8aac", "\u480B\u{201A9}\u3FFA\u5873\u{22D8D}"],
      ["8ab2", "\u{245C8}\u{204FC}\u{26097}\u{20F4C}\u{20D96}\u5579\u40BB\u43BA"],
      ["8abb", "\u4AB4\u{22A66}\u{2109D}\u81AA\u98F5\u{20D9C}\u6379\u39FE\u{22775}\u8DC0\u56A1\u647C\u3E43"],
      ["8ac9", "\u{2A601}\u{20E09}\u{22ACF}\u{22CC9}"],
      ["8ace", "\u{210C8}\u{239C2}\u3992\u3A06\u{2829B}\u3578\u{25E49}\u{220C7}\u5652\u{20F31}\u{22CB2}\u{29720}\u34BC\u6C3D\u{24E3B}"],
      ["8adf", "\u{27574}\u{22E8B}\u{22208}\u{2A65B}\u{28CCD}\u{20E7A}\u{20C34}\u{2681C}\u7F93\u{210CF}\u{22803}\u{22939}\u35FB\u{251E3}\u{20E8C}\u{20F8D}\u{20EAA}\u3F93\u{20F30}\u{20D47}\u{2114F}\u{20E4C}"],
      ["8af6", "\u{20EAB}\u{20BA9}\u{20D48}\u{210C0}\u{2113D}\u3FF9\u{22696}\u6432\u{20FAD}"],
      ["8b40", "\u{233F4}\u{27639}\u{22BCE}\u{20D7E}\u{20D7F}\u{22C51}\u{22C55}\u3A18\u{20E98}\u{210C7}\u{20F2E}\u{2A632}\u{26B50}\u{28CD2}\u{28D99}\u{28CCA}\u95AA\u54CC\u82C4\u55B9"],
      ["8b55", "\u{29EC3}\u9C26\u9AB6\u{2775E}\u{22DEE}\u7140\u816D\u80EC\u5C1C\u{26572}\u8134\u3797\u535F\u{280BD}\u91B6\u{20EFA}\u{20E0F}\u{20E77}\u{20EFB}\u35DD\u{24DEB}\u3609\u{20CD6}\u56AF\u{227B5}\u{210C9}\u{20E10}\u{20E78}\u{21078}\u{21148}\u{28207}\u{21455}\u{20E79}\u{24E50}\u{22DA4}\u5A54\u{2101D}\u{2101E}\u{210F5}\u{210F6}\u579C\u{20E11}"],
      ["8ba1", "\u{27694}\u{282CD}\u{20FB5}\u{20E7B}\u{2517E}\u3703\u{20FB6}\u{21180}\u{252D8}\u{2A2BD}\u{249DA}\u{2183A}\u{24177}\u{2827C}\u5899\u5268\u361A\u{2573D}\u7BB2\u5B68\u4800\u4B2C\u9F27\u49E7\u9C1F\u9B8D\u{25B74}\u{2313D}\u55FB\u35F2\u5689\u4E28\u5902\u{21BC1}\u{2F878}\u9751\u{20086}\u4E5B\u4EBB\u353E\u5C23\u5F51\u5FC4\u38FA\u624C\u6535\u6B7A\u6C35\u6C3A\u706C\u722B\u4E2C\u72AD\u{248E9}\u7F52\u793B\u7CF9\u7F53\u{2626A}\u34C1"],
      ["8bde", "\u{2634B}\u8002\u8080\u{26612}\u{26951}\u535D\u8864\u89C1\u{278B2}\u8BA0\u8D1D\u9485\u9578\u957F\u95E8\u{28E0F}\u97E6\u9875\u98CE\u98DE\u9963\u{29810}\u9C7C\u9E1F\u9EC4\u6B6F\uF907\u4E37\u{20087}\u961D\u6237\u94A2"],
      ["8c40", "\u503B\u6DFE\u{29C73}\u9FA6\u3DC9\u888F\u{2414E}\u7077\u5CF5\u4B20\u{251CD}\u3559\u{25D30}\u6122\u{28A32}\u8FA7\u91F6\u7191\u6719\u73BA\u{23281}\u{2A107}\u3C8B\u{21980}\u4B10\u78E4\u7402\u51AE\u{2870F}\u4009\u6A63\u{2A2BA}\u4223\u860F\u{20A6F}\u7A2A\u{29947}\u{28AEA}\u9755\u704D\u5324\u{2207E}\u93F4\u76D9\u{289E3}\u9FA7\u77DD\u4EA3\u4FF0\u50BC\u4E2F\u4F17\u9FA8\u5434\u7D8B\u5892\u58D0\u{21DB6}\u5E92\u5E99\u5FC2\u{22712}\u658B"],
      ["8ca1", "\u{233F9}\u6919\u6A43\u{23C63}\u6CFF"],
      ["8ca7", "\u7200\u{24505}\u738C\u3EDB\u{24A13}\u5B15\u74B9\u8B83\u{25CA4}\u{25695}\u7A93\u7BEC\u7CC3\u7E6C\u82F8\u8597\u9FA9\u8890\u9FAA\u8EB9\u9FAB\u8FCF\u855F\u99E0\u9221\u9FAC\u{28DB9}\u{2143F}\u4071\u42A2\u5A1A"],
      ["8cc9", "\u9868\u676B\u4276\u573D"],
      ["8cce", "\u85D6\u{2497B}\u82BF\u{2710D}\u4C81\u{26D74}\u5D7B\u{26B15}\u{26FBE}\u9FAD\u9FAE\u5B96\u9FAF\u66E7\u7E5B\u6E57\u79CA\u3D88\u44C3\u{23256}\u{22796}\u439A\u4536"],
      ["8ce6", "\u5CD5\u{23B1A}\u8AF9\u5C78\u3D12\u{23551}\u5D78\u9FB2\u7157\u4558\u{240EC}\u{21E23}\u4C77\u3978\u344A\u{201A4}\u{26C41}\u8ACC\u4FB4\u{20239}\u59BF\u816C\u9856\u{298FA}\u5F3B"],
      ["8d40", "\u{20B9F}"],
      ["8d42", "\u{221C1}\u{2896D}\u4102\u46BB\u{29079}\u3F07\u9FB3\u{2A1B5}\u40F8\u37D6\u46F7\u{26C46}\u417C\u{286B2}\u{273FF}\u456D\u38D4\u{2549A}\u4561\u451B\u4D89\u4C7B\u4D76\u45EA\u3FC8\u{24B0F}\u3661\u44DE\u44BD\u41ED\u5D3E\u5D48\u5D56\u3DFC\u380F\u5DA4\u5DB9\u3820\u3838\u5E42\u5EBD\u5F25\u5F83\u3908\u3914\u393F\u394D\u60D7\u613D\u5CE5\u3989\u61B7\u61B9\u61CF\u39B8\u622C\u6290\u62E5\u6318\u39F8\u56B1"],
      ["8da1", "\u3A03\u63E2\u63FB\u6407\u645A\u3A4B\u64C0\u5D15\u5621\u9F9F\u3A97\u6586\u3ABD\u65FF\u6653\u3AF2\u6692\u3B22\u6716\u3B42\u67A4\u6800\u3B58\u684A\u6884\u3B72\u3B71\u3B7B\u6909\u6943\u725C\u6964\u699F\u6985\u3BBC\u69D6\u3BDD\u6A65\u6A74\u6A71\u6A82\u3BEC\u6A99\u3BF2\u6AAB\u6AB5\u6AD4\u6AF6\u6B81\u6BC1\u6BEA\u6C75\u6CAA\u3CCB\u6D02\u6D06\u6D26\u6D81\u3CEF\u6DA4\u6DB1\u6E15\u6E18\u6E29\u6E86\u{289C0}\u6EBB\u6EE2\u6EDA\u9F7F\u6EE8\u6EE9\u6F24\u6F34\u3D46\u{23F41}\u6F81\u6FBE\u3D6A\u3D75\u71B7\u5C99\u3D8A\u702C\u3D91\u7050\u7054\u706F\u707F\u7089\u{20325}\u43C1\u35F1\u{20ED8}"],
      ["8e40", "\u{23ED7}\u57BE\u{26ED3}\u713E\u{257E0}\u364E\u69A2\u{28BE9}\u5B74\u7A49\u{258E1}\u{294D9}\u7A65\u7A7D\u{259AC}\u7ABB\u7AB0\u7AC2\u7AC3\u71D1\u{2648D}\u41CA\u7ADA\u7ADD\u7AEA\u41EF\u54B2\u{25C01}\u7B0B\u7B55\u7B29\u{2530E}\u{25CFE}\u7BA2\u7B6F\u839C\u{25BB4}\u{26C7F}\u7BD0\u8421\u7B92\u7BB8\u{25D20}\u3DAD\u{25C65}\u8492\u7BFA\u7C06\u7C35\u{25CC1}\u7C44\u7C83\u{24882}\u7CA6\u667D\u{24578}\u7CC9\u7CC7\u7CE6\u7C74\u7CF3\u7CF5\u7CCE"],
      ["8ea1", "\u7E67\u451D\u{26E44}\u7D5D\u{26ED6}\u748D\u7D89\u7DAB\u7135\u7DB3\u7DD2\u{24057}\u{26029}\u7DE4\u3D13\u7DF5\u{217F9}\u7DE5\u{2836D}\u7E1D\u{26121}\u{2615A}\u7E6E\u7E92\u432B\u946C\u7E27\u7F40\u7F41\u7F47\u7936\u{262D0}\u99E1\u7F97\u{26351}\u7FA3\u{21661}\u{20068}\u455C\u{23766}\u4503\u{2833A}\u7FFA\u{26489}\u8005\u8008\u801D\u8028\u802F\u{2A087}\u{26CC3}\u803B\u803C\u8061\u{22714}\u4989\u{26626}\u{23DE3}\u{266E8}\u6725\u80A7\u{28A48}\u8107\u811A\u58B0\u{226F6}\u6C7F\u{26498}\u{24FB8}\u64E7\u{2148A}\u8218\u{2185E}\u6A53\u{24A65}\u{24A95}\u447A\u8229\u{20B0D}\u{26A52}\u{23D7E}\u4FF9\u{214FD}\u84E2\u8362\u{26B0A}\u{249A7}\u{23530}\u{21773}\u{23DF8}\u82AA\u691B\u{2F994}\u41DB"],
      ["8f40", "\u854B\u82D0\u831A\u{20E16}\u{217B4}\u36C1\u{2317D}\u{2355A}\u827B\u82E2\u8318\u{23E8B}\u{26DA3}\u{26B05}\u{26B97}\u{235CE}\u3DBF\u831D\u55EC\u8385\u450B\u{26DA5}\u83AC\u83C1\u83D3\u347E\u{26ED4}\u6A57\u855A\u3496\u{26E42}\u{22EEF}\u8458\u{25BE4}\u8471\u3DD3\u44E4\u6AA7\u844A\u{23CB5}\u7958\u84A8\u{26B96}\u{26E77}\u{26E43}\u84DE\u840F\u8391\u44A0\u8493\u84E4\u{25C91}\u4240\u{25CC0}\u4543\u8534\u5AF2\u{26E99}\u4527\u8573\u4516\u67BF\u8616"],
      ["8fa1", "\u{28625}\u{2863B}\u85C1\u{27088}\u8602\u{21582}\u{270CD}\u{2F9B2}\u456A\u8628\u3648\u{218A2}\u53F7\u{2739A}\u867E\u8771\u{2A0F8}\u87EE\u{22C27}\u87B1\u87DA\u880F\u5661\u866C\u6856\u460F\u8845\u8846\u{275E0}\u{23DB9}\u{275E4}\u885E\u889C\u465B\u88B4\u88B5\u63C1\u88C5\u7777\u{2770F}\u8987\u898A\u89A6\u89A9\u89A7\u89BC\u{28A25}\u89E7\u{27924}\u{27ABD}\u8A9C\u7793\u91FE\u8A90\u{27A59}\u7AE9\u{27B3A}\u{23F8F}\u4713\u{27B38}\u717C\u8B0C\u8B1F\u{25430}\u{25565}\u8B3F\u8B4C\u8B4D\u8AA9\u{24A7A}\u8B90\u8B9B\u8AAF\u{216DF}\u4615\u884F\u8C9B\u{27D54}\u{27D8F}\u{2F9D4}\u3725\u{27D53}\u8CD6\u{27D98}\u{27DBD}\u8D12\u8D03\u{21910}\u8CDB\u705C\u8D11\u{24CC9}\u3ED0\u8D77"],
      ["9040", "\u8DA9\u{28002}\u{21014}\u{2498A}\u3B7C\u{281BC}\u{2710C}\u7AE7\u8EAD\u8EB6\u8EC3\u92D4\u8F19\u8F2D\u{28365}\u{28412}\u8FA5\u9303\u{2A29F}\u{20A50}\u8FB3\u492A\u{289DE}\u{2853D}\u{23DBB}\u5EF8\u{23262}\u8FF9\u{2A014}\u{286BC}\u{28501}\u{22325}\u3980\u{26ED7}\u9037\u{2853C}\u{27ABE}\u9061\u{2856C}\u{2860B}\u90A8\u{28713}\u90C4\u{286E6}\u90AE\u90FD\u9167\u3AF0\u91A9\u91C4\u7CAC\u{28933}\u{21E89}\u920E\u6C9F\u9241\u9262\u{255B9}\u92B9\u{28AC6}\u{23C9B}\u{28B0C}\u{255DB}"],
      ["90a1", "\u{20D31}\u932C\u936B\u{28AE1}\u{28BEB}\u708F\u5AC3\u{28AE2}\u{28AE5}\u4965\u9244\u{28BEC}\u{28C39}\u{28BFF}\u9373\u945B\u8EBC\u9585\u95A6\u9426\u95A0\u6FF6\u42B9\u{2267A}\u{286D8}\u{2127C}\u{23E2E}\u49DF\u6C1C\u967B\u9696\u416C\u96A3\u{26ED5}\u61DA\u96B6\u78F5\u{28AE0}\u96BD\u53CC\u49A1\u{26CB8}\u{20274}\u{26410}\u{290AF}\u{290E5}\u{24AD1}\u{21915}\u{2330A}\u9731\u8642\u9736\u4A0F\u453D\u4585\u{24AE9}\u7075\u5B41\u971B\u975C\u{291D5}\u9757\u5B4A\u{291EB}\u975F\u9425\u50D0\u{230B7}\u{230BC}\u9789\u979F\u97B1\u97BE\u97C0\u97D2\u97E0\u{2546C}\u97EE\u741C\u{29433}\u97FF\u97F5\u{2941D}\u{2797A}\u4AD1\u9834\u9833\u984B\u9866\u3B0E\u{27175}\u3D51\u{20630}\u{2415C}"],
      ["9140", "\u{25706}\u98CA\u98B7\u98C8\u98C7\u4AFF\u{26D27}\u{216D3}\u55B0\u98E1\u98E6\u98EC\u9378\u9939\u{24A29}\u4B72\u{29857}\u{29905}\u99F5\u9A0C\u9A3B\u9A10\u9A58\u{25725}\u36C4\u{290B1}\u{29BD5}\u9AE0\u9AE2\u{29B05}\u9AF4\u4C0E\u9B14\u9B2D\u{28600}\u5034\u9B34\u{269A8}\u38C3\u{2307D}\u9B50\u9B40\u{29D3E}\u5A45\u{21863}\u9B8E\u{2424B}\u9C02\u9BFF\u9C0C\u{29E68}\u9DD4\u{29FB7}\u{2A192}\u{2A1AB}\u{2A0E1}\u{2A123}\u{2A1DF}\u9D7E\u9D83\u{2A134}\u9E0E\u6888"],
      ["91a1", "\u9DC4\u{2215B}\u{2A193}\u{2A220}\u{2193B}\u{2A233}\u9D39\u{2A0B9}\u{2A2B4}\u9E90\u9E95\u9E9E\u9EA2\u4D34\u9EAA\u9EAF\u{24364}\u9EC1\u3B60\u39E5\u3D1D\u4F32\u37BE\u{28C2B}\u9F02\u9F08\u4B96\u9424\u{26DA2}\u9F17\u9F16\u9F39\u569F\u568A\u9F45\u99B8\u{2908B}\u97F2\u847F\u9F62\u9F69\u7ADC\u9F8E\u7216\u4BBE\u{24975}\u{249BB}\u7177\u{249F8}\u{24348}\u{24A51}\u739E\u{28BDA}\u{218FA}\u799F\u{2897E}\u{28E36}\u9369\u93F3\u{28A44}\u92EC\u9381\u93CB\u{2896C}\u{244B9}\u7217\u3EEB\u7772\u7A43\u70D0\u{24473}\u{243F8}\u717E\u{217EF}\u70A3\u{218BE}\u{23599}\u3EC7\u{21885}\u{2542F}\u{217F8}\u3722\u{216FB}\u{21839}\u36E1\u{21774}\u{218D1}\u{25F4B}\u3723\u{216C0}\u575B\u{24A25}\u{213FE}\u{212A8}"],
      ["9240", "\u{213C6}\u{214B6}\u8503\u{236A6}\u8503\u8455\u{24994}\u{27165}\u{23E31}\u{2555C}\u{23EFB}\u{27052}\u44F4\u{236EE}\u{2999D}\u{26F26}\u67F9\u3733\u3C15\u3DE7\u586C\u{21922}\u6810\u4057\u{2373F}\u{240E1}\u{2408B}\u{2410F}\u{26C21}\u54CB\u569E\u{266B1}\u5692\u{20FDF}\u{20BA8}\u{20E0D}\u93C6\u{28B13}\u939C\u4EF8\u512B\u3819\u{24436}\u4EBC\u{20465}\u{2037F}\u4F4B\u4F8A\u{25651}\u5A68\u{201AB}\u{203CB}\u3999\u{2030A}\u{20414}\u3435\u4F29\u{202C0}\u{28EB3}\u{20275}\u8ADA\u{2020C}\u4E98"],
      ["92a1", "\u50CD\u510D\u4FA2\u4F03\u{24A0E}\u{23E8A}\u4F42\u502E\u506C\u5081\u4FCC\u4FE5\u5058\u50FC\u5159\u515B\u515D\u515E\u6E76\u{23595}\u{23E39}\u{23EBF}\u6D72\u{21884}\u{23E89}\u51A8\u51C3\u{205E0}\u44DD\u{204A3}\u{20492}\u{20491}\u8D7A\u{28A9C}\u{2070E}\u5259\u52A4\u{20873}\u52E1\u936E\u467A\u718C\u{2438C}\u{20C20}\u{249AC}\u{210E4}\u69D1\u{20E1D}\u7479\u3EDE\u7499\u7414\u7456\u7398\u4B8E\u{24ABC}\u{2408D}\u53D0\u3584\u720F\u{240C9}\u55B4\u{20345}\u54CD\u{20BC6}\u571D\u925D\u96F4\u9366\u57DD\u578D\u577F\u363E\u58CB\u5A99\u{28A46}\u{216FA}\u{2176F}\u{21710}\u5A2C\u59B8\u928F\u5A7E\u5ACF\u5A12\u{25946}\u{219F3}\u{21861}\u{24295}\u36F5\u6D05\u7443\u5A21\u{25E83}"],
      ["9340", "\u5A81\u{28BD7}\u{20413}\u93E0\u748C\u{21303}\u7105\u4972\u9408\u{289FB}\u93BD\u37A0\u5C1E\u5C9E\u5E5E\u5E48\u{21996}\u{2197C}\u{23AEE}\u5ECD\u5B4F\u{21903}\u{21904}\u3701\u{218A0}\u36DD\u{216FE}\u36D3\u812A\u{28A47}\u{21DBA}\u{23472}\u{289A8}\u5F0C\u5F0E\u{21927}\u{217AB}\u5A6B\u{2173B}\u5B44\u8614\u{275FD}\u8860\u607E\u{22860}\u{2262B}\u5FDB\u3EB8\u{225AF}\u{225BE}\u{29088}\u{26F73}\u61C0\u{2003E}\u{20046}\u{2261B}\u6199\u6198\u6075\u{22C9B}\u{22D07}\u{246D4}\u{2914D}"],
      ["93a1", "\u6471\u{24665}\u{22B6A}\u3A29\u{22B22}\u{23450}\u{298EA}\u{22E78}\u6337\u{2A45B}\u64B6\u6331\u63D1\u{249E3}\u{22D67}\u62A4\u{22CA1}\u643B\u656B\u6972\u3BF4\u{2308E}\u{232AD}\u{24989}\u{232AB}\u550D\u{232E0}\u{218D9}\u{2943F}\u66CE\u{23289}\u{231B3}\u3AE0\u4190\u{25584}\u{28B22}\u{2558F}\u{216FC}\u{2555B}\u{25425}\u78EE\u{23103}\u{2182A}\u{23234}\u3464\u{2320F}\u{23182}\u{242C9}\u668E\u{26D24}\u666B\u4B93\u6630\u{27870}\u{21DEB}\u6663\u{232D2}\u{232E1}\u661E\u{25872}\u38D1\u{2383A}\u{237BC}\u3B99\u{237A2}\u{233FE}\u74D0\u3B96\u678F\u{2462A}\u68B6\u681E\u3BC4\u6ABE\u3863\u{237D5}\u{24487}\u6A33\u6A52\u6AC9\u6B05\u{21912}\u6511\u6898\u6A4C\u3BD7\u6A7A\u6B57\u{23FC0}\u{23C9A}\u93A0\u92F2\u{28BEA}\u{28ACB}"],
      ["9440", "\u9289\u{2801E}\u{289DC}\u9467\u6DA5\u6F0B\u{249EC}\u6D67\u{23F7F}\u3D8F\u6E04\u{2403C}\u5A3D\u6E0A\u5847\u6D24\u7842\u713B\u{2431A}\u{24276}\u70F1\u7250\u7287\u7294\u{2478F}\u{24725}\u5179\u{24AA4}\u{205EB}\u747A\u{23EF8}\u{2365F}\u{24A4A}\u{24917}\u{25FE1}\u3F06\u3EB1\u{24ADF}\u{28C23}\u{23F35}\u60A7\u3EF3\u74CC\u743C\u9387\u7437\u449F\u{26DEA}\u4551\u7583\u3F63\u{24CD9}\u{24D06}\u3F58\u7555\u7673\u{2A5C6}\u3B19\u7468\u{28ACC}\u{249AB}\u{2498E}\u3AFB"],
      ["94a1", "\u3DCD\u{24A4E}\u3EFF\u{249C5}\u{248F3}\u91FA\u5732\u9342\u{28AE3}\u{21864}\u50DF\u{25221}\u{251E7}\u7778\u{23232}\u770E\u770F\u777B\u{24697}\u{23781}\u3A5E\u{248F0}\u7438\u749B\u3EBF\u{24ABA}\u{24AC7}\u40C8\u{24A96}\u{261AE}\u9307\u{25581}\u781E\u788D\u7888\u78D2\u73D0\u7959\u{27741}\u{256E3}\u410E\u799B\u8496\u79A5\u6A2D\u{23EFA}\u7A3A\u79F4\u416E\u{216E6}\u4132\u9235\u79F1\u{20D4C}\u{2498C}\u{20299}\u{23DBA}\u{2176E}\u3597\u556B\u3570\u36AA\u{201D4}\u{20C0D}\u7AE2\u5A59\u{226F5}\u{25AAF}\u{25A9C}\u5A0D\u{2025B}\u78F0\u5A2A\u{25BC6}\u7AFE\u41F9\u7C5D\u7C6D\u4211\u{25BB3}\u{25EBC}\u{25EA6}\u7CCD\u{249F9}\u{217B0}\u7C8E\u7C7C\u7CAE\u6AB2\u7DDC\u7E07\u7DD3\u7F4E\u{26261}"],
      ["9540", "\u{2615C}\u{27B48}\u7D97\u{25E82}\u426A\u{26B75}\u{20916}\u67D6\u{2004E}\u{235CF}\u57C4\u{26412}\u{263F8}\u{24962}\u7FDD\u7B27\u{2082C}\u{25AE9}\u{25D43}\u7B0C\u{25E0E}\u99E6\u8645\u9A63\u6A1C\u{2343F}\u39E2\u{249F7}\u{265AD}\u9A1F\u{265A0}\u8480\u{27127}\u{26CD1}\u44EA\u8137\u4402\u80C6\u8109\u8142\u{267B4}\u98C3\u{26A42}\u8262\u8265\u{26A51}\u8453\u{26DA7}\u8610\u{2721B}\u5A86\u417F\u{21840}\u5B2B\u{218A1}\u5AE4\u{218D8}\u86A0\u{2F9BC}\u{23D8F}\u882D\u{27422}\u5A02"],
      ["95a1", "\u886E\u4F45\u8887\u88BF\u88E6\u8965\u894D\u{25683}\u8954\u{27785}\u{27784}\u{28BF5}\u{28BD9}\u{28B9C}\u{289F9}\u3EAD\u84A3\u46F5\u46CF\u37F2\u8A3D\u8A1C\u{29448}\u5F4D\u922B\u{24284}\u65D4\u7129\u70C4\u{21845}\u9D6D\u8C9F\u8CE9\u{27DDC}\u599A\u77C3\u59F0\u436E\u36D4\u8E2A\u8EA7\u{24C09}\u8F30\u8F4A\u42F4\u6C58\u6FBB\u{22321}\u489B\u6F79\u6E8B\u{217DA}\u9BE9\u36B5\u{2492F}\u90BB\u9097\u5571\u4906\u91BB\u9404\u{28A4B}\u4062\u{28AFC}\u9427\u{28C1D}\u{28C3B}\u84E5\u8A2B\u9599\u95A7\u9597\u9596\u{28D34}\u7445\u3EC2\u{248FF}\u{24A42}\u{243EA}\u3EE7\u{23225}\u968F\u{28EE7}\u{28E66}\u{28E65}\u3ECC\u{249ED}\u{24A78}\u{23FEE}\u7412\u746B\u3EFC\u9741\u{290B0}"],
      ["9640", "\u6847\u4A1D\u{29093}\u{257DF}\u975D\u9368\u{28989}\u{28C26}\u{28B2F}\u{263BE}\u92BA\u5B11\u8B69\u493C\u73F9\u{2421B}\u979B\u9771\u9938\u{20F26}\u5DC1\u{28BC5}\u{24AB2}\u981F\u{294DA}\u92F6\u{295D7}\u91E5\u44C0\u{28B50}\u{24A67}\u{28B64}\u98DC\u{28A45}\u3F00\u922A\u4925\u8414\u993B\u994D\u{27B06}\u3DFD\u999B\u4B6F\u99AA\u9A5C\u{28B65}\u{258C8}\u6A8F\u9A21\u5AFE\u9A2F\u{298F1}\u4B90\u{29948}\u99BC\u4BBD\u4B97\u937D\u5872\u{21302}\u5822\u{249B8}"],
      ["96a1", "\u{214E8}\u7844\u{2271F}\u{23DB8}\u68C5\u3D7D\u9458\u3927\u6150\u{22781}\u{2296B}\u6107\u9C4F\u9C53\u9C7B\u9C35\u9C10\u9B7F\u9BCF\u{29E2D}\u9B9F\u{2A1F5}\u{2A0FE}\u9D21\u4CAE\u{24104}\u9E18\u4CB0\u9D0C\u{2A1B4}\u{2A0ED}\u{2A0F3}\u{2992F}\u9DA5\u84BD\u{26E12}\u{26FDF}\u{26B82}\u85FC\u4533\u{26DA4}\u{26E84}\u{26DF0}\u8420\u85EE\u{26E00}\u{237D7}\u{26064}\u79E2\u{2359C}\u{23640}\u492D\u{249DE}\u3D62\u93DB\u92BE\u9348\u{202BF}\u78B9\u9277\u944D\u4FE4\u3440\u9064\u{2555D}\u783D\u7854\u78B6\u784B\u{21757}\u{231C9}\u{24941}\u369A\u4F72\u6FDA\u6FD9\u701E\u701E\u5414\u{241B5}\u57BB\u58F3\u578A\u9D16\u57D7\u7134\u34AF\u{241AC}\u71EB\u{26C40}\u{24F97}\u5B28\u{217B5}\u{28A49}"],
      ["9740", "\u610C\u5ACE\u5A0B\u42BC\u{24488}\u372C\u4B7B\u{289FC}\u93BB\u93B8\u{218D6}\u{20F1D}\u8472\u{26CC0}\u{21413}\u{242FA}\u{22C26}\u{243C1}\u5994\u{23DB7}\u{26741}\u7DA8\u{2615B}\u{260A4}\u{249B9}\u{2498B}\u{289FA}\u92E5\u73E2\u3EE9\u74B4\u{28B63}\u{2189F}\u3EE1\u{24AB3}\u6AD8\u73F3\u73FB\u3ED6\u{24A3E}\u{24A94}\u{217D9}\u{24A66}\u{203A7}\u{21424}\u{249E5}\u7448\u{24916}\u70A5\u{24976}\u9284\u73E6\u935F\u{204FE}\u9331\u{28ACE}\u{28A16}\u9386\u{28BE7}\u{255D5}\u4935\u{28A82}\u716B"],
      ["97a1", "\u{24943}\u{20CFF}\u56A4\u{2061A}\u{20BEB}\u{20CB8}\u5502\u79C4\u{217FA}\u7DFE\u{216C2}\u{24A50}\u{21852}\u452E\u9401\u370A\u{28AC0}\u{249AD}\u59B0\u{218BF}\u{21883}\u{27484}\u5AA1\u36E2\u{23D5B}\u36B0\u925F\u5A79\u{28A81}\u{21862}\u9374\u3CCD\u{20AB4}\u4A96\u398A\u50F4\u3D69\u3D4C\u{2139C}\u7175\u42FB\u{28218}\u6E0F\u{290E4}\u44EB\u6D57\u{27E4F}\u7067\u6CAF\u3CD6\u{23FED}\u{23E2D}\u6E02\u6F0C\u3D6F\u{203F5}\u7551\u36BC\u34C8\u4680\u3EDA\u4871\u59C4\u926E\u493E\u8F41\u{28C1C}\u{26BC0}\u5812\u57C8\u36D6\u{21452}\u70FE\u{24362}\u{24A71}\u{22FE3}\u{212B0}\u{223BD}\u68B9\u6967\u{21398}\u{234E5}\u{27BF4}\u{236DF}\u{28A83}\u{237D6}\u{233FA}\u{24C9F}\u6A1A\u{236AD}\u{26CB7}\u843E\u44DF\u44CE"],
      ["9840", "\u{26D26}\u{26D51}\u{26C82}\u{26FDE}\u6F17\u{27109}\u833D\u{2173A}\u83ED\u{26C80}\u{27053}\u{217DB}\u5989\u5A82\u{217B3}\u5A61\u5A71\u{21905}\u{241FC}\u372D\u59EF\u{2173C}\u36C7\u718E\u9390\u669A\u{242A5}\u5A6E\u5A2B\u{24293}\u6A2B\u{23EF9}\u{27736}\u{2445B}\u{242CA}\u711D\u{24259}\u{289E1}\u4FB0\u{26D28}\u5CC2\u{244CE}\u{27E4D}\u{243BD}\u6A0C\u{24256}\u{21304}\u70A6\u7133\u{243E9}\u3DA5\u6CDF\u{2F825}\u{24A4F}\u7E65\u59EB\u5D2F\u3DF3\u5F5C\u{24A5D}\u{217DF}\u7DA4\u8426"],
      ["98a1", "\u5485\u{23AFA}\u{23300}\u{20214}\u577E\u{208D5}\u{20619}\u3FE5\u{21F9E}\u{2A2B6}\u7003\u{2915B}\u5D70\u738F\u7CD3\u{28A59}\u{29420}\u4FC8\u7FE7\u72CD\u7310\u{27AF4}\u7338\u7339\u{256F6}\u7341\u7348\u3EA9\u{27B18}\u906C\u71F5\u{248F2}\u73E1\u81F6\u3ECA\u770C\u3ED1\u6CA2\u56FD\u7419\u741E\u741F\u3EE2\u3EF0\u3EF4\u3EFA\u74D3\u3F0E\u3F53\u7542\u756D\u7572\u758D\u3F7C\u75C8\u75DC\u3FC0\u764D\u3FD7\u7674\u3FDC\u767A\u{24F5C}\u7188\u5623\u8980\u5869\u401D\u7743\u4039\u6761\u4045\u35DB\u7798\u406A\u406F\u5C5E\u77BE\u77CB\u58F2\u7818\u70B9\u781C\u40A8\u7839\u7847\u7851\u7866\u8448\u{25535}\u7933\u6803\u7932\u4103"],
      ["9940", "\u4109\u7991\u7999\u8FBB\u7A06\u8FBC\u4167\u7A91\u41B2\u7ABC\u8279\u41C4\u7ACF\u7ADB\u41CF\u4E21\u7B62\u7B6C\u7B7B\u7C12\u7C1B\u4260\u427A\u7C7B\u7C9C\u428C\u7CB8\u4294\u7CED\u8F93\u70C0\u{20CCF}\u7DCF\u7DD4\u7DD0\u7DFD\u7FAE\u7FB4\u729F\u4397\u8020\u8025\u7B39\u802E\u8031\u8054\u3DCC\u57B4\u70A0\u80B7\u80E9\u43ED\u810C\u732A\u810E\u8112\u7560\u8114\u4401\u3B39\u8156\u8159\u815A"],
      ["99a1", "\u4413\u583A\u817C\u8184\u4425\u8193\u442D\u81A5\u57EF\u81C1\u81E4\u8254\u448F\u82A6\u8276\u82CA\u82D8\u82FF\u44B0\u8357\u9669\u698A\u8405\u70F5\u8464\u60E3\u8488\u4504\u84BE\u84E1\u84F8\u8510\u8538\u8552\u453B\u856F\u8570\u85E0\u4577\u8672\u8692\u86B2\u86EF\u9645\u878B\u4606\u4617\u88AE\u88FF\u8924\u8947\u8991\u{27967}\u8A29\u8A38\u8A94\u8AB4\u8C51\u8CD4\u8CF2\u8D1C\u4798\u585F\u8DC3\u47ED\u4EEE\u8E3A\u55D8\u5754\u8E71\u55F5\u8EB0\u4837\u8ECE\u8EE2\u8EE4\u8EED\u8EF2\u8FB7\u8FC1\u8FCA\u8FCC\u9033\u99C4\u48AD\u98E0\u9213\u491E\u9228\u9258\u926B\u92B1\u92AE\u92BF"],
      ["9a40", "\u92E3\u92EB\u92F3\u92F4\u92FD\u9343\u9384\u93AD\u4945\u4951\u9EBF\u9417\u5301\u941D\u942D\u943E\u496A\u9454\u9479\u952D\u95A2\u49A7\u95F4\u9633\u49E5\u67A0\u4A24\u9740\u4A35\u97B2\u97C2\u5654\u4AE4\u60E8\u98B9\u4B19\u98F1\u5844\u990E\u9919\u51B4\u991C\u9937\u9942\u995D\u9962\u4B70\u99C5\u4B9D\u9A3C\u9B0F\u7A83\u9B69\u9B81\u9BDD\u9BF1\u9BF4\u4C6D\u9C20\u376F\u{21BC2}\u9D49\u9C3A"],
      ["9aa1", "\u9EFE\u5650\u9D93\u9DBD\u9DC0\u9DFC\u94F6\u8FB6\u9E7B\u9EAC\u9EB1\u9EBD\u9EC6\u94DC\u9EE2\u9EF1\u9EF8\u7AC8\u9F44\u{20094}\u{202B7}\u{203A0}\u691A\u94C3\u59AC\u{204D7}\u5840\u94C1\u37B9\u{205D5}\u{20615}\u{20676}\u{216BA}\u5757\u7173\u{20AC2}\u{20ACD}\u{20BBF}\u546A\u{2F83B}\u{20BCB}\u549E\u{20BFB}\u{20C3B}\u{20C53}\u{20C65}\u{20C7C}\u60E7\u{20C8D}\u567A\u{20CB5}\u{20CDD}\u{20CED}\u{20D6F}\u{20DB2}\u{20DC8}\u6955\u9C2F\u87A5\u{20E04}\u{20E0E}\u{20ED7}\u{20F90}\u{20F2D}\u{20E73}\u5C20\u{20FBC}\u5E0B\u{2105C}\u{2104F}\u{21076}\u671E\u{2107B}\u{21088}\u{21096}\u3647\u{210BF}\u{210D3}\u{2112F}\u{2113B}\u5364\u84AD\u{212E3}\u{21375}\u{21336}\u8B81\u{21577}\u{21619}\u{217C3}\u{217C7}\u4E78\u70BB\u{2182D}\u{2196A}"],
      ["9b40", "\u{21A2D}\u{21A45}\u{21C2A}\u{21C70}\u{21CAC}\u{21EC8}\u62C3\u{21ED5}\u{21F15}\u7198\u6855\u{22045}\u69E9\u36C8\u{2227C}\u{223D7}\u{223FA}\u{2272A}\u{22871}\u{2294F}\u82FD\u{22967}\u{22993}\u{22AD5}\u89A5\u{22AE8}\u8FA0\u{22B0E}\u97B8\u{22B3F}\u9847\u9ABD\u{22C4C}"],
      ["9b62", "\u{22C88}\u{22CB7}\u{25BE8}\u{22D08}\u{22D12}\u{22DB7}\u{22D95}\u{22E42}\u{22F74}\u{22FCC}\u{23033}\u{23066}\u{2331F}\u{233DE}\u5FB1\u6648\u66BF\u{27A79}\u{23567}\u{235F3}\u7201\u{249BA}\u77D7\u{2361A}\u{23716}\u7E87\u{20346}\u58B5\u670E"],
      ["9ba1", "\u6918\u{23AA7}\u{27657}\u{25FE2}\u{23E11}\u{23EB9}\u{275FE}\u{2209A}\u48D0\u4AB8\u{24119}\u{28A9A}\u{242EE}\u{2430D}\u{2403B}\u{24334}\u{24396}\u{24A45}\u{205CA}\u51D2\u{20611}\u599F\u{21EA8}\u3BBE\u{23CFF}\u{24404}\u{244D6}\u5788\u{24674}\u399B\u{2472F}\u{285E8}\u{299C9}\u3762\u{221C3}\u8B5E\u{28B4E}\u99D6\u{24812}\u{248FB}\u{24A15}\u7209\u{24AC0}\u{20C78}\u5965\u{24EA5}\u{24F86}\u{20779}\u8EDA\u{2502C}\u528F\u573F\u7171\u{25299}\u{25419}\u{23F4A}\u{24AA7}\u55BC\u{25446}\u{2546E}\u{26B52}\u91D4\u3473\u{2553F}\u{27632}\u{2555E}\u4718\u{25562}\u{25566}\u{257C7}\u{2493F}\u{2585D}\u5066\u34FB\u{233CC}\u60DE\u{25903}\u477C\u{28948}\u{25AAE}\u{25B89}\u{25C06}\u{21D90}\u57A1\u7151\u6FB6\u{26102}\u{27C12}\u9056\u{261B2}\u{24F9A}\u8B62\u{26402}\u{2644A}"],
      ["9c40", "\u5D5B\u{26BF7}\u8F36\u{26484}\u{2191C}\u8AEA\u{249F6}\u{26488}\u{23FEF}\u{26512}\u4BC0\u{265BF}\u{266B5}\u{2271B}\u9465\u{257E1}\u6195\u5A27\u{2F8CD}\u4FBB\u56B9\u{24521}\u{266FC}\u4E6A\u{24934}\u9656\u6D8F\u{26CBD}\u3618\u8977\u{26799}\u{2686E}\u{26411}\u{2685E}\u71DF\u{268C7}\u7B42\u{290C0}\u{20A11}\u{26926}\u9104\u{26939}\u7A45\u9DF0\u{269FA}\u9A26\u{26A2D}\u365F\u{26469}\u{20021}\u7983\u{26A34}\u{26B5B}\u5D2C\u{23519}\u83CF\u{26B9D}\u46D0\u{26CA4}\u753B\u8865\u{26DAE}\u58B6"],
      ["9ca1", "\u371C\u{2258D}\u{2704B}\u{271CD}\u3C54\u{27280}\u{27285}\u9281\u{2217A}\u{2728B}\u9330\u{272E6}\u{249D0}\u6C39\u949F\u{27450}\u{20EF8}\u8827\u88F5\u{22926}\u{28473}\u{217B1}\u6EB8\u{24A2A}\u{21820}\u39A4\u36B9\u5C10\u79E3\u453F\u66B6\u{29CAD}\u{298A4}\u8943\u{277CC}\u{27858}\u56D6\u40DF\u{2160A}\u39A1\u{2372F}\u{280E8}\u{213C5}\u71AD\u8366\u{279DD}\u{291A8}\u5A67\u4CB7\u{270AF}\u{289AB}\u{279FD}\u{27A0A}\u{27B0B}\u{27D66}\u{2417A}\u7B43\u797E\u{28009}\u6FB5\u{2A2DF}\u6A03\u{28318}\u53A2\u{26E07}\u93BF\u6836\u975D\u{2816F}\u{28023}\u{269B5}\u{213ED}\u{2322F}\u{28048}\u5D85\u{28C30}\u{28083}\u5715\u9823\u{28949}\u5DAB\u{24988}\u65BE\u69D5\u53D2\u{24AA5}\u{23F81}\u3C11\u6736\u{28090}\u{280F4}\u{2812E}\u{21FA1}\u{2814F}"],
      ["9d40", "\u{28189}\u{281AF}\u{2821A}\u{28306}\u{2832F}\u{2838A}\u35CA\u{28468}\u{286AA}\u48FA\u63E6\u{28956}\u7808\u9255\u{289B8}\u43F2\u{289E7}\u43DF\u{289E8}\u{28B46}\u{28BD4}\u59F8\u{28C09}\u8F0B\u{28FC5}\u{290EC}\u7B51\u{29110}\u{2913C}\u3DF7\u{2915E}\u{24ACA}\u8FD0\u728F\u568B\u{294E7}\u{295E9}\u{295B0}\u{295B8}\u{29732}\u{298D1}\u{29949}\u{2996A}\u{299C3}\u{29A28}\u{29B0E}\u{29D5A}\u{29D9B}\u7E9F\u{29EF8}\u{29F23}\u4CA4\u9547\u{2A293}\u71A2\u{2A2FF}\u4D91\u9012\u{2A5CB}\u4D9C\u{20C9C}\u8FBE\u55C1"],
      ["9da1", "\u8FBA\u{224B0}\u8FB9\u{24A93}\u4509\u7E7F\u6F56\u6AB1\u4EEA\u34E4\u{28B2C}\u{2789D}\u373A\u8E80\u{217F5}\u{28024}\u{28B6C}\u{28B99}\u{27A3E}\u{266AF}\u3DEB\u{27655}\u{23CB7}\u{25635}\u{25956}\u4E9A\u{25E81}\u{26258}\u56BF\u{20E6D}\u8E0E\u5B6D\u{23E88}\u{24C9E}\u63DE\u62D0\u{217F6}\u{2187B}\u6530\u562D\u{25C4A}\u541A\u{25311}\u3DC6\u{29D98}\u4C7D\u5622\u561E\u7F49\u{25ED8}\u5975\u{23D40}\u8770\u4E1C\u{20FEA}\u{20D49}\u{236BA}\u8117\u9D5E\u8D18\u763B\u9C45\u764E\u77B9\u9345\u5432\u8148\u82F7\u5625\u8132\u8418\u80BD\u55EA\u7962\u5643\u5416\u{20E9D}\u35CE\u5605\u55F1\u66F1\u{282E2}\u362D\u7534\u55F0\u55BA\u5497\u5572\u{20C41}\u{20C96}\u5ED0\u{25148}\u{20E76}\u{22C62}"],
      ["9e40", "\u{20EA2}\u9EAB\u7D5A\u55DE\u{21075}\u629D\u976D\u5494\u8CCD\u71F6\u9176\u63FC\u63B9\u63FE\u5569\u{22B43}\u9C72\u{22EB3}\u519A\u34DF\u{20DA7}\u51A7\u544D\u551E\u5513\u7666\u8E2D\u{2688A}\u75B1\u80B6\u8804\u8786\u88C7\u81B6\u841C\u{210C1}\u44EC\u7304\u{24706}\u5B90\u830B\u{26893}\u567B\u{226F4}\u{27D2F}\u{241A3}\u{27D73}\u{26ED0}\u{272B6}\u9170\u{211D9}\u9208\u{23CFC}\u{2A6A9}\u{20EAC}\u{20EF9}\u7266\u{21CA2}\u474E\u{24FC2}\u{27FF9}\u{20FEB}\u40FA"],
      ["9ea1", "\u9C5D\u651F\u{22DA0}\u48F3\u{247E0}\u{29D7C}\u{20FEC}\u{20E0A}\u6062\u{275A3}\u{20FED}"],
      ["9ead", "\u{26048}\u{21187}\u71A3\u7E8E\u9D50\u4E1A\u4E04\u3577\u5B0D\u6CB2\u5367\u36AC\u39DC\u537D\u36A5\u{24618}\u589A\u{24B6E}\u822D\u544B\u57AA\u{25A95}\u{20979}"],
      ["9ec5", "\u3A52\u{22465}\u7374\u{29EAC}\u4D09\u9BED\u{23CFE}\u{29F30}\u4C5B\u{24FA9}\u{2959E}\u{29FDE}\u845C\u{23DB6}\u{272B2}\u{267B3}\u{23720}\u632E\u7D25\u{23EF7}\u{23E2C}\u3A2A\u9008\u52CC\u3E74\u367A\u45E9\u{2048E}\u7640\u5AF0\u{20EB6}\u787A\u{27F2E}\u58A7\u40BF\u567C\u9B8B\u5D74\u7654\u{2A434}\u9E85\u4CE1\u75F9\u37FB\u6119\u{230DA}\u{243F2}"],
      ["9ef5", "\u565D\u{212A9}\u57A7\u{24963}\u{29E06}\u5234\u{270AE}\u35AD\u6C4A\u9D7C"],
      ["9f40", "\u7C56\u9B39\u57DE\u{2176C}\u5C53\u64D3\u{294D0}\u{26335}\u{27164}\u86AD\u{20D28}\u{26D22}\u{24AE2}\u{20D71}"],
      ["9f4f", "\u51FE\u{21F0F}\u5D8E\u9703\u{21DD1}\u9E81\u904C\u7B1F\u9B02\u5CD1\u7BA3\u6268\u6335\u9AFF\u7BCF\u9B2A\u7C7E\u9B2E\u7C42\u7C86\u9C15\u7BFC\u9B09\u9F17\u9C1B\u{2493E}\u9F5A\u5573\u5BC3\u4FFD\u9E98\u4FF2\u5260\u3E06\u52D1\u5767\u5056\u59B7\u5E12\u97C8\u9DAB\u8F5C\u5469\u97B4\u9940\u97BA\u532C\u6130"],
      ["9fa1", "\u692C\u53DA\u9C0A\u9D02\u4C3B\u9641\u6980\u50A6\u7546\u{2176D}\u99DA\u5273"],
      ["9fae", "\u9159\u9681\u915C"],
      ["9fb2", "\u9151\u{28E97}\u637F\u{26D23}\u6ACA\u5611\u918E\u757A\u6285\u{203FC}\u734F\u7C70\u{25C21}\u{23CFD}"],
      ["9fc1", "\u{24919}\u76D6\u9B9D\u4E2A\u{20CD4}\u83BE\u8842"],
      ["9fc9", "\u5C4A\u69C0\u50ED\u577A\u521F\u5DF5\u4ECE\u6C31\u{201F2}\u4F39\u549C\u54DA\u529A\u8D82\u35FE\u5F0C\u35F3"],
      ["9fdb", "\u6B52\u917C\u9FA5\u9B97\u982E\u98B4\u9ABA\u9EA8\u9E84\u717A\u7B14"],
      ["9fe7", "\u6BFA\u8818\u7F78"],
      ["9feb", "\u5620\u{2A64A}\u8E77\u9F53"],
      ["9ff0", "\u8DD4\u8E4F\u9E1C\u8E01\u6282\u{2837D}\u8E28\u8E75\u7AD3\u{24A77}\u7A3E\u78D8\u6CEA\u8A67\u7607"],
      ["a040", "\u{28A5A}\u9F26\u6CCE\u87D6\u75C3\u{2A2B2}\u7853\u{2F840}\u8D0C\u72E2\u7371\u8B2D\u7302\u74F1\u8CEB\u{24ABB}\u862F\u5FBA\u88A0\u44B7"],
      ["a055", "\u{2183B}\u{26E05}"],
      ["a058", "\u8A7E\u{2251B}"],
      ["a05b", "\u60FD\u7667\u9AD7\u9D44\u936E\u9B8F\u87F5"],
      ["a063", "\u880F\u8CF7\u732C\u9721\u9BB0\u35D6\u72B2\u4C07\u7C51\u994A\u{26159}\u6159\u4C04\u9E96\u617D"],
      ["a073", "\u575F\u616F\u62A6\u6239\u62CE\u3A5C\u61E2\u53AA\u{233F5}\u6364\u6802\u35D2"],
      ["a0a1", "\u5D57\u{28BC2}\u8FDA\u{28E39}"],
      ["a0a6", "\u50D9\u{21D46}\u7906\u5332\u9638\u{20F3B}\u4065"],
      ["a0ae", "\u77FE"],
      ["a0b0", "\u7CC2\u{25F1A}\u7CDA\u7A2D\u8066\u8063\u7D4D\u7505\u74F2\u8994\u821A\u670C\u8062\u{27486}\u805B\u74F0\u8103\u7724\u8989\u{267CC}\u7553\u{26ED1}\u87A9\u87CE\u81C8\u878C\u8A49\u8CAD\u8B43\u772B\u74F8\u84DA\u3635\u69B2\u8DA6"],
      ["a0d4", "\u89A9\u7468\u6DB9\u87C1\u{24011}\u74E7\u3DDB\u7176\u60A4\u619C\u3CD1\u7162\u6077"],
      ["a0e2", "\u7F71\u{28B2D}\u7250\u60E9\u4B7E\u5220\u3C18\u{23CC7}\u{25ED7}\u{27656}\u{25531}\u{21944}\u{212FE}\u{29903}\u{26DDC}\u{270AD}\u5CC1\u{261AD}\u{28A0F}\u{23677}\u{200EE}\u{26846}\u{24F0E}\u4562\u5B1F\u{2634C}\u9F50\u9EA6\u{2626B}"],
      ["a3c0", "\u2400", 31, "\u2421"],
      ["c6a1", "\u2460", 9, "\u2474", 9, "\u2170", 9, "\u4E36\u4E3F\u4E85\u4EA0\u5182\u5196\u51AB\u52F9\u5338\u5369\u53B6\u590A\u5B80\u5DDB\u2F33\u5E7F\u5EF4\u5F50\u5F61\u6534\u65E0\u7592\u7676\u8FB5\u96B6\xA8\u02C6\u30FD\u30FE\u309D\u309E\u3003\u4EDD\u3005\u3006\u3007\u30FC\uFF3B\uFF3D\u273D\u3041", 23],
      ["c740", "\u3059", 58, "\u30A1\u30A2\u30A3\u30A4"],
      ["c7a1", "\u30A5", 81, "\u0410", 5, "\u0401\u0416", 4],
      ["c840", "\u041B", 26, "\u0451\u0436", 25, "\u21E7\u21B8\u21B9\u31CF\u{200CC}\u4E5A\u{2008A}\u5202\u4491"],
      ["c8a1", "\u9FB0\u5188\u9FB1\u{27607}"],
      ["c8cd", "\uFFE2\uFFE4\uFF07\uFF02\u3231\u2116\u2121\u309B\u309C\u2E80\u2E84\u2E86\u2E87\u2E88\u2E8A\u2E8C\u2E8D\u2E95\u2E9C\u2E9D\u2EA5\u2EA7\u2EAA\u2EAC\u2EAE\u2EB6\u2EBC\u2EBE\u2EC6\u2ECA\u2ECC\u2ECD\u2ECF\u2ED6\u2ED7\u2EDE\u2EE3"],
      ["c8f5", "\u0283\u0250\u025B\u0254\u0275\u0153\xF8\u014B\u028A\u026A"],
      ["f9fe", "\uFFED"],
      ["fa40", "\u{20547}\u92DB\u{205DF}\u{23FC5}\u854C\u42B5\u73EF\u51B5\u3649\u{24942}\u{289E4}\u9344\u{219DB}\u82EE\u{23CC8}\u783C\u6744\u62DF\u{24933}\u{289AA}\u{202A0}\u{26BB3}\u{21305}\u4FAB\u{224ED}\u5008\u{26D29}\u{27A84}\u{23600}\u{24AB1}\u{22513}\u5029\u{2037E}\u5FA4\u{20380}\u{20347}\u6EDB\u{2041F}\u507D\u5101\u347A\u510E\u986C\u3743\u8416\u{249A4}\u{20487}\u5160\u{233B4}\u516A\u{20BFF}\u{220FC}\u{202E5}\u{22530}\u{2058E}\u{23233}\u{21983}\u5B82\u877D\u{205B3}\u{23C99}\u51B2\u51B8"],
      ["faa1", "\u9D34\u51C9\u51CF\u51D1\u3CDC\u51D3\u{24AA6}\u51B3\u51E2\u5342\u51ED\u83CD\u693E\u{2372D}\u5F7B\u520B\u5226\u523C\u52B5\u5257\u5294\u52B9\u52C5\u7C15\u8542\u52E0\u860D\u{26B13}\u5305\u{28ADE}\u5549\u6ED9\u{23F80}\u{20954}\u{23FEC}\u5333\u5344\u{20BE2}\u6CCB\u{21726}\u681B\u73D5\u604A\u3EAA\u38CC\u{216E8}\u71DD\u44A2\u536D\u5374\u{286AB}\u537E\u537F\u{21596}\u{21613}\u77E6\u5393\u{28A9B}\u53A0\u53AB\u53AE\u73A7\u{25772}\u3F59\u739C\u53C1\u53C5\u6C49\u4E49\u57FE\u53D9\u3AAB\u{20B8F}\u53E0\u{23FEB}\u{22DA3}\u53F6\u{20C77}\u5413\u7079\u552B\u6657\u6D5B\u546D\u{26B53}\u{20D74}\u555D\u548F\u54A4\u47A6\u{2170D}\u{20EDD}\u3DB4\u{20D4D}"],
      ["fb40", "\u{289BC}\u{22698}\u5547\u4CED\u542F\u7417\u5586\u55A9\u5605\u{218D7}\u{2403A}\u4552\u{24435}\u66B3\u{210B4}\u5637\u66CD\u{2328A}\u66A4\u66AD\u564D\u564F\u78F1\u56F1\u9787\u53FE\u5700\u56EF\u56ED\u{28B66}\u3623\u{2124F}\u5746\u{241A5}\u6C6E\u708B\u5742\u36B1\u{26C7E}\u57E6\u{21416}\u5803\u{21454}\u{24363}\u5826\u{24BF5}\u585C\u58AA\u3561\u58E0\u58DC\u{2123C}\u58FB\u5BFF\u5743\u{2A150}\u{24278}\u93D3\u35A1\u591F\u68A6\u36C3\u6E59"],
      ["fba1", "\u{2163E}\u5A24\u5553\u{21692}\u8505\u59C9\u{20D4E}\u{26C81}\u{26D2A}\u{217DC}\u59D9\u{217FB}\u{217B2}\u{26DA6}\u6D71\u{21828}\u{216D5}\u59F9\u{26E45}\u5AAB\u5A63\u36E6\u{249A9}\u5A77\u3708\u5A96\u7465\u5AD3\u{26FA1}\u{22554}\u3D85\u{21911}\u3732\u{216B8}\u5E83\u52D0\u5B76\u6588\u5B7C\u{27A0E}\u4004\u485D\u{20204}\u5BD5\u6160\u{21A34}\u{259CC}\u{205A5}\u5BF3\u5B9D\u4D10\u5C05\u{21B44}\u5C13\u73CE\u5C14\u{21CA5}\u{26B28}\u5C49\u48DD\u5C85\u5CE9\u5CEF\u5D8B\u{21DF9}\u{21E37}\u5D10\u5D18\u5D46\u{21EA4}\u5CBA\u5DD7\u82FC\u382D\u{24901}\u{22049}\u{22173}\u8287\u3836\u3BC2\u5E2E\u6A8A\u5E75\u5E7A\u{244BC}\u{20CD3}\u53A6\u4EB7\u5ED0\u53A8\u{21771}\u5E09\u5EF4\u{28482}"],
      ["fc40", "\u5EF9\u5EFB\u38A0\u5EFC\u683E\u941B\u5F0D\u{201C1}\u{2F894}\u3ADE\u48AE\u{2133A}\u5F3A\u{26888}\u{223D0}\u5F58\u{22471}\u5F63\u97BD\u{26E6E}\u5F72\u9340\u{28A36}\u5FA7\u5DB6\u3D5F\u{25250}\u{21F6A}\u{270F8}\u{22668}\u91D6\u{2029E}\u{28A29}\u6031\u6685\u{21877}\u3963\u3DC7\u3639\u5790\u{227B4}\u7971\u3E40\u609E\u60A4\u60B3\u{24982}\u{2498F}\u{27A53}\u74A4\u50E1\u5AA0\u6164\u8424\u6142\u{2F8A6}\u{26ED2}\u6181\u51F4\u{20656}\u6187\u5BAA\u{23FB7}"],
      ["fca1", "\u{2285F}\u61D3\u{28B9D}\u{2995D}\u61D0\u3932\u{22980}\u{228C1}\u6023\u615C\u651E\u638B\u{20118}\u62C5\u{21770}\u62D5\u{22E0D}\u636C\u{249DF}\u3A17\u6438\u63F8\u{2138E}\u{217FC}\u6490\u6F8A\u{22E36}\u9814\u{2408C}\u{2571D}\u64E1\u64E5\u947B\u3A66\u643A\u3A57\u654D\u6F16\u{24A28}\u{24A23}\u6585\u656D\u655F\u{2307E}\u65B5\u{24940}\u4B37\u65D1\u40D8\u{21829}\u65E0\u65E3\u5FDF\u{23400}\u6618\u{231F7}\u{231F8}\u6644\u{231A4}\u{231A5}\u664B\u{20E75}\u6667\u{251E6}\u6673\u6674\u{21E3D}\u{23231}\u{285F4}\u{231C8}\u{25313}\u77C5\u{228F7}\u99A4\u6702\u{2439C}\u{24A21}\u3B2B\u69FA\u{237C2}\u675E\u6767\u6762\u{241CD}\u{290ED}\u67D7\u44E9\u6822\u6E50\u923C\u6801\u{233E6}\u{26DA0}\u685D"],
      ["fd40", "\u{2346F}\u69E1\u6A0B\u{28ADF}\u6973\u68C3\u{235CD}\u6901\u6900\u3D32\u3A01\u{2363C}\u3B80\u67AC\u6961\u{28A4A}\u42FC\u6936\u6998\u3BA1\u{203C9}\u8363\u5090\u69F9\u{23659}\u{2212A}\u6A45\u{23703}\u6A9D\u3BF3\u67B1\u6AC8\u{2919C}\u3C0D\u6B1D\u{20923}\u60DE\u6B35\u6B74\u{227CD}\u6EB5\u{23ADB}\u{203B5}\u{21958}\u3740\u5421\u{23B5A}\u6BE1\u{23EFC}\u6BDC\u6C37\u{2248B}\u{248F1}\u{26B51}\u6C5A\u8226\u6C79\u{23DBC}\u44C5\u{23DBD}\u{241A4}\u{2490C}\u{24900}"],
      ["fda1", "\u{23CC9}\u36E5\u3CEB\u{20D32}\u9B83\u{231F9}\u{22491}\u7F8F\u6837\u{26D25}\u{26DA1}\u{26DEB}\u6D96\u6D5C\u6E7C\u6F04\u{2497F}\u{24085}\u{26E72}\u8533\u{26F74}\u51C7\u6C9C\u6E1D\u842E\u{28B21}\u6E2F\u{23E2F}\u7453\u{23F82}\u79CC\u6E4F\u5A91\u{2304B}\u6FF8\u370D\u6F9D\u{23E30}\u6EFA\u{21497}\u{2403D}\u4555\u93F0\u6F44\u6F5C\u3D4E\u6F74\u{29170}\u3D3B\u6F9F\u{24144}\u6FD3\u{24091}\u{24155}\u{24039}\u{23FF0}\u{23FB4}\u{2413F}\u51DF\u{24156}\u{24157}\u{24140}\u{261DD}\u704B\u707E\u70A7\u7081\u70CC\u70D5\u70D6\u70DF\u4104\u3DE8\u71B4\u7196\u{24277}\u712B\u7145\u5A88\u714A\u716E\u5C9C\u{24365}\u714F\u9362\u{242C1}\u712C\u{2445A}\u{24A27}\u{24A22}\u71BA\u{28BE8}\u70BD\u720E"],
      ["fe40", "\u9442\u7215\u5911\u9443\u7224\u9341\u{25605}\u722E\u7240\u{24974}\u68BD\u7255\u7257\u3E55\u{23044}\u680D\u6F3D\u7282\u732A\u732B\u{24823}\u{2882B}\u48ED\u{28804}\u7328\u732E\u73CF\u73AA\u{20C3A}\u{26A2E}\u73C9\u7449\u{241E2}\u{216E7}\u{24A24}\u6623\u36C5\u{249B7}\u{2498D}\u{249FB}\u73F7\u7415\u6903\u{24A26}\u7439\u{205C3}\u3ED7\u745C\u{228AD}\u7460\u{28EB2}\u7447\u73E4\u7476\u83B9\u746C\u3730\u7474\u93F1\u6A2C\u7482\u4953\u{24A8C}"],
      ["fea1", "\u{2415F}\u{24A79}\u{28B8F}\u5B46\u{28C03}\u{2189E}\u74C8\u{21988}\u750E\u74E9\u751E\u{28ED9}\u{21A4B}\u5BD7\u{28EAC}\u9385\u754D\u754A\u7567\u756E\u{24F82}\u3F04\u{24D13}\u758E\u745D\u759E\u75B4\u7602\u762C\u7651\u764F\u766F\u7676\u{263F5}\u7690\u81EF\u37F8\u{26911}\u{2690E}\u76A1\u76A5\u76B7\u76CC\u{26F9F}\u8462\u{2509D}\u{2517D}\u{21E1C}\u771E\u7726\u7740\u64AF\u{25220}\u7758\u{232AC}\u77AF\u{28964}\u{28968}\u{216C1}\u77F4\u7809\u{21376}\u{24A12}\u68CA\u78AF\u78C7\u78D3\u96A5\u792E\u{255E0}\u78D7\u7934\u78B1\u{2760C}\u8FB8\u8884\u{28B2B}\u{26083}\u{2261C}\u7986\u8900\u6902\u7980\u{25857}\u799D\u{27B39}\u793C\u79A9\u6E2A\u{27126}\u3EA8\u79C6\u{2910D}\u79D4"]
    ];
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/dbcs-data.js
var require_dbcs_data = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/dbcs-data.js"(exports2, module2) {
    "use strict";
    module2.exports = {
      // == Japanese/ShiftJIS ====================================================
      // All japanese encodings are based on JIS X set of standards:
      // JIS X 0201 - Single-byte encoding of ASCII + ¥ + Kana chars at 0xA1-0xDF.
      // JIS X 0208 - Main set of 6879 characters, placed in 94x94 plane, to be encoded by 2 bytes.
      //              Has several variations in 1978, 1983, 1990 and 1997.
      // JIS X 0212 - Supplementary plane of 6067 chars in 94x94 plane. 1990. Effectively dead.
      // JIS X 0213 - Extension and modern replacement of 0208 and 0212. Total chars: 11233.
      //              2 planes, first is superset of 0208, second - revised 0212.
      //              Introduced in 2000, revised 2004. Some characters are in Unicode Plane 2 (0x2xxxx)
      // Byte encodings are:
      //  * Shift_JIS: Compatible with 0201, uses not defined chars in top half as lead bytes for double-byte
      //               encoding of 0208. Lead byte ranges: 0x81-0x9F, 0xE0-0xEF; Trail byte ranges: 0x40-0x7E, 0x80-0x9E, 0x9F-0xFC.
      //               Windows CP932 is a superset of Shift_JIS. Some companies added more chars, notably KDDI.
      //  * EUC-JP:    Up to 3 bytes per character. Used mostly on *nixes.
      //               0x00-0x7F       - lower part of 0201
      //               0x8E, 0xA1-0xDF - upper part of 0201
      //               (0xA1-0xFE)x2   - 0208 plane (94x94).
      //               0x8F, (0xA1-0xFE)x2 - 0212 plane (94x94).
      //  * JIS X 208: 7-bit, direct encoding of 0208. Byte ranges: 0x21-0x7E (94 values). Uncommon.
      //               Used as-is in ISO2022 family.
      //  * ISO2022-JP: Stateful encoding, with escape sequences to switch between ASCII,
      //                0201-1976 Roman, 0208-1978, 0208-1983.
      //  * ISO2022-JP-1: Adds esc seq for 0212-1990.
      //  * ISO2022-JP-2: Adds esc seq for GB2313-1980, KSX1001-1992, ISO8859-1, ISO8859-7.
      //  * ISO2022-JP-3: Adds esc seq for 0201-1976 Kana set, 0213-2000 Planes 1, 2.
      //  * ISO2022-JP-2004: Adds 0213-2004 Plane 1.
      //
      // After JIS X 0213 appeared, Shift_JIS-2004, EUC-JISX0213 and ISO2022-JP-2004 followed, with just changing the planes.
      //
      // Overall, it seems that it's a mess :( http://www8.plala.or.jp/tkubota1/unicode-symbols-map2.html
      shiftjis: {
        type: "_dbcs",
        table: function() {
          return require_shiftjis();
        },
        encodeAdd: { "\xA5": 92, "\u203E": 126 },
        encodeSkipVals: [{ from: 60736, to: 63808 }]
      },
      csshiftjis: "shiftjis",
      mskanji: "shiftjis",
      sjis: "shiftjis",
      windows31j: "shiftjis",
      ms31j: "shiftjis",
      xsjis: "shiftjis",
      windows932: "shiftjis",
      ms932: "shiftjis",
      932: "shiftjis",
      cp932: "shiftjis",
      eucjp: {
        type: "_dbcs",
        table: function() {
          return require_eucjp();
        },
        encodeAdd: { "\xA5": 92, "\u203E": 126 }
      },
      // TODO: KDDI extension to Shift_JIS
      // TODO: IBM CCSID 942 = CP932, but F0-F9 custom chars and other char changes.
      // TODO: IBM CCSID 943 = Shift_JIS = CP932 with original Shift_JIS lower 128 chars.
      // == Chinese/GBK ==========================================================
      // http://en.wikipedia.org/wiki/GBK
      // We mostly implement W3C recommendation: https://www.w3.org/TR/encoding/#gbk-encoder
      // Oldest GB2312 (1981, ~7600 chars) is a subset of CP936
      gb2312: "cp936",
      gb231280: "cp936",
      gb23121980: "cp936",
      csgb2312: "cp936",
      csiso58gb231280: "cp936",
      euccn: "cp936",
      // Microsoft's CP936 is a subset and approximation of GBK.
      windows936: "cp936",
      ms936: "cp936",
      936: "cp936",
      cp936: {
        type: "_dbcs",
        table: function() {
          return require_cp936();
        }
      },
      // GBK (~22000 chars) is an extension of CP936 that added user-mapped chars and some other.
      gbk: {
        type: "_dbcs",
        table: function() {
          return require_cp936().concat(require_gbk_added());
        }
      },
      xgbk: "gbk",
      isoir58: "gbk",
      // GB18030 is an algorithmic extension of GBK.
      // Main source: https://www.w3.org/TR/encoding/#gbk-encoder
      // http://icu-project.org/docs/papers/gb18030.html
      // http://source.icu-project.org/repos/icu/data/trunk/charset/data/xml/gb-18030-2000.xml
      // http://www.khngai.com/chinese/charmap/tblgbk.php?page=0
      gb18030: {
        type: "_dbcs",
        table: function() {
          return require_cp936().concat(require_gbk_added());
        },
        gb18030: function() {
          return require_gb18030_ranges();
        },
        encodeSkipVals: [128],
        encodeAdd: { "\u20AC": 41699 }
      },
      chinese: "gb18030",
      // == Korean ===============================================================
      // EUC-KR, KS_C_5601 and KS X 1001 are exactly the same.
      windows949: "cp949",
      ms949: "cp949",
      949: "cp949",
      cp949: {
        type: "_dbcs",
        table: function() {
          return require_cp949();
        }
      },
      cseuckr: "cp949",
      csksc56011987: "cp949",
      euckr: "cp949",
      isoir149: "cp949",
      korean: "cp949",
      ksc56011987: "cp949",
      ksc56011989: "cp949",
      ksc5601: "cp949",
      // == Big5/Taiwan/Hong Kong ================================================
      // There are lots of tables for Big5 and cp950. Please see the following links for history:
      // http://moztw.org/docs/big5/  http://www.haible.de/bruno/charsets/conversion-tables/Big5.html
      // Variations, in roughly number of defined chars:
      //  * Windows CP 950: Microsoft variant of Big5. Canonical: http://www.unicode.org/Public/MAPPINGS/VENDORS/MICSFT/WINDOWS/CP950.TXT
      //  * Windows CP 951: Microsoft variant of Big5-HKSCS-2001. Seems to be never public. http://me.abelcheung.org/articles/research/what-is-cp951/
      //  * Big5-2003 (Taiwan standard) almost superset of cp950.
      //  * Unicode-at-on (UAO) / Mozilla 1.8. Falling out of use on the Web. Not supported by other browsers.
      //  * Big5-HKSCS (-2001, -2004, -2008). Hong Kong standard.
      //    many unicode code points moved from PUA to Supplementary plane (U+2XXXX) over the years.
      //    Plus, it has 4 combining sequences.
      //    Seems that Mozilla refused to support it for 10 yrs. https://bugzilla.mozilla.org/show_bug.cgi?id=162431 https://bugzilla.mozilla.org/show_bug.cgi?id=310299
      //    because big5-hkscs is the only encoding to include astral characters in non-algorithmic way.
      //    Implementations are not consistent within browsers; sometimes labeled as just big5.
      //    MS Internet Explorer switches from big5 to big5-hkscs when a patch applied.
      //    Great discussion & recap of what's going on https://bugzilla.mozilla.org/show_bug.cgi?id=912470#c31
      //    In the encoder, it might make sense to support encoding old PUA mappings to Big5 bytes seq-s.
      //    Official spec: http://www.ogcio.gov.hk/en/business/tech_promotion/ccli/terms/doc/2003cmp_2008.txt
      //                   http://www.ogcio.gov.hk/tc/business/tech_promotion/ccli/terms/doc/hkscs-2008-big5-iso.txt
      //
      // Current understanding of how to deal with Big5(-HKSCS) is in the Encoding Standard, http://encoding.spec.whatwg.org/#big5-encoder
      // Unicode mapping (http://www.unicode.org/Public/MAPPINGS/OBSOLETE/EASTASIA/OTHER/BIG5.TXT) is said to be wrong.
      windows950: "cp950",
      ms950: "cp950",
      950: "cp950",
      cp950: {
        type: "_dbcs",
        table: function() {
          return require_cp950();
        }
      },
      // Big5 has many variations and is an extension of cp950. We use Encoding Standard's as a consensus.
      big5: "big5hkscs",
      big5hkscs: {
        type: "_dbcs",
        table: function() {
          return require_cp950().concat(require_big5_added());
        },
        encodeSkipVals: [
          // Although Encoding Standard says we should avoid encoding to HKSCS area (See Step 1 of
          // https://encoding.spec.whatwg.org/#index-big5-pointer), we still do it to increase compatibility with ICU.
          // But if a single unicode point can be encoded both as HKSCS and regular Big5, we prefer the latter.
          36457,
          36463,
          36478,
          36523,
          36532,
          36557,
          36560,
          36695,
          36713,
          36718,
          36811,
          36862,
          36973,
          36986,
          37060,
          37084,
          37105,
          37311,
          37551,
          37552,
          37553,
          37554,
          37585,
          37959,
          38090,
          38361,
          38652,
          39285,
          39798,
          39800,
          39803,
          39878,
          39902,
          39916,
          39926,
          40002,
          40019,
          40034,
          40040,
          40043,
          40055,
          40124,
          40125,
          40144,
          40279,
          40282,
          40388,
          40431,
          40443,
          40617,
          40687,
          40701,
          40800,
          40907,
          41079,
          41180,
          41183,
          36812,
          37576,
          38468,
          38637,
          // Step 2 of https://encoding.spec.whatwg.org/#index-big5-pointer: Use last pointer for U+2550, U+255E, U+2561, U+256A, U+5341, or U+5345
          41636,
          41637,
          41639,
          41638,
          41676,
          41678
        ]
      },
      cnbig5: "big5hkscs",
      csbig5: "big5hkscs",
      xxbig5: "big5hkscs"
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/index.js
var require_encodings = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/encodings/index.js"(exports2, module2) {
    "use strict";
    var mergeModules = require_merge_exports();
    var modules = [
      require_internal(),
      require_utf32(),
      require_utf16(),
      require_utf7(),
      require_sbcs_codec(),
      require_sbcs_data(),
      require_sbcs_data_generated(),
      require_dbcs_codec(),
      require_dbcs_data()
    ];
    for (i2 = 0; i2 < modules.length; i2++) {
      module2 = modules[i2];
      mergeModules(exports2, module2);
    }
    var module2;
    var i2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/lib/streams.js
var require_streams = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/lib/streams.js"(exports2, module2) {
    "use strict";
    var Buffer5 = require_safer().Buffer;
    module2.exports = function(streamModule) {
      var Transform2 = streamModule.Transform;
      function IconvLiteEncoderStream(conv, options) {
        this.conv = conv;
        options = options || {};
        options.decodeStrings = false;
        Transform2.call(this, options);
      }
      IconvLiteEncoderStream.prototype = Object.create(Transform2.prototype, {
        constructor: { value: IconvLiteEncoderStream }
      });
      IconvLiteEncoderStream.prototype._transform = function(chunk, encoding, done) {
        if (typeof chunk !== "string") {
          return done(new Error("Iconv encoding stream needs strings as its input."));
        }
        try {
          var res = this.conv.write(chunk);
          if (res && res.length) this.push(res);
          done();
        } catch (e) {
          done(e);
        }
      };
      IconvLiteEncoderStream.prototype._flush = function(done) {
        try {
          var res = this.conv.end();
          if (res && res.length) this.push(res);
          done();
        } catch (e) {
          done(e);
        }
      };
      IconvLiteEncoderStream.prototype.collect = function(cb) {
        var chunks = [];
        this.on("error", cb);
        this.on("data", function(chunk) {
          chunks.push(chunk);
        });
        this.on("end", function() {
          cb(null, Buffer5.concat(chunks));
        });
        return this;
      };
      function IconvLiteDecoderStream(conv, options) {
        this.conv = conv;
        options = options || {};
        options.encoding = this.encoding = "utf8";
        Transform2.call(this, options);
      }
      IconvLiteDecoderStream.prototype = Object.create(Transform2.prototype, {
        constructor: { value: IconvLiteDecoderStream }
      });
      IconvLiteDecoderStream.prototype._transform = function(chunk, encoding, done) {
        if (!Buffer5.isBuffer(chunk) && !(chunk instanceof Uint8Array)) {
          return done(new Error("Iconv decoding stream needs buffers as its input."));
        }
        try {
          var res = this.conv.write(chunk);
          if (res && res.length) this.push(res, this.encoding);
          done();
        } catch (e) {
          done(e);
        }
      };
      IconvLiteDecoderStream.prototype._flush = function(done) {
        try {
          var res = this.conv.end();
          if (res && res.length) this.push(res, this.encoding);
          done();
        } catch (e) {
          done(e);
        }
      };
      IconvLiteDecoderStream.prototype.collect = function(cb) {
        var res = "";
        this.on("error", cb);
        this.on("data", function(chunk) {
          res += chunk;
        });
        this.on("end", function() {
          cb(null, res);
        });
        return this;
      };
      return {
        IconvLiteEncoderStream,
        IconvLiteDecoderStream
      };
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/lib/index.js
var require_lib28 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/iconv-lite/0.7.2/ccd9a72a6271417333570ac8cf76fa8ac4a35a9319d12b495fd6e36baf13c94f/node_modules/iconv-lite/lib/index.js"(exports2, module2) {
    "use strict";
    var Buffer5 = require_safer().Buffer;
    var bomHandling = require_bom_handling();
    var mergeModules = require_merge_exports();
    module2.exports.encodings = null;
    module2.exports.defaultCharUnicode = "\uFFFD";
    module2.exports.defaultCharSingleByte = "?";
    module2.exports.encode = function encode2(str2, encoding, options) {
      str2 = "" + (str2 || "");
      var encoder = module2.exports.getEncoder(encoding, options);
      var res = encoder.write(str2);
      var trail = encoder.end();
      return trail && trail.length > 0 ? Buffer5.concat([res, trail]) : res;
    };
    module2.exports.decode = function decode2(buf, encoding, options) {
      if (typeof buf === "string") {
        if (!module2.exports.skipDecodeWarning) {
          console.error("Iconv-lite warning: decode()-ing strings is deprecated. Refer to https://github.com/ashtuchkin/iconv-lite/wiki/Use-Buffers-when-decoding");
          module2.exports.skipDecodeWarning = true;
        }
        buf = Buffer5.from("" + (buf || ""), "binary");
      }
      var decoder2 = module2.exports.getDecoder(encoding, options);
      var res = decoder2.write(buf);
      var trail = decoder2.end();
      return trail ? res + trail : res;
    };
    module2.exports.encodingExists = function encodingExists(enc) {
      try {
        module2.exports.getCodec(enc);
        return true;
      } catch (e) {
        return false;
      }
    };
    module2.exports.toEncoding = module2.exports.encode;
    module2.exports.fromEncoding = module2.exports.decode;
    module2.exports._codecDataCache = { __proto__: null };
    module2.exports.getCodec = function getCodec(encoding) {
      if (!module2.exports.encodings) {
        var raw = require_encodings();
        module2.exports.encodings = { __proto__: null };
        mergeModules(module2.exports.encodings, raw);
      }
      var enc = module2.exports._canonicalizeEncoding(encoding);
      var codecOptions = {};
      while (true) {
        var codec = module2.exports._codecDataCache[enc];
        if (codec) {
          return codec;
        }
        var codecDef = module2.exports.encodings[enc];
        switch (typeof codecDef) {
          case "string":
            enc = codecDef;
            break;
          case "object":
            for (var key in codecDef) {
              codecOptions[key] = codecDef[key];
            }
            if (!codecOptions.encodingName) {
              codecOptions.encodingName = enc;
            }
            enc = codecDef.type;
            break;
          case "function":
            if (!codecOptions.encodingName) {
              codecOptions.encodingName = enc;
            }
            codec = new codecDef(codecOptions, module2.exports);
            module2.exports._codecDataCache[codecOptions.encodingName] = codec;
            return codec;
          default:
            throw new Error("Encoding not recognized: '" + encoding + "' (searched as: '" + enc + "')");
        }
      }
    };
    module2.exports._canonicalizeEncoding = function(encoding) {
      return ("" + encoding).toLowerCase().replace(/:\d{4}$|[^0-9a-z]/g, "");
    };
    module2.exports.getEncoder = function getEncoder(encoding, options) {
      var codec = module2.exports.getCodec(encoding);
      var encoder = new codec.encoder(options, codec);
      if (codec.bomAware && options && options.addBOM) {
        encoder = new bomHandling.PrependBOM(encoder, options);
      }
      return encoder;
    };
    module2.exports.getDecoder = function getDecoder(encoding, options) {
      var codec = module2.exports.getCodec(encoding);
      var decoder2 = new codec.decoder(options, codec);
      if (codec.bomAware && !(options && options.stripBOM === false)) {
        decoder2 = new bomHandling.StripBOM(decoder2, options);
      }
      return decoder2;
    };
    module2.exports.enableStreamingAPI = function enableStreamingAPI(streamModule2) {
      if (module2.exports.supportsStreams) {
        return;
      }
      var streams = require_streams()(streamModule2);
      module2.exports.IconvLiteEncoderStream = streams.IconvLiteEncoderStream;
      module2.exports.IconvLiteDecoderStream = streams.IconvLiteDecoderStream;
      module2.exports.encodeStream = function encodeStream(encoding, options) {
        return new module2.exports.IconvLiteEncoderStream(module2.exports.getEncoder(encoding, options), options);
      };
      module2.exports.decodeStream = function decodeStream(encoding, options) {
        return new module2.exports.IconvLiteDecoderStream(module2.exports.getDecoder(encoding, options), options);
      };
      module2.exports.supportsStreams = true;
    };
    var streamModule;
    try {
      streamModule = __require("stream");
    } catch (e) {
    }
    if (streamModule && streamModule.Transform) {
      module2.exports.enableStreamingAPI(streamModule);
    } else {
      module2.exports.encodeStream = module2.exports.decodeStream = function() {
        throw new Error("iconv-lite Streaming API is not enabled. Use iconv.enableStreamingAPI(require('stream')); to enable it.");
      };
    }
    if (false) {
      console.error("iconv-lite warning: js files use non-utf8 encoding. See https://github.com/ashtuchkin/iconv-lite/wiki/Javascript-source-file-encodings for more info.");
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/minipass-fetch/5.0.2/978147c7548903dce150bb2aa306f85d2be434f08575794e83259f0028783374/node_modules/minipass-fetch/lib/body.js
var require_body2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/minipass-fetch/5.0.2/978147c7548903dce150bb2aa306f85d2be434f08575794e83259f0028783374/node_modules/minipass-fetch/lib/body.js"(exports2, module2) {
    "use strict";
    var { Minipass } = require_commonjs();
    var { MinipassSized } = require_commonjs6();
    var Blob2 = require_blob();
    var { BUFFER } = Blob2;
    var FetchError2 = require_fetch_error();
    var decode2;
    try {
      decode2 = require_lib28().decode;
    } catch (e) {
    }
    var INTERNALS = /* @__PURE__ */ Symbol("Body internals");
    var CONSUME_BODY = /* @__PURE__ */ Symbol("consumeBody");
    var Body = class {
      constructor(bodyArg, options = {}) {
        const { size = 0, timeout = 0 } = options;
        const body = bodyArg === void 0 || bodyArg === null ? null : isURLSearchParams(bodyArg) ? Buffer.from(bodyArg.toString()) : isBlob(bodyArg) ? bodyArg : Buffer.isBuffer(bodyArg) ? bodyArg : Object.prototype.toString.call(bodyArg) === "[object ArrayBuffer]" ? Buffer.from(bodyArg) : ArrayBuffer.isView(bodyArg) ? Buffer.from(bodyArg.buffer, bodyArg.byteOffset, bodyArg.byteLength) : Minipass.isStream(bodyArg) ? bodyArg : Buffer.from(String(bodyArg));
        this[INTERNALS] = {
          body,
          disturbed: false,
          error: null
        };
        this.size = size;
        this.timeout = timeout;
        if (Minipass.isStream(body)) {
          body.on("error", (er) => {
            const error = er.name === "AbortError" ? er : new FetchError2(`Invalid response while trying to fetch ${this.url}: ${er.message}`, "system", er);
            this[INTERNALS].error = error;
          });
        }
      }
      get body() {
        return this[INTERNALS].body;
      }
      get bodyUsed() {
        return this[INTERNALS].disturbed;
      }
      arrayBuffer() {
        return this[CONSUME_BODY]().then((buf) => buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength));
      }
      blob() {
        const ct = this.headers && this.headers.get("content-type") || "";
        return this[CONSUME_BODY]().then((buf) => Object.assign(
          new Blob2([], { type: ct.toLowerCase() }),
          { [BUFFER]: buf }
        ));
      }
      async json() {
        const buf = await this[CONSUME_BODY]();
        try {
          return JSON.parse(buf.toString());
        } catch (er) {
          throw new FetchError2(
            `invalid json response body at ${this.url} reason: ${er.message}`,
            "invalid-json"
          );
        }
      }
      text() {
        return this[CONSUME_BODY]().then((buf) => buf.toString());
      }
      buffer() {
        return this[CONSUME_BODY]();
      }
      textConverted() {
        if (typeof decode2 !== "function") {
          throw new Error("The package `iconv-lite` must be installed to use the textConverted() function");
        }
        return this[CONSUME_BODY]().then((buf) => convertBody(buf, this.headers));
      }
      [CONSUME_BODY]() {
        if (this[INTERNALS].disturbed) {
          return Promise.reject(new TypeError(`body used already for: ${this.url}`));
        }
        this[INTERNALS].disturbed = true;
        if (this[INTERNALS].error) {
          return Promise.reject(this[INTERNALS].error);
        }
        if (this.body === null) {
          return Promise.resolve(Buffer.alloc(0));
        }
        if (Buffer.isBuffer(this.body)) {
          return Promise.resolve(this.body);
        }
        const upstream = isBlob(this.body) ? this.body.stream() : this.body;
        if (!Minipass.isStream(upstream)) {
          return Promise.resolve(Buffer.alloc(0));
        }
        const stream2 = this.size && upstream instanceof MinipassSized ? upstream : !this.size && upstream instanceof Minipass && !(upstream instanceof MinipassSized) ? upstream : this.size ? new MinipassSized({ size: this.size }) : new Minipass();
        const resTimeout = this.timeout && stream2.writable ? setTimeout(() => {
          stream2.emit("error", new FetchError2(
            `Response timeout while trying to fetch ${this.url} (over ${this.timeout}ms)`,
            "body-timeout"
          ));
        }, this.timeout) : null;
        if (resTimeout && resTimeout.unref) {
          resTimeout.unref();
        }
        return new Promise((resolve3) => {
          if (stream2 !== upstream) {
            upstream.on("error", (er) => stream2.emit("error", er));
            upstream.pipe(stream2);
          }
          resolve3();
        }).then(() => stream2.concat()).then((buf) => {
          clearTimeout(resTimeout);
          return buf;
        }).catch((er) => {
          clearTimeout(resTimeout);
          if (er.name === "AbortError" || er.name === "FetchError") {
            throw er;
          } else if (er.name === "RangeError") {
            throw new FetchError2(`Could not create Buffer from response body for ${this.url}: ${er.message}`, "system", er);
          } else {
            throw new FetchError2(`Invalid response body while trying to fetch ${this.url}: ${er.message}`, "system", er);
          }
        });
      }
      static clone(instance) {
        if (instance.bodyUsed) {
          throw new Error("cannot clone body after it is used");
        }
        const body = instance.body;
        if (Minipass.isStream(body) && typeof body.getBoundary !== "function") {
          const tee = new Minipass();
          const p1 = new Minipass();
          const p2 = new Minipass();
          tee.on("error", (er) => {
            p1.emit("error", er);
            p2.emit("error", er);
          });
          body.on("error", (er) => tee.emit("error", er));
          tee.pipe(p1);
          tee.pipe(p2);
          body.pipe(tee);
          instance[INTERNALS].body = p1;
          return p2;
        } else {
          return instance.body;
        }
      }
      static extractContentType(body) {
        return body === null || body === void 0 ? null : typeof body === "string" ? "text/plain;charset=UTF-8" : isURLSearchParams(body) ? "application/x-www-form-urlencoded;charset=UTF-8" : isBlob(body) ? body.type || null : Buffer.isBuffer(body) ? null : Object.prototype.toString.call(body) === "[object ArrayBuffer]" ? null : ArrayBuffer.isView(body) ? null : typeof body.getBoundary === "function" ? `multipart/form-data;boundary=${body.getBoundary()}` : Minipass.isStream(body) ? null : "text/plain;charset=UTF-8";
      }
      static getTotalBytes(instance) {
        const { body } = instance;
        return body === null || body === void 0 ? 0 : isBlob(body) ? body.size : Buffer.isBuffer(body) ? body.length : body && typeof body.getLengthSync === "function" && // detect form data input from form-data module
        (body._lengthRetrievers && /* istanbul ignore next */
        body._lengthRetrievers.length === 0 || // 1.x
        body.hasKnownLength && body.hasKnownLength()) ? body.getLengthSync() : null;
      }
      static writeToStream(dest, instance) {
        const { body } = instance;
        if (body === null || body === void 0) {
          dest.end();
        } else if (Buffer.isBuffer(body) || typeof body === "string") {
          dest.end(body);
        } else {
          const stream2 = isBlob(body) ? body.stream() : body;
          stream2.on("error", (er) => dest.emit("error", er)).pipe(dest);
        }
        return dest;
      }
    };
    Object.defineProperties(Body.prototype, {
      body: { enumerable: true },
      bodyUsed: { enumerable: true },
      arrayBuffer: { enumerable: true },
      blob: { enumerable: true },
      json: { enumerable: true },
      text: { enumerable: true }
    });
    var isURLSearchParams = (obj) => (
      // Duck-typing as a necessary condition.
      typeof obj !== "object" || typeof obj.append !== "function" || typeof obj.delete !== "function" || typeof obj.get !== "function" || typeof obj.getAll !== "function" || typeof obj.has !== "function" || typeof obj.set !== "function" ? false : obj.constructor.name === "URLSearchParams" || Object.prototype.toString.call(obj) === "[object URLSearchParams]" || typeof obj.sort === "function"
    );
    var isBlob = (obj) => typeof obj === "object" && typeof obj.arrayBuffer === "function" && typeof obj.type === "string" && typeof obj.stream === "function" && typeof obj.constructor === "function" && typeof obj.constructor.name === "string" && /^(Blob|File)$/.test(obj.constructor.name) && /^(Blob|File)$/.test(obj[Symbol.toStringTag]);
    var convertBody = (buffer3, headers) => {
      const ct = headers && headers.get("content-type");
      let charset = "utf-8";
      let res;
      if (ct) {
        res = /charset=([^;]*)/i.exec(ct);
      }
      const str2 = buffer3.slice(0, 1024).toString();
      if (!res && str2) {
        res = /<meta.+?charset=(['"])(.+?)\1/i.exec(str2);
      }
      if (!res && str2) {
        res = /<meta[\s]+?http-equiv=(['"])content-type\1[\s]+?content=(['"])(.+?)\2/i.exec(str2);
        if (!res) {
          res = /<meta[\s]+?content=(['"])(.+?)\1[\s]+?http-equiv=(['"])content-type\3/i.exec(str2);
          if (res) {
            res.pop();
          }
        }
        if (res) {
          res = /charset=(.*)/i.exec(res.pop());
        }
      }
      if (!res && str2) {
        res = /<\?xml.+?encoding=(['"])(.+?)\1/i.exec(str2);
      }
      if (res) {
        charset = res.pop();
        if (charset === "gb2312" || charset === "gbk") {
          charset = "gb18030";
        }
      }
      if (charset === "UTF-8") {
        return buffer3.toString("UTF-8");
      }
      charset = charset.toString().trim().replace(/^latin[-_]?(\d+)$/i, "ISO-8859-$1").replace(/^win(?:dows)?[-_]?(\d+)$/i, "WINDOWS-$1").replace(/^utf[-_]?(\d+)$/i, "UTF-$1").replace(/^ks_c_5601-1987$/i, "CP949").replace(/^us[-_]?ascii$/i, "ASCII").toUpperCase();
      try {
        return decode2(buffer3, charset).toString();
      } catch {
        return buffer3.toString("UTF-8");
      }
    };
    module2.exports = Body;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/minipass-fetch/5.0.2/978147c7548903dce150bb2aa306f85d2be434f08575794e83259f0028783374/node_modules/minipass-fetch/lib/headers.js
var require_headers4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/minipass-fetch/5.0.2/978147c7548903dce150bb2aa306f85d2be434f08575794e83259f0028783374/node_modules/minipass-fetch/lib/headers.js"(exports2, module2) {
    "use strict";
    var invalidTokenRegex = /[^^_`a-zA-Z\-0-9!#$%&'*+.|~]/;
    var invalidHeaderCharRegex = /[^\t\x20-\x7e\x80-\xff]/;
    var validateName = (name) => {
      name = `${name}`;
      if (invalidTokenRegex.test(name) || name === "") {
        throw new TypeError(`${name} is not a legal HTTP header name`);
      }
    };
    var validateValue = (value) => {
      value = `${value}`;
      if (invalidHeaderCharRegex.test(value)) {
        throw new TypeError(`${value} is not a legal HTTP header value`);
      }
    };
    var find = (map26, name) => {
      name = name.toLowerCase();
      for (const key in map26) {
        if (key.toLowerCase() === name) {
          return key;
        }
      }
      return void 0;
    };
    var MAP = /* @__PURE__ */ Symbol("map");
    var Headers2 = class _Headers {
      constructor(init2 = void 0) {
        this[MAP] = /* @__PURE__ */ Object.create(null);
        if (init2 instanceof _Headers) {
          const rawHeaders = init2.raw();
          const headerNames = Object.keys(rawHeaders);
          for (const headerName of headerNames) {
            for (const value of rawHeaders[headerName]) {
              this.append(headerName, value);
            }
          }
          return;
        }
        if (init2 === void 0 || init2 === null) {
          return;
        }
        if (typeof init2 === "object") {
          const method = init2[Symbol.iterator];
          if (method !== null && method !== void 0) {
            if (typeof method !== "function") {
              throw new TypeError("Header pairs must be iterable");
            }
            const pairs2 = [];
            for (const pair of init2) {
              if (typeof pair !== "object" || typeof pair[Symbol.iterator] !== "function") {
                throw new TypeError("Each header pair must be iterable");
              }
              const arrPair = Array.from(pair);
              if (arrPair.length !== 2) {
                throw new TypeError("Each header pair must be a name/value tuple");
              }
              pairs2.push(arrPair);
            }
            for (const pair of pairs2) {
              this.append(pair[0], pair[1]);
            }
          } else {
            for (const key of Object.keys(init2)) {
              this.append(key, init2[key]);
            }
          }
        } else {
          throw new TypeError("Provided initializer must be an object");
        }
      }
      get(name) {
        name = `${name}`;
        validateName(name);
        const key = find(this[MAP], name);
        if (key === void 0) {
          return null;
        }
        return this[MAP][key].join(", ");
      }
      forEach(callback2, thisArg = void 0) {
        let pairs2 = getHeaders2(this);
        for (let i2 = 0; i2 < pairs2.length; i2++) {
          const [name, value] = pairs2[i2];
          callback2.call(thisArg, value, name, this);
          pairs2 = getHeaders2(this);
        }
      }
      set(name, value) {
        name = `${name}`;
        value = `${value}`;
        validateName(name);
        validateValue(value);
        const key = find(this[MAP], name);
        this[MAP][key !== void 0 ? key : name] = [value];
      }
      append(name, value) {
        name = `${name}`;
        value = `${value}`;
        validateName(name);
        validateValue(value);
        const key = find(this[MAP], name);
        if (key !== void 0) {
          this[MAP][key].push(value);
        } else {
          this[MAP][name] = [value];
        }
      }
      has(name) {
        name = `${name}`;
        validateName(name);
        return find(this[MAP], name) !== void 0;
      }
      delete(name) {
        name = `${name}`;
        validateName(name);
        const key = find(this[MAP], name);
        if (key !== void 0) {
          delete this[MAP][key];
        }
      }
      raw() {
        return this[MAP];
      }
      keys() {
        return new HeadersIterator(this, "key");
      }
      values() {
        return new HeadersIterator(this, "value");
      }
      [Symbol.iterator]() {
        return new HeadersIterator(this, "key+value");
      }
      entries() {
        return new HeadersIterator(this, "key+value");
      }
      get [Symbol.toStringTag]() {
        return "Headers";
      }
      static exportNodeCompatibleHeaders(headers) {
        const obj = Object.assign(/* @__PURE__ */ Object.create(null), headers[MAP]);
        const hostHeaderKey = find(headers[MAP], "Host");
        if (hostHeaderKey !== void 0) {
          obj[hostHeaderKey] = obj[hostHeaderKey][0];
        }
        return obj;
      }
      static createHeadersLenient(obj) {
        const headers = new _Headers();
        for (const name of Object.keys(obj)) {
          if (invalidTokenRegex.test(name)) {
            continue;
          }
          if (Array.isArray(obj[name])) {
            for (const val of obj[name]) {
              if (invalidHeaderCharRegex.test(val)) {
                continue;
              }
              if (headers[MAP][name] === void 0) {
                headers[MAP][name] = [val];
              } else {
                headers[MAP][name].push(val);
              }
            }
          } else if (!invalidHeaderCharRegex.test(obj[name])) {
            headers[MAP][name] = [obj[name]];
          }
        }
        return headers;
      }
    };
    Object.defineProperties(Headers2.prototype, {
      get: { enumerable: true },
      forEach: { enumerable: true },
      set: { enumerable: true },
      append: { enumerable: true },
      has: { enumerable: true },
      delete: { enumerable: true },
      keys: { enumerable: true },
      values: { enumerable: true },
      entries: { enumerable: true }
    });
    var getHeaders2 = (headers, kind = "key+value") => Object.keys(headers[MAP]).sort().map(
      kind === "key" ? (k2) => k2.toLowerCase() : kind === "value" ? (k2) => headers[MAP][k2].join(", ") : (k2) => [k2.toLowerCase(), headers[MAP][k2].join(", ")]
    );
    var INTERNAL = /* @__PURE__ */ Symbol("internal");
    var HeadersIterator = class _HeadersIterator {
      constructor(target2, kind) {
        this[INTERNAL] = {
          target: target2,
          kind,
          index: 0
        };
      }
      get [Symbol.toStringTag]() {
        return "HeadersIterator";
      }
      next() {
        if (!this || Object.getPrototypeOf(this) !== _HeadersIterator.prototype) {
          throw new TypeError("Value of `this` is not a HeadersIterator");
        }
        const { target: target2, kind, index } = this[INTERNAL];
        const values = getHeaders2(target2, kind);
        const len = values.length;
        if (index >= len) {
          return {
            value: void 0,
            done: true
          };
        }
        this[INTERNAL].index++;
        return { value: values[index], done: false };
      }
    };
    Object.setPrototypeOf(
      HeadersIterator.prototype,
      Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()))
    );
    module2.exports = Headers2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/minipass-fetch/5.0.2/978147c7548903dce150bb2aa306f85d2be434f08575794e83259f0028783374/node_modules/minipass-fetch/lib/response.js
var require_response2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/minipass-fetch/5.0.2/978147c7548903dce150bb2aa306f85d2be434f08575794e83259f0028783374/node_modules/minipass-fetch/lib/response.js"(exports2, module2) {
    "use strict";
    var http2 = __require("http");
    var { STATUS_CODES } = http2;
    var Headers2 = require_headers4();
    var Body = require_body2();
    var { clone: clone3, extractContentType } = Body;
    var INTERNALS = /* @__PURE__ */ Symbol("Response internals");
    var Response = class _Response extends Body {
      constructor(body = null, opts2 = {}) {
        super(body, opts2);
        const status = opts2.status || 200;
        const headers = new Headers2(opts2.headers);
        if (body !== null && body !== void 0 && !headers.has("Content-Type")) {
          const contentType = extractContentType(body);
          if (contentType) {
            headers.append("Content-Type", contentType);
          }
        }
        this[INTERNALS] = {
          url: opts2.url,
          status,
          statusText: opts2.statusText || STATUS_CODES[status],
          headers,
          counter: opts2.counter,
          trailer: Promise.resolve(opts2.trailer || new Headers2())
        };
      }
      get trailer() {
        return this[INTERNALS].trailer;
      }
      get url() {
        return this[INTERNALS].url || "";
      }
      get status() {
        return this[INTERNALS].status;
      }
      get ok() {
        return this[INTERNALS].status >= 200 && this[INTERNALS].status < 300;
      }
      get redirected() {
        return this[INTERNALS].counter > 0;
      }
      get statusText() {
        return this[INTERNALS].statusText;
      }
      get headers() {
        return this[INTERNALS].headers;
      }
      clone() {
        return new _Response(clone3(this), {
          url: this.url,
          status: this.status,
          statusText: this.statusText,
          headers: this.headers,
          ok: this.ok,
          redirected: this.redirected,
          trailer: this.trailer
        });
      }
      get [Symbol.toStringTag]() {
        return "Response";
      }
    };
    module2.exports = Response;
    Object.defineProperties(Response.prototype, {
      url: { enumerable: true },
      status: { enumerable: true },
      ok: { enumerable: true },
      redirected: { enumerable: true },
      statusText: { enumerable: true },
      headers: { enumerable: true },
      clone: { enumerable: true }
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/minipass-fetch/5.0.2/978147c7548903dce150bb2aa306f85d2be434f08575794e83259f0028783374/node_modules/minipass-fetch/package.json
var require_package = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/minipass-fetch/5.0.2/978147c7548903dce150bb2aa306f85d2be434f08575794e83259f0028783374/node_modules/minipass-fetch/package.json"(exports2, module2) {
    module2.exports = {
      name: "minipass-fetch",
      version: "5.0.2",
      description: "An implementation of window.fetch in Node.js using Minipass streams",
      license: "MIT",
      main: "lib/index.js",
      scripts: {
        "test:tls-fixtures": "./test/fixtures/tls/setup.sh",
        test: "tap",
        snap: "tap",
        lint: "npm run eslint",
        postlint: "template-oss-check",
        lintfix: "npm run eslint -- --fix",
        posttest: "npm run lint",
        "template-oss-apply": "template-oss-apply --force",
        eslint: 'eslint "**/*.{js,cjs,ts,mjs,jsx,tsx}"'
      },
      tap: {
        "coverage-map": "map.js",
        "check-coverage": true,
        "nyc-arg": [
          "--exclude",
          "tap-snapshots/**"
        ]
      },
      devDependencies: {
        "@npmcli/eslint-config": "^5.0.0",
        "@npmcli/template-oss": "4.27.1",
        "@ungap/url-search-params": "^0.2.2",
        "abort-controller": "^3.0.0",
        "abortcontroller-polyfill": "~1.7.3",
        "form-data": "^4.0.0",
        "iconv-lite": "^0.7.2",
        nock: "^13.2.4",
        parted: "^0.1.1",
        "string-to-arraybuffer": "^1.0.2",
        tap: "^16.0.0"
      },
      dependencies: {
        minipass: "^7.0.3",
        "minipass-sized": "^2.0.0",
        minizlib: "^3.0.1"
      },
      optionalDependencies: {
        "iconv-lite": "^0.7.2"
      },
      repository: {
        type: "git",
        url: "git+https://github.com/npm/minipass-fetch.git"
      },
      keywords: [
        "fetch",
        "minipass",
        "node-fetch",
        "window.fetch"
      ],
      files: [
        "bin/",
        "lib/"
      ],
      engines: {
        node: "^20.17.0 || >=22.9.0"
      },
      author: "GitHub Inc.",
      templateOSS: {
        "//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.",
        version: "4.27.1",
        publish: "true"
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/minipass-fetch/5.0.2/978147c7548903dce150bb2aa306f85d2be434f08575794e83259f0028783374/node_modules/minipass-fetch/lib/request.js
var require_request3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/minipass-fetch/5.0.2/978147c7548903dce150bb2aa306f85d2be434f08575794e83259f0028783374/node_modules/minipass-fetch/lib/request.js"(exports2, module2) {
    "use strict";
    var { URL: URL7 } = __require("url");
    var { Minipass } = require_commonjs();
    var Headers2 = require_headers4();
    var { exportNodeCompatibleHeaders } = Headers2;
    var Body = require_body2();
    var { clone: clone3, extractContentType, getTotalBytes } = Body;
    var version2 = require_package().version;
    var defaultUserAgent = `minipass-fetch/${version2} (+https://github.com/isaacs/minipass-fetch)`;
    var INTERNALS = /* @__PURE__ */ Symbol("Request internals");
    var isRequest = (input) => typeof input === "object" && typeof input[INTERNALS] === "object";
    var isAbortSignal = (signal) => {
      const proto2 = signal && typeof signal === "object" && Object.getPrototypeOf(signal);
      return !!(proto2 && proto2.constructor.name === "AbortSignal");
    };
    var Request = class _Request extends Body {
      constructor(input, init2 = {}) {
        const parsedURL = isRequest(input) ? new URL7(input.url) : input && input.href ? new URL7(input.href) : new URL7(`${input}`);
        if (isRequest(input)) {
          init2 = { ...input[INTERNALS], ...init2 };
        } else if (!input || typeof input === "string") {
          input = {};
        }
        const method = (init2.method || input.method || "GET").toUpperCase();
        const isGETHEAD = method === "GET" || method === "HEAD";
        if ((init2.body !== null && init2.body !== void 0 || isRequest(input) && input.body !== null) && isGETHEAD) {
          throw new TypeError("Request with GET/HEAD method cannot have body");
        }
        const inputBody = init2.body !== null && init2.body !== void 0 ? init2.body : isRequest(input) && input.body !== null ? clone3(input) : null;
        super(inputBody, {
          timeout: init2.timeout || input.timeout || 0,
          size: init2.size || input.size || 0
        });
        const headers = new Headers2(init2.headers || input.headers || {});
        if (inputBody !== null && inputBody !== void 0 && !headers.has("Content-Type")) {
          const contentType = extractContentType(inputBody);
          if (contentType) {
            headers.append("Content-Type", contentType);
          }
        }
        const signal = "signal" in init2 ? init2.signal : null;
        if (signal !== null && signal !== void 0 && !isAbortSignal(signal)) {
          throw new TypeError("Expected signal must be an instanceof AbortSignal");
        }
        const {
          ca,
          cert,
          ciphers,
          clientCertEngine,
          crl,
          dhparam,
          ecdhCurve,
          family,
          honorCipherOrder,
          key,
          passphrase,
          pfx,
          rejectUnauthorized = process.env.NODE_TLS_REJECT_UNAUTHORIZED !== "0",
          secureOptions,
          secureProtocol,
          servername,
          sessionIdContext
        } = init2;
        this[INTERNALS] = {
          method,
          redirect: init2.redirect || input.redirect || "follow",
          headers,
          parsedURL,
          signal,
          ca,
          cert,
          ciphers,
          clientCertEngine,
          crl,
          dhparam,
          ecdhCurve,
          family,
          honorCipherOrder,
          key,
          passphrase,
          pfx,
          rejectUnauthorized,
          secureOptions,
          secureProtocol,
          servername,
          sessionIdContext
        };
        this.follow = init2.follow !== void 0 ? init2.follow : input.follow !== void 0 ? input.follow : 20;
        this.compress = init2.compress !== void 0 ? init2.compress : input.compress !== void 0 ? input.compress : true;
        this.counter = init2.counter || input.counter || 0;
        this.agent = init2.agent || input.agent;
      }
      get method() {
        return this[INTERNALS].method;
      }
      get url() {
        return this[INTERNALS].parsedURL.toString();
      }
      get headers() {
        return this[INTERNALS].headers;
      }
      get redirect() {
        return this[INTERNALS].redirect;
      }
      get signal() {
        return this[INTERNALS].signal;
      }
      clone() {
        return new _Request(this);
      }
      get [Symbol.toStringTag]() {
        return "Request";
      }
      static getNodeRequestOptions(request) {
        const parsedURL = request[INTERNALS].parsedURL;
        const headers = new Headers2(request[INTERNALS].headers);
        if (!headers.has("Accept")) {
          headers.set("Accept", "*/*");
        }
        if (!/^https?:$/.test(parsedURL.protocol)) {
          throw new TypeError("Only HTTP(S) protocols are supported");
        }
        if (request.signal && Minipass.isStream(request.body) && typeof request.body.destroy !== "function") {
          throw new Error(
            "Cancellation of streamed requests with AbortSignal is not supported"
          );
        }
        const contentLengthValue = (request.body === null || request.body === void 0) && /^(POST|PUT)$/i.test(request.method) ? "0" : request.body !== null && request.body !== void 0 ? getTotalBytes(request) : null;
        if (contentLengthValue) {
          headers.set("Content-Length", contentLengthValue + "");
        }
        if (!headers.has("User-Agent")) {
          headers.set("User-Agent", defaultUserAgent);
        }
        if (request.compress && !headers.has("Accept-Encoding")) {
          headers.set("Accept-Encoding", "gzip,deflate");
        }
        const agent = typeof request.agent === "function" ? request.agent(parsedURL) : request.agent;
        if (!headers.has("Connection") && !agent) {
          headers.set("Connection", "close");
        }
        const {
          ca,
          cert,
          ciphers,
          clientCertEngine,
          crl,
          dhparam,
          ecdhCurve,
          family,
          honorCipherOrder,
          key,
          passphrase,
          pfx,
          rejectUnauthorized,
          secureOptions,
          secureProtocol,
          servername,
          sessionIdContext
        } = request[INTERNALS];
        const urlProps = {
          auth: parsedURL.username || parsedURL.password ? `${parsedURL.username}:${parsedURL.password}` : "",
          host: parsedURL.host,
          hostname: parsedURL.hostname,
          path: `${parsedURL.pathname}${parsedURL.search}`,
          port: parsedURL.port,
          protocol: parsedURL.protocol
        };
        return {
          ...urlProps,
          method: request.method,
          headers: exportNodeCompatibleHeaders(headers),
          agent,
          ca,
          cert,
          ciphers,
          clientCertEngine,
          crl,
          dhparam,
          ecdhCurve,
          family,
          honorCipherOrder,
          key,
          passphrase,
          pfx,
          rejectUnauthorized,
          secureOptions,
          secureProtocol,
          servername,
          sessionIdContext,
          timeout: request.timeout
        };
      }
    };
    module2.exports = Request;
    Object.defineProperties(Request.prototype, {
      method: { enumerable: true },
      url: { enumerable: true },
      headers: { enumerable: true },
      redirect: { enumerable: true },
      clone: { enumerable: true },
      signal: { enumerable: true }
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/minipass-fetch/5.0.2/978147c7548903dce150bb2aa306f85d2be434f08575794e83259f0028783374/node_modules/minipass-fetch/lib/abort-error.js
var require_abort_error = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/minipass-fetch/5.0.2/978147c7548903dce150bb2aa306f85d2be434f08575794e83259f0028783374/node_modules/minipass-fetch/lib/abort-error.js"(exports2, module2) {
    "use strict";
    var AbortError = class extends Error {
      constructor(message) {
        super(message);
        this.code = "FETCH_ABORTED";
        this.type = "aborted";
        Error.captureStackTrace(this, this.constructor);
      }
      get name() {
        return "AbortError";
      }
      // don't allow name to be overridden, but don't throw either
      set name(s) {
      }
    };
    module2.exports = AbortError;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/minipass-fetch/5.0.2/978147c7548903dce150bb2aa306f85d2be434f08575794e83259f0028783374/node_modules/minipass-fetch/lib/index.js
var require_lib29 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/minipass-fetch/5.0.2/978147c7548903dce150bb2aa306f85d2be434f08575794e83259f0028783374/node_modules/minipass-fetch/lib/index.js"(exports2, module2) {
    "use strict";
    var { URL: URL7 } = __require("url");
    var http2 = __require("http");
    var https2 = __require("https");
    var zlib = require_commonjs5();
    var { Minipass } = require_commonjs();
    var Body = require_body2();
    var { writeToStream, getTotalBytes } = Body;
    var Response = require_response2();
    var Headers2 = require_headers4();
    var { createHeadersLenient } = Headers2;
    var Request = require_request3();
    var { getNodeRequestOptions } = Request;
    var FetchError2 = require_fetch_error();
    var AbortError = require_abort_error();
    var fetch2 = async (url7, opts2) => {
      if (/^data:/.test(url7)) {
        const request = new Request(url7, opts2);
        return Promise.resolve().then(() => new Promise((resolve3, reject3) => {
          let type4, data;
          try {
            const { pathname, search: search2 } = new URL7(url7);
            const split2 = pathname.split(",");
            if (split2.length < 2) {
              throw new Error("invalid data: URI");
            }
            const mime = split2.shift();
            const base64 = /;base64$/.test(mime);
            type4 = base64 ? mime.slice(0, -1 * ";base64".length) : mime;
            const rawData = decodeURIComponent(split2.join(",") + search2);
            data = base64 ? Buffer.from(rawData, "base64") : Buffer.from(rawData);
          } catch (er) {
            return reject3(new FetchError2(`[${request.method}] ${request.url} invalid URL, ${er.message}`, "system", er));
          }
          const { signal } = request;
          if (signal && signal.aborted) {
            return reject3(new AbortError("The user aborted a request."));
          }
          const headers = { "Content-Length": data.length };
          if (type4) {
            headers["Content-Type"] = type4;
          }
          return resolve3(new Response(data, { headers }));
        }));
      }
      return new Promise((resolve3, reject3) => {
        const request = new Request(url7, opts2);
        let options;
        try {
          options = getNodeRequestOptions(request);
        } catch (er) {
          return reject3(er);
        }
        const send = (options.protocol === "https:" ? https2 : http2).request;
        const { signal } = request;
        let response = null;
        const abort = () => {
          const error = new AbortError("The user aborted a request.");
          reject3(error);
          if (Minipass.isStream(request.body) && typeof request.body.destroy === "function") {
            request.body.destroy(error);
          }
          if (response && response.body) {
            response.body.emit("error", error);
          }
        };
        if (signal && signal.aborted) {
          return abort();
        }
        const abortAndFinalize = () => {
          abort();
          finalize();
        };
        const finalize = () => {
          req2.abort();
          if (signal) {
            signal.removeEventListener("abort", abortAndFinalize);
          }
          clearTimeout(reqTimeout);
        };
        const req2 = send(options);
        if (signal) {
          signal.addEventListener("abort", abortAndFinalize);
        }
        let reqTimeout = null;
        if (request.timeout) {
          req2.once("socket", () => {
            reqTimeout = setTimeout(() => {
              reject3(new FetchError2(`network timeout at: ${request.url}`, "request-timeout"));
              finalize();
            }, request.timeout);
          });
        }
        req2.on("error", (er) => {
          if (req2.res) {
            req2.res.emit("error", er);
          }
          reject3(new FetchError2(`request to ${request.url} failed, reason: ${er.message}`, "system", er));
          finalize();
        });
        req2.on("response", (res) => {
          clearTimeout(reqTimeout);
          const headers = createHeadersLenient(res.headers);
          if (fetch2.isRedirect(res.statusCode)) {
            const location = headers.get("Location");
            let locationURL = null;
            try {
              locationURL = location === null ? null : new URL7(location, request.url).toString();
            } catch {
              if (request.redirect !== "manual") {
                reject3(new FetchError2(`uri requested responds with an invalid redirect URL: ${location}`, "invalid-redirect"));
                finalize();
                return;
              }
            }
            if (request.redirect === "error") {
              reject3(new FetchError2(`uri requested responds with a redirect, redirect mode is set to error: ${request.url}`, "no-redirect"));
              finalize();
              return;
            } else if (request.redirect === "manual") {
              if (locationURL !== null) {
                try {
                  headers.set("Location", locationURL);
                } catch (err) {
                  reject3(err);
                }
              }
            } else if (request.redirect === "follow" && locationURL !== null) {
              if (request.counter >= request.follow) {
                reject3(new FetchError2(`maximum redirect reached at: ${request.url}`, "max-redirect"));
                finalize();
                return;
              }
              if (res.statusCode !== 303 && request.body && getTotalBytes(request) === null) {
                reject3(new FetchError2(
                  "Cannot follow redirect with body being a readable stream",
                  "unsupported-redirect"
                ));
                finalize();
                return;
              }
              request.headers.set("host", new URL7(locationURL).host);
              const requestOpts = {
                headers: new Headers2(request.headers),
                follow: request.follow,
                counter: request.counter + 1,
                agent: request.agent,
                compress: request.compress,
                method: request.method,
                body: request.body,
                signal: request.signal,
                timeout: request.timeout
              };
              const parsedOriginal = new URL7(request.url);
              const parsedRedirect = new URL7(locationURL);
              if (parsedOriginal.hostname !== parsedRedirect.hostname) {
                requestOpts.headers.delete("authorization");
                requestOpts.headers.delete("cookie");
              }
              if (res.statusCode === 303 || (res.statusCode === 301 || res.statusCode === 302) && request.method === "POST") {
                requestOpts.method = "GET";
                requestOpts.body = void 0;
                requestOpts.headers.delete("content-length");
              }
              resolve3(fetch2(new Request(locationURL, requestOpts)));
              finalize();
              return;
            }
          }
          res.once("end", () => signal && signal.removeEventListener("abort", abortAndFinalize));
          const body = new Minipass();
          body.on("error", finalize);
          res.on(
            "error",
            /* istanbul ignore next */
            (er) => body.emit("error", er)
          );
          res.on("data", (chunk) => body.write(chunk));
          res.on("end", () => body.end());
          const responseOptions = {
            url: request.url,
            status: res.statusCode,
            statusText: res.statusMessage,
            headers,
            size: request.size,
            timeout: request.timeout,
            counter: request.counter,
            trailer: new Promise((resolveTrailer) => res.on("end", () => resolveTrailer(createHeadersLenient(res.trailers))))
          };
          const codings = headers.get("Content-Encoding");
          if (!request.compress || request.method === "HEAD" || codings === null || res.statusCode === 204 || res.statusCode === 304) {
            response = new Response(body, responseOptions);
            resolve3(response);
            return;
          }
          const zlibOptions = {
            flush: zlib.constants.Z_SYNC_FLUSH,
            finishFlush: zlib.constants.Z_SYNC_FLUSH
          };
          if (codings === "gzip" || codings === "x-gzip") {
            const unzip = new zlib.Gunzip(zlibOptions);
            response = new Response(
              // exceedingly rare that the stream would have an error,
              // but just in case we proxy it to the stream in use.
              body.on(
                "error",
                /* istanbul ignore next */
                (er) => unzip.emit("error", er)
              ).pipe(unzip),
              responseOptions
            );
            resolve3(response);
            return;
          }
          if (codings === "deflate" || codings === "x-deflate") {
            res.once("data", (chunk) => {
              const decoder3 = (chunk[0] & 15) === 8 ? new zlib.Inflate() : new zlib.InflateRaw();
              body.on(
                "error",
                /* istanbul ignore next */
                (er) => decoder3.emit("error", er)
              ).pipe(decoder3);
              response = new Response(decoder3, responseOptions);
              resolve3(response);
            });
            return;
          }
          if (codings === "br") {
            try {
              var decoder2 = new zlib.BrotliDecompress();
            } catch (err) {
              reject3(err);
              finalize();
              return;
            }
            body.on(
              "error",
              /* istanbul ignore next */
              (er) => decoder2.emit("error", er)
            ).pipe(decoder2);
            response = new Response(decoder2, responseOptions);
            resolve3(response);
            return;
          }
          response = new Response(body, responseOptions);
          resolve3(response);
        });
        writeToStream(req2, request);
      });
    };
    module2.exports = fetch2;
    fetch2.isRedirect = (code) => code === 301 || code === 302 || code === 303 || code === 307 || code === 308;
    fetch2.Headers = Headers2;
    fetch2.Request = Request;
    fetch2.Response = Response;
    fetch2.FetchError = FetchError2;
    fetch2.AbortError = AbortError;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/npm-registry-fetch/19.1.1/79a25a680f68d9ed82ba96692e4648cccb7968b0efd1562d4faa92a3ec85fc7d/node_modules/npm-registry-fetch/package.json
var require_package2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/npm-registry-fetch/19.1.1/79a25a680f68d9ed82ba96692e4648cccb7968b0efd1562d4faa92a3ec85fc7d/node_modules/npm-registry-fetch/package.json"(exports2, module2) {
    module2.exports = {
      name: "npm-registry-fetch",
      version: "19.1.1",
      description: "Fetch-based http client for use with npm registry APIs",
      main: "lib",
      files: [
        "bin/",
        "lib/"
      ],
      scripts: {
        eslint: 'eslint "**/*.{js,cjs,ts,mjs,jsx,tsx}"',
        lint: "npm run eslint",
        lintfix: "npm run eslint -- --fix",
        test: "tap",
        posttest: "npm run lint",
        npmclilint: "npmcli-lint",
        postsnap: "npm run lintfix --",
        postlint: "template-oss-check",
        snap: "tap",
        "template-oss-apply": "template-oss-apply --force"
      },
      repository: {
        type: "git",
        url: "git+https://github.com/npm/npm-registry-fetch.git"
      },
      keywords: [
        "npm",
        "registry",
        "fetch"
      ],
      author: "GitHub Inc.",
      license: "ISC",
      dependencies: {
        "@npmcli/redact": "^4.0.0",
        jsonparse: "^1.3.1",
        "make-fetch-happen": "^15.0.0",
        minipass: "^7.0.2",
        "minipass-fetch": "^5.0.0",
        minizlib: "^3.0.1",
        "npm-package-arg": "^13.0.0",
        "proc-log": "^6.0.0"
      },
      devDependencies: {
        "@npmcli/eslint-config": "^6.0.0",
        "@npmcli/template-oss": "4.28.0",
        cacache: "^20.0.0",
        nock: "^13.2.4",
        "require-inject": "^1.4.4",
        ssri: "^13.0.0",
        tap: "^16.0.1"
      },
      tap: {
        "check-coverage": true,
        "test-ignore": "test[\\\\/](util|cache)[\\\\/]",
        "nyc-arg": [
          "--exclude",
          "tap-snapshots/**"
        ]
      },
      engines: {
        node: "^20.17.0 || >=22.9.0"
      },
      templateOSS: {
        "//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.",
        version: "4.28.0",
        publish: "true"
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/npm-registry-fetch/19.1.1/79a25a680f68d9ed82ba96692e4648cccb7968b0efd1562d4faa92a3ec85fc7d/node_modules/npm-registry-fetch/lib/default-opts.js
var require_default_opts = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/npm-registry-fetch/19.1.1/79a25a680f68d9ed82ba96692e4648cccb7968b0efd1562d4faa92a3ec85fc7d/node_modules/npm-registry-fetch/lib/default-opts.js"(exports2, module2) {
    var pkg = require_package2();
    module2.exports = {
      maxSockets: 12,
      method: "GET",
      registry: "https://registry.npmjs.org/",
      timeout: 5 * 60 * 1e3,
      // 5 minutes
      strictSSL: true,
      noProxy: process.env.NOPROXY,
      userAgent: `${pkg.name}@${pkg.version}/node@${process.version}+${process.arch} (${process.platform})`
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/redact/4.0.0/21c637ff0b70f94f92283febd5356d4867e9fbec97dbdcf5f42138cbba3161d4/node_modules/@npmcli/redact/lib/matchers.js
var require_matchers = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/redact/4.0.0/21c637ff0b70f94f92283febd5356d4867e9fbec97dbdcf5f42138cbba3161d4/node_modules/@npmcli/redact/lib/matchers.js"(exports2, module2) {
    var TYPE_REGEX = "regex";
    var TYPE_URL = "url";
    var TYPE_PATH = "path";
    var NPM_SECRET = {
      type: TYPE_REGEX,
      pattern: /\b(npms?_)[a-zA-Z0-9]{36,48}\b/gi,
      replacement: `[REDACTED_NPM_SECRET]`
    };
    var AUTH_HEADER = {
      type: TYPE_REGEX,
      pattern: /\b(Basic\s+|Bearer\s+)[\w+=\-.]+\b/gi,
      replacement: `[REDACTED_AUTH_HEADER]`
    };
    var JSON_WEB_TOKEN = {
      type: TYPE_REGEX,
      pattern: /\b[A-Za-z0-9-_]{10,}(?!\.\d+\.)\.[A-Za-z0-9-_]{3,}\.[A-Za-z0-9-_]{20,}\b/gi,
      replacement: `[REDACTED_JSON_WEB_TOKEN]`
    };
    var UUID = {
      type: TYPE_REGEX,
      pattern: /\b[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\b/gi,
      replacement: `[REDACTED_UUID]`
    };
    var URL_MATCHER = {
      type: TYPE_REGEX,
      pattern: /(?:https?|ftp):\/\/[^\s/"$.?#].[^\s"]*/gi,
      replacement: "[REDACTED_URL]"
    };
    var DEEP_HEADER_AUTHORIZATION = {
      type: TYPE_PATH,
      predicate: ({ path: path218 }) => path218.endsWith(".headers.authorization"),
      replacement: "[REDACTED_HEADER_AUTHORIZATION]"
    };
    var DEEP_HEADER_SET_COOKIE = {
      type: TYPE_PATH,
      predicate: ({ path: path218 }) => path218.endsWith(".headers.set-cookie"),
      replacement: "[REDACTED_HEADER_SET_COOKIE]"
    };
    var DEEP_HEADER_COOKIE = {
      type: TYPE_PATH,
      predicate: ({ path: path218 }) => path218.endsWith(".headers.cookie"),
      replacement: "[REDACTED_HEADER_COOKIE]"
    };
    var REWRITE_REQUEST = {
      type: TYPE_PATH,
      predicate: ({ path: path218 }) => path218.endsWith(".request"),
      replacement: (input) => ({
        method: input?.method,
        path: input?.path,
        headers: input?.headers,
        url: input?.url
      })
    };
    var REWRITE_RESPONSE = {
      type: TYPE_PATH,
      predicate: ({ path: path218 }) => path218.endsWith(".response"),
      replacement: (input) => ({
        data: input?.data,
        status: input?.status,
        headers: input?.headers
      })
    };
    module2.exports = {
      TYPE_REGEX,
      TYPE_URL,
      TYPE_PATH,
      NPM_SECRET,
      AUTH_HEADER,
      JSON_WEB_TOKEN,
      UUID,
      URL_MATCHER,
      DEEP_HEADER_AUTHORIZATION,
      DEEP_HEADER_SET_COOKIE,
      DEEP_HEADER_COOKIE,
      REWRITE_REQUEST,
      REWRITE_RESPONSE
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/redact/4.0.0/21c637ff0b70f94f92283febd5356d4867e9fbec97dbdcf5f42138cbba3161d4/node_modules/@npmcli/redact/lib/utils.js
var require_utils18 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/redact/4.0.0/21c637ff0b70f94f92283febd5356d4867e9fbec97dbdcf5f42138cbba3161d4/node_modules/@npmcli/redact/lib/utils.js"(exports2, module2) {
    var {
      URL_MATCHER,
      TYPE_URL,
      TYPE_REGEX,
      TYPE_PATH
    } = require_matchers();
    var asterisk = (length = 0) => {
      length = typeof length === "string" ? length.length : length;
      if (length < 8) {
        return "*".repeat(8);
      }
      return "*".repeat(length);
    };
    var escapeRegExp3 = (text) => {
      return text.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, `\\$&`);
    };
    var urlEncodeRegexGroup = (value) => {
      const decoded = decodeURIComponent(value);
      const encoded = encodeURIComponent(value);
      const union2 = [.../* @__PURE__ */ new Set([encoded, decoded, value])].map(escapeRegExp3).join("|");
      return union2;
    };
    var urlEncodeRegexTag = (strings2, ...values) => {
      let pattern = "";
      for (let i2 = 0; i2 < values.length; i2++) {
        pattern += strings2[i2] + `(${urlEncodeRegexGroup(values[i2])})`;
      }
      pattern += strings2[strings2.length - 1];
      return new RegExp(pattern);
    };
    var redactUrlHostnameMatcher = ({ hostname, replacement } = {}) => ({
      type: TYPE_URL,
      predicate: ({ url: url7 }) => url7.hostname === hostname,
      pattern: ({ url: url7 }) => {
        return urlEncodeRegexTag`(^${url7.protocol}//${url7.username}:.+@)?${url7.hostname}`;
      },
      replacement: `$1${replacement || asterisk()}`
    });
    var redactUrlSearchParamsMatcher = ({ param, replacement } = {}) => ({
      type: TYPE_URL,
      predicate: ({ url: url7 }) => url7.searchParams.has(param),
      pattern: ({ url: url7 }) => urlEncodeRegexTag`(${param}=)${url7.searchParams.get(param)}`,
      replacement: `$1${replacement || asterisk()}`
    });
    var redactUrlPasswordMatcher = ({ replacement } = {}) => ({
      type: TYPE_URL,
      predicate: ({ url: url7 }) => url7.password,
      pattern: ({ url: url7 }) => urlEncodeRegexTag`(^${url7.protocol}//${url7.username}:)${url7.password}`,
      replacement: `$1${replacement || asterisk()}`
    });
    var redactUrlReplacement = (...matchers) => (subValue) => {
      try {
        const url7 = new URL(subValue);
        return redactMatchers(...matchers)(subValue, { url: url7 });
      } catch (err) {
        return subValue;
      }
    };
    var redactUrlMatcher = (...matchers) => {
      return {
        ...URL_MATCHER,
        replacement: redactUrlReplacement(...matchers)
      };
    };
    var matcherFunctions = {
      [TYPE_REGEX]: (matcher) => (value) => {
        if (typeof value === "string") {
          value = value.replace(matcher.pattern, matcher.replacement);
        }
        return value;
      },
      [TYPE_URL]: (matcher) => (value, ctx) => {
        if (typeof value === "string") {
          try {
            const url7 = ctx?.url || new URL(value);
            const { predicate, pattern } = matcher;
            const predicateValue = predicate({ url: url7 });
            if (predicateValue) {
              value = value.replace(pattern({ url: url7 }), matcher.replacement);
            }
          } catch (_e) {
            return value;
          }
        }
        return value;
      },
      [TYPE_PATH]: (matcher) => (value, ctx) => {
        const rawPath = ctx?.path;
        const path218 = rawPath.join(".").toLowerCase();
        const { predicate, replacement } = matcher;
        const replace = typeof replacement === "function" ? replacement : () => replacement;
        const shouldRun = predicate({ rawPath, path: path218 });
        if (shouldRun) {
          value = replace(value, { rawPath, path: path218 });
        }
        return value;
      }
    };
    var redactMatcher = (matcher) => {
      return matcherFunctions[matcher.type](matcher);
    };
    var redactMatchers = (...matchers) => (value, ctx) => {
      const flatMatchers = matchers.flat();
      return flatMatchers.reduce((result2, matcher) => {
        const fn = typeof matcher === "function" ? matcher : redactMatcher(matcher);
        return fn(result2, ctx);
      }, value);
    };
    var redactDynamicReplacement = () => (value, start) => {
      if (typeof start === "number") {
        return asterisk(value);
      }
      return start + asterisk(value.substring(start.length).length);
    };
    var redactFixedReplacement = (length) => (_value, start) => {
      if (typeof start === "number") {
        return asterisk(length);
      }
      return start + asterisk(length);
    };
    var redactUrlPassword = (value, replacement) => {
      return redactMatchers(redactUrlPasswordMatcher({ replacement }))(value);
    };
    module2.exports = {
      asterisk,
      escapeRegExp: escapeRegExp3,
      urlEncodeRegexGroup,
      urlEncodeRegexTag,
      redactUrlHostnameMatcher,
      redactUrlSearchParamsMatcher,
      redactUrlPasswordMatcher,
      redactUrlMatcher,
      redactUrlReplacement,
      redactDynamicReplacement,
      redactFixedReplacement,
      redactMatchers,
      redactUrlPassword
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/redact/4.0.0/21c637ff0b70f94f92283febd5356d4867e9fbec97dbdcf5f42138cbba3161d4/node_modules/@npmcli/redact/lib/index.js
var require_lib30 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/redact/4.0.0/21c637ff0b70f94f92283febd5356d4867e9fbec97dbdcf5f42138cbba3161d4/node_modules/@npmcli/redact/lib/index.js"(exports2, module2) {
    var matchers = require_matchers();
    var { redactUrlPassword } = require_utils18();
    var REPLACE = "***";
    var redact = (value) => {
      if (typeof value !== "string" || !value) {
        return value;
      }
      return redactUrlPassword(value, REPLACE).replace(matchers.NPM_SECRET.pattern, `npm_${REPLACE}`).replace(matchers.UUID.pattern, REPLACE);
    };
    var splitAndRedact = (str2) => {
      const splitChars = /[\s=]/g;
      let match = null;
      let result2 = "";
      let index = 0;
      while (match = splitChars.exec(str2)) {
        result2 += redact(str2.slice(index, match.index)) + match[0];
        index = splitChars.lastIndex;
      }
      return result2 + redact(str2.slice(index));
    };
    var redactLog = (arg) => {
      if (typeof arg === "string") {
        return splitAndRedact(arg);
      } else if (Array.isArray(arg)) {
        return arg.map((a2) => typeof a2 === "string" ? splitAndRedact(a2) : a2);
      }
      return arg;
    };
    module2.exports = {
      redact,
      redactLog
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/npm-registry-fetch/19.1.1/79a25a680f68d9ed82ba96692e4648cccb7968b0efd1562d4faa92a3ec85fc7d/node_modules/npm-registry-fetch/lib/check-response.js
var require_check_response = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/npm-registry-fetch/19.1.1/79a25a680f68d9ed82ba96692e4648cccb7968b0efd1562d4faa92a3ec85fc7d/node_modules/npm-registry-fetch/lib/check-response.js"(exports2, module2) {
    "use strict";
    var errors2 = require_errors7();
    var { Response } = require_lib29();
    var defaultOpts = require_default_opts();
    var { log: log3 } = require_lib9();
    var { redact: cleanUrl } = require_lib30();
    var moreInfoUrl = "https://github.com/npm/cli/wiki/No-auth-for-URI,-but-auth-present-for-scoped-registry";
    var checkResponse = async ({ method, uri, res, startTime, auth, opts: opts2 }) => {
      opts2 = { ...defaultOpts, ...opts2 };
      if (res.headers.has("npm-notice") && !res.headers.has("x-local-cache")) {
        log3.notice("", res.headers.get("npm-notice"));
      }
      if (res.status >= 400) {
        logRequest(method, res, startTime);
        if (auth && auth.scopeAuthKey && !auth.token && !auth.auth) {
          log3.warn("registry", `No auth for URI, but auth present for scoped registry.

URI: ${uri}
Scoped Registry Key: ${auth.scopeAuthKey}

More info here: ${moreInfoUrl}`);
        }
        return checkErrors(method, res, startTime, opts2);
      } else {
        res.body.on("end", () => logRequest(method, res, startTime, opts2));
        if (opts2.ignoreBody) {
          res.body.resume();
          return new Response(null, res);
        }
        return res;
      }
    };
    module2.exports = checkResponse;
    function logRequest(method, res, startTime) {
      const elapsedTime = Date.now() - startTime;
      const attempt = res.headers.get("x-fetch-attempts");
      const attemptStr = attempt && attempt > 1 ? ` attempt #${attempt}` : "";
      const cacheStatus = res.headers.get("x-local-cache-status");
      const cacheStr = cacheStatus ? ` (cache ${cacheStatus})` : "";
      const urlStr = cleanUrl(res.url);
      if (cacheStatus === "hit") {
        log3.http(
          "cache",
          `${urlStr} ${elapsedTime}ms${attemptStr}${cacheStr}`
        );
      } else {
        log3.http(
          "fetch",
          `${method.toUpperCase()} ${res.status} ${urlStr} ${elapsedTime}ms${attemptStr}${cacheStr}`
        );
      }
    }
    function checkErrors(method, res, startTime, opts2) {
      return res.buffer().catch(() => null).then((body) => {
        let parsed = body;
        try {
          parsed = JSON.parse(body.toString("utf8"));
        } catch {
        }
        if (res.status === 401 && res.headers.get("www-authenticate")) {
          const auth = res.headers.get("www-authenticate").split(/,\s*/).map((s) => s.toLowerCase());
          if (auth.indexOf("ipaddress") !== -1) {
            throw new errors2.HttpErrorAuthIPAddress(
              method,
              res,
              parsed,
              opts2.spec
            );
          } else if (auth.indexOf("otp") !== -1) {
            throw new errors2.HttpErrorAuthOTP(
              method,
              res,
              parsed,
              opts2.spec
            );
          } else {
            throw new errors2.HttpErrorAuthUnknown(
              method,
              res,
              parsed,
              opts2.spec
            );
          }
        } else if (res.status === 401 && body != null && /one-time pass/.test(body.toString("utf8"))) {
          throw new errors2.HttpErrorAuthOTP(
            method,
            res,
            parsed,
            opts2.spec
          );
        } else {
          throw new errors2.HttpErrorGeneral(
            method,
            res,
            parsed,
            opts2.spec
          );
        }
      });
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/npm-package-arg/13.0.2/32180f1b348f6a82a4c439fae613557fa5806fe151c88cb644dbc2b42739d408/node_modules/npm-package-arg/lib/npa.js
var require_npa2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/npm-package-arg/13.0.2/32180f1b348f6a82a4c439fae613557fa5806fe151c88cb644dbc2b42739d408/node_modules/npm-package-arg/lib/npa.js"(exports2, module2) {
    "use strict";
    var isWindows15 = process.platform === "win32";
    var { URL: URL7 } = __require("node:url");
    var path218 = isWindows15 ? __require("node:path/win32") : __require("node:path");
    var { homedir } = __require("node:os");
    var HostedGit4 = require_lib11();
    var semver56 = require_semver2();
    var validatePackageName2 = require_lib22();
    var { log: log3 } = require_lib9();
    var hasSlashes = isWindows15 ? /\\|[/]/ : /[/]/;
    var isURL = /^(?:git[+])?[a-z]+:/i;
    var isGit = /^[^@]+@[^:.]+\.[^:]+:.+$/i;
    var isFileType = /[.](?:tgz|tar\.gz|tar)$/i;
    var isPortNumber = /:[0-9]+(\/|$)/i;
    var isWindowsFile = /^(?:[.]|~[/]|[/\\]|[a-zA-Z]:)/;
    var isPosixFile = /^(?:[.]|~[/]|[/]|[a-zA-Z]:)/;
    var defaultRegistry = "https://registry.npmjs.org";
    function npa12(arg, where) {
      let name;
      let spec;
      if (typeof arg === "object") {
        if (arg instanceof Result && (!where || where === arg.where)) {
          return arg;
        } else if (arg.name && arg.rawSpec) {
          return npa12.resolve(arg.name, arg.rawSpec, where || arg.where);
        } else {
          return npa12(arg.raw, where || arg.where);
        }
      }
      const nameEndsAt = arg.indexOf("@", 1);
      const namePart = nameEndsAt > 0 ? arg.slice(0, nameEndsAt) : arg;
      if (isURL.test(arg)) {
        spec = arg;
      } else if (isGit.test(arg)) {
        spec = `git+ssh://${arg}`;
      } else if (!namePart.startsWith("@") && (hasSlashes.test(namePart) || isFileType.test(namePart))) {
        spec = arg;
      } else if (nameEndsAt > 0) {
        name = namePart;
        spec = arg.slice(nameEndsAt + 1) || "*";
      } else {
        const valid2 = validatePackageName2(arg);
        if (valid2.validForOldPackages) {
          name = arg;
          spec = "*";
        } else {
          spec = arg;
        }
      }
      return resolve3(name, spec, where, arg);
    }
    function isFileSpec(spec) {
      if (!spec) {
        return false;
      }
      if (spec.toLowerCase().startsWith("file:")) {
        return true;
      }
      if (isWindows15) {
        return isWindowsFile.test(spec);
      }
      return isPosixFile.test(spec);
    }
    function isAliasSpec(spec) {
      if (!spec) {
        return false;
      }
      return spec.toLowerCase().startsWith("npm:");
    }
    function resolve3(name, spec, where, arg) {
      const res = new Result({
        raw: arg,
        name,
        rawSpec: spec,
        fromArgument: arg != null
      });
      if (name) {
        res.name = name;
      }
      if (!where) {
        where = process.cwd();
      }
      if (isFileSpec(spec)) {
        return fromFile(res, where);
      } else if (isAliasSpec(spec)) {
        return fromAlias(res, where);
      }
      const hosted = HostedGit4.fromUrl(spec, {
        noGitPlus: true,
        noCommittish: true
      });
      if (hosted) {
        return fromHostedGit2(res, hosted);
      } else if (spec && isURL.test(spec)) {
        return fromURL(res);
      } else if (spec && (hasSlashes.test(spec) || isFileType.test(spec))) {
        return fromFile(res, where);
      } else {
        return fromRegistry(res);
      }
    }
    function toPurl(arg, reg = defaultRegistry) {
      const res = npa12(arg);
      if (res.type !== "version") {
        throw invalidPurlType(res.type, res.raw);
      }
      let purl = "pkg:npm/" + res.name.replace(/^@/, "%40") + "@" + res.rawSpec;
      if (reg !== defaultRegistry) {
        purl += "?repository_url=" + reg;
      }
      return purl;
    }
    function invalidPackageName(name, valid2, raw) {
      const err = new Error(`Invalid package name "${name}" of package "${raw}": ${valid2.errors.join("; ")}.`);
      err.code = "EINVALIDPACKAGENAME";
      return err;
    }
    function invalidTagName(name, raw) {
      const err = new Error(`Invalid tag name "${name}" of package "${raw}": Tags may not have any characters that encodeURIComponent encodes.`);
      err.code = "EINVALIDTAGNAME";
      return err;
    }
    function invalidPurlType(type4, raw) {
      const err = new Error(`Invalid type "${type4}" of package "${raw}": Purl can only be generated for "version" types.`);
      err.code = "EINVALIDPURLTYPE";
      return err;
    }
    var Result = class {
      constructor(opts2) {
        this.type = opts2.type;
        this.registry = opts2.registry;
        this.where = opts2.where;
        if (opts2.raw == null) {
          this.raw = opts2.name ? `${opts2.name}@${opts2.rawSpec}` : opts2.rawSpec;
        } else {
          this.raw = opts2.raw;
        }
        this.name = void 0;
        this.escapedName = void 0;
        this.scope = void 0;
        this.rawSpec = opts2.rawSpec || "";
        this.saveSpec = opts2.saveSpec;
        this.fetchSpec = opts2.fetchSpec;
        if (opts2.name) {
          this.setName(opts2.name);
        }
        this.gitRange = opts2.gitRange;
        this.gitCommittish = opts2.gitCommittish;
        this.gitSubdir = opts2.gitSubdir;
        this.hosted = opts2.hosted;
      }
      // TODO move this to a getter/setter in a semver major
      setName(name) {
        const valid2 = validatePackageName2(name);
        if (!valid2.validForOldPackages) {
          throw invalidPackageName(name, valid2, this.raw);
        }
        this.name = name;
        this.scope = name[0] === "@" ? name.slice(0, name.indexOf("/")) : void 0;
        this.escapedName = name.replace("/", "%2f");
        return this;
      }
      toString() {
        const full = [];
        if (this.name != null && this.name !== "") {
          full.push(this.name);
        }
        const spec = this.saveSpec || this.fetchSpec || this.rawSpec;
        if (spec != null && spec !== "") {
          full.push(spec);
        }
        return full.length ? full.join("@") : this.raw;
      }
      toJSON() {
        const result2 = Object.assign({}, this);
        delete result2.hosted;
        return result2;
      }
    };
    function setGitAttrs(res, committish) {
      if (!committish) {
        res.gitCommittish = null;
        return;
      }
      for (const part of committish.split("::")) {
        if (!part.includes(":")) {
          if (res.gitRange) {
            throw new Error("cannot override existing semver range with a committish");
          }
          if (res.gitCommittish) {
            throw new Error("cannot override existing committish with a second committish");
          }
          res.gitCommittish = part;
          continue;
        }
        const [name, value] = part.split(":");
        if (name === "semver") {
          if (res.gitCommittish) {
            throw new Error("cannot override existing committish with a semver range");
          }
          if (res.gitRange) {
            throw new Error("cannot override existing semver range with a second semver range");
          }
          res.gitRange = decodeURIComponent(value);
          continue;
        }
        if (name === "path") {
          if (res.gitSubdir) {
            throw new Error("cannot override existing path with a second path");
          }
          res.gitSubdir = `/${value}`;
          continue;
        }
        log3.warn("npm-package-arg", `ignoring unknown key "${name}"`);
      }
    }
    var encodedPathChars = /* @__PURE__ */ new Map([
      ["\0", "%00"],
      ["	", "%09"],
      ["\n", "%0A"],
      ["\r", "%0D"],
      [" ", "%20"],
      ['"', "%22"],
      ["#", "%23"],
      ["%", "%25"],
      ["?", "%3F"],
      ["[", "%5B"],
      ["\\", isWindows15 ? "/" : "%5C"],
      ["]", "%5D"],
      ["^", "%5E"],
      ["|", "%7C"],
      ["~", "%7E"]
    ]);
    function pathToFileURL2(str2) {
      let result2 = "";
      for (let i2 = 0; i2 < str2.length; i2++) {
        result2 = `${result2}${encodedPathChars.get(str2[i2]) ?? str2[i2]}`;
      }
      if (result2.startsWith("file:")) {
        return result2;
      }
      return `file:${result2}`;
    }
    function fromFile(res, where) {
      res.type = isFileType.test(res.rawSpec) ? "file" : "directory";
      res.where = where;
      let rawSpec = pathToFileURL2(res.rawSpec);
      if (rawSpec.startsWith("file:/")) {
        if (/^file:\/\/[^/]/.test(rawSpec)) {
          rawSpec = `file:/${rawSpec.slice(5)}`;
        }
        if (/^\/{1,3}\.\.?(\/|$)/.test(rawSpec.slice(5))) {
          rawSpec = rawSpec.replace(/^file:\/{1,3}/, "file:");
        }
      }
      let resolvedUrl;
      let specUrl;
      try {
        resolvedUrl = new URL7(rawSpec, `${pathToFileURL2(path218.resolve(where))}/`);
        specUrl = new URL7(rawSpec);
      } catch (originalError) {
        const er = new Error("Invalid file: URL, must comply with RFC 8089");
        throw Object.assign(er, {
          raw: res.rawSpec,
          spec: res,
          where,
          originalError
        });
      }
      let specPath = decodeURIComponent(specUrl.pathname);
      let resolvedPath = decodeURIComponent(resolvedUrl.pathname);
      if (isWindows15) {
        specPath = specPath.replace(/^\/+([a-z]:\/)/i, "$1");
        resolvedPath = resolvedPath.replace(/^\/+([a-z]:\/)/i, "$1");
      }
      if (/^\/~(\/|$)/.test(specPath)) {
        res.saveSpec = `file:${specPath.substr(1)}`;
        resolvedPath = path218.resolve(homedir(), specPath.substr(3));
      } else if (!path218.isAbsolute(rawSpec.slice(5))) {
        res.saveSpec = `file:${path218.relative(where, resolvedPath)}`;
      } else {
        res.saveSpec = `file:${path218.resolve(resolvedPath)}`;
      }
      res.fetchSpec = path218.resolve(where, resolvedPath);
      res.saveSpec = res.saveSpec.split("\\").join("/");
      if (res.saveSpec.startsWith("file://")) {
        res.saveSpec = `file:/${res.saveSpec.slice(7)}`;
      }
      return res;
    }
    function fromHostedGit2(res, hosted) {
      res.type = "git";
      res.hosted = hosted;
      res.saveSpec = hosted.toString({ noGitPlus: false, noCommittish: false });
      res.fetchSpec = hosted.getDefaultRepresentation() === "shortcut" ? null : hosted.toString();
      setGitAttrs(res, hosted.committish);
      return res;
    }
    function unsupportedURLType(protocol, spec) {
      const err = new Error(`Unsupported URL Type "${protocol}": ${spec}`);
      err.code = "EUNSUPPORTEDPROTOCOL";
      return err;
    }
    function fromURL(res) {
      let rawSpec = res.rawSpec;
      res.saveSpec = rawSpec;
      if (rawSpec.startsWith("git+ssh:")) {
        const matched = rawSpec.match(/^git\+ssh:\/\/([^:#]+:[^#]+(?:\.git)?)(?:#(.*))?$/i);
        if (matched && !matched[1].match(isPortNumber)) {
          res.type = "git";
          setGitAttrs(res, matched[2]);
          res.fetchSpec = matched[1];
          return res;
        }
      } else if (rawSpec.startsWith("git+file://")) {
        rawSpec = rawSpec.replace(/\\/g, "/");
      }
      const parsedUrl = new URL7(rawSpec);
      switch (parsedUrl.protocol) {
        case "git:":
        case "git+http:":
        case "git+https:":
        case "git+rsync:":
        case "git+ftp:":
        case "git+file:":
        case "git+ssh:":
          res.type = "git";
          setGitAttrs(res, parsedUrl.hash.slice(1));
          if (parsedUrl.protocol === "git+file:" && /^git\+file:\/\/[a-z]:/i.test(rawSpec)) {
            res.fetchSpec = `git+file://${parsedUrl.host.toLowerCase()}:${parsedUrl.pathname}`;
          } else {
            parsedUrl.hash = "";
            res.fetchSpec = parsedUrl.toString();
          }
          if (res.fetchSpec.startsWith("git+")) {
            res.fetchSpec = res.fetchSpec.slice(4);
          }
          break;
        case "http:":
        case "https:":
          res.type = "remote";
          res.fetchSpec = res.saveSpec;
          break;
        default:
          throw unsupportedURLType(parsedUrl.protocol, rawSpec);
      }
      return res;
    }
    function fromAlias(res, where) {
      const subSpec = npa12(res.rawSpec.substr(4), where);
      if (subSpec.type === "alias") {
        throw new Error("nested aliases not supported");
      }
      if (!subSpec.registry) {
        throw new Error("aliases only work for registry deps");
      }
      if (!subSpec.name) {
        throw new Error("aliases must have a name");
      }
      res.subSpec = subSpec;
      res.registry = true;
      res.type = "alias";
      res.saveSpec = null;
      res.fetchSpec = null;
      return res;
    }
    function fromRegistry(res) {
      res.registry = true;
      const spec = res.rawSpec.trim();
      res.saveSpec = null;
      res.fetchSpec = spec;
      const version2 = semver56.valid(spec, true);
      const range = semver56.validRange(spec, true);
      if (version2) {
        res.type = "version";
      } else if (range) {
        res.type = "range";
      } else {
        if (encodeURIComponent(spec) !== spec) {
          throw invalidTagName(spec, res.raw);
        }
        res.type = "tag";
      }
      return res;
    }
    module2.exports = npa12;
    module2.exports.resolve = resolve3;
    module2.exports.toPurl = toPurl;
    module2.exports.Result = Result;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/npm-registry-fetch/19.1.1/79a25a680f68d9ed82ba96692e4648cccb7968b0efd1562d4faa92a3ec85fc7d/node_modules/npm-registry-fetch/lib/auth.js
var require_auth2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/npm-registry-fetch/19.1.1/79a25a680f68d9ed82ba96692e4648cccb7968b0efd1562d4faa92a3ec85fc7d/node_modules/npm-registry-fetch/lib/auth.js"(exports2, module2) {
    "use strict";
    var fs111 = __require("fs");
    var npa12 = require_npa2();
    var { URL: URL7 } = __require("url");
    var regFromURI = (uri, opts2) => {
      const parsed = new URL7(uri);
      let regKey = `//${parsed.host}${parsed.pathname}`;
      while (regKey.length > "//".length) {
        const authKey = hasAuth(regKey, opts2);
        if (authKey) {
          return { regKey, authKey };
        }
        regKey = regKey.replace(/([^/]+|\/)$/, "");
      }
      return { regKey: false, authKey: null };
    };
    var hasAuth = (regKey, opts2) => {
      if (opts2[`${regKey}:_authToken`]) {
        return "_authToken";
      }
      if (opts2[`${regKey}:_auth`]) {
        return "_auth";
      }
      if (opts2[`${regKey}:username`] && opts2[`${regKey}:_password`]) {
        return "username";
      }
      if (opts2[`${regKey}:certfile`] && opts2[`${regKey}:keyfile`]) {
        return "certfile";
      }
      return false;
    };
    var sameHost = (a2, b) => {
      const parsedA = new URL7(a2);
      const parsedB = new URL7(b);
      return parsedA.host === parsedB.host;
    };
    var getRegistry = (opts2) => {
      const { spec } = opts2;
      const { scope: specScope, subSpec } = spec ? npa12(spec) : {};
      const subSpecScope = subSpec && subSpec.scope;
      const scope = subSpec ? subSpecScope : specScope;
      const scopeReg = scope && opts2[`${scope}:registry`];
      return scopeReg || opts2.registry;
    };
    var maybeReadFile = (file) => {
      try {
        return fs111.readFileSync(file, "utf8");
      } catch (er) {
        if (er.code !== "ENOENT") {
          throw er;
        }
        return null;
      }
    };
    var getAuth = (uri, opts2 = {}) => {
      const { forceAuth } = opts2;
      if (!uri) {
        throw new Error("URI is required");
      }
      const { regKey, authKey } = regFromURI(uri, forceAuth || opts2);
      if (forceAuth && !regKey) {
        return new Auth({
          // if we force auth we don't want to refer back to anything in config
          regKey: false,
          authKey: null,
          scopeAuthKey: null,
          token: forceAuth._authToken || forceAuth.token,
          username: forceAuth.username,
          password: forceAuth._password || forceAuth.password,
          auth: forceAuth._auth || forceAuth.auth,
          certfile: forceAuth.certfile,
          keyfile: forceAuth.keyfile
        });
      }
      if (!regKey) {
        const registry = getRegistry(opts2);
        if (registry && uri !== registry && sameHost(uri, registry)) {
          return getAuth(registry, opts2);
        } else if (registry !== opts2.registry) {
          const { regKey: scopeAuthKey, authKey: _authKey } = regFromURI(registry, opts2);
          return new Auth({ scopeAuthKey, regKey: scopeAuthKey, authKey: _authKey });
        }
      }
      const {
        [`${regKey}:_authToken`]: token,
        [`${regKey}:username`]: username,
        [`${regKey}:_password`]: password,
        [`${regKey}:_auth`]: auth,
        [`${regKey}:certfile`]: certfile,
        [`${regKey}:keyfile`]: keyfile
      } = opts2;
      return new Auth({
        scopeAuthKey: null,
        regKey,
        authKey,
        token,
        auth,
        username,
        password,
        certfile,
        keyfile
      });
    };
    var Auth = class {
      constructor({
        token,
        auth,
        username,
        password,
        scopeAuthKey,
        certfile,
        keyfile,
        regKey,
        authKey
      }) {
        this.scopeAuthKey = scopeAuthKey;
        this.regKey = regKey;
        this.authKey = authKey;
        this.token = null;
        this.auth = null;
        this.isBasicAuth = false;
        this.cert = null;
        this.key = null;
        if (token) {
          this.token = token;
        } else if (auth) {
          this.auth = auth;
        } else if (username && password) {
          const p = Buffer.from(password, "base64").toString("utf8");
          this.auth = Buffer.from(`${username}:${p}`, "utf8").toString("base64");
          this.isBasicAuth = true;
        }
        if (certfile && keyfile) {
          const cert = maybeReadFile(certfile, "utf-8");
          const key = maybeReadFile(keyfile, "utf-8");
          if (cert && key) {
            this.cert = cert;
            this.key = key;
          }
        }
      }
    };
    module2.exports = getAuth;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/make-fetch-happen/15.0.5/5d3859dab383e894b9567bea0629a8d1ce0ad8967e3143179728bd1c76154729/node_modules/make-fetch-happen/lib/options.js
var require_options2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/make-fetch-happen/15.0.5/5d3859dab383e894b9567bea0629a8d1ce0ad8967e3143179728bd1c76154729/node_modules/make-fetch-happen/lib/options.js"(exports2, module2) {
    var dns = __require("dns");
    var conditionalHeaders = [
      "if-modified-since",
      "if-none-match",
      "if-unmodified-since",
      "if-match",
      "if-range"
    ];
    var configureOptions = (opts2) => {
      const { strictSSL, ...options } = { ...opts2 };
      options.method = options.method ? options.method.toUpperCase() : "GET";
      if (strictSSL === void 0 || strictSSL === null) {
        options.rejectUnauthorized = process.env.NODE_TLS_REJECT_UNAUTHORIZED !== "0";
      } else {
        options.rejectUnauthorized = strictSSL !== false;
      }
      if (!options.retry) {
        options.retry = { retries: 0 };
      } else if (typeof options.retry === "string") {
        const retries = parseInt(options.retry, 10);
        if (isFinite(retries)) {
          options.retry = { retries };
        } else {
          options.retry = { retries: 0 };
        }
      } else if (typeof options.retry === "number") {
        options.retry = { retries: options.retry };
      } else {
        options.retry = { retries: 0, ...options.retry };
      }
      options.dns = { ttl: 5 * 60 * 1e3, lookup: dns.lookup, ...options.dns };
      options.cache = options.cache || "default";
      if (options.cache === "default") {
        const hasConditionalHeader = Object.keys(options.headers || {}).some((name) => {
          return conditionalHeaders.includes(name.toLowerCase());
        });
        if (hasConditionalHeader) {
          options.cache = "no-store";
        }
      }
      options.cacheAdditionalHeaders = options.cacheAdditionalHeaders || [];
      if (options.cacheManager && !options.cachePath) {
        options.cachePath = options.cacheManager;
      }
      return options;
    };
    module2.exports = configureOptions;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/http-cache-semantics/4.2.0/9c0ba231f27b65a16a30b70c4e5da007415344a2c0dde60ba8c2d7ea5a651a2d/node_modules/http-cache-semantics/index.js
var require_http_cache_semantics = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/http-cache-semantics/4.2.0/9c0ba231f27b65a16a30b70c4e5da007415344a2c0dde60ba8c2d7ea5a651a2d/node_modules/http-cache-semantics/index.js"(exports2, module2) {
    "use strict";
    var statusCodeCacheableByDefault = /* @__PURE__ */ new Set([
      200,
      203,
      204,
      206,
      300,
      301,
      308,
      404,
      405,
      410,
      414,
      501
    ]);
    var understoodStatuses = /* @__PURE__ */ new Set([
      200,
      203,
      204,
      300,
      301,
      302,
      303,
      307,
      308,
      404,
      405,
      410,
      414,
      501
    ]);
    var errorStatusCodes = /* @__PURE__ */ new Set([
      500,
      502,
      503,
      504
    ]);
    var hopByHopHeaders = {
      date: true,
      // included, because we add Age update Date
      connection: true,
      "keep-alive": true,
      "proxy-authenticate": true,
      "proxy-authorization": true,
      te: true,
      trailer: true,
      "transfer-encoding": true,
      upgrade: true
    };
    var excludedFromRevalidationUpdate = {
      // Since the old body is reused, it doesn't make sense to change properties of the body
      "content-length": true,
      "content-encoding": true,
      "transfer-encoding": true,
      "content-range": true
    };
    function toNumberOrZero(s) {
      const n2 = parseInt(s, 10);
      return isFinite(n2) ? n2 : 0;
    }
    function isErrorResponse(response) {
      if (!response) {
        return true;
      }
      return errorStatusCodes.has(response.status);
    }
    function parseCacheControl(header) {
      const cc = {};
      if (!header) return cc;
      const parts = header.trim().split(/,/);
      for (const part of parts) {
        const [k2, v] = part.split(/=/, 2);
        cc[k2.trim()] = v === void 0 ? true : v.trim().replace(/^"|"$/g, "");
      }
      return cc;
    }
    function formatCacheControl(cc) {
      let parts = [];
      for (const k2 in cc) {
        const v = cc[k2];
        parts.push(v === true ? k2 : k2 + "=" + v);
      }
      if (!parts.length) {
        return void 0;
      }
      return parts.join(", ");
    }
    module2.exports = class CachePolicy {
      /**
       * Creates a new CachePolicy instance.
       * @param {HttpRequest} req - Incoming client request.
       * @param {HttpResponse} res - Received server response.
       * @param {Object} [options={}] - Configuration options.
       * @param {boolean} [options.shared=true] - Is the cache shared (a public proxy)? `false` for personal browser caches.
       * @param {number} [options.cacheHeuristic=0.1] - Fallback heuristic (age fraction) for cache duration.
       * @param {number} [options.immutableMinTimeToLive=86400000] - Minimum TTL for immutable responses in milliseconds.
       * @param {boolean} [options.ignoreCargoCult=false] - Detect nonsense cache headers, and override them.
       * @param {any} [options._fromObject] - Internal parameter for deserialization. Do not use.
       */
      constructor(req2, res, {
        shared,
        cacheHeuristic,
        immutableMinTimeToLive,
        ignoreCargoCult,
        _fromObject
      } = {}) {
        if (_fromObject) {
          this._fromObject(_fromObject);
          return;
        }
        if (!res || !res.headers) {
          throw Error("Response headers missing");
        }
        this._assertRequestHasHeaders(req2);
        this._responseTime = this.now();
        this._isShared = shared !== false;
        this._ignoreCargoCult = !!ignoreCargoCult;
        this._cacheHeuristic = void 0 !== cacheHeuristic ? cacheHeuristic : 0.1;
        this._immutableMinTtl = void 0 !== immutableMinTimeToLive ? immutableMinTimeToLive : 24 * 3600 * 1e3;
        this._status = "status" in res ? res.status : 200;
        this._resHeaders = res.headers;
        this._rescc = parseCacheControl(res.headers["cache-control"]);
        this._method = "method" in req2 ? req2.method : "GET";
        this._url = req2.url;
        this._host = req2.headers.host;
        this._noAuthorization = !req2.headers.authorization;
        this._reqHeaders = res.headers.vary ? req2.headers : null;
        this._reqcc = parseCacheControl(req2.headers["cache-control"]);
        if (this._ignoreCargoCult && "pre-check" in this._rescc && "post-check" in this._rescc) {
          delete this._rescc["pre-check"];
          delete this._rescc["post-check"];
          delete this._rescc["no-cache"];
          delete this._rescc["no-store"];
          delete this._rescc["must-revalidate"];
          this._resHeaders = Object.assign({}, this._resHeaders, {
            "cache-control": formatCacheControl(this._rescc)
          });
          delete this._resHeaders.expires;
          delete this._resHeaders.pragma;
        }
        if (res.headers["cache-control"] == null && /no-cache/.test(res.headers.pragma)) {
          this._rescc["no-cache"] = true;
        }
      }
      /**
       * You can monkey-patch it for testing.
       * @returns {number} Current time in milliseconds.
       */
      now() {
        return Date.now();
      }
      /**
       * Determines if the response is storable in a cache.
       * @returns {boolean} `false` if can never be cached.
       */
      storable() {
        return !!(!this._reqcc["no-store"] && // A cache MUST NOT store a response to any request, unless:
        // The request method is understood by the cache and defined as being cacheable, and
        ("GET" === this._method || "HEAD" === this._method || "POST" === this._method && this._hasExplicitExpiration()) && // the response status code is understood by the cache, and
        understoodStatuses.has(this._status) && // the "no-store" cache directive does not appear in request or response header fields, and
        !this._rescc["no-store"] && // the "private" response directive does not appear in the response, if the cache is shared, and
        (!this._isShared || !this._rescc.private) && // the Authorization header field does not appear in the request, if the cache is shared,
        (!this._isShared || this._noAuthorization || this._allowsStoringAuthenticated()) && // the response either:
        // contains an Expires header field, or
        (this._resHeaders.expires || // contains a max-age response directive, or
        // contains a s-maxage response directive and the cache is shared, or
        // contains a public response directive.
        this._rescc["max-age"] || this._isShared && this._rescc["s-maxage"] || this._rescc.public || // has a status code that is defined as cacheable by default
        statusCodeCacheableByDefault.has(this._status)));
      }
      /**
       * @returns {boolean} true if expiration is explicitly defined.
       */
      _hasExplicitExpiration() {
        return !!(this._isShared && this._rescc["s-maxage"] || this._rescc["max-age"] || this._resHeaders.expires);
      }
      /**
       * @param {HttpRequest} req - a request
       * @throws {Error} if the headers are missing.
       */
      _assertRequestHasHeaders(req2) {
        if (!req2 || !req2.headers) {
          throw Error("Request headers missing");
        }
      }
      /**
       * Checks if the request matches the cache and can be satisfied from the cache immediately,
       * without having to make a request to the server.
       *
       * This doesn't support `stale-while-revalidate`. See `evaluateRequest()` for a more complete solution.
       *
       * @param {HttpRequest} req - The new incoming HTTP request.
       * @returns {boolean} `true`` if the cached response used to construct this cache policy satisfies the request without revalidation.
       */
      satisfiesWithoutRevalidation(req2) {
        const result2 = this.evaluateRequest(req2);
        return !result2.revalidation;
      }
      /**
       * @param {{headers: Record<string, string>, synchronous: boolean}|undefined} revalidation - Revalidation information, if any.
       * @returns {{response: {headers: Record<string, string>}, revalidation: {headers: Record<string, string>, synchronous: boolean}|undefined}} An object with a cached response headers and revalidation info.
       */
      _evaluateRequestHitResult(revalidation) {
        return {
          response: {
            headers: this.responseHeaders()
          },
          revalidation
        };
      }
      /**
       * @param {HttpRequest} request - new incoming
       * @param {boolean} synchronous - whether revalidation must be synchronous (not s-w-r).
       * @returns {{headers: Record<string, string>, synchronous: boolean}} An object with revalidation headers and a synchronous flag.
       */
      _evaluateRequestRevalidation(request, synchronous) {
        return {
          synchronous,
          headers: this.revalidationHeaders(request)
        };
      }
      /**
       * @param {HttpRequest} request - new incoming
       * @returns {{response: undefined, revalidation: {headers: Record<string, string>, synchronous: boolean}}} An object indicating no cached response and revalidation details.
       */
      _evaluateRequestMissResult(request) {
        return {
          response: void 0,
          revalidation: this._evaluateRequestRevalidation(request, true)
        };
      }
      /**
       * Checks if the given request matches this cache entry, and how the cache can be used to satisfy it. Returns an object with:
       *
       * ```
       * {
       *     // If defined, you must send a request to the server.
       *     revalidation: {
       *         headers: {}, // HTTP headers to use when sending the revalidation response
       *         // If true, you MUST wait for a response from the server before using the cache
       *         // If false, this is stale-while-revalidate. The cache is stale, but you can use it while you update it asynchronously.
       *         synchronous: bool,
       *     },
       *     // If defined, you can use this cached response.
       *     response: {
       *         headers: {}, // Updated cached HTTP headers you must use when responding to the client
       *     },
       * }
       * ```
       * @param {HttpRequest} req - new incoming HTTP request
       * @returns {{response: {headers: Record<string, string>}|undefined, revalidation: {headers: Record<string, string>, synchronous: boolean}|undefined}} An object containing keys:
       *   - revalidation: { headers: Record<string, string>, synchronous: boolean } Set if you should send this to the origin server
       *   - response: { headers: Record<string, string> } Set if you can respond to the client with these cached headers
       */
      evaluateRequest(req2) {
        this._assertRequestHasHeaders(req2);
        if (this._rescc["must-revalidate"]) {
          return this._evaluateRequestMissResult(req2);
        }
        if (!this._requestMatches(req2, false)) {
          return this._evaluateRequestMissResult(req2);
        }
        const requestCC = parseCacheControl(req2.headers["cache-control"]);
        if (requestCC["no-cache"] || /no-cache/.test(req2.headers.pragma)) {
          return this._evaluateRequestMissResult(req2);
        }
        if (requestCC["max-age"] && this.age() > toNumberOrZero(requestCC["max-age"])) {
          return this._evaluateRequestMissResult(req2);
        }
        if (requestCC["min-fresh"] && this.maxAge() - this.age() < toNumberOrZero(requestCC["min-fresh"])) {
          return this._evaluateRequestMissResult(req2);
        }
        if (this.stale()) {
          const allowsStaleWithoutRevalidation = "max-stale" in requestCC && (true === requestCC["max-stale"] || requestCC["max-stale"] > this.age() - this.maxAge());
          if (allowsStaleWithoutRevalidation) {
            return this._evaluateRequestHitResult(void 0);
          }
          if (this.useStaleWhileRevalidate()) {
            return this._evaluateRequestHitResult(this._evaluateRequestRevalidation(req2, false));
          }
          return this._evaluateRequestMissResult(req2);
        }
        return this._evaluateRequestHitResult(void 0);
      }
      /**
       * @param {HttpRequest} req - check if this is for the same cache entry
       * @param {boolean} allowHeadMethod - allow a HEAD method to match.
       * @returns {boolean} `true` if the request matches.
       */
      _requestMatches(req2, allowHeadMethod) {
        return !!((!this._url || this._url === req2.url) && this._host === req2.headers.host && // the request method associated with the stored response allows it to be used for the presented request, and
        (!req2.method || this._method === req2.method || allowHeadMethod && "HEAD" === req2.method) && // selecting header fields nominated by the stored response (if any) match those presented, and
        this._varyMatches(req2));
      }
      /**
       * Determines whether storing authenticated responses is allowed.
       * @returns {boolean} `true` if allowed.
       */
      _allowsStoringAuthenticated() {
        return !!(this._rescc["must-revalidate"] || this._rescc.public || this._rescc["s-maxage"]);
      }
      /**
       * Checks whether the Vary header in the response matches the new request.
       * @param {HttpRequest} req - incoming HTTP request
       * @returns {boolean} `true` if the vary headers match.
       */
      _varyMatches(req2) {
        if (!this._resHeaders.vary) {
          return true;
        }
        if (this._resHeaders.vary === "*") {
          return false;
        }
        const fields = this._resHeaders.vary.trim().toLowerCase().split(/\s*,\s*/);
        for (const name of fields) {
          if (req2.headers[name] !== this._reqHeaders[name]) return false;
        }
        return true;
      }
      /**
       * Creates a copy of the given headers without any hop-by-hop headers.
       * @param {Record<string, string>} inHeaders - old headers from the cached response
       * @returns {Record<string, string>} A new headers object without hop-by-hop headers.
       */
      _copyWithoutHopByHopHeaders(inHeaders) {
        const headers = {};
        for (const name in inHeaders) {
          if (hopByHopHeaders[name]) continue;
          headers[name] = inHeaders[name];
        }
        if (inHeaders.connection) {
          const tokens = inHeaders.connection.trim().split(/\s*,\s*/);
          for (const name of tokens) {
            delete headers[name];
          }
        }
        if (headers.warning) {
          const warnings = headers.warning.split(/,/).filter((warning) => {
            return !/^\s*1[0-9][0-9]/.test(warning);
          });
          if (!warnings.length) {
            delete headers.warning;
          } else {
            headers.warning = warnings.join(",").trim();
          }
        }
        return headers;
      }
      /**
       * Returns the response headers adjusted for serving the cached response.
       * Removes hop-by-hop headers and updates the Age and Date headers.
       * @returns {Record<string, string>} The adjusted response headers.
       */
      responseHeaders() {
        const headers = this._copyWithoutHopByHopHeaders(this._resHeaders);
        const age = this.age();
        if (age > 3600 * 24 && !this._hasExplicitExpiration() && this.maxAge() > 3600 * 24) {
          headers.warning = (headers.warning ? `${headers.warning}, ` : "") + '113 - "rfc7234 5.5.4"';
        }
        headers.age = `${Math.round(age)}`;
        headers.date = new Date(this.now()).toUTCString();
        return headers;
      }
      /**
       * Returns the Date header value from the response or the current time if invalid.
       * @returns {number} Timestamp (in milliseconds) representing the Date header or response time.
       */
      date() {
        const serverDate = Date.parse(this._resHeaders.date);
        if (isFinite(serverDate)) {
          return serverDate;
        }
        return this._responseTime;
      }
      /**
       * Value of the Age header, in seconds, updated for the current time.
       * May be fractional.
       * @returns {number} The age in seconds.
       */
      age() {
        let age = this._ageValue();
        const residentTime = (this.now() - this._responseTime) / 1e3;
        return age + residentTime;
      }
      /**
       * @returns {number} The Age header value as a number.
       */
      _ageValue() {
        return toNumberOrZero(this._resHeaders.age);
      }
      /**
       * Possibly outdated value of applicable max-age (or heuristic equivalent) in seconds.
       * This counts since response's `Date`.
       *
       * For an up-to-date value, see `timeToLive()`.
       *
       * Returns the maximum age (freshness lifetime) of the response in seconds.
       * @returns {number} The max-age value in seconds.
       */
      maxAge() {
        if (!this.storable() || this._rescc["no-cache"]) {
          return 0;
        }
        if (this._isShared && (this._resHeaders["set-cookie"] && !this._rescc.public && !this._rescc.immutable)) {
          return 0;
        }
        if (this._resHeaders.vary === "*") {
          return 0;
        }
        if (this._isShared) {
          if (this._rescc["proxy-revalidate"]) {
            return 0;
          }
          if (this._rescc["s-maxage"]) {
            return toNumberOrZero(this._rescc["s-maxage"]);
          }
        }
        if (this._rescc["max-age"]) {
          return toNumberOrZero(this._rescc["max-age"]);
        }
        const defaultMinTtl = this._rescc.immutable ? this._immutableMinTtl : 0;
        const serverDate = this.date();
        if (this._resHeaders.expires) {
          const expires = Date.parse(this._resHeaders.expires);
          if (Number.isNaN(expires) || expires < serverDate) {
            return 0;
          }
          return Math.max(defaultMinTtl, (expires - serverDate) / 1e3);
        }
        if (this._resHeaders["last-modified"]) {
          const lastModified = Date.parse(this._resHeaders["last-modified"]);
          if (isFinite(lastModified) && serverDate > lastModified) {
            return Math.max(
              defaultMinTtl,
              (serverDate - lastModified) / 1e3 * this._cacheHeuristic
            );
          }
        }
        return defaultMinTtl;
      }
      /**
       * Remaining time this cache entry may be useful for, in *milliseconds*.
       * You can use this as an expiration time for your cache storage.
       *
       * Prefer this method over `maxAge()`, because it includes other factors like `age` and `stale-while-revalidate`.
       * @returns {number} Time-to-live in milliseconds.
       */
      timeToLive() {
        const age = this.maxAge() - this.age();
        const staleIfErrorAge = age + toNumberOrZero(this._rescc["stale-if-error"]);
        const staleWhileRevalidateAge = age + toNumberOrZero(this._rescc["stale-while-revalidate"]);
        return Math.round(Math.max(0, age, staleIfErrorAge, staleWhileRevalidateAge) * 1e3);
      }
      /**
       * If true, this cache entry is past its expiration date.
       * Note that stale cache may be useful sometimes, see `evaluateRequest()`.
       * @returns {boolean} `false` doesn't mean it's fresh nor usable
       */
      stale() {
        return this.maxAge() <= this.age();
      }
      /**
       * @returns {boolean} `true` if `stale-if-error` condition allows use of a stale response.
       */
      _useStaleIfError() {
        return this.maxAge() + toNumberOrZero(this._rescc["stale-if-error"]) > this.age();
      }
      /** See `evaluateRequest()` for a more complete solution
       * @returns {boolean} `true` if `stale-while-revalidate` is currently allowed.
       */
      useStaleWhileRevalidate() {
        const swr = toNumberOrZero(this._rescc["stale-while-revalidate"]);
        return swr > 0 && this.maxAge() + swr > this.age();
      }
      /**
       * Creates a `CachePolicy` instance from a serialized object.
       * @param {Object} obj - The serialized object.
       * @returns {CachePolicy} A new CachePolicy instance.
       */
      static fromObject(obj) {
        return new this(void 0, void 0, { _fromObject: obj });
      }
      /**
       * @param {any} obj - The serialized object.
       * @throws {Error} If already initialized or if the object is invalid.
       */
      _fromObject(obj) {
        if (this._responseTime) throw Error("Reinitialized");
        if (!obj || obj.v !== 1) throw Error("Invalid serialization");
        this._responseTime = obj.t;
        this._isShared = obj.sh;
        this._cacheHeuristic = obj.ch;
        this._immutableMinTtl = obj.imm !== void 0 ? obj.imm : 24 * 3600 * 1e3;
        this._ignoreCargoCult = !!obj.icc;
        this._status = obj.st;
        this._resHeaders = obj.resh;
        this._rescc = obj.rescc;
        this._method = obj.m;
        this._url = obj.u;
        this._host = obj.h;
        this._noAuthorization = obj.a;
        this._reqHeaders = obj.reqh;
        this._reqcc = obj.reqcc;
      }
      /**
       * Serializes the `CachePolicy` instance into a JSON-serializable object.
       * @returns {Object} The serialized object.
       */
      toObject() {
        return {
          v: 1,
          t: this._responseTime,
          sh: this._isShared,
          ch: this._cacheHeuristic,
          imm: this._immutableMinTtl,
          icc: this._ignoreCargoCult,
          st: this._status,
          resh: this._resHeaders,
          rescc: this._rescc,
          m: this._method,
          u: this._url,
          h: this._host,
          a: this._noAuthorization,
          reqh: this._reqHeaders,
          reqcc: this._reqcc
        };
      }
      /**
       * Headers for sending to the origin server to revalidate stale response.
       * Allows server to return 304 to allow reuse of the previous response.
       *
       * Hop by hop headers are always stripped.
       * Revalidation headers may be added or removed, depending on request.
       * @param {HttpRequest} incomingReq - The incoming HTTP request.
       * @returns {Record<string, string>} The headers for the revalidation request.
       */
      revalidationHeaders(incomingReq) {
        this._assertRequestHasHeaders(incomingReq);
        const headers = this._copyWithoutHopByHopHeaders(incomingReq.headers);
        delete headers["if-range"];
        if (!this._requestMatches(incomingReq, true) || !this.storable()) {
          delete headers["if-none-match"];
          delete headers["if-modified-since"];
          return headers;
        }
        if (this._resHeaders.etag) {
          headers["if-none-match"] = headers["if-none-match"] ? `${headers["if-none-match"]}, ${this._resHeaders.etag}` : this._resHeaders.etag;
        }
        const forbidsWeakValidators = headers["accept-ranges"] || headers["if-match"] || headers["if-unmodified-since"] || this._method && this._method != "GET";
        if (forbidsWeakValidators) {
          delete headers["if-modified-since"];
          if (headers["if-none-match"]) {
            const etags = headers["if-none-match"].split(/,/).filter((etag) => {
              return !/^\s*W\//.test(etag);
            });
            if (!etags.length) {
              delete headers["if-none-match"];
            } else {
              headers["if-none-match"] = etags.join(",").trim();
            }
          }
        } else if (this._resHeaders["last-modified"] && !headers["if-modified-since"]) {
          headers["if-modified-since"] = this._resHeaders["last-modified"];
        }
        return headers;
      }
      /**
       * Creates new CachePolicy with information combined from the previews response,
       * and the new revalidation response.
       *
       * Returns {policy, modified} where modified is a boolean indicating
       * whether the response body has been modified, and old cached body can't be used.
       *
       * @param {HttpRequest} request - The latest HTTP request asking for the cached entry.
       * @param {HttpResponse} response - The latest revalidation HTTP response from the origin server.
       * @returns {{policy: CachePolicy, modified: boolean, matches: boolean}} The updated policy and modification status.
       * @throws {Error} If the response headers are missing.
       */
      revalidatedPolicy(request, response) {
        this._assertRequestHasHeaders(request);
        if (this._useStaleIfError() && isErrorResponse(response)) {
          return {
            policy: this,
            modified: false,
            matches: true
          };
        }
        if (!response || !response.headers) {
          throw Error("Response headers missing");
        }
        let matches2 = false;
        if (response.status !== void 0 && response.status != 304) {
          matches2 = false;
        } else if (response.headers.etag && !/^\s*W\//.test(response.headers.etag)) {
          matches2 = this._resHeaders.etag && this._resHeaders.etag.replace(/^\s*W\//, "") === response.headers.etag;
        } else if (this._resHeaders.etag && response.headers.etag) {
          matches2 = this._resHeaders.etag.replace(/^\s*W\//, "") === response.headers.etag.replace(/^\s*W\//, "");
        } else if (this._resHeaders["last-modified"]) {
          matches2 = this._resHeaders["last-modified"] === response.headers["last-modified"];
        } else {
          if (!this._resHeaders.etag && !this._resHeaders["last-modified"] && !response.headers.etag && !response.headers["last-modified"]) {
            matches2 = true;
          }
        }
        const optionsCopy = {
          shared: this._isShared,
          cacheHeuristic: this._cacheHeuristic,
          immutableMinTimeToLive: this._immutableMinTtl,
          ignoreCargoCult: this._ignoreCargoCult
        };
        if (!matches2) {
          return {
            policy: new this.constructor(request, response, optionsCopy),
            // Client receiving 304 without body, even if it's invalid/mismatched has no option
            // but to reuse a cached body. We don't have a good way to tell clients to do
            // error recovery in such case.
            modified: response.status != 304,
            matches: false
          };
        }
        const headers = {};
        for (const k2 in this._resHeaders) {
          headers[k2] = k2 in response.headers && !excludedFromRevalidationUpdate[k2] ? response.headers[k2] : this._resHeaders[k2];
        }
        const newResponse = Object.assign({}, response, {
          status: this._status,
          method: this._method,
          headers
        });
        return {
          policy: new this.constructor(request, newResponse, optionsCopy),
          modified: false,
          matches: true
        };
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/negotiator/1.0.0/942118d0c8072b93440ee4e06590f00c2213076f3a458c319bdbf4267bd5f35e/node_modules/negotiator/lib/charset.js
var require_charset = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/negotiator/1.0.0/942118d0c8072b93440ee4e06590f00c2213076f3a458c319bdbf4267bd5f35e/node_modules/negotiator/lib/charset.js"(exports2, module2) {
    "use strict";
    module2.exports = preferredCharsets;
    module2.exports.preferredCharsets = preferredCharsets;
    var simpleCharsetRegExp = /^\s*([^\s;]+)\s*(?:;(.*))?$/;
    function parseAcceptCharset(accept) {
      var accepts = accept.split(",");
      for (var i2 = 0, j2 = 0; i2 < accepts.length; i2++) {
        var charset = parseCharset(accepts[i2].trim(), i2);
        if (charset) {
          accepts[j2++] = charset;
        }
      }
      accepts.length = j2;
      return accepts;
    }
    function parseCharset(str2, i2) {
      var match = simpleCharsetRegExp.exec(str2);
      if (!match) return null;
      var charset = match[1];
      var q = 1;
      if (match[2]) {
        var params = match[2].split(";");
        for (var j2 = 0; j2 < params.length; j2++) {
          var p = params[j2].trim().split("=");
          if (p[0] === "q") {
            q = parseFloat(p[1]);
            break;
          }
        }
      }
      return {
        charset,
        q,
        i: i2
      };
    }
    function getCharsetPriority(charset, accepted, index) {
      var priority = { o: -1, q: 0, s: 0 };
      for (var i2 = 0; i2 < accepted.length; i2++) {
        var spec = specify(charset, accepted[i2], index);
        if (spec && (priority.s - spec.s || priority.q - spec.q || priority.o - spec.o) < 0) {
          priority = spec;
        }
      }
      return priority;
    }
    function specify(charset, spec, index) {
      var s = 0;
      if (spec.charset.toLowerCase() === charset.toLowerCase()) {
        s |= 1;
      } else if (spec.charset !== "*") {
        return null;
      }
      return {
        i: index,
        o: spec.i,
        q: spec.q,
        s
      };
    }
    function preferredCharsets(accept, provided) {
      var accepts = parseAcceptCharset(accept === void 0 ? "*" : accept || "");
      if (!provided) {
        return accepts.filter(isQuality).sort(compareSpecs).map(getFullCharset);
      }
      var priorities = provided.map(function getPriority(type4, index) {
        return getCharsetPriority(type4, accepts, index);
      });
      return priorities.filter(isQuality).sort(compareSpecs).map(function getCharset(priority) {
        return provided[priorities.indexOf(priority)];
      });
    }
    function compareSpecs(a2, b) {
      return b.q - a2.q || b.s - a2.s || a2.o - b.o || a2.i - b.i || 0;
    }
    function getFullCharset(spec) {
      return spec.charset;
    }
    function isQuality(spec) {
      return spec.q > 0;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/negotiator/1.0.0/942118d0c8072b93440ee4e06590f00c2213076f3a458c319bdbf4267bd5f35e/node_modules/negotiator/lib/encoding.js
var require_encoding2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/negotiator/1.0.0/942118d0c8072b93440ee4e06590f00c2213076f3a458c319bdbf4267bd5f35e/node_modules/negotiator/lib/encoding.js"(exports2, module2) {
    "use strict";
    module2.exports = preferredEncodings;
    module2.exports.preferredEncodings = preferredEncodings;
    var simpleEncodingRegExp = /^\s*([^\s;]+)\s*(?:;(.*))?$/;
    function parseAcceptEncoding(accept) {
      var accepts = accept.split(",");
      var hasIdentity = false;
      var minQuality = 1;
      for (var i2 = 0, j2 = 0; i2 < accepts.length; i2++) {
        var encoding = parseEncoding(accepts[i2].trim(), i2);
        if (encoding) {
          accepts[j2++] = encoding;
          hasIdentity = hasIdentity || specify("identity", encoding);
          minQuality = Math.min(minQuality, encoding.q || 1);
        }
      }
      if (!hasIdentity) {
        accepts[j2++] = {
          encoding: "identity",
          q: minQuality,
          i: i2
        };
      }
      accepts.length = j2;
      return accepts;
    }
    function parseEncoding(str2, i2) {
      var match = simpleEncodingRegExp.exec(str2);
      if (!match) return null;
      var encoding = match[1];
      var q = 1;
      if (match[2]) {
        var params = match[2].split(";");
        for (var j2 = 0; j2 < params.length; j2++) {
          var p = params[j2].trim().split("=");
          if (p[0] === "q") {
            q = parseFloat(p[1]);
            break;
          }
        }
      }
      return {
        encoding,
        q,
        i: i2
      };
    }
    function getEncodingPriority(encoding, accepted, index) {
      var priority = { encoding, o: -1, q: 0, s: 0 };
      for (var i2 = 0; i2 < accepted.length; i2++) {
        var spec = specify(encoding, accepted[i2], index);
        if (spec && (priority.s - spec.s || priority.q - spec.q || priority.o - spec.o) < 0) {
          priority = spec;
        }
      }
      return priority;
    }
    function specify(encoding, spec, index) {
      var s = 0;
      if (spec.encoding.toLowerCase() === encoding.toLowerCase()) {
        s |= 1;
      } else if (spec.encoding !== "*") {
        return null;
      }
      return {
        encoding,
        i: index,
        o: spec.i,
        q: spec.q,
        s
      };
    }
    function preferredEncodings(accept, provided, preferred) {
      var accepts = parseAcceptEncoding(accept || "");
      var comparator = preferred ? function comparator2(a2, b) {
        if (a2.q !== b.q) {
          return b.q - a2.q;
        }
        var aPreferred = preferred.indexOf(a2.encoding);
        var bPreferred = preferred.indexOf(b.encoding);
        if (aPreferred === -1 && bPreferred === -1) {
          return b.s - a2.s || a2.o - b.o || a2.i - b.i;
        }
        if (aPreferred !== -1 && bPreferred !== -1) {
          return aPreferred - bPreferred;
        }
        return aPreferred === -1 ? 1 : -1;
      } : compareSpecs;
      if (!provided) {
        return accepts.filter(isQuality).sort(comparator).map(getFullEncoding);
      }
      var priorities = provided.map(function getPriority(type4, index) {
        return getEncodingPriority(type4, accepts, index);
      });
      return priorities.filter(isQuality).sort(comparator).map(function getEncoding(priority) {
        return provided[priorities.indexOf(priority)];
      });
    }
    function compareSpecs(a2, b) {
      return b.q - a2.q || b.s - a2.s || a2.o - b.o || a2.i - b.i;
    }
    function getFullEncoding(spec) {
      return spec.encoding;
    }
    function isQuality(spec) {
      return spec.q > 0;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/negotiator/1.0.0/942118d0c8072b93440ee4e06590f00c2213076f3a458c319bdbf4267bd5f35e/node_modules/negotiator/lib/language.js
var require_language = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/negotiator/1.0.0/942118d0c8072b93440ee4e06590f00c2213076f3a458c319bdbf4267bd5f35e/node_modules/negotiator/lib/language.js"(exports2, module2) {
    "use strict";
    module2.exports = preferredLanguages;
    module2.exports.preferredLanguages = preferredLanguages;
    var simpleLanguageRegExp = /^\s*([^\s\-;]+)(?:-([^\s;]+))?\s*(?:;(.*))?$/;
    function parseAcceptLanguage(accept) {
      var accepts = accept.split(",");
      for (var i2 = 0, j2 = 0; i2 < accepts.length; i2++) {
        var language = parseLanguage(accepts[i2].trim(), i2);
        if (language) {
          accepts[j2++] = language;
        }
      }
      accepts.length = j2;
      return accepts;
    }
    function parseLanguage(str2, i2) {
      var match = simpleLanguageRegExp.exec(str2);
      if (!match) return null;
      var prefix = match[1];
      var suffix = match[2];
      var full = prefix;
      if (suffix) full += "-" + suffix;
      var q = 1;
      if (match[3]) {
        var params = match[3].split(";");
        for (var j2 = 0; j2 < params.length; j2++) {
          var p = params[j2].split("=");
          if (p[0] === "q") q = parseFloat(p[1]);
        }
      }
      return {
        prefix,
        suffix,
        q,
        i: i2,
        full
      };
    }
    function getLanguagePriority(language, accepted, index) {
      var priority = { o: -1, q: 0, s: 0 };
      for (var i2 = 0; i2 < accepted.length; i2++) {
        var spec = specify(language, accepted[i2], index);
        if (spec && (priority.s - spec.s || priority.q - spec.q || priority.o - spec.o) < 0) {
          priority = spec;
        }
      }
      return priority;
    }
    function specify(language, spec, index) {
      var p = parseLanguage(language);
      if (!p) return null;
      var s = 0;
      if (spec.full.toLowerCase() === p.full.toLowerCase()) {
        s |= 4;
      } else if (spec.prefix.toLowerCase() === p.full.toLowerCase()) {
        s |= 2;
      } else if (spec.full.toLowerCase() === p.prefix.toLowerCase()) {
        s |= 1;
      } else if (spec.full !== "*") {
        return null;
      }
      return {
        i: index,
        o: spec.i,
        q: spec.q,
        s
      };
    }
    function preferredLanguages(accept, provided) {
      var accepts = parseAcceptLanguage(accept === void 0 ? "*" : accept || "");
      if (!provided) {
        return accepts.filter(isQuality).sort(compareSpecs).map(getFullLanguage);
      }
      var priorities = provided.map(function getPriority(type4, index) {
        return getLanguagePriority(type4, accepts, index);
      });
      return priorities.filter(isQuality).sort(compareSpecs).map(function getLanguage(priority) {
        return provided[priorities.indexOf(priority)];
      });
    }
    function compareSpecs(a2, b) {
      return b.q - a2.q || b.s - a2.s || a2.o - b.o || a2.i - b.i || 0;
    }
    function getFullLanguage(spec) {
      return spec.full;
    }
    function isQuality(spec) {
      return spec.q > 0;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/negotiator/1.0.0/942118d0c8072b93440ee4e06590f00c2213076f3a458c319bdbf4267bd5f35e/node_modules/negotiator/lib/mediaType.js
var require_mediaType = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/negotiator/1.0.0/942118d0c8072b93440ee4e06590f00c2213076f3a458c319bdbf4267bd5f35e/node_modules/negotiator/lib/mediaType.js"(exports2, module2) {
    "use strict";
    module2.exports = preferredMediaTypes;
    module2.exports.preferredMediaTypes = preferredMediaTypes;
    var simpleMediaTypeRegExp = /^\s*([^\s\/;]+)\/([^;\s]+)\s*(?:;(.*))?$/;
    function parseAccept(accept) {
      var accepts = splitMediaTypes(accept);
      for (var i2 = 0, j2 = 0; i2 < accepts.length; i2++) {
        var mediaType = parseMediaType(accepts[i2].trim(), i2);
        if (mediaType) {
          accepts[j2++] = mediaType;
        }
      }
      accepts.length = j2;
      return accepts;
    }
    function parseMediaType(str2, i2) {
      var match = simpleMediaTypeRegExp.exec(str2);
      if (!match) return null;
      var params = /* @__PURE__ */ Object.create(null);
      var q = 1;
      var subtype = match[2];
      var type4 = match[1];
      if (match[3]) {
        var kvps = splitParameters(match[3]).map(splitKeyValuePair);
        for (var j2 = 0; j2 < kvps.length; j2++) {
          var pair = kvps[j2];
          var key = pair[0].toLowerCase();
          var val = pair[1];
          var value = val && val[0] === '"' && val[val.length - 1] === '"' ? val.slice(1, -1) : val;
          if (key === "q") {
            q = parseFloat(value);
            break;
          }
          params[key] = value;
        }
      }
      return {
        type: type4,
        subtype,
        params,
        q,
        i: i2
      };
    }
    function getMediaTypePriority(type4, accepted, index) {
      var priority = { o: -1, q: 0, s: 0 };
      for (var i2 = 0; i2 < accepted.length; i2++) {
        var spec = specify(type4, accepted[i2], index);
        if (spec && (priority.s - spec.s || priority.q - spec.q || priority.o - spec.o) < 0) {
          priority = spec;
        }
      }
      return priority;
    }
    function specify(type4, spec, index) {
      var p = parseMediaType(type4);
      var s = 0;
      if (!p) {
        return null;
      }
      if (spec.type.toLowerCase() == p.type.toLowerCase()) {
        s |= 4;
      } else if (spec.type != "*") {
        return null;
      }
      if (spec.subtype.toLowerCase() == p.subtype.toLowerCase()) {
        s |= 2;
      } else if (spec.subtype != "*") {
        return null;
      }
      var keys4 = Object.keys(spec.params);
      if (keys4.length > 0) {
        if (keys4.every(function(k2) {
          return spec.params[k2] == "*" || (spec.params[k2] || "").toLowerCase() == (p.params[k2] || "").toLowerCase();
        })) {
          s |= 1;
        } else {
          return null;
        }
      }
      return {
        i: index,
        o: spec.i,
        q: spec.q,
        s
      };
    }
    function preferredMediaTypes(accept, provided) {
      var accepts = parseAccept(accept === void 0 ? "*/*" : accept || "");
      if (!provided) {
        return accepts.filter(isQuality).sort(compareSpecs).map(getFullType);
      }
      var priorities = provided.map(function getPriority(type4, index) {
        return getMediaTypePriority(type4, accepts, index);
      });
      return priorities.filter(isQuality).sort(compareSpecs).map(function getType(priority) {
        return provided[priorities.indexOf(priority)];
      });
    }
    function compareSpecs(a2, b) {
      return b.q - a2.q || b.s - a2.s || a2.o - b.o || a2.i - b.i || 0;
    }
    function getFullType(spec) {
      return spec.type + "/" + spec.subtype;
    }
    function isQuality(spec) {
      return spec.q > 0;
    }
    function quoteCount(string) {
      var count2 = 0;
      var index = 0;
      while ((index = string.indexOf('"', index)) !== -1) {
        count2++;
        index++;
      }
      return count2;
    }
    function splitKeyValuePair(str2) {
      var index = str2.indexOf("=");
      var key;
      var val;
      if (index === -1) {
        key = str2;
      } else {
        key = str2.slice(0, index);
        val = str2.slice(index + 1);
      }
      return [key, val];
    }
    function splitMediaTypes(accept) {
      var accepts = accept.split(",");
      for (var i2 = 1, j2 = 0; i2 < accepts.length; i2++) {
        if (quoteCount(accepts[j2]) % 2 == 0) {
          accepts[++j2] = accepts[i2];
        } else {
          accepts[j2] += "," + accepts[i2];
        }
      }
      accepts.length = j2 + 1;
      return accepts;
    }
    function splitParameters(str2) {
      var parameters = str2.split(";");
      for (var i2 = 1, j2 = 0; i2 < parameters.length; i2++) {
        if (quoteCount(parameters[j2]) % 2 == 0) {
          parameters[++j2] = parameters[i2];
        } else {
          parameters[j2] += ";" + parameters[i2];
        }
      }
      parameters.length = j2 + 1;
      for (var i2 = 0; i2 < parameters.length; i2++) {
        parameters[i2] = parameters[i2].trim();
      }
      return parameters;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/negotiator/1.0.0/942118d0c8072b93440ee4e06590f00c2213076f3a458c319bdbf4267bd5f35e/node_modules/negotiator/index.js
var require_negotiator = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/negotiator/1.0.0/942118d0c8072b93440ee4e06590f00c2213076f3a458c319bdbf4267bd5f35e/node_modules/negotiator/index.js"(exports2, module2) {
    "use strict";
    var preferredCharsets = require_charset();
    var preferredEncodings = require_encoding2();
    var preferredLanguages = require_language();
    var preferredMediaTypes = require_mediaType();
    module2.exports = Negotiator;
    module2.exports.Negotiator = Negotiator;
    function Negotiator(request) {
      if (!(this instanceof Negotiator)) {
        return new Negotiator(request);
      }
      this.request = request;
    }
    Negotiator.prototype.charset = function charset(available) {
      var set2 = this.charsets(available);
      return set2 && set2[0];
    };
    Negotiator.prototype.charsets = function charsets(available) {
      return preferredCharsets(this.request.headers["accept-charset"], available);
    };
    Negotiator.prototype.encoding = function encoding(available, opts2) {
      var set2 = this.encodings(available, opts2);
      return set2 && set2[0];
    };
    Negotiator.prototype.encodings = function encodings(available, options) {
      var opts2 = options || {};
      return preferredEncodings(this.request.headers["accept-encoding"], available, opts2.preferred);
    };
    Negotiator.prototype.language = function language(available) {
      var set2 = this.languages(available);
      return set2 && set2[0];
    };
    Negotiator.prototype.languages = function languages(available) {
      return preferredLanguages(this.request.headers["accept-language"], available);
    };
    Negotiator.prototype.mediaType = function mediaType(available) {
      var set2 = this.mediaTypes(available);
      return set2 && set2[0];
    };
    Negotiator.prototype.mediaTypes = function mediaTypes(available) {
      return preferredMediaTypes(this.request.headers.accept, available);
    };
    Negotiator.prototype.preferredCharset = Negotiator.prototype.charset;
    Negotiator.prototype.preferredCharsets = Negotiator.prototype.charsets;
    Negotiator.prototype.preferredEncoding = Negotiator.prototype.encoding;
    Negotiator.prototype.preferredEncodings = Negotiator.prototype.encodings;
    Negotiator.prototype.preferredLanguage = Negotiator.prototype.language;
    Negotiator.prototype.preferredLanguages = Negotiator.prototype.languages;
    Negotiator.prototype.preferredMediaType = Negotiator.prototype.mediaType;
    Negotiator.prototype.preferredMediaTypes = Negotiator.prototype.mediaTypes;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/make-fetch-happen/15.0.5/5d3859dab383e894b9567bea0629a8d1ce0ad8967e3143179728bd1c76154729/node_modules/make-fetch-happen/lib/cache/policy.js
var require_policy = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/make-fetch-happen/15.0.5/5d3859dab383e894b9567bea0629a8d1ce0ad8967e3143179728bd1c76154729/node_modules/make-fetch-happen/lib/cache/policy.js"(exports2, module2) {
    var CacheSemantics = require_http_cache_semantics();
    var Negotiator = require_negotiator();
    var ssri6 = require_lib6();
    var policyOptions = {
      shared: false,
      ignoreCargoCult: true
    };
    var emptyResponse = { status: 200, headers: {} };
    var requestObject = (request) => {
      const _obj = {
        method: request.method,
        url: request.url,
        headers: {},
        compress: request.compress
      };
      request.headers.forEach((value, key) => {
        _obj.headers[key] = value;
      });
      return _obj;
    };
    var responseObject = (response) => {
      const _obj = {
        status: response.status,
        headers: {}
      };
      response.headers.forEach((value, key) => {
        _obj.headers[key] = value;
      });
      return _obj;
    };
    var CachePolicy = class {
      constructor({ entry, request, response, options }) {
        this.entry = entry;
        this.request = requestObject(request);
        this.response = responseObject(response);
        this.options = options;
        this.policy = new CacheSemantics(this.request, this.response, policyOptions);
        if (this.entry) {
          this.policy._responseTime = this.entry.metadata.time;
        }
      }
      // static method to quickly determine if a request alone is storable
      static storable(request, options) {
        if (!options.cachePath) {
          return false;
        }
        if (options.cache === "no-store") {
          return false;
        }
        if (!["GET", "HEAD"].includes(request.method)) {
          return false;
        }
        const policy = new CacheSemantics(requestObject(request), emptyResponse, policyOptions);
        return policy.storable();
      }
      // returns true if the policy satisfies the request
      satisfies(request) {
        const _req = requestObject(request);
        if (this.request.headers.host !== _req.headers.host) {
          return false;
        }
        if (this.request.compress !== _req.compress) {
          return false;
        }
        const negotiatorA = new Negotiator(this.request);
        const negotiatorB = new Negotiator(_req);
        if (JSON.stringify(negotiatorA.mediaTypes()) !== JSON.stringify(negotiatorB.mediaTypes())) {
          return false;
        }
        if (JSON.stringify(negotiatorA.languages()) !== JSON.stringify(negotiatorB.languages())) {
          return false;
        }
        if (JSON.stringify(negotiatorA.encodings()) !== JSON.stringify(negotiatorB.encodings())) {
          return false;
        }
        if (this.options.integrity) {
          return ssri6.parse(this.options.integrity).match(this.entry.integrity);
        }
        return true;
      }
      // returns true if the request and response allow caching
      storable() {
        return this.policy.storable();
      }
      // NOTE: this is a hack to avoid parsing the cache-control
      // header ourselves, it returns true if the response's
      // cache-control contains must-revalidate
      get mustRevalidate() {
        return !!this.policy._rescc["must-revalidate"];
      }
      // returns true if the cached response requires revalidation
      // for the given request
      needsRevalidation(request) {
        const _req = requestObject(request);
        _req.method = "GET";
        return !this.policy.satisfiesWithoutRevalidation(_req);
      }
      responseHeaders() {
        return this.policy.responseHeaders();
      }
      // returns a new object containing the appropriate headers
      // to send a revalidation request
      revalidationHeaders(request) {
        const _req = requestObject(request);
        return this.policy.revalidationHeaders(_req);
      }
      // returns true if the request/response was revalidated
      // successfully. returns false if a new response was received
      revalidated(request, response) {
        const _req = requestObject(request);
        const _res = responseObject(response);
        const policy = this.policy.revalidatedPolicy(_req, _res);
        return !policy.modified;
      }
    };
    module2.exports = CachePolicy;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/make-fetch-happen/15.0.5/5d3859dab383e894b9567bea0629a8d1ce0ad8967e3143179728bd1c76154729/node_modules/make-fetch-happen/lib/cache/errors.js
var require_errors8 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/make-fetch-happen/15.0.5/5d3859dab383e894b9567bea0629a8d1ce0ad8967e3143179728bd1c76154729/node_modules/make-fetch-happen/lib/cache/errors.js"(exports2, module2) {
    var NotCachedError = class extends Error {
      constructor(url7) {
        super(`request to ${url7} failed: cache mode is 'only-if-cached' but no cached response is available.`);
        this.code = "ENOTCACHED";
      }
    };
    module2.exports = {
      NotCachedError
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/minipass/3.3.6/b0ecfa20f1a9f03b76f728a076257742bd0337c03708e018d6cb5f2779177023/node_modules/minipass/index.js
var require_minipass = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/minipass/3.3.6/b0ecfa20f1a9f03b76f728a076257742bd0337c03708e018d6cb5f2779177023/node_modules/minipass/index.js"(exports2, module2) {
    "use strict";
    var proc = typeof process === "object" && process ? process : {
      stdout: null,
      stderr: null
    };
    var EE = __require("events");
    var Stream = __require("stream");
    var SD = __require("string_decoder").StringDecoder;
    var EOF = /* @__PURE__ */ Symbol("EOF");
    var MAYBE_EMIT_END = /* @__PURE__ */ Symbol("maybeEmitEnd");
    var EMITTED_END = /* @__PURE__ */ Symbol("emittedEnd");
    var EMITTING_END = /* @__PURE__ */ Symbol("emittingEnd");
    var EMITTED_ERROR = /* @__PURE__ */ Symbol("emittedError");
    var CLOSED = /* @__PURE__ */ Symbol("closed");
    var READ = /* @__PURE__ */ Symbol("read");
    var FLUSH = /* @__PURE__ */ Symbol("flush");
    var FLUSHCHUNK = /* @__PURE__ */ Symbol("flushChunk");
    var ENCODING = /* @__PURE__ */ Symbol("encoding");
    var DECODER = /* @__PURE__ */ Symbol("decoder");
    var FLOWING = /* @__PURE__ */ Symbol("flowing");
    var PAUSED = /* @__PURE__ */ Symbol("paused");
    var RESUME = /* @__PURE__ */ Symbol("resume");
    var BUFFERLENGTH = /* @__PURE__ */ Symbol("bufferLength");
    var BUFFERPUSH = /* @__PURE__ */ Symbol("bufferPush");
    var BUFFERSHIFT = /* @__PURE__ */ Symbol("bufferShift");
    var OBJECTMODE = /* @__PURE__ */ Symbol("objectMode");
    var DESTROYED = /* @__PURE__ */ Symbol("destroyed");
    var EMITDATA = /* @__PURE__ */ Symbol("emitData");
    var EMITEND = /* @__PURE__ */ Symbol("emitEnd");
    var EMITEND2 = /* @__PURE__ */ Symbol("emitEnd2");
    var ASYNC = /* @__PURE__ */ Symbol("async");
    var defer = (fn) => Promise.resolve().then(fn);
    var doIter = global._MP_NO_ITERATOR_SYMBOLS_ !== "1";
    var ASYNCITERATOR = doIter && Symbol.asyncIterator || /* @__PURE__ */ Symbol("asyncIterator not implemented");
    var ITERATOR = doIter && Symbol.iterator || /* @__PURE__ */ Symbol("iterator not implemented");
    var isEndish = (ev) => ev === "end" || ev === "finish" || ev === "prefinish";
    var isArrayBuffer2 = (b) => b instanceof ArrayBuffer || typeof b === "object" && b.constructor && b.constructor.name === "ArrayBuffer" && b.byteLength >= 0;
    var isArrayBufferView = (b) => !Buffer.isBuffer(b) && ArrayBuffer.isView(b);
    var Pipe = class {
      constructor(src2, dest, opts2) {
        this.src = src2;
        this.dest = dest;
        this.opts = opts2;
        this.ondrain = () => src2[RESUME]();
        dest.on("drain", this.ondrain);
      }
      unpipe() {
        this.dest.removeListener("drain", this.ondrain);
      }
      // istanbul ignore next - only here for the prototype
      proxyErrors() {
      }
      end() {
        this.unpipe();
        if (this.opts.end)
          this.dest.end();
      }
    };
    var PipeProxyErrors = class extends Pipe {
      unpipe() {
        this.src.removeListener("error", this.proxyErrors);
        super.unpipe();
      }
      constructor(src2, dest, opts2) {
        super(src2, dest, opts2);
        this.proxyErrors = (er) => dest.emit("error", er);
        src2.on("error", this.proxyErrors);
      }
    };
    module2.exports = class Minipass extends Stream {
      constructor(options) {
        super();
        this[FLOWING] = false;
        this[PAUSED] = false;
        this.pipes = [];
        this.buffer = [];
        this[OBJECTMODE] = options && options.objectMode || false;
        if (this[OBJECTMODE])
          this[ENCODING] = null;
        else
          this[ENCODING] = options && options.encoding || null;
        if (this[ENCODING] === "buffer")
          this[ENCODING] = null;
        this[ASYNC] = options && !!options.async || false;
        this[DECODER] = this[ENCODING] ? new SD(this[ENCODING]) : null;
        this[EOF] = false;
        this[EMITTED_END] = false;
        this[EMITTING_END] = false;
        this[CLOSED] = false;
        this[EMITTED_ERROR] = null;
        this.writable = true;
        this.readable = true;
        this[BUFFERLENGTH] = 0;
        this[DESTROYED] = false;
      }
      get bufferLength() {
        return this[BUFFERLENGTH];
      }
      get encoding() {
        return this[ENCODING];
      }
      set encoding(enc) {
        if (this[OBJECTMODE])
          throw new Error("cannot set encoding in objectMode");
        if (this[ENCODING] && enc !== this[ENCODING] && (this[DECODER] && this[DECODER].lastNeed || this[BUFFERLENGTH]))
          throw new Error("cannot change encoding");
        if (this[ENCODING] !== enc) {
          this[DECODER] = enc ? new SD(enc) : null;
          if (this.buffer.length)
            this.buffer = this.buffer.map((chunk) => this[DECODER].write(chunk));
        }
        this[ENCODING] = enc;
      }
      setEncoding(enc) {
        this.encoding = enc;
      }
      get objectMode() {
        return this[OBJECTMODE];
      }
      set objectMode(om) {
        this[OBJECTMODE] = this[OBJECTMODE] || !!om;
      }
      get ["async"]() {
        return this[ASYNC];
      }
      set ["async"](a2) {
        this[ASYNC] = this[ASYNC] || !!a2;
      }
      write(chunk, encoding, cb) {
        if (this[EOF])
          throw new Error("write after end");
        if (this[DESTROYED]) {
          this.emit("error", Object.assign(
            new Error("Cannot call write after a stream was destroyed"),
            { code: "ERR_STREAM_DESTROYED" }
          ));
          return true;
        }
        if (typeof encoding === "function")
          cb = encoding, encoding = "utf8";
        if (!encoding)
          encoding = "utf8";
        const fn = this[ASYNC] ? defer : (f) => f();
        if (!this[OBJECTMODE] && !Buffer.isBuffer(chunk)) {
          if (isArrayBufferView(chunk))
            chunk = Buffer.from(chunk.buffer, chunk.byteOffset, chunk.byteLength);
          else if (isArrayBuffer2(chunk))
            chunk = Buffer.from(chunk);
          else if (typeof chunk !== "string")
            this.objectMode = true;
        }
        if (this[OBJECTMODE]) {
          if (this.flowing && this[BUFFERLENGTH] !== 0)
            this[FLUSH](true);
          if (this.flowing)
            this.emit("data", chunk);
          else
            this[BUFFERPUSH](chunk);
          if (this[BUFFERLENGTH] !== 0)
            this.emit("readable");
          if (cb)
            fn(cb);
          return this.flowing;
        }
        if (!chunk.length) {
          if (this[BUFFERLENGTH] !== 0)
            this.emit("readable");
          if (cb)
            fn(cb);
          return this.flowing;
        }
        if (typeof chunk === "string" && // unless it is a string already ready for us to use
        !(encoding === this[ENCODING] && !this[DECODER].lastNeed)) {
          chunk = Buffer.from(chunk, encoding);
        }
        if (Buffer.isBuffer(chunk) && this[ENCODING])
          chunk = this[DECODER].write(chunk);
        if (this.flowing && this[BUFFERLENGTH] !== 0)
          this[FLUSH](true);
        if (this.flowing)
          this.emit("data", chunk);
        else
          this[BUFFERPUSH](chunk);
        if (this[BUFFERLENGTH] !== 0)
          this.emit("readable");
        if (cb)
          fn(cb);
        return this.flowing;
      }
      read(n2) {
        if (this[DESTROYED])
          return null;
        if (this[BUFFERLENGTH] === 0 || n2 === 0 || n2 > this[BUFFERLENGTH]) {
          this[MAYBE_EMIT_END]();
          return null;
        }
        if (this[OBJECTMODE])
          n2 = null;
        if (this.buffer.length > 1 && !this[OBJECTMODE]) {
          if (this.encoding)
            this.buffer = [this.buffer.join("")];
          else
            this.buffer = [Buffer.concat(this.buffer, this[BUFFERLENGTH])];
        }
        const ret2 = this[READ](n2 || null, this.buffer[0]);
        this[MAYBE_EMIT_END]();
        return ret2;
      }
      [READ](n2, chunk) {
        if (n2 === chunk.length || n2 === null)
          this[BUFFERSHIFT]();
        else {
          this.buffer[0] = chunk.slice(n2);
          chunk = chunk.slice(0, n2);
          this[BUFFERLENGTH] -= n2;
        }
        this.emit("data", chunk);
        if (!this.buffer.length && !this[EOF])
          this.emit("drain");
        return chunk;
      }
      end(chunk, encoding, cb) {
        if (typeof chunk === "function")
          cb = chunk, chunk = null;
        if (typeof encoding === "function")
          cb = encoding, encoding = "utf8";
        if (chunk)
          this.write(chunk, encoding);
        if (cb)
          this.once("end", cb);
        this[EOF] = true;
        this.writable = false;
        if (this.flowing || !this[PAUSED])
          this[MAYBE_EMIT_END]();
        return this;
      }
      // don't let the internal resume be overwritten
      [RESUME]() {
        if (this[DESTROYED])
          return;
        this[PAUSED] = false;
        this[FLOWING] = true;
        this.emit("resume");
        if (this.buffer.length)
          this[FLUSH]();
        else if (this[EOF])
          this[MAYBE_EMIT_END]();
        else
          this.emit("drain");
      }
      resume() {
        return this[RESUME]();
      }
      pause() {
        this[FLOWING] = false;
        this[PAUSED] = true;
      }
      get destroyed() {
        return this[DESTROYED];
      }
      get flowing() {
        return this[FLOWING];
      }
      get paused() {
        return this[PAUSED];
      }
      [BUFFERPUSH](chunk) {
        if (this[OBJECTMODE])
          this[BUFFERLENGTH] += 1;
        else
          this[BUFFERLENGTH] += chunk.length;
        this.buffer.push(chunk);
      }
      [BUFFERSHIFT]() {
        if (this.buffer.length) {
          if (this[OBJECTMODE])
            this[BUFFERLENGTH] -= 1;
          else
            this[BUFFERLENGTH] -= this.buffer[0].length;
        }
        return this.buffer.shift();
      }
      [FLUSH](noDrain) {
        do {
        } while (this[FLUSHCHUNK](this[BUFFERSHIFT]()));
        if (!noDrain && !this.buffer.length && !this[EOF])
          this.emit("drain");
      }
      [FLUSHCHUNK](chunk) {
        return chunk ? (this.emit("data", chunk), this.flowing) : false;
      }
      pipe(dest, opts2) {
        if (this[DESTROYED])
          return;
        const ended = this[EMITTED_END];
        opts2 = opts2 || {};
        if (dest === proc.stdout || dest === proc.stderr)
          opts2.end = false;
        else
          opts2.end = opts2.end !== false;
        opts2.proxyErrors = !!opts2.proxyErrors;
        if (ended) {
          if (opts2.end)
            dest.end();
        } else {
          this.pipes.push(!opts2.proxyErrors ? new Pipe(this, dest, opts2) : new PipeProxyErrors(this, dest, opts2));
          if (this[ASYNC])
            defer(() => this[RESUME]());
          else
            this[RESUME]();
        }
        return dest;
      }
      unpipe(dest) {
        const p = this.pipes.find((p2) => p2.dest === dest);
        if (p) {
          this.pipes.splice(this.pipes.indexOf(p), 1);
          p.unpipe();
        }
      }
      addListener(ev, fn) {
        return this.on(ev, fn);
      }
      on(ev, fn) {
        const ret2 = super.on(ev, fn);
        if (ev === "data" && !this.pipes.length && !this.flowing)
          this[RESUME]();
        else if (ev === "readable" && this[BUFFERLENGTH] !== 0)
          super.emit("readable");
        else if (isEndish(ev) && this[EMITTED_END]) {
          super.emit(ev);
          this.removeAllListeners(ev);
        } else if (ev === "error" && this[EMITTED_ERROR]) {
          if (this[ASYNC])
            defer(() => fn.call(this, this[EMITTED_ERROR]));
          else
            fn.call(this, this[EMITTED_ERROR]);
        }
        return ret2;
      }
      get emittedEnd() {
        return this[EMITTED_END];
      }
      [MAYBE_EMIT_END]() {
        if (!this[EMITTING_END] && !this[EMITTED_END] && !this[DESTROYED] && this.buffer.length === 0 && this[EOF]) {
          this[EMITTING_END] = true;
          this.emit("end");
          this.emit("prefinish");
          this.emit("finish");
          if (this[CLOSED])
            this.emit("close");
          this[EMITTING_END] = false;
        }
      }
      emit(ev, data, ...extra) {
        if (ev !== "error" && ev !== "close" && ev !== DESTROYED && this[DESTROYED])
          return;
        else if (ev === "data") {
          return !data ? false : this[ASYNC] ? defer(() => this[EMITDATA](data)) : this[EMITDATA](data);
        } else if (ev === "end") {
          return this[EMITEND]();
        } else if (ev === "close") {
          this[CLOSED] = true;
          if (!this[EMITTED_END] && !this[DESTROYED])
            return;
          const ret3 = super.emit("close");
          this.removeAllListeners("close");
          return ret3;
        } else if (ev === "error") {
          this[EMITTED_ERROR] = data;
          const ret3 = super.emit("error", data);
          this[MAYBE_EMIT_END]();
          return ret3;
        } else if (ev === "resume") {
          const ret3 = super.emit("resume");
          this[MAYBE_EMIT_END]();
          return ret3;
        } else if (ev === "finish" || ev === "prefinish") {
          const ret3 = super.emit(ev);
          this.removeAllListeners(ev);
          return ret3;
        }
        const ret2 = super.emit(ev, data, ...extra);
        this[MAYBE_EMIT_END]();
        return ret2;
      }
      [EMITDATA](data) {
        for (const p of this.pipes) {
          if (p.dest.write(data) === false)
            this.pause();
        }
        const ret2 = super.emit("data", data);
        this[MAYBE_EMIT_END]();
        return ret2;
      }
      [EMITEND]() {
        if (this[EMITTED_END])
          return;
        this[EMITTED_END] = true;
        this.readable = false;
        if (this[ASYNC])
          defer(() => this[EMITEND2]());
        else
          this[EMITEND2]();
      }
      [EMITEND2]() {
        if (this[DECODER]) {
          const data = this[DECODER].end();
          if (data) {
            for (const p of this.pipes) {
              p.dest.write(data);
            }
            super.emit("data", data);
          }
        }
        for (const p of this.pipes) {
          p.end();
        }
        const ret2 = super.emit("end");
        this.removeAllListeners("end");
        return ret2;
      }
      // const all = await stream.collect()
      collect() {
        const buf = [];
        if (!this[OBJECTMODE])
          buf.dataLength = 0;
        const p = this.promise();
        this.on("data", (c3) => {
          buf.push(c3);
          if (!this[OBJECTMODE])
            buf.dataLength += c3.length;
        });
        return p.then(() => buf);
      }
      // const data = await stream.concat()
      concat() {
        return this[OBJECTMODE] ? Promise.reject(new Error("cannot concat in objectMode")) : this.collect().then((buf) => this[OBJECTMODE] ? Promise.reject(new Error("cannot concat in objectMode")) : this[ENCODING] ? buf.join("") : Buffer.concat(buf, buf.dataLength));
      }
      // stream.promise().then(() => done, er => emitted error)
      promise() {
        return new Promise((resolve3, reject3) => {
          this.on(DESTROYED, () => reject3(new Error("stream destroyed")));
          this.on("error", (er) => reject3(er));
          this.on("end", () => resolve3());
        });
      }
      // for await (let chunk of stream)
      [ASYNCITERATOR]() {
        const next2 = () => {
          const res = this.read();
          if (res !== null)
            return Promise.resolve({ done: false, value: res });
          if (this[EOF])
            return Promise.resolve({ done: true });
          let resolve3 = null;
          let reject3 = null;
          const onerr = (er) => {
            this.removeListener("data", ondata);
            this.removeListener("end", onend);
            reject3(er);
          };
          const ondata = (value) => {
            this.removeListener("error", onerr);
            this.removeListener("end", onend);
            this.pause();
            resolve3({ value, done: !!this[EOF] });
          };
          const onend = () => {
            this.removeListener("error", onerr);
            this.removeListener("data", ondata);
            resolve3({ done: true });
          };
          const ondestroy = () => onerr(new Error("stream destroyed"));
          return new Promise((res2, rej) => {
            reject3 = rej;
            resolve3 = res2;
            this.once(DESTROYED, ondestroy);
            this.once("error", onerr);
            this.once("end", onend);
            this.once("data", ondata);
          });
        };
        return { next: next2 };
      }
      // for (let chunk of stream)
      [ITERATOR]() {
        const next2 = () => {
          const value = this.read();
          const done = value === null;
          return { value, done };
        };
        return { next: next2 };
      }
      destroy(er) {
        if (this[DESTROYED]) {
          if (er)
            this.emit("error", er);
          else
            this.emit(DESTROYED);
          return this;
        }
        this[DESTROYED] = true;
        this.buffer.length = 0;
        this[BUFFERLENGTH] = 0;
        if (typeof this.close === "function" && !this[CLOSED])
          this.close();
        if (er)
          this.emit("error", er);
        else
          this.emit(DESTROYED);
        return this;
      }
      static isStream(s) {
        return !!s && (s instanceof Minipass || s instanceof Stream || s instanceof EE && (typeof s.pipe === "function" || // readable
        typeof s.write === "function" && typeof s.end === "function"));
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/minipass-flush/1.0.7/692da9c20e9453e1b774919876d4780c0eb2e16bfb4c80ab59ea77560c4837c2/node_modules/minipass-flush/index.js
var require_minipass_flush = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/minipass-flush/1.0.7/692da9c20e9453e1b774919876d4780c0eb2e16bfb4c80ab59ea77560c4837c2/node_modules/minipass-flush/index.js"(exports2, module2) {
    var Minipass = require_minipass();
    var _flush = /* @__PURE__ */ Symbol("_flush");
    var _flushed = /* @__PURE__ */ Symbol("_flushed");
    var _flushing = /* @__PURE__ */ Symbol("_flushing");
    var Flush = class extends Minipass {
      constructor(opt = {}) {
        if (typeof opt === "function")
          opt = { flush: opt };
        super(opt);
        if (typeof opt.flush !== "function" && typeof this.flush !== "function")
          throw new TypeError("must provide flush function in options");
        this[_flush] = opt.flush || this.flush;
      }
      emit(ev, ...data) {
        if (ev !== "end" && ev !== "finish" || this[_flushed])
          return super.emit(ev, ...data);
        if (this[_flushing])
          return;
        this[_flushing] = true;
        const afterFlush = (er) => {
          this[_flushed] = true;
          er ? super.emit("error", er) : super.emit("end");
        };
        const ret2 = this[_flush](afterFlush);
        if (ret2 && ret2.then)
          ret2.then(() => afterFlush(), (er) => afterFlush(er));
      }
    };
    module2.exports = Flush;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/minipass-collect/2.0.1/1500899019b1d0db0b33a43bc32e2fccd2df58d0bf6298bbb955303b3dcbe839/node_modules/minipass-collect/index.js
var require_minipass_collect = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/minipass-collect/2.0.1/1500899019b1d0db0b33a43bc32e2fccd2df58d0bf6298bbb955303b3dcbe839/node_modules/minipass-collect/index.js"(exports2, module2) {
    var { Minipass } = require_commonjs();
    var _data = /* @__PURE__ */ Symbol("_data");
    var _length = /* @__PURE__ */ Symbol("_length");
    var Collect = class extends Minipass {
      constructor(options) {
        super(options);
        this[_data] = [];
        this[_length] = 0;
      }
      write(chunk, encoding, cb) {
        if (typeof encoding === "function")
          cb = encoding, encoding = "utf8";
        if (!encoding)
          encoding = "utf8";
        const c3 = Buffer.isBuffer(chunk) ? chunk : Buffer.from(chunk, encoding);
        this[_data].push(c3);
        this[_length] += c3.length;
        if (cb)
          cb();
        return true;
      }
      end(chunk, encoding, cb) {
        if (typeof chunk === "function")
          cb = chunk, chunk = null;
        if (typeof encoding === "function")
          cb = encoding, encoding = "utf8";
        if (chunk)
          this.write(chunk, encoding);
        const result2 = Buffer.concat(this[_data], this[_length]);
        super.write(result2);
        return super.end(cb);
      }
    };
    module2.exports = Collect;
    var CollectPassThrough = class extends Minipass {
      constructor(options) {
        super(options);
        this[_data] = [];
        this[_length] = 0;
      }
      write(chunk, encoding, cb) {
        if (typeof encoding === "function")
          cb = encoding, encoding = "utf8";
        if (!encoding)
          encoding = "utf8";
        const c3 = Buffer.isBuffer(chunk) ? chunk : Buffer.from(chunk, encoding);
        this[_data].push(c3);
        this[_length] += c3.length;
        return super.write(chunk, encoding, cb);
      }
      end(chunk, encoding, cb) {
        if (typeof chunk === "function")
          cb = chunk, chunk = null;
        if (typeof encoding === "function")
          cb = encoding, encoding = "utf8";
        if (chunk)
          this.write(chunk, encoding);
        const result2 = Buffer.concat(this[_data], this[_length]);
        this.emit("collect", result2);
        return super.end(cb);
      }
    };
    module2.exports.PassThrough = CollectPassThrough;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/minipass-pipeline/1.2.4/f8e966786ed1c760697f4c7bc9f904148cfb1ab34d6a2d533a0a17563e3e3fcc/node_modules/minipass-pipeline/index.js
var require_minipass_pipeline = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/minipass-pipeline/1.2.4/f8e966786ed1c760697f4c7bc9f904148cfb1ab34d6a2d533a0a17563e3e3fcc/node_modules/minipass-pipeline/index.js"(exports2, module2) {
    var Minipass = require_minipass();
    var EE = __require("events");
    var isStream3 = (s) => s && s instanceof EE && (typeof s.pipe === "function" || // readable
    typeof s.write === "function" && typeof s.end === "function");
    var _head = /* @__PURE__ */ Symbol("_head");
    var _tail = /* @__PURE__ */ Symbol("_tail");
    var _linkStreams = /* @__PURE__ */ Symbol("_linkStreams");
    var _setHead = /* @__PURE__ */ Symbol("_setHead");
    var _setTail = /* @__PURE__ */ Symbol("_setTail");
    var _onError = /* @__PURE__ */ Symbol("_onError");
    var _onData = /* @__PURE__ */ Symbol("_onData");
    var _onEnd = /* @__PURE__ */ Symbol("_onEnd");
    var _onDrain = /* @__PURE__ */ Symbol("_onDrain");
    var _streams = /* @__PURE__ */ Symbol("_streams");
    var Pipeline = class extends Minipass {
      constructor(opts2, ...streams) {
        if (isStream3(opts2)) {
          streams.unshift(opts2);
          opts2 = {};
        }
        super(opts2);
        this[_streams] = [];
        if (streams.length)
          this.push(...streams);
      }
      [_linkStreams](streams) {
        return streams.reduce((src2, dest) => {
          src2.on("error", (er) => dest.emit("error", er));
          src2.pipe(dest);
          return dest;
        });
      }
      push(...streams) {
        this[_streams].push(...streams);
        if (this[_tail])
          streams.unshift(this[_tail]);
        const linkRet = this[_linkStreams](streams);
        this[_setTail](linkRet);
        if (!this[_head])
          this[_setHead](streams[0]);
      }
      unshift(...streams) {
        this[_streams].unshift(...streams);
        if (this[_head])
          streams.push(this[_head]);
        const linkRet = this[_linkStreams](streams);
        this[_setHead](streams[0]);
        if (!this[_tail])
          this[_setTail](linkRet);
      }
      destroy(er) {
        this[_streams].forEach((s) => typeof s.destroy === "function" && s.destroy());
        return super.destroy(er);
      }
      // readable interface -> tail
      [_setTail](stream2) {
        this[_tail] = stream2;
        stream2.on("error", (er) => this[_onError](stream2, er));
        stream2.on("data", (chunk) => this[_onData](stream2, chunk));
        stream2.on("end", () => this[_onEnd](stream2));
        stream2.on("finish", () => this[_onEnd](stream2));
      }
      // errors proxied down the pipeline
      // they're considered part of the "read" interface
      [_onError](stream2, er) {
        if (stream2 === this[_tail])
          this.emit("error", er);
      }
      [_onData](stream2, chunk) {
        if (stream2 === this[_tail])
          super.write(chunk);
      }
      [_onEnd](stream2) {
        if (stream2 === this[_tail])
          super.end();
      }
      pause() {
        super.pause();
        return this[_tail] && this[_tail].pause && this[_tail].pause();
      }
      // NB: Minipass calls its internal private [RESUME] method during
      // pipe drains, to avoid hazards where stream.resume() is overridden.
      // Thus, we need to listen to the resume *event*, not override the
      // resume() method, and proxy *that* to the tail.
      emit(ev, ...args) {
        if (ev === "resume" && this[_tail] && this[_tail].resume)
          this[_tail].resume();
        return super.emit(ev, ...args);
      }
      // writable interface -> head
      [_setHead](stream2) {
        this[_head] = stream2;
        stream2.on("drain", () => this[_onDrain](stream2));
      }
      [_onDrain](stream2) {
        if (stream2 === this[_head])
          this.emit("drain");
      }
      write(chunk, enc, cb) {
        return this[_head].write(chunk, enc, cb) && (this.flowing || this.buffer.length === 0);
      }
      end(chunk, enc, cb) {
        this[_head].end(chunk, enc, cb);
        return this;
      }
    };
    module2.exports = Pipeline;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/fs/5.0.0/56009d8b003c7c92d530a250071299940bb3d2ac6eb9b2c47476fda3fdb99885/node_modules/@npmcli/fs/lib/common/get-options.js
var require_get_options = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/fs/5.0.0/56009d8b003c7c92d530a250071299940bb3d2ac6eb9b2c47476fda3fdb99885/node_modules/@npmcli/fs/lib/common/get-options.js"(exports2, module2) {
    var getOptions2 = (input, { copy: copy2, wrap }) => {
      const result2 = {};
      if (input && typeof input === "object") {
        for (const prop3 of copy2) {
          if (input[prop3] !== void 0) {
            result2[prop3] = input[prop3];
          }
        }
      } else {
        result2[wrap] = input;
      }
      return result2;
    };
    module2.exports = getOptions2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/fs/5.0.0/56009d8b003c7c92d530a250071299940bb3d2ac6eb9b2c47476fda3fdb99885/node_modules/@npmcli/fs/lib/common/node.js
var require_node2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/fs/5.0.0/56009d8b003c7c92d530a250071299940bb3d2ac6eb9b2c47476fda3fdb99885/node_modules/@npmcli/fs/lib/common/node.js"(exports2, module2) {
    var semver56 = require_semver2();
    var satisfies3 = (range) => {
      return semver56.satisfies(process.version, range, { includePrerelease: true });
    };
    module2.exports = {
      satisfies: satisfies3
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/fs/5.0.0/56009d8b003c7c92d530a250071299940bb3d2ac6eb9b2c47476fda3fdb99885/node_modules/@npmcli/fs/lib/cp/errors.js
var require_errors9 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/fs/5.0.0/56009d8b003c7c92d530a250071299940bb3d2ac6eb9b2c47476fda3fdb99885/node_modules/@npmcli/fs/lib/cp/errors.js"(exports2, module2) {
    "use strict";
    var { inspect: inspect3 } = __require("util");
    var SystemError = class {
      constructor(code, prefix, context) {
        let message = `${prefix}: ${context.syscall} returned ${context.code} (${context.message})`;
        if (context.path !== void 0) {
          message += ` ${context.path}`;
        }
        if (context.dest !== void 0) {
          message += ` => ${context.dest}`;
        }
        this.code = code;
        Object.defineProperties(this, {
          name: {
            value: "SystemError",
            enumerable: false,
            writable: true,
            configurable: true
          },
          message: {
            value: message,
            enumerable: false,
            writable: true,
            configurable: true
          },
          info: {
            value: context,
            enumerable: true,
            configurable: true,
            writable: false
          },
          errno: {
            get() {
              return context.errno;
            },
            set(value) {
              context.errno = value;
            },
            enumerable: true,
            configurable: true
          },
          syscall: {
            get() {
              return context.syscall;
            },
            set(value) {
              context.syscall = value;
            },
            enumerable: true,
            configurable: true
          }
        });
        if (context.path !== void 0) {
          Object.defineProperty(this, "path", {
            get() {
              return context.path;
            },
            set(value) {
              context.path = value;
            },
            enumerable: true,
            configurable: true
          });
        }
        if (context.dest !== void 0) {
          Object.defineProperty(this, "dest", {
            get() {
              return context.dest;
            },
            set(value) {
              context.dest = value;
            },
            enumerable: true,
            configurable: true
          });
        }
      }
      toString() {
        return `${this.name} [${this.code}]: ${this.message}`;
      }
      [/* @__PURE__ */ Symbol.for("nodejs.util.inspect.custom")](_recurseTimes, ctx) {
        return inspect3(this, {
          ...ctx,
          getters: true,
          customInspect: false
        });
      }
    };
    function E(code, message) {
      module2.exports[code] = class NodeError extends SystemError {
        constructor(ctx) {
          super(code, message, ctx);
        }
      };
    }
    E("ERR_FS_CP_DIR_TO_NON_DIR", "Cannot overwrite directory with non-directory");
    E("ERR_FS_CP_EEXIST", "Target already exists");
    E("ERR_FS_CP_EINVAL", "Invalid src or dest");
    E("ERR_FS_CP_FIFO_PIPE", "Cannot copy a FIFO pipe");
    E("ERR_FS_CP_NON_DIR_TO_DIR", "Cannot overwrite non-directory with directory");
    E("ERR_FS_CP_SOCKET", "Cannot copy a socket file");
    E("ERR_FS_CP_SYMLINK_TO_SUBDIRECTORY", "Cannot overwrite symlink in subdirectory of self");
    E("ERR_FS_CP_UNKNOWN", "Cannot copy an unknown file type");
    E("ERR_FS_EISDIR", "Path is a directory");
    module2.exports.ERR_INVALID_ARG_TYPE = class ERR_INVALID_ARG_TYPE extends Error {
      constructor(name, expected, actual) {
        super();
        this.code = "ERR_INVALID_ARG_TYPE";
        this.message = `The ${name} argument must be ${expected}. Received ${typeof actual}`;
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/fs/5.0.0/56009d8b003c7c92d530a250071299940bb3d2ac6eb9b2c47476fda3fdb99885/node_modules/@npmcli/fs/lib/cp/polyfill.js
var require_polyfill4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/fs/5.0.0/56009d8b003c7c92d530a250071299940bb3d2ac6eb9b2c47476fda3fdb99885/node_modules/@npmcli/fs/lib/cp/polyfill.js"(exports2, module2) {
    "use strict";
    var {
      ERR_FS_CP_DIR_TO_NON_DIR,
      ERR_FS_CP_EEXIST,
      ERR_FS_CP_EINVAL,
      ERR_FS_CP_FIFO_PIPE,
      ERR_FS_CP_NON_DIR_TO_DIR,
      ERR_FS_CP_SOCKET,
      ERR_FS_CP_SYMLINK_TO_SUBDIRECTORY,
      ERR_FS_CP_UNKNOWN,
      ERR_FS_EISDIR,
      ERR_INVALID_ARG_TYPE
    } = require_errors9();
    var {
      constants: {
        errno: {
          EEXIST,
          EISDIR,
          EINVAL,
          ENOTDIR
        }
      }
    } = __require("os");
    var {
      chmod,
      copyFile,
      lstat,
      mkdir: mkdir2,
      readdir: readdir3,
      readlink,
      stat: stat2,
      symlink,
      unlink,
      utimes
    } = __require("fs/promises");
    var {
      dirname: dirname2,
      isAbsolute: isAbsolute3,
      join: join3,
      parse: parse7,
      resolve: resolve3,
      sep: sep2,
      toNamespacedPath
    } = __require("path");
    var { fileURLToPath: fileURLToPath7 } = __require("url");
    var defaultOptions4 = {
      dereference: false,
      errorOnExist: false,
      filter: void 0,
      force: true,
      preserveTimestamps: false,
      recursive: false
    };
    async function cp(src2, dest, opts2) {
      if (opts2 != null && typeof opts2 !== "object") {
        throw new ERR_INVALID_ARG_TYPE("options", ["Object"], opts2);
      }
      return cpFn(
        toNamespacedPath(getValidatedPath(src2)),
        toNamespacedPath(getValidatedPath(dest)),
        { ...defaultOptions4, ...opts2 }
      );
    }
    function getValidatedPath(fileURLOrPath) {
      const path218 = fileURLOrPath != null && fileURLOrPath.href && fileURLOrPath.origin ? fileURLToPath7(fileURLOrPath) : fileURLOrPath;
      return path218;
    }
    async function cpFn(src2, dest, opts2) {
      if (opts2.preserveTimestamps && process.arch === "ia32") {
        const warning = "Using the preserveTimestamps option in 32-bit node is not recommended";
        process.emitWarning(warning, "TimestampPrecisionWarning");
      }
      const stats = await checkPaths(src2, dest, opts2);
      const { srcStat, destStat } = stats;
      await checkParentPaths(src2, srcStat, dest);
      if (opts2.filter) {
        return handleFilter(checkParentDir, destStat, src2, dest, opts2);
      }
      return checkParentDir(destStat, src2, dest, opts2);
    }
    async function checkPaths(src2, dest, opts2) {
      const { 0: srcStat, 1: destStat } = await getStats2(src2, dest, opts2);
      if (destStat) {
        if (areIdentical(srcStat, destStat)) {
          throw new ERR_FS_CP_EINVAL({
            message: "src and dest cannot be the same",
            path: dest,
            syscall: "cp",
            errno: EINVAL
          });
        }
        if (srcStat.isDirectory() && !destStat.isDirectory()) {
          throw new ERR_FS_CP_DIR_TO_NON_DIR({
            message: `cannot overwrite directory ${src2} with non-directory ${dest}`,
            path: dest,
            syscall: "cp",
            errno: EISDIR
          });
        }
        if (!srcStat.isDirectory() && destStat.isDirectory()) {
          throw new ERR_FS_CP_NON_DIR_TO_DIR({
            message: `cannot overwrite non-directory ${src2} with directory ${dest}`,
            path: dest,
            syscall: "cp",
            errno: ENOTDIR
          });
        }
      }
      if (srcStat.isDirectory() && isSrcSubdir(src2, dest)) {
        throw new ERR_FS_CP_EINVAL({
          message: `cannot copy ${src2} to a subdirectory of self ${dest}`,
          path: dest,
          syscall: "cp",
          errno: EINVAL
        });
      }
      return { srcStat, destStat };
    }
    function areIdentical(srcStat, destStat) {
      return destStat.ino && destStat.dev && destStat.ino === srcStat.ino && destStat.dev === srcStat.dev;
    }
    function getStats2(src2, dest, opts2) {
      const statFunc = opts2.dereference ? (file) => stat2(file, { bigint: true }) : (file) => lstat(file, { bigint: true });
      return Promise.all([
        statFunc(src2),
        statFunc(dest).catch((err) => {
          if (err.code === "ENOENT") {
            return null;
          }
          throw err;
        })
      ]);
    }
    async function checkParentDir(destStat, src2, dest, opts2) {
      const destParent = dirname2(dest);
      const dirExists = await pathExists3(destParent);
      if (dirExists) {
        return getStatsForCopy(destStat, src2, dest, opts2);
      }
      await mkdir2(destParent, { recursive: true });
      return getStatsForCopy(destStat, src2, dest, opts2);
    }
    function pathExists3(dest) {
      return stat2(dest).then(
        () => true,
        // istanbul ignore next: not sure when this would occur
        (err) => err.code === "ENOENT" ? false : Promise.reject(err)
      );
    }
    async function checkParentPaths(src2, srcStat, dest) {
      const srcParent = resolve3(dirname2(src2));
      const destParent = resolve3(dirname2(dest));
      if (destParent === srcParent || destParent === parse7(destParent).root) {
        return;
      }
      let destStat;
      try {
        destStat = await stat2(destParent, { bigint: true });
      } catch (err) {
        if (err.code === "ENOENT") {
          return;
        }
        throw err;
      }
      if (areIdentical(srcStat, destStat)) {
        throw new ERR_FS_CP_EINVAL({
          message: `cannot copy ${src2} to a subdirectory of self ${dest}`,
          path: dest,
          syscall: "cp",
          errno: EINVAL
        });
      }
      return checkParentPaths(src2, srcStat, destParent);
    }
    var normalizePathToArray = (path218) => resolve3(path218).split(sep2).filter(Boolean);
    function isSrcSubdir(src2, dest) {
      const srcArr = normalizePathToArray(src2);
      const destArr = normalizePathToArray(dest);
      return srcArr.every((cur, i2) => destArr[i2] === cur);
    }
    async function handleFilter(onInclude, destStat, src2, dest, opts2, cb) {
      const include = await opts2.filter(src2, dest);
      if (include) {
        return onInclude(destStat, src2, dest, opts2, cb);
      }
    }
    function startCopy(destStat, src2, dest, opts2) {
      if (opts2.filter) {
        return handleFilter(getStatsForCopy, destStat, src2, dest, opts2);
      }
      return getStatsForCopy(destStat, src2, dest, opts2);
    }
    async function getStatsForCopy(destStat, src2, dest, opts2) {
      const statFn = opts2.dereference ? stat2 : lstat;
      const srcStat = await statFn(src2);
      if (srcStat.isDirectory() && opts2.recursive) {
        return onDir(srcStat, destStat, src2, dest, opts2);
      } else if (srcStat.isDirectory()) {
        throw new ERR_FS_EISDIR({
          message: `${src2} is a directory (not copied)`,
          path: src2,
          syscall: "cp",
          errno: EINVAL
        });
      } else if (srcStat.isFile() || srcStat.isCharacterDevice() || srcStat.isBlockDevice()) {
        return onFile(srcStat, destStat, src2, dest, opts2);
      } else if (srcStat.isSymbolicLink()) {
        return onLink(destStat, src2, dest);
      } else if (srcStat.isSocket()) {
        throw new ERR_FS_CP_SOCKET({
          message: `cannot copy a socket file: ${dest}`,
          path: dest,
          syscall: "cp",
          errno: EINVAL
        });
      } else if (srcStat.isFIFO()) {
        throw new ERR_FS_CP_FIFO_PIPE({
          message: `cannot copy a FIFO pipe: ${dest}`,
          path: dest,
          syscall: "cp",
          errno: EINVAL
        });
      }
      throw new ERR_FS_CP_UNKNOWN({
        message: `cannot copy an unknown file type: ${dest}`,
        path: dest,
        syscall: "cp",
        errno: EINVAL
      });
    }
    function onFile(srcStat, destStat, src2, dest, opts2) {
      if (!destStat) {
        return _copyFile(srcStat, src2, dest, opts2);
      }
      return mayCopyFile(srcStat, src2, dest, opts2);
    }
    async function mayCopyFile(srcStat, src2, dest, opts2) {
      if (opts2.force) {
        await unlink(dest);
        return _copyFile(srcStat, src2, dest, opts2);
      } else if (opts2.errorOnExist) {
        throw new ERR_FS_CP_EEXIST({
          message: `${dest} already exists`,
          path: dest,
          syscall: "cp",
          errno: EEXIST
        });
      }
    }
    async function _copyFile(srcStat, src2, dest, opts2) {
      await copyFile(src2, dest);
      if (opts2.preserveTimestamps) {
        return handleTimestampsAndMode(srcStat.mode, src2, dest);
      }
      return setDestMode(dest, srcStat.mode);
    }
    async function handleTimestampsAndMode(srcMode, src2, dest) {
      if (fileIsNotWritable(srcMode)) {
        await makeFileWritable(dest, srcMode);
        return setDestTimestampsAndMode(srcMode, src2, dest);
      }
      return setDestTimestampsAndMode(srcMode, src2, dest);
    }
    function fileIsNotWritable(srcMode) {
      return (srcMode & 128) === 0;
    }
    function makeFileWritable(dest, srcMode) {
      return setDestMode(dest, srcMode | 128);
    }
    async function setDestTimestampsAndMode(srcMode, src2, dest) {
      await setDestTimestamps(src2, dest);
      return setDestMode(dest, srcMode);
    }
    function setDestMode(dest, srcMode) {
      return chmod(dest, srcMode);
    }
    async function setDestTimestamps(src2, dest) {
      const updatedSrcStat = await stat2(src2);
      return utimes(dest, updatedSrcStat.atime, updatedSrcStat.mtime);
    }
    function onDir(srcStat, destStat, src2, dest, opts2) {
      if (!destStat) {
        return mkDirAndCopy(srcStat.mode, src2, dest, opts2);
      }
      return copyDir(src2, dest, opts2);
    }
    async function mkDirAndCopy(srcMode, src2, dest, opts2) {
      await mkdir2(dest);
      await copyDir(src2, dest, opts2);
      return setDestMode(dest, srcMode);
    }
    async function copyDir(src2, dest, opts2) {
      const dir = await readdir3(src2);
      for (let i2 = 0; i2 < dir.length; i2++) {
        const item = dir[i2];
        const srcItem = join3(src2, item);
        const destItem = join3(dest, item);
        const { destStat } = await checkPaths(srcItem, destItem, opts2);
        await startCopy(destStat, srcItem, destItem, opts2);
      }
    }
    async function onLink(destStat, src2, dest) {
      let resolvedSrc = await readlink(src2);
      if (!isAbsolute3(resolvedSrc)) {
        resolvedSrc = resolve3(dirname2(src2), resolvedSrc);
      }
      if (!destStat) {
        return symlink(resolvedSrc, dest);
      }
      let resolvedDest;
      try {
        resolvedDest = await readlink(dest);
      } catch (err) {
        if (err.code === "EINVAL" || err.code === "UNKNOWN") {
          return symlink(resolvedSrc, dest);
        }
        throw err;
      }
      if (!isAbsolute3(resolvedDest)) {
        resolvedDest = resolve3(dirname2(dest), resolvedDest);
      }
      if (isSrcSubdir(resolvedSrc, resolvedDest)) {
        throw new ERR_FS_CP_EINVAL({
          message: `cannot copy ${resolvedSrc} to a subdirectory of self ${resolvedDest}`,
          path: dest,
          syscall: "cp",
          errno: EINVAL
        });
      }
      const srcStat = await stat2(src2);
      if (srcStat.isDirectory() && isSrcSubdir(resolvedDest, resolvedSrc)) {
        throw new ERR_FS_CP_SYMLINK_TO_SUBDIRECTORY({
          message: `cannot overwrite ${resolvedDest} with ${resolvedSrc}`,
          path: dest,
          syscall: "cp",
          errno: EINVAL
        });
      }
      return copyLink(resolvedSrc, dest);
    }
    async function copyLink(resolvedSrc, dest) {
      await unlink(dest);
      return symlink(resolvedSrc, dest);
    }
    module2.exports = cp;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/fs/5.0.0/56009d8b003c7c92d530a250071299940bb3d2ac6eb9b2c47476fda3fdb99885/node_modules/@npmcli/fs/lib/cp/index.js
var require_cp = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/fs/5.0.0/56009d8b003c7c92d530a250071299940bb3d2ac6eb9b2c47476fda3fdb99885/node_modules/@npmcli/fs/lib/cp/index.js"(exports2, module2) {
    var fs111 = __require("fs/promises");
    var getOptions2 = require_get_options();
    var node = require_node2();
    var polyfill = require_polyfill4();
    var useNative = node.satisfies(">=16.7.0");
    var cp = async (src2, dest, opts2) => {
      const options = getOptions2(opts2, {
        copy: ["dereference", "errorOnExist", "filter", "force", "preserveTimestamps", "recursive"]
      });
      return useNative ? fs111.cp(src2, dest, options) : polyfill(src2, dest, options);
    };
    module2.exports = cp;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/fs/5.0.0/56009d8b003c7c92d530a250071299940bb3d2ac6eb9b2c47476fda3fdb99885/node_modules/@npmcli/fs/lib/with-temp-dir.js
var require_with_temp_dir = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/fs/5.0.0/56009d8b003c7c92d530a250071299940bb3d2ac6eb9b2c47476fda3fdb99885/node_modules/@npmcli/fs/lib/with-temp-dir.js"(exports2, module2) {
    var { join: join3, sep: sep2 } = __require("path");
    var getOptions2 = require_get_options();
    var { mkdir: mkdir2, mkdtemp: mkdtemp2, rm: rm3 } = __require("fs/promises");
    var withTempDir = async (root, fn, opts2) => {
      const options = getOptions2(opts2, {
        copy: ["tmpPrefix"]
      });
      await mkdir2(root, { recursive: true });
      const target2 = await mkdtemp2(join3(`${root}${sep2}`, options.tmpPrefix || ""));
      let err;
      let result2;
      try {
        result2 = await fn(target2);
      } catch (_err) {
        err = _err;
      }
      try {
        await rm3(target2, { force: true, recursive: true });
      } catch {
      }
      if (err) {
        throw err;
      }
      return result2;
    };
    module2.exports = withTempDir;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/fs/5.0.0/56009d8b003c7c92d530a250071299940bb3d2ac6eb9b2c47476fda3fdb99885/node_modules/@npmcli/fs/lib/readdir-scoped.js
var require_readdir_scoped = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/fs/5.0.0/56009d8b003c7c92d530a250071299940bb3d2ac6eb9b2c47476fda3fdb99885/node_modules/@npmcli/fs/lib/readdir-scoped.js"(exports2, module2) {
    var { readdir: readdir3 } = __require("fs/promises");
    var { join: join3 } = __require("path");
    var readdirScoped = async (dir) => {
      const results = [];
      for (const item of await readdir3(dir)) {
        if (item.startsWith("@")) {
          for (const scopedItem of await readdir3(join3(dir, item))) {
            results.push(join3(item, scopedItem));
          }
        } else {
          results.push(item);
        }
      }
      return results;
    };
    module2.exports = readdirScoped;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/fs/5.0.0/56009d8b003c7c92d530a250071299940bb3d2ac6eb9b2c47476fda3fdb99885/node_modules/@npmcli/fs/lib/move-file.js
var require_move_file = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/fs/5.0.0/56009d8b003c7c92d530a250071299940bb3d2ac6eb9b2c47476fda3fdb99885/node_modules/@npmcli/fs/lib/move-file.js"(exports2, module2) {
    var { dirname: dirname2, join: join3, resolve: resolve3, relative: relative2, isAbsolute: isAbsolute3 } = __require("path");
    var fs111 = __require("fs/promises");
    var pathExists3 = async (path218) => {
      try {
        await fs111.access(path218);
        return true;
      } catch (er) {
        return er.code !== "ENOENT";
      }
    };
    var moveFile = async (source, destination, options = {}, root = true, symlinks = []) => {
      if (!source || !destination) {
        throw new TypeError("`source` and `destination` file required");
      }
      options = {
        overwrite: true,
        ...options
      };
      if (!options.overwrite && await pathExists3(destination)) {
        throw new Error(`The destination file exists: ${destination}`);
      }
      await fs111.mkdir(dirname2(destination), { recursive: true });
      try {
        await fs111.rename(source, destination);
      } catch (error) {
        if (error.code === "EXDEV" || error.code === "EPERM") {
          const sourceStat = await fs111.lstat(source);
          if (sourceStat.isDirectory()) {
            const files = await fs111.readdir(source);
            await Promise.all(files.map(
              (file) => moveFile(join3(source, file), join3(destination, file), options, false, symlinks)
            ));
          } else if (sourceStat.isSymbolicLink()) {
            symlinks.push({ source, destination });
          } else {
            await fs111.copyFile(source, destination);
          }
        } else {
          throw error;
        }
      }
      if (root) {
        await Promise.all(symlinks.map(async ({ source: symSource, destination: symDestination }) => {
          let target2 = await fs111.readlink(symSource);
          if (isAbsolute3(target2)) {
            target2 = resolve3(symDestination, relative2(symSource, target2));
          }
          let targetStat = "file";
          try {
            targetStat = await fs111.stat(resolve3(dirname2(symSource), target2));
            if (targetStat.isDirectory()) {
              targetStat = "junction";
            }
          } catch {
          }
          await fs111.symlink(
            target2,
            symDestination,
            targetStat
          );
        }));
        await fs111.rm(source, { recursive: true, force: true });
      }
    };
    module2.exports = moveFile;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/fs/5.0.0/56009d8b003c7c92d530a250071299940bb3d2ac6eb9b2c47476fda3fdb99885/node_modules/@npmcli/fs/lib/index.js
var require_lib31 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/fs/5.0.0/56009d8b003c7c92d530a250071299940bb3d2ac6eb9b2c47476fda3fdb99885/node_modules/@npmcli/fs/lib/index.js"(exports2, module2) {
    "use strict";
    var cp = require_cp();
    var withTempDir = require_with_temp_dir();
    var readdirScoped = require_readdir_scoped();
    var moveFile = require_move_file();
    module2.exports = {
      cp,
      withTempDir,
      readdirScoped,
      moveFile
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/cacache/20.0.4/5237f52e66376ca9fee4060f924d386aa69cfd622d99943cde0549aa3b26faca/node_modules/cacache/lib/util/tmp.js
var require_tmp = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/cacache/20.0.4/5237f52e66376ca9fee4060f924d386aa69cfd622d99943cde0549aa3b26faca/node_modules/cacache/lib/util/tmp.js"(exports2, module2) {
    "use strict";
    var crypto11 = __require("crypto");
    var { withTempDir } = require_lib31();
    var fs111 = __require("fs/promises");
    var path218 = __require("path");
    module2.exports.mkdir = mktmpdir;
    module2.exports.tmpName = function tmpName(cache, tmpPrefix) {
      const id = crypto11.randomUUID();
      return path218.join(cache, "tmp", tmpPrefix ? `${tmpPrefix}-${id}` : id);
    };
    async function mktmpdir(cache, opts2 = {}) {
      const { tmpPrefix } = opts2;
      const tmpDir = path218.join(cache, "tmp");
      await fs111.mkdir(tmpDir, { recursive: true, owner: "inherit" });
      const target2 = `${tmpDir}${path218.sep}${tmpPrefix || ""}`;
      return fs111.mkdtemp(target2, { owner: "inherit" });
    }
    module2.exports.withTmp = withTmp;
    function withTmp(cache, opts2, cb) {
      if (!cb) {
        cb = opts2;
        opts2 = {};
      }
      return withTempDir(path218.join(cache, "tmp"), cb, opts2);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/cacache/20.0.4/5237f52e66376ca9fee4060f924d386aa69cfd622d99943cde0549aa3b26faca/node_modules/cacache/package.json
var require_package3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/cacache/20.0.4/5237f52e66376ca9fee4060f924d386aa69cfd622d99943cde0549aa3b26faca/node_modules/cacache/package.json"(exports2, module2) {
    module2.exports = {
      name: "cacache",
      version: "20.0.4",
      "cache-version": {
        content: "2",
        index: "5"
      },
      description: "Fast, fault-tolerant, cross-platform, disk-based, data-agnostic, content-addressable cache.",
      main: "lib/index.js",
      files: [
        "bin/",
        "lib/"
      ],
      scripts: {
        test: "tap",
        snap: "tap",
        coverage: "tap",
        "test-docker": 'docker run -it --rm --name pacotest -v "$PWD":/tmp -w /tmp node:latest npm test',
        lint: "npm run eslint",
        npmclilint: "npmcli-lint",
        lintfix: "npm run eslint -- --fix",
        postsnap: "npm run lintfix --",
        postlint: "template-oss-check",
        posttest: "npm run lint",
        "template-oss-apply": "template-oss-apply --force",
        eslint: 'eslint "**/*.{js,cjs,ts,mjs,jsx,tsx}"'
      },
      repository: {
        type: "git",
        url: "git+https://github.com/npm/cacache.git"
      },
      keywords: [
        "cache",
        "caching",
        "content-addressable",
        "sri",
        "sri hash",
        "subresource integrity",
        "cache",
        "storage",
        "store",
        "file store",
        "filesystem",
        "disk cache",
        "disk storage"
      ],
      license: "ISC",
      dependencies: {
        "@npmcli/fs": "^5.0.0",
        "fs-minipass": "^3.0.0",
        glob: "^13.0.0",
        "lru-cache": "^11.1.0",
        minipass: "^7.0.3",
        "minipass-collect": "^2.0.1",
        "minipass-flush": "^1.0.5",
        "minipass-pipeline": "^1.2.4",
        "p-map": "^7.0.2",
        ssri: "^13.0.0"
      },
      devDependencies: {
        "@npmcli/eslint-config": "^6.0.1",
        "@npmcli/template-oss": "4.29.0",
        tap: "^16.0.0"
      },
      engines: {
        node: "^20.17.0 || >=22.9.0"
      },
      templateOSS: {
        "//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.",
        windowsCI: false,
        version: "4.29.0",
        publish: "true"
      },
      author: "GitHub Inc.",
      tap: {
        "nyc-arg": [
          "--exclude",
          "tap-snapshots/**"
        ]
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/cacache/20.0.4/5237f52e66376ca9fee4060f924d386aa69cfd622d99943cde0549aa3b26faca/node_modules/cacache/lib/util/hash-to-segments.js
var require_hash_to_segments = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/cacache/20.0.4/5237f52e66376ca9fee4060f924d386aa69cfd622d99943cde0549aa3b26faca/node_modules/cacache/lib/util/hash-to-segments.js"(exports2, module2) {
    "use strict";
    module2.exports = hashToSegments;
    function hashToSegments(hash2) {
      return [hash2.slice(0, 2), hash2.slice(2, 4), hash2.slice(4)];
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/cacache/20.0.4/5237f52e66376ca9fee4060f924d386aa69cfd622d99943cde0549aa3b26faca/node_modules/cacache/lib/content/path.js
var require_path4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/cacache/20.0.4/5237f52e66376ca9fee4060f924d386aa69cfd622d99943cde0549aa3b26faca/node_modules/cacache/lib/content/path.js"(exports2, module2) {
    "use strict";
    var contentVer = require_package3()["cache-version"].content;
    var hashToSegments = require_hash_to_segments();
    var path218 = __require("path");
    var ssri6 = require_lib6();
    module2.exports = contentPath;
    function contentPath(cache, integrity) {
      const sri = ssri6.parse(integrity, { single: true });
      return path218.join(
        contentDir(cache),
        sri.algorithm,
        ...hashToSegments(sri.hexDigest())
      );
    }
    module2.exports.contentDir = contentDir;
    function contentDir(cache) {
      return path218.join(cache, `content-v${contentVer}`);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/cacache/20.0.4/5237f52e66376ca9fee4060f924d386aa69cfd622d99943cde0549aa3b26faca/node_modules/cacache/lib/entry-index.js
var require_entry_index = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/cacache/20.0.4/5237f52e66376ca9fee4060f924d386aa69cfd622d99943cde0549aa3b26faca/node_modules/cacache/lib/entry-index.js"(exports2, module2) {
    "use strict";
    var crypto11 = __require("crypto");
    var {
      appendFile,
      mkdir: mkdir2,
      readFile: readFile4,
      readdir: readdir3,
      rm: rm3,
      writeFile: writeFile3
    } = __require("fs/promises");
    var { Minipass } = require_commonjs();
    var path218 = __require("path");
    var ssri6 = require_lib6();
    var { tmpName } = require_tmp();
    var contentPath = require_path4();
    var hashToSegments = require_hash_to_segments();
    var indexV = require_package3()["cache-version"].index;
    var { moveFile } = require_lib31();
    var lsStreamConcurrency = 5;
    module2.exports.NotFoundError = class NotFoundError extends Error {
      constructor(cache, key) {
        super(`No cache entry for ${key} found in ${cache}`);
        this.code = "ENOENT";
        this.cache = cache;
        this.key = key;
      }
    };
    module2.exports.compact = compact;
    async function compact(cache, key, matchFn, opts2 = {}) {
      const bucket = bucketPath(cache, key);
      const entries = await bucketEntries(bucket);
      const newEntries = [];
      for (let i2 = entries.length - 1; i2 >= 0; --i2) {
        const entry = entries[i2];
        if (entry.integrity === null && !opts2.validateEntry) {
          break;
        }
        if ((!opts2.validateEntry || opts2.validateEntry(entry) === true) && (newEntries.length === 0 || !newEntries.find((oldEntry) => matchFn(oldEntry, entry)))) {
          newEntries.unshift(entry);
        }
      }
      const newIndex = "\n" + newEntries.map((entry) => {
        const stringified = JSON.stringify(entry);
        const hash3 = hashEntry(stringified);
        return `${hash3}	${stringified}`;
      }).join("\n");
      const setup = async () => {
        const target2 = tmpName(cache, opts2.tmpPrefix);
        await mkdir2(path218.dirname(target2), { recursive: true });
        return {
          target: target2,
          moved: false
        };
      };
      const teardown = async (tmp2) => {
        if (!tmp2.moved) {
          return rm3(tmp2.target, { recursive: true, force: true });
        }
      };
      const write = async (tmp2) => {
        await writeFile3(tmp2.target, newIndex, { flag: "wx" });
        await mkdir2(path218.dirname(bucket), { recursive: true });
        await moveFile(tmp2.target, bucket);
        tmp2.moved = true;
      };
      const tmp = await setup();
      try {
        await write(tmp);
      } finally {
        await teardown(tmp);
      }
      return newEntries.reverse().map((entry) => formatEntry(cache, entry, true));
    }
    module2.exports.insert = insert;
    async function insert(cache, key, integrity, opts2 = {}) {
      const { metadata, size, time } = opts2;
      const bucket = bucketPath(cache, key);
      const entry = {
        key,
        integrity: integrity && ssri6.stringify(integrity),
        time: time || Date.now(),
        size,
        metadata
      };
      try {
        await mkdir2(path218.dirname(bucket), { recursive: true });
        const stringified = JSON.stringify(entry);
        await appendFile(bucket, `
${hashEntry(stringified)}	${stringified}`);
      } catch (err) {
        if (err.code === "ENOENT") {
          return void 0;
        }
        throw err;
      }
      return formatEntry(cache, entry);
    }
    module2.exports.find = find;
    async function find(cache, key) {
      const bucket = bucketPath(cache, key);
      try {
        const entries = await bucketEntries(bucket);
        return entries.reduce((latest, next2) => {
          if (next2 && next2.key === key) {
            return formatEntry(cache, next2);
          } else {
            return latest;
          }
        }, null);
      } catch (err) {
        if (err.code === "ENOENT") {
          return null;
        } else {
          throw err;
        }
      }
    }
    module2.exports.delete = del;
    function del(cache, key, opts2 = {}) {
      if (!opts2.removeFully) {
        return insert(cache, key, null, opts2);
      }
      const bucket = bucketPath(cache, key);
      return rm3(bucket, { recursive: true, force: true });
    }
    module2.exports.lsStream = lsStream;
    function lsStream(cache) {
      const indexDir = bucketDir(cache);
      const stream2 = new Minipass({ objectMode: true });
      Promise.resolve().then(async () => {
        const { default: pMap2 } = await Promise.resolve().then(() => (init_p_map(), p_map_exports));
        const buckets = await readdirOrEmpty(indexDir);
        await pMap2(
          buckets,
          async (bucket) => {
            const bucketPath2 = path218.join(indexDir, bucket);
            const subbuckets = await readdirOrEmpty(bucketPath2);
            await pMap2(
              subbuckets,
              async (subbucket) => {
                const subbucketPath = path218.join(bucketPath2, subbucket);
                const subbucketEntries = await readdirOrEmpty(subbucketPath);
                await pMap2(
                  subbucketEntries,
                  async (entry) => {
                    const entryPath = path218.join(subbucketPath, entry);
                    try {
                      const entries = await bucketEntries(entryPath);
                      const reduced = entries.reduce((acc, entry2) => {
                        acc.set(entry2.key, entry2);
                        return acc;
                      }, /* @__PURE__ */ new Map());
                      for (const entry2 of reduced.values()) {
                        const formatted = formatEntry(cache, entry2);
                        if (formatted) {
                          stream2.write(formatted);
                        }
                      }
                    } catch (err) {
                      if (err.code === "ENOENT") {
                        return void 0;
                      }
                      throw err;
                    }
                  },
                  { concurrency: lsStreamConcurrency }
                );
              },
              { concurrency: lsStreamConcurrency }
            );
          },
          { concurrency: lsStreamConcurrency }
        );
        stream2.end();
        return stream2;
      }).catch((err) => stream2.emit("error", err));
      return stream2;
    }
    module2.exports.ls = ls;
    async function ls(cache) {
      const entries = await lsStream(cache).collect();
      return entries.reduce((acc, xs) => {
        acc[xs.key] = xs;
        return acc;
      }, {});
    }
    module2.exports.bucketEntries = bucketEntries;
    async function bucketEntries(bucket, filter14) {
      const data = await readFile4(bucket, "utf8");
      return _bucketEntries(data, filter14);
    }
    function _bucketEntries(data) {
      const entries = [];
      data.split("\n").forEach((entry) => {
        if (!entry) {
          return;
        }
        const pieces = entry.split("	");
        if (!pieces[1] || hashEntry(pieces[1]) !== pieces[0]) {
          return;
        }
        let obj;
        try {
          obj = JSON.parse(pieces[1]);
        } catch (_) {
        }
        if (obj) {
          entries.push(obj);
        }
      });
      return entries;
    }
    module2.exports.bucketDir = bucketDir;
    function bucketDir(cache) {
      return path218.join(cache, `index-v${indexV}`);
    }
    module2.exports.bucketPath = bucketPath;
    function bucketPath(cache, key) {
      const hashed = hashKey(key);
      return path218.join.apply(
        path218,
        [bucketDir(cache)].concat(hashToSegments(hashed))
      );
    }
    module2.exports.hashKey = hashKey;
    function hashKey(key) {
      return hash2(key, "sha256");
    }
    module2.exports.hashEntry = hashEntry;
    function hashEntry(str2) {
      return hash2(str2, "sha1");
    }
    function hash2(str2, digest) {
      return crypto11.createHash(digest).update(str2).digest("hex");
    }
    function formatEntry(cache, entry, keepAll) {
      if (!entry.integrity && !keepAll) {
        return null;
      }
      return {
        key: entry.key,
        integrity: entry.integrity,
        path: entry.integrity ? contentPath(cache, entry.integrity) : void 0,
        size: entry.size,
        time: entry.time,
        metadata: entry.metadata
      };
    }
    function readdirOrEmpty(dir) {
      return readdir3(dir).catch((err) => {
        if (err.code === "ENOENT" || err.code === "ENOTDIR") {
          return [];
        }
        throw err;
      });
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/cacache/20.0.4/5237f52e66376ca9fee4060f924d386aa69cfd622d99943cde0549aa3b26faca/node_modules/cacache/lib/memoization.js
var require_memoization = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/cacache/20.0.4/5237f52e66376ca9fee4060f924d386aa69cfd622d99943cde0549aa3b26faca/node_modules/cacache/lib/memoization.js"(exports2, module2) {
    "use strict";
    var { LRUCache } = require_index_min();
    var MEMOIZED = new LRUCache({
      max: 500,
      maxSize: 50 * 1024 * 1024,
      // 50MB
      ttl: 3 * 60 * 1e3,
      // 3 minutes
      sizeCalculation: (entry, key) => key.startsWith("key:") ? entry.data.length : entry.length
    });
    module2.exports.clearMemoized = clearMemoized;
    function clearMemoized() {
      const old = {};
      MEMOIZED.forEach((v, k2) => {
        old[k2] = v;
      });
      MEMOIZED.clear();
      return old;
    }
    module2.exports.put = put;
    function put(cache, entry, data, opts2) {
      pickMem(opts2).set(`key:${cache}:${entry.key}`, { entry, data });
      putDigest(cache, entry.integrity, data, opts2);
    }
    module2.exports.put.byDigest = putDigest;
    function putDigest(cache, integrity, data, opts2) {
      pickMem(opts2).set(`digest:${cache}:${integrity}`, data);
    }
    module2.exports.get = get;
    function get(cache, key, opts2) {
      return pickMem(opts2).get(`key:${cache}:${key}`);
    }
    module2.exports.get.byDigest = getDigest;
    function getDigest(cache, integrity, opts2) {
      return pickMem(opts2).get(`digest:${cache}:${integrity}`);
    }
    var ObjProxy = class {
      constructor(obj) {
        this.obj = obj;
      }
      get(key) {
        return this.obj[key];
      }
      set(key, val) {
        this.obj[key] = val;
      }
    };
    function pickMem(opts2) {
      if (!opts2 || !opts2.memoize) {
        return MEMOIZED;
      } else if (opts2.memoize.get && opts2.memoize.set) {
        return opts2.memoize;
      } else if (typeof opts2.memoize === "object") {
        return new ObjProxy(opts2.memoize);
      } else {
        return MEMOIZED;
      }
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/fs-minipass/3.0.3/a713279255f033336363b93b27bbbca43b5b300c7648a63f09c0e9402d1b9e30/node_modules/fs-minipass/lib/index.js
var require_lib32 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/fs-minipass/3.0.3/a713279255f033336363b93b27bbbca43b5b300c7648a63f09c0e9402d1b9e30/node_modules/fs-minipass/lib/index.js"(exports2) {
    "use strict";
    var { Minipass } = require_commonjs();
    var EE = __require("events").EventEmitter;
    var fs111 = __require("fs");
    var writev = fs111.writev;
    var _autoClose = /* @__PURE__ */ Symbol("_autoClose");
    var _close = /* @__PURE__ */ Symbol("_close");
    var _ended = /* @__PURE__ */ Symbol("_ended");
    var _fd = /* @__PURE__ */ Symbol("_fd");
    var _finished = /* @__PURE__ */ Symbol("_finished");
    var _flags = /* @__PURE__ */ Symbol("_flags");
    var _flush = /* @__PURE__ */ Symbol("_flush");
    var _handleChunk = /* @__PURE__ */ Symbol("_handleChunk");
    var _makeBuf = /* @__PURE__ */ Symbol("_makeBuf");
    var _mode = /* @__PURE__ */ Symbol("_mode");
    var _needDrain = /* @__PURE__ */ Symbol("_needDrain");
    var _onerror = /* @__PURE__ */ Symbol("_onerror");
    var _onopen = /* @__PURE__ */ Symbol("_onopen");
    var _onread = /* @__PURE__ */ Symbol("_onread");
    var _onwrite = /* @__PURE__ */ Symbol("_onwrite");
    var _open = /* @__PURE__ */ Symbol("_open");
    var _path = /* @__PURE__ */ Symbol("_path");
    var _pos = /* @__PURE__ */ Symbol("_pos");
    var _queue = /* @__PURE__ */ Symbol("_queue");
    var _read2 = /* @__PURE__ */ Symbol("_read");
    var _readSize = /* @__PURE__ */ Symbol("_readSize");
    var _reading = /* @__PURE__ */ Symbol("_reading");
    var _remain = /* @__PURE__ */ Symbol("_remain");
    var _size = /* @__PURE__ */ Symbol("_size");
    var _write = /* @__PURE__ */ Symbol("_write");
    var _writing = /* @__PURE__ */ Symbol("_writing");
    var _defaultFlag = /* @__PURE__ */ Symbol("_defaultFlag");
    var _errored = /* @__PURE__ */ Symbol("_errored");
    var ReadStream = class extends Minipass {
      constructor(path218, opt) {
        opt = opt || {};
        super(opt);
        this.readable = true;
        this.writable = false;
        if (typeof path218 !== "string") {
          throw new TypeError("path must be a string");
        }
        this[_errored] = false;
        this[_fd] = typeof opt.fd === "number" ? opt.fd : null;
        this[_path] = path218;
        this[_readSize] = opt.readSize || 16 * 1024 * 1024;
        this[_reading] = false;
        this[_size] = typeof opt.size === "number" ? opt.size : Infinity;
        this[_remain] = this[_size];
        this[_autoClose] = typeof opt.autoClose === "boolean" ? opt.autoClose : true;
        if (typeof this[_fd] === "number") {
          this[_read2]();
        } else {
          this[_open]();
        }
      }
      get fd() {
        return this[_fd];
      }
      get path() {
        return this[_path];
      }
      write() {
        throw new TypeError("this is a readable stream");
      }
      end() {
        throw new TypeError("this is a readable stream");
      }
      [_open]() {
        fs111.open(this[_path], "r", (er, fd) => this[_onopen](er, fd));
      }
      [_onopen](er, fd) {
        if (er) {
          this[_onerror](er);
        } else {
          this[_fd] = fd;
          this.emit("open", fd);
          this[_read2]();
        }
      }
      [_makeBuf]() {
        return Buffer.allocUnsafe(Math.min(this[_readSize], this[_remain]));
      }
      [_read2]() {
        if (!this[_reading]) {
          this[_reading] = true;
          const buf = this[_makeBuf]();
          if (buf.length === 0) {
            return process.nextTick(() => this[_onread](null, 0, buf));
          }
          fs111.read(this[_fd], buf, 0, buf.length, null, (er, br, b) => this[_onread](er, br, b));
        }
      }
      [_onread](er, br, buf) {
        this[_reading] = false;
        if (er) {
          this[_onerror](er);
        } else if (this[_handleChunk](br, buf)) {
          this[_read2]();
        }
      }
      [_close]() {
        if (this[_autoClose] && typeof this[_fd] === "number") {
          const fd = this[_fd];
          this[_fd] = null;
          fs111.close(fd, (er) => er ? this.emit("error", er) : this.emit("close"));
        }
      }
      [_onerror](er) {
        this[_reading] = true;
        this[_close]();
        this.emit("error", er);
      }
      [_handleChunk](br, buf) {
        let ret2 = false;
        this[_remain] -= br;
        if (br > 0) {
          ret2 = super.write(br < buf.length ? buf.slice(0, br) : buf);
        }
        if (br === 0 || this[_remain] <= 0) {
          ret2 = false;
          this[_close]();
          super.end();
        }
        return ret2;
      }
      emit(ev, data) {
        switch (ev) {
          case "prefinish":
          case "finish":
            break;
          case "drain":
            if (typeof this[_fd] === "number") {
              this[_read2]();
            }
            break;
          case "error":
            if (this[_errored]) {
              return;
            }
            this[_errored] = true;
            return super.emit(ev, data);
          default:
            return super.emit(ev, data);
        }
      }
    };
    var ReadStreamSync = class extends ReadStream {
      [_open]() {
        let threw = true;
        try {
          this[_onopen](null, fs111.openSync(this[_path], "r"));
          threw = false;
        } finally {
          if (threw) {
            this[_close]();
          }
        }
      }
      [_read2]() {
        let threw = true;
        try {
          if (!this[_reading]) {
            this[_reading] = true;
            do {
              const buf = this[_makeBuf]();
              const br = buf.length === 0 ? 0 : fs111.readSync(this[_fd], buf, 0, buf.length, null);
              if (!this[_handleChunk](br, buf)) {
                break;
              }
            } while (true);
            this[_reading] = false;
          }
          threw = false;
        } finally {
          if (threw) {
            this[_close]();
          }
        }
      }
      [_close]() {
        if (this[_autoClose] && typeof this[_fd] === "number") {
          const fd = this[_fd];
          this[_fd] = null;
          fs111.closeSync(fd);
          this.emit("close");
        }
      }
    };
    var WriteStream = class extends EE {
      constructor(path218, opt) {
        opt = opt || {};
        super(opt);
        this.readable = false;
        this.writable = true;
        this[_errored] = false;
        this[_writing] = false;
        this[_ended] = false;
        this[_needDrain] = false;
        this[_queue] = [];
        this[_path] = path218;
        this[_fd] = typeof opt.fd === "number" ? opt.fd : null;
        this[_mode] = opt.mode === void 0 ? 438 : opt.mode;
        this[_pos] = typeof opt.start === "number" ? opt.start : null;
        this[_autoClose] = typeof opt.autoClose === "boolean" ? opt.autoClose : true;
        const defaultFlag = this[_pos] !== null ? "r+" : "w";
        this[_defaultFlag] = opt.flags === void 0;
        this[_flags] = this[_defaultFlag] ? defaultFlag : opt.flags;
        if (this[_fd] === null) {
          this[_open]();
        }
      }
      emit(ev, data) {
        if (ev === "error") {
          if (this[_errored]) {
            return;
          }
          this[_errored] = true;
        }
        return super.emit(ev, data);
      }
      get fd() {
        return this[_fd];
      }
      get path() {
        return this[_path];
      }
      [_onerror](er) {
        this[_close]();
        this[_writing] = true;
        this.emit("error", er);
      }
      [_open]() {
        fs111.open(
          this[_path],
          this[_flags],
          this[_mode],
          (er, fd) => this[_onopen](er, fd)
        );
      }
      [_onopen](er, fd) {
        if (this[_defaultFlag] && this[_flags] === "r+" && er && er.code === "ENOENT") {
          this[_flags] = "w";
          this[_open]();
        } else if (er) {
          this[_onerror](er);
        } else {
          this[_fd] = fd;
          this.emit("open", fd);
          if (!this[_writing]) {
            this[_flush]();
          }
        }
      }
      end(buf, enc) {
        if (buf) {
          this.write(buf, enc);
        }
        this[_ended] = true;
        if (!this[_writing] && !this[_queue].length && typeof this[_fd] === "number") {
          this[_onwrite](null, 0);
        }
        return this;
      }
      write(buf, enc) {
        if (typeof buf === "string") {
          buf = Buffer.from(buf, enc);
        }
        if (this[_ended]) {
          this.emit("error", new Error("write() after end()"));
          return false;
        }
        if (this[_fd] === null || this[_writing] || this[_queue].length) {
          this[_queue].push(buf);
          this[_needDrain] = true;
          return false;
        }
        this[_writing] = true;
        this[_write](buf);
        return true;
      }
      [_write](buf) {
        fs111.write(this[_fd], buf, 0, buf.length, this[_pos], (er, bw) => this[_onwrite](er, bw));
      }
      [_onwrite](er, bw) {
        if (er) {
          this[_onerror](er);
        } else {
          if (this[_pos] !== null) {
            this[_pos] += bw;
          }
          if (this[_queue].length) {
            this[_flush]();
          } else {
            this[_writing] = false;
            if (this[_ended] && !this[_finished]) {
              this[_finished] = true;
              this[_close]();
              this.emit("finish");
            } else if (this[_needDrain]) {
              this[_needDrain] = false;
              this.emit("drain");
            }
          }
        }
      }
      [_flush]() {
        if (this[_queue].length === 0) {
          if (this[_ended]) {
            this[_onwrite](null, 0);
          }
        } else if (this[_queue].length === 1) {
          this[_write](this[_queue].pop());
        } else {
          const iovec = this[_queue];
          this[_queue] = [];
          writev(
            this[_fd],
            iovec,
            this[_pos],
            (er, bw) => this[_onwrite](er, bw)
          );
        }
      }
      [_close]() {
        if (this[_autoClose] && typeof this[_fd] === "number") {
          const fd = this[_fd];
          this[_fd] = null;
          fs111.close(fd, (er) => er ? this.emit("error", er) : this.emit("close"));
        }
      }
    };
    var WriteStreamSync = class extends WriteStream {
      [_open]() {
        let fd;
        if (this[_defaultFlag] && this[_flags] === "r+") {
          try {
            fd = fs111.openSync(this[_path], this[_flags], this[_mode]);
          } catch (er) {
            if (er.code === "ENOENT") {
              this[_flags] = "w";
              return this[_open]();
            } else {
              throw er;
            }
          }
        } else {
          fd = fs111.openSync(this[_path], this[_flags], this[_mode]);
        }
        this[_onopen](null, fd);
      }
      [_close]() {
        if (this[_autoClose] && typeof this[_fd] === "number") {
          const fd = this[_fd];
          this[_fd] = null;
          fs111.closeSync(fd);
          this.emit("close");
        }
      }
      [_write](buf) {
        let threw = true;
        try {
          this[_onwrite](
            null,
            fs111.writeSync(this[_fd], buf, 0, buf.length, this[_pos])
          );
          threw = false;
        } finally {
          if (threw) {
            try {
              this[_close]();
            } catch {
            }
          }
        }
      }
    };
    exports2.ReadStream = ReadStream;
    exports2.ReadStreamSync = ReadStreamSync;
    exports2.WriteStream = WriteStream;
    exports2.WriteStreamSync = WriteStreamSync;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/cacache/20.0.4/5237f52e66376ca9fee4060f924d386aa69cfd622d99943cde0549aa3b26faca/node_modules/cacache/lib/content/read.js
var require_read2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/cacache/20.0.4/5237f52e66376ca9fee4060f924d386aa69cfd622d99943cde0549aa3b26faca/node_modules/cacache/lib/content/read.js"(exports2, module2) {
    "use strict";
    var fs111 = __require("fs/promises");
    var fsm = require_lib32();
    var ssri6 = require_lib6();
    var contentPath = require_path4();
    var Pipeline = require_minipass_pipeline();
    module2.exports = read2;
    var MAX_SINGLE_READ_SIZE = 64 * 1024 * 1024;
    async function read2(cache, integrity, opts2 = {}) {
      const { size } = opts2;
      const { stat: stat2, cpath, sri } = await withContentSri(cache, integrity, async (cpath2, sri2) => {
        const stat3 = size ? { size } : await fs111.stat(cpath2);
        return { stat: stat3, cpath: cpath2, sri: sri2 };
      });
      if (stat2.size > MAX_SINGLE_READ_SIZE) {
        return readPipeline(cpath, stat2.size, sri, new Pipeline()).concat();
      }
      const data = await fs111.readFile(cpath, { encoding: null });
      if (stat2.size !== data.length) {
        throw sizeError(stat2.size, data.length);
      }
      if (!ssri6.checkData(data, sri)) {
        throw integrityError(sri, cpath);
      }
      return data;
    }
    var readPipeline = (cpath, size, sri, stream2) => {
      stream2.push(
        new fsm.ReadStream(cpath, {
          size,
          readSize: MAX_SINGLE_READ_SIZE
        }),
        ssri6.integrityStream({
          integrity: sri,
          size
        })
      );
      return stream2;
    };
    module2.exports.stream = readStream;
    module2.exports.readStream = readStream;
    function readStream(cache, integrity, opts2 = {}) {
      const { size } = opts2;
      const stream2 = new Pipeline();
      Promise.resolve().then(async () => {
        const { stat: stat2, cpath, sri } = await withContentSri(cache, integrity, async (cpath2, sri2) => {
          const stat3 = size ? { size } : await fs111.stat(cpath2);
          return { stat: stat3, cpath: cpath2, sri: sri2 };
        });
        return readPipeline(cpath, stat2.size, sri, stream2);
      }).catch((err) => stream2.emit("error", err));
      return stream2;
    }
    module2.exports.copy = copy2;
    function copy2(cache, integrity, dest) {
      return withContentSri(cache, integrity, (cpath) => {
        return fs111.copyFile(cpath, dest);
      });
    }
    module2.exports.hasContent = hasContent;
    async function hasContent(cache, integrity) {
      if (!integrity) {
        return false;
      }
      try {
        return await withContentSri(cache, integrity, async (cpath, sri) => {
          const stat2 = await fs111.stat(cpath);
          return { size: stat2.size, sri, stat: stat2 };
        });
      } catch (err) {
        if (err.code === "ENOENT") {
          return false;
        }
        if (err.code === "EPERM") {
          if (process.platform !== "win32") {
            throw err;
          } else {
            return false;
          }
        }
      }
    }
    async function withContentSri(cache, integrity, fn) {
      const sri = ssri6.parse(integrity);
      const algo = sri.pickAlgorithm();
      const digests = sri[algo];
      if (digests.length <= 1) {
        const cpath = contentPath(cache, digests[0]);
        return fn(cpath, digests[0]);
      } else {
        const results = await Promise.all(digests.map(async (meta) => {
          try {
            return await withContentSri(cache, meta, fn);
          } catch (err) {
            if (err.code === "ENOENT") {
              return Object.assign(
                new Error("No matching content found for " + sri.toString()),
                { code: "ENOENT" }
              );
            }
            return err;
          }
        }));
        const result2 = results.find((r) => !(r instanceof Error));
        if (result2) {
          return result2;
        }
        const enoentError = results.find((r) => r.code === "ENOENT");
        if (enoentError) {
          throw enoentError;
        }
        throw results.find((r) => r instanceof Error);
      }
    }
    function sizeError(expected, found) {
      const err = new Error(`Bad data size: expected inserted data to be ${expected} bytes, but got ${found} instead`);
      err.expected = expected;
      err.found = found;
      err.code = "EBADSIZE";
      return err;
    }
    function integrityError(sri, path218) {
      const err = new Error(`Integrity verification failed for ${sri} (${path218})`);
      err.code = "EINTEGRITY";
      err.sri = sri;
      err.path = path218;
      return err;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/cacache/20.0.4/5237f52e66376ca9fee4060f924d386aa69cfd622d99943cde0549aa3b26faca/node_modules/cacache/lib/get.js
var require_get4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/cacache/20.0.4/5237f52e66376ca9fee4060f924d386aa69cfd622d99943cde0549aa3b26faca/node_modules/cacache/lib/get.js"(exports2, module2) {
    "use strict";
    var Collect = require_minipass_collect();
    var { Minipass } = require_commonjs();
    var Pipeline = require_minipass_pipeline();
    var index = require_entry_index();
    var memo = require_memoization();
    var read2 = require_read2();
    async function getData(cache, key, opts2 = {}) {
      const { integrity, memoize: memoize2, size } = opts2;
      const memoized = memo.get(cache, key, opts2);
      if (memoized && memoize2 !== false) {
        return {
          metadata: memoized.entry.metadata,
          data: memoized.data,
          integrity: memoized.entry.integrity,
          size: memoized.entry.size
        };
      }
      const entry = await index.find(cache, key, opts2);
      if (!entry) {
        throw new index.NotFoundError(cache, key);
      }
      const data = await read2(cache, entry.integrity, { integrity, size });
      if (memoize2) {
        memo.put(cache, entry, data, opts2);
      }
      return {
        data,
        metadata: entry.metadata,
        size: entry.size,
        integrity: entry.integrity
      };
    }
    module2.exports = getData;
    async function getDataByDigest(cache, key, opts2 = {}) {
      const { integrity, memoize: memoize2, size } = opts2;
      const memoized = memo.get.byDigest(cache, key, opts2);
      if (memoized && memoize2 !== false) {
        return memoized;
      }
      const res = await read2(cache, key, { integrity, size });
      if (memoize2) {
        memo.put.byDigest(cache, key, res, opts2);
      }
      return res;
    }
    module2.exports.byDigest = getDataByDigest;
    var getMemoizedStream = (memoized) => {
      const stream2 = new Minipass();
      stream2.on("newListener", function(ev, cb) {
        ev === "metadata" && cb(memoized.entry.metadata);
        ev === "integrity" && cb(memoized.entry.integrity);
        ev === "size" && cb(memoized.entry.size);
      });
      stream2.end(memoized.data);
      return stream2;
    };
    function getStream(cache, key, opts2 = {}) {
      const { memoize: memoize2, size } = opts2;
      const memoized = memo.get(cache, key, opts2);
      if (memoized && memoize2 !== false) {
        return getMemoizedStream(memoized);
      }
      const stream2 = new Pipeline();
      Promise.resolve().then(async () => {
        const entry = await index.find(cache, key);
        if (!entry) {
          throw new index.NotFoundError(cache, key);
        }
        stream2.emit("metadata", entry.metadata);
        stream2.emit("integrity", entry.integrity);
        stream2.emit("size", entry.size);
        stream2.on("newListener", function(ev, cb) {
          ev === "metadata" && cb(entry.metadata);
          ev === "integrity" && cb(entry.integrity);
          ev === "size" && cb(entry.size);
        });
        const src2 = read2.readStream(
          cache,
          entry.integrity,
          { ...opts2, size: typeof size !== "number" ? entry.size : size }
        );
        if (memoize2) {
          const memoStream = new Collect.PassThrough();
          memoStream.on("collect", (data) => memo.put(cache, entry, data, opts2));
          stream2.unshift(memoStream);
        }
        stream2.unshift(src2);
        return stream2;
      }).catch((err) => stream2.emit("error", err));
      return stream2;
    }
    module2.exports.stream = getStream;
    function getStreamDigest(cache, integrity, opts2 = {}) {
      const { memoize: memoize2 } = opts2;
      const memoized = memo.get.byDigest(cache, integrity, opts2);
      if (memoized && memoize2 !== false) {
        const stream2 = new Minipass();
        stream2.end(memoized);
        return stream2;
      } else {
        const stream2 = read2.readStream(cache, integrity, opts2);
        if (!memoize2) {
          return stream2;
        }
        const memoStream = new Collect.PassThrough();
        memoStream.on("collect", (data) => memo.put.byDigest(
          cache,
          integrity,
          data,
          opts2
        ));
        return new Pipeline(stream2, memoStream);
      }
    }
    module2.exports.stream.byDigest = getStreamDigest;
    function info(cache, key, opts2 = {}) {
      const { memoize: memoize2 } = opts2;
      const memoized = memo.get(cache, key, opts2);
      if (memoized && memoize2 !== false) {
        return Promise.resolve(memoized.entry);
      } else {
        return index.find(cache, key);
      }
    }
    module2.exports.info = info;
    async function copy2(cache, key, dest, opts2 = {}) {
      const entry = await index.find(cache, key, opts2);
      if (!entry) {
        throw new index.NotFoundError(cache, key);
      }
      await read2.copy(cache, entry.integrity, dest, opts2);
      return {
        metadata: entry.metadata,
        size: entry.size,
        integrity: entry.integrity
      };
    }
    module2.exports.copy = copy2;
    async function copyByDigest(cache, key, dest, opts2 = {}) {
      await read2.copy(cache, key, dest, opts2);
      return key;
    }
    module2.exports.copy.byDigest = copyByDigest;
    module2.exports.hasContent = read2.hasContent;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/cacache/20.0.4/5237f52e66376ca9fee4060f924d386aa69cfd622d99943cde0549aa3b26faca/node_modules/cacache/lib/content/write.js
var require_write = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/cacache/20.0.4/5237f52e66376ca9fee4060f924d386aa69cfd622d99943cde0549aa3b26faca/node_modules/cacache/lib/content/write.js"(exports2, module2) {
    "use strict";
    var events = __require("events");
    var contentPath = require_path4();
    var fs111 = __require("fs/promises");
    var { moveFile } = require_lib31();
    var { Minipass } = require_commonjs();
    var Pipeline = require_minipass_pipeline();
    var Flush = require_minipass_flush();
    var path218 = __require("path");
    var ssri6 = require_lib6();
    var { tmpName } = require_tmp();
    var fsm = require_lib32();
    module2.exports = write;
    var moveOperations = /* @__PURE__ */ new Map();
    async function write(cache, data, opts2 = {}) {
      const { algorithms, size, integrity } = opts2;
      if (typeof size === "number" && data.length !== size) {
        throw sizeError(size, data.length);
      }
      const sri = ssri6.fromData(data, algorithms ? { algorithms } : {});
      if (integrity && !ssri6.checkData(data, integrity, opts2)) {
        throw checksumError(integrity, sri);
      }
      for (const algo in sri) {
        const tmp = await makeTmp(cache, opts2);
        const hash2 = sri[algo].toString();
        try {
          await fs111.writeFile(tmp.target, data, { flag: "wx" });
          await moveToDestination(tmp, cache, hash2, opts2);
        } finally {
          if (!tmp.moved) {
            await fs111.rm(tmp.target, { recursive: true, force: true });
          }
        }
      }
      return { integrity: sri, size: data.length };
    }
    module2.exports.stream = writeStream;
    var CacacheWriteStream = class extends Flush {
      constructor(cache, opts2) {
        super();
        this.opts = opts2;
        this.cache = cache;
        this.inputStream = new Minipass();
        this.inputStream.on("error", (er) => this.emit("error", er));
        this.inputStream.on("drain", () => this.emit("drain"));
        this.handleContentP = null;
      }
      write(chunk, encoding, cb) {
        if (!this.handleContentP) {
          this.handleContentP = handleContent(
            this.inputStream,
            this.cache,
            this.opts
          );
          this.handleContentP.catch((error) => this.emit("error", error));
        }
        return this.inputStream.write(chunk, encoding, cb);
      }
      flush(cb) {
        this.inputStream.end(() => {
          if (!this.handleContentP) {
            const e = new Error("Cache input stream was empty");
            e.code = "ENODATA";
            return Promise.reject(e).catch(cb);
          }
          this.handleContentP.then(
            (res) => {
              res.integrity && this.emit("integrity", res.integrity);
              res.size !== null && this.emit("size", res.size);
              cb();
            },
            (er) => cb(er)
          );
        });
      }
    };
    function writeStream(cache, opts2 = {}) {
      return new CacacheWriteStream(cache, opts2);
    }
    async function handleContent(inputStream, cache, opts2) {
      const tmp = await makeTmp(cache, opts2);
      try {
        const res = await pipeToTmp(inputStream, cache, tmp.target, opts2);
        await moveToDestination(
          tmp,
          cache,
          res.integrity,
          opts2
        );
        return res;
      } finally {
        if (!tmp.moved) {
          await fs111.rm(tmp.target, { recursive: true, force: true });
        }
      }
    }
    async function pipeToTmp(inputStream, cache, tmpTarget, opts2) {
      const outStream = new fsm.WriteStream(tmpTarget, {
        flags: "wx"
      });
      if (opts2.integrityEmitter) {
        const [integrity2, size2] = await Promise.all([
          events.once(opts2.integrityEmitter, "integrity").then((res) => res[0]),
          events.once(opts2.integrityEmitter, "size").then((res) => res[0]),
          new Pipeline(inputStream, outStream).promise()
        ]);
        return { integrity: integrity2, size: size2 };
      }
      let integrity;
      let size;
      const hashStream = ssri6.integrityStream({
        integrity: opts2.integrity,
        algorithms: opts2.algorithms,
        size: opts2.size
      });
      hashStream.on("integrity", (i2) => {
        integrity = i2;
      });
      hashStream.on("size", (s) => {
        size = s;
      });
      const pipeline2 = new Pipeline(inputStream, hashStream, outStream);
      await pipeline2.promise();
      return { integrity, size };
    }
    async function makeTmp(cache, opts2) {
      const tmpTarget = tmpName(cache, opts2.tmpPrefix);
      await fs111.mkdir(path218.dirname(tmpTarget), { recursive: true });
      return {
        target: tmpTarget,
        moved: false
      };
    }
    async function moveToDestination(tmp, cache, sri) {
      const destination = contentPath(cache, sri);
      const destDir = path218.dirname(destination);
      if (moveOperations.has(destination)) {
        return moveOperations.get(destination);
      }
      moveOperations.set(
        destination,
        fs111.mkdir(destDir, { recursive: true }).then(async () => {
          await moveFile(tmp.target, destination, { overwrite: false });
          tmp.moved = true;
          return tmp.moved;
        }).catch((err) => {
          if (!err.message.startsWith("The destination file exists")) {
            throw Object.assign(err, { code: "EEXIST" });
          }
        }).finally(() => {
          moveOperations.delete(destination);
        })
      );
      return moveOperations.get(destination);
    }
    function sizeError(expected, found) {
      const err = new Error(`Bad data size: expected inserted data to be ${expected} bytes, but got ${found} instead`);
      err.expected = expected;
      err.found = found;
      err.code = "EBADSIZE";
      return err;
    }
    function checksumError(expected, found) {
      const err = new Error(`Integrity check failed:
  Wanted: ${expected}
   Found: ${found}`);
      err.code = "EINTEGRITY";
      err.expected = expected;
      err.found = found;
      return err;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/cacache/20.0.4/5237f52e66376ca9fee4060f924d386aa69cfd622d99943cde0549aa3b26faca/node_modules/cacache/lib/put.js
var require_put = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/cacache/20.0.4/5237f52e66376ca9fee4060f924d386aa69cfd622d99943cde0549aa3b26faca/node_modules/cacache/lib/put.js"(exports2, module2) {
    "use strict";
    var index = require_entry_index();
    var memo = require_memoization();
    var write = require_write();
    var Flush = require_minipass_flush();
    var { PassThrough: PassThrough3 } = require_minipass_collect();
    var Pipeline = require_minipass_pipeline();
    var putOpts = (opts2) => ({
      algorithms: ["sha512"],
      ...opts2
    });
    module2.exports = putData;
    async function putData(cache, key, data, opts2 = {}) {
      const { memoize: memoize2 } = opts2;
      opts2 = putOpts(opts2);
      const res = await write(cache, data, opts2);
      const entry = await index.insert(cache, key, res.integrity, { ...opts2, size: res.size });
      if (memoize2) {
        memo.put(cache, entry, data, opts2);
      }
      return res.integrity;
    }
    module2.exports.stream = putStream;
    function putStream(cache, key, opts2 = {}) {
      const { memoize: memoize2 } = opts2;
      opts2 = putOpts(opts2);
      let integrity;
      let size;
      let error;
      let memoData;
      const pipeline2 = new Pipeline();
      if (memoize2) {
        const memoizer = new PassThrough3().on("collect", (data) => {
          memoData = data;
        });
        pipeline2.push(memoizer);
      }
      const contentStream = write.stream(cache, opts2).on("integrity", (int2) => {
        integrity = int2;
      }).on("size", (s) => {
        size = s;
      }).on("error", (err) => {
        error = err;
      });
      pipeline2.push(contentStream);
      pipeline2.push(new Flush({
        async flush() {
          if (!error) {
            const entry = await index.insert(cache, key, integrity, { ...opts2, size });
            if (memoize2 && memoData) {
              memo.put(cache, entry, memoData, opts2);
            }
            pipeline2.emit("integrity", integrity);
            pipeline2.emit("size", size);
          }
        }
      }));
      return pipeline2;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/glob/13.0.6/0cd9cc1d000b55b0cde39b720ea69f8d536ef2e8269779531fc36139dff76cd3/node_modules/glob/dist/commonjs/index.min.js
var require_index_min3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/glob/13.0.6/0cd9cc1d000b55b0cde39b720ea69f8d536ef2e8269779531fc36139dff76cd3/node_modules/glob/dist/commonjs/index.min.js"(exports2) {
    "use strict";
    var R2 = (n2, t2) => () => (t2 || n2((t2 = { exports: {} }).exports, t2), t2.exports);
    var Ge = R2((Y) => {
      "use strict";
      Object.defineProperty(Y, "__esModule", { value: true });
      Y.range = Y.balanced = void 0;
      var Gs = (n2, t2, e) => {
        let s = n2 instanceof RegExp ? Ie(n2, e) : n2, i2 = t2 instanceof RegExp ? Ie(t2, e) : t2, r = s !== null && i2 != null && (0, Y.range)(s, i2, e);
        return r && { start: r[0], end: r[1], pre: e.slice(0, r[0]), body: e.slice(r[0] + s.length, r[1]), post: e.slice(r[1] + i2.length) };
      };
      Y.balanced = Gs;
      var Ie = (n2, t2) => {
        let e = t2.match(n2);
        return e ? e[0] : null;
      }, zs = (n2, t2, e) => {
        let s, i2, r, h2, o2, a2 = e.indexOf(n2), l = e.indexOf(t2, a2 + 1), f = a2;
        if (a2 >= 0 && l > 0) {
          if (n2 === t2) return [a2, l];
          for (s = [], r = e.length; f >= 0 && !o2; ) {
            if (f === a2) s.push(f), a2 = e.indexOf(n2, f + 1);
            else if (s.length === 1) {
              let c3 = s.pop();
              c3 !== void 0 && (o2 = [c3, l]);
            } else i2 = s.pop(), i2 !== void 0 && i2 < r && (r = i2, h2 = l), l = e.indexOf(t2, f + 1);
            f = a2 < l && a2 >= 0 ? a2 : l;
          }
          s.length && h2 !== void 0 && (o2 = [r, h2]);
        }
        return o2;
      };
      Y.range = zs;
    });
    var Ke = R2((it) => {
      "use strict";
      Object.defineProperty(it, "__esModule", { value: true });
      it.EXPANSION_MAX = void 0;
      it.expand = ei;
      var ze = Ge(), Ue = "\0SLASH" + Math.random() + "\0", $e = "\0OPEN" + Math.random() + "\0", ue = "\0CLOSE" + Math.random() + "\0", qe = "\0COMMA" + Math.random() + "\0", He = "\0PERIOD" + Math.random() + "\0", Us = new RegExp(Ue, "g"), $s = new RegExp($e, "g"), qs = new RegExp(ue, "g"), Hs = new RegExp(qe, "g"), Vs = new RegExp(He, "g"), Ks = /\\\\/g, Xs = /\\{/g, Ys = /\\}/g, Js = /\\,/g, Zs = /\\./g;
      it.EXPANSION_MAX = 1e5;
      function ce(n2) {
        return isNaN(n2) ? n2.charCodeAt(0) : parseInt(n2, 10);
      }
      function Qs(n2) {
        return n2.replace(Ks, Ue).replace(Xs, $e).replace(Ys, ue).replace(Js, qe).replace(Zs, He);
      }
      function ti(n2) {
        return n2.replace(Us, "\\").replace($s, "{").replace(qs, "}").replace(Hs, ",").replace(Vs, ".");
      }
      function Ve(n2) {
        if (!n2) return [""];
        let t2 = [], e = (0, ze.balanced)("{", "}", n2);
        if (!e) return n2.split(",");
        let { pre: s, body: i2, post: r } = e, h2 = s.split(",");
        h2[h2.length - 1] += "{" + i2 + "}";
        let o2 = Ve(r);
        return r.length && (h2[h2.length - 1] += o2.shift(), h2.push.apply(h2, o2)), t2.push.apply(t2, h2), t2;
      }
      function ei(n2, t2 = {}) {
        if (!n2) return [];
        let { max: e = it.EXPANSION_MAX } = t2;
        return n2.slice(0, 2) === "{}" && (n2 = "\\{\\}" + n2.slice(2)), ht(Qs(n2), e, true).map(ti);
      }
      function si(n2) {
        return "{" + n2 + "}";
      }
      function ii(n2) {
        return /^-?0\d/.test(n2);
      }
      function ri(n2, t2) {
        return n2 <= t2;
      }
      function ni(n2, t2) {
        return n2 >= t2;
      }
      function ht(n2, t2, e) {
        let s = [], i2 = (0, ze.balanced)("{", "}", n2);
        if (!i2) return [n2];
        let r = i2.pre, h2 = i2.post.length ? ht(i2.post, t2, false) : [""];
        if (/\$$/.test(i2.pre)) for (let o2 = 0; o2 < h2.length && o2 < t2; o2++) {
          let a2 = r + "{" + i2.body + "}" + h2[o2];
          s.push(a2);
        }
        else {
          let o2 = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(i2.body), a2 = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(i2.body), l = o2 || a2, f = i2.body.indexOf(",") >= 0;
          if (!l && !f) return i2.post.match(/,(?!,).*\}/) ? (n2 = i2.pre + "{" + i2.body + ue + i2.post, ht(n2, t2, true)) : [n2];
          let c3;
          if (l) c3 = i2.body.split(/\.\./);
          else if (c3 = Ve(i2.body), c3.length === 1 && c3[0] !== void 0 && (c3 = ht(c3[0], t2, false).map(si), c3.length === 1)) return h2.map((u4) => i2.pre + c3[0] + u4);
          let d;
          if (l && c3[0] !== void 0 && c3[1] !== void 0) {
            let u4 = ce(c3[0]), m = ce(c3[1]), p = Math.max(c3[0].length, c3[1].length), b = c3.length === 3 && c3[2] !== void 0 ? Math.abs(ce(c3[2])) : 1, w = ri;
            m < u4 && (b *= -1, w = ni);
            let E = c3.some(ii);
            d = [];
            for (let y = u4; w(y, m); y += b) {
              let S2;
              if (a2) S2 = String.fromCharCode(y), S2 === "\\" && (S2 = "");
              else if (S2 = String(y), E) {
                let B = p - S2.length;
                if (B > 0) {
                  let U2 = new Array(B + 1).join("0");
                  y < 0 ? S2 = "-" + U2 + S2.slice(1) : S2 = U2 + S2;
                }
              }
              d.push(S2);
            }
          } else {
            d = [];
            for (let u4 = 0; u4 < c3.length; u4++) d.push.apply(d, ht(c3[u4], t2, false));
          }
          for (let u4 = 0; u4 < d.length; u4++) for (let m = 0; m < h2.length && s.length < t2; m++) {
            let p = r + d[u4] + h2[m];
            (!e || l || p) && s.push(p);
          }
        }
        return s;
      }
    });
    var Xe = R2((Ct) => {
      "use strict";
      Object.defineProperty(Ct, "__esModule", { value: true });
      Ct.assertValidPattern = void 0;
      var hi = 1024 * 64, oi = (n2) => {
        if (typeof n2 != "string") throw new TypeError("invalid pattern");
        if (n2.length > hi) throw new TypeError("pattern is too long");
      };
      Ct.assertValidPattern = oi;
    });
    var Je = R2((Rt) => {
      "use strict";
      Object.defineProperty(Rt, "__esModule", { value: true });
      Rt.parseClass = void 0;
      var ai = { "[:alnum:]": ["\\p{L}\\p{Nl}\\p{Nd}", true], "[:alpha:]": ["\\p{L}\\p{Nl}", true], "[:ascii:]": ["\\x00-\\x7f", false], "[:blank:]": ["\\p{Zs}\\t", true], "[:cntrl:]": ["\\p{Cc}", true], "[:digit:]": ["\\p{Nd}", true], "[:graph:]": ["\\p{Z}\\p{C}", true, true], "[:lower:]": ["\\p{Ll}", true], "[:print:]": ["\\p{C}", true], "[:punct:]": ["\\p{P}", true], "[:space:]": ["\\p{Z}\\t\\r\\n\\v\\f", true], "[:upper:]": ["\\p{Lu}", true], "[:word:]": ["\\p{L}\\p{Nl}\\p{Nd}\\p{Pc}", true], "[:xdigit:]": ["A-Fa-f0-9", false] }, ot = (n2) => n2.replace(/[[\]\\-]/g, "\\$&"), li = (n2) => n2.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"), Ye = (n2) => n2.join(""), ci = (n2, t2) => {
        let e = t2;
        if (n2.charAt(e) !== "[") throw new Error("not in a brace expression");
        let s = [], i2 = [], r = e + 1, h2 = false, o2 = false, a2 = false, l = false, f = e, c3 = "";
        t: for (; r < n2.length; ) {
          let p = n2.charAt(r);
          if ((p === "!" || p === "^") && r === e + 1) {
            l = true, r++;
            continue;
          }
          if (p === "]" && h2 && !a2) {
            f = r + 1;
            break;
          }
          if (h2 = true, p === "\\" && !a2) {
            a2 = true, r++;
            continue;
          }
          if (p === "[" && !a2) {
            for (let [b, [w, v, E]] of Object.entries(ai)) if (n2.startsWith(b, r)) {
              if (c3) return ["$.", false, n2.length - e, true];
              r += b.length, E ? i2.push(w) : s.push(w), o2 = o2 || v;
              continue t;
            }
          }
          if (a2 = false, c3) {
            p > c3 ? s.push(ot(c3) + "-" + ot(p)) : p === c3 && s.push(ot(p)), c3 = "", r++;
            continue;
          }
          if (n2.startsWith("-]", r + 1)) {
            s.push(ot(p + "-")), r += 2;
            continue;
          }
          if (n2.startsWith("-", r + 1)) {
            c3 = p, r += 2;
            continue;
          }
          s.push(ot(p)), r++;
        }
        if (f < r) return ["", false, 0, false];
        if (!s.length && !i2.length) return ["$.", false, n2.length - e, true];
        if (i2.length === 0 && s.length === 1 && /^\\?.$/.test(s[0]) && !l) {
          let p = s[0].length === 2 ? s[0].slice(-1) : s[0];
          return [li(p), false, f - e, false];
        }
        let d = "[" + (l ? "^" : "") + Ye(s) + "]", u4 = "[" + (l ? "" : "^") + Ye(i2) + "]";
        return [s.length && i2.length ? "(" + d + "|" + u4 + ")" : s.length ? d : u4, o2, f - e, true];
      };
      Rt.parseClass = ci;
    });
    var kt = R2((At) => {
      "use strict";
      Object.defineProperty(At, "__esModule", { value: true });
      At.unescape = void 0;
      var ui = (n2, { windowsPathsNoEscape: t2 = false, magicalBraces: e = true } = {}) => e ? t2 ? n2.replace(/\[([^\/\\])\]/g, "$1") : n2.replace(/((?!\\).|^)\[([^\/\\])\]/g, "$1$2").replace(/\\([^\/])/g, "$1") : t2 ? n2.replace(/\[([^\/\\{}])\]/g, "$1") : n2.replace(/((?!\\).|^)\[([^\/\\{}])\]/g, "$1$2").replace(/\\([^\/{}])/g, "$1");
      At.unescape = ui;
    });
    var pe = R2((Dt) => {
      "use strict";
      Object.defineProperty(Dt, "__esModule", { value: true });
      Dt.AST = void 0;
      var fi = Je(), Mt = kt(), di = /* @__PURE__ */ new Set(["!", "?", "+", "*", "@"]), Ze = (n2) => di.has(n2), pi = "(?!(?:^|/)\\.\\.?(?:$|/))", Pt = "(?!\\.)", mi = /* @__PURE__ */ new Set(["[", "."]), gi = /* @__PURE__ */ new Set(["..", "."]), wi = new Set("().*{}+?[]^$\\!"), bi = (n2) => n2.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"), de = "[^/]", Qe = de + "*?", ts = de + "+?", fe = class n2 {
        type;
        #t;
        #s;
        #n = false;
        #r = [];
        #h;
        #S;
        #w;
        #c = false;
        #o;
        #f;
        #u = false;
        constructor(t2, e, s = {}) {
          this.type = t2, t2 && (this.#s = true), this.#h = e, this.#t = this.#h ? this.#h.#t : this, this.#o = this.#t === this ? s : this.#t.#o, this.#w = this.#t === this ? [] : this.#t.#w, t2 === "!" && !this.#t.#c && this.#w.push(this), this.#S = this.#h ? this.#h.#r.length : 0;
        }
        get hasMagic() {
          if (this.#s !== void 0) return this.#s;
          for (let t2 of this.#r) if (typeof t2 != "string" && (t2.type || t2.hasMagic)) return this.#s = true;
          return this.#s;
        }
        toString() {
          return this.#f !== void 0 ? this.#f : this.type ? this.#f = this.type + "(" + this.#r.map((t2) => String(t2)).join("|") + ")" : this.#f = this.#r.map((t2) => String(t2)).join("");
        }
        #a() {
          if (this !== this.#t) throw new Error("should only call on root");
          if (this.#c) return this;
          this.toString(), this.#c = true;
          let t2;
          for (; t2 = this.#w.pop(); ) {
            if (t2.type !== "!") continue;
            let e = t2, s = e.#h;
            for (; s; ) {
              for (let i2 = e.#S + 1; !s.type && i2 < s.#r.length; i2++) for (let r of t2.#r) {
                if (typeof r == "string") throw new Error("string part in extglob AST??");
                r.copyIn(s.#r[i2]);
              }
              e = s, s = e.#h;
            }
          }
          return this;
        }
        push(...t2) {
          for (let e of t2) if (e !== "") {
            if (typeof e != "string" && !(e instanceof n2 && e.#h === this)) throw new Error("invalid part: " + e);
            this.#r.push(e);
          }
        }
        toJSON() {
          let t2 = this.type === null ? this.#r.slice().map((e) => typeof e == "string" ? e : e.toJSON()) : [this.type, ...this.#r.map((e) => e.toJSON())];
          return this.isStart() && !this.type && t2.unshift([]), this.isEnd() && (this === this.#t || this.#t.#c && this.#h?.type === "!") && t2.push({}), t2;
        }
        isStart() {
          if (this.#t === this) return true;
          if (!this.#h?.isStart()) return false;
          if (this.#S === 0) return true;
          let t2 = this.#h;
          for (let e = 0; e < this.#S; e++) {
            let s = t2.#r[e];
            if (!(s instanceof n2 && s.type === "!")) return false;
          }
          return true;
        }
        isEnd() {
          if (this.#t === this || this.#h?.type === "!") return true;
          if (!this.#h?.isEnd()) return false;
          if (!this.type) return this.#h?.isEnd();
          let t2 = this.#h ? this.#h.#r.length : 0;
          return this.#S === t2 - 1;
        }
        copyIn(t2) {
          typeof t2 == "string" ? this.push(t2) : this.push(t2.clone(this));
        }
        clone(t2) {
          let e = new n2(this.type, t2);
          for (let s of this.#r) e.copyIn(s);
          return e;
        }
        static #i(t2, e, s, i2) {
          let r = false, h2 = false, o2 = -1, a2 = false;
          if (e.type === null) {
            let u4 = s, m = "";
            for (; u4 < t2.length; ) {
              let p = t2.charAt(u4++);
              if (r || p === "\\") {
                r = !r, m += p;
                continue;
              }
              if (h2) {
                u4 === o2 + 1 ? (p === "^" || p === "!") && (a2 = true) : p === "]" && !(u4 === o2 + 2 && a2) && (h2 = false), m += p;
                continue;
              } else if (p === "[") {
                h2 = true, o2 = u4, a2 = false, m += p;
                continue;
              }
              if (!i2.noext && Ze(p) && t2.charAt(u4) === "(") {
                e.push(m), m = "";
                let b = new n2(p, e);
                u4 = n2.#i(t2, b, u4, i2), e.push(b);
                continue;
              }
              m += p;
            }
            return e.push(m), u4;
          }
          let l = s + 1, f = new n2(null, e), c3 = [], d = "";
          for (; l < t2.length; ) {
            let u4 = t2.charAt(l++);
            if (r || u4 === "\\") {
              r = !r, d += u4;
              continue;
            }
            if (h2) {
              l === o2 + 1 ? (u4 === "^" || u4 === "!") && (a2 = true) : u4 === "]" && !(l === o2 + 2 && a2) && (h2 = false), d += u4;
              continue;
            } else if (u4 === "[") {
              h2 = true, o2 = l, a2 = false, d += u4;
              continue;
            }
            if (Ze(u4) && t2.charAt(l) === "(") {
              f.push(d), d = "";
              let m = new n2(u4, f);
              f.push(m), l = n2.#i(t2, m, l, i2);
              continue;
            }
            if (u4 === "|") {
              f.push(d), d = "", c3.push(f), f = new n2(null, e);
              continue;
            }
            if (u4 === ")") return d === "" && e.#r.length === 0 && (e.#u = true), f.push(d), d = "", e.push(...c3, f), l;
            d += u4;
          }
          return e.type = null, e.#s = void 0, e.#r = [t2.substring(s - 1)], l;
        }
        static fromGlob(t2, e = {}) {
          let s = new n2(null, void 0, e);
          return n2.#i(t2, s, 0, e), s;
        }
        toMMPattern() {
          if (this !== this.#t) return this.#t.toMMPattern();
          let t2 = this.toString(), [e, s, i2, r] = this.toRegExpSource();
          if (!(i2 || this.#s || this.#o.nocase && !this.#o.nocaseMagicOnly && t2.toUpperCase() !== t2.toLowerCase())) return s;
          let o2 = (this.#o.nocase ? "i" : "") + (r ? "u" : "");
          return Object.assign(new RegExp(`^${e}$`, o2), { _src: e, _glob: t2 });
        }
        get options() {
          return this.#o;
        }
        toRegExpSource(t2) {
          let e = t2 ?? !!this.#o.dot;
          if (this.#t === this && this.#a(), !this.type) {
            let a2 = this.isStart() && this.isEnd() && !this.#r.some((u4) => typeof u4 != "string"), l = this.#r.map((u4) => {
              let [m, p, b, w] = typeof u4 == "string" ? n2.#v(u4, this.#s, a2) : u4.toRegExpSource(t2);
              return this.#s = this.#s || b, this.#n = this.#n || w, m;
            }).join(""), f = "";
            if (this.isStart() && typeof this.#r[0] == "string" && !(this.#r.length === 1 && gi.has(this.#r[0]))) {
              let m = mi, p = e && m.has(l.charAt(0)) || l.startsWith("\\.") && m.has(l.charAt(2)) || l.startsWith("\\.\\.") && m.has(l.charAt(4)), b = !e && !t2 && m.has(l.charAt(0));
              f = p ? pi : b ? Pt : "";
            }
            let c3 = "";
            return this.isEnd() && this.#t.#c && this.#h?.type === "!" && (c3 = "(?:$|\\/)"), [f + l + c3, (0, Mt.unescape)(l), this.#s = !!this.#s, this.#n];
          }
          let s = this.type === "*" || this.type === "+", i2 = this.type === "!" ? "(?:(?!(?:" : "(?:", r = this.#d(e);
          if (this.isStart() && this.isEnd() && !r && this.type !== "!") {
            let a2 = this.toString();
            return this.#r = [a2], this.type = null, this.#s = void 0, [a2, (0, Mt.unescape)(this.toString()), false, false];
          }
          let h2 = !s || t2 || e || !Pt ? "" : this.#d(true);
          h2 === r && (h2 = ""), h2 && (r = `(?:${r})(?:${h2})*?`);
          let o2 = "";
          if (this.type === "!" && this.#u) o2 = (this.isStart() && !e ? Pt : "") + ts;
          else {
            let a2 = this.type === "!" ? "))" + (this.isStart() && !e && !t2 ? Pt : "") + Qe + ")" : this.type === "@" ? ")" : this.type === "?" ? ")?" : this.type === "+" && h2 ? ")" : this.type === "*" && h2 ? ")?" : `)${this.type}`;
            o2 = i2 + r + a2;
          }
          return [o2, (0, Mt.unescape)(r), this.#s = !!this.#s, this.#n];
        }
        #d(t2) {
          return this.#r.map((e) => {
            if (typeof e == "string") throw new Error("string type in extglob ast??");
            let [s, i2, r, h2] = e.toRegExpSource(t2);
            return this.#n = this.#n || h2, s;
          }).filter((e) => !(this.isStart() && this.isEnd()) || !!e).join("|");
        }
        static #v(t2, e, s = false) {
          let i2 = false, r = "", h2 = false, o2 = false;
          for (let a2 = 0; a2 < t2.length; a2++) {
            let l = t2.charAt(a2);
            if (i2) {
              i2 = false, r += (wi.has(l) ? "\\" : "") + l;
              continue;
            }
            if (l === "*") {
              if (o2) continue;
              o2 = true, r += s && /^[*]+$/.test(t2) ? ts : Qe, e = true;
              continue;
            } else o2 = false;
            if (l === "\\") {
              a2 === t2.length - 1 ? r += "\\\\" : i2 = true;
              continue;
            }
            if (l === "[") {
              let [f, c3, d, u4] = (0, fi.parseClass)(t2, a2);
              if (d) {
                r += f, h2 = h2 || c3, a2 += d - 1, e = e || u4;
                continue;
              }
            }
            if (l === "?") {
              r += de, e = true;
              continue;
            }
            r += bi(l);
          }
          return [r, (0, Mt.unescape)(t2), !!e, h2];
        }
      };
      Dt.AST = fe;
    });
    var me = R2((Ft) => {
      "use strict";
      Object.defineProperty(Ft, "__esModule", { value: true });
      Ft.escape = void 0;
      var yi = (n2, { windowsPathsNoEscape: t2 = false, magicalBraces: e = false } = {}) => e ? t2 ? n2.replace(/[?*()[\]{}]/g, "[$&]") : n2.replace(/[?*()[\]\\{}]/g, "\\$&") : t2 ? n2.replace(/[?*()[\]]/g, "[$&]") : n2.replace(/[?*()[\]\\]/g, "\\$&");
      Ft.escape = yi;
    });
    var H2 = R2((g) => {
      "use strict";
      Object.defineProperty(g, "__esModule", { value: true });
      g.unescape = g.escape = g.AST = g.Minimatch = g.match = g.makeRe = g.braceExpand = g.defaults = g.filter = g.GLOBSTAR = g.sep = g.minimatch = void 0;
      var Si = Ke(), jt = Xe(), is = pe(), vi = me(), Ei = kt(), _i = (n2, t2, e = {}) => ((0, jt.assertValidPattern)(t2), !e.nocomment && t2.charAt(0) === "#" ? false : new J(t2, e).match(n2));
      g.minimatch = _i;
      var Oi = /^\*+([^+@!?\*\[\(]*)$/, xi = (n2) => (t2) => !t2.startsWith(".") && t2.endsWith(n2), Ti = (n2) => (t2) => t2.endsWith(n2), Ci = (n2) => (n2 = n2.toLowerCase(), (t2) => !t2.startsWith(".") && t2.toLowerCase().endsWith(n2)), Ri = (n2) => (n2 = n2.toLowerCase(), (t2) => t2.toLowerCase().endsWith(n2)), Ai = /^\*+\.\*+$/, ki = (n2) => !n2.startsWith(".") && n2.includes("."), Mi = (n2) => n2 !== "." && n2 !== ".." && n2.includes("."), Pi = /^\.\*+$/, Di = (n2) => n2 !== "." && n2 !== ".." && n2.startsWith("."), Fi = /^\*+$/, ji = (n2) => n2.length !== 0 && !n2.startsWith("."), Ni = (n2) => n2.length !== 0 && n2 !== "." && n2 !== "..", Li = /^\?+([^+@!?\*\[\(]*)?$/, Wi = ([n2, t2 = ""]) => {
        let e = rs([n2]);
        return t2 ? (t2 = t2.toLowerCase(), (s) => e(s) && s.toLowerCase().endsWith(t2)) : e;
      }, Bi = ([n2, t2 = ""]) => {
        let e = ns([n2]);
        return t2 ? (t2 = t2.toLowerCase(), (s) => e(s) && s.toLowerCase().endsWith(t2)) : e;
      }, Ii = ([n2, t2 = ""]) => {
        let e = ns([n2]);
        return t2 ? (s) => e(s) && s.endsWith(t2) : e;
      }, Gi = ([n2, t2 = ""]) => {
        let e = rs([n2]);
        return t2 ? (s) => e(s) && s.endsWith(t2) : e;
      }, rs = ([n2]) => {
        let t2 = n2.length;
        return (e) => e.length === t2 && !e.startsWith(".");
      }, ns = ([n2]) => {
        let t2 = n2.length;
        return (e) => e.length === t2 && e !== "." && e !== "..";
      }, hs = typeof process == "object" && process ? typeof process.env == "object" && process.env && process.env.__MINIMATCH_TESTING_PLATFORM__ || process.platform : "posix", es = { win32: { sep: "\\" }, posix: { sep: "/" } };
      g.sep = hs === "win32" ? es.win32.sep : es.posix.sep;
      g.minimatch.sep = g.sep;
      g.GLOBSTAR = /* @__PURE__ */ Symbol("globstar **");
      g.minimatch.GLOBSTAR = g.GLOBSTAR;
      var zi = "[^/]", Ui = zi + "*?", $i = "(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?", qi = "(?:(?!(?:\\/|^)\\.).)*?", Hi = (n2, t2 = {}) => (e) => (0, g.minimatch)(e, n2, t2);
      g.filter = Hi;
      g.minimatch.filter = g.filter;
      var F = (n2, t2 = {}) => Object.assign({}, n2, t2), Vi = (n2) => {
        if (!n2 || typeof n2 != "object" || !Object.keys(n2).length) return g.minimatch;
        let t2 = g.minimatch;
        return Object.assign((s, i2, r = {}) => t2(s, i2, F(n2, r)), { Minimatch: class extends t2.Minimatch {
          constructor(i2, r = {}) {
            super(i2, F(n2, r));
          }
          static defaults(i2) {
            return t2.defaults(F(n2, i2)).Minimatch;
          }
        }, AST: class extends t2.AST {
          constructor(i2, r, h2 = {}) {
            super(i2, r, F(n2, h2));
          }
          static fromGlob(i2, r = {}) {
            return t2.AST.fromGlob(i2, F(n2, r));
          }
        }, unescape: (s, i2 = {}) => t2.unescape(s, F(n2, i2)), escape: (s, i2 = {}) => t2.escape(s, F(n2, i2)), filter: (s, i2 = {}) => t2.filter(s, F(n2, i2)), defaults: (s) => t2.defaults(F(n2, s)), makeRe: (s, i2 = {}) => t2.makeRe(s, F(n2, i2)), braceExpand: (s, i2 = {}) => t2.braceExpand(s, F(n2, i2)), match: (s, i2, r = {}) => t2.match(s, i2, F(n2, r)), sep: t2.sep, GLOBSTAR: g.GLOBSTAR });
      };
      g.defaults = Vi;
      g.minimatch.defaults = g.defaults;
      var Ki = (n2, t2 = {}) => ((0, jt.assertValidPattern)(n2), t2.nobrace || !/\{(?:(?!\{).)*\}/.test(n2) ? [n2] : (0, Si.expand)(n2, { max: t2.braceExpandMax }));
      g.braceExpand = Ki;
      g.minimatch.braceExpand = g.braceExpand;
      var Xi = (n2, t2 = {}) => new J(n2, t2).makeRe();
      g.makeRe = Xi;
      g.minimatch.makeRe = g.makeRe;
      var Yi = (n2, t2, e = {}) => {
        let s = new J(t2, e);
        return n2 = n2.filter((i2) => s.match(i2)), s.options.nonull && !n2.length && n2.push(t2), n2;
      };
      g.match = Yi;
      g.minimatch.match = g.match;
      var ss = /[?*]|[+@!]\(.*?\)|\[|\]/, Ji = (n2) => n2.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&"), J = class {
        options;
        set;
        pattern;
        windowsPathsNoEscape;
        nonegate;
        negate;
        comment;
        empty;
        preserveMultipleSlashes;
        partial;
        globSet;
        globParts;
        nocase;
        isWindows;
        platform;
        windowsNoMagicRoot;
        regexp;
        constructor(t2, e = {}) {
          (0, jt.assertValidPattern)(t2), e = e || {}, this.options = e, this.pattern = t2, this.platform = e.platform || hs, this.isWindows = this.platform === "win32";
          let s = "allowWindowsEscape";
          this.windowsPathsNoEscape = !!e.windowsPathsNoEscape || e[s] === false, this.windowsPathsNoEscape && (this.pattern = this.pattern.replace(/\\/g, "/")), this.preserveMultipleSlashes = !!e.preserveMultipleSlashes, this.regexp = null, this.negate = false, this.nonegate = !!e.nonegate, this.comment = false, this.empty = false, this.partial = !!e.partial, this.nocase = !!this.options.nocase, this.windowsNoMagicRoot = e.windowsNoMagicRoot !== void 0 ? e.windowsNoMagicRoot : !!(this.isWindows && this.nocase), this.globSet = [], this.globParts = [], this.set = [], this.make();
        }
        hasMagic() {
          if (this.options.magicalBraces && this.set.length > 1) return true;
          for (let t2 of this.set) for (let e of t2) if (typeof e != "string") return true;
          return false;
        }
        debug(...t2) {
        }
        make() {
          let t2 = this.pattern, e = this.options;
          if (!e.nocomment && t2.charAt(0) === "#") {
            this.comment = true;
            return;
          }
          if (!t2) {
            this.empty = true;
            return;
          }
          this.parseNegate(), this.globSet = [...new Set(this.braceExpand())], e.debug && (this.debug = (...r) => console.error(...r)), this.debug(this.pattern, this.globSet);
          let s = this.globSet.map((r) => this.slashSplit(r));
          this.globParts = this.preprocess(s), this.debug(this.pattern, this.globParts);
          let i2 = this.globParts.map((r, h2, o2) => {
            if (this.isWindows && this.windowsNoMagicRoot) {
              let a2 = r[0] === "" && r[1] === "" && (r[2] === "?" || !ss.test(r[2])) && !ss.test(r[3]), l = /^[a-z]:/i.test(r[0]);
              if (a2) return [...r.slice(0, 4), ...r.slice(4).map((f) => this.parse(f))];
              if (l) return [r[0], ...r.slice(1).map((f) => this.parse(f))];
            }
            return r.map((a2) => this.parse(a2));
          });
          if (this.debug(this.pattern, i2), this.set = i2.filter((r) => r.indexOf(false) === -1), this.isWindows) for (let r = 0; r < this.set.length; r++) {
            let h2 = this.set[r];
            h2[0] === "" && h2[1] === "" && this.globParts[r][2] === "?" && typeof h2[3] == "string" && /^[a-z]:$/i.test(h2[3]) && (h2[2] = "?");
          }
          this.debug(this.pattern, this.set);
        }
        preprocess(t2) {
          if (this.options.noglobstar) for (let s = 0; s < t2.length; s++) for (let i2 = 0; i2 < t2[s].length; i2++) t2[s][i2] === "**" && (t2[s][i2] = "*");
          let { optimizationLevel: e = 1 } = this.options;
          return e >= 2 ? (t2 = this.firstPhasePreProcess(t2), t2 = this.secondPhasePreProcess(t2)) : e >= 1 ? t2 = this.levelOneOptimize(t2) : t2 = this.adjascentGlobstarOptimize(t2), t2;
        }
        adjascentGlobstarOptimize(t2) {
          return t2.map((e) => {
            let s = -1;
            for (; (s = e.indexOf("**", s + 1)) !== -1; ) {
              let i2 = s;
              for (; e[i2 + 1] === "**"; ) i2++;
              i2 !== s && e.splice(s, i2 - s);
            }
            return e;
          });
        }
        levelOneOptimize(t2) {
          return t2.map((e) => (e = e.reduce((s, i2) => {
            let r = s[s.length - 1];
            return i2 === "**" && r === "**" ? s : i2 === ".." && r && r !== ".." && r !== "." && r !== "**" ? (s.pop(), s) : (s.push(i2), s);
          }, []), e.length === 0 ? [""] : e));
        }
        levelTwoFileOptimize(t2) {
          Array.isArray(t2) || (t2 = this.slashSplit(t2));
          let e = false;
          do {
            if (e = false, !this.preserveMultipleSlashes) {
              for (let i2 = 1; i2 < t2.length - 1; i2++) {
                let r = t2[i2];
                i2 === 1 && r === "" && t2[0] === "" || (r === "." || r === "") && (e = true, t2.splice(i2, 1), i2--);
              }
              t2[0] === "." && t2.length === 2 && (t2[1] === "." || t2[1] === "") && (e = true, t2.pop());
            }
            let s = 0;
            for (; (s = t2.indexOf("..", s + 1)) !== -1; ) {
              let i2 = t2[s - 1];
              i2 && i2 !== "." && i2 !== ".." && i2 !== "**" && (e = true, t2.splice(s - 1, 2), s -= 2);
            }
          } while (e);
          return t2.length === 0 ? [""] : t2;
        }
        firstPhasePreProcess(t2) {
          let e = false;
          do {
            e = false;
            for (let s of t2) {
              let i2 = -1;
              for (; (i2 = s.indexOf("**", i2 + 1)) !== -1; ) {
                let h2 = i2;
                for (; s[h2 + 1] === "**"; ) h2++;
                h2 > i2 && s.splice(i2 + 1, h2 - i2);
                let o2 = s[i2 + 1], a2 = s[i2 + 2], l = s[i2 + 3];
                if (o2 !== ".." || !a2 || a2 === "." || a2 === ".." || !l || l === "." || l === "..") continue;
                e = true, s.splice(i2, 1);
                let f = s.slice(0);
                f[i2] = "**", t2.push(f), i2--;
              }
              if (!this.preserveMultipleSlashes) {
                for (let h2 = 1; h2 < s.length - 1; h2++) {
                  let o2 = s[h2];
                  h2 === 1 && o2 === "" && s[0] === "" || (o2 === "." || o2 === "") && (e = true, s.splice(h2, 1), h2--);
                }
                s[0] === "." && s.length === 2 && (s[1] === "." || s[1] === "") && (e = true, s.pop());
              }
              let r = 0;
              for (; (r = s.indexOf("..", r + 1)) !== -1; ) {
                let h2 = s[r - 1];
                if (h2 && h2 !== "." && h2 !== ".." && h2 !== "**") {
                  e = true;
                  let a2 = r === 1 && s[r + 1] === "**" ? ["."] : [];
                  s.splice(r - 1, 2, ...a2), s.length === 0 && s.push(""), r -= 2;
                }
              }
            }
          } while (e);
          return t2;
        }
        secondPhasePreProcess(t2) {
          for (let e = 0; e < t2.length - 1; e++) for (let s = e + 1; s < t2.length; s++) {
            let i2 = this.partsMatch(t2[e], t2[s], !this.preserveMultipleSlashes);
            if (i2) {
              t2[e] = [], t2[s] = i2;
              break;
            }
          }
          return t2.filter((e) => e.length);
        }
        partsMatch(t2, e, s = false) {
          let i2 = 0, r = 0, h2 = [], o2 = "";
          for (; i2 < t2.length && r < e.length; ) if (t2[i2] === e[r]) h2.push(o2 === "b" ? e[r] : t2[i2]), i2++, r++;
          else if (s && t2[i2] === "**" && e[r] === t2[i2 + 1]) h2.push(t2[i2]), i2++;
          else if (s && e[r] === "**" && t2[i2] === e[r + 1]) h2.push(e[r]), r++;
          else if (t2[i2] === "*" && e[r] && (this.options.dot || !e[r].startsWith(".")) && e[r] !== "**") {
            if (o2 === "b") return false;
            o2 = "a", h2.push(t2[i2]), i2++, r++;
          } else if (e[r] === "*" && t2[i2] && (this.options.dot || !t2[i2].startsWith(".")) && t2[i2] !== "**") {
            if (o2 === "a") return false;
            o2 = "b", h2.push(e[r]), i2++, r++;
          } else return false;
          return t2.length === e.length && h2;
        }
        parseNegate() {
          if (this.nonegate) return;
          let t2 = this.pattern, e = false, s = 0;
          for (let i2 = 0; i2 < t2.length && t2.charAt(i2) === "!"; i2++) e = !e, s++;
          s && (this.pattern = t2.slice(s)), this.negate = e;
        }
        matchOne(t2, e, s = false) {
          let i2 = this.options;
          if (this.isWindows) {
            let p = typeof t2[0] == "string" && /^[a-z]:$/i.test(t2[0]), b = !p && t2[0] === "" && t2[1] === "" && t2[2] === "?" && /^[a-z]:$/i.test(t2[3]), w = typeof e[0] == "string" && /^[a-z]:$/i.test(e[0]), v = !w && e[0] === "" && e[1] === "" && e[2] === "?" && typeof e[3] == "string" && /^[a-z]:$/i.test(e[3]), E = b ? 3 : p ? 0 : void 0, y = v ? 3 : w ? 0 : void 0;
            if (typeof E == "number" && typeof y == "number") {
              let [S2, B] = [t2[E], e[y]];
              S2.toLowerCase() === B.toLowerCase() && (e[y] = S2, y > E ? e = e.slice(y) : E > y && (t2 = t2.slice(E)));
            }
          }
          let { optimizationLevel: r = 1 } = this.options;
          r >= 2 && (t2 = this.levelTwoFileOptimize(t2)), this.debug("matchOne", this, { file: t2, pattern: e }), this.debug("matchOne", t2.length, e.length);
          for (var h2 = 0, o2 = 0, a2 = t2.length, l = e.length; h2 < a2 && o2 < l; h2++, o2++) {
            this.debug("matchOne loop");
            var f = e[o2], c3 = t2[h2];
            if (this.debug(e, f, c3), f === false) return false;
            if (f === g.GLOBSTAR) {
              this.debug("GLOBSTAR", [e, f, c3]);
              var d = h2, u4 = o2 + 1;
              if (u4 === l) {
                for (this.debug("** at the end"); h2 < a2; h2++) if (t2[h2] === "." || t2[h2] === ".." || !i2.dot && t2[h2].charAt(0) === ".") return false;
                return true;
              }
              for (; d < a2; ) {
                var m = t2[d];
                if (this.debug(`
globstar while`, t2, d, e, u4, m), this.matchOne(t2.slice(d), e.slice(u4), s)) return this.debug("globstar found match!", d, a2, m), true;
                if (m === "." || m === ".." || !i2.dot && m.charAt(0) === ".") {
                  this.debug("dot detected!", t2, d, e, u4);
                  break;
                }
                this.debug("globstar swallow a segment, and continue"), d++;
              }
              return !!(s && (this.debug(`
>>> no match, partial?`, t2, d, e, u4), d === a2));
            }
            let p;
            if (typeof f == "string" ? (p = c3 === f, this.debug("string match", f, c3, p)) : (p = f.test(c3), this.debug("pattern match", f, c3, p)), !p) return false;
          }
          if (h2 === a2 && o2 === l) return true;
          if (h2 === a2) return s;
          if (o2 === l) return h2 === a2 - 1 && t2[h2] === "";
          throw new Error("wtf?");
        }
        braceExpand() {
          return (0, g.braceExpand)(this.pattern, this.options);
        }
        parse(t2) {
          (0, jt.assertValidPattern)(t2);
          let e = this.options;
          if (t2 === "**") return g.GLOBSTAR;
          if (t2 === "") return "";
          let s, i2 = null;
          (s = t2.match(Fi)) ? i2 = e.dot ? Ni : ji : (s = t2.match(Oi)) ? i2 = (e.nocase ? e.dot ? Ri : Ci : e.dot ? Ti : xi)(s[1]) : (s = t2.match(Li)) ? i2 = (e.nocase ? e.dot ? Bi : Wi : e.dot ? Ii : Gi)(s) : (s = t2.match(Ai)) ? i2 = e.dot ? Mi : ki : (s = t2.match(Pi)) && (i2 = Di);
          let r = is.AST.fromGlob(t2, this.options).toMMPattern();
          return i2 && typeof r == "object" && Reflect.defineProperty(r, "test", { value: i2 }), r;
        }
        makeRe() {
          if (this.regexp || this.regexp === false) return this.regexp;
          let t2 = this.set;
          if (!t2.length) return this.regexp = false, this.regexp;
          let e = this.options, s = e.noglobstar ? Ui : e.dot ? $i : qi, i2 = new Set(e.nocase ? ["i"] : []), r = t2.map((a2) => {
            let l = a2.map((c3) => {
              if (c3 instanceof RegExp) for (let d of c3.flags.split("")) i2.add(d);
              return typeof c3 == "string" ? Ji(c3) : c3 === g.GLOBSTAR ? g.GLOBSTAR : c3._src;
            });
            l.forEach((c3, d) => {
              let u4 = l[d + 1], m = l[d - 1];
              c3 !== g.GLOBSTAR || m === g.GLOBSTAR || (m === void 0 ? u4 !== void 0 && u4 !== g.GLOBSTAR ? l[d + 1] = "(?:\\/|" + s + "\\/)?" + u4 : l[d] = s : u4 === void 0 ? l[d - 1] = m + "(?:\\/|\\/" + s + ")?" : u4 !== g.GLOBSTAR && (l[d - 1] = m + "(?:\\/|\\/" + s + "\\/)" + u4, l[d + 1] = g.GLOBSTAR));
            });
            let f = l.filter((c3) => c3 !== g.GLOBSTAR);
            if (this.partial && f.length >= 1) {
              let c3 = [];
              for (let d = 1; d <= f.length; d++) c3.push(f.slice(0, d).join("/"));
              return "(?:" + c3.join("|") + ")";
            }
            return f.join("/");
          }).join("|"), [h2, o2] = t2.length > 1 ? ["(?:", ")"] : ["", ""];
          r = "^" + h2 + r + o2 + "$", this.partial && (r = "^(?:\\/|" + h2 + r.slice(1, -1) + o2 + ")$"), this.negate && (r = "^(?!" + r + ").+$");
          try {
            this.regexp = new RegExp(r, [...i2].join(""));
          } catch {
            this.regexp = false;
          }
          return this.regexp;
        }
        slashSplit(t2) {
          return this.preserveMultipleSlashes ? t2.split("/") : this.isWindows && /^\/\/[^\/]+/.test(t2) ? ["", ...t2.split(/\/+/)] : t2.split(/\/+/);
        }
        match(t2, e = this.partial) {
          if (this.debug("match", t2, this.pattern), this.comment) return false;
          if (this.empty) return t2 === "";
          if (t2 === "/" && e) return true;
          let s = this.options;
          this.isWindows && (t2 = t2.split("\\").join("/"));
          let i2 = this.slashSplit(t2);
          this.debug(this.pattern, "split", i2);
          let r = this.set;
          this.debug(this.pattern, "set", r);
          let h2 = i2[i2.length - 1];
          if (!h2) for (let o2 = i2.length - 2; !h2 && o2 >= 0; o2--) h2 = i2[o2];
          for (let o2 = 0; o2 < r.length; o2++) {
            let a2 = r[o2], l = i2;
            if (s.matchBase && a2.length === 1 && (l = [h2]), this.matchOne(l, a2, e)) return s.flipNegate ? true : !this.negate;
          }
          return s.flipNegate ? false : this.negate;
        }
        static defaults(t2) {
          return g.minimatch.defaults(t2).Minimatch;
        }
      };
      g.Minimatch = J;
      var Zi = pe();
      Object.defineProperty(g, "AST", { enumerable: true, get: function() {
        return Zi.AST;
      } });
      var Qi = me();
      Object.defineProperty(g, "escape", { enumerable: true, get: function() {
        return Qi.escape;
      } });
      var tr = kt();
      Object.defineProperty(g, "unescape", { enumerable: true, get: function() {
        return tr.unescape;
      } });
      g.minimatch.AST = is.AST;
      g.minimatch.Minimatch = J;
      g.minimatch.escape = vi.escape;
      g.minimatch.unescape = Ei.unescape;
    });
    var fs111 = R2((Wt) => {
      "use strict";
      Object.defineProperty(Wt, "__esModule", { value: true });
      Wt.LRUCache = void 0;
      var er = typeof performance == "object" && performance && typeof performance.now == "function" ? performance : Date, as = /* @__PURE__ */ new Set(), ge = typeof process == "object" && process ? process : {}, ls = (n2, t2, e, s) => {
        typeof ge.emitWarning == "function" ? ge.emitWarning(n2, t2, e, s) : console.error(`[${e}] ${t2}: ${n2}`);
      }, Lt = globalThis.AbortController, os15 = globalThis.AbortSignal;
      if (typeof Lt > "u") {
        os15 = class {
          onabort;
          _onabort = [];
          reason;
          aborted = false;
          addEventListener(e, s) {
            this._onabort.push(s);
          }
        }, Lt = class {
          constructor() {
            t2();
          }
          signal = new os15();
          abort(e) {
            if (!this.signal.aborted) {
              this.signal.reason = e, this.signal.aborted = true;
              for (let s of this.signal._onabort) s(e);
              this.signal.onabort?.(e);
            }
          }
        };
        let n2 = ge.env?.LRU_CACHE_IGNORE_AC_WARNING !== "1", t2 = () => {
          n2 && (n2 = false, ls("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.", "NO_ABORT_CONTROLLER", "ENOTSUP", t2));
        };
      }
      var sr = (n2) => !as.has(n2), V = (n2) => n2 && n2 === Math.floor(n2) && n2 > 0 && isFinite(n2), cs = (n2) => V(n2) ? n2 <= Math.pow(2, 8) ? Uint8Array : n2 <= Math.pow(2, 16) ? Uint16Array : n2 <= Math.pow(2, 32) ? Uint32Array : n2 <= Number.MAX_SAFE_INTEGER ? Nt : null : null, Nt = class extends Array {
        constructor(n2) {
          super(n2), this.fill(0);
        }
      }, ir = class at {
        heap;
        length;
        static #t = false;
        static create(t2) {
          let e = cs(t2);
          if (!e) return [];
          at.#t = true;
          let s = new at(t2, e);
          return at.#t = false, s;
        }
        constructor(t2, e) {
          if (!at.#t) throw new TypeError("instantiate Stack using Stack.create(n)");
          this.heap = new e(t2), this.length = 0;
        }
        push(t2) {
          this.heap[this.length++] = t2;
        }
        pop() {
          return this.heap[--this.length];
        }
      }, rr = class us {
        #t;
        #s;
        #n;
        #r;
        #h;
        #S;
        #w;
        #c;
        get perf() {
          return this.#c;
        }
        ttl;
        ttlResolution;
        ttlAutopurge;
        updateAgeOnGet;
        updateAgeOnHas;
        allowStale;
        noDisposeOnSet;
        noUpdateTTL;
        maxEntrySize;
        sizeCalculation;
        noDeleteOnFetchRejection;
        noDeleteOnStaleGet;
        allowStaleOnFetchAbort;
        allowStaleOnFetchRejection;
        ignoreFetchAbort;
        #o;
        #f;
        #u;
        #a;
        #i;
        #d;
        #v;
        #y;
        #p;
        #R;
        #m;
        #O;
        #x;
        #g;
        #b;
        #E;
        #T;
        #e;
        #F;
        static unsafeExposeInternals(t2) {
          return { starts: t2.#x, ttls: t2.#g, autopurgeTimers: t2.#b, sizes: t2.#O, keyMap: t2.#u, keyList: t2.#a, valList: t2.#i, next: t2.#d, prev: t2.#v, get head() {
            return t2.#y;
          }, get tail() {
            return t2.#p;
          }, free: t2.#R, isBackgroundFetch: (e) => t2.#l(e), backgroundFetch: (e, s, i2, r) => t2.#z(e, s, i2, r), moveToTail: (e) => t2.#N(e), indexes: (e) => t2.#k(e), rindexes: (e) => t2.#M(e), isStale: (e) => t2.#_(e) };
        }
        get max() {
          return this.#t;
        }
        get maxSize() {
          return this.#s;
        }
        get calculatedSize() {
          return this.#f;
        }
        get size() {
          return this.#o;
        }
        get fetchMethod() {
          return this.#S;
        }
        get memoMethod() {
          return this.#w;
        }
        get dispose() {
          return this.#n;
        }
        get onInsert() {
          return this.#r;
        }
        get disposeAfter() {
          return this.#h;
        }
        constructor(t2) {
          let { max: e = 0, ttl: s, ttlResolution: i2 = 1, ttlAutopurge: r, updateAgeOnGet: h2, updateAgeOnHas: o2, allowStale: a2, dispose: l, onInsert: f, disposeAfter: c3, noDisposeOnSet: d, noUpdateTTL: u4, maxSize: m = 0, maxEntrySize: p = 0, sizeCalculation: b, fetchMethod: w, memoMethod: v, noDeleteOnFetchRejection: E, noDeleteOnStaleGet: y, allowStaleOnFetchRejection: S2, allowStaleOnFetchAbort: B, ignoreFetchAbort: U2, perf: et } = t2;
          if (et !== void 0 && typeof et?.now != "function") throw new TypeError("perf option must have a now() method if specified");
          if (this.#c = et ?? er, e !== 0 && !V(e)) throw new TypeError("max option must be a nonnegative integer");
          let st = e ? cs(e) : Array;
          if (!st) throw new Error("invalid max value: " + e);
          if (this.#t = e, this.#s = m, this.maxEntrySize = p || this.#s, this.sizeCalculation = b, this.sizeCalculation) {
            if (!this.#s && !this.maxEntrySize) throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");
            if (typeof this.sizeCalculation != "function") throw new TypeError("sizeCalculation set to non-function");
          }
          if (v !== void 0 && typeof v != "function") throw new TypeError("memoMethod must be a function if defined");
          if (this.#w = v, w !== void 0 && typeof w != "function") throw new TypeError("fetchMethod must be a function if specified");
          if (this.#S = w, this.#T = !!w, this.#u = /* @__PURE__ */ new Map(), this.#a = new Array(e).fill(void 0), this.#i = new Array(e).fill(void 0), this.#d = new st(e), this.#v = new st(e), this.#y = 0, this.#p = 0, this.#R = ir.create(e), this.#o = 0, this.#f = 0, typeof l == "function" && (this.#n = l), typeof f == "function" && (this.#r = f), typeof c3 == "function" ? (this.#h = c3, this.#m = []) : (this.#h = void 0, this.#m = void 0), this.#E = !!this.#n, this.#F = !!this.#r, this.#e = !!this.#h, this.noDisposeOnSet = !!d, this.noUpdateTTL = !!u4, this.noDeleteOnFetchRejection = !!E, this.allowStaleOnFetchRejection = !!S2, this.allowStaleOnFetchAbort = !!B, this.ignoreFetchAbort = !!U2, this.maxEntrySize !== 0) {
            if (this.#s !== 0 && !V(this.#s)) throw new TypeError("maxSize must be a positive integer if specified");
            if (!V(this.maxEntrySize)) throw new TypeError("maxEntrySize must be a positive integer if specified");
            this.#$();
          }
          if (this.allowStale = !!a2, this.noDeleteOnStaleGet = !!y, this.updateAgeOnGet = !!h2, this.updateAgeOnHas = !!o2, this.ttlResolution = V(i2) || i2 === 0 ? i2 : 1, this.ttlAutopurge = !!r, this.ttl = s || 0, this.ttl) {
            if (!V(this.ttl)) throw new TypeError("ttl must be a positive integer if specified");
            this.#P();
          }
          if (this.#t === 0 && this.ttl === 0 && this.#s === 0) throw new TypeError("At least one of max, maxSize, or ttl is required");
          if (!this.ttlAutopurge && !this.#t && !this.#s) {
            let le = "LRU_CACHE_UNBOUNDED";
            sr(le) && (as.add(le), ls("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.", "UnboundedCacheWarning", le, us));
          }
        }
        getRemainingTTL(t2) {
          return this.#u.has(t2) ? 1 / 0 : 0;
        }
        #P() {
          let t2 = new Nt(this.#t), e = new Nt(this.#t);
          this.#g = t2, this.#x = e;
          let s = this.ttlAutopurge ? new Array(this.#t) : void 0;
          this.#b = s, this.#W = (h2, o2, a2 = this.#c.now()) => {
            if (e[h2] = o2 !== 0 ? a2 : 0, t2[h2] = o2, s?.[h2] && (clearTimeout(s[h2]), s[h2] = void 0), o2 !== 0 && s) {
              let l = setTimeout(() => {
                this.#_(h2) && this.#A(this.#a[h2], "expire");
              }, o2 + 1);
              l.unref && l.unref(), s[h2] = l;
            }
          }, this.#C = (h2) => {
            e[h2] = t2[h2] !== 0 ? this.#c.now() : 0;
          }, this.#D = (h2, o2) => {
            if (t2[o2]) {
              let a2 = t2[o2], l = e[o2];
              if (!a2 || !l) return;
              h2.ttl = a2, h2.start = l, h2.now = i2 || r();
              let f = h2.now - l;
              h2.remainingTTL = a2 - f;
            }
          };
          let i2 = 0, r = () => {
            let h2 = this.#c.now();
            if (this.ttlResolution > 0) {
              i2 = h2;
              let o2 = setTimeout(() => i2 = 0, this.ttlResolution);
              o2.unref && o2.unref();
            }
            return h2;
          };
          this.getRemainingTTL = (h2) => {
            let o2 = this.#u.get(h2);
            if (o2 === void 0) return 0;
            let a2 = t2[o2], l = e[o2];
            if (!a2 || !l) return 1 / 0;
            let f = (i2 || r()) - l;
            return a2 - f;
          }, this.#_ = (h2) => {
            let o2 = e[h2], a2 = t2[h2];
            return !!a2 && !!o2 && (i2 || r()) - o2 > a2;
          };
        }
        #C = () => {
        };
        #D = () => {
        };
        #W = () => {
        };
        #_ = () => false;
        #$() {
          let t2 = new Nt(this.#t);
          this.#f = 0, this.#O = t2, this.#L = (e) => {
            this.#f -= t2[e], t2[e] = 0;
          }, this.#B = (e, s, i2, r) => {
            if (this.#l(s)) return 0;
            if (!V(i2)) if (r) {
              if (typeof r != "function") throw new TypeError("sizeCalculation must be a function");
              if (i2 = r(s, e), !V(i2)) throw new TypeError("sizeCalculation return invalid (expect positive integer)");
            } else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");
            return i2;
          }, this.#j = (e, s, i2) => {
            if (t2[e] = s, this.#s) {
              let r = this.#s - t2[e];
              for (; this.#f > r; ) this.#G(true);
            }
            this.#f += t2[e], i2 && (i2.entrySize = s, i2.totalCalculatedSize = this.#f);
          };
        }
        #L = (t2) => {
        };
        #j = (t2, e, s) => {
        };
        #B = (t2, e, s, i2) => {
          if (s || i2) throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");
          return 0;
        };
        *#k({ allowStale: t2 = this.allowStale } = {}) {
          if (this.#o) for (let e = this.#p; !(!this.#I(e) || ((t2 || !this.#_(e)) && (yield e), e === this.#y)); ) e = this.#v[e];
        }
        *#M({ allowStale: t2 = this.allowStale } = {}) {
          if (this.#o) for (let e = this.#y; !(!this.#I(e) || ((t2 || !this.#_(e)) && (yield e), e === this.#p)); ) e = this.#d[e];
        }
        #I(t2) {
          return t2 !== void 0 && this.#u.get(this.#a[t2]) === t2;
        }
        *entries() {
          for (let t2 of this.#k()) this.#i[t2] !== void 0 && this.#a[t2] !== void 0 && !this.#l(this.#i[t2]) && (yield [this.#a[t2], this.#i[t2]]);
        }
        *rentries() {
          for (let t2 of this.#M()) this.#i[t2] !== void 0 && this.#a[t2] !== void 0 && !this.#l(this.#i[t2]) && (yield [this.#a[t2], this.#i[t2]]);
        }
        *keys() {
          for (let t2 of this.#k()) {
            let e = this.#a[t2];
            e !== void 0 && !this.#l(this.#i[t2]) && (yield e);
          }
        }
        *rkeys() {
          for (let t2 of this.#M()) {
            let e = this.#a[t2];
            e !== void 0 && !this.#l(this.#i[t2]) && (yield e);
          }
        }
        *values() {
          for (let t2 of this.#k()) this.#i[t2] !== void 0 && !this.#l(this.#i[t2]) && (yield this.#i[t2]);
        }
        *rvalues() {
          for (let t2 of this.#M()) this.#i[t2] !== void 0 && !this.#l(this.#i[t2]) && (yield this.#i[t2]);
        }
        [Symbol.iterator]() {
          return this.entries();
        }
        [Symbol.toStringTag] = "LRUCache";
        find(t2, e = {}) {
          for (let s of this.#k()) {
            let i2 = this.#i[s], r = this.#l(i2) ? i2.__staleWhileFetching : i2;
            if (r !== void 0 && t2(r, this.#a[s], this)) return this.get(this.#a[s], e);
          }
        }
        forEach(t2, e = this) {
          for (let s of this.#k()) {
            let i2 = this.#i[s], r = this.#l(i2) ? i2.__staleWhileFetching : i2;
            r !== void 0 && t2.call(e, r, this.#a[s], this);
          }
        }
        rforEach(t2, e = this) {
          for (let s of this.#M()) {
            let i2 = this.#i[s], r = this.#l(i2) ? i2.__staleWhileFetching : i2;
            r !== void 0 && t2.call(e, r, this.#a[s], this);
          }
        }
        purgeStale() {
          let t2 = false;
          for (let e of this.#M({ allowStale: true })) this.#_(e) && (this.#A(this.#a[e], "expire"), t2 = true);
          return t2;
        }
        info(t2) {
          let e = this.#u.get(t2);
          if (e === void 0) return;
          let s = this.#i[e], i2 = this.#l(s) ? s.__staleWhileFetching : s;
          if (i2 === void 0) return;
          let r = { value: i2 };
          if (this.#g && this.#x) {
            let h2 = this.#g[e], o2 = this.#x[e];
            if (h2 && o2) {
              let a2 = h2 - (this.#c.now() - o2);
              r.ttl = a2, r.start = Date.now();
            }
          }
          return this.#O && (r.size = this.#O[e]), r;
        }
        dump() {
          let t2 = [];
          for (let e of this.#k({ allowStale: true })) {
            let s = this.#a[e], i2 = this.#i[e], r = this.#l(i2) ? i2.__staleWhileFetching : i2;
            if (r === void 0 || s === void 0) continue;
            let h2 = { value: r };
            if (this.#g && this.#x) {
              h2.ttl = this.#g[e];
              let o2 = this.#c.now() - this.#x[e];
              h2.start = Math.floor(Date.now() - o2);
            }
            this.#O && (h2.size = this.#O[e]), t2.unshift([s, h2]);
          }
          return t2;
        }
        load(t2) {
          this.clear();
          for (let [e, s] of t2) {
            if (s.start) {
              let i2 = Date.now() - s.start;
              s.start = this.#c.now() - i2;
            }
            this.set(e, s.value, s);
          }
        }
        set(t2, e, s = {}) {
          if (e === void 0) return this.delete(t2), this;
          let { ttl: i2 = this.ttl, start: r, noDisposeOnSet: h2 = this.noDisposeOnSet, sizeCalculation: o2 = this.sizeCalculation, status: a2 } = s, { noUpdateTTL: l = this.noUpdateTTL } = s, f = this.#B(t2, e, s.size || 0, o2);
          if (this.maxEntrySize && f > this.maxEntrySize) return a2 && (a2.set = "miss", a2.maxEntrySizeExceeded = true), this.#A(t2, "set"), this;
          let c3 = this.#o === 0 ? void 0 : this.#u.get(t2);
          if (c3 === void 0) c3 = this.#o === 0 ? this.#p : this.#R.length !== 0 ? this.#R.pop() : this.#o === this.#t ? this.#G(false) : this.#o, this.#a[c3] = t2, this.#i[c3] = e, this.#u.set(t2, c3), this.#d[this.#p] = c3, this.#v[c3] = this.#p, this.#p = c3, this.#o++, this.#j(c3, f, a2), a2 && (a2.set = "add"), l = false, this.#F && this.#r?.(e, t2, "add");
          else {
            this.#N(c3);
            let d = this.#i[c3];
            if (e !== d) {
              if (this.#T && this.#l(d)) {
                d.__abortController.abort(new Error("replaced"));
                let { __staleWhileFetching: u4 } = d;
                u4 !== void 0 && !h2 && (this.#E && this.#n?.(u4, t2, "set"), this.#e && this.#m?.push([u4, t2, "set"]));
              } else h2 || (this.#E && this.#n?.(d, t2, "set"), this.#e && this.#m?.push([d, t2, "set"]));
              if (this.#L(c3), this.#j(c3, f, a2), this.#i[c3] = e, a2) {
                a2.set = "replace";
                let u4 = d && this.#l(d) ? d.__staleWhileFetching : d;
                u4 !== void 0 && (a2.oldValue = u4);
              }
            } else a2 && (a2.set = "update");
            this.#F && this.onInsert?.(e, t2, e === d ? "update" : "replace");
          }
          if (i2 !== 0 && !this.#g && this.#P(), this.#g && (l || this.#W(c3, i2, r), a2 && this.#D(a2, c3)), !h2 && this.#e && this.#m) {
            let d = this.#m, u4;
            for (; u4 = d?.shift(); ) this.#h?.(...u4);
          }
          return this;
        }
        pop() {
          try {
            for (; this.#o; ) {
              let t2 = this.#i[this.#y];
              if (this.#G(true), this.#l(t2)) {
                if (t2.__staleWhileFetching) return t2.__staleWhileFetching;
              } else if (t2 !== void 0) return t2;
            }
          } finally {
            if (this.#e && this.#m) {
              let t2 = this.#m, e;
              for (; e = t2?.shift(); ) this.#h?.(...e);
            }
          }
        }
        #G(t2) {
          let e = this.#y, s = this.#a[e], i2 = this.#i[e];
          return this.#T && this.#l(i2) ? i2.__abortController.abort(new Error("evicted")) : (this.#E || this.#e) && (this.#E && this.#n?.(i2, s, "evict"), this.#e && this.#m?.push([i2, s, "evict"])), this.#L(e), this.#b?.[e] && (clearTimeout(this.#b[e]), this.#b[e] = void 0), t2 && (this.#a[e] = void 0, this.#i[e] = void 0, this.#R.push(e)), this.#o === 1 ? (this.#y = this.#p = 0, this.#R.length = 0) : this.#y = this.#d[e], this.#u.delete(s), this.#o--, e;
        }
        has(t2, e = {}) {
          let { updateAgeOnHas: s = this.updateAgeOnHas, status: i2 } = e, r = this.#u.get(t2);
          if (r !== void 0) {
            let h2 = this.#i[r];
            if (this.#l(h2) && h2.__staleWhileFetching === void 0) return false;
            if (this.#_(r)) i2 && (i2.has = "stale", this.#D(i2, r));
            else return s && this.#C(r), i2 && (i2.has = "hit", this.#D(i2, r)), true;
          } else i2 && (i2.has = "miss");
          return false;
        }
        peek(t2, e = {}) {
          let { allowStale: s = this.allowStale } = e, i2 = this.#u.get(t2);
          if (i2 === void 0 || !s && this.#_(i2)) return;
          let r = this.#i[i2];
          return this.#l(r) ? r.__staleWhileFetching : r;
        }
        #z(t2, e, s, i2) {
          let r = e === void 0 ? void 0 : this.#i[e];
          if (this.#l(r)) return r;
          let h2 = new Lt(), { signal: o2 } = s;
          o2?.addEventListener("abort", () => h2.abort(o2.reason), { signal: h2.signal });
          let a2 = { signal: h2.signal, options: s, context: i2 }, l = (p, b = false) => {
            let { aborted: w } = h2.signal, v = s.ignoreFetchAbort && p !== void 0, E = s.ignoreFetchAbort || !!(s.allowStaleOnFetchAbort && p !== void 0);
            if (s.status && (w && !b ? (s.status.fetchAborted = true, s.status.fetchError = h2.signal.reason, v && (s.status.fetchAbortIgnored = true)) : s.status.fetchResolved = true), w && !v && !b) return c3(h2.signal.reason, E);
            let y = u4, S2 = this.#i[e];
            return (S2 === u4 || v && b && S2 === void 0) && (p === void 0 ? y.__staleWhileFetching !== void 0 ? this.#i[e] = y.__staleWhileFetching : this.#A(t2, "fetch") : (s.status && (s.status.fetchUpdated = true), this.set(t2, p, a2.options))), p;
          }, f = (p) => (s.status && (s.status.fetchRejected = true, s.status.fetchError = p), c3(p, false)), c3 = (p, b) => {
            let { aborted: w } = h2.signal, v = w && s.allowStaleOnFetchAbort, E = v || s.allowStaleOnFetchRejection, y = E || s.noDeleteOnFetchRejection, S2 = u4;
            if (this.#i[e] === u4 && (!y || !b && S2.__staleWhileFetching === void 0 ? this.#A(t2, "fetch") : v || (this.#i[e] = S2.__staleWhileFetching)), E) return s.status && S2.__staleWhileFetching !== void 0 && (s.status.returnedStale = true), S2.__staleWhileFetching;
            if (S2.__returned === S2) throw p;
          }, d = (p, b) => {
            let w = this.#S?.(t2, r, a2);
            w && w instanceof Promise && w.then((v) => p(v === void 0 ? void 0 : v), b), h2.signal.addEventListener("abort", () => {
              (!s.ignoreFetchAbort || s.allowStaleOnFetchAbort) && (p(void 0), s.allowStaleOnFetchAbort && (p = (v) => l(v, true)));
            });
          };
          s.status && (s.status.fetchDispatched = true);
          let u4 = new Promise(d).then(l, f), m = Object.assign(u4, { __abortController: h2, __staleWhileFetching: r, __returned: void 0 });
          return e === void 0 ? (this.set(t2, m, { ...a2.options, status: void 0 }), e = this.#u.get(t2)) : this.#i[e] = m, m;
        }
        #l(t2) {
          if (!this.#T) return false;
          let e = t2;
          return !!e && e instanceof Promise && e.hasOwnProperty("__staleWhileFetching") && e.__abortController instanceof Lt;
        }
        async fetch(t2, e = {}) {
          let { allowStale: s = this.allowStale, updateAgeOnGet: i2 = this.updateAgeOnGet, noDeleteOnStaleGet: r = this.noDeleteOnStaleGet, ttl: h2 = this.ttl, noDisposeOnSet: o2 = this.noDisposeOnSet, size: a2 = 0, sizeCalculation: l = this.sizeCalculation, noUpdateTTL: f = this.noUpdateTTL, noDeleteOnFetchRejection: c3 = this.noDeleteOnFetchRejection, allowStaleOnFetchRejection: d = this.allowStaleOnFetchRejection, ignoreFetchAbort: u4 = this.ignoreFetchAbort, allowStaleOnFetchAbort: m = this.allowStaleOnFetchAbort, context: p, forceRefresh: b = false, status: w, signal: v } = e;
          if (!this.#T) return w && (w.fetch = "get"), this.get(t2, { allowStale: s, updateAgeOnGet: i2, noDeleteOnStaleGet: r, status: w });
          let E = { allowStale: s, updateAgeOnGet: i2, noDeleteOnStaleGet: r, ttl: h2, noDisposeOnSet: o2, size: a2, sizeCalculation: l, noUpdateTTL: f, noDeleteOnFetchRejection: c3, allowStaleOnFetchRejection: d, allowStaleOnFetchAbort: m, ignoreFetchAbort: u4, status: w, signal: v }, y = this.#u.get(t2);
          if (y === void 0) {
            w && (w.fetch = "miss");
            let S2 = this.#z(t2, y, E, p);
            return S2.__returned = S2;
          } else {
            let S2 = this.#i[y];
            if (this.#l(S2)) {
              let st = s && S2.__staleWhileFetching !== void 0;
              return w && (w.fetch = "inflight", st && (w.returnedStale = true)), st ? S2.__staleWhileFetching : S2.__returned = S2;
            }
            let B = this.#_(y);
            if (!b && !B) return w && (w.fetch = "hit"), this.#N(y), i2 && this.#C(y), w && this.#D(w, y), S2;
            let U2 = this.#z(t2, y, E, p), et = U2.__staleWhileFetching !== void 0 && s;
            return w && (w.fetch = B ? "stale" : "refresh", et && B && (w.returnedStale = true)), et ? U2.__staleWhileFetching : U2.__returned = U2;
          }
        }
        async forceFetch(t2, e = {}) {
          let s = await this.fetch(t2, e);
          if (s === void 0) throw new Error("fetch() returned undefined");
          return s;
        }
        memo(t2, e = {}) {
          let s = this.#w;
          if (!s) throw new Error("no memoMethod provided to constructor");
          let { context: i2, forceRefresh: r, ...h2 } = e, o2 = this.get(t2, h2);
          if (!r && o2 !== void 0) return o2;
          let a2 = s(t2, o2, { options: h2, context: i2 });
          return this.set(t2, a2, h2), a2;
        }
        get(t2, e = {}) {
          let { allowStale: s = this.allowStale, updateAgeOnGet: i2 = this.updateAgeOnGet, noDeleteOnStaleGet: r = this.noDeleteOnStaleGet, status: h2 } = e, o2 = this.#u.get(t2);
          if (o2 !== void 0) {
            let a2 = this.#i[o2], l = this.#l(a2);
            return h2 && this.#D(h2, o2), this.#_(o2) ? (h2 && (h2.get = "stale"), l ? (h2 && s && a2.__staleWhileFetching !== void 0 && (h2.returnedStale = true), s ? a2.__staleWhileFetching : void 0) : (r || this.#A(t2, "expire"), h2 && s && (h2.returnedStale = true), s ? a2 : void 0)) : (h2 && (h2.get = "hit"), l ? a2.__staleWhileFetching : (this.#N(o2), i2 && this.#C(o2), a2));
          } else h2 && (h2.get = "miss");
        }
        #U(t2, e) {
          this.#v[e] = t2, this.#d[t2] = e;
        }
        #N(t2) {
          t2 !== this.#p && (t2 === this.#y ? this.#y = this.#d[t2] : this.#U(this.#v[t2], this.#d[t2]), this.#U(this.#p, t2), this.#p = t2);
        }
        delete(t2) {
          return this.#A(t2, "delete");
        }
        #A(t2, e) {
          let s = false;
          if (this.#o !== 0) {
            let i2 = this.#u.get(t2);
            if (i2 !== void 0) if (this.#b?.[i2] && (clearTimeout(this.#b?.[i2]), this.#b[i2] = void 0), s = true, this.#o === 1) this.#q(e);
            else {
              this.#L(i2);
              let r = this.#i[i2];
              if (this.#l(r) ? r.__abortController.abort(new Error("deleted")) : (this.#E || this.#e) && (this.#E && this.#n?.(r, t2, e), this.#e && this.#m?.push([r, t2, e])), this.#u.delete(t2), this.#a[i2] = void 0, this.#i[i2] = void 0, i2 === this.#p) this.#p = this.#v[i2];
              else if (i2 === this.#y) this.#y = this.#d[i2];
              else {
                let h2 = this.#v[i2];
                this.#d[h2] = this.#d[i2];
                let o2 = this.#d[i2];
                this.#v[o2] = this.#v[i2];
              }
              this.#o--, this.#R.push(i2);
            }
          }
          if (this.#e && this.#m?.length) {
            let i2 = this.#m, r;
            for (; r = i2?.shift(); ) this.#h?.(...r);
          }
          return s;
        }
        clear() {
          return this.#q("delete");
        }
        #q(t2) {
          for (let e of this.#M({ allowStale: true })) {
            let s = this.#i[e];
            if (this.#l(s)) s.__abortController.abort(new Error("deleted"));
            else {
              let i2 = this.#a[e];
              this.#E && this.#n?.(s, i2, t2), this.#e && this.#m?.push([s, i2, t2]);
            }
          }
          if (this.#u.clear(), this.#i.fill(void 0), this.#a.fill(void 0), this.#g && this.#x) {
            this.#g.fill(0), this.#x.fill(0);
            for (let e of this.#b ?? []) e !== void 0 && clearTimeout(e);
            this.#b?.fill(void 0);
          }
          if (this.#O && this.#O.fill(0), this.#y = 0, this.#p = 0, this.#R.length = 0, this.#f = 0, this.#o = 0, this.#e && this.#m) {
            let e = this.#m, s;
            for (; s = e?.shift(); ) this.#h?.(...s);
          }
        }
      };
      Wt.LRUCache = rr;
    });
    var Oe = R2((P2) => {
      "use strict";
      var nr = P2 && P2.__importDefault || function(n2) {
        return n2 && n2.__esModule ? n2 : { default: n2 };
      };
      Object.defineProperty(P2, "__esModule", { value: true });
      P2.Minipass = P2.isWritable = P2.isReadable = P2.isStream = void 0;
      var ds = typeof process == "object" && process ? process : { stdout: null, stderr: null }, _e = __require("node:events"), ws = nr(__require("node:stream")), hr = __require("node:string_decoder"), or = (n2) => !!n2 && typeof n2 == "object" && (n2 instanceof qt || n2 instanceof ws.default || (0, P2.isReadable)(n2) || (0, P2.isWritable)(n2));
      P2.isStream = or;
      var ar = (n2) => !!n2 && typeof n2 == "object" && n2 instanceof _e.EventEmitter && typeof n2.pipe == "function" && n2.pipe !== ws.default.Writable.prototype.pipe;
      P2.isReadable = ar;
      var lr = (n2) => !!n2 && typeof n2 == "object" && n2 instanceof _e.EventEmitter && typeof n2.write == "function" && typeof n2.end == "function";
      P2.isWritable = lr;
      var $2 = /* @__PURE__ */ Symbol("EOF"), q = /* @__PURE__ */ Symbol("maybeEmitEnd"), K = /* @__PURE__ */ Symbol("emittedEnd"), Bt = /* @__PURE__ */ Symbol("emittingEnd"), lt = /* @__PURE__ */ Symbol("emittedError"), It = /* @__PURE__ */ Symbol("closed"), ps = /* @__PURE__ */ Symbol("read"), Gt = /* @__PURE__ */ Symbol("flush"), ms = /* @__PURE__ */ Symbol("flushChunk"), L2 = /* @__PURE__ */ Symbol("encoding"), rt = /* @__PURE__ */ Symbol("decoder"), x = /* @__PURE__ */ Symbol("flowing"), ct = /* @__PURE__ */ Symbol("paused"), nt = /* @__PURE__ */ Symbol("resume"), T2 = /* @__PURE__ */ Symbol("buffer"), M2 = /* @__PURE__ */ Symbol("pipes"), C = /* @__PURE__ */ Symbol("bufferLength"), we = /* @__PURE__ */ Symbol("bufferPush"), zt = /* @__PURE__ */ Symbol("bufferShift"), k2 = /* @__PURE__ */ Symbol("objectMode"), O2 = /* @__PURE__ */ Symbol("destroyed"), be = /* @__PURE__ */ Symbol("error"), ye = /* @__PURE__ */ Symbol("emitData"), gs = /* @__PURE__ */ Symbol("emitEnd"), Se = /* @__PURE__ */ Symbol("emitEnd2"), I2 = /* @__PURE__ */ Symbol("async"), ve = /* @__PURE__ */ Symbol("abort"), Ut = /* @__PURE__ */ Symbol("aborted"), ut = /* @__PURE__ */ Symbol("signal"), Z = /* @__PURE__ */ Symbol("dataListeners"), D2 = /* @__PURE__ */ Symbol("discarded"), ft = (n2) => Promise.resolve().then(n2), cr = (n2) => n2(), ur = (n2) => n2 === "end" || n2 === "finish" || n2 === "prefinish", fr = (n2) => n2 instanceof ArrayBuffer || !!n2 && typeof n2 == "object" && n2.constructor && n2.constructor.name === "ArrayBuffer" && n2.byteLength >= 0, dr = (n2) => !Buffer.isBuffer(n2) && ArrayBuffer.isView(n2), $t = class {
        src;
        dest;
        opts;
        ondrain;
        constructor(t2, e, s) {
          this.src = t2, this.dest = e, this.opts = s, this.ondrain = () => t2[nt](), this.dest.on("drain", this.ondrain);
        }
        unpipe() {
          this.dest.removeListener("drain", this.ondrain);
        }
        proxyErrors(t2) {
        }
        end() {
          this.unpipe(), this.opts.end && this.dest.end();
        }
      }, Ee = class extends $t {
        unpipe() {
          this.src.removeListener("error", this.proxyErrors), super.unpipe();
        }
        constructor(t2, e, s) {
          super(t2, e, s), this.proxyErrors = (i2) => this.dest.emit("error", i2), t2.on("error", this.proxyErrors);
        }
      }, pr = (n2) => !!n2.objectMode, mr = (n2) => !n2.objectMode && !!n2.encoding && n2.encoding !== "buffer", qt = class extends _e.EventEmitter {
        [x] = false;
        [ct] = false;
        [M2] = [];
        [T2] = [];
        [k2];
        [L2];
        [I2];
        [rt];
        [$2] = false;
        [K] = false;
        [Bt] = false;
        [It] = false;
        [lt] = null;
        [C] = 0;
        [O2] = false;
        [ut];
        [Ut] = false;
        [Z] = 0;
        [D2] = false;
        writable = true;
        readable = true;
        constructor(...t2) {
          let e = t2[0] || {};
          if (super(), e.objectMode && typeof e.encoding == "string") throw new TypeError("Encoding and objectMode may not be used together");
          pr(e) ? (this[k2] = true, this[L2] = null) : mr(e) ? (this[L2] = e.encoding, this[k2] = false) : (this[k2] = false, this[L2] = null), this[I2] = !!e.async, this[rt] = this[L2] ? new hr.StringDecoder(this[L2]) : null, e && e.debugExposeBuffer === true && Object.defineProperty(this, "buffer", { get: () => this[T2] }), e && e.debugExposePipes === true && Object.defineProperty(this, "pipes", { get: () => this[M2] });
          let { signal: s } = e;
          s && (this[ut] = s, s.aborted ? this[ve]() : s.addEventListener("abort", () => this[ve]()));
        }
        get bufferLength() {
          return this[C];
        }
        get encoding() {
          return this[L2];
        }
        set encoding(t2) {
          throw new Error("Encoding must be set at instantiation time");
        }
        setEncoding(t2) {
          throw new Error("Encoding must be set at instantiation time");
        }
        get objectMode() {
          return this[k2];
        }
        set objectMode(t2) {
          throw new Error("objectMode must be set at instantiation time");
        }
        get async() {
          return this[I2];
        }
        set async(t2) {
          this[I2] = this[I2] || !!t2;
        }
        [ve]() {
          this[Ut] = true, this.emit("abort", this[ut]?.reason), this.destroy(this[ut]?.reason);
        }
        get aborted() {
          return this[Ut];
        }
        set aborted(t2) {
        }
        write(t2, e, s) {
          if (this[Ut]) return false;
          if (this[$2]) throw new Error("write after end");
          if (this[O2]) return this.emit("error", Object.assign(new Error("Cannot call write after a stream was destroyed"), { code: "ERR_STREAM_DESTROYED" })), true;
          typeof e == "function" && (s = e, e = "utf8"), e || (e = "utf8");
          let i2 = this[I2] ? ft : cr;
          if (!this[k2] && !Buffer.isBuffer(t2)) {
            if (dr(t2)) t2 = Buffer.from(t2.buffer, t2.byteOffset, t2.byteLength);
            else if (fr(t2)) t2 = Buffer.from(t2);
            else if (typeof t2 != "string") throw new Error("Non-contiguous data written to non-objectMode stream");
          }
          return this[k2] ? (this[x] && this[C] !== 0 && this[Gt](true), this[x] ? this.emit("data", t2) : this[we](t2), this[C] !== 0 && this.emit("readable"), s && i2(s), this[x]) : t2.length ? (typeof t2 == "string" && !(e === this[L2] && !this[rt]?.lastNeed) && (t2 = Buffer.from(t2, e)), Buffer.isBuffer(t2) && this[L2] && (t2 = this[rt].write(t2)), this[x] && this[C] !== 0 && this[Gt](true), this[x] ? this.emit("data", t2) : this[we](t2), this[C] !== 0 && this.emit("readable"), s && i2(s), this[x]) : (this[C] !== 0 && this.emit("readable"), s && i2(s), this[x]);
        }
        read(t2) {
          if (this[O2]) return null;
          if (this[D2] = false, this[C] === 0 || t2 === 0 || t2 && t2 > this[C]) return this[q](), null;
          this[k2] && (t2 = null), this[T2].length > 1 && !this[k2] && (this[T2] = [this[L2] ? this[T2].join("") : Buffer.concat(this[T2], this[C])]);
          let e = this[ps](t2 || null, this[T2][0]);
          return this[q](), e;
        }
        [ps](t2, e) {
          if (this[k2]) this[zt]();
          else {
            let s = e;
            t2 === s.length || t2 === null ? this[zt]() : typeof s == "string" ? (this[T2][0] = s.slice(t2), e = s.slice(0, t2), this[C] -= t2) : (this[T2][0] = s.subarray(t2), e = s.subarray(0, t2), this[C] -= t2);
          }
          return this.emit("data", e), !this[T2].length && !this[$2] && this.emit("drain"), e;
        }
        end(t2, e, s) {
          return typeof t2 == "function" && (s = t2, t2 = void 0), typeof e == "function" && (s = e, e = "utf8"), t2 !== void 0 && this.write(t2, e), s && this.once("end", s), this[$2] = true, this.writable = false, (this[x] || !this[ct]) && this[q](), this;
        }
        [nt]() {
          this[O2] || (!this[Z] && !this[M2].length && (this[D2] = true), this[ct] = false, this[x] = true, this.emit("resume"), this[T2].length ? this[Gt]() : this[$2] ? this[q]() : this.emit("drain"));
        }
        resume() {
          return this[nt]();
        }
        pause() {
          this[x] = false, this[ct] = true, this[D2] = false;
        }
        get destroyed() {
          return this[O2];
        }
        get flowing() {
          return this[x];
        }
        get paused() {
          return this[ct];
        }
        [we](t2) {
          this[k2] ? this[C] += 1 : this[C] += t2.length, this[T2].push(t2);
        }
        [zt]() {
          return this[k2] ? this[C] -= 1 : this[C] -= this[T2][0].length, this[T2].shift();
        }
        [Gt](t2 = false) {
          do
            ;
          while (this[ms](this[zt]()) && this[T2].length);
          !t2 && !this[T2].length && !this[$2] && this.emit("drain");
        }
        [ms](t2) {
          return this.emit("data", t2), this[x];
        }
        pipe(t2, e) {
          if (this[O2]) return t2;
          this[D2] = false;
          let s = this[K];
          return e = e || {}, t2 === ds.stdout || t2 === ds.stderr ? e.end = false : e.end = e.end !== false, e.proxyErrors = !!e.proxyErrors, s ? e.end && t2.end() : (this[M2].push(e.proxyErrors ? new Ee(this, t2, e) : new $t(this, t2, e)), this[I2] ? ft(() => this[nt]()) : this[nt]()), t2;
        }
        unpipe(t2) {
          let e = this[M2].find((s) => s.dest === t2);
          e && (this[M2].length === 1 ? (this[x] && this[Z] === 0 && (this[x] = false), this[M2] = []) : this[M2].splice(this[M2].indexOf(e), 1), e.unpipe());
        }
        addListener(t2, e) {
          return this.on(t2, e);
        }
        on(t2, e) {
          let s = super.on(t2, e);
          if (t2 === "data") this[D2] = false, this[Z]++, !this[M2].length && !this[x] && this[nt]();
          else if (t2 === "readable" && this[C] !== 0) super.emit("readable");
          else if (ur(t2) && this[K]) super.emit(t2), this.removeAllListeners(t2);
          else if (t2 === "error" && this[lt]) {
            let i2 = e;
            this[I2] ? ft(() => i2.call(this, this[lt])) : i2.call(this, this[lt]);
          }
          return s;
        }
        removeListener(t2, e) {
          return this.off(t2, e);
        }
        off(t2, e) {
          let s = super.off(t2, e);
          return t2 === "data" && (this[Z] = this.listeners("data").length, this[Z] === 0 && !this[D2] && !this[M2].length && (this[x] = false)), s;
        }
        removeAllListeners(t2) {
          let e = super.removeAllListeners(t2);
          return (t2 === "data" || t2 === void 0) && (this[Z] = 0, !this[D2] && !this[M2].length && (this[x] = false)), e;
        }
        get emittedEnd() {
          return this[K];
        }
        [q]() {
          !this[Bt] && !this[K] && !this[O2] && this[T2].length === 0 && this[$2] && (this[Bt] = true, this.emit("end"), this.emit("prefinish"), this.emit("finish"), this[It] && this.emit("close"), this[Bt] = false);
        }
        emit(t2, ...e) {
          let s = e[0];
          if (t2 !== "error" && t2 !== "close" && t2 !== O2 && this[O2]) return false;
          if (t2 === "data") return !this[k2] && !s ? false : this[I2] ? (ft(() => this[ye](s)), true) : this[ye](s);
          if (t2 === "end") return this[gs]();
          if (t2 === "close") {
            if (this[It] = true, !this[K] && !this[O2]) return false;
            let r = super.emit("close");
            return this.removeAllListeners("close"), r;
          } else if (t2 === "error") {
            this[lt] = s, super.emit(be, s);
            let r = !this[ut] || this.listeners("error").length ? super.emit("error", s) : false;
            return this[q](), r;
          } else if (t2 === "resume") {
            let r = super.emit("resume");
            return this[q](), r;
          } else if (t2 === "finish" || t2 === "prefinish") {
            let r = super.emit(t2);
            return this.removeAllListeners(t2), r;
          }
          let i2 = super.emit(t2, ...e);
          return this[q](), i2;
        }
        [ye](t2) {
          for (let s of this[M2]) s.dest.write(t2) === false && this.pause();
          let e = this[D2] ? false : super.emit("data", t2);
          return this[q](), e;
        }
        [gs]() {
          return this[K] ? false : (this[K] = true, this.readable = false, this[I2] ? (ft(() => this[Se]()), true) : this[Se]());
        }
        [Se]() {
          if (this[rt]) {
            let e = this[rt].end();
            if (e) {
              for (let s of this[M2]) s.dest.write(e);
              this[D2] || super.emit("data", e);
            }
          }
          for (let e of this[M2]) e.end();
          let t2 = super.emit("end");
          return this.removeAllListeners("end"), t2;
        }
        async collect() {
          let t2 = Object.assign([], { dataLength: 0 });
          this[k2] || (t2.dataLength = 0);
          let e = this.promise();
          return this.on("data", (s) => {
            t2.push(s), this[k2] || (t2.dataLength += s.length);
          }), await e, t2;
        }
        async concat() {
          if (this[k2]) throw new Error("cannot concat in objectMode");
          let t2 = await this.collect();
          return this[L2] ? t2.join("") : Buffer.concat(t2, t2.dataLength);
        }
        async promise() {
          return new Promise((t2, e) => {
            this.on(O2, () => e(new Error("stream destroyed"))), this.on("error", (s) => e(s)), this.on("end", () => t2());
          });
        }
        [Symbol.asyncIterator]() {
          this[D2] = false;
          let t2 = false, e = async () => (this.pause(), t2 = true, { value: void 0, done: true });
          return { next: () => {
            if (t2) return e();
            let i2 = this.read();
            if (i2 !== null) return Promise.resolve({ done: false, value: i2 });
            if (this[$2]) return e();
            let r, h2, o2 = (c3) => {
              this.off("data", a2), this.off("end", l), this.off(O2, f), e(), h2(c3);
            }, a2 = (c3) => {
              this.off("error", o2), this.off("end", l), this.off(O2, f), this.pause(), r({ value: c3, done: !!this[$2] });
            }, l = () => {
              this.off("error", o2), this.off("data", a2), this.off(O2, f), e(), r({ done: true, value: void 0 });
            }, f = () => o2(new Error("stream destroyed"));
            return new Promise((c3, d) => {
              h2 = d, r = c3, this.once(O2, f), this.once("error", o2), this.once("end", l), this.once("data", a2);
            });
          }, throw: e, return: e, [Symbol.asyncIterator]() {
            return this;
          }, [Symbol.asyncDispose]: async () => {
          } };
        }
        [Symbol.iterator]() {
          this[D2] = false;
          let t2 = false, e = () => (this.pause(), this.off(be, e), this.off(O2, e), this.off("end", e), t2 = true, { done: true, value: void 0 }), s = () => {
            if (t2) return e();
            let i2 = this.read();
            return i2 === null ? e() : { done: false, value: i2 };
          };
          return this.once("end", e), this.once(be, e), this.once(O2, e), { next: s, throw: e, return: e, [Symbol.iterator]() {
            return this;
          }, [Symbol.dispose]: () => {
          } };
        }
        destroy(t2) {
          if (this[O2]) return t2 ? this.emit("error", t2) : this.emit(O2), this;
          this[O2] = true, this[D2] = true, this[T2].length = 0, this[C] = 0;
          let e = this;
          return typeof e.close == "function" && !this[It] && e.close(), t2 ? this.emit("error", t2) : this.emit(O2), this;
        }
        static get isStream() {
          return P2.isStream;
        }
      };
      P2.Minipass = qt;
    });
    var Ms = R2((_) => {
      "use strict";
      var gr = _ && _.__createBinding || (Object.create ? (function(n2, t2, e, s) {
        s === void 0 && (s = e);
        var i2 = Object.getOwnPropertyDescriptor(t2, e);
        (!i2 || ("get" in i2 ? !t2.__esModule : i2.writable || i2.configurable)) && (i2 = { enumerable: true, get: function() {
          return t2[e];
        } }), Object.defineProperty(n2, s, i2);
      }) : (function(n2, t2, e, s) {
        s === void 0 && (s = e), n2[s] = t2[e];
      })), wr = _ && _.__setModuleDefault || (Object.create ? (function(n2, t2) {
        Object.defineProperty(n2, "default", { enumerable: true, value: t2 });
      }) : function(n2, t2) {
        n2.default = t2;
      }), br = _ && _.__importStar || function(n2) {
        if (n2 && n2.__esModule) return n2;
        var t2 = {};
        if (n2 != null) for (var e in n2) e !== "default" && Object.prototype.hasOwnProperty.call(n2, e) && gr(t2, n2, e);
        return wr(t2, n2), t2;
      };
      Object.defineProperty(_, "__esModule", { value: true });
      _.PathScurry = _.Path = _.PathScurryDarwin = _.PathScurryPosix = _.PathScurryWin32 = _.PathScurryBase = _.PathPosix = _.PathWin32 = _.PathBase = _.ChildrenCache = _.ResolveCache = void 0;
      var Qt = fs111(), Yt = __require("node:path"), yr = __require("node:url"), pt = __require("fs"), Sr = br(__require("node:fs")), vr = pt.realpathSync.native, Ht = __require("node:fs/promises"), bs = Oe(), mt = { lstatSync: pt.lstatSync, readdir: pt.readdir, readdirSync: pt.readdirSync, readlinkSync: pt.readlinkSync, realpathSync: vr, promises: { lstat: Ht.lstat, readdir: Ht.readdir, readlink: Ht.readlink, realpath: Ht.realpath } }, _s = (n2) => !n2 || n2 === mt || n2 === Sr ? mt : { ...mt, ...n2, promises: { ...mt.promises, ...n2.promises || {} } }, Os = /^\\\\\?\\([a-z]:)\\?$/i, Er = (n2) => n2.replace(/\//g, "\\").replace(Os, "$1\\"), _r = /[\\\/]/, N = 0, xs = 1, Ts = 2, G2 = 4, Cs = 6, Rs = 8, Q = 10, As = 12, j2 = 15, dt = ~j2, xe = 16, ys = 32, gt = 64, W2 = 128, Vt = 256, Xt = 512, Ss = gt | W2 | Xt, Or = 1023, Te = (n2) => n2.isFile() ? Rs : n2.isDirectory() ? G2 : n2.isSymbolicLink() ? Q : n2.isCharacterDevice() ? Ts : n2.isBlockDevice() ? Cs : n2.isSocket() ? As : n2.isFIFO() ? xs : N, vs = new Qt.LRUCache({ max: 2 ** 12 }), wt = (n2) => {
        let t2 = vs.get(n2);
        if (t2) return t2;
        let e = n2.normalize("NFKD");
        return vs.set(n2, e), e;
      }, Es = new Qt.LRUCache({ max: 2 ** 12 }), Kt = (n2) => {
        let t2 = Es.get(n2);
        if (t2) return t2;
        let e = wt(n2.toLowerCase());
        return Es.set(n2, e), e;
      }, bt = class extends Qt.LRUCache {
        constructor() {
          super({ max: 256 });
        }
      };
      _.ResolveCache = bt;
      var Jt = class extends Qt.LRUCache {
        constructor(t2 = 16 * 1024) {
          super({ maxSize: t2, sizeCalculation: (e) => e.length + 1 });
        }
      };
      _.ChildrenCache = Jt;
      var ks = /* @__PURE__ */ Symbol("PathScurry setAsCwd"), A = class {
        name;
        root;
        roots;
        parent;
        nocase;
        isCWD = false;
        #t;
        #s;
        get dev() {
          return this.#s;
        }
        #n;
        get mode() {
          return this.#n;
        }
        #r;
        get nlink() {
          return this.#r;
        }
        #h;
        get uid() {
          return this.#h;
        }
        #S;
        get gid() {
          return this.#S;
        }
        #w;
        get rdev() {
          return this.#w;
        }
        #c;
        get blksize() {
          return this.#c;
        }
        #o;
        get ino() {
          return this.#o;
        }
        #f;
        get size() {
          return this.#f;
        }
        #u;
        get blocks() {
          return this.#u;
        }
        #a;
        get atimeMs() {
          return this.#a;
        }
        #i;
        get mtimeMs() {
          return this.#i;
        }
        #d;
        get ctimeMs() {
          return this.#d;
        }
        #v;
        get birthtimeMs() {
          return this.#v;
        }
        #y;
        get atime() {
          return this.#y;
        }
        #p;
        get mtime() {
          return this.#p;
        }
        #R;
        get ctime() {
          return this.#R;
        }
        #m;
        get birthtime() {
          return this.#m;
        }
        #O;
        #x;
        #g;
        #b;
        #E;
        #T;
        #e;
        #F;
        #P;
        #C;
        get parentPath() {
          return (this.parent || this).fullpath();
        }
        get path() {
          return this.parentPath;
        }
        constructor(t2, e = N, s, i2, r, h2, o2) {
          this.name = t2, this.#O = r ? Kt(t2) : wt(t2), this.#e = e & Or, this.nocase = r, this.roots = i2, this.root = s || this, this.#F = h2, this.#g = o2.fullpath, this.#E = o2.relative, this.#T = o2.relativePosix, this.parent = o2.parent, this.parent ? this.#t = this.parent.#t : this.#t = _s(o2.fs);
        }
        depth() {
          return this.#x !== void 0 ? this.#x : this.parent ? this.#x = this.parent.depth() + 1 : this.#x = 0;
        }
        childrenCache() {
          return this.#F;
        }
        resolve(t2) {
          if (!t2) return this;
          let e = this.getRootString(t2), i2 = t2.substring(e.length).split(this.splitSep);
          return e ? this.getRoot(e).#D(i2) : this.#D(i2);
        }
        #D(t2) {
          let e = this;
          for (let s of t2) e = e.child(s);
          return e;
        }
        children() {
          let t2 = this.#F.get(this);
          if (t2) return t2;
          let e = Object.assign([], { provisional: 0 });
          return this.#F.set(this, e), this.#e &= ~xe, e;
        }
        child(t2, e) {
          if (t2 === "" || t2 === ".") return this;
          if (t2 === "..") return this.parent || this;
          let s = this.children(), i2 = this.nocase ? Kt(t2) : wt(t2);
          for (let a2 of s) if (a2.#O === i2) return a2;
          let r = this.parent ? this.sep : "", h2 = this.#g ? this.#g + r + t2 : void 0, o2 = this.newChild(t2, N, { ...e, parent: this, fullpath: h2 });
          return this.canReaddir() || (o2.#e |= W2), s.push(o2), o2;
        }
        relative() {
          if (this.isCWD) return "";
          if (this.#E !== void 0) return this.#E;
          let t2 = this.name, e = this.parent;
          if (!e) return this.#E = this.name;
          let s = e.relative();
          return s + (!s || !e.parent ? "" : this.sep) + t2;
        }
        relativePosix() {
          if (this.sep === "/") return this.relative();
          if (this.isCWD) return "";
          if (this.#T !== void 0) return this.#T;
          let t2 = this.name, e = this.parent;
          if (!e) return this.#T = this.fullpathPosix();
          let s = e.relativePosix();
          return s + (!s || !e.parent ? "" : "/") + t2;
        }
        fullpath() {
          if (this.#g !== void 0) return this.#g;
          let t2 = this.name, e = this.parent;
          if (!e) return this.#g = this.name;
          let i2 = e.fullpath() + (e.parent ? this.sep : "") + t2;
          return this.#g = i2;
        }
        fullpathPosix() {
          if (this.#b !== void 0) return this.#b;
          if (this.sep === "/") return this.#b = this.fullpath();
          if (!this.parent) {
            let i2 = this.fullpath().replace(/\\/g, "/");
            return /^[a-z]:\//i.test(i2) ? this.#b = `//?/${i2}` : this.#b = i2;
          }
          let t2 = this.parent, e = t2.fullpathPosix(), s = e + (!e || !t2.parent ? "" : "/") + this.name;
          return this.#b = s;
        }
        isUnknown() {
          return (this.#e & j2) === N;
        }
        isType(t2) {
          return this[`is${t2}`]();
        }
        getType() {
          return this.isUnknown() ? "Unknown" : this.isDirectory() ? "Directory" : this.isFile() ? "File" : this.isSymbolicLink() ? "SymbolicLink" : this.isFIFO() ? "FIFO" : this.isCharacterDevice() ? "CharacterDevice" : this.isBlockDevice() ? "BlockDevice" : this.isSocket() ? "Socket" : "Unknown";
        }
        isFile() {
          return (this.#e & j2) === Rs;
        }
        isDirectory() {
          return (this.#e & j2) === G2;
        }
        isCharacterDevice() {
          return (this.#e & j2) === Ts;
        }
        isBlockDevice() {
          return (this.#e & j2) === Cs;
        }
        isFIFO() {
          return (this.#e & j2) === xs;
        }
        isSocket() {
          return (this.#e & j2) === As;
        }
        isSymbolicLink() {
          return (this.#e & Q) === Q;
        }
        lstatCached() {
          return this.#e & ys ? this : void 0;
        }
        readlinkCached() {
          return this.#P;
        }
        realpathCached() {
          return this.#C;
        }
        readdirCached() {
          let t2 = this.children();
          return t2.slice(0, t2.provisional);
        }
        canReadlink() {
          if (this.#P) return true;
          if (!this.parent) return false;
          let t2 = this.#e & j2;
          return !(t2 !== N && t2 !== Q || this.#e & Vt || this.#e & W2);
        }
        calledReaddir() {
          return !!(this.#e & xe);
        }
        isENOENT() {
          return !!(this.#e & W2);
        }
        isNamed(t2) {
          return this.nocase ? this.#O === Kt(t2) : this.#O === wt(t2);
        }
        async readlink() {
          let t2 = this.#P;
          if (t2) return t2;
          if (this.canReadlink() && this.parent) try {
            let e = await this.#t.promises.readlink(this.fullpath()), s = (await this.parent.realpath())?.resolve(e);
            if (s) return this.#P = s;
          } catch (e) {
            this.#M(e.code);
            return;
          }
        }
        readlinkSync() {
          let t2 = this.#P;
          if (t2) return t2;
          if (this.canReadlink() && this.parent) try {
            let e = this.#t.readlinkSync(this.fullpath()), s = this.parent.realpathSync()?.resolve(e);
            if (s) return this.#P = s;
          } catch (e) {
            this.#M(e.code);
            return;
          }
        }
        #W(t2) {
          this.#e |= xe;
          for (let e = t2.provisional; e < t2.length; e++) {
            let s = t2[e];
            s && s.#_();
          }
        }
        #_() {
          this.#e & W2 || (this.#e = (this.#e | W2) & dt, this.#$());
        }
        #$() {
          let t2 = this.children();
          t2.provisional = 0;
          for (let e of t2) e.#_();
        }
        #L() {
          this.#e |= Xt, this.#j();
        }
        #j() {
          if (this.#e & gt) return;
          let t2 = this.#e;
          (t2 & j2) === G2 && (t2 &= dt), this.#e = t2 | gt, this.#$();
        }
        #B(t2 = "") {
          t2 === "ENOTDIR" || t2 === "EPERM" ? this.#j() : t2 === "ENOENT" ? this.#_() : this.children().provisional = 0;
        }
        #k(t2 = "") {
          t2 === "ENOTDIR" ? this.parent.#j() : t2 === "ENOENT" && this.#_();
        }
        #M(t2 = "") {
          let e = this.#e;
          e |= Vt, t2 === "ENOENT" && (e |= W2), (t2 === "EINVAL" || t2 === "UNKNOWN") && (e &= dt), this.#e = e, t2 === "ENOTDIR" && this.parent && this.parent.#j();
        }
        #I(t2, e) {
          return this.#z(t2, e) || this.#G(t2, e);
        }
        #G(t2, e) {
          let s = Te(t2), i2 = this.newChild(t2.name, s, { parent: this }), r = i2.#e & j2;
          return r !== G2 && r !== Q && r !== N && (i2.#e |= gt), e.unshift(i2), e.provisional++, i2;
        }
        #z(t2, e) {
          for (let s = e.provisional; s < e.length; s++) {
            let i2 = e[s];
            if ((this.nocase ? Kt(t2.name) : wt(t2.name)) === i2.#O) return this.#l(t2, i2, s, e);
          }
        }
        #l(t2, e, s, i2) {
          let r = e.name;
          return e.#e = e.#e & dt | Te(t2), r !== t2.name && (e.name = t2.name), s !== i2.provisional && (s === i2.length - 1 ? i2.pop() : i2.splice(s, 1), i2.unshift(e)), i2.provisional++, e;
        }
        async lstat() {
          if ((this.#e & W2) === 0) try {
            return this.#U(await this.#t.promises.lstat(this.fullpath())), this;
          } catch (t2) {
            this.#k(t2.code);
          }
        }
        lstatSync() {
          if ((this.#e & W2) === 0) try {
            return this.#U(this.#t.lstatSync(this.fullpath())), this;
          } catch (t2) {
            this.#k(t2.code);
          }
        }
        #U(t2) {
          let { atime: e, atimeMs: s, birthtime: i2, birthtimeMs: r, blksize: h2, blocks: o2, ctime: a2, ctimeMs: l, dev: f, gid: c3, ino: d, mode: u4, mtime: m, mtimeMs: p, nlink: b, rdev: w, size: v, uid: E } = t2;
          this.#y = e, this.#a = s, this.#m = i2, this.#v = r, this.#c = h2, this.#u = o2, this.#R = a2, this.#d = l, this.#s = f, this.#S = c3, this.#o = d, this.#n = u4, this.#p = m, this.#i = p, this.#r = b, this.#w = w, this.#f = v, this.#h = E;
          let y = Te(t2);
          this.#e = this.#e & dt | y | ys, y !== N && y !== G2 && y !== Q && (this.#e |= gt);
        }
        #N = [];
        #A = false;
        #q(t2) {
          this.#A = false;
          let e = this.#N.slice();
          this.#N.length = 0, e.forEach((s) => s(null, t2));
        }
        readdirCB(t2, e = false) {
          if (!this.canReaddir()) {
            e ? t2(null, []) : queueMicrotask(() => t2(null, []));
            return;
          }
          let s = this.children();
          if (this.calledReaddir()) {
            let r = s.slice(0, s.provisional);
            e ? t2(null, r) : queueMicrotask(() => t2(null, r));
            return;
          }
          if (this.#N.push(t2), this.#A) return;
          this.#A = true;
          let i2 = this.fullpath();
          this.#t.readdir(i2, { withFileTypes: true }, (r, h2) => {
            if (r) this.#B(r.code), s.provisional = 0;
            else {
              for (let o2 of h2) this.#I(o2, s);
              this.#W(s);
            }
            this.#q(s.slice(0, s.provisional));
          });
        }
        #H;
        async readdir() {
          if (!this.canReaddir()) return [];
          let t2 = this.children();
          if (this.calledReaddir()) return t2.slice(0, t2.provisional);
          let e = this.fullpath();
          if (this.#H) await this.#H;
          else {
            let s = () => {
            };
            this.#H = new Promise((i2) => s = i2);
            try {
              for (let i2 of await this.#t.promises.readdir(e, { withFileTypes: true })) this.#I(i2, t2);
              this.#W(t2);
            } catch (i2) {
              this.#B(i2.code), t2.provisional = 0;
            }
            this.#H = void 0, s();
          }
          return t2.slice(0, t2.provisional);
        }
        readdirSync() {
          if (!this.canReaddir()) return [];
          let t2 = this.children();
          if (this.calledReaddir()) return t2.slice(0, t2.provisional);
          let e = this.fullpath();
          try {
            for (let s of this.#t.readdirSync(e, { withFileTypes: true })) this.#I(s, t2);
            this.#W(t2);
          } catch (s) {
            this.#B(s.code), t2.provisional = 0;
          }
          return t2.slice(0, t2.provisional);
        }
        canReaddir() {
          if (this.#e & Ss) return false;
          let t2 = j2 & this.#e;
          return t2 === N || t2 === G2 || t2 === Q;
        }
        shouldWalk(t2, e) {
          return (this.#e & G2) === G2 && !(this.#e & Ss) && !t2.has(this) && (!e || e(this));
        }
        async realpath() {
          if (this.#C) return this.#C;
          if (!((Xt | Vt | W2) & this.#e)) try {
            let t2 = await this.#t.promises.realpath(this.fullpath());
            return this.#C = this.resolve(t2);
          } catch {
            this.#L();
          }
        }
        realpathSync() {
          if (this.#C) return this.#C;
          if (!((Xt | Vt | W2) & this.#e)) try {
            let t2 = this.#t.realpathSync(this.fullpath());
            return this.#C = this.resolve(t2);
          } catch {
            this.#L();
          }
        }
        [ks](t2) {
          if (t2 === this) return;
          t2.isCWD = false, this.isCWD = true;
          let e = /* @__PURE__ */ new Set([]), s = [], i2 = this;
          for (; i2 && i2.parent; ) e.add(i2), i2.#E = s.join(this.sep), i2.#T = s.join("/"), i2 = i2.parent, s.push("..");
          for (i2 = t2; i2 && i2.parent && !e.has(i2); ) i2.#E = void 0, i2.#T = void 0, i2 = i2.parent;
        }
      };
      _.PathBase = A;
      var yt = class n2 extends A {
        sep = "\\";
        splitSep = _r;
        constructor(t2, e = N, s, i2, r, h2, o2) {
          super(t2, e, s, i2, r, h2, o2);
        }
        newChild(t2, e = N, s = {}) {
          return new n2(t2, e, this.root, this.roots, this.nocase, this.childrenCache(), s);
        }
        getRootString(t2) {
          return Yt.win32.parse(t2).root;
        }
        getRoot(t2) {
          if (t2 = Er(t2.toUpperCase()), t2 === this.root.name) return this.root;
          for (let [e, s] of Object.entries(this.roots)) if (this.sameRoot(t2, e)) return this.roots[t2] = s;
          return this.roots[t2] = new Et(t2, this).root;
        }
        sameRoot(t2, e = this.root.name) {
          return t2 = t2.toUpperCase().replace(/\//g, "\\").replace(Os, "$1\\"), t2 === e;
        }
      };
      _.PathWin32 = yt;
      var St = class n2 extends A {
        splitSep = "/";
        sep = "/";
        constructor(t2, e = N, s, i2, r, h2, o2) {
          super(t2, e, s, i2, r, h2, o2);
        }
        getRootString(t2) {
          return t2.startsWith("/") ? "/" : "";
        }
        getRoot(t2) {
          return this.root;
        }
        newChild(t2, e = N, s = {}) {
          return new n2(t2, e, this.root, this.roots, this.nocase, this.childrenCache(), s);
        }
      };
      _.PathPosix = St;
      var vt = class {
        root;
        rootPath;
        roots;
        cwd;
        #t;
        #s;
        #n;
        nocase;
        #r;
        constructor(t2 = process.cwd(), e, s, { nocase: i2, childrenCacheSize: r = 16 * 1024, fs: h2 = mt } = {}) {
          this.#r = _s(h2), (t2 instanceof URL || t2.startsWith("file://")) && (t2 = (0, yr.fileURLToPath)(t2));
          let o2 = e.resolve(t2);
          this.roots = /* @__PURE__ */ Object.create(null), this.rootPath = this.parseRootPath(o2), this.#t = new bt(), this.#s = new bt(), this.#n = new Jt(r);
          let a2 = o2.substring(this.rootPath.length).split(s);
          if (a2.length === 1 && !a2[0] && a2.pop(), i2 === void 0) throw new TypeError("must provide nocase setting to PathScurryBase ctor");
          this.nocase = i2, this.root = this.newRoot(this.#r), this.roots[this.rootPath] = this.root;
          let l = this.root, f = a2.length - 1, c3 = e.sep, d = this.rootPath, u4 = false;
          for (let m of a2) {
            let p = f--;
            l = l.child(m, { relative: new Array(p).fill("..").join(c3), relativePosix: new Array(p).fill("..").join("/"), fullpath: d += (u4 ? "" : c3) + m }), u4 = true;
          }
          this.cwd = l;
        }
        depth(t2 = this.cwd) {
          return typeof t2 == "string" && (t2 = this.cwd.resolve(t2)), t2.depth();
        }
        childrenCache() {
          return this.#n;
        }
        resolve(...t2) {
          let e = "";
          for (let r = t2.length - 1; r >= 0; r--) {
            let h2 = t2[r];
            if (!(!h2 || h2 === ".") && (e = e ? `${h2}/${e}` : h2, this.isAbsolute(h2))) break;
          }
          let s = this.#t.get(e);
          if (s !== void 0) return s;
          let i2 = this.cwd.resolve(e).fullpath();
          return this.#t.set(e, i2), i2;
        }
        resolvePosix(...t2) {
          let e = "";
          for (let r = t2.length - 1; r >= 0; r--) {
            let h2 = t2[r];
            if (!(!h2 || h2 === ".") && (e = e ? `${h2}/${e}` : h2, this.isAbsolute(h2))) break;
          }
          let s = this.#s.get(e);
          if (s !== void 0) return s;
          let i2 = this.cwd.resolve(e).fullpathPosix();
          return this.#s.set(e, i2), i2;
        }
        relative(t2 = this.cwd) {
          return typeof t2 == "string" && (t2 = this.cwd.resolve(t2)), t2.relative();
        }
        relativePosix(t2 = this.cwd) {
          return typeof t2 == "string" && (t2 = this.cwd.resolve(t2)), t2.relativePosix();
        }
        basename(t2 = this.cwd) {
          return typeof t2 == "string" && (t2 = this.cwd.resolve(t2)), t2.name;
        }
        dirname(t2 = this.cwd) {
          return typeof t2 == "string" && (t2 = this.cwd.resolve(t2)), (t2.parent || t2).fullpath();
        }
        async readdir(t2 = this.cwd, e = { withFileTypes: true }) {
          typeof t2 == "string" ? t2 = this.cwd.resolve(t2) : t2 instanceof A || (e = t2, t2 = this.cwd);
          let { withFileTypes: s } = e;
          if (t2.canReaddir()) {
            let i2 = await t2.readdir();
            return s ? i2 : i2.map((r) => r.name);
          } else return [];
        }
        readdirSync(t2 = this.cwd, e = { withFileTypes: true }) {
          typeof t2 == "string" ? t2 = this.cwd.resolve(t2) : t2 instanceof A || (e = t2, t2 = this.cwd);
          let { withFileTypes: s = true } = e;
          return t2.canReaddir() ? s ? t2.readdirSync() : t2.readdirSync().map((i2) => i2.name) : [];
        }
        async lstat(t2 = this.cwd) {
          return typeof t2 == "string" && (t2 = this.cwd.resolve(t2)), t2.lstat();
        }
        lstatSync(t2 = this.cwd) {
          return typeof t2 == "string" && (t2 = this.cwd.resolve(t2)), t2.lstatSync();
        }
        async readlink(t2 = this.cwd, { withFileTypes: e } = { withFileTypes: false }) {
          typeof t2 == "string" ? t2 = this.cwd.resolve(t2) : t2 instanceof A || (e = t2.withFileTypes, t2 = this.cwd);
          let s = await t2.readlink();
          return e ? s : s?.fullpath();
        }
        readlinkSync(t2 = this.cwd, { withFileTypes: e } = { withFileTypes: false }) {
          typeof t2 == "string" ? t2 = this.cwd.resolve(t2) : t2 instanceof A || (e = t2.withFileTypes, t2 = this.cwd);
          let s = t2.readlinkSync();
          return e ? s : s?.fullpath();
        }
        async realpath(t2 = this.cwd, { withFileTypes: e } = { withFileTypes: false }) {
          typeof t2 == "string" ? t2 = this.cwd.resolve(t2) : t2 instanceof A || (e = t2.withFileTypes, t2 = this.cwd);
          let s = await t2.realpath();
          return e ? s : s?.fullpath();
        }
        realpathSync(t2 = this.cwd, { withFileTypes: e } = { withFileTypes: false }) {
          typeof t2 == "string" ? t2 = this.cwd.resolve(t2) : t2 instanceof A || (e = t2.withFileTypes, t2 = this.cwd);
          let s = t2.realpathSync();
          return e ? s : s?.fullpath();
        }
        async walk(t2 = this.cwd, e = {}) {
          typeof t2 == "string" ? t2 = this.cwd.resolve(t2) : t2 instanceof A || (e = t2, t2 = this.cwd);
          let { withFileTypes: s = true, follow: i2 = false, filter: r, walkFilter: h2 } = e, o2 = [];
          (!r || r(t2)) && o2.push(s ? t2 : t2.fullpath());
          let a2 = /* @__PURE__ */ new Set(), l = (c3, d) => {
            a2.add(c3), c3.readdirCB((u4, m) => {
              if (u4) return d(u4);
              let p = m.length;
              if (!p) return d();
              let b = () => {
                --p === 0 && d();
              };
              for (let w of m) (!r || r(w)) && o2.push(s ? w : w.fullpath()), i2 && w.isSymbolicLink() ? w.realpath().then((v) => v?.isUnknown() ? v.lstat() : v).then((v) => v?.shouldWalk(a2, h2) ? l(v, b) : b()) : w.shouldWalk(a2, h2) ? l(w, b) : b();
            }, true);
          }, f = t2;
          return new Promise((c3, d) => {
            l(f, (u4) => {
              if (u4) return d(u4);
              c3(o2);
            });
          });
        }
        walkSync(t2 = this.cwd, e = {}) {
          typeof t2 == "string" ? t2 = this.cwd.resolve(t2) : t2 instanceof A || (e = t2, t2 = this.cwd);
          let { withFileTypes: s = true, follow: i2 = false, filter: r, walkFilter: h2 } = e, o2 = [];
          (!r || r(t2)) && o2.push(s ? t2 : t2.fullpath());
          let a2 = /* @__PURE__ */ new Set([t2]);
          for (let l of a2) {
            let f = l.readdirSync();
            for (let c3 of f) {
              (!r || r(c3)) && o2.push(s ? c3 : c3.fullpath());
              let d = c3;
              if (c3.isSymbolicLink()) {
                if (!(i2 && (d = c3.realpathSync()))) continue;
                d.isUnknown() && d.lstatSync();
              }
              d.shouldWalk(a2, h2) && a2.add(d);
            }
          }
          return o2;
        }
        [Symbol.asyncIterator]() {
          return this.iterate();
        }
        iterate(t2 = this.cwd, e = {}) {
          return typeof t2 == "string" ? t2 = this.cwd.resolve(t2) : t2 instanceof A || (e = t2, t2 = this.cwd), this.stream(t2, e)[Symbol.asyncIterator]();
        }
        [Symbol.iterator]() {
          return this.iterateSync();
        }
        *iterateSync(t2 = this.cwd, e = {}) {
          typeof t2 == "string" ? t2 = this.cwd.resolve(t2) : t2 instanceof A || (e = t2, t2 = this.cwd);
          let { withFileTypes: s = true, follow: i2 = false, filter: r, walkFilter: h2 } = e;
          (!r || r(t2)) && (yield s ? t2 : t2.fullpath());
          let o2 = /* @__PURE__ */ new Set([t2]);
          for (let a2 of o2) {
            let l = a2.readdirSync();
            for (let f of l) {
              (!r || r(f)) && (yield s ? f : f.fullpath());
              let c3 = f;
              if (f.isSymbolicLink()) {
                if (!(i2 && (c3 = f.realpathSync()))) continue;
                c3.isUnknown() && c3.lstatSync();
              }
              c3.shouldWalk(o2, h2) && o2.add(c3);
            }
          }
        }
        stream(t2 = this.cwd, e = {}) {
          typeof t2 == "string" ? t2 = this.cwd.resolve(t2) : t2 instanceof A || (e = t2, t2 = this.cwd);
          let { withFileTypes: s = true, follow: i2 = false, filter: r, walkFilter: h2 } = e, o2 = new bs.Minipass({ objectMode: true });
          (!r || r(t2)) && o2.write(s ? t2 : t2.fullpath());
          let a2 = /* @__PURE__ */ new Set(), l = [t2], f = 0, c3 = () => {
            let d = false;
            for (; !d; ) {
              let u4 = l.shift();
              if (!u4) {
                f === 0 && o2.end();
                return;
              }
              f++, a2.add(u4);
              let m = (b, w, v = false) => {
                if (b) return o2.emit("error", b);
                if (i2 && !v) {
                  let E = [];
                  for (let y of w) y.isSymbolicLink() && E.push(y.realpath().then((S2) => S2?.isUnknown() ? S2.lstat() : S2));
                  if (E.length) {
                    Promise.all(E).then(() => m(null, w, true));
                    return;
                  }
                }
                for (let E of w) E && (!r || r(E)) && (o2.write(s ? E : E.fullpath()) || (d = true));
                f--;
                for (let E of w) {
                  let y = E.realpathCached() || E;
                  y.shouldWalk(a2, h2) && l.push(y);
                }
                d && !o2.flowing ? o2.once("drain", c3) : p || c3();
              }, p = true;
              u4.readdirCB(m, true), p = false;
            }
          };
          return c3(), o2;
        }
        streamSync(t2 = this.cwd, e = {}) {
          typeof t2 == "string" ? t2 = this.cwd.resolve(t2) : t2 instanceof A || (e = t2, t2 = this.cwd);
          let { withFileTypes: s = true, follow: i2 = false, filter: r, walkFilter: h2 } = e, o2 = new bs.Minipass({ objectMode: true }), a2 = /* @__PURE__ */ new Set();
          (!r || r(t2)) && o2.write(s ? t2 : t2.fullpath());
          let l = [t2], f = 0, c3 = () => {
            let d = false;
            for (; !d; ) {
              let u4 = l.shift();
              if (!u4) {
                f === 0 && o2.end();
                return;
              }
              f++, a2.add(u4);
              let m = u4.readdirSync();
              for (let p of m) (!r || r(p)) && (o2.write(s ? p : p.fullpath()) || (d = true));
              f--;
              for (let p of m) {
                let b = p;
                if (p.isSymbolicLink()) {
                  if (!(i2 && (b = p.realpathSync()))) continue;
                  b.isUnknown() && b.lstatSync();
                }
                b.shouldWalk(a2, h2) && l.push(b);
              }
            }
            d && !o2.flowing && o2.once("drain", c3);
          };
          return c3(), o2;
        }
        chdir(t2 = this.cwd) {
          let e = this.cwd;
          this.cwd = typeof t2 == "string" ? this.cwd.resolve(t2) : t2, this.cwd[ks](e);
        }
      };
      _.PathScurryBase = vt;
      var Et = class extends vt {
        sep = "\\";
        constructor(t2 = process.cwd(), e = {}) {
          let { nocase: s = true } = e;
          super(t2, Yt.win32, "\\", { ...e, nocase: s }), this.nocase = s;
          for (let i2 = this.cwd; i2; i2 = i2.parent) i2.nocase = this.nocase;
        }
        parseRootPath(t2) {
          return Yt.win32.parse(t2).root.toUpperCase();
        }
        newRoot(t2) {
          return new yt(this.rootPath, G2, void 0, this.roots, this.nocase, this.childrenCache(), { fs: t2 });
        }
        isAbsolute(t2) {
          return t2.startsWith("/") || t2.startsWith("\\") || /^[a-z]:(\/|\\)/i.test(t2);
        }
      };
      _.PathScurryWin32 = Et;
      var _t = class extends vt {
        sep = "/";
        constructor(t2 = process.cwd(), e = {}) {
          let { nocase: s = false } = e;
          super(t2, Yt.posix, "/", { ...e, nocase: s }), this.nocase = s;
        }
        parseRootPath(t2) {
          return "/";
        }
        newRoot(t2) {
          return new St(this.rootPath, G2, void 0, this.roots, this.nocase, this.childrenCache(), { fs: t2 });
        }
        isAbsolute(t2) {
          return t2.startsWith("/");
        }
      };
      _.PathScurryPosix = _t;
      var Zt = class extends _t {
        constructor(t2 = process.cwd(), e = {}) {
          let { nocase: s = true } = e;
          super(t2, { ...e, nocase: s });
        }
      };
      _.PathScurryDarwin = Zt;
      _.Path = process.platform === "win32" ? yt : St;
      _.PathScurry = process.platform === "win32" ? Et : process.platform === "darwin" ? Zt : _t;
    });
    var Re = R2((te) => {
      "use strict";
      Object.defineProperty(te, "__esModule", { value: true });
      te.Pattern = void 0;
      var xr = H2(), Tr = (n2) => n2.length >= 1, Cr = (n2) => n2.length >= 1, Rr = /* @__PURE__ */ Symbol.for("nodejs.util.inspect.custom"), Ce = class n2 {
        #t;
        #s;
        #n;
        length;
        #r;
        #h;
        #S;
        #w;
        #c;
        #o;
        #f = true;
        constructor(t2, e, s, i2) {
          if (!Tr(t2)) throw new TypeError("empty pattern list");
          if (!Cr(e)) throw new TypeError("empty glob list");
          if (e.length !== t2.length) throw new TypeError("mismatched pattern list and glob list lengths");
          if (this.length = t2.length, s < 0 || s >= this.length) throw new TypeError("index out of range");
          if (this.#t = t2, this.#s = e, this.#n = s, this.#r = i2, this.#n === 0) {
            if (this.isUNC()) {
              let [r, h2, o2, a2, ...l] = this.#t, [f, c3, d, u4, ...m] = this.#s;
              l[0] === "" && (l.shift(), m.shift());
              let p = [r, h2, o2, a2, ""].join("/"), b = [f, c3, d, u4, ""].join("/");
              this.#t = [p, ...l], this.#s = [b, ...m], this.length = this.#t.length;
            } else if (this.isDrive() || this.isAbsolute()) {
              let [r, ...h2] = this.#t, [o2, ...a2] = this.#s;
              h2[0] === "" && (h2.shift(), a2.shift());
              let l = r + "/", f = o2 + "/";
              this.#t = [l, ...h2], this.#s = [f, ...a2], this.length = this.#t.length;
            }
          }
        }
        [Rr]() {
          return "Pattern <" + this.#s.slice(this.#n).join("/") + ">";
        }
        pattern() {
          return this.#t[this.#n];
        }
        isString() {
          return typeof this.#t[this.#n] == "string";
        }
        isGlobstar() {
          return this.#t[this.#n] === xr.GLOBSTAR;
        }
        isRegExp() {
          return this.#t[this.#n] instanceof RegExp;
        }
        globString() {
          return this.#S = this.#S || (this.#n === 0 ? this.isAbsolute() ? this.#s[0] + this.#s.slice(1).join("/") : this.#s.join("/") : this.#s.slice(this.#n).join("/"));
        }
        hasMore() {
          return this.length > this.#n + 1;
        }
        rest() {
          return this.#h !== void 0 ? this.#h : this.hasMore() ? (this.#h = new n2(this.#t, this.#s, this.#n + 1, this.#r), this.#h.#o = this.#o, this.#h.#c = this.#c, this.#h.#w = this.#w, this.#h) : this.#h = null;
        }
        isUNC() {
          let t2 = this.#t;
          return this.#c !== void 0 ? this.#c : this.#c = this.#r === "win32" && this.#n === 0 && t2[0] === "" && t2[1] === "" && typeof t2[2] == "string" && !!t2[2] && typeof t2[3] == "string" && !!t2[3];
        }
        isDrive() {
          let t2 = this.#t;
          return this.#w !== void 0 ? this.#w : this.#w = this.#r === "win32" && this.#n === 0 && this.length > 1 && typeof t2[0] == "string" && /^[a-z]:$/i.test(t2[0]);
        }
        isAbsolute() {
          let t2 = this.#t;
          return this.#o !== void 0 ? this.#o : this.#o = t2[0] === "" && t2.length > 1 || this.isDrive() || this.isUNC();
        }
        root() {
          let t2 = this.#t[0];
          return typeof t2 == "string" && this.isAbsolute() && this.#n === 0 ? t2 : "";
        }
        checkFollowGlobstar() {
          return !(this.#n === 0 || !this.isGlobstar() || !this.#f);
        }
        markFollowGlobstar() {
          return this.#n === 0 || !this.isGlobstar() || !this.#f ? false : (this.#f = false, true);
        }
      };
      te.Pattern = Ce;
    });
    var ke = R2((ee) => {
      "use strict";
      Object.defineProperty(ee, "__esModule", { value: true });
      ee.Ignore = void 0;
      var Ps = H2(), Ar = Re(), kr = typeof process == "object" && process && typeof process.platform == "string" ? process.platform : "linux", Ae = class {
        relative;
        relativeChildren;
        absolute;
        absoluteChildren;
        platform;
        mmopts;
        constructor(t2, { nobrace: e, nocase: s, noext: i2, noglobstar: r, platform: h2 = kr }) {
          this.relative = [], this.absolute = [], this.relativeChildren = [], this.absoluteChildren = [], this.platform = h2, this.mmopts = { dot: true, nobrace: e, nocase: s, noext: i2, noglobstar: r, optimizationLevel: 2, platform: h2, nocomment: true, nonegate: true };
          for (let o2 of t2) this.add(o2);
        }
        add(t2) {
          let e = new Ps.Minimatch(t2, this.mmopts);
          for (let s = 0; s < e.set.length; s++) {
            let i2 = e.set[s], r = e.globParts[s];
            if (!i2 || !r) throw new Error("invalid pattern object");
            for (; i2[0] === "." && r[0] === "."; ) i2.shift(), r.shift();
            let h2 = new Ar.Pattern(i2, r, 0, this.platform), o2 = new Ps.Minimatch(h2.globString(), this.mmopts), a2 = r[r.length - 1] === "**", l = h2.isAbsolute();
            l ? this.absolute.push(o2) : this.relative.push(o2), a2 && (l ? this.absoluteChildren.push(o2) : this.relativeChildren.push(o2));
          }
        }
        ignored(t2) {
          let e = t2.fullpath(), s = `${e}/`, i2 = t2.relative() || ".", r = `${i2}/`;
          for (let h2 of this.relative) if (h2.match(i2) || h2.match(r)) return true;
          for (let h2 of this.absolute) if (h2.match(e) || h2.match(s)) return true;
          return false;
        }
        childrenIgnored(t2) {
          let e = t2.fullpath() + "/", s = (t2.relative() || ".") + "/";
          for (let i2 of this.relativeChildren) if (i2.match(s)) return true;
          for (let i2 of this.absoluteChildren) if (i2.match(e)) return true;
          return false;
        }
      };
      ee.Ignore = Ae;
    });
    var Fs = R2((z) => {
      "use strict";
      Object.defineProperty(z, "__esModule", { value: true });
      z.Processor = z.SubWalks = z.MatchRecord = z.HasWalkedCache = void 0;
      var Ds = H2(), se = class n2 {
        store;
        constructor(t2 = /* @__PURE__ */ new Map()) {
          this.store = t2;
        }
        copy() {
          return new n2(new Map(this.store));
        }
        hasWalked(t2, e) {
          return this.store.get(t2.fullpath())?.has(e.globString());
        }
        storeWalked(t2, e) {
          let s = t2.fullpath(), i2 = this.store.get(s);
          i2 ? i2.add(e.globString()) : this.store.set(s, /* @__PURE__ */ new Set([e.globString()]));
        }
      };
      z.HasWalkedCache = se;
      var ie = class {
        store = /* @__PURE__ */ new Map();
        add(t2, e, s) {
          let i2 = (e ? 2 : 0) | (s ? 1 : 0), r = this.store.get(t2);
          this.store.set(t2, r === void 0 ? i2 : i2 & r);
        }
        entries() {
          return [...this.store.entries()].map(([t2, e]) => [t2, !!(e & 2), !!(e & 1)]);
        }
      };
      z.MatchRecord = ie;
      var re = class {
        store = /* @__PURE__ */ new Map();
        add(t2, e) {
          if (!t2.canReaddir()) return;
          let s = this.store.get(t2);
          s ? s.find((i2) => i2.globString() === e.globString()) || s.push(e) : this.store.set(t2, [e]);
        }
        get(t2) {
          let e = this.store.get(t2);
          if (!e) throw new Error("attempting to walk unknown path");
          return e;
        }
        entries() {
          return this.keys().map((t2) => [t2, this.store.get(t2)]);
        }
        keys() {
          return [...this.store.keys()].filter((t2) => t2.canReaddir());
        }
      };
      z.SubWalks = re;
      var Me = class n2 {
        hasWalkedCache;
        matches = new ie();
        subwalks = new re();
        patterns;
        follow;
        dot;
        opts;
        constructor(t2, e) {
          this.opts = t2, this.follow = !!t2.follow, this.dot = !!t2.dot, this.hasWalkedCache = e ? e.copy() : new se();
        }
        processPatterns(t2, e) {
          this.patterns = e;
          let s = e.map((i2) => [t2, i2]);
          for (let [i2, r] of s) {
            this.hasWalkedCache.storeWalked(i2, r);
            let h2 = r.root(), o2 = r.isAbsolute() && this.opts.absolute !== false;
            if (h2) {
              i2 = i2.resolve(h2 === "/" && this.opts.root !== void 0 ? this.opts.root : h2);
              let c3 = r.rest();
              if (c3) r = c3;
              else {
                this.matches.add(i2, true, false);
                continue;
              }
            }
            if (i2.isENOENT()) continue;
            let a2, l, f = false;
            for (; typeof (a2 = r.pattern()) == "string" && (l = r.rest()); ) i2 = i2.resolve(a2), r = l, f = true;
            if (a2 = r.pattern(), l = r.rest(), f) {
              if (this.hasWalkedCache.hasWalked(i2, r)) continue;
              this.hasWalkedCache.storeWalked(i2, r);
            }
            if (typeof a2 == "string") {
              let c3 = a2 === ".." || a2 === "" || a2 === ".";
              this.matches.add(i2.resolve(a2), o2, c3);
              continue;
            } else if (a2 === Ds.GLOBSTAR) {
              (!i2.isSymbolicLink() || this.follow || r.checkFollowGlobstar()) && this.subwalks.add(i2, r);
              let c3 = l?.pattern(), d = l?.rest();
              if (!l || (c3 === "" || c3 === ".") && !d) this.matches.add(i2, o2, c3 === "" || c3 === ".");
              else if (c3 === "..") {
                let u4 = i2.parent || i2;
                d ? this.hasWalkedCache.hasWalked(u4, d) || this.subwalks.add(u4, d) : this.matches.add(u4, o2, true);
              }
            } else a2 instanceof RegExp && this.subwalks.add(i2, r);
          }
          return this;
        }
        subwalkTargets() {
          return this.subwalks.keys();
        }
        child() {
          return new n2(this.opts, this.hasWalkedCache);
        }
        filterEntries(t2, e) {
          let s = this.subwalks.get(t2), i2 = this.child();
          for (let r of e) for (let h2 of s) {
            let o2 = h2.isAbsolute(), a2 = h2.pattern(), l = h2.rest();
            a2 === Ds.GLOBSTAR ? i2.testGlobstar(r, h2, l, o2) : a2 instanceof RegExp ? i2.testRegExp(r, a2, l, o2) : i2.testString(r, a2, l, o2);
          }
          return i2;
        }
        testGlobstar(t2, e, s, i2) {
          if ((this.dot || !t2.name.startsWith(".")) && (e.hasMore() || this.matches.add(t2, i2, false), t2.canReaddir() && (this.follow || !t2.isSymbolicLink() ? this.subwalks.add(t2, e) : t2.isSymbolicLink() && (s && e.checkFollowGlobstar() ? this.subwalks.add(t2, s) : e.markFollowGlobstar() && this.subwalks.add(t2, e)))), s) {
            let r = s.pattern();
            if (typeof r == "string" && r !== ".." && r !== "" && r !== ".") this.testString(t2, r, s.rest(), i2);
            else if (r === "..") {
              let h2 = t2.parent || t2;
              this.subwalks.add(h2, s);
            } else r instanceof RegExp && this.testRegExp(t2, r, s.rest(), i2);
          }
        }
        testRegExp(t2, e, s, i2) {
          e.test(t2.name) && (s ? this.subwalks.add(t2, s) : this.matches.add(t2, i2, false));
        }
        testString(t2, e, s, i2) {
          t2.isNamed(e) && (s ? this.subwalks.add(t2, s) : this.matches.add(t2, i2, false));
        }
      };
      z.Processor = Me;
    });
    var Ls = R2((X) => {
      "use strict";
      Object.defineProperty(X, "__esModule", { value: true });
      X.GlobStream = X.GlobWalker = X.GlobUtil = void 0;
      var Mr = Oe(), js = ke(), Ns = Fs(), Pr = (n2, t2) => typeof n2 == "string" ? new js.Ignore([n2], t2) : Array.isArray(n2) ? new js.Ignore(n2, t2) : n2, Ot = class {
        path;
        patterns;
        opts;
        seen = /* @__PURE__ */ new Set();
        paused = false;
        aborted = false;
        #t = [];
        #s;
        #n;
        signal;
        maxDepth;
        includeChildMatches;
        constructor(t2, e, s) {
          if (this.patterns = t2, this.path = e, this.opts = s, this.#n = !s.posix && s.platform === "win32" ? "\\" : "/", this.includeChildMatches = s.includeChildMatches !== false, (s.ignore || !this.includeChildMatches) && (this.#s = Pr(s.ignore ?? [], s), !this.includeChildMatches && typeof this.#s.add != "function")) {
            let i2 = "cannot ignore child matches, ignore lacks add() method.";
            throw new Error(i2);
          }
          this.maxDepth = s.maxDepth || 1 / 0, s.signal && (this.signal = s.signal, this.signal.addEventListener("abort", () => {
            this.#t.length = 0;
          }));
        }
        #r(t2) {
          return this.seen.has(t2) || !!this.#s?.ignored?.(t2);
        }
        #h(t2) {
          return !!this.#s?.childrenIgnored?.(t2);
        }
        pause() {
          this.paused = true;
        }
        resume() {
          if (this.signal?.aborted) return;
          this.paused = false;
          let t2;
          for (; !this.paused && (t2 = this.#t.shift()); ) t2();
        }
        onResume(t2) {
          this.signal?.aborted || (this.paused ? this.#t.push(t2) : t2());
        }
        async matchCheck(t2, e) {
          if (e && this.opts.nodir) return;
          let s;
          if (this.opts.realpath) {
            if (s = t2.realpathCached() || await t2.realpath(), !s) return;
            t2 = s;
          }
          let r = t2.isUnknown() || this.opts.stat ? await t2.lstat() : t2;
          if (this.opts.follow && this.opts.nodir && r?.isSymbolicLink()) {
            let h2 = await r.realpath();
            h2 && (h2.isUnknown() || this.opts.stat) && await h2.lstat();
          }
          return this.matchCheckTest(r, e);
        }
        matchCheckTest(t2, e) {
          return t2 && (this.maxDepth === 1 / 0 || t2.depth() <= this.maxDepth) && (!e || t2.canReaddir()) && (!this.opts.nodir || !t2.isDirectory()) && (!this.opts.nodir || !this.opts.follow || !t2.isSymbolicLink() || !t2.realpathCached()?.isDirectory()) && !this.#r(t2) ? t2 : void 0;
        }
        matchCheckSync(t2, e) {
          if (e && this.opts.nodir) return;
          let s;
          if (this.opts.realpath) {
            if (s = t2.realpathCached() || t2.realpathSync(), !s) return;
            t2 = s;
          }
          let r = t2.isUnknown() || this.opts.stat ? t2.lstatSync() : t2;
          if (this.opts.follow && this.opts.nodir && r?.isSymbolicLink()) {
            let h2 = r.realpathSync();
            h2 && (h2?.isUnknown() || this.opts.stat) && h2.lstatSync();
          }
          return this.matchCheckTest(r, e);
        }
        matchFinish(t2, e) {
          if (this.#r(t2)) return;
          if (!this.includeChildMatches && this.#s?.add) {
            let r = `${t2.relativePosix()}/**`;
            this.#s.add(r);
          }
          let s = this.opts.absolute === void 0 ? e : this.opts.absolute;
          this.seen.add(t2);
          let i2 = this.opts.mark && t2.isDirectory() ? this.#n : "";
          if (this.opts.withFileTypes) this.matchEmit(t2);
          else if (s) {
            let r = this.opts.posix ? t2.fullpathPosix() : t2.fullpath();
            this.matchEmit(r + i2);
          } else {
            let r = this.opts.posix ? t2.relativePosix() : t2.relative(), h2 = this.opts.dotRelative && !r.startsWith(".." + this.#n) ? "." + this.#n : "";
            this.matchEmit(r ? h2 + r + i2 : "." + i2);
          }
        }
        async match(t2, e, s) {
          let i2 = await this.matchCheck(t2, s);
          i2 && this.matchFinish(i2, e);
        }
        matchSync(t2, e, s) {
          let i2 = this.matchCheckSync(t2, s);
          i2 && this.matchFinish(i2, e);
        }
        walkCB(t2, e, s) {
          this.signal?.aborted && s(), this.walkCB2(t2, e, new Ns.Processor(this.opts), s);
        }
        walkCB2(t2, e, s, i2) {
          if (this.#h(t2)) return i2();
          if (this.signal?.aborted && i2(), this.paused) {
            this.onResume(() => this.walkCB2(t2, e, s, i2));
            return;
          }
          s.processPatterns(t2, e);
          let r = 1, h2 = () => {
            --r === 0 && i2();
          };
          for (let [o2, a2, l] of s.matches.entries()) this.#r(o2) || (r++, this.match(o2, a2, l).then(() => h2()));
          for (let o2 of s.subwalkTargets()) {
            if (this.maxDepth !== 1 / 0 && o2.depth() >= this.maxDepth) continue;
            r++;
            let a2 = o2.readdirCached();
            o2.calledReaddir() ? this.walkCB3(o2, a2, s, h2) : o2.readdirCB((l, f) => this.walkCB3(o2, f, s, h2), true);
          }
          h2();
        }
        walkCB3(t2, e, s, i2) {
          s = s.filterEntries(t2, e);
          let r = 1, h2 = () => {
            --r === 0 && i2();
          };
          for (let [o2, a2, l] of s.matches.entries()) this.#r(o2) || (r++, this.match(o2, a2, l).then(() => h2()));
          for (let [o2, a2] of s.subwalks.entries()) r++, this.walkCB2(o2, a2, s.child(), h2);
          h2();
        }
        walkCBSync(t2, e, s) {
          this.signal?.aborted && s(), this.walkCB2Sync(t2, e, new Ns.Processor(this.opts), s);
        }
        walkCB2Sync(t2, e, s, i2) {
          if (this.#h(t2)) return i2();
          if (this.signal?.aborted && i2(), this.paused) {
            this.onResume(() => this.walkCB2Sync(t2, e, s, i2));
            return;
          }
          s.processPatterns(t2, e);
          let r = 1, h2 = () => {
            --r === 0 && i2();
          };
          for (let [o2, a2, l] of s.matches.entries()) this.#r(o2) || this.matchSync(o2, a2, l);
          for (let o2 of s.subwalkTargets()) {
            if (this.maxDepth !== 1 / 0 && o2.depth() >= this.maxDepth) continue;
            r++;
            let a2 = o2.readdirSync();
            this.walkCB3Sync(o2, a2, s, h2);
          }
          h2();
        }
        walkCB3Sync(t2, e, s, i2) {
          s = s.filterEntries(t2, e);
          let r = 1, h2 = () => {
            --r === 0 && i2();
          };
          for (let [o2, a2, l] of s.matches.entries()) this.#r(o2) || this.matchSync(o2, a2, l);
          for (let [o2, a2] of s.subwalks.entries()) r++, this.walkCB2Sync(o2, a2, s.child(), h2);
          h2();
        }
      };
      X.GlobUtil = Ot;
      var Pe = class extends Ot {
        matches = /* @__PURE__ */ new Set();
        constructor(t2, e, s) {
          super(t2, e, s);
        }
        matchEmit(t2) {
          this.matches.add(t2);
        }
        async walk() {
          if (this.signal?.aborted) throw this.signal.reason;
          return this.path.isUnknown() && await this.path.lstat(), await new Promise((t2, e) => {
            this.walkCB(this.path, this.patterns, () => {
              this.signal?.aborted ? e(this.signal.reason) : t2(this.matches);
            });
          }), this.matches;
        }
        walkSync() {
          if (this.signal?.aborted) throw this.signal.reason;
          return this.path.isUnknown() && this.path.lstatSync(), this.walkCBSync(this.path, this.patterns, () => {
            if (this.signal?.aborted) throw this.signal.reason;
          }), this.matches;
        }
      };
      X.GlobWalker = Pe;
      var De = class extends Ot {
        results;
        constructor(t2, e, s) {
          super(t2, e, s), this.results = new Mr.Minipass({ signal: this.signal, objectMode: true }), this.results.on("drain", () => this.resume()), this.results.on("resume", () => this.resume());
        }
        matchEmit(t2) {
          this.results.write(t2), this.results.flowing || this.pause();
        }
        stream() {
          let t2 = this.path;
          return t2.isUnknown() ? t2.lstat().then(() => {
            this.walkCB(t2, this.patterns, () => this.results.end());
          }) : this.walkCB(t2, this.patterns, () => this.results.end()), this.results;
        }
        streamSync() {
          return this.path.isUnknown() && this.path.lstatSync(), this.walkCBSync(this.path, this.patterns, () => this.results.end()), this.results;
        }
      };
      X.GlobStream = De;
    });
    var je = R2((oe) => {
      "use strict";
      Object.defineProperty(oe, "__esModule", { value: true });
      oe.Glob = void 0;
      var Dr = H2(), Fr = __require("node:url"), ne = Ms(), jr = Re(), he = Ls(), Nr = typeof process == "object" && process && typeof process.platform == "string" ? process.platform : "linux", Fe = class {
        absolute;
        cwd;
        root;
        dot;
        dotRelative;
        follow;
        ignore;
        magicalBraces;
        mark;
        matchBase;
        maxDepth;
        nobrace;
        nocase;
        nodir;
        noext;
        noglobstar;
        pattern;
        platform;
        realpath;
        scurry;
        stat;
        signal;
        windowsPathsNoEscape;
        withFileTypes;
        includeChildMatches;
        opts;
        patterns;
        constructor(t2, e) {
          if (!e) throw new TypeError("glob options required");
          if (this.withFileTypes = !!e.withFileTypes, this.signal = e.signal, this.follow = !!e.follow, this.dot = !!e.dot, this.dotRelative = !!e.dotRelative, this.nodir = !!e.nodir, this.mark = !!e.mark, e.cwd ? (e.cwd instanceof URL || e.cwd.startsWith("file://")) && (e.cwd = (0, Fr.fileURLToPath)(e.cwd)) : this.cwd = "", this.cwd = e.cwd || "", this.root = e.root, this.magicalBraces = !!e.magicalBraces, this.nobrace = !!e.nobrace, this.noext = !!e.noext, this.realpath = !!e.realpath, this.absolute = e.absolute, this.includeChildMatches = e.includeChildMatches !== false, this.noglobstar = !!e.noglobstar, this.matchBase = !!e.matchBase, this.maxDepth = typeof e.maxDepth == "number" ? e.maxDepth : 1 / 0, this.stat = !!e.stat, this.ignore = e.ignore, this.withFileTypes && this.absolute !== void 0) throw new Error("cannot set absolute and withFileTypes:true");
          if (typeof t2 == "string" && (t2 = [t2]), this.windowsPathsNoEscape = !!e.windowsPathsNoEscape || e.allowWindowsEscape === false, this.windowsPathsNoEscape && (t2 = t2.map((a2) => a2.replace(/\\/g, "/"))), this.matchBase) {
            if (e.noglobstar) throw new TypeError("base matching requires globstar");
            t2 = t2.map((a2) => a2.includes("/") ? a2 : `./**/${a2}`);
          }
          if (this.pattern = t2, this.platform = e.platform || Nr, this.opts = { ...e, platform: this.platform }, e.scurry) {
            if (this.scurry = e.scurry, e.nocase !== void 0 && e.nocase !== e.scurry.nocase) throw new Error("nocase option contradicts provided scurry option");
          } else {
            let a2 = e.platform === "win32" ? ne.PathScurryWin32 : e.platform === "darwin" ? ne.PathScurryDarwin : e.platform ? ne.PathScurryPosix : ne.PathScurry;
            this.scurry = new a2(this.cwd, { nocase: e.nocase, fs: e.fs });
          }
          this.nocase = this.scurry.nocase;
          let s = this.platform === "darwin" || this.platform === "win32", i2 = { braceExpandMax: 1e4, ...e, dot: this.dot, matchBase: this.matchBase, nobrace: this.nobrace, nocase: this.nocase, nocaseMagicOnly: s, nocomment: true, noext: this.noext, nonegate: true, optimizationLevel: 2, platform: this.platform, windowsPathsNoEscape: this.windowsPathsNoEscape, debug: !!this.opts.debug }, r = this.pattern.map((a2) => new Dr.Minimatch(a2, i2)), [h2, o2] = r.reduce((a2, l) => (a2[0].push(...l.set), a2[1].push(...l.globParts), a2), [[], []]);
          this.patterns = h2.map((a2, l) => {
            let f = o2[l];
            if (!f) throw new Error("invalid pattern object");
            return new jr.Pattern(a2, f, 0, this.platform);
          });
        }
        async walk() {
          return [...await new he.GlobWalker(this.patterns, this.scurry.cwd, { ...this.opts, maxDepth: this.maxDepth !== 1 / 0 ? this.maxDepth + this.scurry.cwd.depth() : 1 / 0, platform: this.platform, nocase: this.nocase, includeChildMatches: this.includeChildMatches }).walk()];
        }
        walkSync() {
          return [...new he.GlobWalker(this.patterns, this.scurry.cwd, { ...this.opts, maxDepth: this.maxDepth !== 1 / 0 ? this.maxDepth + this.scurry.cwd.depth() : 1 / 0, platform: this.platform, nocase: this.nocase, includeChildMatches: this.includeChildMatches }).walkSync()];
        }
        stream() {
          return new he.GlobStream(this.patterns, this.scurry.cwd, { ...this.opts, maxDepth: this.maxDepth !== 1 / 0 ? this.maxDepth + this.scurry.cwd.depth() : 1 / 0, platform: this.platform, nocase: this.nocase, includeChildMatches: this.includeChildMatches }).stream();
        }
        streamSync() {
          return new he.GlobStream(this.patterns, this.scurry.cwd, { ...this.opts, maxDepth: this.maxDepth !== 1 / 0 ? this.maxDepth + this.scurry.cwd.depth() : 1 / 0, platform: this.platform, nocase: this.nocase, includeChildMatches: this.includeChildMatches }).streamSync();
        }
        iterateSync() {
          return this.streamSync()[Symbol.iterator]();
        }
        [Symbol.iterator]() {
          return this.iterateSync();
        }
        iterate() {
          return this.stream()[Symbol.asyncIterator]();
        }
        [Symbol.asyncIterator]() {
          return this.iterate();
        }
      };
      oe.Glob = Fe;
    });
    var Ne = R2((ae) => {
      "use strict";
      Object.defineProperty(ae, "__esModule", { value: true });
      ae.hasMagic = void 0;
      var Lr = H2(), Wr = (n2, t2 = {}) => {
        Array.isArray(n2) || (n2 = [n2]);
        for (let e of n2) if (new Lr.Minimatch(e, t2).hasMagic()) return true;
        return false;
      };
      ae.hasMagic = Wr;
    });
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.glob = exports2.sync = exports2.iterate = exports2.iterateSync = exports2.stream = exports2.streamSync = exports2.Ignore = exports2.hasMagic = exports2.Glob = exports2.unescape = exports2.escape = void 0;
    exports2.globStreamSync = xt;
    exports2.globStream = Le;
    exports2.globSync = We;
    exports2.globIterateSync = Tt;
    exports2.globIterate = Be;
    var Ws = H2();
    var tt = je();
    var Br = Ne();
    var Is = H2();
    Object.defineProperty(exports2, "escape", { enumerable: true, get: function() {
      return Is.escape;
    } });
    Object.defineProperty(exports2, "unescape", { enumerable: true, get: function() {
      return Is.unescape;
    } });
    var Ir = je();
    Object.defineProperty(exports2, "Glob", { enumerable: true, get: function() {
      return Ir.Glob;
    } });
    var Gr = Ne();
    Object.defineProperty(exports2, "hasMagic", { enumerable: true, get: function() {
      return Gr.hasMagic;
    } });
    var zr = ke();
    Object.defineProperty(exports2, "Ignore", { enumerable: true, get: function() {
      return zr.Ignore;
    } });
    function xt(n2, t2 = {}) {
      return new tt.Glob(n2, t2).streamSync();
    }
    function Le(n2, t2 = {}) {
      return new tt.Glob(n2, t2).stream();
    }
    function We(n2, t2 = {}) {
      return new tt.Glob(n2, t2).walkSync();
    }
    async function Bs(n2, t2 = {}) {
      return new tt.Glob(n2, t2).walk();
    }
    function Tt(n2, t2 = {}) {
      return new tt.Glob(n2, t2).iterateSync();
    }
    function Be(n2, t2 = {}) {
      return new tt.Glob(n2, t2).iterate();
    }
    exports2.streamSync = xt;
    exports2.stream = Object.assign(Le, { sync: xt });
    exports2.iterateSync = Tt;
    exports2.iterate = Object.assign(Be, { sync: Tt });
    exports2.sync = Object.assign(We, { stream: xt, iterate: Tt });
    exports2.glob = Object.assign(Bs, { glob: Bs, globSync: We, sync: exports2.sync, globStream: Le, stream: exports2.stream, globStreamSync: xt, streamSync: exports2.streamSync, globIterate: Be, iterate: exports2.iterate, globIterateSync: Tt, iterateSync: exports2.iterateSync, Glob: tt.Glob, hasMagic: Br.hasMagic, escape: Ws.escape, unescape: Ws.unescape });
    exports2.glob.glob = exports2.glob;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/cacache/20.0.4/5237f52e66376ca9fee4060f924d386aa69cfd622d99943cde0549aa3b26faca/node_modules/cacache/lib/util/glob.js
var require_glob = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/cacache/20.0.4/5237f52e66376ca9fee4060f924d386aa69cfd622d99943cde0549aa3b26faca/node_modules/cacache/lib/util/glob.js"(exports2, module2) {
    "use strict";
    var { glob: glob2 } = require_index_min3();
    var path218 = __require("path");
    var globify = (pattern) => pattern.split(path218.win32.sep).join(path218.posix.sep);
    module2.exports = (path219, options) => glob2(globify(path219), options);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/cacache/20.0.4/5237f52e66376ca9fee4060f924d386aa69cfd622d99943cde0549aa3b26faca/node_modules/cacache/lib/content/rm.js
var require_rm = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/cacache/20.0.4/5237f52e66376ca9fee4060f924d386aa69cfd622d99943cde0549aa3b26faca/node_modules/cacache/lib/content/rm.js"(exports2, module2) {
    "use strict";
    var fs111 = __require("fs/promises");
    var contentPath = require_path4();
    var { hasContent } = require_read2();
    module2.exports = rm3;
    async function rm3(cache, integrity) {
      const content = await hasContent(cache, integrity);
      if (content && content.sri) {
        await fs111.rm(contentPath(cache, content.sri), { recursive: true, force: true });
        return true;
      } else {
        return false;
      }
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/cacache/20.0.4/5237f52e66376ca9fee4060f924d386aa69cfd622d99943cde0549aa3b26faca/node_modules/cacache/lib/rm.js
var require_rm2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/cacache/20.0.4/5237f52e66376ca9fee4060f924d386aa69cfd622d99943cde0549aa3b26faca/node_modules/cacache/lib/rm.js"(exports2, module2) {
    "use strict";
    var { rm: rm3 } = __require("fs/promises");
    var glob2 = require_glob();
    var index = require_entry_index();
    var memo = require_memoization();
    var path218 = __require("path");
    var rmContent = require_rm();
    module2.exports = entry;
    module2.exports.entry = entry;
    function entry(cache, key, opts2) {
      memo.clearMemoized();
      return index.delete(cache, key, opts2);
    }
    module2.exports.content = content;
    function content(cache, integrity) {
      memo.clearMemoized();
      return rmContent(cache, integrity);
    }
    module2.exports.all = all;
    async function all(cache) {
      memo.clearMemoized();
      const paths3 = await glob2(path218.join(cache, "*(content-*|index-*)"), { silent: true, nosort: true });
      return Promise.all(paths3.map((p) => rm3(p, { recursive: true, force: true })));
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/cacache/20.0.4/5237f52e66376ca9fee4060f924d386aa69cfd622d99943cde0549aa3b26faca/node_modules/cacache/lib/verify.js
var require_verify = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/cacache/20.0.4/5237f52e66376ca9fee4060f924d386aa69cfd622d99943cde0549aa3b26faca/node_modules/cacache/lib/verify.js"(exports2, module2) {
    "use strict";
    var {
      mkdir: mkdir2,
      readFile: readFile4,
      rm: rm3,
      stat: stat2,
      truncate,
      writeFile: writeFile3
    } = __require("fs/promises");
    var contentPath = require_path4();
    var fsm = require_lib32();
    var glob2 = require_glob();
    var index = require_entry_index();
    var path218 = __require("path");
    var ssri6 = require_lib6();
    var hasOwnProperty2 = (obj, key) => Object.prototype.hasOwnProperty.call(obj, key);
    var verifyOpts = (opts2) => ({
      concurrency: 20,
      log: { silly() {
      } },
      ...opts2
    });
    module2.exports = verify;
    async function verify(cache, opts2) {
      opts2 = verifyOpts(opts2);
      opts2.log.silly("verify", "verifying cache at", cache);
      const steps = [
        markStartTime,
        fixPerms,
        garbageCollect,
        rebuildIndex,
        cleanTmp,
        writeVerifile,
        markEndTime
      ];
      const stats = {};
      for (const step2 of steps) {
        const label = step2.name;
        const start = /* @__PURE__ */ new Date();
        const s = await step2(cache, opts2);
        if (s) {
          Object.keys(s).forEach((k2) => {
            stats[k2] = s[k2];
          });
        }
        const end = /* @__PURE__ */ new Date();
        if (!stats.runTime) {
          stats.runTime = {};
        }
        stats.runTime[label] = end - start;
      }
      stats.runTime.total = stats.endTime - stats.startTime;
      opts2.log.silly(
        "verify",
        "verification finished for",
        cache,
        "in",
        `${stats.runTime.total}ms`
      );
      return stats;
    }
    async function markStartTime() {
      return { startTime: /* @__PURE__ */ new Date() };
    }
    async function markEndTime() {
      return { endTime: /* @__PURE__ */ new Date() };
    }
    async function fixPerms(cache, opts2) {
      opts2.log.silly("verify", "fixing cache permissions");
      await mkdir2(cache, { recursive: true });
      return null;
    }
    async function garbageCollect(cache, opts2) {
      opts2.log.silly("verify", "garbage collecting content");
      const { default: pMap2 } = await Promise.resolve().then(() => (init_p_map(), p_map_exports));
      const indexStream = index.lsStream(cache);
      const liveContent = /* @__PURE__ */ new Set();
      indexStream.on("data", (entry) => {
        if (opts2.filter && !opts2.filter(entry)) {
          return;
        }
        const integrity = ssri6.parse(entry.integrity);
        for (const algo in integrity) {
          liveContent.add(integrity[algo].toString());
        }
      });
      await new Promise((resolve3, reject3) => {
        indexStream.on("end", resolve3).on("error", reject3);
      });
      const contentDir = contentPath.contentDir(cache);
      const files = await glob2(path218.join(contentDir, "**"), {
        follow: false,
        nodir: true,
        nosort: true
      });
      const stats = {
        verifiedContent: 0,
        reclaimedCount: 0,
        reclaimedSize: 0,
        badContentCount: 0,
        keptSize: 0
      };
      await pMap2(
        files,
        async (f) => {
          const split2 = f.split(/[/\\]/);
          const digest = split2.slice(split2.length - 3).join("");
          const algo = split2[split2.length - 4];
          const integrity = ssri6.fromHex(digest, algo);
          if (liveContent.has(integrity.toString())) {
            const info = await verifyContent(f, integrity);
            if (!info.valid) {
              stats.reclaimedCount++;
              stats.badContentCount++;
              stats.reclaimedSize += info.size;
            } else {
              stats.verifiedContent++;
              stats.keptSize += info.size;
            }
          } else {
            stats.reclaimedCount++;
            const s = await stat2(f);
            await rm3(f, { recursive: true, force: true });
            stats.reclaimedSize += s.size;
          }
          return stats;
        },
        { concurrency: opts2.concurrency }
      );
      return stats;
    }
    async function verifyContent(filepath, sri) {
      const contentInfo = {};
      try {
        const { size } = await stat2(filepath);
        contentInfo.size = size;
        contentInfo.valid = true;
        await ssri6.checkStream(new fsm.ReadStream(filepath), sri);
      } catch (err) {
        if (err.code === "ENOENT") {
          return { size: 0, valid: false };
        }
        if (err.code !== "EINTEGRITY") {
          throw err;
        }
        await rm3(filepath, { recursive: true, force: true });
        contentInfo.valid = false;
      }
      return contentInfo;
    }
    async function rebuildIndex(cache, opts2) {
      opts2.log.silly("verify", "rebuilding index");
      const { default: pMap2 } = await Promise.resolve().then(() => (init_p_map(), p_map_exports));
      const entries = await index.ls(cache);
      const stats = {
        missingContent: 0,
        rejectedEntries: 0,
        totalEntries: 0
      };
      const buckets = {};
      for (const k2 in entries) {
        if (hasOwnProperty2(entries, k2)) {
          const hashed = index.hashKey(k2);
          const entry = entries[k2];
          const excluded = opts2.filter && !opts2.filter(entry);
          excluded && stats.rejectedEntries++;
          if (buckets[hashed] && !excluded) {
            buckets[hashed].push(entry);
          } else if (buckets[hashed] && excluded) {
          } else if (excluded) {
            buckets[hashed] = [];
            buckets[hashed]._path = index.bucketPath(cache, k2);
          } else {
            buckets[hashed] = [entry];
            buckets[hashed]._path = index.bucketPath(cache, k2);
          }
        }
      }
      await pMap2(
        Object.keys(buckets),
        (key) => {
          return rebuildBucket(cache, buckets[key], stats, opts2);
        },
        { concurrency: opts2.concurrency }
      );
      return stats;
    }
    async function rebuildBucket(cache, bucket, stats) {
      await truncate(bucket._path);
      for (const entry of bucket) {
        const content = contentPath(cache, entry.integrity);
        try {
          await stat2(content);
          await index.insert(cache, entry.key, entry.integrity, {
            metadata: entry.metadata,
            size: entry.size,
            time: entry.time
          });
          stats.totalEntries++;
        } catch (err) {
          if (err.code === "ENOENT") {
            stats.rejectedEntries++;
            stats.missingContent++;
          } else {
            throw err;
          }
        }
      }
    }
    function cleanTmp(cache, opts2) {
      opts2.log.silly("verify", "cleaning tmp directory");
      return rm3(path218.join(cache, "tmp"), { recursive: true, force: true });
    }
    async function writeVerifile(cache, opts2) {
      const verifile = path218.join(cache, "_lastverified");
      opts2.log.silly("verify", "writing verifile to " + verifile);
      return writeFile3(verifile, `${Date.now()}`);
    }
    module2.exports.lastRun = lastRun;
    async function lastRun(cache) {
      const data = await readFile4(path218.join(cache, "_lastverified"), { encoding: "utf8" });
      return /* @__PURE__ */ new Date(+data);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/cacache/20.0.4/5237f52e66376ca9fee4060f924d386aa69cfd622d99943cde0549aa3b26faca/node_modules/cacache/lib/index.js
var require_lib33 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/cacache/20.0.4/5237f52e66376ca9fee4060f924d386aa69cfd622d99943cde0549aa3b26faca/node_modules/cacache/lib/index.js"(exports2, module2) {
    "use strict";
    var get = require_get4();
    var put = require_put();
    var rm3 = require_rm2();
    var verify = require_verify();
    var { clearMemoized } = require_memoization();
    var tmp = require_tmp();
    var index = require_entry_index();
    module2.exports.index = {};
    module2.exports.index.compact = index.compact;
    module2.exports.index.insert = index.insert;
    module2.exports.ls = index.ls;
    module2.exports.ls.stream = index.lsStream;
    module2.exports.get = get;
    module2.exports.get.byDigest = get.byDigest;
    module2.exports.get.stream = get.stream;
    module2.exports.get.stream.byDigest = get.stream.byDigest;
    module2.exports.get.copy = get.copy;
    module2.exports.get.copy.byDigest = get.copy.byDigest;
    module2.exports.get.info = get.info;
    module2.exports.get.hasContent = get.hasContent;
    module2.exports.put = put;
    module2.exports.put.stream = put.stream;
    module2.exports.rm = rm3.entry;
    module2.exports.rm.all = rm3.all;
    module2.exports.rm.entry = module2.exports.rm;
    module2.exports.rm.content = rm3.content;
    module2.exports.clearMemoized = clearMemoized;
    module2.exports.tmp = {};
    module2.exports.tmp.mkdir = tmp.mkdir;
    module2.exports.tmp.withTmp = tmp.withTmp;
    module2.exports.verify = verify;
    module2.exports.verify.lastRun = verify.lastRun;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/make-fetch-happen/15.0.5/5d3859dab383e894b9567bea0629a8d1ce0ad8967e3143179728bd1c76154729/node_modules/make-fetch-happen/lib/pipeline.js
var require_pipeline = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/make-fetch-happen/15.0.5/5d3859dab383e894b9567bea0629a8d1ce0ad8967e3143179728bd1c76154729/node_modules/make-fetch-happen/lib/pipeline.js"(exports2, module2) {
    "use strict";
    var MinipassPipeline = require_minipass_pipeline();
    var CachingMinipassPipeline = class extends MinipassPipeline {
      #events = [];
      #data = /* @__PURE__ */ new Map();
      constructor(opts2, ...streams) {
        super();
        this.#events = opts2.events;
        if (streams.length) {
          this.push(...streams);
        }
      }
      on(event, handler77) {
        if (this.#events.includes(event) && this.#data.has(event)) {
          return handler77(...this.#data.get(event));
        }
        return super.on(event, handler77);
      }
      emit(event, ...data) {
        if (this.#events.includes(event)) {
          this.#data.set(event, data);
        }
        return super.emit(event, ...data);
      }
    };
    module2.exports = CachingMinipassPipeline;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/make-fetch-happen/15.0.5/5d3859dab383e894b9567bea0629a8d1ce0ad8967e3143179728bd1c76154729/node_modules/make-fetch-happen/lib/cache/key.js
var require_key = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/make-fetch-happen/15.0.5/5d3859dab383e894b9567bea0629a8d1ce0ad8967e3143179728bd1c76154729/node_modules/make-fetch-happen/lib/cache/key.js"(exports2, module2) {
    var { URL: URL7, format: format2 } = __require("url");
    var formatOptions = {
      auth: false,
      fragment: false,
      search: true,
      unicode: false
    };
    var cacheKey = (request) => {
      const parsed = new URL7(request.url);
      return `make-fetch-happen:request-cache:${format2(parsed, formatOptions)}`;
    };
    module2.exports = cacheKey;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@gar/promise-retry/1.0.3/71993a60b0ac687ded66a7c7ef139d379e2111fc6323a69a6ec64ff840d97715/node_modules/@gar/promise-retry/lib/retry.js
var require_retry5 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@gar/promise-retry/1.0.3/71993a60b0ac687ded66a7c7ef139d379e2111fc6323a69a6ec64ff840d97715/node_modules/@gar/promise-retry/lib/retry.js"(exports2, module2) {
    var RetryOperation = class {
      #attempts = 1;
      #cachedTimeouts = null;
      #errors = [];
      #fn = null;
      #maxRetryTime;
      #operationStart = null;
      #originalTimeouts;
      #timeouts;
      #timer = null;
      #unref;
      constructor(timeouts, options = {}) {
        this.#originalTimeouts = [...timeouts];
        this.#timeouts = [...timeouts];
        this.#unref = options.unref;
        this.#maxRetryTime = options.maxRetryTime || Infinity;
        if (options.forever) {
          this.#cachedTimeouts = [...this.#timeouts];
        }
      }
      get timeouts() {
        return [...this.#timeouts];
      }
      get errors() {
        return [...this.#errors];
      }
      get attempts() {
        return this.#attempts;
      }
      get mainError() {
        let mainError = null;
        if (this.#errors.length) {
          let mainErrorCount = 0;
          const counts = {};
          for (let i2 = 0; i2 < this.#errors.length; i2++) {
            const error = this.#errors[i2];
            const { message } = error;
            if (!counts[message]) {
              counts[message] = 0;
            }
            counts[message]++;
            if (counts[message] >= mainErrorCount) {
              mainError = error;
              mainErrorCount = counts[message];
            }
          }
        }
        return mainError;
      }
      reset() {
        this.#attempts = 1;
        this.#timeouts = [...this.#originalTimeouts];
      }
      stop() {
        if (this.#timer) {
          clearTimeout(this.#timer);
        }
        this.#timeouts = [];
        this.#cachedTimeouts = null;
      }
      retry(err) {
        this.#errors.push(err);
        if ((/* @__PURE__ */ new Date()).getTime() - this.#operationStart >= this.#maxRetryTime) {
          this.#errors.unshift(new Error("RetryOperation timeout occurred"));
          return false;
        }
        let timeout = this.#timeouts.shift();
        if (timeout === void 0) {
          if (this.#cachedTimeouts) {
            this.#errors.pop();
            timeout = this.#cachedTimeouts.at(-1);
          } else {
            return false;
          }
        }
        this.#timer = setTimeout(() => {
          this.#attempts++;
          this.#fn(this.#attempts);
        }, timeout);
        if (this.#unref) {
          this.#timer.unref();
        }
        return true;
      }
      attempt(fn) {
        this.#fn = fn;
        this.#operationStart = (/* @__PURE__ */ new Date()).getTime();
        this.#fn(this.#attempts);
      }
    };
    module2.exports = { RetryOperation };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@gar/promise-retry/1.0.3/71993a60b0ac687ded66a7c7ef139d379e2111fc6323a69a6ec64ff840d97715/node_modules/@gar/promise-retry/lib/index.js
var require_lib34 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@gar/promise-retry/1.0.3/71993a60b0ac687ded66a7c7ef139d379e2111fc6323a69a6ec64ff840d97715/node_modules/@gar/promise-retry/lib/index.js"(exports2, module2) {
    var { RetryOperation } = require_retry5();
    var createTimeout = (attempt, opts2) => Math.min(Math.round((1 + (opts2.randomize ? Math.random() : 0)) * Math.max(opts2.minTimeout, 1) * Math.pow(opts2.factor, attempt)), opts2.maxTimeout);
    var isRetryError = (err) => err?.code === "EPROMISERETRY" && Object.hasOwn(err, "retried");
    var promiseRetry = async (fn, options = {}) => {
      let timeouts = [];
      if (options instanceof Array) {
        timeouts = [...options];
      } else {
        if (options.retries === Infinity) {
          options.forever = true;
          delete options.retries;
        }
        const opts2 = {
          retries: 10,
          factor: 2,
          minTimeout: 1 * 1e3,
          maxTimeout: Infinity,
          randomize: false,
          ...options
        };
        if (opts2.minTimeout > opts2.maxTimeout) {
          throw new Error("minTimeout is greater than maxTimeout");
        }
        if (opts2.retries) {
          for (let i2 = 0; i2 < opts2.retries; i2++) {
            timeouts.push(createTimeout(i2, opts2));
          }
          timeouts.sort((a2, b) => a2 - b);
        } else if (options.forever) {
          timeouts.push(createTimeout(0, opts2));
        }
      }
      const operation5 = new RetryOperation(timeouts, {
        forever: options.forever,
        unref: options.unref,
        maxRetryTime: options.maxRetryTime
      });
      return new Promise(function(resolve3, reject3) {
        operation5.attempt(async (number) => {
          try {
            const result2 = await fn((err) => {
              throw Object.assign(new Error("Retrying"), { code: "EPROMISERETRY", retried: err });
            }, number, operation5);
            return resolve3(result2);
          } catch (err) {
            if (!isRetryError(err)) {
              return reject3(err);
            }
            if (!operation5.retry(err.retried || new Error())) {
              return reject3(err.retried);
            }
          }
        });
      });
    };
    module2.exports = { promiseRetry };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/agent/4.0.0/a7f3c3ea06844822dd592a65c8562676654b9d17a58260cfff85b771e7287d2d/node_modules/@npmcli/agent/lib/dns.js
var require_dns2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/agent/4.0.0/a7f3c3ea06844822dd592a65c8562676654b9d17a58260cfff85b771e7287d2d/node_modules/@npmcli/agent/lib/dns.js"(exports2, module2) {
    "use strict";
    var { LRUCache } = require_index_min();
    var dns = __require("dns");
    var cache = new LRUCache({ max: 50 });
    var getOptions2 = ({
      family = 0,
      hints = dns.ADDRCONFIG,
      all = false,
      verbatim = void 0,
      ttl = 5 * 60 * 1e3,
      lookup = dns.lookup
    }) => ({
      // hints and lookup are returned since both are top level properties to (net|tls).connect
      hints,
      lookup: (hostname, ...args) => {
        const callback2 = args.pop();
        const lookupOptions = args[0] ?? {};
        const options = {
          family,
          hints,
          all,
          verbatim,
          ...typeof lookupOptions === "number" ? { family: lookupOptions } : lookupOptions
        };
        const key = JSON.stringify({ hostname, ...options });
        if (cache.has(key)) {
          const cached = cache.get(key);
          return process.nextTick(callback2, null, ...cached);
        }
        lookup(hostname, options, (err, ...result2) => {
          if (err) {
            return callback2(err);
          }
          cache.set(key, result2, { ttl });
          return callback2(null, ...result2);
        });
      }
    });
    module2.exports = {
      cache,
      getOptions: getOptions2
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/agent/4.0.0/a7f3c3ea06844822dd592a65c8562676654b9d17a58260cfff85b771e7287d2d/node_modules/@npmcli/agent/lib/options.js
var require_options3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/agent/4.0.0/a7f3c3ea06844822dd592a65c8562676654b9d17a58260cfff85b771e7287d2d/node_modules/@npmcli/agent/lib/options.js"(exports2, module2) {
    "use strict";
    var dns = require_dns2();
    var normalizeOptions3 = (opts2) => {
      const family = parseInt(opts2.family ?? "0", 10);
      const keepAlive = opts2.keepAlive ?? true;
      const normalized = {
        // nodejs http agent options. these are all the defaults
        // but kept here to increase the likelihood of cache hits
        // https://nodejs.org/api/http.html#new-agentoptions
        keepAliveMsecs: keepAlive ? 1e3 : void 0,
        maxSockets: opts2.maxSockets ?? 15,
        maxTotalSockets: Infinity,
        maxFreeSockets: keepAlive ? 256 : void 0,
        scheduling: "fifo",
        // then spread the rest of the options
        ...opts2,
        // we already set these to their defaults that we want
        family,
        keepAlive,
        // our custom timeout options
        timeouts: {
          // the standard timeout option is mapped to our idle timeout
          // and then deleted below
          idle: opts2.timeout ?? 0,
          connection: 0,
          response: 0,
          transfer: 0,
          ...opts2.timeouts
        },
        // get the dns options that go at the top level of socket connection
        ...dns.getOptions({ family, ...opts2.dns })
      };
      delete normalized.timeout;
      return normalized;
    };
    var createKey = (obj) => {
      let key = "";
      const sorted = Object.entries(obj).sort((a2, b) => a2[0] - b[0]);
      for (let [k2, v] of sorted) {
        if (v == null) {
          v = "null";
        } else if (v instanceof URL) {
          v = v.toString();
        } else if (typeof v === "object") {
          v = createKey(v);
        }
        key += `${k2}:${v}:`;
      }
      return key;
    };
    var cacheOptions = ({ secureEndpoint, ...options }) => createKey({
      secureEndpoint: !!secureEndpoint,
      // socket connect options
      family: options.family,
      hints: options.hints,
      localAddress: options.localAddress,
      // tls specific connect options
      strictSsl: secureEndpoint ? !!options.rejectUnauthorized : false,
      ca: secureEndpoint ? options.ca : null,
      cert: secureEndpoint ? options.cert : null,
      key: secureEndpoint ? options.key : null,
      // http agent options
      keepAlive: options.keepAlive,
      keepAliveMsecs: options.keepAliveMsecs,
      maxSockets: options.maxSockets,
      maxTotalSockets: options.maxTotalSockets,
      maxFreeSockets: options.maxFreeSockets,
      scheduling: options.scheduling,
      // timeout options
      timeouts: options.timeouts,
      // proxy
      proxy: options.proxy
    });
    module2.exports = {
      normalizeOptions: normalizeOptions3,
      cacheOptions
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/agent-base/7.1.4/8064b28f1685a680dac840c22e648a41b5870407b6bfacc4ac83550c0f5ffdc2/node_modules/agent-base/dist/helpers.js
var require_helpers3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/agent-base/7.1.4/8064b28f1685a680dac840c22e648a41b5870407b6bfacc4ac83550c0f5ffdc2/node_modules/agent-base/dist/helpers.js"(exports2) {
    "use strict";
    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      var desc = Object.getOwnPropertyDescriptor(m, k2);
      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
        desc = { enumerable: true, get: function() {
          return m[k2];
        } };
      }
      Object.defineProperty(o2, k22, desc);
    }) : (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      o2[k22] = m[k2];
    }));
    var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o2, v) {
      Object.defineProperty(o2, "default", { enumerable: true, value: v });
    }) : function(o2, v) {
      o2["default"] = v;
    });
    var __importStar2 = exports2 && exports2.__importStar || function(mod) {
      if (mod && mod.__esModule) return mod;
      var result2 = {};
      if (mod != null) {
        for (var k2 in mod) if (k2 !== "default" && Object.prototype.hasOwnProperty.call(mod, k2)) __createBinding2(result2, mod, k2);
      }
      __setModuleDefault2(result2, mod);
      return result2;
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.req = exports2.json = exports2.toBuffer = void 0;
    var http2 = __importStar2(__require("http"));
    var https2 = __importStar2(__require("https"));
    async function toBuffer(stream2) {
      let length = 0;
      const chunks = [];
      for await (const chunk of stream2) {
        length += chunk.length;
        chunks.push(chunk);
      }
      return Buffer.concat(chunks, length);
    }
    exports2.toBuffer = toBuffer;
    async function json2(stream2) {
      const buf = await toBuffer(stream2);
      const str2 = buf.toString("utf8");
      try {
        return JSON.parse(str2);
      } catch (_err) {
        const err = _err;
        err.message += ` (input: ${str2})`;
        throw err;
      }
    }
    exports2.json = json2;
    function req2(url7, opts2 = {}) {
      const href = typeof url7 === "string" ? url7 : url7.href;
      const req3 = (href.startsWith("https:") ? https2 : http2).request(url7, opts2);
      const promise2 = new Promise((resolve3, reject3) => {
        req3.once("response", resolve3).once("error", reject3).end();
      });
      req3.then = promise2.then.bind(promise2);
      return req3;
    }
    exports2.req = req2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/agent-base/7.1.4/8064b28f1685a680dac840c22e648a41b5870407b6bfacc4ac83550c0f5ffdc2/node_modules/agent-base/dist/index.js
var require_dist12 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/agent-base/7.1.4/8064b28f1685a680dac840c22e648a41b5870407b6bfacc4ac83550c0f5ffdc2/node_modules/agent-base/dist/index.js"(exports2) {
    "use strict";
    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      var desc = Object.getOwnPropertyDescriptor(m, k2);
      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
        desc = { enumerable: true, get: function() {
          return m[k2];
        } };
      }
      Object.defineProperty(o2, k22, desc);
    }) : (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      o2[k22] = m[k2];
    }));
    var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o2, v) {
      Object.defineProperty(o2, "default", { enumerable: true, value: v });
    }) : function(o2, v) {
      o2["default"] = v;
    });
    var __importStar2 = exports2 && exports2.__importStar || function(mod) {
      if (mod && mod.__esModule) return mod;
      var result2 = {};
      if (mod != null) {
        for (var k2 in mod) if (k2 !== "default" && Object.prototype.hasOwnProperty.call(mod, k2)) __createBinding2(result2, mod, k2);
      }
      __setModuleDefault2(result2, mod);
      return result2;
    };
    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.Agent = void 0;
    var net = __importStar2(__require("net"));
    var http2 = __importStar2(__require("http"));
    var https_1 = __require("https");
    __exportStar2(require_helpers3(), exports2);
    var INTERNAL = /* @__PURE__ */ Symbol("AgentBaseInternalState");
    var Agent2 = class extends http2.Agent {
      constructor(opts2) {
        super(opts2);
        this[INTERNAL] = {};
      }
      /**
       * Determine whether this is an `http` or `https` request.
       */
      isSecureEndpoint(options) {
        if (options) {
          if (typeof options.secureEndpoint === "boolean") {
            return options.secureEndpoint;
          }
          if (typeof options.protocol === "string") {
            return options.protocol === "https:";
          }
        }
        const { stack } = new Error();
        if (typeof stack !== "string")
          return false;
        return stack.split("\n").some((l) => l.indexOf("(https.js:") !== -1 || l.indexOf("node:https:") !== -1);
      }
      // In order to support async signatures in `connect()` and Node's native
      // connection pooling in `http.Agent`, the array of sockets for each origin
      // has to be updated synchronously. This is so the length of the array is
      // accurate when `addRequest()` is next called. We achieve this by creating a
      // fake socket and adding it to `sockets[origin]` and incrementing
      // `totalSocketCount`.
      incrementSockets(name) {
        if (this.maxSockets === Infinity && this.maxTotalSockets === Infinity) {
          return null;
        }
        if (!this.sockets[name]) {
          this.sockets[name] = [];
        }
        const fakeSocket = new net.Socket({ writable: false });
        this.sockets[name].push(fakeSocket);
        this.totalSocketCount++;
        return fakeSocket;
      }
      decrementSockets(name, socket) {
        if (!this.sockets[name] || socket === null) {
          return;
        }
        const sockets = this.sockets[name];
        const index = sockets.indexOf(socket);
        if (index !== -1) {
          sockets.splice(index, 1);
          this.totalSocketCount--;
          if (sockets.length === 0) {
            delete this.sockets[name];
          }
        }
      }
      // In order to properly update the socket pool, we need to call `getName()` on
      // the core `https.Agent` if it is a secureEndpoint.
      getName(options) {
        const secureEndpoint = this.isSecureEndpoint(options);
        if (secureEndpoint) {
          return https_1.Agent.prototype.getName.call(this, options);
        }
        return super.getName(options);
      }
      createSocket(req2, options, cb) {
        const connectOpts = {
          ...options,
          secureEndpoint: this.isSecureEndpoint(options)
        };
        const name = this.getName(connectOpts);
        const fakeSocket = this.incrementSockets(name);
        Promise.resolve().then(() => this.connect(req2, connectOpts)).then((socket) => {
          this.decrementSockets(name, fakeSocket);
          if (socket instanceof http2.Agent) {
            try {
              return socket.addRequest(req2, connectOpts);
            } catch (err) {
              return cb(err);
            }
          }
          this[INTERNAL].currentSocket = socket;
          super.createSocket(req2, options, cb);
        }, (err) => {
          this.decrementSockets(name, fakeSocket);
          cb(err);
        });
      }
      createConnection() {
        const socket = this[INTERNAL].currentSocket;
        this[INTERNAL].currentSocket = void 0;
        if (!socket) {
          throw new Error("No socket was returned in the `connect()` function");
        }
        return socket;
      }
      get defaultPort() {
        return this[INTERNAL].defaultPort ?? (this.protocol === "https:" ? 443 : 80);
      }
      set defaultPort(v) {
        if (this[INTERNAL]) {
          this[INTERNAL].defaultPort = v;
        }
      }
      get protocol() {
        return this[INTERNAL].protocol ?? (this.isSecureEndpoint() ? "https:" : "http:");
      }
      set protocol(v) {
        if (this[INTERNAL]) {
          this[INTERNAL].protocol = v;
        }
      }
    };
    exports2.Agent = Agent2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/http-proxy-agent/7.0.2/66b3a07e03860f3fd1b6d53039af397c85aff4f42d613d13a760416cd0eeb738/node_modules/http-proxy-agent/dist/index.js
var require_dist13 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/http-proxy-agent/7.0.2/66b3a07e03860f3fd1b6d53039af397c85aff4f42d613d13a760416cd0eeb738/node_modules/http-proxy-agent/dist/index.js"(exports2) {
    "use strict";
    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      var desc = Object.getOwnPropertyDescriptor(m, k2);
      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
        desc = { enumerable: true, get: function() {
          return m[k2];
        } };
      }
      Object.defineProperty(o2, k22, desc);
    }) : (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      o2[k22] = m[k2];
    }));
    var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o2, v) {
      Object.defineProperty(o2, "default", { enumerable: true, value: v });
    }) : function(o2, v) {
      o2["default"] = v;
    });
    var __importStar2 = exports2 && exports2.__importStar || function(mod) {
      if (mod && mod.__esModule) return mod;
      var result2 = {};
      if (mod != null) {
        for (var k2 in mod) if (k2 !== "default" && Object.prototype.hasOwnProperty.call(mod, k2)) __createBinding2(result2, mod, k2);
      }
      __setModuleDefault2(result2, mod);
      return result2;
    };
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.HttpProxyAgent = void 0;
    var net = __importStar2(__require("net"));
    var tls2 = __importStar2(__require("tls"));
    var debug_1 = __importDefault2(require_src3());
    var events_1 = __require("events");
    var agent_base_1 = require_dist12();
    var url_1 = __require("url");
    var debug = (0, debug_1.default)("http-proxy-agent");
    var HttpProxyAgent = class extends agent_base_1.Agent {
      constructor(proxy, opts2) {
        super(opts2);
        this.proxy = typeof proxy === "string" ? new url_1.URL(proxy) : proxy;
        this.proxyHeaders = opts2?.headers ?? {};
        debug("Creating new HttpProxyAgent instance: %o", this.proxy.href);
        const host = (this.proxy.hostname || this.proxy.host).replace(/^\[|\]$/g, "");
        const port = this.proxy.port ? parseInt(this.proxy.port, 10) : this.proxy.protocol === "https:" ? 443 : 80;
        this.connectOpts = {
          ...opts2 ? omit3(opts2, "headers") : null,
          host,
          port
        };
      }
      addRequest(req2, opts2) {
        req2._header = null;
        this.setRequestProps(req2, opts2);
        super.addRequest(req2, opts2);
      }
      setRequestProps(req2, opts2) {
        const { proxy } = this;
        const protocol = opts2.secureEndpoint ? "https:" : "http:";
        const hostname = req2.getHeader("host") || "localhost";
        const base = `${protocol}//${hostname}`;
        const url7 = new url_1.URL(req2.path, base);
        if (opts2.port !== 80) {
          url7.port = String(opts2.port);
        }
        req2.path = String(url7);
        const headers = typeof this.proxyHeaders === "function" ? this.proxyHeaders() : { ...this.proxyHeaders };
        if (proxy.username || proxy.password) {
          const auth = `${decodeURIComponent(proxy.username)}:${decodeURIComponent(proxy.password)}`;
          headers["Proxy-Authorization"] = `Basic ${Buffer.from(auth).toString("base64")}`;
        }
        if (!headers["Proxy-Connection"]) {
          headers["Proxy-Connection"] = this.keepAlive ? "Keep-Alive" : "close";
        }
        for (const name of Object.keys(headers)) {
          const value = headers[name];
          if (value) {
            req2.setHeader(name, value);
          }
        }
      }
      async connect(req2, opts2) {
        req2._header = null;
        if (!req2.path.includes("://")) {
          this.setRequestProps(req2, opts2);
        }
        let first;
        let endOfHeaders;
        debug("Regenerating stored HTTP header string for request");
        req2._implicitHeader();
        if (req2.outputData && req2.outputData.length > 0) {
          debug("Patching connection write() output buffer with updated header");
          first = req2.outputData[0].data;
          endOfHeaders = first.indexOf("\r\n\r\n") + 4;
          req2.outputData[0].data = req2._header + first.substring(endOfHeaders);
          debug("Output buffer: %o", req2.outputData[0].data);
        }
        let socket;
        if (this.proxy.protocol === "https:") {
          debug("Creating `tls.Socket`: %o", this.connectOpts);
          socket = tls2.connect(this.connectOpts);
        } else {
          debug("Creating `net.Socket`: %o", this.connectOpts);
          socket = net.connect(this.connectOpts);
        }
        await (0, events_1.once)(socket, "connect");
        return socket;
      }
    };
    HttpProxyAgent.protocols = ["http", "https"];
    exports2.HttpProxyAgent = HttpProxyAgent;
    function omit3(obj, ...keys4) {
      const ret2 = {};
      let key;
      for (key in obj) {
        if (!keys4.includes(key)) {
          ret2[key] = obj[key];
        }
      }
      return ret2;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/https-proxy-agent/7.0.6/d11f718a405fb22036870ac4677c8f14138f1681bcb7a01675cd4eced7553a42/node_modules/https-proxy-agent/dist/parse-proxy-response.js
var require_parse_proxy_response = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/https-proxy-agent/7.0.6/d11f718a405fb22036870ac4677c8f14138f1681bcb7a01675cd4eced7553a42/node_modules/https-proxy-agent/dist/parse-proxy-response.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.parseProxyResponse = void 0;
    var debug_1 = __importDefault2(require_src3());
    var debug = (0, debug_1.default)("https-proxy-agent:parse-proxy-response");
    function parseProxyResponse(socket) {
      return new Promise((resolve3, reject3) => {
        let buffersLength = 0;
        const buffers = [];
        function read2() {
          const b = socket.read();
          if (b)
            ondata(b);
          else
            socket.once("readable", read2);
        }
        function cleanup() {
          socket.removeListener("end", onend);
          socket.removeListener("error", onerror);
          socket.removeListener("readable", read2);
        }
        function onend() {
          cleanup();
          debug("onend");
          reject3(new Error("Proxy connection ended before receiving CONNECT response"));
        }
        function onerror(err) {
          cleanup();
          debug("onerror %o", err);
          reject3(err);
        }
        function ondata(b) {
          buffers.push(b);
          buffersLength += b.length;
          const buffered = Buffer.concat(buffers, buffersLength);
          const endOfHeaders = buffered.indexOf("\r\n\r\n");
          if (endOfHeaders === -1) {
            debug("have not received end of HTTP headers yet...");
            read2();
            return;
          }
          const headerParts = buffered.slice(0, endOfHeaders).toString("ascii").split("\r\n");
          const firstLine = headerParts.shift();
          if (!firstLine) {
            socket.destroy();
            return reject3(new Error("No header received from proxy CONNECT response"));
          }
          const firstLineParts = firstLine.split(" ");
          const statusCode = +firstLineParts[1];
          const statusText = firstLineParts.slice(2).join(" ");
          const headers = {};
          for (const header of headerParts) {
            if (!header)
              continue;
            const firstColon = header.indexOf(":");
            if (firstColon === -1) {
              socket.destroy();
              return reject3(new Error(`Invalid header from proxy CONNECT response: "${header}"`));
            }
            const key = header.slice(0, firstColon).toLowerCase();
            const value = header.slice(firstColon + 1).trimStart();
            const current = headers[key];
            if (typeof current === "string") {
              headers[key] = [current, value];
            } else if (Array.isArray(current)) {
              current.push(value);
            } else {
              headers[key] = value;
            }
          }
          debug("got proxy server response: %o %o", firstLine, headers);
          cleanup();
          resolve3({
            connect: {
              statusCode,
              statusText,
              headers
            },
            buffered
          });
        }
        socket.on("error", onerror);
        socket.on("end", onend);
        read2();
      });
    }
    exports2.parseProxyResponse = parseProxyResponse;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/https-proxy-agent/7.0.6/d11f718a405fb22036870ac4677c8f14138f1681bcb7a01675cd4eced7553a42/node_modules/https-proxy-agent/dist/index.js
var require_dist14 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/https-proxy-agent/7.0.6/d11f718a405fb22036870ac4677c8f14138f1681bcb7a01675cd4eced7553a42/node_modules/https-proxy-agent/dist/index.js"(exports2) {
    "use strict";
    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      var desc = Object.getOwnPropertyDescriptor(m, k2);
      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
        desc = { enumerable: true, get: function() {
          return m[k2];
        } };
      }
      Object.defineProperty(o2, k22, desc);
    }) : (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      o2[k22] = m[k2];
    }));
    var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o2, v) {
      Object.defineProperty(o2, "default", { enumerable: true, value: v });
    }) : function(o2, v) {
      o2["default"] = v;
    });
    var __importStar2 = exports2 && exports2.__importStar || function(mod) {
      if (mod && mod.__esModule) return mod;
      var result2 = {};
      if (mod != null) {
        for (var k2 in mod) if (k2 !== "default" && Object.prototype.hasOwnProperty.call(mod, k2)) __createBinding2(result2, mod, k2);
      }
      __setModuleDefault2(result2, mod);
      return result2;
    };
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.HttpsProxyAgent = void 0;
    var net = __importStar2(__require("net"));
    var tls2 = __importStar2(__require("tls"));
    var assert_1 = __importDefault2(__require("assert"));
    var debug_1 = __importDefault2(require_src3());
    var agent_base_1 = require_dist12();
    var url_1 = __require("url");
    var parse_proxy_response_1 = require_parse_proxy_response();
    var debug = (0, debug_1.default)("https-proxy-agent");
    var setServernameFromNonIpHost = (options) => {
      if (options.servername === void 0 && options.host && !net.isIP(options.host)) {
        return {
          ...options,
          servername: options.host
        };
      }
      return options;
    };
    var HttpsProxyAgent = class extends agent_base_1.Agent {
      constructor(proxy, opts2) {
        super(opts2);
        this.options = { path: void 0 };
        this.proxy = typeof proxy === "string" ? new url_1.URL(proxy) : proxy;
        this.proxyHeaders = opts2?.headers ?? {};
        debug("Creating new HttpsProxyAgent instance: %o", this.proxy.href);
        const host = (this.proxy.hostname || this.proxy.host).replace(/^\[|\]$/g, "");
        const port = this.proxy.port ? parseInt(this.proxy.port, 10) : this.proxy.protocol === "https:" ? 443 : 80;
        this.connectOpts = {
          // Attempt to negotiate http/1.1 for proxy servers that support http/2
          ALPNProtocols: ["http/1.1"],
          ...opts2 ? omit3(opts2, "headers") : null,
          host,
          port
        };
      }
      /**
       * Called when the node-core HTTP client library is creating a
       * new HTTP request.
       */
      async connect(req2, opts2) {
        const { proxy } = this;
        if (!opts2.host) {
          throw new TypeError('No "host" provided');
        }
        let socket;
        if (proxy.protocol === "https:") {
          debug("Creating `tls.Socket`: %o", this.connectOpts);
          socket = tls2.connect(setServernameFromNonIpHost(this.connectOpts));
        } else {
          debug("Creating `net.Socket`: %o", this.connectOpts);
          socket = net.connect(this.connectOpts);
        }
        const headers = typeof this.proxyHeaders === "function" ? this.proxyHeaders() : { ...this.proxyHeaders };
        const host = net.isIPv6(opts2.host) ? `[${opts2.host}]` : opts2.host;
        let payload = `CONNECT ${host}:${opts2.port} HTTP/1.1\r
`;
        if (proxy.username || proxy.password) {
          const auth = `${decodeURIComponent(proxy.username)}:${decodeURIComponent(proxy.password)}`;
          headers["Proxy-Authorization"] = `Basic ${Buffer.from(auth).toString("base64")}`;
        }
        headers.Host = `${host}:${opts2.port}`;
        if (!headers["Proxy-Connection"]) {
          headers["Proxy-Connection"] = this.keepAlive ? "Keep-Alive" : "close";
        }
        for (const name of Object.keys(headers)) {
          payload += `${name}: ${headers[name]}\r
`;
        }
        const proxyResponsePromise = (0, parse_proxy_response_1.parseProxyResponse)(socket);
        socket.write(`${payload}\r
`);
        const { connect, buffered } = await proxyResponsePromise;
        req2.emit("proxyConnect", connect);
        this.emit("proxyConnect", connect, req2);
        if (connect.statusCode === 200) {
          req2.once("socket", resume);
          if (opts2.secureEndpoint) {
            debug("Upgrading socket connection to TLS");
            return tls2.connect({
              ...omit3(setServernameFromNonIpHost(opts2), "host", "path", "port"),
              socket
            });
          }
          return socket;
        }
        socket.destroy();
        const fakeSocket = new net.Socket({ writable: false });
        fakeSocket.readable = true;
        req2.once("socket", (s) => {
          debug("Replaying proxy buffer for failed request");
          (0, assert_1.default)(s.listenerCount("data") > 0);
          s.push(buffered);
          s.push(null);
        });
        return fakeSocket;
      }
    };
    HttpsProxyAgent.protocols = ["http", "https"];
    exports2.HttpsProxyAgent = HttpsProxyAgent;
    function resume(socket) {
      socket.resume();
    }
    function omit3(obj, ...keys4) {
      const ret2 = {};
      let key;
      for (key in obj) {
        if (!keys4.includes(key)) {
          ret2[key] = obj[key];
        }
      }
      return ret2;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/socks-proxy-agent/8.0.5/5dd5eca6029da13a51910de380d7666bf61c10058904adbea302874a28c79ba6/node_modules/socks-proxy-agent/dist/index.js
var require_dist15 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/socks-proxy-agent/8.0.5/5dd5eca6029da13a51910de380d7666bf61c10058904adbea302874a28c79ba6/node_modules/socks-proxy-agent/dist/index.js"(exports2) {
    "use strict";
    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      var desc = Object.getOwnPropertyDescriptor(m, k2);
      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
        desc = { enumerable: true, get: function() {
          return m[k2];
        } };
      }
      Object.defineProperty(o2, k22, desc);
    }) : (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      o2[k22] = m[k2];
    }));
    var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o2, v) {
      Object.defineProperty(o2, "default", { enumerable: true, value: v });
    }) : function(o2, v) {
      o2["default"] = v;
    });
    var __importStar2 = exports2 && exports2.__importStar || function(mod) {
      if (mod && mod.__esModule) return mod;
      var result2 = {};
      if (mod != null) {
        for (var k2 in mod) if (k2 !== "default" && Object.prototype.hasOwnProperty.call(mod, k2)) __createBinding2(result2, mod, k2);
      }
      __setModuleDefault2(result2, mod);
      return result2;
    };
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.SocksProxyAgent = void 0;
    var socks_1 = require_build();
    var agent_base_1 = require_dist12();
    var debug_1 = __importDefault2(require_src3());
    var dns = __importStar2(__require("dns"));
    var net = __importStar2(__require("net"));
    var tls2 = __importStar2(__require("tls"));
    var url_1 = __require("url");
    var debug = (0, debug_1.default)("socks-proxy-agent");
    var setServernameFromNonIpHost = (options) => {
      if (options.servername === void 0 && options.host && !net.isIP(options.host)) {
        return {
          ...options,
          servername: options.host
        };
      }
      return options;
    };
    function parseSocksURL(url7) {
      let lookup = false;
      let type4 = 5;
      const host = url7.hostname;
      const port = parseInt(url7.port, 10) || 1080;
      switch (url7.protocol.replace(":", "")) {
        case "socks4":
          lookup = true;
          type4 = 4;
          break;
        // pass through
        case "socks4a":
          type4 = 4;
          break;
        case "socks5":
          lookup = true;
          type4 = 5;
          break;
        // pass through
        case "socks":
          type4 = 5;
          break;
        case "socks5h":
          type4 = 5;
          break;
        default:
          throw new TypeError(`A "socks" protocol must be specified! Got: ${String(url7.protocol)}`);
      }
      const proxy = {
        host,
        port,
        type: type4
      };
      if (url7.username) {
        Object.defineProperty(proxy, "userId", {
          value: decodeURIComponent(url7.username),
          enumerable: false
        });
      }
      if (url7.password != null) {
        Object.defineProperty(proxy, "password", {
          value: decodeURIComponent(url7.password),
          enumerable: false
        });
      }
      return { lookup, proxy };
    }
    var SocksProxyAgent = class extends agent_base_1.Agent {
      constructor(uri, opts2) {
        super(opts2);
        const url7 = typeof uri === "string" ? new url_1.URL(uri) : uri;
        const { proxy, lookup } = parseSocksURL(url7);
        this.shouldLookup = lookup;
        this.proxy = proxy;
        this.timeout = opts2?.timeout ?? null;
        this.socketOptions = opts2?.socketOptions ?? null;
      }
      /**
       * Initiates a SOCKS connection to the specified SOCKS proxy server,
       * which in turn connects to the specified remote host and port.
       */
      async connect(req2, opts2) {
        const { shouldLookup, proxy, timeout } = this;
        if (!opts2.host) {
          throw new Error("No `host` defined!");
        }
        let { host } = opts2;
        const { port, lookup: lookupFn = dns.lookup } = opts2;
        if (shouldLookup) {
          host = await new Promise((resolve3, reject3) => {
            lookupFn(host, {}, (err, res) => {
              if (err) {
                reject3(err);
              } else {
                resolve3(res);
              }
            });
          });
        }
        const socksOpts = {
          proxy,
          destination: {
            host,
            port: typeof port === "number" ? port : parseInt(port, 10)
          },
          command: "connect",
          timeout: timeout ?? void 0,
          // @ts-expect-error the type supplied by socks for socket_options is wider
          // than necessary since socks will always override the host and port
          socket_options: this.socketOptions ?? void 0
        };
        const cleanup = (tlsSocket) => {
          req2.destroy();
          socket.destroy();
          if (tlsSocket)
            tlsSocket.destroy();
        };
        debug("Creating socks proxy connection: %o", socksOpts);
        const { socket } = await socks_1.SocksClient.createConnection(socksOpts);
        debug("Successfully created socks proxy connection");
        if (timeout !== null) {
          socket.setTimeout(timeout);
          socket.on("timeout", () => cleanup());
        }
        if (opts2.secureEndpoint) {
          debug("Upgrading socket connection to TLS");
          const tlsSocket = tls2.connect({
            ...omit3(setServernameFromNonIpHost(opts2), "host", "path", "port"),
            socket
          });
          tlsSocket.once("error", (error) => {
            debug("Socket TLS error", error.message);
            cleanup(tlsSocket);
          });
          return tlsSocket;
        }
        return socket;
      }
    };
    SocksProxyAgent.protocols = [
      "socks",
      "socks4",
      "socks4a",
      "socks5",
      "socks5h"
    ];
    exports2.SocksProxyAgent = SocksProxyAgent;
    function omit3(obj, ...keys4) {
      const ret2 = {};
      let key;
      for (key in obj) {
        if (!keys4.includes(key)) {
          ret2[key] = obj[key];
        }
      }
      return ret2;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/agent/4.0.0/a7f3c3ea06844822dd592a65c8562676654b9d17a58260cfff85b771e7287d2d/node_modules/@npmcli/agent/lib/errors.js
var require_errors10 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/agent/4.0.0/a7f3c3ea06844822dd592a65c8562676654b9d17a58260cfff85b771e7287d2d/node_modules/@npmcli/agent/lib/errors.js"(exports2, module2) {
    "use strict";
    var InvalidProxyProtocolError = class extends Error {
      constructor(url7) {
        super(`Invalid protocol \`${url7.protocol}\` connecting to proxy \`${url7.host}\``);
        this.code = "EINVALIDPROXY";
        this.proxy = url7;
      }
    };
    var ConnectionTimeoutError = class extends Error {
      constructor(host) {
        super(`Timeout connecting to host \`${host}\``);
        this.code = "ECONNECTIONTIMEOUT";
        this.host = host;
      }
    };
    var IdleTimeoutError = class extends Error {
      constructor(host) {
        super(`Idle timeout reached for host \`${host}\``);
        this.code = "EIDLETIMEOUT";
        this.host = host;
      }
    };
    var ResponseTimeoutError = class extends Error {
      constructor(request, proxy) {
        let msg = "Response timeout ";
        if (proxy) {
          msg += `from proxy \`${proxy.host}\` `;
        }
        msg += `connecting to host \`${request.host}\``;
        super(msg);
        this.code = "ERESPONSETIMEOUT";
        this.proxy = proxy;
        this.request = request;
      }
    };
    var TransferTimeoutError = class extends Error {
      constructor(request, proxy) {
        let msg = "Transfer timeout ";
        if (proxy) {
          msg += `from proxy \`${proxy.host}\` `;
        }
        msg += `for \`${request.host}\``;
        super(msg);
        this.code = "ETRANSFERTIMEOUT";
        this.proxy = proxy;
        this.request = request;
      }
    };
    module2.exports = {
      InvalidProxyProtocolError,
      ConnectionTimeoutError,
      IdleTimeoutError,
      ResponseTimeoutError,
      TransferTimeoutError
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/agent/4.0.0/a7f3c3ea06844822dd592a65c8562676654b9d17a58260cfff85b771e7287d2d/node_modules/@npmcli/agent/lib/proxy.js
var require_proxy = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/agent/4.0.0/a7f3c3ea06844822dd592a65c8562676654b9d17a58260cfff85b771e7287d2d/node_modules/@npmcli/agent/lib/proxy.js"(exports2, module2) {
    "use strict";
    var { HttpProxyAgent } = require_dist13();
    var { HttpsProxyAgent } = require_dist14();
    var { SocksProxyAgent } = require_dist15();
    var { LRUCache } = require_index_min();
    var { InvalidProxyProtocolError } = require_errors10();
    var PROXY_CACHE = new LRUCache({ max: 20 });
    var SOCKS_PROTOCOLS = new Set(SocksProxyAgent.protocols);
    var PROXY_ENV_KEYS = /* @__PURE__ */ new Set(["https_proxy", "http_proxy", "proxy", "no_proxy"]);
    var PROXY_ENV = Object.entries(process.env).reduce((acc, [key, value]) => {
      key = key.toLowerCase();
      if (PROXY_ENV_KEYS.has(key)) {
        acc[key] = value;
      }
      return acc;
    }, {});
    var getProxyAgent = (url7) => {
      url7 = new URL(url7);
      const protocol = url7.protocol.slice(0, -1);
      if (SOCKS_PROTOCOLS.has(protocol)) {
        return SocksProxyAgent;
      }
      if (protocol === "https" || protocol === "http") {
        return [HttpProxyAgent, HttpsProxyAgent];
      }
      throw new InvalidProxyProtocolError(url7);
    };
    var isNoProxy = (url7, noProxy) => {
      if (typeof noProxy === "string") {
        noProxy = noProxy.split(",").map((p) => p.trim()).filter(Boolean);
      }
      if (!noProxy || !noProxy.length) {
        return false;
      }
      const hostSegments = url7.hostname.split(".").reverse();
      return noProxy.some((no) => {
        const noSegments = no.split(".").filter(Boolean).reverse();
        if (!noSegments.length) {
          return false;
        }
        for (let i2 = 0; i2 < noSegments.length; i2++) {
          if (hostSegments[i2] !== noSegments[i2]) {
            return false;
          }
        }
        return true;
      });
    };
    var getProxy = (url7, { proxy, noProxy }) => {
      url7 = new URL(url7);
      if (!proxy) {
        proxy = url7.protocol === "https:" ? PROXY_ENV.https_proxy : PROXY_ENV.https_proxy || PROXY_ENV.http_proxy || PROXY_ENV.proxy;
      }
      if (!noProxy) {
        noProxy = PROXY_ENV.no_proxy;
      }
      if (!proxy || isNoProxy(url7, noProxy)) {
        return null;
      }
      return new URL(proxy);
    };
    module2.exports = {
      getProxyAgent,
      getProxy,
      proxyCache: PROXY_CACHE
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/agent/4.0.0/a7f3c3ea06844822dd592a65c8562676654b9d17a58260cfff85b771e7287d2d/node_modules/@npmcli/agent/lib/agents.js
var require_agents = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/agent/4.0.0/a7f3c3ea06844822dd592a65c8562676654b9d17a58260cfff85b771e7287d2d/node_modules/@npmcli/agent/lib/agents.js"(exports2, module2) {
    "use strict";
    var net = __require("net");
    var tls2 = __require("tls");
    var { once: once11 } = __require("events");
    var timers = __require("timers/promises");
    var { normalizeOptions: normalizeOptions3, cacheOptions } = require_options3();
    var { getProxy, getProxyAgent, proxyCache } = require_proxy();
    var Errors = require_errors10();
    var { Agent: AgentBase } = require_dist12();
    module2.exports = class Agent extends AgentBase {
      #options;
      #timeouts;
      #proxy;
      #noProxy;
      #ProxyAgent;
      constructor(options = {}) {
        const { timeouts, proxy, noProxy, ...normalizedOptions } = normalizeOptions3(options);
        super(normalizedOptions);
        this.#options = normalizedOptions;
        this.#timeouts = timeouts;
        if (proxy) {
          this.#proxy = new URL(proxy);
          this.#noProxy = noProxy;
          this.#ProxyAgent = getProxyAgent(proxy);
        }
      }
      get proxy() {
        return this.#proxy ? { url: this.#proxy } : {};
      }
      #getProxy(options) {
        if (!this.#proxy) {
          return;
        }
        const proxy = getProxy(`${options.protocol}//${options.host}:${options.port}`, {
          proxy: this.#proxy,
          noProxy: this.#noProxy
        });
        if (!proxy) {
          return;
        }
        const cacheKey = cacheOptions({
          ...options,
          ...this.#options,
          timeouts: this.#timeouts,
          proxy
        });
        if (proxyCache.has(cacheKey)) {
          return proxyCache.get(cacheKey);
        }
        let ProxyAgent2 = this.#ProxyAgent;
        if (Array.isArray(ProxyAgent2)) {
          ProxyAgent2 = this.isSecureEndpoint(options) ? ProxyAgent2[1] : ProxyAgent2[0];
        }
        const proxyAgent = new ProxyAgent2(proxy, {
          ...this.#options,
          socketOptions: { family: this.#options.family }
        });
        proxyCache.set(cacheKey, proxyAgent);
        return proxyAgent;
      }
      // takes an array of promises and races them against the connection timeout
      // which will throw the necessary error if it is hit. This will return the
      // result of the promise race.
      async #timeoutConnection({ promises, options, timeout }, ac = new AbortController()) {
        if (timeout) {
          const connectionTimeout = timers.setTimeout(timeout, null, { signal: ac.signal }).then(() => {
            throw new Errors.ConnectionTimeoutError(`${options.host}:${options.port}`);
          }).catch((err) => {
            if (err.name === "AbortError") {
              return;
            }
            throw err;
          });
          promises.push(connectionTimeout);
        }
        let result2;
        try {
          result2 = await Promise.race(promises);
          ac.abort();
        } catch (err) {
          ac.abort();
          throw err;
        }
        return result2;
      }
      async connect(request, options) {
        options.lookup ??= this.#options.lookup;
        let socket;
        let timeout = this.#timeouts.connection;
        const isSecureEndpoint = this.isSecureEndpoint(options);
        const proxy = this.#getProxy(options);
        if (proxy) {
          const start = Date.now();
          socket = await this.#timeoutConnection({
            options,
            timeout,
            promises: [proxy.connect(request, options)]
          });
          if (timeout) {
            timeout = timeout - (Date.now() - start);
          }
        } else {
          socket = (isSecureEndpoint ? tls2 : net).connect(options);
        }
        socket.setKeepAlive(this.keepAlive, this.keepAliveMsecs);
        socket.setNoDelay(this.keepAlive);
        const abortController = new AbortController();
        const { signal } = abortController;
        const connectPromise = socket[isSecureEndpoint ? "secureConnecting" : "connecting"] ? once11(socket, isSecureEndpoint ? "secureConnect" : "connect", { signal }) : Promise.resolve();
        await this.#timeoutConnection({
          options,
          timeout,
          promises: [
            connectPromise,
            once11(socket, "error", { signal }).then((err) => {
              throw err[0];
            })
          ]
        }, abortController);
        if (this.#timeouts.idle) {
          socket.setTimeout(this.#timeouts.idle, () => {
            socket.destroy(new Errors.IdleTimeoutError(`${options.host}:${options.port}`));
          });
        }
        return socket;
      }
      addRequest(request, options) {
        const proxy = this.#getProxy(options);
        if (proxy?.setRequestProps) {
          proxy.setRequestProps(request, options);
        }
        request.setHeader("connection", this.keepAlive ? "keep-alive" : "close");
        if (this.#timeouts.response) {
          let responseTimeout;
          request.once("finish", () => {
            setTimeout(() => {
              request.destroy(new Errors.ResponseTimeoutError(request, this.#proxy));
            }, this.#timeouts.response);
          });
          request.once("response", () => {
            clearTimeout(responseTimeout);
          });
        }
        if (this.#timeouts.transfer) {
          let transferTimeout;
          request.once("response", (res) => {
            setTimeout(() => {
              res.destroy(new Errors.TransferTimeoutError(request, this.#proxy));
            }, this.#timeouts.transfer);
            res.once("close", () => {
              clearTimeout(transferTimeout);
            });
          });
        }
        return super.addRequest(request, options);
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/agent/4.0.0/a7f3c3ea06844822dd592a65c8562676654b9d17a58260cfff85b771e7287d2d/node_modules/@npmcli/agent/lib/index.js
var require_lib35 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/agent/4.0.0/a7f3c3ea06844822dd592a65c8562676654b9d17a58260cfff85b771e7287d2d/node_modules/@npmcli/agent/lib/index.js"(exports2, module2) {
    "use strict";
    var { LRUCache } = require_index_min();
    var { normalizeOptions: normalizeOptions3, cacheOptions } = require_options3();
    var { getProxy, proxyCache } = require_proxy();
    var dns = require_dns2();
    var Agent2 = require_agents();
    var agentCache = new LRUCache({ max: 20 });
    var getAgent = (url7, { agent, proxy, noProxy, ...options } = {}) => {
      if (agent != null) {
        return agent;
      }
      url7 = new URL(url7);
      const proxyForUrl = getProxy(url7, { proxy, noProxy });
      const normalizedOptions = {
        ...normalizeOptions3(options),
        proxy: proxyForUrl
      };
      const cacheKey = cacheOptions({
        ...normalizedOptions,
        secureEndpoint: url7.protocol === "https:"
      });
      if (agentCache.has(cacheKey)) {
        return agentCache.get(cacheKey);
      }
      const newAgent = new Agent2(normalizedOptions);
      agentCache.set(cacheKey, newAgent);
      return newAgent;
    };
    module2.exports = {
      getAgent,
      Agent: Agent2,
      // these are exported for backwards compatability
      HttpAgent: Agent2,
      HttpsAgent: Agent2,
      cache: {
        proxy: proxyCache,
        agent: agentCache,
        dns: dns.cache,
        clear: () => {
          proxyCache.clear();
          agentCache.clear();
          dns.cache.clear();
        }
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/make-fetch-happen/15.0.5/5d3859dab383e894b9567bea0629a8d1ce0ad8967e3143179728bd1c76154729/node_modules/make-fetch-happen/package.json
var require_package4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/make-fetch-happen/15.0.5/5d3859dab383e894b9567bea0629a8d1ce0ad8967e3143179728bd1c76154729/node_modules/make-fetch-happen/package.json"(exports2, module2) {
    module2.exports = {
      name: "make-fetch-happen",
      version: "15.0.5",
      description: "Opinionated, caching, retrying fetch client",
      main: "lib/index.js",
      files: [
        "bin/",
        "lib/"
      ],
      scripts: {
        test: "tap",
        posttest: "npm run lint",
        eslint: 'eslint "**/*.{js,cjs,ts,mjs,jsx,tsx}"',
        lint: "npm run eslint",
        lintfix: "npm run eslint -- --fix",
        postlint: "template-oss-check",
        snap: "tap",
        "template-oss-apply": "template-oss-apply --force"
      },
      repository: {
        type: "git",
        url: "git+https://github.com/npm/make-fetch-happen.git"
      },
      keywords: [
        "http",
        "request",
        "fetch",
        "mean girls",
        "caching",
        "cache",
        "subresource integrity"
      ],
      author: "GitHub Inc.",
      license: "ISC",
      dependencies: {
        "@gar/promise-retry": "^1.0.0",
        "@npmcli/agent": "^4.0.0",
        "@npmcli/redact": "^4.0.0",
        cacache: "^20.0.1",
        "http-cache-semantics": "^4.1.1",
        minipass: "^7.0.2",
        "minipass-fetch": "^5.0.0",
        "minipass-flush": "^1.0.5",
        "minipass-pipeline": "^1.2.4",
        negotiator: "^1.0.0",
        "proc-log": "^6.0.0",
        ssri: "^13.0.0"
      },
      devDependencies: {
        "@npmcli/eslint-config": "^5.0.0",
        "@npmcli/template-oss": "4.25.0",
        nock: "^13.2.4",
        "safe-buffer": "^5.2.1",
        "standard-version": "^9.3.2",
        tap: "^16.0.0"
      },
      engines: {
        node: "^20.17.0 || >=22.9.0"
      },
      tap: {
        color: 1,
        files: "test/*.js",
        "check-coverage": true,
        timeout: 60,
        "nyc-arg": [
          "--exclude",
          "tap-snapshots/**"
        ]
      },
      templateOSS: {
        "//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.",
        version: "4.25.0",
        publish: "true"
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/make-fetch-happen/15.0.5/5d3859dab383e894b9567bea0629a8d1ce0ad8967e3143179728bd1c76154729/node_modules/make-fetch-happen/lib/remote.js
var require_remote = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/make-fetch-happen/15.0.5/5d3859dab383e894b9567bea0629a8d1ce0ad8967e3143179728bd1c76154729/node_modules/make-fetch-happen/lib/remote.js"(exports2, module2) {
    var { Minipass } = require_commonjs();
    var fetch2 = require_lib29();
    var { promiseRetry } = require_lib34();
    var ssri6 = require_lib6();
    var { log: log3 } = require_lib9();
    var { redact: cleanUrl } = require_lib30();
    var CachingMinipassPipeline = require_pipeline();
    var { getAgent } = require_lib35();
    var pkg = require_package4();
    var USER_AGENT2 = `${pkg.name}/${pkg.version} (+https://npm.im/${pkg.name})`;
    var RETRY_ERRORS = [
      "ECONNRESET",
      // remote socket closed on us
      "ECONNREFUSED",
      // remote host refused to open connection
      "EADDRINUSE",
      // failed to bind to a local port (proxy?)
      "ETIMEDOUT",
      // someone in the transaction is WAY TOO SLOW
      // from @npmcli/agent
      "ECONNECTIONTIMEOUT",
      "EIDLETIMEOUT",
      "ERESPONSETIMEOUT",
      "ETRANSFERTIMEOUT"
      // Known codes we do NOT retry on:
      // ENOTFOUND (getaddrinfo failure. Either bad hostname, or offline)
      // EINVALIDPROXY // invalid protocol from @npmcli/agent
      // EINVALIDRESPONSE // invalid status code from @npmcli/agent
    ];
    var RETRY_TYPES = [
      "request-timeout"
    ];
    var remoteFetch = (request, options) => {
      const agent = getAgent(request.url, { ...options, signal: void 0 });
      if (!request.headers.has("connection")) {
        request.headers.set("connection", agent ? "keep-alive" : "close");
      }
      if (!request.headers.has("user-agent")) {
        request.headers.set("user-agent", USER_AGENT2);
      }
      const _opts = {
        ...options,
        agent,
        redirect: "manual"
      };
      return promiseRetry(async (retryHandler, attemptNum) => {
        const req2 = new fetch2.Request(request, _opts);
        const url7 = cleanUrl(req2.url);
        try {
          let res = await fetch2(req2, _opts);
          if (_opts.integrity && res.status === 200) {
            const integrityStream = ssri6.integrityStream({
              algorithms: _opts.algorithms,
              integrity: _opts.integrity,
              size: _opts.size
            });
            const pipeline2 = new CachingMinipassPipeline({
              events: ["integrity", "size"]
            }, res.body, integrityStream);
            integrityStream.on("integrity", (i2) => pipeline2.emit("integrity", i2));
            integrityStream.on("size", (s) => pipeline2.emit("size", s));
            res = new fetch2.Response(pipeline2, res);
            res.body.hasIntegrityEmitter = true;
          }
          res.headers.set("x-fetch-attempts", attemptNum);
          const isStream3 = Minipass.isStream(req2.body);
          const isRetriable = req2.method !== "POST" && !isStream3 && ([408, 420, 429].includes(res.status) || res.status >= 500);
          if (isRetriable) {
            if (typeof options.onRetry === "function") {
              options.onRetry(res);
            }
            log3.http("fetch", `${req2.method} ${url7} attempt ${attemptNum} failed with ${res.status}`);
            return retryHandler(res);
          }
          return res;
        } catch (err) {
          const code = err.code === "EPROMISERETRY" ? err.retried.code : err.code;
          const isRetryError = err.retried instanceof fetch2.Response || RETRY_ERRORS.includes(code) && RETRY_TYPES.includes(err.type);
          if (req2.method === "POST" || isRetryError) {
            throw err;
          }
          if (typeof options.onRetry === "function") {
            options.onRetry(err);
          }
          log3.http("fetch", `${req2.method} ${url7} attempt ${attemptNum} failed with ${err.code}`);
          return retryHandler(err);
        }
      }, options.retry).catch((err) => {
        if (err.status >= 400 && err.type !== "system") {
          return err;
        }
        throw err;
      });
    };
    module2.exports = remoteFetch;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/make-fetch-happen/15.0.5/5d3859dab383e894b9567bea0629a8d1ce0ad8967e3143179728bd1c76154729/node_modules/make-fetch-happen/lib/cache/entry.js
var require_entry4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/make-fetch-happen/15.0.5/5d3859dab383e894b9567bea0629a8d1ce0ad8967e3143179728bd1c76154729/node_modules/make-fetch-happen/lib/cache/entry.js"(exports2, module2) {
    var { Request, Response } = require_lib29();
    var { Minipass } = require_commonjs();
    var MinipassFlush = require_minipass_flush();
    var cacache = require_lib33();
    var url7 = __require("url");
    var CachingMinipassPipeline = require_pipeline();
    var CachePolicy = require_policy();
    var cacheKey = require_key();
    var remote = require_remote();
    var hasOwnProperty2 = (obj, prop3) => Object.prototype.hasOwnProperty.call(obj, prop3);
    var KEEP_REQUEST_HEADERS = [
      "accept-charset",
      "accept-encoding",
      "accept-language",
      "accept",
      "cache-control"
    ];
    var KEEP_RESPONSE_HEADERS = [
      "cache-control",
      "content-encoding",
      "content-language",
      "content-type",
      "date",
      "etag",
      "expires",
      "last-modified",
      "link",
      "location",
      "pragma",
      "vary"
    ];
    var getMetadata = (request, response, options) => {
      const metadata = {
        time: Date.now(),
        url: request.url,
        reqHeaders: {},
        resHeaders: {},
        // options on which we must match the request and vary the response
        options: {
          compress: options.compress != null ? options.compress : request.compress
        }
      };
      if (response.status !== 200 && response.status !== 304) {
        metadata.status = response.status;
      }
      for (const name of KEEP_REQUEST_HEADERS) {
        if (request.headers.has(name)) {
          metadata.reqHeaders[name] = request.headers.get(name);
        }
      }
      const host = request.headers.get("host");
      const parsedUrl = new url7.URL(request.url);
      if (host && parsedUrl.host !== host) {
        metadata.reqHeaders.host = host;
      }
      if (response.headers.has("vary")) {
        const vary = response.headers.get("vary");
        if (vary !== "*") {
          const varyHeaders = vary.trim().toLowerCase().split(/\s*,\s*/);
          for (const name of varyHeaders) {
            if (request.headers.has(name)) {
              metadata.reqHeaders[name] = request.headers.get(name);
            }
          }
        }
      }
      for (const name of KEEP_RESPONSE_HEADERS) {
        if (response.headers.has(name)) {
          metadata.resHeaders[name] = response.headers.get(name);
        }
      }
      for (const name of options.cacheAdditionalHeaders) {
        if (response.headers.has(name)) {
          metadata.resHeaders[name] = response.headers.get(name);
        }
      }
      return metadata;
    };
    var _request = /* @__PURE__ */ Symbol("request");
    var _response = /* @__PURE__ */ Symbol("response");
    var _policy = /* @__PURE__ */ Symbol("policy");
    var CacheEntry = class _CacheEntry {
      constructor({ entry, request, response, options }) {
        if (entry) {
          this.key = entry.key;
          this.entry = entry;
          this.entry.metadata.time = this.entry.metadata.time || this.entry.time;
        } else {
          this.key = cacheKey(request);
        }
        this.options = options;
        this[_request] = request;
        this[_response] = response;
        this[_policy] = null;
      }
      // returns a CacheEntry instance that satisfies the given request
      // or undefined if no existing entry satisfies
      static async find(request, options) {
        try {
          var matches2 = await cacache.index.compact(options.cachePath, cacheKey(request), (A, B) => {
            const entryA = new _CacheEntry({ entry: A, options });
            const entryB = new _CacheEntry({ entry: B, options });
            return entryA.policy.satisfies(entryB.request);
          }, {
            validateEntry: (entry) => {
              if (entry.metadata && entry.metadata.resHeaders && entry.metadata.resHeaders["content-encoding"] === null) {
                return false;
              }
              if (entry.integrity === null) {
                return !!(entry.metadata && entry.metadata.status);
              }
              return true;
            }
          });
        } catch (err) {
          return;
        }
        if (options.cache === "reload") {
          return;
        }
        let match;
        for (const entry of matches2) {
          const _entry = new _CacheEntry({
            entry,
            options
          });
          if (_entry.policy.satisfies(request)) {
            match = _entry;
            break;
          }
        }
        return match;
      }
      // if the user made a PUT/POST/PATCH then we invalidate our
      // cache for the same url by deleting the index entirely
      static async invalidate(request, options) {
        const key = cacheKey(request);
        try {
          await cacache.rm.entry(options.cachePath, key, { removeFully: true });
        } catch (err) {
        }
      }
      get request() {
        if (!this[_request]) {
          this[_request] = new Request(this.entry.metadata.url, {
            method: "GET",
            headers: this.entry.metadata.reqHeaders,
            ...this.entry.metadata.options
          });
        }
        return this[_request];
      }
      get response() {
        if (!this[_response]) {
          this[_response] = new Response(null, {
            url: this.entry.metadata.url,
            counter: this.options.counter,
            status: this.entry.metadata.status || 200,
            headers: {
              ...this.entry.metadata.resHeaders,
              "content-length": this.entry.size
            }
          });
        }
        return this[_response];
      }
      get policy() {
        if (!this[_policy]) {
          this[_policy] = new CachePolicy({
            entry: this.entry,
            request: this.request,
            response: this.response,
            options: this.options
          });
        }
        return this[_policy];
      }
      // wraps the response in a pipeline that stores the data
      // in the cache while the user consumes it
      async store(status) {
        if (this.request.method !== "GET" || ![200, 301, 308].includes(this.response.status) || !this.policy.storable()) {
          this.response.headers.set("x-local-cache-status", "skip");
          return this.response;
        }
        const size = this.response.headers.get("content-length");
        const cacheOpts = {
          algorithms: this.options.algorithms,
          metadata: getMetadata(this.request, this.response, this.options),
          size,
          integrity: this.options.integrity,
          integrityEmitter: this.response.body.hasIntegrityEmitter && this.response.body
        };
        let body = null;
        if (this.response.status === 200) {
          let cacheWriteResolve, cacheWriteReject;
          const cacheWritePromise = new Promise((resolve3, reject3) => {
            cacheWriteResolve = resolve3;
            cacheWriteReject = reject3;
          }).catch((err) => {
            body.emit("error", err);
          });
          body = new CachingMinipassPipeline({ events: ["integrity", "size"] }, new MinipassFlush({
            flush() {
              return cacheWritePromise;
            }
          }));
          body.hasIntegrityEmitter = true;
          const onResume = () => {
            const tee = new Minipass();
            const cacheStream = cacache.put.stream(this.options.cachePath, this.key, cacheOpts);
            cacheStream.on("integrity", (i2) => body.emit("integrity", i2));
            cacheStream.on("size", (s) => body.emit("size", s));
            tee.pipe(cacheStream);
            cacheStream.promise().then(cacheWriteResolve, cacheWriteReject);
            body.unshift(tee);
            body.unshift(this.response.body);
          };
          body.once("resume", onResume);
          body.once("end", () => body.removeListener("resume", onResume));
        } else {
          await cacache.index.insert(this.options.cachePath, this.key, null, cacheOpts);
        }
        this.response.headers.set("x-local-cache", encodeURIComponent(this.options.cachePath));
        this.response.headers.set("x-local-cache-key", encodeURIComponent(this.key));
        this.response.headers.set("x-local-cache-mode", "stream");
        this.response.headers.set("x-local-cache-status", status);
        this.response.headers.set("x-local-cache-time", (/* @__PURE__ */ new Date()).toISOString());
        const newResponse = new Response(body, {
          url: this.response.url,
          status: this.response.status,
          headers: this.response.headers,
          counter: this.options.counter
        });
        return newResponse;
      }
      // use the cached data to create a response and return it
      async respond(method, options, status) {
        let response;
        if (method === "HEAD" || [301, 308].includes(this.response.status)) {
          response = this.response;
        } else {
          const body = new Minipass();
          const headers = { ...this.policy.responseHeaders() };
          const onResume = () => {
            const cacheStream = cacache.get.stream.byDigest(
              this.options.cachePath,
              this.entry.integrity,
              { memoize: this.options.memoize }
            );
            cacheStream.on("error", async (err) => {
              cacheStream.pause();
              if (err.code === "EINTEGRITY") {
                await cacache.rm.content(
                  this.options.cachePath,
                  this.entry.integrity,
                  { memoize: this.options.memoize }
                );
              }
              if (err.code === "ENOENT" || err.code === "EINTEGRITY") {
                await _CacheEntry.invalidate(this.request, this.options);
              }
              body.emit("error", err);
              cacheStream.resume();
            });
            body.emit("integrity", this.entry.integrity);
            body.emit("size", Number(headers["content-length"]));
            cacheStream.pipe(body);
          };
          body.once("resume", onResume);
          body.once("end", () => body.removeListener("resume", onResume));
          response = new Response(body, {
            url: this.entry.metadata.url,
            counter: options.counter,
            status: 200,
            headers
          });
        }
        response.headers.set("x-local-cache", encodeURIComponent(this.options.cachePath));
        response.headers.set("x-local-cache-hash", encodeURIComponent(this.entry.integrity));
        response.headers.set("x-local-cache-key", encodeURIComponent(this.key));
        response.headers.set("x-local-cache-mode", "stream");
        response.headers.set("x-local-cache-status", status);
        response.headers.set("x-local-cache-time", new Date(this.entry.metadata.time).toUTCString());
        return response;
      }
      // use the provided request along with this cache entry to
      // revalidate the stored response. returns a response, either
      // from the cache or from the update
      async revalidate(request, options) {
        const revalidateRequest = new Request(request, {
          headers: this.policy.revalidationHeaders(request)
        });
        try {
          var response = await remote(revalidateRequest, {
            ...options,
            headers: void 0
          });
        } catch (err) {
          if (!this.policy.mustRevalidate) {
            return this.respond(request.method, options, "stale");
          }
          throw err;
        }
        if (this.policy.revalidated(revalidateRequest, response)) {
          const metadata = getMetadata(request, response, options);
          for (const name of KEEP_RESPONSE_HEADERS) {
            if (!hasOwnProperty2(metadata.resHeaders, name) && hasOwnProperty2(this.entry.metadata.resHeaders, name)) {
              metadata.resHeaders[name] = this.entry.metadata.resHeaders[name];
            }
          }
          for (const name of options.cacheAdditionalHeaders) {
            const inMeta = hasOwnProperty2(metadata.resHeaders, name);
            const inEntry = hasOwnProperty2(this.entry.metadata.resHeaders, name);
            const inPolicy = hasOwnProperty2(this.policy.response.headers, name);
            if (!inMeta && inEntry) {
              metadata.resHeaders[name] = this.entry.metadata.resHeaders[name];
            }
            if (!inPolicy && inMeta) {
              this.policy.response.headers[name] = metadata.resHeaders[name];
            }
          }
          try {
            await cacache.index.insert(options.cachePath, this.key, this.entry.integrity, {
              size: this.entry.size,
              metadata
            });
          } catch (err) {
          }
          return this.respond(request.method, options, "revalidated");
        }
        const newEntry = new _CacheEntry({
          request,
          response,
          options
        });
        return newEntry.store("updated");
      }
    };
    module2.exports = CacheEntry;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/make-fetch-happen/15.0.5/5d3859dab383e894b9567bea0629a8d1ce0ad8967e3143179728bd1c76154729/node_modules/make-fetch-happen/lib/cache/index.js
var require_cache4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/make-fetch-happen/15.0.5/5d3859dab383e894b9567bea0629a8d1ce0ad8967e3143179728bd1c76154729/node_modules/make-fetch-happen/lib/cache/index.js"(exports2, module2) {
    var { NotCachedError } = require_errors8();
    var CacheEntry = require_entry4();
    var remote = require_remote();
    var cacheFetch = async (request, options) => {
      const entry = await CacheEntry.find(request, options);
      if (!entry) {
        if (options.cache === "only-if-cached") {
          throw new NotCachedError(request.url);
        }
        const response = await remote(request, options);
        const newEntry = new CacheEntry({ request, response, options });
        return newEntry.store("miss");
      }
      if (options.cache === "no-cache") {
        return entry.revalidate(request, options);
      }
      const _needsRevalidation = entry.policy.needsRevalidation(request);
      if (options.cache === "force-cache" || options.cache === "only-if-cached" || !_needsRevalidation) {
        return entry.respond(request.method, options, _needsRevalidation ? "stale" : "hit");
      }
      return entry.revalidate(request, options);
    };
    cacheFetch.invalidate = async (request, options) => {
      if (!options.cachePath) {
        return;
      }
      return CacheEntry.invalidate(request, options);
    };
    module2.exports = cacheFetch;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/make-fetch-happen/15.0.5/5d3859dab383e894b9567bea0629a8d1ce0ad8967e3143179728bd1c76154729/node_modules/make-fetch-happen/lib/fetch.js
var require_fetch2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/make-fetch-happen/15.0.5/5d3859dab383e894b9567bea0629a8d1ce0ad8967e3143179728bd1c76154729/node_modules/make-fetch-happen/lib/fetch.js"(exports2, module2) {
    "use strict";
    var { FetchError: FetchError2, Request, isRedirect: isRedirect2 } = require_lib29();
    var url7 = __require("url");
    var CachePolicy = require_policy();
    var cache = require_cache4();
    var remote = require_remote();
    var canFollowRedirect = (request, response, options) => {
      if (!isRedirect2(response.status)) {
        return false;
      }
      if (options.redirect === "manual") {
        return false;
      }
      if (options.redirect === "error") {
        throw new FetchError2(
          `redirect mode is set to error: ${request.url}`,
          "no-redirect",
          { code: "ENOREDIRECT" }
        );
      }
      if (!response.headers.has("location")) {
        throw new FetchError2(
          `redirect location header missing for: ${request.url}`,
          "no-location",
          { code: "EINVALIDREDIRECT" }
        );
      }
      if (request.counter >= request.follow) {
        throw new FetchError2(
          `maximum redirect reached at: ${request.url}`,
          "max-redirect",
          { code: "EMAXREDIRECT" }
        );
      }
      return true;
    };
    var getRedirect = (request, response, options) => {
      const _opts = { ...options };
      const location = response.headers.get("location");
      const redirectUrl = new url7.URL(location, /^https?:/.test(location) ? void 0 : request.url);
      if (new url7.URL(request.url).hostname !== redirectUrl.hostname) {
        request.headers.delete("authorization");
        request.headers.delete("cookie");
      }
      if (response.status === 303 || request.method === "POST" && [301, 302].includes(response.status)) {
        _opts.method = "GET";
        _opts.body = null;
        request.headers.delete("content-length");
      }
      _opts.headers = {};
      request.headers.forEach((value, key) => {
        _opts.headers[key] = value;
      });
      _opts.counter = ++request.counter;
      const redirectReq = new Request(url7.format(redirectUrl), _opts);
      return {
        request: redirectReq,
        options: _opts
      };
    };
    var fetch2 = async (request, options) => {
      const response = CachePolicy.storable(request, options) ? await cache(request, options) : await remote(request, options);
      if (!["GET", "HEAD"].includes(request.method) && response.status >= 200 && response.status <= 399) {
        await cache.invalidate(request, options);
      }
      if (!canFollowRedirect(request, response, options)) {
        return response;
      }
      const redirect = getRedirect(request, response, options);
      return fetch2(redirect.request, redirect.options);
    };
    module2.exports = fetch2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/make-fetch-happen/15.0.5/5d3859dab383e894b9567bea0629a8d1ce0ad8967e3143179728bd1c76154729/node_modules/make-fetch-happen/lib/index.js
var require_lib36 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/make-fetch-happen/15.0.5/5d3859dab383e894b9567bea0629a8d1ce0ad8967e3143179728bd1c76154729/node_modules/make-fetch-happen/lib/index.js"(exports2, module2) {
    var { FetchError: FetchError2, Headers: Headers2, Request, Response } = require_lib29();
    var configureOptions = require_options2();
    var fetch2 = require_fetch2();
    var makeFetchHappen = (url7, opts2) => {
      const options = configureOptions(opts2);
      const request = new Request(url7, options);
      return fetch2(request, options);
    };
    makeFetchHappen.defaults = (defaultUrl, defaultOptions4 = {}, wrappedFetch = makeFetchHappen) => {
      if (typeof defaultUrl === "object") {
        defaultOptions4 = defaultUrl;
        defaultUrl = null;
      }
      const defaultedFetch = (url7, options = {}) => {
        const finalUrl = url7 || defaultUrl;
        const finalOptions = {
          ...defaultOptions4,
          ...options,
          headers: {
            ...defaultOptions4.headers,
            ...options.headers
          }
        };
        return wrappedFetch(finalUrl, finalOptions);
      };
      defaultedFetch.defaults = (defaultUrl1, defaultOptions1 = {}) => makeFetchHappen.defaults(defaultUrl1, defaultOptions1, defaultedFetch);
      return defaultedFetch;
    };
    module2.exports = makeFetchHappen;
    module2.exports.FetchError = FetchError2;
    module2.exports.Headers = Headers2;
    module2.exports.Request = Request;
    module2.exports.Response = Response;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/jsonparse/1.3.1/df432f544a2f8ee870ba90867adf4b33ce84275944f6aebe11410c474e882c86/node_modules/jsonparse/jsonparse.js
var require_jsonparse = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/jsonparse/1.3.1/df432f544a2f8ee870ba90867adf4b33ce84275944f6aebe11410c474e882c86/node_modules/jsonparse/jsonparse.js"(exports2, module2) {
    var C = {};
    var LEFT_BRACE = C.LEFT_BRACE = 1;
    var RIGHT_BRACE = C.RIGHT_BRACE = 2;
    var LEFT_BRACKET = C.LEFT_BRACKET = 3;
    var RIGHT_BRACKET = C.RIGHT_BRACKET = 4;
    var COLON = C.COLON = 5;
    var COMMA = C.COMMA = 6;
    var TRUE = C.TRUE = 7;
    var FALSE = C.FALSE = 8;
    var NULL = C.NULL = 9;
    var STRING = C.STRING = 10;
    var NUMBER2 = C.NUMBER = 11;
    var START = C.START = 17;
    var STOP = C.STOP = 18;
    var TRUE1 = C.TRUE1 = 33;
    var TRUE2 = C.TRUE2 = 34;
    var TRUE3 = C.TRUE3 = 35;
    var FALSE1 = C.FALSE1 = 49;
    var FALSE2 = C.FALSE2 = 50;
    var FALSE3 = C.FALSE3 = 51;
    var FALSE4 = C.FALSE4 = 52;
    var NULL1 = C.NULL1 = 65;
    var NULL2 = C.NULL2 = 66;
    var NULL3 = C.NULL3 = 67;
    var NUMBER1 = C.NUMBER1 = 81;
    var NUMBER3 = C.NUMBER3 = 83;
    var STRING1 = C.STRING1 = 97;
    var STRING2 = C.STRING2 = 98;
    var STRING3 = C.STRING3 = 99;
    var STRING4 = C.STRING4 = 100;
    var STRING5 = C.STRING5 = 101;
    var STRING6 = C.STRING6 = 102;
    var VALUE = C.VALUE = 113;
    var KEY = C.KEY = 114;
    var OBJECT = C.OBJECT = 129;
    var ARRAY = C.ARRAY = 130;
    var BACK_SLASH = "\\".charCodeAt(0);
    var FORWARD_SLASH = "/".charCodeAt(0);
    var BACKSPACE = "\b".charCodeAt(0);
    var FORM_FEED = "\f".charCodeAt(0);
    var NEWLINE = "\n".charCodeAt(0);
    var CARRIAGE_RETURN = "\r".charCodeAt(0);
    var TAB = "	".charCodeAt(0);
    var STRING_BUFFER_SIZE = 64 * 1024;
    function Parser() {
      this.tState = START;
      this.value = void 0;
      this.string = void 0;
      this.stringBuffer = Buffer.alloc ? Buffer.alloc(STRING_BUFFER_SIZE) : new Buffer(STRING_BUFFER_SIZE);
      this.stringBufferOffset = 0;
      this.unicode = void 0;
      this.highSurrogate = void 0;
      this.key = void 0;
      this.mode = void 0;
      this.stack = [];
      this.state = VALUE;
      this.bytes_remaining = 0;
      this.bytes_in_sequence = 0;
      this.temp_buffs = { "2": new Buffer(2), "3": new Buffer(3), "4": new Buffer(4) };
      this.offset = -1;
    }
    Parser.toknam = function(code) {
      var keys4 = Object.keys(C);
      for (var i2 = 0, l = keys4.length; i2 < l; i2++) {
        var key = keys4[i2];
        if (C[key] === code) {
          return key;
        }
      }
      return code && "0x" + code.toString(16);
    };
    var proto2 = Parser.prototype;
    proto2.onError = function(err) {
      throw err;
    };
    proto2.charError = function(buffer3, i2) {
      this.tState = STOP;
      this.onError(new Error("Unexpected " + JSON.stringify(String.fromCharCode(buffer3[i2])) + " at position " + i2 + " in state " + Parser.toknam(this.tState)));
    };
    proto2.appendStringChar = function(char) {
      if (this.stringBufferOffset >= STRING_BUFFER_SIZE) {
        this.string += this.stringBuffer.toString("utf8");
        this.stringBufferOffset = 0;
      }
      this.stringBuffer[this.stringBufferOffset++] = char;
    };
    proto2.appendStringBuf = function(buf, start, end) {
      var size = buf.length;
      if (typeof start === "number") {
        if (typeof end === "number") {
          if (end < 0) {
            size = buf.length - start + end;
          } else {
            size = end - start;
          }
        } else {
          size = buf.length - start;
        }
      }
      if (size < 0) {
        size = 0;
      }
      if (this.stringBufferOffset + size > STRING_BUFFER_SIZE) {
        this.string += this.stringBuffer.toString("utf8", 0, this.stringBufferOffset);
        this.stringBufferOffset = 0;
      }
      buf.copy(this.stringBuffer, this.stringBufferOffset, start, end);
      this.stringBufferOffset += size;
    };
    proto2.write = function(buffer3) {
      if (typeof buffer3 === "string") buffer3 = new Buffer(buffer3);
      var n2;
      for (var i2 = 0, l = buffer3.length; i2 < l; i2++) {
        if (this.tState === START) {
          n2 = buffer3[i2];
          this.offset++;
          if (n2 === 123) {
            this.onToken(LEFT_BRACE, "{");
          } else if (n2 === 125) {
            this.onToken(RIGHT_BRACE, "}");
          } else if (n2 === 91) {
            this.onToken(LEFT_BRACKET, "[");
          } else if (n2 === 93) {
            this.onToken(RIGHT_BRACKET, "]");
          } else if (n2 === 58) {
            this.onToken(COLON, ":");
          } else if (n2 === 44) {
            this.onToken(COMMA, ",");
          } else if (n2 === 116) {
            this.tState = TRUE1;
          } else if (n2 === 102) {
            this.tState = FALSE1;
          } else if (n2 === 110) {
            this.tState = NULL1;
          } else if (n2 === 34) {
            this.string = "";
            this.stringBufferOffset = 0;
            this.tState = STRING1;
          } else if (n2 === 45) {
            this.string = "-";
            this.tState = NUMBER1;
          } else {
            if (n2 >= 48 && n2 < 64) {
              this.string = String.fromCharCode(n2);
              this.tState = NUMBER3;
            } else if (n2 === 32 || n2 === 9 || n2 === 10 || n2 === 13) {
            } else {
              return this.charError(buffer3, i2);
            }
          }
        } else if (this.tState === STRING1) {
          n2 = buffer3[i2];
          if (this.bytes_remaining > 0) {
            for (var j2 = 0; j2 < this.bytes_remaining; j2++) {
              this.temp_buffs[this.bytes_in_sequence][this.bytes_in_sequence - this.bytes_remaining + j2] = buffer3[j2];
            }
            this.appendStringBuf(this.temp_buffs[this.bytes_in_sequence]);
            this.bytes_in_sequence = this.bytes_remaining = 0;
            i2 = i2 + j2 - 1;
          } else if (this.bytes_remaining === 0 && n2 >= 128) {
            if (n2 <= 193 || n2 > 244) {
              return this.onError(new Error("Invalid UTF-8 character at position " + i2 + " in state " + Parser.toknam(this.tState)));
            }
            if (n2 >= 194 && n2 <= 223) this.bytes_in_sequence = 2;
            if (n2 >= 224 && n2 <= 239) this.bytes_in_sequence = 3;
            if (n2 >= 240 && n2 <= 244) this.bytes_in_sequence = 4;
            if (this.bytes_in_sequence + i2 > buffer3.length) {
              for (var k2 = 0; k2 <= buffer3.length - 1 - i2; k2++) {
                this.temp_buffs[this.bytes_in_sequence][k2] = buffer3[i2 + k2];
              }
              this.bytes_remaining = i2 + this.bytes_in_sequence - buffer3.length;
              i2 = buffer3.length - 1;
            } else {
              this.appendStringBuf(buffer3, i2, i2 + this.bytes_in_sequence);
              i2 = i2 + this.bytes_in_sequence - 1;
            }
          } else if (n2 === 34) {
            this.tState = START;
            this.string += this.stringBuffer.toString("utf8", 0, this.stringBufferOffset);
            this.stringBufferOffset = 0;
            this.onToken(STRING, this.string);
            this.offset += Buffer.byteLength(this.string, "utf8") + 1;
            this.string = void 0;
          } else if (n2 === 92) {
            this.tState = STRING2;
          } else if (n2 >= 32) {
            this.appendStringChar(n2);
          } else {
            return this.charError(buffer3, i2);
          }
        } else if (this.tState === STRING2) {
          n2 = buffer3[i2];
          if (n2 === 34) {
            this.appendStringChar(n2);
            this.tState = STRING1;
          } else if (n2 === 92) {
            this.appendStringChar(BACK_SLASH);
            this.tState = STRING1;
          } else if (n2 === 47) {
            this.appendStringChar(FORWARD_SLASH);
            this.tState = STRING1;
          } else if (n2 === 98) {
            this.appendStringChar(BACKSPACE);
            this.tState = STRING1;
          } else if (n2 === 102) {
            this.appendStringChar(FORM_FEED);
            this.tState = STRING1;
          } else if (n2 === 110) {
            this.appendStringChar(NEWLINE);
            this.tState = STRING1;
          } else if (n2 === 114) {
            this.appendStringChar(CARRIAGE_RETURN);
            this.tState = STRING1;
          } else if (n2 === 116) {
            this.appendStringChar(TAB);
            this.tState = STRING1;
          } else if (n2 === 117) {
            this.unicode = "";
            this.tState = STRING3;
          } else {
            return this.charError(buffer3, i2);
          }
        } else if (this.tState === STRING3 || this.tState === STRING4 || this.tState === STRING5 || this.tState === STRING6) {
          n2 = buffer3[i2];
          if (n2 >= 48 && n2 < 64 || n2 > 64 && n2 <= 70 || n2 > 96 && n2 <= 102) {
            this.unicode += String.fromCharCode(n2);
            if (this.tState++ === STRING6) {
              var intVal = parseInt(this.unicode, 16);
              this.unicode = void 0;
              if (this.highSurrogate !== void 0 && intVal >= 56320 && intVal < 57343 + 1) {
                this.appendStringBuf(new Buffer(String.fromCharCode(this.highSurrogate, intVal)));
                this.highSurrogate = void 0;
              } else if (this.highSurrogate === void 0 && intVal >= 55296 && intVal < 56319 + 1) {
                this.highSurrogate = intVal;
              } else {
                if (this.highSurrogate !== void 0) {
                  this.appendStringBuf(new Buffer(String.fromCharCode(this.highSurrogate)));
                  this.highSurrogate = void 0;
                }
                this.appendStringBuf(new Buffer(String.fromCharCode(intVal)));
              }
              this.tState = STRING1;
            }
          } else {
            return this.charError(buffer3, i2);
          }
        } else if (this.tState === NUMBER1 || this.tState === NUMBER3) {
          n2 = buffer3[i2];
          switch (n2) {
            case 48:
            // 0
            case 49:
            // 1
            case 50:
            // 2
            case 51:
            // 3
            case 52:
            // 4
            case 53:
            // 5
            case 54:
            // 6
            case 55:
            // 7
            case 56:
            // 8
            case 57:
            // 9
            case 46:
            // .
            case 101:
            // e
            case 69:
            // E
            case 43:
            // +
            case 45:
              this.string += String.fromCharCode(n2);
              this.tState = NUMBER3;
              break;
            default:
              this.tState = START;
              var result2 = Number(this.string);
              if (isNaN(result2)) {
                return this.charError(buffer3, i2);
              }
              if (this.string.match(/[0-9]+/) == this.string && result2.toString() != this.string) {
                this.onToken(STRING, this.string);
              } else {
                this.onToken(NUMBER2, result2);
              }
              this.offset += this.string.length - 1;
              this.string = void 0;
              i2--;
              break;
          }
        } else if (this.tState === TRUE1) {
          if (buffer3[i2] === 114) {
            this.tState = TRUE2;
          } else {
            return this.charError(buffer3, i2);
          }
        } else if (this.tState === TRUE2) {
          if (buffer3[i2] === 117) {
            this.tState = TRUE3;
          } else {
            return this.charError(buffer3, i2);
          }
        } else if (this.tState === TRUE3) {
          if (buffer3[i2] === 101) {
            this.tState = START;
            this.onToken(TRUE, true);
            this.offset += 3;
          } else {
            return this.charError(buffer3, i2);
          }
        } else if (this.tState === FALSE1) {
          if (buffer3[i2] === 97) {
            this.tState = FALSE2;
          } else {
            return this.charError(buffer3, i2);
          }
        } else if (this.tState === FALSE2) {
          if (buffer3[i2] === 108) {
            this.tState = FALSE3;
          } else {
            return this.charError(buffer3, i2);
          }
        } else if (this.tState === FALSE3) {
          if (buffer3[i2] === 115) {
            this.tState = FALSE4;
          } else {
            return this.charError(buffer3, i2);
          }
        } else if (this.tState === FALSE4) {
          if (buffer3[i2] === 101) {
            this.tState = START;
            this.onToken(FALSE, false);
            this.offset += 4;
          } else {
            return this.charError(buffer3, i2);
          }
        } else if (this.tState === NULL1) {
          if (buffer3[i2] === 117) {
            this.tState = NULL2;
          } else {
            return this.charError(buffer3, i2);
          }
        } else if (this.tState === NULL2) {
          if (buffer3[i2] === 108) {
            this.tState = NULL3;
          } else {
            return this.charError(buffer3, i2);
          }
        } else if (this.tState === NULL3) {
          if (buffer3[i2] === 108) {
            this.tState = START;
            this.onToken(NULL, null);
            this.offset += 3;
          } else {
            return this.charError(buffer3, i2);
          }
        }
      }
    };
    proto2.onToken = function(token, value) {
    };
    proto2.parseError = function(token, value) {
      this.tState = STOP;
      this.onError(new Error("Unexpected " + Parser.toknam(token) + (value ? "(" + JSON.stringify(value) + ")" : "") + " in state " + Parser.toknam(this.state)));
    };
    proto2.push = function() {
      this.stack.push({ value: this.value, key: this.key, mode: this.mode });
    };
    proto2.pop = function() {
      var value = this.value;
      var parent = this.stack.pop();
      this.value = parent.value;
      this.key = parent.key;
      this.mode = parent.mode;
      this.emit(value);
      if (!this.mode) {
        this.state = VALUE;
      }
    };
    proto2.emit = function(value) {
      if (this.mode) {
        this.state = COMMA;
      }
      this.onValue(value);
    };
    proto2.onValue = function(value) {
    };
    proto2.onToken = function(token, value) {
      if (this.state === VALUE) {
        if (token === STRING || token === NUMBER2 || token === TRUE || token === FALSE || token === NULL) {
          if (this.value) {
            this.value[this.key] = value;
          }
          this.emit(value);
        } else if (token === LEFT_BRACE) {
          this.push();
          if (this.value) {
            this.value = this.value[this.key] = {};
          } else {
            this.value = {};
          }
          this.key = void 0;
          this.state = KEY;
          this.mode = OBJECT;
        } else if (token === LEFT_BRACKET) {
          this.push();
          if (this.value) {
            this.value = this.value[this.key] = [];
          } else {
            this.value = [];
          }
          this.key = 0;
          this.mode = ARRAY;
          this.state = VALUE;
        } else if (token === RIGHT_BRACE) {
          if (this.mode === OBJECT) {
            this.pop();
          } else {
            return this.parseError(token, value);
          }
        } else if (token === RIGHT_BRACKET) {
          if (this.mode === ARRAY) {
            this.pop();
          } else {
            return this.parseError(token, value);
          }
        } else {
          return this.parseError(token, value);
        }
      } else if (this.state === KEY) {
        if (token === STRING) {
          this.key = value;
          this.state = COLON;
        } else if (token === RIGHT_BRACE) {
          this.pop();
        } else {
          return this.parseError(token, value);
        }
      } else if (this.state === COLON) {
        if (token === COLON) {
          this.state = VALUE;
        } else {
          return this.parseError(token, value);
        }
      } else if (this.state === COMMA) {
        if (token === COMMA) {
          if (this.mode === ARRAY) {
            this.key++;
            this.state = VALUE;
          } else if (this.mode === OBJECT) {
            this.state = KEY;
          }
        } else if (token === RIGHT_BRACKET && this.mode === ARRAY || token === RIGHT_BRACE && this.mode === OBJECT) {
          this.pop();
        } else {
          return this.parseError(token, value);
        }
      } else {
        return this.parseError(token, value);
      }
    };
    Parser.C = C;
    module2.exports = Parser;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/npm-registry-fetch/19.1.1/79a25a680f68d9ed82ba96692e4648cccb7968b0efd1562d4faa92a3ec85fc7d/node_modules/npm-registry-fetch/lib/json-stream.js
var require_json_stream = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/npm-registry-fetch/19.1.1/79a25a680f68d9ed82ba96692e4648cccb7968b0efd1562d4faa92a3ec85fc7d/node_modules/npm-registry-fetch/lib/json-stream.js"(exports2, module2) {
    var Parser = require_jsonparse();
    var { Minipass } = require_commonjs();
    var JSONStreamError = class extends Error {
      constructor(err, caller) {
        super(err.message);
        Error.captureStackTrace(this, caller || this.constructor);
      }
      get name() {
        return "JSONStreamError";
      }
    };
    var check = (x, y) => typeof x === "string" ? String(y) === x : x && typeof x.test === "function" ? x.test(y) : typeof x === "boolean" || typeof x === "object" ? x : typeof x === "function" ? x(y) : false;
    var JSONStream = class _JSONStream extends Minipass {
      #count = 0;
      #ending = false;
      #footer = null;
      #header = null;
      #map = null;
      #onTokenOriginal;
      #parser;
      #path = null;
      #root = null;
      constructor(opts2) {
        super({
          ...opts2,
          objectMode: true
        });
        const parser = this.#parser = new Parser();
        parser.onValue = (value) => this.#onValue(value);
        this.#onTokenOriginal = parser.onToken;
        parser.onToken = (token, value) => this.#onToken(token, value);
        parser.onError = (er) => this.#onError(er);
        this.#path = typeof opts2.path === "string" ? opts2.path.split(".").map((e) => e === "$*" ? { emitKey: true } : e === "*" ? true : e === "" ? { recurse: true } : e) : Array.isArray(opts2.path) && opts2.path.length ? opts2.path : null;
        if (typeof opts2.map === "function") {
          this.#map = opts2.map;
        }
      }
      #setHeaderFooter(key, value) {
        if (this.#header !== false) {
          this.#header = this.#header || {};
          this.#header[key] = value;
        }
        if (this.#footer !== false && this.#header === false) {
          this.#footer = this.#footer || {};
          this.#footer[key] = value;
        }
      }
      #onError(er) {
        const caller = this.#ending ? this.end : this.write;
        this.#ending = false;
        return this.emit("error", new JSONStreamError(er, caller));
      }
      #onToken(token, value) {
        const parser = this.#parser;
        this.#onTokenOriginal.call(this.#parser, token, value);
        if (parser.stack.length === 0) {
          if (this.#root) {
            const root = this.#root;
            if (!this.#path) {
              super.write(root);
            }
            this.#root = null;
            this.#count = 0;
          }
        }
      }
      #onValue(value) {
        const parser = this.#parser;
        this.#root = value;
        if (!this.#path) {
          return;
        }
        let i2 = 0;
        let j2 = 0;
        let emitKey = false;
        while (i2 < this.#path.length) {
          const key = this.#path[i2];
          j2++;
          if (key && !key.recurse) {
            const c3 = j2 === parser.stack.length ? parser : parser.stack[j2];
            if (!c3) {
              return;
            }
            if (!check(key, c3.key)) {
              this.#setHeaderFooter(c3.key, value);
              return;
            }
            emitKey = !!key.emitKey;
            i2++;
          } else {
            i2++;
            if (i2 >= this.#path.length) {
              return;
            }
            const nextKey = this.#path[i2];
            if (!nextKey) {
              return;
            }
            while (true) {
              const c3 = j2 === parser.stack.length ? parser : parser.stack[j2];
              if (!c3) {
                return;
              }
              if (check(nextKey, c3.key)) {
                i2++;
                if (!Object.isFrozen(parser.stack[j2])) {
                  parser.stack[j2].value = null;
                }
                break;
              } else {
                this.#setHeaderFooter(c3.key, value);
              }
              j2++;
            }
          }
        }
        if (this.#header) {
          const header = this.#header;
          this.#header = false;
          this.emit("header", header);
        }
        if (j2 !== parser.stack.length) {
          return;
        }
        this.#count++;
        const actualPath = parser.stack.slice(1).map((e) => e.key).concat([parser.key]);
        if (value !== null && value !== void 0) {
          const data = this.#map ? this.#map(value, actualPath) : value;
          if (data !== null && data !== void 0) {
            const emit = emitKey ? { value: data } : data;
            if (emitKey) {
              emit.key = parser.key;
            }
            super.write(emit);
          }
        }
        if (parser.value) {
          delete parser.value[parser.key];
        }
        for (const k2 of parser.stack) {
          k2.value = null;
        }
      }
      write(chunk, encoding) {
        if (typeof chunk === "string") {
          chunk = Buffer.from(chunk, encoding);
        } else if (!Buffer.isBuffer(chunk)) {
          return this.emit("error", new TypeError(
            "Can only parse JSON from string or buffer input"
          ));
        }
        this.#parser.write(chunk);
        return this.flowing;
      }
      end(chunk, encoding) {
        this.#ending = true;
        if (chunk) {
          this.write(chunk, encoding);
        }
        const h2 = this.#header;
        this.#header = null;
        const f = this.#footer;
        this.#footer = null;
        if (h2) {
          this.emit("header", h2);
        }
        if (f) {
          this.emit("footer", f);
        }
        return super.end();
      }
      static get JSONStreamError() {
        return JSONStreamError;
      }
      static parse(path218, map26) {
        return new _JSONStream({ path: path218, map: map26 });
      }
    };
    module2.exports = JSONStream;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/npm-registry-fetch/19.1.1/79a25a680f68d9ed82ba96692e4648cccb7968b0efd1562d4faa92a3ec85fc7d/node_modules/npm-registry-fetch/lib/index.js
var require_lib37 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/npm-registry-fetch/19.1.1/79a25a680f68d9ed82ba96692e4648cccb7968b0efd1562d4faa92a3ec85fc7d/node_modules/npm-registry-fetch/lib/index.js"(exports2, module2) {
    "use strict";
    var { HttpErrorAuthOTP } = require_errors7();
    var checkResponse = require_check_response();
    var getAuth = require_auth2();
    var fetch2 = require_lib36();
    var JSONStream = require_json_stream();
    var npa12 = require_npa2();
    var qs = __require("querystring");
    var url7 = __require("url");
    var zlib = require_commonjs5();
    var { Minipass } = require_commonjs();
    var defaultOpts = require_default_opts();
    var urlIsValid = (u4) => {
      try {
        return !!new url7.URL(u4);
      } catch (_) {
        return false;
      }
    };
    module2.exports = regFetch;
    function regFetch(uri, opts_ = {}) {
      const opts2 = {
        ...defaultOpts,
        ...opts_
      };
      const uriValid = urlIsValid(uri);
      let registry = opts2.registry || defaultOpts.registry;
      if (!uriValid) {
        registry = opts2.registry = opts2.spec && pickRegistry(opts2.spec, opts2) || opts2.registry || registry;
        uri = `${registry.trim().replace(/\/?$/g, "")}/${uri.trim().replace(/^\//, "")}`;
        new url7.URL(uri);
      }
      const method = opts2.method || "GET";
      const startTime = Date.now();
      const auth = getAuth(uri, opts2);
      const headers = getHeaders2(uri, auth, opts2);
      let body = opts2.body;
      const bodyIsStream = Minipass.isStream(body);
      const bodyIsPromise = body && typeof body === "object" && typeof body.then === "function";
      if (body && !bodyIsStream && !bodyIsPromise && typeof body !== "string" && !Buffer.isBuffer(body)) {
        headers["content-type"] = headers["content-type"] || "application/json";
        body = JSON.stringify(body);
      } else if (body && !headers["content-type"]) {
        headers["content-type"] = "application/octet-stream";
      }
      if (opts2.gzip) {
        headers["content-encoding"] = "gzip";
        if (bodyIsStream) {
          const gz = new zlib.Gzip();
          body.on(
            "error",
            /* istanbul ignore next: unlikely and hard to test */
            (err) => gz.emit("error", err)
          );
          body = body.pipe(gz);
        } else if (!bodyIsPromise) {
          body = new zlib.Gzip().end(body).concat();
        }
      }
      const parsed = new url7.URL(uri);
      if (opts2.query) {
        const q = typeof opts2.query === "string" ? qs.parse(opts2.query) : opts2.query;
        Object.keys(q).forEach((key) => {
          if (q[key] !== void 0) {
            parsed.searchParams.set(key, q[key]);
          }
        });
        uri = url7.format(parsed);
      }
      if (parsed.searchParams.get("write") === "true" && method === "GET") {
        opts2.offline = false;
        opts2.preferOffline = false;
        opts2.preferOnline = true;
      }
      const doFetch = async (fetchBody) => {
        const p = fetch2(uri, {
          agent: opts2.agent,
          algorithms: opts2.algorithms,
          body: fetchBody,
          cache: getCacheMode(opts2),
          cachePath: opts2.cache,
          ca: opts2.ca,
          cert: auth.cert || opts2.cert,
          headers,
          integrity: opts2.integrity,
          key: auth.key || opts2.key,
          localAddress: opts2.localAddress,
          maxSockets: opts2.maxSockets,
          memoize: opts2.memoize,
          method,
          noProxy: opts2.noProxy,
          proxy: opts2.httpsProxy || opts2.proxy,
          retry: opts2.retry ? opts2.retry : {
            retries: opts2.fetchRetries,
            factor: opts2.fetchRetryFactor,
            minTimeout: opts2.fetchRetryMintimeout,
            maxTimeout: opts2.fetchRetryMaxtimeout
          },
          strictSSL: opts2.strictSSL,
          timeout: opts2.timeout || 30 * 1e3,
          signal: opts2.signal
        }).then((res) => checkResponse({
          method,
          uri,
          res,
          registry,
          startTime,
          auth,
          opts: opts2
        }));
        if (typeof opts2.otpPrompt === "function") {
          return p.catch(async (er) => {
            if (er instanceof HttpErrorAuthOTP) {
              let otp;
              try {
                otp = await opts2.otpPrompt();
              } catch (_) {
              }
              if (!otp) {
                throw er;
              }
              return regFetch(uri, { ...opts2, otp });
            }
            throw er;
          });
        } else {
          return p;
        }
      };
      return Promise.resolve(body).then(doFetch);
    }
    module2.exports.getAuth = getAuth;
    module2.exports.json = fetchJSON;
    function fetchJSON(uri, opts2) {
      return regFetch(uri, opts2).then((res) => res.json());
    }
    module2.exports.json.stream = fetchJSONStream;
    function fetchJSONStream(uri, jsonPath, opts_ = {}) {
      const opts2 = { ...defaultOpts, ...opts_ };
      const parser = JSONStream.parse(jsonPath, opts2.mapJSON);
      regFetch(uri, opts2).then(
        (res) => res.body.on(
          "error",
          /* istanbul ignore next: unlikely and difficult to test */
          (er) => parser.emit("error", er)
        ).pipe(parser)
      ).catch((er) => parser.emit("error", er));
      return parser;
    }
    module2.exports.pickRegistry = pickRegistry;
    function pickRegistry(spec, opts2 = {}) {
      spec = npa12(spec);
      let registry = spec.scope && opts2[spec.scope.replace(/^@?/, "@") + ":registry"];
      if (!registry && opts2.scope) {
        registry = opts2[opts2.scope.replace(/^@?/, "@") + ":registry"];
      }
      if (!registry) {
        registry = opts2.registry || defaultOpts.registry;
      }
      return registry;
    }
    function getCacheMode(opts2) {
      return opts2.offline ? "only-if-cached" : opts2.preferOffline ? "force-cache" : opts2.preferOnline ? "no-cache" : "default";
    }
    function getHeaders2(uri, auth, opts2) {
      const headers = Object.assign({
        "user-agent": opts2.userAgent
      }, opts2.headers || {});
      if (opts2.authType) {
        headers["npm-auth-type"] = opts2.authType;
      }
      if (opts2.scope) {
        headers["npm-scope"] = opts2.scope;
      }
      if (opts2.npmSession) {
        headers["npm-session"] = opts2.npmSession;
      }
      if (opts2.npmCommand) {
        headers["npm-command"] = opts2.npmCommand;
      }
      if (auth.token) {
        headers.authorization = `Bearer ${auth.token}`;
      } else if (auth.auth) {
        headers.authorization = `Basic ${auth.auth}`;
      }
      if (opts2.otp) {
        headers["npm-otp"] = opts2.otp;
      }
      return headers;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/json-parse-even-better-errors/5.0.0/c834ecca39545e56309f358e343e664a226fd9c3901ddb7fafad42e692b00099/node_modules/json-parse-even-better-errors/lib/index.js
var require_lib38 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/json-parse-even-better-errors/5.0.0/c834ecca39545e56309f358e343e664a226fd9c3901ddb7fafad42e692b00099/node_modules/json-parse-even-better-errors/lib/index.js"(exports2, module2) {
    "use strict";
    var INDENT = /* @__PURE__ */ Symbol.for("indent");
    var NEWLINE = /* @__PURE__ */ Symbol.for("newline");
    var DEFAULT_NEWLINE = "\n";
    var DEFAULT_INDENT = "  ";
    var BOM = /^\uFEFF/;
    var FORMAT = /^\s*[{[]((?:\r?\n)+)([\s\t]*)/;
    var EMPTY2 = /^(?:\{\}|\[\])((?:\r?\n)+)?$/;
    var UNEXPECTED_TOKEN = /^Unexpected token '?(.)'?(,)? /i;
    var hexify = (char) => {
      const h2 = char.charCodeAt(0).toString(16).toUpperCase();
      return `0x${h2.length % 2 ? "0" : ""}${h2}`;
    };
    var stripBOM = (txt) => String(txt).replace(BOM, "");
    var makeParsedError = (msg, parsing, position3 = 0) => ({
      message: `${msg} while parsing ${parsing}`,
      position: position3
    });
    var parseError = (e, txt, context = 20) => {
      let msg = e.message;
      if (!txt) {
        return makeParsedError(msg, "empty string");
      }
      const badTokenMatch = msg.match(UNEXPECTED_TOKEN);
      const badIndexMatch = msg.match(/ position\s+(\d+)/i);
      if (badTokenMatch) {
        msg = msg.replace(
          UNEXPECTED_TOKEN,
          `Unexpected token ${JSON.stringify(badTokenMatch[1])} (${hexify(badTokenMatch[1])})$2 `
        );
      }
      let errIdx;
      if (badIndexMatch) {
        errIdx = +badIndexMatch[1];
      } else if (msg.match(/^Unexpected end of JSON.*/i)) {
        errIdx = txt.length - 1;
      }
      if (errIdx == null) {
        return makeParsedError(msg, `'${txt.slice(0, context * 2)}'`);
      }
      const start = errIdx <= context ? 0 : errIdx - context;
      const end = errIdx + context >= txt.length ? txt.length : errIdx + context;
      const slice3 = `${start ? "..." : ""}${txt.slice(start, end)}${end === txt.length ? "" : "..."}`;
      return makeParsedError(
        msg,
        `${txt === slice3 ? "" : "near "}${JSON.stringify(slice3)}`,
        errIdx
      );
    };
    var JSONParseError = class extends SyntaxError {
      constructor(er, txt, context, caller) {
        const metadata = parseError(er, txt, context);
        super(metadata.message);
        Object.assign(this, metadata);
        this.code = "EJSONPARSE";
        this.systemError = er;
        Error.captureStackTrace(this, caller || this.constructor);
      }
      get name() {
        return this.constructor.name;
      }
      set name(n2) {
      }
      get [Symbol.toStringTag]() {
        return this.constructor.name;
      }
    };
    var parseJson2 = (txt, reviver) => {
      const result2 = JSON.parse(txt, reviver);
      if (result2 && typeof result2 === "object") {
        const match = txt.match(EMPTY2) || txt.match(FORMAT) || [null, "", ""];
        result2[NEWLINE] = match[1] ?? DEFAULT_NEWLINE;
        result2[INDENT] = match[2] ?? DEFAULT_INDENT;
      }
      return result2;
    };
    var parseJsonError = (raw, reviver, context) => {
      const txt = stripBOM(raw);
      try {
        return parseJson2(txt, reviver);
      } catch (e) {
        if (typeof raw !== "string" && !Buffer.isBuffer(raw)) {
          const msg = Array.isArray(raw) && raw.length === 0 ? "an empty array" : String(raw);
          throw Object.assign(
            new TypeError(`Cannot parse ${msg}`),
            { code: "EJSONPARSE", systemError: e }
          );
        }
        throw new JSONParseError(e, txt, context, parseJsonError);
      }
    };
    module2.exports = parseJsonError;
    parseJsonError.JSONParseError = JSONParseError;
    parseJsonError.noExceptions = (raw, reviver) => {
      try {
        return parseJson2(stripBOM(raw), reviver);
      } catch {
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/package-json/7.0.5/3e07be5488b954e650e89ad062bed22ad08e5abd9f8df86e78ce0ab5d2db34d4/node_modules/@npmcli/package-json/lib/update-dependencies.js
var require_update_dependencies = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/package-json/7.0.5/3e07be5488b954e650e89ad062bed22ad08e5abd9f8df86e78ce0ab5d2db34d4/node_modules/@npmcli/package-json/lib/update-dependencies.js"(exports2, module2) {
    var depTypes = /* @__PURE__ */ new Set([
      "dependencies",
      "optionalDependencies",
      "devDependencies",
      "peerDependencies"
    ]);
    var orderDeps = (content) => {
      for (const type4 of depTypes) {
        if (content && content[type4]) {
          content[type4] = Object.keys(content[type4]).sort((a2, b) => a2.localeCompare(b, "en")).reduce((res, key) => {
            res[key] = content[type4][key];
            return res;
          }, {});
        }
      }
      return content;
    };
    var updateDependencies = ({ content, originalContent }) => {
      const pkg = orderDeps({
        ...content
      });
      if (pkg.dependencies) {
        if (pkg.optionalDependencies) {
          for (const name of Object.keys(pkg.optionalDependencies)) {
            delete pkg.dependencies[name];
          }
        }
      }
      const result2 = { ...originalContent };
      for (const type4 of depTypes) {
        if (pkg[type4]) {
          result2[type4] = pkg[type4];
        }
        const emptyDepType = pkg[type4] && typeof pkg === "object" && Object.keys(pkg[type4]).length === 0;
        if (emptyDepType) {
          delete result2[type4];
        }
      }
      const { dependencies: origProd, peerDependencies: origPeer } = originalContent || {};
      const { peerDependencies: newPeer } = result2;
      if (origProd && origPeer && newPeer) {
        for (const name of Object.keys(origPeer)) {
          if (origProd[name] !== void 0 && newPeer[name] !== void 0) {
            result2.dependencies = result2.dependencies || {};
            result2.dependencies[name] = newPeer[name];
          }
        }
      }
      return result2;
    };
    updateDependencies.knownKeys = depTypes;
    module2.exports = updateDependencies;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/package-json/7.0.5/3e07be5488b954e650e89ad062bed22ad08e5abd9f8df86e78ce0ab5d2db34d4/node_modules/@npmcli/package-json/lib/update-scripts.js
var require_update_scripts = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/package-json/7.0.5/3e07be5488b954e650e89ad062bed22ad08e5abd9f8df86e78ce0ab5d2db34d4/node_modules/@npmcli/package-json/lib/update-scripts.js"(exports2, module2) {
    var updateScripts = ({ content, originalContent = {} }) => {
      const newScripts = content.scripts;
      if (!newScripts) {
        return originalContent;
      }
      const hasInvalidScripts = () => Object.entries(newScripts).some(([key, value]) => typeof key !== "string" || typeof value !== "string");
      if (hasInvalidScripts()) {
        throw Object.assign(
          new TypeError(
            "package.json scripts should be a key-value pair of strings."
          ),
          { code: "ESCRIPTSINVALID" }
        );
      }
      return {
        ...originalContent,
        scripts: {
          ...newScripts
        }
      };
    };
    module2.exports = updateScripts;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/package-json/7.0.5/3e07be5488b954e650e89ad062bed22ad08e5abd9f8df86e78ce0ab5d2db34d4/node_modules/@npmcli/package-json/lib/update-workspaces.js
var require_update_workspaces = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/package-json/7.0.5/3e07be5488b954e650e89ad062bed22ad08e5abd9f8df86e78ce0ab5d2db34d4/node_modules/@npmcli/package-json/lib/update-workspaces.js"(exports2, module2) {
    var updateWorkspaces = ({ content, originalContent = {} }) => {
      const newWorkspaces = content.workspaces;
      if (!newWorkspaces) {
        return originalContent;
      }
      const hasInvalidWorkspaces = () => newWorkspaces.some((w) => !(typeof w === "string"));
      if (!newWorkspaces.length || hasInvalidWorkspaces()) {
        throw Object.assign(
          new TypeError("workspaces should be an array of strings."),
          { code: "EWORKSPACESINVALID" }
        );
      }
      return {
        ...originalContent,
        workspaces: [
          ...newWorkspaces
        ]
      };
    };
    module2.exports = updateWorkspaces;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/spdx-expression-parse/4.0.0/e1aa3a29fda234edfab6732bad6882c6c976fc36cfcd0e4e36fc4b2fa5b4fe06/node_modules/spdx-expression-parse/scan.js
var require_scan4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/spdx-expression-parse/4.0.0/e1aa3a29fda234edfab6732bad6882c6c976fc36cfcd0e4e36fc4b2fa5b4fe06/node_modules/spdx-expression-parse/scan.js"(exports2, module2) {
    "use strict";
    var licenses = [].concat(require_spdx_license_ids()).concat(require_deprecated());
    var exceptions = require_spdx_exceptions();
    module2.exports = function(source) {
      var index = 0;
      function hasMore() {
        return index < source.length;
      }
      function read2(value) {
        if (value instanceof RegExp) {
          var chars = source.slice(index);
          var match = chars.match(value);
          if (match) {
            index += match[0].length;
            return match[0];
          }
        } else {
          if (source.indexOf(value, index) === index) {
            index += value.length;
            return value;
          }
        }
      }
      function skipWhitespace() {
        read2(/[ ]*/);
      }
      function operator() {
        var string;
        var possibilities = [/^WITH/i, /^AND/i, /^OR/i, "(", ")", ":", "+"];
        for (var i2 = 0; i2 < possibilities.length; i2++) {
          string = read2(possibilities[i2]);
          if (string) {
            break;
          }
        }
        if (string === "+" && index > 1 && source[index - 2] === " ") {
          throw new Error("Space before `+`");
        }
        return string && {
          type: "OPERATOR",
          string: string.toUpperCase()
        };
      }
      function idstring() {
        return read2(/[A-Za-z0-9-.]+/);
      }
      function expectIdstring() {
        var string = idstring();
        if (!string) {
          throw new Error("Expected idstring at offset " + index);
        }
        return string;
      }
      function documentRef() {
        if (read2("DocumentRef-")) {
          var string = expectIdstring();
          return { type: "DOCUMENTREF", string };
        }
      }
      function licenseRef() {
        if (read2("LicenseRef-")) {
          var string = expectIdstring();
          return { type: "LICENSEREF", string };
        }
      }
      function identifier() {
        var begin = index;
        var string = idstring();
        if (licenses.indexOf(string) !== -1) {
          return {
            type: "LICENSE",
            string
          };
        } else if (exceptions.indexOf(string) !== -1) {
          return {
            type: "EXCEPTION",
            string
          };
        }
        index = begin;
      }
      function parseToken2() {
        return operator() || documentRef() || licenseRef() || identifier();
      }
      var tokens = [];
      while (hasMore()) {
        skipWhitespace();
        if (!hasMore()) {
          break;
        }
        var token = parseToken2();
        if (!token) {
          throw new Error("Unexpected `" + source[index] + "` at offset " + index);
        }
        tokens.push(token);
      }
      return tokens;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/spdx-expression-parse/4.0.0/e1aa3a29fda234edfab6732bad6882c6c976fc36cfcd0e4e36fc4b2fa5b4fe06/node_modules/spdx-expression-parse/parse.js
var require_parse10 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/spdx-expression-parse/4.0.0/e1aa3a29fda234edfab6732bad6882c6c976fc36cfcd0e4e36fc4b2fa5b4fe06/node_modules/spdx-expression-parse/parse.js"(exports2, module2) {
    "use strict";
    module2.exports = function(tokens) {
      var index = 0;
      function hasMore() {
        return index < tokens.length;
      }
      function token() {
        return hasMore() ? tokens[index] : null;
      }
      function next2() {
        if (!hasMore()) {
          throw new Error();
        }
        index++;
      }
      function parseOperator(operator) {
        var t2 = token();
        if (t2 && t2.type === "OPERATOR" && operator === t2.string) {
          next2();
          return t2.string;
        }
      }
      function parseWith() {
        if (parseOperator("WITH")) {
          var t2 = token();
          if (t2 && t2.type === "EXCEPTION") {
            next2();
            return t2.string;
          }
          throw new Error("Expected exception after `WITH`");
        }
      }
      function parseLicenseRef() {
        var begin = index;
        var string = "";
        var t2 = token();
        if (t2.type === "DOCUMENTREF") {
          next2();
          string += "DocumentRef-" + t2.string + ":";
          if (!parseOperator(":")) {
            throw new Error("Expected `:` after `DocumentRef-...`");
          }
        }
        t2 = token();
        if (t2.type === "LICENSEREF") {
          next2();
          string += "LicenseRef-" + t2.string;
          return { license: string };
        }
        index = begin;
      }
      function parseLicense() {
        var t2 = token();
        if (t2 && t2.type === "LICENSE") {
          next2();
          var node2 = { license: t2.string };
          if (parseOperator("+")) {
            node2.plus = true;
          }
          var exception2 = parseWith();
          if (exception2) {
            node2.exception = exception2;
          }
          return node2;
        }
      }
      function parseParenthesizedExpression() {
        var left = parseOperator("(");
        if (!left) {
          return;
        }
        var expr = parseExpression2();
        if (!parseOperator(")")) {
          throw new Error("Expected `)`");
        }
        return expr;
      }
      function parseAtom() {
        return parseParenthesizedExpression() || parseLicenseRef() || parseLicense();
      }
      function makeBinaryOpParser(operator, nextParser) {
        return function parseBinaryOp() {
          var left = nextParser();
          if (!left) {
            return;
          }
          if (!parseOperator(operator)) {
            return left;
          }
          var right = parseBinaryOp();
          if (!right) {
            throw new Error("Expected expression");
          }
          return {
            left,
            conjunction: operator.toLowerCase(),
            right
          };
        };
      }
      var parseAnd = makeBinaryOpParser("AND", parseAtom);
      var parseExpression2 = makeBinaryOpParser("OR", parseAnd);
      var node = parseExpression2();
      if (!node || hasMore()) {
        throw new Error("Syntax error");
      }
      return node;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/spdx-expression-parse/4.0.0/e1aa3a29fda234edfab6732bad6882c6c976fc36cfcd0e4e36fc4b2fa5b4fe06/node_modules/spdx-expression-parse/index.js
var require_spdx_expression_parse2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/spdx-expression-parse/4.0.0/e1aa3a29fda234edfab6732bad6882c6c976fc36cfcd0e4e36fc4b2fa5b4fe06/node_modules/spdx-expression-parse/index.js"(exports2, module2) {
    "use strict";
    var scan3 = require_scan4();
    var parse7 = require_parse10();
    module2.exports = function(source) {
      return parse7(scan3(source));
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/package-json/7.0.5/3e07be5488b954e650e89ad062bed22ad08e5abd9f8df86e78ce0ab5d2db34d4/node_modules/@npmcli/package-json/lib/license.js
var require_license = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/package-json/7.0.5/3e07be5488b954e650e89ad062bed22ad08e5abd9f8df86e78ce0ab5d2db34d4/node_modules/@npmcli/package-json/lib/license.js"(exports2, module2) {
    var parse7 = require_spdx_expression_parse2();
    function usesLicenseRef(ast) {
      if (Object.hasOwn(ast, "license")) {
        return ast.license.startsWith("LicenseRef") || ast.license.startsWith("DocumentRef");
      } else {
        return usesLicenseRef(ast.left) || usesLicenseRef(ast.right);
      }
    }
    module2.exports = function licenseValidForNewPackage(argument) {
      if (argument === "UNLICENSED" || argument === "UNLICENCED") {
        return true;
      }
      if (/^SEE LICEN[CS]E IN ./.test(argument)) {
        return true;
      }
      try {
        const ast = parse7(argument);
        return !usesLicenseRef(ast);
      } catch {
        return false;
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/package-json/7.0.5/3e07be5488b954e650e89ad062bed22ad08e5abd9f8df86e78ce0ab5d2db34d4/node_modules/@npmcli/package-json/lib/normalize-data.js
var require_normalize_data = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/package-json/7.0.5/3e07be5488b954e650e89ad062bed22ad08e5abd9f8df86e78ce0ab5d2db34d4/node_modules/@npmcli/package-json/lib/normalize-data.js"(exports2, module2) {
    var { URL: URL7 } = __require("node:url");
    var hostedGitInfo = require_lib11();
    var validateLicense = require_license();
    var typos = {
      dependancies: "dependencies",
      dependecies: "dependencies",
      depdenencies: "dependencies",
      devEependencies: "devDependencies",
      depends: "dependencies",
      "dev-dependencies": "devDependencies",
      devDependences: "devDependencies",
      devDepenencies: "devDependencies",
      devdependencies: "devDependencies",
      repostitory: "repository",
      repo: "repository",
      prefereGlobal: "preferGlobal",
      hompage: "homepage",
      hampage: "homepage",
      autohr: "author",
      autor: "author",
      contributers: "contributors",
      publicationConfig: "publishConfig",
      script: "scripts"
    };
    var isEmail = (str2) => str2.includes("@") && str2.indexOf("@") < str2.lastIndexOf(".");
    function extractDescription(description) {
      const lines = description.trim().split("\n");
      let start = 0;
      while (lines[start]?.trim().match(/^(#|$)/)) {
        start++;
      }
      let end = start + 1;
      while (end < lines.length && lines[end].trim()) {
        end++;
      }
      return lines.slice(start, end).join(" ").trim();
    }
    function stringifyPerson(person) {
      if (typeof person !== "string") {
        const name = person.name || "";
        const u4 = person.url || person.web;
        const wrappedUrl = u4 ? " (" + u4 + ")" : "";
        const e = person.email || person.mail;
        const wrappedEmail = e ? " <" + e + ">" : "";
        person = name + wrappedEmail + wrappedUrl;
      }
      const matchedName = person.match(/^([^(<]+)/);
      const matchedUrl = person.match(/\(([^()]+)\)/);
      const matchedEmail = person.match(/<([^<>]+)>/);
      const parsed = {};
      if (matchedName?.[0].trim()) {
        parsed.name = matchedName[0].trim();
      }
      if (matchedEmail) {
        parsed.email = matchedEmail[1];
      }
      if (matchedUrl) {
        parsed.url = matchedUrl[1];
      }
      return parsed;
    }
    function normalizeData(data, changes) {
      if (data.description && typeof data.description !== "string") {
        changes?.push(`'description' field should be a string`);
        delete data.description;
      }
      if (data.readme && !data.description && data.readme !== "ERROR: No README data found!") {
        data.description = extractDescription(data.readme);
      }
      if (data.description === void 0) {
        delete data.description;
      }
      if (!data.description) {
        changes?.push("No description");
      }
      if (data.modules) {
        changes?.push(`modules field is deprecated`);
        delete data.modules;
      }
      const files = data.files;
      if (files && !Array.isArray(files)) {
        changes?.push(`Invalid 'files' member`);
        delete data.files;
      } else if (data.files) {
        data.files = data.files.filter(function(file) {
          if (!file || typeof file !== "string") {
            changes?.push(`Invalid filename in 'files' list: ${file}`);
            return false;
          } else {
            return true;
          }
        });
      }
      if (data.man && typeof data.man === "string") {
        data.man = [data.man];
      }
      if (!data.bugs && data.repository?.url) {
        const hosted = hostedGitInfo.fromUrl(data.repository.url);
        if (hosted && hosted.bugs()) {
          data.bugs = { url: hosted.bugs() };
        }
      } else if (data.bugs) {
        if (typeof data.bugs === "string") {
          if (isEmail(data.bugs)) {
            data.bugs = { email: data.bugs };
          } else if (URL7.canParse(data.bugs)) {
            data.bugs = { url: data.bugs };
          } else {
            changes?.push(`Bug string field must be url, email, or {email,url}`);
          }
        } else {
          for (const k2 in data.bugs) {
            if (["web", "name"].includes(k2)) {
              changes?.push(`bugs['${k2}'] should probably be bugs['url'].`);
              data.bugs.url = data.bugs[k2];
              delete data.bugs[k2];
            }
          }
          const oldBugs = data.bugs;
          data.bugs = {};
          if (oldBugs.url) {
            if (URL7.canParse(oldBugs.url)) {
              data.bugs.url = oldBugs.url;
            } else {
              changes?.push("bugs.url field must be a string url. Deleted.");
            }
          }
          if (oldBugs.email) {
            if (typeof oldBugs.email === "string" && isEmail(oldBugs.email)) {
              data.bugs.email = oldBugs.email;
            } else {
              changes?.push("bugs.email field must be a string email. Deleted.");
            }
          }
        }
        if (!data.bugs.email && !data.bugs.url) {
          delete data.bugs;
          changes?.push("Normalized value of bugs field is an empty object. Deleted.");
        }
      }
      if (typeof data.keywords === "string") {
        data.keywords = data.keywords.split(/,\s+/);
      }
      if (data.keywords && !Array.isArray(data.keywords)) {
        delete data.keywords;
        changes?.push(`keywords should be an array of strings`);
      } else if (data.keywords) {
        data.keywords = data.keywords.filter(function(kw) {
          if (typeof kw !== "string" || !kw) {
            changes?.push(`keywords should be an array of strings`);
            return false;
          } else {
            return true;
          }
        });
      }
      const bdd = "bundledDependencies";
      const bd = "bundleDependencies";
      if (data[bdd] && !data[bd]) {
        data[bd] = data[bdd];
        delete data[bdd];
      }
      if (data[bd] && !Array.isArray(data[bd])) {
        changes?.push(`Invalid 'bundleDependencies' list. Must be array of package names`);
        delete data[bd];
      } else if (data[bd]) {
        data[bd] = data[bd].filter(function(filtered) {
          if (!filtered || typeof filtered !== "string") {
            changes?.push(`Invalid bundleDependencies member: ${filtered}`);
            return false;
          } else {
            if (!data.dependencies) {
              data.dependencies = {};
            }
            if (!Object.prototype.hasOwnProperty.call(data.dependencies, filtered)) {
              changes?.push(`Non-dependency in bundleDependencies: ${filtered}`);
              data.dependencies[filtered] = "*";
            }
            return true;
          }
        });
      }
      if (!data.homepage && data.repository && data.repository.url) {
        const hosted = hostedGitInfo.fromUrl(data.repository.url);
        if (hosted) {
          data.homepage = hosted.docs();
        }
      }
      if (data.homepage) {
        if (typeof data.homepage !== "string") {
          changes?.push("homepage field must be a string url. Deleted.");
          delete data.homepage;
        } else {
          if (!URL7.canParse(data.homepage)) {
            data.homepage = "http://" + data.homepage;
          }
        }
      }
      if (!data.readme) {
        changes?.push("No README data");
        data.readme = "ERROR: No README data found!";
      }
      const license = data.license || data.licence;
      if (!license) {
        changes?.push("No license field.");
      } else if (typeof license !== "string" || license.length < 1 || license.trim() === "") {
        changes?.push("license should be a valid SPDX license expression");
      } else if (!validateLicense(license)) {
        changes?.push("license should be a valid SPDX license expression");
      }
      if (data.author) {
        data.author = stringifyPerson(data.author);
      }
      ["maintainers", "contributors"].forEach(function(set2) {
        if (!Array.isArray(data[set2])) {
          return;
        }
        data[set2] = data[set2].map(stringifyPerson);
      });
      for (const d in typos) {
        if (Object.prototype.hasOwnProperty.call(data, d)) {
          changes?.push(`${d} should probably be ${typos[d]}.`);
        }
      }
    }
    module2.exports = { normalizeData };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/isexe/4.0.0/8736ef6929ea634afce7a507dde8d5a32c95fc80f4bb087b1a9f17c270b0fcae/node_modules/isexe/dist/commonjs/index.min.js
var require_index_min4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/isexe/4.0.0/8736ef6929ea634afce7a507dde8d5a32c95fc80f4bb087b1a9f17c270b0fcae/node_modules/isexe/dist/commonjs/index.min.js"(exports2) {
    "use strict";
    var a2 = (t2, e) => () => (e || t2((e = { exports: {} }).exports, e), e.exports);
    var _ = a2((i2) => {
      "use strict";
      Object.defineProperty(i2, "__esModule", { value: true });
      i2.sync = i2.isexe = void 0;
      var M2 = __require("node:fs"), x = __require("node:fs/promises"), q = async (t2, e = {}) => {
        let { ignoreErrors: r = false } = e;
        try {
          return d(await (0, x.stat)(t2), e);
        } catch (s) {
          let n2 = s;
          if (r || n2.code === "EACCES") return false;
          throw n2;
        }
      };
      i2.isexe = q;
      var m = (t2, e = {}) => {
        let { ignoreErrors: r = false } = e;
        try {
          return d((0, M2.statSync)(t2), e);
        } catch (s) {
          let n2 = s;
          if (r || n2.code === "EACCES") return false;
          throw n2;
        }
      };
      i2.sync = m;
      var d = (t2, e) => t2.isFile() && A(t2, e), A = (t2, e) => {
        let r = e.uid ?? process.getuid?.(), s = e.groups ?? process.getgroups?.() ?? [], n2 = e.gid ?? process.getgid?.() ?? s[0];
        if (r === void 0 || n2 === void 0) throw new Error("cannot get uid or gid");
        let u4 = /* @__PURE__ */ new Set([n2, ...s]), c3 = t2.mode, S2 = t2.uid, P2 = t2.gid, f = parseInt("100", 8), l = parseInt("010", 8), j2 = parseInt("001", 8), C = f | l;
        return !!(c3 & j2 || c3 & l && u4.has(P2) || c3 & f && S2 === r || c3 & C && r === 0);
      };
    });
    var g = a2((o2) => {
      "use strict";
      Object.defineProperty(o2, "__esModule", { value: true });
      o2.sync = o2.isexe = void 0;
      var T2 = __require("node:fs"), I2 = __require("node:fs/promises"), D2 = __require("node:path"), F = async (t2, e = {}) => {
        let { ignoreErrors: r = false } = e;
        try {
          return y(await (0, I2.stat)(t2), t2, e);
        } catch (s) {
          let n2 = s;
          if (r || n2.code === "EACCES") return false;
          throw n2;
        }
      };
      o2.isexe = F;
      var L2 = (t2, e = {}) => {
        let { ignoreErrors: r = false } = e;
        try {
          return y((0, T2.statSync)(t2), t2, e);
        } catch (s) {
          let n2 = s;
          if (r || n2.code === "EACCES") return false;
          throw n2;
        }
      };
      o2.sync = L2;
      var B = (t2, e) => {
        let { pathExt: r = process.env.PATHEXT || "" } = e, s = r.split(D2.delimiter);
        if (s.indexOf("") !== -1) return true;
        for (let n2 of s) {
          let u4 = n2.toLowerCase(), c3 = t2.substring(t2.length - u4.length).toLowerCase();
          if (u4 && c3 === u4) return true;
        }
        return false;
      }, y = (t2, e, r) => t2.isFile() && B(e, r);
    });
    var p = a2((h2) => {
      "use strict";
      Object.defineProperty(h2, "__esModule", { value: true });
    });
    var v = exports2 && exports2.__createBinding || (Object.create ? (function(t2, e, r, s) {
      s === void 0 && (s = r);
      var n2 = Object.getOwnPropertyDescriptor(e, r);
      (!n2 || ("get" in n2 ? !e.__esModule : n2.writable || n2.configurable)) && (n2 = { enumerable: true, get: function() {
        return e[r];
      } }), Object.defineProperty(t2, s, n2);
    }) : (function(t2, e, r, s) {
      s === void 0 && (s = r), t2[s] = e[r];
    }));
    var G2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(t2, e) {
      Object.defineProperty(t2, "default", { enumerable: true, value: e });
    }) : function(t2, e) {
      t2.default = e;
    });
    var w = exports2 && exports2.__importStar || /* @__PURE__ */ (function() {
      var t2 = function(e) {
        return t2 = Object.getOwnPropertyNames || function(r) {
          var s = [];
          for (var n2 in r) Object.prototype.hasOwnProperty.call(r, n2) && (s[s.length] = n2);
          return s;
        }, t2(e);
      };
      return function(e) {
        if (e && e.__esModule) return e;
        var r = {};
        if (e != null) for (var s = t2(e), n2 = 0; n2 < s.length; n2++) s[n2] !== "default" && v(r, e, s[n2]);
        return G2(r, e), r;
      };
    })();
    var X = exports2 && exports2.__exportStar || function(t2, e) {
      for (var r in t2) r !== "default" && !Object.prototype.hasOwnProperty.call(e, r) && v(e, t2, r);
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.sync = exports2.isexe = exports2.posix = exports2.win32 = void 0;
    var E = w(_());
    exports2.posix = E;
    var O2 = w(g());
    exports2.win32 = O2;
    X(p(), exports2);
    var H2 = process.env._ISEXE_TEST_PLATFORM_ || process.platform;
    var b = H2 === "win32" ? O2 : E;
    exports2.isexe = b.isexe;
    exports2.sync = b.sync;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/which/6.0.1/138f9cc31c4c93a27593c8145e8bf5d6f872f5f3a7b3049ce79d8e3510d27779/node_modules/which/lib/index.js
var require_lib39 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/which/6.0.1/138f9cc31c4c93a27593c8145e8bf5d6f872f5f3a7b3049ce79d8e3510d27779/node_modules/which/lib/index.js"(exports2, module2) {
    var { isexe, sync: isexeSync } = require_index_min4();
    var { join: join3, delimiter, sep: sep2, posix: posix2 } = __require("path");
    var isWindows15 = process.platform === "win32";
    var rSlash = new RegExp(`[${posix2.sep}${sep2 === posix2.sep ? "" : sep2}]`.replace(/(\\)/g, "\\$1"));
    var rRel = new RegExp(`^\\.${rSlash.source}`);
    var getNotFoundError = (cmd) => Object.assign(new Error(`not found: ${cmd}`), { code: "ENOENT" });
    var getPathInfo = (cmd, {
      path: optPath = process.env.PATH,
      pathExt: optPathExt = process.env.PATHEXT,
      delimiter: optDelimiter = delimiter
    }) => {
      const pathEnv = cmd.match(rSlash) ? [""] : [
        // windows always checks the cwd first
        ...isWindows15 ? [process.cwd()] : [],
        ...(optPath || /* istanbul ignore next: very unusual */
        "").split(optDelimiter)
      ];
      if (isWindows15) {
        const pathExtExe = optPathExt || [".EXE", ".CMD", ".BAT", ".COM"].join(optDelimiter);
        const pathExt = pathExtExe.split(optDelimiter).flatMap((item) => [item, item.toLowerCase()]);
        if (cmd.includes(".") && pathExt[0] !== "") {
          pathExt.unshift("");
        }
        return { pathEnv, pathExt, pathExtExe };
      }
      return { pathEnv, pathExt: [""] };
    };
    var getPathPart = (raw, cmd) => {
      const pathPart = /^".*"$/.test(raw) ? raw.slice(1, -1) : raw;
      const prefix = !pathPart && rRel.test(cmd) ? cmd.slice(0, 2) : "";
      return prefix + join3(pathPart, cmd);
    };
    var which4 = async (cmd, opt = {}) => {
      const { pathEnv, pathExt, pathExtExe } = getPathInfo(cmd, opt);
      const found = [];
      for (const envPart of pathEnv) {
        const p = getPathPart(envPart, cmd);
        for (const ext of pathExt) {
          const withExt = p + ext;
          const is = await isexe(withExt, { pathExt: pathExtExe, ignoreErrors: true });
          if (is) {
            if (!opt.all) {
              return withExt;
            }
            found.push(withExt);
          }
        }
      }
      if (opt.all && found.length) {
        return found;
      }
      if (opt.nothrow) {
        return null;
      }
      throw getNotFoundError(cmd);
    };
    var whichSync = (cmd, opt = {}) => {
      const { pathEnv, pathExt, pathExtExe } = getPathInfo(cmd, opt);
      const found = [];
      for (const pathEnvPart of pathEnv) {
        const p = getPathPart(pathEnvPart, cmd);
        for (const ext of pathExt) {
          const withExt = p + ext;
          const is = isexeSync(withExt, { pathExt: pathExtExe, ignoreErrors: true });
          if (is) {
            if (!opt.all) {
              return withExt;
            }
            found.push(withExt);
          }
        }
      }
      if (opt.all && found.length) {
        return found;
      }
      if (opt.nothrow) {
        return null;
      }
      throw getNotFoundError(cmd);
    };
    module2.exports = which4;
    which4.sync = whichSync;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/promise-spawn/9.0.1/d8ab7f36b1383e9c498fc13aef72000b8e8e0cf327853317c5bcdf5d1f9a3ee7/node_modules/@npmcli/promise-spawn/lib/escape.js
var require_escape5 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/promise-spawn/9.0.1/d8ab7f36b1383e9c498fc13aef72000b8e8e0cf327853317c5bcdf5d1f9a3ee7/node_modules/@npmcli/promise-spawn/lib/escape.js"(exports2, module2) {
    "use strict";
    var cmd = (input, doubleEscape) => {
      if (!input.length) {
        return '""';
      }
      let result2;
      if (!/[ \t\n\v"]/.test(input)) {
        result2 = input;
      } else {
        result2 = '"';
        for (let i2 = 0; i2 <= input.length; ++i2) {
          let slashCount = 0;
          while (input[i2] === "\\") {
            ++i2;
            ++slashCount;
          }
          if (i2 === input.length) {
            result2 += "\\".repeat(slashCount * 2);
            break;
          }
          if (input[i2] === '"') {
            result2 += "\\".repeat(slashCount * 2 + 1);
            result2 += input[i2];
          } else {
            result2 += "\\".repeat(slashCount);
            result2 += input[i2];
          }
        }
        result2 += '"';
      }
      result2 = result2.replace(/[ !%^&()<>|"]/g, "^$&");
      if (doubleEscape) {
        result2 = result2.replace(/[ !%^&()<>|"]/g, "^$&");
      }
      return result2;
    };
    var sh = (input) => {
      if (!input.length) {
        return `''`;
      }
      if (!/[\t\n\r "#$&'()*;<>?\\`|~]/.test(input)) {
        return input;
      }
      const result2 = `'${input.replace(/'/g, `'\\''`)}'`.replace(/^(?:'')+(?!$)/, "").replace(/\\'''/g, `\\'`);
      return result2;
    };
    module2.exports = {
      cmd,
      sh
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/promise-spawn/9.0.1/d8ab7f36b1383e9c498fc13aef72000b8e8e0cf327853317c5bcdf5d1f9a3ee7/node_modules/@npmcli/promise-spawn/lib/index.js
var require_lib40 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/promise-spawn/9.0.1/d8ab7f36b1383e9c498fc13aef72000b8e8e0cf327853317c5bcdf5d1f9a3ee7/node_modules/@npmcli/promise-spawn/lib/index.js"(exports2, module2) {
    "use strict";
    var { spawn: spawn5 } = __require("child_process");
    var os15 = __require("os");
    var which4 = require_lib39();
    var escape = require_escape5();
    var promiseSpawn = (cmd, args, opts2 = {}, extra = {}) => {
      if (opts2.shell) {
        return spawnWithShell(cmd, args, opts2, extra);
      }
      let resolve3, reject3;
      const promise2 = new Promise((_resolve, _reject) => {
        resolve3 = _resolve;
        reject3 = _reject;
      });
      const closeError = new Error("command failed");
      const stdout = [];
      const stderr = [];
      const getResult = (result2) => ({
        cmd,
        args,
        ...result2,
        ...stdioResult(stdout, stderr, opts2),
        ...extra
      });
      const rejectWithOpts = (er, erOpts) => {
        const resultError = getResult(erOpts);
        reject3(Object.assign(er, resultError));
      };
      const proc = spawn5(cmd, args, opts2);
      promise2.stdin = proc.stdin;
      promise2.process = proc;
      proc.on("error", rejectWithOpts);
      if (proc.stdout) {
        proc.stdout.on("data", (c3) => stdout.push(c3));
        proc.stdout.on("error", rejectWithOpts);
      }
      if (proc.stderr) {
        proc.stderr.on("data", (c3) => stderr.push(c3));
        proc.stderr.on("error", rejectWithOpts);
      }
      proc.on("close", (code, signal) => {
        if (code || signal) {
          rejectWithOpts(closeError, { code, signal });
        } else {
          resolve3(getResult({ code, signal }));
        }
      });
      return promise2;
    };
    var spawnWithShell = (cmd, args, opts2, extra) => {
      let command = opts2.shell;
      if (command === true) {
        command = process.platform === "win32" ? process.env.ComSpec || "cmd.exe" : "sh";
      }
      const options = { ...opts2, shell: false };
      const realArgs = [];
      let script = cmd;
      const isCmd = /(?:^|\\)cmd(?:\.exe)?$/i.test(command);
      if (isCmd) {
        let doubleEscape = false;
        let initialCmd = "";
        let insideQuotes = false;
        for (let i2 = 0; i2 < cmd.length; ++i2) {
          const char = cmd.charAt(i2);
          if (char === " " && !insideQuotes) {
            break;
          }
          initialCmd += char;
          if (char === '"' || char === "'") {
            insideQuotes = !insideQuotes;
          }
        }
        let pathToInitial;
        try {
          pathToInitial = which4.sync(initialCmd, {
            path: options.env && findInObject(options.env, "PATH") || process.env.PATH,
            pathext: options.env && findInObject(options.env, "PATHEXT") || process.env.PATHEXT
          }).toLowerCase();
        } catch (err) {
          pathToInitial = initialCmd.toLowerCase();
        }
        doubleEscape = pathToInitial.endsWith(".cmd") || pathToInitial.endsWith(".bat");
        for (const arg of args) {
          script += ` ${escape.cmd(arg, doubleEscape)}`;
        }
        realArgs.push("/d", "/s", "/c", script);
        options.windowsVerbatimArguments = true;
      } else {
        for (const arg of args) {
          script += ` ${escape.sh(arg)}`;
        }
        realArgs.push("-c", script);
      }
      return promiseSpawn(command, realArgs, options, extra);
    };
    var open5 = (_args, opts2 = {}, extra = {}) => {
      const options = { ...opts2, shell: true };
      const args = [].concat(_args);
      let platform3 = process.platform;
      if (platform3 === "linux" && os15.release().toLowerCase().includes("microsoft")) {
        platform3 = "wsl";
        if (!process.env.BROWSER) {
          return Promise.reject(
            new Error("Set the BROWSER environment variable to your desired browser.")
          );
        }
      }
      let command = options.command;
      if (!command) {
        if (platform3 === "win32") {
          options.shell = process.env.ComSpec;
          command = 'start ""';
        } else if (platform3 === "wsl") {
          command = "sensible-browser";
        } else if (platform3 === "darwin") {
          command = "open";
        } else {
          command = "xdg-open";
        }
      }
      return spawnWithShell(command, args, options, extra);
    };
    promiseSpawn.open = open5;
    var isPipe = (stdio = "pipe", fd) => {
      if (stdio === "pipe" || stdio === null) {
        return true;
      }
      if (Array.isArray(stdio)) {
        return isPipe(stdio[fd], fd);
      }
      return false;
    };
    var stdioResult = (stdout, stderr, { stdioString = true, stdio }) => {
      const result2 = {
        stdout: null,
        stderr: null
      };
      if (isPipe(stdio, 1)) {
        result2.stdout = Buffer.concat(stdout);
        if (stdioString) {
          result2.stdout = result2.stdout.toString().trim();
        }
      }
      if (isPipe(stdio, 2)) {
        result2.stderr = Buffer.concat(stderr);
        if (stdioString) {
          result2.stderr = result2.stderr.toString().trim();
        }
      }
      return result2;
    };
    var findInObject = (obj, key) => {
      key = key.toLowerCase();
      for (const objKey of Object.keys(obj).sort()) {
        if (objKey.toLowerCase() === key) {
          return obj[objKey];
        }
      }
    };
    module2.exports = promiseSpawn;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/git/7.0.2/0f0d88fe0a279a034086cfb4a60c7def95e6cbd9539c53449c5a9df44054937f/node_modules/@npmcli/git/lib/errors.js
var require_errors11 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/git/7.0.2/0f0d88fe0a279a034086cfb4a60c7def95e6cbd9539c53449c5a9df44054937f/node_modules/@npmcli/git/lib/errors.js"(exports2, module2) {
    var maxRetry = 3;
    var GitError = class extends Error {
      shouldRetry() {
        return false;
      }
    };
    var GitConnectionError = class extends GitError {
      constructor() {
        super("A git connection error occurred");
      }
      shouldRetry(number) {
        return number < maxRetry;
      }
    };
    var GitPathspecError = class extends GitError {
      constructor() {
        super("The git reference could not be found");
      }
    };
    var GitUnknownError = class extends GitError {
      constructor() {
        super("An unknown git error occurred");
      }
    };
    module2.exports = {
      GitConnectionError,
      GitPathspecError,
      GitUnknownError
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/git/7.0.2/0f0d88fe0a279a034086cfb4a60c7def95e6cbd9539c53449c5a9df44054937f/node_modules/@npmcli/git/lib/make-error.js
var require_make_error = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/git/7.0.2/0f0d88fe0a279a034086cfb4a60c7def95e6cbd9539c53449c5a9df44054937f/node_modules/@npmcli/git/lib/make-error.js"(exports2, module2) {
    var {
      GitConnectionError,
      GitPathspecError,
      GitUnknownError
    } = require_errors11();
    var connectionErrorRe = new RegExp([
      "remote error: Internal Server Error",
      "The remote end hung up unexpectedly",
      "Connection timed out",
      "Operation timed out",
      "Failed to connect to .* Timed out",
      "Connection reset by peer",
      "SSL_ERROR_SYSCALL",
      "The requested URL returned error: 503"
    ].join("|"));
    var missingPathspecRe = /pathspec .* did not match any file\(s\) known to git/;
    function makeError2(er) {
      const message = er.stderr;
      let gitEr;
      if (connectionErrorRe.test(message)) {
        gitEr = new GitConnectionError(message);
      } else if (missingPathspecRe.test(message)) {
        gitEr = new GitPathspecError(message);
      } else {
        gitEr = new GitUnknownError(message);
      }
      return Object.assign(gitEr, er);
    }
    module2.exports = makeError2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/git/7.0.2/0f0d88fe0a279a034086cfb4a60c7def95e6cbd9539c53449c5a9df44054937f/node_modules/@npmcli/git/lib/opts.js
var require_opts = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/git/7.0.2/0f0d88fe0a279a034086cfb4a60c7def95e6cbd9539c53449c5a9df44054937f/node_modules/@npmcli/git/lib/opts.js"(exports2, module2) {
    var fs111 = __require("node:fs");
    var os15 = __require("node:os");
    var path218 = __require("node:path");
    var ini3 = require_ini();
    var gitConfigPath = path218.join(os15.homedir(), ".gitconfig");
    var cachedConfig = null;
    var loadGitConfig = () => {
      if (cachedConfig === null) {
        try {
          cachedConfig = {};
          if (fs111.existsSync(gitConfigPath)) {
            const configContent = fs111.readFileSync(gitConfigPath, "utf-8");
            cachedConfig = ini3.parse(configContent);
          }
        } catch (error) {
          cachedConfig = {};
        }
      }
      return cachedConfig;
    };
    var checkGitConfigs = () => {
      const config = loadGitConfig();
      return {
        sshCommandSetInConfig: config?.core?.sshCommand !== void 0,
        askPassSetInConfig: config?.core?.askpass !== void 0
      };
    };
    var sshCommandSetInEnv = process.env.GIT_SSH_COMMAND !== void 0;
    var askPassSetInEnv = process.env.GIT_ASKPASS !== void 0;
    var { sshCommandSetInConfig, askPassSetInConfig } = checkGitConfigs();
    var finalGitEnv = {
      ...askPassSetInEnv || askPassSetInConfig ? {} : {
        GIT_ASKPASS: "echo"
      },
      ...sshCommandSetInEnv || sshCommandSetInConfig ? {} : {
        GIT_SSH_COMMAND: "ssh -oStrictHostKeyChecking=accept-new"
      }
    };
    module2.exports = (opts2 = {}) => ({
      stdioString: true,
      ...opts2,
      shell: false,
      env: opts2.env || { ...finalGitEnv, ...process.env }
    });
    module2.exports.loadGitConfig = loadGitConfig;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/git/7.0.2/0f0d88fe0a279a034086cfb4a60c7def95e6cbd9539c53449c5a9df44054937f/node_modules/@npmcli/git/lib/which.js
var require_which3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/git/7.0.2/0f0d88fe0a279a034086cfb4a60c7def95e6cbd9539c53449c5a9df44054937f/node_modules/@npmcli/git/lib/which.js"(exports2, module2) {
    var which4 = require_lib39();
    var gitPath;
    try {
      gitPath = which4.sync("git");
    } catch {
    }
    module2.exports = (opts2 = {}) => {
      if (opts2.git) {
        return opts2.git;
      }
      if (!gitPath || opts2.git === false) {
        return Object.assign(new Error("No git binary found in $PATH"), { code: "ENOGIT" });
      }
      return gitPath;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/git/7.0.2/0f0d88fe0a279a034086cfb4a60c7def95e6cbd9539c53449c5a9df44054937f/node_modules/@npmcli/git/lib/spawn.js
var require_spawn = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/git/7.0.2/0f0d88fe0a279a034086cfb4a60c7def95e6cbd9539c53449c5a9df44054937f/node_modules/@npmcli/git/lib/spawn.js"(exports2, module2) {
    var spawn5 = require_lib40();
    var { promiseRetry } = require_lib34();
    var { log: log3 } = require_lib9();
    var makeError2 = require_make_error();
    var makeOpts = require_opts();
    module2.exports = (gitArgs, opts2 = {}) => {
      const whichGit = require_which3();
      const gitPath = whichGit(opts2);
      if (gitPath instanceof Error) {
        return Promise.reject(gitPath);
      }
      const args = opts2.allowReplace || gitArgs[0] === "--no-replace-objects" ? gitArgs : ["--no-replace-objects", ...gitArgs];
      let retryOpts = opts2.retry;
      if (retryOpts === null || retryOpts === void 0) {
        retryOpts = {
          retries: opts2.fetchRetries || 2,
          factor: opts2.fetchRetryFactor || 10,
          maxTimeout: opts2.fetchRetryMaxtimeout || 6e4,
          minTimeout: opts2.fetchRetryMintimeout || 1e3
        };
      }
      return promiseRetry((retryFn, number) => {
        if (number !== 1) {
          log3.silly("git", `Retrying git command: ${args.join(" ")} attempt # ${number}`);
        }
        return spawn5(gitPath, args, makeOpts(opts2)).catch((er) => {
          const gitError = makeError2(er);
          if (!gitError.shouldRetry(number)) {
            throw gitError;
          }
          retryFn(gitError);
        });
      }, retryOpts);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/git/7.0.2/0f0d88fe0a279a034086cfb4a60c7def95e6cbd9539c53449c5a9df44054937f/node_modules/@npmcli/git/lib/lines-to-revs.js
var require_lines_to_revs = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/git/7.0.2/0f0d88fe0a279a034086cfb4a60c7def95e6cbd9539c53449c5a9df44054937f/node_modules/@npmcli/git/lib/lines-to-revs.js"(exports2, module2) {
    var semver56 = require_semver2();
    module2.exports = (lines) => finish(lines.reduce(linesToRevsReducer, {
      versions: {},
      "dist-tags": {},
      refs: {},
      shas: {}
    }));
    var finish = (revs) => distTags(shaList(peelTags(revs)));
    var shaList = (revs) => {
      Object.keys(revs.refs).forEach((ref) => {
        const doc = revs.refs[ref];
        if (!revs.shas[doc.sha]) {
          revs.shas[doc.sha] = [ref];
        } else {
          revs.shas[doc.sha].push(ref);
        }
      });
      return revs;
    };
    var peelTags = (revs) => {
      Object.keys(revs.refs).filter((ref) => ref.endsWith("^{}")).forEach((ref) => {
        const peeled = revs.refs[ref];
        const unpeeled = revs.refs[ref.replace(/\^\{\}$/, "")];
        if (unpeeled) {
          unpeeled.sha = peeled.sha;
          delete revs.refs[ref];
        }
      });
      return revs;
    };
    var distTags = (revs) => {
      const HEAD = revs.refs.HEAD || /* istanbul ignore next */
      {};
      const versions = Object.keys(revs.versions);
      versions.forEach((v) => {
        const ver = revs.versions[v];
        if (revs.refs.latest && ver.sha === revs.refs.latest.sha) {
          revs["dist-tags"].latest = v;
        } else if (ver.sha === HEAD.sha) {
          revs["dist-tags"].HEAD = v;
          if (!revs.refs.latest) {
            revs["dist-tags"].latest = v;
          }
        }
      });
      return revs;
    };
    var refType = (ref) => {
      if (ref.startsWith("refs/tags/")) {
        return "tag";
      }
      if (ref.startsWith("refs/heads/")) {
        return "branch";
      }
      if (ref.startsWith("refs/pull/")) {
        return "pull";
      }
      if (ref === "HEAD") {
        return "head";
      }
      return "other";
    };
    var lineToRevDoc = (line) => {
      const split2 = line.trim().split(/\s+/, 2);
      if (split2.length < 2) {
        return null;
      }
      const sha = split2[0].trim();
      const rawRef = split2[1].trim();
      const type4 = refType(rawRef);
      if (type4 === "tag") {
        const ref = rawRef.slice("refs/tags/".length);
        return { sha, ref, rawRef, type: type4 };
      }
      if (type4 === "branch") {
        const ref = rawRef.slice("refs/heads/".length);
        return { sha, ref, rawRef, type: type4 };
      }
      if (type4 === "pull") {
        const ref = rawRef.slice("refs/".length).replace(/\/head$/, "");
        return { sha, ref, rawRef, type: type4 };
      }
      if (type4 === "head") {
        const ref = "HEAD";
        return { sha, ref, rawRef, type: type4 };
      }
      return { sha, ref: rawRef, rawRef, type: type4 };
    };
    var linesToRevsReducer = (revs, line) => {
      const doc = lineToRevDoc(line);
      if (!doc) {
        return revs;
      }
      revs.refs[doc.ref] = doc;
      revs.refs[doc.rawRef] = doc;
      if (doc.type === "tag") {
        const match = !doc.ref.endsWith("^{}") && doc.ref.match(/v?(\d+\.\d+\.\d+(?:[-+].+)?)$/);
        if (match && semver56.valid(match[1], true)) {
          revs.versions[semver56.clean(match[1], true)] = doc;
        }
      }
      return revs;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/git/7.0.2/0f0d88fe0a279a034086cfb4a60c7def95e6cbd9539c53449c5a9df44054937f/node_modules/@npmcli/git/lib/revs.js
var require_revs = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/git/7.0.2/0f0d88fe0a279a034086cfb4a60c7def95e6cbd9539c53449c5a9df44054937f/node_modules/@npmcli/git/lib/revs.js"(exports2, module2) {
    var spawn5 = require_spawn();
    var { LRUCache } = require_index_min();
    var linesToRevs = require_lines_to_revs();
    var revsCache = new LRUCache({
      max: 100,
      ttl: 5 * 60 * 1e3
    });
    module2.exports = async (repo, opts2 = {}) => {
      if (!opts2.noGitRevCache) {
        const cached = revsCache.get(repo);
        if (cached) {
          return cached;
        }
      }
      const { stdout } = await spawn5(["ls-remote", repo], opts2);
      const revs = linesToRevs(stdout.trim().split("\n"));
      revsCache.set(repo, revs);
      return revs;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/git/7.0.2/0f0d88fe0a279a034086cfb4a60c7def95e6cbd9539c53449c5a9df44054937f/node_modules/@npmcli/git/lib/utils.js
var require_utils19 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/git/7.0.2/0f0d88fe0a279a034086cfb4a60c7def95e6cbd9539c53449c5a9df44054937f/node_modules/@npmcli/git/lib/utils.js"(exports2) {
    var isWindows15 = (opts2) => (opts2.fakePlatform || process.platform) === "win32";
    exports2.isWindows = isWindows15;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/npm-install-checks/8.0.0/b8e97ba0013dcb0293518f5b9d7a5e17359db5bfb7c6649e4642a63764d6adfa/node_modules/npm-install-checks/lib/current-env.js
var require_current_env = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/npm-install-checks/8.0.0/b8e97ba0013dcb0293518f5b9d7a5e17359db5bfb7c6649e4642a63764d6adfa/node_modules/npm-install-checks/lib/current-env.js"(exports2, module2) {
    var process17 = __require("node:process");
    var nodeOs = __require("node:os");
    var fs111 = __require("node:fs");
    function isMusl(file) {
      return file.includes("libc.musl-") || file.includes("ld-musl-");
    }
    function os15() {
      return process17.platform;
    }
    function cpu() {
      return process17.arch;
    }
    var LDD_PATH = "/usr/bin/ldd";
    function getFamilyFromFilesystem() {
      try {
        const content = fs111.readFileSync(LDD_PATH, "utf-8");
        if (content.includes("musl")) {
          return "musl";
        }
        if (content.includes("GNU C Library")) {
          return "glibc";
        }
        return null;
      } catch {
        return void 0;
      }
    }
    function getFamilyFromReport() {
      const originalExclude = process17.report.excludeNetwork;
      process17.report.excludeNetwork = true;
      const report3 = process17.report.getReport();
      process17.report.excludeNetwork = originalExclude;
      if (report3.header?.glibcVersionRuntime) {
        family = "glibc";
      } else if (Array.isArray(report3.sharedObjects) && report3.sharedObjects.some(isMusl)) {
        family = "musl";
      } else {
        family = null;
      }
      return family;
    }
    var family;
    function libc(osName) {
      if (osName !== "linux") {
        return void 0;
      }
      if (family === void 0) {
        family = getFamilyFromFilesystem();
        if (family === void 0) {
          family = getFamilyFromReport();
        }
      }
      return family;
    }
    function devEngines(env3 = {}) {
      const osName = env3.os || os15();
      return {
        cpu: {
          name: env3.cpu || cpu()
        },
        libc: {
          name: env3.libc || libc(osName)
        },
        os: {
          name: osName,
          version: env3.osVersion || nodeOs.release()
        },
        packageManager: {
          name: "npm",
          version: env3.npmVersion
        },
        runtime: {
          name: "node",
          version: env3.nodeVersion || process17.version
        }
      };
    }
    module2.exports = {
      cpu,
      libc,
      os: os15,
      devEngines
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/npm-install-checks/8.0.0/b8e97ba0013dcb0293518f5b9d7a5e17359db5bfb7c6649e4642a63764d6adfa/node_modules/npm-install-checks/lib/dev-engines.js
var require_dev_engines = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/npm-install-checks/8.0.0/b8e97ba0013dcb0293518f5b9d7a5e17359db5bfb7c6649e4642a63764d6adfa/node_modules/npm-install-checks/lib/dev-engines.js"(exports2, module2) {
    var satisfies3 = require_satisfies();
    var validRange3 = require_valid2();
    var recognizedOnFail = [
      "ignore",
      "warn",
      "error",
      "download"
    ];
    var recognizedProperties = [
      "name",
      "version",
      "onFail"
    ];
    var recognizedEngines = [
      "packageManager",
      "runtime",
      "cpu",
      "libc",
      "os"
    ];
    function checkDependency(wanted, current, opts2) {
      const { engine } = opts2;
      if (typeof wanted !== "object" || wanted === null || Array.isArray(wanted)) {
        throw new Error(`Invalid non-object value for "${engine}"`);
      }
      const properties = Object.keys(wanted);
      for (const prop3 of properties) {
        if (!recognizedProperties.includes(prop3)) {
          throw new Error(`Invalid property "${prop3}" for "${engine}"`);
        }
      }
      if (!properties.includes("name")) {
        throw new Error(`Missing "name" property for "${engine}"`);
      }
      if (typeof wanted.name !== "string") {
        throw new Error(`Invalid non-string value for "name" within "${engine}"`);
      }
      if (typeof current.name !== "string" || current.name === "") {
        throw new Error(`Unable to determine "name" for "${engine}"`);
      }
      if (properties.includes("onFail")) {
        if (typeof wanted.onFail !== "string") {
          throw new Error(`Invalid non-string value for "onFail" within "${engine}"`);
        }
        if (!recognizedOnFail.includes(wanted.onFail)) {
          throw new Error(`Invalid onFail value "${wanted.onFail}" for "${engine}"`);
        }
      }
      if (wanted.name !== current.name) {
        return new Error(
          `Invalid name "${wanted.name}" does not match "${current.name}" for "${engine}"`
        );
      }
      if (properties.includes("version")) {
        if (typeof wanted.version !== "string") {
          throw new Error(`Invalid non-string value for "version" within "${engine}"`);
        }
        if (typeof current.version !== "string" || current.version === "") {
          throw new Error(`Unable to determine "version" for "${engine}" "${wanted.name}"`);
        }
        if (validRange3(wanted.version)) {
          if (!satisfies3(current.version, wanted.version, opts2.semver)) {
            return new Error(
              // eslint-disable-next-line max-len
              `Invalid semver version "${wanted.version}" does not match "${current.version}" for "${engine}"`
            );
          }
        } else if (wanted.version !== current.version) {
          return new Error(
            `Invalid version "${wanted.version}" does not match "${current.version}" for "${engine}"`
          );
        }
      }
    }
    function checkDevEngines(wanted, current = {}, opts2 = {}) {
      if (typeof wanted !== "object" || wanted === null || Array.isArray(wanted)) {
        throw new Error(`Invalid non-object value for "devEngines"`);
      }
      const errors2 = [];
      for (const engine of Object.keys(wanted)) {
        if (!recognizedEngines.includes(engine)) {
          throw new Error(`Invalid property "devEngines.${engine}"`);
        }
        const dependencyAsAuthored = wanted[engine];
        const dependencies = [dependencyAsAuthored].flat();
        const currentEngine = current[engine] || {};
        if (dependencies.length === 0) {
          continue;
        }
        const depErrors = [];
        for (const dep of dependencies) {
          const result2 = checkDependency(dep, currentEngine, { ...opts2, engine });
          if (result2) {
            depErrors.push(result2);
          }
        }
        const invalid = depErrors.length === dependencies.length;
        if (invalid) {
          const lastDependency = dependencies[dependencies.length - 1];
          let onFail = lastDependency.onFail || "error";
          if (onFail === "download") {
            onFail = "error";
          }
          const err = Object.assign(new Error(`Invalid devEngines.${engine}`), {
            errors: depErrors,
            engine,
            isWarn: onFail === "warn",
            isError: onFail === "error",
            current: currentEngine,
            required: dependencyAsAuthored
          });
          errors2.push(err);
        }
      }
      return errors2;
    }
    module2.exports = {
      checkDevEngines
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/npm-install-checks/8.0.0/b8e97ba0013dcb0293518f5b9d7a5e17359db5bfb7c6649e4642a63764d6adfa/node_modules/npm-install-checks/lib/index.js
var require_lib41 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/npm-install-checks/8.0.0/b8e97ba0013dcb0293518f5b9d7a5e17359db5bfb7c6649e4642a63764d6adfa/node_modules/npm-install-checks/lib/index.js"(exports2, module2) {
    var semver56 = require_semver2();
    var currentEnv = require_current_env();
    var { checkDevEngines } = require_dev_engines();
    var checkEngine2 = (target2, npmVer, nodeVer, force = false) => {
      const nodev = force ? null : nodeVer;
      const eng = target2.engines;
      const opt = { includePrerelease: true };
      if (!eng) {
        return;
      }
      const nodeFail = nodev && eng.node && !semver56.satisfies(nodev, eng.node, opt);
      const npmFail = npmVer && eng.npm && !semver56.satisfies(npmVer, eng.npm, opt);
      if (nodeFail || npmFail) {
        throw Object.assign(new Error("Unsupported engine"), {
          pkgid: target2._id,
          current: { node: nodeVer, npm: npmVer },
          required: eng,
          code: "EBADENGINE"
        });
      }
    };
    var checkPlatform2 = (target2, force = false, environment = {}) => {
      if (force) {
        return;
      }
      const os15 = environment.os || currentEnv.os();
      const cpu = environment.cpu || currentEnv.cpu();
      const libc = environment.libc || currentEnv.libc(os15);
      const osOk = target2.os ? checkList2(os15, target2.os) : true;
      const cpuOk = target2.cpu ? checkList2(cpu, target2.cpu) : true;
      let libcOk = target2.libc ? checkList2(libc, target2.libc) : true;
      if (target2.libc && !libc) {
        libcOk = false;
      }
      if (!osOk || !cpuOk || !libcOk) {
        throw Object.assign(new Error("Unsupported platform"), {
          pkgid: target2._id,
          current: {
            os: os15,
            cpu,
            libc
          },
          required: {
            os: target2.os,
            cpu: target2.cpu,
            libc: target2.libc
          },
          code: "EBADPLATFORM"
        });
      }
    };
    var checkList2 = (value, list2) => {
      if (typeof list2 === "string") {
        list2 = [list2];
      }
      if (list2.length === 1 && list2[0] === "any") {
        return true;
      }
      let negated = 0;
      let match = false;
      for (const entry of list2) {
        const negate = entry.charAt(0) === "!";
        const test = negate ? entry.slice(1) : entry;
        if (negate) {
          negated++;
          if (value === test) {
            return false;
          }
        } else {
          match = match || value === test;
        }
      }
      return match || negated === list2.length;
    };
    module2.exports = {
      checkEngine: checkEngine2,
      checkPlatform: checkPlatform2,
      checkDevEngines,
      currentEnv
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/npm-normalize-package-bin/5.0.0/6e46be706083c7615883d1f61943890dfd3bba19cf16eef68eb1447ec4667f5b/node_modules/npm-normalize-package-bin/lib/index.js
var require_lib42 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/npm-normalize-package-bin/5.0.0/6e46be706083c7615883d1f61943890dfd3bba19cf16eef68eb1447ec4667f5b/node_modules/npm-normalize-package-bin/lib/index.js"(exports2, module2) {
    var { join: join3, basename: basename2 } = __require("path");
    var normalize11 = (pkg) => !pkg.bin ? removeBin2(pkg) : typeof pkg.bin === "string" ? normalizeString2(pkg) : Array.isArray(pkg.bin) ? normalizeArray(pkg) : typeof pkg.bin === "object" ? normalizeObject(pkg) : removeBin2(pkg);
    var normalizeString2 = (pkg) => {
      if (!pkg.name) {
        return removeBin2(pkg);
      }
      pkg.bin = { [pkg.name]: pkg.bin };
      return normalizeObject(pkg);
    };
    var normalizeArray = (pkg) => {
      pkg.bin = pkg.bin.reduce((acc, k2) => {
        acc[basename2(k2)] = k2;
        return acc;
      }, {});
      return normalizeObject(pkg);
    };
    var removeBin2 = (pkg) => {
      delete pkg.bin;
      return pkg;
    };
    var normalizeObject = (pkg) => {
      const orig = pkg.bin;
      const clean = {};
      let hasBins = false;
      Object.keys(orig).forEach((binKey) => {
        const base = join3("/", basename2(binKey.replace(/\\|:/g, "/"))).slice(1);
        if (typeof orig[binKey] !== "string" || !base) {
          return;
        }
        const binTarget = join3("/", orig[binKey].replace(/\\/g, "/")).replace(/\\/g, "/").slice(1);
        if (!binTarget) {
          return;
        }
        clean[base] = binTarget;
        hasBins = true;
      });
      if (hasBins) {
        pkg.bin = clean;
      } else {
        delete pkg.bin;
      }
      return pkg;
    };
    module2.exports = normalize11;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/npm-pick-manifest/11.0.3/f089b2a63db3ba161a2acf5bc8d84729c648196ad00bd8f386d694299787368f/node_modules/npm-pick-manifest/lib/index.js
var require_lib43 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/npm-pick-manifest/11.0.3/f089b2a63db3ba161a2acf5bc8d84729c648196ad00bd8f386d694299787368f/node_modules/npm-pick-manifest/lib/index.js"(exports2, module2) {
    "use strict";
    var npa12 = require_npa2();
    var semver56 = require_semver2();
    var { checkEngine: checkEngine2 } = require_lib41();
    var normalizeBin = require_lib42();
    var engineOk = (manifest, npmVersion, nodeVersion) => {
      try {
        checkEngine2(manifest, npmVersion, nodeVersion);
        return true;
      } catch (_) {
        return false;
      }
    };
    var isBefore = (verTimes, ver, time) => !verTimes || !verTimes[ver] || Date.parse(verTimes[ver]) <= time;
    var avoidSemverOpt = { includePrerelease: true, loose: true };
    var shouldAvoid = (ver, avoid) => avoid && semver56.satisfies(ver, avoid, avoidSemverOpt);
    var decorateAvoid = (result2, avoid) => result2 && shouldAvoid(result2.version, avoid) ? { ...result2, _shouldAvoid: true } : result2;
    var pickManifest = (packument, wanted, opts2) => {
      const {
        defaultTag = "latest",
        before = null,
        nodeVersion = process.version,
        npmVersion = null,
        includeStaged = false,
        avoid = null,
        avoidStrict = false
      } = opts2;
      const { name, time: verTimes } = packument;
      const versions = packument.versions || {};
      if (avoidStrict) {
        const looseOpts = {
          ...opts2,
          avoidStrict: false
        };
        const result2 = pickManifest(packument, wanted, looseOpts);
        if (!result2 || !result2._shouldAvoid) {
          return result2;
        }
        const caret = pickManifest(packument, `^${result2.version}`, looseOpts);
        if (!caret || !caret._shouldAvoid) {
          return {
            ...caret,
            _outsideDependencyRange: true,
            _isSemVerMajor: false
          };
        }
        const star = pickManifest(packument, "*", looseOpts);
        if (!star || !star._shouldAvoid) {
          return {
            ...star,
            _outsideDependencyRange: true,
            _isSemVerMajor: true
          };
        }
        throw Object.assign(new Error(`No avoidable versions for ${name}`), {
          code: "ETARGET",
          name,
          wanted,
          avoid,
          before,
          versions: Object.keys(versions)
        });
      }
      const staged = includeStaged && packument.stagedVersions && packument.stagedVersions.versions || {};
      const restricted = packument.policyRestrictions && packument.policyRestrictions.versions || {};
      const time = before && verTimes ? +new Date(before) : Infinity;
      const spec = npa12.resolve(name, wanted || defaultTag);
      const type4 = spec.type;
      const distTags = packument["dist-tags"] || {};
      if (type4 !== "tag" && type4 !== "version" && type4 !== "range") {
        throw new Error("Only tag, version, and range are supported");
      }
      if (wanted && type4 === "tag") {
        const ver = distTags[wanted];
        if (isBefore(verTimes, ver, time)) {
          return decorateAvoid(versions[ver] || staged[ver] || restricted[ver], avoid);
        } else {
          return pickManifest(packument, `<=${ver}`, opts2);
        }
      }
      if (wanted && type4 === "version") {
        const ver = semver56.clean(wanted, { loose: true });
        const mani = versions[ver] || staged[ver] || restricted[ver];
        return isBefore(verTimes, ver, time) ? decorateAvoid(mani, avoid) : null;
      }
      const range = type4 === "range" ? wanted : "*";
      const defaultVer = distTags[defaultTag];
      if (defaultVer && (range === "*" || semver56.satisfies(defaultVer, range, { loose: true })) && !restricted[defaultVer] && !shouldAvoid(defaultVer, avoid)) {
        const mani = versions[defaultVer];
        const ok = mani && isBefore(verTimes, defaultVer, time) && engineOk(mani, npmVersion, nodeVersion) && !mani.deprecated && !staged[defaultVer];
        if (ok) {
          return mani;
        }
      }
      const allEntries = Object.entries(versions).concat(Object.entries(staged)).concat(Object.entries(restricted)).filter(([ver]) => isBefore(verTimes, ver, time));
      if (!allEntries.length) {
        throw Object.assign(new Error(`No versions available for ${name}`), {
          code: "ENOVERSIONS",
          name,
          type: type4,
          wanted,
          before,
          versions: Object.keys(versions)
        });
      }
      const sortSemverOpt = { loose: true };
      const entries = allEntries.filter(([ver]) => semver56.satisfies(ver, range, { loose: true })).sort((a2, b) => {
        const [vera, mania] = a2;
        const [verb, manib] = b;
        const notavoida = !shouldAvoid(vera, avoid);
        const notavoidb = !shouldAvoid(verb, avoid);
        const notrestra = !restricted[vera];
        const notrestrb = !restricted[verb];
        const notstagea = !staged[vera];
        const notstageb = !staged[verb];
        const notdepra = !mania.deprecated;
        const notdeprb = !manib.deprecated;
        const enginea = engineOk(mania, npmVersion, nodeVersion);
        const engineb = engineOk(manib, npmVersion, nodeVersion);
        return notavoidb - notavoida || notrestrb - notrestra || notstageb - notstagea || (notdeprb && engineb) - (notdepra && enginea) || engineb - enginea || notdeprb - notdepra || semver56.rcompare(vera, verb, sortSemverOpt);
      });
      return decorateAvoid(entries[0] && entries[0][1], avoid);
    };
    module2.exports = (packument, wanted, opts2 = {}) => {
      const mani = pickManifest(packument, wanted, opts2);
      const picked = mani && normalizeBin(mani);
      const policyRestrictions = packument.policyRestrictions;
      const restricted = policyRestrictions && policyRestrictions.versions || {};
      if (picked && !restricted[picked.version]) {
        return picked;
      }
      const { before = null, defaultTag = "latest" } = opts2;
      const bstr = before ? new Date(before).toLocaleString() : "";
      const { name } = packument;
      const pckg = `${name}@${wanted}` + (before ? ` with a date before ${bstr}` : "");
      const isForbidden = picked && !!restricted[picked.version];
      const polMsg = isForbidden ? policyRestrictions.message : "";
      const msg = !isForbidden ? `No matching version found for ${pckg}.` : `Could not download ${pckg} due to policy violations:
${polMsg}`;
      const code = isForbidden ? "E403" : "ETARGET";
      throw Object.assign(new Error(msg), {
        code,
        type: npa12.resolve(packument.name, wanted).type,
        wanted,
        versions: Object.keys(packument.versions ?? {}),
        name,
        distTags: packument["dist-tags"],
        defaultTag
      });
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/git/7.0.2/0f0d88fe0a279a034086cfb4a60c7def95e6cbd9539c53449c5a9df44054937f/node_modules/@npmcli/git/lib/clone.js
var require_clone4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/git/7.0.2/0f0d88fe0a279a034086cfb4a60c7def95e6cbd9539c53449c5a9df44054937f/node_modules/@npmcli/git/lib/clone.js"(exports2, module2) {
    var shallowHosts = /* @__PURE__ */ new Set([
      "github.com",
      "gist.github.com",
      "gitlab.com",
      "bitbucket.com",
      "bitbucket.org"
    ]);
    var { parse: parse7 } = __require("url");
    var path218 = __require("path");
    var getRevs = require_revs();
    var spawn5 = require_spawn();
    var { isWindows: isWindows15 } = require_utils19();
    var pickManifest = require_lib43();
    var fs111 = __require("fs/promises");
    module2.exports = (repo, ref = "HEAD", target2 = null, opts2 = {}) => getRevs(repo, opts2).then((revs) => clone3(
      repo,
      revs,
      ref,
      resolveRef2(revs, ref, opts2),
      target2 || defaultTarget(repo, opts2.cwd),
      opts2
    ));
    var maybeShallow = (repo, opts2) => {
      if (opts2.gitShallow === false || opts2.gitShallow) {
        return opts2.gitShallow;
      }
      return shallowHosts.has(parse7(repo).host);
    };
    var defaultTarget = (repo, cwd = process.cwd()) => path218.resolve(cwd, path218.basename(repo.replace(/[/\\]?\.git$/, "")));
    var clone3 = (repo, revs, ref, revDoc, target2, opts2) => {
      if (!revDoc) {
        return unresolved(repo, ref, target2, opts2);
      }
      if (revDoc.sha === revs.refs.HEAD.sha) {
        return plain(repo, revDoc, target2, opts2);
      }
      if (revDoc.type === "tag" || revDoc.type === "branch") {
        return branch(repo, revDoc, target2, opts2);
      }
      return other(repo, revDoc, target2, opts2);
    };
    var resolveRef2 = (revs, ref, opts2) => {
      const { spec = {} } = opts2;
      ref = spec.gitCommittish || ref;
      if (!revs) {
        return null;
      }
      if (spec.gitRange) {
        return pickManifest(revs, spec.gitRange, opts2);
      }
      if (!ref) {
        return revs.refs.HEAD;
      }
      if (revs.refs[ref]) {
        return revs.refs[ref];
      }
      if (revs.shas[ref]) {
        return revs.refs[revs.shas[ref][0]];
      }
      return null;
    };
    var other = (repo, revDoc, target2, opts2) => {
      const shallow = maybeShallow(repo, opts2);
      const fetchOrigin = ["fetch", "origin", revDoc.rawRef].concat(shallow ? ["--depth=1"] : []);
      const git = (args) => spawn5(args, { ...opts2, cwd: target2 });
      return fs111.mkdir(target2, { recursive: true }).then(() => git(["init"])).then(() => isWindows15(opts2) ? git(["config", "--local", "--add", "core.longpaths", "true"]) : null).then(() => git(["remote", "add", "origin", repo])).then(() => git(fetchOrigin)).then(() => git(["checkout", revDoc.sha])).then(() => updateSubmodules(target2, opts2)).then(() => revDoc.sha);
    };
    var branch = (repo, revDoc, target2, opts2) => {
      const args = [
        "clone",
        "-b",
        revDoc.ref,
        repo,
        target2,
        "--recurse-submodules"
      ];
      if (maybeShallow(repo, opts2)) {
        args.push("--depth=1");
      }
      if (isWindows15(opts2)) {
        args.push("--config", "core.longpaths=true");
      }
      return spawn5(args, opts2).then(() => revDoc.sha);
    };
    var plain = (repo, revDoc, target2, opts2) => {
      const args = [
        "clone",
        repo,
        target2,
        "--recurse-submodules"
      ];
      if (maybeShallow(repo, opts2)) {
        args.push("--depth=1");
      }
      if (isWindows15(opts2)) {
        args.push("--config", "core.longpaths=true");
      }
      return spawn5(args, opts2).then(() => revDoc.sha);
    };
    var updateSubmodules = async (target2, opts2) => {
      const hasSubmodules = await fs111.stat(`${target2}/.gitmodules`).then(() => true).catch(() => false);
      if (!hasSubmodules) {
        return null;
      }
      return spawn5([
        "submodule",
        "update",
        "-q",
        "--init",
        "--recursive"
      ], { ...opts2, cwd: target2 });
    };
    var unresolved = (repo, ref, target2, opts2) => {
      const lp = isWindows15(opts2) ? ["--config", "core.longpaths=true"] : [];
      const cloneArgs = ["clone", "--mirror", "-q", repo, target2 + "/.git"];
      const git = (args) => spawn5(args, { ...opts2, cwd: target2 });
      return fs111.mkdir(target2, { recursive: true }).then(() => git(cloneArgs.concat(lp))).then(() => git(["init"])).then(() => git(["checkout", ref])).then(() => updateSubmodules(target2, opts2)).then(() => git(["rev-parse", "--revs-only", "HEAD"])).then(({ stdout }) => stdout.trim());
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/git/7.0.2/0f0d88fe0a279a034086cfb4a60c7def95e6cbd9539c53449c5a9df44054937f/node_modules/@npmcli/git/lib/is.js
var require_is = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/git/7.0.2/0f0d88fe0a279a034086cfb4a60c7def95e6cbd9539c53449c5a9df44054937f/node_modules/@npmcli/git/lib/is.js"(exports2, module2) {
    var { stat: stat2 } = __require("fs/promises");
    module2.exports = ({ cwd = process.cwd() } = {}) => stat2(cwd + "/.git").then(() => true, () => false);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/git/7.0.2/0f0d88fe0a279a034086cfb4a60c7def95e6cbd9539c53449c5a9df44054937f/node_modules/@npmcli/git/lib/find.js
var require_find2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/git/7.0.2/0f0d88fe0a279a034086cfb4a60c7def95e6cbd9539c53449c5a9df44054937f/node_modules/@npmcli/git/lib/find.js"(exports2, module2) {
    var is = require_is();
    var { dirname: dirname2 } = __require("path");
    module2.exports = async ({ cwd = process.cwd(), root } = {}) => {
      while (true) {
        if (await is({ cwd })) {
          return cwd;
        }
        const next2 = dirname2(cwd);
        if (cwd === root || cwd === next2) {
          return null;
        }
        cwd = next2;
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/git/7.0.2/0f0d88fe0a279a034086cfb4a60c7def95e6cbd9539c53449c5a9df44054937f/node_modules/@npmcli/git/lib/is-clean.js
var require_is_clean = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/git/7.0.2/0f0d88fe0a279a034086cfb4a60c7def95e6cbd9539c53449c5a9df44054937f/node_modules/@npmcli/git/lib/is-clean.js"(exports2, module2) {
    var spawn5 = require_spawn();
    module2.exports = (opts2 = {}) => spawn5(["status", "--porcelain=v1", "-uno"], opts2).then((res) => !res.stdout.trim().split(/\r?\n+/).map((l) => l.trim()).filter((l) => l).length);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/git/7.0.2/0f0d88fe0a279a034086cfb4a60c7def95e6cbd9539c53449c5a9df44054937f/node_modules/@npmcli/git/lib/index.js
var require_lib44 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/git/7.0.2/0f0d88fe0a279a034086cfb4a60c7def95e6cbd9539c53449c5a9df44054937f/node_modules/@npmcli/git/lib/index.js"(exports2, module2) {
    module2.exports = {
      clone: require_clone4(),
      revs: require_revs(),
      spawn: require_spawn(),
      is: require_is(),
      find: require_find2(),
      isClean: require_is_clean(),
      errors: require_errors11()
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/package-json/7.0.5/3e07be5488b954e650e89ad062bed22ad08e5abd9f8df86e78ce0ab5d2db34d4/node_modules/@npmcli/package-json/lib/normalize.js
var require_normalize2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/package-json/7.0.5/3e07be5488b954e650e89ad062bed22ad08e5abd9f8df86e78ce0ab5d2db34d4/node_modules/@npmcli/package-json/lib/normalize.js"(exports2, module2) {
    var valid2 = require_valid();
    var clean = require_clean();
    var fs111 = __require("node:fs/promises");
    var path218 = __require("node:path");
    var { log: log3 } = require_lib9();
    var moduleBuiltin = __require("node:module");
    var _hostedGitInfo;
    function lazyHostedGitInfo() {
      if (!_hostedGitInfo) {
        _hostedGitInfo = require_lib11();
      }
      return _hostedGitInfo;
    }
    var _glob;
    function lazyLoadGlob() {
      if (!_glob) {
        _glob = require_index_min3().glob;
      }
      return _glob;
    }
    function normalizePackageBin(pkg, changes) {
      if (pkg.bin) {
        if (typeof pkg.bin === "string" && pkg.name) {
          changes?.push('"bin" was converted to an object');
          pkg.bin = { [pkg.name]: pkg.bin };
        } else if (Array.isArray(pkg.bin)) {
          changes?.push('"bin" was converted to an object');
          pkg.bin = pkg.bin.reduce((acc, k2) => {
            acc[path218.basename(k2)] = k2;
            return acc;
          }, {});
        }
        if (typeof pkg.bin === "object") {
          for (const binKey in pkg.bin) {
            if (typeof pkg.bin[binKey] !== "string") {
              delete pkg.bin[binKey];
              changes?.push(`removed invalid "bin[${binKey}]"`);
              continue;
            }
            const base = path218.basename(secureAndUnixifyPath(binKey));
            if (!base) {
              delete pkg.bin[binKey];
              changes?.push(`removed invalid "bin[${binKey}]"`);
              continue;
            }
            const binTarget = secureAndUnixifyPath(pkg.bin[binKey]);
            if (!binTarget) {
              delete pkg.bin[binKey];
              changes?.push(`removed invalid "bin[${binKey}]"`);
              continue;
            }
            if (base !== binKey) {
              delete pkg.bin[binKey];
              changes?.push(`"bin[${binKey}]" was renamed to "bin[${base}]"`);
            }
            if (binTarget !== pkg.bin[binKey]) {
              changes?.push(`"bin[${base}]" script name ${binTarget} was invalid and removed`);
            }
            pkg.bin[base] = binTarget;
          }
          if (Object.keys(pkg.bin).length === 0) {
            changes?.push('empty "bin" was removed');
            delete pkg.bin;
          }
          return pkg;
        }
      }
      delete pkg.bin;
    }
    function normalizePackageMan(pkg, changes) {
      if (pkg.man) {
        const mans = [];
        for (const man of Array.isArray(pkg.man) ? pkg.man : [pkg.man]) {
          if (typeof man !== "string") {
            changes?.push(`removed invalid "man [${man}]"`);
          } else {
            mans.push(secureAndUnixifyPath(man));
          }
        }
        if (!mans.length) {
          changes?.push('empty "man" was removed');
        } else {
          pkg.man = mans;
          return pkg;
        }
      }
      delete pkg.man;
    }
    function isCorrectlyEncodedName(spec) {
      return !spec.match(/[/@\s+%:]/) && spec === encodeURIComponent(spec);
    }
    function isValidScopedPackageName(spec) {
      if (spec.charAt(0) !== "@") {
        return false;
      }
      const rest = spec.slice(1).split("/");
      if (rest.length !== 2) {
        return false;
      }
      return rest[0] && rest[1] && rest[0] === encodeURIComponent(rest[0]) && rest[1] === encodeURIComponent(rest[1]);
    }
    function unixifyPath(ref) {
      return ref.replace(/\\|:/g, "/");
    }
    function secureAndUnixifyPath(ref) {
      const secured = unixifyPath(path218.join(".", path218.join("/", unixifyPath(ref))));
      return secured.startsWith("./") ? "" : secured;
    }
    function syncSteps(pkg, { strict, steps, changes, allowLegacyCase }) {
      const data = pkg.content;
      const pkgId = `${data.name ?? ""}@${data.version ?? ""}`;
      if (steps.includes("fixName") || steps.includes("fixNameField") || steps.includes("normalizeData")) {
        if (!data.name && !strict) {
          changes?.push('Missing "name" field was set to an empty string');
          data.name = "";
        } else {
          if (typeof data.name !== "string") {
            throw new Error("name field must be a string.");
          }
          if (!strict) {
            const name = data.name.trim();
            if (data.name !== name) {
              changes?.push(`Whitespace was trimmed from "name"`);
              data.name = name;
            }
          }
          if (data.name.startsWith(".") || !(isValidScopedPackageName(data.name) || isCorrectlyEncodedName(data.name)) || strict && !allowLegacyCase && data.name !== data.name.toLowerCase() || data.name.toLowerCase() === "node_modules" || data.name.toLowerCase() === "favicon.ico") {
            throw new Error("Invalid name: " + JSON.stringify(data.name));
          }
        }
      }
      if (steps.includes("fixName")) {
        if (moduleBuiltin.builtinModules.includes(data.name)) {
          log3.warn("package-json", pkgId, `Package name "${data.name}" conflicts with a Node.js built-in module name`);
        }
      }
      if (steps.includes("fixVersionField") || steps.includes("normalizeData")) {
        const loose = !strict;
        if (!data.version) {
          data.version = "";
        } else {
          if (!valid2(data.version, loose)) {
            throw new Error(`Invalid version: "${data.version}"`);
          }
          const version2 = clean(data.version, loose);
          if (version2 !== data.version) {
            changes?.push(`"version" was cleaned and set to "${version2}"`);
            data.version = version2;
          }
        }
      }
      if (steps.includes("_attributes")) {
        for (const key in data) {
          if (key.startsWith("_")) {
            changes?.push(`"${key}" was removed`);
            delete pkg.content[key];
          }
        }
      }
      if (steps.includes("_id")) {
        if (data.name && data.version) {
          changes?.push(`"_id" was set to ${pkgId}`);
          data._id = pkgId;
        }
      }
      if (steps.includes("bundledDependencies")) {
        if (data.bundleDependencies === void 0 && data.bundledDependencies !== void 0) {
          data.bundleDependencies = data.bundledDependencies;
          changes?.push(`Deleted incorrect "bundledDependencies"`);
        }
        delete data.bundledDependencies;
      }
      if (steps.includes("bundleDependencies")) {
        const bd = data.bundleDependencies;
        if (bd === false && !steps.includes("bundleDependenciesDeleteFalse")) {
          changes?.push(`"bundleDependencies" was changed from "false" to "[]"`);
          data.bundleDependencies = [];
        } else if (bd === true) {
          changes?.push(`"bundleDependencies" was auto-populated from "dependencies"`);
          data.bundleDependencies = Object.keys(data.dependencies || {});
        } else if (bd && typeof bd === "object") {
          if (!Array.isArray(bd)) {
            changes?.push(`"bundleDependencies" was changed from an object to an array`);
            data.bundleDependencies = Object.keys(bd);
          }
        } else if ("bundleDependencies" in data) {
          changes?.push(`"bundleDependencies" was removed`);
          delete data.bundleDependencies;
        }
      }
      if (steps.includes("optionalDedupe")) {
        if (data.dependencies && data.optionalDependencies && typeof data.optionalDependencies === "object") {
          for (const name in data.optionalDependencies) {
            changes?.push(`optionalDependencies."${name}" was removed`);
            delete data.dependencies[name];
          }
          if (!Object.keys(data.dependencies).length) {
            changes?.push(`Empty "optionalDependencies" was removed`);
            delete data.dependencies;
          }
        }
      }
      if ((steps.includes("scripts") || steps.includes("scriptpath")) && data.scripts !== void 0) {
        const spre = /^(\.[/\\])?node_modules[/\\].bin[\\/]/;
        if (typeof data.scripts === "object") {
          for (const name in data.scripts) {
            if (typeof data.scripts[name] !== "string") {
              delete data.scripts[name];
              changes?.push(`Invalid scripts."${name}" was removed`);
            } else if (steps.includes("scriptpath") && spre.test(data.scripts[name])) {
              data.scripts[name] = data.scripts[name].replace(spre, "");
              changes?.push(`scripts entry "${name}" was fixed to remove node_modules/.bin reference`);
            }
          }
        } else {
          changes?.push(`Removed invalid "scripts"`);
          delete data.scripts;
        }
      }
      if (steps.includes("funding")) {
        if (data.funding && typeof data.funding === "string") {
          data.funding = { url: data.funding };
          changes?.push(`"funding" was changed to an object with a url attribute`);
        }
      }
      if (steps.includes("fixRepositoryField") || steps.includes("normalizeData")) {
        if (data.repositories) {
          changes?.push(`"repository" was set to the first entry in "repositories" (${data.repository})`);
          data.repository = data.repositories[0];
        }
        if (data.repository) {
          if (typeof data.repository === "string") {
            changes?.push('"repository" was changed from a string to an object');
            data.repository = {
              type: "git",
              url: data.repository
            };
          }
          if (data.repository.url) {
            const hosted = lazyHostedGitInfo().fromUrl(data.repository.url);
            let r;
            if (hosted) {
              if (hosted.getDefaultRepresentation() === "shortcut") {
                r = hosted.https();
              } else {
                r = hosted.toString();
              }
              if (r !== data.repository.url) {
                changes?.push(`"repository.url" was normalized to "${r}"`);
                data.repository.url = r;
              }
            }
          }
        }
      }
      if (steps.includes("fixDependencies") || steps.includes("normalizeData")) {
        for (const type4 of ["dependencies", "devDependencies", "optionalDependencies"]) {
          if (data[type4]) {
            let secondWarning = true;
            if (typeof data[type4] === "string") {
              changes?.push(`"${type4}" was converted from a string into an object`);
              data[type4] = data[type4].trim().split(/[\n\r\s\t ,]+/);
              secondWarning = false;
            }
            if (Array.isArray(data[type4])) {
              if (secondWarning) {
                changes?.push(`"${type4}" was converted from an array into an object`);
              }
              const o2 = {};
              for (const d of data[type4]) {
                if (typeof d === "string") {
                  const dep = d.trim().split(/(:?[@\s><=])/);
                  const dn = dep.shift();
                  const dv = dep.join("").replace(/^@/, "").trim();
                  o2[dn] = dv;
                }
              }
              data[type4] = o2;
            }
          }
        }
        for (const deps of ["dependencies", "devDependencies"]) {
          if (deps in data) {
            if (!data[deps] || typeof data[deps] !== "object") {
              changes?.push(`Removed invalid "${deps}"`);
              delete data[deps];
            } else {
              for (const d in data[deps]) {
                const r = data[deps][d];
                if (typeof r !== "string") {
                  changes?.push(`Removed invalid "${deps}.${d}"`);
                  delete data[deps][d];
                }
                const hosted = lazyHostedGitInfo().fromUrl(data[deps][d])?.toString();
                if (hosted && hosted !== data[deps][d]) {
                  changes?.push(`Normalized git reference to "${deps}.${d}"`);
                  data[deps][d] = hosted.toString();
                }
              }
            }
          }
        }
      }
      if (steps.includes("normalizeData")) {
        const { normalizeData } = require_normalize_data();
        normalizeData(data, changes);
      }
    }
    async function asyncSteps(pkg, { steps, root, changes }) {
      const data = pkg.content;
      const scripts = data.scripts || {};
      const pkgId = `${data.name ?? ""}@${data.version ?? ""}`;
      if (steps.includes("gypfile")) {
        if (!scripts.install && !scripts.preinstall && data.gypfile !== false) {
          const files = await lazyLoadGlob()("*.gyp", { cwd: pkg.path });
          if (files.length) {
            scripts.install = "node-gyp rebuild";
            data.scripts = scripts;
            data.gypfile = true;
            changes?.push(`"scripts.install" was set to "node-gyp rebuild"`);
            changes?.push(`"gypfile" was set to "true"`);
          }
        }
      }
      if (steps.includes("serverjs") && !scripts.start) {
        try {
          await fs111.access(path218.join(pkg.path, "server.js"));
          scripts.start = "node server.js";
          data.scripts = scripts;
          changes?.push('"scripts.start" was set to "node server.js"');
        } catch {
        }
      }
      if (steps.includes("authors") && !data.contributors) {
        try {
          const authorData = await fs111.readFile(path218.join(pkg.path, "AUTHORS"), "utf8");
          const authors = authorData.split(/\r?\n/g).map((line) => line.replace(/^\s*#.*$/, "").trim()).filter((line) => line);
          data.contributors = authors;
          changes?.push('"contributors" was auto-populated with the contents of the "AUTHORS" file');
        } catch {
        }
      }
      if (steps.includes("readme") && !data.readme) {
        const mdre = /\.m?a?r?k?d?o?w?n?$/i;
        const files = await lazyLoadGlob()("{README,README.*}", {
          cwd: pkg.path,
          nocase: true,
          mark: true
        });
        let readmeFile;
        for (const file of files) {
          if (!file.endsWith(path218.sep)) {
            if (file.match(mdre)) {
              readmeFile = file;
              break;
            }
            if (file.endsWith("README")) {
              readmeFile = file;
            }
          }
        }
        if (readmeFile) {
          const readmeData = await fs111.readFile(path218.join(pkg.path, readmeFile), "utf8");
          data.readme = readmeData;
          data.readmeFilename = readmeFile;
          changes?.push(`"readme" was set to the contents of ${readmeFile}`);
          changes?.push(`"readmeFilename" was set to ${readmeFile}`);
        }
        if (!data.readme) {
          data.readme = "ERROR: No README data found!";
        }
      }
      if (steps.includes("mans")) {
        if (data.directories?.man && !data.man) {
          const manDir = secureAndUnixifyPath(data.directories.man);
          const cwd = path218.resolve(pkg.path, manDir);
          const files = await lazyLoadGlob()("**/*.[0-9]", { cwd });
          data.man = files.map(
            (man) => path218.relative(pkg.path, path218.join(cwd, man)).split(path218.sep).join("/")
          );
        }
        normalizePackageMan(data, changes);
      }
      if (steps.includes("binDir") && data.directories?.bin && !data.bin && pkg.path) {
        const binPath = secureAndUnixifyPath(data.directories.bin);
        const bins = await lazyLoadGlob()("**", { cwd: path218.resolve(pkg.path, binPath) });
        data.bin = bins.reduce((acc, binFile) => {
          if (binFile && !binFile.startsWith(".")) {
            const binName = path218.basename(binFile);
            acc[binName] = `${binPath}/${secureAndUnixifyPath(binFile)}`;
          }
          return acc;
        }, {});
      } else if (steps.includes("bin") || steps.includes("binDir") || steps.includes("binRefs")) {
        normalizePackageBin(data, changes);
      }
      if (steps.includes("gitHead") && !data.gitHead) {
        const git = require_lib44();
        const gitRoot = await git.find({ cwd: pkg.path, root });
        let head2;
        if (gitRoot) {
          try {
            head2 = await fs111.readFile(path218.resolve(gitRoot, ".git/HEAD"), "utf8");
          } catch (err) {
          }
        }
        let headData;
        if (head2) {
          if (head2.startsWith("ref: ")) {
            const headRef = head2.replace(/^ref: /, "").trim();
            const headFile = path218.resolve(gitRoot, ".git", headRef);
            try {
              headData = await fs111.readFile(headFile, "utf8");
              headData = headData.replace(/^ref: /, "").trim();
            } catch (err) {
            }
            if (!headData) {
              const packFile = path218.resolve(gitRoot, ".git/packed-refs");
              try {
                let refs = await fs111.readFile(packFile, "utf8");
                if (refs) {
                  refs = refs.split("\n");
                  for (let i2 = 0; i2 < refs.length; i2++) {
                    const match = refs[i2].match(/^([0-9a-f]{40}) (.+)$/);
                    if (match && match[2].trim() === headRef) {
                      headData = match[1];
                      break;
                    }
                  }
                }
              } catch {
              }
            }
          } else {
            headData = head2.trim();
          }
        }
        if (headData) {
          data.gitHead = headData;
        }
      }
      if (steps.includes("fillTypes")) {
        const index = data.main || "index.js";
        if (typeof index !== "string") {
          throw new TypeError('The "main" attribute must be of type string.');
        }
        const extless = path218.join(path218.dirname(index), path218.basename(index, path218.extname(index)));
        const dts = `./${extless}.d.ts`;
        const hasDTSFields = "types" in data || "typings" in data;
        if (!hasDTSFields) {
          try {
            await fs111.access(path218.join(pkg.path, dts));
            data.types = dts.split(path218.sep).join("/");
          } catch {
          }
        }
      }
      if (steps.includes("binRefs") && data.bin instanceof Object) {
        for (const key in data.bin) {
          try {
            await fs111.access(path218.resolve(pkg.path, data.bin[key]));
          } catch {
            log3.warn("package-json", pkgId, `No bin file found at ${data.bin[key]}`);
          }
        }
      }
    }
    async function normalize11(pkg, opts2) {
      if (!pkg.content) {
        throw new Error("Can not normalize without content");
      }
      await asyncSteps(pkg, opts2);
      syncSteps(pkg, opts2);
    }
    function syncNormalize(pkg, opts2) {
      syncSteps(pkg, opts2);
    }
    module2.exports = { normalize: normalize11, syncNormalize };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/package-json/7.0.5/3e07be5488b954e650e89ad062bed22ad08e5abd9f8df86e78ce0ab5d2db34d4/node_modules/@npmcli/package-json/lib/read-package.js
var require_read_package = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/package-json/7.0.5/3e07be5488b954e650e89ad062bed22ad08e5abd9f8df86e78ce0ab5d2db34d4/node_modules/@npmcli/package-json/lib/read-package.js"(exports2, module2) {
    var { readFile: readFile4 } = __require("fs/promises");
    var parseJSON = require_lib38();
    async function read2(filename) {
      try {
        const data = await readFile4(filename, "utf8");
        return data;
      } catch (err) {
        err.message = `Could not read package.json: ${err}`;
        throw err;
      }
    }
    function parse7(data) {
      try {
        const content = parseJSON(data);
        return content;
      } catch (err) {
        err.message = `Invalid package.json: ${err}`;
        throw err;
      }
    }
    async function readPackage(filename) {
      const data = await read2(filename);
      const content = parse7(data);
      return content;
    }
    module2.exports = {
      read: read2,
      parse: parse7,
      readPackage
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/package-json/7.0.5/3e07be5488b954e650e89ad062bed22ad08e5abd9f8df86e78ce0ab5d2db34d4/node_modules/@npmcli/package-json/lib/sort.js
var require_sort3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/package-json/7.0.5/3e07be5488b954e650e89ad062bed22ad08e5abd9f8df86e78ce0ab5d2db34d4/node_modules/@npmcli/package-json/lib/sort.js"(exports2, module2) {
    function packageSort(json2) {
      const {
        name,
        version: version2,
        private: isPrivate,
        description,
        keywords,
        homepage,
        bugs,
        repository,
        funding,
        license,
        author,
        maintainers,
        contributors,
        type: type4,
        imports,
        exports: exports3,
        main: main5,
        browser,
        types: types3,
        bin,
        man,
        directories,
        files,
        workspaces,
        scripts,
        config,
        dependencies,
        devDependencies,
        peerDependencies,
        peerDependenciesMeta,
        optionalDependencies,
        bundledDependencies,
        bundleDependencies,
        engines,
        os: os15,
        cpu,
        publishConfig,
        devEngines,
        licenses,
        overrides,
        ...rest
      } = json2;
      return {
        ...typeof name !== "undefined" ? { name } : {},
        ...typeof version2 !== "undefined" ? { version: version2 } : {},
        ...typeof isPrivate !== "undefined" ? { private: isPrivate } : {},
        ...typeof description !== "undefined" ? { description } : {},
        ...typeof keywords !== "undefined" ? { keywords } : {},
        ...typeof homepage !== "undefined" ? { homepage } : {},
        ...typeof bugs !== "undefined" ? { bugs } : {},
        ...typeof repository !== "undefined" ? { repository } : {},
        ...typeof funding !== "undefined" ? { funding } : {},
        ...typeof license !== "undefined" ? { license } : {},
        ...typeof author !== "undefined" ? { author } : {},
        ...typeof maintainers !== "undefined" ? { maintainers } : {},
        ...typeof contributors !== "undefined" ? { contributors } : {},
        ...typeof type4 !== "undefined" ? { type: type4 } : {},
        ...typeof imports !== "undefined" ? { imports } : {},
        ...typeof exports3 !== "undefined" ? { exports: exports3 } : {},
        ...typeof main5 !== "undefined" ? { main: main5 } : {},
        ...typeof browser !== "undefined" ? { browser } : {},
        ...typeof types3 !== "undefined" ? { types: types3 } : {},
        ...typeof bin !== "undefined" ? { bin } : {},
        ...typeof man !== "undefined" ? { man } : {},
        ...typeof directories !== "undefined" ? { directories } : {},
        ...typeof files !== "undefined" ? { files } : {},
        ...typeof workspaces !== "undefined" ? { workspaces } : {},
        ...typeof scripts !== "undefined" ? { scripts } : {},
        ...typeof config !== "undefined" ? { config } : {},
        ...typeof dependencies !== "undefined" ? { dependencies } : {},
        ...typeof devDependencies !== "undefined" ? { devDependencies } : {},
        ...typeof peerDependencies !== "undefined" ? { peerDependencies } : {},
        ...typeof peerDependenciesMeta !== "undefined" ? { peerDependenciesMeta } : {},
        ...typeof optionalDependencies !== "undefined" ? { optionalDependencies } : {},
        ...typeof bundledDependencies !== "undefined" ? { bundledDependencies } : {},
        ...typeof bundleDependencies !== "undefined" ? { bundleDependencies } : {},
        ...typeof engines !== "undefined" ? { engines } : {},
        ...typeof os15 !== "undefined" ? { os: os15 } : {},
        ...typeof cpu !== "undefined" ? { cpu } : {},
        ...typeof publishConfig !== "undefined" ? { publishConfig } : {},
        ...typeof devEngines !== "undefined" ? { devEngines } : {},
        ...typeof licenses !== "undefined" ? { licenses } : {},
        ...typeof overrides !== "undefined" ? { overrides } : {},
        ...rest
      };
    }
    module2.exports = {
      packageSort
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@npmcli/package-json/7.0.5/3e07be5488b954e650e89ad062bed22ad08e5abd9f8df86e78ce0ab5d2db34d4/node_modules/@npmcli/package-json/lib/index.js
var require_lib45 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@npmcli/package-json/7.0.5/3e07be5488b954e650e89ad062bed22ad08e5abd9f8df86e78ce0ab5d2db34d4/node_modules/@npmcli/package-json/lib/index.js"(exports2, module2) {
    var { readFile: readFile4, writeFile: writeFile3 } = __require("node:fs/promises");
    var { resolve: resolve3 } = __require("node:path");
    var parseJSON = require_lib38();
    var updateDeps = require_update_dependencies();
    var updateScripts = require_update_scripts();
    var updateWorkspaces = require_update_workspaces();
    var { normalize: normalize11, syncNormalize } = require_normalize2();
    var { read: read2, parse: parse7 } = require_read_package();
    var { packageSort } = require_sort3();
    var knownSteps = /* @__PURE__ */ new Set([
      updateDeps,
      updateScripts,
      updateWorkspaces
    ]);
    var knownKeys = /* @__PURE__ */ new Set([
      ...updateDeps.knownKeys,
      "scripts",
      "workspaces"
    ]);
    var PackageJson = class _PackageJson {
      // npm pkg fix
      static fixSteps = Object.freeze([
        "binRefs",
        "bundleDependencies",
        "fixName",
        "fixVersionField",
        "fixRepositoryField",
        "fixDependencies",
        "devDependencies",
        "scriptpath"
      ]);
      static normalizeSteps = Object.freeze([
        "_id",
        "_attributes",
        "bundledDependencies",
        "bundleDependencies",
        "optionalDedupe",
        "scripts",
        "funding",
        "bin",
        "binDir"
      ]);
      static prepareSteps = Object.freeze([
        "_id",
        "_attributes",
        "bundledDependencies",
        "bundleDependencies",
        "bundleDependenciesDeleteFalse",
        "gypfile",
        "serverjs",
        "scriptpath",
        "authors",
        "readme",
        "mans",
        "binDir",
        "gitHead",
        "fillTypes",
        "normalizeData",
        "binRefs"
      ]);
      // create a new empty package.json, so we can save at the given path even
      // though we didn't start from a parsed file
      static async create(path218, opts2 = {}) {
        const p = new _PackageJson();
        await p.create(path218);
        if (opts2.data) {
          return p.update(opts2.data);
        }
        return p;
      }
      // Loads a package.json at given path and JSON parses
      static async load(path218, opts2 = {}) {
        const p = new _PackageJson();
        if (!opts2.create) {
          return p.load(path218);
        }
        try {
          return await p.load(path218);
        } catch (err) {
          if (!err.message.startsWith("Could not read package.json")) {
            throw err;
          }
          return await p.create(path218);
        }
      }
      // npm pkg fix
      static async fix(path218, opts2) {
        const p = new _PackageJson();
        await p.load(path218, true);
        return p.fix(opts2);
      }
      // read-package-json compatible behavior
      static async prepare(path218, opts2) {
        const p = new _PackageJson();
        await p.load(path218, true);
        return p.prepare(opts2);
      }
      // read-package-json-fast compatible behavior
      static async normalize(path218, opts2) {
        const p = new _PackageJson();
        await p.load(path218);
        return p.normalize(opts2);
      }
      #path;
      #manifest;
      #readFileContent = "";
      #canSave = true;
      // Load content from given path
      async load(path218, parseIndex) {
        this.#path = path218;
        let parseErr;
        try {
          this.#readFileContent = await read2(this.filename);
        } catch (err) {
          if (!parseIndex) {
            throw err;
          }
          parseErr = err;
        }
        if (parseErr) {
          const indexFile = resolve3(this.path, "index.js");
          let indexFileContent;
          try {
            indexFileContent = await readFile4(indexFile, "utf8");
          } catch (err) {
            throw parseErr;
          }
          try {
            this.fromComment(indexFileContent);
          } catch (err) {
            throw parseErr;
          }
          this.#canSave = false;
          return this;
        }
        return this.fromJSON(this.#readFileContent);
      }
      // Load data from a JSON string/buffer
      fromJSON(data) {
        this.#manifest = parse7(data);
        return this;
      }
      // Manually set data from an existing object
      fromContent(data) {
        if (!data || typeof data !== "object") {
          throw new Error("Content data must be an object");
        }
        this.#manifest = data;
        this.#canSave = false;
        return this;
      }
      // Load data from a comment
      // /**package { "name": "foo", "version": "1.2.3", ... } **/
      fromComment(data) {
        data = data.split(/^\/\*\*package(?:\s|$)/m);
        if (data.length < 2) {
          throw new Error("File has no package in comments");
        }
        data = data[1];
        data = data.split(/\*\*\/$/m);
        if (data.length < 2) {
          throw new Error("File has no package in comments");
        }
        data = data[0];
        data = data.replace(/^\s*\*/mg, "");
        this.#manifest = parseJSON(data);
        return this;
      }
      get content() {
        return this.#manifest;
      }
      get path() {
        return this.#path;
      }
      get filename() {
        if (this.path) {
          return resolve3(this.path, "package.json");
        }
        return void 0;
      }
      create(path218) {
        this.#path = path218;
        this.#manifest = {};
        return this;
      }
      // This should be the ONLY way to set content in the manifest
      update(content) {
        if (!this.content) {
          throw new Error("Can not update without content.  Please `load` or `create`");
        }
        for (const step2 of knownSteps) {
          this.#manifest = step2({ content, originalContent: this.content });
        }
        for (const [key, value] of Object.entries(content)) {
          if (!knownKeys.has(key)) {
            this.content[key] = value;
          }
        }
        return this;
      }
      async save({ sort } = {}) {
        if (!this.#canSave) {
          throw new Error("No package.json to save to");
        }
        const {
          [/* @__PURE__ */ Symbol.for("indent")]: indent,
          [/* @__PURE__ */ Symbol.for("newline")]: newline,
          ...rest
        } = this.content;
        const format2 = indent === void 0 ? "  " : indent;
        const eol = newline === void 0 ? "\n" : newline;
        const content = sort ? packageSort(rest) : rest;
        const fileContent = `${JSON.stringify(content, null, format2)}
`.replace(/\n/g, eol);
        if (fileContent.trim() !== this.#readFileContent.trim()) {
          const written = await writeFile3(this.filename, fileContent);
          this.#readFileContent = fileContent;
          return written;
        }
      }
      // steps is NOT overrideable here because this is a legacy function that's not being used in new places
      syncNormalize(opts2 = {}) {
        opts2.steps = this.constructor.normalizeSteps.filter((s) => s !== "_attributes");
        syncNormalize(this, opts2);
        return this;
      }
      async normalize(opts2 = {}) {
        if (!opts2.steps) {
          opts2.steps = this.constructor.normalizeSteps;
        }
        await normalize11(this, opts2);
        return this;
      }
      async prepare(opts2 = {}) {
        if (!opts2.steps) {
          opts2.steps = this.constructor.prepareSteps;
        }
        await normalize11(this, opts2);
        return this;
      }
      async fix(opts2 = {}) {
        opts2.steps = this.constructor.fixSteps;
        await normalize11(this, opts2);
        return this;
      }
    };
    module2.exports = PackageJson;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/protobuf-specs/0.5.1/aaa9d549f5093b781009861cd12a17a7f71f993e4c9066ec7c4660c27365b2ea/node_modules/@sigstore/protobuf-specs/dist/__generated__/envelope.js
var require_envelope = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/protobuf-specs/0.5.1/aaa9d549f5093b781009861cd12a17a7f71f993e4c9066ec7c4660c27365b2ea/node_modules/@sigstore/protobuf-specs/dist/__generated__/envelope.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.Signature = exports2.Envelope = void 0;
    exports2.Envelope = {
      fromJSON(object) {
        return {
          payload: isSet(object.payload) ? Buffer.from(bytesFromBase64(object.payload)) : Buffer.alloc(0),
          payloadType: isSet(object.payloadType) ? globalThis.String(object.payloadType) : "",
          signatures: globalThis.Array.isArray(object?.signatures) ? object.signatures.map((e) => exports2.Signature.fromJSON(e)) : []
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.payload.length !== 0) {
          obj.payload = base64FromBytes(message.payload);
        }
        if (message.payloadType !== "") {
          obj.payloadType = message.payloadType;
        }
        if (message.signatures?.length) {
          obj.signatures = message.signatures.map((e) => exports2.Signature.toJSON(e));
        }
        return obj;
      }
    };
    exports2.Signature = {
      fromJSON(object) {
        return {
          sig: isSet(object.sig) ? Buffer.from(bytesFromBase64(object.sig)) : Buffer.alloc(0),
          keyid: isSet(object.keyid) ? globalThis.String(object.keyid) : ""
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.sig.length !== 0) {
          obj.sig = base64FromBytes(message.sig);
        }
        if (message.keyid !== "") {
          obj.keyid = message.keyid;
        }
        return obj;
      }
    };
    function bytesFromBase64(b64) {
      return Uint8Array.from(globalThis.Buffer.from(b64, "base64"));
    }
    function base64FromBytes(arr) {
      return globalThis.Buffer.from(arr).toString("base64");
    }
    function isSet(value) {
      return value !== null && value !== void 0;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/protobuf-specs/0.5.1/aaa9d549f5093b781009861cd12a17a7f71f993e4c9066ec7c4660c27365b2ea/node_modules/@sigstore/protobuf-specs/dist/__generated__/google/protobuf/timestamp.js
var require_timestamp3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/protobuf-specs/0.5.1/aaa9d549f5093b781009861cd12a17a7f71f993e4c9066ec7c4660c27365b2ea/node_modules/@sigstore/protobuf-specs/dist/__generated__/google/protobuf/timestamp.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.Timestamp = void 0;
    exports2.Timestamp = {
      fromJSON(object) {
        return {
          seconds: isSet(object.seconds) ? globalThis.String(object.seconds) : "0",
          nanos: isSet(object.nanos) ? globalThis.Number(object.nanos) : 0
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.seconds !== "0") {
          obj.seconds = message.seconds;
        }
        if (message.nanos !== 0) {
          obj.nanos = Math.round(message.nanos);
        }
        return obj;
      }
    };
    function isSet(value) {
      return value !== null && value !== void 0;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/protobuf-specs/0.5.1/aaa9d549f5093b781009861cd12a17a7f71f993e4c9066ec7c4660c27365b2ea/node_modules/@sigstore/protobuf-specs/dist/__generated__/sigstore_common.js
var require_sigstore_common = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/protobuf-specs/0.5.1/aaa9d549f5093b781009861cd12a17a7f71f993e4c9066ec7c4660c27365b2ea/node_modules/@sigstore/protobuf-specs/dist/__generated__/sigstore_common.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.TimeRange = exports2.X509CertificateChain = exports2.SubjectAlternativeName = exports2.X509Certificate = exports2.DistinguishedName = exports2.ObjectIdentifierValuePair = exports2.ObjectIdentifier = exports2.PublicKeyIdentifier = exports2.PublicKey = exports2.RFC3161SignedTimestamp = exports2.LogId = exports2.MessageSignature = exports2.HashOutput = exports2.SubjectAlternativeNameType = exports2.PublicKeyDetails = exports2.HashAlgorithm = void 0;
    exports2.hashAlgorithmFromJSON = hashAlgorithmFromJSON;
    exports2.hashAlgorithmToJSON = hashAlgorithmToJSON;
    exports2.publicKeyDetailsFromJSON = publicKeyDetailsFromJSON;
    exports2.publicKeyDetailsToJSON = publicKeyDetailsToJSON;
    exports2.subjectAlternativeNameTypeFromJSON = subjectAlternativeNameTypeFromJSON;
    exports2.subjectAlternativeNameTypeToJSON = subjectAlternativeNameTypeToJSON;
    var timestamp_1 = require_timestamp3();
    var HashAlgorithm;
    (function(HashAlgorithm2) {
      HashAlgorithm2[HashAlgorithm2["HASH_ALGORITHM_UNSPECIFIED"] = 0] = "HASH_ALGORITHM_UNSPECIFIED";
      HashAlgorithm2[HashAlgorithm2["SHA2_256"] = 1] = "SHA2_256";
      HashAlgorithm2[HashAlgorithm2["SHA2_384"] = 2] = "SHA2_384";
      HashAlgorithm2[HashAlgorithm2["SHA2_512"] = 3] = "SHA2_512";
      HashAlgorithm2[HashAlgorithm2["SHA3_256"] = 4] = "SHA3_256";
      HashAlgorithm2[HashAlgorithm2["SHA3_384"] = 5] = "SHA3_384";
    })(HashAlgorithm || (exports2.HashAlgorithm = HashAlgorithm = {}));
    function hashAlgorithmFromJSON(object) {
      switch (object) {
        case 0:
        case "HASH_ALGORITHM_UNSPECIFIED":
          return HashAlgorithm.HASH_ALGORITHM_UNSPECIFIED;
        case 1:
        case "SHA2_256":
          return HashAlgorithm.SHA2_256;
        case 2:
        case "SHA2_384":
          return HashAlgorithm.SHA2_384;
        case 3:
        case "SHA2_512":
          return HashAlgorithm.SHA2_512;
        case 4:
        case "SHA3_256":
          return HashAlgorithm.SHA3_256;
        case 5:
        case "SHA3_384":
          return HashAlgorithm.SHA3_384;
        default:
          throw new globalThis.Error("Unrecognized enum value " + object + " for enum HashAlgorithm");
      }
    }
    function hashAlgorithmToJSON(object) {
      switch (object) {
        case HashAlgorithm.HASH_ALGORITHM_UNSPECIFIED:
          return "HASH_ALGORITHM_UNSPECIFIED";
        case HashAlgorithm.SHA2_256:
          return "SHA2_256";
        case HashAlgorithm.SHA2_384:
          return "SHA2_384";
        case HashAlgorithm.SHA2_512:
          return "SHA2_512";
        case HashAlgorithm.SHA3_256:
          return "SHA3_256";
        case HashAlgorithm.SHA3_384:
          return "SHA3_384";
        default:
          throw new globalThis.Error("Unrecognized enum value " + object + " for enum HashAlgorithm");
      }
    }
    var PublicKeyDetails;
    (function(PublicKeyDetails2) {
      PublicKeyDetails2[PublicKeyDetails2["PUBLIC_KEY_DETAILS_UNSPECIFIED"] = 0] = "PUBLIC_KEY_DETAILS_UNSPECIFIED";
      PublicKeyDetails2[PublicKeyDetails2["PKCS1_RSA_PKCS1V5"] = 1] = "PKCS1_RSA_PKCS1V5";
      PublicKeyDetails2[PublicKeyDetails2["PKCS1_RSA_PSS"] = 2] = "PKCS1_RSA_PSS";
      PublicKeyDetails2[PublicKeyDetails2["PKIX_RSA_PKCS1V5"] = 3] = "PKIX_RSA_PKCS1V5";
      PublicKeyDetails2[PublicKeyDetails2["PKIX_RSA_PSS"] = 4] = "PKIX_RSA_PSS";
      PublicKeyDetails2[PublicKeyDetails2["PKIX_RSA_PKCS1V15_2048_SHA256"] = 9] = "PKIX_RSA_PKCS1V15_2048_SHA256";
      PublicKeyDetails2[PublicKeyDetails2["PKIX_RSA_PKCS1V15_3072_SHA256"] = 10] = "PKIX_RSA_PKCS1V15_3072_SHA256";
      PublicKeyDetails2[PublicKeyDetails2["PKIX_RSA_PKCS1V15_4096_SHA256"] = 11] = "PKIX_RSA_PKCS1V15_4096_SHA256";
      PublicKeyDetails2[PublicKeyDetails2["PKIX_RSA_PSS_2048_SHA256"] = 16] = "PKIX_RSA_PSS_2048_SHA256";
      PublicKeyDetails2[PublicKeyDetails2["PKIX_RSA_PSS_3072_SHA256"] = 17] = "PKIX_RSA_PSS_3072_SHA256";
      PublicKeyDetails2[PublicKeyDetails2["PKIX_RSA_PSS_4096_SHA256"] = 18] = "PKIX_RSA_PSS_4096_SHA256";
      PublicKeyDetails2[PublicKeyDetails2["PKIX_ECDSA_P256_HMAC_SHA_256"] = 6] = "PKIX_ECDSA_P256_HMAC_SHA_256";
      PublicKeyDetails2[PublicKeyDetails2["PKIX_ECDSA_P256_SHA_256"] = 5] = "PKIX_ECDSA_P256_SHA_256";
      PublicKeyDetails2[PublicKeyDetails2["PKIX_ECDSA_P384_SHA_384"] = 12] = "PKIX_ECDSA_P384_SHA_384";
      PublicKeyDetails2[PublicKeyDetails2["PKIX_ECDSA_P521_SHA_512"] = 13] = "PKIX_ECDSA_P521_SHA_512";
      PublicKeyDetails2[PublicKeyDetails2["PKIX_ED25519"] = 7] = "PKIX_ED25519";
      PublicKeyDetails2[PublicKeyDetails2["PKIX_ED25519_PH"] = 8] = "PKIX_ED25519_PH";
      PublicKeyDetails2[PublicKeyDetails2["PKIX_ECDSA_P384_SHA_256"] = 19] = "PKIX_ECDSA_P384_SHA_256";
      PublicKeyDetails2[PublicKeyDetails2["PKIX_ECDSA_P521_SHA_256"] = 20] = "PKIX_ECDSA_P521_SHA_256";
      PublicKeyDetails2[PublicKeyDetails2["LMS_SHA256"] = 14] = "LMS_SHA256";
      PublicKeyDetails2[PublicKeyDetails2["LMOTS_SHA256"] = 15] = "LMOTS_SHA256";
      PublicKeyDetails2[PublicKeyDetails2["ML_DSA_44"] = 23] = "ML_DSA_44";
      PublicKeyDetails2[PublicKeyDetails2["ML_DSA_65"] = 21] = "ML_DSA_65";
      PublicKeyDetails2[PublicKeyDetails2["ML_DSA_87"] = 22] = "ML_DSA_87";
    })(PublicKeyDetails || (exports2.PublicKeyDetails = PublicKeyDetails = {}));
    function publicKeyDetailsFromJSON(object) {
      switch (object) {
        case 0:
        case "PUBLIC_KEY_DETAILS_UNSPECIFIED":
          return PublicKeyDetails.PUBLIC_KEY_DETAILS_UNSPECIFIED;
        case 1:
        case "PKCS1_RSA_PKCS1V5":
          return PublicKeyDetails.PKCS1_RSA_PKCS1V5;
        case 2:
        case "PKCS1_RSA_PSS":
          return PublicKeyDetails.PKCS1_RSA_PSS;
        case 3:
        case "PKIX_RSA_PKCS1V5":
          return PublicKeyDetails.PKIX_RSA_PKCS1V5;
        case 4:
        case "PKIX_RSA_PSS":
          return PublicKeyDetails.PKIX_RSA_PSS;
        case 9:
        case "PKIX_RSA_PKCS1V15_2048_SHA256":
          return PublicKeyDetails.PKIX_RSA_PKCS1V15_2048_SHA256;
        case 10:
        case "PKIX_RSA_PKCS1V15_3072_SHA256":
          return PublicKeyDetails.PKIX_RSA_PKCS1V15_3072_SHA256;
        case 11:
        case "PKIX_RSA_PKCS1V15_4096_SHA256":
          return PublicKeyDetails.PKIX_RSA_PKCS1V15_4096_SHA256;
        case 16:
        case "PKIX_RSA_PSS_2048_SHA256":
          return PublicKeyDetails.PKIX_RSA_PSS_2048_SHA256;
        case 17:
        case "PKIX_RSA_PSS_3072_SHA256":
          return PublicKeyDetails.PKIX_RSA_PSS_3072_SHA256;
        case 18:
        case "PKIX_RSA_PSS_4096_SHA256":
          return PublicKeyDetails.PKIX_RSA_PSS_4096_SHA256;
        case 6:
        case "PKIX_ECDSA_P256_HMAC_SHA_256":
          return PublicKeyDetails.PKIX_ECDSA_P256_HMAC_SHA_256;
        case 5:
        case "PKIX_ECDSA_P256_SHA_256":
          return PublicKeyDetails.PKIX_ECDSA_P256_SHA_256;
        case 12:
        case "PKIX_ECDSA_P384_SHA_384":
          return PublicKeyDetails.PKIX_ECDSA_P384_SHA_384;
        case 13:
        case "PKIX_ECDSA_P521_SHA_512":
          return PublicKeyDetails.PKIX_ECDSA_P521_SHA_512;
        case 7:
        case "PKIX_ED25519":
          return PublicKeyDetails.PKIX_ED25519;
        case 8:
        case "PKIX_ED25519_PH":
          return PublicKeyDetails.PKIX_ED25519_PH;
        case 19:
        case "PKIX_ECDSA_P384_SHA_256":
          return PublicKeyDetails.PKIX_ECDSA_P384_SHA_256;
        case 20:
        case "PKIX_ECDSA_P521_SHA_256":
          return PublicKeyDetails.PKIX_ECDSA_P521_SHA_256;
        case 14:
        case "LMS_SHA256":
          return PublicKeyDetails.LMS_SHA256;
        case 15:
        case "LMOTS_SHA256":
          return PublicKeyDetails.LMOTS_SHA256;
        case 23:
        case "ML_DSA_44":
          return PublicKeyDetails.ML_DSA_44;
        case 21:
        case "ML_DSA_65":
          return PublicKeyDetails.ML_DSA_65;
        case 22:
        case "ML_DSA_87":
          return PublicKeyDetails.ML_DSA_87;
        default:
          throw new globalThis.Error("Unrecognized enum value " + object + " for enum PublicKeyDetails");
      }
    }
    function publicKeyDetailsToJSON(object) {
      switch (object) {
        case PublicKeyDetails.PUBLIC_KEY_DETAILS_UNSPECIFIED:
          return "PUBLIC_KEY_DETAILS_UNSPECIFIED";
        case PublicKeyDetails.PKCS1_RSA_PKCS1V5:
          return "PKCS1_RSA_PKCS1V5";
        case PublicKeyDetails.PKCS1_RSA_PSS:
          return "PKCS1_RSA_PSS";
        case PublicKeyDetails.PKIX_RSA_PKCS1V5:
          return "PKIX_RSA_PKCS1V5";
        case PublicKeyDetails.PKIX_RSA_PSS:
          return "PKIX_RSA_PSS";
        case PublicKeyDetails.PKIX_RSA_PKCS1V15_2048_SHA256:
          return "PKIX_RSA_PKCS1V15_2048_SHA256";
        case PublicKeyDetails.PKIX_RSA_PKCS1V15_3072_SHA256:
          return "PKIX_RSA_PKCS1V15_3072_SHA256";
        case PublicKeyDetails.PKIX_RSA_PKCS1V15_4096_SHA256:
          return "PKIX_RSA_PKCS1V15_4096_SHA256";
        case PublicKeyDetails.PKIX_RSA_PSS_2048_SHA256:
          return "PKIX_RSA_PSS_2048_SHA256";
        case PublicKeyDetails.PKIX_RSA_PSS_3072_SHA256:
          return "PKIX_RSA_PSS_3072_SHA256";
        case PublicKeyDetails.PKIX_RSA_PSS_4096_SHA256:
          return "PKIX_RSA_PSS_4096_SHA256";
        case PublicKeyDetails.PKIX_ECDSA_P256_HMAC_SHA_256:
          return "PKIX_ECDSA_P256_HMAC_SHA_256";
        case PublicKeyDetails.PKIX_ECDSA_P256_SHA_256:
          return "PKIX_ECDSA_P256_SHA_256";
        case PublicKeyDetails.PKIX_ECDSA_P384_SHA_384:
          return "PKIX_ECDSA_P384_SHA_384";
        case PublicKeyDetails.PKIX_ECDSA_P521_SHA_512:
          return "PKIX_ECDSA_P521_SHA_512";
        case PublicKeyDetails.PKIX_ED25519:
          return "PKIX_ED25519";
        case PublicKeyDetails.PKIX_ED25519_PH:
          return "PKIX_ED25519_PH";
        case PublicKeyDetails.PKIX_ECDSA_P384_SHA_256:
          return "PKIX_ECDSA_P384_SHA_256";
        case PublicKeyDetails.PKIX_ECDSA_P521_SHA_256:
          return "PKIX_ECDSA_P521_SHA_256";
        case PublicKeyDetails.LMS_SHA256:
          return "LMS_SHA256";
        case PublicKeyDetails.LMOTS_SHA256:
          return "LMOTS_SHA256";
        case PublicKeyDetails.ML_DSA_44:
          return "ML_DSA_44";
        case PublicKeyDetails.ML_DSA_65:
          return "ML_DSA_65";
        case PublicKeyDetails.ML_DSA_87:
          return "ML_DSA_87";
        default:
          throw new globalThis.Error("Unrecognized enum value " + object + " for enum PublicKeyDetails");
      }
    }
    var SubjectAlternativeNameType;
    (function(SubjectAlternativeNameType2) {
      SubjectAlternativeNameType2[SubjectAlternativeNameType2["SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED"] = 0] = "SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED";
      SubjectAlternativeNameType2[SubjectAlternativeNameType2["EMAIL"] = 1] = "EMAIL";
      SubjectAlternativeNameType2[SubjectAlternativeNameType2["URI"] = 2] = "URI";
      SubjectAlternativeNameType2[SubjectAlternativeNameType2["OTHER_NAME"] = 3] = "OTHER_NAME";
    })(SubjectAlternativeNameType || (exports2.SubjectAlternativeNameType = SubjectAlternativeNameType = {}));
    function subjectAlternativeNameTypeFromJSON(object) {
      switch (object) {
        case 0:
        case "SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED":
          return SubjectAlternativeNameType.SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED;
        case 1:
        case "EMAIL":
          return SubjectAlternativeNameType.EMAIL;
        case 2:
        case "URI":
          return SubjectAlternativeNameType.URI;
        case 3:
        case "OTHER_NAME":
          return SubjectAlternativeNameType.OTHER_NAME;
        default:
          throw new globalThis.Error("Unrecognized enum value " + object + " for enum SubjectAlternativeNameType");
      }
    }
    function subjectAlternativeNameTypeToJSON(object) {
      switch (object) {
        case SubjectAlternativeNameType.SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED:
          return "SUBJECT_ALTERNATIVE_NAME_TYPE_UNSPECIFIED";
        case SubjectAlternativeNameType.EMAIL:
          return "EMAIL";
        case SubjectAlternativeNameType.URI:
          return "URI";
        case SubjectAlternativeNameType.OTHER_NAME:
          return "OTHER_NAME";
        default:
          throw new globalThis.Error("Unrecognized enum value " + object + " for enum SubjectAlternativeNameType");
      }
    }
    exports2.HashOutput = {
      fromJSON(object) {
        return {
          algorithm: isSet(object.algorithm) ? hashAlgorithmFromJSON(object.algorithm) : 0,
          digest: isSet(object.digest) ? Buffer.from(bytesFromBase64(object.digest)) : Buffer.alloc(0)
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.algorithm !== 0) {
          obj.algorithm = hashAlgorithmToJSON(message.algorithm);
        }
        if (message.digest.length !== 0) {
          obj.digest = base64FromBytes(message.digest);
        }
        return obj;
      }
    };
    exports2.MessageSignature = {
      fromJSON(object) {
        return {
          messageDigest: isSet(object.messageDigest) ? exports2.HashOutput.fromJSON(object.messageDigest) : void 0,
          signature: isSet(object.signature) ? Buffer.from(bytesFromBase64(object.signature)) : Buffer.alloc(0)
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.messageDigest !== void 0) {
          obj.messageDigest = exports2.HashOutput.toJSON(message.messageDigest);
        }
        if (message.signature.length !== 0) {
          obj.signature = base64FromBytes(message.signature);
        }
        return obj;
      }
    };
    exports2.LogId = {
      fromJSON(object) {
        return { keyId: isSet(object.keyId) ? Buffer.from(bytesFromBase64(object.keyId)) : Buffer.alloc(0) };
      },
      toJSON(message) {
        const obj = {};
        if (message.keyId.length !== 0) {
          obj.keyId = base64FromBytes(message.keyId);
        }
        return obj;
      }
    };
    exports2.RFC3161SignedTimestamp = {
      fromJSON(object) {
        return {
          signedTimestamp: isSet(object.signedTimestamp) ? Buffer.from(bytesFromBase64(object.signedTimestamp)) : Buffer.alloc(0)
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.signedTimestamp.length !== 0) {
          obj.signedTimestamp = base64FromBytes(message.signedTimestamp);
        }
        return obj;
      }
    };
    exports2.PublicKey = {
      fromJSON(object) {
        return {
          rawBytes: isSet(object.rawBytes) ? Buffer.from(bytesFromBase64(object.rawBytes)) : void 0,
          keyDetails: isSet(object.keyDetails) ? publicKeyDetailsFromJSON(object.keyDetails) : 0,
          validFor: isSet(object.validFor) ? exports2.TimeRange.fromJSON(object.validFor) : void 0
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.rawBytes !== void 0) {
          obj.rawBytes = base64FromBytes(message.rawBytes);
        }
        if (message.keyDetails !== 0) {
          obj.keyDetails = publicKeyDetailsToJSON(message.keyDetails);
        }
        if (message.validFor !== void 0) {
          obj.validFor = exports2.TimeRange.toJSON(message.validFor);
        }
        return obj;
      }
    };
    exports2.PublicKeyIdentifier = {
      fromJSON(object) {
        return { hint: isSet(object.hint) ? globalThis.String(object.hint) : "" };
      },
      toJSON(message) {
        const obj = {};
        if (message.hint !== "") {
          obj.hint = message.hint;
        }
        return obj;
      }
    };
    exports2.ObjectIdentifier = {
      fromJSON(object) {
        return { id: globalThis.Array.isArray(object?.id) ? object.id.map((e) => globalThis.Number(e)) : [] };
      },
      toJSON(message) {
        const obj = {};
        if (message.id?.length) {
          obj.id = message.id.map((e) => Math.round(e));
        }
        return obj;
      }
    };
    exports2.ObjectIdentifierValuePair = {
      fromJSON(object) {
        return {
          oid: isSet(object.oid) ? exports2.ObjectIdentifier.fromJSON(object.oid) : void 0,
          value: isSet(object.value) ? Buffer.from(bytesFromBase64(object.value)) : Buffer.alloc(0)
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.oid !== void 0) {
          obj.oid = exports2.ObjectIdentifier.toJSON(message.oid);
        }
        if (message.value.length !== 0) {
          obj.value = base64FromBytes(message.value);
        }
        return obj;
      }
    };
    exports2.DistinguishedName = {
      fromJSON(object) {
        return {
          organization: isSet(object.organization) ? globalThis.String(object.organization) : "",
          commonName: isSet(object.commonName) ? globalThis.String(object.commonName) : ""
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.organization !== "") {
          obj.organization = message.organization;
        }
        if (message.commonName !== "") {
          obj.commonName = message.commonName;
        }
        return obj;
      }
    };
    exports2.X509Certificate = {
      fromJSON(object) {
        return { rawBytes: isSet(object.rawBytes) ? Buffer.from(bytesFromBase64(object.rawBytes)) : Buffer.alloc(0) };
      },
      toJSON(message) {
        const obj = {};
        if (message.rawBytes.length !== 0) {
          obj.rawBytes = base64FromBytes(message.rawBytes);
        }
        return obj;
      }
    };
    exports2.SubjectAlternativeName = {
      fromJSON(object) {
        return {
          type: isSet(object.type) ? subjectAlternativeNameTypeFromJSON(object.type) : 0,
          identity: isSet(object.regexp) ? { $case: "regexp", regexp: globalThis.String(object.regexp) } : isSet(object.value) ? { $case: "value", value: globalThis.String(object.value) } : void 0
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.type !== 0) {
          obj.type = subjectAlternativeNameTypeToJSON(message.type);
        }
        if (message.identity?.$case === "regexp") {
          obj.regexp = message.identity.regexp;
        } else if (message.identity?.$case === "value") {
          obj.value = message.identity.value;
        }
        return obj;
      }
    };
    exports2.X509CertificateChain = {
      fromJSON(object) {
        return {
          certificates: globalThis.Array.isArray(object?.certificates) ? object.certificates.map((e) => exports2.X509Certificate.fromJSON(e)) : []
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.certificates?.length) {
          obj.certificates = message.certificates.map((e) => exports2.X509Certificate.toJSON(e));
        }
        return obj;
      }
    };
    exports2.TimeRange = {
      fromJSON(object) {
        return {
          start: isSet(object.start) ? fromJsonTimestamp(object.start) : void 0,
          end: isSet(object.end) ? fromJsonTimestamp(object.end) : void 0
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.start !== void 0) {
          obj.start = message.start.toISOString();
        }
        if (message.end !== void 0) {
          obj.end = message.end.toISOString();
        }
        return obj;
      }
    };
    function bytesFromBase64(b64) {
      return Uint8Array.from(globalThis.Buffer.from(b64, "base64"));
    }
    function base64FromBytes(arr) {
      return globalThis.Buffer.from(arr).toString("base64");
    }
    function fromTimestamp(t2) {
      let millis = (globalThis.Number(t2.seconds) || 0) * 1e3;
      millis += (t2.nanos || 0) / 1e6;
      return new globalThis.Date(millis);
    }
    function fromJsonTimestamp(o2) {
      if (o2 instanceof globalThis.Date) {
        return o2;
      } else if (typeof o2 === "string") {
        return new globalThis.Date(o2);
      } else {
        return fromTimestamp(timestamp_1.Timestamp.fromJSON(o2));
      }
    }
    function isSet(value) {
      return value !== null && value !== void 0;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/protobuf-specs/0.5.1/aaa9d549f5093b781009861cd12a17a7f71f993e4c9066ec7c4660c27365b2ea/node_modules/@sigstore/protobuf-specs/dist/__generated__/sigstore_rekor.js
var require_sigstore_rekor = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/protobuf-specs/0.5.1/aaa9d549f5093b781009861cd12a17a7f71f993e4c9066ec7c4660c27365b2ea/node_modules/@sigstore/protobuf-specs/dist/__generated__/sigstore_rekor.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.TransparencyLogEntry = exports2.InclusionPromise = exports2.InclusionProof = exports2.Checkpoint = exports2.KindVersion = void 0;
    var sigstore_common_1 = require_sigstore_common();
    exports2.KindVersion = {
      fromJSON(object) {
        return {
          kind: isSet(object.kind) ? globalThis.String(object.kind) : "",
          version: isSet(object.version) ? globalThis.String(object.version) : ""
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.kind !== "") {
          obj.kind = message.kind;
        }
        if (message.version !== "") {
          obj.version = message.version;
        }
        return obj;
      }
    };
    exports2.Checkpoint = {
      fromJSON(object) {
        return { envelope: isSet(object.envelope) ? globalThis.String(object.envelope) : "" };
      },
      toJSON(message) {
        const obj = {};
        if (message.envelope !== "") {
          obj.envelope = message.envelope;
        }
        return obj;
      }
    };
    exports2.InclusionProof = {
      fromJSON(object) {
        return {
          logIndex: isSet(object.logIndex) ? globalThis.String(object.logIndex) : "0",
          rootHash: isSet(object.rootHash) ? Buffer.from(bytesFromBase64(object.rootHash)) : Buffer.alloc(0),
          treeSize: isSet(object.treeSize) ? globalThis.String(object.treeSize) : "0",
          hashes: globalThis.Array.isArray(object?.hashes) ? object.hashes.map((e) => Buffer.from(bytesFromBase64(e))) : [],
          checkpoint: isSet(object.checkpoint) ? exports2.Checkpoint.fromJSON(object.checkpoint) : void 0
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.logIndex !== "0") {
          obj.logIndex = message.logIndex;
        }
        if (message.rootHash.length !== 0) {
          obj.rootHash = base64FromBytes(message.rootHash);
        }
        if (message.treeSize !== "0") {
          obj.treeSize = message.treeSize;
        }
        if (message.hashes?.length) {
          obj.hashes = message.hashes.map((e) => base64FromBytes(e));
        }
        if (message.checkpoint !== void 0) {
          obj.checkpoint = exports2.Checkpoint.toJSON(message.checkpoint);
        }
        return obj;
      }
    };
    exports2.InclusionPromise = {
      fromJSON(object) {
        return {
          signedEntryTimestamp: isSet(object.signedEntryTimestamp) ? Buffer.from(bytesFromBase64(object.signedEntryTimestamp)) : Buffer.alloc(0)
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.signedEntryTimestamp.length !== 0) {
          obj.signedEntryTimestamp = base64FromBytes(message.signedEntryTimestamp);
        }
        return obj;
      }
    };
    exports2.TransparencyLogEntry = {
      fromJSON(object) {
        return {
          logIndex: isSet(object.logIndex) ? globalThis.String(object.logIndex) : "0",
          logId: isSet(object.logId) ? sigstore_common_1.LogId.fromJSON(object.logId) : void 0,
          kindVersion: isSet(object.kindVersion) ? exports2.KindVersion.fromJSON(object.kindVersion) : void 0,
          integratedTime: isSet(object.integratedTime) ? globalThis.String(object.integratedTime) : "0",
          inclusionPromise: isSet(object.inclusionPromise) ? exports2.InclusionPromise.fromJSON(object.inclusionPromise) : void 0,
          inclusionProof: isSet(object.inclusionProof) ? exports2.InclusionProof.fromJSON(object.inclusionProof) : void 0,
          canonicalizedBody: isSet(object.canonicalizedBody) ? Buffer.from(bytesFromBase64(object.canonicalizedBody)) : Buffer.alloc(0)
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.logIndex !== "0") {
          obj.logIndex = message.logIndex;
        }
        if (message.logId !== void 0) {
          obj.logId = sigstore_common_1.LogId.toJSON(message.logId);
        }
        if (message.kindVersion !== void 0) {
          obj.kindVersion = exports2.KindVersion.toJSON(message.kindVersion);
        }
        if (message.integratedTime !== "0") {
          obj.integratedTime = message.integratedTime;
        }
        if (message.inclusionPromise !== void 0) {
          obj.inclusionPromise = exports2.InclusionPromise.toJSON(message.inclusionPromise);
        }
        if (message.inclusionProof !== void 0) {
          obj.inclusionProof = exports2.InclusionProof.toJSON(message.inclusionProof);
        }
        if (message.canonicalizedBody.length !== 0) {
          obj.canonicalizedBody = base64FromBytes(message.canonicalizedBody);
        }
        return obj;
      }
    };
    function bytesFromBase64(b64) {
      return Uint8Array.from(globalThis.Buffer.from(b64, "base64"));
    }
    function base64FromBytes(arr) {
      return globalThis.Buffer.from(arr).toString("base64");
    }
    function isSet(value) {
      return value !== null && value !== void 0;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/protobuf-specs/0.5.1/aaa9d549f5093b781009861cd12a17a7f71f993e4c9066ec7c4660c27365b2ea/node_modules/@sigstore/protobuf-specs/dist/__generated__/sigstore_bundle.js
var require_sigstore_bundle = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/protobuf-specs/0.5.1/aaa9d549f5093b781009861cd12a17a7f71f993e4c9066ec7c4660c27365b2ea/node_modules/@sigstore/protobuf-specs/dist/__generated__/sigstore_bundle.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.Bundle = exports2.VerificationMaterial = exports2.TimestampVerificationData = void 0;
    var envelope_1 = require_envelope();
    var sigstore_common_1 = require_sigstore_common();
    var sigstore_rekor_1 = require_sigstore_rekor();
    exports2.TimestampVerificationData = {
      fromJSON(object) {
        return {
          rfc3161Timestamps: globalThis.Array.isArray(object?.rfc3161Timestamps) ? object.rfc3161Timestamps.map((e) => sigstore_common_1.RFC3161SignedTimestamp.fromJSON(e)) : []
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.rfc3161Timestamps?.length) {
          obj.rfc3161Timestamps = message.rfc3161Timestamps.map((e) => sigstore_common_1.RFC3161SignedTimestamp.toJSON(e));
        }
        return obj;
      }
    };
    exports2.VerificationMaterial = {
      fromJSON(object) {
        return {
          content: isSet(object.publicKey) ? { $case: "publicKey", publicKey: sigstore_common_1.PublicKeyIdentifier.fromJSON(object.publicKey) } : isSet(object.x509CertificateChain) ? {
            $case: "x509CertificateChain",
            x509CertificateChain: sigstore_common_1.X509CertificateChain.fromJSON(object.x509CertificateChain)
          } : isSet(object.certificate) ? { $case: "certificate", certificate: sigstore_common_1.X509Certificate.fromJSON(object.certificate) } : void 0,
          tlogEntries: globalThis.Array.isArray(object?.tlogEntries) ? object.tlogEntries.map((e) => sigstore_rekor_1.TransparencyLogEntry.fromJSON(e)) : [],
          timestampVerificationData: isSet(object.timestampVerificationData) ? exports2.TimestampVerificationData.fromJSON(object.timestampVerificationData) : void 0
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.content?.$case === "publicKey") {
          obj.publicKey = sigstore_common_1.PublicKeyIdentifier.toJSON(message.content.publicKey);
        } else if (message.content?.$case === "x509CertificateChain") {
          obj.x509CertificateChain = sigstore_common_1.X509CertificateChain.toJSON(message.content.x509CertificateChain);
        } else if (message.content?.$case === "certificate") {
          obj.certificate = sigstore_common_1.X509Certificate.toJSON(message.content.certificate);
        }
        if (message.tlogEntries?.length) {
          obj.tlogEntries = message.tlogEntries.map((e) => sigstore_rekor_1.TransparencyLogEntry.toJSON(e));
        }
        if (message.timestampVerificationData !== void 0) {
          obj.timestampVerificationData = exports2.TimestampVerificationData.toJSON(message.timestampVerificationData);
        }
        return obj;
      }
    };
    exports2.Bundle = {
      fromJSON(object) {
        return {
          mediaType: isSet(object.mediaType) ? globalThis.String(object.mediaType) : "",
          verificationMaterial: isSet(object.verificationMaterial) ? exports2.VerificationMaterial.fromJSON(object.verificationMaterial) : void 0,
          content: isSet(object.messageSignature) ? { $case: "messageSignature", messageSignature: sigstore_common_1.MessageSignature.fromJSON(object.messageSignature) } : isSet(object.dsseEnvelope) ? { $case: "dsseEnvelope", dsseEnvelope: envelope_1.Envelope.fromJSON(object.dsseEnvelope) } : void 0
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.mediaType !== "") {
          obj.mediaType = message.mediaType;
        }
        if (message.verificationMaterial !== void 0) {
          obj.verificationMaterial = exports2.VerificationMaterial.toJSON(message.verificationMaterial);
        }
        if (message.content?.$case === "messageSignature") {
          obj.messageSignature = sigstore_common_1.MessageSignature.toJSON(message.content.messageSignature);
        } else if (message.content?.$case === "dsseEnvelope") {
          obj.dsseEnvelope = envelope_1.Envelope.toJSON(message.content.dsseEnvelope);
        }
        return obj;
      }
    };
    function isSet(value) {
      return value !== null && value !== void 0;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/protobuf-specs/0.5.1/aaa9d549f5093b781009861cd12a17a7f71f993e4c9066ec7c4660c27365b2ea/node_modules/@sigstore/protobuf-specs/dist/__generated__/sigstore_trustroot.js
var require_sigstore_trustroot = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/protobuf-specs/0.5.1/aaa9d549f5093b781009861cd12a17a7f71f993e4c9066ec7c4660c27365b2ea/node_modules/@sigstore/protobuf-specs/dist/__generated__/sigstore_trustroot.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.ClientTrustConfig = exports2.ServiceConfiguration = exports2.Service = exports2.SigningConfig = exports2.TrustedRoot = exports2.CertificateAuthority = exports2.TransparencyLogInstance = exports2.ServiceSelector = void 0;
    exports2.serviceSelectorFromJSON = serviceSelectorFromJSON;
    exports2.serviceSelectorToJSON = serviceSelectorToJSON;
    var sigstore_common_1 = require_sigstore_common();
    var ServiceSelector;
    (function(ServiceSelector2) {
      ServiceSelector2[ServiceSelector2["SERVICE_SELECTOR_UNDEFINED"] = 0] = "SERVICE_SELECTOR_UNDEFINED";
      ServiceSelector2[ServiceSelector2["ALL"] = 1] = "ALL";
      ServiceSelector2[ServiceSelector2["ANY"] = 2] = "ANY";
      ServiceSelector2[ServiceSelector2["EXACT"] = 3] = "EXACT";
    })(ServiceSelector || (exports2.ServiceSelector = ServiceSelector = {}));
    function serviceSelectorFromJSON(object) {
      switch (object) {
        case 0:
        case "SERVICE_SELECTOR_UNDEFINED":
          return ServiceSelector.SERVICE_SELECTOR_UNDEFINED;
        case 1:
        case "ALL":
          return ServiceSelector.ALL;
        case 2:
        case "ANY":
          return ServiceSelector.ANY;
        case 3:
        case "EXACT":
          return ServiceSelector.EXACT;
        default:
          throw new globalThis.Error("Unrecognized enum value " + object + " for enum ServiceSelector");
      }
    }
    function serviceSelectorToJSON(object) {
      switch (object) {
        case ServiceSelector.SERVICE_SELECTOR_UNDEFINED:
          return "SERVICE_SELECTOR_UNDEFINED";
        case ServiceSelector.ALL:
          return "ALL";
        case ServiceSelector.ANY:
          return "ANY";
        case ServiceSelector.EXACT:
          return "EXACT";
        default:
          throw new globalThis.Error("Unrecognized enum value " + object + " for enum ServiceSelector");
      }
    }
    exports2.TransparencyLogInstance = {
      fromJSON(object) {
        return {
          baseUrl: isSet(object.baseUrl) ? globalThis.String(object.baseUrl) : "",
          hashAlgorithm: isSet(object.hashAlgorithm) ? (0, sigstore_common_1.hashAlgorithmFromJSON)(object.hashAlgorithm) : 0,
          publicKey: isSet(object.publicKey) ? sigstore_common_1.PublicKey.fromJSON(object.publicKey) : void 0,
          logId: isSet(object.logId) ? sigstore_common_1.LogId.fromJSON(object.logId) : void 0,
          checkpointKeyId: isSet(object.checkpointKeyId) ? sigstore_common_1.LogId.fromJSON(object.checkpointKeyId) : void 0,
          operator: isSet(object.operator) ? globalThis.String(object.operator) : ""
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.baseUrl !== "") {
          obj.baseUrl = message.baseUrl;
        }
        if (message.hashAlgorithm !== 0) {
          obj.hashAlgorithm = (0, sigstore_common_1.hashAlgorithmToJSON)(message.hashAlgorithm);
        }
        if (message.publicKey !== void 0) {
          obj.publicKey = sigstore_common_1.PublicKey.toJSON(message.publicKey);
        }
        if (message.logId !== void 0) {
          obj.logId = sigstore_common_1.LogId.toJSON(message.logId);
        }
        if (message.checkpointKeyId !== void 0) {
          obj.checkpointKeyId = sigstore_common_1.LogId.toJSON(message.checkpointKeyId);
        }
        if (message.operator !== "") {
          obj.operator = message.operator;
        }
        return obj;
      }
    };
    exports2.CertificateAuthority = {
      fromJSON(object) {
        return {
          subject: isSet(object.subject) ? sigstore_common_1.DistinguishedName.fromJSON(object.subject) : void 0,
          uri: isSet(object.uri) ? globalThis.String(object.uri) : "",
          certChain: isSet(object.certChain) ? sigstore_common_1.X509CertificateChain.fromJSON(object.certChain) : void 0,
          validFor: isSet(object.validFor) ? sigstore_common_1.TimeRange.fromJSON(object.validFor) : void 0,
          operator: isSet(object.operator) ? globalThis.String(object.operator) : ""
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.subject !== void 0) {
          obj.subject = sigstore_common_1.DistinguishedName.toJSON(message.subject);
        }
        if (message.uri !== "") {
          obj.uri = message.uri;
        }
        if (message.certChain !== void 0) {
          obj.certChain = sigstore_common_1.X509CertificateChain.toJSON(message.certChain);
        }
        if (message.validFor !== void 0) {
          obj.validFor = sigstore_common_1.TimeRange.toJSON(message.validFor);
        }
        if (message.operator !== "") {
          obj.operator = message.operator;
        }
        return obj;
      }
    };
    exports2.TrustedRoot = {
      fromJSON(object) {
        return {
          mediaType: isSet(object.mediaType) ? globalThis.String(object.mediaType) : "",
          tlogs: globalThis.Array.isArray(object?.tlogs) ? object.tlogs.map((e) => exports2.TransparencyLogInstance.fromJSON(e)) : [],
          certificateAuthorities: globalThis.Array.isArray(object?.certificateAuthorities) ? object.certificateAuthorities.map((e) => exports2.CertificateAuthority.fromJSON(e)) : [],
          ctlogs: globalThis.Array.isArray(object?.ctlogs) ? object.ctlogs.map((e) => exports2.TransparencyLogInstance.fromJSON(e)) : [],
          timestampAuthorities: globalThis.Array.isArray(object?.timestampAuthorities) ? object.timestampAuthorities.map((e) => exports2.CertificateAuthority.fromJSON(e)) : []
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.mediaType !== "") {
          obj.mediaType = message.mediaType;
        }
        if (message.tlogs?.length) {
          obj.tlogs = message.tlogs.map((e) => exports2.TransparencyLogInstance.toJSON(e));
        }
        if (message.certificateAuthorities?.length) {
          obj.certificateAuthorities = message.certificateAuthorities.map((e) => exports2.CertificateAuthority.toJSON(e));
        }
        if (message.ctlogs?.length) {
          obj.ctlogs = message.ctlogs.map((e) => exports2.TransparencyLogInstance.toJSON(e));
        }
        if (message.timestampAuthorities?.length) {
          obj.timestampAuthorities = message.timestampAuthorities.map((e) => exports2.CertificateAuthority.toJSON(e));
        }
        return obj;
      }
    };
    exports2.SigningConfig = {
      fromJSON(object) {
        return {
          mediaType: isSet(object.mediaType) ? globalThis.String(object.mediaType) : "",
          caUrls: globalThis.Array.isArray(object?.caUrls) ? object.caUrls.map((e) => exports2.Service.fromJSON(e)) : [],
          oidcUrls: globalThis.Array.isArray(object?.oidcUrls) ? object.oidcUrls.map((e) => exports2.Service.fromJSON(e)) : [],
          rekorTlogUrls: globalThis.Array.isArray(object?.rekorTlogUrls) ? object.rekorTlogUrls.map((e) => exports2.Service.fromJSON(e)) : [],
          rekorTlogConfig: isSet(object.rekorTlogConfig) ? exports2.ServiceConfiguration.fromJSON(object.rekorTlogConfig) : void 0,
          tsaUrls: globalThis.Array.isArray(object?.tsaUrls) ? object.tsaUrls.map((e) => exports2.Service.fromJSON(e)) : [],
          tsaConfig: isSet(object.tsaConfig) ? exports2.ServiceConfiguration.fromJSON(object.tsaConfig) : void 0
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.mediaType !== "") {
          obj.mediaType = message.mediaType;
        }
        if (message.caUrls?.length) {
          obj.caUrls = message.caUrls.map((e) => exports2.Service.toJSON(e));
        }
        if (message.oidcUrls?.length) {
          obj.oidcUrls = message.oidcUrls.map((e) => exports2.Service.toJSON(e));
        }
        if (message.rekorTlogUrls?.length) {
          obj.rekorTlogUrls = message.rekorTlogUrls.map((e) => exports2.Service.toJSON(e));
        }
        if (message.rekorTlogConfig !== void 0) {
          obj.rekorTlogConfig = exports2.ServiceConfiguration.toJSON(message.rekorTlogConfig);
        }
        if (message.tsaUrls?.length) {
          obj.tsaUrls = message.tsaUrls.map((e) => exports2.Service.toJSON(e));
        }
        if (message.tsaConfig !== void 0) {
          obj.tsaConfig = exports2.ServiceConfiguration.toJSON(message.tsaConfig);
        }
        return obj;
      }
    };
    exports2.Service = {
      fromJSON(object) {
        return {
          url: isSet(object.url) ? globalThis.String(object.url) : "",
          majorApiVersion: isSet(object.majorApiVersion) ? globalThis.Number(object.majorApiVersion) : 0,
          validFor: isSet(object.validFor) ? sigstore_common_1.TimeRange.fromJSON(object.validFor) : void 0,
          operator: isSet(object.operator) ? globalThis.String(object.operator) : ""
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.url !== "") {
          obj.url = message.url;
        }
        if (message.majorApiVersion !== 0) {
          obj.majorApiVersion = Math.round(message.majorApiVersion);
        }
        if (message.validFor !== void 0) {
          obj.validFor = sigstore_common_1.TimeRange.toJSON(message.validFor);
        }
        if (message.operator !== "") {
          obj.operator = message.operator;
        }
        return obj;
      }
    };
    exports2.ServiceConfiguration = {
      fromJSON(object) {
        return {
          selector: isSet(object.selector) ? serviceSelectorFromJSON(object.selector) : 0,
          count: isSet(object.count) ? globalThis.Number(object.count) : 0
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.selector !== 0) {
          obj.selector = serviceSelectorToJSON(message.selector);
        }
        if (message.count !== 0) {
          obj.count = Math.round(message.count);
        }
        return obj;
      }
    };
    exports2.ClientTrustConfig = {
      fromJSON(object) {
        return {
          mediaType: isSet(object.mediaType) ? globalThis.String(object.mediaType) : "",
          trustedRoot: isSet(object.trustedRoot) ? exports2.TrustedRoot.fromJSON(object.trustedRoot) : void 0,
          signingConfig: isSet(object.signingConfig) ? exports2.SigningConfig.fromJSON(object.signingConfig) : void 0
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.mediaType !== "") {
          obj.mediaType = message.mediaType;
        }
        if (message.trustedRoot !== void 0) {
          obj.trustedRoot = exports2.TrustedRoot.toJSON(message.trustedRoot);
        }
        if (message.signingConfig !== void 0) {
          obj.signingConfig = exports2.SigningConfig.toJSON(message.signingConfig);
        }
        return obj;
      }
    };
    function isSet(value) {
      return value !== null && value !== void 0;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/protobuf-specs/0.5.1/aaa9d549f5093b781009861cd12a17a7f71f993e4c9066ec7c4660c27365b2ea/node_modules/@sigstore/protobuf-specs/dist/__generated__/sigstore_verification.js
var require_sigstore_verification = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/protobuf-specs/0.5.1/aaa9d549f5093b781009861cd12a17a7f71f993e4c9066ec7c4660c27365b2ea/node_modules/@sigstore/protobuf-specs/dist/__generated__/sigstore_verification.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.Input = exports2.Artifact = exports2.ArtifactVerificationOptions_ObserverTimestampOptions = exports2.ArtifactVerificationOptions_TlogIntegratedTimestampOptions = exports2.ArtifactVerificationOptions_TimestampAuthorityOptions = exports2.ArtifactVerificationOptions_CtlogOptions = exports2.ArtifactVerificationOptions_TlogOptions = exports2.ArtifactVerificationOptions = exports2.PublicKeyIdentities = exports2.CertificateIdentities = exports2.CertificateIdentity = void 0;
    var sigstore_bundle_1 = require_sigstore_bundle();
    var sigstore_common_1 = require_sigstore_common();
    var sigstore_trustroot_1 = require_sigstore_trustroot();
    exports2.CertificateIdentity = {
      fromJSON(object) {
        return {
          issuer: isSet(object.issuer) ? globalThis.String(object.issuer) : "",
          san: isSet(object.san) ? sigstore_common_1.SubjectAlternativeName.fromJSON(object.san) : void 0,
          oids: globalThis.Array.isArray(object?.oids) ? object.oids.map((e) => sigstore_common_1.ObjectIdentifierValuePair.fromJSON(e)) : []
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.issuer !== "") {
          obj.issuer = message.issuer;
        }
        if (message.san !== void 0) {
          obj.san = sigstore_common_1.SubjectAlternativeName.toJSON(message.san);
        }
        if (message.oids?.length) {
          obj.oids = message.oids.map((e) => sigstore_common_1.ObjectIdentifierValuePair.toJSON(e));
        }
        return obj;
      }
    };
    exports2.CertificateIdentities = {
      fromJSON(object) {
        return {
          identities: globalThis.Array.isArray(object?.identities) ? object.identities.map((e) => exports2.CertificateIdentity.fromJSON(e)) : []
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.identities?.length) {
          obj.identities = message.identities.map((e) => exports2.CertificateIdentity.toJSON(e));
        }
        return obj;
      }
    };
    exports2.PublicKeyIdentities = {
      fromJSON(object) {
        return {
          publicKeys: globalThis.Array.isArray(object?.publicKeys) ? object.publicKeys.map((e) => sigstore_common_1.PublicKey.fromJSON(e)) : []
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.publicKeys?.length) {
          obj.publicKeys = message.publicKeys.map((e) => sigstore_common_1.PublicKey.toJSON(e));
        }
        return obj;
      }
    };
    exports2.ArtifactVerificationOptions = {
      fromJSON(object) {
        return {
          signers: isSet(object.certificateIdentities) ? {
            $case: "certificateIdentities",
            certificateIdentities: exports2.CertificateIdentities.fromJSON(object.certificateIdentities)
          } : isSet(object.publicKeys) ? { $case: "publicKeys", publicKeys: exports2.PublicKeyIdentities.fromJSON(object.publicKeys) } : void 0,
          tlogOptions: isSet(object.tlogOptions) ? exports2.ArtifactVerificationOptions_TlogOptions.fromJSON(object.tlogOptions) : void 0,
          ctlogOptions: isSet(object.ctlogOptions) ? exports2.ArtifactVerificationOptions_CtlogOptions.fromJSON(object.ctlogOptions) : void 0,
          tsaOptions: isSet(object.tsaOptions) ? exports2.ArtifactVerificationOptions_TimestampAuthorityOptions.fromJSON(object.tsaOptions) : void 0,
          integratedTsOptions: isSet(object.integratedTsOptions) ? exports2.ArtifactVerificationOptions_TlogIntegratedTimestampOptions.fromJSON(object.integratedTsOptions) : void 0,
          observerOptions: isSet(object.observerOptions) ? exports2.ArtifactVerificationOptions_ObserverTimestampOptions.fromJSON(object.observerOptions) : void 0
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.signers?.$case === "certificateIdentities") {
          obj.certificateIdentities = exports2.CertificateIdentities.toJSON(message.signers.certificateIdentities);
        } else if (message.signers?.$case === "publicKeys") {
          obj.publicKeys = exports2.PublicKeyIdentities.toJSON(message.signers.publicKeys);
        }
        if (message.tlogOptions !== void 0) {
          obj.tlogOptions = exports2.ArtifactVerificationOptions_TlogOptions.toJSON(message.tlogOptions);
        }
        if (message.ctlogOptions !== void 0) {
          obj.ctlogOptions = exports2.ArtifactVerificationOptions_CtlogOptions.toJSON(message.ctlogOptions);
        }
        if (message.tsaOptions !== void 0) {
          obj.tsaOptions = exports2.ArtifactVerificationOptions_TimestampAuthorityOptions.toJSON(message.tsaOptions);
        }
        if (message.integratedTsOptions !== void 0) {
          obj.integratedTsOptions = exports2.ArtifactVerificationOptions_TlogIntegratedTimestampOptions.toJSON(message.integratedTsOptions);
        }
        if (message.observerOptions !== void 0) {
          obj.observerOptions = exports2.ArtifactVerificationOptions_ObserverTimestampOptions.toJSON(message.observerOptions);
        }
        return obj;
      }
    };
    exports2.ArtifactVerificationOptions_TlogOptions = {
      fromJSON(object) {
        return {
          threshold: isSet(object.threshold) ? globalThis.Number(object.threshold) : 0,
          performOnlineVerification: isSet(object.performOnlineVerification) ? globalThis.Boolean(object.performOnlineVerification) : false,
          disable: isSet(object.disable) ? globalThis.Boolean(object.disable) : false
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.threshold !== 0) {
          obj.threshold = Math.round(message.threshold);
        }
        if (message.performOnlineVerification !== false) {
          obj.performOnlineVerification = message.performOnlineVerification;
        }
        if (message.disable !== false) {
          obj.disable = message.disable;
        }
        return obj;
      }
    };
    exports2.ArtifactVerificationOptions_CtlogOptions = {
      fromJSON(object) {
        return {
          threshold: isSet(object.threshold) ? globalThis.Number(object.threshold) : 0,
          disable: isSet(object.disable) ? globalThis.Boolean(object.disable) : false
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.threshold !== 0) {
          obj.threshold = Math.round(message.threshold);
        }
        if (message.disable !== false) {
          obj.disable = message.disable;
        }
        return obj;
      }
    };
    exports2.ArtifactVerificationOptions_TimestampAuthorityOptions = {
      fromJSON(object) {
        return {
          threshold: isSet(object.threshold) ? globalThis.Number(object.threshold) : 0,
          disable: isSet(object.disable) ? globalThis.Boolean(object.disable) : false
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.threshold !== 0) {
          obj.threshold = Math.round(message.threshold);
        }
        if (message.disable !== false) {
          obj.disable = message.disable;
        }
        return obj;
      }
    };
    exports2.ArtifactVerificationOptions_TlogIntegratedTimestampOptions = {
      fromJSON(object) {
        return {
          threshold: isSet(object.threshold) ? globalThis.Number(object.threshold) : 0,
          disable: isSet(object.disable) ? globalThis.Boolean(object.disable) : false
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.threshold !== 0) {
          obj.threshold = Math.round(message.threshold);
        }
        if (message.disable !== false) {
          obj.disable = message.disable;
        }
        return obj;
      }
    };
    exports2.ArtifactVerificationOptions_ObserverTimestampOptions = {
      fromJSON(object) {
        return {
          threshold: isSet(object.threshold) ? globalThis.Number(object.threshold) : 0,
          disable: isSet(object.disable) ? globalThis.Boolean(object.disable) : false
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.threshold !== 0) {
          obj.threshold = Math.round(message.threshold);
        }
        if (message.disable !== false) {
          obj.disable = message.disable;
        }
        return obj;
      }
    };
    exports2.Artifact = {
      fromJSON(object) {
        return {
          data: isSet(object.artifactUri) ? { $case: "artifactUri", artifactUri: globalThis.String(object.artifactUri) } : isSet(object.artifact) ? { $case: "artifact", artifact: Buffer.from(bytesFromBase64(object.artifact)) } : isSet(object.artifactDigest) ? { $case: "artifactDigest", artifactDigest: sigstore_common_1.HashOutput.fromJSON(object.artifactDigest) } : void 0
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.data?.$case === "artifactUri") {
          obj.artifactUri = message.data.artifactUri;
        } else if (message.data?.$case === "artifact") {
          obj.artifact = base64FromBytes(message.data.artifact);
        } else if (message.data?.$case === "artifactDigest") {
          obj.artifactDigest = sigstore_common_1.HashOutput.toJSON(message.data.artifactDigest);
        }
        return obj;
      }
    };
    exports2.Input = {
      fromJSON(object) {
        return {
          artifactTrustRoot: isSet(object.artifactTrustRoot) ? sigstore_trustroot_1.TrustedRoot.fromJSON(object.artifactTrustRoot) : void 0,
          artifactVerificationOptions: isSet(object.artifactVerificationOptions) ? exports2.ArtifactVerificationOptions.fromJSON(object.artifactVerificationOptions) : void 0,
          bundle: isSet(object.bundle) ? sigstore_bundle_1.Bundle.fromJSON(object.bundle) : void 0,
          artifact: isSet(object.artifact) ? exports2.Artifact.fromJSON(object.artifact) : void 0
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.artifactTrustRoot !== void 0) {
          obj.artifactTrustRoot = sigstore_trustroot_1.TrustedRoot.toJSON(message.artifactTrustRoot);
        }
        if (message.artifactVerificationOptions !== void 0) {
          obj.artifactVerificationOptions = exports2.ArtifactVerificationOptions.toJSON(message.artifactVerificationOptions);
        }
        if (message.bundle !== void 0) {
          obj.bundle = sigstore_bundle_1.Bundle.toJSON(message.bundle);
        }
        if (message.artifact !== void 0) {
          obj.artifact = exports2.Artifact.toJSON(message.artifact);
        }
        return obj;
      }
    };
    function bytesFromBase64(b64) {
      return Uint8Array.from(globalThis.Buffer.from(b64, "base64"));
    }
    function base64FromBytes(arr) {
      return globalThis.Buffer.from(arr).toString("base64");
    }
    function isSet(value) {
      return value !== null && value !== void 0;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/protobuf-specs/0.5.1/aaa9d549f5093b781009861cd12a17a7f71f993e4c9066ec7c4660c27365b2ea/node_modules/@sigstore/protobuf-specs/dist/index.js
var require_dist16 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/protobuf-specs/0.5.1/aaa9d549f5093b781009861cd12a17a7f71f993e4c9066ec7c4660c27365b2ea/node_modules/@sigstore/protobuf-specs/dist/index.js"(exports2) {
    "use strict";
    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      var desc = Object.getOwnPropertyDescriptor(m, k2);
      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
        desc = { enumerable: true, get: function() {
          return m[k2];
        } };
      }
      Object.defineProperty(o2, k22, desc);
    }) : (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      o2[k22] = m[k2];
    }));
    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    __exportStar2(require_envelope(), exports2);
    __exportStar2(require_sigstore_bundle(), exports2);
    __exportStar2(require_sigstore_common(), exports2);
    __exportStar2(require_sigstore_rekor(), exports2);
    __exportStar2(require_sigstore_trustroot(), exports2);
    __exportStar2(require_sigstore_verification(), exports2);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/bundle/4.0.0/23e6e4b1f45fb48b241475db9085c6bf5770b8de719b280f5870851da2d416bc/node_modules/@sigstore/bundle/dist/bundle.js
var require_bundle = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/bundle/4.0.0/23e6e4b1f45fb48b241475db9085c6bf5770b8de719b280f5870851da2d416bc/node_modules/@sigstore/bundle/dist/bundle.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.BUNDLE_V03_MEDIA_TYPE = exports2.BUNDLE_V03_LEGACY_MEDIA_TYPE = exports2.BUNDLE_V02_MEDIA_TYPE = exports2.BUNDLE_V01_MEDIA_TYPE = void 0;
    exports2.isBundleWithCertificateChain = isBundleWithCertificateChain;
    exports2.isBundleWithPublicKey = isBundleWithPublicKey;
    exports2.isBundleWithMessageSignature = isBundleWithMessageSignature;
    exports2.isBundleWithDsseEnvelope = isBundleWithDsseEnvelope;
    exports2.BUNDLE_V01_MEDIA_TYPE = "application/vnd.dev.sigstore.bundle+json;version=0.1";
    exports2.BUNDLE_V02_MEDIA_TYPE = "application/vnd.dev.sigstore.bundle+json;version=0.2";
    exports2.BUNDLE_V03_LEGACY_MEDIA_TYPE = "application/vnd.dev.sigstore.bundle+json;version=0.3";
    exports2.BUNDLE_V03_MEDIA_TYPE = "application/vnd.dev.sigstore.bundle.v0.3+json";
    function isBundleWithCertificateChain(b) {
      return b.verificationMaterial.content.$case === "x509CertificateChain";
    }
    function isBundleWithPublicKey(b) {
      return b.verificationMaterial.content.$case === "publicKey";
    }
    function isBundleWithMessageSignature(b) {
      return b.content.$case === "messageSignature";
    }
    function isBundleWithDsseEnvelope(b) {
      return b.content.$case === "dsseEnvelope";
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/bundle/4.0.0/23e6e4b1f45fb48b241475db9085c6bf5770b8de719b280f5870851da2d416bc/node_modules/@sigstore/bundle/dist/build.js
var require_build2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/bundle/4.0.0/23e6e4b1f45fb48b241475db9085c6bf5770b8de719b280f5870851da2d416bc/node_modules/@sigstore/bundle/dist/build.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.toMessageSignatureBundle = toMessageSignatureBundle;
    exports2.toDSSEBundle = toDSSEBundle;
    var protobuf_specs_1 = require_dist16();
    var bundle_1 = require_bundle();
    function toMessageSignatureBundle(options) {
      return {
        mediaType: options.certificateChain ? bundle_1.BUNDLE_V02_MEDIA_TYPE : bundle_1.BUNDLE_V03_MEDIA_TYPE,
        content: {
          $case: "messageSignature",
          messageSignature: {
            messageDigest: {
              algorithm: protobuf_specs_1.HashAlgorithm.SHA2_256,
              digest: options.digest
            },
            signature: options.signature
          }
        },
        verificationMaterial: toVerificationMaterial(options)
      };
    }
    function toDSSEBundle(options) {
      return {
        mediaType: options.certificateChain ? bundle_1.BUNDLE_V02_MEDIA_TYPE : bundle_1.BUNDLE_V03_MEDIA_TYPE,
        content: {
          $case: "dsseEnvelope",
          dsseEnvelope: toEnvelope(options)
        },
        verificationMaterial: toVerificationMaterial(options)
      };
    }
    function toEnvelope(options) {
      return {
        payloadType: options.artifactType,
        payload: options.artifact,
        signatures: [toSignature(options)]
      };
    }
    function toSignature(options) {
      return {
        keyid: options.keyHint || "",
        sig: options.signature
      };
    }
    function toVerificationMaterial(options) {
      return {
        content: toKeyContent(options),
        tlogEntries: [],
        timestampVerificationData: { rfc3161Timestamps: [] }
      };
    }
    function toKeyContent(options) {
      if (options.certificate) {
        if (options.certificateChain) {
          return {
            $case: "x509CertificateChain",
            x509CertificateChain: {
              certificates: [{ rawBytes: options.certificate }]
            }
          };
        } else {
          return {
            $case: "certificate",
            certificate: { rawBytes: options.certificate }
          };
        }
      } else {
        return {
          $case: "publicKey",
          publicKey: {
            hint: options.keyHint || ""
          }
        };
      }
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/bundle/4.0.0/23e6e4b1f45fb48b241475db9085c6bf5770b8de719b280f5870851da2d416bc/node_modules/@sigstore/bundle/dist/error.js
var require_error3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/bundle/4.0.0/23e6e4b1f45fb48b241475db9085c6bf5770b8de719b280f5870851da2d416bc/node_modules/@sigstore/bundle/dist/error.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.ValidationError = void 0;
    var ValidationError = class extends Error {
      constructor(message, fields) {
        super(message);
        this.fields = fields;
      }
    };
    exports2.ValidationError = ValidationError;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/bundle/4.0.0/23e6e4b1f45fb48b241475db9085c6bf5770b8de719b280f5870851da2d416bc/node_modules/@sigstore/bundle/dist/validate.js
var require_validate = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/bundle/4.0.0/23e6e4b1f45fb48b241475db9085c6bf5770b8de719b280f5870851da2d416bc/node_modules/@sigstore/bundle/dist/validate.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.assertBundle = assertBundle;
    exports2.assertBundleV01 = assertBundleV01;
    exports2.isBundleV01 = isBundleV01;
    exports2.assertBundleV02 = assertBundleV02;
    exports2.assertBundleLatest = assertBundleLatest;
    var error_1 = require_error3();
    function assertBundle(b) {
      const invalidValues = validateBundleBase(b);
      if (invalidValues.length > 0) {
        throw new error_1.ValidationError("invalid bundle", invalidValues);
      }
    }
    function assertBundleV01(b) {
      const invalidValues = [];
      invalidValues.push(...validateBundleBase(b));
      invalidValues.push(...validateInclusionPromise(b));
      if (invalidValues.length > 0) {
        throw new error_1.ValidationError("invalid v0.1 bundle", invalidValues);
      }
    }
    function isBundleV01(b) {
      try {
        assertBundleV01(b);
        return true;
      } catch (e) {
        return false;
      }
    }
    function assertBundleV02(b) {
      const invalidValues = [];
      invalidValues.push(...validateBundleBase(b));
      invalidValues.push(...validateInclusionProof(b));
      if (invalidValues.length > 0) {
        throw new error_1.ValidationError("invalid v0.2 bundle", invalidValues);
      }
    }
    function assertBundleLatest(b) {
      const invalidValues = [];
      invalidValues.push(...validateBundleBase(b));
      invalidValues.push(...validateInclusionProof(b));
      invalidValues.push(...validateNoCertificateChain(b));
      if (invalidValues.length > 0) {
        throw new error_1.ValidationError("invalid bundle", invalidValues);
      }
    }
    function validateBundleBase(b) {
      const invalidValues = [];
      if (b.mediaType === void 0 || !b.mediaType.match(/^application\/vnd\.dev\.sigstore\.bundle\+json;version=\d\.\d/) && !b.mediaType.match(/^application\/vnd\.dev\.sigstore\.bundle\.v\d\.\d\+json/)) {
        invalidValues.push("mediaType");
      }
      if (b.content === void 0) {
        invalidValues.push("content");
      } else {
        switch (b.content.$case) {
          case "messageSignature":
            if (b.content.messageSignature.messageDigest === void 0) {
              invalidValues.push("content.messageSignature.messageDigest");
            } else {
              if (b.content.messageSignature.messageDigest.digest.length === 0) {
                invalidValues.push("content.messageSignature.messageDigest.digest");
              }
            }
            if (b.content.messageSignature.signature.length === 0) {
              invalidValues.push("content.messageSignature.signature");
            }
            break;
          case "dsseEnvelope":
            if (b.content.dsseEnvelope.payload.length === 0) {
              invalidValues.push("content.dsseEnvelope.payload");
            }
            if (b.content.dsseEnvelope.signatures.length !== 1) {
              invalidValues.push("content.dsseEnvelope.signatures");
            } else {
              if (b.content.dsseEnvelope.signatures[0].sig.length === 0) {
                invalidValues.push("content.dsseEnvelope.signatures[0].sig");
              }
            }
            break;
        }
      }
      if (b.verificationMaterial === void 0) {
        invalidValues.push("verificationMaterial");
      } else {
        if (b.verificationMaterial.content === void 0) {
          invalidValues.push("verificationMaterial.content");
        } else {
          switch (b.verificationMaterial.content.$case) {
            case "x509CertificateChain":
              if (b.verificationMaterial.content.x509CertificateChain.certificates.length === 0) {
                invalidValues.push("verificationMaterial.content.x509CertificateChain.certificates");
              }
              b.verificationMaterial.content.x509CertificateChain.certificates.forEach((cert, i2) => {
                if (cert.rawBytes.length === 0) {
                  invalidValues.push(`verificationMaterial.content.x509CertificateChain.certificates[${i2}].rawBytes`);
                }
              });
              break;
            case "certificate":
              if (b.verificationMaterial.content.certificate.rawBytes.length === 0) {
                invalidValues.push("verificationMaterial.content.certificate.rawBytes");
              }
              break;
          }
        }
        if (b.verificationMaterial.tlogEntries === void 0) {
          invalidValues.push("verificationMaterial.tlogEntries");
        } else {
          if (b.verificationMaterial.tlogEntries.length > 0) {
            b.verificationMaterial.tlogEntries.forEach((entry, i2) => {
              if (entry.logId === void 0) {
                invalidValues.push(`verificationMaterial.tlogEntries[${i2}].logId`);
              }
              if (entry.kindVersion === void 0) {
                invalidValues.push(`verificationMaterial.tlogEntries[${i2}].kindVersion`);
              }
            });
          }
        }
      }
      return invalidValues;
    }
    function validateInclusionPromise(b) {
      const invalidValues = [];
      if (b.verificationMaterial && b.verificationMaterial.tlogEntries?.length > 0) {
        b.verificationMaterial.tlogEntries.forEach((entry, i2) => {
          if (entry.inclusionPromise === void 0) {
            invalidValues.push(`verificationMaterial.tlogEntries[${i2}].inclusionPromise`);
          }
        });
      }
      return invalidValues;
    }
    function validateInclusionProof(b) {
      const invalidValues = [];
      if (b.verificationMaterial && b.verificationMaterial.tlogEntries?.length > 0) {
        b.verificationMaterial.tlogEntries.forEach((entry, i2) => {
          if (entry.inclusionProof === void 0) {
            invalidValues.push(`verificationMaterial.tlogEntries[${i2}].inclusionProof`);
          } else {
            if (entry.inclusionProof.checkpoint === void 0) {
              invalidValues.push(`verificationMaterial.tlogEntries[${i2}].inclusionProof.checkpoint`);
            }
          }
        });
      }
      return invalidValues;
    }
    function validateNoCertificateChain(b) {
      const invalidValues = [];
      if (b.verificationMaterial?.content?.$case === "x509CertificateChain") {
        invalidValues.push("verificationMaterial.content.$case");
      }
      return invalidValues;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/bundle/4.0.0/23e6e4b1f45fb48b241475db9085c6bf5770b8de719b280f5870851da2d416bc/node_modules/@sigstore/bundle/dist/serialized.js
var require_serialized = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/bundle/4.0.0/23e6e4b1f45fb48b241475db9085c6bf5770b8de719b280f5870851da2d416bc/node_modules/@sigstore/bundle/dist/serialized.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.envelopeToJSON = exports2.envelopeFromJSON = exports2.bundleToJSON = exports2.bundleFromJSON = void 0;
    var protobuf_specs_1 = require_dist16();
    var bundle_1 = require_bundle();
    var validate_1 = require_validate();
    var bundleFromJSON = (obj) => {
      const bundle = protobuf_specs_1.Bundle.fromJSON(obj);
      switch (bundle.mediaType) {
        case bundle_1.BUNDLE_V01_MEDIA_TYPE:
          (0, validate_1.assertBundleV01)(bundle);
          break;
        case bundle_1.BUNDLE_V02_MEDIA_TYPE:
          (0, validate_1.assertBundleV02)(bundle);
          break;
        default:
          (0, validate_1.assertBundleLatest)(bundle);
          break;
      }
      return bundle;
    };
    exports2.bundleFromJSON = bundleFromJSON;
    var bundleToJSON = (bundle) => {
      return protobuf_specs_1.Bundle.toJSON(bundle);
    };
    exports2.bundleToJSON = bundleToJSON;
    var envelopeFromJSON = (obj) => {
      return protobuf_specs_1.Envelope.fromJSON(obj);
    };
    exports2.envelopeFromJSON = envelopeFromJSON;
    var envelopeToJSON = (envelope) => {
      return protobuf_specs_1.Envelope.toJSON(envelope);
    };
    exports2.envelopeToJSON = envelopeToJSON;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/bundle/4.0.0/23e6e4b1f45fb48b241475db9085c6bf5770b8de719b280f5870851da2d416bc/node_modules/@sigstore/bundle/dist/index.js
var require_dist17 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/bundle/4.0.0/23e6e4b1f45fb48b241475db9085c6bf5770b8de719b280f5870851da2d416bc/node_modules/@sigstore/bundle/dist/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.isBundleV01 = exports2.assertBundleV02 = exports2.assertBundleV01 = exports2.assertBundleLatest = exports2.assertBundle = exports2.envelopeToJSON = exports2.envelopeFromJSON = exports2.bundleToJSON = exports2.bundleFromJSON = exports2.ValidationError = exports2.isBundleWithPublicKey = exports2.isBundleWithMessageSignature = exports2.isBundleWithDsseEnvelope = exports2.isBundleWithCertificateChain = exports2.BUNDLE_V03_MEDIA_TYPE = exports2.BUNDLE_V03_LEGACY_MEDIA_TYPE = exports2.BUNDLE_V02_MEDIA_TYPE = exports2.BUNDLE_V01_MEDIA_TYPE = exports2.toMessageSignatureBundle = exports2.toDSSEBundle = void 0;
    var build_1 = require_build2();
    Object.defineProperty(exports2, "toDSSEBundle", { enumerable: true, get: function() {
      return build_1.toDSSEBundle;
    } });
    Object.defineProperty(exports2, "toMessageSignatureBundle", { enumerable: true, get: function() {
      return build_1.toMessageSignatureBundle;
    } });
    var bundle_1 = require_bundle();
    Object.defineProperty(exports2, "BUNDLE_V01_MEDIA_TYPE", { enumerable: true, get: function() {
      return bundle_1.BUNDLE_V01_MEDIA_TYPE;
    } });
    Object.defineProperty(exports2, "BUNDLE_V02_MEDIA_TYPE", { enumerable: true, get: function() {
      return bundle_1.BUNDLE_V02_MEDIA_TYPE;
    } });
    Object.defineProperty(exports2, "BUNDLE_V03_LEGACY_MEDIA_TYPE", { enumerable: true, get: function() {
      return bundle_1.BUNDLE_V03_LEGACY_MEDIA_TYPE;
    } });
    Object.defineProperty(exports2, "BUNDLE_V03_MEDIA_TYPE", { enumerable: true, get: function() {
      return bundle_1.BUNDLE_V03_MEDIA_TYPE;
    } });
    Object.defineProperty(exports2, "isBundleWithCertificateChain", { enumerable: true, get: function() {
      return bundle_1.isBundleWithCertificateChain;
    } });
    Object.defineProperty(exports2, "isBundleWithDsseEnvelope", { enumerable: true, get: function() {
      return bundle_1.isBundleWithDsseEnvelope;
    } });
    Object.defineProperty(exports2, "isBundleWithMessageSignature", { enumerable: true, get: function() {
      return bundle_1.isBundleWithMessageSignature;
    } });
    Object.defineProperty(exports2, "isBundleWithPublicKey", { enumerable: true, get: function() {
      return bundle_1.isBundleWithPublicKey;
    } });
    var error_1 = require_error3();
    Object.defineProperty(exports2, "ValidationError", { enumerable: true, get: function() {
      return error_1.ValidationError;
    } });
    var serialized_1 = require_serialized();
    Object.defineProperty(exports2, "bundleFromJSON", { enumerable: true, get: function() {
      return serialized_1.bundleFromJSON;
    } });
    Object.defineProperty(exports2, "bundleToJSON", { enumerable: true, get: function() {
      return serialized_1.bundleToJSON;
    } });
    Object.defineProperty(exports2, "envelopeFromJSON", { enumerable: true, get: function() {
      return serialized_1.envelopeFromJSON;
    } });
    Object.defineProperty(exports2, "envelopeToJSON", { enumerable: true, get: function() {
      return serialized_1.envelopeToJSON;
    } });
    var validate_1 = require_validate();
    Object.defineProperty(exports2, "assertBundle", { enumerable: true, get: function() {
      return validate_1.assertBundle;
    } });
    Object.defineProperty(exports2, "assertBundleLatest", { enumerable: true, get: function() {
      return validate_1.assertBundleLatest;
    } });
    Object.defineProperty(exports2, "assertBundleV01", { enumerable: true, get: function() {
      return validate_1.assertBundleV01;
    } });
    Object.defineProperty(exports2, "assertBundleV02", { enumerable: true, get: function() {
      return validate_1.assertBundleV02;
    } });
    Object.defineProperty(exports2, "isBundleV01", { enumerable: true, get: function() {
      return validate_1.isBundleV01;
    } });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/stream.js
var require_stream6 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/stream.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.ByteStream = void 0;
    var StreamError = class extends Error {
    };
    var ByteStream = class _ByteStream {
      static BLOCK_SIZE = 1024;
      buf;
      view;
      start = 0;
      constructor(buffer3) {
        if (buffer3) {
          this.buf = buffer3;
          this.view = Buffer.from(buffer3);
        } else {
          this.buf = Buffer.alloc(0);
          this.view = Buffer.from(this.buf);
        }
      }
      get buffer() {
        return this.view.subarray(0, this.start);
      }
      get length() {
        return this.view.byteLength;
      }
      get position() {
        return this.start;
      }
      seek(position3) {
        this.start = position3;
      }
      // Returns a Buffer containing the specified number of bytes starting at the
      // given start position.
      slice(start, len) {
        const end = start + len;
        if (end > this.length) {
          throw new StreamError("request past end of buffer");
        }
        return this.view.subarray(start, end);
      }
      appendChar(char) {
        this.ensureCapacity(1);
        this.view[this.start] = char;
        this.start += 1;
      }
      appendUint16(num) {
        this.ensureCapacity(2);
        const value = new Uint16Array([num]);
        const view = new Uint8Array(value.buffer);
        this.view[this.start] = view[1];
        this.view[this.start + 1] = view[0];
        this.start += 2;
      }
      appendUint24(num) {
        this.ensureCapacity(3);
        const value = new Uint32Array([num]);
        const view = new Uint8Array(value.buffer);
        this.view[this.start] = view[2];
        this.view[this.start + 1] = view[1];
        this.view[this.start + 2] = view[0];
        this.start += 3;
      }
      appendView(view) {
        this.ensureCapacity(view.length);
        this.view.set(view, this.start);
        this.start += view.length;
      }
      getBlock(size) {
        if (size <= 0) {
          return Buffer.alloc(0);
        }
        if (this.start + size > this.view.length) {
          throw new Error("request past end of buffer");
        }
        const result2 = this.view.subarray(this.start, this.start + size);
        this.start += size;
        return result2;
      }
      getUint8() {
        return this.getBlock(1)[0];
      }
      getUint16() {
        const block = this.getBlock(2);
        return block[0] << 8 | block[1];
      }
      ensureCapacity(size) {
        if (this.start + size > this.view.byteLength) {
          const blockSize = _ByteStream.BLOCK_SIZE + (size > _ByteStream.BLOCK_SIZE ? size : 0);
          this.realloc(this.view.byteLength + blockSize);
        }
      }
      realloc(size) {
        const newArray = Buffer.alloc(size);
        const newView = Buffer.from(newArray);
        newView.set(this.view);
        this.buf = newArray;
        this.view = newView;
      }
    };
    exports2.ByteStream = ByteStream;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/asn1/error.js
var require_error4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/asn1/error.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.ASN1TypeError = exports2.ASN1ParseError = void 0;
    var ASN1ParseError = class extends Error {
    };
    exports2.ASN1ParseError = ASN1ParseError;
    var ASN1TypeError = class extends Error {
    };
    exports2.ASN1TypeError = ASN1TypeError;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/asn1/length.js
var require_length = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/asn1/length.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.decodeLength = decodeLength;
    exports2.encodeLength = encodeLength;
    var error_1 = require_error4();
    function decodeLength(stream2) {
      const buf = stream2.getUint8();
      if ((buf & 128) === 0) {
        return buf;
      }
      const byteCount = buf & 127;
      if (byteCount > 6) {
        throw new error_1.ASN1ParseError("length exceeds 6 byte limit");
      }
      let len = 0;
      for (let i2 = 0; i2 < byteCount; i2++) {
        len = len * 256 + stream2.getUint8();
      }
      if (len === 0) {
        throw new error_1.ASN1ParseError("indefinite length encoding not supported");
      }
      return len;
    }
    function encodeLength(len) {
      if (len < 128) {
        return Buffer.from([len]);
      }
      let val = BigInt(len);
      const bytes = [];
      while (val > 0n) {
        bytes.unshift(Number(val & 255n));
        val = val >> 8n;
      }
      return Buffer.from([128 | bytes.length, ...bytes]);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/asn1/parse.js
var require_parse11 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/asn1/parse.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.parseInteger = parseInteger;
    exports2.parseStringASCII = parseStringASCII;
    exports2.parseTime = parseTime;
    exports2.parseOID = parseOID;
    exports2.parseBoolean = parseBoolean2;
    exports2.parseBitString = parseBitString;
    var RE_TIME_SHORT_YEAR = /^(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})(\.\d{3})?Z$/;
    var RE_TIME_LONG_YEAR = /^(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})(\.\d{3})?Z$/;
    function parseInteger(buf) {
      let pos = 0;
      const end = buf.length;
      let val = buf[pos];
      const neg = val > 127;
      const pad3 = neg ? 255 : 0;
      while (val == pad3 && ++pos < end) {
        val = buf[pos];
      }
      const len = end - pos;
      if (len === 0)
        return BigInt(neg ? -1 : 0);
      val = neg ? val - 256 : val;
      let n2 = BigInt(val);
      for (let i2 = pos + 1; i2 < end; ++i2) {
        n2 = n2 * BigInt(256) + BigInt(buf[i2]);
      }
      return n2;
    }
    function parseStringASCII(buf) {
      return buf.toString("ascii");
    }
    function parseTime(buf, shortYear) {
      const timeStr = parseStringASCII(buf);
      const m = shortYear ? RE_TIME_SHORT_YEAR.exec(timeStr) : RE_TIME_LONG_YEAR.exec(timeStr);
      if (!m) {
        throw new Error("invalid time");
      }
      if (shortYear) {
        let year = Number(m[1]);
        year += year >= 50 ? 1900 : 2e3;
        m[1] = year.toString();
      }
      return /* @__PURE__ */ new Date(`${m[1]}-${m[2]}-${m[3]}T${m[4]}:${m[5]}:${m[6]}Z`);
    }
    function parseOID(buf) {
      let pos = 0;
      const end = buf.length;
      let n2 = buf[pos++];
      const first = Math.floor(n2 / 40);
      const second = n2 % 40;
      let oid = `${first}.${second}`;
      let val = 0;
      for (; pos < end; ++pos) {
        n2 = buf[pos];
        val = (val << 7) + (n2 & 127);
        if ((n2 & 128) === 0) {
          oid += `.${val}`;
          val = 0;
        }
      }
      return oid;
    }
    function parseBoolean2(buf) {
      return buf[0] !== 0;
    }
    function parseBitString(buf) {
      const unused = buf[0];
      const start = 1;
      const end = buf.length;
      const bits = [];
      for (let i2 = start; i2 < end; ++i2) {
        const byte = buf[i2];
        const skip = i2 === end - 1 ? unused : 0;
        for (let j2 = 7; j2 >= skip; --j2) {
          bits.push(byte >> j2 & 1);
        }
      }
      return bits;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/asn1/tag.js
var require_tag = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/asn1/tag.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.ASN1Tag = void 0;
    var error_1 = require_error4();
    var UNIVERSAL_TAG = {
      BOOLEAN: 1,
      INTEGER: 2,
      BIT_STRING: 3,
      OCTET_STRING: 4,
      OBJECT_IDENTIFIER: 6,
      SEQUENCE: 16,
      SET: 17,
      PRINTABLE_STRING: 19,
      UTC_TIME: 23,
      GENERALIZED_TIME: 24
    };
    var TAG_CLASS = {
      UNIVERSAL: 0,
      APPLICATION: 1,
      CONTEXT_SPECIFIC: 2,
      PRIVATE: 3
    };
    var ASN1Tag = class {
      number;
      constructed;
      class;
      constructor(enc) {
        this.number = enc & 31;
        this.constructed = (enc & 32) === 32;
        this.class = enc >> 6;
        if (this.number === 31) {
          throw new error_1.ASN1ParseError("long form tags not supported");
        }
        if (this.class === TAG_CLASS.UNIVERSAL && this.number === 0) {
          throw new error_1.ASN1ParseError("unsupported tag 0x00");
        }
      }
      isUniversal() {
        return this.class === TAG_CLASS.UNIVERSAL;
      }
      isContextSpecific(num) {
        const res = this.class === TAG_CLASS.CONTEXT_SPECIFIC;
        return num !== void 0 ? res && this.number === num : res;
      }
      isBoolean() {
        return this.isUniversal() && this.number === UNIVERSAL_TAG.BOOLEAN;
      }
      isInteger() {
        return this.isUniversal() && this.number === UNIVERSAL_TAG.INTEGER;
      }
      isBitString() {
        return this.isUniversal() && this.number === UNIVERSAL_TAG.BIT_STRING;
      }
      isOctetString() {
        return this.isUniversal() && this.number === UNIVERSAL_TAG.OCTET_STRING;
      }
      isOID() {
        return this.isUniversal() && this.number === UNIVERSAL_TAG.OBJECT_IDENTIFIER;
      }
      isUTCTime() {
        return this.isUniversal() && this.number === UNIVERSAL_TAG.UTC_TIME;
      }
      isGeneralizedTime() {
        return this.isUniversal() && this.number === UNIVERSAL_TAG.GENERALIZED_TIME;
      }
      toDER() {
        return this.number | (this.constructed ? 32 : 0) | this.class << 6;
      }
    };
    exports2.ASN1Tag = ASN1Tag;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/asn1/obj.js
var require_obj = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/asn1/obj.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.ASN1Obj = void 0;
    var stream_12 = require_stream6();
    var error_1 = require_error4();
    var length_1 = require_length();
    var parse_1 = require_parse11();
    var tag_1 = require_tag();
    var ASN1Obj = class {
      tag;
      subs;
      value;
      constructor(tag, value, subs) {
        this.tag = tag;
        this.value = value;
        this.subs = subs;
      }
      // Constructs an ASN.1 object from a Buffer of DER-encoded bytes.
      static parseBuffer(buf) {
        return parseStream(new stream_12.ByteStream(buf));
      }
      toDER() {
        const valueStream = new stream_12.ByteStream();
        if (this.subs.length > 0) {
          for (const sub of this.subs) {
            valueStream.appendView(sub.toDER());
          }
        } else {
          valueStream.appendView(this.value);
        }
        const value = valueStream.buffer;
        const obj = new stream_12.ByteStream();
        obj.appendChar(this.tag.toDER());
        obj.appendView((0, length_1.encodeLength)(value.length));
        obj.appendView(value);
        return obj.buffer;
      }
      /////////////////////////////////////////////////////////////////////////////
      // Convenience methods for parsing ASN.1 primitives into JS types
      // Returns the ASN.1 object's value as a boolean. Throws an error if the
      // object is not a boolean.
      toBoolean() {
        if (!this.tag.isBoolean()) {
          throw new error_1.ASN1TypeError("not a boolean");
        }
        return (0, parse_1.parseBoolean)(this.value);
      }
      // Returns the ASN.1 object's value as a BigInt. Throws an error if the
      // object is not an integer.
      toInteger() {
        if (!this.tag.isInteger()) {
          throw new error_1.ASN1TypeError("not an integer");
        }
        return (0, parse_1.parseInteger)(this.value);
      }
      // Returns the ASN.1 object's value as an OID string. Throws an error if the
      // object is not an OID.
      toOID() {
        if (!this.tag.isOID()) {
          throw new error_1.ASN1TypeError("not an OID");
        }
        return (0, parse_1.parseOID)(this.value);
      }
      // Returns the ASN.1 object's value as a Date. Throws an error if the object
      // is not either a UTCTime or a GeneralizedTime.
      toDate() {
        switch (true) {
          case this.tag.isUTCTime():
            return (0, parse_1.parseTime)(this.value, true);
          case this.tag.isGeneralizedTime():
            return (0, parse_1.parseTime)(this.value, false);
          default:
            throw new error_1.ASN1TypeError("not a date");
        }
      }
      // Returns the ASN.1 object's value as a number[] where each number is the
      // value of a bit in the bit string. Throws an error if the object is not a
      // bit string.
      toBitString() {
        if (!this.tag.isBitString()) {
          throw new error_1.ASN1TypeError("not a bit string");
        }
        return (0, parse_1.parseBitString)(this.value);
      }
    };
    exports2.ASN1Obj = ASN1Obj;
    function parseStream(stream2) {
      const tag = new tag_1.ASN1Tag(stream2.getUint8());
      const len = (0, length_1.decodeLength)(stream2);
      const value = stream2.slice(stream2.position, len);
      const start = stream2.position;
      let subs = [];
      if (tag.constructed) {
        subs = collectSubs(stream2, len);
      } else if (tag.isOctetString()) {
        try {
          subs = collectSubs(stream2, len);
        } catch (e) {
        }
      }
      if (subs.length === 0) {
        stream2.seek(start + len);
      }
      return new ASN1Obj(tag, value, subs);
    }
    function collectSubs(stream2, len) {
      const end = stream2.position + len;
      if (end > stream2.length) {
        throw new error_1.ASN1ParseError("invalid length");
      }
      const subs = [];
      while (stream2.position < end) {
        subs.push(parseStream(stream2));
      }
      if (stream2.position !== end) {
        throw new error_1.ASN1ParseError("invalid length");
      }
      return subs;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/asn1/index.js
var require_asn1 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/asn1/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.ASN1Obj = void 0;
    var obj_1 = require_obj();
    Object.defineProperty(exports2, "ASN1Obj", { enumerable: true, get: function() {
      return obj_1.ASN1Obj;
    } });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/crypto.js
var require_crypto = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/crypto.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.createPublicKey = createPublicKey;
    exports2.digest = digest;
    exports2.verify = verify;
    exports2.bufferEqual = bufferEqual;
    var crypto_1 = __importDefault2(__require("crypto"));
    function createPublicKey(key, type4 = "spki") {
      if (typeof key === "string") {
        if (key.startsWith("-----")) {
          return crypto_1.default.createPublicKey(key);
        } else {
          return crypto_1.default.createPublicKey({
            key: Buffer.from(key, "base64"),
            format: "der",
            type: type4
          });
        }
      } else {
        return crypto_1.default.createPublicKey({ key, format: "der", type: type4 });
      }
    }
    function digest(algorithm, ...data) {
      const hash2 = crypto_1.default.createHash(algorithm);
      for (const d of data) {
        hash2.update(d);
      }
      return hash2.digest();
    }
    function verify(data, key, signature, algorithm) {
      try {
        return crypto_1.default.verify(algorithm, data, key, signature);
      } catch (e) {
        return false;
      }
    }
    function bufferEqual(a2, b) {
      try {
        return crypto_1.default.timingSafeEqual(a2, b);
      } catch {
        return false;
      }
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/dsse.js
var require_dsse = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/dsse.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.preAuthEncoding = preAuthEncoding;
    var PAE_PREFIX = "DSSEv1";
    function preAuthEncoding(payloadType, payload) {
      const typeBytes = Buffer.from(payloadType, "utf-8");
      return Buffer.concat([
        Buffer.from(`${PAE_PREFIX} ${typeBytes.length} `, "ascii"),
        typeBytes,
        Buffer.from(` ${payload.length} `, "ascii"),
        payload
      ]);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/encoding.js
var require_encoding3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/encoding.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.base64Encode = base64Encode;
    exports2.base64Decode = base64Decode;
    var BASE64_ENCODING = "base64";
    var UTF8_ENCODING = "utf-8";
    function base64Encode(str2) {
      return Buffer.from(str2, UTF8_ENCODING).toString(BASE64_ENCODING);
    }
    function base64Decode(str2) {
      return Buffer.from(str2, BASE64_ENCODING).toString(UTF8_ENCODING);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/json.js
var require_json4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/json.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.canonicalize = canonicalize;
    function canonicalize(object) {
      let buffer3 = "";
      if (object === null || typeof object !== "object" || object.toJSON != null) {
        buffer3 += JSON.stringify(object);
      } else if (Array.isArray(object)) {
        buffer3 += "[";
        let first = true;
        object.forEach((element) => {
          if (!first) {
            buffer3 += ",";
          }
          first = false;
          buffer3 += canonicalize(element);
        });
        buffer3 += "]";
      } else {
        buffer3 += "{";
        let first = true;
        Object.keys(object).sort().forEach((property) => {
          if (!first) {
            buffer3 += ",";
          }
          first = false;
          buffer3 += JSON.stringify(property);
          buffer3 += ":";
          buffer3 += canonicalize(object[property]);
        });
        buffer3 += "}";
      }
      return buffer3;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/pem.js
var require_pem = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/pem.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.toDER = toDER;
    exports2.fromDER = fromDER;
    var PEM_HEADER = /-----BEGIN (.*)-----/;
    var PEM_FOOTER = /-----END (.*)-----/;
    function toDER(certificate) {
      let der = "";
      certificate.split("\n").forEach((line) => {
        if (line.match(PEM_HEADER) || line.match(PEM_FOOTER)) {
          return;
        }
        der += line;
      });
      return Buffer.from(der, "base64");
    }
    function fromDER(certificate, type4 = "CERTIFICATE") {
      const der = certificate.toString("base64");
      const lines = der.match(/.{1,64}/g) || "";
      return [`-----BEGIN ${type4}-----`, ...lines, `-----END ${type4}-----`].join("\n").concat("\n");
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/oid.js
var require_oid = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/oid.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.SHA2_HASH_ALGOS = exports2.RSA_SIGNATURE_ALGOS = exports2.ECDSA_SIGNATURE_ALGOS = void 0;
    exports2.ECDSA_SIGNATURE_ALGOS = {
      "1.2.840.10045.4.3.1": "sha224",
      "1.2.840.10045.4.3.2": "sha256",
      "1.2.840.10045.4.3.3": "sha384",
      "1.2.840.10045.4.3.4": "sha512"
    };
    exports2.RSA_SIGNATURE_ALGOS = {
      "1.2.840.113549.1.1.14": "sha224",
      "1.2.840.113549.1.1.11": "sha256",
      "1.2.840.113549.1.1.12": "sha384",
      "1.2.840.113549.1.1.13": "sha512"
    };
    exports2.SHA2_HASH_ALGOS = {
      "2.16.840.1.101.3.4.2.1": "sha256",
      "2.16.840.1.101.3.4.2.2": "sha384",
      "2.16.840.1.101.3.4.2.3": "sha512"
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/rfc3161/error.js
var require_error5 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/rfc3161/error.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.RFC3161TimestampVerificationError = void 0;
    var RFC3161TimestampVerificationError = class extends Error {
    };
    exports2.RFC3161TimestampVerificationError = RFC3161TimestampVerificationError;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/rfc3161/tstinfo.js
var require_tstinfo = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/rfc3161/tstinfo.js"(exports2) {
    "use strict";
    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      var desc = Object.getOwnPropertyDescriptor(m, k2);
      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
        desc = { enumerable: true, get: function() {
          return m[k2];
        } };
      }
      Object.defineProperty(o2, k22, desc);
    }) : (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      o2[k22] = m[k2];
    }));
    var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o2, v) {
      Object.defineProperty(o2, "default", { enumerable: true, value: v });
    }) : function(o2, v) {
      o2["default"] = v;
    });
    var __importStar2 = exports2 && exports2.__importStar || /* @__PURE__ */ (function() {
      var ownKeys2 = function(o2) {
        ownKeys2 = Object.getOwnPropertyNames || function(o3) {
          var ar = [];
          for (var k2 in o3) if (Object.prototype.hasOwnProperty.call(o3, k2)) ar[ar.length] = k2;
          return ar;
        };
        return ownKeys2(o2);
      };
      return function(mod) {
        if (mod && mod.__esModule) return mod;
        var result2 = {};
        if (mod != null) {
          for (var k2 = ownKeys2(mod), i2 = 0; i2 < k2.length; i2++) if (k2[i2] !== "default") __createBinding2(result2, mod, k2[i2]);
        }
        __setModuleDefault2(result2, mod);
        return result2;
      };
    })();
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.TSTInfo = void 0;
    var crypto11 = __importStar2(require_crypto());
    var oid_1 = require_oid();
    var error_1 = require_error5();
    var TSTInfo = class {
      root;
      constructor(asn1) {
        this.root = asn1;
      }
      get version() {
        return this.root.subs[0].toInteger();
      }
      get genTime() {
        return this.root.subs[4].toDate();
      }
      get messageImprintHashAlgorithm() {
        const oid = this.messageImprintObj.subs[0].subs[0].toOID();
        return oid_1.SHA2_HASH_ALGOS[oid];
      }
      get messageImprintHashedMessage() {
        return this.messageImprintObj.subs[1].value;
      }
      get raw() {
        return this.root.toDER();
      }
      verify(data) {
        const digest = crypto11.digest(this.messageImprintHashAlgorithm, data);
        if (!crypto11.bufferEqual(digest, this.messageImprintHashedMessage)) {
          throw new error_1.RFC3161TimestampVerificationError("message imprint does not match artifact");
        }
      }
      // https://www.rfc-editor.org/rfc/rfc3161#section-2.4.2
      get messageImprintObj() {
        return this.root.subs[2];
      }
    };
    exports2.TSTInfo = TSTInfo;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/rfc3161/timestamp.js
var require_timestamp4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/rfc3161/timestamp.js"(exports2) {
    "use strict";
    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      var desc = Object.getOwnPropertyDescriptor(m, k2);
      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
        desc = { enumerable: true, get: function() {
          return m[k2];
        } };
      }
      Object.defineProperty(o2, k22, desc);
    }) : (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      o2[k22] = m[k2];
    }));
    var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o2, v) {
      Object.defineProperty(o2, "default", { enumerable: true, value: v });
    }) : function(o2, v) {
      o2["default"] = v;
    });
    var __importStar2 = exports2 && exports2.__importStar || /* @__PURE__ */ (function() {
      var ownKeys2 = function(o2) {
        ownKeys2 = Object.getOwnPropertyNames || function(o3) {
          var ar = [];
          for (var k2 in o3) if (Object.prototype.hasOwnProperty.call(o3, k2)) ar[ar.length] = k2;
          return ar;
        };
        return ownKeys2(o2);
      };
      return function(mod) {
        if (mod && mod.__esModule) return mod;
        var result2 = {};
        if (mod != null) {
          for (var k2 = ownKeys2(mod), i2 = 0; i2 < k2.length; i2++) if (k2[i2] !== "default") __createBinding2(result2, mod, k2[i2]);
        }
        __setModuleDefault2(result2, mod);
        return result2;
      };
    })();
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.RFC3161Timestamp = void 0;
    var asn1_1 = require_asn1();
    var crypto11 = __importStar2(require_crypto());
    var oid_1 = require_oid();
    var error_1 = require_error5();
    var tstinfo_1 = require_tstinfo();
    var OID_PKCS9_CONTENT_TYPE_SIGNED_DATA = "1.2.840.113549.1.7.2";
    var OID_PKCS9_CONTENT_TYPE_TSTINFO = "1.2.840.113549.1.9.16.1.4";
    var OID_PKCS9_MESSAGE_DIGEST_KEY = "1.2.840.113549.1.9.4";
    var RFC3161Timestamp = class _RFC3161Timestamp {
      root;
      constructor(asn1) {
        this.root = asn1;
      }
      static parse(der) {
        const asn1 = asn1_1.ASN1Obj.parseBuffer(der);
        return new _RFC3161Timestamp(asn1);
      }
      get status() {
        return this.pkiStatusInfoObj.subs[0].toInteger();
      }
      get contentType() {
        return this.contentTypeObj.toOID();
      }
      get eContentType() {
        return this.eContentTypeObj.toOID();
      }
      get signingTime() {
        return this.tstInfo.genTime;
      }
      get signerIssuer() {
        return this.signerSidObj.subs[0].value;
      }
      get signerSerialNumber() {
        return this.signerSidObj.subs[1].value;
      }
      get signerDigestAlgorithm() {
        const oid = this.signerDigestAlgorithmObj.subs[0].toOID();
        return oid_1.SHA2_HASH_ALGOS[oid];
      }
      get signatureAlgorithm() {
        const oid = this.signatureAlgorithmObj.subs[0].toOID();
        return oid_1.ECDSA_SIGNATURE_ALGOS[oid];
      }
      get signatureValue() {
        return this.signatureValueObj.value;
      }
      get tstInfo() {
        return new tstinfo_1.TSTInfo(this.eContentObj.subs[0].subs[0]);
      }
      verify(data, publicKey) {
        if (!this.timeStampTokenObj) {
          throw new error_1.RFC3161TimestampVerificationError("timeStampToken is missing");
        }
        if (this.contentType !== OID_PKCS9_CONTENT_TYPE_SIGNED_DATA) {
          throw new error_1.RFC3161TimestampVerificationError(`incorrect content type: ${this.contentType}`);
        }
        if (this.eContentType !== OID_PKCS9_CONTENT_TYPE_TSTINFO) {
          throw new error_1.RFC3161TimestampVerificationError(`incorrect encapsulated content type: ${this.eContentType}`);
        }
        this.tstInfo.verify(data);
        this.verifyMessageDigest();
        this.verifySignature(publicKey);
      }
      verifyMessageDigest() {
        const tstInfoDigest = crypto11.digest(this.signerDigestAlgorithm, this.tstInfo.raw);
        const expectedDigest = this.messageDigestAttributeObj.subs[1].subs[0].value;
        if (!crypto11.bufferEqual(tstInfoDigest, expectedDigest)) {
          throw new error_1.RFC3161TimestampVerificationError("signed data does not match tstInfo");
        }
      }
      verifySignature(key) {
        const signedAttrs = this.signedAttrsObj.toDER();
        signedAttrs[0] = 49;
        const verified = crypto11.verify(signedAttrs, key, this.signatureValue, this.signatureAlgorithm);
        if (!verified) {
          throw new error_1.RFC3161TimestampVerificationError("signature verification failed");
        }
      }
      // https://www.rfc-editor.org/rfc/rfc3161#section-2.4.2
      get pkiStatusInfoObj() {
        return this.root.subs[0];
      }
      // https://www.rfc-editor.org/rfc/rfc3161#section-2.4.2
      get timeStampTokenObj() {
        return this.root.subs[1];
      }
      // https://datatracker.ietf.org/doc/html/rfc5652#section-3
      get contentTypeObj() {
        return this.timeStampTokenObj.subs[0];
      }
      // https://www.rfc-editor.org/rfc/rfc5652#section-3
      get signedDataObj() {
        const obj = this.timeStampTokenObj.subs.find((sub) => sub.tag.isContextSpecific(0));
        return obj.subs[0];
      }
      // https://datatracker.ietf.org/doc/html/rfc5652#section-5.1
      get encapContentInfoObj() {
        return this.signedDataObj.subs[2];
      }
      // https://datatracker.ietf.org/doc/html/rfc5652#section-5.1
      get signerInfosObj() {
        const sd = this.signedDataObj;
        return sd.subs[sd.subs.length - 1];
      }
      // https://www.rfc-editor.org/rfc/rfc5652#section-5.1
      get signerInfoObj() {
        return this.signerInfosObj.subs[0];
      }
      // https://datatracker.ietf.org/doc/html/rfc5652#section-5.2
      get eContentTypeObj() {
        return this.encapContentInfoObj.subs[0];
      }
      // https://datatracker.ietf.org/doc/html/rfc5652#section-5.2
      get eContentObj() {
        return this.encapContentInfoObj.subs[1];
      }
      // https://datatracker.ietf.org/doc/html/rfc5652#section-5.3
      get signedAttrsObj() {
        const signedAttrs = this.signerInfoObj.subs.find((sub) => sub.tag.isContextSpecific(0));
        return signedAttrs;
      }
      // https://datatracker.ietf.org/doc/html/rfc5652#section-5.3
      get messageDigestAttributeObj() {
        const messageDigest = this.signedAttrsObj.subs.find((sub) => sub.subs[0].tag.isOID() && sub.subs[0].toOID() === OID_PKCS9_MESSAGE_DIGEST_KEY);
        return messageDigest;
      }
      // https://datatracker.ietf.org/doc/html/rfc5652#section-5.3
      get signerSidObj() {
        return this.signerInfoObj.subs[1];
      }
      // https://datatracker.ietf.org/doc/html/rfc5652#section-5.3
      get signerDigestAlgorithmObj() {
        return this.signerInfoObj.subs[2];
      }
      // https://datatracker.ietf.org/doc/html/rfc5652#section-5.3
      get signatureAlgorithmObj() {
        return this.signerInfoObj.subs[4];
      }
      // https://datatracker.ietf.org/doc/html/rfc5652#section-5.3
      get signatureValueObj() {
        return this.signerInfoObj.subs[5];
      }
    };
    exports2.RFC3161Timestamp = RFC3161Timestamp;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/rfc3161/index.js
var require_rfc3161 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/rfc3161/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.RFC3161Timestamp = void 0;
    var timestamp_1 = require_timestamp4();
    Object.defineProperty(exports2, "RFC3161Timestamp", { enumerable: true, get: function() {
      return timestamp_1.RFC3161Timestamp;
    } });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/x509/sct.js
var require_sct = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/x509/sct.js"(exports2) {
    "use strict";
    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      var desc = Object.getOwnPropertyDescriptor(m, k2);
      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
        desc = { enumerable: true, get: function() {
          return m[k2];
        } };
      }
      Object.defineProperty(o2, k22, desc);
    }) : (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      o2[k22] = m[k2];
    }));
    var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o2, v) {
      Object.defineProperty(o2, "default", { enumerable: true, value: v });
    }) : function(o2, v) {
      o2["default"] = v;
    });
    var __importStar2 = exports2 && exports2.__importStar || /* @__PURE__ */ (function() {
      var ownKeys2 = function(o2) {
        ownKeys2 = Object.getOwnPropertyNames || function(o3) {
          var ar = [];
          for (var k2 in o3) if (Object.prototype.hasOwnProperty.call(o3, k2)) ar[ar.length] = k2;
          return ar;
        };
        return ownKeys2(o2);
      };
      return function(mod) {
        if (mod && mod.__esModule) return mod;
        var result2 = {};
        if (mod != null) {
          for (var k2 = ownKeys2(mod), i2 = 0; i2 < k2.length; i2++) if (k2[i2] !== "default") __createBinding2(result2, mod, k2[i2]);
        }
        __setModuleDefault2(result2, mod);
        return result2;
      };
    })();
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.SignedCertificateTimestamp = void 0;
    var crypto11 = __importStar2(require_crypto());
    var stream_12 = require_stream6();
    var SignedCertificateTimestamp = class _SignedCertificateTimestamp {
      version;
      logID;
      timestamp;
      extensions;
      hashAlgorithm;
      signatureAlgorithm;
      signature;
      constructor(options) {
        this.version = options.version;
        this.logID = options.logID;
        this.timestamp = options.timestamp;
        this.extensions = options.extensions;
        this.hashAlgorithm = options.hashAlgorithm;
        this.signatureAlgorithm = options.signatureAlgorithm;
        this.signature = options.signature;
      }
      get datetime() {
        return new Date(Number(this.timestamp.readBigInt64BE()));
      }
      // Returns the hash algorithm used to generate the SCT's signature.
      // https://www.rfc-editor.org/rfc/rfc5246#section-7.4.1.4.1
      get algorithm() {
        switch (this.hashAlgorithm) {
          /* istanbul ignore next */
          case 0:
            return "none";
          /* istanbul ignore next */
          case 1:
            return "md5";
          /* istanbul ignore next */
          case 2:
            return "sha1";
          /* istanbul ignore next */
          case 3:
            return "sha224";
          case 4:
            return "sha256";
          /* istanbul ignore next */
          case 5:
            return "sha384";
          /* istanbul ignore next */
          case 6:
            return "sha512";
          /* istanbul ignore next */
          default:
            return "unknown";
        }
      }
      verify(preCert, key) {
        const stream2 = new stream_12.ByteStream();
        stream2.appendChar(this.version);
        stream2.appendChar(0);
        stream2.appendView(this.timestamp);
        stream2.appendUint16(1);
        stream2.appendView(preCert);
        stream2.appendUint16(this.extensions.byteLength);
        if (this.extensions.byteLength > 0) {
          stream2.appendView(this.extensions);
        }
        return crypto11.verify(stream2.buffer, key, this.signature, this.algorithm);
      }
      // Parses a SignedCertificateTimestamp from a buffer. SCTs are encoded using
      // TLS encoding which means the fields and lengths of most fields are
      // specified as part of the SCT and TLS specs.
      // https://www.rfc-editor.org/rfc/rfc6962#section-3.2
      // https://www.rfc-editor.org/rfc/rfc5246#section-7.4.1.4.1
      static parse(buf) {
        const stream2 = new stream_12.ByteStream(buf);
        const version2 = stream2.getUint8();
        const logID = stream2.getBlock(32);
        const timestamp2 = stream2.getBlock(8);
        const extenstionLength = stream2.getUint16();
        const extensions2 = stream2.getBlock(extenstionLength);
        const hashAlgorithm = stream2.getUint8();
        const signatureAlgorithm = stream2.getUint8();
        const sigLength = stream2.getUint16();
        const signature = stream2.getBlock(sigLength);
        if (stream2.position !== buf.length) {
          throw new Error("SCT buffer length mismatch");
        }
        return new _SignedCertificateTimestamp({
          version: version2,
          logID,
          timestamp: timestamp2,
          extensions: extensions2,
          hashAlgorithm,
          signatureAlgorithm,
          signature
        });
      }
    };
    exports2.SignedCertificateTimestamp = SignedCertificateTimestamp;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/x509/ext.js
var require_ext = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/x509/ext.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.X509SCTExtension = exports2.X509SubjectKeyIDExtension = exports2.X509AuthorityKeyIDExtension = exports2.X509SubjectAlternativeNameExtension = exports2.X509KeyUsageExtension = exports2.X509BasicConstraintsExtension = exports2.X509Extension = void 0;
    var stream_12 = require_stream6();
    var sct_1 = require_sct();
    var X509Extension = class {
      root;
      constructor(asn1) {
        this.root = asn1;
      }
      get oid() {
        return this.root.subs[0].toOID();
      }
      get critical() {
        return this.root.subs.length === 3 ? this.root.subs[1].toBoolean() : false;
      }
      get value() {
        return this.extnValueObj.value;
      }
      get valueObj() {
        return this.extnValueObj;
      }
      get extnValueObj() {
        return this.root.subs[this.root.subs.length - 1];
      }
    };
    exports2.X509Extension = X509Extension;
    var X509BasicConstraintsExtension = class extends X509Extension {
      get isCA() {
        return this.sequence.subs[0]?.toBoolean() ?? false;
      }
      get pathLenConstraint() {
        return this.sequence.subs.length > 1 ? this.sequence.subs[1].toInteger() : void 0;
      }
      // The extnValue field contains a single sequence wrapping the isCA and
      // pathLenConstraint.
      get sequence() {
        return this.extnValueObj.subs[0];
      }
    };
    exports2.X509BasicConstraintsExtension = X509BasicConstraintsExtension;
    var X509KeyUsageExtension = class extends X509Extension {
      get digitalSignature() {
        return this.bitString[0] === 1;
      }
      get keyCertSign() {
        return this.bitString[5] === 1;
      }
      get crlSign() {
        return this.bitString[6] === 1;
      }
      // The extnValue field contains a single bit string which is a bit mask
      // indicating which key usages are enabled.
      get bitString() {
        return this.extnValueObj.subs[0].toBitString();
      }
    };
    exports2.X509KeyUsageExtension = X509KeyUsageExtension;
    var X509SubjectAlternativeNameExtension = class extends X509Extension {
      get rfc822Name() {
        return this.findGeneralName(1)?.value.toString("ascii");
      }
      get uri() {
        return this.findGeneralName(6)?.value.toString("ascii");
      }
      // Retrieve the value of an otherName with the given OID.
      otherName(oid) {
        const otherName = this.findGeneralName(0);
        if (otherName === void 0) {
          return void 0;
        }
        const otherNameOID = otherName.subs[0].toOID();
        if (otherNameOID !== oid) {
          return void 0;
        }
        const otherNameValue = otherName.subs[1];
        return otherNameValue.subs[0].value.toString("ascii");
      }
      findGeneralName(tag) {
        return this.generalNames.find((gn) => gn.tag.isContextSpecific(tag));
      }
      // The extnValue field contains a sequence of GeneralNames.
      get generalNames() {
        return this.extnValueObj.subs[0].subs;
      }
    };
    exports2.X509SubjectAlternativeNameExtension = X509SubjectAlternativeNameExtension;
    var X509AuthorityKeyIDExtension = class extends X509Extension {
      get keyIdentifier() {
        return this.findSequenceMember(0)?.value;
      }
      findSequenceMember(tag) {
        return this.sequence.subs.find((el) => el.tag.isContextSpecific(tag));
      }
      // The extnValue field contains a single sequence wrapping the keyIdentifier
      get sequence() {
        return this.extnValueObj.subs[0];
      }
    };
    exports2.X509AuthorityKeyIDExtension = X509AuthorityKeyIDExtension;
    var X509SubjectKeyIDExtension = class extends X509Extension {
      get keyIdentifier() {
        return this.extnValueObj.subs[0].value;
      }
    };
    exports2.X509SubjectKeyIDExtension = X509SubjectKeyIDExtension;
    var X509SCTExtension = class extends X509Extension {
      constructor(asn1) {
        super(asn1);
      }
      get signedCertificateTimestamps() {
        const buf = this.extnValueObj.subs[0].value;
        const stream2 = new stream_12.ByteStream(buf);
        const end = stream2.getUint16() + 2;
        const sctList = [];
        while (stream2.position < end) {
          const sctLength = stream2.getUint16();
          const sct = stream2.getBlock(sctLength);
          sctList.push(sct_1.SignedCertificateTimestamp.parse(sct));
        }
        if (stream2.position !== end) {
          throw new Error("SCT list length does not match actual length");
        }
        return sctList;
      }
    };
    exports2.X509SCTExtension = X509SCTExtension;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/x509/cert.js
var require_cert = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/x509/cert.js"(exports2) {
    "use strict";
    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      var desc = Object.getOwnPropertyDescriptor(m, k2);
      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
        desc = { enumerable: true, get: function() {
          return m[k2];
        } };
      }
      Object.defineProperty(o2, k22, desc);
    }) : (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      o2[k22] = m[k2];
    }));
    var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o2, v) {
      Object.defineProperty(o2, "default", { enumerable: true, value: v });
    }) : function(o2, v) {
      o2["default"] = v;
    });
    var __importStar2 = exports2 && exports2.__importStar || /* @__PURE__ */ (function() {
      var ownKeys2 = function(o2) {
        ownKeys2 = Object.getOwnPropertyNames || function(o3) {
          var ar = [];
          for (var k2 in o3) if (Object.prototype.hasOwnProperty.call(o3, k2)) ar[ar.length] = k2;
          return ar;
        };
        return ownKeys2(o2);
      };
      return function(mod) {
        if (mod && mod.__esModule) return mod;
        var result2 = {};
        if (mod != null) {
          for (var k2 = ownKeys2(mod), i2 = 0; i2 < k2.length; i2++) if (k2[i2] !== "default") __createBinding2(result2, mod, k2[i2]);
        }
        __setModuleDefault2(result2, mod);
        return result2;
      };
    })();
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.X509Certificate = exports2.EXTENSION_OID_SCT = void 0;
    var asn1_1 = require_asn1();
    var crypto11 = __importStar2(require_crypto());
    var oid_1 = require_oid();
    var pem = __importStar2(require_pem());
    var ext_1 = require_ext();
    var EXTENSION_OID_SUBJECT_KEY_ID = "2.5.29.14";
    var EXTENSION_OID_KEY_USAGE = "2.5.29.15";
    var EXTENSION_OID_SUBJECT_ALT_NAME = "2.5.29.17";
    var EXTENSION_OID_BASIC_CONSTRAINTS = "2.5.29.19";
    var EXTENSION_OID_AUTHORITY_KEY_ID = "2.5.29.35";
    exports2.EXTENSION_OID_SCT = "1.3.6.1.4.1.11129.2.4.2";
    var X509Certificate = class _X509Certificate {
      root;
      constructor(asn1) {
        this.root = asn1;
      }
      static parse(cert) {
        const der = typeof cert === "string" ? pem.toDER(cert) : cert;
        const asn1 = asn1_1.ASN1Obj.parseBuffer(der);
        return new _X509Certificate(asn1);
      }
      get tbsCertificate() {
        return this.tbsCertificateObj;
      }
      get version() {
        const ver = this.versionObj.subs[0].toInteger();
        return `v${(ver + BigInt(1)).toString()}`;
      }
      get serialNumber() {
        return this.serialNumberObj.value;
      }
      get notBefore() {
        return this.validityObj.subs[0].toDate();
      }
      get notAfter() {
        return this.validityObj.subs[1].toDate();
      }
      get issuer() {
        return this.issuerObj.value;
      }
      get subject() {
        return this.subjectObj.value;
      }
      get publicKey() {
        return this.subjectPublicKeyInfoObj.toDER();
      }
      get signatureAlgorithm() {
        const oid = this.signatureAlgorithmObj.subs[0].toOID();
        if (oid_1.RSA_SIGNATURE_ALGOS[oid]) {
          return oid_1.RSA_SIGNATURE_ALGOS[oid];
        }
        return oid_1.ECDSA_SIGNATURE_ALGOS[oid];
      }
      get signatureValue() {
        return this.signatureValueObj.value.subarray(1);
      }
      get subjectAltName() {
        const ext = this.extSubjectAltName;
        return ext?.uri || /* istanbul ignore next */
        ext?.rfc822Name;
      }
      get extensions() {
        const extSeq = this.extensionsObj?.subs[0];
        return extSeq?.subs || [];
      }
      get extKeyUsage() {
        const ext = this.findExtension(EXTENSION_OID_KEY_USAGE);
        return ext ? new ext_1.X509KeyUsageExtension(ext) : void 0;
      }
      get extBasicConstraints() {
        const ext = this.findExtension(EXTENSION_OID_BASIC_CONSTRAINTS);
        return ext ? new ext_1.X509BasicConstraintsExtension(ext) : void 0;
      }
      get extSubjectAltName() {
        const ext = this.findExtension(EXTENSION_OID_SUBJECT_ALT_NAME);
        return ext ? new ext_1.X509SubjectAlternativeNameExtension(ext) : void 0;
      }
      get extAuthorityKeyID() {
        const ext = this.findExtension(EXTENSION_OID_AUTHORITY_KEY_ID);
        return ext ? new ext_1.X509AuthorityKeyIDExtension(ext) : void 0;
      }
      get extSubjectKeyID() {
        const ext = this.findExtension(EXTENSION_OID_SUBJECT_KEY_ID);
        return ext ? new ext_1.X509SubjectKeyIDExtension(ext) : (
          /* istanbul ignore next */
          void 0
        );
      }
      get extSCT() {
        const ext = this.findExtension(exports2.EXTENSION_OID_SCT);
        return ext ? new ext_1.X509SCTExtension(ext) : void 0;
      }
      get isCA() {
        const ca = this.extBasicConstraints?.isCA || false;
        if (this.extKeyUsage) {
          return ca && this.extKeyUsage.keyCertSign;
        }
        return ca;
      }
      extension(oid) {
        const ext = this.findExtension(oid);
        return ext ? new ext_1.X509Extension(ext) : void 0;
      }
      verify(issuerCertificate) {
        const publicKey = issuerCertificate?.publicKey || this.publicKey;
        const key = crypto11.createPublicKey(publicKey);
        return crypto11.verify(this.tbsCertificate.toDER(), key, this.signatureValue, this.signatureAlgorithm);
      }
      validForDate(date) {
        return this.notBefore <= date && date <= this.notAfter;
      }
      equals(other) {
        return this.root.toDER().equals(other.root.toDER());
      }
      // Creates a copy of the certificate with a new buffer
      clone() {
        const der = this.root.toDER();
        const clone3 = Buffer.alloc(der.length);
        der.copy(clone3);
        return _X509Certificate.parse(clone3);
      }
      findExtension(oid) {
        return this.extensions.find((ext) => ext.subs[0].toOID() === oid);
      }
      /////////////////////////////////////////////////////////////////////////////
      // The following properties use the documented x509 structure to locate the
      // desired ASN.1 object
      // https://www.rfc-editor.org/rfc/rfc5280#section-4.1
      // https://www.rfc-editor.org/rfc/rfc5280#section-4.1.1.1
      get tbsCertificateObj() {
        return this.root.subs[0];
      }
      // https://www.rfc-editor.org/rfc/rfc5280#section-4.1.1.2
      get signatureAlgorithmObj() {
        return this.root.subs[1];
      }
      // https://www.rfc-editor.org/rfc/rfc5280#section-4.1.1.3
      get signatureValueObj() {
        return this.root.subs[2];
      }
      // https://www.rfc-editor.org/rfc/rfc5280#section-4.1.2.1
      get versionObj() {
        return this.tbsCertificateObj.subs[0];
      }
      // https://www.rfc-editor.org/rfc/rfc5280#section-4.1.2.2
      get serialNumberObj() {
        return this.tbsCertificateObj.subs[1];
      }
      // https://www.rfc-editor.org/rfc/rfc5280#section-4.1.2.4
      get issuerObj() {
        return this.tbsCertificateObj.subs[3];
      }
      // https://www.rfc-editor.org/rfc/rfc5280#section-4.1.2.5
      get validityObj() {
        return this.tbsCertificateObj.subs[4];
      }
      // https://www.rfc-editor.org/rfc/rfc5280#section-4.1.2.6
      get subjectObj() {
        return this.tbsCertificateObj.subs[5];
      }
      // https://www.rfc-editor.org/rfc/rfc5280#section-4.1.2.7
      get subjectPublicKeyInfoObj() {
        return this.tbsCertificateObj.subs[6];
      }
      // Extensions can't be located by index because their position varies. Instead,
      // we need to find the extensions context specific tag
      // https://www.rfc-editor.org/rfc/rfc5280#section-4.1.2.9
      get extensionsObj() {
        return this.tbsCertificateObj.subs.find((sub) => sub.tag.isContextSpecific(3));
      }
    };
    exports2.X509Certificate = X509Certificate;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/x509/index.js
var require_x509 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/x509/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.X509SCTExtension = exports2.X509Certificate = exports2.EXTENSION_OID_SCT = void 0;
    var cert_1 = require_cert();
    Object.defineProperty(exports2, "EXTENSION_OID_SCT", { enumerable: true, get: function() {
      return cert_1.EXTENSION_OID_SCT;
    } });
    Object.defineProperty(exports2, "X509Certificate", { enumerable: true, get: function() {
      return cert_1.X509Certificate;
    } });
    var ext_1 = require_ext();
    Object.defineProperty(exports2, "X509SCTExtension", { enumerable: true, get: function() {
      return ext_1.X509SCTExtension;
    } });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/index.js
var require_dist18 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/core/3.2.1/441efa189a7008d636f6b850e7e3d9de7111770667ddae2c98078216c0d424f2/node_modules/@sigstore/core/dist/index.js"(exports2) {
    "use strict";
    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      var desc = Object.getOwnPropertyDescriptor(m, k2);
      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
        desc = { enumerable: true, get: function() {
          return m[k2];
        } };
      }
      Object.defineProperty(o2, k22, desc);
    }) : (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      o2[k22] = m[k2];
    }));
    var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o2, v) {
      Object.defineProperty(o2, "default", { enumerable: true, value: v });
    }) : function(o2, v) {
      o2["default"] = v;
    });
    var __importStar2 = exports2 && exports2.__importStar || /* @__PURE__ */ (function() {
      var ownKeys2 = function(o2) {
        ownKeys2 = Object.getOwnPropertyNames || function(o3) {
          var ar = [];
          for (var k2 in o3) if (Object.prototype.hasOwnProperty.call(o3, k2)) ar[ar.length] = k2;
          return ar;
        };
        return ownKeys2(o2);
      };
      return function(mod) {
        if (mod && mod.__esModule) return mod;
        var result2 = {};
        if (mod != null) {
          for (var k2 = ownKeys2(mod), i2 = 0; i2 < k2.length; i2++) if (k2[i2] !== "default") __createBinding2(result2, mod, k2[i2]);
        }
        __setModuleDefault2(result2, mod);
        return result2;
      };
    })();
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.X509SCTExtension = exports2.X509Certificate = exports2.EXTENSION_OID_SCT = exports2.ByteStream = exports2.RFC3161Timestamp = exports2.pem = exports2.json = exports2.encoding = exports2.dsse = exports2.crypto = exports2.ASN1Obj = void 0;
    var asn1_1 = require_asn1();
    Object.defineProperty(exports2, "ASN1Obj", { enumerable: true, get: function() {
      return asn1_1.ASN1Obj;
    } });
    exports2.crypto = __importStar2(require_crypto());
    exports2.dsse = __importStar2(require_dsse());
    exports2.encoding = __importStar2(require_encoding3());
    exports2.json = __importStar2(require_json4());
    exports2.pem = __importStar2(require_pem());
    var rfc3161_1 = require_rfc3161();
    Object.defineProperty(exports2, "RFC3161Timestamp", { enumerable: true, get: function() {
      return rfc3161_1.RFC3161Timestamp;
    } });
    var stream_12 = require_stream6();
    Object.defineProperty(exports2, "ByteStream", { enumerable: true, get: function() {
      return stream_12.ByteStream;
    } });
    var x509_1 = require_x509();
    Object.defineProperty(exports2, "EXTENSION_OID_SCT", { enumerable: true, get: function() {
      return x509_1.EXTENSION_OID_SCT;
    } });
    Object.defineProperty(exports2, "X509Certificate", { enumerable: true, get: function() {
      return x509_1.X509Certificate;
    } });
    Object.defineProperty(exports2, "X509SCTExtension", { enumerable: true, get: function() {
      return x509_1.X509SCTExtension;
    } });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/util/oidc.js
var require_oidc = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/util/oidc.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.extractJWTSubject = extractJWTSubject;
    var core_1 = require_dist18();
    function extractJWTSubject(jwt) {
      const parts = jwt.split(".", 3);
      const payload = JSON.parse(core_1.encoding.base64Decode(parts[1]));
      if (payload.email) {
        if (!payload.email_verified) {
          throw new Error("JWT email not verified by issuer");
        }
        return payload.email;
      }
      if (payload.sub) {
        return payload.sub;
      } else {
        throw new Error("JWT subject not found");
      }
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/package.json
var require_package5 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/package.json"(exports2, module2) {
    module2.exports = {
      name: "@sigstore/sign",
      version: "4.1.1",
      description: "Sigstore signing library",
      main: "dist/index.js",
      types: "dist/index.d.ts",
      scripts: {
        clean: "shx rm -rf dist *.tsbuildinfo",
        build: "tsc --build",
        test: "jest"
      },
      files: [
        "dist"
      ],
      author: "bdehamer@github.com",
      license: "Apache-2.0",
      repository: {
        type: "git",
        url: "git+https://github.com/sigstore/sigstore-js.git"
      },
      bugs: {
        url: "https://github.com/sigstore/sigstore-js/issues"
      },
      homepage: "https://github.com/sigstore/sigstore-js/tree/main/packages/sign#readme",
      publishConfig: {
        provenance: true
      },
      devDependencies: {
        "@sigstore/jest": "^0.0.0",
        "@sigstore/mock": "^0.12.0",
        "@sigstore/rekor-types": "^4.0.0",
        "@types/make-fetch-happen": "^10.0.4"
      },
      dependencies: {
        "@sigstore/bundle": "^4.0.0",
        "@sigstore/core": "^3.2.0",
        "@sigstore/protobuf-specs": "^0.5.0",
        "make-fetch-happen": "^15.0.4",
        "proc-log": "^6.1.0",
        "@gar/promise-retry": "^1.0.2"
      },
      engines: {
        node: "^20.17.0 || >=22.9.0"
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/util/ua.js
var require_ua = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/util/ua.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.getUserAgent = void 0;
    var os_1 = __importDefault2(__require("os"));
    var getUserAgent = () => {
      const packageVersion = require_package5().version;
      const nodeVersion = process.version;
      const platformName = os_1.default.platform();
      const archName = os_1.default.arch();
      return `sigstore-js/${packageVersion} (Node ${nodeVersion}) (${platformName}/${archName})`;
    };
    exports2.getUserAgent = getUserAgent;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/util/index.js
var require_util13 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/util/index.js"(exports2) {
    "use strict";
    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      var desc = Object.getOwnPropertyDescriptor(m, k2);
      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
        desc = { enumerable: true, get: function() {
          return m[k2];
        } };
      }
      Object.defineProperty(o2, k22, desc);
    }) : (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      o2[k22] = m[k2];
    }));
    var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o2, v) {
      Object.defineProperty(o2, "default", { enumerable: true, value: v });
    }) : function(o2, v) {
      o2["default"] = v;
    });
    var __importStar2 = exports2 && exports2.__importStar || /* @__PURE__ */ (function() {
      var ownKeys2 = function(o2) {
        ownKeys2 = Object.getOwnPropertyNames || function(o3) {
          var ar = [];
          for (var k2 in o3) if (Object.prototype.hasOwnProperty.call(o3, k2)) ar[ar.length] = k2;
          return ar;
        };
        return ownKeys2(o2);
      };
      return function(mod) {
        if (mod && mod.__esModule) return mod;
        var result2 = {};
        if (mod != null) {
          for (var k2 = ownKeys2(mod), i2 = 0; i2 < k2.length; i2++) if (k2[i2] !== "default") __createBinding2(result2, mod, k2[i2]);
        }
        __setModuleDefault2(result2, mod);
        return result2;
      };
    })();
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.ua = exports2.oidc = exports2.pem = exports2.json = exports2.encoding = exports2.dsse = exports2.crypto = void 0;
    var core_1 = require_dist18();
    Object.defineProperty(exports2, "crypto", { enumerable: true, get: function() {
      return core_1.crypto;
    } });
    Object.defineProperty(exports2, "dsse", { enumerable: true, get: function() {
      return core_1.dsse;
    } });
    Object.defineProperty(exports2, "encoding", { enumerable: true, get: function() {
      return core_1.encoding;
    } });
    Object.defineProperty(exports2, "json", { enumerable: true, get: function() {
      return core_1.json;
    } });
    Object.defineProperty(exports2, "pem", { enumerable: true, get: function() {
      return core_1.pem;
    } });
    exports2.oidc = __importStar2(require_oidc());
    exports2.ua = __importStar2(require_ua());
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/bundler/base.js
var require_base = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/bundler/base.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.BaseBundleBuilder = void 0;
    var BaseBundleBuilder = class {
      signer;
      witnesses;
      constructor(options) {
        this.signer = options.signer;
        this.witnesses = options.witnesses;
      }
      // Executes the signing/witnessing process for the given artifact.
      async create(artifact) {
        const signature = await this.prepare(artifact).then((blob) => this.signer.sign(blob));
        const bundle = await this.package(artifact, signature);
        const verificationMaterials = await Promise.all(this.witnesses.map((witness) => witness.testify(bundle.content, publicKey(signature.key))));
        const tlogEntryList = [];
        const timestampList = [];
        verificationMaterials.forEach(({ tlogEntries, rfc3161Timestamps }) => {
          tlogEntryList.push(...tlogEntries ?? []);
          timestampList.push(...rfc3161Timestamps ?? []);
        });
        bundle.verificationMaterial.tlogEntries = tlogEntryList;
        bundle.verificationMaterial.timestampVerificationData = {
          rfc3161Timestamps: timestampList
        };
        return bundle;
      }
      // Override this function to apply any pre-signing transformations to the
      // artifact. The returned buffer will be signed by the signer. The default
      // implementation simply returns the artifact data.
      async prepare(artifact) {
        return artifact.data;
      }
    };
    exports2.BaseBundleBuilder = BaseBundleBuilder;
    function publicKey(key) {
      switch (key.$case) {
        case "publicKey":
          return key.publicKey;
        case "x509Certificate":
          return key.certificate;
      }
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/bundler/bundle.js
var require_bundle2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/bundler/bundle.js"(exports2) {
    "use strict";
    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      var desc = Object.getOwnPropertyDescriptor(m, k2);
      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
        desc = { enumerable: true, get: function() {
          return m[k2];
        } };
      }
      Object.defineProperty(o2, k22, desc);
    }) : (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      o2[k22] = m[k2];
    }));
    var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o2, v) {
      Object.defineProperty(o2, "default", { enumerable: true, value: v });
    }) : function(o2, v) {
      o2["default"] = v;
    });
    var __importStar2 = exports2 && exports2.__importStar || /* @__PURE__ */ (function() {
      var ownKeys2 = function(o2) {
        ownKeys2 = Object.getOwnPropertyNames || function(o3) {
          var ar = [];
          for (var k2 in o3) if (Object.prototype.hasOwnProperty.call(o3, k2)) ar[ar.length] = k2;
          return ar;
        };
        return ownKeys2(o2);
      };
      return function(mod) {
        if (mod && mod.__esModule) return mod;
        var result2 = {};
        if (mod != null) {
          for (var k2 = ownKeys2(mod), i2 = 0; i2 < k2.length; i2++) if (k2[i2] !== "default") __createBinding2(result2, mod, k2[i2]);
        }
        __setModuleDefault2(result2, mod);
        return result2;
      };
    })();
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.toMessageSignatureBundle = toMessageSignatureBundle;
    exports2.toDSSEBundle = toDSSEBundle;
    var sigstore = __importStar2(require_dist17());
    var util_1 = require_util13();
    function toMessageSignatureBundle(artifact, signature) {
      const digest = util_1.crypto.digest("sha256", artifact.data);
      return sigstore.toMessageSignatureBundle({
        digest,
        signature: signature.signature,
        certificate: signature.key.$case === "x509Certificate" ? util_1.pem.toDER(signature.key.certificate) : void 0,
        keyHint: signature.key.$case === "publicKey" ? signature.key.hint : void 0,
        certificateChain: true
      });
    }
    function toDSSEBundle(artifact, signature, certificateChain) {
      return sigstore.toDSSEBundle({
        artifact: artifact.data,
        artifactType: artifact.type,
        signature: signature.signature,
        certificate: signature.key.$case === "x509Certificate" ? util_1.pem.toDER(signature.key.certificate) : void 0,
        keyHint: signature.key.$case === "publicKey" ? signature.key.hint : void 0,
        certificateChain
      });
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/bundler/dsse.js
var require_dsse2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/bundler/dsse.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.DSSEBundleBuilder = void 0;
    var util_1 = require_util13();
    var base_1 = require_base();
    var bundle_1 = require_bundle2();
    var DSSEBundleBuilder = class extends base_1.BaseBundleBuilder {
      certificateChain;
      constructor(options) {
        super(options);
        this.certificateChain = options.certificateChain ?? false;
      }
      // DSSE requires the artifact to be pre-encoded with the payload type
      // before the signature is generated.
      async prepare(artifact) {
        const a2 = artifactDefaults(artifact);
        return util_1.dsse.preAuthEncoding(a2.type, a2.data);
      }
      // Packages the artifact and signature into a DSSE bundle
      async package(artifact, signature) {
        return (0, bundle_1.toDSSEBundle)(artifactDefaults(artifact), signature, this.certificateChain);
      }
    };
    exports2.DSSEBundleBuilder = DSSEBundleBuilder;
    function artifactDefaults(artifact) {
      return {
        ...artifact,
        type: artifact.type ?? ""
      };
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/bundler/message.js
var require_message = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/bundler/message.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.MessageSignatureBundleBuilder = void 0;
    var base_1 = require_base();
    var bundle_1 = require_bundle2();
    var MessageSignatureBundleBuilder = class extends base_1.BaseBundleBuilder {
      constructor(options) {
        super(options);
      }
      async package(artifact, signature) {
        return (0, bundle_1.toMessageSignatureBundle)(artifact, signature);
      }
    };
    exports2.MessageSignatureBundleBuilder = MessageSignatureBundleBuilder;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/bundler/index.js
var require_bundler = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/bundler/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.MessageSignatureBundleBuilder = exports2.DSSEBundleBuilder = void 0;
    var dsse_1 = require_dsse2();
    Object.defineProperty(exports2, "DSSEBundleBuilder", { enumerable: true, get: function() {
      return dsse_1.DSSEBundleBuilder;
    } });
    var message_1 = require_message();
    Object.defineProperty(exports2, "MessageSignatureBundleBuilder", { enumerable: true, get: function() {
      return message_1.MessageSignatureBundleBuilder;
    } });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/external/error.js
var require_error6 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/external/error.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.HTTPError = void 0;
    var HTTPError = class extends Error {
      statusCode;
      location;
      constructor({ status, message, location }) {
        super(`(${status}) ${message}`);
        this.statusCode = status;
        this.location = location;
      }
    };
    exports2.HTTPError = HTTPError;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/error.js
var require_error7 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/error.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.InternalError = void 0;
    exports2.internalError = internalError;
    var error_1 = require_error6();
    var InternalError = class extends Error {
      code;
      cause;
      constructor({ code, message, cause }) {
        super(message);
        this.name = this.constructor.name;
        this.cause = cause;
        this.code = code;
      }
    };
    exports2.InternalError = InternalError;
    function internalError(err, code, message) {
      if (err instanceof error_1.HTTPError) {
        message += ` - ${err.message}`;
      }
      throw new InternalError({
        code,
        message,
        cause: err
      });
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/external/fetch.js
var require_fetch3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/external/fetch.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.fetchWithRetry = fetchWithRetry;
    var promise_retry_1 = require_lib34();
    var http2_1 = __require("http2");
    var make_fetch_happen_1 = __importDefault2(require_lib36());
    var proc_log_1 = require_lib9();
    var util_1 = require_util13();
    var error_1 = require_error6();
    var { HTTP2_HEADER_LOCATION, HTTP2_HEADER_CONTENT_TYPE, HTTP2_HEADER_USER_AGENT, HTTP_STATUS_INTERNAL_SERVER_ERROR, HTTP_STATUS_TOO_MANY_REQUESTS, HTTP_STATUS_REQUEST_TIMEOUT } = http2_1.constants;
    async function fetchWithRetry(url7, options) {
      return (0, promise_retry_1.promiseRetry)(async (retry5, attemptNum) => {
        const method = options.method || "POST";
        const headers = {
          [HTTP2_HEADER_USER_AGENT]: util_1.ua.getUserAgent(),
          ...options.headers
        };
        const response = await (0, make_fetch_happen_1.default)(url7, {
          method,
          headers,
          body: options.body,
          timeout: options.timeout,
          retry: false
          // We're handling retries ourselves
        }).catch((reason) => {
          proc_log_1.log.http("fetch", `${method} ${url7} attempt ${attemptNum} failed with ${reason}`);
          return retry5(reason);
        });
        if (response.ok) {
          return response;
        } else {
          const error = await errorFromResponse(response);
          proc_log_1.log.http("fetch", `${method} ${url7} attempt ${attemptNum} failed with ${response.status}`);
          if (retryable(response.status)) {
            return retry5(error);
          } else {
            throw error;
          }
        }
      }, retryOpts(options.retry));
    }
    var errorFromResponse = async (response) => {
      let message = response.statusText;
      const location = response.headers.get(HTTP2_HEADER_LOCATION) || void 0;
      const contentType = response.headers.get(HTTP2_HEADER_CONTENT_TYPE);
      if (contentType?.includes("application/json")) {
        try {
          const body = await response.json();
          message = body.message || message;
        } catch (e) {
        }
      }
      return new error_1.HTTPError({
        status: response.status,
        message,
        location
      });
    };
    var retryable = (status) => [HTTP_STATUS_REQUEST_TIMEOUT, HTTP_STATUS_TOO_MANY_REQUESTS].includes(status) || status >= HTTP_STATUS_INTERNAL_SERVER_ERROR;
    var retryOpts = (retry5) => {
      if (typeof retry5 === "boolean") {
        return { retries: retry5 ? 1 : 0 };
      } else if (typeof retry5 === "number") {
        return { retries: retry5 };
      } else {
        return { retries: 0, ...retry5 };
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/external/fulcio.js
var require_fulcio = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/external/fulcio.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.Fulcio = void 0;
    var fetch_1 = require_fetch3();
    var Fulcio = class {
      options;
      constructor(options) {
        this.options = options;
      }
      async createSigningCertificate(request) {
        const { baseURL, retry: retry5, timeout } = this.options;
        const url7 = `${baseURL}/api/v2/signingCert`;
        const response = await (0, fetch_1.fetchWithRetry)(url7, {
          headers: {
            "Content-Type": "application/json"
          },
          body: JSON.stringify(request),
          timeout,
          retry: retry5
        });
        return response.json();
      }
    };
    exports2.Fulcio = Fulcio;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/signer/fulcio/ca.js
var require_ca = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/signer/fulcio/ca.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.CAClient = void 0;
    var error_1 = require_error7();
    var fulcio_1 = require_fulcio();
    var CAClient = class {
      fulcio;
      constructor(options) {
        this.fulcio = new fulcio_1.Fulcio({
          baseURL: options.fulcioBaseURL,
          retry: options.retry,
          timeout: options.timeout
        });
      }
      async createSigningCertificate(identityToken, publicKey, challenge) {
        const request = toCertificateRequest(identityToken, publicKey, challenge);
        try {
          const resp = await this.fulcio.createSigningCertificate(request);
          const cert = resp.signedCertificateEmbeddedSct ? resp.signedCertificateEmbeddedSct : resp.signedCertificateDetachedSct;
          return cert.chain.certificates;
        } catch (err) {
          (0, error_1.internalError)(err, "CA_CREATE_SIGNING_CERTIFICATE_ERROR", "error creating signing certificate");
        }
      }
    };
    exports2.CAClient = CAClient;
    function toCertificateRequest(identityToken, publicKey, challenge) {
      return {
        credentials: {
          oidcIdentityToken: identityToken
        },
        publicKeyRequest: {
          publicKey: {
            algorithm: "ECDSA",
            content: publicKey
          },
          proofOfPossession: challenge.toString("base64")
        }
      };
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/signer/fulcio/ephemeral.js
var require_ephemeral = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/signer/fulcio/ephemeral.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.EphemeralSigner = void 0;
    var crypto_1 = __require("crypto");
    var EC_KEYPAIR_TYPE = "ec";
    var P256_CURVE = "P-256";
    var EphemeralSigner = class {
      keypair;
      constructor() {
        this.keypair = (0, crypto_1.generateKeyPairSync)(EC_KEYPAIR_TYPE, {
          namedCurve: P256_CURVE
        });
      }
      async sign(data) {
        const signature = (0, crypto_1.sign)("sha256", data, this.keypair.privateKey);
        const publicKey = this.keypair.publicKey.export({ format: "pem", type: "spki" }).toString("ascii");
        return {
          signature,
          key: { $case: "publicKey", publicKey }
        };
      }
    };
    exports2.EphemeralSigner = EphemeralSigner;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/signer/fulcio/index.js
var require_fulcio2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/signer/fulcio/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.FulcioSigner = exports2.DEFAULT_FULCIO_URL = void 0;
    var error_1 = require_error7();
    var util_1 = require_util13();
    var ca_1 = require_ca();
    var ephemeral_1 = require_ephemeral();
    exports2.DEFAULT_FULCIO_URL = "https://fulcio.sigstore.dev";
    var FulcioSigner = class {
      ca;
      identityProvider;
      keyHolder;
      constructor(options) {
        this.ca = new ca_1.CAClient({
          ...options,
          fulcioBaseURL: options.fulcioBaseURL || /* istanbul ignore next */
          exports2.DEFAULT_FULCIO_URL
        });
        this.identityProvider = options.identityProvider;
        this.keyHolder = options.keyHolder || new ephemeral_1.EphemeralSigner();
      }
      async sign(data) {
        const identityToken = await this.getIdentityToken();
        let subject;
        try {
          subject = util_1.oidc.extractJWTSubject(identityToken);
        } catch (err) {
          throw new error_1.InternalError({
            code: "IDENTITY_TOKEN_PARSE_ERROR",
            message: `invalid identity token: ${identityToken}`,
            cause: err
          });
        }
        const challenge = await this.keyHolder.sign(Buffer.from(subject));
        if (challenge.key.$case !== "publicKey") {
          throw new error_1.InternalError({
            code: "CA_CREATE_SIGNING_CERTIFICATE_ERROR",
            message: "unexpected format for signing key"
          });
        }
        const certificates = await this.ca.createSigningCertificate(identityToken, challenge.key.publicKey, challenge.signature);
        const signature = await this.keyHolder.sign(data);
        return {
          signature: signature.signature,
          key: {
            $case: "x509Certificate",
            certificate: certificates[0]
          }
        };
      }
      async getIdentityToken() {
        try {
          return await this.identityProvider.getToken();
        } catch (err) {
          throw new error_1.InternalError({
            code: "IDENTITY_TOKEN_READ_ERROR",
            message: "error retrieving identity token",
            cause: err
          });
        }
      }
    };
    exports2.FulcioSigner = FulcioSigner;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/signer/index.js
var require_signer = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/signer/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.FulcioSigner = exports2.DEFAULT_FULCIO_URL = void 0;
    var fulcio_1 = require_fulcio2();
    Object.defineProperty(exports2, "DEFAULT_FULCIO_URL", { enumerable: true, get: function() {
      return fulcio_1.DEFAULT_FULCIO_URL;
    } });
    Object.defineProperty(exports2, "FulcioSigner", { enumerable: true, get: function() {
      return fulcio_1.FulcioSigner;
    } });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/external/rekor.js
var require_rekor = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/external/rekor.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.Rekor = void 0;
    var fetch_1 = require_fetch3();
    var Rekor = class {
      options;
      constructor(options) {
        this.options = options;
      }
      /**
       * Create a new entry in the Rekor log.
       * @param propsedEntry {ProposedEntry} Data to create a new entry
       * @returns {Promise<Entry>} The created entry
       */
      async createEntry(propsedEntry) {
        const { baseURL, timeout, retry: retry5 } = this.options;
        const url7 = `${baseURL}/api/v1/log/entries`;
        const response = await (0, fetch_1.fetchWithRetry)(url7, {
          headers: {
            "Content-Type": "application/json",
            Accept: "application/json"
          },
          body: JSON.stringify(propsedEntry),
          timeout,
          retry: retry5
        });
        const data = await response.json();
        return entryFromResponse(data);
      }
      /**
       * Get an entry from the Rekor log.
       * @param uuid {string} The UUID of the entry to retrieve
       * @returns {Promise<Entry>} The retrieved entry
       */
      async getEntry(uuid) {
        const { baseURL, timeout, retry: retry5 } = this.options;
        const url7 = `${baseURL}/api/v1/log/entries/${uuid}`;
        const response = await (0, fetch_1.fetchWithRetry)(url7, {
          method: "GET",
          headers: {
            Accept: "application/json"
          },
          timeout,
          retry: retry5
        });
        const data = await response.json();
        return entryFromResponse(data);
      }
    };
    exports2.Rekor = Rekor;
    function entryFromResponse(data) {
      const entries = Object.entries(data);
      if (entries.length != 1) {
        throw new Error("Received multiple entries in Rekor response");
      }
      const [uuid, entry] = entries[0];
      return {
        ...entry,
        uuid
      };
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/protobuf-specs/0.5.1/aaa9d549f5093b781009861cd12a17a7f71f993e4c9066ec7c4660c27365b2ea/node_modules/@sigstore/protobuf-specs/dist/__generated__/rekor/v2/verifier.js
var require_verifier = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/protobuf-specs/0.5.1/aaa9d549f5093b781009861cd12a17a7f71f993e4c9066ec7c4660c27365b2ea/node_modules/@sigstore/protobuf-specs/dist/__generated__/rekor/v2/verifier.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.Signature = exports2.Verifier = exports2.PublicKey = void 0;
    var sigstore_common_1 = require_sigstore_common();
    exports2.PublicKey = {
      fromJSON(object) {
        return { rawBytes: isSet(object.rawBytes) ? Buffer.from(bytesFromBase64(object.rawBytes)) : Buffer.alloc(0) };
      },
      toJSON(message) {
        const obj = {};
        if (message.rawBytes.length !== 0) {
          obj.rawBytes = base64FromBytes(message.rawBytes);
        }
        return obj;
      }
    };
    exports2.Verifier = {
      fromJSON(object) {
        return {
          verifier: isSet(object.publicKey) ? { $case: "publicKey", publicKey: exports2.PublicKey.fromJSON(object.publicKey) } : isSet(object.x509Certificate) ? { $case: "x509Certificate", x509Certificate: sigstore_common_1.X509Certificate.fromJSON(object.x509Certificate) } : void 0,
          keyDetails: isSet(object.keyDetails) ? (0, sigstore_common_1.publicKeyDetailsFromJSON)(object.keyDetails) : 0
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.verifier?.$case === "publicKey") {
          obj.publicKey = exports2.PublicKey.toJSON(message.verifier.publicKey);
        } else if (message.verifier?.$case === "x509Certificate") {
          obj.x509Certificate = sigstore_common_1.X509Certificate.toJSON(message.verifier.x509Certificate);
        }
        if (message.keyDetails !== 0) {
          obj.keyDetails = (0, sigstore_common_1.publicKeyDetailsToJSON)(message.keyDetails);
        }
        return obj;
      }
    };
    exports2.Signature = {
      fromJSON(object) {
        return {
          content: isSet(object.content) ? Buffer.from(bytesFromBase64(object.content)) : Buffer.alloc(0),
          verifier: isSet(object.verifier) ? exports2.Verifier.fromJSON(object.verifier) : void 0
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.content.length !== 0) {
          obj.content = base64FromBytes(message.content);
        }
        if (message.verifier !== void 0) {
          obj.verifier = exports2.Verifier.toJSON(message.verifier);
        }
        return obj;
      }
    };
    function bytesFromBase64(b64) {
      return Uint8Array.from(globalThis.Buffer.from(b64, "base64"));
    }
    function base64FromBytes(arr) {
      return globalThis.Buffer.from(arr).toString("base64");
    }
    function isSet(value) {
      return value !== null && value !== void 0;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/protobuf-specs/0.5.1/aaa9d549f5093b781009861cd12a17a7f71f993e4c9066ec7c4660c27365b2ea/node_modules/@sigstore/protobuf-specs/dist/__generated__/rekor/v2/dsse.js
var require_dsse3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/protobuf-specs/0.5.1/aaa9d549f5093b781009861cd12a17a7f71f993e4c9066ec7c4660c27365b2ea/node_modules/@sigstore/protobuf-specs/dist/__generated__/rekor/v2/dsse.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.DSSELogEntryV002 = exports2.DSSERequestV002 = void 0;
    var envelope_1 = require_envelope();
    var sigstore_common_1 = require_sigstore_common();
    var verifier_1 = require_verifier();
    exports2.DSSERequestV002 = {
      fromJSON(object) {
        return {
          envelope: isSet(object.envelope) ? envelope_1.Envelope.fromJSON(object.envelope) : void 0,
          verifiers: globalThis.Array.isArray(object?.verifiers) ? object.verifiers.map((e) => verifier_1.Verifier.fromJSON(e)) : []
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.envelope !== void 0) {
          obj.envelope = envelope_1.Envelope.toJSON(message.envelope);
        }
        if (message.verifiers?.length) {
          obj.verifiers = message.verifiers.map((e) => verifier_1.Verifier.toJSON(e));
        }
        return obj;
      }
    };
    exports2.DSSELogEntryV002 = {
      fromJSON(object) {
        return {
          payloadHash: isSet(object.payloadHash) ? sigstore_common_1.HashOutput.fromJSON(object.payloadHash) : void 0,
          signatures: globalThis.Array.isArray(object?.signatures) ? object.signatures.map((e) => verifier_1.Signature.fromJSON(e)) : []
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.payloadHash !== void 0) {
          obj.payloadHash = sigstore_common_1.HashOutput.toJSON(message.payloadHash);
        }
        if (message.signatures?.length) {
          obj.signatures = message.signatures.map((e) => verifier_1.Signature.toJSON(e));
        }
        return obj;
      }
    };
    function isSet(value) {
      return value !== null && value !== void 0;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/protobuf-specs/0.5.1/aaa9d549f5093b781009861cd12a17a7f71f993e4c9066ec7c4660c27365b2ea/node_modules/@sigstore/protobuf-specs/dist/__generated__/rekor/v2/hashedrekord.js
var require_hashedrekord = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/protobuf-specs/0.5.1/aaa9d549f5093b781009861cd12a17a7f71f993e4c9066ec7c4660c27365b2ea/node_modules/@sigstore/protobuf-specs/dist/__generated__/rekor/v2/hashedrekord.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.HashedRekordLogEntryV002 = exports2.HashedRekordRequestV002 = void 0;
    var sigstore_common_1 = require_sigstore_common();
    var verifier_1 = require_verifier();
    exports2.HashedRekordRequestV002 = {
      fromJSON(object) {
        return {
          digest: isSet(object.digest) ? Buffer.from(bytesFromBase64(object.digest)) : Buffer.alloc(0),
          signature: isSet(object.signature) ? verifier_1.Signature.fromJSON(object.signature) : void 0
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.digest.length !== 0) {
          obj.digest = base64FromBytes(message.digest);
        }
        if (message.signature !== void 0) {
          obj.signature = verifier_1.Signature.toJSON(message.signature);
        }
        return obj;
      }
    };
    exports2.HashedRekordLogEntryV002 = {
      fromJSON(object) {
        return {
          data: isSet(object.data) ? sigstore_common_1.HashOutput.fromJSON(object.data) : void 0,
          signature: isSet(object.signature) ? verifier_1.Signature.fromJSON(object.signature) : void 0
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.data !== void 0) {
          obj.data = sigstore_common_1.HashOutput.toJSON(message.data);
        }
        if (message.signature !== void 0) {
          obj.signature = verifier_1.Signature.toJSON(message.signature);
        }
        return obj;
      }
    };
    function bytesFromBase64(b64) {
      return Uint8Array.from(globalThis.Buffer.from(b64, "base64"));
    }
    function base64FromBytes(arr) {
      return globalThis.Buffer.from(arr).toString("base64");
    }
    function isSet(value) {
      return value !== null && value !== void 0;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/protobuf-specs/0.5.1/aaa9d549f5093b781009861cd12a17a7f71f993e4c9066ec7c4660c27365b2ea/node_modules/@sigstore/protobuf-specs/dist/__generated__/rekor/v2/entry.js
var require_entry5 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/protobuf-specs/0.5.1/aaa9d549f5093b781009861cd12a17a7f71f993e4c9066ec7c4660c27365b2ea/node_modules/@sigstore/protobuf-specs/dist/__generated__/rekor/v2/entry.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.CreateEntryRequest = exports2.Spec = exports2.Entry = void 0;
    var dsse_1 = require_dsse3();
    var hashedrekord_1 = require_hashedrekord();
    exports2.Entry = {
      fromJSON(object) {
        return {
          kind: isSet(object.kind) ? globalThis.String(object.kind) : "",
          apiVersion: isSet(object.apiVersion) ? globalThis.String(object.apiVersion) : "",
          spec: isSet(object.spec) ? exports2.Spec.fromJSON(object.spec) : void 0
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.kind !== "") {
          obj.kind = message.kind;
        }
        if (message.apiVersion !== "") {
          obj.apiVersion = message.apiVersion;
        }
        if (message.spec !== void 0) {
          obj.spec = exports2.Spec.toJSON(message.spec);
        }
        return obj;
      }
    };
    exports2.Spec = {
      fromJSON(object) {
        return {
          spec: isSet(object.hashedRekordV002) ? { $case: "hashedRekordV002", hashedRekordV002: hashedrekord_1.HashedRekordLogEntryV002.fromJSON(object.hashedRekordV002) } : isSet(object.dsseV002) ? { $case: "dsseV002", dsseV002: dsse_1.DSSELogEntryV002.fromJSON(object.dsseV002) } : void 0
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.spec?.$case === "hashedRekordV002") {
          obj.hashedRekordV002 = hashedrekord_1.HashedRekordLogEntryV002.toJSON(message.spec.hashedRekordV002);
        } else if (message.spec?.$case === "dsseV002") {
          obj.dsseV002 = dsse_1.DSSELogEntryV002.toJSON(message.spec.dsseV002);
        }
        return obj;
      }
    };
    exports2.CreateEntryRequest = {
      fromJSON(object) {
        return {
          spec: isSet(object.hashedRekordRequestV002) ? {
            $case: "hashedRekordRequestV002",
            hashedRekordRequestV002: hashedrekord_1.HashedRekordRequestV002.fromJSON(object.hashedRekordRequestV002)
          } : isSet(object.dsseRequestV002) ? { $case: "dsseRequestV002", dsseRequestV002: dsse_1.DSSERequestV002.fromJSON(object.dsseRequestV002) } : void 0
        };
      },
      toJSON(message) {
        const obj = {};
        if (message.spec?.$case === "hashedRekordRequestV002") {
          obj.hashedRekordRequestV002 = hashedrekord_1.HashedRekordRequestV002.toJSON(message.spec.hashedRekordRequestV002);
        } else if (message.spec?.$case === "dsseRequestV002") {
          obj.dsseRequestV002 = dsse_1.DSSERequestV002.toJSON(message.spec.dsseRequestV002);
        }
        return obj;
      }
    };
    function isSet(value) {
      return value !== null && value !== void 0;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/protobuf-specs/0.5.1/aaa9d549f5093b781009861cd12a17a7f71f993e4c9066ec7c4660c27365b2ea/node_modules/@sigstore/protobuf-specs/dist/rekor/v2/index.js
var require_v2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/protobuf-specs/0.5.1/aaa9d549f5093b781009861cd12a17a7f71f993e4c9066ec7c4660c27365b2ea/node_modules/@sigstore/protobuf-specs/dist/rekor/v2/index.js"(exports2) {
    "use strict";
    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      var desc = Object.getOwnPropertyDescriptor(m, k2);
      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
        desc = { enumerable: true, get: function() {
          return m[k2];
        } };
      }
      Object.defineProperty(o2, k22, desc);
    }) : (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      o2[k22] = m[k2];
    }));
    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    __exportStar2(require_dsse3(), exports2);
    __exportStar2(require_entry5(), exports2);
    __exportStar2(require_hashedrekord(), exports2);
    __exportStar2(require_verifier(), exports2);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/external/rekor-v2.js
var require_rekor_v2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/external/rekor-v2.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.RekorV2 = void 0;
    var fetch_1 = require_fetch3();
    var protobuf_specs_1 = require_dist16();
    var v2_1 = require_v2();
    var RekorV2 = class {
      options;
      constructor(options) {
        this.options = options;
      }
      async createEntry(proposedEntry) {
        const { baseURL, timeout, retry: retry5 } = this.options;
        const url7 = `${baseURL}/api/v2/log/entries`;
        const response = await (0, fetch_1.fetchWithRetry)(url7, {
          headers: {
            "Content-Type": "application/json",
            Accept: "application/json"
          },
          body: JSON.stringify(v2_1.CreateEntryRequest.toJSON(proposedEntry)),
          timeout,
          retry: retry5
        });
        return response.json().then((data) => protobuf_specs_1.TransparencyLogEntry.fromJSON(data));
      }
    };
    exports2.RekorV2 = RekorV2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/witness/tlog/client.js
var require_client2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/witness/tlog/client.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.TLogV2Client = exports2.TLogClient = void 0;
    var error_1 = require_error7();
    var error_2 = require_error6();
    var rekor_1 = require_rekor();
    var rekor_v2_1 = require_rekor_v2();
    var TLogClient = class {
      rekor;
      fetchOnConflict;
      constructor(options) {
        this.fetchOnConflict = options.fetchOnConflict ?? false;
        this.rekor = new rekor_1.Rekor({
          baseURL: options.rekorBaseURL,
          retry: options.retry,
          timeout: options.timeout
        });
      }
      async createEntry(proposedEntry) {
        let entry;
        try {
          entry = await this.rekor.createEntry(proposedEntry);
        } catch (err) {
          if (entryExistsError(err) && this.fetchOnConflict) {
            const uuid = err.location.split("/").pop() || "";
            try {
              entry = await this.rekor.getEntry(uuid);
            } catch (err2) {
              (0, error_1.internalError)(err2, "TLOG_FETCH_ENTRY_ERROR", "error fetching tlog entry");
            }
          } else {
            (0, error_1.internalError)(err, "TLOG_CREATE_ENTRY_ERROR", "error creating tlog entry");
          }
        }
        return entry;
      }
    };
    exports2.TLogClient = TLogClient;
    function entryExistsError(value) {
      return value instanceof error_2.HTTPError && value.statusCode === 409 && value.location !== void 0;
    }
    var TLogV2Client = class {
      rekor;
      constructor(options) {
        this.rekor = new rekor_v2_1.RekorV2({
          baseURL: options.rekorBaseURL,
          retry: options.retry,
          timeout: options.timeout
        });
      }
      async createEntry(createEntryRequest) {
        let entry;
        try {
          entry = await this.rekor.createEntry(createEntryRequest);
        } catch (err) {
          (0, error_1.internalError)(err, "TLOG_CREATE_ENTRY_ERROR", "error creating tlog entry");
        }
        if (entry.logId === void 0 || entry.kindVersion === void 0) {
          (0, error_1.internalError)(new Error("invalid tlog entry"), "TLOG_CREATE_ENTRY_ERROR", "error creating tlog entry");
        }
        return {
          ...entry,
          logId: entry.logId,
          kindVersion: entry.kindVersion
        };
      }
    };
    exports2.TLogV2Client = TLogV2Client;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/witness/tlog/entry.js
var require_entry6 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/witness/tlog/entry.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.toProposedEntry = toProposedEntry;
    exports2.toCreateEntryRequest = toCreateEntryRequest;
    var bundle_1 = require_dist17();
    var protobuf_specs_1 = require_dist16();
    var util_1 = require_util13();
    var SHA256_ALGORITHM = "sha256";
    function toProposedEntry(content, publicKey, entryType = "dsse") {
      switch (content.$case) {
        case "dsseEnvelope":
          if (entryType === "intoto") {
            return toProposedIntotoEntry(content.dsseEnvelope, publicKey);
          }
          return toProposedDSSEEntry(content.dsseEnvelope, publicKey);
        case "messageSignature":
          return toProposedHashedRekordEntry(content.messageSignature, publicKey);
      }
    }
    function toProposedHashedRekordEntry(messageSignature, publicKey) {
      const hexDigest = messageSignature.messageDigest.digest.toString("hex");
      const b64Signature = messageSignature.signature.toString("base64");
      const b64Key = util_1.encoding.base64Encode(publicKey);
      return {
        apiVersion: "0.0.1",
        kind: "hashedrekord",
        spec: {
          data: {
            hash: {
              algorithm: SHA256_ALGORITHM,
              value: hexDigest
            }
          },
          signature: {
            content: b64Signature,
            publicKey: {
              content: b64Key
            }
          }
        }
      };
    }
    function toProposedDSSEEntry(envelope, publicKey) {
      const envelopeJSON = JSON.stringify((0, bundle_1.envelopeToJSON)(envelope));
      const encodedKey = util_1.encoding.base64Encode(publicKey);
      return {
        apiVersion: "0.0.1",
        kind: "dsse",
        spec: {
          proposedContent: {
            envelope: envelopeJSON,
            verifiers: [encodedKey]
          }
        }
      };
    }
    function toProposedIntotoEntry(envelope, publicKey) {
      const payloadHash = util_1.crypto.digest(SHA256_ALGORITHM, envelope.payload).toString("hex");
      const envelopeHash = calculateDSSEHash(envelope, publicKey);
      const payload = util_1.encoding.base64Encode(envelope.payload.toString("base64"));
      const sig = util_1.encoding.base64Encode(envelope.signatures[0].sig.toString("base64"));
      const keyid = envelope.signatures[0].keyid;
      const encodedKey = util_1.encoding.base64Encode(publicKey);
      const dsse = {
        payloadType: envelope.payloadType,
        payload,
        signatures: [{ sig, publicKey: encodedKey }]
      };
      if (keyid.length > 0) {
        dsse.signatures[0].keyid = keyid;
      }
      return {
        apiVersion: "0.0.2",
        kind: "intoto",
        spec: {
          content: {
            envelope: dsse,
            hash: { algorithm: SHA256_ALGORITHM, value: envelopeHash },
            payloadHash: { algorithm: SHA256_ALGORITHM, value: payloadHash }
          }
        }
      };
    }
    function calculateDSSEHash(envelope, publicKey) {
      const dsse = {
        payloadType: envelope.payloadType,
        payload: envelope.payload.toString("base64"),
        signatures: [
          { sig: envelope.signatures[0].sig.toString("base64"), publicKey }
        ]
      };
      if (envelope.signatures[0].keyid.length > 0) {
        dsse.signatures[0].keyid = envelope.signatures[0].keyid;
      }
      return util_1.crypto.digest(SHA256_ALGORITHM, util_1.json.canonicalize(dsse)).toString("hex");
    }
    function toCreateEntryRequest(content, publicKey) {
      switch (content.$case) {
        case "dsseEnvelope":
          return toCreateEntryRequestDSSE(content.dsseEnvelope, publicKey);
        case "messageSignature":
          return toCreateEntryRequestMessageSignature(content.messageSignature, publicKey);
      }
    }
    function toCreateEntryRequestDSSE(envelope, publicKey) {
      return {
        spec: {
          $case: "dsseRequestV002",
          dsseRequestV002: {
            envelope,
            verifiers: [
              {
                // TODO: We need to add support of passing the key details in the
                // signature bundle. For now we're hardcoding the key details here.
                keyDetails: protobuf_specs_1.PublicKeyDetails.PKIX_ECDSA_P256_SHA_256,
                verifier: {
                  $case: "x509Certificate",
                  x509Certificate: {
                    rawBytes: util_1.pem.toDER(publicKey)
                  }
                }
              }
            ]
          }
        }
      };
    }
    function toCreateEntryRequestMessageSignature(messageSignature, publicKey) {
      return {
        spec: {
          $case: "hashedRekordRequestV002",
          hashedRekordRequestV002: {
            digest: messageSignature.messageDigest.digest,
            signature: {
              content: messageSignature.signature,
              verifier: {
                // TODO: We need to add support of passing the key details in the
                // signature bundle. For now we're hardcoding the key details here.
                keyDetails: protobuf_specs_1.PublicKeyDetails.PKIX_ECDSA_P256_SHA_256,
                verifier: {
                  $case: "x509Certificate",
                  x509Certificate: {
                    rawBytes: util_1.pem.toDER(publicKey)
                  }
                }
              }
            }
          }
        }
      };
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/witness/tlog/index.js
var require_tlog = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/witness/tlog/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.RekorWitness = exports2.DEFAULT_REKOR_URL = void 0;
    var util_1 = require_util13();
    var client_1 = require_client2();
    var entry_1 = require_entry6();
    exports2.DEFAULT_REKOR_URL = "https://rekor.sigstore.dev";
    var RekorWitness = class {
      tlogV1;
      tlogV2;
      entryType;
      majorApiVersion;
      constructor(options) {
        this.entryType = options.entryType;
        this.majorApiVersion = options.majorApiVersion || 1;
        this.tlogV1 = new client_1.TLogClient({
          ...options,
          rekorBaseURL: options.rekorBaseURL || /* istanbul ignore next */
          exports2.DEFAULT_REKOR_URL
        });
        this.tlogV2 = new client_1.TLogV2Client({
          ...options,
          rekorBaseURL: options.rekorBaseURL || /* istanbul ignore next */
          exports2.DEFAULT_REKOR_URL
        });
      }
      async testify(content, publicKey) {
        let tlogEntry;
        if (this.majorApiVersion === 2) {
          const request = (0, entry_1.toCreateEntryRequest)(content, publicKey);
          tlogEntry = await this.tlogV2.createEntry(request);
        } else {
          const proposedEntry = (0, entry_1.toProposedEntry)(content, publicKey, this.entryType);
          const entry = await this.tlogV1.createEntry(proposedEntry);
          tlogEntry = toTransparencyLogEntry(entry);
        }
        return { tlogEntries: [tlogEntry] };
      }
    };
    exports2.RekorWitness = RekorWitness;
    function toTransparencyLogEntry(entry) {
      const logID = Buffer.from(entry.logID, "hex");
      const bodyJSON = util_1.encoding.base64Decode(entry.body);
      const entryBody = JSON.parse(bodyJSON);
      const promise2 = entry?.verification?.signedEntryTimestamp ? inclusionPromise(entry.verification.signedEntryTimestamp) : void 0;
      const proof = entry?.verification?.inclusionProof ? inclusionProof(entry.verification.inclusionProof) : void 0;
      const tlogEntry = {
        logIndex: entry.logIndex.toString(),
        logId: {
          keyId: logID
        },
        integratedTime: entry.integratedTime.toString(),
        kindVersion: {
          kind: entryBody.kind,
          version: entryBody.apiVersion
        },
        inclusionPromise: promise2,
        inclusionProof: proof,
        canonicalizedBody: Buffer.from(entry.body, "base64")
      };
      return tlogEntry;
    }
    function inclusionPromise(promise2) {
      return {
        signedEntryTimestamp: Buffer.from(promise2, "base64")
      };
    }
    function inclusionProof(proof) {
      return {
        logIndex: proof.logIndex.toString(),
        treeSize: proof.treeSize.toString(),
        rootHash: Buffer.from(proof.rootHash, "hex"),
        hashes: proof.hashes.map((h2) => Buffer.from(h2, "hex")),
        checkpoint: {
          envelope: proof.checkpoint
        }
      };
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/external/tsa.js
var require_tsa = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/external/tsa.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.TimestampAuthority = void 0;
    var fetch_1 = require_fetch3();
    var TimestampAuthority = class {
      options;
      constructor(options) {
        this.options = options;
      }
      async createTimestamp(request) {
        const { baseURL, timeout, retry: retry5 } = this.options;
        const url7 = new URL(baseURL).pathname === "/" ? `${baseURL}/api/v1/timestamp` : baseURL;
        const response = await (0, fetch_1.fetchWithRetry)(url7, {
          headers: {
            "Content-Type": "application/json"
          },
          body: JSON.stringify(request),
          timeout,
          retry: retry5
        });
        return response.buffer();
      }
    };
    exports2.TimestampAuthority = TimestampAuthority;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/witness/tsa/client.js
var require_client3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/witness/tsa/client.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.TSAClient = void 0;
    var error_1 = require_error7();
    var tsa_1 = require_tsa();
    var util_1 = require_util13();
    var SHA256_ALGORITHM = "sha256";
    var TSAClient = class {
      tsa;
      constructor(options) {
        this.tsa = new tsa_1.TimestampAuthority({
          baseURL: options.tsaBaseURL,
          retry: options.retry,
          timeout: options.timeout
        });
      }
      async createTimestamp(signature) {
        const request = {
          artifactHash: util_1.crypto.digest(SHA256_ALGORITHM, signature).toString("base64"),
          hashAlgorithm: SHA256_ALGORITHM
        };
        try {
          return await this.tsa.createTimestamp(request);
        } catch (err) {
          (0, error_1.internalError)(err, "TSA_CREATE_TIMESTAMP_ERROR", "error creating timestamp");
        }
      }
    };
    exports2.TSAClient = TSAClient;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/witness/tsa/index.js
var require_tsa2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/witness/tsa/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.TSAWitness = void 0;
    var client_1 = require_client3();
    var TSAWitness = class {
      tsa;
      constructor(options) {
        this.tsa = new client_1.TSAClient({
          tsaBaseURL: options.tsaBaseURL,
          retry: options.retry,
          timeout: options.timeout
        });
      }
      async testify(content) {
        const signature = extractSignature(content);
        const timestamp2 = await this.tsa.createTimestamp(signature);
        return {
          rfc3161Timestamps: [{ signedTimestamp: timestamp2 }]
        };
      }
    };
    exports2.TSAWitness = TSAWitness;
    function extractSignature(content) {
      switch (content.$case) {
        case "dsseEnvelope":
          return content.dsseEnvelope.signatures[0].sig;
        case "messageSignature":
          return content.messageSignature.signature;
      }
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/witness/index.js
var require_witness = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/witness/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.TSAWitness = exports2.RekorWitness = exports2.DEFAULT_REKOR_URL = void 0;
    var tlog_1 = require_tlog();
    Object.defineProperty(exports2, "DEFAULT_REKOR_URL", { enumerable: true, get: function() {
      return tlog_1.DEFAULT_REKOR_URL;
    } });
    Object.defineProperty(exports2, "RekorWitness", { enumerable: true, get: function() {
      return tlog_1.RekorWitness;
    } });
    var tsa_1 = require_tsa2();
    Object.defineProperty(exports2, "TSAWitness", { enumerable: true, get: function() {
      return tsa_1.TSAWitness;
    } });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/config.js
var require_config = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/config.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.bundleBuilderFromSigningConfig = bundleBuilderFromSigningConfig;
    var protobuf_specs_1 = require_dist16();
    var dsse_1 = require_dsse2();
    var message_1 = require_message();
    var signer_1 = require_signer();
    var witness_1 = require_witness();
    var MAX_CA_API_VERSION = 1;
    var MAX_TLOG_API_VERSION = 2;
    var MAX_TSA_API_VERSION = 1;
    var DEFAULT_TIMEOUT = 5e3;
    var DEFAULT_REKORV2_TIMEOUT = 2e4;
    var DEFAULT_RETRY = { retries: 2 };
    function bundleBuilderFromSigningConfig(options) {
      const { signingConfig, identityProvider, bundleType } = options;
      const fetchOptions = options.fetchOptions || {
        timeout: DEFAULT_TIMEOUT,
        retry: DEFAULT_RETRY
      };
      const signer = fulcioSignerFromConfig(signingConfig, identityProvider, fetchOptions);
      const witnesses = witnessesFromConfig(signingConfig, fetchOptions);
      switch (bundleType) {
        case "messageSignature":
          return new message_1.MessageSignatureBundleBuilder({ signer, witnesses });
        case "dsseEnvelope":
          return new dsse_1.DSSEBundleBuilder({ signer, witnesses });
      }
    }
    function fulcioSignerFromConfig(signingConfig, identityProvider, fetchOptions) {
      const service = certAuthorityService(signingConfig);
      return new signer_1.FulcioSigner({
        fulcioBaseURL: service.url,
        identityProvider,
        timeout: fetchOptions.timeout,
        retry: fetchOptions.retry
      });
    }
    function witnessesFromConfig(signingConfig, fetchOptions) {
      const witnesses = [];
      if (signingConfig.rekorTlogConfig) {
        if (signingConfig.rekorTlogConfig.selector !== protobuf_specs_1.ServiceSelector.ANY) {
          throw new Error("Unsupported Rekor TLog selector in signing configuration");
        }
        const tlog = tlogService(signingConfig);
        witnesses.push(new witness_1.RekorWitness({
          rekorBaseURL: tlog.url,
          majorApiVersion: tlog.majorApiVersion,
          retry: fetchOptions.retry,
          timeout: (
            // Ensure Rekor V2 has at least a 20 second timeout
            tlog.majorApiVersion === 1 ? fetchOptions.timeout : Math.min(fetchOptions.timeout || /* istanbul ignore next */
            DEFAULT_TIMEOUT, DEFAULT_REKORV2_TIMEOUT)
          )
        }));
      }
      if (signingConfig.tsaConfig) {
        if (signingConfig.tsaConfig.selector !== protobuf_specs_1.ServiceSelector.ANY) {
          throw new Error("Unsupported TSA selector in signing configuration");
        }
        const tsa = tsaService(signingConfig);
        witnesses.push(new witness_1.TSAWitness({
          tsaBaseURL: tsa.url,
          retry: fetchOptions.retry,
          timeout: fetchOptions.timeout
        }));
      }
      return witnesses;
    }
    function certAuthorityService(signingConfig) {
      const compatibleCAs = filterServicesByMaxAPIVersion(signingConfig.caUrls, MAX_CA_API_VERSION);
      const sortedCAs = sortServicesByStartDate(compatibleCAs);
      if (sortedCAs.length === 0) {
        throw new Error("No valid CA services found in signing configuration");
      }
      return sortedCAs[0];
    }
    function tlogService(signingConfig) {
      const compatibleTLogs = filterServicesByMaxAPIVersion(signingConfig.rekorTlogUrls, MAX_TLOG_API_VERSION);
      const sortedTLogs = sortServicesByStartDate(compatibleTLogs);
      if (sortedTLogs.length === 0) {
        throw new Error("No valid TLogs found in signing configuration");
      }
      return sortedTLogs[0];
    }
    function tsaService(signingConfig) {
      const compatibleTSAs = filterServicesByMaxAPIVersion(signingConfig.tsaUrls, MAX_TSA_API_VERSION);
      const sortedTSAs = sortServicesByStartDate(compatibleTSAs);
      if (sortedTSAs.length === 0) {
        throw new Error("No valid TSAs found in signing configuration");
      }
      return sortedTSAs[0];
    }
    function sortServicesByStartDate(services) {
      const now = /* @__PURE__ */ new Date();
      const validServices = services.filter((service) => {
        if (!service.validFor?.end) {
          return true;
        }
        return service.validFor.end >= now;
      });
      return validServices.sort((a2, b) => {
        const aStart = a2.validFor?.start?.getTime() ?? 0;
        const bStart = b.validFor?.start?.getTime() ?? 0;
        return bStart - aStart;
      });
    }
    function filterServicesByMaxAPIVersion(services, apiVersion) {
      return services.filter((service) => {
        return service.majorApiVersion <= apiVersion;
      });
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/identity/ci.js
var require_ci = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/identity/ci.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.CIContextProvider = void 0;
    var make_fetch_happen_1 = __importDefault2(require_lib36());
    var providers = [getGHAToken, getEnv2];
    var CIContextProvider = class {
      audience;
      /* istanbul ignore next */
      constructor(audience = "sigstore") {
        this.audience = audience;
      }
      // Invoke all registered ProviderFuncs and return the value of whichever one
      // resolves first.
      async getToken() {
        return Promise.any(providers.map((getToken) => getToken(this.audience))).catch(() => Promise.reject("CI: no tokens available"));
      }
    };
    exports2.CIContextProvider = CIContextProvider;
    async function getGHAToken(audience) {
      if (!process.env.ACTIONS_ID_TOKEN_REQUEST_URL || !process.env.ACTIONS_ID_TOKEN_REQUEST_TOKEN) {
        return Promise.reject("no token available");
      }
      const url7 = new URL(process.env.ACTIONS_ID_TOKEN_REQUEST_URL);
      url7.searchParams.append("audience", audience);
      const response = await (0, make_fetch_happen_1.default)(url7.href, {
        retry: 2,
        headers: {
          Accept: "application/json",
          Authorization: `Bearer ${process.env.ACTIONS_ID_TOKEN_REQUEST_TOKEN}`
        }
      });
      return response.json().then((data) => data.value);
    }
    async function getEnv2() {
      if (!process.env.SIGSTORE_ID_TOKEN) {
        return Promise.reject("no token available");
      }
      return process.env.SIGSTORE_ID_TOKEN;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/identity/index.js
var require_identity4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/identity/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.CIContextProvider = void 0;
    var ci_1 = require_ci();
    Object.defineProperty(exports2, "CIContextProvider", { enumerable: true, get: function() {
      return ci_1.CIContextProvider;
    } });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/index.js
var require_dist19 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/sign/4.1.1/972b3313b2edcf13d532a5035343a4d7091a8df8ef95537e73d0acaca976c109/node_modules/@sigstore/sign/dist/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.TSAWitness = exports2.RekorWitness = exports2.DEFAULT_REKOR_URL = exports2.FulcioSigner = exports2.DEFAULT_FULCIO_URL = exports2.CIContextProvider = exports2.InternalError = exports2.bundleBuilderFromSigningConfig = exports2.MessageSignatureBundleBuilder = exports2.DSSEBundleBuilder = void 0;
    var bundler_1 = require_bundler();
    Object.defineProperty(exports2, "DSSEBundleBuilder", { enumerable: true, get: function() {
      return bundler_1.DSSEBundleBuilder;
    } });
    Object.defineProperty(exports2, "MessageSignatureBundleBuilder", { enumerable: true, get: function() {
      return bundler_1.MessageSignatureBundleBuilder;
    } });
    var config_1 = require_config();
    Object.defineProperty(exports2, "bundleBuilderFromSigningConfig", { enumerable: true, get: function() {
      return config_1.bundleBuilderFromSigningConfig;
    } });
    var error_1 = require_error7();
    Object.defineProperty(exports2, "InternalError", { enumerable: true, get: function() {
      return error_1.InternalError;
    } });
    var identity_1 = require_identity4();
    Object.defineProperty(exports2, "CIContextProvider", { enumerable: true, get: function() {
      return identity_1.CIContextProvider;
    } });
    var signer_1 = require_signer();
    Object.defineProperty(exports2, "DEFAULT_FULCIO_URL", { enumerable: true, get: function() {
      return signer_1.DEFAULT_FULCIO_URL;
    } });
    Object.defineProperty(exports2, "FulcioSigner", { enumerable: true, get: function() {
      return signer_1.FulcioSigner;
    } });
    var witness_1 = require_witness();
    Object.defineProperty(exports2, "DEFAULT_REKOR_URL", { enumerable: true, get: function() {
      return witness_1.DEFAULT_REKOR_URL;
    } });
    Object.defineProperty(exports2, "RekorWitness", { enumerable: true, get: function() {
      return witness_1.RekorWitness;
    } });
    Object.defineProperty(exports2, "TSAWitness", { enumerable: true, get: function() {
      return witness_1.TSAWitness;
    } });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/tuf/4.0.2/8e85e8f1e0f4620f5a6f06500cceead261ec7615d4ad6cb394a41828c9ec7e2e/node_modules/@sigstore/tuf/dist/appdata.js
var require_appdata = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/tuf/4.0.2/8e85e8f1e0f4620f5a6f06500cceead261ec7615d4ad6cb394a41828c9ec7e2e/node_modules/@sigstore/tuf/dist/appdata.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.appDataPath = appDataPath;
    var os_1 = __importDefault2(__require("os"));
    var path_1 = __importDefault2(__require("path"));
    function appDataPath(name) {
      const homedir = os_1.default.homedir();
      switch (process.platform) {
        /* istanbul ignore next */
        case "darwin": {
          const appSupport = path_1.default.join(homedir, "Library", "Application Support");
          return path_1.default.join(appSupport, name);
        }
        /* istanbul ignore next */
        case "win32": {
          const localAppData = process.env.LOCALAPPDATA || path_1.default.join(homedir, "AppData", "Local");
          return path_1.default.join(localAppData, name, "Data");
        }
        /* istanbul ignore next */
        default: {
          const localData = process.env.XDG_DATA_HOME || path_1.default.join(homedir, ".local", "share");
          return path_1.default.join(localData, name);
        }
      }
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/error.js
var require_error8 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/error.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.UnsupportedAlgorithmError = exports2.CryptoError = exports2.LengthOrHashMismatchError = exports2.UnsignedMetadataError = exports2.RepositoryError = exports2.ValueError = void 0;
    var ValueError = class extends Error {
    };
    exports2.ValueError = ValueError;
    var RepositoryError = class extends Error {
    };
    exports2.RepositoryError = RepositoryError;
    var UnsignedMetadataError = class extends RepositoryError {
    };
    exports2.UnsignedMetadataError = UnsignedMetadataError;
    var LengthOrHashMismatchError = class extends RepositoryError {
    };
    exports2.LengthOrHashMismatchError = LengthOrHashMismatchError;
    var CryptoError = class extends Error {
    };
    exports2.CryptoError = CryptoError;
    var UnsupportedAlgorithmError = class extends CryptoError {
    };
    exports2.UnsupportedAlgorithmError = UnsupportedAlgorithmError;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/utils/guard.js
var require_guard = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/utils/guard.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.isDefined = isDefined;
    exports2.isObject = isObject4;
    exports2.isStringArray = isStringArray;
    exports2.isObjectArray = isObjectArray;
    exports2.isStringRecord = isStringRecord;
    exports2.isObjectRecord = isObjectRecord;
    function isDefined(val) {
      return val !== void 0;
    }
    function isObject4(value) {
      return typeof value === "object" && value !== null;
    }
    function isStringArray(value) {
      return Array.isArray(value) && value.every((v) => typeof v === "string");
    }
    function isObjectArray(value) {
      return Array.isArray(value) && value.every(isObject4);
    }
    function isStringRecord(value) {
      return typeof value === "object" && value !== null && Object.keys(value).every((k2) => typeof k2 === "string") && Object.values(value).every((v) => typeof v === "string");
    }
    function isObjectRecord(value) {
      return typeof value === "object" && value !== null && Object.keys(value).every((k2) => typeof k2 === "string") && Object.values(value).every((v) => typeof v === "object" && v !== null);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@tufjs/canonical-json/2.0.0/27344e66362d43bb876bf64304daa199776c6164d2a615b413ca845bce0e5b99/node_modules/@tufjs/canonical-json/lib/index.js
var require_lib46 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@tufjs/canonical-json/2.0.0/27344e66362d43bb876bf64304daa199776c6164d2a615b413ca845bce0e5b99/node_modules/@tufjs/canonical-json/lib/index.js"(exports2, module2) {
    var COMMA = ",";
    var COLON = ":";
    var LEFT_SQUARE_BRACKET = "[";
    var RIGHT_SQUARE_BRACKET = "]";
    var LEFT_CURLY_BRACKET = "{";
    var RIGHT_CURLY_BRACKET = "}";
    function canonicalize(object) {
      const buffer3 = [];
      if (typeof object === "string") {
        buffer3.push(canonicalizeString(object));
      } else if (typeof object === "boolean") {
        buffer3.push(JSON.stringify(object));
      } else if (Number.isInteger(object)) {
        buffer3.push(JSON.stringify(object));
      } else if (object === null) {
        buffer3.push(JSON.stringify(object));
      } else if (Array.isArray(object)) {
        buffer3.push(LEFT_SQUARE_BRACKET);
        let first = true;
        object.forEach((element) => {
          if (!first) {
            buffer3.push(COMMA);
          }
          first = false;
          buffer3.push(canonicalize(element));
        });
        buffer3.push(RIGHT_SQUARE_BRACKET);
      } else if (typeof object === "object") {
        buffer3.push(LEFT_CURLY_BRACKET);
        let first = true;
        Object.keys(object).sort().forEach((property) => {
          if (!first) {
            buffer3.push(COMMA);
          }
          first = false;
          buffer3.push(canonicalizeString(property));
          buffer3.push(COLON);
          buffer3.push(canonicalize(object[property]));
        });
        buffer3.push(RIGHT_CURLY_BRACKET);
      } else {
        throw new TypeError("cannot encode " + object.toString());
      }
      return buffer3.join("");
    }
    function canonicalizeString(string) {
      const escapedString = string.replace(/\\/g, "\\\\").replace(/"/g, '\\"');
      return '"' + escapedString + '"';
    }
    module2.exports = {
      canonicalize
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/utils/verify.js
var require_verify2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/utils/verify.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.verifySignature = void 0;
    var canonical_json_1 = require_lib46();
    var crypto_1 = __importDefault2(__require("crypto"));
    var verifySignature = (metaDataSignedData, key, signature) => {
      const canonicalData = Buffer.from((0, canonical_json_1.canonicalize)(metaDataSignedData));
      return crypto_1.default.verify(void 0, canonicalData, key, Buffer.from(signature, "hex"));
    };
    exports2.verifySignature = verifySignature;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/utils/index.js
var require_utils20 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/utils/index.js"(exports2) {
    "use strict";
    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      var desc = Object.getOwnPropertyDescriptor(m, k2);
      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
        desc = { enumerable: true, get: function() {
          return m[k2];
        } };
      }
      Object.defineProperty(o2, k22, desc);
    }) : (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      o2[k22] = m[k2];
    }));
    var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o2, v) {
      Object.defineProperty(o2, "default", { enumerable: true, value: v });
    }) : function(o2, v) {
      o2["default"] = v;
    });
    var __importStar2 = exports2 && exports2.__importStar || /* @__PURE__ */ (function() {
      var ownKeys2 = function(o2) {
        ownKeys2 = Object.getOwnPropertyNames || function(o3) {
          var ar = [];
          for (var k2 in o3) if (Object.prototype.hasOwnProperty.call(o3, k2)) ar[ar.length] = k2;
          return ar;
        };
        return ownKeys2(o2);
      };
      return function(mod) {
        if (mod && mod.__esModule) return mod;
        var result2 = {};
        if (mod != null) {
          for (var k2 = ownKeys2(mod), i2 = 0; i2 < k2.length; i2++) if (k2[i2] !== "default") __createBinding2(result2, mod, k2[i2]);
        }
        __setModuleDefault2(result2, mod);
        return result2;
      };
    })();
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.crypto = exports2.guard = void 0;
    exports2.guard = __importStar2(require_guard());
    exports2.crypto = __importStar2(require_verify2());
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/base.js
var require_base2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/base.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.Signed = exports2.MetadataKind = void 0;
    exports2.isMetadataKind = isMetadataKind;
    var util_1 = __importDefault2(__require("util"));
    var error_1 = require_error8();
    var utils_1 = require_utils20();
    var SPECIFICATION_VERSION = ["1", "0", "31"];
    var MetadataKind;
    (function(MetadataKind2) {
      MetadataKind2["Root"] = "root";
      MetadataKind2["Timestamp"] = "timestamp";
      MetadataKind2["Snapshot"] = "snapshot";
      MetadataKind2["Targets"] = "targets";
    })(MetadataKind || (exports2.MetadataKind = MetadataKind = {}));
    function isMetadataKind(value) {
      return typeof value === "string" && Object.values(MetadataKind).includes(value);
    }
    var Signed = class _Signed {
      specVersion;
      expires;
      version;
      unrecognizedFields;
      constructor(options) {
        this.specVersion = options.specVersion || SPECIFICATION_VERSION.join(".");
        const specList = this.specVersion.split(".");
        if (!(specList.length === 2 || specList.length === 3) || !specList.every((item) => isNumeric(item))) {
          throw new error_1.ValueError("Failed to parse specVersion");
        }
        if (specList[0] != SPECIFICATION_VERSION[0]) {
          throw new error_1.ValueError("Unsupported specVersion");
        }
        this.expires = options.expires;
        this.version = options.version;
        this.unrecognizedFields = options.unrecognizedFields || {};
      }
      equals(other) {
        if (!(other instanceof _Signed)) {
          return false;
        }
        return this.specVersion === other.specVersion && this.expires === other.expires && this.version === other.version && util_1.default.isDeepStrictEqual(this.unrecognizedFields, other.unrecognizedFields);
      }
      isExpired(referenceTime) {
        if (!referenceTime) {
          referenceTime = /* @__PURE__ */ new Date();
        }
        return referenceTime >= new Date(this.expires);
      }
      static commonFieldsFromJSON(data) {
        const { spec_version, expires, version: version2, ...rest } = data;
        if (!utils_1.guard.isDefined(spec_version)) {
          throw new error_1.ValueError("spec_version is not defined");
        } else if (typeof spec_version !== "string") {
          throw new TypeError("spec_version must be a string");
        }
        if (!utils_1.guard.isDefined(expires)) {
          throw new error_1.ValueError("expires is not defined");
        } else if (!(typeof expires === "string")) {
          throw new TypeError("expires must be a string");
        }
        if (!utils_1.guard.isDefined(version2)) {
          throw new error_1.ValueError("version is not defined");
        } else if (!(typeof version2 === "number")) {
          throw new TypeError("version must be a number");
        }
        return {
          specVersion: spec_version,
          expires,
          version: version2,
          unrecognizedFields: rest
        };
      }
    };
    exports2.Signed = Signed;
    function isNumeric(str2) {
      return !isNaN(Number(str2));
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/file.js
var require_file3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/file.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.TargetFile = exports2.MetaFile = void 0;
    var crypto_1 = __importDefault2(__require("crypto"));
    var util_1 = __importDefault2(__require("util"));
    var error_1 = require_error8();
    var utils_1 = require_utils20();
    var MetaFile = class _MetaFile {
      version;
      length;
      hashes;
      unrecognizedFields;
      constructor(opts2) {
        if (opts2.version <= 0) {
          throw new error_1.ValueError("Metafile version must be at least 1");
        }
        if (opts2.length !== void 0) {
          validateLength(opts2.length);
        }
        this.version = opts2.version;
        this.length = opts2.length;
        this.hashes = opts2.hashes;
        this.unrecognizedFields = opts2.unrecognizedFields || {};
      }
      equals(other) {
        if (!(other instanceof _MetaFile)) {
          return false;
        }
        return this.version === other.version && this.length === other.length && util_1.default.isDeepStrictEqual(this.hashes, other.hashes) && util_1.default.isDeepStrictEqual(this.unrecognizedFields, other.unrecognizedFields);
      }
      verify(data) {
        if (this.length !== void 0) {
          if (data.length !== this.length) {
            throw new error_1.LengthOrHashMismatchError(`Expected length ${this.length} but got ${data.length}`);
          }
        }
        if (this.hashes) {
          Object.entries(this.hashes).forEach(([key, value]) => {
            let hash2;
            try {
              hash2 = crypto_1.default.createHash(key);
            } catch (e) {
              throw new error_1.LengthOrHashMismatchError(`Hash algorithm ${key} not supported`);
            }
            const observedHash = hash2.update(data).digest("hex");
            if (observedHash !== value) {
              throw new error_1.LengthOrHashMismatchError(`Expected hash ${value} but got ${observedHash}`);
            }
          });
        }
      }
      toJSON() {
        const json2 = {
          version: this.version,
          ...this.unrecognizedFields
        };
        if (this.length !== void 0) {
          json2.length = this.length;
        }
        if (this.hashes) {
          json2.hashes = this.hashes;
        }
        return json2;
      }
      static fromJSON(data) {
        const { version: version2, length, hashes, ...rest } = data;
        if (typeof version2 !== "number") {
          throw new TypeError("version must be a number");
        }
        if (utils_1.guard.isDefined(length) && typeof length !== "number") {
          throw new TypeError("length must be a number");
        }
        if (utils_1.guard.isDefined(hashes) && !utils_1.guard.isStringRecord(hashes)) {
          throw new TypeError("hashes must be string keys and values");
        }
        return new _MetaFile({
          version: version2,
          length,
          hashes,
          unrecognizedFields: rest
        });
      }
    };
    exports2.MetaFile = MetaFile;
    var TargetFile = class _TargetFile {
      length;
      path;
      hashes;
      unrecognizedFields;
      constructor(opts2) {
        validateLength(opts2.length);
        this.length = opts2.length;
        this.path = opts2.path;
        this.hashes = opts2.hashes;
        this.unrecognizedFields = opts2.unrecognizedFields || {};
      }
      get custom() {
        const custom = this.unrecognizedFields["custom"];
        if (!custom || Array.isArray(custom) || !(typeof custom === "object")) {
          return {};
        }
        return custom;
      }
      equals(other) {
        if (!(other instanceof _TargetFile)) {
          return false;
        }
        return this.length === other.length && this.path === other.path && util_1.default.isDeepStrictEqual(this.hashes, other.hashes) && util_1.default.isDeepStrictEqual(this.unrecognizedFields, other.unrecognizedFields);
      }
      async verify(stream2) {
        let observedLength = 0;
        const digests = Object.keys(this.hashes).reduce((acc, key) => {
          try {
            acc[key] = crypto_1.default.createHash(key);
          } catch (e) {
            throw new error_1.LengthOrHashMismatchError(`Hash algorithm ${key} not supported`);
          }
          return acc;
        }, {});
        for await (const chunk of stream2) {
          observedLength += chunk.length;
          Object.values(digests).forEach((digest) => {
            digest.update(chunk);
          });
        }
        if (observedLength !== this.length) {
          throw new error_1.LengthOrHashMismatchError(`Expected length ${this.length} but got ${observedLength}`);
        }
        Object.entries(digests).forEach(([key, value]) => {
          const expected = this.hashes[key];
          const actual = value.digest("hex");
          if (actual !== expected) {
            throw new error_1.LengthOrHashMismatchError(`Expected hash ${expected} but got ${actual}`);
          }
        });
      }
      toJSON() {
        return {
          length: this.length,
          hashes: this.hashes,
          ...this.unrecognizedFields
        };
      }
      static fromJSON(path218, data) {
        const { length, hashes, ...rest } = data;
        if (typeof length !== "number") {
          throw new TypeError("length must be a number");
        }
        if (!utils_1.guard.isStringRecord(hashes)) {
          throw new TypeError("hashes must have string keys and values");
        }
        return new _TargetFile({
          length,
          path: path218,
          hashes,
          unrecognizedFields: rest
        });
      }
    };
    exports2.TargetFile = TargetFile;
    function validateLength(length) {
      if (length < 0) {
        throw new error_1.ValueError("Length must be at least 0");
      }
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/utils/oid.js
var require_oid2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/utils/oid.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.encodeOIDString = encodeOIDString;
    var ANS1_TAG_OID = 6;
    function encodeOIDString(oid) {
      const parts = oid.split(".");
      const first = parseInt(parts[0], 10) * 40 + parseInt(parts[1], 10);
      const rest = [];
      parts.slice(2).forEach((part) => {
        const bytes = encodeVariableLengthInteger(parseInt(part, 10));
        rest.push(...bytes);
      });
      const der = Buffer.from([first, ...rest]);
      return Buffer.from([ANS1_TAG_OID, der.length, ...der]);
    }
    function encodeVariableLengthInteger(value) {
      const bytes = [];
      let mask = 0;
      while (value > 0) {
        bytes.unshift(value & 127 | mask);
        value >>= 7;
        mask = 128;
      }
      return bytes;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/utils/key.js
var require_key2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/utils/key.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.getPublicKey = getPublicKey;
    var crypto_1 = __importDefault2(__require("crypto"));
    var error_1 = require_error8();
    var oid_1 = require_oid2();
    var ASN1_TAG_SEQUENCE = 48;
    var ANS1_TAG_BIT_STRING = 3;
    var NULL_BYTE = 0;
    var OID_EDDSA = "1.3.101.112";
    var OID_EC_PUBLIC_KEY = "1.2.840.10045.2.1";
    var OID_EC_CURVE_P256V1 = "1.2.840.10045.3.1.7";
    var PEM_HEADER = "-----BEGIN PUBLIC KEY-----";
    function getPublicKey(keyInfo) {
      switch (keyInfo.keyType) {
        case "rsa":
          return getRSAPublicKey(keyInfo);
        case "ed25519":
          return getED25519PublicKey(keyInfo);
        case "ecdsa":
        case "ecdsa-sha2-nistp256":
        case "ecdsa-sha2-nistp384":
          return getECDCSAPublicKey(keyInfo);
        default:
          throw new error_1.UnsupportedAlgorithmError(`Unsupported key type: ${keyInfo.keyType}`);
      }
    }
    function getRSAPublicKey(keyInfo) {
      if (!keyInfo.keyVal.startsWith(PEM_HEADER)) {
        throw new error_1.CryptoError("Invalid key format");
      }
      const key = crypto_1.default.createPublicKey(keyInfo.keyVal);
      switch (keyInfo.scheme) {
        case "rsassa-pss-sha256":
          return {
            key,
            padding: crypto_1.default.constants.RSA_PKCS1_PSS_PADDING
          };
        default:
          throw new error_1.UnsupportedAlgorithmError(`Unsupported RSA scheme: ${keyInfo.scheme}`);
      }
    }
    function getED25519PublicKey(keyInfo) {
      let key;
      if (keyInfo.keyVal.startsWith(PEM_HEADER)) {
        key = crypto_1.default.createPublicKey(keyInfo.keyVal);
      } else {
        if (!isHex(keyInfo.keyVal)) {
          throw new error_1.CryptoError("Invalid key format");
        }
        key = crypto_1.default.createPublicKey({
          key: ed25519.hexToDER(keyInfo.keyVal),
          format: "der",
          type: "spki"
        });
      }
      return { key };
    }
    function getECDCSAPublicKey(keyInfo) {
      let key;
      if (keyInfo.keyVal.startsWith(PEM_HEADER)) {
        key = crypto_1.default.createPublicKey(keyInfo.keyVal);
      } else {
        if (!isHex(keyInfo.keyVal)) {
          throw new error_1.CryptoError("Invalid key format");
        }
        key = crypto_1.default.createPublicKey({
          key: ecdsa.hexToDER(keyInfo.keyVal),
          format: "der",
          type: "spki"
        });
      }
      return { key };
    }
    var ed25519 = {
      // Translates a hex key into a crypto KeyObject
      // https://keygen.sh/blog/how-to-use-hexadecimal-ed25519-keys-in-node/
      hexToDER: (hex) => {
        const key = Buffer.from(hex, "hex");
        const oid = (0, oid_1.encodeOIDString)(OID_EDDSA);
        const elements = Buffer.concat([
          Buffer.concat([
            Buffer.from([ASN1_TAG_SEQUENCE]),
            Buffer.from([oid.length]),
            oid
          ]),
          Buffer.concat([
            Buffer.from([ANS1_TAG_BIT_STRING]),
            Buffer.from([key.length + 1]),
            Buffer.from([NULL_BYTE]),
            key
          ])
        ]);
        const der = Buffer.concat([
          Buffer.from([ASN1_TAG_SEQUENCE]),
          Buffer.from([elements.length]),
          elements
        ]);
        return der;
      }
    };
    var ecdsa = {
      hexToDER: (hex) => {
        const key = Buffer.from(hex, "hex");
        const bitString = Buffer.concat([
          Buffer.from([ANS1_TAG_BIT_STRING]),
          Buffer.from([key.length + 1]),
          Buffer.from([NULL_BYTE]),
          key
        ]);
        const oids = Buffer.concat([
          (0, oid_1.encodeOIDString)(OID_EC_PUBLIC_KEY),
          (0, oid_1.encodeOIDString)(OID_EC_CURVE_P256V1)
        ]);
        const oidSequence = Buffer.concat([
          Buffer.from([ASN1_TAG_SEQUENCE]),
          Buffer.from([oids.length]),
          oids
        ]);
        const der = Buffer.concat([
          Buffer.from([ASN1_TAG_SEQUENCE]),
          Buffer.from([oidSequence.length + bitString.length]),
          oidSequence,
          bitString
        ]);
        return der;
      }
    };
    var isHex = (key) => /^[0-9a-fA-F]+$/.test(key);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/key.js
var require_key3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/key.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.Key = void 0;
    var util_1 = __importDefault2(__require("util"));
    var error_1 = require_error8();
    var utils_1 = require_utils20();
    var key_1 = require_key2();
    var Key = class _Key {
      keyID;
      keyType;
      scheme;
      keyVal;
      unrecognizedFields;
      constructor(options) {
        const { keyID, keyType, scheme, keyVal, unrecognizedFields } = options;
        this.keyID = keyID;
        this.keyType = keyType;
        this.scheme = scheme;
        this.keyVal = keyVal;
        this.unrecognizedFields = unrecognizedFields || {};
      }
      // Verifies the that the metadata.signatures contains a signature made with
      // this key and is correctly signed.
      verifySignature(metadata) {
        const signature = metadata.signatures[this.keyID];
        if (!signature)
          throw new error_1.UnsignedMetadataError("no signature for key found in metadata");
        if (!this.keyVal.public)
          throw new error_1.UnsignedMetadataError("no public key found");
        const publicKey = (0, key_1.getPublicKey)({
          keyType: this.keyType,
          scheme: this.scheme,
          keyVal: this.keyVal.public
        });
        const signedData = metadata.signed.toJSON();
        try {
          if (!utils_1.crypto.verifySignature(signedData, publicKey, signature.sig)) {
            throw new error_1.UnsignedMetadataError(`failed to verify ${this.keyID} signature`);
          }
        } catch (error) {
          if (error instanceof error_1.UnsignedMetadataError) {
            throw error;
          }
          throw new error_1.UnsignedMetadataError(`failed to verify ${this.keyID} signature`);
        }
      }
      equals(other) {
        if (!(other instanceof _Key)) {
          return false;
        }
        return this.keyID === other.keyID && this.keyType === other.keyType && this.scheme === other.scheme && util_1.default.isDeepStrictEqual(this.keyVal, other.keyVal) && util_1.default.isDeepStrictEqual(this.unrecognizedFields, other.unrecognizedFields);
      }
      toJSON() {
        return {
          keytype: this.keyType,
          scheme: this.scheme,
          keyval: this.keyVal,
          ...this.unrecognizedFields
        };
      }
      static fromJSON(keyID, data) {
        const { keytype, scheme, keyval, ...rest } = data;
        if (typeof keytype !== "string") {
          throw new TypeError("keytype must be a string");
        }
        if (typeof scheme !== "string") {
          throw new TypeError("scheme must be a string");
        }
        if (!utils_1.guard.isStringRecord(keyval)) {
          throw new TypeError("keyval must be a string record");
        }
        return new _Key({
          keyID,
          keyType: keytype,
          scheme,
          keyVal: keyval,
          unrecognizedFields: rest
        });
      }
    };
    exports2.Key = Key;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/role.js
var require_role = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/role.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.SuccinctRoles = exports2.DelegatedRole = exports2.Role = exports2.TOP_LEVEL_ROLE_NAMES = void 0;
    var crypto_1 = __importDefault2(__require("crypto"));
    var minimatch_1 = require_commonjs4();
    var util_1 = __importDefault2(__require("util"));
    var error_1 = require_error8();
    var utils_1 = require_utils20();
    exports2.TOP_LEVEL_ROLE_NAMES = [
      "root",
      "targets",
      "snapshot",
      "timestamp"
    ];
    var Role = class _Role {
      keyIDs;
      threshold;
      unrecognizedFields;
      constructor(options) {
        const { keyIDs, threshold, unrecognizedFields } = options;
        if (hasDuplicates(keyIDs)) {
          throw new error_1.ValueError("duplicate key IDs found");
        }
        if (threshold < 1) {
          throw new error_1.ValueError("threshold must be at least 1");
        }
        this.keyIDs = keyIDs;
        this.threshold = threshold;
        this.unrecognizedFields = unrecognizedFields || {};
      }
      equals(other) {
        if (!(other instanceof _Role)) {
          return false;
        }
        return this.threshold === other.threshold && util_1.default.isDeepStrictEqual(this.keyIDs, other.keyIDs) && util_1.default.isDeepStrictEqual(this.unrecognizedFields, other.unrecognizedFields);
      }
      toJSON() {
        return {
          keyids: this.keyIDs,
          threshold: this.threshold,
          ...this.unrecognizedFields
        };
      }
      static fromJSON(data) {
        const { keyids, threshold, ...rest } = data;
        if (!utils_1.guard.isStringArray(keyids)) {
          throw new TypeError("keyids must be an array");
        }
        if (typeof threshold !== "number") {
          throw new TypeError("threshold must be a number");
        }
        return new _Role({
          keyIDs: keyids,
          threshold,
          unrecognizedFields: rest
        });
      }
    };
    exports2.Role = Role;
    function hasDuplicates(array) {
      return new Set(array).size !== array.length;
    }
    var DelegatedRole = class _DelegatedRole extends Role {
      name;
      terminating;
      paths;
      pathHashPrefixes;
      constructor(opts2) {
        super(opts2);
        const { name, terminating, paths: paths3, pathHashPrefixes } = opts2;
        this.name = name;
        this.terminating = terminating;
        if (opts2.paths && opts2.pathHashPrefixes) {
          throw new error_1.ValueError("paths and pathHashPrefixes are mutually exclusive");
        }
        this.paths = paths3;
        this.pathHashPrefixes = pathHashPrefixes;
      }
      equals(other) {
        if (!(other instanceof _DelegatedRole)) {
          return false;
        }
        return super.equals(other) && this.name === other.name && this.terminating === other.terminating && util_1.default.isDeepStrictEqual(this.paths, other.paths) && util_1.default.isDeepStrictEqual(this.pathHashPrefixes, other.pathHashPrefixes);
      }
      isDelegatedPath(targetFilepath) {
        if (this.paths) {
          return this.paths.some((pathPattern) => isTargetInPathPattern(targetFilepath, pathPattern));
        }
        if (this.pathHashPrefixes) {
          const hasher = crypto_1.default.createHash("sha256");
          const pathHash = hasher.update(targetFilepath).digest("hex");
          return this.pathHashPrefixes.some((pathHashPrefix) => pathHash.startsWith(pathHashPrefix));
        }
        return false;
      }
      toJSON() {
        const json2 = {
          ...super.toJSON(),
          name: this.name,
          terminating: this.terminating
        };
        if (this.paths) {
          json2.paths = this.paths;
        }
        if (this.pathHashPrefixes) {
          json2.path_hash_prefixes = this.pathHashPrefixes;
        }
        return json2;
      }
      static fromJSON(data) {
        const { keyids, threshold, name, terminating, paths: paths3, path_hash_prefixes, ...rest } = data;
        if (!utils_1.guard.isStringArray(keyids)) {
          throw new TypeError("keyids must be an array of strings");
        }
        if (typeof threshold !== "number") {
          throw new TypeError("threshold must be a number");
        }
        if (typeof name !== "string") {
          throw new TypeError("name must be a string");
        }
        if (typeof terminating !== "boolean") {
          throw new TypeError("terminating must be a boolean");
        }
        if (utils_1.guard.isDefined(paths3) && !utils_1.guard.isStringArray(paths3)) {
          throw new TypeError("paths must be an array of strings");
        }
        if (utils_1.guard.isDefined(path_hash_prefixes) && !utils_1.guard.isStringArray(path_hash_prefixes)) {
          throw new TypeError("path_hash_prefixes must be an array of strings");
        }
        return new _DelegatedRole({
          keyIDs: keyids,
          threshold,
          name,
          terminating,
          paths: paths3,
          pathHashPrefixes: path_hash_prefixes,
          unrecognizedFields: rest
        });
      }
    };
    exports2.DelegatedRole = DelegatedRole;
    var zip = (a2, b) => a2.map((k2, i2) => [k2, b[i2]]);
    function isTargetInPathPattern(target2, pattern) {
      const targetParts = target2.split("/");
      const patternParts = pattern.split("/");
      if (patternParts.length != targetParts.length) {
        return false;
      }
      return zip(targetParts, patternParts).every(([targetPart, patternPart]) => (0, minimatch_1.minimatch)(targetPart, patternPart));
    }
    var SuccinctRoles = class _SuccinctRoles extends Role {
      bitLength;
      namePrefix;
      numberOfBins;
      suffixLen;
      constructor(opts2) {
        super(opts2);
        const { bitLength, namePrefix } = opts2;
        if (bitLength <= 0 || bitLength > 32) {
          throw new error_1.ValueError("bitLength must be between 1 and 32");
        }
        this.bitLength = bitLength;
        this.namePrefix = namePrefix;
        this.numberOfBins = Math.pow(2, bitLength);
        this.suffixLen = (this.numberOfBins - 1).toString(16).length;
      }
      equals(other) {
        if (!(other instanceof _SuccinctRoles)) {
          return false;
        }
        return super.equals(other) && this.bitLength === other.bitLength && this.namePrefix === other.namePrefix;
      }
      /***
       * Calculates the name of the delegated role responsible for 'target_filepath'.
       *
       * The target at path ''target_filepath' is assigned to a bin by casting
       * the left-most 'bit_length' of bits of the file path hash digest to
       * int, using it as bin index between 0 and '2**bit_length - 1'.
       *
       * Args:
       *  target_filepath: URL path to a target file, relative to a base
       *  targets URL.
       */
      getRoleForTarget(targetFilepath) {
        const hasher = crypto_1.default.createHash("sha256");
        const hasherBuffer = hasher.update(targetFilepath).digest();
        const hashBytes = hasherBuffer.subarray(0, 4);
        const shiftValue = 32 - this.bitLength;
        const binNumber = hashBytes.readUInt32BE() >>> shiftValue;
        const suffix = binNumber.toString(16).padStart(this.suffixLen, "0");
        return `${this.namePrefix}-${suffix}`;
      }
      *getRoles() {
        for (let i2 = 0; i2 < this.numberOfBins; i2++) {
          const suffix = i2.toString(16).padStart(this.suffixLen, "0");
          yield `${this.namePrefix}-${suffix}`;
        }
      }
      /***
       * Determines whether the given ``role_name`` is in one of
       * the delegated roles that ``SuccinctRoles`` represents.
       *
       * Args:
       *  role_name: The name of the role to check against.
       */
      isDelegatedRole(roleName) {
        const desiredPrefix = this.namePrefix + "-";
        if (!roleName.startsWith(desiredPrefix)) {
          return false;
        }
        const suffix = roleName.slice(desiredPrefix.length, roleName.length);
        if (suffix.length != this.suffixLen) {
          return false;
        }
        if (!suffix.match(/^[0-9a-fA-F]+$/)) {
          return false;
        }
        const num = parseInt(suffix, 16);
        return 0 <= num && num < this.numberOfBins;
      }
      toJSON() {
        const json2 = {
          ...super.toJSON(),
          bit_length: this.bitLength,
          name_prefix: this.namePrefix
        };
        return json2;
      }
      static fromJSON(data) {
        const { keyids, threshold, bit_length, name_prefix, ...rest } = data;
        if (!utils_1.guard.isStringArray(keyids)) {
          throw new TypeError("keyids must be an array of strings");
        }
        if (typeof threshold !== "number") {
          throw new TypeError("threshold must be a number");
        }
        if (typeof bit_length !== "number") {
          throw new TypeError("bit_length must be a number");
        }
        if (typeof name_prefix !== "string") {
          throw new TypeError("name_prefix must be a string");
        }
        return new _SuccinctRoles({
          keyIDs: keyids,
          threshold,
          bitLength: bit_length,
          namePrefix: name_prefix,
          unrecognizedFields: rest
        });
      }
    };
    exports2.SuccinctRoles = SuccinctRoles;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/root.js
var require_root = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/root.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.Root = void 0;
    var util_1 = __importDefault2(__require("util"));
    var base_1 = require_base2();
    var error_1 = require_error8();
    var key_1 = require_key3();
    var role_1 = require_role();
    var utils_1 = require_utils20();
    var Root = class _Root extends base_1.Signed {
      type = base_1.MetadataKind.Root;
      keys;
      roles;
      consistentSnapshot;
      constructor(options) {
        super(options);
        this.keys = options.keys || {};
        this.consistentSnapshot = options.consistentSnapshot ?? true;
        if (!options.roles) {
          this.roles = role_1.TOP_LEVEL_ROLE_NAMES.reduce((acc, role) => ({
            ...acc,
            [role]: new role_1.Role({ keyIDs: [], threshold: 1 })
          }), {});
        } else {
          const roleNames = new Set(Object.keys(options.roles));
          if (!role_1.TOP_LEVEL_ROLE_NAMES.every((role) => roleNames.has(role))) {
            throw new error_1.ValueError("missing top-level role");
          }
          this.roles = options.roles;
        }
      }
      addKey(key, role) {
        if (!this.roles[role]) {
          throw new error_1.ValueError(`role ${role} does not exist`);
        }
        if (!this.roles[role].keyIDs.includes(key.keyID)) {
          this.roles[role].keyIDs.push(key.keyID);
        }
        this.keys[key.keyID] = key;
      }
      equals(other) {
        if (!(other instanceof _Root)) {
          return false;
        }
        return super.equals(other) && this.consistentSnapshot === other.consistentSnapshot && util_1.default.isDeepStrictEqual(this.keys, other.keys) && util_1.default.isDeepStrictEqual(this.roles, other.roles);
      }
      toJSON() {
        return {
          _type: this.type,
          spec_version: this.specVersion,
          version: this.version,
          expires: this.expires,
          keys: keysToJSON(this.keys),
          roles: rolesToJSON(this.roles),
          consistent_snapshot: this.consistentSnapshot,
          ...this.unrecognizedFields
        };
      }
      static fromJSON(data) {
        const { unrecognizedFields, ...commonFields } = base_1.Signed.commonFieldsFromJSON(data);
        const { keys: keys4, roles, consistent_snapshot, ...rest } = unrecognizedFields;
        if (typeof consistent_snapshot !== "boolean") {
          throw new TypeError("consistent_snapshot must be a boolean");
        }
        return new _Root({
          ...commonFields,
          keys: keysFromJSON(keys4),
          roles: rolesFromJSON(roles),
          consistentSnapshot: consistent_snapshot,
          unrecognizedFields: rest
        });
      }
    };
    exports2.Root = Root;
    function keysToJSON(keys4) {
      return Object.entries(keys4).reduce((acc, [keyID, key]) => ({ ...acc, [keyID]: key.toJSON() }), {});
    }
    function rolesToJSON(roles) {
      return Object.entries(roles).reduce((acc, [roleName, role]) => ({ ...acc, [roleName]: role.toJSON() }), {});
    }
    function keysFromJSON(data) {
      let keys4;
      if (utils_1.guard.isDefined(data)) {
        if (!utils_1.guard.isObjectRecord(data)) {
          throw new TypeError("keys must be an object");
        }
        keys4 = Object.entries(data).reduce((acc, [keyID, keyData]) => ({
          ...acc,
          [keyID]: key_1.Key.fromJSON(keyID, keyData)
        }), {});
      }
      return keys4;
    }
    function rolesFromJSON(data) {
      let roles;
      if (utils_1.guard.isDefined(data)) {
        if (!utils_1.guard.isObjectRecord(data)) {
          throw new TypeError("roles must be an object");
        }
        roles = Object.entries(data).reduce((acc, [roleName, roleData]) => ({
          ...acc,
          [roleName]: role_1.Role.fromJSON(roleData)
        }), {});
      }
      return roles;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/signature.js
var require_signature = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/signature.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.Signature = void 0;
    var Signature = class _Signature {
      keyID;
      sig;
      constructor(options) {
        const { keyID, sig } = options;
        this.keyID = keyID;
        this.sig = sig;
      }
      toJSON() {
        return {
          keyid: this.keyID,
          sig: this.sig
        };
      }
      static fromJSON(data) {
        const { keyid, sig } = data;
        if (typeof keyid !== "string") {
          throw new TypeError("keyid must be a string");
        }
        if (typeof sig !== "string") {
          throw new TypeError("sig must be a string");
        }
        return new _Signature({
          keyID: keyid,
          sig
        });
      }
    };
    exports2.Signature = Signature;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/snapshot.js
var require_snapshot = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/snapshot.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.Snapshot = void 0;
    var util_1 = __importDefault2(__require("util"));
    var base_1 = require_base2();
    var file_1 = require_file3();
    var utils_1 = require_utils20();
    var Snapshot = class _Snapshot extends base_1.Signed {
      type = base_1.MetadataKind.Snapshot;
      meta;
      constructor(opts2) {
        super(opts2);
        this.meta = opts2.meta || { "targets.json": new file_1.MetaFile({ version: 1 }) };
      }
      equals(other) {
        if (!(other instanceof _Snapshot)) {
          return false;
        }
        return super.equals(other) && util_1.default.isDeepStrictEqual(this.meta, other.meta);
      }
      toJSON() {
        return {
          _type: this.type,
          meta: metaToJSON(this.meta),
          spec_version: this.specVersion,
          version: this.version,
          expires: this.expires,
          ...this.unrecognizedFields
        };
      }
      static fromJSON(data) {
        const { unrecognizedFields, ...commonFields } = base_1.Signed.commonFieldsFromJSON(data);
        const { meta, ...rest } = unrecognizedFields;
        return new _Snapshot({
          ...commonFields,
          meta: metaFromJSON(meta),
          unrecognizedFields: rest
        });
      }
    };
    exports2.Snapshot = Snapshot;
    function metaToJSON(meta) {
      return Object.entries(meta).reduce((acc, [path218, metadata]) => ({
        ...acc,
        [path218]: metadata.toJSON()
      }), {});
    }
    function metaFromJSON(data) {
      let meta;
      if (utils_1.guard.isDefined(data)) {
        if (!utils_1.guard.isObjectRecord(data)) {
          throw new TypeError("meta field is malformed");
        } else {
          meta = Object.entries(data).reduce((acc, [path218, metadata]) => ({
            ...acc,
            [path218]: file_1.MetaFile.fromJSON(metadata)
          }), {});
        }
      }
      return meta;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/delegations.js
var require_delegations = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/delegations.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.Delegations = void 0;
    var util_1 = __importDefault2(__require("util"));
    var error_1 = require_error8();
    var key_1 = require_key3();
    var role_1 = require_role();
    var utils_1 = require_utils20();
    var Delegations = class _Delegations {
      keys;
      roles;
      unrecognizedFields;
      succinctRoles;
      constructor(options) {
        this.keys = options.keys;
        this.unrecognizedFields = options.unrecognizedFields || {};
        if (options.roles) {
          if (Object.keys(options.roles).some((roleName) => role_1.TOP_LEVEL_ROLE_NAMES.includes(roleName))) {
            throw new error_1.ValueError("Delegated role name conflicts with top-level role name");
          }
        }
        this.succinctRoles = options.succinctRoles;
        this.roles = options.roles;
      }
      equals(other) {
        if (!(other instanceof _Delegations)) {
          return false;
        }
        return util_1.default.isDeepStrictEqual(this.keys, other.keys) && util_1.default.isDeepStrictEqual(this.roles, other.roles) && util_1.default.isDeepStrictEqual(this.unrecognizedFields, other.unrecognizedFields) && util_1.default.isDeepStrictEqual(this.succinctRoles, other.succinctRoles);
      }
      *rolesForTarget(targetPath) {
        if (this.roles) {
          for (const role of Object.values(this.roles)) {
            if (role.isDelegatedPath(targetPath)) {
              yield { role: role.name, terminating: role.terminating };
            }
          }
        } else if (this.succinctRoles) {
          yield {
            role: this.succinctRoles.getRoleForTarget(targetPath),
            terminating: true
          };
        }
      }
      toJSON() {
        const json2 = {
          keys: keysToJSON(this.keys),
          ...this.unrecognizedFields
        };
        if (this.roles) {
          json2.roles = rolesToJSON(this.roles);
        } else if (this.succinctRoles) {
          json2.succinct_roles = this.succinctRoles.toJSON();
        }
        return json2;
      }
      static fromJSON(data) {
        const { keys: keys4, roles, succinct_roles, ...unrecognizedFields } = data;
        let succinctRoles;
        if (utils_1.guard.isObject(succinct_roles)) {
          succinctRoles = role_1.SuccinctRoles.fromJSON(succinct_roles);
        }
        return new _Delegations({
          keys: keysFromJSON(keys4),
          roles: rolesFromJSON(roles),
          unrecognizedFields,
          succinctRoles
        });
      }
    };
    exports2.Delegations = Delegations;
    function keysToJSON(keys4) {
      return Object.entries(keys4).reduce((acc, [keyId, key]) => ({
        ...acc,
        [keyId]: key.toJSON()
      }), {});
    }
    function rolesToJSON(roles) {
      return Object.values(roles).map((role) => role.toJSON());
    }
    function keysFromJSON(data) {
      if (!utils_1.guard.isObjectRecord(data)) {
        throw new TypeError("keys is malformed");
      }
      return Object.entries(data).reduce((acc, [keyID, keyData]) => ({
        ...acc,
        [keyID]: key_1.Key.fromJSON(keyID, keyData)
      }), {});
    }
    function rolesFromJSON(data) {
      let roleMap;
      if (utils_1.guard.isDefined(data)) {
        if (!utils_1.guard.isObjectArray(data)) {
          throw new TypeError("roles is malformed");
        }
        roleMap = data.reduce((acc, role) => {
          const delegatedRole = role_1.DelegatedRole.fromJSON(role);
          return {
            ...acc,
            [delegatedRole.name]: delegatedRole
          };
        }, {});
      }
      return roleMap;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/targets.js
var require_targets = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/targets.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.Targets = void 0;
    var util_1 = __importDefault2(__require("util"));
    var base_1 = require_base2();
    var delegations_1 = require_delegations();
    var file_1 = require_file3();
    var utils_1 = require_utils20();
    var Targets = class _Targets extends base_1.Signed {
      type = base_1.MetadataKind.Targets;
      targets;
      delegations;
      constructor(options) {
        super(options);
        this.targets = options.targets || {};
        this.delegations = options.delegations;
      }
      addTarget(target2) {
        this.targets[target2.path] = target2;
      }
      equals(other) {
        if (!(other instanceof _Targets)) {
          return false;
        }
        return super.equals(other) && util_1.default.isDeepStrictEqual(this.targets, other.targets) && util_1.default.isDeepStrictEqual(this.delegations, other.delegations);
      }
      toJSON() {
        const json2 = {
          _type: this.type,
          spec_version: this.specVersion,
          version: this.version,
          expires: this.expires,
          targets: targetsToJSON(this.targets),
          ...this.unrecognizedFields
        };
        if (this.delegations) {
          json2.delegations = this.delegations.toJSON();
        }
        return json2;
      }
      static fromJSON(data) {
        const { unrecognizedFields, ...commonFields } = base_1.Signed.commonFieldsFromJSON(data);
        const { targets, delegations, ...rest } = unrecognizedFields;
        return new _Targets({
          ...commonFields,
          targets: targetsFromJSON(targets),
          delegations: delegationsFromJSON(delegations),
          unrecognizedFields: rest
        });
      }
    };
    exports2.Targets = Targets;
    function targetsToJSON(targets) {
      return Object.entries(targets).reduce((acc, [path218, target2]) => ({
        ...acc,
        [path218]: target2.toJSON()
      }), {});
    }
    function targetsFromJSON(data) {
      let targets;
      if (utils_1.guard.isDefined(data)) {
        if (!utils_1.guard.isObjectRecord(data)) {
          throw new TypeError("targets must be an object");
        } else {
          targets = Object.entries(data).reduce((acc, [path218, target2]) => ({
            ...acc,
            [path218]: file_1.TargetFile.fromJSON(path218, target2)
          }), {});
        }
      }
      return targets;
    }
    function delegationsFromJSON(data) {
      let delegations;
      if (utils_1.guard.isDefined(data)) {
        if (!utils_1.guard.isObject(data)) {
          throw new TypeError("delegations must be an object");
        } else {
          delegations = delegations_1.Delegations.fromJSON(data);
        }
      }
      return delegations;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/timestamp.js
var require_timestamp5 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/timestamp.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.Timestamp = void 0;
    var base_1 = require_base2();
    var file_1 = require_file3();
    var utils_1 = require_utils20();
    var Timestamp = class _Timestamp extends base_1.Signed {
      type = base_1.MetadataKind.Timestamp;
      snapshotMeta;
      constructor(options) {
        super(options);
        this.snapshotMeta = options.snapshotMeta || new file_1.MetaFile({ version: 1 });
      }
      equals(other) {
        if (!(other instanceof _Timestamp)) {
          return false;
        }
        return super.equals(other) && this.snapshotMeta.equals(other.snapshotMeta);
      }
      toJSON() {
        return {
          _type: this.type,
          spec_version: this.specVersion,
          version: this.version,
          expires: this.expires,
          meta: { "snapshot.json": this.snapshotMeta.toJSON() },
          ...this.unrecognizedFields
        };
      }
      static fromJSON(data) {
        const { unrecognizedFields, ...commonFields } = base_1.Signed.commonFieldsFromJSON(data);
        const { meta, ...rest } = unrecognizedFields;
        return new _Timestamp({
          ...commonFields,
          snapshotMeta: snapshotMetaFromJSON(meta),
          unrecognizedFields: rest
        });
      }
    };
    exports2.Timestamp = Timestamp;
    function snapshotMetaFromJSON(data) {
      let snapshotMeta;
      if (utils_1.guard.isDefined(data)) {
        const snapshotData = data["snapshot.json"];
        if (!utils_1.guard.isDefined(snapshotData) || !utils_1.guard.isObject(snapshotData)) {
          throw new TypeError("missing snapshot.json in meta");
        } else {
          snapshotMeta = file_1.MetaFile.fromJSON(snapshotData);
        }
      }
      return snapshotMeta;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/metadata.js
var require_metadata = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/metadata.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.Metadata = void 0;
    var canonical_json_1 = require_lib46();
    var util_1 = __importDefault2(__require("util"));
    var base_1 = require_base2();
    var error_1 = require_error8();
    var root_1 = require_root();
    var signature_1 = require_signature();
    var snapshot_1 = require_snapshot();
    var targets_1 = require_targets();
    var timestamp_1 = require_timestamp5();
    var utils_1 = require_utils20();
    var Metadata = class _Metadata {
      signed;
      signatures;
      unrecognizedFields;
      constructor(signed, signatures, unrecognizedFields) {
        this.signed = signed;
        this.signatures = signatures || {};
        this.unrecognizedFields = unrecognizedFields || {};
      }
      sign(signer, append = true) {
        const bytes = Buffer.from((0, canonical_json_1.canonicalize)(this.signed.toJSON()));
        const signature = signer(bytes);
        if (!append) {
          this.signatures = {};
        }
        this.signatures[signature.keyID] = signature;
      }
      verifyDelegate(delegatedRole, delegatedMetadata) {
        let role;
        let keys4 = {};
        switch (this.signed.type) {
          case base_1.MetadataKind.Root:
            keys4 = this.signed.keys;
            role = this.signed.roles[delegatedRole];
            break;
          case base_1.MetadataKind.Targets:
            if (!this.signed.delegations) {
              throw new error_1.ValueError(`No delegations found for ${delegatedRole}`);
            }
            keys4 = this.signed.delegations.keys;
            if (this.signed.delegations.roles) {
              role = this.signed.delegations.roles[delegatedRole];
            } else if (this.signed.delegations.succinctRoles) {
              if (this.signed.delegations.succinctRoles.isDelegatedRole(delegatedRole)) {
                role = this.signed.delegations.succinctRoles;
              }
            }
            break;
          default:
            throw new TypeError("invalid metadata type");
        }
        if (!role) {
          throw new error_1.ValueError(`no delegation found for ${delegatedRole}`);
        }
        const signingKeys = /* @__PURE__ */ new Set();
        role.keyIDs.forEach((keyID) => {
          const key = keys4[keyID];
          if (!key) {
            return;
          }
          try {
            key.verifySignature(delegatedMetadata);
            signingKeys.add(key.keyID);
          } catch (error) {
          }
        });
        if (signingKeys.size < role.threshold) {
          throw new error_1.UnsignedMetadataError(`${delegatedRole} was signed by ${signingKeys.size}/${role.threshold} keys`);
        }
      }
      equals(other) {
        if (!(other instanceof _Metadata)) {
          return false;
        }
        return (
          // eslint-disable-next-line @typescript-eslint/no-unsafe-argument
          this.signed.equals(other.signed) && util_1.default.isDeepStrictEqual(this.signatures, other.signatures) && util_1.default.isDeepStrictEqual(this.unrecognizedFields, other.unrecognizedFields)
        );
      }
      toJSON() {
        const signatures = Object.values(this.signatures).map((signature) => {
          return signature.toJSON();
        });
        return {
          signatures,
          signed: this.signed.toJSON(),
          ...this.unrecognizedFields
        };
      }
      static fromJSON(type4, data) {
        const { signed, signatures, ...rest } = data;
        if (!utils_1.guard.isDefined(signed) || !utils_1.guard.isObject(signed)) {
          throw new TypeError("signed is not defined");
        }
        if (type4 !== signed._type) {
          throw new error_1.ValueError(`expected '${type4}', got ${signed["_type"]}`);
        }
        if (!utils_1.guard.isObjectArray(signatures)) {
          throw new TypeError("signatures is not an array");
        }
        let signedObj;
        switch (type4) {
          case base_1.MetadataKind.Root:
            signedObj = root_1.Root.fromJSON(signed);
            break;
          case base_1.MetadataKind.Timestamp:
            signedObj = timestamp_1.Timestamp.fromJSON(signed);
            break;
          case base_1.MetadataKind.Snapshot:
            signedObj = snapshot_1.Snapshot.fromJSON(signed);
            break;
          case base_1.MetadataKind.Targets:
            signedObj = targets_1.Targets.fromJSON(signed);
            break;
          default:
            throw new TypeError("invalid metadata type");
        }
        const sigMap = {};
        signatures.forEach((sigData) => {
          const sig = signature_1.Signature.fromJSON(sigData);
          if (sigMap[sig.keyID]) {
            throw new error_1.ValueError(`multiple signatures found for keyid: ${sig.keyID}`);
          }
          sigMap[sig.keyID] = sig;
        });
        return new _Metadata(signedObj, sigMap, rest);
      }
    };
    exports2.Metadata = Metadata;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/index.js
var require_dist20 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@tufjs/models/4.1.0/cdd110995efe3feb5c2c43180e0426316e1b14a28ff1f6f4286c79426c54b55c/node_modules/@tufjs/models/dist/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.Timestamp = exports2.Targets = exports2.Snapshot = exports2.Signature = exports2.Root = exports2.Metadata = exports2.Key = exports2.TargetFile = exports2.MetaFile = exports2.ValueError = exports2.MetadataKind = void 0;
    var base_1 = require_base2();
    Object.defineProperty(exports2, "MetadataKind", { enumerable: true, get: function() {
      return base_1.MetadataKind;
    } });
    var error_1 = require_error8();
    Object.defineProperty(exports2, "ValueError", { enumerable: true, get: function() {
      return error_1.ValueError;
    } });
    var file_1 = require_file3();
    Object.defineProperty(exports2, "MetaFile", { enumerable: true, get: function() {
      return file_1.MetaFile;
    } });
    Object.defineProperty(exports2, "TargetFile", { enumerable: true, get: function() {
      return file_1.TargetFile;
    } });
    var key_1 = require_key3();
    Object.defineProperty(exports2, "Key", { enumerable: true, get: function() {
      return key_1.Key;
    } });
    var metadata_1 = require_metadata();
    Object.defineProperty(exports2, "Metadata", { enumerable: true, get: function() {
      return metadata_1.Metadata;
    } });
    var root_1 = require_root();
    Object.defineProperty(exports2, "Root", { enumerable: true, get: function() {
      return root_1.Root;
    } });
    var signature_1 = require_signature();
    Object.defineProperty(exports2, "Signature", { enumerable: true, get: function() {
      return signature_1.Signature;
    } });
    var snapshot_1 = require_snapshot();
    Object.defineProperty(exports2, "Snapshot", { enumerable: true, get: function() {
      return snapshot_1.Snapshot;
    } });
    var targets_1 = require_targets();
    Object.defineProperty(exports2, "Targets", { enumerable: true, get: function() {
      return targets_1.Targets;
    } });
    var timestamp_1 = require_timestamp5();
    Object.defineProperty(exports2, "Timestamp", { enumerable: true, get: function() {
      return timestamp_1.Timestamp;
    } });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/tuf-js/4.1.0/d9384911029f3db2e502d8ff4239333abc652c760083b232c5113f28368e106b/node_modules/tuf-js/dist/error.js
var require_error9 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/tuf-js/4.1.0/d9384911029f3db2e502d8ff4239333abc652c760083b232c5113f28368e106b/node_modules/tuf-js/dist/error.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.DownloadHTTPError = exports2.DownloadLengthMismatchError = exports2.DownloadError = exports2.ExpiredMetadataError = exports2.EqualVersionError = exports2.BadVersionError = exports2.RepositoryError = exports2.PersistError = exports2.RuntimeError = exports2.ValueError = void 0;
    var ValueError = class extends Error {
    };
    exports2.ValueError = ValueError;
    var RuntimeError = class extends Error {
    };
    exports2.RuntimeError = RuntimeError;
    var PersistError = class extends Error {
    };
    exports2.PersistError = PersistError;
    var RepositoryError = class extends Error {
    };
    exports2.RepositoryError = RepositoryError;
    var BadVersionError = class extends RepositoryError {
    };
    exports2.BadVersionError = BadVersionError;
    var EqualVersionError = class extends BadVersionError {
    };
    exports2.EqualVersionError = EqualVersionError;
    var ExpiredMetadataError = class extends RepositoryError {
    };
    exports2.ExpiredMetadataError = ExpiredMetadataError;
    var DownloadError = class extends Error {
    };
    exports2.DownloadError = DownloadError;
    var DownloadLengthMismatchError = class extends DownloadError {
    };
    exports2.DownloadLengthMismatchError = DownloadLengthMismatchError;
    var DownloadHTTPError = class extends DownloadError {
      statusCode;
      constructor(message, statusCode) {
        super(message);
        this.statusCode = statusCode;
      }
    };
    exports2.DownloadHTTPError = DownloadHTTPError;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/tuf-js/4.1.0/d9384911029f3db2e502d8ff4239333abc652c760083b232c5113f28368e106b/node_modules/tuf-js/dist/utils/tmpfile.js
var require_tmpfile = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/tuf-js/4.1.0/d9384911029f3db2e502d8ff4239333abc652c760083b232c5113f28368e106b/node_modules/tuf-js/dist/utils/tmpfile.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.withTempFile = void 0;
    var promises_1 = __importDefault2(__require("fs/promises"));
    var os_1 = __importDefault2(__require("os"));
    var path_1 = __importDefault2(__require("path"));
    var withTempFile = async (handler77) => withTempDir(async (dir) => handler77(path_1.default.join(dir, "tempfile")));
    exports2.withTempFile = withTempFile;
    var withTempDir = async (handler77) => {
      const tmpDir = await promises_1.default.realpath(os_1.default.tmpdir());
      const dir = await promises_1.default.mkdtemp(tmpDir + path_1.default.sep);
      try {
        return await handler77(dir);
      } finally {
        await promises_1.default.rm(dir, { force: true, recursive: true, maxRetries: 3 });
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/tuf-js/4.1.0/d9384911029f3db2e502d8ff4239333abc652c760083b232c5113f28368e106b/node_modules/tuf-js/dist/fetcher.js
var require_fetcher = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/tuf-js/4.1.0/d9384911029f3db2e502d8ff4239333abc652c760083b232c5113f28368e106b/node_modules/tuf-js/dist/fetcher.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.DefaultFetcher = exports2.BaseFetcher = void 0;
    var debug_1 = __importDefault2(require_src3());
    var fs_1 = __importDefault2(__require("fs"));
    var make_fetch_happen_1 = __importDefault2(require_lib36());
    var util_1 = __importDefault2(__require("util"));
    var error_1 = require_error9();
    var tmpfile_1 = require_tmpfile();
    var log3 = (0, debug_1.default)("tuf:fetch");
    var USER_AGENT_HEADER = "User-Agent";
    var BaseFetcher = class {
      // Download file from given URL. The file is downloaded to a temporary
      // location and then passed to the given handler. The handler is responsible
      // for moving the file to its final location. The temporary file is deleted
      // after the handler returns.
      async downloadFile(url7, maxLength, handler77) {
        return (0, tmpfile_1.withTempFile)(async (tmpFile) => {
          const reader = await this.fetch(url7);
          let numberOfBytesReceived = 0;
          const fileStream = fs_1.default.createWriteStream(tmpFile);
          try {
            for await (const chunk of reader) {
              numberOfBytesReceived += chunk.length;
              if (numberOfBytesReceived > maxLength) {
                throw new error_1.DownloadLengthMismatchError("Max length reached");
              }
              await writeBufferToStream(fileStream, chunk);
            }
          } finally {
            await util_1.default.promisify(fileStream.close).bind(fileStream)();
          }
          return handler77(tmpFile);
        });
      }
      // Download bytes from given URL.
      async downloadBytes(url7, maxLength) {
        return this.downloadFile(url7, maxLength, async (file) => {
          const stream2 = fs_1.default.createReadStream(file);
          const chunks = [];
          for await (const chunk of stream2) {
            chunks.push(chunk);
          }
          return Buffer.concat(chunks);
        });
      }
    };
    exports2.BaseFetcher = BaseFetcher;
    var DefaultFetcher = class extends BaseFetcher {
      userAgent;
      timeout;
      retry;
      constructor(options = {}) {
        super();
        this.userAgent = options.userAgent;
        this.timeout = options.timeout;
        this.retry = options.retry;
      }
      async fetch(url7) {
        log3("GET %s", url7);
        const response = await (0, make_fetch_happen_1.default)(url7, {
          headers: {
            [USER_AGENT_HEADER]: this.userAgent || ""
          },
          timeout: this.timeout,
          retry: this.retry
        });
        if (!response.ok || !response?.body) {
          throw new error_1.DownloadHTTPError("Failed to download", response.status);
        }
        return response.body;
      }
    };
    exports2.DefaultFetcher = DefaultFetcher;
    var writeBufferToStream = async (stream2, buffer3) => {
      return new Promise((resolve3, reject3) => {
        stream2.write(buffer3, (err) => {
          if (err) {
            reject3(err);
          }
          resolve3(true);
        });
      });
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/tuf-js/4.1.0/d9384911029f3db2e502d8ff4239333abc652c760083b232c5113f28368e106b/node_modules/tuf-js/package.json
var require_package6 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/tuf-js/4.1.0/d9384911029f3db2e502d8ff4239333abc652c760083b232c5113f28368e106b/node_modules/tuf-js/package.json"(exports2, module2) {
    module2.exports = {
      name: "tuf-js",
      version: "4.1.0",
      description: "JavaScript implementation of The Update Framework (TUF)",
      main: "dist/index.js",
      types: "dist/index.d.ts",
      scripts: {
        build: "tsc --build tsconfig.build.json",
        clean: "rm -rf dist && rm tsconfig.build.tsbuildinfo",
        test: "jest"
      },
      repository: {
        type: "git",
        url: "git+https://github.com/theupdateframework/tuf-js.git"
      },
      files: [
        "dist"
      ],
      keywords: [
        "tuf",
        "security",
        "update"
      ],
      author: "bdehamer@github.com",
      license: "MIT",
      bugs: {
        url: "https://github.com/theupdateframework/tuf-js/issues"
      },
      homepage: "https://github.com/theupdateframework/tuf-js/tree/main/packages/client#readme",
      devDependencies: {
        "@tufjs/repo-mock": "4.0.1",
        "@types/debug": "^4.1.12",
        "@types/make-fetch-happen": "^10.0.4"
      },
      dependencies: {
        "@tufjs/models": "4.1.0",
        debug: "^4.4.3",
        "make-fetch-happen": "^15.0.1"
      },
      engines: {
        node: "^20.17.0 || >=22.9.0"
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/tuf-js/4.1.0/d9384911029f3db2e502d8ff4239333abc652c760083b232c5113f28368e106b/node_modules/tuf-js/dist/config.js
var require_config2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/tuf-js/4.1.0/d9384911029f3db2e502d8ff4239333abc652c760083b232c5113f28368e106b/node_modules/tuf-js/dist/config.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.defaultConfig = void 0;
    exports2.defaultConfig = {
      maxRootRotations: 256,
      maxDelegations: 32,
      rootMaxLength: 512e3,
      //bytes
      timestampMaxLength: 16384,
      // bytes
      snapshotMaxLength: 2e6,
      // bytes
      targetsMaxLength: 5e6,
      // bytes
      prefixTargetsWithHash: true,
      fetchTimeout: 1e5,
      // milliseconds
      fetchRetries: void 0,
      fetchRetry: 2,
      userAgent: ""
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/tuf-js/4.1.0/d9384911029f3db2e502d8ff4239333abc652c760083b232c5113f28368e106b/node_modules/tuf-js/dist/store.js
var require_store = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/tuf-js/4.1.0/d9384911029f3db2e502d8ff4239333abc652c760083b232c5113f28368e106b/node_modules/tuf-js/dist/store.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.TrustedMetadataStore = void 0;
    var models_1 = require_dist20();
    var error_1 = require_error9();
    var TrustedMetadataStore = class {
      trustedSet = {};
      referenceTime;
      constructor(rootData) {
        this.referenceTime = /* @__PURE__ */ new Date();
        this.loadTrustedRoot(rootData);
      }
      get root() {
        if (!this.trustedSet.root) {
          throw new ReferenceError("No trusted root metadata");
        }
        return this.trustedSet.root;
      }
      get timestamp() {
        return this.trustedSet.timestamp;
      }
      get snapshot() {
        return this.trustedSet.snapshot;
      }
      get targets() {
        return this.trustedSet.targets;
      }
      getRole(name) {
        return this.trustedSet[name];
      }
      updateRoot(bytesBuffer) {
        const data = JSON.parse(bytesBuffer.toString("utf8"));
        const newRoot = models_1.Metadata.fromJSON(models_1.MetadataKind.Root, data);
        if (newRoot.signed.type != models_1.MetadataKind.Root) {
          throw new error_1.RepositoryError(`Expected 'root', got ${newRoot.signed.type}`);
        }
        this.root.verifyDelegate(models_1.MetadataKind.Root, newRoot);
        if (newRoot.signed.version != this.root.signed.version + 1) {
          throw new error_1.BadVersionError(`Expected version ${this.root.signed.version + 1}, got ${newRoot.signed.version}`);
        }
        newRoot.verifyDelegate(models_1.MetadataKind.Root, newRoot);
        this.trustedSet.root = newRoot;
        return newRoot;
      }
      updateTimestamp(bytesBuffer) {
        if (this.snapshot) {
          throw new error_1.RuntimeError("Cannot update timestamp after snapshot");
        }
        if (this.root.signed.isExpired(this.referenceTime)) {
          throw new error_1.ExpiredMetadataError("Final root.json is expired");
        }
        const data = JSON.parse(bytesBuffer.toString("utf8"));
        const newTimestamp = models_1.Metadata.fromJSON(models_1.MetadataKind.Timestamp, data);
        if (newTimestamp.signed.type != models_1.MetadataKind.Timestamp) {
          throw new error_1.RepositoryError(`Expected 'timestamp', got ${newTimestamp.signed.type}`);
        }
        this.root.verifyDelegate(models_1.MetadataKind.Timestamp, newTimestamp);
        if (this.timestamp) {
          if (newTimestamp.signed.version < this.timestamp.signed.version) {
            throw new error_1.BadVersionError(`New timestamp version ${newTimestamp.signed.version} is less than current version ${this.timestamp.signed.version}`);
          }
          if (newTimestamp.signed.version === this.timestamp.signed.version) {
            throw new error_1.EqualVersionError(`New timestamp version ${newTimestamp.signed.version} is equal to current version ${this.timestamp.signed.version}`);
          }
          const snapshotMeta = this.timestamp.signed.snapshotMeta;
          const newSnapshotMeta = newTimestamp.signed.snapshotMeta;
          if (newSnapshotMeta.version < snapshotMeta.version) {
            throw new error_1.BadVersionError(`New snapshot version ${newSnapshotMeta.version} is less than current version ${snapshotMeta.version}`);
          }
        }
        this.trustedSet.timestamp = newTimestamp;
        this.checkFinalTimestamp();
        return newTimestamp;
      }
      updateSnapshot(bytesBuffer, trusted = false) {
        if (!this.timestamp) {
          throw new error_1.RuntimeError("Cannot update snapshot before timestamp");
        }
        if (this.targets) {
          throw new error_1.RuntimeError("Cannot update snapshot after targets");
        }
        this.checkFinalTimestamp();
        const snapshotMeta = this.timestamp.signed.snapshotMeta;
        if (!trusted) {
          snapshotMeta.verify(bytesBuffer);
        }
        const data = JSON.parse(bytesBuffer.toString("utf8"));
        const newSnapshot = models_1.Metadata.fromJSON(models_1.MetadataKind.Snapshot, data);
        if (newSnapshot.signed.type != models_1.MetadataKind.Snapshot) {
          throw new error_1.RepositoryError(`Expected 'snapshot', got ${newSnapshot.signed.type}`);
        }
        this.root.verifyDelegate(models_1.MetadataKind.Snapshot, newSnapshot);
        if (this.snapshot) {
          Object.entries(this.snapshot.signed.meta).forEach(([fileName, fileInfo]) => {
            const newFileInfo = newSnapshot.signed.meta[fileName];
            if (!newFileInfo) {
              throw new error_1.RepositoryError(`Missing file ${fileName} in new snapshot`);
            }
            if (newFileInfo.version < fileInfo.version) {
              throw new error_1.BadVersionError(`New version ${newFileInfo.version} of ${fileName} is less than current version ${fileInfo.version}`);
            }
          });
        }
        this.trustedSet.snapshot = newSnapshot;
        this.checkFinalSnapsnot();
        return newSnapshot;
      }
      updateDelegatedTargets(bytesBuffer, roleName, delegatorName) {
        if (!this.snapshot) {
          throw new error_1.RuntimeError("Cannot update delegated targets before snapshot");
        }
        this.checkFinalSnapsnot();
        const delegator = this.trustedSet[delegatorName];
        if (!delegator) {
          throw new error_1.RuntimeError(`No trusted ${delegatorName} metadata`);
        }
        const meta = this.snapshot.signed.meta?.[`${roleName}.json`];
        if (!meta) {
          throw new error_1.RepositoryError(`Missing ${roleName}.json in snapshot`);
        }
        meta.verify(bytesBuffer);
        const data = JSON.parse(bytesBuffer.toString("utf8"));
        const newDelegate = models_1.Metadata.fromJSON(models_1.MetadataKind.Targets, data);
        if (newDelegate.signed.type != models_1.MetadataKind.Targets) {
          throw new error_1.RepositoryError(`Expected 'targets', got ${newDelegate.signed.type}`);
        }
        delegator.verifyDelegate(roleName, newDelegate);
        const version2 = newDelegate.signed.version;
        if (version2 != meta.version) {
          throw new error_1.BadVersionError(`Version ${version2} of ${roleName} does not match snapshot version ${meta.version}`);
        }
        if (newDelegate.signed.isExpired(this.referenceTime)) {
          throw new error_1.ExpiredMetadataError(`${roleName}.json is expired`);
        }
        this.trustedSet[roleName] = newDelegate;
      }
      // Verifies and loads data as trusted root metadata.
      // Note that an expired initial root is still considered valid.
      loadTrustedRoot(bytesBuffer) {
        const data = JSON.parse(bytesBuffer.toString("utf8"));
        const root = models_1.Metadata.fromJSON(models_1.MetadataKind.Root, data);
        if (root.signed.type != models_1.MetadataKind.Root) {
          throw new error_1.RepositoryError(`Expected 'root', got ${root.signed.type}`);
        }
        root.verifyDelegate(models_1.MetadataKind.Root, root);
        this.trustedSet["root"] = root;
      }
      checkFinalTimestamp() {
        if (!this.timestamp) {
          throw new ReferenceError("No trusted timestamp metadata");
        }
        if (this.timestamp.signed.isExpired(this.referenceTime)) {
          throw new error_1.ExpiredMetadataError("Final timestamp.json is expired");
        }
      }
      checkFinalSnapsnot() {
        if (!this.snapshot) {
          throw new ReferenceError("No trusted snapshot metadata");
        }
        if (!this.timestamp) {
          throw new ReferenceError("No trusted timestamp metadata");
        }
        if (this.snapshot.signed.isExpired(this.referenceTime)) {
          throw new error_1.ExpiredMetadataError("snapshot.json is expired");
        }
        const snapshotMeta = this.timestamp.signed.snapshotMeta;
        if (this.snapshot.signed.version !== snapshotMeta.version) {
          throw new error_1.BadVersionError("Snapshot version doesn't match timestamp");
        }
      }
    };
    exports2.TrustedMetadataStore = TrustedMetadataStore;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/tuf-js/4.1.0/d9384911029f3db2e502d8ff4239333abc652c760083b232c5113f28368e106b/node_modules/tuf-js/dist/utils/url.js
var require_url = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/tuf-js/4.1.0/d9384911029f3db2e502d8ff4239333abc652c760083b232c5113f28368e106b/node_modules/tuf-js/dist/utils/url.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.join = join3;
    var url_1 = __require("url");
    function join3(base, path218) {
      return new url_1.URL(ensureTrailingSlash(base) + removeLeadingSlash(path218)).toString();
    }
    function ensureTrailingSlash(path218) {
      return path218.endsWith("/") ? path218 : path218 + "/";
    }
    function removeLeadingSlash(path218) {
      return path218.startsWith("/") ? path218.slice(1) : path218;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/tuf-js/4.1.0/d9384911029f3db2e502d8ff4239333abc652c760083b232c5113f28368e106b/node_modules/tuf-js/dist/updater.js
var require_updater = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/tuf-js/4.1.0/d9384911029f3db2e502d8ff4239333abc652c760083b232c5113f28368e106b/node_modules/tuf-js/dist/updater.js"(exports2) {
    "use strict";
    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      var desc = Object.getOwnPropertyDescriptor(m, k2);
      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
        desc = { enumerable: true, get: function() {
          return m[k2];
        } };
      }
      Object.defineProperty(o2, k22, desc);
    }) : (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      o2[k22] = m[k2];
    }));
    var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o2, v) {
      Object.defineProperty(o2, "default", { enumerable: true, value: v });
    }) : function(o2, v) {
      o2["default"] = v;
    });
    var __importStar2 = exports2 && exports2.__importStar || /* @__PURE__ */ (function() {
      var ownKeys2 = function(o2) {
        ownKeys2 = Object.getOwnPropertyNames || function(o3) {
          var ar = [];
          for (var k2 in o3) if (Object.prototype.hasOwnProperty.call(o3, k2)) ar[ar.length] = k2;
          return ar;
        };
        return ownKeys2(o2);
      };
      return function(mod) {
        if (mod && mod.__esModule) return mod;
        var result2 = {};
        if (mod != null) {
          for (var k2 = ownKeys2(mod), i2 = 0; i2 < k2.length; i2++) if (k2[i2] !== "default") __createBinding2(result2, mod, k2[i2]);
        }
        __setModuleDefault2(result2, mod);
        return result2;
      };
    })();
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.Updater = void 0;
    var models_1 = require_dist20();
    var debug_1 = __importDefault2(require_src3());
    var fs111 = __importStar2(__require("fs"));
    var path218 = __importStar2(__require("path"));
    var package_json_1 = require_package6();
    var config_1 = require_config2();
    var error_1 = require_error9();
    var fetcher_1 = require_fetcher();
    var store_1 = require_store();
    var url7 = __importStar2(require_url());
    var log3 = (0, debug_1.default)("tuf:cache");
    var Updater = class {
      dir;
      metadataBaseUrl;
      targetDir;
      targetBaseUrl;
      forceCache;
      trustedSet;
      config;
      fetcher;
      constructor(options) {
        const { metadataDir, metadataBaseUrl, targetDir, targetBaseUrl, fetcher: fetcher2, config } = options;
        this.dir = metadataDir;
        this.metadataBaseUrl = metadataBaseUrl;
        this.targetDir = targetDir;
        this.targetBaseUrl = targetBaseUrl;
        this.forceCache = options.forceCache ?? false;
        const data = this.loadLocalMetadata(models_1.MetadataKind.Root);
        this.trustedSet = new store_1.TrustedMetadataStore(data);
        this.config = { ...config_1.defaultConfig, ...config };
        const userAgent = config?.userAgent ? `${config.userAgent} tuf-js/${package_json_1.version}` : `tuf-js/${package_json_1.version}`;
        this.fetcher = fetcher2 || new fetcher_1.DefaultFetcher({
          userAgent,
          timeout: this.config.fetchTimeout,
          retry: this.config.fetchRetries ?? this.config.fetchRetry
        });
      }
      // refresh and load the metadata before downloading the target
      // refresh should be called once after the client is initialized
      async refresh() {
        if (this.forceCache) {
          try {
            await this.loadTimestamp({ checkRemote: false });
          } catch (error) {
            await this.loadRoot();
            await this.loadTimestamp();
          }
        } else {
          await this.loadRoot();
          await this.loadTimestamp();
        }
        await this.loadSnapshot();
        await this.loadTargets(models_1.MetadataKind.Targets, models_1.MetadataKind.Root);
      }
      // Returns the TargetFile instance with information for the given target path.
      //
      // Implicitly calls refresh if it hasn't already been called.
      async getTargetInfo(targetPath) {
        if (!this.trustedSet.targets) {
          await this.refresh();
        }
        return this.preorderDepthFirstWalk(targetPath);
      }
      async downloadTarget(targetInfo, filePath, targetBaseUrl) {
        const targetPath = filePath || this.generateTargetPath(targetInfo);
        if (!targetBaseUrl) {
          if (!this.targetBaseUrl) {
            throw new error_1.ValueError("Target base URL not set");
          }
          targetBaseUrl = this.targetBaseUrl;
        }
        let targetFilePath = targetInfo.path;
        const consistentSnapshot = this.trustedSet.root.signed.consistentSnapshot;
        if (consistentSnapshot && this.config.prefixTargetsWithHash) {
          const hashes = Object.values(targetInfo.hashes);
          const { dir, base } = path218.parse(targetFilePath);
          const filename = `${hashes[0]}.${base}`;
          targetFilePath = dir ? `${dir}/${filename}` : filename;
        }
        const targetUrl = url7.join(targetBaseUrl, targetFilePath);
        await this.fetcher.downloadFile(targetUrl, targetInfo.length, async (fileName) => {
          await targetInfo.verify(fs111.createReadStream(fileName));
          log3("WRITE %s", targetPath);
          fs111.copyFileSync(fileName, targetPath);
        });
        return targetPath;
      }
      async findCachedTarget(targetInfo, filePath) {
        if (!filePath) {
          filePath = this.generateTargetPath(targetInfo);
        }
        try {
          if (fs111.existsSync(filePath)) {
            await targetInfo.verify(fs111.createReadStream(filePath));
            return filePath;
          }
        } catch (error) {
          return;
        }
        return;
      }
      loadLocalMetadata(fileName) {
        const filePath = path218.join(this.dir, `${fileName}.json`);
        log3("READ %s", filePath);
        return fs111.readFileSync(filePath);
      }
      // Sequentially load and persist on local disk every newer root metadata
      // version available on the remote.
      // Client workflow 5.3: update root role
      async loadRoot() {
        const rootVersion = this.trustedSet.root.signed.version;
        const lowerBound2 = rootVersion + 1;
        const upperBound = lowerBound2 + this.config.maxRootRotations;
        for (let version2 = lowerBound2; version2 < upperBound; version2++) {
          const rootUrl = url7.join(this.metadataBaseUrl, `${version2}.root.json`);
          try {
            const bytesData = await this.fetcher.downloadBytes(rootUrl, this.config.rootMaxLength);
            this.trustedSet.updateRoot(bytesData);
            this.persistMetadata(models_1.MetadataKind.Root, bytesData);
          } catch (error) {
            if (error instanceof error_1.DownloadHTTPError) {
              if ([403, 404].includes(error.statusCode)) {
                break;
              }
            }
            throw error;
          }
        }
      }
      // Load local and remote timestamp metadata.
      // Client workflow 5.4: update timestamp role
      async loadTimestamp({ checkRemote } = { checkRemote: true }) {
        try {
          const data = this.loadLocalMetadata(models_1.MetadataKind.Timestamp);
          this.trustedSet.updateTimestamp(data);
          if (!checkRemote) {
            return;
          }
        } catch (error) {
        }
        const timestampUrl = url7.join(this.metadataBaseUrl, "timestamp.json");
        const bytesData = await this.fetcher.downloadBytes(timestampUrl, this.config.timestampMaxLength);
        try {
          this.trustedSet.updateTimestamp(bytesData);
        } catch (error) {
          if (error instanceof error_1.EqualVersionError) {
            return;
          }
          throw error;
        }
        this.persistMetadata(models_1.MetadataKind.Timestamp, bytesData);
      }
      // Load local and remote snapshot metadata.
      // Client workflow 5.5: update snapshot role
      async loadSnapshot() {
        try {
          const data = this.loadLocalMetadata(models_1.MetadataKind.Snapshot);
          this.trustedSet.updateSnapshot(data, true);
        } catch (error) {
          if (!this.trustedSet.timestamp) {
            throw new ReferenceError("No timestamp metadata");
          }
          const snapshotMeta = this.trustedSet.timestamp.signed.snapshotMeta;
          const maxLength = snapshotMeta.length || this.config.snapshotMaxLength;
          const version2 = this.trustedSet.root.signed.consistentSnapshot ? snapshotMeta.version : void 0;
          const snapshotUrl = url7.join(this.metadataBaseUrl, version2 ? `${version2}.snapshot.json` : "snapshot.json");
          try {
            const bytesData = await this.fetcher.downloadBytes(snapshotUrl, maxLength);
            this.trustedSet.updateSnapshot(bytesData);
            this.persistMetadata(models_1.MetadataKind.Snapshot, bytesData);
          } catch (error2) {
            throw new error_1.RuntimeError(`Unable to load snapshot metadata error ${error2}`);
          }
        }
      }
      // Load local and remote targets metadata.
      // Client workflow 5.6: update targets role
      async loadTargets(role, parentRole) {
        if (this.trustedSet.getRole(role)) {
          return this.trustedSet.getRole(role);
        }
        try {
          const buffer3 = this.loadLocalMetadata(role);
          this.trustedSet.updateDelegatedTargets(buffer3, role, parentRole);
        } catch (error) {
          if (!this.trustedSet.snapshot) {
            throw new ReferenceError("No snapshot metadata");
          }
          const metaInfo = this.trustedSet.snapshot.signed.meta[`${role}.json`];
          const maxLength = metaInfo.length || this.config.targetsMaxLength;
          const version2 = this.trustedSet.root.signed.consistentSnapshot ? metaInfo.version : void 0;
          const encodedRole = encodeURIComponent(role);
          const metadataUrl = url7.join(this.metadataBaseUrl, version2 ? `${version2}.${encodedRole}.json` : `${encodedRole}.json`);
          try {
            const bytesData = await this.fetcher.downloadBytes(metadataUrl, maxLength);
            this.trustedSet.updateDelegatedTargets(bytesData, role, parentRole);
            this.persistMetadata(role, bytesData);
          } catch (error2) {
            throw new error_1.RuntimeError(`Unable to load targets error ${error2}`);
          }
        }
        return this.trustedSet.getRole(role);
      }
      async preorderDepthFirstWalk(targetPath) {
        const delegationsToVisit = [
          {
            roleName: models_1.MetadataKind.Targets,
            parentRoleName: models_1.MetadataKind.Root
          }
        ];
        const visitedRoleNames = /* @__PURE__ */ new Set();
        while (visitedRoleNames.size <= this.config.maxDelegations && delegationsToVisit.length > 0) {
          const { roleName, parentRoleName } = delegationsToVisit.pop();
          if (visitedRoleNames.has(roleName)) {
            continue;
          }
          const targets = (await this.loadTargets(roleName, parentRoleName))?.signed;
          if (!targets) {
            continue;
          }
          const target2 = targets.targets?.[targetPath];
          if (target2) {
            return target2;
          }
          visitedRoleNames.add(roleName);
          if (targets.delegations) {
            const childRolesToVisit = [];
            const rolesForTarget = targets.delegations.rolesForTarget(targetPath);
            for (const { role: childName, terminating } of rolesForTarget) {
              childRolesToVisit.push({
                roleName: childName,
                parentRoleName: roleName
              });
              if (terminating) {
                delegationsToVisit.splice(0);
                break;
              }
            }
            childRolesToVisit.reverse();
            delegationsToVisit.push(...childRolesToVisit);
          }
        }
        return;
      }
      generateTargetPath(targetInfo) {
        if (!this.targetDir) {
          throw new error_1.ValueError("Target directory not set");
        }
        const filePath = encodeURIComponent(targetInfo.path);
        return path218.join(this.targetDir, filePath);
      }
      persistMetadata(metaDataName, bytesData) {
        const encodedName = encodeURIComponent(metaDataName);
        try {
          const filePath = path218.join(this.dir, `${encodedName}.json`);
          log3("WRITE %s", filePath);
          fs111.writeFileSync(filePath, bytesData.toString("utf8"));
        } catch (error) {
          throw new error_1.PersistError(`Failed to persist metadata ${encodedName} error: ${error}`);
        }
      }
    };
    exports2.Updater = Updater;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/tuf-js/4.1.0/d9384911029f3db2e502d8ff4239333abc652c760083b232c5113f28368e106b/node_modules/tuf-js/dist/index.js
var require_dist21 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/tuf-js/4.1.0/d9384911029f3db2e502d8ff4239333abc652c760083b232c5113f28368e106b/node_modules/tuf-js/dist/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.Updater = exports2.BaseFetcher = exports2.TargetFile = void 0;
    var models_1 = require_dist20();
    Object.defineProperty(exports2, "TargetFile", { enumerable: true, get: function() {
      return models_1.TargetFile;
    } });
    var fetcher_1 = require_fetcher();
    Object.defineProperty(exports2, "BaseFetcher", { enumerable: true, get: function() {
      return fetcher_1.BaseFetcher;
    } });
    var updater_1 = require_updater();
    Object.defineProperty(exports2, "Updater", { enumerable: true, get: function() {
      return updater_1.Updater;
    } });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/tuf/4.0.2/8e85e8f1e0f4620f5a6f06500cceead261ec7615d4ad6cb394a41828c9ec7e2e/node_modules/@sigstore/tuf/package.json
var require_package7 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/tuf/4.0.2/8e85e8f1e0f4620f5a6f06500cceead261ec7615d4ad6cb394a41828c9ec7e2e/node_modules/@sigstore/tuf/package.json"(exports2, module2) {
    module2.exports = {
      name: "@sigstore/tuf",
      version: "4.0.2",
      description: "Client for the Sigstore TUF repository",
      main: "dist/index.js",
      types: "dist/index.d.ts",
      scripts: {
        clean: "shx rm -rf dist *.tsbuildinfo",
        build: "tsc --build",
        test: "jest"
      },
      files: [
        "dist",
        "seeds.json"
      ],
      author: "bdehamer@github.com",
      license: "Apache-2.0",
      repository: {
        type: "git",
        url: "git+https://github.com/sigstore/sigstore-js.git"
      },
      bugs: {
        url: "https://github.com/sigstore/sigstore-js/issues"
      },
      homepage: "https://github.com/sigstore/sigstore-js/tree/main/packages/tuf#readme",
      publishConfig: {
        provenance: true
      },
      devDependencies: {
        "@sigstore/jest": "^0.0.0",
        "@tufjs/repo-mock": "^4.0.1",
        "@types/make-fetch-happen": "^10.0.4"
      },
      dependencies: {
        "@sigstore/protobuf-specs": "^0.5.0",
        "tuf-js": "^4.1.0"
      },
      engines: {
        node: "^20.17.0 || >=22.9.0"
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/tuf/4.0.2/8e85e8f1e0f4620f5a6f06500cceead261ec7615d4ad6cb394a41828c9ec7e2e/node_modules/@sigstore/tuf/dist/error.js
var require_error10 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/tuf/4.0.2/8e85e8f1e0f4620f5a6f06500cceead261ec7615d4ad6cb394a41828c9ec7e2e/node_modules/@sigstore/tuf/dist/error.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.TUFError = void 0;
    var TUFError = class extends Error {
      code;
      cause;
      constructor({ code, message, cause }) {
        super(message);
        this.code = code;
        this.cause = cause;
        this.name = this.constructor.name;
      }
    };
    exports2.TUFError = TUFError;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/tuf/4.0.2/8e85e8f1e0f4620f5a6f06500cceead261ec7615d4ad6cb394a41828c9ec7e2e/node_modules/@sigstore/tuf/dist/target.js
var require_target = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/tuf/4.0.2/8e85e8f1e0f4620f5a6f06500cceead261ec7615d4ad6cb394a41828c9ec7e2e/node_modules/@sigstore/tuf/dist/target.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.readTarget = readTarget;
    var fs_1 = __importDefault2(__require("fs"));
    var error_1 = require_error10();
    async function readTarget(tuf, targetPath) {
      const path218 = await getTargetPath(tuf, targetPath);
      return new Promise((resolve3, reject3) => {
        fs_1.default.readFile(path218, "utf-8", (err, data) => {
          if (err) {
            reject3(new error_1.TUFError({
              code: "TUF_READ_TARGET_ERROR",
              message: `error reading target ${path218}`,
              cause: err
            }));
          } else {
            resolve3(data);
          }
        });
      });
    }
    async function getTargetPath(tuf, target2) {
      let targetInfo;
      try {
        targetInfo = await tuf.getTargetInfo(target2);
      } catch (err) {
        throw new error_1.TUFError({
          code: "TUF_REFRESH_METADATA_ERROR",
          message: "error refreshing TUF metadata",
          cause: err
        });
      }
      if (!targetInfo) {
        throw new error_1.TUFError({
          code: "TUF_FIND_TARGET_ERROR",
          message: `target ${target2} not found`
        });
      }
      let path218 = await tuf.findCachedTarget(targetInfo);
      if (!path218) {
        try {
          path218 = await tuf.downloadTarget(targetInfo);
        } catch (err) {
          throw new error_1.TUFError({
            code: "TUF_DOWNLOAD_TARGET_ERROR",
            message: `error downloading target ${path218}`,
            cause: err
          });
        }
      }
      return path218;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/tuf/4.0.2/8e85e8f1e0f4620f5a6f06500cceead261ec7615d4ad6cb394a41828c9ec7e2e/node_modules/@sigstore/tuf/seeds.json
var require_seeds = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/tuf/4.0.2/8e85e8f1e0f4620f5a6f06500cceead261ec7615d4ad6cb394a41828c9ec7e2e/node_modules/@sigstore/tuf/seeds.json"(exports2, module2) {
    module2.exports = { "https://tuf-repo-cdn.sigstore.dev": { "root.json": " ", targets: { "trusted_root.json": " ", "registry.npmjs.org%2Fkeys.json": "ewogICAgImtleXMiOiBbCiAgICAgICAgewogICAgICAgICAgICAia2V5SWQiOiAiU0hBMjU2OmpsM2J3c3d1ODBQampva0NnaDBvMnc1YzJVNExoUUFFNTdnajljejFrekEiLAogICAgICAgICAgICAia2V5VXNhZ2UiOiAibnBtOnNpZ25hdHVyZXMiLAogICAgICAgICAgICAicHVibGljS2V5IjogewogICAgICAgICAgICAgICAgInJhd0J5dGVzIjogIk1Ga3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUWNEUWdBRTFPbGIzek1BRkZ4WEtIaUlrUU81Y0ozWWhsNWk2VVBwK0lodXRlQkpidUhjQTVVb2dLbzBFV3RsV3dXNktTYUtvVE5FWUw3SmxDUWlWbmtoQmt0VWdnPT0iLAogICAgICAgICAgICAgICAgImtleURldGFpbHMiOiAiUEtJWF9FQ0RTQV9QMjU2X1NIQV8yNTYiLAogICAgICAgICAgICAgICAgInZhbGlkRm9yIjogewogICAgICAgICAgICAgICAgICAgICJzdGFydCI6ICIxOTk5LTAxLTAxVDAwOjAwOjAwLjAwMFoiLAogICAgICAgICAgICAgICAgICAgICJlbmQiOiAiMjAyNS0wMS0yOVQwMDowMDowMC4wMDBaIgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICAgICJrZXlJZCI6ICJTSEEyNTY6amwzYndzd3U4MFBqam9rQ2doMG8ydzVjMlU0TGhRQUU1N2dqOWN6MWt6QSIsCiAgICAgICAgICAgICJrZXlVc2FnZSI6ICJucG06YXR0ZXN0YXRpb25zIiwKICAgICAgICAgICAgInB1YmxpY0tleSI6IHsKICAgICAgICAgICAgICAgICJyYXdCeXRlcyI6ICJNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUUxT2xiM3pNQUZGeFhLSGlJa1FPNWNKM1lobDVpNlVQcCtJaHV0ZUJKYnVIY0E1VW9nS28wRVd0bFd3VzZLU2FLb1RORVlMN0psQ1FpVm5raEJrdFVnZz09IiwKICAgICAgICAgICAgICAgICJrZXlEZXRhaWxzIjogIlBLSVhfRUNEU0FfUDI1Nl9TSEFfMjU2IiwKICAgICAgICAgICAgICAgICJ2YWxpZEZvciI6IHsKICAgICAgICAgICAgICAgICAgICAic3RhcnQiOiAiMjAyMi0xMi0wMVQwMDowMDowMC4wMDBaIiwKICAgICAgICAgICAgICAgICAgICAiZW5kIjogIjIwMjUtMDEtMjlUMDA6MDA6MDAuMDAwWiIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgICAia2V5SWQiOiAiU0hBMjU2OkRoUTh3UjVBUEJ2RkhMRi8rVGMrQVl2UE9kVHBjSURxT2h4c0JIUndDN1UiLAogICAgICAgICAgICAia2V5VXNhZ2UiOiAibnBtOnNpZ25hdHVyZXMiLAogICAgICAgICAgICAicHVibGljS2V5IjogewogICAgICAgICAgICAgICAgInJhd0J5dGVzIjogIk1Ga3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUWNEUWdBRVk2WWE3VysrN2FVUHp2TVRyZXpINlljeDNjK0hPS1lDY05HeWJKWlNDSnEvZmQ3UWE4dXVBS3RkSWtVUXRRaUVLRVJoQW1FNWxNTUpoUDhPa0RPYTJnPT0iLAogICAgICAgICAgICAgICAgImtleURldGFpbHMiOiAiUEtJWF9FQ0RTQV9QMjU2X1NIQV8yNTYiLAogICAgICAgICAgICAgICAgInZhbGlkRm9yIjogewogICAgICAgICAgICAgICAgICAgICJzdGFydCI6ICIyMDI1LTAxLTEzVDAwOjAwOjAwLjAwMFoiCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgICAgImtleUlkIjogIlNIQTI1NjpEaFE4d1I1QVBCdkZITEYvK1RjK0FZdlBPZFRwY0lEcU9oeHNCSFJ3QzdVIiwKICAgICAgICAgICAgImtleVVzYWdlIjogIm5wbTphdHRlc3RhdGlvbnMiLAogICAgICAgICAgICAicHVibGljS2V5IjogewogICAgICAgICAgICAgICAgInJhd0J5dGVzIjogIk1Ga3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUWNEUWdBRVk2WWE3VysrN2FVUHp2TVRyZXpINlljeDNjK0hPS1lDY05HeWJKWlNDSnEvZmQ3UWE4dXVBS3RkSWtVUXRRaUVLRVJoQW1FNWxNTUpoUDhPa0RPYTJnPT0iLAogICAgICAgICAgICAgICAgImtleURldGFpbHMiOiAiUEtJWF9FQ0RTQV9QMjU2X1NIQV8yNTYiLAogICAgICAgICAgICAgICAgInZhbGlkRm9yIjogewogICAgICAgICAgICAgICAgICAgICJzdGFydCI6ICIyMDI1LTAxLTEzVDAwOjAwOjAwLjAwMFoiCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICBdCn0K" } } };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/tuf/4.0.2/8e85e8f1e0f4620f5a6f06500cceead261ec7615d4ad6cb394a41828c9ec7e2e/node_modules/@sigstore/tuf/dist/client.js
var require_client4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/tuf/4.0.2/8e85e8f1e0f4620f5a6f06500cceead261ec7615d4ad6cb394a41828c9ec7e2e/node_modules/@sigstore/tuf/dist/client.js"(exports2) {
    "use strict";
    var __importDefault2 = exports2 && exports2.__importDefault || function(mod) {
      return mod && mod.__esModule ? mod : { "default": mod };
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.TUFClient = void 0;
    var fs_1 = __importDefault2(__require("fs"));
    var path_1 = __importDefault2(__require("path"));
    var tuf_js_1 = require_dist21();
    var _1 = require_dist22();
    var package_json_1 = require_package7();
    var target_1 = require_target();
    var TARGETS_DIR_NAME = "targets";
    var TUFClient = class {
      updater;
      constructor(options) {
        const url7 = new URL(options.mirrorURL);
        const repoName = encodeURIComponent(url7.host + url7.pathname.replace(/\/$/, ""));
        const cachePath = path_1.default.join(options.cachePath, repoName);
        initTufCache(cachePath);
        seedCache({
          cachePath,
          mirrorURL: options.mirrorURL,
          tufRootPath: options.rootPath,
          forceInit: options.forceInit
        });
        this.updater = initClient({
          mirrorURL: options.mirrorURL,
          cachePath,
          forceCache: options.forceCache,
          retry: options.retry,
          timeout: options.timeout
        });
      }
      async refresh() {
        return this.updater.refresh();
      }
      getTarget(targetName) {
        return (0, target_1.readTarget)(this.updater, targetName);
      }
    };
    exports2.TUFClient = TUFClient;
    function initTufCache(cachePath) {
      const targetsPath = path_1.default.join(cachePath, TARGETS_DIR_NAME);
      if (!fs_1.default.existsSync(cachePath)) {
        fs_1.default.mkdirSync(cachePath, { recursive: true });
      }
      if (!fs_1.default.existsSync(targetsPath)) {
        fs_1.default.mkdirSync(targetsPath);
      }
    }
    function seedCache({ cachePath, mirrorURL, tufRootPath, forceInit }) {
      const cachedRootPath = path_1.default.join(cachePath, "root.json");
      if (!fs_1.default.existsSync(cachedRootPath) || forceInit) {
        if (tufRootPath) {
          fs_1.default.copyFileSync(tufRootPath, cachedRootPath);
        } else {
          const seeds = require_seeds();
          const repoSeed = seeds[mirrorURL];
          if (!repoSeed) {
            throw new _1.TUFError({
              code: "TUF_INIT_CACHE_ERROR",
              message: `No root.json found for mirror: ${mirrorURL}`
            });
          }
          fs_1.default.writeFileSync(cachedRootPath, Buffer.from(repoSeed["root.json"], "base64"));
          Object.entries(repoSeed.targets).forEach(([targetName, target2]) => {
            fs_1.default.writeFileSync(path_1.default.join(cachePath, TARGETS_DIR_NAME, targetName), Buffer.from(target2, "base64"));
          });
        }
      }
    }
    function initClient(options) {
      const config = {
        fetchTimeout: options.timeout,
        fetchRetry: options.retry,
        userAgent: `${encodeURIComponent(package_json_1.name)}/${package_json_1.version}`
      };
      return new tuf_js_1.Updater({
        metadataBaseUrl: options.mirrorURL,
        targetBaseUrl: `${options.mirrorURL}/targets`,
        metadataDir: options.cachePath,
        targetDir: path_1.default.join(options.cachePath, TARGETS_DIR_NAME),
        forceCache: options.forceCache,
        config
      });
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/tuf/4.0.2/8e85e8f1e0f4620f5a6f06500cceead261ec7615d4ad6cb394a41828c9ec7e2e/node_modules/@sigstore/tuf/dist/index.js
var require_dist22 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/tuf/4.0.2/8e85e8f1e0f4620f5a6f06500cceead261ec7615d4ad6cb394a41828c9ec7e2e/node_modules/@sigstore/tuf/dist/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.TUFError = exports2.DEFAULT_MIRROR_URL = void 0;
    exports2.getTrustedRoot = getTrustedRoot;
    exports2.initTUF = initTUF;
    var protobuf_specs_1 = require_dist16();
    var appdata_1 = require_appdata();
    var client_1 = require_client4();
    exports2.DEFAULT_MIRROR_URL = "https://tuf-repo-cdn.sigstore.dev";
    var DEFAULT_CACHE_DIR = "sigstore-js";
    var DEFAULT_RETRY = { retries: 2 };
    var DEFAULT_TIMEOUT = 5e3;
    var TRUSTED_ROOT_TARGET = "trusted_root.json";
    async function getTrustedRoot(options = {}) {
      const client = createClient2(options);
      const trustedRoot = await client.getTarget(TRUSTED_ROOT_TARGET);
      return protobuf_specs_1.TrustedRoot.fromJSON(JSON.parse(trustedRoot));
    }
    async function initTUF(options = {}) {
      const client = createClient2(options);
      return client.refresh().then(() => client);
    }
    function createClient2(options) {
      return new client_1.TUFClient({
        cachePath: options.cachePath || (0, appdata_1.appDataPath)(DEFAULT_CACHE_DIR),
        rootPath: options.rootPath,
        mirrorURL: options.mirrorURL || exports2.DEFAULT_MIRROR_URL,
        retry: options.retry ?? DEFAULT_RETRY,
        timeout: options.timeout ?? DEFAULT_TIMEOUT,
        forceCache: options.forceCache ?? false,
        forceInit: options.forceInit ?? options.force ?? false
      });
    }
    var error_1 = require_error10();
    Object.defineProperty(exports2, "TUFError", { enumerable: true, get: function() {
      return error_1.TUFError;
    } });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/bundle/dsse.js
var require_dsse4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/bundle/dsse.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.DSSESignatureContent = void 0;
    var core_1 = require_dist18();
    var DSSESignatureContent = class {
      env;
      constructor(env3) {
        this.env = env3;
      }
      compareDigest(digest) {
        return core_1.crypto.bufferEqual(digest, core_1.crypto.digest("sha256", this.env.payload));
      }
      compareSignature(signature) {
        return core_1.crypto.bufferEqual(signature, this.signature);
      }
      verifySignature(key) {
        return core_1.crypto.verify(this.preAuthEncoding, key, this.signature);
      }
      get signature() {
        return this.env.signatures.length > 0 ? this.env.signatures[0].sig : Buffer.from("");
      }
      // DSSE Pre-Authentication Encoding
      get preAuthEncoding() {
        return core_1.dsse.preAuthEncoding(this.env.payloadType, this.env.payload);
      }
    };
    exports2.DSSESignatureContent = DSSESignatureContent;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/bundle/message.js
var require_message2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/bundle/message.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.MessageSignatureContent = void 0;
    var core_1 = require_dist18();
    var protobuf_specs_1 = require_dist16();
    var HASH_ALGORITHM_MAP = {
      [protobuf_specs_1.HashAlgorithm.HASH_ALGORITHM_UNSPECIFIED]: "sha256",
      [protobuf_specs_1.HashAlgorithm.SHA2_256]: "sha256",
      [protobuf_specs_1.HashAlgorithm.SHA2_384]: "sha384",
      [protobuf_specs_1.HashAlgorithm.SHA2_512]: "sha512",
      [protobuf_specs_1.HashAlgorithm.SHA3_256]: "sha3-256",
      [protobuf_specs_1.HashAlgorithm.SHA3_384]: "sha3-384"
    };
    var MessageSignatureContent = class {
      signature;
      messageDigest;
      artifact;
      hashAlgorithm;
      constructor(messageSignature, artifact) {
        this.signature = messageSignature.signature;
        this.messageDigest = messageSignature.messageDigest.digest;
        this.artifact = artifact;
        this.hashAlgorithm = HASH_ALGORITHM_MAP[messageSignature.messageDigest.algorithm] ?? /* istanbul ignore next */
        "sha256";
      }
      compareSignature(signature) {
        return core_1.crypto.bufferEqual(signature, this.signature);
      }
      compareDigest(digest) {
        return core_1.crypto.bufferEqual(digest, this.messageDigest);
      }
      verifySignature(key) {
        return core_1.crypto.verify(this.artifact, key, this.signature, this.hashAlgorithm);
      }
    };
    exports2.MessageSignatureContent = MessageSignatureContent;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/bundle/index.js
var require_bundle3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/bundle/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.toSignedEntity = toSignedEntity;
    exports2.signatureContent = signatureContent;
    var core_1 = require_dist18();
    var dsse_1 = require_dsse4();
    var message_1 = require_message2();
    function toSignedEntity(bundle, artifact) {
      const { tlogEntries, timestampVerificationData } = bundle.verificationMaterial;
      const timestamps = [];
      for (const entry of tlogEntries) {
        if (entry.integratedTime && entry.integratedTime !== "0") {
          timestamps.push({
            $case: "transparency-log",
            tlogEntry: entry
          });
        }
      }
      for (const ts of timestampVerificationData?.rfc3161Timestamps ?? []) {
        timestamps.push({
          $case: "timestamp-authority",
          timestamp: core_1.RFC3161Timestamp.parse(Buffer.from(ts.signedTimestamp))
        });
      }
      return {
        signature: signatureContent(bundle, artifact),
        key: key(bundle),
        tlogEntries,
        timestamps
      };
    }
    function signatureContent(bundle, artifact) {
      switch (bundle.content.$case) {
        case "dsseEnvelope":
          return new dsse_1.DSSESignatureContent(bundle.content.dsseEnvelope);
        case "messageSignature":
          return new message_1.MessageSignatureContent(bundle.content.messageSignature, artifact);
      }
    }
    function key(bundle) {
      switch (bundle.verificationMaterial.content.$case) {
        case "publicKey":
          return {
            $case: "public-key",
            hint: bundle.verificationMaterial.content.publicKey.hint
          };
        case "x509CertificateChain":
          return {
            $case: "certificate",
            certificate: core_1.X509Certificate.parse(Buffer.from(bundle.verificationMaterial.content.x509CertificateChain.certificates[0].rawBytes))
          };
        case "certificate":
          return {
            $case: "certificate",
            certificate: core_1.X509Certificate.parse(Buffer.from(bundle.verificationMaterial.content.certificate.rawBytes))
          };
      }
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/error.js
var require_error11 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/error.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.PolicyError = exports2.VerificationError = void 0;
    var BaseError = class extends Error {
      code;
      cause;
      /* eslint-disable-line @typescript-eslint/no-explicit-any */
      constructor({ code, message, cause }) {
        super(message);
        this.code = code;
        this.cause = cause;
        this.name = this.constructor.name;
      }
    };
    var VerificationError = class extends BaseError {
    };
    exports2.VerificationError = VerificationError;
    var PolicyError = class extends BaseError {
    };
    exports2.PolicyError = PolicyError;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/trust/filter.js
var require_filter2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/trust/filter.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.filterCertAuthorities = filterCertAuthorities;
    exports2.filterTLogAuthorities = filterTLogAuthorities;
    function filterCertAuthorities(certAuthorities, timestamp2) {
      return certAuthorities.filter((ca) => {
        return ca.validFor.start <= timestamp2 && ca.validFor.end >= timestamp2;
      });
    }
    function filterTLogAuthorities(tlogAuthorities, criteria) {
      return tlogAuthorities.filter((tlog) => {
        if (criteria.logID && !tlog.logID.equals(criteria.logID)) {
          return false;
        }
        return tlog.validFor.start <= criteria.targetDate && criteria.targetDate <= tlog.validFor.end;
      });
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/trust/index.js
var require_trust = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/trust/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.filterTLogAuthorities = exports2.filterCertAuthorities = void 0;
    exports2.toTrustMaterial = toTrustMaterial;
    var core_1 = require_dist18();
    var protobuf_specs_1 = require_dist16();
    var error_1 = require_error11();
    var BEGINNING_OF_TIME = /* @__PURE__ */ new Date(0);
    var END_OF_TIME = /* @__PURE__ */ new Date(864e13);
    var filter_1 = require_filter2();
    Object.defineProperty(exports2, "filterCertAuthorities", { enumerable: true, get: function() {
      return filter_1.filterCertAuthorities;
    } });
    Object.defineProperty(exports2, "filterTLogAuthorities", { enumerable: true, get: function() {
      return filter_1.filterTLogAuthorities;
    } });
    function toTrustMaterial(root, keys4) {
      const keyFinder = typeof keys4 === "function" ? keys4 : keyLocator(keys4);
      return {
        certificateAuthorities: root.certificateAuthorities.map(createCertAuthority),
        timestampAuthorities: root.timestampAuthorities.map(createCertAuthority),
        tlogs: root.tlogs.map(createTLogAuthority),
        ctlogs: root.ctlogs.map(createTLogAuthority),
        publicKey: keyFinder
      };
    }
    function createTLogAuthority(tlogInstance) {
      const keyDetails = tlogInstance.publicKey.keyDetails;
      const keyType = keyDetails === protobuf_specs_1.PublicKeyDetails.PKCS1_RSA_PKCS1V5 || keyDetails === protobuf_specs_1.PublicKeyDetails.PKIX_RSA_PKCS1V5 || keyDetails === protobuf_specs_1.PublicKeyDetails.PKIX_RSA_PKCS1V15_2048_SHA256 || keyDetails === protobuf_specs_1.PublicKeyDetails.PKIX_RSA_PKCS1V15_3072_SHA256 || keyDetails === protobuf_specs_1.PublicKeyDetails.PKIX_RSA_PKCS1V15_4096_SHA256 ? "pkcs1" : "spki";
      return {
        baseURL: tlogInstance.baseUrl,
        logID: tlogInstance.checkpointKeyId ? tlogInstance.checkpointKeyId.keyId : tlogInstance.logId.keyId,
        publicKey: core_1.crypto.createPublicKey(tlogInstance.publicKey.rawBytes, keyType),
        validFor: {
          start: tlogInstance.publicKey.validFor?.start || BEGINNING_OF_TIME,
          end: tlogInstance.publicKey.validFor?.end || END_OF_TIME
        }
      };
    }
    function createCertAuthority(ca) {
      return {
        certChain: ca.certChain.certificates.map((cert) => {
          return core_1.X509Certificate.parse(Buffer.from(cert.rawBytes));
        }),
        validFor: {
          start: ca.validFor?.start || BEGINNING_OF_TIME,
          end: ca.validFor?.end || END_OF_TIME
        }
      };
    }
    function keyLocator(keys4) {
      return (hint) => {
        const key = (keys4 || {})[hint];
        if (!key) {
          throw new error_1.VerificationError({
            code: "PUBLIC_KEY_ERROR",
            message: `key not found: ${hint}`
          });
        }
        return {
          publicKey: core_1.crypto.createPublicKey(key.rawBytes),
          validFor: (date) => {
            return (key.validFor?.start || BEGINNING_OF_TIME) <= date && (key.validFor?.end || END_OF_TIME) >= date;
          }
        };
      };
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/key/certificate.js
var require_certificate = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/key/certificate.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.CertificateChainVerifier = void 0;
    exports2.verifyCertificateChain = verifyCertificateChain;
    var error_1 = require_error11();
    var trust_1 = require_trust();
    function verifyCertificateChain(timestamp2, leaf, certificateAuthorities) {
      const cas = (0, trust_1.filterCertAuthorities)(certificateAuthorities, timestamp2);
      let error;
      for (const ca of cas) {
        try {
          const verifier = new CertificateChainVerifier({
            trustedCerts: ca.certChain,
            untrustedCert: leaf,
            timestamp: timestamp2
          });
          return verifier.verify();
        } catch (err) {
          error = err;
        }
      }
      throw new error_1.VerificationError({
        code: "CERTIFICATE_ERROR",
        message: "Failed to verify certificate chain",
        cause: error
      });
    }
    var CertificateChainVerifier = class {
      untrustedCert;
      trustedCerts;
      localCerts;
      timestamp;
      constructor(opts2) {
        this.untrustedCert = opts2.untrustedCert;
        this.trustedCerts = opts2.trustedCerts;
        this.localCerts = dedupeCertificates([
          ...opts2.trustedCerts,
          opts2.untrustedCert
        ]);
        this.timestamp = opts2.timestamp;
      }
      verify() {
        const certificatePath = this.sort();
        this.checkPath(certificatePath);
        const validForDate = certificatePath.every((cert) => cert.validForDate(this.timestamp));
        if (!validForDate) {
          throw new error_1.VerificationError({
            code: "CERTIFICATE_ERROR",
            message: "certificate is not valid or expired at the specified date"
          });
        }
        return certificatePath;
      }
      sort() {
        const leafCert = this.untrustedCert;
        let paths3 = this.buildPaths(leafCert);
        paths3 = paths3.filter((path219) => path219.some((cert) => this.trustedCerts.includes(cert)));
        if (paths3.length === 0) {
          throw new error_1.VerificationError({
            code: "CERTIFICATE_ERROR",
            message: "no trusted certificate path found"
          });
        }
        const path218 = paths3.reduce((prev, curr) => prev.length < curr.length ? prev : curr);
        return [leafCert, ...path218].slice(0, -1);
      }
      // Recursively build all possible paths from the leaf to the root
      buildPaths(certificate) {
        const paths3 = [];
        const issuers = this.findIssuer(certificate);
        if (issuers.length === 0) {
          throw new error_1.VerificationError({
            code: "CERTIFICATE_ERROR",
            message: "no valid certificate path found"
          });
        }
        for (let i2 = 0; i2 < issuers.length; i2++) {
          const issuer = issuers[i2];
          if (issuer.equals(certificate)) {
            paths3.push([certificate]);
            continue;
          }
          const subPaths = this.buildPaths(issuer);
          for (let j2 = 0; j2 < subPaths.length; j2++) {
            paths3.push([issuer, ...subPaths[j2]]);
          }
        }
        return paths3;
      }
      // Return all possible issuers for the given certificate
      findIssuer(certificate) {
        let issuers = [];
        let keyIdentifier;
        if (certificate.subject.equals(certificate.issuer)) {
          if (certificate.verify()) {
            return [certificate];
          }
        }
        if (certificate.extAuthorityKeyID) {
          keyIdentifier = certificate.extAuthorityKeyID.keyIdentifier;
        }
        this.localCerts.forEach((possibleIssuer) => {
          if (keyIdentifier) {
            if (possibleIssuer.extSubjectKeyID) {
              if (possibleIssuer.extSubjectKeyID.keyIdentifier.equals(keyIdentifier)) {
                issuers.push(possibleIssuer);
              }
              return;
            }
          }
          if (possibleIssuer.subject.equals(certificate.issuer)) {
            issuers.push(possibleIssuer);
          }
        });
        issuers = issuers.filter((issuer) => {
          try {
            return certificate.verify(issuer);
          } catch (ex) {
            return false;
          }
        });
        return issuers;
      }
      checkPath(path218) {
        if (path218.length < 1) {
          throw new error_1.VerificationError({
            code: "CERTIFICATE_ERROR",
            message: "certificate chain must contain at least one certificate"
          });
        }
        const validCAs = path218.slice(1).every((cert) => cert.isCA);
        if (!validCAs) {
          throw new error_1.VerificationError({
            code: "CERTIFICATE_ERROR",
            message: "intermediate certificate is not a CA"
          });
        }
        for (let i2 = path218.length - 2; i2 >= 0; i2--) {
          if (!path218[i2].issuer.equals(path218[i2 + 1].subject)) {
            throw new error_1.VerificationError({
              code: "CERTIFICATE_ERROR",
              message: "incorrect certificate name chaining"
            });
          }
        }
        for (let i2 = 0; i2 < path218.length; i2++) {
          const cert = path218[i2];
          if (cert.extBasicConstraints?.isCA) {
            const pathLength = cert.extBasicConstraints.pathLenConstraint;
            if (pathLength !== void 0 && pathLength < i2 - 1) {
              throw new error_1.VerificationError({
                code: "CERTIFICATE_ERROR",
                message: "path length constraint exceeded"
              });
            }
          }
        }
      }
    };
    exports2.CertificateChainVerifier = CertificateChainVerifier;
    function dedupeCertificates(certs) {
      for (let i2 = 0; i2 < certs.length; i2++) {
        for (let j2 = i2 + 1; j2 < certs.length; j2++) {
          if (certs[i2].equals(certs[j2])) {
            certs.splice(j2, 1);
            j2--;
          }
        }
      }
      return certs;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/key/sct.js
var require_sct2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/key/sct.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.verifySCTs = verifySCTs;
    var core_1 = require_dist18();
    var error_1 = require_error11();
    var trust_1 = require_trust();
    function verifySCTs(cert, issuer, ctlogs) {
      let extSCT;
      const clone3 = cert.clone();
      for (let i2 = 0; i2 < clone3.extensions.length; i2++) {
        const ext = clone3.extensions[i2];
        if (ext.subs[0].toOID() === core_1.EXTENSION_OID_SCT) {
          extSCT = new core_1.X509SCTExtension(ext);
          clone3.extensions.splice(i2, 1);
          break;
        }
      }
      if (!extSCT) {
        return [];
      }
      if (extSCT.signedCertificateTimestamps.length === 0) {
        return [];
      }
      const preCert = new core_1.ByteStream();
      const issuerId = core_1.crypto.digest("sha256", issuer.publicKey);
      preCert.appendView(issuerId);
      const tbs = clone3.tbsCertificate.toDER();
      preCert.appendUint24(tbs.length);
      preCert.appendView(tbs);
      return extSCT.signedCertificateTimestamps.map((sct) => {
        const validCTLogs = (0, trust_1.filterTLogAuthorities)(ctlogs, {
          logID: sct.logID,
          targetDate: sct.datetime
        });
        const verified = validCTLogs.some((log3) => sct.verify(preCert.buffer, log3.publicKey));
        if (!verified) {
          throw new error_1.VerificationError({
            code: "CERTIFICATE_ERROR",
            message: "SCT verification failed"
          });
        }
        return sct.logID;
      });
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/key/index.js
var require_key4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/key/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.verifyPublicKey = verifyPublicKey;
    exports2.verifyCertificate = verifyCertificate;
    var core_1 = require_dist18();
    var error_1 = require_error11();
    var certificate_1 = require_certificate();
    var sct_1 = require_sct2();
    var OID_FULCIO_ISSUER_V1 = "1.3.6.1.4.1.57264.1.1";
    var OID_FULCIO_ISSUER_V2 = "1.3.6.1.4.1.57264.1.8";
    function verifyPublicKey(hint, timestamps, trustMaterial) {
      const key = trustMaterial.publicKey(hint);
      timestamps.forEach((timestamp2) => {
        if (!key.validFor(timestamp2)) {
          throw new error_1.VerificationError({
            code: "PUBLIC_KEY_ERROR",
            message: `Public key is not valid for timestamp: ${timestamp2.toISOString()}`
          });
        }
      });
      return { key: key.publicKey };
    }
    function verifyCertificate(leaf, timestamps, trustMaterial) {
      let path218 = [];
      timestamps.forEach((timestamp2) => {
        path218 = (0, certificate_1.verifyCertificateChain)(timestamp2, leaf, trustMaterial.certificateAuthorities);
      });
      return {
        scts: (0, sct_1.verifySCTs)(path218[0], path218[1], trustMaterial.ctlogs),
        signer: getSigner(path218[0])
      };
    }
    function getSigner(cert) {
      let issuer;
      const issuerExtension = cert.extension(OID_FULCIO_ISSUER_V2);
      if (issuerExtension) {
        issuer = issuerExtension.valueObj.subs?.[0]?.value.toString("ascii");
      } else {
        issuer = cert.extension(OID_FULCIO_ISSUER_V1)?.value.toString("ascii");
      }
      const oids = cert.extensions.map((ext) => {
        const oid = ext.subs[0].toOID();
        return {
          oid: { id: oid.split(".").map(Number) },
          value: ext.subs[ext.subs.length - 1].value
        };
      });
      const identity5 = {
        extensions: { issuer },
        subjectAlternativeName: cert.subjectAltName,
        oids
      };
      return {
        key: core_1.crypto.createPublicKey(cert.publicKey),
        identity: identity5
      };
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/policy.js
var require_policy2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/policy.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.verifySubjectAlternativeName = verifySubjectAlternativeName;
    exports2.verifyExtensions = verifyExtensions;
    exports2.verifyOIDs = verifyOIDs;
    var error_1 = require_error11();
    function verifySubjectAlternativeName(policyIdentity, signerIdentity) {
      if (signerIdentity === void 0 || !signerIdentity.match(policyIdentity)) {
        throw new error_1.PolicyError({
          code: "UNTRUSTED_SIGNER_ERROR",
          message: `certificate identity error - expected ${policyIdentity}, got ${signerIdentity}`
        });
      }
    }
    function verifyExtensions(policyExtensions, signerExtensions = {}) {
      let key;
      for (key in policyExtensions) {
        if (signerExtensions[key] !== policyExtensions[key]) {
          throw new error_1.PolicyError({
            code: "UNTRUSTED_SIGNER_ERROR",
            message: `invalid certificate extension - expected ${key}=${policyExtensions[key]}, got ${key}=${signerExtensions[key]}`
          });
        }
      }
    }
    function verifyOIDs(policyOIDs, signerOIDs = []) {
      for (const policyOID of policyOIDs) {
        const match = signerOIDs.find((signerOID) => oidEquals(policyOID.oid?.id, signerOID.oid?.id) && policyOID.value.equals(signerOID.value));
        if (!match) {
          const oid = policyOID.oid?.id.join(".") ?? "<unknown>";
          throw new error_1.PolicyError({
            code: "UNTRUSTED_SIGNER_ERROR",
            message: `invalid certificate extension - missing OID ${oid}`
          });
        }
      }
    }
    function oidEquals(a2, b) {
      if (a2 === void 0 || b === void 0) {
        return false;
      }
      return a2.length === b.length && a2.every((v, i2) => v === b[i2]);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/timestamp/tsa.js
var require_tsa3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/timestamp/tsa.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.verifyRFC3161Timestamp = verifyRFC3161Timestamp;
    var core_1 = require_dist18();
    var error_1 = require_error11();
    var certificate_1 = require_certificate();
    var trust_1 = require_trust();
    function verifyRFC3161Timestamp(timestamp2, data, timestampAuthorities) {
      const signingTime = timestamp2.signingTime;
      timestampAuthorities = (0, trust_1.filterCertAuthorities)(timestampAuthorities, signingTime);
      timestampAuthorities = filterCAsBySerialAndIssuer(timestampAuthorities, {
        serialNumber: timestamp2.signerSerialNumber,
        issuer: timestamp2.signerIssuer
      });
      const verified = timestampAuthorities.some((ca) => {
        try {
          verifyTimestampForCA(timestamp2, data, ca);
          return true;
        } catch (e) {
          return false;
        }
      });
      if (!verified) {
        throw new error_1.VerificationError({
          code: "TIMESTAMP_ERROR",
          message: "timestamp could not be verified"
        });
      }
    }
    function verifyTimestampForCA(timestamp2, data, ca) {
      const [leaf, ...cas] = ca.certChain;
      const signingKey = core_1.crypto.createPublicKey(leaf.publicKey);
      const signingTime = timestamp2.signingTime;
      try {
        new certificate_1.CertificateChainVerifier({
          untrustedCert: leaf,
          trustedCerts: cas,
          timestamp: signingTime
        }).verify();
      } catch (e) {
        throw new error_1.VerificationError({
          code: "TIMESTAMP_ERROR",
          message: "invalid certificate chain"
        });
      }
      timestamp2.verify(data, signingKey);
    }
    function filterCAsBySerialAndIssuer(timestampAuthorities, criteria) {
      return timestampAuthorities.filter((ca) => ca.certChain.length > 0 && core_1.crypto.bufferEqual(ca.certChain[0].serialNumber, criteria.serialNumber) && core_1.crypto.bufferEqual(ca.certChain[0].issuer, criteria.issuer));
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/timestamp/index.js
var require_timestamp6 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/timestamp/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.getTSATimestamp = getTSATimestamp;
    exports2.getTLogTimestamp = getTLogTimestamp;
    var tsa_1 = require_tsa3();
    function getTSATimestamp(timestamp2, data, timestampAuthorities) {
      (0, tsa_1.verifyRFC3161Timestamp)(timestamp2, data, timestampAuthorities);
      return {
        type: "timestamp-authority",
        logID: timestamp2.signerSerialNumber,
        timestamp: timestamp2.signingTime
      };
    }
    function getTLogTimestamp(entry) {
      if (!entry.inclusionPromise) {
        return void 0;
      }
      return {
        type: "transparency-log",
        logID: entry.logId.keyId,
        timestamp: new Date(Number(entry.integratedTime) * 1e3)
      };
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/tlog/dsse.js
var require_dsse5 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/tlog/dsse.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.DSSE_API_VERSION_V1 = void 0;
    exports2.verifyDSSETLogBody = verifyDSSETLogBody;
    exports2.verifyDSSETLogBodyV2 = verifyDSSETLogBodyV2;
    var error_1 = require_error11();
    exports2.DSSE_API_VERSION_V1 = "0.0.1";
    function verifyDSSETLogBody(tlogEntry, content) {
      switch (tlogEntry.apiVersion) {
        case exports2.DSSE_API_VERSION_V1:
          return verifyDSSE001TLogBody(tlogEntry, content);
        default:
          throw new error_1.VerificationError({
            code: "TLOG_BODY_ERROR",
            message: `unsupported dsse version: ${tlogEntry.apiVersion}`
          });
      }
    }
    function verifyDSSETLogBodyV2(tlogEntry, content) {
      const spec = tlogEntry.spec?.spec;
      if (!spec) {
        throw new error_1.VerificationError({
          code: "TLOG_BODY_ERROR",
          message: `missing dsse spec`
        });
      }
      switch (spec.$case) {
        case "dsseV002":
          return verifyDSSE002TLogBody(spec.dsseV002, content);
        default:
          throw new error_1.VerificationError({
            code: "TLOG_BODY_ERROR",
            message: `unsupported version: ${spec.$case}`
          });
      }
    }
    function verifyDSSE001TLogBody(tlogEntry, content) {
      if (tlogEntry.spec.signatures?.length !== 1) {
        throw new error_1.VerificationError({
          code: "TLOG_BODY_ERROR",
          message: "signature count mismatch"
        });
      }
      const tlogSig = tlogEntry.spec.signatures[0].signature;
      if (!content.compareSignature(Buffer.from(tlogSig, "base64")))
        throw new error_1.VerificationError({
          code: "TLOG_BODY_ERROR",
          message: "tlog entry signature mismatch"
        });
      const tlogHash = tlogEntry.spec.payloadHash?.value || "";
      if (!content.compareDigest(Buffer.from(tlogHash, "hex"))) {
        throw new error_1.VerificationError({
          code: "TLOG_BODY_ERROR",
          message: "DSSE payload hash mismatch"
        });
      }
    }
    function verifyDSSE002TLogBody(spec, content) {
      if (spec.signatures?.length !== 1) {
        throw new error_1.VerificationError({
          code: "TLOG_BODY_ERROR",
          message: "signature count mismatch"
        });
      }
      const tlogSig = spec.signatures[0].content;
      if (!content.compareSignature(tlogSig))
        throw new error_1.VerificationError({
          code: "TLOG_BODY_ERROR",
          message: "tlog entry signature mismatch"
        });
      const tlogHash = spec.payloadHash?.digest || Buffer.from("");
      if (!content.compareDigest(tlogHash)) {
        throw new error_1.VerificationError({
          code: "TLOG_BODY_ERROR",
          message: "DSSE payload hash mismatch"
        });
      }
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/tlog/hashedrekord.js
var require_hashedrekord2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/tlog/hashedrekord.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.HASHEDREKORD_API_VERSION_V1 = void 0;
    exports2.verifyHashedRekordTLogBody = verifyHashedRekordTLogBody;
    exports2.verifyHashedRekordTLogBodyV2 = verifyHashedRekordTLogBodyV2;
    var error_1 = require_error11();
    exports2.HASHEDREKORD_API_VERSION_V1 = "0.0.1";
    function verifyHashedRekordTLogBody(tlogEntry, content) {
      switch (tlogEntry.apiVersion) {
        case exports2.HASHEDREKORD_API_VERSION_V1:
          return verifyHashedrekord001TLogBody(tlogEntry, content);
        default:
          throw new error_1.VerificationError({
            code: "TLOG_BODY_ERROR",
            message: `unsupported hashedrekord version: ${tlogEntry.apiVersion}`
          });
      }
    }
    function verifyHashedRekordTLogBodyV2(tlogEntry, content) {
      const spec = tlogEntry.spec?.spec;
      if (!spec) {
        throw new error_1.VerificationError({
          code: "TLOG_BODY_ERROR",
          message: `missing dsse spec`
        });
      }
      switch (spec.$case) {
        case "hashedRekordV002":
          return verifyHashedrekord002TLogBody(spec.hashedRekordV002, content);
        default:
          throw new error_1.VerificationError({
            code: "TLOG_BODY_ERROR",
            message: `unsupported version: ${spec.$case}`
          });
      }
    }
    function verifyHashedrekord001TLogBody(tlogEntry, content) {
      const tlogSig = tlogEntry.spec.signature.content || "";
      if (!content.compareSignature(Buffer.from(tlogSig, "base64"))) {
        throw new error_1.VerificationError({
          code: "TLOG_BODY_ERROR",
          message: "signature mismatch"
        });
      }
      const tlogDigest = tlogEntry.spec.data.hash?.value || "";
      if (!content.compareDigest(Buffer.from(tlogDigest, "hex"))) {
        throw new error_1.VerificationError({
          code: "TLOG_BODY_ERROR",
          message: "digest mismatch"
        });
      }
    }
    function verifyHashedrekord002TLogBody(spec, content) {
      const tlogSig = spec.signature?.content || Buffer.from("");
      if (!content.compareSignature(tlogSig)) {
        throw new error_1.VerificationError({
          code: "TLOG_BODY_ERROR",
          message: "signature mismatch"
        });
      }
      const tlogHash = spec.data?.digest || Buffer.from("");
      if (!content.compareDigest(tlogHash)) {
        throw new error_1.VerificationError({
          code: "TLOG_BODY_ERROR",
          message: "digest mismatch"
        });
      }
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/tlog/intoto.js
var require_intoto = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/tlog/intoto.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.verifyIntotoTLogBody = verifyIntotoTLogBody;
    var error_1 = require_error11();
    function verifyIntotoTLogBody(tlogEntry, content) {
      switch (tlogEntry.apiVersion) {
        case "0.0.2":
          return verifyIntoto002TLogBody(tlogEntry, content);
        default:
          throw new error_1.VerificationError({
            code: "TLOG_BODY_ERROR",
            message: `unsupported intoto version: ${tlogEntry.apiVersion}`
          });
      }
    }
    function verifyIntoto002TLogBody(tlogEntry, content) {
      if (tlogEntry.spec.content.envelope.signatures?.length !== 1) {
        throw new error_1.VerificationError({
          code: "TLOG_BODY_ERROR",
          message: "signature count mismatch"
        });
      }
      const tlogSig = base64Decode(tlogEntry.spec.content.envelope.signatures[0].sig);
      if (!content.compareSignature(Buffer.from(tlogSig, "base64"))) {
        throw new error_1.VerificationError({
          code: "TLOG_BODY_ERROR",
          message: "tlog entry signature mismatch"
        });
      }
      const tlogHash = tlogEntry.spec.content.payloadHash?.value || "";
      if (!content.compareDigest(Buffer.from(tlogHash, "hex"))) {
        throw new error_1.VerificationError({
          code: "TLOG_BODY_ERROR",
          message: "DSSE payload hash mismatch"
        });
      }
    }
    function base64Decode(str2) {
      return Buffer.from(str2, "base64").toString("utf-8");
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/tlog/checkpoint.js
var require_checkpoint = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/tlog/checkpoint.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.LogCheckpoint = void 0;
    exports2.verifyCheckpoint = verifyCheckpoint;
    var core_1 = require_dist18();
    var error_1 = require_error11();
    var CHECKPOINT_SEPARATOR = "\n\n";
    var SIGNATURE_REGEX = /\u2014 (\S+) (\S+)\n/g;
    function verifyCheckpoint(entry, tlogs) {
      const inclusionProof = entry.inclusionProof;
      const signedNote = SignedNote.fromString(inclusionProof.checkpoint.envelope);
      const checkpoint = LogCheckpoint.fromString(signedNote.note);
      if (!verifySignedNote(signedNote, tlogs)) {
        throw new error_1.VerificationError({
          code: "TLOG_INCLUSION_PROOF_ERROR",
          message: "invalid checkpoint signature"
        });
      }
      return checkpoint;
    }
    function verifySignedNote(signedNote, tlogs) {
      const data = Buffer.from(signedNote.note, "utf-8");
      return signedNote.signatures.some((signature) => {
        const tlog = tlogs.find(
          (tlog2) => core_1.crypto.bufferEqual(tlog2.logID.subarray(0, 4), signature.keyHint) && tlog2.baseURL.match(signature.name)
          // Match the name to the base URL of the tlog
        );
        if (!tlog) {
          return false;
        }
        return core_1.crypto.verify(data, tlog.publicKey, signature.signature);
      });
    }
    var SignedNote = class _SignedNote {
      note;
      signatures;
      constructor(note, signatures) {
        this.note = note;
        this.signatures = signatures;
      }
      // Deserialize a SignedNote from a string
      static fromString(envelope) {
        if (!envelope.includes(CHECKPOINT_SEPARATOR)) {
          throw new error_1.VerificationError({
            code: "TLOG_INCLUSION_PROOF_ERROR",
            message: "missing checkpoint separator"
          });
        }
        const split2 = envelope.indexOf(CHECKPOINT_SEPARATOR);
        const header = envelope.slice(0, split2 + 1);
        const data = envelope.slice(split2 + CHECKPOINT_SEPARATOR.length);
        const matches2 = data.matchAll(SIGNATURE_REGEX);
        const signatures = Array.from(matches2, (match) => {
          const [, name, signature] = match;
          const sigBytes = Buffer.from(signature, "base64");
          if (sigBytes.length < 5) {
            throw new error_1.VerificationError({
              code: "TLOG_INCLUSION_PROOF_ERROR",
              message: "malformed checkpoint signature"
            });
          }
          return {
            name,
            keyHint: sigBytes.subarray(0, 4),
            signature: sigBytes.subarray(4)
          };
        });
        if (signatures.length === 0) {
          throw new error_1.VerificationError({
            code: "TLOG_INCLUSION_PROOF_ERROR",
            message: "no signatures found in checkpoint"
          });
        }
        return new _SignedNote(header, signatures);
      }
    };
    var LogCheckpoint = class _LogCheckpoint {
      origin;
      logSize;
      logHash;
      rest;
      constructor(origin, logSize, logHash, rest) {
        this.origin = origin;
        this.logSize = logSize;
        this.logHash = logHash;
        this.rest = rest;
      }
      static fromString(note) {
        const lines = note.trimEnd().split("\n");
        if (lines.length < 3) {
          throw new error_1.VerificationError({
            code: "TLOG_INCLUSION_PROOF_ERROR",
            message: "too few lines in checkpoint header"
          });
        }
        const origin = lines[0];
        const logSize = BigInt(lines[1]);
        const rootHash = Buffer.from(lines[2], "base64");
        const rest = lines.slice(3);
        return new _LogCheckpoint(origin, logSize, rootHash, rest);
      }
    };
    exports2.LogCheckpoint = LogCheckpoint;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/tlog/merkle.js
var require_merkle = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/tlog/merkle.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.verifyMerkleInclusion = verifyMerkleInclusion;
    var core_1 = require_dist18();
    var error_1 = require_error11();
    var RFC6962_LEAF_HASH_PREFIX = Buffer.from([0]);
    var RFC6962_NODE_HASH_PREFIX = Buffer.from([1]);
    function verifyMerkleInclusion(entry, checkpoint) {
      const inclusionProof = entry.inclusionProof;
      const logIndex = BigInt(inclusionProof.logIndex);
      const treeSize = BigInt(checkpoint.logSize);
      if (logIndex < 0n || logIndex >= treeSize) {
        throw new error_1.VerificationError({
          code: "TLOG_INCLUSION_PROOF_ERROR",
          message: `invalid index: ${logIndex}`
        });
      }
      const { inner, border } = decompInclProof(logIndex, treeSize);
      if (inclusionProof.hashes.length !== inner + border) {
        throw new error_1.VerificationError({
          code: "TLOG_INCLUSION_PROOF_ERROR",
          message: "invalid hash count"
        });
      }
      const innerHashes = inclusionProof.hashes.slice(0, inner);
      const borderHashes = inclusionProof.hashes.slice(inner);
      const leafHash = hashLeaf(entry.canonicalizedBody);
      const calculatedHash = chainBorderRight(chainInner(leafHash, innerHashes, logIndex), borderHashes);
      if (!core_1.crypto.bufferEqual(calculatedHash, checkpoint.logHash)) {
        throw new error_1.VerificationError({
          code: "TLOG_INCLUSION_PROOF_ERROR",
          message: "calculated root hash does not match inclusion proof"
        });
      }
    }
    function decompInclProof(index, size) {
      const inner = innerProofSize(index, size);
      const border = onesCount(index >> BigInt(inner));
      return { inner, border };
    }
    function chainInner(seed, hashes, index) {
      return hashes.reduce((acc, h2, i2) => {
        if (index >> BigInt(i2) & BigInt(1)) {
          return hashChildren(h2, acc);
        } else {
          return hashChildren(acc, h2);
        }
      }, seed);
    }
    function chainBorderRight(seed, hashes) {
      return hashes.reduce((acc, h2) => hashChildren(h2, acc), seed);
    }
    function innerProofSize(index, size) {
      return bitLength(index ^ size - BigInt(1));
    }
    function onesCount(num) {
      return num.toString(2).split("1").length - 1;
    }
    function bitLength(n2) {
      if (n2 === 0n) {
        return 0;
      }
      return n2.toString(2).length;
    }
    function hashChildren(left, right) {
      return core_1.crypto.digest("sha256", RFC6962_NODE_HASH_PREFIX, left, right);
    }
    function hashLeaf(leaf) {
      return core_1.crypto.digest("sha256", RFC6962_LEAF_HASH_PREFIX, leaf);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/tlog/set.js
var require_set4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/tlog/set.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.verifyTLogSET = verifyTLogSET;
    var core_1 = require_dist18();
    var error_1 = require_error11();
    var trust_1 = require_trust();
    function verifyTLogSET(entry, tlogs) {
      const validTLogs = (0, trust_1.filterTLogAuthorities)(tlogs, {
        logID: entry.logId.keyId,
        targetDate: new Date(Number(entry.integratedTime) * 1e3)
      });
      const verified = validTLogs.some((tlog) => {
        const payload = toVerificationPayload(entry);
        const data = Buffer.from(core_1.json.canonicalize(payload), "utf8");
        const signature = entry.inclusionPromise.signedEntryTimestamp;
        return core_1.crypto.verify(data, tlog.publicKey, signature);
      });
      if (!verified) {
        throw new error_1.VerificationError({
          code: "TLOG_INCLUSION_PROMISE_ERROR",
          message: "inclusion promise could not be verified"
        });
      }
    }
    function toVerificationPayload(entry) {
      const { integratedTime, logIndex, logId, canonicalizedBody } = entry;
      return {
        body: canonicalizedBody.toString("base64"),
        integratedTime: Number(integratedTime),
        logIndex: Number(logIndex),
        logID: logId.keyId.toString("hex")
      };
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/tlog/index.js
var require_tlog2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/tlog/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.verifyTLogBody = verifyTLogBody;
    exports2.verifyTLogInclusion = verifyTLogInclusion;
    var v2_1 = require_v2();
    var error_1 = require_error11();
    var dsse_1 = require_dsse5();
    var hashedrekord_1 = require_hashedrekord2();
    var intoto_1 = require_intoto();
    var checkpoint_1 = require_checkpoint();
    var merkle_1 = require_merkle();
    var set_1 = require_set4();
    function verifyTLogBody(entry, sigContent) {
      const { kind, version: version2 } = entry.kindVersion;
      const body = JSON.parse(entry.canonicalizedBody.toString("utf8"));
      if (kind !== body.kind || version2 !== body.apiVersion) {
        throw new error_1.VerificationError({
          code: "TLOG_BODY_ERROR",
          message: `kind/version mismatch - expected: ${kind}/${version2}, received: ${body.kind}/${body.apiVersion}`
        });
      }
      switch (kind) {
        case "dsse":
          if (version2 == dsse_1.DSSE_API_VERSION_V1) {
            return (0, dsse_1.verifyDSSETLogBody)(body, sigContent);
          } else {
            const entryRekorV2 = v2_1.Entry.fromJSON(body);
            return (0, dsse_1.verifyDSSETLogBodyV2)(entryRekorV2, sigContent);
          }
        case "intoto":
          return (0, intoto_1.verifyIntotoTLogBody)(body, sigContent);
        case "hashedrekord":
          if (version2 == hashedrekord_1.HASHEDREKORD_API_VERSION_V1) {
            return (0, hashedrekord_1.verifyHashedRekordTLogBody)(body, sigContent);
          } else {
            const entryRekorV2 = v2_1.Entry.fromJSON(body);
            return (0, hashedrekord_1.verifyHashedRekordTLogBodyV2)(entryRekorV2, sigContent);
          }
        /* istanbul ignore next */
        default:
          throw new error_1.VerificationError({
            code: "TLOG_BODY_ERROR",
            message: `unsupported kind: ${kind}`
          });
      }
    }
    function verifyTLogInclusion(entry, tlogAuthorities) {
      let inclusionVerified = false;
      if (isTLogEntryWithInclusionPromise(entry)) {
        (0, set_1.verifyTLogSET)(entry, tlogAuthorities);
        inclusionVerified = true;
      }
      if (isTLogEntryWithInclusionProof(entry)) {
        const checkpoint = (0, checkpoint_1.verifyCheckpoint)(entry, tlogAuthorities);
        (0, merkle_1.verifyMerkleInclusion)(entry, checkpoint);
        inclusionVerified = true;
      }
      if (!inclusionVerified) {
        throw new error_1.VerificationError({
          code: "TLOG_MISSING_INCLUSION_ERROR",
          message: "inclusion could not be verified"
        });
      }
      return;
    }
    function isTLogEntryWithInclusionPromise(entry) {
      return entry.inclusionPromise !== void 0;
    }
    function isTLogEntryWithInclusionProof(entry) {
      return entry.inclusionProof !== void 0;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/verifier.js
var require_verifier2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/verifier.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.Verifier = void 0;
    var util_1 = __require("util");
    var error_1 = require_error11();
    var key_1 = require_key4();
    var policy_1 = require_policy2();
    var timestamp_1 = require_timestamp6();
    var tlog_1 = require_tlog2();
    var Verifier = class {
      trustMaterial;
      options;
      constructor(trustMaterial, options = {}) {
        this.trustMaterial = trustMaterial;
        this.options = {
          ctlogThreshold: options.ctlogThreshold ?? 1,
          tlogThreshold: options.tlogThreshold ?? 1,
          timestampThreshold: options.timestampThreshold ?? options.tsaThreshold ?? 1,
          tsaThreshold: 0
        };
      }
      verify(entity, policy) {
        const timestamps = this.verifyTimestamps(entity);
        const signer = this.verifySigningKey(entity, timestamps);
        this.verifyTLogs(entity);
        this.verifySignature(entity, signer);
        if (policy) {
          this.verifyPolicy(policy, signer.identity || {});
        }
        return signer;
      }
      // Checks that all of the timestamps in the entity are valid and returns them
      verifyTimestamps(entity) {
        const timestamps = [];
        for (const timestamp2 of entity.timestamps) {
          switch (timestamp2.$case) {
            case "timestamp-authority":
              timestamps.push((0, timestamp_1.getTSATimestamp)(timestamp2.timestamp, entity.signature.signature, this.trustMaterial.timestampAuthorities));
              break;
            case "transparency-log": {
              const result2 = (0, timestamp_1.getTLogTimestamp)(timestamp2.tlogEntry);
              if (result2) {
                timestamps.push(result2);
              }
              break;
            }
          }
        }
        if (containsDupes(timestamps)) {
          throw new error_1.VerificationError({
            code: "TIMESTAMP_ERROR",
            message: "duplicate timestamp"
          });
        }
        if (timestamps.length < this.options.timestampThreshold) {
          throw new error_1.VerificationError({
            code: "TIMESTAMP_ERROR",
            message: `expected ${this.options.timestampThreshold} timestamps, got ${timestamps.length}`
          });
        }
        return timestamps.map((t2) => t2.timestamp);
      }
      // Checks that the signing key is valid for all of the the supplied timestamps
      // and returns the signer.
      verifySigningKey({ key }, timestamps) {
        switch (key.$case) {
          case "public-key": {
            return (0, key_1.verifyPublicKey)(key.hint, timestamps, this.trustMaterial);
          }
          case "certificate": {
            const result2 = (0, key_1.verifyCertificate)(key.certificate, timestamps, this.trustMaterial);
            if (containsDupes(result2.scts)) {
              throw new error_1.VerificationError({
                code: "CERTIFICATE_ERROR",
                message: "duplicate SCT"
              });
            }
            if (result2.scts.length < this.options.ctlogThreshold) {
              throw new error_1.VerificationError({
                code: "CERTIFICATE_ERROR",
                message: `expected ${this.options.ctlogThreshold} SCTs, got ${result2.scts.length}`
              });
            }
            return result2.signer;
          }
        }
      }
      // Checks that the tlog entries are valid for the supplied content
      verifyTLogs({ signature: content, tlogEntries }) {
        let tlogCount = 0;
        tlogEntries.forEach((entry) => {
          tlogCount++;
          (0, tlog_1.verifyTLogInclusion)(entry, this.trustMaterial.tlogs);
          (0, tlog_1.verifyTLogBody)(entry, content);
        });
        if (tlogCount < this.options.tlogThreshold) {
          throw new error_1.VerificationError({
            code: "TLOG_ERROR",
            message: `expected ${this.options.tlogThreshold} tlog entries, got ${tlogCount}`
          });
        }
      }
      // Checks that the signature is valid for the supplied content
      verifySignature(entity, signer) {
        if (!entity.signature.verifySignature(signer.key)) {
          throw new error_1.VerificationError({
            code: "SIGNATURE_ERROR",
            message: "signature verification failed"
          });
        }
      }
      verifyPolicy(policy, identity5) {
        if (policy.subjectAlternativeName) {
          (0, policy_1.verifySubjectAlternativeName)(policy.subjectAlternativeName, identity5.subjectAlternativeName);
        }
        if (policy.extensions) {
          (0, policy_1.verifyExtensions)(policy.extensions, identity5.extensions);
        }
        if (policy.oids) {
          (0, policy_1.verifyOIDs)(policy.oids, identity5.oids);
        }
      }
    };
    exports2.Verifier = Verifier;
    function containsDupes(arr) {
      for (let i2 = 0; i2 < arr.length; i2++) {
        for (let j2 = i2 + 1; j2 < arr.length; j2++) {
          if ((0, util_1.isDeepStrictEqual)(arr[i2], arr[j2])) {
            return true;
          }
        }
      }
      return false;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/index.js
var require_dist23 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@sigstore/verify/3.1.1/ce0e275549b73ca68b8bdb9af5dc20789b055afb7e41385b570830c4d28ea188/node_modules/@sigstore/verify/dist/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.Verifier = exports2.toTrustMaterial = exports2.VerificationError = exports2.PolicyError = exports2.toSignedEntity = void 0;
    var bundle_1 = require_bundle3();
    Object.defineProperty(exports2, "toSignedEntity", { enumerable: true, get: function() {
      return bundle_1.toSignedEntity;
    } });
    var error_1 = require_error11();
    Object.defineProperty(exports2, "PolicyError", { enumerable: true, get: function() {
      return error_1.PolicyError;
    } });
    Object.defineProperty(exports2, "VerificationError", { enumerable: true, get: function() {
      return error_1.VerificationError;
    } });
    var trust_1 = require_trust();
    Object.defineProperty(exports2, "toTrustMaterial", { enumerable: true, get: function() {
      return trust_1.toTrustMaterial;
    } });
    var verifier_1 = require_verifier2();
    Object.defineProperty(exports2, "Verifier", { enumerable: true, get: function() {
      return verifier_1.Verifier;
    } });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/sigstore/4.1.1/4812a0796abd2ae4cc6755cb37afd56c354137dc99b7c12d109c5e66dfc951e6/node_modules/sigstore/dist/config.js
var require_config3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/sigstore/4.1.1/4812a0796abd2ae4cc6755cb37afd56c354137dc99b7c12d109c5e66dfc951e6/node_modules/sigstore/dist/config.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.DEFAULT_TIMEOUT = exports2.DEFAULT_RETRY = void 0;
    exports2.createBundleBuilder = createBundleBuilder;
    exports2.createKeyFinder = createKeyFinder;
    exports2.createVerificationPolicy = createVerificationPolicy;
    var core_1 = require_dist18();
    var sign_1 = require_dist19();
    var verify_1 = require_dist23();
    exports2.DEFAULT_RETRY = { retries: 2 };
    exports2.DEFAULT_TIMEOUT = 5e3;
    function createBundleBuilder(bundleType, options) {
      const bundlerOptions = {
        signer: initSigner(options),
        witnesses: initWitnesses(options)
      };
      switch (bundleType) {
        case "messageSignature":
          return new sign_1.MessageSignatureBundleBuilder(bundlerOptions);
        case "dsseEnvelope":
          return new sign_1.DSSEBundleBuilder({
            ...bundlerOptions,
            certificateChain: options.legacyCompatibility
          });
      }
    }
    function createKeyFinder(keySelector) {
      return (hint) => {
        const key = keySelector(hint);
        if (!key) {
          throw new verify_1.VerificationError({
            code: "PUBLIC_KEY_ERROR",
            message: `key not found: ${hint}`
          });
        }
        return {
          publicKey: core_1.crypto.createPublicKey(key),
          validFor: () => true
        };
      };
    }
    function createVerificationPolicy(options) {
      const policy = {};
      const san = options.certificateIdentityEmail || options.certificateIdentityURI;
      if (san) {
        policy.subjectAlternativeName = san;
      }
      if (options.certificateIssuer) {
        policy.extensions = { issuer: options.certificateIssuer };
      }
      if (options.certificateOIDs) {
        policy.oids = Object.entries(options.certificateOIDs).map(([oid, value]) => ({
          oid: { id: oid.split(".").map(Number) },
          value: Buffer.from(value)
        }));
      }
      return policy;
    }
    function initSigner(options) {
      return new sign_1.FulcioSigner({
        fulcioBaseURL: options.fulcioURL,
        identityProvider: options.identityProvider || initIdentityProvider(options),
        retry: options.retry ?? exports2.DEFAULT_RETRY,
        timeout: options.timeout ?? exports2.DEFAULT_TIMEOUT
      });
    }
    function initIdentityProvider(options) {
      const token = options.identityToken;
      if (token) {
        return { getToken: () => Promise.resolve(token) };
      } else {
        return new sign_1.CIContextProvider("sigstore");
      }
    }
    function initWitnesses(options) {
      const witnesses = [];
      if (isRekorEnabled(options)) {
        witnesses.push(new sign_1.RekorWitness({
          rekorBaseURL: options.rekorURL,
          entryType: options.legacyCompatibility ? "intoto" : "dsse",
          fetchOnConflict: false,
          retry: options.retry ?? exports2.DEFAULT_RETRY,
          timeout: options.timeout ?? exports2.DEFAULT_TIMEOUT
        }));
      }
      if (isTSAEnabled(options)) {
        witnesses.push(new sign_1.TSAWitness({
          tsaBaseURL: options.tsaServerURL,
          retry: options.retry ?? exports2.DEFAULT_RETRY,
          timeout: options.timeout ?? exports2.DEFAULT_TIMEOUT
        }));
      }
      return witnesses;
    }
    function isRekorEnabled(options) {
      return options.tlogUpload !== false;
    }
    function isTSAEnabled(options) {
      return options.tsaServerURL !== void 0;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/sigstore/4.1.1/4812a0796abd2ae4cc6755cb37afd56c354137dc99b7c12d109c5e66dfc951e6/node_modules/sigstore/dist/sigstore.js
var require_sigstore = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/sigstore/4.1.1/4812a0796abd2ae4cc6755cb37afd56c354137dc99b7c12d109c5e66dfc951e6/node_modules/sigstore/dist/sigstore.js"(exports2) {
    "use strict";
    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      var desc = Object.getOwnPropertyDescriptor(m, k2);
      if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
        desc = { enumerable: true, get: function() {
          return m[k2];
        } };
      }
      Object.defineProperty(o2, k22, desc);
    }) : (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      o2[k22] = m[k2];
    }));
    var __setModuleDefault2 = exports2 && exports2.__setModuleDefault || (Object.create ? (function(o2, v) {
      Object.defineProperty(o2, "default", { enumerable: true, value: v });
    }) : function(o2, v) {
      o2["default"] = v;
    });
    var __importStar2 = exports2 && exports2.__importStar || /* @__PURE__ */ (function() {
      var ownKeys2 = function(o2) {
        ownKeys2 = Object.getOwnPropertyNames || function(o3) {
          var ar = [];
          for (var k2 in o3) if (Object.prototype.hasOwnProperty.call(o3, k2)) ar[ar.length] = k2;
          return ar;
        };
        return ownKeys2(o2);
      };
      return function(mod) {
        if (mod && mod.__esModule) return mod;
        var result2 = {};
        if (mod != null) {
          for (var k2 = ownKeys2(mod), i2 = 0; i2 < k2.length; i2++) if (k2[i2] !== "default") __createBinding2(result2, mod, k2[i2]);
        }
        __setModuleDefault2(result2, mod);
        return result2;
      };
    })();
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.sign = sign;
    exports2.attest = attest;
    exports2.verify = verify;
    exports2.createVerifier = createVerifier;
    var bundle_1 = require_dist17();
    var tuf = __importStar2(require_dist22());
    var verify_1 = require_dist23();
    var config = __importStar2(require_config3());
    async function sign(payload, options = {}) {
      const bundler = config.createBundleBuilder("messageSignature", options);
      const bundle = await bundler.create({ data: payload });
      return (0, bundle_1.bundleToJSON)(bundle);
    }
    async function attest(payload, payloadType, options = {}) {
      const bundler = config.createBundleBuilder("dsseEnvelope", options);
      const bundle = await bundler.create({ data: payload, type: payloadType });
      return (0, bundle_1.bundleToJSON)(bundle);
    }
    async function verify(bundle, dataOrOptions, options) {
      let data;
      if (Buffer.isBuffer(dataOrOptions)) {
        data = dataOrOptions;
      } else {
        options = dataOrOptions;
      }
      const verifier = await createVerifier(options);
      return verifier.verify(bundle, data);
    }
    async function createVerifier(options = {}) {
      const trustedRoot = await tuf.getTrustedRoot({
        mirrorURL: options.tufMirrorURL,
        rootPath: options.tufRootPath,
        cachePath: options.tufCachePath,
        forceCache: options.tufForceCache,
        retry: options.retry ?? config.DEFAULT_RETRY,
        timeout: options.timeout ?? config.DEFAULT_TIMEOUT
      });
      const keyFinder = options.keySelector ? config.createKeyFinder(options.keySelector) : void 0;
      const trustMaterial = (0, verify_1.toTrustMaterial)(trustedRoot, keyFinder);
      const verifierOptions = {
        ctlogThreshold: options.ctLogThreshold,
        tlogThreshold: options.tlogThreshold
      };
      const verifier = new verify_1.Verifier(trustMaterial, verifierOptions);
      const policy = config.createVerificationPolicy(options);
      return {
        verify: (bundle, payload) => {
          const deserializedBundle = (0, bundle_1.bundleFromJSON)(bundle);
          const signedEntity = (0, verify_1.toSignedEntity)(deserializedBundle, payload);
          return verifier.verify(signedEntity, policy);
        }
      };
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/sigstore/4.1.1/4812a0796abd2ae4cc6755cb37afd56c354137dc99b7c12d109c5e66dfc951e6/node_modules/sigstore/dist/index.js
var require_dist24 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/sigstore/4.1.1/4812a0796abd2ae4cc6755cb37afd56c354137dc99b7c12d109c5e66dfc951e6/node_modules/sigstore/dist/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.verify = exports2.sign = exports2.createVerifier = exports2.attest = exports2.VerificationError = exports2.PolicyError = exports2.TUFError = exports2.InternalError = exports2.DEFAULT_REKOR_URL = exports2.DEFAULT_FULCIO_URL = exports2.ValidationError = void 0;
    var bundle_1 = require_dist17();
    Object.defineProperty(exports2, "ValidationError", { enumerable: true, get: function() {
      return bundle_1.ValidationError;
    } });
    var sign_1 = require_dist19();
    Object.defineProperty(exports2, "DEFAULT_FULCIO_URL", { enumerable: true, get: function() {
      return sign_1.DEFAULT_FULCIO_URL;
    } });
    Object.defineProperty(exports2, "DEFAULT_REKOR_URL", { enumerable: true, get: function() {
      return sign_1.DEFAULT_REKOR_URL;
    } });
    Object.defineProperty(exports2, "InternalError", { enumerable: true, get: function() {
      return sign_1.InternalError;
    } });
    var tuf_1 = require_dist22();
    Object.defineProperty(exports2, "TUFError", { enumerable: true, get: function() {
      return tuf_1.TUFError;
    } });
    var verify_1 = require_dist23();
    Object.defineProperty(exports2, "PolicyError", { enumerable: true, get: function() {
      return verify_1.PolicyError;
    } });
    Object.defineProperty(exports2, "VerificationError", { enumerable: true, get: function() {
      return verify_1.VerificationError;
    } });
    var sigstore_1 = require_sigstore();
    Object.defineProperty(exports2, "attest", { enumerable: true, get: function() {
      return sigstore_1.attest;
    } });
    Object.defineProperty(exports2, "createVerifier", { enumerable: true, get: function() {
      return sigstore_1.createVerifier;
    } });
    Object.defineProperty(exports2, "sign", { enumerable: true, get: function() {
      return sigstore_1.sign;
    } });
    Object.defineProperty(exports2, "verify", { enumerable: true, get: function() {
      return sigstore_1.verify;
    } });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/libnpmpublish/11.2.0/f904d6e821568f6b4fb0501c74220b66908d51202bc801706bcc1d5dfd5ad221/node_modules/libnpmpublish/lib/provenance.js
var require_provenance = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/libnpmpublish/11.2.0/f904d6e821568f6b4fb0501c74220b66908d51202bc801706bcc1d5dfd5ad221/node_modules/libnpmpublish/lib/provenance.js"(exports2, module2) {
    var sigstore = require_dist24();
    var { readFile: readFile4 } = __require("node:fs/promises");
    var ci = require_ci_info();
    var { env: env3 } = process;
    var INTOTO_PAYLOAD_TYPE = "application/vnd.in-toto+json";
    var INTOTO_STATEMENT_V01_TYPE = "https://in-toto.io/Statement/v0.1";
    var INTOTO_STATEMENT_V1_TYPE = "https://in-toto.io/Statement/v1";
    var SLSA_PREDICATE_V02_TYPE = "https://slsa.dev/provenance/v0.2";
    var SLSA_PREDICATE_V1_TYPE = "https://slsa.dev/provenance/v1";
    var GITHUB_BUILDER_ID_PREFIX = "https://github.com/actions/runner";
    var GITHUB_BUILD_TYPE = "https://slsa-framework.github.io/github-actions-buildtypes/workflow/v1";
    var GITLAB_BUILD_TYPE_PREFIX = "https://github.com/npm/cli/gitlab";
    var GITLAB_BUILD_TYPE_VERSION = "v0alpha1";
    var generateProvenance = async (subject, opts2) => {
      let payload;
      if (ci.GITHUB_ACTIONS) {
        const relativeRef = (env3.GITHUB_WORKFLOW_REF || "").replace(env3.GITHUB_REPOSITORY + "/", "");
        const delimiterIndex = relativeRef.indexOf("@");
        const workflowPath = relativeRef.slice(0, delimiterIndex);
        const workflowRef = relativeRef.slice(delimiterIndex + 1);
        payload = {
          _type: INTOTO_STATEMENT_V1_TYPE,
          subject,
          predicateType: SLSA_PREDICATE_V1_TYPE,
          predicate: {
            buildDefinition: {
              buildType: GITHUB_BUILD_TYPE,
              externalParameters: {
                workflow: {
                  ref: workflowRef,
                  repository: `${env3.GITHUB_SERVER_URL}/${env3.GITHUB_REPOSITORY}`,
                  path: workflowPath
                }
              },
              internalParameters: {
                github: {
                  event_name: env3.GITHUB_EVENT_NAME,
                  repository_id: env3.GITHUB_REPOSITORY_ID,
                  repository_owner_id: env3.GITHUB_REPOSITORY_OWNER_ID
                }
              },
              resolvedDependencies: [
                {
                  uri: `git+${env3.GITHUB_SERVER_URL}/${env3.GITHUB_REPOSITORY}@${env3.GITHUB_REF}`,
                  digest: {
                    gitCommit: env3.GITHUB_SHA
                  }
                }
              ]
            },
            runDetails: {
              builder: { id: `${GITHUB_BUILDER_ID_PREFIX}/${env3.RUNNER_ENVIRONMENT}` },
              metadata: {
                /* eslint-disable-next-line max-len */
                invocationId: `${env3.GITHUB_SERVER_URL}/${env3.GITHUB_REPOSITORY}/actions/runs/${env3.GITHUB_RUN_ID}/attempts/${env3.GITHUB_RUN_ATTEMPT}`
              }
            }
          }
        };
      }
      if (ci.GITLAB) {
        payload = {
          _type: INTOTO_STATEMENT_V01_TYPE,
          subject,
          predicateType: SLSA_PREDICATE_V02_TYPE,
          predicate: {
            buildType: `${GITLAB_BUILD_TYPE_PREFIX}/${GITLAB_BUILD_TYPE_VERSION}`,
            builder: { id: `${env3.CI_PROJECT_URL}/-/runners/${env3.CI_RUNNER_ID}` },
            invocation: {
              configSource: {
                uri: `git+${env3.CI_PROJECT_URL}`,
                digest: {
                  sha1: env3.CI_COMMIT_SHA
                },
                entryPoint: env3.CI_JOB_NAME
              },
              parameters: {
                CI: env3.CI,
                CI_API_GRAPHQL_URL: env3.CI_API_GRAPHQL_URL,
                CI_API_V4_URL: env3.CI_API_V4_URL,
                CI_BUILD_BEFORE_SHA: env3.CI_BUILD_BEFORE_SHA,
                CI_BUILD_ID: env3.CI_BUILD_ID,
                CI_BUILD_NAME: env3.CI_BUILD_NAME,
                CI_BUILD_REF: env3.CI_BUILD_REF,
                CI_BUILD_REF_NAME: env3.CI_BUILD_REF_NAME,
                CI_BUILD_REF_SLUG: env3.CI_BUILD_REF_SLUG,
                CI_BUILD_STAGE: env3.CI_BUILD_STAGE,
                CI_COMMIT_BEFORE_SHA: env3.CI_COMMIT_BEFORE_SHA,
                CI_COMMIT_BRANCH: env3.CI_COMMIT_BRANCH,
                CI_COMMIT_REF_NAME: env3.CI_COMMIT_REF_NAME,
                CI_COMMIT_REF_PROTECTED: env3.CI_COMMIT_REF_PROTECTED,
                CI_COMMIT_REF_SLUG: env3.CI_COMMIT_REF_SLUG,
                CI_COMMIT_SHA: env3.CI_COMMIT_SHA,
                CI_COMMIT_SHORT_SHA: env3.CI_COMMIT_SHORT_SHA,
                CI_COMMIT_TIMESTAMP: env3.CI_COMMIT_TIMESTAMP,
                CI_COMMIT_TITLE: env3.CI_COMMIT_TITLE,
                CI_CONFIG_PATH: env3.CI_CONFIG_PATH,
                CI_DEFAULT_BRANCH: env3.CI_DEFAULT_BRANCH,
                CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX: env3.CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX,
                CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX: env3.CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX,
                CI_DEPENDENCY_PROXY_SERVER: env3.CI_DEPENDENCY_PROXY_SERVER,
                CI_DEPENDENCY_PROXY_USER: env3.CI_DEPENDENCY_PROXY_USER,
                CI_JOB_ID: env3.CI_JOB_ID,
                CI_JOB_NAME: env3.CI_JOB_NAME,
                CI_JOB_NAME_SLUG: env3.CI_JOB_NAME_SLUG,
                CI_JOB_STAGE: env3.CI_JOB_STAGE,
                CI_JOB_STARTED_AT: env3.CI_JOB_STARTED_AT,
                CI_JOB_URL: env3.CI_JOB_URL,
                CI_NODE_TOTAL: env3.CI_NODE_TOTAL,
                CI_PAGES_DOMAIN: env3.CI_PAGES_DOMAIN,
                CI_PAGES_URL: env3.CI_PAGES_URL,
                CI_PIPELINE_CREATED_AT: env3.CI_PIPELINE_CREATED_AT,
                CI_PIPELINE_ID: env3.CI_PIPELINE_ID,
                CI_PIPELINE_IID: env3.CI_PIPELINE_IID,
                CI_PIPELINE_SOURCE: env3.CI_PIPELINE_SOURCE,
                CI_PIPELINE_URL: env3.CI_PIPELINE_URL,
                CI_PROJECT_CLASSIFICATION_LABEL: env3.CI_PROJECT_CLASSIFICATION_LABEL,
                CI_PROJECT_DESCRIPTION: env3.CI_PROJECT_DESCRIPTION,
                CI_PROJECT_ID: env3.CI_PROJECT_ID,
                CI_PROJECT_NAME: env3.CI_PROJECT_NAME,
                CI_PROJECT_NAMESPACE: env3.CI_PROJECT_NAMESPACE,
                CI_PROJECT_NAMESPACE_ID: env3.CI_PROJECT_NAMESPACE_ID,
                CI_PROJECT_PATH: env3.CI_PROJECT_PATH,
                CI_PROJECT_PATH_SLUG: env3.CI_PROJECT_PATH_SLUG,
                CI_PROJECT_REPOSITORY_LANGUAGES: env3.CI_PROJECT_REPOSITORY_LANGUAGES,
                CI_PROJECT_ROOT_NAMESPACE: env3.CI_PROJECT_ROOT_NAMESPACE,
                CI_PROJECT_TITLE: env3.CI_PROJECT_TITLE,
                CI_PROJECT_URL: env3.CI_PROJECT_URL,
                CI_PROJECT_VISIBILITY: env3.CI_PROJECT_VISIBILITY,
                CI_REGISTRY: env3.CI_REGISTRY,
                CI_REGISTRY_IMAGE: env3.CI_REGISTRY_IMAGE,
                CI_REGISTRY_USER: env3.CI_REGISTRY_USER,
                CI_RUNNER_DESCRIPTION: env3.CI_RUNNER_DESCRIPTION,
                CI_RUNNER_ID: env3.CI_RUNNER_ID,
                CI_RUNNER_TAGS: env3.CI_RUNNER_TAGS,
                CI_SERVER_HOST: env3.CI_SERVER_HOST,
                CI_SERVER_NAME: env3.CI_SERVER_NAME,
                CI_SERVER_PORT: env3.CI_SERVER_PORT,
                CI_SERVER_PROTOCOL: env3.CI_SERVER_PROTOCOL,
                CI_SERVER_REVISION: env3.CI_SERVER_REVISION,
                CI_SERVER_SHELL_SSH_HOST: env3.CI_SERVER_SHELL_SSH_HOST,
                CI_SERVER_SHELL_SSH_PORT: env3.CI_SERVER_SHELL_SSH_PORT,
                CI_SERVER_URL: env3.CI_SERVER_URL,
                CI_SERVER_VERSION: env3.CI_SERVER_VERSION,
                CI_SERVER_VERSION_MAJOR: env3.CI_SERVER_VERSION_MAJOR,
                CI_SERVER_VERSION_MINOR: env3.CI_SERVER_VERSION_MINOR,
                CI_SERVER_VERSION_PATCH: env3.CI_SERVER_VERSION_PATCH,
                CI_TEMPLATE_REGISTRY_HOST: env3.CI_TEMPLATE_REGISTRY_HOST,
                GITLAB_CI: env3.GITLAB_CI,
                GITLAB_FEATURES: env3.GITLAB_FEATURES,
                GITLAB_USER_ID: env3.GITLAB_USER_ID,
                GITLAB_USER_LOGIN: env3.GITLAB_USER_LOGIN,
                RUNNER_GENERATE_ARTIFACTS_METADATA: env3.RUNNER_GENERATE_ARTIFACTS_METADATA
              },
              environment: {
                name: env3.CI_RUNNER_DESCRIPTION,
                architecture: env3.CI_RUNNER_EXECUTABLE_ARCH,
                server: env3.CI_SERVER_URL,
                project: env3.CI_PROJECT_PATH,
                job: {
                  id: env3.CI_JOB_ID
                },
                pipeline: {
                  id: env3.CI_PIPELINE_ID,
                  ref: env3.CI_CONFIG_PATH
                }
              }
            },
            metadata: {
              buildInvocationId: `${env3.CI_JOB_URL}`,
              completeness: {
                parameters: true,
                environment: true,
                materials: false
              },
              reproducible: false
            },
            materials: [
              {
                uri: `git+${env3.CI_PROJECT_URL}`,
                digest: {
                  sha1: env3.CI_COMMIT_SHA
                }
              }
            ]
          }
        };
      }
      return sigstore.attest(Buffer.from(JSON.stringify(payload)), INTOTO_PAYLOAD_TYPE, opts2);
    };
    var verifyProvenance = async (subject, provenancePath) => {
      let provenanceBundle;
      try {
        provenanceBundle = JSON.parse(await readFile4(provenancePath));
      } catch (err) {
        err.message = `Invalid provenance provided: ${err.message}`;
        throw err;
      }
      const payload = extractProvenance(provenanceBundle);
      if (!payload.subject || !payload.subject.length) {
        throw new Error("No subject found in sigstore bundle payload");
      }
      if (payload.subject.length > 1) {
        throw new Error("Found more than one subject in the sigstore bundle payload");
      }
      const bundleSubject = payload.subject[0];
      if (subject.name !== bundleSubject.name) {
        throw new Error(
          `Provenance subject ${bundleSubject.name} does not match the package: ${subject.name}`
        );
      }
      if (subject.digest.sha512 !== bundleSubject.digest.sha512) {
        throw new Error("Provenance subject digest does not match the package");
      }
      await sigstore.verify(provenanceBundle);
      return provenanceBundle;
    };
    var extractProvenance = (bundle) => {
      if (!bundle?.dsseEnvelope?.payload) {
        throw new Error("No dsseEnvelope with payload found in sigstore bundle");
      }
      try {
        return JSON.parse(Buffer.from(bundle.dsseEnvelope.payload, "base64").toString("utf8"));
      } catch (err) {
        err.message = `Failed to parse payload from dsseEnvelope: ${err.message}`;
        throw err;
      }
    };
    module2.exports = {
      generateProvenance,
      verifyProvenance
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/libnpmpublish/11.2.0/f904d6e821568f6b4fb0501c74220b66908d51202bc801706bcc1d5dfd5ad221/node_modules/libnpmpublish/lib/publish.js
var require_publish = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/libnpmpublish/11.2.0/f904d6e821568f6b4fb0501c74220b66908d51202bc801706bcc1d5dfd5ad221/node_modules/libnpmpublish/lib/publish.js"(exports2, module2) {
    var npmFetch = require_lib37();
    var npa12 = require_npa2();
    var PackageJson = require_lib45();
    var { log: log3 } = require_lib9();
    var semver56 = require_semver2();
    var { URL: URL7 } = __require("node:url");
    var ssri6 = require_lib6();
    var ciInfo2 = require_ci_info();
    var { generateProvenance, verifyProvenance } = require_provenance();
    var TLOG_BASE_URL = "https://search.sigstore.dev/";
    var publish3 = async (manifest, tarballData, opts2) => {
      if (manifest.private) {
        throw Object.assign(
          new Error(`This package has been marked as private
Remove the 'private' field from the package.json to publish it.`),
          { code: "EPRIVATE" }
        );
      }
      const spec = npa12.resolve(manifest.name, manifest.version);
      opts2 = {
        access: "public",
        algorithms: ["sha512"],
        defaultTag: "latest",
        ...opts2,
        spec
      };
      const reg = npmFetch.pickRegistry(spec, opts2);
      const pubManifest = await patchManifest(manifest, opts2);
      if (!spec.scope && opts2.access === "restricted") {
        throw Object.assign(
          new Error("Can't restrict access to unscoped packages."),
          { code: "EUNSCOPED" }
        );
      }
      const { metadata, transparencyLogUrl } = await buildMetadata(
        reg,
        pubManifest,
        tarballData,
        spec,
        opts2
      );
      const stageRoute = `/-/stage/package/${spec.escapedName}`;
      const res = await npmFetch(opts2.stage ? stageRoute : spec.escapedName, {
        ...opts2,
        method: opts2.stage ? "POST" : "PUT",
        body: metadata,
        ignoreBody: !opts2.stage
      });
      if (transparencyLogUrl) {
        res.transparencyLogUrl = transparencyLogUrl;
      }
      if (opts2.stage) {
        const json2 = await res.json();
        res.stageId = json2.stageId;
      }
      return res;
    };
    var patchManifest = async (_manifest, opts2) => {
      const { npmVersion } = opts2;
      const steps = ["fixName"];
      const manifestInput = { ..._manifest, _nodeVersion: process.versions.node };
      if (npmVersion != null) {
        manifestInput._npmVersion = npmVersion;
      }
      const manifest = await new PackageJson().fromContent(manifestInput).normalize({ steps }).then((p) => p.content);
      const version2 = semver56.clean(manifest.version);
      if (!version2) {
        throw Object.assign(
          new Error("invalid semver: " + manifest.version),
          { code: "EBADSEMVER" }
        );
      }
      manifest.version = version2;
      return manifest;
    };
    var buildMetadata = async (registry, manifest, tarballData, spec, opts2) => {
      const { access: access2, defaultTag, algorithms, provenance, provenanceFile, command = "publish" } = opts2;
      const root = {
        _id: manifest.name,
        name: manifest.name,
        description: manifest.description,
        "dist-tags": {},
        versions: {},
        access: access2
      };
      root.versions[manifest.version] = manifest;
      const tag = manifest.tag || defaultTag;
      root["dist-tags"][tag] = manifest.version;
      const tarballName = `${manifest.name}-${manifest.version}.tgz`;
      const provenanceBundleName = `${manifest.name}-${manifest.version}.sigstore`;
      const tarballURI = `${manifest.name}/-/${tarballName}`;
      const integrity = ssri6.fromData(tarballData, {
        algorithms: [...new Set(["sha1"].concat(algorithms))]
      });
      manifest._id = `${manifest.name}@${manifest.version}`;
      manifest.dist = { ...manifest.dist };
      manifest.dist.integrity = integrity.sha512[0].toString();
      manifest.dist.shasum = integrity.sha1[0].hexDigest();
      manifest.dist.tarball = new URL7(tarballURI, registry).href.replace(/^https:\/\//, "http://");
      root._attachments = {};
      root._attachments[tarballName] = {
        content_type: "application/octet-stream",
        data: tarballData.toString("base64"),
        length: tarballData.length
      };
      let transparencyLogUrl;
      if (provenance === true || provenanceFile) {
        let provenanceBundle;
        const subject = {
          name: npa12.toPurl(spec),
          digest: { sha512: integrity.sha512[0].hexDigest() }
        };
        if (provenance === true) {
          await ensureProvenanceGeneration(registry, spec, opts2);
          provenanceBundle = await generateProvenance([subject], opts2);
          log3.notice(command, `Signed provenance statement with source and build information from ${ciInfo2.name}`);
          const tlogEntry = provenanceBundle?.verificationMaterial?.tlogEntries[0];
          if (tlogEntry) {
            transparencyLogUrl = `${TLOG_BASE_URL}?logIndex=${tlogEntry.logIndex}`;
            log3.notice(
              command,
              `Provenance statement published to transparency log: ${transparencyLogUrl}`
            );
          }
        } else {
          provenanceBundle = await verifyProvenance(subject, provenanceFile);
        }
        const serializedBundle = JSON.stringify(provenanceBundle);
        root._attachments[provenanceBundleName] = {
          content_type: provenanceBundle.mediaType,
          data: serializedBundle,
          length: serializedBundle.length
        };
      }
      return {
        metadata: root,
        transparencyLogUrl
      };
    };
    var ensureProvenanceGeneration = async (registry, spec, opts2) => {
      if (ciInfo2.GITHUB_ACTIONS) {
        if (!process.env.ACTIONS_ID_TOKEN_REQUEST_URL) {
          throw Object.assign(
            /* eslint-disable-next-line max-len */
            new Error('Provenance generation in GitHub Actions requires "write" access to the "id-token" permission'),
            { code: "EUSAGE" }
          );
        }
      } else if (ciInfo2.GITLAB) {
        if (!process.env.SIGSTORE_ID_TOKEN) {
          throw Object.assign(
            /* eslint-disable-next-line max-len */
            new Error('Provenance generation in GitLab CI requires "SIGSTORE_ID_TOKEN" with "sigstore" audience to be present in "id_tokens". For more info see:\nhttps://docs.gitlab.com/ee/ci/secrets/id_token_authentication.html'),
            { code: "EUSAGE" }
          );
        }
      } else {
        throw Object.assign(
          new Error("Automatic provenance generation not supported for provider: " + ciInfo2.name),
          { code: "EUSAGE" }
        );
      }
      let visibility = { public: false };
      if (opts2.access !== "public") {
        try {
          const res = await npmFetch.json(`/-/package/${spec.escapedName}/visibility`, { ...opts2, registry });
          visibility = res;
        } catch (err) {
          if (err.code !== "E404") {
            throw err;
          }
        }
      }
      if (!visibility.public && opts2.provenance === true && opts2.access !== "public") {
        throw Object.assign(
          /* eslint-disable-next-line max-len */
          new Error("Can't generate provenance for new or private package, you must set `access` to public."),
          { code: "EUSAGE" }
        );
      }
    };
    module2.exports = publish3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/libnpmpublish/11.2.0/f904d6e821568f6b4fb0501c74220b66908d51202bc801706bcc1d5dfd5ad221/node_modules/libnpmpublish/lib/unpublish.js
var require_unpublish = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/libnpmpublish/11.2.0/f904d6e821568f6b4fb0501c74220b66908d51202bc801706bcc1d5dfd5ad221/node_modules/libnpmpublish/lib/unpublish.js"(exports2, module2) {
    "use strict";
    var { URL: URL7 } = __require("node:url");
    var npa12 = require_npa2();
    var npmFetch = require_lib37();
    var semver56 = require_semver2();
    var getPathname = (tarball, registry) => {
      const registryUrl = new URL7(registry).pathname.slice(1);
      let tarballUrl = new URL7(tarball).pathname.slice(1);
      if (registryUrl) {
        tarballUrl = tarballUrl.slice(registryUrl.length);
      }
      return tarballUrl;
    };
    var unpublish = async (spec, opts2) => {
      spec = npa12(spec);
      opts2 = {
        force: false,
        ...opts2,
        spec
      };
      try {
        const pkgUri = spec.escapedName;
        const pkg = await npmFetch.json(pkgUri, {
          ...opts2,
          query: { write: true }
        });
        const version2 = spec.rawSpec;
        const allVersions = pkg.versions || {};
        const versionData = allVersions[version2];
        const rawSpecs = !spec.rawSpec || spec.rawSpec === "*";
        const onlyVersion = Object.keys(allVersions).length === 1;
        const noVersions = !Object.keys(allVersions).length;
        if (!versionData && !rawSpecs && !noVersions) {
          return true;
        }
        if (rawSpecs || onlyVersion || noVersions) {
          await npmFetch(`${pkgUri}/-rev/${pkg._rev}`, {
            ...opts2,
            method: "DELETE",
            ignoreBody: true
          });
          return true;
        } else {
          const dist = allVersions[version2].dist;
          delete allVersions[version2];
          const latestVer = pkg["dist-tags"].latest;
          Object.keys(pkg["dist-tags"]).forEach((tag) => {
            if (pkg["dist-tags"][tag] === version2) {
              delete pkg["dist-tags"][tag];
            }
          });
          if (latestVer === version2) {
            pkg["dist-tags"].latest = Object.keys(
              allVersions
            ).sort(semver56.compareLoose).pop();
          }
          delete pkg._revisions;
          delete pkg._attachments;
          await npmFetch(`${pkgUri}/-rev/${pkg._rev}`, {
            ...opts2,
            method: "PUT",
            body: pkg,
            ignoreBody: true
          });
          const { _rev } = await npmFetch.json(pkgUri, {
            ...opts2,
            query: { write: true }
          });
          const tarballUrl = getPathname(dist.tarball, opts2.registry);
          await npmFetch(`${tarballUrl}/-rev/${_rev}`, {
            ...opts2,
            method: "DELETE",
            ignoreBody: true
          });
          return true;
        }
      } catch (err) {
        if (err.code !== "E404") {
          throw err;
        }
        return true;
      }
    };
    module2.exports = unpublish;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/libnpmpublish/11.2.0/f904d6e821568f6b4fb0501c74220b66908d51202bc801706bcc1d5dfd5ad221/node_modules/libnpmpublish/lib/index.js
var require_lib47 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/libnpmpublish/11.2.0/f904d6e821568f6b4fb0501c74220b66908d51202bc801706bcc1d5dfd5ad221/node_modules/libnpmpublish/lib/index.js"(exports2, module2) {
    module2.exports = {
      publish: require_publish(),
      unpublish: require_unpublish()
    };
  }
});

// ../releasing/commands/lib/publish/utils/shared-context.js
import readline3 from "node:readline";
var import_ci_info3, import_enquirer10, import_libnpmpublish, publish, SHARED_CONTEXT;
var init_shared_context = __esm({
  "../releasing/commands/lib/publish/utils/shared-context.js"() {
    "use strict";
    init_lib3();
    init_lib49();
    import_ci_info3 = __toESM(require_ci_info(), 1);
    import_enquirer10 = __toESM(require_enquirer(), 1);
    import_libnpmpublish = __toESM(require_lib47(), 1);
    publish = import_libnpmpublish.publish;
    SHARED_CONTEXT = {
      Date,
      createReadlineInterface: readline3.createInterface.bind(null, { input: process.stdin }),
      ciInfo: import_ci_info3.default,
      enquirer: import_enquirer10.default,
      fetch,
      globalInfo,
      globalWarn,
      process,
      publish,
      setTimeout
    };
  }
});

// ../releasing/commands/lib/publish/oidc/authToken.js
async function fetchAuthToken({ context: { fetch: fetch2 } = SHARED_CONTEXT, options, idToken, packageName, registry }) {
  let response;
  try {
    response = await fetch2(new URL(`/-/npm/v1/oidc/token/exchange/package/${(0, import_npm_package_arg9.default)(packageName).escapedName}`, registry).href, {
      body: "",
      headers: {
        Accept: "application/json",
        Authorization: `Bearer ${idToken}`,
        "Content-Length": "0"
      },
      method: "POST",
      retry: {
        factor: options?.fetchRetryFactor,
        maxTimeout: options?.fetchRetryMaxtimeout,
        minTimeout: options?.fetchRetryMintimeout,
        retries: options?.fetchRetries
      },
      timeout: options?.fetchTimeout
    });
  } catch (error) {
    throw new AuthTokenFetchError(error, packageName, registry);
  }
  if (!response.ok) {
    const error = await response.json().catch(() => void 0);
    throw new AuthTokenExchangeError(error, response.status);
  }
  let json2;
  try {
    json2 = await response.json();
  } catch (error) {
    throw new AuthTokenJsonInterruptedError(error);
  }
  if (!json2 || typeof json2 !== "object" || !("token" in json2) || typeof json2.token !== "string") {
    throw new AuthTokenMalformedJsonError(json2, packageName, registry);
  }
  return json2.token;
}
var import_npm_package_arg9, AuthTokenError, AuthTokenFetchError, AuthTokenExchangeError, AuthTokenJsonInterruptedError, AuthTokenMalformedJsonError;
var init_authToken = __esm({
  "../releasing/commands/lib/publish/oidc/authToken.js"() {
    "use strict";
    init_lib2();
    import_npm_package_arg9 = __toESM(require_npa(), 1);
    init_displayError();
    init_shared_context();
    AuthTokenError = class extends PnpmError {
    };
    AuthTokenFetchError = class extends AuthTokenError {
      errorSource;
      packageName;
      registry;
      constructor(error, packageName, registry) {
        super("AUTH_TOKEN_FETCH", `Failed to fetch authToken for package ${packageName} from registry ${registry}: ${displayError(error)}`);
        this.errorSource = error;
        this.packageName = packageName;
        this.registry = registry;
      }
    };
    AuthTokenExchangeError = class extends AuthTokenError {
      errorResponse;
      httpStatus;
      constructor(errorResponse, httpStatus) {
        const message = errorResponse?.body?.message ?? "Unknown error";
        super("AUTH_TOKEN_EXCHANGE", `Failed token exchange request with body message: ${message} (status code ${httpStatus})`);
        this.errorResponse = errorResponse;
        this.httpStatus = httpStatus;
      }
    };
    AuthTokenJsonInterruptedError = class extends AuthTokenError {
      errorSource;
      constructor(error) {
        super("AUTH_TOKEN_JSON_INTERRUPTED", `Fetching of authToken JSON interrupted: ${displayError(error)}`);
        this.errorSource = error;
      }
    };
    AuthTokenMalformedJsonError = class extends AuthTokenError {
      malformedJsonResponse;
      packageName;
      registry;
      constructor(malformedJsonResponse, packageName, registry) {
        super("AUTH_TOKEN_MALFORMED_JSON", `Failed to fetch authToken for package ${packageName} from registry ${registry} due to malformed JSON response`);
        this.malformedJsonResponse = malformedJsonResponse;
        this.packageName = packageName;
        this.registry = registry;
      }
    };
  }
});

// ../releasing/commands/lib/publish/oidc/idToken.js
async function getIdToken({ context: { Date: Date2, ciInfo: { GITHUB_ACTIONS }, fetch: fetch2, globalInfo: globalInfo2, process: { env: env3 } } = SHARED_CONTEXT, options, registry }) {
  if (env3?.NPM_ID_TOKEN)
    return env3.NPM_ID_TOKEN;
  if (!GITHUB_ACTIONS)
    return void 0;
  if (!env3?.ACTIONS_ID_TOKEN_REQUEST_TOKEN || !env3?.ACTIONS_ID_TOKEN_REQUEST_URL) {
    throw new IdTokenGitHubWorkflowIncorrectPermissionsError();
  }
  const parsedRegistry = new URL(registry);
  const audience = `npm:${parsedRegistry.hostname}`;
  const url7 = new URL(env3.ACTIONS_ID_TOKEN_REQUEST_URL);
  url7.searchParams.append("audience", audience);
  const startTime = Date2.now();
  const response = await fetch2(url7.href, {
    headers: {
      Accept: "application/json",
      Authorization: `Bearer ${env3.ACTIONS_ID_TOKEN_REQUEST_TOKEN}`
    },
    method: "GET",
    retry: {
      factor: options?.fetchRetryFactor,
      maxTimeout: options?.fetchRetryMaxtimeout,
      minTimeout: options?.fetchRetryMintimeout,
      retries: options?.fetchRetries
    },
    timeout: options?.fetchTimeout
  });
  const elapsedTime = Date2.now() - startTime;
  globalInfo2(`GET ${url7.href} ${response.status} ${elapsedTime}ms`);
  if (!response.ok) {
    throw new IdTokenGitHubInvalidResponseError();
  }
  let json2;
  try {
    json2 = await response.json();
  } catch (error) {
    throw new IdTokenGitHubJsonInterruptedError(error);
  }
  if (!json2 || typeof json2 !== "object" || !("value" in json2) || typeof json2.value !== "string") {
    throw new IdTokenGitHubJsonInvalidValueError(json2);
  }
  return json2.value;
}
var IdTokenError, IdTokenGitHubWorkflowIncorrectPermissionsError, IdTokenGitHubInvalidResponseError, IdTokenGitHubJsonInterruptedError, IdTokenGitHubJsonInvalidValueError;
var init_idToken = __esm({
  "../releasing/commands/lib/publish/oidc/idToken.js"() {
    "use strict";
    init_lib2();
    init_displayError();
    init_shared_context();
    IdTokenError = class extends PnpmError {
    };
    IdTokenGitHubWorkflowIncorrectPermissionsError = class extends IdTokenError {
      constructor() {
        super("ID_TOKEN_GITHUB_WORKFLOW_INCORRECT_PERMISSIONS", "Incorrect permissions for idToken within GitHub Workflows");
      }
    };
    IdTokenGitHubInvalidResponseError = class extends IdTokenError {
      constructor() {
        super("ID_TOKEN_GITHUB_INVALID_RESPONSE", "Failed to fetch idToken from GitHub: received an invalid response");
      }
    };
    IdTokenGitHubJsonInterruptedError = class extends IdTokenError {
      errorSource;
      constructor(error) {
        super("ID_TOKEN_GITHUB_JSON_INTERRUPTED_ERROR", `Fetching of idToken JSON interrupted: ${displayError(error)}`);
        this.errorSource = error;
      }
    };
    IdTokenGitHubJsonInvalidValueError = class extends IdTokenError {
      jsonResponse;
      constructor(jsonResponse) {
        super("ID_TOKEN_GITHUB_JSON_INVALID_VALUE", "Failed to fetch idToken from GitHub: missing or invalid value");
        this.jsonResponse = jsonResponse;
      }
    };
  }
});

// ../releasing/commands/lib/publish/oidc/provenance.js
async function determineProvenance({ authToken, idToken, options, packageName, registry, context: { ciInfo: { GITHUB_ACTIONS, GITLAB }, fetch: fetch2, process: { env: env3 } } = SHARED_CONTEXT }) {
  const [headerB64, payloadB64] = idToken.split(".");
  if (!headerB64 || !payloadB64) {
    throw new ProvenanceMalformedIdTokenError(idToken);
  }
  const payloadJson = Buffer.from(payloadB64, "base64url").toString("utf8");
  const payload = JSON.parse(payloadJson);
  if ((!GITHUB_ACTIONS || payload.repository_visibility !== "public") && (!GITLAB || payload.project_visibility !== "public" || !env3?.SIGSTORE_ID_TOKEN)) {
    throw new ProvenanceInsufficientInformationError();
  }
  const visibilityUrl = new URL(`/-/package/${(0, import_npm_package_arg10.default)(packageName).escapedName}/visibility`, registry);
  const response = await fetch2(visibilityUrl, {
    headers: {
      Accept: "application/json",
      Authorization: `Bearer ${authToken}`
    },
    method: "GET",
    retry: {
      factor: options?.fetchRetryFactor,
      maxTimeout: options?.fetchRetryMaxtimeout,
      minTimeout: options?.fetchRetryMintimeout,
      retries: options?.fetchRetries
    },
    timeout: options?.fetchTimeout
  });
  if (!response.ok) {
    throw await ProvenanceFailedToFetchVisibilityError.createErrorFromFetchResponse(response, packageName, registry);
  }
  const visibility = await response.json();
  if (visibility?.public)
    return true;
  return void 0;
}
var import_npm_package_arg10, ProvenanceError, ProvenanceMalformedIdTokenError, ProvenanceInsufficientInformationError, ProvenanceFailedToFetchVisibilityError;
var init_provenance = __esm({
  "../releasing/commands/lib/publish/oidc/provenance.js"() {
    "use strict";
    init_lib2();
    import_npm_package_arg10 = __toESM(require_npa(), 1);
    init_shared_context();
    ProvenanceError = class extends PnpmError {
    };
    ProvenanceMalformedIdTokenError = class extends ProvenanceError {
      idToken;
      constructor(idToken) {
        super("PROVENANCE_MALFORMED_ID_TOKEN", "The received idToken is not a valid JWT");
        this.idToken = idToken;
      }
    };
    ProvenanceInsufficientInformationError = class extends ProvenanceError {
      constructor() {
        super("PROVENANCE_INSUFFICIENT_INFORMATION", "The environment does not provide enough information to determine visibility");
      }
    };
    ProvenanceFailedToFetchVisibilityError = class _ProvenanceFailedToFetchVisibilityError extends ProvenanceError {
      errorResponse;
      packageName;
      registry;
      status;
      constructor(errorResponse, status, packageName, registry) {
        let message = "an unknown error";
        if (errorResponse?.code && errorResponse?.message) {
          message = `${errorResponse.code}: ${errorResponse.message}`;
        } else if (errorResponse?.code) {
          message = errorResponse.code;
        } else if (errorResponse?.message) {
          message = errorResponse.message;
        }
        super("PROVENANCE_FAILED_TO_FETCH_VISIBILITY", `Failed to fetch visibility for package ${packageName} from registry ${registry} due to ${message} (status code ${status})`);
        this.errorResponse = errorResponse;
        this.status = status;
        this.packageName = packageName;
        this.registry = registry;
      }
      static async createErrorFromFetchResponse(response, packageName, registry) {
        let errorResponse;
        try {
          errorResponse = await response.json();
        } catch {
        }
        return new _ProvenanceFailedToFetchVisibilityError(errorResponse, response.status, packageName, registry);
      }
    };
  }
});

// ../releasing/commands/lib/publish/otp.js
async function publishWithOtpHandling({ context = SHARED_CONTEXT, manifest, publishOptions, tarballData }) {
  const { publish: publish3 } = context;
  const fetchOptions = {
    method: "GET",
    retry: {
      factor: publishOptions.fetchRetryFactor,
      maxTimeout: publishOptions.fetchRetryMaxtimeout,
      minTimeout: publishOptions.fetchRetryMintimeout,
      retries: publishOptions.fetchRetries
    },
    timeout: publishOptions.timeout
  };
  return withOtpHandling({
    context,
    fetchOptions,
    // When otp is undefined (first attempt), { ...publishOptions, otp } adds
    // otp: undefined to the options. This is safe because libnpmpublish treats
    // undefined the same as absent (unlike HTTP headers, where undefined gets
    // coerced to the string "undefined").
    operation: (otp) => publish3(manifest, tarballData, { ...publishOptions, otp })
  });
}
var init_otp = __esm({
  "../releasing/commands/lib/publish/otp.js"() {
    "use strict";
    init_lib62();
    init_shared_context();
  }
});

// ../releasing/commands/lib/publish/registryConfigKeys.js
function parseSupportedRegistryUrl(registryUrl) {
  registryUrl = (0, import_normalize_registry_url6.default)(registryUrl);
  const keyPrefix = replacePrefix(registryUrl, "http://", "//") ?? replacePrefix(registryUrl, "https://", "//");
  if (!keyPrefix)
    return void 0;
  const normalizedUrl = ensureSuffix(registryUrl, "/");
  const longestConfigKey = ensureSuffix(keyPrefix, "/");
  return { normalizedUrl, longestConfigKey };
}
function* allRegistryConfigKeys(longest) {
  if (!longest.startsWith("//")) {
    throw new RangeError(`The string ${JSON.stringify(longest)} is not a valid registry config key`);
  }
  if (longest === EMPTY_REGISTRY_CONFIG_KEY) {
    throw new RangeError("Registry config key cannot be without hostname");
  }
  if (longest.length <= EMPTY_REGISTRY_CONFIG_KEY.length)
    return;
  yield longest;
  const next2 = longest.replace(/[^/]*\/$/, "");
  yield* allRegistryConfigKeys(next2);
}
var import_normalize_registry_url6, replacePrefix, ensureSuffix, EMPTY_REGISTRY_CONFIG_KEY;
var init_registryConfigKeys = __esm({
  "../releasing/commands/lib/publish/registryConfigKeys.js"() {
    "use strict";
    import_normalize_registry_url6 = __toESM(require_normalize_registry_url(), 1);
    replacePrefix = (text, oldPrefix, newPrefix) => text.startsWith(oldPrefix) ? text.replace(oldPrefix, newPrefix) : void 0;
    ensureSuffix = (text, suffix) => text.endsWith(suffix) ? text : `${text}${suffix}`;
    EMPTY_REGISTRY_CONFIG_KEY = "///";
  }
});

// ../releasing/commands/lib/publish/publishPackedPkg.js
import { createHash as createHash2 } from "node:crypto";
import fs103 from "node:fs/promises";
import path195 from "node:path";
async function publishPackedPkg(packResult, opts2) {
  const { publishedManifest, tarballPath, contents, unpackedSize } = packResult;
  const tarballData = await fs103.readFile(tarballPath);
  const publishOptions = await createPublishOptions(publishedManifest, opts2);
  const { name, version: version2 } = publishedManifest;
  const { registry } = publishOptions;
  const isStage = opts2.stage === true;
  globalInfo(`\u{1F4E6} ${name}@${version2} \u2192 ${registry ?? "the default registry"}`);
  const summary = {
    id: `${name}@${version2}`,
    name,
    version: version2,
    size: tarballData.byteLength,
    unpackedSize,
    // SHA-1 is what `npm publish --json` reports as `shasum` for back-compat with the registry's
    // legacy dist.shasum field; `integrity` below is the modern SRI hash.
    shasum: createHash2("sha1").update(tarballData).digest("hex"),
    integrity: `sha512-${createHash2("sha512").update(tarballData).digest("base64")}`,
    filename: path195.basename(tarballPath),
    files: contents.map((file) => ({ path: file })),
    entryCount: contents.length,
    bundled: extractBundledDependencies(publishedManifest)
  };
  if (opts2.dryRun) {
    globalWarn(`Skip ${isStage ? "staging" : "publishing"} ${name}@${version2} (dry run)`);
    return summary;
  }
  const context = createPublishContext(opts2);
  const response = await publishWithOtpHandling({
    context,
    manifest: publishedManifest,
    publishOptions,
    tarballData
  });
  if (response.ok) {
    if (isStage && response.stageId) {
      summary.stageId = response.stageId;
    }
    globalInfo(`\u2705 ${isStage ? "Staged" : "Published"} package ${name}@${version2}`);
    return summary;
  }
  throw await createFailedToPublishError(packResult, response);
}
function createPublishContext(opts2) {
  return {
    ...SHARED_CONTEXT,
    fetch: createDispatchedFetch({ ...opts2, timeout: opts2.fetchTimeout })
  };
}
async function createPublishOptions(manifest, options) {
  const publishConfigRegistry = typeof manifest.publishConfig?.registry === "string" ? manifest.publishConfig.registry : void 0;
  const { registry, config } = findRegistryInfo(manifest, options, publishConfigRegistry);
  const { creds, tls: tls2 } = config ?? {};
  const publishConfigAccess = manifest.publishConfig?.access;
  const access2 = options.access ?? (isPublishAccess(publishConfigAccess) ? publishConfigAccess : void 0);
  const { ci: isFromCI, fetchRetries, fetchRetryFactor, fetchRetryMaxtimeout, fetchRetryMintimeout, fetchTimeout: timeout, otp, provenance, provenanceFile, tag: defaultTag, userAgent } = options;
  const npmCommand = options.stage === true ? "stage" : "publish";
  const headers = {
    "npm-auth-type": "web",
    "npm-command": npmCommand
  };
  const publishOptions = {
    access: access2,
    defaultTag,
    fetchRetries,
    fetchRetryFactor,
    fetchRetryMaxtimeout,
    fetchRetryMintimeout,
    headers,
    isFromCI,
    otp,
    timeout,
    provenance,
    provenanceFile,
    registry,
    userAgent,
    // Signal to the registry that the client supports web-based authentication.
    // Without this, the registry would never offer the web auth flow and would
    // always fall back to prompting the user for an OTP code, even when the user
    // has no OTP set up.
    authType: "web",
    ca: tls2?.ca,
    cert: tls2?.cert,
    key: tls2?.key,
    npmCommand,
    token: creds && extractToken(creds),
    username: creds?.basicAuth?.username,
    password: creds?.basicAuth?.password
  };
  if (options.stage === true) {
    publishOptions.command = "stage";
    publishOptions.stage = true;
  }
  if (registry) {
    const oidcTokenProvenance = await fetchTokenAndProvenanceByOidc(manifest.name, registry, options);
    if (oidcTokenProvenance?.authToken) {
      publishOptions.token = oidcTokenProvenance.authToken;
    }
    publishOptions.provenance ??= oidcTokenProvenance?.provenance;
    appendAuthOptionsForRegistry(publishOptions, registry);
  }
  pruneUndefined(publishOptions);
  return publishOptions;
}
function isPublishAccess(access2) {
  return access2 === "public" || access2 === "restricted";
}
function findRegistryInfo({ name }, { configByUri, registries }, publishConfigRegistry) {
  const scopedMatches = /@(?<scope>[^/]+)\/(?<slug>[^/]+)/.exec(name);
  const registryName = scopedMatches?.groups ? `@${scopedMatches.groups.scope}` : "default";
  const nonNormalizedRegistry = publishConfigRegistry ?? registries[registryName] ?? registries.default;
  const supportedRegistryInfo = parseSupportedRegistryUrl(nonNormalizedRegistry);
  if (!supportedRegistryInfo) {
    throw new PublishUnsupportedRegistryProtocolError(nonNormalizedRegistry);
  }
  const { normalizedUrl: registry, longestConfigKey: initialRegistryConfigKey } = supportedRegistryInfo;
  let creds;
  let tls2 = {};
  for (const registryConfigKey of allRegistryConfigKeys(initialRegistryConfigKey)) {
    const entry = configByUri[registryConfigKey];
    if (!entry)
      continue;
    creds ??= entry.creds;
    tls2 = { ...entry.tls, ...tls2 };
  }
  const isDefaultRegistry = nonNormalizedRegistry === registries.default || registry === registries.default || registry === parseSupportedRegistryUrl(registries.default)?.normalizedUrl;
  if (isDefaultRegistry) {
    creds ??= configByUri[""]?.creds;
  }
  return {
    registry,
    config: { creds, tls: tls2 }
  };
}
function extractToken({ authToken, tokenHelper }) {
  if (authToken)
    return authToken;
  if (tokenHelper) {
    return executeTokenHelper2(tokenHelper, { globalWarn });
  }
  return void 0;
}
async function fetchTokenAndProvenanceByOidc(packageName, registry, options) {
  let idToken;
  try {
    idToken = await getIdToken({
      options,
      registry
    });
  } catch (error) {
    if (error instanceof IdTokenError) {
      globalWarn(`Skipped OIDC: ${displayError(error)}`);
      return void 0;
    }
    throw error;
  }
  if (!idToken) {
    return void 0;
  }
  let authToken;
  try {
    authToken = await fetchAuthToken({
      idToken,
      options,
      packageName,
      registry
    });
  } catch (error) {
    if (error instanceof AuthTokenError) {
      globalWarn(`Skipped OIDC: ${displayError(error)}`);
      return void 0;
    }
    throw error;
  }
  if (options.provenance != null) {
    return {
      authToken,
      provenance: options.provenance
    };
  }
  let provenance;
  try {
    provenance = await determineProvenance({
      authToken,
      idToken,
      options,
      packageName,
      registry
    });
  } catch (error) {
    if (error instanceof ProvenanceError) {
      globalWarn(`Skipped setting provenance: ${displayError(error)}`);
      return { authToken };
    }
    throw error;
  }
  return { authToken, provenance };
}
function appendAuthOptionsForRegistry(targetPublishOptions, registry) {
  const registryInfo = parseSupportedRegistryUrl(registry);
  if (!registryInfo) {
    globalWarn(`The registry ${registry} cannot be converted into a config key. Supplement is skipped. Subsequent libnpmpublish call may fail.`);
    return;
  }
  const registryConfigKey = registryInfo.longestConfigKey;
  targetPublishOptions[`${registryConfigKey}:_authToken`] ??= targetPublishOptions.token;
  targetPublishOptions[`${registryConfigKey}:username`] ??= targetPublishOptions.username;
  targetPublishOptions[`${registryConfigKey}:_password`] ??= targetPublishOptions.password && btoa(targetPublishOptions.password);
}
function pruneUndefined(object) {
  for (const key in object) {
    if (object[key] === void 0) {
      delete object[key];
    }
  }
}
var PublishUnsupportedRegistryProtocolError;
var init_publishPackedPkg = __esm({
  "../releasing/commands/lib/publish/publishPackedPkg.js"() {
    "use strict";
    init_lib2();
    init_lib3();
    init_lib49();
    init_publishSummary();
    init_displayError();
    init_executeTokenHelper();
    init_FailedToPublishError();
    init_authToken();
    init_idToken();
    init_provenance();
    init_otp();
    init_registryConfigKeys();
    init_shared_context();
    PublishUnsupportedRegistryProtocolError = class extends PnpmError {
      registryUrl;
      constructor(registryUrl) {
        super("PUBLISH_UNSUPPORTED_REGISTRY_PROTOCOL", `Registry ${registryUrl} has an unsupported protocol`, {
          hint: "`pnpm publish` only supports HTTP and HTTPS registries"
        });
        this.registryUrl = registryUrl;
      }
    };
  }
});

// ../releasing/commands/lib/publish/recursivePublish.js
import path196 from "node:path";
async function recursivePublish(opts2) {
  const pkgs = Object.values(opts2.selectedProjectsGraph).map((wsPkg) => wsPkg.package);
  const { resolve: resolve3 } = createResolver2({
    ...opts2,
    configByUri: opts2.configByUri,
    retry: {
      factor: opts2.fetchRetryFactor,
      maxTimeout: opts2.fetchRetryMaxtimeout,
      minTimeout: opts2.fetchRetryMintimeout,
      retries: opts2.fetchRetries
    },
    timeout: opts2.fetchTimeout
  });
  const pkgsToPublish = await pFilter(pkgs, async (pkg) => {
    if (!pkg.manifest.name || !pkg.manifest.version || pkg.manifest.private)
      return false;
    if (opts2.force)
      return true;
    return !await isAlreadyPublished({
      dir: pkg.rootDir,
      lockfileDir: opts2.lockfileDir ?? pkg.rootDir,
      registries: opts2.registries,
      resolve: resolve3
    }, pkg.manifest.name, pkg.manifest.version);
  });
  const publishedPkgDirs = new Set(pkgsToPublish.map(({ rootDir }) => rootDir));
  const publishedPackages = [];
  if (publishedPkgDirs.size === 0) {
    logger.info({
      message: "There are no new packages that should be published",
      prefix: opts2.dir
    });
  } else {
    const appendedArgs = [];
    if (opts2.cliOptions["access"]) {
      appendedArgs.push(`--access=${opts2.cliOptions["access"]}`);
    }
    if (opts2.dryRun) {
      appendedArgs.push("--dry-run");
    }
    if (opts2.force) {
      appendedArgs.push("--force");
    }
    if (opts2.cliOptions["otp"]) {
      appendedArgs.push(`--otp=${opts2.cliOptions["otp"]}`);
    }
    const chunks = sortProjects(opts2.selectedProjectsGraph);
    const tag = opts2.tag ?? "latest";
    const commandArgs = opts2.stage ? ["stage", "publish"] : ["publish"];
    for (const chunk of chunks) {
      for (const pkgDir of chunk) {
        if (!publishedPkgDirs.has(pkgDir))
          continue;
        const pkg = opts2.selectedProjectsGraph[pkgDir].package;
        const registry = pkg.manifest.publishConfig?.registry ?? pickRegistryForPackage(opts2.registries, pkg.manifest.name);
        const publishResult = await publish2({
          ...opts2,
          dir: pkg.rootDir,
          argv: {
            original: [
              ...commandArgs,
              "--tag",
              tag,
              "--registry",
              registry,
              ...appendedArgs
            ]
          },
          gitChecks: false,
          recursive: false
        }, [pkg.rootDir]);
        if (publishResult?.publishSummary != null) {
          publishedPackages.push(publishResult.publishSummary);
        } else {
          const publishedManifest = publishResult?.publishedManifest ?? publishResult?.manifest;
          if (publishedManifest != null) {
            publishedPackages.push(pick_default(["name", "version"], publishedManifest));
          } else if (publishResult?.exitCode) {
            return { exitCode: publishResult.exitCode, publishedPackages };
          }
        }
      }
    }
  }
  if (opts2.reportSummary) {
    await writeJsonFile(path196.join(opts2.lockfileDir ?? opts2.dir, "pnpm-publish-summary.json"), { publishedPackages });
  }
  return { exitCode: 0, publishedPackages };
}
async function isAlreadyPublished(opts2, pkgName, pkgVersion) {
  try {
    await opts2.resolve({ alias: pkgName, bareSpecifier: pkgVersion }, {
      lockfileDir: opts2.lockfileDir,
      preferredVersions: {},
      projectDir: opts2.dir
    });
    return true;
  } catch (err) {
    return false;
  }
}
var init_recursivePublish = __esm({
  "../releasing/commands/lib/publish/recursivePublish.js"() {
    "use strict";
    init_lib15();
    init_lib57();
    init_lib3();
    init_lib93();
    init_p_filter();
    init_es();
    init_write_json_file();
    init_publish();
  }
});

// ../releasing/commands/lib/publish/publish.js
var publish_exports = {};
__export(publish_exports, {
  cliOptionsTypes: () => cliOptionsTypes57,
  commandNames: () => commandNames61,
  handler: () => handler61,
  help: () => help61,
  publish: () => publish2,
  rcOptionsTypes: () => rcOptionsTypes54,
  runScriptsIfPresent: () => runScriptsIfPresent
});
import path197 from "node:path";
function rcOptionsTypes54() {
  return pick_default([
    "access",
    "git-checks",
    "ignore-scripts",
    "skip-manifest-obfuscation",
    "provenance",
    "npm-path",
    "otp",
    "publish-branch",
    "registry",
    "tag",
    "unsafe-perm",
    "embed-readme"
  ], types2);
}
function cliOptionsTypes57() {
  return {
    ...rcOptionsTypes54(),
    "dry-run": Boolean,
    force: Boolean,
    json: Boolean,
    otp: String,
    recursive: Boolean,
    "report-summary": Boolean
  };
}
function help61() {
  return renderHelp({
    description: "Publishes a package to the npm registry.",
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: "Don't check if current branch is your publish branch, clean, and up to date",
            name: "--no-git-checks"
          },
          {
            description: "Sets branch name to publish. Default is master",
            name: "--publish-branch"
          },
          {
            description: "Does everything a publish would do except actually publishing to the registry",
            name: "--dry-run"
          },
          {
            description: "Show information in JSON format",
            name: "--json"
          },
          {
            description: 'Registers the published package with the given tag. By default, the "latest" tag is used.',
            name: "--tag <tag>"
          },
          {
            description: "Tells the registry whether this package should be published as public or restricted",
            name: "--access <public|restricted>"
          },
          {
            description: "Ignores any publish related lifecycle scripts (prepublishOnly, postpublish, and the like)",
            name: "--ignore-scripts"
          },
          {
            description: "Skip pnpm's manifest obfuscation: keep the original `packageManager` field and publish lifecycle scripts in the published manifest instead of stripping them. The pnpm-specific `pnpm` field is still omitted.",
            name: "--skip-manifest-obfuscation"
          },
          {
            description: 'Packages are proceeded to be published even if their current version is already in the registry. This is useful when a "prepublishOnly" script bumps the version of the package before it is published',
            name: "--force"
          },
          {
            description: 'Save the list of the newly published packages to "pnpm-publish-summary.json". Useful when some other tooling is used to report the list of published packages.',
            name: "--report-summary"
          },
          {
            description: "When publishing packages that require two-factor authentication, this option can specify a one-time password",
            name: "--otp"
          },
          {
            description: "Publish all packages from the workspace",
            name: "--recursive",
            shortAlias: "-r"
          }
        ]
      },
      FILTERING
    ],
    url: docsUrl("publish"),
    usages: ["pnpm publish [<tarball>|<dir>] [--tag <tag>] [--access <public|restricted>] [options]"]
  });
}
async function handler61(opts2, params) {
  const result2 = await publish2(opts2, params);
  if (opts2.json) {
    if (result2?.publishSummary) {
      return { output: JSON.stringify(result2.publishSummary, null, 2), exitCode: 0 };
    }
    if (result2?.publishedPackages) {
      return { output: JSON.stringify(result2.publishedPackages, null, 2), exitCode: result2.exitCode ?? 0 };
    }
  }
  if (result2?.manifest)
    return;
  return result2;
}
async function publish2(opts2, params) {
  if (opts2.gitChecks !== false && await isGitRepo()) {
    if (!await isWorkingTreeClean()) {
      throw new PnpmError("GIT_UNCLEAN", "Unclean working tree. Commit or stash changes first.", {
        hint: GIT_CHECKS_HINT
      });
    }
    const branches = opts2.publishBranch ? [opts2.publishBranch] : ["master", "main"];
    const currentBranch = await getCurrentBranch();
    if (currentBranch === null) {
      throw new PnpmError("GIT_UNKNOWN_BRANCH", `The Git HEAD may not attached to any branch, but your "publish-branch" is set to "${branches.join("|")}".`, {
        hint: GIT_CHECKS_HINT
      });
    }
    if (!branches.includes(currentBranch)) {
      const { confirm } = await import_enquirer11.default.prompt({
        message: `You're on branch "${currentBranch}" but your "publish-branch" is set to "${branches.join("|")}". Do you want to continue?`,
        name: "confirm",
        type: "confirm"
      });
      if (!confirm) {
        throw new PnpmError("GIT_NOT_CORRECT_BRANCH", `Branch is not on '${branches.join("|")}'.`, {
          hint: GIT_CHECKS_HINT
        });
      }
    }
    if (!await isRemoteHistoryClean()) {
      throw new PnpmError("GIT_NOT_LATEST", "Remote history differs. Please pull changes.", {
        hint: GIT_CHECKS_HINT
      });
    }
  }
  if (opts2.recursive && opts2.selectedProjectsGraph != null) {
    const { exitCode, publishedPackages } = await recursivePublish({
      ...opts2,
      selectedProjectsGraph: opts2.selectedProjectsGraph,
      workspaceDir: opts2.workspaceDir ?? process.cwd()
    });
    return { exitCode, publishedPackages };
  }
  opts2 = optionsWithOtpEnv(opts2, process.env);
  const dirInParams = params.length > 0 ? params[0] : void 0;
  if (dirInParams != null && isTarballPath(dirInParams)) {
    const tarballPath = dirInParams;
    const publishedManifest2 = await extractManifestFromPacked(tarballPath);
    const publishSummary2 = await publishPackedPkg({
      tarballPath,
      publishedManifest: publishedManifest2,
      contents: [],
      unpackedSize: 0
    }, opts2);
    return { exitCode: 0, publishSummary: publishSummary2 };
  }
  const dir = dirInParams ?? opts2.dir ?? process.cwd();
  const _runScriptsIfPresent = runScriptsIfPresent.bind(null, {
    depPath: dir,
    extraBinPaths: opts2.extraBinPaths,
    extraEnv: opts2.extraEnv,
    pkgRoot: dir,
    rootModulesDir: await realpathMissing(path197.join(dir, "node_modules")),
    stdio: "inherit",
    unsafePerm: true,
    // when running scripts explicitly, assume that they're trusted.
    userAgent: opts2.userAgent
  });
  const { manifest } = await readProjectManifest2(dir, opts2);
  if (!opts2.ignoreScripts) {
    await _runScriptsIfPresent([
      "prepublishOnly",
      "prepublish"
    ], manifest);
  }
  const packDestination = temporaryDirectory();
  let publishedManifest;
  let publishSummary;
  try {
    const packResult = await api({
      ...opts2,
      dir,
      packDestination,
      dryRun: false
    });
    publishSummary = await publishPackedPkg(packResult, opts2);
    publishedManifest = packResult.publishedManifest;
  } finally {
    await rimraf(packDestination);
  }
  if (!opts2.ignoreScripts) {
    await _runScriptsIfPresent([
      "publish",
      "postpublish"
    ], manifest);
  }
  return { manifest, publishedManifest, publishSummary };
}
async function runScriptsIfPresent(opts2, scriptNames, manifest) {
  for (const scriptName of scriptNames) {
    if (!manifest.scripts?.[scriptName])
      continue;
    await runLifecycleHook(scriptName, manifest, opts2);
  }
}
var import_enquirer11, commandNames61, GIT_CHECKS_HINT;
var init_publish = __esm({
  "../releasing/commands/lib/publish/publish.js"() {
    "use strict";
    init_lib92();
    init_lib29();
    init_lib61();
    init_lib2();
    init_lib44();
    init_lib59();
    init_rimraf();
    import_enquirer11 = __toESM(require_enquirer(), 1);
    init_es();
    init_realpath_missing();
    init_lib63();
    init_tempy();
    init_extractManifestFromPacked();
    init_otpEnv();
    init_pack2();
    init_publishPackedPkg();
    init_recursivePublish();
    commandNames61 = ["publish"];
    GIT_CHECKS_HINT = 'If you want to disable Git checks on publish, set the "git-checks" setting to "false", or run again with "--no-git-checks".';
  }
});

// ../releasing/commands/lib/publish/pack.js
var pack_exports = {};
__export(pack_exports, {
  api: () => api,
  cliOptionsTypes: () => cliOptionsTypes58,
  commandNames: () => commandNames62,
  handler: () => handler62,
  help: () => help62,
  rcOptionsTypes: () => rcOptionsTypes55
});
import fs104 from "node:fs";
import path198 from "node:path";
import { createGzip } from "node:zlib";
function rcOptionsTypes55() {
  return {
    ...cliOptionsTypes58(),
    ...pick_default([
      "npm-path",
      "skip-manifest-obfuscation"
    ], types2)
  };
}
function cliOptionsTypes58() {
  return {
    out: String,
    recursive: Boolean,
    ...pick_default([
      "dry-run",
      "pack-destination",
      "pack-gzip-level",
      "json",
      "skip-manifest-obfuscation",
      "workspace-concurrency"
    ], types2)
  };
}
function help62() {
  return renderHelp({
    description: "Create a tarball from a package",
    usages: ["pnpm pack"],
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: "Does everything `pnpm pack` would do except actually writing the tarball to disk.",
            name: "--dry-run"
          },
          {
            description: "Directory in which `pnpm pack` will save tarballs. The default is the current working directory.",
            name: "--pack-destination <dir>"
          },
          {
            description: "Prints the packed tarball and contents in the json format.",
            name: "--json"
          },
          {
            description: "Customizes the output path for the tarball. Use `%s` and `%v` to include the package name and version, e.g., `%s.tgz` or `some-dir/%s-%v.tgz`. By default, the tarball is saved in the current working directory with the name `<package-name>-<version>.tgz`.",
            name: "--out <path>"
          },
          {
            description: "Pack all packages from the workspace",
            name: "--recursive",
            shortAlias: "-r"
          },
          {
            description: "Skip pnpm's manifest obfuscation: keep the original `packageManager` field and publish lifecycle scripts in the packed manifest instead of stripping them. The pnpm-specific `pnpm` field is still omitted.",
            name: "--skip-manifest-obfuscation"
          },
          {
            description: `Set the maximum number of concurrency. Default is ${getDefaultWorkspaceConcurrency()}. For unlimited concurrency use Infinity.`,
            name: "--workspace-concurrency <number>"
          }
        ]
      },
      FILTERING
    ]
  });
}
async function handler62(opts2) {
  const packedPackages = [];
  if (opts2.recursive) {
    const selectedProjectsGraph = opts2.selectedProjectsGraph;
    const pkgsToPack = [];
    for (const { package: pkg } of Object.values(selectedProjectsGraph)) {
      if (pkg.manifest.name && pkg.manifest.version) {
        pkgsToPack.push(pkg);
      }
    }
    const packedPkgDirs = new Set(pkgsToPack.map(({ rootDir }) => rootDir));
    if (packedPkgDirs.size === 0) {
      logger.info({
        message: "There are no packages that should be packed",
        prefix: opts2.dir
      });
    }
    const chunks = sortProjects(selectedProjectsGraph);
    const limitPack = pLimit(getWorkspaceConcurrency(opts2.workspaceConcurrency));
    const resolvedOpts = { ...opts2 };
    if (opts2.out) {
      resolvedOpts.out = path198.resolve(opts2.dir, opts2.out);
    } else if (opts2.packDestination) {
      resolvedOpts.packDestination = path198.resolve(opts2.dir, opts2.packDestination);
    } else {
      resolvedOpts.packDestination = path198.resolve(opts2.dir);
    }
    for (const chunk of chunks) {
      await Promise.all(chunk.map((pkgDir) => limitPack(async () => {
        if (!packedPkgDirs.has(pkgDir))
          return;
        const pkg = selectedProjectsGraph[pkgDir].package;
        const packResult = await api({
          ...resolvedOpts,
          dir: pkg.rootDir
        });
        packedPackages.push(toPackResultJson(packResult));
      })));
    }
  } else {
    const packResult = await api(opts2);
    packedPackages.push(toPackResultJson(packResult));
  }
  if (opts2.json) {
    return JSON.stringify(packedPackages.length > 1 ? packedPackages : packedPackages[0], null, 2);
  }
  return packedPackages.map(({ name, version: version2, filename, files }) => `${opts2.unicode ? "\u{1F4E6} " : "package:"} ${name}@${version2}
${source_default.blueBright("Tarball Contents")}
${files.map(({ path: path218 }) => path218).join("\n")}
${source_default.blueBright("Tarball Details")}
${filename}`).join("\n\n");
}
async function api(opts2) {
  const { manifest: entryManifest, fileName: manifestFileName } = await readProjectManifest2(opts2.dir, opts2);
  preventBundledDependenciesWithoutHoistedNodeLinker(opts2.nodeLinker, entryManifest);
  const _runScriptsIfPresent = runScriptsIfPresent.bind(null, {
    depPath: opts2.dir,
    extraBinPaths: opts2.extraBinPaths,
    extraEnv: opts2.extraEnv,
    pkgRoot: opts2.dir,
    rootModulesDir: await realpathMissing(path198.join(opts2.dir, "node_modules")),
    stdio: "inherit",
    unsafePerm: true,
    // when running scripts explicitly, assume that they're trusted.
    userAgent: opts2.userAgent
  });
  if (!opts2.ignoreScripts) {
    await _runScriptsIfPresent([
      "prepack",
      "prepare"
    ], entryManifest);
  }
  const dir = entryManifest.publishConfig?.directory ? path198.join(opts2.dir, entryManifest.publishConfig.directory) : opts2.dir;
  const { manifest } = await readProjectManifest2(dir, opts2);
  preventBundledDependenciesWithoutHoistedNodeLinker(opts2.nodeLinker, manifest);
  if (!manifest.name) {
    throw new PnpmError("PACKAGE_NAME_NOT_FOUND", `Package name is not defined in the ${manifestFileName}.`);
  }
  if (!(0, import_validate_npm_package_name2.default)(manifest.name).validForOldPackages) {
    throw new PnpmError("INVALID_PACKAGE_NAME", `Invalid package name "${manifest.name}".`);
  }
  if (!manifest.version) {
    throw new PnpmError("PACKAGE_VERSION_NOT_FOUND", `Package version is not defined in the ${manifestFileName}.`);
  }
  const publishManifest = await createPublishManifest({
    projectDir: dir,
    modulesDir: path198.join(opts2.dir, "node_modules"),
    manifest,
    embedReadme: opts2.embedReadme,
    catalogs: opts2.catalogs ?? {},
    hooks: opts2.hooks,
    skipManifestObfuscation: opts2.skipManifestObfuscation
  });
  publishManifest.version = stripBuildMetadata(publishManifest.version);
  let tarballName;
  let packDestination;
  const normalizedName = manifest.name.replace("@", "").replace("/", "-");
  if (opts2.out) {
    if (opts2.packDestination) {
      throw new PnpmError("INVALID_OPTION", "Cannot use --pack-destination and --out together");
    }
    const preparedOut = opts2.out.replaceAll("%s", normalizedName).replaceAll("%v", publishManifest.version);
    const parsedOut = path198.parse(preparedOut);
    packDestination = parsedOut.dir ? parsedOut.dir : opts2.packDestination;
    tarballName = parsedOut.base;
  } else {
    tarballName = `${normalizedName}-${publishManifest.version}.tgz`;
    packDestination = opts2.packDestination;
  }
  const files = await packlist(dir, {
    manifest: publishManifest
  });
  const filesMap = Object.fromEntries(files.map((file) => [`package/${file}`, path198.join(dir, file)]));
  if (opts2.workspaceDir != null && dir !== opts2.workspaceDir && !files.some((file) => /LICEN[CS]E(?:\..+)?/i.test(file))) {
    const licenses = await glob([LICENSE_GLOB], { cwd: opts2.workspaceDir, expandDirectories: false });
    for (const license of licenses) {
      filesMap[`package/${license}`] = path198.join(opts2.workspaceDir, license);
    }
  }
  const destDir = packDestination ? path198.isAbsolute(packDestination) ? packDestination : path198.join(dir, packDestination ?? ".") : dir;
  if (!opts2.dryRun) {
    await fs104.promises.mkdir(destDir, { recursive: true });
    await packPkg({
      destFile: path198.join(destDir, tarballName),
      filesMap,
      modulesDir: path198.join(opts2.dir, "node_modules"),
      packGzipLevel: opts2.packGzipLevel,
      manifest: publishManifest,
      bins: [
        ...(await getBinsFromPackageManifest(publishManifest, dir)).map(({ path: path218 }) => path218),
        ...(manifest.publishConfig?.executableFiles ?? []).map((executableFile) => path198.join(dir, executableFile))
      ]
    });
    if (!opts2.ignoreScripts) {
      await _runScriptsIfPresent(["postpack"], entryManifest);
    }
  }
  let packedTarballPath;
  if (opts2.dir !== destDir) {
    packedTarballPath = path198.join(destDir, tarballName);
  } else {
    packedTarballPath = path198.relative(opts2.dir, path198.join(dir, tarballName));
  }
  const sizes = await Promise.all(Object.entries(filesMap).map(async ([name, source]) => {
    if (/^package\/package\.(?:json|json5|yaml)$/.test(name)) {
      return Buffer.byteLength(JSON.stringify(publishManifest, null, 2));
    }
    const stat2 = await fs104.promises.stat(source);
    return stat2.size;
  }));
  const unpackedSize = sizes.reduce((acc, size) => acc + size, 0);
  const packedContents = Array.from(new Set(Object.keys(filesMap).map((name) => /^package\/package\.(?:json|json5|yaml)$/.test(name) ? "package.json" : name.replace(/^package\//, "")))).sort((a2, b) => a2.localeCompare(b, "en"));
  return {
    publishedManifest: publishManifest,
    contents: packedContents,
    tarballPath: packedTarballPath,
    unpackedSize
  };
}
function stripBuildMetadata(version2) {
  const plusIndex = version2.indexOf("+");
  return plusIndex === -1 ? version2 : version2.slice(0, plusIndex);
}
function preventBundledDependenciesWithoutHoistedNodeLinker(nodeLinker, manifest) {
  if (nodeLinker === "hoisted")
    return;
  for (const key of ["bundledDependencies", "bundleDependencies"]) {
    const bundledDependencies = manifest[key];
    if (bundledDependencies) {
      throw new PnpmError("BUNDLED_DEPENDENCIES_WITHOUT_HOISTED", `${key} does not work with "nodeLinker: ${nodeLinker}"`, {
        hint: `Add "nodeLinker: hoisted" to pnpm-workspace.yaml or delete ${key} from the root package.json to resolve this error`
      });
    }
  }
}
async function readReadmeFile(projectDir) {
  const files = await fs104.promises.readdir(projectDir);
  const readmePath = files.find((name) => /readme\.md$/i.test(name));
  const readmeFile = readmePath ? await fs104.promises.readFile(path198.join(projectDir, readmePath), "utf8") : void 0;
  return readmeFile;
}
async function packPkg(opts2) {
  const { destFile, filesMap, bins, manifest } = opts2;
  const mtime = /* @__PURE__ */ new Date("1985-10-26T08:15:00.000Z");
  const pack2 = import_tar_stream2.default.pack();
  await Promise.all(Object.entries(filesMap).map(async ([name, source]) => {
    const isExecutable = bins.some((bin) => path198.relative(bin, source) === "");
    const mode = isExecutable ? 493 : 420;
    if (/^package\/package\.(?:json|json5|yaml)$/.test(name)) {
      pack2.entry({ mode, mtime, name: "package/package.json" }, JSON.stringify(manifest, null, 2));
      return;
    }
    pack2.entry({ mode, mtime, name }, fs104.readFileSync(source));
  }));
  const tarball = fs104.createWriteStream(destFile);
  pack2.pipe(createGzip({ level: opts2.packGzipLevel })).pipe(tarball);
  pack2.finalize();
  return new Promise((resolve3, reject3) => {
    tarball.on("close", () => {
      resolve3();
    }).on("error", reject3);
  });
}
async function createPublishManifest(opts2) {
  const { projectDir, embedReadme, modulesDir, manifest, catalogs, hooks, skipManifestObfuscation } = opts2;
  const readmeFile = embedReadme ? await readReadmeFile(projectDir) : void 0;
  return createExportableManifest(projectDir, manifest, {
    catalogs,
    hooks,
    readmeFile,
    modulesDir,
    skipManifestObfuscation
  });
}
function toPackResultJson(packResult) {
  const { publishedManifest, contents, tarballPath } = packResult;
  return {
    name: publishedManifest.name,
    version: publishedManifest.version,
    filename: tarballPath,
    files: contents.map((file) => ({ path: file }))
  };
}
var import_tar_stream2, import_validate_npm_package_name2, LICENSE_GLOB, commandNames62;
var init_pack2 = __esm({
  "../releasing/commands/lib/publish/pack.js"() {
    "use strict";
    init_lib40();
    init_lib92();
    init_lib29();
    init_lib61();
    init_lib2();
    init_lib37();
    init_lib3();
    init_lib166();
    init_lib93();
    init_source2();
    init_p_limit();
    init_es();
    init_realpath_missing();
    init_lib63();
    import_tar_stream2 = __toESM(require_tar_stream(), 1);
    init_dist3();
    import_validate_npm_package_name2 = __toESM(require_lib22(), 1);
    init_publish();
    LICENSE_GLOB = "LICEN{S,C}E{,.*}";
    commandNames62 = ["pack"];
  }
});

// ../releasing/commands/lib/publish/index.js
var init_publish2 = __esm({
  "../releasing/commands/lib/publish/index.js"() {
    "use strict";
    init_pack2();
    init_publish();
  }
});

// ../releasing/commands/lib/stage/context.js
function createStageContext(opts2, packageName) {
  const registry = getStageRegistry(opts2, packageName);
  const getAuthHeaderByUri = createGetAuthHeaderByURI(opts2.configByUri ?? {}, registry);
  return {
    opts: opts2,
    registry,
    authHeaderValue: getAuthHeaderByUri(registry),
    fetchFromRegistry: createFetchFromRegistry(opts2)
  };
}
function getStageRegistry(opts2, packageName) {
  const registries = getRegistries(opts2);
  const registry = packageName ? pickRegistryForPackage(registries, packageName) : registries.default;
  return registry.endsWith("/") ? registry : `${registry}/`;
}
function getRegistries(opts2) {
  return opts2.registries ?? { default: opts2.registry ?? DEFAULT_REGISTRY };
}
var DEFAULT_REGISTRY;
var init_context = __esm({
  "../releasing/commands/lib/stage/context.js"() {
    "use strict";
    init_lib15();
    init_lib48();
    init_lib49();
    DEFAULT_REGISTRY = "https://registry.npmjs.org/";
  }
});

// ../releasing/commands/lib/stage/parsing.js
function parseStagePackageSpec(rawSpec) {
  let spec;
  try {
    spec = (0, import_npm_package_arg11.default)(rawSpec);
  } catch {
    throw new PnpmError("INVALID_PACKAGE_SPEC", `Invalid package spec: ${rawSpec}`);
  }
  if (!spec.name) {
    throw new PnpmError("INVALID_PACKAGE_SPEC", `Invalid package spec: ${rawSpec}`);
  }
  return { name: spec.name, rawSpec: spec.rawSpec };
}
function requireStageId(params, subcommand) {
  if (!params[0]) {
    throw new PnpmError("STAGE_ID_REQUIRED", `Missing required <stage-id> for "pnpm stage ${subcommand}"`);
  }
  const stageId = params[0];
  if (!UUID_REGEX.test(stageId)) {
    throw new PnpmError("INVALID_STAGE_ID", "stage-id must be a valid UUID");
  }
  return stageId;
}
var import_npm_package_arg11, UUID_REGEX;
var init_parsing = __esm({
  "../releasing/commands/lib/stage/parsing.js"() {
    "use strict";
    init_lib2();
    import_npm_package_arg11 = __toESM(require_npa(), 1);
    UUID_REGEX = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
  }
});

// ../releasing/commands/lib/stage/errors.js
var StageRegistryError;
var init_errors2 = __esm({
  "../releasing/commands/lib/stage/errors.js"() {
    "use strict";
    init_lib2();
    StageRegistryError = class extends PnpmError {
      action;
      status;
      statusText;
      text;
      constructor(opts2) {
        const statusDisplay = opts2.statusText ? `${opts2.status} ${opts2.statusText}` : opts2.status.toString();
        const trimmedText = opts2.text.trim();
        super("STAGE_REGISTRY_ERROR", `Failed to ${opts2.action} (status ${statusDisplay})${trimmedText ? `: ${trimmedText}` : ""}`);
        this.action = opts2.action;
        this.status = opts2.status;
        this.statusText = opts2.statusText;
        this.text = opts2.text;
      }
    };
  }
});

// ../releasing/commands/lib/stage/request.js
async function stageJsonRequest(context, params) {
  const response = await stageRequest(context, {
    url: params.url,
    action: params.action,
    init: { method: "GET" }
  });
  return await response.json();
}
async function stageRequestWithOtp(context, params) {
  return withOtpHandling({
    context: createPublishContext(context.opts),
    fetchOptions: createWebAuthFetchOptions(context.opts),
    operation: async (otp) => stageRequest(context, {
      url: params.url,
      action: params.action,
      init: params.init,
      otp: otp ?? getConfiguredOtp(context.opts)
    })
  });
}
async function stageRequest(context, params) {
  const init2 = params.init ?? { method: "GET" };
  const response = await context.fetchFromRegistry(params.url, {
    authHeaderValue: context.authHeaderValue,
    body: init2.body,
    fullMetadata: true,
    headers: {
      "npm-auth-type": "web",
      "npm-command": "stage",
      ...init2.headers,
      ...params.otp != null ? { "npm-otp": params.otp } : {}
    },
    method: init2.method,
    timeout: context.opts.fetchTimeout
  });
  if (!response.ok) {
    await throwOnErrorResponse(response, params.action);
  }
  return response;
}
async function throwOnErrorResponse(response, action) {
  let text = "";
  try {
    text = await response.text();
  } catch {
  }
  let parsed;
  try {
    parsed = text ? JSON.parse(text) : void 0;
  } catch {
  }
  if (response.status === 401 && isOtpChallenge(response, parsed)) {
    throw SyntheticOtpError.fromUnknownBody(globalWarn, parsed);
  }
  throw new StageRegistryError({
    action,
    status: response.status,
    statusText: response.statusText,
    text
  });
}
function isOtpChallenge(response, body) {
  if (hasWebAuthUrls(body))
    return true;
  const wwwAuthenticate = response.headers.get("www-authenticate")?.toLowerCase();
  return wwwAuthenticate?.includes("otp") === true;
}
function hasWebAuthUrls(body) {
  if (body == null || typeof body !== "object")
    return false;
  const record = body;
  return typeof record.authUrl === "string" && typeof record.doneUrl === "string";
}
function getConfiguredOtp(opts2) {
  if (typeof opts2.otp === "string")
    return opts2.otp;
  const cliOtp = opts2.cliOptions?.otp;
  return typeof cliOtp === "string" ? cliOtp : void 0;
}
function createWebAuthFetchOptions(opts2) {
  return {
    method: "GET",
    retry: {
      factor: opts2.fetchRetryFactor,
      maxTimeout: opts2.fetchRetryMaxtimeout,
      minTimeout: opts2.fetchRetryMintimeout,
      retries: opts2.fetchRetries
    },
    timeout: opts2.fetchTimeout
  };
}
var init_request = __esm({
  "../releasing/commands/lib/stage/request.js"() {
    "use strict";
    init_lib3();
    init_lib62();
    init_publishPackedPkg();
    init_errors2();
  }
});

// ../releasing/commands/lib/stage/approve.js
async function stageApprove(opts2, params) {
  const stageId = requireStageId(params, "approve");
  const context = createStageContext(opts2);
  await stageRequestWithOtp(context, {
    url: new URL(`-/stage/${stageId}/approve`, context.registry).href,
    init: { method: "POST" },
    action: `approve staged package ${stageId}`
  });
  return `Staged package ${stageId} approved and published successfully.`;
}
var init_approve = __esm({
  "../releasing/commands/lib/stage/approve.js"() {
    "use strict";
    init_context();
    init_parsing();
    init_request();
  }
});

// ../releasing/commands/lib/tarball/summarizeTarball.js
import { createHash as createHash3 } from "node:crypto";
import { gunzipSync as gunzipSync2 } from "node:zlib";
async function summarizeTarball(tarballData) {
  const extract = import_tar_stream3.default.extract();
  const files = [];
  const bundled = /* @__PURE__ */ new Set();
  let manifest;
  let entryCount = 0;
  let unpackedSize = 0;
  await new Promise((resolve3, reject3) => {
    extract.on("entry", (header, stream2, next2) => {
      const chunks = [];
      if (header.type === "file") {
        entryCount++;
        unpackedSize += header.size ?? 0;
        files.push({ path: header.name.replace(/^package\//, "") });
        const bundledMatch = /^package\/node_modules\/((?:@[^/]+\/)?[^/]+)/.exec(header.name);
        if (bundledMatch?.[1]) {
          bundled.add(bundledMatch[1]);
        }
      }
      if (header.name === "package/package.json") {
        stream2.on("data", (chunk) => chunks.push(Buffer.from(chunk)));
      }
      stream2.on("error", reject3);
      stream2.on("end", () => {
        if (header.name === "package/package.json") {
          try {
            manifest = JSON.parse(Buffer.concat(chunks).toString());
          } catch (error) {
            reject3(error);
            return;
          }
        }
        next2();
      });
      stream2.resume();
    });
    extract.on("error", reject3);
    extract.on("finish", resolve3);
    extract.end(maybeGunzip(tarballData));
  });
  if (!manifest?.name || !manifest.version) {
    throw new PnpmError("STAGE_TARBALL_MANIFEST_NOT_FOUND", "Could not read package.json from tarball");
  }
  files.sort((a2, b) => a2.path.localeCompare(b.path, "en"));
  return {
    id: manifest._id ?? `${manifest.name}@${manifest.version}`,
    name: manifest.name,
    version: manifest.version,
    size: tarballData.byteLength,
    unpackedSize,
    shasum: createHash3("sha1").update(tarballData).digest("hex"),
    integrity: `sha512-${createHash3("sha512").update(tarballData).digest("base64")}`,
    filename: `${normalizePackageName(manifest.name)}-${manifest.version}.tgz`,
    files,
    entryCount,
    bundled: bundled.size > 0 ? Array.from(bundled).sort() : extractBundledDependencies(manifest)
  };
}
function maybeGunzip(tarballData) {
  try {
    return gunzipSync2(tarballData);
  } catch {
    return tarballData;
  }
}
function normalizePackageName(name) {
  return name.replace("@", "").replace("/", "-");
}
var import_tar_stream3;
var init_summarizeTarball = __esm({
  "../releasing/commands/lib/tarball/summarizeTarball.js"() {
    "use strict";
    init_lib2();
    import_tar_stream3 = __toESM(require_tar_stream(), 1);
    init_publishSummary();
  }
});

// ../releasing/commands/lib/stage/rendering.js
function renderStageItem(item) {
  const { id, packageName, version: version2, tag, createdAt, actor, actorType, shasum, ...rest } = item;
  return renderKeyValues({
    id,
    "package name": packageName,
    version: version2,
    tag,
    "date staged": createdAt,
    "staged by": actorType ? `${actor ?? ""} (${actorType})` : actor,
    shasum,
    ...rest
  });
}
function renderTarballSummary(summary) {
  return `package: ${summary.name}@${summary.version}
Tarball Contents
${summary.files.map(({ path: path218 }) => path218).join("\n")}
Tarball Details
name: ${summary.name}
version: ${summary.version}
filename: ${summary.filename}
package size: ${summary.size}
unpacked size: ${summary.unpackedSize}
shasum: ${summary.shasum}
integrity: ${summary.integrity}
total files: ${summary.entryCount}`;
}
function renderStagePublishSummary(summary, opts2) {
  const id = "id" in summary && summary.id ? summary.id : summary.name && summary.version ? `${summary.name}@${summary.version}` : summary.name ?? "<unknown package>";
  if (opts2.dryRun)
    return `+ ${id} (would stage)`;
  if ("stageId" in summary && summary.stageId) {
    return `+ ${id} (staged with id ${summary.stageId})`;
  }
  return `+ ${id} (staged)`;
}
function normalizePackageName2(name) {
  return name.replace("@", "").replace("/", "-");
}
function renderKeyValues(values) {
  return Object.entries(values).flatMap(([key, value]) => value == null ? [] : [`${key}: ${renderValue(value)}`]).join("\n");
}
function renderValue(value) {
  return typeof value === "object" ? JSON.stringify(value) : String(value);
}
var init_rendering = __esm({
  "../releasing/commands/lib/stage/rendering.js"() {
    "use strict";
  }
});

// ../releasing/commands/lib/stage/download.js
import fs105 from "node:fs/promises";
import path199 from "node:path";
async function stageDownload(opts2, params) {
  const stageId = requireStageId(params, "download");
  const context = createStageContext(opts2);
  const response = await stageRequest(context, {
    url: new URL(`-/stage/${stageId}/tarball`, context.registry).href,
    init: { method: "GET" },
    action: `download staged package ${stageId}`
  });
  const tarballData = Buffer.from(await response.arrayBuffer());
  const summary = await summarizeTarball(tarballData);
  const filename = `${normalizePackageName2(summary.name)}-${summary.version}-${stageId}.tgz`;
  const downloadedSummary = { ...summary, filename };
  await fs105.writeFile(path199.resolve(opts2.dir ?? process.cwd(), filename), tarballData);
  if (opts2.json)
    return JSON.stringify({ [summary.name]: downloadedSummary }, null, 2);
  return `${renderTarballSummary(downloadedSummary)}
${filename}`;
}
var init_download = __esm({
  "../releasing/commands/lib/stage/download.js"() {
    "use strict";
    init_summarizeTarball();
    init_context();
    init_parsing();
    init_rendering();
    init_request();
  }
});

// ../releasing/commands/lib/stage/help.js
function help63() {
  return renderHelp({
    description: "Stage packages for publishing, deferring proof-of-presence (2FA) to a later point in time.",
    descriptionLists: [
      {
        title: "Subcommands",
        list: [
          {
            description: "Stage a package for publishing.",
            name: "publish"
          },
          {
            description: "List all staged package versions.",
            name: "list"
          },
          {
            description: "View details of a specific staged package.",
            name: "view"
          },
          {
            description: "Approve a staged package, publishing it to the npm registry.",
            name: "approve"
          },
          {
            description: "Reject a staged package, removing it from the registry.",
            name: "reject"
          },
          {
            description: "Download the tarball of a staged package for inspection.",
            name: "download"
          }
        ]
      },
      {
        title: "Options",
        list: [
          {
            description: "The base URL of the npm registry.",
            name: "--registry <url>"
          },
          {
            description: "Show information in JSON format for list, view, publish, and download.",
            name: "--json"
          },
          {
            description: 'Registers the staged package with the given tag. By default, the "latest" tag is used.',
            name: "--tag <tag>"
          },
          {
            description: "Tells the registry whether the staged package should be public or restricted.",
            name: "--access <public|restricted>"
          },
          {
            description: "Does everything stage publish would do except uploading to the registry.",
            name: "--dry-run"
          },
          {
            description: "One-time password for approve and reject.",
            name: "--otp"
          },
          {
            description: "Stage all publishable packages from the workspace.",
            name: "--recursive",
            shortAlias: "-r"
          }
        ]
      },
      FILTERING
    ],
    url: docsUrl("stage"),
    usages: [
      "pnpm stage publish [<tarball>|<dir>] [--tag <tag>] [--access <public|restricted>] [options]",
      "pnpm stage list [<package-spec>]",
      "pnpm stage view <stage-id>",
      "pnpm stage approve <stage-id>",
      "pnpm stage reject <stage-id>",
      "pnpm stage download <stage-id>"
    ]
  });
}
var init_help = __esm({
  "../releasing/commands/lib/stage/help.js"() {
    "use strict";
    init_lib92();
    init_lib29();
    init_lib63();
  }
});

// ../releasing/commands/lib/stage/list.js
async function stageList(opts2, params) {
  const packageFilter = parsePackageFilter(params[0]);
  const context = createStageContext(opts2, packageFilter);
  const items = [];
  let page = 0;
  while (true) {
    const url7 = new URL("-/stage", context.registry);
    url7.searchParams.set("page", page.toString());
    url7.searchParams.set("perPage", PER_PAGE.toString());
    if (packageFilter) {
      url7.searchParams.set("package", packageFilter);
    }
    const res = await stageJsonRequest(context, { url: url7.href, action: "list staged packages" });
    items.push(...res.items);
    if (items.length >= res.total || res.items.length < PER_PAGE)
      break;
    page++;
  }
  if (opts2.json)
    return JSON.stringify(items, null, 2);
  if (items.length === 0) {
    return packageFilter ? `No staged versions of package name "${packageFilter}".` : "No staged packages found.";
  }
  return items.map(renderStageItem).join("\n\n");
}
function parsePackageFilter(rawSpec) {
  if (!rawSpec)
    return void 0;
  const spec = parseStagePackageSpec(rawSpec);
  if (spec.rawSpec !== "" && spec.rawSpec !== "*") {
    throw new PnpmError("STAGE_VERSION_SPECIFIER_UNSUPPORTED", "Version specifiers are not supported for listing staged packages");
  }
  return spec.name;
}
var PER_PAGE;
var init_list2 = __esm({
  "../releasing/commands/lib/stage/list.js"() {
    "use strict";
    init_lib2();
    init_context();
    init_parsing();
    init_rendering();
    init_request();
    PER_PAGE = 100;
  }
});

// ../releasing/commands/lib/stage/publish.js
async function stagePublish(opts2, params) {
  const result2 = await publish2({
    ...opts2,
    stage: true
  }, params);
  if (opts2.json) {
    if (result2.publishSummary) {
      return { output: JSON.stringify(keyByPackageName([result2.publishSummary]), null, 2), exitCode: 0 };
    }
    if (result2.publishedPackages) {
      return { output: JSON.stringify(keyByPackageName(result2.publishedPackages), null, 2), exitCode: result2.exitCode ?? 0 };
    }
  }
  const publishedPackages = result2.publishSummary ? [result2.publishSummary] : result2.publishedPackages ?? [];
  if (publishedPackages.length > 0) {
    return {
      output: publishedPackages.map((summary) => renderStagePublishSummary(summary, { dryRun: opts2.dryRun === true })).join("\n"),
      exitCode: result2.exitCode ?? 0
    };
  }
  if (result2.exitCode)
    return { exitCode: result2.exitCode };
  return void 0;
}
function keyByPackageName(packages) {
  const keyed = {};
  for (const pkg of packages) {
    const key = pkg.name ?? ("id" in pkg ? pkg.id : void 0);
    if (key)
      keyed[key] = pkg;
  }
  return keyed;
}
var init_publish3 = __esm({
  "../releasing/commands/lib/stage/publish.js"() {
    "use strict";
    init_publish();
    init_rendering();
  }
});

// ../releasing/commands/lib/stage/reject.js
async function stageReject(opts2, params) {
  const stageId = requireStageId(params, "reject");
  const context = createStageContext(opts2);
  globalWarn("Rejecting will permanently delete this staged publish record and tarball from the registry.");
  await stageRequestWithOtp(context, {
    url: new URL(`-/stage/${stageId}`, context.registry).href,
    init: { method: "DELETE" },
    action: `reject staged package ${stageId}`
  });
  return `Staged package ${stageId} has been rejected.`;
}
var init_reject3 = __esm({
  "../releasing/commands/lib/stage/reject.js"() {
    "use strict";
    init_lib3();
    init_context();
    init_parsing();
    init_request();
  }
});

// ../releasing/commands/lib/stage/types.js
var STAGE_SUBCOMMANDS;
var init_types6 = __esm({
  "../releasing/commands/lib/stage/types.js"() {
    "use strict";
    init_publish();
    STAGE_SUBCOMMANDS = ["publish", "list", "view", "approve", "reject", "download"];
  }
});

// ../releasing/commands/lib/stage/view.js
async function stageView(opts2, params) {
  const stageId = requireStageId(params, "view");
  const context = createStageContext(opts2);
  const item = await stageJsonRequest(context, {
    url: new URL(`-/stage/${stageId}`, context.registry).href,
    action: `view staged package ${stageId}`
  });
  return opts2.json ? JSON.stringify(item, null, 2) : renderStageItem(item);
}
var init_view3 = __esm({
  "../releasing/commands/lib/stage/view.js"() {
    "use strict";
    init_context();
    init_parsing();
    init_rendering();
    init_request();
  }
});

// ../releasing/commands/lib/stage/index.js
var stage_exports = {};
__export(stage_exports, {
  cliOptionsTypes: () => cliOptionsTypes59,
  commandNames: () => commandNames63,
  completion: () => completion6,
  handler: () => handler63,
  help: () => help63,
  rcOptionsTypes: () => rcOptionsTypes56
});
function rcOptionsTypes56() {
  return {
    ...rcOptionsTypes54(),
    ...pick_default([
      "registry"
    ], types2)
  };
}
function cliOptionsTypes59() {
  return cliOptionsTypes57();
}
async function handler63(opts2, params) {
  const subcommand = params[0];
  const subcommandParams = params.slice(1);
  switch (subcommand) {
    case "publish":
      return stagePublish(opts2, subcommandParams);
    case "list":
      return stageList(opts2, subcommandParams);
    case "view":
      return stageView(opts2, subcommandParams);
    case "approve":
      return stageApprove(opts2, subcommandParams);
    case "reject":
      return stageReject(opts2, subcommandParams);
    case "download":
      return stageDownload(opts2, subcommandParams);
    case void 0:
      throw new PnpmError("STAGE_SUBCOMMAND_REQUIRED", "Stage subcommand is required", {
        hint: `Use one of: ${STAGE_SUBCOMMANDS.join(", ")}`
      });
    default:
      throw new PnpmError("STAGE_UNKNOWN_SUBCOMMAND", `Unknown stage subcommand "${subcommand}"`, {
        hint: `Use one of: ${STAGE_SUBCOMMANDS.join(", ")}`
      });
  }
}
var commandNames63, completion6;
var init_stage = __esm({
  "../releasing/commands/lib/stage/index.js"() {
    "use strict";
    init_lib61();
    init_lib2();
    init_es();
    init_publish();
    init_approve();
    init_download();
    init_help();
    init_list2();
    init_publish3();
    init_reject3();
    init_types6();
    init_view3();
    commandNames63 = ["stage"];
    completion6 = async (_cliOpts, params) => {
      if (params.length > 0)
        return [];
      return STAGE_SUBCOMMANDS.map((name) => ({ name }));
    };
  }
});

// ../releasing/commands/lib/version/index.js
import path200 from "node:path";
function rcOptionsTypes57() {
  return pick_default([
    "allow-same-version",
    "commit-hooks",
    "git-checks",
    "git-tag-version",
    "message",
    "sign-git-tag",
    "tag-version-prefix"
  ], types2);
}
function cliOptionsTypes60() {
  return {
    ...rcOptionsTypes57(),
    json: Boolean,
    preid: String,
    recursive: Boolean
  };
}
function isBumpType(value) {
  return BUMP_TYPES.includes(value);
}
function help64() {
  return renderHelp({
    description: "Bumps the version of a package.",
    usages: [
      "pnpm version <newversion>",
      "pnpm version <major|minor|patch|premajor|preminor|prepatch|prerelease>"
    ],
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: "Don't check if working tree is clean",
            name: "--no-git-checks"
          },
          {
            description: "Sets the prerelease identifier (e.g. alpha, beta, rc)",
            name: "--preid <preid>"
          },
          {
            description: 'Sets the tag prefix. Default is "v". Set to empty string to remove the prefix.',
            name: "--tag-version-prefix <prefix>"
          },
          {
            description: "Allow bumping to the same version",
            name: "--allow-same-version"
          },
          {
            description: 'Commit message. "%s" is replaced with the new version. Default is "%s".',
            name: "--message <message>"
          },
          {
            description: "Don't create a commit or tag for the version bump. Git commits and tags are always skipped in recursive mode.",
            name: "--no-git-tag-version"
          },
          {
            description: "Skip running git commit hooks when committing the version bump",
            name: "--no-commit-hooks"
          },
          {
            description: "Sign the generated git tag with GPG",
            name: "--sign-git-tag"
          },
          {
            description: "Filter packages by name (glob pattern)",
            name: "--filter <pattern>"
          },
          {
            description: "Show information in JSON format",
            name: "--json"
          },
          {
            description: "Apply command to all packages in workspace",
            name: "--recursive"
          }
        ]
      }
    ]
  });
}
async function handler64(opts2, params) {
  const rawBump = params[0];
  if (!rawBump) {
    throw new PnpmError("INVALID_VERSION_BUMP", "A version argument is required. Must be a valid semver version (e.g. 1.2.3) or one of: major, minor, patch, premajor, preminor, prepatch, prerelease");
  }
  const explicitVersion = (0, import_semver53.valid)(rawBump);
  if (!explicitVersion && !isBumpType(rawBump)) {
    throw new PnpmError("INVALID_VERSION_BUMP", `Invalid version argument: ${rawBump}. Must be a valid semver version (e.g. 1.2.3) or one of: major, minor, patch, premajor, preminor, prepatch, prerelease`);
  }
  const gitCwd = opts2.workspaceDir ?? opts2.dir;
  if (opts2.gitChecks !== false && await isGitRepo({ cwd: gitCwd })) {
    if (!await isWorkingTreeClean({ cwd: gitCwd })) {
      throw new PnpmError("UNCLEAN_WORKING_TREE", "Working tree is not clean. Commit or stash your changes.");
    }
  }
  const changes = [];
  if (opts2.recursive) {
    const workspaceDir = opts2.workspaceDir || opts2.dir;
    const filters = [];
    if (opts2.filter && opts2.filter.length > 0) {
      opts2.filter.forEach((filterPattern) => {
        filters.push({
          filter: filterPattern,
          followProdDepsOnly: !!opts2.filterProd && opts2.filterProd.length > 0
        });
      });
    }
    const result2 = await filterProjectsFromDir(workspaceDir, filters, {
      workspaceDir,
      prefix: opts2.dir
    });
    const pkgDirs = Object.keys(result2.selectedProjectsGraph);
    const bumpResults = await Promise.all(pkgDirs.map((pkgDir) => bumpPackageVersion(pkgDir, rawBump, explicitVersion, opts2)));
    for (const change of bumpResults) {
      if (change) {
        changes.push(change);
      }
    }
  } else {
    const change = await bumpPackageVersion(opts2.dir, rawBump, explicitVersion, opts2);
    if (change) {
      changes.push(change);
    }
  }
  if (changes.length === 0) {
    throw new PnpmError("NO_PACKAGES_TO_VERSION", "No packages to version");
  }
  if (!opts2.recursive && opts2.gitTagVersion !== false && await isGitRepo({ cwd: gitCwd })) {
    await commitAndTag(changes, { ...opts2, cwd: gitCwd });
  }
  await Promise.all(changes.map((change) => runVersionLifecycleHook("postversion", change, opts2)));
  if (opts2.json) {
    return JSON.stringify(changes.map(({ manifestPath: _manifestPath, ...change }) => change), null, 2);
  }
  let output = "Version bumped successfully:\n";
  for (const change of changes) {
    output += `${change.name}: ${change.currentVersion} \u2192 ${change.newVersion}
`;
  }
  return output;
}
async function bumpPackageVersion(pkgDir, rawBump, explicitVersion, opts2) {
  const { manifest, writeProjectManifest: writeProjectManifest2, fileName } = await readProjectManifest2(pkgDir);
  if (!manifest.name || !manifest.version) {
    return null;
  }
  const currentVersion = manifest.version;
  if (!(0, import_semver53.valid)(currentVersion)) {
    throw new PnpmError("INVALID_VERSION", `Invalid version in ${pkgDir}: ${currentVersion}`);
  }
  const preVersionChange = {
    name: manifest.name,
    currentVersion,
    newVersion: currentVersion,
    path: pkgDir,
    manifestPath: path200.join(pkgDir, fileName)
  };
  await runVersionLifecycleHook("preversion", preVersionChange, opts2);
  const newVersion = explicitVersion ?? (0, import_semver53.inc)(currentVersion, rawBump, false, opts2.preid);
  if (!newVersion) {
    throw new PnpmError("VERSION_BUMP_FAILED", `Failed to bump version from ${currentVersion} using ${rawBump}`);
  }
  if (newVersion === currentVersion && !opts2.allowSameVersion) {
    throw new PnpmError("VERSION_NOT_CHANGED", `Version was not changed: ${currentVersion}`);
  }
  manifest.version = newVersion;
  await writeProjectManifest2(manifest);
  const change = {
    name: manifest.name,
    currentVersion,
    newVersion,
    path: pkgDir,
    manifestPath: path200.join(pkgDir, fileName)
  };
  await runVersionLifecycleHook("version", change, opts2);
  return change;
}
async function runVersionLifecycleHook(stage, change, opts2) {
  if (opts2.ignoreScripts === true)
    return;
  const { manifest } = await readProjectManifest2(change.path);
  const lifecycleOpts = {
    depPath: change.name,
    extraBinPaths: opts2.extraBinPaths,
    extraEnv: opts2.extraEnv,
    initCwd: opts2.dir,
    pkgRoot: change.path,
    rootModulesDir: path200.join(change.path, opts2.modulesDir ?? "node_modules"),
    scriptShell: opts2.scriptShell,
    scriptsPrependNodePath: opts2.scriptsPrependNodePath,
    shellEmulator: opts2.shellEmulator,
    stdio: "inherit",
    unsafePerm: opts2.unsafePerm ?? false,
    userAgent: opts2.userAgent
  };
  await runLifecycleHook(stage, manifest, lifecycleOpts);
}
async function commitAndTag(changes, opts2) {
  const resolvedCwd = path200.resolve(opts2.cwd);
  const [change] = changes;
  const rawMessage = opts2.message ?? "%s";
  const message = rawMessage.replace(/%s/g, change.newVersion);
  const tagPrefix = opts2.tagVersionPrefix ?? "v";
  const tagName = `${tagPrefix}${change.newVersion}`;
  const execOpts = { cwd: opts2.cwd };
  const resolvedManifestPath = path200.resolve(change.manifestPath);
  const relativeManifestPath = path200.relative(resolvedCwd, resolvedManifestPath);
  if (relativeManifestPath === "" || path200.isAbsolute(relativeManifestPath) || relativeManifestPath.startsWith(`..${path200.sep}`) || relativeManifestPath === "..") {
    throw new PnpmError("INVALID_MANIFEST_PATH", `Cannot stage manifest outside of git cwd: ${change.manifestPath}`);
  }
  const manifestPath = relativeManifestPath.split(path200.sep).join("/");
  await safeExeca("git", ["add", manifestPath], execOpts);
  const commitArgs = ["commit", "-m", message];
  if (opts2.commitHooks === false) {
    commitArgs.push("--no-verify");
  }
  if (opts2.allowSameVersion) {
    commitArgs.push("--allow-empty");
  }
  await safeExeca("git", commitArgs, execOpts);
  const tagArgs = ["tag"];
  if (opts2.signGitTag) {
    tagArgs.push("-s");
  } else {
    tagArgs.push("-a");
  }
  tagArgs.push(tagName, "-m", message);
  await safeExeca("git", tagArgs, execOpts);
}
var import_semver53, commandNames64, BUMP_TYPES, version;
var init_version = __esm({
  "../releasing/commands/lib/version/index.js"() {
    "use strict";
    init_lib29();
    init_lib61();
    init_lib2();
    init_lib44();
    init_lib59();
    init_lib32();
    init_lib26();
    init_es();
    init_lib63();
    import_semver53 = __toESM(require_semver2(), 1);
    commandNames64 = ["version"];
    BUMP_TYPES = ["major", "minor", "patch", "premajor", "preminor", "prepatch", "prerelease"];
    version = {
      handler: handler64,
      help: help64,
      commandNames: commandNames64,
      cliOptionsTypes: cliOptionsTypes60,
      rcOptionsTypes: rcOptionsTypes57
    };
  }
});

// ../releasing/commands/lib/index.js
var init_lib167 = __esm({
  "../releasing/commands/lib/index.js"() {
    "use strict";
    init_deploy2();
    init_pack_app();
    init_publish2();
    init_stage();
    init_version();
  }
});

// ../store/commands/lib/inspecting/catFile.js
var catFile_exports = {};
__export(catFile_exports, {
  cliOptionsTypes: () => cliOptionsTypes61,
  commandNames: () => commandNames65,
  handler: () => handler65,
  help: () => help65,
  rcOptionsTypes: () => rcOptionsTypes58,
  skipPackageManagerCheck: () => skipPackageManagerCheck7
});
import path201 from "node:path";
import util51 from "node:util";
function cliOptionsTypes61() {
  return {};
}
function help65() {
  return renderHelp({
    description: "Prints the contents of a file based on the hash value stored in the index file.",
    descriptionLists: [],
    usages: ["pnpm cat-file <hash>"]
  });
}
async function handler65(opts2, params) {
  if (!params || params.length === 0) {
    throw new PnpmError("MISSING_HASH", "Missing file hash", {
      hint: help65()
    });
  }
  const [, integrityHash] = params[0].match(INTEGRITY_REGEX);
  const toHex = Buffer.from(integrityHash, "base64").toString("hex");
  const storeDir = await getStorePath({
    pkgRoot: process.cwd(),
    storePath: opts2.storeDir,
    pnpmHomeDir: opts2.pnpmHomeDir
  });
  const cafsDir = path201.join(storeDir, "files");
  const filePath = path201.resolve(cafsDir, toHex.slice(0, 2), toHex.slice(2));
  try {
    return lib_default.readFileSync(filePath, "utf8");
  } catch (err) {
    if (util51.types.isNativeError(err) && "code" in err && err.code === "ENOENT") {
      throw new PnpmError("INVALID_HASH", "Corresponding hash file not found");
    }
    throw err;
  }
}
var INTEGRITY_REGEX, skipPackageManagerCheck7, commandNames65, rcOptionsTypes58;
var init_catFile = __esm({
  "../store/commands/lib/inspecting/catFile.js"() {
    "use strict";
    init_lib2();
    init_lib12();
    init_lib89();
    init_lib63();
    INTEGRITY_REGEX = /^[^-]+-([a-z0-9+/=]+)$/i;
    skipPackageManagerCheck7 = true;
    commandNames65 = ["cat-file"];
    rcOptionsTypes58 = cliOptionsTypes61;
  }
});

// ../store/commands/lib/inspecting/catIndex.js
var catIndex_exports = {};
__export(catIndex_exports, {
  cliOptionsTypes: () => cliOptionsTypes62,
  commandNames: () => commandNames66,
  handler: () => handler66,
  help: () => help66,
  rcOptionsTypes: () => rcOptionsTypes59,
  skipPackageManagerCheck: () => skipPackageManagerCheck8
});
import util52 from "node:util";
function cliOptionsTypes62() {
  return {};
}
function help66() {
  return renderHelp({
    description: "Prints the index file of a specific package from the store.",
    descriptionLists: [],
    usages: ["pnpm cat-index <pkg name>@<pkg version>"]
  });
}
async function handler66(opts2, params) {
  if (!params || params.length === 0) {
    throw new PnpmError("MISSING_PACKAGE_NAME", "Specify a package", {
      hint: help66()
    });
  }
  const wantedDependency = params[0];
  const { alias, bareSpecifier } = parseWantedDependency(wantedDependency) || {};
  if (!alias) {
    throw new PnpmError("INVALID_SELECTOR", `Cannot parse the "${wantedDependency}" selector`);
  }
  const storeDir = await getStorePath({
    pkgRoot: process.cwd(),
    storePath: opts2.storeDir,
    pnpmHomeDir: opts2.pnpmHomeDir
  });
  const { resolve: resolve3 } = createResolver2({
    ...opts2,
    configByUri: opts2.configByUri
  });
  const pkgSnapshot = await resolve3({ alias, bareSpecifier }, {
    lockfileDir: opts2.lockfileDir ?? opts2.dir,
    preferredVersions: {},
    projectDir: opts2.dir
  });
  const filesIndexFile = storeIndexKey(pkgSnapshot.resolution.integrity.toString(), `${alias}@${bareSpecifier}`);
  const storeIndex = new StoreIndex(storeDir);
  try {
    const pkgFilesIndex = storeIndex.get(filesIndexFile);
    if (!pkgFilesIndex) {
      throw new PnpmError("INVALID_PACKAGE", "No corresponding index file found. You can use pnpm list to see if the package is installed.");
    }
    return JSON.stringify(sortDeepKeys(pkgFilesIndex), replacer, 2);
  } finally {
    storeIndex.close();
  }
}
function replacer(key, value) {
  if (util52.types.isMap(value)) {
    const entries = Array.from(value.entries());
    entries.sort(([key1], [key2]) => (0, import_util21.lexCompare)(key1, key2));
    return Object.fromEntries(entries);
  }
  return value;
}
var import_util21, skipPackageManagerCheck8, commandNames66, rcOptionsTypes59;
var init_catIndex = __esm({
  "../store/commands/lib/inspecting/catIndex.js"() {
    "use strict";
    init_lib2();
    init_lib57();
    init_lib76();
    init_lib96();
    init_lib16();
    init_lib89();
    import_util21 = __toESM(require_dist3(), 1);
    init_lib63();
    skipPackageManagerCheck8 = true;
    commandNames66 = ["cat-index"];
    rcOptionsTypes59 = cliOptionsTypes62;
  }
});

// ../store/commands/lib/inspecting/findHash.js
var findHash_exports = {};
__export(findHash_exports, {
  INDEX_PATH_CLR: () => INDEX_PATH_CLR,
  PACKAGE_INFO_CLR: () => PACKAGE_INFO_CLR,
  cliOptionsTypes: () => cliOptionsTypes63,
  commandNames: () => commandNames67,
  handler: () => handler67,
  help: () => help67,
  rcOptionsTypes: () => rcOptionsTypes60,
  skipPackageManagerCheck: () => skipPackageManagerCheck9
});
function cliOptionsTypes63() {
  return {};
}
function help67() {
  return renderHelp({
    description: "Experimental! Lists the packages that include the file with the specified hash.",
    descriptionLists: [],
    usages: ["pnpm find-hash <hash>"]
  });
}
async function handler67(opts2, params) {
  if (!params || params.length === 0) {
    throw new PnpmError("MISSING_HASH", "`pnpm find-hash` requires the hash");
  }
  let hash2 = params[0];
  if (hash2.includes("-")) {
    const base64Part = hash2.split("-").slice(1).join("-");
    hash2 = Buffer.from(base64Part, "base64").toString("hex");
  }
  hash2 = hash2.toLowerCase();
  const storeDir = await getStorePath({
    pkgRoot: process.cwd(),
    storePath: opts2.storeDir,
    pnpmHomeDir: opts2.pnpmHomeDir
  });
  const result2 = [];
  const storeIndex = new StoreIndex(storeDir);
  try {
    for (const [indexKey, data] of storeIndex.entries()) {
      const pkgFilesIndex = data;
      if (!pkgFilesIndex)
        continue;
      if (pkgFilesIndex.files) {
        for (const file of pkgFilesIndex.files.values()) {
          if (file?.digest === hash2) {
            result2.push({ name: pkgFilesIndex.manifest?.name ?? "unknown", version: pkgFilesIndex.manifest?.version ?? "unknown", indexKey });
            continue;
          }
        }
      }
      if (pkgFilesIndex.sideEffects) {
        for (const { added } of pkgFilesIndex.sideEffects.values()) {
          if (!added)
            continue;
          for (const file of added.values()) {
            if (file?.digest === hash2) {
              result2.push({ name: pkgFilesIndex.manifest?.name ?? "unknown", version: pkgFilesIndex.manifest?.version ?? "unknown", indexKey });
              continue;
            }
          }
        }
      }
    }
  } finally {
    storeIndex.close();
  }
  if (!result2.length) {
    throw new PnpmError("INVALID_FILE_HASH", "No package or index file matching this hash was found.");
  }
  let acc = "";
  for (const { name, version: version2, indexKey } of result2) {
    acc += `${PACKAGE_INFO_CLR(name)}@${PACKAGE_INFO_CLR(version2)}  ${INDEX_PATH_CLR(indexKey)}
`;
  }
  return acc;
}
var PACKAGE_INFO_CLR, INDEX_PATH_CLR, skipPackageManagerCheck9, commandNames67, rcOptionsTypes60;
var init_findHash = __esm({
  "../store/commands/lib/inspecting/findHash.js"() {
    "use strict";
    init_lib2();
    init_lib16();
    init_lib89();
    init_source2();
    init_lib63();
    PACKAGE_INFO_CLR = source_default.greenBright;
    INDEX_PATH_CLR = source_default.hex("#078487");
    skipPackageManagerCheck9 = true;
    commandNames67 = ["find-hash"];
    rcOptionsTypes60 = cliOptionsTypes63;
  }
});

// ../store/commands/lib/inspecting/index.js
var init_inspecting = __esm({
  "../store/commands/lib/inspecting/index.js"() {
    "use strict";
    init_catFile();
    init_catIndex();
    init_findHash();
  }
});

// ../store/commands/lib/store/storeAdd.js
async function storeAdd(fuzzyDeps, opts2) {
  const reporter = opts2?.reporter;
  if (reporter != null && typeof reporter === "function") {
    streamParser.on("data", reporter);
  }
  const deps = fuzzyDeps.map((dep) => parseWantedDependency(dep));
  let hasFailures = false;
  const prefix = opts2.prefix ?? process.cwd();
  await Promise.all(deps.map(async (dep) => {
    try {
      const pkgResponse = await opts2.storeController.requestPackage(dep, {
        downloadPriority: 1,
        lockfileDir: prefix,
        preferredVersions: {},
        projectDir: prefix,
        supportedArchitectures: opts2.supportedArchitectures
      });
      await pkgResponse.fetching();
      globalInfo(`+ ${pkgResponse.body.id}`);
    } catch (e) {
      hasFailures = true;
      logger("store").error(e);
    }
  }));
  if (reporter != null && typeof reporter === "function") {
    streamParser.removeListener("data", reporter);
  }
  if (hasFailures) {
    throw new PnpmError("STORE_ADD_FAILURE", "Some packages have not been added correctly");
  }
}
var init_storeAdd = __esm({
  "../store/commands/lib/store/storeAdd.js"() {
    "use strict";
    init_lib2();
    init_lib3();
    init_lib96();
  }
});

// ../store/commands/lib/store/cleanExpiredDlxCache.js
import { promises as fs106, readdirSync as readdirSync3 } from "node:fs";
import path202 from "node:path";
import util53 from "node:util";
async function cleanExpiredDlxCache({ cacheDir, dlxCacheMaxAge, now }) {
  if (dlxCacheMaxAge === Infinity)
    return;
  const dlxCacheDir = path202.join(cacheDir, "dlx");
  const dlxCacheNames = readOptDir(dlxCacheDir);
  if (!dlxCacheNames)
    return;
  await Promise.all(dlxCacheNames.map(async (dlxCacheName) => {
    const dlxCachePath = path202.join(dlxCacheDir, dlxCacheName);
    const dlxCacheLink = path202.join(dlxCachePath, "pkg");
    let shouldClean;
    if (dlxCacheMaxAge <= 0) {
      shouldClean = true;
    } else {
      const dlxCacheLinkStats = await getStats(dlxCacheLink);
      shouldClean = dlxCacheLinkStats !== "ENOENT" && isOutdated(dlxCacheLinkStats, dlxCacheMaxAge, now);
    }
    if (shouldClean) {
      await fs106.rm(dlxCachePath, { recursive: true, force: true });
    }
  }));
  await cleanOrphans(dlxCacheDir);
}
async function cleanOrphans(dlxCacheDir) {
  const dlxCacheNames = readOptDir(dlxCacheDir);
  if (!dlxCacheNames)
    return;
  await Promise.all(dlxCacheNames.map(async (dlxCacheName) => {
    const dlxCachePath = path202.join(dlxCacheDir, dlxCacheName);
    const dlxCacheLink = path202.join(dlxCachePath, "pkg");
    const dlxCacheLinkStats = await getStats(dlxCacheLink);
    if (dlxCacheLinkStats === "ENOENT") {
      return fs106.rm(dlxCachePath, { recursive: true, force: true });
    }
    const dlxCacheLinkTarget = await getRealPath2(dlxCacheLink);
    const children = await fs106.readdir(dlxCachePath);
    await Promise.all(children.map(async (name) => {
      if (name === "pkg")
        return;
      const fullPath = path202.join(dlxCachePath, name);
      if (fullPath === dlxCacheLinkTarget)
        return;
      await fs106.rm(fullPath, { recursive: true, force: true });
    }));
  }));
}
function isOutdated(stats, dlxCacheMaxAge, now) {
  return stats.mtime.getTime() + dlxCacheMaxAge * 6e4 < now.getTime();
}
async function getStats(path218) {
  try {
    return await fs106.lstat(path218);
  } catch (err) {
    if (util53.types.isNativeError(err) && "code" in err && err.code === "ENOENT") {
      return "ENOENT";
    }
    throw err;
  }
}
function readOptDir(dirPath) {
  try {
    const dirEntries = [];
    for (const entry of readdirSync3(dirPath, {
      encoding: "utf-8",
      withFileTypes: true
    })) {
      if (entry.isDirectory()) {
        dirEntries.push(entry.name);
      }
    }
    return dirEntries;
  } catch (err) {
    if (util53.types.isNativeError(err) && "code" in err && err.code === "ENOENT") {
      return null;
    }
    throw err;
  }
}
async function getRealPath2(linkPath) {
  try {
    return await fs106.realpath(linkPath);
  } catch (err) {
    if (util53.types.isNativeError(err) && "code" in err && err.code === "ENOENT") {
      return null;
    }
    throw err;
  }
}
var init_cleanExpiredDlxCache = __esm({
  "../store/commands/lib/store/cleanExpiredDlxCache.js"() {
    "use strict";
  }
});

// ../store/commands/lib/store/cleanLockfileVerifiedCache.js
import fs107 from "node:fs";
import path203 from "node:path";
import util54 from "node:util";
function cleanLockfileVerifiedCache(cacheDir) {
  const cacheFilePath = path203.join(cacheDir, LOCKFILE_VERIFIED_CACHE_FILE);
  try {
    fs107.unlinkSync(cacheFilePath);
  } catch (err) {
    if (util54.types.isNativeError(err) && "code" in err && err.code === "ENOENT")
      return;
    throw err;
  }
}
var LOCKFILE_VERIFIED_CACHE_FILE;
var init_cleanLockfileVerifiedCache = __esm({
  "../store/commands/lib/store/cleanLockfileVerifiedCache.js"() {
    "use strict";
    LOCKFILE_VERIFIED_CACHE_FILE = "lockfile-verified.jsonl";
  }
});

// ../store/commands/lib/store/storePrune.js
async function storePrune(opts2) {
  const reporter = opts2?.reporter;
  if (reporter != null && typeof reporter === "function") {
    streamParser.on("data", reporter);
  }
  try {
    await opts2.storeController.prune(opts2.removeAlienFiles);
    await cleanExpiredDlxCache({
      cacheDir: opts2.cacheDir,
      dlxCacheMaxAge: opts2.dlxCacheMaxAge,
      now: /* @__PURE__ */ new Date()
    });
    cleanLockfileVerifiedCache(opts2.cacheDir);
    if (opts2.globalPkgDir) {
      cleanOrphanedInstallDirs(opts2.globalPkgDir);
    }
  } finally {
    await opts2.storeController.close();
    if (reporter != null && typeof reporter === "function") {
      streamParser.removeListener("data", reporter);
    }
  }
}
var init_storePrune = __esm({
  "../store/commands/lib/store/storePrune.js"() {
    "use strict";
    init_lib101();
    init_lib3();
    init_cleanExpiredDlxCache();
    init_cleanLockfileVerifiedCache();
  }
});

// ../crypto/integrity/lib/index.js
function formatIntegrity(algorithm, hexDigest) {
  return `${algorithm}-${Buffer.from(hexDigest, "hex").toString("base64")}`;
}
var init_lib168 = __esm({
  "../crypto/integrity/lib/index.js"() {
    "use strict";
    init_lib2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/ssri/8.0.1/4cd9b1dab620d4af2c67e5f312d10e33a774d26f86ce641803fa272526848e6c/node_modules/ssri/index.js
var require_ssri = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/ssri/8.0.1/4cd9b1dab620d4af2c67e5f312d10e33a774d26f86ce641803fa272526848e6c/node_modules/ssri/index.js"(exports2, module2) {
    "use strict";
    var crypto11 = __require("crypto");
    var MiniPass = require_minipass();
    var SPEC_ALGORITHMS = ["sha256", "sha384", "sha512"];
    var BASE64_REGEX = /^[a-z0-9+/]+(?:=?=?)$/i;
    var SRI_REGEX = /^([a-z0-9]+)-([^?]+)([?\S*]*)$/;
    var STRICT_SRI_REGEX = /^([a-z0-9]+)-([A-Za-z0-9+/=]{44,88})(\?[\x21-\x7E]*)?$/;
    var VCHAR_REGEX = /^[\x21-\x7E]+$/;
    var defaultOpts = {
      algorithms: ["sha512"],
      error: false,
      options: [],
      pickAlgorithm: getPrioritizedHash,
      sep: " ",
      single: false,
      strict: false
    };
    var ssriOpts = (opts2 = {}) => ({ ...defaultOpts, ...opts2 });
    var getOptString = (options) => !options || !options.length ? "" : `?${options.join("?")}`;
    var _onEnd = /* @__PURE__ */ Symbol("_onEnd");
    var _getOptions = /* @__PURE__ */ Symbol("_getOptions");
    var IntegrityStream = class extends MiniPass {
      constructor(opts2) {
        super();
        this.size = 0;
        this.opts = opts2;
        this[_getOptions]();
        const { algorithms = defaultOpts.algorithms } = opts2;
        this.algorithms = Array.from(
          new Set(algorithms.concat(this.algorithm ? [this.algorithm] : []))
        );
        this.hashes = this.algorithms.map(crypto11.createHash);
      }
      [_getOptions]() {
        const {
          integrity,
          size,
          options
        } = { ...defaultOpts, ...this.opts };
        this.sri = integrity ? parse7(integrity, this.opts) : null;
        this.expectedSize = size;
        this.goodSri = this.sri ? !!Object.keys(this.sri).length : false;
        this.algorithm = this.goodSri ? this.sri.pickAlgorithm(this.opts) : null;
        this.digests = this.goodSri ? this.sri[this.algorithm] : null;
        this.optString = getOptString(options);
      }
      emit(ev, data) {
        if (ev === "end") this[_onEnd]();
        return super.emit(ev, data);
      }
      write(data) {
        this.size += data.length;
        this.hashes.forEach((h2) => h2.update(data));
        return super.write(data);
      }
      [_onEnd]() {
        if (!this.goodSri) {
          this[_getOptions]();
        }
        const newSri = parse7(this.hashes.map((h2, i2) => {
          return `${this.algorithms[i2]}-${h2.digest("base64")}${this.optString}`;
        }).join(" "), this.opts);
        const match = this.goodSri && newSri.match(this.sri, this.opts);
        if (typeof this.expectedSize === "number" && this.size !== this.expectedSize) {
          const err = new Error(`stream size mismatch when checking ${this.sri}.
  Wanted: ${this.expectedSize}
  Found: ${this.size}`);
          err.code = "EBADSIZE";
          err.found = this.size;
          err.expected = this.expectedSize;
          err.sri = this.sri;
          this.emit("error", err);
        } else if (this.sri && !match) {
          const err = new Error(`${this.sri} integrity checksum failed when using ${this.algorithm}: wanted ${this.digests} but got ${newSri}. (${this.size} bytes)`);
          err.code = "EINTEGRITY";
          err.found = newSri;
          err.expected = this.digests;
          err.algorithm = this.algorithm;
          err.sri = this.sri;
          this.emit("error", err);
        } else {
          this.emit("size", this.size);
          this.emit("integrity", newSri);
          match && this.emit("verified", match);
        }
      }
    };
    var Hash = class {
      get isHash() {
        return true;
      }
      constructor(hash2, opts2) {
        opts2 = ssriOpts(opts2);
        const strict = !!opts2.strict;
        this.source = hash2.trim();
        this.digest = "";
        this.algorithm = "";
        this.options = [];
        const match = this.source.match(
          strict ? STRICT_SRI_REGEX : SRI_REGEX
        );
        if (!match) {
          return;
        }
        if (strict && !SPEC_ALGORITHMS.some((a2) => a2 === match[1])) {
          return;
        }
        this.algorithm = match[1];
        this.digest = match[2];
        const rawOpts = match[3];
        if (rawOpts) {
          this.options = rawOpts.slice(1).split("?");
        }
      }
      hexDigest() {
        return this.digest && Buffer.from(this.digest, "base64").toString("hex");
      }
      toJSON() {
        return this.toString();
      }
      toString(opts2) {
        opts2 = ssriOpts(opts2);
        if (opts2.strict) {
          if (!// The spec has very restricted productions for algorithms.
          // https://www.w3.org/TR/CSP2/#source-list-syntax
          (SPEC_ALGORITHMS.some((x) => x === this.algorithm) && // Usually, if someone insists on using a "different" base64, we
          // leave it as-is, since there's multiple standards, and the
          // specified is not a URL-safe variant.
          // https://www.w3.org/TR/CSP2/#base64_value
          this.digest.match(BASE64_REGEX) && // Option syntax is strictly visual chars.
          // https://w3c.github.io/webappsec-subresource-integrity/#grammardef-option-expression
          // https://tools.ietf.org/html/rfc5234#appendix-B.1
          this.options.every((opt) => opt.match(VCHAR_REGEX)))) {
            return "";
          }
        }
        const options = this.options && this.options.length ? `?${this.options.join("?")}` : "";
        return `${this.algorithm}-${this.digest}${options}`;
      }
    };
    var Integrity = class {
      get isIntegrity() {
        return true;
      }
      toJSON() {
        return this.toString();
      }
      isEmpty() {
        return Object.keys(this).length === 0;
      }
      toString(opts2) {
        opts2 = ssriOpts(opts2);
        let sep2 = opts2.sep || " ";
        if (opts2.strict) {
          sep2 = sep2.replace(/\S+/g, " ");
        }
        return Object.keys(this).map((k2) => {
          return this[k2].map((hash2) => {
            return Hash.prototype.toString.call(hash2, opts2);
          }).filter((x) => x.length).join(sep2);
        }).filter((x) => x.length).join(sep2);
      }
      concat(integrity, opts2) {
        opts2 = ssriOpts(opts2);
        const other = typeof integrity === "string" ? integrity : stringify(integrity, opts2);
        return parse7(`${this.toString(opts2)} ${other}`, opts2);
      }
      hexDigest() {
        return parse7(this, { single: true }).hexDigest();
      }
      // add additional hashes to an integrity value, but prevent
      // *changing* an existing integrity hash.
      merge(integrity, opts2) {
        opts2 = ssriOpts(opts2);
        const other = parse7(integrity, opts2);
        for (const algo in other) {
          if (this[algo]) {
            if (!this[algo].find((hash2) => other[algo].find((otherhash) => hash2.digest === otherhash.digest))) {
              throw new Error("hashes do not match, cannot update integrity");
            }
          } else {
            this[algo] = other[algo];
          }
        }
      }
      match(integrity, opts2) {
        opts2 = ssriOpts(opts2);
        const other = parse7(integrity, opts2);
        const algo = other.pickAlgorithm(opts2);
        return this[algo] && other[algo] && this[algo].find(
          (hash2) => other[algo].find(
            (otherhash) => hash2.digest === otherhash.digest
          )
        ) || false;
      }
      pickAlgorithm(opts2) {
        opts2 = ssriOpts(opts2);
        const pickAlgorithm = opts2.pickAlgorithm;
        const keys4 = Object.keys(this);
        return keys4.reduce((acc, algo) => {
          return pickAlgorithm(acc, algo) || acc;
        });
      }
    };
    module2.exports.parse = parse7;
    function parse7(sri, opts2) {
      if (!sri) return null;
      opts2 = ssriOpts(opts2);
      if (typeof sri === "string") {
        return _parse(sri, opts2);
      } else if (sri.algorithm && sri.digest) {
        const fullSri = new Integrity();
        fullSri[sri.algorithm] = [sri];
        return _parse(stringify(fullSri, opts2), opts2);
      } else {
        return _parse(stringify(sri, opts2), opts2);
      }
    }
    function _parse(integrity, opts2) {
      if (opts2.single) {
        return new Hash(integrity, opts2);
      }
      const hashes = integrity.trim().split(/\s+/).reduce((acc, string) => {
        const hash2 = new Hash(string, opts2);
        if (hash2.algorithm && hash2.digest) {
          const algo = hash2.algorithm;
          if (!acc[algo]) {
            acc[algo] = [];
          }
          acc[algo].push(hash2);
        }
        return acc;
      }, new Integrity());
      return hashes.isEmpty() ? null : hashes;
    }
    module2.exports.stringify = stringify;
    function stringify(obj, opts2) {
      opts2 = ssriOpts(opts2);
      if (obj.algorithm && obj.digest) {
        return Hash.prototype.toString.call(obj, opts2);
      } else if (typeof obj === "string") {
        return stringify(parse7(obj, opts2), opts2);
      } else {
        return Integrity.prototype.toString.call(obj, opts2);
      }
    }
    module2.exports.fromHex = fromHex;
    function fromHex(hexDigest, algorithm, opts2) {
      opts2 = ssriOpts(opts2);
      const optString = getOptString(opts2.options);
      return parse7(
        `${algorithm}-${Buffer.from(hexDigest, "hex").toString("base64")}${optString}`,
        opts2
      );
    }
    module2.exports.fromData = fromData;
    function fromData(data, opts2) {
      opts2 = ssriOpts(opts2);
      const algorithms = opts2.algorithms;
      const optString = getOptString(opts2.options);
      return algorithms.reduce((acc, algo) => {
        const digest = crypto11.createHash(algo).update(data).digest("base64");
        const hash2 = new Hash(
          `${algo}-${digest}${optString}`,
          opts2
        );
        if (hash2.algorithm && hash2.digest) {
          const algo2 = hash2.algorithm;
          if (!acc[algo2]) {
            acc[algo2] = [];
          }
          acc[algo2].push(hash2);
        }
        return acc;
      }, new Integrity());
    }
    module2.exports.fromStream = fromStream;
    function fromStream(stream2, opts2) {
      opts2 = ssriOpts(opts2);
      const istream = integrityStream(opts2);
      return new Promise((resolve3, reject3) => {
        stream2.pipe(istream);
        stream2.on("error", reject3);
        istream.on("error", reject3);
        let sri;
        istream.on("integrity", (s) => {
          sri = s;
        });
        istream.on("end", () => resolve3(sri));
        istream.on("data", () => {
        });
      });
    }
    module2.exports.checkData = checkData;
    function checkData(data, sri, opts2) {
      opts2 = ssriOpts(opts2);
      sri = parse7(sri, opts2);
      if (!sri || !Object.keys(sri).length) {
        if (opts2.error) {
          throw Object.assign(
            new Error("No valid integrity hashes to check against"),
            {
              code: "EINTEGRITY"
            }
          );
        } else {
          return false;
        }
      }
      const algorithm = sri.pickAlgorithm(opts2);
      const digest = crypto11.createHash(algorithm).update(data).digest("base64");
      const newSri = parse7({ algorithm, digest });
      const match = newSri.match(sri, opts2);
      if (match || !opts2.error) {
        return match;
      } else if (typeof opts2.size === "number" && data.length !== opts2.size) {
        const err = new Error(`data size mismatch when checking ${sri}.
  Wanted: ${opts2.size}
  Found: ${data.length}`);
        err.code = "EBADSIZE";
        err.found = data.length;
        err.expected = opts2.size;
        err.sri = sri;
        throw err;
      } else {
        const err = new Error(`Integrity checksum failed when using ${algorithm}: Wanted ${sri}, but got ${newSri}. (${data.length} bytes)`);
        err.code = "EINTEGRITY";
        err.found = newSri;
        err.expected = sri;
        err.algorithm = algorithm;
        err.sri = sri;
        throw err;
      }
    }
    module2.exports.checkStream = checkStream;
    function checkStream(stream2, sri, opts2) {
      opts2 = ssriOpts(opts2);
      opts2.integrity = sri;
      sri = parse7(sri, opts2);
      if (!sri || !Object.keys(sri).length) {
        return Promise.reject(Object.assign(
          new Error("No valid integrity hashes to check against"),
          {
            code: "EINTEGRITY"
          }
        ));
      }
      const checker = integrityStream(opts2);
      return new Promise((resolve3, reject3) => {
        stream2.pipe(checker);
        stream2.on("error", reject3);
        checker.on("error", reject3);
        let sri2;
        checker.on("verified", (s) => {
          sri2 = s;
        });
        checker.on("end", () => resolve3(sri2));
        checker.on("data", () => {
        });
      });
    }
    module2.exports.integrityStream = integrityStream;
    function integrityStream(opts2 = {}) {
      return new IntegrityStream(opts2);
    }
    module2.exports.create = createIntegrity;
    function createIntegrity(opts2) {
      opts2 = ssriOpts(opts2);
      const algorithms = opts2.algorithms;
      const optString = getOptString(opts2.options);
      const hashes = algorithms.map(crypto11.createHash);
      return {
        update: function(chunk, enc) {
          hashes.forEach((h2) => h2.update(chunk, enc));
          return this;
        },
        digest: function(enc) {
          const integrity = algorithms.reduce((acc, algo) => {
            const digest = hashes.shift().digest("base64");
            const hash2 = new Hash(
              `${algo}-${digest}${optString}`,
              opts2
            );
            if (hash2.algorithm && hash2.digest) {
              const algo2 = hash2.algorithm;
              if (!acc[algo2]) {
                acc[algo2] = [];
              }
              acc[algo2].push(hash2);
            }
            return acc;
          }, new Integrity());
          return integrity;
        }
      };
    }
    var NODE_HASHES = new Set(crypto11.getHashes());
    var DEFAULT_PRIORITY = [
      "md5",
      "whirlpool",
      "sha1",
      "sha224",
      "sha256",
      "sha384",
      "sha512",
      // TODO - it's unclear _which_ of these Node will actually use as its name
      //        for the algorithm, so we guesswork it based on the OpenSSL names.
      "sha3",
      "sha3-256",
      "sha3-384",
      "sha3-512",
      "sha3_256",
      "sha3_384",
      "sha3_512"
    ].filter((algo) => NODE_HASHES.has(algo));
    function getPrioritizedHash(algo1, algo2) {
      return DEFAULT_PRIORITY.indexOf(algo1.toLowerCase()) >= DEFAULT_PRIORITY.indexOf(algo2.toLowerCase()) ? algo1 : algo2;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/dint/5.1.0/140ea432f326a5c731335120e08b21e2f87070cebc2e8769768eea9037247607/node_modules/dint/index.js
var require_dint = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/dint/5.1.0/140ea432f326a5c731335120e08b21e2f87070cebc2e8769768eea9037247607/node_modules/dint/index.js"(exports2, module2) {
    "use strict";
    var fs111 = __require("fs");
    var ssri6 = require_ssri();
    var path218 = __require("path");
    var pEvery4 = require_p_every();
    var pLimit3 = require_p_limit();
    var limit = pLimit3(20);
    var MAX_BULK_SIZE = 1 * 1024 * 1024;
    function generateFrom(dirname2) {
      return _retrieveFileIntegrities(dirname2, dirname2, {});
    }
    async function _retrieveFileIntegrities(rootDir, currDir, index) {
      try {
        const files = await fs111.promises.readdir(currDir);
        await Promise.all(files.map(async (file) => {
          const fullPath = path218.join(currDir, file);
          const stat2 = await fs111.promises.stat(fullPath);
          if (stat2.isDirectory()) {
            return _retrieveFileIntegrities(rootDir, fullPath, index);
          }
          if (stat2.isFile()) {
            const relativePath = path218.relative(rootDir, fullPath);
            index[relativePath] = {
              size: stat2.size,
              generatingIntegrity: limit(() => {
                return stat2.size < MAX_BULK_SIZE ? fs111.promises.readFile(fullPath).then(ssri6.fromData) : ssri6.fromStream(fs111.createReadStream(fullPath));
              })
            };
          }
        }));
        return index;
      } catch (err) {
        if (err.code !== "ENOENT") {
          throw err;
        }
        return index;
      }
    }
    function check(dirname2, dirIntegrity) {
      dirname2 = path218.resolve(dirname2);
      return pEvery4(Object.keys(dirIntegrity), async (f) => {
        const fstat = dirIntegrity[f];
        if (!fstat.integrity) return false;
        const filename = path218.join(dirname2, f);
        if (fstat.size > MAX_BULK_SIZE) {
          try {
            return await ssri6.checkStream(fs111.createReadStream(filename), fstat.integrity);
          } catch (err) {
            if (err.code === "EINTEGRITY" || err.code === "ENOENT") return false;
            throw err;
          }
        }
        try {
          const data = await fs111.promises.readFile(filename);
          return ssri6.checkData(data, fstat.integrity);
        } catch (err) {
          if (err.code === "EINTEGRITY" || err.code === "ENOENT") return false;
          throw err;
        }
      }, { concurrency: 100 });
    }
    module2.exports = {
      from: generateFrom,
      check
    };
  }
});

// ../store/commands/lib/store/storeStatus/extendStoreStatusOptions.js
import path204 from "node:path";
async function extendStoreStatusOptions(opts2) {
  if (opts2) {
    for (const key in opts2) {
      if (opts2[key] === void 0) {
        delete opts2[key];
      }
    }
  }
  const defaultOpts = await defaults3(opts2);
  const extendedOpts = { ...defaultOpts, ...opts2, storeDir: defaultOpts.storeDir };
  extendedOpts.registries = normalizeRegistries(extendedOpts.registries);
  return extendedOpts;
}
var defaults3;
var init_extendStoreStatusOptions = __esm({
  "../store/commands/lib/store/storeStatus/extendStoreStatusOptions.js"() {
    "use strict";
    init_lib74();
    defaults3 = async (opts2) => {
      const dir = opts2.dir ?? process.cwd();
      const lockfileDir = opts2.lockfileDir ?? dir;
      return {
        binsDir: path204.join(dir, "node_modules", ".bin"),
        dir,
        force: false,
        lockfileDir,
        nodeLinker: "isolated",
        registries: DEFAULT_REGISTRIES,
        shamefullyHoist: false,
        storeDir: opts2.storeDir,
        useLockfile: true
      };
    };
  }
});

// ../store/commands/lib/store/storeStatus/index.js
import path205 from "node:path";
async function storeStatus(maybeOpts) {
  const reporter = maybeOpts?.reporter;
  if (reporter != null && typeof reporter === "function") {
    streamParser.on("data", reporter);
  }
  const opts2 = await extendStoreStatusOptions(maybeOpts);
  const { storeDir, skipped, virtualStoreDir, wantedLockfile } = await getContextForSingleImporter({}, {
    ...opts2,
    extraBinPaths: []
    // ctx.extraBinPaths is not needed, so this is fine
  });
  if (!wantedLockfile)
    return [];
  const pkgs = Object.entries(wantedLockfile.packages ?? {}).filter(([depPath]) => !skipped.has(depPath)).map(([depPath, pkgSnapshot]) => {
    const id = packageIdFromSnapshot(depPath, pkgSnapshot);
    const resolution = pkgSnapshot.resolution;
    return {
      depPath,
      id,
      resolution,
      pkgPath: depPath,
      ...nameVerFromPkgSnapshot(depPath, pkgSnapshot)
    };
  });
  const storeIndex = new StoreIndex(storeDir);
  try {
    const modified = await pFilter(pkgs, async ({ id, resolution, depPath, name }) => {
      const pkgIndexFilePath = pickStoreIndexKey(resolution, id, { built: true });
      const pkgFilesIndex = storeIndex.get(pkgIndexFilePath);
      if (!pkgFilesIndex) {
        return false;
      }
      const { algo, files } = pkgFilesIndex;
      const dintFiles = {};
      for (const [filePath, { digest, size }] of files) {
        dintFiles[filePath] = {
          integrity: formatIntegrity(algo, digest),
          size
        };
      }
      return await import_dint.default.check(path205.join(virtualStoreDir, depPathToFilename(depPath, maybeOpts.virtualStoreDirMaxLength), "node_modules", name), dintFiles) === false;
    }, { concurrency: 8 });
    if (reporter != null && typeof reporter === "function") {
      streamParser.removeListener("data", reporter);
    }
    return modified.map(({ pkgPath }) => pkgPath);
  } finally {
    storeIndex.close();
  }
}
var import_dint;
var init_storeStatus = __esm({
  "../store/commands/lib/store/storeStatus/index.js"() {
    "use strict";
    init_lib168();
    init_lib65();
    init_lib87();
    init_lib70();
    init_lib3();
    init_lib16();
    init_lib16();
    import_dint = __toESM(require_dint(), 1);
    init_p_filter();
    init_extendStoreStatusOptions();
  }
});

// ../store/commands/lib/store/store.js
var store_exports = {};
__export(store_exports, {
  cliOptionsTypes: () => cliOptionsTypes64,
  commandNames: () => commandNames68,
  handler: () => handler68,
  help: () => help68,
  rcOptionsTypes: () => rcOptionsTypes61,
  skipPackageManagerCheck: () => skipPackageManagerCheck10
});
function cliOptionsTypes64() {
  return pick_default([
    "registry",
    "store-dir",
    "force"
  ], types2);
}
function help68() {
  return renderHelp({
    description: "Reads and performs actions on pnpm store that is on the current filesystem.",
    descriptionLists: [
      {
        title: "Commands",
        list: [
          {
            description: "Checks for modified packages in the store. Returns exit code 0 if the content of the package is the same as it was at the time of unpacking",
            name: "status"
          },
          {
            description: "Adds new packages to the store. Example: pnpm store add express@4 typescript@2.1.0",
            name: "add <pkg>..."
          },
          {
            description: "Removes unreferenced (extraneous, orphan) packages from the store. Pruning the store is not harmful, but might slow down future installations. Visit the documentation for more information on unreferenced packages and why they occur",
            name: "prune"
          },
          {
            description: "If there are alien directories in the store, this command removes them. Alien directories are directories/files that were not created by the package manager.",
            name: "prune --force"
          },
          {
            description: "Returns the path to the active store directory.",
            name: "path"
          }
        ]
      }
    ],
    url: docsUrl("store"),
    usages: ["pnpm store <command>"]
  });
}
async function handler68(opts2, params) {
  let store;
  switch (params[0]) {
    case "status":
      return statusCmd(opts2);
    case "path":
      return getStorePath({
        pkgRoot: opts2.workspaceDir ?? opts2.dir,
        storePath: opts2.storeDir,
        pnpmHomeDir: opts2.pnpmHomeDir
      });
    case "prune": {
      store = await createStoreController(opts2);
      const storePruneOptions = Object.assign(opts2, {
        storeController: store.ctrl,
        storeDir: store.dir,
        removeAlienFiles: opts2.force,
        cacheDir: opts2.cacheDir,
        dlxCacheMaxAge: opts2.dlxCacheMaxAge
      });
      return storePrune(storePruneOptions);
    }
    case "add":
      store = await createStoreController(opts2);
      return storeAdd(params.slice(1), {
        prefix: opts2.dir,
        reporter: opts2.reporter,
        storeController: store.ctrl,
        tag: opts2.tag
      });
    default:
      return help68();
  }
}
async function statusCmd(opts2) {
  const modifiedPkgs = await storeStatus(Object.assign(opts2, {
    lockfileDir: opts2.lockfileDir ?? opts2.workspaceDir ?? opts2.dir,
    storeDir: await getStorePath({
      pkgRoot: opts2.workspaceDir ?? opts2.dir,
      storePath: opts2.storeDir,
      pnpmHomeDir: opts2.pnpmHomeDir
    })
  }));
  if (!modifiedPkgs || modifiedPkgs.length === 0) {
    logger.info({
      message: "Packages in the store are untouched",
      prefix: opts2.dir
    });
    return;
  }
  throw new StoreStatusError(modifiedPkgs);
}
var skipPackageManagerCheck10, rcOptionsTypes61, commandNames68, StoreStatusError;
var init_store = __esm({
  "../store/commands/lib/store/store.js"() {
    "use strict";
    init_lib29();
    init_lib61();
    init_lib2();
    init_lib3();
    init_lib90();
    init_lib89();
    init_es();
    init_lib63();
    init_storeAdd();
    init_storePrune();
    init_storeStatus();
    skipPackageManagerCheck10 = true;
    rcOptionsTypes61 = cliOptionsTypes64;
    commandNames68 = ["store"];
    StoreStatusError = class extends PnpmError {
      modified;
      constructor(modified) {
        super("MODIFIED_DEPENDENCY", "");
        this.modified = modified;
      }
    };
  }
});

// ../store/commands/lib/store/index.js
var init_store2 = __esm({
  "../store/commands/lib/store/index.js"() {
    "use strict";
    init_store();
  }
});

// ../store/commands/lib/index.js
var init_lib169 = __esm({
  "../store/commands/lib/index.js"() {
    "use strict";
    init_inspecting();
    init_store2();
  }
});

// ../workspace/commands/lib/utils.js
function personToString(person) {
  const name = person.name ?? "";
  const u4 = person.url ?? person.web;
  const url7 = u4 ? ` (${u4})` : "";
  const e = person.email ?? person.mail;
  const email = e ? ` <${e}>` : "";
  return name + email + url7;
}
function getInitConfig(opts2) {
  const packageJson = {};
  if (opts2.initVersion) {
    packageJson.version = opts2.initVersion;
  }
  if (opts2.initLicense) {
    packageJson.license = opts2.initLicense;
  }
  const author = personToString({
    name: opts2.initAuthorName,
    email: opts2.initAuthorEmail,
    url: opts2.initAuthorUrl
  });
  if (author) {
    packageJson.author = author;
  }
  return packageJson;
}
var init_utils3 = __esm({
  "../workspace/commands/lib/utils.js"() {
    "use strict";
  }
});

// ../workspace/commands/lib/init.js
var init_exports2 = {};
__export(init_exports2, {
  cliOptionsTypes: () => cliOptionsTypes65,
  commandNames: () => commandNames69,
  handler: () => handler69,
  help: () => help69,
  rcOptionsTypes: () => rcOptionsTypes62
});
import fs108 from "node:fs";
import path206 from "node:path";
function cliOptionsTypes65() {
  return {
    ...pick_default([
      "init-package-manager",
      "init-type"
    ], types2),
    bare: Boolean
  };
}
function help69() {
  return renderHelp({
    description: "Create a package.json file",
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: 'Set the module system for the package. Defaults to "commonjs".',
            name: "--init-type <commonjs|module>"
          },
          {
            description: 'Declare a pnpm version range via "devEngines.packageManager" in package.json and auto-download pnpm when it is missing',
            name: "--init-package-manager"
          },
          {
            description: "Create a package.json file with the bare minimum of required fields",
            name: "--bare"
          }
        ]
      }
    ],
    url: docsUrl("init"),
    usages: ["pnpm init"]
  });
}
async function handler69(opts2, params) {
  if (params?.length) {
    throw new PnpmError("INIT_ARG", "init command does not accept any arguments", {
      hint: `Maybe you wanted to run "pnpm create ${params.join(" ")}"`
    });
  }
  const initDir = opts2.cliOptions.dir ?? process.cwd();
  const manifestPath = path206.join(initDir, "package.json");
  if (fs108.existsSync(manifestPath)) {
    throw new PnpmError("PACKAGE_JSON_EXISTS", "package.json already exists");
  }
  const isWorkspaceSubpackage = opts2.workspaceDir != null && path206.resolve(opts2.workspaceDir) !== path206.resolve(initDir);
  const manifest = opts2.bare ? {} : {
    name: path206.basename(process.cwd()),
    version: "1.0.0",
    description: "",
    main: "index.js",
    scripts: {
      test: 'echo "Error: no test specified" && exit 1'
    },
    keywords: [],
    author: "",
    license: "ISC"
  };
  if (opts2.initType === "module") {
    manifest.type = opts2.initType;
  }
  const initConfig = getInitConfig(opts2);
  const packageJson = { ...manifest, ...initConfig };
  if (opts2.initPackageManager && !isWorkspaceSubpackage) {
    packageJson.devEngines = {
      ...packageJson.devEngines,
      packageManager: {
        name: "pnpm",
        version: `^${packageManager.version}`,
        onFail: "download"
      }
    };
  }
  const priority = Object.fromEntries([
    "name",
    "version",
    "private",
    "description",
    "main",
    "scripts",
    "keywords",
    "author",
    "license",
    "devEngines"
  ].map((key, index) => [key, index]));
  const sortedPackageJson = sortKeysByPriority({ priority }, packageJson);
  await writeProjectManifest(manifestPath, sortedPackageJson, {
    indent: 2
  });
  return `Wrote to ${manifestPath}

${JSON.stringify(sortedPackageJson, null, 2)}`;
}
var rcOptionsTypes62, commandNames69;
var init_init2 = __esm({
  "../workspace/commands/lib/init.js"() {
    "use strict";
    init_lib5();
    init_lib29();
    init_lib61();
    init_lib2();
    init_lib76();
    init_lib11();
    init_es();
    init_lib63();
    init_utils3();
    rcOptionsTypes62 = cliOptionsTypes65;
    commandNames69 = ["init"];
  }
});

// ../workspace/commands/lib/index.js
var init_lib170 = __esm({
  "../workspace/commands/lib/index.js"() {
    "use strict";
    init_init2();
  }
});

// ../cli/parse-cli-args/lib/index.js
async function parseCliArgs(opts2, inputArgv) {
  const noptExploratoryResults = (0, import_nopt2.default)({
    filter: [String],
    help: Boolean,
    recursive: Boolean,
    ...opts2.universalOptionsTypes,
    ...opts2.getTypesByCommandName("add"),
    ...opts2.getTypesByCommandName("install")
  }, {
    r: "--recursive",
    ...opts2.universalShorthands
  }, inputArgv, 0, { escapeArgs: opts2.escapeArgs });
  const recursiveCommandUsed = RECURSIVE_CMDS.has(noptExploratoryResults.argv.remain[0]);
  let commandName = getCommandName(noptExploratoryResults.argv.remain);
  let cmd = commandName ? opts2.getCommandLongName(commandName) : null;
  const fallbackCommandUsed = Boolean(commandName && !cmd && opts2.fallbackCommand);
  if (fallbackCommandUsed) {
    cmd = opts2.fallbackCommand;
    commandName = opts2.fallbackCommand;
    inputArgv.unshift(opts2.fallbackCommand);
  } else if (!SPECIALLY_ESCAPED_CMDS.has(cmd)) {
    if (noptExploratoryResults["help"]) {
      return {
        ...getParsedArgsForHelp(),
        workspaceDir: await getWorkspaceDir(noptExploratoryResults, opts2.renamedOptions)
      };
    }
    if (noptExploratoryResults["version"] || noptExploratoryResults["v"]) {
      return {
        argv: noptExploratoryResults.argv,
        cmd: null,
        options: {
          ...pickUniversalOptions(),
          version: true
        },
        params: noptExploratoryResults.argv.remain,
        unknownOptions: /* @__PURE__ */ new Map(),
        fallbackCommandUsed: false,
        workspaceDir: await getWorkspaceDir(noptExploratoryResults, opts2.renamedOptions)
      };
    }
  }
  function getParsedArgsForHelp() {
    return {
      argv: noptExploratoryResults.argv,
      cmd: "help",
      options: pickUniversalOptions(),
      params: noptExploratoryResults.argv.remain,
      unknownOptions: /* @__PURE__ */ new Map(),
      fallbackCommandUsed: false
    };
  }
  function pickUniversalOptions() {
    const result2 = {};
    for (const key of Object.keys(opts2.universalOptionsTypes)) {
      if (!(key in noptExploratoryResults))
        continue;
      const renamed2 = opts2.renamedOptions?.[key] ?? key;
      result2[renamed2] = noptExploratoryResults[key];
    }
    return result2;
  }
  const types3 = {
    ...opts2.universalOptionsTypes,
    ...opts2.getTypesByCommandName(commandName)
  };
  function getCommandName(args) {
    if (recursiveCommandUsed) {
      args = args.slice(1);
    }
    if (opts2.getCommandLongName(args[0]) !== "install" || args.length === 1) {
      return args[0];
    }
    return "add";
  }
  function getEscapeArgsWithSpecialCases() {
    if (!SPECIALLY_ESCAPED_CMDS.has(cmd)) {
      return opts2.escapeArgs;
    }
    const indexOfRunScriptName = 1 + (recursiveCommandUsed ? 1 : 0) + (fallbackCommandUsed && opts2.fallbackCommand === "run" ? -1 : 0);
    return [noptExploratoryResults.argv.remain[indexOfRunScriptName]];
  }
  const hasConfigOption = "config" in types3;
  const configDotArgs = [];
  const filteredArgv = hasConfigOption ? inputArgv.map((arg) => {
    if (arg.startsWith("--config.")) {
      configDotArgs.push(arg);
      return void 0;
    }
    return arg;
  }).filter((arg) => arg !== void 0) : inputArgv;
  const { argv: argv2, ...options } = (0, import_nopt2.default)({
    recursive: Boolean,
    ...types3
  }, {
    ...opts2.universalShorthands,
    ...opts2.shorthandsByCommandName[commandName]
  }, filteredArgv, 0, { escapeArgs: getEscapeArgsWithSpecialCases() });
  if (configDotArgs.length > 0) {
    const { argv: _, ...configOptions } = (0, import_nopt2.default)({}, {}, configDotArgs, 0);
    Object.assign(options, configOptions);
  }
  if (opts2.renamedOptions != null) {
    for (const [cliOption, optionValue] of Object.entries(options)) {
      const target2 = opts2.renamedOptions[cliOption];
      if (target2) {
        if (!(target2 in options)) {
          options[target2] = optionValue;
        }
        delete options[cliOption];
      }
    }
  }
  const workspaceDir = await getWorkspaceDir(options);
  if (SPECIALLY_ESCAPED_CMDS.has(cmd) && options["help"]) {
    return {
      ...getParsedArgsForHelp(),
      workspaceDir
    };
  }
  const params = argv2.remain.slice(1);
  if (options["recursive"] !== true && (options["filter"] || options["filter-prod"] || recursiveCommandUsed)) {
    options["recursive"] = true;
    const subCmd = argv2.remain[1] && opts2.getCommandLongName(argv2.remain[1]);
    if (subCmd && recursiveCommandUsed) {
      params.shift();
      argv2.remain.shift();
      cmd = subCmd;
    }
  }
  if (options["workspace-root"]) {
    if (options["global"]) {
      throw new PnpmError("OPTIONS_CONFLICT", "--workspace-root may not be used with --global");
    }
    if (!workspaceDir) {
      throw new PnpmError("NOT_IN_WORKSPACE", "--workspace-root may only be used inside a workspace");
    }
    options["dir"] = workspaceDir;
  }
  if (cmd === "install" && params.length > 0) {
    cmd = "add";
  } else if (!cmd && options["recursive"]) {
    cmd = "recursive";
  }
  const knownOptions = new Set(Object.keys(types3));
  return {
    argv: argv2,
    cmd,
    params,
    workspaceDir,
    fallbackCommandUsed,
    ...normalizeOptions2(options, knownOptions)
  };
}
function normalizeOptions2(options, knownOptions) {
  const standardOptionNames = [];
  const normalizedOptions = {};
  for (const [optionName, optionValue] of Object.entries(options)) {
    if (optionName.startsWith(CUSTOM_OPTION_PREFIX)) {
      normalizedOptions[optionName.substring(CUSTOM_OPTION_PREFIX.length)] = optionValue;
      continue;
    }
    normalizedOptions[optionName] = optionValue;
    standardOptionNames.push(optionName);
  }
  const unknownOptions = getUnknownOptions(standardOptionNames, knownOptions);
  return { options: normalizedOptions, unknownOptions };
}
function getUnknownOptions(usedOptions, knownOptions) {
  const unknownOptions = /* @__PURE__ */ new Map();
  const closestMatches = getClosestOptionMatches.bind(null, Array.from(knownOptions));
  for (const usedOption of usedOptions) {
    if (knownOptions.has(usedOption) || usedOption.startsWith("//") || isScopeRegistryOption(usedOption))
      continue;
    unknownOptions.set(usedOption, closestMatches(usedOption));
  }
  return unknownOptions;
}
function isScopeRegistryOption(optionName) {
  return /^@[a-z0-9][\w.-]*:registry$/.test(optionName);
}
function getClosestOptionMatches(knownOptions, option) {
  return didYouMean(option, knownOptions, {
    returnType: ReturnTypeEnums.ALL_CLOSEST_MATCHES
  });
}
async function getWorkspaceDir(parsedOpts, renamedOptions) {
  if (parsedOpts["global"] || parsedOpts["ignore-workspace"])
    return void 0;
  let dir = parsedOpts["dir"];
  if (dir == null && renamedOptions != null) {
    for (const [from5, to] of Object.entries(renamedOptions)) {
      if (to === "dir" && parsedOpts[from5] != null) {
        dir = parsedOpts[from5];
        break;
      }
    }
  }
  return findWorkspaceDir(dir ?? process.cwd());
}
var import_nopt2, RECURSIVE_CMDS, SPECIALLY_ESCAPED_CMDS, CUSTOM_OPTION_PREFIX;
var init_lib171 = __esm({
  "../cli/parse-cli-args/lib/index.js"() {
    "use strict";
    init_lib2();
    import_nopt2 = __toESM(require_nopt(), 1);
    init_lib142();
    init_dist10();
    RECURSIVE_CMDS = /* @__PURE__ */ new Set(["recursive", "multi", "m"]);
    SPECIALLY_ESCAPED_CMDS = /* @__PURE__ */ new Set(["run", "dlx", "with"]);
    CUSTOM_OPTION_PREFIX = "config.";
  }
});

// lib/shorthands.js
var shorthands18;
var init_shorthands = __esm({
  "lib/shorthands.js"() {
    "use strict";
    shorthands18 = {
      s: "--reporter=silent",
      d: "--loglevel=info",
      dd: "--loglevel=verbose",
      ddd: "--loglevel=silly",
      L: "--latest",
      r: "--recursive",
      silent: "--reporter=silent",
      verbose: "--loglevel=verbose",
      quiet: "--loglevel=warn",
      q: "--loglevel=warn",
      h: "--help",
      H: "--help",
      "?": "--help",
      usage: "--help",
      v: "--version",
      f: "--force",
      local: "--no-global",
      l: "--long",
      p: "--parseable",
      porcelain: "--parseable",
      prod: "--production",
      development: "--dev",
      g: "--global",
      S: "--save",
      D: "--save-dev",
      P: "--save-prod",
      E: "--save-exact",
      O: "--save-optional",
      C: "--dir",
      w: "--workspace-root",
      i: "--interactive",
      F: "--filter",
      y: "--yes"
    };
  }
});

// lib/parseCliArgs.js
async function parseCliArgs2(inputArgv) {
  const builtInCommandForced = inputArgv[0] === "pm";
  if (builtInCommandForced) {
    inputArgv.splice(0, 1);
  }
  const libOpts = {
    fallbackCommand: "run",
    escapeArgs: ["create", "exec", "test"],
    getCommandLongName: getCommandFullName,
    getTypesByCommandName: getCliOptionsTypes,
    renamedOptions: RENAMED_OPTIONS,
    shorthandsByCommandName,
    universalOptionsTypes: GLOBAL_OPTIONS,
    universalShorthands: shorthands18
  };
  let result2 = await parseCliArgs(libOpts, inputArgv);
  if (result2.cmd === "with" && result2.params[0] === "current") {
    const withIdx = findWithCurrentIndex(inputArgv);
    if (withIdx < 0 || inputArgv.length - withIdx - 2 === 0) {
      throw new PnpmError("MISSING_WITH_CURRENT_CMD", 'Missing command after "current". Usage: pnpm with current <command> [args...]');
    }
    process.env.pnpm_config_pm_on_fail = "ignore";
    result2 = await parseCliArgs(libOpts, [
      ...inputArgv.slice(0, withIdx),
      ...inputArgv.slice(withIdx + 2)
    ]);
  }
  return { ...result2, builtInCommandForced };
}
function findWithCurrentIndex(argv2) {
  for (let i2 = 0; i2 < argv2.length - 1; i2++) {
    if (argv2[i2] !== "with" || argv2[i2 + 1] !== "current")
      continue;
    const prev = argv2[i2 - 1];
    if (prev != null && prev.startsWith("--") && !prev.includes("="))
      continue;
    return i2;
  }
  return -1;
}
var RENAMED_OPTIONS;
var init_parseCliArgs = __esm({
  "lib/parseCliArgs.js"() {
    "use strict";
    init_lib171();
    init_lib2();
    init_cmd();
    init_shorthands();
    RENAMED_OPTIONS = {
      prefix: "dir",
      store: "store-dir"
    };
  }
});

// lib/cmd/bin.js
var bin_exports = {};
__export(bin_exports, {
  cliOptionsTypes: () => cliOptionsTypes66,
  commandNames: () => commandNames70,
  handler: () => handler70,
  help: () => help70,
  rcOptionsTypes: () => rcOptionsTypes63
});
function cliOptionsTypes66() {
  return pick_default([
    "global"
  ], types2);
}
function help70() {
  return renderHelp({
    description: "Print the directory where pnpm will install executables.",
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: "Print the global executables directory",
            name: "--global",
            shortAlias: "-g"
          }
        ]
      }
    ],
    url: docsUrl("bin"),
    usages: ["pnpm bin [-g]"]
  });
}
async function handler70(opts2) {
  return opts2.bin;
}
var rcOptionsTypes63, commandNames70;
var init_bin2 = __esm({
  "lib/cmd/bin.js"() {
    "use strict";
    init_lib29();
    init_lib61();
    init_es();
    init_lib63();
    rcOptionsTypes63 = cliOptionsTypes66;
    commandNames70 = ["bin"];
  }
});

// lib/cmd/clean.js
var clean_exports = {};
__export(clean_exports, {
  cliOptionsTypes: () => cliOptionsTypes67,
  commandNames: () => commandNames71,
  handler: () => handler71,
  help: () => help71,
  overridableByScript: () => overridableByScript4,
  rcOptionsTypes: () => rcOptionsTypes64,
  shorthands: () => shorthands19
});
import { promises as fs109 } from "node:fs";
import path207 from "node:path";
function cliOptionsTypes67() {
  return {
    lockfile: Boolean
  };
}
function help71() {
  return renderHelp({
    aliases: ["purge"],
    description: 'Safely remove node_modules directories from all workspace projects. Uses Node.js to remove directories, which correctly handles NTFS junctions on Windows without following them into their targets. If the current project has a "clean" (or "purge") script in package.json, the script is executed instead of the built-in command.',
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: "Also remove pnpm-lock.yaml files",
            name: "--lockfile",
            shortAlias: "-l"
          }
        ]
      }
    ],
    url: docsUrl("clean"),
    usages: ["pnpm clean [--lockfile]"]
  });
}
async function handler71(opts2) {
  const modulesDir = opts2.modulesDir ?? "node_modules";
  const rootDir = opts2.workspaceDir ?? opts2.dir;
  const cleanOpts = { modulesDir, removeLockfile: opts2.cliOptions?.lockfile === true };
  const dirs2 = await getProjectDirs(opts2);
  await Promise.all(dirs2.map(cleanProjectDir.bind(null, cleanOpts)));
  if (opts2.virtualStoreDir) {
    const resolvedVirtualStoreDir = path207.isAbsolute(opts2.virtualStoreDir) ? opts2.virtualStoreDir : path207.resolve(rootDir, opts2.virtualStoreDir);
    const rootModulesDir = pathAbsolute(modulesDir, rootDir);
    if (!isSubdir(rootModulesDir, resolvedVirtualStoreDir) && isSubdir(rootDir, resolvedVirtualStoreDir) && await pathExists2(resolvedVirtualStoreDir)) {
      printRemoving(resolvedVirtualStoreDir);
      await rimraf(resolvedVirtualStoreDir);
    }
  }
}
function printRemoving(p) {
  process.stdout.write(`Removing ${path207.relative(process.cwd(), p) || "."}
`);
}
async function cleanProjectDir(opts2, dir) {
  const fullModulesDir = pathAbsolute(opts2.modulesDir, dir);
  if (await hasContentsToRemove(fullModulesDir)) {
    printRemoving(fullModulesDir);
    await removeModulesDirContents(fullModulesDir);
  }
  if (opts2.removeLockfile) {
    const lockfilePath = path207.join(dir, "pnpm-lock.yaml");
    if (await pathExists2(lockfilePath)) {
      printRemoving(lockfilePath);
      await rimraf(lockfilePath);
    }
  }
}
async function hasContentsToRemove(modulesDir) {
  let items;
  try {
    items = await fs109.readdir(modulesDir);
  } catch (err) {
    if (err.code === "ENOENT")
      return false;
    throw err;
  }
  return items.some((item) => item[0] !== "." || PNPM_HIDDEN_ENTRIES.has(item));
}
async function removeModulesDirContents(modulesDir) {
  let items;
  try {
    items = await fs109.readdir(modulesDir);
  } catch (err) {
    if (err.code === "ENOENT")
      return;
    throw err;
  }
  await Promise.all(items.map(async (item) => {
    if (item[0] === "." && !PNPM_HIDDEN_ENTRIES.has(item))
      return;
    await rimraf(path207.join(modulesDir, item));
  }));
}
async function getProjectDirs(opts2) {
  if (!opts2.workspaceDir) {
    return [opts2.dir];
  }
  const pkgs = await findWorkspaceProjectsNoCheck(opts2.workspaceDir, {
    patterns: opts2.workspacePackagePatterns
  });
  return pkgs.map((pkg) => pkg.rootDir);
}
var commandNames71, overridableByScript4, rcOptionsTypes64, shorthands19, PNPM_HIDDEN_ENTRIES;
var init_clean = __esm({
  "lib/cmd/clean.js"() {
    "use strict";
    init_lib29();
    init_lib30();
    init_rimraf();
    init_is_subdir();
    init_path_absolute();
    init_path_exists();
    init_lib63();
    commandNames71 = ["clean", "purge"];
    overridableByScript4 = true;
    rcOptionsTypes64 = () => ({});
    shorthands19 = {
      l: "--lockfile"
    };
    PNPM_HIDDEN_ENTRIES = /* @__PURE__ */ new Set([".bin", ".modules.yaml", ".pnpm", ".pnpm-workspace-state-v1.json"]);
  }
});

// lib/cmd/cleanInstall.js
var cleanInstall_exports = {};
__export(cleanInstall_exports, {
  cliOptionsTypes: () => cliOptionsTypes68,
  commandNames: () => commandNames72,
  handler: () => handler72,
  help: () => help72,
  rcOptionsTypes: () => rcOptionsTypes65,
  recursiveByDefault: () => recursiveByDefault13,
  shorthands: () => shorthands20
});
function help72() {
  return renderHelp({
    aliases: ["clean-install", "ic", "install-clean"],
    description: 'Runs "pnpm clean" followed by "pnpm install --frozen-lockfile". Designed for CI/CD environments.',
    url: docsUrl("ci"),
    usages: ["pnpm ci"]
  });
}
async function handler72(opts2) {
  await handler71(opts2);
  await install_exports.handler({ ...opts2, frozenLockfile: true });
}
var rcOptionsTypes65, cliOptionsTypes68, shorthands20, commandNames72, recursiveByDefault13;
var init_cleanInstall = __esm({
  "lib/cmd/cleanInstall.js"() {
    "use strict";
    init_lib29();
    init_lib138();
    init_lib63();
    init_clean();
    rcOptionsTypes65 = install_exports.rcOptionsTypes;
    cliOptionsTypes68 = install_exports.cliOptionsTypes;
    shorthands20 = install_exports.shorthands;
    commandNames72 = ["ci", "clean-install", "ic", "install-clean"];
    recursiveByDefault13 = true;
  }
});

// lib/cmd/help.js
function createHelp(helpByCommandName2) {
  return {
    commandNames: ["help"],
    shorthands: {
      a: "--all"
    },
    cliOptionsTypes: () => ({
      all: Boolean
    }),
    rcOptionsTypes: () => ({}),
    help: helpHelp,
    handler: handler73.bind(null, helpByCommandName2)
  };
}
function helpHelp() {
  return renderHelp({
    description: "Display help information about pnpm",
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: "Print all the available commands",
            name: "--all",
            shortAlias: "-a"
          }
        ]
      }
    ],
    usages: [],
    url: docsUrl("help")
  });
}
function handler73(helpByCommandName2, opts2, params) {
  let helpText;
  if (params.length === 0) {
    helpText = getHelpText({ all: opts2.all ?? false });
  } else if (helpByCommandName2[params[0]]) {
    helpText = helpByCommandName2[params[0]]();
  } else {
    helpText = `No results for "${params[0]}"`;
  }
  return `Version ${packageManager.version}${detectIfCurrentPkgIsExecutable() ? ` (compiled to binary; bundled Node.js ${process.version})` : ""}
${helpText}
`;
}
function getHelpText({ all }) {
  const descriptionLists = [
    {
      title: "Manage your dependencies",
      list: [
        {
          description: "Install all dependencies for a project",
          name: "install",
          shortAlias: "i"
        },
        {
          description: "Installs a package and any packages that it depends on. By default, any new package is installed as a prod dependency",
          name: "add"
        },
        {
          description: "Updates packages to their latest version based on the specified range",
          name: "update",
          shortAlias: "up"
        },
        {
          description: "Removes packages from node_modules and from the project's package.json",
          name: "remove",
          shortAlias: "rm"
        },
        {
          description: "Connect the local project to another one",
          name: "link",
          shortAlias: "ln"
        },
        {
          description: "Unlinks a package. Like yarn unlink but pnpm re-installs the dependency after removing the external link",
          name: "unlink"
        },
        {
          description: "Generates a pnpm-lock.yaml from an npm package-lock.json (or npm-shrinkwrap.json) file",
          name: "import",
          advanced: true
        },
        {
          description: "Runs a pnpm install followed immediately by a pnpm test",
          name: "install-test",
          shortAlias: "it",
          advanced: true
        },
        {
          description: "Rebuild a package",
          name: "rebuild",
          shortAlias: "rb",
          advanced: true
        },
        {
          description: "Removes extraneous packages",
          name: "prune",
          advanced: true
        },
        {
          description: "Safely remove node_modules directories from all workspace projects",
          name: "clean",
          advanced: true
        },
        {
          description: "Fetch packages from a lockfile into virtual store, package manifest is ignored",
          name: "fetch",
          advanced: true
        },
        {
          description: "Perform an install removing older dependencies in the lockfile if a newer version can be used",
          name: "dedupe",
          advanced: true
        }
      ]
    },
    {
      title: "Patch your dependencies",
      advanced: true,
      list: [
        {
          description: "Prepare a package for patching",
          name: "patch"
        },
        {
          description: "Generate a patch out of a directory",
          name: "patch-commit"
        },
        {
          description: "Remove existing patch files",
          name: "patch-remove"
        }
      ]
    },
    {
      title: "Review your dependencies",
      list: [
        {
          description: "Checks for known security issues with the installed packages",
          name: "audit"
        },
        {
          description: "Print all the versions of packages that are installed, as well as their dependencies, in a tree-structure",
          name: "list",
          shortAlias: "ls"
        },
        {
          description: "Check for outdated packages",
          name: "outdated"
        },
        {
          description: "Check licenses in consumed packages",
          name: "licenses",
          advanced: true
        },
        {
          description: "Shows all packages that depend on the specified package",
          name: "why"
        }
      ]
    },
    {
      title: "Run your scripts",
      list: [
        {
          description: "Executes a shell command in scope of a project",
          name: "exec"
        },
        {
          description: "Runs a defined package script",
          name: "run"
        },
        {
          description: `Runs a package's "test" script, if one was provided`,
          name: "test",
          shortAlias: "t",
          advanced: true
        },
        {
          description: `Runs an arbitrary command specified in the package's "start" property of its "scripts" object`,
          name: "start",
          advanced: true
        },
        {
          description: "Fetches a package from the registry without installing it as a dependency, hot loads it, and runs whatever default command binary it exposes",
          name: "dlx"
        },
        {
          description: 'Create a project from a "create-*" or "@foo/create-*" starter kit',
          name: "create"
        },
        {
          description: "Approve dependencies for running scripts during installation",
          name: "approve-builds",
          advanced: true
        },
        {
          description: "Print the list of packages with blocked build scripts",
          name: "ignored-builds",
          advanced: true
        }
      ]
    },
    {
      title: "Other",
      list: [
        {
          description: "Create a tarball from a package",
          name: "pack",
          advanced: true
        },
        {
          description: "Publishes a package to the registry",
          name: "publish"
        },
        {
          description: "Stage packages for publishing",
          name: "stage"
        },
        {
          description: "Create a package.json file",
          name: "init"
        },
        {
          description: "Manage the pnpm configuration files",
          name: "config",
          shortAlias: "c"
        },
        {
          description: "Prints the effective modules directory",
          name: "root",
          advanced: true
        },
        {
          description: "Prints the directory into which the executables of dependencies are linked",
          name: "bin",
          advanced: true
        },
        {
          description: "Deploy a package from a workspace",
          name: "deploy",
          advanced: true
        }
      ]
    },
    {
      title: "Manage your engines",
      advanced: true,
      list: [
        {
          description: "Manage runtimes",
          name: "runtime",
          shortAlias: "rt"
        },
        {
          description: "Manage Node.js versions (deprecated, use runtime)",
          name: "env"
        },
        {
          description: "Updates pnpm to the latest version",
          name: "self-update"
        }
      ]
    },
    {
      title: "Inspect your store",
      advanced: true,
      list: [
        {
          description: "Prints the index file of a specific package from the store",
          name: "cat-index"
        },
        {
          description: "Prints the contents of a file based on the hash value stored in the index file",
          name: "cat-file"
        },
        {
          description: "Experimental! Lists the packages that include the file with the specified hash",
          name: "find-hash"
        }
      ]
    },
    {
      title: "Manage your store",
      advanced: true,
      list: [
        {
          description: "Adds new packages to the pnpm store directly. Does not modify any projects or files outside the store",
          name: "store add"
        },
        {
          description: "Prints the path to the active store directory",
          name: "store path"
        },
        {
          description: "Removes unreferenced (extraneous, orphan) packages from the store",
          name: "store prune"
        },
        {
          description: "Checks for modified packages in the store",
          name: "store status"
        }
      ]
    },
    {
      title: "Manage your cache",
      advanced: true,
      list: [
        {
          description: "Experimental! Lists the available packages metadata cache. Supports filtering by glob",
          name: "cache list"
        },
        {
          description: "Experimental! Lists all registries that have their metadata cache locally",
          name: "cache list-registries"
        },
        {
          description: "Experimental! Views information from the specified package's cache",
          name: "cache view"
        },
        {
          description: "Experimental! Deletes metadata cache for the specified package(s). Supports patterns",
          name: "cache delete"
        }
      ]
    },
    {
      title: "Options",
      list: [
        {
          description: "Run the command for each project in the workspace.",
          name: "--recursive",
          shortAlias: "-r"
        }
      ]
    }
  ];
  const filteredDescriptionLists = [];
  for (const descriptionList of descriptionLists) {
    if (!descriptionList.advanced || all) {
      filteredDescriptionLists.push({
        title: descriptionList.title,
        list: descriptionList.list.filter((item) => !item.advanced || all)
      });
    }
  }
  return renderHelp({
    description: all ? "" : "These are common pnpm commands used in various situations, use 'pnpm help -a' to list all commands",
    descriptionLists: filteredDescriptionLists,
    usages: ["pnpm [command] [flags]", "pnpm [ -h | --help | -v | --version ]"]
  });
}
var init_help2 = __esm({
  "lib/cmd/help.js"() {
    "use strict";
    init_lib5();
    init_lib29();
    init_lib63();
  }
});

// lib/cmd/installTest.js
var installTest_exports = {};
__export(installTest_exports, {
  cliOptionsTypes: () => cliOptionsTypes69,
  commandNames: () => commandNames73,
  handler: () => handler74,
  help: () => help73,
  rcOptionsTypes: () => rcOptionsTypes66
});
function help73() {
  return renderHelp({
    aliases: ["it"],
    description: "Runs a `pnpm install` followed immediately by a `pnpm test`. It takes exactly the same arguments as `pnpm install`.",
    url: docsUrl("install-test"),
    usages: ["pnpm install-test"]
  });
}
async function handler74(opts2, params) {
  await install_exports.handler(opts2);
  await run_exports.handler(opts2, ["test", ...params]);
}
var cliOptionsTypes69, rcOptionsTypes66, commandNames73;
var init_installTest = __esm({
  "lib/cmd/installTest.js"() {
    "use strict";
    init_lib29();
    init_lib161();
    init_lib138();
    init_lib63();
    cliOptionsTypes69 = install_exports.cliOptionsTypes;
    rcOptionsTypes66 = install_exports.rcOptionsTypes;
    commandNames73 = ["install-test", "it"];
  }
});

// lib/cmd/notImplemented.js
var NOT_IMPLEMENTED_COMMANDS, NOT_IMPLEMENTED_COMMAND_SET, notImplementedCommandDefinitions;
var init_notImplemented = __esm({
  "lib/cmd/notImplemented.js"() {
    "use strict";
    init_lib2();
    NOT_IMPLEMENTED_COMMANDS = [
      "access",
      "edit",
      "issues",
      "prefix",
      "profile",
      "set-script",
      "team",
      "token",
      "xmas"
    ];
    NOT_IMPLEMENTED_COMMAND_SET = new Set(NOT_IMPLEMENTED_COMMANDS);
    notImplementedCommandDefinitions = NOT_IMPLEMENTED_COMMANDS.map((commandName) => ({
      commandNames: [commandName],
      cliOptionsTypes: () => ({}),
      rcOptionsTypes: () => ({}),
      help: () => `pnpm ${commandName} is not yet implemented`,
      handler: async () => {
        throw new PnpmError("NOT_IMPLEMENTED", `The "${commandName}" command is not yet implemented in pnpm. Use the npm CLI directly: npm ${commandName}`);
      },
      skipPackageManagerCheck: true
    }));
  }
});

// lib/cmd/recursive.js
var recursive_exports = {};
__export(recursive_exports, {
  cliOptionsTypes: () => cliOptionsTypes70,
  commandNames: () => commandNames74,
  handler: () => handler75,
  help: () => help74,
  rcOptionsTypes: () => rcOptionsTypes67
});
function help74() {
  return renderHelp({
    description: "Concurrently performs some actions in all subdirectories with a `package.json` (excluding node_modules). A `pnpm-workspace.yaml` file may be used to control what directories are searched for packages.",
    descriptionLists: [
      {
        title: "Commands",
        list: [
          {
            name: "install"
          },
          {
            name: "add"
          },
          {
            name: "update"
          },
          {
            description: "Uninstall a dependency from each package",
            name: "remove <pkg>..."
          },
          {
            description: "Removes links to local packages and reinstalls them from the registry.",
            name: "unlink"
          },
          {
            description: "List dependencies in each package.",
            name: "list [<pkg>...]"
          },
          {
            description: "List packages that depend on <pkg>.",
            name: "why <pkg>..."
          },
          {
            description: "Check for outdated dependencies in every package.",
            name: "outdated [<pkg>...]"
          },
          {
            description: `This runs an arbitrary command from each package's "scripts" object. If a package doesn't have the command, it is skipped. If none of the packages have the command, the command fails.`,
            name: "run <command> [-- <args>...]"
          },
          {
            description: `This runs each package's "test" script, if one was provided.`,
            name: "test [-- <args>...]"
          },
          {
            description: 'This command runs the "npm build" command on each package. This is useful when you install a new version of node, and must recompile all your C++ addons with the new binary.',
            name: "rebuild [[<@scope>/<name>]...]"
          },
          {
            description: "Run a command in each package.",
            name: "exec -- <command> [args...]"
          },
          {
            description: "Publishes packages to the npm registry. Only publishes a package if its version is not taken in the registry.",
            name: "publish [--tag <tag>] [--access <public|restricted>]"
          },
          {
            description: "Create tarballs for each package.",
            name: "pack [-- <args>...]"
          }
        ]
      },
      {
        title: "Options",
        list: [
          {
            description: "Continues executing other tasks even if a task threw an error",
            name: "--no-bail"
          },
          {
            description: `Set the maximum number of concurrency. Default is ${getDefaultWorkspaceConcurrency()}. For unlimited concurrency use Infinity.`,
            name: "--workspace-concurrency <number>"
          },
          {
            description: "Locally available packages are linked to node_modules instead of being downloaded from the registry. Convenient to use in a multi-package repository.",
            name: "--link-workspace-packages"
          },
          {
            description: "Reverse the order that packages get ordered in. Disabled by default.",
            name: "--reverse"
          },
          {
            description: "Sort packages topologically (dependencies before dependents). Pass --no-sort to disable.",
            name: "--sort"
          },
          {
            description: `Creates a single ${WANTED_LOCKFILE} file in the root of the workspace. A shared lockfile also means that all dependencies of all projects will be in a single node_modules.`,
            name: "--shared-workspace-lockfile"
          },
          {
            description: "When executing commands recursively in a workspace, execute them on the root workspace project as well",
            name: "--include-workspace-root"
          }
        ]
      },
      FILTERING
    ],
    url: docsUrl("recursive"),
    usages: [
      "pnpm recursive [command] [flags] [--filter <package selector>]",
      "pnpm multi [command] [flags] [--filter <package selector>]",
      "pnpm m [command] [flags] [--filter <package selector>]"
    ]
  });
}
function handler75() {
  console.log(help74());
  process.exit(1);
}
var rcOptionsTypes67, cliOptionsTypes70, commandNames74;
var init_recursive5 = __esm({
  "lib/cmd/recursive.js"() {
    "use strict";
    init_lib92();
    init_lib29();
    init_lib61();
    init_lib();
    init_lib63();
    rcOptionsTypes67 = () => ({});
    cliOptionsTypes70 = () => ({});
    commandNames74 = ["recursive", "multi", "m"];
  }
});

// lib/cmd/root.js
var root_exports = {};
__export(root_exports, {
  cliOptionsTypes: () => cliOptionsTypes71,
  commandNames: () => commandNames75,
  handler: () => handler76,
  help: () => help75,
  rcOptionsTypes: () => rcOptionsTypes68
});
import path208 from "node:path";
function cliOptionsTypes71() {
  return pick_default([
    "global"
  ], types2);
}
function help75() {
  return renderHelp({
    description: "Print the effective `node_modules` directory.",
    descriptionLists: [
      {
        title: "Options",
        list: [
          {
            description: "Print the global packages directory",
            name: "--global",
            shortAlias: "-g"
          }
        ]
      }
    ],
    url: docsUrl("root"),
    usages: ["pnpm root [-g]"]
  });
}
async function handler76(opts2) {
  if (opts2.global) {
    return `${opts2.globalPkgDir}
`;
  }
  return `${path208.join(opts2.dir, "node_modules")}
`;
}
var rcOptionsTypes68, commandNames75;
var init_root = __esm({
  "lib/cmd/root.js"() {
    "use strict";
    init_lib29();
    init_lib61();
    init_es();
    init_lib63();
    rcOptionsTypes68 = cliOptionsTypes71;
    commandNames75 = ["root"];
  }
});

// lib/cmd/index.js
function initialCompletion() {
  return Object.keys(handlerByCommandName).map((name) => ({ name }));
}
function getCliOptionsTypes(commandName) {
  return cliOptionsTypesByCommandName[commandName]?.() || {};
}
function getCommandFullName(commandName) {
  return aliasToFullName.get(commandName) ?? (handlerByCommandName[commandName] ? commandName : null);
}
var GLOBAL_OPTIONS, helpByCommandName, commands, handlerByCommandName, cliOptionsTypesByCommandName, aliasToFullName, completionByCommandName, shorthandsByCommandName, skipPackageManagerCheckForCommandArray, recursiveByDefaultCommandArray, overridableByScriptCommandArray, pnpmCmds, skipPackageManagerCheckForCommand, recursiveByDefaultCommands, overridableByScriptCommands;
var init_cmd = __esm({
  "lib/cmd/index.js"() {
    "use strict";
    init_lib64();
    init_lib139();
    init_lib141();
    init_lib143();
    init_lib145();
    init_lib61();
    init_lib152();
    init_lib155();
    init_lib157();
    init_lib159();
    init_lib161();
    init_lib138();
    init_lib162();
    init_lib163();
    init_lib164();
    init_lib167();
    init_lib169();
    init_lib170();
    init_es();
    init_parseCliArgs();
    init_shorthands();
    init_bin2();
    init_clean();
    init_cleanInstall();
    init_help2();
    init_installTest();
    init_notImplemented();
    init_recursive5();
    init_root();
    GLOBAL_OPTIONS = pick_default([
      "color",
      "dir",
      "filter",
      "filter-prod",
      "loglevel",
      "parseable",
      "prefix",
      "reporter",
      "stream",
      "aggregate-output",
      "test-pattern",
      "changed-files-ignore-pattern",
      "use-stderr",
      "ignore-workspace",
      "workspace-packages",
      "workspace-root",
      "yes",
      "include-workspace-root",
      "fail-if-no-match",
      "pm-on-fail"
    ], types2);
    helpByCommandName = {};
    commands = [
      add_exports,
      approveBuilds_exports,
      audit_exports,
      bin_exports,
      bugs_exports,
      cache_cmd_exports,
      cleanInstall_exports,
      clean_exports,
      config_exports,
      dedupe_exports,
      get_exports,
      set_exports,
      create_exports,
      deprecate_exports,
      deploy_exports,
      distTag_exports,
      owner_exports,
      dlx_exports,
      docs_exports,
      env_exports,
      exec_exports,
      runtime_exports,
      fetch_exports,
      generateCompletion_exports,
      ignoredBuilds_exports,
      import_exports2,
      selfUpdate_exports,
      init_exports2,
      install_exports,
      pkg_exports,
      installTest_exports,
      link_exports,
      list_exports,
      login_exports,
      logout_exports,
      ll_exports,
      licenses_exports,
      outdated_exports,
      pack_exports,
      packApp_exports,
      patch_exports,
      patchCommit_exports,
      patchRemove_exports,
      peers_exports,
      ping_exports,
      prune_exports,
      publish_exports,
      stage_exports,
      unpublish_exports,
      rebuild_exports,
      recursive_exports,
      remove_exports,
      repo_exports,
      restart_exports,
      root_exports,
      run_exports,
      sbom_exports,
      setScript_exports,
      setup_exports,
      search_exports,
      star_exports,
      stars_exports,
      store_exports,
      catFile_exports,
      catIndex_exports,
      findHash_exports,
      undeprecate_exports,
      unlink_exports,
      unstar_exports,
      update_exports,
      version,
      view_exports,
      whoami_exports,
      why_exports,
      with_exports,
      createHelp(helpByCommandName),
      ...notImplementedCommandDefinitions
    ];
    handlerByCommandName = {};
    cliOptionsTypesByCommandName = {};
    aliasToFullName = /* @__PURE__ */ new Map();
    completionByCommandName = {};
    shorthandsByCommandName = {};
    skipPackageManagerCheckForCommandArray = ["completion-server"];
    recursiveByDefaultCommandArray = [];
    overridableByScriptCommandArray = [];
    for (let i2 = 0; i2 < commands.length; i2++) {
      const { cliOptionsTypes: cliOptionsTypes72, commandNames: commandNames76, completion: completion7, handler: handler77, help: help76, shorthands: shorthands21, skipPackageManagerCheck: skipPackageManagerCheck11, recursiveByDefault: recursiveByDefault14, overridableByScript: overridableByScript5 } = commands[i2];
      if (!commandNames76 || commandNames76.length === 0) {
        throw new Error(`The command at index ${i2} doesn't have command names`);
      }
      for (const commandName of commandNames76) {
        handlerByCommandName[commandName] = handler77;
        helpByCommandName[commandName] = help76;
        cliOptionsTypesByCommandName[commandName] = cliOptionsTypes72;
        shorthandsByCommandName[commandName] = shorthands21 ?? {};
        if (completion7 != null) {
          completionByCommandName[commandName] = completion7;
        }
      }
      if (skipPackageManagerCheck11) {
        skipPackageManagerCheckForCommandArray.push(...commandNames76);
      }
      if (recursiveByDefault14) {
        recursiveByDefaultCommandArray.push(...commandNames76);
      }
      if (overridableByScript5) {
        overridableByScriptCommandArray.push(...commandNames76);
      }
      if (commandNames76.length > 1) {
        const fullName = commandNames76[0];
        for (let i3 = 1; i3 < commandNames76.length; i3++) {
          aliasToFullName.set(commandNames76[i3], fullName);
        }
      }
    }
    handlerByCommandName["completion-server"] = createCompletionServer({
      cliOptionsTypesByCommandName,
      completionByCommandName,
      initialCompletion,
      shorthandsByCommandName,
      universalOptionsTypes: GLOBAL_OPTIONS,
      universalShorthands: shorthands18,
      parseCliArgs: parseCliArgs2
    });
    pnpmCmds = handlerByCommandName;
    skipPackageManagerCheckForCommand = new Set(skipPackageManagerCheckForCommandArray);
    recursiveByDefaultCommands = new Set(recursiveByDefaultCommandArray);
    overridableByScriptCommands = new Set(overridableByScriptCommandArray);
  }
});

// lib/formatError.js
function formatUnknownOptionsError(unknownOptions) {
  let output = source_default.bgRed.red("[") + source_default.bgRed.black("ERROR") + source_default.bgRed.red("]");
  const unknownOptionsArray = Array.from(unknownOptions.keys());
  if (unknownOptionsArray.length > 1) {
    return `${output} ${source_default.red(`Unknown options: ${unknownOptionsArray.map((unknownOption2) => `'${unknownOption2}'`).join(", ")}`)}`;
  }
  const unknownOption = unknownOptionsArray[0];
  output += ` ${source_default.red(`Unknown option: '${unknownOption}'`)}`;
  const didYouMeanOptions = unknownOptions.get(unknownOption);
  if (!didYouMeanOptions?.length) {
    return output;
  }
  return `${output}
Did you mean '${didYouMeanOptions.join("', or '")}'? Use "--config.unknown=value" to force an unknown option.`;
}
var init_formatError = __esm({
  "lib/formatError.js"() {
    "use strict";
    init_source2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/ansi-regex/3.0.1/694c708b45eb3daf8a9b6a06485016af18464cb9426c8eee9a28a73c2fc38879/node_modules/ansi-regex/index.js
var require_ansi_regex2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/ansi-regex/3.0.1/694c708b45eb3daf8a9b6a06485016af18464cb9426c8eee9a28a73c2fc38879/node_modules/ansi-regex/index.js"(exports2, module2) {
    "use strict";
    module2.exports = () => {
      const pattern = [
        "[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[a-zA-Z\\d]*)*)?\\u0007)",
        "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PRZcf-ntqry=><~]))"
      ].join("|");
      return new RegExp(pattern, "g");
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/ansi-split/1.0.1/67aad4c92927ae2b192b02a2641c2b791d5ff81afca20583d8dbfc33b5739992/node_modules/ansi-split/index.js
var require_ansi_split = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/ansi-split/1.0.1/67aad4c92927ae2b192b02a2641c2b791d5ff81afca20583d8dbfc33b5739992/node_modules/ansi-split/index.js"(exports2, module2) {
    var isAnsi = require_ansi_regex2()();
    module2.exports = splitAnsi;
    function splitAnsi(str2) {
      var parts = str2.match(isAnsi);
      if (!parts) return [str2];
      var result2 = [];
      var offset = 0;
      var ptr = 0;
      for (var i2 = 0; i2 < parts.length; i2++) {
        offset = str2.indexOf(parts[i2], offset);
        if (offset === -1) throw new Error("Could not split string");
        if (ptr !== offset) result2.push(str2.slice(ptr, offset));
        if (ptr === offset && result2.length) {
          result2[result2.length - 1] += parts[i2];
        } else {
          if (offset === 0) result2.push("");
          result2.push(parts[i2]);
        }
        ptr = offset + parts[i2].length;
      }
      result2.push(str2.slice(ptr));
      return result2;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/clone/1.0.4/3b38ae7253af06c79b035f463a51ee02d8a841591ab9c035944ccca1ba08e34e/node_modules/clone/clone.js
var require_clone5 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/clone/1.0.4/3b38ae7253af06c79b035f463a51ee02d8a841591ab9c035944ccca1ba08e34e/node_modules/clone/clone.js"(exports2, module2) {
    var clone3 = (function() {
      "use strict";
      function clone4(parent, circular, depth, prototype) {
        var filter14;
        if (typeof circular === "object") {
          depth = circular.depth;
          prototype = circular.prototype;
          filter14 = circular.filter;
          circular = circular.circular;
        }
        var allParents = [];
        var allChildren = [];
        var useBuffer = typeof Buffer != "undefined";
        if (typeof circular == "undefined")
          circular = true;
        if (typeof depth == "undefined")
          depth = Infinity;
        function _clone2(parent2, depth2) {
          if (parent2 === null)
            return null;
          if (depth2 == 0)
            return parent2;
          var child;
          var proto2;
          if (typeof parent2 != "object") {
            return parent2;
          }
          if (clone4.__isArray(parent2)) {
            child = [];
          } else if (clone4.__isRegExp(parent2)) {
            child = new RegExp(parent2.source, __getRegExpFlags(parent2));
            if (parent2.lastIndex) child.lastIndex = parent2.lastIndex;
          } else if (clone4.__isDate(parent2)) {
            child = new Date(parent2.getTime());
          } else if (useBuffer && Buffer.isBuffer(parent2)) {
            if (Buffer.allocUnsafe) {
              child = Buffer.allocUnsafe(parent2.length);
            } else {
              child = new Buffer(parent2.length);
            }
            parent2.copy(child);
            return child;
          } else {
            if (typeof prototype == "undefined") {
              proto2 = Object.getPrototypeOf(parent2);
              child = Object.create(proto2);
            } else {
              child = Object.create(prototype);
              proto2 = prototype;
            }
          }
          if (circular) {
            var index = allParents.indexOf(parent2);
            if (index != -1) {
              return allChildren[index];
            }
            allParents.push(parent2);
            allChildren.push(child);
          }
          for (var i2 in parent2) {
            var attrs;
            if (proto2) {
              attrs = Object.getOwnPropertyDescriptor(proto2, i2);
            }
            if (attrs && attrs.set == null) {
              continue;
            }
            child[i2] = _clone2(parent2[i2], depth2 - 1);
          }
          return child;
        }
        return _clone2(parent, depth);
      }
      clone4.clonePrototype = function clonePrototype(parent) {
        if (parent === null)
          return null;
        var c3 = function() {
        };
        c3.prototype = parent;
        return new c3();
      };
      function __objToStr(o2) {
        return Object.prototype.toString.call(o2);
      }
      ;
      clone4.__objToStr = __objToStr;
      function __isDate(o2) {
        return typeof o2 === "object" && __objToStr(o2) === "[object Date]";
      }
      ;
      clone4.__isDate = __isDate;
      function __isArray(o2) {
        return typeof o2 === "object" && __objToStr(o2) === "[object Array]";
      }
      ;
      clone4.__isArray = __isArray;
      function __isRegExp(o2) {
        return typeof o2 === "object" && __objToStr(o2) === "[object RegExp]";
      }
      ;
      clone4.__isRegExp = __isRegExp;
      function __getRegExpFlags(re) {
        var flags = "";
        if (re.global) flags += "g";
        if (re.ignoreCase) flags += "i";
        if (re.multiline) flags += "m";
        return flags;
      }
      ;
      clone4.__getRegExpFlags = __getRegExpFlags;
      return clone4;
    })();
    if (typeof module2 === "object" && module2.exports) {
      module2.exports = clone3;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/defaults/1.0.4/29bb8e20ab3078acf239060bf33b3e556ac2d204ea4e7b1ba6feff011631b888/node_modules/defaults/index.js
var require_defaults2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/defaults/1.0.4/29bb8e20ab3078acf239060bf33b3e556ac2d204ea4e7b1ba6feff011631b888/node_modules/defaults/index.js"(exports2, module2) {
    var clone3 = require_clone5();
    module2.exports = function(options, defaults4) {
      options = options || {};
      Object.keys(defaults4).forEach(function(key) {
        if (typeof options[key] === "undefined") {
          options[key] = clone3(defaults4[key]);
        }
      });
      return options;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/wcwidth/1.0.1/26baf4b65f93ae4df797f8e00bfb30235ae3b78886b07bb20b27a5421175a037/node_modules/wcwidth/combining.js
var require_combining = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/wcwidth/1.0.1/26baf4b65f93ae4df797f8e00bfb30235ae3b78886b07bb20b27a5421175a037/node_modules/wcwidth/combining.js"(exports2, module2) {
    module2.exports = [
      [768, 879],
      [1155, 1158],
      [1160, 1161],
      [1425, 1469],
      [1471, 1471],
      [1473, 1474],
      [1476, 1477],
      [1479, 1479],
      [1536, 1539],
      [1552, 1557],
      [1611, 1630],
      [1648, 1648],
      [1750, 1764],
      [1767, 1768],
      [1770, 1773],
      [1807, 1807],
      [1809, 1809],
      [1840, 1866],
      [1958, 1968],
      [2027, 2035],
      [2305, 2306],
      [2364, 2364],
      [2369, 2376],
      [2381, 2381],
      [2385, 2388],
      [2402, 2403],
      [2433, 2433],
      [2492, 2492],
      [2497, 2500],
      [2509, 2509],
      [2530, 2531],
      [2561, 2562],
      [2620, 2620],
      [2625, 2626],
      [2631, 2632],
      [2635, 2637],
      [2672, 2673],
      [2689, 2690],
      [2748, 2748],
      [2753, 2757],
      [2759, 2760],
      [2765, 2765],
      [2786, 2787],
      [2817, 2817],
      [2876, 2876],
      [2879, 2879],
      [2881, 2883],
      [2893, 2893],
      [2902, 2902],
      [2946, 2946],
      [3008, 3008],
      [3021, 3021],
      [3134, 3136],
      [3142, 3144],
      [3146, 3149],
      [3157, 3158],
      [3260, 3260],
      [3263, 3263],
      [3270, 3270],
      [3276, 3277],
      [3298, 3299],
      [3393, 3395],
      [3405, 3405],
      [3530, 3530],
      [3538, 3540],
      [3542, 3542],
      [3633, 3633],
      [3636, 3642],
      [3655, 3662],
      [3761, 3761],
      [3764, 3769],
      [3771, 3772],
      [3784, 3789],
      [3864, 3865],
      [3893, 3893],
      [3895, 3895],
      [3897, 3897],
      [3953, 3966],
      [3968, 3972],
      [3974, 3975],
      [3984, 3991],
      [3993, 4028],
      [4038, 4038],
      [4141, 4144],
      [4146, 4146],
      [4150, 4151],
      [4153, 4153],
      [4184, 4185],
      [4448, 4607],
      [4959, 4959],
      [5906, 5908],
      [5938, 5940],
      [5970, 5971],
      [6002, 6003],
      [6068, 6069],
      [6071, 6077],
      [6086, 6086],
      [6089, 6099],
      [6109, 6109],
      [6155, 6157],
      [6313, 6313],
      [6432, 6434],
      [6439, 6440],
      [6450, 6450],
      [6457, 6459],
      [6679, 6680],
      [6912, 6915],
      [6964, 6964],
      [6966, 6970],
      [6972, 6972],
      [6978, 6978],
      [7019, 7027],
      [7616, 7626],
      [7678, 7679],
      [8203, 8207],
      [8234, 8238],
      [8288, 8291],
      [8298, 8303],
      [8400, 8431],
      [12330, 12335],
      [12441, 12442],
      [43014, 43014],
      [43019, 43019],
      [43045, 43046],
      [64286, 64286],
      [65024, 65039],
      [65056, 65059],
      [65279, 65279],
      [65529, 65531],
      [68097, 68099],
      [68101, 68102],
      [68108, 68111],
      [68152, 68154],
      [68159, 68159],
      [119143, 119145],
      [119155, 119170],
      [119173, 119179],
      [119210, 119213],
      [119362, 119364],
      [917505, 917505],
      [917536, 917631],
      [917760, 917999]
    ];
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/wcwidth/1.0.1/26baf4b65f93ae4df797f8e00bfb30235ae3b78886b07bb20b27a5421175a037/node_modules/wcwidth/index.js
var require_wcwidth = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/wcwidth/1.0.1/26baf4b65f93ae4df797f8e00bfb30235ae3b78886b07bb20b27a5421175a037/node_modules/wcwidth/index.js"(exports2, module2) {
    "use strict";
    var defaults4 = require_defaults2();
    var combining = require_combining();
    var DEFAULTS2 = {
      nul: 0,
      control: 0
    };
    module2.exports = function wcwidth2(str2) {
      return wcswidth(str2, DEFAULTS2);
    };
    module2.exports.config = function(opts2) {
      opts2 = defaults4(opts2 || {}, DEFAULTS2);
      return function wcwidth2(str2) {
        return wcswidth(str2, opts2);
      };
    };
    function wcswidth(str2, opts2) {
      if (typeof str2 !== "string") return wcwidth(str2, opts2);
      var s = 0;
      for (var i2 = 0; i2 < str2.length; i2++) {
        var n2 = wcwidth(str2.charCodeAt(i2), opts2);
        if (n2 < 0) return -1;
        s += n2;
      }
      return s;
    }
    function wcwidth(ucs, opts2) {
      if (ucs === 0) return opts2.nul;
      if (ucs < 32 || ucs >= 127 && ucs < 160) return opts2.control;
      if (bisearch(ucs)) return 0;
      return 1 + (ucs >= 4352 && (ucs <= 4447 || // Hangul Jamo init. consonants
      ucs == 9001 || ucs == 9002 || ucs >= 11904 && ucs <= 42191 && ucs != 12351 || // CJK ... Yi
      ucs >= 44032 && ucs <= 55203 || // Hangul Syllables
      ucs >= 63744 && ucs <= 64255 || // CJK Compatibility Ideographs
      ucs >= 65040 && ucs <= 65049 || // Vertical forms
      ucs >= 65072 && ucs <= 65135 || // CJK Compatibility Forms
      ucs >= 65280 && ucs <= 65376 || // Fullwidth Forms
      ucs >= 65504 && ucs <= 65510 || ucs >= 131072 && ucs <= 196605 || ucs >= 196608 && ucs <= 262141));
    }
    function bisearch(ucs) {
      var min = 0;
      var max3 = combining.length - 1;
      var mid;
      if (ucs < combining[0][0] || ucs > combining[max3][1]) return false;
      while (max3 >= min) {
        mid = Math.floor((min + max3) / 2);
        if (ucs > combining[mid][1]) min = mid + 1;
        else if (ucs < combining[mid][0]) max3 = mid - 1;
        else return true;
      }
      return false;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/ansi-diff/1.2.0/cffa105509e845dfabd581383461d0305eac07d3d07a46811b16d3677bb147f4/node_modules/ansi-diff/index.js
var require_ansi_diff = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/ansi-diff/1.2.0/cffa105509e845dfabd581383461d0305eac07d3d07a46811b16d3677bb147f4/node_modules/ansi-diff/index.js"(exports2, module2) {
    var ansi = require_ansi_split();
    var wcwidth = require_wcwidth();
    var CLEAR_LINE = Buffer.from([27, 91, 48, 75]);
    var NEWLINE = Buffer.from("\n");
    module2.exports = Diff;
    function Diff(opts2) {
      if (!(this instanceof Diff)) return new Diff(opts2);
      if (!opts2) opts2 = {};
      this.x = 0;
      this.y = 0;
      this.width = opts2.width || Infinity;
      this.height = opts2.height || Infinity;
      this._buffer = null;
      this._out = [];
      this._lines = [];
    }
    Diff.prototype.resize = function(opts2) {
      if (!opts2) opts2 = {};
      if (opts2.width) this.width = opts2.width;
      if (opts2.height) this.height = opts2.height;
      if (this._buffer) this.update(this._buffer);
      var last = top(this._lines);
      if (!last) {
        this.x = 0;
        this.y = 0;
      } else {
        this.x = last.remainder;
        this.y = last.y + last.height;
      }
    };
    Diff.prototype.toString = function() {
      return this._buffer;
    };
    Diff.prototype.update = function(buffer3, opts2) {
      this._buffer = Buffer.isBuffer(buffer3) ? buffer3.toString() : buffer3;
      var other = this._buffer;
      var oldLines = this._lines;
      var lines = split2(other, this);
      this._lines = lines;
      this._out = [];
      var min = Math.min(lines.length, oldLines.length);
      var i2 = 0;
      var a2;
      var b;
      var scrub = false;
      for (; i2 < min; i2++) {
        a2 = lines[i2];
        b = oldLines[i2];
        if (same(a2, b)) continue;
        if (!scrub && this.x !== this.width && inlineDiff(a2, b)) {
          var left = a2.diffLeft(b);
          var right = a2.diffRight(b);
          var slice3 = a2.raw.slice(left, right ? -right : a2.length);
          if (left + right > 4 && left + slice3.length < this.width - 1) {
            this._moveTo(left, a2.y);
            this._push(Buffer.from(slice3));
            this.x += slice3.length;
            continue;
          }
        }
        this._moveTo(0, a2.y);
        this._write(a2);
        if (a2.y !== b.y || a2.height !== b.height) scrub = true;
        if (b.length > a2.length || scrub) this._push(CLEAR_LINE);
        if (a2.newline) this._newline();
      }
      for (; i2 < lines.length; i2++) {
        a2 = lines[i2];
        this._moveTo(0, a2.y);
        this._write(a2);
        if (scrub) this._push(CLEAR_LINE);
        if (a2.newline) this._newline();
      }
      var oldLast = top(oldLines);
      var last = top(lines);
      if (oldLast && (!last || last.y + last.height < oldLast.y + oldLast.height)) {
        this._clearDown(oldLast.y + oldLast.height);
      }
      if (opts2 && opts2.moveTo) {
        this._moveTo(opts2.moveTo[0], opts2.moveTo[1]);
      } else if (last) {
        this._moveTo(last.remainder, last.y + last.height);
      }
      return Buffer.concat(this._out);
    };
    Diff.prototype._clearDown = function(y) {
      var x = this.x;
      for (var i2 = this.y; i2 <= y; i2++) {
        this._moveTo(x, i2);
        this._push(CLEAR_LINE);
        x = 0;
      }
    };
    Diff.prototype._newline = function() {
      this._push(NEWLINE);
      this.x = 0;
      this.y++;
    };
    Diff.prototype._write = function(line) {
      this._out.push(line.toBuffer());
      this.x = line.remainder;
      this.y += line.height;
    };
    Diff.prototype._moveTo = function(x, y) {
      var dx = x - this.x;
      var dy = y - this.y;
      if (dx > 0) this._push(moveRight(dx));
      else if (dx < 0) this._push(moveLeft(-dx));
      if (dy > 0) this._push(moveDown(dy));
      else if (dy < 0) this._push(moveUp(-dy));
      this.x = x;
      this.y = y;
    };
    Diff.prototype._push = function(buf) {
      this._out.push(buf);
    };
    function same(a2, b) {
      return a2.y === b.y && a2.width === b.width && a2.raw === b.raw && a2.newline === b.newline;
    }
    function top(list2) {
      return list2.length ? list2[list2.length - 1] : null;
    }
    function Line(str2, y, nl, term) {
      this.y = y;
      this.width = term.width;
      this.parts = ansi(str2);
      this.length = length(this.parts);
      this.raw = str2;
      this.newline = nl;
      this.height = Math.floor(this.length / term.width);
      this.remainder = this.length - (this.height && this.height * term.width);
      if (this.height && !this.remainder) {
        this.height--;
        this.remainder = this.width;
      }
    }
    Line.prototype.diffLeft = function(other) {
      var left = 0;
      for (; left < this.length; left++) {
        if (this.raw[left] !== other.raw[left]) return left;
      }
      return left;
    };
    Line.prototype.diffRight = function(other) {
      var right = 0;
      for (; right < this.length; right++) {
        var r = this.length - right - 1;
        if (this.raw[r] !== other.raw[r]) return right;
      }
      return right;
    };
    Line.prototype.toBuffer = function() {
      return Buffer.from(this.raw);
    };
    function inlineDiff(a2, b) {
      return a2.length === b.length && a2.parts.length === 1 && b.parts.length === 1 && a2.y === b.y && a2.newline && b.newline && a2.width === b.width;
    }
    function split2(str2, term) {
      var y = 0;
      var lines = str2.split("\n");
      var wrapped = [];
      var line;
      for (var i2 = 0; i2 < lines.length; i2++) {
        line = new Line(lines[i2], y, i2 < lines.length - 1, term);
        y += line.height + (line.newline ? 1 : 0);
        wrapped.push(line);
      }
      return wrapped;
    }
    function moveUp(n2) {
      return Buffer.from("1b5b" + toHex(n2) + "41", "hex");
    }
    function moveDown(n2) {
      return Buffer.from("1b5b" + toHex(n2) + "42", "hex");
    }
    function moveRight(n2) {
      return Buffer.from("1b5b" + toHex(n2) + "43", "hex");
    }
    function moveLeft(n2) {
      return Buffer.from("1b5b" + toHex(n2) + "44", "hex");
    }
    function length(parts) {
      var len = 0;
      for (var i2 = 0; i2 < parts.length; i2 += 2) {
        len += wcwidth(parts[i2]);
      }
      return len;
    }
    function toHex(n2) {
      return Buffer.from("" + n2).toString("hex");
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/isFunction.js
var require_isFunction3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/isFunction.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.isFunction = void 0;
    function isFunction(value) {
      return typeof value === "function";
    }
    exports2.isFunction = isFunction;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/createErrorClass.js
var require_createErrorClass = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/createErrorClass.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.createErrorClass = void 0;
    function createErrorClass(createImpl) {
      var _super = function(instance) {
        Error.call(instance);
        instance.stack = new Error().stack;
      };
      var ctorFunc = createImpl(_super);
      ctorFunc.prototype = Object.create(Error.prototype);
      ctorFunc.prototype.constructor = ctorFunc;
      return ctorFunc;
    }
    exports2.createErrorClass = createErrorClass;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/UnsubscriptionError.js
var require_UnsubscriptionError = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/UnsubscriptionError.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.UnsubscriptionError = void 0;
    var createErrorClass_1 = require_createErrorClass();
    exports2.UnsubscriptionError = createErrorClass_1.createErrorClass(function(_super) {
      return function UnsubscriptionErrorImpl(errors2) {
        _super(this);
        this.message = errors2 ? errors2.length + " errors occurred during unsubscription:\n" + errors2.map(function(err, i2) {
          return i2 + 1 + ") " + err.toString();
        }).join("\n  ") : "";
        this.name = "UnsubscriptionError";
        this.errors = errors2;
      };
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/arrRemove.js
var require_arrRemove = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/arrRemove.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.arrRemove = void 0;
    function arrRemove(arr, item) {
      if (arr) {
        var index = arr.indexOf(item);
        0 <= index && arr.splice(index, 1);
      }
    }
    exports2.arrRemove = arrRemove;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/Subscription.js
var require_Subscription = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/Subscription.js"(exports2) {
    "use strict";
    var __values2 = exports2 && exports2.__values || function(o2) {
      var s = typeof Symbol === "function" && Symbol.iterator, m = s && o2[s], i2 = 0;
      if (m) return m.call(o2);
      if (o2 && typeof o2.length === "number") return {
        next: function() {
          if (o2 && i2 >= o2.length) o2 = void 0;
          return { value: o2 && o2[i2++], done: !o2 };
        }
      };
      throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
    };
    var __read2 = exports2 && exports2.__read || function(o2, n2) {
      var m = typeof Symbol === "function" && o2[Symbol.iterator];
      if (!m) return o2;
      var i2 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i2.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i2["return"])) m.call(i2);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i2 = 0, il = from5.length, j2 = to.length; i2 < il; i2++, j2++)
        to[j2] = from5[i2];
      return to;
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.isSubscription = exports2.EMPTY_SUBSCRIPTION = exports2.Subscription = void 0;
    var isFunction_1 = require_isFunction3();
    var UnsubscriptionError_1 = require_UnsubscriptionError();
    var arrRemove_1 = require_arrRemove();
    var Subscription = (function() {
      function Subscription2(initialTeardown) {
        this.initialTeardown = initialTeardown;
        this.closed = false;
        this._parentage = null;
        this._finalizers = null;
      }
      Subscription2.prototype.unsubscribe = function() {
        var e_1, _a, e_2, _b;
        var errors2;
        if (!this.closed) {
          this.closed = true;
          var _parentage = this._parentage;
          if (_parentage) {
            this._parentage = null;
            if (Array.isArray(_parentage)) {
              try {
                for (var _parentage_1 = __values2(_parentage), _parentage_1_1 = _parentage_1.next(); !_parentage_1_1.done; _parentage_1_1 = _parentage_1.next()) {
                  var parent_1 = _parentage_1_1.value;
                  parent_1.remove(this);
                }
              } catch (e_1_1) {
                e_1 = { error: e_1_1 };
              } finally {
                try {
                  if (_parentage_1_1 && !_parentage_1_1.done && (_a = _parentage_1.return)) _a.call(_parentage_1);
                } finally {
                  if (e_1) throw e_1.error;
                }
              }
            } else {
              _parentage.remove(this);
            }
          }
          var initialFinalizer = this.initialTeardown;
          if (isFunction_1.isFunction(initialFinalizer)) {
            try {
              initialFinalizer();
            } catch (e) {
              errors2 = e instanceof UnsubscriptionError_1.UnsubscriptionError ? e.errors : [e];
            }
          }
          var _finalizers = this._finalizers;
          if (_finalizers) {
            this._finalizers = null;
            try {
              for (var _finalizers_1 = __values2(_finalizers), _finalizers_1_1 = _finalizers_1.next(); !_finalizers_1_1.done; _finalizers_1_1 = _finalizers_1.next()) {
                var finalizer = _finalizers_1_1.value;
                try {
                  execFinalizer(finalizer);
                } catch (err) {
                  errors2 = errors2 !== null && errors2 !== void 0 ? errors2 : [];
                  if (err instanceof UnsubscriptionError_1.UnsubscriptionError) {
                    errors2 = __spreadArray2(__spreadArray2([], __read2(errors2)), __read2(err.errors));
                  } else {
                    errors2.push(err);
                  }
                }
              }
            } catch (e_2_1) {
              e_2 = { error: e_2_1 };
            } finally {
              try {
                if (_finalizers_1_1 && !_finalizers_1_1.done && (_b = _finalizers_1.return)) _b.call(_finalizers_1);
              } finally {
                if (e_2) throw e_2.error;
              }
            }
          }
          if (errors2) {
            throw new UnsubscriptionError_1.UnsubscriptionError(errors2);
          }
        }
      };
      Subscription2.prototype.add = function(teardown) {
        var _a;
        if (teardown && teardown !== this) {
          if (this.closed) {
            execFinalizer(teardown);
          } else {
            if (teardown instanceof Subscription2) {
              if (teardown.closed || teardown._hasParent(this)) {
                return;
              }
              teardown._addParent(this);
            }
            (this._finalizers = (_a = this._finalizers) !== null && _a !== void 0 ? _a : []).push(teardown);
          }
        }
      };
      Subscription2.prototype._hasParent = function(parent) {
        var _parentage = this._parentage;
        return _parentage === parent || Array.isArray(_parentage) && _parentage.includes(parent);
      };
      Subscription2.prototype._addParent = function(parent) {
        var _parentage = this._parentage;
        this._parentage = Array.isArray(_parentage) ? (_parentage.push(parent), _parentage) : _parentage ? [_parentage, parent] : parent;
      };
      Subscription2.prototype._removeParent = function(parent) {
        var _parentage = this._parentage;
        if (_parentage === parent) {
          this._parentage = null;
        } else if (Array.isArray(_parentage)) {
          arrRemove_1.arrRemove(_parentage, parent);
        }
      };
      Subscription2.prototype.remove = function(teardown) {
        var _finalizers = this._finalizers;
        _finalizers && arrRemove_1.arrRemove(_finalizers, teardown);
        if (teardown instanceof Subscription2) {
          teardown._removeParent(this);
        }
      };
      Subscription2.EMPTY = (function() {
        var empty4 = new Subscription2();
        empty4.closed = true;
        return empty4;
      })();
      return Subscription2;
    })();
    exports2.Subscription = Subscription;
    exports2.EMPTY_SUBSCRIPTION = Subscription.EMPTY;
    function isSubscription(value) {
      return value instanceof Subscription || value && "closed" in value && isFunction_1.isFunction(value.remove) && isFunction_1.isFunction(value.add) && isFunction_1.isFunction(value.unsubscribe);
    }
    exports2.isSubscription = isSubscription;
    function execFinalizer(finalizer) {
      if (isFunction_1.isFunction(finalizer)) {
        finalizer();
      } else {
        finalizer.unsubscribe();
      }
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/config.js
var require_config4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/config.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.config = void 0;
    exports2.config = {
      onUnhandledError: null,
      onStoppedNotification: null,
      Promise: void 0,
      useDeprecatedSynchronousErrorHandling: false,
      useDeprecatedNextContext: false
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/timeoutProvider.js
var require_timeoutProvider = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/timeoutProvider.js"(exports2) {
    "use strict";
    var __read2 = exports2 && exports2.__read || function(o2, n2) {
      var m = typeof Symbol === "function" && o2[Symbol.iterator];
      if (!m) return o2;
      var i2 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i2.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i2["return"])) m.call(i2);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i2 = 0, il = from5.length, j2 = to.length; i2 < il; i2++, j2++)
        to[j2] = from5[i2];
      return to;
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.timeoutProvider = void 0;
    exports2.timeoutProvider = {
      setTimeout: function(handler77, timeout) {
        var args = [];
        for (var _i = 2; _i < arguments.length; _i++) {
          args[_i - 2] = arguments[_i];
        }
        var delegate = exports2.timeoutProvider.delegate;
        if (delegate === null || delegate === void 0 ? void 0 : delegate.setTimeout) {
          return delegate.setTimeout.apply(delegate, __spreadArray2([handler77, timeout], __read2(args)));
        }
        return setTimeout.apply(void 0, __spreadArray2([handler77, timeout], __read2(args)));
      },
      clearTimeout: function(handle) {
        var delegate = exports2.timeoutProvider.delegate;
        return ((delegate === null || delegate === void 0 ? void 0 : delegate.clearTimeout) || clearTimeout)(handle);
      },
      delegate: void 0
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/reportUnhandledError.js
var require_reportUnhandledError = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/reportUnhandledError.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.reportUnhandledError = void 0;
    var config_1 = require_config4();
    var timeoutProvider_1 = require_timeoutProvider();
    function reportUnhandledError(err) {
      timeoutProvider_1.timeoutProvider.setTimeout(function() {
        var onUnhandledError = config_1.config.onUnhandledError;
        if (onUnhandledError) {
          onUnhandledError(err);
        } else {
          throw err;
        }
      });
    }
    exports2.reportUnhandledError = reportUnhandledError;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/noop.js
var require_noop3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/noop.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.noop = void 0;
    function noop5() {
    }
    exports2.noop = noop5;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/NotificationFactories.js
var require_NotificationFactories = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/NotificationFactories.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.createNotification = exports2.nextNotification = exports2.errorNotification = exports2.COMPLETE_NOTIFICATION = void 0;
    exports2.COMPLETE_NOTIFICATION = (function() {
      return createNotification("C", void 0, void 0);
    })();
    function errorNotification(error) {
      return createNotification("E", void 0, error);
    }
    exports2.errorNotification = errorNotification;
    function nextNotification(value) {
      return createNotification("N", value, void 0);
    }
    exports2.nextNotification = nextNotification;
    function createNotification(kind, value, error) {
      return {
        kind,
        value,
        error
      };
    }
    exports2.createNotification = createNotification;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/errorContext.js
var require_errorContext = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/errorContext.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.captureError = exports2.errorContext = void 0;
    var config_1 = require_config4();
    var context = null;
    function errorContext(cb) {
      if (config_1.config.useDeprecatedSynchronousErrorHandling) {
        var isRoot2 = !context;
        if (isRoot2) {
          context = { errorThrown: false, error: null };
        }
        cb();
        if (isRoot2) {
          var _a = context, errorThrown = _a.errorThrown, error = _a.error;
          context = null;
          if (errorThrown) {
            throw error;
          }
        }
      } else {
        cb();
      }
    }
    exports2.errorContext = errorContext;
    function captureError(err) {
      if (config_1.config.useDeprecatedSynchronousErrorHandling && context) {
        context.errorThrown = true;
        context.error = err;
      }
    }
    exports2.captureError = captureError;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/Subscriber.js
var require_Subscriber = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/Subscriber.js"(exports2) {
    "use strict";
    var __extends2 = exports2 && exports2.__extends || /* @__PURE__ */ (function() {
      var extendStatics2 = function(d, b) {
        extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) {
          d2.__proto__ = b2;
        } || function(d2, b2) {
          for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p];
        };
        return extendStatics2(d, b);
      };
      return function(d, b) {
        if (typeof b !== "function" && b !== null)
          throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics2(d, b);
        function __() {
          this.constructor = d;
        }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
      };
    })();
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.EMPTY_OBSERVER = exports2.SafeSubscriber = exports2.Subscriber = void 0;
    var isFunction_1 = require_isFunction3();
    var Subscription_1 = require_Subscription();
    var config_1 = require_config4();
    var reportUnhandledError_1 = require_reportUnhandledError();
    var noop_1 = require_noop3();
    var NotificationFactories_1 = require_NotificationFactories();
    var timeoutProvider_1 = require_timeoutProvider();
    var errorContext_1 = require_errorContext();
    var Subscriber = (function(_super) {
      __extends2(Subscriber2, _super);
      function Subscriber2(destination) {
        var _this = _super.call(this) || this;
        _this.isStopped = false;
        if (destination) {
          _this.destination = destination;
          if (Subscription_1.isSubscription(destination)) {
            destination.add(_this);
          }
        } else {
          _this.destination = exports2.EMPTY_OBSERVER;
        }
        return _this;
      }
      Subscriber2.create = function(next2, error, complete2) {
        return new SafeSubscriber(next2, error, complete2);
      };
      Subscriber2.prototype.next = function(value) {
        if (this.isStopped) {
          handleStoppedNotification(NotificationFactories_1.nextNotification(value), this);
        } else {
          this._next(value);
        }
      };
      Subscriber2.prototype.error = function(err) {
        if (this.isStopped) {
          handleStoppedNotification(NotificationFactories_1.errorNotification(err), this);
        } else {
          this.isStopped = true;
          this._error(err);
        }
      };
      Subscriber2.prototype.complete = function() {
        if (this.isStopped) {
          handleStoppedNotification(NotificationFactories_1.COMPLETE_NOTIFICATION, this);
        } else {
          this.isStopped = true;
          this._complete();
        }
      };
      Subscriber2.prototype.unsubscribe = function() {
        if (!this.closed) {
          this.isStopped = true;
          _super.prototype.unsubscribe.call(this);
          this.destination = null;
        }
      };
      Subscriber2.prototype._next = function(value) {
        this.destination.next(value);
      };
      Subscriber2.prototype._error = function(err) {
        try {
          this.destination.error(err);
        } finally {
          this.unsubscribe();
        }
      };
      Subscriber2.prototype._complete = function() {
        try {
          this.destination.complete();
        } finally {
          this.unsubscribe();
        }
      };
      return Subscriber2;
    })(Subscription_1.Subscription);
    exports2.Subscriber = Subscriber;
    var _bind = Function.prototype.bind;
    function bind3(fn, thisArg) {
      return _bind.call(fn, thisArg);
    }
    var ConsumerObserver = (function() {
      function ConsumerObserver2(partialObserver) {
        this.partialObserver = partialObserver;
      }
      ConsumerObserver2.prototype.next = function(value) {
        var partialObserver = this.partialObserver;
        if (partialObserver.next) {
          try {
            partialObserver.next(value);
          } catch (error) {
            handleUnhandledError(error);
          }
        }
      };
      ConsumerObserver2.prototype.error = function(err) {
        var partialObserver = this.partialObserver;
        if (partialObserver.error) {
          try {
            partialObserver.error(err);
          } catch (error) {
            handleUnhandledError(error);
          }
        } else {
          handleUnhandledError(err);
        }
      };
      ConsumerObserver2.prototype.complete = function() {
        var partialObserver = this.partialObserver;
        if (partialObserver.complete) {
          try {
            partialObserver.complete();
          } catch (error) {
            handleUnhandledError(error);
          }
        }
      };
      return ConsumerObserver2;
    })();
    var SafeSubscriber = (function(_super) {
      __extends2(SafeSubscriber2, _super);
      function SafeSubscriber2(observerOrNext, error, complete2) {
        var _this = _super.call(this) || this;
        var partialObserver;
        if (isFunction_1.isFunction(observerOrNext) || !observerOrNext) {
          partialObserver = {
            next: observerOrNext !== null && observerOrNext !== void 0 ? observerOrNext : void 0,
            error: error !== null && error !== void 0 ? error : void 0,
            complete: complete2 !== null && complete2 !== void 0 ? complete2 : void 0
          };
        } else {
          var context_1;
          if (_this && config_1.config.useDeprecatedNextContext) {
            context_1 = Object.create(observerOrNext);
            context_1.unsubscribe = function() {
              return _this.unsubscribe();
            };
            partialObserver = {
              next: observerOrNext.next && bind3(observerOrNext.next, context_1),
              error: observerOrNext.error && bind3(observerOrNext.error, context_1),
              complete: observerOrNext.complete && bind3(observerOrNext.complete, context_1)
            };
          } else {
            partialObserver = observerOrNext;
          }
        }
        _this.destination = new ConsumerObserver(partialObserver);
        return _this;
      }
      return SafeSubscriber2;
    })(Subscriber);
    exports2.SafeSubscriber = SafeSubscriber;
    function handleUnhandledError(error) {
      if (config_1.config.useDeprecatedSynchronousErrorHandling) {
        errorContext_1.captureError(error);
      } else {
        reportUnhandledError_1.reportUnhandledError(error);
      }
    }
    function defaultErrorHandler(err) {
      throw err;
    }
    function handleStoppedNotification(notification, subscriber) {
      var onStoppedNotification = config_1.config.onStoppedNotification;
      onStoppedNotification && timeoutProvider_1.timeoutProvider.setTimeout(function() {
        return onStoppedNotification(notification, subscriber);
      });
    }
    exports2.EMPTY_OBSERVER = {
      closed: true,
      next: noop_1.noop,
      error: defaultErrorHandler,
      complete: noop_1.noop
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/symbol/observable.js
var require_observable = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/symbol/observable.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.observable = void 0;
    exports2.observable = (function() {
      return typeof Symbol === "function" && Symbol.observable || "@@observable";
    })();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/identity.js
var require_identity5 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/identity.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.identity = void 0;
    function identity5(x) {
      return x;
    }
    exports2.identity = identity5;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/pipe.js
var require_pipe2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/pipe.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.pipeFromArray = exports2.pipe = void 0;
    var identity_1 = require_identity5();
    function pipe2() {
      var fns = [];
      for (var _i = 0; _i < arguments.length; _i++) {
        fns[_i] = arguments[_i];
      }
      return pipeFromArray(fns);
    }
    exports2.pipe = pipe2;
    function pipeFromArray(fns) {
      if (fns.length === 0) {
        return identity_1.identity;
      }
      if (fns.length === 1) {
        return fns[0];
      }
      return function piped(input) {
        return fns.reduce(function(prev, fn) {
          return fn(prev);
        }, input);
      };
    }
    exports2.pipeFromArray = pipeFromArray;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/Observable.js
var require_Observable = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/Observable.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.Observable = void 0;
    var Subscriber_1 = require_Subscriber();
    var Subscription_1 = require_Subscription();
    var observable_1 = require_observable();
    var pipe_1 = require_pipe2();
    var config_1 = require_config4();
    var isFunction_1 = require_isFunction3();
    var errorContext_1 = require_errorContext();
    var Observable = (function() {
      function Observable2(subscribe) {
        if (subscribe) {
          this._subscribe = subscribe;
        }
      }
      Observable2.prototype.lift = function(operator) {
        var observable = new Observable2();
        observable.source = this;
        observable.operator = operator;
        return observable;
      };
      Observable2.prototype.subscribe = function(observerOrNext, error, complete2) {
        var _this = this;
        var subscriber = isSubscriber(observerOrNext) ? observerOrNext : new Subscriber_1.SafeSubscriber(observerOrNext, error, complete2);
        errorContext_1.errorContext(function() {
          var _a = _this, operator = _a.operator, source = _a.source;
          subscriber.add(operator ? operator.call(subscriber, source) : source ? _this._subscribe(subscriber) : _this._trySubscribe(subscriber));
        });
        return subscriber;
      };
      Observable2.prototype._trySubscribe = function(sink) {
        try {
          return this._subscribe(sink);
        } catch (err) {
          sink.error(err);
        }
      };
      Observable2.prototype.forEach = function(next2, promiseCtor) {
        var _this = this;
        promiseCtor = getPromiseCtor(promiseCtor);
        return new promiseCtor(function(resolve3, reject3) {
          var subscriber = new Subscriber_1.SafeSubscriber({
            next: function(value) {
              try {
                next2(value);
              } catch (err) {
                reject3(err);
                subscriber.unsubscribe();
              }
            },
            error: reject3,
            complete: resolve3
          });
          _this.subscribe(subscriber);
        });
      };
      Observable2.prototype._subscribe = function(subscriber) {
        var _a;
        return (_a = this.source) === null || _a === void 0 ? void 0 : _a.subscribe(subscriber);
      };
      Observable2.prototype[observable_1.observable] = function() {
        return this;
      };
      Observable2.prototype.pipe = function() {
        var operations = [];
        for (var _i = 0; _i < arguments.length; _i++) {
          operations[_i] = arguments[_i];
        }
        return pipe_1.pipeFromArray(operations)(this);
      };
      Observable2.prototype.toPromise = function(promiseCtor) {
        var _this = this;
        promiseCtor = getPromiseCtor(promiseCtor);
        return new promiseCtor(function(resolve3, reject3) {
          var value;
          _this.subscribe(function(x) {
            return value = x;
          }, function(err) {
            return reject3(err);
          }, function() {
            return resolve3(value);
          });
        });
      };
      Observable2.create = function(subscribe) {
        return new Observable2(subscribe);
      };
      return Observable2;
    })();
    exports2.Observable = Observable;
    function getPromiseCtor(promiseCtor) {
      var _a;
      return (_a = promiseCtor !== null && promiseCtor !== void 0 ? promiseCtor : config_1.config.Promise) !== null && _a !== void 0 ? _a : Promise;
    }
    function isObserver(value) {
      return value && isFunction_1.isFunction(value.next) && isFunction_1.isFunction(value.error) && isFunction_1.isFunction(value.complete);
    }
    function isSubscriber(value) {
      return value && value instanceof Subscriber_1.Subscriber || isObserver(value) && Subscription_1.isSubscription(value);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/lift.js
var require_lift = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/lift.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.operate = exports2.hasLift = void 0;
    var isFunction_1 = require_isFunction3();
    function hasLift(source) {
      return isFunction_1.isFunction(source === null || source === void 0 ? void 0 : source.lift);
    }
    exports2.hasLift = hasLift;
    function operate(init2) {
      return function(source) {
        if (hasLift(source)) {
          return source.lift(function(liftedSource) {
            try {
              return init2(liftedSource, this);
            } catch (err) {
              this.error(err);
            }
          });
        }
        throw new TypeError("Unable to lift unknown Observable type");
      };
    }
    exports2.operate = operate;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/OperatorSubscriber.js
var require_OperatorSubscriber = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/OperatorSubscriber.js"(exports2) {
    "use strict";
    var __extends2 = exports2 && exports2.__extends || /* @__PURE__ */ (function() {
      var extendStatics2 = function(d, b) {
        extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) {
          d2.__proto__ = b2;
        } || function(d2, b2) {
          for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p];
        };
        return extendStatics2(d, b);
      };
      return function(d, b) {
        if (typeof b !== "function" && b !== null)
          throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics2(d, b);
        function __() {
          this.constructor = d;
        }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
      };
    })();
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.OperatorSubscriber = exports2.createOperatorSubscriber = void 0;
    var Subscriber_1 = require_Subscriber();
    function createOperatorSubscriber(destination, onNext, onComplete, onError, onFinalize) {
      return new OperatorSubscriber(destination, onNext, onComplete, onError, onFinalize);
    }
    exports2.createOperatorSubscriber = createOperatorSubscriber;
    var OperatorSubscriber = (function(_super) {
      __extends2(OperatorSubscriber2, _super);
      function OperatorSubscriber2(destination, onNext, onComplete, onError, onFinalize, shouldUnsubscribe) {
        var _this = _super.call(this, destination) || this;
        _this.onFinalize = onFinalize;
        _this.shouldUnsubscribe = shouldUnsubscribe;
        _this._next = onNext ? function(value) {
          try {
            onNext(value);
          } catch (err) {
            destination.error(err);
          }
        } : _super.prototype._next;
        _this._error = onError ? function(err) {
          try {
            onError(err);
          } catch (err2) {
            destination.error(err2);
          } finally {
            this.unsubscribe();
          }
        } : _super.prototype._error;
        _this._complete = onComplete ? function() {
          try {
            onComplete();
          } catch (err) {
            destination.error(err);
          } finally {
            this.unsubscribe();
          }
        } : _super.prototype._complete;
        return _this;
      }
      OperatorSubscriber2.prototype.unsubscribe = function() {
        var _a;
        if (!this.shouldUnsubscribe || this.shouldUnsubscribe()) {
          var closed_1 = this.closed;
          _super.prototype.unsubscribe.call(this);
          !closed_1 && ((_a = this.onFinalize) === null || _a === void 0 ? void 0 : _a.call(this));
        }
      };
      return OperatorSubscriber2;
    })(Subscriber_1.Subscriber);
    exports2.OperatorSubscriber = OperatorSubscriber;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/refCount.js
var require_refCount = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/refCount.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.refCount = void 0;
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    function refCount() {
      return lift_1.operate(function(source, subscriber) {
        var connection = null;
        source._refCount++;
        var refCounter = OperatorSubscriber_1.createOperatorSubscriber(subscriber, void 0, void 0, void 0, function() {
          if (!source || source._refCount <= 0 || 0 < --source._refCount) {
            connection = null;
            return;
          }
          var sharedConnection = source._connection;
          var conn = connection;
          connection = null;
          if (sharedConnection && (!conn || sharedConnection === conn)) {
            sharedConnection.unsubscribe();
          }
          subscriber.unsubscribe();
        });
        source.subscribe(refCounter);
        if (!refCounter.closed) {
          connection = source.connect();
        }
      });
    }
    exports2.refCount = refCount;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/ConnectableObservable.js
var require_ConnectableObservable = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/ConnectableObservable.js"(exports2) {
    "use strict";
    var __extends2 = exports2 && exports2.__extends || /* @__PURE__ */ (function() {
      var extendStatics2 = function(d, b) {
        extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) {
          d2.__proto__ = b2;
        } || function(d2, b2) {
          for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p];
        };
        return extendStatics2(d, b);
      };
      return function(d, b) {
        if (typeof b !== "function" && b !== null)
          throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics2(d, b);
        function __() {
          this.constructor = d;
        }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
      };
    })();
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.ConnectableObservable = void 0;
    var Observable_1 = require_Observable();
    var Subscription_1 = require_Subscription();
    var refCount_1 = require_refCount();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    var lift_1 = require_lift();
    var ConnectableObservable = (function(_super) {
      __extends2(ConnectableObservable2, _super);
      function ConnectableObservable2(source, subjectFactory) {
        var _this = _super.call(this) || this;
        _this.source = source;
        _this.subjectFactory = subjectFactory;
        _this._subject = null;
        _this._refCount = 0;
        _this._connection = null;
        if (lift_1.hasLift(source)) {
          _this.lift = source.lift;
        }
        return _this;
      }
      ConnectableObservable2.prototype._subscribe = function(subscriber) {
        return this.getSubject().subscribe(subscriber);
      };
      ConnectableObservable2.prototype.getSubject = function() {
        var subject = this._subject;
        if (!subject || subject.isStopped) {
          this._subject = this.subjectFactory();
        }
        return this._subject;
      };
      ConnectableObservable2.prototype._teardown = function() {
        this._refCount = 0;
        var _connection = this._connection;
        this._subject = this._connection = null;
        _connection === null || _connection === void 0 ? void 0 : _connection.unsubscribe();
      };
      ConnectableObservable2.prototype.connect = function() {
        var _this = this;
        var connection = this._connection;
        if (!connection) {
          connection = this._connection = new Subscription_1.Subscription();
          var subject_1 = this.getSubject();
          connection.add(this.source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subject_1, void 0, function() {
            _this._teardown();
            subject_1.complete();
          }, function(err) {
            _this._teardown();
            subject_1.error(err);
          }, function() {
            return _this._teardown();
          })));
          if (connection.closed) {
            this._connection = null;
            connection = Subscription_1.Subscription.EMPTY;
          }
        }
        return connection;
      };
      ConnectableObservable2.prototype.refCount = function() {
        return refCount_1.refCount()(this);
      };
      return ConnectableObservable2;
    })(Observable_1.Observable);
    exports2.ConnectableObservable = ConnectableObservable;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/performanceTimestampProvider.js
var require_performanceTimestampProvider = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/performanceTimestampProvider.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.performanceTimestampProvider = void 0;
    exports2.performanceTimestampProvider = {
      now: function() {
        return (exports2.performanceTimestampProvider.delegate || performance).now();
      },
      delegate: void 0
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/animationFrameProvider.js
var require_animationFrameProvider = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/animationFrameProvider.js"(exports2) {
    "use strict";
    var __read2 = exports2 && exports2.__read || function(o2, n2) {
      var m = typeof Symbol === "function" && o2[Symbol.iterator];
      if (!m) return o2;
      var i2 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i2.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i2["return"])) m.call(i2);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i2 = 0, il = from5.length, j2 = to.length; i2 < il; i2++, j2++)
        to[j2] = from5[i2];
      return to;
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.animationFrameProvider = void 0;
    var Subscription_1 = require_Subscription();
    exports2.animationFrameProvider = {
      schedule: function(callback2) {
        var request = requestAnimationFrame;
        var cancel = cancelAnimationFrame;
        var delegate = exports2.animationFrameProvider.delegate;
        if (delegate) {
          request = delegate.requestAnimationFrame;
          cancel = delegate.cancelAnimationFrame;
        }
        var handle = request(function(timestamp2) {
          cancel = void 0;
          callback2(timestamp2);
        });
        return new Subscription_1.Subscription(function() {
          return cancel === null || cancel === void 0 ? void 0 : cancel(handle);
        });
      },
      requestAnimationFrame: function() {
        var args = [];
        for (var _i = 0; _i < arguments.length; _i++) {
          args[_i] = arguments[_i];
        }
        var delegate = exports2.animationFrameProvider.delegate;
        return ((delegate === null || delegate === void 0 ? void 0 : delegate.requestAnimationFrame) || requestAnimationFrame).apply(void 0, __spreadArray2([], __read2(args)));
      },
      cancelAnimationFrame: function() {
        var args = [];
        for (var _i = 0; _i < arguments.length; _i++) {
          args[_i] = arguments[_i];
        }
        var delegate = exports2.animationFrameProvider.delegate;
        return ((delegate === null || delegate === void 0 ? void 0 : delegate.cancelAnimationFrame) || cancelAnimationFrame).apply(void 0, __spreadArray2([], __read2(args)));
      },
      delegate: void 0
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/dom/animationFrames.js
var require_animationFrames = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/dom/animationFrames.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.animationFrames = void 0;
    var Observable_1 = require_Observable();
    var performanceTimestampProvider_1 = require_performanceTimestampProvider();
    var animationFrameProvider_1 = require_animationFrameProvider();
    function animationFrames(timestampProvider) {
      return timestampProvider ? animationFramesFactory(timestampProvider) : DEFAULT_ANIMATION_FRAMES;
    }
    exports2.animationFrames = animationFrames;
    function animationFramesFactory(timestampProvider) {
      return new Observable_1.Observable(function(subscriber) {
        var provider = timestampProvider || performanceTimestampProvider_1.performanceTimestampProvider;
        var start = provider.now();
        var id = 0;
        var run = function() {
          if (!subscriber.closed) {
            id = animationFrameProvider_1.animationFrameProvider.requestAnimationFrame(function(timestamp2) {
              id = 0;
              var now = provider.now();
              subscriber.next({
                timestamp: timestampProvider ? now : timestamp2,
                elapsed: now - start
              });
              run();
            });
          }
        };
        run();
        return function() {
          if (id) {
            animationFrameProvider_1.animationFrameProvider.cancelAnimationFrame(id);
          }
        };
      });
    }
    var DEFAULT_ANIMATION_FRAMES = animationFramesFactory();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/ObjectUnsubscribedError.js
var require_ObjectUnsubscribedError = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/ObjectUnsubscribedError.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.ObjectUnsubscribedError = void 0;
    var createErrorClass_1 = require_createErrorClass();
    exports2.ObjectUnsubscribedError = createErrorClass_1.createErrorClass(function(_super) {
      return function ObjectUnsubscribedErrorImpl() {
        _super(this);
        this.name = "ObjectUnsubscribedError";
        this.message = "object unsubscribed";
      };
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/Subject.js
var require_Subject = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/Subject.js"(exports2) {
    "use strict";
    var __extends2 = exports2 && exports2.__extends || /* @__PURE__ */ (function() {
      var extendStatics2 = function(d, b) {
        extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) {
          d2.__proto__ = b2;
        } || function(d2, b2) {
          for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p];
        };
        return extendStatics2(d, b);
      };
      return function(d, b) {
        if (typeof b !== "function" && b !== null)
          throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics2(d, b);
        function __() {
          this.constructor = d;
        }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
      };
    })();
    var __values2 = exports2 && exports2.__values || function(o2) {
      var s = typeof Symbol === "function" && Symbol.iterator, m = s && o2[s], i2 = 0;
      if (m) return m.call(o2);
      if (o2 && typeof o2.length === "number") return {
        next: function() {
          if (o2 && i2 >= o2.length) o2 = void 0;
          return { value: o2 && o2[i2++], done: !o2 };
        }
      };
      throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.AnonymousSubject = exports2.Subject = void 0;
    var Observable_1 = require_Observable();
    var Subscription_1 = require_Subscription();
    var ObjectUnsubscribedError_1 = require_ObjectUnsubscribedError();
    var arrRemove_1 = require_arrRemove();
    var errorContext_1 = require_errorContext();
    var Subject5 = (function(_super) {
      __extends2(Subject6, _super);
      function Subject6() {
        var _this = _super.call(this) || this;
        _this.closed = false;
        _this.currentObservers = null;
        _this.observers = [];
        _this.isStopped = false;
        _this.hasError = false;
        _this.thrownError = null;
        return _this;
      }
      Subject6.prototype.lift = function(operator) {
        var subject = new AnonymousSubject(this, this);
        subject.operator = operator;
        return subject;
      };
      Subject6.prototype._throwIfClosed = function() {
        if (this.closed) {
          throw new ObjectUnsubscribedError_1.ObjectUnsubscribedError();
        }
      };
      Subject6.prototype.next = function(value) {
        var _this = this;
        errorContext_1.errorContext(function() {
          var e_1, _a;
          _this._throwIfClosed();
          if (!_this.isStopped) {
            if (!_this.currentObservers) {
              _this.currentObservers = Array.from(_this.observers);
            }
            try {
              for (var _b = __values2(_this.currentObservers), _c = _b.next(); !_c.done; _c = _b.next()) {
                var observer = _c.value;
                observer.next(value);
              }
            } catch (e_1_1) {
              e_1 = { error: e_1_1 };
            } finally {
              try {
                if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
              } finally {
                if (e_1) throw e_1.error;
              }
            }
          }
        });
      };
      Subject6.prototype.error = function(err) {
        var _this = this;
        errorContext_1.errorContext(function() {
          _this._throwIfClosed();
          if (!_this.isStopped) {
            _this.hasError = _this.isStopped = true;
            _this.thrownError = err;
            var observers = _this.observers;
            while (observers.length) {
              observers.shift().error(err);
            }
          }
        });
      };
      Subject6.prototype.complete = function() {
        var _this = this;
        errorContext_1.errorContext(function() {
          _this._throwIfClosed();
          if (!_this.isStopped) {
            _this.isStopped = true;
            var observers = _this.observers;
            while (observers.length) {
              observers.shift().complete();
            }
          }
        });
      };
      Subject6.prototype.unsubscribe = function() {
        this.isStopped = this.closed = true;
        this.observers = this.currentObservers = null;
      };
      Object.defineProperty(Subject6.prototype, "observed", {
        get: function() {
          var _a;
          return ((_a = this.observers) === null || _a === void 0 ? void 0 : _a.length) > 0;
        },
        enumerable: false,
        configurable: true
      });
      Subject6.prototype._trySubscribe = function(subscriber) {
        this._throwIfClosed();
        return _super.prototype._trySubscribe.call(this, subscriber);
      };
      Subject6.prototype._subscribe = function(subscriber) {
        this._throwIfClosed();
        this._checkFinalizedStatuses(subscriber);
        return this._innerSubscribe(subscriber);
      };
      Subject6.prototype._innerSubscribe = function(subscriber) {
        var _this = this;
        var _a = this, hasError = _a.hasError, isStopped = _a.isStopped, observers = _a.observers;
        if (hasError || isStopped) {
          return Subscription_1.EMPTY_SUBSCRIPTION;
        }
        this.currentObservers = null;
        observers.push(subscriber);
        return new Subscription_1.Subscription(function() {
          _this.currentObservers = null;
          arrRemove_1.arrRemove(observers, subscriber);
        });
      };
      Subject6.prototype._checkFinalizedStatuses = function(subscriber) {
        var _a = this, hasError = _a.hasError, thrownError = _a.thrownError, isStopped = _a.isStopped;
        if (hasError) {
          subscriber.error(thrownError);
        } else if (isStopped) {
          subscriber.complete();
        }
      };
      Subject6.prototype.asObservable = function() {
        var observable = new Observable_1.Observable();
        observable.source = this;
        return observable;
      };
      Subject6.create = function(destination, source) {
        return new AnonymousSubject(destination, source);
      };
      return Subject6;
    })(Observable_1.Observable);
    exports2.Subject = Subject5;
    var AnonymousSubject = (function(_super) {
      __extends2(AnonymousSubject2, _super);
      function AnonymousSubject2(destination, source) {
        var _this = _super.call(this) || this;
        _this.destination = destination;
        _this.source = source;
        return _this;
      }
      AnonymousSubject2.prototype.next = function(value) {
        var _a, _b;
        (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.next) === null || _b === void 0 ? void 0 : _b.call(_a, value);
      };
      AnonymousSubject2.prototype.error = function(err) {
        var _a, _b;
        (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.error) === null || _b === void 0 ? void 0 : _b.call(_a, err);
      };
      AnonymousSubject2.prototype.complete = function() {
        var _a, _b;
        (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.complete) === null || _b === void 0 ? void 0 : _b.call(_a);
      };
      AnonymousSubject2.prototype._subscribe = function(subscriber) {
        var _a, _b;
        return (_b = (_a = this.source) === null || _a === void 0 ? void 0 : _a.subscribe(subscriber)) !== null && _b !== void 0 ? _b : Subscription_1.EMPTY_SUBSCRIPTION;
      };
      return AnonymousSubject2;
    })(Subject5);
    exports2.AnonymousSubject = AnonymousSubject;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/BehaviorSubject.js
var require_BehaviorSubject = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/BehaviorSubject.js"(exports2) {
    "use strict";
    var __extends2 = exports2 && exports2.__extends || /* @__PURE__ */ (function() {
      var extendStatics2 = function(d, b) {
        extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) {
          d2.__proto__ = b2;
        } || function(d2, b2) {
          for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p];
        };
        return extendStatics2(d, b);
      };
      return function(d, b) {
        if (typeof b !== "function" && b !== null)
          throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics2(d, b);
        function __() {
          this.constructor = d;
        }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
      };
    })();
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.BehaviorSubject = void 0;
    var Subject_1 = require_Subject();
    var BehaviorSubject = (function(_super) {
      __extends2(BehaviorSubject2, _super);
      function BehaviorSubject2(_value) {
        var _this = _super.call(this) || this;
        _this._value = _value;
        return _this;
      }
      Object.defineProperty(BehaviorSubject2.prototype, "value", {
        get: function() {
          return this.getValue();
        },
        enumerable: false,
        configurable: true
      });
      BehaviorSubject2.prototype._subscribe = function(subscriber) {
        var subscription = _super.prototype._subscribe.call(this, subscriber);
        !subscription.closed && subscriber.next(this._value);
        return subscription;
      };
      BehaviorSubject2.prototype.getValue = function() {
        var _a = this, hasError = _a.hasError, thrownError = _a.thrownError, _value = _a._value;
        if (hasError) {
          throw thrownError;
        }
        this._throwIfClosed();
        return _value;
      };
      BehaviorSubject2.prototype.next = function(value) {
        _super.prototype.next.call(this, this._value = value);
      };
      return BehaviorSubject2;
    })(Subject_1.Subject);
    exports2.BehaviorSubject = BehaviorSubject;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/dateTimestampProvider.js
var require_dateTimestampProvider = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/dateTimestampProvider.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.dateTimestampProvider = void 0;
    exports2.dateTimestampProvider = {
      now: function() {
        return (exports2.dateTimestampProvider.delegate || Date).now();
      },
      delegate: void 0
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/ReplaySubject.js
var require_ReplaySubject = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/ReplaySubject.js"(exports2) {
    "use strict";
    var __extends2 = exports2 && exports2.__extends || /* @__PURE__ */ (function() {
      var extendStatics2 = function(d, b) {
        extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) {
          d2.__proto__ = b2;
        } || function(d2, b2) {
          for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p];
        };
        return extendStatics2(d, b);
      };
      return function(d, b) {
        if (typeof b !== "function" && b !== null)
          throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics2(d, b);
        function __() {
          this.constructor = d;
        }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
      };
    })();
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.ReplaySubject = void 0;
    var Subject_1 = require_Subject();
    var dateTimestampProvider_1 = require_dateTimestampProvider();
    var ReplaySubject = (function(_super) {
      __extends2(ReplaySubject2, _super);
      function ReplaySubject2(_bufferSize, _windowTime, _timestampProvider) {
        if (_bufferSize === void 0) {
          _bufferSize = Infinity;
        }
        if (_windowTime === void 0) {
          _windowTime = Infinity;
        }
        if (_timestampProvider === void 0) {
          _timestampProvider = dateTimestampProvider_1.dateTimestampProvider;
        }
        var _this = _super.call(this) || this;
        _this._bufferSize = _bufferSize;
        _this._windowTime = _windowTime;
        _this._timestampProvider = _timestampProvider;
        _this._buffer = [];
        _this._infiniteTimeWindow = true;
        _this._infiniteTimeWindow = _windowTime === Infinity;
        _this._bufferSize = Math.max(1, _bufferSize);
        _this._windowTime = Math.max(1, _windowTime);
        return _this;
      }
      ReplaySubject2.prototype.next = function(value) {
        var _a = this, isStopped = _a.isStopped, _buffer = _a._buffer, _infiniteTimeWindow = _a._infiniteTimeWindow, _timestampProvider = _a._timestampProvider, _windowTime = _a._windowTime;
        if (!isStopped) {
          _buffer.push(value);
          !_infiniteTimeWindow && _buffer.push(_timestampProvider.now() + _windowTime);
        }
        this._trimBuffer();
        _super.prototype.next.call(this, value);
      };
      ReplaySubject2.prototype._subscribe = function(subscriber) {
        this._throwIfClosed();
        this._trimBuffer();
        var subscription = this._innerSubscribe(subscriber);
        var _a = this, _infiniteTimeWindow = _a._infiniteTimeWindow, _buffer = _a._buffer;
        var copy2 = _buffer.slice();
        for (var i2 = 0; i2 < copy2.length && !subscriber.closed; i2 += _infiniteTimeWindow ? 1 : 2) {
          subscriber.next(copy2[i2]);
        }
        this._checkFinalizedStatuses(subscriber);
        return subscription;
      };
      ReplaySubject2.prototype._trimBuffer = function() {
        var _a = this, _bufferSize = _a._bufferSize, _timestampProvider = _a._timestampProvider, _buffer = _a._buffer, _infiniteTimeWindow = _a._infiniteTimeWindow;
        var adjustedBufferSize = (_infiniteTimeWindow ? 1 : 2) * _bufferSize;
        _bufferSize < Infinity && adjustedBufferSize < _buffer.length && _buffer.splice(0, _buffer.length - adjustedBufferSize);
        if (!_infiniteTimeWindow) {
          var now = _timestampProvider.now();
          var last = 0;
          for (var i2 = 1; i2 < _buffer.length && _buffer[i2] <= now; i2 += 2) {
            last = i2;
          }
          last && _buffer.splice(0, last + 1);
        }
      };
      return ReplaySubject2;
    })(Subject_1.Subject);
    exports2.ReplaySubject = ReplaySubject;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/AsyncSubject.js
var require_AsyncSubject = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/AsyncSubject.js"(exports2) {
    "use strict";
    var __extends2 = exports2 && exports2.__extends || /* @__PURE__ */ (function() {
      var extendStatics2 = function(d, b) {
        extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) {
          d2.__proto__ = b2;
        } || function(d2, b2) {
          for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p];
        };
        return extendStatics2(d, b);
      };
      return function(d, b) {
        if (typeof b !== "function" && b !== null)
          throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics2(d, b);
        function __() {
          this.constructor = d;
        }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
      };
    })();
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.AsyncSubject = void 0;
    var Subject_1 = require_Subject();
    var AsyncSubject = (function(_super) {
      __extends2(AsyncSubject2, _super);
      function AsyncSubject2() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this._value = null;
        _this._hasValue = false;
        _this._isComplete = false;
        return _this;
      }
      AsyncSubject2.prototype._checkFinalizedStatuses = function(subscriber) {
        var _a = this, hasError = _a.hasError, _hasValue = _a._hasValue, _value = _a._value, thrownError = _a.thrownError, isStopped = _a.isStopped, _isComplete = _a._isComplete;
        if (hasError) {
          subscriber.error(thrownError);
        } else if (isStopped || _isComplete) {
          _hasValue && subscriber.next(_value);
          subscriber.complete();
        }
      };
      AsyncSubject2.prototype.next = function(value) {
        if (!this.isStopped) {
          this._value = value;
          this._hasValue = true;
        }
      };
      AsyncSubject2.prototype.complete = function() {
        var _a = this, _hasValue = _a._hasValue, _value = _a._value, _isComplete = _a._isComplete;
        if (!_isComplete) {
          this._isComplete = true;
          _hasValue && _super.prototype.next.call(this, _value);
          _super.prototype.complete.call(this);
        }
      };
      return AsyncSubject2;
    })(Subject_1.Subject);
    exports2.AsyncSubject = AsyncSubject;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/Action.js
var require_Action = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/Action.js"(exports2) {
    "use strict";
    var __extends2 = exports2 && exports2.__extends || /* @__PURE__ */ (function() {
      var extendStatics2 = function(d, b) {
        extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) {
          d2.__proto__ = b2;
        } || function(d2, b2) {
          for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p];
        };
        return extendStatics2(d, b);
      };
      return function(d, b) {
        if (typeof b !== "function" && b !== null)
          throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics2(d, b);
        function __() {
          this.constructor = d;
        }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
      };
    })();
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.Action = void 0;
    var Subscription_1 = require_Subscription();
    var Action = (function(_super) {
      __extends2(Action2, _super);
      function Action2(scheduler3, work) {
        return _super.call(this) || this;
      }
      Action2.prototype.schedule = function(state, delay) {
        if (delay === void 0) {
          delay = 0;
        }
        return this;
      };
      return Action2;
    })(Subscription_1.Subscription);
    exports2.Action = Action;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/intervalProvider.js
var require_intervalProvider = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/intervalProvider.js"(exports2) {
    "use strict";
    var __read2 = exports2 && exports2.__read || function(o2, n2) {
      var m = typeof Symbol === "function" && o2[Symbol.iterator];
      if (!m) return o2;
      var i2 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i2.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i2["return"])) m.call(i2);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i2 = 0, il = from5.length, j2 = to.length; i2 < il; i2++, j2++)
        to[j2] = from5[i2];
      return to;
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.intervalProvider = void 0;
    exports2.intervalProvider = {
      setInterval: function(handler77, timeout) {
        var args = [];
        for (var _i = 2; _i < arguments.length; _i++) {
          args[_i - 2] = arguments[_i];
        }
        var delegate = exports2.intervalProvider.delegate;
        if (delegate === null || delegate === void 0 ? void 0 : delegate.setInterval) {
          return delegate.setInterval.apply(delegate, __spreadArray2([handler77, timeout], __read2(args)));
        }
        return setInterval.apply(void 0, __spreadArray2([handler77, timeout], __read2(args)));
      },
      clearInterval: function(handle) {
        var delegate = exports2.intervalProvider.delegate;
        return ((delegate === null || delegate === void 0 ? void 0 : delegate.clearInterval) || clearInterval)(handle);
      },
      delegate: void 0
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/AsyncAction.js
var require_AsyncAction = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/AsyncAction.js"(exports2) {
    "use strict";
    var __extends2 = exports2 && exports2.__extends || /* @__PURE__ */ (function() {
      var extendStatics2 = function(d, b) {
        extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) {
          d2.__proto__ = b2;
        } || function(d2, b2) {
          for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p];
        };
        return extendStatics2(d, b);
      };
      return function(d, b) {
        if (typeof b !== "function" && b !== null)
          throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics2(d, b);
        function __() {
          this.constructor = d;
        }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
      };
    })();
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.AsyncAction = void 0;
    var Action_1 = require_Action();
    var intervalProvider_1 = require_intervalProvider();
    var arrRemove_1 = require_arrRemove();
    var AsyncAction = (function(_super) {
      __extends2(AsyncAction2, _super);
      function AsyncAction2(scheduler3, work) {
        var _this = _super.call(this, scheduler3, work) || this;
        _this.scheduler = scheduler3;
        _this.work = work;
        _this.pending = false;
        return _this;
      }
      AsyncAction2.prototype.schedule = function(state, delay) {
        var _a;
        if (delay === void 0) {
          delay = 0;
        }
        if (this.closed) {
          return this;
        }
        this.state = state;
        var id = this.id;
        var scheduler3 = this.scheduler;
        if (id != null) {
          this.id = this.recycleAsyncId(scheduler3, id, delay);
        }
        this.pending = true;
        this.delay = delay;
        this.id = (_a = this.id) !== null && _a !== void 0 ? _a : this.requestAsyncId(scheduler3, this.id, delay);
        return this;
      };
      AsyncAction2.prototype.requestAsyncId = function(scheduler3, _id, delay) {
        if (delay === void 0) {
          delay = 0;
        }
        return intervalProvider_1.intervalProvider.setInterval(scheduler3.flush.bind(scheduler3, this), delay);
      };
      AsyncAction2.prototype.recycleAsyncId = function(_scheduler, id, delay) {
        if (delay === void 0) {
          delay = 0;
        }
        if (delay != null && this.delay === delay && this.pending === false) {
          return id;
        }
        if (id != null) {
          intervalProvider_1.intervalProvider.clearInterval(id);
        }
        return void 0;
      };
      AsyncAction2.prototype.execute = function(state, delay) {
        if (this.closed) {
          return new Error("executing a cancelled action");
        }
        this.pending = false;
        var error = this._execute(state, delay);
        if (error) {
          return error;
        } else if (this.pending === false && this.id != null) {
          this.id = this.recycleAsyncId(this.scheduler, this.id, null);
        }
      };
      AsyncAction2.prototype._execute = function(state, _delay) {
        var errored = false;
        var errorValue;
        try {
          this.work(state);
        } catch (e) {
          errored = true;
          errorValue = e ? e : new Error("Scheduled action threw falsy error");
        }
        if (errored) {
          this.unsubscribe();
          return errorValue;
        }
      };
      AsyncAction2.prototype.unsubscribe = function() {
        if (!this.closed) {
          var _a = this, id = _a.id, scheduler3 = _a.scheduler;
          var actions = scheduler3.actions;
          this.work = this.state = this.scheduler = null;
          this.pending = false;
          arrRemove_1.arrRemove(actions, this);
          if (id != null) {
            this.id = this.recycleAsyncId(scheduler3, id, null);
          }
          this.delay = null;
          _super.prototype.unsubscribe.call(this);
        }
      };
      return AsyncAction2;
    })(Action_1.Action);
    exports2.AsyncAction = AsyncAction;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/Immediate.js
var require_Immediate = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/Immediate.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.TestTools = exports2.Immediate = void 0;
    var nextHandle = 1;
    var resolved;
    var activeHandles = {};
    function findAndClearHandle(handle) {
      if (handle in activeHandles) {
        delete activeHandles[handle];
        return true;
      }
      return false;
    }
    exports2.Immediate = {
      setImmediate: function(cb) {
        var handle = nextHandle++;
        activeHandles[handle] = true;
        if (!resolved) {
          resolved = Promise.resolve();
        }
        resolved.then(function() {
          return findAndClearHandle(handle) && cb();
        });
        return handle;
      },
      clearImmediate: function(handle) {
        findAndClearHandle(handle);
      }
    };
    exports2.TestTools = {
      pending: function() {
        return Object.keys(activeHandles).length;
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/immediateProvider.js
var require_immediateProvider = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/immediateProvider.js"(exports2) {
    "use strict";
    var __read2 = exports2 && exports2.__read || function(o2, n2) {
      var m = typeof Symbol === "function" && o2[Symbol.iterator];
      if (!m) return o2;
      var i2 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i2.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i2["return"])) m.call(i2);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i2 = 0, il = from5.length, j2 = to.length; i2 < il; i2++, j2++)
        to[j2] = from5[i2];
      return to;
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.immediateProvider = void 0;
    var Immediate_1 = require_Immediate();
    var setImmediate3 = Immediate_1.Immediate.setImmediate;
    var clearImmediate2 = Immediate_1.Immediate.clearImmediate;
    exports2.immediateProvider = {
      setImmediate: function() {
        var args = [];
        for (var _i = 0; _i < arguments.length; _i++) {
          args[_i] = arguments[_i];
        }
        var delegate = exports2.immediateProvider.delegate;
        return ((delegate === null || delegate === void 0 ? void 0 : delegate.setImmediate) || setImmediate3).apply(void 0, __spreadArray2([], __read2(args)));
      },
      clearImmediate: function(handle) {
        var delegate = exports2.immediateProvider.delegate;
        return ((delegate === null || delegate === void 0 ? void 0 : delegate.clearImmediate) || clearImmediate2)(handle);
      },
      delegate: void 0
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/AsapAction.js
var require_AsapAction = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/AsapAction.js"(exports2) {
    "use strict";
    var __extends2 = exports2 && exports2.__extends || /* @__PURE__ */ (function() {
      var extendStatics2 = function(d, b) {
        extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) {
          d2.__proto__ = b2;
        } || function(d2, b2) {
          for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p];
        };
        return extendStatics2(d, b);
      };
      return function(d, b) {
        if (typeof b !== "function" && b !== null)
          throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics2(d, b);
        function __() {
          this.constructor = d;
        }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
      };
    })();
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.AsapAction = void 0;
    var AsyncAction_1 = require_AsyncAction();
    var immediateProvider_1 = require_immediateProvider();
    var AsapAction = (function(_super) {
      __extends2(AsapAction2, _super);
      function AsapAction2(scheduler3, work) {
        var _this = _super.call(this, scheduler3, work) || this;
        _this.scheduler = scheduler3;
        _this.work = work;
        return _this;
      }
      AsapAction2.prototype.requestAsyncId = function(scheduler3, id, delay) {
        if (delay === void 0) {
          delay = 0;
        }
        if (delay !== null && delay > 0) {
          return _super.prototype.requestAsyncId.call(this, scheduler3, id, delay);
        }
        scheduler3.actions.push(this);
        return scheduler3._scheduled || (scheduler3._scheduled = immediateProvider_1.immediateProvider.setImmediate(scheduler3.flush.bind(scheduler3, void 0)));
      };
      AsapAction2.prototype.recycleAsyncId = function(scheduler3, id, delay) {
        var _a;
        if (delay === void 0) {
          delay = 0;
        }
        if (delay != null ? delay > 0 : this.delay > 0) {
          return _super.prototype.recycleAsyncId.call(this, scheduler3, id, delay);
        }
        var actions = scheduler3.actions;
        if (id != null && ((_a = actions[actions.length - 1]) === null || _a === void 0 ? void 0 : _a.id) !== id) {
          immediateProvider_1.immediateProvider.clearImmediate(id);
          if (scheduler3._scheduled === id) {
            scheduler3._scheduled = void 0;
          }
        }
        return void 0;
      };
      return AsapAction2;
    })(AsyncAction_1.AsyncAction);
    exports2.AsapAction = AsapAction;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/Scheduler.js
var require_Scheduler = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/Scheduler.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.Scheduler = void 0;
    var dateTimestampProvider_1 = require_dateTimestampProvider();
    var Scheduler = (function() {
      function Scheduler2(schedulerActionCtor, now) {
        if (now === void 0) {
          now = Scheduler2.now;
        }
        this.schedulerActionCtor = schedulerActionCtor;
        this.now = now;
      }
      Scheduler2.prototype.schedule = function(work, delay, state) {
        if (delay === void 0) {
          delay = 0;
        }
        return new this.schedulerActionCtor(this, work).schedule(state, delay);
      };
      Scheduler2.now = dateTimestampProvider_1.dateTimestampProvider.now;
      return Scheduler2;
    })();
    exports2.Scheduler = Scheduler;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/AsyncScheduler.js
var require_AsyncScheduler = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/AsyncScheduler.js"(exports2) {
    "use strict";
    var __extends2 = exports2 && exports2.__extends || /* @__PURE__ */ (function() {
      var extendStatics2 = function(d, b) {
        extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) {
          d2.__proto__ = b2;
        } || function(d2, b2) {
          for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p];
        };
        return extendStatics2(d, b);
      };
      return function(d, b) {
        if (typeof b !== "function" && b !== null)
          throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics2(d, b);
        function __() {
          this.constructor = d;
        }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
      };
    })();
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.AsyncScheduler = void 0;
    var Scheduler_1 = require_Scheduler();
    var AsyncScheduler = (function(_super) {
      __extends2(AsyncScheduler2, _super);
      function AsyncScheduler2(SchedulerAction, now) {
        if (now === void 0) {
          now = Scheduler_1.Scheduler.now;
        }
        var _this = _super.call(this, SchedulerAction, now) || this;
        _this.actions = [];
        _this._active = false;
        return _this;
      }
      AsyncScheduler2.prototype.flush = function(action) {
        var actions = this.actions;
        if (this._active) {
          actions.push(action);
          return;
        }
        var error;
        this._active = true;
        do {
          if (error = action.execute(action.state, action.delay)) {
            break;
          }
        } while (action = actions.shift());
        this._active = false;
        if (error) {
          while (action = actions.shift()) {
            action.unsubscribe();
          }
          throw error;
        }
      };
      return AsyncScheduler2;
    })(Scheduler_1.Scheduler);
    exports2.AsyncScheduler = AsyncScheduler;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/AsapScheduler.js
var require_AsapScheduler = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/AsapScheduler.js"(exports2) {
    "use strict";
    var __extends2 = exports2 && exports2.__extends || /* @__PURE__ */ (function() {
      var extendStatics2 = function(d, b) {
        extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) {
          d2.__proto__ = b2;
        } || function(d2, b2) {
          for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p];
        };
        return extendStatics2(d, b);
      };
      return function(d, b) {
        if (typeof b !== "function" && b !== null)
          throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics2(d, b);
        function __() {
          this.constructor = d;
        }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
      };
    })();
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.AsapScheduler = void 0;
    var AsyncScheduler_1 = require_AsyncScheduler();
    var AsapScheduler = (function(_super) {
      __extends2(AsapScheduler2, _super);
      function AsapScheduler2() {
        return _super !== null && _super.apply(this, arguments) || this;
      }
      AsapScheduler2.prototype.flush = function(action) {
        this._active = true;
        var flushId = this._scheduled;
        this._scheduled = void 0;
        var actions = this.actions;
        var error;
        action = action || actions.shift();
        do {
          if (error = action.execute(action.state, action.delay)) {
            break;
          }
        } while ((action = actions[0]) && action.id === flushId && actions.shift());
        this._active = false;
        if (error) {
          while ((action = actions[0]) && action.id === flushId && actions.shift()) {
            action.unsubscribe();
          }
          throw error;
        }
      };
      return AsapScheduler2;
    })(AsyncScheduler_1.AsyncScheduler);
    exports2.AsapScheduler = AsapScheduler;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/asap.js
var require_asap = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/asap.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.asap = exports2.asapScheduler = void 0;
    var AsapAction_1 = require_AsapAction();
    var AsapScheduler_1 = require_AsapScheduler();
    exports2.asapScheduler = new AsapScheduler_1.AsapScheduler(AsapAction_1.AsapAction);
    exports2.asap = exports2.asapScheduler;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/async.js
var require_async9 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/async.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.async = exports2.asyncScheduler = void 0;
    var AsyncAction_1 = require_AsyncAction();
    var AsyncScheduler_1 = require_AsyncScheduler();
    exports2.asyncScheduler = new AsyncScheduler_1.AsyncScheduler(AsyncAction_1.AsyncAction);
    exports2.async = exports2.asyncScheduler;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/QueueAction.js
var require_QueueAction = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/QueueAction.js"(exports2) {
    "use strict";
    var __extends2 = exports2 && exports2.__extends || /* @__PURE__ */ (function() {
      var extendStatics2 = function(d, b) {
        extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) {
          d2.__proto__ = b2;
        } || function(d2, b2) {
          for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p];
        };
        return extendStatics2(d, b);
      };
      return function(d, b) {
        if (typeof b !== "function" && b !== null)
          throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics2(d, b);
        function __() {
          this.constructor = d;
        }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
      };
    })();
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.QueueAction = void 0;
    var AsyncAction_1 = require_AsyncAction();
    var QueueAction = (function(_super) {
      __extends2(QueueAction2, _super);
      function QueueAction2(scheduler3, work) {
        var _this = _super.call(this, scheduler3, work) || this;
        _this.scheduler = scheduler3;
        _this.work = work;
        return _this;
      }
      QueueAction2.prototype.schedule = function(state, delay) {
        if (delay === void 0) {
          delay = 0;
        }
        if (delay > 0) {
          return _super.prototype.schedule.call(this, state, delay);
        }
        this.delay = delay;
        this.state = state;
        this.scheduler.flush(this);
        return this;
      };
      QueueAction2.prototype.execute = function(state, delay) {
        return delay > 0 || this.closed ? _super.prototype.execute.call(this, state, delay) : this._execute(state, delay);
      };
      QueueAction2.prototype.requestAsyncId = function(scheduler3, id, delay) {
        if (delay === void 0) {
          delay = 0;
        }
        if (delay != null && delay > 0 || delay == null && this.delay > 0) {
          return _super.prototype.requestAsyncId.call(this, scheduler3, id, delay);
        }
        scheduler3.flush(this);
        return 0;
      };
      return QueueAction2;
    })(AsyncAction_1.AsyncAction);
    exports2.QueueAction = QueueAction;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/QueueScheduler.js
var require_QueueScheduler = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/QueueScheduler.js"(exports2) {
    "use strict";
    var __extends2 = exports2 && exports2.__extends || /* @__PURE__ */ (function() {
      var extendStatics2 = function(d, b) {
        extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) {
          d2.__proto__ = b2;
        } || function(d2, b2) {
          for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p];
        };
        return extendStatics2(d, b);
      };
      return function(d, b) {
        if (typeof b !== "function" && b !== null)
          throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics2(d, b);
        function __() {
          this.constructor = d;
        }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
      };
    })();
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.QueueScheduler = void 0;
    var AsyncScheduler_1 = require_AsyncScheduler();
    var QueueScheduler = (function(_super) {
      __extends2(QueueScheduler2, _super);
      function QueueScheduler2() {
        return _super !== null && _super.apply(this, arguments) || this;
      }
      return QueueScheduler2;
    })(AsyncScheduler_1.AsyncScheduler);
    exports2.QueueScheduler = QueueScheduler;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/queue.js
var require_queue3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/queue.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.queue = exports2.queueScheduler = void 0;
    var QueueAction_1 = require_QueueAction();
    var QueueScheduler_1 = require_QueueScheduler();
    exports2.queueScheduler = new QueueScheduler_1.QueueScheduler(QueueAction_1.QueueAction);
    exports2.queue = exports2.queueScheduler;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/AnimationFrameAction.js
var require_AnimationFrameAction = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/AnimationFrameAction.js"(exports2) {
    "use strict";
    var __extends2 = exports2 && exports2.__extends || /* @__PURE__ */ (function() {
      var extendStatics2 = function(d, b) {
        extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) {
          d2.__proto__ = b2;
        } || function(d2, b2) {
          for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p];
        };
        return extendStatics2(d, b);
      };
      return function(d, b) {
        if (typeof b !== "function" && b !== null)
          throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics2(d, b);
        function __() {
          this.constructor = d;
        }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
      };
    })();
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.AnimationFrameAction = void 0;
    var AsyncAction_1 = require_AsyncAction();
    var animationFrameProvider_1 = require_animationFrameProvider();
    var AnimationFrameAction = (function(_super) {
      __extends2(AnimationFrameAction2, _super);
      function AnimationFrameAction2(scheduler3, work) {
        var _this = _super.call(this, scheduler3, work) || this;
        _this.scheduler = scheduler3;
        _this.work = work;
        return _this;
      }
      AnimationFrameAction2.prototype.requestAsyncId = function(scheduler3, id, delay) {
        if (delay === void 0) {
          delay = 0;
        }
        if (delay !== null && delay > 0) {
          return _super.prototype.requestAsyncId.call(this, scheduler3, id, delay);
        }
        scheduler3.actions.push(this);
        return scheduler3._scheduled || (scheduler3._scheduled = animationFrameProvider_1.animationFrameProvider.requestAnimationFrame(function() {
          return scheduler3.flush(void 0);
        }));
      };
      AnimationFrameAction2.prototype.recycleAsyncId = function(scheduler3, id, delay) {
        var _a;
        if (delay === void 0) {
          delay = 0;
        }
        if (delay != null ? delay > 0 : this.delay > 0) {
          return _super.prototype.recycleAsyncId.call(this, scheduler3, id, delay);
        }
        var actions = scheduler3.actions;
        if (id != null && id === scheduler3._scheduled && ((_a = actions[actions.length - 1]) === null || _a === void 0 ? void 0 : _a.id) !== id) {
          animationFrameProvider_1.animationFrameProvider.cancelAnimationFrame(id);
          scheduler3._scheduled = void 0;
        }
        return void 0;
      };
      return AnimationFrameAction2;
    })(AsyncAction_1.AsyncAction);
    exports2.AnimationFrameAction = AnimationFrameAction;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/AnimationFrameScheduler.js
var require_AnimationFrameScheduler = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/AnimationFrameScheduler.js"(exports2) {
    "use strict";
    var __extends2 = exports2 && exports2.__extends || /* @__PURE__ */ (function() {
      var extendStatics2 = function(d, b) {
        extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) {
          d2.__proto__ = b2;
        } || function(d2, b2) {
          for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p];
        };
        return extendStatics2(d, b);
      };
      return function(d, b) {
        if (typeof b !== "function" && b !== null)
          throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics2(d, b);
        function __() {
          this.constructor = d;
        }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
      };
    })();
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.AnimationFrameScheduler = void 0;
    var AsyncScheduler_1 = require_AsyncScheduler();
    var AnimationFrameScheduler = (function(_super) {
      __extends2(AnimationFrameScheduler2, _super);
      function AnimationFrameScheduler2() {
        return _super !== null && _super.apply(this, arguments) || this;
      }
      AnimationFrameScheduler2.prototype.flush = function(action) {
        this._active = true;
        var flushId;
        if (action) {
          flushId = action.id;
        } else {
          flushId = this._scheduled;
          this._scheduled = void 0;
        }
        var actions = this.actions;
        var error;
        action = action || actions.shift();
        do {
          if (error = action.execute(action.state, action.delay)) {
            break;
          }
        } while ((action = actions[0]) && action.id === flushId && actions.shift());
        this._active = false;
        if (error) {
          while ((action = actions[0]) && action.id === flushId && actions.shift()) {
            action.unsubscribe();
          }
          throw error;
        }
      };
      return AnimationFrameScheduler2;
    })(AsyncScheduler_1.AsyncScheduler);
    exports2.AnimationFrameScheduler = AnimationFrameScheduler;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/animationFrame.js
var require_animationFrame = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/animationFrame.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.animationFrame = exports2.animationFrameScheduler = void 0;
    var AnimationFrameAction_1 = require_AnimationFrameAction();
    var AnimationFrameScheduler_1 = require_AnimationFrameScheduler();
    exports2.animationFrameScheduler = new AnimationFrameScheduler_1.AnimationFrameScheduler(AnimationFrameAction_1.AnimationFrameAction);
    exports2.animationFrame = exports2.animationFrameScheduler;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/VirtualTimeScheduler.js
var require_VirtualTimeScheduler = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduler/VirtualTimeScheduler.js"(exports2) {
    "use strict";
    var __extends2 = exports2 && exports2.__extends || /* @__PURE__ */ (function() {
      var extendStatics2 = function(d, b) {
        extendStatics2 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(d2, b2) {
          d2.__proto__ = b2;
        } || function(d2, b2) {
          for (var p in b2) if (Object.prototype.hasOwnProperty.call(b2, p)) d2[p] = b2[p];
        };
        return extendStatics2(d, b);
      };
      return function(d, b) {
        if (typeof b !== "function" && b !== null)
          throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics2(d, b);
        function __() {
          this.constructor = d;
        }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
      };
    })();
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.VirtualAction = exports2.VirtualTimeScheduler = void 0;
    var AsyncAction_1 = require_AsyncAction();
    var Subscription_1 = require_Subscription();
    var AsyncScheduler_1 = require_AsyncScheduler();
    var VirtualTimeScheduler = (function(_super) {
      __extends2(VirtualTimeScheduler2, _super);
      function VirtualTimeScheduler2(schedulerActionCtor, maxFrames) {
        if (schedulerActionCtor === void 0) {
          schedulerActionCtor = VirtualAction;
        }
        if (maxFrames === void 0) {
          maxFrames = Infinity;
        }
        var _this = _super.call(this, schedulerActionCtor, function() {
          return _this.frame;
        }) || this;
        _this.maxFrames = maxFrames;
        _this.frame = 0;
        _this.index = -1;
        return _this;
      }
      VirtualTimeScheduler2.prototype.flush = function() {
        var _a = this, actions = _a.actions, maxFrames = _a.maxFrames;
        var error;
        var action;
        while ((action = actions[0]) && action.delay <= maxFrames) {
          actions.shift();
          this.frame = action.delay;
          if (error = action.execute(action.state, action.delay)) {
            break;
          }
        }
        if (error) {
          while (action = actions.shift()) {
            action.unsubscribe();
          }
          throw error;
        }
      };
      VirtualTimeScheduler2.frameTimeFactor = 10;
      return VirtualTimeScheduler2;
    })(AsyncScheduler_1.AsyncScheduler);
    exports2.VirtualTimeScheduler = VirtualTimeScheduler;
    var VirtualAction = (function(_super) {
      __extends2(VirtualAction2, _super);
      function VirtualAction2(scheduler3, work, index) {
        if (index === void 0) {
          index = scheduler3.index += 1;
        }
        var _this = _super.call(this, scheduler3, work) || this;
        _this.scheduler = scheduler3;
        _this.work = work;
        _this.index = index;
        _this.active = true;
        _this.index = scheduler3.index = index;
        return _this;
      }
      VirtualAction2.prototype.schedule = function(state, delay) {
        if (delay === void 0) {
          delay = 0;
        }
        if (Number.isFinite(delay)) {
          if (!this.id) {
            return _super.prototype.schedule.call(this, state, delay);
          }
          this.active = false;
          var action = new VirtualAction2(this.scheduler, this.work);
          this.add(action);
          return action.schedule(state, delay);
        } else {
          return Subscription_1.Subscription.EMPTY;
        }
      };
      VirtualAction2.prototype.requestAsyncId = function(scheduler3, id, delay) {
        if (delay === void 0) {
          delay = 0;
        }
        this.delay = scheduler3.frame + delay;
        var actions = scheduler3.actions;
        actions.push(this);
        actions.sort(VirtualAction2.sortActions);
        return 1;
      };
      VirtualAction2.prototype.recycleAsyncId = function(scheduler3, id, delay) {
        if (delay === void 0) {
          delay = 0;
        }
        return void 0;
      };
      VirtualAction2.prototype._execute = function(state, delay) {
        if (this.active === true) {
          return _super.prototype._execute.call(this, state, delay);
        }
      };
      VirtualAction2.sortActions = function(a2, b) {
        if (a2.delay === b.delay) {
          if (a2.index === b.index) {
            return 0;
          } else if (a2.index > b.index) {
            return 1;
          } else {
            return -1;
          }
        } else if (a2.delay > b.delay) {
          return 1;
        } else {
          return -1;
        }
      };
      return VirtualAction2;
    })(AsyncAction_1.AsyncAction);
    exports2.VirtualAction = VirtualAction;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/empty.js
var require_empty3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/empty.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.empty = exports2.EMPTY = void 0;
    var Observable_1 = require_Observable();
    exports2.EMPTY = new Observable_1.Observable(function(subscriber) {
      return subscriber.complete();
    });
    function empty4(scheduler3) {
      return scheduler3 ? emptyScheduled(scheduler3) : exports2.EMPTY;
    }
    exports2.empty = empty4;
    function emptyScheduled(scheduler3) {
      return new Observable_1.Observable(function(subscriber) {
        return scheduler3.schedule(function() {
          return subscriber.complete();
        });
      });
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/isScheduler.js
var require_isScheduler = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/isScheduler.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.isScheduler = void 0;
    var isFunction_1 = require_isFunction3();
    function isScheduler(value) {
      return value && isFunction_1.isFunction(value.schedule);
    }
    exports2.isScheduler = isScheduler;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/args.js
var require_args = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/args.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.popNumber = exports2.popScheduler = exports2.popResultSelector = void 0;
    var isFunction_1 = require_isFunction3();
    var isScheduler_1 = require_isScheduler();
    function last(arr) {
      return arr[arr.length - 1];
    }
    function popResultSelector(args) {
      return isFunction_1.isFunction(last(args)) ? args.pop() : void 0;
    }
    exports2.popResultSelector = popResultSelector;
    function popScheduler(args) {
      return isScheduler_1.isScheduler(last(args)) ? args.pop() : void 0;
    }
    exports2.popScheduler = popScheduler;
    function popNumber(args, defaultValue) {
      return typeof last(args) === "number" ? args.pop() : defaultValue;
    }
    exports2.popNumber = popNumber;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/isArrayLike.js
var require_isArrayLike2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/isArrayLike.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.isArrayLike = void 0;
    exports2.isArrayLike = (function(x) {
      return x && typeof x.length === "number" && typeof x !== "function";
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/isPromise.js
var require_isPromise = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/isPromise.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.isPromise = void 0;
    var isFunction_1 = require_isFunction3();
    function isPromise(value) {
      return isFunction_1.isFunction(value === null || value === void 0 ? void 0 : value.then);
    }
    exports2.isPromise = isPromise;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/isInteropObservable.js
var require_isInteropObservable = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/isInteropObservable.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.isInteropObservable = void 0;
    var observable_1 = require_observable();
    var isFunction_1 = require_isFunction3();
    function isInteropObservable(input) {
      return isFunction_1.isFunction(input[observable_1.observable]);
    }
    exports2.isInteropObservable = isInteropObservable;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/isAsyncIterable.js
var require_isAsyncIterable = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/isAsyncIterable.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.isAsyncIterable = void 0;
    var isFunction_1 = require_isFunction3();
    function isAsyncIterable(obj) {
      return Symbol.asyncIterator && isFunction_1.isFunction(obj === null || obj === void 0 ? void 0 : obj[Symbol.asyncIterator]);
    }
    exports2.isAsyncIterable = isAsyncIterable;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/throwUnobservableError.js
var require_throwUnobservableError = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/throwUnobservableError.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.createInvalidObservableTypeError = void 0;
    function createInvalidObservableTypeError(input) {
      return new TypeError("You provided " + (input !== null && typeof input === "object" ? "an invalid object" : "'" + input + "'") + " where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.");
    }
    exports2.createInvalidObservableTypeError = createInvalidObservableTypeError;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/symbol/iterator.js
var require_iterator2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/symbol/iterator.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.iterator = exports2.getSymbolIterator = void 0;
    function getSymbolIterator() {
      if (typeof Symbol !== "function" || !Symbol.iterator) {
        return "@@iterator";
      }
      return Symbol.iterator;
    }
    exports2.getSymbolIterator = getSymbolIterator;
    exports2.iterator = getSymbolIterator();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/isIterable.js
var require_isIterable = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/isIterable.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.isIterable = void 0;
    var iterator_1 = require_iterator2();
    var isFunction_1 = require_isFunction3();
    function isIterable(input) {
      return isFunction_1.isFunction(input === null || input === void 0 ? void 0 : input[iterator_1.iterator]);
    }
    exports2.isIterable = isIterable;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/isReadableStreamLike.js
var require_isReadableStreamLike = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/isReadableStreamLike.js"(exports2) {
    "use strict";
    var __generator2 = exports2 && exports2.__generator || function(thisArg, body) {
      var _ = { label: 0, sent: function() {
        if (t2[0] & 1) throw t2[1];
        return t2[1];
      }, trys: [], ops: [] }, f, y, t2, g;
      return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() {
        return this;
      }), g;
      function verb(n2) {
        return function(v) {
          return step2([n2, v]);
        };
      }
      function step2(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (_) try {
          if (f = 1, y && (t2 = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t2 = y["return"]) && t2.call(y), 0) : y.next) && !(t2 = t2.call(y, op[1])).done) return t2;
          if (y = 0, t2) op = [op[0] & 2, t2.value];
          switch (op[0]) {
            case 0:
            case 1:
              t2 = op;
              break;
            case 4:
              _.label++;
              return { value: op[1], done: false };
            case 5:
              _.label++;
              y = op[1];
              op = [0];
              continue;
            case 7:
              op = _.ops.pop();
              _.trys.pop();
              continue;
            default:
              if (!(t2 = _.trys, t2 = t2.length > 0 && t2[t2.length - 1]) && (op[0] === 6 || op[0] === 2)) {
                _ = 0;
                continue;
              }
              if (op[0] === 3 && (!t2 || op[1] > t2[0] && op[1] < t2[3])) {
                _.label = op[1];
                break;
              }
              if (op[0] === 6 && _.label < t2[1]) {
                _.label = t2[1];
                t2 = op;
                break;
              }
              if (t2 && _.label < t2[2]) {
                _.label = t2[2];
                _.ops.push(op);
                break;
              }
              if (t2[2]) _.ops.pop();
              _.trys.pop();
              continue;
          }
          op = body.call(thisArg, _);
        } catch (e) {
          op = [6, e];
          y = 0;
        } finally {
          f = t2 = 0;
        }
        if (op[0] & 5) throw op[1];
        return { value: op[0] ? op[1] : void 0, done: true };
      }
    };
    var __await2 = exports2 && exports2.__await || function(v) {
      return this instanceof __await2 ? (this.v = v, this) : new __await2(v);
    };
    var __asyncGenerator2 = exports2 && exports2.__asyncGenerator || function(thisArg, _arguments, generator) {
      if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
      var g = generator.apply(thisArg, _arguments || []), i2, q = [];
      return i2 = {}, verb("next"), verb("throw"), verb("return"), i2[Symbol.asyncIterator] = function() {
        return this;
      }, i2;
      function verb(n2) {
        if (g[n2]) i2[n2] = function(v) {
          return new Promise(function(a2, b) {
            q.push([n2, v, a2, b]) > 1 || resume(n2, v);
          });
        };
      }
      function resume(n2, v) {
        try {
          step2(g[n2](v));
        } catch (e) {
          settle(q[0][3], e);
        }
      }
      function step2(r) {
        r.value instanceof __await2 ? Promise.resolve(r.value.v).then(fulfill, reject3) : settle(q[0][2], r);
      }
      function fulfill(value) {
        resume("next", value);
      }
      function reject3(value) {
        resume("throw", value);
      }
      function settle(f, v) {
        if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]);
      }
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.isReadableStreamLike = exports2.readableStreamLikeToAsyncGenerator = void 0;
    var isFunction_1 = require_isFunction3();
    function readableStreamLikeToAsyncGenerator(readableStream) {
      return __asyncGenerator2(this, arguments, function readableStreamLikeToAsyncGenerator_1() {
        var reader, _a, value, done;
        return __generator2(this, function(_b) {
          switch (_b.label) {
            case 0:
              reader = readableStream.getReader();
              _b.label = 1;
            case 1:
              _b.trys.push([1, , 9, 10]);
              _b.label = 2;
            case 2:
              if (false) return [3, 8];
              return [4, __await2(reader.read())];
            case 3:
              _a = _b.sent(), value = _a.value, done = _a.done;
              if (!done) return [3, 5];
              return [4, __await2(void 0)];
            case 4:
              return [2, _b.sent()];
            case 5:
              return [4, __await2(value)];
            case 6:
              return [4, _b.sent()];
            case 7:
              _b.sent();
              return [3, 2];
            case 8:
              return [3, 10];
            case 9:
              reader.releaseLock();
              return [7];
            case 10:
              return [2];
          }
        });
      });
    }
    exports2.readableStreamLikeToAsyncGenerator = readableStreamLikeToAsyncGenerator;
    function isReadableStreamLike(obj) {
      return isFunction_1.isFunction(obj === null || obj === void 0 ? void 0 : obj.getReader);
    }
    exports2.isReadableStreamLike = isReadableStreamLike;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/innerFrom.js
var require_innerFrom = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/innerFrom.js"(exports2) {
    "use strict";
    var __awaiter2 = exports2 && exports2.__awaiter || function(thisArg, _arguments, P2, generator) {
      function adopt(value) {
        return value instanceof P2 ? value : new P2(function(resolve3) {
          resolve3(value);
        });
      }
      return new (P2 || (P2 = Promise))(function(resolve3, reject3) {
        function fulfilled(value) {
          try {
            step2(generator.next(value));
          } catch (e) {
            reject3(e);
          }
        }
        function rejected(value) {
          try {
            step2(generator["throw"](value));
          } catch (e) {
            reject3(e);
          }
        }
        function step2(result2) {
          result2.done ? resolve3(result2.value) : adopt(result2.value).then(fulfilled, rejected);
        }
        step2((generator = generator.apply(thisArg, _arguments || [])).next());
      });
    };
    var __generator2 = exports2 && exports2.__generator || function(thisArg, body) {
      var _ = { label: 0, sent: function() {
        if (t2[0] & 1) throw t2[1];
        return t2[1];
      }, trys: [], ops: [] }, f, y, t2, g;
      return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() {
        return this;
      }), g;
      function verb(n2) {
        return function(v) {
          return step2([n2, v]);
        };
      }
      function step2(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (_) try {
          if (f = 1, y && (t2 = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t2 = y["return"]) && t2.call(y), 0) : y.next) && !(t2 = t2.call(y, op[1])).done) return t2;
          if (y = 0, t2) op = [op[0] & 2, t2.value];
          switch (op[0]) {
            case 0:
            case 1:
              t2 = op;
              break;
            case 4:
              _.label++;
              return { value: op[1], done: false };
            case 5:
              _.label++;
              y = op[1];
              op = [0];
              continue;
            case 7:
              op = _.ops.pop();
              _.trys.pop();
              continue;
            default:
              if (!(t2 = _.trys, t2 = t2.length > 0 && t2[t2.length - 1]) && (op[0] === 6 || op[0] === 2)) {
                _ = 0;
                continue;
              }
              if (op[0] === 3 && (!t2 || op[1] > t2[0] && op[1] < t2[3])) {
                _.label = op[1];
                break;
              }
              if (op[0] === 6 && _.label < t2[1]) {
                _.label = t2[1];
                t2 = op;
                break;
              }
              if (t2 && _.label < t2[2]) {
                _.label = t2[2];
                _.ops.push(op);
                break;
              }
              if (t2[2]) _.ops.pop();
              _.trys.pop();
              continue;
          }
          op = body.call(thisArg, _);
        } catch (e) {
          op = [6, e];
          y = 0;
        } finally {
          f = t2 = 0;
        }
        if (op[0] & 5) throw op[1];
        return { value: op[0] ? op[1] : void 0, done: true };
      }
    };
    var __asyncValues2 = exports2 && exports2.__asyncValues || function(o2) {
      if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
      var m = o2[Symbol.asyncIterator], i2;
      return m ? m.call(o2) : (o2 = typeof __values2 === "function" ? __values2(o2) : o2[Symbol.iterator](), i2 = {}, verb("next"), verb("throw"), verb("return"), i2[Symbol.asyncIterator] = function() {
        return this;
      }, i2);
      function verb(n2) {
        i2[n2] = o2[n2] && function(v) {
          return new Promise(function(resolve3, reject3) {
            v = o2[n2](v), settle(resolve3, reject3, v.done, v.value);
          });
        };
      }
      function settle(resolve3, reject3, d, v) {
        Promise.resolve(v).then(function(v2) {
          resolve3({ value: v2, done: d });
        }, reject3);
      }
    };
    var __values2 = exports2 && exports2.__values || function(o2) {
      var s = typeof Symbol === "function" && Symbol.iterator, m = s && o2[s], i2 = 0;
      if (m) return m.call(o2);
      if (o2 && typeof o2.length === "number") return {
        next: function() {
          if (o2 && i2 >= o2.length) o2 = void 0;
          return { value: o2 && o2[i2++], done: !o2 };
        }
      };
      throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.fromReadableStreamLike = exports2.fromAsyncIterable = exports2.fromIterable = exports2.fromPromise = exports2.fromArrayLike = exports2.fromInteropObservable = exports2.innerFrom = void 0;
    var isArrayLike_1 = require_isArrayLike2();
    var isPromise_1 = require_isPromise();
    var Observable_1 = require_Observable();
    var isInteropObservable_1 = require_isInteropObservable();
    var isAsyncIterable_1 = require_isAsyncIterable();
    var throwUnobservableError_1 = require_throwUnobservableError();
    var isIterable_1 = require_isIterable();
    var isReadableStreamLike_1 = require_isReadableStreamLike();
    var isFunction_1 = require_isFunction3();
    var reportUnhandledError_1 = require_reportUnhandledError();
    var observable_1 = require_observable();
    function innerFrom(input) {
      if (input instanceof Observable_1.Observable) {
        return input;
      }
      if (input != null) {
        if (isInteropObservable_1.isInteropObservable(input)) {
          return fromInteropObservable(input);
        }
        if (isArrayLike_1.isArrayLike(input)) {
          return fromArrayLike(input);
        }
        if (isPromise_1.isPromise(input)) {
          return fromPromise(input);
        }
        if (isAsyncIterable_1.isAsyncIterable(input)) {
          return fromAsyncIterable(input);
        }
        if (isIterable_1.isIterable(input)) {
          return fromIterable(input);
        }
        if (isReadableStreamLike_1.isReadableStreamLike(input)) {
          return fromReadableStreamLike(input);
        }
      }
      throw throwUnobservableError_1.createInvalidObservableTypeError(input);
    }
    exports2.innerFrom = innerFrom;
    function fromInteropObservable(obj) {
      return new Observable_1.Observable(function(subscriber) {
        var obs = obj[observable_1.observable]();
        if (isFunction_1.isFunction(obs.subscribe)) {
          return obs.subscribe(subscriber);
        }
        throw new TypeError("Provided object does not correctly implement Symbol.observable");
      });
    }
    exports2.fromInteropObservable = fromInteropObservable;
    function fromArrayLike(array) {
      return new Observable_1.Observable(function(subscriber) {
        for (var i2 = 0; i2 < array.length && !subscriber.closed; i2++) {
          subscriber.next(array[i2]);
        }
        subscriber.complete();
      });
    }
    exports2.fromArrayLike = fromArrayLike;
    function fromPromise(promise2) {
      return new Observable_1.Observable(function(subscriber) {
        promise2.then(function(value) {
          if (!subscriber.closed) {
            subscriber.next(value);
            subscriber.complete();
          }
        }, function(err) {
          return subscriber.error(err);
        }).then(null, reportUnhandledError_1.reportUnhandledError);
      });
    }
    exports2.fromPromise = fromPromise;
    function fromIterable(iterable) {
      return new Observable_1.Observable(function(subscriber) {
        var e_1, _a;
        try {
          for (var iterable_1 = __values2(iterable), iterable_1_1 = iterable_1.next(); !iterable_1_1.done; iterable_1_1 = iterable_1.next()) {
            var value = iterable_1_1.value;
            subscriber.next(value);
            if (subscriber.closed) {
              return;
            }
          }
        } catch (e_1_1) {
          e_1 = { error: e_1_1 };
        } finally {
          try {
            if (iterable_1_1 && !iterable_1_1.done && (_a = iterable_1.return)) _a.call(iterable_1);
          } finally {
            if (e_1) throw e_1.error;
          }
        }
        subscriber.complete();
      });
    }
    exports2.fromIterable = fromIterable;
    function fromAsyncIterable(asyncIterable) {
      return new Observable_1.Observable(function(subscriber) {
        process17(asyncIterable, subscriber).catch(function(err) {
          return subscriber.error(err);
        });
      });
    }
    exports2.fromAsyncIterable = fromAsyncIterable;
    function fromReadableStreamLike(readableStream) {
      return fromAsyncIterable(isReadableStreamLike_1.readableStreamLikeToAsyncGenerator(readableStream));
    }
    exports2.fromReadableStreamLike = fromReadableStreamLike;
    function process17(asyncIterable, subscriber) {
      var asyncIterable_1, asyncIterable_1_1;
      var e_2, _a;
      return __awaiter2(this, void 0, void 0, function() {
        var value, e_2_1;
        return __generator2(this, function(_b) {
          switch (_b.label) {
            case 0:
              _b.trys.push([0, 5, 6, 11]);
              asyncIterable_1 = __asyncValues2(asyncIterable);
              _b.label = 1;
            case 1:
              return [4, asyncIterable_1.next()];
            case 2:
              if (!(asyncIterable_1_1 = _b.sent(), !asyncIterable_1_1.done)) return [3, 4];
              value = asyncIterable_1_1.value;
              subscriber.next(value);
              if (subscriber.closed) {
                return [2];
              }
              _b.label = 3;
            case 3:
              return [3, 1];
            case 4:
              return [3, 11];
            case 5:
              e_2_1 = _b.sent();
              e_2 = { error: e_2_1 };
              return [3, 11];
            case 6:
              _b.trys.push([6, , 9, 10]);
              if (!(asyncIterable_1_1 && !asyncIterable_1_1.done && (_a = asyncIterable_1.return))) return [3, 8];
              return [4, _a.call(asyncIterable_1)];
            case 7:
              _b.sent();
              _b.label = 8;
            case 8:
              return [3, 10];
            case 9:
              if (e_2) throw e_2.error;
              return [7];
            case 10:
              return [7];
            case 11:
              subscriber.complete();
              return [2];
          }
        });
      });
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/executeSchedule.js
var require_executeSchedule = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/executeSchedule.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.executeSchedule = void 0;
    function executeSchedule(parentSubscription, scheduler3, work, delay, repeat4) {
      if (delay === void 0) {
        delay = 0;
      }
      if (repeat4 === void 0) {
        repeat4 = false;
      }
      var scheduleSubscription = scheduler3.schedule(function() {
        work();
        if (repeat4) {
          parentSubscription.add(this.schedule(null, delay));
        } else {
          this.unsubscribe();
        }
      }, delay);
      parentSubscription.add(scheduleSubscription);
      if (!repeat4) {
        return scheduleSubscription;
      }
    }
    exports2.executeSchedule = executeSchedule;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/observeOn.js
var require_observeOn = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/observeOn.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.observeOn = void 0;
    var executeSchedule_1 = require_executeSchedule();
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    function observeOn(scheduler3, delay) {
      if (delay === void 0) {
        delay = 0;
      }
      return lift_1.operate(function(source, subscriber) {
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          return executeSchedule_1.executeSchedule(subscriber, scheduler3, function() {
            return subscriber.next(value);
          }, delay);
        }, function() {
          return executeSchedule_1.executeSchedule(subscriber, scheduler3, function() {
            return subscriber.complete();
          }, delay);
        }, function(err) {
          return executeSchedule_1.executeSchedule(subscriber, scheduler3, function() {
            return subscriber.error(err);
          }, delay);
        }));
      });
    }
    exports2.observeOn = observeOn;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/subscribeOn.js
var require_subscribeOn = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/subscribeOn.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.subscribeOn = void 0;
    var lift_1 = require_lift();
    function subscribeOn(scheduler3, delay) {
      if (delay === void 0) {
        delay = 0;
      }
      return lift_1.operate(function(source, subscriber) {
        subscriber.add(scheduler3.schedule(function() {
          return source.subscribe(subscriber);
        }, delay));
      });
    }
    exports2.subscribeOn = subscribeOn;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleObservable.js
var require_scheduleObservable = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleObservable.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.scheduleObservable = void 0;
    var innerFrom_1 = require_innerFrom();
    var observeOn_1 = require_observeOn();
    var subscribeOn_1 = require_subscribeOn();
    function scheduleObservable(input, scheduler3) {
      return innerFrom_1.innerFrom(input).pipe(subscribeOn_1.subscribeOn(scheduler3), observeOn_1.observeOn(scheduler3));
    }
    exports2.scheduleObservable = scheduleObservable;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduled/schedulePromise.js
var require_schedulePromise = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduled/schedulePromise.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.schedulePromise = void 0;
    var innerFrom_1 = require_innerFrom();
    var observeOn_1 = require_observeOn();
    var subscribeOn_1 = require_subscribeOn();
    function schedulePromise(input, scheduler3) {
      return innerFrom_1.innerFrom(input).pipe(subscribeOn_1.subscribeOn(scheduler3), observeOn_1.observeOn(scheduler3));
    }
    exports2.schedulePromise = schedulePromise;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleArray.js
var require_scheduleArray = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleArray.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.scheduleArray = void 0;
    var Observable_1 = require_Observable();
    function scheduleArray(input, scheduler3) {
      return new Observable_1.Observable(function(subscriber) {
        var i2 = 0;
        return scheduler3.schedule(function() {
          if (i2 === input.length) {
            subscriber.complete();
          } else {
            subscriber.next(input[i2++]);
            if (!subscriber.closed) {
              this.schedule();
            }
          }
        });
      });
    }
    exports2.scheduleArray = scheduleArray;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleIterable.js
var require_scheduleIterable = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleIterable.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.scheduleIterable = void 0;
    var Observable_1 = require_Observable();
    var iterator_1 = require_iterator2();
    var isFunction_1 = require_isFunction3();
    var executeSchedule_1 = require_executeSchedule();
    function scheduleIterable(input, scheduler3) {
      return new Observable_1.Observable(function(subscriber) {
        var iterator;
        executeSchedule_1.executeSchedule(subscriber, scheduler3, function() {
          iterator = input[iterator_1.iterator]();
          executeSchedule_1.executeSchedule(subscriber, scheduler3, function() {
            var _a;
            var value;
            var done;
            try {
              _a = iterator.next(), value = _a.value, done = _a.done;
            } catch (err) {
              subscriber.error(err);
              return;
            }
            if (done) {
              subscriber.complete();
            } else {
              subscriber.next(value);
            }
          }, 0, true);
        });
        return function() {
          return isFunction_1.isFunction(iterator === null || iterator === void 0 ? void 0 : iterator.return) && iterator.return();
        };
      });
    }
    exports2.scheduleIterable = scheduleIterable;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleAsyncIterable.js
var require_scheduleAsyncIterable = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleAsyncIterable.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.scheduleAsyncIterable = void 0;
    var Observable_1 = require_Observable();
    var executeSchedule_1 = require_executeSchedule();
    function scheduleAsyncIterable(input, scheduler3) {
      if (!input) {
        throw new Error("Iterable cannot be null");
      }
      return new Observable_1.Observable(function(subscriber) {
        executeSchedule_1.executeSchedule(subscriber, scheduler3, function() {
          var iterator = input[Symbol.asyncIterator]();
          executeSchedule_1.executeSchedule(subscriber, scheduler3, function() {
            iterator.next().then(function(result2) {
              if (result2.done) {
                subscriber.complete();
              } else {
                subscriber.next(result2.value);
              }
            });
          }, 0, true);
        });
      });
    }
    exports2.scheduleAsyncIterable = scheduleAsyncIterable;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleReadableStreamLike.js
var require_scheduleReadableStreamLike = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduled/scheduleReadableStreamLike.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.scheduleReadableStreamLike = void 0;
    var scheduleAsyncIterable_1 = require_scheduleAsyncIterable();
    var isReadableStreamLike_1 = require_isReadableStreamLike();
    function scheduleReadableStreamLike(input, scheduler3) {
      return scheduleAsyncIterable_1.scheduleAsyncIterable(isReadableStreamLike_1.readableStreamLikeToAsyncGenerator(input), scheduler3);
    }
    exports2.scheduleReadableStreamLike = scheduleReadableStreamLike;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduled/scheduled.js
var require_scheduled = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/scheduled/scheduled.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.scheduled = void 0;
    var scheduleObservable_1 = require_scheduleObservable();
    var schedulePromise_1 = require_schedulePromise();
    var scheduleArray_1 = require_scheduleArray();
    var scheduleIterable_1 = require_scheduleIterable();
    var scheduleAsyncIterable_1 = require_scheduleAsyncIterable();
    var isInteropObservable_1 = require_isInteropObservable();
    var isPromise_1 = require_isPromise();
    var isArrayLike_1 = require_isArrayLike2();
    var isIterable_1 = require_isIterable();
    var isAsyncIterable_1 = require_isAsyncIterable();
    var throwUnobservableError_1 = require_throwUnobservableError();
    var isReadableStreamLike_1 = require_isReadableStreamLike();
    var scheduleReadableStreamLike_1 = require_scheduleReadableStreamLike();
    function scheduled(input, scheduler3) {
      if (input != null) {
        if (isInteropObservable_1.isInteropObservable(input)) {
          return scheduleObservable_1.scheduleObservable(input, scheduler3);
        }
        if (isArrayLike_1.isArrayLike(input)) {
          return scheduleArray_1.scheduleArray(input, scheduler3);
        }
        if (isPromise_1.isPromise(input)) {
          return schedulePromise_1.schedulePromise(input, scheduler3);
        }
        if (isAsyncIterable_1.isAsyncIterable(input)) {
          return scheduleAsyncIterable_1.scheduleAsyncIterable(input, scheduler3);
        }
        if (isIterable_1.isIterable(input)) {
          return scheduleIterable_1.scheduleIterable(input, scheduler3);
        }
        if (isReadableStreamLike_1.isReadableStreamLike(input)) {
          return scheduleReadableStreamLike_1.scheduleReadableStreamLike(input, scheduler3);
        }
      }
      throw throwUnobservableError_1.createInvalidObservableTypeError(input);
    }
    exports2.scheduled = scheduled;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/from.js
var require_from = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/from.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.from = void 0;
    var scheduled_1 = require_scheduled();
    var innerFrom_1 = require_innerFrom();
    function from5(input, scheduler3) {
      return scheduler3 ? scheduled_1.scheduled(input, scheduler3) : innerFrom_1.innerFrom(input);
    }
    exports2.from = from5;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/of.js
var require_of = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/of.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.of = void 0;
    var args_1 = require_args();
    var from_1 = require_from();
    function of18() {
      var args = [];
      for (var _i = 0; _i < arguments.length; _i++) {
        args[_i] = arguments[_i];
      }
      var scheduler3 = args_1.popScheduler(args);
      return from_1.from(args, scheduler3);
    }
    exports2.of = of18;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/throwError.js
var require_throwError = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/throwError.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.throwError = void 0;
    var Observable_1 = require_Observable();
    var isFunction_1 = require_isFunction3();
    function throwError2(errorOrErrorFactory, scheduler3) {
      var errorFactory = isFunction_1.isFunction(errorOrErrorFactory) ? errorOrErrorFactory : function() {
        return errorOrErrorFactory;
      };
      var init2 = function(subscriber) {
        return subscriber.error(errorFactory());
      };
      return new Observable_1.Observable(scheduler3 ? function(subscriber) {
        return scheduler3.schedule(init2, 0, subscriber);
      } : init2);
    }
    exports2.throwError = throwError2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/Notification.js
var require_Notification = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/Notification.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.observeNotification = exports2.Notification = exports2.NotificationKind = void 0;
    var empty_1 = require_empty3();
    var of_1 = require_of();
    var throwError_1 = require_throwError();
    var isFunction_1 = require_isFunction3();
    var NotificationKind;
    (function(NotificationKind2) {
      NotificationKind2["NEXT"] = "N";
      NotificationKind2["ERROR"] = "E";
      NotificationKind2["COMPLETE"] = "C";
    })(NotificationKind = exports2.NotificationKind || (exports2.NotificationKind = {}));
    var Notification = (function() {
      function Notification2(kind, value, error) {
        this.kind = kind;
        this.value = value;
        this.error = error;
        this.hasValue = kind === "N";
      }
      Notification2.prototype.observe = function(observer) {
        return observeNotification(this, observer);
      };
      Notification2.prototype.do = function(nextHandler, errorHandler2, completeHandler) {
        var _a = this, kind = _a.kind, value = _a.value, error = _a.error;
        return kind === "N" ? nextHandler === null || nextHandler === void 0 ? void 0 : nextHandler(value) : kind === "E" ? errorHandler2 === null || errorHandler2 === void 0 ? void 0 : errorHandler2(error) : completeHandler === null || completeHandler === void 0 ? void 0 : completeHandler();
      };
      Notification2.prototype.accept = function(nextOrObserver, error, complete2) {
        var _a;
        return isFunction_1.isFunction((_a = nextOrObserver) === null || _a === void 0 ? void 0 : _a.next) ? this.observe(nextOrObserver) : this.do(nextOrObserver, error, complete2);
      };
      Notification2.prototype.toObservable = function() {
        var _a = this, kind = _a.kind, value = _a.value, error = _a.error;
        var result2 = kind === "N" ? of_1.of(value) : kind === "E" ? throwError_1.throwError(function() {
          return error;
        }) : kind === "C" ? empty_1.EMPTY : 0;
        if (!result2) {
          throw new TypeError("Unexpected notification kind " + kind);
        }
        return result2;
      };
      Notification2.createNext = function(value) {
        return new Notification2("N", value);
      };
      Notification2.createError = function(err) {
        return new Notification2("E", void 0, err);
      };
      Notification2.createComplete = function() {
        return Notification2.completeNotification;
      };
      Notification2.completeNotification = new Notification2("C");
      return Notification2;
    })();
    exports2.Notification = Notification;
    function observeNotification(notification, observer) {
      var _a, _b, _c;
      var _d = notification, kind = _d.kind, value = _d.value, error = _d.error;
      if (typeof kind !== "string") {
        throw new TypeError('Invalid notification, missing "kind"');
      }
      kind === "N" ? (_a = observer.next) === null || _a === void 0 ? void 0 : _a.call(observer, value) : kind === "E" ? (_b = observer.error) === null || _b === void 0 ? void 0 : _b.call(observer, error) : (_c = observer.complete) === null || _c === void 0 ? void 0 : _c.call(observer);
    }
    exports2.observeNotification = observeNotification;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/isObservable.js
var require_isObservable = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/isObservable.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.isObservable = void 0;
    var Observable_1 = require_Observable();
    var isFunction_1 = require_isFunction3();
    function isObservable(obj) {
      return !!obj && (obj instanceof Observable_1.Observable || isFunction_1.isFunction(obj.lift) && isFunction_1.isFunction(obj.subscribe));
    }
    exports2.isObservable = isObservable;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/EmptyError.js
var require_EmptyError = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/EmptyError.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.EmptyError = void 0;
    var createErrorClass_1 = require_createErrorClass();
    exports2.EmptyError = createErrorClass_1.createErrorClass(function(_super) {
      return function EmptyErrorImpl() {
        _super(this);
        this.name = "EmptyError";
        this.message = "no elements in sequence";
      };
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/lastValueFrom.js
var require_lastValueFrom = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/lastValueFrom.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.lastValueFrom = void 0;
    var EmptyError_1 = require_EmptyError();
    function lastValueFrom(source, config) {
      var hasConfig = typeof config === "object";
      return new Promise(function(resolve3, reject3) {
        var _hasValue = false;
        var _value;
        source.subscribe({
          next: function(value) {
            _value = value;
            _hasValue = true;
          },
          error: reject3,
          complete: function() {
            if (_hasValue) {
              resolve3(_value);
            } else if (hasConfig) {
              resolve3(config.defaultValue);
            } else {
              reject3(new EmptyError_1.EmptyError());
            }
          }
        });
      });
    }
    exports2.lastValueFrom = lastValueFrom;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/firstValueFrom.js
var require_firstValueFrom = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/firstValueFrom.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.firstValueFrom = void 0;
    var EmptyError_1 = require_EmptyError();
    var Subscriber_1 = require_Subscriber();
    function firstValueFrom(source, config) {
      var hasConfig = typeof config === "object";
      return new Promise(function(resolve3, reject3) {
        var subscriber = new Subscriber_1.SafeSubscriber({
          next: function(value) {
            resolve3(value);
            subscriber.unsubscribe();
          },
          error: reject3,
          complete: function() {
            if (hasConfig) {
              resolve3(config.defaultValue);
            } else {
              reject3(new EmptyError_1.EmptyError());
            }
          }
        });
        source.subscribe(subscriber);
      });
    }
    exports2.firstValueFrom = firstValueFrom;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/ArgumentOutOfRangeError.js
var require_ArgumentOutOfRangeError = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/ArgumentOutOfRangeError.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.ArgumentOutOfRangeError = void 0;
    var createErrorClass_1 = require_createErrorClass();
    exports2.ArgumentOutOfRangeError = createErrorClass_1.createErrorClass(function(_super) {
      return function ArgumentOutOfRangeErrorImpl() {
        _super(this);
        this.name = "ArgumentOutOfRangeError";
        this.message = "argument out of range";
      };
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/NotFoundError.js
var require_NotFoundError = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/NotFoundError.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.NotFoundError = void 0;
    var createErrorClass_1 = require_createErrorClass();
    exports2.NotFoundError = createErrorClass_1.createErrorClass(function(_super) {
      return function NotFoundErrorImpl(message) {
        _super(this);
        this.name = "NotFoundError";
        this.message = message;
      };
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/SequenceError.js
var require_SequenceError = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/SequenceError.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.SequenceError = void 0;
    var createErrorClass_1 = require_createErrorClass();
    exports2.SequenceError = createErrorClass_1.createErrorClass(function(_super) {
      return function SequenceErrorImpl(message) {
        _super(this);
        this.name = "SequenceError";
        this.message = message;
      };
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/isDate.js
var require_isDate3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/isDate.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.isValidDate = void 0;
    function isValidDate(value) {
      return value instanceof Date && !isNaN(value);
    }
    exports2.isValidDate = isValidDate;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/timeout.js
var require_timeout = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/timeout.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.timeout = exports2.TimeoutError = void 0;
    var async_1 = require_async9();
    var isDate_1 = require_isDate3();
    var lift_1 = require_lift();
    var innerFrom_1 = require_innerFrom();
    var createErrorClass_1 = require_createErrorClass();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    var executeSchedule_1 = require_executeSchedule();
    exports2.TimeoutError = createErrorClass_1.createErrorClass(function(_super) {
      return function TimeoutErrorImpl(info) {
        if (info === void 0) {
          info = null;
        }
        _super(this);
        this.message = "Timeout has occurred";
        this.name = "TimeoutError";
        this.info = info;
      };
    });
    function timeout(config, schedulerArg) {
      var _a = isDate_1.isValidDate(config) ? { first: config } : typeof config === "number" ? { each: config } : config, first = _a.first, each = _a.each, _b = _a.with, _with = _b === void 0 ? timeoutErrorFactory : _b, _c = _a.scheduler, scheduler3 = _c === void 0 ? schedulerArg !== null && schedulerArg !== void 0 ? schedulerArg : async_1.asyncScheduler : _c, _d = _a.meta, meta = _d === void 0 ? null : _d;
      if (first == null && each == null) {
        throw new TypeError("No timeout provided.");
      }
      return lift_1.operate(function(source, subscriber) {
        var originalSourceSubscription;
        var timerSubscription;
        var lastValue = null;
        var seen = 0;
        var startTimer = function(delay) {
          timerSubscription = executeSchedule_1.executeSchedule(subscriber, scheduler3, function() {
            try {
              originalSourceSubscription.unsubscribe();
              innerFrom_1.innerFrom(_with({
                meta,
                lastValue,
                seen
              })).subscribe(subscriber);
            } catch (err) {
              subscriber.error(err);
            }
          }, delay);
        };
        originalSourceSubscription = source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          timerSubscription === null || timerSubscription === void 0 ? void 0 : timerSubscription.unsubscribe();
          seen++;
          subscriber.next(lastValue = value);
          each > 0 && startTimer(each);
        }, void 0, void 0, function() {
          if (!(timerSubscription === null || timerSubscription === void 0 ? void 0 : timerSubscription.closed)) {
            timerSubscription === null || timerSubscription === void 0 ? void 0 : timerSubscription.unsubscribe();
          }
          lastValue = null;
        }));
        !seen && startTimer(first != null ? typeof first === "number" ? first : +first - scheduler3.now() : each);
      });
    }
    exports2.timeout = timeout;
    function timeoutErrorFactory(info) {
      throw new exports2.TimeoutError(info);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/map.js
var require_map4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/map.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.map = void 0;
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    function map26(project, thisArg) {
      return lift_1.operate(function(source, subscriber) {
        var index = 0;
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          subscriber.next(project.call(thisArg, value, index++));
        }));
      });
    }
    exports2.map = map26;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/mapOneOrManyArgs.js
var require_mapOneOrManyArgs = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/mapOneOrManyArgs.js"(exports2) {
    "use strict";
    var __read2 = exports2 && exports2.__read || function(o2, n2) {
      var m = typeof Symbol === "function" && o2[Symbol.iterator];
      if (!m) return o2;
      var i2 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i2.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i2["return"])) m.call(i2);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i2 = 0, il = from5.length, j2 = to.length; i2 < il; i2++, j2++)
        to[j2] = from5[i2];
      return to;
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.mapOneOrManyArgs = void 0;
    var map_1 = require_map4();
    var isArray = Array.isArray;
    function callOrApply(fn, args) {
      return isArray(args) ? fn.apply(void 0, __spreadArray2([], __read2(args))) : fn(args);
    }
    function mapOneOrManyArgs(fn) {
      return map_1.map(function(args) {
        return callOrApply(fn, args);
      });
    }
    exports2.mapOneOrManyArgs = mapOneOrManyArgs;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/bindCallbackInternals.js
var require_bindCallbackInternals = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/bindCallbackInternals.js"(exports2) {
    "use strict";
    var __read2 = exports2 && exports2.__read || function(o2, n2) {
      var m = typeof Symbol === "function" && o2[Symbol.iterator];
      if (!m) return o2;
      var i2 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i2.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i2["return"])) m.call(i2);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i2 = 0, il = from5.length, j2 = to.length; i2 < il; i2++, j2++)
        to[j2] = from5[i2];
      return to;
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.bindCallbackInternals = void 0;
    var isScheduler_1 = require_isScheduler();
    var Observable_1 = require_Observable();
    var subscribeOn_1 = require_subscribeOn();
    var mapOneOrManyArgs_1 = require_mapOneOrManyArgs();
    var observeOn_1 = require_observeOn();
    var AsyncSubject_1 = require_AsyncSubject();
    function bindCallbackInternals(isNodeStyle, callbackFunc, resultSelector, scheduler3) {
      if (resultSelector) {
        if (isScheduler_1.isScheduler(resultSelector)) {
          scheduler3 = resultSelector;
        } else {
          return function() {
            var args = [];
            for (var _i = 0; _i < arguments.length; _i++) {
              args[_i] = arguments[_i];
            }
            return bindCallbackInternals(isNodeStyle, callbackFunc, scheduler3).apply(this, args).pipe(mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector));
          };
        }
      }
      if (scheduler3) {
        return function() {
          var args = [];
          for (var _i = 0; _i < arguments.length; _i++) {
            args[_i] = arguments[_i];
          }
          return bindCallbackInternals(isNodeStyle, callbackFunc).apply(this, args).pipe(subscribeOn_1.subscribeOn(scheduler3), observeOn_1.observeOn(scheduler3));
        };
      }
      return function() {
        var _this = this;
        var args = [];
        for (var _i = 0; _i < arguments.length; _i++) {
          args[_i] = arguments[_i];
        }
        var subject = new AsyncSubject_1.AsyncSubject();
        var uninitialized = true;
        return new Observable_1.Observable(function(subscriber) {
          var subs = subject.subscribe(subscriber);
          if (uninitialized) {
            uninitialized = false;
            var isAsync_1 = false;
            var isComplete_1 = false;
            callbackFunc.apply(_this, __spreadArray2(__spreadArray2([], __read2(args)), [
              function() {
                var results = [];
                for (var _i2 = 0; _i2 < arguments.length; _i2++) {
                  results[_i2] = arguments[_i2];
                }
                if (isNodeStyle) {
                  var err = results.shift();
                  if (err != null) {
                    subject.error(err);
                    return;
                  }
                }
                subject.next(1 < results.length ? results : results[0]);
                isComplete_1 = true;
                if (isAsync_1) {
                  subject.complete();
                }
              }
            ]));
            if (isComplete_1) {
              subject.complete();
            }
            isAsync_1 = true;
          }
          return subs;
        });
      };
    }
    exports2.bindCallbackInternals = bindCallbackInternals;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/bindCallback.js
var require_bindCallback = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/bindCallback.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.bindCallback = void 0;
    var bindCallbackInternals_1 = require_bindCallbackInternals();
    function bindCallback(callbackFunc, resultSelector, scheduler3) {
      return bindCallbackInternals_1.bindCallbackInternals(false, callbackFunc, resultSelector, scheduler3);
    }
    exports2.bindCallback = bindCallback;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/bindNodeCallback.js
var require_bindNodeCallback = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/bindNodeCallback.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.bindNodeCallback = void 0;
    var bindCallbackInternals_1 = require_bindCallbackInternals();
    function bindNodeCallback(callbackFunc, resultSelector, scheduler3) {
      return bindCallbackInternals_1.bindCallbackInternals(true, callbackFunc, resultSelector, scheduler3);
    }
    exports2.bindNodeCallback = bindNodeCallback;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/argsArgArrayOrObject.js
var require_argsArgArrayOrObject = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/argsArgArrayOrObject.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.argsArgArrayOrObject = void 0;
    var isArray = Array.isArray;
    var getPrototypeOf = Object.getPrototypeOf;
    var objectProto = Object.prototype;
    var getKeys = Object.keys;
    function argsArgArrayOrObject(args) {
      if (args.length === 1) {
        var first_1 = args[0];
        if (isArray(first_1)) {
          return { args: first_1, keys: null };
        }
        if (isPOJO(first_1)) {
          var keys4 = getKeys(first_1);
          return {
            args: keys4.map(function(key) {
              return first_1[key];
            }),
            keys: keys4
          };
        }
      }
      return { args, keys: null };
    }
    exports2.argsArgArrayOrObject = argsArgArrayOrObject;
    function isPOJO(obj) {
      return obj && typeof obj === "object" && getPrototypeOf(obj) === objectProto;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/createObject.js
var require_createObject = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/createObject.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.createObject = void 0;
    function createObject(keys4, values) {
      return keys4.reduce(function(result2, key, i2) {
        return result2[key] = values[i2], result2;
      }, {});
    }
    exports2.createObject = createObject;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/combineLatest.js
var require_combineLatest = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/combineLatest.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.combineLatestInit = exports2.combineLatest = void 0;
    var Observable_1 = require_Observable();
    var argsArgArrayOrObject_1 = require_argsArgArrayOrObject();
    var from_1 = require_from();
    var identity_1 = require_identity5();
    var mapOneOrManyArgs_1 = require_mapOneOrManyArgs();
    var args_1 = require_args();
    var createObject_1 = require_createObject();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    var executeSchedule_1 = require_executeSchedule();
    function combineLatest5() {
      var args = [];
      for (var _i = 0; _i < arguments.length; _i++) {
        args[_i] = arguments[_i];
      }
      var scheduler3 = args_1.popScheduler(args);
      var resultSelector = args_1.popResultSelector(args);
      var _a = argsArgArrayOrObject_1.argsArgArrayOrObject(args), observables = _a.args, keys4 = _a.keys;
      if (observables.length === 0) {
        return from_1.from([], scheduler3);
      }
      var result2 = new Observable_1.Observable(combineLatestInit(observables, scheduler3, keys4 ? function(values) {
        return createObject_1.createObject(keys4, values);
      } : identity_1.identity));
      return resultSelector ? result2.pipe(mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector)) : result2;
    }
    exports2.combineLatest = combineLatest5;
    function combineLatestInit(observables, scheduler3, valueTransform) {
      if (valueTransform === void 0) {
        valueTransform = identity_1.identity;
      }
      return function(subscriber) {
        maybeSchedule(scheduler3, function() {
          var length = observables.length;
          var values = new Array(length);
          var active = length;
          var remainingFirstValues = length;
          var _loop_1 = function(i3) {
            maybeSchedule(scheduler3, function() {
              var source = from_1.from(observables[i3], scheduler3);
              var hasFirstValue = false;
              source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
                values[i3] = value;
                if (!hasFirstValue) {
                  hasFirstValue = true;
                  remainingFirstValues--;
                }
                if (!remainingFirstValues) {
                  subscriber.next(valueTransform(values.slice()));
                }
              }, function() {
                if (!--active) {
                  subscriber.complete();
                }
              }));
            }, subscriber);
          };
          for (var i2 = 0; i2 < length; i2++) {
            _loop_1(i2);
          }
        }, subscriber);
      };
    }
    exports2.combineLatestInit = combineLatestInit;
    function maybeSchedule(scheduler3, execute2, subscription) {
      if (scheduler3) {
        executeSchedule_1.executeSchedule(subscription, scheduler3, execute2);
      } else {
        execute2();
      }
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/mergeInternals.js
var require_mergeInternals = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/mergeInternals.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.mergeInternals = void 0;
    var innerFrom_1 = require_innerFrom();
    var executeSchedule_1 = require_executeSchedule();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    function mergeInternals(source, subscriber, project, concurrent, onBeforeNext, expand, innerSubScheduler, additionalFinalizer) {
      var buffer3 = [];
      var active = 0;
      var index = 0;
      var isComplete = false;
      var checkComplete = function() {
        if (isComplete && !buffer3.length && !active) {
          subscriber.complete();
        }
      };
      var outerNext = function(value) {
        return active < concurrent ? doInnerSub(value) : buffer3.push(value);
      };
      var doInnerSub = function(value) {
        expand && subscriber.next(value);
        active++;
        var innerComplete = false;
        innerFrom_1.innerFrom(project(value, index++)).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(innerValue) {
          onBeforeNext === null || onBeforeNext === void 0 ? void 0 : onBeforeNext(innerValue);
          if (expand) {
            outerNext(innerValue);
          } else {
            subscriber.next(innerValue);
          }
        }, function() {
          innerComplete = true;
        }, void 0, function() {
          if (innerComplete) {
            try {
              active--;
              var _loop_1 = function() {
                var bufferedValue = buffer3.shift();
                if (innerSubScheduler) {
                  executeSchedule_1.executeSchedule(subscriber, innerSubScheduler, function() {
                    return doInnerSub(bufferedValue);
                  });
                } else {
                  doInnerSub(bufferedValue);
                }
              };
              while (buffer3.length && active < concurrent) {
                _loop_1();
              }
              checkComplete();
            } catch (err) {
              subscriber.error(err);
            }
          }
        }));
      };
      source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, outerNext, function() {
        isComplete = true;
        checkComplete();
      }));
      return function() {
        additionalFinalizer === null || additionalFinalizer === void 0 ? void 0 : additionalFinalizer();
      };
    }
    exports2.mergeInternals = mergeInternals;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/mergeMap.js
var require_mergeMap = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/mergeMap.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.mergeMap = void 0;
    var map_1 = require_map4();
    var innerFrom_1 = require_innerFrom();
    var lift_1 = require_lift();
    var mergeInternals_1 = require_mergeInternals();
    var isFunction_1 = require_isFunction3();
    function mergeMap2(project, resultSelector, concurrent) {
      if (concurrent === void 0) {
        concurrent = Infinity;
      }
      if (isFunction_1.isFunction(resultSelector)) {
        return mergeMap2(function(a2, i2) {
          return map_1.map(function(b, ii) {
            return resultSelector(a2, b, i2, ii);
          })(innerFrom_1.innerFrom(project(a2, i2)));
        }, concurrent);
      } else if (typeof resultSelector === "number") {
        concurrent = resultSelector;
      }
      return lift_1.operate(function(source, subscriber) {
        return mergeInternals_1.mergeInternals(source, subscriber, project, concurrent);
      });
    }
    exports2.mergeMap = mergeMap2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/mergeAll.js
var require_mergeAll = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/mergeAll.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.mergeAll = void 0;
    var mergeMap_1 = require_mergeMap();
    var identity_1 = require_identity5();
    function mergeAll6(concurrent) {
      if (concurrent === void 0) {
        concurrent = Infinity;
      }
      return mergeMap_1.mergeMap(identity_1.identity, concurrent);
    }
    exports2.mergeAll = mergeAll6;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/concatAll.js
var require_concatAll = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/concatAll.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.concatAll = void 0;
    var mergeAll_1 = require_mergeAll();
    function concatAll() {
      return mergeAll_1.mergeAll(1);
    }
    exports2.concatAll = concatAll;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/concat.js
var require_concat2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/concat.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.concat = void 0;
    var concatAll_1 = require_concatAll();
    var args_1 = require_args();
    var from_1 = require_from();
    function concat() {
      var args = [];
      for (var _i = 0; _i < arguments.length; _i++) {
        args[_i] = arguments[_i];
      }
      return concatAll_1.concatAll()(from_1.from(args, args_1.popScheduler(args)));
    }
    exports2.concat = concat;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/defer.js
var require_defer2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/defer.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.defer = void 0;
    var Observable_1 = require_Observable();
    var innerFrom_1 = require_innerFrom();
    function defer(observableFactory) {
      return new Observable_1.Observable(function(subscriber) {
        innerFrom_1.innerFrom(observableFactory()).subscribe(subscriber);
      });
    }
    exports2.defer = defer;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/connectable.js
var require_connectable = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/connectable.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.connectable = void 0;
    var Subject_1 = require_Subject();
    var Observable_1 = require_Observable();
    var defer_1 = require_defer2();
    var DEFAULT_CONFIG = {
      connector: function() {
        return new Subject_1.Subject();
      },
      resetOnDisconnect: true
    };
    function connectable(source, config) {
      if (config === void 0) {
        config = DEFAULT_CONFIG;
      }
      var connection = null;
      var connector = config.connector, _a = config.resetOnDisconnect, resetOnDisconnect = _a === void 0 ? true : _a;
      var subject = connector();
      var result2 = new Observable_1.Observable(function(subscriber) {
        return subject.subscribe(subscriber);
      });
      result2.connect = function() {
        if (!connection || connection.closed) {
          connection = defer_1.defer(function() {
            return source;
          }).subscribe(subject);
          if (resetOnDisconnect) {
            connection.add(function() {
              return subject = connector();
            });
          }
        }
        return connection;
      };
      return result2;
    }
    exports2.connectable = connectable;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/forkJoin.js
var require_forkJoin = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/forkJoin.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.forkJoin = void 0;
    var Observable_1 = require_Observable();
    var argsArgArrayOrObject_1 = require_argsArgArrayOrObject();
    var innerFrom_1 = require_innerFrom();
    var args_1 = require_args();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    var mapOneOrManyArgs_1 = require_mapOneOrManyArgs();
    var createObject_1 = require_createObject();
    function forkJoin() {
      var args = [];
      for (var _i = 0; _i < arguments.length; _i++) {
        args[_i] = arguments[_i];
      }
      var resultSelector = args_1.popResultSelector(args);
      var _a = argsArgArrayOrObject_1.argsArgArrayOrObject(args), sources = _a.args, keys4 = _a.keys;
      var result2 = new Observable_1.Observable(function(subscriber) {
        var length = sources.length;
        if (!length) {
          subscriber.complete();
          return;
        }
        var values = new Array(length);
        var remainingCompletions = length;
        var remainingEmissions = length;
        var _loop_1 = function(sourceIndex2) {
          var hasValue = false;
          innerFrom_1.innerFrom(sources[sourceIndex2]).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
            if (!hasValue) {
              hasValue = true;
              remainingEmissions--;
            }
            values[sourceIndex2] = value;
          }, function() {
            return remainingCompletions--;
          }, void 0, function() {
            if (!remainingCompletions || !hasValue) {
              if (!remainingEmissions) {
                subscriber.next(keys4 ? createObject_1.createObject(keys4, values) : values);
              }
              subscriber.complete();
            }
          }));
        };
        for (var sourceIndex = 0; sourceIndex < length; sourceIndex++) {
          _loop_1(sourceIndex);
        }
      });
      return resultSelector ? result2.pipe(mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector)) : result2;
    }
    exports2.forkJoin = forkJoin;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/fromEvent.js
var require_fromEvent = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/fromEvent.js"(exports2) {
    "use strict";
    var __read2 = exports2 && exports2.__read || function(o2, n2) {
      var m = typeof Symbol === "function" && o2[Symbol.iterator];
      if (!m) return o2;
      var i2 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i2.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i2["return"])) m.call(i2);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.fromEvent = void 0;
    var innerFrom_1 = require_innerFrom();
    var Observable_1 = require_Observable();
    var mergeMap_1 = require_mergeMap();
    var isArrayLike_1 = require_isArrayLike2();
    var isFunction_1 = require_isFunction3();
    var mapOneOrManyArgs_1 = require_mapOneOrManyArgs();
    var nodeEventEmitterMethods = ["addListener", "removeListener"];
    var eventTargetMethods = ["addEventListener", "removeEventListener"];
    var jqueryMethods = ["on", "off"];
    function fromEvent(target2, eventName, options, resultSelector) {
      if (isFunction_1.isFunction(options)) {
        resultSelector = options;
        options = void 0;
      }
      if (resultSelector) {
        return fromEvent(target2, eventName, options).pipe(mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector));
      }
      var _a = __read2(isEventTarget(target2) ? eventTargetMethods.map(function(methodName) {
        return function(handler77) {
          return target2[methodName](eventName, handler77, options);
        };
      }) : isNodeStyleEventEmitter(target2) ? nodeEventEmitterMethods.map(toCommonHandlerRegistry(target2, eventName)) : isJQueryStyleEventEmitter(target2) ? jqueryMethods.map(toCommonHandlerRegistry(target2, eventName)) : [], 2), add = _a[0], remove = _a[1];
      if (!add) {
        if (isArrayLike_1.isArrayLike(target2)) {
          return mergeMap_1.mergeMap(function(subTarget) {
            return fromEvent(subTarget, eventName, options);
          })(innerFrom_1.innerFrom(target2));
        }
      }
      if (!add) {
        throw new TypeError("Invalid event target");
      }
      return new Observable_1.Observable(function(subscriber) {
        var handler77 = function() {
          var args = [];
          for (var _i = 0; _i < arguments.length; _i++) {
            args[_i] = arguments[_i];
          }
          return subscriber.next(1 < args.length ? args : args[0]);
        };
        add(handler77);
        return function() {
          return remove(handler77);
        };
      });
    }
    exports2.fromEvent = fromEvent;
    function toCommonHandlerRegistry(target2, eventName) {
      return function(methodName) {
        return function(handler77) {
          return target2[methodName](eventName, handler77);
        };
      };
    }
    function isNodeStyleEventEmitter(target2) {
      return isFunction_1.isFunction(target2.addListener) && isFunction_1.isFunction(target2.removeListener);
    }
    function isJQueryStyleEventEmitter(target2) {
      return isFunction_1.isFunction(target2.on) && isFunction_1.isFunction(target2.off);
    }
    function isEventTarget(target2) {
      return isFunction_1.isFunction(target2.addEventListener) && isFunction_1.isFunction(target2.removeEventListener);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/fromEventPattern.js
var require_fromEventPattern = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/fromEventPattern.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.fromEventPattern = void 0;
    var Observable_1 = require_Observable();
    var isFunction_1 = require_isFunction3();
    var mapOneOrManyArgs_1 = require_mapOneOrManyArgs();
    function fromEventPattern(addHandler, removeHandler, resultSelector) {
      if (resultSelector) {
        return fromEventPattern(addHandler, removeHandler).pipe(mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector));
      }
      return new Observable_1.Observable(function(subscriber) {
        var handler77 = function() {
          var e = [];
          for (var _i = 0; _i < arguments.length; _i++) {
            e[_i] = arguments[_i];
          }
          return subscriber.next(e.length === 1 ? e[0] : e);
        };
        var retValue = addHandler(handler77);
        return isFunction_1.isFunction(removeHandler) ? function() {
          return removeHandler(handler77, retValue);
        } : void 0;
      });
    }
    exports2.fromEventPattern = fromEventPattern;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/generate.js
var require_generate = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/generate.js"(exports2) {
    "use strict";
    var __generator2 = exports2 && exports2.__generator || function(thisArg, body) {
      var _ = { label: 0, sent: function() {
        if (t2[0] & 1) throw t2[1];
        return t2[1];
      }, trys: [], ops: [] }, f, y, t2, g;
      return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() {
        return this;
      }), g;
      function verb(n2) {
        return function(v) {
          return step2([n2, v]);
        };
      }
      function step2(op) {
        if (f) throw new TypeError("Generator is already executing.");
        while (_) try {
          if (f = 1, y && (t2 = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t2 = y["return"]) && t2.call(y), 0) : y.next) && !(t2 = t2.call(y, op[1])).done) return t2;
          if (y = 0, t2) op = [op[0] & 2, t2.value];
          switch (op[0]) {
            case 0:
            case 1:
              t2 = op;
              break;
            case 4:
              _.label++;
              return { value: op[1], done: false };
            case 5:
              _.label++;
              y = op[1];
              op = [0];
              continue;
            case 7:
              op = _.ops.pop();
              _.trys.pop();
              continue;
            default:
              if (!(t2 = _.trys, t2 = t2.length > 0 && t2[t2.length - 1]) && (op[0] === 6 || op[0] === 2)) {
                _ = 0;
                continue;
              }
              if (op[0] === 3 && (!t2 || op[1] > t2[0] && op[1] < t2[3])) {
                _.label = op[1];
                break;
              }
              if (op[0] === 6 && _.label < t2[1]) {
                _.label = t2[1];
                t2 = op;
                break;
              }
              if (t2 && _.label < t2[2]) {
                _.label = t2[2];
                _.ops.push(op);
                break;
              }
              if (t2[2]) _.ops.pop();
              _.trys.pop();
              continue;
          }
          op = body.call(thisArg, _);
        } catch (e) {
          op = [6, e];
          y = 0;
        } finally {
          f = t2 = 0;
        }
        if (op[0] & 5) throw op[1];
        return { value: op[0] ? op[1] : void 0, done: true };
      }
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.generate = void 0;
    var identity_1 = require_identity5();
    var isScheduler_1 = require_isScheduler();
    var defer_1 = require_defer2();
    var scheduleIterable_1 = require_scheduleIterable();
    function generate(initialStateOrOptions, condition, iterate, resultSelectorOrScheduler, scheduler3) {
      var _a, _b;
      var resultSelector;
      var initialState;
      if (arguments.length === 1) {
        _a = initialStateOrOptions, initialState = _a.initialState, condition = _a.condition, iterate = _a.iterate, _b = _a.resultSelector, resultSelector = _b === void 0 ? identity_1.identity : _b, scheduler3 = _a.scheduler;
      } else {
        initialState = initialStateOrOptions;
        if (!resultSelectorOrScheduler || isScheduler_1.isScheduler(resultSelectorOrScheduler)) {
          resultSelector = identity_1.identity;
          scheduler3 = resultSelectorOrScheduler;
        } else {
          resultSelector = resultSelectorOrScheduler;
        }
      }
      function gen() {
        var state;
        return __generator2(this, function(_a2) {
          switch (_a2.label) {
            case 0:
              state = initialState;
              _a2.label = 1;
            case 1:
              if (!(!condition || condition(state))) return [3, 4];
              return [4, resultSelector(state)];
            case 2:
              _a2.sent();
              _a2.label = 3;
            case 3:
              state = iterate(state);
              return [3, 1];
            case 4:
              return [2];
          }
        });
      }
      return defer_1.defer(scheduler3 ? function() {
        return scheduleIterable_1.scheduleIterable(gen(), scheduler3);
      } : gen);
    }
    exports2.generate = generate;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/iif.js
var require_iif = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/iif.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.iif = void 0;
    var defer_1 = require_defer2();
    function iif(condition, trueResult, falseResult) {
      return defer_1.defer(function() {
        return condition() ? trueResult : falseResult;
      });
    }
    exports2.iif = iif;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/timer.js
var require_timer2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/timer.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.timer = void 0;
    var Observable_1 = require_Observable();
    var async_1 = require_async9();
    var isScheduler_1 = require_isScheduler();
    var isDate_1 = require_isDate3();
    function timer(dueTime, intervalOrScheduler, scheduler3) {
      if (dueTime === void 0) {
        dueTime = 0;
      }
      if (scheduler3 === void 0) {
        scheduler3 = async_1.async;
      }
      var intervalDuration = -1;
      if (intervalOrScheduler != null) {
        if (isScheduler_1.isScheduler(intervalOrScheduler)) {
          scheduler3 = intervalOrScheduler;
        } else {
          intervalDuration = intervalOrScheduler;
        }
      }
      return new Observable_1.Observable(function(subscriber) {
        var due = isDate_1.isValidDate(dueTime) ? +dueTime - scheduler3.now() : dueTime;
        if (due < 0) {
          due = 0;
        }
        var n2 = 0;
        return scheduler3.schedule(function() {
          if (!subscriber.closed) {
            subscriber.next(n2++);
            if (0 <= intervalDuration) {
              this.schedule(void 0, intervalDuration);
            } else {
              subscriber.complete();
            }
          }
        }, due);
      });
    }
    exports2.timer = timer;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/interval.js
var require_interval = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/interval.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.interval = void 0;
    var async_1 = require_async9();
    var timer_1 = require_timer2();
    function interval(period, scheduler3) {
      if (period === void 0) {
        period = 0;
      }
      if (scheduler3 === void 0) {
        scheduler3 = async_1.asyncScheduler;
      }
      if (period < 0) {
        period = 0;
      }
      return timer_1.timer(period, period, scheduler3);
    }
    exports2.interval = interval;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/merge.js
var require_merge5 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/merge.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.merge = void 0;
    var mergeAll_1 = require_mergeAll();
    var innerFrom_1 = require_innerFrom();
    var empty_1 = require_empty3();
    var args_1 = require_args();
    var from_1 = require_from();
    function merge7() {
      var args = [];
      for (var _i = 0; _i < arguments.length; _i++) {
        args[_i] = arguments[_i];
      }
      var scheduler3 = args_1.popScheduler(args);
      var concurrent = args_1.popNumber(args, Infinity);
      var sources = args;
      return !sources.length ? empty_1.EMPTY : sources.length === 1 ? innerFrom_1.innerFrom(sources[0]) : mergeAll_1.mergeAll(concurrent)(from_1.from(sources, scheduler3));
    }
    exports2.merge = merge7;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/never.js
var require_never = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/never.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.never = exports2.NEVER = void 0;
    var Observable_1 = require_Observable();
    var noop_1 = require_noop3();
    exports2.NEVER = new Observable_1.Observable(noop_1.noop);
    function never() {
      return exports2.NEVER;
    }
    exports2.never = never;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/argsOrArgArray.js
var require_argsOrArgArray = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/argsOrArgArray.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.argsOrArgArray = void 0;
    var isArray = Array.isArray;
    function argsOrArgArray(args) {
      return args.length === 1 && isArray(args[0]) ? args[0] : args;
    }
    exports2.argsOrArgArray = argsOrArgArray;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/onErrorResumeNext.js
var require_onErrorResumeNext = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/onErrorResumeNext.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.onErrorResumeNext = void 0;
    var Observable_1 = require_Observable();
    var argsOrArgArray_1 = require_argsOrArgArray();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    var noop_1 = require_noop3();
    var innerFrom_1 = require_innerFrom();
    function onErrorResumeNext() {
      var sources = [];
      for (var _i = 0; _i < arguments.length; _i++) {
        sources[_i] = arguments[_i];
      }
      var nextSources = argsOrArgArray_1.argsOrArgArray(sources);
      return new Observable_1.Observable(function(subscriber) {
        var sourceIndex = 0;
        var subscribeNext = function() {
          if (sourceIndex < nextSources.length) {
            var nextSource = void 0;
            try {
              nextSource = innerFrom_1.innerFrom(nextSources[sourceIndex++]);
            } catch (err) {
              subscribeNext();
              return;
            }
            var innerSubscriber = new OperatorSubscriber_1.OperatorSubscriber(subscriber, void 0, noop_1.noop, noop_1.noop);
            nextSource.subscribe(innerSubscriber);
            innerSubscriber.add(subscribeNext);
          } else {
            subscriber.complete();
          }
        };
        subscribeNext();
      });
    }
    exports2.onErrorResumeNext = onErrorResumeNext;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/pairs.js
var require_pairs3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/pairs.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.pairs = void 0;
    var from_1 = require_from();
    function pairs2(obj, scheduler3) {
      return from_1.from(Object.entries(obj), scheduler3);
    }
    exports2.pairs = pairs2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/not.js
var require_not = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/util/not.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.not = void 0;
    function not(pred, thisArg) {
      return function(value, index) {
        return !pred.call(thisArg, value, index);
      };
    }
    exports2.not = not;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/filter.js
var require_filter3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/filter.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.filter = void 0;
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    function filter14(predicate, thisArg) {
      return lift_1.operate(function(source, subscriber) {
        var index = 0;
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          return predicate.call(thisArg, value, index++) && subscriber.next(value);
        }));
      });
    }
    exports2.filter = filter14;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/partition.js
var require_partition2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/partition.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.partition = void 0;
    var not_1 = require_not();
    var filter_1 = require_filter3();
    var innerFrom_1 = require_innerFrom();
    function partition3(source, predicate, thisArg) {
      return [filter_1.filter(predicate, thisArg)(innerFrom_1.innerFrom(source)), filter_1.filter(not_1.not(predicate, thisArg))(innerFrom_1.innerFrom(source))];
    }
    exports2.partition = partition3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/race.js
var require_race = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/race.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.raceInit = exports2.race = void 0;
    var Observable_1 = require_Observable();
    var innerFrom_1 = require_innerFrom();
    var argsOrArgArray_1 = require_argsOrArgArray();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    function race() {
      var sources = [];
      for (var _i = 0; _i < arguments.length; _i++) {
        sources[_i] = arguments[_i];
      }
      sources = argsOrArgArray_1.argsOrArgArray(sources);
      return sources.length === 1 ? innerFrom_1.innerFrom(sources[0]) : new Observable_1.Observable(raceInit(sources));
    }
    exports2.race = race;
    function raceInit(sources) {
      return function(subscriber) {
        var subscriptions = [];
        var _loop_1 = function(i3) {
          subscriptions.push(innerFrom_1.innerFrom(sources[i3]).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
            if (subscriptions) {
              for (var s = 0; s < subscriptions.length; s++) {
                s !== i3 && subscriptions[s].unsubscribe();
              }
              subscriptions = null;
            }
            subscriber.next(value);
          })));
        };
        for (var i2 = 0; subscriptions && !subscriber.closed && i2 < sources.length; i2++) {
          _loop_1(i2);
        }
      };
    }
    exports2.raceInit = raceInit;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/range.js
var require_range5 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/range.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.range = void 0;
    var Observable_1 = require_Observable();
    var empty_1 = require_empty3();
    function range(start, count2, scheduler3) {
      if (count2 == null) {
        count2 = start;
        start = 0;
      }
      if (count2 <= 0) {
        return empty_1.EMPTY;
      }
      var end = count2 + start;
      return new Observable_1.Observable(scheduler3 ? function(subscriber) {
        var n2 = start;
        return scheduler3.schedule(function() {
          if (n2 < end) {
            subscriber.next(n2++);
            this.schedule();
          } else {
            subscriber.complete();
          }
        });
      } : function(subscriber) {
        var n2 = start;
        while (n2 < end && !subscriber.closed) {
          subscriber.next(n2++);
        }
        subscriber.complete();
      });
    }
    exports2.range = range;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/using.js
var require_using = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/using.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.using = void 0;
    var Observable_1 = require_Observable();
    var innerFrom_1 = require_innerFrom();
    var empty_1 = require_empty3();
    function using(resourceFactory, observableFactory) {
      return new Observable_1.Observable(function(subscriber) {
        var resource = resourceFactory();
        var result2 = observableFactory(resource);
        var source = result2 ? innerFrom_1.innerFrom(result2) : empty_1.EMPTY;
        source.subscribe(subscriber);
        return function() {
          if (resource) {
            resource.unsubscribe();
          }
        };
      });
    }
    exports2.using = using;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/zip.js
var require_zip3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/zip.js"(exports2) {
    "use strict";
    var __read2 = exports2 && exports2.__read || function(o2, n2) {
      var m = typeof Symbol === "function" && o2[Symbol.iterator];
      if (!m) return o2;
      var i2 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i2.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i2["return"])) m.call(i2);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i2 = 0, il = from5.length, j2 = to.length; i2 < il; i2++, j2++)
        to[j2] = from5[i2];
      return to;
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.zip = void 0;
    var Observable_1 = require_Observable();
    var innerFrom_1 = require_innerFrom();
    var argsOrArgArray_1 = require_argsOrArgArray();
    var empty_1 = require_empty3();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    var args_1 = require_args();
    function zip() {
      var args = [];
      for (var _i = 0; _i < arguments.length; _i++) {
        args[_i] = arguments[_i];
      }
      var resultSelector = args_1.popResultSelector(args);
      var sources = argsOrArgArray_1.argsOrArgArray(args);
      return sources.length ? new Observable_1.Observable(function(subscriber) {
        var buffers = sources.map(function() {
          return [];
        });
        var completed = sources.map(function() {
          return false;
        });
        subscriber.add(function() {
          buffers = completed = null;
        });
        var _loop_1 = function(sourceIndex2) {
          innerFrom_1.innerFrom(sources[sourceIndex2]).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
            buffers[sourceIndex2].push(value);
            if (buffers.every(function(buffer3) {
              return buffer3.length;
            })) {
              var result2 = buffers.map(function(buffer3) {
                return buffer3.shift();
              });
              subscriber.next(resultSelector ? resultSelector.apply(void 0, __spreadArray2([], __read2(result2))) : result2);
              if (buffers.some(function(buffer3, i2) {
                return !buffer3.length && completed[i2];
              })) {
                subscriber.complete();
              }
            }
          }, function() {
            completed[sourceIndex2] = true;
            !buffers[sourceIndex2].length && subscriber.complete();
          }));
        };
        for (var sourceIndex = 0; !subscriber.closed && sourceIndex < sources.length; sourceIndex++) {
          _loop_1(sourceIndex);
        }
        return function() {
          buffers = completed = null;
        };
      }) : empty_1.EMPTY;
    }
    exports2.zip = zip;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/types.js
var require_types3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/types.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/audit.js
var require_audit = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/audit.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.audit = void 0;
    var lift_1 = require_lift();
    var innerFrom_1 = require_innerFrom();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    function audit2(durationSelector) {
      return lift_1.operate(function(source, subscriber) {
        var hasValue = false;
        var lastValue = null;
        var durationSubscriber = null;
        var isComplete = false;
        var endDuration = function() {
          durationSubscriber === null || durationSubscriber === void 0 ? void 0 : durationSubscriber.unsubscribe();
          durationSubscriber = null;
          if (hasValue) {
            hasValue = false;
            var value = lastValue;
            lastValue = null;
            subscriber.next(value);
          }
          isComplete && subscriber.complete();
        };
        var cleanupDuration = function() {
          durationSubscriber = null;
          isComplete && subscriber.complete();
        };
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          hasValue = true;
          lastValue = value;
          if (!durationSubscriber) {
            innerFrom_1.innerFrom(durationSelector(value)).subscribe(durationSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber, endDuration, cleanupDuration));
          }
        }, function() {
          isComplete = true;
          (!hasValue || !durationSubscriber || durationSubscriber.closed) && subscriber.complete();
        }));
      });
    }
    exports2.audit = audit2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/auditTime.js
var require_auditTime = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/auditTime.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.auditTime = void 0;
    var async_1 = require_async9();
    var audit_1 = require_audit();
    var timer_1 = require_timer2();
    function auditTime(duration, scheduler3) {
      if (scheduler3 === void 0) {
        scheduler3 = async_1.asyncScheduler;
      }
      return audit_1.audit(function() {
        return timer_1.timer(duration, scheduler3);
      });
    }
    exports2.auditTime = auditTime;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/buffer.js
var require_buffer = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/buffer.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.buffer = void 0;
    var lift_1 = require_lift();
    var noop_1 = require_noop3();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    var innerFrom_1 = require_innerFrom();
    function buffer3(closingNotifier) {
      return lift_1.operate(function(source, subscriber) {
        var currentBuffer = [];
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          return currentBuffer.push(value);
        }, function() {
          subscriber.next(currentBuffer);
          subscriber.complete();
        }));
        innerFrom_1.innerFrom(closingNotifier).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function() {
          var b = currentBuffer;
          currentBuffer = [];
          subscriber.next(b);
        }, noop_1.noop));
        return function() {
          currentBuffer = null;
        };
      });
    }
    exports2.buffer = buffer3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/bufferCount.js
var require_bufferCount = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/bufferCount.js"(exports2) {
    "use strict";
    var __values2 = exports2 && exports2.__values || function(o2) {
      var s = typeof Symbol === "function" && Symbol.iterator, m = s && o2[s], i2 = 0;
      if (m) return m.call(o2);
      if (o2 && typeof o2.length === "number") return {
        next: function() {
          if (o2 && i2 >= o2.length) o2 = void 0;
          return { value: o2 && o2[i2++], done: !o2 };
        }
      };
      throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.bufferCount = void 0;
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    var arrRemove_1 = require_arrRemove();
    function bufferCount(bufferSize, startBufferEvery) {
      if (startBufferEvery === void 0) {
        startBufferEvery = null;
      }
      startBufferEvery = startBufferEvery !== null && startBufferEvery !== void 0 ? startBufferEvery : bufferSize;
      return lift_1.operate(function(source, subscriber) {
        var buffers = [];
        var count2 = 0;
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          var e_1, _a, e_2, _b;
          var toEmit = null;
          if (count2++ % startBufferEvery === 0) {
            buffers.push([]);
          }
          try {
            for (var buffers_1 = __values2(buffers), buffers_1_1 = buffers_1.next(); !buffers_1_1.done; buffers_1_1 = buffers_1.next()) {
              var buffer3 = buffers_1_1.value;
              buffer3.push(value);
              if (bufferSize <= buffer3.length) {
                toEmit = toEmit !== null && toEmit !== void 0 ? toEmit : [];
                toEmit.push(buffer3);
              }
            }
          } catch (e_1_1) {
            e_1 = { error: e_1_1 };
          } finally {
            try {
              if (buffers_1_1 && !buffers_1_1.done && (_a = buffers_1.return)) _a.call(buffers_1);
            } finally {
              if (e_1) throw e_1.error;
            }
          }
          if (toEmit) {
            try {
              for (var toEmit_1 = __values2(toEmit), toEmit_1_1 = toEmit_1.next(); !toEmit_1_1.done; toEmit_1_1 = toEmit_1.next()) {
                var buffer3 = toEmit_1_1.value;
                arrRemove_1.arrRemove(buffers, buffer3);
                subscriber.next(buffer3);
              }
            } catch (e_2_1) {
              e_2 = { error: e_2_1 };
            } finally {
              try {
                if (toEmit_1_1 && !toEmit_1_1.done && (_b = toEmit_1.return)) _b.call(toEmit_1);
              } finally {
                if (e_2) throw e_2.error;
              }
            }
          }
        }, function() {
          var e_3, _a;
          try {
            for (var buffers_2 = __values2(buffers), buffers_2_1 = buffers_2.next(); !buffers_2_1.done; buffers_2_1 = buffers_2.next()) {
              var buffer3 = buffers_2_1.value;
              subscriber.next(buffer3);
            }
          } catch (e_3_1) {
            e_3 = { error: e_3_1 };
          } finally {
            try {
              if (buffers_2_1 && !buffers_2_1.done && (_a = buffers_2.return)) _a.call(buffers_2);
            } finally {
              if (e_3) throw e_3.error;
            }
          }
          subscriber.complete();
        }, void 0, function() {
          buffers = null;
        }));
      });
    }
    exports2.bufferCount = bufferCount;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/bufferTime.js
var require_bufferTime = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/bufferTime.js"(exports2) {
    "use strict";
    var __values2 = exports2 && exports2.__values || function(o2) {
      var s = typeof Symbol === "function" && Symbol.iterator, m = s && o2[s], i2 = 0;
      if (m) return m.call(o2);
      if (o2 && typeof o2.length === "number") return {
        next: function() {
          if (o2 && i2 >= o2.length) o2 = void 0;
          return { value: o2 && o2[i2++], done: !o2 };
        }
      };
      throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.bufferTime = void 0;
    var Subscription_1 = require_Subscription();
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    var arrRemove_1 = require_arrRemove();
    var async_1 = require_async9();
    var args_1 = require_args();
    var executeSchedule_1 = require_executeSchedule();
    function bufferTime(bufferTimeSpan) {
      var _a, _b;
      var otherArgs = [];
      for (var _i = 1; _i < arguments.length; _i++) {
        otherArgs[_i - 1] = arguments[_i];
      }
      var scheduler3 = (_a = args_1.popScheduler(otherArgs)) !== null && _a !== void 0 ? _a : async_1.asyncScheduler;
      var bufferCreationInterval = (_b = otherArgs[0]) !== null && _b !== void 0 ? _b : null;
      var maxBufferSize = otherArgs[1] || Infinity;
      return lift_1.operate(function(source, subscriber) {
        var bufferRecords = [];
        var restartOnEmit = false;
        var emit = function(record) {
          var buffer3 = record.buffer, subs = record.subs;
          subs.unsubscribe();
          arrRemove_1.arrRemove(bufferRecords, record);
          subscriber.next(buffer3);
          restartOnEmit && startBuffer();
        };
        var startBuffer = function() {
          if (bufferRecords) {
            var subs = new Subscription_1.Subscription();
            subscriber.add(subs);
            var buffer3 = [];
            var record_1 = {
              buffer: buffer3,
              subs
            };
            bufferRecords.push(record_1);
            executeSchedule_1.executeSchedule(subs, scheduler3, function() {
              return emit(record_1);
            }, bufferTimeSpan);
          }
        };
        if (bufferCreationInterval !== null && bufferCreationInterval >= 0) {
          executeSchedule_1.executeSchedule(subscriber, scheduler3, startBuffer, bufferCreationInterval, true);
        } else {
          restartOnEmit = true;
        }
        startBuffer();
        var bufferTimeSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          var e_1, _a2;
          var recordsCopy = bufferRecords.slice();
          try {
            for (var recordsCopy_1 = __values2(recordsCopy), recordsCopy_1_1 = recordsCopy_1.next(); !recordsCopy_1_1.done; recordsCopy_1_1 = recordsCopy_1.next()) {
              var record = recordsCopy_1_1.value;
              var buffer3 = record.buffer;
              buffer3.push(value);
              maxBufferSize <= buffer3.length && emit(record);
            }
          } catch (e_1_1) {
            e_1 = { error: e_1_1 };
          } finally {
            try {
              if (recordsCopy_1_1 && !recordsCopy_1_1.done && (_a2 = recordsCopy_1.return)) _a2.call(recordsCopy_1);
            } finally {
              if (e_1) throw e_1.error;
            }
          }
        }, function() {
          while (bufferRecords === null || bufferRecords === void 0 ? void 0 : bufferRecords.length) {
            subscriber.next(bufferRecords.shift().buffer);
          }
          bufferTimeSubscriber === null || bufferTimeSubscriber === void 0 ? void 0 : bufferTimeSubscriber.unsubscribe();
          subscriber.complete();
          subscriber.unsubscribe();
        }, void 0, function() {
          return bufferRecords = null;
        });
        source.subscribe(bufferTimeSubscriber);
      });
    }
    exports2.bufferTime = bufferTime;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/bufferToggle.js
var require_bufferToggle = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/bufferToggle.js"(exports2) {
    "use strict";
    var __values2 = exports2 && exports2.__values || function(o2) {
      var s = typeof Symbol === "function" && Symbol.iterator, m = s && o2[s], i2 = 0;
      if (m) return m.call(o2);
      if (o2 && typeof o2.length === "number") return {
        next: function() {
          if (o2 && i2 >= o2.length) o2 = void 0;
          return { value: o2 && o2[i2++], done: !o2 };
        }
      };
      throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.bufferToggle = void 0;
    var Subscription_1 = require_Subscription();
    var lift_1 = require_lift();
    var innerFrom_1 = require_innerFrom();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    var noop_1 = require_noop3();
    var arrRemove_1 = require_arrRemove();
    function bufferToggle(openings, closingSelector) {
      return lift_1.operate(function(source, subscriber) {
        var buffers = [];
        innerFrom_1.innerFrom(openings).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(openValue) {
          var buffer3 = [];
          buffers.push(buffer3);
          var closingSubscription = new Subscription_1.Subscription();
          var emitBuffer = function() {
            arrRemove_1.arrRemove(buffers, buffer3);
            subscriber.next(buffer3);
            closingSubscription.unsubscribe();
          };
          closingSubscription.add(innerFrom_1.innerFrom(closingSelector(openValue)).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, emitBuffer, noop_1.noop)));
        }, noop_1.noop));
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          var e_1, _a;
          try {
            for (var buffers_1 = __values2(buffers), buffers_1_1 = buffers_1.next(); !buffers_1_1.done; buffers_1_1 = buffers_1.next()) {
              var buffer3 = buffers_1_1.value;
              buffer3.push(value);
            }
          } catch (e_1_1) {
            e_1 = { error: e_1_1 };
          } finally {
            try {
              if (buffers_1_1 && !buffers_1_1.done && (_a = buffers_1.return)) _a.call(buffers_1);
            } finally {
              if (e_1) throw e_1.error;
            }
          }
        }, function() {
          while (buffers.length > 0) {
            subscriber.next(buffers.shift());
          }
          subscriber.complete();
        }));
      });
    }
    exports2.bufferToggle = bufferToggle;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/bufferWhen.js
var require_bufferWhen = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/bufferWhen.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.bufferWhen = void 0;
    var lift_1 = require_lift();
    var noop_1 = require_noop3();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    var innerFrom_1 = require_innerFrom();
    function bufferWhen(closingSelector) {
      return lift_1.operate(function(source, subscriber) {
        var buffer3 = null;
        var closingSubscriber = null;
        var openBuffer = function() {
          closingSubscriber === null || closingSubscriber === void 0 ? void 0 : closingSubscriber.unsubscribe();
          var b = buffer3;
          buffer3 = [];
          b && subscriber.next(b);
          innerFrom_1.innerFrom(closingSelector()).subscribe(closingSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber, openBuffer, noop_1.noop));
        };
        openBuffer();
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          return buffer3 === null || buffer3 === void 0 ? void 0 : buffer3.push(value);
        }, function() {
          buffer3 && subscriber.next(buffer3);
          subscriber.complete();
        }, void 0, function() {
          return buffer3 = closingSubscriber = null;
        }));
      });
    }
    exports2.bufferWhen = bufferWhen;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/catchError.js
var require_catchError = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/catchError.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.catchError = void 0;
    var innerFrom_1 = require_innerFrom();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    var lift_1 = require_lift();
    function catchError(selector) {
      return lift_1.operate(function(source, subscriber) {
        var innerSub = null;
        var syncUnsub = false;
        var handledResult;
        innerSub = source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, void 0, void 0, function(err) {
          handledResult = innerFrom_1.innerFrom(selector(err, catchError(selector)(source)));
          if (innerSub) {
            innerSub.unsubscribe();
            innerSub = null;
            handledResult.subscribe(subscriber);
          } else {
            syncUnsub = true;
          }
        }));
        if (syncUnsub) {
          innerSub.unsubscribe();
          innerSub = null;
          handledResult.subscribe(subscriber);
        }
      });
    }
    exports2.catchError = catchError;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/scanInternals.js
var require_scanInternals = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/scanInternals.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.scanInternals = void 0;
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    function scanInternals(accumulator, seed, hasSeed, emitOnNext, emitBeforeComplete) {
      return function(source, subscriber) {
        var hasState = hasSeed;
        var state = seed;
        var index = 0;
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          var i2 = index++;
          state = hasState ? accumulator(state, value, i2) : (hasState = true, value);
          emitOnNext && subscriber.next(state);
        }, emitBeforeComplete && (function() {
          hasState && subscriber.next(state);
          subscriber.complete();
        })));
      };
    }
    exports2.scanInternals = scanInternals;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/reduce.js
var require_reduce2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/reduce.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.reduce = void 0;
    var scanInternals_1 = require_scanInternals();
    var lift_1 = require_lift();
    function reduce4(accumulator, seed) {
      return lift_1.operate(scanInternals_1.scanInternals(accumulator, seed, arguments.length >= 2, false, true));
    }
    exports2.reduce = reduce4;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/toArray.js
var require_toArray3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/toArray.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.toArray = void 0;
    var reduce_1 = require_reduce2();
    var lift_1 = require_lift();
    var arrReducer = function(arr, value) {
      return arr.push(value), arr;
    };
    function toArray2() {
      return lift_1.operate(function(source, subscriber) {
        reduce_1.reduce(arrReducer, [])(source).subscribe(subscriber);
      });
    }
    exports2.toArray = toArray2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/joinAllInternals.js
var require_joinAllInternals = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/joinAllInternals.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.joinAllInternals = void 0;
    var identity_1 = require_identity5();
    var mapOneOrManyArgs_1 = require_mapOneOrManyArgs();
    var pipe_1 = require_pipe2();
    var mergeMap_1 = require_mergeMap();
    var toArray_12 = require_toArray3();
    function joinAllInternals(joinFn, project) {
      return pipe_1.pipe(toArray_12.toArray(), mergeMap_1.mergeMap(function(sources) {
        return joinFn(sources);
      }), project ? mapOneOrManyArgs_1.mapOneOrManyArgs(project) : identity_1.identity);
    }
    exports2.joinAllInternals = joinAllInternals;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/combineLatestAll.js
var require_combineLatestAll = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/combineLatestAll.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.combineLatestAll = void 0;
    var combineLatest_1 = require_combineLatest();
    var joinAllInternals_1 = require_joinAllInternals();
    function combineLatestAll(project) {
      return joinAllInternals_1.joinAllInternals(combineLatest_1.combineLatest, project);
    }
    exports2.combineLatestAll = combineLatestAll;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/combineAll.js
var require_combineAll = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/combineAll.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.combineAll = void 0;
    var combineLatestAll_1 = require_combineLatestAll();
    exports2.combineAll = combineLatestAll_1.combineLatestAll;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/combineLatest.js
var require_combineLatest2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/combineLatest.js"(exports2) {
    "use strict";
    var __read2 = exports2 && exports2.__read || function(o2, n2) {
      var m = typeof Symbol === "function" && o2[Symbol.iterator];
      if (!m) return o2;
      var i2 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i2.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i2["return"])) m.call(i2);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i2 = 0, il = from5.length, j2 = to.length; i2 < il; i2++, j2++)
        to[j2] = from5[i2];
      return to;
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.combineLatest = void 0;
    var combineLatest_1 = require_combineLatest();
    var lift_1 = require_lift();
    var argsOrArgArray_1 = require_argsOrArgArray();
    var mapOneOrManyArgs_1 = require_mapOneOrManyArgs();
    var pipe_1 = require_pipe2();
    var args_1 = require_args();
    function combineLatest5() {
      var args = [];
      for (var _i = 0; _i < arguments.length; _i++) {
        args[_i] = arguments[_i];
      }
      var resultSelector = args_1.popResultSelector(args);
      return resultSelector ? pipe_1.pipe(combineLatest5.apply(void 0, __spreadArray2([], __read2(args))), mapOneOrManyArgs_1.mapOneOrManyArgs(resultSelector)) : lift_1.operate(function(source, subscriber) {
        combineLatest_1.combineLatestInit(__spreadArray2([source], __read2(argsOrArgArray_1.argsOrArgArray(args))))(subscriber);
      });
    }
    exports2.combineLatest = combineLatest5;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/combineLatestWith.js
var require_combineLatestWith = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/combineLatestWith.js"(exports2) {
    "use strict";
    var __read2 = exports2 && exports2.__read || function(o2, n2) {
      var m = typeof Symbol === "function" && o2[Symbol.iterator];
      if (!m) return o2;
      var i2 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i2.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i2["return"])) m.call(i2);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i2 = 0, il = from5.length, j2 = to.length; i2 < il; i2++, j2++)
        to[j2] = from5[i2];
      return to;
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.combineLatestWith = void 0;
    var combineLatest_1 = require_combineLatest2();
    function combineLatestWith() {
      var otherSources = [];
      for (var _i = 0; _i < arguments.length; _i++) {
        otherSources[_i] = arguments[_i];
      }
      return combineLatest_1.combineLatest.apply(void 0, __spreadArray2([], __read2(otherSources)));
    }
    exports2.combineLatestWith = combineLatestWith;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/concatMap.js
var require_concatMap = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/concatMap.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.concatMap = void 0;
    var mergeMap_1 = require_mergeMap();
    var isFunction_1 = require_isFunction3();
    function concatMap(project, resultSelector) {
      return isFunction_1.isFunction(resultSelector) ? mergeMap_1.mergeMap(project, resultSelector, 1) : mergeMap_1.mergeMap(project, 1);
    }
    exports2.concatMap = concatMap;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/concatMapTo.js
var require_concatMapTo = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/concatMapTo.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.concatMapTo = void 0;
    var concatMap_1 = require_concatMap();
    var isFunction_1 = require_isFunction3();
    function concatMapTo(innerObservable, resultSelector) {
      return isFunction_1.isFunction(resultSelector) ? concatMap_1.concatMap(function() {
        return innerObservable;
      }, resultSelector) : concatMap_1.concatMap(function() {
        return innerObservable;
      });
    }
    exports2.concatMapTo = concatMapTo;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/concat.js
var require_concat3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/concat.js"(exports2) {
    "use strict";
    var __read2 = exports2 && exports2.__read || function(o2, n2) {
      var m = typeof Symbol === "function" && o2[Symbol.iterator];
      if (!m) return o2;
      var i2 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i2.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i2["return"])) m.call(i2);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i2 = 0, il = from5.length, j2 = to.length; i2 < il; i2++, j2++)
        to[j2] = from5[i2];
      return to;
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.concat = void 0;
    var lift_1 = require_lift();
    var concatAll_1 = require_concatAll();
    var args_1 = require_args();
    var from_1 = require_from();
    function concat() {
      var args = [];
      for (var _i = 0; _i < arguments.length; _i++) {
        args[_i] = arguments[_i];
      }
      var scheduler3 = args_1.popScheduler(args);
      return lift_1.operate(function(source, subscriber) {
        concatAll_1.concatAll()(from_1.from(__spreadArray2([source], __read2(args)), scheduler3)).subscribe(subscriber);
      });
    }
    exports2.concat = concat;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/concatWith.js
var require_concatWith = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/concatWith.js"(exports2) {
    "use strict";
    var __read2 = exports2 && exports2.__read || function(o2, n2) {
      var m = typeof Symbol === "function" && o2[Symbol.iterator];
      if (!m) return o2;
      var i2 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i2.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i2["return"])) m.call(i2);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i2 = 0, il = from5.length, j2 = to.length; i2 < il; i2++, j2++)
        to[j2] = from5[i2];
      return to;
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.concatWith = void 0;
    var concat_1 = require_concat3();
    function concatWith() {
      var otherSources = [];
      for (var _i = 0; _i < arguments.length; _i++) {
        otherSources[_i] = arguments[_i];
      }
      return concat_1.concat.apply(void 0, __spreadArray2([], __read2(otherSources)));
    }
    exports2.concatWith = concatWith;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/fromSubscribable.js
var require_fromSubscribable = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/observable/fromSubscribable.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.fromSubscribable = void 0;
    var Observable_1 = require_Observable();
    function fromSubscribable(subscribable) {
      return new Observable_1.Observable(function(subscriber) {
        return subscribable.subscribe(subscriber);
      });
    }
    exports2.fromSubscribable = fromSubscribable;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/connect.js
var require_connect2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/connect.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.connect = void 0;
    var Subject_1 = require_Subject();
    var innerFrom_1 = require_innerFrom();
    var lift_1 = require_lift();
    var fromSubscribable_1 = require_fromSubscribable();
    var DEFAULT_CONFIG = {
      connector: function() {
        return new Subject_1.Subject();
      }
    };
    function connect(selector, config) {
      if (config === void 0) {
        config = DEFAULT_CONFIG;
      }
      var connector = config.connector;
      return lift_1.operate(function(source, subscriber) {
        var subject = connector();
        innerFrom_1.innerFrom(selector(fromSubscribable_1.fromSubscribable(subject))).subscribe(subscriber);
        subscriber.add(source.subscribe(subject));
      });
    }
    exports2.connect = connect;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/count.js
var require_count = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/count.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.count = void 0;
    var reduce_1 = require_reduce2();
    function count2(predicate) {
      return reduce_1.reduce(function(total, value, i2) {
        return !predicate || predicate(value, i2) ? total + 1 : total;
      }, 0);
    }
    exports2.count = count2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/debounce.js
var require_debounce3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/debounce.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.debounce = void 0;
    var lift_1 = require_lift();
    var noop_1 = require_noop3();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    var innerFrom_1 = require_innerFrom();
    function debounce(durationSelector) {
      return lift_1.operate(function(source, subscriber) {
        var hasValue = false;
        var lastValue = null;
        var durationSubscriber = null;
        var emit = function() {
          durationSubscriber === null || durationSubscriber === void 0 ? void 0 : durationSubscriber.unsubscribe();
          durationSubscriber = null;
          if (hasValue) {
            hasValue = false;
            var value = lastValue;
            lastValue = null;
            subscriber.next(value);
          }
        };
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          durationSubscriber === null || durationSubscriber === void 0 ? void 0 : durationSubscriber.unsubscribe();
          hasValue = true;
          lastValue = value;
          durationSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber, emit, noop_1.noop);
          innerFrom_1.innerFrom(durationSelector(value)).subscribe(durationSubscriber);
        }, function() {
          emit();
          subscriber.complete();
        }, void 0, function() {
          lastValue = durationSubscriber = null;
        }));
      });
    }
    exports2.debounce = debounce;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/debounceTime.js
var require_debounceTime = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/debounceTime.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.debounceTime = void 0;
    var async_1 = require_async9();
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    function debounceTime(dueTime, scheduler3) {
      if (scheduler3 === void 0) {
        scheduler3 = async_1.asyncScheduler;
      }
      return lift_1.operate(function(source, subscriber) {
        var activeTask = null;
        var lastValue = null;
        var lastTime = null;
        var emit = function() {
          if (activeTask) {
            activeTask.unsubscribe();
            activeTask = null;
            var value = lastValue;
            lastValue = null;
            subscriber.next(value);
          }
        };
        function emitWhenIdle() {
          var targetTime = lastTime + dueTime;
          var now = scheduler3.now();
          if (now < targetTime) {
            activeTask = this.schedule(void 0, targetTime - now);
            subscriber.add(activeTask);
            return;
          }
          emit();
        }
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          lastValue = value;
          lastTime = scheduler3.now();
          if (!activeTask) {
            activeTask = scheduler3.schedule(emitWhenIdle, dueTime);
            subscriber.add(activeTask);
          }
        }, function() {
          emit();
          subscriber.complete();
        }, void 0, function() {
          lastValue = activeTask = null;
        }));
      });
    }
    exports2.debounceTime = debounceTime;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/defaultIfEmpty.js
var require_defaultIfEmpty = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/defaultIfEmpty.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.defaultIfEmpty = void 0;
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    function defaultIfEmpty(defaultValue) {
      return lift_1.operate(function(source, subscriber) {
        var hasValue = false;
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          hasValue = true;
          subscriber.next(value);
        }, function() {
          if (!hasValue) {
            subscriber.next(defaultValue);
          }
          subscriber.complete();
        }));
      });
    }
    exports2.defaultIfEmpty = defaultIfEmpty;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/take.js
var require_take3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/take.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.take = void 0;
    var empty_1 = require_empty3();
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    function take10(count2) {
      return count2 <= 0 ? function() {
        return empty_1.EMPTY;
      } : lift_1.operate(function(source, subscriber) {
        var seen = 0;
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          if (++seen <= count2) {
            subscriber.next(value);
            if (count2 <= seen) {
              subscriber.complete();
            }
          }
        }));
      });
    }
    exports2.take = take10;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/ignoreElements.js
var require_ignoreElements = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/ignoreElements.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.ignoreElements = void 0;
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    var noop_1 = require_noop3();
    function ignoreElements() {
      return lift_1.operate(function(source, subscriber) {
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, noop_1.noop));
      });
    }
    exports2.ignoreElements = ignoreElements;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/mapTo.js
var require_mapTo = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/mapTo.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.mapTo = void 0;
    var map_1 = require_map4();
    function mapTo3(value) {
      return map_1.map(function() {
        return value;
      });
    }
    exports2.mapTo = mapTo3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/delayWhen.js
var require_delayWhen = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/delayWhen.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.delayWhen = void 0;
    var concat_1 = require_concat2();
    var take_1 = require_take3();
    var ignoreElements_1 = require_ignoreElements();
    var mapTo_1 = require_mapTo();
    var mergeMap_1 = require_mergeMap();
    var innerFrom_1 = require_innerFrom();
    function delayWhen(delayDurationSelector, subscriptionDelay) {
      if (subscriptionDelay) {
        return function(source) {
          return concat_1.concat(subscriptionDelay.pipe(take_1.take(1), ignoreElements_1.ignoreElements()), source.pipe(delayWhen(delayDurationSelector)));
        };
      }
      return mergeMap_1.mergeMap(function(value, index) {
        return innerFrom_1.innerFrom(delayDurationSelector(value, index)).pipe(take_1.take(1), mapTo_1.mapTo(value));
      });
    }
    exports2.delayWhen = delayWhen;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/delay.js
var require_delay2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/delay.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.delay = void 0;
    var async_1 = require_async9();
    var delayWhen_1 = require_delayWhen();
    var timer_1 = require_timer2();
    function delay(due, scheduler3) {
      if (scheduler3 === void 0) {
        scheduler3 = async_1.asyncScheduler;
      }
      var duration = timer_1.timer(due, scheduler3);
      return delayWhen_1.delayWhen(function() {
        return duration;
      });
    }
    exports2.delay = delay;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/dematerialize.js
var require_dematerialize = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/dematerialize.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.dematerialize = void 0;
    var Notification_1 = require_Notification();
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    function dematerialize() {
      return lift_1.operate(function(source, subscriber) {
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(notification) {
          return Notification_1.observeNotification(notification, subscriber);
        }));
      });
    }
    exports2.dematerialize = dematerialize;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/distinct.js
var require_distinct = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/distinct.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.distinct = void 0;
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    var noop_1 = require_noop3();
    var innerFrom_1 = require_innerFrom();
    function distinct(keySelector, flushes) {
      return lift_1.operate(function(source, subscriber) {
        var distinctKeys = /* @__PURE__ */ new Set();
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          var key = keySelector ? keySelector(value) : value;
          if (!distinctKeys.has(key)) {
            distinctKeys.add(key);
            subscriber.next(value);
          }
        }));
        flushes && innerFrom_1.innerFrom(flushes).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function() {
          return distinctKeys.clear();
        }, noop_1.noop));
      });
    }
    exports2.distinct = distinct;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/distinctUntilChanged.js
var require_distinctUntilChanged = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/distinctUntilChanged.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.distinctUntilChanged = void 0;
    var identity_1 = require_identity5();
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    function distinctUntilChanged(comparator, keySelector) {
      if (keySelector === void 0) {
        keySelector = identity_1.identity;
      }
      comparator = comparator !== null && comparator !== void 0 ? comparator : defaultCompare;
      return lift_1.operate(function(source, subscriber) {
        var previousKey;
        var first = true;
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          var currentKey = keySelector(value);
          if (first || !comparator(previousKey, currentKey)) {
            first = false;
            previousKey = currentKey;
            subscriber.next(value);
          }
        }));
      });
    }
    exports2.distinctUntilChanged = distinctUntilChanged;
    function defaultCompare(a2, b) {
      return a2 === b;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/distinctUntilKeyChanged.js
var require_distinctUntilKeyChanged = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/distinctUntilKeyChanged.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.distinctUntilKeyChanged = void 0;
    var distinctUntilChanged_1 = require_distinctUntilChanged();
    function distinctUntilKeyChanged(key, compare2) {
      return distinctUntilChanged_1.distinctUntilChanged(function(x, y) {
        return compare2 ? compare2(x[key], y[key]) : x[key] === y[key];
      });
    }
    exports2.distinctUntilKeyChanged = distinctUntilKeyChanged;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/throwIfEmpty.js
var require_throwIfEmpty = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/throwIfEmpty.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.throwIfEmpty = void 0;
    var EmptyError_1 = require_EmptyError();
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    function throwIfEmpty(errorFactory) {
      if (errorFactory === void 0) {
        errorFactory = defaultErrorFactory;
      }
      return lift_1.operate(function(source, subscriber) {
        var hasValue = false;
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          hasValue = true;
          subscriber.next(value);
        }, function() {
          return hasValue ? subscriber.complete() : subscriber.error(errorFactory());
        }));
      });
    }
    exports2.throwIfEmpty = throwIfEmpty;
    function defaultErrorFactory() {
      return new EmptyError_1.EmptyError();
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/elementAt.js
var require_elementAt = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/elementAt.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.elementAt = void 0;
    var ArgumentOutOfRangeError_1 = require_ArgumentOutOfRangeError();
    var filter_1 = require_filter3();
    var throwIfEmpty_1 = require_throwIfEmpty();
    var defaultIfEmpty_1 = require_defaultIfEmpty();
    var take_1 = require_take3();
    function elementAt(index, defaultValue) {
      if (index < 0) {
        throw new ArgumentOutOfRangeError_1.ArgumentOutOfRangeError();
      }
      var hasDefaultValue = arguments.length >= 2;
      return function(source) {
        return source.pipe(filter_1.filter(function(v, i2) {
          return i2 === index;
        }), take_1.take(1), hasDefaultValue ? defaultIfEmpty_1.defaultIfEmpty(defaultValue) : throwIfEmpty_1.throwIfEmpty(function() {
          return new ArgumentOutOfRangeError_1.ArgumentOutOfRangeError();
        }));
      };
    }
    exports2.elementAt = elementAt;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/endWith.js
var require_endWith = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/endWith.js"(exports2) {
    "use strict";
    var __read2 = exports2 && exports2.__read || function(o2, n2) {
      var m = typeof Symbol === "function" && o2[Symbol.iterator];
      if (!m) return o2;
      var i2 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i2.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i2["return"])) m.call(i2);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i2 = 0, il = from5.length, j2 = to.length; i2 < il; i2++, j2++)
        to[j2] = from5[i2];
      return to;
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.endWith = void 0;
    var concat_1 = require_concat2();
    var of_1 = require_of();
    function endWith() {
      var values = [];
      for (var _i = 0; _i < arguments.length; _i++) {
        values[_i] = arguments[_i];
      }
      return function(source) {
        return concat_1.concat(source, of_1.of.apply(void 0, __spreadArray2([], __read2(values))));
      };
    }
    exports2.endWith = endWith;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/every.js
var require_every2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/every.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.every = void 0;
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    function every(predicate, thisArg) {
      return lift_1.operate(function(source, subscriber) {
        var index = 0;
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          if (!predicate.call(thisArg, value, index++, source)) {
            subscriber.next(false);
            subscriber.complete();
          }
        }, function() {
          subscriber.next(true);
          subscriber.complete();
        }));
      });
    }
    exports2.every = every;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/exhaustMap.js
var require_exhaustMap = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/exhaustMap.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.exhaustMap = void 0;
    var map_1 = require_map4();
    var innerFrom_1 = require_innerFrom();
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    function exhaustMap(project, resultSelector) {
      if (resultSelector) {
        return function(source) {
          return source.pipe(exhaustMap(function(a2, i2) {
            return innerFrom_1.innerFrom(project(a2, i2)).pipe(map_1.map(function(b, ii) {
              return resultSelector(a2, b, i2, ii);
            }));
          }));
        };
      }
      return lift_1.operate(function(source, subscriber) {
        var index = 0;
        var innerSub = null;
        var isComplete = false;
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(outerValue) {
          if (!innerSub) {
            innerSub = OperatorSubscriber_1.createOperatorSubscriber(subscriber, void 0, function() {
              innerSub = null;
              isComplete && subscriber.complete();
            });
            innerFrom_1.innerFrom(project(outerValue, index++)).subscribe(innerSub);
          }
        }, function() {
          isComplete = true;
          !innerSub && subscriber.complete();
        }));
      });
    }
    exports2.exhaustMap = exhaustMap;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/exhaustAll.js
var require_exhaustAll = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/exhaustAll.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.exhaustAll = void 0;
    var exhaustMap_1 = require_exhaustMap();
    var identity_1 = require_identity5();
    function exhaustAll() {
      return exhaustMap_1.exhaustMap(identity_1.identity);
    }
    exports2.exhaustAll = exhaustAll;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/exhaust.js
var require_exhaust = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/exhaust.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.exhaust = void 0;
    var exhaustAll_1 = require_exhaustAll();
    exports2.exhaust = exhaustAll_1.exhaustAll;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/expand.js
var require_expand2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/expand.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.expand = void 0;
    var lift_1 = require_lift();
    var mergeInternals_1 = require_mergeInternals();
    function expand(project, concurrent, scheduler3) {
      if (concurrent === void 0) {
        concurrent = Infinity;
      }
      concurrent = (concurrent || 0) < 1 ? Infinity : concurrent;
      return lift_1.operate(function(source, subscriber) {
        return mergeInternals_1.mergeInternals(source, subscriber, project, concurrent, void 0, true, scheduler3);
      });
    }
    exports2.expand = expand;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/finalize.js
var require_finalize = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/finalize.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.finalize = void 0;
    var lift_1 = require_lift();
    function finalize(callback2) {
      return lift_1.operate(function(source, subscriber) {
        try {
          source.subscribe(subscriber);
        } finally {
          subscriber.add(callback2);
        }
      });
    }
    exports2.finalize = finalize;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/find.js
var require_find3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/find.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.createFind = exports2.find = void 0;
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    function find(predicate, thisArg) {
      return lift_1.operate(createFind(predicate, thisArg, "value"));
    }
    exports2.find = find;
    function createFind(predicate, thisArg, emit) {
      var findIndex = emit === "index";
      return function(source, subscriber) {
        var index = 0;
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          var i2 = index++;
          if (predicate.call(thisArg, value, i2, source)) {
            subscriber.next(findIndex ? i2 : value);
            subscriber.complete();
          }
        }, function() {
          subscriber.next(findIndex ? -1 : void 0);
          subscriber.complete();
        }));
      };
    }
    exports2.createFind = createFind;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/findIndex.js
var require_findIndex2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/findIndex.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.findIndex = void 0;
    var lift_1 = require_lift();
    var find_1 = require_find3();
    function findIndex(predicate, thisArg) {
      return lift_1.operate(find_1.createFind(predicate, thisArg, "index"));
    }
    exports2.findIndex = findIndex;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/first.js
var require_first = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/first.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.first = void 0;
    var EmptyError_1 = require_EmptyError();
    var filter_1 = require_filter3();
    var take_1 = require_take3();
    var defaultIfEmpty_1 = require_defaultIfEmpty();
    var throwIfEmpty_1 = require_throwIfEmpty();
    var identity_1 = require_identity5();
    function first(predicate, defaultValue) {
      var hasDefaultValue = arguments.length >= 2;
      return function(source) {
        return source.pipe(predicate ? filter_1.filter(function(v, i2) {
          return predicate(v, i2, source);
        }) : identity_1.identity, take_1.take(1), hasDefaultValue ? defaultIfEmpty_1.defaultIfEmpty(defaultValue) : throwIfEmpty_1.throwIfEmpty(function() {
          return new EmptyError_1.EmptyError();
        }));
      };
    }
    exports2.first = first;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/groupBy.js
var require_groupBy3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/groupBy.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.groupBy = void 0;
    var Observable_1 = require_Observable();
    var innerFrom_1 = require_innerFrom();
    var Subject_1 = require_Subject();
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    function groupBy4(keySelector, elementOrOptions, duration, connector) {
      return lift_1.operate(function(source, subscriber) {
        var element;
        if (!elementOrOptions || typeof elementOrOptions === "function") {
          element = elementOrOptions;
        } else {
          duration = elementOrOptions.duration, element = elementOrOptions.element, connector = elementOrOptions.connector;
        }
        var groups = /* @__PURE__ */ new Map();
        var notify = function(cb) {
          groups.forEach(cb);
          cb(subscriber);
        };
        var handleError = function(err) {
          return notify(function(consumer) {
            return consumer.error(err);
          });
        };
        var activeGroups = 0;
        var teardownAttempted = false;
        var groupBySourceSubscriber = new OperatorSubscriber_1.OperatorSubscriber(subscriber, function(value) {
          try {
            var key_1 = keySelector(value);
            var group_1 = groups.get(key_1);
            if (!group_1) {
              groups.set(key_1, group_1 = connector ? connector() : new Subject_1.Subject());
              var grouped = createGroupedObservable(key_1, group_1);
              subscriber.next(grouped);
              if (duration) {
                var durationSubscriber_1 = OperatorSubscriber_1.createOperatorSubscriber(group_1, function() {
                  group_1.complete();
                  durationSubscriber_1 === null || durationSubscriber_1 === void 0 ? void 0 : durationSubscriber_1.unsubscribe();
                }, void 0, void 0, function() {
                  return groups.delete(key_1);
                });
                groupBySourceSubscriber.add(innerFrom_1.innerFrom(duration(grouped)).subscribe(durationSubscriber_1));
              }
            }
            group_1.next(element ? element(value) : value);
          } catch (err) {
            handleError(err);
          }
        }, function() {
          return notify(function(consumer) {
            return consumer.complete();
          });
        }, handleError, function() {
          return groups.clear();
        }, function() {
          teardownAttempted = true;
          return activeGroups === 0;
        });
        source.subscribe(groupBySourceSubscriber);
        function createGroupedObservable(key, groupSubject) {
          var result2 = new Observable_1.Observable(function(groupSubscriber) {
            activeGroups++;
            var innerSub = groupSubject.subscribe(groupSubscriber);
            return function() {
              innerSub.unsubscribe();
              --activeGroups === 0 && teardownAttempted && groupBySourceSubscriber.unsubscribe();
            };
          });
          result2.key = key;
          return result2;
        }
      });
    }
    exports2.groupBy = groupBy4;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/isEmpty.js
var require_isEmpty2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/isEmpty.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.isEmpty = void 0;
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    function isEmpty4() {
      return lift_1.operate(function(source, subscriber) {
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function() {
          subscriber.next(false);
          subscriber.complete();
        }, function() {
          subscriber.next(true);
          subscriber.complete();
        }));
      });
    }
    exports2.isEmpty = isEmpty4;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/takeLast.js
var require_takeLast = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/takeLast.js"(exports2) {
    "use strict";
    var __values2 = exports2 && exports2.__values || function(o2) {
      var s = typeof Symbol === "function" && Symbol.iterator, m = s && o2[s], i2 = 0;
      if (m) return m.call(o2);
      if (o2 && typeof o2.length === "number") return {
        next: function() {
          if (o2 && i2 >= o2.length) o2 = void 0;
          return { value: o2 && o2[i2++], done: !o2 };
        }
      };
      throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.takeLast = void 0;
    var empty_1 = require_empty3();
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    function takeLast(count2) {
      return count2 <= 0 ? function() {
        return empty_1.EMPTY;
      } : lift_1.operate(function(source, subscriber) {
        var buffer3 = [];
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          buffer3.push(value);
          count2 < buffer3.length && buffer3.shift();
        }, function() {
          var e_1, _a;
          try {
            for (var buffer_1 = __values2(buffer3), buffer_1_1 = buffer_1.next(); !buffer_1_1.done; buffer_1_1 = buffer_1.next()) {
              var value = buffer_1_1.value;
              subscriber.next(value);
            }
          } catch (e_1_1) {
            e_1 = { error: e_1_1 };
          } finally {
            try {
              if (buffer_1_1 && !buffer_1_1.done && (_a = buffer_1.return)) _a.call(buffer_1);
            } finally {
              if (e_1) throw e_1.error;
            }
          }
          subscriber.complete();
        }, void 0, function() {
          buffer3 = null;
        }));
      });
    }
    exports2.takeLast = takeLast;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/last.js
var require_last3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/last.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.last = void 0;
    var EmptyError_1 = require_EmptyError();
    var filter_1 = require_filter3();
    var takeLast_1 = require_takeLast();
    var throwIfEmpty_1 = require_throwIfEmpty();
    var defaultIfEmpty_1 = require_defaultIfEmpty();
    var identity_1 = require_identity5();
    function last(predicate, defaultValue) {
      var hasDefaultValue = arguments.length >= 2;
      return function(source) {
        return source.pipe(predicate ? filter_1.filter(function(v, i2) {
          return predicate(v, i2, source);
        }) : identity_1.identity, takeLast_1.takeLast(1), hasDefaultValue ? defaultIfEmpty_1.defaultIfEmpty(defaultValue) : throwIfEmpty_1.throwIfEmpty(function() {
          return new EmptyError_1.EmptyError();
        }));
      };
    }
    exports2.last = last;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/materialize.js
var require_materialize = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/materialize.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.materialize = void 0;
    var Notification_1 = require_Notification();
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    function materialize() {
      return lift_1.operate(function(source, subscriber) {
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          subscriber.next(Notification_1.Notification.createNext(value));
        }, function() {
          subscriber.next(Notification_1.Notification.createComplete());
          subscriber.complete();
        }, function(err) {
          subscriber.next(Notification_1.Notification.createError(err));
          subscriber.complete();
        }));
      });
    }
    exports2.materialize = materialize;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/max.js
var require_max3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/max.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.max = void 0;
    var reduce_1 = require_reduce2();
    var isFunction_1 = require_isFunction3();
    function max3(comparer) {
      return reduce_1.reduce(isFunction_1.isFunction(comparer) ? function(x, y) {
        return comparer(x, y) > 0 ? x : y;
      } : function(x, y) {
        return x > y ? x : y;
      });
    }
    exports2.max = max3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/flatMap.js
var require_flatMap2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/flatMap.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.flatMap = void 0;
    var mergeMap_1 = require_mergeMap();
    exports2.flatMap = mergeMap_1.mergeMap;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/mergeMapTo.js
var require_mergeMapTo = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/mergeMapTo.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.mergeMapTo = void 0;
    var mergeMap_1 = require_mergeMap();
    var isFunction_1 = require_isFunction3();
    function mergeMapTo(innerObservable, resultSelector, concurrent) {
      if (concurrent === void 0) {
        concurrent = Infinity;
      }
      if (isFunction_1.isFunction(resultSelector)) {
        return mergeMap_1.mergeMap(function() {
          return innerObservable;
        }, resultSelector, concurrent);
      }
      if (typeof resultSelector === "number") {
        concurrent = resultSelector;
      }
      return mergeMap_1.mergeMap(function() {
        return innerObservable;
      }, concurrent);
    }
    exports2.mergeMapTo = mergeMapTo;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/mergeScan.js
var require_mergeScan = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/mergeScan.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.mergeScan = void 0;
    var lift_1 = require_lift();
    var mergeInternals_1 = require_mergeInternals();
    function mergeScan(accumulator, seed, concurrent) {
      if (concurrent === void 0) {
        concurrent = Infinity;
      }
      return lift_1.operate(function(source, subscriber) {
        var state = seed;
        return mergeInternals_1.mergeInternals(source, subscriber, function(value, index) {
          return accumulator(state, value, index);
        }, concurrent, function(value) {
          state = value;
        }, false, void 0, function() {
          return state = null;
        });
      });
    }
    exports2.mergeScan = mergeScan;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/merge.js
var require_merge6 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/merge.js"(exports2) {
    "use strict";
    var __read2 = exports2 && exports2.__read || function(o2, n2) {
      var m = typeof Symbol === "function" && o2[Symbol.iterator];
      if (!m) return o2;
      var i2 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i2.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i2["return"])) m.call(i2);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i2 = 0, il = from5.length, j2 = to.length; i2 < il; i2++, j2++)
        to[j2] = from5[i2];
      return to;
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.merge = void 0;
    var lift_1 = require_lift();
    var mergeAll_1 = require_mergeAll();
    var args_1 = require_args();
    var from_1 = require_from();
    function merge7() {
      var args = [];
      for (var _i = 0; _i < arguments.length; _i++) {
        args[_i] = arguments[_i];
      }
      var scheduler3 = args_1.popScheduler(args);
      var concurrent = args_1.popNumber(args, Infinity);
      return lift_1.operate(function(source, subscriber) {
        mergeAll_1.mergeAll(concurrent)(from_1.from(__spreadArray2([source], __read2(args)), scheduler3)).subscribe(subscriber);
      });
    }
    exports2.merge = merge7;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/mergeWith.js
var require_mergeWith2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/mergeWith.js"(exports2) {
    "use strict";
    var __read2 = exports2 && exports2.__read || function(o2, n2) {
      var m = typeof Symbol === "function" && o2[Symbol.iterator];
      if (!m) return o2;
      var i2 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i2.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i2["return"])) m.call(i2);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i2 = 0, il = from5.length, j2 = to.length; i2 < il; i2++, j2++)
        to[j2] = from5[i2];
      return to;
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.mergeWith = void 0;
    var merge_1 = require_merge6();
    function mergeWith() {
      var otherSources = [];
      for (var _i = 0; _i < arguments.length; _i++) {
        otherSources[_i] = arguments[_i];
      }
      return merge_1.merge.apply(void 0, __spreadArray2([], __read2(otherSources)));
    }
    exports2.mergeWith = mergeWith;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/min.js
var require_min3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/min.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.min = void 0;
    var reduce_1 = require_reduce2();
    var isFunction_1 = require_isFunction3();
    function min(comparer) {
      return reduce_1.reduce(isFunction_1.isFunction(comparer) ? function(x, y) {
        return comparer(x, y) < 0 ? x : y;
      } : function(x, y) {
        return x < y ? x : y;
      });
    }
    exports2.min = min;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/multicast.js
var require_multicast = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/multicast.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.multicast = void 0;
    var ConnectableObservable_1 = require_ConnectableObservable();
    var isFunction_1 = require_isFunction3();
    var connect_1 = require_connect2();
    function multicast(subjectOrSubjectFactory, selector) {
      var subjectFactory = isFunction_1.isFunction(subjectOrSubjectFactory) ? subjectOrSubjectFactory : function() {
        return subjectOrSubjectFactory;
      };
      if (isFunction_1.isFunction(selector)) {
        return connect_1.connect(selector, {
          connector: subjectFactory
        });
      }
      return function(source) {
        return new ConnectableObservable_1.ConnectableObservable(source, subjectFactory);
      };
    }
    exports2.multicast = multicast;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/onErrorResumeNextWith.js
var require_onErrorResumeNextWith = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/onErrorResumeNextWith.js"(exports2) {
    "use strict";
    var __read2 = exports2 && exports2.__read || function(o2, n2) {
      var m = typeof Symbol === "function" && o2[Symbol.iterator];
      if (!m) return o2;
      var i2 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i2.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i2["return"])) m.call(i2);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i2 = 0, il = from5.length, j2 = to.length; i2 < il; i2++, j2++)
        to[j2] = from5[i2];
      return to;
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.onErrorResumeNext = exports2.onErrorResumeNextWith = void 0;
    var argsOrArgArray_1 = require_argsOrArgArray();
    var onErrorResumeNext_1 = require_onErrorResumeNext();
    function onErrorResumeNextWith() {
      var sources = [];
      for (var _i = 0; _i < arguments.length; _i++) {
        sources[_i] = arguments[_i];
      }
      var nextSources = argsOrArgArray_1.argsOrArgArray(sources);
      return function(source) {
        return onErrorResumeNext_1.onErrorResumeNext.apply(void 0, __spreadArray2([source], __read2(nextSources)));
      };
    }
    exports2.onErrorResumeNextWith = onErrorResumeNextWith;
    exports2.onErrorResumeNext = onErrorResumeNextWith;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/pairwise.js
var require_pairwise = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/pairwise.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.pairwise = void 0;
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    function pairwise() {
      return lift_1.operate(function(source, subscriber) {
        var prev;
        var hasPrev = false;
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          var p = prev;
          prev = value;
          hasPrev && subscriber.next([p, value]);
          hasPrev = true;
        }));
      });
    }
    exports2.pairwise = pairwise;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/pluck.js
var require_pluck = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/pluck.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.pluck = void 0;
    var map_1 = require_map4();
    function pluck3() {
      var properties = [];
      for (var _i = 0; _i < arguments.length; _i++) {
        properties[_i] = arguments[_i];
      }
      var length = properties.length;
      if (length === 0) {
        throw new Error("list of properties cannot be empty.");
      }
      return map_1.map(function(x) {
        var currentProp = x;
        for (var i2 = 0; i2 < length; i2++) {
          var p = currentProp === null || currentProp === void 0 ? void 0 : currentProp[properties[i2]];
          if (typeof p !== "undefined") {
            currentProp = p;
          } else {
            return void 0;
          }
        }
        return currentProp;
      });
    }
    exports2.pluck = pluck3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/publish.js
var require_publish2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/publish.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.publish = void 0;
    var Subject_1 = require_Subject();
    var multicast_1 = require_multicast();
    var connect_1 = require_connect2();
    function publish3(selector) {
      return selector ? function(source) {
        return connect_1.connect(selector)(source);
      } : function(source) {
        return multicast_1.multicast(new Subject_1.Subject())(source);
      };
    }
    exports2.publish = publish3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/publishBehavior.js
var require_publishBehavior = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/publishBehavior.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.publishBehavior = void 0;
    var BehaviorSubject_1 = require_BehaviorSubject();
    var ConnectableObservable_1 = require_ConnectableObservable();
    function publishBehavior(initialValue) {
      return function(source) {
        var subject = new BehaviorSubject_1.BehaviorSubject(initialValue);
        return new ConnectableObservable_1.ConnectableObservable(source, function() {
          return subject;
        });
      };
    }
    exports2.publishBehavior = publishBehavior;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/publishLast.js
var require_publishLast = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/publishLast.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.publishLast = void 0;
    var AsyncSubject_1 = require_AsyncSubject();
    var ConnectableObservable_1 = require_ConnectableObservable();
    function publishLast() {
      return function(source) {
        var subject = new AsyncSubject_1.AsyncSubject();
        return new ConnectableObservable_1.ConnectableObservable(source, function() {
          return subject;
        });
      };
    }
    exports2.publishLast = publishLast;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/publishReplay.js
var require_publishReplay = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/publishReplay.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.publishReplay = void 0;
    var ReplaySubject_1 = require_ReplaySubject();
    var multicast_1 = require_multicast();
    var isFunction_1 = require_isFunction3();
    function publishReplay(bufferSize, windowTime, selectorOrScheduler, timestampProvider) {
      if (selectorOrScheduler && !isFunction_1.isFunction(selectorOrScheduler)) {
        timestampProvider = selectorOrScheduler;
      }
      var selector = isFunction_1.isFunction(selectorOrScheduler) ? selectorOrScheduler : void 0;
      return function(source) {
        return multicast_1.multicast(new ReplaySubject_1.ReplaySubject(bufferSize, windowTime, timestampProvider), selector)(source);
      };
    }
    exports2.publishReplay = publishReplay;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/raceWith.js
var require_raceWith = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/raceWith.js"(exports2) {
    "use strict";
    var __read2 = exports2 && exports2.__read || function(o2, n2) {
      var m = typeof Symbol === "function" && o2[Symbol.iterator];
      if (!m) return o2;
      var i2 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i2.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i2["return"])) m.call(i2);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i2 = 0, il = from5.length, j2 = to.length; i2 < il; i2++, j2++)
        to[j2] = from5[i2];
      return to;
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.raceWith = void 0;
    var race_1 = require_race();
    var lift_1 = require_lift();
    var identity_1 = require_identity5();
    function raceWith() {
      var otherSources = [];
      for (var _i = 0; _i < arguments.length; _i++) {
        otherSources[_i] = arguments[_i];
      }
      return !otherSources.length ? identity_1.identity : lift_1.operate(function(source, subscriber) {
        race_1.raceInit(__spreadArray2([source], __read2(otherSources)))(subscriber);
      });
    }
    exports2.raceWith = raceWith;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/repeat.js
var require_repeat2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/repeat.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.repeat = void 0;
    var empty_1 = require_empty3();
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    var innerFrom_1 = require_innerFrom();
    var timer_1 = require_timer2();
    function repeat4(countOrConfig) {
      var _a;
      var count2 = Infinity;
      var delay;
      if (countOrConfig != null) {
        if (typeof countOrConfig === "object") {
          _a = countOrConfig.count, count2 = _a === void 0 ? Infinity : _a, delay = countOrConfig.delay;
        } else {
          count2 = countOrConfig;
        }
      }
      return count2 <= 0 ? function() {
        return empty_1.EMPTY;
      } : lift_1.operate(function(source, subscriber) {
        var soFar = 0;
        var sourceSub;
        var resubscribe = function() {
          sourceSub === null || sourceSub === void 0 ? void 0 : sourceSub.unsubscribe();
          sourceSub = null;
          if (delay != null) {
            var notifier = typeof delay === "number" ? timer_1.timer(delay) : innerFrom_1.innerFrom(delay(soFar));
            var notifierSubscriber_1 = OperatorSubscriber_1.createOperatorSubscriber(subscriber, function() {
              notifierSubscriber_1.unsubscribe();
              subscribeToSource();
            });
            notifier.subscribe(notifierSubscriber_1);
          } else {
            subscribeToSource();
          }
        };
        var subscribeToSource = function() {
          var syncUnsub = false;
          sourceSub = source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, void 0, function() {
            if (++soFar < count2) {
              if (sourceSub) {
                resubscribe();
              } else {
                syncUnsub = true;
              }
            } else {
              subscriber.complete();
            }
          }));
          if (syncUnsub) {
            resubscribe();
          }
        };
        subscribeToSource();
      });
    }
    exports2.repeat = repeat4;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/repeatWhen.js
var require_repeatWhen = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/repeatWhen.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.repeatWhen = void 0;
    var innerFrom_1 = require_innerFrom();
    var Subject_1 = require_Subject();
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    function repeatWhen(notifier) {
      return lift_1.operate(function(source, subscriber) {
        var innerSub;
        var syncResub = false;
        var completions$;
        var isNotifierComplete = false;
        var isMainComplete = false;
        var checkComplete = function() {
          return isMainComplete && isNotifierComplete && (subscriber.complete(), true);
        };
        var getCompletionSubject = function() {
          if (!completions$) {
            completions$ = new Subject_1.Subject();
            innerFrom_1.innerFrom(notifier(completions$)).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function() {
              if (innerSub) {
                subscribeForRepeatWhen();
              } else {
                syncResub = true;
              }
            }, function() {
              isNotifierComplete = true;
              checkComplete();
            }));
          }
          return completions$;
        };
        var subscribeForRepeatWhen = function() {
          isMainComplete = false;
          innerSub = source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, void 0, function() {
            isMainComplete = true;
            !checkComplete() && getCompletionSubject().next();
          }));
          if (syncResub) {
            innerSub.unsubscribe();
            innerSub = null;
            syncResub = false;
            subscribeForRepeatWhen();
          }
        };
        subscribeForRepeatWhen();
      });
    }
    exports2.repeatWhen = repeatWhen;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/retry.js
var require_retry6 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/retry.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.retry = void 0;
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    var identity_1 = require_identity5();
    var timer_1 = require_timer2();
    var innerFrom_1 = require_innerFrom();
    function retry5(configOrCount) {
      if (configOrCount === void 0) {
        configOrCount = Infinity;
      }
      var config;
      if (configOrCount && typeof configOrCount === "object") {
        config = configOrCount;
      } else {
        config = {
          count: configOrCount
        };
      }
      var _a = config.count, count2 = _a === void 0 ? Infinity : _a, delay = config.delay, _b = config.resetOnSuccess, resetOnSuccess = _b === void 0 ? false : _b;
      return count2 <= 0 ? identity_1.identity : lift_1.operate(function(source, subscriber) {
        var soFar = 0;
        var innerSub;
        var subscribeForRetry = function() {
          var syncUnsub = false;
          innerSub = source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
            if (resetOnSuccess) {
              soFar = 0;
            }
            subscriber.next(value);
          }, void 0, function(err) {
            if (soFar++ < count2) {
              var resub_1 = function() {
                if (innerSub) {
                  innerSub.unsubscribe();
                  innerSub = null;
                  subscribeForRetry();
                } else {
                  syncUnsub = true;
                }
              };
              if (delay != null) {
                var notifier = typeof delay === "number" ? timer_1.timer(delay) : innerFrom_1.innerFrom(delay(err, soFar));
                var notifierSubscriber_1 = OperatorSubscriber_1.createOperatorSubscriber(subscriber, function() {
                  notifierSubscriber_1.unsubscribe();
                  resub_1();
                }, function() {
                  subscriber.complete();
                });
                notifier.subscribe(notifierSubscriber_1);
              } else {
                resub_1();
              }
            } else {
              subscriber.error(err);
            }
          }));
          if (syncUnsub) {
            innerSub.unsubscribe();
            innerSub = null;
            subscribeForRetry();
          }
        };
        subscribeForRetry();
      });
    }
    exports2.retry = retry5;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/retryWhen.js
var require_retryWhen = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/retryWhen.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.retryWhen = void 0;
    var innerFrom_1 = require_innerFrom();
    var Subject_1 = require_Subject();
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    function retryWhen(notifier) {
      return lift_1.operate(function(source, subscriber) {
        var innerSub;
        var syncResub = false;
        var errors$;
        var subscribeForRetryWhen = function() {
          innerSub = source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, void 0, void 0, function(err) {
            if (!errors$) {
              errors$ = new Subject_1.Subject();
              innerFrom_1.innerFrom(notifier(errors$)).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function() {
                return innerSub ? subscribeForRetryWhen() : syncResub = true;
              }));
            }
            if (errors$) {
              errors$.next(err);
            }
          }));
          if (syncResub) {
            innerSub.unsubscribe();
            innerSub = null;
            syncResub = false;
            subscribeForRetryWhen();
          }
        };
        subscribeForRetryWhen();
      });
    }
    exports2.retryWhen = retryWhen;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/sample.js
var require_sample3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/sample.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.sample = void 0;
    var innerFrom_1 = require_innerFrom();
    var lift_1 = require_lift();
    var noop_1 = require_noop3();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    function sample(notifier) {
      return lift_1.operate(function(source, subscriber) {
        var hasValue = false;
        var lastValue = null;
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          hasValue = true;
          lastValue = value;
        }));
        innerFrom_1.innerFrom(notifier).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function() {
          if (hasValue) {
            hasValue = false;
            var value = lastValue;
            lastValue = null;
            subscriber.next(value);
          }
        }, noop_1.noop));
      });
    }
    exports2.sample = sample;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/sampleTime.js
var require_sampleTime = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/sampleTime.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.sampleTime = void 0;
    var async_1 = require_async9();
    var sample_1 = require_sample3();
    var interval_1 = require_interval();
    function sampleTime(period, scheduler3) {
      if (scheduler3 === void 0) {
        scheduler3 = async_1.asyncScheduler;
      }
      return sample_1.sample(interval_1.interval(period, scheduler3));
    }
    exports2.sampleTime = sampleTime;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/scan.js
var require_scan5 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/scan.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.scan = void 0;
    var lift_1 = require_lift();
    var scanInternals_1 = require_scanInternals();
    function scan3(accumulator, seed) {
      return lift_1.operate(scanInternals_1.scanInternals(accumulator, seed, arguments.length >= 2, true));
    }
    exports2.scan = scan3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/sequenceEqual.js
var require_sequenceEqual = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/sequenceEqual.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.sequenceEqual = void 0;
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    var innerFrom_1 = require_innerFrom();
    function sequenceEqual(compareTo, comparator) {
      if (comparator === void 0) {
        comparator = function(a2, b) {
          return a2 === b;
        };
      }
      return lift_1.operate(function(source, subscriber) {
        var aState = createState();
        var bState = createState();
        var emit = function(isEqual2) {
          subscriber.next(isEqual2);
          subscriber.complete();
        };
        var createSubscriber = function(selfState, otherState) {
          var sequenceEqualSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(a2) {
            var buffer3 = otherState.buffer, complete2 = otherState.complete;
            if (buffer3.length === 0) {
              complete2 ? emit(false) : selfState.buffer.push(a2);
            } else {
              !comparator(a2, buffer3.shift()) && emit(false);
            }
          }, function() {
            selfState.complete = true;
            var complete2 = otherState.complete, buffer3 = otherState.buffer;
            complete2 && emit(buffer3.length === 0);
            sequenceEqualSubscriber === null || sequenceEqualSubscriber === void 0 ? void 0 : sequenceEqualSubscriber.unsubscribe();
          });
          return sequenceEqualSubscriber;
        };
        source.subscribe(createSubscriber(aState, bState));
        innerFrom_1.innerFrom(compareTo).subscribe(createSubscriber(bState, aState));
      });
    }
    exports2.sequenceEqual = sequenceEqual;
    function createState() {
      return {
        buffer: [],
        complete: false
      };
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/share.js
var require_share = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/share.js"(exports2) {
    "use strict";
    var __read2 = exports2 && exports2.__read || function(o2, n2) {
      var m = typeof Symbol === "function" && o2[Symbol.iterator];
      if (!m) return o2;
      var i2 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i2.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i2["return"])) m.call(i2);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i2 = 0, il = from5.length, j2 = to.length; i2 < il; i2++, j2++)
        to[j2] = from5[i2];
      return to;
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.share = void 0;
    var innerFrom_1 = require_innerFrom();
    var Subject_1 = require_Subject();
    var Subscriber_1 = require_Subscriber();
    var lift_1 = require_lift();
    function share(options) {
      if (options === void 0) {
        options = {};
      }
      var _a = options.connector, connector = _a === void 0 ? function() {
        return new Subject_1.Subject();
      } : _a, _b = options.resetOnError, resetOnError = _b === void 0 ? true : _b, _c = options.resetOnComplete, resetOnComplete = _c === void 0 ? true : _c, _d = options.resetOnRefCountZero, resetOnRefCountZero = _d === void 0 ? true : _d;
      return function(wrapperSource) {
        var connection;
        var resetConnection;
        var subject;
        var refCount = 0;
        var hasCompleted = false;
        var hasErrored = false;
        var cancelReset = function() {
          resetConnection === null || resetConnection === void 0 ? void 0 : resetConnection.unsubscribe();
          resetConnection = void 0;
        };
        var reset2 = function() {
          cancelReset();
          connection = subject = void 0;
          hasCompleted = hasErrored = false;
        };
        var resetAndUnsubscribe = function() {
          var conn = connection;
          reset2();
          conn === null || conn === void 0 ? void 0 : conn.unsubscribe();
        };
        return lift_1.operate(function(source, subscriber) {
          refCount++;
          if (!hasErrored && !hasCompleted) {
            cancelReset();
          }
          var dest = subject = subject !== null && subject !== void 0 ? subject : connector();
          subscriber.add(function() {
            refCount--;
            if (refCount === 0 && !hasErrored && !hasCompleted) {
              resetConnection = handleReset(resetAndUnsubscribe, resetOnRefCountZero);
            }
          });
          dest.subscribe(subscriber);
          if (!connection && refCount > 0) {
            connection = new Subscriber_1.SafeSubscriber({
              next: function(value) {
                return dest.next(value);
              },
              error: function(err) {
                hasErrored = true;
                cancelReset();
                resetConnection = handleReset(reset2, resetOnError, err);
                dest.error(err);
              },
              complete: function() {
                hasCompleted = true;
                cancelReset();
                resetConnection = handleReset(reset2, resetOnComplete);
                dest.complete();
              }
            });
            innerFrom_1.innerFrom(source).subscribe(connection);
          }
        })(wrapperSource);
      };
    }
    exports2.share = share;
    function handleReset(reset2, on6) {
      var args = [];
      for (var _i = 2; _i < arguments.length; _i++) {
        args[_i - 2] = arguments[_i];
      }
      if (on6 === true) {
        reset2();
        return;
      }
      if (on6 === false) {
        return;
      }
      var onSubscriber = new Subscriber_1.SafeSubscriber({
        next: function() {
          onSubscriber.unsubscribe();
          reset2();
        }
      });
      return innerFrom_1.innerFrom(on6.apply(void 0, __spreadArray2([], __read2(args)))).subscribe(onSubscriber);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/shareReplay.js
var require_shareReplay = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/shareReplay.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.shareReplay = void 0;
    var ReplaySubject_1 = require_ReplaySubject();
    var share_1 = require_share();
    function shareReplay(configOrBufferSize, windowTime, scheduler3) {
      var _a, _b, _c;
      var bufferSize;
      var refCount = false;
      if (configOrBufferSize && typeof configOrBufferSize === "object") {
        _a = configOrBufferSize.bufferSize, bufferSize = _a === void 0 ? Infinity : _a, _b = configOrBufferSize.windowTime, windowTime = _b === void 0 ? Infinity : _b, _c = configOrBufferSize.refCount, refCount = _c === void 0 ? false : _c, scheduler3 = configOrBufferSize.scheduler;
      } else {
        bufferSize = configOrBufferSize !== null && configOrBufferSize !== void 0 ? configOrBufferSize : Infinity;
      }
      return share_1.share({
        connector: function() {
          return new ReplaySubject_1.ReplaySubject(bufferSize, windowTime, scheduler3);
        },
        resetOnError: true,
        resetOnComplete: false,
        resetOnRefCountZero: refCount
      });
    }
    exports2.shareReplay = shareReplay;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/single.js
var require_single = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/single.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.single = void 0;
    var EmptyError_1 = require_EmptyError();
    var SequenceError_1 = require_SequenceError();
    var NotFoundError_1 = require_NotFoundError();
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    function single(predicate) {
      return lift_1.operate(function(source, subscriber) {
        var hasValue = false;
        var singleValue;
        var seenValue = false;
        var index = 0;
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          seenValue = true;
          if (!predicate || predicate(value, index++, source)) {
            hasValue && subscriber.error(new SequenceError_1.SequenceError("Too many matching values"));
            hasValue = true;
            singleValue = value;
          }
        }, function() {
          if (hasValue) {
            subscriber.next(singleValue);
            subscriber.complete();
          } else {
            subscriber.error(seenValue ? new NotFoundError_1.NotFoundError("No matching values") : new EmptyError_1.EmptyError());
          }
        }));
      });
    }
    exports2.single = single;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/skip.js
var require_skip = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/skip.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.skip = void 0;
    var filter_1 = require_filter3();
    function skip(count2) {
      return filter_1.filter(function(_, index) {
        return count2 <= index;
      });
    }
    exports2.skip = skip;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/skipLast.js
var require_skipLast = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/skipLast.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.skipLast = void 0;
    var identity_1 = require_identity5();
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    function skipLast(skipCount) {
      return skipCount <= 0 ? identity_1.identity : lift_1.operate(function(source, subscriber) {
        var ring = new Array(skipCount);
        var seen = 0;
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          var valueIndex = seen++;
          if (valueIndex < skipCount) {
            ring[valueIndex] = value;
          } else {
            var index = valueIndex % skipCount;
            var oldValue = ring[index];
            ring[index] = value;
            subscriber.next(oldValue);
          }
        }));
        return function() {
          ring = null;
        };
      });
    }
    exports2.skipLast = skipLast;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/skipUntil.js
var require_skipUntil = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/skipUntil.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.skipUntil = void 0;
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    var innerFrom_1 = require_innerFrom();
    var noop_1 = require_noop3();
    function skipUntil(notifier) {
      return lift_1.operate(function(source, subscriber) {
        var taking = false;
        var skipSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber, function() {
          skipSubscriber === null || skipSubscriber === void 0 ? void 0 : skipSubscriber.unsubscribe();
          taking = true;
        }, noop_1.noop);
        innerFrom_1.innerFrom(notifier).subscribe(skipSubscriber);
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          return taking && subscriber.next(value);
        }));
      });
    }
    exports2.skipUntil = skipUntil;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/skipWhile.js
var require_skipWhile = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/skipWhile.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.skipWhile = void 0;
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    function skipWhile(predicate) {
      return lift_1.operate(function(source, subscriber) {
        var taking = false;
        var index = 0;
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          return (taking || (taking = !predicate(value, index++))) && subscriber.next(value);
        }));
      });
    }
    exports2.skipWhile = skipWhile;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/startWith.js
var require_startWith = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/startWith.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.startWith = void 0;
    var concat_1 = require_concat2();
    var args_1 = require_args();
    var lift_1 = require_lift();
    function startWith4() {
      var values = [];
      for (var _i = 0; _i < arguments.length; _i++) {
        values[_i] = arguments[_i];
      }
      var scheduler3 = args_1.popScheduler(values);
      return lift_1.operate(function(source, subscriber) {
        (scheduler3 ? concat_1.concat(values, source, scheduler3) : concat_1.concat(values, source)).subscribe(subscriber);
      });
    }
    exports2.startWith = startWith4;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/switchMap.js
var require_switchMap = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/switchMap.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.switchMap = void 0;
    var innerFrom_1 = require_innerFrom();
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    function switchMap2(project, resultSelector) {
      return lift_1.operate(function(source, subscriber) {
        var innerSubscriber = null;
        var index = 0;
        var isComplete = false;
        var checkComplete = function() {
          return isComplete && !innerSubscriber && subscriber.complete();
        };
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          innerSubscriber === null || innerSubscriber === void 0 ? void 0 : innerSubscriber.unsubscribe();
          var innerIndex = 0;
          var outerIndex = index++;
          innerFrom_1.innerFrom(project(value, outerIndex)).subscribe(innerSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(innerValue) {
            return subscriber.next(resultSelector ? resultSelector(value, innerValue, outerIndex, innerIndex++) : innerValue);
          }, function() {
            innerSubscriber = null;
            checkComplete();
          }));
        }, function() {
          isComplete = true;
          checkComplete();
        }));
      });
    }
    exports2.switchMap = switchMap2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/switchAll.js
var require_switchAll = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/switchAll.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.switchAll = void 0;
    var switchMap_1 = require_switchMap();
    var identity_1 = require_identity5();
    function switchAll() {
      return switchMap_1.switchMap(identity_1.identity);
    }
    exports2.switchAll = switchAll;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/switchMapTo.js
var require_switchMapTo = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/switchMapTo.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.switchMapTo = void 0;
    var switchMap_1 = require_switchMap();
    var isFunction_1 = require_isFunction3();
    function switchMapTo(innerObservable, resultSelector) {
      return isFunction_1.isFunction(resultSelector) ? switchMap_1.switchMap(function() {
        return innerObservable;
      }, resultSelector) : switchMap_1.switchMap(function() {
        return innerObservable;
      });
    }
    exports2.switchMapTo = switchMapTo;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/switchScan.js
var require_switchScan = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/switchScan.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.switchScan = void 0;
    var switchMap_1 = require_switchMap();
    var lift_1 = require_lift();
    function switchScan(accumulator, seed) {
      return lift_1.operate(function(source, subscriber) {
        var state = seed;
        switchMap_1.switchMap(function(value, index) {
          return accumulator(state, value, index);
        }, function(_, innerValue) {
          return state = innerValue, innerValue;
        })(source).subscribe(subscriber);
        return function() {
          state = null;
        };
      });
    }
    exports2.switchScan = switchScan;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/takeUntil.js
var require_takeUntil = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/takeUntil.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.takeUntil = void 0;
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    var innerFrom_1 = require_innerFrom();
    var noop_1 = require_noop3();
    function takeUntil(notifier) {
      return lift_1.operate(function(source, subscriber) {
        innerFrom_1.innerFrom(notifier).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function() {
          return subscriber.complete();
        }, noop_1.noop));
        !subscriber.closed && source.subscribe(subscriber);
      });
    }
    exports2.takeUntil = takeUntil;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/takeWhile.js
var require_takeWhile2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/takeWhile.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.takeWhile = void 0;
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    function takeWhile2(predicate, inclusive) {
      if (inclusive === void 0) {
        inclusive = false;
      }
      return lift_1.operate(function(source, subscriber) {
        var index = 0;
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          var result2 = predicate(value, index++);
          (result2 || inclusive) && subscriber.next(value);
          !result2 && subscriber.complete();
        }));
      });
    }
    exports2.takeWhile = takeWhile2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/tap.js
var require_tap = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/tap.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.tap = void 0;
    var isFunction_1 = require_isFunction3();
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    var identity_1 = require_identity5();
    function tap(observerOrNext, error, complete2) {
      var tapObserver = isFunction_1.isFunction(observerOrNext) || error || complete2 ? { next: observerOrNext, error, complete: complete2 } : observerOrNext;
      return tapObserver ? lift_1.operate(function(source, subscriber) {
        var _a;
        (_a = tapObserver.subscribe) === null || _a === void 0 ? void 0 : _a.call(tapObserver);
        var isUnsub = true;
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          var _a2;
          (_a2 = tapObserver.next) === null || _a2 === void 0 ? void 0 : _a2.call(tapObserver, value);
          subscriber.next(value);
        }, function() {
          var _a2;
          isUnsub = false;
          (_a2 = tapObserver.complete) === null || _a2 === void 0 ? void 0 : _a2.call(tapObserver);
          subscriber.complete();
        }, function(err) {
          var _a2;
          isUnsub = false;
          (_a2 = tapObserver.error) === null || _a2 === void 0 ? void 0 : _a2.call(tapObserver, err);
          subscriber.error(err);
        }, function() {
          var _a2, _b;
          if (isUnsub) {
            (_a2 = tapObserver.unsubscribe) === null || _a2 === void 0 ? void 0 : _a2.call(tapObserver);
          }
          (_b = tapObserver.finalize) === null || _b === void 0 ? void 0 : _b.call(tapObserver);
        }));
      }) : identity_1.identity;
    }
    exports2.tap = tap;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/throttle.js
var require_throttle2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/throttle.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.throttle = void 0;
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    var innerFrom_1 = require_innerFrom();
    function throttle2(durationSelector, config) {
      return lift_1.operate(function(source, subscriber) {
        var _a = config !== null && config !== void 0 ? config : {}, _b = _a.leading, leading = _b === void 0 ? true : _b, _c = _a.trailing, trailing = _c === void 0 ? false : _c;
        var hasValue = false;
        var sendValue = null;
        var throttled = null;
        var isComplete = false;
        var endThrottling = function() {
          throttled === null || throttled === void 0 ? void 0 : throttled.unsubscribe();
          throttled = null;
          if (trailing) {
            send();
            isComplete && subscriber.complete();
          }
        };
        var cleanupThrottling = function() {
          throttled = null;
          isComplete && subscriber.complete();
        };
        var startThrottle = function(value) {
          return throttled = innerFrom_1.innerFrom(durationSelector(value)).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, endThrottling, cleanupThrottling));
        };
        var send = function() {
          if (hasValue) {
            hasValue = false;
            var value = sendValue;
            sendValue = null;
            subscriber.next(value);
            !isComplete && startThrottle(value);
          }
        };
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          hasValue = true;
          sendValue = value;
          !(throttled && !throttled.closed) && (leading ? send() : startThrottle(value));
        }, function() {
          isComplete = true;
          !(trailing && hasValue && throttled && !throttled.closed) && subscriber.complete();
        }));
      });
    }
    exports2.throttle = throttle2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/throttleTime.js
var require_throttleTime = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/throttleTime.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.throttleTime = void 0;
    var async_1 = require_async9();
    var throttle_1 = require_throttle2();
    var timer_1 = require_timer2();
    function throttleTime2(duration, scheduler3, config) {
      if (scheduler3 === void 0) {
        scheduler3 = async_1.asyncScheduler;
      }
      var duration$ = timer_1.timer(duration, scheduler3);
      return throttle_1.throttle(function() {
        return duration$;
      }, config);
    }
    exports2.throttleTime = throttleTime2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/timeInterval.js
var require_timeInterval = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/timeInterval.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.TimeInterval = exports2.timeInterval = void 0;
    var async_1 = require_async9();
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    function timeInterval(scheduler3) {
      if (scheduler3 === void 0) {
        scheduler3 = async_1.asyncScheduler;
      }
      return lift_1.operate(function(source, subscriber) {
        var last = scheduler3.now();
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          var now = scheduler3.now();
          var interval = now - last;
          last = now;
          subscriber.next(new TimeInterval(value, interval));
        }));
      });
    }
    exports2.timeInterval = timeInterval;
    var TimeInterval = /* @__PURE__ */ (function() {
      function TimeInterval2(value, interval) {
        this.value = value;
        this.interval = interval;
      }
      return TimeInterval2;
    })();
    exports2.TimeInterval = TimeInterval;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/timeoutWith.js
var require_timeoutWith = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/timeoutWith.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.timeoutWith = void 0;
    var async_1 = require_async9();
    var isDate_1 = require_isDate3();
    var timeout_1 = require_timeout();
    function timeoutWith(due, withObservable, scheduler3) {
      var first;
      var each;
      var _with;
      scheduler3 = scheduler3 !== null && scheduler3 !== void 0 ? scheduler3 : async_1.async;
      if (isDate_1.isValidDate(due)) {
        first = due;
      } else if (typeof due === "number") {
        each = due;
      }
      if (withObservable) {
        _with = function() {
          return withObservable;
        };
      } else {
        throw new TypeError("No observable provided to switch to");
      }
      if (first == null && each == null) {
        throw new TypeError("No timeout provided.");
      }
      return timeout_1.timeout({
        first,
        each,
        scheduler: scheduler3,
        with: _with
      });
    }
    exports2.timeoutWith = timeoutWith;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/timestamp.js
var require_timestamp7 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/timestamp.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.timestamp = void 0;
    var dateTimestampProvider_1 = require_dateTimestampProvider();
    var map_1 = require_map4();
    function timestamp2(timestampProvider) {
      if (timestampProvider === void 0) {
        timestampProvider = dateTimestampProvider_1.dateTimestampProvider;
      }
      return map_1.map(function(value) {
        return { value, timestamp: timestampProvider.now() };
      });
    }
    exports2.timestamp = timestamp2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/window.js
var require_window = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/window.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.window = void 0;
    var Subject_1 = require_Subject();
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    var noop_1 = require_noop3();
    var innerFrom_1 = require_innerFrom();
    function window2(windowBoundaries) {
      return lift_1.operate(function(source, subscriber) {
        var windowSubject = new Subject_1.Subject();
        subscriber.next(windowSubject.asObservable());
        var errorHandler2 = function(err) {
          windowSubject.error(err);
          subscriber.error(err);
        };
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          return windowSubject === null || windowSubject === void 0 ? void 0 : windowSubject.next(value);
        }, function() {
          windowSubject.complete();
          subscriber.complete();
        }, errorHandler2));
        innerFrom_1.innerFrom(windowBoundaries).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function() {
          windowSubject.complete();
          subscriber.next(windowSubject = new Subject_1.Subject());
        }, noop_1.noop, errorHandler2));
        return function() {
          windowSubject === null || windowSubject === void 0 ? void 0 : windowSubject.unsubscribe();
          windowSubject = null;
        };
      });
    }
    exports2.window = window2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/windowCount.js
var require_windowCount = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/windowCount.js"(exports2) {
    "use strict";
    var __values2 = exports2 && exports2.__values || function(o2) {
      var s = typeof Symbol === "function" && Symbol.iterator, m = s && o2[s], i2 = 0;
      if (m) return m.call(o2);
      if (o2 && typeof o2.length === "number") return {
        next: function() {
          if (o2 && i2 >= o2.length) o2 = void 0;
          return { value: o2 && o2[i2++], done: !o2 };
        }
      };
      throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.windowCount = void 0;
    var Subject_1 = require_Subject();
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    function windowCount(windowSize, startWindowEvery) {
      if (startWindowEvery === void 0) {
        startWindowEvery = 0;
      }
      var startEvery = startWindowEvery > 0 ? startWindowEvery : windowSize;
      return lift_1.operate(function(source, subscriber) {
        var windows = [new Subject_1.Subject()];
        var starts = [];
        var count2 = 0;
        subscriber.next(windows[0].asObservable());
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          var e_1, _a;
          try {
            for (var windows_1 = __values2(windows), windows_1_1 = windows_1.next(); !windows_1_1.done; windows_1_1 = windows_1.next()) {
              var window_1 = windows_1_1.value;
              window_1.next(value);
            }
          } catch (e_1_1) {
            e_1 = { error: e_1_1 };
          } finally {
            try {
              if (windows_1_1 && !windows_1_1.done && (_a = windows_1.return)) _a.call(windows_1);
            } finally {
              if (e_1) throw e_1.error;
            }
          }
          var c3 = count2 - windowSize + 1;
          if (c3 >= 0 && c3 % startEvery === 0) {
            windows.shift().complete();
          }
          if (++count2 % startEvery === 0) {
            var window_2 = new Subject_1.Subject();
            windows.push(window_2);
            subscriber.next(window_2.asObservable());
          }
        }, function() {
          while (windows.length > 0) {
            windows.shift().complete();
          }
          subscriber.complete();
        }, function(err) {
          while (windows.length > 0) {
            windows.shift().error(err);
          }
          subscriber.error(err);
        }, function() {
          starts = null;
          windows = null;
        }));
      });
    }
    exports2.windowCount = windowCount;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/windowTime.js
var require_windowTime = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/windowTime.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.windowTime = void 0;
    var Subject_1 = require_Subject();
    var async_1 = require_async9();
    var Subscription_1 = require_Subscription();
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    var arrRemove_1 = require_arrRemove();
    var args_1 = require_args();
    var executeSchedule_1 = require_executeSchedule();
    function windowTime(windowTimeSpan) {
      var _a, _b;
      var otherArgs = [];
      for (var _i = 1; _i < arguments.length; _i++) {
        otherArgs[_i - 1] = arguments[_i];
      }
      var scheduler3 = (_a = args_1.popScheduler(otherArgs)) !== null && _a !== void 0 ? _a : async_1.asyncScheduler;
      var windowCreationInterval = (_b = otherArgs[0]) !== null && _b !== void 0 ? _b : null;
      var maxWindowSize = otherArgs[1] || Infinity;
      return lift_1.operate(function(source, subscriber) {
        var windowRecords = [];
        var restartOnClose = false;
        var closeWindow = function(record) {
          var window2 = record.window, subs = record.subs;
          window2.complete();
          subs.unsubscribe();
          arrRemove_1.arrRemove(windowRecords, record);
          restartOnClose && startWindow();
        };
        var startWindow = function() {
          if (windowRecords) {
            var subs = new Subscription_1.Subscription();
            subscriber.add(subs);
            var window_1 = new Subject_1.Subject();
            var record_1 = {
              window: window_1,
              subs,
              seen: 0
            };
            windowRecords.push(record_1);
            subscriber.next(window_1.asObservable());
            executeSchedule_1.executeSchedule(subs, scheduler3, function() {
              return closeWindow(record_1);
            }, windowTimeSpan);
          }
        };
        if (windowCreationInterval !== null && windowCreationInterval >= 0) {
          executeSchedule_1.executeSchedule(subscriber, scheduler3, startWindow, windowCreationInterval, true);
        } else {
          restartOnClose = true;
        }
        startWindow();
        var loop = function(cb) {
          return windowRecords.slice().forEach(cb);
        };
        var terminate = function(cb) {
          loop(function(_a2) {
            var window2 = _a2.window;
            return cb(window2);
          });
          cb(subscriber);
          subscriber.unsubscribe();
        };
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          loop(function(record) {
            record.window.next(value);
            maxWindowSize <= ++record.seen && closeWindow(record);
          });
        }, function() {
          return terminate(function(consumer) {
            return consumer.complete();
          });
        }, function(err) {
          return terminate(function(consumer) {
            return consumer.error(err);
          });
        }));
        return function() {
          windowRecords = null;
        };
      });
    }
    exports2.windowTime = windowTime;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/windowToggle.js
var require_windowToggle = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/windowToggle.js"(exports2) {
    "use strict";
    var __values2 = exports2 && exports2.__values || function(o2) {
      var s = typeof Symbol === "function" && Symbol.iterator, m = s && o2[s], i2 = 0;
      if (m) return m.call(o2);
      if (o2 && typeof o2.length === "number") return {
        next: function() {
          if (o2 && i2 >= o2.length) o2 = void 0;
          return { value: o2 && o2[i2++], done: !o2 };
        }
      };
      throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.windowToggle = void 0;
    var Subject_1 = require_Subject();
    var Subscription_1 = require_Subscription();
    var lift_1 = require_lift();
    var innerFrom_1 = require_innerFrom();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    var noop_1 = require_noop3();
    var arrRemove_1 = require_arrRemove();
    function windowToggle(openings, closingSelector) {
      return lift_1.operate(function(source, subscriber) {
        var windows = [];
        var handleError = function(err) {
          while (0 < windows.length) {
            windows.shift().error(err);
          }
          subscriber.error(err);
        };
        innerFrom_1.innerFrom(openings).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(openValue) {
          var window2 = new Subject_1.Subject();
          windows.push(window2);
          var closingSubscription = new Subscription_1.Subscription();
          var closeWindow = function() {
            arrRemove_1.arrRemove(windows, window2);
            window2.complete();
            closingSubscription.unsubscribe();
          };
          var closingNotifier;
          try {
            closingNotifier = innerFrom_1.innerFrom(closingSelector(openValue));
          } catch (err) {
            handleError(err);
            return;
          }
          subscriber.next(window2.asObservable());
          closingSubscription.add(closingNotifier.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, closeWindow, noop_1.noop, handleError)));
        }, noop_1.noop));
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          var e_1, _a;
          var windowsCopy = windows.slice();
          try {
            for (var windowsCopy_1 = __values2(windowsCopy), windowsCopy_1_1 = windowsCopy_1.next(); !windowsCopy_1_1.done; windowsCopy_1_1 = windowsCopy_1.next()) {
              var window_1 = windowsCopy_1_1.value;
              window_1.next(value);
            }
          } catch (e_1_1) {
            e_1 = { error: e_1_1 };
          } finally {
            try {
              if (windowsCopy_1_1 && !windowsCopy_1_1.done && (_a = windowsCopy_1.return)) _a.call(windowsCopy_1);
            } finally {
              if (e_1) throw e_1.error;
            }
          }
        }, function() {
          while (0 < windows.length) {
            windows.shift().complete();
          }
          subscriber.complete();
        }, handleError, function() {
          while (0 < windows.length) {
            windows.shift().unsubscribe();
          }
        }));
      });
    }
    exports2.windowToggle = windowToggle;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/windowWhen.js
var require_windowWhen = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/windowWhen.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.windowWhen = void 0;
    var Subject_1 = require_Subject();
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    var innerFrom_1 = require_innerFrom();
    function windowWhen(closingSelector) {
      return lift_1.operate(function(source, subscriber) {
        var window2;
        var closingSubscriber;
        var handleError = function(err) {
          window2.error(err);
          subscriber.error(err);
        };
        var openWindow = function() {
          closingSubscriber === null || closingSubscriber === void 0 ? void 0 : closingSubscriber.unsubscribe();
          window2 === null || window2 === void 0 ? void 0 : window2.complete();
          window2 = new Subject_1.Subject();
          subscriber.next(window2.asObservable());
          var closingNotifier;
          try {
            closingNotifier = innerFrom_1.innerFrom(closingSelector());
          } catch (err) {
            handleError(err);
            return;
          }
          closingNotifier.subscribe(closingSubscriber = OperatorSubscriber_1.createOperatorSubscriber(subscriber, openWindow, openWindow, handleError));
        };
        openWindow();
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          return window2.next(value);
        }, function() {
          window2.complete();
          subscriber.complete();
        }, handleError, function() {
          closingSubscriber === null || closingSubscriber === void 0 ? void 0 : closingSubscriber.unsubscribe();
          window2 = null;
        }));
      });
    }
    exports2.windowWhen = windowWhen;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/withLatestFrom.js
var require_withLatestFrom = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/withLatestFrom.js"(exports2) {
    "use strict";
    var __read2 = exports2 && exports2.__read || function(o2, n2) {
      var m = typeof Symbol === "function" && o2[Symbol.iterator];
      if (!m) return o2;
      var i2 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i2.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i2["return"])) m.call(i2);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i2 = 0, il = from5.length, j2 = to.length; i2 < il; i2++, j2++)
        to[j2] = from5[i2];
      return to;
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.withLatestFrom = void 0;
    var lift_1 = require_lift();
    var OperatorSubscriber_1 = require_OperatorSubscriber();
    var innerFrom_1 = require_innerFrom();
    var identity_1 = require_identity5();
    var noop_1 = require_noop3();
    var args_1 = require_args();
    function withLatestFrom() {
      var inputs = [];
      for (var _i = 0; _i < arguments.length; _i++) {
        inputs[_i] = arguments[_i];
      }
      var project = args_1.popResultSelector(inputs);
      return lift_1.operate(function(source, subscriber) {
        var len = inputs.length;
        var otherValues = new Array(len);
        var hasValue = inputs.map(function() {
          return false;
        });
        var ready = false;
        var _loop_1 = function(i3) {
          innerFrom_1.innerFrom(inputs[i3]).subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
            otherValues[i3] = value;
            if (!ready && !hasValue[i3]) {
              hasValue[i3] = true;
              (ready = hasValue.every(identity_1.identity)) && (hasValue = null);
            }
          }, noop_1.noop));
        };
        for (var i2 = 0; i2 < len; i2++) {
          _loop_1(i2);
        }
        source.subscribe(OperatorSubscriber_1.createOperatorSubscriber(subscriber, function(value) {
          if (ready) {
            var values = __spreadArray2([value], __read2(otherValues));
            subscriber.next(project ? project.apply(void 0, __spreadArray2([], __read2(values))) : values);
          }
        }));
      });
    }
    exports2.withLatestFrom = withLatestFrom;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/zipAll.js
var require_zipAll = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/zipAll.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.zipAll = void 0;
    var zip_1 = require_zip3();
    var joinAllInternals_1 = require_joinAllInternals();
    function zipAll(project) {
      return joinAllInternals_1.joinAllInternals(zip_1.zip, project);
    }
    exports2.zipAll = zipAll;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/zip.js
var require_zip4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/zip.js"(exports2) {
    "use strict";
    var __read2 = exports2 && exports2.__read || function(o2, n2) {
      var m = typeof Symbol === "function" && o2[Symbol.iterator];
      if (!m) return o2;
      var i2 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i2.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i2["return"])) m.call(i2);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i2 = 0, il = from5.length, j2 = to.length; i2 < il; i2++, j2++)
        to[j2] = from5[i2];
      return to;
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.zip = void 0;
    var zip_1 = require_zip3();
    var lift_1 = require_lift();
    function zip() {
      var sources = [];
      for (var _i = 0; _i < arguments.length; _i++) {
        sources[_i] = arguments[_i];
      }
      return lift_1.operate(function(source, subscriber) {
        zip_1.zip.apply(void 0, __spreadArray2([source], __read2(sources))).subscribe(subscriber);
      });
    }
    exports2.zip = zip;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/zipWith.js
var require_zipWith2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/zipWith.js"(exports2) {
    "use strict";
    var __read2 = exports2 && exports2.__read || function(o2, n2) {
      var m = typeof Symbol === "function" && o2[Symbol.iterator];
      if (!m) return o2;
      var i2 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i2.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i2["return"])) m.call(i2);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i2 = 0, il = from5.length, j2 = to.length; i2 < il; i2++, j2++)
        to[j2] = from5[i2];
      return to;
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.zipWith = void 0;
    var zip_1 = require_zip4();
    function zipWith3() {
      var otherInputs = [];
      for (var _i = 0; _i < arguments.length; _i++) {
        otherInputs[_i] = arguments[_i];
      }
      return zip_1.zip.apply(void 0, __spreadArray2([], __read2(otherInputs)));
    }
    exports2.zipWith = zipWith3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/index.js
var require_cjs2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/index.js"(exports2) {
    "use strict";
    var __createBinding2 = exports2 && exports2.__createBinding || (Object.create ? (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      Object.defineProperty(o2, k22, { enumerable: true, get: function() {
        return m[k2];
      } });
    }) : (function(o2, m, k2, k22) {
      if (k22 === void 0) k22 = k2;
      o2[k22] = m[k2];
    }));
    var __exportStar2 = exports2 && exports2.__exportStar || function(m, exports3) {
      for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding2(exports3, m, p);
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.interval = exports2.iif = exports2.generate = exports2.fromEventPattern = exports2.fromEvent = exports2.from = exports2.forkJoin = exports2.empty = exports2.defer = exports2.connectable = exports2.concat = exports2.combineLatest = exports2.bindNodeCallback = exports2.bindCallback = exports2.UnsubscriptionError = exports2.TimeoutError = exports2.SequenceError = exports2.ObjectUnsubscribedError = exports2.NotFoundError = exports2.EmptyError = exports2.ArgumentOutOfRangeError = exports2.firstValueFrom = exports2.lastValueFrom = exports2.isObservable = exports2.identity = exports2.noop = exports2.pipe = exports2.NotificationKind = exports2.Notification = exports2.Subscriber = exports2.Subscription = exports2.Scheduler = exports2.VirtualAction = exports2.VirtualTimeScheduler = exports2.animationFrameScheduler = exports2.animationFrame = exports2.queueScheduler = exports2.queue = exports2.asyncScheduler = exports2.async = exports2.asapScheduler = exports2.asap = exports2.AsyncSubject = exports2.ReplaySubject = exports2.BehaviorSubject = exports2.Subject = exports2.animationFrames = exports2.observable = exports2.ConnectableObservable = exports2.Observable = void 0;
    exports2.filter = exports2.expand = exports2.exhaustMap = exports2.exhaustAll = exports2.exhaust = exports2.every = exports2.endWith = exports2.elementAt = exports2.distinctUntilKeyChanged = exports2.distinctUntilChanged = exports2.distinct = exports2.dematerialize = exports2.delayWhen = exports2.delay = exports2.defaultIfEmpty = exports2.debounceTime = exports2.debounce = exports2.count = exports2.connect = exports2.concatWith = exports2.concatMapTo = exports2.concatMap = exports2.concatAll = exports2.combineLatestWith = exports2.combineLatestAll = exports2.combineAll = exports2.catchError = exports2.bufferWhen = exports2.bufferToggle = exports2.bufferTime = exports2.bufferCount = exports2.buffer = exports2.auditTime = exports2.audit = exports2.config = exports2.NEVER = exports2.EMPTY = exports2.scheduled = exports2.zip = exports2.using = exports2.timer = exports2.throwError = exports2.range = exports2.race = exports2.partition = exports2.pairs = exports2.onErrorResumeNext = exports2.of = exports2.never = exports2.merge = void 0;
    exports2.switchMap = exports2.switchAll = exports2.subscribeOn = exports2.startWith = exports2.skipWhile = exports2.skipUntil = exports2.skipLast = exports2.skip = exports2.single = exports2.shareReplay = exports2.share = exports2.sequenceEqual = exports2.scan = exports2.sampleTime = exports2.sample = exports2.refCount = exports2.retryWhen = exports2.retry = exports2.repeatWhen = exports2.repeat = exports2.reduce = exports2.raceWith = exports2.publishReplay = exports2.publishLast = exports2.publishBehavior = exports2.publish = exports2.pluck = exports2.pairwise = exports2.onErrorResumeNextWith = exports2.observeOn = exports2.multicast = exports2.min = exports2.mergeWith = exports2.mergeScan = exports2.mergeMapTo = exports2.mergeMap = exports2.flatMap = exports2.mergeAll = exports2.max = exports2.materialize = exports2.mapTo = exports2.map = exports2.last = exports2.isEmpty = exports2.ignoreElements = exports2.groupBy = exports2.first = exports2.findIndex = exports2.find = exports2.finalize = void 0;
    exports2.zipWith = exports2.zipAll = exports2.withLatestFrom = exports2.windowWhen = exports2.windowToggle = exports2.windowTime = exports2.windowCount = exports2.window = exports2.toArray = exports2.timestamp = exports2.timeoutWith = exports2.timeout = exports2.timeInterval = exports2.throwIfEmpty = exports2.throttleTime = exports2.throttle = exports2.tap = exports2.takeWhile = exports2.takeUntil = exports2.takeLast = exports2.take = exports2.switchScan = exports2.switchMapTo = void 0;
    var Observable_1 = require_Observable();
    Object.defineProperty(exports2, "Observable", { enumerable: true, get: function() {
      return Observable_1.Observable;
    } });
    var ConnectableObservable_1 = require_ConnectableObservable();
    Object.defineProperty(exports2, "ConnectableObservable", { enumerable: true, get: function() {
      return ConnectableObservable_1.ConnectableObservable;
    } });
    var observable_1 = require_observable();
    Object.defineProperty(exports2, "observable", { enumerable: true, get: function() {
      return observable_1.observable;
    } });
    var animationFrames_1 = require_animationFrames();
    Object.defineProperty(exports2, "animationFrames", { enumerable: true, get: function() {
      return animationFrames_1.animationFrames;
    } });
    var Subject_1 = require_Subject();
    Object.defineProperty(exports2, "Subject", { enumerable: true, get: function() {
      return Subject_1.Subject;
    } });
    var BehaviorSubject_1 = require_BehaviorSubject();
    Object.defineProperty(exports2, "BehaviorSubject", { enumerable: true, get: function() {
      return BehaviorSubject_1.BehaviorSubject;
    } });
    var ReplaySubject_1 = require_ReplaySubject();
    Object.defineProperty(exports2, "ReplaySubject", { enumerable: true, get: function() {
      return ReplaySubject_1.ReplaySubject;
    } });
    var AsyncSubject_1 = require_AsyncSubject();
    Object.defineProperty(exports2, "AsyncSubject", { enumerable: true, get: function() {
      return AsyncSubject_1.AsyncSubject;
    } });
    var asap_1 = require_asap();
    Object.defineProperty(exports2, "asap", { enumerable: true, get: function() {
      return asap_1.asap;
    } });
    Object.defineProperty(exports2, "asapScheduler", { enumerable: true, get: function() {
      return asap_1.asapScheduler;
    } });
    var async_1 = require_async9();
    Object.defineProperty(exports2, "async", { enumerable: true, get: function() {
      return async_1.async;
    } });
    Object.defineProperty(exports2, "asyncScheduler", { enumerable: true, get: function() {
      return async_1.asyncScheduler;
    } });
    var queue_1 = require_queue3();
    Object.defineProperty(exports2, "queue", { enumerable: true, get: function() {
      return queue_1.queue;
    } });
    Object.defineProperty(exports2, "queueScheduler", { enumerable: true, get: function() {
      return queue_1.queueScheduler;
    } });
    var animationFrame_1 = require_animationFrame();
    Object.defineProperty(exports2, "animationFrame", { enumerable: true, get: function() {
      return animationFrame_1.animationFrame;
    } });
    Object.defineProperty(exports2, "animationFrameScheduler", { enumerable: true, get: function() {
      return animationFrame_1.animationFrameScheduler;
    } });
    var VirtualTimeScheduler_1 = require_VirtualTimeScheduler();
    Object.defineProperty(exports2, "VirtualTimeScheduler", { enumerable: true, get: function() {
      return VirtualTimeScheduler_1.VirtualTimeScheduler;
    } });
    Object.defineProperty(exports2, "VirtualAction", { enumerable: true, get: function() {
      return VirtualTimeScheduler_1.VirtualAction;
    } });
    var Scheduler_1 = require_Scheduler();
    Object.defineProperty(exports2, "Scheduler", { enumerable: true, get: function() {
      return Scheduler_1.Scheduler;
    } });
    var Subscription_1 = require_Subscription();
    Object.defineProperty(exports2, "Subscription", { enumerable: true, get: function() {
      return Subscription_1.Subscription;
    } });
    var Subscriber_1 = require_Subscriber();
    Object.defineProperty(exports2, "Subscriber", { enumerable: true, get: function() {
      return Subscriber_1.Subscriber;
    } });
    var Notification_1 = require_Notification();
    Object.defineProperty(exports2, "Notification", { enumerable: true, get: function() {
      return Notification_1.Notification;
    } });
    Object.defineProperty(exports2, "NotificationKind", { enumerable: true, get: function() {
      return Notification_1.NotificationKind;
    } });
    var pipe_1 = require_pipe2();
    Object.defineProperty(exports2, "pipe", { enumerable: true, get: function() {
      return pipe_1.pipe;
    } });
    var noop_1 = require_noop3();
    Object.defineProperty(exports2, "noop", { enumerable: true, get: function() {
      return noop_1.noop;
    } });
    var identity_1 = require_identity5();
    Object.defineProperty(exports2, "identity", { enumerable: true, get: function() {
      return identity_1.identity;
    } });
    var isObservable_1 = require_isObservable();
    Object.defineProperty(exports2, "isObservable", { enumerable: true, get: function() {
      return isObservable_1.isObservable;
    } });
    var lastValueFrom_1 = require_lastValueFrom();
    Object.defineProperty(exports2, "lastValueFrom", { enumerable: true, get: function() {
      return lastValueFrom_1.lastValueFrom;
    } });
    var firstValueFrom_1 = require_firstValueFrom();
    Object.defineProperty(exports2, "firstValueFrom", { enumerable: true, get: function() {
      return firstValueFrom_1.firstValueFrom;
    } });
    var ArgumentOutOfRangeError_1 = require_ArgumentOutOfRangeError();
    Object.defineProperty(exports2, "ArgumentOutOfRangeError", { enumerable: true, get: function() {
      return ArgumentOutOfRangeError_1.ArgumentOutOfRangeError;
    } });
    var EmptyError_1 = require_EmptyError();
    Object.defineProperty(exports2, "EmptyError", { enumerable: true, get: function() {
      return EmptyError_1.EmptyError;
    } });
    var NotFoundError_1 = require_NotFoundError();
    Object.defineProperty(exports2, "NotFoundError", { enumerable: true, get: function() {
      return NotFoundError_1.NotFoundError;
    } });
    var ObjectUnsubscribedError_1 = require_ObjectUnsubscribedError();
    Object.defineProperty(exports2, "ObjectUnsubscribedError", { enumerable: true, get: function() {
      return ObjectUnsubscribedError_1.ObjectUnsubscribedError;
    } });
    var SequenceError_1 = require_SequenceError();
    Object.defineProperty(exports2, "SequenceError", { enumerable: true, get: function() {
      return SequenceError_1.SequenceError;
    } });
    var timeout_1 = require_timeout();
    Object.defineProperty(exports2, "TimeoutError", { enumerable: true, get: function() {
      return timeout_1.TimeoutError;
    } });
    var UnsubscriptionError_1 = require_UnsubscriptionError();
    Object.defineProperty(exports2, "UnsubscriptionError", { enumerable: true, get: function() {
      return UnsubscriptionError_1.UnsubscriptionError;
    } });
    var bindCallback_1 = require_bindCallback();
    Object.defineProperty(exports2, "bindCallback", { enumerable: true, get: function() {
      return bindCallback_1.bindCallback;
    } });
    var bindNodeCallback_1 = require_bindNodeCallback();
    Object.defineProperty(exports2, "bindNodeCallback", { enumerable: true, get: function() {
      return bindNodeCallback_1.bindNodeCallback;
    } });
    var combineLatest_1 = require_combineLatest();
    Object.defineProperty(exports2, "combineLatest", { enumerable: true, get: function() {
      return combineLatest_1.combineLatest;
    } });
    var concat_1 = require_concat2();
    Object.defineProperty(exports2, "concat", { enumerable: true, get: function() {
      return concat_1.concat;
    } });
    var connectable_1 = require_connectable();
    Object.defineProperty(exports2, "connectable", { enumerable: true, get: function() {
      return connectable_1.connectable;
    } });
    var defer_1 = require_defer2();
    Object.defineProperty(exports2, "defer", { enumerable: true, get: function() {
      return defer_1.defer;
    } });
    var empty_1 = require_empty3();
    Object.defineProperty(exports2, "empty", { enumerable: true, get: function() {
      return empty_1.empty;
    } });
    var forkJoin_1 = require_forkJoin();
    Object.defineProperty(exports2, "forkJoin", { enumerable: true, get: function() {
      return forkJoin_1.forkJoin;
    } });
    var from_1 = require_from();
    Object.defineProperty(exports2, "from", { enumerable: true, get: function() {
      return from_1.from;
    } });
    var fromEvent_1 = require_fromEvent();
    Object.defineProperty(exports2, "fromEvent", { enumerable: true, get: function() {
      return fromEvent_1.fromEvent;
    } });
    var fromEventPattern_1 = require_fromEventPattern();
    Object.defineProperty(exports2, "fromEventPattern", { enumerable: true, get: function() {
      return fromEventPattern_1.fromEventPattern;
    } });
    var generate_1 = require_generate();
    Object.defineProperty(exports2, "generate", { enumerable: true, get: function() {
      return generate_1.generate;
    } });
    var iif_1 = require_iif();
    Object.defineProperty(exports2, "iif", { enumerable: true, get: function() {
      return iif_1.iif;
    } });
    var interval_1 = require_interval();
    Object.defineProperty(exports2, "interval", { enumerable: true, get: function() {
      return interval_1.interval;
    } });
    var merge_1 = require_merge5();
    Object.defineProperty(exports2, "merge", { enumerable: true, get: function() {
      return merge_1.merge;
    } });
    var never_1 = require_never();
    Object.defineProperty(exports2, "never", { enumerable: true, get: function() {
      return never_1.never;
    } });
    var of_1 = require_of();
    Object.defineProperty(exports2, "of", { enumerable: true, get: function() {
      return of_1.of;
    } });
    var onErrorResumeNext_1 = require_onErrorResumeNext();
    Object.defineProperty(exports2, "onErrorResumeNext", { enumerable: true, get: function() {
      return onErrorResumeNext_1.onErrorResumeNext;
    } });
    var pairs_1 = require_pairs3();
    Object.defineProperty(exports2, "pairs", { enumerable: true, get: function() {
      return pairs_1.pairs;
    } });
    var partition_1 = require_partition2();
    Object.defineProperty(exports2, "partition", { enumerable: true, get: function() {
      return partition_1.partition;
    } });
    var race_1 = require_race();
    Object.defineProperty(exports2, "race", { enumerable: true, get: function() {
      return race_1.race;
    } });
    var range_1 = require_range5();
    Object.defineProperty(exports2, "range", { enumerable: true, get: function() {
      return range_1.range;
    } });
    var throwError_1 = require_throwError();
    Object.defineProperty(exports2, "throwError", { enumerable: true, get: function() {
      return throwError_1.throwError;
    } });
    var timer_1 = require_timer2();
    Object.defineProperty(exports2, "timer", { enumerable: true, get: function() {
      return timer_1.timer;
    } });
    var using_1 = require_using();
    Object.defineProperty(exports2, "using", { enumerable: true, get: function() {
      return using_1.using;
    } });
    var zip_1 = require_zip3();
    Object.defineProperty(exports2, "zip", { enumerable: true, get: function() {
      return zip_1.zip;
    } });
    var scheduled_1 = require_scheduled();
    Object.defineProperty(exports2, "scheduled", { enumerable: true, get: function() {
      return scheduled_1.scheduled;
    } });
    var empty_2 = require_empty3();
    Object.defineProperty(exports2, "EMPTY", { enumerable: true, get: function() {
      return empty_2.EMPTY;
    } });
    var never_2 = require_never();
    Object.defineProperty(exports2, "NEVER", { enumerable: true, get: function() {
      return never_2.NEVER;
    } });
    __exportStar2(require_types3(), exports2);
    var config_1 = require_config4();
    Object.defineProperty(exports2, "config", { enumerable: true, get: function() {
      return config_1.config;
    } });
    var audit_1 = require_audit();
    Object.defineProperty(exports2, "audit", { enumerable: true, get: function() {
      return audit_1.audit;
    } });
    var auditTime_1 = require_auditTime();
    Object.defineProperty(exports2, "auditTime", { enumerable: true, get: function() {
      return auditTime_1.auditTime;
    } });
    var buffer_1 = require_buffer();
    Object.defineProperty(exports2, "buffer", { enumerable: true, get: function() {
      return buffer_1.buffer;
    } });
    var bufferCount_1 = require_bufferCount();
    Object.defineProperty(exports2, "bufferCount", { enumerable: true, get: function() {
      return bufferCount_1.bufferCount;
    } });
    var bufferTime_1 = require_bufferTime();
    Object.defineProperty(exports2, "bufferTime", { enumerable: true, get: function() {
      return bufferTime_1.bufferTime;
    } });
    var bufferToggle_1 = require_bufferToggle();
    Object.defineProperty(exports2, "bufferToggle", { enumerable: true, get: function() {
      return bufferToggle_1.bufferToggle;
    } });
    var bufferWhen_1 = require_bufferWhen();
    Object.defineProperty(exports2, "bufferWhen", { enumerable: true, get: function() {
      return bufferWhen_1.bufferWhen;
    } });
    var catchError_1 = require_catchError();
    Object.defineProperty(exports2, "catchError", { enumerable: true, get: function() {
      return catchError_1.catchError;
    } });
    var combineAll_1 = require_combineAll();
    Object.defineProperty(exports2, "combineAll", { enumerable: true, get: function() {
      return combineAll_1.combineAll;
    } });
    var combineLatestAll_1 = require_combineLatestAll();
    Object.defineProperty(exports2, "combineLatestAll", { enumerable: true, get: function() {
      return combineLatestAll_1.combineLatestAll;
    } });
    var combineLatestWith_1 = require_combineLatestWith();
    Object.defineProperty(exports2, "combineLatestWith", { enumerable: true, get: function() {
      return combineLatestWith_1.combineLatestWith;
    } });
    var concatAll_1 = require_concatAll();
    Object.defineProperty(exports2, "concatAll", { enumerable: true, get: function() {
      return concatAll_1.concatAll;
    } });
    var concatMap_1 = require_concatMap();
    Object.defineProperty(exports2, "concatMap", { enumerable: true, get: function() {
      return concatMap_1.concatMap;
    } });
    var concatMapTo_1 = require_concatMapTo();
    Object.defineProperty(exports2, "concatMapTo", { enumerable: true, get: function() {
      return concatMapTo_1.concatMapTo;
    } });
    var concatWith_1 = require_concatWith();
    Object.defineProperty(exports2, "concatWith", { enumerable: true, get: function() {
      return concatWith_1.concatWith;
    } });
    var connect_1 = require_connect2();
    Object.defineProperty(exports2, "connect", { enumerable: true, get: function() {
      return connect_1.connect;
    } });
    var count_1 = require_count();
    Object.defineProperty(exports2, "count", { enumerable: true, get: function() {
      return count_1.count;
    } });
    var debounce_1 = require_debounce3();
    Object.defineProperty(exports2, "debounce", { enumerable: true, get: function() {
      return debounce_1.debounce;
    } });
    var debounceTime_1 = require_debounceTime();
    Object.defineProperty(exports2, "debounceTime", { enumerable: true, get: function() {
      return debounceTime_1.debounceTime;
    } });
    var defaultIfEmpty_1 = require_defaultIfEmpty();
    Object.defineProperty(exports2, "defaultIfEmpty", { enumerable: true, get: function() {
      return defaultIfEmpty_1.defaultIfEmpty;
    } });
    var delay_1 = require_delay2();
    Object.defineProperty(exports2, "delay", { enumerable: true, get: function() {
      return delay_1.delay;
    } });
    var delayWhen_1 = require_delayWhen();
    Object.defineProperty(exports2, "delayWhen", { enumerable: true, get: function() {
      return delayWhen_1.delayWhen;
    } });
    var dematerialize_1 = require_dematerialize();
    Object.defineProperty(exports2, "dematerialize", { enumerable: true, get: function() {
      return dematerialize_1.dematerialize;
    } });
    var distinct_1 = require_distinct();
    Object.defineProperty(exports2, "distinct", { enumerable: true, get: function() {
      return distinct_1.distinct;
    } });
    var distinctUntilChanged_1 = require_distinctUntilChanged();
    Object.defineProperty(exports2, "distinctUntilChanged", { enumerable: true, get: function() {
      return distinctUntilChanged_1.distinctUntilChanged;
    } });
    var distinctUntilKeyChanged_1 = require_distinctUntilKeyChanged();
    Object.defineProperty(exports2, "distinctUntilKeyChanged", { enumerable: true, get: function() {
      return distinctUntilKeyChanged_1.distinctUntilKeyChanged;
    } });
    var elementAt_1 = require_elementAt();
    Object.defineProperty(exports2, "elementAt", { enumerable: true, get: function() {
      return elementAt_1.elementAt;
    } });
    var endWith_1 = require_endWith();
    Object.defineProperty(exports2, "endWith", { enumerable: true, get: function() {
      return endWith_1.endWith;
    } });
    var every_1 = require_every2();
    Object.defineProperty(exports2, "every", { enumerable: true, get: function() {
      return every_1.every;
    } });
    var exhaust_1 = require_exhaust();
    Object.defineProperty(exports2, "exhaust", { enumerable: true, get: function() {
      return exhaust_1.exhaust;
    } });
    var exhaustAll_1 = require_exhaustAll();
    Object.defineProperty(exports2, "exhaustAll", { enumerable: true, get: function() {
      return exhaustAll_1.exhaustAll;
    } });
    var exhaustMap_1 = require_exhaustMap();
    Object.defineProperty(exports2, "exhaustMap", { enumerable: true, get: function() {
      return exhaustMap_1.exhaustMap;
    } });
    var expand_1 = require_expand2();
    Object.defineProperty(exports2, "expand", { enumerable: true, get: function() {
      return expand_1.expand;
    } });
    var filter_1 = require_filter3();
    Object.defineProperty(exports2, "filter", { enumerable: true, get: function() {
      return filter_1.filter;
    } });
    var finalize_1 = require_finalize();
    Object.defineProperty(exports2, "finalize", { enumerable: true, get: function() {
      return finalize_1.finalize;
    } });
    var find_1 = require_find3();
    Object.defineProperty(exports2, "find", { enumerable: true, get: function() {
      return find_1.find;
    } });
    var findIndex_1 = require_findIndex2();
    Object.defineProperty(exports2, "findIndex", { enumerable: true, get: function() {
      return findIndex_1.findIndex;
    } });
    var first_1 = require_first();
    Object.defineProperty(exports2, "first", { enumerable: true, get: function() {
      return first_1.first;
    } });
    var groupBy_1 = require_groupBy3();
    Object.defineProperty(exports2, "groupBy", { enumerable: true, get: function() {
      return groupBy_1.groupBy;
    } });
    var ignoreElements_1 = require_ignoreElements();
    Object.defineProperty(exports2, "ignoreElements", { enumerable: true, get: function() {
      return ignoreElements_1.ignoreElements;
    } });
    var isEmpty_1 = require_isEmpty2();
    Object.defineProperty(exports2, "isEmpty", { enumerable: true, get: function() {
      return isEmpty_1.isEmpty;
    } });
    var last_1 = require_last3();
    Object.defineProperty(exports2, "last", { enumerable: true, get: function() {
      return last_1.last;
    } });
    var map_1 = require_map4();
    Object.defineProperty(exports2, "map", { enumerable: true, get: function() {
      return map_1.map;
    } });
    var mapTo_1 = require_mapTo();
    Object.defineProperty(exports2, "mapTo", { enumerable: true, get: function() {
      return mapTo_1.mapTo;
    } });
    var materialize_1 = require_materialize();
    Object.defineProperty(exports2, "materialize", { enumerable: true, get: function() {
      return materialize_1.materialize;
    } });
    var max_1 = require_max3();
    Object.defineProperty(exports2, "max", { enumerable: true, get: function() {
      return max_1.max;
    } });
    var mergeAll_1 = require_mergeAll();
    Object.defineProperty(exports2, "mergeAll", { enumerable: true, get: function() {
      return mergeAll_1.mergeAll;
    } });
    var flatMap_1 = require_flatMap2();
    Object.defineProperty(exports2, "flatMap", { enumerable: true, get: function() {
      return flatMap_1.flatMap;
    } });
    var mergeMap_1 = require_mergeMap();
    Object.defineProperty(exports2, "mergeMap", { enumerable: true, get: function() {
      return mergeMap_1.mergeMap;
    } });
    var mergeMapTo_1 = require_mergeMapTo();
    Object.defineProperty(exports2, "mergeMapTo", { enumerable: true, get: function() {
      return mergeMapTo_1.mergeMapTo;
    } });
    var mergeScan_1 = require_mergeScan();
    Object.defineProperty(exports2, "mergeScan", { enumerable: true, get: function() {
      return mergeScan_1.mergeScan;
    } });
    var mergeWith_1 = require_mergeWith2();
    Object.defineProperty(exports2, "mergeWith", { enumerable: true, get: function() {
      return mergeWith_1.mergeWith;
    } });
    var min_1 = require_min3();
    Object.defineProperty(exports2, "min", { enumerable: true, get: function() {
      return min_1.min;
    } });
    var multicast_1 = require_multicast();
    Object.defineProperty(exports2, "multicast", { enumerable: true, get: function() {
      return multicast_1.multicast;
    } });
    var observeOn_1 = require_observeOn();
    Object.defineProperty(exports2, "observeOn", { enumerable: true, get: function() {
      return observeOn_1.observeOn;
    } });
    var onErrorResumeNextWith_1 = require_onErrorResumeNextWith();
    Object.defineProperty(exports2, "onErrorResumeNextWith", { enumerable: true, get: function() {
      return onErrorResumeNextWith_1.onErrorResumeNextWith;
    } });
    var pairwise_1 = require_pairwise();
    Object.defineProperty(exports2, "pairwise", { enumerable: true, get: function() {
      return pairwise_1.pairwise;
    } });
    var pluck_1 = require_pluck();
    Object.defineProperty(exports2, "pluck", { enumerable: true, get: function() {
      return pluck_1.pluck;
    } });
    var publish_1 = require_publish2();
    Object.defineProperty(exports2, "publish", { enumerable: true, get: function() {
      return publish_1.publish;
    } });
    var publishBehavior_1 = require_publishBehavior();
    Object.defineProperty(exports2, "publishBehavior", { enumerable: true, get: function() {
      return publishBehavior_1.publishBehavior;
    } });
    var publishLast_1 = require_publishLast();
    Object.defineProperty(exports2, "publishLast", { enumerable: true, get: function() {
      return publishLast_1.publishLast;
    } });
    var publishReplay_1 = require_publishReplay();
    Object.defineProperty(exports2, "publishReplay", { enumerable: true, get: function() {
      return publishReplay_1.publishReplay;
    } });
    var raceWith_1 = require_raceWith();
    Object.defineProperty(exports2, "raceWith", { enumerable: true, get: function() {
      return raceWith_1.raceWith;
    } });
    var reduce_1 = require_reduce2();
    Object.defineProperty(exports2, "reduce", { enumerable: true, get: function() {
      return reduce_1.reduce;
    } });
    var repeat_12 = require_repeat2();
    Object.defineProperty(exports2, "repeat", { enumerable: true, get: function() {
      return repeat_12.repeat;
    } });
    var repeatWhen_1 = require_repeatWhen();
    Object.defineProperty(exports2, "repeatWhen", { enumerable: true, get: function() {
      return repeatWhen_1.repeatWhen;
    } });
    var retry_1 = require_retry6();
    Object.defineProperty(exports2, "retry", { enumerable: true, get: function() {
      return retry_1.retry;
    } });
    var retryWhen_1 = require_retryWhen();
    Object.defineProperty(exports2, "retryWhen", { enumerable: true, get: function() {
      return retryWhen_1.retryWhen;
    } });
    var refCount_1 = require_refCount();
    Object.defineProperty(exports2, "refCount", { enumerable: true, get: function() {
      return refCount_1.refCount;
    } });
    var sample_1 = require_sample3();
    Object.defineProperty(exports2, "sample", { enumerable: true, get: function() {
      return sample_1.sample;
    } });
    var sampleTime_1 = require_sampleTime();
    Object.defineProperty(exports2, "sampleTime", { enumerable: true, get: function() {
      return sampleTime_1.sampleTime;
    } });
    var scan_1 = require_scan5();
    Object.defineProperty(exports2, "scan", { enumerable: true, get: function() {
      return scan_1.scan;
    } });
    var sequenceEqual_1 = require_sequenceEqual();
    Object.defineProperty(exports2, "sequenceEqual", { enumerable: true, get: function() {
      return sequenceEqual_1.sequenceEqual;
    } });
    var share_1 = require_share();
    Object.defineProperty(exports2, "share", { enumerable: true, get: function() {
      return share_1.share;
    } });
    var shareReplay_1 = require_shareReplay();
    Object.defineProperty(exports2, "shareReplay", { enumerable: true, get: function() {
      return shareReplay_1.shareReplay;
    } });
    var single_1 = require_single();
    Object.defineProperty(exports2, "single", { enumerable: true, get: function() {
      return single_1.single;
    } });
    var skip_1 = require_skip();
    Object.defineProperty(exports2, "skip", { enumerable: true, get: function() {
      return skip_1.skip;
    } });
    var skipLast_1 = require_skipLast();
    Object.defineProperty(exports2, "skipLast", { enumerable: true, get: function() {
      return skipLast_1.skipLast;
    } });
    var skipUntil_1 = require_skipUntil();
    Object.defineProperty(exports2, "skipUntil", { enumerable: true, get: function() {
      return skipUntil_1.skipUntil;
    } });
    var skipWhile_1 = require_skipWhile();
    Object.defineProperty(exports2, "skipWhile", { enumerable: true, get: function() {
      return skipWhile_1.skipWhile;
    } });
    var startWith_1 = require_startWith();
    Object.defineProperty(exports2, "startWith", { enumerable: true, get: function() {
      return startWith_1.startWith;
    } });
    var subscribeOn_1 = require_subscribeOn();
    Object.defineProperty(exports2, "subscribeOn", { enumerable: true, get: function() {
      return subscribeOn_1.subscribeOn;
    } });
    var switchAll_1 = require_switchAll();
    Object.defineProperty(exports2, "switchAll", { enumerable: true, get: function() {
      return switchAll_1.switchAll;
    } });
    var switchMap_1 = require_switchMap();
    Object.defineProperty(exports2, "switchMap", { enumerable: true, get: function() {
      return switchMap_1.switchMap;
    } });
    var switchMapTo_1 = require_switchMapTo();
    Object.defineProperty(exports2, "switchMapTo", { enumerable: true, get: function() {
      return switchMapTo_1.switchMapTo;
    } });
    var switchScan_1 = require_switchScan();
    Object.defineProperty(exports2, "switchScan", { enumerable: true, get: function() {
      return switchScan_1.switchScan;
    } });
    var take_1 = require_take3();
    Object.defineProperty(exports2, "take", { enumerable: true, get: function() {
      return take_1.take;
    } });
    var takeLast_1 = require_takeLast();
    Object.defineProperty(exports2, "takeLast", { enumerable: true, get: function() {
      return takeLast_1.takeLast;
    } });
    var takeUntil_1 = require_takeUntil();
    Object.defineProperty(exports2, "takeUntil", { enumerable: true, get: function() {
      return takeUntil_1.takeUntil;
    } });
    var takeWhile_1 = require_takeWhile2();
    Object.defineProperty(exports2, "takeWhile", { enumerable: true, get: function() {
      return takeWhile_1.takeWhile;
    } });
    var tap_1 = require_tap();
    Object.defineProperty(exports2, "tap", { enumerable: true, get: function() {
      return tap_1.tap;
    } });
    var throttle_1 = require_throttle2();
    Object.defineProperty(exports2, "throttle", { enumerable: true, get: function() {
      return throttle_1.throttle;
    } });
    var throttleTime_1 = require_throttleTime();
    Object.defineProperty(exports2, "throttleTime", { enumerable: true, get: function() {
      return throttleTime_1.throttleTime;
    } });
    var throwIfEmpty_1 = require_throwIfEmpty();
    Object.defineProperty(exports2, "throwIfEmpty", { enumerable: true, get: function() {
      return throwIfEmpty_1.throwIfEmpty;
    } });
    var timeInterval_1 = require_timeInterval();
    Object.defineProperty(exports2, "timeInterval", { enumerable: true, get: function() {
      return timeInterval_1.timeInterval;
    } });
    var timeout_2 = require_timeout();
    Object.defineProperty(exports2, "timeout", { enumerable: true, get: function() {
      return timeout_2.timeout;
    } });
    var timeoutWith_1 = require_timeoutWith();
    Object.defineProperty(exports2, "timeoutWith", { enumerable: true, get: function() {
      return timeoutWith_1.timeoutWith;
    } });
    var timestamp_1 = require_timestamp7();
    Object.defineProperty(exports2, "timestamp", { enumerable: true, get: function() {
      return timestamp_1.timestamp;
    } });
    var toArray_12 = require_toArray3();
    Object.defineProperty(exports2, "toArray", { enumerable: true, get: function() {
      return toArray_12.toArray;
    } });
    var window_1 = require_window();
    Object.defineProperty(exports2, "window", { enumerable: true, get: function() {
      return window_1.window;
    } });
    var windowCount_1 = require_windowCount();
    Object.defineProperty(exports2, "windowCount", { enumerable: true, get: function() {
      return windowCount_1.windowCount;
    } });
    var windowTime_1 = require_windowTime();
    Object.defineProperty(exports2, "windowTime", { enumerable: true, get: function() {
      return windowTime_1.windowTime;
    } });
    var windowToggle_1 = require_windowToggle();
    Object.defineProperty(exports2, "windowToggle", { enumerable: true, get: function() {
      return windowToggle_1.windowToggle;
    } });
    var windowWhen_1 = require_windowWhen();
    Object.defineProperty(exports2, "windowWhen", { enumerable: true, get: function() {
      return windowWhen_1.windowWhen;
    } });
    var withLatestFrom_1 = require_withLatestFrom();
    Object.defineProperty(exports2, "withLatestFrom", { enumerable: true, get: function() {
      return withLatestFrom_1.withLatestFrom;
    } });
    var zipAll_1 = require_zipAll();
    Object.defineProperty(exports2, "zipAll", { enumerable: true, get: function() {
      return zipAll_1.zipAll;
    } });
    var zipWith_1 = require_zipWith2();
    Object.defineProperty(exports2, "zipWith", { enumerable: true, get: function() {
      return zipWith_1.zipWith;
    } });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/partition.js
var require_partition3 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/partition.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.partition = void 0;
    var not_1 = require_not();
    var filter_1 = require_filter3();
    function partition3(predicate, thisArg) {
      return function(source) {
        return [filter_1.filter(predicate, thisArg)(source), filter_1.filter(not_1.not(predicate, thisArg))(source)];
      };
    }
    exports2.partition = partition3;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/race.js
var require_race2 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/internal/operators/race.js"(exports2) {
    "use strict";
    var __read2 = exports2 && exports2.__read || function(o2, n2) {
      var m = typeof Symbol === "function" && o2[Symbol.iterator];
      if (!m) return o2;
      var i2 = m.call(o2), r, ar = [], e;
      try {
        while ((n2 === void 0 || n2-- > 0) && !(r = i2.next()).done) ar.push(r.value);
      } catch (error) {
        e = { error };
      } finally {
        try {
          if (r && !r.done && (m = i2["return"])) m.call(i2);
        } finally {
          if (e) throw e.error;
        }
      }
      return ar;
    };
    var __spreadArray2 = exports2 && exports2.__spreadArray || function(to, from5) {
      for (var i2 = 0, il = from5.length, j2 = to.length; i2 < il; i2++, j2++)
        to[j2] = from5[i2];
      return to;
    };
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.race = void 0;
    var argsOrArgArray_1 = require_argsOrArgArray();
    var raceWith_1 = require_raceWith();
    function race() {
      var args = [];
      for (var _i = 0; _i < arguments.length; _i++) {
        args[_i] = arguments[_i];
      }
      return raceWith_1.raceWith.apply(void 0, __spreadArray2([], __read2(argsOrArgArray_1.argsOrArgArray(args))));
    }
    exports2.race = race;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/operators/index.js
var require_operators = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/rxjs/7.8.2/85d84653cd950181eea7f8acb3390c19e94836036fd351dfb9131353b937d813/node_modules/rxjs/dist/cjs/operators/index.js"(exports2) {
    "use strict";
    Object.defineProperty(exports2, "__esModule", { value: true });
    exports2.mergeAll = exports2.merge = exports2.max = exports2.materialize = exports2.mapTo = exports2.map = exports2.last = exports2.isEmpty = exports2.ignoreElements = exports2.groupBy = exports2.first = exports2.findIndex = exports2.find = exports2.finalize = exports2.filter = exports2.expand = exports2.exhaustMap = exports2.exhaustAll = exports2.exhaust = exports2.every = exports2.endWith = exports2.elementAt = exports2.distinctUntilKeyChanged = exports2.distinctUntilChanged = exports2.distinct = exports2.dematerialize = exports2.delayWhen = exports2.delay = exports2.defaultIfEmpty = exports2.debounceTime = exports2.debounce = exports2.count = exports2.connect = exports2.concatWith = exports2.concatMapTo = exports2.concatMap = exports2.concatAll = exports2.concat = exports2.combineLatestWith = exports2.combineLatest = exports2.combineLatestAll = exports2.combineAll = exports2.catchError = exports2.bufferWhen = exports2.bufferToggle = exports2.bufferTime = exports2.bufferCount = exports2.buffer = exports2.auditTime = exports2.audit = void 0;
    exports2.timeInterval = exports2.throwIfEmpty = exports2.throttleTime = exports2.throttle = exports2.tap = exports2.takeWhile = exports2.takeUntil = exports2.takeLast = exports2.take = exports2.switchScan = exports2.switchMapTo = exports2.switchMap = exports2.switchAll = exports2.subscribeOn = exports2.startWith = exports2.skipWhile = exports2.skipUntil = exports2.skipLast = exports2.skip = exports2.single = exports2.shareReplay = exports2.share = exports2.sequenceEqual = exports2.scan = exports2.sampleTime = exports2.sample = exports2.refCount = exports2.retryWhen = exports2.retry = exports2.repeatWhen = exports2.repeat = exports2.reduce = exports2.raceWith = exports2.race = exports2.publishReplay = exports2.publishLast = exports2.publishBehavior = exports2.publish = exports2.pluck = exports2.partition = exports2.pairwise = exports2.onErrorResumeNext = exports2.observeOn = exports2.multicast = exports2.min = exports2.mergeWith = exports2.mergeScan = exports2.mergeMapTo = exports2.mergeMap = exports2.flatMap = void 0;
    exports2.zipWith = exports2.zipAll = exports2.zip = exports2.withLatestFrom = exports2.windowWhen = exports2.windowToggle = exports2.windowTime = exports2.windowCount = exports2.window = exports2.toArray = exports2.timestamp = exports2.timeoutWith = exports2.timeout = void 0;
    var audit_1 = require_audit();
    Object.defineProperty(exports2, "audit", { enumerable: true, get: function() {
      return audit_1.audit;
    } });
    var auditTime_1 = require_auditTime();
    Object.defineProperty(exports2, "auditTime", { enumerable: true, get: function() {
      return auditTime_1.auditTime;
    } });
    var buffer_1 = require_buffer();
    Object.defineProperty(exports2, "buffer", { enumerable: true, get: function() {
      return buffer_1.buffer;
    } });
    var bufferCount_1 = require_bufferCount();
    Object.defineProperty(exports2, "bufferCount", { enumerable: true, get: function() {
      return bufferCount_1.bufferCount;
    } });
    var bufferTime_1 = require_bufferTime();
    Object.defineProperty(exports2, "bufferTime", { enumerable: true, get: function() {
      return bufferTime_1.bufferTime;
    } });
    var bufferToggle_1 = require_bufferToggle();
    Object.defineProperty(exports2, "bufferToggle", { enumerable: true, get: function() {
      return bufferToggle_1.bufferToggle;
    } });
    var bufferWhen_1 = require_bufferWhen();
    Object.defineProperty(exports2, "bufferWhen", { enumerable: true, get: function() {
      return bufferWhen_1.bufferWhen;
    } });
    var catchError_1 = require_catchError();
    Object.defineProperty(exports2, "catchError", { enumerable: true, get: function() {
      return catchError_1.catchError;
    } });
    var combineAll_1 = require_combineAll();
    Object.defineProperty(exports2, "combineAll", { enumerable: true, get: function() {
      return combineAll_1.combineAll;
    } });
    var combineLatestAll_1 = require_combineLatestAll();
    Object.defineProperty(exports2, "combineLatestAll", { enumerable: true, get: function() {
      return combineLatestAll_1.combineLatestAll;
    } });
    var combineLatest_1 = require_combineLatest2();
    Object.defineProperty(exports2, "combineLatest", { enumerable: true, get: function() {
      return combineLatest_1.combineLatest;
    } });
    var combineLatestWith_1 = require_combineLatestWith();
    Object.defineProperty(exports2, "combineLatestWith", { enumerable: true, get: function() {
      return combineLatestWith_1.combineLatestWith;
    } });
    var concat_1 = require_concat3();
    Object.defineProperty(exports2, "concat", { enumerable: true, get: function() {
      return concat_1.concat;
    } });
    var concatAll_1 = require_concatAll();
    Object.defineProperty(exports2, "concatAll", { enumerable: true, get: function() {
      return concatAll_1.concatAll;
    } });
    var concatMap_1 = require_concatMap();
    Object.defineProperty(exports2, "concatMap", { enumerable: true, get: function() {
      return concatMap_1.concatMap;
    } });
    var concatMapTo_1 = require_concatMapTo();
    Object.defineProperty(exports2, "concatMapTo", { enumerable: true, get: function() {
      return concatMapTo_1.concatMapTo;
    } });
    var concatWith_1 = require_concatWith();
    Object.defineProperty(exports2, "concatWith", { enumerable: true, get: function() {
      return concatWith_1.concatWith;
    } });
    var connect_1 = require_connect2();
    Object.defineProperty(exports2, "connect", { enumerable: true, get: function() {
      return connect_1.connect;
    } });
    var count_1 = require_count();
    Object.defineProperty(exports2, "count", { enumerable: true, get: function() {
      return count_1.count;
    } });
    var debounce_1 = require_debounce3();
    Object.defineProperty(exports2, "debounce", { enumerable: true, get: function() {
      return debounce_1.debounce;
    } });
    var debounceTime_1 = require_debounceTime();
    Object.defineProperty(exports2, "debounceTime", { enumerable: true, get: function() {
      return debounceTime_1.debounceTime;
    } });
    var defaultIfEmpty_1 = require_defaultIfEmpty();
    Object.defineProperty(exports2, "defaultIfEmpty", { enumerable: true, get: function() {
      return defaultIfEmpty_1.defaultIfEmpty;
    } });
    var delay_1 = require_delay2();
    Object.defineProperty(exports2, "delay", { enumerable: true, get: function() {
      return delay_1.delay;
    } });
    var delayWhen_1 = require_delayWhen();
    Object.defineProperty(exports2, "delayWhen", { enumerable: true, get: function() {
      return delayWhen_1.delayWhen;
    } });
    var dematerialize_1 = require_dematerialize();
    Object.defineProperty(exports2, "dematerialize", { enumerable: true, get: function() {
      return dematerialize_1.dematerialize;
    } });
    var distinct_1 = require_distinct();
    Object.defineProperty(exports2, "distinct", { enumerable: true, get: function() {
      return distinct_1.distinct;
    } });
    var distinctUntilChanged_1 = require_distinctUntilChanged();
    Object.defineProperty(exports2, "distinctUntilChanged", { enumerable: true, get: function() {
      return distinctUntilChanged_1.distinctUntilChanged;
    } });
    var distinctUntilKeyChanged_1 = require_distinctUntilKeyChanged();
    Object.defineProperty(exports2, "distinctUntilKeyChanged", { enumerable: true, get: function() {
      return distinctUntilKeyChanged_1.distinctUntilKeyChanged;
    } });
    var elementAt_1 = require_elementAt();
    Object.defineProperty(exports2, "elementAt", { enumerable: true, get: function() {
      return elementAt_1.elementAt;
    } });
    var endWith_1 = require_endWith();
    Object.defineProperty(exports2, "endWith", { enumerable: true, get: function() {
      return endWith_1.endWith;
    } });
    var every_1 = require_every2();
    Object.defineProperty(exports2, "every", { enumerable: true, get: function() {
      return every_1.every;
    } });
    var exhaust_1 = require_exhaust();
    Object.defineProperty(exports2, "exhaust", { enumerable: true, get: function() {
      return exhaust_1.exhaust;
    } });
    var exhaustAll_1 = require_exhaustAll();
    Object.defineProperty(exports2, "exhaustAll", { enumerable: true, get: function() {
      return exhaustAll_1.exhaustAll;
    } });
    var exhaustMap_1 = require_exhaustMap();
    Object.defineProperty(exports2, "exhaustMap", { enumerable: true, get: function() {
      return exhaustMap_1.exhaustMap;
    } });
    var expand_1 = require_expand2();
    Object.defineProperty(exports2, "expand", { enumerable: true, get: function() {
      return expand_1.expand;
    } });
    var filter_1 = require_filter3();
    Object.defineProperty(exports2, "filter", { enumerable: true, get: function() {
      return filter_1.filter;
    } });
    var finalize_1 = require_finalize();
    Object.defineProperty(exports2, "finalize", { enumerable: true, get: function() {
      return finalize_1.finalize;
    } });
    var find_1 = require_find3();
    Object.defineProperty(exports2, "find", { enumerable: true, get: function() {
      return find_1.find;
    } });
    var findIndex_1 = require_findIndex2();
    Object.defineProperty(exports2, "findIndex", { enumerable: true, get: function() {
      return findIndex_1.findIndex;
    } });
    var first_1 = require_first();
    Object.defineProperty(exports2, "first", { enumerable: true, get: function() {
      return first_1.first;
    } });
    var groupBy_1 = require_groupBy3();
    Object.defineProperty(exports2, "groupBy", { enumerable: true, get: function() {
      return groupBy_1.groupBy;
    } });
    var ignoreElements_1 = require_ignoreElements();
    Object.defineProperty(exports2, "ignoreElements", { enumerable: true, get: function() {
      return ignoreElements_1.ignoreElements;
    } });
    var isEmpty_1 = require_isEmpty2();
    Object.defineProperty(exports2, "isEmpty", { enumerable: true, get: function() {
      return isEmpty_1.isEmpty;
    } });
    var last_1 = require_last3();
    Object.defineProperty(exports2, "last", { enumerable: true, get: function() {
      return last_1.last;
    } });
    var map_1 = require_map4();
    Object.defineProperty(exports2, "map", { enumerable: true, get: function() {
      return map_1.map;
    } });
    var mapTo_1 = require_mapTo();
    Object.defineProperty(exports2, "mapTo", { enumerable: true, get: function() {
      return mapTo_1.mapTo;
    } });
    var materialize_1 = require_materialize();
    Object.defineProperty(exports2, "materialize", { enumerable: true, get: function() {
      return materialize_1.materialize;
    } });
    var max_1 = require_max3();
    Object.defineProperty(exports2, "max", { enumerable: true, get: function() {
      return max_1.max;
    } });
    var merge_1 = require_merge6();
    Object.defineProperty(exports2, "merge", { enumerable: true, get: function() {
      return merge_1.merge;
    } });
    var mergeAll_1 = require_mergeAll();
    Object.defineProperty(exports2, "mergeAll", { enumerable: true, get: function() {
      return mergeAll_1.mergeAll;
    } });
    var flatMap_1 = require_flatMap2();
    Object.defineProperty(exports2, "flatMap", { enumerable: true, get: function() {
      return flatMap_1.flatMap;
    } });
    var mergeMap_1 = require_mergeMap();
    Object.defineProperty(exports2, "mergeMap", { enumerable: true, get: function() {
      return mergeMap_1.mergeMap;
    } });
    var mergeMapTo_1 = require_mergeMapTo();
    Object.defineProperty(exports2, "mergeMapTo", { enumerable: true, get: function() {
      return mergeMapTo_1.mergeMapTo;
    } });
    var mergeScan_1 = require_mergeScan();
    Object.defineProperty(exports2, "mergeScan", { enumerable: true, get: function() {
      return mergeScan_1.mergeScan;
    } });
    var mergeWith_1 = require_mergeWith2();
    Object.defineProperty(exports2, "mergeWith", { enumerable: true, get: function() {
      return mergeWith_1.mergeWith;
    } });
    var min_1 = require_min3();
    Object.defineProperty(exports2, "min", { enumerable: true, get: function() {
      return min_1.min;
    } });
    var multicast_1 = require_multicast();
    Object.defineProperty(exports2, "multicast", { enumerable: true, get: function() {
      return multicast_1.multicast;
    } });
    var observeOn_1 = require_observeOn();
    Object.defineProperty(exports2, "observeOn", { enumerable: true, get: function() {
      return observeOn_1.observeOn;
    } });
    var onErrorResumeNextWith_1 = require_onErrorResumeNextWith();
    Object.defineProperty(exports2, "onErrorResumeNext", { enumerable: true, get: function() {
      return onErrorResumeNextWith_1.onErrorResumeNext;
    } });
    var pairwise_1 = require_pairwise();
    Object.defineProperty(exports2, "pairwise", { enumerable: true, get: function() {
      return pairwise_1.pairwise;
    } });
    var partition_1 = require_partition3();
    Object.defineProperty(exports2, "partition", { enumerable: true, get: function() {
      return partition_1.partition;
    } });
    var pluck_1 = require_pluck();
    Object.defineProperty(exports2, "pluck", { enumerable: true, get: function() {
      return pluck_1.pluck;
    } });
    var publish_1 = require_publish2();
    Object.defineProperty(exports2, "publish", { enumerable: true, get: function() {
      return publish_1.publish;
    } });
    var publishBehavior_1 = require_publishBehavior();
    Object.defineProperty(exports2, "publishBehavior", { enumerable: true, get: function() {
      return publishBehavior_1.publishBehavior;
    } });
    var publishLast_1 = require_publishLast();
    Object.defineProperty(exports2, "publishLast", { enumerable: true, get: function() {
      return publishLast_1.publishLast;
    } });
    var publishReplay_1 = require_publishReplay();
    Object.defineProperty(exports2, "publishReplay", { enumerable: true, get: function() {
      return publishReplay_1.publishReplay;
    } });
    var race_1 = require_race2();
    Object.defineProperty(exports2, "race", { enumerable: true, get: function() {
      return race_1.race;
    } });
    var raceWith_1 = require_raceWith();
    Object.defineProperty(exports2, "raceWith", { enumerable: true, get: function() {
      return raceWith_1.raceWith;
    } });
    var reduce_1 = require_reduce2();
    Object.defineProperty(exports2, "reduce", { enumerable: true, get: function() {
      return reduce_1.reduce;
    } });
    var repeat_12 = require_repeat2();
    Object.defineProperty(exports2, "repeat", { enumerable: true, get: function() {
      return repeat_12.repeat;
    } });
    var repeatWhen_1 = require_repeatWhen();
    Object.defineProperty(exports2, "repeatWhen", { enumerable: true, get: function() {
      return repeatWhen_1.repeatWhen;
    } });
    var retry_1 = require_retry6();
    Object.defineProperty(exports2, "retry", { enumerable: true, get: function() {
      return retry_1.retry;
    } });
    var retryWhen_1 = require_retryWhen();
    Object.defineProperty(exports2, "retryWhen", { enumerable: true, get: function() {
      return retryWhen_1.retryWhen;
    } });
    var refCount_1 = require_refCount();
    Object.defineProperty(exports2, "refCount", { enumerable: true, get: function() {
      return refCount_1.refCount;
    } });
    var sample_1 = require_sample3();
    Object.defineProperty(exports2, "sample", { enumerable: true, get: function() {
      return sample_1.sample;
    } });
    var sampleTime_1 = require_sampleTime();
    Object.defineProperty(exports2, "sampleTime", { enumerable: true, get: function() {
      return sampleTime_1.sampleTime;
    } });
    var scan_1 = require_scan5();
    Object.defineProperty(exports2, "scan", { enumerable: true, get: function() {
      return scan_1.scan;
    } });
    var sequenceEqual_1 = require_sequenceEqual();
    Object.defineProperty(exports2, "sequenceEqual", { enumerable: true, get: function() {
      return sequenceEqual_1.sequenceEqual;
    } });
    var share_1 = require_share();
    Object.defineProperty(exports2, "share", { enumerable: true, get: function() {
      return share_1.share;
    } });
    var shareReplay_1 = require_shareReplay();
    Object.defineProperty(exports2, "shareReplay", { enumerable: true, get: function() {
      return shareReplay_1.shareReplay;
    } });
    var single_1 = require_single();
    Object.defineProperty(exports2, "single", { enumerable: true, get: function() {
      return single_1.single;
    } });
    var skip_1 = require_skip();
    Object.defineProperty(exports2, "skip", { enumerable: true, get: function() {
      return skip_1.skip;
    } });
    var skipLast_1 = require_skipLast();
    Object.defineProperty(exports2, "skipLast", { enumerable: true, get: function() {
      return skipLast_1.skipLast;
    } });
    var skipUntil_1 = require_skipUntil();
    Object.defineProperty(exports2, "skipUntil", { enumerable: true, get: function() {
      return skipUntil_1.skipUntil;
    } });
    var skipWhile_1 = require_skipWhile();
    Object.defineProperty(exports2, "skipWhile", { enumerable: true, get: function() {
      return skipWhile_1.skipWhile;
    } });
    var startWith_1 = require_startWith();
    Object.defineProperty(exports2, "startWith", { enumerable: true, get: function() {
      return startWith_1.startWith;
    } });
    var subscribeOn_1 = require_subscribeOn();
    Object.defineProperty(exports2, "subscribeOn", { enumerable: true, get: function() {
      return subscribeOn_1.subscribeOn;
    } });
    var switchAll_1 = require_switchAll();
    Object.defineProperty(exports2, "switchAll", { enumerable: true, get: function() {
      return switchAll_1.switchAll;
    } });
    var switchMap_1 = require_switchMap();
    Object.defineProperty(exports2, "switchMap", { enumerable: true, get: function() {
      return switchMap_1.switchMap;
    } });
    var switchMapTo_1 = require_switchMapTo();
    Object.defineProperty(exports2, "switchMapTo", { enumerable: true, get: function() {
      return switchMapTo_1.switchMapTo;
    } });
    var switchScan_1 = require_switchScan();
    Object.defineProperty(exports2, "switchScan", { enumerable: true, get: function() {
      return switchScan_1.switchScan;
    } });
    var take_1 = require_take3();
    Object.defineProperty(exports2, "take", { enumerable: true, get: function() {
      return take_1.take;
    } });
    var takeLast_1 = require_takeLast();
    Object.defineProperty(exports2, "takeLast", { enumerable: true, get: function() {
      return takeLast_1.takeLast;
    } });
    var takeUntil_1 = require_takeUntil();
    Object.defineProperty(exports2, "takeUntil", { enumerable: true, get: function() {
      return takeUntil_1.takeUntil;
    } });
    var takeWhile_1 = require_takeWhile2();
    Object.defineProperty(exports2, "takeWhile", { enumerable: true, get: function() {
      return takeWhile_1.takeWhile;
    } });
    var tap_1 = require_tap();
    Object.defineProperty(exports2, "tap", { enumerable: true, get: function() {
      return tap_1.tap;
    } });
    var throttle_1 = require_throttle2();
    Object.defineProperty(exports2, "throttle", { enumerable: true, get: function() {
      return throttle_1.throttle;
    } });
    var throttleTime_1 = require_throttleTime();
    Object.defineProperty(exports2, "throttleTime", { enumerable: true, get: function() {
      return throttleTime_1.throttleTime;
    } });
    var throwIfEmpty_1 = require_throwIfEmpty();
    Object.defineProperty(exports2, "throwIfEmpty", { enumerable: true, get: function() {
      return throwIfEmpty_1.throwIfEmpty;
    } });
    var timeInterval_1 = require_timeInterval();
    Object.defineProperty(exports2, "timeInterval", { enumerable: true, get: function() {
      return timeInterval_1.timeInterval;
    } });
    var timeout_1 = require_timeout();
    Object.defineProperty(exports2, "timeout", { enumerable: true, get: function() {
      return timeout_1.timeout;
    } });
    var timeoutWith_1 = require_timeoutWith();
    Object.defineProperty(exports2, "timeoutWith", { enumerable: true, get: function() {
      return timeoutWith_1.timeoutWith;
    } });
    var timestamp_1 = require_timestamp7();
    Object.defineProperty(exports2, "timestamp", { enumerable: true, get: function() {
      return timestamp_1.timestamp;
    } });
    var toArray_12 = require_toArray3();
    Object.defineProperty(exports2, "toArray", { enumerable: true, get: function() {
      return toArray_12.toArray;
    } });
    var window_1 = require_window();
    Object.defineProperty(exports2, "window", { enumerable: true, get: function() {
      return window_1.window;
    } });
    var windowCount_1 = require_windowCount();
    Object.defineProperty(exports2, "windowCount", { enumerable: true, get: function() {
      return windowCount_1.windowCount;
    } });
    var windowTime_1 = require_windowTime();
    Object.defineProperty(exports2, "windowTime", { enumerable: true, get: function() {
      return windowTime_1.windowTime;
    } });
    var windowToggle_1 = require_windowToggle();
    Object.defineProperty(exports2, "windowToggle", { enumerable: true, get: function() {
      return windowToggle_1.windowToggle;
    } });
    var windowWhen_1 = require_windowWhen();
    Object.defineProperty(exports2, "windowWhen", { enumerable: true, get: function() {
      return windowWhen_1.windowWhen;
    } });
    var withLatestFrom_1 = require_withLatestFrom();
    Object.defineProperty(exports2, "withLatestFrom", { enumerable: true, get: function() {
      return withLatestFrom_1.withLatestFrom;
    } });
    var zip_1 = require_zip4();
    Object.defineProperty(exports2, "zip", { enumerable: true, get: function() {
      return zip_1.zip;
    } });
    var zipAll_1 = require_zipAll();
    Object.defineProperty(exports2, "zipAll", { enumerable: true, get: function() {
      return zipAll_1.zipAll;
    } });
    var zipWith_1 = require_zipWith2();
    Object.defineProperty(exports2, "zipWith", { enumerable: true, get: function() {
      return zipWith_1.zipWith;
    } });
  }
});

// ../cli/default-reporter/lib/constants.js
var EOL;
var init_constants = __esm({
  "../cli/default-reporter/lib/constants.js"() {
    "use strict";
    EOL = "\n";
  }
});

// ../cli/default-reporter/lib/mergeOutputs.js
function mergeOutputs(outputs) {
  let blockNo = 0;
  let fixedBlockNo = 0;
  let started = false;
  let previousOutput = null;
  return Rx.merge(...outputs).pipe((0, import_operators.map)((log3) => {
    let currentBlockNo = -1;
    let currentFixedBlockNo = -1;
    return log3.pipe((0, import_operators.map)((msg) => {
      if (msg.fixed) {
        if (currentFixedBlockNo === -1) {
          currentFixedBlockNo = fixedBlockNo++;
        }
        return {
          blockNo: currentFixedBlockNo,
          fixed: true,
          msg: msg.msg
        };
      }
      if (currentBlockNo === -1) {
        currentBlockNo = blockNo++;
      }
      return {
        blockNo: currentBlockNo,
        fixed: false,
        msg: typeof msg === "string" ? msg : msg.msg,
        // eslint-disable-line
        prevFixedBlockNo: currentFixedBlockNo
      };
    }));
  }), (0, import_operators.mergeAll)(), (0, import_operators.scan)((acc, log3) => {
    if (log3.fixed) {
      acc.fixedBlocks[log3.blockNo] = log3.msg;
    } else {
      delete acc.fixedBlocks[log3.prevFixedBlockNo];
      acc.blocks[log3.blockNo] = log3.msg;
    }
    return acc;
  }, { fixedBlocks: [], blocks: [] }), (0, import_operators.map)((sections) => {
    const fixedBlocks = sections.fixedBlocks.filter(Boolean);
    const nonFixedPart = sections.blocks.filter(Boolean).join(EOL);
    if (fixedBlocks.length === 0) {
      return nonFixedPart;
    }
    const fixedPart = fixedBlocks.join(EOL);
    if (!nonFixedPart) {
      return fixedPart;
    }
    return `${nonFixedPart}${EOL}${fixedPart}`;
  }), (0, import_operators.filter)((msg) => {
    if (started) {
      return true;
    }
    if (msg === "")
      return false;
    started = true;
    return true;
  }), (0, import_operators.filter)((msg) => {
    if (msg !== previousOutput) {
      previousOutput = msg;
      return true;
    }
    return false;
  }));
}
var Rx, import_operators;
var init_mergeOutputs = __esm({
  "../cli/default-reporter/lib/mergeOutputs.js"() {
    "use strict";
    Rx = __toESM(require_cjs2(), 1);
    import_operators = __toESM(require_operators(), 1);
    init_constants();
  }
});

// ../cli/default-reporter/lib/reporterForClient/outputConstants.js
var PREFIX_MAX_LENGTH, hlValue, ADDED_CHAR, REMOVED_CHAR;
var init_outputConstants = __esm({
  "../cli/default-reporter/lib/reporterForClient/outputConstants.js"() {
    "use strict";
    init_source2();
    PREFIX_MAX_LENGTH = 40;
    hlValue = source_default.cyanBright;
    ADDED_CHAR = source_default.green("+");
    REMOVED_CHAR = source_default.red("-");
  }
});

// ../cli/default-reporter/lib/reporterForClient/reportBigTarballsProgress.js
function reportBigTarballProgress(log$) {
  return log$.fetchingProgress.pipe((0, import_operators2.filter)((log3) => log3.status === "started" && typeof log3.size === "number" && log3.size >= BIG_TARBALL_SIZE2 && // When retrying the download, keep the existing progress line.
  // Fixing issue: https://github.com/pnpm/pnpm/issues/1013
  log3.attempt === 1), (0, import_operators2.map)((startedLog) => {
    const size = prettyBytes(startedLog.size ?? 0, PRETTY_OPTS);
    return log$.fetchingProgress.pipe((0, import_operators2.filter)((log3) => log3.status === "in_progress" && log3.packageId === startedLog["packageId"]), (0, import_operators2.map)((log3) => log3.downloaded ?? 0), (0, import_operators2.startWith)(0), (0, import_operators2.map)((downloadedRaw) => {
      const done = startedLog.size === downloadedRaw;
      const downloaded = prettyBytes(downloadedRaw, PRETTY_OPTS);
      return {
        fixed: !done,
        msg: `Downloading ${startedLog["packageId"]}: ${hlValue(downloaded)}/${hlValue(size)}${done ? ", done" : ""}`
      };
    }));
  }));
}
var import_operators2, BIG_TARBALL_SIZE2, PRETTY_OPTS;
var init_reportBigTarballsProgress = __esm({
  "../cli/default-reporter/lib/reporterForClient/reportBigTarballsProgress.js"() {
    "use strict";
    init_pretty_bytes();
    import_operators2 = __toESM(require_operators(), 1);
    init_outputConstants();
    BIG_TARBALL_SIZE2 = 1024 * 1024 * 5;
    PRETTY_OPTS = {
      minimumFractionDigits: 2,
      maximumFractionDigits: 2
    };
  }
});

// ../cli/default-reporter/lib/reporterForClient/reportContext.js
import path209 from "node:path";
function reportContext(log$, opts2) {
  return Rx2.combineLatest(log$.context.pipe((0, import_operators3.take)(1)), log$.packageImportMethod.pipe((0, import_operators3.take)(1))).pipe((0, import_operators3.map)(([context, packageImportMethod]) => {
    if (context.currentLockfileExists) {
      return Rx2.NEVER;
    }
    let method;
    switch (packageImportMethod.method) {
      case "copy":
        method = "copied";
        break;
      case "clone":
        method = "cloned";
        break;
      case "hardlink":
        method = "hard linked";
        break;
      default:
        method = packageImportMethod.method;
        break;
    }
    return Rx2.of({
      msg: `Packages are ${method} from the content-addressable store to the virtual store.
  Content-addressable store is at: ${context.storeDir}
  Virtual store is at:             ${(0, import_normalize_path16.default)(path209.relative(opts2.cwd, context.virtualStoreDir))}`
    });
  }));
}
var import_normalize_path16, Rx2, import_operators3;
var init_reportContext = __esm({
  "../cli/default-reporter/lib/reporterForClient/reportContext.js"() {
    "use strict";
    import_normalize_path16 = __toESM(require_normalize_path(), 1);
    Rx2 = __toESM(require_cjs2(), 1);
    import_operators3 = __toESM(require_operators(), 1);
  }
});

// ../cli/default-reporter/lib/reporterForClient/utils/formatWarn.js
function formatWarn(message) {
  return `${source_default.bgYellow.yellow("[")}${source_default.bgYellow.black("WARN")}${source_default.bgYellow.yellow("]")} ${message}`;
}
var init_formatWarn = __esm({
  "../cli/default-reporter/lib/reporterForClient/utils/formatWarn.js"() {
    "use strict";
    init_source2();
  }
});

// ../cli/default-reporter/lib/reporterForClient/utils/formatPrefix.js
import path210 from "node:path";
function formatPrefix(cwd, prefix) {
  prefix = formatPrefixNoTrim(cwd, prefix);
  if (prefix.length <= PREFIX_MAX_LENGTH) {
    return prefix;
  }
  const shortPrefix = prefix.slice(-PREFIX_MAX_LENGTH + 3);
  const separatorLocation = shortPrefix.indexOf("/");
  if (separatorLocation <= 0) {
    return `...${shortPrefix}`;
  }
  return `...${shortPrefix.slice(separatorLocation)}`;
}
function formatPrefixNoTrim(cwd, prefix) {
  return (0, import_normalize_path17.default)(path210.relative(cwd, prefix) || ".");
}
var import_normalize_path17;
var init_formatPrefix = __esm({
  "../cli/default-reporter/lib/reporterForClient/utils/formatPrefix.js"() {
    "use strict";
    import_normalize_path17 = __toESM(require_normalize_path(), 1);
    init_outputConstants();
  }
});

// ../cli/default-reporter/lib/reporterForClient/utils/zooming.js
function autozoom(currentPrefix, logPrefix, line, opts2) {
  if (!logPrefix || !opts2.zoomOutCurrent && currentPrefix === logPrefix) {
    return line;
  }
  return zoomOut(currentPrefix, logPrefix, line);
}
function zoomOut(currentPrefix, logPrefix, line) {
  const prefix = formatPrefix(currentPrefix, logPrefix);
  return `${prefix.padEnd(PREFIX_MAX_LENGTH)} | ${line}`;
}
var init_zooming = __esm({
  "../cli/default-reporter/lib/reporterForClient/utils/zooming.js"() {
    "use strict";
    init_outputConstants();
    init_formatPrefix();
  }
});

// ../cli/default-reporter/lib/reporterForClient/reportDeprecations.js
function reportDeprecations(log$, opts2) {
  const [deprecatedDirectDeps$, deprecatedSubdeps$] = Rx3.partition(log$.deprecation, (log3) => log3.depth === 0);
  const resolutionDone$ = log$.stage.pipe((0, import_operators4.filter)((log3) => log3.stage === "resolution_done"));
  return Rx3.merge(deprecatedDirectDeps$.pipe((0, import_operators4.map)((log3) => {
    if (!opts2.isRecursive && log3.prefix === opts2.cwd) {
      return Rx3.of({
        msg: formatWarn(`${source_default.red("deprecated")} ${log3.pkgName}@${log3.pkgVersion}: ${log3.deprecated}`)
      });
    }
    return Rx3.of({
      msg: zoomOut(opts2.cwd, log3.prefix, formatWarn(`${source_default.red("deprecated")} ${log3.pkgName}@${log3.pkgVersion}`))
    });
  })), deprecatedSubdeps$.pipe((0, import_operators4.buffer)(resolutionDone$), (0, import_operators4.switchMap)((deprecatedSubdeps) => {
    if (deprecatedSubdeps.length > 0) {
      return Rx3.of(Rx3.of({
        msg: formatWarn(`${source_default.red(`${deprecatedSubdeps.length} deprecated subdependencies found:`)} ${deprecatedSubdeps.map((log3) => `${log3.pkgName}@${log3.pkgVersion}`).sort().join(", ")}`)
      }));
    }
    return Rx3.EMPTY;
  })));
}
var Rx3, import_operators4;
var init_reportDeprecations = __esm({
  "../cli/default-reporter/lib/reporterForClient/reportDeprecations.js"() {
    "use strict";
    init_source2();
    Rx3 = __toESM(require_cjs2(), 1);
    import_operators4 = __toESM(require_operators(), 1);
    init_formatWarn();
    init_zooming();
  }
});

// ../cli/default-reporter/lib/reporterForClient/reportExecutionTime.js
function reportExecutionTime(executionTime$) {
  return executionTime$.pipe((0, import_operators5.take)(1), (0, import_operators5.map)((log3) => {
    return Rx4.of({
      fixed: true,
      // Without this, for some reason sometimes the progress bar is printed after the execution time
      msg: `Done in ${prettyMilliseconds(log3.endedAt - log3.startedAt)} using ${packageManager.name} v${packageManager.version}`
    });
  }));
}
var Rx4, import_operators5;
var init_reportExecutionTime = __esm({
  "../cli/default-reporter/lib/reporterForClient/reportExecutionTime.js"() {
    "use strict";
    init_lib5();
    init_pretty_ms();
    Rx4 = __toESM(require_cjs2(), 1);
    import_operators5 = __toESM(require_operators(), 1);
  }
});

// ../cli/default-reporter/lib/reporterForClient/reportHooks.js
function reportHooks(hook$, opts2) {
  return hook$.pipe((0, import_operators6.map)((log3) => Rx5.of({
    msg: autozoom(opts2.cwd, log3.prefix, `${source_default.magentaBright(log3.hook)}: ${log3.message}`, {
      zoomOutCurrent: opts2.isRecursive
    })
  })));
}
var Rx5, import_operators6;
var init_reportHooks = __esm({
  "../cli/default-reporter/lib/reporterForClient/reportHooks.js"() {
    "use strict";
    init_source2();
    Rx5 = __toESM(require_cjs2(), 1);
    import_operators6 = __toESM(require_operators(), 1);
    init_zooming();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/widest-line/3.1.0/ef59fa10172d30fa52da212920cb7e2945da4b7be29b348f27730f663adbc481/node_modules/widest-line/index.js
var require_widest_line = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/widest-line/3.1.0/ef59fa10172d30fa52da212920cb7e2945da4b7be29b348f27730f663adbc481/node_modules/widest-line/index.js"(exports2, module2) {
    "use strict";
    var stringWidth2 = require_string_width();
    var widestLine = (input) => {
      let max3 = 0;
      for (const line of input.split("\n")) {
        max3 = Math.max(max3, stringWidth2(line));
      }
      return max3;
    };
    module2.exports = widestLine;
    module2.exports.default = widestLine;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/cli-boxes/2.2.1/08959c8071f5ce108770c96cf58f387314a077506073633b8ae6c8aa9d3d9112/node_modules/cli-boxes/boxes.json
var require_boxes = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/cli-boxes/2.2.1/08959c8071f5ce108770c96cf58f387314a077506073633b8ae6c8aa9d3d9112/node_modules/cli-boxes/boxes.json"(exports2, module2) {
    module2.exports = {
      single: {
        topLeft: "\u250C",
        topRight: "\u2510",
        bottomRight: "\u2518",
        bottomLeft: "\u2514",
        vertical: "\u2502",
        horizontal: "\u2500"
      },
      double: {
        topLeft: "\u2554",
        topRight: "\u2557",
        bottomRight: "\u255D",
        bottomLeft: "\u255A",
        vertical: "\u2551",
        horizontal: "\u2550"
      },
      round: {
        topLeft: "\u256D",
        topRight: "\u256E",
        bottomRight: "\u256F",
        bottomLeft: "\u2570",
        vertical: "\u2502",
        horizontal: "\u2500"
      },
      bold: {
        topLeft: "\u250F",
        topRight: "\u2513",
        bottomRight: "\u251B",
        bottomLeft: "\u2517",
        vertical: "\u2503",
        horizontal: "\u2501"
      },
      singleDouble: {
        topLeft: "\u2553",
        topRight: "\u2556",
        bottomRight: "\u255C",
        bottomLeft: "\u2559",
        vertical: "\u2551",
        horizontal: "\u2500"
      },
      doubleSingle: {
        topLeft: "\u2552",
        topRight: "\u2555",
        bottomRight: "\u255B",
        bottomLeft: "\u2558",
        vertical: "\u2502",
        horizontal: "\u2550"
      },
      classic: {
        topLeft: "+",
        topRight: "+",
        bottomRight: "+",
        bottomLeft: "+",
        vertical: "|",
        horizontal: "-"
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/cli-boxes/2.2.1/08959c8071f5ce108770c96cf58f387314a077506073633b8ae6c8aa9d3d9112/node_modules/cli-boxes/index.js
var require_cli_boxes = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/cli-boxes/2.2.1/08959c8071f5ce108770c96cf58f387314a077506073633b8ae6c8aa9d3d9112/node_modules/cli-boxes/index.js"(exports2, module2) {
    "use strict";
    var cliBoxes = require_boxes();
    module2.exports = cliBoxes;
    module2.exports.default = cliBoxes;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/camelcase/6.3.0/a34713a0f108f5e51da97bef546e5fb74d54ff70c49eeb64a121bb84f11644de/node_modules/camelcase/index.js
var require_camelcase = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/camelcase/6.3.0/a34713a0f108f5e51da97bef546e5fb74d54ff70c49eeb64a121bb84f11644de/node_modules/camelcase/index.js"(exports2, module2) {
    "use strict";
    var UPPERCASE2 = /[\p{Lu}]/u;
    var LOWERCASE2 = /[\p{Ll}]/u;
    var LEADING_CAPITAL2 = /^[\p{Lu}](?![\p{Lu}])/gu;
    var IDENTIFIER2 = /([\p{Alpha}\p{N}_]|$)/u;
    var SEPARATORS2 = /[_.\- ]+/;
    var LEADING_SEPARATORS2 = new RegExp("^" + SEPARATORS2.source);
    var SEPARATORS_AND_IDENTIFIER2 = new RegExp(SEPARATORS2.source + IDENTIFIER2.source, "gu");
    var NUMBERS_AND_IDENTIFIER2 = new RegExp("\\d+" + IDENTIFIER2.source, "gu");
    var preserveCamelCase2 = (string, toLowerCase, toUpperCase) => {
      let isLastCharLower = false;
      let isLastCharUpper = false;
      let isLastLastCharUpper = false;
      for (let i2 = 0; i2 < string.length; i2++) {
        const character = string[i2];
        if (isLastCharLower && UPPERCASE2.test(character)) {
          string = string.slice(0, i2) + "-" + string.slice(i2);
          isLastCharLower = false;
          isLastLastCharUpper = isLastCharUpper;
          isLastCharUpper = true;
          i2++;
        } else if (isLastCharUpper && isLastLastCharUpper && LOWERCASE2.test(character)) {
          string = string.slice(0, i2 - 1) + "-" + string.slice(i2 - 1);
          isLastLastCharUpper = isLastCharUpper;
          isLastCharUpper = false;
          isLastCharLower = true;
        } else {
          isLastCharLower = toLowerCase(character) === character && toUpperCase(character) !== character;
          isLastLastCharUpper = isLastCharUpper;
          isLastCharUpper = toUpperCase(character) === character && toLowerCase(character) !== character;
        }
      }
      return string;
    };
    var preserveConsecutiveUppercase2 = (input, toLowerCase) => {
      LEADING_CAPITAL2.lastIndex = 0;
      return input.replace(LEADING_CAPITAL2, (m1) => toLowerCase(m1));
    };
    var postProcess2 = (input, toUpperCase) => {
      SEPARATORS_AND_IDENTIFIER2.lastIndex = 0;
      NUMBERS_AND_IDENTIFIER2.lastIndex = 0;
      return input.replace(SEPARATORS_AND_IDENTIFIER2, (_, identifier) => toUpperCase(identifier)).replace(NUMBERS_AND_IDENTIFIER2, (m) => toUpperCase(m));
    };
    var camelCase2 = (input, options) => {
      if (!(typeof input === "string" || Array.isArray(input))) {
        throw new TypeError("Expected the input to be `string | string[]`");
      }
      options = {
        pascalCase: false,
        preserveConsecutiveUppercase: false,
        ...options
      };
      if (Array.isArray(input)) {
        input = input.map((x) => x.trim()).filter((x) => x.length).join("-");
      } else {
        input = input.trim();
      }
      if (input.length === 0) {
        return "";
      }
      const toLowerCase = options.locale === false ? (string) => string.toLowerCase() : (string) => string.toLocaleLowerCase(options.locale);
      const toUpperCase = options.locale === false ? (string) => string.toUpperCase() : (string) => string.toLocaleUpperCase(options.locale);
      if (input.length === 1) {
        return options.pascalCase ? toUpperCase(input) : toLowerCase(input);
      }
      const hasUpperCase = input !== toLowerCase(input);
      if (hasUpperCase) {
        input = preserveCamelCase2(input, toLowerCase, toUpperCase);
      }
      input = input.replace(LEADING_SEPARATORS2, "");
      if (options.preserveConsecutiveUppercase) {
        input = preserveConsecutiveUppercase2(input, toLowerCase);
      } else {
        input = toLowerCase(input);
      }
      if (options.pascalCase) {
        input = toUpperCase(input.charAt(0)) + input.slice(1);
      }
      return postProcess2(input, toUpperCase);
    };
    module2.exports = camelCase2;
    module2.exports.default = camelCase2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/ansi-align/3.0.1/e44efec8b278d4a46bc30320e5ade6e737e42631007395ffcf33bbe3fd1defc7/node_modules/ansi-align/index.js
var require_ansi_align = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/ansi-align/3.0.1/e44efec8b278d4a46bc30320e5ade6e737e42631007395ffcf33bbe3fd1defc7/node_modules/ansi-align/index.js"(exports2, module2) {
    "use strict";
    var stringWidth2 = require_string_width();
    function ansiAlign(text, opts2) {
      if (!text) return text;
      opts2 = opts2 || {};
      const align = opts2.align || "center";
      if (align === "left") return text;
      const split2 = opts2.split || "\n";
      const pad3 = opts2.pad || " ";
      const widthDiffFn = align !== "right" ? halfDiff : fullDiff;
      let returnString = false;
      if (!Array.isArray(text)) {
        returnString = true;
        text = String(text).split(split2);
      }
      let width;
      let maxWidth = 0;
      text = text.map(function(str2) {
        str2 = String(str2);
        width = stringWidth2(str2);
        maxWidth = Math.max(width, maxWidth);
        return {
          str: str2,
          width
        };
      }).map(function(obj) {
        return new Array(widthDiffFn(maxWidth, obj.width) + 1).join(pad3) + obj.str;
      });
      return returnString ? text.join(split2) : text;
    }
    ansiAlign.left = function left(text) {
      return ansiAlign(text, { align: "left" });
    };
    ansiAlign.center = function center(text) {
      return ansiAlign(text, { align: "center" });
    };
    ansiAlign.right = function right(text) {
      return ansiAlign(text, { align: "right" });
    };
    module2.exports = ansiAlign;
    function halfDiff(maxWidth, curWidth) {
      return Math.floor((maxWidth - curWidth) / 2);
    }
    function fullDiff(maxWidth, curWidth) {
      return maxWidth - curWidth;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/wrap-ansi/7.0.0/b8558cc588195aca96e9b6d678c1e72f0bc46322f7a9efec8f71f1cb0d77f4af/node_modules/wrap-ansi/index.js
var require_wrap_ansi = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/wrap-ansi/7.0.0/b8558cc588195aca96e9b6d678c1e72f0bc46322f7a9efec8f71f1cb0d77f4af/node_modules/wrap-ansi/index.js"(exports2, module2) {
    "use strict";
    var stringWidth2 = require_string_width();
    var stripAnsi4 = require_strip_ansi();
    var ansiStyles3 = require_ansi_styles();
    var ESCAPES2 = /* @__PURE__ */ new Set([
      "\x1B",
      "\x9B"
    ]);
    var END_CODE = 39;
    var ANSI_ESCAPE_BELL = "\x07";
    var ANSI_CSI2 = "[";
    var ANSI_OSC2 = "]";
    var ANSI_SGR_TERMINATOR2 = "m";
    var ANSI_ESCAPE_LINK = `${ANSI_OSC2}8;;`;
    var wrapAnsi = (code) => `${ESCAPES2.values().next().value}${ANSI_CSI2}${code}${ANSI_SGR_TERMINATOR2}`;
    var wrapAnsiHyperlink = (uri) => `${ESCAPES2.values().next().value}${ANSI_ESCAPE_LINK}${uri}${ANSI_ESCAPE_BELL}`;
    var wordLengths = (string) => string.split(" ").map((character) => stringWidth2(character));
    var wrapWord = (rows, word, columns) => {
      const characters = [...word];
      let isInsideEscape = false;
      let isInsideLinkEscape = false;
      let visible = stringWidth2(stripAnsi4(rows[rows.length - 1]));
      for (const [index, character] of characters.entries()) {
        const characterLength = stringWidth2(character);
        if (visible + characterLength <= columns) {
          rows[rows.length - 1] += character;
        } else {
          rows.push(character);
          visible = 0;
        }
        if (ESCAPES2.has(character)) {
          isInsideEscape = true;
          isInsideLinkEscape = characters.slice(index + 1).join("").startsWith(ANSI_ESCAPE_LINK);
        }
        if (isInsideEscape) {
          if (isInsideLinkEscape) {
            if (character === ANSI_ESCAPE_BELL) {
              isInsideEscape = false;
              isInsideLinkEscape = false;
            }
          } else if (character === ANSI_SGR_TERMINATOR2) {
            isInsideEscape = false;
          }
          continue;
        }
        visible += characterLength;
        if (visible === columns && index < characters.length - 1) {
          rows.push("");
          visible = 0;
        }
      }
      if (!visible && rows[rows.length - 1].length > 0 && rows.length > 1) {
        rows[rows.length - 2] += rows.pop();
      }
    };
    var stringVisibleTrimSpacesRight = (string) => {
      const words = string.split(" ");
      let last = words.length;
      while (last > 0) {
        if (stringWidth2(words[last - 1]) > 0) {
          break;
        }
        last--;
      }
      if (last === words.length) {
        return string;
      }
      return words.slice(0, last).join(" ") + words.slice(last).join("");
    };
    var exec = (string, columns, options = {}) => {
      if (options.trim !== false && string.trim() === "") {
        return "";
      }
      let returnValue = "";
      let escapeCode;
      let escapeUrl;
      const lengths = wordLengths(string);
      let rows = [""];
      for (const [index, word] of string.split(" ").entries()) {
        if (options.trim !== false) {
          rows[rows.length - 1] = rows[rows.length - 1].trimStart();
        }
        let rowLength = stringWidth2(rows[rows.length - 1]);
        if (index !== 0) {
          if (rowLength >= columns && (options.wordWrap === false || options.trim === false)) {
            rows.push("");
            rowLength = 0;
          }
          if (rowLength > 0 || options.trim === false) {
            rows[rows.length - 1] += " ";
            rowLength++;
          }
        }
        if (options.hard && lengths[index] > columns) {
          const remainingColumns = columns - rowLength;
          const breaksStartingThisLine = 1 + Math.floor((lengths[index] - remainingColumns - 1) / columns);
          const breaksStartingNextLine = Math.floor((lengths[index] - 1) / columns);
          if (breaksStartingNextLine < breaksStartingThisLine) {
            rows.push("");
          }
          wrapWord(rows, word, columns);
          continue;
        }
        if (rowLength + lengths[index] > columns && rowLength > 0 && lengths[index] > 0) {
          if (options.wordWrap === false && rowLength < columns) {
            wrapWord(rows, word, columns);
            continue;
          }
          rows.push("");
        }
        if (rowLength + lengths[index] > columns && options.wordWrap === false) {
          wrapWord(rows, word, columns);
          continue;
        }
        rows[rows.length - 1] += word;
      }
      if (options.trim !== false) {
        rows = rows.map(stringVisibleTrimSpacesRight);
      }
      const pre = [...rows.join("\n")];
      for (const [index, character] of pre.entries()) {
        returnValue += character;
        if (ESCAPES2.has(character)) {
          const { groups } = new RegExp(`(?:\\${ANSI_CSI2}(?<code>\\d+)m|\\${ANSI_ESCAPE_LINK}(?<uri>.*)${ANSI_ESCAPE_BELL})`).exec(pre.slice(index).join("")) || { groups: {} };
          if (groups.code !== void 0) {
            const code2 = Number.parseFloat(groups.code);
            escapeCode = code2 === END_CODE ? void 0 : code2;
          } else if (groups.uri !== void 0) {
            escapeUrl = groups.uri.length === 0 ? void 0 : groups.uri;
          }
        }
        const code = ansiStyles3.codes.get(Number(escapeCode));
        if (pre[index + 1] === "\n") {
          if (escapeUrl) {
            returnValue += wrapAnsiHyperlink("");
          }
          if (escapeCode && code) {
            returnValue += wrapAnsi(code);
          }
        } else if (character === "\n") {
          if (escapeCode && code) {
            returnValue += wrapAnsi(escapeCode);
          }
          if (escapeUrl) {
            returnValue += wrapAnsiHyperlink(escapeUrl);
          }
        }
      }
      return returnValue;
    };
    module2.exports = (string, columns, options) => {
      return String(string).normalize().replace(/\r\n/g, "\n").split("\n").map((line) => exec(line, columns, options)).join("\n");
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@zkochan/boxen/5.1.2/b66a18b00cae0fc1b5678c6d1620eb7120e815458ec36045e0d1f3b23789c5b8/node_modules/@zkochan/boxen/index.js
var require_boxen = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@zkochan/boxen/5.1.2/b66a18b00cae0fc1b5678c6d1620eb7120e815458ec36045e0d1f3b23789c5b8/node_modules/@zkochan/boxen/index.js"(exports2, module2) {
    "use strict";
    var stringWidth2 = require_string_width();
    var chalk2 = require_source2();
    var widestLine = require_widest_line();
    var cliBoxes = require_cli_boxes();
    var camelCase2 = require_camelcase();
    var ansiAlign = require_ansi_align();
    var wrapAnsi = require_wrap_ansi();
    var NL = "\n";
    var PAD = " ";
    var terminalColumns = () => {
      const { env: env3, stdout, stderr } = process;
      if (stdout && stdout.columns) {
        return stdout.columns;
      }
      if (stderr && stderr.columns) {
        return stderr.columns;
      }
      if (env3.COLUMNS) {
        return Number.parseInt(env3.COLUMNS, 10);
      }
      return 80;
    };
    var getObject = (detail) => {
      return typeof detail === "number" ? {
        top: detail,
        right: detail * 3,
        bottom: detail,
        left: detail * 3
      } : {
        top: 0,
        right: 0,
        bottom: 0,
        left: 0,
        ...detail
      };
    };
    var getBorderChars = (borderStyle) => {
      const sides = [
        "topLeft",
        "topRight",
        "bottomRight",
        "bottomLeft",
        "vertical",
        "horizontal"
      ];
      let chararacters;
      if (typeof borderStyle === "string") {
        chararacters = cliBoxes[borderStyle];
        if (!chararacters) {
          throw new TypeError(`Invalid border style: ${borderStyle}`);
        }
      } else {
        for (const side of sides) {
          if (!borderStyle[side] || typeof borderStyle[side] !== "string") {
            throw new TypeError(`Invalid border style: ${side}`);
          }
        }
        chararacters = borderStyle;
      }
      return chararacters;
    };
    var makeTitle = (text, horizontal, alignement) => {
      let title = "";
      const textWidth = stringWidth2(text);
      switch (alignement) {
        case "left":
          title = text + horizontal.slice(textWidth);
          break;
        case "right":
          title = horizontal.slice(textWidth) + text;
          break;
        default:
          horizontal = horizontal.slice(textWidth);
          if (horizontal.length % 2 === 1) {
            horizontal = horizontal.slice(Math.floor(horizontal.length / 2));
            title = horizontal.slice(1) + text + horizontal;
          } else {
            horizontal = horizontal.slice(horizontal.length / 2);
            title = horizontal + text + horizontal;
          }
          break;
      }
      return title;
    };
    var makeContentText = (text, padding, columns, align) => {
      text = ansiAlign(text, { align });
      let lines = text.split(NL);
      const textWidth = widestLine(text);
      const max3 = columns - padding.left - padding.right;
      if (textWidth > max3) {
        const newLines = [];
        for (const line of lines) {
          const createdLines = wrapAnsi(line, max3, { hard: true });
          const alignedLines = ansiAlign(createdLines, { align });
          const alignedLinesArray = alignedLines.split("\n");
          const longestLength = Math.max(...alignedLinesArray.map((s) => stringWidth2(s)));
          for (const alignedLine of alignedLinesArray) {
            let paddedLine;
            switch (align) {
              case "center":
                paddedLine = PAD.repeat((max3 - longestLength) / 2) + alignedLine;
                break;
              case "right":
                paddedLine = PAD.repeat(max3 - longestLength) + alignedLine;
                break;
              default:
                paddedLine = alignedLine;
                break;
            }
            newLines.push(paddedLine);
          }
        }
        lines = newLines;
      }
      if (align === "center" && textWidth < max3) {
        lines = lines.map((line) => PAD.repeat((max3 - textWidth) / 2) + line);
      } else if (align === "right" && textWidth < max3) {
        lines = lines.map((line) => PAD.repeat(max3 - textWidth) + line);
      }
      const paddingLeft = PAD.repeat(padding.left);
      const paddingRight = PAD.repeat(padding.right);
      lines = lines.map((line) => paddingLeft + line + paddingRight);
      lines = lines.map((line) => {
        if (columns - stringWidth2(line) > 0) {
          switch (align) {
            case "center":
              return line + PAD.repeat(columns - stringWidth2(line));
            case "right":
              return line + PAD.repeat(columns - stringWidth2(line));
            default:
              return line + PAD.repeat(columns - stringWidth2(line));
          }
        }
        return line;
      });
      if (padding.top > 0) {
        lines = new Array(padding.top).fill(PAD.repeat(columns)).concat(lines);
      }
      if (padding.bottom > 0) {
        lines = lines.concat(new Array(padding.bottom).fill(PAD.repeat(columns)));
      }
      return lines.join(NL);
    };
    var isHex = (color) => color.match(/^#(?:[0-f]{3}){1,2}$/i);
    var isColorValid = (color) => typeof color === "string" && (chalk2[color] || isHex(color));
    var getColorFn = (color) => isHex(color) ? chalk2.hex(color) : chalk2[color];
    var getBGColorFn = (color) => isHex(color) ? chalk2.bgHex(color) : chalk2[camelCase2(["bg", color])];
    module2.exports = (text, options) => {
      options = {
        padding: 0,
        borderStyle: "single",
        dimBorder: false,
        textAlignment: "left",
        float: "left",
        titleAlignment: "left",
        ...options
      };
      if (options.align) {
        options.textAlignment = options.align;
      }
      const BORDERS_WIDTH = 2;
      if (options.borderColor && !isColorValid(options.borderColor)) {
        throw new Error(`${options.borderColor} is not a valid borderColor`);
      }
      if (options.backgroundColor && !isColorValid(options.backgroundColor)) {
        throw new Error(`${options.backgroundColor} is not a valid backgroundColor`);
      }
      const chars = getBorderChars(options.borderStyle);
      const padding = getObject(options.padding);
      const margin = getObject(options.margin);
      const colorizeBorder = (border) => {
        const newBorder = options.borderColor ? getColorFn(options.borderColor)(border) : border;
        return options.dimBorder ? chalk2.dim(newBorder) : newBorder;
      };
      const colorizeContent = (content) => options.backgroundColor ? getBGColorFn(options.backgroundColor)(content) : content;
      const columns = terminalColumns();
      let contentWidth = widestLine(wrapAnsi(text, columns - BORDERS_WIDTH, { hard: true, trim: false })) + padding.left + padding.right;
      let title = options.title && options.title.slice(0, columns - 4 - margin.left - margin.right);
      if (title) {
        title = ` ${title} `;
        if (stringWidth2(title) > contentWidth) {
          contentWidth = stringWidth2(title);
        }
      }
      if (margin.left && margin.right && contentWidth + BORDERS_WIDTH + margin.left + margin.right > columns) {
        const spaceForMargins = columns - contentWidth - BORDERS_WIDTH;
        const multiplier = spaceForMargins / (margin.left + margin.right);
        margin.left = Math.max(0, Math.floor(margin.left * multiplier));
        margin.right = Math.max(0, Math.floor(margin.right * multiplier));
      }
      contentWidth = Math.min(contentWidth, columns - BORDERS_WIDTH - margin.left - margin.right);
      text = makeContentText(text, padding, contentWidth, options.textAlignment);
      let marginLeft = PAD.repeat(margin.left);
      if (options.float === "center") {
        const marginWidth = Math.max((columns - contentWidth - BORDERS_WIDTH) / 2, 0);
        marginLeft = PAD.repeat(marginWidth);
      } else if (options.float === "right") {
        const marginWidth = Math.max(columns - contentWidth - margin.right - BORDERS_WIDTH, 0);
        marginLeft = PAD.repeat(marginWidth);
      }
      const horizontal = chars.horizontal.repeat(contentWidth);
      const top = colorizeBorder(NL.repeat(margin.top) + marginLeft + chars.topLeft + (title ? makeTitle(title, horizontal, options.titleAlignment) : horizontal) + chars.topRight);
      const bottom = colorizeBorder(marginLeft + chars.bottomLeft + horizontal + chars.bottomRight + NL.repeat(margin.bottom));
      const side = colorizeBorder(chars.vertical);
      const lines = text.split(NL);
      const middle = lines.map((line) => {
        return marginLeft + side + colorizeContent(line) + side;
      }).join(NL);
      return top + NL + middle + NL + bottom;
    };
    module2.exports._borderStyles = cliBoxes;
  }
});

// ../cli/default-reporter/lib/reporterForClient/reportIgnoredBuilds.js
function reportIgnoredBuilds(log$, opts2) {
  return log$.ignoredScripts.pipe((0, import_operators7.map)((ignoredScripts) => {
    if (ignoredScripts.packageNames && ignoredScripts.packageNames.length > 0 && !opts2.pnpmConfig?.strictDepBuilds) {
      const msg = (0, import_boxen.default)(`Ignored build scripts: ${Array.from(ignoredScripts.packageNames).sort(import_util22.lexCompare).join(", ")}.
${opts2.approveBuildsInstructionText ?? `Run "pnpm approve-builds${opts2.pnpmConfig?.cliOptions?.global ? " -g" : ""}" to pick which dependencies should be allowed to run scripts.`}`, {
        title: "Warning",
        padding: 1,
        margin: 0,
        borderStyle: "round",
        borderColor: "yellow"
      });
      return Rx6.of({ msg });
    }
    return Rx6.NEVER;
  }));
}
var import_util22, import_boxen, Rx6, import_operators7;
var init_reportIgnoredBuilds = __esm({
  "../cli/default-reporter/lib/reporterForClient/reportIgnoredBuilds.js"() {
    "use strict";
    import_util22 = __toESM(require_dist3(), 1);
    import_boxen = __toESM(require_boxen(), 1);
    Rx6 = __toESM(require_cjs2(), 1);
    import_operators7 = __toESM(require_operators(), 1);
  }
});

// ../cli/default-reporter/lib/reporterForClient/reportInstallChecks.js
function reportInstallChecks(installCheck$, opts2) {
  return installCheck$.pipe((0, import_operators8.map)((log3) => formatInstallCheck(opts2.cwd, log3)), (0, import_operators8.filter)(Boolean), (0, import_operators8.map)((msg) => Rx7.of({ msg })));
}
function formatInstallCheck(currentPrefix, logObj, opts2) {
  const zoomOutCurrent = opts2?.zoomOutCurrent ?? false;
  switch (logObj.code) {
    case "EBADPLATFORM":
      return autozoom(currentPrefix, logObj.prefix, formatWarn(`Unsupported system. Skipping dependency ${logObj.pkgId}`), { zoomOutCurrent });
    case "ENOTSUP":
      return autozoom(currentPrefix, logObj.prefix, logObj.toString(), { zoomOutCurrent });
    default:
      return void 0;
  }
}
var Rx7, import_operators8;
var init_reportInstallChecks = __esm({
  "../cli/default-reporter/lib/reporterForClient/reportInstallChecks.js"() {
    "use strict";
    Rx7 = __toESM(require_cjs2(), 1);
    import_operators8 = __toESM(require_operators(), 1);
    init_formatWarn();
    init_zooming();
  }
});

// ../cli/default-reporter/lib/reporterForClient/reportInstallingConfigDeps.js
function reportInstallingConfigDeps(installingConfigDeps$) {
  return Rx8.of(installingConfigDeps$.pipe((0, import_operators9.map)((log3) => {
    switch (log3.status) {
      case "started": {
        return {
          msg: "Installing config dependencies..."
        };
      }
      case "done":
        return {
          msg: `Installed config dependencies: ${log3.deps.map(({ name, version: version2 }) => `${name}@${version2}`).join(", ")}`
        };
    }
  })));
}
var Rx8, import_operators9;
var init_reportInstallingConfigDeps = __esm({
  "../cli/default-reporter/lib/reporterForClient/reportInstallingConfigDeps.js"() {
    "use strict";
    Rx8 = __toESM(require_cjs2(), 1);
    import_operators9 = __toESM(require_operators(), 1);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/ansi-styles/6.2.3/9163570239b4792de925fb3fbd56f385e4d465727d006f42f90b0e4a54bbe05c/node_modules/ansi-styles/index.js
function assembleStyles2() {
  const codes = /* @__PURE__ */ new Map();
  for (const [groupName, group] of Object.entries(styles3)) {
    for (const [styleName, style] of Object.entries(group)) {
      styles3[styleName] = {
        open: `\x1B[${style[0]}m`,
        close: `\x1B[${style[1]}m`
      };
      group[styleName] = styles3[styleName];
      codes.set(style[0], style[1]);
    }
    Object.defineProperty(styles3, groupName, {
      value: group,
      enumerable: false
    });
  }
  Object.defineProperty(styles3, "codes", {
    value: codes,
    enumerable: false
  });
  styles3.color.close = "\x1B[39m";
  styles3.bgColor.close = "\x1B[49m";
  styles3.color.ansi = wrapAnsi162();
  styles3.color.ansi256 = wrapAnsi2562();
  styles3.color.ansi16m = wrapAnsi16m2();
  styles3.bgColor.ansi = wrapAnsi162(ANSI_BACKGROUND_OFFSET2);
  styles3.bgColor.ansi256 = wrapAnsi2562(ANSI_BACKGROUND_OFFSET2);
  styles3.bgColor.ansi16m = wrapAnsi16m2(ANSI_BACKGROUND_OFFSET2);
  Object.defineProperties(styles3, {
    rgbToAnsi256: {
      value(red2, green2, blue2) {
        if (red2 === green2 && green2 === blue2) {
          if (red2 < 8) {
            return 16;
          }
          if (red2 > 248) {
            return 231;
          }
          return Math.round((red2 - 8) / 247 * 24) + 232;
        }
        return 16 + 36 * Math.round(red2 / 255 * 5) + 6 * Math.round(green2 / 255 * 5) + Math.round(blue2 / 255 * 5);
      },
      enumerable: false
    },
    hexToRgb: {
      value(hex) {
        const matches2 = /[a-f\d]{6}|[a-f\d]{3}/i.exec(hex.toString(16));
        if (!matches2) {
          return [0, 0, 0];
        }
        let [colorString] = matches2;
        if (colorString.length === 3) {
          colorString = [...colorString].map((character) => character + character).join("");
        }
        const integer = Number.parseInt(colorString, 16);
        return [
          /* eslint-disable no-bitwise */
          integer >> 16 & 255,
          integer >> 8 & 255,
          integer & 255
          /* eslint-enable no-bitwise */
        ];
      },
      enumerable: false
    },
    hexToAnsi256: {
      value: (hex) => styles3.rgbToAnsi256(...styles3.hexToRgb(hex)),
      enumerable: false
    },
    ansi256ToAnsi: {
      value(code) {
        if (code < 8) {
          return 30 + code;
        }
        if (code < 16) {
          return 90 + (code - 8);
        }
        let red2;
        let green2;
        let blue2;
        if (code >= 232) {
          red2 = ((code - 232) * 10 + 8) / 255;
          green2 = red2;
          blue2 = red2;
        } else {
          code -= 16;
          const remainder = code % 36;
          red2 = Math.floor(code / 36) / 5;
          green2 = Math.floor(remainder / 6) / 5;
          blue2 = remainder % 6 / 5;
        }
        const value = Math.max(red2, green2, blue2) * 2;
        if (value === 0) {
          return 30;
        }
        let result2 = 30 + (Math.round(blue2) << 2 | Math.round(green2) << 1 | Math.round(red2));
        if (value === 2) {
          result2 += 60;
        }
        return result2;
      },
      enumerable: false
    },
    rgbToAnsi: {
      value: (red2, green2, blue2) => styles3.ansi256ToAnsi(styles3.rgbToAnsi256(red2, green2, blue2)),
      enumerable: false
    },
    hexToAnsi: {
      value: (hex) => styles3.ansi256ToAnsi(styles3.hexToAnsi256(hex)),
      enumerable: false
    }
  });
  return styles3;
}
var ANSI_BACKGROUND_OFFSET2, wrapAnsi162, wrapAnsi2562, wrapAnsi16m2, styles3, modifierNames2, foregroundColorNames2, backgroundColorNames2, colorNames2, ansiStyles2, ansi_styles_default2;
var init_ansi_styles2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/ansi-styles/6.2.3/9163570239b4792de925fb3fbd56f385e4d465727d006f42f90b0e4a54bbe05c/node_modules/ansi-styles/index.js"() {
    ANSI_BACKGROUND_OFFSET2 = 10;
    wrapAnsi162 = (offset = 0) => (code) => `\x1B[${code + offset}m`;
    wrapAnsi2562 = (offset = 0) => (code) => `\x1B[${38 + offset};5;${code}m`;
    wrapAnsi16m2 = (offset = 0) => (red2, green2, blue2) => `\x1B[${38 + offset};2;${red2};${green2};${blue2}m`;
    styles3 = {
      modifier: {
        reset: [0, 0],
        // 21 isn't widely supported and 22 does the same thing
        bold: [1, 22],
        dim: [2, 22],
        italic: [3, 23],
        underline: [4, 24],
        overline: [53, 55],
        inverse: [7, 27],
        hidden: [8, 28],
        strikethrough: [9, 29]
      },
      color: {
        black: [30, 39],
        red: [31, 39],
        green: [32, 39],
        yellow: [33, 39],
        blue: [34, 39],
        magenta: [35, 39],
        cyan: [36, 39],
        white: [37, 39],
        // Bright color
        blackBright: [90, 39],
        gray: [90, 39],
        // Alias of `blackBright`
        grey: [90, 39],
        // Alias of `blackBright`
        redBright: [91, 39],
        greenBright: [92, 39],
        yellowBright: [93, 39],
        blueBright: [94, 39],
        magentaBright: [95, 39],
        cyanBright: [96, 39],
        whiteBright: [97, 39]
      },
      bgColor: {
        bgBlack: [40, 49],
        bgRed: [41, 49],
        bgGreen: [42, 49],
        bgYellow: [43, 49],
        bgBlue: [44, 49],
        bgMagenta: [45, 49],
        bgCyan: [46, 49],
        bgWhite: [47, 49],
        // Bright color
        bgBlackBright: [100, 49],
        bgGray: [100, 49],
        // Alias of `bgBlackBright`
        bgGrey: [100, 49],
        // Alias of `bgBlackBright`
        bgRedBright: [101, 49],
        bgGreenBright: [102, 49],
        bgYellowBright: [103, 49],
        bgBlueBright: [104, 49],
        bgMagentaBright: [105, 49],
        bgCyanBright: [106, 49],
        bgWhiteBright: [107, 49]
      }
    };
    modifierNames2 = Object.keys(styles3.modifier);
    foregroundColorNames2 = Object.keys(styles3.color);
    backgroundColorNames2 = Object.keys(styles3.bgColor);
    colorNames2 = [...foregroundColorNames2, ...backgroundColorNames2];
    ansiStyles2 = assembleStyles2();
    ansi_styles_default2 = ansiStyles2;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/get-east-asian-width/1.6.0/37e9246e73ebcb885c1face4cc4ea774962729e714e450dc09e40f0064a3529e/node_modules/get-east-asian-width/lookup-data.js
var ambiguousMinimalCodePoint, ambiguousMaximumCodePoint, ambiguousRanges, fullwidthMinimalCodePoint, fullwidthMaximumCodePoint, fullwidthRanges, wideMinimalCodePoint, wideMaximumCodePoint, wideRanges;
var init_lookup_data = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/get-east-asian-width/1.6.0/37e9246e73ebcb885c1face4cc4ea774962729e714e450dc09e40f0064a3529e/node_modules/get-east-asian-width/lookup-data.js"() {
    ambiguousMinimalCodePoint = 161;
    ambiguousMaximumCodePoint = 1114109;
    ambiguousRanges = [161, 161, 164, 164, 167, 168, 170, 170, 173, 174, 176, 180, 182, 186, 188, 191, 198, 198, 208, 208, 215, 216, 222, 225, 230, 230, 232, 234, 236, 237, 240, 240, 242, 243, 247, 250, 252, 252, 254, 254, 257, 257, 273, 273, 275, 275, 283, 283, 294, 295, 299, 299, 305, 307, 312, 312, 319, 322, 324, 324, 328, 331, 333, 333, 338, 339, 358, 359, 363, 363, 462, 462, 464, 464, 466, 466, 468, 468, 470, 470, 472, 472, 474, 474, 476, 476, 593, 593, 609, 609, 708, 708, 711, 711, 713, 715, 717, 717, 720, 720, 728, 731, 733, 733, 735, 735, 768, 879, 913, 929, 931, 937, 945, 961, 963, 969, 1025, 1025, 1040, 1103, 1105, 1105, 8208, 8208, 8211, 8214, 8216, 8217, 8220, 8221, 8224, 8226, 8228, 8231, 8240, 8240, 8242, 8243, 8245, 8245, 8251, 8251, 8254, 8254, 8308, 8308, 8319, 8319, 8321, 8324, 8364, 8364, 8451, 8451, 8453, 8453, 8457, 8457, 8467, 8467, 8470, 8470, 8481, 8482, 8486, 8486, 8491, 8491, 8531, 8532, 8539, 8542, 8544, 8555, 8560, 8569, 8585, 8585, 8592, 8601, 8632, 8633, 8658, 8658, 8660, 8660, 8679, 8679, 8704, 8704, 8706, 8707, 8711, 8712, 8715, 8715, 8719, 8719, 8721, 8721, 8725, 8725, 8730, 8730, 8733, 8736, 8739, 8739, 8741, 8741, 8743, 8748, 8750, 8750, 8756, 8759, 8764, 8765, 8776, 8776, 8780, 8780, 8786, 8786, 8800, 8801, 8804, 8807, 8810, 8811, 8814, 8815, 8834, 8835, 8838, 8839, 8853, 8853, 8857, 8857, 8869, 8869, 8895, 8895, 8978, 8978, 9312, 9449, 9451, 9547, 9552, 9587, 9600, 9615, 9618, 9621, 9632, 9633, 9635, 9641, 9650, 9651, 9654, 9655, 9660, 9661, 9664, 9665, 9670, 9672, 9675, 9675, 9678, 9681, 9698, 9701, 9711, 9711, 9733, 9734, 9737, 9737, 9742, 9743, 9756, 9756, 9758, 9758, 9792, 9792, 9794, 9794, 9824, 9825, 9827, 9829, 9831, 9834, 9836, 9837, 9839, 9839, 9886, 9887, 9919, 9919, 9926, 9933, 9935, 9939, 9941, 9953, 9955, 9955, 9960, 9961, 9963, 9969, 9972, 9972, 9974, 9977, 9979, 9980, 9982, 9983, 10045, 10045, 10102, 10111, 11094, 11097, 12872, 12879, 57344, 63743, 65024, 65039, 65533, 65533, 127232, 127242, 127248, 127277, 127280, 127337, 127344, 127373, 127375, 127376, 127387, 127404, 917760, 917999, 983040, 1048573, 1048576, 1114109];
    fullwidthMinimalCodePoint = 12288;
    fullwidthMaximumCodePoint = 65510;
    fullwidthRanges = [12288, 12288, 65281, 65376, 65504, 65510];
    wideMinimalCodePoint = 4352;
    wideMaximumCodePoint = 262141;
    wideRanges = [4352, 4447, 8986, 8987, 9001, 9002, 9193, 9196, 9200, 9200, 9203, 9203, 9725, 9726, 9748, 9749, 9776, 9783, 9800, 9811, 9855, 9855, 9866, 9871, 9875, 9875, 9889, 9889, 9898, 9899, 9917, 9918, 9924, 9925, 9934, 9934, 9940, 9940, 9962, 9962, 9970, 9971, 9973, 9973, 9978, 9978, 9981, 9981, 9989, 9989, 9994, 9995, 10024, 10024, 10060, 10060, 10062, 10062, 10067, 10069, 10071, 10071, 10133, 10135, 10160, 10160, 10175, 10175, 11035, 11036, 11088, 11088, 11093, 11093, 11904, 11929, 11931, 12019, 12032, 12245, 12272, 12287, 12289, 12350, 12353, 12438, 12441, 12543, 12549, 12591, 12593, 12686, 12688, 12773, 12783, 12830, 12832, 12871, 12880, 42124, 42128, 42182, 43360, 43388, 44032, 55203, 63744, 64255, 65040, 65049, 65072, 65106, 65108, 65126, 65128, 65131, 94176, 94180, 94192, 94198, 94208, 101589, 101631, 101662, 101760, 101874, 110576, 110579, 110581, 110587, 110589, 110590, 110592, 110882, 110898, 110898, 110928, 110930, 110933, 110933, 110948, 110951, 110960, 111355, 119552, 119638, 119648, 119670, 126980, 126980, 127183, 127183, 127374, 127374, 127377, 127386, 127488, 127490, 127504, 127547, 127552, 127560, 127568, 127569, 127584, 127589, 127744, 127776, 127789, 127797, 127799, 127868, 127870, 127891, 127904, 127946, 127951, 127955, 127968, 127984, 127988, 127988, 127992, 128062, 128064, 128064, 128066, 128252, 128255, 128317, 128331, 128334, 128336, 128359, 128378, 128378, 128405, 128406, 128420, 128420, 128507, 128591, 128640, 128709, 128716, 128716, 128720, 128722, 128725, 128728, 128732, 128735, 128747, 128748, 128756, 128764, 128992, 129003, 129008, 129008, 129292, 129338, 129340, 129349, 129351, 129535, 129648, 129660, 129664, 129674, 129678, 129734, 129736, 129736, 129741, 129756, 129759, 129770, 129775, 129784, 131072, 196605, 196608, 262141];
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/get-east-asian-width/1.6.0/37e9246e73ebcb885c1face4cc4ea774962729e714e450dc09e40f0064a3529e/node_modules/get-east-asian-width/utilities.js
var isInRange;
var init_utilities2 = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/get-east-asian-width/1.6.0/37e9246e73ebcb885c1face4cc4ea774962729e714e450dc09e40f0064a3529e/node_modules/get-east-asian-width/utilities.js"() {
    isInRange = (ranges, codePoint) => {
      let low = 0;
      let high = Math.floor(ranges.length / 2) - 1;
      while (low <= high) {
        const mid = Math.floor((low + high) / 2);
        const i2 = mid * 2;
        if (codePoint < ranges[i2]) {
          high = mid - 1;
        } else if (codePoint > ranges[i2 + 1]) {
          low = mid + 1;
        } else {
          return true;
        }
      }
      return false;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/get-east-asian-width/1.6.0/37e9246e73ebcb885c1face4cc4ea774962729e714e450dc09e40f0064a3529e/node_modules/get-east-asian-width/lookup.js
function findWideFastPathRange(ranges) {
  let fastPathStart = ranges[0];
  let fastPathEnd = ranges[1];
  for (let index = 0; index < ranges.length; index += 2) {
    const start = ranges[index];
    const end = ranges[index + 1];
    if (commonCjkCodePoint >= start && commonCjkCodePoint <= end) {
      return [start, end];
    }
    if (end - start > fastPathEnd - fastPathStart) {
      fastPathStart = start;
      fastPathEnd = end;
    }
  }
  return [fastPathStart, fastPathEnd];
}
var commonCjkCodePoint, wideFastPathStart, wideFastPathEnd, isAmbiguous, isFullWidth, isWide;
var init_lookup = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/get-east-asian-width/1.6.0/37e9246e73ebcb885c1face4cc4ea774962729e714e450dc09e40f0064a3529e/node_modules/get-east-asian-width/lookup.js"() {
    init_lookup_data();
    init_utilities2();
    commonCjkCodePoint = 19968;
    [wideFastPathStart, wideFastPathEnd] = /* @__PURE__ */ findWideFastPathRange(wideRanges);
    isAmbiguous = (codePoint) => {
      if (codePoint < ambiguousMinimalCodePoint || codePoint > ambiguousMaximumCodePoint) {
        return false;
      }
      return isInRange(ambiguousRanges, codePoint);
    };
    isFullWidth = (codePoint) => {
      if (codePoint < fullwidthMinimalCodePoint || codePoint > fullwidthMaximumCodePoint) {
        return false;
      }
      return isInRange(fullwidthRanges, codePoint);
    };
    isWide = (codePoint) => {
      if (codePoint >= wideFastPathStart && codePoint <= wideFastPathEnd) {
        return true;
      }
      if (codePoint < wideMinimalCodePoint || codePoint > wideMaximumCodePoint) {
        return false;
      }
      return isInRange(wideRanges, codePoint);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/get-east-asian-width/1.6.0/37e9246e73ebcb885c1face4cc4ea774962729e714e450dc09e40f0064a3529e/node_modules/get-east-asian-width/index.js
function validate(codePoint) {
  if (!Number.isSafeInteger(codePoint)) {
    throw new TypeError(`Expected a code point, got \`${typeof codePoint}\`.`);
  }
}
function eastAsianWidth(codePoint, { ambiguousAsWide = false } = {}) {
  validate(codePoint);
  if (isFullWidth(codePoint) || isWide(codePoint) || ambiguousAsWide && isAmbiguous(codePoint)) {
    return 2;
  }
  return 1;
}
var init_get_east_asian_width = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/get-east-asian-width/1.6.0/37e9246e73ebcb885c1face4cc4ea774962729e714e450dc09e40f0064a3529e/node_modules/get-east-asian-width/index.js"() {
    init_lookup();
    init_lookup();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/is-fullwidth-code-point/5.1.0/47a7ef94d51229b946b2385a45667d045e7c6d987cfae9e4761c8f9b31893ff1/node_modules/is-fullwidth-code-point/index.js
function isFullwidthCodePoint(codePoint) {
  if (!Number.isInteger(codePoint)) {
    return false;
  }
  return isFullWidth(codePoint) || isWide(codePoint);
}
var init_is_fullwidth_code_point = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/is-fullwidth-code-point/5.1.0/47a7ef94d51229b946b2385a45667d045e7c6d987cfae9e4761c8f9b31893ff1/node_modules/is-fullwidth-code-point/index.js"() {
    init_get_east_asian_width();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/slice-ansi/8.0.0/d9921624d51197bca3913cba5153c6a5e0bea8d3191cdd8a27caebc723a03334/node_modules/slice-ansi/tokenize-ansi.js
function isSgrParameterCharacter(codePoint) {
  return codePoint >= CODE_POINT_0 && codePoint <= CODE_POINT_9 || codePoint === CODE_POINT_SEMICOLON || codePoint === CODE_POINT_COLON;
}
function isCsiParameterCharacter(codePoint) {
  return codePoint >= CODE_POINT_CSI_PARAMETER_START && codePoint <= CODE_POINT_CSI_PARAMETER_END;
}
function isCsiIntermediateCharacter(codePoint) {
  return codePoint >= CODE_POINT_CSI_INTERMEDIATE_START && codePoint <= CODE_POINT_CSI_INTERMEDIATE_END;
}
function isCsiFinalCharacter(codePoint) {
  return codePoint >= CODE_POINT_CSI_FINAL_START && codePoint <= CODE_POINT_CSI_FINAL_END;
}
function isRegionalIndicatorCodePoint(codePoint) {
  return codePoint >= REGIONAL_INDICATOR_SYMBOL_LETTER_A && codePoint <= REGIONAL_INDICATOR_SYMBOL_LETTER_Z;
}
function createControlParseResult(code, endIndex) {
  return {
    token: {
      type: "control",
      code
    },
    endIndex
  };
}
function isEmojiStyleGrapheme(grapheme) {
  if (EMOJI_PRESENTATION_GRAPHEME_REGEX.test(grapheme)) {
    return true;
  }
  for (const character of grapheme) {
    const codePoint = character.codePointAt(0);
    if (codePoint === VARIATION_SELECTOR_16_CODE_POINT || codePoint === COMBINING_ENCLOSING_KEYCAP_CODE_POINT) {
      return true;
    }
  }
  return false;
}
function getGraphemeWidth(grapheme) {
  let regionalIndicatorCount = 0;
  for (const character of grapheme) {
    const codePoint = character.codePointAt(0);
    if (isFullwidthCodePoint(codePoint)) {
      return 2;
    }
    if (isRegionalIndicatorCodePoint(codePoint)) {
      regionalIndicatorCount++;
    }
  }
  if (regionalIndicatorCount >= 1) {
    return 2;
  }
  if (isEmojiStyleGrapheme(grapheme)) {
    return 2;
  }
  return 1;
}
function getSgrPrefix(code) {
  if (code.startsWith("\x9B")) {
    return "\x9B";
  }
  return `${ESCAPE}${ANSI_CSI}`;
}
function createSgrCode(prefix, values) {
  return `${prefix}${values.join(";")}${ANSI_SGR_TERMINATOR}`;
}
function getSgrFragments(code) {
  const fragments = [];
  const sgrPrefix = getSgrPrefix(code);
  let parameterString;
  if (code.startsWith(`${ESCAPE}${ANSI_CSI}`)) {
    parameterString = code.slice(2, -1);
  } else if (code.startsWith("\x9B")) {
    parameterString = code.slice(1, -1);
  } else {
    return fragments;
  }
  const rawCodes = parameterString.length === 0 ? [String(SGR_RESET_CODE)] : parameterString.split(";");
  let index = 0;
  while (index < rawCodes.length) {
    const codeNumber = Number.parseInt(rawCodes[index], 10);
    if (Number.isNaN(codeNumber)) {
      index++;
      continue;
    }
    if (codeNumber === SGR_RESET_CODE) {
      fragments.push({ type: "reset" });
      index++;
      continue;
    }
    if (codeNumber === SGR_EXTENDED_FOREGROUND_CODE || codeNumber === SGR_EXTENDED_BACKGROUND_CODE) {
      const colorType = Number.parseInt(rawCodes[index + 1], 10);
      if (colorType === SGR_COLOR_TYPE_ANSI_256 && index + SGR_ANSI_256_LAST_PARAMETER_OFFSET < rawCodes.length) {
        const openCode3 = createSgrCode(sgrPrefix, rawCodes.slice(index, index + SGR_ANSI_256_FRAGMENT_LENGTH));
        fragments.push({
          type: "start",
          code: openCode3,
          endCode: ansi_styles_default2.color.ansi(codeNumber === SGR_EXTENDED_FOREGROUND_CODE ? SGR_DEFAULT_FOREGROUND_CODE : SGR_DEFAULT_BACKGROUND_CODE)
        });
        index += SGR_ANSI_256_FRAGMENT_LENGTH;
        continue;
      }
      if (colorType === SGR_COLOR_TYPE_TRUECOLOR && index + SGR_TRUECOLOR_LAST_PARAMETER_OFFSET < rawCodes.length) {
        const openCode3 = createSgrCode(sgrPrefix, rawCodes.slice(index, index + SGR_TRUECOLOR_FRAGMENT_LENGTH));
        fragments.push({
          type: "start",
          code: openCode3,
          endCode: ansi_styles_default2.color.ansi(codeNumber === SGR_EXTENDED_FOREGROUND_CODE ? SGR_DEFAULT_FOREGROUND_CODE : SGR_DEFAULT_BACKGROUND_CODE)
        });
        index += SGR_TRUECOLOR_FRAGMENT_LENGTH;
        continue;
      }
      const openCode2 = createSgrCode(sgrPrefix, [rawCodes[index]]);
      fragments.push({
        type: "start",
        code: openCode2,
        endCode: ansi_styles_default2.color.ansi(codeNumber === SGR_EXTENDED_FOREGROUND_CODE ? SGR_DEFAULT_FOREGROUND_CODE : SGR_DEFAULT_BACKGROUND_CODE)
      });
      index++;
      continue;
    }
    if (endCodeNumbers.has(codeNumber)) {
      fragments.push({
        type: "end",
        endCode: ansi_styles_default2.color.ansi(codeNumber)
      });
      index++;
      continue;
    }
    const mappedEndCode = ansi_styles_default2.codes.get(codeNumber);
    if (mappedEndCode !== void 0) {
      const openCode2 = createSgrCode(sgrPrefix, [rawCodes[index]]);
      fragments.push({
        type: "start",
        code: openCode2,
        endCode: ansi_styles_default2.color.ansi(mappedEndCode)
      });
      index++;
      continue;
    }
    const openCode = createSgrCode(sgrPrefix, [rawCodes[index]]);
    fragments.push({
      type: "start",
      code: openCode,
      endCode: ansi_styles_default2.reset.open
    });
    index++;
  }
  if (fragments.length === 0) {
    fragments.push({ type: "reset" });
  }
  return fragments;
}
function parseCsiCode(string, index) {
  const escapeCodePoint = string.codePointAt(index);
  let sequenceStartIndex;
  if (escapeCodePoint === ESCAPE_CODE_POINT) {
    if (string[index + 1] !== ANSI_CSI) {
      return;
    }
    sequenceStartIndex = index + 2;
  } else if (escapeCodePoint === C1_CSI_CODE_POINT) {
    sequenceStartIndex = index + 1;
  } else {
    return;
  }
  let hasCanonicalSgrParameters = true;
  for (let sequenceIndex = sequenceStartIndex; sequenceIndex < string.length; sequenceIndex++) {
    const codePoint = string.codePointAt(sequenceIndex);
    if (isCsiFinalCharacter(codePoint)) {
      const code = string.slice(index, sequenceIndex + 1);
      if (string[sequenceIndex] !== ANSI_SGR_TERMINATOR || !hasCanonicalSgrParameters) {
        return createControlParseResult(code, sequenceIndex + 1);
      }
      return {
        token: {
          type: "sgr",
          code,
          fragments: getSgrFragments(code)
        },
        endIndex: sequenceIndex + 1
      };
    }
    if (isCsiParameterCharacter(codePoint)) {
      if (!isSgrParameterCharacter(codePoint)) {
        hasCanonicalSgrParameters = false;
      }
      continue;
    }
    if (isCsiIntermediateCharacter(codePoint)) {
      hasCanonicalSgrParameters = false;
      continue;
    }
    const endIndex = sequenceIndex;
    return createControlParseResult(string.slice(index, endIndex), endIndex);
  }
  return createControlParseResult(string.slice(index), string.length);
}
function parseHyperlinkCode(string, index) {
  let hyperlinkPrefix;
  let hyperlinkClose;
  const codePoint = string.codePointAt(index);
  if (codePoint === ESCAPE_CODE_POINT && string.startsWith(ANSI_HYPERLINK_ESC_PREFIX, index)) {
    hyperlinkPrefix = ANSI_HYPERLINK_ESC_PREFIX;
    hyperlinkClose = ANSI_HYPERLINK_ESC_CLOSE;
  } else if (codePoint === C1_OSC_CODE_POINT && string.startsWith(ANSI_HYPERLINK_C1_PREFIX, index)) {
    hyperlinkPrefix = ANSI_HYPERLINK_C1_PREFIX;
    hyperlinkClose = ANSI_HYPERLINK_C1_CLOSE;
  } else {
    return;
  }
  const uriStart = string.indexOf(";", index + hyperlinkPrefix.length);
  if (uriStart === -1) {
    return createControlParseResult(string.slice(index), string.length);
  }
  for (let sequenceIndex = uriStart + 1; sequenceIndex < string.length; sequenceIndex++) {
    const character = string[sequenceIndex];
    if (character === ANSI_BELL) {
      const code = string.slice(index, sequenceIndex + 1);
      const action = sequenceIndex === uriStart + 1 ? "close" : "open";
      return {
        token: {
          type: "hyperlink",
          code,
          action,
          closePrefix: hyperlinkClose,
          terminator: ANSI_BELL
        },
        endIndex: sequenceIndex + 1
      };
    }
    if (character === ESCAPE && string[sequenceIndex + 1] === ANSI_OSC_TERMINATOR) {
      const code = string.slice(index, sequenceIndex + 2);
      const action = sequenceIndex === uriStart + 1 ? "close" : "open";
      return {
        token: {
          type: "hyperlink",
          code,
          action,
          closePrefix: hyperlinkClose,
          terminator: ANSI_STRING_TERMINATOR
        },
        endIndex: sequenceIndex + 2
      };
    }
    if (character === C1_STRING_TERMINATOR) {
      const code = string.slice(index, sequenceIndex + 1);
      const action = sequenceIndex === uriStart + 1 ? "close" : "open";
      return {
        token: {
          type: "hyperlink",
          code,
          action,
          closePrefix: hyperlinkClose,
          terminator: C1_STRING_TERMINATOR
        },
        endIndex: sequenceIndex + 1
      };
    }
  }
  return createControlParseResult(string.slice(index), string.length);
}
function parseControlStringCode(string, index) {
  const codePoint = string.codePointAt(index);
  let sequenceStartIndex;
  let supportsBellTerminator = false;
  switch (codePoint) {
    case ESCAPE_CODE_POINT: {
      const command = string[index + 1];
      switch (command) {
        case ANSI_OSC: {
          sequenceStartIndex = index + 2;
          supportsBellTerminator = true;
          break;
        }
        case ANSI_DCS:
        case ANSI_SOS:
        case ANSI_PM:
        case ANSI_APC: {
          sequenceStartIndex = index + 2;
          break;
        }
        case ANSI_OSC_TERMINATOR: {
          return createControlParseResult(ANSI_STRING_TERMINATOR, index + 2);
        }
        default: {
          return;
        }
      }
      break;
    }
    case C1_OSC_CODE_POINT: {
      sequenceStartIndex = index + 1;
      supportsBellTerminator = true;
      break;
    }
    case C1_DCS_CODE_POINT:
    case C1_SOS_CODE_POINT:
    case C1_PM_CODE_POINT:
    case C1_APC_CODE_POINT: {
      sequenceStartIndex = index + 1;
      break;
    }
    case C1_ST_CODE_POINT: {
      return createControlParseResult(C1_STRING_TERMINATOR, index + 1);
    }
    default: {
      return;
    }
  }
  for (let sequenceIndex = sequenceStartIndex; sequenceIndex < string.length; sequenceIndex++) {
    if (supportsBellTerminator && string[sequenceIndex] === ANSI_BELL) {
      return createControlParseResult(string.slice(index, sequenceIndex + 1), sequenceIndex + 1);
    }
    if (string[sequenceIndex] === ESCAPE && string[sequenceIndex + 1] === ANSI_OSC_TERMINATOR) {
      return createControlParseResult(string.slice(index, sequenceIndex + 2), sequenceIndex + 2);
    }
    if (string[sequenceIndex] === C1_STRING_TERMINATOR) {
      return createControlParseResult(string.slice(index, sequenceIndex + 1), sequenceIndex + 1);
    }
  }
  return createControlParseResult(string.slice(index), string.length);
}
function parseAnsiCode(string, index) {
  const codePoint = string.codePointAt(index);
  if (codePoint === ESCAPE_CODE_POINT || codePoint === C1_OSC_CODE_POINT) {
    const hyperlinkCode = parseHyperlinkCode(string, index);
    if (hyperlinkCode) {
      return hyperlinkCode;
    }
  }
  const controlStringCode = parseControlStringCode(string, index);
  if (controlStringCode) {
    return controlStringCode;
  }
  return parseCsiCode(string, index);
}
function appendTrailingAnsiTokens(string, index, tokens) {
  while (index < string.length) {
    const nextCodePoint = string.codePointAt(index);
    if (!ESCAPES.has(nextCodePoint)) {
      break;
    }
    const escapeCode = parseAnsiCode(string, index);
    if (!escapeCode) {
      break;
    }
    tokens.push(escapeCode.token);
    index = escapeCode.endIndex;
  }
  return index;
}
function parseCharacterTokenWithRawSegmentation(string, index, graphemeSegments) {
  const segment = graphemeSegments.containing(index);
  if (!segment || segment.index !== index) {
    return;
  }
  return {
    token: {
      type: "character",
      // Intentionally preserve UAX29 behavior (GB3): CRLF is one grapheme cluster.
      value: segment.segment,
      visibleWidth: getGraphemeWidth(segment.segment),
      isGraphemeContinuation: false
    },
    endIndex: index + segment.segment.length
  };
}
function collectVisibleCharacters(string) {
  const visibleCharacters = [];
  let index = 0;
  while (index < string.length) {
    const codePoint = string.codePointAt(index);
    if (ESCAPES.has(codePoint)) {
      const code = parseAnsiCode(string, index);
      if (code) {
        index = code.endIndex;
        continue;
      }
    }
    const value = String.fromCodePoint(codePoint);
    visibleCharacters.push({
      value,
      visibleWidth: 1,
      isGraphemeContinuation: false
    });
    index += value.length;
  }
  return visibleCharacters;
}
function applyGraphemeMetadata(visibleCharacters) {
  if (visibleCharacters.length === 0) {
    return;
  }
  const visibleString = visibleCharacters.map(({ value }) => value).join("");
  const scalarOffsets = [];
  let scalarOffset = 0;
  for (const visibleCharacter of visibleCharacters) {
    scalarOffsets.push(scalarOffset);
    scalarOffset += visibleCharacter.value.length;
  }
  let scalarIndex = 0;
  for (const segment of GRAPHEME_SEGMENTER.segment(visibleString)) {
    while (scalarIndex < visibleCharacters.length && scalarOffsets[scalarIndex] < segment.index) {
      scalarIndex++;
    }
    let graphemeIndex = scalarIndex;
    let isFirstInGrapheme = true;
    while (graphemeIndex < visibleCharacters.length && scalarOffsets[graphemeIndex] < segment.index + segment.segment.length) {
      visibleCharacters[graphemeIndex].visibleWidth = isFirstInGrapheme ? getGraphemeWidth(segment.segment) : 0;
      visibleCharacters[graphemeIndex].isGraphemeContinuation = !isFirstInGrapheme;
      isFirstInGrapheme = false;
      graphemeIndex++;
    }
    scalarIndex = graphemeIndex;
  }
}
function tokenizeAnsiWithVisibleSegmentation(string, { endCharacter = Number.POSITIVE_INFINITY } = {}) {
  const tokens = [];
  const visibleCharacters = collectVisibleCharacters(string);
  applyGraphemeMetadata(visibleCharacters);
  let index = 0;
  let visibleCharacterIndex = 0;
  let visibleCount = 0;
  while (index < string.length) {
    const codePoint = string.codePointAt(index);
    if (ESCAPES.has(codePoint)) {
      const code = parseAnsiCode(string, index);
      if (code) {
        tokens.push(code.token);
        index = code.endIndex;
        continue;
      }
    }
    const value = String.fromCodePoint(codePoint);
    const visibleCharacter = visibleCharacters[visibleCharacterIndex];
    let visibleWidth = isFullwidthCodePoint(codePoint) ? 2 : value.length;
    if (visibleCharacter) {
      visibleWidth = visibleCharacter.visibleWidth;
    }
    const token = {
      type: "character",
      value,
      visibleWidth,
      isGraphemeContinuation: visibleCharacter ? visibleCharacter.isGraphemeContinuation : false
    };
    tokens.push(token);
    index += value.length;
    visibleCharacterIndex++;
    visibleCount += token.visibleWidth;
    if (visibleCount >= endCharacter) {
      const nextVisibleCharacter = visibleCharacters[visibleCharacterIndex];
      if (!nextVisibleCharacter || !nextVisibleCharacter.isGraphemeContinuation) {
        index = appendTrailingAnsiTokens(string, index, tokens);
        break;
      }
    }
  }
  return tokens;
}
function areValuesInSameGrapheme(leftValue, rightValue) {
  const pair = `${leftValue}${rightValue}`;
  const splitIndex = leftValue.length;
  for (const segment of GRAPHEME_SEGMENTER.segment(pair)) {
    if (segment.index === splitIndex) {
      return false;
    }
    if (segment.index > splitIndex) {
      return true;
    }
  }
  return true;
}
function hasAnsiSplitContinuationAhead(string, startIndex, previousVisibleValue, graphemeSegments) {
  if (!previousVisibleValue) {
    return false;
  }
  let index = startIndex;
  let hasAnsiCode = false;
  while (index < string.length) {
    const codePoint = string.codePointAt(index);
    if (ESCAPES.has(codePoint)) {
      const code = parseAnsiCode(string, index);
      if (code) {
        hasAnsiCode = true;
        index = code.endIndex;
        continue;
      }
    }
    if (!hasAnsiCode) {
      return false;
    }
    const characterToken = parseCharacterTokenWithRawSegmentation(string, index, graphemeSegments);
    if (!characterToken) {
      return true;
    }
    return areValuesInSameGrapheme(previousVisibleValue, characterToken.token.value);
  }
  return false;
}
function tokenizeAnsi(string, { endCharacter = Number.POSITIVE_INFINITY } = {}) {
  const tokens = [];
  const graphemeSegments = GRAPHEME_SEGMENTER.segment(string);
  let index = 0;
  let visibleCount = 0;
  let previousVisibleValue;
  let hasAnsiSinceLastVisible = false;
  while (index < string.length) {
    const codePoint = string.codePointAt(index);
    if (ESCAPES.has(codePoint)) {
      const code = parseAnsiCode(string, index);
      if (code) {
        tokens.push(code.token);
        index = code.endIndex;
        hasAnsiSinceLastVisible = true;
        continue;
      }
    }
    const characterToken = parseCharacterTokenWithRawSegmentation(string, index, graphemeSegments);
    if (!characterToken) {
      return tokenizeAnsiWithVisibleSegmentation(string, { endCharacter });
    }
    if (hasAnsiSinceLastVisible && previousVisibleValue && areValuesInSameGrapheme(previousVisibleValue, characterToken.token.value)) {
      return tokenizeAnsiWithVisibleSegmentation(string, { endCharacter });
    }
    tokens.push(characterToken.token);
    index = characterToken.endIndex;
    visibleCount += characterToken.token.visibleWidth;
    hasAnsiSinceLastVisible = false;
    previousVisibleValue = characterToken.token.value;
    if (visibleCount >= endCharacter) {
      if (hasAnsiSplitContinuationAhead(string, index, previousVisibleValue, graphemeSegments)) {
        return tokenizeAnsiWithVisibleSegmentation(string, { endCharacter });
      }
      index = appendTrailingAnsiTokens(string, index, tokens);
      break;
    }
  }
  return tokens;
}
var ESCAPE_CODE_POINT, C1_DCS_CODE_POINT, C1_SOS_CODE_POINT, C1_CSI_CODE_POINT, C1_ST_CODE_POINT, C1_OSC_CODE_POINT, C1_PM_CODE_POINT, C1_APC_CODE_POINT, ESCAPES, ESCAPE, ANSI_BELL, ANSI_CSI, ANSI_OSC, ANSI_DCS, ANSI_SOS, ANSI_PM, ANSI_APC, ANSI_SGR_TERMINATOR, ANSI_OSC_TERMINATOR, ANSI_STRING_TERMINATOR, C1_OSC, C1_STRING_TERMINATOR, ANSI_HYPERLINK_ESC_PREFIX, ANSI_HYPERLINK_C1_PREFIX, ANSI_HYPERLINK_ESC_CLOSE, ANSI_HYPERLINK_C1_CLOSE, CODE_POINT_0, CODE_POINT_9, CODE_POINT_SEMICOLON, CODE_POINT_COLON, CODE_POINT_CSI_PARAMETER_START, CODE_POINT_CSI_PARAMETER_END, CODE_POINT_CSI_INTERMEDIATE_START, CODE_POINT_CSI_INTERMEDIATE_END, CODE_POINT_CSI_FINAL_START, CODE_POINT_CSI_FINAL_END, REGIONAL_INDICATOR_SYMBOL_LETTER_A, REGIONAL_INDICATOR_SYMBOL_LETTER_Z, SGR_RESET_CODE, SGR_EXTENDED_FOREGROUND_CODE, SGR_DEFAULT_FOREGROUND_CODE, SGR_EXTENDED_BACKGROUND_CODE, SGR_DEFAULT_BACKGROUND_CODE, SGR_COLOR_TYPE_ANSI_256, SGR_COLOR_TYPE_TRUECOLOR, SGR_ANSI_256_FRAGMENT_LENGTH, SGR_TRUECOLOR_FRAGMENT_LENGTH, SGR_ANSI_256_LAST_PARAMETER_OFFSET, SGR_TRUECOLOR_LAST_PARAMETER_OFFSET, VARIATION_SELECTOR_16_CODE_POINT, COMBINING_ENCLOSING_KEYCAP_CODE_POINT, EMOJI_PRESENTATION_GRAPHEME_REGEX, GRAPHEME_SEGMENTER, endCodeNumbers;
var init_tokenize_ansi = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/slice-ansi/8.0.0/d9921624d51197bca3913cba5153c6a5e0bea8d3191cdd8a27caebc723a03334/node_modules/slice-ansi/tokenize-ansi.js"() {
    init_ansi_styles2();
    init_is_fullwidth_code_point();
    ESCAPE_CODE_POINT = 27;
    C1_DCS_CODE_POINT = 144;
    C1_SOS_CODE_POINT = 152;
    C1_CSI_CODE_POINT = 155;
    C1_ST_CODE_POINT = 156;
    C1_OSC_CODE_POINT = 157;
    C1_PM_CODE_POINT = 158;
    C1_APC_CODE_POINT = 159;
    ESCAPES = /* @__PURE__ */ new Set([
      ESCAPE_CODE_POINT,
      C1_DCS_CODE_POINT,
      C1_SOS_CODE_POINT,
      C1_CSI_CODE_POINT,
      C1_ST_CODE_POINT,
      C1_OSC_CODE_POINT,
      C1_PM_CODE_POINT,
      C1_APC_CODE_POINT
    ]);
    ESCAPE = "\x1B";
    ANSI_BELL = "\x07";
    ANSI_CSI = "[";
    ANSI_OSC = "]";
    ANSI_DCS = "P";
    ANSI_SOS = "X";
    ANSI_PM = "^";
    ANSI_APC = "_";
    ANSI_SGR_TERMINATOR = "m";
    ANSI_OSC_TERMINATOR = "\\";
    ANSI_STRING_TERMINATOR = `${ESCAPE}${ANSI_OSC_TERMINATOR}`;
    C1_OSC = "\x9D";
    C1_STRING_TERMINATOR = "\x9C";
    ANSI_HYPERLINK_ESC_PREFIX = `${ESCAPE}${ANSI_OSC}8;`;
    ANSI_HYPERLINK_C1_PREFIX = `${C1_OSC}8;`;
    ANSI_HYPERLINK_ESC_CLOSE = `${ANSI_HYPERLINK_ESC_PREFIX};`;
    ANSI_HYPERLINK_C1_CLOSE = `${ANSI_HYPERLINK_C1_PREFIX};`;
    CODE_POINT_0 = "0".codePointAt(0);
    CODE_POINT_9 = "9".codePointAt(0);
    CODE_POINT_SEMICOLON = ";".codePointAt(0);
    CODE_POINT_COLON = ":".codePointAt(0);
    CODE_POINT_CSI_PARAMETER_START = "0".codePointAt(0);
    CODE_POINT_CSI_PARAMETER_END = "?".codePointAt(0);
    CODE_POINT_CSI_INTERMEDIATE_START = " ".codePointAt(0);
    CODE_POINT_CSI_INTERMEDIATE_END = "/".codePointAt(0);
    CODE_POINT_CSI_FINAL_START = "@".codePointAt(0);
    CODE_POINT_CSI_FINAL_END = "~".codePointAt(0);
    REGIONAL_INDICATOR_SYMBOL_LETTER_A = 127462;
    REGIONAL_INDICATOR_SYMBOL_LETTER_Z = 127487;
    SGR_RESET_CODE = 0;
    SGR_EXTENDED_FOREGROUND_CODE = 38;
    SGR_DEFAULT_FOREGROUND_CODE = 39;
    SGR_EXTENDED_BACKGROUND_CODE = 48;
    SGR_DEFAULT_BACKGROUND_CODE = 49;
    SGR_COLOR_TYPE_ANSI_256 = 5;
    SGR_COLOR_TYPE_TRUECOLOR = 2;
    SGR_ANSI_256_FRAGMENT_LENGTH = 3;
    SGR_TRUECOLOR_FRAGMENT_LENGTH = 5;
    SGR_ANSI_256_LAST_PARAMETER_OFFSET = 2;
    SGR_TRUECOLOR_LAST_PARAMETER_OFFSET = 4;
    VARIATION_SELECTOR_16_CODE_POINT = 65039;
    COMBINING_ENCLOSING_KEYCAP_CODE_POINT = 8419;
    EMOJI_PRESENTATION_GRAPHEME_REGEX = /\p{Emoji_Presentation}/u;
    GRAPHEME_SEGMENTER = new Intl.Segmenter(void 0, { granularity: "grapheme" });
    endCodeNumbers = /* @__PURE__ */ new Set();
    for (const [, end] of ansi_styles_default2.codes) {
      endCodeNumbers.add(end);
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/slice-ansi/8.0.0/d9921624d51197bca3913cba5153c6a5e0bea8d3191cdd8a27caebc723a03334/node_modules/slice-ansi/index.js
function applySgrFragments(activeStyles, fragments) {
  for (const fragment of fragments) {
    switch (fragment.type) {
      case "reset": {
        activeStyles.clear();
        break;
      }
      case "end": {
        activeStyles.delete(fragment.endCode);
        break;
      }
      case "start": {
        activeStyles.delete(fragment.endCode);
        activeStyles.set(fragment.endCode, fragment.code);
        break;
      }
      default: {
        break;
      }
    }
  }
  return activeStyles;
}
function undoAnsiCodes(activeStyles) {
  return [...activeStyles.keys()].reverse().join("");
}
function closeHyperlink(hyperlinkToken) {
  return `${hyperlinkToken.closePrefix}${hyperlinkToken.terminator}`;
}
function shouldIncludeSgrAfterEnd(token, activeStyles) {
  let hasStartFragment = false;
  let hasClosingEffect = false;
  for (const fragment of token.fragments) {
    if (fragment.type === "start") {
      hasStartFragment = true;
      continue;
    }
    if (fragment.type === "reset" && activeStyles.size > 0) {
      hasClosingEffect = true;
      continue;
    }
    if (fragment.type === "end" && activeStyles.has(fragment.endCode)) {
      hasClosingEffect = true;
    }
  }
  return hasClosingEffect && !hasStartFragment;
}
function applySgrToken({ token, isPastEnd, activeStyles, returnValue, include, activeHyperlink, position: position3 }) {
  if (isPastEnd && !shouldIncludeSgrAfterEnd(token, activeStyles)) {
    return {
      activeStyles,
      activeHyperlink,
      position: position3,
      returnValue,
      include
    };
  }
  activeStyles = applySgrFragments(activeStyles, token.fragments);
  if (include) {
    returnValue += token.code;
  }
  return {
    activeStyles,
    activeHyperlink,
    position: position3,
    returnValue,
    include
  };
}
function applyHyperlinkToken({ token, isPastEnd, activeStyles, activeHyperlink, position: position3, returnValue, include }) {
  if (isPastEnd && (token.action !== "close" || !activeHyperlink)) {
    return {
      activeStyles,
      activeHyperlink,
      position: position3,
      returnValue,
      include
    };
  }
  if (token.action === "open") {
    activeHyperlink = token;
  } else if (token.action === "close") {
    activeHyperlink = void 0;
  }
  if (include) {
    returnValue += token.code;
  }
  return {
    activeStyles,
    activeHyperlink,
    position: position3,
    returnValue,
    include
  };
}
function applyControlToken({ token, isPastEnd, activeStyles, activeHyperlink, position: position3, returnValue, include }) {
  if (!isPastEnd && include) {
    returnValue += token.code;
  }
  return {
    activeStyles,
    activeHyperlink,
    position: position3,
    returnValue,
    include
  };
}
function applyCharacterToken({ token, start, activeStyles, activeHyperlink, position: position3, returnValue, include }) {
  if (!include && position3 >= start && !token.isGraphemeContinuation) {
    include = true;
    returnValue = [...activeStyles.values()].join("");
    if (activeHyperlink) {
      returnValue += activeHyperlink.code;
    }
  }
  if (include) {
    returnValue += token.value;
  }
  position3 += token.visibleWidth;
  return {
    activeStyles,
    activeHyperlink,
    position: position3,
    returnValue,
    include
  };
}
function applyToken(parameters) {
  const tokenHandler = tokenHandlers[parameters.token.type];
  if (!tokenHandler) {
    const {
      activeStyles,
      activeHyperlink,
      position: position3,
      returnValue,
      include
    } = parameters;
    return {
      activeStyles,
      activeHyperlink,
      position: position3,
      returnValue,
      include
    };
  }
  return tokenHandler(parameters);
}
function createHasContinuationAheadMap(tokens) {
  const hasContinuationAhead = Array.from({ length: tokens.length }, () => false);
  let nextCharacterIsContinuation = false;
  for (let tokenIndex = tokens.length - 1; tokenIndex >= 0; tokenIndex--) {
    const token = tokens[tokenIndex];
    hasContinuationAhead[tokenIndex] = nextCharacterIsContinuation;
    if (token.type === "character") {
      nextCharacterIsContinuation = Boolean(token.isGraphemeContinuation);
    }
  }
  return hasContinuationAhead;
}
function sliceAnsi(string, start, end) {
  const tokens = tokenizeAnsi(string, { endCharacter: end });
  const hasContinuationAhead = createHasContinuationAheadMap(tokens);
  let activeStyles = /* @__PURE__ */ new Map();
  let activeHyperlink;
  let position3 = 0;
  let returnValue = "";
  let include = false;
  for (const [tokenIndex, token] of tokens.entries()) {
    let isPastEnd = end !== void 0 && position3 >= end;
    if (isPastEnd && token.type !== "character" && hasContinuationAhead[tokenIndex]) {
      isPastEnd = false;
    }
    if (isPastEnd && token.type === "character" && !token.isGraphemeContinuation) {
      break;
    }
    ({ activeStyles, activeHyperlink, position: position3, returnValue, include } = applyToken({
      token,
      isPastEnd,
      start,
      activeStyles,
      activeHyperlink,
      position: position3,
      returnValue,
      include
    }));
  }
  if (!include) {
    return "";
  }
  if (activeHyperlink) {
    returnValue += closeHyperlink(activeHyperlink);
  }
  returnValue += undoAnsiCodes(activeStyles);
  return returnValue;
}
var tokenHandlers;
var init_slice_ansi = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/slice-ansi/8.0.0/d9921624d51197bca3913cba5153c6a5e0bea8d3191cdd8a27caebc723a03334/node_modules/slice-ansi/index.js"() {
    init_tokenize_ansi();
    tokenHandlers = {
      sgr: applySgrToken,
      hyperlink: applyHyperlinkToken,
      control: applyControlToken,
      character: applyCharacterToken
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/ansi-regex/6.2.2/e87168740025744f72ca0c05c5e075a510c13de11cd9846cb8287b9a1caaed47/node_modules/ansi-regex/index.js
function ansiRegex({ onlyFirst = false } = {}) {
  const ST = "(?:\\u0007|\\u001B\\u005C|\\u009C)";
  const osc = `(?:\\u001B\\][\\s\\S]*?${ST})`;
  const csi = "[\\u001B\\u009B][[\\]()#;?]*(?:\\d{1,4}(?:[;:]\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]";
  const pattern = `${osc}|${csi}`;
  return new RegExp(pattern, onlyFirst ? void 0 : "g");
}
var init_ansi_regex = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/ansi-regex/6.2.2/e87168740025744f72ca0c05c5e075a510c13de11cd9846cb8287b9a1caaed47/node_modules/ansi-regex/index.js"() {
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/strip-ansi/7.2.0/43698a1024e039b67ddc9e75eedc0106776977b92887e9f796855f189838084d/node_modules/strip-ansi/index.js
function stripAnsi2(string) {
  if (typeof string !== "string") {
    throw new TypeError(`Expected a \`string\`, got \`${typeof string}\``);
  }
  if (!string.includes("\x1B") && !string.includes("\x9B")) {
    return string;
  }
  return string.replace(regex, "");
}
var regex;
var init_strip_ansi = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/strip-ansi/7.2.0/43698a1024e039b67ddc9e75eedc0106776977b92887e9f796855f189838084d/node_modules/strip-ansi/index.js"() {
    init_ansi_regex();
    regex = ansiRegex();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/string-width/8.2.1/81d03a9a16ccf2f5d7a92283642aeede6e1f45198699a8f61240c3ebd706fd93/node_modules/string-width/index.js
function isDoubleWidthNonRgiEmojiSequence(segment) {
  if (segment.length > 50) {
    return false;
  }
  if (unqualifiedKeycapRegex.test(segment)) {
    return true;
  }
  if (segment.includes("\u200D")) {
    const pictographics = segment.match(extendedPictographicRegex);
    return pictographics !== null && pictographics.length >= 2;
  }
  return false;
}
function baseVisible(segment) {
  return segment.replace(leadingNonPrintingRegex, "");
}
function isZeroWidthCluster(segment) {
  return zeroWidthClusterRegex.test(segment);
}
function isHangulLeadingJamo(codePoint) {
  return codePoint >= 4352 && codePoint <= 4447 || codePoint >= 43360 && codePoint <= 43388;
}
function isHangulVowelJamo(codePoint) {
  return codePoint >= 4448 && codePoint <= 4519 || codePoint >= 55216 && codePoint <= 55238;
}
function isHangulTrailingJamo(codePoint) {
  return codePoint >= 4520 && codePoint <= 4607 || codePoint >= 55243 && codePoint <= 55291;
}
function isHangulJamo(codePoint) {
  return isHangulLeadingJamo(codePoint) || isHangulVowelJamo(codePoint) || isHangulTrailingJamo(codePoint);
}
function hangulClusterWidth(visibleSegment, eastAsianWidthOptions) {
  const codePoints = [];
  for (const character of visibleSegment) {
    if (zeroWidthClusterRegex.test(character)) {
      continue;
    }
    codePoints.push(character.codePointAt(0));
  }
  if (codePoints.length === 0) {
    return void 0;
  }
  let width = 0;
  for (let index = 0; index < codePoints.length; index++) {
    const codePoint = codePoints[index];
    if (!isHangulJamo(codePoint)) {
      if (width === 0) {
        return void 0;
      }
      for (let remaining = index; remaining < codePoints.length; remaining++) {
        width += eastAsianWidth(codePoints[remaining], eastAsianWidthOptions);
      }
      return width;
    }
    if (isHangulLeadingJamo(codePoint) && isHangulVowelJamo(codePoints[index + 1])) {
      width += 2;
      index += isHangulTrailingJamo(codePoints[index + 2]) ? 2 : 1;
      continue;
    }
    width += eastAsianWidth(codePoint, eastAsianWidthOptions);
  }
  return width;
}
function trailingHalfwidthWidth(visibleSegment, eastAsianWidthOptions) {
  let extra = 0;
  let first = true;
  for (const character of visibleSegment) {
    if (first) {
      first = false;
      continue;
    }
    if (character >= "\uFF00" && character <= "\uFFEF") {
      extra += eastAsianWidth(character.codePointAt(0), eastAsianWidthOptions);
    }
  }
  return extra;
}
function stringWidth(input, options = {}) {
  if (typeof input !== "string" || input.length === 0) {
    return 0;
  }
  const {
    ambiguousIsNarrow = true,
    countAnsiEscapeCodes = false
  } = options;
  let string = input;
  if (!countAnsiEscapeCodes && (string.includes("\x1B") || string.includes("\x9B"))) {
    string = stripAnsi2(string);
  }
  if (string.length === 0) {
    return 0;
  }
  if (/^[\u0020-\u007E]*$/.test(string)) {
    return string.length;
  }
  let width = 0;
  const eastAsianWidthOptions = { ambiguousAsWide: !ambiguousIsNarrow };
  for (const { segment } of segmenter.segment(string)) {
    if (isZeroWidthCluster(segment)) {
      continue;
    }
    if (rgiEmojiRegex.test(segment) || isDoubleWidthNonRgiEmojiSequence(segment)) {
      width += 2;
      continue;
    }
    const visibleSegment = baseVisible(segment);
    const hangulWidth = hangulClusterWidth(visibleSegment, eastAsianWidthOptions);
    if (hangulWidth !== void 0) {
      width += hangulWidth;
      continue;
    }
    const codePoint = visibleSegment.codePointAt(0);
    width += eastAsianWidth(codePoint, eastAsianWidthOptions);
    width += trailingHalfwidthWidth(visibleSegment, eastAsianWidthOptions);
  }
  return width;
}
var segmenter, zeroWidthClusterRegex, leadingNonPrintingRegex, rgiEmojiRegex, unqualifiedKeycapRegex, extendedPictographicRegex;
var init_string_width = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/string-width/8.2.1/81d03a9a16ccf2f5d7a92283642aeede6e1f45198699a8f61240c3ebd706fd93/node_modules/string-width/index.js"() {
    init_strip_ansi();
    init_get_east_asian_width();
    segmenter = new Intl.Segmenter();
    zeroWidthClusterRegex = /^(?:\p{Default_Ignorable_Code_Point}|\p{Control}|\p{Format}|\p{Mark}|\p{Surrogate})+$/v;
    leadingNonPrintingRegex = /^[\p{Default_Ignorable_Code_Point}\p{Control}\p{Format}\p{Mark}\p{Surrogate}]+/v;
    rgiEmojiRegex = /^\p{RGI_Emoji}$/v;
    unqualifiedKeycapRegex = /^[\d#*]\u20E3$/;
    extendedPictographicRegex = /\p{Extended_Pictographic}/gu;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/cli-truncate/5.2.0/d3f51889374679fc79b105ce0164b0e0123f1848c20d92eb9029d790bd3d4d30/node_modules/cli-truncate/index.js
function getIndexOfNearestSpace(string, wantedIndex, shouldSearchRight) {
  if (string.charAt(wantedIndex) === " ") {
    return wantedIndex;
  }
  const direction = shouldSearchRight ? 1 : -1;
  for (let index = 0; index <= 3; index++) {
    const finalIndex = wantedIndex + index * direction;
    if (string.charAt(finalIndex) === " ") {
      return finalIndex;
    }
  }
  return wantedIndex;
}
function cliTruncate(text, columns, options = {}) {
  const {
    position: position3 = "end",
    space = false,
    preferTruncationOnSpace = false
  } = options;
  let { truncationCharacter = "\u2026" } = options;
  if (typeof text !== "string") {
    throw new TypeError(`Expected \`input\` to be a string, got ${typeof text}`);
  }
  if (typeof columns !== "number") {
    throw new TypeError(`Expected \`columns\` to be a number, got ${typeof columns}`);
  }
  if (columns < 1) {
    return "";
  }
  const length = stringWidth(text);
  if (length <= columns) {
    return text;
  }
  if (columns === 1) {
    return truncationCharacter;
  }
  const ANSI = {
    ESC: 27,
    LEFT_BRACKET: 91,
    LETTER_M: 109
  };
  const isSgrParameter = (code) => code >= 48 && code <= 57 || code === 59;
  function leadingSgrSpanEndIndex(string) {
    let index = 0;
    while (index + 2 < string.length && string.codePointAt(index) === ANSI.ESC && string.codePointAt(index + 1) === ANSI.LEFT_BRACKET) {
      let j2 = index + 2;
      while (j2 < string.length && isSgrParameter(string.codePointAt(j2))) {
        j2++;
      }
      if (j2 < string.length && string.codePointAt(j2) === ANSI.LETTER_M) {
        index = j2 + 1;
        continue;
      }
      break;
    }
    return index;
  }
  function trailingSgrSpanStartIndex(string) {
    let start = string.length;
    while (start > 1 && string.codePointAt(start - 1) === ANSI.LETTER_M) {
      let j2 = start - 2;
      while (j2 >= 0 && isSgrParameter(string.codePointAt(j2))) {
        j2--;
      }
      if (j2 >= 1 && string.codePointAt(j2 - 1) === ANSI.ESC && string.codePointAt(j2) === ANSI.LEFT_BRACKET) {
        start = j2 - 1;
        continue;
      }
      break;
    }
    return start;
  }
  function appendWithInheritedStyleFromEnd(visible, suffix) {
    const start = trailingSgrSpanStartIndex(visible);
    if (start === visible.length) {
      return visible + suffix;
    }
    return visible.slice(0, start) + suffix + visible.slice(start);
  }
  function prependWithInheritedStyleFromStart(prefix, visible) {
    const end = leadingSgrSpanEndIndex(visible);
    if (end === 0) {
      return prefix + visible;
    }
    return visible.slice(0, end) + prefix + visible.slice(end);
  }
  if (position3 === "start") {
    if (preferTruncationOnSpace) {
      const nearestSpace = getIndexOfNearestSpace(text, length - columns + 1, true);
      const right2 = sliceAnsi(text, nearestSpace, length).trim();
      return prependWithInheritedStyleFromStart(truncationCharacter, right2);
    }
    if (space) {
      truncationCharacter += " ";
    }
    const right = sliceAnsi(text, length - columns + stringWidth(truncationCharacter), length);
    return prependWithInheritedStyleFromStart(truncationCharacter, right);
  }
  if (position3 === "middle") {
    if (space) {
      truncationCharacter = ` ${truncationCharacter} `;
    }
    const half = Math.floor(columns / 2);
    if (preferTruncationOnSpace) {
      const spaceNearFirstBreakPoint = getIndexOfNearestSpace(text, half);
      const spaceNearSecondBreakPoint = getIndexOfNearestSpace(text, length - (columns - half) + 1, true);
      return sliceAnsi(text, 0, spaceNearFirstBreakPoint) + truncationCharacter + sliceAnsi(text, spaceNearSecondBreakPoint, length).trim();
    }
    return sliceAnsi(text, 0, half) + truncationCharacter + sliceAnsi(text, length - (columns - half) + stringWidth(truncationCharacter), length);
  }
  if (position3 === "end") {
    if (preferTruncationOnSpace) {
      const nearestSpace = getIndexOfNearestSpace(text, columns - 1);
      const left2 = sliceAnsi(text, 0, nearestSpace);
      return appendWithInheritedStyleFromEnd(left2, truncationCharacter);
    }
    if (space) {
      truncationCharacter = ` ${truncationCharacter}`;
    }
    const left = sliceAnsi(text, 0, columns - stringWidth(truncationCharacter));
    return appendWithInheritedStyleFromEnd(left, truncationCharacter);
  }
  throw new Error(`Expected \`options.position\` to be either \`start\`, \`middle\` or \`end\`, got ${position3}`);
}
var init_cli_truncate = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/cli-truncate/5.2.0/d3f51889374679fc79b105ce0164b0e0123f1848c20d92eb9029d790bd3d4d30/node_modules/cli-truncate/index.js"() {
    init_slice_ansi();
    init_string_width();
  }
});

// ../cli/default-reporter/lib/reporterForClient/reportLifecycleScripts.js
import path211 from "node:path";
function reportLifecycleScripts(log$, opts2) {
  if (opts2.appendOnly) {
    let lifecycle$ = log$.lifecycle;
    if (opts2.aggregateOutput) {
      lifecycle$ = lifecycle$.pipe(aggregateOutput);
    }
    const streamLifecycleOutput2 = createStreamLifecycleOutput(opts2.cwd, !!opts2.hideLifecyclePrefix);
    return lifecycle$.pipe((0, import_operators10.map)((log3) => Rx9.of({
      msg: streamLifecycleOutput2(log3)
    })));
  }
  const lifecycleMessages = {};
  const lifecycleStreamByDepPath = {};
  const lifecyclePushStream = new Rx9.Subject();
  log$.lifecycle.forEach((log3) => {
    const key = `${log3.stage}:${log3.depPath}`;
    lifecycleMessages[key] = lifecycleMessages[key] || {
      collapsed: log3.wd.includes(NODE_MODULES) || log3.wd.includes(TMP_DIR_IN_STORE),
      output: [],
      startTime: process.hrtime(),
      status: formatIndentedStatus(source_default.magentaBright("Running..."))
    };
    const exit = typeof log3["exitCode"] === "number";
    let msg;
    if (lifecycleMessages[key].collapsed) {
      msg = renderCollapsedScriptOutput(log3, lifecycleMessages[key], { cwd: opts2.cwd, exit, maxWidth: opts2.width });
    } else {
      msg = renderScriptOutput(log3, lifecycleMessages[key], { cwd: opts2.cwd, exit, maxWidth: opts2.width });
    }
    if (exit) {
      delete lifecycleMessages[key];
    }
    if (!lifecycleStreamByDepPath[key]) {
      lifecycleStreamByDepPath[key] = new Rx9.Subject();
      lifecyclePushStream.next(Rx9.from(lifecycleStreamByDepPath[key]));
    }
    lifecycleStreamByDepPath[key].next({ msg });
    if (exit) {
      lifecycleStreamByDepPath[key].complete();
    }
  });
  return Rx9.from(lifecyclePushStream);
}
function toNano(time) {
  return (time[0] + time[1] / 1e9) * 1e3;
}
function renderCollapsedScriptOutput(log3, messageCache, opts2) {
  if (!messageCache.label) {
    messageCache.label = highlightLastFolder(formatPrefixNoTrim(opts2.cwd, log3.wd));
    if (log3.wd.includes(TMP_DIR_IN_STORE)) {
      messageCache.label += ` [${log3.depPath}]`;
    }
    messageCache.label += `: Running ${log3.stage} script`;
  }
  if (!opts2.exit) {
    updateMessageCache(log3, messageCache, opts2);
    return `${messageCache.label}...`;
  }
  const time = prettyMilliseconds(toNano(process.hrtime(messageCache.startTime)));
  if (log3.exitCode === 0) {
    return `${messageCache.label}, done in ${time}`;
  }
  if (log3.optional === true) {
    return `${messageCache.label}, failed in ${time} (skipped as optional)`;
  }
  return `${messageCache.label}, failed in ${time}${EOL}${renderScriptOutput(log3, messageCache, opts2)}`;
}
function renderScriptOutput(log3, messageCache, opts2) {
  updateMessageCache(log3, messageCache, opts2);
  if (opts2.exit && log3["exitCode"] !== 0) {
    return [
      messageCache.script,
      ...messageCache.output,
      messageCache.status
    ].join(EOL);
  }
  if (messageCache.output.length > 10) {
    return [
      messageCache.script,
      `[${messageCache.output.length - 10} lines collapsed]`,
      ...messageCache.output.slice(messageCache.output.length - 10),
      messageCache.status
    ].join(EOL);
  }
  return [
    messageCache.script,
    ...messageCache.output,
    messageCache.status
  ].join(EOL);
}
function updateMessageCache(log3, messageCache, opts2) {
  if (log3.script) {
    const prefix = `${formatPrefix(opts2.cwd, log3.wd)} ${hlValue(log3.stage)}`;
    const maxLineWidth = opts2.maxWidth - prefix.length - 2 + ANSI_ESCAPES_LENGTH_OF_PREFIX;
    messageCache.script = `${prefix}$ ${cutLine(log3.script, maxLineWidth)}`;
  } else if (opts2.exit) {
    const time = prettyMilliseconds(toNano(process.hrtime(messageCache.startTime)));
    if (log3.exitCode === 0) {
      messageCache.status = formatIndentedStatus(source_default.magentaBright(`Done in ${time}`));
    } else {
      messageCache.status = formatIndentedStatus(source_default.red(`Failed in ${time} at ${log3.wd}`));
    }
  } else {
    messageCache.output.push(formatIndentedOutput(opts2.maxWidth, log3));
  }
}
function formatIndentedStatus(status) {
  return `${source_default.magentaBright("\u2514\u2500")} ${status}`;
}
function highlightLastFolder(p) {
  const lastSlash = p.lastIndexOf("/") + 1;
  return `${source_default.gray(p.slice(0, lastSlash))}${p.slice(lastSlash)}`;
}
function createStreamLifecycleOutput(cwd, hideLifecyclePrefix) {
  currentColor = 0;
  const colorByPrefix = /* @__PURE__ */ new Map();
  return streamLifecycleOutput.bind(null, colorByPrefix, cwd, hideLifecyclePrefix);
}
function streamLifecycleOutput(colorByPkg, cwd, hideLifecyclePrefix, logObj) {
  const prefix = formatLifecycleScriptPrefix(colorByPkg, cwd, logObj.wd, logObj.stage);
  if (typeof logObj.exitCode === "number") {
    if (logObj.exitCode === 0) {
      return `${prefix}: Done`;
    } else {
      return `${prefix}: Failed`;
    }
  }
  if (logObj["script"]) {
    return `${prefix}$ ${logObj["script"]}`;
  }
  const line = formatLine(Infinity, logObj);
  return hideLifecyclePrefix ? line : `${prefix}: ${line}`;
}
function formatIndentedOutput(maxWidth, logObj) {
  return `${source_default.magentaBright("\u2502")} ${formatLine(maxWidth - 2, logObj)}`;
}
function formatLifecycleScriptPrefix(colorByPkg, cwd, wd, stage) {
  if (!colorByPkg.has(wd)) {
    const colorName = colorWheel[currentColor % NUM_COLORS];
    colorByPkg.set(wd, source_default[colorName]);
    currentColor += 1;
  }
  const color = colorByPkg.get(wd);
  return `${color(formatPrefix(cwd, wd))} ${hlValue(stage)}`;
}
function formatLine(maxWidth, logObj) {
  const line = cutLine(logObj.line, maxWidth);
  if (logObj.stdio === "stderr") {
    return source_default.gray(line);
  }
  return line;
}
function cutLine(line, maxLength) {
  if (!line)
    return "";
  return cliTruncate(line, maxLength);
}
function aggregateOutput(source) {
  return source.pipe(
    // The '\0' is a null character which delimits these strings. This works since JS doesn't use
    // null-terminated strings.
    (0, import_operators10.groupBy)((data) => `${data.depPath}\0${data.stage}`),
    (0, import_operators10.mergeMap)((group) => {
      return group.pipe((0, import_operators10.buffer)(group.pipe((0, import_operators10.filter)((msg) => "exitCode" in msg))));
    }),
    (0, import_operators10.map)((ar) => Rx9.from(ar)),
    (0, import_operators10.mergeAll)()
  );
}
var Rx9, import_operators10, NODE_MODULES, TMP_DIR_IN_STORE, colorWheel, NUM_COLORS, currentColor, ANSI_ESCAPES_LENGTH_OF_PREFIX;
var init_reportLifecycleScripts = __esm({
  "../cli/default-reporter/lib/reporterForClient/reportLifecycleScripts.js"() {
    "use strict";
    init_source2();
    init_cli_truncate();
    init_pretty_ms();
    Rx9 = __toESM(require_cjs2(), 1);
    import_operators10 = __toESM(require_operators(), 1);
    init_constants();
    init_outputConstants();
    init_formatPrefix();
    NODE_MODULES = `${path211.sep}node_modules${path211.sep}`;
    TMP_DIR_IN_STORE = `tmp${path211.sep}_tmp_`;
    colorWheel = ["cyan", "magenta", "blue", "yellow", "green", "red"];
    NUM_COLORS = colorWheel.length;
    currentColor = 0;
    ANSI_ESCAPES_LENGTH_OF_PREFIX = hlValue(" ").length - 1;
  }
});

// ../cli/default-reporter/lib/reporterForClient/reportLockfileVerification.js
import path212 from "node:path";
function reportLockfileVerification(lockfileVerification$, opts2) {
  const expectedDir = opts2.workspaceDir ?? opts2.cwd;
  return Rx10.of(lockfileVerification$.pipe((0, import_operators11.map)((log3) => {
    const path_ = formatLockfilePath(log3.lockfilePath, opts2.cwd, expectedDir);
    const entries = `${log3.entries} ${log3.entries === 1 ? "entry" : "entries"}`;
    switch (log3.status) {
      case "started":
        return {
          msg: `${source_default.cyan("?")} Verifying lockfile${path_} against supply-chain policies (${entries})...`
        };
      case "done":
        return {
          msg: `${source_default.green("\u2713")} Lockfile${path_} passes supply-chain policies (${entries} in ${prettyMilliseconds(log3.elapsedMs)})`
        };
      case "failed":
        return {
          msg: `${source_default.red("\u2717")} Lockfile${path_} failed supply-chain policy check (${entries} in ${prettyMilliseconds(log3.elapsedMs)})`
        };
    }
  })));
}
function formatLockfilePath(lockfilePath, cwd, expectedDir) {
  if (lockfilePath == null)
    return "";
  const fromExpected = path212.relative(expectedDir, lockfilePath);
  const isDirectChild = !fromExpected.includes(path212.sep) && !fromExpected.startsWith("..");
  if (isDirectChild)
    return "";
  return ` at ${(0, import_normalize_path18.default)(path212.relative(cwd, lockfilePath))}`;
}
var import_normalize_path18, Rx10, import_operators11;
var init_reportLockfileVerification = __esm({
  "../cli/default-reporter/lib/reporterForClient/reportLockfileVerification.js"() {
    "use strict";
    init_source2();
    import_normalize_path18 = __toESM(require_normalize_path(), 1);
    init_pretty_ms();
    Rx10 = __toESM(require_cjs2(), 1);
    import_operators11 = __toESM(require_operators(), 1);
  }
});

// ../installing/dedupe/issues-renderer/lib/index.js
function renderDedupeCheckIssues(dedupeCheckIssues) {
  const importersReport = report2(dedupeCheckIssues.importerIssuesByImporterId);
  const packagesReport = report2(dedupeCheckIssues.packageIssuesByDepPath);
  const lines = [];
  if (importersReport !== "") {
    lines.push(source_default.blueBright.underline("Importers"));
    lines.push(importersReport);
    lines.push("");
  }
  if (packagesReport !== "") {
    lines.push(source_default.blueBright.underline("Packages"));
    lines.push(packagesReport);
    lines.push("");
  }
  return lines.join("\n");
}
function report2(snapshotChanges) {
  return [
    ...Object.entries(snapshotChanges.updated).map(([alias, updates]) => renderTree(toArchy(alias, updates))),
    ...snapshotChanges.added.map((id) => `${source_default.green("+")} ${id}`),
    ...snapshotChanges.removed.map((id) => `${source_default.red("-")} ${id}`)
  ].join("\n");
}
function toArchy(name, issue) {
  return {
    label: name,
    nodes: Object.entries(issue).map(([alias, change]) => toArchyResolution(alias, change))
  };
}
function toArchyResolution(alias, change) {
  switch (change.type) {
    case "added":
      return { label: `${source_default.green("+")} ${alias} ${source_default.gray(change.next)}` };
    case "removed":
      return { label: `${source_default.red("-")} ${alias} ${source_default.gray(change.prev)}` };
    case "updated":
      return { label: `${alias} ${source_default.red(change.prev)} ${source_default.gray("\u2192")} ${source_default.green(change.next)}` };
  }
}
var init_lib172 = __esm({
  "../installing/dedupe/issues-renderer/lib/index.js"() {
    "use strict";
    init_lib127();
    init_source2();
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/lib/base64.js
var require_base64 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/lib/base64.js"(exports2) {
    var intToCharMap = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");
    exports2.encode = function(number) {
      if (0 <= number && number < intToCharMap.length) {
        return intToCharMap[number];
      }
      throw new TypeError("Must be between 0 and 63: " + number);
    };
    exports2.decode = function(charCode) {
      var bigA = 65;
      var bigZ = 90;
      var littleA = 97;
      var littleZ = 122;
      var zero = 48;
      var nine = 57;
      var plus = 43;
      var slash = 47;
      var littleOffset = 26;
      var numberOffset = 52;
      if (bigA <= charCode && charCode <= bigZ) {
        return charCode - bigA;
      }
      if (littleA <= charCode && charCode <= littleZ) {
        return charCode - littleA + littleOffset;
      }
      if (zero <= charCode && charCode <= nine) {
        return charCode - zero + numberOffset;
      }
      if (charCode == plus) {
        return 62;
      }
      if (charCode == slash) {
        return 63;
      }
      return -1;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/lib/base64-vlq.js
var require_base64_vlq = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/lib/base64-vlq.js"(exports2) {
    var base64 = require_base64();
    var VLQ_BASE_SHIFT = 5;
    var VLQ_BASE = 1 << VLQ_BASE_SHIFT;
    var VLQ_BASE_MASK = VLQ_BASE - 1;
    var VLQ_CONTINUATION_BIT = VLQ_BASE;
    function toVLQSigned(aValue) {
      return aValue < 0 ? (-aValue << 1) + 1 : (aValue << 1) + 0;
    }
    function fromVLQSigned(aValue) {
      var isNegative = (aValue & 1) === 1;
      var shifted = aValue >> 1;
      return isNegative ? -shifted : shifted;
    }
    exports2.encode = function base64VLQ_encode(aValue) {
      var encoded = "";
      var digit;
      var vlq = toVLQSigned(aValue);
      do {
        digit = vlq & VLQ_BASE_MASK;
        vlq >>>= VLQ_BASE_SHIFT;
        if (vlq > 0) {
          digit |= VLQ_CONTINUATION_BIT;
        }
        encoded += base64.encode(digit);
      } while (vlq > 0);
      return encoded;
    };
    exports2.decode = function base64VLQ_decode(aStr, aIndex, aOutParam) {
      var strLen = aStr.length;
      var result2 = 0;
      var shift = 0;
      var continuation, digit;
      do {
        if (aIndex >= strLen) {
          throw new Error("Expected more digits in base 64 VLQ value.");
        }
        digit = base64.decode(aStr.charCodeAt(aIndex++));
        if (digit === -1) {
          throw new Error("Invalid base64 digit: " + aStr.charAt(aIndex - 1));
        }
        continuation = !!(digit & VLQ_CONTINUATION_BIT);
        digit &= VLQ_BASE_MASK;
        result2 = result2 + (digit << shift);
        shift += VLQ_BASE_SHIFT;
      } while (continuation);
      aOutParam.value = fromVLQSigned(result2);
      aOutParam.rest = aIndex;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/lib/util.js
var require_util14 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/lib/util.js"(exports2) {
    function getArg(aArgs, aName, aDefaultValue) {
      if (aName in aArgs) {
        return aArgs[aName];
      } else if (arguments.length === 3) {
        return aDefaultValue;
      } else {
        throw new Error('"' + aName + '" is a required argument.');
      }
    }
    exports2.getArg = getArg;
    var urlRegexp = /^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/;
    var dataUrlRegexp = /^data:.+\,.+$/;
    function urlParse(aUrl) {
      var match = aUrl.match(urlRegexp);
      if (!match) {
        return null;
      }
      return {
        scheme: match[1],
        auth: match[2],
        host: match[3],
        port: match[4],
        path: match[5]
      };
    }
    exports2.urlParse = urlParse;
    function urlGenerate(aParsedUrl) {
      var url7 = "";
      if (aParsedUrl.scheme) {
        url7 += aParsedUrl.scheme + ":";
      }
      url7 += "//";
      if (aParsedUrl.auth) {
        url7 += aParsedUrl.auth + "@";
      }
      if (aParsedUrl.host) {
        url7 += aParsedUrl.host;
      }
      if (aParsedUrl.port) {
        url7 += ":" + aParsedUrl.port;
      }
      if (aParsedUrl.path) {
        url7 += aParsedUrl.path;
      }
      return url7;
    }
    exports2.urlGenerate = urlGenerate;
    function normalize11(aPath) {
      var path218 = aPath;
      var url7 = urlParse(aPath);
      if (url7) {
        if (!url7.path) {
          return aPath;
        }
        path218 = url7.path;
      }
      var isAbsolute3 = exports2.isAbsolute(path218);
      var parts = path218.split(/\/+/);
      for (var part, up = 0, i2 = parts.length - 1; i2 >= 0; i2--) {
        part = parts[i2];
        if (part === ".") {
          parts.splice(i2, 1);
        } else if (part === "..") {
          up++;
        } else if (up > 0) {
          if (part === "") {
            parts.splice(i2 + 1, up);
            up = 0;
          } else {
            parts.splice(i2, 2);
            up--;
          }
        }
      }
      path218 = parts.join("/");
      if (path218 === "") {
        path218 = isAbsolute3 ? "/" : ".";
      }
      if (url7) {
        url7.path = path218;
        return urlGenerate(url7);
      }
      return path218;
    }
    exports2.normalize = normalize11;
    function join3(aRoot, aPath) {
      if (aRoot === "") {
        aRoot = ".";
      }
      if (aPath === "") {
        aPath = ".";
      }
      var aPathUrl = urlParse(aPath);
      var aRootUrl = urlParse(aRoot);
      if (aRootUrl) {
        aRoot = aRootUrl.path || "/";
      }
      if (aPathUrl && !aPathUrl.scheme) {
        if (aRootUrl) {
          aPathUrl.scheme = aRootUrl.scheme;
        }
        return urlGenerate(aPathUrl);
      }
      if (aPathUrl || aPath.match(dataUrlRegexp)) {
        return aPath;
      }
      if (aRootUrl && !aRootUrl.host && !aRootUrl.path) {
        aRootUrl.host = aPath;
        return urlGenerate(aRootUrl);
      }
      var joined = aPath.charAt(0) === "/" ? aPath : normalize11(aRoot.replace(/\/+$/, "") + "/" + aPath);
      if (aRootUrl) {
        aRootUrl.path = joined;
        return urlGenerate(aRootUrl);
      }
      return joined;
    }
    exports2.join = join3;
    exports2.isAbsolute = function(aPath) {
      return aPath.charAt(0) === "/" || urlRegexp.test(aPath);
    };
    function relative2(aRoot, aPath) {
      if (aRoot === "") {
        aRoot = ".";
      }
      aRoot = aRoot.replace(/\/$/, "");
      var level = 0;
      while (aPath.indexOf(aRoot + "/") !== 0) {
        var index = aRoot.lastIndexOf("/");
        if (index < 0) {
          return aPath;
        }
        aRoot = aRoot.slice(0, index);
        if (aRoot.match(/^([^\/]+:\/)?\/*$/)) {
          return aPath;
        }
        ++level;
      }
      return Array(level + 1).join("../") + aPath.substr(aRoot.length + 1);
    }
    exports2.relative = relative2;
    var supportsNullProto = (function() {
      var obj = /* @__PURE__ */ Object.create(null);
      return !("__proto__" in obj);
    })();
    function identity5(s) {
      return s;
    }
    function toSetString(aStr) {
      if (isProtoString(aStr)) {
        return "$" + aStr;
      }
      return aStr;
    }
    exports2.toSetString = supportsNullProto ? identity5 : toSetString;
    function fromSetString(aStr) {
      if (isProtoString(aStr)) {
        return aStr.slice(1);
      }
      return aStr;
    }
    exports2.fromSetString = supportsNullProto ? identity5 : fromSetString;
    function isProtoString(s) {
      if (!s) {
        return false;
      }
      var length = s.length;
      if (length < 9) {
        return false;
      }
      if (s.charCodeAt(length - 1) !== 95 || s.charCodeAt(length - 2) !== 95 || s.charCodeAt(length - 3) !== 111 || s.charCodeAt(length - 4) !== 116 || s.charCodeAt(length - 5) !== 111 || s.charCodeAt(length - 6) !== 114 || s.charCodeAt(length - 7) !== 112 || s.charCodeAt(length - 8) !== 95 || s.charCodeAt(length - 9) !== 95) {
        return false;
      }
      for (var i2 = length - 10; i2 >= 0; i2--) {
        if (s.charCodeAt(i2) !== 36) {
          return false;
        }
      }
      return true;
    }
    function compareByOriginalPositions(mappingA, mappingB, onlyCompareOriginal) {
      var cmp = strcmp(mappingA.source, mappingB.source);
      if (cmp !== 0) {
        return cmp;
      }
      cmp = mappingA.originalLine - mappingB.originalLine;
      if (cmp !== 0) {
        return cmp;
      }
      cmp = mappingA.originalColumn - mappingB.originalColumn;
      if (cmp !== 0 || onlyCompareOriginal) {
        return cmp;
      }
      cmp = mappingA.generatedColumn - mappingB.generatedColumn;
      if (cmp !== 0) {
        return cmp;
      }
      cmp = mappingA.generatedLine - mappingB.generatedLine;
      if (cmp !== 0) {
        return cmp;
      }
      return strcmp(mappingA.name, mappingB.name);
    }
    exports2.compareByOriginalPositions = compareByOriginalPositions;
    function compareByGeneratedPositionsDeflated(mappingA, mappingB, onlyCompareGenerated) {
      var cmp = mappingA.generatedLine - mappingB.generatedLine;
      if (cmp !== 0) {
        return cmp;
      }
      cmp = mappingA.generatedColumn - mappingB.generatedColumn;
      if (cmp !== 0 || onlyCompareGenerated) {
        return cmp;
      }
      cmp = strcmp(mappingA.source, mappingB.source);
      if (cmp !== 0) {
        return cmp;
      }
      cmp = mappingA.originalLine - mappingB.originalLine;
      if (cmp !== 0) {
        return cmp;
      }
      cmp = mappingA.originalColumn - mappingB.originalColumn;
      if (cmp !== 0) {
        return cmp;
      }
      return strcmp(mappingA.name, mappingB.name);
    }
    exports2.compareByGeneratedPositionsDeflated = compareByGeneratedPositionsDeflated;
    function strcmp(aStr1, aStr2) {
      if (aStr1 === aStr2) {
        return 0;
      }
      if (aStr1 === null) {
        return 1;
      }
      if (aStr2 === null) {
        return -1;
      }
      if (aStr1 > aStr2) {
        return 1;
      }
      return -1;
    }
    function compareByGeneratedPositionsInflated(mappingA, mappingB) {
      var cmp = mappingA.generatedLine - mappingB.generatedLine;
      if (cmp !== 0) {
        return cmp;
      }
      cmp = mappingA.generatedColumn - mappingB.generatedColumn;
      if (cmp !== 0) {
        return cmp;
      }
      cmp = strcmp(mappingA.source, mappingB.source);
      if (cmp !== 0) {
        return cmp;
      }
      cmp = mappingA.originalLine - mappingB.originalLine;
      if (cmp !== 0) {
        return cmp;
      }
      cmp = mappingA.originalColumn - mappingB.originalColumn;
      if (cmp !== 0) {
        return cmp;
      }
      return strcmp(mappingA.name, mappingB.name);
    }
    exports2.compareByGeneratedPositionsInflated = compareByGeneratedPositionsInflated;
    function parseSourceMapInput(str2) {
      return JSON.parse(str2.replace(/^\)]}'[^\n]*\n/, ""));
    }
    exports2.parseSourceMapInput = parseSourceMapInput;
    function computeSourceURL(sourceRoot, sourceURL, sourceMapURL) {
      sourceURL = sourceURL || "";
      if (sourceRoot) {
        if (sourceRoot[sourceRoot.length - 1] !== "/" && sourceURL[0] !== "/") {
          sourceRoot += "/";
        }
        sourceURL = sourceRoot + sourceURL;
      }
      if (sourceMapURL) {
        var parsed = urlParse(sourceMapURL);
        if (!parsed) {
          throw new Error("sourceMapURL could not be parsed");
        }
        if (parsed.path) {
          var index = parsed.path.lastIndexOf("/");
          if (index >= 0) {
            parsed.path = parsed.path.substring(0, index + 1);
          }
        }
        sourceURL = join3(urlGenerate(parsed), sourceURL);
      }
      return normalize11(sourceURL);
    }
    exports2.computeSourceURL = computeSourceURL;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/lib/array-set.js
var require_array_set = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/lib/array-set.js"(exports2) {
    var util56 = require_util14();
    var has = Object.prototype.hasOwnProperty;
    var hasNativeMap = typeof Map !== "undefined";
    function ArraySet() {
      this._array = [];
      this._set = hasNativeMap ? /* @__PURE__ */ new Map() : /* @__PURE__ */ Object.create(null);
    }
    ArraySet.fromArray = function ArraySet_fromArray(aArray, aAllowDuplicates) {
      var set2 = new ArraySet();
      for (var i2 = 0, len = aArray.length; i2 < len; i2++) {
        set2.add(aArray[i2], aAllowDuplicates);
      }
      return set2;
    };
    ArraySet.prototype.size = function ArraySet_size() {
      return hasNativeMap ? this._set.size : Object.getOwnPropertyNames(this._set).length;
    };
    ArraySet.prototype.add = function ArraySet_add(aStr, aAllowDuplicates) {
      var sStr = hasNativeMap ? aStr : util56.toSetString(aStr);
      var isDuplicate = hasNativeMap ? this.has(aStr) : has.call(this._set, sStr);
      var idx = this._array.length;
      if (!isDuplicate || aAllowDuplicates) {
        this._array.push(aStr);
      }
      if (!isDuplicate) {
        if (hasNativeMap) {
          this._set.set(aStr, idx);
        } else {
          this._set[sStr] = idx;
        }
      }
    };
    ArraySet.prototype.has = function ArraySet_has(aStr) {
      if (hasNativeMap) {
        return this._set.has(aStr);
      } else {
        var sStr = util56.toSetString(aStr);
        return has.call(this._set, sStr);
      }
    };
    ArraySet.prototype.indexOf = function ArraySet_indexOf(aStr) {
      if (hasNativeMap) {
        var idx = this._set.get(aStr);
        if (idx >= 0) {
          return idx;
        }
      } else {
        var sStr = util56.toSetString(aStr);
        if (has.call(this._set, sStr)) {
          return this._set[sStr];
        }
      }
      throw new Error('"' + aStr + '" is not in the set.');
    };
    ArraySet.prototype.at = function ArraySet_at(aIdx) {
      if (aIdx >= 0 && aIdx < this._array.length) {
        return this._array[aIdx];
      }
      throw new Error("No element indexed by " + aIdx);
    };
    ArraySet.prototype.toArray = function ArraySet_toArray() {
      return this._array.slice();
    };
    exports2.ArraySet = ArraySet;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/lib/mapping-list.js
var require_mapping_list = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/lib/mapping-list.js"(exports2) {
    var util56 = require_util14();
    function generatedPositionAfter(mappingA, mappingB) {
      var lineA = mappingA.generatedLine;
      var lineB = mappingB.generatedLine;
      var columnA = mappingA.generatedColumn;
      var columnB = mappingB.generatedColumn;
      return lineB > lineA || lineB == lineA && columnB >= columnA || util56.compareByGeneratedPositionsInflated(mappingA, mappingB) <= 0;
    }
    function MappingList() {
      this._array = [];
      this._sorted = true;
      this._last = { generatedLine: -1, generatedColumn: 0 };
    }
    MappingList.prototype.unsortedForEach = function MappingList_forEach(aCallback, aThisArg) {
      this._array.forEach(aCallback, aThisArg);
    };
    MappingList.prototype.add = function MappingList_add(aMapping) {
      if (generatedPositionAfter(this._last, aMapping)) {
        this._last = aMapping;
        this._array.push(aMapping);
      } else {
        this._sorted = false;
        this._array.push(aMapping);
      }
    };
    MappingList.prototype.toArray = function MappingList_toArray() {
      if (!this._sorted) {
        this._array.sort(util56.compareByGeneratedPositionsInflated);
        this._sorted = true;
      }
      return this._array;
    };
    exports2.MappingList = MappingList;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/lib/source-map-generator.js
var require_source_map_generator = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/lib/source-map-generator.js"(exports2) {
    var base64VLQ = require_base64_vlq();
    var util56 = require_util14();
    var ArraySet = require_array_set().ArraySet;
    var MappingList = require_mapping_list().MappingList;
    function SourceMapGenerator(aArgs) {
      if (!aArgs) {
        aArgs = {};
      }
      this._file = util56.getArg(aArgs, "file", null);
      this._sourceRoot = util56.getArg(aArgs, "sourceRoot", null);
      this._skipValidation = util56.getArg(aArgs, "skipValidation", false);
      this._sources = new ArraySet();
      this._names = new ArraySet();
      this._mappings = new MappingList();
      this._sourcesContents = null;
    }
    SourceMapGenerator.prototype._version = 3;
    SourceMapGenerator.fromSourceMap = function SourceMapGenerator_fromSourceMap(aSourceMapConsumer) {
      var sourceRoot = aSourceMapConsumer.sourceRoot;
      var generator = new SourceMapGenerator({
        file: aSourceMapConsumer.file,
        sourceRoot
      });
      aSourceMapConsumer.eachMapping(function(mapping) {
        var newMapping = {
          generated: {
            line: mapping.generatedLine,
            column: mapping.generatedColumn
          }
        };
        if (mapping.source != null) {
          newMapping.source = mapping.source;
          if (sourceRoot != null) {
            newMapping.source = util56.relative(sourceRoot, newMapping.source);
          }
          newMapping.original = {
            line: mapping.originalLine,
            column: mapping.originalColumn
          };
          if (mapping.name != null) {
            newMapping.name = mapping.name;
          }
        }
        generator.addMapping(newMapping);
      });
      aSourceMapConsumer.sources.forEach(function(sourceFile) {
        var sourceRelative = sourceFile;
        if (sourceRoot !== null) {
          sourceRelative = util56.relative(sourceRoot, sourceFile);
        }
        if (!generator._sources.has(sourceRelative)) {
          generator._sources.add(sourceRelative);
        }
        var content = aSourceMapConsumer.sourceContentFor(sourceFile);
        if (content != null) {
          generator.setSourceContent(sourceFile, content);
        }
      });
      return generator;
    };
    SourceMapGenerator.prototype.addMapping = function SourceMapGenerator_addMapping(aArgs) {
      var generated = util56.getArg(aArgs, "generated");
      var original = util56.getArg(aArgs, "original", null);
      var source = util56.getArg(aArgs, "source", null);
      var name = util56.getArg(aArgs, "name", null);
      if (!this._skipValidation) {
        this._validateMapping(generated, original, source, name);
      }
      if (source != null) {
        source = String(source);
        if (!this._sources.has(source)) {
          this._sources.add(source);
        }
      }
      if (name != null) {
        name = String(name);
        if (!this._names.has(name)) {
          this._names.add(name);
        }
      }
      this._mappings.add({
        generatedLine: generated.line,
        generatedColumn: generated.column,
        originalLine: original != null && original.line,
        originalColumn: original != null && original.column,
        source,
        name
      });
    };
    SourceMapGenerator.prototype.setSourceContent = function SourceMapGenerator_setSourceContent(aSourceFile, aSourceContent) {
      var source = aSourceFile;
      if (this._sourceRoot != null) {
        source = util56.relative(this._sourceRoot, source);
      }
      if (aSourceContent != null) {
        if (!this._sourcesContents) {
          this._sourcesContents = /* @__PURE__ */ Object.create(null);
        }
        this._sourcesContents[util56.toSetString(source)] = aSourceContent;
      } else if (this._sourcesContents) {
        delete this._sourcesContents[util56.toSetString(source)];
        if (Object.keys(this._sourcesContents).length === 0) {
          this._sourcesContents = null;
        }
      }
    };
    SourceMapGenerator.prototype.applySourceMap = function SourceMapGenerator_applySourceMap(aSourceMapConsumer, aSourceFile, aSourceMapPath) {
      var sourceFile = aSourceFile;
      if (aSourceFile == null) {
        if (aSourceMapConsumer.file == null) {
          throw new Error(
            `SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`
          );
        }
        sourceFile = aSourceMapConsumer.file;
      }
      var sourceRoot = this._sourceRoot;
      if (sourceRoot != null) {
        sourceFile = util56.relative(sourceRoot, sourceFile);
      }
      var newSources = new ArraySet();
      var newNames = new ArraySet();
      this._mappings.unsortedForEach(function(mapping) {
        if (mapping.source === sourceFile && mapping.originalLine != null) {
          var original = aSourceMapConsumer.originalPositionFor({
            line: mapping.originalLine,
            column: mapping.originalColumn
          });
          if (original.source != null) {
            mapping.source = original.source;
            if (aSourceMapPath != null) {
              mapping.source = util56.join(aSourceMapPath, mapping.source);
            }
            if (sourceRoot != null) {
              mapping.source = util56.relative(sourceRoot, mapping.source);
            }
            mapping.originalLine = original.line;
            mapping.originalColumn = original.column;
            if (original.name != null) {
              mapping.name = original.name;
            }
          }
        }
        var source = mapping.source;
        if (source != null && !newSources.has(source)) {
          newSources.add(source);
        }
        var name = mapping.name;
        if (name != null && !newNames.has(name)) {
          newNames.add(name);
        }
      }, this);
      this._sources = newSources;
      this._names = newNames;
      aSourceMapConsumer.sources.forEach(function(sourceFile2) {
        var content = aSourceMapConsumer.sourceContentFor(sourceFile2);
        if (content != null) {
          if (aSourceMapPath != null) {
            sourceFile2 = util56.join(aSourceMapPath, sourceFile2);
          }
          if (sourceRoot != null) {
            sourceFile2 = util56.relative(sourceRoot, sourceFile2);
          }
          this.setSourceContent(sourceFile2, content);
        }
      }, this);
    };
    SourceMapGenerator.prototype._validateMapping = function SourceMapGenerator_validateMapping(aGenerated, aOriginal, aSource, aName) {
      if (aOriginal && typeof aOriginal.line !== "number" && typeof aOriginal.column !== "number") {
        throw new Error(
          "original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values."
        );
      }
      if (aGenerated && "line" in aGenerated && "column" in aGenerated && aGenerated.line > 0 && aGenerated.column >= 0 && !aOriginal && !aSource && !aName) {
        return;
      } else if (aGenerated && "line" in aGenerated && "column" in aGenerated && aOriginal && "line" in aOriginal && "column" in aOriginal && aGenerated.line > 0 && aGenerated.column >= 0 && aOriginal.line > 0 && aOriginal.column >= 0 && aSource) {
        return;
      } else {
        throw new Error("Invalid mapping: " + JSON.stringify({
          generated: aGenerated,
          source: aSource,
          original: aOriginal,
          name: aName
        }));
      }
    };
    SourceMapGenerator.prototype._serializeMappings = function SourceMapGenerator_serializeMappings() {
      var previousGeneratedColumn = 0;
      var previousGeneratedLine = 1;
      var previousOriginalColumn = 0;
      var previousOriginalLine = 0;
      var previousName = 0;
      var previousSource = 0;
      var result2 = "";
      var next2;
      var mapping;
      var nameIdx;
      var sourceIdx;
      var mappings = this._mappings.toArray();
      for (var i2 = 0, len = mappings.length; i2 < len; i2++) {
        mapping = mappings[i2];
        next2 = "";
        if (mapping.generatedLine !== previousGeneratedLine) {
          previousGeneratedColumn = 0;
          while (mapping.generatedLine !== previousGeneratedLine) {
            next2 += ";";
            previousGeneratedLine++;
          }
        } else {
          if (i2 > 0) {
            if (!util56.compareByGeneratedPositionsInflated(mapping, mappings[i2 - 1])) {
              continue;
            }
            next2 += ",";
          }
        }
        next2 += base64VLQ.encode(mapping.generatedColumn - previousGeneratedColumn);
        previousGeneratedColumn = mapping.generatedColumn;
        if (mapping.source != null) {
          sourceIdx = this._sources.indexOf(mapping.source);
          next2 += base64VLQ.encode(sourceIdx - previousSource);
          previousSource = sourceIdx;
          next2 += base64VLQ.encode(mapping.originalLine - 1 - previousOriginalLine);
          previousOriginalLine = mapping.originalLine - 1;
          next2 += base64VLQ.encode(mapping.originalColumn - previousOriginalColumn);
          previousOriginalColumn = mapping.originalColumn;
          if (mapping.name != null) {
            nameIdx = this._names.indexOf(mapping.name);
            next2 += base64VLQ.encode(nameIdx - previousName);
            previousName = nameIdx;
          }
        }
        result2 += next2;
      }
      return result2;
    };
    SourceMapGenerator.prototype._generateSourcesContent = function SourceMapGenerator_generateSourcesContent(aSources, aSourceRoot) {
      return aSources.map(function(source) {
        if (!this._sourcesContents) {
          return null;
        }
        if (aSourceRoot != null) {
          source = util56.relative(aSourceRoot, source);
        }
        var key = util56.toSetString(source);
        return Object.prototype.hasOwnProperty.call(this._sourcesContents, key) ? this._sourcesContents[key] : null;
      }, this);
    };
    SourceMapGenerator.prototype.toJSON = function SourceMapGenerator_toJSON() {
      var map26 = {
        version: this._version,
        sources: this._sources.toArray(),
        names: this._names.toArray(),
        mappings: this._serializeMappings()
      };
      if (this._file != null) {
        map26.file = this._file;
      }
      if (this._sourceRoot != null) {
        map26.sourceRoot = this._sourceRoot;
      }
      if (this._sourcesContents) {
        map26.sourcesContent = this._generateSourcesContent(map26.sources, map26.sourceRoot);
      }
      return map26;
    };
    SourceMapGenerator.prototype.toString = function SourceMapGenerator_toString() {
      return JSON.stringify(this.toJSON());
    };
    exports2.SourceMapGenerator = SourceMapGenerator;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/lib/binary-search.js
var require_binary_search = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/lib/binary-search.js"(exports2) {
    exports2.GREATEST_LOWER_BOUND = 1;
    exports2.LEAST_UPPER_BOUND = 2;
    function recursiveSearch(aLow, aHigh, aNeedle, aHaystack, aCompare, aBias) {
      var mid = Math.floor((aHigh - aLow) / 2) + aLow;
      var cmp = aCompare(aNeedle, aHaystack[mid], true);
      if (cmp === 0) {
        return mid;
      } else if (cmp > 0) {
        if (aHigh - mid > 1) {
          return recursiveSearch(mid, aHigh, aNeedle, aHaystack, aCompare, aBias);
        }
        if (aBias == exports2.LEAST_UPPER_BOUND) {
          return aHigh < aHaystack.length ? aHigh : -1;
        } else {
          return mid;
        }
      } else {
        if (mid - aLow > 1) {
          return recursiveSearch(aLow, mid, aNeedle, aHaystack, aCompare, aBias);
        }
        if (aBias == exports2.LEAST_UPPER_BOUND) {
          return mid;
        } else {
          return aLow < 0 ? -1 : aLow;
        }
      }
    }
    exports2.search = function search2(aNeedle, aHaystack, aCompare, aBias) {
      if (aHaystack.length === 0) {
        return -1;
      }
      var index = recursiveSearch(
        -1,
        aHaystack.length,
        aNeedle,
        aHaystack,
        aCompare,
        aBias || exports2.GREATEST_LOWER_BOUND
      );
      if (index < 0) {
        return -1;
      }
      while (index - 1 >= 0) {
        if (aCompare(aHaystack[index], aHaystack[index - 1], true) !== 0) {
          break;
        }
        --index;
      }
      return index;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/lib/quick-sort.js
var require_quick_sort = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/lib/quick-sort.js"(exports2) {
    function swap(ary, x, y) {
      var temp = ary[x];
      ary[x] = ary[y];
      ary[y] = temp;
    }
    function randomIntInRange(low, high) {
      return Math.round(low + Math.random() * (high - low));
    }
    function doQuickSort(ary, comparator, p, r) {
      if (p < r) {
        var pivotIndex = randomIntInRange(p, r);
        var i2 = p - 1;
        swap(ary, pivotIndex, r);
        var pivot = ary[r];
        for (var j2 = p; j2 < r; j2++) {
          if (comparator(ary[j2], pivot) <= 0) {
            i2 += 1;
            swap(ary, i2, j2);
          }
        }
        swap(ary, i2 + 1, j2);
        var q = i2 + 1;
        doQuickSort(ary, comparator, p, q - 1);
        doQuickSort(ary, comparator, q + 1, r);
      }
    }
    exports2.quickSort = function(ary, comparator) {
      doQuickSort(ary, comparator, 0, ary.length - 1);
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/lib/source-map-consumer.js
var require_source_map_consumer = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/lib/source-map-consumer.js"(exports2) {
    var util56 = require_util14();
    var binarySearch = require_binary_search();
    var ArraySet = require_array_set().ArraySet;
    var base64VLQ = require_base64_vlq();
    var quickSort = require_quick_sort().quickSort;
    function SourceMapConsumer(aSourceMap, aSourceMapURL) {
      var sourceMap = aSourceMap;
      if (typeof aSourceMap === "string") {
        sourceMap = util56.parseSourceMapInput(aSourceMap);
      }
      return sourceMap.sections != null ? new IndexedSourceMapConsumer(sourceMap, aSourceMapURL) : new BasicSourceMapConsumer(sourceMap, aSourceMapURL);
    }
    SourceMapConsumer.fromSourceMap = function(aSourceMap, aSourceMapURL) {
      return BasicSourceMapConsumer.fromSourceMap(aSourceMap, aSourceMapURL);
    };
    SourceMapConsumer.prototype._version = 3;
    SourceMapConsumer.prototype.__generatedMappings = null;
    Object.defineProperty(SourceMapConsumer.prototype, "_generatedMappings", {
      configurable: true,
      enumerable: true,
      get: function() {
        if (!this.__generatedMappings) {
          this._parseMappings(this._mappings, this.sourceRoot);
        }
        return this.__generatedMappings;
      }
    });
    SourceMapConsumer.prototype.__originalMappings = null;
    Object.defineProperty(SourceMapConsumer.prototype, "_originalMappings", {
      configurable: true,
      enumerable: true,
      get: function() {
        if (!this.__originalMappings) {
          this._parseMappings(this._mappings, this.sourceRoot);
        }
        return this.__originalMappings;
      }
    });
    SourceMapConsumer.prototype._charIsMappingSeparator = function SourceMapConsumer_charIsMappingSeparator(aStr, index) {
      var c3 = aStr.charAt(index);
      return c3 === ";" || c3 === ",";
    };
    SourceMapConsumer.prototype._parseMappings = function SourceMapConsumer_parseMappings(aStr, aSourceRoot) {
      throw new Error("Subclasses must implement _parseMappings");
    };
    SourceMapConsumer.GENERATED_ORDER = 1;
    SourceMapConsumer.ORIGINAL_ORDER = 2;
    SourceMapConsumer.GREATEST_LOWER_BOUND = 1;
    SourceMapConsumer.LEAST_UPPER_BOUND = 2;
    SourceMapConsumer.prototype.eachMapping = function SourceMapConsumer_eachMapping(aCallback, aContext, aOrder) {
      var context = aContext || null;
      var order = aOrder || SourceMapConsumer.GENERATED_ORDER;
      var mappings;
      switch (order) {
        case SourceMapConsumer.GENERATED_ORDER:
          mappings = this._generatedMappings;
          break;
        case SourceMapConsumer.ORIGINAL_ORDER:
          mappings = this._originalMappings;
          break;
        default:
          throw new Error("Unknown order of iteration.");
      }
      var sourceRoot = this.sourceRoot;
      mappings.map(function(mapping) {
        var source = mapping.source === null ? null : this._sources.at(mapping.source);
        source = util56.computeSourceURL(sourceRoot, source, this._sourceMapURL);
        return {
          source,
          generatedLine: mapping.generatedLine,
          generatedColumn: mapping.generatedColumn,
          originalLine: mapping.originalLine,
          originalColumn: mapping.originalColumn,
          name: mapping.name === null ? null : this._names.at(mapping.name)
        };
      }, this).forEach(aCallback, context);
    };
    SourceMapConsumer.prototype.allGeneratedPositionsFor = function SourceMapConsumer_allGeneratedPositionsFor(aArgs) {
      var line = util56.getArg(aArgs, "line");
      var needle = {
        source: util56.getArg(aArgs, "source"),
        originalLine: line,
        originalColumn: util56.getArg(aArgs, "column", 0)
      };
      needle.source = this._findSourceIndex(needle.source);
      if (needle.source < 0) {
        return [];
      }
      var mappings = [];
      var index = this._findMapping(
        needle,
        this._originalMappings,
        "originalLine",
        "originalColumn",
        util56.compareByOriginalPositions,
        binarySearch.LEAST_UPPER_BOUND
      );
      if (index >= 0) {
        var mapping = this._originalMappings[index];
        if (aArgs.column === void 0) {
          var originalLine = mapping.originalLine;
          while (mapping && mapping.originalLine === originalLine) {
            mappings.push({
              line: util56.getArg(mapping, "generatedLine", null),
              column: util56.getArg(mapping, "generatedColumn", null),
              lastColumn: util56.getArg(mapping, "lastGeneratedColumn", null)
            });
            mapping = this._originalMappings[++index];
          }
        } else {
          var originalColumn = mapping.originalColumn;
          while (mapping && mapping.originalLine === line && mapping.originalColumn == originalColumn) {
            mappings.push({
              line: util56.getArg(mapping, "generatedLine", null),
              column: util56.getArg(mapping, "generatedColumn", null),
              lastColumn: util56.getArg(mapping, "lastGeneratedColumn", null)
            });
            mapping = this._originalMappings[++index];
          }
        }
      }
      return mappings;
    };
    exports2.SourceMapConsumer = SourceMapConsumer;
    function BasicSourceMapConsumer(aSourceMap, aSourceMapURL) {
      var sourceMap = aSourceMap;
      if (typeof aSourceMap === "string") {
        sourceMap = util56.parseSourceMapInput(aSourceMap);
      }
      var version2 = util56.getArg(sourceMap, "version");
      var sources = util56.getArg(sourceMap, "sources");
      var names = util56.getArg(sourceMap, "names", []);
      var sourceRoot = util56.getArg(sourceMap, "sourceRoot", null);
      var sourcesContent = util56.getArg(sourceMap, "sourcesContent", null);
      var mappings = util56.getArg(sourceMap, "mappings");
      var file = util56.getArg(sourceMap, "file", null);
      if (version2 != this._version) {
        throw new Error("Unsupported version: " + version2);
      }
      if (sourceRoot) {
        sourceRoot = util56.normalize(sourceRoot);
      }
      sources = sources.map(String).map(util56.normalize).map(function(source) {
        return sourceRoot && util56.isAbsolute(sourceRoot) && util56.isAbsolute(source) ? util56.relative(sourceRoot, source) : source;
      });
      this._names = ArraySet.fromArray(names.map(String), true);
      this._sources = ArraySet.fromArray(sources, true);
      this._absoluteSources = this._sources.toArray().map(function(s) {
        return util56.computeSourceURL(sourceRoot, s, aSourceMapURL);
      });
      this.sourceRoot = sourceRoot;
      this.sourcesContent = sourcesContent;
      this._mappings = mappings;
      this._sourceMapURL = aSourceMapURL;
      this.file = file;
    }
    BasicSourceMapConsumer.prototype = Object.create(SourceMapConsumer.prototype);
    BasicSourceMapConsumer.prototype.consumer = SourceMapConsumer;
    BasicSourceMapConsumer.prototype._findSourceIndex = function(aSource) {
      var relativeSource = aSource;
      if (this.sourceRoot != null) {
        relativeSource = util56.relative(this.sourceRoot, relativeSource);
      }
      if (this._sources.has(relativeSource)) {
        return this._sources.indexOf(relativeSource);
      }
      var i2;
      for (i2 = 0; i2 < this._absoluteSources.length; ++i2) {
        if (this._absoluteSources[i2] == aSource) {
          return i2;
        }
      }
      return -1;
    };
    BasicSourceMapConsumer.fromSourceMap = function SourceMapConsumer_fromSourceMap(aSourceMap, aSourceMapURL) {
      var smc = Object.create(BasicSourceMapConsumer.prototype);
      var names = smc._names = ArraySet.fromArray(aSourceMap._names.toArray(), true);
      var sources = smc._sources = ArraySet.fromArray(aSourceMap._sources.toArray(), true);
      smc.sourceRoot = aSourceMap._sourceRoot;
      smc.sourcesContent = aSourceMap._generateSourcesContent(
        smc._sources.toArray(),
        smc.sourceRoot
      );
      smc.file = aSourceMap._file;
      smc._sourceMapURL = aSourceMapURL;
      smc._absoluteSources = smc._sources.toArray().map(function(s) {
        return util56.computeSourceURL(smc.sourceRoot, s, aSourceMapURL);
      });
      var generatedMappings = aSourceMap._mappings.toArray().slice();
      var destGeneratedMappings = smc.__generatedMappings = [];
      var destOriginalMappings = smc.__originalMappings = [];
      for (var i2 = 0, length = generatedMappings.length; i2 < length; i2++) {
        var srcMapping = generatedMappings[i2];
        var destMapping = new Mapping();
        destMapping.generatedLine = srcMapping.generatedLine;
        destMapping.generatedColumn = srcMapping.generatedColumn;
        if (srcMapping.source) {
          destMapping.source = sources.indexOf(srcMapping.source);
          destMapping.originalLine = srcMapping.originalLine;
          destMapping.originalColumn = srcMapping.originalColumn;
          if (srcMapping.name) {
            destMapping.name = names.indexOf(srcMapping.name);
          }
          destOriginalMappings.push(destMapping);
        }
        destGeneratedMappings.push(destMapping);
      }
      quickSort(smc.__originalMappings, util56.compareByOriginalPositions);
      return smc;
    };
    BasicSourceMapConsumer.prototype._version = 3;
    Object.defineProperty(BasicSourceMapConsumer.prototype, "sources", {
      get: function() {
        return this._absoluteSources.slice();
      }
    });
    function Mapping() {
      this.generatedLine = 0;
      this.generatedColumn = 0;
      this.source = null;
      this.originalLine = null;
      this.originalColumn = null;
      this.name = null;
    }
    BasicSourceMapConsumer.prototype._parseMappings = function SourceMapConsumer_parseMappings(aStr, aSourceRoot) {
      var generatedLine = 1;
      var previousGeneratedColumn = 0;
      var previousOriginalLine = 0;
      var previousOriginalColumn = 0;
      var previousSource = 0;
      var previousName = 0;
      var length = aStr.length;
      var index = 0;
      var cachedSegments = {};
      var temp = {};
      var originalMappings = [];
      var generatedMappings = [];
      var mapping, str2, segment, end, value;
      while (index < length) {
        if (aStr.charAt(index) === ";") {
          generatedLine++;
          index++;
          previousGeneratedColumn = 0;
        } else if (aStr.charAt(index) === ",") {
          index++;
        } else {
          mapping = new Mapping();
          mapping.generatedLine = generatedLine;
          for (end = index; end < length; end++) {
            if (this._charIsMappingSeparator(aStr, end)) {
              break;
            }
          }
          str2 = aStr.slice(index, end);
          segment = cachedSegments[str2];
          if (segment) {
            index += str2.length;
          } else {
            segment = [];
            while (index < end) {
              base64VLQ.decode(aStr, index, temp);
              value = temp.value;
              index = temp.rest;
              segment.push(value);
            }
            if (segment.length === 2) {
              throw new Error("Found a source, but no line and column");
            }
            if (segment.length === 3) {
              throw new Error("Found a source and line, but no column");
            }
            cachedSegments[str2] = segment;
          }
          mapping.generatedColumn = previousGeneratedColumn + segment[0];
          previousGeneratedColumn = mapping.generatedColumn;
          if (segment.length > 1) {
            mapping.source = previousSource + segment[1];
            previousSource += segment[1];
            mapping.originalLine = previousOriginalLine + segment[2];
            previousOriginalLine = mapping.originalLine;
            mapping.originalLine += 1;
            mapping.originalColumn = previousOriginalColumn + segment[3];
            previousOriginalColumn = mapping.originalColumn;
            if (segment.length > 4) {
              mapping.name = previousName + segment[4];
              previousName += segment[4];
            }
          }
          generatedMappings.push(mapping);
          if (typeof mapping.originalLine === "number") {
            originalMappings.push(mapping);
          }
        }
      }
      quickSort(generatedMappings, util56.compareByGeneratedPositionsDeflated);
      this.__generatedMappings = generatedMappings;
      quickSort(originalMappings, util56.compareByOriginalPositions);
      this.__originalMappings = originalMappings;
    };
    BasicSourceMapConsumer.prototype._findMapping = function SourceMapConsumer_findMapping(aNeedle, aMappings, aLineName, aColumnName, aComparator, aBias) {
      if (aNeedle[aLineName] <= 0) {
        throw new TypeError("Line must be greater than or equal to 1, got " + aNeedle[aLineName]);
      }
      if (aNeedle[aColumnName] < 0) {
        throw new TypeError("Column must be greater than or equal to 0, got " + aNeedle[aColumnName]);
      }
      return binarySearch.search(aNeedle, aMappings, aComparator, aBias);
    };
    BasicSourceMapConsumer.prototype.computeColumnSpans = function SourceMapConsumer_computeColumnSpans() {
      for (var index = 0; index < this._generatedMappings.length; ++index) {
        var mapping = this._generatedMappings[index];
        if (index + 1 < this._generatedMappings.length) {
          var nextMapping = this._generatedMappings[index + 1];
          if (mapping.generatedLine === nextMapping.generatedLine) {
            mapping.lastGeneratedColumn = nextMapping.generatedColumn - 1;
            continue;
          }
        }
        mapping.lastGeneratedColumn = Infinity;
      }
    };
    BasicSourceMapConsumer.prototype.originalPositionFor = function SourceMapConsumer_originalPositionFor(aArgs) {
      var needle = {
        generatedLine: util56.getArg(aArgs, "line"),
        generatedColumn: util56.getArg(aArgs, "column")
      };
      var index = this._findMapping(
        needle,
        this._generatedMappings,
        "generatedLine",
        "generatedColumn",
        util56.compareByGeneratedPositionsDeflated,
        util56.getArg(aArgs, "bias", SourceMapConsumer.GREATEST_LOWER_BOUND)
      );
      if (index >= 0) {
        var mapping = this._generatedMappings[index];
        if (mapping.generatedLine === needle.generatedLine) {
          var source = util56.getArg(mapping, "source", null);
          if (source !== null) {
            source = this._sources.at(source);
            source = util56.computeSourceURL(this.sourceRoot, source, this._sourceMapURL);
          }
          var name = util56.getArg(mapping, "name", null);
          if (name !== null) {
            name = this._names.at(name);
          }
          return {
            source,
            line: util56.getArg(mapping, "originalLine", null),
            column: util56.getArg(mapping, "originalColumn", null),
            name
          };
        }
      }
      return {
        source: null,
        line: null,
        column: null,
        name: null
      };
    };
    BasicSourceMapConsumer.prototype.hasContentsOfAllSources = function BasicSourceMapConsumer_hasContentsOfAllSources() {
      if (!this.sourcesContent) {
        return false;
      }
      return this.sourcesContent.length >= this._sources.size() && !this.sourcesContent.some(function(sc) {
        return sc == null;
      });
    };
    BasicSourceMapConsumer.prototype.sourceContentFor = function SourceMapConsumer_sourceContentFor(aSource, nullOnMissing) {
      if (!this.sourcesContent) {
        return null;
      }
      var index = this._findSourceIndex(aSource);
      if (index >= 0) {
        return this.sourcesContent[index];
      }
      var relativeSource = aSource;
      if (this.sourceRoot != null) {
        relativeSource = util56.relative(this.sourceRoot, relativeSource);
      }
      var url7;
      if (this.sourceRoot != null && (url7 = util56.urlParse(this.sourceRoot))) {
        var fileUriAbsPath = relativeSource.replace(/^file:\/\//, "");
        if (url7.scheme == "file" && this._sources.has(fileUriAbsPath)) {
          return this.sourcesContent[this._sources.indexOf(fileUriAbsPath)];
        }
        if ((!url7.path || url7.path == "/") && this._sources.has("/" + relativeSource)) {
          return this.sourcesContent[this._sources.indexOf("/" + relativeSource)];
        }
      }
      if (nullOnMissing) {
        return null;
      } else {
        throw new Error('"' + relativeSource + '" is not in the SourceMap.');
      }
    };
    BasicSourceMapConsumer.prototype.generatedPositionFor = function SourceMapConsumer_generatedPositionFor(aArgs) {
      var source = util56.getArg(aArgs, "source");
      source = this._findSourceIndex(source);
      if (source < 0) {
        return {
          line: null,
          column: null,
          lastColumn: null
        };
      }
      var needle = {
        source,
        originalLine: util56.getArg(aArgs, "line"),
        originalColumn: util56.getArg(aArgs, "column")
      };
      var index = this._findMapping(
        needle,
        this._originalMappings,
        "originalLine",
        "originalColumn",
        util56.compareByOriginalPositions,
        util56.getArg(aArgs, "bias", SourceMapConsumer.GREATEST_LOWER_BOUND)
      );
      if (index >= 0) {
        var mapping = this._originalMappings[index];
        if (mapping.source === needle.source) {
          return {
            line: util56.getArg(mapping, "generatedLine", null),
            column: util56.getArg(mapping, "generatedColumn", null),
            lastColumn: util56.getArg(mapping, "lastGeneratedColumn", null)
          };
        }
      }
      return {
        line: null,
        column: null,
        lastColumn: null
      };
    };
    exports2.BasicSourceMapConsumer = BasicSourceMapConsumer;
    function IndexedSourceMapConsumer(aSourceMap, aSourceMapURL) {
      var sourceMap = aSourceMap;
      if (typeof aSourceMap === "string") {
        sourceMap = util56.parseSourceMapInput(aSourceMap);
      }
      var version2 = util56.getArg(sourceMap, "version");
      var sections = util56.getArg(sourceMap, "sections");
      if (version2 != this._version) {
        throw new Error("Unsupported version: " + version2);
      }
      this._sources = new ArraySet();
      this._names = new ArraySet();
      var lastOffset = {
        line: -1,
        column: 0
      };
      this._sections = sections.map(function(s) {
        if (s.url) {
          throw new Error("Support for url field in sections not implemented.");
        }
        var offset = util56.getArg(s, "offset");
        var offsetLine = util56.getArg(offset, "line");
        var offsetColumn = util56.getArg(offset, "column");
        if (offsetLine < lastOffset.line || offsetLine === lastOffset.line && offsetColumn < lastOffset.column) {
          throw new Error("Section offsets must be ordered and non-overlapping.");
        }
        lastOffset = offset;
        return {
          generatedOffset: {
            // The offset fields are 0-based, but we use 1-based indices when
            // encoding/decoding from VLQ.
            generatedLine: offsetLine + 1,
            generatedColumn: offsetColumn + 1
          },
          consumer: new SourceMapConsumer(util56.getArg(s, "map"), aSourceMapURL)
        };
      });
    }
    IndexedSourceMapConsumer.prototype = Object.create(SourceMapConsumer.prototype);
    IndexedSourceMapConsumer.prototype.constructor = SourceMapConsumer;
    IndexedSourceMapConsumer.prototype._version = 3;
    Object.defineProperty(IndexedSourceMapConsumer.prototype, "sources", {
      get: function() {
        var sources = [];
        for (var i2 = 0; i2 < this._sections.length; i2++) {
          for (var j2 = 0; j2 < this._sections[i2].consumer.sources.length; j2++) {
            sources.push(this._sections[i2].consumer.sources[j2]);
          }
        }
        return sources;
      }
    });
    IndexedSourceMapConsumer.prototype.originalPositionFor = function IndexedSourceMapConsumer_originalPositionFor(aArgs) {
      var needle = {
        generatedLine: util56.getArg(aArgs, "line"),
        generatedColumn: util56.getArg(aArgs, "column")
      };
      var sectionIndex = binarySearch.search(
        needle,
        this._sections,
        function(needle2, section2) {
          var cmp = needle2.generatedLine - section2.generatedOffset.generatedLine;
          if (cmp) {
            return cmp;
          }
          return needle2.generatedColumn - section2.generatedOffset.generatedColumn;
        }
      );
      var section = this._sections[sectionIndex];
      if (!section) {
        return {
          source: null,
          line: null,
          column: null,
          name: null
        };
      }
      return section.consumer.originalPositionFor({
        line: needle.generatedLine - (section.generatedOffset.generatedLine - 1),
        column: needle.generatedColumn - (section.generatedOffset.generatedLine === needle.generatedLine ? section.generatedOffset.generatedColumn - 1 : 0),
        bias: aArgs.bias
      });
    };
    IndexedSourceMapConsumer.prototype.hasContentsOfAllSources = function IndexedSourceMapConsumer_hasContentsOfAllSources() {
      return this._sections.every(function(s) {
        return s.consumer.hasContentsOfAllSources();
      });
    };
    IndexedSourceMapConsumer.prototype.sourceContentFor = function IndexedSourceMapConsumer_sourceContentFor(aSource, nullOnMissing) {
      for (var i2 = 0; i2 < this._sections.length; i2++) {
        var section = this._sections[i2];
        var content = section.consumer.sourceContentFor(aSource, true);
        if (content) {
          return content;
        }
      }
      if (nullOnMissing) {
        return null;
      } else {
        throw new Error('"' + aSource + '" is not in the SourceMap.');
      }
    };
    IndexedSourceMapConsumer.prototype.generatedPositionFor = function IndexedSourceMapConsumer_generatedPositionFor(aArgs) {
      for (var i2 = 0; i2 < this._sections.length; i2++) {
        var section = this._sections[i2];
        if (section.consumer._findSourceIndex(util56.getArg(aArgs, "source")) === -1) {
          continue;
        }
        var generatedPosition = section.consumer.generatedPositionFor(aArgs);
        if (generatedPosition) {
          var ret2 = {
            line: generatedPosition.line + (section.generatedOffset.generatedLine - 1),
            column: generatedPosition.column + (section.generatedOffset.generatedLine === generatedPosition.line ? section.generatedOffset.generatedColumn - 1 : 0)
          };
          return ret2;
        }
      }
      return {
        line: null,
        column: null
      };
    };
    IndexedSourceMapConsumer.prototype._parseMappings = function IndexedSourceMapConsumer_parseMappings(aStr, aSourceRoot) {
      this.__generatedMappings = [];
      this.__originalMappings = [];
      for (var i2 = 0; i2 < this._sections.length; i2++) {
        var section = this._sections[i2];
        var sectionMappings = section.consumer._generatedMappings;
        for (var j2 = 0; j2 < sectionMappings.length; j2++) {
          var mapping = sectionMappings[j2];
          var source = section.consumer._sources.at(mapping.source);
          source = util56.computeSourceURL(section.consumer.sourceRoot, source, this._sourceMapURL);
          this._sources.add(source);
          source = this._sources.indexOf(source);
          var name = null;
          if (mapping.name) {
            name = section.consumer._names.at(mapping.name);
            this._names.add(name);
            name = this._names.indexOf(name);
          }
          var adjustedMapping = {
            source,
            generatedLine: mapping.generatedLine + (section.generatedOffset.generatedLine - 1),
            generatedColumn: mapping.generatedColumn + (section.generatedOffset.generatedLine === mapping.generatedLine ? section.generatedOffset.generatedColumn - 1 : 0),
            originalLine: mapping.originalLine,
            originalColumn: mapping.originalColumn,
            name
          };
          this.__generatedMappings.push(adjustedMapping);
          if (typeof adjustedMapping.originalLine === "number") {
            this.__originalMappings.push(adjustedMapping);
          }
        }
      }
      quickSort(this.__generatedMappings, util56.compareByGeneratedPositionsDeflated);
      quickSort(this.__originalMappings, util56.compareByOriginalPositions);
    };
    exports2.IndexedSourceMapConsumer = IndexedSourceMapConsumer;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/lib/source-node.js
var require_source_node = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/lib/source-node.js"(exports2) {
    var SourceMapGenerator = require_source_map_generator().SourceMapGenerator;
    var util56 = require_util14();
    var REGEX_NEWLINE = /(\r?\n)/;
    var NEWLINE_CODE = 10;
    var isSourceNode = "$$$isSourceNode$$$";
    function SourceNode(aLine, aColumn, aSource, aChunks, aName) {
      this.children = [];
      this.sourceContents = {};
      this.line = aLine == null ? null : aLine;
      this.column = aColumn == null ? null : aColumn;
      this.source = aSource == null ? null : aSource;
      this.name = aName == null ? null : aName;
      this[isSourceNode] = true;
      if (aChunks != null) this.add(aChunks);
    }
    SourceNode.fromStringWithSourceMap = function SourceNode_fromStringWithSourceMap(aGeneratedCode, aSourceMapConsumer, aRelativePath) {
      var node = new SourceNode();
      var remainingLines = aGeneratedCode.split(REGEX_NEWLINE);
      var remainingLinesIndex = 0;
      var shiftNextLine = function() {
        var lineContents = getNextLine();
        var newLine = getNextLine() || "";
        return lineContents + newLine;
        function getNextLine() {
          return remainingLinesIndex < remainingLines.length ? remainingLines[remainingLinesIndex++] : void 0;
        }
      };
      var lastGeneratedLine = 1, lastGeneratedColumn = 0;
      var lastMapping = null;
      aSourceMapConsumer.eachMapping(function(mapping) {
        if (lastMapping !== null) {
          if (lastGeneratedLine < mapping.generatedLine) {
            addMappingWithCode(lastMapping, shiftNextLine());
            lastGeneratedLine++;
            lastGeneratedColumn = 0;
          } else {
            var nextLine = remainingLines[remainingLinesIndex] || "";
            var code = nextLine.substr(0, mapping.generatedColumn - lastGeneratedColumn);
            remainingLines[remainingLinesIndex] = nextLine.substr(mapping.generatedColumn - lastGeneratedColumn);
            lastGeneratedColumn = mapping.generatedColumn;
            addMappingWithCode(lastMapping, code);
            lastMapping = mapping;
            return;
          }
        }
        while (lastGeneratedLine < mapping.generatedLine) {
          node.add(shiftNextLine());
          lastGeneratedLine++;
        }
        if (lastGeneratedColumn < mapping.generatedColumn) {
          var nextLine = remainingLines[remainingLinesIndex] || "";
          node.add(nextLine.substr(0, mapping.generatedColumn));
          remainingLines[remainingLinesIndex] = nextLine.substr(mapping.generatedColumn);
          lastGeneratedColumn = mapping.generatedColumn;
        }
        lastMapping = mapping;
      }, this);
      if (remainingLinesIndex < remainingLines.length) {
        if (lastMapping) {
          addMappingWithCode(lastMapping, shiftNextLine());
        }
        node.add(remainingLines.splice(remainingLinesIndex).join(""));
      }
      aSourceMapConsumer.sources.forEach(function(sourceFile) {
        var content = aSourceMapConsumer.sourceContentFor(sourceFile);
        if (content != null) {
          if (aRelativePath != null) {
            sourceFile = util56.join(aRelativePath, sourceFile);
          }
          node.setSourceContent(sourceFile, content);
        }
      });
      return node;
      function addMappingWithCode(mapping, code) {
        if (mapping === null || mapping.source === void 0) {
          node.add(code);
        } else {
          var source = aRelativePath ? util56.join(aRelativePath, mapping.source) : mapping.source;
          node.add(new SourceNode(
            mapping.originalLine,
            mapping.originalColumn,
            source,
            code,
            mapping.name
          ));
        }
      }
    };
    SourceNode.prototype.add = function SourceNode_add(aChunk) {
      if (Array.isArray(aChunk)) {
        aChunk.forEach(function(chunk) {
          this.add(chunk);
        }, this);
      } else if (aChunk[isSourceNode] || typeof aChunk === "string") {
        if (aChunk) {
          this.children.push(aChunk);
        }
      } else {
        throw new TypeError(
          "Expected a SourceNode, string, or an array of SourceNodes and strings. Got " + aChunk
        );
      }
      return this;
    };
    SourceNode.prototype.prepend = function SourceNode_prepend(aChunk) {
      if (Array.isArray(aChunk)) {
        for (var i2 = aChunk.length - 1; i2 >= 0; i2--) {
          this.prepend(aChunk[i2]);
        }
      } else if (aChunk[isSourceNode] || typeof aChunk === "string") {
        this.children.unshift(aChunk);
      } else {
        throw new TypeError(
          "Expected a SourceNode, string, or an array of SourceNodes and strings. Got " + aChunk
        );
      }
      return this;
    };
    SourceNode.prototype.walk = function SourceNode_walk(aFn) {
      var chunk;
      for (var i2 = 0, len = this.children.length; i2 < len; i2++) {
        chunk = this.children[i2];
        if (chunk[isSourceNode]) {
          chunk.walk(aFn);
        } else {
          if (chunk !== "") {
            aFn(chunk, {
              source: this.source,
              line: this.line,
              column: this.column,
              name: this.name
            });
          }
        }
      }
    };
    SourceNode.prototype.join = function SourceNode_join(aSep) {
      var newChildren;
      var i2;
      var len = this.children.length;
      if (len > 0) {
        newChildren = [];
        for (i2 = 0; i2 < len - 1; i2++) {
          newChildren.push(this.children[i2]);
          newChildren.push(aSep);
        }
        newChildren.push(this.children[i2]);
        this.children = newChildren;
      }
      return this;
    };
    SourceNode.prototype.replaceRight = function SourceNode_replaceRight(aPattern, aReplacement) {
      var lastChild = this.children[this.children.length - 1];
      if (lastChild[isSourceNode]) {
        lastChild.replaceRight(aPattern, aReplacement);
      } else if (typeof lastChild === "string") {
        this.children[this.children.length - 1] = lastChild.replace(aPattern, aReplacement);
      } else {
        this.children.push("".replace(aPattern, aReplacement));
      }
      return this;
    };
    SourceNode.prototype.setSourceContent = function SourceNode_setSourceContent(aSourceFile, aSourceContent) {
      this.sourceContents[util56.toSetString(aSourceFile)] = aSourceContent;
    };
    SourceNode.prototype.walkSourceContents = function SourceNode_walkSourceContents(aFn) {
      for (var i2 = 0, len = this.children.length; i2 < len; i2++) {
        if (this.children[i2][isSourceNode]) {
          this.children[i2].walkSourceContents(aFn);
        }
      }
      var sources = Object.keys(this.sourceContents);
      for (var i2 = 0, len = sources.length; i2 < len; i2++) {
        aFn(util56.fromSetString(sources[i2]), this.sourceContents[sources[i2]]);
      }
    };
    SourceNode.prototype.toString = function SourceNode_toString() {
      var str2 = "";
      this.walk(function(chunk) {
        str2 += chunk;
      });
      return str2;
    };
    SourceNode.prototype.toStringWithSourceMap = function SourceNode_toStringWithSourceMap(aArgs) {
      var generated = {
        code: "",
        line: 1,
        column: 0
      };
      var map26 = new SourceMapGenerator(aArgs);
      var sourceMappingActive = false;
      var lastOriginalSource = null;
      var lastOriginalLine = null;
      var lastOriginalColumn = null;
      var lastOriginalName = null;
      this.walk(function(chunk, original) {
        generated.code += chunk;
        if (original.source !== null && original.line !== null && original.column !== null) {
          if (lastOriginalSource !== original.source || lastOriginalLine !== original.line || lastOriginalColumn !== original.column || lastOriginalName !== original.name) {
            map26.addMapping({
              source: original.source,
              original: {
                line: original.line,
                column: original.column
              },
              generated: {
                line: generated.line,
                column: generated.column
              },
              name: original.name
            });
          }
          lastOriginalSource = original.source;
          lastOriginalLine = original.line;
          lastOriginalColumn = original.column;
          lastOriginalName = original.name;
          sourceMappingActive = true;
        } else if (sourceMappingActive) {
          map26.addMapping({
            generated: {
              line: generated.line,
              column: generated.column
            }
          });
          lastOriginalSource = null;
          sourceMappingActive = false;
        }
        for (var idx = 0, length = chunk.length; idx < length; idx++) {
          if (chunk.charCodeAt(idx) === NEWLINE_CODE) {
            generated.line++;
            generated.column = 0;
            if (idx + 1 === length) {
              lastOriginalSource = null;
              sourceMappingActive = false;
            } else if (sourceMappingActive) {
              map26.addMapping({
                source: original.source,
                original: {
                  line: original.line,
                  column: original.column
                },
                generated: {
                  line: generated.line,
                  column: generated.column
                },
                name: original.name
              });
            }
          } else {
            generated.column++;
          }
        }
      });
      this.walkSourceContents(function(sourceFile, sourceContent) {
        map26.setSourceContent(sourceFile, sourceContent);
      });
      return { code: generated.code, map: map26 };
    };
    exports2.SourceNode = SourceNode;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/source-map.js
var require_source_map = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/source-map/0.6.1/ebd39c54774ec47b37ba995746f48f551fa0db0869052e27d0839dfb25f8d56f/node_modules/source-map/source-map.js"(exports2) {
    exports2.SourceMapGenerator = require_source_map_generator().SourceMapGenerator;
    exports2.SourceMapConsumer = require_source_map_consumer().SourceMapConsumer;
    exports2.SourceNode = require_source_node().SourceNode;
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/get-source/2.0.12/9ce054480c6cba4f93e89dbdf5d61762f6b7c578308d1220c4b155b24477534e/node_modules/get-source/impl/SyncPromise.js
var require_SyncPromise = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/get-source/2.0.12/9ce054480c6cba4f93e89dbdf5d61762f6b7c578308d1220c4b155b24477534e/node_modules/get-source/impl/SyncPromise.js"(exports2, module2) {
    "use strict";
    module2.exports = class SyncPromise {
      constructor(fn) {
        try {
          fn(
            (x) => {
              this.setValue(x, false);
            },
            // resolve
            (x) => {
              this.setValue(x, true);
            }
            // reject
          );
        } catch (e) {
          this.setValue(e, true);
        }
      }
      setValue(x, rejected) {
        this.val = x instanceof SyncPromise ? x.val : x;
        this.rejected = rejected || (x instanceof SyncPromise ? x.rejected : false);
      }
      static valueFrom(x) {
        if (x instanceof SyncPromise) {
          if (x.rejected) throw x.val;
          else return x.val;
        } else {
          return x;
        }
      }
      then(fn) {
        try {
          if (!this.rejected) return SyncPromise.resolve(fn(this.val));
        } catch (e) {
          return SyncPromise.reject(e);
        }
        return this;
      }
      catch(fn) {
        try {
          if (this.rejected) return SyncPromise.resolve(fn(this.val));
        } catch (e) {
          return SyncPromise.reject(e);
        }
        return this;
      }
      static resolve(x) {
        return new SyncPromise((resolve3) => {
          resolve3(x);
        });
      }
      static reject(x) {
        return new SyncPromise((_, reject3) => {
          reject3(x);
        });
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/get-source/2.0.12/9ce054480c6cba4f93e89dbdf5d61762f6b7c578308d1220c4b155b24477534e/node_modules/get-source/impl/path.js
var require_path5 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/get-source/2.0.12/9ce054480c6cba4f93e89dbdf5d61762f6b7c578308d1220c4b155b24477534e/node_modules/get-source/impl/path.js"(exports2, module2) {
    "use strict";
    var isBrowser2 = typeof window !== "undefined" && window.window === window && window.navigator;
    var cwd = isBrowser2 ? window.location.href : process.cwd();
    var urlRegexp = new RegExp("^((https|http)://)?[a-z0-9A-Z]{3}.[a-z0-9A-Z][a-z0-9A-Z]{0,61}?[a-z0-9A-Z].com|net|cn|cc (:s[0-9]{1-4})?/$");
    var path218 = module2.exports = {
      concat(a2, b) {
        const a_endsWithSlash = a2[a2.length - 1] === "/", b_startsWithSlash = b[0] === "/";
        return a2 + (a_endsWithSlash || b_startsWithSlash ? "" : "/") + (a_endsWithSlash && b_startsWithSlash ? b.substring(1) : b);
      },
      resolve(x) {
        if (path218.isAbsolute(x)) {
          return path218.normalize(x);
        }
        return path218.normalize(path218.concat(cwd, x));
      },
      normalize(x) {
        let output = [], skip = 0;
        x.split("/").reverse().filter((x2) => x2 !== ".").forEach((x2) => {
          if (x2 === "..") {
            skip++;
          } else if (skip === 0) {
            output.push(x2);
          } else {
            skip--;
          }
        });
        const result2 = output.reverse().join("/");
        return (isBrowser2 && result2[0] === "/" ? result2[1] === "/" ? window.location.protocol : window.location.origin : "") + result2;
      },
      isData: (x) => x.indexOf("data:") === 0,
      isURL: (x) => urlRegexp.test(x),
      isAbsolute: (x) => x[0] === "/" || /^[^\/]*:/.test(x),
      relativeToFile(a2, b) {
        return path218.isData(a2) || path218.isAbsolute(b) ? path218.normalize(b) : path218.normalize(path218.concat(a2.split("/").slice(0, -1).join("/"), b));
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/data-uri-to-buffer/2.0.2/7971a5888d15c08f70528fb1777b45367340f76bf45233f9617f9af8288332b0/node_modules/data-uri-to-buffer/index.js
var require_data_uri_to_buffer = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/data-uri-to-buffer/2.0.2/7971a5888d15c08f70528fb1777b45367340f76bf45233f9617f9af8288332b0/node_modules/data-uri-to-buffer/index.js"(exports2, module2) {
    "use strict";
    module2.exports = dataUriToBuffer;
    function dataUriToBuffer(uri) {
      if (!/^data\:/i.test(uri)) {
        throw new TypeError(
          '`uri` does not appear to be a Data URI (must begin with "data:")'
        );
      }
      uri = uri.replace(/\r?\n/g, "");
      var firstComma = uri.indexOf(",");
      if (-1 === firstComma || firstComma <= 4) {
        throw new TypeError("malformed data: URI");
      }
      var meta = uri.substring(5, firstComma).split(";");
      var type4 = meta[0] || "text/plain";
      var typeFull = type4;
      var base64 = false;
      var charset = "";
      for (var i2 = 1; i2 < meta.length; i2++) {
        if ("base64" == meta[i2]) {
          base64 = true;
        } else {
          typeFull += ";" + meta[i2];
          if (0 == meta[i2].indexOf("charset=")) {
            charset = meta[i2].substring(8);
          }
        }
      }
      if (!meta[0] && !charset.length) {
        typeFull += ";charset=US-ASCII";
        charset = "US-ASCII";
      }
      var data = unescape(uri.substring(firstComma + 1));
      var encoding = base64 ? "base64" : "ascii";
      var buffer3 = Buffer.from ? Buffer.from(data, encoding) : new Buffer(data, encoding);
      buffer3.type = type4;
      buffer3.typeFull = typeFull;
      buffer3.charset = charset;
      return buffer3;
    }
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/get-source/2.0.12/9ce054480c6cba4f93e89dbdf5d61762f6b7c578308d1220c4b155b24477534e/node_modules/get-source/get-source.js
var require_get_source = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/get-source/2.0.12/9ce054480c6cba4f93e89dbdf5d61762f6b7c578308d1220c4b155b24477534e/node_modules/get-source/get-source.js"(exports2, module2) {
    "use strict";
    var { assign } = Object;
    var isBrowser2 = typeof window !== "undefined" && window.window === window && window.navigator;
    var SourceMapConsumer = require_source_map().SourceMapConsumer;
    var SyncPromise = require_SyncPromise();
    var path218 = require_path5();
    var dataURIToBuffer = require_data_uri_to_buffer();
    var nodeRequire = isBrowser2 ? null : module2.require;
    var memoize2 = (f) => {
      const m = (x) => x in m.cache ? m.cache[x] : m.cache[x] = f(x);
      m.forgetEverything = () => {
        m.cache = /* @__PURE__ */ Object.create(null);
      };
      m.cache = /* @__PURE__ */ Object.create(null);
      return m;
    };
    function impl(fetchFile, sync3) {
      const PromiseImpl = sync3 ? SyncPromise : Promise;
      const SourceFileMemoized = memoize2((path219) => SourceFile(path219, fetchFile(path219)));
      function SourceFile(srcPath, text) {
        if (text === void 0) return SourceFileMemoized(path218.resolve(srcPath));
        return PromiseImpl.resolve(text).then((text2) => {
          let file;
          let lines;
          let resolver;
          let _resolve = (loc) => (resolver = resolver || SourceMapResolverFromFetchedFile(file))(loc);
          return file = {
            path: srcPath,
            text: text2,
            get lines() {
              return lines = lines || text2.split("\n");
            },
            resolve(loc) {
              const result2 = _resolve(loc);
              if (sync3) {
                try {
                  return SyncPromise.valueFrom(result2);
                } catch (e) {
                  return assign({}, loc, { error: e });
                }
              } else {
                return Promise.resolve(result2);
              }
            },
            _resolve
          };
        });
      }
      function SourceMapResolverFromFetchedFile(file) {
        const re = /\u0023 sourceMappingURL=(.+)\n?/g;
        let lastMatch = void 0;
        while (true) {
          const match = re.exec(file.text);
          if (match) lastMatch = match;
          else break;
        }
        const url7 = lastMatch && lastMatch[1];
        const defaultResolver = (loc) => assign({}, loc, {
          sourceFile: file,
          sourceLine: file.lines[loc.line - 1] || ""
        });
        return url7 ? SourceMapResolver(file.path, url7, defaultResolver) : defaultResolver;
      }
      function SourceMapResolver(originalFilePath, sourceMapPath, fallbackResolve) {
        const srcFile = sourceMapPath.startsWith("data:") ? SourceFile(originalFilePath, dataURIToBuffer(sourceMapPath).toString()) : SourceFile(path218.relativeToFile(originalFilePath, sourceMapPath));
        const parsedMap = srcFile.then((f) => SourceMapConsumer(JSON.parse(f.text)));
        const sourceFor = memoize2(function sourceFor2(filePath) {
          return srcFile.then((f) => {
            const fullPath = path218.relativeToFile(f.path, filePath);
            return parsedMap.then((x) => SourceFile(
              fullPath,
              x.sourceContentFor(
                filePath,
                true
                /* return null on missing */
              ) || void 0
            ));
          });
        });
        return (loc) => parsedMap.then((x) => {
          const originalLoc = x.originalPositionFor(loc);
          return originalLoc.source ? sourceFor(originalLoc.source).then(
            (x2) => x2._resolve(assign({}, loc, {
              line: originalLoc.line,
              column: originalLoc.column + 1,
              name: originalLoc.name
            }))
          ) : fallbackResolve(loc);
        }).catch((e) => assign(fallbackResolve(loc), { sourceMapError: e }));
      }
      return assign(function getSource(path219) {
        const file = SourceFile(path219);
        if (sync3) {
          try {
            return SyncPromise.valueFrom(file);
          } catch (e) {
            const noFile = {
              path: path219,
              text: "",
              lines: [],
              error: e,
              resolve(loc) {
                return assign({}, loc, { error: e, sourceLine: "", sourceFile: noFile });
              }
            };
            return noFile;
          }
        }
        return file;
      }, {
        resetCache: () => SourceFileMemoized.forgetEverything(),
        getCache: () => SourceFileMemoized.cache
      });
    }
    module2.exports = impl(function fetchFileSync(path219) {
      return new SyncPromise((resolve3) => {
        if (isBrowser2) {
          let xhr = new XMLHttpRequest();
          xhr.open(
            "GET",
            path219,
            false
            /* SYNCHRONOUS XHR FTW :) */
          );
          xhr.send(null);
          resolve3(xhr.responseText);
        } else {
          resolve3(nodeRequire("fs").readFileSync(path219, { encoding: "utf8" }));
        }
      });
    }, true);
    module2.exports.async = impl(function fetchFileAsync(path219) {
      return new Promise((resolve3, reject3) => {
        if (isBrowser2) {
          let xhr = new XMLHttpRequest();
          xhr.open("GET", path219);
          xhr.onreadystatechange = (event) => {
            if (xhr.readyState === 4) {
              if (xhr.status === 200) {
                resolve3(xhr.responseText);
              } else {
                reject3(new Error(xhr.statusText));
              }
            }
          };
          xhr.send(null);
        } else {
          nodeRequire("fs").readFile(path219, { encoding: "utf8" }, (e, x) => {
            e ? reject3(e) : resolve3(x);
          });
        }
      });
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/stacktracey/2.2.0/7b0e97511556ff7bf47e2912a575be16995796cd90f62c87be4986f7f9c9caf8/node_modules/stacktracey/impl/partition.js
var require_partition4 = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/stacktracey/2.2.0/7b0e97511556ff7bf47e2912a575be16995796cd90f62c87be4986f7f9c9caf8/node_modules/stacktracey/impl/partition.js"(exports2, module2) {
    "use strict";
    module2.exports = (arr_, pred) => {
      const arr = arr_ || [], spans = [];
      let span = {
        label: void 0,
        items: [arr.first]
      };
      arr.forEach((x) => {
        const label = pred(x);
        if (span.label !== label && span.items.length) {
          spans.push(span = { label, items: [x] });
        } else {
          span.items.push(x);
        }
      });
      return spans;
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/printable-characters/1.0.42/cb1361b9e098f3fa90d21d23abb7ed3c937d126ff428a6f47a45d1bcdcc7d94c/node_modules/printable-characters/build/printable-characters.js
var require_printable_characters = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/printable-characters/1.0.42/cb1361b9e098f3fa90d21d23abb7ed3c937d126ff428a6f47a45d1bcdcc7d94c/node_modules/printable-characters/build/printable-characters.js"(exports2, module2) {
    "use strict";
    var _slicedToArray = /* @__PURE__ */ (function() {
      function sliceIterator(arr, i2) {
        var _arr = [];
        var _n = true;
        var _d = false;
        var _e = void 0;
        try {
          for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {
            _arr.push(_s.value);
            if (i2 && _arr.length === i2) break;
          }
        } catch (err) {
          _d = true;
          _e = err;
        } finally {
          try {
            if (!_n && _i["return"]) _i["return"]();
          } finally {
            if (_d) throw _e;
          }
        }
        return _arr;
      }
      return function(arr, i2) {
        if (Array.isArray(arr)) {
          return arr;
        } else if (Symbol.iterator in Object(arr)) {
          return sliceIterator(arr, i2);
        } else {
          throw new TypeError("Invalid attempt to destructure non-iterable instance");
        }
      };
    })();
    var ansiEscapeCode = "[\x1B\x9B][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-PRZcf-nqry=><]";
    var zeroWidthCharacterExceptNewline = "\0-\b\v-\x1B\x9B\xAD\u200B\u2028\u2029\uFEFF\uFE00-\uFE0F";
    var zeroWidthCharacter = "\n" + zeroWidthCharacterExceptNewline;
    var zeroWidthCharactersExceptNewline = new RegExp("(?:" + ansiEscapeCode + ")|[" + zeroWidthCharacterExceptNewline + "]", "g");
    var zeroWidthCharacters = new RegExp("(?:" + ansiEscapeCode + ")|[" + zeroWidthCharacter + "]", "g");
    var partition3 = new RegExp("((?:" + ansiEscapeCode + ")|[	" + zeroWidthCharacter + "])?([^	" + zeroWidthCharacter + "]*)", "g");
    module2.exports = {
      zeroWidthCharacters,
      ansiEscapeCodes: new RegExp(ansiEscapeCode, "g"),
      strlen: (s) => Array.from(s.replace(zeroWidthCharacters, "")).length,
      // Array.from solves the emoji problem as described here: http://blog.jonnew.com/posts/poo-dot-length-equals-two
      isBlank: (s) => s.replace(zeroWidthCharacters, "").replace(/\s/g, "").length === 0,
      blank: (s) => Array.from(s.replace(zeroWidthCharactersExceptNewline, "")).map((x) => x === "	" || x === "\n" ? x : " ").join(""),
      partition(s) {
        for (var m, spans = []; partition3.lastIndex !== s.length && (m = partition3.exec(s)); ) {
          spans.push([m[1] || "", m[2]]);
        }
        partition3.lastIndex = 0;
        return spans;
      },
      first(s, n2) {
        let result2 = "", length = 0;
        for (const _ref of module2.exports.partition(s)) {
          var _ref2 = _slicedToArray(_ref, 2);
          const nonPrintable = _ref2[0];
          const printable = _ref2[1];
          const text = Array.from(printable).slice(0, n2 - length);
          result2 += nonPrintable + text.join("");
          length += text.length;
        }
        return result2;
      }
    };
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/as-table/1.0.55/0eae360532f84711dcb6b339fa9065b0245dc63b832077deaacf6f209f13e3b5/node_modules/as-table/build/as-table.js
var require_as_table = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/as-table/1.0.55/0eae360532f84711dcb6b339fa9065b0245dc63b832077deaacf6f209f13e3b5/node_modules/as-table/build/as-table.js"(exports2, module2) {
    "use strict";
    function _toConsumableArray(arr) {
      if (Array.isArray(arr)) {
        for (var i2 = 0, arr2 = Array(arr.length); i2 < arr.length; i2++) arr2[i2] = arr[i2];
        return arr2;
      } else {
        return Array.from(arr);
      }
    }
    var O2 = Object;
    var _require = require_printable_characters();
    var first = _require.first;
    var strlen = _require.strlen;
    var limit = (s, n2) => first(s, n2 - 1) + "\u2026";
    var asColumns = (rows, cfg_) => {
      const zip = (arrs, f) => arrs.reduce((a2, b) => b.map((b2, i2) => [].concat(_toConsumableArray(a2[i2] || []), [b2])), []).map((args) => f.apply(void 0, _toConsumableArray(args))), cells = rows.map((r) => r.map((c3) => c3.replace(/\n/g, "\\n"))), cellWidths = cells.map((r) => r.map(strlen)), maxWidths = zip(cellWidths, Math.max), cfg = O2.assign({
        delimiter: "  ",
        minColumnWidths: maxWidths.map((x) => 0),
        maxTotalWidth: 0
      }, cfg_), delimiterLength = strlen(cfg.delimiter), totalWidth = maxWidths.reduce((a2, b) => a2 + b, 0), relativeWidths = maxWidths.map((w) => w / totalWidth), maxTotalWidth = cfg.maxTotalWidth - delimiterLength * (maxWidths.length - 1), excessWidth = Math.max(0, totalWidth - maxTotalWidth), computedWidths = zip([cfg.minColumnWidths, maxWidths, relativeWidths], (min, max3, relative2) => Math.max(min, Math.floor(max3 - excessWidth * relative2))), restCellWidths = cellWidths.map((widths) => zip([computedWidths, widths], (a2, b) => a2 - b));
      return zip([cells, restCellWidths], (a2, b) => zip([a2, b], (str2, w) => w >= 0 ? cfg.right ? " ".repeat(w) + str2 : str2 + " ".repeat(w) : limit(str2, strlen(str2) + w)).join(cfg.delimiter));
    };
    var asTable = (cfg) => O2.assign((arr) => {
      var _ref;
      if (arr[0] && Array.isArray(arr[0])) {
        return asColumns(arr.map((r) => r.map((c3, i2) => c3 === void 0 ? "" : cfg.print(c3, i2))), cfg).join("\n");
      }
      const colNames = [].concat(_toConsumableArray(new Set((_ref = []).concat.apply(_ref, _toConsumableArray(arr.map(O2.keys)))))), columns = [colNames.map(cfg.title)].concat(_toConsumableArray(arr.map((o2) => colNames.map((key) => o2[key] === void 0 ? "" : cfg.print(o2[key], key))))), lines = asColumns(columns, cfg);
      return (cfg.dash ? [lines[0], cfg.dash.repeat(strlen(lines[0]))].concat(_toConsumableArray(lines.slice(1))) : lines).join("\n");
    }, cfg, {
      configure: (newConfig) => asTable(O2.assign({}, cfg, newConfig))
    });
    module2.exports = asTable({
      maxTotalWidth: Number.MAX_SAFE_INTEGER,
      print: String,
      title: String,
      dash: "-",
      right: false
    });
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/stacktracey/2.2.0/7b0e97511556ff7bf47e2912a575be16995796cd90f62c87be4986f7f9c9caf8/node_modules/stacktracey/stacktracey.js
var require_stacktracey = __commonJS({
  "../../../../.local/share/pnpm/store/v11/links/@/stacktracey/2.2.0/7b0e97511556ff7bf47e2912a575be16995796cd90f62c87be4986f7f9c9caf8/node_modules/stacktracey/stacktracey.js"(exports2, module2) {
    "use strict";
    var O2 = Object;
    var isBrowser2 = typeof window !== "undefined" && window.window === window && window.navigator;
    var nodeRequire = isBrowser2 ? null : module2.require;
    var lastOf = (x) => x[x.length - 1];
    var getSource = require_get_source();
    var partition3 = require_partition4();
    var asTable = require_as_table();
    var nixSlashes = (x) => x.replace(/\\/g, "/");
    var pathRoot = isBrowser2 ? window.location.href : nixSlashes(process.cwd()) + "/";
    var StackTracey2 = class _StackTracey {
      constructor(input, offset) {
        const originalInput = input, isParseableSyntaxError = input && (input instanceof SyntaxError && !isBrowser2);
        if (!input) {
          input = new Error();
          offset = offset === void 0 ? 1 : offset;
        }
        if (input instanceof Error) {
          input = input.stack || "";
        }
        if (typeof input === "string") {
          input = this.rawParse(input).slice(offset).map((x) => this.extractEntryMetadata(x));
        }
        if (Array.isArray(input)) {
          if (isParseableSyntaxError) {
            const rawLines = nodeRequire("util").inspect(originalInput).split("\n"), fileLine = rawLines[0].split(":"), line = fileLine.pop(), file = fileLine.join(":");
            if (file) {
              input.unshift({
                file: nixSlashes(file),
                line,
                column: (rawLines[2] || "").indexOf("^") + 1,
                sourceLine: rawLines[1],
                callee: "(syntax error)",
                syntaxError: true
              });
            }
          }
          this.items = input;
        } else {
          this.items = [];
        }
      }
      extractEntryMetadata(e) {
        const decomposedPath = this.decomposePath(e.file || "");
        const fileRelative = decomposedPath[0];
        const externalDomain = decomposedPath[1];
        return O2.assign(e, {
          calleeShort: e.calleeShort || lastOf((e.callee || "").split(".")),
          fileRelative,
          fileShort: this.shortenPath(fileRelative),
          fileName: lastOf((e.file || "").split("/")),
          thirdParty: this.isThirdParty(fileRelative, externalDomain) && !e.index,
          externalDomain
        });
      }
      shortenPath(relativePath) {
        return relativePath.replace(/^node_modules\//, "").replace(/^webpack\/bootstrap\//, "").replace(/^__parcel_source_root\//, "");
      }
      decomposePath(fullPath) {
        let result2 = fullPath;
        if (isBrowser2) result2 = result2.replace(pathRoot, "");
        const externalDomainMatch = result2.match(/^(http|https)\:\/\/?([^\/]+)\/(.*)/);
        const externalDomain = externalDomainMatch ? externalDomainMatch[2] : void 0;
        result2 = externalDomainMatch ? externalDomainMatch[3] : result2;
        if (!isBrowser2) result2 = nodeRequire("path").relative(pathRoot, result2);
        return [
          nixSlashes(result2).replace(/^.*\:\/\/?\/?/, ""),
          // cut webpack:/// and webpack:/ things
          externalDomain
        ];
      }
      isThirdParty(relativePath, externalDomain) {
        return externalDomain || relativePath[0] === "~" || // webpack-specific heuristic
        relativePath[0] === "/" || // external source
        relativePath.indexOf("node_modules") === 0 || relativePath.indexOf("webpack/bootstrap") === 0;
      }
      rawParse(str2) {
        const lines = (str2 || "").split("\n");
        const entries = lines.map((line) => {
          line = line.trim();
          let callee, fileLineColumn = [], native, planA, planB;
          if ((planA = line.match(/at (.+) \(eval at .+ \((.+)\), .+\)/)) || // eval calls
          (planA = line.match(/at (.+) \((.+)\)/)) || (planA = line.match(/at (.+) ([^ ]+)/)) || line.slice(0, 3) !== "at " && (planA = line.match(/(.*)@(.*)/))) {
            callee = planA[1];
            native = planA[2] === "native";
            fileLineColumn = (planA[2].match(/(.*):(\d+):(\d+)/) || planA[2].match(/(.*):(\d+)/) || []).slice(1);
          } else if (planB = line.match(/^(at\s+)*(.+):(\d+):(\d+)/)) {
            fileLineColumn = planB.slice(2);
          } else {
            return void 0;
          }
          if (callee && !fileLineColumn[0]) {
            const type4 = callee.split(".")[0];
            if (type4 === "Array") {
              native = true;
            }
          }
          return {
            beforeParse: line,
            callee: callee || "",
            index: isBrowser2 && fileLineColumn[0] === window.location.href,
            native: native || false,
            file: nixSlashes(fileLineColumn[0] || ""),
            line: parseInt(fileLineColumn[1] || "", 10) || void 0,
            column: parseInt(fileLineColumn[2] || "", 10) || void 0
          };
        });
        return entries.filter((x) => x !== void 0);
      }
      withSourceAt(i2) {
        return this.items[i2] && this.withSource(this.items[i2]);
      }
      withSourceAsyncAt(i2) {
        return this.items[i2] && this.withSourceAsync(this.items[i2]);
      }
      withSource(loc) {
        if (this.shouldSkipResolving(loc)) {
          return loc;
        } else {
          let resolved = getSource(loc.file || "").resolve(loc);
          if (!resolved.sourceFile) {
            return loc;
          }
          return this.withSourceResolved(loc, resolved);
        }
      }
      withSourceAsync(loc) {
        if (this.shouldSkipResolving(loc)) {
          return Promise.resolve(loc);
        } else {
          return getSource.async(loc.file || "").then((x) => x.resolve(loc)).then((resolved) => this.withSourceResolved(loc, resolved)).catch((e) => this.withSourceResolved(loc, { error: e, sourceLine: "" }));
        }
      }
      shouldSkipResolving(loc) {
        return loc.sourceFile || loc.error || loc.file && loc.file.indexOf("<") >= 0;
      }
      withSourceResolved(loc, resolved) {
        if (resolved.sourceFile && !resolved.sourceFile.error) {
          resolved.file = nixSlashes(resolved.sourceFile.path);
          resolved = this.extractEntryMetadata(resolved);
        }
        if (resolved.sourceLine.includes("// @hide")) {
          resolved.sourceLine = resolved.sourceLine.replace("// @hide", "");
          resolved.hide = true;
        }
        if (resolved.sourceLine.includes("__webpack_require__") || // webpack-specific heuristics
        resolved.sourceLine.includes("/******/ ({")) {
          resolved.thirdParty = true;
        }
        return O2.assign({ sourceLine: "" }, loc, resolved);
      }
      withSources() {
        return this.map((x) => this.withSource(x));
      }
      withSourcesAsync() {
        return Promise.all(this.items.map((x) => this.withSourceAsync(x))).then((items) => new _StackTracey(items));
      }
      mergeRepeatedLines() {
        return new _StackTracey(
          partition3(this.items, (e) => e.file + e.line).map(
            (group) => {
              return group.items.slice(1).reduce((memo, entry) => {
                memo.callee = (memo.callee || "<anonymous>") + " \u2192 " + (entry.callee || "<anonymous>");
                memo.calleeShort = (memo.calleeShort || "<anonymous>") + " \u2192 " + (entry.calleeShort || "<anonymous>");
                return memo;
              }, O2.assign({}, group.items[0]));
            }
          )
        );
      }
      clean() {
        const s = this.withSources().mergeRepeatedLines();
        return s.filter(s.isClean.bind(s));
      }
      cleanAsync() {
        return this.withSourcesAsync().then((s) => {
          s = s.mergeRepeatedLines();
          return s.filter(s.isClean.bind(s));
        });
      }
      isClean(entry, index) {
        return index === 0 || !(entry.thirdParty || entry.hide || entry.native);
      }
      at(i2) {
        return O2.assign({
          beforeParse: "",
          callee: "<???>",
          index: false,
          native: false,
          file: "<???>",
          line: 0,
          column: 0
        }, this.items[i2]);
      }
      asTable(opts2) {
        const maxColumnWidths = opts2 && opts2.maxColumnWidths || this.maxColumnWidths();
        const trimEnd = (s, n2) => s && (s.length > n2 ? s.slice(0, n2 - 1) + "\u2026" : s);
        const trimStart = (s, n2) => s && (s.length > n2 ? "\u2026" + s.slice(-(n2 - 1)) : s);
        const trimmed = this.map(
          (e) => [
            "at " + trimEnd(e.calleeShort, maxColumnWidths.callee),
            trimStart(e.fileShort && e.fileShort + ":" + e.line || "", maxColumnWidths.file),
            trimEnd((e.sourceLine || "").trim() || "", maxColumnWidths.sourceLine)
          ]
        );
        return asTable(trimmed.items);
      }
      maxColumnWidths() {
        return {
          callee: 30,
          file: 60,
          sourceLine: 80
        };
      }
      static resetCache() {
        getSource.resetCache();
        getSource.async.resetCache();
      }
      static locationsEqual(a2, b) {
        return a2.file === b.file && a2.line === b.line && a2.column === b.column;
      }
    };
    ["map", "filter", "slice", "concat"].forEach((method) => {
      StackTracey2.prototype[method] = function() {
        return new StackTracey2(this.items[method].apply(this.items, arguments));
      };
    });
    module2.exports = StackTracey2;
  }
});

// ../cli/default-reporter/lib/reportError.js
function reportError(logObj, config) {
  const errorInfo = getErrorInfo(logObj, config);
  if (!errorInfo)
    return null;
  let output = formatErrorSummary(errorInfo.title, logObj.err?.code);
  if (logObj.pkgsStack != null) {
    if (logObj.pkgsStack.length > 0) {
      output += `

${formatPkgsStack(logObj.pkgsStack)}`;
    } else if ("prefix" in logObj && logObj.prefix) {
      output += `

This error happened while installing a direct dependency of ${logObj.prefix}`;
    }
  }
  if (errorInfo.body) {
    output += `

${errorInfo.body}`;
  }
  return output;
}
function getErrorInfo(logObj, config) {
  if ("err" in logObj && logObj.err) {
    const err = logObj.err;
    switch (err.code) {
      case "ERR_PNPM_UNEXPECTED_STORE":
        return reportUnexpectedStore(err, logObj);
      // eslint-disable-line @typescript-eslint/no-explicit-any
      case "ERR_PNPM_UNEXPECTED_VIRTUAL_STORE":
        return reportUnexpectedVirtualStoreDir(err, logObj);
      // eslint-disable-line @typescript-eslint/no-explicit-any
      case "ERR_PNPM_STORE_BREAKING_CHANGE":
        return reportStoreBreakingChange(logObj);
      // eslint-disable-line @typescript-eslint/no-explicit-any
      case "ERR_PNPM_MODULES_BREAKING_CHANGE":
        return reportModulesBreakingChange(logObj);
      // eslint-disable-line @typescript-eslint/no-explicit-any
      case "ERR_PNPM_MODIFIED_DEPENDENCY":
        return reportModifiedDependency(logObj);
      // eslint-disable-line @typescript-eslint/no-explicit-any
      case "ERR_PNPM_LOCKFILE_BREAKING_CHANGE":
        return reportLockfileBreakingChange(err, logObj);
      case "ERR_PNPM_RECURSIVE_RUN_NO_SCRIPT":
        return { title: err.message };
      case "ERR_PNPM_MISSING_TIME":
        return { title: err.message, body: 'If you cannot fix this registry issue, then set "resolution-mode" to "highest".' };
      case "ERR_PNPM_NO_MATCHING_VERSION":
      case "ERR_PNPM_NO_MATURE_MATCHING_VERSION":
        return formatNoMatchingVersion(err, logObj);
      case "ERR_PNPM_RECURSIVE_FAIL":
        return formatRecursiveCommandSummary(logObj);
      // eslint-disable-line @typescript-eslint/no-explicit-any
      case "ERR_PNPM_BAD_TARBALL_SIZE":
        return reportBadTarballSize(err, logObj);
      case "ELIFECYCLE":
        return reportLifecycleError(logObj);
      // eslint-disable-line @typescript-eslint/no-explicit-any
      case "ERR_PNPM_UNSUPPORTED_ENGINE":
        return reportEngineError(logObj);
      // eslint-disable-line @typescript-eslint/no-explicit-any
      case "ERR_PNPM_PEER_DEP_ISSUES":
        return reportPeerDependencyIssuesError(err, logObj);
      // eslint-disable-line @typescript-eslint/no-explicit-any
      case "ERR_PNPM_DEDUPE_CHECK_ISSUES":
        return reportDedupeCheckIssuesError(err, logObj);
      // eslint-disable-line @typescript-eslint/no-explicit-any
      case "ERR_PNPM_SPEC_NOT_SUPPORTED_BY_ANY_RESOLVER":
        return reportSpecNotSupportedByAnyResolverError(err, logObj);
      // eslint-disable-line @typescript-eslint/no-explicit-any
      case "ERR_PNPM_FETCH_401":
      case "ERR_PNPM_FETCH_403":
        return reportAuthError(err, logObj, config);
      // eslint-disable-line @typescript-eslint/no-explicit-any
      default: {
        if (!err.code?.startsWith?.("ERR_PNPM_")) {
          return formatGenericError(err.message ?? logObj.message, err.stack);
        }
        return {
          title: err.message ?? "",
          body: logObj.hint
        };
      }
    }
  }
  return { title: logObj.message };
}
function formatPkgNameVer({ name, version: version2 }) {
  return version2 == null ? name : `${name}@${version2}`;
}
function formatPkgsStack(pkgsStack) {
  return `This error happened while installing the dependencies of ${formatPkgNameVer(pkgsStack[0])}${pkgsStack.slice(1).map((pkgInfo) => `${EOL} at ${formatPkgNameVer(pkgInfo)}`).join("")}`;
}
function formatNoMatchingVersion(err, msg) {
  const meta = msg.packageMeta;
  if (!meta) {
    return { title: err.message };
  }
  const latestVersion = meta["dist-tags"].latest;
  let output = `The latest release of ${meta.name} is "${latestVersion}".`;
  const latestTime = meta.time?.[latestVersion];
  if (latestTime) {
    output += ` Published at ${stringifyDate(latestTime)}`;
  }
  output += EOL;
  if (!equals_default(Object.keys(meta["dist-tags"]), ["latest"])) {
    output += EOL + "Other releases are:" + EOL;
    for (const tag in meta["dist-tags"]) {
      if (tag !== "latest") {
        const version2 = meta["dist-tags"][tag];
        output += `  * ${tag}: ${version2}`;
        const time = meta.time?.[version2];
        if (time) {
          output += ` published at ${stringifyDate(time)}`;
        }
        output += EOL;
      }
    }
  }
  output += `${EOL}If you need the full list of all ${Object.keys(meta.versions).length} published versions run "pnpm view ${meta.name} versions".`;
  return {
    title: err.message,
    body: output
  };
}
function stringifyDate(dateStr) {
  const now = Date.now();
  const oneDayAgo = now - 24 * 60 * 60 * 1e3;
  const date = new Date(dateStr);
  if (date.getTime() < oneDayAgo) {
    return date.toLocaleDateString();
  }
  return `${date.toLocaleDateString()} ${date.toLocaleTimeString()}`;
}
function reportUnexpectedStore(err, msg) {
  return {
    title: err.message,
    body: `The dependencies at "${msg.modulesDir}" are currently linked from the store at "${msg.expectedStorePath}".

pnpm now wants to use the store at "${msg.actualStorePath}" to link dependencies.

If you want to use the new store location, reinstall your dependencies with "pnpm install".

You may change the global store location by running "pnpm config set store-dir <dir> --global".
(This error may happen if the node_modules was installed with a different major version of pnpm)`
  };
}
function reportUnexpectedVirtualStoreDir(err, msg) {
  return {
    title: err.message,
    body: `The dependencies at "${msg.modulesDir}" are currently symlinked from the virtual store directory at "${msg.expected}".

pnpm now wants to use the virtual store at "${msg.actual}" to link dependencies from the store.

If you want to use the new virtual store location, reinstall your dependencies with "pnpm install".

You may change the virtual store location by changing the value of the virtual-store-dir config.`
  };
}
function reportStoreBreakingChange(msg) {
  let output = `Store path: ${colorPath(msg.storePath)}

Run "pnpm install" to recreate node_modules.`;
  if (msg.additionalInformation) {
    output = `${output}${EOL}${EOL}${msg.additionalInformation}`;
  }
  output += formatRelatedSources(msg);
  return {
    title: "The store used for the current node_modules is incompatible with the current version of pnpm",
    body: output
  };
}
function reportModulesBreakingChange(msg) {
  let output = `node_modules path: ${colorPath(msg.modulesPath)}

Run ${highlight("pnpm install")} to recreate node_modules.`;
  if (msg.additionalInformation) {
    output = `${output}${EOL}${EOL}${msg.additionalInformation}`;
  }
  output += formatRelatedSources(msg);
  return {
    title: "The current version of pnpm is not compatible with the available node_modules structure",
    body: output
  };
}
function formatRelatedSources(msg) {
  let output = "";
  if (!msg.relatedIssue && !msg.relatedPR)
    return output;
  output += EOL;
  if (msg.relatedIssue) {
    output += EOL + `Related issue: ${colorPath(`https://github.com/pnpm/pnpm/issues/${msg.relatedIssue}`)}`;
  }
  if (msg.relatedPR) {
    output += EOL + `Related PR: ${colorPath(`https://github.com/pnpm/pnpm/pull/${msg.relatedPR}`)}`;
  }
  return output;
}
function formatGenericError(errorMessage, stack) {
  if (stack) {
    let prettyStack;
    try {
      prettyStack = new import_stacktracey.default(stack).asTable();
    } catch {
      prettyStack = stack.toString();
    }
    if (prettyStack) {
      return {
        title: errorMessage,
        body: prettyStack
      };
    }
  }
  return { title: errorMessage };
}
function formatErrorSummary(message, code) {
  return `${source_default.bgRed.red("[")}${source_default.bgRed.black(code ?? "ERROR")}${source_default.bgRed.red("]")} ${source_default.red(message)}`;
}
function reportModifiedDependency(msg) {
  return {
    title: "Packages in the store have been mutated",
    body: `These packages are modified:
${msg.modified.map((pkgPath) => colorPath(pkgPath)).join(EOL)}

You can run ${highlight("pnpm install --force")} to refetch the modified packages`
  };
}
function reportLockfileBreakingChange(err, _msg) {
  return {
    title: err.message,
    body: `Run with the ${highlight("--force")} parameter to recreate the lockfile.`
  };
}
function formatRecursiveCommandSummary(msg) {
  const output = EOL + `Summary: ${source_default.red(`${msg.failures.length} fails`)}, ${msg.passes} passes` + EOL + EOL + msg.failures.map(({ message, prefix }) => {
    return prefix + ":" + EOL + formatErrorSummary(message);
  }).join(EOL + EOL);
  return {
    title: "",
    body: output
  };
}
function reportBadTarballSize(err, _msg) {
  return {
    title: err.message,
    body: `Seems like you have internet connection issues.
Try running the same command again.
If that doesn't help, try one of the following:

- Set a bigger value for the \`fetch-retries\` config.
    To check the current value of \`fetch-retries\`, run \`pnpm get fetch-retries\`.
    To set a new value, run \`pnpm set fetch-retries <number>\`.

- Set \`network-concurrency\` to 1.
    This change will slow down installation times, so it is recommended to
    delete the config once the internet connection is good again: \`pnpm config delete network-concurrency\`

NOTE: You may also override configs via flags.
For instance, \`pnpm install --fetch-retries 5 --network-concurrency 1\``
  };
}
function reportLifecycleError(msg) {
  if (msg.stage === "test") {
    return { title: "Test failed. See above for more details." };
  }
  if (typeof msg.errno === "number") {
    return { title: `Command failed with exit code ${msg.errno}.` };
  }
  return { title: "Command failed." };
}
function reportEngineError(msg) {
  let output = "";
  if (msg.wanted.pnpm) {
    output += `Your pnpm version is incompatible with "${msg.packageId}".

Expected version: ${msg.wanted.pnpm}
Got: ${msg.current.pnpm}

This is happening because the package's manifest has an engines.pnpm field specified.
To fix this issue, install the required pnpm version globally.

To install the latest version of pnpm, run "pnpm i -g pnpm".
To check your pnpm version, run "pnpm -v".`;
  }
  if (msg.wanted.node) {
    if (output)
      output += EOL + EOL;
    output += `Your Node version is incompatible with "${msg.packageId}".

Expected version: ${msg.wanted.node}
Got: ${msg.current.node}

This is happening because the package's manifest has an engines.node field specified.
To fix this issue, install the required Node version.`;
  }
  return {
    title: "Unsupported environment (bad pnpm and/or Node.js version)",
    body: output
  };
}
function reportAuthError(err, msg, config) {
  const foundSettings = [];
  for (const [key, value] of Object.entries(config?.authConfig ?? {})) {
    if (key[0] === "@") {
      foundSettings.push(`${key}=${String(value)}`);
      continue;
    }
    if (key.endsWith("_auth") || key.endsWith("_authToken") || key.endsWith("username") || key.endsWith("_password")) {
      foundSettings.push(`${key}=${hideSecureInfo(key, value)}`);
    }
  }
  let output = msg.hint ? `${msg.hint}${EOL}${EOL}` : "";
  if (foundSettings.length === 0) {
    output += `No authorization settings were found in the configs.
Try to log in to the registry by running "pnpm login"
or add the auth tokens manually to the ~/.npmrc file.`;
  } else {
    output += `These authorization settings were found:
${foundSettings.join("\n")}`;
  }
  return {
    title: err.message,
    body: output
  };
}
function hideSecureInfo(key, value) {
  if (key.endsWith("_password"))
    return "[hidden]";
  if (key.endsWith("_auth") || key.endsWith("_authToken"))
    return `${value.substring(0, 4)}[hidden]`;
  return value;
}
function reportPeerDependencyIssuesError(err, msg) {
  const hasMissingPeers = getHasMissingPeers(msg.issuesByProjects);
  const hints = [];
  if (hasMissingPeers) {
    hints.push(`To auto-install peer dependencies, add the following to "pnpm-workspace.yaml" in your project root:

  autoInstallPeers: true`);
  }
  hints.push(`To disable failing on peer dependency issues, add the following to pnpm-workspace.yaml in your project root:

  strictPeerDependencies: false`);
  const formattedHints = hints.map((hint) => `hint: ${hint}`).join("\n");
  const rendered = renderPeerIssues(msg.issuesByProjects);
  return {
    title: err.message,
    body: rendered ? `${rendered}
${formattedHints}` : formattedHints
  };
}
function getHasMissingPeers(issuesByProjects) {
  return Object.values(issuesByProjects).some((issues) => Object.values(issues.missing).flat().some(({ optional }) => !optional));
}
function reportDedupeCheckIssuesError(err, msg) {
  return {
    title: err.message,
    body: `${renderDedupeCheckIssues(msg.dedupeCheckIssues)}
Run ${source_default.yellow("pnpm dedupe")} to apply the changes above.
`
  };
}
function reportSpecNotSupportedByAnyResolverError(err, logObj) {
  if (logObj.package?.bareSpecifier?.startsWith("catalog:")) {
    return reportExternalCatalogProtocolError(err, logObj);
  }
  return {
    title: err.message ?? "",
    body: logObj.hint
  };
}
function reportExternalCatalogProtocolError(err, logObj) {
  const { pkgsStack } = logObj;
  const problemDep = pkgsStack?.[0];
  let body = `An external package outside of the pnpm workspace declared a dependency using
the catalog protocol. This is likely a bug in that external package. Only
packages within the pnpm workspace may use catalogs. Usages of the catalog
protocol are replaced with real specifiers on 'pnpm publish'.
`;
  if (problemDep != null) {
    body += `
This is likely a bug in the publishing automation of this package. Consider filing
a bug with the authors of:

  ${highlight(formatPkgNameVer(problemDep))}
`;
  }
  return {
    title: err.message,
    body
  };
}
var import_stacktracey, highlight, colorPath;
var init_reportError = __esm({
  "../cli/default-reporter/lib/reportError.js"() {
    "use strict";
    init_lib154();
    init_lib172();
    init_source2();
    init_es();
    import_stacktracey = __toESM(require_stacktracey(), 1);
    init_constants();
    import_stacktracey.default.maxColumnWidths = {
      callee: 25,
      file: 350,
      sourceLine: 25
    };
    highlight = source_default.yellow;
    colorPath = source_default.gray;
  }
});

// ../cli/default-reporter/lib/reporterForClient/reportMisc.js
import os14 from "node:os";
function reportMisc(log$, opts2) {
  const maxLogLevel = LOG_LEVEL_NUMBER[opts2.logLevel ?? "info"] ?? LOG_LEVEL_NUMBER["info"];
  const reportWarning = makeWarningReporter(opts2);
  return Rx11.merge(log$.registry, log$.other).pipe((0, import_operators12.filter)((obj) => LOG_LEVEL_NUMBER[obj.level] <= maxLogLevel && (obj.level !== "info" || !obj["prefix"] || obj["prefix"] === opts2.cwd)), (0, import_operators12.map)((obj) => {
    switch (obj.level) {
      case "warn": {
        return reportWarning(obj);
      }
      case "error": {
        const errorOutput = reportError(obj, opts2.config);
        if (!errorOutput)
          return Rx11.NEVER;
        if (obj["prefix"] && obj["prefix"] !== opts2.cwd) {
          return Rx11.of({
            msg: `${obj["prefix"]}:` + os14.EOL + errorOutput
          });
        }
        return Rx11.of({ msg: errorOutput });
      }
      default:
        return Rx11.of({ msg: obj.message });
    }
  }));
}
function makeWarningReporter(opts2) {
  let warningsCounter = 0;
  let collapsedWarnings;
  return (obj) => {
    warningsCounter++;
    if (opts2.appendOnly || warningsCounter <= MAX_SHOWN_WARNINGS) {
      return Rx11.of({ msg: autozoom(opts2.cwd, obj.prefix, formatWarn(obj.message), opts2) });
    }
    const warningMsg = formatWarn(`${warningsCounter - MAX_SHOWN_WARNINGS} other warnings`);
    if (!collapsedWarnings) {
      collapsedWarnings = new Rx11.Subject();
      setTimeout(() => {
        collapsedWarnings.next({ msg: warningMsg });
      }, 0);
      return Rx11.from(collapsedWarnings);
    }
    setTimeout(() => {
      collapsedWarnings.next({ msg: warningMsg });
    }, 0);
    return Rx11.NEVER;
  };
}
var Rx11, import_operators12, LOG_LEVEL_NUMBER, MAX_SHOWN_WARNINGS;
var init_reportMisc = __esm({
  "../cli/default-reporter/lib/reporterForClient/reportMisc.js"() {
    "use strict";
    Rx11 = __toESM(require_cjs2(), 1);
    import_operators12 = __toESM(require_operators(), 1);
    init_reportError();
    init_formatWarn();
    init_zooming();
    LOG_LEVEL_NUMBER = {
      error: 0,
      warn: 1,
      info: 2,
      debug: 3
    };
    MAX_SHOWN_WARNINGS = 5;
  }
});

// ../cli/default-reporter/lib/reporterForClient/reportPeerDependencyIssues.js
function reportPeerDependencyIssues2(log$) {
  return log$.peerDependencyIssues.pipe((0, import_operators13.take)(1), (0, import_operators13.map)(() => {
    return Rx12.of({
      msg: formatWarn('Issues with peer dependencies found. Run "pnpm peers check" to list them.')
    });
  }));
}
var Rx12, import_operators13;
var init_reportPeerDependencyIssues2 = __esm({
  "../cli/default-reporter/lib/reporterForClient/reportPeerDependencyIssues.js"() {
    "use strict";
    Rx12 = __toESM(require_cjs2(), 1);
    import_operators13 = __toESM(require_operators(), 1);
    init_formatWarn();
  }
});

// ../cli/default-reporter/lib/reporterForClient/reportProgress.js
function reportProgress(log$, opts2) {
  const progressOutput = throttledProgressOutput.bind(null, opts2);
  return getModulesInstallProgress$(log$.stage, log$.progress).pipe((0, import_operators14.map)(opts2.hideProgressPrefix ? ({ importingDone$, progress$ }) => progressOutput(importingDone$, progress$) : ({ importingDone$, progress$, requirer }) => {
    const output$ = progressOutput(importingDone$, progress$);
    if (requirer === opts2.cwd) {
      return output$;
    }
    return output$.pipe((0, import_operators14.map)((msg) => {
      msg["msg"] = zoomOut(opts2.cwd, requirer, msg["msg"]);
      return msg;
    }));
  }));
}
function throttledProgressOutput(opts2, importingDone$, progress$) {
  if (opts2.throttle != null) {
    progress$ = progress$.pipe(opts2.throttle);
  }
  const combinedProgress = Rx13.combineLatest(progress$, importingDone$).pipe((0, import_operators14.takeWhile)(([, importingDone]) => !importingDone, true));
  return combinedProgress.pipe((0, import_operators14.map)(opts2.hideAddedPkgsProgress ? createStatusMessageWithoutAdded : createStatusMessage));
}
function getModulesInstallProgress$(stage$, progress$) {
  const modulesInstallProgressPushStream = new Rx13.Subject();
  const progressStatsPushStreamByRequirer = getProgressStatsPushStreamByRequirer(progress$);
  const stagePushStreamByRequirer = {};
  stage$.forEach((log3) => {
    if (!stagePushStreamByRequirer[log3.prefix]) {
      stagePushStreamByRequirer[log3.prefix] = new Rx13.Subject();
      if (!progressStatsPushStreamByRequirer[log3.prefix]) {
        progressStatsPushStreamByRequirer[log3.prefix] = new Rx13.Subject();
      }
      modulesInstallProgressPushStream.next({
        importingDone$: stage$ToImportingDone$(Rx13.from(stagePushStreamByRequirer[log3.prefix])),
        progress$: Rx13.from(progressStatsPushStreamByRequirer[log3.prefix]),
        requirer: log3.prefix
      });
    }
    stagePushStreamByRequirer[log3.prefix].next(log3);
    if (log3.stage === "importing_done") {
      progressStatsPushStreamByRequirer[log3.prefix].complete();
      stagePushStreamByRequirer[log3.prefix].complete();
    }
  }).catch(() => {
  });
  return Rx13.from(modulesInstallProgressPushStream);
}
function stage$ToImportingDone$(stage$) {
  return stage$.pipe((0, import_operators14.filter)((log3) => log3.stage === "importing_done"), (0, import_operators14.mapTo)(true), (0, import_operators14.take)(1), (0, import_operators14.startWith)(false));
}
function getProgressStatsPushStreamByRequirer(progress$) {
  const progressStatsPushStreamByRequirer = {};
  const previousProgressStatsByRequirer = {};
  progress$.forEach((log3) => {
    if (!previousProgressStatsByRequirer[log3.requester]) {
      previousProgressStatsByRequirer[log3.requester] = {
        fetched: 0,
        imported: 0,
        resolved: 0,
        reused: 0
      };
    }
    switch (log3.status) {
      case "resolved":
        previousProgressStatsByRequirer[log3.requester].resolved++;
        break;
      case "fetched":
        previousProgressStatsByRequirer[log3.requester].fetched++;
        break;
      case "found_in_store":
        previousProgressStatsByRequirer[log3.requester].reused++;
        break;
      case "imported":
        previousProgressStatsByRequirer[log3.requester].imported++;
        break;
    }
    if (!progressStatsPushStreamByRequirer[log3.requester]) {
      progressStatsPushStreamByRequirer[log3.requester] = new Rx13.Subject();
    }
    progressStatsPushStreamByRequirer[log3.requester].next(previousProgressStatsByRequirer[log3.requester]);
  }).catch(() => {
  });
  return progressStatsPushStreamByRequirer;
}
function createStatusMessage([progress, importingDone]) {
  const msg = `Progress: resolved ${hlValue(progress.resolved.toString())}, reused ${hlValue(progress.reused.toString())}, downloaded ${hlValue(progress.fetched.toString())}, added ${hlValue(progress.imported.toString())}`;
  if (importingDone) {
    return {
      done: true,
      fixed: false,
      msg: `${msg}, done`
    };
  }
  return {
    fixed: true,
    msg
  };
}
function createStatusMessageWithoutAdded([progress, importingDone]) {
  const msg = `Progress: resolved ${hlValue(progress.resolved.toString())}, reused ${hlValue(progress.reused.toString())}, downloaded ${hlValue(progress.fetched.toString())}`;
  if (importingDone) {
    return {
      done: true,
      fixed: false,
      msg: `${msg}, done`
    };
  }
  return {
    fixed: true,
    msg
  };
}
var Rx13, import_operators14;
var init_reportProgress = __esm({
  "../cli/default-reporter/lib/reporterForClient/reportProgress.js"() {
    "use strict";
    Rx13 = __toESM(require_cjs2(), 1);
    import_operators14 = __toESM(require_operators(), 1);
    init_outputConstants();
    init_zooming();
  }
});

// ../cli/default-reporter/lib/reporterForClient/reportRequestRetry.js
function reportRequestRetry(requestRetry$) {
  return requestRetry$.pipe((0, import_operators15.map)((log3) => {
    const retriesLeft = log3.maxRetries - log3.attempt + 1;
    const errorCode = log3.error.status ?? log3.error.statusCode ?? log3.error.code ?? log3.error.errno ?? log3.error.cause?.code ?? log3.error.cause?.errno ?? "unknown";
    const msg = `${log3.method} ${log3.url} error (${errorCode}). Will retry in ${prettyMilliseconds(log3.timeout, { verbose: true })}. ${retriesLeft} retries left.`;
    return Rx14.of({ msg: formatWarn(msg) });
  }));
}
var Rx14, import_operators15;
var init_reportRequestRetry = __esm({
  "../cli/default-reporter/lib/reporterForClient/reportRequestRetry.js"() {
    "use strict";
    init_pretty_ms();
    Rx14 = __toESM(require_cjs2(), 1);
    import_operators15 = __toESM(require_operators(), 1);
    init_formatWarn();
  }
});

// ../cli/default-reporter/lib/reporterForClient/reportScope.js
function reportScope(scope$, opts2) {
  if (!COMMANDS_THAT_REPORT_SCOPE.has(opts2.cmd)) {
    return Rx15.NEVER;
  }
  return scope$.pipe((0, import_operators16.take)(1), (0, import_operators16.map)((log3) => {
    if (log3.selected === 1) {
      return Rx15.NEVER;
    }
    let msg = "Scope: ";
    if (log3.selected === log3.total) {
      msg += `all ${log3.total}`;
    } else {
      msg += `${log3.selected}`;
      if (log3.total) {
        msg += ` of ${log3.total}`;
      }
    }
    if (log3.workspacePrefix) {
      msg += " workspace projects";
    } else {
      msg += " projects";
    }
    return Rx15.of({ msg });
  }));
}
var Rx15, import_operators16, COMMANDS_THAT_REPORT_SCOPE;
var init_reportScope = __esm({
  "../cli/default-reporter/lib/reporterForClient/reportScope.js"() {
    "use strict";
    Rx15 = __toESM(require_cjs2(), 1);
    import_operators16 = __toESM(require_operators(), 1);
    COMMANDS_THAT_REPORT_SCOPE = /* @__PURE__ */ new Set([
      "install",
      "link",
      "prune",
      "rebuild",
      "remove",
      "unlink",
      "update",
      "run",
      "test"
    ]);
  }
});

// ../cli/default-reporter/lib/reporterForClient/reportSkippedOptionalDependencies.js
function reportSkippedOptionalDependencies(skippedOptionalDependency$, opts2) {
  return skippedOptionalDependency$.pipe((0, import_operators17.filter)((log3) => Boolean(log3["prefix"] === opts2.cwd && log3.parents && log3.parents.length === 0)), (0, import_operators17.map)((log3) => Rx16.of({
    msg: `info: ${log3.package.id || log3.package.name && `${log3.package.name}@${log3.package.version}` || log3.package.bareSpecifier} is an optional dependency and failed compatibility check. Excluding it from installation.`
  })));
}
var Rx16, import_operators17;
var init_reportSkippedOptionalDependencies = __esm({
  "../cli/default-reporter/lib/reporterForClient/reportSkippedOptionalDependencies.js"() {
    "use strict";
    Rx16 = __toESM(require_cjs2(), 1);
    import_operators17 = __toESM(require_operators(), 1);
  }
});

// ../../../../.local/share/pnpm/store/v11/links/@/string-length/7.0.1/206298d2fce741e36b71416cb396b8fa589a3e75155e69440a7487daffa7154c/node_modules/string-length/index.js
function stringLength(string, { countAnsiEscapeCodes = false } = {}) {
  if (string === "") {
    return 0;
  }
  if (!countAnsiEscapeCodes && stripVTControlCharacters3) {
    string = stripVTControlCharacters3(string);
    if (string === "") {
      return 0;
    }
  }
  let length = 0;
  for (const _ of segmenter2.segment(string)) {
    length++;
  }
  return length;
}
var stripVTControlCharacters3, segmenter2;
var init_string_length = __esm({
  "../../../../.local/share/pnpm/store/v11/links/@/string-length/7.0.1/206298d2fce741e36b71416cb396b8fa589a3e75155e69440a7487daffa7154c/node_modules/string-length/index.js"() {
    ({ stripVTControlCharacters: stripVTControlCharacters3 } = globalThis.process?.getBuiltinModule?.("node:util") ?? {});
    segmenter2 = new Intl.Segmenter();
  }
});

// ../cli/default-reporter/lib/reporterForClient/reportStats.js
function reportStats(log$, opts2) {
  if (opts2.hideProgressPrefix) {
    return [statsForCurrentPackage(log$.stats, {
      cmd: opts2.cmd,
      width: opts2.width
    })];
  }
  const stats$ = opts2.isRecursive ? log$.stats : log$.stats.pipe((0, import_operators18.filter)((log3) => log3.prefix !== opts2.cwd));
  const outputs = [
    statsForNotCurrentPackage(stats$, {
      cmd: opts2.cmd,
      currentPrefix: opts2.cwd,
      width: opts2.width
    })
  ];
  if (!opts2.isRecursive) {
    outputs.push(statsForCurrentPackage(log$.stats.pipe((0, import_operators18.filter)((log3) => log3.prefix === opts2.cwd)), {
      cmd: opts2.cmd,
      width: opts2.width
    }));
  }
  return outputs;
}
function statsForCurrentPackage(stats$, opts2) {
  return stats$.pipe((0, import_operators18.take)(opts2.cmd === "install" || opts2.cmd === "install-test" || opts2.cmd === "add" || opts2.cmd === "update" || opts2.cmd === "dlx" ? 2 : 1), (0, import_operators18.reduce)((acc, log3) => {
    if (typeof log3["added"] === "number") {
      acc["added"] = log3["added"];
    } else if (typeof log3["removed"] === "number") {
      acc["removed"] = log3["removed"];
    }
    return acc;
  }, {}), (0, import_operators18.map)((stats) => {
    if (!stats["removed"] && !stats["added"]) {
      if (opts2.cmd === "link") {
        return Rx17.NEVER;
      }
      return Rx17.of({ msg: "Already up to date" });
    }
    let msg = "Packages:";
    if (stats["added"]) {
      msg += " " + source_default.green(`+${stats["added"].toString()}`);
    }
    if (stats["removed"]) {
      msg += " " + source_default.red(`-${stats["removed"].toString()}`);
    }
    msg += EOL + printPlusesAndMinuses(opts2.width, stats["added"] ?? 0, stats["removed"] ?? 0);
    return Rx17.of({ msg });
  }));
}
function statsForNotCurrentPackage(stats$, opts2) {
  const stats = {};
  const cookedStats$ = opts2.cmd !== "remove" ? stats$.pipe((0, import_operators18.map)((log3) => {
    const { prefix } = log3;
    if (!stats[prefix]) {
      stats[prefix] = log3;
      return { seed: stats, value: null };
    } else if (typeof stats[prefix].added === "number" && typeof log3["added"] === "number") {
      stats[prefix].added += log3["added"];
      return { seed: stats, value: null };
    } else if (typeof stats[prefix].removed === "number" && typeof log3["removed"] === "number") {
      stats[prefix].removed += log3["removed"];
      return { seed: stats, value: null };
    } else {
      const value = { ...stats[prefix], ...log3 };
      delete stats[prefix];
      return value;
    }
  }, {})) : stats$;
  return cookedStats$.pipe((0, import_operators18.filter)((stats2) => stats2 !== null && Boolean(stats2["removed"] || stats2["added"])), (0, import_operators18.map)((stats2) => {
    const parts = [];
    if (stats2["added"]) {
      parts.push(padStep(source_default.green(`+${stats2["added"].toString()}`), 4));
    }
    if (stats2["removed"]) {
      parts.push(padStep(source_default.red(`-${stats2["removed"].toString()}`), 4));
    }
    let msg = zoomOut(opts2.currentPrefix, stats2.prefix, parts.join(" "));
    const rest = Math.max(0, opts2.width - 1 - stringLength(msg));
    msg += " " + printPlusesAndMinuses(rest, roundStats(stats2["added"] || 0), roundStats(stats2["removed"] || 0));
    return Rx17.of({ msg });
  }));
}
function padStep(s, step2) {
  const sLength = stringLength(s);
  const placeholderLength = Math.ceil(sLength / step2) * step2;
  if (sLength < placeholderLength) {
    return repeat_default(" ", placeholderLength - sLength).join("") + s;
  }
  return s;
}
function roundStats(stat2) {
  if (stat2 === 0)
    return 0;
  return Math.max(1, Math.round(stat2 / 10));
}
function printPlusesAndMinuses(maxWidth, added, removed) {
  if (maxWidth === 0)
    return "";
  const changes = added + removed;
  let addedChars;
  let removedChars;
  if (changes > maxWidth) {
    if (!added) {
      addedChars = 0;
      removedChars = maxWidth;
    } else if (!removed) {
      addedChars = maxWidth;
      removedChars = 0;
    } else {
      const p = maxWidth / changes;
      addedChars = Math.min(Math.max(Math.floor(added * p), 1), maxWidth - 1);
      removedChars = maxWidth - addedChars;
    }
  } else {
    addedChars = added;
    removedChars = removed;
  }
  return `${repeat_default(ADDED_CHAR, addedChars).join("")}${repeat_default(REMOVED_CHAR, removedChars).join("")}`;
}
var Rx17, import_operators18;
var init_reportStats = __esm({
  "../cli/default-reporter/lib/reporterForClient/reportStats.js"() {
    "use strict";
    init_source2();
    init_es();
    Rx17 = __toESM(require_cjs2(), 1);
    import_operators18 = __toESM(require_operators(), 1);
    init_string_length();
    init_constants();
    init_outputConstants();
    init_zooming();
  }
});

// ../cli/default-reporter/lib/reporterForClient/pkgsDiff.js
function getPkgsDiff(log$, opts2) {
  const deprecationSet$ = log$.deprecation.pipe((0, import_operators19.filter)((log3) => !opts2.prefix || log3.prefix === opts2.prefix), (0, import_operators19.scan)((acc, log3) => {
    acc.add(log3.pkgId);
    return acc;
  }, /* @__PURE__ */ new Set()), (0, import_operators19.startWith)(/* @__PURE__ */ new Set()));
  const filterPrefix = opts2.prefix ? (0, import_operators19.filter)((log3) => log3.prefix === opts2.prefix) : (x) => x;
  const pkgsDiff$ = Rx18.combineLatest(log$.root.pipe(filterPrefix), deprecationSet$).pipe((0, import_operators19.scan)((pkgsDiff, args) => {
    const rootLog = args[0];
    const deprecationSet = args[1];
    let action;
    let log3;
    if ("added" in rootLog) {
      action = "+";
      log3 = rootLog["added"];
    } else if ("removed" in rootLog) {
      action = "-";
      log3 = rootLog["removed"];
    } else {
      return pkgsDiff;
    }
    const depType = log3.dependencyType || "nodeModulesOnly";
    const oppositeKey = `${action === "-" ? "+" : "-"}${log3.name}`;
    const previous = pkgsDiff[depType][oppositeKey];
    if (previous && previous.version === log3.version) {
      delete pkgsDiff[depType][oppositeKey];
      return pkgsDiff;
    }
    pkgsDiff[depType][`${action}${log3.name}`] = {
      added: action === "+",
      deprecated: deprecationSet.has(log3.id),
      from: log3.linkedFrom,
      latest: log3.latest,
      name: log3.name,
      realName: log3.realName,
      version: log3.version ?? log3.id
    };
    return pkgsDiff;
  }, {
    dev: {},
    nodeModulesOnly: {},
    optional: {},
    peer: {},
    prod: {}
  }), (0, import_operators19.startWith)({
    dev: {},
    nodeModulesOnly: {},
    optional: {},
    peer: {},
    prod: {}
  }));
  const packageManifest$ = Rx18.merge(log$.packageManifest.pipe(filterPrefix), log$.summary.pipe(filterPrefix, (0, import_operators19.mapTo)({}))).pipe(
    (0, import_operators19.take)(2),
    (0, import_operators19.reduce)(mergeRight_default, {})
    // eslint-disable-line @typescript-eslint/no-explicit-any
  );
  return Rx18.combineLatest(pkgsDiff$, packageManifest$).pipe((0, import_operators19.map)(([pkgsDiff, packageManifests]) => {
    if (packageManifests["initial"] == null || packageManifests["updated"] == null)
      return pkgsDiff;
    const initialPackageManifest = removeOptionalFromProdDeps(packageManifests["initial"]);
    const updatedPackageManifest = removeOptionalFromProdDeps(packageManifests["updated"]);
    for (const depType of ["peer", "prod", "optional", "dev"]) {
      const prop3 = propertyByDependencyType[depType];
      const initialDeps = Object.keys(initialPackageManifest[prop3] ?? {});
      const updatedDeps = Object.keys(updatedPackageManifest[prop3] ?? {});
      const removedDeps = difference_default(initialDeps, updatedDeps);
      for (const removedDep of removedDeps) {
        if (!pkgsDiff[depType][`-${removedDep}`]) {
          pkgsDiff[depType][`-${removedDep}`] = {
            added: false,
            name: removedDep,
            version: initialPackageManifest[prop3]?.[removedDep]
          };
        }
      }
      const addedDeps = difference_default(updatedDeps, initialDeps);
      for (const addedDep of addedDeps) {
        if (!pkgsDiff[depType][`+${addedDep}`]) {
          pkgsDiff[depType][`+${addedDep}`] = {
            added: true,
            name: addedDep,
            version: updatedPackageManifest[prop3]?.[addedDep]
          };
        }
      }
    }
    return pkgsDiff;
  }));
}
function removeOptionalFromProdDeps(pkg) {
  if (pkg.dependencies == null || pkg.optionalDependencies == null)
    return pkg;
  for (const depName of Object.keys(pkg.dependencies)) {
    if (pkg.optionalDependencies[depName]) {
      delete pkg.dependencies[depName];
    }
  }
  return pkg;
}
var Rx18, import_operators19, propertyByDependencyType;
var init_pkgsDiff = __esm({
  "../cli/default-reporter/lib/reporterForClient/pkgsDiff.js"() {
    "use strict";
    init_es();
    Rx18 = __toESM(require_cjs2(), 1);
    import_operators19 = __toESM(require_operators(), 1);
    propertyByDependencyType = {
      dev: "devDependencies",
      nodeModulesOnly: "node_modules",
      optional: "optionalDependencies",
      peer: "peerDependencies",
      prod: "dependencies"
    };
  }
});

// ../cli/default-reporter/lib/reporterForClient/reportSummary.js
import path213 from "node:path";
function reportSummary2(log$, opts2) {
  const pkgsDiff$ = getPkgsDiff(log$, { prefix: opts2.pnpmConfig?.global ? void 0 : opts2.cwd });
  const summaryLog$ = log$.summary.pipe((0, import_operators20.take)(1));
  const _printDiffs = printDiffs.bind(null, { cmd: opts2.cmd, prefix: opts2.cwd, pnpmConfig: opts2.pnpmConfig });
  return Rx19.combineLatest(pkgsDiff$, summaryLog$).pipe((0, import_operators20.take)(1), (0, import_operators20.map)(([pkgsDiff]) => {
    let msg = "";
    for (const depType of ["prod", "optional", "peer", "dev", "nodeModulesOnly"]) {
      let diffs = Object.values(pkgsDiff[depType]);
      if (opts2.filterPkgsDiff) {
        diffs = diffs.filter((pkgDiff) => opts2.filterPkgsDiff(pkgDiff));
      }
      if (diffs.length > 0) {
        msg += EOL;
        msg += source_default.cyanBright(opts2.pnpmConfig?.global ? "global:" : `${propertyByDependencyType[depType]}:`);
        msg += EOL;
        msg += _printDiffs(diffs, depType);
        msg += EOL;
      } else if (CONFIG_BY_DEP_TYPE[depType] && opts2.pnpmConfig?.[CONFIG_BY_DEP_TYPE[depType]] === false) {
        msg += EOL;
        msg += `${source_default.cyanBright(`${propertyByDependencyType[depType]}:`)} skipped`;
        msg += EOL;
      }
    }
    return Rx19.of({ msg });
  }));
}
function printDiffs(opts2, pkgsDiff, depType) {
  pkgsDiff.sort((a2, b) => a2.name.localeCompare(b.name) * 10 + (Number(!b.added) - Number(!a2.added)));
  const msg = pkgsDiff.map((pkg) => {
    let result2 = pkg.added ? ADDED_CHAR : REMOVED_CHAR;
    if (!pkg.realName || pkg.name === pkg.realName) {
      result2 += ` ${pkg.name}`;
    } else {
      result2 += ` ${pkg.name} <- ${pkg.realName}`;
    }
    if (pkg.version) {
      result2 += ` ${source_default.grey(pkg.version)}`;
      if (pkg.latest && import_semver54.default.lt(pkg.version, pkg.latest)) {
        result2 += ` ${source_default.grey(`(${pkg.latest} is available)`)}`;
      }
    }
    if (pkg.deprecated) {
      result2 += ` ${source_default.red("deprecated")}`;
    }
    if (pkg.from) {
      result2 += ` ${source_default.grey(`<- ${path213.relative(opts2.prefix, pkg.from) || pkg.from}`)}`;
    }
    if (pkg.added && depType === "dev" && opts2.pnpmConfig?.saveDev === false && opts2.cmd === "add") {
      result2 += `${source_default.yellow(" already in devDependencies, was not moved to dependencies.")}`;
    }
    return result2;
  }).join(EOL);
  return msg;
}
var Rx19, import_operators20, import_semver54, CONFIG_BY_DEP_TYPE;
var init_reportSummary = __esm({
  "../cli/default-reporter/lib/reporterForClient/reportSummary.js"() {
    "use strict";
    init_source2();
    Rx19 = __toESM(require_cjs2(), 1);
    import_operators20 = __toESM(require_operators(), 1);
    import_semver54 = __toESM(require_semver2(), 1);
    init_constants();
    init_outputConstants();
    init_pkgsDiff();
    CONFIG_BY_DEP_TYPE = {
      prod: "production",
      dev: "dev",
      optional: "optional"
    };
  }
});

// ../cli/default-reporter/lib/reporterForClient/reportUpdateCheck.js
function reportUpdateCheck(log$, opts2) {
  return log$.pipe((0, import_operators21.take)(1), (0, import_operators21.filter)((log3) => import_semver55.default.gt(log3.latestVersion, log3.currentVersion)), (0, import_operators21.map)((log3) => {
    const updateMessage = renderUpdateMessage({
      currentPkgIsExecutable: detectIfCurrentPkgIsExecutable(opts2.process),
      latestVersion: log3.latestVersion,
      env: opts2.env
    });
    return Rx20.of({
      msg: (0, import_boxen2.default)(`Update available! ${source_default.red(log3.currentVersion)} \u2192 ${source_default.green(log3.latestVersion)}.
${source_default.magenta("Changelog:")} https://pnpm.io/v/${log3.latestVersion}
${updateMessage}`, {
        padding: 1,
        margin: 1,
        align: "center",
        borderColor: "yellow",
        borderStyle: "round"
      })
    });
  }));
}
function renderUpdateMessage(opts2) {
  const updateCommand = renderUpdateCommand(opts2);
  return `To update, run: ${source_default.magenta(updateCommand)}`;
}
function renderUpdateCommand(opts2) {
  if (isExecutedByCorepack(opts2.env)) {
    return `corepack use pnpm@${opts2.latestVersion}`;
  }
  if (opts2.env.PNPM_HOME) {
    return "pnpm self-update";
  }
  const pkgName = opts2.currentPkgIsExecutable ? "@pnpm/exe" : "pnpm";
  return `pnpm add -g ${pkgName}`;
}
var import_boxen2, Rx20, import_operators21, import_semver55;
var init_reportUpdateCheck = __esm({
  "../cli/default-reporter/lib/reporterForClient/reportUpdateCheck.js"() {
    "use strict";
    init_lib5();
    import_boxen2 = __toESM(require_boxen(), 1);
    init_source2();
    Rx20 = __toESM(require_cjs2(), 1);
    import_operators21 = __toESM(require_operators(), 1);
    import_semver55 = __toESM(require_semver2(), 1);
  }
});

// ../cli/default-reporter/lib/reporterForClient/index.js
function reporterForClient(log$, opts2) {
  const width = opts2.width ?? process.stdout.columns ?? 80;
  const cwd = opts2.pnpmConfig?.dir ?? process.cwd();
  const throttle2 = typeof opts2.throttleProgress === "number" && opts2.throttleProgress > 0 ? (0, import_operators22.throttleTime)(opts2.throttleProgress, void 0, { leading: true, trailing: true }) : void 0;
  const outputs = [
    reportMisc(log$, {
      appendOnly: opts2.appendOnly === true,
      config: opts2.config,
      cwd,
      logLevel: opts2.logLevel,
      zoomOutCurrent: opts2.isRecursive
    })
  ];
  const logLevelNumber = LOG_LEVEL_NUMBER[opts2.logLevel ?? "info"] ?? LOG_LEVEL_NUMBER["info"];
  const showInfo = logLevelNumber >= LOG_LEVEL_NUMBER.info;
  if (logLevelNumber >= LOG_LEVEL_NUMBER.warn) {
    outputs.push(reportPeerDependencyIssues2(log$), reportDeprecations({
      deprecation: log$.deprecation,
      stage: log$.stage
    }, { cwd, isRecursive: opts2.isRecursive }), reportRequestRetry(log$.requestRetry));
  }
  if (showInfo) {
    if (opts2.cmd in PRINT_EXECUTION_TIME_IN_COMMANDS) {
      outputs.push(reportExecutionTime(log$.executionTime));
    }
    if (opts2.cmd !== "dlx") {
      outputs.push(reportContext(log$, { cwd }));
    }
    outputs.push(reportLifecycleScripts(log$, {
      appendOnly: (opts2.appendOnly === true || opts2.streamLifecycleOutput) && !opts2.hideLifecycleOutput,
      aggregateOutput: opts2.aggregateOutput,
      hideLifecyclePrefix: opts2.hideLifecyclePrefix,
      cwd,
      width
    }), reportInstallChecks(log$.installCheck, { cwd }), reportInstallingConfigDeps(log$.installingConfigDeps), reportLockfileVerification(log$.lockfileVerification, {
      cwd,
      workspaceDir: opts2.pnpmConfig?.workspaceDir
    }), reportScope(log$.scope, { isRecursive: opts2.isRecursive, cmd: opts2.cmd }), reportSkippedOptionalDependencies(log$.skippedOptionalDependency, { cwd }), reportHooks(log$.hook, { cwd, isRecursive: opts2.isRecursive }), reportUpdateCheck(log$.updateCheck, opts2), reportProgress(log$, {
      cwd,
      throttle: throttle2,
      hideAddedPkgsProgress: opts2.hideAddedPkgsProgress,
      hideProgressPrefix: opts2.hideProgressPrefix
    }), ...reportStats(log$, {
      cmd: opts2.cmd,
      cwd,
      isRecursive: opts2.isRecursive,
      width,
      hideProgressPrefix: opts2.hideProgressPrefix
    }));
    if (!opts2.appendOnly) {
      outputs.push(reportBigTarballProgress(log$));
    }
    if (!opts2.isRecursive) {
      outputs.push(reportSummary2(log$, {
        cmd: opts2.cmd,
        cwd,
        env: opts2.env,
        filterPkgsDiff: opts2.filterPkgsDiff,
        pnpmConfig: opts2.pnpmConfig
      }));
    }
    outputs.push(reportIgnoredBuilds(log$, {
      pnpmConfig: opts2.pnpmConfig,
      approveBuildsInstructionText: opts2.approveBuildsInstructionText
    }));
  }
  return outputs;
}
var import_operators22, PRINT_EXECUTION_TIME_IN_COMMANDS;
var init_reporterForClient = __esm({
  "../cli/default-reporter/lib/reporterForClient/index.js"() {
    "use strict";
    import_operators22 = __toESM(require_operators(), 1);
    init_reportBigTarballsProgress();
    init_reportContext();
    init_reportDeprecations();
    init_reportExecutionTime();
    init_reportHooks();
    init_reportIgnoredBuilds();
    init_reportInstallChecks();
    init_reportInstallingConfigDeps();
    init_reportLifecycleScripts();
    init_reportLockfileVerification();
    init_reportMisc();
    init_reportPeerDependencyIssues2();
    init_reportProgress();
    init_reportRequestRetry();
    init_reportScope();
    init_reportSkippedOptionalDependencies();
    init_reportStats();
    init_reportSummary();
    init_reportUpdateCheck();
    PRINT_EXECUTION_TIME_IN_COMMANDS = {
      install: true,
      update: true,
      add: true,
      remove: true
    };
  }
});

// ../cli/default-reporter/lib/index.js
function initDefaultReporter(opts2) {
  const proc = opts2.context.process ?? process;
  const outputMaxWidth = opts2.reportingOptions?.outputMaxWidth ?? (proc.stdout.columns && proc.stdout.columns - 2) ?? 80;
  const output$ = toOutput$({
    ...opts2,
    reportingOptions: {
      ...opts2.reportingOptions,
      outputMaxWidth
    }
  });
  if (opts2.reportingOptions?.appendOnly) {
    const writeNext = opts2.useStderr ? console.error.bind(console) : console.log.bind(console);
    const subscription2 = output$.subscribe({
      complete() {
      },
      // eslint-disable-line:no-empty
      error: (err) => {
        console.error(err.message);
      },
      next: writeNext
    });
    return () => {
      subscription2.unsubscribe();
    };
  }
  const diff = (0, import_ansi_diff.default)({
    height: proc.stdout.rows,
    outputMaxWidth
  });
  const subscription = output$.subscribe({
    complete() {
    },
    // eslint-disable-line:no-empty
    error: (err) => {
      logUpdate(err.message);
    },
    next: logUpdate
  });
  const write = opts2.useStderr ? proc.stderr.write.bind(proc.stderr) : proc.stdout.write.bind(proc.stdout);
  function logUpdate(view) {
    if (!view.endsWith(EOL))
      view += EOL;
    write(diff.update(view));
  }
  return () => {
    subscription.unsubscribe();
  };
}
function toOutput$(opts2) {
  opts2 = opts2 || {};
  const contextPushStream = new Rx21.Subject();
  const fetchingProgressPushStream = new Rx21.Subject();
  const executionTimePushStream = new Rx21.Subject();
  const progressPushStream = new Rx21.Subject();
  const stagePushStream = new Rx21.Subject();
  const deprecationPushStream = new Rx21.Subject();
  const summaryPushStream = new Rx21.Subject();
  const lifecyclePushStream = new Rx21.Subject();
  const lockfileVerificationPushStream = new Rx21.Subject();
  const statsPushStream = new Rx21.Subject();
  const packageImportMethodPushStream = new Rx21.Subject();
  const installCheckPushStream = new Rx21.Subject();
  const installingConfigDepsStream = new Rx21.Subject();
  const ignoredScriptsPushStream = new Rx21.Subject();
  const registryPushStream = new Rx21.Subject();
  const rootPushStream = new Rx21.Subject();
  const packageManifestPushStream = new Rx21.Subject();
  const peerDependencyIssuesPushStream = new Rx21.Subject();
  const linkPushStream = new Rx21.Subject();
  const otherPushStream = new Rx21.Subject();
  const hookPushStream = new Rx21.Subject();
  const skippedOptionalDependencyPushStream = new Rx21.Subject();
  const scopePushStream = new Rx21.Subject();
  const requestRetryPushStream = new Rx21.Subject();
  const updateCheckPushStream = new Rx21.Subject();
  setTimeout(() => {
    opts2.streamParser.on("data", (log3) => {
      switch (log3.name) {
        case "pnpm:context":
          contextPushStream.next(log3);
          break;
        case "pnpm:execution-time":
          executionTimePushStream.next(log3);
          break;
        case "pnpm:fetching-progress":
          fetchingProgressPushStream.next(log3);
          break;
        case "pnpm:progress":
          progressPushStream.next(log3);
          break;
        case "pnpm:stage":
          stagePushStream.next(log3);
          break;
        case "pnpm:deprecation":
          deprecationPushStream.next(log3);
          break;
        case "pnpm:summary":
          summaryPushStream.next(log3);
          break;
        case "pnpm:lifecycle":
          lifecyclePushStream.next(log3);
          break;
        case "pnpm:lockfile-verification":
          lockfileVerificationPushStream.next(log3);
          break;
        case "pnpm:stats":
          statsPushStream.next(log3);
          break;
        case "pnpm:package-import-method":
          packageImportMethodPushStream.next(log3);
          break;
        case "pnpm:peer-dependency-issues":
          peerDependencyIssuesPushStream.next(log3);
          break;
        case "pnpm:install-check":
          installCheckPushStream.next(log3);
          break;
        case "pnpm:installing-config-deps":
          installingConfigDepsStream.next(log3);
          break;
        case "pnpm:ignored-scripts":
          ignoredScriptsPushStream.next(log3);
          break;
        case "pnpm:registry":
          registryPushStream.next(log3);
          break;
        case "pnpm:root":
          rootPushStream.next(log3);
          break;
        case "pnpm:package-manifest":
          packageManifestPushStream.next(log3);
          break;
        case "pnpm:link":
          linkPushStream.next(log3);
          break;
        case "pnpm:hook":
          hookPushStream.next(log3);
          break;
        case "pnpm:skipped-optional-dependency":
          skippedOptionalDependencyPushStream.next(log3);
          break;
        case "pnpm:scope":
          scopePushStream.next(log3);
          break;
        case "pnpm:request-retry":
          requestRetryPushStream.next(log3);
          break;
        case "pnpm:update-check":
          updateCheckPushStream.next(log3);
          break;
        case "pnpm":
        // eslint-disable-line
        case "pnpm:global":
        // eslint-disable-line
        case "pnpm:store":
        // eslint-disable-line
        case "pnpm:lockfile":
          otherPushStream.next(log3);
          break;
      }
    });
  }, 0);
  let other = Rx21.from(otherPushStream);
  if (opts2.context.config?.hooks?.filterLog != null) {
    const filterLogs = opts2.context.config.hooks.filterLog;
    const filterFn = filterLogs.length === 1 ? filterLogs[0] : (log3) => filterLogs.every((filterLog) => filterLog(log3));
    other = other.pipe((0, import_operators23.filter)(filterFn));
  }
  const log$ = {
    context: Rx21.from(contextPushStream),
    deprecation: Rx21.from(deprecationPushStream),
    fetchingProgress: Rx21.from(fetchingProgressPushStream),
    executionTime: Rx21.from(executionTimePushStream),
    hook: Rx21.from(hookPushStream),
    installCheck: Rx21.from(installCheckPushStream),
    installingConfigDeps: Rx21.from(installingConfigDepsStream),
    ignoredScripts: Rx21.from(ignoredScriptsPushStream),
    lifecycle: Rx21.from(lifecyclePushStream),
    link: Rx21.from(linkPushStream),
    lockfileVerification: Rx21.from(lockfileVerificationPushStream),
    other,
    packageImportMethod: Rx21.from(packageImportMethodPushStream),
    packageManifest: Rx21.from(packageManifestPushStream),
    peerDependencyIssues: Rx21.from(peerDependencyIssuesPushStream),
    progress: Rx21.from(progressPushStream),
    registry: Rx21.from(registryPushStream),
    requestRetry: Rx21.from(requestRetryPushStream),
    root: Rx21.from(rootPushStream),
    scope: Rx21.from(scopePushStream),
    skippedOptionalDependency: Rx21.from(skippedOptionalDependencyPushStream),
    stage: Rx21.from(stagePushStream),
    stats: Rx21.from(statsPushStream),
    summary: Rx21.from(summaryPushStream),
    updateCheck: Rx21.from(updateCheckPushStream)
  };
  const cmd = opts2.context.argv[0];
  const outputs = reporterForClient(log$, {
    appendOnly: opts2.reportingOptions?.appendOnly,
    cmd,
    config: opts2.context.config,
    env: opts2.context.env ?? process.env,
    filterPkgsDiff: opts2.filterPkgsDiff,
    process: opts2.context.process ?? process,
    isRecursive: opts2.context.config?.["recursive"] === true,
    logLevel: opts2.reportingOptions?.logLevel,
    pnpmConfig: opts2.context.config,
    streamLifecycleOutput: opts2.reportingOptions?.streamLifecycleOutput,
    aggregateOutput: opts2.reportingOptions?.aggregateOutput,
    throttleProgress: opts2.reportingOptions?.throttleProgress,
    width: opts2.reportingOptions?.outputMaxWidth,
    hideAddedPkgsProgress: opts2.reportingOptions?.hideAddedPkgsProgress,
    hideProgressPrefix: opts2.reportingOptions?.hideProgressPrefix ?? (cmd === "dlx" || opts2.context.config?.global === true),
    hideLifecycleOutput: opts2.reportingOptions?.hideLifecycleOutput,
    hideLifecyclePrefix: opts2.reportingOptions?.hideLifecyclePrefix,
    approveBuildsInstructionText: opts2.reportingOptions?.approveBuildsInstructionText
  });
  if (opts2.reportingOptions?.appendOnly) {
    return Rx21.merge(...outputs).pipe((0, import_operators23.map)((log3) => log3.pipe((0, import_operators23.map)((msg) => msg.msg))), (0, import_operators23.mergeAll)());
  }
  return mergeOutputs(outputs);
}
var import_ansi_diff, Rx21, import_operators23;
var init_lib173 = __esm({
  "../cli/default-reporter/lib/index.js"() {
    "use strict";
    import_ansi_diff = __toESM(require_ansi_diff(), 1);
    Rx21 = __toESM(require_cjs2(), 1);
    import_operators23 = __toESM(require_operators(), 1);
    init_constants();
    init_mergeOutputs();
    init_reporterForClient();
    init_formatWarn();
  }
});

// lib/getConfig.js
import fs110 from "node:fs";
import path214 from "node:path";
import util55 from "node:util";
async function getConfig2(cliOptions, opts2) {
  const { config, context, warnings } = await getConfig({
    cliOptions,
    globalDirShouldAllowWrite: opts2.globalDirShouldAllowWrite,
    packageManager,
    workspaceDir: opts2.workspaceDir,
    onlyInheritDlxSettingsFromLocal: opts2.onlyInheritDlxSettingsFromLocal
  });
  context.cliOptions = cliOptions;
  applyDerivedConfig(config);
  if (opts2.excludeReporter) {
    delete config.reporter;
  }
  if (warnings.length > 0) {
    console.warn(warnings.map((warning) => formatWarn(warning)).join("\n"));
  }
  return { config, context };
}
async function installConfigDepsAndLoadHooks(config, context, opts2) {
  if (config.configDependencies) {
    const store = await createStoreController({ ...config, ...context });
    try {
      await resolveAndInstallConfigDeps(config.configDependencies, {
        ...config,
        ...context,
        store: store.ctrl,
        storeDir: store.dir,
        rootDir: config.lockfileDir ?? context.rootProjectManifestDir,
        frozenLockfile: config.frozenLockfile
      });
    } catch (err) {
      if (!opts2?.tolerateConfigDependenciesErrors) {
        throw err;
      }
      const errorMessage = util55.types.isNativeError(err) ? err.message : String(err);
      logger.debug({
        message: `Failed to install configDependencies. This is expected if authentication is not yet configured. Proceeding. Error: ${errorMessage}`,
        err
      });
    } finally {
      await store.ctrl.close();
    }
  }
  if (!config.ignorePnpmfile) {
    config.tryLoadDefaultPnpmfile = config.pnpmfile == null;
    const pnpmfiles = config.pnpmfile == null ? [] : Array.isArray(config.pnpmfile) ? config.pnpmfile : [config.pnpmfile];
    if (config.configDependencies) {
      const configModulesDir = path214.join(config.lockfileDir ?? context.rootProjectManifestDir, "node_modules/.pnpm-config");
      pnpmfiles.unshift(...calcPnpmfilePathsOfPluginDeps(configModulesDir, config.configDependencies));
    }
    const { hooks, finders, resolvedPnpmfilePaths } = await requireHooks(config.lockfileDir ?? config.dir, {
      globalPnpmfile: config.globalPnpmfile,
      pnpmfiles,
      tryLoadDefaultPnpmfile: config.tryLoadDefaultPnpmfile
    });
    context.hooks = hooks;
    context.finders = finders;
    config.pnpmfile = resolvedPnpmfilePaths;
    if (context.hooks?.updateConfig) {
      for (const updateConfig of context.hooks.updateConfig) {
        const updateConfigResult = updateConfig(config);
        config = updateConfigResult instanceof Promise ? await updateConfigResult : updateConfigResult;
      }
    }
  }
  return { config, context };
}
function* calcPnpmfilePathsOfPluginDeps(configModulesDir, configDependencies) {
  for (const configDepName of Object.keys(configDependencies).sort(import_util23.lexCompare)) {
    if (isPluginName(configDepName)) {
      const pluginDir = path214.join(configModulesDir, configDepName);
      if (!fs110.existsSync(pluginDir))
        continue;
      const mjsPath = path214.join(pluginDir, "pnpmfile.mjs");
      if (fs110.existsSync(mjsPath)) {
        yield mjsPath;
        continue;
      }
      yield path214.join(pluginDir, "pnpmfile.cjs");
    }
  }
}
function isPluginName(configDepName) {
  if (configDepName.startsWith("pnpm-plugin-"))
    return true;
  if (configDepName[0] !== "@")
    return false;
  return configDepName.startsWith("@pnpm/plugin-") || configDepName.includes("/pnpm-plugin-");
}
function applyDerivedConfig(config) {
  if (config.hoist === false) {
    delete config.hoistPattern;
  }
  switch (config.shamefullyHoist) {
    case false:
      delete config.publicHoistPattern;
      break;
    case true:
      config.publicHoistPattern = ["*"];
      break;
    default:
      if (config.publicHoistPattern == null || config.publicHoistPattern === "" || Array.isArray(config.publicHoistPattern) && config.publicHoistPattern.length === 1 && config.publicHoistPattern[0] === "") {
        delete config.publicHoistPattern;
      }
      break;
  }
  if (!config.symlink) {
    delete config.hoistPattern;
    delete config.publicHoistPattern;
  }
}
var import_util23;
var init_getConfig = __esm({
  "lib/getConfig.js"() {
    "use strict";
    init_lib173();
    init_lib5();
    init_lib61();
    init_lib133();
    init_lib130();
    init_lib3();
    init_lib90();
    import_util23 = __toESM(require_dist3(), 1);
  }
});

// lib/reporter/silentReporter.js
function silentReporter(streamParser3) {
  streamParser3.on("data", (obj) => {
    if (obj.level !== "error")
      return;
    if (obj.err?.code?.startsWith("ERR_PNPM_"))
      return;
    console.log(obj["err"]?.message ?? obj["message"]);
    if (obj["err"]?.stack) {
      console.log(`
${obj["err"].stack}`);
    }
  });
}
var init_silentReporter = __esm({
  "lib/reporter/silentReporter.js"() {
    "use strict";
  }
});

// lib/reporter/index.js
function initReporter(reporterType, opts2) {
  switch (reporterType) {
    case "default":
      initDefaultReporter({
        useStderr: opts2.config.useStderr,
        context: {
          argv: opts2.cmd ? [opts2.cmd] : [],
          config: opts2.config
        },
        reportingOptions: {
          appendOnly: false,
          logLevel: opts2.config.loglevel,
          streamLifecycleOutput: opts2.config.stream,
          throttleProgress: 200,
          hideAddedPkgsProgress: opts2.config.lockfileOnly,
          hideLifecyclePrefix: opts2.config.reporterHidePrefix,
          hideProgressPrefix: opts2.hideProgressPrefix
        },
        streamParser
      });
      return;
    case "append-only":
      initDefaultReporter({
        useStderr: opts2.config.useStderr,
        context: {
          argv: opts2.cmd ? [opts2.cmd] : [],
          config: opts2.config
        },
        reportingOptions: {
          appendOnly: true,
          aggregateOutput: opts2.config.aggregateOutput,
          logLevel: opts2.config.loglevel,
          throttleProgress: 1e3,
          hideLifecyclePrefix: opts2.config.reporterHidePrefix,
          hideProgressPrefix: opts2.hideProgressPrefix
        },
        streamParser
      });
      return;
    case "ndjson":
      writeToConsole();
      return;
    case "silent":
      silentReporter(streamParser);
  }
}
var init_reporter = __esm({
  "lib/reporter/index.js"() {
    "use strict";
    init_lib173();
    init_lib3();
    init_silentReporter();
  }
});

// lib/shouldPersistLockfile.js
function shouldPersistLockfile(pm2) {
  if (pm2.fromDevEngines === true)
    return true;
  if (pm2.version == null || import_semver56.default.valid(pm2.version) == null)
    return false;
  return import_semver56.default.major(pm2.version) >= 12;
}
var import_semver56;
var init_shouldPersistLockfile = __esm({
  "lib/shouldPersistLockfile.js"() {
    "use strict";
    import_semver56 = __toESM(require_semver2(), 1);
  }
});

// lib/switchCliVersion.js
import path215 from "node:path";
async function switchCliVersion(config, context) {
  const pm2 = context.wantedPackageManager;
  if (pm2 == null || pm2.name !== "pnpm" || pm2.version == null)
    return;
  const persistLockfile = shouldPersistLockfile(pm2);
  if (!persistLockfile && pm2.version === packageManager.version)
    return;
  let envLockfile = persistLockfile ? await readEnvLockfile(context.rootProjectManifestDir) ?? void 0 : void 0;
  let storeToUse;
  let pmVersion = envLockfile?.importers["."].packageManagerDependencies?.["pnpm"]?.version;
  if (!pmVersion || !import_semver57.default.satisfies(pmVersion, pm2.version, { includePrerelease: true })) {
    storeToUse = await createStoreController({ ...config, ...context });
    envLockfile = await resolvePackageManagerIntegrities(pm2.version, {
      envLockfile,
      registries: config.registries,
      rootDir: context.rootProjectManifestDir,
      storeController: storeToUse.ctrl,
      storeDir: storeToUse.dir,
      save: persistLockfile
    });
    pmVersion = envLockfile.importers["."].packageManagerDependencies?.["pnpm"]?.version;
    if (!pmVersion) {
      globalWarn(`Cannot resolve pnpm version for "${pm2.version}"`);
      await storeToUse.ctrl.close();
      return;
    }
  } else if (!isPackageManagerResolved(envLockfile, pmVersion)) {
    storeToUse = await createStoreController({ ...config, ...context });
    envLockfile = await resolvePackageManagerIntegrities(pmVersion, {
      envLockfile,
      registries: config.registries,
      rootDir: context.rootProjectManifestDir,
      storeController: storeToUse.ctrl,
      storeDir: storeToUse.dir,
      save: persistLockfile
    });
  }
  if (pmVersion === packageManager.version) {
    await storeToUse?.ctrl.close();
    return;
  }
  if (!storeToUse) {
    storeToUse = await createStoreController({ ...config, ...context });
  }
  if (!envLockfile) {
    await storeToUse.ctrl.close();
    throw new PnpmError("NO_PKG_MANAGER_INTEGRITY", `The packageManager dependency ${pmVersion} was not found in pnpm-lock.yaml`);
  }
  let wantedPnpmBinDir;
  try {
    ;
    ({ binDir: wantedPnpmBinDir } = await installPnpmToStore(pmVersion, {
      envLockfile,
      storeController: storeToUse.ctrl,
      storeDir: storeToUse.dir,
      registries: config.registries,
      virtualStoreDirMaxLength: config.virtualStoreDirMaxLength,
      packageManager: { name: packageManager.name, version: packageManager.version }
    }));
  } finally {
    await storeToUse.ctrl.close();
  }
  const pnpmEnv = prependDirsToPath([wantedPnpmBinDir]);
  if (!pnpmEnv.updated) {
    throw new VersionSwitchFail(pmVersion, wantedPnpmBinDir);
  }
  const pnpmBinPath = path215.join(wantedPnpmBinDir, "pnpm");
  const { status, signal, error } = import_cross_spawn3.default.sync(pnpmBinPath, process.argv.slice(2), {
    stdio: "inherit",
    env: {
      ...process.env,
      [pnpmEnv.name]: pnpmEnv.value,
      npm_config_manage_package_manager_versions: "false"
    }
  });
  if (error) {
    throw new VersionSwitchFail(pmVersion, wantedPnpmBinDir, error);
  }
  if (signal) {
    process.kill(process.pid, signal);
    return;
  }
  process.exit(status ?? 0);
}
var import_cross_spawn3, import_semver57, VersionSwitchFail;
var init_switchCliVersion = __esm({
  "lib/switchCliVersion.js"() {
    "use strict";
    init_lib5();
    init_lib157();
    init_lib2();
    init_lib130();
    init_lib78();
    init_lib3();
    init_lib156();
    init_lib90();
    import_cross_spawn3 = __toESM(require_cross_spawn(), 1);
    import_semver57 = __toESM(require_semver2(), 1);
    init_shouldPersistLockfile();
    VersionSwitchFail = class extends PnpmError {
      constructor(version2, wantedPnpmBinDir, cause) {
        super("VERSION_SWITCH_FAIL", `Failed to switch pnpm to v${version2}. Looks like pnpm CLI is missing at "${wantedPnpmBinDir}" or is incorrect`, { hint: cause instanceof Error ? cause?.message : void 0 });
        if (cause != null) {
          this.cause = cause;
        }
      }
    };
  }
});

// lib/syncEnvLockfile.js
async function syncEnvLockfile(config, context) {
  const pm2 = context.wantedPackageManager;
  if (pm2 == null || pm2.name !== "pnpm" || pm2.version == null)
    return;
  if (!shouldPersistLockfile(pm2))
    return;
  if (!import_semver58.default.satisfies(packageManager.version, pm2.version, { includePrerelease: true }))
    return;
  const envLockfile = await readEnvLockfile(context.rootProjectManifestDir);
  const lockedVersion = envLockfile?.importers["."].packageManagerDependencies?.["pnpm"]?.version;
  if (lockedVersion != null && import_semver58.default.satisfies(lockedVersion, pm2.version, { includePrerelease: true }))
    return;
  const store = await createStoreController({ ...config, ...context });
  try {
    await resolvePackageManagerIntegrities(packageManager.version, {
      envLockfile: envLockfile ?? void 0,
      registries: config.registries,
      rootDir: context.rootProjectManifestDir,
      storeController: store.ctrl,
      storeDir: store.dir,
      save: true
    });
  } finally {
    await store.ctrl.close();
  }
}
var import_semver58;
var init_syncEnvLockfile = __esm({
  "lib/syncEnvLockfile.js"() {
    "use strict";
    init_lib5();
    init_lib130();
    init_lib78();
    init_lib90();
    import_semver58 = __toESM(require_semver2(), 1);
    init_shouldPersistLockfile();
  }
});

// lib/main.js
var main_exports = {};
__export(main_exports, {
  REPORTER_INITIALIZED: () => REPORTER_INITIALIZED,
  main: () => main4
});
import path216 from "node:path";
import { stripVTControlCharacters as stripAnsi3 } from "node:util";
function isRootOnlyPatterns(patterns) {
  return patterns.length === 1 && patterns[0] === ".";
}
async function main4(inputArgv) {
  let parsedCliArgs;
  try {
    parsedCliArgs = await parseCliArgs2(inputArgv);
  } catch (err) {
    printError(err.message, err["hint"]);
    process.exitCode = 1;
    return;
  }
  let { argv: argv2, params: cliParams, options: cliOptions, cmd, fallbackCommandUsed, builtInCommandForced, unknownOptions, workspaceDir } = parsedCliArgs;
  if (cmd !== null && !pnpmCmds[cmd]) {
    printError(`Unknown command '${cmd}'`, "For help, run: pnpm help");
    process.exitCode = 1;
    return;
  }
  if (unknownOptions.size > 0 && !(cmd && NOT_IMPLEMENTED_COMMAND_SET.has(cmd))) {
    printError(formatUnknownOptionsError(unknownOptions), `For help, run: pnpm help${cmd ? ` ${cmd}` : ""}`);
    process.exitCode = 1;
    return;
  }
  let config;
  let context;
  try {
    const globalDirShouldAllowWrite = cmd !== "root";
    const isDlxOrCreateCommand = cmd === "dlx" || cmd === "create";
    if (cmd === "link" && cliParams.length === 0) {
      cliOptions.global = true;
    }
    ;
    ({ config, context } = await getConfig2(cliOptions, {
      excludeReporter: false,
      globalDirShouldAllowWrite,
      workspaceDir,
      onlyInheritDlxSettingsFromLocal: isDlxOrCreateCommand
    }));
    if (cmd !== "setup" && context.wantedPackageManager != null && !shouldSkipPmHandling(cmd, cliParams)) {
      const pm2 = context.wantedPackageManager;
      if (pm2.onFail !== "ignore") {
        if (pm2.name === "pnpm" && pm2.onFail === "download" && !isExecutedByCorepack()) {
          await switchCliVersion(config, context);
        } else if (cliOptions.global) {
          globalWarn("Using --global skips the package manager check for this project");
        } else {
          checkPackageManager(pm2, { underCorepack: isExecutedByCorepack() });
          await syncEnvLockfile(config, context);
        }
      }
    }
    ;
    ({ config, context } = await installConfigDepsAndLoadHooks(config, context, {
      tolerateConfigDependenciesErrors: cmd === "config" || cmd === "set" || cmd === "get"
    }));
    if (isDlxOrCreateCommand || cmd === "sbom" || cmd === "with") {
      config.useStderr = true;
    }
    config.argv = argv2;
    config.fallbackCommandUsed = fallbackCommandUsed;
    if (cmd) {
      config.extraEnv = {
        ...config.extraEnv,
        // Follow the behavior of npm by setting it to 'run-script' when running scripts (e.g. pnpm run dev)
        // and to the command name otherwise (e.g. pnpm test)
        npm_command: cmd === "run" ? "run-script" : cmd
      };
    }
  } catch (err) {
    const hint = err["hint"] ? err["hint"] : `For help, run: pnpm help${cmd ? ` ${cmd}` : ""}`;
    printError(err.message, hint);
    process.exitCode = 1;
    await finishWorkers();
    return;
  }
  if (cmd == null && cliOptions.version) {
    console.log(packageManager.version);
    return;
  }
  let write = process.stdout.write.bind(process.stdout);
  if (config.color === "always") {
    process.env["FORCE_COLOR"] = "1";
  } else if (config.color === "never") {
    process.env["FORCE_COLOR"] = "0";
    write = (text) => process.stdout.write(stripAnsi3(text));
  }
  const reporterType = (() => {
    if (config.loglevel === "silent")
      return "silent";
    if (config.reporter)
      return config.reporter;
    if (config.ci || !process.stdout.isTTY)
      return "append-only";
    return "default";
  })();
  const printLogs = !config["parseable"] && !config["json"];
  if (printLogs) {
    const multiGroupGlobalAdd = cmd === "add" && cliOptions.global === true && cliParams.length > 1;
    initReporter(reporterType, {
      cmd,
      config: { ...config, ...context },
      hideProgressPrefix: multiGroupGlobalAdd ? false : void 0
    });
    global[REPORTER_INITIALIZED] = reporterType;
  }
  const typedCommandName = argv2.remain[0];
  if (cmd != null && !builtInCommandForced && overridableByScriptCommands.has(typedCommandName) && !cliOptions.global) {
    const currentDirManifest = config.dir === context.rootProjectManifestDir ? context.rootProjectManifest : await safeReadProjectManifestOnly(config.dir);
    if (currentDirManifest?.scripts?.[typedCommandName]) {
      cmd = "run";
      cliParams.unshift(typedCommandName);
      fallbackCommandUsed = true;
      config.fallbackCommandUsed = true;
      config.extraEnv = {
        ...config.extraEnv,
        npm_command: "run-script"
      };
    } else if (workspaceDir && config.dir !== context.rootProjectManifestDir && context.rootProjectManifest?.scripts?.[typedCommandName]) {
      throw new PnpmError("SCRIPT_OVERRIDE_IN_WORKSPACE_ROOT", `The workspace root has a "${typedCommandName}" script, so the built-in "pnpm ${typedCommandName}" command cannot run from a subdirectory`, {
        hint: `Run "pnpm run ${typedCommandName}" from the workspace root to execute the script`
      });
    }
  }
  if (cmd != null && recursiveByDefaultCommands.has(cmd) && typeof workspaceDir === "string") {
    cliOptions["recursive"] = true;
    config.recursive = true;
    if (!config.recursiveInstall && !config.filter && !config.filterProd) {
      config.filter = ["{.}..."];
    }
  }
  if (cliOptions["recursive"]) {
    const wsDir = workspaceDir ?? process.cwd();
    config.filter = config.filter ?? [];
    config.filterProd = config.filterProd ?? [];
    const filters = [
      ...config.filter.map((filter14) => ({ filter: filter14, followProdDepsOnly: false })),
      ...config.filterProd.map((filter14) => ({ filter: filter14, followProdDepsOnly: true }))
    ];
    const relativeWSDirPath = () => path216.relative(process.cwd(), wsDir) || ".";
    if (config.workspaceRoot) {
      filters.push({ filter: `{${relativeWSDirPath()}}`, followProdDepsOnly: Boolean(config.filterProd.length) });
    } else if (!filters.some(({ filter: filter14 }) => !filter14.startsWith("!")) && workspaceDir && config.workspacePackagePatterns && !isRootOnlyPatterns(config.workspacePackagePatterns) && !config.includeWorkspaceRoot && (cmd === "run" || cmd === "exec" || cmd === "add" || cmd === "test")) {
      filters.push({ filter: `!{${relativeWSDirPath()}}`, followProdDepsOnly: Boolean(config.filterProd.length) });
    }
    const filterResults = await filterProjectsFromDir(wsDir, filters, {
      engineStrict: config.engineStrict,
      nodeVersion: config.nodeVersion,
      patterns: config.workspacePackagePatterns,
      linkWorkspacePackages: !!config.linkWorkspacePackages,
      prefix: process.cwd(),
      workspaceDir: wsDir,
      testPattern: config.testPattern,
      changedFilesIgnorePattern: config.changedFilesIgnorePattern,
      useGlobDirFiltering: !config.legacyDirFiltering,
      sharedWorkspaceLockfile: config.sharedWorkspaceLockfile
    });
    if (filterResults.allProjects.length === 0) {
      if (printLogs) {
        console.log(`No projects found in "${wsDir}"`);
      }
      process.exitCode = config.failIfNoMatch ? 1 : 0;
      return;
    }
    context.allProjectsGraph = filterResults.allProjectsGraph;
    context.selectedProjectsGraph = filterResults.selectedProjectsGraph;
    if (isEmpty_default(context.selectedProjectsGraph)) {
      if (printLogs) {
        console.log(`No projects matched the filters in "${wsDir}"`);
      }
      if (config.failIfNoMatch) {
        process.exitCode = 1;
        return;
      }
      if (cmd !== "list") {
        process.exitCode = 0;
        return;
      }
    }
    if (filterResults.unmatchedFilters.length !== 0 && printLogs) {
      console.log(`No projects matched the filters "${filterResults.unmatchedFilters.join(", ")}" in "${wsDir}"`);
    }
    context.allProjects = filterResults.allProjects;
    config.workspaceDir = wsDir;
  }
  let { output, exitCode } = await (async () => {
    await new Promise((resolve3) => setTimeout(() => {
      resolve3();
    }, 0));
    if (config.updateNotifier !== false && !config.ci && cmd !== "self-update" && !config.offline && !config.preferOffline && !config.fallbackCommandUsed && (cmd === "install" || cmd === "add")) {
      checkForUpdates(config).catch(() => {
      });
    }
    if (config.force === true && !config.fallbackCommandUsed) {
      logger.warn({
        message: "using --force I sure hope you know what you are doing",
        prefix: config.dir
      });
    }
    scopeLogger.debug({
      ...!cliOptions["recursive"] ? { selected: 1 } : {
        selected: Object.keys(context.selectedProjectsGraph).length,
        total: context.allProjects.length
      },
      ...workspaceDir ? { workspacePrefix: workspaceDir } : {}
    });
    let result2 = pnpmCmds[cmd ?? "help"](
      // Spread config (settings) and context (runtime state) into a single
      // options object for command handlers. The original split objects are
      // also passed for handlers that need them separated (e.g. config commands).
      // Named "_config"/"_context" to avoid clashing with the "--config" CLI option.
      { ...config, ...context, _config: config, _context: context },
      cliParams,
      pnpmCmds
    );
    try {
      if (result2 instanceof Promise) {
        result2 = await result2;
      }
    } finally {
      await finishWorkers();
    }
    executionTimeLogger.debug({
      startedAt: global["pnpm__startedAt"],
      endedAt: Date.now()
    });
    if (!result2) {
      return { output: null, exitCode: 0 };
    }
    if (typeof result2 === "string") {
      return { output: result2, exitCode: 0 };
    }
    return result2;
  })();
  if (output) {
    if (!output.endsWith("\n")) {
      output = `${output}
`;
    }
    write(output);
  }
  if (!cmd) {
    exitCode = 1;
  }
  if (exitCode) {
    process.exitCode = exitCode;
  }
}
function printError(message, hint) {
  const ERROR = source_default.bgRed.red("[") + source_default.bgRed.black("ERROR") + source_default.bgRed.red("]");
  console.error(`${message.startsWith(ERROR) ? "" : ERROR + " "}${source_default.red(message)}`);
  if (hint) {
    console.error(hint);
  }
}
function shouldSkipPmHandling(cmd, cliParams) {
  if (cmd == null)
    return false;
  if (skipPackageManagerCheckForCommand.has(cmd))
    return true;
  if (cmd === "help" && cliParams[0] != null && skipPackageManagerCheckForCommand.has(cliParams[0]))
    return true;
  return false;
}
function checkPackageManager(pm2, opts2) {
  if (!pm2.name)
    return;
  const shouldError = pm2.onFail === "error" || pm2.onFail === "download";
  if (pm2.name !== "pnpm") {
    const msg = `This project is configured to use ${pm2.name}`;
    if (shouldError) {
      throw new PnpmError("OTHER_PM_EXPECTED", msg);
    }
    globalWarn(msg);
  } else if (pm2.version) {
    const currentPnpmVersion = packageManager.name === "pnpm" ? packageManager.version : void 0;
    if (currentPnpmVersion && !import_semver59.default.satisfies(currentPnpmVersion, pm2.version, { includePrerelease: true })) {
      let msg = `This project is configured to use ${pm2.version} of pnpm. Your current pnpm is v${currentPnpmVersion}`;
      if (opts2.underCorepack) {
        msg += "\nCorepack invoked pnpm with this version, and pnpm does not switch versions when running under corepack.";
      }
      if (shouldError) {
        const baseHint = 'If you want to bypass this version check, you can set the "pmOnFail" configuration to "warn" or "ignore" (e.g. via --pm-on-fail=ignore). If using "devEngines.packageManager", you can set its "onFail" to "warn" or "ignore"';
        const hint = opts2.underCorepack ? `Align the "packageManager" field in package.json with "devEngines.packageManager", or invoke pnpm directly (without corepack) so it can switch versions automatically.
${baseHint}` : baseHint;
        throw new PnpmError("BAD_PM_VERSION", msg, { hint });
      } else {
        globalWarn(msg);
      }
    }
  }
}
var import_loud_rejection, import_semver59, REPORTER_INITIALIZED;
var init_main2 = __esm({
  "lib/main.js"() {
    "use strict";
    init_lib5();
    init_lib6();
    init_lib2();
    init_lib3();
    init_lib4();
    init_lib13();
    init_lib32();
    init_source2();
    import_loud_rejection = __toESM(require_loud_rejection(), 1);
    init_es();
    import_semver59 = __toESM(require_semver2(), 1);
    init_checkForUpdates();
    init_cmd();
    init_formatError();
    init_getConfig();
    init_parseCliArgs();
    init_reporter();
    init_switchCliVersion();
    init_syncEnvLockfile();
    if (!global["pnpm__startedAt"]) {
      global["pnpm__startedAt"] = Date.now();
    }
    REPORTER_INITIALIZED = /* @__PURE__ */ Symbol("reporterInitialized");
    (0, import_loud_rejection.default)();
    process.stdout.on("error", (err) => {
      if (err.code === "EPIPE") {
        process.exit(0);
      }
      throw err;
    });
  }
});

// lib/errorHandler.js
var errorHandler_exports = {};
__export(errorHandler_exports, {
  errorHandler: () => errorHandler
});
import { promisify as promisify7 } from "node:util";
async function errorHandler(error) {
  if (error.name != null && error.name !== "pnpm" && !error.name.startsWith("pnpm:")) {
    try {
      error.name = "pnpm";
    } catch {
    }
  }
  if (!global[REPORTER_INITIALIZED]) {
    console.log(JSON.stringify({
      error: {
        code: error.code ?? error.name,
        message: error.message
      }
    }, null, 2));
  } else if (global[REPORTER_INITIALIZED] !== "silent") {
    logger.error(error, error);
    await new Promise((resolve3) => setTimeout(() => {
      resolve3();
    }, 0));
  }
  await killProcesses(error && typeof error === "object" && "errno" in error && typeof error.errno === "number" ? error.errno : 1);
}
async function killProcesses(status) {
  try {
    const descendentProcesses = await getDescendentProcesses(process.pid);
    for (const pid of descendentProcesses) {
      try {
        process.kill(pid);
      } catch {
      }
    }
  } catch {
  }
  process.exit(status);
}
var import_pidtree, getDescendentProcesses;
var init_errorHandler = __esm({
  "lib/errorHandler.js"() {
    "use strict";
    init_lib3();
    import_pidtree = __toESM(require_pidtree2(), 1);
    init_main2();
    getDescendentProcesses = promisify7((pid, callback2) => {
      (0, import_pidtree.default)(pid, { root: false }, callback2);
    });
  }
});

// lib/pnpm.js
import path217 from "node:path";
process.setMaxListeners(0);
var argv = buildArgv();
(async () => {
  await runPnpm();
})();
async function runPnpm() {
  const { finishWorkers: finishWorkers2 } = await Promise.resolve().then(() => (init_lib4(), lib_exports));
  const { errorHandler: errorHandler2 } = await Promise.resolve().then(() => (init_errorHandler(), errorHandler_exports));
  try {
    const { main: main5 } = await Promise.resolve().then(() => (init_main2(), main_exports));
    await main5(argv);
  } catch (err) {
    await errorHandler2(err);
  } finally {
    try {
      await finishWorkers2();
    } catch {
    }
  }
}
function buildArgv() {
  const userArgv = process.argv.slice(2);
  const execName = path217.basename(process.execPath, path217.extname(process.execPath)).toLowerCase();
  if (execName === "pnpx" || execName === "pnx") {
    return ["dlx", ...userArgv];
  }
  return userArgv;
}
/*! Bundled license information:

is-windows/index.js:
  (*!
   * is-windows <https://github.com/jonschlinkert/is-windows>
   *
   * Copyright © 2015-2018, Jon Schlinkert.
   * Released under the MIT License.
   *)

@zkochan/js-yaml/dist/js-yaml.mjs:
  (*! @zkochan/js-yaml 0.0.11 https://github.com/nodeca/js-yaml @license MIT *)

normalize-path/index.js:
  (*!
   * normalize-path <https://github.com/jonschlinkert/normalize-path>
   *
   * Copyright (c) 2014-2018, Jon Schlinkert.
   * Released under the MIT License.
   *)

is-number/index.js:
  (*!
   * is-number <https://github.com/jonschlinkert/is-number>
   *
   * Copyright (c) 2014-present, Jon Schlinkert.
   * Released under the MIT License.
   *)

to-regex-range/index.js:
  (*!
   * to-regex-range <https://github.com/micromatch/to-regex-range>
   *
   * Copyright (c) 2015-present, Jon Schlinkert.
   * Released under the MIT License.
   *)

fill-range/index.js:
  (*!
   * fill-range <https://github.com/jonschlinkert/fill-range>
   *
   * Copyright (c) 2014-present, Jon Schlinkert.
   * Licensed under the MIT License.
   *)

is-extglob/index.js:
  (*!
   * is-extglob <https://github.com/jonschlinkert/is-extglob>
   *
   * Copyright (c) 2014-2016, Jon Schlinkert.
   * Licensed under the MIT License.
   *)

is-glob/index.js:
  (*!
   * is-glob <https://github.com/jonschlinkert/is-glob>
   *
   * Copyright (c) 2014-2017, Jon Schlinkert.
   * Released under the MIT License.
   *)

queue-microtask/index.js:
  (*! queue-microtask. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> *)

run-parallel/index.js:
  (*! run-parallel. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> *)

undici/lib/web/fetch/body.js:
  (*! formdata-polyfill. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> *)

undici/lib/web/websocket/frame.js:
  (*! ws. MIT License. Einar Otto Stangvik <einaros@gmail.com> *)

imurmurhash/imurmurhash.js:
  (**
   * @preserve
   * JS Implementation of incremental MurmurHash3 (r150) (as of May 10, 2013)
   *
   * @author <a href="mailto:jensyt@gmail.com">Jens Taylor</a>
   * @see http://github.com/homebrewing/brauhaus-diff
   * @author <a href="mailto:gary.court@gmail.com">Gary Court</a>
   * @see http://github.com/garycourt/murmurhash-js
   * @author <a href="mailto:aappleby@gmail.com">Austin Appleby</a>
   * @see http://sites.google.com/site/murmurhash/
   *)

@yarnpkg/pnp/lib/index.js:
  (**
    @license
    Copyright Node.js contributors. All rights reserved.
  
    Permission is hereby granted, free of charge, to any person obtaining a copy
    of this software and associated documentation files (the "Software"), to
    deal in the Software without restriction, including without limitation the
    rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
    sell copies of the Software, and to permit persons to whom the Software is
    furnished to do so, subject to the following conditions:
  
    The above copyright notice and this permission notice shall be included in
    all copies or substantial portions of the Software.
  
    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
    IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
    FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
    AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
    LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
    FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
    IN THE SOFTWARE.
  *)
  (**
    @license
    The MIT License (MIT)
  
    Copyright (c) 2014 Blake Embrey (hello@blakeembrey.com)
  
    Permission is hereby granted, free of charge, to any person obtaining a copy
    of this software and associated documentation files (the "Software"), to deal
    in the Software without restriction, including without limitation the rights
    to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
    copies of the Software, and to permit persons to whom the Software is
    furnished to do so, subject to the following conditions:
  
    The above copyright notice and this permission notice shall be included in
    all copies or substantial portions of the Software.
  
    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
    IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
    FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
    AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
    LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
    OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
    THE SOFTWARE.
  *)

@cyclonedx/cyclonedx-library/dist.node/spdx.js:
  (*!
  This file is part of CycloneDX JavaScript Library.
  
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at
  
     http://www.apache.org/licenses/LICENSE-2.0
  
  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
  
  SPDX-License-Identifier: Apache-2.0
  Copyright (c) OWASP Foundation. All Rights Reserved.
  *)

negotiator/index.js:
  (*!
   * negotiator
   * Copyright(c) 2012 Federico Romero
   * Copyright(c) 2012-2014 Isaac Z. Schlueter
   * Copyright(c) 2015 Douglas Christopher Wilson
   * MIT Licensed
   *)

make-fetch-happen/lib/fetch.js:
  (**
   * @license
   * Copyright (c) 2010-2012 Mikeal Rogers
   * Licensed under the Apache License, Version 2.0 (the "License");
   * you may not use this file except in compliance with the License.
   * You may obtain a copy of the License at
   * http://www.apache.org/licenses/LICENSE-2.0
   * Unless required by applicable law or agreed to in writing,
   * software distributed under the License is distributed on an "AS
   * IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
   * express or implied. See the License for the specific language
   * governing permissions and limitations under the License.
   *)
*/
